1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[55779],{208589:function(e,t,r){r.d(t,{NU:function(){return getApiHeaders},UK:function(){return getDiagramColor},Vz:function(){return a},kG:function(){return getApiUrl}});var n=r(677221),a={api:{baseUrl:r(683454).env.NEXT_PUBLIC_API_URL||"https://ci-con.ru/api",endpoints:{articles:"/articles",users:"/users",me:"/users/me"},defaultHeaders:{"Content-Type":"application/json"}},content:{enableDiagrams:!0,enableVideo:!0,enableSources:!0,enableSideContent:!0,sanitizeHtml:!0,maxImageWidth:800},seo:{defaultImage:"https://ci-con.ru/images/blog-default.jpg",siteName:"CI CONSULT",defaultAuthor:"CI CONSULT",twitterHandle:"@CI_CONSULT",maxDescriptionLength:160,maxTitleLength:60},diagrams:{defaultColors:{arrow:"#cc0000",arrowCounterclockwise:"#00A3C2",text:"#003A49"},defaultSize:800,responsiveBreakpoint:768},editor:{baseFontSize:20,minFontSize:10,lineHeight:1.3,placeholder:"ÐведиÑе ÑекÑÑ ÑÑаÑÑи в ÑоÑмаÑе Markdown или HTML..."},pagination:{defaultPageSize:10,pageSizeOptions:["10","20","50","100"],showSizeChanger:!0,showQuickJumper:!0},theme:{colors:{primary:"#003A49",secondary:"#00A3C2",accent:"#cc0000",success:"#52c41a",warning:"#faad14",error:"#ff4d4f",text:"#003A49",textSecondary:"#6b7280",background:"#ffffff",backgroundSecondary:"#f8f9fa"},fonts:{serif:"Georgia, serif",sans:"Arial, sans-serif",mono:"Monaco, Consolas, monospace"}}},getApiUrl=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return"".concat(a.api.baseUrl).concat(e)},getApiHeaders=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,n._)({},a.api.defaultHeaders,e)},getDiagramColor=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"arrow",t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];return"arrow"===e?t?a.diagrams.defaultColors.arrow:a.diagrams.defaultColors.arrowCounterclockwise:a.diagrams.defaultColors[e]||a.diagrams.defaultColors.text}},255779:function(e,t,r){r.d(t,{J7:function(){return useBlogApi},aC:function(){return useAuth},gu:function(){return useAuthors},lN:function(){return useArticles}});var n,a=r(592485),s=r(677221),u=r(846439),i=r(189740),o=r(565353),c=r(667294);r(208589);var l=r(683454),getHeaders=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=(0,s._)({"Content-Type":"application/json"},e),r=localStorage.getItem("authToken");return r&&(t.Authorization="Bearer ".concat(r)),t},getApiBaseUrl=function(){if(l.env.NEXT_PUBLIC_API_URL){var e=l.env.NEXT_PUBLIC_API_URL;return e.startsWith("/")?"".concat(window.location.origin).concat(e):e}return"".concat(window.location.origin,"/api")},f=(n=(0,a._)(function(e){var t,r,n,a,s,u,i,c,l,f,h,d,g,A=arguments;return(0,o.Jh)(this,function(o){switch(o.label){case 0:n=void 0===(r=(t=A.length>1&&void 0!==A[1]?A[1]:{}).method)?"GET":r,s=void 0===(a=t.data)?null:a,i=void 0===(u=t.customHeaders)?{}:u,c=getApiBaseUrl(),l="".concat(c).concat(e),f={method:n,headers:getHeaders(i)},s&&["POST","PUT","PATCH"].includes(n)&&(f.body=JSON.stringify(s)),o.label=1;case 1:return o.trys.push([1,7,,8]),[4,fetch(l,f)];case 2:if((h=o.sent()).ok)return[3,4];return[4,h.text()];case 3:throw Error(o.sent()||"HTTP ".concat(h.status));case 4:if(!((d=h.headers.get("content-type"))&&d.includes("application/json")))return[3,6];return[4,h.json()];case 5:return[2,o.sent()];case 6:return[2,null];case 7:if("Failed to fetch"===(g=o.sent()).message||"TypeError"===g.name)throw Error("ÐÑибка подклÑÑÐµÐ½Ð¸Ñ Ðº ÑеÑвеÑÑ. ÐÑовеÑÑÑе подклÑÑение к инÑеÑнеÑÑ Ð¸Ð»Ð¸ попÑобÑйÑе позже.");throw g;case 8:return[2]}})}),function(e){return n.apply(this,arguments)}),useBlogApi=function(){var e,t=(0,i._)((0,c.useState)(!1),2),r=t[0],n=t[1],u=(0,i._)((0,c.useState)(null),2),l=u[0],h=u[1],d=(0,c.useCallback)(function(){return h(null)},[]),g=(0,c.useCallback)((e=(0,a._)(function(e){var t;return(0,o.Jh)(this,function(r){switch(r.label){case 0:n(!0),h(null),r.label=1;case 1:return r.trys.push([1,3,4,5]),[4,e()];case 2:return[2,r.sent()];case 3:throw h(t=r.sent().message||"ÐÑибка API"),Error(t);case 4:return n(!1),[7];case 5:return[2]}})}),function(t){return e.apply(this,arguments)}),[]),A=(0,c.useMemo)(function(){return{getArticles:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return g(function(){var t=new URLSearchParams((0,s._)({published:"true",limit:"100"},e));return f("/articles?".concat(t))})},getArticle:function(e){return g(function(){return f("/articles/".concat(e))})},getTags:function(){return g((0,a._)(function(){var e,t,r;return(0,o.Jh)(this,function(n){switch(n.label){case 0:return[4,f("/articles?published=true&limit=1000")];case 1:return t=Array.isArray(e=n.sent())?e:e.data||[],r=new Set,t.forEach(function(e){e.tags&&Array.isArray(e.tags)&&e.tags.forEac
1h(function(e){return r.add(e.trim())})}),[2,Array.from(r).sort()]}})}))},getAuthors:function(){return g(function(){return f("/users?role=author")})},checkAuth:function(){return g((0,a._)(function(){var e,t;return(0,o.Jh)(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,f("/users/me")];case 1:return[2,{isAuthenticated:!0,user:e=r.sent(),hasPermissions:e.isAdmin||e.isAuthor,error:null,status:200}];case 2:return[2,{isAuthenticated:!1,user:null,hasPermissions:!1,error:(t=r.sent()).message,status:t.status||500}];case 3:return[2]}})}))}}},[g]);return(0,s._)({loading:r,error:l,clearError:d},A)},useArticles=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=Array.isArray(t)&&t.length>0,n=(0,i._)((0,c.useState)(r?t:[]),2),s=n[0],u=n[1],l=(0,i._)((0,c.useState)(!r),2),f=l[0],h=l[1],d=(0,i._)((0,c.useState)(null),2),g=d[0],A=d[1],p=(0,i._)((0,c.useState)(!1),2),m=p[0],v=p[1],_=useBlogApi().getArticles;(0,c.useEffect)(function(){v(!0)},[]);var C=(0,c.useCallback)((0,a._)(function(){var t,r,n,a,s=arguments;return(0,o.Jh)(this,function(i){switch(i.label){case 0:(t=s.length>0&&void 0!==s[0]&&s[0])||h(!0),A(null),i.label=1;case 1:return i.trys.push([1,3,4,5]),[4,_(e)];case 2:return u(Array.isArray(r=i.sent())?r:r.data||[]),A(null),[3,5];case 3:return a=(n=i.sent()).message.includes("подклÑÑениÑ")?n.message:"ÐÑибка загÑÑзки ÑÑаÑей. ÐопÑобÑйÑе обновиÑÑ ÑÑÑаниÑÑ.",t||A(a),[3,5];case 4:return h(!1),[7];case 5:return[2]}})}),[_,JSON.stringify(e)]);return(0,c.useEffect)(function(){if(m&&!r){var e=setTimeout(function(){C()},100);return function(){return clearTimeout(e)}}},[m,C]),{articles:s,loading:f,error:g,reload:C}},useAuthors=function(){var e=(0,i._)((0,c.useState)([]),2),t=e[0],r=e[1],n=(0,i._)((0,c.useState)(!0),2),s=n[0],u=n[1],l=(0,i._)((0,c.useState)(null),2),f=l[0],h=l[1],d=useBlogApi().getAuthors,g=(0,c.useCallback)((0,a._)(function(){var e;return(0,o.Jh)(this,function(t){switch(t.label){case 0:u(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,d()];case 2:return r(Array.isArray(e=t.sent())?e:e.data||[]),h(null),[3,5];case 3:return h(t.sent().message),[3,5];case 4:return u(!1),[7];case 5:return[2]}})}),[d]);return(0,c.useEffect)(function(){g()},[g]),{authors:t,loading:s,error:f,reload:g}},useAuth=function(){var e=(0,i._)((0,c.useState)({isAuthenticated:!1,user:null,hasPermissions:!1,loading:!0,error:null}),2),t=e[0],r=e[1],n=useBlogApi().checkAuth,l=(0,c.useCallback)((0,a._)(function(){var e,t;return(0,o.Jh)(this,function(a){switch(a.label){case 0:r(function(e){return(0,u._)((0,s._)({},e),{loading:!0,error:null})}),a.label=1;case 1:return a.trys.push([1,3,,4]),[4,n()];case 2:return r({isAuthenticated:!!(null==(e=a.sent())?void 0:e.isAuthenticated),user:null!==(t=null==e?void 0:e.user)&&void 0!==t?t:null,hasPermissions:!!(null==e?void 0:e.hasPermissions),loading:!1,error:(null==e?void 0:e.error)||null}),[3,4];case 3:return r({isAuthenticated:!1,user:null,hasPermissions:!1,loading:!1,error:a.sent().message}),[3,4];case 4:return[2]}})}),[n]);return(0,c.useEffect)(function(){l()},[l]),(0,u._)((0,s._)({},t),{recheckAuth:l})}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.