1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[552],{3593:(e,s,t)=>{t.d(s,{A:()=>u});var a=t(95155),r=t(10863),n=t(9969),l=t(69730),c=t.n(l),o=t(4986),i=t(12115),d=t(35208);let u=({id:e,name:s,value:t,label:l,required:u,indeterminate:h,disabled:m,checked:p,setChecked:f,onChange:x,size:y,className:b,checkboxPosition:v="left",spacingClassName:g="gap-100",spanClassName:j,inputClassName:k,checkboxClassName:w,verticalCenter:A,otherLabelProps:N,otherCheckboxProps:S})=>{let[E,L]=(0,i.useState)(!!p);return(0,i.useEffect)(()=>{f&&f(E)},[E,f]),(0,i.useEffect)(()=>{void 0!==p&&L(p)},[p]),(0,a.jsxs)("label",{htmlFor:e,className:c()("form-checkbox",g,{"form-checkbox-small":y===d.x0Q.SMALL,"form-checkbox-tiny":y===d.x0Q.TINY,"form-checkbox-right":"right"===v},b),...N,children:[(0,a.jsx)("input",{id:e,type:"checkbox",className:k,name:s,value:t,required:u,checked:E,onChange:e=>{(0,o.A)(x)&&x(e),L(!E)},disabled:m,...S}),(0,a.jsx)("div",{className:c()("form-checkbox-border",w,{"form-checkbox-checked":E,"vertical-center":A}),children:(0,a.jsx)("div",{className:"form-checkbox-inside",children:(0,a.jsx)(n.g,{icon:h?r.AJ:r.e6})})}),(0,a.jsx)("span",{className:j,children:l})]})}},26769:(e,s,t)=>{t.d(s,{A:()=>d});var a=t(95155),r=t(49820),n=t(12115),l=t(50424),c=t(84456),o=t(62921),i=t(35208);let d=({env:e,setEnv:s,setLocales:t,setIsMockAPI:d,setReadLocaleFromStorage:u,replaceQueryParam:h,displayAllOption:m=!1,onChange:p})=>{let f=(0,n.useMemo)(()=>(0,c.Sy)(l.bH),[]);return(0,a.jsxs)(o.A,{size:i.x0Q.SMALL,value:e,onChange:e=>{let a,r;return p?p(e):(r="develop.systemair.com/api/mock/shop"===(a=m?e.target.value:e.target.value.trim()||l.rJ)||"www.systemair.com/api/mock/shop"===a,void(d&&d(r),s&&s(a),h&&h("env",a),!m&&(0,c.Xb)("selectedEnv",a),t&&t(void 0),u&&u(!0)))},children:[m&&(0,a.jsx)("option",{value:"all",children:"All"}),(0,r.A)(f,e=>{let s="develop.systemair.com"===e.value||"www.systemair.com"===e.value;return(0,a.jsxs)("option",{value:e.value,children:[s?"Mock ":"",e.value]},e.value)})]})}},41783:(e,s,t)=>{t.d(s,{A:()=>a});let a=function(e,s){var t=-1,a=e.length;for(s||(s=Array(a));++t<a;)s[t]=e[t];return s}},57648:(e,s,t)=>{t.d(s,{A:()=>u});var a=t(26652),r=t(12602),n=t(81137);let l=function(e,s,t,a){for(var r=t-1,n=e.length;++r<n;)if(a(e[r],s))return r;return -1};var c=t(32521),o=t(41783),i=Array.prototype.splice;let d=function(e,s,t,a){var d=a?l:n.A,u=-1,h=s.length,m=e;for(e===s&&(s=(0,o.A)(s)),t&&(m=(0,r.A)(e,(0,c.A)(t)));++u<h;)for(var p=0,f=s[u],x=t?t(f):f;(p=d(m,x,p,a))>-1;)m!==e&&i.call(m,p,1),i.call(e,p,1);return e},u=(0,a.A)(function(e,s){return e&&e.length&&s&&s.length?d(e,s):e})},79756:(e,s,t)=>{t.d(s,{A:()=>o});var a=t(95155),r=t(50424),n=t(84456),l=t(62921),c=t(35208);let o=({env:e,locale:s,locales:t,setLocale:o,replaceQueryParam:i})=>(0,a.jsx)(l.A,{size:c.x0Q.SMALL,value:s,onChange:s=>{let t=s.target.value.trim()||r.q;o(t),i("lang",t),(0,n.Xb)(e,t)},children:t?.map(e=>(0,a.jsx)("option",{value:e,children:e},e))})},79817:(e,s,t)=>{t.r(s),t.d(s,{default:()=>f});var a=t(95155),r=t(12115),n=t(26769),l=t(79756),c=t(54920),o=t(3593),i=t(99779);function d({shop:e,locale:s}){let[t,n]=(0,r.useState)({added:!0,updated:!0,removed:!0}),[l,d]=(0,r.useState)();async function u(){try{d({status:"syncing"});let t=await fetch(`/api/pdb/sync?shop=${e}&locale=${s}`);if(!t.ok)throw Error(`Network response was not ok: ${t.statusText}`)}catch(e){console.error("Error starting sync:",e)}}async function h(){try{let a=new URLSearchParams({shop:e||"",locale:s||"",dryRun:"false",flags:JSON.stringify(t)}),r=await fetch(`/api/pdb/sync?${a.toString()}`);if(!r.ok)throw Error(`Network response was not ok: ${r.statusText}`);let n=await r.json();d(n)}catch(e){console.error("Error starting sync:",e)}}async function m(){if(!e||!s||"string"!=typeof e||"string"!=typeof s)return void console.error("Shop or locale is not defined for emergency break.");try{await fetch(`/api/pdb/emergency-break?shop=${e}&locale=${s}`),d(void 0)}catch(e){console.error("Error during emergency break:",e)}}async function p(){try{let t=await fetch(`/api/pdb/sync-status?shop=${e}&locale=${s}`);if(!t.ok)throw Error(`Network response was not ok: ${t.statusText}`);let a=await t.json();d(a)}catch(e){console.error("Error fetching sync status:",e)}}function f(e){n(s=>({...s,[e]:!s[e]}))}(0,r.useEffect)(()=>{p();let e=setInterval(()=>{p()},5e3);return()=>{clearInterval(e)}},[e,s]);let x=l?.status==="syncing",y=l?.status!=="done";return(0,a.jsxs)("div",{className:"flex justify-between gap-400 pb-200",children:[(0,a.jsxs)("div",{className:"sticky flex flex-col gap-200 top-500 self-start w-1/3 4xl:w-1/4",children:[(0,a.jsx)("button",{className:"btn btn-secondary btn-small roun
1ded-2 gap-075 flex",disabled:x,onClick:()=>{u()},children:"Check"}),l?.status==="syncing"&&(0,a.jsx)(i.A,{}),l?.status==="done"&&(0,a.jsxs)("p",{children:["Sync completed at ",l.date]}),(0,a.jsx)(o.A,{className:"my-0",name:"added",label:"Sync added",checked:t.added,onChange:()=>f("added")}),(0,a.jsx)(o.A,{className:"my-0",name:"updated",label:"Sync updated",checked:t.updated,onChange:()=>f("updated")}),(0,a.jsx)(o.A,{className:"my-0",name:"removed",label:"Sync removed",checked:t.removed,onChange:()=>f("removed")}),(0,a.jsx)("button",{onClick:()=>{h()},className:"btn btn-secondary btn-small rounded-2 gap-075",disabled:y,children:"Apply"}),(0,a.jsx)("button",{className:"btn btn-danger btn-small rounded-2 gap-075",onClick:()=>{m()},children:"Emergency break"})]}),(0,a.jsxs)("div",{className:"bg-neutral-50 p-200 rounded-8 text-label-tiny w-2/3 4xl:w-3/4",children:[l?.status==="error"&&(0,a.jsxs)("p",{className:"text-danger",children:["Error: ",l.error]}),l?.status==="syncing"&&(0,a.jsx)("p",{className:"text-warning",children:"Sync in progress..."}),l?.status==="done"&&(0,a.jsx)(c.JsonViewer,{rootName:!1,maxDisplayLength:200,displayDataTypes:!1,collapseStringsAfterLength:!1,value:l?.data})]})]})}var u=t(24402),h=t(69660),m=t(84456),p=t(74276);let f=function(){let{queryParams:e}=(0,h.A)(),s=(0,p.yn)(),t=(0,m.bl)(e,"env",""),c=(0,m.bl)(e,"lang",""),[o,f]=(0,r.useState)(),x=(0,m.hS)(t),[y,b]=(0,r.useState)(x),{data:v,isLoading:g,refetch:j}=(0,u.rS)(t,y);function k(e){s("env",e)}return(0,r.useEffect)(()=>{t?j():k("shop.systemair.com")},[]),(0,r.useEffect)(()=>{t&&j()},[t,j]),(0,r.useEffect)(()=>{v&&f(y?v:(0,m.UO)(v.shops))},[y,v]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"flex justify-between items-center mb-100",children:(0,a.jsx)("p",{className:"mb-0 text-style-heading-h2",children:"PDB Sync"})}),(0,a.jsxs)("div",{className:"text-label-small mb-200",children:[(0,a.jsx)("p",{children:"Please note that this has only been tested on localized (systemair)"}),(0,a.jsxs)("div",{className:"flex gap-100 items-center",children:[(0,a.jsx)(n.A,{env:t,setEnv:k,setLocales:f,setIsMockAPI:b}),g?(0,a.jsx)(i.A,{size:i.K.SMALL}):(0,a.jsx)(l.A,{env:t,locale:c,locales:o,setLocale:function(e){s("lang",e)},replaceQueryParam:s})]}),(0,a.jsx)(d,{shop:t,locale:c})]})]})}},99779:(e,s,t)=>{t.d(s,{A:()=>i,K:()=>o});var a,r=t(95155),n=t(69730),l=t.n(n),c=t(56432),o=((a={}).DEFAULT="w-300 h-300",a.SMALL="w-200 h-200",a.TINY="w-13 h-13",a);let i=({textColorClassName:e,size:s="w-300 h-300"})=>(0,r.jsx)("span",{className:l()("inline-block border-current border-2 rounded-50 animate-spin border-r-transparent",s,e||"border-cta"),role:"status",children:(0,r.jsx)("span",{className:"sr-only",children:(0,r.jsx)(c.HT,{translation:"Loading..."})})})}}]);
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.