@vendure/admin-ui-plugin 2.2.0-next.2 → 2.2.0-next.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunkvendure_admin=self.webpackChunkvendure_admin||[]).push([[90],{25090:(wn,C,m)=>{m.r(C),m.d(C,{ASSET_DETAIL_QUERY:()=>Jo,ApplyFacetDialogComponent:()=>yt,AssetDetailComponent:()=>Ce,AssetListComponent:()=>be,AssetsComponent:()=>bt,AssignProductsToChannelDialogComponent:()=>rt,BulkAddFacetValuesDialogComponent:()=>Ze,COLLECTION_DETAIL_QUERY:()=>Qi,CatalogModule:()=>se,CollectionBreadcrumbPipe:()=>qt,CollectionContentsComponent:()=>Et,CollectionDataTableComponent:()=>St,CollectionDetailComponent:()=>De,CollectionListComponent:()=>ke,CollectionTreeComponent:()=>He,CollectionTreeNodeComponent:()=>Je,CollectionTreeService:()=>Gt,ConfirmVariantDeletionDialogComponent:()=>We,CreateFacetValueDialogComponent:()=>Ue,CreateProductOptionGroupDialogComponent:()=>me,CreateProductVariantDialogComponent:()=>fe,FACET_DETAIL_QUERY:()=>In,FACET_LIST_QUERY:()=>Qc,FacetDetailComponent:()=>Me,FacetListComponent:()=>Re,GET_PRODUCTS_WITH_FACET_VALUES_BY_IDS:()=>_n,GET_PRODUCT_DETAIL:()=>jl,GET_VARIANTS_WITH_FACET_VALUES_BY_IDS:()=>gn,GenerateProductVariantsComponent:()=>Ee,GeneratedVariant:()=>Fo,MoveCollectionsDialogComponent:()=>ye,OPTION_VALUE_INPUT_VALUE_ACCESSOR:()=>rn,OptionValueInputComponent:()=>gt,PRODUCT_LIST_QUERY:()=>sd,PRODUCT_VARIANT_DETAIL_QUERY:()=>dd,PRODUCT_VARIANT_DETAIL_QUERY_PRODUCT_VARIANT_FRAGMENT:()=>on,PRODUCT_VARIANT_LIST_QUERY:()=>md,PRODUCT_VARIANT_UPDATE_MUTATION:()=>pd,ProductDetailComponent:()=>ne,ProductDetailService:()=>pt,ProductListComponent:()=>Ve,ProductOptionsEditorComponent:()=>ue,ProductVariantDetailComponent:()=>Qe,ProductVariantListComponent:()=>te,ProductVariantQuickJumpComponent:()=>we,ProductVariantsEditorComponent:()=>ve,ProductVariantsResolver:()=>Ye,ProductVariantsTableComponent:()=>en,UPDATE_PRODUCTS_BULK:()=>fn,UPDATE_VARIANTS_BULK:()=>hn,UpdateProductOptionDialogComponent:()=>nn,VariantPriceDetailComponent:()=>Se,arrayToTree:()=>On,assignCollectionsToChannelBulkAction:()=>xn,assignFacetValuesToProductsBulkAction:()=>Rn,assignFacetsToChannelBulkAction:()=>Dn,assignProductVariantsToChannelBulkAction:()=>En,assignProductsToChannelBulkAction:()=>Un,createRoutes:()=>cn,deleteCollectionsBulkAction:()=>Tn,deleteFacetsBulkAction:()=>Fn,deleteProductVariantsBulkAction:()=>Sn,deleteProductsBulkAction:()=>Jn,moveCollectionsBulkAction:()=>bn,productOptionsEditorBreadcrumb:()=>ln,removeCollectionsFromChannelBulkAction:()=>An,removeFacetsFromChannelBulkAction:()=>yn,removeFacetsFromChannelBulkAction2:()=>xc,removeProductVariantsFromChannelBulkAction:()=>Vn,removeProductsFromChannelBulkAction:()=>Mn,replaceLast:()=>$e});var dt,P=m(24285),u=m(50186),l=m(80848),pe=m(67554),t=m(66108),v=m(83044),d=m(95086),I=m(59034),W=m(53839),w=m(71441),Q=m(11452),k=m(6526),R=m(98606),st=m(14415),L=m(43176),qe=m(57198),r=m(25808),b=m(74154);function $e(o,n,e){if(!o)return"";const a=o.lastIndexOf(n);if(-1===a)return o;return o.substr(0,a)+o.substr(a).replace(n,e)}class pt{constructor(n){this.dataService=n}getTaxCategories(){return this.dataService.settings.getTaxCategories().mapSingle(n=>n.taxCategories.items).pipe((0,r.d)(1))}createProductWithVariants(n,e,a){const i=this.dataService.product.createProduct(n),c=e.groups.filter(p=>0<p.values.length),s=this.createProductOptionGroups(c,a);return(0,W.D)(i,s).pipe((0,k.z)(([{createProduct:p},_])=>(_.length?(0,W.D)(_.map(T=>this.dataService.product.addOptionGroupToProduct({productId:p.id,optionGroupId:T.id}))):(0,L.of)([])).pipe((0,v.U)(()=>({createProduct:p,optionGroups:_})))),(0,k.z)(({createProduct:p,optionGroups:_})=>{const f=e.variants.map(Z=>{const O=_.length?Z.optionValues.map((U,Y)=>{const M=_[Y].options.find(et=>et.name===U);if(!M)throw new Error(`Could not find a matching ProductOption "${U}" when creating variant`);return M.id}):[];return{...Z,optionIds:O}}),T=_.map(Z=>Z.options).reduce((Z,O)=>[...Z,...O],[]);return this.createProductVariants(p,f,T,a,e.stockLocationId)}))}createProductOptionGroups(n,e){return n.length?(0,W.D)(n.map(a=>this.dataService.product.createProductOptionGroups({code:(0,R.U)(a.name,"-"),translations:[{languageCode:e,name:a.name}],options:a.values.map(i=>({code:(0,R.U)(i,"-"),translations:[{languageCode:e,name:i}]}))}).pipe((0,v.U)(i=>i.createProductOptionGroup)))):(0,L.of)([])}createProductVariants(n,e,a,i,c){const s=e.map(p=>{const _=a.length?`${n.name} ${p.optionIds.map(f=>a.find(T=>T.id===f)).filter(st.notNullOrUndefined).map(f=>f.name).join(" ")}`:n.name;return{productId:n.id,price:p.price,sku:p.sku,translations:[{languageCode:i,name:_}],stockLevels:[{stockLocationId:c,stockOnHand:p.stock}],optionIds:p.optionIds}});return this.dataService.product.createProductVariants(s).pipe((0,v.U)(({createProductVariants:p})=>({createProductVariants:p,productId:n.id})))}updateProduct(n){const{product:e,languageCode:a,autoUpdate:i,productInput:c,variantsInput:s}=n,p=[],_=s||[];return(i?this.dataService.product.getProductVariantsForProduct({},e.id).mapSingle(({productVariants:T})=>T.items):(0,L.of)([])).pipe((0,k.z)(T=>{if(c){p.push(this.dataService.product.updateProduct(c));const Z=(0,l.ZIM)(e,a)?.name??"",O=(0,l.ZIM)(c,a)?.name;if(O&&Z!==O&&i)for(const U of T){const Y=(0,l.ZIM)(U,a)?.name||"";let M;const et=_.find(an=>an.id===U.id);et?M=et:(M={id:U.id,translations:[{languageCode:a,name:Y}]},_.push(M));const de=(0,l.ZIM)(M,a);de&&(de.name?de.name=$e(de.name,Z,O):de.name=[O,...U.options.map(an=>an.name)].join(" "))}}return _.length&&p.push(this.dataService.product.updateProductVariants(_)),(0,W.D)(p)}))}updateProductOption(n,e,a){return(n.autoUpdate?this.dataService.product.getProductVariantsForProduct({},e.id).mapSingle(({productVariants:c})=>c.items):(0,L.of)([])).pipe((0,k.z)(c=>{let s=(0,L.of)([]);if(n.autoUpdate){let p;const _=(0,l.ZIM)(n,a)?.name;_||(s=(0,L.of)([]));const f=[];for(const T of c)if(T.options.map(Z=>Z.id).includes(n.id)){p||(p=(0,l.ZIM)(T.options.find(O=>O.id===n.id),a)?.name);const Z=(0,l.ZIM)(T,a)?.name||"";p&&_&&Z.includes(p)&&f.push({id:T.id,translations:[{languageCode:a,name:$e(Z,p,_)}]})}f.length&&(s=this.dataService.product.updateProductVariants(f))}return this.dataService.product.updateProductOption(n).pipe((0,k.z)(()=>s))}))}deleteProductVariant(n,e){return this.dataService.product.deleteProductVariant(n).pipe((0,b.w)(a=>a.deleteProductVariant.result===l.PcR.DELETED?this.dataService.product.getProduct(e).single$:(0,qe._)(a.deleteProductVariant.message)))}}(dt=pt).\u0275fac=function(n){return new(n||dt)(t.LFG(l.DoR))},dt.\u0275prov=t.Yz7({token:dt,factory:dt.\u0275fac,providedIn:"root"});var Zt,h=m(36445),g=m(68046),A=m(68621),q=m(78369),y=m(38251),G=m(91300),$=m(75796),ut=m(57185),mt=m(30106),z=m(92249),Qn=m(71563),qn=m(4437),$n=m(57846),Yn=m(78005),E=m(3850),At=m(35276),nt=m(18923),x=m(21317),B=m(99360),ot=m(32388);function Gn(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",6),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.pristine||e.detailForm.invalid),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}function Bn(o,n){if(1&o&&(t.ynx(0,19),t._UZ(1,"vdr-tabbed-custom-fields",20),t.ALo(2,"hasPermission"),t.BQk()),2&o){const e=t.oxw().$implicit,a=t.oxw(2);t.xp6(1),t.Q6J("customFields",a.optionGroupCustomFields)("customFieldsFormGroup",e.get("customFields"))("readonly",!t.lcZ(2,3,a.updatePermission))}}function jn(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.value.id," ")}}function Kn(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.value.createdAt,"short")," ")}}function Hn(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.value.updatedAt,"short")," ")}}function Wn(o,n){if(1&o&&(t._UZ(0,"input",28),t.ALo(1,"hasPermission")),2&o){const e=n.item,a=t.oxw(4);t.Q6J("formControl",e.get("name"))("readonly",!t.lcZ(1,2,a.updatePermission))}}function zn(o,n){if(1&o&&t._UZ(0,"input",29),2&o){const e=n.item;t.Q6J("formControl",e.get("code"))}}function Xn(o,n){if(1&o&&(t._UZ(0,"vdr-tabbed-custom-fields",30),t.ALo(1,"hasPermission")),2&o){const e=n.item,a=t.oxw(4);t.Q6J("customFields",a.optionCustomFields)("compact",!0)("customFieldsFormGroup",e.get("customFields"))("readonly",!t.lcZ(1,4,a.updatePermission))}}function to(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-data-table-2",21),t.NdJ("pageChange",function(i){t.CHM(e);const c=t.oxw().$implicit,s=t.oxw(2);return t.KtG(s.paginationSettings[c.value.id].currentPage=i)}),t.TgZ(1,"vdr-dt2-column",22),t.ALo(2,"translate"),t.YNc(3,jn,1,1,"ng-template"),t.qZA(),t.TgZ(4,"vdr-dt2-column",23),t.ALo(5,"translate"),t.YNc(6,Kn,2,4,"ng-template"),t.qZA(),t.TgZ(7,"vdr-dt2-column",24),t.ALo(8,"translate"),t.YNc(9,Hn,2,4,"ng-template"),t.qZA(),t.TgZ(10,"vdr-dt2-column",25),t.ALo(11,"translate"),t.YNc(12,Wn,2,4,"ng-template"),t.qZA(),t.TgZ(13,"vdr-dt2-column",26),t.ALo(14,"translate"),t.YNc(15,zn,1,1,"ng-template"),t.qZA(),t.TgZ(16,"vdr-dt2-column",27),t.ALo(17,"translate"),t.YNc(18,Xn,2,6,"ng-template"),t.qZA()()}if(2&o){const e=n.ngIf,a=t.oxw().$implicit,i=t.oxw(2);t.Q6J("items",e)("itemsPerPage",null==i.paginationSettings[a.value.id]?null:i.paginationSettings[a.value.id].itemsPerPage)("currentPage",null==i.paginationSettings[a.value.id]?null:i.paginationSettings[a.value.id].currentPage)("totalItems",e.length),t.xp6(1),t.Q6J("heading",t.lcZ(2,16,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(5,18,"common.created-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(8,20,"common.updated-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(11,22,"common.name"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(14,24,"common.code"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(17,26,"common.custom-fields"))("hiddenByDefault",0===i.optionCustomFields.length)}}function eo(o,n){if(1&o&&(t.TgZ(0,"vdr-card",10),t._UZ(1,"vdr-page-entity-info",11),t.TgZ(2,"div",12)(3,"vdr-form-field",13),t.ALo(4,"translate"),t._UZ(5,"input",14),t.ALo(6,"hasPermission"),t.qZA(),t.TgZ(7,"vdr-form-field",15),t.ALo(8,"translate"),t._UZ(9,"input",16),t.ALo(10,"hasPermission"),t.qZA()(),t.YNc(11,Bn,3,5,"ng-container",17),t.YNc(12,to,19,28,"vdr-data-table-2",18),t.qZA()),2&o){const e=n.$implicit,a=n.index,i=t.oxw(2);t.Q6J("formArrayName",a)("title",e.value.code),t.xp6(1),t.Q6J("entity",e.value),t.xp6(2),t.Q6J("label",t.lcZ(4,11,"common.name")),t.xp6(2),t.Q6J("id","name-"+a)("readonly",!t.lcZ(6,13,i.updatePermission)),t.xp6(2),t.Q6J("label",t.lcZ(8,15,"common.code")),t.xp6(2),t.Q6J("id","code-"+a)("readonly",!t.lcZ(10,17,i.updatePermission)),t.xp6(2),t.Q6J("ngIf",i.optionGroupCustomFields.length),t.xp6(1),t.Q6J("ngIf",i.getOptions(e))}}function no(o,n){if(1&o&&(t.TgZ(0,"form",7)(1,"div",8),t.YNc(2,eo,13,19,"vdr-card",9),t.qZA()()),2&o){const e=t.oxw();t.Q6J("formGroup",e.detailForm),t.xp6(2),t.Q6J("ngForOf",e.getOptionGroups())}}class ue extends l.UT_{constructor(n,e,a,i,c,s,p,_){super(n,e,a,i),this.route=n,this.router=e,this.serverConfigService=a,this.dataService=i,this.productDetailService=c,this.formBuilder=s,this.changeDetector=p,this.notificationService=_,this.autoUpdateVariantNames=!0,this.paginationSettings={},this.updatePermission=[l.y3$.UpdateCatalog,l.y3$.UpdateProduct],this.optionGroupCustomFields=this.getCustomFieldConfig("ProductOptionGroup"),this.optionCustomFields=this.getCustomFieldConfig("ProductOption")}ngOnInit(){this.optionGroups$=this.route.snapshot.data.entity.pipe((0,v.U)(n=>n.optionGroups),(0,w.b)(n=>{for(const e of n)this.paginationSettings[e.id]={currentPage:1,itemsPerPage:10}})),this.detailForm=new d.nJ({optionGroups:new d.vC([])}),super.init()}getOptionGroups(){return this.detailForm.get("optionGroups").controls}getOptions(n){return n.get("options").controls}save(){if(this.detailForm.invalid||this.detailForm.pristine)return;const n=this.dataService.product.getProduct(this.id).mapSingle(e=>e.product);(0,I.a)(this.entity$,this.languageCode$,n).pipe((0,Q.q)(1),(0,k.z)(([{optionGroups:e},a,i])=>{const c=[];for(const s of this.getOptionGroups()){if(s.dirty){const p=e.find(_=>_.id===s.value.id);if(p){const _=this.getUpdatedOptionGroup(p,s,a);c.push(this.dataService.product.updateProductOptionGroup(_))}}for(const p of this.getOptions(s))if(p.dirty){const _=e.find(f=>f.id===s.value.id)?.options.find(f=>f.id===p.value.id);if(_){const f=this.getUpdatedOption(_,p,a);c.push(this.productDetailService.updateProductOption({...f,autoUpdate:this.autoUpdateVariantNames},i,a))}}}return(0,W.D)(c)})).subscribe(()=>{this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"ProductOptionGroup"})},e=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"ProductOptionGroup"})})}getUpdatedOptionGroup(n,e,a){return(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.optionGroupCustomFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||""}})}getUpdatedOption(n,e,a){return(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.optionCustomFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||""}})}setFormValues(n,e){const a=this.detailForm.get("optionGroups");for(const i of n.optionGroups){const c=(0,l.ZIM)(i,e),s=this.setOptionGroupForm(i,a,c);this.setCustomFieldsForm(this.optionGroupCustomFields,s,i,c);let p=s.get("options");p||(p=this.formBuilder.array([]),s.addControl("options",p));for(const _ of i.options){const f=(0,l.ZIM)(_,e),T=this.setOptionForm(_,p,f);this.setCustomFieldsForm(this.optionCustomFields,T,_,f)}}}setCustomFieldsForm(n,e,a,i){if(n.length){let c=e.get(["customFields"]);c||(c=this.formBuilder.group(n.reduce((s,p)=>({...s,[p.name]:""}),{})),e.addControl("customFields",c)),this.setCustomFieldFormValues(n,c,a,i)}}setOptionGroupForm(n,e,a){const i={id:n.id,createdAt:n.createdAt,updatedAt:n.updatedAt,code:n.code,name:a?.name??""};let c=e.controls.find(s=>s.value.id===n.id);return c?(c.get("id")?.setValue(i.id),c.get("code")?.setValue(i.code),c.get("name")?.setValue(i.name),c.get("createdAt")?.setValue(i.createdAt),c.get("updatedAt")?.setValue(i.updatedAt)):(c=this.formBuilder.group(i),e.push(c)),c}setOptionForm(n,e,a){const i={id:n.id,createdAt:n.createdAt,updatedAt:n.updatedAt,code:n.code,name:a?.name??""};let c=e.controls.find(s=>s.value.id===n.id);return c?(c.get("id")?.setValue(i.id),c.get("code")?.setValue(i.code),c.get("name")?.setValue(i.name),c.get("createdAt")?.setValue(i.createdAt),c.get("updatedAt")?.setValue(i.updatedAt)):(c=this.formBuilder.group(i),e.push(c)),c}}(Zt=ue).\u0275fac=function(n){return new(n||Zt)(t.Y36(P.gz),t.Y36(P.F0),t.Y36(l.iHG),t.Y36(l.DoR),t.Y36(pt),t.Y36(d.QS),t.Y36(t.sBO),t.Y36(l.gqp))},Zt.\u0275cmp=t.Xpm({type:Zt,selectors:[["vdr-product-options-editor"]],features:[t.qOj],decls:24,vars:17,consts:[[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],[1,"flex","center"],[1,"mr-2"],["clrCheckbox","","type","checkbox","id","auto-update",3,"ngModel","ngModelChange"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],["class","form",3,"formGroup",4,"ngIf"],[1,"btn","btn-primary",3,"disabled","click"],[1,"form",3,"formGroup"],["formGroupName","optionGroups"],[3,"formArrayName","title",4,"ngFor","ngForOf"],[3,"formArrayName","title"],[3,"entity"],[1,"form-grid"],["for","name",3,"label"],["type","text","formControlName","name",3,"id","readonly"],["for","code",3,"label"],["type","text","formControlName","code",3,"id","readonly"],["formGroupName","customFields",4,"ngIf"],["id","edit-options-list",3,"items","itemsPerPage","currentPage","totalItems","pageChange",4,"ngIf"],["formGroupName","customFields"],["entityName","ProductOptionGroup",3,"customFields","customFieldsFormGroup","readonly"],["id","edit-options-list",3,"items","itemsPerPage","currentPage","totalItems","pageChange"],["id","id",3,"heading","hiddenByDefault"],["id","created-at",3,"heading","hiddenByDefault"],["id","updated-at",3,"heading","hiddenByDefault"],["id","name",3,"heading","optional"],["id","code",3,"heading","optional"],["id","custom-fields",3,"heading","hiddenByDefault"],["type","text",3,"formControl","readonly"],["type","text",3,"formControl"],["entityName","ProductOption",3,"customFields","compact","customFieldsFormGroup","readonly"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-header"),t._UZ(1,"vdr-page-title"),t.TgZ(2,"vdr-page-header-description"),t._uU(3),t.ALo(4,"translate"),t.qZA()(),t.TgZ(5,"vdr-page-body")(6,"vdr-page-block")(7,"vdr-action-bar")(8,"vdr-ab-left")(9,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(10,"async"),t.ALo(11,"async"),t.qZA()(),t.TgZ(12,"vdr-ab-right")(13,"div",1)(14,"div",2)(15,"clr-checkbox-wrapper")(16,"input",3),t.NdJ("ngModelChange",function(i){return e.autoUpdateVariantNames=i}),t.qZA(),t.TgZ(17,"label"),t._uU(18),t.ALo(19,"translate"),t.qZA()()(),t.YNc(20,Gn,3,4,"button",4),t.qZA()()()(),t.TgZ(21,"vdr-page-block"),t.YNc(22,no,3,2,"form",5),t.ALo(23,"async"),t.qZA()()),2&n&&(t.xp6(3),t.Oqu(t.lcZ(4,7,"catalog.page-description-options-editor")),t.xp6(6),t.Q6J("availableLanguageCodes",t.lcZ(10,9,e.availableLanguages$))("currentLanguageCode",t.lcZ(11,11,e.languageCode$)),t.xp6(7),t.Q6J("ngModel",e.autoUpdateVariantNames),t.xp6(2),t.Oqu(t.lcZ(19,13,"catalog.auto-update-product-variant-name")),t.xp6(2),t.Q6J("vdrIfPermissions",e.updatePermission),t.xp6(2),t.Q6J("ngIf",t.lcZ(23,15,e.optionGroups$)))},dependencies:[h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.Fj,d.Wl,d.JJ,d.JL,d.On,d.oH,d.sg,d.u,d.x0,d.CE,A.Kk,A.BN,A.mz,q.h,y.y,G.S,$.H,ut.y,mt.e,z.U,Qn.q,qn.T,$n._,Yn.H,E.z,At.D,nt.A,g.Ov,x.X$,B.j,ot.H],styles:[".option-group-header[_ngcontent-%COMP%]{display:flex;align-items:baseline}"],changeDetection:0});var Pt,J=m(27355),_t=m(47807),F=m(62701),j=m(26940),X=m(44351),K=m(84073);function oo(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.create-product-option-group"),"\n")}function ao(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",7),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",8),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.confirm())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",e.form.invalid),t.xp6(1),t.hij(" ",t.lcZ(5,5,"common.confirm")," ")}}class me{constructor(n){this.formBuilder=n,this.form=this.formBuilder.group({name:["",d.kI.required],code:["",d.kI.required]})}updateCode(){const n=this.form.get("name"),e=this.form.get("code");n&&e&&e.pristine&&e.setValue((0,R.U)(`${n.value}`,"-"))}confirm(){const{name:n,code:e}=this.form.value;!n||!e||this.resolveWith({code:e,options:[],translations:[{languageCode:this.languageCode,name:n}]})}cancel(){this.resolveWith()}}(Pt=me).\u0275fac=function(n){return new(n||Pt)(t.Y36(d.qu))},Pt.\u0275cmp=t.Xpm({type:Pt,selectors:[["vdr-create-product-option-group-dialog"]],decls:9,vars:7,consts:[["vdrDialogTitle",""],[1,"form-grid",3,"formGroup"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"input"],["for","code",3,"label"],["id","code","type","text","formControlName","code"],["vdrDialogButtons",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,oo,2,3,"ng-template",0),t.TgZ(1,"div",1)(2,"vdr-form-field",2),t.ALo(3,"translate"),t.TgZ(4,"input",3),t.NdJ("input",function(){return e.updateCode()}),t.qZA()(),t.TgZ(5,"vdr-form-field",4),t.ALo(6,"translate"),t._UZ(7,"input",5),t.qZA()(),t.YNc(8,ao,6,7,"ng-template",6)),2&n&&(t.xp6(1),t.Q6J("formGroup",e.form),t.xp6(1),t.Q6J("label",t.lcZ(3,3,"common.name")),t.xp6(3),t.Q6J("label",t.lcZ(6,5,"common.code")))},dependencies:[d.Fj,d.JJ,d.JL,d.sg,d.u,q.h,y.y,X.n,K.q,x.X$],changeDetection:0});var Ot,_e=m(14992),ge=m(2089);function io(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.create-product-variant"),"\n")}function ro(o,n){if(1&o&&(t.TgZ(0,"vdr-form-field",7),t._UZ(1,"ng-select",12),t.qZA()),2&o){const e=n.$implicit;t.Q6J("label",e.name),t.xp6(1),t.Q6J("items",e.options)("formControlName",e.code)}}function co(o,n){1&o&&(t.TgZ(0,"clr-alert",13)(1,"clr-alert-item")(2,"span",14),t._uU(3),t.ALo(4,"translate"),t.qZA()()()),2&o&&(t.Q6J("clrAlertClosable",!1),t.xp6(3),t.hij(" ",t.lcZ(4,2,"catalog.cannot-create-variants-without-options")," "))}function lo(o,n){if(1&o&&(t.TgZ(0,"div",15)(1,"clr-alert",16)(2,"clr-alert-item")(3,"span",14),t._uU(4),t.ALo(5,"translate"),t.qZA()()()()),2&o){const e=t.oxw();t.xp6(1),t.Q6J("clrAlertClosable",!1),t.xp6(3),t.lnq(" ",t.lcZ(5,4,"catalog.product-variant-exists"),": ",e.existingVariant.name," (",e.existingVariant.sku,") ")}}function so(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",17),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",18),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.confirm())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",e.form.invalid||e.existingVariant||0===e.product.optionGroups.length),t.xp6(1),t.hij(" ",t.lcZ(5,5,"common.confirm")," ")}}class fe{constructor(n){this.formBuilder=n,this.form=this.formBuilder.group({name:["",d.kI.required],sku:["",d.kI.required],price:["",d.kI.required],options:this.formBuilder.record({})})}ngOnInit(){this.currencyCode=this.product.variants[0]?.currencyCode;for(const e of this.product.optionGroups)this.form.get("options").addControl(e.code,new d.NI("",d.kI.required));this.form.get("options").valueChanges.subscribe(e=>{const a=this.form.get("name");if(!Object.values(e).every(s=>null==s)&&e&&a&&!a.dirty){const s=Object.entries(e).map(([p,_])=>this.product.optionGroups.find(f=>f.code===p)?.options.find(f=>f.id===_)?.name).join(" ");a.setValue(`${this.product.name} ${s}`)}Object.values(e).every(s=>null!=s)&&(this.existingVariant=this.product.variants.find(s=>Object.entries(e).every(([p,_])=>s.options.find(f=>f.groupId===this.getGroupIdFromCode(p))?.id===_)))})}confirm(){const{name:n,sku:e,options:a,price:i}=this.form.value;if(!(n&&e&&a&&i))return;const c=Object.values(a).filter(st.notNullOrUndefined);this.resolveWith({productId:this.product.id,sku:e,price:Number(i),optionIds:c,translations:[{languageCode:this.product.languageCode,name:n}]})}cancel(){this.resolveWith()}getGroupCodeFromId(n){return this.product.optionGroups.find(e=>e.id===n)?.code??""}getGroupIdFromCode(n){return this.product.optionGroups.find(e=>e.code===n)?.id??""}}(Ot=fe).\u0275fac=function(n){return new(n||Ot)(t.Y36(d.qu))},Ot.\u0275cmp=t.Xpm({type:Ot,selectors:[["vdr-create-product-variant-dialog"]],decls:17,vars:14,consts:[["vdrDialogTitle",""],[3,"formGroup"],["formGroupName","options",1,"form-grid"],[3,"label",4,"ngFor","ngForOf"],["clrAlertType","warning","class","form-grid-span",3,"clrAlertClosable",4,"ngIf"],["class","mt-2",4,"ngIf"],[1,"form-grid","mt-2"],[3,"label"],["type","text","formControlName","name"],["type","text","formControlName","sku"],["name","price","formControlName","price",3,"currencyCode"],["vdrDialogButtons",""],["bindLabel","name","bindValue","id","appendTo","body",3,"items","formControlName"],["clrAlertType","warning",1,"form-grid-span",3,"clrAlertClosable"],[1,"alert-text"],[1,"mt-2"],["clrAlertType","warning",1,"",3,"clrAlertClosable"],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,io,2,3,"ng-template",0),t.TgZ(1,"form",1)(2,"div",2),t.YNc(3,ro,2,3,"vdr-form-field",3),t.YNc(4,co,5,4,"clr-alert",4),t.qZA(),t.YNc(5,lo,6,6,"div",5),t.TgZ(6,"div",6)(7,"vdr-form-field",7),t.ALo(8,"translate"),t._UZ(9,"input",8),t.qZA(),t.TgZ(10,"vdr-form-field",7),t.ALo(11,"translate"),t._UZ(12,"input",9),t.qZA(),t.TgZ(13,"vdr-form-field",7),t.ALo(14,"translate"),t._UZ(15,"vdr-currency-input",10),t.qZA()()(),t.YNc(16,so,6,7,"ng-template",11)),2&n&&(t.xp6(1),t.Q6J("formGroup",e.form),t.xp6(2),t.Q6J("ngForOf",e.product.optionGroups),t.xp6(1),t.Q6J("ngIf",0===e.product.optionGroups.length),t.xp6(1),t.Q6J("ngIf",e.existingVariant),t.xp6(2),t.Q6J("label",t.lcZ(8,8,"common.name")),t.xp6(3),t.Q6J("label",t.lcZ(11,10,"catalog.sku")),t.xp6(3),t.Q6J("label",t.lcZ(14,12,"catalog.price")),t.xp6(2),t.Q6J("currencyCode",e.currencyCode))},dependencies:[h.TIm,h.CyW,h.I9z,g.sg,g.O5,d._Y,d.Fj,d.JJ,d.JL,d.sg,d.u,d.x0,_e.w9,ge.K,q.h,y.y,X.n,K.q,x.X$],changeDetection:0});var It,H=m(57017),at=m(68269);const po=["textArea"],uo=["editNameInput"];function mo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-chip",6),t.NdJ("iconClick",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.removeOption(c))}),t.TgZ(1,"span",7)(2,"input",8,9),t.NdJ("blur",function(i){const s=t.CHM(e).index,p=t.oxw(2);return t.KtG(p.updateOption(s,i))})("click",function(i){return i.cancelBubble=!0}),t.qZA()(),t.TgZ(4,"span",10),t.NdJ("click",function(i){const s=t.CHM(e).index,p=t.oxw(2);return t.KtG(p.editName(s,i))}),t._uU(5),t.qZA()()}if(2&o){const e=n.$implicit,a=n.last,i=n.index,c=t.oxw(2);t.ekj("selected",a&&c.lastSelected)("locked",e.locked),t.Q6J("icon",e.locked?"lock":"times")("colorFrom",c.groupName),t.xp6(1),t.Q6J("hidden",c.editingIndex!==i),t.xp6(1),t.Q6J("ngModel",e.name),t.xp6(2),t.ekj("editable",!e.locked&&!e.id),t.Q6J("hidden",c.editingIndex===i),t.xp6(1),t.Oqu(e.name)}}function _o(o,n){if(1&o&&(t.TgZ(0,"div",4),t.YNc(1,mo,6,12,"vdr-chip",5),t.qZA()),2&o){const e=t.oxw();t.xp6(1),t.Q6J("ngForOf",e.optionValues)}}const rn={provide:d.JU,useExisting:(0,t.Gpc)(()=>gt),multi:!0};class gt{get optionValues(){return this.formValue??this.options??[]}constructor(n){this.changeDetector=n,this.groupName="",this.add=new t.vpe,this.remove=new t.vpe,this.edit=new t.vpe,this.disabled=!1,this.input="",this.isFocussed=!1,this.lastSelected=!1,this.editingIndex=-1}registerOnChange(n){this.onChangeFn=n}registerOnTouched(n){this.onTouchFn=n}setDisabledState(n){this.disabled=n,this.changeDetector.markForCheck()}writeValue(n){this.formValue=n||[]}focus(){this.textArea.nativeElement.focus()}editName(n,e){const a=this.optionValues[n];if(!a.locked&&!a.id){e.cancelBubble=!0,this.editingIndex=n;const i=this.nameInputs.get(n)?.nativeElement;setTimeout(()=>i?.focus())}}updateOption(n,e){const a=this.optionValues[n],i=e.target.value;a&&(i&&(a.name=i,this.edit.emit({index:n,option:a})),this.editingIndex=-1)}removeOption(n){n.locked||(this.formValue?(this.formValue=this.formValue?.filter(e=>e.name!==n.name),this.onChangeFn(this.formValue)):this.remove.emit(n))}handleKey(n){switch(n.key){case",":case"Enter":this.addOptionValue(),n.preventDefault();break;case"Backspace":this.lastSelected?(this.removeLastOption(),this.lastSelected=!1):""===this.input&&(this.lastSelected=!0);break;default:this.lastSelected=!1}}handleBlur(){this.isFocussed=!1,this.addOptionValue()}addOptionValue(){const n=this.parseInputIntoOptions(this.input).filter(e=>!(this.options??this.formValue)?.find(i=>i?.name===e.name));if(!this.formValue&&this.options)for(const e of n)this.add.emit(e);else this.formValue=(0,J.T)([...this.formValue,...n]),this.onChangeFn(this.formValue);this.input=""}parseInputIntoOptions(n){return n.split(/[,\n]/).map(e=>e.trim()).filter(e=>""!==e).map(e=>({name:e,locked:!1}))}removeLastOption(){if(this.optionValues.length){const n=this.optionValues[this.optionValues.length-1];this.removeOption(n)}}}(It=gt).\u0275fac=function(n){return new(n||It)(t.Y36(t.sBO))},It.\u0275cmp=t.Xpm({type:It,selectors:[["vdr-option-value-input"]],viewQuery:function(n,e){if(1&n&&(t.Gf(po,7),t.Gf(uo,5,t.SBq)),2&n){let a;t.iGM(a=t.CRH())&&(e.textArea=a.first),t.iGM(a=t.CRH())&&(e.nameInputs=a)}},inputs:{groupName:"groupName",options:"options",disabled:"disabled"},outputs:{add:"add",remove:"remove",edit:"edit"},features:[t._Bn([rn])],decls:4,vars:5,consts:[[1,"input-wrapper",3,"click"],["class","chips",4,"ngIf"],[3,"ngModel","disabled","keyup","focus","blur","ngModelChange"],["textArea",""],[1,"chips"],[3,"icon","selected","locked","colorFrom","iconClick",4,"ngFor","ngForOf"],[3,"icon","colorFrom","iconClick"],[3,"hidden"],["type","text",3,"ngModel","blur","click"],["editNameInput",""],[1,"option-name",3,"hidden","click"]],template:function(n,e){if(1&n){const a=t.EpF();t.TgZ(0,"div",0),t.NdJ("click",function(){t.CHM(a);const c=t.MAs(3);return t.KtG(c.focus())}),t.YNc(1,_o,2,1,"div",1),t.TgZ(2,"textarea",2,3),t.NdJ("keyup",function(c){return e.handleKey(c)})("focus",function(){return e.isFocussed=!0})("blur",function(){return e.handleBlur()})("ngModelChange",function(c){return e.input=c}),t.qZA()()}2&n&&(t.ekj("focus",e.isFocussed),t.xp6(1),t.Q6J("ngIf",0<e.optionValues.length),t.xp6(1),t.Q6J("ngModel",e.input)("disabled",e.disabled))},dependencies:[g.sg,g.O5,d.Fj,d.JJ,d.On,H.Y,y.y],styles:[".input-wrapper[_ngcontent-%COMP%]{background-color:var(--color-form-input-bg);border-radius:3px!important;border:1px solid var(--color-grey-300)!important;cursor:text}.input-wrapper.focus[_ngcontent-%COMP%]{border-color:var(--color-primary-500)!important;box-shadow:0 0 1px 1px var(--color-primary-100)}.input-wrapper[_ngcontent-%COMP%] .chips[_ngcontent-%COMP%]{padding:5px}.input-wrapper[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{border:none;width:100%;height:24px;margin-top:3px;padding:0 6px}.input-wrapper[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]:focus{outline:none;box-shadow:none}.input-wrapper[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]:disabled{background-color:var(--color-component-bg-100)}vdr-chip[_ngcontent-%COMP%] .wrapper{margin:0 3px}vdr-chip.locked[_ngcontent-%COMP%]{opacity:.8}vdr-chip.selected[_ngcontent-%COMP%] .wrapper{border-color:var(--color-warning-500)!important;box-shadow:0 0 1px 1px var(--color-warning-400);opacity:.6}vdr-chip[_ngcontent-%COMP%] .option-name.editable[_ngcontent-%COMP%]:hover{outline:1px solid var(--color-component-bg-300);outline-offset:1px;border-radius:1px}vdr-chip[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{padding:0!important;margin-top:-2px;margin-bottom:-2px}"]});var Ft,ft,he=m(4531);function go(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",17)(1,"vdr-form-field",18),t.ALo(2,"translate"),t.TgZ(3,"input",19),t.NdJ("ngModelChange",function(i){const s=t.CHM(e).$implicit;return t.KtG(s.name=i)}),t.qZA()(),t.TgZ(4,"vdr-form-field",20),t.ALo(5,"translate"),t.TgZ(6,"vdr-option-value-input",21,22),t.NdJ("add",function(i){const s=t.CHM(e).index,p=t.oxw();return t.KtG(p.addOption(s,i.name))})("remove",function(i){const s=t.CHM(e).index,p=t.oxw();return t.KtG(p.removeOption(s,i))}),t.qZA()(),t.TgZ(8,"div")(9,"button",23),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.removeOptionGroup(c))}),t._UZ(10,"clr-icon",24),t.qZA()()()}if(2&o){const e=n.$implicit;t.xp6(1),t.Q6J("label",t.lcZ(2,7,"catalog.option")),t.xp6(2),t.Q6J("ngModel",e.name)("readonly",!e.isNew),t.xp6(1),t.Q6J("label",t.lcZ(5,9,"catalog.option-values")),t.xp6(2),t.Q6J("options",e.values)("groupName",e.name)("disabled",""===e.name)}}function fo(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function ho(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function vo(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}function Co(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.name," ")}}function To(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.sku," ")}}function bo(o,n){if(1&o&&(t.TgZ(0,"vdr-chip",28),t._uU(1),t.qZA()),2&o){const e=n.ngIf,a=t.oxw(2).$implicit;t.Q6J("colorFrom",a.code),t.xp6(1),t.Oqu(e.name)}}function xo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",29)(1,"ng-select",30),t.NdJ("change",function(i){t.CHM(e);const c=t.oxw().item,s=t.oxw().$implicit,p=t.oxw();return t.KtG(p.setOptionToAddToVariant(c.id,s.id,null==i?null:i.id))}),t.qZA(),t.TgZ(2,"button",31),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().item,c=t.oxw(2);return t.KtG(c.addOptionToVariant(i))}),t._UZ(3,"clr-icon",32),t.qZA()()}if(2&o){const e=t.oxw().item,a=t.oxw().$implicit,i=t.oxw();t.xp6(1),t.Q6J("items",a.options),t.xp6(1),t.ekj("primary",!(null==i.optionsToAddToVariant[e.id]||!i.optionsToAddToVariant[e.id][a.id])),t.Q6J("disabled",!(null!=i.optionsToAddToVariant[e.id]&&i.optionsToAddToVariant[e.id][a.id]))}}function Ao(o,n){if(1&o&&(t.YNc(0,bo,2,2,"vdr-chip",26),t.YNc(1,xo,4,4,"ng-template",null,27,t.W1O)),2&o){const e=n.item,a=t.MAs(2),i=t.oxw().$implicit,c=t.oxw();t.Q6J("ngIf",c.getOption(e,i.id))("ngIfElse",a)}}function Zo(o,n){if(1&o&&(t.TgZ(0,"vdr-dt2-column",25),t.YNc(1,Ao,3,2,"ng-template"),t.qZA()),2&o){const e=n.$implicit;t.Q6J("heading",e.name)("id",e.code)}}function Po(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.price,e.currencyCode)," ")}}function Oo(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.priceWithTax,e.currencyCode)," ")}}function Io(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(){const c=t.CHM(e).item,s=t.oxw();return t.KtG(s.deleteVariant(c))}),t._UZ(1,"clr-icon",34),t.qZA()}}class Fo{constructor(n){for(const e of Object.keys(n))this[e]=n[e]}}class ve{constructor(n,e,a,i,c,s){this.route=n,this.dataService=e,this.productDetailService=a,this.notificationService=i,this.modalService=c,this.changeDetector=s,this.formValueChanged=!1,this.optionsChanged=!1,this.itemsPerPage=100,this.currentPage=1,this.searchTermControl=new d.NI(""),this.selectionManager=new l.ZE0({multiSelect:!0,itemsAreEqual:(p,_)=>p.id===_.id,additiveMode:!0}),this.optionsToAddToVariant={},this.refresh$=new _t.x}ngOnInit(){this.languageCode=this.route.snapshot.paramMap.get("lang")||(0,l.kAh)(),this.dataService.settings.getActiveChannel().single$.subscribe(e=>{this.currencyCode=e.activeChannel.defaultCurrencyCode});const n=this.refresh$.pipe((0,b.w)(()=>this.dataService.product.getProductVariantsOptions(this.route.parent?.snapshot.paramMap.get("id")).mapSingle(e=>e.product)),(0,j.O)(this.route.snapshot.data.product));this.variants$=n.pipe((0,b.w)(e=>this.searchTermControl.valueChanges.pipe((0,j.O)(""),(0,v.U)(a=>a?e.variants.filter(i=>i.name.toLowerCase().includes(a.toLowerCase())):e.variants)))),this.optionGroups$=n.pipe((0,v.U)(e=>e.optionGroups)),this.totalItems$=this.variants$.pipe((0,v.U)(e=>e.length)),n.subscribe(e=>{this.product=e;const a=e.variants.map(c=>c.options.map(s=>s.id)).flat(),i=e.variants.map(c=>c.options.map(s=>s.groupId)).flat();this.optionGroups=e.optionGroups.map(c=>({id:c.id,isNew:!1,name:c.name,locked:i.includes(c.id),values:c.options.map(s=>({id:s.id,name:s.name,locked:a.includes(s.id)}))}))})}setItemsPerPage(n){this.itemsPerPage=n,this.currentPage=1}setPageNumber(n){this.currentPage=n}onFormChanged(n){this.formValueChanged=!0,n.enabled=!0}canDeactivate(){return!this.formValueChanged}addOptionGroup(){this.modalService.fromComponent(me,{locals:{languageCode:this.languageCode}}).pipe((0,b.w)(n=>n?this.dataService.product.createProductOptionGroups(n).pipe((0,b.w)(({createProductOptionGroup:e})=>this.dataService.product.addOptionGroupToProduct({optionGroupId:e.id,productId:this.product.id}))):F.E)).subscribe(n=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"ProductOptionGroup"}),this.refresh$.next(),this.changeDetector.markForCheck()})}removeOptionGroup(n){const e=n.id,a=this.product.variants.filter(i=>i.options.map(c=>c.groupId).includes(e)).length;this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-product-option-group"),body:a?(0,u.J)("catalog.confirm-delete-product-option-group-body"):"",translationVars:{name:n.name,count:a},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(i=>i?this.dataService.product.removeOptionGroupFromProduct({optionGroupId:e,productId:this.product.id,force:!0}):F.E)).subscribe(({removeOptionGroupFromProduct:i})=>{"Product"===i.__typename?(this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"ProductOptionGroup"}),this.refresh$.next()):"ProductOptionInUseError"===i.__typename&&this.notificationService.error(i.message??"")})}addOption(n,e){const a=this.optionGroups[n];a&&a.id&&this.dataService.product.addOptionToGroup({productOptionGroupId:a.id,code:(0,R.U)(e,"-"),translations:[{name:e,languageCode:this.languageCode}]}).subscribe(({createProductOption:i})=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"ProductOption"}),this.refresh$.next()})}removeOption(n,{id:e,name:a}){const i=this.optionGroups[n];i&&this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-product-option"),translationVars:{name:a},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(c=>c?this.dataService.product.deleteProductOption(e):F.E)).subscribe(({deleteProductOption:c})=>{c.result===l.PcR.DELETED?(this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"ProductOption"}),i.values=i.values.filter(s=>s.id!==e),this.refresh$.next()):this.notificationService.error(c.message??"")})}setOptionToAddToVariant(n,e,a){this.optionsToAddToVariant[n]||(this.optionsToAddToVariant[n]={}),a?this.optionsToAddToVariant[n][e]=a:delete this.optionsToAddToVariant[n][e]}addOptionToVariant(n){const e=[...n.options.map(a=>a.id),...Object.values(this.optionsToAddToVariant[n.id])];this.dataService.product.updateProductVariants([{id:n.id,optionIds:(0,J.T)(e)}]).subscribe(({updateProductVariants:a})=>{this.refresh$.next()})}deleteVariant(n){this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-product-variant"),translationVars:{name:n.name},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(e=>e?this.productDetailService.deleteProductVariant(n.id,this.product.id):F.E)).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"ProductVariant"}),this.refresh$.next()},e=>{this.notificationService.error((0,u.J)("common.notify-delete-error"),{entity:"ProductVariant"})})}createNewVariant(){this.modalService.fromComponent(fe,{locals:{product:this.product}}).pipe((0,b.w)(n=>n?this.dataService.product.createProductVariants([n]):F.E)).subscribe(n=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"ProductVariant"}),this.refresh$.next()})}getOption(n,e){return n.options.find(a=>a.groupId===e)}}(Ft=ve).\u0275fac=function(n){return new(n||Ft)(t.Y36(P.gz),t.Y36(l.DoR),t.Y36(pt),t.Y36(l.gqp),t.Y36(l.Z7U),t.Y36(t.sBO))},Ft.\u0275cmp=t.Xpm({type:Ft,selectors:[["vdr-product-variants-editor"]],decls:44,vars:55,consts:[["class","option-groups",4,"ngFor","ngForOf"],[1,"button","mt-1",3,"click"],["shape","plus"],[3,"paddingX"],[1,"mx-3"],[1,"button",3,"click"],["id","manage-product-variant-list",3,"items","itemsPerPage","totalItems","currentPage","pageChange","itemsPerPageChange"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault"],["id","created-at",3,"heading","hiddenByDefault"],["id","updated-at",3,"heading","hiddenByDefault"],["id","name",3,"heading","optional"],["id","sku",3,"heading","optional"],[3,"heading","id",4,"ngFor","ngForOf"],["id","price",3,"heading","hiddenByDefault"],["id","price-with-tax",3,"heading","hiddenByDefault"],["id","delete",3,"heading","optional"],[1,"option-groups"],[3,"label"],["clrInput","","name","name",3,"ngModel","readonly","ngModelChange"],[1,"flex-spacer",3,"label"],[3,"options","groupName","disabled","add","remove"],["optionValueInputComponent",""],[1,"button-small","mt-4",3,"click"],["shape","trash"],[3,"heading","id"],[3,"colorFrom",4,"ngIf","ngIfElse"],["selectOption",""],[3,"colorFrom"],[1,"flex","center"],["bindLabel","name","bindValue","id","appendTo","body",3,"items","change"],[1,"button-small","ml-1",3,"disabled","click"],["shape","floppy"],[1,"button-small",3,"click"],["shape","trash is-danger"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-card"),t.YNc(2,go,11,11,"div",0),t.TgZ(3,"button",1),t.NdJ("click",function(){return e.addOptionGroup()}),t._UZ(4,"clr-icon",2),t._uU(5),t.ALo(6,"translate"),t.qZA()(),t.TgZ(7,"vdr-card",3)(8,"div",4)(9,"button",5),t.NdJ("click",function(){return e.createNewVariant()}),t._UZ(10,"clr-icon",2),t._uU(11),t.ALo(12,"translate"),t.qZA()(),t.TgZ(13,"vdr-data-table-2",6),t.NdJ("pageChange",function(i){return e.setPageNumber(i)})("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(14,"async"),t.ALo(15,"async"),t._UZ(16,"vdr-dt2-search",7),t.ALo(17,"translate"),t.TgZ(18,"vdr-dt2-column",8),t.ALo(19,"translate"),t.YNc(20,fo,1,1,"ng-template"),t.qZA(),t.TgZ(21,"vdr-dt2-column",9),t.ALo(22,"translate"),t.YNc(23,ho,2,4,"ng-template"),t.qZA(),t.TgZ(24,"vdr-dt2-column",10),t.ALo(25,"translate"),t.YNc(26,vo,2,4,"ng-template"),t.qZA(),t.TgZ(27,"vdr-dt2-column",11),t.ALo(28,"translate"),t.YNc(29,Co,1,1,"ng-template"),t.qZA(),t.TgZ(30,"vdr-dt2-column",12),t.ALo(31,"translate"),t.YNc(32,To,1,1,"ng-template"),t.qZA(),t.YNc(33,Zo,2,2,"vdr-dt2-column",13),t.ALo(34,"async"),t.TgZ(35,"vdr-dt2-column",14),t.ALo(36,"translate"),t.YNc(37,Po,2,4,"ng-template"),t.qZA(),t.TgZ(38,"vdr-dt2-column",15),t.ALo(39,"translate"),t.YNc(40,Oo,2,4,"ng-template"),t.qZA(),t.TgZ(41,"vdr-dt2-column",16),t.ALo(42,"translate"),t.YNc(43,Io,2,0,"ng-template"),t.qZA()()()()),2&n&&(t.xp6(2),t.Q6J("ngForOf",e.optionGroups),t.xp6(3),t.hij(" ",t.lcZ(6,27,"catalog.create-product-option-group")," "),t.xp6(2),t.Q6J("paddingX",!1),t.xp6(4),t.hij(" ",t.lcZ(12,29,"catalog.create-product-variant")," "),t.xp6(2),t.Q6J("items",t.lcZ(14,31,e.variants$))("itemsPerPage",e.itemsPerPage)("totalItems",t.lcZ(15,33,e.totalItems$))("currentPage",e.currentPage),t.xp6(3),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(17,35,"catalog.filter-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(19,37,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(22,39,"common.created-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(25,41,"common.updated-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(28,43,"catalog.name"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(31,45,"catalog.sku"))("optional",!1),t.xp6(3),t.Q6J("ngForOf",t.lcZ(34,47,e.optionGroups$)),t.xp6(2),t.Q6J("heading",t.lcZ(36,49,"common.price"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(39,51,"common.price-with-tax"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(42,53,"common.delete"))("optional",!1))},dependencies:[h.qvL,h.xRP,g.sg,g.O5,d.Fj,d.JJ,d.On,_e.w9,H.Y,q.h,y.y,mt.e,z.U,at.J,E.z,nt.A,gt,g.Ov,x.X$,ot.H,he.k],styles:[".option-groups[_ngcontent-%COMP%]{display:flex;width:100%;gap:var(--space-unit)}.values[_ngcontent-%COMP%]{flex:1;margin:0 6px}.variants-preview[_ngcontent-%COMP%] tr.disabled[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{background-color:var(--color-component-bg-100);color:var(--color-grey-400)}"]});class Ye extends l.p_9{constructor(n,e){super(n,{__typename:"Product",id:"",createdAt:"",updatedAt:"",name:"",languageCode:"",optionGroups:[],variants:[]},a=>e.product.getProductVariantsOptions(a).mapStream(i=>i.product))}}(ft=Ye).\u0275fac=function(n){return new(n||ft)(t.LFG(P.F0),t.LFG(l.DoR))},ft.\u0275prov=t.Yz7({token:ft,factory:ft.\u0275fac,providedIn:"root"});const cn=o=>[{path:"products",component:l.IIO,data:{locationId:"product-list",breadcrumb:(0,u.J)("breadcrumb.products")},children:o.getPageTabRoutes("product-list")},{path:"inventory",redirectTo:"products"},{path:"products/:id",component:l.IIO,data:{locationId:"product-detail",breadcrumb:{label:(0,u.J)("breadcrumb.products"),link:["../","products"]}},children:[{path:"manage-variants",component:ve,canDeactivate:[l.TSp],data:{breadcrumb:({product:n})=>[{label:`${n.name}`,link:["../"]},{label:(0,u.J)("breadcrumb.manage-variants"),link:["manage-variants"]}]},resolve:{product:n=>(0,t.f3M)(l.DoR).product.getProductVariantsOptions(n.parent?.params.id).mapSingle(e=>e.product)}},...o.getPageTabRoutes("product-detail")]},{path:"products/:productId/variants/:id",component:l.IIO,data:{locationId:"product-variant-detail",breadcrumb:{label:(0,u.J)("breadcrumb.products"),link:["../","products"]}},children:o.getPageTabRoutes("product-variant-detail")},{path:"products/:id/options",component:ue,resolve:(0,l.Po4)(Ye),canDeactivate:[l.TSp],data:{breadcrumb:ln}},{path:"facets",component:l.IIO,data:{locationId:"facet-list",breadcrumb:(0,u.J)("breadcrumb.facets")},children:o.getPageTabRoutes("facet-list")},{path:"facets/:id",component:l.IIO,data:{locationId:"facet-detail",breadcrumb:{label:(0,u.J)("breadcrumb.facets"),link:["../","facets"]}},children:o.getPageTabRoutes("facet-detail")},{path:"collections",component:l.IIO,data:{locationId:"collection-list",breadcrumb:(0,u.J)("breadcrumb.collections")},children:o.getPageTabRoutes("collection-list")},{path:"collections/:id",component:l.IIO,data:{locationId:"collection-detail",breadcrumb:{label:(0,u.J)("breadcrumb.collections"),link:["../","collections"]}},children:o.getPageTabRoutes("collection-detail")},{path:"assets",component:l.IIO,data:{locationId:"asset-list",breadcrumb:(0,u.J)("breadcrumb.assets")},children:o.getPageTabRoutes("asset-list")},{path:"assets/:id",component:l.IIO,data:{locationId:"asset-detail",breadcrumb:{label:(0,u.J)("breadcrumb.assets"),link:["../","assets"]}},children:o.getPageTabRoutes("asset-detail")}];function ln(o,n){return o.entity.pipe((0,v.U)(e=>[{label:(0,u.J)("breadcrumb.products"),link:["../","products"]},{label:`${e.name}`,link:["../","products",n.id]},{label:(0,u.J)("breadcrumb.product-options"),link:["options"]}]))}var Dt,sn=m(79981);function Do(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.add-facets"))}function yo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",3),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",4),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.selectValues())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",0===e.selectedValues.length),t.xp6(1),t.hij(" ",t.lcZ(5,5,"catalog.add-facets")," ")}}class yt{constructor(n){this.changeDetector=n,this.selectedValues=[]}ngAfterViewInit(){setTimeout(()=>this.selector.focus(),0)}selectValues(){this.resolveWith(this.selectedValues)}cancel(){this.resolveWith()}}(Dt=yt).\u0275fac=function(n){return new(n||Dt)(t.Y36(t.sBO))},Dt.\u0275cmp=t.Xpm({type:Dt,selectors:[["vdr-apply-facet-dialog"]],viewQuery:function(n,e){if(1&n&&t.Gf(l.$MF,5),2&n){let a;t.iGM(a=t.CRH())&&(e.selector=a.first)}},decls:3,vars:0,consts:[["vdrDialogTitle",""],[3,"selectedValuesChange"],["vdrDialogButtons",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,Do,2,3,"ng-template",0),t.TgZ(1,"vdr-facet-value-selector",1),t.NdJ("selectedValuesChange",function(i){return e.selectedValues=i}),t.qZA(),t.YNc(2,yo,6,7,"ng-template",2))},dependencies:[sn.$,X.n,K.q,x.X$],changeDetection:0});var Lt,D=m(2840),Lo=m(75734),tt=m(67491);function No(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",3),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}const ko=function(){return["UpdateCatalog","UpdateAsset"]},Jo=D.Ps`
1
+ "use strict";(self.webpackChunkvendure_admin=self.webpackChunkvendure_admin||[]).push([[90],{25090:(Qn,C,m)=>{m.r(C),m.d(C,{ASSET_DETAIL_QUERY:()=>Uo,ApplyFacetDialogComponent:()=>yt,AssetDetailComponent:()=>Te,AssetListComponent:()=>xe,AssetsComponent:()=>bt,AssignProductsToChannelDialogComponent:()=>rt,BulkAddFacetValuesDialogComponent:()=>Rt,COLLECTION_DETAIL_QUERY:()=>qi,CatalogModule:()=>de,CollectionBreadcrumbPipe:()=>$t,CollectionContentsComponent:()=>Vt,CollectionDataTableComponent:()=>wt,CollectionDetailComponent:()=>De,CollectionListComponent:()=>Ne,CollectionTreeComponent:()=>He,CollectionTreeNodeComponent:()=>Je,CollectionTreeService:()=>Bt,ConfirmVariantDeletionDialogComponent:()=>We,CreateFacetValueDialogComponent:()=>Ue,CreateProductOptionGroupDialogComponent:()=>_e,CreateProductVariantDialogComponent:()=>he,FACET_DETAIL_QUERY:()=>In,FACET_LIST_QUERY:()=>qc,FacetDetailComponent:()=>Me,FacetListComponent:()=>Re,GET_PRODUCTS_WITH_FACET_VALUES_BY_IDS:()=>_n,GET_PRODUCT_DETAIL:()=>Kl,GET_VARIANTS_WITH_FACET_VALUES_BY_IDS:()=>gn,GenerateProductVariantsComponent:()=>Ee,GeneratedVariant:()=>Do,MoveCollectionsDialogComponent:()=>ye,OPTION_VALUE_INPUT_VALUE_ACCESSOR:()=>rn,OptionValueInputComponent:()=>gt,PRODUCT_LIST_QUERY:()=>dd,PRODUCT_VARIANT_DETAIL_QUERY:()=>pd,PRODUCT_VARIANT_DETAIL_QUERY_PRODUCT_VARIANT_FRAGMENT:()=>on,PRODUCT_VARIANT_LIST_QUERY:()=>_d,PRODUCT_VARIANT_UPDATE_MUTATION:()=>ud,ProductDetailComponent:()=>oe,ProductDetailService:()=>pt,ProductListComponent:()=>Ve,ProductOptionsEditorComponent:()=>me,ProductVariantDetailComponent:()=>Qe,ProductVariantListComponent:()=>ee,ProductVariantQuickJumpComponent:()=>we,ProductVariantsEditorComponent:()=>Ce,ProductVariantsResolver:()=>Ye,ProductVariantsTableComponent:()=>en,UPDATE_PRODUCTS_BULK:()=>fn,UPDATE_VARIANTS_BULK:()=>hn,UpdateProductOptionDialogComponent:()=>nn,VariantPriceDetailComponent:()=>Se,arrayToTree:()=>On,assignCollectionsToChannelBulkAction:()=>xn,assignFacetValuesToProductVariantsBulkAction:()=>wn,assignFacetValuesToProductsBulkAction:()=>Rn,assignFacetsToChannelBulkAction:()=>Dn,assignProductVariantsToChannelBulkAction:()=>En,assignProductsToChannelBulkAction:()=>Un,createRoutes:()=>cn,deleteCollectionsBulkAction:()=>Tn,deleteFacetsBulkAction:()=>Fn,deleteProductVariantsBulkAction:()=>Sn,deleteProductsBulkAction:()=>Jn,moveCollectionsBulkAction:()=>bn,productOptionsEditorBreadcrumb:()=>ln,removeCollectionsFromChannelBulkAction:()=>An,removeFacetsFromChannelBulkAction:()=>yn,removeFacetsFromChannelBulkAction2:()=>Ac,removeProductVariantsFromChannelBulkAction:()=>Vn,removeProductsFromChannelBulkAction:()=>Mn,replaceLast:()=>$e});var dt,P=m(24285),u=m(50186),l=m(80848),ue=m(67554),t=m(66108),v=m(83044),d=m(95086),I=m(59034),W=m(53839),w=m(71441),Q=m(11452),J=m(6526),R=m(98606),st=m(14415),L=m(43176),qe=m(57198),r=m(25808),b=m(74154);function $e(o,n,e){if(!o)return"";const a=o.lastIndexOf(n);if(-1===a)return o;return o.substr(0,a)+o.substr(a).replace(n,e)}class pt{constructor(n){this.dataService=n}getTaxCategories(){return this.dataService.settings.getTaxCategories().mapSingle(n=>n.taxCategories.items).pipe((0,r.d)(1))}createProductWithVariants(n,e,a){const i=this.dataService.product.createProduct(n),c=e.groups.filter(p=>0<p.values.length),s=this.createProductOptionGroups(c,a);return(0,W.D)(i,s).pipe((0,J.z)(([{createProduct:p},_])=>(_.length?(0,W.D)(_.map(T=>this.dataService.product.addOptionGroupToProduct({productId:p.id,optionGroupId:T.id}))):(0,L.of)([])).pipe((0,v.U)(()=>({createProduct:p,optionGroups:_})))),(0,J.z)(({createProduct:p,optionGroups:_})=>{const f=e.variants.map(Z=>{const O=_.length?Z.optionValues.map((U,Y)=>{const M=_[Y].options.find(et=>et.name===U);if(!M)throw new Error(`Could not find a matching ProductOption "${U}" when creating variant`);return M.id}):[];return{...Z,optionIds:O}}),T=_.map(Z=>Z.options).reduce((Z,O)=>[...Z,...O],[]);return this.createProductVariants(p,f,T,a,e.stockLocationId)}))}createProductOptionGroups(n,e){return n.length?(0,W.D)(n.map(a=>this.dataService.product.createProductOptionGroups({code:(0,R.U)(a.name,"-"),translations:[{languageCode:e,name:a.name}],options:a.values.map(i=>({code:(0,R.U)(i,"-"),translations:[{languageCode:e,name:i}]}))}).pipe((0,v.U)(i=>i.createProductOptionGroup)))):(0,L.of)([])}createProductVariants(n,e,a,i,c){const s=e.map(p=>{const _=a.length?`${n.name} ${p.optionIds.map(f=>a.find(T=>T.id===f)).filter(st.notNullOrUndefined).map(f=>f.name).join(" ")}`:n.name;return{productId:n.id,price:p.price,sku:p.sku,translations:[{languageCode:i,name:_}],stockLevels:[{stockLocationId:c,stockOnHand:p.stock}],optionIds:p.optionIds}});return this.dataService.product.createProductVariants(s).pipe((0,v.U)(({createProductVariants:p})=>({createProductVariants:p,productId:n.id})))}updateProduct(n){const{product:e,languageCode:a,autoUpdate:i,productInput:c,variantsInput:s}=n,p=[],_=s||[];return(i?this.dataService.product.getProductVariantsForProduct({},e.id).mapSingle(({productVariants:T})=>T.items):(0,L.of)([])).pipe((0,J.z)(T=>{if(c){p.push(this.dataService.product.updateProduct(c));const Z=(0,l.ZIM)(e,a)?.name??"",O=(0,l.ZIM)(c,a)?.name;if(O&&Z!==O&&i)for(const U of T){const Y=(0,l.ZIM)(U,a)?.name||"";let M;const et=_.find(an=>an.id===U.id);et?M=et:(M={id:U.id,translations:[{languageCode:a,name:Y}]},_.push(M));const pe=(0,l.ZIM)(M,a);pe&&(pe.name?pe.name=$e(pe.name,Z,O):pe.name=[O,...U.options.map(an=>an.name)].join(" "))}}return _.length&&p.push(this.dataService.product.updateProductVariants(_)),(0,W.D)(p)}))}updateProductOption(n,e,a){return(n.autoUpdate?this.dataService.product.getProductVariantsForProduct({},e.id).mapSingle(({productVariants:c})=>c.items):(0,L.of)([])).pipe((0,J.z)(c=>{let s=(0,L.of)([]);if(n.autoUpdate){let p;const _=(0,l.ZIM)(n,a)?.name;_||(s=(0,L.of)([]));const f=[];for(const T of c)if(T.options.map(Z=>Z.id).includes(n.id)){p||(p=(0,l.ZIM)(T.options.find(O=>O.id===n.id),a)?.name);const Z=(0,l.ZIM)(T,a)?.name||"";p&&_&&Z.includes(p)&&f.push({id:T.id,translations:[{languageCode:a,name:$e(Z,p,_)}]})}f.length&&(s=this.dataService.product.updateProductVariants(f))}return this.dataService.product.updateProductOption(n).pipe((0,J.z)(()=>s))}))}deleteProductVariant(n,e){return this.dataService.product.deleteProductVariant(n).pipe((0,b.w)(a=>a.deleteProductVariant.result===l.PcR.DELETED?this.dataService.product.getProduct(e).single$:(0,qe._)(a.deleteProductVariant.message)))}}(dt=pt).\u0275fac=function(n){return new(n||dt)(t.LFG(l.DoR))},dt.\u0275prov=t.Yz7({token:dt,factory:dt.\u0275fac,providedIn:"root"});var Zt,h=m(36445),g=m(68046),A=m(68621),q=m(78369),y=m(38251),G=m(91300),$=m(75796),ut=m(57185),mt=m(30106),z=m(92249),qn=m(71563),$n=m(4437),Yn=m(57846),Gn=m(78005),E=m(3850),At=m(35276),nt=m(18923),x=m(21317),B=m(99360),ot=m(32388);function Bn(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",6),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.pristine||e.detailForm.invalid),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}function jn(o,n){if(1&o&&(t.ynx(0,19),t._UZ(1,"vdr-tabbed-custom-fields",20),t.ALo(2,"hasPermission"),t.BQk()),2&o){const e=t.oxw().$implicit,a=t.oxw(2);t.xp6(1),t.Q6J("customFields",a.optionGroupCustomFields)("customFieldsFormGroup",e.get("customFields"))("readonly",!t.lcZ(2,3,a.updatePermission))}}function Kn(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.value.id," ")}}function Hn(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.value.createdAt,"short")," ")}}function Wn(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.value.updatedAt,"short")," ")}}function zn(o,n){if(1&o&&(t._UZ(0,"input",28),t.ALo(1,"hasPermission")),2&o){const e=n.item,a=t.oxw(4);t.Q6J("formControl",e.get("name"))("readonly",!t.lcZ(1,2,a.updatePermission))}}function Xn(o,n){if(1&o&&t._UZ(0,"input",29),2&o){const e=n.item;t.Q6J("formControl",e.get("code"))}}function to(o,n){if(1&o&&(t._UZ(0,"vdr-tabbed-custom-fields",30),t.ALo(1,"hasPermission")),2&o){const e=n.item,a=t.oxw(4);t.Q6J("customFields",a.optionCustomFields)("compact",!0)("customFieldsFormGroup",e.get("customFields"))("readonly",!t.lcZ(1,4,a.updatePermission))}}function eo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-data-table-2",21),t.NdJ("pageChange",function(i){t.CHM(e);const c=t.oxw().$implicit,s=t.oxw(2);return t.KtG(s.paginationSettings[c.value.id].currentPage=i)}),t.TgZ(1,"vdr-dt2-column",22),t.ALo(2,"translate"),t.YNc(3,Kn,1,1,"ng-template"),t.qZA(),t.TgZ(4,"vdr-dt2-column",23),t.ALo(5,"translate"),t.YNc(6,Hn,2,4,"ng-template"),t.qZA(),t.TgZ(7,"vdr-dt2-column",24),t.ALo(8,"translate"),t.YNc(9,Wn,2,4,"ng-template"),t.qZA(),t.TgZ(10,"vdr-dt2-column",25),t.ALo(11,"translate"),t.YNc(12,zn,2,4,"ng-template"),t.qZA(),t.TgZ(13,"vdr-dt2-column",26),t.ALo(14,"translate"),t.YNc(15,Xn,1,1,"ng-template"),t.qZA(),t.TgZ(16,"vdr-dt2-column",27),t.ALo(17,"translate"),t.YNc(18,to,2,6,"ng-template"),t.qZA()()}if(2&o){const e=n.ngIf,a=t.oxw().$implicit,i=t.oxw(2);t.Q6J("items",e)("itemsPerPage",null==i.paginationSettings[a.value.id]?null:i.paginationSettings[a.value.id].itemsPerPage)("currentPage",null==i.paginationSettings[a.value.id]?null:i.paginationSettings[a.value.id].currentPage)("totalItems",e.length),t.xp6(1),t.Q6J("heading",t.lcZ(2,16,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(5,18,"common.created-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(8,20,"common.updated-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(11,22,"common.name"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(14,24,"common.code"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(17,26,"common.custom-fields"))("hiddenByDefault",0===i.optionCustomFields.length)}}function no(o,n){if(1&o&&(t.TgZ(0,"vdr-card",10),t._UZ(1,"vdr-page-entity-info",11),t.TgZ(2,"div",12)(3,"vdr-form-field",13),t.ALo(4,"translate"),t._UZ(5,"input",14),t.ALo(6,"hasPermission"),t.qZA(),t.TgZ(7,"vdr-form-field",15),t.ALo(8,"translate"),t._UZ(9,"input",16),t.ALo(10,"hasPermission"),t.qZA()(),t.YNc(11,jn,3,5,"ng-container",17),t.YNc(12,eo,19,28,"vdr-data-table-2",18),t.qZA()),2&o){const e=n.$implicit,a=n.index,i=t.oxw(2);t.Q6J("formArrayName",a)("title",e.value.code),t.xp6(1),t.Q6J("entity",e.value),t.xp6(2),t.Q6J("label",t.lcZ(4,11,"common.name")),t.xp6(2),t.Q6J("id","name-"+a)("readonly",!t.lcZ(6,13,i.updatePermission)),t.xp6(2),t.Q6J("label",t.lcZ(8,15,"common.code")),t.xp6(2),t.Q6J("id","code-"+a)("readonly",!t.lcZ(10,17,i.updatePermission)),t.xp6(2),t.Q6J("ngIf",i.optionGroupCustomFields.length),t.xp6(1),t.Q6J("ngIf",i.getOptions(e))}}function oo(o,n){if(1&o&&(t.TgZ(0,"form",7)(1,"div",8),t.YNc(2,no,13,19,"vdr-card",9),t.qZA()()),2&o){const e=t.oxw();t.Q6J("formGroup",e.detailForm),t.xp6(2),t.Q6J("ngForOf",e.getOptionGroups())}}class me extends l.UT_{constructor(n,e,a,i,c,s,p,_){super(n,e,a,i),this.route=n,this.router=e,this.serverConfigService=a,this.dataService=i,this.productDetailService=c,this.formBuilder=s,this.changeDetector=p,this.notificationService=_,this.autoUpdateVariantNames=!0,this.paginationSettings={},this.updatePermission=[l.y3$.UpdateCatalog,l.y3$.UpdateProduct],this.optionGroupCustomFields=this.getCustomFieldConfig("ProductOptionGroup"),this.optionCustomFields=this.getCustomFieldConfig("ProductOption")}ngOnInit(){this.optionGroups$=this.route.snapshot.data.entity.pipe((0,v.U)(n=>n.optionGroups),(0,w.b)(n=>{for(const e of n)this.paginationSettings[e.id]={currentPage:1,itemsPerPage:10}})),this.detailForm=new d.nJ({optionGroups:new d.vC([])}),super.init()}getOptionGroups(){return this.detailForm.get("optionGroups").controls}getOptions(n){return n.get("options").controls}save(){if(this.detailForm.invalid||this.detailForm.pristine)return;const n=this.dataService.product.getProduct(this.id).mapSingle(e=>e.product);(0,I.a)(this.entity$,this.languageCode$,n).pipe((0,Q.q)(1),(0,J.z)(([{optionGroups:e},a,i])=>{const c=[];for(const s of this.getOptionGroups()){if(s.dirty){const p=e.find(_=>_.id===s.value.id);if(p){const _=this.getUpdatedOptionGroup(p,s,a);c.push(this.dataService.product.updateProductOptionGroup(_))}}for(const p of this.getOptions(s))if(p.dirty){const _=e.find(f=>f.id===s.value.id)?.options.find(f=>f.id===p.value.id);if(_){const f=this.getUpdatedOption(_,p,a);c.push(this.productDetailService.updateProductOption({...f,autoUpdate:this.autoUpdateVariantNames},i,a))}}}return(0,W.D)(c)})).subscribe(()=>{this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"ProductOptionGroup"})},e=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"ProductOptionGroup"})})}getUpdatedOptionGroup(n,e,a){return(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.optionGroupCustomFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||""}})}getUpdatedOption(n,e,a){return(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.optionCustomFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||""}})}setFormValues(n,e){const a=this.detailForm.get("optionGroups");for(const i of n.optionGroups){const c=(0,l.ZIM)(i,e),s=this.setOptionGroupForm(i,a,c);this.setCustomFieldsForm(this.optionGroupCustomFields,s,i,c);let p=s.get("options");p||(p=this.formBuilder.array([]),s.addControl("options",p));for(const _ of i.options){const f=(0,l.ZIM)(_,e),T=this.setOptionForm(_,p,f);this.setCustomFieldsForm(this.optionCustomFields,T,_,f)}}}setCustomFieldsForm(n,e,a,i){if(n.length){let c=e.get(["customFields"]);c||(c=this.formBuilder.group(n.reduce((s,p)=>({...s,[p.name]:""}),{})),e.addControl("customFields",c)),this.setCustomFieldFormValues(n,c,a,i)}}setOptionGroupForm(n,e,a){const i={id:n.id,createdAt:n.createdAt,updatedAt:n.updatedAt,code:n.code,name:a?.name??""};let c=e.controls.find(s=>s.value.id===n.id);return c?(c.get("id")?.setValue(i.id),c.get("code")?.setValue(i.code),c.get("name")?.setValue(i.name),c.get("createdAt")?.setValue(i.createdAt),c.get("updatedAt")?.setValue(i.updatedAt)):(c=this.formBuilder.group(i),e.push(c)),c}setOptionForm(n,e,a){const i={id:n.id,createdAt:n.createdAt,updatedAt:n.updatedAt,code:n.code,name:a?.name??""};let c=e.controls.find(s=>s.value.id===n.id);return c?(c.get("id")?.setValue(i.id),c.get("code")?.setValue(i.code),c.get("name")?.setValue(i.name),c.get("createdAt")?.setValue(i.createdAt),c.get("updatedAt")?.setValue(i.updatedAt)):(c=this.formBuilder.group(i),e.push(c)),c}}(Zt=me).\u0275fac=function(n){return new(n||Zt)(t.Y36(P.gz),t.Y36(P.F0),t.Y36(l.iHG),t.Y36(l.DoR),t.Y36(pt),t.Y36(d.QS),t.Y36(t.sBO),t.Y36(l.gqp))},Zt.\u0275cmp=t.Xpm({type:Zt,selectors:[["vdr-product-options-editor"]],features:[t.qOj],decls:24,vars:17,consts:[[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],[1,"flex","center"],[1,"mr-2"],["clrCheckbox","","type","checkbox","id","auto-update",3,"ngModel","ngModelChange"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],["class","form",3,"formGroup",4,"ngIf"],[1,"btn","btn-primary",3,"disabled","click"],[1,"form",3,"formGroup"],["formGroupName","optionGroups"],[3,"formArrayName","title",4,"ngFor","ngForOf"],[3,"formArrayName","title"],[3,"entity"],[1,"form-grid"],["for","name",3,"label"],["type","text","formControlName","name",3,"id","readonly"],["for","code",3,"label"],["type","text","formControlName","code",3,"id","readonly"],["formGroupName","customFields",4,"ngIf"],["id","edit-options-list",3,"items","itemsPerPage","currentPage","totalItems","pageChange",4,"ngIf"],["formGroupName","customFields"],["entityName","ProductOptionGroup",3,"customFields","customFieldsFormGroup","readonly"],["id","edit-options-list",3,"items","itemsPerPage","currentPage","totalItems","pageChange"],["id","id",3,"heading","hiddenByDefault"],["id","created-at",3,"heading","hiddenByDefault"],["id","updated-at",3,"heading","hiddenByDefault"],["id","name",3,"heading","optional"],["id","code",3,"heading","optional"],["id","custom-fields",3,"heading","hiddenByDefault"],["type","text",3,"formControl","readonly"],["type","text",3,"formControl"],["entityName","ProductOption",3,"customFields","compact","customFieldsFormGroup","readonly"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-header"),t._UZ(1,"vdr-page-title"),t.TgZ(2,"vdr-page-header-description"),t._uU(3),t.ALo(4,"translate"),t.qZA()(),t.TgZ(5,"vdr-page-body")(6,"vdr-page-block")(7,"vdr-action-bar")(8,"vdr-ab-left")(9,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(10,"async"),t.ALo(11,"async"),t.qZA()(),t.TgZ(12,"vdr-ab-right")(13,"div",1)(14,"div",2)(15,"clr-checkbox-wrapper")(16,"input",3),t.NdJ("ngModelChange",function(i){return e.autoUpdateVariantNames=i}),t.qZA(),t.TgZ(17,"label"),t._uU(18),t.ALo(19,"translate"),t.qZA()()(),t.YNc(20,Bn,3,4,"button",4),t.qZA()()()(),t.TgZ(21,"vdr-page-block"),t.YNc(22,oo,3,2,"form",5),t.ALo(23,"async"),t.qZA()()),2&n&&(t.xp6(3),t.Oqu(t.lcZ(4,7,"catalog.page-description-options-editor")),t.xp6(6),t.Q6J("availableLanguageCodes",t.lcZ(10,9,e.availableLanguages$))("currentLanguageCode",t.lcZ(11,11,e.languageCode$)),t.xp6(7),t.Q6J("ngModel",e.autoUpdateVariantNames),t.xp6(2),t.Oqu(t.lcZ(19,13,"catalog.auto-update-product-variant-name")),t.xp6(2),t.Q6J("vdrIfPermissions",e.updatePermission),t.xp6(2),t.Q6J("ngIf",t.lcZ(23,15,e.optionGroups$)))},dependencies:[h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.Fj,d.Wl,d.JJ,d.JL,d.On,d.oH,d.sg,d.u,d.x0,d.CE,A.Kk,A.BN,A.mz,q.h,y.y,G.S,$.H,ut.y,mt.e,z.U,qn.q,$n.T,Yn._,Gn.H,E.z,At.D,nt.A,g.Ov,x.X$,B.j,ot.H],styles:[".option-group-header[_ngcontent-%COMP%]{display:flex;align-items:baseline}"],changeDetection:0});var Pt,N=m(27355),_t=m(47807),F=m(62701),j=m(26940),X=m(44351),K=m(84073);function ao(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.create-product-option-group"),"\n")}function io(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",7),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",8),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.confirm())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",e.form.invalid),t.xp6(1),t.hij(" ",t.lcZ(5,5,"common.confirm")," ")}}class _e{constructor(n){this.formBuilder=n,this.form=this.formBuilder.group({name:["",d.kI.required],code:["",d.kI.required]})}updateCode(){const n=this.form.get("name"),e=this.form.get("code");n&&e&&e.pristine&&e.setValue((0,R.U)(`${n.value}`,"-"))}confirm(){const{name:n,code:e}=this.form.value;!n||!e||this.resolveWith({code:e,options:[],translations:[{languageCode:this.languageCode,name:n}]})}cancel(){this.resolveWith()}}(Pt=_e).\u0275fac=function(n){return new(n||Pt)(t.Y36(d.qu))},Pt.\u0275cmp=t.Xpm({type:Pt,selectors:[["vdr-create-product-option-group-dialog"]],decls:9,vars:7,consts:[["vdrDialogTitle",""],[1,"form-grid",3,"formGroup"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"input"],["for","code",3,"label"],["id","code","type","text","formControlName","code"],["vdrDialogButtons",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,ao,2,3,"ng-template",0),t.TgZ(1,"div",1)(2,"vdr-form-field",2),t.ALo(3,"translate"),t.TgZ(4,"input",3),t.NdJ("input",function(){return e.updateCode()}),t.qZA()(),t.TgZ(5,"vdr-form-field",4),t.ALo(6,"translate"),t._UZ(7,"input",5),t.qZA()(),t.YNc(8,io,6,7,"ng-template",6)),2&n&&(t.xp6(1),t.Q6J("formGroup",e.form),t.xp6(1),t.Q6J("label",t.lcZ(3,3,"common.name")),t.xp6(3),t.Q6J("label",t.lcZ(6,5,"common.code")))},dependencies:[d.Fj,d.JJ,d.JL,d.sg,d.u,q.h,y.y,X.n,K.q,x.X$],changeDetection:0});var Ot,ge=m(14992),fe=m(2089);function ro(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.create-product-variant"),"\n")}function co(o,n){if(1&o&&(t.TgZ(0,"vdr-form-field",7),t._UZ(1,"ng-select",12),t.qZA()),2&o){const e=n.$implicit;t.Q6J("label",e.name),t.xp6(1),t.Q6J("items",e.options)("formControlName",e.code)}}function lo(o,n){1&o&&(t.TgZ(0,"clr-alert",13)(1,"clr-alert-item")(2,"span",14),t._uU(3),t.ALo(4,"translate"),t.qZA()()()),2&o&&(t.Q6J("clrAlertClosable",!1),t.xp6(3),t.hij(" ",t.lcZ(4,2,"catalog.cannot-create-variants-without-options")," "))}function so(o,n){if(1&o&&(t.TgZ(0,"div",15)(1,"clr-alert",16)(2,"clr-alert-item")(3,"span",14),t._uU(4),t.ALo(5,"translate"),t.qZA()()()()),2&o){const e=t.oxw();t.xp6(1),t.Q6J("clrAlertClosable",!1),t.xp6(3),t.lnq(" ",t.lcZ(5,4,"catalog.product-variant-exists"),": ",e.existingVariant.name," (",e.existingVariant.sku,") ")}}function po(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",17),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",18),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.confirm())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",e.form.invalid||e.existingVariant||0===e.product.optionGroups.length),t.xp6(1),t.hij(" ",t.lcZ(5,5,"common.confirm")," ")}}class he{constructor(n){this.formBuilder=n,this.form=this.formBuilder.group({name:["",d.kI.required],sku:["",d.kI.required],price:["",d.kI.required],options:this.formBuilder.record({})})}ngOnInit(){this.currencyCode=this.product.variants[0]?.currencyCode;for(const e of this.product.optionGroups)this.form.get("options").addControl(e.code,new d.NI("",d.kI.required));this.form.get("options").valueChanges.subscribe(e=>{const a=this.form.get("name");if(!Object.values(e).every(s=>null==s)&&e&&a&&!a.dirty){const s=Object.entries(e).map(([p,_])=>this.product.optionGroups.find(f=>f.code===p)?.options.find(f=>f.id===_)?.name).join(" ");a.setValue(`${this.product.name} ${s}`)}Object.values(e).every(s=>null!=s)&&(this.existingVariant=this.product.variants.find(s=>Object.entries(e).every(([p,_])=>s.options.find(f=>f.groupId===this.getGroupIdFromCode(p))?.id===_)))})}confirm(){const{name:n,sku:e,options:a,price:i}=this.form.value;if(!(n&&e&&a&&i))return;const c=Object.values(a).filter(st.notNullOrUndefined);this.resolveWith({productId:this.product.id,sku:e,price:Number(i),optionIds:c,translations:[{languageCode:this.product.languageCode,name:n}]})}cancel(){this.resolveWith()}getGroupCodeFromId(n){return this.product.optionGroups.find(e=>e.id===n)?.code??""}getGroupIdFromCode(n){return this.product.optionGroups.find(e=>e.code===n)?.id??""}}(Ot=he).\u0275fac=function(n){return new(n||Ot)(t.Y36(d.qu))},Ot.\u0275cmp=t.Xpm({type:Ot,selectors:[["vdr-create-product-variant-dialog"]],decls:17,vars:14,consts:[["vdrDialogTitle",""],[3,"formGroup"],["formGroupName","options",1,"form-grid"],[3,"label",4,"ngFor","ngForOf"],["clrAlertType","warning","class","form-grid-span",3,"clrAlertClosable",4,"ngIf"],["class","mt-2",4,"ngIf"],[1,"form-grid","mt-2"],[3,"label"],["type","text","formControlName","name"],["type","text","formControlName","sku"],["name","price","formControlName","price",3,"currencyCode"],["vdrDialogButtons",""],["bindLabel","name","bindValue","id","appendTo","body",3,"items","formControlName"],["clrAlertType","warning",1,"form-grid-span",3,"clrAlertClosable"],[1,"alert-text"],[1,"mt-2"],["clrAlertType","warning",1,"",3,"clrAlertClosable"],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,ro,2,3,"ng-template",0),t.TgZ(1,"form",1)(2,"div",2),t.YNc(3,co,2,3,"vdr-form-field",3),t.YNc(4,lo,5,4,"clr-alert",4),t.qZA(),t.YNc(5,so,6,6,"div",5),t.TgZ(6,"div",6)(7,"vdr-form-field",7),t.ALo(8,"translate"),t._UZ(9,"input",8),t.qZA(),t.TgZ(10,"vdr-form-field",7),t.ALo(11,"translate"),t._UZ(12,"input",9),t.qZA(),t.TgZ(13,"vdr-form-field",7),t.ALo(14,"translate"),t._UZ(15,"vdr-currency-input",10),t.qZA()()(),t.YNc(16,po,6,7,"ng-template",11)),2&n&&(t.xp6(1),t.Q6J("formGroup",e.form),t.xp6(2),t.Q6J("ngForOf",e.product.optionGroups),t.xp6(1),t.Q6J("ngIf",0===e.product.optionGroups.length),t.xp6(1),t.Q6J("ngIf",e.existingVariant),t.xp6(2),t.Q6J("label",t.lcZ(8,8,"common.name")),t.xp6(3),t.Q6J("label",t.lcZ(11,10,"catalog.sku")),t.xp6(3),t.Q6J("label",t.lcZ(14,12,"catalog.price")),t.xp6(2),t.Q6J("currencyCode",e.currencyCode))},dependencies:[h.TIm,h.CyW,h.I9z,g.sg,g.O5,d._Y,d.Fj,d.JJ,d.JL,d.sg,d.u,d.x0,ge.w9,fe.K,q.h,y.y,X.n,K.q,x.X$],changeDetection:0});var It,H=m(57017),at=m(68269);const uo=["textArea"],mo=["editNameInput"];function _o(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-chip",6),t.NdJ("iconClick",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.removeOption(c))}),t.TgZ(1,"span",7)(2,"input",8,9),t.NdJ("blur",function(i){const s=t.CHM(e).index,p=t.oxw(2);return t.KtG(p.updateOption(s,i))})("click",function(i){return i.cancelBubble=!0}),t.qZA()(),t.TgZ(4,"span",10),t.NdJ("click",function(i){const s=t.CHM(e).index,p=t.oxw(2);return t.KtG(p.editName(s,i))}),t._uU(5),t.qZA()()}if(2&o){const e=n.$implicit,a=n.last,i=n.index,c=t.oxw(2);t.ekj("selected",a&&c.lastSelected)("locked",e.locked),t.Q6J("icon",e.locked?"lock":"times")("colorFrom",c.groupName),t.xp6(1),t.Q6J("hidden",c.editingIndex!==i),t.xp6(1),t.Q6J("ngModel",e.name),t.xp6(2),t.ekj("editable",!e.locked&&!e.id),t.Q6J("hidden",c.editingIndex===i),t.xp6(1),t.Oqu(e.name)}}function go(o,n){if(1&o&&(t.TgZ(0,"div",4),t.YNc(1,_o,6,12,"vdr-chip",5),t.qZA()),2&o){const e=t.oxw();t.xp6(1),t.Q6J("ngForOf",e.optionValues)}}const rn={provide:d.JU,useExisting:(0,t.Gpc)(()=>gt),multi:!0};class gt{get optionValues(){return this.formValue??this.options??[]}constructor(n){this.changeDetector=n,this.groupName="",this.add=new t.vpe,this.remove=new t.vpe,this.edit=new t.vpe,this.disabled=!1,this.input="",this.isFocussed=!1,this.lastSelected=!1,this.editingIndex=-1}registerOnChange(n){this.onChangeFn=n}registerOnTouched(n){this.onTouchFn=n}setDisabledState(n){this.disabled=n,this.changeDetector.markForCheck()}writeValue(n){this.formValue=n||[]}focus(){this.textArea.nativeElement.focus()}editName(n,e){const a=this.optionValues[n];if(!a.locked&&!a.id){e.cancelBubble=!0,this.editingIndex=n;const i=this.nameInputs.get(n)?.nativeElement;setTimeout(()=>i?.focus())}}updateOption(n,e){const a=this.optionValues[n],i=e.target.value;a&&(i&&(a.name=i,this.edit.emit({index:n,option:a})),this.editingIndex=-1)}removeOption(n){n.locked||(this.formValue?(this.formValue=this.formValue?.filter(e=>e.name!==n.name),this.onChangeFn(this.formValue)):this.remove.emit(n))}handleKey(n){switch(n.key){case",":case"Enter":this.addOptionValue(),n.preventDefault();break;case"Backspace":this.lastSelected?(this.removeLastOption(),this.lastSelected=!1):""===this.input&&(this.lastSelected=!0);break;default:this.lastSelected=!1}}handleBlur(){this.isFocussed=!1,this.addOptionValue()}addOptionValue(){const n=this.parseInputIntoOptions(this.input).filter(e=>!(this.options??this.formValue)?.find(i=>i?.name===e.name));if(!this.formValue&&this.options)for(const e of n)this.add.emit(e);else this.formValue=(0,N.T)([...this.formValue,...n]),this.onChangeFn(this.formValue);this.input=""}parseInputIntoOptions(n){return n.split(/[,\n]/).map(e=>e.trim()).filter(e=>""!==e).map(e=>({name:e,locked:!1}))}removeLastOption(){if(this.optionValues.length){const n=this.optionValues[this.optionValues.length-1];this.removeOption(n)}}}(It=gt).\u0275fac=function(n){return new(n||It)(t.Y36(t.sBO))},It.\u0275cmp=t.Xpm({type:It,selectors:[["vdr-option-value-input"]],viewQuery:function(n,e){if(1&n&&(t.Gf(uo,7),t.Gf(mo,5,t.SBq)),2&n){let a;t.iGM(a=t.CRH())&&(e.textArea=a.first),t.iGM(a=t.CRH())&&(e.nameInputs=a)}},inputs:{groupName:"groupName",options:"options",disabled:"disabled"},outputs:{add:"add",remove:"remove",edit:"edit"},features:[t._Bn([rn])],decls:4,vars:5,consts:[[1,"input-wrapper",3,"click"],["class","chips",4,"ngIf"],[3,"ngModel","disabled","keyup","focus","blur","ngModelChange"],["textArea",""],[1,"chips"],[3,"icon","selected","locked","colorFrom","iconClick",4,"ngFor","ngForOf"],[3,"icon","colorFrom","iconClick"],[3,"hidden"],["type","text",3,"ngModel","blur","click"],["editNameInput",""],[1,"option-name",3,"hidden","click"]],template:function(n,e){if(1&n){const a=t.EpF();t.TgZ(0,"div",0),t.NdJ("click",function(){t.CHM(a);const c=t.MAs(3);return t.KtG(c.focus())}),t.YNc(1,go,2,1,"div",1),t.TgZ(2,"textarea",2,3),t.NdJ("keyup",function(c){return e.handleKey(c)})("focus",function(){return e.isFocussed=!0})("blur",function(){return e.handleBlur()})("ngModelChange",function(c){return e.input=c}),t.qZA()()}2&n&&(t.ekj("focus",e.isFocussed),t.xp6(1),t.Q6J("ngIf",0<e.optionValues.length),t.xp6(1),t.Q6J("ngModel",e.input)("disabled",e.disabled))},dependencies:[g.sg,g.O5,d.Fj,d.JJ,d.On,H.Y,y.y],styles:[".input-wrapper[_ngcontent-%COMP%]{background-color:var(--color-form-input-bg);border-radius:3px!important;border:1px solid var(--color-grey-300)!important;cursor:text}.input-wrapper.focus[_ngcontent-%COMP%]{border-color:var(--color-primary-500)!important;box-shadow:0 0 1px 1px var(--color-primary-100)}.input-wrapper[_ngcontent-%COMP%] .chips[_ngcontent-%COMP%]{padding:5px}.input-wrapper[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{border:none;width:100%;height:24px;margin-top:3px;padding:0 6px}.input-wrapper[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]:focus{outline:none;box-shadow:none}.input-wrapper[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]:disabled{background-color:var(--color-component-bg-100)}vdr-chip[_ngcontent-%COMP%] .wrapper{margin:0 3px}vdr-chip.locked[_ngcontent-%COMP%]{opacity:.8}vdr-chip.selected[_ngcontent-%COMP%] .wrapper{border-color:var(--color-warning-500)!important;box-shadow:0 0 1px 1px var(--color-warning-400);opacity:.6}vdr-chip[_ngcontent-%COMP%] .option-name.editable[_ngcontent-%COMP%]:hover{outline:1px solid var(--color-component-bg-300);outline-offset:1px;border-radius:1px}vdr-chip[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{padding:0!important;margin-top:-2px;margin-bottom:-2px}"]});var Ft,ft,ve=m(4531);function fo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",17)(1,"vdr-form-field",18),t.ALo(2,"translate"),t.TgZ(3,"input",19),t.NdJ("ngModelChange",function(i){const s=t.CHM(e).$implicit;return t.KtG(s.name=i)}),t.qZA()(),t.TgZ(4,"vdr-form-field",20),t.ALo(5,"translate"),t.TgZ(6,"vdr-option-value-input",21,22),t.NdJ("add",function(i){const s=t.CHM(e).index,p=t.oxw();return t.KtG(p.addOption(s,i.name))})("remove",function(i){const s=t.CHM(e).index,p=t.oxw();return t.KtG(p.removeOption(s,i))}),t.qZA()(),t.TgZ(8,"div")(9,"button",23),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.removeOptionGroup(c))}),t._UZ(10,"clr-icon",24),t.qZA()()()}if(2&o){const e=n.$implicit;t.xp6(1),t.Q6J("label",t.lcZ(2,7,"catalog.option")),t.xp6(2),t.Q6J("ngModel",e.name)("readonly",!e.isNew),t.xp6(1),t.Q6J("label",t.lcZ(5,9,"catalog.option-values")),t.xp6(2),t.Q6J("options",e.values)("groupName",e.name)("disabled",""===e.name)}}function ho(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function vo(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function Co(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}function To(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.name," ")}}function bo(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.sku," ")}}function xo(o,n){if(1&o&&(t.TgZ(0,"vdr-chip",28),t._uU(1),t.qZA()),2&o){const e=n.ngIf,a=t.oxw(2).$implicit;t.Q6J("colorFrom",a.code),t.xp6(1),t.Oqu(e.name)}}function Ao(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",29)(1,"ng-select",30),t.NdJ("change",function(i){t.CHM(e);const c=t.oxw().item,s=t.oxw().$implicit,p=t.oxw();return t.KtG(p.setOptionToAddToVariant(c.id,s.id,null==i?null:i.id))}),t.qZA(),t.TgZ(2,"button",31),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().item,c=t.oxw(2);return t.KtG(c.addOptionToVariant(i))}),t._UZ(3,"clr-icon",32),t.qZA()()}if(2&o){const e=t.oxw().item,a=t.oxw().$implicit,i=t.oxw();t.xp6(1),t.Q6J("items",a.options),t.xp6(1),t.ekj("primary",!(null==i.optionsToAddToVariant[e.id]||!i.optionsToAddToVariant[e.id][a.id])),t.Q6J("disabled",!(null!=i.optionsToAddToVariant[e.id]&&i.optionsToAddToVariant[e.id][a.id]))}}function Zo(o,n){if(1&o&&(t.YNc(0,xo,2,2,"vdr-chip",26),t.YNc(1,Ao,4,4,"ng-template",null,27,t.W1O)),2&o){const e=n.item,a=t.MAs(2),i=t.oxw().$implicit,c=t.oxw();t.Q6J("ngIf",c.getOption(e,i.id))("ngIfElse",a)}}function Po(o,n){if(1&o&&(t.TgZ(0,"vdr-dt2-column",25),t.YNc(1,Zo,3,2,"ng-template"),t.qZA()),2&o){const e=n.$implicit;t.Q6J("heading",e.name)("id",e.code)}}function Oo(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.price,e.currencyCode)," ")}}function Io(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.priceWithTax,e.currencyCode)," ")}}function Fo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",33),t.NdJ("click",function(){const c=t.CHM(e).item,s=t.oxw();return t.KtG(s.deleteVariant(c))}),t._UZ(1,"clr-icon",34),t.qZA()}}class Do{constructor(n){for(const e of Object.keys(n))this[e]=n[e]}}class Ce{constructor(n,e,a,i,c,s){this.route=n,this.dataService=e,this.productDetailService=a,this.notificationService=i,this.modalService=c,this.changeDetector=s,this.formValueChanged=!1,this.optionsChanged=!1,this.itemsPerPage=100,this.currentPage=1,this.searchTermControl=new d.NI(""),this.selectionManager=new l.ZE0({multiSelect:!0,itemsAreEqual:(p,_)=>p.id===_.id,additiveMode:!0}),this.optionsToAddToVariant={},this.refresh$=new _t.x}ngOnInit(){this.languageCode=this.route.snapshot.paramMap.get("lang")||(0,l.kAh)(),this.dataService.settings.getActiveChannel().single$.subscribe(e=>{this.currencyCode=e.activeChannel.defaultCurrencyCode});const n=this.refresh$.pipe((0,b.w)(()=>this.dataService.product.getProductVariantsOptions(this.route.parent?.snapshot.paramMap.get("id")).mapSingle(e=>e.product)),(0,j.O)(this.route.snapshot.data.product));this.variants$=n.pipe((0,b.w)(e=>this.searchTermControl.valueChanges.pipe((0,j.O)(""),(0,v.U)(a=>a?e.variants.filter(i=>i.name.toLowerCase().includes(a.toLowerCase())):e.variants)))),this.optionGroups$=n.pipe((0,v.U)(e=>e.optionGroups)),this.totalItems$=this.variants$.pipe((0,v.U)(e=>e.length)),n.subscribe(e=>{this.product=e;const a=e.variants.map(c=>c.options.map(s=>s.id)).flat(),i=e.variants.map(c=>c.options.map(s=>s.groupId)).flat();this.optionGroups=e.optionGroups.map(c=>({id:c.id,isNew:!1,name:c.name,locked:i.includes(c.id),values:c.options.map(s=>({id:s.id,name:s.name,locked:a.includes(s.id)}))}))})}setItemsPerPage(n){this.itemsPerPage=n,this.currentPage=1}setPageNumber(n){this.currentPage=n}onFormChanged(n){this.formValueChanged=!0,n.enabled=!0}canDeactivate(){return!this.formValueChanged}addOptionGroup(){this.modalService.fromComponent(_e,{locals:{languageCode:this.languageCode}}).pipe((0,b.w)(n=>n?this.dataService.product.createProductOptionGroups(n).pipe((0,b.w)(({createProductOptionGroup:e})=>this.dataService.product.addOptionGroupToProduct({optionGroupId:e.id,productId:this.product.id}))):F.E)).subscribe(n=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"ProductOptionGroup"}),this.refresh$.next(),this.changeDetector.markForCheck()})}removeOptionGroup(n){const e=n.id,a=this.product.variants.filter(i=>i.options.map(c=>c.groupId).includes(e)).length;this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-product-option-group"),body:a?(0,u.J)("catalog.confirm-delete-product-option-group-body"):"",translationVars:{name:n.name,count:a},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(i=>i?this.dataService.product.removeOptionGroupFromProduct({optionGroupId:e,productId:this.product.id,force:!0}):F.E)).subscribe(({removeOptionGroupFromProduct:i})=>{"Product"===i.__typename?(this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"ProductOptionGroup"}),this.refresh$.next()):"ProductOptionInUseError"===i.__typename&&this.notificationService.error(i.message??"")})}addOption(n,e){const a=this.optionGroups[n];a&&a.id&&this.dataService.product.addOptionToGroup({productOptionGroupId:a.id,code:(0,R.U)(e,"-"),translations:[{name:e,languageCode:this.languageCode}]}).subscribe(({createProductOption:i})=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"ProductOption"}),this.refresh$.next()})}removeOption(n,{id:e,name:a}){const i=this.optionGroups[n];i&&this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-product-option"),translationVars:{name:a},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(c=>c?this.dataService.product.deleteProductOption(e):F.E)).subscribe(({deleteProductOption:c})=>{c.result===l.PcR.DELETED?(this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"ProductOption"}),i.values=i.values.filter(s=>s.id!==e),this.refresh$.next()):this.notificationService.error(c.message??"")})}setOptionToAddToVariant(n,e,a){this.optionsToAddToVariant[n]||(this.optionsToAddToVariant[n]={}),a?this.optionsToAddToVariant[n][e]=a:delete this.optionsToAddToVariant[n][e]}addOptionToVariant(n){const e=[...n.options.map(a=>a.id),...Object.values(this.optionsToAddToVariant[n.id])];this.dataService.product.updateProductVariants([{id:n.id,optionIds:(0,N.T)(e)}]).subscribe(({updateProductVariants:a})=>{this.refresh$.next()})}deleteVariant(n){this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-product-variant"),translationVars:{name:n.name},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(e=>e?this.productDetailService.deleteProductVariant(n.id,this.product.id):F.E)).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"ProductVariant"}),this.refresh$.next()},e=>{this.notificationService.error((0,u.J)("common.notify-delete-error"),{entity:"ProductVariant"})})}createNewVariant(){this.modalService.fromComponent(he,{locals:{product:this.product}}).pipe((0,b.w)(n=>n?this.dataService.product.createProductVariants([n]):F.E)).subscribe(n=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"ProductVariant"}),this.refresh$.next()})}getOption(n,e){return n.options.find(a=>a.groupId===e)}}(Ft=Ce).\u0275fac=function(n){return new(n||Ft)(t.Y36(P.gz),t.Y36(l.DoR),t.Y36(pt),t.Y36(l.gqp),t.Y36(l.Z7U),t.Y36(t.sBO))},Ft.\u0275cmp=t.Xpm({type:Ft,selectors:[["vdr-product-variants-editor"]],decls:44,vars:55,consts:[["class","option-groups",4,"ngFor","ngForOf"],[1,"button","mt-1",3,"click"],["shape","plus"],[3,"paddingX"],[1,"mx-3"],[1,"button",3,"click"],["id","manage-product-variant-list",3,"items","itemsPerPage","totalItems","currentPage","pageChange","itemsPerPageChange"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault"],["id","created-at",3,"heading","hiddenByDefault"],["id","updated-at",3,"heading","hiddenByDefault"],["id","name",3,"heading","optional"],["id","sku",3,"heading","optional"],[3,"heading","id",4,"ngFor","ngForOf"],["id","price",3,"heading","hiddenByDefault"],["id","price-with-tax",3,"heading","hiddenByDefault"],["id","delete",3,"heading","optional"],[1,"option-groups"],[3,"label"],["clrInput","","name","name",3,"ngModel","readonly","ngModelChange"],[1,"flex-spacer",3,"label"],[3,"options","groupName","disabled","add","remove"],["optionValueInputComponent",""],[1,"button-small","mt-4",3,"click"],["shape","trash"],[3,"heading","id"],[3,"colorFrom",4,"ngIf","ngIfElse"],["selectOption",""],[3,"colorFrom"],[1,"flex","center"],["bindLabel","name","bindValue","id","appendTo","body",3,"items","change"],[1,"button-small","ml-1",3,"disabled","click"],["shape","floppy"],[1,"button-small",3,"click"],["shape","trash is-danger"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-card"),t.YNc(2,fo,11,11,"div",0),t.TgZ(3,"button",1),t.NdJ("click",function(){return e.addOptionGroup()}),t._UZ(4,"clr-icon",2),t._uU(5),t.ALo(6,"translate"),t.qZA()(),t.TgZ(7,"vdr-card",3)(8,"div",4)(9,"button",5),t.NdJ("click",function(){return e.createNewVariant()}),t._UZ(10,"clr-icon",2),t._uU(11),t.ALo(12,"translate"),t.qZA()(),t.TgZ(13,"vdr-data-table-2",6),t.NdJ("pageChange",function(i){return e.setPageNumber(i)})("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(14,"async"),t.ALo(15,"async"),t._UZ(16,"vdr-dt2-search",7),t.ALo(17,"translate"),t.TgZ(18,"vdr-dt2-column",8),t.ALo(19,"translate"),t.YNc(20,ho,1,1,"ng-template"),t.qZA(),t.TgZ(21,"vdr-dt2-column",9),t.ALo(22,"translate"),t.YNc(23,vo,2,4,"ng-template"),t.qZA(),t.TgZ(24,"vdr-dt2-column",10),t.ALo(25,"translate"),t.YNc(26,Co,2,4,"ng-template"),t.qZA(),t.TgZ(27,"vdr-dt2-column",11),t.ALo(28,"translate"),t.YNc(29,To,1,1,"ng-template"),t.qZA(),t.TgZ(30,"vdr-dt2-column",12),t.ALo(31,"translate"),t.YNc(32,bo,1,1,"ng-template"),t.qZA(),t.YNc(33,Po,2,2,"vdr-dt2-column",13),t.ALo(34,"async"),t.TgZ(35,"vdr-dt2-column",14),t.ALo(36,"translate"),t.YNc(37,Oo,2,4,"ng-template"),t.qZA(),t.TgZ(38,"vdr-dt2-column",15),t.ALo(39,"translate"),t.YNc(40,Io,2,4,"ng-template"),t.qZA(),t.TgZ(41,"vdr-dt2-column",16),t.ALo(42,"translate"),t.YNc(43,Fo,2,0,"ng-template"),t.qZA()()()()),2&n&&(t.xp6(2),t.Q6J("ngForOf",e.optionGroups),t.xp6(3),t.hij(" ",t.lcZ(6,27,"catalog.create-product-option-group")," "),t.xp6(2),t.Q6J("paddingX",!1),t.xp6(4),t.hij(" ",t.lcZ(12,29,"catalog.create-product-variant")," "),t.xp6(2),t.Q6J("items",t.lcZ(14,31,e.variants$))("itemsPerPage",e.itemsPerPage)("totalItems",t.lcZ(15,33,e.totalItems$))("currentPage",e.currentPage),t.xp6(3),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(17,35,"catalog.filter-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(19,37,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(22,39,"common.created-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(25,41,"common.updated-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(28,43,"catalog.name"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(31,45,"catalog.sku"))("optional",!1),t.xp6(3),t.Q6J("ngForOf",t.lcZ(34,47,e.optionGroups$)),t.xp6(2),t.Q6J("heading",t.lcZ(36,49,"common.price"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(39,51,"common.price-with-tax"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(42,53,"common.delete"))("optional",!1))},dependencies:[h.qvL,h.xRP,g.sg,g.O5,d.Fj,d.JJ,d.On,ge.w9,H.Y,q.h,y.y,mt.e,z.U,at.J,E.z,nt.A,gt,g.Ov,x.X$,ot.H,ve.k],styles:[".option-groups[_ngcontent-%COMP%]{display:flex;width:100%;gap:var(--space-unit)}.values[_ngcontent-%COMP%]{flex:1;margin:0 6px}.variants-preview[_ngcontent-%COMP%] tr.disabled[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{background-color:var(--color-component-bg-100);color:var(--color-grey-400)}"]});class Ye extends l.p_9{constructor(n,e){super(n,{__typename:"Product",id:"",createdAt:"",updatedAt:"",name:"",languageCode:"",optionGroups:[],variants:[]},a=>e.product.getProductVariantsOptions(a).mapStream(i=>i.product))}}(ft=Ye).\u0275fac=function(n){return new(n||ft)(t.LFG(P.F0),t.LFG(l.DoR))},ft.\u0275prov=t.Yz7({token:ft,factory:ft.\u0275fac,providedIn:"root"});const cn=o=>[{path:"products",component:l.IIO,data:{locationId:"product-list",breadcrumb:(0,u.J)("breadcrumb.products")},children:o.getPageTabRoutes("product-list")},{path:"inventory",redirectTo:"products"},{path:"products/:id",component:l.IIO,data:{locationId:"product-detail",breadcrumb:{label:(0,u.J)("breadcrumb.products"),link:["../","products"]}},children:[{path:"manage-variants",component:Ce,canDeactivate:[l.TSp],data:{breadcrumb:({product:n})=>[{label:`${n.name}`,link:["../"]},{label:(0,u.J)("breadcrumb.manage-variants"),link:["manage-variants"]}]},resolve:{product:n=>(0,t.f3M)(l.DoR).product.getProductVariantsOptions(n.parent?.params.id).mapSingle(e=>e.product)}},...o.getPageTabRoutes("product-detail")]},{path:"products/:productId/variants/:id",component:l.IIO,data:{locationId:"product-variant-detail",breadcrumb:{label:(0,u.J)("breadcrumb.products"),link:["../","products"]}},children:o.getPageTabRoutes("product-variant-detail")},{path:"products/:id/options",component:me,resolve:(0,l.Po4)(Ye),canDeactivate:[l.TSp],data:{breadcrumb:ln}},{path:"facets",component:l.IIO,data:{locationId:"facet-list",breadcrumb:(0,u.J)("breadcrumb.facets")},children:o.getPageTabRoutes("facet-list")},{path:"facets/:id",component:l.IIO,data:{locationId:"facet-detail",breadcrumb:{label:(0,u.J)("breadcrumb.facets"),link:["../","facets"]}},children:o.getPageTabRoutes("facet-detail")},{path:"collections",component:l.IIO,data:{locationId:"collection-list",breadcrumb:(0,u.J)("breadcrumb.collections")},children:o.getPageTabRoutes("collection-list")},{path:"collections/:id",component:l.IIO,data:{locationId:"collection-detail",breadcrumb:{label:(0,u.J)("breadcrumb.collections"),link:["../","collections"]}},children:o.getPageTabRoutes("collection-detail")},{path:"assets",component:l.IIO,data:{locationId:"asset-list",breadcrumb:(0,u.J)("breadcrumb.assets")},children:o.getPageTabRoutes("asset-list")},{path:"assets/:id",component:l.IIO,data:{locationId:"asset-detail",breadcrumb:{label:(0,u.J)("breadcrumb.assets"),link:["../","assets"]}},children:o.getPageTabRoutes("asset-detail")}];function ln(o,n){return o.entity.pipe((0,v.U)(e=>[{label:(0,u.J)("breadcrumb.products"),link:["../","products"]},{label:`${e.name}`,link:["../","products",n.id]},{label:(0,u.J)("breadcrumb.product-options"),link:["options"]}]))}var Dt,sn=m(79981);function yo(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.add-facets"))}function Lo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",3),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",4),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.selectValues())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",0===e.selectedValues.length),t.xp6(1),t.hij(" ",t.lcZ(5,5,"catalog.add-facets")," ")}}class yt{constructor(n){this.changeDetector=n,this.selectedValues=[]}ngAfterViewInit(){setTimeout(()=>this.selector.focus(),0)}selectValues(){this.resolveWith(this.selectedValues)}cancel(){this.resolveWith()}}(Dt=yt).\u0275fac=function(n){return new(n||Dt)(t.Y36(t.sBO))},Dt.\u0275cmp=t.Xpm({type:Dt,selectors:[["vdr-apply-facet-dialog"]],viewQuery:function(n,e){if(1&n&&t.Gf(l.$MF,5),2&n){let a;t.iGM(a=t.CRH())&&(e.selector=a.first)}},decls:3,vars:0,consts:[["vdrDialogTitle",""],[3,"selectedValuesChange"],["vdrDialogButtons",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,yo,2,3,"ng-template",0),t.TgZ(1,"vdr-facet-value-selector",1),t.NdJ("selectedValuesChange",function(i){return e.selectedValues=i}),t.qZA(),t.YNc(2,Lo,6,7,"ng-template",2))},dependencies:[sn.$,X.n,K.q,x.X$],changeDetection:0});var Lt,D=m(2840),ko=m(75734),tt=m(67491);function No(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",3),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}const Jo=function(){return["UpdateCatalog","UpdateAsset"]},Uo=D.Ps`
2
2
  query AssetDetailQuery($id: ID!) {
3
3
  asset(id: $id) {
4
4
  ...Asset
@@ -9,7 +9,7 @@
9
9
  }
10
10
  ${l.fed}
11
11
  ${l.i4$}
12
- `;class Ce extends l.VE7{constructor(n,e,a){super(),this.notificationService=n,this.dataService=e,this.formBuilder=a,this.customFields=this.getCustomFieldConfig("Asset"),this.detailForm=new d.cw({name:new d.NI(""),tags:new d.NI([]),customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))})}ngOnInit(){this.init()}ngOnDestroy(){this.destroy()}onAssetChange(n){this.detailForm.get("name")?.setValue(n.name),this.detailForm.get("tags")?.setValue(n.tags),this.detailForm.markAsDirty()}save(){this.dataService.product.updateAsset({id:this.id,name:this.detailForm.value.name,tags:this.detailForm.value.tags,customFields:this.detailForm.value.customFields}).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"Asset"})},n=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"Asset"})})}setFormValues(n,e){this.detailForm.get("name")?.setValue(n.name),this.detailForm.get("tags")?.setValue(n.tags.map(a=>a.id)),this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get(["customFields"]),n)}}(Lt=Ce).\u0275fac=function(n){return new(n||Lt)(t.Y36(l.gqp),t.Y36(l.DoR),t.Y36(d.QS))},Lt.\u0275cmp=t.Xpm({type:Lt,selectors:[["vdr-asset-detail"]],features:[t.qOj],decls:9,vars:8,consts:[["locationId","asset-detail"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],[3,"asset","editable","customFields","customFieldsForm","assetChange"],[1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar"),t._UZ(2,"vdr-ab-left"),t.TgZ(3,"vdr-ab-right"),t._UZ(4,"vdr-action-bar-items",0),t.YNc(5,No,3,4,"button",1),t.qZA()()(),t.TgZ(6,"vdr-page-block")(7,"vdr-asset-preview",2),t.NdJ("assetChange",function(i){return e.onAssetChange(i)}),t.ALo(8,"async"),t.qZA()()),2&n&&(t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(7,ko)),t.xp6(2),t.Q6J("asset",t.lcZ(8,5,e.entity$))("editable",!0)("customFields",e.customFields)("customFieldsForm",e.detailForm.get("customFields")))},dependencies:[A.Kk,A.BN,A.mz,Lo.A,$.H,tt.W,E.z,g.Ov,x.X$],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%}"],changeDetection:0});var kt,V=m(64790),it=m(40590),Nt=m(68163),dn=m(29129),Uo=m(16457),Ge=m(5970),Be=m(82026),Mo=m(56626),Ro=m(85423),Te=m(72977);const Eo=function(){return{}},Vo=function(){return["DeleteCatalog","DeleteAsset"]};class be extends l.t7C{constructor(n,e,a,i,c){super(i,c),this.notificationService=n,this.modalService=e,this.dataService=a,this.searchTerm$=new V.X(void 0),this.filterByTags$=new V.X(void 0),this.uploading=!1,super.setQueryFn((...s)=>this.dataService.product.getAssetList(...s).refetchOnChannelChange(),s=>s.assets,(s,p)=>{const _=this.searchTerm$.value,f=this.filterByTags$.value?.map(T=>T.value);return{options:{skip:s,take:p,..._?{filter:{name:{contains:_}}}:{},sort:{createdAt:l.Asd.DESC},tags:f,tagsOperator:l.FnJ.AND}}},{take:25,skip:0})}ngOnInit(){super.ngOnInit(),this.paginationConfig$=(0,I.a)(this.itemsPerPage$,this.currentPage$,this.totalItems$).pipe((0,v.U)(([n,e,a])=>({itemsPerPage:n,currentPage:e,totalItems:a}))),this.searchTerm$.pipe((0,it.b)(250),(0,Nt.R)(this.destroy$)).subscribe(()=>this.refresh()),this.filterByTags$.pipe((0,Nt.R)(this.destroy$)).subscribe(()=>this.refresh()),this.allTags$=this.dataService.product.getTagList().mapStream(n=>n.tags.items)}filesSelected(n){n.length&&(this.uploading=!0,this.dataService.product.createAssets(n).pipe((0,dn.x)(()=>this.uploading=!1)).subscribe(({createAssets:e})=>{let a=0;for(const i of e)switch(i.__typename){case"Asset":a++;break;case"MimeTypeError":this.notificationService.error(i.message)}0<a&&(super.refresh(),this.notificationService.success((0,u.J)("asset.notify-create-assets-success"),{count:a}))}))}deleteAssets(n){this.showModalAndDelete(n.map(e=>e.id)).pipe((0,b.w)(e=>e.result===l.PcR.DELETED?[!0]:this.showModalAndDelete(n.map(a=>a.id),e.message||"").pipe((0,v.U)(a=>a.result===l.PcR.DELETED)))).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"Assets"}),this.refresh()},e=>{this.notificationService.error((0,u.J)("common.notify-delete-error"),{entity:"Assets"})})}showModalAndDelete(n,e){return this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-assets"),translationVars:{count:n.length},body:e,buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(a=>a?this.dataService.product.deleteAssets(n,!!e):F.E),(0,v.U)(a=>a.deleteAssets))}}(kt=be).\u0275fac=function(n){return new(n||kt)(t.Y36(l.gqp),t.Y36(l.Z7U),t.Y36(l.DoR),t.Y36(P.F0),t.Y36(P.gz))},kt.\u0275cmp=t.Xpm({type:kt,selectors:[["vdr-asset-list"]],features:[t.qOj],decls:17,vars:30,consts:[[1,"my-2"],[3,"tags","searchTermChange","tagsChange"],["dropZoneTarget",".content-area",3,"uploading","selectFiles"],[3,"assets","multiSelect","canDelete","deleteAssets"],[1,"paging-controls"],[3,"itemsPerPage","itemsPerPageChange"],[3,"currentPage","itemsPerPage","totalItems","pageChange"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"div",0)(2,"vdr-asset-search-input",1),t.NdJ("searchTermChange",function(i){return e.searchTerm$.next(i)})("tagsChange",function(i){return e.filterByTags$.next(i)}),t.ALo(3,"async"),t.TgZ(4,"vdr-asset-file-input",2),t.NdJ("selectFiles",function(i){return e.filesSelected(i)}),t.qZA()()(),t.TgZ(5,"vdr-asset-gallery",3),t.NdJ("deleteAssets",function(i){return e.deleteAssets(i)}),t.ALo(6,"paginate"),t.ALo(7,"async"),t.ALo(8,"async"),t.ALo(9,"hasPermission"),t.qZA(),t.TgZ(10,"div",4)(11,"vdr-items-per-page-controls",5),t.NdJ("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(12,"async"),t.qZA(),t.TgZ(13,"vdr-pagination-controls",6),t.NdJ("pageChange",function(i){return e.setPageNumber(i)}),t.ALo(14,"async"),t.ALo(15,"async"),t.ALo(16,"async"),t.qZA()()()),2&n&&(t.xp6(2),t.Q6J("tags",t.lcZ(3,9,e.allTags$)),t.xp6(2),t.Q6J("uploading",e.uploading),t.xp6(1),t.Q6J("assets",t.xi3(6,11,t.lcZ(7,14,e.items$),t.lcZ(8,16,e.paginationConfig$)||t.DdM(28,Eo)))("multiSelect",!0)("canDelete",t.lcZ(9,18,t.DdM(29,Vo))),t.xp6(6),t.Q6J("itemsPerPage",t.lcZ(12,20,e.itemsPerPage$)),t.xp6(2),t.Q6J("currentPage",t.lcZ(14,22,e.currentPage$))("itemsPerPage",t.lcZ(15,24,e.itemsPerPage$))("totalItems",t.lcZ(16,26,e.totalItems$)))},dependencies:[Uo.V,Ge.w,Be.L,Mo.e,Ro.K,E.z,g.Ov,Te._s,B.j],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%}vdr-asset-gallery[_ngcontent-%COMP%]{flex:1}.paging-controls[_ngcontent-%COMP%]{padding-top:6px;border-top:1px solid var(--color-component-border-100);display:flex;justify-content:space-between}.search-input[_ngcontent-%COMP%]{margin-top:6px;min-width:300px}"]});var Jt,N=m(81017),ht=m(91343),vt=m(32279),Ct=m(41921),Tt=m(4043),xe=m(27903);function So(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"img",10),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.previewAsset(i.featuredAsset))}),t.ALo(1,"assetPreview"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("src",t.xi3(1,1,e.featuredAsset,"small"),t.LSH)}}function wo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",11),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectAssets())}),t._UZ(1,"clr-icon",12),t.TgZ(2,"div"),t._uU(3),t.ALo(4,"translate"),t.qZA()()}2&o&&(t.xp6(3),t.Oqu(t.lcZ(4,1,"catalog.no-featured-asset")))}function Qo(o,n){1&o&&t.GkF(0)}function qo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div")(1,"button",13),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectAssets())}),t._UZ(2,"clr-icon",14),t._uU(3),t.ALo(4,"translate"),t.qZA()()}2&o&&(t.xp6(3),t.hij(" ",t.lcZ(4,1,"asset.add-asset")," "))}function $o(o,n){if(1&o&&(t.TgZ(0,"div",3)(1,"div",4),t.YNc(2,So,2,4,"img",5),t.YNc(3,wo,5,3,"div",6),t.qZA(),t.TgZ(4,"div",7),t.YNc(5,Qo,1,0,"ng-container",8),t.YNc(6,qo,5,3,"div",9),t.qZA()()),2&o){const e=t.oxw(),a=t.MAs(4);t.xp6(2),t.Q6J("ngIf",e.featuredAsset),t.xp6(1),t.Q6J("ngIf",!e.featuredAsset),t.xp6(2),t.Q6J("ngTemplateOutlet",a),t.xp6(1),t.Q6J("vdrIfPermissions",e.updatePermissions)}}function Yo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"img",10),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.previewAsset(i.featuredAsset))}),t.ALo(1,"assetPreview"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("src",t.xi3(1,1,e.featuredAsset,"thumb"),t.LSH)}}function Go(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",11),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectAssets())}),t._UZ(1,"clr-icon",17),t.qZA()}}function Bo(o,n){1&o&&t.GkF(0)}function jo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",18),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectAssets())}),t.ALo(1,"translate"),t._UZ(2,"clr-icon",14),t._uU(3),t.ALo(4,"translate"),t.qZA()}2&o&&(t.Q6J("title",t.lcZ(1,2,"asset.add-asset")),t.xp6(3),t.hij(" ",t.lcZ(4,4,"asset.add-asset")," "))}function Ko(o,n){if(1&o&&(t.TgZ(0,"div",15),t.YNc(1,Yo,2,4,"img",5),t.YNc(2,Go,2,0,"div",6),t.qZA(),t.YNc(3,Bo,1,0,"ng-container",8),t.YNc(4,jo,5,6,"button",16)),2&o){const e=t.oxw(),a=t.MAs(4);t.xp6(1),t.Q6J("ngIf",e.featuredAsset),t.xp6(1),t.Q6J("ngIf",!e.featuredAsset),t.xp6(1),t.Q6J("ngTemplateOutlet",a),t.xp6(1),t.Q6J("vdrIfPermissions",e.updatePermissions)}}function Ho(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",21),t.NdJ("cdkDropListDropped",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.dropListDropped(i))}),t.ALo(1,"hasPermission"),t.TgZ(2,"vdr-dropdown",22)(3,"div",23),t._UZ(4,"img",24),t.ALo(5,"assetPreview"),t.qZA(),t.TgZ(6,"vdr-dropdown-menu",25)(7,"button",26),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.previewAsset(c))}),t._uU(8),t.ALo(9,"translate"),t.qZA(),t.TgZ(10,"button",27),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.setAsFeatured(c))}),t.ALo(11,"hasPermission"),t._uU(12),t.ALo(13,"translate"),t.qZA(),t._UZ(14,"div",28),t.TgZ(15,"button",29),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.removeAsset(c))}),t.ALo(16,"hasPermission"),t._uU(17),t.ALo(18,"translate"),t.qZA()()()()}if(2&o){const e=n.$implicit,a=n.index,i=t.oxw(2);t.Q6J("cdkDropListData",a)("cdkDropListDisabled",!t.lcZ(1,10,i.updatePermissions)),t.xp6(3),t.ekj("featured",i.isFeatured(e)),t.xp6(1),t.Q6J("src",t.xi3(5,12,e,"tiny"),t.LSH),t.xp6(4),t.hij(" ",t.lcZ(9,15,"asset.preview")," "),t.xp6(2),t.Q6J("disabled",i.isFeatured(e)||!t.lcZ(11,17,i.updatePermissions)),t.xp6(2),t.hij(" ",t.lcZ(13,19,"asset.set-as-featured-asset")," "),t.xp6(3),t.Q6J("disabled",!t.lcZ(16,21,i.updatePermissions)),t.xp6(2),t.hij(" ",t.lcZ(18,23,"asset.remove-asset")," ")}}function Wo(o,n){if(1&o&&(t.TgZ(0,"div",19),t.YNc(1,Ho,19,25,"div",20),t.qZA()),2&o){const e=t.oxw();t.ekj("compact",e.compact),t.xp6(1),t.Q6J("ngForOf",e.assets)}}class bt{set assetsSetter(n){this.assets=(n||[]).slice()}constructor(n,e){this.modalService=n,this.changeDetector=e,this.compact=!1,this.change=new t.vpe,this.assets=[]}selectAssets(){this.modalService.fromComponent(l.V61,{size:"xl"}).subscribe(n=>{n&&n.length&&(this.assets=(0,J.T)(this.assets.concat(n),"id"),this.featuredAsset||(this.featuredAsset=n[0]),this.emitChangeEvent(this.assets,this.featuredAsset),this.changeDetector.markForCheck())})}setAsFeatured(n){this.featuredAsset=n,this.emitChangeEvent(this.assets,n)}isFeatured(n){return!!this.featuredAsset&&this.featuredAsset.id===n.id}previewAsset(n){this.modalService.fromComponent(l.IW,{size:"xl",closable:!0,locals:{asset:n,assets:this.assets}}).subscribe()}removeAsset(n){this.assets=this.assets.filter(e=>e.id!==n.id),this.featuredAsset&&this.featuredAsset.id===n.id&&(this.featuredAsset=this.assets.length>0?this.assets[0]:void 0),this.emitChangeEvent(this.assets,this.featuredAsset)}emitChangeEvent(n,e){this.change.emit({assets:n,featuredAsset:e})}dropListDropped(n){(0,N.bA)(this.assets,n.previousContainer.data,n.container.data),this.emitChangeEvent(this.assets,this.featuredAsset)}}(Jt=bt).\u0275fac=function(n){return new(n||Jt)(t.Y36(l.Z7U),t.Y36(t.sBO))},Jt.\u0275cmp=t.Xpm({type:Jt,selectors:[["vdr-assets"]],hostVars:2,hostBindings:function(n,e){2&n&&t.ekj("compact",e.compact)},inputs:{assetsSetter:["assets","assetsSetter"],featuredAsset:"featuredAsset",compact:"compact",updatePermissions:"updatePermissions"},outputs:{change:"change"},decls:5,vars:2,consts:[["class","standard-view-container",4,"ngIf","ngIfElse"],["compactView",""],["assetList",""],[1,"standard-view-container"],[1,"featured-asset"],[3,"src","click",4,"ngIf"],["class","placeholder",3,"click",4,"ngIf"],[1,"all-assets-container"],[4,"ngTemplateOutlet"],[4,"vdrIfPermissions"],[3,"src","click"],[1,"placeholder",3,"click"],["shape","image","size","128"],[1,"btn",3,"click"],["shape","attachment"],[1,"featured-asset","compact"],["class","compact-select btn btn-icon btn-sm btn-block",3,"title","click",4,"vdrIfPermissions"],["shape","image","size","150"],[1,"compact-select","btn","btn-icon","btn-sm","btn-block",3,"title","click"],["cdkDropListGroup","",1,"all-assets"],["class","drop-list","cdkDropList","","cdkDropListOrientation","horizontal",3,"cdkDropListData","cdkDropListDisabled","cdkDropListDropped",4,"ngFor","ngForOf"],["cdkDropList","","cdkDropListOrientation","horizontal",1,"drop-list",3,"cdkDropListData","cdkDropListDisabled","cdkDropListDropped"],["cdkDrag",""],["vdrDropdownTrigger","","tabindex","0",1,"asset-thumb",3,"title"],[3,"src"],["vdrPosition","bottom-right"],["type","button","vdrDropdownItem","",3,"click"],["type","button","vdrDropdownItem","",3,"disabled","click"],[1,"dropdown-divider"],["type","button","vdrDropdownItem","",1,"remove-asset",3,"disabled","click"]],template:function(n,e){if(1&n&&(t.YNc(0,$o,7,4,"div",0),t.YNc(1,Ko,5,4,"ng-template",null,1,t.W1O),t.YNc(3,Wo,2,3,"ng-template",null,2,t.W1O)),2&n){const a=t.MAs(2);t.Q6J("ngIf",!e.compact)("ngIfElse",a)}},dependencies:[h.qvL,g.sg,g.O5,g.tP,N.Wj,N.Fd,N.Zt,ht.J,vt.N,Ct.U,Tt.H,$.H,x.X$,B.j,xe.M],styles:["[_nghost-%COMP%]{display:block;container-type:inline-size}.compact[_nghost-%COMP%]{width:162px}.standard-view-container[_ngcontent-%COMP%]{display:flex;gap:calc(var(--space-unit) * 2)}.all-assets-container[_ngcontent-%COMP%]{display:flex;max-width:50%;flex-direction:column;justify-content:space-between}@container (max-width: 500px){.standard-view-container[_ngcontent-%COMP%]{flex-direction:column}.all-assets-container[_ngcontent-%COMP%]{max-width:100%}}.placeholder[_ngcontent-%COMP%]{text-align:center;color:var(--color-grey-300)}.featured-asset[_ngcontent-%COMP%]{text-align:center;background:var(--color-component-bg-200);padding:6px;cursor:pointer;border-radius:var(--border-radius-img)}.featured-asset[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{border-radius:var(--border-radius-img);max-height:400px;max-width:100%;object-fit:contain}.featured-asset.compact[_ngcontent-%COMP%]{width:100%;min-height:40px;position:relative;padding:6px}.featured-asset[_ngcontent-%COMP%] .compact-select[_ngcontent-%COMP%]{position:absolute;bottom:6px;right:6px;margin:0}.all-assets[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap}.all-assets[_ngcontent-%COMP%] .drop-list[_ngcontent-%COMP%]{min-width:60px}.all-assets[_ngcontent-%COMP%] .asset-thumb[_ngcontent-%COMP%]{margin:3px;padding:0;border:2px solid var(--color-component-border-100);border-radius:var(--border-radius-img);cursor:pointer}.all-assets[_ngcontent-%COMP%] .asset-thumb[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:50px;height:50px;border-radius:var(--border-radius-img)}.all-assets[_ngcontent-%COMP%] .asset-thumb.featured[_ngcontent-%COMP%]{border-color:var(--color-primary-500);border-radius:calc(var(--border-radius-img) + 2px)}.all-assets[_ngcontent-%COMP%] .remove-asset[_ngcontent-%COMP%]{color:var(--color-warning-500)}.all-assets.compact[_ngcontent-%COMP%] .drop-list[_ngcontent-%COMP%]{min-width:54px}.all-assets.compact[_ngcontent-%COMP%] .asset-thumb[_ngcontent-%COMP%]{margin:1px;border-width:1px}.all-assets.compact[_ngcontent-%COMP%] .cdk-drag-placeholder[_ngcontent-%COMP%], .all-assets.compact[_ngcontent-%COMP%] .cdk-drag-placeholder[_ngcontent-%COMP%] .asset-thumb[_ngcontent-%COMP%]{width:50px}.cdk-drag-animating[_ngcontent-%COMP%]{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box[_ngcontent-%COMP%]:last-child{border:none}.all-assets.cdk-drop-list-dragging[_ngcontent-%COMP%] vdr-dropdown[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drop-list-dragging[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){display:none}"],changeDetection:0});var Ut,zo=m(26642),je=m(29343),pn=m(52976),Xo=m(74691),un=m(79108);function ta(o,n){1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.assign-variants-to-channel")))}function ea(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.assign-products-to-channel"))}function na(o,n){if(1&o&&(t.YNc(0,ta,3,3,"ng-container",12),t.YNc(1,ea,2,3,"ng-template",null,13,t.W1O)),2&o){const e=t.MAs(2),a=t.oxw();t.Q6J("ngIf",a.isProductVariantMode)("ngIfElse",e)}}const mn=function(o){return{channel:o}};function oa(o,n){if(1&o&&(t._uU(0),t.ALo(1,"translate")),2&o){const e=t.oxw();t.hij(" ",t.xi3(1,1,"catalog.price-in-channel",t.VKq(4,mn,null==e.selectedChannel?null:e.selectedChannel.code))," ")}}function aa(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.no-channel-selected")," ")}function ia(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=t.oxw().$implicit,a=t.oxw();t.hij(" ",t.xi3(1,1,e.pricePreview,null==a.selectedChannel?null:a.selectedChannel.defaultCurrencyCode)," ")}}function ra(o,n){1&o&&t._uU(0," - ")}function ca(o,n){if(1&o&&(t.TgZ(0,"tr")(1,"td"),t._uU(2),t.qZA(),t.TgZ(3,"td"),t._uU(4),t.ALo(5,"localeCurrency"),t.qZA(),t.TgZ(6,"td"),t.YNc(7,ia,2,4,"ng-template",8),t.YNc(8,ra,1,0,"ng-template",null,14,t.W1O),t.qZA()()),2&o){const e=n.$implicit,a=t.MAs(9),i=t.oxw();t.xp6(2),t.Oqu(e.name),t.xp6(2),t.Oqu(t.xi3(5,4,e.price,null==i.currentChannel?null:i.currentChannel.defaultCurrencyCode)),t.xp6(3),t.Q6J("ngIf",i.selectedChannel)("ngIfElse",a)}}const la=function(o){return{channelCode:o}};function sa(o,n){if(1&o&&(t._uU(0),t.ALo(1,"translate")),2&o){const e=t.oxw(2);t.hij(" ",t.xi3(1,1,"catalog.assign-to-named-channel",t.VKq(4,la,null==e.selectedChannel?null:e.selectedChannel.code))," ")}}function da(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.no-channel-selected")," ")}function pa(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",15),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",16),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.assign())}),t.YNc(4,sa,2,6,"ng-template",8),t.YNc(5,da,2,3,"ng-template",null,9,t.W1O),t.qZA()}if(2&o){const e=t.MAs(6),a=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,4,"common.cancel")),t.xp6(2),t.Q6J("disabled",!a.selectedChannel),t.xp6(1),t.Q6J("ngIf",a.selectedChannel)("ngIfElse",e)}}class rt{get isProductVariantMode(){return null!=this.productVariantIds}constructor(n,e){this.dataService=n,this.notificationService=e,this.priceFactorControl=new d.p4(1),this.selectedChannelIdControl=new d.p4}ngOnInit(){const n=this.dataService.client.userStatus().mapSingle(({userStatus:a})=>a.activeChannelId),e=this.dataService.settings.getChannels().mapSingle(a=>a.channels);(0,I.a)(n,e).subscribe(([a,i])=>{this.currentChannel=i.items.find(c=>c.id===a),this.availableChannels=i.items}),this.selectedChannelIdControl.valueChanges.subscribe(a=>{this.selectChannel(a)}),this.variantsPreview$=(0,I.a)((0,je.D)(this.getTopVariants(10)),this.priceFactorControl.valueChanges.pipe((0,j.O)(1))).pipe((0,v.U)(([a,i])=>a.map(c=>({id:c.id,name:c.name,price:c.price,pricePreview:c.price*+i}))))}selectChannel(n){this.selectedChannel=this.availableChannels.find(e=>e.id===n[0])}assign(){const n=this.selectedChannel;n&&(this.isProductVariantMode?this.productVariantIds&&this.dataService.product.assignVariantsToChannel({channelId:n.id,productVariantIds:this.productVariantIds,priceFactor:+this.priceFactorControl.value}).subscribe(()=>{this.notificationService.success((0,u.J)("catalog.assign-variant-to-channel-success"),{channel:n.code,count:this.productVariantIds.length}),this.resolveWith(!0)}):this.dataService.product.assignProductsToChannel({channelId:n.id,productIds:this.productIds,priceFactor:+this.priceFactorControl.value}).subscribe(()=>{this.notificationService.success((0,u.J)("catalog.assign-product-to-channel-success"),{channel:n.code,count:this.productIds.length}),this.resolveWith(!0)}))}cancel(){this.resolveWith()}getTopVariants(n){var e=this;return(0,zo.Z)(function*(){return(yield(0,pn.n)(e.dataService.product.getProductVariants({filterOperator:l.FnJ.OR,filter:{productId:{in:e.productIds},id:{in:e.productVariantIds}},take:n}).single$)).productVariants.items})()}}(Ut=rt).\u0275fac=function(n){return new(n||Ut)(t.Y36(l.DoR),t.Y36(l.gqp))},Ut.\u0275cmp=t.Xpm({type:Ut,selectors:[["vdr-assign-products-to-channel-dialog"]],decls:36,vars:32,consts:[["vdrDialogTitle",""],[1,"flex"],["clrInput","",3,"multiple","includeDefaultChannel","disableChannelIds","formControl"],[1,"flex-spacer"],["clrInput","","type","number","min","0","max","99999",3,"formControl"],[1,"channel-price-preview"],[1,"clr-control-label"],[1,"table"],[3,"ngIf","ngIfElse"],["noSelection",""],[4,"ngFor","ngForOf"],["vdrDialogButtons",""],[4,"ngIf","ngIfElse"],["productModeTitle",""],["noChannelSelected",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){if(1&n&&(t.YNc(0,na,3,2,"ng-template",0),t.TgZ(1,"div",1)(2,"clr-input-container")(3,"label"),t._uU(4),t.ALo(5,"translate"),t.qZA(),t._UZ(6,"vdr-channel-assignment-control",2),t.qZA(),t._UZ(7,"div",3),t.TgZ(8,"clr-input-container")(9,"label"),t._uU(10),t.ALo(11,"translate"),t.qZA(),t._UZ(12,"input",4),t.qZA()(),t.TgZ(13,"div",5)(14,"label",6),t._uU(15),t.ALo(16,"translate"),t.qZA(),t.TgZ(17,"table",7)(18,"thead")(19,"tr")(20,"th"),t._uU(21),t.ALo(22,"translate"),t.qZA(),t.TgZ(23,"th"),t._uU(24),t.ALo(25,"translate"),t.ALo(26,"translate"),t.ALo(27,"channelCodeToLabel"),t.qZA(),t.TgZ(28,"th"),t.YNc(29,oa,2,6,"ng-template",8),t.YNc(30,aa,2,3,"ng-template",null,9,t.W1O),t.qZA()()(),t.TgZ(32,"tbody"),t.YNc(33,ca,10,7,"tr",10),t.ALo(34,"async"),t.qZA()()(),t.YNc(35,pa,7,6,"ng-template",11)),2&n){const a=t.MAs(31);t.xp6(4),t.Oqu(t.lcZ(5,13,"common.channel")),t.xp6(2),t.Q6J("multiple",!1)("includeDefaultChannel",!1)("disableChannelIds",e.currentChannelIds)("formControl",e.selectedChannelIdControl),t.xp6(4),t.Oqu(t.lcZ(11,15,"catalog.price-conversion-factor")),t.xp6(2),t.Q6J("formControl",e.priceFactorControl),t.xp6(3),t.Oqu(t.lcZ(16,17,"catalog.channel-price-preview")),t.xp6(6),t.Oqu(t.lcZ(22,19,"common.name")),t.xp6(3),t.hij(" ",t.xi3(25,21,"catalog.price-in-channel",t.VKq(30,mn,t.lcZ(26,24,t.lcZ(27,26,null==e.currentChannel?null:e.currentChannel.code))))," "),t.xp6(5),t.Q6J("ngIf",e.selectedChannel)("ngIfElse",a),t.xp6(4),t.Q6J("ngForOf",t.lcZ(34,28,e.variantsPreview$))}},dependencies:[h.MgK,h.xRP,h.G55,g.sg,g.O5,d.Fj,d.wV,d.JJ,d.qQ,d.Fd,d.oH,y.y,X.n,K.q,Xo.S,g.Ov,x.X$,un.E,he.k],styles:["vdr-channel-assignment-control[_ngcontent-%COMP%]{min-width:200px}.channel-price-preview[_ngcontent-%COMP%]{margin-top:24px}.channel-price-preview[_ngcontent-%COMP%] table.table[_ngcontent-%COMP%]{margin-top:6px}"],changeDetection:0});const _n=D.Ps`
12
+ `;class Te extends l.VE7{constructor(n,e,a){super(),this.notificationService=n,this.dataService=e,this.formBuilder=a,this.customFields=this.getCustomFieldConfig("Asset"),this.detailForm=new d.cw({name:new d.NI(""),tags:new d.NI([]),customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))})}ngOnInit(){this.init()}ngOnDestroy(){this.destroy()}onAssetChange(n){this.detailForm.get("name")?.setValue(n.name),this.detailForm.get("tags")?.setValue(n.tags),this.detailForm.markAsDirty()}save(){this.dataService.product.updateAsset({id:this.id,name:this.detailForm.value.name,tags:this.detailForm.value.tags,customFields:this.detailForm.value.customFields}).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"Asset"})},n=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"Asset"})})}setFormValues(n,e){this.detailForm.get("name")?.setValue(n.name),this.detailForm.get("tags")?.setValue(n.tags.map(a=>a.id)),this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get(["customFields"]),n)}}(Lt=Te).\u0275fac=function(n){return new(n||Lt)(t.Y36(l.gqp),t.Y36(l.DoR),t.Y36(d.QS))},Lt.\u0275cmp=t.Xpm({type:Lt,selectors:[["vdr-asset-detail"]],features:[t.qOj],decls:9,vars:8,consts:[["locationId","asset-detail"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],[3,"asset","editable","customFields","customFieldsForm","assetChange"],[1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar"),t._UZ(2,"vdr-ab-left"),t.TgZ(3,"vdr-ab-right"),t._UZ(4,"vdr-action-bar-items",0),t.YNc(5,No,3,4,"button",1),t.qZA()()(),t.TgZ(6,"vdr-page-block")(7,"vdr-asset-preview",2),t.NdJ("assetChange",function(i){return e.onAssetChange(i)}),t.ALo(8,"async"),t.qZA()()),2&n&&(t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(7,Jo)),t.xp6(2),t.Q6J("asset",t.lcZ(8,5,e.entity$))("editable",!0)("customFields",e.customFields)("customFieldsForm",e.detailForm.get("customFields")))},dependencies:[A.Kk,A.BN,A.mz,ko.A,$.H,tt.W,E.z,g.Ov,x.X$],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%}"],changeDetection:0});var Nt,V=m(64790),it=m(40590),kt=m(68163),dn=m(29129),Mo=m(16457),Ge=m(5970),Be=m(82026),Ro=m(56626),Eo=m(85423),be=m(72977);const Vo=function(){return{}},So=function(){return["DeleteCatalog","DeleteAsset"]};class xe extends l.t7C{constructor(n,e,a,i,c){super(i,c),this.notificationService=n,this.modalService=e,this.dataService=a,this.searchTerm$=new V.X(void 0),this.filterByTags$=new V.X(void 0),this.uploading=!1,super.setQueryFn((...s)=>this.dataService.product.getAssetList(...s).refetchOnChannelChange(),s=>s.assets,(s,p)=>{const _=this.searchTerm$.value,f=this.filterByTags$.value?.map(T=>T.value);return{options:{skip:s,take:p,..._?{filter:{name:{contains:_}}}:{},sort:{createdAt:l.Asd.DESC},tags:f,tagsOperator:l.FnJ.AND}}},{take:25,skip:0})}ngOnInit(){super.ngOnInit(),this.paginationConfig$=(0,I.a)(this.itemsPerPage$,this.currentPage$,this.totalItems$).pipe((0,v.U)(([n,e,a])=>({itemsPerPage:n,currentPage:e,totalItems:a}))),this.searchTerm$.pipe((0,it.b)(250),(0,kt.R)(this.destroy$)).subscribe(()=>this.refresh()),this.filterByTags$.pipe((0,kt.R)(this.destroy$)).subscribe(()=>this.refresh()),this.allTags$=this.dataService.product.getTagList().mapStream(n=>n.tags.items)}filesSelected(n){n.length&&(this.uploading=!0,this.dataService.product.createAssets(n).pipe((0,dn.x)(()=>this.uploading=!1)).subscribe(({createAssets:e})=>{let a=0;for(const i of e)switch(i.__typename){case"Asset":a++;break;case"MimeTypeError":this.notificationService.error(i.message)}0<a&&(super.refresh(),this.notificationService.success((0,u.J)("asset.notify-create-assets-success"),{count:a}))}))}deleteAssets(n){this.showModalAndDelete(n.map(e=>e.id)).pipe((0,b.w)(e=>e.result===l.PcR.DELETED?[!0]:this.showModalAndDelete(n.map(a=>a.id),e.message||"").pipe((0,v.U)(a=>a.result===l.PcR.DELETED)))).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"Assets"}),this.refresh()},e=>{this.notificationService.error((0,u.J)("common.notify-delete-error"),{entity:"Assets"})})}showModalAndDelete(n,e){return this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-assets"),translationVars:{count:n.length},body:e,buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(a=>a?this.dataService.product.deleteAssets(n,!!e):F.E),(0,v.U)(a=>a.deleteAssets))}}(Nt=xe).\u0275fac=function(n){return new(n||Nt)(t.Y36(l.gqp),t.Y36(l.Z7U),t.Y36(l.DoR),t.Y36(P.F0),t.Y36(P.gz))},Nt.\u0275cmp=t.Xpm({type:Nt,selectors:[["vdr-asset-list"]],features:[t.qOj],decls:17,vars:30,consts:[[1,"my-2"],[3,"tags","searchTermChange","tagsChange"],["dropZoneTarget",".content-area",3,"uploading","selectFiles"],[3,"assets","multiSelect","canDelete","deleteAssets"],[1,"paging-controls"],[3,"itemsPerPage","itemsPerPageChange"],[3,"currentPage","itemsPerPage","totalItems","pageChange"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"div",0)(2,"vdr-asset-search-input",1),t.NdJ("searchTermChange",function(i){return e.searchTerm$.next(i)})("tagsChange",function(i){return e.filterByTags$.next(i)}),t.ALo(3,"async"),t.TgZ(4,"vdr-asset-file-input",2),t.NdJ("selectFiles",function(i){return e.filesSelected(i)}),t.qZA()()(),t.TgZ(5,"vdr-asset-gallery",3),t.NdJ("deleteAssets",function(i){return e.deleteAssets(i)}),t.ALo(6,"paginate"),t.ALo(7,"async"),t.ALo(8,"async"),t.ALo(9,"hasPermission"),t.qZA(),t.TgZ(10,"div",4)(11,"vdr-items-per-page-controls",5),t.NdJ("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(12,"async"),t.qZA(),t.TgZ(13,"vdr-pagination-controls",6),t.NdJ("pageChange",function(i){return e.setPageNumber(i)}),t.ALo(14,"async"),t.ALo(15,"async"),t.ALo(16,"async"),t.qZA()()()),2&n&&(t.xp6(2),t.Q6J("tags",t.lcZ(3,9,e.allTags$)),t.xp6(2),t.Q6J("uploading",e.uploading),t.xp6(1),t.Q6J("assets",t.xi3(6,11,t.lcZ(7,14,e.items$),t.lcZ(8,16,e.paginationConfig$)||t.DdM(28,Vo)))("multiSelect",!0)("canDelete",t.lcZ(9,18,t.DdM(29,So))),t.xp6(6),t.Q6J("itemsPerPage",t.lcZ(12,20,e.itemsPerPage$)),t.xp6(2),t.Q6J("currentPage",t.lcZ(14,22,e.currentPage$))("itemsPerPage",t.lcZ(15,24,e.itemsPerPage$))("totalItems",t.lcZ(16,26,e.totalItems$)))},dependencies:[Mo.V,Ge.w,Be.L,Ro.e,Eo.K,E.z,g.Ov,be._s,B.j],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%}vdr-asset-gallery[_ngcontent-%COMP%]{flex:1}.paging-controls[_ngcontent-%COMP%]{padding-top:6px;border-top:1px solid var(--color-component-border-100);display:flex;justify-content:space-between}.search-input[_ngcontent-%COMP%]{margin-top:6px;min-width:300px}"]});var Jt,k=m(81017),ht=m(91343),vt=m(32279),Ct=m(41921),Tt=m(4043),Ae=m(27903);function wo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"img",10),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.previewAsset(i.featuredAsset))}),t.ALo(1,"assetPreview"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("src",t.xi3(1,1,e.featuredAsset,"small"),t.LSH)}}function Qo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",11),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectAssets())}),t._UZ(1,"clr-icon",12),t.TgZ(2,"div"),t._uU(3),t.ALo(4,"translate"),t.qZA()()}2&o&&(t.xp6(3),t.Oqu(t.lcZ(4,1,"catalog.no-featured-asset")))}function qo(o,n){1&o&&t.GkF(0)}function $o(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div")(1,"button",13),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectAssets())}),t._UZ(2,"clr-icon",14),t._uU(3),t.ALo(4,"translate"),t.qZA()()}2&o&&(t.xp6(3),t.hij(" ",t.lcZ(4,1,"asset.add-asset")," "))}function Yo(o,n){if(1&o&&(t.TgZ(0,"div",3)(1,"div",4),t.YNc(2,wo,2,4,"img",5),t.YNc(3,Qo,5,3,"div",6),t.qZA(),t.TgZ(4,"div",7),t.YNc(5,qo,1,0,"ng-container",8),t.YNc(6,$o,5,3,"div",9),t.qZA()()),2&o){const e=t.oxw(),a=t.MAs(4);t.xp6(2),t.Q6J("ngIf",e.featuredAsset),t.xp6(1),t.Q6J("ngIf",!e.featuredAsset),t.xp6(2),t.Q6J("ngTemplateOutlet",a),t.xp6(1),t.Q6J("vdrIfPermissions",e.updatePermissions)}}function Go(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"img",10),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.previewAsset(i.featuredAsset))}),t.ALo(1,"assetPreview"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("src",t.xi3(1,1,e.featuredAsset,"thumb"),t.LSH)}}function Bo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",11),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectAssets())}),t._UZ(1,"clr-icon",17),t.qZA()}}function jo(o,n){1&o&&t.GkF(0)}function Ko(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",18),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectAssets())}),t.ALo(1,"translate"),t._UZ(2,"clr-icon",14),t._uU(3),t.ALo(4,"translate"),t.qZA()}2&o&&(t.Q6J("title",t.lcZ(1,2,"asset.add-asset")),t.xp6(3),t.hij(" ",t.lcZ(4,4,"asset.add-asset")," "))}function Ho(o,n){if(1&o&&(t.TgZ(0,"div",15),t.YNc(1,Go,2,4,"img",5),t.YNc(2,Bo,2,0,"div",6),t.qZA(),t.YNc(3,jo,1,0,"ng-container",8),t.YNc(4,Ko,5,6,"button",16)),2&o){const e=t.oxw(),a=t.MAs(4);t.xp6(1),t.Q6J("ngIf",e.featuredAsset),t.xp6(1),t.Q6J("ngIf",!e.featuredAsset),t.xp6(1),t.Q6J("ngTemplateOutlet",a),t.xp6(1),t.Q6J("vdrIfPermissions",e.updatePermissions)}}function Wo(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",21),t.NdJ("cdkDropListDropped",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.dropListDropped(i))}),t.ALo(1,"hasPermission"),t.TgZ(2,"vdr-dropdown",22)(3,"div",23),t._UZ(4,"img",24),t.ALo(5,"assetPreview"),t.qZA(),t.TgZ(6,"vdr-dropdown-menu",25)(7,"button",26),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.previewAsset(c))}),t._uU(8),t.ALo(9,"translate"),t.qZA(),t.TgZ(10,"button",27),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.setAsFeatured(c))}),t.ALo(11,"hasPermission"),t._uU(12),t.ALo(13,"translate"),t.qZA(),t._UZ(14,"div",28),t.TgZ(15,"button",29),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.removeAsset(c))}),t.ALo(16,"hasPermission"),t._uU(17),t.ALo(18,"translate"),t.qZA()()()()}if(2&o){const e=n.$implicit,a=n.index,i=t.oxw(2);t.Q6J("cdkDropListData",a)("cdkDropListDisabled",!t.lcZ(1,10,i.updatePermissions)),t.xp6(3),t.ekj("featured",i.isFeatured(e)),t.xp6(1),t.Q6J("src",t.xi3(5,12,e,"tiny"),t.LSH),t.xp6(4),t.hij(" ",t.lcZ(9,15,"asset.preview")," "),t.xp6(2),t.Q6J("disabled",i.isFeatured(e)||!t.lcZ(11,17,i.updatePermissions)),t.xp6(2),t.hij(" ",t.lcZ(13,19,"asset.set-as-featured-asset")," "),t.xp6(3),t.Q6J("disabled",!t.lcZ(16,21,i.updatePermissions)),t.xp6(2),t.hij(" ",t.lcZ(18,23,"asset.remove-asset")," ")}}function zo(o,n){if(1&o&&(t.TgZ(0,"div",19),t.YNc(1,Wo,19,25,"div",20),t.qZA()),2&o){const e=t.oxw();t.ekj("compact",e.compact),t.xp6(1),t.Q6J("ngForOf",e.assets)}}class bt{set assetsSetter(n){this.assets=(n||[]).slice()}constructor(n,e){this.modalService=n,this.changeDetector=e,this.compact=!1,this.change=new t.vpe,this.assets=[]}selectAssets(){this.modalService.fromComponent(l.V61,{size:"xl"}).subscribe(n=>{n&&n.length&&(this.assets=(0,N.T)(this.assets.concat(n),"id"),this.featuredAsset||(this.featuredAsset=n[0]),this.emitChangeEvent(this.assets,this.featuredAsset),this.changeDetector.markForCheck())})}setAsFeatured(n){this.featuredAsset=n,this.emitChangeEvent(this.assets,n)}isFeatured(n){return!!this.featuredAsset&&this.featuredAsset.id===n.id}previewAsset(n){this.modalService.fromComponent(l.IW,{size:"xl",closable:!0,locals:{asset:n,assets:this.assets}}).subscribe()}removeAsset(n){this.assets=this.assets.filter(e=>e.id!==n.id),this.featuredAsset&&this.featuredAsset.id===n.id&&(this.featuredAsset=this.assets.length>0?this.assets[0]:void 0),this.emitChangeEvent(this.assets,this.featuredAsset)}emitChangeEvent(n,e){this.change.emit({assets:n,featuredAsset:e})}dropListDropped(n){(0,k.bA)(this.assets,n.previousContainer.data,n.container.data),this.emitChangeEvent(this.assets,this.featuredAsset)}}(Jt=bt).\u0275fac=function(n){return new(n||Jt)(t.Y36(l.Z7U),t.Y36(t.sBO))},Jt.\u0275cmp=t.Xpm({type:Jt,selectors:[["vdr-assets"]],hostVars:2,hostBindings:function(n,e){2&n&&t.ekj("compact",e.compact)},inputs:{assetsSetter:["assets","assetsSetter"],featuredAsset:"featuredAsset",compact:"compact",updatePermissions:"updatePermissions"},outputs:{change:"change"},decls:5,vars:2,consts:[["class","standard-view-container",4,"ngIf","ngIfElse"],["compactView",""],["assetList",""],[1,"standard-view-container"],[1,"featured-asset"],[3,"src","click",4,"ngIf"],["class","placeholder",3,"click",4,"ngIf"],[1,"all-assets-container"],[4,"ngTemplateOutlet"],[4,"vdrIfPermissions"],[3,"src","click"],[1,"placeholder",3,"click"],["shape","image","size","128"],[1,"btn",3,"click"],["shape","attachment"],[1,"featured-asset","compact"],["class","compact-select btn btn-icon btn-sm btn-block",3,"title","click",4,"vdrIfPermissions"],["shape","image","size","150"],[1,"compact-select","btn","btn-icon","btn-sm","btn-block",3,"title","click"],["cdkDropListGroup","",1,"all-assets"],["class","drop-list","cdkDropList","","cdkDropListOrientation","horizontal",3,"cdkDropListData","cdkDropListDisabled","cdkDropListDropped",4,"ngFor","ngForOf"],["cdkDropList","","cdkDropListOrientation","horizontal",1,"drop-list",3,"cdkDropListData","cdkDropListDisabled","cdkDropListDropped"],["cdkDrag",""],["vdrDropdownTrigger","","tabindex","0",1,"asset-thumb",3,"title"],[3,"src"],["vdrPosition","bottom-right"],["type","button","vdrDropdownItem","",3,"click"],["type","button","vdrDropdownItem","",3,"disabled","click"],[1,"dropdown-divider"],["type","button","vdrDropdownItem","",1,"remove-asset",3,"disabled","click"]],template:function(n,e){if(1&n&&(t.YNc(0,Yo,7,4,"div",0),t.YNc(1,Ho,5,4,"ng-template",null,1,t.W1O),t.YNc(3,zo,2,3,"ng-template",null,2,t.W1O)),2&n){const a=t.MAs(2);t.Q6J("ngIf",!e.compact)("ngIfElse",a)}},dependencies:[h.qvL,g.sg,g.O5,g.tP,k.Wj,k.Fd,k.Zt,ht.J,vt.N,Ct.U,Tt.H,$.H,x.X$,B.j,Ae.M],styles:["[_nghost-%COMP%]{display:block;container-type:inline-size}.compact[_nghost-%COMP%]{width:162px}.standard-view-container[_ngcontent-%COMP%]{display:flex;gap:calc(var(--space-unit) * 2)}.all-assets-container[_ngcontent-%COMP%]{display:flex;max-width:50%;flex-direction:column;justify-content:space-between}@container (max-width: 500px){.standard-view-container[_ngcontent-%COMP%]{flex-direction:column}.all-assets-container[_ngcontent-%COMP%]{max-width:100%}}.placeholder[_ngcontent-%COMP%]{text-align:center;color:var(--color-grey-300)}.featured-asset[_ngcontent-%COMP%]{text-align:center;background:var(--color-component-bg-200);padding:6px;cursor:pointer;border-radius:var(--border-radius-img)}.featured-asset[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{border-radius:var(--border-radius-img);max-height:400px;max-width:100%;object-fit:contain}.featured-asset.compact[_ngcontent-%COMP%]{width:100%;min-height:40px;position:relative;padding:6px}.featured-asset[_ngcontent-%COMP%] .compact-select[_ngcontent-%COMP%]{position:absolute;bottom:6px;right:6px;margin:0}.all-assets[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap}.all-assets[_ngcontent-%COMP%] .drop-list[_ngcontent-%COMP%]{min-width:60px}.all-assets[_ngcontent-%COMP%] .asset-thumb[_ngcontent-%COMP%]{margin:3px;padding:0;border:2px solid var(--color-component-border-100);border-radius:var(--border-radius-img);cursor:pointer}.all-assets[_ngcontent-%COMP%] .asset-thumb[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:50px;height:50px;border-radius:var(--border-radius-img)}.all-assets[_ngcontent-%COMP%] .asset-thumb.featured[_ngcontent-%COMP%]{border-color:var(--color-primary-500);border-radius:calc(var(--border-radius-img) + 2px)}.all-assets[_ngcontent-%COMP%] .remove-asset[_ngcontent-%COMP%]{color:var(--color-warning-500)}.all-assets.compact[_ngcontent-%COMP%] .drop-list[_ngcontent-%COMP%]{min-width:54px}.all-assets.compact[_ngcontent-%COMP%] .asset-thumb[_ngcontent-%COMP%]{margin:1px;border-width:1px}.all-assets.compact[_ngcontent-%COMP%] .cdk-drag-placeholder[_ngcontent-%COMP%], .all-assets.compact[_ngcontent-%COMP%] .cdk-drag-placeholder[_ngcontent-%COMP%] .asset-thumb[_ngcontent-%COMP%]{width:50px}.cdk-drag-animating[_ngcontent-%COMP%]{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box[_ngcontent-%COMP%]:last-child{border:none}.all-assets.cdk-drop-list-dragging[_ngcontent-%COMP%] vdr-dropdown[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drop-list-dragging[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){display:none}"],changeDetection:0});var Ut,Xo=m(26642),je=m(29343),pn=m(52976),ta=m(74691),un=m(79108);function ea(o,n){1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.assign-variants-to-channel")))}function na(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.assign-products-to-channel"))}function oa(o,n){if(1&o&&(t.YNc(0,ea,3,3,"ng-container",12),t.YNc(1,na,2,3,"ng-template",null,13,t.W1O)),2&o){const e=t.MAs(2),a=t.oxw();t.Q6J("ngIf",a.isProductVariantMode)("ngIfElse",e)}}const mn=function(o){return{channel:o}};function aa(o,n){if(1&o&&(t._uU(0),t.ALo(1,"translate")),2&o){const e=t.oxw();t.hij(" ",t.xi3(1,1,"catalog.price-in-channel",t.VKq(4,mn,null==e.selectedChannel?null:e.selectedChannel.code))," ")}}function ia(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.no-channel-selected")," ")}function ra(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=t.oxw().$implicit,a=t.oxw();t.hij(" ",t.xi3(1,1,e.pricePreview,null==a.selectedChannel?null:a.selectedChannel.defaultCurrencyCode)," ")}}function ca(o,n){1&o&&t._uU(0," - ")}function la(o,n){if(1&o&&(t.TgZ(0,"tr")(1,"td"),t._uU(2),t.qZA(),t.TgZ(3,"td"),t._uU(4),t.ALo(5,"localeCurrency"),t.qZA(),t.TgZ(6,"td"),t.YNc(7,ra,2,4,"ng-template",8),t.YNc(8,ca,1,0,"ng-template",null,14,t.W1O),t.qZA()()),2&o){const e=n.$implicit,a=t.MAs(9),i=t.oxw();t.xp6(2),t.Oqu(e.name),t.xp6(2),t.Oqu(t.xi3(5,4,e.price,null==i.currentChannel?null:i.currentChannel.defaultCurrencyCode)),t.xp6(3),t.Q6J("ngIf",i.selectedChannel)("ngIfElse",a)}}const sa=function(o){return{channelCode:o}};function da(o,n){if(1&o&&(t._uU(0),t.ALo(1,"translate")),2&o){const e=t.oxw(2);t.hij(" ",t.xi3(1,1,"catalog.assign-to-named-channel",t.VKq(4,sa,null==e.selectedChannel?null:e.selectedChannel.code))," ")}}function pa(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.no-channel-selected")," ")}function ua(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",15),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",16),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.assign())}),t.YNc(4,da,2,6,"ng-template",8),t.YNc(5,pa,2,3,"ng-template",null,9,t.W1O),t.qZA()}if(2&o){const e=t.MAs(6),a=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,4,"common.cancel")),t.xp6(2),t.Q6J("disabled",!a.selectedChannel),t.xp6(1),t.Q6J("ngIf",a.selectedChannel)("ngIfElse",e)}}class rt{get isProductVariantMode(){return null!=this.productVariantIds}constructor(n,e){this.dataService=n,this.notificationService=e,this.priceFactorControl=new d.p4(1),this.selectedChannelIdControl=new d.p4}ngOnInit(){const n=this.dataService.client.userStatus().mapSingle(({userStatus:a})=>a.activeChannelId),e=this.dataService.settings.getChannels().mapSingle(a=>a.channels);(0,I.a)(n,e).subscribe(([a,i])=>{this.currentChannel=i.items.find(c=>c.id===a),this.availableChannels=i.items}),this.selectedChannelIdControl.valueChanges.subscribe(a=>{this.selectChannel(a)}),this.variantsPreview$=(0,I.a)((0,je.D)(this.getTopVariants(10)),this.priceFactorControl.valueChanges.pipe((0,j.O)(1))).pipe((0,v.U)(([a,i])=>a.map(c=>({id:c.id,name:c.name,price:c.price,pricePreview:c.price*+i}))))}selectChannel(n){this.selectedChannel=this.availableChannels.find(e=>e.id===n[0])}assign(){const n=this.selectedChannel;n&&(this.isProductVariantMode?this.productVariantIds&&this.dataService.product.assignVariantsToChannel({channelId:n.id,productVariantIds:this.productVariantIds,priceFactor:+this.priceFactorControl.value}).subscribe(()=>{this.notificationService.success((0,u.J)("catalog.assign-variant-to-channel-success"),{channel:n.code,count:this.productVariantIds.length}),this.resolveWith(!0)}):this.dataService.product.assignProductsToChannel({channelId:n.id,productIds:this.productIds,priceFactor:+this.priceFactorControl.value}).subscribe(()=>{this.notificationService.success((0,u.J)("catalog.assign-product-to-channel-success"),{channel:n.code,count:this.productIds.length}),this.resolveWith(!0)}))}cancel(){this.resolveWith()}getTopVariants(n){var e=this;return(0,Xo.Z)(function*(){return(yield(0,pn.n)(e.dataService.product.getProductVariants({filterOperator:l.FnJ.OR,filter:{productId:{in:e.productIds},id:{in:e.productVariantIds}},take:n}).single$)).productVariants.items})()}}(Ut=rt).\u0275fac=function(n){return new(n||Ut)(t.Y36(l.DoR),t.Y36(l.gqp))},Ut.\u0275cmp=t.Xpm({type:Ut,selectors:[["vdr-assign-products-to-channel-dialog"]],decls:36,vars:32,consts:[["vdrDialogTitle",""],[1,"flex"],["clrInput","",3,"multiple","includeDefaultChannel","disableChannelIds","formControl"],[1,"flex-spacer"],["clrInput","","type","number","min","0","max","99999",3,"formControl"],[1,"channel-price-preview"],[1,"clr-control-label"],[1,"table"],[3,"ngIf","ngIfElse"],["noSelection",""],[4,"ngFor","ngForOf"],["vdrDialogButtons",""],[4,"ngIf","ngIfElse"],["productModeTitle",""],["noChannelSelected",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){if(1&n&&(t.YNc(0,oa,3,2,"ng-template",0),t.TgZ(1,"div",1)(2,"clr-input-container")(3,"label"),t._uU(4),t.ALo(5,"translate"),t.qZA(),t._UZ(6,"vdr-channel-assignment-control",2),t.qZA(),t._UZ(7,"div",3),t.TgZ(8,"clr-input-container")(9,"label"),t._uU(10),t.ALo(11,"translate"),t.qZA(),t._UZ(12,"input",4),t.qZA()(),t.TgZ(13,"div",5)(14,"label",6),t._uU(15),t.ALo(16,"translate"),t.qZA(),t.TgZ(17,"table",7)(18,"thead")(19,"tr")(20,"th"),t._uU(21),t.ALo(22,"translate"),t.qZA(),t.TgZ(23,"th"),t._uU(24),t.ALo(25,"translate"),t.ALo(26,"translate"),t.ALo(27,"channelCodeToLabel"),t.qZA(),t.TgZ(28,"th"),t.YNc(29,aa,2,6,"ng-template",8),t.YNc(30,ia,2,3,"ng-template",null,9,t.W1O),t.qZA()()(),t.TgZ(32,"tbody"),t.YNc(33,la,10,7,"tr",10),t.ALo(34,"async"),t.qZA()()(),t.YNc(35,ua,7,6,"ng-template",11)),2&n){const a=t.MAs(31);t.xp6(4),t.Oqu(t.lcZ(5,13,"common.channel")),t.xp6(2),t.Q6J("multiple",!1)("includeDefaultChannel",!1)("disableChannelIds",e.currentChannelIds)("formControl",e.selectedChannelIdControl),t.xp6(4),t.Oqu(t.lcZ(11,15,"catalog.price-conversion-factor")),t.xp6(2),t.Q6J("formControl",e.priceFactorControl),t.xp6(3),t.Oqu(t.lcZ(16,17,"catalog.channel-price-preview")),t.xp6(6),t.Oqu(t.lcZ(22,19,"common.name")),t.xp6(3),t.hij(" ",t.xi3(25,21,"catalog.price-in-channel",t.VKq(30,mn,t.lcZ(26,24,t.lcZ(27,26,null==e.currentChannel?null:e.currentChannel.code))))," "),t.xp6(5),t.Q6J("ngIf",e.selectedChannel)("ngIfElse",a),t.xp6(4),t.Q6J("ngForOf",t.lcZ(34,28,e.variantsPreview$))}},dependencies:[h.MgK,h.xRP,h.G55,g.sg,g.O5,d.Fj,d.wV,d.JJ,d.qQ,d.Fd,d.oH,y.y,X.n,K.q,ta.S,g.Ov,x.X$,un.E,ve.k],styles:["vdr-channel-assignment-control[_ngcontent-%COMP%]{min-width:200px}.channel-price-preview[_ngcontent-%COMP%]{margin-top:24px}.channel-price-preview[_ngcontent-%COMP%] table.table[_ngcontent-%COMP%]{margin-top:6px}"],changeDetection:0});const _n=D.Ps`
13
13
  query GetProductsWithFacetValuesByIds($ids: [String!]!) {
14
14
  products(options: { filter: { id: { in: $ids } } }) {
15
15
  items {
@@ -72,21 +72,21 @@
72
72
  }
73
73
  }
74
74
  }
75
- `;var Mt,Ae=m(92312);function ua(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.edit-facet-values"),"\n")}function ma(o,n){if(1&o&&(t.TgZ(0,"div",14),t._uU(1),t.qZA()),2&o){const e=t.oxw().$implicit;t.xp6(1),t.Oqu(e.sku)}}function _a(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-facet-value-chip",15),t.NdJ("remove",function(){const c=t.CHM(e).$implicit,s=t.oxw().$implicit,p=t.oxw(2);return t.KtG(p.removeFacetValue(s,c.id))}),t.qZA()}if(2&o){const e=n.$implicit;t.Q6J("facetValue",e)}}function ga(o,n){if(1&o&&(t.TgZ(0,"tr")(1,"td",10)(2,"div"),t._uU(3),t.qZA(),t.YNc(4,ma,2,1,"div",11),t.qZA(),t.TgZ(5,"td",12),t.YNc(6,_a,1,1,"vdr-facet-value-chip",13),t.qZA()()),2&o){const e=n.$implicit;t.xp6(3),t.Oqu(e.name),t.xp6(1),t.Q6J("ngIf",e.sku),t.xp6(2),t.Q6J("ngForOf",e.facetValues)}}function fa(o,n){if(1&o&&(t.TgZ(0,"table",8)(1,"tbody"),t.YNc(2,ga,7,3,"tr",9),t.qZA()()),2&o){const e=t.oxw();t.xp6(2),t.Q6J("ngForOf",e.items)}}function ha(o,n){1&o&&(t.TgZ(0,"div",16),t._UZ(1,"clr-spinner"),t.qZA())}function va(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",17),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",18),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.addFacetValues())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",0===e.selectedValues.length&&!1===e.facetValuesRemoved),t.xp6(1),t.hij(" ",t.lcZ(5,5,"common.update")," ")}}class Ze{constructor(n,e){this.dataService=n,this.changeDetectorRef=e,this.mode="product",this.state="loading",this.selectedValues=[],this.items=[],this.facetValuesRemoved=!1}ngOnInit(){const n="product"===this.mode?this.dataService.query(_n,{ids:this.ids??[]}).mapSingle(({products:e})=>e.items.map(a=>({...a,facetValues:[...a.facetValues]}))):this.dataService.query(gn,{ids:this.ids??[]}).mapSingle(({productVariants:e})=>e.items.map(a=>({...a,facetValues:[...a.facetValues]})));this.subscription=n.subscribe({next:e=>{this.items=e,this.state="ready",this.changeDetectorRef.markForCheck()}})}ngOnDestroy(){this.subscription?.unsubscribe()}cancel(){this.resolveWith()}removeFacetValue(n,e){n.facetValues=n.facetValues.filter(a=>a.id!==e),this.facetValuesRemoved=!0}addFacetValues(){const n=this.selectedValues.map(a=>a.id);return this.state="saving",("product"===this.mode?this.dataService.mutate(fn,{input:this.items?.map(a=>({id:a.id,facetValueIds:(0,J.T)([...a.facetValues.map(i=>i.id),...n])}))}):this.dataService.mutate(hn,{input:this.items?.map(a=>({id:a.id,facetValueIds:(0,J.T)([...a.facetValues.map(i=>i.id),...n])}))})).subscribe(a=>{this.resolveWith(this.selectedValues)})}}(Mt=Ze).\u0275fac=function(n){return new(n||Mt)(t.Y36(l.DoR),t.Y36(t.sBO))},Mt.\u0275cmp=t.Xpm({type:Mt,selectors:[["vdr-bulk-add-facet-values-dialog"]],decls:11,vars:5,consts:[["vdrDialogTitle",""],[1,"flex"],[1,"flex","center"],[1,"mr2"],[3,"selectedValuesChange"],["class","table",4,"ngIf","ngIfElse"],["placeholder",""],["vdrDialogButtons",""],[1,"table"],[4,"ngFor","ngForOf"],[1,"left","align-middle"],["class","sku",4,"ngIf"],[1,"left"],[3,"facetValue","remove",4,"ngFor","ngForOf"],[1,"sku"],[3,"facetValue","remove"],[1,"loading"],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){if(1&n&&(t.YNc(0,ua,2,3,"ng-template",0),t.TgZ(1,"div",1)(2,"div",2)(3,"div",3),t._uU(4),t.ALo(5,"translate"),t.qZA(),t.TgZ(6,"vdr-facet-value-selector",4),t.NdJ("selectedValuesChange",function(i){return e.selectedValues=i}),t.qZA()()(),t.YNc(7,fa,3,1,"table",5),t.YNc(8,ha,2,0,"ng-template",null,6,t.W1O),t.YNc(10,va,6,7,"ng-template",7)),2&n){const a=t.MAs(9);t.xp6(4),t.hij(" ",t.lcZ(5,3,"catalog.add-facet-value")," "),t.xp6(3),t.Q6J("ngIf","loading"!==e.state)("ngIfElse",a)}},dependencies:[h.vNO,g.sg,g.O5,sn.$,Ae.q,X.n,K.q,x.X$],styles:[".loading[_ngcontent-%COMP%]{min-height:25vh;display:flex;justify-content:center;align-items:center}.sku[_ngcontent-%COMP%]{color:var(--color-text-300)}"],changeDetection:0});var Rt,S=m(24),Ke=m(22727),Ca=m(15948);function Ta(o,n){1&o&&t.GkF(0)}function ba(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function xa(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function Aa(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}const Za=function(o){return["/catalog/products",o]};function Pa(o,n){if(1&o&&(t.TgZ(0,"a",11)(1,"span"),t._uU(2),t.qZA(),t._UZ(3,"clr-icon",12),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.VKq(2,Za,e.productId)),t.xp6(2),t.Oqu(e.name)}}function Oa(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.sku," ")}}const Ia=function(o){return{$implicit:o}};class Et{constructor(n,e,a){this.route=n,this.router=e,this.dataService=a,this.previewUpdatedFilters=!1,this.filterTermControl=new d.p4(""),this.isLoading=!1,this.collectionIdChange$=new V.X(""),this.parentIdChange$=new V.X(""),this.filterChanges$=new V.X([]),this.inheritFiltersChanges$=new V.X(!0),this.refresh$=new V.X(!0),this.destroy$=new _t.x}ngOnInit(){this.contentsCurrentPage$=this.route.queryParamMap.pipe((0,v.U)(s=>s.get("contentsPage")),(0,v.U)(s=>s?+s:1),(0,j.O)(1),(0,S.x)()),this.contentsItemsPerPage$=this.route.queryParamMap.pipe((0,v.U)(s=>s.get("contentsPerPage")),(0,v.U)(s=>s?+s:10),(0,j.O)(10),(0,S.x)());const n=this.filterTermControl.valueChanges.pipe((0,it.b)(250),(0,w.b)(()=>this.setContentsPageNumber(1)),(0,j.O)("")),e=this.filterChanges$.asObservable().pipe((0,Ke.h)(()=>this.previewUpdatedFilters),(0,w.b)(()=>this.setContentsPageNumber(1)),(0,j.O)([])),a=this.inheritFiltersChanges$.asObservable().pipe((0,Ke.h)(()=>null!=this.inheritFilters),(0,S.x)(),(0,w.b)(()=>this.setContentsPageNumber(1)),(0,j.O)(!0)),c=(0,I.a)(this.collectionIdChange$,this.parentIdChange$,this.contentsCurrentPage$,this.contentsItemsPerPage$,n,e,a,this.refresh$).pipe((0,Nt.R)(this.destroy$),(0,w.b)(()=>this.isLoading=!0),(0,it.b)(50),(0,b.w)(([s,p,_,f,T,Z,O])=>{const U=f,Y=(_-1)*f;if(Z.length&&this.previewUpdatedFilters){const M=T?{name:{contains:T}}:void 0;return this.dataService.collection.previewCollectionVariants({parentId:p,filters:Z,inheritFilters:O},{take:U,skip:Y,filter:M}).mapSingle(et=>et.previewCollectionVariants).pipe((0,Ca.K)(()=>(0,L.of)({items:[],totalItems:0})))}return s?this.dataService.collection.getCollectionContents(s,U,Y,T).mapSingle(M=>M.collection?.productVariants):(0,L.of)(null)}),(0,w.b)(()=>this.isLoading=!1),(0,dn.x)(()=>this.isLoading=!1));this.contents$=c.pipe((0,v.U)(s=>s?s.items:[])),this.contentsTotalItems$=c.pipe((0,v.U)(s=>s?s.totalItems:0))}ngOnChanges(n){"collectionId"in n&&this.collectionIdChange$.next(n.collectionId.currentValue),"parentId"in n&&this.parentIdChange$.next(n.parentId.currentValue),"inheritFilters"in n&&this.inheritFiltersChanges$.next(n.inheritFilters.currentValue),"updatedFilters"in n&&this.updatedFilters&&this.filterChanges$.next(this.updatedFilters)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}setContentsPageNumber(n){this.setParam("contentsPage",n)}setContentsItemsPerPage(n){this.setParam("contentsPerPage",n)}refresh(){this.refresh$.next(!0)}setParam(n,e){this.router.navigate(["./"],{relativeTo:this.route,queryParams:{[n]:e},queryParamsHandling:"merge",replaceUrl:!0})}}(Rt=Et).\u0275fac=function(n){return new(n||Rt)(t.Y36(P.gz),t.Y36(P.F0),t.Y36(l.DoR))},Rt.\u0275cmp=t.Xpm({type:Rt,selectors:[["vdr-collection-contents"]],contentQueries:function(n,e,a){if(1&n&&t.Suo(a,t.Rgc,7),2&n){let i;t.iGM(i=t.CRH())&&(e.headerTemplate=i.first)}},inputs:{collectionId:"collectionId",parentId:"parentId",inheritFilters:"inheritFilters",updatedFilters:"updatedFilters",previewUpdatedFilters:"previewUpdatedFilters"},features:[t.TTD],decls:27,vars:46,consts:[[1,"table-wrapper"],[1,"progress","loop"],[1,"header-title-row"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["id","collection-contents",3,"items","itemsPerPage","totalItems","currentPage","pageChange","itemsPerPageChange"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault"],["id","created-at",3,"heading","hiddenByDefault"],["id","updated-at",3,"heading","hiddenByDefault"],["id","name",3,"heading","optional"],["id","sku",3,"heading","optional"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0),t._UZ(1,"div",1),t.TgZ(2,"div",2),t.YNc(3,Ta,1,0,"ng-container",3),t.ALo(4,"async"),t.qZA(),t.TgZ(5,"vdr-data-table-2",4),t.NdJ("pageChange",function(i){return e.setContentsPageNumber(i)})("itemsPerPageChange",function(i){return e.setContentsItemsPerPage(i)}),t.ALo(6,"async"),t.ALo(7,"async"),t.ALo(8,"async"),t.ALo(9,"async"),t._UZ(10,"vdr-dt2-search",5),t.ALo(11,"translate"),t.TgZ(12,"vdr-dt2-column",6),t.ALo(13,"translate"),t.YNc(14,ba,1,1,"ng-template"),t.qZA(),t.TgZ(15,"vdr-dt2-column",7),t.ALo(16,"translate"),t.YNc(17,xa,2,4,"ng-template"),t.qZA(),t.TgZ(18,"vdr-dt2-column",8),t.ALo(19,"translate"),t.YNc(20,Aa,2,4,"ng-template"),t.qZA(),t.TgZ(21,"vdr-dt2-column",9),t.ALo(22,"translate"),t.YNc(23,Pa,4,4,"ng-template"),t.qZA(),t.TgZ(24,"vdr-dt2-column",10),t.ALo(25,"translate"),t.YNc(26,Oa,1,1,"ng-template"),t.qZA()()()),2&n&&(t.xp6(1),t.ekj("visible",e.isLoading),t.xp6(2),t.Q6J("ngTemplateOutlet",e.headerTemplate)("ngTemplateOutletContext",t.VKq(44,Ia,t.lcZ(4,22,e.contentsTotalItems$))),t.xp6(2),t.ekj("loading",e.isLoading),t.Q6J("items",t.lcZ(6,24,e.contents$))("itemsPerPage",t.lcZ(7,26,e.contentsItemsPerPage$))("totalItems",t.lcZ(8,28,e.contentsTotalItems$))("currentPage",t.lcZ(9,30,e.contentsCurrentPage$)),t.xp6(5),t.Q6J("searchTermControl",e.filterTermControl)("searchTermPlaceholder",t.lcZ(11,32,"catalog.filter-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(13,34,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(16,36,"common.created-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(19,38,"common.updated-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(22,40,"common.name"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(25,42,"catalog.sku"))("optional",!1))},dependencies:[h.qvL,g.tP,P.rH,mt.e,z.U,at.J,g.Ov,x.X$,ot.H],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] table{margin-top:-1px}vdr-data-table[_ngcontent-%COMP%]{opacity:1;transition:opacity .3s}vdr-data-table.loading[_ngcontent-%COMP%]{opacity:.5}.table-wrapper[_ngcontent-%COMP%]{position:relative}.progress[_ngcontent-%COMP%]{position:absolute;top:0;left:0;overflow:hidden;height:6px;opacity:0;transition:opacity .1s}.progress.visible[_ngcontent-%COMP%]{opacity:1}.sku[_ngcontent-%COMP%]{color:var(--color-text-200)}"],changeDetection:0});var Vt,Fa=m(56035),Da=m(43517),ya=m(92136),La=m(56346),Na=m(45556),ka=m(1250);const Ja=["collectionRow"];function Ua(o,n){if(1&o&&t._UZ(0,"vdr-data-table-filter-presets",17),2&o){const e=t.oxw();t.Q6J("filters",e.filters)("dataTableId",e.id)}}function Ma(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"th",18)(1,"div",19),t._UZ(2,"div",20),t.TgZ(3,"input",21),t.NdJ("change",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.onToggleAllClick())}),t.qZA()()()}if(2&o){const e=t.oxw();t.xp6(3),t.Q6J("checked",null==e.selectionManager?null:e.selectionManager.areAllCurrentItemsSelected())}}function Ra(o,n){1&o&&t._UZ(0,"clr-icon",31)}function Ea(o,n){1&o&&t._UZ(0,"clr-icon",32)}function Va(o,n){1&o&&t._UZ(0,"clr-icon",33)}function Sa(o,n){if(1&o&&(t.TgZ(0,"div",34),t._uU(1),t.qZA()),2&o){const e=t.oxw().ngIf;t.xp6(1),t.Oqu(e.sortOrder)}}function wa(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",25)(1,"button",26),t.NdJ("click",function(){const c=t.CHM(e).ngIf;return t.KtG(c.toggleSortOrder())}),t.YNc(2,Ra,1,0,"clr-icon",27),t.YNc(3,Ea,1,0,"clr-icon",28),t.YNc(4,Va,1,0,"clr-icon",29),t.qZA(),t.YNc(5,Sa,2,1,"div",30),t.qZA()}if(2&o){const e=n.ngIf;t.xp6(1),t.ekj("active",e.sortOrder),t.xp6(1),t.Q6J("ngIf",!e.sortOrder),t.xp6(1),t.Q6J("ngIf","ASC"===e.sortOrder),t.xp6(1),t.Q6J("ngIf","DESC"===e.sortOrder),t.xp6(1),t.Q6J("ngIf",e.sortOrder)}}function Qa(o,n){if(1&o&&(t.TgZ(0,"th")(1,"div",22)(2,"vdr-ui-extension-point",23)(3,"span"),t._uU(4),t.qZA()(),t.YNc(5,wa,6,6,"div",24),t.qZA()()),2&o){const e=n.$implicit,a=t.oxw();t.ekj("expand",e.expand),t.xp6(1),t.Q6J("ngClass",e.align),t.xp6(1),t.Q6J("locationId",a.id)("metadata",e.id)("topPx",-6)("leftPx",-24),t.xp6(2),t.Oqu(e.heading),t.xp6(1),t.Q6J("ngIf",e.sort)}}function qa(o,n){1&o&&t.GkF(0)}function $a(o,n){1&o&&t.GkF(0)}function Ya(o,n){if(1&o&&t._UZ(0,"vdr-data-table-filters",43),2&o){const e=n.$implicit,a=t.oxw(3);t.Q6J("filterWithValue",e)("filters",a.filters)}}function Ga(o,n){if(1&o&&t._UZ(0,"vdr-data-table-filters",44),2&o){const e=t.oxw(3);t.Q6J("filters",e.filters)}}function Ba(o,n){if(1&o&&(t.ynx(0),t.TgZ(1,"div",40),t.YNc(2,Ya,1,2,"vdr-data-table-filters",41),t.YNc(3,Ga,1,1,"vdr-data-table-filters",42),t._UZ(4,"vdr-add-filter-preset-button",17),t.qZA(),t.BQk()),2&o){const e=t.oxw(2);t.xp6(2),t.Q6J("ngForOf",e.filters.activeFilters),t.xp6(1),t.Q6J("ngIf",e.filters.length),t.xp6(1),t.Q6J("filters",e.filters)("dataTableId",e.id)}}function ja(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"tr")(1,"th",35)(2,"button",36),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.toggleSearchFilterRow())}),t.ALo(3,"translate"),t._UZ(4,"clr-icon",37),t.qZA(),t.TgZ(5,"div",38),t.YNc(6,qa,1,0,"ng-container",39),t.YNc(7,$a,1,0,"ng-container",39),t.YNc(8,Ba,5,4,"ng-container",9),t.qZA()()()}if(2&o){const e=t.oxw();t.xp6(1),t.ekj("active",e.showSearchFilterRow),t.uIk("colspan",e.visibleSortedColumns.length+(e.selectionManager?2:1)),t.xp6(1),t.ekj("active",e.showSearchFilterRow),t.Q6J("title",t.lcZ(3,11,"common.search-and-filter-list")),t.xp6(3),t.ekj("hidden",!e.showSearchFilterRow),t.xp6(1),t.Q6J("ngTemplateOutlet",null==e.searchComponent?null:e.searchComponent.template),t.xp6(1),t.Q6J("ngTemplateOutlet",e.customSearchTemplate),t.xp6(1),t.Q6J("ngIf",e.filters)}}const Ka=function(o,n){return{item:o,i:n,depth:0}};function Ha(o,n){if(1&o&&(t.ynx(0),t.GkF(1,45),t.BQk()),2&o){const e=n.$implicit,a=n.index;t.oxw();const i=t.MAs(24);t.xp6(1),t.Q6J("ngTemplateOutlet",i)("ngTemplateOutletContext",t.WLB(2,Ka,e,a))}}function Wa(o,n){if(1&o&&(t.TgZ(0,"tr")(1,"td"),t._UZ(2,"vdr-empty-placeholder",46),t.qZA()()),2&o){const e=t.oxw();t.xp6(1),t.uIk("colspan",e.visibleSortedColumns.length+(e.selectionManager?2:1)),t.xp6(1),t.Q6J("emptyStateLabel",e.emptyStateLabel)}}function za(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-items-per-page-controls",47),t.NdJ("itemsPerPageChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.itemsPerPageChange.emit(i))}),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("itemsPerPage",e.itemsPerPage)}}const Xa=function(o,n,e){return{currentStart:o,currentEnd:n,totalItems:e}};function ti(o,n){if(1&o&&(t.TgZ(0,"div",48),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o){const e=t.oxw();t.xp6(1),t.hij(" ",t.xi3(2,1,"common.total-items",t.kEZ(4,Xa,e.currentStart,e.currentEnd,e.totalItems))," ")}}function ei(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-pagination-controls",49),t.NdJ("pageChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.pageChange.emit(i))}),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("id",e.id)("currentPage",e.currentPage)("itemsPerPage",e.itemsPerPage)("totalItems",e.totalItems)}}function ni(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"td",18)(1,"div",19)(2,"div",55),t.ALo(3,"translate"),t._UZ(4,"clr-icon",56),t.qZA(),t.TgZ(5,"input",57),t.NdJ("click",function(i){t.CHM(e);const c=t.oxw().item,s=t.oxw();return t.KtG(s.onRowClick(c,i))}),t.qZA()()()}if(2&o){const e=t.oxw().item,a=t.oxw();t.ekj("active",a.activeIndex===a.absoluteIndex[e.id]),t.xp6(2),t.Q6J("title",t.lcZ(3,4,"catalog.reorder-collection")),t.xp6(3),t.Q6J("checked",null==a.selectionManager?null:a.selectionManager.isSelected(e))}}function oi(o,n){1&o&&t.GkF(0)}const ai=function(o){return{rowItem:o}};function ii(o,n){if(1&o&&(t.ynx(0),t.YNc(1,oi,1,0,"ng-container",60),t.BQk()),2&o){const e=n.ngIf,a=t.oxw(2).item;t.xp6(1),t.Q6J("ngComponentOutlet",e.config.component)("ngComponentOutletInputs",t.VKq(3,ai,a))("ngComponentOutletInjector",e.injector)}}function ri(o,n){1&o&&t.GkF(0)}const vn=function(o,n){return{item:o,depth:n}};function ci(o,n){if(1&o&&t.YNc(0,ri,1,0,"ng-container",61),2&o){const e=t.oxw().$implicit,a=t.oxw(),i=a.item,c=a.depth;t.Q6J("ngTemplateOutlet",e.template)("ngTemplateOutletContext",t.WLB(2,vn,i,c))}}function li(o,n){if(1&o&&(t.TgZ(0,"td")(1,"div",22),t.YNc(2,ii,2,5,"ng-container",58),t.YNc(3,ci,1,5,"ng-template",null,59,t.W1O),t.qZA()()),2&o){const e=n.$implicit,a=t.MAs(4),i=t.oxw().item,c=t.oxw();t.ekj("active",c.activeIndex===c.absoluteIndex[i.id]),t.xp6(1),t.Q6J("ngClass",e.align),t.xp6(1),t.Q6J("ngIf",c.customComponents.get(e.id))("ngIfElse",a)}}function si(o,n){1&o&&t.GkF(0)}function di(o,n){if(1&o&&(t.ynx(0),t.YNc(1,si,1,0,"ng-container",61),t.BQk()),2&o){const e=n.$implicit,a=t.oxw().depth;t.oxw();const i=t.MAs(24);t.xp6(1),t.Q6J("ngTemplateOutlet",i)("ngTemplateOutletContext",t.WLB(2,vn,e,a+1))}}const pi=function(o,n){return{depth:o,collection:n}};function ui(o,n){if(1&o&&(t.TgZ(0,"tr",50,51),t.YNc(2,ni,6,6,"td",52),t.YNc(3,li,5,5,"td",53),t._UZ(4,"td"),t.qZA(),t.YNc(5,di,2,5,"ng-container",54)),2&o){const e=n.item,a=n.depth,i=t.oxw();t.Q6J("cdkDragData",t.WLB(6,pi,a,e)),t.xp6(2),t.Q6J("ngIf",i.selectionManager),t.xp6(1),t.Q6J("ngForOf",i.visibleSortedColumns),t.xp6(1),t.ekj("active",i.activeIndex===i.absoluteIndex[e.id]),t.xp6(1),t.Q6J("ngForOf",i.getSubcollections(e))}}const mi=[[["vdr-bulk-action-menu"]]],_i=function(o,n,e,a){return{itemsPerPage:o,currentPage:n,totalItems:e,id:a}};class St extends l.eJ5{constructor(n,e,a,i){super(n,e,a),this.changeDetectorRef=n,this.localStorageService=e,this.dataService=a,this.dragDrop=i,this.changeOrder=new t.vpe,this.dragRefs=[],this.absoluteIndex={},this.sortPredicate=(c,s)=>this.dropList.getSortedItems()[c]?.data.collection.parentId===s.data.collection.parentId}ngOnChanges(n){if(super.ngOnChanges(n),n.subCollections||n.items){const e=[];for(const a of this.items??[]){e.push(a);const i=this.getSubcollections(a);e.push(...i.flat())}e.forEach((a,i)=>this.absoluteIndex[a.id]=i)}}ngAfterViewInit(){this.collectionRowList.changes.subscribe(n=>{this.dropList.getSortedItems().forEach(e=>this.dropList.removeItem(e));for(const e of n.toArray())e.dropContainer=this.dropList,e._dragRef._withDropContainer(this.dropList._dropListRef),this.dropList.addItem(e)})}getSubcollections(n){return this.subCollections?.filter(e=>e.parentId===n.id)??[]}onDrop(n){const e=2===n.item.data.collection.breadcrumbs.length,a=e?(this.currentPage-1)*this.itemsPerPage:0,i=n.item.data.collection.parentId,c=this.items.findIndex(p=>p.id===i),s=a+n.currentIndex-c-1;if(this.changeOrder.emit({collectionId:n.item.data.collection.id,index:s,parentId:n.item.data.collection.parentId}),e)this.items=[...this.items],this.items.splice(n.previousIndex,1),this.items.splice(n.currentIndex,0,n.item.data.collection);else{const p=this.items.find(_=>_.id===i);if(p){const _=this.getSubcollections(p),f=a+n.previousIndex-c-1;_.splice(f,1),_.splice(n.currentIndex,0,n.item.data.collection)}}this.changeDetectorRef.markForCheck()}}(Vt=St).\u0275fac=function(n){return new(n||Vt)(t.Y36(t.sBO),t.Y36(l.n2A),t.Y36(l.DoR),t.Y36(N.v0))},Vt.\u0275cmp=t.Xpm({type:Vt,selectors:[["vdr-collection-data-table"]],viewQuery:function(n,e){if(1&n&&(t.Gf(N.Wj,7),t.Gf(Ja,5,N.Zt)),2&n){let a;t.iGM(a=t.CRH())&&(e.dropList=a.first),t.iGM(a=t.CRH())&&(e.collectionRowList=a)}},inputs:{subCollections:"subCollections"},outputs:{changeOrder:"changeOrder"},features:[t.qOj,t.TTD],ngContentSelectors:["vdr-bulk-action-menu"],decls:25,vars:27,consts:[[3,"filters","dataTableId",4,"ngIf"],[1,"table-wrapper"],[1,"bulk-actions"],[1,""],[1,"heading-row"],["class","selection-col",4,"ngIf"],[3,"expand",4,"ngFor","ngForOf"],[1,"column-picker"],[3,"uiLanguage","columns","reorder","resetColumns"],[4,"ngIf"],["cdkDropList","","cdkDropListLockAxis","y",3,"cdkDropListSortPredicate","cdkDropListDropped"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"table-footer"],[3,"itemsPerPage","itemsPerPageChange",4,"ngIf"],["class","p5 total-items-count",4,"ngIf"],[3,"id","currentPage","itemsPerPage","totalItems","pageChange",4,"ngIf"],["collectionRowTmp",""],[3,"filters","dataTableId"],[1,"selection-col"],[1,"flex"],[1,"drag-handle-spacer"],["type","checkbox","clrCheckbox","",3,"checked","change"],[1,"cell-content",3,"ngClass"],["api","dataTable","display","block",3,"locationId","metadata","topPx","leftPx"],["class","sort-toggle",4,"ngIf"],[1,"sort-toggle"],[3,"click"],["shape","two-way-arrows left",4,"ngIf"],["shape","arrow up",4,"ngIf"],["shape","arrow down",4,"ngIf"],["class","sort-label",4,"ngIf"],["shape","two-way-arrows left"],["shape","arrow up"],["shape","arrow down"],[1,"sort-label"],[1,"filter-row"],[1,"button-ghost","toggle-search-filter-row",3,"title","click"],["shape","search"],[1,"filter-row-wrapper"],[4,"ngTemplateOutlet"],[1,"filters"],["class","mt-1",3,"filterWithValue","filters",4,"ngFor","ngForOf"],["class","mt-1",3,"filters",4,"ngIf"],[1,"mt-1",3,"filterWithValue","filters"],[1,"mt-1",3,"filters"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"emptyStateLabel"],[3,"itemsPerPage","itemsPerPageChange"],[1,"p5","total-items-count"],[3,"id","currentPage","itemsPerPage","totalItems","pageChange"],["cdkDrag","","cdkDragBoundary","tbody",3,"cdkDragData"],["collectionRow",""],["class","selection-col",3,"active",4,"ngIf"],[3,"active",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],["cdkDragHandle","",1,"drag-handle",3,"title"],["shape","drag-handle"],["type","checkbox","clrCheckbox","",3,"checked","click"],[4,"ngIf","ngIfElse"],["defaultComponent",""],[4,"ngComponentOutlet","ngComponentOutletInputs","ngComponentOutletInjector"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(n,e){1&n&&(t.F$t(mi),t.YNc(0,Ua,1,2,"vdr-data-table-filter-presets",0),t.TgZ(1,"div",1)(2,"div",2),t.Hsn(3),t.qZA(),t.TgZ(4,"table",3)(5,"thead")(6,"tr",4),t.YNc(7,Ma,4,1,"th",5),t.YNc(8,Qa,6,9,"th",6),t.TgZ(9,"th")(10,"div",7)(11,"vdr-data-table-colum-picker",8),t.NdJ("reorder",function(i){return e.onColumnReorder(i)})("resetColumns",function(){return e.onColumnsReset()}),t.ALo(12,"async"),t.qZA()()()(),t.YNc(13,ja,9,13,"tr",9),t.qZA(),t.TgZ(14,"tbody",10),t.NdJ("cdkDropListDropped",function(i){return e.onDrop(i)}),t.YNc(15,Ha,2,5,"ng-container",11),t.ALo(16,"paginate"),t.ynx(17),t.YNc(18,Wa,3,2,"tr",9),t.BQk(),t.qZA()()(),t.TgZ(19,"div",12),t.YNc(20,za,1,1,"vdr-items-per-page-controls",13),t.YNc(21,ti,3,8,"div",14),t.YNc(22,ei,1,4,"vdr-pagination-controls",15),t.qZA(),t.YNc(23,ui,6,9,"ng-template",null,16,t.W1O)),2&n&&(t.Q6J("ngIf",e.filters),t.xp6(4),t.ekj("no-select",e.disableSelect),t.xp6(1),t.ekj("items-selected",null==e.selectionManager?null:e.selectionManager.selection.length),t.xp6(2),t.Q6J("ngIf",e.selectionManager),t.xp6(1),t.Q6J("ngForOf",e.visibleSortedColumns),t.xp6(3),t.Q6J("uiLanguage",t.lcZ(12,17,e.uiLanguage$))("columns",e.sortedColumns),t.xp6(2),t.Q6J("ngIf",e.searchComponent||e.customSearchTemplate||(null==e.filters?null:e.filters.length)),t.xp6(1),t.Q6J("cdkDropListSortPredicate",e.sortPredicate),t.xp6(1),t.Q6J("ngForOf",t.xi3(16,19,e.items,t.l5B(22,_i,e.itemsPerPage,e.currentPage,e.totalItems,e.id)))("ngForTrackBy",e.trackByFn),t.xp6(3),t.Q6J("ngIf",!(null!=e.items&&e.items.length)),t.xp6(2),t.Q6J("ngIf",e.totalItems),t.xp6(1),t.Q6J("ngIf",e.totalItems),t.xp6(1),t.Q6J("ngIf",e.totalItems))},dependencies:[h.q0d,h.qvL,h.KKC,g.mk,g.$G,g.sg,g.O5,g.tP,N.Wj,N.Zt,N.Bh,Ge.w,Be.L,y.y,Fa.j,Da.r,ya.I,La.L,Na.R,ka.t,g.Ov,Te._s,x.X$],styles:["[_nghost-%COMP%]{display:block;max-width:100%;position:relative;margin-bottom:calc(var(--space-unit) * 4);container-type:inline-size}th[_ngcontent-%COMP%]{border-bottom:1px solid var(--color-table-header-border);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;position:relative;white-space:nowrap}th[_ngcontent-%COMP%], td[_ngcontent-%COMP%]{padding:calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 1)}tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-of-type, tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-of-type{text-align:center}@media screen and (min-width: 992px){tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-of-type, tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-of-type{padding-inline-start:var(--surface-margin-left);text-align:start}}th[_ngcontent-%COMP%]:last-of-type, td[_ngcontent-%COMP%]:last-of-type{border-inline-end:1px solid var(--color-table-header-border)}tr[_ngcontent-%COMP%]:first-of-type th[_ngcontent-%COMP%]:last-of-type{border-image:linear-gradient(0deg,var(--color-table-header-border),transparent) 1}tr[_ngcontent-%COMP%]:last-of-type td[_ngcontent-%COMP%]:last-of-type{border-image:linear-gradient(180deg,var(--color-table-header-border),transparent) 1}tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border-bottom:1px solid var(--color-table-row-separator)}tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background-color:var(--color-table-row-hover-bg)}.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 5);background-color:var(--color-surface-bg);z-index:10;display:flex;position:absolute;top:5px;height:40px}@media screen and (min-width: 992px){.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 8.5)}}@media screen and (min-width: 1280px){.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 10.5)}}.table-wrapper[_ngcontent-%COMP%]{display:block;overflow-y:hidden;overflow-x:auto;position:relative;width:100%;max-width:var(--surface-width)}table[_ngcontent-%COMP%]{width:100%}table.no-select[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.column-picker[_ngcontent-%COMP%]{width:24px}.sort-toggle[_ngcontent-%COMP%]{display:flex;align-items:center;margin-inline-start:calc(var(--space-unit) * .5)}.sort-toggle[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border:0;border-radius:var(--border-radius-lg);color:var(--color-weight-500);padding:0 2px;cursor:pointer;background-color:transparent}.sort-toggle[_ngcontent-%COMP%] button.active[_ngcontent-%COMP%]{color:var(--color-primary-700)}.sort-toggle[_ngcontent-%COMP%] .sort-label[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * .5);font-size:10px;color:var(--color-primary-600);font-weight:400}.toggle-search-filter-row[_ngcontent-%COMP%]{position:absolute;top:-12px;left:4px}@media screen and (min-width: 1280px){.toggle-search-filter-row[_ngcontent-%COMP%]{left:8px}}.toggle-search-filter-row.active[_ngcontent-%COMP%]{background-color:var(--color-primary-700);color:var(--color-primary-100);border-color:var(--color-primary-700)}th.filter-row[_ngcontent-%COMP%]{position:relative;font-size:var(--font-size-base);font-weight:400;background-color:var(--color-weight-100);box-shadow:var(--data-table-filter-box-shadow);border-left-width:0;border-right-width:0;text-align:initial;padding:0}th.filter-row[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:100%}th.filter-row.active[_ngcontent-%COMP%]{border-bottom:1px solid var(--color-table-header-border)}th.filter-row[_ngcontent-%COMP%] .filters[_ngcontent-%COMP%]{margin-top:calc(var(--space-unit) * 1);display:flex;flex-wrap:wrap;gap:calc(var(--space-unit) * .5)}.filter-row-wrapper[_ngcontent-%COMP%]{padding:calc(var(--space-unit) * 4);padding-inline-start:0;max-height:150px;transition:max-height .2s,padding .2s,opacity .2s}.filter-row-wrapper.hidden[_ngcontent-%COMP%]{max-height:0px;padding-top:0;padding-bottom:0;overflow:hidden;opacity:0}.cell-link[_ngcontent-%COMP%]{display:block;width:100%;height:100%}td.active[_ngcontent-%COMP%]{background-color:var(--color-table-row-active-bg)}.cell-content[_ngcontent-%COMP%]{display:flex;align-items:center;line-height:var(--font-size-sm);color:var(--color-weight-700)}.cell-content.left[_ngcontent-%COMP%]{justify-content:flex-start}.cell-content.center[_ngcontent-%COMP%]{justify-content:center}.cell-content.right[_ngcontent-%COMP%]{justify-content:flex-end}.selection-col[_ngcontent-%COMP%]{width:calc(var(--space-unit) * 8)}vdr-empty-placeholder[_ngcontent-%COMP%]{width:100%}.table-footer[_ngcontent-%COMP%]{display:flex;align-items:baseline;justify-content:space-between;margin-top:var(--space-unit);margin-inline-start:var(--surface-margin-left);margin-inline-end:var(--space-unit)}.total-items-count[_ngcontent-%COMP%]{font-size:var(--font-size-xs)}@container (max-width: 500px){.total-items-count[_ngcontent-%COMP%]{display:none}}",".bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 6);background-color:var(--color-surface-bg)}@media screen and (min-width: 992px){.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 9.5)}}@media screen and (min-width: 1280px){.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 11.5)}}.drag-handle[_ngcontent-%COMP%]{cursor:grab}.drag-handle-spacer[_ngcontent-%COMP%]{width:16px}.cdk-drop-list-dragging[_ngcontent-%COMP%] .cdk-drag[_ngcontent-%COMP%]{transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-animating[_ngcontent-%COMP%]{transition:transform .3s cubic-bezier(0,0,.2,1)}.cdk-drag-preview[_ngcontent-%COMP%]{opacity:0}.cdk-drag-placeholder[_ngcontent-%COMP%]{background-color:var(--color-primary-100)!important}"],changeDetection:0});var wt,fi=m(3260),hi=m(77336),Cn=m(90200),Pe=m(4981),Oe=m(47432),Ie=m(45655),Fe=m(99274);const vi=["collectionContents"];function Ci(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",31),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.create())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.create")," ")}}function Ti(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",31),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("disabled",(e.detailForm.invalid||e.detailForm.pristine)&&!e.assetsChanged()),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}function bi(o,n){if(1&o&&t.YNc(0,Ti,3,4,"button",32),2&o){const e=t.oxw();t.Q6J("vdrIfPermissions",e.updatePermission)}}function xi(o,n){1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.public")))}function Ai(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.private"))}function Zi(o,n){if(1&o&&(t.TgZ(0,"vdr-card"),t._UZ(1,"vdr-page-entity-info",33),t.qZA()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("entity",e)}}const Pi=function(){return["/catalog/collections"]};function Oi(o,n){1&o&&(t.TgZ(0,"a",38),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Pi)),t.xp6(1),t.Oqu(t.lcZ(2,2,"catalog.root-collection")))}const Ii=function(o){return["/catalog/collections",o]};function Fi(o,n){if(1&o&&(t.TgZ(0,"a",38),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o){const e=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(4,Ii,e.id)),t.xp6(1),t.Oqu(t.lcZ(2,2,e.name))}}function Di(o,n){if(1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o){const e=t.oxw().$implicit;t.xp6(1),t.Oqu(t.lcZ(2,1,e.name))}}function yi(o,n){if(1&o&&(t.TgZ(0,"li"),t.YNc(1,Oi,3,5,"a",37),t.YNc(2,Fi,3,6,"a",37),t.YNc(3,Di,3,3,"ng-container",10),t.qZA()),2&o){const e=n.first,a=n.last;t.xp6(1),t.Q6J("ngIf",e),t.xp6(1),t.Q6J("ngIf",!e&&!a),t.xp6(1),t.Q6J("ngIf",a)}}function Li(o,n){if(1&o&&(t.TgZ(0,"vdr-page-block")(1,"nav",34)(2,"ul",35),t.YNc(3,yi,4,3,"li",36),t.qZA()()()),2&o){const e=n.ngIf;t.xp6(3),t.Q6J("ngForOf",e.breadcrumbs)}}function Ni(o,n){if(1&o&&(t.TgZ(0,"vdr-card",39),t.ALo(1,"translate"),t._UZ(2,"vdr-tabbed-custom-fields",40),t.ALo(3,"hasPermission"),t.qZA()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.detailForm.get("customFields"))("readonly",!t.lcZ(3,6,e.updatePermission))}}function ki(o,n){1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.inherit-filters-from-parent")))}function Ji(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.do-not-inherit-filters"))}function Ui(o,n){if(1&o){const e=t.EpF();t.ynx(0),t.TgZ(1,"vdr-configurable-input",41),t.NdJ("remove",function(){const c=t.CHM(e).index,s=t.oxw();return t.KtG(s.removeFilter(c))}),t.ALo(2,"hasPermission"),t.qZA(),t.BQk()}if(2&o){const e=n.$implicit,a=n.index,i=t.oxw();t.xp6(1),t.Q6J("position",a)("operation",e)("operationDefinition",i.getFilterDefinition(e))("formControlName",a)("readonly",!t.lcZ(2,5,i.updatePermission))}}function Mi(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",47),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.addFilter(c))}),t._uU(1),t.qZA()}if(2&o){const e=n.$implicit;t.xp6(1),t.hij(" ",e.description," ")}}function Ri(o,n){if(1&o&&(t.TgZ(0,"div")(1,"vdr-dropdown")(2,"button",42),t._UZ(3,"clr-icon",43),t.TgZ(4,"span"),t._uU(5),t.ALo(6,"translate"),t.qZA(),t._UZ(7,"clr-icon",44),t.qZA(),t.TgZ(8,"vdr-dropdown-menu",45),t.YNc(9,Mi,2,1,"button",46),t.qZA()()()),2&o){const e=t.oxw();t.xp6(5),t.Oqu(t.lcZ(6,2,"marketing.add-condition")),t.xp6(4),t.Q6J("ngForOf",e.allFilters)}}const Ei=function(o){return{count:o}},Vi=function(){return{standalone:!0}};function Si(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",48)(1,"div",49),t._uU(2),t.ALo(3,"translate"),t.ALo(4,"translate"),t.qZA(),t.TgZ(5,"clr-checkbox-wrapper")(6,"input",50),t.NdJ("ngModelChange",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.toggleLivePreview())}),t.qZA(),t.TgZ(7,"label"),t._uU(8),t.ALo(9,"translate"),t.qZA()()()}if(2&o){const e=n.$implicit,a=t.oxw();let i,c;t.xp6(2),t.AsE(" ",t.lcZ(3,8,"catalog.collection-contents")," (",t.xi3(4,10,"common.results-count",t.VKq(15,Ei,e)),") "),t.xp6(3),t.ekj("disabled",null==(i=a.detailForm.get("filters"))?null:i.pristine),t.xp6(1),t.Q6J("ngModelOptions",t.DdM(17,Vi))("disabled",null==(c=a.detailForm.get("filters"))?null:c.pristine)("ngModel",a.livePreview),t.xp6(2),t.Oqu(t.lcZ(9,13,"catalog.live-preview-contents"))}}const wi=function(o){return{pattern:o}},Qi=D.Ps`
75
+ `;var Mt,Ze=m(92312);function ma(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.edit-facet-values"),"\n")}function _a(o,n){if(1&o&&(t.TgZ(0,"div",14),t._uU(1),t.qZA()),2&o){const e=t.oxw().$implicit;t.xp6(1),t.Oqu(e.sku)}}function ga(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-facet-value-chip",15),t.NdJ("remove",function(){const c=t.CHM(e).$implicit,s=t.oxw().$implicit,p=t.oxw(2);return t.KtG(p.removeFacetValue(s,c.id))}),t.qZA()}if(2&o){const e=n.$implicit;t.Q6J("facetValue",e)}}function fa(o,n){if(1&o&&(t.TgZ(0,"tr")(1,"td",10)(2,"div"),t._uU(3),t.qZA(),t.YNc(4,_a,2,1,"div",11),t.qZA(),t.TgZ(5,"td",12),t.YNc(6,ga,1,1,"vdr-facet-value-chip",13),t.qZA()()),2&o){const e=n.$implicit;t.xp6(3),t.Oqu(e.name),t.xp6(1),t.Q6J("ngIf",e.sku),t.xp6(2),t.Q6J("ngForOf",e.facetValues)}}function ha(o,n){if(1&o&&(t.TgZ(0,"table",8)(1,"tbody"),t.YNc(2,fa,7,3,"tr",9),t.qZA()()),2&o){const e=t.oxw();t.xp6(2),t.Q6J("ngForOf",e.items)}}function va(o,n){1&o&&(t.TgZ(0,"div",16),t._UZ(1,"clr-spinner"),t.qZA())}function Ca(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",17),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",18),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.addFacetValues())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",0===e.selectedValues.length&&!1===e.facetValuesRemoved),t.xp6(1),t.hij(" ",t.lcZ(5,5,"common.update")," ")}}class Rt{constructor(n,e){this.dataService=n,this.changeDetectorRef=e,this.mode="product",this.state="loading",this.selectedValues=[],this.items=[],this.facetValuesRemoved=!1}ngOnInit(){const n="product"===this.mode?this.dataService.query(_n,{ids:this.ids??[]}).mapSingle(({products:e})=>e.items.map(a=>({...a,facetValues:[...a.facetValues]}))):this.dataService.query(gn,{ids:this.ids??[]}).mapSingle(({productVariants:e})=>e.items.map(a=>({...a,facetValues:[...a.facetValues]})));this.subscription=n.subscribe({next:e=>{this.items=e,this.state="ready",this.changeDetectorRef.markForCheck()}})}ngOnDestroy(){this.subscription?.unsubscribe()}cancel(){this.resolveWith()}removeFacetValue(n,e){n.facetValues=n.facetValues.filter(a=>a.id!==e),this.facetValuesRemoved=!0}addFacetValues(){const n=this.selectedValues.map(a=>a.id);return this.state="saving",("product"===this.mode?this.dataService.mutate(fn,{input:this.items?.map(a=>({id:a.id,facetValueIds:(0,N.T)([...a.facetValues.map(i=>i.id),...n])}))}):this.dataService.mutate(hn,{input:this.items?.map(a=>({id:a.id,facetValueIds:(0,N.T)([...a.facetValues.map(i=>i.id),...n])}))})).subscribe(a=>{this.resolveWith(this.selectedValues)})}}(Mt=Rt).\u0275fac=function(n){return new(n||Mt)(t.Y36(l.DoR),t.Y36(t.sBO))},Mt.\u0275cmp=t.Xpm({type:Mt,selectors:[["vdr-bulk-add-facet-values-dialog"]],decls:11,vars:5,consts:[["vdrDialogTitle",""],[1,"flex"],[1,"flex","center"],[1,"mr2"],[3,"selectedValuesChange"],["class","table",4,"ngIf","ngIfElse"],["placeholder",""],["vdrDialogButtons",""],[1,"table"],[4,"ngFor","ngForOf"],[1,"left","align-middle"],["class","sku",4,"ngIf"],[1,"left"],[3,"facetValue","remove",4,"ngFor","ngForOf"],[1,"sku"],[3,"facetValue","remove"],[1,"loading"],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){if(1&n&&(t.YNc(0,ma,2,3,"ng-template",0),t.TgZ(1,"div",1)(2,"div",2)(3,"div",3),t._uU(4),t.ALo(5,"translate"),t.qZA(),t.TgZ(6,"vdr-facet-value-selector",4),t.NdJ("selectedValuesChange",function(i){return e.selectedValues=i}),t.qZA()()(),t.YNc(7,ha,3,1,"table",5),t.YNc(8,va,2,0,"ng-template",null,6,t.W1O),t.YNc(10,Ca,6,7,"ng-template",7)),2&n){const a=t.MAs(9);t.xp6(4),t.hij(" ",t.lcZ(5,3,"catalog.add-facet-value")," "),t.xp6(3),t.Q6J("ngIf","loading"!==e.state)("ngIfElse",a)}},dependencies:[h.vNO,g.sg,g.O5,sn.$,Ze.q,X.n,K.q,x.X$],styles:[".loading[_ngcontent-%COMP%]{min-height:25vh;display:flex;justify-content:center;align-items:center}.sku[_ngcontent-%COMP%]{color:var(--color-text-300)}"],changeDetection:0});var Et,S=m(24),Ke=m(22727),Ta=m(15948);function ba(o,n){1&o&&t.GkF(0)}function xa(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function Aa(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function Za(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}const Pa=function(o){return["/catalog/products",o]};function Oa(o,n){if(1&o&&(t.TgZ(0,"a",11)(1,"span"),t._uU(2),t.qZA(),t._UZ(3,"clr-icon",12),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.VKq(2,Pa,e.productId)),t.xp6(2),t.Oqu(e.name)}}function Ia(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.sku," ")}}const Fa=function(o){return{$implicit:o}};class Vt{constructor(n,e,a){this.route=n,this.router=e,this.dataService=a,this.previewUpdatedFilters=!1,this.filterTermControl=new d.p4(""),this.isLoading=!1,this.collectionIdChange$=new V.X(""),this.parentIdChange$=new V.X(""),this.filterChanges$=new V.X([]),this.inheritFiltersChanges$=new V.X(!0),this.refresh$=new V.X(!0),this.destroy$=new _t.x}ngOnInit(){this.contentsCurrentPage$=this.route.queryParamMap.pipe((0,v.U)(s=>s.get("contentsPage")),(0,v.U)(s=>s?+s:1),(0,j.O)(1),(0,S.x)()),this.contentsItemsPerPage$=this.route.queryParamMap.pipe((0,v.U)(s=>s.get("contentsPerPage")),(0,v.U)(s=>s?+s:10),(0,j.O)(10),(0,S.x)());const n=this.filterTermControl.valueChanges.pipe((0,it.b)(250),(0,w.b)(()=>this.setContentsPageNumber(1)),(0,j.O)("")),e=this.filterChanges$.asObservable().pipe((0,Ke.h)(()=>this.previewUpdatedFilters),(0,w.b)(()=>this.setContentsPageNumber(1)),(0,j.O)([])),a=this.inheritFiltersChanges$.asObservable().pipe((0,Ke.h)(()=>null!=this.inheritFilters),(0,S.x)(),(0,w.b)(()=>this.setContentsPageNumber(1)),(0,j.O)(!0)),c=(0,I.a)(this.collectionIdChange$,this.parentIdChange$,this.contentsCurrentPage$,this.contentsItemsPerPage$,n,e,a,this.refresh$).pipe((0,kt.R)(this.destroy$),(0,w.b)(()=>this.isLoading=!0),(0,it.b)(50),(0,b.w)(([s,p,_,f,T,Z,O])=>{const U=f,Y=(_-1)*f;if(Z.length&&this.previewUpdatedFilters){const M=T?{name:{contains:T}}:void 0;return this.dataService.collection.previewCollectionVariants({parentId:p,filters:Z,inheritFilters:O},{take:U,skip:Y,filter:M}).mapSingle(et=>et.previewCollectionVariants).pipe((0,Ta.K)(()=>(0,L.of)({items:[],totalItems:0})))}return s?this.dataService.collection.getCollectionContents(s,U,Y,T).mapSingle(M=>M.collection?.productVariants):(0,L.of)(null)}),(0,w.b)(()=>this.isLoading=!1),(0,dn.x)(()=>this.isLoading=!1));this.contents$=c.pipe((0,v.U)(s=>s?s.items:[])),this.contentsTotalItems$=c.pipe((0,v.U)(s=>s?s.totalItems:0))}ngOnChanges(n){"collectionId"in n&&this.collectionIdChange$.next(n.collectionId.currentValue),"parentId"in n&&this.parentIdChange$.next(n.parentId.currentValue),"inheritFilters"in n&&this.inheritFiltersChanges$.next(n.inheritFilters.currentValue),"updatedFilters"in n&&this.updatedFilters&&this.filterChanges$.next(this.updatedFilters)}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}setContentsPageNumber(n){this.setParam("contentsPage",n)}setContentsItemsPerPage(n){this.setParam("contentsPerPage",n)}refresh(){this.refresh$.next(!0)}setParam(n,e){this.router.navigate(["./"],{relativeTo:this.route,queryParams:{[n]:e},queryParamsHandling:"merge",replaceUrl:!0})}}(Et=Vt).\u0275fac=function(n){return new(n||Et)(t.Y36(P.gz),t.Y36(P.F0),t.Y36(l.DoR))},Et.\u0275cmp=t.Xpm({type:Et,selectors:[["vdr-collection-contents"]],contentQueries:function(n,e,a){if(1&n&&t.Suo(a,t.Rgc,7),2&n){let i;t.iGM(i=t.CRH())&&(e.headerTemplate=i.first)}},inputs:{collectionId:"collectionId",parentId:"parentId",inheritFilters:"inheritFilters",updatedFilters:"updatedFilters",previewUpdatedFilters:"previewUpdatedFilters"},features:[t.TTD],decls:27,vars:46,consts:[[1,"table-wrapper"],[1,"progress","loop"],[1,"header-title-row"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["id","collection-contents",3,"items","itemsPerPage","totalItems","currentPage","pageChange","itemsPerPageChange"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault"],["id","created-at",3,"heading","hiddenByDefault"],["id","updated-at",3,"heading","hiddenByDefault"],["id","name",3,"heading","optional"],["id","sku",3,"heading","optional"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0),t._UZ(1,"div",1),t.TgZ(2,"div",2),t.YNc(3,ba,1,0,"ng-container",3),t.ALo(4,"async"),t.qZA(),t.TgZ(5,"vdr-data-table-2",4),t.NdJ("pageChange",function(i){return e.setContentsPageNumber(i)})("itemsPerPageChange",function(i){return e.setContentsItemsPerPage(i)}),t.ALo(6,"async"),t.ALo(7,"async"),t.ALo(8,"async"),t.ALo(9,"async"),t._UZ(10,"vdr-dt2-search",5),t.ALo(11,"translate"),t.TgZ(12,"vdr-dt2-column",6),t.ALo(13,"translate"),t.YNc(14,xa,1,1,"ng-template"),t.qZA(),t.TgZ(15,"vdr-dt2-column",7),t.ALo(16,"translate"),t.YNc(17,Aa,2,4,"ng-template"),t.qZA(),t.TgZ(18,"vdr-dt2-column",8),t.ALo(19,"translate"),t.YNc(20,Za,2,4,"ng-template"),t.qZA(),t.TgZ(21,"vdr-dt2-column",9),t.ALo(22,"translate"),t.YNc(23,Oa,4,4,"ng-template"),t.qZA(),t.TgZ(24,"vdr-dt2-column",10),t.ALo(25,"translate"),t.YNc(26,Ia,1,1,"ng-template"),t.qZA()()()),2&n&&(t.xp6(1),t.ekj("visible",e.isLoading),t.xp6(2),t.Q6J("ngTemplateOutlet",e.headerTemplate)("ngTemplateOutletContext",t.VKq(44,Fa,t.lcZ(4,22,e.contentsTotalItems$))),t.xp6(2),t.ekj("loading",e.isLoading),t.Q6J("items",t.lcZ(6,24,e.contents$))("itemsPerPage",t.lcZ(7,26,e.contentsItemsPerPage$))("totalItems",t.lcZ(8,28,e.contentsTotalItems$))("currentPage",t.lcZ(9,30,e.contentsCurrentPage$)),t.xp6(5),t.Q6J("searchTermControl",e.filterTermControl)("searchTermPlaceholder",t.lcZ(11,32,"catalog.filter-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(13,34,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(16,36,"common.created-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(19,38,"common.updated-at"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(22,40,"common.name"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(25,42,"catalog.sku"))("optional",!1))},dependencies:[h.qvL,g.tP,P.rH,mt.e,z.U,at.J,g.Ov,x.X$,ot.H],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] table{margin-top:-1px}vdr-data-table[_ngcontent-%COMP%]{opacity:1;transition:opacity .3s}vdr-data-table.loading[_ngcontent-%COMP%]{opacity:.5}.table-wrapper[_ngcontent-%COMP%]{position:relative}.progress[_ngcontent-%COMP%]{position:absolute;top:0;left:0;overflow:hidden;height:6px;opacity:0;transition:opacity .1s}.progress.visible[_ngcontent-%COMP%]{opacity:1}.sku[_ngcontent-%COMP%]{color:var(--color-text-200)}"],changeDetection:0});var St,Da=m(56035),ya=m(43517),La=m(92136),ka=m(56346),Na=m(45556),Ja=m(1250);const Ua=["collectionRow"];function Ma(o,n){if(1&o&&t._UZ(0,"vdr-data-table-filter-presets",17),2&o){const e=t.oxw();t.Q6J("filters",e.filters)("dataTableId",e.id)}}function Ra(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"th",18)(1,"div",19),t._UZ(2,"div",20),t.TgZ(3,"input",21),t.NdJ("change",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.onToggleAllClick())}),t.qZA()()()}if(2&o){const e=t.oxw();t.xp6(3),t.Q6J("checked",null==e.selectionManager?null:e.selectionManager.areAllCurrentItemsSelected())}}function Ea(o,n){1&o&&t._UZ(0,"clr-icon",31)}function Va(o,n){1&o&&t._UZ(0,"clr-icon",32)}function Sa(o,n){1&o&&t._UZ(0,"clr-icon",33)}function wa(o,n){if(1&o&&(t.TgZ(0,"div",34),t._uU(1),t.qZA()),2&o){const e=t.oxw().ngIf;t.xp6(1),t.Oqu(e.sortOrder)}}function Qa(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",25)(1,"button",26),t.NdJ("click",function(){const c=t.CHM(e).ngIf;return t.KtG(c.toggleSortOrder())}),t.YNc(2,Ea,1,0,"clr-icon",27),t.YNc(3,Va,1,0,"clr-icon",28),t.YNc(4,Sa,1,0,"clr-icon",29),t.qZA(),t.YNc(5,wa,2,1,"div",30),t.qZA()}if(2&o){const e=n.ngIf;t.xp6(1),t.ekj("active",e.sortOrder),t.xp6(1),t.Q6J("ngIf",!e.sortOrder),t.xp6(1),t.Q6J("ngIf","ASC"===e.sortOrder),t.xp6(1),t.Q6J("ngIf","DESC"===e.sortOrder),t.xp6(1),t.Q6J("ngIf",e.sortOrder)}}function qa(o,n){if(1&o&&(t.TgZ(0,"th")(1,"div",22)(2,"vdr-ui-extension-point",23)(3,"span"),t._uU(4),t.qZA()(),t.YNc(5,Qa,6,6,"div",24),t.qZA()()),2&o){const e=n.$implicit,a=t.oxw();t.ekj("expand",e.expand),t.xp6(1),t.Q6J("ngClass",e.align),t.xp6(1),t.Q6J("locationId",a.id)("metadata",e.id)("topPx",-6)("leftPx",-24),t.xp6(2),t.Oqu(e.heading),t.xp6(1),t.Q6J("ngIf",e.sort)}}function $a(o,n){1&o&&t.GkF(0)}function Ya(o,n){1&o&&t.GkF(0)}function Ga(o,n){if(1&o&&t._UZ(0,"vdr-data-table-filters",43),2&o){const e=n.$implicit,a=t.oxw(3);t.Q6J("filterWithValue",e)("filters",a.filters)}}function Ba(o,n){if(1&o&&t._UZ(0,"vdr-data-table-filters",44),2&o){const e=t.oxw(3);t.Q6J("filters",e.filters)}}function ja(o,n){if(1&o&&(t.ynx(0),t.TgZ(1,"div",40),t.YNc(2,Ga,1,2,"vdr-data-table-filters",41),t.YNc(3,Ba,1,1,"vdr-data-table-filters",42),t._UZ(4,"vdr-add-filter-preset-button",17),t.qZA(),t.BQk()),2&o){const e=t.oxw(2);t.xp6(2),t.Q6J("ngForOf",e.filters.activeFilters),t.xp6(1),t.Q6J("ngIf",e.filters.length),t.xp6(1),t.Q6J("filters",e.filters)("dataTableId",e.id)}}function Ka(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"tr")(1,"th",35)(2,"button",36),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.toggleSearchFilterRow())}),t.ALo(3,"translate"),t._UZ(4,"clr-icon",37),t.qZA(),t.TgZ(5,"div",38),t.YNc(6,$a,1,0,"ng-container",39),t.YNc(7,Ya,1,0,"ng-container",39),t.YNc(8,ja,5,4,"ng-container",9),t.qZA()()()}if(2&o){const e=t.oxw();t.xp6(1),t.ekj("active",e.showSearchFilterRow),t.uIk("colspan",e.visibleSortedColumns.length+(e.selectionManager?2:1)),t.xp6(1),t.ekj("active",e.showSearchFilterRow),t.Q6J("title",t.lcZ(3,11,"common.search-and-filter-list")),t.xp6(3),t.ekj("hidden",!e.showSearchFilterRow),t.xp6(1),t.Q6J("ngTemplateOutlet",null==e.searchComponent?null:e.searchComponent.template),t.xp6(1),t.Q6J("ngTemplateOutlet",e.customSearchTemplate),t.xp6(1),t.Q6J("ngIf",e.filters)}}const Ha=function(o,n){return{item:o,i:n,depth:0}};function Wa(o,n){if(1&o&&(t.ynx(0),t.GkF(1,45),t.BQk()),2&o){const e=n.$implicit,a=n.index;t.oxw();const i=t.MAs(24);t.xp6(1),t.Q6J("ngTemplateOutlet",i)("ngTemplateOutletContext",t.WLB(2,Ha,e,a))}}function za(o,n){if(1&o&&(t.TgZ(0,"tr")(1,"td"),t._UZ(2,"vdr-empty-placeholder",46),t.qZA()()),2&o){const e=t.oxw();t.xp6(1),t.uIk("colspan",e.visibleSortedColumns.length+(e.selectionManager?2:1)),t.xp6(1),t.Q6J("emptyStateLabel",e.emptyStateLabel)}}function Xa(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-items-per-page-controls",47),t.NdJ("itemsPerPageChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.itemsPerPageChange.emit(i))}),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("itemsPerPage",e.itemsPerPage)}}const ti=function(o,n,e){return{currentStart:o,currentEnd:n,totalItems:e}};function ei(o,n){if(1&o&&(t.TgZ(0,"div",48),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o){const e=t.oxw();t.xp6(1),t.hij(" ",t.xi3(2,1,"common.total-items",t.kEZ(4,ti,e.currentStart,e.currentEnd,e.totalItems))," ")}}function ni(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-pagination-controls",49),t.NdJ("pageChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.pageChange.emit(i))}),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("id",e.id)("currentPage",e.currentPage)("itemsPerPage",e.itemsPerPage)("totalItems",e.totalItems)}}function oi(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"td",18)(1,"div",19)(2,"div",55),t.ALo(3,"translate"),t._UZ(4,"clr-icon",56),t.qZA(),t.TgZ(5,"input",57),t.NdJ("click",function(i){t.CHM(e);const c=t.oxw().item,s=t.oxw();return t.KtG(s.onRowClick(c,i))}),t.qZA()()()}if(2&o){const e=t.oxw().item,a=t.oxw();t.ekj("active",a.activeIndex===a.absoluteIndex[e.id]),t.xp6(2),t.Q6J("title",t.lcZ(3,4,"catalog.reorder-collection")),t.xp6(3),t.Q6J("checked",null==a.selectionManager?null:a.selectionManager.isSelected(e))}}function ai(o,n){1&o&&t.GkF(0)}const ii=function(o){return{rowItem:o}};function ri(o,n){if(1&o&&(t.ynx(0),t.YNc(1,ai,1,0,"ng-container",60),t.BQk()),2&o){const e=n.ngIf,a=t.oxw(2).item;t.xp6(1),t.Q6J("ngComponentOutlet",e.config.component)("ngComponentOutletInputs",t.VKq(3,ii,a))("ngComponentOutletInjector",e.injector)}}function ci(o,n){1&o&&t.GkF(0)}const vn=function(o,n){return{item:o,depth:n}};function li(o,n){if(1&o&&t.YNc(0,ci,1,0,"ng-container",61),2&o){const e=t.oxw().$implicit,a=t.oxw(),i=a.item,c=a.depth;t.Q6J("ngTemplateOutlet",e.template)("ngTemplateOutletContext",t.WLB(2,vn,i,c))}}function si(o,n){if(1&o&&(t.TgZ(0,"td")(1,"div",22),t.YNc(2,ri,2,5,"ng-container",58),t.YNc(3,li,1,5,"ng-template",null,59,t.W1O),t.qZA()()),2&o){const e=n.$implicit,a=t.MAs(4),i=t.oxw().item,c=t.oxw();t.ekj("active",c.activeIndex===c.absoluteIndex[i.id]),t.xp6(1),t.Q6J("ngClass",e.align),t.xp6(1),t.Q6J("ngIf",c.customComponents.get(e.id))("ngIfElse",a)}}function di(o,n){1&o&&t.GkF(0)}function pi(o,n){if(1&o&&(t.ynx(0),t.YNc(1,di,1,0,"ng-container",61),t.BQk()),2&o){const e=n.$implicit,a=t.oxw().depth;t.oxw();const i=t.MAs(24);t.xp6(1),t.Q6J("ngTemplateOutlet",i)("ngTemplateOutletContext",t.WLB(2,vn,e,a+1))}}const ui=function(o,n){return{depth:o,collection:n}};function mi(o,n){if(1&o&&(t.TgZ(0,"tr",50,51),t.YNc(2,oi,6,6,"td",52),t.YNc(3,si,5,5,"td",53),t._UZ(4,"td"),t.qZA(),t.YNc(5,pi,2,5,"ng-container",54)),2&o){const e=n.item,a=n.depth,i=t.oxw();t.Q6J("cdkDragData",t.WLB(6,ui,a,e)),t.xp6(2),t.Q6J("ngIf",i.selectionManager),t.xp6(1),t.Q6J("ngForOf",i.visibleSortedColumns),t.xp6(1),t.ekj("active",i.activeIndex===i.absoluteIndex[e.id]),t.xp6(1),t.Q6J("ngForOf",i.getSubcollections(e))}}const _i=[[["vdr-bulk-action-menu"]]],gi=function(o,n,e,a){return{itemsPerPage:o,currentPage:n,totalItems:e,id:a}};class wt extends l.eJ5{constructor(n,e,a,i){super(n,e,a),this.changeDetectorRef=n,this.localStorageService=e,this.dataService=a,this.dragDrop=i,this.changeOrder=new t.vpe,this.dragRefs=[],this.absoluteIndex={},this.sortPredicate=(c,s)=>this.dropList.getSortedItems()[c]?.data.collection.parentId===s.data.collection.parentId}ngOnChanges(n){if(super.ngOnChanges(n),n.subCollections||n.items){const e=[];for(const a of this.items??[]){e.push(a);const i=this.getSubcollections(a);e.push(...i.flat())}e.forEach((a,i)=>this.absoluteIndex[a.id]=i)}}ngAfterViewInit(){this.collectionRowList.changes.subscribe(n=>{this.dropList.getSortedItems().forEach(e=>this.dropList.removeItem(e));for(const e of n.toArray())e.dropContainer=this.dropList,e._dragRef._withDropContainer(this.dropList._dropListRef),this.dropList.addItem(e)})}getSubcollections(n){return this.subCollections?.filter(e=>e.parentId===n.id)??[]}onDrop(n){const e=2===n.item.data.collection.breadcrumbs.length,a=e?(this.currentPage-1)*this.itemsPerPage:0,i=n.item.data.collection.parentId,c=this.items.findIndex(p=>p.id===i),s=a+n.currentIndex-c-1;if(this.changeOrder.emit({collectionId:n.item.data.collection.id,index:s,parentId:n.item.data.collection.parentId}),e)this.items=[...this.items],this.items.splice(n.previousIndex,1),this.items.splice(n.currentIndex,0,n.item.data.collection);else{const p=this.items.find(_=>_.id===i);if(p){const _=this.getSubcollections(p),f=a+n.previousIndex-c-1;_.splice(f,1),_.splice(n.currentIndex,0,n.item.data.collection)}}this.changeDetectorRef.markForCheck()}}(St=wt).\u0275fac=function(n){return new(n||St)(t.Y36(t.sBO),t.Y36(l.n2A),t.Y36(l.DoR),t.Y36(k.v0))},St.\u0275cmp=t.Xpm({type:St,selectors:[["vdr-collection-data-table"]],viewQuery:function(n,e){if(1&n&&(t.Gf(k.Wj,7),t.Gf(Ua,5,k.Zt)),2&n){let a;t.iGM(a=t.CRH())&&(e.dropList=a.first),t.iGM(a=t.CRH())&&(e.collectionRowList=a)}},inputs:{subCollections:"subCollections"},outputs:{changeOrder:"changeOrder"},features:[t.qOj,t.TTD],ngContentSelectors:["vdr-bulk-action-menu"],decls:25,vars:27,consts:[[3,"filters","dataTableId",4,"ngIf"],[1,"table-wrapper"],[1,"bulk-actions"],[1,""],[1,"heading-row"],["class","selection-col",4,"ngIf"],[3,"expand",4,"ngFor","ngForOf"],[1,"column-picker"],[3,"uiLanguage","columns","reorder","resetColumns"],[4,"ngIf"],["cdkDropList","","cdkDropListLockAxis","y",3,"cdkDropListSortPredicate","cdkDropListDropped"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"table-footer"],[3,"itemsPerPage","itemsPerPageChange",4,"ngIf"],["class","p5 total-items-count",4,"ngIf"],[3,"id","currentPage","itemsPerPage","totalItems","pageChange",4,"ngIf"],["collectionRowTmp",""],[3,"filters","dataTableId"],[1,"selection-col"],[1,"flex"],[1,"drag-handle-spacer"],["type","checkbox","clrCheckbox","",3,"checked","change"],[1,"cell-content",3,"ngClass"],["api","dataTable","display","block",3,"locationId","metadata","topPx","leftPx"],["class","sort-toggle",4,"ngIf"],[1,"sort-toggle"],[3,"click"],["shape","two-way-arrows left",4,"ngIf"],["shape","arrow up",4,"ngIf"],["shape","arrow down",4,"ngIf"],["class","sort-label",4,"ngIf"],["shape","two-way-arrows left"],["shape","arrow up"],["shape","arrow down"],[1,"sort-label"],[1,"filter-row"],[1,"button-ghost","toggle-search-filter-row",3,"title","click"],["shape","search"],[1,"filter-row-wrapper"],[4,"ngTemplateOutlet"],[1,"filters"],["class","mt-1",3,"filterWithValue","filters",4,"ngFor","ngForOf"],["class","mt-1",3,"filters",4,"ngIf"],[1,"mt-1",3,"filterWithValue","filters"],[1,"mt-1",3,"filters"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"emptyStateLabel"],[3,"itemsPerPage","itemsPerPageChange"],[1,"p5","total-items-count"],[3,"id","currentPage","itemsPerPage","totalItems","pageChange"],["cdkDrag","","cdkDragBoundary","tbody",3,"cdkDragData"],["collectionRow",""],["class","selection-col",3,"active",4,"ngIf"],[3,"active",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],["cdkDragHandle","",1,"drag-handle",3,"title"],["shape","drag-handle"],["type","checkbox","clrCheckbox","",3,"checked","click"],[4,"ngIf","ngIfElse"],["defaultComponent",""],[4,"ngComponentOutlet","ngComponentOutletInputs","ngComponentOutletInjector"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(n,e){1&n&&(t.F$t(_i),t.YNc(0,Ma,1,2,"vdr-data-table-filter-presets",0),t.TgZ(1,"div",1)(2,"div",2),t.Hsn(3),t.qZA(),t.TgZ(4,"table",3)(5,"thead")(6,"tr",4),t.YNc(7,Ra,4,1,"th",5),t.YNc(8,qa,6,9,"th",6),t.TgZ(9,"th")(10,"div",7)(11,"vdr-data-table-colum-picker",8),t.NdJ("reorder",function(i){return e.onColumnReorder(i)})("resetColumns",function(){return e.onColumnsReset()}),t.ALo(12,"async"),t.qZA()()()(),t.YNc(13,Ka,9,13,"tr",9),t.qZA(),t.TgZ(14,"tbody",10),t.NdJ("cdkDropListDropped",function(i){return e.onDrop(i)}),t.YNc(15,Wa,2,5,"ng-container",11),t.ALo(16,"paginate"),t.ynx(17),t.YNc(18,za,3,2,"tr",9),t.BQk(),t.qZA()()(),t.TgZ(19,"div",12),t.YNc(20,Xa,1,1,"vdr-items-per-page-controls",13),t.YNc(21,ei,3,8,"div",14),t.YNc(22,ni,1,4,"vdr-pagination-controls",15),t.qZA(),t.YNc(23,mi,6,9,"ng-template",null,16,t.W1O)),2&n&&(t.Q6J("ngIf",e.filters),t.xp6(4),t.ekj("no-select",e.disableSelect),t.xp6(1),t.ekj("items-selected",null==e.selectionManager?null:e.selectionManager.selection.length),t.xp6(2),t.Q6J("ngIf",e.selectionManager),t.xp6(1),t.Q6J("ngForOf",e.visibleSortedColumns),t.xp6(3),t.Q6J("uiLanguage",t.lcZ(12,17,e.uiLanguage$))("columns",e.sortedColumns),t.xp6(2),t.Q6J("ngIf",e.searchComponent||e.customSearchTemplate||(null==e.filters?null:e.filters.length)),t.xp6(1),t.Q6J("cdkDropListSortPredicate",e.sortPredicate),t.xp6(1),t.Q6J("ngForOf",t.xi3(16,19,e.items,t.l5B(22,gi,e.itemsPerPage,e.currentPage,e.totalItems,e.id)))("ngForTrackBy",e.trackByFn),t.xp6(3),t.Q6J("ngIf",!(null!=e.items&&e.items.length)),t.xp6(2),t.Q6J("ngIf",e.totalItems),t.xp6(1),t.Q6J("ngIf",e.totalItems),t.xp6(1),t.Q6J("ngIf",e.totalItems))},dependencies:[h.q0d,h.qvL,h.KKC,g.mk,g.$G,g.sg,g.O5,g.tP,k.Wj,k.Zt,k.Bh,Ge.w,Be.L,y.y,Da.j,ya.r,La.I,ka.L,Na.R,Ja.t,g.Ov,be._s,x.X$],styles:["[_nghost-%COMP%]{display:block;max-width:100%;position:relative;margin-bottom:calc(var(--space-unit) * 4);container-type:inline-size}th[_ngcontent-%COMP%]{border-bottom:1px solid var(--color-table-header-border);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;position:relative;white-space:nowrap}th[_ngcontent-%COMP%], td[_ngcontent-%COMP%]{padding:calc(var(--space-unit) * 1.5) calc(var(--space-unit) * 1)}tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-of-type, tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-of-type{text-align:center}@media screen and (min-width: 992px){tr[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:first-of-type, tr[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:first-of-type{padding-inline-start:var(--surface-margin-left);text-align:start}}th[_ngcontent-%COMP%]:last-of-type, td[_ngcontent-%COMP%]:last-of-type{border-inline-end:1px solid var(--color-table-header-border)}tr[_ngcontent-%COMP%]:first-of-type th[_ngcontent-%COMP%]:last-of-type{border-image:linear-gradient(0deg,var(--color-table-header-border),transparent) 1}tr[_ngcontent-%COMP%]:last-of-type td[_ngcontent-%COMP%]:last-of-type{border-image:linear-gradient(180deg,var(--color-table-header-border),transparent) 1}tbody[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border-bottom:1px solid var(--color-table-row-separator)}tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background-color:var(--color-table-row-hover-bg)}.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 5);background-color:var(--color-surface-bg);z-index:10;display:flex;position:absolute;top:5px;height:40px}@media screen and (min-width: 992px){.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 8.5)}}@media screen and (min-width: 1280px){.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 10.5)}}.table-wrapper[_ngcontent-%COMP%]{display:block;overflow-y:hidden;overflow-x:auto;position:relative;width:100%;max-width:var(--surface-width)}table[_ngcontent-%COMP%]{width:100%}table.no-select[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.column-picker[_ngcontent-%COMP%]{width:24px}.sort-toggle[_ngcontent-%COMP%]{display:flex;align-items:center;margin-inline-start:calc(var(--space-unit) * .5)}.sort-toggle[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border:0;border-radius:var(--border-radius-lg);color:var(--color-weight-500);padding:0 2px;cursor:pointer;background-color:transparent}.sort-toggle[_ngcontent-%COMP%] button.active[_ngcontent-%COMP%]{color:var(--color-primary-700)}.sort-toggle[_ngcontent-%COMP%] .sort-label[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * .5);font-size:10px;color:var(--color-primary-600);font-weight:400}.toggle-search-filter-row[_ngcontent-%COMP%]{position:absolute;top:-12px;left:4px}@media screen and (min-width: 1280px){.toggle-search-filter-row[_ngcontent-%COMP%]{left:8px}}.toggle-search-filter-row.active[_ngcontent-%COMP%]{background-color:var(--color-primary-700);color:var(--color-primary-100);border-color:var(--color-primary-700)}th.filter-row[_ngcontent-%COMP%]{position:relative;font-size:var(--font-size-base);font-weight:400;background-color:var(--color-weight-100);box-shadow:var(--data-table-filter-box-shadow);border-left-width:0;border-right-width:0;text-align:initial;padding:0}th.filter-row[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{width:100%}th.filter-row.active[_ngcontent-%COMP%]{border-bottom:1px solid var(--color-table-header-border)}th.filter-row[_ngcontent-%COMP%] .filters[_ngcontent-%COMP%]{margin-top:calc(var(--space-unit) * 1);display:flex;flex-wrap:wrap;gap:calc(var(--space-unit) * .5)}.filter-row-wrapper[_ngcontent-%COMP%]{padding:calc(var(--space-unit) * 4);padding-inline-start:0;max-height:150px;transition:max-height .2s,padding .2s,opacity .2s}.filter-row-wrapper.hidden[_ngcontent-%COMP%]{max-height:0px;padding-top:0;padding-bottom:0;overflow:hidden;opacity:0}.cell-link[_ngcontent-%COMP%]{display:block;width:100%;height:100%}td.active[_ngcontent-%COMP%]{background-color:var(--color-table-row-active-bg)}.cell-content[_ngcontent-%COMP%]{display:flex;align-items:center;line-height:var(--font-size-sm);color:var(--color-weight-700)}.cell-content.left[_ngcontent-%COMP%]{justify-content:flex-start}.cell-content.center[_ngcontent-%COMP%]{justify-content:center}.cell-content.right[_ngcontent-%COMP%]{justify-content:flex-end}.selection-col[_ngcontent-%COMP%]{width:calc(var(--space-unit) * 8)}vdr-empty-placeholder[_ngcontent-%COMP%]{width:100%}.table-footer[_ngcontent-%COMP%]{display:flex;align-items:baseline;justify-content:space-between;margin-top:var(--space-unit);margin-inline-start:var(--surface-margin-left);margin-inline-end:var(--space-unit)}.total-items-count[_ngcontent-%COMP%]{font-size:var(--font-size-xs)}@container (max-width: 500px){.total-items-count[_ngcontent-%COMP%]{display:none}}",".bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 6);background-color:var(--color-surface-bg)}@media screen and (min-width: 992px){.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 9.5)}}@media screen and (min-width: 1280px){.bulk-actions[_ngcontent-%COMP%]{margin-inline-start:calc(var(--space-unit) * 11.5)}}.drag-handle[_ngcontent-%COMP%]{cursor:grab}.drag-handle-spacer[_ngcontent-%COMP%]{width:16px}.cdk-drop-list-dragging[_ngcontent-%COMP%] .cdk-drag[_ngcontent-%COMP%]{transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-animating[_ngcontent-%COMP%]{transition:transform .3s cubic-bezier(0,0,.2,1)}.cdk-drag-preview[_ngcontent-%COMP%]{opacity:0}.cdk-drag-placeholder[_ngcontent-%COMP%]{background-color:var(--color-primary-100)!important}"],changeDetection:0});var Qt,hi=m(3260),vi=m(77336),Cn=m(90200),Pe=m(4981),Oe=m(47432),Ie=m(45655),Fe=m(99274);const Ci=["collectionContents"];function Ti(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",31),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.create())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.create")," ")}}function bi(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",31),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("disabled",(e.detailForm.invalid||e.detailForm.pristine)&&!e.assetsChanged()),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}function xi(o,n){if(1&o&&t.YNc(0,bi,3,4,"button",32),2&o){const e=t.oxw();t.Q6J("vdrIfPermissions",e.updatePermission)}}function Ai(o,n){1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.public")))}function Zi(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.private"))}function Pi(o,n){if(1&o&&(t.TgZ(0,"vdr-card"),t._UZ(1,"vdr-page-entity-info",33),t.qZA()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("entity",e)}}const Oi=function(){return["/catalog/collections"]};function Ii(o,n){1&o&&(t.TgZ(0,"a",38),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Oi)),t.xp6(1),t.Oqu(t.lcZ(2,2,"catalog.root-collection")))}const Fi=function(o){return["/catalog/collections",o]};function Di(o,n){if(1&o&&(t.TgZ(0,"a",38),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o){const e=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(4,Fi,e.id)),t.xp6(1),t.Oqu(t.lcZ(2,2,e.name))}}function yi(o,n){if(1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o){const e=t.oxw().$implicit;t.xp6(1),t.Oqu(t.lcZ(2,1,e.name))}}function Li(o,n){if(1&o&&(t.TgZ(0,"li"),t.YNc(1,Ii,3,5,"a",37),t.YNc(2,Di,3,6,"a",37),t.YNc(3,yi,3,3,"ng-container",10),t.qZA()),2&o){const e=n.first,a=n.last;t.xp6(1),t.Q6J("ngIf",e),t.xp6(1),t.Q6J("ngIf",!e&&!a),t.xp6(1),t.Q6J("ngIf",a)}}function ki(o,n){if(1&o&&(t.TgZ(0,"vdr-page-block")(1,"nav",34)(2,"ul",35),t.YNc(3,Li,4,3,"li",36),t.qZA()()()),2&o){const e=n.ngIf;t.xp6(3),t.Q6J("ngForOf",e.breadcrumbs)}}function Ni(o,n){if(1&o&&(t.TgZ(0,"vdr-card",39),t.ALo(1,"translate"),t._UZ(2,"vdr-tabbed-custom-fields",40),t.ALo(3,"hasPermission"),t.qZA()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.detailForm.get("customFields"))("readonly",!t.lcZ(3,6,e.updatePermission))}}function Ji(o,n){1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.inherit-filters-from-parent")))}function Ui(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.do-not-inherit-filters"))}function Mi(o,n){if(1&o){const e=t.EpF();t.ynx(0),t.TgZ(1,"vdr-configurable-input",41),t.NdJ("remove",function(){const c=t.CHM(e).index,s=t.oxw();return t.KtG(s.removeFilter(c))}),t.ALo(2,"hasPermission"),t.qZA(),t.BQk()}if(2&o){const e=n.$implicit,a=n.index,i=t.oxw();t.xp6(1),t.Q6J("position",a)("operation",e)("operationDefinition",i.getFilterDefinition(e))("formControlName",a)("readonly",!t.lcZ(2,5,i.updatePermission))}}function Ri(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",47),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.addFilter(c))}),t._uU(1),t.qZA()}if(2&o){const e=n.$implicit;t.xp6(1),t.hij(" ",e.description," ")}}function Ei(o,n){if(1&o&&(t.TgZ(0,"div")(1,"vdr-dropdown")(2,"button",42),t._UZ(3,"clr-icon",43),t.TgZ(4,"span"),t._uU(5),t.ALo(6,"translate"),t.qZA(),t._UZ(7,"clr-icon",44),t.qZA(),t.TgZ(8,"vdr-dropdown-menu",45),t.YNc(9,Ri,2,1,"button",46),t.qZA()()()),2&o){const e=t.oxw();t.xp6(5),t.Oqu(t.lcZ(6,2,"marketing.add-condition")),t.xp6(4),t.Q6J("ngForOf",e.allFilters)}}const Vi=function(o){return{count:o}},Si=function(){return{standalone:!0}};function wi(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",48)(1,"div",49),t._uU(2),t.ALo(3,"translate"),t.ALo(4,"translate"),t.qZA(),t.TgZ(5,"clr-checkbox-wrapper")(6,"input",50),t.NdJ("ngModelChange",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.toggleLivePreview())}),t.qZA(),t.TgZ(7,"label"),t._uU(8),t.ALo(9,"translate"),t.qZA()()()}if(2&o){const e=n.$implicit,a=t.oxw();let i,c;t.xp6(2),t.AsE(" ",t.lcZ(3,8,"catalog.collection-contents")," (",t.xi3(4,10,"common.results-count",t.VKq(15,Vi,e)),") "),t.xp6(3),t.ekj("disabled",null==(i=a.detailForm.get("filters"))?null:i.pristine),t.xp6(1),t.Q6J("ngModelOptions",t.DdM(17,Si))("disabled",null==(c=a.detailForm.get("filters"))?null:c.pristine)("ngModel",a.livePreview),t.xp6(2),t.Oqu(t.lcZ(9,13,"catalog.live-preview-contents"))}}const Qi=function(o){return{pattern:o}},qi=D.Ps`
76
76
  query CollectionDetailQuery($id: ID!) {
77
77
  collection(id: $id) {
78
78
  ...Collection
79
79
  }
80
80
  }
81
81
  ${l.vWg}
82
- `;class De extends l.VE7{constructor(n,e,a,i,c,s){super(),this.changeDetector=n,this.dataService=e,this.formBuilder=a,this.notificationService=i,this.modalService=c,this.localStorageService=s,this.customFields=this.getCustomFieldConfig("Collection"),this.detailForm=this.formBuilder.group({name:["",d.kI.required],slug:["",(0,l.Foo)(/^[\p{Letter}0-9._-]+$/)],description:"",visible:!1,inheritFilters:!0,filters:this.formBuilder.array([]),customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))}),this.assetChanges={},this.filters=[],this.allFilters=[],this.livePreview=!1,this.updatePermission=[l.y3$.UpdateCatalog,l.y3$.UpdateCollection],this.filterRemoved$=new _t.x,this.livePreview=this.localStorageService.get("livePreviewCollectionContents")??!1}ngOnInit(){this.init(),this.dataService.collection.getCollectionFilters().single$.subscribe(a=>{this.allFilters=a.collectionFilters});const n=this.detailForm.get("filters"),e=this.detailForm.get("inheritFilters");this.inheritFilters$=e.valueChanges.pipe((0,S.x)()),this.updatedFilters$=(0,fi.T)(n.statusChanges,this.filterRemoved$).pipe((0,it.b)(200),(0,Ke.h)(()=>n.touched),(0,v.U)(()=>this.mapOperationsToInputs(this.filters,n.value).filter(a=>{for(const i of a.arguments)if(""===i.value)return!1;return!0}))),this.parentId$=this.route.paramMap.pipe((0,v.U)(a=>a.get("parentId")||void 0),(0,b.w)(a=>a?(0,L.of)(a):this.entity$.pipe((0,v.U)(i=>i.parent?.id))))}ngOnDestroy(){this.destroy()}getFilterDefinition(n){return this.allFilters.find(e=>e.code===n.code)}assetsChanged(){return!!Object.values(this.assetChanges).length}updateSlug(n){const e=this.detailForm.get(["slug"]),a=this.entity?(0,l.ZIM)(this.entity,this.languageCode):void 0,i=!a||!a.slug;e&&e.pristine&&i&&e.setValue((0,R.U)(`${n}`,"-"))}addFilter(n){const e=this.detailForm.get("filters"),a=n.args.reduce((i,c)=>({...i,[c.name]:(0,l.sux)(c.value)}),{});e.push(this.formBuilder.control({code:n.code,args:a})),this.filters.push({code:n.code,args:n.args.map(i=>({name:i.name,value:(0,l.sux)(i.value)}))})}removeFilter(n){const e=this.detailForm.get("filters");-1!==n&&(e.removeAt(n),e.markAsDirty(),e.markAsTouched(),this.filters.splice(n,1),this.filterRemoved$.next())}create(){if(!this.detailForm.dirty)return;const n=this.getUpdatedCollection({id:"",createdAt:"",updatedAt:"",languageCode:this.languageCode,name:"",slug:"",isPrivate:!1,breadcrumbs:[],description:"",featuredAsset:null,assets:[],translations:[],inheritFilters:!0,filters:[],parent:{},children:null},this.detailForm,this.languageCode),e=this.route.snapshot.paramMap.get("parentId");e&&(n.parentId=e),this.dataService.collection.createCollection(n).subscribe(a=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"Collection"}),this.assetChanges={},this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.router.navigate(["../",a.createCollection.id],{relativeTo:this.route})},a=>{this.notificationService.error((0,u.J)("common.notify-create-error"),{entity:"Collection"})})}save(){(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,k.z)(([n,e])=>{const a=this.getUpdatedCollection(n,this.detailForm,e);return this.dataService.collection.updateCollection(a)})).subscribe(()=>{this.assetChanges={},this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"Collection"}),this.contentsComponent.refresh()},n=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"Collection"})})}canDeactivate(){return super.canDeactivate()&&!this.assetChanges.assets&&!this.assetChanges.featuredAsset}toggleLivePreview(){this.livePreview=!this.livePreview,this.localStorageService.set("livePreviewCollectionContents",this.livePreview)}trackByFn(n,e){return JSON.stringify(e)}setFormValues(n,e){const a=(0,l.ZIM)(n,e);this.detailForm.patchValue({name:a?a.name:"",slug:a?a.slug:"",description:a?a.description:"",visible:!n.isPrivate,inheritFilters:n.inheritFilters});const i=this.detailForm.get("filters");i.length!==n.filters.length&&(i.clear(),this.filters=[],n.filters.forEach(c=>this.addFilter(c))),this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get(["customFields"]),n,a)}getUpdatedCollection(n,e,a){return{...(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.customFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||"",slug:n.slug||"",description:n.description||""}}),assetIds:this.assetChanges.assets?.map(c=>c.id),featuredAssetId:this.assetChanges.featuredAsset?.id,isPrivate:!e.value.visible,filters:this.mapOperationsToInputs(this.filters,this.detailForm.value.filters)}}mapOperationsToInputs(n,e){return n.map((a,i)=>({code:a.code,arguments:Object.entries(e[i].args).map(([c,s],p)=>({name:c,value:(0,l.qrw)(s)}))}))}}var Qt,$t;(wt=De).\u0275fac=function(n){return new(n||wt)(t.Y36(t.sBO),t.Y36(l.DoR),t.Y36(d.qu),t.Y36(l.gqp),t.Y36(l.Z7U),t.Y36(l.n2A))},wt.\u0275cmp=t.Xpm({type:wt,selectors:[["vdr-collection-detail"]],viewQuery:function(n,e){if(1&n&&t.Gf(vi,5),2&n){let a;t.iGM(a=t.CRH())&&(e.contentsComponent=a.first)}},features:[t.qOj],decls:73,vars:89,consts:[[3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","collection-detail"],["class","btn btn-primary",3,"disabled","click",4,"ngIf","ngIfElse"],["updateButton",""],[1,"form",3,"formGroup"],["for","visibility",3,"label"],["type","checkbox","clrToggle","","formControlName","visible","id","visibility",3,"vdrDisabled"],[1,"visible-toggle"],[4,"ngIf","ngIfElse"],["private",""],[4,"ngIf"],[1,"form-grid"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"readonly","input"],["for","slug",3,"label","errors"],["id","slug","type","text","formControlName","slug",3,"readonly"],["for","slug",1,"form-grid-span",3,"label"],["formControlName","description",3,"readonly"],["formGroupName","customFields",3,"title",4,"ngIf"],["locationId","collection-detail",3,"entity$","detailForm"],[3,"title"],[3,"assets","featuredAsset","updatePermissions","change"],["for","inheritFilters",3,"label"],["type","checkbox","clrToggle","","formControlName","inheritFilters","id","inheritFilters",3,"vdrDisabled"],["noInherit",""],["formArrayName","filters"],[4,"ngFor","ngForOf","ngForTrackBy"],[4,"vdrIfPermissions"],[3,"title","paddingX"],[3,"collectionId","parentId","updatedFilters","inheritFilters","previewUpdatedFilters"],["collectionContents",""],[1,"btn","btn-primary",3,"disabled","click"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],[3,"entity"],["role","navigation"],[1,"collection-breadcrumbs"],[4,"ngFor","ngForOf"],[3,"routerLink",4,"ngIf"],[3,"routerLink"],["formGroupName","customFields",3,"title"],["entityName","Collection",3,"customFields","customFieldsFormGroup","readonly"],[3,"position","operation","operationDefinition","formControlName","readonly","remove"],["vdrDropdownTrigger","",1,"btn","btn-outline"],["shape","plus"],["shape","ellipsis-vertical"],["vdrPosition","bottom-left"],["type","button","vdrDropdownItem","",3,"click",4,"ngFor","ngForOf"],["type","button","vdrDropdownItem","",3,"click"],[1,"ml-3"],[1,"contents-title"],["type","checkbox","clrCheckbox","",3,"ngModelOptions","disabled","ngModel","ngModelChange"]],template:function(n,e){if(1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.ALo(6,"async"),t.qZA()(),t.TgZ(7,"vdr-ab-right"),t._UZ(8,"vdr-action-bar-items",1),t.YNc(9,Ci,3,4,"button",2),t.ALo(10,"async"),t.YNc(11,bi,1,1,"ng-template",null,3,t.W1O),t.qZA()()(),t.TgZ(13,"form",4)(14,"vdr-page-detail-layout")(15,"vdr-page-detail-sidebar")(16,"vdr-card")(17,"vdr-form-field",5),t.ALo(18,"translate"),t.TgZ(19,"clr-toggle-wrapper"),t._UZ(20,"input",6),t.ALo(21,"hasPermission"),t.TgZ(22,"label",7),t.YNc(23,xi,3,3,"ng-container",8),t.YNc(24,Ai,2,3,"ng-template",null,9,t.W1O),t.qZA()()()(),t.YNc(26,Zi,2,1,"vdr-card",10),t.ALo(27,"async"),t.qZA(),t.YNc(28,Li,4,1,"vdr-page-block",10),t.ALo(29,"async"),t.TgZ(30,"vdr-page-block")(31,"vdr-card")(32,"div",11)(33,"vdr-form-field",12),t.ALo(34,"translate"),t.TgZ(35,"input",13),t.NdJ("input",function(i){return e.updateSlug(i.target.value)}),t.ALo(36,"hasPermission"),t.qZA()(),t.TgZ(37,"vdr-form-field",14),t.ALo(38,"translate"),t.ALo(39,"translate"),t._UZ(40,"input",15),t.ALo(41,"hasPermission"),t.qZA(),t.TgZ(42,"vdr-form-field",16),t.ALo(43,"translate"),t._UZ(44,"vdr-rich-text-editor",17),t.ALo(45,"hasPermission"),t.qZA()()(),t.YNc(46,Ni,4,8,"vdr-card",18),t._UZ(47,"vdr-custom-detail-component-host",19),t.TgZ(48,"vdr-card",20),t.ALo(49,"translate"),t.TgZ(50,"vdr-assets",21),t.NdJ("change",function(i){return e.assetChanges=i}),t.qZA()(),t.TgZ(51,"vdr-card",20),t.ALo(52,"translate"),t.TgZ(53,"vdr-form-field",22),t.ALo(54,"translate"),t.TgZ(55,"clr-toggle-wrapper"),t._UZ(56,"input",23),t.ALo(57,"hasPermission"),t.TgZ(58,"label",7),t.YNc(59,ki,3,3,"ng-container",8),t.YNc(60,Ji,2,3,"ng-template",null,24,t.W1O),t.qZA()()(),t.TgZ(62,"div",25),t.YNc(63,Ui,3,7,"ng-container",26),t.qZA(),t.YNc(64,Ri,10,4,"div",27),t.qZA(),t.TgZ(65,"vdr-card",28),t.ALo(66,"translate"),t.TgZ(67,"vdr-collection-contents",29,30),t.ALo(69,"async"),t.ALo(70,"async"),t.ALo(71,"async"),t.YNc(72,Si,10,18,"ng-template"),t.qZA()()()()()),2&n){const a=t.MAs(12),i=t.MAs(25),c=t.MAs(61);t.xp6(3),t.Q6J("disabled",t.lcZ(4,41,e.isNew$))("availableLanguageCodes",t.lcZ(5,43,e.availableLanguages$))("currentLanguageCode",t.lcZ(6,45,e.languageCode$)),t.xp6(6),t.Q6J("ngIf",t.lcZ(10,47,e.isNew$))("ngIfElse",a),t.xp6(4),t.Q6J("formGroup",e.detailForm),t.xp6(4),t.Q6J("label",t.lcZ(18,49,"catalog.visibility")),t.xp6(3),t.Q6J("vdrDisabled",!t.lcZ(21,51,e.updatePermission)),t.xp6(3),t.Q6J("ngIf",e.detailForm.value.visible)("ngIfElse",i),t.xp6(3),t.Q6J("ngIf",t.lcZ(27,53,e.entity$)),t.xp6(2),t.Q6J("ngIf",t.lcZ(29,55,e.entity$)),t.xp6(5),t.Q6J("label",t.lcZ(34,57,"common.name")),t.xp6(2),t.Q6J("readonly",!t.lcZ(36,59,e.updatePermission)),t.xp6(2),t.Q6J("label",t.lcZ(38,61,"catalog.slug"))("errors",t.VKq(87,wi,t.lcZ(39,63,"catalog.slug-pattern-error"))),t.xp6(3),t.Q6J("readonly",!t.lcZ(41,65,e.updatePermission)),t.xp6(2),t.Q6J("label",t.lcZ(43,67,"common.description")),t.xp6(2),t.Q6J("readonly",!t.lcZ(45,69,e.updatePermission)),t.xp6(2),t.Q6J("ngIf",e.customFields.length),t.xp6(1),t.Q6J("entity$",e.entity$)("detailForm",e.detailForm),t.xp6(1),t.Q6J("title",t.lcZ(49,71,"catalog.assets")),t.xp6(2),t.Q6J("assets",null==e.entity?null:e.entity.assets)("featuredAsset",null==e.entity?null:e.entity.featuredAsset)("updatePermissions",e.updatePermission),t.xp6(1),t.Q6J("title",t.lcZ(52,73,"catalog.filters")),t.xp6(2),t.Q6J("label",t.lcZ(54,75,"catalog.filter-inheritance")),t.xp6(3),t.Q6J("vdrDisabled",!t.lcZ(57,77,e.updatePermission)),t.xp6(3),t.Q6J("ngIf",e.detailForm.value.inheritFilters)("ngIfElse",c),t.xp6(4),t.Q6J("ngForOf",e.filters)("ngForTrackBy",e.trackByFn),t.xp6(1),t.Q6J("vdrIfPermissions",e.updatePermission),t.xp6(1),t.Q6J("title",t.lcZ(66,79,"common.contents"))("paddingX",!1),t.xp6(2),t.Q6J("collectionId",e.id)("parentId",t.lcZ(69,81,e.parentId$))("updatedFilters",t.lcZ(70,83,e.updatedFilters$))("inheritFilters",t.lcZ(71,85,e.inheritFilters$))("previewUpdatedFilters",e.livePreview)}},dependencies:[h.q0d,h.qvL,h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.Fj,d.Wl,d.JJ,d.JL,d.On,d.sg,d.u,d.x0,d.CE,P.rH,A.Kk,A.BN,A.mz,hi.q,q.h,y.y,G.S,Cn.Y,ht.J,vt.N,Ct.U,Tt.H,$.H,tt.W,Pe.x,ut.y,Oe.C,E.z,At.D,Ie.T,Fe.W,nt.A,bt,Et,g.Ov,x.X$,B.j],styles:['@charset "UTF-8";.visible-toggle[_ngcontent-%COMP%]{margin-top:-3px!important}clr-checkbox-wrapper[_ngcontent-%COMP%]{transition:opacity .3s}clr-checkbox-wrapper.disabled[_ngcontent-%COMP%]{opacity:.5}.collection-breadcrumbs[_ngcontent-%COMP%]{list-style-type:none;background-color:var(--color-component-bg-200);padding:2px 6px;margin-bottom:6px;border-radius:var(--clr-global-borderradius)}.collection-breadcrumbs[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{font-size:.65rem;display:inline-block;margin-inline-end:10px}.collection-breadcrumbs[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:last-child{font-weight:600}.collection-breadcrumbs[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:not(:last-child):after{content:"\\203a";top:0;color:var(--color-grey-400);margin-inline-start:10px}'],changeDetection:0});class qt{transform(n){return n?.breadcrumbs.slice(1,-1)}}function qi(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.move-collections"),"\n")}function $i(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function Yi(o,n){if(1&o&&t._UZ(0,"clr-icon",12),2&o){const e=t.oxw().depth;t.ekj("transparent",0===e)}}function Gi(o,n){1&o&&t._UZ(0,"clr-icon",16)}function Bi(o,n){1&o&&t._UZ(0,"clr-icon",17)}function ji(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",13),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().item,c=t.oxw();return t.KtG(c.toggleExpanded(i))}),t.YNc(1,Gi,1,0,"clr-icon",14),t.YNc(2,Bi,1,0,"clr-icon",15),t.qZA()}if(2&o){const e=t.oxw().item,a=t.oxw();t.xp6(1),t.Q6J("ngIf",!a.expandedIds.includes(e.id)),t.xp6(1),t.Q6J("ngIf",a.expandedIds.includes(e.id))}}function Ki(o,n){1&o&&(t.TgZ(0,"button",18),t._UZ(1,"clr-icon",19),t.qZA())}(Qt=qt).\u0275fac=function(n){return new(n||Qt)},Qt.\u0275pipe=t.Yjl({name:"collectionBreadcrumb",type:Qt,pure:!0});const Hi=function(o){return{name:o}};function Wi(o,n){if(1&o){const e=t.EpF();t._UZ(0,"div",7),t.YNc(1,Yi,1,2,"clr-icon",8),t.YNc(2,ji,3,2,"button",9),t.YNc(3,Ki,2,0,"button",10),t.TgZ(4,"button",11),t.NdJ("click",function(){const c=t.CHM(e).item,s=t.oxw();return t.KtG(s.resolveWith(c))}),t.TgZ(5,"span"),t._uU(6),t.ALo(7,"translate"),t.qZA()()}if(2&o){const e=n.item,a=n.depth;t.Q6J("ngClass","indent-"+a),t.xp6(1),t.Q6J("ngIf",!(null!=e.children&&e.children.length)&&"__"!==e.parentId),t.xp6(1),t.Q6J("ngIf",null==e.children?null:e.children.length),t.xp6(1),t.Q6J("ngIf","__"===e.parentId),t.xp6(3),t.Oqu(t.xi3(7,5,"catalog.move-collection-to",t.VKq(8,Hi,e.name)))}}function zi(o,n){if(1&o&&(t.TgZ(0,"div")(1,"span",24),t._uU(2,"/"),t.qZA(),t._uU(3),t.qZA()),2&o){const e=n.$implicit;t.xp6(3),t.hij("",e.name," ")}}function Xi(o,n){if(1&o&&(t.ynx(0),t.YNc(1,zi,4,1,"div",23),t.BQk()),2&o){const e=t.oxw().ngIf;t.xp6(1),t.Q6J("ngForOf",e)}}function tr(o,n){1&o&&(t.TgZ(0,"span",24),t._uU(1,"/"),t.qZA())}function er(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Xi,2,1,"ng-container",21),t.YNc(2,tr,2,0,"span",22),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length),t.xp6(1),t.Q6J("ngIf",!e.length)}}function nr(o,n){if(1&o&&(t.TgZ(0,"div",20),t.YNc(1,er,3,2,"ng-container",21),t.ALo(2,"collectionBreadcrumb"),t.qZA()),2&o){const e=n.item;t.xp6(1),t.Q6J("ngIf",t.lcZ(2,1,e))}}function or(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.slug," ")}}class ye{constructor(n,e){this.dataService=n,this.i18nService=e,this.searchTermControl=new d.NI(""),this.currentPage$=new V.X(1),this.itemsPerPage$=new V.X(10),this.expandedIds$=new _t.x,this.expandedIds=[]}ngOnInit(){const n=this.dataService.collection.getCollections(),e=this.searchTermControl.valueChanges.pipe((0,it.b)(250),(0,S.x)(),(0,j.O)("")),a=this.currentPage$.pipe((0,S.x)()),i=this.itemsPerPage$.pipe((0,S.x)());(0,I.a)(e,a,i).subscribe(([s,p,_])=>{const f=""===s;n.ref.refetch({options:{skip:(p-1)*_,take:_,filter:{name:{contains:s}},topLevelOnly:f}})});const c=this.dataService.collection.getCollections({take:1,topLevelOnly:!0}).mapSingle(s=>s.collections.items[0].parentId);this.items$=(0,I.a)(n.mapStream(({collections:s})=>s),c).pipe((0,v.U)(([s,p])=>[...p?[{id:p,name:this.i18nService.translate("catalog.root-collection"),slug:"",parentId:"__",position:0,featuredAsset:null,children:[],breadcrumbs:[],isPrivate:!1,createdAt:"",updatedAt:""}]:[],...s.items])),this.totalItems$=n.mapStream(s=>s.collections.totalItems),this.subCollections$=this.expandedIds$.pipe((0,w.b)(s=>this.expandedIds=s),(0,b.w)(s=>s.length?this.dataService.collection.getCollections({take:999,filter:{parentId:{in:s}}}).mapStream(p=>p.collections.items):(0,L.of)([])))}toggleExpanded(n){let e=this.expandedIds;e.includes(n.id)?e=e.filter(a=>a!==n.id):e.push(n.id),this.expandedIds$.next(e)}}($t=ye).\u0275fac=function(n){return new(n||$t)(t.Y36(l.DoR),t.Y36(l.Dp7))},$t.\u0275cmp=t.Xpm({type:$t,selectors:[["vdr-move-collections-dialog"]],decls:21,vars:33,consts:[["vdrDialogTitle",""],["id","move-collection-list",1,"mt-2",3,"items","subCollections","itemsPerPage","totalItems","currentPage","pageChange","itemsPerPageChange"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault"],["id","name",3,"heading","optional"],["id","breadcrumb",3,"heading"],["id","slug",3,"heading"],[3,"ngClass"],["class","child-arrow","shape","child-arrow",3,"transparent",4,"ngIf"],["class","icon-button folder-button",3,"click",4,"ngIf"],["class","icon-button folder-button","disabled","",4,"ngIf"],[1,"button-ghost",3,"click"],["shape","child-arrow",1,"child-arrow"],[1,"icon-button","folder-button",3,"click"],["shape","folder",4,"ngIf"],["shape","folder-open",4,"ngIf"],["shape","folder"],["shape","folder-open"],["disabled","",1,"icon-button","folder-button"],["shape","folder",1,"is-solid"],[1,"breadcrumb"],[4,"ngIf"],["class","separator",4,"ngIf"],[4,"ngFor","ngForOf"],[1,"separator"]],template:function(n,e){1&n&&(t.YNc(0,qi,2,3,"ng-template",0),t.TgZ(1,"vdr-collection-data-table",1),t.NdJ("pageChange",function(i){return e.currentPage$.next(i)})("itemsPerPageChange",function(i){return e.itemsPerPage$.next(i)}),t.ALo(2,"async"),t.ALo(3,"async"),t.ALo(4,"async"),t.ALo(5,"async"),t.ALo(6,"async"),t._UZ(7,"vdr-dt2-search",2),t.ALo(8,"translate"),t.TgZ(9,"vdr-dt2-column",3),t.ALo(10,"translate"),t.YNc(11,$i,1,1,"ng-template"),t.qZA(),t.TgZ(12,"vdr-dt2-column",4),t.ALo(13,"translate"),t.YNc(14,Wi,8,10,"ng-template"),t.qZA(),t.TgZ(15,"vdr-dt2-column",5),t.ALo(16,"translate"),t.YNc(17,nr,3,3,"ng-template"),t.qZA(),t.TgZ(18,"vdr-dt2-column",6),t.ALo(19,"translate"),t.YNc(20,or,1,1,"ng-template"),t.qZA()()),2&n&&(t.xp6(1),t.Q6J("items",t.lcZ(2,13,e.items$))("subCollections",t.lcZ(3,15,e.subCollections$))("itemsPerPage",t.lcZ(4,17,e.itemsPerPage$))("totalItems",t.lcZ(5,19,e.totalItems$))("currentPage",t.lcZ(6,21,e.currentPage$)),t.xp6(6),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(8,23,"common.search-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(10,25,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(13,27,"common.name"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(16,29,"common.breadcrumb")),t.xp6(3),t.Q6J("heading",t.lcZ(19,31,"common.slug")))},dependencies:[h.qvL,g.mk,g.sg,g.O5,K.q,z.U,at.J,St,g.Ov,x.X$,qt],styles:["[_nghost-%COMP%]{--indent-spacing: 18px}.indent-1[_ngcontent-%COMP%]{padding-inline-start:var(--indent-spacing)}.indent-2[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 2)}.indent-3[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 3)}.indent-4[_ngcontent-%COMP%], .indent-5[_ngcontent-%COMP%], .indent-6[_ngcontent-%COMP%], .indent-7[_ngcontent-%COMP%], .indent-8[_ngcontent-%COMP%], .indent-9[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 4)}.child-arrow[_ngcontent-%COMP%]{margin:1px 6px}.child-arrow.transparent[_ngcontent-%COMP%]{opacity:0}.breadcrumb[_ngcontent-%COMP%]{display:flex}.separator[_ngcontent-%COMP%]{color:var(--color-weight-500);margin:0 3px}"],changeDetection:0});const Tn=(0,l.wwB)({location:"collection-list",requiresPermission:o=>o.includes(l.y3$.DeleteCollection)||o.includes(l.y3$.DeleteCatalog),getItemName:o=>o.name,bulkDelete:(o,n)=>o.collection.deleteCollections(n).pipe((0,v.U)(e=>e.deleteCollections))}),bn={location:"collection-list",label:(0,u.J)("catalog.move-collections"),icon:"drag-handle",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateCollection),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.DoR),s=o.get(l.gqp);i.fromComponent(ye,{size:"xl",closable:!0}).pipe((0,b.w)(p=>{if(p){const _=n.map(f=>({collectionId:f.id,parentId:p.id,index:0}));return c.collection.moveCollection(_)}return F.E})).subscribe(p=>{s.success((0,u.J)("catalog.move-collections-success"),{count:n.length}),a(),e.refresh()})}},xn=(0,l.z1G)({location:"collection-list",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateCollection),getItemName:o=>o.name,bulkAssignToChannel:(o,n,e)=>o.collection.assignCollectionsToChannel({collectionIds:n,channelId:e}).pipe((0,v.U)(a=>a.assignCollectionsToChannel))}),An=(0,l.RBx)({location:"collection-list",requiresPermission:o=>o.includes(l.y3$.DeleteCatalog)||o.includes(l.y3$.DeleteCollection),getItemName:o=>o.name,bulkRemoveFromChannel:(o,n,e)=>o.collection.removeCollectionsFromChannel({channelId:e,collectionIds:n}).pipe((0,v.U)(a=>a.removeCollectionsFromChannel))});var Yt,Le=m(97615),Ne=m(20419),ar=m(29187),Zn=m(65806);const ir=function(){return["./create"]};function rr(o,n){1&o&&(t.TgZ(0,"a",6),t._UZ(1,"clr-icon",7),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,ir)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.create-new-collection")," "))}function cr(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function lr(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function sr(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}function dr(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.position," ")}}function pr(o,n){if(1&o&&t._UZ(0,"clr-icon",26),2&o){const e=t.oxw().depth;t.ekj("transparent",0===e)}}function ur(o,n){1&o&&t._UZ(0,"clr-icon",30)}function mr(o,n){1&o&&t._UZ(0,"clr-icon",31)}function _r(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",27),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().item,c=t.oxw(2);return t.KtG(c.toggleExpanded(i))}),t.YNc(1,ur,1,0,"clr-icon",28),t.YNc(2,mr,1,0,"clr-icon",29),t.qZA()}if(2&o){const e=t.oxw().item,a=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!a.expandedIds.includes(e.id)),t.xp6(1),t.Q6J("ngIf",a.expandedIds.includes(e.id))}}const Pn=function(o){return["./",o]};function gr(o,n){if(1&o&&(t._UZ(0,"div",21),t.YNc(1,pr,1,2,"clr-icon",22),t.YNc(2,_r,3,2,"button",23),t.TgZ(3,"a",24)(4,"span"),t._uU(5),t.qZA(),t._UZ(6,"clr-icon",25),t.qZA()),2&o){const e=n.item,a=n.depth;t.Q6J("ngClass","indent-"+a),t.xp6(1),t.Q6J("ngIf",!(null!=e.children&&e.children.length)),t.xp6(1),t.Q6J("ngIf",null==e.children?null:e.children.length),t.xp6(1),t.Q6J("routerLink",t.VKq(5,Pn,e.id)),t.xp6(2),t.Oqu(e.name)}}function fr(o,n){if(1&o&&(t.TgZ(0,"div")(1,"span",36),t._uU(2,"/"),t.qZA(),t._uU(3),t.qZA()),2&o){const e=n.$implicit;t.xp6(3),t.hij("",e.name," ")}}function hr(o,n){if(1&o&&(t.ynx(0),t.YNc(1,fr,4,1,"div",35),t.BQk()),2&o){const e=t.oxw().ngIf;t.xp6(1),t.Q6J("ngForOf",e)}}function vr(o,n){1&o&&(t.TgZ(0,"span",36),t._uU(1,"/"),t.qZA())}function Cr(o,n){if(1&o&&(t.ynx(0),t.YNc(1,hr,2,1,"ng-container",33),t.YNc(2,vr,2,0,"span",34),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length),t.xp6(1),t.Q6J("ngIf",!e.length)}}function Tr(o,n){if(1&o&&(t.TgZ(0,"div",32),t.YNc(1,Cr,3,2,"ng-container",33),t.ALo(2,"collectionBreadcrumb"),t.qZA()),2&o){const e=n.item;t.xp6(1),t.Q6J("ngIf",t.lcZ(2,1,e))}}function br(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.slug," ")}}function xr(o,n){1&o&&(t.TgZ(0,"vdr-chip",39),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.private")))}function Ar(o,n){1&o&&(t.TgZ(0,"vdr-chip",40),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.public")))}function Zr(o,n){if(1&o&&(t.YNc(0,xr,3,3,"vdr-chip",37),t.YNc(1,Ar,3,3,"vdr-chip",38)),2&o){const e=n.item;t.Q6J("ngIf",e.isPrivate),t.xp6(1),t.Q6J("ngIf",!e.isPrivate)}}const Pr=function(o){return{contents:o}},Or=function(){return{contentsPage:1}};function Ir(o,n){if(1&o&&(t.TgZ(0,"a",41)(1,"span"),t._uU(2),t.ALo(3,"translate"),t.qZA(),t._UZ(4,"clr-icon",42),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.VKq(7,Pn,t.VKq(5,Pr,e.id)))("queryParams",t.DdM(9,Or)),t.xp6(2),t.Oqu(t.lcZ(3,3,"common.view-contents"))}}function Fr(o,n){if(1&o&&t._UZ(0,"vdr-dt2-custom-field-column",43),2&o){const e=n.$implicit,a=t.oxw(2);t.Q6J("customField",e)("sorts",a.sorts)}}function Dr(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-collection-data-table",8),t.NdJ("pageChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.setPageNumber(i))})("itemsPerPageChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.setItemsPerPage(i))})("changeOrder",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.onRearrange(i))}),t.ALo(1,"async"),t.ALo(2,"async"),t.ALo(3,"async"),t.ALo(4,"async"),t.ALo(5,"async"),t.ALo(6,"async"),t._UZ(7,"vdr-bulk-action-menu",9)(8,"vdr-dt2-search",10),t.ALo(9,"translate"),t.TgZ(10,"vdr-dt2-column",11),t.ALo(11,"translate"),t.YNc(12,cr,1,1,"ng-template"),t.qZA(),t.TgZ(13,"vdr-dt2-column",12),t.ALo(14,"translate"),t.YNc(15,lr,2,4,"ng-template"),t.qZA(),t.TgZ(16,"vdr-dt2-column",13),t.ALo(17,"translate"),t.YNc(18,sr,2,4,"ng-template"),t.qZA(),t.TgZ(19,"vdr-dt2-column",14),t.ALo(20,"translate"),t.YNc(21,dr,1,1,"ng-template"),t.qZA(),t.TgZ(22,"vdr-dt2-column",15),t.ALo(23,"translate"),t.YNc(24,gr,7,7,"ng-template"),t.qZA(),t.TgZ(25,"vdr-dt2-column",16),t.ALo(26,"translate"),t.YNc(27,Tr,3,3,"ng-template"),t.qZA(),t.TgZ(28,"vdr-dt2-column",17),t.ALo(29,"translate"),t.YNc(30,br,1,1,"ng-template"),t.qZA(),t.TgZ(31,"vdr-dt2-column",18),t.ALo(32,"translate"),t.YNc(33,Zr,2,2,"ng-template"),t.qZA(),t.TgZ(34,"vdr-dt2-column",19),t.ALo(35,"translate"),t.YNc(36,Ir,5,10,"ng-template"),t.qZA(),t.YNc(37,Fr,1,2,"vdr-dt2-custom-field-column",20),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("items",t.lcZ(1,32,e.items$))("subCollections",t.lcZ(2,34,e.subCollections$))("itemsPerPage",t.lcZ(3,36,e.itemsPerPage$))("totalItems",t.lcZ(4,38,e.totalItems$))("currentPage",t.lcZ(5,40,e.currentPage$))("filters",e.filters)("activeIndex",t.lcZ(6,42,e.activeCollectionIndex$)),t.xp6(7),t.Q6J("hostComponent",e)("selectionManager",e.selectionManager),t.xp6(1),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(9,44,"common.search-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(11,46,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(14,48,"common.created-at"))("hiddenByDefault",!0)("sort",e.sorts.get("createdAt")),t.xp6(3),t.Q6J("heading",t.lcZ(17,50,"common.updated-at"))("hiddenByDefault",!0)("sort",e.sorts.get("updatedAt")),t.xp6(3),t.Q6J("heading",t.lcZ(20,52,"common.position"))("hiddenByDefault",!0)("sort",e.sorts.get("position")),t.xp6(3),t.Q6J("heading",t.lcZ(23,54,"common.name"))("optional",!1)("sort",e.sorts.get("name")),t.xp6(3),t.Q6J("heading",t.lcZ(26,56,"common.breadcrumb")),t.xp6(3),t.Q6J("heading",t.lcZ(29,58,"common.slug"))("sort",e.sorts.get("slug")),t.xp6(3),t.Q6J("heading",t.lcZ(32,60,"common.visibility")),t.xp6(3),t.Q6J("heading",t.lcZ(35,62,"common.view-contents"))("optional",!1),t.xp6(3),t.Q6J("ngForOf",e.customFields)}}function yr(o,n){if(1&o&&(t.ynx(0),t._UZ(1,"vdr-collection-contents",44),t.ALo(2,"async"),t.BQk()),2&o){const e=t.oxw(2);t.xp6(1),t.Q6J("collectionId",t.lcZ(2,1,e.activeCollectionId$))}}function Lr(o,n){if(1&o&&(t.YNc(0,yr,3,3,"ng-container",33),t.ALo(1,"async")),2&o){const e=t.oxw();t.Q6J("ngIf",t.lcZ(1,1,e.activeCollectionId$))}}const Nr=function(){return["CreateCatalog","CreateCollection"]};class ke extends l.$ms{constructor(n,e){super(),this.dataService=n,this.notificationService=e,this.expandedIds=[],this.customFields=this.getCustomFieldConfig("Collection"),this.filters=this.createFilterCollection().addIdFilter().addDateFilters().addFilter({name:"slug",label:(0,u.J)("common.slug"),type:{kind:"text"},filterField:"slug"}).addFilter({name:"visibility",type:{kind:"boolean"},label:(0,u.J)("common.visibility"),toFilterInput:a=>({isPrivate:{eq:!a}})}).addCustomFieldFilters(this.customFields).connectToRoute(this.route),this.sorts=this.createSortCollection().defaultSort("position","ASC").addSort({name:"createdAt"}).addSort({name:"updatedAt"}).addSort({name:"name"}).addSort({name:"slug"}).addSort({name:"position"}).addCustomFieldSorts(this.customFields).connectToRoute(this.route),super.configure({document:l.rcS,getItems:a=>a.collections,setVariables:(a,i)=>{const c=""===this.searchTermControl.value&&0===this.filters.activeFilters.length||void 0;return{options:{skip:a,take:i,filter:{name:{contains:this.searchTermControl.value},...this.filters.createFilterInput()},topLevelOnly:c,sort:this.sorts.createSortInput()}}},refreshListOnChanges:[this.filters.valueChanges,this.sorts.valueChanges]})}ngOnInit(){super.ngOnInit(),this.activeCollectionId$=this.route.paramMap.pipe((0,v.U)(e=>e.get("contents")),(0,S.x)());const n=this.route.queryParamMap.pipe((0,v.U)(e=>e.get("expanded")),(0,S.x)(),(0,v.U)(e=>e?e.split(","):[]));n.pipe((0,Nt.R)(this.destroy$)).subscribe(e=>{this.expandedIds=e}),this.subCollections$=(0,I.a)(n,this.refresh$).pipe((0,b.w)(([e])=>e.length?this.dataService.collection.getCollections({take:999,filter:{parentId:{in:e}}}).mapStream(a=>a.collections.items):(0,L.of)([]))),this.activeCollectionTitle$=(0,I.a)(this.activeCollectionId$,this.items$,this.subCollections$).pipe((0,v.U)(([e,a,i])=>{if(e){const c=[...a,...i].find(s=>s.id===e);return c?c.name:""}return""})),this.activeCollectionIndex$=(0,I.a)(this.activeCollectionId$,this.items$,this.subCollections$).pipe((0,v.U)(([e,a,i])=>{if(e){const c=[];for(const s of a){c.push(s);const p=i.filter(_=>_.parentId&&_.parentId===s.id);c.push(...p)}return c.findIndex(s=>s.id===e)}return-1}))}onRearrange(n){this.dataService.collection.moveCollection([n]).subscribe({next:()=>{this.notificationService.success((0,u.J)("common.notify-saved-changes")),this.refresh()},error:e=>{this.notificationService.error((0,u.J)("common.notify-save-changes-error"))}})}closeContents(){const n={...this.route.snapshot.params};delete n.contents,this.router.navigate(["./",n],{relativeTo:this.route,queryParamsHandling:"preserve"})}setLanguage(n){this.dataService.client.setContentLanguage(n).subscribe()}toggleExpanded(n){let e=this.expandedIds;e.includes(n.id)?e=e.filter(a=>a!==n.id):e.push(n.id),this.router.navigate(["./"],{queryParams:{expanded:e.filter(a=>!!a).join(",")},queryParamsHandling:"merge",relativeTo:this.route})}}var xt,ct;(Yt=ke).\u0275fac=function(n){return new(n||Yt)(t.Y36(l.DoR),t.Y36(l.gqp))},Yt.\u0275cmp=t.Xpm({type:Yt,selectors:[["vdr-collection-list"]],features:[t.qOj],decls:14,vars:14,consts:[[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","collection-list"],["class","btn btn-primary",3,"routerLink",4,"vdrIfPermissions"],[3,"rightPanelOpen","closeClicked"],["vdrSplitViewLeft",""],["vdrSplitViewRight","",3,"splitViewTitle"],[1,"btn","btn-primary",3,"routerLink"],["shape","plus"],["id","collection-list",1,"mt-2",3,"items","subCollections","itemsPerPage","totalItems","currentPage","filters","activeIndex","pageChange","itemsPerPageChange","changeOrder"],["locationId","collection-list",3,"hostComponent","selectionManager"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault"],["id","created-at",3,"heading","hiddenByDefault","sort"],["id","updated-at",3,"heading","hiddenByDefault","sort"],["id","position",3,"heading","hiddenByDefault","sort"],["id","name",3,"heading","optional","sort"],["id","breadcrumb",3,"heading"],["id","slug",3,"heading","sort"],["id","visibility",3,"heading"],["id","view-contents",3,"heading","optional"],[3,"customField","sorts",4,"ngFor","ngForOf"],[3,"ngClass"],["class","child-arrow","shape","child-arrow",3,"transparent",4,"ngIf"],["class","icon-button folder-button",3,"click",4,"ngIf"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"],["shape","child-arrow",1,"child-arrow"],[1,"icon-button","folder-button",3,"click"],["shape","folder",4,"ngIf"],["shape","folder-open",4,"ngIf"],["shape","folder"],["shape","folder-open"],[1,"breadcrumb"],[4,"ngIf"],["class","separator",4,"ngIf"],[4,"ngFor","ngForOf"],[1,"separator"],["colorType","warning",4,"ngIf"],["colorType","success",4,"ngIf"],["colorType","warning"],["colorType","success"],["queryParamsHandling","merge",1,"button-small","bg-weight-150",3,"routerLink","queryParams"],["shape","file-group"],[3,"customField","sorts"],[3,"collectionId"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.qZA()(),t.TgZ(6,"vdr-ab-right"),t._UZ(7,"vdr-action-bar-items",1),t.YNc(8,rr,4,5,"a",2),t.qZA()()(),t.TgZ(9,"vdr-split-view",3),t.NdJ("closeClicked",function(){return e.closeContents()}),t.ALo(10,"async"),t.YNc(11,Dr,38,64,"ng-template",4),t.YNc(12,Lr,2,3,"ng-template",5),t.ALo(13,"async"),t.qZA()),2&n&&(t.xp6(3),t.Q6J("availableLanguageCodes",t.lcZ(4,5,e.availableLanguages$))("currentLanguageCode",t.lcZ(5,7,e.contentLanguage$)),t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(13,Nr)),t.xp6(1),t.Q6J("rightPanelOpen",t.lcZ(10,9,e.activeCollectionId$)),t.xp6(3),t.Q6J("splitViewTitle",t.lcZ(13,11,e.activeCollectionTitle$)))},dependencies:[h.qvL,g.mk,g.sg,g.O5,P.rH,A.Kk,A.BN,A.mz,H.Y,G.S,$.H,tt.W,Le.c,z.U,at.J,Ne.j,ar._,Zn.L,Zn.a,E.z,Et,St,g.Ov,x.X$,ot.H,qt],styles:["[_nghost-%COMP%]{--indent-spacing: 18px}.indent-1[_ngcontent-%COMP%]{padding-inline-start:var(--indent-spacing)}.indent-2[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 2)}.indent-3[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 3)}.indent-4[_ngcontent-%COMP%], .indent-5[_ngcontent-%COMP%], .indent-6[_ngcontent-%COMP%], .indent-7[_ngcontent-%COMP%], .indent-8[_ngcontent-%COMP%], .indent-9[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 4)}.child-arrow[_ngcontent-%COMP%]{margin:1px 6px}.child-arrow.transparent[_ngcontent-%COMP%]{opacity:0}.breadcrumb[_ngcontent-%COMP%]{display:flex}.separator[_ngcontent-%COMP%]{color:var(--color-weight-500);margin:0 3px}"],changeDetection:0});class Gt{constructor(){this.allMoveListItems=[],this._rearrange$=new _t.x,this._delete$=new _t.x,this.rearrange$=this._rearrange$.asObservable(),this.delete$=this._delete$.asObservable()}ngOnDestroy(){this._rearrange$.complete(),this._delete$.complete()}setCollectionTree(n){this.collectionTree=n}resetMoveList(){this.allMoveListItems=[]}getMoveListItems(n){return 0===this.allMoveListItems.length&&(this.allMoveListItems=this.calculateAllMoveListItems()),this.allMoveListItems.filter(e=>e.id!==n.id&&!e.ancestorIdPath.has(n.id)&&e.id!==n.parent?.id)}onDrop(n){const e=n.item.data,i=n.container.data.id;if(null==i)throw new Error("Could not determine the ID of the root Collection");this._rearrange$.next({collectionId:e.id,parentId:i,index:n.currentIndex})}onMove(n){this._rearrange$.next(n)}onDelete(n){this._delete$.next(n)}calculateAllMoveListItems(){const n=(e,a,i,c)=>{const s=a.concat(e.name);return c.push({path:s.slice(1).join(" / ")||"root",id:e.id,ancestorIdPath:i}),e.children.forEach(p=>n(p,s,new Set([...i,e.id]),c)),c};return n(this.collectionTree,[],new Set,[])}}function kr(o,n){1&o&&t._UZ(0,"clr-icon",32)}function Jr(o,n){1&o&&t._UZ(0,"clr-icon",33)}function Ur(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",29),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().$implicit,c=t.oxw();return t.KtG(c.toggleExpanded(i))}),t.YNc(1,kr,1,0,"clr-icon",30),t.YNc(2,Jr,1,0,"clr-icon",31),t.qZA()}if(2&o){const e=t.oxw().$implicit,a=t.oxw();t.Q6J("disabled",a.expandAll),t.xp6(1),t.Q6J("ngIf",!e.expanded&&!a.expandAll),t.xp6(1),t.Q6J("ngIf",e.expanded||a.expandAll)}}function Mr(o,n){1&o&&t._UZ(0,"div",34)}function Rr(o,n){1&o&&(t.TgZ(0,"vdr-chip"),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.private")))}function Er(o,n){1&o&&(t.TgZ(0,"div",35),t._UZ(1,"clr-icon",36),t.qZA())}(xt=Gt).\u0275fac=function(n){return new(n||xt)},xt.\u0275prov=t.Yz7({token:xt,factory:xt.\u0275fac});const Vr=function(o){return{parentId:o}},Sr=function(o){return["./","create",o]};function wr(o,n){if(1&o&&(t.TgZ(0,"a",37),t._UZ(1,"clr-icon",38),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o){const e=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(6,Sr,t.VKq(4,Vr,e.id))),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.create-new-collection")," ")}}function Qr(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",21),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw().$implicit,p=t.oxw();return t.KtG(p.move(s,c.id))}),t.ALo(1,"async"),t.TgZ(2,"div",39)(3,"div",40),t._UZ(4,"clr-icon",41),t.qZA(),t.TgZ(5,"div",42),t._uU(6),t.qZA()()()}if(2&o){const e=n.$implicit,a=t.oxw(2);t.Q6J("disabled",!t.lcZ(1,2,a.hasUpdatePermission$)),t.xp6(6),t.hij(" ",e.path," ")}}function qr(o,n){if(1&o&&t._UZ(0,"vdr-collection-tree-node",43),2&o){const e=t.oxw().$implicit,a=t.oxw();t.Q6J("expandAll",a.expandAll)("collectionTree",e)("activeCollectionId",a.activeCollectionId)("selectionManager",a.selectionManager)}}const $r=function(o){return{contents:o}},Yr=function(o){return["./",o]},Gr=function(o){return["/catalog/collections/",o]},Br=function(){return["UpdateCatalog","UpdateCollection"]},jr=function(){return["CreateCatalog","CreateCollection"]};function Kr(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",3)(1,"div",4)(2,"div")(3,"input",5),t.NdJ("click",function(i){const s=t.CHM(e).$implicit,p=t.oxw();return t.KtG(p.selectionManager.toggleSelection(s,i))}),t.qZA()(),t.TgZ(4,"div",6),t.YNc(5,Ur,3,3,"button",7),t.YNc(6,Mr,1,0,"ng-template",null,8,t.W1O),t._uU(8),t.qZA(),t._UZ(9,"div",9),t.YNc(10,Rr,3,3,"vdr-chip",10),t.TgZ(11,"a",11),t._UZ(12,"clr-icon",12),t._uU(13),t.ALo(14,"translate"),t.qZA(),t.TgZ(15,"a",13),t._UZ(16,"clr-icon",14),t._uU(17),t.ALo(18,"translate"),t.qZA(),t.YNc(19,Er,2,0,"div",15),t.TgZ(20,"vdr-dropdown")(21,"button",16),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.getMoveListItems(c))}),t._UZ(22,"clr-icon",17),t.qZA(),t.TgZ(23,"vdr-dropdown-menu",18),t.YNc(24,wr,4,8,"a",19),t._UZ(25,"div",20),t.TgZ(26,"button",21),t.NdJ("click",function(){const i=t.CHM(e),c=i.$implicit,s=i.index,p=t.oxw();return t.KtG(p.moveUp(c,s))}),t.ALo(27,"async"),t._UZ(28,"clr-icon",22),t._uU(29),t.ALo(30,"translate"),t.qZA(),t.TgZ(31,"button",21),t.NdJ("click",function(){const i=t.CHM(e),c=i.$implicit,s=i.index,p=t.oxw();return t.KtG(p.moveDown(c,s))}),t.ALo(32,"async"),t._UZ(33,"clr-icon",23),t._uU(34),t.ALo(35,"translate"),t.qZA(),t.TgZ(36,"h4",24),t._uU(37),t.ALo(38,"translate"),t.qZA(),t.YNc(39,Qr,7,4,"button",25),t._UZ(40,"div",20),t.TgZ(41,"button",26),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.delete(c.id))}),t.ALo(42,"async"),t._UZ(43,"clr-icon",27),t._uU(44),t.ALo(45,"translate"),t.qZA()()()(),t.YNc(46,qr,1,4,"vdr-collection-tree-node",28),t.qZA()}if(2&o){const e=n.$implicit,a=n.index,i=t.MAs(7),c=t.oxw();t.ekj("private",e.isPrivate),t.Q6J("cdkDragData",e),t.xp6(1),t.ekj("active",e.id===c.activeCollectionId),t.Q6J("ngClass","depth-"+c.depth),t.xp6(2),t.Q6J("checked",c.selectionManager.isSelected(e)),t.xp6(2),t.Q6J("ngIf",null==e.children?null:e.children.length)("ngIfElse",i),t.xp6(3),t.hij(" ",e.name," "),t.xp6(2),t.Q6J("ngIf",e.isPrivate),t.xp6(1),t.Q6J("routerLink",t.VKq(46,Yr,t.VKq(44,$r,e.id))),t.xp6(2),t.hij(" ",t.lcZ(14,26,"catalog.view-contents")," "),t.xp6(2),t.Q6J("routerLink",t.VKq(48,Gr,e.id)),t.xp6(2),t.hij(" ",t.lcZ(18,28,"common.edit")," "),t.xp6(2),t.Q6J("vdrIfPermissions",t.DdM(50,Br)),t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(51,jr)),t.xp6(2),t.Q6J("disabled",0===a||!t.lcZ(27,30,c.hasUpdatePermission$)),t.xp6(3),t.hij(" ",t.lcZ(30,32,"catalog.move-up")," "),t.xp6(2),t.Q6J("disabled",a===c.collectionTree.children.length-1||!t.lcZ(32,34,c.hasUpdatePermission$)),t.xp6(3),t.hij(" ",t.lcZ(35,36,"catalog.move-down")," "),t.xp6(3),t.Oqu(t.lcZ(38,38,"catalog.move-to")),t.xp6(2),t.Q6J("ngForOf",c.moveListItems),t.xp6(2),t.Q6J("disabled",!t.lcZ(42,40,c.hasDeletePermission$)),t.xp6(3),t.hij(" ",t.lcZ(45,42,"common.delete")," "),t.xp6(2),t.Q6J("ngIf",e.expanded||c.expandAll)}}class Je{constructor(n,e,a,i,c,s){this.parent=n,this.dataService=e,this.collectionTreeService=a,this.router=i,this.route=c,this.changeDetectorRef=s,this.depth=0,this.expandAll=!1,this.moveListItems=[],n&&(this.depth=n.depth+1)}ngOnInit(){this.parentName=this.collectionTree.name||"<root>";const n=this.dataService.client.userStatus().mapStream(e=>e.userStatus.permissions).pipe((0,r.d)(1));this.hasUpdatePermission$=n.pipe((0,v.U)(e=>e.includes(l.y3$.UpdateCatalog)||e.includes(l.y3$.UpdateCollection))),this.hasDeletePermission$=n.pipe((0,v.U)(e=>e.includes(l.y3$.DeleteCatalog)||e.includes(l.y3$.DeleteCollection))),this.subscription=this.selectionManager?.selectionChanges$.subscribe(()=>this.changeDetectorRef.markForCheck())}ngOnChanges(n){const e=n.expandAll;e&&!0===e.previousValue&&!1===e.currentValue&&this.collectionTree.children.forEach(a=>a.expanded=!1)}ngOnDestroy(){this.subscription?.unsubscribe()}trackByFn(n,e){return e.id}toggleExpanded(n){n.expanded=!n.expanded;let e=this.route.snapshot.queryParamMap.get("expanded")?.split(",")??[];n.expanded?e.push(n.id):e=e.filter(a=>a!==n.id),this.router.navigate(["./"],{queryParams:{expanded:e.filter(a=>!!a).join(",")},queryParamsHandling:"merge",relativeTo:this.route})}getMoveListItems(n){this.moveListItems=this.collectionTreeService.getMoveListItems(n)}move(n,e){this.collectionTreeService.onMove({index:0,parentId:e,collectionId:n.id})}moveUp(n,e){n.parent&&this.collectionTreeService.onMove({index:e-1,parentId:n.parent.id,collectionId:n.id})}moveDown(n,e){n.parent&&this.collectionTreeService.onMove({index:e+1,parentId:n.parent.id,collectionId:n.id})}drop(n){(0,N.bA)(this.collectionTree.children,n.previousIndex,n.currentIndex),this.collectionTreeService.onDrop(n)}delete(n){this.collectionTreeService.onDelete(n)}}function On(o,n,e=[]){const a=[],i={},c=function Hr(o){const n=new Map;function e(a){n.set(a.id,a),a.children.forEach(e)}return o&&e(o),n}(n);for(const p of o)i[p.id]={...p,children:[]};for(const p of o.map(_=>_.id))if(i.hasOwnProperty(p)){const _=i[p];_.expanded=c.get(p)?.expanded??e.includes(p);const f=_.parent;if(!f)continue;i[f.id]?i[f.id]?i[f.id].children.push(_):i[f.id]={children:[_]}:a.push(_)}return{id:a.length?a[0].parent.id:void 0,children:a}}var Bt,jt,Kt;function Wr(o,n){if(1&o&&t._UZ(0,"vdr-collection-tree-node",1),2&o){const e=t.oxw();t.Q6J("expandAll",e.expandAll)("collectionTree",e.collectionTree)("selectionManager",e.selectionManager)("activeCollectionId",e.activeCollectionId)}}(ct=Je).\u0275fac=function(n){return new(n||ct)(t.Y36(ct,12),t.Y36(l.DoR),t.Y36(Gt),t.Y36(P.F0),t.Y36(P.gz),t.Y36(t.sBO))},ct.\u0275cmp=t.Xpm({type:ct,selectors:[["vdr-collection-tree-node"]],inputs:{collectionTree:"collectionTree",activeCollectionId:"activeCollectionId",expandAll:"expandAll",selectionManager:"selectionManager"},features:[t.TTD],decls:4,vars:6,consts:[["cdkDropList","",1,"tree-node",3,"cdkDropListData","cdkDropListDisabled","cdkDropListDropped"],["dropList",""],["class","collection","cdkDrag","",3,"private","cdkDragData",4,"ngFor","ngForOf","ngForTrackBy"],["cdkDrag","",1,"collection",3,"cdkDragData"],[1,"collection-detail",3,"ngClass"],["type","checkbox","clrCheckbox","",3,"checked","click"],[1,"name"],["class","icon-button folder-button",3,"disabled","click",4,"ngIf","ngIfElse"],["folderSpacer",""],[1,"flex-spacer"],[4,"ngIf"],["queryParamsHandling","preserve",1,"btn","btn-link","btn-sm",3,"routerLink"],["shape","view-list"],[1,"btn","btn-link","btn-sm",3,"routerLink"],["shape","edit"],["class","drag-handle","cdkDragHandle","",4,"vdrIfPermissions"],["vdrDropdownTrigger","",1,"icon-button",3,"click"],["shape","ellipsis-vertical"],["vdrPosition","bottom-right"],["class","dropdown-item",3,"routerLink",4,"vdrIfPermissions"],[1,"dropdown-divider"],["type","button","vdrDropdownItem","",3,"disabled","click"],["shape","caret up"],["shape","caret down"],[1,"dropdown-header"],["type","button","vdrDropdownItem","",3,"disabled","click",4,"ngFor","ngForOf"],["vdrDropdownItem","",1,"button",3,"disabled","click"],["shape","trash",1,"is-danger"],[3,"expandAll","collectionTree","activeCollectionId","selectionManager",4,"ngIf"],[1,"icon-button","folder-button",3,"disabled","click"],["shape","folder",4,"ngIf"],["shape","folder-open",4,"ngIf"],["shape","folder"],["shape","folder-open"],[1,"folder-button-spacer"],["cdkDragHandle","",1,"drag-handle"],["shape","drag-handle","size","24"],[1,"dropdown-item",3,"routerLink"],["shape","plus"],[1,"move-to-item"],[1,"move-icon"],["shape","child-arrow"],[1,"path"],[3,"expandAll","collectionTree","activeCollectionId","selectionManager"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0,1),t.NdJ("cdkDropListDropped",function(i){return e.drop(i)}),t.ALo(2,"async"),t.YNc(3,Kr,47,52,"div",2),t.qZA()),2&n&&(t.Q6J("cdkDropListData",e.collectionTree)("cdkDropListDisabled",!t.lcZ(2,4,e.hasUpdatePermission$)),t.xp6(3),t.Q6J("ngForOf",e.collectionTree.children)("ngForTrackBy",e.trackByFn))},dependencies:[h.q0d,h.qvL,h.KKC,g.mk,g.sg,g.O5,P.rH,N.Wj,N.Zt,N.Bh,H.Y,y.y,ht.J,vt.N,Ct.U,Tt.H,$.H,ct,g.Ov,x.X$],styles:["[_nghost-%COMP%]{display:block}.collection[_ngcontent-%COMP%]{background-color:var(--clr-table-bgcolor);border-radius:var(--clr-global-borderradius);font-size:.65rem;transition:transform .25s cubic-bezier(0,0,.2,1);margin-bottom:2px;border-inline-start:2px solid transparent;transition:border-left-color .2s}.collection.private[_ngcontent-%COMP%]{background-color:var(--color-component-bg-200)}.collection[_ngcontent-%COMP%] .collection-detail[_ngcontent-%COMP%]{padding:6px 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-component-border-100)}.collection[_ngcontent-%COMP%] .collection-detail.active[_ngcontent-%COMP%]{background-color:var(--clr-global-selection-color)}.collection[_ngcontent-%COMP%] .collection-detail.depth-1[_ngcontent-%COMP%]{padding-inline-start:36px}.collection[_ngcontent-%COMP%] .collection-detail.depth-2[_ngcontent-%COMP%]{padding-inline-start:60px}.collection[_ngcontent-%COMP%] .collection-detail.depth-3[_ngcontent-%COMP%]{padding-inline-start:84px}.collection[_ngcontent-%COMP%] .collection-detail.depth-4[_ngcontent-%COMP%]{padding-inline-start:108px}.collection[_ngcontent-%COMP%] .collection-detail[_ngcontent-%COMP%] .folder-button-spacer[_ngcontent-%COMP%]{display:inline-block;width:28px}.tree-node[_ngcontent-%COMP%]{display:block;background-color:var(--clr-table-bgcolor);border-radius:var(--clr-global-borderradius);overflow:hidden}.tree-node.cdk-drop-list-dragging[_ngcontent-%COMP%] > .collection[_ngcontent-%COMP%]{border-left-color:var(--color-primary-300)}.drag-placeholder[_ngcontent-%COMP%]{min-height:120px;background-color:var(--color-component-bg-300);transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-preview[_ngcontent-%COMP%]{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder[_ngcontent-%COMP%]{opacity:0}.cdk-drag-animating[_ngcontent-%COMP%]{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .tree-node[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.move-to-item[_ngcontent-%COMP%]{display:flex;white-space:normal;align-items:baseline}.move-to-item[_ngcontent-%COMP%] .move-icon[_ngcontent-%COMP%]{flex:none;margin-inline-end:3px}.move-to-item[_ngcontent-%COMP%] .path[_ngcontent-%COMP%]{line-height:18px}"],changeDetection:0});class He{constructor(n){this.collectionTreeService=n,this.expandAll=!1,this.expandedIds=[],this.rearrange=new t.vpe,this.deleteCollection=new t.vpe}ngOnChanges(n){"collections"in n&&this.collections&&(this.collectionTree=On(this.collections,this.collectionTree,this.expandedIds),this.collectionTreeService.setCollectionTree(this.collectionTree),this.collectionTreeService.resetMoveList())}ngOnInit(){this.collectionTreeService.rearrange$.subscribe(n=>this.rearrange.emit(n)),this.collectionTreeService.delete$.subscribe(n=>this.deleteCollection.emit(n))}}function zr(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.confirm-deletion-of-unused-variants-title"),"\n")}function Xr(o,n){if(1&o&&(t.TgZ(0,"li"),t._uU(1),t.qZA()),2&o){const e=n.$implicit;t.xp6(1),t.AsE("",e.name," (",e.sku,")")}}function tc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",3),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",4),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.confirm())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,2,"common.cancel")),t.xp6(3),t.hij(" ",t.lcZ(5,4,"common.confirm")," "))}(Bt=He).\u0275fac=function(n){return new(n||Bt)(t.Y36(Gt))},Bt.\u0275cmp=t.Xpm({type:Bt,selectors:[["vdr-collection-tree"]],inputs:{collections:"collections",activeCollectionId:"activeCollectionId",expandAll:"expandAll",expandedIds:"expandedIds",selectionManager:"selectionManager"},outputs:{rearrange:"rearrange",deleteCollection:"deleteCollection"},features:[t._Bn([Gt]),t.TTD],decls:1,vars:1,consts:[["cdkDropListGroup","",3,"expandAll","collectionTree","selectionManager","activeCollectionId",4,"ngIf"],["cdkDropListGroup","",3,"expandAll","collectionTree","selectionManager","activeCollectionId"]],template:function(n,e){1&n&&t.YNc(0,Wr,1,4,"vdr-collection-tree-node",0),2&n&&t.Q6J("ngIf",e.collectionTree)},dependencies:[g.O5,N.Fd,Je],changeDetection:0});class We{constructor(){this.variants=[]}confirm(){this.resolveWith(!0)}cancel(){this.resolveWith()}}function ec(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.create-facet-value"),"\n")}function nc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",7),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",8),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.confirm())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",e.form.invalid),t.xp6(1),t.hij(" ",t.lcZ(5,5,"common.confirm")," ")}}(jt=We).\u0275fac=function(n){return new(n||jt)},jt.\u0275cmp=t.Xpm({type:jt,selectors:[["vdr-confirm-variant-deletion-dialog"]],decls:6,vars:4,consts:[["vdrDialogTitle",""],[4,"ngFor","ngForOf"],["vdrDialogButtons",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"click"]],template:function(n,e){1&n&&(t.YNc(0,zr,2,3,"ng-template",0),t._uU(1),t.ALo(2,"translate"),t.TgZ(3,"ul"),t.YNc(4,Xr,2,2,"li",1),t.qZA(),t.YNc(5,tc,6,6,"ng-template",2)),2&n&&(t.xp6(1),t.hij("\n",t.lcZ(2,2,"catalog.confirm-deletion-of-unused-variants-body"),"\n"),t.xp6(3),t.Q6J("ngForOf",e.variants))},dependencies:[g.sg,X.n,K.q,x.X$],changeDetection:0});class Ue{constructor(n){this.formBuilder=n,this.form=this.formBuilder.group({name:["",d.kI.required],code:["",d.kI.required]})}updateCode(){const n=this.form.get("name"),e=this.form.get("code");n&&e&&e.pristine&&e.setValue((0,R.U)(`${n.value}`,"-"))}confirm(){const{name:n,code:e}=this.form.value;!n||!e||this.resolveWith({facetId:this.facetId,code:e,translations:[{languageCode:this.languageCode,name:n}]})}cancel(){this.resolveWith()}}(Kt=Ue).\u0275fac=function(n){return new(n||Kt)(t.Y36(d.qu))},Kt.\u0275cmp=t.Xpm({type:Kt,selectors:[["vdr-create-facet-value-dialog"]],decls:9,vars:7,consts:[["vdrDialogTitle",""],[1,"form-grid",3,"formGroup"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"input"],["for","code",3,"label"],["id","code","type","text","formControlName","code"],["vdrDialogButtons",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,ec,2,3,"ng-template",0),t.TgZ(1,"div",1)(2,"vdr-form-field",2),t.ALo(3,"translate"),t.TgZ(4,"input",3),t.NdJ("input",function(){return e.updateCode()}),t.qZA()(),t.TgZ(5,"vdr-form-field",4),t.ALo(6,"translate"),t._UZ(7,"input",5),t.qZA()(),t.YNc(8,nc,6,7,"ng-template",6)),2&n&&(t.xp6(1),t.Q6J("formGroup",e.form),t.xp6(1),t.Q6J("label",t.lcZ(3,3,"common.name")),t.xp6(3),t.Q6J("label",t.lcZ(6,5,"common.code")))},dependencies:[d.Fj,d.JJ,d.JL,d.sg,d.u,q.h,y.y,X.n,K.q,x.X$],changeDetection:0});var Ht,oc=m(54687);function ac(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",20),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.create())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.create")," ")}}function ic(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",20),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}function rc(o,n){if(1&o&&t.YNc(0,ic,3,4,"button",21),2&o){const e=t.oxw();t.Q6J("vdrIfPermissions",e.updatePermission)}}function cc(o,n){1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.public")))}function lc(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.private"))}function sc(o,n){if(1&o&&t._UZ(0,"vdr-page-entity-info",22),2&o){const e=n.ngIf;t.Q6J("entity",e)}}function dc(o,n){if(1&o&&(t.TgZ(0,"vdr-card",23),t.ALo(1,"translate"),t._UZ(2,"vdr-tabbed-custom-fields",24),t.ALo(3,"hasPermission"),t.qZA()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.detailForm.get("facet.customFields"))("readonly",!t.lcZ(3,6,e.updatePermission))}}function pc(o,n){if(1&o&&(t._UZ(0,"input",29),t.ALo(1,"translate")),2&o){const e=t.oxw(2);t.Q6J("formControl",e.filterControl)("placeholder",t.lcZ(1,2,"catalog.filter-by-name"))}}function uc(o,n){1&o&&(t.ynx(0),t.TgZ(1,"th"),t._uU(2),t.ALo(3,"translate"),t.qZA(),t.BQk()),2&o&&(t.xp6(2),t.Oqu(t.lcZ(3,1,"common.custom-fields")))}const mc=function(o){return["values",o,"customFields"]};function _c(o,n){if(1&o&&(t.TgZ(0,"td",45),t._UZ(1,"vdr-tabbed-custom-fields",46),t.ALo(2,"hasPermission"),t.qZA()),2&o){const e=t.oxw().$implicit,a=t.oxw(3);t.xp6(1),t.Q6J("customFields",a.customValueFields)("compact",!0)("customFieldsFormGroup",a.detailForm.get(t.VKq(6,mc,e.id)))("readonly",!t.lcZ(2,4,a.updatePermission))}}const gc=function(o){return["values",o]};function fc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"tr",35)(1,"td",36),t._UZ(2,"vdr-entity-info",22),t.qZA(),t.TgZ(3,"td",36)(4,"input",37),t.NdJ("input",function(i){const s=t.CHM(e).$implicit,p=t.oxw(3);return t.KtG(p.updateValueCode(s.code,i.target.value,s.id))}),t.ALo(5,"hasPermission"),t.qZA()(),t.TgZ(6,"td",36),t._UZ(7,"input",38),t.qZA(),t.YNc(8,_c,3,8,"td",39),t.TgZ(9,"td",36)(10,"vdr-dropdown")(11,"button",40),t._UZ(12,"clr-icon",41),t.qZA(),t.TgZ(13,"vdr-dropdown-menu",42)(14,"button",43),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(3);return t.KtG(s.deleteFacetValue(c.id))}),t.ALo(15,"hasPermission"),t._UZ(16,"clr-icon",44),t._uU(17),t.ALo(18,"translate"),t.qZA()()()()()}if(2&o){const e=n.$implicit,a=t.oxw(3);t.Q6J("formGroup",a.detailForm.get(t.VKq(12,gc,e.id))),t.xp6(2),t.Q6J("entity",e),t.xp6(2),t.Q6J("readonly",!t.lcZ(5,6,a.updatePermission)),t.xp6(4),t.Q6J("ngIf",a.customValueFields.length),t.xp6(6),t.Q6J("disabled",!t.lcZ(15,8,a.updatePermission)),t.xp6(3),t.hij(" ",t.lcZ(18,10,"common.delete")," ")}}const hc=function(o,n,e){return{currentPage:o,itemsPerPage:n,totalItems:e}};function vc(o,n){if(1&o){const e=t.EpF();t.ynx(0),t.TgZ(1,"table",30)(2,"thead")(3,"tr"),t._UZ(4,"th"),t.TgZ(5,"th"),t._uU(6),t.ALo(7,"translate"),t.qZA(),t.TgZ(8,"th"),t._uU(9),t.ALo(10,"translate"),t.qZA(),t.YNc(11,uc,4,3,"ng-container",27),t._UZ(12,"th"),t.qZA()(),t.TgZ(13,"tbody"),t.YNc(14,fc,19,14,"tr",31),t.ALo(15,"paginate"),t.qZA()(),t.TgZ(16,"div",32)(17,"vdr-items-per-page-controls",33),t.NdJ("itemsPerPageChange",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.setItemsPerPage(i))}),t.qZA(),t.TgZ(18,"vdr-pagination-controls",34),t.NdJ("pageChange",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.setCurrentPage(i))}),t.qZA()(),t.BQk()}if(2&o){const e=n.ngIf,a=t.oxw(2);t.xp6(6),t.Oqu(t.lcZ(7,8,"common.name")),t.xp6(3),t.Oqu(t.lcZ(10,10,"common.code")),t.xp6(2),t.Q6J("ngIf",a.customValueFields.length),t.xp6(3),t.Q6J("ngForOf",t.xi3(15,12,e,t.kEZ(15,hc,a.currentPage,a.itemsPerPage,a.totalItems))),t.xp6(3),t.Q6J("itemsPerPage",a.itemsPerPage),t.xp6(1),t.Q6J("currentPage",a.currentPage)("itemsPerPage",a.itemsPerPage)("totalItems",a.totalItems)}}function Cc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",47),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.addFacetValue())}),t._UZ(1,"clr-icon",48),t._uU(2),t.ALo(3,"translate"),t.qZA()}2&o&&(t.xp6(2),t.hij(" ",t.lcZ(3,1,"catalog.add-facet-value")," "))}const Tc=function(){return["CreateCatalog","CreateFacet"]};function bc(o,n){if(1&o&&(t.TgZ(0,"vdr-card",25),t.ALo(1,"translate"),t.YNc(2,pc,2,4,"ng-template",26),t.YNc(3,vc,19,19,"ng-container",27),t.ALo(4,"async"),t.TgZ(5,"div"),t.YNc(6,Cc,4,3,"button",28),t.qZA()()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,4,"catalog.facet-values"))("paddingX",!1),t.xp6(3),t.Q6J("ngIf",t.lcZ(4,6,e.values$)),t.xp6(3),t.Q6J("vdrIfPermissions",t.DdM(8,Tc))}}const In=D.Ps`
82
+ `;class De extends l.VE7{constructor(n,e,a,i,c,s){super(),this.changeDetector=n,this.dataService=e,this.formBuilder=a,this.notificationService=i,this.modalService=c,this.localStorageService=s,this.customFields=this.getCustomFieldConfig("Collection"),this.detailForm=this.formBuilder.group({name:["",d.kI.required],slug:["",(0,l.Foo)(/^[\p{Letter}0-9._-]+$/)],description:"",visible:!1,inheritFilters:!0,filters:this.formBuilder.array([]),customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))}),this.assetChanges={},this.filters=[],this.allFilters=[],this.livePreview=!1,this.updatePermission=[l.y3$.UpdateCatalog,l.y3$.UpdateCollection],this.filterRemoved$=new _t.x,this.livePreview=this.localStorageService.get("livePreviewCollectionContents")??!1}ngOnInit(){this.init(),this.dataService.collection.getCollectionFilters().single$.subscribe(a=>{this.allFilters=a.collectionFilters});const n=this.detailForm.get("filters"),e=this.detailForm.get("inheritFilters");this.inheritFilters$=e.valueChanges.pipe((0,S.x)()),this.updatedFilters$=(0,hi.T)(n.statusChanges,this.filterRemoved$).pipe((0,it.b)(200),(0,Ke.h)(()=>n.touched),(0,v.U)(()=>this.mapOperationsToInputs(this.filters,n.value).filter(a=>{for(const i of a.arguments)if(""===i.value)return!1;return!0}))),this.parentId$=this.route.paramMap.pipe((0,v.U)(a=>a.get("parentId")||void 0),(0,b.w)(a=>a?(0,L.of)(a):this.entity$.pipe((0,v.U)(i=>i.parent?.id))))}ngOnDestroy(){this.destroy()}getFilterDefinition(n){return this.allFilters.find(e=>e.code===n.code)}assetsChanged(){return!!Object.values(this.assetChanges).length}updateSlug(n){const e=this.detailForm.get(["slug"]),a=this.entity?(0,l.ZIM)(this.entity,this.languageCode):void 0,i=!a||!a.slug;e&&e.pristine&&i&&e.setValue((0,R.U)(`${n}`,"-"))}addFilter(n){const e=this.detailForm.get("filters"),a=n.args.reduce((i,c)=>({...i,[c.name]:(0,l.sux)(c.value)}),{});e.push(this.formBuilder.control({code:n.code,args:a})),this.filters.push({code:n.code,args:n.args.map(i=>({name:i.name,value:(0,l.sux)(i.value)}))})}removeFilter(n){const e=this.detailForm.get("filters");-1!==n&&(e.removeAt(n),e.markAsDirty(),e.markAsTouched(),this.filters.splice(n,1),this.filterRemoved$.next())}create(){if(!this.detailForm.dirty)return;const n=this.getUpdatedCollection({id:"",createdAt:"",updatedAt:"",languageCode:this.languageCode,name:"",slug:"",isPrivate:!1,breadcrumbs:[],description:"",featuredAsset:null,assets:[],translations:[],inheritFilters:!0,filters:[],parent:{},children:null},this.detailForm,this.languageCode),e=this.route.snapshot.paramMap.get("parentId");e&&(n.parentId=e),this.dataService.collection.createCollection(n).subscribe(a=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"Collection"}),this.assetChanges={},this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.router.navigate(["../",a.createCollection.id],{relativeTo:this.route})},a=>{this.notificationService.error((0,u.J)("common.notify-create-error"),{entity:"Collection"})})}save(){(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,J.z)(([n,e])=>{const a=this.getUpdatedCollection(n,this.detailForm,e);return this.dataService.collection.updateCollection(a)})).subscribe(()=>{this.assetChanges={},this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"Collection"}),this.contentsComponent.refresh()},n=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"Collection"})})}canDeactivate(){return super.canDeactivate()&&!this.assetChanges.assets&&!this.assetChanges.featuredAsset}toggleLivePreview(){this.livePreview=!this.livePreview,this.localStorageService.set("livePreviewCollectionContents",this.livePreview)}trackByFn(n,e){return JSON.stringify(e)}setFormValues(n,e){const a=(0,l.ZIM)(n,e);this.detailForm.patchValue({name:a?a.name:"",slug:a?a.slug:"",description:a?a.description:"",visible:!n.isPrivate,inheritFilters:n.inheritFilters});const i=this.detailForm.get("filters");i.length!==n.filters.length&&(i.clear(),this.filters=[],n.filters.forEach(c=>this.addFilter(c))),this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get(["customFields"]),n,a)}getUpdatedCollection(n,e,a){return{...(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.customFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||"",slug:n.slug||"",description:n.description||""}}),assetIds:this.assetChanges.assets?.map(c=>c.id),featuredAssetId:this.assetChanges.featuredAsset?.id,isPrivate:!e.value.visible,filters:this.mapOperationsToInputs(this.filters,this.detailForm.value.filters)}}mapOperationsToInputs(n,e){return n.map((a,i)=>({code:a.code,arguments:Object.entries(e[i].args).map(([c,s],p)=>({name:c,value:(0,l.qrw)(s)}))}))}}var qt,Yt;(Qt=De).\u0275fac=function(n){return new(n||Qt)(t.Y36(t.sBO),t.Y36(l.DoR),t.Y36(d.qu),t.Y36(l.gqp),t.Y36(l.Z7U),t.Y36(l.n2A))},Qt.\u0275cmp=t.Xpm({type:Qt,selectors:[["vdr-collection-detail"]],viewQuery:function(n,e){if(1&n&&t.Gf(Ci,5),2&n){let a;t.iGM(a=t.CRH())&&(e.contentsComponent=a.first)}},features:[t.qOj],decls:73,vars:89,consts:[[3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","collection-detail"],["class","btn btn-primary",3,"disabled","click",4,"ngIf","ngIfElse"],["updateButton",""],[1,"form",3,"formGroup"],["for","visibility",3,"label"],["type","checkbox","clrToggle","","formControlName","visible","id","visibility",3,"vdrDisabled"],[1,"visible-toggle"],[4,"ngIf","ngIfElse"],["private",""],[4,"ngIf"],[1,"form-grid"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"readonly","input"],["for","slug",3,"label","errors"],["id","slug","type","text","formControlName","slug",3,"readonly"],["for","slug",1,"form-grid-span",3,"label"],["formControlName","description",3,"readonly"],["formGroupName","customFields",3,"title",4,"ngIf"],["locationId","collection-detail",3,"entity$","detailForm"],[3,"title"],[3,"assets","featuredAsset","updatePermissions","change"],["for","inheritFilters",3,"label"],["type","checkbox","clrToggle","","formControlName","inheritFilters","id","inheritFilters",3,"vdrDisabled"],["noInherit",""],["formArrayName","filters"],[4,"ngFor","ngForOf","ngForTrackBy"],[4,"vdrIfPermissions"],[3,"title","paddingX"],[3,"collectionId","parentId","updatedFilters","inheritFilters","previewUpdatedFilters"],["collectionContents",""],[1,"btn","btn-primary",3,"disabled","click"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],[3,"entity"],["role","navigation"],[1,"collection-breadcrumbs"],[4,"ngFor","ngForOf"],[3,"routerLink",4,"ngIf"],[3,"routerLink"],["formGroupName","customFields",3,"title"],["entityName","Collection",3,"customFields","customFieldsFormGroup","readonly"],[3,"position","operation","operationDefinition","formControlName","readonly","remove"],["vdrDropdownTrigger","",1,"btn","btn-outline"],["shape","plus"],["shape","ellipsis-vertical"],["vdrPosition","bottom-left"],["type","button","vdrDropdownItem","",3,"click",4,"ngFor","ngForOf"],["type","button","vdrDropdownItem","",3,"click"],[1,"ml-3"],[1,"contents-title"],["type","checkbox","clrCheckbox","",3,"ngModelOptions","disabled","ngModel","ngModelChange"]],template:function(n,e){if(1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.ALo(6,"async"),t.qZA()(),t.TgZ(7,"vdr-ab-right"),t._UZ(8,"vdr-action-bar-items",1),t.YNc(9,Ti,3,4,"button",2),t.ALo(10,"async"),t.YNc(11,xi,1,1,"ng-template",null,3,t.W1O),t.qZA()()(),t.TgZ(13,"form",4)(14,"vdr-page-detail-layout")(15,"vdr-page-detail-sidebar")(16,"vdr-card")(17,"vdr-form-field",5),t.ALo(18,"translate"),t.TgZ(19,"clr-toggle-wrapper"),t._UZ(20,"input",6),t.ALo(21,"hasPermission"),t.TgZ(22,"label",7),t.YNc(23,Ai,3,3,"ng-container",8),t.YNc(24,Zi,2,3,"ng-template",null,9,t.W1O),t.qZA()()()(),t.YNc(26,Pi,2,1,"vdr-card",10),t.ALo(27,"async"),t.qZA(),t.YNc(28,ki,4,1,"vdr-page-block",10),t.ALo(29,"async"),t.TgZ(30,"vdr-page-block")(31,"vdr-card")(32,"div",11)(33,"vdr-form-field",12),t.ALo(34,"translate"),t.TgZ(35,"input",13),t.NdJ("input",function(i){return e.updateSlug(i.target.value)}),t.ALo(36,"hasPermission"),t.qZA()(),t.TgZ(37,"vdr-form-field",14),t.ALo(38,"translate"),t.ALo(39,"translate"),t._UZ(40,"input",15),t.ALo(41,"hasPermission"),t.qZA(),t.TgZ(42,"vdr-form-field",16),t.ALo(43,"translate"),t._UZ(44,"vdr-rich-text-editor",17),t.ALo(45,"hasPermission"),t.qZA()()(),t.YNc(46,Ni,4,8,"vdr-card",18),t._UZ(47,"vdr-custom-detail-component-host",19),t.TgZ(48,"vdr-card",20),t.ALo(49,"translate"),t.TgZ(50,"vdr-assets",21),t.NdJ("change",function(i){return e.assetChanges=i}),t.qZA()(),t.TgZ(51,"vdr-card",20),t.ALo(52,"translate"),t.TgZ(53,"vdr-form-field",22),t.ALo(54,"translate"),t.TgZ(55,"clr-toggle-wrapper"),t._UZ(56,"input",23),t.ALo(57,"hasPermission"),t.TgZ(58,"label",7),t.YNc(59,Ji,3,3,"ng-container",8),t.YNc(60,Ui,2,3,"ng-template",null,24,t.W1O),t.qZA()()(),t.TgZ(62,"div",25),t.YNc(63,Mi,3,7,"ng-container",26),t.qZA(),t.YNc(64,Ei,10,4,"div",27),t.qZA(),t.TgZ(65,"vdr-card",28),t.ALo(66,"translate"),t.TgZ(67,"vdr-collection-contents",29,30),t.ALo(69,"async"),t.ALo(70,"async"),t.ALo(71,"async"),t.YNc(72,wi,10,18,"ng-template"),t.qZA()()()()()),2&n){const a=t.MAs(12),i=t.MAs(25),c=t.MAs(61);t.xp6(3),t.Q6J("disabled",t.lcZ(4,41,e.isNew$))("availableLanguageCodes",t.lcZ(5,43,e.availableLanguages$))("currentLanguageCode",t.lcZ(6,45,e.languageCode$)),t.xp6(6),t.Q6J("ngIf",t.lcZ(10,47,e.isNew$))("ngIfElse",a),t.xp6(4),t.Q6J("formGroup",e.detailForm),t.xp6(4),t.Q6J("label",t.lcZ(18,49,"catalog.visibility")),t.xp6(3),t.Q6J("vdrDisabled",!t.lcZ(21,51,e.updatePermission)),t.xp6(3),t.Q6J("ngIf",e.detailForm.value.visible)("ngIfElse",i),t.xp6(3),t.Q6J("ngIf",t.lcZ(27,53,e.entity$)),t.xp6(2),t.Q6J("ngIf",t.lcZ(29,55,e.entity$)),t.xp6(5),t.Q6J("label",t.lcZ(34,57,"common.name")),t.xp6(2),t.Q6J("readonly",!t.lcZ(36,59,e.updatePermission)),t.xp6(2),t.Q6J("label",t.lcZ(38,61,"catalog.slug"))("errors",t.VKq(87,Qi,t.lcZ(39,63,"catalog.slug-pattern-error"))),t.xp6(3),t.Q6J("readonly",!t.lcZ(41,65,e.updatePermission)),t.xp6(2),t.Q6J("label",t.lcZ(43,67,"common.description")),t.xp6(2),t.Q6J("readonly",!t.lcZ(45,69,e.updatePermission)),t.xp6(2),t.Q6J("ngIf",e.customFields.length),t.xp6(1),t.Q6J("entity$",e.entity$)("detailForm",e.detailForm),t.xp6(1),t.Q6J("title",t.lcZ(49,71,"catalog.assets")),t.xp6(2),t.Q6J("assets",null==e.entity?null:e.entity.assets)("featuredAsset",null==e.entity?null:e.entity.featuredAsset)("updatePermissions",e.updatePermission),t.xp6(1),t.Q6J("title",t.lcZ(52,73,"catalog.filters")),t.xp6(2),t.Q6J("label",t.lcZ(54,75,"catalog.filter-inheritance")),t.xp6(3),t.Q6J("vdrDisabled",!t.lcZ(57,77,e.updatePermission)),t.xp6(3),t.Q6J("ngIf",e.detailForm.value.inheritFilters)("ngIfElse",c),t.xp6(4),t.Q6J("ngForOf",e.filters)("ngForTrackBy",e.trackByFn),t.xp6(1),t.Q6J("vdrIfPermissions",e.updatePermission),t.xp6(1),t.Q6J("title",t.lcZ(66,79,"common.contents"))("paddingX",!1),t.xp6(2),t.Q6J("collectionId",e.id)("parentId",t.lcZ(69,81,e.parentId$))("updatedFilters",t.lcZ(70,83,e.updatedFilters$))("inheritFilters",t.lcZ(71,85,e.inheritFilters$))("previewUpdatedFilters",e.livePreview)}},dependencies:[h.q0d,h.qvL,h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.Fj,d.Wl,d.JJ,d.JL,d.On,d.sg,d.u,d.x0,d.CE,P.rH,A.Kk,A.BN,A.mz,vi.q,q.h,y.y,G.S,Cn.Y,ht.J,vt.N,Ct.U,Tt.H,$.H,tt.W,Pe.x,ut.y,Oe.C,E.z,At.D,Ie.T,Fe.W,nt.A,bt,Vt,g.Ov,x.X$,B.j],styles:['@charset "UTF-8";.visible-toggle[_ngcontent-%COMP%]{margin-top:-3px!important}clr-checkbox-wrapper[_ngcontent-%COMP%]{transition:opacity .3s}clr-checkbox-wrapper.disabled[_ngcontent-%COMP%]{opacity:.5}.collection-breadcrumbs[_ngcontent-%COMP%]{list-style-type:none;background-color:var(--color-component-bg-200);padding:2px 6px;margin-bottom:6px;border-radius:var(--clr-global-borderradius)}.collection-breadcrumbs[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{font-size:.65rem;display:inline-block;margin-inline-end:10px}.collection-breadcrumbs[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:last-child{font-weight:600}.collection-breadcrumbs[_ngcontent-%COMP%] li[_ngcontent-%COMP%]:not(:last-child):after{content:"\\203a";top:0;color:var(--color-grey-400);margin-inline-start:10px}'],changeDetection:0});class $t{transform(n){return n?.breadcrumbs.slice(1,-1)}}function $i(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.move-collections"),"\n")}function Yi(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function Gi(o,n){if(1&o&&t._UZ(0,"clr-icon",12),2&o){const e=t.oxw().depth;t.ekj("transparent",0===e)}}function Bi(o,n){1&o&&t._UZ(0,"clr-icon",16)}function ji(o,n){1&o&&t._UZ(0,"clr-icon",17)}function Ki(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",13),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().item,c=t.oxw();return t.KtG(c.toggleExpanded(i))}),t.YNc(1,Bi,1,0,"clr-icon",14),t.YNc(2,ji,1,0,"clr-icon",15),t.qZA()}if(2&o){const e=t.oxw().item,a=t.oxw();t.xp6(1),t.Q6J("ngIf",!a.expandedIds.includes(e.id)),t.xp6(1),t.Q6J("ngIf",a.expandedIds.includes(e.id))}}function Hi(o,n){1&o&&(t.TgZ(0,"button",18),t._UZ(1,"clr-icon",19),t.qZA())}(qt=$t).\u0275fac=function(n){return new(n||qt)},qt.\u0275pipe=t.Yjl({name:"collectionBreadcrumb",type:qt,pure:!0});const Wi=function(o){return{name:o}};function zi(o,n){if(1&o){const e=t.EpF();t._UZ(0,"div",7),t.YNc(1,Gi,1,2,"clr-icon",8),t.YNc(2,Ki,3,2,"button",9),t.YNc(3,Hi,2,0,"button",10),t.TgZ(4,"button",11),t.NdJ("click",function(){const c=t.CHM(e).item,s=t.oxw();return t.KtG(s.resolveWith(c))}),t.TgZ(5,"span"),t._uU(6),t.ALo(7,"translate"),t.qZA()()}if(2&o){const e=n.item,a=n.depth;t.Q6J("ngClass","indent-"+a),t.xp6(1),t.Q6J("ngIf",!(null!=e.children&&e.children.length)&&"__"!==e.parentId),t.xp6(1),t.Q6J("ngIf",null==e.children?null:e.children.length),t.xp6(1),t.Q6J("ngIf","__"===e.parentId),t.xp6(3),t.Oqu(t.xi3(7,5,"catalog.move-collection-to",t.VKq(8,Wi,e.name)))}}function Xi(o,n){if(1&o&&(t.TgZ(0,"div")(1,"span",24),t._uU(2,"/"),t.qZA(),t._uU(3),t.qZA()),2&o){const e=n.$implicit;t.xp6(3),t.hij("",e.name," ")}}function tr(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Xi,4,1,"div",23),t.BQk()),2&o){const e=t.oxw().ngIf;t.xp6(1),t.Q6J("ngForOf",e)}}function er(o,n){1&o&&(t.TgZ(0,"span",24),t._uU(1,"/"),t.qZA())}function nr(o,n){if(1&o&&(t.ynx(0),t.YNc(1,tr,2,1,"ng-container",21),t.YNc(2,er,2,0,"span",22),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length),t.xp6(1),t.Q6J("ngIf",!e.length)}}function or(o,n){if(1&o&&(t.TgZ(0,"div",20),t.YNc(1,nr,3,2,"ng-container",21),t.ALo(2,"collectionBreadcrumb"),t.qZA()),2&o){const e=n.item;t.xp6(1),t.Q6J("ngIf",t.lcZ(2,1,e))}}function ar(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.slug," ")}}class ye{constructor(n,e){this.dataService=n,this.i18nService=e,this.searchTermControl=new d.NI(""),this.currentPage$=new V.X(1),this.itemsPerPage$=new V.X(10),this.expandedIds$=new _t.x,this.expandedIds=[]}ngOnInit(){const n=this.dataService.collection.getCollections(),e=this.searchTermControl.valueChanges.pipe((0,it.b)(250),(0,S.x)(),(0,j.O)("")),a=this.currentPage$.pipe((0,S.x)()),i=this.itemsPerPage$.pipe((0,S.x)());(0,I.a)(e,a,i).subscribe(([s,p,_])=>{const f=""===s;n.ref.refetch({options:{skip:(p-1)*_,take:_,filter:{name:{contains:s}},topLevelOnly:f}})});const c=this.dataService.collection.getCollections({take:1,topLevelOnly:!0}).mapSingle(s=>s.collections.items[0].parentId);this.items$=(0,I.a)(n.mapStream(({collections:s})=>s),c).pipe((0,v.U)(([s,p])=>[...p?[{id:p,name:this.i18nService.translate("catalog.root-collection"),slug:"",parentId:"__",position:0,featuredAsset:null,children:[],breadcrumbs:[],isPrivate:!1,createdAt:"",updatedAt:""}]:[],...s.items])),this.totalItems$=n.mapStream(s=>s.collections.totalItems),this.subCollections$=this.expandedIds$.pipe((0,w.b)(s=>this.expandedIds=s),(0,b.w)(s=>s.length?this.dataService.collection.getCollections({take:999,filter:{parentId:{in:s}}}).mapStream(p=>p.collections.items):(0,L.of)([])))}toggleExpanded(n){let e=this.expandedIds;e.includes(n.id)?e=e.filter(a=>a!==n.id):e.push(n.id),this.expandedIds$.next(e)}}(Yt=ye).\u0275fac=function(n){return new(n||Yt)(t.Y36(l.DoR),t.Y36(l.Dp7))},Yt.\u0275cmp=t.Xpm({type:Yt,selectors:[["vdr-move-collections-dialog"]],decls:21,vars:33,consts:[["vdrDialogTitle",""],["id","move-collection-list",1,"mt-2",3,"items","subCollections","itemsPerPage","totalItems","currentPage","pageChange","itemsPerPageChange"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault"],["id","name",3,"heading","optional"],["id","breadcrumb",3,"heading"],["id","slug",3,"heading"],[3,"ngClass"],["class","child-arrow","shape","child-arrow",3,"transparent",4,"ngIf"],["class","icon-button folder-button",3,"click",4,"ngIf"],["class","icon-button folder-button","disabled","",4,"ngIf"],[1,"button-ghost",3,"click"],["shape","child-arrow",1,"child-arrow"],[1,"icon-button","folder-button",3,"click"],["shape","folder",4,"ngIf"],["shape","folder-open",4,"ngIf"],["shape","folder"],["shape","folder-open"],["disabled","",1,"icon-button","folder-button"],["shape","folder",1,"is-solid"],[1,"breadcrumb"],[4,"ngIf"],["class","separator",4,"ngIf"],[4,"ngFor","ngForOf"],[1,"separator"]],template:function(n,e){1&n&&(t.YNc(0,$i,2,3,"ng-template",0),t.TgZ(1,"vdr-collection-data-table",1),t.NdJ("pageChange",function(i){return e.currentPage$.next(i)})("itemsPerPageChange",function(i){return e.itemsPerPage$.next(i)}),t.ALo(2,"async"),t.ALo(3,"async"),t.ALo(4,"async"),t.ALo(5,"async"),t.ALo(6,"async"),t._UZ(7,"vdr-dt2-search",2),t.ALo(8,"translate"),t.TgZ(9,"vdr-dt2-column",3),t.ALo(10,"translate"),t.YNc(11,Yi,1,1,"ng-template"),t.qZA(),t.TgZ(12,"vdr-dt2-column",4),t.ALo(13,"translate"),t.YNc(14,zi,8,10,"ng-template"),t.qZA(),t.TgZ(15,"vdr-dt2-column",5),t.ALo(16,"translate"),t.YNc(17,or,3,3,"ng-template"),t.qZA(),t.TgZ(18,"vdr-dt2-column",6),t.ALo(19,"translate"),t.YNc(20,ar,1,1,"ng-template"),t.qZA()()),2&n&&(t.xp6(1),t.Q6J("items",t.lcZ(2,13,e.items$))("subCollections",t.lcZ(3,15,e.subCollections$))("itemsPerPage",t.lcZ(4,17,e.itemsPerPage$))("totalItems",t.lcZ(5,19,e.totalItems$))("currentPage",t.lcZ(6,21,e.currentPage$)),t.xp6(6),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(8,23,"common.search-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(10,25,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(13,27,"common.name"))("optional",!1),t.xp6(3),t.Q6J("heading",t.lcZ(16,29,"common.breadcrumb")),t.xp6(3),t.Q6J("heading",t.lcZ(19,31,"common.slug")))},dependencies:[h.qvL,g.mk,g.sg,g.O5,K.q,z.U,at.J,wt,g.Ov,x.X$,$t],styles:["[_nghost-%COMP%]{--indent-spacing: 18px}.indent-1[_ngcontent-%COMP%]{padding-inline-start:var(--indent-spacing)}.indent-2[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 2)}.indent-3[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 3)}.indent-4[_ngcontent-%COMP%], .indent-5[_ngcontent-%COMP%], .indent-6[_ngcontent-%COMP%], .indent-7[_ngcontent-%COMP%], .indent-8[_ngcontent-%COMP%], .indent-9[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 4)}.child-arrow[_ngcontent-%COMP%]{margin:1px 6px}.child-arrow.transparent[_ngcontent-%COMP%]{opacity:0}.breadcrumb[_ngcontent-%COMP%]{display:flex}.separator[_ngcontent-%COMP%]{color:var(--color-weight-500);margin:0 3px}"],changeDetection:0});const Tn=(0,l.wwB)({location:"collection-list",requiresPermission:o=>o.includes(l.y3$.DeleteCollection)||o.includes(l.y3$.DeleteCatalog),getItemName:o=>o.name,bulkDelete:(o,n)=>o.collection.deleteCollections(n).pipe((0,v.U)(e=>e.deleteCollections))}),bn={location:"collection-list",label:(0,u.J)("catalog.move-collections"),icon:"drag-handle",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateCollection),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.DoR),s=o.get(l.gqp);i.fromComponent(ye,{size:"xl",closable:!0}).pipe((0,b.w)(p=>{if(p){const _=n.map(f=>({collectionId:f.id,parentId:p.id,index:0}));return c.collection.moveCollection(_)}return F.E})).subscribe(p=>{s.success((0,u.J)("catalog.move-collections-success"),{count:n.length}),a(),e.refresh()})}},xn=(0,l.z1G)({location:"collection-list",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateCollection),getItemName:o=>o.name,bulkAssignToChannel:(o,n,e)=>o.collection.assignCollectionsToChannel({collectionIds:n,channelId:e}).pipe((0,v.U)(a=>a.assignCollectionsToChannel))}),An=(0,l.RBx)({location:"collection-list",requiresPermission:o=>o.includes(l.y3$.DeleteCatalog)||o.includes(l.y3$.DeleteCollection),getItemName:o=>o.name,bulkRemoveFromChannel:(o,n,e)=>o.collection.removeCollectionsFromChannel({channelId:e,collectionIds:n}).pipe((0,v.U)(a=>a.removeCollectionsFromChannel))});var Gt,Le=m(97615),ke=m(20419),ir=m(29187),Zn=m(65806);const rr=function(){return["./create"]};function cr(o,n){1&o&&(t.TgZ(0,"a",6),t._UZ(1,"clr-icon",7),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,rr)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.create-new-collection")," "))}function lr(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function sr(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function dr(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}function pr(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.position," ")}}function ur(o,n){if(1&o&&t._UZ(0,"clr-icon",26),2&o){const e=t.oxw().depth;t.ekj("transparent",0===e)}}function mr(o,n){1&o&&t._UZ(0,"clr-icon",30)}function _r(o,n){1&o&&t._UZ(0,"clr-icon",31)}function gr(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",27),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().item,c=t.oxw(2);return t.KtG(c.toggleExpanded(i))}),t.YNc(1,mr,1,0,"clr-icon",28),t.YNc(2,_r,1,0,"clr-icon",29),t.qZA()}if(2&o){const e=t.oxw().item,a=t.oxw(2);t.xp6(1),t.Q6J("ngIf",!a.expandedIds.includes(e.id)),t.xp6(1),t.Q6J("ngIf",a.expandedIds.includes(e.id))}}const Pn=function(o){return["./",o]};function fr(o,n){if(1&o&&(t._UZ(0,"div",21),t.YNc(1,ur,1,2,"clr-icon",22),t.YNc(2,gr,3,2,"button",23),t.TgZ(3,"a",24)(4,"span"),t._uU(5),t.qZA(),t._UZ(6,"clr-icon",25),t.qZA()),2&o){const e=n.item,a=n.depth;t.Q6J("ngClass","indent-"+a),t.xp6(1),t.Q6J("ngIf",!(null!=e.children&&e.children.length)),t.xp6(1),t.Q6J("ngIf",null==e.children?null:e.children.length),t.xp6(1),t.Q6J("routerLink",t.VKq(5,Pn,e.id)),t.xp6(2),t.Oqu(e.name)}}function hr(o,n){if(1&o&&(t.TgZ(0,"div")(1,"span",36),t._uU(2,"/"),t.qZA(),t._uU(3),t.qZA()),2&o){const e=n.$implicit;t.xp6(3),t.hij("",e.name," ")}}function vr(o,n){if(1&o&&(t.ynx(0),t.YNc(1,hr,4,1,"div",35),t.BQk()),2&o){const e=t.oxw().ngIf;t.xp6(1),t.Q6J("ngForOf",e)}}function Cr(o,n){1&o&&(t.TgZ(0,"span",36),t._uU(1,"/"),t.qZA())}function Tr(o,n){if(1&o&&(t.ynx(0),t.YNc(1,vr,2,1,"ng-container",33),t.YNc(2,Cr,2,0,"span",34),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length),t.xp6(1),t.Q6J("ngIf",!e.length)}}function br(o,n){if(1&o&&(t.TgZ(0,"div",32),t.YNc(1,Tr,3,2,"ng-container",33),t.ALo(2,"collectionBreadcrumb"),t.qZA()),2&o){const e=n.item;t.xp6(1),t.Q6J("ngIf",t.lcZ(2,1,e))}}function xr(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.slug," ")}}function Ar(o,n){1&o&&(t.TgZ(0,"vdr-chip",39),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.private")))}function Zr(o,n){1&o&&(t.TgZ(0,"vdr-chip",40),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.public")))}function Pr(o,n){if(1&o&&(t.YNc(0,Ar,3,3,"vdr-chip",37),t.YNc(1,Zr,3,3,"vdr-chip",38)),2&o){const e=n.item;t.Q6J("ngIf",e.isPrivate),t.xp6(1),t.Q6J("ngIf",!e.isPrivate)}}const Or=function(o){return{contents:o}},Ir=function(){return{contentsPage:1}};function Fr(o,n){if(1&o&&(t.TgZ(0,"a",41)(1,"span"),t._uU(2),t.ALo(3,"translate"),t.qZA(),t._UZ(4,"clr-icon",42),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.VKq(7,Pn,t.VKq(5,Or,e.id)))("queryParams",t.DdM(9,Ir)),t.xp6(2),t.Oqu(t.lcZ(3,3,"common.view-contents"))}}function Dr(o,n){if(1&o&&t._UZ(0,"vdr-dt2-custom-field-column",43),2&o){const e=n.$implicit,a=t.oxw(2);t.Q6J("customField",e)("sorts",a.sorts)}}function yr(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-collection-data-table",8),t.NdJ("pageChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.setPageNumber(i))})("itemsPerPageChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.setItemsPerPage(i))})("changeOrder",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.onRearrange(i))}),t.ALo(1,"async"),t.ALo(2,"async"),t.ALo(3,"async"),t.ALo(4,"async"),t.ALo(5,"async"),t.ALo(6,"async"),t._UZ(7,"vdr-bulk-action-menu",9)(8,"vdr-dt2-search",10),t.ALo(9,"translate"),t.TgZ(10,"vdr-dt2-column",11),t.ALo(11,"translate"),t.YNc(12,lr,1,1,"ng-template"),t.qZA(),t.TgZ(13,"vdr-dt2-column",12),t.ALo(14,"translate"),t.YNc(15,sr,2,4,"ng-template"),t.qZA(),t.TgZ(16,"vdr-dt2-column",13),t.ALo(17,"translate"),t.YNc(18,dr,2,4,"ng-template"),t.qZA(),t.TgZ(19,"vdr-dt2-column",14),t.ALo(20,"translate"),t.YNc(21,pr,1,1,"ng-template"),t.qZA(),t.TgZ(22,"vdr-dt2-column",15),t.ALo(23,"translate"),t.YNc(24,fr,7,7,"ng-template"),t.qZA(),t.TgZ(25,"vdr-dt2-column",16),t.ALo(26,"translate"),t.YNc(27,br,3,3,"ng-template"),t.qZA(),t.TgZ(28,"vdr-dt2-column",17),t.ALo(29,"translate"),t.YNc(30,xr,1,1,"ng-template"),t.qZA(),t.TgZ(31,"vdr-dt2-column",18),t.ALo(32,"translate"),t.YNc(33,Pr,2,2,"ng-template"),t.qZA(),t.TgZ(34,"vdr-dt2-column",19),t.ALo(35,"translate"),t.YNc(36,Fr,5,10,"ng-template"),t.qZA(),t.YNc(37,Dr,1,2,"vdr-dt2-custom-field-column",20),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("items",t.lcZ(1,32,e.items$))("subCollections",t.lcZ(2,34,e.subCollections$))("itemsPerPage",t.lcZ(3,36,e.itemsPerPage$))("totalItems",t.lcZ(4,38,e.totalItems$))("currentPage",t.lcZ(5,40,e.currentPage$))("filters",e.filters)("activeIndex",t.lcZ(6,42,e.activeCollectionIndex$)),t.xp6(7),t.Q6J("hostComponent",e)("selectionManager",e.selectionManager),t.xp6(1),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(9,44,"common.search-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(11,46,"common.id"))("hiddenByDefault",!0),t.xp6(3),t.Q6J("heading",t.lcZ(14,48,"common.created-at"))("hiddenByDefault",!0)("sort",e.sorts.get("createdAt")),t.xp6(3),t.Q6J("heading",t.lcZ(17,50,"common.updated-at"))("hiddenByDefault",!0)("sort",e.sorts.get("updatedAt")),t.xp6(3),t.Q6J("heading",t.lcZ(20,52,"common.position"))("hiddenByDefault",!0)("sort",e.sorts.get("position")),t.xp6(3),t.Q6J("heading",t.lcZ(23,54,"common.name"))("optional",!1)("sort",e.sorts.get("name")),t.xp6(3),t.Q6J("heading",t.lcZ(26,56,"common.breadcrumb")),t.xp6(3),t.Q6J("heading",t.lcZ(29,58,"common.slug"))("sort",e.sorts.get("slug")),t.xp6(3),t.Q6J("heading",t.lcZ(32,60,"common.visibility")),t.xp6(3),t.Q6J("heading",t.lcZ(35,62,"common.view-contents"))("optional",!1),t.xp6(3),t.Q6J("ngForOf",e.customFields)}}function Lr(o,n){if(1&o&&(t.ynx(0),t._UZ(1,"vdr-collection-contents",44),t.ALo(2,"async"),t.BQk()),2&o){const e=t.oxw(2);t.xp6(1),t.Q6J("collectionId",t.lcZ(2,1,e.activeCollectionId$))}}function kr(o,n){if(1&o&&(t.YNc(0,Lr,3,3,"ng-container",33),t.ALo(1,"async")),2&o){const e=t.oxw();t.Q6J("ngIf",t.lcZ(1,1,e.activeCollectionId$))}}const Nr=function(){return["CreateCatalog","CreateCollection"]};class Ne extends l.$ms{constructor(n,e){super(),this.dataService=n,this.notificationService=e,this.expandedIds=[],this.customFields=this.getCustomFieldConfig("Collection"),this.filters=this.createFilterCollection().addIdFilter().addDateFilters().addFilter({name:"slug",label:(0,u.J)("common.slug"),type:{kind:"text"},filterField:"slug"}).addFilter({name:"visibility",type:{kind:"boolean"},label:(0,u.J)("common.visibility"),toFilterInput:a=>({isPrivate:{eq:!a}})}).addCustomFieldFilters(this.customFields).connectToRoute(this.route),this.sorts=this.createSortCollection().defaultSort("position","ASC").addSort({name:"createdAt"}).addSort({name:"updatedAt"}).addSort({name:"name"}).addSort({name:"slug"}).addSort({name:"position"}).addCustomFieldSorts(this.customFields).connectToRoute(this.route),super.configure({document:l.rcS,getItems:a=>a.collections,setVariables:(a,i)=>{const c=""===this.searchTermControl.value&&0===this.filters.activeFilters.length||void 0;return{options:{skip:a,take:i,filter:{name:{contains:this.searchTermControl.value},...this.filters.createFilterInput()},topLevelOnly:c,sort:this.sorts.createSortInput()}}},refreshListOnChanges:[this.filters.valueChanges,this.sorts.valueChanges]})}ngOnInit(){super.ngOnInit(),this.activeCollectionId$=this.route.paramMap.pipe((0,v.U)(e=>e.get("contents")),(0,S.x)());const n=this.route.queryParamMap.pipe((0,v.U)(e=>e.get("expanded")),(0,S.x)(),(0,v.U)(e=>e?e.split(","):[]));n.pipe((0,kt.R)(this.destroy$)).subscribe(e=>{this.expandedIds=e}),this.subCollections$=(0,I.a)(n,this.refresh$).pipe((0,b.w)(([e])=>e.length?this.dataService.collection.getCollections({take:999,filter:{parentId:{in:e}}}).mapStream(a=>a.collections.items):(0,L.of)([]))),this.activeCollectionTitle$=(0,I.a)(this.activeCollectionId$,this.items$,this.subCollections$).pipe((0,v.U)(([e,a,i])=>{if(e){const c=[...a,...i].find(s=>s.id===e);return c?c.name:""}return""})),this.activeCollectionIndex$=(0,I.a)(this.activeCollectionId$,this.items$,this.subCollections$).pipe((0,v.U)(([e,a,i])=>{if(e){const c=[];for(const s of a){c.push(s);const p=i.filter(_=>_.parentId&&_.parentId===s.id);c.push(...p)}return c.findIndex(s=>s.id===e)}return-1}))}onRearrange(n){this.dataService.collection.moveCollection([n]).subscribe({next:()=>{this.notificationService.success((0,u.J)("common.notify-saved-changes")),this.refresh()},error:e=>{this.notificationService.error((0,u.J)("common.notify-save-changes-error"))}})}closeContents(){const n={...this.route.snapshot.params};delete n.contents,this.router.navigate(["./",n],{relativeTo:this.route,queryParamsHandling:"preserve"})}setLanguage(n){this.dataService.client.setContentLanguage(n).subscribe()}toggleExpanded(n){let e=this.expandedIds;e.includes(n.id)?e=e.filter(a=>a!==n.id):e.push(n.id),this.router.navigate(["./"],{queryParams:{expanded:e.filter(a=>!!a).join(",")},queryParamsHandling:"merge",relativeTo:this.route})}}var xt,ct;(Gt=Ne).\u0275fac=function(n){return new(n||Gt)(t.Y36(l.DoR),t.Y36(l.gqp))},Gt.\u0275cmp=t.Xpm({type:Gt,selectors:[["vdr-collection-list"]],features:[t.qOj],decls:14,vars:14,consts:[[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","collection-list"],["class","btn btn-primary",3,"routerLink",4,"vdrIfPermissions"],[3,"rightPanelOpen","closeClicked"],["vdrSplitViewLeft",""],["vdrSplitViewRight","",3,"splitViewTitle"],[1,"btn","btn-primary",3,"routerLink"],["shape","plus"],["id","collection-list",1,"mt-2",3,"items","subCollections","itemsPerPage","totalItems","currentPage","filters","activeIndex","pageChange","itemsPerPageChange","changeOrder"],["locationId","collection-list",3,"hostComponent","selectionManager"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault"],["id","created-at",3,"heading","hiddenByDefault","sort"],["id","updated-at",3,"heading","hiddenByDefault","sort"],["id","position",3,"heading","hiddenByDefault","sort"],["id","name",3,"heading","optional","sort"],["id","breadcrumb",3,"heading"],["id","slug",3,"heading","sort"],["id","visibility",3,"heading"],["id","view-contents",3,"heading","optional"],[3,"customField","sorts",4,"ngFor","ngForOf"],[3,"ngClass"],["class","child-arrow","shape","child-arrow",3,"transparent",4,"ngIf"],["class","icon-button folder-button",3,"click",4,"ngIf"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"],["shape","child-arrow",1,"child-arrow"],[1,"icon-button","folder-button",3,"click"],["shape","folder",4,"ngIf"],["shape","folder-open",4,"ngIf"],["shape","folder"],["shape","folder-open"],[1,"breadcrumb"],[4,"ngIf"],["class","separator",4,"ngIf"],[4,"ngFor","ngForOf"],[1,"separator"],["colorType","warning",4,"ngIf"],["colorType","success",4,"ngIf"],["colorType","warning"],["colorType","success"],["queryParamsHandling","merge",1,"button-small","bg-weight-150",3,"routerLink","queryParams"],["shape","file-group"],[3,"customField","sorts"],[3,"collectionId"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.qZA()(),t.TgZ(6,"vdr-ab-right"),t._UZ(7,"vdr-action-bar-items",1),t.YNc(8,cr,4,5,"a",2),t.qZA()()(),t.TgZ(9,"vdr-split-view",3),t.NdJ("closeClicked",function(){return e.closeContents()}),t.ALo(10,"async"),t.YNc(11,yr,38,64,"ng-template",4),t.YNc(12,kr,2,3,"ng-template",5),t.ALo(13,"async"),t.qZA()),2&n&&(t.xp6(3),t.Q6J("availableLanguageCodes",t.lcZ(4,5,e.availableLanguages$))("currentLanguageCode",t.lcZ(5,7,e.contentLanguage$)),t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(13,Nr)),t.xp6(1),t.Q6J("rightPanelOpen",t.lcZ(10,9,e.activeCollectionId$)),t.xp6(3),t.Q6J("splitViewTitle",t.lcZ(13,11,e.activeCollectionTitle$)))},dependencies:[h.qvL,g.mk,g.sg,g.O5,P.rH,A.Kk,A.BN,A.mz,H.Y,G.S,$.H,tt.W,Le.c,z.U,at.J,ke.j,ir._,Zn.L,Zn.a,E.z,Vt,wt,g.Ov,x.X$,ot.H,$t],styles:["[_nghost-%COMP%]{--indent-spacing: 18px}.indent-1[_ngcontent-%COMP%]{padding-inline-start:var(--indent-spacing)}.indent-2[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 2)}.indent-3[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 3)}.indent-4[_ngcontent-%COMP%], .indent-5[_ngcontent-%COMP%], .indent-6[_ngcontent-%COMP%], .indent-7[_ngcontent-%COMP%], .indent-8[_ngcontent-%COMP%], .indent-9[_ngcontent-%COMP%]{padding-inline-start:calc(var(--indent-spacing) * 4)}.child-arrow[_ngcontent-%COMP%]{margin:1px 6px}.child-arrow.transparent[_ngcontent-%COMP%]{opacity:0}.breadcrumb[_ngcontent-%COMP%]{display:flex}.separator[_ngcontent-%COMP%]{color:var(--color-weight-500);margin:0 3px}"],changeDetection:0});class Bt{constructor(){this.allMoveListItems=[],this._rearrange$=new _t.x,this._delete$=new _t.x,this.rearrange$=this._rearrange$.asObservable(),this.delete$=this._delete$.asObservable()}ngOnDestroy(){this._rearrange$.complete(),this._delete$.complete()}setCollectionTree(n){this.collectionTree=n}resetMoveList(){this.allMoveListItems=[]}getMoveListItems(n){return 0===this.allMoveListItems.length&&(this.allMoveListItems=this.calculateAllMoveListItems()),this.allMoveListItems.filter(e=>e.id!==n.id&&!e.ancestorIdPath.has(n.id)&&e.id!==n.parent?.id)}onDrop(n){const e=n.item.data,i=n.container.data.id;if(null==i)throw new Error("Could not determine the ID of the root Collection");this._rearrange$.next({collectionId:e.id,parentId:i,index:n.currentIndex})}onMove(n){this._rearrange$.next(n)}onDelete(n){this._delete$.next(n)}calculateAllMoveListItems(){const n=(e,a,i,c)=>{const s=a.concat(e.name);return c.push({path:s.slice(1).join(" / ")||"root",id:e.id,ancestorIdPath:i}),e.children.forEach(p=>n(p,s,new Set([...i,e.id]),c)),c};return n(this.collectionTree,[],new Set,[])}}function Jr(o,n){1&o&&t._UZ(0,"clr-icon",32)}function Ur(o,n){1&o&&t._UZ(0,"clr-icon",33)}function Mr(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",29),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().$implicit,c=t.oxw();return t.KtG(c.toggleExpanded(i))}),t.YNc(1,Jr,1,0,"clr-icon",30),t.YNc(2,Ur,1,0,"clr-icon",31),t.qZA()}if(2&o){const e=t.oxw().$implicit,a=t.oxw();t.Q6J("disabled",a.expandAll),t.xp6(1),t.Q6J("ngIf",!e.expanded&&!a.expandAll),t.xp6(1),t.Q6J("ngIf",e.expanded||a.expandAll)}}function Rr(o,n){1&o&&t._UZ(0,"div",34)}function Er(o,n){1&o&&(t.TgZ(0,"vdr-chip"),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.private")))}function Vr(o,n){1&o&&(t.TgZ(0,"div",35),t._UZ(1,"clr-icon",36),t.qZA())}(xt=Bt).\u0275fac=function(n){return new(n||xt)},xt.\u0275prov=t.Yz7({token:xt,factory:xt.\u0275fac});const Sr=function(o){return{parentId:o}},wr=function(o){return["./","create",o]};function Qr(o,n){if(1&o&&(t.TgZ(0,"a",37),t._UZ(1,"clr-icon",38),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o){const e=t.oxw().$implicit;t.Q6J("routerLink",t.VKq(6,wr,t.VKq(4,Sr,e.id))),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.create-new-collection")," ")}}function qr(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",21),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw().$implicit,p=t.oxw();return t.KtG(p.move(s,c.id))}),t.ALo(1,"async"),t.TgZ(2,"div",39)(3,"div",40),t._UZ(4,"clr-icon",41),t.qZA(),t.TgZ(5,"div",42),t._uU(6),t.qZA()()()}if(2&o){const e=n.$implicit,a=t.oxw(2);t.Q6J("disabled",!t.lcZ(1,2,a.hasUpdatePermission$)),t.xp6(6),t.hij(" ",e.path," ")}}function $r(o,n){if(1&o&&t._UZ(0,"vdr-collection-tree-node",43),2&o){const e=t.oxw().$implicit,a=t.oxw();t.Q6J("expandAll",a.expandAll)("collectionTree",e)("activeCollectionId",a.activeCollectionId)("selectionManager",a.selectionManager)}}const Yr=function(o){return{contents:o}},Gr=function(o){return["./",o]},Br=function(o){return["/catalog/collections/",o]},jr=function(){return["UpdateCatalog","UpdateCollection"]},Kr=function(){return["CreateCatalog","CreateCollection"]};function Hr(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",3)(1,"div",4)(2,"div")(3,"input",5),t.NdJ("click",function(i){const s=t.CHM(e).$implicit,p=t.oxw();return t.KtG(p.selectionManager.toggleSelection(s,i))}),t.qZA()(),t.TgZ(4,"div",6),t.YNc(5,Mr,3,3,"button",7),t.YNc(6,Rr,1,0,"ng-template",null,8,t.W1O),t._uU(8),t.qZA(),t._UZ(9,"div",9),t.YNc(10,Er,3,3,"vdr-chip",10),t.TgZ(11,"a",11),t._UZ(12,"clr-icon",12),t._uU(13),t.ALo(14,"translate"),t.qZA(),t.TgZ(15,"a",13),t._UZ(16,"clr-icon",14),t._uU(17),t.ALo(18,"translate"),t.qZA(),t.YNc(19,Vr,2,0,"div",15),t.TgZ(20,"vdr-dropdown")(21,"button",16),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.getMoveListItems(c))}),t._UZ(22,"clr-icon",17),t.qZA(),t.TgZ(23,"vdr-dropdown-menu",18),t.YNc(24,Qr,4,8,"a",19),t._UZ(25,"div",20),t.TgZ(26,"button",21),t.NdJ("click",function(){const i=t.CHM(e),c=i.$implicit,s=i.index,p=t.oxw();return t.KtG(p.moveUp(c,s))}),t.ALo(27,"async"),t._UZ(28,"clr-icon",22),t._uU(29),t.ALo(30,"translate"),t.qZA(),t.TgZ(31,"button",21),t.NdJ("click",function(){const i=t.CHM(e),c=i.$implicit,s=i.index,p=t.oxw();return t.KtG(p.moveDown(c,s))}),t.ALo(32,"async"),t._UZ(33,"clr-icon",23),t._uU(34),t.ALo(35,"translate"),t.qZA(),t.TgZ(36,"h4",24),t._uU(37),t.ALo(38,"translate"),t.qZA(),t.YNc(39,qr,7,4,"button",25),t._UZ(40,"div",20),t.TgZ(41,"button",26),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.delete(c.id))}),t.ALo(42,"async"),t._UZ(43,"clr-icon",27),t._uU(44),t.ALo(45,"translate"),t.qZA()()()(),t.YNc(46,$r,1,4,"vdr-collection-tree-node",28),t.qZA()}if(2&o){const e=n.$implicit,a=n.index,i=t.MAs(7),c=t.oxw();t.ekj("private",e.isPrivate),t.Q6J("cdkDragData",e),t.xp6(1),t.ekj("active",e.id===c.activeCollectionId),t.Q6J("ngClass","depth-"+c.depth),t.xp6(2),t.Q6J("checked",c.selectionManager.isSelected(e)),t.xp6(2),t.Q6J("ngIf",null==e.children?null:e.children.length)("ngIfElse",i),t.xp6(3),t.hij(" ",e.name," "),t.xp6(2),t.Q6J("ngIf",e.isPrivate),t.xp6(1),t.Q6J("routerLink",t.VKq(46,Gr,t.VKq(44,Yr,e.id))),t.xp6(2),t.hij(" ",t.lcZ(14,26,"catalog.view-contents")," "),t.xp6(2),t.Q6J("routerLink",t.VKq(48,Br,e.id)),t.xp6(2),t.hij(" ",t.lcZ(18,28,"common.edit")," "),t.xp6(2),t.Q6J("vdrIfPermissions",t.DdM(50,jr)),t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(51,Kr)),t.xp6(2),t.Q6J("disabled",0===a||!t.lcZ(27,30,c.hasUpdatePermission$)),t.xp6(3),t.hij(" ",t.lcZ(30,32,"catalog.move-up")," "),t.xp6(2),t.Q6J("disabled",a===c.collectionTree.children.length-1||!t.lcZ(32,34,c.hasUpdatePermission$)),t.xp6(3),t.hij(" ",t.lcZ(35,36,"catalog.move-down")," "),t.xp6(3),t.Oqu(t.lcZ(38,38,"catalog.move-to")),t.xp6(2),t.Q6J("ngForOf",c.moveListItems),t.xp6(2),t.Q6J("disabled",!t.lcZ(42,40,c.hasDeletePermission$)),t.xp6(3),t.hij(" ",t.lcZ(45,42,"common.delete")," "),t.xp6(2),t.Q6J("ngIf",e.expanded||c.expandAll)}}class Je{constructor(n,e,a,i,c,s){this.parent=n,this.dataService=e,this.collectionTreeService=a,this.router=i,this.route=c,this.changeDetectorRef=s,this.depth=0,this.expandAll=!1,this.moveListItems=[],n&&(this.depth=n.depth+1)}ngOnInit(){this.parentName=this.collectionTree.name||"<root>";const n=this.dataService.client.userStatus().mapStream(e=>e.userStatus.permissions).pipe((0,r.d)(1));this.hasUpdatePermission$=n.pipe((0,v.U)(e=>e.includes(l.y3$.UpdateCatalog)||e.includes(l.y3$.UpdateCollection))),this.hasDeletePermission$=n.pipe((0,v.U)(e=>e.includes(l.y3$.DeleteCatalog)||e.includes(l.y3$.DeleteCollection))),this.subscription=this.selectionManager?.selectionChanges$.subscribe(()=>this.changeDetectorRef.markForCheck())}ngOnChanges(n){const e=n.expandAll;e&&!0===e.previousValue&&!1===e.currentValue&&this.collectionTree.children.forEach(a=>a.expanded=!1)}ngOnDestroy(){this.subscription?.unsubscribe()}trackByFn(n,e){return e.id}toggleExpanded(n){n.expanded=!n.expanded;let e=this.route.snapshot.queryParamMap.get("expanded")?.split(",")??[];n.expanded?e.push(n.id):e=e.filter(a=>a!==n.id),this.router.navigate(["./"],{queryParams:{expanded:e.filter(a=>!!a).join(",")},queryParamsHandling:"merge",relativeTo:this.route})}getMoveListItems(n){this.moveListItems=this.collectionTreeService.getMoveListItems(n)}move(n,e){this.collectionTreeService.onMove({index:0,parentId:e,collectionId:n.id})}moveUp(n,e){n.parent&&this.collectionTreeService.onMove({index:e-1,parentId:n.parent.id,collectionId:n.id})}moveDown(n,e){n.parent&&this.collectionTreeService.onMove({index:e+1,parentId:n.parent.id,collectionId:n.id})}drop(n){(0,k.bA)(this.collectionTree.children,n.previousIndex,n.currentIndex),this.collectionTreeService.onDrop(n)}delete(n){this.collectionTreeService.onDelete(n)}}function On(o,n,e=[]){const a=[],i={},c=function Wr(o){const n=new Map;function e(a){n.set(a.id,a),a.children.forEach(e)}return o&&e(o),n}(n);for(const p of o)i[p.id]={...p,children:[]};for(const p of o.map(_=>_.id))if(i.hasOwnProperty(p)){const _=i[p];_.expanded=c.get(p)?.expanded??e.includes(p);const f=_.parent;if(!f)continue;i[f.id]?i[f.id]?i[f.id].children.push(_):i[f.id]={children:[_]}:a.push(_)}return{id:a.length?a[0].parent.id:void 0,children:a}}var jt,Kt,Ht;function zr(o,n){if(1&o&&t._UZ(0,"vdr-collection-tree-node",1),2&o){const e=t.oxw();t.Q6J("expandAll",e.expandAll)("collectionTree",e.collectionTree)("selectionManager",e.selectionManager)("activeCollectionId",e.activeCollectionId)}}(ct=Je).\u0275fac=function(n){return new(n||ct)(t.Y36(ct,12),t.Y36(l.DoR),t.Y36(Bt),t.Y36(P.F0),t.Y36(P.gz),t.Y36(t.sBO))},ct.\u0275cmp=t.Xpm({type:ct,selectors:[["vdr-collection-tree-node"]],inputs:{collectionTree:"collectionTree",activeCollectionId:"activeCollectionId",expandAll:"expandAll",selectionManager:"selectionManager"},features:[t.TTD],decls:4,vars:6,consts:[["cdkDropList","",1,"tree-node",3,"cdkDropListData","cdkDropListDisabled","cdkDropListDropped"],["dropList",""],["class","collection","cdkDrag","",3,"private","cdkDragData",4,"ngFor","ngForOf","ngForTrackBy"],["cdkDrag","",1,"collection",3,"cdkDragData"],[1,"collection-detail",3,"ngClass"],["type","checkbox","clrCheckbox","",3,"checked","click"],[1,"name"],["class","icon-button folder-button",3,"disabled","click",4,"ngIf","ngIfElse"],["folderSpacer",""],[1,"flex-spacer"],[4,"ngIf"],["queryParamsHandling","preserve",1,"btn","btn-link","btn-sm",3,"routerLink"],["shape","view-list"],[1,"btn","btn-link","btn-sm",3,"routerLink"],["shape","edit"],["class","drag-handle","cdkDragHandle","",4,"vdrIfPermissions"],["vdrDropdownTrigger","",1,"icon-button",3,"click"],["shape","ellipsis-vertical"],["vdrPosition","bottom-right"],["class","dropdown-item",3,"routerLink",4,"vdrIfPermissions"],[1,"dropdown-divider"],["type","button","vdrDropdownItem","",3,"disabled","click"],["shape","caret up"],["shape","caret down"],[1,"dropdown-header"],["type","button","vdrDropdownItem","",3,"disabled","click",4,"ngFor","ngForOf"],["vdrDropdownItem","",1,"button",3,"disabled","click"],["shape","trash",1,"is-danger"],[3,"expandAll","collectionTree","activeCollectionId","selectionManager",4,"ngIf"],[1,"icon-button","folder-button",3,"disabled","click"],["shape","folder",4,"ngIf"],["shape","folder-open",4,"ngIf"],["shape","folder"],["shape","folder-open"],[1,"folder-button-spacer"],["cdkDragHandle","",1,"drag-handle"],["shape","drag-handle","size","24"],[1,"dropdown-item",3,"routerLink"],["shape","plus"],[1,"move-to-item"],[1,"move-icon"],["shape","child-arrow"],[1,"path"],[3,"expandAll","collectionTree","activeCollectionId","selectionManager"]],template:function(n,e){1&n&&(t.TgZ(0,"div",0,1),t.NdJ("cdkDropListDropped",function(i){return e.drop(i)}),t.ALo(2,"async"),t.YNc(3,Hr,47,52,"div",2),t.qZA()),2&n&&(t.Q6J("cdkDropListData",e.collectionTree)("cdkDropListDisabled",!t.lcZ(2,4,e.hasUpdatePermission$)),t.xp6(3),t.Q6J("ngForOf",e.collectionTree.children)("ngForTrackBy",e.trackByFn))},dependencies:[h.q0d,h.qvL,h.KKC,g.mk,g.sg,g.O5,P.rH,k.Wj,k.Zt,k.Bh,H.Y,y.y,ht.J,vt.N,Ct.U,Tt.H,$.H,ct,g.Ov,x.X$],styles:["[_nghost-%COMP%]{display:block}.collection[_ngcontent-%COMP%]{background-color:var(--clr-table-bgcolor);border-radius:var(--clr-global-borderradius);font-size:.65rem;transition:transform .25s cubic-bezier(0,0,.2,1);margin-bottom:2px;border-inline-start:2px solid transparent;transition:border-left-color .2s}.collection.private[_ngcontent-%COMP%]{background-color:var(--color-component-bg-200)}.collection[_ngcontent-%COMP%] .collection-detail[_ngcontent-%COMP%]{padding:6px 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-component-border-100)}.collection[_ngcontent-%COMP%] .collection-detail.active[_ngcontent-%COMP%]{background-color:var(--clr-global-selection-color)}.collection[_ngcontent-%COMP%] .collection-detail.depth-1[_ngcontent-%COMP%]{padding-inline-start:36px}.collection[_ngcontent-%COMP%] .collection-detail.depth-2[_ngcontent-%COMP%]{padding-inline-start:60px}.collection[_ngcontent-%COMP%] .collection-detail.depth-3[_ngcontent-%COMP%]{padding-inline-start:84px}.collection[_ngcontent-%COMP%] .collection-detail.depth-4[_ngcontent-%COMP%]{padding-inline-start:108px}.collection[_ngcontent-%COMP%] .collection-detail[_ngcontent-%COMP%] .folder-button-spacer[_ngcontent-%COMP%]{display:inline-block;width:28px}.tree-node[_ngcontent-%COMP%]{display:block;background-color:var(--clr-table-bgcolor);border-radius:var(--clr-global-borderradius);overflow:hidden}.tree-node.cdk-drop-list-dragging[_ngcontent-%COMP%] > .collection[_ngcontent-%COMP%]{border-left-color:var(--color-primary-300)}.drag-placeholder[_ngcontent-%COMP%]{min-height:120px;background-color:var(--color-component-bg-300);transition:transform .25s cubic-bezier(0,0,.2,1)}.cdk-drag-preview[_ngcontent-%COMP%]{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder[_ngcontent-%COMP%]{opacity:0}.cdk-drag-animating[_ngcontent-%COMP%]{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging[_ngcontent-%COMP%] .tree-node[_ngcontent-%COMP%]:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.move-to-item[_ngcontent-%COMP%]{display:flex;white-space:normal;align-items:baseline}.move-to-item[_ngcontent-%COMP%] .move-icon[_ngcontent-%COMP%]{flex:none;margin-inline-end:3px}.move-to-item[_ngcontent-%COMP%] .path[_ngcontent-%COMP%]{line-height:18px}"],changeDetection:0});class He{constructor(n){this.collectionTreeService=n,this.expandAll=!1,this.expandedIds=[],this.rearrange=new t.vpe,this.deleteCollection=new t.vpe}ngOnChanges(n){"collections"in n&&this.collections&&(this.collectionTree=On(this.collections,this.collectionTree,this.expandedIds),this.collectionTreeService.setCollectionTree(this.collectionTree),this.collectionTreeService.resetMoveList())}ngOnInit(){this.collectionTreeService.rearrange$.subscribe(n=>this.rearrange.emit(n)),this.collectionTreeService.delete$.subscribe(n=>this.deleteCollection.emit(n))}}function Xr(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.confirm-deletion-of-unused-variants-title"),"\n")}function tc(o,n){if(1&o&&(t.TgZ(0,"li"),t._uU(1),t.qZA()),2&o){const e=n.$implicit;t.xp6(1),t.AsE("",e.name," (",e.sku,")")}}function ec(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",3),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",4),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.confirm())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,2,"common.cancel")),t.xp6(3),t.hij(" ",t.lcZ(5,4,"common.confirm")," "))}(jt=He).\u0275fac=function(n){return new(n||jt)(t.Y36(Bt))},jt.\u0275cmp=t.Xpm({type:jt,selectors:[["vdr-collection-tree"]],inputs:{collections:"collections",activeCollectionId:"activeCollectionId",expandAll:"expandAll",expandedIds:"expandedIds",selectionManager:"selectionManager"},outputs:{rearrange:"rearrange",deleteCollection:"deleteCollection"},features:[t._Bn([Bt]),t.TTD],decls:1,vars:1,consts:[["cdkDropListGroup","",3,"expandAll","collectionTree","selectionManager","activeCollectionId",4,"ngIf"],["cdkDropListGroup","",3,"expandAll","collectionTree","selectionManager","activeCollectionId"]],template:function(n,e){1&n&&t.YNc(0,zr,1,4,"vdr-collection-tree-node",0),2&n&&t.Q6J("ngIf",e.collectionTree)},dependencies:[g.O5,k.Fd,Je],changeDetection:0});class We{constructor(){this.variants=[]}confirm(){this.resolveWith(!0)}cancel(){this.resolveWith()}}function nc(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.hij(" ",t.lcZ(1,1,"catalog.create-facet-value"),"\n")}function oc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",7),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",8),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.confirm())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",e.form.invalid),t.xp6(1),t.hij(" ",t.lcZ(5,5,"common.confirm")," ")}}(Kt=We).\u0275fac=function(n){return new(n||Kt)},Kt.\u0275cmp=t.Xpm({type:Kt,selectors:[["vdr-confirm-variant-deletion-dialog"]],decls:6,vars:4,consts:[["vdrDialogTitle",""],[4,"ngFor","ngForOf"],["vdrDialogButtons",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"click"]],template:function(n,e){1&n&&(t.YNc(0,Xr,2,3,"ng-template",0),t._uU(1),t.ALo(2,"translate"),t.TgZ(3,"ul"),t.YNc(4,tc,2,2,"li",1),t.qZA(),t.YNc(5,ec,6,6,"ng-template",2)),2&n&&(t.xp6(1),t.hij("\n",t.lcZ(2,2,"catalog.confirm-deletion-of-unused-variants-body"),"\n"),t.xp6(3),t.Q6J("ngForOf",e.variants))},dependencies:[g.sg,X.n,K.q,x.X$],changeDetection:0});class Ue{constructor(n){this.formBuilder=n,this.form=this.formBuilder.group({name:["",d.kI.required],code:["",d.kI.required]})}updateCode(){const n=this.form.get("name"),e=this.form.get("code");n&&e&&e.pristine&&e.setValue((0,R.U)(`${n.value}`,"-"))}confirm(){const{name:n,code:e}=this.form.value;!n||!e||this.resolveWith({facetId:this.facetId,code:e,translations:[{languageCode:this.languageCode,name:n}]})}cancel(){this.resolveWith()}}(Ht=Ue).\u0275fac=function(n){return new(n||Ht)(t.Y36(d.qu))},Ht.\u0275cmp=t.Xpm({type:Ht,selectors:[["vdr-create-facet-value-dialog"]],decls:9,vars:7,consts:[["vdrDialogTitle",""],[1,"form-grid",3,"formGroup"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"input"],["for","code",3,"label"],["id","code","type","text","formControlName","code"],["vdrDialogButtons",""],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,nc,2,3,"ng-template",0),t.TgZ(1,"div",1)(2,"vdr-form-field",2),t.ALo(3,"translate"),t.TgZ(4,"input",3),t.NdJ("input",function(){return e.updateCode()}),t.qZA()(),t.TgZ(5,"vdr-form-field",4),t.ALo(6,"translate"),t._UZ(7,"input",5),t.qZA()(),t.YNc(8,oc,6,7,"ng-template",6)),2&n&&(t.xp6(1),t.Q6J("formGroup",e.form),t.xp6(1),t.Q6J("label",t.lcZ(3,3,"common.name")),t.xp6(3),t.Q6J("label",t.lcZ(6,5,"common.code")))},dependencies:[d.Fj,d.JJ,d.JL,d.sg,d.u,q.h,y.y,X.n,K.q,x.X$],changeDetection:0});var Wt,ac=m(54687);function ic(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",20),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.create())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.create")," ")}}function rc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",20),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}function cc(o,n){if(1&o&&t.YNc(0,rc,3,4,"button",21),2&o){const e=t.oxw();t.Q6J("vdrIfPermissions",e.updatePermission)}}function lc(o,n){1&o&&(t.ynx(0),t._uU(1),t.ALo(2,"translate"),t.BQk()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.public")))}function sc(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.private"))}function dc(o,n){if(1&o&&t._UZ(0,"vdr-page-entity-info",22),2&o){const e=n.ngIf;t.Q6J("entity",e)}}function pc(o,n){if(1&o&&(t.TgZ(0,"vdr-card",23),t.ALo(1,"translate"),t._UZ(2,"vdr-tabbed-custom-fields",24),t.ALo(3,"hasPermission"),t.qZA()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.detailForm.get("facet.customFields"))("readonly",!t.lcZ(3,6,e.updatePermission))}}function uc(o,n){if(1&o&&(t._UZ(0,"input",29),t.ALo(1,"translate")),2&o){const e=t.oxw(2);t.Q6J("formControl",e.filterControl)("placeholder",t.lcZ(1,2,"catalog.filter-by-name"))}}function mc(o,n){1&o&&(t.ynx(0),t.TgZ(1,"th"),t._uU(2),t.ALo(3,"translate"),t.qZA(),t.BQk()),2&o&&(t.xp6(2),t.Oqu(t.lcZ(3,1,"common.custom-fields")))}const _c=function(o){return["values",o,"customFields"]};function gc(o,n){if(1&o&&(t.TgZ(0,"td",45),t._UZ(1,"vdr-tabbed-custom-fields",46),t.ALo(2,"hasPermission"),t.qZA()),2&o){const e=t.oxw().$implicit,a=t.oxw(3);t.xp6(1),t.Q6J("customFields",a.customValueFields)("compact",!0)("customFieldsFormGroup",a.detailForm.get(t.VKq(6,_c,e.id)))("readonly",!t.lcZ(2,4,a.updatePermission))}}const fc=function(o){return["values",o]};function hc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"tr",35)(1,"td",36),t._UZ(2,"vdr-entity-info",22),t.qZA(),t.TgZ(3,"td",36)(4,"input",37),t.NdJ("input",function(i){const s=t.CHM(e).$implicit,p=t.oxw(3);return t.KtG(p.updateValueCode(s.code,i.target.value,s.id))}),t.ALo(5,"hasPermission"),t.qZA()(),t.TgZ(6,"td",36),t._UZ(7,"input",38),t.qZA(),t.YNc(8,gc,3,8,"td",39),t.TgZ(9,"td",36)(10,"vdr-dropdown")(11,"button",40),t._UZ(12,"clr-icon",41),t.qZA(),t.TgZ(13,"vdr-dropdown-menu",42)(14,"button",43),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(3);return t.KtG(s.deleteFacetValue(c.id))}),t.ALo(15,"hasPermission"),t._UZ(16,"clr-icon",44),t._uU(17),t.ALo(18,"translate"),t.qZA()()()()()}if(2&o){const e=n.$implicit,a=t.oxw(3);t.Q6J("formGroup",a.detailForm.get(t.VKq(12,fc,e.id))),t.xp6(2),t.Q6J("entity",e),t.xp6(2),t.Q6J("readonly",!t.lcZ(5,6,a.updatePermission)),t.xp6(4),t.Q6J("ngIf",a.customValueFields.length),t.xp6(6),t.Q6J("disabled",!t.lcZ(15,8,a.updatePermission)),t.xp6(3),t.hij(" ",t.lcZ(18,10,"common.delete")," ")}}const vc=function(o,n,e){return{currentPage:o,itemsPerPage:n,totalItems:e}};function Cc(o,n){if(1&o){const e=t.EpF();t.ynx(0),t.TgZ(1,"table",30)(2,"thead")(3,"tr"),t._UZ(4,"th"),t.TgZ(5,"th"),t._uU(6),t.ALo(7,"translate"),t.qZA(),t.TgZ(8,"th"),t._uU(9),t.ALo(10,"translate"),t.qZA(),t.YNc(11,mc,4,3,"ng-container",27),t._UZ(12,"th"),t.qZA()(),t.TgZ(13,"tbody"),t.YNc(14,hc,19,14,"tr",31),t.ALo(15,"paginate"),t.qZA()(),t.TgZ(16,"div",32)(17,"vdr-items-per-page-controls",33),t.NdJ("itemsPerPageChange",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.setItemsPerPage(i))}),t.qZA(),t.TgZ(18,"vdr-pagination-controls",34),t.NdJ("pageChange",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.setCurrentPage(i))}),t.qZA()(),t.BQk()}if(2&o){const e=n.ngIf,a=t.oxw(2);t.xp6(6),t.Oqu(t.lcZ(7,8,"common.name")),t.xp6(3),t.Oqu(t.lcZ(10,10,"common.code")),t.xp6(2),t.Q6J("ngIf",a.customValueFields.length),t.xp6(3),t.Q6J("ngForOf",t.xi3(15,12,e,t.kEZ(15,vc,a.currentPage,a.itemsPerPage,a.totalItems))),t.xp6(3),t.Q6J("itemsPerPage",a.itemsPerPage),t.xp6(1),t.Q6J("currentPage",a.currentPage)("itemsPerPage",a.itemsPerPage)("totalItems",a.totalItems)}}function Tc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",47),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.addFacetValue())}),t._UZ(1,"clr-icon",48),t._uU(2),t.ALo(3,"translate"),t.qZA()}2&o&&(t.xp6(2),t.hij(" ",t.lcZ(3,1,"catalog.add-facet-value")," "))}const bc=function(){return["CreateCatalog","CreateFacet"]};function xc(o,n){if(1&o&&(t.TgZ(0,"vdr-card",25),t.ALo(1,"translate"),t.YNc(2,uc,2,4,"ng-template",26),t.YNc(3,Cc,19,19,"ng-container",27),t.ALo(4,"async"),t.TgZ(5,"div"),t.YNc(6,Tc,4,3,"button",28),t.qZA()()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,4,"catalog.facet-values"))("paddingX",!1),t.xp6(3),t.Q6J("ngIf",t.lcZ(4,6,e.values$)),t.xp6(3),t.Q6J("vdrIfPermissions",t.DdM(8,bc))}}const In=D.Ps`
83
83
  query GetFacetDetail($id: ID!, $facetValueListOptions: FacetValueListOptions) {
84
84
  facet(id: $id) {
85
85
  ...FacetWithValueList
86
86
  }
87
87
  }
88
88
  ${l.$ip}
89
- `;class Me extends l.VE7{constructor(n,e,a,i,c){super(),this.changeDetector=n,this.dataService=e,this.formBuilder=a,this.notificationService=i,this.modalService=c,this.customFields=this.getCustomFieldConfig("Facet"),this.customValueFields=this.getCustomFieldConfig("FacetValue"),this.detailForm=this.formBuilder.group({facet:this.formBuilder.group({code:["",d.kI.required],name:"",visible:!0,customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))}),values:this.formBuilder.record({})}),this.currentPage=1,this.itemsPerPage=10,this.totalItems=0,this.filterControl=new d.NI(""),this.values$=new V.X([]),this.updatePermission=[l.y3$.UpdateCatalog,l.y3$.UpdateFacet]}ngOnInit(){this.init(),this.filterControl.valueChanges.pipe((0,it.b)(200),(0,Nt.R)(this.destroy$)).subscribe(n=>{this.currentPage=1,this.fetchFacetValues(this.currentPage,this.itemsPerPage,n)})}ngOnDestroy(){this.destroy()}updateCode(n,e){if(!n){const a=this.detailForm.get(["facet","code"]);a&&a.pristine&&a.setValue((0,R.U)(e,"-"))}}updateValueCode(n,e,a){if(!n){const i=this.detailForm.get(["values",a,"code"]);i&&i.pristine&&i.setValue((0,R.U)(e,"-"))}}customValueFieldIsSet(n,e){return!!this.detailForm.get(["values",n,"customFields",e])}addFacetValue(){this.modalService.fromComponent(Ue,{locals:{languageCode:this.languageCode,facetId:this.id}}).pipe((0,b.w)(n=>n?this.dataService.facet.createFacetValues([n]):F.E)).subscribe(n=>{n.createFacetValues&&(this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"FacetValue"}),this.currentPage=1,this.fetchFacetValues(this.currentPage,this.itemsPerPage))})}create(){const n=this.detailForm.get("facet");if(!n||!n.dirty)return;const e=this.getUpdatedFacet({id:"",createdAt:"",updatedAt:"",isPrivate:!1,languageCode:this.languageCode,name:"",code:"",translations:[]},n,this.languageCode);this.dataService.facet.createFacet(e).subscribe(a=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"Facet"}),this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.router.navigate(["../",a.createFacet.id],{relativeTo:this.route})},a=>{this.notificationService.error((0,u.J)("common.notify-create-error"),{entity:"Facet"})})}save(){const n=this.detailForm.get("values");(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,k.z)(([e,a])=>{const i=this.detailForm.get("facet"),c=[];if(i&&i.dirty){const s=this.getUpdatedFacet(e,i,a);s&&c.push(this.dataService.facet.updateFacet(s))}if(n&&n.dirty){const s=this.getUpdatedFacetValues(n,a);s.length&&c.push(this.dataService.facet.updateFacetValues(s))}return(0,W.D)(c)})).subscribe(()=>{this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"Facet"})},e=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"Facet"})})}deleteFacetValue(n){this.showModalAndDelete(n).pipe((0,b.w)(e=>e.result===l.PcR.DELETED?[!0]:this.showModalAndDelete(n,e.message||"").pipe((0,v.U)(a=>a.result===l.PcR.DELETED))),(0,b.w)(e=>e?this.dataService.query(l.m_w,{id:this.id}).single$:[])).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"FacetValue"}),this.fetchFacetValues(this.currentPage,this.itemsPerPage,this.filterControl.value)},e=>{this.notificationService.error((0,u.J)("common.notify-delete-error"),{entity:"FacetValue"})})}showModalAndDelete(n,e){return this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-facet-value"),body:e,buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(a=>a?this.dataService.facet.deleteFacetValues([n],!!e):F.E),(0,v.U)(a=>a.deleteFacetValues[0]))}setCurrentPage(n){this.currentPage=n,this.fetchFacetValues(this.currentPage,this.itemsPerPage,this.filterControl.value)}setItemsPerPage(n){this.itemsPerPage=n,this.fetchFacetValues(this.currentPage,this.itemsPerPage,this.filterControl.value)}fetchFacetValues(n,e,a){this.dataService.query(In,{id:this.id,facetValueListOptions:{take:e,skip:(n-1)*e,sort:{createdAt:pe.As.DESC},...a?{filter:{name:{contains:a}}}:{}}}).single$.subscribe(({facet:i})=>{i&&(this.values$.next([...i.valueList.items]),this.totalItems=i.valueList.totalItems,this.setFacetValueFormValues(i,this.languageCode))})}setFormValues(n,e){const a=(0,l.ZIM)(n,e);this.detailForm.patchValue({facet:{code:n.code,visible:!n.isPrivate,name:a?.name??""}}),this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get(["facet","customFields"]),n,a),this.values$.next([...n.valueList.items]),this.totalItems=n.valueList.totalItems,this.setFacetValueFormValues(n,e)}setFacetValueFormValues(n,e){const a=this.detailForm.get("values");n.valueList.items.forEach(i=>{const c=(0,l.ZIM)(i,e),s={id:i.id,code:i.code,name:c?c.name:""};let p=a.get(i.id);if(p||(p=this.formBuilder.group(s),a.addControl(i.id,p)),this.customValueFields.length){let _=p.get(["customFields"]);if(_||(_=new d.nJ({}),p.addControl("customFields",_)),_)for(const f of this.customValueFields){const T=f.name,Z="localeString"===f.type?c?.customFields?.[T]:i.customFields[T],O=_.get(T);O?O.setValue(Z):_.addControl(T,new d.p4(Z))}}})}getUpdatedFacet(n,e,a){const i=(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.customFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||""}});return i.isPrivate=!e.value.visible,i}getUpdatedFacetValues(n,e){return Object.values(n.controls).filter(i=>i.dirty).map(i=>i.value).map((i,c)=>(0,l.iSy)({translatable:i,updatedFields:i,customFieldConfig:this.customValueFields,languageCode:e,defaultTranslation:{languageCode:e,name:""}})).filter(st.notNullOrUndefined)}}(Ht=Me).\u0275fac=function(n){return new(n||Ht)(t.Y36(t.sBO),t.Y36(l.DoR),t.Y36(d.qu),t.Y36(l.gqp),t.Y36(l.Z7U))},Ht.\u0275cmp=t.Xpm({type:Ht,selectors:[["vdr-facet-detail"]],features:[t.qOj],decls:44,vars:43,consts:[[3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","facet-detail"],["class","btn btn-primary",3,"disabled","click",4,"ngIf","ngIfElse"],["updateButton",""],[1,"form",3,"formGroup"],["formGroupName","facet"],["for","visibility",3,"label"],["type","checkbox","clrToggle","","formControlName","visible","id","visibility",3,"vdrDisabled"],[1,"visible-toggle"],[4,"ngIf","ngIfElse"],["private",""],[3,"entity",4,"ngIf"],[1,"form-grid"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"readonly","input"],["for","code",3,"label"],["id","code","type","text","formControlName","code",3,"readonly"],[3,"title",4,"ngIf"],["locationId","facet-detail",3,"entity$","detailForm"],[3,"title","paddingX",4,"ngIf"],[1,"btn","btn-primary",3,"disabled","click"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],[3,"entity"],[3,"title"],["entityName","Facet",3,"customFields","customFieldsFormGroup","readonly"],[3,"title","paddingX"],["vdrCardControls",""],[4,"ngIf"],["type","button","class","button m-3",3,"click",4,"vdrIfPermissions"],["type","text",1,"mr-3",3,"formControl","placeholder"],["formArrayName","values",1,"facet-values-list","table"],["class","facet-value",3,"formGroup",4,"ngFor","ngForOf"],[1,"pagination-wrapper"],[3,"itemsPerPage","itemsPerPageChange"],[3,"currentPage","itemsPerPage","totalItems","pageChange"],[1,"facet-value",3,"formGroup"],[1,"align-middle"],["type","text","formControlName","name",3,"readonly","input"],["type","text","formControlName","code"],["class","",4,"ngIf"],["type","button","vdrDropdownTrigger","",1,"icon-button"],["shape","ellipsis-vertical"],["vdrPosition","bottom-right"],["type","button","vdrDropdownItem","",1,"delete-button",3,"disabled","click"],["shape","trash",1,"is-danger"],[1,""],["entityName","FacetValue",3,"customFields","compact","customFieldsFormGroup","readonly"],["type","button",1,"button","m-3",3,"click"],["shape","add"]],template:function(n,e){if(1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.ALo(6,"async"),t.qZA()(),t.TgZ(7,"vdr-ab-right"),t._UZ(8,"vdr-action-bar-items",1),t.YNc(9,ac,3,4,"button",2),t.ALo(10,"async"),t.YNc(11,rc,1,1,"ng-template",null,3,t.W1O),t.qZA()()(),t.TgZ(13,"form",4)(14,"vdr-page-detail-layout")(15,"vdr-page-detail-sidebar",5)(16,"vdr-card")(17,"vdr-form-field",6),t.ALo(18,"translate"),t.TgZ(19,"clr-toggle-wrapper"),t._UZ(20,"input",7),t.ALo(21,"hasPermission"),t.TgZ(22,"label",8),t.YNc(23,cc,3,3,"ng-container",9),t.YNc(24,lc,2,3,"ng-template",null,10,t.W1O),t.qZA()()()(),t.TgZ(26,"vdr-card"),t.YNc(27,sc,1,1,"vdr-page-entity-info",11),t.ALo(28,"async"),t.qZA()(),t.TgZ(29,"vdr-page-block")(30,"vdr-card",5)(31,"div",12)(32,"vdr-form-field",13),t.ALo(33,"translate"),t.TgZ(34,"input",14),t.NdJ("input",function(i){return e.updateCode(null==e.entity?null:e.entity.code,i.target.value)}),t.ALo(35,"hasPermission"),t.qZA()(),t.TgZ(36,"vdr-form-field",15),t.ALo(37,"translate"),t._UZ(38,"input",16),t.ALo(39,"hasPermission"),t.qZA()()(),t.YNc(40,dc,4,8,"vdr-card",17),t._UZ(41,"vdr-custom-detail-component-host",18),t.YNc(42,bc,7,9,"vdr-card",19),t.ALo(43,"async"),t.qZA()()()),2&n){const a=t.MAs(12),i=t.MAs(25);t.xp6(3),t.Q6J("disabled",t.lcZ(4,19,e.isNew$))("availableLanguageCodes",t.lcZ(5,21,e.availableLanguages$))("currentLanguageCode",t.lcZ(6,23,e.languageCode$)),t.xp6(6),t.Q6J("ngIf",t.lcZ(10,25,e.isNew$))("ngIfElse",a),t.xp6(4),t.Q6J("formGroup",e.detailForm),t.xp6(4),t.Q6J("label",t.lcZ(18,27,"catalog.visibility")),t.xp6(3),t.Q6J("vdrDisabled",!t.lcZ(21,29,e.updatePermission)),t.xp6(3),t.Q6J("ngIf",null==e.detailForm.value.facet?null:e.detailForm.value.facet.visible)("ngIfElse",i),t.xp6(4),t.Q6J("ngIf",t.lcZ(28,31,e.entity$)),t.xp6(5),t.Q6J("label",t.lcZ(33,33,"common.name")),t.xp6(2),t.Q6J("readonly",!t.lcZ(35,35,e.updatePermission)),t.xp6(2),t.Q6J("label",t.lcZ(37,37,"common.code")),t.xp6(2),t.Q6J("readonly",!t.lcZ(39,39,e.updatePermission)),t.xp6(2),t.Q6J("ngIf",e.customFields.length),t.xp6(1),t.Q6J("entity$",e.entity$)("detailForm",e.detailForm),t.xp6(1),t.Q6J("ngIf",!t.lcZ(43,41,e.isNew$))}},dependencies:[h.qvL,h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.Fj,d.Wl,d.JJ,d.JL,d.oH,d.sg,d.u,d.x0,d.CE,A.Kk,A.BN,A.mz,Ge.w,Be.L,q.h,y.y,G.S,ht.J,vt.N,Ct.U,Tt.H,$.H,tt.W,Pe.x,oc.V,ut.y,Oe.C,E.z,At.D,Ie.T,Fe.W,nt.A,nt.D,g.Ov,Te._s,x.X$,B.j],styles:[".visible-toggle[_ngcontent-%COMP%]{margin-top:-3px!important}tr.facet-value[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{vertical-align:middle}.pagination-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:var(--card-padding)}"],changeDetection:0});const Fn=(0,l.wwB)({location:"facet-list",requiresPermission:o=>o.includes(l.y3$.DeleteFacet)||o.includes(l.y3$.DeleteCatalog),getItemName:o=>o.name,shouldRetryItem:(o,n)=>!!o.message,bulkDelete:(o,n,e)=>o.facet.deleteFacets(n,e).pipe((0,v.U)(a=>a.deleteFacets))}),Dn=(0,l.z1G)({location:"facet-list",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateFacet),getItemName:o=>o.name,bulkAssignToChannel:(o,n,e)=>o.facet.assignFacetsToChannel({facetIds:n,channelId:e}).pipe((0,v.U)(a=>a.assignFacetsToChannel))}),yn=(0,l.RBx)({location:"facet-list",requiresPermission:o=>o.includes(l.y3$.DeleteCatalog)||o.includes(l.y3$.DeleteFacet),getItemName:o=>o.name,bulkRemoveFromChannel:(o,n,e,a)=>o.facet.removeFacetsFromChannel({channelId:e,facetIds:n,force:a}).pipe((0,v.U)(i=>i.removeFacetsFromChannel)),isErrorResult:o=>"FacetInUseError"===o.__typename?o.message:void 0}),xc={location:"facet-list",label:(0,u.J)("catalog.remove-from-channel"),getTranslationVars:({injector:o})=>(0,l.PDO)(o.get(l.DoR)),icon:"layers",iconClass:"is-warning",requiresPermission:o=>o.includes(l.y3$.UpdateFacet)||o.includes(l.y3$.UpdateCatalog),isVisible:({injector:o})=>(0,l._Nz)(o.get(l.DoR)),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.DoR),s=o.get(l.gqp),p=c.client.userStatus().mapSingle(({userStatus:f})=>f.activeChannelId);function _(f,T){return i.dialog({title:(0,u.J)("catalog.remove-from-channel"),translationVars:{count:n.length},size:T?"lg":"md",body:T,buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:T?(0,u.J)("common.force-remove"):(0,u.J)("common.remove"),returnValue:!0}]}).pipe((0,b.w)(Z=>Z?p.pipe((0,b.w)(O=>O?c.facet.removeFacetsFromChannel({channelId:O,facetIds:f,force:!!T}):F.E),(0,v.U)(O=>O.removeFacetsFromChannel)):F.E))}_((0,J.T)(n.map(f=>f.id))).pipe((0,b.w)(f=>{let T=n.length;const Z=[],O=[];let U=0;for(const Y of f)"FacetInUseError"===Y.__typename&&(Z.push(Y.message),O.push(n[U]?.id),T--),U++;return 0<O.length?_(O,Z.join("\n")).pipe((0,v.U)(Y=>{const M=Y.filter(et=>"FacetInUseError"===et.__typename).length;return n.length-M})):(0,L.of)(T)}),(0,b.w)(f=>f?(0,l.PDO)(c).then(({channelCode:T})=>({channelCode:T,removedCount:f})):F.E)).subscribe(({removedCount:f,channelCode:T})=>{f&&(e.refresh(),a(),s.success((0,u.J)("catalog.notify-remove-facets-from-channel-success"),{count:f,channelCode:T}))})}};var Wt;const Ac=function(){return["./create"]};function Zc(o,n){1&o&&(t.TgZ(0,"a",14),t._UZ(1,"clr-icon",15),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Ac)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.create-new-facet")," "))}function Pc(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function Oc(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function Ic(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}const Fc=function(o){return["./",o]};function Dc(o,n){if(1&o&&(t.TgZ(0,"a",16)(1,"span"),t._uU(2),t.qZA(),t._UZ(3,"clr-icon",17),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.VKq(2,Fc,e.id)),t.xp6(2),t.Oqu(e.name)}}function yc(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.code," ")}}function Lc(o,n){1&o&&(t.TgZ(0,"vdr-chip",20),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.private")))}function Nc(o,n){1&o&&(t.TgZ(0,"vdr-chip",21),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.public")))}function kc(o,n){if(1&o&&(t.YNc(0,Lc,3,3,"vdr-chip",18),t.YNc(1,Nc,3,3,"vdr-chip",19)),2&o){const e=n.item;t.Q6J("ngIf",e.isPrivate),t.xp6(1),t.Q6J("ngIf",!e.isPrivate)}}function Jc(o,n){if(1&o&&t._UZ(0,"vdr-facet-value-chip",26),2&o){const e=n.$implicit;t.Q6J("facetValue",e)("removable",!1)("displayFacetName",!1)}}function Uc(o,n){if(1&o&&(t.TgZ(0,"vdr-chip"),t._uU(1),t.qZA()),2&o){const e=t.oxw().item;t.xp6(1),t.hij(" ... + ",e.valueList.totalItems-e.valueList.items.length," ")}}function Mc(o,n){if(1&o&&(t.ynx(0),t._UZ(1,"clr-icon",15),t._uU(2),t.BQk()),2&o){const e=t.oxw(2).item,a=t.oxw();t.xp6(2),t.hij(" ",e.valueList.totalItems-a.initialLimit," ")}}function Rc(o,n){1&o&&t._UZ(0,"clr-icon",30)}function Ec(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",27),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().item,c=t.oxw();return t.KtG(c.toggleDisplayLimit(i))}),t.YNc(1,Mc,3,1,"ng-container",28),t.YNc(2,Rc,1,0,"ng-template",null,29,t.W1O),t.qZA()}if(2&o){const e=t.MAs(3),a=t.oxw().item,i=t.oxw();t.xp6(1),t.Q6J("ngIf",(i.displayLimit[a.id]||0)<a.valueList.items.length)("ngIfElse",e)}}function Vc(o,n){if(1&o&&(t.TgZ(0,"div",22),t.YNc(1,Jc,1,3,"vdr-facet-value-chip",23),t.ALo(2,"slice"),t.YNc(3,Uc,2,1,"vdr-chip",24),t.YNc(4,Ec,4,2,"button",25),t.qZA()),2&o){const e=n.item,a=t.oxw();t.xp6(1),t.Q6J("ngForOf",t.Dn7(2,3,e.valueList.items,0,a.displayLimit[e.id]||3)),t.xp6(2),t.Q6J("ngIf",a.displayLimit[e.id]<e.valueList.totalItems&&(a.displayLimit[e.id]||0)===e.valueList.items.length),t.xp6(1),t.Q6J("ngIf",e.valueList.items.length>a.initialLimit)}}function Sc(o,n){if(1&o&&t._UZ(0,"vdr-dt2-custom-field-column",31),2&o){const e=n.$implicit,a=t.oxw();t.Q6J("customField",e)("sorts",a.sorts)}}const wc=function(){return["CreateCatalog","CreateFacet"]},Qc=D.Ps`
89
+ `;class Me extends l.VE7{constructor(n,e,a,i,c){super(),this.changeDetector=n,this.dataService=e,this.formBuilder=a,this.notificationService=i,this.modalService=c,this.customFields=this.getCustomFieldConfig("Facet"),this.customValueFields=this.getCustomFieldConfig("FacetValue"),this.detailForm=this.formBuilder.group({facet:this.formBuilder.group({code:["",d.kI.required],name:"",visible:!0,customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))}),values:this.formBuilder.record({})}),this.currentPage=1,this.itemsPerPage=10,this.totalItems=0,this.filterControl=new d.NI(""),this.values$=new V.X([]),this.updatePermission=[l.y3$.UpdateCatalog,l.y3$.UpdateFacet]}ngOnInit(){this.init(),this.filterControl.valueChanges.pipe((0,it.b)(200),(0,kt.R)(this.destroy$)).subscribe(n=>{this.currentPage=1,this.fetchFacetValues(this.currentPage,this.itemsPerPage,n)})}ngOnDestroy(){this.destroy()}updateCode(n,e){if(!n){const a=this.detailForm.get(["facet","code"]);a&&a.pristine&&a.setValue((0,R.U)(e,"-"))}}updateValueCode(n,e,a){if(!n){const i=this.detailForm.get(["values",a,"code"]);i&&i.pristine&&i.setValue((0,R.U)(e,"-"))}}customValueFieldIsSet(n,e){return!!this.detailForm.get(["values",n,"customFields",e])}addFacetValue(){this.modalService.fromComponent(Ue,{locals:{languageCode:this.languageCode,facetId:this.id}}).pipe((0,b.w)(n=>n?this.dataService.facet.createFacetValues([n]):F.E)).subscribe(n=>{n.createFacetValues&&(this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"FacetValue"}),this.currentPage=1,this.fetchFacetValues(this.currentPage,this.itemsPerPage))})}create(){const n=this.detailForm.get("facet");if(!n||!n.dirty)return;const e=this.getUpdatedFacet({id:"",createdAt:"",updatedAt:"",isPrivate:!1,languageCode:this.languageCode,name:"",code:"",translations:[]},n,this.languageCode);this.dataService.facet.createFacet(e).subscribe(a=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"Facet"}),this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.router.navigate(["../",a.createFacet.id],{relativeTo:this.route})},a=>{this.notificationService.error((0,u.J)("common.notify-create-error"),{entity:"Facet"})})}save(){const n=this.detailForm.get("values");(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,J.z)(([e,a])=>{const i=this.detailForm.get("facet"),c=[];if(i&&i.dirty){const s=this.getUpdatedFacet(e,i,a);s&&c.push(this.dataService.facet.updateFacet(s))}if(n&&n.dirty){const s=this.getUpdatedFacetValues(n,a);s.length&&c.push(this.dataService.facet.updateFacetValues(s))}return(0,W.D)(c)})).subscribe(()=>{this.detailForm.markAsPristine(),this.changeDetector.markForCheck(),this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"Facet"})},e=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"Facet"})})}deleteFacetValue(n){this.showModalAndDelete(n).pipe((0,b.w)(e=>e.result===l.PcR.DELETED?[!0]:this.showModalAndDelete(n,e.message||"").pipe((0,v.U)(a=>a.result===l.PcR.DELETED))),(0,b.w)(e=>e?this.dataService.query(l.m_w,{id:this.id}).single$:[])).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"FacetValue"}),this.fetchFacetValues(this.currentPage,this.itemsPerPage,this.filterControl.value)},e=>{this.notificationService.error((0,u.J)("common.notify-delete-error"),{entity:"FacetValue"})})}showModalAndDelete(n,e){return this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-facet-value"),body:e,buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(a=>a?this.dataService.facet.deleteFacetValues([n],!!e):F.E),(0,v.U)(a=>a.deleteFacetValues[0]))}setCurrentPage(n){this.currentPage=n,this.fetchFacetValues(this.currentPage,this.itemsPerPage,this.filterControl.value)}setItemsPerPage(n){this.itemsPerPage=n,this.fetchFacetValues(this.currentPage,this.itemsPerPage,this.filterControl.value)}fetchFacetValues(n,e,a){this.dataService.query(In,{id:this.id,facetValueListOptions:{take:e,skip:(n-1)*e,sort:{createdAt:ue.As.DESC},...a?{filter:{name:{contains:a}}}:{}}}).single$.subscribe(({facet:i})=>{i&&(this.values$.next([...i.valueList.items]),this.totalItems=i.valueList.totalItems,this.setFacetValueFormValues(i,this.languageCode))})}setFormValues(n,e){const a=(0,l.ZIM)(n,e);this.detailForm.patchValue({facet:{code:n.code,visible:!n.isPrivate,name:a?.name??""}}),this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get(["facet","customFields"]),n,a),this.values$.next([...n.valueList.items]),this.totalItems=n.valueList.totalItems,this.setFacetValueFormValues(n,e)}setFacetValueFormValues(n,e){const a=this.detailForm.get("values");n.valueList.items.forEach(i=>{const c=(0,l.ZIM)(i,e),s={id:i.id,code:i.code,name:c?c.name:""};let p=a.get(i.id);if(p||(p=this.formBuilder.group(s),a.addControl(i.id,p)),this.customValueFields.length){let _=p.get(["customFields"]);if(_||(_=new d.nJ({}),p.addControl("customFields",_)),_)for(const f of this.customValueFields){const T=f.name,Z="localeString"===f.type?c?.customFields?.[T]:i.customFields[T],O=_.get(T);O?O.setValue(Z):_.addControl(T,new d.p4(Z))}}})}getUpdatedFacet(n,e,a){const i=(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.customFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||""}});return i.isPrivate=!e.value.visible,i}getUpdatedFacetValues(n,e){return Object.values(n.controls).filter(i=>i.dirty).map(i=>i.value).map((i,c)=>(0,l.iSy)({translatable:i,updatedFields:i,customFieldConfig:this.customValueFields,languageCode:e,defaultTranslation:{languageCode:e,name:""}})).filter(st.notNullOrUndefined)}}(Wt=Me).\u0275fac=function(n){return new(n||Wt)(t.Y36(t.sBO),t.Y36(l.DoR),t.Y36(d.qu),t.Y36(l.gqp),t.Y36(l.Z7U))},Wt.\u0275cmp=t.Xpm({type:Wt,selectors:[["vdr-facet-detail"]],features:[t.qOj],decls:44,vars:43,consts:[[3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","facet-detail"],["class","btn btn-primary",3,"disabled","click",4,"ngIf","ngIfElse"],["updateButton",""],[1,"form",3,"formGroup"],["formGroupName","facet"],["for","visibility",3,"label"],["type","checkbox","clrToggle","","formControlName","visible","id","visibility",3,"vdrDisabled"],[1,"visible-toggle"],[4,"ngIf","ngIfElse"],["private",""],[3,"entity",4,"ngIf"],[1,"form-grid"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"readonly","input"],["for","code",3,"label"],["id","code","type","text","formControlName","code",3,"readonly"],[3,"title",4,"ngIf"],["locationId","facet-detail",3,"entity$","detailForm"],[3,"title","paddingX",4,"ngIf"],[1,"btn","btn-primary",3,"disabled","click"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],[3,"entity"],[3,"title"],["entityName","Facet",3,"customFields","customFieldsFormGroup","readonly"],[3,"title","paddingX"],["vdrCardControls",""],[4,"ngIf"],["type","button","class","button m-3",3,"click",4,"vdrIfPermissions"],["type","text",1,"mr-3",3,"formControl","placeholder"],["formArrayName","values",1,"facet-values-list","table"],["class","facet-value",3,"formGroup",4,"ngFor","ngForOf"],[1,"pagination-wrapper"],[3,"itemsPerPage","itemsPerPageChange"],[3,"currentPage","itemsPerPage","totalItems","pageChange"],[1,"facet-value",3,"formGroup"],[1,"align-middle"],["type","text","formControlName","name",3,"readonly","input"],["type","text","formControlName","code"],["class","",4,"ngIf"],["type","button","vdrDropdownTrigger","",1,"icon-button"],["shape","ellipsis-vertical"],["vdrPosition","bottom-right"],["type","button","vdrDropdownItem","",1,"delete-button",3,"disabled","click"],["shape","trash",1,"is-danger"],[1,""],["entityName","FacetValue",3,"customFields","compact","customFieldsFormGroup","readonly"],["type","button",1,"button","m-3",3,"click"],["shape","add"]],template:function(n,e){if(1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.ALo(6,"async"),t.qZA()(),t.TgZ(7,"vdr-ab-right"),t._UZ(8,"vdr-action-bar-items",1),t.YNc(9,ic,3,4,"button",2),t.ALo(10,"async"),t.YNc(11,cc,1,1,"ng-template",null,3,t.W1O),t.qZA()()(),t.TgZ(13,"form",4)(14,"vdr-page-detail-layout")(15,"vdr-page-detail-sidebar",5)(16,"vdr-card")(17,"vdr-form-field",6),t.ALo(18,"translate"),t.TgZ(19,"clr-toggle-wrapper"),t._UZ(20,"input",7),t.ALo(21,"hasPermission"),t.TgZ(22,"label",8),t.YNc(23,lc,3,3,"ng-container",9),t.YNc(24,sc,2,3,"ng-template",null,10,t.W1O),t.qZA()()()(),t.TgZ(26,"vdr-card"),t.YNc(27,dc,1,1,"vdr-page-entity-info",11),t.ALo(28,"async"),t.qZA()(),t.TgZ(29,"vdr-page-block")(30,"vdr-card",5)(31,"div",12)(32,"vdr-form-field",13),t.ALo(33,"translate"),t.TgZ(34,"input",14),t.NdJ("input",function(i){return e.updateCode(null==e.entity?null:e.entity.code,i.target.value)}),t.ALo(35,"hasPermission"),t.qZA()(),t.TgZ(36,"vdr-form-field",15),t.ALo(37,"translate"),t._UZ(38,"input",16),t.ALo(39,"hasPermission"),t.qZA()()(),t.YNc(40,pc,4,8,"vdr-card",17),t._UZ(41,"vdr-custom-detail-component-host",18),t.YNc(42,xc,7,9,"vdr-card",19),t.ALo(43,"async"),t.qZA()()()),2&n){const a=t.MAs(12),i=t.MAs(25);t.xp6(3),t.Q6J("disabled",t.lcZ(4,19,e.isNew$))("availableLanguageCodes",t.lcZ(5,21,e.availableLanguages$))("currentLanguageCode",t.lcZ(6,23,e.languageCode$)),t.xp6(6),t.Q6J("ngIf",t.lcZ(10,25,e.isNew$))("ngIfElse",a),t.xp6(4),t.Q6J("formGroup",e.detailForm),t.xp6(4),t.Q6J("label",t.lcZ(18,27,"catalog.visibility")),t.xp6(3),t.Q6J("vdrDisabled",!t.lcZ(21,29,e.updatePermission)),t.xp6(3),t.Q6J("ngIf",null==e.detailForm.value.facet?null:e.detailForm.value.facet.visible)("ngIfElse",i),t.xp6(4),t.Q6J("ngIf",t.lcZ(28,31,e.entity$)),t.xp6(5),t.Q6J("label",t.lcZ(33,33,"common.name")),t.xp6(2),t.Q6J("readonly",!t.lcZ(35,35,e.updatePermission)),t.xp6(2),t.Q6J("label",t.lcZ(37,37,"common.code")),t.xp6(2),t.Q6J("readonly",!t.lcZ(39,39,e.updatePermission)),t.xp6(2),t.Q6J("ngIf",e.customFields.length),t.xp6(1),t.Q6J("entity$",e.entity$)("detailForm",e.detailForm),t.xp6(1),t.Q6J("ngIf",!t.lcZ(43,41,e.isNew$))}},dependencies:[h.qvL,h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.Fj,d.Wl,d.JJ,d.JL,d.oH,d.sg,d.u,d.x0,d.CE,A.Kk,A.BN,A.mz,Ge.w,Be.L,q.h,y.y,G.S,ht.J,vt.N,Ct.U,Tt.H,$.H,tt.W,Pe.x,ac.V,ut.y,Oe.C,E.z,At.D,Ie.T,Fe.W,nt.A,nt.D,g.Ov,be._s,x.X$,B.j],styles:[".visible-toggle[_ngcontent-%COMP%]{margin-top:-3px!important}tr.facet-value[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{vertical-align:middle}.pagination-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:space-between;padding:var(--card-padding)}"],changeDetection:0});const Fn=(0,l.wwB)({location:"facet-list",requiresPermission:o=>o.includes(l.y3$.DeleteFacet)||o.includes(l.y3$.DeleteCatalog),getItemName:o=>o.name,shouldRetryItem:(o,n)=>!!o.message,bulkDelete:(o,n,e)=>o.facet.deleteFacets(n,e).pipe((0,v.U)(a=>a.deleteFacets))}),Dn=(0,l.z1G)({location:"facet-list",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateFacet),getItemName:o=>o.name,bulkAssignToChannel:(o,n,e)=>o.facet.assignFacetsToChannel({facetIds:n,channelId:e}).pipe((0,v.U)(a=>a.assignFacetsToChannel))}),yn=(0,l.RBx)({location:"facet-list",requiresPermission:o=>o.includes(l.y3$.DeleteCatalog)||o.includes(l.y3$.DeleteFacet),getItemName:o=>o.name,bulkRemoveFromChannel:(o,n,e,a)=>o.facet.removeFacetsFromChannel({channelId:e,facetIds:n,force:a}).pipe((0,v.U)(i=>i.removeFacetsFromChannel)),isErrorResult:o=>"FacetInUseError"===o.__typename?o.message:void 0}),Ac={location:"facet-list",label:(0,u.J)("catalog.remove-from-channel"),getTranslationVars:({injector:o})=>(0,l.PDO)(o.get(l.DoR)),icon:"layers",iconClass:"is-warning",requiresPermission:o=>o.includes(l.y3$.UpdateFacet)||o.includes(l.y3$.UpdateCatalog),isVisible:({injector:o})=>(0,l._Nz)(o.get(l.DoR)),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.DoR),s=o.get(l.gqp),p=c.client.userStatus().mapSingle(({userStatus:f})=>f.activeChannelId);function _(f,T){return i.dialog({title:(0,u.J)("catalog.remove-from-channel"),translationVars:{count:n.length},size:T?"lg":"md",body:T,buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:T?(0,u.J)("common.force-remove"):(0,u.J)("common.remove"),returnValue:!0}]}).pipe((0,b.w)(Z=>Z?p.pipe((0,b.w)(O=>O?c.facet.removeFacetsFromChannel({channelId:O,facetIds:f,force:!!T}):F.E),(0,v.U)(O=>O.removeFacetsFromChannel)):F.E))}_((0,N.T)(n.map(f=>f.id))).pipe((0,b.w)(f=>{let T=n.length;const Z=[],O=[];let U=0;for(const Y of f)"FacetInUseError"===Y.__typename&&(Z.push(Y.message),O.push(n[U]?.id),T--),U++;return 0<O.length?_(O,Z.join("\n")).pipe((0,v.U)(Y=>{const M=Y.filter(et=>"FacetInUseError"===et.__typename).length;return n.length-M})):(0,L.of)(T)}),(0,b.w)(f=>f?(0,l.PDO)(c).then(({channelCode:T})=>({channelCode:T,removedCount:f})):F.E)).subscribe(({removedCount:f,channelCode:T})=>{f&&(e.refresh(),a(),s.success((0,u.J)("catalog.notify-remove-facets-from-channel-success"),{count:f,channelCode:T}))})}};var zt;const Zc=function(){return["./create"]};function Pc(o,n){1&o&&(t.TgZ(0,"a",14),t._UZ(1,"clr-icon",15),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Zc)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.create-new-facet")," "))}function Oc(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function Ic(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function Fc(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}const Dc=function(o){return["./",o]};function yc(o,n){if(1&o&&(t.TgZ(0,"a",16)(1,"span"),t._uU(2),t.qZA(),t._UZ(3,"clr-icon",17),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.VKq(2,Dc,e.id)),t.xp6(2),t.Oqu(e.name)}}function Lc(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.code," ")}}function kc(o,n){1&o&&(t.TgZ(0,"vdr-chip",20),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.private")))}function Nc(o,n){1&o&&(t.TgZ(0,"vdr-chip",21),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.public")))}function Jc(o,n){if(1&o&&(t.YNc(0,kc,3,3,"vdr-chip",18),t.YNc(1,Nc,3,3,"vdr-chip",19)),2&o){const e=n.item;t.Q6J("ngIf",e.isPrivate),t.xp6(1),t.Q6J("ngIf",!e.isPrivate)}}function Uc(o,n){if(1&o&&t._UZ(0,"vdr-facet-value-chip",26),2&o){const e=n.$implicit;t.Q6J("facetValue",e)("removable",!1)("displayFacetName",!1)}}function Mc(o,n){if(1&o&&(t.TgZ(0,"vdr-chip"),t._uU(1),t.qZA()),2&o){const e=t.oxw().item;t.xp6(1),t.hij(" ... + ",e.valueList.totalItems-e.valueList.items.length," ")}}function Rc(o,n){if(1&o&&(t.ynx(0),t._UZ(1,"clr-icon",15),t._uU(2),t.BQk()),2&o){const e=t.oxw(2).item,a=t.oxw();t.xp6(2),t.hij(" ",e.valueList.totalItems-a.initialLimit," ")}}function Ec(o,n){1&o&&t._UZ(0,"clr-icon",30)}function Vc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",27),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().item,c=t.oxw();return t.KtG(c.toggleDisplayLimit(i))}),t.YNc(1,Rc,3,1,"ng-container",28),t.YNc(2,Ec,1,0,"ng-template",null,29,t.W1O),t.qZA()}if(2&o){const e=t.MAs(3),a=t.oxw().item,i=t.oxw();t.xp6(1),t.Q6J("ngIf",(i.displayLimit[a.id]||0)<a.valueList.items.length)("ngIfElse",e)}}function Sc(o,n){if(1&o&&(t.TgZ(0,"div",22),t.YNc(1,Uc,1,3,"vdr-facet-value-chip",23),t.ALo(2,"slice"),t.YNc(3,Mc,2,1,"vdr-chip",24),t.YNc(4,Vc,4,2,"button",25),t.qZA()),2&o){const e=n.item,a=t.oxw();t.xp6(1),t.Q6J("ngForOf",t.Dn7(2,3,e.valueList.items,0,a.displayLimit[e.id]||3)),t.xp6(2),t.Q6J("ngIf",a.displayLimit[e.id]<e.valueList.totalItems&&(a.displayLimit[e.id]||0)===e.valueList.items.length),t.xp6(1),t.Q6J("ngIf",e.valueList.items.length>a.initialLimit)}}function wc(o,n){if(1&o&&t._UZ(0,"vdr-dt2-custom-field-column",31),2&o){const e=n.$implicit,a=t.oxw();t.Q6J("customField",e)("sorts",a.sorts)}}const Qc=function(){return["CreateCatalog","CreateFacet"]},qc=D.Ps`
90
90
  query GetFacetList($options: FacetListOptions, $facetValueListOptions: FacetValueListOptions) {
91
91
  facets(options: $options) {
92
92
  items {
@@ -96,14 +96,14 @@
96
96
  }
97
97
  }
98
98
  ${l.$ip}
99
- `;class Re extends l.$ms{constructor(n){super(),this.dataService=n,this.initialLimit=3,this.displayLimit={},this.customFields=this.getCustomFieldConfig("Facet"),this.filters=this.createFilterCollection().addIdFilter().addDateFilters().addFilter({name:"visibility",type:{kind:"boolean"},label:(0,u.J)("common.visibility"),toFilterInput:e=>({isPrivate:{eq:!e}})}).addCustomFieldFilters(this.customFields).connectToRoute(this.route),this.sorts=this.createSortCollection().defaultSort("createdAt","DESC").addSort({name:"id"}).addSort({name:"createdAt"}).addSort({name:"updatedAt"}).addSort({name:"name"}).addSort({name:"code"}).addCustomFieldSorts(this.customFields).connectToRoute(this.route),super.configure({document:l.JJ4,getItems:e=>e.facets,setVariables:(e,a)=>({options:{skip:e,take:a,filter:{name:{contains:this.searchTermControl.value},...this.filters.createFilterInput()},sort:this.sorts.createSortInput()},facetValueListOptions:{take:100}}),refreshListOnChanges:[this.filters.valueChanges,this.sorts.valueChanges]})}toggleDisplayLimit(n){this.displayLimit[n.id]===n.valueList.items.length?this.displayLimit[n.id]=this.initialLimit:this.displayLimit[n.id]=n.valueList.items.length}setLanguage(n){this.dataService.client.setContentLanguage(n).subscribe()}}var zt;(Wt=Re).\u0275fac=function(n){return new(n||Wt)(t.Y36(l.DoR))},Wt.\u0275cmp=t.Xpm({type:Wt,selectors:[["vdr-facet-list"]],features:[t.qOj],decls:39,vars:57,consts:[[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","facet-list"],["class","btn btn-primary",3,"routerLink",4,"vdrIfPermissions"],["id","facet-list",1,"mt-2",3,"items","itemsPerPage","totalItems","currentPage","filters","pageChange","itemsPerPageChange"],["locationId","facet-list",3,"hostComponent","selectionManager"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault","sort"],["id","created-at",3,"heading","hiddenByDefault","sort"],["id","updated-at",3,"heading","hiddenByDefault","sort"],["id","name",3,"heading","optional","sort"],["id","code",3,"heading"],["id","visibility",3,"heading"],["id","values",3,"heading"],[3,"customField","sorts",4,"ngFor","ngForOf"],[1,"btn","btn-primary",3,"routerLink"],["shape","plus"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"],["colorType","warning",4,"ngIf"],["colorType","success",4,"ngIf"],["colorType","warning"],["colorType","success"],[1,"facet-values-list"],[3,"facetValue","removable","displayFacetName",4,"ngFor","ngForOf"],[4,"ngIf"],["class","button-small",3,"click",4,"ngIf"],[3,"facetValue","removable","displayFacetName"],[1,"button-small",3,"click"],[4,"ngIf","ngIfElse"],["collapse",""],["shape","minus"],[3,"customField","sorts"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.qZA()(),t.TgZ(6,"vdr-ab-right"),t._UZ(7,"vdr-action-bar-items",1),t.YNc(8,Zc,4,5,"a",2),t.qZA()()(),t.TgZ(9,"vdr-data-table-2",3),t.NdJ("pageChange",function(i){return e.setPageNumber(i)})("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(10,"async"),t.ALo(11,"async"),t.ALo(12,"async"),t.ALo(13,"async"),t._UZ(14,"vdr-bulk-action-menu",4)(15,"vdr-dt2-search",5),t.ALo(16,"translate"),t.TgZ(17,"vdr-dt2-column",6),t.ALo(18,"translate"),t.YNc(19,Pc,1,1,"ng-template"),t.qZA(),t.TgZ(20,"vdr-dt2-column",7),t.ALo(21,"translate"),t.YNc(22,Oc,2,4,"ng-template"),t.qZA(),t.TgZ(23,"vdr-dt2-column",8),t.ALo(24,"translate"),t.YNc(25,Ic,2,4,"ng-template"),t.qZA(),t.TgZ(26,"vdr-dt2-column",9),t.ALo(27,"translate"),t.YNc(28,Dc,4,4,"ng-template"),t.qZA(),t.TgZ(29,"vdr-dt2-column",10),t.ALo(30,"translate"),t.YNc(31,yc,1,1,"ng-template"),t.qZA(),t.TgZ(32,"vdr-dt2-column",11),t.ALo(33,"translate"),t.YNc(34,kc,2,2,"ng-template"),t.qZA(),t.TgZ(35,"vdr-dt2-column",12),t.ALo(36,"translate"),t.YNc(37,Vc,5,7,"ng-template"),t.qZA(),t.YNc(38,Sc,1,2,"vdr-dt2-custom-field-column",13),t.qZA()),2&n&&(t.xp6(3),t.Q6J("availableLanguageCodes",t.lcZ(4,28,e.availableLanguages$))("currentLanguageCode",t.lcZ(5,30,e.contentLanguage$)),t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(56,wc)),t.xp6(1),t.Q6J("items",t.lcZ(10,32,e.items$))("itemsPerPage",t.lcZ(11,34,e.itemsPerPage$))("totalItems",t.lcZ(12,36,e.totalItems$))("currentPage",t.lcZ(13,38,e.currentPage$))("filters",e.filters),t.xp6(5),t.Q6J("hostComponent",e)("selectionManager",e.selectionManager),t.xp6(1),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(16,40,"catalog.filter-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(18,42,"common.id"))("hiddenByDefault",!0)("sort",e.sorts.get("id")),t.xp6(3),t.Q6J("heading",t.lcZ(21,44,"common.created-at"))("hiddenByDefault",!0)("sort",e.sorts.get("createdAt")),t.xp6(3),t.Q6J("heading",t.lcZ(24,46,"common.updated-at"))("hiddenByDefault",!0)("sort",e.sorts.get("updatedAt")),t.xp6(3),t.Q6J("heading",t.lcZ(27,48,"common.name"))("optional",!1)("sort",e.sorts.get("name")),t.xp6(3),t.Q6J("heading",t.lcZ(30,50,"common.code")),t.xp6(3),t.Q6J("heading",t.lcZ(33,52,"common.visibility")),t.xp6(3),t.Q6J("heading",t.lcZ(36,54,"catalog.values")),t.xp6(3),t.Q6J("ngForOf",e.customFields))},dependencies:[h.qvL,g.sg,g.O5,P.rH,A.Kk,A.BN,A.mz,H.Y,Ae.q,G.S,$.H,tt.W,Le.c,mt.e,z.U,at.J,Ne.j,E.z,g.Ov,g.OU,x.X$,ot.H],styles:[".facet-values-list[_ngcontent-%COMP%]{max-width:500px;display:flex;flex-wrap:wrap;align-items:center;gap:4px}"]});const qc=["optionGroupName"];function $c(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",4)(1,"div",5)(2,"label"),t._uU(3),t.ALo(4,"translate"),t.qZA(),t.TgZ(5,"input",6,7),t.NdJ("ngModelChange",function(i){const s=t.CHM(e).$implicit;return t.KtG(s.name=i)})("keydown.enter",function(i){t.CHM(e);const c=t.MAs(12),s=t.oxw();return t.KtG(s.handleEnter(i,c))}),t.qZA()(),t.TgZ(7,"div",8)(8,"label"),t._uU(9),t.ALo(10,"translate"),t.qZA(),t.TgZ(11,"vdr-option-value-input",9,10),t.NdJ("ngModelChange",function(i){const s=t.CHM(e).$implicit;return t.KtG(s.values=i)})("ngModelChange",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.generateVariants())})("edit",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.generateVariants())}),t.qZA()(),t.TgZ(13,"div",11)(14,"button",12),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.removeOption(c.name))}),t.ALo(15,"translate"),t._UZ(16,"clr-icon",13),t.qZA()()()}if(2&o){const e=n.$implicit;t.xp6(3),t.Oqu(t.lcZ(4,7,"catalog.option")),t.xp6(2),t.Q6J("ngModel",e.name),t.xp6(4),t.Oqu(t.lcZ(10,9,"catalog.option-values")),t.xp6(2),t.Q6J("ngModel",e.values)("groupName",e.name)("disabled",""===e.name),t.xp6(3),t.Q6J("title",t.lcZ(15,11,"catalog.remove-option"))}}function Yc(o,n){1&o&&(t.TgZ(0,"clr-alert",18)(1,"clr-alert-item")(2,"span",19),t._uU(3),t.ALo(4,"translate"),t.qZA()()()),2&o&&(t.Q6J("clrAlertClosable",!1),t.xp6(3),t.hij(" ",t.lcZ(4,2,"catalog.no-stock-locations-available-on-current-channel")," "))}function Gc(o,n){if(1&o&&(t.TgZ(0,"option",23),t._uU(1),t.qZA()),2&o){const e=n.$implicit;t.Q6J("value",e.id),t.xp6(1),t.hij(" ",e.name," ")}}function Bc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-form-field",20),t.ALo(1,"translate"),t.TgZ(2,"select",21),t.NdJ("ngModelChange",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.selectedStockLocationId=i)}),t.YNc(3,Gc,2,2,"option",22),t.qZA()()}if(2&o){const e=t.oxw().ngIf,a=t.oxw();t.Q6J("label",t.lcZ(1,3,"catalog.add-stock-to-location")),t.xp6(2),t.Q6J("ngModel",a.selectedStockLocationId),t.xp6(1),t.Q6J("ngForOf",e)}}function jc(o,n){1&o&&(t.TgZ(0,"th"),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.create")))}function Kc(o,n){1&o&&(t.TgZ(0,"th"),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.variant")))}function Hc(o,n){1&o&&(t.TgZ(0,"td"),t._UZ(1,"input",31),t.qZA())}function Wc(o,n){if(1&o&&(t.TgZ(0,"td"),t._uU(1),t.qZA()),2&o){const e=t.oxw().$implicit;t.xp6(1),t.hij(" ",e.values.join(" ")," ")}}function zc(o,n){if(1&o&&(t.TgZ(0,"tr",27),t.YNc(1,Hc,2,0,"td",3),t.YNc(2,Wc,2,1,"td",3),t.TgZ(3,"td")(4,"vdr-form-field"),t._UZ(5,"input",28),t.ALo(6,"translate"),t.qZA()(),t.TgZ(7,"td")(8,"vdr-form-field"),t._UZ(9,"vdr-currency-input",29),t.qZA()(),t.TgZ(10,"td")(11,"vdr-form-field"),t._UZ(12,"input",30),t.qZA()()()),2&o){const e=n.$implicit,a=t.oxw(3);t.ekj("disabled",!!a.variantFormValues[e.id].value.enabled),t.Q6J("formGroup",a.variantFormValues[e.id]),t.xp6(1),t.Q6J("ngIf",1<a.variants.length),t.xp6(1),t.Q6J("ngIf",1<a.variants.length),t.xp6(3),t.Q6J("placeholder",t.lcZ(6,7,"catalog.sku")),t.xp6(4),t.Q6J("currencyCode",a.currencyCode)}}function Xc(o,n){if(1&o&&(t.TgZ(0,"div",24)(1,"table",25)(2,"thead")(3,"tr"),t.YNc(4,jc,3,3,"th",3),t.YNc(5,Kc,3,3,"th",3),t.TgZ(6,"th"),t._uU(7),t.ALo(8,"translate"),t.qZA(),t.TgZ(9,"th"),t._uU(10),t.ALo(11,"translate"),t.qZA(),t.TgZ(12,"th"),t._uU(13),t.ALo(14,"translate"),t.qZA()()(),t.YNc(15,zc,13,9,"tr",26),t.qZA()()),2&o){const e=t.oxw(2);t.xp6(4),t.Q6J("ngIf",1<e.variants.length),t.xp6(1),t.Q6J("ngIf",1<e.variants.length),t.xp6(2),t.Oqu(t.lcZ(8,7,"catalog.sku")),t.xp6(3),t.Oqu(t.lcZ(11,9,"catalog.price")),t.xp6(3),t.Oqu(t.lcZ(14,11,"catalog.stock-on-hand")),t.xp6(2),t.Q6J("ngForOf",e.variants)("ngForTrackBy",e.trackByFn)}}function tl(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Yc,5,4,"clr-alert",14),t.TgZ(2,"div",15),t.YNc(3,Bc,4,5,"vdr-form-field",16),t.qZA(),t.YNc(4,Xc,16,13,"div",17),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",0===e.length),t.xp6(2),t.Q6J("ngIf",e.length),t.xp6(1),t.Q6J("ngIf",0<e.length)}}const ze="__DEFAULT_VARIANT__";class Ee{constructor(n,e){this.dataService=n,this.formBuilder=e,this.variantsChange=new t.vpe,this.optionGroups=[],this.variantFormValues={},this.selectedStockLocationId=null}ngOnInit(){this.dataService.settings.getActiveChannel().single$.subscribe(n=>{this.currencyCode=n.activeChannel.defaultCurrencyCode}),this.stockLocations$=this.dataService.query(l.uQH,{options:{take:999}}).refetchOnChannelChange().mapStream(({stockLocations:n})=>n.items).pipe((0,w.b)(n=>{n.length&&(this.selectedStockLocationId=n[0].id)})),this.generateVariants()}addOption(){this.optionGroups.push({name:"",values:[]});const n=this.optionGroups.length-1;setTimeout(()=>{this.groupNameInputs.get(n)?.nativeElement?.focus()})}removeOption(n){this.optionGroups=this.optionGroups.filter(e=>e.name!==n),this.generateVariants()}generateVariants(){const e=this.optionGroups.reduce((a,i)=>a+i.values.length,0)?this.optionGroups.map(a=>a.values.map(i=>i.name)):[[ze]];this.variants=(0,st.generateAllCombinations)(e).map(a=>({id:a.join("|"),values:a})),this.variants.forEach((a,i)=>{if(!this.variantFormValues[a.id]){const c=this.formBuilder.nonNullable.group({optionValues:[a.values],enabled:!0,price:this.copyFromDefault(a.id,"price",0),sku:this.copyFromDefault(a.id,"sku",""),stock:this.copyFromDefault(a.id,"stock",0)});c.valueChanges.subscribe(()=>this.onFormChange()),0===i&&(c.get("price")?.valueChanges.subscribe(s=>{this.copyValuesToPristine("price",c.get("price"))}),c.get("sku")?.valueChanges.subscribe(s=>{this.copyValuesToPristine("sku",c.get("sku"))}),c.get("stock")?.valueChanges.subscribe(s=>{this.copyValuesToPristine("stock",c.get("stock"))})),this.variantFormValues[a.id]=c}})}trackByFn(n,e){return e.values.join("|")}handleEnter(n,e){n.preventDefault(),n.stopPropagation(),e.focus()}copyValuesToPristine(n,e){e&&Object.values(this.variantFormValues).forEach(a=>{const i=a.get(n);i&&i.pristine&&i.setValue(e.value,{emitEvent:!1})})}onFormChange(){const n=this.variants.map(e=>this.variantFormValues[e.id].value).filter(e=>e.enabled);this.variantsChange.emit({groups:this.optionGroups.map(e=>({name:e.name,values:e.values.map(a=>a.name)})),variants:n,stockLocationId:this.selectedStockLocationId})}copyFromDefault(n,e,a){return n!==ze?this.variantFormValues[ze].get(e)?.value:a}}(zt=Ee).\u0275fac=function(n){return new(n||zt)(t.Y36(l.DoR),t.Y36(d.qu))},zt.\u0275cmp=t.Xpm({type:zt,selectors:[["vdr-generate-product-variants"]],viewQuery:function(n,e){if(1&n&&t.Gf(qc,5,t.SBq),2&n){let a;t.iGM(a=t.CRH())&&(e.groupNameInputs=a)}},outputs:{variantsChange:"variantsChange"},decls:7,vars:7,consts:[["class","option-groups",4,"ngFor","ngForOf"],[1,"button","mb-2",3,"click"],["shape","plus"],[4,"ngIf"],[1,"option-groups"],[1,"name"],["placeholder","e.g. Size","clrInput","","name","name","required","",3,"ngModel","ngModelChange","keydown.enter"],["optionGroupName",""],[1,"values"],[3,"ngModel","groupName","disabled","ngModelChange","edit"],["optionValueInputComponent",""],[1,"remove-group"],[1,"button-small","mt-2",3,"title","click"],["shape","trash"],["clrAlertType","warning","class","",3,"clrAlertClosable",4,"ngIf"],[1,"form-grid","mb-2"],[3,"label",4,"ngIf"],["class","variants-preview",4,"ngIf"],["clrAlertType","warning",1,"",3,"clrAlertClosable"],[1,"alert-text"],[3,"label"],[3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"variants-preview"],[1,"table"],[3,"disabled","formGroup",4,"ngFor","ngForOf","ngForTrackBy"],[3,"formGroup"],["type","text","formControlName","sku",3,"placeholder"],["formControlName","price",3,"currencyCode"],["type","number","formControlName","stock","min","0","step","1"],["type","checkbox","formControlName","enabled","clrCheckbox",""]],template:function(n,e){1&n&&(t.YNc(0,$c,17,13,"div",0),t.TgZ(1,"button",1),t.NdJ("click",function(){return e.addOption()}),t._UZ(2,"clr-icon",2),t._uU(3),t.ALo(4,"translate"),t.qZA(),t.YNc(5,tl,5,3,"ng-container",3),t.ALo(6,"async")),2&n&&(t.Q6J("ngForOf",e.optionGroups),t.xp6(3),t.hij(" ",t.lcZ(4,3,"catalog.add-option"),"\n"),t.xp6(2),t.Q6J("ngIf",t.lcZ(6,5,e.stockLocations$)))},dependencies:[h.TIm,h.CyW,h.I9z,h.q0d,h.qvL,h.MgK,h.KKC,h.xRP,g.sg,g.O5,d.YN,d.Kr,d.Fj,d.wV,d.Wl,d.EJ,d.JJ,d.JL,d.Q7,d.qQ,d.On,d.sg,d.u,ge.K,q.h,y.y,gt,g.Ov,x.X$],styles:["[_nghost-%COMP%]{display:block;margin-bottom:120px}.option-groups[_ngcontent-%COMP%]{display:flex}.values[_ngcontent-%COMP%]{flex:1;margin:0 6px}.remove-group[_ngcontent-%COMP%]{padding-top:18px}.variants-preview[_ngcontent-%COMP%] tr.disabled[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{background-color:var(--color-component-bg-100);color:var(--color-grey-400)}"]});var Xt,el=m(12058),Ln=m(17625),Nn=m(16010),nl=m(92992),ol=m(71452),al=m(53123);function il(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-page-block")(1,"vdr-language-selector",15),t.NdJ("languageCodeChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.setLanguage(i))}),t.ALo(2,"async"),t.ALo(3,"async"),t.qZA()()}if(2&o){const e=t.oxw();t.xp6(1),t.Q6J("availableLanguageCodes",t.lcZ(2,2,e.availableLanguages$))("currentLanguageCode",t.lcZ(3,4,e.contentLanguage$))}}function rl(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function cl(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function ll(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}function sl(o,n){if(1&o&&(t._UZ(0,"img",19),t.ALo(1,"assetPreview")),2&o){const e=n.ngIf;t.Q6J("src",t.xi3(1,1,e,"tiny"),t.LSH)}}function dl(o,n){1&o&&(t.TgZ(0,"div",20),t._UZ(1,"clr-icon",21),t.qZA())}function pl(o,n){if(1&o&&(t.TgZ(0,"div",16),t.YNc(1,sl,2,4,"img",17),t.YNc(2,dl,2,0,"ng-template",null,18,t.W1O),t.qZA()),2&o){const e=n.item,a=t.MAs(3);t.xp6(1),t.Q6J("ngIf",e.featuredAsset)("ngIfElse",a)}}const ul=function(o,n){return["/catalog/products",o,"variants",n]};function ml(o,n){if(1&o&&(t.TgZ(0,"a",22)(1,"span"),t._uU(2),t.qZA(),t._UZ(3,"clr-icon",23),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.WLB(2,ul,e.productId,e.id)),t.xp6(2),t.Oqu(e.name)}}function _l(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.sku," ")}}function gl(o,n){1&o&&(t.TgZ(0,"vdr-chip",26),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.enabled")))}function fl(o,n){1&o&&(t.TgZ(0,"vdr-chip",27),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.disabled")))}function hl(o,n){if(1&o&&(t.YNc(0,gl,3,3,"vdr-chip",24),t.YNc(1,fl,3,3,"vdr-chip",25)),2&o){const e=n.item;t.Q6J("ngIf",e.enabled),t.xp6(1),t.Q6J("ngIf",!e.enabled)}}function vl(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.price,e.currencyCode)," ")}}function Cl(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.priceWithTax,e.currencyCode)," ")}}function Tl(o,n){if(1&o&&(t.TgZ(0,"span",32),t._uU(1),t.qZA()),2&o){const e=t.oxw().$implicit;t.xp6(1),t.hij("(",e.stockAllocated," allocated)")}}function bl(o,n){if(1&o&&(t.TgZ(0,"vdr-chip",29)(1,"div",30)(2,"div"),t._uU(3),t.YNc(4,Tl,2,1,"span",31),t.qZA()()()),2&o){const e=n.$implicit;t.Q6J("title",null==e.stockLocation?null:e.stockLocation.name),t.xp6(3),t.hij(" ",e.stockOnHand,""),t.xp6(1),t.Q6J("ngIf",e.stockAllocated)}}function xl(o,n){if(1&o&&t.YNc(0,bl,5,3,"vdr-chip",28),2&o){const e=n.item;t.Q6J("ngForOf",e.stockLevels)}}function Al(o,n){if(1&o&&t._UZ(0,"vdr-dt2-custom-field-column",33),2&o){const e=n.$implicit,a=t.oxw();t.Q6J("customField",e)("sorts",a.sorts)}}class te extends l.$ms{constructor(){super(),this.hideLanguageSelect=!1,this.customFields=this.getCustomFieldConfig("ProductVariant"),this.filters=this.createFilterCollection().addIdFilter().addDateFilters().addFilters([{name:"name",type:{kind:"text"},label:(0,u.J)("common.name"),filterField:"name"},{name:"enabled",type:{kind:"boolean"},label:(0,u.J)("common.enabled"),filterField:"enabled"},{name:"sku",type:{kind:"text"},label:(0,u.J)("catalog.sku"),filterField:"sku"},{name:"price",type:{kind:"number",inputType:"currency"},label:(0,u.J)("common.price"),filterField:"price"},{name:"priceWithTax",type:{kind:"number",inputType:"currency"},label:(0,u.J)("common.price-with-tax"),filterField:"priceWithTax"}]).addCustomFieldFilters(this.customFields).connectToRoute(this.route),this.sorts=this.createSortCollection().addSorts([{name:"id"},{name:"createdAt"},{name:"updatedAt"},{name:"name"},{name:"sku"},{name:"price"},{name:"priceWithTax"}]).addCustomFieldSorts(this.customFields).connectToRoute(this.route),this.configure({document:l.NKc,getItems:n=>n.productVariants,setVariables:(n,e)=>{const a=this.searchTermControl.value,i={_and:[]},c=this.filters.createFilterInput();return Object.keys(c).length&&i._and?.push(c),a&&i._and?.push({_or:[{name:{contains:a}},{sku:{contains:a}}]}),this.productId&&i._and?.push({productId:{eq:this.productId}}),{options:{skip:n,take:e,filter:i,sort:this.sorts.createSortInput()}}},refreshListOnChanges:[this.sorts.valueChanges,this.filters.valueChanges]})}}(Xt=te).\u0275fac=function(n){return new(n||Xt)},Xt.\u0275cmp=t.Xpm({type:Xt,selectors:[["vdr-product-variant-list"]],inputs:{productId:"productId",hideLanguageSelect:"hideLanguageSelect",dataTableId:"dataTableId"},features:[t.qOj],decls:40,vars:65,consts:[[4,"ngIf"],[1,"mt-2",3,"id","items","itemsPerPage","totalItems","currentPage","filters","pageChange","itemsPerPageChange"],["locationId","product-variant-list",3,"hostComponent","selectionManager"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault","sort"],["id","created-at",3,"heading","hiddenByDefault","sort"],["id","updated-at",3,"heading","hiddenByDefault","sort"],["id","image",3,"heading"],["id","name",3,"heading","optional","sort"],["id","sku",3,"heading","sort"],["id","enabled",3,"heading"],["id","price",3,"heading","hiddenByDefault","sort"],["id","price-with-tax",3,"heading","sort"],["id","stock-on-hand",3,"heading","hiddenByDefault"],[3,"customField","sorts",4,"ngFor","ngForOf"],[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],[1,"image-placeholder"],[3,"src",4,"ngIf","ngIfElse"],["imagePlaceholder",""],[3,"src"],[1,"placeholder"],["shape","image","size","48"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"],["colorType","success",4,"ngIf"],["colorType","warning",4,"ngIf"],["colorType","success"],["colorType","warning"],[3,"title",4,"ngFor","ngForOf"],[3,"title"],[1,"flex","center"],["class","ml-1",4,"ngIf"],[1,"ml-1"],[3,"customField","sorts"]],template:function(n,e){1&n&&(t.YNc(0,il,4,6,"vdr-page-block",0),t.TgZ(1,"vdr-data-table-2",1),t.NdJ("pageChange",function(i){return e.setPageNumber(i)})("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(2,"async"),t.ALo(3,"async"),t.ALo(4,"async"),t.ALo(5,"async"),t._UZ(6,"vdr-bulk-action-menu",2)(7,"vdr-dt2-search",3),t.ALo(8,"translate"),t.TgZ(9,"vdr-dt2-column",4),t.ALo(10,"translate"),t.YNc(11,rl,1,1,"ng-template"),t.qZA(),t.TgZ(12,"vdr-dt2-column",5),t.ALo(13,"translate"),t.YNc(14,cl,2,4,"ng-template"),t.qZA(),t.TgZ(15,"vdr-dt2-column",6),t.ALo(16,"translate"),t.YNc(17,ll,2,4,"ng-template"),t.qZA(),t.TgZ(18,"vdr-dt2-column",7),t.ALo(19,"translate"),t.YNc(20,pl,4,2,"ng-template"),t.qZA(),t.TgZ(21,"vdr-dt2-column",8),t.ALo(22,"translate"),t.YNc(23,ml,4,5,"ng-template"),t.qZA(),t.TgZ(24,"vdr-dt2-column",9),t.ALo(25,"translate"),t.YNc(26,_l,1,1,"ng-template"),t.qZA(),t.TgZ(27,"vdr-dt2-column",10),t.ALo(28,"translate"),t.YNc(29,hl,2,2,"ng-template"),t.qZA(),t.TgZ(30,"vdr-dt2-column",11),t.ALo(31,"translate"),t.YNc(32,vl,2,4,"ng-template"),t.qZA(),t.TgZ(33,"vdr-dt2-column",12),t.ALo(34,"translate"),t.YNc(35,Cl,2,4,"ng-template"),t.qZA(),t.TgZ(36,"vdr-dt2-column",13),t.ALo(37,"translate"),t.YNc(38,xl,1,1,"ng-template"),t.qZA(),t.YNc(39,Al,1,2,"vdr-dt2-custom-field-column",14),t.qZA()),2&n&&(t.Q6J("ngIf",!e.hideLanguageSelect),t.xp6(1),t.Q6J("id",e.dataTableId||"product-variant-list")("items",t.lcZ(2,35,e.items$))("itemsPerPage",t.lcZ(3,37,e.itemsPerPage$))("totalItems",t.lcZ(4,39,e.totalItems$))("currentPage",t.lcZ(5,41,e.currentPage$))("filters",e.filters),t.xp6(5),t.Q6J("hostComponent",e)("selectionManager",e.selectionManager),t.xp6(1),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(8,43,"settings.search-by-product-name-or-sku")),t.xp6(2),t.Q6J("heading",t.lcZ(10,45,"common.id"))("hiddenByDefault",!0)("sort",e.sorts.get("id")),t.xp6(3),t.Q6J("heading",t.lcZ(13,47,"common.created-at"))("hiddenByDefault",!0)("sort",e.sorts.get("createdAt")),t.xp6(3),t.Q6J("heading",t.lcZ(16,49,"common.updated-at"))("hiddenByDefault",!0)("sort",e.sorts.get("updatedAt")),t.xp6(3),t.Q6J("heading",t.lcZ(19,51,"common.image")),t.xp6(3),t.Q6J("heading",t.lcZ(22,53,"catalog.name"))("optional",!1)("sort",e.sorts.get("name")),t.xp6(3),t.Q6J("heading",t.lcZ(25,55,"catalog.sku"))("sort",e.sorts.get("sku")),t.xp6(3),t.Q6J("heading",t.lcZ(28,57,"common.enabled")),t.xp6(3),t.Q6J("heading",t.lcZ(31,59,"common.price"))("hiddenByDefault",!0)("sort",e.sorts.get("price")),t.xp6(3),t.Q6J("heading",t.lcZ(34,61,"common.price-with-tax"))("sort",e.sorts.get("priceWithTax")),t.xp6(3),t.Q6J("heading",t.lcZ(37,63,"catalog.stock-on-hand"))("hiddenByDefault",!1),t.xp6(3),t.Q6J("ngForOf",e.customFields))},dependencies:[h.qvL,g.sg,g.O5,P.rH,H.Y,G.S,Le.c,mt.e,z.U,at.J,Ne.j,E.z,g.Ov,x.X$,xe.M,ot.H,he.k],styles:[".image-col[_ngcontent-%COMP%]{width:70px}.image-placeholder[_ngcontent-%COMP%]{width:50px;height:50px;margin-top:calc(var(--space-unit) * -1);margin-bottom:calc(var(--space-unit) * -1);background-color:var(--color-component-bg-200)}.image-placeholder[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{border-radius:var(--border-radius-img)}.image-placeholder[_ngcontent-%COMP%] .placeholder[_ngcontent-%COMP%]{text-align:center;color:var(--color-grey-300)}.search-form[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%}vdr-product-search-input[_ngcontent-%COMP%]{min-width:300px}@media screen and (max-width: 768px){vdr-product-search-input[_ngcontent-%COMP%]{min-width:100px}}.search-settings-menu[_ngcontent-%COMP%]{margin:0 12px}td.disabled[_ngcontent-%COMP%]{background-color:var(--color-component-bg-200)}.search-index-button[_ngcontent-%COMP%]{position:relative}.search-index-button[_ngcontent-%COMP%] vdr-status-badge[_ngcontent-%COMP%]{right:0;top:0}.run-updates-button[_ngcontent-%COMP%]{position:relative}.run-updates-button[_ngcontent-%COMP%] vdr-status-badge[_ngcontent-%COMP%]{left:10px;top:10px}.edit-button[_ngcontent-%COMP%]{margin-inline-end:24px}.sku[_ngcontent-%COMP%]{color:var(--color-text-300)}"]});var ee,Xe=m(93899);function Zl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",28),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.create())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine||0===e.createVariantsConfig.variants.length),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.create")," ")}}function Pl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",28),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("disabled",(e.detailForm.invalid||e.detailForm.pristine)&&!e.assetsChanged()),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}function Ol(o,n){if(1&o&&t.YNc(0,Pl,3,4,"button",29),2&o){const e=t.oxw();t.Q6J("vdrIfPermissions",e.updatePermissions)}}const Il=function(){return["enabled"]};function Fl(o,n){if(1&o&&(t.TgZ(0,"clr-toggle-wrapper"),t._UZ(1,"input",30),t.TgZ(2,"label"),t._uU(3),t.ALo(4,"translate"),t.qZA()()),2&o){const e=t.oxw();t.xp6(1),t.Q6J("formControl",e.detailForm.get(t.DdM(4,Il))),t.xp6(2),t.Oqu(t.lcZ(4,2,"common.enabled"))}}function Dl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-chip",39),t.NdJ("iconClick",function(){t.CHM(e);const i=t.oxw().$implicit,c=t.oxw(4);return t.KtG(c.removeFromChannel(i.id))}),t._UZ(1,"vdr-channel-badge",40),t._uU(2),t.ALo(3,"channelCodeToLabel"),t.qZA()}if(2&o){const e=t.oxw().$implicit;t.xp6(1),t.Q6J("channelCode",e.code),t.xp6(1),t.hij(" ",t.lcZ(3,2,e.code)," ")}}function yl(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Dl,4,4,"vdr-chip",38),t.BQk()),2&o){const e=n.$implicit,a=t.oxw(4);t.xp6(1),t.Q6J("ngIf",!a.isDefaultChannel(e.code))}}function Ll(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-form-item")(1,"div",33)(2,"div",34),t.YNc(3,yl,2,1,"ng-container",35),t.ALo(4,"async"),t.qZA(),t.TgZ(5,"button",36),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(3);return t.KtG(i.assignToChannel())}),t._UZ(6,"clr-icon",37),t._uU(7),t.ALo(8,"translate"),t.qZA()()()}if(2&o){const e=t.oxw(3);t.xp6(3),t.Q6J("ngForOf",t.lcZ(4,2,e.productChannels$)),t.xp6(4),t.hij(" ",t.lcZ(8,4,"catalog.assign-to-channel")," ")}}function Nl(o,n){1&o&&(t.TgZ(0,"vdr-card",10),t.ALo(1,"translate"),t.YNc(2,Ll,9,6,"vdr-form-item",32),t.qZA()),2&o&&t.Q6J("title",t.lcZ(1,1,"common.channels"))}function kl(o,n){1&o&&(t.ynx(0),t.YNc(1,Nl,3,3,"vdr-card",31),t.BQk())}function Jl(o,n){if(1&o&&(t.TgZ(0,"vdr-chip",44),t._uU(1),t.qZA()),2&o){const e=n.$implicit;t.Q6J("colorFrom",e.code)("invert",!0),t.xp6(1),t.hij(" ",e.name," ")}}const Ul=function(){return["options"]};function Ml(o,n){1&o&&(t.TgZ(0,"a",45),t._UZ(1,"clr-icon",46),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Ul)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.edit-options")," "))}function Rl(o,n){if(1&o&&(t.TgZ(0,"vdr-card",10),t.ALo(1,"translate"),t.TgZ(2,"div",41),t.YNc(3,Jl,2,3,"vdr-chip",42),t.ALo(4,"sort"),t.qZA(),t.TgZ(5,"div"),t.YNc(6,Ml,4,5,"a",43),t.qZA()()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,3,"catalog.product-options")),t.xp6(3),t.Q6J("ngForOf",t.xi3(4,5,null==e.entity?null:e.entity.optionGroups,"id")),t.xp6(3),t.Q6J("vdrIfPermissions",e.updatePermissions)}}function El(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-facet-value-chip",47),t.NdJ("remove",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.removeProductFacetValue(c.id))}),t.ALo(1,"hasPermission"),t.qZA()}if(2&o){const e=n.$implicit,a=t.oxw();t.Q6J("facetValue",e)("removable",t.lcZ(1,2,a.updatePermissions))}}function Vl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",48),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.selectProductFacetValue())}),t._UZ(1,"clr-icon",49),t._uU(2),t.ALo(3,"translate"),t.qZA()}2&o&&(t.xp6(2),t.hij(" ",t.lcZ(3,1,"catalog.add-facets")," "))}function Sl(o,n){if(1&o&&(t.TgZ(0,"vdr-card"),t._UZ(1,"vdr-page-entity-info",50),t.qZA()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("entity",e)}}function wl(o,n){1&o&&(t.TgZ(0,"div")(1,"clr-checkbox-wrapper"),t._UZ(2,"input",51),t.TgZ(3,"label"),t._uU(4),t.ALo(5,"translate"),t.qZA()()()),2&o&&(t.xp6(4),t.Oqu(t.lcZ(5,1,"catalog.auto-update-product-variant-name")))}function Ql(o,n){if(1&o&&(t.TgZ(0,"vdr-card",10),t.ALo(1,"translate"),t._UZ(2,"vdr-tabbed-custom-fields",52),t.ALo(3,"hasPermission"),t.qZA()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.detailForm.get("customFields"))("readonly",!t.lcZ(3,6,e.updatePermissions))}}function ql(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div")(1,"vdr-generate-product-variants",53),t.NdJ("variantsChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.createVariantsConfig=i)}),t.qZA()()}}function $l(o,n){if(1&o&&t._UZ(0,"vdr-product-variant-list",54),2&o){const e=t.oxw();t.Q6J("productId",e.id)("hideLanguageSelect",!0)}}const Yl=function(){return["manage-variants"]};function Gl(o,n){1&o&&(t.TgZ(0,"div",55)(1,"a",56),t._UZ(2,"clr-icon",57),t._uU(3),t.ALo(4,"translate"),t.qZA()()),2&o&&(t.xp6(1),t.Q6J("routerLink",t.DdM(4,Yl)),t.xp6(2),t.hij(" ",t.lcZ(4,2,"catalog.manage-variants"),""))}const Bl=function(){return["name"]},kn=function(o){return{pattern:o}},jl=D.Ps`
99
+ `;class Re extends l.$ms{constructor(n){super(),this.dataService=n,this.initialLimit=3,this.displayLimit={},this.customFields=this.getCustomFieldConfig("Facet"),this.filters=this.createFilterCollection().addIdFilter().addDateFilters().addFilter({name:"visibility",type:{kind:"boolean"},label:(0,u.J)("common.visibility"),toFilterInput:e=>({isPrivate:{eq:!e}})}).addCustomFieldFilters(this.customFields).connectToRoute(this.route),this.sorts=this.createSortCollection().defaultSort("createdAt","DESC").addSort({name:"id"}).addSort({name:"createdAt"}).addSort({name:"updatedAt"}).addSort({name:"name"}).addSort({name:"code"}).addCustomFieldSorts(this.customFields).connectToRoute(this.route),super.configure({document:l.JJ4,getItems:e=>e.facets,setVariables:(e,a)=>({options:{skip:e,take:a,filter:{name:{contains:this.searchTermControl.value},...this.filters.createFilterInput()},sort:this.sorts.createSortInput()},facetValueListOptions:{take:100}}),refreshListOnChanges:[this.filters.valueChanges,this.sorts.valueChanges]})}toggleDisplayLimit(n){this.displayLimit[n.id]===n.valueList.items.length?this.displayLimit[n.id]=this.initialLimit:this.displayLimit[n.id]=n.valueList.items.length}setLanguage(n){this.dataService.client.setContentLanguage(n).subscribe()}}var Xt;(zt=Re).\u0275fac=function(n){return new(n||zt)(t.Y36(l.DoR))},zt.\u0275cmp=t.Xpm({type:zt,selectors:[["vdr-facet-list"]],features:[t.qOj],decls:39,vars:57,consts:[[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","facet-list"],["class","btn btn-primary",3,"routerLink",4,"vdrIfPermissions"],["id","facet-list",1,"mt-2",3,"items","itemsPerPage","totalItems","currentPage","filters","pageChange","itemsPerPageChange"],["locationId","facet-list",3,"hostComponent","selectionManager"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault","sort"],["id","created-at",3,"heading","hiddenByDefault","sort"],["id","updated-at",3,"heading","hiddenByDefault","sort"],["id","name",3,"heading","optional","sort"],["id","code",3,"heading"],["id","visibility",3,"heading"],["id","values",3,"heading"],[3,"customField","sorts",4,"ngFor","ngForOf"],[1,"btn","btn-primary",3,"routerLink"],["shape","plus"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"],["colorType","warning",4,"ngIf"],["colorType","success",4,"ngIf"],["colorType","warning"],["colorType","success"],[1,"facet-values-list"],[3,"facetValue","removable","displayFacetName",4,"ngFor","ngForOf"],[4,"ngIf"],["class","button-small",3,"click",4,"ngIf"],[3,"facetValue","removable","displayFacetName"],[1,"button-small",3,"click"],[4,"ngIf","ngIfElse"],["collapse",""],["shape","minus"],[3,"customField","sorts"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.qZA()(),t.TgZ(6,"vdr-ab-right"),t._UZ(7,"vdr-action-bar-items",1),t.YNc(8,Pc,4,5,"a",2),t.qZA()()(),t.TgZ(9,"vdr-data-table-2",3),t.NdJ("pageChange",function(i){return e.setPageNumber(i)})("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(10,"async"),t.ALo(11,"async"),t.ALo(12,"async"),t.ALo(13,"async"),t._UZ(14,"vdr-bulk-action-menu",4)(15,"vdr-dt2-search",5),t.ALo(16,"translate"),t.TgZ(17,"vdr-dt2-column",6),t.ALo(18,"translate"),t.YNc(19,Oc,1,1,"ng-template"),t.qZA(),t.TgZ(20,"vdr-dt2-column",7),t.ALo(21,"translate"),t.YNc(22,Ic,2,4,"ng-template"),t.qZA(),t.TgZ(23,"vdr-dt2-column",8),t.ALo(24,"translate"),t.YNc(25,Fc,2,4,"ng-template"),t.qZA(),t.TgZ(26,"vdr-dt2-column",9),t.ALo(27,"translate"),t.YNc(28,yc,4,4,"ng-template"),t.qZA(),t.TgZ(29,"vdr-dt2-column",10),t.ALo(30,"translate"),t.YNc(31,Lc,1,1,"ng-template"),t.qZA(),t.TgZ(32,"vdr-dt2-column",11),t.ALo(33,"translate"),t.YNc(34,Jc,2,2,"ng-template"),t.qZA(),t.TgZ(35,"vdr-dt2-column",12),t.ALo(36,"translate"),t.YNc(37,Sc,5,7,"ng-template"),t.qZA(),t.YNc(38,wc,1,2,"vdr-dt2-custom-field-column",13),t.qZA()),2&n&&(t.xp6(3),t.Q6J("availableLanguageCodes",t.lcZ(4,28,e.availableLanguages$))("currentLanguageCode",t.lcZ(5,30,e.contentLanguage$)),t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(56,Qc)),t.xp6(1),t.Q6J("items",t.lcZ(10,32,e.items$))("itemsPerPage",t.lcZ(11,34,e.itemsPerPage$))("totalItems",t.lcZ(12,36,e.totalItems$))("currentPage",t.lcZ(13,38,e.currentPage$))("filters",e.filters),t.xp6(5),t.Q6J("hostComponent",e)("selectionManager",e.selectionManager),t.xp6(1),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(16,40,"catalog.filter-by-name")),t.xp6(2),t.Q6J("heading",t.lcZ(18,42,"common.id"))("hiddenByDefault",!0)("sort",e.sorts.get("id")),t.xp6(3),t.Q6J("heading",t.lcZ(21,44,"common.created-at"))("hiddenByDefault",!0)("sort",e.sorts.get("createdAt")),t.xp6(3),t.Q6J("heading",t.lcZ(24,46,"common.updated-at"))("hiddenByDefault",!0)("sort",e.sorts.get("updatedAt")),t.xp6(3),t.Q6J("heading",t.lcZ(27,48,"common.name"))("optional",!1)("sort",e.sorts.get("name")),t.xp6(3),t.Q6J("heading",t.lcZ(30,50,"common.code")),t.xp6(3),t.Q6J("heading",t.lcZ(33,52,"common.visibility")),t.xp6(3),t.Q6J("heading",t.lcZ(36,54,"catalog.values")),t.xp6(3),t.Q6J("ngForOf",e.customFields))},dependencies:[h.qvL,g.sg,g.O5,P.rH,A.Kk,A.BN,A.mz,H.Y,Ze.q,G.S,$.H,tt.W,Le.c,mt.e,z.U,at.J,ke.j,E.z,g.Ov,g.OU,x.X$,ot.H],styles:[".facet-values-list[_ngcontent-%COMP%]{max-width:500px;display:flex;flex-wrap:wrap;align-items:center;gap:4px}"]});const $c=["optionGroupName"];function Yc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div",4)(1,"div",5)(2,"label"),t._uU(3),t.ALo(4,"translate"),t.qZA(),t.TgZ(5,"input",6,7),t.NdJ("ngModelChange",function(i){const s=t.CHM(e).$implicit;return t.KtG(s.name=i)})("keydown.enter",function(i){t.CHM(e);const c=t.MAs(12),s=t.oxw();return t.KtG(s.handleEnter(i,c))}),t.qZA()(),t.TgZ(7,"div",8)(8,"label"),t._uU(9),t.ALo(10,"translate"),t.qZA(),t.TgZ(11,"vdr-option-value-input",9,10),t.NdJ("ngModelChange",function(i){const s=t.CHM(e).$implicit;return t.KtG(s.values=i)})("ngModelChange",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.generateVariants())})("edit",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.generateVariants())}),t.qZA()(),t.TgZ(13,"div",11)(14,"button",12),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.removeOption(c.name))}),t.ALo(15,"translate"),t._UZ(16,"clr-icon",13),t.qZA()()()}if(2&o){const e=n.$implicit;t.xp6(3),t.Oqu(t.lcZ(4,7,"catalog.option")),t.xp6(2),t.Q6J("ngModel",e.name),t.xp6(4),t.Oqu(t.lcZ(10,9,"catalog.option-values")),t.xp6(2),t.Q6J("ngModel",e.values)("groupName",e.name)("disabled",""===e.name),t.xp6(3),t.Q6J("title",t.lcZ(15,11,"catalog.remove-option"))}}function Gc(o,n){1&o&&(t.TgZ(0,"clr-alert",18)(1,"clr-alert-item")(2,"span",19),t._uU(3),t.ALo(4,"translate"),t.qZA()()()),2&o&&(t.Q6J("clrAlertClosable",!1),t.xp6(3),t.hij(" ",t.lcZ(4,2,"catalog.no-stock-locations-available-on-current-channel")," "))}function Bc(o,n){if(1&o&&(t.TgZ(0,"option",23),t._uU(1),t.qZA()),2&o){const e=n.$implicit;t.Q6J("value",e.id),t.xp6(1),t.hij(" ",e.name," ")}}function jc(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-form-field",20),t.ALo(1,"translate"),t.TgZ(2,"select",21),t.NdJ("ngModelChange",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.selectedStockLocationId=i)}),t.YNc(3,Bc,2,2,"option",22),t.qZA()()}if(2&o){const e=t.oxw().ngIf,a=t.oxw();t.Q6J("label",t.lcZ(1,3,"catalog.add-stock-to-location")),t.xp6(2),t.Q6J("ngModel",a.selectedStockLocationId),t.xp6(1),t.Q6J("ngForOf",e)}}function Kc(o,n){1&o&&(t.TgZ(0,"th"),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.create")))}function Hc(o,n){1&o&&(t.TgZ(0,"th"),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"catalog.variant")))}function Wc(o,n){1&o&&(t.TgZ(0,"td"),t._UZ(1,"input",31),t.qZA())}function zc(o,n){if(1&o&&(t.TgZ(0,"td"),t._uU(1),t.qZA()),2&o){const e=t.oxw().$implicit;t.xp6(1),t.hij(" ",e.values.join(" ")," ")}}function Xc(o,n){if(1&o&&(t.TgZ(0,"tr",27),t.YNc(1,Wc,2,0,"td",3),t.YNc(2,zc,2,1,"td",3),t.TgZ(3,"td")(4,"vdr-form-field"),t._UZ(5,"input",28),t.ALo(6,"translate"),t.qZA()(),t.TgZ(7,"td")(8,"vdr-form-field"),t._UZ(9,"vdr-currency-input",29),t.qZA()(),t.TgZ(10,"td")(11,"vdr-form-field"),t._UZ(12,"input",30),t.qZA()()()),2&o){const e=n.$implicit,a=t.oxw(3);t.ekj("disabled",!!a.variantFormValues[e.id].value.enabled),t.Q6J("formGroup",a.variantFormValues[e.id]),t.xp6(1),t.Q6J("ngIf",1<a.variants.length),t.xp6(1),t.Q6J("ngIf",1<a.variants.length),t.xp6(3),t.Q6J("placeholder",t.lcZ(6,7,"catalog.sku")),t.xp6(4),t.Q6J("currencyCode",a.currencyCode)}}function tl(o,n){if(1&o&&(t.TgZ(0,"div",24)(1,"table",25)(2,"thead")(3,"tr"),t.YNc(4,Kc,3,3,"th",3),t.YNc(5,Hc,3,3,"th",3),t.TgZ(6,"th"),t._uU(7),t.ALo(8,"translate"),t.qZA(),t.TgZ(9,"th"),t._uU(10),t.ALo(11,"translate"),t.qZA(),t.TgZ(12,"th"),t._uU(13),t.ALo(14,"translate"),t.qZA()()(),t.YNc(15,Xc,13,9,"tr",26),t.qZA()()),2&o){const e=t.oxw(2);t.xp6(4),t.Q6J("ngIf",1<e.variants.length),t.xp6(1),t.Q6J("ngIf",1<e.variants.length),t.xp6(2),t.Oqu(t.lcZ(8,7,"catalog.sku")),t.xp6(3),t.Oqu(t.lcZ(11,9,"catalog.price")),t.xp6(3),t.Oqu(t.lcZ(14,11,"catalog.stock-on-hand")),t.xp6(2),t.Q6J("ngForOf",e.variants)("ngForTrackBy",e.trackByFn)}}function el(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Gc,5,4,"clr-alert",14),t.TgZ(2,"div",15),t.YNc(3,jc,4,5,"vdr-form-field",16),t.qZA(),t.YNc(4,tl,16,13,"div",17),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",0===e.length),t.xp6(2),t.Q6J("ngIf",e.length),t.xp6(1),t.Q6J("ngIf",0<e.length)}}const ze="__DEFAULT_VARIANT__";class Ee{constructor(n,e){this.dataService=n,this.formBuilder=e,this.variantsChange=new t.vpe,this.optionGroups=[],this.variantFormValues={},this.selectedStockLocationId=null}ngOnInit(){this.dataService.settings.getActiveChannel().single$.subscribe(n=>{this.currencyCode=n.activeChannel.defaultCurrencyCode}),this.stockLocations$=this.dataService.query(l.uQH,{options:{take:999}}).refetchOnChannelChange().mapStream(({stockLocations:n})=>n.items).pipe((0,w.b)(n=>{n.length&&(this.selectedStockLocationId=n[0].id)})),this.generateVariants()}addOption(){this.optionGroups.push({name:"",values:[]});const n=this.optionGroups.length-1;setTimeout(()=>{this.groupNameInputs.get(n)?.nativeElement?.focus()})}removeOption(n){this.optionGroups=this.optionGroups.filter(e=>e.name!==n),this.generateVariants()}generateVariants(){const e=this.optionGroups.reduce((a,i)=>a+i.values.length,0)?this.optionGroups.map(a=>a.values.map(i=>i.name)):[[ze]];this.variants=(0,st.generateAllCombinations)(e).map(a=>({id:a.join("|"),values:a})),this.variants.forEach((a,i)=>{if(!this.variantFormValues[a.id]){const c=this.formBuilder.nonNullable.group({optionValues:[a.values],enabled:!0,price:this.copyFromDefault(a.id,"price",0),sku:this.copyFromDefault(a.id,"sku",""),stock:this.copyFromDefault(a.id,"stock",0)});c.valueChanges.subscribe(()=>this.onFormChange()),0===i&&(c.get("price")?.valueChanges.subscribe(s=>{this.copyValuesToPristine("price",c.get("price"))}),c.get("sku")?.valueChanges.subscribe(s=>{this.copyValuesToPristine("sku",c.get("sku"))}),c.get("stock")?.valueChanges.subscribe(s=>{this.copyValuesToPristine("stock",c.get("stock"))})),this.variantFormValues[a.id]=c}})}trackByFn(n,e){return e.values.join("|")}handleEnter(n,e){n.preventDefault(),n.stopPropagation(),e.focus()}copyValuesToPristine(n,e){e&&Object.values(this.variantFormValues).forEach(a=>{const i=a.get(n);i&&i.pristine&&i.setValue(e.value,{emitEvent:!1})})}onFormChange(){const n=this.variants.map(e=>this.variantFormValues[e.id].value).filter(e=>e.enabled);this.variantsChange.emit({groups:this.optionGroups.map(e=>({name:e.name,values:e.values.map(a=>a.name)})),variants:n,stockLocationId:this.selectedStockLocationId})}copyFromDefault(n,e,a){return n!==ze?this.variantFormValues[ze].get(e)?.value:a}}(Xt=Ee).\u0275fac=function(n){return new(n||Xt)(t.Y36(l.DoR),t.Y36(d.qu))},Xt.\u0275cmp=t.Xpm({type:Xt,selectors:[["vdr-generate-product-variants"]],viewQuery:function(n,e){if(1&n&&t.Gf($c,5,t.SBq),2&n){let a;t.iGM(a=t.CRH())&&(e.groupNameInputs=a)}},outputs:{variantsChange:"variantsChange"},decls:7,vars:7,consts:[["class","option-groups",4,"ngFor","ngForOf"],[1,"button","mb-2",3,"click"],["shape","plus"],[4,"ngIf"],[1,"option-groups"],[1,"name"],["placeholder","e.g. Size","clrInput","","name","name","required","",3,"ngModel","ngModelChange","keydown.enter"],["optionGroupName",""],[1,"values"],[3,"ngModel","groupName","disabled","ngModelChange","edit"],["optionValueInputComponent",""],[1,"remove-group"],[1,"button-small","mt-2",3,"title","click"],["shape","trash"],["clrAlertType","warning","class","",3,"clrAlertClosable",4,"ngIf"],[1,"form-grid","mb-2"],[3,"label",4,"ngIf"],["class","variants-preview",4,"ngIf"],["clrAlertType","warning",1,"",3,"clrAlertClosable"],[1,"alert-text"],[3,"label"],[3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"variants-preview"],[1,"table"],[3,"disabled","formGroup",4,"ngFor","ngForOf","ngForTrackBy"],[3,"formGroup"],["type","text","formControlName","sku",3,"placeholder"],["formControlName","price",3,"currencyCode"],["type","number","formControlName","stock","min","0","step","1"],["type","checkbox","formControlName","enabled","clrCheckbox",""]],template:function(n,e){1&n&&(t.YNc(0,Yc,17,13,"div",0),t.TgZ(1,"button",1),t.NdJ("click",function(){return e.addOption()}),t._UZ(2,"clr-icon",2),t._uU(3),t.ALo(4,"translate"),t.qZA(),t.YNc(5,el,5,3,"ng-container",3),t.ALo(6,"async")),2&n&&(t.Q6J("ngForOf",e.optionGroups),t.xp6(3),t.hij(" ",t.lcZ(4,3,"catalog.add-option"),"\n"),t.xp6(2),t.Q6J("ngIf",t.lcZ(6,5,e.stockLocations$)))},dependencies:[h.TIm,h.CyW,h.I9z,h.q0d,h.qvL,h.MgK,h.KKC,h.xRP,g.sg,g.O5,d.YN,d.Kr,d.Fj,d.wV,d.Wl,d.EJ,d.JJ,d.JL,d.Q7,d.qQ,d.On,d.sg,d.u,fe.K,q.h,y.y,gt,g.Ov,x.X$],styles:["[_nghost-%COMP%]{display:block;margin-bottom:120px}.option-groups[_ngcontent-%COMP%]{display:flex}.values[_ngcontent-%COMP%]{flex:1;margin:0 6px}.remove-group[_ngcontent-%COMP%]{padding-top:18px}.variants-preview[_ngcontent-%COMP%] tr.disabled[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{background-color:var(--color-component-bg-100);color:var(--color-grey-400)}"]});var te,nl=m(12058),Ln=m(17625),kn=m(16010),ol=m(92992),al=m(71452),il=m(53123);function rl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-page-block")(1,"vdr-language-selector",15),t.NdJ("languageCodeChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.setLanguage(i))}),t.ALo(2,"async"),t.ALo(3,"async"),t.qZA()()}if(2&o){const e=t.oxw();t.xp6(1),t.Q6J("availableLanguageCodes",t.lcZ(2,2,e.availableLanguages$))("currentLanguageCode",t.lcZ(3,4,e.contentLanguage$))}}function cl(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function ll(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function sl(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}function dl(o,n){if(1&o&&(t._UZ(0,"img",19),t.ALo(1,"assetPreview")),2&o){const e=n.ngIf;t.Q6J("src",t.xi3(1,1,e,"tiny"),t.LSH)}}function pl(o,n){1&o&&(t.TgZ(0,"div",20),t._UZ(1,"clr-icon",21),t.qZA())}function ul(o,n){if(1&o&&(t.TgZ(0,"div",16),t.YNc(1,dl,2,4,"img",17),t.YNc(2,pl,2,0,"ng-template",null,18,t.W1O),t.qZA()),2&o){const e=n.item,a=t.MAs(3);t.xp6(1),t.Q6J("ngIf",e.featuredAsset)("ngIfElse",a)}}const ml=function(o,n){return["/catalog/products",o,"variants",n]};function _l(o,n){if(1&o&&(t.TgZ(0,"a",22)(1,"span"),t._uU(2),t.qZA(),t._UZ(3,"clr-icon",23),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.WLB(2,ml,e.productId,e.id)),t.xp6(2),t.Oqu(e.name)}}function gl(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.sku," ")}}function fl(o,n){1&o&&(t.TgZ(0,"vdr-chip",26),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.enabled")))}function hl(o,n){1&o&&(t.TgZ(0,"vdr-chip",27),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.disabled")))}function vl(o,n){if(1&o&&(t.YNc(0,fl,3,3,"vdr-chip",24),t.YNc(1,hl,3,3,"vdr-chip",25)),2&o){const e=n.item;t.Q6J("ngIf",e.enabled),t.xp6(1),t.Q6J("ngIf",!e.enabled)}}function Cl(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.price,e.currencyCode)," ")}}function Tl(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeCurrency")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.priceWithTax,e.currencyCode)," ")}}function bl(o,n){if(1&o&&(t.TgZ(0,"span",32),t._uU(1),t.qZA()),2&o){const e=t.oxw().$implicit;t.xp6(1),t.hij("(",e.stockAllocated," allocated)")}}function xl(o,n){if(1&o&&(t.TgZ(0,"vdr-chip",29)(1,"div",30)(2,"div"),t._uU(3),t.YNc(4,bl,2,1,"span",31),t.qZA()()()),2&o){const e=n.$implicit;t.Q6J("title",null==e.stockLocation?null:e.stockLocation.name),t.xp6(3),t.hij(" ",e.stockOnHand,""),t.xp6(1),t.Q6J("ngIf",e.stockAllocated)}}function Al(o,n){if(1&o&&t.YNc(0,xl,5,3,"vdr-chip",28),2&o){const e=n.item;t.Q6J("ngForOf",e.stockLevels)}}function Zl(o,n){if(1&o&&t._UZ(0,"vdr-dt2-custom-field-column",33),2&o){const e=n.$implicit,a=t.oxw();t.Q6J("customField",e)("sorts",a.sorts)}}class ee extends l.$ms{constructor(){super(),this.hideLanguageSelect=!1,this.customFields=this.getCustomFieldConfig("ProductVariant"),this.filters=this.createFilterCollection().addIdFilter().addDateFilters().addFilters([{name:"name",type:{kind:"text"},label:(0,u.J)("common.name"),filterField:"name"},{name:"enabled",type:{kind:"boolean"},label:(0,u.J)("common.enabled"),filterField:"enabled"},{name:"sku",type:{kind:"text"},label:(0,u.J)("catalog.sku"),filterField:"sku"},{name:"price",type:{kind:"number",inputType:"currency"},label:(0,u.J)("common.price"),filterField:"price"},{name:"priceWithTax",type:{kind:"number",inputType:"currency"},label:(0,u.J)("common.price-with-tax"),filterField:"priceWithTax"}]).addCustomFieldFilters(this.customFields).connectToRoute(this.route),this.sorts=this.createSortCollection().addSorts([{name:"id"},{name:"createdAt"},{name:"updatedAt"},{name:"name"},{name:"sku"},{name:"price"},{name:"priceWithTax"}]).addCustomFieldSorts(this.customFields).connectToRoute(this.route),this.configure({document:l.NKc,getItems:n=>n.productVariants,setVariables:(n,e)=>{const a=this.searchTermControl.value,i={_and:[]},c=this.filters.createFilterInput();return Object.keys(c).length&&i._and?.push(c),a&&i._and?.push({_or:[{name:{contains:a}},{sku:{contains:a}}]}),this.productId&&i._and?.push({productId:{eq:this.productId}}),{options:{skip:n,take:e,filter:i,sort:this.sorts.createSortInput()}}},refreshListOnChanges:[this.sorts.valueChanges,this.filters.valueChanges]})}}(te=ee).\u0275fac=function(n){return new(n||te)},te.\u0275cmp=t.Xpm({type:te,selectors:[["vdr-product-variant-list"]],inputs:{productId:"productId",hideLanguageSelect:"hideLanguageSelect",dataTableId:"dataTableId"},features:[t.qOj],decls:40,vars:65,consts:[[4,"ngIf"],[1,"mt-2",3,"id","items","itemsPerPage","totalItems","currentPage","filters","pageChange","itemsPerPageChange"],["locationId","product-variant-list",3,"hostComponent","selectionManager"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault","sort"],["id","created-at",3,"heading","hiddenByDefault","sort"],["id","updated-at",3,"heading","hiddenByDefault","sort"],["id","image",3,"heading"],["id","name",3,"heading","optional","sort"],["id","sku",3,"heading","sort"],["id","enabled",3,"heading"],["id","price",3,"heading","hiddenByDefault","sort"],["id","price-with-tax",3,"heading","sort"],["id","stock-on-hand",3,"heading","hiddenByDefault"],[3,"customField","sorts",4,"ngFor","ngForOf"],[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],[1,"image-placeholder"],[3,"src",4,"ngIf","ngIfElse"],["imagePlaceholder",""],[3,"src"],[1,"placeholder"],["shape","image","size","48"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"],["colorType","success",4,"ngIf"],["colorType","warning",4,"ngIf"],["colorType","success"],["colorType","warning"],[3,"title",4,"ngFor","ngForOf"],[3,"title"],[1,"flex","center"],["class","ml-1",4,"ngIf"],[1,"ml-1"],[3,"customField","sorts"]],template:function(n,e){1&n&&(t.YNc(0,rl,4,6,"vdr-page-block",0),t.TgZ(1,"vdr-data-table-2",1),t.NdJ("pageChange",function(i){return e.setPageNumber(i)})("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(2,"async"),t.ALo(3,"async"),t.ALo(4,"async"),t.ALo(5,"async"),t._UZ(6,"vdr-bulk-action-menu",2)(7,"vdr-dt2-search",3),t.ALo(8,"translate"),t.TgZ(9,"vdr-dt2-column",4),t.ALo(10,"translate"),t.YNc(11,cl,1,1,"ng-template"),t.qZA(),t.TgZ(12,"vdr-dt2-column",5),t.ALo(13,"translate"),t.YNc(14,ll,2,4,"ng-template"),t.qZA(),t.TgZ(15,"vdr-dt2-column",6),t.ALo(16,"translate"),t.YNc(17,sl,2,4,"ng-template"),t.qZA(),t.TgZ(18,"vdr-dt2-column",7),t.ALo(19,"translate"),t.YNc(20,ul,4,2,"ng-template"),t.qZA(),t.TgZ(21,"vdr-dt2-column",8),t.ALo(22,"translate"),t.YNc(23,_l,4,5,"ng-template"),t.qZA(),t.TgZ(24,"vdr-dt2-column",9),t.ALo(25,"translate"),t.YNc(26,gl,1,1,"ng-template"),t.qZA(),t.TgZ(27,"vdr-dt2-column",10),t.ALo(28,"translate"),t.YNc(29,vl,2,2,"ng-template"),t.qZA(),t.TgZ(30,"vdr-dt2-column",11),t.ALo(31,"translate"),t.YNc(32,Cl,2,4,"ng-template"),t.qZA(),t.TgZ(33,"vdr-dt2-column",12),t.ALo(34,"translate"),t.YNc(35,Tl,2,4,"ng-template"),t.qZA(),t.TgZ(36,"vdr-dt2-column",13),t.ALo(37,"translate"),t.YNc(38,Al,1,1,"ng-template"),t.qZA(),t.YNc(39,Zl,1,2,"vdr-dt2-custom-field-column",14),t.qZA()),2&n&&(t.Q6J("ngIf",!e.hideLanguageSelect),t.xp6(1),t.Q6J("id",e.dataTableId||"product-variant-list")("items",t.lcZ(2,35,e.items$))("itemsPerPage",t.lcZ(3,37,e.itemsPerPage$))("totalItems",t.lcZ(4,39,e.totalItems$))("currentPage",t.lcZ(5,41,e.currentPage$))("filters",e.filters),t.xp6(5),t.Q6J("hostComponent",e)("selectionManager",e.selectionManager),t.xp6(1),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(8,43,"settings.search-by-product-name-or-sku")),t.xp6(2),t.Q6J("heading",t.lcZ(10,45,"common.id"))("hiddenByDefault",!0)("sort",e.sorts.get("id")),t.xp6(3),t.Q6J("heading",t.lcZ(13,47,"common.created-at"))("hiddenByDefault",!0)("sort",e.sorts.get("createdAt")),t.xp6(3),t.Q6J("heading",t.lcZ(16,49,"common.updated-at"))("hiddenByDefault",!0)("sort",e.sorts.get("updatedAt")),t.xp6(3),t.Q6J("heading",t.lcZ(19,51,"common.image")),t.xp6(3),t.Q6J("heading",t.lcZ(22,53,"catalog.name"))("optional",!1)("sort",e.sorts.get("name")),t.xp6(3),t.Q6J("heading",t.lcZ(25,55,"catalog.sku"))("sort",e.sorts.get("sku")),t.xp6(3),t.Q6J("heading",t.lcZ(28,57,"common.enabled")),t.xp6(3),t.Q6J("heading",t.lcZ(31,59,"common.price"))("hiddenByDefault",!0)("sort",e.sorts.get("price")),t.xp6(3),t.Q6J("heading",t.lcZ(34,61,"common.price-with-tax"))("sort",e.sorts.get("priceWithTax")),t.xp6(3),t.Q6J("heading",t.lcZ(37,63,"catalog.stock-on-hand"))("hiddenByDefault",!1),t.xp6(3),t.Q6J("ngForOf",e.customFields))},dependencies:[h.qvL,g.sg,g.O5,P.rH,H.Y,G.S,Le.c,mt.e,z.U,at.J,ke.j,E.z,g.Ov,x.X$,Ae.M,ot.H,ve.k],styles:[".image-col[_ngcontent-%COMP%]{width:70px}.image-placeholder[_ngcontent-%COMP%]{width:50px;height:50px;margin-top:calc(var(--space-unit) * -1);margin-bottom:calc(var(--space-unit) * -1);background-color:var(--color-component-bg-200)}.image-placeholder[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{border-radius:var(--border-radius-img)}.image-placeholder[_ngcontent-%COMP%] .placeholder[_ngcontent-%COMP%]{text-align:center;color:var(--color-grey-300)}.search-form[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%}vdr-product-search-input[_ngcontent-%COMP%]{min-width:300px}@media screen and (max-width: 768px){vdr-product-search-input[_ngcontent-%COMP%]{min-width:100px}}.search-settings-menu[_ngcontent-%COMP%]{margin:0 12px}td.disabled[_ngcontent-%COMP%]{background-color:var(--color-component-bg-200)}.search-index-button[_ngcontent-%COMP%]{position:relative}.search-index-button[_ngcontent-%COMP%] vdr-status-badge[_ngcontent-%COMP%]{right:0;top:0}.run-updates-button[_ngcontent-%COMP%]{position:relative}.run-updates-button[_ngcontent-%COMP%] vdr-status-badge[_ngcontent-%COMP%]{left:10px;top:10px}.edit-button[_ngcontent-%COMP%]{margin-inline-end:24px}.sku[_ngcontent-%COMP%]{color:var(--color-text-300)}"]});var ne,Xe=m(93899);function Pl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",28),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.create())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",e.detailForm.invalid||e.detailForm.pristine||0===e.createVariantsConfig.variants.length),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.create")," ")}}function Ol(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",28),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw(2);t.Q6J("disabled",(e.detailForm.invalid||e.detailForm.pristine)&&!e.assetsChanged()),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}function Il(o,n){if(1&o&&t.YNc(0,Ol,3,4,"button",29),2&o){const e=t.oxw();t.Q6J("vdrIfPermissions",e.updatePermissions)}}const Fl=function(){return["enabled"]};function Dl(o,n){if(1&o&&(t.TgZ(0,"clr-toggle-wrapper"),t._UZ(1,"input",30),t.TgZ(2,"label"),t._uU(3),t.ALo(4,"translate"),t.qZA()()),2&o){const e=t.oxw();t.xp6(1),t.Q6J("formControl",e.detailForm.get(t.DdM(4,Fl))),t.xp6(2),t.Oqu(t.lcZ(4,2,"common.enabled"))}}function yl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-chip",39),t.NdJ("iconClick",function(){t.CHM(e);const i=t.oxw().$implicit,c=t.oxw(4);return t.KtG(c.removeFromChannel(i.id))}),t._UZ(1,"vdr-channel-badge",40),t._uU(2),t.ALo(3,"channelCodeToLabel"),t.qZA()}if(2&o){const e=t.oxw().$implicit;t.xp6(1),t.Q6J("channelCode",e.code),t.xp6(1),t.hij(" ",t.lcZ(3,2,e.code)," ")}}function Ll(o,n){if(1&o&&(t.ynx(0),t.YNc(1,yl,4,4,"vdr-chip",38),t.BQk()),2&o){const e=n.$implicit,a=t.oxw(4);t.xp6(1),t.Q6J("ngIf",!a.isDefaultChannel(e.code))}}function kl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-form-item")(1,"div",33)(2,"div",34),t.YNc(3,Ll,2,1,"ng-container",35),t.ALo(4,"async"),t.qZA(),t.TgZ(5,"button",36),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(3);return t.KtG(i.assignToChannel())}),t._UZ(6,"clr-icon",37),t._uU(7),t.ALo(8,"translate"),t.qZA()()()}if(2&o){const e=t.oxw(3);t.xp6(3),t.Q6J("ngForOf",t.lcZ(4,2,e.productChannels$)),t.xp6(4),t.hij(" ",t.lcZ(8,4,"catalog.assign-to-channel")," ")}}function Nl(o,n){1&o&&(t.TgZ(0,"vdr-card",10),t.ALo(1,"translate"),t.YNc(2,kl,9,6,"vdr-form-item",32),t.qZA()),2&o&&t.Q6J("title",t.lcZ(1,1,"common.channels"))}function Jl(o,n){1&o&&(t.ynx(0),t.YNc(1,Nl,3,3,"vdr-card",31),t.BQk())}function Ul(o,n){if(1&o&&(t.TgZ(0,"vdr-chip",44),t._uU(1),t.qZA()),2&o){const e=n.$implicit;t.Q6J("colorFrom",e.code)("invert",!0),t.xp6(1),t.hij(" ",e.name," ")}}const Ml=function(){return["options"]};function Rl(o,n){1&o&&(t.TgZ(0,"a",45),t._UZ(1,"clr-icon",46),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Ml)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.edit-options")," "))}function El(o,n){if(1&o&&(t.TgZ(0,"vdr-card",10),t.ALo(1,"translate"),t.TgZ(2,"div",41),t.YNc(3,Ul,2,3,"vdr-chip",42),t.ALo(4,"sort"),t.qZA(),t.TgZ(5,"div"),t.YNc(6,Rl,4,5,"a",43),t.qZA()()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,3,"catalog.product-options")),t.xp6(3),t.Q6J("ngForOf",t.xi3(4,5,null==e.entity?null:e.entity.optionGroups,"id")),t.xp6(3),t.Q6J("vdrIfPermissions",e.updatePermissions)}}function Vl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-facet-value-chip",47),t.NdJ("remove",function(){const c=t.CHM(e).$implicit,s=t.oxw();return t.KtG(s.removeProductFacetValue(c.id))}),t.ALo(1,"hasPermission"),t.qZA()}if(2&o){const e=n.$implicit,a=t.oxw();t.Q6J("facetValue",e)("removable",t.lcZ(1,2,a.updatePermissions))}}function Sl(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",48),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.selectProductFacetValue())}),t._UZ(1,"clr-icon",49),t._uU(2),t.ALo(3,"translate"),t.qZA()}2&o&&(t.xp6(2),t.hij(" ",t.lcZ(3,1,"catalog.add-facets")," "))}function wl(o,n){if(1&o&&(t.TgZ(0,"vdr-card"),t._UZ(1,"vdr-page-entity-info",50),t.qZA()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("entity",e)}}function Ql(o,n){1&o&&(t.TgZ(0,"div")(1,"clr-checkbox-wrapper"),t._UZ(2,"input",51),t.TgZ(3,"label"),t._uU(4),t.ALo(5,"translate"),t.qZA()()()),2&o&&(t.xp6(4),t.Oqu(t.lcZ(5,1,"catalog.auto-update-product-variant-name")))}function ql(o,n){if(1&o&&(t.TgZ(0,"vdr-card",10),t.ALo(1,"translate"),t._UZ(2,"vdr-tabbed-custom-fields",52),t.ALo(3,"hasPermission"),t.qZA()),2&o){const e=t.oxw();t.Q6J("title",t.lcZ(1,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.detailForm.get("customFields"))("readonly",!t.lcZ(3,6,e.updatePermissions))}}function $l(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div")(1,"vdr-generate-product-variants",53),t.NdJ("variantsChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.createVariantsConfig=i)}),t.qZA()()}}function Yl(o,n){if(1&o&&t._UZ(0,"vdr-product-variant-list",54),2&o){const e=t.oxw();t.Q6J("productId",e.id)("hideLanguageSelect",!0)}}const Gl=function(){return["manage-variants"]};function Bl(o,n){1&o&&(t.TgZ(0,"div",55)(1,"a",56),t._UZ(2,"clr-icon",57),t._uU(3),t.ALo(4,"translate"),t.qZA()()),2&o&&(t.xp6(1),t.Q6J("routerLink",t.DdM(4,Gl)),t.xp6(2),t.hij(" ",t.lcZ(4,2,"catalog.manage-variants"),""))}const jl=function(){return["name"]},Nn=function(o){return{pattern:o}},Kl=D.Ps`
100
100
  query GetProductDetail($id: ID!) {
101
101
  product(id: $id) {
102
102
  ...ProductDetail
103
103
  }
104
104
  }
105
105
  ${l.c4F}
106
- `;class ne extends l.VE7{constructor(n,e,a,i,c,s){super(),this.productDetailService=n,this.formBuilder=e,this.modalService=a,this.notificationService=i,this.dataService=c,this.changeDetector=s,this.customFields=this.getCustomFieldConfig("Product"),this.detailForm=this.formBuilder.group({enabled:!0,name:["",d.kI.required],autoUpdateVariantNames:!0,slug:["",(0,l.Foo)(/^[\p{Letter}0-9._-]+$/)],description:"",facetValueIds:[[]],customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))}),this.assetChanges={},this.createVariantsConfig={groups:[],variants:[],stockLocationId:""},this.updatePermissions=[l.y3$.UpdateCatalog,l.y3$.UpdateProduct]}ngOnInit(){this.init();const n=this.isNew$.pipe((0,b.w)(i=>i?(0,L.of)([]):this.entity$.pipe((0,v.U)(c=>c.facetValues)))),a=this.detailForm.get("facetValueIds").valueChanges.pipe((0,S.x)(),(0,b.w)(i=>this.dataService.facet.getFacetValues({filter:{id:{in:i}}}).mapSingle(({facetValues:c})=>c.items)),(0,r.d)(1));this.facetValues$=(0,Ln.z)(n.pipe((0,Q.q)(1)),n.pipe((0,b.w)(()=>a))),this.productChannels$=this.entity$.pipe((0,v.U)(i=>i.channels))}ngOnDestroy(){this.destroy()}isDefaultChannel(n){return n===el.z$}assignToChannel(){this.productChannels$.pipe((0,Q.q)(1),(0,b.w)(n=>this.modalService.fromComponent(rt,{size:"lg",locals:{productIds:[this.id],currentChannelIds:n.map(e=>e.id)}}))).subscribe()}removeFromChannel(n){(0,je.D)((0,l.PDO)(this.dataService,n)).pipe((0,b.w)(({channelCode:e})=>this.modalService.dialog({title:(0,u.J)("catalog.remove-product-from-channel"),buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("catalog.remove-from-channel"),translationVars:{channelCode:e},returnValue:!0}]})),(0,b.w)(e=>e?this.dataService.product.removeProductsFromChannel({channelId:n,productIds:[this.id]}):F.E)).subscribe(()=>{this.notificationService.success((0,u.J)("catalog.notify-remove-product-from-channel-success"))},e=>{this.notificationService.error((0,u.J)("catalog.notify-remove-product-from-channel-error"))})}assignVariantToChannel(n){return this.modalService.fromComponent(rt,{size:"lg",locals:{productIds:[this.id],productVariantIds:[n.id],currentChannelIds:n.channels.map(e=>e.id)}}).subscribe()}removeVariantFromChannel({channelId:n,variant:e}){(0,je.D)((0,l.PDO)(this.dataService,n)).pipe((0,b.w)(({channelCode:a})=>this.modalService.dialog({title:(0,u.J)("catalog.remove-product-variant-from-channel"),buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("catalog.remove-from-channel"),translationVars:{channelCode:a},returnValue:!0}]})),(0,b.w)(a=>a?this.dataService.product.removeVariantsFromChannel({channelId:n,productVariantIds:[e.id]}):F.E)).subscribe(()=>{this.notificationService.success((0,u.J)("catalog.notify-remove-variant-from-channel-success"))},a=>{this.notificationService.error((0,u.J)("catalog.notify-remove-variant-from-channel-error"))})}assetsChanged(){return!!Object.values(this.assetChanges).length}updateSlug(n){const e=this.detailForm.get("slug"),a=this.entity?(0,l.ZIM)(this.entity,this.languageCode):void 0,i=!a||!a.slug;e&&e.pristine&&i&&e.setValue((0,R.U)(`${n}`,"-"))}selectProductFacetValue(){this.displayFacetValueModal().subscribe(n=>{if(n){const e=this.detailForm,a=e.value.facetValueIds??[];e.patchValue({facetValueIds:(0,J.T)([...a,...n])}),e.markAsDirty(),this.changeDetector.markForCheck()}})}updateProductOption(n){(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,k.z)(([e,a])=>this.productDetailService.updateProductOption(n,e,a))).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"ProductOption"})},e=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"ProductOption"})})}removeProductFacetValue(n){const e=this.detailForm,a=e.value.facetValueIds??[];e.patchValue({facetValueIds:a.filter(i=>i!==n)}),e.markAsDirty()}displayFacetValueModal(){return this.modalService.fromComponent(yt,{size:"md",closable:!0}).pipe((0,v.U)(n=>n&&n.map(e=>e.id)))}create(){const n=this.detailForm;if(!n.dirty)return;const e=this.getUpdatedProduct({id:"",createdAt:"",updatedAt:"",enabled:!0,languageCode:this.languageCode,name:"",slug:"",featuredAsset:null,assets:[],description:"",translations:[],optionGroups:[],facetValues:[],channels:[]},n,this.languageCode);this.productDetailService.createProductWithVariants(e,this.createVariantsConfig,this.languageCode).subscribe(({createProductVariants:a,productId:i})=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"Product"}),this.assetChanges={},this.detailForm.markAsPristine(),this.router.navigate(["../",i],{relativeTo:this.route})},a=>{console.error(a),this.notificationService.error((0,u.J)("common.notify-create-error"),{entity:"Product"})})}save(){(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,k.z)(([n,e])=>{const a=this.detailForm;let i;return(a.dirty||this.assetsChanged())&&(i=this.getUpdatedProduct(n,a,e)),this.productDetailService.updateProduct({product:n,languageCode:e,autoUpdate:this.detailForm.get(["autoUpdateVariantNames"])?.value??!1,productInput:i,variantsInput:undefined})})).subscribe(n=>{this.updateSlugAfterSave(n),this.detailForm.markAsPristine(),this.assetChanges={},this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"Product"}),this.changeDetector.markForCheck()},n=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"Product"})})}canDeactivate(){return super.canDeactivate()&&!this.assetChanges.assets&&!this.assetChanges.featuredAsset}setFormValues(n,e){const a=(0,l.ZIM)(n,e);this.detailForm.patchValue({enabled:n.enabled,name:a?a.name:"",slug:a?a.slug:"",description:a?a.description:"",facetValueIds:n.facetValues.map(i=>i.id)}),this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get(["customFields"]),n,a)}getUpdatedProduct(n,e,a){return{...(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.customFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||"",slug:n.slug||"",description:n.description||""}}),assetIds:this.assetChanges.assets?.map(c=>c.id),featuredAssetId:this.assetChanges.featuredAsset?.id,facetValueIds:e.value.facetValueIds}}updateSlugAfterSave(n){const e=n[0],a=this.detailForm.get(["product","slug"]);a&&function i(c){return c.hasOwnProperty("updateProduct")}(e)&&a.setValue(e.updateProduct.slug,{emitEvent:!1})}}(ee=ne).\u0275fac=function(n){return new(n||ee)(t.Y36(pt),t.Y36(d.qu),t.Y36(l.Z7U),t.Y36(l.gqp),t.Y36(l.DoR),t.Y36(t.sBO))},ee.\u0275cmp=t.Xpm({type:ee,selectors:[["vdr-product-detail2"]],features:[t.qOj],decls:68,vars:86,consts:[[1,"flex","clr-flex-row"],[3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","product-detail"],["class","btn btn-primary",3,"disabled","click",4,"ngIf","ngIfElse"],["updateButton",""],[1,"form",3,"formGroup"],["for","visibility",3,"label"],[4,"vdrIfPermissions"],[4,"ngIf"],[3,"title",4,"ngIf"],[3,"title"],[1,"facets"],[3,"facetValue","removable","remove",4,"ngFor","ngForOf"],["class","button-small mt-2",3,"click",4,"vdrIfPermissions"],["type","submit","hidden","","x-data","prevents enter key from triggering other buttons"],[1,"form-grid"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"readonly","input"],["for","slug",3,"label","errors"],["id","slug","type","text","formControlName","slug",3,"readonly"],["for","slug",1,"form-grid-span",3,"label","errors"],["formControlName","description",3,"readonly"],["locationId","product-detail",3,"entity$","detailForm"],[3,"assets","featuredAsset","updatePermissions","change"],[3,"title","paddingX"],[4,"ngIf","ngIfElse"],["variantList",""],["class","mx-3",4,"ngIf"],[1,"btn","btn-primary",3,"disabled","click"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],["type","checkbox","clrToggle","","name","enabled",3,"formControl"],[3,"title",4,"vdrIfMultichannel"],[4,"vdrIfDefaultChannelActive"],[1,"flex","channel-assignment"],[1,"mb-2"],[4,"ngFor","ngForOf"],[1,"button-small",3,"click"],["shape","layers"],["icon","times-circle",3,"iconClick",4,"ngIf"],["icon","times-circle",3,"iconClick"],[3,"channelCode"],[1,"options"],[3,"colorFrom","invert",4,"ngFor","ngForOf"],["class","button-small mt-2",3,"routerLink",4,"vdrIfPermissions"],[3,"colorFrom","invert"],[1,"button-small","mt-2",3,"routerLink"],["shape","pencil"],[3,"facetValue","removable","remove"],[1,"button-small","mt-2",3,"click"],["shape","plus"],[3,"entity"],["clrCheckbox","","type","checkbox","id","auto-update","formControlName","autoUpdateVariantNames"],["entityName","Product",3,"customFields","customFieldsFormGroup","readonly"],[3,"variantsChange"],["dataTableId","product-detail-variants-list",3,"productId","hideLanguageSelect"],[1,"mx-3"],[1,"button",3,"routerLink"],["shape","add-text"]],template:function(n,e){if(1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left"),t._UZ(3,"div",0),t.TgZ(4,"vdr-language-selector",1),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(5,"async"),t.ALo(6,"async"),t.ALo(7,"async"),t.qZA()(),t.TgZ(8,"vdr-ab-right"),t._UZ(9,"vdr-action-bar-items",2),t.YNc(10,Zl,3,4,"button",3),t.ALo(11,"async"),t.YNc(12,Ol,1,1,"ng-template",null,4,t.W1O),t.qZA()()(),t.TgZ(14,"form",5)(15,"vdr-page-detail-layout")(16,"vdr-page-detail-sidebar")(17,"vdr-card")(18,"vdr-form-field",6),t.ALo(19,"translate"),t.YNc(20,Fl,5,5,"clr-toggle-wrapper",7),t.qZA()(),t.YNc(21,kl,2,0,"ng-container",8),t.ALo(22,"async"),t.YNc(23,Rl,7,8,"vdr-card",9),t.TgZ(24,"vdr-card",10),t.ALo(25,"translate"),t.TgZ(26,"div",11),t.YNc(27,El,2,4,"vdr-facet-value-chip",12),t.ALo(28,"async"),t.qZA(),t.TgZ(29,"div"),t.YNc(30,Vl,4,3,"button",13),t.qZA()(),t.YNc(31,Sl,2,1,"vdr-card",8),t.ALo(32,"async"),t.qZA(),t.TgZ(33,"vdr-page-block"),t._UZ(34,"button",14),t.TgZ(35,"vdr-card")(36,"div",15)(37,"div")(38,"vdr-form-field",16),t.ALo(39,"translate"),t.TgZ(40,"input",17),t.NdJ("input",function(i){return e.updateSlug(i.target.value)}),t.ALo(41,"hasPermission"),t.qZA()(),t.YNc(42,wl,6,3,"div",8),t.ALo(43,"async"),t.qZA(),t.TgZ(44,"vdr-form-field",18),t.ALo(45,"translate"),t.ALo(46,"translate"),t._UZ(47,"input",19),t.ALo(48,"hasPermission"),t.qZA(),t.TgZ(49,"vdr-form-field",20),t.ALo(50,"translate"),t.ALo(51,"translate"),t._UZ(52,"vdr-rich-text-editor",21),t.ALo(53,"hasPermission"),t.qZA()()(),t.YNc(54,Ql,4,8,"vdr-card",9),t._UZ(55,"vdr-custom-detail-component-host",22),t.TgZ(56,"vdr-card",10),t.ALo(57,"translate"),t.TgZ(58,"vdr-assets",23),t.NdJ("change",function(i){return e.assetChanges=i}),t.qZA()(),t.TgZ(59,"vdr-card",24),t.ALo(60,"translate"),t.ALo(61,"async"),t.YNc(62,ql,2,0,"div",25),t.ALo(63,"async"),t.YNc(64,$l,1,2,"ng-template",null,26,t.W1O),t.YNc(66,Gl,5,5,"div",27),t.ALo(67,"async"),t.qZA()()()()),2&n){const a=t.MAs(13),i=t.MAs(65);let c;t.xp6(4),t.Q6J("disabled",t.lcZ(5,35,e.isNew$))("availableLanguageCodes",t.lcZ(6,37,e.availableLanguages$))("currentLanguageCode",t.lcZ(7,39,e.languageCode$)),t.xp6(6),t.Q6J("ngIf",t.lcZ(11,41,e.isNew$))("ngIfElse",a),t.xp6(4),t.Q6J("formGroup",e.detailForm),t.xp6(4),t.Q6J("label",t.lcZ(19,43,"catalog.visibility")),t.xp6(2),t.Q6J("vdrIfPermissions",e.updatePermissions),t.xp6(1),t.Q6J("ngIf",!t.lcZ(22,45,e.isNew$)),t.xp6(2),t.Q6J("ngIf",null==e.entity?null:e.entity.optionGroups.length),t.xp6(1),t.Q6J("title",t.lcZ(25,47,"catalog.facets")),t.xp6(3),t.Q6J("ngForOf",t.lcZ(28,49,e.facetValues$)),t.xp6(3),t.Q6J("vdrIfPermissions",e.updatePermissions),t.xp6(1),t.Q6J("ngIf",t.lcZ(32,51,e.entity$)),t.xp6(7),t.Q6J("label",t.lcZ(39,53,"catalog.product-name")),t.xp6(2),t.Q6J("readonly",!t.lcZ(41,55,e.updatePermissions)),t.xp6(2),t.Q6J("ngIf",!1===t.lcZ(43,57,e.isNew$)&&(null==(c=e.detailForm.get(t.DdM(81,Bl)))?null:c.dirty)),t.xp6(2),t.Q6J("label",t.lcZ(45,59,"catalog.slug"))("errors",t.VKq(82,kn,t.lcZ(46,61,"catalog.slug-pattern-error"))),t.xp6(3),t.Q6J("readonly",!t.lcZ(48,63,e.updatePermissions)),t.xp6(2),t.Q6J("label",t.lcZ(50,65,"common.description"))("errors",t.VKq(84,kn,t.lcZ(51,67,"catalog.slug-pattern-error"))),t.xp6(3),t.Q6J("readonly",!t.lcZ(53,69,e.updatePermissions)),t.xp6(2),t.Q6J("ngIf",e.customFields.length),t.xp6(1),t.Q6J("entity$",e.entity$)("detailForm",e.detailForm),t.xp6(1),t.Q6J("title",t.lcZ(57,71,"catalog.assets")),t.xp6(2),t.Q6J("assets",e.assetChanges.assets||(null==e.entity?null:e.entity.assets))("featuredAsset",e.assetChanges.featuredAsset||(null==e.entity?null:e.entity.featuredAsset))("updatePermissions",e.updatePermissions),t.xp6(1),t.Q6J("title",t.lcZ(60,73,"catalog.product-variants"))("paddingX",t.lcZ(61,75,e.isNew$)),t.xp6(3),t.Q6J("ngIf",t.lcZ(63,77,e.isNew$))("ngIfElse",i),t.xp6(4),t.Q6J("ngIf",!1===t.lcZ(67,79,e.isNew$))}},dependencies:[h.qvL,h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.Fj,d.Wl,d.JJ,d.JL,d.oH,d.sg,d.u,P.rH,A.Kk,A.BN,A.mz,H.Y,Ae.q,q.h,y.y,Nn.J,G.S,Cn.Y,$.H,nl.u,tt.W,ol.n,al.M,ut.y,Oe.C,E.z,At.D,Ie.T,Fe.W,nt.A,Ee,bt,te,g.Ov,x.X$,Xe.U,B.j,un.E],styles:["[_nghost-%COMP%] trix-toolbar{top:24px}.facets[_ngcontent-%COMP%], .options[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:3px}vdr-action-bar[_ngcontent-%COMP%] clr-toggle-wrapper[_ngcontent-%COMP%]{margin-top:12px}.variant-filter[_ngcontent-%COMP%]{flex:1;display:flex}.variant-filter[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{flex:1;max-width:initial;border-radius:3px 0 0 3px!important}.variant-filter[_ngcontent-%COMP%] .icon-button[_ngcontent-%COMP%]{border:1px solid var(--color-component-border-300);background-color:var(--color-component-bg-100);border-radius:0 3px 3px 0;border-inline-start:none}.group-name[_ngcontent-%COMP%]{padding-inline-end:6px}.view-mode[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:space-between}@media screen and (min-width: 768px){.view-mode[_ngcontent-%COMP%]{flex-direction:row}}.edit-variants-btn[_ngcontent-%COMP%]{margin-top:0}.channel-assignment[_ngcontent-%COMP%]{flex-wrap:wrap;max-height:144px}.pagination-row[_ngcontent-%COMP%]{display:flex;align-items:baseline;justify-content:space-between}"],changeDetection:0});const Jn={location:"product-list",label:(0,u.J)("common.delete"),icon:"trash",iconClass:"is-danger",requiresPermission:o=>o.includes(l.y3$.DeleteProduct)||o.includes(l.y3$.DeleteCatalog),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.DoR),s=o.get(l.gqp);i.dialog({title:(0,u.J)("catalog.confirm-bulk-delete-products"),translationVars:{count:n.length},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(p=>p?c.product.deleteProducts((0,J.T)(n.map(_=>_.id))):F.E)).subscribe(p=>{let _=0;const f=[];for(const T of p.deleteProducts)T.result===l.PcR.DELETED?_++:T.message&&f.push(T.message);0<_&&s.success((0,u.J)("catalog.notify-bulk-delete-products-success"),{count:_}),0<f.length&&s.error(f.join("\n")),e.refresh(),a()})}},Un={location:"product-list",label:(0,u.J)("catalog.assign-to-channel"),icon:"layers",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),isVisible:({injector:o})=>(0,l.SDV)(o.get(l.DoR)),onClick:({injector:o,selection:n,clearSelection:e})=>{o.get(l.Z7U).fromComponent(rt,{size:"lg",locals:{productIds:(0,J.T)(n.map(i=>i.id)),currentChannelIds:[]}}).subscribe(i=>{i&&e()})}},Mn=(0,l.RBx)({location:"product-list",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),getItemName:o=>o.name,bulkRemoveFromChannel:(o,n,e)=>o.product.removeProductsFromChannel({channelId:e,productIds:n}).pipe((0,v.U)(a=>a.removeProductsFromChannel))}),Rn={location:"product-list",label:(0,u.J)("catalog.edit-facet-values"),icon:"tag",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),s=(o.get(l.DoR),o.get(l.gqp)),p="product",_=(0,J.T)(n.map(f=>f.id));return i.fromComponent(Ze,{size:"xl",locals:{mode:p,ids:_}}).subscribe(f=>{f&&(s.success((0,u.J)("common.notify-bulk-update-success"),{count:n.length,entity:"Products"}),a())})}};var oe,Kl=m(69249);const Hl=function(){return["./create"]};function Wl(o,n){1&o&&(t.TgZ(0,"a",20),t._UZ(1,"clr-icon",21),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Hl)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.create-new-product")," "))}function zl(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function Xl(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function ts(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}function es(o,n){if(1&o&&(t._UZ(0,"img",25),t.ALo(1,"assetPreview")),2&o){const e=n.ngIf;t.Q6J("src",t.xi3(1,1,e,"tiny"),t.LSH)}}function ns(o,n){1&o&&(t.TgZ(0,"div",26),t._UZ(1,"clr-icon",27),t.qZA())}function os(o,n){if(1&o&&(t.TgZ(0,"div",22),t.YNc(1,es,2,4,"img",23),t.YNc(2,ns,2,0,"ng-template",null,24,t.W1O),t.qZA()),2&o){const e=n.item,a=t.MAs(3);t.xp6(1),t.Q6J("ngIf",e.featuredAsset)("ngIfElse",a)}}const as=function(o){return["./",o]};function is(o,n){if(1&o&&(t.TgZ(0,"a",28)(1,"span"),t._uU(2),t.qZA(),t._UZ(3,"clr-icon",29),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.VKq(2,as,e.id)),t.xp6(2),t.Oqu(e.name)}}function rs(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.slug," ")}}function cs(o,n){1&o&&(t.TgZ(0,"vdr-chip",32),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.enabled")))}function ls(o,n){1&o&&(t.TgZ(0,"vdr-chip",33),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.disabled")))}function ss(o,n){if(1&o&&(t.YNc(0,cs,3,3,"vdr-chip",30),t.YNc(1,ls,3,3,"vdr-chip",31)),2&o){const e=n.item;t.Q6J("ngIf",e.enabled),t.xp6(1),t.Q6J("ngIf",!e.enabled)}}const ds=function(o){return{count:o}};function ps(o,n){if(1&o&&(t._uU(0),t.ALo(1,"translate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,"catalog.variant-count",t.VKq(4,ds,null==e.variantList?null:e.variantList.totalItems))," ")}}function us(o,n){if(1&o&&t._UZ(0,"vdr-dt2-custom-field-column",34),2&o){const e=n.$implicit,a=t.oxw();t.Q6J("customField",e)("sorts",a.sorts)}}const ms=function(){return["CreateCatalog","CreateProduct"]};class Ve extends l.$ms{constructor(n,e,a,i){super(),this.dataService=n,this.modalService=e,this.notificationService=a,this.jobQueueService=i,this.pendingSearchIndexUpdates=0,this.customFields=this.getCustomFieldConfig("Product"),this.filters=this.createFilterCollection().addIdFilter().addDateFilters().addFilters([{name:"enabled",type:{kind:"boolean"},label:(0,u.J)("common.enabled"),filterField:"enabled"},{name:"slug",type:{kind:"text"},label:(0,u.J)("common.slug"),filterField:"slug"}]).addFilter({name:"facetValues",type:{kind:"custom",component:l.qPP,serializeValue:c=>c.map(s=>s.id).join(","),deserializeValue:c=>c.split(",").map(s=>({id:s})),getLabel:c=>0===c.length?"":c[0].name?c.map(s=>s.name).join(", "):(0,pn.n)(this.dataService.facet.getFacetValues({filter:{id:{in:c.map(s=>s.id)}}}).mapSingle(({facetValues:s})=>s.items.map(p=>p.name).join(", ")))},label:(0,u.J)("catalog.facet-values"),toFilterInput:c=>({facetValueId:{in:c.map(s=>s.id)}})}).addCustomFieldFilters(this.customFields).connectToRoute(this.route),this.sorts=this.createSortCollection().defaultSort("createdAt","DESC").addSorts([{name:"id"},{name:"createdAt"},{name:"updatedAt"},{name:"name"},{name:"slug"}]).addCustomFieldSorts(this.customFields).connectToRoute(this.route),this.configure({document:l.Qek,getItems:c=>c.products,setVariables:(c,s)=>{const p=this.searchTermControl.value;let _=this.filters.createFilterInput();return p&&(_={name:{contains:p},sku:{contains:p}}),{options:{skip:c,take:s,filter:{..._??{}},filterOperator:p?l.FnJ.OR:l.FnJ.AND,sort:this.sorts.createSortInput()}}},refreshListOnChanges:[this.sorts.valueChanges,this.filters.valueChanges]})}rebuildSearchIndex(){this.dataService.product.reindex().subscribe(({reindex:n})=>{this.notificationService.info((0,u.J)("catalog.reindexing")),this.jobQueueService.addJob(n.id,e=>{if(e.state===l.Zyh.COMPLETED){const a=(new Intl.NumberFormat).format(e.duration||0);this.notificationService.success((0,u.J)("catalog.reindex-successful"),{count:e.result.indexedItemCount,time:a}),this.refresh()}else this.notificationService.error((0,u.J)("catalog.reindex-error"))})})}deleteProduct(n){this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-product"),buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(e=>e?this.dataService.product.deleteProduct(n):F.E),(0,Kl.g)(500)).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"Product"}),this.refresh()},e=>{this.notificationService.error((0,u.J)("common.notify-delete-error"),{entity:"Product"})})}}(oe=Ve).\u0275fac=function(n){return new(n||oe)(t.Y36(l.DoR),t.Y36(l.Z7U),t.Y36(l.gqp),t.Y36(l.u8d))},oe.\u0275cmp=t.Xpm({type:oe,selectors:[["vdr-products-list"]],features:[t.qOj],decls:50,vars:64,consts:[[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","product-list"],["class","button primary mr-1",3,"routerLink",4,"vdrIfPermissions"],["vdrDropdownTrigger","",1,"icon-button"],["shape","ellipsis-vertical"],["vdrPosition","bottom-right"],["type","button","vdrDropdownItem","",3,"click"],["shape","refresh",1,""],["id","product-list",1,"mt-2",3,"items","itemsPerPage","totalItems","currentPage","filters","pageChange","itemsPerPageChange"],["locationId","product-list",3,"hostComponent","selectionManager"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault","sort"],["id","created-at",3,"heading","hiddenByDefault","sort"],["id","updated-at",3,"heading","hiddenByDefault","sort"],["id","image",3,"heading"],["id","name",3,"heading","optional","sort"],["id","slug",3,"heading","sort"],["id","enabled",3,"heading"],["id","number-of-variants",3,"heading"],[3,"customField","sorts",4,"ngFor","ngForOf"],[1,"button","primary","mr-1",3,"routerLink"],["shape","plus"],[1,"image-placeholder"],[3,"src",4,"ngIf","ngIfElse"],["imagePlaceholder",""],[3,"src"],[1,"placeholder"],["shape","image","size","48"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"],["colorType","success",4,"ngIf"],["colorType","warning",4,"ngIf"],["colorType","success"],["colorType","warning"],[3,"customField","sorts"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.qZA()(),t.TgZ(6,"vdr-ab-right"),t._UZ(7,"vdr-action-bar-items",1),t.YNc(8,Wl,4,5,"a",2),t.TgZ(9,"vdr-dropdown")(10,"button",3),t._UZ(11,"clr-icon",4),t.qZA(),t.TgZ(12,"vdr-dropdown-menu",5)(13,"button",6),t.NdJ("click",function(){return e.rebuildSearchIndex()}),t._UZ(14,"clr-icon",7),t._uU(15),t.ALo(16,"translate"),t.qZA()()()()()(),t.TgZ(17,"vdr-data-table-2",8),t.NdJ("pageChange",function(i){return e.setPageNumber(i)})("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(18,"async"),t.ALo(19,"async"),t.ALo(20,"async"),t.ALo(21,"async"),t._UZ(22,"vdr-bulk-action-menu",9)(23,"vdr-dt2-search",10),t.ALo(24,"translate"),t.TgZ(25,"vdr-dt2-column",11),t.ALo(26,"translate"),t.YNc(27,zl,1,1,"ng-template"),t.qZA(),t.TgZ(28,"vdr-dt2-column",12),t.ALo(29,"translate"),t.YNc(30,Xl,2,4,"ng-template"),t.qZA(),t.TgZ(31,"vdr-dt2-column",13),t.ALo(32,"translate"),t.YNc(33,ts,2,4,"ng-template"),t.qZA(),t.TgZ(34,"vdr-dt2-column",14),t.ALo(35,"translate"),t.YNc(36,os,4,2,"ng-template"),t.qZA(),t.TgZ(37,"vdr-dt2-column",15),t.ALo(38,"translate"),t.YNc(39,is,4,4,"ng-template"),t.qZA(),t.TgZ(40,"vdr-dt2-column",16),t.ALo(41,"translate"),t.YNc(42,rs,1,1,"ng-template"),t.qZA(),t.TgZ(43,"vdr-dt2-column",17),t.ALo(44,"translate"),t.YNc(45,ss,2,2,"ng-template"),t.qZA(),t.TgZ(46,"vdr-dt2-column",18),t.ALo(47,"translate"),t.YNc(48,ps,2,6,"ng-template"),t.qZA(),t.YNc(49,us,1,2,"vdr-dt2-custom-field-column",19),t.qZA()),2&n&&(t.xp6(3),t.Q6J("availableLanguageCodes",t.lcZ(4,31,e.availableLanguages$))("currentLanguageCode",t.lcZ(5,33,e.contentLanguage$)),t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(63,ms)),t.xp6(7),t.hij(" ",t.lcZ(16,35,"catalog.rebuild-search-index")," "),t.xp6(2),t.Q6J("items",t.lcZ(18,37,e.items$))("itemsPerPage",t.lcZ(19,39,e.itemsPerPage$))("totalItems",t.lcZ(20,41,e.totalItems$))("currentPage",t.lcZ(21,43,e.currentPage$))("filters",e.filters),t.xp6(5),t.Q6J("hostComponent",e)("selectionManager",e.selectionManager),t.xp6(1),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(24,45,"settings.search-by-product-name-or-sku")),t.xp6(2),t.Q6J("heading",t.lcZ(26,47,"common.id"))("hiddenByDefault",!0)("sort",e.sorts.get("id")),t.xp6(3),t.Q6J("heading",t.lcZ(29,49,"common.created-at"))("hiddenByDefault",!0)("sort",e.sorts.get("createdAt")),t.xp6(3),t.Q6J("heading",t.lcZ(32,51,"common.updated-at"))("hiddenByDefault",!0)("sort",e.sorts.get("updatedAt")),t.xp6(3),t.Q6J("heading",t.lcZ(35,53,"common.image")),t.xp6(3),t.Q6J("heading",t.lcZ(38,55,"catalog.name"))("optional",!1)("sort",e.sorts.get("name")),t.xp6(3),t.Q6J("heading",t.lcZ(41,57,"common.slug"))("sort",e.sorts.get("slug")),t.xp6(3),t.Q6J("heading",t.lcZ(44,59,"common.enabled")),t.xp6(3),t.Q6J("heading",t.lcZ(47,61,"catalog.number-of-variants")),t.xp6(3),t.Q6J("ngForOf",e.customFields))},dependencies:[h.qvL,g.sg,g.O5,P.rH,A.Kk,A.BN,A.mz,H.Y,G.S,ht.J,vt.N,Ct.U,Tt.H,$.H,tt.W,Le.c,mt.e,z.U,at.J,Ne.j,E.z,g.Ov,x.X$,xe.M,ot.H],styles:[".image-col[_ngcontent-%COMP%]{width:70px}.image-placeholder[_ngcontent-%COMP%]{width:50px;height:50px;margin-top:calc(var(--space-unit) * -1);margin-bottom:calc(var(--space-unit) * -1);background-color:var(--color-component-bg-200)}.image-placeholder[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{border-radius:var(--border-radius-img)}.image-placeholder[_ngcontent-%COMP%] .placeholder[_ngcontent-%COMP%]{text-align:center;color:var(--color-grey-300)}.search-form[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%}vdr-product-search-input[_ngcontent-%COMP%]{min-width:300px}@media screen and (max-width: 768px){vdr-product-search-input[_ngcontent-%COMP%]{min-width:100px}}.search-settings-menu[_ngcontent-%COMP%]{margin:0 12px}td.disabled[_ngcontent-%COMP%]{background-color:var(--color-component-bg-200)}.search-index-button[_ngcontent-%COMP%]{position:relative}.search-index-button[_ngcontent-%COMP%] vdr-status-badge[_ngcontent-%COMP%]{right:0;top:0}.run-updates-button[_ngcontent-%COMP%]{position:relative}.run-updates-button[_ngcontent-%COMP%] vdr-status-badge[_ngcontent-%COMP%]{left:10px;top:10px}.edit-button[_ngcontent-%COMP%]{margin-inline-end:24px}.sku[_ngcontent-%COMP%]{color:var(--color-text-300)}"]});var ae,_s=m(37140),gs=m(63661),fs=m(37015);const vs=function(o){return{rate:o}};function Cs(o,n){if(1&o&&(t.TgZ(0,"div",2),t._uU(1),t.ALo(2,"translate"),t.ALo(3,"async"),t.qZA()),2&o){const e=t.oxw();t.xp6(1),t.hij(" ",t.xi3(2,1,"catalog.price-includes-tax-at",t.VKq(6,vs,t.lcZ(3,4,e.taxRate$))),"\n")}}const Ts=function(o,n){return{price:o,rate:n}};function bs(o,n){if(1&o&&(t.TgZ(0,"div",2),t._uU(1),t.ALo(2,"translate"),t.ALo(3,"localeCurrency"),t.ALo(4,"async"),t.ALo(5,"async"),t.qZA()),2&o){const e=t.oxw();t.xp6(1),t.hij(" ",t.xi3(2,1,"catalog.price-with-tax-in-default-zone",t.WLB(11,Ts,t.xi3(3,4,t.lcZ(4,7,e.grossPrice$),e.currencyCode),t.lcZ(5,9,e.taxRate$))),"\n")}}class Se{constructor(n){this.dataService=n,this.priceChange$=new V.X(0),this.taxCategoryIdChange$=new V.X("")}ngOnInit(){const n=this.dataService.settings.getTaxRatesSimple(999,0,"cache-first").mapStream(a=>a.taxRates.items),e=this.dataService.settings.getActiveChannel("cache-first").refetchOnChannelChange().mapStream(a=>a.activeChannel);this.taxRate$=(0,I.a)(e,n,this.taxCategoryIdChange$).pipe((0,v.U)(([a,i,c])=>{const s=a.defaultTaxZone;if(!s)return 0;const p=i.find(_=>_.zone.id===s.id&&_.category.id===c);return p?p.value:0})),this.grossPrice$=(0,I.a)(this.taxRate$,this.priceChange$).pipe((0,v.U)(([a,i])=>Math.round(i*((100+a)/100))))}ngOnChanges(n){"price"in n&&this.priceChange$.next(n.price.currentValue),"taxCategoryId"in n&&this.taxCategoryIdChange$.next(n.taxCategoryId.currentValue)}}var ie;function xs(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.AsE(" ",e.name," (",e.sku,") ")}}function As(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"ng-select",1),t.NdJ("ngModelChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.selectedVariantId=i)})("change",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.onSelect(i))}),t.ALo(1,"async"),t.ALo(2,"translate"),t.YNc(3,xs,1,2,"ng-template",2),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("items",t.lcZ(1,5,e.variants$))("ngModel",e.selectedVariantId)("searchFn",e.searchFn)("clearable",!1)("placeholder",t.lcZ(2,7,"catalog.quick-jump-placeholder"))}}(ae=Se).\u0275fac=function(n){return new(n||ae)(t.Y36(l.DoR))},ae.\u0275cmp=t.Xpm({type:ae,selectors:[["vdr-variant-price-detail"]],inputs:{priceIncludesTax:"priceIncludesTax",price:"price",currencyCode:"currencyCode",taxCategoryId:"taxCategoryId"},features:[t.TTD],decls:5,vars:5,consts:[[1,"clr-control-label"],["class","value",4,"ngIf"],[1,"value"]],template:function(n,e){1&n&&(t.TgZ(0,"label",0),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.YNc(3,Cs,4,8,"div",1),t.YNc(4,bs,6,14,"div",1)),2&n&&(t.xp6(1),t.Oqu(t.lcZ(2,3,"catalog.taxes")),t.xp6(2),t.Q6J("ngIf",e.priceIncludesTax),t.xp6(1),t.Q6J("ngIf",!e.priceIncludesTax))},dependencies:[h.MgK,g.O5,g.Ov,x.X$,he.k],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}.value[_ngcontent-%COMP%]{margin-top:3px}"],changeDetection:0});D.Ps`
106
+ `;class oe extends l.VE7{constructor(n,e,a,i,c,s){super(),this.productDetailService=n,this.formBuilder=e,this.modalService=a,this.notificationService=i,this.dataService=c,this.changeDetector=s,this.customFields=this.getCustomFieldConfig("Product"),this.detailForm=this.formBuilder.group({enabled:!0,name:["",d.kI.required],autoUpdateVariantNames:!0,slug:["",(0,l.Foo)(/^[\p{Letter}0-9._-]+$/)],description:"",facetValueIds:[[]],customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))}),this.assetChanges={},this.createVariantsConfig={groups:[],variants:[],stockLocationId:""},this.updatePermissions=[l.y3$.UpdateCatalog,l.y3$.UpdateProduct]}ngOnInit(){this.init();const n=this.isNew$.pipe((0,b.w)(i=>i?(0,L.of)([]):this.entity$.pipe((0,v.U)(c=>c.facetValues)))),a=this.detailForm.get("facetValueIds").valueChanges.pipe((0,S.x)(),(0,b.w)(i=>this.dataService.facet.getFacetValues({filter:{id:{in:i}}}).mapSingle(({facetValues:c})=>c.items)),(0,r.d)(1));this.facetValues$=(0,Ln.z)(n.pipe((0,Q.q)(1)),n.pipe((0,b.w)(()=>a))),this.productChannels$=this.entity$.pipe((0,v.U)(i=>i.channels))}ngOnDestroy(){this.destroy()}isDefaultChannel(n){return n===nl.z$}assignToChannel(){this.productChannels$.pipe((0,Q.q)(1),(0,b.w)(n=>this.modalService.fromComponent(rt,{size:"lg",locals:{productIds:[this.id],currentChannelIds:n.map(e=>e.id)}}))).subscribe()}removeFromChannel(n){(0,je.D)((0,l.PDO)(this.dataService,n)).pipe((0,b.w)(({channelCode:e})=>this.modalService.dialog({title:(0,u.J)("catalog.remove-product-from-channel"),buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("catalog.remove-from-channel"),translationVars:{channelCode:e},returnValue:!0}]})),(0,b.w)(e=>e?this.dataService.product.removeProductsFromChannel({channelId:n,productIds:[this.id]}):F.E)).subscribe(()=>{this.notificationService.success((0,u.J)("catalog.notify-remove-product-from-channel-success"))},e=>{this.notificationService.error((0,u.J)("catalog.notify-remove-product-from-channel-error"))})}assignVariantToChannel(n){return this.modalService.fromComponent(rt,{size:"lg",locals:{productIds:[this.id],productVariantIds:[n.id],currentChannelIds:n.channels.map(e=>e.id)}}).subscribe()}removeVariantFromChannel({channelId:n,variant:e}){(0,je.D)((0,l.PDO)(this.dataService,n)).pipe((0,b.w)(({channelCode:a})=>this.modalService.dialog({title:(0,u.J)("catalog.remove-product-variant-from-channel"),buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("catalog.remove-from-channel"),translationVars:{channelCode:a},returnValue:!0}]})),(0,b.w)(a=>a?this.dataService.product.removeVariantsFromChannel({channelId:n,productVariantIds:[e.id]}):F.E)).subscribe(()=>{this.notificationService.success((0,u.J)("catalog.notify-remove-variant-from-channel-success"))},a=>{this.notificationService.error((0,u.J)("catalog.notify-remove-variant-from-channel-error"))})}assetsChanged(){return!!Object.values(this.assetChanges).length}updateSlug(n){const e=this.detailForm.get("slug"),a=this.entity?(0,l.ZIM)(this.entity,this.languageCode):void 0,i=!a||!a.slug;e&&e.pristine&&i&&e.setValue((0,R.U)(`${n}`,"-"))}selectProductFacetValue(){this.displayFacetValueModal().subscribe(n=>{if(n){const e=this.detailForm,a=e.value.facetValueIds??[];e.patchValue({facetValueIds:(0,N.T)([...a,...n])}),e.markAsDirty(),this.changeDetector.markForCheck()}})}updateProductOption(n){(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,J.z)(([e,a])=>this.productDetailService.updateProductOption(n,e,a))).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"ProductOption"})},e=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"ProductOption"})})}removeProductFacetValue(n){const e=this.detailForm,a=e.value.facetValueIds??[];e.patchValue({facetValueIds:a.filter(i=>i!==n)}),e.markAsDirty()}displayFacetValueModal(){return this.modalService.fromComponent(yt,{size:"md",closable:!0}).pipe((0,v.U)(n=>n&&n.map(e=>e.id)))}create(){const n=this.detailForm;if(!n.dirty)return;const e=this.getUpdatedProduct({id:"",createdAt:"",updatedAt:"",enabled:!0,languageCode:this.languageCode,name:"",slug:"",featuredAsset:null,assets:[],description:"",translations:[],optionGroups:[],facetValues:[],channels:[]},n,this.languageCode);this.productDetailService.createProductWithVariants(e,this.createVariantsConfig,this.languageCode).subscribe(({createProductVariants:a,productId:i})=>{this.notificationService.success((0,u.J)("common.notify-create-success"),{entity:"Product"}),this.assetChanges={},this.detailForm.markAsPristine(),this.router.navigate(["../",i],{relativeTo:this.route})},a=>{console.error(a),this.notificationService.error((0,u.J)("common.notify-create-error"),{entity:"Product"})})}save(){(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,J.z)(([n,e])=>{const a=this.detailForm;let i;return(a.dirty||this.assetsChanged())&&(i=this.getUpdatedProduct(n,a,e)),this.productDetailService.updateProduct({product:n,languageCode:e,autoUpdate:this.detailForm.get(["autoUpdateVariantNames"])?.value??!1,productInput:i,variantsInput:undefined})})).subscribe(n=>{this.updateSlugAfterSave(n),this.detailForm.markAsPristine(),this.assetChanges={},this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"Product"}),this.changeDetector.markForCheck()},n=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"Product"})})}canDeactivate(){return super.canDeactivate()&&!this.assetChanges.assets&&!this.assetChanges.featuredAsset}setFormValues(n,e){const a=(0,l.ZIM)(n,e);this.detailForm.patchValue({enabled:n.enabled,name:a?a.name:"",slug:a?a.slug:"",description:a?a.description:"",facetValueIds:n.facetValues.map(i=>i.id)}),this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get(["customFields"]),n,a)}getUpdatedProduct(n,e,a){return{...(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.customFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||"",slug:n.slug||"",description:n.description||""}}),assetIds:this.assetChanges.assets?.map(c=>c.id),featuredAssetId:this.assetChanges.featuredAsset?.id,facetValueIds:e.value.facetValueIds}}updateSlugAfterSave(n){const e=n[0],a=this.detailForm.get(["product","slug"]);a&&function i(c){return c.hasOwnProperty("updateProduct")}(e)&&a.setValue(e.updateProduct.slug,{emitEvent:!1})}}(ne=oe).\u0275fac=function(n){return new(n||ne)(t.Y36(pt),t.Y36(d.qu),t.Y36(l.Z7U),t.Y36(l.gqp),t.Y36(l.DoR),t.Y36(t.sBO))},ne.\u0275cmp=t.Xpm({type:ne,selectors:[["vdr-product-detail2"]],features:[t.qOj],decls:68,vars:86,consts:[[1,"flex","clr-flex-row"],[3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","product-detail"],["class","btn btn-primary",3,"disabled","click",4,"ngIf","ngIfElse"],["updateButton",""],[1,"form",3,"formGroup"],["for","visibility",3,"label"],[4,"vdrIfPermissions"],[4,"ngIf"],[3,"title",4,"ngIf"],[3,"title"],[1,"facets"],[3,"facetValue","removable","remove",4,"ngFor","ngForOf"],["class","button-small mt-2",3,"click",4,"vdrIfPermissions"],["type","submit","hidden","","x-data","prevents enter key from triggering other buttons"],[1,"form-grid"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"readonly","input"],["for","slug",3,"label","errors"],["id","slug","type","text","formControlName","slug",3,"readonly"],["for","slug",1,"form-grid-span",3,"label","errors"],["formControlName","description",3,"readonly"],["locationId","product-detail",3,"entity$","detailForm"],[3,"assets","featuredAsset","updatePermissions","change"],[3,"title","paddingX"],[4,"ngIf","ngIfElse"],["variantList",""],["class","mx-3",4,"ngIf"],[1,"btn","btn-primary",3,"disabled","click"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],["type","checkbox","clrToggle","","name","enabled",3,"formControl"],[3,"title",4,"vdrIfMultichannel"],[4,"vdrIfDefaultChannelActive"],[1,"flex","channel-assignment"],[1,"mb-2"],[4,"ngFor","ngForOf"],[1,"button-small",3,"click"],["shape","layers"],["icon","times-circle",3,"iconClick",4,"ngIf"],["icon","times-circle",3,"iconClick"],[3,"channelCode"],[1,"options"],[3,"colorFrom","invert",4,"ngFor","ngForOf"],["class","button-small mt-2",3,"routerLink",4,"vdrIfPermissions"],[3,"colorFrom","invert"],[1,"button-small","mt-2",3,"routerLink"],["shape","pencil"],[3,"facetValue","removable","remove"],[1,"button-small","mt-2",3,"click"],["shape","plus"],[3,"entity"],["clrCheckbox","","type","checkbox","id","auto-update","formControlName","autoUpdateVariantNames"],["entityName","Product",3,"customFields","customFieldsFormGroup","readonly"],[3,"variantsChange"],["dataTableId","product-detail-variants-list",3,"productId","hideLanguageSelect"],[1,"mx-3"],[1,"button",3,"routerLink"],["shape","add-text"]],template:function(n,e){if(1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left"),t._UZ(3,"div",0),t.TgZ(4,"vdr-language-selector",1),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(5,"async"),t.ALo(6,"async"),t.ALo(7,"async"),t.qZA()(),t.TgZ(8,"vdr-ab-right"),t._UZ(9,"vdr-action-bar-items",2),t.YNc(10,Pl,3,4,"button",3),t.ALo(11,"async"),t.YNc(12,Il,1,1,"ng-template",null,4,t.W1O),t.qZA()()(),t.TgZ(14,"form",5)(15,"vdr-page-detail-layout")(16,"vdr-page-detail-sidebar")(17,"vdr-card")(18,"vdr-form-field",6),t.ALo(19,"translate"),t.YNc(20,Dl,5,5,"clr-toggle-wrapper",7),t.qZA()(),t.YNc(21,Jl,2,0,"ng-container",8),t.ALo(22,"async"),t.YNc(23,El,7,8,"vdr-card",9),t.TgZ(24,"vdr-card",10),t.ALo(25,"translate"),t.TgZ(26,"div",11),t.YNc(27,Vl,2,4,"vdr-facet-value-chip",12),t.ALo(28,"async"),t.qZA(),t.TgZ(29,"div"),t.YNc(30,Sl,4,3,"button",13),t.qZA()(),t.YNc(31,wl,2,1,"vdr-card",8),t.ALo(32,"async"),t.qZA(),t.TgZ(33,"vdr-page-block"),t._UZ(34,"button",14),t.TgZ(35,"vdr-card")(36,"div",15)(37,"div")(38,"vdr-form-field",16),t.ALo(39,"translate"),t.TgZ(40,"input",17),t.NdJ("input",function(i){return e.updateSlug(i.target.value)}),t.ALo(41,"hasPermission"),t.qZA()(),t.YNc(42,Ql,6,3,"div",8),t.ALo(43,"async"),t.qZA(),t.TgZ(44,"vdr-form-field",18),t.ALo(45,"translate"),t.ALo(46,"translate"),t._UZ(47,"input",19),t.ALo(48,"hasPermission"),t.qZA(),t.TgZ(49,"vdr-form-field",20),t.ALo(50,"translate"),t.ALo(51,"translate"),t._UZ(52,"vdr-rich-text-editor",21),t.ALo(53,"hasPermission"),t.qZA()()(),t.YNc(54,ql,4,8,"vdr-card",9),t._UZ(55,"vdr-custom-detail-component-host",22),t.TgZ(56,"vdr-card",10),t.ALo(57,"translate"),t.TgZ(58,"vdr-assets",23),t.NdJ("change",function(i){return e.assetChanges=i}),t.qZA()(),t.TgZ(59,"vdr-card",24),t.ALo(60,"translate"),t.ALo(61,"async"),t.YNc(62,$l,2,0,"div",25),t.ALo(63,"async"),t.YNc(64,Yl,1,2,"ng-template",null,26,t.W1O),t.YNc(66,Bl,5,5,"div",27),t.ALo(67,"async"),t.qZA()()()()),2&n){const a=t.MAs(13),i=t.MAs(65);let c;t.xp6(4),t.Q6J("disabled",t.lcZ(5,35,e.isNew$))("availableLanguageCodes",t.lcZ(6,37,e.availableLanguages$))("currentLanguageCode",t.lcZ(7,39,e.languageCode$)),t.xp6(6),t.Q6J("ngIf",t.lcZ(11,41,e.isNew$))("ngIfElse",a),t.xp6(4),t.Q6J("formGroup",e.detailForm),t.xp6(4),t.Q6J("label",t.lcZ(19,43,"catalog.visibility")),t.xp6(2),t.Q6J("vdrIfPermissions",e.updatePermissions),t.xp6(1),t.Q6J("ngIf",!t.lcZ(22,45,e.isNew$)),t.xp6(2),t.Q6J("ngIf",null==e.entity?null:e.entity.optionGroups.length),t.xp6(1),t.Q6J("title",t.lcZ(25,47,"catalog.facets")),t.xp6(3),t.Q6J("ngForOf",t.lcZ(28,49,e.facetValues$)),t.xp6(3),t.Q6J("vdrIfPermissions",e.updatePermissions),t.xp6(1),t.Q6J("ngIf",t.lcZ(32,51,e.entity$)),t.xp6(7),t.Q6J("label",t.lcZ(39,53,"catalog.product-name")),t.xp6(2),t.Q6J("readonly",!t.lcZ(41,55,e.updatePermissions)),t.xp6(2),t.Q6J("ngIf",!1===t.lcZ(43,57,e.isNew$)&&(null==(c=e.detailForm.get(t.DdM(81,jl)))?null:c.dirty)),t.xp6(2),t.Q6J("label",t.lcZ(45,59,"catalog.slug"))("errors",t.VKq(82,Nn,t.lcZ(46,61,"catalog.slug-pattern-error"))),t.xp6(3),t.Q6J("readonly",!t.lcZ(48,63,e.updatePermissions)),t.xp6(2),t.Q6J("label",t.lcZ(50,65,"common.description"))("errors",t.VKq(84,Nn,t.lcZ(51,67,"catalog.slug-pattern-error"))),t.xp6(3),t.Q6J("readonly",!t.lcZ(53,69,e.updatePermissions)),t.xp6(2),t.Q6J("ngIf",e.customFields.length),t.xp6(1),t.Q6J("entity$",e.entity$)("detailForm",e.detailForm),t.xp6(1),t.Q6J("title",t.lcZ(57,71,"catalog.assets")),t.xp6(2),t.Q6J("assets",e.assetChanges.assets||(null==e.entity?null:e.entity.assets))("featuredAsset",e.assetChanges.featuredAsset||(null==e.entity?null:e.entity.featuredAsset))("updatePermissions",e.updatePermissions),t.xp6(1),t.Q6J("title",t.lcZ(60,73,"catalog.product-variants"))("paddingX",t.lcZ(61,75,e.isNew$)),t.xp6(3),t.Q6J("ngIf",t.lcZ(63,77,e.isNew$))("ngIfElse",i),t.xp6(4),t.Q6J("ngIf",!1===t.lcZ(67,79,e.isNew$))}},dependencies:[h.qvL,h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.Fj,d.Wl,d.JJ,d.JL,d.oH,d.sg,d.u,P.rH,A.Kk,A.BN,A.mz,H.Y,Ze.q,q.h,y.y,kn.J,G.S,Cn.Y,$.H,ol.u,tt.W,al.n,il.M,ut.y,Oe.C,E.z,At.D,Ie.T,Fe.W,nt.A,Ee,bt,ee,g.Ov,x.X$,Xe.U,B.j,un.E],styles:["[_nghost-%COMP%] trix-toolbar{top:24px}.facets[_ngcontent-%COMP%], .options[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:3px}vdr-action-bar[_ngcontent-%COMP%] clr-toggle-wrapper[_ngcontent-%COMP%]{margin-top:12px}.variant-filter[_ngcontent-%COMP%]{flex:1;display:flex}.variant-filter[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{flex:1;max-width:initial;border-radius:3px 0 0 3px!important}.variant-filter[_ngcontent-%COMP%] .icon-button[_ngcontent-%COMP%]{border:1px solid var(--color-component-border-300);background-color:var(--color-component-bg-100);border-radius:0 3px 3px 0;border-inline-start:none}.group-name[_ngcontent-%COMP%]{padding-inline-end:6px}.view-mode[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:space-between}@media screen and (min-width: 768px){.view-mode[_ngcontent-%COMP%]{flex-direction:row}}.edit-variants-btn[_ngcontent-%COMP%]{margin-top:0}.channel-assignment[_ngcontent-%COMP%]{flex-wrap:wrap;max-height:144px}.pagination-row[_ngcontent-%COMP%]{display:flex;align-items:baseline;justify-content:space-between}"],changeDetection:0});const Jn={location:"product-list",label:(0,u.J)("common.delete"),icon:"trash",iconClass:"is-danger",requiresPermission:o=>o.includes(l.y3$.DeleteProduct)||o.includes(l.y3$.DeleteCatalog),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.DoR),s=o.get(l.gqp);i.dialog({title:(0,u.J)("catalog.confirm-bulk-delete-products"),translationVars:{count:n.length},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(p=>p?c.product.deleteProducts((0,N.T)(n.map(_=>_.id))):F.E)).subscribe(p=>{let _=0;const f=[];for(const T of p.deleteProducts)T.result===l.PcR.DELETED?_++:T.message&&f.push(T.message);0<_&&s.success((0,u.J)("catalog.notify-bulk-delete-products-success"),{count:_}),0<f.length&&s.error(f.join("\n")),e.refresh(),a()})}},Un={location:"product-list",label:(0,u.J)("catalog.assign-to-channel"),icon:"layers",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),isVisible:({injector:o})=>(0,l.SDV)(o.get(l.DoR)),onClick:({injector:o,selection:n,clearSelection:e})=>{o.get(l.Z7U).fromComponent(rt,{size:"lg",locals:{productIds:(0,N.T)(n.map(i=>i.id)),currentChannelIds:[]}}).subscribe(i=>{i&&e()})}},Mn=(0,l.RBx)({location:"product-list",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),getItemName:o=>o.name,bulkRemoveFromChannel:(o,n,e)=>o.product.removeProductsFromChannel({channelId:e,productIds:n}).pipe((0,v.U)(a=>a.removeProductsFromChannel))}),Rn={location:"product-list",label:(0,u.J)("catalog.edit-facet-values"),icon:"tag",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.gqp),s="product",p=(0,N.T)(n.map(_=>_.id));return i.fromComponent(Rt,{size:"xl",locals:{mode:s,ids:p}}).subscribe(_=>{_&&(c.success((0,u.J)("common.notify-bulk-update-success"),{count:n.length,entity:"Products"}),a())})}};var ae,Hl=m(69249);const Wl=function(){return["./create"]};function zl(o,n){1&o&&(t.TgZ(0,"a",20),t._UZ(1,"clr-icon",21),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Wl)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.create-new-product")," "))}function Xl(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.id," ")}}function ts(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.createdAt,"short")," ")}}function es(o,n){if(1&o&&(t._uU(0),t.ALo(1,"localeDate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,e.updatedAt,"short")," ")}}function ns(o,n){if(1&o&&(t._UZ(0,"img",25),t.ALo(1,"assetPreview")),2&o){const e=n.ngIf;t.Q6J("src",t.xi3(1,1,e,"tiny"),t.LSH)}}function os(o,n){1&o&&(t.TgZ(0,"div",26),t._UZ(1,"clr-icon",27),t.qZA())}function as(o,n){if(1&o&&(t.TgZ(0,"div",22),t.YNc(1,ns,2,4,"img",23),t.YNc(2,os,2,0,"ng-template",null,24,t.W1O),t.qZA()),2&o){const e=n.item,a=t.MAs(3);t.xp6(1),t.Q6J("ngIf",e.featuredAsset)("ngIfElse",a)}}const is=function(o){return["./",o]};function rs(o,n){if(1&o&&(t.TgZ(0,"a",28)(1,"span"),t._uU(2),t.qZA(),t._UZ(3,"clr-icon",29),t.qZA()),2&o){const e=n.item;t.Q6J("routerLink",t.VKq(2,is,e.id)),t.xp6(2),t.Oqu(e.name)}}function cs(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.hij(" ",e.slug," ")}}function ls(o,n){1&o&&(t.TgZ(0,"vdr-chip",32),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.enabled")))}function ss(o,n){1&o&&(t.TgZ(0,"vdr-chip",33),t._uU(1),t.ALo(2,"translate"),t.qZA()),2&o&&(t.xp6(1),t.Oqu(t.lcZ(2,1,"common.disabled")))}function ds(o,n){if(1&o&&(t.YNc(0,ls,3,3,"vdr-chip",30),t.YNc(1,ss,3,3,"vdr-chip",31)),2&o){const e=n.item;t.Q6J("ngIf",e.enabled),t.xp6(1),t.Q6J("ngIf",!e.enabled)}}const ps=function(o){return{count:o}};function us(o,n){if(1&o&&(t._uU(0),t.ALo(1,"translate")),2&o){const e=n.item;t.hij(" ",t.xi3(1,1,"catalog.variant-count",t.VKq(4,ps,null==e.variantList?null:e.variantList.totalItems))," ")}}function ms(o,n){if(1&o&&t._UZ(0,"vdr-dt2-custom-field-column",34),2&o){const e=n.$implicit,a=t.oxw();t.Q6J("customField",e)("sorts",a.sorts)}}const _s=function(){return["CreateCatalog","CreateProduct"]};class Ve extends l.$ms{constructor(n,e,a,i){super(),this.dataService=n,this.modalService=e,this.notificationService=a,this.jobQueueService=i,this.pendingSearchIndexUpdates=0,this.customFields=this.getCustomFieldConfig("Product"),this.filters=this.createFilterCollection().addIdFilter().addDateFilters().addFilters([{name:"enabled",type:{kind:"boolean"},label:(0,u.J)("common.enabled"),filterField:"enabled"},{name:"slug",type:{kind:"text"},label:(0,u.J)("common.slug"),filterField:"slug"}]).addFilter({name:"facetValues",type:{kind:"custom",component:l.qPP,serializeValue:c=>c.map(s=>s.id).join(","),deserializeValue:c=>c.split(",").map(s=>({id:s})),getLabel:c=>0===c.length?"":c[0].name?c.map(s=>s.name).join(", "):(0,pn.n)(this.dataService.facet.getFacetValues({filter:{id:{in:c.map(s=>s.id)}}}).mapSingle(({facetValues:s})=>s.items.map(p=>p.name).join(", ")))},label:(0,u.J)("catalog.facet-values"),toFilterInput:c=>({facetValueId:{in:c.map(s=>s.id)}})}).addCustomFieldFilters(this.customFields).connectToRoute(this.route),this.sorts=this.createSortCollection().defaultSort("createdAt","DESC").addSorts([{name:"id"},{name:"createdAt"},{name:"updatedAt"},{name:"name"},{name:"slug"}]).addCustomFieldSorts(this.customFields).connectToRoute(this.route),this.configure({document:l.Qek,getItems:c=>c.products,setVariables:(c,s)=>{const p=this.searchTermControl.value;let _=this.filters.createFilterInput();return p&&(_={name:{contains:p},sku:{contains:p}}),{options:{skip:c,take:s,filter:{..._??{}},filterOperator:p?l.FnJ.OR:l.FnJ.AND,sort:this.sorts.createSortInput()}}},refreshListOnChanges:[this.sorts.valueChanges,this.filters.valueChanges]})}rebuildSearchIndex(){this.dataService.product.reindex().subscribe(({reindex:n})=>{this.notificationService.info((0,u.J)("catalog.reindexing")),this.jobQueueService.addJob(n.id,e=>{if(e.state===l.Zyh.COMPLETED){const a=(new Intl.NumberFormat).format(e.duration||0);this.notificationService.success((0,u.J)("catalog.reindex-successful"),{count:e.result.indexedItemCount,time:a}),this.refresh()}else this.notificationService.error((0,u.J)("catalog.reindex-error"))})})}deleteProduct(n){this.modalService.dialog({title:(0,u.J)("catalog.confirm-delete-product"),buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(e=>e?this.dataService.product.deleteProduct(n):F.E),(0,Hl.g)(500)).subscribe(()=>{this.notificationService.success((0,u.J)("common.notify-delete-success"),{entity:"Product"}),this.refresh()},e=>{this.notificationService.error((0,u.J)("common.notify-delete-error"),{entity:"Product"})})}}(ae=Ve).\u0275fac=function(n){return new(n||ae)(t.Y36(l.DoR),t.Y36(l.Z7U),t.Y36(l.gqp),t.Y36(l.u8d))},ae.\u0275cmp=t.Xpm({type:ae,selectors:[["vdr-products-list"]],features:[t.qOj],decls:50,vars:64,consts:[[3,"availableLanguageCodes","currentLanguageCode","languageCodeChange"],["locationId","product-list"],["class","button primary mr-1",3,"routerLink",4,"vdrIfPermissions"],["vdrDropdownTrigger","",1,"icon-button"],["shape","ellipsis-vertical"],["vdrPosition","bottom-right"],["type","button","vdrDropdownItem","",3,"click"],["shape","refresh",1,""],["id","product-list",1,"mt-2",3,"items","itemsPerPage","totalItems","currentPage","filters","pageChange","itemsPerPageChange"],["locationId","product-list",3,"hostComponent","selectionManager"],[3,"searchTermControl","searchTermPlaceholder"],["id","id",3,"heading","hiddenByDefault","sort"],["id","created-at",3,"heading","hiddenByDefault","sort"],["id","updated-at",3,"heading","hiddenByDefault","sort"],["id","image",3,"heading"],["id","name",3,"heading","optional","sort"],["id","slug",3,"heading","sort"],["id","enabled",3,"heading"],["id","number-of-variants",3,"heading"],[3,"customField","sorts",4,"ngFor","ngForOf"],[1,"button","primary","mr-1",3,"routerLink"],["shape","plus"],[1,"image-placeholder"],[3,"src",4,"ngIf","ngIfElse"],["imagePlaceholder",""],[3,"src"],[1,"placeholder"],["shape","image","size","48"],[1,"button-ghost",3,"routerLink"],["shape","arrow right"],["colorType","success",4,"ngIf"],["colorType","warning",4,"ngIf"],["colorType","success"],["colorType","warning"],[3,"customField","sorts"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left")(3,"vdr-language-selector",0),t.NdJ("languageCodeChange",function(i){return e.setLanguage(i)}),t.ALo(4,"async"),t.ALo(5,"async"),t.qZA()(),t.TgZ(6,"vdr-ab-right"),t._UZ(7,"vdr-action-bar-items",1),t.YNc(8,zl,4,5,"a",2),t.TgZ(9,"vdr-dropdown")(10,"button",3),t._UZ(11,"clr-icon",4),t.qZA(),t.TgZ(12,"vdr-dropdown-menu",5)(13,"button",6),t.NdJ("click",function(){return e.rebuildSearchIndex()}),t._UZ(14,"clr-icon",7),t._uU(15),t.ALo(16,"translate"),t.qZA()()()()()(),t.TgZ(17,"vdr-data-table-2",8),t.NdJ("pageChange",function(i){return e.setPageNumber(i)})("itemsPerPageChange",function(i){return e.setItemsPerPage(i)}),t.ALo(18,"async"),t.ALo(19,"async"),t.ALo(20,"async"),t.ALo(21,"async"),t._UZ(22,"vdr-bulk-action-menu",9)(23,"vdr-dt2-search",10),t.ALo(24,"translate"),t.TgZ(25,"vdr-dt2-column",11),t.ALo(26,"translate"),t.YNc(27,Xl,1,1,"ng-template"),t.qZA(),t.TgZ(28,"vdr-dt2-column",12),t.ALo(29,"translate"),t.YNc(30,ts,2,4,"ng-template"),t.qZA(),t.TgZ(31,"vdr-dt2-column",13),t.ALo(32,"translate"),t.YNc(33,es,2,4,"ng-template"),t.qZA(),t.TgZ(34,"vdr-dt2-column",14),t.ALo(35,"translate"),t.YNc(36,as,4,2,"ng-template"),t.qZA(),t.TgZ(37,"vdr-dt2-column",15),t.ALo(38,"translate"),t.YNc(39,rs,4,4,"ng-template"),t.qZA(),t.TgZ(40,"vdr-dt2-column",16),t.ALo(41,"translate"),t.YNc(42,cs,1,1,"ng-template"),t.qZA(),t.TgZ(43,"vdr-dt2-column",17),t.ALo(44,"translate"),t.YNc(45,ds,2,2,"ng-template"),t.qZA(),t.TgZ(46,"vdr-dt2-column",18),t.ALo(47,"translate"),t.YNc(48,us,2,6,"ng-template"),t.qZA(),t.YNc(49,ms,1,2,"vdr-dt2-custom-field-column",19),t.qZA()),2&n&&(t.xp6(3),t.Q6J("availableLanguageCodes",t.lcZ(4,31,e.availableLanguages$))("currentLanguageCode",t.lcZ(5,33,e.contentLanguage$)),t.xp6(5),t.Q6J("vdrIfPermissions",t.DdM(63,_s)),t.xp6(7),t.hij(" ",t.lcZ(16,35,"catalog.rebuild-search-index")," "),t.xp6(2),t.Q6J("items",t.lcZ(18,37,e.items$))("itemsPerPage",t.lcZ(19,39,e.itemsPerPage$))("totalItems",t.lcZ(20,41,e.totalItems$))("currentPage",t.lcZ(21,43,e.currentPage$))("filters",e.filters),t.xp6(5),t.Q6J("hostComponent",e)("selectionManager",e.selectionManager),t.xp6(1),t.Q6J("searchTermControl",e.searchTermControl)("searchTermPlaceholder",t.lcZ(24,45,"settings.search-by-product-name-or-sku")),t.xp6(2),t.Q6J("heading",t.lcZ(26,47,"common.id"))("hiddenByDefault",!0)("sort",e.sorts.get("id")),t.xp6(3),t.Q6J("heading",t.lcZ(29,49,"common.created-at"))("hiddenByDefault",!0)("sort",e.sorts.get("createdAt")),t.xp6(3),t.Q6J("heading",t.lcZ(32,51,"common.updated-at"))("hiddenByDefault",!0)("sort",e.sorts.get("updatedAt")),t.xp6(3),t.Q6J("heading",t.lcZ(35,53,"common.image")),t.xp6(3),t.Q6J("heading",t.lcZ(38,55,"catalog.name"))("optional",!1)("sort",e.sorts.get("name")),t.xp6(3),t.Q6J("heading",t.lcZ(41,57,"common.slug"))("sort",e.sorts.get("slug")),t.xp6(3),t.Q6J("heading",t.lcZ(44,59,"common.enabled")),t.xp6(3),t.Q6J("heading",t.lcZ(47,61,"catalog.number-of-variants")),t.xp6(3),t.Q6J("ngForOf",e.customFields))},dependencies:[h.qvL,g.sg,g.O5,P.rH,A.Kk,A.BN,A.mz,H.Y,G.S,ht.J,vt.N,Ct.U,Tt.H,$.H,tt.W,Le.c,mt.e,z.U,at.J,ke.j,E.z,g.Ov,x.X$,Ae.M,ot.H],styles:[".image-col[_ngcontent-%COMP%]{width:70px}.image-placeholder[_ngcontent-%COMP%]{width:50px;height:50px;margin-top:calc(var(--space-unit) * -1);margin-bottom:calc(var(--space-unit) * -1);background-color:var(--color-component-bg-200)}.image-placeholder[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{border-radius:var(--border-radius-img)}.image-placeholder[_ngcontent-%COMP%] .placeholder[_ngcontent-%COMP%]{text-align:center;color:var(--color-grey-300)}.search-form[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%}vdr-product-search-input[_ngcontent-%COMP%]{min-width:300px}@media screen and (max-width: 768px){vdr-product-search-input[_ngcontent-%COMP%]{min-width:100px}}.search-settings-menu[_ngcontent-%COMP%]{margin:0 12px}td.disabled[_ngcontent-%COMP%]{background-color:var(--color-component-bg-200)}.search-index-button[_ngcontent-%COMP%]{position:relative}.search-index-button[_ngcontent-%COMP%] vdr-status-badge[_ngcontent-%COMP%]{right:0;top:0}.run-updates-button[_ngcontent-%COMP%]{position:relative}.run-updates-button[_ngcontent-%COMP%] vdr-status-badge[_ngcontent-%COMP%]{left:10px;top:10px}.edit-button[_ngcontent-%COMP%]{margin-inline-end:24px}.sku[_ngcontent-%COMP%]{color:var(--color-text-300)}"]});var ie,gs=m(37140),fs=m(63661),hs=m(37015);const Cs=function(o){return{rate:o}};function Ts(o,n){if(1&o&&(t.TgZ(0,"div",2),t._uU(1),t.ALo(2,"translate"),t.ALo(3,"async"),t.qZA()),2&o){const e=t.oxw();t.xp6(1),t.hij(" ",t.xi3(2,1,"catalog.price-includes-tax-at",t.VKq(6,Cs,t.lcZ(3,4,e.taxRate$))),"\n")}}const bs=function(o,n){return{price:o,rate:n}};function xs(o,n){if(1&o&&(t.TgZ(0,"div",2),t._uU(1),t.ALo(2,"translate"),t.ALo(3,"localeCurrency"),t.ALo(4,"async"),t.ALo(5,"async"),t.qZA()),2&o){const e=t.oxw();t.xp6(1),t.hij(" ",t.xi3(2,1,"catalog.price-with-tax-in-default-zone",t.WLB(11,bs,t.xi3(3,4,t.lcZ(4,7,e.grossPrice$),e.currencyCode),t.lcZ(5,9,e.taxRate$))),"\n")}}class Se{constructor(n){this.dataService=n,this.priceChange$=new V.X(0),this.taxCategoryIdChange$=new V.X("")}ngOnInit(){const n=this.dataService.settings.getTaxRatesSimple(999,0,"cache-first").mapStream(a=>a.taxRates.items),e=this.dataService.settings.getActiveChannel("cache-first").refetchOnChannelChange().mapStream(a=>a.activeChannel);this.taxRate$=(0,I.a)(e,n,this.taxCategoryIdChange$).pipe((0,v.U)(([a,i,c])=>{const s=a.defaultTaxZone;if(!s)return 0;const p=i.find(_=>_.zone.id===s.id&&_.category.id===c);return p?p.value:0})),this.grossPrice$=(0,I.a)(this.taxRate$,this.priceChange$).pipe((0,v.U)(([a,i])=>Math.round(i*((100+a)/100))))}ngOnChanges(n){"price"in n&&this.priceChange$.next(n.price.currentValue),"taxCategoryId"in n&&this.taxCategoryIdChange$.next(n.taxCategoryId.currentValue)}}var re;function As(o,n){if(1&o&&t._uU(0),2&o){const e=n.item;t.AsE(" ",e.name," (",e.sku,") ")}}function Zs(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"ng-select",1),t.NdJ("ngModelChange",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.selectedVariantId=i)})("change",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.onSelect(i))}),t.ALo(1,"async"),t.ALo(2,"translate"),t.YNc(3,As,1,2,"ng-template",2),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("items",t.lcZ(1,5,e.variants$))("ngModel",e.selectedVariantId)("searchFn",e.searchFn)("clearable",!1)("placeholder",t.lcZ(2,7,"catalog.quick-jump-placeholder"))}}(ie=Se).\u0275fac=function(n){return new(n||ie)(t.Y36(l.DoR))},ie.\u0275cmp=t.Xpm({type:ie,selectors:[["vdr-variant-price-detail"]],inputs:{priceIncludesTax:"priceIncludesTax",price:"price",currencyCode:"currencyCode",taxCategoryId:"taxCategoryId"},features:[t.TTD],decls:5,vars:5,consts:[[1,"clr-control-label"],["class","value",4,"ngIf"],[1,"value"]],template:function(n,e){1&n&&(t.TgZ(0,"label",0),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.YNc(3,Ts,4,8,"div",1),t.YNc(4,xs,6,14,"div",1)),2&n&&(t.xp6(1),t.Oqu(t.lcZ(2,3,"catalog.taxes")),t.xp6(2),t.Q6J("ngIf",e.priceIncludesTax),t.xp6(1),t.Q6J("ngIf",!e.priceIncludesTax))},dependencies:[h.MgK,g.O5,g.Ov,x.X$,ve.k],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column}.value[_ngcontent-%COMP%]{margin-top:3px}"],changeDetection:0});D.Ps`
107
107
  query GetProductVariantsQuickJump($id: ID!) {
108
108
  product(id: $id) {
109
109
  id
@@ -114,7 +114,7 @@
114
114
  }
115
115
  }
116
116
  }
117
- `;class we{constructor(n,e){this.dataService=n,this.router=e,this.searchFn=(a,i)=>i.name.toLowerCase().includes(a.toLowerCase())||i.sku.toLowerCase().includes(a.toLowerCase())}ngOnInit(){this.variants$=this.dataService.query(l.aAr,{id:this.productId}).mapSingle(n=>n.product?.variants??[])}onSelect(n){n&&this.router.navigate(["catalog","products",this.productId,"variants",n.id]).then(()=>this.selectedVariantId=void 0)}}(ie=we).\u0275fac=function(n){return new(n||ie)(t.Y36(l.DoR),t.Y36(P.F0))},ie.\u0275cmp=t.Xpm({type:ie,selectors:[["vdr-product-variant-quick-jump"]],inputs:{productId:"productId"},decls:2,vars:3,consts:[["appendTo","body","bindValue","id",3,"items","ngModel","searchFn","clearable","placeholder","ngModelChange","change",4,"ngIf"],["appendTo","body","bindValue","id",3,"items","ngModel","searchFn","clearable","placeholder","ngModelChange","change"],["ng-option-tmp",""]],template:function(n,e){if(1&n&&(t.YNc(0,As,4,9,"ng-select",0),t.ALo(1,"async")),2&n){let a;t.Q6J("ngIf",(null==(a=t.lcZ(1,1,e.variants$))?null:a.length)>1)}},dependencies:[g.O5,d.JJ,d.On,_e.w9,_e.ir,g.Ov,x.X$],changeDetection:0});var re,Zs=m(90467);function Ps(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-language-selector",8),t.NdJ("languageCodeChange",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.setLanguage(i))}),t.ALo(1,"async"),t.ALo(2,"async"),t.qZA()}if(2&o){const e=t.oxw().ngIf,a=t.oxw();t.Q6J("disabled",t.lcZ(1,3,a.isNew$))("availableLanguageCodes",e)("currentLanguageCode",t.lcZ(2,5,a.languageCode$))}}function Os(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Ps,3,7,"vdr-language-selector",7),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length>1)}}function Is(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",9),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",(e.detailForm.invalid||e.stockLevelsForm.invalid||e.pricesForm.invalid||e.detailForm.pristine&&e.stockLevelsForm.pristine&&e.pricesForm.pristine)&&!e.assetsChanged()),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}const Fs=function(){return["enabled"]};function Ds(o,n){if(1&o&&(t.TgZ(0,"clr-toggle-wrapper"),t._UZ(1,"input",38),t.TgZ(2,"label"),t._uU(3),t.ALo(4,"translate"),t.qZA()()),2&o){const e=t.oxw(2);t.xp6(1),t.Q6J("formControl",e.detailForm.get(t.DdM(4,Fs))),t.xp6(2),t.Oqu(t.lcZ(4,2,"common.enabled"))}}function ys(o,n){if(1&o&&(t.TgZ(0,"vdr-chip",42)(1,"span"),t._uU(2),t.qZA(),t._uU(3),t.qZA()),2&o){const e=n.$implicit,a=t.oxw(3);t.Q6J("colorFrom",a.optionGroupCode(e.groupId))("invert",!0),t.xp6(2),t.hij("",a.optionGroupCode(e.groupId),":"),t.xp6(1),t.hij(" ",a.optionName(e)," ")}}const Ls=function(){return["../../","options"]};function Ns(o,n){1&o&&(t.TgZ(0,"a",43),t._UZ(1,"clr-icon",44),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,Ls)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.edit-options")," "))}function ks(o,n){if(1&o&&(t.TgZ(0,"vdr-card",14),t.ALo(1,"translate"),t.TgZ(2,"div",39),t.YNc(3,ys,4,4,"vdr-chip",40),t.ALo(4,"sort"),t.qZA(),t.TgZ(5,"div"),t.YNc(6,Ns,4,5,"a",41),t.qZA()()),2&o){const e=t.oxw().ngIf,a=t.oxw();t.Q6J("title",t.lcZ(1,3,"catalog.product-options")),t.xp6(3),t.Q6J("ngForOf",t.xi3(4,5,e.options,"groupId")),t.xp6(3),t.Q6J("vdrIfPermissions",a.updatePermissions)}}function Js(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-facet-value-chip",45),t.NdJ("remove",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.removeFacetValue(c.id))}),t.ALo(1,"hasPermission"),t.qZA()}if(2&o){const e=n.$implicit,a=t.oxw(2);t.Q6J("facetValue",e)("removable",t.lcZ(1,2,a.updatePermissions))}}function Us(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",46),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectFacetValue())}),t._UZ(1,"clr-icon",47),t._uU(2),t.ALo(3,"translate"),t.qZA()}2&o&&(t.xp6(2),t.hij(" ",t.lcZ(3,1,"catalog.add-facets")," "))}function Ms(o,n){if(1&o&&t._UZ(0,"vdr-page-entity-info",48),2&o){const e=n.ngIf;t.Q6J("entity",e)}}function Rs(o,n){if(1&o&&(t.TgZ(0,"vdr-card",14),t.ALo(1,"translate"),t._UZ(2,"vdr-tabbed-custom-fields",49),t.ALo(3,"hasPermission"),t.qZA()),2&o){const e=t.oxw(2);t.Q6J("title",t.lcZ(1,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.detailForm.get("customFields"))("readonly",!t.lcZ(3,6,e.updatePermissions))}}function Es(o,n){if(1&o&&(t.TgZ(0,"option",33),t._uU(1),t.qZA()),2&o){const e=n.$implicit;t.Q6J("value",e.id),t.xp6(1),t.hij(" ",e.name," ")}}function Vs(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div")(1,"button",55),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().$implicit,c=t.oxw(2);return t.KtG(c.toggleDeletePrice(i.get("delete")))}),t._UZ(2,"clr-icon",56),t.qZA()()}if(2&o){const e=t.oxw().$implicit,a=t.oxw(2);t.xp6(1),t.Q6J("disabled",e.value.currencyCode===a.channelDefaultCurrencyCode)}}function Ss(o,n){if(1&o&&(t.TgZ(0,"div",50)(1,"vdr-form-field",51),t.ALo(2,"translate"),t.ALo(3,"translate"),t.TgZ(4,"div",52),t._UZ(5,"vdr-currency-input",53),t.ALo(6,"hasPermission"),t.YNc(7,Vs,3,1,"div",2),t.qZA()(),t._UZ(8,"vdr-variant-price-detail",54),t.ALo(9,"async"),t.qZA()),2&o){const e=n.$implicit,a=t.oxw(2);t.Q6J("formGroup",e),t.xp6(1),t.Q6J("label",t.lcZ(2,12,"catalog.price")+(1<a.pricesForm.length?" ("+e.value.currencyCode+")":""))("tooltip",1<a.pricesForm.length&&e.value.currencyCode===a.channelDefaultCurrencyCode?t.lcZ(3,14,"catalog.default-currency"):void 0),t.xp6(3),t.ekj("pending-deletion",!0===e.value.delete),t.xp6(1),t.Q6J("currencyCode",e.value.currencyCode)("readonly",!t.lcZ(6,16,a.updatePermissions)||!0===e.value.delete),t.xp6(2),t.Q6J("ngIf",1<a.pricesForm.controls.length),t.xp6(1),t.Q6J("price",e.value.price)("currencyCode",e.value.currencyCode)("priceIncludesTax",t.lcZ(9,18,a.channelPriceIncludesTax$))("taxCategoryId",a.detailForm.get("taxCategoryId").value)}}function ws(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",60),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(4);return t.KtG(s.addPriceInCurrency(c))}),t._uU(1),t.ALo(2,"localeCurrencyName"),t.qZA()}if(2&o){const e=n.$implicit;t.xp6(1),t.hij(" ",t.lcZ(2,1,e)," ")}}function Qs(o,n){if(1&o&&(t.TgZ(0,"div")(1,"vdr-dropdown")(2,"button",57),t._UZ(3,"clr-icon",47),t._uU(4),t.ALo(5,"translate"),t._UZ(6,"clr-icon",58),t.qZA(),t.TgZ(7,"vdr-dropdown-menu"),t.YNc(8,ws,3,3,"button",59),t.qZA()()()),2&o){const e=t.oxw().ngIf;t.xp6(4),t.hij(" ",t.lcZ(5,2,"catalog.add-price-in-another-currency")," "),t.xp6(4),t.Q6J("ngForOf",e)}}function qs(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Qs,9,4,"div",2),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length)}}function $s(o,n){if(1&o&&(t.TgZ(0,"div",61)(1,"vdr-form-field",62),t.ALo(2,"translate"),t._UZ(3,"input",63),t.ALo(4,"hasPermission"),t.qZA(),t.TgZ(5,"vdr-form-item",64),t.ALo(6,"translate"),t._uU(7),t.qZA()()),2&o){const e=n.$implicit,a=t.oxw(2);let i,c,s,p,_;t.Q6J("formGroup",e),t.xp6(1),t.Q6J("label",(null==(i=e.get("stockLocationName"))?null:i.value)+": "+t.lcZ(2,7,"catalog.stock-on-hand"))("for","stockOnHand_"+(null==(c=e.get("stockLocationId"))?null:c.value)),t.xp6(2),t.Q6J("id","stockOnHand_"+(null==(s=e.get("stockLocationId"))?null:s.value))("readonly",!t.lcZ(4,9,a.updatePermissions)),t.xp6(2),t.Q6J("label",(null==(p=e.get("stockLocationName"))?null:p.value)+": "+t.lcZ(6,11,"catalog.stock-allocated")),t.xp6(2),t.hij(" ",null==(_=e.get("stockAllocated"))?null:_.value," ")}}function Ys(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",60),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(4);return t.KtG(s.addStockLocation(c))}),t._UZ(1,"clr-icon",65),t._uU(2),t.qZA()}if(2&o){const e=n.$implicit;t.xp6(2),t.hij(" ",e.name," ")}}function Gs(o,n){if(1&o&&(t.TgZ(0,"div")(1,"vdr-dropdown")(2,"button",57),t._UZ(3,"clr-icon",47),t._uU(4),t.ALo(5,"translate"),t._UZ(6,"clr-icon",58),t.qZA(),t.TgZ(7,"vdr-dropdown-menu"),t.YNc(8,Ys,3,1,"button",59),t.qZA()()()),2&o){const e=t.oxw().ngIf;t.xp6(4),t.hij(" ",t.lcZ(5,2,"catalog.add-stock-location")," "),t.xp6(4),t.Q6J("ngForOf",e)}}function Bs(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Gs,9,4,"div",2),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length)}}const tn=function(){return["UpdateCatalog","UpdateProduct"]};function js(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"form",10)(1,"vdr-page-detail-layout")(2,"vdr-page-detail-sidebar")(3,"vdr-card")(4,"vdr-form-field",11),t.ALo(5,"translate"),t.YNc(6,Ds,5,5,"clr-toggle-wrapper",12),t.qZA()(),t.YNc(7,ks,7,8,"vdr-card",13),t.TgZ(8,"vdr-card",14),t.ALo(9,"translate"),t.TgZ(10,"div",15),t.YNc(11,Js,2,4,"vdr-facet-value-chip",16),t.ALo(12,"async"),t.qZA(),t.TgZ(13,"div"),t.YNc(14,Us,4,3,"button",17),t.qZA()(),t.TgZ(15,"vdr-card"),t.YNc(16,Ms,1,1,"vdr-page-entity-info",18),t.ALo(17,"async"),t.qZA()(),t.TgZ(18,"vdr-page-block"),t._UZ(19,"button",19),t.TgZ(20,"vdr-card")(21,"div",20)(22,"vdr-form-field",21),t.ALo(23,"translate"),t._UZ(24,"input",22),t.ALo(25,"hasPermission"),t.qZA(),t.TgZ(26,"vdr-form-field",23),t.ALo(27,"translate"),t._UZ(28,"input",24),t.ALo(29,"hasPermission"),t.qZA()()(),t.YNc(30,Rs,4,8,"vdr-card",13),t._UZ(31,"vdr-custom-detail-component-host",25),t.TgZ(32,"vdr-card",14),t.ALo(33,"translate"),t.TgZ(34,"vdr-assets",26),t.NdJ("change",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.assetChanges=i)}),t.qZA()(),t.TgZ(35,"vdr-card",14),t.ALo(36,"translate"),t.TgZ(37,"div",20)(38,"vdr-form-field",27),t.ALo(39,"translate"),t.TgZ(40,"select",28),t.YNc(41,Es,2,2,"option",29),t.ALo(42,"async"),t.qZA()()(),t.YNc(43,Ss,10,20,"div",30),t.YNc(44,qs,2,1,"ng-container",2),t.ALo(45,"async"),t.qZA(),t.TgZ(46,"vdr-card",14),t.ALo(47,"translate"),t.TgZ(48,"div",20)(49,"vdr-form-field",31),t.ALo(50,"translate"),t.ALo(51,"translate"),t.TgZ(52,"select",32),t.ALo(53,"hasPermission"),t.TgZ(54,"option",33),t._uU(55),t.ALo(56,"translate"),t.qZA(),t.TgZ(57,"option",33),t._uU(58),t.ALo(59,"translate"),t.qZA(),t.TgZ(60,"option",33),t._uU(61),t.ALo(62,"translate"),t.qZA()()(),t.TgZ(63,"vdr-form-item",34),t.ALo(64,"translate"),t.ALo(65,"translate"),t._UZ(66,"input",35),t.ALo(67,"hasPermission"),t.TgZ(68,"clr-toggle-wrapper"),t._UZ(69,"input",36),t.ALo(70,"hasPermission"),t.TgZ(71,"label"),t._uU(72),t.ALo(73,"translate"),t.qZA()()()(),t.YNc(74,$s,8,13,"div",37),t.YNc(75,Bs,2,1,"ng-container",2),t.ALo(76,"async"),t.qZA()()()()}if(2&o){const e=n.ngIf,a=t.oxw();let i;t.Q6J("formGroup",a.detailForm),t.xp6(4),t.Q6J("label",t.lcZ(5,43,"catalog.visibility")),t.xp6(2),t.Q6J("vdrIfPermissions",t.DdM(95,tn)),t.xp6(1),t.Q6J("ngIf",e.options.length),t.xp6(1),t.Q6J("title",t.lcZ(9,45,"catalog.facets")),t.xp6(3),t.Q6J("ngForOf",t.lcZ(12,47,a.facetValues$)),t.xp6(3),t.Q6J("vdrIfPermissions",a.updatePermissions),t.xp6(2),t.Q6J("ngIf",t.lcZ(17,49,a.entity$)),t.xp6(6),t.Q6J("label",t.lcZ(23,51,"common.name")),t.xp6(2),t.Q6J("readonly",!t.lcZ(25,53,t.DdM(96,tn))),t.xp6(2),t.Q6J("label",t.lcZ(27,55,"catalog.sku")),t.xp6(2),t.Q6J("readonly",!t.lcZ(29,57,a.updatePermissions)),t.xp6(2),t.Q6J("ngIf",a.customFields.length),t.xp6(1),t.Q6J("entity$",a.entity$)("detailForm",a.detailForm),t.xp6(1),t.Q6J("title",t.lcZ(33,59,"catalog.assets")),t.xp6(2),t.Q6J("assets",a.assetChanges.assets||e.assets)("featuredAsset",a.assetChanges.featuredAsset||e.featuredAsset)("updatePermissions",a.updatePermissions),t.xp6(1),t.Q6J("title",t.lcZ(36,61,"catalog.price-and-tax")),t.xp6(3),t.Q6J("label",t.lcZ(39,63,"catalog.tax-category")),t.xp6(3),t.Q6J("ngForOf",t.lcZ(42,65,a.taxCategories$)),t.xp6(2),t.Q6J("ngForOf",a.pricesForm.controls),t.xp6(1),t.Q6J("ngIf",t.lcZ(45,67,a.unusedCurrencyCodes$)),t.xp6(2),t.Q6J("title",t.lcZ(47,69,"catalog.stock-levels")),t.xp6(3),t.Q6J("label",t.lcZ(50,71,"catalog.track-inventory"))("tooltip",t.lcZ(51,73,"catalog.track-inventory-tooltip")),t.xp6(3),t.Q6J("disabled",!t.lcZ(53,75,a.updatePermissions)),t.xp6(2),t.Q6J("value",a.GlobalFlag.TRUE),t.xp6(1),t.hij(" ",t.lcZ(56,77,"catalog.track-inventory-true")," "),t.xp6(2),t.Q6J("value",a.GlobalFlag.FALSE),t.xp6(1),t.hij(" ",t.lcZ(59,79,"catalog.track-inventory-false")," "),t.xp6(2),t.Q6J("value",a.GlobalFlag.INHERIT),t.xp6(1),t.hij(" ",t.lcZ(62,81,"catalog.track-inventory-inherit")," "),t.xp6(2),t.Q6J("label",t.lcZ(64,83,"catalog.out-of-stock-threshold"))("tooltip",t.lcZ(65,85,"catalog.out-of-stock-threshold-tooltip")),t.xp6(3),t.Q6J("readonly",!t.lcZ(67,87,a.updatePermissions))("vdrDisabled",!1!==(null==(i=a.detailForm.get("useGlobalOutOfStockThreshold"))?null:i.value)||a.inventoryIsNotTracked(a.detailForm)),t.xp6(3),t.Q6J("vdrDisabled",!t.lcZ(70,89,a.updatePermissions)||a.inventoryIsNotTracked(a.detailForm)),t.xp6(3),t.AsE("",t.lcZ(73,91,"catalog.use-global-value")," (",a.globalOutOfStockThreshold,")"),t.xp6(2),t.Q6J("ngForOf",a.stockLevelsForm.controls),t.xp6(1),t.Q6J("ngIf",t.lcZ(76,93,a.unusedStockLocation$))}}class Qe extends l.VE7{constructor(n,e,a,i,c,s){super(),this.productDetailService=n,this.formBuilder=e,this.modalService=a,this.notificationService=i,this.dataService=c,this.changeDetector=s,this.updatePermissions=[l.y3$.UpdateCatalog,l.y3$.UpdateProduct],this.customFields=this.getCustomFieldConfig("ProductVariant"),this.customOptionFields=this.getCustomFieldConfig("ProductOption"),this.detailForm=this.formBuilder.group({id:"",enabled:!1,sku:"",name:"",taxCategoryId:"",stockOnHand:0,useGlobalOutOfStockThreshold:!0,outOfStockThreshold:0,trackInventory:l.TvZ.TRUE,facetValueIds:[],customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))}),this.stockLevelsForm=this.formBuilder.array([]),this.pricesForm=this.formBuilder.array([]),this.assetChanges={},this.GlobalFlag=l.TvZ}ngOnInit(){this.init(),this.dataService.settings.getGlobalSettings("cache-first").single$.subscribe(({globalSettings:c})=>{this.globalTrackInventory=c.trackInventory,this.globalOutOfStockThreshold=c.outOfStockThreshold,this.changeDetector.markForCheck()}),this.taxCategories$=this.result$.pipe((0,v.U)(c=>c.taxCategories.items));const n=this.result$.pipe((0,w.b)(c=>this.channelDefaultCurrencyCode=c.activeChannel.defaultCurrencyCode),(0,v.U)(c=>c.activeChannel.availableCurrencyCodes));this.unusedCurrencyCodes$=(0,I.a)(this.pricesForm.valueChanges,n).pipe((0,v.U)(([c,s])=>s.filter(p=>!c.map(_=>_.currencyCode).includes(p))));const e=this.result$.pipe((0,v.U)(c=>c.stockLocations.items));this.unusedStockLocation$=(0,I.a)(this.entity$,e).pipe((0,v.U)(([c,s])=>{const p=c.stockLevels.map(_=>_.stockLocation.id);return s.filter(_=>!p.includes(_.id))})),this.channelPriceIncludesTax$=this.dataService.settings.getActiveChannel("cache-first").refetchOnChannelChange().mapStream(c=>c.activeChannel.pricesIncludeTax).pipe((0,r.d)(1)),this.stockLevels$=this.entity$.pipe((0,v.U)(c=>c?.stockLevels??[]));const a=this.entity$.pipe((0,v.U)(c=>c.facetValues??[])),i=this.detailForm.get("facetValueIds").valueChanges.pipe((0,gs.T)(1),(0,S.x)(),(0,b.w)(c=>this.dataService.facet.getFacetValues({filter:{id:{in:c}}}).mapSingle(({facetValues:s})=>s.items)),(0,r.d)(1));this.facetValues$=(0,Ln.z)(a.pipe((0,Q.q)(1)),a.pipe(function hs(o,n){return(0,fs.m)(n)?(0,b.w)(()=>o,n):(0,b.w)(()=>o)}(i)))}ngOnDestroy(){this.destroy()}addPriceInCurrency(n){this.pricesForm.push(this.formBuilder.group({currencyCode:n,price:0,delete:!1}))}toggleDeletePrice(n){n.setValue(!n.value),n.markAsDirty()}addStockLocation(n){this.stockLevelsForm.push(this.formBuilder.group({stockLocationId:n.id,stockLocationName:n.name,stockOnHand:0,stockAllocated:0}))}save(){(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,k.z)(([n,e])=>{const a=(0,_s.e)(this.getUpdatedVariant(n,this.detailForm,e),["id","enabled","translations","sku","taxCategoryId","facetValueIds","featuredAssetId","assetIds","trackInventory","outOfStockThreshold","useGlobalOutOfStockThreshold","customFields"]);return this.stockLevelsForm.dirty&&(a.stockLevels=this.stockLevelsForm.controls.filter(i=>i.dirty).map(i=>({stockLocationId:i.value.stockLocationId,stockOnHand:i.value.stockOnHand}))),this.pricesForm.dirty&&(a.prices=this.pricesForm.controls.filter(i=>i.dirty).map(i=>({price:i.value.price,currencyCode:i.value.currencyCode,delete:!0===i.value.delete}))),this.dataService.mutate(l.YZY,{input:[a]})})).subscribe(n=>{this.detailForm.markAsPristine(),this.stockLevelsForm.markAsPristine(),this.pricesForm.markAsPristine(),this.assetChanges={},this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"ProductVariant"}),this.changeDetector.markForCheck()},n=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"ProductVariant"})})}assetsChanged(){return!!Object.values(this.assetChanges).length}inventoryIsNotTracked(n){const e=n.get("trackInventory")?.value;return e===l.TvZ.FALSE||e===l.TvZ.INHERIT&&!1===this.globalTrackInventory}optionGroupCode(n){return this.entity?.product.optionGroups.find(a=>a.id===n)?.code}optionName(n){return(n.translations.find(a=>a.languageCode===this.languageCode)??n.translations[0]).name}removeFacetValue(n){const e=this.detailForm,a=e.value.facetValueIds??[];e.patchValue({facetValueIds:a.filter(i=>i!==n)}),e.markAsDirty()}selectFacetValue(){this.displayFacetValueModal().subscribe(n=>{if(n){const e=this.detailForm.value.facetValueIds??[];this.detailForm.patchValue({facetValueIds:(0,J.T)([...e,...n])}),this.detailForm.markAsDirty()}})}displayFacetValueModal(){return this.modalService.fromComponent(yt,{size:"md",closable:!0}).pipe((0,v.U)(n=>n&&n.map(e=>e.id)))}setFormValues(n,e){const a=(0,l.ZIM)(n,e),i=n.facetValues.map(c=>c.id);this.detailForm.patchValue({id:n.id,enabled:n.enabled,sku:n.sku,name:a?a.name:"",taxCategoryId:n.taxCategory.id,stockOnHand:n.stockLevels[0]?.stockOnHand??0,useGlobalOutOfStockThreshold:n.useGlobalOutOfStockThreshold,outOfStockThreshold:n.outOfStockThreshold,trackInventory:n.trackInventory,facetValueIds:i}),this.stockLevelsForm.clear();for(const c of n.stockLevels)this.stockLevelsForm.push(this.formBuilder.group({stockLocationId:c.stockLocation.id,stockLocationName:c.stockLocation.name,stockOnHand:c.stockOnHand,stockAllocated:c.stockAllocated}));this.pricesForm.clear();for(const c of n.prices)this.pricesForm.push(this.formBuilder.group({price:c.price,currencyCode:c.currencyCode,delete:!1}));this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get("customFields"),n,a)}getUpdatedVariant(n,e,a){return{...(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.customFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||""}}),assetIds:this.assetChanges.assets?.map(c=>c.id),featuredAssetId:this.assetChanges.featuredAsset?.id,facetValueIds:e.value.facetValueIds,taxCategoryId:e.value.taxCategoryId}}}(re=Qe).\u0275fac=function(n){return new(n||re)(t.Y36(pt),t.Y36(d.qu),t.Y36(l.Z7U),t.Y36(l.gqp),t.Y36(l.DoR),t.Y36(t.sBO))},re.\u0275cmp=t.Xpm({type:re,selectors:[["vdr-product-variant-detail"]],features:[t.qOj],decls:12,vars:10,consts:[[3,"grow"],[1,"flex","center"],[4,"ngIf"],[3,"productId"],["locationId","product-variant-detail"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],["class","form",3,"formGroup",4,"ngIf"],["class","mr-2",3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange",4,"ngIf"],[1,"mr-2",3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange"],[1,"btn","btn-primary",3,"disabled","click"],[1,"form",3,"formGroup"],["for","visibility",3,"label"],[4,"vdrIfPermissions"],[3,"title",4,"ngIf"],[3,"title"],[1,"facets"],[3,"facetValue","removable","remove",4,"ngFor","ngForOf"],["class","button-small mt-2",3,"click",4,"vdrIfPermissions"],[3,"entity",4,"ngIf"],["type","submit","hidden","","x-data","prevents enter key from triggering other buttons"],[1,"form-grid"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"readonly"],["for","sku",3,"label"],["id","sku","type","text","formControlName","sku",3,"readonly"],["locationId","product-variant-detail",3,"entity$","detailForm"],[3,"assets","featuredAsset","updatePermissions","change"],["for","taxCategory",3,"label"],["name","taxCategory","formControlName","taxCategoryId"],[3,"value",4,"ngFor","ngForOf"],["class","form-grid prices",3,"formGroup",4,"ngFor","ngForOf"],["for","track-inventory",3,"label","tooltip"],["name","track-inventory","formControlName","trackInventory",3,"disabled"],[3,"value"],[3,"label","tooltip"],["type","number","formControlName","outOfStockThreshold",3,"readonly","vdrDisabled"],["type","checkbox","clrToggle","","name","useGlobalOutOfStockThreshold","formControlName","useGlobalOutOfStockThreshold",3,"vdrDisabled"],["class","form-grid stock-levels",3,"formGroup",4,"ngFor","ngForOf"],["type","checkbox","clrToggle","","name","enabled",3,"formControl"],[1,"options"],[3,"colorFrom","invert",4,"ngFor","ngForOf"],["class","button-small mt-2",3,"routerLink",4,"vdrIfPermissions"],[3,"colorFrom","invert"],[1,"button-small","mt-2",3,"routerLink"],["shape","pencil"],[3,"facetValue","removable","remove"],[1,"button-small","mt-2",3,"click"],["shape","plus"],[3,"entity"],["entityName","ProductVariant",3,"customFields","customFieldsFormGroup","readonly"],[1,"form-grid","prices",3,"formGroup"],["for","price",3,"label","tooltip"],[1,"price-wrapper"],["name","price","formControlName","price",3,"currencyCode","readonly"],[3,"price","currencyCode","priceIncludesTax","taxCategoryId"],[1,"button-small","delete-button",3,"disabled","click"],["shape","trash"],["vdrDropdownTrigger","",1,"button","mt-2"],["shape","ellipsis-vertical"],["vdrDropdownItem","",3,"click",4,"ngFor","ngForOf"],["vdrDropdownItem","",3,"click"],[1,"form-grid","stock-levels",3,"formGroup"],[3,"label","for"],["type","number","formControlName","stockOnHand",3,"id","readonly"],[3,"label"],["shape","map-marker"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left",0)(3,"div",1),t.YNc(4,Os,2,1,"ng-container",2),t.ALo(5,"async"),t._UZ(6,"vdr-product-variant-quick-jump",3),t.qZA()(),t.TgZ(7,"vdr-ab-right"),t._UZ(8,"vdr-action-bar-items",4),t.YNc(9,Is,3,4,"button",5),t.qZA()()(),t.YNc(10,js,77,97,"form",6),t.ALo(11,"async")),2&n&&(t.xp6(2),t.Q6J("grow",!0),t.xp6(2),t.Q6J("ngIf",t.lcZ(5,5,e.availableLanguages$)),t.xp6(2),t.Q6J("productId",null==e.entity?null:e.entity.product.id),t.xp6(3),t.Q6J("vdrIfPermissions",t.DdM(9,tn)),t.xp6(1),t.Q6J("ngIf",t.lcZ(11,7,e.entity$)))},dependencies:[h.qvL,h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.YN,d.Kr,d.Fj,d.wV,d.Wl,d.EJ,d.JJ,d.JL,d.oH,d.sg,d.u,P.rH,A.Kk,A.BN,A.mz,H.Y,ge.K,Ae.q,q.h,y.y,Nn.J,G.S,ht.J,vt.N,Ct.U,Tt.H,$.H,tt.W,Pe.x,ut.y,Oe.C,E.z,At.D,Ie.T,Fe.W,nt.A,bt,Se,we,g.Ov,x.X$,Zs.u,Xe.U,B.j],styles:[".facets[_ngcontent-%COMP%], .options[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:3px}vdr-product-variant-quick-jump[_ngcontent-%COMP%]{flex:1;margin-inline-end:calc(var(--space-unit) * 2)}.stock-levels[_ngcontent-%COMP%], .prices[_ngcontent-%COMP%]{margin-top:calc(var(--space-unit) * 2);padding-top:calc(var(--space-unit) * 2);border-top:1px solid var(--color-weight-150)}.price-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--space-unit);width:100%}.price-wrapper.pending-deletion[_ngcontent-%COMP%] vdr-currency-input[_ngcontent-%COMP%]{opacity:.7}.price-wrapper.pending-deletion[_ngcontent-%COMP%] .delete-button[_ngcontent-%COMP%]{background-color:var(--color-error-700);color:var(--color-error-100)}"],changeDetection:0});const En={location:"product-variant-list",label:(0,u.J)("catalog.assign-to-channel"),icon:"layers",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),isVisible:({injector:o})=>(0,l.SDV)(o.get(l.DoR)),onClick:({injector:o,selection:n,clearSelection:e})=>{o.get(l.Z7U).fromComponent(rt,{size:"lg",locals:{productVariantIds:(0,J.T)(n.map(i=>i.id)),currentChannelIds:[]}}).subscribe(i=>{i&&e()})}},Vn=(0,l.RBx)({location:"product-variant-list",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),getItemName:o=>o.name,bulkRemoveFromChannel:(o,n,e)=>o.product.removeVariantsFromChannel({channelId:e,productVariantIds:n}).pipe((0,v.U)(a=>a.removeProductVariantsFromChannel))}),Sn={location:"product-variant-list",label:(0,u.J)("common.delete"),icon:"trash",iconClass:"is-danger",requiresPermission:o=>o.includes(l.y3$.DeleteProduct)||o.includes(l.y3$.DeleteCatalog),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.DoR),s=o.get(l.gqp);i.dialog({title:(0,u.J)("common.confirm-bulk-delete"),translationVars:{count:n.length},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(p=>p?c.product.deleteProductVariants((0,J.T)(n.map(_=>_.id))):F.E)).subscribe(p=>{let _=0;const f=[];for(const T of p.deleteProductVariants)T.result===l.PcR.DELETED?_++:T.message&&f.push(T.message);0<_&&s.success((0,u.J)("catalog.notify-bulk-delete-products-success"),{count:_}),0<f.length&&s.error(f.join("\n")),e.refresh(),a()})}};var ce,le,Ks=m(24242);function Hs(o,n){if(1&o&&(t.ynx(0),t.TgZ(1,"th"),t._uU(2),t.qZA(),t.BQk()),2&o){const e=n.$implicit;t.xp6(2),t.Oqu(e.name)}}function Ws(o,n){if(1&o&&(t._UZ(0,"img",18),t.ALo(1,"assetPreview")),2&o){const e=n.ngIf;t.Q6J("src",t.xi3(1,1,e,"tiny"),t.LSH)}}function zs(o,n){1&o&&(t.TgZ(0,"div",19),t._UZ(1,"clr-icon",20),t.qZA())}function Xs(o,n){if(1&o&&(t.ynx(0),t.TgZ(1,"td",5),t.ALo(2,"stringToColor"),t._uU(3),t.qZA(),t.BQk()),2&o){const e=n.$implicit,a=t.oxw().ngIf,i=t.oxw(2);t.xp6(1),t.Udp("color",t.lcZ(2,5,i.optionGroupName(e.groupId))),t.ekj("disabled",!a.get("enabled").value),t.xp6(2),t.hij(" ",e.name," ")}}function td(o,n){if(1&o&&(t._UZ(0,"vdr-currency-input",21),t.ALo(1,"hasPermission")),2&o){const e=t.oxw(2).$implicit,a=t.oxw();t.Q6J("currencyCode",e.currencyCode)("readonly",!t.lcZ(1,2,a.updatePermission))}}function ed(o,n){if(1&o&&(t._UZ(0,"vdr-currency-input",22),t.ALo(1,"hasPermission")),2&o){const e=t.oxw(2).$implicit,a=t.oxw();t.Q6J("currencyCode",e.currencyCode)("readonly",!t.lcZ(1,2,a.updatePermission))}}function nd(o,n){if(1&o&&(t.ynx(0,4),t.TgZ(1,"td",5)(2,"div",6)(3,"div",7),t.YNc(4,Ws,2,4,"img",8),t.YNc(5,zs,2,0,"ng-template",null,9,t.W1O),t.qZA()()(),t.TgZ(7,"td",5)(8,"clr-input-container"),t._UZ(9,"input",10),t.ALo(10,"hasPermission"),t.ALo(11,"translate"),t.qZA()(),t.TgZ(12,"td",5)(13,"clr-input-container"),t._UZ(14,"input",11),t.ALo(15,"hasPermission"),t.ALo(16,"translate"),t.qZA()(),t.YNc(17,Xs,4,7,"ng-container",1),t.ALo(18,"sort"),t.TgZ(19,"td",12)(20,"clr-input-container"),t.YNc(21,td,2,4,"vdr-currency-input",13),t.YNc(22,ed,2,4,"vdr-currency-input",14),t.qZA()(),t.TgZ(23,"td",15)(24,"clr-input-container"),t._UZ(25,"input",16),t.ALo(26,"hasPermission"),t.qZA()(),t.TgZ(27,"td",15)(28,"clr-toggle-wrapper"),t._UZ(29,"input",17),t.ALo(30,"hasPermission"),t.qZA()(),t.BQk()),2&o){const e=n.ngIf,a=t.MAs(6),i=t.oxw().$implicit,c=t.oxw();t.Q6J("formGroup",e),t.xp6(1),t.ekj("disabled",!e.get("enabled").value),t.xp6(3),t.Q6J("ngIf",c.getFeaturedAsset(i))("ngIfElse",a),t.xp6(3),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("readonly",!t.lcZ(10,24,c.updatePermission))("placeholder",t.lcZ(11,26,"common.name")),t.xp6(3),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("readonly",!t.lcZ(15,28,c.updatePermission))("placeholder",t.lcZ(16,30,"catalog.sku")),t.xp6(3),t.Q6J("ngForOf",t.xi3(18,32,i.options,"groupId")),t.xp6(2),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("ngIf",!c.channelPriceIncludesTax),t.xp6(1),t.Q6J("ngIf",c.channelPriceIncludesTax),t.xp6(1),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("readonly",!t.lcZ(26,35,c.updatePermission)),t.xp6(2),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("vdrDisabled",!t.lcZ(30,37,c.updatePermission))}}function od(o,n){if(1&o&&(t.TgZ(0,"tr"),t.YNc(1,nd,31,39,"ng-container",3),t.qZA()),2&o){const e=n.$implicit,a=t.oxw();t.xp6(1),t.Q6J("ngIf",a.formGroupMap.get(e.id))}}class en{constructor(n){this.changeDetector=n,this.formGroupMap=new Map,this.updatePermission=[l.y3$.UpdateCatalog,l.y3$.UpdateProduct]}ngOnInit(){this.subscription=this.formArray.valueChanges.pipe((0,v.U)(n=>n.length),(0,it.b)(1),(0,S.x)()).subscribe(()=>{this.buildFormGroupMap()}),this.buildFormGroupMap()}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}trackByFn(n,e){return null!=e.id?e.id:n}getFeaturedAsset(n){return this.pendingAssetChanges[n.id]?.featuredAsset||n.featuredAsset}optionGroupName(n){const e=this.optionGroups.find(a=>a.id===n);return e&&e.name}buildFormGroupMap(){this.formGroupMap.clear();for(const n of this.formArray.controls)this.formGroupMap.set(n.value.id,n);this.changeDetector.markForCheck()}}function ad(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.update-product-option"))}(ce=en).\u0275fac=function(n){return new(n||ce)(t.Y36(t.sBO))},ce.\u0275cmp=t.Xpm({type:ce,selectors:[["vdr-product-variants-table"]],inputs:{formArray:["productVariantsFormArray","formArray"],variants:"variants",paginationConfig:"paginationConfig",channelPriceIncludesTax:"channelPriceIncludesTax",optionGroups:"optionGroups",pendingAssetChanges:"pendingAssetChanges"},decls:24,vars:24,consts:[[1,"table"],[4,"ngFor","ngForOf"],[4,"ngFor","ngForOf","ngForTrackBy"],[3,"formGroup",4,"ngIf"],[3,"formGroup"],[1,"left","align-middle"],[1,"card-img"],[1,"featured-asset"],[3,"src",4,"ngIf","ngIfElse"],["placeholder",""],["clrInput","","type","text","formControlName","name",3,"readonly","placeholder"],["clrInput","","type","text","formControlName","sku",3,"readonly","placeholder"],[1,"left","align-middle","price"],["clrInput","","formControlName","price",3,"currencyCode","readonly",4,"ngIf"],["clrInput","","formControlName","priceWithTax",3,"currencyCode","readonly",4,"ngIf"],[1,"left","align-middle","stock"],["clrInput","","type","number","min","0","step","1","formControlName","stockOnHand",3,"readonly"],["type","checkbox","clrToggle","","name","enabled","formControlName","enabled",3,"vdrDisabled"],[3,"src"],[1,"placeholder"],["shape","image","size","48"],["clrInput","","formControlName","price",3,"currencyCode","readonly"],["clrInput","","formControlName","priceWithTax",3,"currencyCode","readonly"]],template:function(n,e){1&n&&(t.TgZ(0,"table",0)(1,"thead")(2,"tr"),t._UZ(3,"th"),t.TgZ(4,"th"),t._uU(5),t.ALo(6,"translate"),t.qZA(),t.TgZ(7,"th"),t._uU(8),t.ALo(9,"translate"),t.qZA(),t.YNc(10,Hs,3,1,"ng-container",1),t.ALo(11,"sort"),t.TgZ(12,"th"),t._uU(13),t.ALo(14,"translate"),t.qZA(),t.TgZ(15,"th"),t._uU(16),t.ALo(17,"translate"),t.qZA(),t.TgZ(18,"th"),t._uU(19),t.ALo(20,"translate"),t.qZA()()(),t.TgZ(21,"tbody"),t.YNc(22,od,2,1,"tr",2),t.ALo(23,"paginate"),t.qZA()()),2&n&&(t.xp6(5),t.Oqu(t.lcZ(6,8,"common.name")),t.xp6(3),t.Oqu(t.lcZ(9,10,"catalog.sku")),t.xp6(2),t.Q6J("ngForOf",t.xi3(11,12,e.optionGroups,"id")),t.xp6(3),t.Oqu(t.lcZ(14,15,"catalog.price")),t.xp6(3),t.Oqu(t.lcZ(17,17,"catalog.stock-on-hand")),t.xp6(3),t.Oqu(t.lcZ(20,19,"common.enabled")),t.xp6(3),t.Q6J("ngForOf",t.xi3(23,21,e.variants,e.paginationConfig))("ngForTrackBy",e.trackByFn))},dependencies:[h.q0d,h.qvL,h.KKC,h.PEh,h.xRP,h.G55,g.sg,g.O5,d.Fj,d.wV,d.Wl,d.JJ,d.JL,d.qQ,d.sg,d.u,ge.K,y.y,Pe.x,Te._s,x.X$,Xe.U,Ks.s,B.j,xe.M],styles:[".placeholder[_ngcontent-%COMP%]{color:var(--color-grey-300)}.stock[_ngcontent-%COMP%] input[_ngcontent-%COMP%], .price[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{max-width:96px}td[_ngcontent-%COMP%]{transition:background-color .2s}td.disabled[_ngcontent-%COMP%]{background-color:var(--color-component-bg-200)}"],changeDetection:0});const id=function(){return["UpdateCatalog","UpdateProduct"]};function rd(o,n){if(1&o&&(t.TgZ(0,"section")(1,"label"),t._uU(2),t.ALo(3,"translate"),t.qZA(),t._UZ(4,"vdr-tabbed-custom-fields",10),t.ALo(5,"hasPermission"),t.qZA()),2&o){const e=t.oxw();t.xp6(2),t.Oqu(t.lcZ(3,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.customFieldsForm)("readonly",!t.lcZ(5,6,t.DdM(8,id)))}}function cd(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",11),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",12),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.update())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw(),a=t.MAs(4),i=t.MAs(8);t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",a.invalid||i.invalid||a.pristine&&i.pristine&&e.customFieldsForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(5,5,"catalog.update-product-option")," ")}}class nn{constructor(){this.updateVariantName=!0,this.codeInputTouched=!1}ngOnInit(){const n=this.productOption.translations.find(e=>e.languageCode===this.activeLanguage);if(this.name=n?.name??"",this.code=this.productOption.code,this.customFieldsForm=new d.nJ({}),this.customFields){const e=n&&n.customFields||{};for(const a of this.customFields){const i=a.name,c="localeString"===a.type?e[i]:this.productOption.customFields[i];this.customFieldsForm.addControl(a.name,new d.p4(c))}}}update(){const n=(0,l.iSy)({translatable:this.productOption,languageCode:this.activeLanguage,updatedFields:{code:this.code,name:this.name,customFields:this.customFieldsForm.value},customFieldConfig:this.customFields,defaultTranslation:{languageCode:this.activeLanguage,name:""}});this.resolveWith({...n,autoUpdate:this.updateVariantName})}cancel(){this.resolveWith()}updateCode(n){!this.codeInputTouched&&!this.productOption.code&&(this.code=(0,R.U)(n,"-"))}}var lt;(le=nn).\u0275fac=function(n){return new(n||le)},le.\u0275cmp=t.Xpm({type:le,selectors:[["vdr-update-product-option-dialog"]],decls:16,vars:13,consts:[["vdrDialogTitle",""],["for","name",3,"label"],["id","name","type","text","required","",3,"ngModel","ngModelChange","input"],["nameInput","ngModel"],["for","code",3,"label"],["id","code","type","text","required","","pattern","[a-z0-9_-]+",3,"ngModel","ngModelChange"],["codeInput","ngModel"],["type","checkbox","clrCheckbox","",3,"ngModel","ngModelChange"],[4,"ngIf"],["vdrDialogButtons",""],["entityName","ProductOption",3,"customFields","customFieldsFormGroup","readonly"],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,ad,2,3,"ng-template",0),t.TgZ(1,"vdr-form-field",1),t.ALo(2,"translate"),t.TgZ(3,"input",2,3),t.NdJ("ngModelChange",function(i){return e.name=i})("input",function(i){return e.updateCode(i.target.value)}),t.qZA()(),t.TgZ(5,"vdr-form-field",4),t.ALo(6,"translate"),t.TgZ(7,"input",5,6),t.NdJ("ngModelChange",function(i){return e.code=i}),t.qZA()(),t.TgZ(9,"clr-checkbox-wrapper")(10,"input",7),t.NdJ("ngModelChange",function(i){return e.updateVariantName=i}),t.qZA(),t.TgZ(11,"label"),t._uU(12),t.ALo(13,"translate"),t.qZA()(),t.YNc(14,rd,6,9,"section",8),t.YNc(15,cd,6,7,"ng-template",9)),2&n&&(t.xp6(1),t.Q6J("label",t.lcZ(2,7,"catalog.option-name")),t.xp6(2),t.Q6J("ngModel",e.name),t.xp6(2),t.Q6J("label",t.lcZ(6,9,"common.code")),t.xp6(2),t.Q6J("ngModel",e.code),t.xp6(3),t.Q6J("ngModel",e.updateVariantName),t.xp6(2),t.Oqu(t.lcZ(13,11,"catalog.auto-update-option-variant-name")),t.xp6(2),t.Q6J("ngIf",e.customFields.length))},dependencies:[h.MgK,h.KKC,h.PEh,g.O5,d.Fj,d.Wl,d.JJ,d.Q7,d.c5,d.On,q.h,y.y,X.n,K.q,ut.y,x.X$,B.j],changeDetection:0});class se{constructor(n,e){se.hasRegisteredTabsAndBulkActions||(n.registerBulkAction(Rn),n.registerBulkAction(Un),n.registerBulkAction(En),n.registerBulkAction(Mn),n.registerBulkAction(Vn),n.registerBulkAction(Jn),n.registerBulkAction(Sn),n.registerBulkAction(Dn),n.registerBulkAction(yn),n.registerBulkAction(Fn),n.registerBulkAction(bn),n.registerBulkAction(xn),n.registerBulkAction(An),n.registerBulkAction(Tn),e.registerPageTab({priority:0,location:"product-list",tab:(0,u.J)("catalog.products"),route:"",component:Ve}),e.registerPageTab({priority:0,location:"product-detail",tab:(0,u.J)("catalog.product"),route:"",component:(0,l.IX9)({component:ne,query:l.R2H,entityKey:"product",getBreadcrumbs:a=>[{label:a?a.name:(0,u.J)("catalog.create-new-product"),link:[a?.id]}]})}),e.registerPageTab({priority:0,location:"product-list",tab:(0,u.J)("catalog.product-variants"),route:"variants",component:te}),e.registerPageTab({priority:0,location:"product-variant-detail",tab:(0,u.J)("catalog.product-variants"),route:"",component:(0,l.IX9)({component:Qe,query:l.EB8,entityKey:"productVariant",getBreadcrumbs:a=>[{label:`${a?.product.name}`,link:["/catalog","products",a?.product.id]},{label:`${a?.name} (${a?.sku})`,link:["variants",a?.id]}]})}),e.registerPageTab({priority:0,location:"facet-list",tab:(0,u.J)("catalog.facets"),route:"",component:Re}),e.registerPageTab({priority:0,location:"facet-detail",tab:(0,u.J)("catalog.facet"),route:"",component:(0,l.IX9)({component:Me,query:l.m_w,variables:{facetValueListOptions:{take:10,skip:0,sort:{createdAt:pe.As.DESC}}},entityKey:"facet",getBreadcrumbs:a=>[{label:a?a.name:(0,u.J)("catalog.create-new-facet"),link:[a?.id]}]})}),e.registerPageTab({priority:0,location:"collection-list",tab:(0,u.J)("catalog.collections"),route:"",component:ke}),e.registerPageTab({priority:0,location:"collection-detail",tab:(0,u.J)("catalog.collection"),route:"",component:(0,l.IX9)({component:De,query:l.B3M,entityKey:"collection",getBreadcrumbs:a=>[{label:a?a.name:(0,u.J)("catalog.create-new-collection"),link:[a?.id]}]})}),e.registerPageTab({priority:0,location:"asset-list",tab:(0,u.J)("catalog.assets"),route:"",component:be}),e.registerPageTab({priority:0,location:"asset-detail",tab:(0,u.J)("catalog.asset"),route:"",component:(0,l.IX9)({component:Ce,query:l.SS8,entityKey:"asset",getBreadcrumbs:a=>[{label:`${a?.name}`,link:[a?.id]}]})}),se.hasRegisteredTabsAndBulkActions=!0)}}(lt=se).hasRegisteredTabsAndBulkActions=!1,lt.\u0275fac=function(n){return new(n||lt)(t.LFG(l._4w),t.LFG(l.PhL))},lt.\u0275mod=t.oAB({type:lt}),lt.\u0275inj=t.cJS({providers:[{provide:P.Z6,useFactory:o=>cn(o),multi:!0,deps:[l.PhL]}],imports:[l.m81,P.Bz.forChild([])]});const ld=D.Ps`
117
+ `;class we{constructor(n,e){this.dataService=n,this.router=e,this.searchFn=(a,i)=>i.name.toLowerCase().includes(a.toLowerCase())||i.sku.toLowerCase().includes(a.toLowerCase())}ngOnInit(){this.variants$=this.dataService.query(l.aAr,{id:this.productId}).mapSingle(n=>n.product?.variants??[])}onSelect(n){n&&this.router.navigate(["catalog","products",this.productId,"variants",n.id]).then(()=>this.selectedVariantId=void 0)}}(re=we).\u0275fac=function(n){return new(n||re)(t.Y36(l.DoR),t.Y36(P.F0))},re.\u0275cmp=t.Xpm({type:re,selectors:[["vdr-product-variant-quick-jump"]],inputs:{productId:"productId"},decls:2,vars:3,consts:[["appendTo","body","bindValue","id",3,"items","ngModel","searchFn","clearable","placeholder","ngModelChange","change",4,"ngIf"],["appendTo","body","bindValue","id",3,"items","ngModel","searchFn","clearable","placeholder","ngModelChange","change"],["ng-option-tmp",""]],template:function(n,e){if(1&n&&(t.YNc(0,Zs,4,9,"ng-select",0),t.ALo(1,"async")),2&n){let a;t.Q6J("ngIf",(null==(a=t.lcZ(1,1,e.variants$))?null:a.length)>1)}},dependencies:[g.O5,d.JJ,d.On,ge.w9,ge.ir,g.Ov,x.X$],changeDetection:0});var ce,Ps=m(90467);function Os(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-language-selector",8),t.NdJ("languageCodeChange",function(i){t.CHM(e);const c=t.oxw(2);return t.KtG(c.setLanguage(i))}),t.ALo(1,"async"),t.ALo(2,"async"),t.qZA()}if(2&o){const e=t.oxw().ngIf,a=t.oxw();t.Q6J("disabled",t.lcZ(1,3,a.isNew$))("availableLanguageCodes",e)("currentLanguageCode",t.lcZ(2,5,a.languageCode$))}}function Is(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Os,3,7,"vdr-language-selector",7),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length>1)}}function Fs(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",9),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.save())}),t._uU(1),t.ALo(2,"translate"),t.qZA()}if(2&o){const e=t.oxw();t.Q6J("disabled",(e.detailForm.invalid||e.stockLevelsForm.invalid||e.pricesForm.invalid||e.detailForm.pristine&&e.stockLevelsForm.pristine&&e.pricesForm.pristine)&&!e.assetsChanged()),t.xp6(1),t.hij(" ",t.lcZ(2,2,"common.update")," ")}}const Ds=function(){return["enabled"]};function ys(o,n){if(1&o&&(t.TgZ(0,"clr-toggle-wrapper"),t._UZ(1,"input",38),t.TgZ(2,"label"),t._uU(3),t.ALo(4,"translate"),t.qZA()()),2&o){const e=t.oxw(2);t.xp6(1),t.Q6J("formControl",e.detailForm.get(t.DdM(4,Ds))),t.xp6(2),t.Oqu(t.lcZ(4,2,"common.enabled"))}}function Ls(o,n){if(1&o&&(t.TgZ(0,"vdr-chip",42)(1,"span"),t._uU(2),t.qZA(),t._uU(3),t.qZA()),2&o){const e=n.$implicit,a=t.oxw(3);t.Q6J("colorFrom",a.optionGroupCode(e.groupId))("invert",!0),t.xp6(2),t.hij("",a.optionGroupCode(e.groupId),":"),t.xp6(1),t.hij(" ",a.optionName(e)," ")}}const ks=function(){return["../../","options"]};function Ns(o,n){1&o&&(t.TgZ(0,"a",43),t._UZ(1,"clr-icon",44),t._uU(2),t.ALo(3,"translate"),t.qZA()),2&o&&(t.Q6J("routerLink",t.DdM(4,ks)),t.xp6(2),t.hij(" ",t.lcZ(3,2,"catalog.edit-options")," "))}function Js(o,n){if(1&o&&(t.TgZ(0,"vdr-card",14),t.ALo(1,"translate"),t.TgZ(2,"div",39),t.YNc(3,Ls,4,4,"vdr-chip",40),t.ALo(4,"sort"),t.qZA(),t.TgZ(5,"div"),t.YNc(6,Ns,4,5,"a",41),t.qZA()()),2&o){const e=t.oxw().ngIf,a=t.oxw();t.Q6J("title",t.lcZ(1,3,"catalog.product-options")),t.xp6(3),t.Q6J("ngForOf",t.xi3(4,5,e.options,"groupId")),t.xp6(3),t.Q6J("vdrIfPermissions",a.updatePermissions)}}function Us(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"vdr-facet-value-chip",45),t.NdJ("remove",function(){const c=t.CHM(e).$implicit,s=t.oxw(2);return t.KtG(s.removeFacetValue(c.id))}),t.ALo(1,"hasPermission"),t.qZA()}if(2&o){const e=n.$implicit,a=t.oxw(2);t.Q6J("facetValue",e)("removable",t.lcZ(1,2,a.updatePermissions))}}function Ms(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",46),t.NdJ("click",function(){t.CHM(e);const i=t.oxw(2);return t.KtG(i.selectFacetValue())}),t._UZ(1,"clr-icon",47),t._uU(2),t.ALo(3,"translate"),t.qZA()}2&o&&(t.xp6(2),t.hij(" ",t.lcZ(3,1,"catalog.add-facets")," "))}function Rs(o,n){if(1&o&&t._UZ(0,"vdr-page-entity-info",48),2&o){const e=n.ngIf;t.Q6J("entity",e)}}function Es(o,n){if(1&o&&(t.TgZ(0,"vdr-card",14),t.ALo(1,"translate"),t._UZ(2,"vdr-tabbed-custom-fields",49),t.ALo(3,"hasPermission"),t.qZA()),2&o){const e=t.oxw(2);t.Q6J("title",t.lcZ(1,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.detailForm.get("customFields"))("readonly",!t.lcZ(3,6,e.updatePermissions))}}function Vs(o,n){if(1&o&&(t.TgZ(0,"option",33),t._uU(1),t.qZA()),2&o){const e=n.$implicit;t.Q6J("value",e.id),t.xp6(1),t.hij(" ",e.name," ")}}function Ss(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"div")(1,"button",55),t.NdJ("click",function(){t.CHM(e);const i=t.oxw().$implicit,c=t.oxw(2);return t.KtG(c.toggleDeletePrice(i.get("delete")))}),t._UZ(2,"clr-icon",56),t.qZA()()}if(2&o){const e=t.oxw().$implicit,a=t.oxw(2);t.xp6(1),t.Q6J("disabled",e.value.currencyCode===a.channelDefaultCurrencyCode)}}function ws(o,n){if(1&o&&(t.TgZ(0,"div",50)(1,"vdr-form-field",51),t.ALo(2,"translate"),t.ALo(3,"translate"),t.TgZ(4,"div",52),t._UZ(5,"vdr-currency-input",53),t.ALo(6,"hasPermission"),t.YNc(7,Ss,3,1,"div",2),t.qZA()(),t._UZ(8,"vdr-variant-price-detail",54),t.ALo(9,"async"),t.qZA()),2&o){const e=n.$implicit,a=t.oxw(2);t.Q6J("formGroup",e),t.xp6(1),t.Q6J("label",t.lcZ(2,12,"catalog.price")+(1<a.pricesForm.length?" ("+e.value.currencyCode+")":""))("tooltip",1<a.pricesForm.length&&e.value.currencyCode===a.channelDefaultCurrencyCode?t.lcZ(3,14,"catalog.default-currency"):void 0),t.xp6(3),t.ekj("pending-deletion",!0===e.value.delete),t.xp6(1),t.Q6J("currencyCode",e.value.currencyCode)("readonly",!t.lcZ(6,16,a.updatePermissions)||!0===e.value.delete),t.xp6(2),t.Q6J("ngIf",1<a.pricesForm.controls.length),t.xp6(1),t.Q6J("price",e.value.price)("currencyCode",e.value.currencyCode)("priceIncludesTax",t.lcZ(9,18,a.channelPriceIncludesTax$))("taxCategoryId",a.detailForm.get("taxCategoryId").value)}}function Qs(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",60),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(4);return t.KtG(s.addPriceInCurrency(c))}),t._uU(1),t.ALo(2,"localeCurrencyName"),t.qZA()}if(2&o){const e=n.$implicit;t.xp6(1),t.hij(" ",t.lcZ(2,1,e)," ")}}function qs(o,n){if(1&o&&(t.TgZ(0,"div")(1,"vdr-dropdown")(2,"button",57),t._UZ(3,"clr-icon",47),t._uU(4),t.ALo(5,"translate"),t._UZ(6,"clr-icon",58),t.qZA(),t.TgZ(7,"vdr-dropdown-menu"),t.YNc(8,Qs,3,3,"button",59),t.qZA()()()),2&o){const e=t.oxw().ngIf;t.xp6(4),t.hij(" ",t.lcZ(5,2,"catalog.add-price-in-another-currency")," "),t.xp6(4),t.Q6J("ngForOf",e)}}function $s(o,n){if(1&o&&(t.ynx(0),t.YNc(1,qs,9,4,"div",2),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length)}}function Ys(o,n){if(1&o&&(t.TgZ(0,"div",61)(1,"vdr-form-field",62),t.ALo(2,"translate"),t._UZ(3,"input",63),t.ALo(4,"hasPermission"),t.qZA(),t.TgZ(5,"vdr-form-item",64),t.ALo(6,"translate"),t._uU(7),t.qZA()()),2&o){const e=n.$implicit,a=t.oxw(2);let i,c,s,p,_;t.Q6J("formGroup",e),t.xp6(1),t.Q6J("label",(null==(i=e.get("stockLocationName"))?null:i.value)+": "+t.lcZ(2,7,"catalog.stock-on-hand"))("for","stockOnHand_"+(null==(c=e.get("stockLocationId"))?null:c.value)),t.xp6(2),t.Q6J("id","stockOnHand_"+(null==(s=e.get("stockLocationId"))?null:s.value))("readonly",!t.lcZ(4,9,a.updatePermissions)),t.xp6(2),t.Q6J("label",(null==(p=e.get("stockLocationName"))?null:p.value)+": "+t.lcZ(6,11,"catalog.stock-allocated")),t.xp6(2),t.hij(" ",null==(_=e.get("stockAllocated"))?null:_.value," ")}}function Gs(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",60),t.NdJ("click",function(){const c=t.CHM(e).$implicit,s=t.oxw(4);return t.KtG(s.addStockLocation(c))}),t._UZ(1,"clr-icon",65),t._uU(2),t.qZA()}if(2&o){const e=n.$implicit;t.xp6(2),t.hij(" ",e.name," ")}}function Bs(o,n){if(1&o&&(t.TgZ(0,"div")(1,"vdr-dropdown")(2,"button",57),t._UZ(3,"clr-icon",47),t._uU(4),t.ALo(5,"translate"),t._UZ(6,"clr-icon",58),t.qZA(),t.TgZ(7,"vdr-dropdown-menu"),t.YNc(8,Gs,3,1,"button",59),t.qZA()()()),2&o){const e=t.oxw().ngIf;t.xp6(4),t.hij(" ",t.lcZ(5,2,"catalog.add-stock-location")," "),t.xp6(4),t.Q6J("ngForOf",e)}}function js(o,n){if(1&o&&(t.ynx(0),t.YNc(1,Bs,9,4,"div",2),t.BQk()),2&o){const e=n.ngIf;t.xp6(1),t.Q6J("ngIf",e.length)}}const tn=function(){return["UpdateCatalog","UpdateProduct"]};function Ks(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"form",10)(1,"vdr-page-detail-layout")(2,"vdr-page-detail-sidebar")(3,"vdr-card")(4,"vdr-form-field",11),t.ALo(5,"translate"),t.YNc(6,ys,5,5,"clr-toggle-wrapper",12),t.qZA()(),t.YNc(7,Js,7,8,"vdr-card",13),t.TgZ(8,"vdr-card",14),t.ALo(9,"translate"),t.TgZ(10,"div",15),t.YNc(11,Us,2,4,"vdr-facet-value-chip",16),t.ALo(12,"async"),t.qZA(),t.TgZ(13,"div"),t.YNc(14,Ms,4,3,"button",17),t.qZA()(),t.TgZ(15,"vdr-card"),t.YNc(16,Rs,1,1,"vdr-page-entity-info",18),t.ALo(17,"async"),t.qZA()(),t.TgZ(18,"vdr-page-block"),t._UZ(19,"button",19),t.TgZ(20,"vdr-card")(21,"div",20)(22,"vdr-form-field",21),t.ALo(23,"translate"),t._UZ(24,"input",22),t.ALo(25,"hasPermission"),t.qZA(),t.TgZ(26,"vdr-form-field",23),t.ALo(27,"translate"),t._UZ(28,"input",24),t.ALo(29,"hasPermission"),t.qZA()()(),t.YNc(30,Es,4,8,"vdr-card",13),t._UZ(31,"vdr-custom-detail-component-host",25),t.TgZ(32,"vdr-card",14),t.ALo(33,"translate"),t.TgZ(34,"vdr-assets",26),t.NdJ("change",function(i){t.CHM(e);const c=t.oxw();return t.KtG(c.assetChanges=i)}),t.qZA()(),t.TgZ(35,"vdr-card",14),t.ALo(36,"translate"),t.TgZ(37,"div",20)(38,"vdr-form-field",27),t.ALo(39,"translate"),t.TgZ(40,"select",28),t.YNc(41,Vs,2,2,"option",29),t.ALo(42,"async"),t.qZA()()(),t.YNc(43,ws,10,20,"div",30),t.YNc(44,$s,2,1,"ng-container",2),t.ALo(45,"async"),t.qZA(),t.TgZ(46,"vdr-card",14),t.ALo(47,"translate"),t.TgZ(48,"div",20)(49,"vdr-form-field",31),t.ALo(50,"translate"),t.ALo(51,"translate"),t.TgZ(52,"select",32),t.ALo(53,"hasPermission"),t.TgZ(54,"option",33),t._uU(55),t.ALo(56,"translate"),t.qZA(),t.TgZ(57,"option",33),t._uU(58),t.ALo(59,"translate"),t.qZA(),t.TgZ(60,"option",33),t._uU(61),t.ALo(62,"translate"),t.qZA()()(),t.TgZ(63,"vdr-form-item",34),t.ALo(64,"translate"),t.ALo(65,"translate"),t._UZ(66,"input",35),t.ALo(67,"hasPermission"),t.TgZ(68,"clr-toggle-wrapper"),t._UZ(69,"input",36),t.ALo(70,"hasPermission"),t.TgZ(71,"label"),t._uU(72),t.ALo(73,"translate"),t.qZA()()()(),t.YNc(74,Ys,8,13,"div",37),t.YNc(75,js,2,1,"ng-container",2),t.ALo(76,"async"),t.qZA()()()()}if(2&o){const e=n.ngIf,a=t.oxw();let i;t.Q6J("formGroup",a.detailForm),t.xp6(4),t.Q6J("label",t.lcZ(5,43,"catalog.visibility")),t.xp6(2),t.Q6J("vdrIfPermissions",t.DdM(95,tn)),t.xp6(1),t.Q6J("ngIf",e.options.length),t.xp6(1),t.Q6J("title",t.lcZ(9,45,"catalog.facets")),t.xp6(3),t.Q6J("ngForOf",t.lcZ(12,47,a.facetValues$)),t.xp6(3),t.Q6J("vdrIfPermissions",a.updatePermissions),t.xp6(2),t.Q6J("ngIf",t.lcZ(17,49,a.entity$)),t.xp6(6),t.Q6J("label",t.lcZ(23,51,"common.name")),t.xp6(2),t.Q6J("readonly",!t.lcZ(25,53,t.DdM(96,tn))),t.xp6(2),t.Q6J("label",t.lcZ(27,55,"catalog.sku")),t.xp6(2),t.Q6J("readonly",!t.lcZ(29,57,a.updatePermissions)),t.xp6(2),t.Q6J("ngIf",a.customFields.length),t.xp6(1),t.Q6J("entity$",a.entity$)("detailForm",a.detailForm),t.xp6(1),t.Q6J("title",t.lcZ(33,59,"catalog.assets")),t.xp6(2),t.Q6J("assets",a.assetChanges.assets||e.assets)("featuredAsset",a.assetChanges.featuredAsset||e.featuredAsset)("updatePermissions",a.updatePermissions),t.xp6(1),t.Q6J("title",t.lcZ(36,61,"catalog.price-and-tax")),t.xp6(3),t.Q6J("label",t.lcZ(39,63,"catalog.tax-category")),t.xp6(3),t.Q6J("ngForOf",t.lcZ(42,65,a.taxCategories$)),t.xp6(2),t.Q6J("ngForOf",a.pricesForm.controls),t.xp6(1),t.Q6J("ngIf",t.lcZ(45,67,a.unusedCurrencyCodes$)),t.xp6(2),t.Q6J("title",t.lcZ(47,69,"catalog.stock-levels")),t.xp6(3),t.Q6J("label",t.lcZ(50,71,"catalog.track-inventory"))("tooltip",t.lcZ(51,73,"catalog.track-inventory-tooltip")),t.xp6(3),t.Q6J("disabled",!t.lcZ(53,75,a.updatePermissions)),t.xp6(2),t.Q6J("value",a.GlobalFlag.TRUE),t.xp6(1),t.hij(" ",t.lcZ(56,77,"catalog.track-inventory-true")," "),t.xp6(2),t.Q6J("value",a.GlobalFlag.FALSE),t.xp6(1),t.hij(" ",t.lcZ(59,79,"catalog.track-inventory-false")," "),t.xp6(2),t.Q6J("value",a.GlobalFlag.INHERIT),t.xp6(1),t.hij(" ",t.lcZ(62,81,"catalog.track-inventory-inherit")," "),t.xp6(2),t.Q6J("label",t.lcZ(64,83,"catalog.out-of-stock-threshold"))("tooltip",t.lcZ(65,85,"catalog.out-of-stock-threshold-tooltip")),t.xp6(3),t.Q6J("readonly",!t.lcZ(67,87,a.updatePermissions))("vdrDisabled",!1!==(null==(i=a.detailForm.get("useGlobalOutOfStockThreshold"))?null:i.value)||a.inventoryIsNotTracked(a.detailForm)),t.xp6(3),t.Q6J("vdrDisabled",!t.lcZ(70,89,a.updatePermissions)||a.inventoryIsNotTracked(a.detailForm)),t.xp6(3),t.AsE("",t.lcZ(73,91,"catalog.use-global-value")," (",a.globalOutOfStockThreshold,")"),t.xp6(2),t.Q6J("ngForOf",a.stockLevelsForm.controls),t.xp6(1),t.Q6J("ngIf",t.lcZ(76,93,a.unusedStockLocation$))}}class Qe extends l.VE7{constructor(n,e,a,i,c,s){super(),this.productDetailService=n,this.formBuilder=e,this.modalService=a,this.notificationService=i,this.dataService=c,this.changeDetector=s,this.updatePermissions=[l.y3$.UpdateCatalog,l.y3$.UpdateProduct],this.customFields=this.getCustomFieldConfig("ProductVariant"),this.customOptionFields=this.getCustomFieldConfig("ProductOption"),this.detailForm=this.formBuilder.group({id:"",enabled:!1,sku:"",name:"",taxCategoryId:"",stockOnHand:0,useGlobalOutOfStockThreshold:!0,outOfStockThreshold:0,trackInventory:l.TvZ.TRUE,facetValueIds:[],customFields:this.formBuilder.group((0,l.Lrj)(this.customFields))}),this.stockLevelsForm=this.formBuilder.array([]),this.pricesForm=this.formBuilder.array([]),this.assetChanges={},this.GlobalFlag=l.TvZ}ngOnInit(){this.init(),this.dataService.settings.getGlobalSettings("cache-first").single$.subscribe(({globalSettings:c})=>{this.globalTrackInventory=c.trackInventory,this.globalOutOfStockThreshold=c.outOfStockThreshold,this.changeDetector.markForCheck()}),this.taxCategories$=this.result$.pipe((0,v.U)(c=>c.taxCategories.items));const n=this.result$.pipe((0,w.b)(c=>this.channelDefaultCurrencyCode=c.activeChannel.defaultCurrencyCode),(0,v.U)(c=>c.activeChannel.availableCurrencyCodes));this.unusedCurrencyCodes$=(0,I.a)(this.pricesForm.valueChanges,n).pipe((0,v.U)(([c,s])=>s.filter(p=>!c.map(_=>_.currencyCode).includes(p))));const e=this.result$.pipe((0,v.U)(c=>c.stockLocations.items));this.unusedStockLocation$=(0,I.a)(this.entity$,e).pipe((0,v.U)(([c,s])=>{const p=c.stockLevels.map(_=>_.stockLocation.id);return s.filter(_=>!p.includes(_.id))})),this.channelPriceIncludesTax$=this.dataService.settings.getActiveChannel("cache-first").refetchOnChannelChange().mapStream(c=>c.activeChannel.pricesIncludeTax).pipe((0,r.d)(1)),this.stockLevels$=this.entity$.pipe((0,v.U)(c=>c?.stockLevels??[]));const a=this.entity$.pipe((0,v.U)(c=>c.facetValues??[])),i=this.detailForm.get("facetValueIds").valueChanges.pipe((0,fs.T)(1),(0,S.x)(),(0,b.w)(c=>this.dataService.facet.getFacetValues({filter:{id:{in:c}}}).mapSingle(({facetValues:s})=>s.items)),(0,r.d)(1));this.facetValues$=(0,Ln.z)(a.pipe((0,Q.q)(1)),a.pipe(function vs(o,n){return(0,hs.m)(n)?(0,b.w)(()=>o,n):(0,b.w)(()=>o)}(i)))}ngOnDestroy(){this.destroy()}addPriceInCurrency(n){this.pricesForm.push(this.formBuilder.group({currencyCode:n,price:0,delete:!1}))}toggleDeletePrice(n){n.setValue(!n.value),n.markAsDirty()}addStockLocation(n){this.stockLevelsForm.push(this.formBuilder.group({stockLocationId:n.id,stockLocationName:n.name,stockOnHand:0,stockAllocated:0}))}save(){(0,I.a)(this.entity$,this.languageCode$).pipe((0,Q.q)(1),(0,J.z)(([n,e])=>{const a=(0,gs.e)(this.getUpdatedVariant(n,this.detailForm,e),["id","enabled","translations","sku","taxCategoryId","facetValueIds","featuredAssetId","assetIds","trackInventory","outOfStockThreshold","useGlobalOutOfStockThreshold","customFields"]);return this.stockLevelsForm.dirty&&(a.stockLevels=this.stockLevelsForm.controls.filter(i=>i.dirty).map(i=>({stockLocationId:i.value.stockLocationId,stockOnHand:i.value.stockOnHand}))),this.pricesForm.dirty&&(a.prices=this.pricesForm.controls.filter(i=>i.dirty).map(i=>({price:i.value.price,currencyCode:i.value.currencyCode,delete:!0===i.value.delete}))),this.dataService.mutate(l.YZY,{input:[a]})})).subscribe(n=>{this.detailForm.markAsPristine(),this.stockLevelsForm.markAsPristine(),this.pricesForm.markAsPristine(),this.assetChanges={},this.notificationService.success((0,u.J)("common.notify-update-success"),{entity:"ProductVariant"}),this.changeDetector.markForCheck()},n=>{this.notificationService.error((0,u.J)("common.notify-update-error"),{entity:"ProductVariant"})})}assetsChanged(){return!!Object.values(this.assetChanges).length}inventoryIsNotTracked(n){const e=n.get("trackInventory")?.value;return e===l.TvZ.FALSE||e===l.TvZ.INHERIT&&!1===this.globalTrackInventory}optionGroupCode(n){return this.entity?.product.optionGroups.find(a=>a.id===n)?.code}optionName(n){return(n.translations.find(a=>a.languageCode===this.languageCode)??n.translations[0]).name}removeFacetValue(n){const e=this.detailForm,a=e.value.facetValueIds??[];e.patchValue({facetValueIds:a.filter(i=>i!==n)}),e.markAsDirty()}selectFacetValue(){this.displayFacetValueModal().subscribe(n=>{if(n){const e=this.detailForm.value.facetValueIds??[];this.detailForm.patchValue({facetValueIds:(0,N.T)([...e,...n])}),this.detailForm.markAsDirty()}})}displayFacetValueModal(){return this.modalService.fromComponent(yt,{size:"md",closable:!0}).pipe((0,v.U)(n=>n&&n.map(e=>e.id)))}setFormValues(n,e){const a=(0,l.ZIM)(n,e),i=n.facetValues.map(c=>c.id);this.detailForm.patchValue({id:n.id,enabled:n.enabled,sku:n.sku,name:a?a.name:"",taxCategoryId:n.taxCategory.id,stockOnHand:n.stockLevels[0]?.stockOnHand??0,useGlobalOutOfStockThreshold:n.useGlobalOutOfStockThreshold,outOfStockThreshold:n.outOfStockThreshold,trackInventory:n.trackInventory,facetValueIds:i}),this.stockLevelsForm.clear();for(const c of n.stockLevels)this.stockLevelsForm.push(this.formBuilder.group({stockLocationId:c.stockLocation.id,stockLocationName:c.stockLocation.name,stockOnHand:c.stockOnHand,stockAllocated:c.stockAllocated}));this.pricesForm.clear();for(const c of n.prices)this.pricesForm.push(this.formBuilder.group({price:c.price,currencyCode:c.currencyCode,delete:!1}));this.customFields.length&&this.setCustomFieldFormValues(this.customFields,this.detailForm.get("customFields"),n,a)}getUpdatedVariant(n,e,a){return{...(0,l.iSy)({translatable:n,updatedFields:e.value,customFieldConfig:this.customFields,languageCode:a,defaultTranslation:{languageCode:a,name:n.name||""}}),assetIds:this.assetChanges.assets?.map(c=>c.id),featuredAssetId:this.assetChanges.featuredAsset?.id,facetValueIds:e.value.facetValueIds,taxCategoryId:e.value.taxCategoryId}}}(ce=Qe).\u0275fac=function(n){return new(n||ce)(t.Y36(pt),t.Y36(d.qu),t.Y36(l.Z7U),t.Y36(l.gqp),t.Y36(l.DoR),t.Y36(t.sBO))},ce.\u0275cmp=t.Xpm({type:ce,selectors:[["vdr-product-variant-detail"]],features:[t.qOj],decls:12,vars:10,consts:[[3,"grow"],[1,"flex","center"],[4,"ngIf"],[3,"productId"],["locationId","product-variant-detail"],["class","btn btn-primary",3,"disabled","click",4,"vdrIfPermissions"],["class","form",3,"formGroup",4,"ngIf"],["class","mr-2",3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange",4,"ngIf"],[1,"mr-2",3,"disabled","availableLanguageCodes","currentLanguageCode","languageCodeChange"],[1,"btn","btn-primary",3,"disabled","click"],[1,"form",3,"formGroup"],["for","visibility",3,"label"],[4,"vdrIfPermissions"],[3,"title",4,"ngIf"],[3,"title"],[1,"facets"],[3,"facetValue","removable","remove",4,"ngFor","ngForOf"],["class","button-small mt-2",3,"click",4,"vdrIfPermissions"],[3,"entity",4,"ngIf"],["type","submit","hidden","","x-data","prevents enter key from triggering other buttons"],[1,"form-grid"],["for","name",3,"label"],["id","name","type","text","formControlName","name",3,"readonly"],["for","sku",3,"label"],["id","sku","type","text","formControlName","sku",3,"readonly"],["locationId","product-variant-detail",3,"entity$","detailForm"],[3,"assets","featuredAsset","updatePermissions","change"],["for","taxCategory",3,"label"],["name","taxCategory","formControlName","taxCategoryId"],[3,"value",4,"ngFor","ngForOf"],["class","form-grid prices",3,"formGroup",4,"ngFor","ngForOf"],["for","track-inventory",3,"label","tooltip"],["name","track-inventory","formControlName","trackInventory",3,"disabled"],[3,"value"],[3,"label","tooltip"],["type","number","formControlName","outOfStockThreshold",3,"readonly","vdrDisabled"],["type","checkbox","clrToggle","","name","useGlobalOutOfStockThreshold","formControlName","useGlobalOutOfStockThreshold",3,"vdrDisabled"],["class","form-grid stock-levels",3,"formGroup",4,"ngFor","ngForOf"],["type","checkbox","clrToggle","","name","enabled",3,"formControl"],[1,"options"],[3,"colorFrom","invert",4,"ngFor","ngForOf"],["class","button-small mt-2",3,"routerLink",4,"vdrIfPermissions"],[3,"colorFrom","invert"],[1,"button-small","mt-2",3,"routerLink"],["shape","pencil"],[3,"facetValue","removable","remove"],[1,"button-small","mt-2",3,"click"],["shape","plus"],[3,"entity"],["entityName","ProductVariant",3,"customFields","customFieldsFormGroup","readonly"],[1,"form-grid","prices",3,"formGroup"],["for","price",3,"label","tooltip"],[1,"price-wrapper"],["name","price","formControlName","price",3,"currencyCode","readonly"],[3,"price","currencyCode","priceIncludesTax","taxCategoryId"],[1,"button-small","delete-button",3,"disabled","click"],["shape","trash"],["vdrDropdownTrigger","",1,"button","mt-2"],["shape","ellipsis-vertical"],["vdrDropdownItem","",3,"click",4,"ngFor","ngForOf"],["vdrDropdownItem","",3,"click"],[1,"form-grid","stock-levels",3,"formGroup"],[3,"label","for"],["type","number","formControlName","stockOnHand",3,"id","readonly"],[3,"label"],["shape","map-marker"]],template:function(n,e){1&n&&(t.TgZ(0,"vdr-page-block")(1,"vdr-action-bar")(2,"vdr-ab-left",0)(3,"div",1),t.YNc(4,Is,2,1,"ng-container",2),t.ALo(5,"async"),t._UZ(6,"vdr-product-variant-quick-jump",3),t.qZA()(),t.TgZ(7,"vdr-ab-right"),t._UZ(8,"vdr-action-bar-items",4),t.YNc(9,Fs,3,4,"button",5),t.qZA()()(),t.YNc(10,Ks,77,97,"form",6),t.ALo(11,"async")),2&n&&(t.xp6(2),t.Q6J("grow",!0),t.xp6(2),t.Q6J("ngIf",t.lcZ(5,5,e.availableLanguages$)),t.xp6(2),t.Q6J("productId",null==e.entity?null:e.entity.product.id),t.xp6(3),t.Q6J("vdrIfPermissions",t.DdM(9,tn)),t.xp6(1),t.Q6J("ngIf",t.lcZ(11,7,e.entity$)))},dependencies:[h.qvL,h.MgK,h.KKC,h.PEh,g.sg,g.O5,d._Y,d.YN,d.Kr,d.Fj,d.wV,d.Wl,d.EJ,d.JJ,d.JL,d.oH,d.sg,d.u,P.rH,A.Kk,A.BN,A.mz,H.Y,fe.K,Ze.q,q.h,y.y,kn.J,G.S,ht.J,vt.N,Ct.U,Tt.H,$.H,tt.W,Pe.x,ut.y,Oe.C,E.z,At.D,Ie.T,Fe.W,nt.A,bt,Se,we,g.Ov,x.X$,Ps.u,Xe.U,B.j],styles:[".facets[_ngcontent-%COMP%], .options[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:3px}vdr-product-variant-quick-jump[_ngcontent-%COMP%]{flex:1;margin-inline-end:calc(var(--space-unit) * 2)}.stock-levels[_ngcontent-%COMP%], .prices[_ngcontent-%COMP%]{margin-top:calc(var(--space-unit) * 2);padding-top:calc(var(--space-unit) * 2);border-top:1px solid var(--color-weight-150)}.price-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;gap:var(--space-unit);width:100%}.price-wrapper.pending-deletion[_ngcontent-%COMP%] vdr-currency-input[_ngcontent-%COMP%]{opacity:.7}.price-wrapper.pending-deletion[_ngcontent-%COMP%] .delete-button[_ngcontent-%COMP%]{background-color:var(--color-error-700);color:var(--color-error-100)}"],changeDetection:0});const En={location:"product-variant-list",label:(0,u.J)("catalog.assign-to-channel"),icon:"layers",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),isVisible:({injector:o})=>(0,l.SDV)(o.get(l.DoR)),onClick:({injector:o,selection:n,clearSelection:e})=>{o.get(l.Z7U).fromComponent(rt,{size:"lg",locals:{productVariantIds:(0,N.T)(n.map(i=>i.id)),currentChannelIds:[]}}).subscribe(i=>{i&&e()})}},Vn=(0,l.RBx)({location:"product-variant-list",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),getItemName:o=>o.name,bulkRemoveFromChannel:(o,n,e)=>o.product.removeVariantsFromChannel({channelId:e,productVariantIds:n}).pipe((0,v.U)(a=>a.removeProductVariantsFromChannel))}),Sn={location:"product-variant-list",label:(0,u.J)("common.delete"),icon:"trash",iconClass:"is-danger",requiresPermission:o=>o.includes(l.y3$.DeleteProduct)||o.includes(l.y3$.DeleteCatalog),onClick:({injector:o,selection:n,hostComponent:e,clearSelection:a})=>{const i=o.get(l.Z7U),c=o.get(l.DoR),s=o.get(l.gqp);i.dialog({title:(0,u.J)("common.confirm-bulk-delete"),translationVars:{count:n.length},buttons:[{type:"secondary",label:(0,u.J)("common.cancel")},{type:"danger",label:(0,u.J)("common.delete"),returnValue:!0}]}).pipe((0,b.w)(p=>p?c.product.deleteProductVariants((0,N.T)(n.map(_=>_.id))):F.E)).subscribe(p=>{let _=0;const f=[];for(const T of p.deleteProductVariants)T.result===l.PcR.DELETED?_++:T.message&&f.push(T.message);0<_&&s.success((0,u.J)("catalog.notify-bulk-delete-products-success"),{count:_}),0<f.length&&s.error(f.join("\n")),e.refresh(),a()})}},wn={location:"product-variant-list",label:(0,u.J)("catalog.edit-facet-values"),icon:"tag",requiresPermission:o=>o.includes(l.y3$.UpdateCatalog)||o.includes(l.y3$.UpdateProduct),onClick:({injector:o,selection:n,clearSelection:e})=>{const a=o.get(l.Z7U),i=o.get(l.gqp),c="variant",s=(0,N.T)(n.map(p=>p.id));return a.fromComponent(Rt,{size:"xl",locals:{mode:c,ids:s}}).subscribe(p=>{p&&(i.success((0,u.J)("common.notify-bulk-update-success"),{count:n.length,entity:"Products"}),e())})}};var le,se,Hs=m(24242);function Ws(o,n){if(1&o&&(t.ynx(0),t.TgZ(1,"th"),t._uU(2),t.qZA(),t.BQk()),2&o){const e=n.$implicit;t.xp6(2),t.Oqu(e.name)}}function zs(o,n){if(1&o&&(t._UZ(0,"img",18),t.ALo(1,"assetPreview")),2&o){const e=n.ngIf;t.Q6J("src",t.xi3(1,1,e,"tiny"),t.LSH)}}function Xs(o,n){1&o&&(t.TgZ(0,"div",19),t._UZ(1,"clr-icon",20),t.qZA())}function td(o,n){if(1&o&&(t.ynx(0),t.TgZ(1,"td",5),t.ALo(2,"stringToColor"),t._uU(3),t.qZA(),t.BQk()),2&o){const e=n.$implicit,a=t.oxw().ngIf,i=t.oxw(2);t.xp6(1),t.Udp("color",t.lcZ(2,5,i.optionGroupName(e.groupId))),t.ekj("disabled",!a.get("enabled").value),t.xp6(2),t.hij(" ",e.name," ")}}function ed(o,n){if(1&o&&(t._UZ(0,"vdr-currency-input",21),t.ALo(1,"hasPermission")),2&o){const e=t.oxw(2).$implicit,a=t.oxw();t.Q6J("currencyCode",e.currencyCode)("readonly",!t.lcZ(1,2,a.updatePermission))}}function nd(o,n){if(1&o&&(t._UZ(0,"vdr-currency-input",22),t.ALo(1,"hasPermission")),2&o){const e=t.oxw(2).$implicit,a=t.oxw();t.Q6J("currencyCode",e.currencyCode)("readonly",!t.lcZ(1,2,a.updatePermission))}}function od(o,n){if(1&o&&(t.ynx(0,4),t.TgZ(1,"td",5)(2,"div",6)(3,"div",7),t.YNc(4,zs,2,4,"img",8),t.YNc(5,Xs,2,0,"ng-template",null,9,t.W1O),t.qZA()()(),t.TgZ(7,"td",5)(8,"clr-input-container"),t._UZ(9,"input",10),t.ALo(10,"hasPermission"),t.ALo(11,"translate"),t.qZA()(),t.TgZ(12,"td",5)(13,"clr-input-container"),t._UZ(14,"input",11),t.ALo(15,"hasPermission"),t.ALo(16,"translate"),t.qZA()(),t.YNc(17,td,4,7,"ng-container",1),t.ALo(18,"sort"),t.TgZ(19,"td",12)(20,"clr-input-container"),t.YNc(21,ed,2,4,"vdr-currency-input",13),t.YNc(22,nd,2,4,"vdr-currency-input",14),t.qZA()(),t.TgZ(23,"td",15)(24,"clr-input-container"),t._UZ(25,"input",16),t.ALo(26,"hasPermission"),t.qZA()(),t.TgZ(27,"td",15)(28,"clr-toggle-wrapper"),t._UZ(29,"input",17),t.ALo(30,"hasPermission"),t.qZA()(),t.BQk()),2&o){const e=n.ngIf,a=t.MAs(6),i=t.oxw().$implicit,c=t.oxw();t.Q6J("formGroup",e),t.xp6(1),t.ekj("disabled",!e.get("enabled").value),t.xp6(3),t.Q6J("ngIf",c.getFeaturedAsset(i))("ngIfElse",a),t.xp6(3),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("readonly",!t.lcZ(10,24,c.updatePermission))("placeholder",t.lcZ(11,26,"common.name")),t.xp6(3),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("readonly",!t.lcZ(15,28,c.updatePermission))("placeholder",t.lcZ(16,30,"catalog.sku")),t.xp6(3),t.Q6J("ngForOf",t.xi3(18,32,i.options,"groupId")),t.xp6(2),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("ngIf",!c.channelPriceIncludesTax),t.xp6(1),t.Q6J("ngIf",c.channelPriceIncludesTax),t.xp6(1),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("readonly",!t.lcZ(26,35,c.updatePermission)),t.xp6(2),t.ekj("disabled",!e.get("enabled").value),t.xp6(2),t.Q6J("vdrDisabled",!t.lcZ(30,37,c.updatePermission))}}function ad(o,n){if(1&o&&(t.TgZ(0,"tr"),t.YNc(1,od,31,39,"ng-container",3),t.qZA()),2&o){const e=n.$implicit,a=t.oxw();t.xp6(1),t.Q6J("ngIf",a.formGroupMap.get(e.id))}}class en{constructor(n){this.changeDetector=n,this.formGroupMap=new Map,this.updatePermission=[l.y3$.UpdateCatalog,l.y3$.UpdateProduct]}ngOnInit(){this.subscription=this.formArray.valueChanges.pipe((0,v.U)(n=>n.length),(0,it.b)(1),(0,S.x)()).subscribe(()=>{this.buildFormGroupMap()}),this.buildFormGroupMap()}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}trackByFn(n,e){return null!=e.id?e.id:n}getFeaturedAsset(n){return this.pendingAssetChanges[n.id]?.featuredAsset||n.featuredAsset}optionGroupName(n){const e=this.optionGroups.find(a=>a.id===n);return e&&e.name}buildFormGroupMap(){this.formGroupMap.clear();for(const n of this.formArray.controls)this.formGroupMap.set(n.value.id,n);this.changeDetector.markForCheck()}}function id(o,n){1&o&&(t._uU(0),t.ALo(1,"translate")),2&o&&t.Oqu(t.lcZ(1,1,"catalog.update-product-option"))}(le=en).\u0275fac=function(n){return new(n||le)(t.Y36(t.sBO))},le.\u0275cmp=t.Xpm({type:le,selectors:[["vdr-product-variants-table"]],inputs:{formArray:["productVariantsFormArray","formArray"],variants:"variants",paginationConfig:"paginationConfig",channelPriceIncludesTax:"channelPriceIncludesTax",optionGroups:"optionGroups",pendingAssetChanges:"pendingAssetChanges"},decls:24,vars:24,consts:[[1,"table"],[4,"ngFor","ngForOf"],[4,"ngFor","ngForOf","ngForTrackBy"],[3,"formGroup",4,"ngIf"],[3,"formGroup"],[1,"left","align-middle"],[1,"card-img"],[1,"featured-asset"],[3,"src",4,"ngIf","ngIfElse"],["placeholder",""],["clrInput","","type","text","formControlName","name",3,"readonly","placeholder"],["clrInput","","type","text","formControlName","sku",3,"readonly","placeholder"],[1,"left","align-middle","price"],["clrInput","","formControlName","price",3,"currencyCode","readonly",4,"ngIf"],["clrInput","","formControlName","priceWithTax",3,"currencyCode","readonly",4,"ngIf"],[1,"left","align-middle","stock"],["clrInput","","type","number","min","0","step","1","formControlName","stockOnHand",3,"readonly"],["type","checkbox","clrToggle","","name","enabled","formControlName","enabled",3,"vdrDisabled"],[3,"src"],[1,"placeholder"],["shape","image","size","48"],["clrInput","","formControlName","price",3,"currencyCode","readonly"],["clrInput","","formControlName","priceWithTax",3,"currencyCode","readonly"]],template:function(n,e){1&n&&(t.TgZ(0,"table",0)(1,"thead")(2,"tr"),t._UZ(3,"th"),t.TgZ(4,"th"),t._uU(5),t.ALo(6,"translate"),t.qZA(),t.TgZ(7,"th"),t._uU(8),t.ALo(9,"translate"),t.qZA(),t.YNc(10,Ws,3,1,"ng-container",1),t.ALo(11,"sort"),t.TgZ(12,"th"),t._uU(13),t.ALo(14,"translate"),t.qZA(),t.TgZ(15,"th"),t._uU(16),t.ALo(17,"translate"),t.qZA(),t.TgZ(18,"th"),t._uU(19),t.ALo(20,"translate"),t.qZA()()(),t.TgZ(21,"tbody"),t.YNc(22,ad,2,1,"tr",2),t.ALo(23,"paginate"),t.qZA()()),2&n&&(t.xp6(5),t.Oqu(t.lcZ(6,8,"common.name")),t.xp6(3),t.Oqu(t.lcZ(9,10,"catalog.sku")),t.xp6(2),t.Q6J("ngForOf",t.xi3(11,12,e.optionGroups,"id")),t.xp6(3),t.Oqu(t.lcZ(14,15,"catalog.price")),t.xp6(3),t.Oqu(t.lcZ(17,17,"catalog.stock-on-hand")),t.xp6(3),t.Oqu(t.lcZ(20,19,"common.enabled")),t.xp6(3),t.Q6J("ngForOf",t.xi3(23,21,e.variants,e.paginationConfig))("ngForTrackBy",e.trackByFn))},dependencies:[h.q0d,h.qvL,h.KKC,h.PEh,h.xRP,h.G55,g.sg,g.O5,d.Fj,d.wV,d.Wl,d.JJ,d.JL,d.qQ,d.sg,d.u,fe.K,y.y,Pe.x,be._s,x.X$,Xe.U,Hs.s,B.j,Ae.M],styles:[".placeholder[_ngcontent-%COMP%]{color:var(--color-grey-300)}.stock[_ngcontent-%COMP%] input[_ngcontent-%COMP%], .price[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{max-width:96px}td[_ngcontent-%COMP%]{transition:background-color .2s}td.disabled[_ngcontent-%COMP%]{background-color:var(--color-component-bg-200)}"],changeDetection:0});const rd=function(){return["UpdateCatalog","UpdateProduct"]};function cd(o,n){if(1&o&&(t.TgZ(0,"section")(1,"label"),t._uU(2),t.ALo(3,"translate"),t.qZA(),t._UZ(4,"vdr-tabbed-custom-fields",10),t.ALo(5,"hasPermission"),t.qZA()),2&o){const e=t.oxw();t.xp6(2),t.Oqu(t.lcZ(3,4,"common.custom-fields")),t.xp6(2),t.Q6J("customFields",e.customFields)("customFieldsFormGroup",e.customFieldsForm)("readonly",!t.lcZ(5,6,t.DdM(8,rd)))}}function ld(o,n){if(1&o){const e=t.EpF();t.TgZ(0,"button",11),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.cancel())}),t._uU(1),t.ALo(2,"translate"),t.qZA(),t.TgZ(3,"button",12),t.NdJ("click",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.update())}),t._uU(4),t.ALo(5,"translate"),t.qZA()}if(2&o){const e=t.oxw(),a=t.MAs(4),i=t.MAs(8);t.xp6(1),t.Oqu(t.lcZ(2,3,"common.cancel")),t.xp6(2),t.Q6J("disabled",a.invalid||i.invalid||a.pristine&&i.pristine&&e.customFieldsForm.pristine),t.xp6(1),t.hij(" ",t.lcZ(5,5,"catalog.update-product-option")," ")}}class nn{constructor(){this.updateVariantName=!0,this.codeInputTouched=!1}ngOnInit(){const n=this.productOption.translations.find(e=>e.languageCode===this.activeLanguage);if(this.name=n?.name??"",this.code=this.productOption.code,this.customFieldsForm=new d.nJ({}),this.customFields){const e=n&&n.customFields||{};for(const a of this.customFields){const i=a.name,c="localeString"===a.type?e[i]:this.productOption.customFields[i];this.customFieldsForm.addControl(a.name,new d.p4(c))}}}update(){const n=(0,l.iSy)({translatable:this.productOption,languageCode:this.activeLanguage,updatedFields:{code:this.code,name:this.name,customFields:this.customFieldsForm.value},customFieldConfig:this.customFields,defaultTranslation:{languageCode:this.activeLanguage,name:""}});this.resolveWith({...n,autoUpdate:this.updateVariantName})}cancel(){this.resolveWith()}updateCode(n){!this.codeInputTouched&&!this.productOption.code&&(this.code=(0,R.U)(n,"-"))}}var lt;(se=nn).\u0275fac=function(n){return new(n||se)},se.\u0275cmp=t.Xpm({type:se,selectors:[["vdr-update-product-option-dialog"]],decls:16,vars:13,consts:[["vdrDialogTitle",""],["for","name",3,"label"],["id","name","type","text","required","",3,"ngModel","ngModelChange","input"],["nameInput","ngModel"],["for","code",3,"label"],["id","code","type","text","required","","pattern","[a-z0-9_-]+",3,"ngModel","ngModelChange"],["codeInput","ngModel"],["type","checkbox","clrCheckbox","",3,"ngModel","ngModelChange"],[4,"ngIf"],["vdrDialogButtons",""],["entityName","ProductOption",3,"customFields","customFieldsFormGroup","readonly"],["type","button",1,"btn",3,"click"],["type","submit",1,"btn","btn-primary",3,"disabled","click"]],template:function(n,e){1&n&&(t.YNc(0,id,2,3,"ng-template",0),t.TgZ(1,"vdr-form-field",1),t.ALo(2,"translate"),t.TgZ(3,"input",2,3),t.NdJ("ngModelChange",function(i){return e.name=i})("input",function(i){return e.updateCode(i.target.value)}),t.qZA()(),t.TgZ(5,"vdr-form-field",4),t.ALo(6,"translate"),t.TgZ(7,"input",5,6),t.NdJ("ngModelChange",function(i){return e.code=i}),t.qZA()(),t.TgZ(9,"clr-checkbox-wrapper")(10,"input",7),t.NdJ("ngModelChange",function(i){return e.updateVariantName=i}),t.qZA(),t.TgZ(11,"label"),t._uU(12),t.ALo(13,"translate"),t.qZA()(),t.YNc(14,cd,6,9,"section",8),t.YNc(15,ld,6,7,"ng-template",9)),2&n&&(t.xp6(1),t.Q6J("label",t.lcZ(2,7,"catalog.option-name")),t.xp6(2),t.Q6J("ngModel",e.name),t.xp6(2),t.Q6J("label",t.lcZ(6,9,"common.code")),t.xp6(2),t.Q6J("ngModel",e.code),t.xp6(3),t.Q6J("ngModel",e.updateVariantName),t.xp6(2),t.Oqu(t.lcZ(13,11,"catalog.auto-update-option-variant-name")),t.xp6(2),t.Q6J("ngIf",e.customFields.length))},dependencies:[h.MgK,h.KKC,h.PEh,g.O5,d.Fj,d.Wl,d.JJ,d.Q7,d.c5,d.On,q.h,y.y,X.n,K.q,ut.y,x.X$,B.j],changeDetection:0});class de{constructor(n,e){de.hasRegisteredTabsAndBulkActions||(n.registerBulkAction(Rn),n.registerBulkAction(Un),n.registerBulkAction(En),n.registerBulkAction(Mn),n.registerBulkAction(Vn),n.registerBulkAction(Jn),n.registerBulkAction(Sn),n.registerBulkAction(wn),n.registerBulkAction(Dn),n.registerBulkAction(yn),n.registerBulkAction(Fn),n.registerBulkAction(bn),n.registerBulkAction(xn),n.registerBulkAction(An),n.registerBulkAction(Tn),e.registerPageTab({priority:0,location:"product-list",tab:(0,u.J)("catalog.products"),route:"",component:Ve}),e.registerPageTab({priority:0,location:"product-detail",tab:(0,u.J)("catalog.product"),route:"",component:(0,l.IX9)({component:oe,query:l.R2H,entityKey:"product",getBreadcrumbs:a=>[{label:a?a.name:(0,u.J)("catalog.create-new-product"),link:[a?.id]}]})}),e.registerPageTab({priority:0,location:"product-list",tab:(0,u.J)("catalog.product-variants"),route:"variants",component:ee}),e.registerPageTab({priority:0,location:"product-variant-detail",tab:(0,u.J)("catalog.product-variants"),route:"",component:(0,l.IX9)({component:Qe,query:l.EB8,entityKey:"productVariant",getBreadcrumbs:a=>[{label:`${a?.product.name}`,link:["/catalog","products",a?.product.id]},{label:`${a?.name} (${a?.sku})`,link:["variants",a?.id]}]})}),e.registerPageTab({priority:0,location:"facet-list",tab:(0,u.J)("catalog.facets"),route:"",component:Re}),e.registerPageTab({priority:0,location:"facet-detail",tab:(0,u.J)("catalog.facet"),route:"",component:(0,l.IX9)({component:Me,query:l.m_w,variables:{facetValueListOptions:{take:10,skip:0,sort:{createdAt:ue.As.DESC}}},entityKey:"facet",getBreadcrumbs:a=>[{label:a?a.name:(0,u.J)("catalog.create-new-facet"),link:[a?.id]}]})}),e.registerPageTab({priority:0,location:"collection-list",tab:(0,u.J)("catalog.collections"),route:"",component:Ne}),e.registerPageTab({priority:0,location:"collection-detail",tab:(0,u.J)("catalog.collection"),route:"",component:(0,l.IX9)({component:De,query:l.B3M,entityKey:"collection",getBreadcrumbs:a=>[{label:a?a.name:(0,u.J)("catalog.create-new-collection"),link:[a?.id]}]})}),e.registerPageTab({priority:0,location:"asset-list",tab:(0,u.J)("catalog.assets"),route:"",component:xe}),e.registerPageTab({priority:0,location:"asset-detail",tab:(0,u.J)("catalog.asset"),route:"",component:(0,l.IX9)({component:Te,query:l.SS8,entityKey:"asset",getBreadcrumbs:a=>[{label:`${a?.name}`,link:[a?.id]}]})}),de.hasRegisteredTabsAndBulkActions=!0)}}(lt=de).hasRegisteredTabsAndBulkActions=!1,lt.\u0275fac=function(n){return new(n||lt)(t.LFG(l._4w),t.LFG(l.PhL))},lt.\u0275mod=t.oAB({type:lt}),lt.\u0275inj=t.cJS({providers:[{provide:P.Z6,useFactory:o=>cn(o),multi:!0,deps:[l.PhL]}],imports:[l.m81,P.Bz.forChild([])]});const sd=D.Ps`
118
118
  fragment ProductListQueryProductFragment on Product {
119
119
  id
120
120
  createdAt
@@ -137,7 +137,7 @@
137
137
  totalItems
138
138
  }
139
139
  }
140
- `,sd=D.Ps`
140
+ `,dd=D.Ps`
141
141
  query ProductListQuery($options: ProductListOptions) {
142
142
  products(options: $options) {
143
143
  items {
@@ -146,7 +146,7 @@
146
146
  totalItems
147
147
  }
148
148
  }
149
- ${ld}
149
+ ${sd}
150
150
  `,on=D.Ps`
151
151
  fragment ProductVariantDetailQueryProductVariantFragment on ProductVariant {
152
152
  id
@@ -233,7 +233,7 @@
233
233
  }
234
234
  }
235
235
  }
236
- `,dd=D.Ps`
236
+ `,pd=D.Ps`
237
237
  query GetProductVariantDetail($id: ID!) {
238
238
  productVariant(id: $id) {
239
239
  ...ProductVariantDetailQueryProductVariantFragment
@@ -264,14 +264,14 @@
264
264
  }
265
265
  }
266
266
  ${on}
267
- `,pd=D.Ps`
267
+ `,ud=D.Ps`
268
268
  mutation ProductVariantUpdateMutation($input: [UpdateProductVariantInput!]!) {
269
269
  updateProductVariants(input: $input) {
270
270
  ...ProductVariantDetailQueryProductVariantFragment
271
271
  }
272
272
  }
273
273
  ${on}
274
- `,ud=D.Ps`
274
+ `,md=D.Ps`
275
275
  fragment ProductVariantListQueryProductVariantFragment on ProductVariant {
276
276
  id
277
277
  createdAt
@@ -307,7 +307,7 @@
307
307
  }
308
308
 
309
309
  ${l.fed}
310
- `,md=D.Ps`
310
+ `,_d=D.Ps`
311
311
  query ProductVariantListQuery($options: ProductVariantListOptions!) {
312
312
  productVariants(options: $options) {
313
313
  items {
@@ -316,6 +316,6 @@
316
316
  totalItems
317
317
  }
318
318
  }
319
- ${ud}
320
- `},67554:(wn,C)=>{var r;C.Tg=C.As=C.y3=C.mr=C.t0=C.X8=C.Fn=C.sp=C.Zy=C.iY=C.Tv=C.jK=C.Pc=C.NE=C.h3=C.S2=void 0,(r=C.S2||(C.S2={})).DISTRIBUTED_ORDER_PROMOTION="DISTRIBUTED_ORDER_PROMOTION",r.OTHER="OTHER",r.PROMOTION="PROMOTION",function(r){r.BINARY="BINARY",r.IMAGE="IMAGE",r.VIDEO="VIDEO"}(C.h3||(C.h3={})),function(r){r.AED="AED",r.AFN="AFN",r.ALL="ALL",r.AMD="AMD",r.ANG="ANG",r.AOA="AOA",r.ARS="ARS",r.AUD="AUD",r.AWG="AWG",r.AZN="AZN",r.BAM="BAM",r.BBD="BBD",r.BDT="BDT",r.BGN="BGN",r.BHD="BHD",r.BIF="BIF",r.BMD="BMD",r.BND="BND",r.BOB="BOB",r.BRL="BRL",r.BSD="BSD",r.BTN="BTN",r.BWP="BWP",r.BYN="BYN",r.BZD="BZD",r.CAD="CAD",r.CDF="CDF",r.CHF="CHF",r.CLP="CLP",r.CNY="CNY",r.COP="COP",r.CRC="CRC",r.CUC="CUC",r.CUP="CUP",r.CVE="CVE",r.CZK="CZK",r.DJF="DJF",r.DKK="DKK",r.DOP="DOP",r.DZD="DZD",r.EGP="EGP",r.ERN="ERN",r.ETB="ETB",r.EUR="EUR",r.FJD="FJD",r.FKP="FKP",r.GBP="GBP",r.GEL="GEL",r.GHS="GHS",r.GIP="GIP",r.GMD="GMD",r.GNF="GNF",r.GTQ="GTQ",r.GYD="GYD",r.HKD="HKD",r.HNL="HNL",r.HRK="HRK",r.HTG="HTG",r.HUF="HUF",r.IDR="IDR",r.ILS="ILS",r.INR="INR",r.IQD="IQD",r.IRR="IRR",r.ISK="ISK",r.JMD="JMD",r.JOD="JOD",r.JPY="JPY",r.KES="KES",r.KGS="KGS",r.KHR="KHR",r.KMF="KMF",r.KPW="KPW",r.KRW="KRW",r.KWD="KWD",r.KYD="KYD",r.KZT="KZT",r.LAK="LAK",r.LBP="LBP",r.LKR="LKR",r.LRD="LRD",r.LSL="LSL",r.LYD="LYD",r.MAD="MAD",r.MDL="MDL",r.MGA="MGA",r.MKD="MKD",r.MMK="MMK",r.MNT="MNT",r.MOP="MOP",r.MRU="MRU",r.MUR="MUR",r.MVR="MVR",r.MWK="MWK",r.MXN="MXN",r.MYR="MYR",r.MZN="MZN",r.NAD="NAD",r.NGN="NGN",r.NIO="NIO",r.NOK="NOK",r.NPR="NPR",r.NZD="NZD",r.OMR="OMR",r.PAB="PAB",r.PEN="PEN",r.PGK="PGK",r.PHP="PHP",r.PKR="PKR",r.PLN="PLN",r.PYG="PYG",r.QAR="QAR",r.RON="RON",r.RSD="RSD",r.RUB="RUB",r.RWF="RWF",r.SAR="SAR",r.SBD="SBD",r.SCR="SCR",r.SDG="SDG",r.SEK="SEK",r.SGD="SGD",r.SHP="SHP",r.SLL="SLL",r.SOS="SOS",r.SRD="SRD",r.SSP="SSP",r.STN="STN",r.SVC="SVC",r.SYP="SYP",r.SZL="SZL",r.THB="THB",r.TJS="TJS",r.TMT="TMT",r.TND="TND",r.TOP="TOP",r.TRY="TRY",r.TTD="TTD",r.TWD="TWD",r.TZS="TZS",r.UAH="UAH",r.UGX="UGX",r.USD="USD",r.UYU="UYU",r.UZS="UZS",r.VES="VES",r.VND="VND",r.VUV="VUV",r.WST="WST",r.XAF="XAF",r.XCD="XCD",r.XOF="XOF",r.XPF="XPF",r.YER="YER",r.ZAR="ZAR",r.ZMW="ZMW",r.ZWL="ZWL"}(C.NE||(C.NE={})),function(r){r.DELETED="DELETED",r.NOT_DELETED="NOT_DELETED"}(C.Pc||(C.Pc={})),function(r){r.ALREADY_REFUNDED_ERROR="ALREADY_REFUNDED_ERROR",r.CANCEL_ACTIVE_ORDER_ERROR="CANCEL_ACTIVE_ORDER_ERROR",r.CANCEL_PAYMENT_ERROR="CANCEL_PAYMENT_ERROR",r.CHANNEL_DEFAULT_LANGUAGE_ERROR="CHANNEL_DEFAULT_LANGUAGE_ERROR",r.COUPON_CODE_EXPIRED_ERROR="COUPON_CODE_EXPIRED_ERROR",r.COUPON_CODE_INVALID_ERROR="COUPON_CODE_INVALID_ERROR",r.COUPON_CODE_LIMIT_ERROR="COUPON_CODE_LIMIT_ERROR",r.CREATE_FULFILLMENT_ERROR="CREATE_FULFILLMENT_ERROR",r.EMAIL_ADDRESS_CONFLICT_ERROR="EMAIL_ADDRESS_CONFLICT_ERROR",r.EMPTY_ORDER_LINE_SELECTION_ERROR="EMPTY_ORDER_LINE_SELECTION_ERROR",r.FACET_IN_USE_ERROR="FACET_IN_USE_ERROR",r.FULFILLMENT_STATE_TRANSITION_ERROR="FULFILLMENT_STATE_TRANSITION_ERROR",r.GUEST_CHECKOUT_ERROR="GUEST_CHECKOUT_ERROR",r.INELIGIBLE_SHIPPING_METHOD_ERROR="INELIGIBLE_SHIPPING_METHOD_ERROR",r.INSUFFICIENT_STOCK_ERROR="INSUFFICIENT_STOCK_ERROR",r.INSUFFICIENT_STOCK_ON_HAND_ERROR="INSUFFICIENT_STOCK_ON_HAND_ERROR",r.INVALID_CREDENTIALS_ERROR="INVALID_CREDENTIALS_ERROR",r.INVALID_FULFILLMENT_HANDLER_ERROR="INVALID_FULFILLMENT_HANDLER_ERROR",r.ITEMS_ALREADY_FULFILLED_ERROR="ITEMS_ALREADY_FULFILLED_ERROR",r.LANGUAGE_NOT_AVAILABLE_ERROR="LANGUAGE_NOT_AVAILABLE_ERROR",r.MANUAL_PAYMENT_STATE_ERROR="MANUAL_PAYMENT_STATE_ERROR",r.MIME_TYPE_ERROR="MIME_TYPE_ERROR",r.MISSING_CONDITIONS_ERROR="MISSING_CONDITIONS_ERROR",r.MULTIPLE_ORDER_ERROR="MULTIPLE_ORDER_ERROR",r.NATIVE_AUTH_STRATEGY_ERROR="NATIVE_AUTH_STRATEGY_ERROR",r.NEGATIVE_QUANTITY_ERROR="NEGATIVE_QUANTITY_ERROR",r.NOTHING_TO_REFUND_ERROR="NOTHING_TO_REFUND_ERROR",r.NO_ACTIVE_ORDER_ERROR="NO_ACTIVE_ORDER_ERROR",r.NO_CHANGES_SPECIFIED_ERROR="NO_CHANGES_SPECIFIED_ERROR",r.ORDER_LIMIT_ERROR="ORDER_LIMIT_ERROR",r.ORDER_MODIFICATION_ERROR="ORDER_MODIFICATION_ERROR",r.ORDER_MODIFICATION_STATE_ERROR="ORDER_MODIFICATION_STATE_ERROR",r.ORDER_STATE_TRANSITION_ERROR="ORDER_STATE_TRANSITION_ERROR",r.PAYMENT_METHOD_MISSING_ERROR="PAYMENT_METHOD_MISSING_ERROR",r.PAYMENT_ORDER_MISMATCH_ERROR="PAYMENT_ORDER_MISMATCH_ERROR",r.PAYMENT_STATE_TRANSITION_ERROR="PAYMENT_STATE_TRANSITION_ERROR",r.PRODUCT_OPTION_IN_USE_ERROR="PRODUCT_OPTION_IN_USE_ERROR",r.QUANTITY_TOO_GREAT_ERROR="QUANTITY_TOO_GREAT_ERROR",r.REFUND_AMOUNT_ERROR="REFUND_AMOUNT_ERROR",r.REFUND_ORDER_STATE_ERROR="REFUND_ORDER_STATE_ERROR",r.REFUND_PAYMENT_ID_MISSING_ERROR="REFUND_PAYMENT_ID_MISSING_ERROR",r.REFUND_STATE_TRANSITION_ERROR="REFUND_STATE_TRANSITION_ERROR",r.SETTLE_PAYMENT_ERROR="SETTLE_PAYMENT_ERROR",r.UNKNOWN_ERROR="UNKNOWN_ERROR"}(C.jK||(C.jK={})),function(r){r.FALSE="FALSE",r.INHERIT="INHERIT",r.TRUE="TRUE"}(C.Tv||(C.Tv={})),function(r){r.CUSTOMER_ADDED_TO_GROUP="CUSTOMER_ADDED_TO_GROUP",r.CUSTOMER_ADDRESS_CREATED="CUSTOMER_ADDRESS_CREATED",r.CUSTOMER_ADDRESS_DELETED="CUSTOMER_ADDRESS_DELETED",r.CUSTOMER_ADDRESS_UPDATED="CUSTOMER_ADDRESS_UPDATED",r.CUSTOMER_DETAIL_UPDATED="CUSTOMER_DETAIL_UPDATED",r.CUSTOMER_EMAIL_UPDATE_REQUESTED="CUSTOMER_EMAIL_UPDATE_REQUESTED",r.CUSTOMER_EMAIL_UPDATE_VERIFIED="CUSTOMER_EMAIL_UPDATE_VERIFIED",r.CUSTOMER_NOTE="CUSTOMER_NOTE",r.CUSTOMER_PASSWORD_RESET_REQUESTED="CUSTOMER_PASSWORD_RESET_REQUESTED",r.CUSTOMER_PASSWORD_RESET_VERIFIED="CUSTOMER_PASSWORD_RESET_VERIFIED",r.CUSTOMER_PASSWORD_UPDATED="CUSTOMER_PASSWORD_UPDATED",r.CUSTOMER_REGISTERED="CUSTOMER_REGISTERED",r.CUSTOMER_REMOVED_FROM_GROUP="CUSTOMER_REMOVED_FROM_GROUP",r.CUSTOMER_VERIFIED="CUSTOMER_VERIFIED",r.ORDER_CANCELLATION="ORDER_CANCELLATION",r.ORDER_COUPON_APPLIED="ORDER_COUPON_APPLIED",r.ORDER_COUPON_REMOVED="ORDER_COUPON_REMOVED",r.ORDER_CUSTOMER_UPDATED="ORDER_CUSTOMER_UPDATED",r.ORDER_FULFILLMENT="ORDER_FULFILLMENT",r.ORDER_FULFILLMENT_TRANSITION="ORDER_FULFILLMENT_TRANSITION",r.ORDER_MODIFIED="ORDER_MODIFIED",r.ORDER_NOTE="ORDER_NOTE",r.ORDER_PAYMENT_TRANSITION="ORDER_PAYMENT_TRANSITION",r.ORDER_REFUND_TRANSITION="ORDER_REFUND_TRANSITION",r.ORDER_STATE_TRANSITION="ORDER_STATE_TRANSITION"}(C.iY||(C.iY={})),function(r){r.CANCELLED="CANCELLED",r.COMPLETED="COMPLETED",r.FAILED="FAILED",r.PENDING="PENDING",r.RETRYING="RETRYING",r.RUNNING="RUNNING"}(C.Zy||(C.Zy={})),function(r){r.af="af",r.ak="ak",r.am="am",r.ar="ar",r.as="as",r.az="az",r.be="be",r.bg="bg",r.bm="bm",r.bn="bn",r.bo="bo",r.br="br",r.bs="bs",r.ca="ca",r.ce="ce",r.co="co",r.cs="cs",r.cu="cu",r.cy="cy",r.da="da",r.de="de",r.de_AT="de_AT",r.de_CH="de_CH",r.dz="dz",r.ee="ee",r.el="el",r.en="en",r.en_AU="en_AU",r.en_CA="en_CA",r.en_GB="en_GB",r.en_US="en_US",r.eo="eo",r.es="es",r.es_ES="es_ES",r.es_MX="es_MX",r.et="et",r.eu="eu",r.fa="fa",r.fa_AF="fa_AF",r.ff="ff",r.fi="fi",r.fo="fo",r.fr="fr",r.fr_CA="fr_CA",r.fr_CH="fr_CH",r.fy="fy",r.ga="ga",r.gd="gd",r.gl="gl",r.gu="gu",r.gv="gv",r.ha="ha",r.he="he",r.hi="hi",r.hr="hr",r.ht="ht",r.hu="hu",r.hy="hy",r.ia="ia",r.id="id",r.ig="ig",r.ii="ii",r.is="is",r.it="it",r.ja="ja",r.jv="jv",r.ka="ka",r.ki="ki",r.kk="kk",r.kl="kl",r.km="km",r.kn="kn",r.ko="ko",r.ks="ks",r.ku="ku",r.kw="kw",r.ky="ky",r.la="la",r.lb="lb",r.lg="lg",r.ln="ln",r.lo="lo",r.lt="lt",r.lu="lu",r.lv="lv",r.mg="mg",r.mi="mi",r.mk="mk",r.ml="ml",r.mn="mn",r.mr="mr",r.ms="ms",r.mt="mt",r.my="my",r.nb="nb",r.nd="nd",r.ne="ne",r.nl="nl",r.nl_BE="nl_BE",r.nn="nn",r.ny="ny",r.om="om",r.or="or",r.os="os",r.pa="pa",r.pl="pl",r.ps="ps",r.pt="pt",r.pt_BR="pt_BR",r.pt_PT="pt_PT",r.qu="qu",r.rm="rm",r.rn="rn",r.ro="ro",r.ro_MD="ro_MD",r.ru="ru",r.rw="rw",r.sa="sa",r.sd="sd",r.se="se",r.sg="sg",r.si="si",r.sk="sk",r.sl="sl",r.sm="sm",r.sn="sn",r.so="so",r.sq="sq",r.sr="sr",r.st="st",r.su="su",r.sv="sv",r.sw="sw",r.sw_CD="sw_CD",r.ta="ta",r.te="te",r.tg="tg",r.th="th",r.ti="ti",r.tk="tk",r.to="to",r.tr="tr",r.tt="tt",r.ug="ug",r.uk="uk",r.ur="ur",r.uz="uz",r.vi="vi",r.vo="vo",r.wo="wo",r.xh="xh",r.yi="yi",r.yo="yo",r.zh="zh",r.zh_Hans="zh_Hans",r.zh_Hant="zh_Hant",r.zu="zu"}(C.sp||(C.sp={})),function(r){r.AND="AND",r.OR="OR"}(C.Fn||(C.Fn={})),function(r){r.Daily="Daily"}(C.X8||(C.X8={})),function(r){r.AverageOrderValue="AverageOrderValue",r.OrderCount="OrderCount",r.OrderTotal="OrderTotal"}(C.t0||(C.t0={})),function(r){r.Aggregate="Aggregate",r.Regular="Regular",r.Seller="Seller"}(C.mr||(C.mr={})),function(r){r.Authenticated="Authenticated",r.CreateAdministrator="CreateAdministrator",r.CreateAsset="CreateAsset",r.CreateCatalog="CreateCatalog",r.CreateChannel="CreateChannel",r.CreateCollection="CreateCollection",r.CreateCountry="CreateCountry",r.CreateCustomer="CreateCustomer",r.CreateCustomerGroup="CreateCustomerGroup",r.CreateFacet="CreateFacet",r.CreateOrder="CreateOrder",r.CreatePaymentMethod="CreatePaymentMethod",r.CreateProduct="CreateProduct",r.CreatePromotion="CreatePromotion",r.CreateSeller="CreateSeller",r.CreateSettings="CreateSettings",r.CreateShippingMethod="CreateShippingMethod",r.CreateStockLocation="CreateStockLocation",r.CreateSystem="CreateSystem",r.CreateTag="CreateTag",r.CreateTaxCategory="CreateTaxCategory",r.CreateTaxRate="CreateTaxRate",r.CreateZone="CreateZone",r.DeleteAdministrator="DeleteAdministrator",r.DeleteAsset="DeleteAsset",r.DeleteCatalog="DeleteCatalog",r.DeleteChannel="DeleteChannel",r.DeleteCollection="DeleteCollection",r.DeleteCountry="DeleteCountry",r.DeleteCustomer="DeleteCustomer",r.DeleteCustomerGroup="DeleteCustomerGroup",r.DeleteFacet="DeleteFacet",r.DeleteOrder="DeleteOrder",r.DeletePaymentMethod="DeletePaymentMethod",r.DeleteProduct="DeleteProduct",r.DeletePromotion="DeletePromotion",r.DeleteSeller="DeleteSeller",r.DeleteSettings="DeleteSettings",r.DeleteShippingMethod="DeleteShippingMethod",r.DeleteStockLocation="DeleteStockLocation",r.DeleteSystem="DeleteSystem",r.DeleteTag="DeleteTag",r.DeleteTaxCategory="DeleteTaxCategory",r.DeleteTaxRate="DeleteTaxRate",r.DeleteZone="DeleteZone",r.Owner="Owner",r.Public="Public",r.ReadAdministrator="ReadAdministrator",r.ReadAsset="ReadAsset",r.ReadCatalog="ReadCatalog",r.ReadChannel="ReadChannel",r.ReadCollection="ReadCollection",r.ReadCountry="ReadCountry",r.ReadCustomer="ReadCustomer",r.ReadCustomerGroup="ReadCustomerGroup",r.ReadFacet="ReadFacet",r.ReadOrder="ReadOrder",r.ReadPaymentMethod="ReadPaymentMethod",r.ReadProduct="ReadProduct",r.ReadPromotion="ReadPromotion",r.ReadSeller="ReadSeller",r.ReadSettings="ReadSettings",r.ReadShippingMethod="ReadShippingMethod",r.ReadStockLocation="ReadStockLocation",r.ReadSystem="ReadSystem",r.ReadTag="ReadTag",r.ReadTaxCategory="ReadTaxCategory",r.ReadTaxRate="ReadTaxRate",r.ReadZone="ReadZone",r.SuperAdmin="SuperAdmin",r.UpdateAdministrator="UpdateAdministrator",r.UpdateAsset="UpdateAsset",r.UpdateCatalog="UpdateCatalog",r.UpdateChannel="UpdateChannel",r.UpdateCollection="UpdateCollection",r.UpdateCountry="UpdateCountry",r.UpdateCustomer="UpdateCustomer",r.UpdateCustomerGroup="UpdateCustomerGroup",r.UpdateFacet="UpdateFacet",r.UpdateGlobalSettings="UpdateGlobalSettings",r.UpdateOrder="UpdateOrder",r.UpdatePaymentMethod="UpdatePaymentMethod",r.UpdateProduct="UpdateProduct",r.UpdatePromotion="UpdatePromotion",r.UpdateSeller="UpdateSeller",r.UpdateSettings="UpdateSettings",r.UpdateShippingMethod="UpdateShippingMethod",r.UpdateStockLocation="UpdateStockLocation",r.UpdateSystem="UpdateSystem",r.UpdateTag="UpdateTag",r.UpdateTaxCategory="UpdateTaxCategory",r.UpdateTaxRate="UpdateTaxRate",r.UpdateZone="UpdateZone"}(C.y3||(C.y3={})),function(r){r.ASC="ASC",r.DESC="DESC"}(C.As||(C.As={})),function(r){r.ADJUSTMENT="ADJUSTMENT",r.ALLOCATION="ALLOCATION",r.CANCELLATION="CANCELLATION",r.RELEASE="RELEASE",r.RETURN="RETURN",r.SALE="SALE"}(C.Tg||(C.Tg={}))}}]);
321
- //# sourceMappingURL=90.4d02ae7a9e9d5ab3.js.map
319
+ ${md}
320
+ `},67554:(Qn,C)=>{var r;C.Tg=C.As=C.y3=C.mr=C.t0=C.X8=C.Fn=C.sp=C.Zy=C.iY=C.Tv=C.jK=C.Pc=C.NE=C.h3=C.S2=void 0,(r=C.S2||(C.S2={})).DISTRIBUTED_ORDER_PROMOTION="DISTRIBUTED_ORDER_PROMOTION",r.OTHER="OTHER",r.PROMOTION="PROMOTION",function(r){r.BINARY="BINARY",r.IMAGE="IMAGE",r.VIDEO="VIDEO"}(C.h3||(C.h3={})),function(r){r.AED="AED",r.AFN="AFN",r.ALL="ALL",r.AMD="AMD",r.ANG="ANG",r.AOA="AOA",r.ARS="ARS",r.AUD="AUD",r.AWG="AWG",r.AZN="AZN",r.BAM="BAM",r.BBD="BBD",r.BDT="BDT",r.BGN="BGN",r.BHD="BHD",r.BIF="BIF",r.BMD="BMD",r.BND="BND",r.BOB="BOB",r.BRL="BRL",r.BSD="BSD",r.BTN="BTN",r.BWP="BWP",r.BYN="BYN",r.BZD="BZD",r.CAD="CAD",r.CDF="CDF",r.CHF="CHF",r.CLP="CLP",r.CNY="CNY",r.COP="COP",r.CRC="CRC",r.CUC="CUC",r.CUP="CUP",r.CVE="CVE",r.CZK="CZK",r.DJF="DJF",r.DKK="DKK",r.DOP="DOP",r.DZD="DZD",r.EGP="EGP",r.ERN="ERN",r.ETB="ETB",r.EUR="EUR",r.FJD="FJD",r.FKP="FKP",r.GBP="GBP",r.GEL="GEL",r.GHS="GHS",r.GIP="GIP",r.GMD="GMD",r.GNF="GNF",r.GTQ="GTQ",r.GYD="GYD",r.HKD="HKD",r.HNL="HNL",r.HRK="HRK",r.HTG="HTG",r.HUF="HUF",r.IDR="IDR",r.ILS="ILS",r.INR="INR",r.IQD="IQD",r.IRR="IRR",r.ISK="ISK",r.JMD="JMD",r.JOD="JOD",r.JPY="JPY",r.KES="KES",r.KGS="KGS",r.KHR="KHR",r.KMF="KMF",r.KPW="KPW",r.KRW="KRW",r.KWD="KWD",r.KYD="KYD",r.KZT="KZT",r.LAK="LAK",r.LBP="LBP",r.LKR="LKR",r.LRD="LRD",r.LSL="LSL",r.LYD="LYD",r.MAD="MAD",r.MDL="MDL",r.MGA="MGA",r.MKD="MKD",r.MMK="MMK",r.MNT="MNT",r.MOP="MOP",r.MRU="MRU",r.MUR="MUR",r.MVR="MVR",r.MWK="MWK",r.MXN="MXN",r.MYR="MYR",r.MZN="MZN",r.NAD="NAD",r.NGN="NGN",r.NIO="NIO",r.NOK="NOK",r.NPR="NPR",r.NZD="NZD",r.OMR="OMR",r.PAB="PAB",r.PEN="PEN",r.PGK="PGK",r.PHP="PHP",r.PKR="PKR",r.PLN="PLN",r.PYG="PYG",r.QAR="QAR",r.RON="RON",r.RSD="RSD",r.RUB="RUB",r.RWF="RWF",r.SAR="SAR",r.SBD="SBD",r.SCR="SCR",r.SDG="SDG",r.SEK="SEK",r.SGD="SGD",r.SHP="SHP",r.SLL="SLL",r.SOS="SOS",r.SRD="SRD",r.SSP="SSP",r.STN="STN",r.SVC="SVC",r.SYP="SYP",r.SZL="SZL",r.THB="THB",r.TJS="TJS",r.TMT="TMT",r.TND="TND",r.TOP="TOP",r.TRY="TRY",r.TTD="TTD",r.TWD="TWD",r.TZS="TZS",r.UAH="UAH",r.UGX="UGX",r.USD="USD",r.UYU="UYU",r.UZS="UZS",r.VES="VES",r.VND="VND",r.VUV="VUV",r.WST="WST",r.XAF="XAF",r.XCD="XCD",r.XOF="XOF",r.XPF="XPF",r.YER="YER",r.ZAR="ZAR",r.ZMW="ZMW",r.ZWL="ZWL"}(C.NE||(C.NE={})),function(r){r.DELETED="DELETED",r.NOT_DELETED="NOT_DELETED"}(C.Pc||(C.Pc={})),function(r){r.ALREADY_REFUNDED_ERROR="ALREADY_REFUNDED_ERROR",r.CANCEL_ACTIVE_ORDER_ERROR="CANCEL_ACTIVE_ORDER_ERROR",r.CANCEL_PAYMENT_ERROR="CANCEL_PAYMENT_ERROR",r.CHANNEL_DEFAULT_LANGUAGE_ERROR="CHANNEL_DEFAULT_LANGUAGE_ERROR",r.COUPON_CODE_EXPIRED_ERROR="COUPON_CODE_EXPIRED_ERROR",r.COUPON_CODE_INVALID_ERROR="COUPON_CODE_INVALID_ERROR",r.COUPON_CODE_LIMIT_ERROR="COUPON_CODE_LIMIT_ERROR",r.CREATE_FULFILLMENT_ERROR="CREATE_FULFILLMENT_ERROR",r.EMAIL_ADDRESS_CONFLICT_ERROR="EMAIL_ADDRESS_CONFLICT_ERROR",r.EMPTY_ORDER_LINE_SELECTION_ERROR="EMPTY_ORDER_LINE_SELECTION_ERROR",r.FACET_IN_USE_ERROR="FACET_IN_USE_ERROR",r.FULFILLMENT_STATE_TRANSITION_ERROR="FULFILLMENT_STATE_TRANSITION_ERROR",r.GUEST_CHECKOUT_ERROR="GUEST_CHECKOUT_ERROR",r.INELIGIBLE_SHIPPING_METHOD_ERROR="INELIGIBLE_SHIPPING_METHOD_ERROR",r.INSUFFICIENT_STOCK_ERROR="INSUFFICIENT_STOCK_ERROR",r.INSUFFICIENT_STOCK_ON_HAND_ERROR="INSUFFICIENT_STOCK_ON_HAND_ERROR",r.INVALID_CREDENTIALS_ERROR="INVALID_CREDENTIALS_ERROR",r.INVALID_FULFILLMENT_HANDLER_ERROR="INVALID_FULFILLMENT_HANDLER_ERROR",r.ITEMS_ALREADY_FULFILLED_ERROR="ITEMS_ALREADY_FULFILLED_ERROR",r.LANGUAGE_NOT_AVAILABLE_ERROR="LANGUAGE_NOT_AVAILABLE_ERROR",r.MANUAL_PAYMENT_STATE_ERROR="MANUAL_PAYMENT_STATE_ERROR",r.MIME_TYPE_ERROR="MIME_TYPE_ERROR",r.MISSING_CONDITIONS_ERROR="MISSING_CONDITIONS_ERROR",r.MULTIPLE_ORDER_ERROR="MULTIPLE_ORDER_ERROR",r.NATIVE_AUTH_STRATEGY_ERROR="NATIVE_AUTH_STRATEGY_ERROR",r.NEGATIVE_QUANTITY_ERROR="NEGATIVE_QUANTITY_ERROR",r.NOTHING_TO_REFUND_ERROR="NOTHING_TO_REFUND_ERROR",r.NO_ACTIVE_ORDER_ERROR="NO_ACTIVE_ORDER_ERROR",r.NO_CHANGES_SPECIFIED_ERROR="NO_CHANGES_SPECIFIED_ERROR",r.ORDER_LIMIT_ERROR="ORDER_LIMIT_ERROR",r.ORDER_MODIFICATION_ERROR="ORDER_MODIFICATION_ERROR",r.ORDER_MODIFICATION_STATE_ERROR="ORDER_MODIFICATION_STATE_ERROR",r.ORDER_STATE_TRANSITION_ERROR="ORDER_STATE_TRANSITION_ERROR",r.PAYMENT_METHOD_MISSING_ERROR="PAYMENT_METHOD_MISSING_ERROR",r.PAYMENT_ORDER_MISMATCH_ERROR="PAYMENT_ORDER_MISMATCH_ERROR",r.PAYMENT_STATE_TRANSITION_ERROR="PAYMENT_STATE_TRANSITION_ERROR",r.PRODUCT_OPTION_IN_USE_ERROR="PRODUCT_OPTION_IN_USE_ERROR",r.QUANTITY_TOO_GREAT_ERROR="QUANTITY_TOO_GREAT_ERROR",r.REFUND_AMOUNT_ERROR="REFUND_AMOUNT_ERROR",r.REFUND_ORDER_STATE_ERROR="REFUND_ORDER_STATE_ERROR",r.REFUND_PAYMENT_ID_MISSING_ERROR="REFUND_PAYMENT_ID_MISSING_ERROR",r.REFUND_STATE_TRANSITION_ERROR="REFUND_STATE_TRANSITION_ERROR",r.SETTLE_PAYMENT_ERROR="SETTLE_PAYMENT_ERROR",r.UNKNOWN_ERROR="UNKNOWN_ERROR"}(C.jK||(C.jK={})),function(r){r.FALSE="FALSE",r.INHERIT="INHERIT",r.TRUE="TRUE"}(C.Tv||(C.Tv={})),function(r){r.CUSTOMER_ADDED_TO_GROUP="CUSTOMER_ADDED_TO_GROUP",r.CUSTOMER_ADDRESS_CREATED="CUSTOMER_ADDRESS_CREATED",r.CUSTOMER_ADDRESS_DELETED="CUSTOMER_ADDRESS_DELETED",r.CUSTOMER_ADDRESS_UPDATED="CUSTOMER_ADDRESS_UPDATED",r.CUSTOMER_DETAIL_UPDATED="CUSTOMER_DETAIL_UPDATED",r.CUSTOMER_EMAIL_UPDATE_REQUESTED="CUSTOMER_EMAIL_UPDATE_REQUESTED",r.CUSTOMER_EMAIL_UPDATE_VERIFIED="CUSTOMER_EMAIL_UPDATE_VERIFIED",r.CUSTOMER_NOTE="CUSTOMER_NOTE",r.CUSTOMER_PASSWORD_RESET_REQUESTED="CUSTOMER_PASSWORD_RESET_REQUESTED",r.CUSTOMER_PASSWORD_RESET_VERIFIED="CUSTOMER_PASSWORD_RESET_VERIFIED",r.CUSTOMER_PASSWORD_UPDATED="CUSTOMER_PASSWORD_UPDATED",r.CUSTOMER_REGISTERED="CUSTOMER_REGISTERED",r.CUSTOMER_REMOVED_FROM_GROUP="CUSTOMER_REMOVED_FROM_GROUP",r.CUSTOMER_VERIFIED="CUSTOMER_VERIFIED",r.ORDER_CANCELLATION="ORDER_CANCELLATION",r.ORDER_COUPON_APPLIED="ORDER_COUPON_APPLIED",r.ORDER_COUPON_REMOVED="ORDER_COUPON_REMOVED",r.ORDER_CUSTOMER_UPDATED="ORDER_CUSTOMER_UPDATED",r.ORDER_FULFILLMENT="ORDER_FULFILLMENT",r.ORDER_FULFILLMENT_TRANSITION="ORDER_FULFILLMENT_TRANSITION",r.ORDER_MODIFIED="ORDER_MODIFIED",r.ORDER_NOTE="ORDER_NOTE",r.ORDER_PAYMENT_TRANSITION="ORDER_PAYMENT_TRANSITION",r.ORDER_REFUND_TRANSITION="ORDER_REFUND_TRANSITION",r.ORDER_STATE_TRANSITION="ORDER_STATE_TRANSITION"}(C.iY||(C.iY={})),function(r){r.CANCELLED="CANCELLED",r.COMPLETED="COMPLETED",r.FAILED="FAILED",r.PENDING="PENDING",r.RETRYING="RETRYING",r.RUNNING="RUNNING"}(C.Zy||(C.Zy={})),function(r){r.af="af",r.ak="ak",r.am="am",r.ar="ar",r.as="as",r.az="az",r.be="be",r.bg="bg",r.bm="bm",r.bn="bn",r.bo="bo",r.br="br",r.bs="bs",r.ca="ca",r.ce="ce",r.co="co",r.cs="cs",r.cu="cu",r.cy="cy",r.da="da",r.de="de",r.de_AT="de_AT",r.de_CH="de_CH",r.dz="dz",r.ee="ee",r.el="el",r.en="en",r.en_AU="en_AU",r.en_CA="en_CA",r.en_GB="en_GB",r.en_US="en_US",r.eo="eo",r.es="es",r.es_ES="es_ES",r.es_MX="es_MX",r.et="et",r.eu="eu",r.fa="fa",r.fa_AF="fa_AF",r.ff="ff",r.fi="fi",r.fo="fo",r.fr="fr",r.fr_CA="fr_CA",r.fr_CH="fr_CH",r.fy="fy",r.ga="ga",r.gd="gd",r.gl="gl",r.gu="gu",r.gv="gv",r.ha="ha",r.he="he",r.hi="hi",r.hr="hr",r.ht="ht",r.hu="hu",r.hy="hy",r.ia="ia",r.id="id",r.ig="ig",r.ii="ii",r.is="is",r.it="it",r.ja="ja",r.jv="jv",r.ka="ka",r.ki="ki",r.kk="kk",r.kl="kl",r.km="km",r.kn="kn",r.ko="ko",r.ks="ks",r.ku="ku",r.kw="kw",r.ky="ky",r.la="la",r.lb="lb",r.lg="lg",r.ln="ln",r.lo="lo",r.lt="lt",r.lu="lu",r.lv="lv",r.mg="mg",r.mi="mi",r.mk="mk",r.ml="ml",r.mn="mn",r.mr="mr",r.ms="ms",r.mt="mt",r.my="my",r.nb="nb",r.nd="nd",r.ne="ne",r.nl="nl",r.nl_BE="nl_BE",r.nn="nn",r.ny="ny",r.om="om",r.or="or",r.os="os",r.pa="pa",r.pl="pl",r.ps="ps",r.pt="pt",r.pt_BR="pt_BR",r.pt_PT="pt_PT",r.qu="qu",r.rm="rm",r.rn="rn",r.ro="ro",r.ro_MD="ro_MD",r.ru="ru",r.rw="rw",r.sa="sa",r.sd="sd",r.se="se",r.sg="sg",r.si="si",r.sk="sk",r.sl="sl",r.sm="sm",r.sn="sn",r.so="so",r.sq="sq",r.sr="sr",r.st="st",r.su="su",r.sv="sv",r.sw="sw",r.sw_CD="sw_CD",r.ta="ta",r.te="te",r.tg="tg",r.th="th",r.ti="ti",r.tk="tk",r.to="to",r.tr="tr",r.tt="tt",r.ug="ug",r.uk="uk",r.ur="ur",r.uz="uz",r.vi="vi",r.vo="vo",r.wo="wo",r.xh="xh",r.yi="yi",r.yo="yo",r.zh="zh",r.zh_Hans="zh_Hans",r.zh_Hant="zh_Hant",r.zu="zu"}(C.sp||(C.sp={})),function(r){r.AND="AND",r.OR="OR"}(C.Fn||(C.Fn={})),function(r){r.Daily="Daily"}(C.X8||(C.X8={})),function(r){r.AverageOrderValue="AverageOrderValue",r.OrderCount="OrderCount",r.OrderTotal="OrderTotal"}(C.t0||(C.t0={})),function(r){r.Aggregate="Aggregate",r.Regular="Regular",r.Seller="Seller"}(C.mr||(C.mr={})),function(r){r.Authenticated="Authenticated",r.CreateAdministrator="CreateAdministrator",r.CreateAsset="CreateAsset",r.CreateCatalog="CreateCatalog",r.CreateChannel="CreateChannel",r.CreateCollection="CreateCollection",r.CreateCountry="CreateCountry",r.CreateCustomer="CreateCustomer",r.CreateCustomerGroup="CreateCustomerGroup",r.CreateFacet="CreateFacet",r.CreateOrder="CreateOrder",r.CreatePaymentMethod="CreatePaymentMethod",r.CreateProduct="CreateProduct",r.CreatePromotion="CreatePromotion",r.CreateSeller="CreateSeller",r.CreateSettings="CreateSettings",r.CreateShippingMethod="CreateShippingMethod",r.CreateStockLocation="CreateStockLocation",r.CreateSystem="CreateSystem",r.CreateTag="CreateTag",r.CreateTaxCategory="CreateTaxCategory",r.CreateTaxRate="CreateTaxRate",r.CreateZone="CreateZone",r.DeleteAdministrator="DeleteAdministrator",r.DeleteAsset="DeleteAsset",r.DeleteCatalog="DeleteCatalog",r.DeleteChannel="DeleteChannel",r.DeleteCollection="DeleteCollection",r.DeleteCountry="DeleteCountry",r.DeleteCustomer="DeleteCustomer",r.DeleteCustomerGroup="DeleteCustomerGroup",r.DeleteFacet="DeleteFacet",r.DeleteOrder="DeleteOrder",r.DeletePaymentMethod="DeletePaymentMethod",r.DeleteProduct="DeleteProduct",r.DeletePromotion="DeletePromotion",r.DeleteSeller="DeleteSeller",r.DeleteSettings="DeleteSettings",r.DeleteShippingMethod="DeleteShippingMethod",r.DeleteStockLocation="DeleteStockLocation",r.DeleteSystem="DeleteSystem",r.DeleteTag="DeleteTag",r.DeleteTaxCategory="DeleteTaxCategory",r.DeleteTaxRate="DeleteTaxRate",r.DeleteZone="DeleteZone",r.Owner="Owner",r.Public="Public",r.ReadAdministrator="ReadAdministrator",r.ReadAsset="ReadAsset",r.ReadCatalog="ReadCatalog",r.ReadChannel="ReadChannel",r.ReadCollection="ReadCollection",r.ReadCountry="ReadCountry",r.ReadCustomer="ReadCustomer",r.ReadCustomerGroup="ReadCustomerGroup",r.ReadFacet="ReadFacet",r.ReadOrder="ReadOrder",r.ReadPaymentMethod="ReadPaymentMethod",r.ReadProduct="ReadProduct",r.ReadPromotion="ReadPromotion",r.ReadSeller="ReadSeller",r.ReadSettings="ReadSettings",r.ReadShippingMethod="ReadShippingMethod",r.ReadStockLocation="ReadStockLocation",r.ReadSystem="ReadSystem",r.ReadTag="ReadTag",r.ReadTaxCategory="ReadTaxCategory",r.ReadTaxRate="ReadTaxRate",r.ReadZone="ReadZone",r.SuperAdmin="SuperAdmin",r.UpdateAdministrator="UpdateAdministrator",r.UpdateAsset="UpdateAsset",r.UpdateCatalog="UpdateCatalog",r.UpdateChannel="UpdateChannel",r.UpdateCollection="UpdateCollection",r.UpdateCountry="UpdateCountry",r.UpdateCustomer="UpdateCustomer",r.UpdateCustomerGroup="UpdateCustomerGroup",r.UpdateFacet="UpdateFacet",r.UpdateGlobalSettings="UpdateGlobalSettings",r.UpdateOrder="UpdateOrder",r.UpdatePaymentMethod="UpdatePaymentMethod",r.UpdateProduct="UpdateProduct",r.UpdatePromotion="UpdatePromotion",r.UpdateSeller="UpdateSeller",r.UpdateSettings="UpdateSettings",r.UpdateShippingMethod="UpdateShippingMethod",r.UpdateStockLocation="UpdateStockLocation",r.UpdateSystem="UpdateSystem",r.UpdateTag="UpdateTag",r.UpdateTaxCategory="UpdateTaxCategory",r.UpdateTaxRate="UpdateTaxRate",r.UpdateZone="UpdateZone"}(C.y3||(C.y3={})),function(r){r.ASC="ASC",r.DESC="DESC"}(C.As||(C.As={})),function(r){r.ADJUSTMENT="ADJUSTMENT",r.ALLOCATION="ALLOCATION",r.CANCELLATION="CANCELLATION",r.RELEASE="RELEASE",r.RETURN="RETURN",r.SALE="SALE"}(C.Tg||(C.Tg={}))}}]);
321
+ //# sourceMappingURL=90.5d53d8ba942db01d.js.map