1(()=>{var e,t,r,a,s,i={477:()=>{},3905:(e,t,r)=>{"use strict";r.r(t)},5131:(e,t,r)=>{"use strict";r.d(t,{y1:()=>x,Bd:()=>D,Qo:()=>O,jU:()=>C,C2:()=>j,ss:()=>k});var a=r(1396),s=r.n(a);const i="/order/create",n="/subscription/order",o="/products/:id/reviews",c="/reviews/all",d="/products",l="/legal/documents/actual",u="/tariffs/web/:uuid";var f=r(6275);const h=function(){const e=window.env,t={host:e.REACT_APP_API_HOST||"",prefix:e.REACT_APP_API_PREFIX||""};return{api:t}}(),p=h.api;const b=p.prefix,g=window.location.protocol+"//"+window.location.host;const v=new class{axios;constructor(){this.axios=f.A.create({baseURL:g+b,timeout:5e4,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"PUT, DELETE, GET, OPTIONS, POST","Access-Control-Allow-Headers":"*","Content-Type":"application/json"}})}async get(e,t={},r){try{const a=await this.axios.get(e,t);return r?r(a):a.data}catch(e){throw e}}async getProgress(e,t={},r,a){try{t.onDownloadProgress=e=>{if(e.download)return void r(100);const t=Math.round(100*e.loaded/(e.total??1));r(t)};const s=await this.axios.get(e,t);return a(s.data),s.data}catch(e){return void a(void 0)}}async post(e,t,r={},a){try{const s=await this.axios.post(e,t,r);return a?a(s):s.data}catch(e){throw e}}async put(e,t,r={},a){try{const s=await this.axios.put(e,t,r);return a?a(s):s.data}catch(e){throw e}}async patch(e,t,r={},a){try{const s=await this.axios.put(e,t,r);return a?a(s):s.data}catch(e){throw e}}async delete(e,t={},r){try{const a=await this.axios.delete(e,t);return r?r(a):a.data}catch(e){throw e}}requestFromConfig(e){return this.axios(e)}addOnAuthenticationInterceptors(e){this.axios.interceptors.request.use(e)}addOnExpiredInterceptors(e){this.axios.interceptors.response.use(null,e)}};var y;!function(e){e.Offer="offer",e.Privacy="privacy",e.PrivacyRule="privacyRule",e.Advert
1ising="advertising"}(y||(y={}));const m=new class{constructor(e){this.api=e}api;getProductReview(e,t,r){const a=o.replace(":id",`${e}`),s=new URLSearchParams;return s.append("page",`${t}`),s.append("count",`${r}`),this.api.get(a,{params:s})}getReviews(e,t){const r=new URLSearchParams;return r.append("page",`${e}`),r.append("count",`${t}`),this.api.get(c,{params:r})}}(v),w=new class{constructor(e){this.api=e}api;getProducts(){return this.api.get(d)}getProductReviewAvatar(e,t,r){const a=e.substring(e.lastIndexOf("/api")+4);this.api.getProgress(a,{responseType:"blob"},(e=>{t(e)}),(e=>{r(e)}))}}(v),P=new class{constructor(e){this.api=e}api;sendOrder(e){return this.api.post(i,e)}createSubscription(e){return this.api.post(n,e)}}(v),S=new class{api;constructor(e){this.api=e}getTariffByUUID(e){const t=u.replace(":uuid",`${e}`);return this.api.get(t)}}(v),A=new class{api;constructor(e){this.api=e}getDocumentsList(){return this.api.get(l)}}(v),x=new class{apiService;sessionCredentials;constructor(e){this.apiService=e}async initialize(){if(this.sessionCredentials)return;const e={method:"GET",url:`${p.host}/initialize`,headers:{"Content-Type":"application/json"}};return this.apiService.requestFromConfig(e).then((e=>{this.sessionCredentials=e.data}))}clearPersistence(){this.sessionCredentials=void 0}getSessionKey(){return this.sessionCredentials?.crypto_session_key}}(v),j=new class{cachedReviewsKey="git_reviews";reviewApi;authService;constructor(e,t){this.reviewApi=e,this.authService=t}fetchReviews(e){return this.reviewApi.getReviews(0,e)}fetchProductReviews(e,t,r){return this.reviewApi.getProductReview(e,t,r)}getProductReviews(e,t,r){const a=this.getCachedSessionProductReviewsInterval(e,t,r);if(a&&a.length>0)return{page:t,count:a.length,data:a}}storeProductReviews(e,t){const r=this.authService.getSessionKey();
1r&&this.saveCachedSessionProductReviews(e,t,r)}getCachedSessionProductReviewsInterval(e,t,r){const a=this.authService.getSessionKey();if(!a)return;const s=this.getCachedSessionProductReviews(e,a);if(!s)return;const i=s.length,n=t*r,o=i<(t+1)*r?i:(t+1)*r;return s.slice(n,o)}getCachedSessionProductReviews(e,t){try{const r=`${this.cachedReviewsKey}_${e}`,a=sessionStorage.getItem(r);if(!a)return;const i=s().AES.decrypt(a,t);return JSON.parse(i.toString(s().enc.Utf8))}catch(e){return}}saveCachedSessionProductReviews(e,t,r){const a=`${this.cachedReviewsKey}_${e}`,i=this.getCachedSessionProductReviews(e,r);let n=t;i&&(n=Array.from(new Map([...i,...t].map((e=>[e.id,e]))).values()));const o=s().AES.encrypt(JSON.stringify(n),r).toString();sessionStorage.setItem(a,o)}}(m,x),C=new class{cachedProductsKey="git_products";productApi;authService;constructor(e,t){this.productApi=e,this.authService=t}fetchProducts(){return this.productApi.getProducts().then((e=>e.filter((e=>!e.navigation_link.includes("/services/")))))}fetchProductReviewAvatar(e,t,r){this.productApi.getProductReviewAvatar(e,t,(e=>{if(!e)return void r(void 0);const t=URL.createObjectURL(e);r(t)}))}getProducts(){const e=this.authService.getSessionKey();if(e)return this.getCachedSessionProducts(e)}storeProducts(e){const t=this.authService.getSessionKey();t&&this.saveSessionProducts(e,t)}getCachedSessionProducts(e){const t=sessionStorage.getItem(this.cachedProductsKey);if(!t)return;const r=s().AES.decrypt(t,e);return JSON.parse(r.toString(s().enc.Utf8))}saveSessionProducts(e,t){const r=s().AES.encrypt(JSON.stringify(e),t).toString();sessionStorage.setItem(this.cachedProductsKey,r)}}(w,x),O=new class{orderApi;constructor(e){this.orderApi=e}async sendOrder(e,t,r){await this.orderApi.sendOrder(e).then((e=>{t&&t(e)})).catch((e=>{console.log(e),r&&r()}))}async subscribe(e){return this.orderApi.createSubscription(e)}}(P),k=new class{tariffApi;constructor(e){this.tariffApi=e}fetchTariffDescriptionByUuid(e){return this.tariffApi.getTariffByUUID(e)}}(S),D=new class{api;legalDocumentsApi;offerLegalDocument;privacyLegalDocument;advertisingLegalDocument;privacyRuleLegalDocument;constructor(e){this.api=e,this.legalDocumentsApi=e,this.offerLegalDocument={link:"",isDefault:!0},this.privacyLegalDocument={link:"",isDefault:!0},this.privacyRuleLegalDocument={link:"",isDefault:!0},this.advertisingLegalDocument={link:"",isDefault:!0}}async fetchLegalDocuments(){return this.legalDocumentsApi.getDocumentsList().then((e=>{for(let t of e){let e=this.getLegalDocumentType(t.type);if(void 0!==e)switch(e){case y.Offer:this.offerLegalDocument.link=t.link,this.offerLegalDocument.isDefault=!1;break;case y.Privacy:this.privacyLegalDocument.link=t.link,this.privacyLegalDocument.isDefault=!1;break;case y.PrivacyRule:this.privacyRuleLegalDocument.link=t.link,this.privacyRuleLegalDocument.isDefault=!1;break;case y.Advertising:this.advertisingLegalDocument.link=t.link,this.advertisingLegalDocument.isDefault=!1}}})).catch((e=>{console.error("Failed to fetch legal documents",e)}))}getLegalDocumentType(e){if(Object.values(y).includes(e))return e}}(A)},6718:(e,t,r)=>{"use strict";r.d(t,{W:()=>c,o:()=>o});var a=r(4848),s=r(6540),i=r(7767);const n=(0,s.createContext)({history:[],canGoBack:!1}),o=({children:e})=>
1{const t=(0,i.zy)(),[r,o]=(0,s.useState)([]),[c,d]=(0,s.useState)(!1);return(0,s.useEffect)((()=>{o((e=>{const r=[...e,t];return d(r.length>1),r}))}),[t]),(0,a.jsx)(n.Provider,{value:{history:r,canGoBack:c},children:e})},c=()=>(0,s.useContext)(n)},9051:(e,t,r)=>{"use strict";var a=r(4848),s=r(5338),i=r(6540),n=r(4976),o=r(7767);const c=function(e){return new Promise(((t,r)=>{const a=JSON.parse(window.sessionStorage.getItem("retry-lazy-refreshed")||"false");e().then((e=>{window.sessionStorage.setItem("retry-lazy-refreshed","false"),t(e)})).catch((e=>{if(!a)return window.sessionStorage.setItem("retry-lazy-refreshed","true"),window.location.reload();r(e)}))}))};var d=r(6718);const l=(0,i.lazy)((()=>c((()=>Promise.all([r.e(150),r.e(173),r.e(134)]).then(r.bind(r,5729)))))),u=(0,i.lazy)((()=>c((()=>Promise.all([r.e(150),r.e(173),r.e(158)]).then(r.bind(r,3929)))))),f=(0,i.lazy)((()=>c((()=>Promise.all([r.e(150),r.e(173),r.e(698)]).then(r.bind(r,6381)))))),h=(0,i.lazy)((()=>c((()=>Promise.all([r.e(150),r.e(173),r.e(860)]).then(r.bind(r,2759)))))),p=(0,i.lazy)((()=>c((()=>Promise.all([r.e(150),r.e(173),r.e(565)]).then(r.bind(r,9840)))))),b=(0,i.lazy)((()=>c((()=>Promise.all([r.e(150),r.e(173),r.e(677)]).then(r.bind(r,5528)))))),g=(0,i.lazy)((()=>c((()=>Promise.all([r.e(150),r.e(173),r.e(406)]).then(r.bind(r,7825)))))),v=(0,i.lazy)((()=>c((()=>Promise.all([r.e(150),r.e(173),r.e(907)]).then(r.bind(r,1310)))))),y=()=>{const e=(0,o.r5)();return console.error("Routing error:",e),(0,a.jsx)(o.C5,{to:"/",replace:!0})},m=(0,i.lazy)((()=>r.e(138).then(r.bind(r,6138)))),w=(0,i.lazy)((()=>r.e(496).then(r.bind(r,5496)))),P=e=>((0,i.useEffect)((()=>{e.isMobile?r(3905):r(9187)}),[]),e.isMobile?(0,a.jsx)(w,{}):(0,a.jsx)(m,{}));var S=r(5764);const A=r.p+"images/arrow_up.2086bef7f8a633a8c0a6.png";var x=r(159),j=r(5131);const C=function(){const[e,t]=(0,i.useState)(!0),r=(window.screen.width,j.Bd);function s(e){var t=window.screen.height;window.scrollY>1.5*t?o("1"):o("0")}function o(e){var t=document.getElementById("floating-button");null!=t&&(t.style.opacity=e)}return(0,i.useEffect)((()=>(window.addEventListener("scroll",(e=>s(e))),()=>{window.removeEventListener("scroll",(e=>s(e)))}))),(0,i.useEffect)((()=>{j.y1.initialize().then((async e=>{await r.fetchLegalDocuments(),t(!1)})).catch((e=>{console.log(e),t(!1)}))}),[]),e?(0,a.jsx)(P,{isMobile:x.Fr}):(0,a.jsxs)(i.Suspense,{fallback:(0,a.jsx)(P,{isMobile:x.Fr}),children:[(0,a.jsx)(n.pg,{router:(c=x.Fr,(0,n.Ys)([{errorElement:(0,a.jsx)(y,{}),children:[{path:"/",element:(0,a.jsx)(d.o,{children:(0,a.jsx)(l,{isMobile:c})})},{path:"/course",element:(0,a.jsx)(d.o,{children:(0,a.jsx)(u,{isMobile:c})})},{path:"/consultation",element:(0,a.jsx)(d.o,{children:(0,a.jsx)(f,{isMobile:c})})},{path:"/interview",element:(0,a.jsx)(d.o,{children:(0,a.jsx)(p,{isMobile:c})})},{path:"/mentoring",element:(0,a.jsx)(d.o,{children:(0,a.jsx)(h,{isMobile:c})})},{path:"/reviews",element:(0,a.jsx)(d.o,{children:(0,a.jsx)(b,{isMobile:c})})},{path:"/organization_info",element:(0,a.jsx)(d.o,{children:(0,a.jsx)(g,{isMobile:c})})},{path:"/sell/:uuid",element:(0,a.jsx)(v,{isMobile:c})}]}]))}),(0,a.jsxs)("button",{className:"core-floating-button",id:"floating-button",onClick:function(){window.scrollTo(0,0)},children:["ÐавеÑÑ
",(0,a.jsx)("img",{className:"arrowUp",src:A,alt:"ginfotech"})]}),(0,a.jsx)(S.TD,{accounts:[95021386],options:{webvisor:!0}})]});var c},O=e=>{e&&e instanceof Function&&r.e(364).then(r.bind(r,364)).then((({getCLS:t,getFID:r,getFCP:a,getLCP:s,getTTFB:i})=>{t(e),r(e),a(e),s(e),i(e)}))};var k=r(2635),D=r(1347),L=r(7725),R=r(2389);r(961);k.Ay.use(D.A).use(L.A).use(R.r9).init({fallbackLng:"ru",debug:!1,detection:{order:["queryString","cookie"],cache:["co
1okie"]},ns:["author","consultation","course","footer","interview","main","mentoring","menu","organization_info","report","reviewList","reviews","services","tariff"],interpolation:{escapeValue:!1},backend:{loadPath:"/locales/{{lng}}/{{ns}}.json"}});s.createRoot(document.getElementById("root")).render((0,a.jsx)(C,{})),O()},9187:(e,t,r)=>{"use strict";r.r(t)}},n={};function o(e){var t=n[e];if(void 0!==t)return t.exports;var r=n[e]={id:e,loaded:!1,exports:{}};return i[e].call(r.exports,r,r.exports,o),r.loaded=!0,r.exports}o.m=i,o.amdO={},e=[],o.O=(t,r,a,s)=>{if(!r){var i=1/0;for(l=0;l<e.length;l++){r=e[l][0],a=e[l][1],s=e[l][2];for(var n=!0,c=0;c<r.length;c++)(!1&s||i>=s)&&Object.keys(o.O).every((e=>o.O[e](r[c])))?r.splice(c--,1):(n=!1,s<i&&(i=s));if(n){e.splice(l--,1);var d=a();void 0!==d&&(t=d)}}return t}s=s||0;for(var l=e.length;l>0&&e[l-1][2]>s;l--)e[l]=e[l-1];e[l]=[r,a,s]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,o.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var s=Object.create(null);o.r(s);var i={};t=t||[null,r({}),r([]),r(r)];for(var n=2&a&&e;"object"==typeof n&&!~t.indexOf(n);n=r(n))Object.getOwnPropertyNames(n).forEach((t=>i[t]=()=>e[t]));return i.default=()=>e,o.d(s,i),s},o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce(((t,r)=>(o.f[r](e,t),t)),[])),o.u=e=>e+"."+{46:"9fb3c1250d25ef180a7e",73:"0a6061e490f8a16ed6b7",80:"1e9d214c66f2c9474885",126:"9f4158b958a8f41b96c8",134:"9bf4691283304c5c0f84",138:"cc37bd7b78fa27b164c0",150:"507cf0c41fad0ecddd74",153:"66b10d8ff52e6a02d016",158:"b828dbc9e1eb07139ba3",173:"2cfaefeae6ae035e4cd5",182:"89fdec94127c297bedf8",196:"6965f0b7bc1835db46d7",206:"2701ec37a4cafd0d3e7f",210:"8437d10cf42baf57408e",272:"c652914c14d040c35045",312:"c110f99a5ae123ded84a",364:"e5f3aa94c672339b1e30",378:"ede4b810697e0a67dc2d",390:"703d12d66d02ffac43b8",402:"9c2a7fb803a656d011d7",406:"6df33bf05a1d92b15a9d",444:"753671e187fa644124f9",466:"03e7952df8140960359d",487:"d564dfcaf90e89b5b1e9",496:"bb6b116e1f7d28838ada",521:"433f878f29087d718cc6",539:"2433442e54a2b73402ec",553:"0103d38bf9c3a0a28d08",565:"3043e88021d89394838d",593:"727485b0c0c799630a08",594:"3c6f1159a93dd86c5db3",630:"6dd42c72b3a1523a89ab",636:"c2af3ab435f9c8f389fa",667:"2f396b7c641a55375202",677:"593d67f9994799c2a381",684:"3d13bc1f3ec1bb167619",698:"77f3b4c7136f26c5cf5d",707:"674c3ff75ffd2a386d3e",824:"66e37aa6c1d96f13a9c1",860:"43a079f5dfe2defd546a",872:"acf1ea3993e2f469cc8c",907:"1b1e6a66b6099e4c26a1",939:"5359a9c62eb91817d8c0"}[e]+".chunk.js",o.miniCssF=e=>e+"."+{46:"4c2afa0098fbcbd5cf09",73:"79c04e2debefde969aaa",80:"c9f77316f67fb126aad3",126:"552fabd3b9b83b9d933a",134:"3f369e01f661b0d6b344",153:"82e36241c69c7679f818",158:"3f369e01f661b0d6b344",182:"b306dadf74ba367747a2",196:"6f920d5217cd96875147",210:"3ed4ab8374ad5430a3d5",378:"139b3d3a2319159b56d7",390:"53cebba40a24f77d7b82",402:"7daedc1bc12d2d35c9ad",406:"3f369e01f661b0d6b344",444:"3f9b828afcd732539651",466:"53f3892b227ea7ec2441",487:"51fb032d9ff6e35a40cb",521:"d80543d5d021f7c07055",553:"1a51dc83ebf6b44e3b01",565:"3f369e01f661b0d6b344",593:"34a9fd40235ebb5637b3",594:"9496e08b436bb809d448",630:"1d52a6e586466c2454de",677:"3f369e01f661b0d6b344",684:"c73f1b9dddfa6ca4ef0c",698:"3f369e01f661b0d6b344",824:"01da557d80442003445f",860:"3f369e01f661b0d6b344",872:"d5acc4d2264958432838",907:"3f369e01f661b0d6b344",939:"a65c901faa68390ffb57"}[e]+".chunk.css",o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},s="ginfotech:",o.l=(e,t,r,i)=>{if(a[e])a[e].push(t);else{var n,c;if(void 0!==r)for(var d=document.getElementsByTagName("script"),l=0;l<d.length;l++){var u=d[l];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==s+r){n=u;break}}n||(c=!0,(n=document.createElement("script")).charset="utf-8",n.timeout=120,o.nc&&n.setAttribute("nonce",o.nc),n.setAttribute("data-webpack",s+r),n.src=e),a[e]=[t];var f=(t,r)=>{n.onerror=n.onload=null,clearTimeout(h);var s=a[e];if(delete a[e],n.parentNode&&n.parentNode.removeChild(n),s&&s.forEac
1h((e=>e(r))),t)return t(r)},h=setTimeout(f.bind(null,void 0,{type:"timeout",target:n}),12e4);n.onerror=f.bind(null,n.onerror),n.onload=f.bind(null,n.onload),c&&document.head.appendChild(n)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),o.p="/",(()=>{if("undefined"!=typeof document){var e=e=>new Promise(((t,r)=>{var a=o.miniCssF(e),s=o.p+a;if(((e,t)=>{for(var r=document.getElementsByTagName("link"),a=0;a<r.length;a++){var s=(n=r[a]).getAttribute("data-href")||n.getAttribute("href");if("stylesheet"===n.rel&&(s===e||s===t))return n}var i=document.getElementsByTagName("style");for(a=0;a<i.length;a++){var n;if((s=(n=i[a]).getAttribute("data-href"))===e||s===t)return n}})(a,s))return t();((e,t,r,a,s)=>{var i=document.createElement("link");i.rel="stylesheet",i.type="text/css",o.nc&&(i.nonce=o.nc),i.onerror=i.onload=r=>{if(i.onerror=i.onload=null,"load"===r.type)a();else{var n=r&&r.type,o=r&&r.target&&r.target.href||t,c=new Error("Loading CSS chunk "+e+" failed.\n("+n+": "+o+")");c.name="ChunkLoadError",c.code="CSS_CHUNK_LOAD_FAILED",c.type=n,c.request=o,i.parentNode&&i.parentNode.removeChild(i),s(c)}},i.href=t,r?r.parentNode.insertBefore(i,r.nextSibling):document.head.appendChild(i)})(e,s,null,t,r)})),t={792:0};o.f.miniCss=(r,a)=>{t[r]?a.push(t[r]):0!==t[r]&&{46:1,73:1,80:1,126:1,134:1,153:1,158:1,182:1,196:1,210:1,378:1,390:1,402:1,406:1,444:1,466:1,487:1,521:1,553:1,565:1,593:1,594:1,630:1,677:1,684:1,698:1,824:1,860:1,872:1,907:1,939:1}[r]&&a.push(t[r]=e(r).then((()=>{t[r]=0}),(e=>{throw delete t[r],e})))}}})(),(()=>{var e={792:0};o.f.j=(t,r)=>{var a=o.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else{var s=new Promise(((r,s)=>a=e[t]=[r,s]));r.push(a[2]=s);var i=o.p+o.u(t),n=new Error;o.l(i,(r=>{if(o.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var s=r&&("load"===r.type?"missing":r.type),i=r&&r.target&&r.target.src;n.message="Loading chunk "+t+" failed.\n("+s+": "+i+")",n.name="ChunkLoadError",n.type=s,n.request=i,a[1](n)}}),"chunk-"+t,t)}},o.O.j=t=>0===e[t];var t=(t,r)=>{var a,s,i=r[0],n=r[1],c=r[2],d=0;if(i.some((t=>0!==e[t]))){for(a in n)o.o(n,a)&&(o.m[a]=n[a]);if(c)var l=c(o)}for(t&&t(r);d<i.length;d++)s=i[d],o.o(e,s)&&e[s]&&e[s][0](),e[s]=0;return o.O(l)},r=self.webpackChunkginfotech=self.webpackChunkginfotech||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();var c=o.O(void 0,[710],(()=>o(9051)));c=o.O(c)})(); 2//# sourceMappingURL=main.fa31da145503a1981bcc.js.map
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.