@foxy.io/elements 1.14.0-beta.8 → 1.14.2

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.
Files changed (94) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +1 -1
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  5. package/dist/cdn/foxy-attribute-card.js +1 -1
  6. package/dist/cdn/foxy-attribute-form.js +1 -1
  7. package/dist/cdn/foxy-cancellation-form.js +1 -1
  8. package/dist/cdn/foxy-collection-page.js +1 -1
  9. package/dist/cdn/foxy-collection-pages.js +1 -1
  10. package/dist/cdn/foxy-custom-field-card.js +1 -1
  11. package/dist/cdn/foxy-custom-field-form.js +1 -1
  12. package/dist/cdn/foxy-customer-card.js +1 -1
  13. package/dist/cdn/foxy-customer-form.js +1 -1
  14. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  15. package/dist/cdn/foxy-customer-portal.js +18 -15
  16. package/dist/cdn/foxy-customer.js +1 -1
  17. package/dist/cdn/foxy-customers-table.js +1 -1
  18. package/dist/cdn/foxy-discount-card.js +1 -1
  19. package/dist/cdn/foxy-donation.js +1 -1
  20. package/dist/cdn/foxy-email-template-form.js +1 -1
  21. package/dist/cdn/foxy-error-entry-card.js +1 -1
  22. package/dist/cdn/foxy-form-dialog.js +1 -1
  23. package/dist/cdn/foxy-i18n.js +1 -1
  24. package/dist/cdn/foxy-items-form.js +1 -1
  25. package/dist/cdn/foxy-payment-card.js +1 -1
  26. package/dist/cdn/foxy-payment-method-card.js +1 -1
  27. package/dist/cdn/foxy-query-builder.js +1 -1
  28. package/dist/cdn/foxy-sign-in-form.js +1 -1
  29. package/dist/cdn/foxy-spinner.js +1 -1
  30. package/dist/cdn/foxy-subscription-card.js +1 -1
  31. package/dist/cdn/foxy-subscription-form.js +3 -3
  32. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  33. package/dist/cdn/foxy-table.js +1 -1
  34. package/dist/cdn/foxy-tax-card.js +1 -1
  35. package/dist/cdn/foxy-tax-form.js +1 -1
  36. package/dist/cdn/foxy-template-config-form.js +1 -1
  37. package/dist/cdn/foxy-template-form.js +1 -1
  38. package/dist/cdn/foxy-transaction-card.js +1 -1
  39. package/dist/cdn/foxy-transactions-table.js +1 -1
  40. package/dist/cdn/foxy-user-form.js +1 -1
  41. package/dist/cdn/foxy-users-table.js +1 -1
  42. package/dist/cdn/{shared-4ba926ca.js → shared-07abcd7b.js} +1 -1
  43. package/dist/cdn/{shared-31d03530.js → shared-1f1734cb.js} +1 -1
  44. package/dist/cdn/{shared-ca7c3b9a.js → shared-322e60b1.js} +1 -1
  45. package/dist/cdn/{shared-7007dedb.js → shared-5f54e916.js} +1 -1
  46. package/dist/cdn/{shared-0f9809ab.js → shared-66cb6a36.js} +1 -1
  47. package/dist/cdn/{shared-a3d2c48e.js → shared-6ebe3825.js} +1 -1
  48. package/dist/cdn/{shared-5d94bacb.js → shared-74b9e1d1.js} +1 -1
  49. package/dist/cdn/{shared-00070cc4.js → shared-7a42073a.js} +5 -5
  50. package/dist/cdn/{shared-b24377bf.js → shared-8a7bee0d.js} +1 -1
  51. package/dist/cdn/{shared-da787055.js → shared-91e768be.js} +1 -1
  52. package/dist/cdn/{shared-d01035c5.js → shared-9a40309d.js} +1 -1
  53. package/dist/cdn/shared-9c099da6.js +1 -0
  54. package/dist/cdn/{shared-daf6b763.js → shared-b1fc5dc3.js} +1 -1
  55. package/dist/cdn/{shared-d05c93a5.js → shared-bc2bfe52.js} +1 -1
  56. package/dist/cdn/{shared-c5ae5d33.js → shared-ce1da35d.js} +1 -1
  57. package/dist/cdn/{shared-007c4e34.js → shared-f1dc1c6c.js} +1 -1
  58. package/dist/cdn/translations/shared/de.json +94 -0
  59. package/dist/cdn/translations/shared/en.json +83 -83
  60. package/dist/cdn/translations/shared/es.json +93 -0
  61. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLink.d.ts +1 -0
  62. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLink.js +17 -8
  63. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLink.js.map +1 -1
  64. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedInView.js +19 -6
  65. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedInView.js.map +1 -1
  66. package/dist/elements/public/CustomerPortal/InternalCustomerPortalSubscriptions.js +11 -3
  67. package/dist/elements/public/CustomerPortal/InternalCustomerPortalSubscriptions.js.map +1 -1
  68. package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.d.ts +21 -0
  69. package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js +21 -0
  70. package/dist/elements/public/EmailTemplateForm/EmailTemplateForm.js.map +1 -1
  71. package/dist/elements/public/I18n/I18n.js +1 -1
  72. package/dist/elements/public/I18n/I18n.js.map +1 -1
  73. package/dist/elements/public/ItemsForm/private/Picture.d.ts +1 -0
  74. package/dist/elements/public/ItemsForm/private/Picture.js +2 -0
  75. package/dist/elements/public/ItemsForm/private/Picture.js.map +1 -1
  76. package/dist/elements/public/SubscriptionForm/SubscriptionForm.js +12 -4
  77. package/dist/elements/public/SubscriptionForm/SubscriptionForm.js.map +1 -1
  78. package/dist/elements/public/TemplateConfigForm/CountriesList.d.ts +2 -4
  79. package/dist/elements/public/TemplateConfigForm/CountriesList.js +19 -20
  80. package/dist/elements/public/TemplateConfigForm/CountriesList.js.map +1 -1
  81. package/dist/elements/public/TemplateConfigForm/CountryCard.d.ts +1 -3
  82. package/dist/elements/public/TemplateConfigForm/CountryCard.js +21 -18
  83. package/dist/elements/public/TemplateConfigForm/CountryCard.js.map +1 -1
  84. package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.js +184 -166
  85. package/dist/elements/public/TemplateConfigForm/TemplateConfigForm.js.map +1 -1
  86. package/dist/elements/public/TemplateForm/TemplateForm.d.ts +21 -0
  87. package/dist/elements/public/TemplateForm/TemplateForm.js +21 -0
  88. package/dist/elements/public/TemplateForm/TemplateForm.js.map +1 -1
  89. package/dist/mixins/themeable.js +10 -8
  90. package/dist/mixins/themeable.js.map +1 -1
  91. package/dist/mixins/translatable.js +1 -1
  92. package/dist/mixins/translatable.js.map +1 -1
  93. package/package.json +1 -1
  94. package/dist/cdn/shared-fe8a7aa2.js +0 -1
@@ -1 +1 @@
1
- import"./shared-200f613b.js";import"./shared-bb824ab4.js";import"./shared-0ced76a0.js";import"./shared-df573cea.js";import"./shared-46ee137f.js";import"./shared-f0a83bd6.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as s}from"./shared-593f7e2c.js";import{N as t}from"./shared-44cfc617.js";import{T as i,a as r}from"./shared-d01035c5.js";import{c as a}from"./shared-4e709717.js";import{i as l}from"./shared-6d45a07b.js";import{v as o}from"./shared-b738ee96.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-1761daef.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";let n,d,m,h,c=e=>e;const u=i(s(r(t,"access-recovery-form")));class f extends u{constructor(){super(...arguments),this.templates={},this.__checkEmailValidity=()=>!this.errors.some((e=>e.startsWith("email"))),this.__renderEmail=()=>{var s;const t=this.in("fail"),i=this.in("busy"),r=this.errors.filter((e=>e.startsWith("email"))).map((e=>e.replace("email","v8n"))),a=r[0]?this.t(r[0]).toString():"";return e(n||(n=c` <div> ${0} <vaadin-email-field error-message="${0}" data-testid="email" class="w-full" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" @input="${0}" @keydown="${0}"> </vaadin-email-field> ${0} </div> `),this.renderTemplateOrSlot("email:before"),a,this.t("email").toString(),l(null===(s=this.form.detail)||void 0===s?void 0:s.email),i||t||this.disabledSelector.matches("email",!0),this.readonlySelector.matches("email",!0),this.__checkEmailValidity,(e=>{this.edit({detail:{email:e.target.value},type:"email"})}),(e=>{"Enter"===e.key&&this.submit()}),this.renderTemplateOrSlot("email:after"))},this.__renderMessage=()=>{const s=this.in("fail"),t=s?"bg-error-10 text-error":"bg-success-10 text-success",i=s?"lumo:error":"lumo:cog",r=s?"unknown_error":"recover_access_success";return e(d||(d=c` <div> ${0} <p class="leading-s flex items-start text-s rounded p-s ${0}"> <iron-icon class="flex-shrink-0 mr-s" icon="${0}"></iron-icon> <foxy-i18n lang="${0}" key="${0}" ns="${0}" data-testid="message"></foxy-i18n> </p> ${0} </div> `),this.renderTemplateOrSlot("message:before"),t,i,this.lang,r,this.ns,this.renderTemplateOrSlot("message:after"))},this.__renderSubmit=()=>{const s=this.in("fail"),t=0===this.errors.length,i=this.in("busy");return e(m||(m=c` <div> ${0} <vaadin-button data-testid="submit" class="w-full" theme="primary" ?disabled="${0}" @click="${0}"> <foxy-i18n lang="${0}" key="recover_access" ns="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("submit:before"),i||!t||s||this.disabledSelector.matches("submit",!0),(()=>this.submit()),this.lang,this.ns,this.renderTemplateOrSlot("submit:after"))}}static get v8n(){return[({detail:e})=>(null==e?void 0:e.email)&&e.email.length>0||"email_required",({detail:e})=>{var s;return o(null!==(s=null==e?void 0:e.email)&&void 0!==s?s:"")||"email_invalid_email"}]}render(){var s,t;const i=this.hiddenSelector,r=this.in({idle:"snapshot"})||this.in("fail"),l=this.in("busy");return e(h||(h=c` <main data-testid="wrapper" aria-live="polite" aria-busy="${0}" class="relative font-lumo text-m leading-m space-y-m"> ${0} ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="busy" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </main> `),l,i.matches("email",!0)?"":this.__renderEmail(),i.matches("message",!0)||!r?"":this.__renderMessage(),i.matches("submit",!0)?"":this.__renderSubmit(),a({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!l}),this.lang,this.ns,null!==(t=null===(s=customElements.get("foxy-spinner"))||void 0===s?void 0:s.defaultNS)&&void 0!==t?t:"")}}customElements.define("foxy-access-recovery-form",f);export{f as AccessRecoveryForm};
1
+ import"./shared-200f613b.js";import"./shared-bb824ab4.js";import"./shared-0ced76a0.js";import"./shared-df573cea.js";import"./shared-46ee137f.js";import"./shared-f0a83bd6.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as s}from"./shared-593f7e2c.js";import{N as t}from"./shared-44cfc617.js";import{T as i,a as r}from"./shared-9a40309d.js";import{c as a}from"./shared-4e709717.js";import{i as l}from"./shared-6d45a07b.js";import{v as o}from"./shared-b738ee96.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-1761daef.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";let n,d,m,h,c=e=>e;const u=i(s(r(t,"access-recovery-form")));class f extends u{constructor(){super(...arguments),this.templates={},this.__checkEmailValidity=()=>!this.errors.some((e=>e.startsWith("email"))),this.__renderEmail=()=>{var s;const t=this.in("fail"),i=this.in("busy"),r=this.errors.filter((e=>e.startsWith("email"))).map((e=>e.replace("email","v8n"))),a=r[0]?this.t(r[0]).toString():"";return e(n||(n=c` <div> ${0} <vaadin-email-field error-message="${0}" data-testid="email" class="w-full" label="${0}" value="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" @input="${0}" @keydown="${0}"> </vaadin-email-field> ${0} </div> `),this.renderTemplateOrSlot("email:before"),a,this.t("email").toString(),l(null===(s=this.form.detail)||void 0===s?void 0:s.email),i||t||this.disabledSelector.matches("email",!0),this.readonlySelector.matches("email",!0),this.__checkEmailValidity,(e=>{this.edit({detail:{email:e.target.value},type:"email"})}),(e=>{"Enter"===e.key&&this.submit()}),this.renderTemplateOrSlot("email:after"))},this.__renderMessage=()=>{const s=this.in("fail"),t=s?"bg-error-10 text-error":"bg-success-10 text-success",i=s?"lumo:error":"lumo:cog",r=s?"unknown_error":"recover_access_success";return e(d||(d=c` <div> ${0} <p class="leading-s flex items-start text-s rounded p-s ${0}"> <iron-icon class="flex-shrink-0 mr-s" icon="${0}"></iron-icon> <foxy-i18n lang="${0}" key="${0}" ns="${0}" data-testid="message"></foxy-i18n> </p> ${0} </div> `),this.renderTemplateOrSlot("message:before"),t,i,this.lang,r,this.ns,this.renderTemplateOrSlot("message:after"))},this.__renderSubmit=()=>{const s=this.in("fail"),t=0===this.errors.length,i=this.in("busy");return e(m||(m=c` <div> ${0} <vaadin-button data-testid="submit" class="w-full" theme="primary" ?disabled="${0}" @click="${0}"> <foxy-i18n lang="${0}" key="recover_access" ns="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("submit:before"),i||!t||s||this.disabledSelector.matches("submit",!0),(()=>this.submit()),this.lang,this.ns,this.renderTemplateOrSlot("submit:after"))}}static get v8n(){return[({detail:e})=>(null==e?void 0:e.email)&&e.email.length>0||"email_required",({detail:e})=>{var s;return o(null!==(s=null==e?void 0:e.email)&&void 0!==s?s:"")||"email_invalid_email"}]}render(){var s,t;const i=this.hiddenSelector,r=this.in({idle:"snapshot"})||this.in("fail"),l=this.in("busy");return e(h||(h=c` <main data-testid="wrapper" aria-live="polite" aria-busy="${0}" class="relative font-lumo text-m leading-m space-y-m"> ${0} ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="busy" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </main> `),l,i.matches("email",!0)?"":this.__renderEmail(),i.matches("message",!0)||!r?"":this.__renderMessage(),i.matches("submit",!0)?"":this.__renderSubmit(),a({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!l}),this.lang,this.ns,null!==(t=null===(s=customElements.get("foxy-spinner"))||void 0===s?void 0:s.defaultNS)&&void 0!==t?t:"")}}customElements.define("foxy-access-recovery-form",f);export{f as AccessRecoveryForm};
@@ -1,4 +1,4 @@
1
- import"./shared-46ee137f.js";import"./shared-60126eee.js";import{h as c}from"./shared-ff79f3f9.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h}from"./shared-63eaded9.js";import{C as a}from"./shared-593f7e2c.js";import{N as t}from"./shared-44cfc617.js";import{T as s,a as l}from"./shared-d01035c5.js";import{c as i}from"./shared-4e709717.js";import"./shared-1761daef.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";
1
+ import"./shared-46ee137f.js";import"./shared-60126eee.js";import{h as c}from"./shared-ff79f3f9.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h}from"./shared-63eaded9.js";import{C as a}from"./shared-593f7e2c.js";import{N as t}from"./shared-44cfc617.js";import{T as s,a as l}from"./shared-9a40309d.js";import{c as i}from"./shared-4e709717.js";import"./shared-1761daef.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";
2
2
  /**
3
3
  @license
4
4
  Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
@@ -1 +1 @@
1
- import"./shared-0ced76a0.js";import"./shared-ec861f31.js";import"./shared-daf6b763.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import{N as i}from"./shared-44cfc617.js";import{P as s}from"./shared-b24377bf.js";import{S as a,T as r,a as d}from"./shared-d01035c5.js";import{c as o}from"./shared-4e709717.js";import{i as n}from"./shared-6d45a07b.js";import{m as l}from"./shared-1761daef.js";import"./shared-df573cea.js";import"./shared-ff79f3f9.js";import"./shared-bb824ab4.js";import"./shared-46ee137f.js";import"./shared-4ba926ca.js";import"./shared-00563cb0.js";import"./shared-60126eee.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";const m=["AF","AX","AL","DZ","AS","AD","AO","AI","AQ","AG","AR","AM","AW","AU","AT","AZ","BS","BH","BD","BB","BY","BE","BZ","BJ","BM","BT","BO","BQ","BA","BW","BV","BR","IO","BN","BG","BF","BI","KH","CM","CA","CV","CW","KY","CF","TD","CL","CN","CX","CC","CO","KM","CG","CD","CK","CR","CI","HR","CU","CY","CZ","DK","DJ","DM","DO","EC","EG","SV","SX","GQ","ER","EE","ET","FK","FO","FJ","FI","FR","GF","PF","TF","GA","GM","GE","DE","GH","GI","GR","GL","GD","GP","GU","GT","GG","GN","GW","GY","HT","HM","VA","HN","HK","HU","IS","IN","ID","IR","IQ","IE","IM","IL","IT","JM","JP","JE","JO","KZ","KE","KI","KP","KR","KW","KG","LA","LV","LB","LS","LR","LY","LI","LT","LU","MO","MK","MG","MW","MY","MV","ML","MT","MH","MQ","MR","MU","YT","MX","FM","MD","MC","MN","ME","MS","MA","MZ","MM","NA","NR","NP","NL","NC","NZ","NI","NE","NG","NU","NF","MP","NO","OM","PK","PW","PS","PA","PG","PY","PE","PH","PN","PL","PT","PR","QA","RE","RO","RU","RW","BL","SH","KN","LC","MF","PM","VC","WS","SM","SS","ST","SA","SN","RS","SC","SL","SG","SK","SI","SB","SO","ZA","GS","ES","LK","SD","SR","SJ","SZ","SE","CH","SY","TW","TJ","TZ","TH","TL","TG","TK","TO","TT","TN","TR","TM","TC","TV","UG","UA","AE","GB","US","UM","UY","UZ","VU","VE","VN","VG","VI","WF","EH","YE","ZM","ZW"],h=["AL","AK","AS","AZ","AR","AF","AA","AC","AE","AM","AP","CA","CO","CT","DE","DC","FM","FL","GA","GU","HI","ID","IL","IN","IA","KS","KY","LA","ME","MH","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","MP","OH","OK","OR","PA","PR","RI","SC","SD","TN","TX","UT","VT","VI","VA","WA","WV","WI","WY"];let c,_,f,p,u,g=e=>e;const b=a(t(r(d(i,"address-form"))));class y extends b{constructor(){super(...arguments),this.templates={},this.__getValidator=l((e=>()=>!this.errors.some((t=>t.startsWith(e))))),this.__bindField=l((e=>t=>{const i=t.target;this.edit({[e]:i.value})})),this.__maybeRenderComboBox=t=>{var i,s;const{source:a,field:r,custom:d=!1}=t,o=r.replace(/_/,"-");if(this.hiddenSelector.matches(o))return"";const l=customElements.get("foxy-i18n").i18next.getFixedT(this.lang,r);return e(c||(c=g` <div> ${0} <vaadin-combo-box class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" item-value-path="code" item-label-path="text" .checkValidity="${0}" .items="${0}" ?allow-custom-value="${0}" ?readonly="${0}" ?disabled="${0}" @change="${0}"> </vaadin-combo-box> ${0} </div> `),this.renderTemplateOrSlot(`${o}:before`),this.t(r).toString(),n(null===(s=null===(i=this.form)||void 0===i?void 0:i[r])||void 0===s?void 0:s.toString()),this.__getErrorMessage(r),o,this.__getValidator(r),a.map((e=>({text:l(e).toString(),code:e}))),d,this.readonlySelector.matches(o,!0),!this.in("idle")||this.disabledSelector.matches(o,!0),this.__bindField(r),this.renderTemplateOrSlot(`${o}:after`))},this.__maybeRenderTextField=t=>{var i,s;const{field:a,wide:r=!1,readonly:d=!1,required:l=!1}=t,m=a.replace(/_/,"-").replace("1","-one").replace("2","-two");return this.hiddenSelector.matches(m)?"":e(_||(_=g` <div class="${0}"> ${0} <vaadin-text-field class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" .checkValidity="${0}" ?disabled="${0}" ?required="${0}" ?readonly="${0}" @input="${0}" @keydown="${0}"> </vaadin-text-field> ${0} </div> `),o({"col-span-2":r}),this.renderTemplateOrSlot(`${m}:before`),this.t(a).toString(),n(null===(s=null===(i=this.form)||void 0===i?void 0:i[a])||void 0===s?void 0:s.toString()),this.__getErrorMessage(a),m,this.__getValidator(a),!this.in("idle")||this.disabledSelector.matches(m),l,d||this.readonlySelector.matches(m),this.__bindField(a),this.__handleKeyDown,this.renderTemplateOrSlot(`${m}:after`))},this.__renderTimestamps=()=>{const t=["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}}));return e(f||(f=g` <div> ${0} <x-property-table .items="${0}" data-testid="timestamps"></x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),t,this.renderTemplateOrSlot("timestamps:after"))},this.__renderAction=t=>{var i,s;const a=this.in({idle:{template:{dirty:"valid"}}}),r=this.in({idle:{snapshot:{dirty:"valid"}}}),d=!this.in("idle")||this.disabledSelector.matches(t,!0),o=!!(null===(i=this.form)||void 0===i?void 0:i.is_default_shipping),n=!!(null===(s=this.form)||void 0===s?void 0:s.is_default_billing),l=o||n,m=a||r;return e(p||(p=g` <div> ${0} <vaadin-button class="w-full" theme="${0}" data-testid="${0}" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="${0}" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot(`${t}:before`),this.in("idle")?"primary "+(this.href?"error":"success"):"",t,this.in({idle:"template"})&&!m||d||l,this.__handleActionClick,this.ns,t,this.lang,this.renderTemplateOrSlot(`${t}:after`))}}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-combo-box":customElements.get("vaadin-combo-box"),"x-property-table":s,"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n")}}static get v8n(){return[({address_name:e})=>e&&e.length>0||"address_name_required",({address_name:e})=>!e||e.length<=100||"address_name_too_long",({first_name:e})=>!e||e.length<=50||"first_name_too_long",({last_name:e})=>!e||e.length<=50||"last_name_too_long",({region:e})=>!e||e.length<=50||"region_too_long",({city:e})=>!e||e.length<=50||"city_too_long",({phone:e})=>!e||e.length<=50||"phone_too_long",({company:e})=>!e||e.length<=50||"company_too_long",({address2:e})=>!e||e.length<=100||"address2_too_long",({address1:e})=>e&&e.length>0||"address1_required",({address1:e})=>e&&e.length<=100||"address1_too_long",({postal_code:e})=>!e||e.length<=50||"postal_code_too_long"]}connectedCallback(){super.connectedCallback(),customElements.get("foxy-i18n").i18next.loadNamespaces(["country","region"])}render(){var t,i,s,a;const{hiddenSelector:r,lang:d,ns:n}=this,l=this.href?"delete":"create",c=!!(null===(t=this.form)||void 0===t?void 0:t.is_default_shipping),_=!!(null===(i=this.form)||void 0===i?void 0:i.is_default_billing),f=c||_,p=this.in("busy"),b=this.in("fail");return e(u||(u=g` <foxy-internal-confirm-dialog message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" data-testid="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div class="space-y-l font-lumo text-m leading-m text-body relative" aria-busy="${0}" aria-live="polite" data-testid="wrapper"> <div class="grid grid-cols-2 gap-m"> ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} </div> ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),d,n,this.__handleConfirmHide,this.in("busy"),this.__maybeRenderTextField({field:"address_name",wide:!0,readonly:f,required:!0}),this.__maybeRenderTextField({field:"first_name"}),this.__maybeRenderTextField({field:"last_name"}),this.__maybeRenderTextField({field:"company"}),this.__maybeRenderTextField({field:"phone"}),this.__maybeRenderTextField({field:"address1",wide:!0,required:!0}),this.__maybeRenderTextField({field:"address2",wide:!0}),this.__maybeRenderComboBox({field:"country",source:m}),this.__maybeRenderComboBox({field:"region",source:h,custom:!0}),this.__maybeRenderTextField({field:"city"}),this.__maybeRenderTextField({field:"postal_code"}),!this.data||r.matches("timestamps",!0)?"":this.__renderTimestamps(),r.matches(l,!0)?"":this.__renderAction(l),o({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!p&&!b}),b?"error":p?"busy":"empty",d,this.ns,null!==(a=null===(s=customElements.get("foxy-spinner"))||void 0===s?void 0:s.defaultNS)&&void 0!==a?a:"")}disconnectedCallback(){var e,t;super.disconnectedCallback(),null===(t=(e=this.__getValidator.cache).clear)||void 0===t||t.call(e)}__handleKeyDown(e){"Enter"===e.key&&this.submit()}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__handleActionClick(e){if(this.in({idle:"snapshot"})){this.renderRoot.querySelector("#confirm").show(e.currentTarget)}else this.submit()}__handleConfirmHide(e){e.detail.cancelled||this.delete()}}customElements.define("foxy-address-form",y);export{y as AddressForm};
1
+ import"./shared-0ced76a0.js";import"./shared-ec861f31.js";import"./shared-b1fc5dc3.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import{N as i}from"./shared-44cfc617.js";import{P as s}from"./shared-8a7bee0d.js";import{S as a,T as r,a as d}from"./shared-9a40309d.js";import{c as o}from"./shared-4e709717.js";import{i as n}from"./shared-6d45a07b.js";import{m as l}from"./shared-1761daef.js";import"./shared-df573cea.js";import"./shared-ff79f3f9.js";import"./shared-bb824ab4.js";import"./shared-46ee137f.js";import"./shared-07abcd7b.js";import"./shared-00563cb0.js";import"./shared-60126eee.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";const m=["AF","AX","AL","DZ","AS","AD","AO","AI","AQ","AG","AR","AM","AW","AU","AT","AZ","BS","BH","BD","BB","BY","BE","BZ","BJ","BM","BT","BO","BQ","BA","BW","BV","BR","IO","BN","BG","BF","BI","KH","CM","CA","CV","CW","KY","CF","TD","CL","CN","CX","CC","CO","KM","CG","CD","CK","CR","CI","HR","CU","CY","CZ","DK","DJ","DM","DO","EC","EG","SV","SX","GQ","ER","EE","ET","FK","FO","FJ","FI","FR","GF","PF","TF","GA","GM","GE","DE","GH","GI","GR","GL","GD","GP","GU","GT","GG","GN","GW","GY","HT","HM","VA","HN","HK","HU","IS","IN","ID","IR","IQ","IE","IM","IL","IT","JM","JP","JE","JO","KZ","KE","KI","KP","KR","KW","KG","LA","LV","LB","LS","LR","LY","LI","LT","LU","MO","MK","MG","MW","MY","MV","ML","MT","MH","MQ","MR","MU","YT","MX","FM","MD","MC","MN","ME","MS","MA","MZ","MM","NA","NR","NP","NL","NC","NZ","NI","NE","NG","NU","NF","MP","NO","OM","PK","PW","PS","PA","PG","PY","PE","PH","PN","PL","PT","PR","QA","RE","RO","RU","RW","BL","SH","KN","LC","MF","PM","VC","WS","SM","SS","ST","SA","SN","RS","SC","SL","SG","SK","SI","SB","SO","ZA","GS","ES","LK","SD","SR","SJ","SZ","SE","CH","SY","TW","TJ","TZ","TH","TL","TG","TK","TO","TT","TN","TR","TM","TC","TV","UG","UA","AE","GB","US","UM","UY","UZ","VU","VE","VN","VG","VI","WF","EH","YE","ZM","ZW"],h=["AL","AK","AS","AZ","AR","AF","AA","AC","AE","AM","AP","CA","CO","CT","DE","DC","FM","FL","GA","GU","HI","ID","IL","IN","IA","KS","KY","LA","ME","MH","MD","MA","MI","MN","MS","MO","MT","NE","NV","NH","NJ","NM","NY","NC","ND","MP","OH","OK","OR","PA","PR","RI","SC","SD","TN","TX","UT","VT","VI","VA","WA","WV","WI","WY"];let c,_,f,p,u,g=e=>e;const b=a(t(r(d(i,"address-form"))));class y extends b{constructor(){super(...arguments),this.templates={},this.__getValidator=l((e=>()=>!this.errors.some((t=>t.startsWith(e))))),this.__bindField=l((e=>t=>{const i=t.target;this.edit({[e]:i.value})})),this.__maybeRenderComboBox=t=>{var i,s;const{source:a,field:r,custom:d=!1}=t,o=r.replace(/_/,"-");if(this.hiddenSelector.matches(o))return"";const l=customElements.get("foxy-i18n").i18next.getFixedT(this.lang,r);return e(c||(c=g` <div> ${0} <vaadin-combo-box class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" item-value-path="code" item-label-path="text" .checkValidity="${0}" .items="${0}" ?allow-custom-value="${0}" ?readonly="${0}" ?disabled="${0}" @change="${0}"> </vaadin-combo-box> ${0} </div> `),this.renderTemplateOrSlot(`${o}:before`),this.t(r).toString(),n(null===(s=null===(i=this.form)||void 0===i?void 0:i[r])||void 0===s?void 0:s.toString()),this.__getErrorMessage(r),o,this.__getValidator(r),a.map((e=>({text:l(e).toString(),code:e}))),d,this.readonlySelector.matches(o,!0),!this.in("idle")||this.disabledSelector.matches(o,!0),this.__bindField(r),this.renderTemplateOrSlot(`${o}:after`))},this.__maybeRenderTextField=t=>{var i,s;const{field:a,wide:r=!1,readonly:d=!1,required:l=!1}=t,m=a.replace(/_/,"-").replace("1","-one").replace("2","-two");return this.hiddenSelector.matches(m)?"":e(_||(_=g` <div class="${0}"> ${0} <vaadin-text-field class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" .checkValidity="${0}" ?disabled="${0}" ?required="${0}" ?readonly="${0}" @input="${0}" @keydown="${0}"> </vaadin-text-field> ${0} </div> `),o({"col-span-2":r}),this.renderTemplateOrSlot(`${m}:before`),this.t(a).toString(),n(null===(s=null===(i=this.form)||void 0===i?void 0:i[a])||void 0===s?void 0:s.toString()),this.__getErrorMessage(a),m,this.__getValidator(a),!this.in("idle")||this.disabledSelector.matches(m),l,d||this.readonlySelector.matches(m),this.__bindField(a),this.__handleKeyDown,this.renderTemplateOrSlot(`${m}:after`))},this.__renderTimestamps=()=>{const t=["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}}));return e(f||(f=g` <div> ${0} <x-property-table .items="${0}" data-testid="timestamps"></x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),t,this.renderTemplateOrSlot("timestamps:after"))},this.__renderAction=t=>{var i,s;const a=this.in({idle:{template:{dirty:"valid"}}}),r=this.in({idle:{snapshot:{dirty:"valid"}}}),d=!this.in("idle")||this.disabledSelector.matches(t,!0),o=!!(null===(i=this.form)||void 0===i?void 0:i.is_default_shipping),n=!!(null===(s=this.form)||void 0===s?void 0:s.is_default_billing),l=o||n,m=a||r;return e(p||(p=g` <div> ${0} <vaadin-button class="w-full" theme="${0}" data-testid="${0}" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="${0}" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot(`${t}:before`),this.in("idle")?"primary "+(this.href?"error":"success"):"",t,this.in({idle:"template"})&&!m||d||l,this.__handleActionClick,this.ns,t,this.lang,this.renderTemplateOrSlot(`${t}:after`))}}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-combo-box":customElements.get("vaadin-combo-box"),"x-property-table":s,"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n")}}static get v8n(){return[({address_name:e})=>e&&e.length>0||"address_name_required",({address_name:e})=>!e||e.length<=100||"address_name_too_long",({first_name:e})=>!e||e.length<=50||"first_name_too_long",({last_name:e})=>!e||e.length<=50||"last_name_too_long",({region:e})=>!e||e.length<=50||"region_too_long",({city:e})=>!e||e.length<=50||"city_too_long",({phone:e})=>!e||e.length<=50||"phone_too_long",({company:e})=>!e||e.length<=50||"company_too_long",({address2:e})=>!e||e.length<=100||"address2_too_long",({address1:e})=>e&&e.length>0||"address1_required",({address1:e})=>e&&e.length<=100||"address1_too_long",({postal_code:e})=>!e||e.length<=50||"postal_code_too_long"]}connectedCallback(){super.connectedCallback(),customElements.get("foxy-i18n").i18next.loadNamespaces(["country","region"])}render(){var t,i,s,a;const{hiddenSelector:r,lang:d,ns:n}=this,l=this.href?"delete":"create",c=!!(null===(t=this.form)||void 0===t?void 0:t.is_default_shipping),_=!!(null===(i=this.form)||void 0===i?void 0:i.is_default_billing),f=c||_,p=this.in("busy"),b=this.in("fail");return e(u||(u=g` <foxy-internal-confirm-dialog message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" data-testid="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div class="space-y-l font-lumo text-m leading-m text-body relative" aria-busy="${0}" aria-live="polite" data-testid="wrapper"> <div class="grid grid-cols-2 gap-m"> ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} ${0} </div> ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),d,n,this.__handleConfirmHide,this.in("busy"),this.__maybeRenderTextField({field:"address_name",wide:!0,readonly:f,required:!0}),this.__maybeRenderTextField({field:"first_name"}),this.__maybeRenderTextField({field:"last_name"}),this.__maybeRenderTextField({field:"company"}),this.__maybeRenderTextField({field:"phone"}),this.__maybeRenderTextField({field:"address1",wide:!0,required:!0}),this.__maybeRenderTextField({field:"address2",wide:!0}),this.__maybeRenderComboBox({field:"country",source:m}),this.__maybeRenderComboBox({field:"region",source:h,custom:!0}),this.__maybeRenderTextField({field:"city"}),this.__maybeRenderTextField({field:"postal_code"}),!this.data||r.matches("timestamps",!0)?"":this.__renderTimestamps(),r.matches(l,!0)?"":this.__renderAction(l),o({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!p&&!b}),b?"error":p?"busy":"empty",d,this.ns,null!==(a=null===(s=customElements.get("foxy-spinner"))||void 0===s?void 0:s.defaultNS)&&void 0!==a?a:"")}disconnectedCallback(){var e,t;super.disconnectedCallback(),null===(t=(e=this.__getValidator.cache).clear)||void 0===t||t.call(e)}__handleKeyDown(e){"Enter"===e.key&&this.submit()}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__handleActionClick(e){if(this.in({idle:"snapshot"})){this.renderRoot.querySelector("#confirm").show(e.currentTarget)}else this.submit()}__handleConfirmHide(e){e.detail.cancelled||this.delete()}}customElements.define("foxy-address-form",y);export{y as AddressForm};
@@ -1 +1 @@
1
- import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as r}from"./shared-63eaded9.js";import{a as s}from"./shared-d01035c5.js";import{T as e}from"./shared-d05c93a5.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-1761daef.js";import"./shared-593f7e2c.js";import"./shared-6d45a07b.js";import"./shared-44cfc617.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";import"./shared-4e709717.js";let t,i,a=r=>r;class n extends(s(e,"applied-tax-card")){constructor(){super(...arguments),this.__currencyDisplay="",this.__currency=""}render(){return super.render({title:s=>r(t||(t=a`${0}`),s.name),subtitle:s=>r(i||(i=a` <foxy-i18n options="${0}" lang="${0}" key="price" ns="${0}"> </foxy-i18n> <span>&bull;</span> <foxy-i18n options="${0}" lang="${0}" key="percent" ns="${0}"> </foxy-i18n> `),JSON.stringify({amount:`${s.amount} ${this.__currency}`,currencyDisplay:this.__currencyDisplay}),this.lang,this.ns,JSON.stringify({fraction:s.rate/100}),this.lang,this.ns)})}async _sendGet(){const r=await super._sendGet(),[s,e]=await Promise.all([super._fetch(r._links["fx:transaction"].href),super._fetch(r._links["fx:store"].href)]);return this.__currency=s.currency_code,this.__currencyDisplay=e.use_international_currency_symbol?"code":"symbol",r}}customElements.define("foxy-applied-tax-card",n);export{n as AppliedTaxCard};
1
+ import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as r}from"./shared-63eaded9.js";import{a as s}from"./shared-9a40309d.js";import{T as e}from"./shared-bc2bfe52.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-1761daef.js";import"./shared-593f7e2c.js";import"./shared-6d45a07b.js";import"./shared-44cfc617.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";import"./shared-4e709717.js";let t,i,a=r=>r;class n extends(s(e,"applied-tax-card")){constructor(){super(...arguments),this.__currencyDisplay="",this.__currency=""}render(){return super.render({title:s=>r(t||(t=a`${0}`),s.name),subtitle:s=>r(i||(i=a` <foxy-i18n options="${0}" lang="${0}" key="price" ns="${0}"> </foxy-i18n> <span>&bull;</span> <foxy-i18n options="${0}" lang="${0}" key="percent" ns="${0}"> </foxy-i18n> `),JSON.stringify({amount:`${s.amount} ${this.__currency}`,currencyDisplay:this.__currencyDisplay}),this.lang,this.ns,JSON.stringify({fraction:s.rate/100}),this.lang,this.ns)})}async _sendGet(){const r=await super._sendGet(),[s,e]=await Promise.all([super._fetch(r._links["fx:transaction"].href),super._fetch(r._links["fx:store"].href)]);return this.__currency=s.currency_code,this.__currencyDisplay=e.use_international_currency_symbol?"code":"symbol",r}}customElements.define("foxy-applied-tax-card",n);export{n as AppliedTaxCard};
@@ -1 +1 @@
1
- import"./shared-60126eee.js";import"./shared-46ee137f.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import{N as s}from"./shared-44cfc617.js";import{a as i,T as r}from"./shared-d01035c5.js";import{c as a}from"./shared-4e709717.js";import"./shared-ff79f3f9.js";import"./foxy-i18n.js";import"./shared-1761daef.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";let n,o,d,l,m,c,u=e=>e;const p=i(t(r(s)),"attribute-card");class h extends p{constructor(){super(...arguments),this.templates={},this.__renderName=()=>{var t,s;const{data:i}=this;return e(n||(n=u` ${0} <div class="flex items-center space-x-xs text-secondary"> <div class="truncate" title="${0}" data-testid="name"> ${0} </div> ${0} </div> ${0} `),this.renderTemplateOrSlot("name:before"),null!==(t=null==i?void 0:i.name)&&void 0!==t?t:"",null!==(s=null==i?void 0:i.name)&&void 0!==s?s:e(o||(o=u`&nbsp;`)),i&&"public"!==i.visibility?e(d||(d=u`<iron-icon icon="icons:lock" class="icon-inline"></iron-icon>`)):"",this.renderTemplateOrSlot("name:after"))},this.__renderValue=()=>{var t,s;const{data:i}=this;return e(l||(l=u` ${0} <div class="truncate font-semibold" title="${0}" data-testid="value"> ${0} </div> ${0} `),this.renderTemplateOrSlot("value:before"),null!==(t=null==i?void 0:i.value)&&void 0!==t?t:"",null!==(s=null==i?void 0:i.value)&&void 0!==s?s:e(m||(m=u`&nbsp;`)),this.renderTemplateOrSlot("value:after"))}}render(){var t,s;const i=this.hiddenSelector,r=this.in({idle:"snapshot"}),n=this.in({idle:"template"});return e(c||(c=u` <div class="relative text-body text-m font-lumo leading-m" aria-live="polite" aria-busy="${0}"> ${0} ${0} <div class="${0}"> <foxy-spinner data-testid="spinner" class="m-auto" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.in("busy"),i.matches("name",!0)?"":this.__renderName(),i.matches("value",!0)?"":this.__renderValue(),a({"transition duration-250 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":r}),this.in("fail")?"error":n?"empty":"busy",this.lang,this.ns,null!==(s=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==s?s:"")}}customElements.define("foxy-attribute-card",h);export{h as AttributeCard};
1
+ import"./shared-60126eee.js";import"./shared-46ee137f.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import{N as s}from"./shared-44cfc617.js";import{a as i,T as a}from"./shared-9a40309d.js";import{c as r}from"./shared-4e709717.js";import"./shared-ff79f3f9.js";import"./foxy-i18n.js";import"./shared-1761daef.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";let n,o,d,l,m,c,u=e=>e;const p=i(t(a(s)),"attribute-card");class h extends p{constructor(){super(...arguments),this.templates={},this.__renderName=()=>{var t,s;const{data:i}=this;return e(n||(n=u` ${0} <div class="flex items-center space-x-xs text-secondary"> <div class="truncate" title="${0}" data-testid="name"> ${0} </div> ${0} </div> ${0} `),this.renderTemplateOrSlot("name:before"),null!==(t=null==i?void 0:i.name)&&void 0!==t?t:"",null!==(s=null==i?void 0:i.name)&&void 0!==s?s:e(o||(o=u`&nbsp;`)),i&&"public"!==i.visibility?e(d||(d=u`<iron-icon icon="icons:lock" class="icon-inline"></iron-icon>`)):"",this.renderTemplateOrSlot("name:after"))},this.__renderValue=()=>{var t,s;const{data:i}=this;return e(l||(l=u` ${0} <div class="truncate font-semibold" title="${0}" data-testid="value"> ${0} </div> ${0} `),this.renderTemplateOrSlot("value:before"),null!==(t=null==i?void 0:i.value)&&void 0!==t?t:"",null!==(s=null==i?void 0:i.value)&&void 0!==s?s:e(m||(m=u`&nbsp;`)),this.renderTemplateOrSlot("value:after"))}}render(){var t,s;const i=this.hiddenSelector,a=this.in({idle:"snapshot"}),n=this.in({idle:"template"});return e(c||(c=u` <div class="relative text-body text-m font-lumo leading-m" aria-live="polite" aria-busy="${0}"> ${0} ${0} <div class="${0}"> <foxy-spinner data-testid="spinner" class="m-auto" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.in("busy"),i.matches("name",!0)?"":this.__renderName(),i.matches("value",!0)?"":this.__renderValue(),r({"transition duration-250 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":a}),this.in("fail")?"error":n?"empty":"busy",this.lang,this.ns,null!==(s=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==s?s:"")}}customElements.define("foxy-attribute-card",h);export{h as AttributeCard};
@@ -1 +1 @@
1
- import{C as e}from"./shared-31d03530.js";import"./shared-bb824ab4.js";import"./shared-0ced76a0.js";import"./shared-daf6b763.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import"./shared-46ee137f.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{h as t}from"./shared-63eaded9.js";import{a as i,T as s,S as a}from"./shared-d01035c5.js";import{c as r}from"./shared-4e709717.js";import"./shared-4ba926ca.js";import"./shared-a3d2c48e.js";import"./shared-ec861f31.js";import{m as l}from"./shared-1761daef.js";import{G as d}from"./shared-da787055.js";import{P as n}from"./shared-b24377bf.js";import{C as o}from"./shared-593f7e2c.js";import{N as h}from"./shared-44cfc617.js";import{i as m}from"./shared-6d45a07b.js";import"./shared-ff79f3f9.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-a46edf4b.js";import"./shared-60126eee.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";let c,f,p,b,v,y,u=e=>e;const _=i(o(s(a(h))),"attribute-form");class $ extends _{constructor(){super(...arguments),this.templates={},this.__getValidator=l((e=>()=>!this.errors.some((t=>t.startsWith(e))))),this.__bindField=l((e=>t=>{const i=t.target;this.edit({[e]:i.value})})),this.__maybeRenderTextField=({field:e})=>{var i,s;const a=e.replace(/_/,"-");return this.hiddenSelector.matches(a)?"":t(c||(c=u` <div> ${0} <vaadin-text-field class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" .checkValidity="${0}" ?disabled="${0}" ?readonly="${0}" @input="${0}" @keydown="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${a}:before`),this.t(e).toString(),m(null===(s=null===(i=this.form)||void 0===i?void 0:i[e])||void 0===s?void 0:s.toString()),this.__getErrorMessage(e),e,this.__getValidator(e),!this.in("idle")||this.disabledSelector.matches(a),this.readonlySelector.matches(a),this.__bindField(e),this.__handleKeyDown,this.renderTemplateOrSlot(`${a}:after`))},this.__renderVisibility=()=>{var e;const{disabledSelector:i,readonlySelector:s,form:a,lang:l,ns:d}=this,n=!this.in("idle"),o=n||i.matches("visibility",!0);return t(f||(f=u` <div> ${0} <x-group frame> <foxy-i18n data-testid="visibility-label" class="${0}" lang="${0}" slot="header" key="visibility" ns="${0}"> </foxy-i18n> <x-choice data-testid="visibility" lang="${0}" ns="${0}" .items="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" @change="${0}"> <foxy-i18n slot="private-label" lang="${0}" key="visibility_private" ns="${0}"> </foxy-i18n> <foxy-i18n slot="restricted-label" lang="${0}" key="visibility_restricted" ns="${0}"> </foxy-i18n> <foxy-i18n ns="${0}" lang="${0}" slot="public-label" key="visibility_public"> </foxy-i18n> </x-choice> </x-group> ${0} </div> `),this.renderTemplateOrSlot("visibility:before"),r({"text-disabled":o}),l,d,l,$.defaultNS,$.__visibilityOptions,null!==(e=null==a?void 0:a.visibility)&&void 0!==e?e:"private",n||i.matches("visibility",!0),s.matches("visibility",!0),this.__handleChoiceChange,l,d,l,d,d,l,this.renderTemplateOrSlot("visibility:after"))},this.__renderTimestamps=()=>{const e=["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}}));return t(p||(p=u` <div> ${0} <x-property-table .items="${0}" data-testid="timestamps"></x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),e,this.renderTemplateOrSlot("timestamps:after"))},this.__renderDelete=()=>t(b||(b=u` <div> ${0} <vaadin-button class="w-full" data-testid="delete" theme="error primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="delete"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("delete:before"),!this.in("idle")||this.disabledSelector.matches("delete",!0),this.__handleDeleteClick,this.ns,this.lang,this.renderTemplateOrSlot("delete:after")),this.__renderCreate=()=>{const e=this.in({idle:{template:{dirty:"valid"}}}),i=this.in({idle:{snapshot:{dirty:"valid"}}}),s=e||i;return t(v||(v=u` <div> ${0} <vaadin-button data-testid="create" class="w-full" theme="success primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="create"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("create:before"),!this.in("idle")||!s||this.disabledSelector.matches("create",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-text-area":customElements.get("vaadin-text-area"),"x-property-table":n,"vaadin-button":customElements.get("vaadin-button"),"x-choice":e,"x-group":d,"foxy-i18n":customElements.get("foxy-i18n"),"foxy-spinner":customElements.get("foxy-spinner")}}static get v8n(){return[({value:e})=>e&&e.length>0||"value_required",({value:e})=>e&&e.length<=1e3||"value_too_long",({name:e})=>e&&e.length>0||"name_required",({name:e})=>e&&e.length<=500||"name_too_long"]}render(){const{hiddenSelector:e,data:i,lang:s,ns:a}=this,l=this.in("busy"),d=this.in("fail");return t(y||(y=u` <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div class="relative" aria-busy="${0}" aria-live="polite"> <div class="grid grid-cols-1 gap-l"> ${0} ${0} ${0} ${0} ${0} ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0}"> </foxy-spinner> </div> </div> `),s,a,this.__handleConfirmHide,this.in("busy"),this.__maybeRenderTextField({field:"name"}),this.__maybeRenderTextField({field:"value"}),e.matches("visibility",!0)?"":this.__renderVisibility(),e.matches("timestamps",!0)||!i?"":this.__renderTimestamps(),e.matches("delete",!0)||!i?"":this.__renderDelete(),e.matches("create",!0)||i?"":this.__renderCreate(),r({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!l&&!d}),d?"error":l?"busy":"empty",s,a)}disconnectedCallback(){var e,t,i,s;super.disconnectedCallback(),null===(t=(e=this.__bindField.cache).clear)||void 0===t||t.call(e),null===(s=(i=this.__getValidator.cache).clear)||void 0===s||s.call(i)}get __confirmDialog(){return this.renderRoot.querySelector("#confirm")}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__handleKeyDown(e){"Enter"===e.key&&this.submit()}__handleChoiceChange(e){this.edit({visibility:e.detail})}__handleDeleteClick(e){this.__confirmDialog.show(e.currentTarget)}__handleConfirmHide(e){e.detail.cancelled||this.delete()}}$.__visibilityOptions=["private","restricted","public"],customElements.define("foxy-attribute-form",$);export{$ as AttributeForm};
1
+ import{C as e}from"./shared-1f1734cb.js";import"./shared-bb824ab4.js";import"./shared-0ced76a0.js";import"./shared-b1fc5dc3.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import"./shared-46ee137f.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{h as t}from"./shared-63eaded9.js";import{a as i,T as s,S as a}from"./shared-9a40309d.js";import{c as r}from"./shared-4e709717.js";import"./shared-07abcd7b.js";import"./shared-6ebe3825.js";import"./shared-ec861f31.js";import{m as l}from"./shared-1761daef.js";import{G as d}from"./shared-91e768be.js";import{P as n}from"./shared-8a7bee0d.js";import{C as o}from"./shared-593f7e2c.js";import{N as h}from"./shared-44cfc617.js";import{i as m}from"./shared-6d45a07b.js";import"./shared-ff79f3f9.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-a46edf4b.js";import"./shared-60126eee.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";let c,f,p,b,v,y,u=e=>e;const _=i(o(s(a(h))),"attribute-form");class $ extends _{constructor(){super(...arguments),this.templates={},this.__getValidator=l((e=>()=>!this.errors.some((t=>t.startsWith(e))))),this.__bindField=l((e=>t=>{const i=t.target;this.edit({[e]:i.value})})),this.__maybeRenderTextField=({field:e})=>{var i,s;const a=e.replace(/_/,"-");return this.hiddenSelector.matches(a)?"":t(c||(c=u` <div> ${0} <vaadin-text-field class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" .checkValidity="${0}" ?disabled="${0}" ?readonly="${0}" @input="${0}" @keydown="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${a}:before`),this.t(e).toString(),m(null===(s=null===(i=this.form)||void 0===i?void 0:i[e])||void 0===s?void 0:s.toString()),this.__getErrorMessage(e),e,this.__getValidator(e),!this.in("idle")||this.disabledSelector.matches(a),this.readonlySelector.matches(a),this.__bindField(e),this.__handleKeyDown,this.renderTemplateOrSlot(`${a}:after`))},this.__renderVisibility=()=>{var e;const{disabledSelector:i,readonlySelector:s,form:a,lang:l,ns:d}=this,n=!this.in("idle"),o=n||i.matches("visibility",!0);return t(f||(f=u` <div> ${0} <x-group frame> <foxy-i18n data-testid="visibility-label" class="${0}" lang="${0}" slot="header" key="visibility" ns="${0}"> </foxy-i18n> <x-choice data-testid="visibility" lang="${0}" ns="${0}" .items="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" @change="${0}"> <foxy-i18n slot="private-label" lang="${0}" key="visibility_private" ns="${0}"> </foxy-i18n> <foxy-i18n slot="restricted-label" lang="${0}" key="visibility_restricted" ns="${0}"> </foxy-i18n> <foxy-i18n ns="${0}" lang="${0}" slot="public-label" key="visibility_public"> </foxy-i18n> </x-choice> </x-group> ${0} </div> `),this.renderTemplateOrSlot("visibility:before"),r({"text-disabled":o}),l,d,l,$.defaultNS,$.__visibilityOptions,null!==(e=null==a?void 0:a.visibility)&&void 0!==e?e:"private",n||i.matches("visibility",!0),s.matches("visibility",!0),this.__handleChoiceChange,l,d,l,d,d,l,this.renderTemplateOrSlot("visibility:after"))},this.__renderTimestamps=()=>{const e=["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}}));return t(p||(p=u` <div> ${0} <x-property-table .items="${0}" data-testid="timestamps"></x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),e,this.renderTemplateOrSlot("timestamps:after"))},this.__renderDelete=()=>t(b||(b=u` <div> ${0} <vaadin-button class="w-full" data-testid="delete" theme="error primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="delete"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("delete:before"),!this.in("idle")||this.disabledSelector.matches("delete",!0),this.__handleDeleteClick,this.ns,this.lang,this.renderTemplateOrSlot("delete:after")),this.__renderCreate=()=>{const e=this.in({idle:{template:{dirty:"valid"}}}),i=this.in({idle:{snapshot:{dirty:"valid"}}}),s=e||i;return t(v||(v=u` <div> ${0} <vaadin-button data-testid="create" class="w-full" theme="success primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="create"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("create:before"),!this.in("idle")||!s||this.disabledSelector.matches("create",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-text-area":customElements.get("vaadin-text-area"),"x-property-table":n,"vaadin-button":customElements.get("vaadin-button"),"x-choice":e,"x-group":d,"foxy-i18n":customElements.get("foxy-i18n"),"foxy-spinner":customElements.get("foxy-spinner")}}static get v8n(){return[({value:e})=>e&&e.length>0||"value_required",({value:e})=>e&&e.length<=1e3||"value_too_long",({name:e})=>e&&e.length>0||"name_required",({name:e})=>e&&e.length<=500||"name_too_long"]}render(){const{hiddenSelector:e,data:i,lang:s,ns:a}=this,l=this.in("busy"),d=this.in("fail");return t(y||(y=u` <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div class="relative" aria-busy="${0}" aria-live="polite"> <div class="grid grid-cols-1 gap-l"> ${0} ${0} ${0} ${0} ${0} ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0}"> </foxy-spinner> </div> </div> `),s,a,this.__handleConfirmHide,this.in("busy"),this.__maybeRenderTextField({field:"name"}),this.__maybeRenderTextField({field:"value"}),e.matches("visibility",!0)?"":this.__renderVisibility(),e.matches("timestamps",!0)||!i?"":this.__renderTimestamps(),e.matches("delete",!0)||!i?"":this.__renderDelete(),e.matches("create",!0)||i?"":this.__renderCreate(),r({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!l&&!d}),d?"error":l?"busy":"empty",s,a)}disconnectedCallback(){var e,t,i,s;super.disconnectedCallback(),null===(t=(e=this.__bindField.cache).clear)||void 0===t||t.call(e),null===(s=(i=this.__getValidator.cache).clear)||void 0===s||s.call(i)}get __confirmDialog(){return this.renderRoot.querySelector("#confirm")}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__handleKeyDown(e){"Enter"===e.key&&this.submit()}__handleChoiceChange(e){this.edit({visibility:e.detail})}__handleDeleteClick(e){this.__confirmDialog.show(e.currentTarget)}__handleConfirmHide(e){e.detail.cancelled||this.delete()}}$.__visibilityOptions=["private","restricted","public"],customElements.define("foxy-attribute-form",$);export{$ as AttributeForm};
@@ -1 +1 @@
1
- import"./shared-0ced76a0.js";import"./shared-60126eee.js";import"./shared-46ee137f.js";import{L as t,h as e}from"./shared-63eaded9.js";import{T as a,S as s,a as n}from"./shared-d01035c5.js";import{c as r}from"./shared-4e709717.js";import{p as i,W as o}from"./shared-ca7c3b9a.js";import{s as d}from"./shared-2061be9a.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import"./shared-31d03530.js";import"./shared-4ba926ca.js";import"./shared-a3d2c48e.js";import"./shared-ec861f31.js";import"./shared-bb824ab4.js";import{G as l}from"./shared-da787055.js";import{C as h}from"./shared-593f7e2c.js";import{N as c}from"./shared-44cfc617.js";import{i as m}from"./shared-6d45a07b.js";import"./shared-ff79f3f9.js";import"./shared-1761daef.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-a46edf4b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";let u,p,g,b,f,v=t=>t;class y extends(a(t)){constructor(){super(...arguments),this.checkAvailability=()=>!0,this.readonly=!1,this.disabled=!1,this.value="",this.start="",this.lang=""}static get properties(){return{checkAvailability:{attribute:!1},readonly:{type:Boolean,reflect:!0},disabled:{type:Boolean,reflect:!0},value:{type:String},start:{type:String},lang:{type:String}}}render(){var t,a;const s=new Date(null!==(a=null!==(t=this.__startAsDate)&&void 0!==t?t:this.__valueAsDate)&&void 0!==a?a:Date.now()),n=new Date(s),i=new Date(s),o=this.lang||navigator.language;return n.setMonth(n.getMonth()-1),i.setMonth(i.getMonth()+1),e(u||(u=v` <div class="text-m text-body font-lumo leading-m"> <div class="grid p-xs" style="grid-template:auto/max-content auto max-content"> <vaadin-button data-testid="prev" aria-label="${0}" theme="icon tertiary" class="px-xs" ?disabled="${0}" @click="${0}"> <iron-icon icon="icons:chevron-left"></iron-icon> </vaadin-button> <span data-testid="month" class="${0}"> ${0} </span> <vaadin-button data-testid="next" aria-label="${0}" theme="icon tertiary" class="px-xs" ?disabled="${0}" @click="${0}"> <iron-icon icon="icons:chevron-right"></iron-icon> </vaadin-button> </div> ${0} </div> `),n.toLocaleString(o,{year:"numeric",month:"long"}),this.disabled,this.__handlePrevButtonClick,r({"text-center self-center font-medium":!0,"text-disabled":this.disabled}),s.toLocaleDateString(o,{month:"long",year:"numeric"}),i.toLocaleString(o,{year:"numeric",month:"long"}),this.disabled,this.__handleNextButtonClick,this.__renderMonth(s.getMonth(),s.getFullYear()))}get __valueAsDate(){return i(this.value)}set __valueAsDate(t){this.value=t?d(t):""}get __startAsDate(){return i(this.start)}set __startAsDate(t){this.start=t?d(t):""}__renderMonth(t,a){var s,n,i;const o=this.lang||navigator.language,d=new Date(a,t,1,0,0,0,0),l=[];for(let t=0;t<7;++t){const a=new Date;for(;a.getDay()!==t;)a.setDate(a.getDate()+1);l.push(e(p||(p=v` <span class="${0}"> ${0} </span> `),r({"self-center text-xxs uppercase font-medium tracking-wider":!0,"text-secondary":!this.disabled,"text-disabled":this.disabled}),a.toLocaleString(o,{weekday:"short"})))}for(;d.getMonth()===t;){const r=d.getFullYear()===(null===(s=this.__valueAsDate)||void 0===s?void 0:s.getFullYear())&&d.getMonth()===(null===(n=this.__valueAsDate)||void 0===n?void 0:n.getMonth())&&d.getDate()===(null===(i=this.__valueAsDate)||void 0===i?void 0:i.getDate());l.push(e(g||(g=v` <div style="grid-column:${0}" data-testclass="day-of-month"> ${0} </div> `),d.getDay()+1,this.__renderDate(d.getDate(),t,a,r))),d.setDate(d.getDate()+1)}return e(b||(b=v` <form data-testid="grid" class="grid gap-s p-s text-center" style="grid-template:auto/repeat(7,1fr)"> ${0} </form> `),l)}__renderDate(t,a,s,n=!1){const i=this.disabled||this.readonly||!this.checkAvailability(new Date(s,a,t));return e(f||(f=v` <label class="${0}"> <input name="date" type="radio" value="${0}" class="sr-only" ?disabled="${0}" @change="${0}"> ${0} </label> `),r({"font-tnum select-none relative flex h-m items-center justify-center rounded":!0,"cursor-pointer focus-within-ring-2 focus-within-ring-primary-50":!i,"bg-contrast-5 hover-bg-contrast-10":!n&&!i,"bg-primary text-primary-contrast":n&&!i,"border border-dashed border-contrast-20 text-disabled":!n&&i,"border border-dashed border-primary text-primary":n&&i}),t,this.readonly||this.disabled||i,(()=>{this.__valueAsDate=new Date(s,a,t),this.dispatchEvent(new CustomEvent("change"))}),t)}__handlePrevButtonClick(){var t;const e=new Date(null!==(t=this.start)&&void 0!==t?t:Date.now());this.__startAsDate=new Date(e.setMonth(e.getMonth()-1))}__handleNextButtonClick(){var t;const e=new Date(null!==(t=this.start)&&void 0!==t?t:Date.now());this.__startAsDate=new Date(e.setMonth(e.getMonth()+1))}}customElements.define("foxy-internal-calendar",y);let _,x,$,D,w=t=>t;const j=s(a(h(n(c,"cancellation-form"))));class S extends j{constructor(){super(...arguments),this.templates={},this.__renderWarning=()=>{const{lang:t,ns:a}=this;return e(_||(_=w` <div> ${0} <x-warning> <foxy-i18n data-testid="warning" class="${0}" lang="${0}" key="end_subscription_explainer" ns="${0}"> </foxy-i18n> </x-warning> ${0} </div> `),this.renderTemplateOrSlot("warning:before"),r({"text-disabled":!this.in({idle:"snapshot"})}),t,a,this.renderTemplateOrSlot("warning:after"))},this.__renderEndDate=()=>{var t,a;const{constructor:s,lang:n,ns:i}=this,o=s.__tomorrow.getTime(),d=this.in({idle:"snapshot"});return e(x||(x=w` <div> ${0} <x-group frame> <foxy-i18n data-testid="end-date-label" class="${0}" slot="header" lang="${0}" key="end_date" ns="${0}"> </foxy-i18n> <foxy-internal-calendar data-testid="end-date" .checkAvailability="${0}" ?disabled="${0}" ?readonly="${0}" value="${0}" lang="${0}" @change="${0}"> </foxy-internal-calendar> </x-group> ${0} </div> `),this.renderTemplateOrSlot("end-date:before"),r({"text-disabled":!d}),n,i,(t=>t.getTime()>=o),!d||this.disabledSelector.matches("end-date",!0),!!(null===(t=this.data)||void 0===t?void 0:t.end_date)||this.readonlySelector.matches("end-date",!0),m(null!==(a=this.form.end_date)&&void 0!==a?a:void 0),n,(t=>{this.edit({end_date:t.target.value})}),this.renderTemplateOrSlot("end-date:after"))},this.__renderSubmit=()=>{const t=this.in({idle:{snapshot:{clean:"valid"}}})||this.in({idle:{snapshot:{dirty:"valid"}}});return e($||($=w` <div> ${0} <vaadin-button data-testid="submit" ?disabled="${0}" theme="primary error" class="w-full" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="end_subscription"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("submit:before"),!t||this.disabledSelector.matches("submit",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("submit:after"))}}static get scopedElements(){return{"foxy-internal-calendar":customElements.get("foxy-internal-calendar"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"x-warning":o,"x-group":l}}static get v8n(){return[({end_date:t})=>!!t||"end_date_required"]}render(){var t,a;const s=this.hiddenSelector,n=this.in("busy"),i=this.in("fail");return e(D||(D=w` <div class="space-y-l font-lumo text-m text-body leading-m relative"> ${0} ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),s.matches("warning",!0)?"":this.__renderWarning(),s.matches("end-date",!0)?"":this.__renderEndDate(),s.matches("submit",!0)?"":this.__renderSubmit(),r({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!n&&!i}),i?"error":n?"busy":"empty",this.lang,this.ns,null!==(a=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==a?a:"")}submit(){if(!this.form.end_date){const t=this.constructor;this.edit({end_date:d(t.__tomorrow)})}super.submit()}static get __tomorrow(){const t=new Date;return t.setDate(t.getDate()+1),t.setHours(0,0,0,0),t}}customElements.define("foxy-cancellation-form",S);export{S as CancellationForm};
1
+ import"./shared-0ced76a0.js";import"./shared-60126eee.js";import"./shared-46ee137f.js";import{L as t,h as e}from"./shared-63eaded9.js";import{T as a,S as s,a as n}from"./shared-9a40309d.js";import{c as r}from"./shared-4e709717.js";import{p as i,W as o}from"./shared-322e60b1.js";import{s as d}from"./shared-2061be9a.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import"./shared-1f1734cb.js";import"./shared-07abcd7b.js";import"./shared-6ebe3825.js";import"./shared-ec861f31.js";import"./shared-bb824ab4.js";import{G as l}from"./shared-91e768be.js";import{C as h}from"./shared-593f7e2c.js";import{N as c}from"./shared-44cfc617.js";import{i as m}from"./shared-6d45a07b.js";import"./shared-ff79f3f9.js";import"./shared-1761daef.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-a46edf4b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";let u,p,g,b,f,v=t=>t;class y extends(a(t)){constructor(){super(...arguments),this.checkAvailability=()=>!0,this.readonly=!1,this.disabled=!1,this.value="",this.start="",this.lang=""}static get properties(){return{checkAvailability:{attribute:!1},readonly:{type:Boolean,reflect:!0},disabled:{type:Boolean,reflect:!0},value:{type:String},start:{type:String},lang:{type:String}}}render(){var t,a;const s=new Date(null!==(a=null!==(t=this.__startAsDate)&&void 0!==t?t:this.__valueAsDate)&&void 0!==a?a:Date.now()),n=new Date(s),i=new Date(s),o=this.lang||navigator.language;return n.setMonth(n.getMonth()-1),i.setMonth(i.getMonth()+1),e(u||(u=v` <div class="text-m text-body font-lumo leading-m"> <div class="grid p-xs" style="grid-template:auto/max-content auto max-content"> <vaadin-button data-testid="prev" aria-label="${0}" theme="icon tertiary" class="px-xs" ?disabled="${0}" @click="${0}"> <iron-icon icon="icons:chevron-left"></iron-icon> </vaadin-button> <span data-testid="month" class="${0}"> ${0} </span> <vaadin-button data-testid="next" aria-label="${0}" theme="icon tertiary" class="px-xs" ?disabled="${0}" @click="${0}"> <iron-icon icon="icons:chevron-right"></iron-icon> </vaadin-button> </div> ${0} </div> `),n.toLocaleString(o,{year:"numeric",month:"long"}),this.disabled,this.__handlePrevButtonClick,r({"text-center self-center font-medium":!0,"text-disabled":this.disabled}),s.toLocaleDateString(o,{month:"long",year:"numeric"}),i.toLocaleString(o,{year:"numeric",month:"long"}),this.disabled,this.__handleNextButtonClick,this.__renderMonth(s.getMonth(),s.getFullYear()))}get __valueAsDate(){return i(this.value)}set __valueAsDate(t){this.value=t?d(t):""}get __startAsDate(){return i(this.start)}set __startAsDate(t){this.start=t?d(t):""}__renderMonth(t,a){var s,n,i;const o=this.lang||navigator.language,d=new Date(a,t,1,0,0,0,0),l=[];for(let t=0;t<7;++t){const a=new Date;for(;a.getDay()!==t;)a.setDate(a.getDate()+1);l.push(e(p||(p=v` <span class="${0}"> ${0} </span> `),r({"self-center text-xxs uppercase font-medium tracking-wider":!0,"text-secondary":!this.disabled,"text-disabled":this.disabled}),a.toLocaleString(o,{weekday:"short"})))}for(;d.getMonth()===t;){const r=d.getFullYear()===(null===(s=this.__valueAsDate)||void 0===s?void 0:s.getFullYear())&&d.getMonth()===(null===(n=this.__valueAsDate)||void 0===n?void 0:n.getMonth())&&d.getDate()===(null===(i=this.__valueAsDate)||void 0===i?void 0:i.getDate());l.push(e(g||(g=v` <div style="grid-column:${0}" data-testclass="day-of-month"> ${0} </div> `),d.getDay()+1,this.__renderDate(d.getDate(),t,a,r))),d.setDate(d.getDate()+1)}return e(b||(b=v` <form data-testid="grid" class="grid gap-s p-s text-center" style="grid-template:auto/repeat(7,1fr)"> ${0} </form> `),l)}__renderDate(t,a,s,n=!1){const i=this.disabled||this.readonly||!this.checkAvailability(new Date(s,a,t));return e(f||(f=v` <label class="${0}"> <input name="date" type="radio" value="${0}" class="sr-only" ?disabled="${0}" @change="${0}"> ${0} </label> `),r({"font-tnum select-none relative flex h-m items-center justify-center rounded":!0,"cursor-pointer focus-within-ring-2 focus-within-ring-primary-50":!i,"bg-contrast-5 hover-bg-contrast-10":!n&&!i,"bg-primary text-primary-contrast":n&&!i,"border border-dashed border-contrast-20 text-disabled":!n&&i,"border border-dashed border-primary text-primary":n&&i}),t,this.readonly||this.disabled||i,(()=>{this.__valueAsDate=new Date(s,a,t),this.dispatchEvent(new CustomEvent("change"))}),t)}__handlePrevButtonClick(){var t;const e=new Date(null!==(t=this.start)&&void 0!==t?t:Date.now());this.__startAsDate=new Date(e.setMonth(e.getMonth()-1))}__handleNextButtonClick(){var t;const e=new Date(null!==(t=this.start)&&void 0!==t?t:Date.now());this.__startAsDate=new Date(e.setMonth(e.getMonth()+1))}}customElements.define("foxy-internal-calendar",y);let _,x,$,D,w=t=>t;const j=s(a(h(n(c,"cancellation-form"))));class S extends j{constructor(){super(...arguments),this.templates={},this.__renderWarning=()=>{const{lang:t,ns:a}=this;return e(_||(_=w` <div> ${0} <x-warning> <foxy-i18n data-testid="warning" class="${0}" lang="${0}" key="end_subscription_explainer" ns="${0}"> </foxy-i18n> </x-warning> ${0} </div> `),this.renderTemplateOrSlot("warning:before"),r({"text-disabled":!this.in({idle:"snapshot"})}),t,a,this.renderTemplateOrSlot("warning:after"))},this.__renderEndDate=()=>{var t,a;const{constructor:s,lang:n,ns:i}=this,o=s.__tomorrow.getTime(),d=this.in({idle:"snapshot"});return e(x||(x=w` <div> ${0} <x-group frame> <foxy-i18n data-testid="end-date-label" class="${0}" slot="header" lang="${0}" key="end_date" ns="${0}"> </foxy-i18n> <foxy-internal-calendar data-testid="end-date" .checkAvailability="${0}" ?disabled="${0}" ?readonly="${0}" value="${0}" lang="${0}" @change="${0}"> </foxy-internal-calendar> </x-group> ${0} </div> `),this.renderTemplateOrSlot("end-date:before"),r({"text-disabled":!d}),n,i,(t=>t.getTime()>=o),!d||this.disabledSelector.matches("end-date",!0),!!(null===(t=this.data)||void 0===t?void 0:t.end_date)||this.readonlySelector.matches("end-date",!0),m(null!==(a=this.form.end_date)&&void 0!==a?a:void 0),n,(t=>{this.edit({end_date:t.target.value})}),this.renderTemplateOrSlot("end-date:after"))},this.__renderSubmit=()=>{const t=this.in({idle:{snapshot:{clean:"valid"}}})||this.in({idle:{snapshot:{dirty:"valid"}}});return e($||($=w` <div> ${0} <vaadin-button data-testid="submit" ?disabled="${0}" theme="primary error" class="w-full" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="end_subscription"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("submit:before"),!t||this.disabledSelector.matches("submit",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("submit:after"))}}static get scopedElements(){return{"foxy-internal-calendar":customElements.get("foxy-internal-calendar"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"x-warning":o,"x-group":l}}static get v8n(){return[({end_date:t})=>!!t||"end_date_required"]}render(){var t,a;const s=this.hiddenSelector,n=this.in("busy"),i=this.in("fail");return e(D||(D=w` <div class="space-y-l font-lumo text-m text-body leading-m relative"> ${0} ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),s.matches("warning",!0)?"":this.__renderWarning(),s.matches("end-date",!0)?"":this.__renderEndDate(),s.matches("submit",!0)?"":this.__renderSubmit(),r({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!n&&!i}),i?"error":n?"busy":"empty",this.lang,this.ns,null!==(a=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==a?a:"")}submit(){if(!this.form.end_date){const t=this.constructor;this.edit({end_date:d(t.__tomorrow)})}super.submit()}static get __tomorrow(){const t=new Date;return t.setDate(t.getDate()+1),t.setHours(0,0,0,0),t}}customElements.define("foxy-cancellation-form",S);export{S as CancellationForm};
@@ -1 +1 @@
1
- import"./foxy-spinner.js";import{_ as e,h as t}from"./shared-63eaded9.js";import{C as s}from"./shared-593f7e2c.js";import{F as r}from"./shared-1761daef.js";import{N as n}from"./shared-44cfc617.js";import{r as i}from"./shared-b710881a.js";import{s as a}from"./shared-b0f0e8b5.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./foxy-i18n.js";import"./shared-d01035c5.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";let o,l=e=>e;class d extends(s(n)){constructor(){super(),this.props={},this.ns="",this.__pageFetchEventHandler=e=>this.__handlePageFetchEvent(e),this.item="foxy-null"}static get properties(){return e(e({},super.properties),{},{props:{type:Object},item:{type:String},ns:{type:String}})}get item(){return this.__item}set item(e){this.__renderItem="string"==typeof e?new Function("ctx",`return ctx.html\`\n <${e}\n disabledcontrols=\${ctx.disabledControls.toString()}\n readonlycontrols=\${ctx.readonlyControls.toString()}\n hiddencontrols=\${ctx.hiddenControls.toString()}\n data-testclass="items"\n parent=\${ctx.parent}\n group=\${ctx.group}\n href=\${ctx.href}\n lang=\${ctx.lang}\n ns="\${ctx.ns} \${customElements.get('${e}')?.defaultNS ?? ''}"\n ?disabled=\${ctx.disabled}\n ?readonly=\${ctx.readonly}\n ?hidden=\${ctx.hidden}\n .templates=\${ctx.templates}\n ...=\${ctx.spread(ctx.props)}\n >\n </${e}>\``):e,this.__item=e,this.requestUpdate()}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__pageFetchEventHandler)}render(){const e=this.__items.map((e=>({key:e._links.self.href,href:e._links.self.href,data:e})));return this.in("busy")?e.push({key:"stalled",href:"foxy://collection-page/stall",data:null}):this.in("fail")?e.push({key:"failed",href:"foxy://collection-page/fail",data:null}):(this.in({idle:"template"})||0===this.__items.length)&&e.push({key:"empty",href:"",data:null}),t(o||(o=l`${0}`),i(e,(e=>e.key),(e=>{var s;return null===(s=this.__renderItem)||void 0===s?void 0:s.call(this,{disabledControls:this.disabledControls,readonlyControls:this.readonlyControls,hiddenControls:this.hiddenControls,templates:this.templates,disabled:this.disabled,readonly:this.readonly,hidden:this.hidden,parent:this.href,spread:a,props:this.props,group:this.group,lang:this.lang,data:e.data,href:e.href,ns:this.ns,html:t})})))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__pageFetchEventHandler)}get __items(){var e,t;return Array.from(Object.values(null!==(t=null===(e=this.form)||void 0===e?void 0:e._embedded)&&void 0!==t?t:{})).reduce(((e,t)=>[...e,...t]),[])}__handlePageFetchEvent(e){if(!(e instanceof r)||e.target===this)return;const{method:t,url:s}=e.request;return"GET"===t?"foxy://collection-page/stall"===s?this.__stallRequest(e):"foxy://collection-page/fail"===s?this.__failRequest(e):void 0:void 0}__stallRequest(e){e.stopImmediatePropagation(),e.respondWith(new Promise((()=>{})))}__failRequest(e){e.stopImmediatePropagation(),e.respondWith(Promise.resolve(new Response(null,{status:500})))}}customElements.define("foxy-collection-page",d);export{d as CollectionPage};
1
+ import"./foxy-spinner.js";import{_ as e,h as t}from"./shared-63eaded9.js";import{C as s}from"./shared-593f7e2c.js";import{F as r}from"./shared-1761daef.js";import{N as n}from"./shared-44cfc617.js";import{r as i}from"./shared-b710881a.js";import{s as a}from"./shared-b0f0e8b5.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./foxy-i18n.js";import"./shared-9a40309d.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";let o,l=e=>e;class d extends(s(n)){constructor(){super(),this.props={},this.ns="",this.__pageFetchEventHandler=e=>this.__handlePageFetchEvent(e),this.item="foxy-null"}static get properties(){return e(e({},super.properties),{},{props:{type:Object},item:{type:String},ns:{type:String}})}get item(){return this.__item}set item(e){this.__renderItem="string"==typeof e?new Function("ctx",`return ctx.html\`\n <${e}\n disabledcontrols=\${ctx.disabledControls.toString()}\n readonlycontrols=\${ctx.readonlyControls.toString()}\n hiddencontrols=\${ctx.hiddenControls.toString()}\n data-testclass="items"\n parent=\${ctx.parent}\n group=\${ctx.group}\n href=\${ctx.href}\n lang=\${ctx.lang}\n ns="\${ctx.ns} \${customElements.get('${e}')?.defaultNS ?? ''}"\n ?disabled=\${ctx.disabled}\n ?readonly=\${ctx.readonly}\n ?hidden=\${ctx.hidden}\n .templates=\${ctx.templates}\n ...=\${ctx.spread(ctx.props)}\n >\n </${e}>\``):e,this.__item=e,this.requestUpdate()}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__pageFetchEventHandler)}render(){const e=this.__items.map((e=>({key:e._links.self.href,href:e._links.self.href,data:e})));return this.in("busy")?e.push({key:"stalled",href:"foxy://collection-page/stall",data:null}):this.in("fail")?e.push({key:"failed",href:"foxy://collection-page/fail",data:null}):(this.in({idle:"template"})||0===this.__items.length)&&e.push({key:"empty",href:"",data:null}),t(o||(o=l`${0}`),i(e,(e=>e.key),(e=>{var s;return null===(s=this.__renderItem)||void 0===s?void 0:s.call(this,{disabledControls:this.disabledControls,readonlyControls:this.readonlyControls,hiddenControls:this.hiddenControls,templates:this.templates,disabled:this.disabled,readonly:this.readonly,hidden:this.hidden,parent:this.href,spread:a,props:this.props,group:this.group,lang:this.lang,data:e.data,href:e.href,ns:this.ns,html:t})})))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__pageFetchEventHandler)}get __items(){var e,t;return Array.from(Object.values(null!==(t=null===(e=this.form)||void 0===e?void 0:e._embedded)&&void 0!==t?t:{})).reduce(((e,t)=>[...e,...t]),[])}__handlePageFetchEvent(e){if(!(e instanceof r)||e.target===this)return;const{method:t,url:s}=e.request;return"GET"===t?"foxy://collection-page/stall"===s?this.__stallRequest(e):"foxy://collection-page/fail"===s?this.__failRequest(e):void 0:void 0}__stallRequest(e){e.stopImmediatePropagation(),e.respondWith(new Promise((()=>{})))}__failRequest(e){e.stopImmediatePropagation(),e.respondWith(Promise.resolve(new Response(null,{status:500})))}}customElements.define("foxy-collection-page",d);export{d as CollectionPage};
@@ -1 +1 @@
1
- import"./shared-0ced76a0.js";import"./foxy-collection-page.js";import"./foxy-i18n.js";import{L as e,_ as t,h as s}from"./shared-63eaded9.js";import{C as r}from"./shared-593f7e2c.js";import{b as a,a6 as i,R as n,F as o}from"./shared-1761daef.js";import{N as l,s as d}from"./shared-44cfc617.js";import{r as c}from"./shared-b710881a.js";import{i as h}from"./shared-a46edf4b.js";import{s as p}from"./shared-b0f0e8b5.js";import"./shared-df573cea.js";import"./shared-ff79f3f9.js";import"./foxy-spinner.js";import"./shared-46ee137f.js";import"./shared-60126eee.js";import"./shared-d01035c5.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";const u=a({manual:(e,t)=>t.data}),_=a({error:(e,t)=>t.data}),g=a({first:(e,t)=>t.data,pages:[],error:null}),m=a({first:(e,t)=>{var s,r;return null!==(r=null===(s=t.data[0])||void 0===s?void 0:s._links.self.href)&&void 0!==r?r:""},pages:(e,t)=>t.data,error:null}),f=a({pages:(e,t)=>0===t.data.returned_items?e.pages:[...e.pages,t.data]}),y=e=>e.manual,v=i({id:"pages",initial:"idle",context:{first:"",pages:[],error:null,manual:!1},states:{busy:{invoke:{src:"sendGet",onError:{target:"fail",actions:_},onDone:[{target:"idle.empty",cond:(e,t)=>0==t.data.total_items},{target:"idle.end",cond:(e,t)=>t.data.returned_items<t.data.limit,actions:f},{target:"idle.paused.manual",cond:y,actions:f},{target:"idle.paused.auto",actions:f}]},on:{SET_MANUAL:{actions:u}}},fail:{on:{SET_MANUAL:{actions:u}}},idle:{initial:"empty",states:{paused:{states:{auto:{invoke:{src:"observeChildren"}},manual:{}},on:{RESUME:"#pages.busy",SET_MANUAL:[{cond:y,actions:u,target:".manual"},{actions:u,target:".auto"}]}},empty:{on:{SET_MANUAL:{actions:u}}},end:{on:{SET_MANUAL:{actions:u}}}}}},on:{SET_FIRST:[{cond:(e,t)=>0===t.data.trim().length,target:"idle.empty",actions:g},{target:"busy",actions:g}],SET_PAGES:[{cond:(e,t)=>0===t.data.length,target:"idle.empty",actions:m},{target:"idle.paused",actions:m}]}});let b,x,E,k=e=>e;class S extends(r(e)){constructor(){var e;super(),e=this,this.props={},this.lang="",this.ns="",this.__group="",this.__fetchEventHandler=e=>this.__handleFetchEvent(e),this.__service=h(v.withConfig({services:{observeChildren:()=>e=>{const t=new IntersectionObserver((t=>{t.some((e=>e.isIntersecting))&&e("RESUME")}));return t.observe(this.renderRoot.children[this.renderRoot.children.length-1]),()=>t.disconnect()},sendGet:async function(t){var s;const r=t.pages[t.pages.length-1],a=null!==(s=null==r?void 0:r._links.next.href)&&void 0!==s?s:t.first,i=await new l.API(e).fetch(a);if(!i.ok)throw i;const n=await i.json();return e.__stopTrackingRumour(),l.Rumour(e.group).share({source:n._links.self.href,data:n}),e.__trackRumour(),n}}})),this.page="foxy-collection-page foxy-null"}static get properties(){return t(t({},super.properties),{},{manual:{type:Boolean,reflect:!0},first:{type:String,noAccessor:!0},pages:{type:Array,noAccessor:!0},group:{type:String},props:{type:Object},lang:{type:String},page:{type:String},ns:{type:String}})}get page(){return this.__page}set page(e){if("string"==typeof e){const t=e.split(" ").pop(),s=t?`item="${t}"`:"";this.__renderPage=new Function("ctx",`return ctx.html\`\n <${e}\n disabledcontrols=\${ctx.disabledControls.toString()}\n readonlycontrols=\${ctx.readonlyControls.toString()}\n hiddencontrols=\${ctx.hiddenControls.toString()}\n group=\${ctx.group}\n href=\${ctx.href}\n lang=\${ctx.lang}\n ns="\${ctx.ns} \${customElements.get('${e}')?.defaultNS ?? ''}"\n ${s}\n ?disabled=\${ctx.disabled}\n ?readonly=\${ctx.readonly}\n ?hidden=\${ctx.hidden}\n .templates=\${ctx.templates}\n ...=\${ctx.spread(ctx.props)}\n >\n </${e}>\``)}else this.__renderPage=e;this.__page=e,this.requestUpdate()}get first(){return this.__service.state.context.first}set first(e){this.__service.send({type:"SET_FIRST",data:e})}get pages(){return this.__service.state.context.pages}set pages(e){this.__service.send({type:"SET_PAGES",data:e})}get group(){return this.__group}set group(e){var t;this.__group=e,null===(t=this.__stopTrackingRumour)||void 0===t||t.call(this),this.__trackRumour()}get manual(){return this.__service.state.context.manual}set manual(e){this.__service.send({type:"SET_MANUAL",data:e})}in(e){return this.__service.state.matches(e)}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__fetchEventHandler),this.__createService(),this.__trackRumour()}render(){const e=this.pages.map((e=>({key:e._links.self.href,href:e._links.self.href})));return this.__service.state.matches("busy")?e.push({key:"stalled",href:"foxy://collection-pages/stall"}):this.__service.state.matches("fail")?e.push({key:"failed",href:"foxy://collection-pages/fail"}):this.__service.state.matches({idle:"empty"})&&e.push({key:"empty",href:""}),s(b||(b=k` ${0} ${0} `),c(e,(e=>e.key),((e,t)=>{var r;return this.__renderPage({disabledControls:this.disabledControls,readonlyControls:this.readonlyControls,hiddenControls:this.hiddenControls,templates:this.templates,disabled:this.disabled,readonly:this.readonly,hidden:this.hidden,spread:p,props:this.props,group:this.group,data:null!==(r=this.pages[t])&&void 0!==r?r:null,href:e.href,lang:this.lang,ns:this.ns,html:s})})),this.manual?this.in({idle:"paused"})?s(x||(x=k` <vaadin-button theme="small contrast" @click="${0}"> <foxy-i18n lang="${0}" key="load_more" ns="${0}"></foxy-i18n> </vaadin-button> `),(()=>this.__service.send("RESUME")),this.lang,this.ns):"":s(E||(E=k` <span></span> `)))}updated(e){super.updated(e),this.dispatchEvent(new l.UpdateEvent)}disconnectedCallback(){var e;super.disconnectedCallback(),this.removeEventListener("fetch",this.__fetchEventHandler),this.__service.stop(),null===(e=this.__stopTrackingRumour)||void 0===e||e.call(this)}__trackRumour(){this.__stopTrackingRumour=l.Rumour(this.group).track((e=>{try{0===this.pages.length?e({_links:{self:{href:this.first}}}):this.pages.map((t=>e(t)))}catch(e){if(!(e instanceof n.UpdateError))throw e;this.__service.send({type:"SET_FIRST",data:this.first})}}))}__createService(){this.__service.onTransition((({changed:e})=>e&&this.requestUpdate())).onChange((()=>this.requestUpdate())).start()}__handleFetchEvent(e){if(!(e instanceof o)||e.target===this)return;const{method:t,url:s}=e.request;return"GET"===t?"foxy://collection-pages/stall"===s?this.__stallRequest(e):"foxy://collection-pages/fail"===s?this.__failRequest(e):void this.__respondIfPossible(e):void 0}__respondIfPossible(e){const t=d(e.request.url,this.pages);t.ok&&(e.respondWith(Promise.resolve(t)),console.debug(`%c@foxy.io/elements::${this.localName}\n%c200%c GET ${e.request.url}`,"color: gray","background: gray; padding: 0 .2em; border-radius: .2em; color: white;",""))}__stallRequest(e){e.stopImmediatePropagation(),e.respondWith(new Promise((()=>{})))}__failRequest(e){e.stopImmediatePropagation(),e.respondWith(Promise.resolve(this.__service.state.context.error))}}customElements.define("foxy-collection-pages",S);export{S as CollectionPages};
1
+ import"./shared-0ced76a0.js";import"./foxy-collection-page.js";import"./foxy-i18n.js";import{L as e,_ as t,h as s}from"./shared-63eaded9.js";import{C as r}from"./shared-593f7e2c.js";import{b as a,a6 as i,R as n,F as o}from"./shared-1761daef.js";import{N as l,s as d}from"./shared-44cfc617.js";import{r as c}from"./shared-b710881a.js";import{i as h}from"./shared-a46edf4b.js";import{s as p}from"./shared-b0f0e8b5.js";import"./shared-df573cea.js";import"./shared-ff79f3f9.js";import"./foxy-spinner.js";import"./shared-46ee137f.js";import"./shared-60126eee.js";import"./shared-9a40309d.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";const u=a({manual:(e,t)=>t.data}),_=a({error:(e,t)=>t.data}),g=a({first:(e,t)=>t.data,pages:[],error:null}),m=a({first:(e,t)=>{var s,r;return null!==(r=null===(s=t.data[0])||void 0===s?void 0:s._links.self.href)&&void 0!==r?r:""},pages:(e,t)=>t.data,error:null}),f=a({pages:(e,t)=>0===t.data.returned_items?e.pages:[...e.pages,t.data]}),y=e=>e.manual,v=i({id:"pages",initial:"idle",context:{first:"",pages:[],error:null,manual:!1},states:{busy:{invoke:{src:"sendGet",onError:{target:"fail",actions:_},onDone:[{target:"idle.empty",cond:(e,t)=>0==t.data.total_items},{target:"idle.end",cond:(e,t)=>t.data.returned_items<t.data.limit,actions:f},{target:"idle.paused.manual",cond:y,actions:f},{target:"idle.paused.auto",actions:f}]},on:{SET_MANUAL:{actions:u}}},fail:{on:{SET_MANUAL:{actions:u}}},idle:{initial:"empty",states:{paused:{states:{auto:{invoke:{src:"observeChildren"}},manual:{}},on:{RESUME:"#pages.busy",SET_MANUAL:[{cond:y,actions:u,target:".manual"},{actions:u,target:".auto"}]}},empty:{on:{SET_MANUAL:{actions:u}}},end:{on:{SET_MANUAL:{actions:u}}}}}},on:{SET_FIRST:[{cond:(e,t)=>0===t.data.trim().length,target:"idle.empty",actions:g},{target:"busy",actions:g}],SET_PAGES:[{cond:(e,t)=>0===t.data.length,target:"idle.empty",actions:m},{target:"idle.paused",actions:m}]}});let b,x,E,k=e=>e;class S extends(r(e)){constructor(){var e;super(),e=this,this.props={},this.lang="",this.ns="",this.__group="",this.__fetchEventHandler=e=>this.__handleFetchEvent(e),this.__service=h(v.withConfig({services:{observeChildren:()=>e=>{const t=new IntersectionObserver((t=>{t.some((e=>e.isIntersecting))&&e("RESUME")}));return t.observe(this.renderRoot.children[this.renderRoot.children.length-1]),()=>t.disconnect()},sendGet:async function(t){var s;const r=t.pages[t.pages.length-1],a=null!==(s=null==r?void 0:r._links.next.href)&&void 0!==s?s:t.first,i=await new l.API(e).fetch(a);if(!i.ok)throw i;const n=await i.json();return e.__stopTrackingRumour(),l.Rumour(e.group).share({source:n._links.self.href,data:n}),e.__trackRumour(),n}}})),this.page="foxy-collection-page foxy-null"}static get properties(){return t(t({},super.properties),{},{manual:{type:Boolean,reflect:!0},first:{type:String,noAccessor:!0},pages:{type:Array,noAccessor:!0},group:{type:String},props:{type:Object},lang:{type:String},page:{type:String},ns:{type:String}})}get page(){return this.__page}set page(e){if("string"==typeof e){const t=e.split(" ").pop(),s=t?`item="${t}"`:"";this.__renderPage=new Function("ctx",`return ctx.html\`\n <${e}\n disabledcontrols=\${ctx.disabledControls.toString()}\n readonlycontrols=\${ctx.readonlyControls.toString()}\n hiddencontrols=\${ctx.hiddenControls.toString()}\n group=\${ctx.group}\n href=\${ctx.href}\n lang=\${ctx.lang}\n ns="\${ctx.ns} \${customElements.get('${e}')?.defaultNS ?? ''}"\n ${s}\n ?disabled=\${ctx.disabled}\n ?readonly=\${ctx.readonly}\n ?hidden=\${ctx.hidden}\n .templates=\${ctx.templates}\n ...=\${ctx.spread(ctx.props)}\n >\n </${e}>\``)}else this.__renderPage=e;this.__page=e,this.requestUpdate()}get first(){return this.__service.state.context.first}set first(e){this.__service.send({type:"SET_FIRST",data:e})}get pages(){return this.__service.state.context.pages}set pages(e){this.__service.send({type:"SET_PAGES",data:e})}get group(){return this.__group}set group(e){var t;this.__group=e,null===(t=this.__stopTrackingRumour)||void 0===t||t.call(this),this.__trackRumour()}get manual(){return this.__service.state.context.manual}set manual(e){this.__service.send({type:"SET_MANUAL",data:e})}in(e){return this.__service.state.matches(e)}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__fetchEventHandler),this.__createService(),this.__trackRumour()}render(){const e=this.pages.map((e=>({key:e._links.self.href,href:e._links.self.href})));return this.__service.state.matches("busy")?e.push({key:"stalled",href:"foxy://collection-pages/stall"}):this.__service.state.matches("fail")?e.push({key:"failed",href:"foxy://collection-pages/fail"}):this.__service.state.matches({idle:"empty"})&&e.push({key:"empty",href:""}),s(b||(b=k` ${0} ${0} `),c(e,(e=>e.key),((e,t)=>{var r;return this.__renderPage({disabledControls:this.disabledControls,readonlyControls:this.readonlyControls,hiddenControls:this.hiddenControls,templates:this.templates,disabled:this.disabled,readonly:this.readonly,hidden:this.hidden,spread:p,props:this.props,group:this.group,data:null!==(r=this.pages[t])&&void 0!==r?r:null,href:e.href,lang:this.lang,ns:this.ns,html:s})})),this.manual?this.in({idle:"paused"})?s(x||(x=k` <vaadin-button theme="small contrast" @click="${0}"> <foxy-i18n lang="${0}" key="load_more" ns="${0}"></foxy-i18n> </vaadin-button> `),(()=>this.__service.send("RESUME")),this.lang,this.ns):"":s(E||(E=k` <span></span> `)))}updated(e){super.updated(e),this.dispatchEvent(new l.UpdateEvent)}disconnectedCallback(){var e;super.disconnectedCallback(),this.removeEventListener("fetch",this.__fetchEventHandler),this.__service.stop(),null===(e=this.__stopTrackingRumour)||void 0===e||e.call(this)}__trackRumour(){this.__stopTrackingRumour=l.Rumour(this.group).track((e=>{try{0===this.pages.length?e({_links:{self:{href:this.first}}}):this.pages.map((t=>e(t)))}catch(e){if(!(e instanceof n.UpdateError))throw e;this.__service.send({type:"SET_FIRST",data:this.first})}}))}__createService(){this.__service.onTransition((({changed:e})=>e&&this.requestUpdate())).onChange((()=>this.requestUpdate())).start()}__handleFetchEvent(e){if(!(e instanceof o)||e.target===this)return;const{method:t,url:s}=e.request;return"GET"===t?"foxy://collection-pages/stall"===s?this.__stallRequest(e):"foxy://collection-pages/fail"===s?this.__failRequest(e):void this.__respondIfPossible(e):void 0}__respondIfPossible(e){const t=d(e.request.url,this.pages);t.ok&&(e.respondWith(Promise.resolve(t)),console.debug(`%c@foxy.io/elements::${this.localName}\n%c200%c GET ${e.request.url}`,"color: gray","background: gray; padding: 0 .2em; border-radius: .2em; color: white;",""))}__stallRequest(e){e.stopImmediatePropagation(),e.respondWith(new Promise((()=>{})))}__failRequest(e){e.stopImmediatePropagation(),e.respondWith(Promise.resolve(this.__service.state.context.error))}}customElements.define("foxy-collection-pages",S);export{S as CollectionPages};
@@ -1 +1 @@
1
- import"./shared-9221e6b2.js";import"./foxy-spinner.js";import{h as e}from"./shared-63eaded9.js";import{a as r}from"./shared-d01035c5.js";import{T as s}from"./shared-d05c93a5.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./foxy-i18n.js";import"./shared-1761daef.js";import"./shared-593f7e2c.js";import"./shared-6d45a07b.js";import"./shared-44cfc617.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";import"./shared-4e709717.js";let d,a,t=e=>e;class o extends(r(s,"custom-field-card")){render(){return super.render({title:r=>e(d||(d=t`${0}`),r.name),subtitle:r=>e(a||(a=t`${0}`),r.value)})}}customElements.define("foxy-custom-field-card",o);export{o as CustomFieldCard};
1
+ import"./shared-9221e6b2.js";import"./foxy-spinner.js";import{h as e}from"./shared-63eaded9.js";import{a as r}from"./shared-9a40309d.js";import{T as s}from"./shared-bc2bfe52.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./foxy-i18n.js";import"./shared-1761daef.js";import"./shared-593f7e2c.js";import"./shared-6d45a07b.js";import"./shared-44cfc617.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";import"./shared-4e709717.js";let a,d,t=e=>e;class o extends(r(s,"custom-field-card")){render(){return super.render({title:r=>e(a||(a=t`${0}`),r.name),subtitle:r=>e(d||(d=t`${0}`),r.value)})}}customElements.define("foxy-custom-field-card",o);export{o as CustomFieldCard};
@@ -1 +1 @@
1
- import"./shared-bb824ab4.js";import"./shared-16f72e27.js";import"./shared-0ced76a0.js";import"./shared-daf6b763.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import{N as i}from"./shared-44cfc617.js";import"./shared-46ee137f.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{a as s,T as r,S as a}from"./shared-d01035c5.js";import{c as d}from"./shared-4e709717.js";import"./shared-31d03530.js";import"./shared-4ba926ca.js";import"./shared-a3d2c48e.js";import"./shared-ec861f31.js";import{m as n}from"./shared-1761daef.js";import{P as l}from"./shared-b24377bf.js";import{i as o}from"./shared-6d45a07b.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";let h,m,c,f,p,b,_=e=>e;const u=s(t(r(a(i))),"custom-field-form");class v extends u{constructor(){super(...arguments),this.templates={},this.__getValidator=n((e=>()=>!this.errors.some((t=>t.startsWith(e))))),this.__bindField=n((e=>t=>{const i=t.target;this.edit({[e]:i.value})})),this.__maybeRenderTextField=({field:t})=>{var i,s;const r=t.replace(/_/,"-");return this.hiddenSelector.matches(r)?"":e(h||(h=_` <div> ${0} <vaadin-text-field class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" .checkValidity="${0}" ?disabled="${0}" ?readonly="${0}" @input="${0}" @keydown="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${r}:before`),this.t(t).toString(),o(null===(s=null===(i=this.form)||void 0===i?void 0:i[t])||void 0===s?void 0:s.toString()),this.__getErrorMessage(t),t,this.__getValidator(t),!this.in("idle")||this.disabledSelector.matches(r),this.readonlySelector.matches(r),this.__bindField(t),this.__handleKeyDown,this.renderTemplateOrSlot(`${r}:after`))},this.__renderVisibility=()=>{const{disabledSelector:t,form:i,lang:s,ns:r}=this,a=!this.in("idle")||t.matches("visibility",!0);return e(m||(m=_` <div data-testid="visibility"> ${0} <vaadin-checkbox ?disabled="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n lang="${0}" key="show_on_receipt" ns="${0}"></foxy-i18n> </vaadin-checkbox> ${0} </div> `),this.renderTemplateOrSlot("visibility:before"),a,!i.is_hidden,(e=>{const t=e.currentTarget;this.edit({is_hidden:!t.checked})}),s,r,this.renderTemplateOrSlot("visibility:after"))},this.__renderTimestamps=()=>{const t=["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}}));return e(c||(c=_` <div> ${0} <x-property-table .items="${0}" data-testid="timestamps"></x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),t,this.renderTemplateOrSlot("timestamps:after"))},this.__renderDelete=()=>e(f||(f=_` <div> ${0} <vaadin-button class="w-full" data-testid="delete" theme="error primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="delete"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("delete:before"),!this.in("idle")||this.disabledSelector.matches("delete",!0),this.__handleDeleteClick,this.ns,this.lang,this.renderTemplateOrSlot("delete:after")),this.__renderCreate=()=>{const t=this.in({idle:{template:{dirty:"valid"}}}),i=this.in({idle:{snapshot:{dirty:"valid"}}}),s=t||i;return e(p||(p=_` <div> ${0} <vaadin-button data-testid="create" class="w-full" theme="success primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="create"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("create:before"),!this.in("idle")||!s||this.disabledSelector.matches("create",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-checkbox":customElements.get("vaadin-checkbox"),"x-property-table":l,"vaadin-button":customElements.get("vaadin-button"),"foxy-i18n":customElements.get("foxy-i18n"),"foxy-spinner":customElements.get("foxy-spinner")}}static get v8n(){return[({value:e})=>e&&e.length>0||"value_required",({value:e})=>e&&e.length<=1e3||"value_too_long",({name:e})=>e&&e.length>0||"name_required",({name:e})=>e&&e.length<=500||"name_too_long"]}render(){const{hiddenSelector:t,data:i,lang:s,ns:r}=this,a=this.in("busy"),n=this.in("fail");return e(b||(b=_` <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div class="relative" aria-busy="${0}" aria-live="polite"> <div class="grid grid-cols-1 gap-l"> ${0} ${0} ${0} ${0} ${0} ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0}"> </foxy-spinner> </div> </div> `),s,r,this.__handleConfirmHide,this.in("busy"),this.__maybeRenderTextField({field:"name"}),this.__maybeRenderTextField({field:"value"}),t.matches("visibility",!0)?"":this.__renderVisibility(),t.matches("timestamps",!0)||!i?"":this.__renderTimestamps(),t.matches("delete",!0)||!i?"":this.__renderDelete(),t.matches("create",!0)||i?"":this.__renderCreate(),d({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!a&&!n}),n?"error":a?"busy":"empty",s,r)}disconnectedCallback(){var e,t,i,s;super.disconnectedCallback(),null===(t=(e=this.__bindField.cache).clear)||void 0===t||t.call(e),null===(s=(i=this.__getValidator.cache).clear)||void 0===s||s.call(i)}get __confirmDialog(){return this.renderRoot.querySelector("#confirm")}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__handleKeyDown(e){"Enter"===e.key&&this.submit()}__handleDeleteClick(e){this.__confirmDialog.show(e.currentTarget)}__handleConfirmHide(e){e.detail.cancelled||this.delete()}}customElements.define("foxy-custom-field-form",v);export{v as CustomFieldForm};
1
+ import"./shared-bb824ab4.js";import"./shared-16f72e27.js";import"./shared-0ced76a0.js";import"./shared-b1fc5dc3.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import{N as i}from"./shared-44cfc617.js";import"./shared-46ee137f.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{a as s,T as r,S as a}from"./shared-9a40309d.js";import{c as d}from"./shared-4e709717.js";import"./shared-1f1734cb.js";import"./shared-07abcd7b.js";import"./shared-6ebe3825.js";import"./shared-ec861f31.js";import{m as n}from"./shared-1761daef.js";import{P as l}from"./shared-8a7bee0d.js";import{i as o}from"./shared-6d45a07b.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";let h,m,c,f,p,b,_=e=>e;const u=s(t(r(a(i))),"custom-field-form");class v extends u{constructor(){super(...arguments),this.templates={},this.__getValidator=n((e=>()=>!this.errors.some((t=>t.startsWith(e))))),this.__bindField=n((e=>t=>{const i=t.target;this.edit({[e]:i.value})})),this.__maybeRenderTextField=({field:t})=>{var i,s;const r=t.replace(/_/,"-");return this.hiddenSelector.matches(r)?"":e(h||(h=_` <div> ${0} <vaadin-text-field class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" .checkValidity="${0}" ?disabled="${0}" ?readonly="${0}" @input="${0}" @keydown="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${r}:before`),this.t(t).toString(),o(null===(s=null===(i=this.form)||void 0===i?void 0:i[t])||void 0===s?void 0:s.toString()),this.__getErrorMessage(t),t,this.__getValidator(t),!this.in("idle")||this.disabledSelector.matches(r),this.readonlySelector.matches(r),this.__bindField(t),this.__handleKeyDown,this.renderTemplateOrSlot(`${r}:after`))},this.__renderVisibility=()=>{const{disabledSelector:t,form:i,lang:s,ns:r}=this,a=!this.in("idle")||t.matches("visibility",!0);return e(m||(m=_` <div data-testid="visibility"> ${0} <vaadin-checkbox ?disabled="${0}" ?checked="${0}" @change="${0}"> <foxy-i18n lang="${0}" key="show_on_receipt" ns="${0}"></foxy-i18n> </vaadin-checkbox> ${0} </div> `),this.renderTemplateOrSlot("visibility:before"),a,!i.is_hidden,(e=>{const t=e.currentTarget;this.edit({is_hidden:!t.checked})}),s,r,this.renderTemplateOrSlot("visibility:after"))},this.__renderTimestamps=()=>{const t=["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}}));return e(c||(c=_` <div> ${0} <x-property-table .items="${0}" data-testid="timestamps"></x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),t,this.renderTemplateOrSlot("timestamps:after"))},this.__renderDelete=()=>e(f||(f=_` <div> ${0} <vaadin-button class="w-full" data-testid="delete" theme="error primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="delete"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("delete:before"),!this.in("idle")||this.disabledSelector.matches("delete",!0),this.__handleDeleteClick,this.ns,this.lang,this.renderTemplateOrSlot("delete:after")),this.__renderCreate=()=>{const t=this.in({idle:{template:{dirty:"valid"}}}),i=this.in({idle:{snapshot:{dirty:"valid"}}}),s=t||i;return e(p||(p=_` <div> ${0} <vaadin-button data-testid="create" class="w-full" theme="success primary" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" lang="${0}" key="create"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot("create:before"),!this.in("idle")||!s||this.disabledSelector.matches("create",!0),(()=>this.submit()),this.ns,this.lang,this.renderTemplateOrSlot("create:after"))}}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-checkbox":customElements.get("vaadin-checkbox"),"x-property-table":l,"vaadin-button":customElements.get("vaadin-button"),"foxy-i18n":customElements.get("foxy-i18n"),"foxy-spinner":customElements.get("foxy-spinner")}}static get v8n(){return[({value:e})=>e&&e.length>0||"value_required",({value:e})=>e&&e.length<=1e3||"value_too_long",({name:e})=>e&&e.length>0||"name_required",({name:e})=>e&&e.length<=500||"name_too_long"]}render(){const{hiddenSelector:t,data:i,lang:s,ns:r}=this,a=this.in("busy"),n=this.in("fail");return e(b||(b=_` <foxy-internal-confirm-dialog data-testid="confirm" message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div class="relative" aria-busy="${0}" aria-live="polite"> <div class="grid grid-cols-1 gap-l"> ${0} ${0} ${0} ${0} ${0} ${0} </div> <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0}"> </foxy-spinner> </div> </div> `),s,r,this.__handleConfirmHide,this.in("busy"),this.__maybeRenderTextField({field:"name"}),this.__maybeRenderTextField({field:"value"}),t.matches("visibility",!0)?"":this.__renderVisibility(),t.matches("timestamps",!0)||!i?"":this.__renderTimestamps(),t.matches("delete",!0)||!i?"":this.__renderDelete(),t.matches("create",!0)||i?"":this.__renderCreate(),d({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!a&&!n}),n?"error":a?"busy":"empty",s,r)}disconnectedCallback(){var e,t,i,s;super.disconnectedCallback(),null===(t=(e=this.__bindField.cache).clear)||void 0===t||t.call(e),null===(s=(i=this.__getValidator.cache).clear)||void 0===s||s.call(i)}get __confirmDialog(){return this.renderRoot.querySelector("#confirm")}__getErrorMessage(e){const t=this.errors.find((t=>t.startsWith(e)));return t?this.t(t.replace(e,"v8n")).toString():""}__handleKeyDown(e){"Enter"===e.key&&this.submit()}__handleDeleteClick(e){this.__confirmDialog.show(e.currentTarget)}__handleConfirmHide(e){e.detail.cancelled||this.delete()}}customElements.define("foxy-custom-field-form",v);export{v as CustomFieldForm};
@@ -1 +1 @@
1
- import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import{N as s}from"./shared-44cfc617.js";import{T as i,a}from"./shared-d01035c5.js";import{c as r}from"./shared-4e709717.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-1761daef.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";let d,o,n,l,m,p,c,h=e=>e;const f=i(t(a(s,"customer-card")));class v extends f{constructor(){super(...arguments),this.templates={}}render(){var t,s;const i=this.hiddenSelector;return e(d||(d=h` <div aria-busy="${0}" aria-live="polite" class="relative leading-m font-lumo text-m"> <div class="${0}"> ${0} ${0} </div> <div class="${0}"> <foxy-spinner data-testid="spinner" state="${0}" class="m-auto" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.in("busy"),r({"leading-xs transition-opacity":!0,"opacity-0":!this.data}),i.matches("name",!0)?"":this.__renderName(),i.matches("email",!0)?"":this.__renderEmail(),r({"pointer-events-none absolute inset-0 flex transition-opacity":!0,"opacity-0":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy",this.lang,this.ns,null!==(s=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==s?s:"")}__renderName(){var t,s;const i=this.data,a=`${null!==(t=null==i?void 0:i.first_name)&&void 0!==t?t:""} ${null!==(s=null==i?void 0:i.last_name)&&void 0!==s?s:""}`.trim()||"–",r=i?e(o||(o=h`${0}`),a):e(n||(n=h`&ZeroWidthSpace;`));return e(l||(l=h` <div data-testid="name"> ${0} <div class="font-semibold text-body truncate">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("name:before"),r,this.renderTemplateOrSlot("name:after"))}__renderEmail(){var t;const s=this.data,i=`${null!==(t=null==s?void 0:s.email)&&void 0!==t?t:""}`.trim()||"–",a=s?e(m||(m=h`${0}`),i):e(p||(p=h`&ZeroWidthSpace;`));return e(c||(c=h` <div data-testid="email"> ${0} <div class="text-tertiary truncate">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("email:before"),a,this.renderTemplateOrSlot("email:after"))}}customElements.define("foxy-customer-card",v);export{v as CustomerCard};
1
+ import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import{N as s}from"./shared-44cfc617.js";import{T as a,a as i}from"./shared-9a40309d.js";import{c as r}from"./shared-4e709717.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-1761daef.js";import"./shared-6d45a07b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";import"./shared-a46edf4b.js";let d,o,n,l,m,p,h,c=e=>e;const f=a(t(i(s,"customer-card")));class v extends f{constructor(){super(...arguments),this.templates={}}render(){var t,s;const a=this.hiddenSelector;return e(d||(d=c` <div aria-busy="${0}" aria-live="polite" class="relative leading-m font-lumo text-m"> <div class="${0}"> ${0} ${0} </div> <div class="${0}"> <foxy-spinner data-testid="spinner" state="${0}" class="m-auto" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),this.in("busy"),r({"leading-xs transition-opacity":!0,"opacity-0":!this.data}),a.matches("name",!0)?"":this.__renderName(),a.matches("email",!0)?"":this.__renderEmail(),r({"pointer-events-none absolute inset-0 flex transition-opacity":!0,"opacity-0":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy",this.lang,this.ns,null!==(s=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==s?s:"")}__renderName(){var t,s;const a=this.data,i=`${null!==(t=null==a?void 0:a.first_name)&&void 0!==t?t:""} ${null!==(s=null==a?void 0:a.last_name)&&void 0!==s?s:""}`.trim()||"–",r=a?e(o||(o=c`${0}`),i):e(n||(n=c`&ZeroWidthSpace;`));return e(l||(l=c` <div data-testid="name"> ${0} <div class="font-semibold text-body truncate">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("name:before"),r,this.renderTemplateOrSlot("name:after"))}__renderEmail(){var t;const s=this.data,a=`${null!==(t=null==s?void 0:s.email)&&void 0!==t?t:""}`.trim()||"–",i=s?e(m||(m=c`${0}`),a):e(p||(p=c`&ZeroWidthSpace;`));return e(h||(h=c` <div data-testid="email"> ${0} <div class="text-tertiary truncate">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("email:before"),i,this.renderTemplateOrSlot("email:after"))}}customElements.define("foxy-customer-card",v);export{v as CustomerCard};
@@ -1 +1 @@
1
- import"./shared-bb824ab4.js";import"./shared-0ced76a0.js";import"./shared-daf6b763.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import"./foxy-nucleon-element.js";import"./shared-46ee137f.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{R as i,T as s,S as a,a as r}from"./shared-d01035c5.js";import{c as d}from"./shared-4e709717.js";import"./shared-31d03530.js";import"./shared-4ba926ca.js";import"./shared-a3d2c48e.js";import"./shared-ec861f31.js";import{m as o}from"./shared-1761daef.js";import{P as n}from"./shared-b24377bf.js";import{i as l}from"./shared-6d45a07b.js";import{v as m}from"./shared-b738ee96.js";import{N as h}from"./shared-44cfc617.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-a46edf4b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";let c,f,p,u,b=e=>e;const v=i(t(s(a(r(h,"customer-form")))));class _ extends v{constructor(){super(...arguments),this.templates={},this.__getValidator=o((e=>()=>!this.errors.some((t=>t.startsWith(e))))),this.__maybeRenderTextField=({field:t})=>{var i,s;const a=t.replace(/_/,"-"),r=this.errors.find((e=>e.startsWith(t)));return this.hiddenSelector.matches(a,!0)?"":e(c||(c=b` <div> ${0} <vaadin-text-field class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" .checkValidity="${0}" ?disabled="${0}" ?readonly="${0}" @input="${0}" @keydown="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${a}:before`),this.t(t).toString(),l(null===(s=null===(i=this.form)||void 0===i?void 0:i[t])||void 0===s?void 0:s.toString()),r?this.t(r.replace(t,"v8n")).toString():"",a,this.__getValidator(t),!this.in("idle")||this.disabledSelector.matches(a,!0),this.readonlySelector.matches(a,!0),(e=>this.edit({[t]:e.target.value})),(e=>"Enter"===e.key&&this.submit()),this.renderTemplateOrSlot(`${a}:after`))},this.__renderTimestamps=()=>e(f||(f=b` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}})),this.renderTemplateOrSlot("timestamps:after")),this.__renderAction=t=>{const{disabledSelector:i,href:s,lang:a,ns:r}=this,d=this.in({idle:{template:{dirty:"valid"}}}),o=this.in({idle:{snapshot:{dirty:"valid"}}}),n=!this.in("idle")||i.matches(t,!0),l=d||o;return e(p||(p=b` <div> ${0} <vaadin-button class="w-full" theme="${0}" data-testid="${0}" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="${0}" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot(`${t}:before`),this.in("idle")?"primary "+(s?"error":"success"):"",t,this.in({idle:"template"})&&!l||n,(e=>{if("delete"===t){this.renderRoot.querySelector("#confirm").show(e.currentTarget)}else this.submit()}),r,t,a,this.renderTemplateOrSlot(`${t}:after`))}}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-text-field":customElements.get("vaadin-text-field"),"x-property-table":n,"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n")}}static get v8n(){return[({first_name:e})=>!e||e.length<=50||"first_name_too_long",({last_name:e})=>!e||e.length<=50||"last_name_too_long",({tax_id:e})=>!e||e.length<=50||"tax_id_too_long",({email:e})=>e&&e.length>0||"email_required",({email:e})=>e&&e.length<=100||"email_too_long",({email:e})=>e&&m(e)||"email_invalid_email"]}render(){var t,i;const{hiddenSelector:s,href:a,lang:r,ns:o}=this,n=a?"delete":"create",l=this.in("busy"),m=this.in("fail");return e(u||(u=b` <foxy-internal-confirm-dialog message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" data-testid="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div data-testid="wrapper" aria-busy="${0}" aria-live="polite" class="space-y-l relative"> <div class="grid grid-cols-1 sm-grid-cols-2 gap-m"> ${0} ${0} ${0} ${0} </div> ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),r,o,(e=>{e.detail.cancelled||this.delete()}),l,this.__maybeRenderTextField({field:"first_name"}),this.__maybeRenderTextField({field:"last_name"}),this.__maybeRenderTextField({field:"email"}),this.__maybeRenderTextField({field:"tax_id"}),s.matches("timestamps",!0)||!a?"":this.__renderTimestamps(),s.matches(n)?"":this.__renderAction(n),d({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!l&&!m}),m?"error":l?"busy":"empty",r,o,null!==(i=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==i?i:"")}disconnectedCallback(){var e,t;super.disconnectedCallback(),null===(t=(e=this.__getValidator.cache).clear)||void 0===t||t.call(e)}}customElements.define("foxy-customer-form",_);export{_ as CustomerForm};
1
+ import"./shared-bb824ab4.js";import"./shared-0ced76a0.js";import"./shared-b1fc5dc3.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as e}from"./shared-63eaded9.js";import{C as t}from"./shared-593f7e2c.js";import"./foxy-nucleon-element.js";import"./shared-46ee137f.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{R as i,T as s,S as a,a as r}from"./shared-9a40309d.js";import{c as d}from"./shared-4e709717.js";import"./shared-1f1734cb.js";import"./shared-07abcd7b.js";import"./shared-6ebe3825.js";import"./shared-ec861f31.js";import{m as o}from"./shared-1761daef.js";import{P as n}from"./shared-8a7bee0d.js";import{i as l}from"./shared-6d45a07b.js";import{v as m}from"./shared-b738ee96.js";import{N as h}from"./shared-44cfc617.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-a46edf4b.js";import"./shared-00563cb0.js";import"./shared-7684cb05.js";let c,f,p,u,b=e=>e;const v=i(t(s(a(r(h,"customer-form")))));class _ extends v{constructor(){super(...arguments),this.templates={},this.__getValidator=o((e=>()=>!this.errors.some((t=>t.startsWith(e))))),this.__maybeRenderTextField=({field:t})=>{var i,s;const a=t.replace(/_/,"-"),r=this.errors.find((e=>e.startsWith(t)));return this.hiddenSelector.matches(a,!0)?"":e(c||(c=b` <div> ${0} <vaadin-text-field class="w-full" label="${0}" value="${0}" error-message="${0}" data-testid="${0}" .checkValidity="${0}" ?disabled="${0}" ?readonly="${0}" @input="${0}" @keydown="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${a}:before`),this.t(t).toString(),l(null===(s=null===(i=this.form)||void 0===i?void 0:i[t])||void 0===s?void 0:s.toString()),r?this.t(r.replace(t,"v8n")).toString():"",a,this.__getValidator(t),!this.in("idle")||this.disabledSelector.matches(a,!0),this.readonlySelector.matches(a,!0),(e=>this.edit({[t]:e.target.value})),(e=>"Enter"===e.key&&this.submit()),this.renderTemplateOrSlot(`${a}:after`))},this.__renderTimestamps=()=>e(f||(f=b` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot("timestamps:before"),["date_modified","date_created"].map((e=>{var t;return{name:this.t(e),value:(null===(t=this.data)||void 0===t?void 0:t[e])?this.t("date",{value:new Date(this.data[e])}):""}})),this.renderTemplateOrSlot("timestamps:after")),this.__renderAction=t=>{const{disabledSelector:i,href:s,lang:a,ns:r}=this,d=this.in({idle:{template:{dirty:"valid"}}}),o=this.in({idle:{snapshot:{dirty:"valid"}}}),n=!this.in("idle")||i.matches(t,!0),l=d||o;return e(p||(p=b` <div> ${0} <vaadin-button class="w-full" theme="${0}" data-testid="${0}" ?disabled="${0}" @click="${0}"> <foxy-i18n ns="${0}" key="${0}" lang="${0}"></foxy-i18n> </vaadin-button> ${0} </div> `),this.renderTemplateOrSlot(`${t}:before`),this.in("idle")?"primary "+(s?"error":"success"):"",t,this.in({idle:"template"})&&!l||n,(e=>{if("delete"===t){this.renderRoot.querySelector("#confirm").show(e.currentTarget)}else this.submit()}),r,t,a,this.renderTemplateOrSlot(`${t}:after`))}}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"vaadin-text-field":customElements.get("vaadin-text-field"),"x-property-table":n,"vaadin-button":customElements.get("vaadin-button"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n")}}static get v8n(){return[({first_name:e})=>!e||e.length<=50||"first_name_too_long",({last_name:e})=>!e||e.length<=50||"last_name_too_long",({tax_id:e})=>!e||e.length<=50||"tax_id_too_long",({email:e})=>e&&e.length>0||"email_required",({email:e})=>e&&e.length<=100||"email_too_long",({email:e})=>e&&m(e)||"email_invalid_email"]}render(){var t,i;const{hiddenSelector:s,href:a,lang:r,ns:o}=this,n=a?"delete":"create",l=this.in("busy"),m=this.in("fail");return e(u||(u=b` <foxy-internal-confirm-dialog message="delete_prompt" confirm="delete" cancel="cancel" header="delete" theme="primary error" lang="${0}" ns="${0}" id="confirm" data-testid="confirm" @hide="${0}"> </foxy-internal-confirm-dialog> <div data-testid="wrapper" aria-busy="${0}" aria-live="polite" class="space-y-l relative"> <div class="grid grid-cols-1 sm-grid-cols-2 gap-m"> ${0} ${0} ${0} ${0} </div> ${0} ${0} <div data-testid="spinner" class="${0}"> <foxy-spinner layout="vertical" class="m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),r,o,(e=>{e.detail.cancelled||this.delete()}),l,this.__maybeRenderTextField({field:"first_name"}),this.__maybeRenderTextField({field:"last_name"}),this.__maybeRenderTextField({field:"email"}),this.__maybeRenderTextField({field:"tax_id"}),s.matches("timestamps",!0)||!a?"":this.__renderTimestamps(),s.matches(n)?"":this.__renderAction(n),d({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!l&&!m}),m?"error":l?"busy":"empty",r,o,null!==(i=null===(t=customElements.get("foxy-spinner"))||void 0===t?void 0:t.defaultNS)&&void 0!==i?i:"")}disconnectedCallback(){var e,t;super.disconnectedCallback(),null===(t=(e=this.__getValidator.cache).clear)||void 0===t||t.call(e)}}customElements.define("foxy-customer-form",_);export{_ as CustomerForm};
@@ -1,4 +1,4 @@
1
- import{e,r as t,S as s,n as i,L as a,_ as n,h as r,j as o}from"./shared-63eaded9.js";import{F as l,D as d,t as h,f as u,a as c}from"./shared-46ee137f.js";import{B as p}from"./shared-0ced76a0.js";import{E as _,F as m}from"./shared-5d94bacb.js";import{E as g,T as v,D as f,C as y}from"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{t as b,b as x,c as w,d as $}from"./shared-d01035c5.js";import{I as k,D,a as S,C,b as E}from"./shared-31d03530.js";import"./shared-4ba926ca.js";import{a as I,I as A,D as M,S as T,M as j,W as O,c as V,t as F}from"./shared-a3d2c48e.js";import{O as R,a as P,b as N,c as B,I as q}from"./shared-ec861f31.js";import{T as z}from"./shared-bb824ab4.js";import"./foxy-i18n.js";import{c as Y}from"./shared-4e709717.js";import{h as L,P as W,G as H,a as U,t as X,c as K,y as Q}from"./shared-ff79f3f9.js";import"./shared-60126eee.js";import{P as G}from"./shared-94b0ae99.js";import{a8 as J,a9 as Z,aa as ee,ab as te,ac as se,ad as ie,ae,af as ne,ag as re,ah as oe,ai as le,aj as de,ak as he,al as ue,am as ce,an as pe,ao as _e,ap as me,aq as ge,ar as ve,as as fe,at as ye,au as be}from"./shared-1761daef.js";import{G as xe}from"./shared-da787055.js";import{p as we}from"./shared-87ca7818.js";import{j as $e}from"./shared-59e44f29.js";import{p as ke,W as De}from"./shared-ca7c3b9a.js";import{i as Se}from"./shared-a46edf4b.js";import"./shared-b0f0e8b5.js";import"./shared-00563cb0.js";import"./shared-593f7e2c.js";import"./shared-6d45a07b.js";function Ce(e){return e?Infinity===(e=b(e))||-Infinity===e?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function Ee(e){return e}var Ie=Object.create,Ae=function(){function t(){}return function(s){if(!e(s))return{};if(Ie)return Ie(s);t.prototype=s;var i=new t;return t.prototype=void 0,i}}();var Me=function(){try{var e=J(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();function Te(e,t,s){"__proto__"==t&&Me?Me(e,t,{configurable:!0,enumerable:!0,value:s,writable:!0}):e[t]=s}var je=Object.prototype.hasOwnProperty;function Oe(e,t,s){var i=e[t];je.call(e,t)&&Z(i,s)&&(void 0!==s||t in e)||Te(e,t,s)}function Ve(e,t,s,i){var a=!s;s||(s={});for(var n=-1,r=t.length;++n<r;){var o=t[n],l=i?i(s[o],e[o],o,s,e):void 0;void 0===l&&(l=e[o]),a?Te(s,o,l):Oe(s,o,l)}return s}var Fe=Object.prototype.hasOwnProperty;function Re(t){if(!e(t))return function(e){var t=[];if(null!=e)for(var s in Object(e))t.push(s);return t}(t);var s=se(t),i=[];for(var a in t)("constructor"!=a||!s&&Fe.call(t,a))&&i.push(a);return i}function Pe(e){return ee(e)?ie(e,!0):Re(e)}var Ne=ae(Object.getPrototypeOf,Object);var Be="object"==typeof exports&&exports&&!exports.nodeType&&exports,qe=Be&&"object"==typeof module&&module&&!module.nodeType&&module,ze=qe&&qe.exports===Be?t.Buffer:void 0,Ye=ze?ze.allocUnsafe:void 0;var Le=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)le(t,re(e)),e=Ne(e);return t}:oe;function We(e){return de(e,Pe,Le)}var He=Object.prototype.hasOwnProperty;function Ue(e){var t=new e.constructor(e.byteLength);return new he(t).set(new he(e)),t}var Xe=/\w*$/;var Ke=s?s.prototype:void 0,Qe=Ke?Ke.valueOf:void 0;function Ge(e,t,s){var i,a,n,r=e.constructor;switch(t){case"[object ArrayBuffer]":return Ue(e);case"[object Boolean]":case"[object Date]":return new r(+e);case"[object DataView]":return function(e,t){var s=t?Ue(e.buffer):e.buffer;return new e.constructor(s,e.byteOffset,e.byteLength)}(e,s);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(e,t){var s=t?Ue(e.buffer):e.buffer;return new e.constructor(s,e.byteOffset,e.length)}(e,s);case"[object Map]":case"[object Set]":return new r;case"[object Number]":case"[object String]":return new r(e);case"[object RegExp]":return(n=new(a=e).constructor(a.source,Xe.exec(a))).lastIndex=a.lastIndex,n;case"[object Symbol]":return i=e,Qe?Object(Qe.call(i)):{}}}var Je=ce&&ce.isMap,Ze=Je?pe(Je):function(e){return i(e)&&"[object Map]"==ue(e)};var et=ce&&ce.isSet,tt=et?pe(et):function(e){return i(e)&&"[object Set]"==ue(e)},st={};function it(t,s,i,a,n,r){var o,l=1&s,d=2&s,h=4&s;if(i&&(o=n?i(t,a,n,r):i(t)),void 0!==o)return o;if(!e(t))return t;var u=_e(t);if(u){if(o=function(e){var t=e.length,s=new e.constructor(t);return t&&"string"==typeof e[0]&&He.call(e,"index")&&(s.index=e.index,s.input=e.input),s}(t),!l)return function(e,t){var s=-1,i=e.length;for(t||(t=Array(i));++s<i;)t[s]=e[s];return t}(t,o)}else{var c=ue(t),p="[object Function]"==c||"[object GeneratorFunction]"==c;if(me(t))return function(e,t){if(t)return e.slice();var s=e.length,i=Ye?Ye(s):new e.constructor(s);return e.copy(i),i}(t,l);if("[object Object]"==c||"[object Arguments]"==c||p&&!n){if(o=d||p?{}:function(e){return"function"!=typeof e.constructor||se(e)?{}:Ae(Ne(e))}(t),!l)return d?function(e,t){return Ve(e,Le(e),t)}(t,function(e,t){return e&&Ve(t,Pe(t),e)}(o,t)):function(e,t){return Ve(e,re(e),t)}(t,function(e,t){return e&&Ve(t,ne(t),e)}(o,t))}else{if(!st[c])return n?t:{};o=Ge(t,c,l)}}r||(r=new ge);var _=r.get(t);if(_)return _;r.set(t,o),tt(t)?t.forEach((function(e){o.add(it(e,s,i,e,t,r))})):Ze(t)&&t.forEach((function(e,a){o.set(a,it(e,s,i,a,t,r))}));var m=u?void 0:(h?d?We:ve:d?Pe:ne)(t);return function(e,t){for(var s=-1,i=null==e?0:e.length;++s<i&&!1!==t(e[s],s,e););}(m||t,(function(e,a){m&&(e=t[a=e]),Oe(o,a,it(e,s,i,a,t,r))})),o}st["[object Arguments]"]=st["[object Array]"]=st["[object ArrayBuffer]"]=st["[object DataView]"]=st["[object Boolean]"]=st["[object Date]"]=st["[object Float32Array]"]=st["[object Float64Array]"]=st["[object Int8Array]"]=st["[object Int16Array]"]=st["[object Int32Array]"]=st["[object Map]"]=st["[object Number]"]=st["[object Object]"]=st["[object RegExp]"]=st["[object Set]"]=st["[object String]"]=st["[object Symbol]"]=st["[object Uint8Array]"]=st["[object Uint8ClampedArray]"]=st["[object Uint16Array]"]=st["[object Uint32Array]"]=!0,st["[object Error]"]=st["[object Function]"]=st["[object WeakMap]"]=!1;var at=Math.floor,nt=Math.random;var rt=parseFloat,ot=Math.min,lt=Math.random;function dt(t,s,i){if(i&&"boolean"!=typeof i&&function(t,s,i){if(!e(i))return!1;var a=typeof s;return!!("number"==a?ee(i)&&te(s,i.length):"string"==a&&s in i)&&Z(i[s],t)}(t,s,i)&&(s=i=void 0),void 0===i&&("boolean"==typeof s?(i=s,s=void 0):"boolean"==typeof t&&(i=t,t=void 0)),void 0===t&&void 0===s?(t=0,s=1):(t=Ce(t),void 0===s?(s=t,t=0):s=Ce(s)),t>s){var a=t;t=s,s=a}if(i||t%1||s%1){var n=lt();return ot(t+n*(s-t+rt("1e-"+((n+"").length-1))),s)}return function(e,t){return e+at(nt()*(t-e+1))}(t,s)}var ht=Math.min;function ut(e,t){if(e=function(e){var t=Ce(e),s=t%1;return t==t?s?t-s:t:0}(e),e<1||e>9007199254740991)return[];var s,i=4294967295,a=ht(e,4294967295);e-=4294967295;for(var n=fe(a,t="function"==typeof(s=t)?s:Ee);++i<e;)t(i);return n}class ct extends CustomEvent{constructor(e){super("change",{detail:e})}}let pt,_t,mt=e=>e;class gt extends a{constructor(){super(...arguments),this.value=[],this.disabled=!1,this.getText=e=>e}static get properties(){return n(n({},super.properties),{},{value:{type:Array},disabled:{type:Boolean},getText:{type:Object}})}static get styles(){return x.styles}render(){return r(pt||(pt=mt` <div class="font-lumo text-m w-full"> <ul> ${0} </ul> <div class="p-m"> <slot></slot> </div> </div> `),this.value.map(((e,t)=>r(_t||(_t=mt` <li class="${0}"> <slot name="${0}">${0}</slot> <button ?disabled="${0}" class="w-l h-l rounded text-tertiary transition duration-150 hover-text-secondary disabled-text-tertiary disabled-opacity-50 disabled-cursor-default focus-outline-none focus-shadow-outline" @click="${0}"> <iron-icon icon="lumo:cross"></iron-icon> </button> </li> `),"ml-m h-l text-body flex justify-between items-center"+(t>0?" border-t border-contrast-10":""),t,this.getText(e),this.disabled,(()=>this.__remove(t))))))}__remove(e){this.value=this.value.filter(((t,s)=>s!==e)),this.dispatchEvent(new ct(this.value))}}let vt,ft,yt=e=>e;class bt extends a{static get styles(){return[x.styles,o(vt||(vt=yt`:host{position:absolute;top:0;right:0;bottom:0;left:0}.top-center{top:calc(50% - (var(--lumo-size-xl)/ 2))}@keyframes dash0{from{transform:translate(0,0)}to{transform:translate(5.681301px,3.368302px)}}@keyframes dash1{from{transform:translate(0,0)}to{transform:translate(5.677051px,3.457428px)}}@keyframes dash2{from{transform:translate(0,0)}to{transform:translate(5.686002px,3.127455px)}}@keyframes dash3{from{transform:translate(-5.6842px,-3.404556px)}to{transform:translate(0,0)}}`))]}render(){return r(ft||(ft=yt` <div class="h-full bg-base text-primary"> <svg xmlns="http://www.w3.org/2000/svg" class="fill-current w-xl h-xl mx-auto sticky top-center" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" viewBox="0 0 64 64"> <path id="ew5fy7afo2w2" fill-rule="evenodd" stroke="none" stroke-width="1" d="M41.93 49.46c0 .18-.2.3-.36.2l-1.78-1.07-22.73-13.76a1.5 1.5 0 01-.7-1.3V11.08c0-.18.2-.3.36-.2l1.75 1.04c.44.25.74.75.74 1.32v19.27c0 .08.05.16.12.2L41.22 46c.47.28.73.8.72 1.32v2.15z" clip-rule="evenodd"/> <path id="ew5fy7afo2w3" fill-rule="evenodd" stroke="none" stroke-width="1" d="M47.64 52.9c0 .2-.2.3-.36.21l-1.8-1.08c-.42-.26-.7-.74-.7-1.3v-19.3a.24.24 0 00-.12-.2L25.27 19.47a.24.24 0 00-.37.21v12.55c0 .19-.21.3-.37.2l-1.76-1.06a1.46 1.46 0 01-.71-1.28V16.7c0-.54.27-1.03.71-1.3.45-.27 1-.26 1.44 0l22.72 13.77c.44.26.7.76.7 1.3v20.27l.01 2.17z" clip-rule="evenodd"/> <g style="animation:dash0 .3s linear infinite normal forwards"> <path id="ew5fy7afo2w4" fill-rule="evenodd" stroke="none" stroke-width="1" d="M30.59 35.68c0 .2-.21.3-.37.21l-1.8-1.1c-.41-.27-.68-.74-.68-1.28V27v-2.15c0-.2.2-.3.37-.21l1.78 1.06c.42.26.7.74.7 1.3v8.68z" clip-rule="evenodd"/> </g> <g style="animation:dash1 .3s linear infinite normal forwards"> <path id="ew5fy7afo2w5" fill-rule="evenodd" stroke="none" stroke-width="1" d="M36.28 39.13c0 .2-.2.3-.37.21l-1.79-1.1c-.41-.25-.69-.73-.69-1.28v-6.51-2.16c0-.2.2-.31.37-.21l1.76 1.06c.44.26.73.75.73 1.3v8.69z" clip-rule="evenodd"/> </g> <g style="animation:dash2 .3s linear infinite normal forwards"> <path id="ew5fy7afo2w6" fill-rule="evenodd" stroke="none" stroke-width="1" d="M41.96 42.57c0 .2-.2.3-.37.21L39.8 41.7a1.52 1.52 0 01-.71-1.3v-6.51-2.17c0-.2.2-.31.37-.21l1.74 1.06c.45.25.75.75.75 1.32v8.68z" clip-rule="evenodd"/> </g> <g transform="translate(-5.68 -3.4)" style="animation:dash3 .3s linear infinite normal forwards"> <path id="ew5fy7afo2w7" fill-rule="evenodd" stroke="none" stroke-width="1" d="M30.59 35.68c0 .2-.21.3-.37.21l-1.8-1.1c-.41-.27-.68-.74-.68-1.28V27v-2.15c0-.2.2-.3.37-.21l1.78 1.06c.42.26.7.74.7 1.3v8.68z" clip-rule="evenodd"/> </g> </svg> </div> `))}}let xt,wt,$t=e=>e;class kt extends a{static get styles(){return[x.styles,o(xt||(xt=$t`::slotted(:not([slot])){margin-top:var(--lumo-space-xl)}`))]}render(){return r(wt||(wt=$t` <article class="relative antialiased font-lumo"> <header class="space-y-xs leading-s"> <h1 class="font-bold text-header text-xl border-b border-contrast-10 pb-s mb-s"> <slot name="title"></slot> </h1> <p class="text-l text-secondary"> <slot name="subtitle"></slot> </p> </header> <slot></slot> </article> `))}}let Dt,St,Ct=e=>e;class Et extends kt{static get styles(){return[super.styles,o(Dt||(Dt=Ct`::slotted(:not([slot])){margin-top:var(--lumo-space-m)}`))]}render(){return r(St||(St=Ct` <section class="leading-s antialiased font-lumo"> <header> <h2 class="text-header font-semibold text-l"> <slot name="title"></slot> </h2> <p class="text-secondary text-m"> <slot name="subtitle"></slot> </p> </header> <slot></slot> </section> `))}}let It,At=e=>e;class Mt extends CustomEvent{constructor(e){super("change",{detail:e})}}class Tt extends a{constructor(){super(...arguments),this.disabled=!1,this.checked=!1}static get properties(){return n(n({},super.properties),{},{disabled:{attribute:!1},checked:{attribute:!1}})}static get styles(){return x.styles}render(){return r(It||(It=At` <label class="${0}"> <span class="text-body text-m mr-m"> <slot></slot> </span> <span style="border-radius:var(--lumo-size-xl);width:calc((var(--lumo-space-l) * 2) + (var(--lumo-space-xs) * 2))" class="${0}"> <span style="width:var(--lumo-space-l);height:var(--lumo-space-l)" class="${0}"></span> <input type="checkbox" class="opacity-0 absolute inset-0" .checked="${0}" .disabled="${0}" @change="${0}"> </span> </label> `),Y({"transition duration-200 flex justify-between items-center group":!0,"cursor-pointer":!this.disabled}),Y({"transition duration-150 relative flex flex-shrink-0 items-center":!0,"bg-success focus-within-shadow-outline-success":!this.disabled&&this.checked,"bg-contrast-10 focus-within-shadow-outline":this.disabled||!this.checked,"bg-contrast-20":!this.disabled&&!this.checked}),Y({"bg-tint transition duration-200 transform block rounded-full m-xs":!0,"translate-x-l":this.checked,"translate-x-0":!this.checked,"shadow-xs group-hover-shadow-s group-hover-scale-110":!this.disabled}),this.checked,this.disabled,(()=>{this.checked=!this.checked,this.dispatchEvent(new Mt(this.checked))}))}}class jt extends Error{constructor(){super("Unhandled request detected. Please add a request handler to connect this component to a backend.")}}class Ot extends CustomEvent{static emit(e){return new Promise(((t,s)=>{const i=new Ot(n({resolve:t,reject:s},e));e.source.dispatchEvent(i)&&s(new jt)}))}constructor({source:e,resolve:t,reject:s,init:i}){var a;super("request",{cancelable:!0,composed:!0,bubbles:!0,detail:{source:e,handle:async function(e){a.stopImmediatePropagation(),a.preventDefault();try{t(await e(...i))}catch(e){s(e)}}}}),a=this}}const Vt=L`<dom-module id="lumo-custom-field" theme-for="vaadin-custom-field">
1
+ import{e,r as t,S as s,n as i,L as a,_ as n,h as r,j as o}from"./shared-63eaded9.js";import{F as l,D as d,t as h,f as u,a as c}from"./shared-46ee137f.js";import{B as p}from"./shared-0ced76a0.js";import{E as _,F as m}from"./shared-74b9e1d1.js";import{E as g,T as v,D as f,C as y}from"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{t as b,b as x,c as w,d as $}from"./shared-9a40309d.js";import{I as k,D,a as S,C,b as E}from"./shared-1f1734cb.js";import"./shared-07abcd7b.js";import{a as I,I as A,D as M,S as T,M as j,W as O,c as V,t as F}from"./shared-6ebe3825.js";import{O as R,a as P,b as N,c as B,I as q}from"./shared-ec861f31.js";import{T as z}from"./shared-bb824ab4.js";import"./foxy-i18n.js";import{c as Y}from"./shared-4e709717.js";import{h as L,P as W,G as H,a as U,t as X,c as K,y as Q}from"./shared-ff79f3f9.js";import"./shared-60126eee.js";import{P as G}from"./shared-94b0ae99.js";import{a8 as J,a9 as Z,aa as ee,ab as te,ac as se,ad as ie,ae,af as ne,ag as re,ah as oe,ai as le,aj as de,ak as he,al as ue,am as ce,an as pe,ao as _e,ap as me,aq as ge,ar as ve,as as fe,at as ye,au as be}from"./shared-1761daef.js";import{G as xe}from"./shared-91e768be.js";import{p as we}from"./shared-87ca7818.js";import{j as $e}from"./shared-59e44f29.js";import{p as ke,W as De}from"./shared-322e60b1.js";import{i as Se}from"./shared-a46edf4b.js";import"./shared-b0f0e8b5.js";import"./shared-00563cb0.js";import"./shared-593f7e2c.js";import"./shared-6d45a07b.js";function Ce(e){return e?Infinity===(e=b(e))||-Infinity===e?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function Ee(e){return e}var Ie=Object.create,Ae=function(){function t(){}return function(s){if(!e(s))return{};if(Ie)return Ie(s);t.prototype=s;var i=new t;return t.prototype=void 0,i}}();var Me=function(){try{var e=J(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();function Te(e,t,s){"__proto__"==t&&Me?Me(e,t,{configurable:!0,enumerable:!0,value:s,writable:!0}):e[t]=s}var je=Object.prototype.hasOwnProperty;function Oe(e,t,s){var i=e[t];je.call(e,t)&&Z(i,s)&&(void 0!==s||t in e)||Te(e,t,s)}function Ve(e,t,s,i){var a=!s;s||(s={});for(var n=-1,r=t.length;++n<r;){var o=t[n],l=i?i(s[o],e[o],o,s,e):void 0;void 0===l&&(l=e[o]),a?Te(s,o,l):Oe(s,o,l)}return s}var Fe=Object.prototype.hasOwnProperty;function Re(t){if(!e(t))return function(e){var t=[];if(null!=e)for(var s in Object(e))t.push(s);return t}(t);var s=se(t),i=[];for(var a in t)("constructor"!=a||!s&&Fe.call(t,a))&&i.push(a);return i}function Pe(e){return ee(e)?ie(e,!0):Re(e)}var Ne=ae(Object.getPrototypeOf,Object);var Be="object"==typeof exports&&exports&&!exports.nodeType&&exports,qe=Be&&"object"==typeof module&&module&&!module.nodeType&&module,ze=qe&&qe.exports===Be?t.Buffer:void 0,Ye=ze?ze.allocUnsafe:void 0;var Le=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)le(t,re(e)),e=Ne(e);return t}:oe;function We(e){return de(e,Pe,Le)}var He=Object.prototype.hasOwnProperty;function Ue(e){var t=new e.constructor(e.byteLength);return new he(t).set(new he(e)),t}var Xe=/\w*$/;var Ke=s?s.prototype:void 0,Qe=Ke?Ke.valueOf:void 0;function Ge(e,t,s){var i,a,n,r=e.constructor;switch(t){case"[object ArrayBuffer]":return Ue(e);case"[object Boolean]":case"[object Date]":return new r(+e);case"[object DataView]":return function(e,t){var s=t?Ue(e.buffer):e.buffer;return new e.constructor(s,e.byteOffset,e.byteLength)}(e,s);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(e,t){var s=t?Ue(e.buffer):e.buffer;return new e.constructor(s,e.byteOffset,e.length)}(e,s);case"[object Map]":case"[object Set]":return new r;case"[object Number]":case"[object String]":return new r(e);case"[object RegExp]":return(n=new(a=e).constructor(a.source,Xe.exec(a))).lastIndex=a.lastIndex,n;case"[object Symbol]":return i=e,Qe?Object(Qe.call(i)):{}}}var Je=ce&&ce.isMap,Ze=Je?pe(Je):function(e){return i(e)&&"[object Map]"==ue(e)};var et=ce&&ce.isSet,tt=et?pe(et):function(e){return i(e)&&"[object Set]"==ue(e)},st={};function it(t,s,i,a,n,r){var o,l=1&s,d=2&s,h=4&s;if(i&&(o=n?i(t,a,n,r):i(t)),void 0!==o)return o;if(!e(t))return t;var u=_e(t);if(u){if(o=function(e){var t=e.length,s=new e.constructor(t);return t&&"string"==typeof e[0]&&He.call(e,"index")&&(s.index=e.index,s.input=e.input),s}(t),!l)return function(e,t){var s=-1,i=e.length;for(t||(t=Array(i));++s<i;)t[s]=e[s];return t}(t,o)}else{var c=ue(t),p="[object Function]"==c||"[object GeneratorFunction]"==c;if(me(t))return function(e,t){if(t)return e.slice();var s=e.length,i=Ye?Ye(s):new e.constructor(s);return e.copy(i),i}(t,l);if("[object Object]"==c||"[object Arguments]"==c||p&&!n){if(o=d||p?{}:function(e){return"function"!=typeof e.constructor||se(e)?{}:Ae(Ne(e))}(t),!l)return d?function(e,t){return Ve(e,Le(e),t)}(t,function(e,t){return e&&Ve(t,Pe(t),e)}(o,t)):function(e,t){return Ve(e,re(e),t)}(t,function(e,t){return e&&Ve(t,ne(t),e)}(o,t))}else{if(!st[c])return n?t:{};o=Ge(t,c,l)}}r||(r=new ge);var _=r.get(t);if(_)return _;r.set(t,o),tt(t)?t.forEach((function(e){o.add(it(e,s,i,e,t,r))})):Ze(t)&&t.forEach((function(e,a){o.set(a,it(e,s,i,a,t,r))}));var m=u?void 0:(h?d?We:ve:d?Pe:ne)(t);return function(e,t){for(var s=-1,i=null==e?0:e.length;++s<i&&!1!==t(e[s],s,e););}(m||t,(function(e,a){m&&(e=t[a=e]),Oe(o,a,it(e,s,i,a,t,r))})),o}st["[object Arguments]"]=st["[object Array]"]=st["[object ArrayBuffer]"]=st["[object DataView]"]=st["[object Boolean]"]=st["[object Date]"]=st["[object Float32Array]"]=st["[object Float64Array]"]=st["[object Int8Array]"]=st["[object Int16Array]"]=st["[object Int32Array]"]=st["[object Map]"]=st["[object Number]"]=st["[object Object]"]=st["[object RegExp]"]=st["[object Set]"]=st["[object String]"]=st["[object Symbol]"]=st["[object Uint8Array]"]=st["[object Uint8ClampedArray]"]=st["[object Uint16Array]"]=st["[object Uint32Array]"]=!0,st["[object Error]"]=st["[object Function]"]=st["[object WeakMap]"]=!1;var at=Math.floor,nt=Math.random;var rt=parseFloat,ot=Math.min,lt=Math.random;function dt(t,s,i){if(i&&"boolean"!=typeof i&&function(t,s,i){if(!e(i))return!1;var a=typeof s;return!!("number"==a?ee(i)&&te(s,i.length):"string"==a&&s in i)&&Z(i[s],t)}(t,s,i)&&(s=i=void 0),void 0===i&&("boolean"==typeof s?(i=s,s=void 0):"boolean"==typeof t&&(i=t,t=void 0)),void 0===t&&void 0===s?(t=0,s=1):(t=Ce(t),void 0===s?(s=t,t=0):s=Ce(s)),t>s){var a=t;t=s,s=a}if(i||t%1||s%1){var n=lt();return ot(t+n*(s-t+rt("1e-"+((n+"").length-1))),s)}return function(e,t){return e+at(nt()*(t-e+1))}(t,s)}var ht=Math.min;function ut(e,t){if(e=function(e){var t=Ce(e),s=t%1;return t==t?s?t-s:t:0}(e),e<1||e>9007199254740991)return[];var s,i=4294967295,a=ht(e,4294967295);e-=4294967295;for(var n=fe(a,t="function"==typeof(s=t)?s:Ee);++i<e;)t(i);return n}class ct extends CustomEvent{constructor(e){super("change",{detail:e})}}let pt,_t,mt=e=>e;class gt extends a{constructor(){super(...arguments),this.value=[],this.disabled=!1,this.getText=e=>e}static get properties(){return n(n({},super.properties),{},{value:{type:Array},disabled:{type:Boolean},getText:{type:Object}})}static get styles(){return x.styles}render(){return r(pt||(pt=mt` <div class="font-lumo text-m w-full"> <ul> ${0} </ul> <div class="p-m"> <slot></slot> </div> </div> `),this.value.map(((e,t)=>r(_t||(_t=mt` <li class="${0}"> <slot name="${0}">${0}</slot> <button ?disabled="${0}" class="w-l h-l rounded text-tertiary transition duration-150 hover-text-secondary disabled-text-tertiary disabled-opacity-50 disabled-cursor-default focus-outline-none focus-shadow-outline" @click="${0}"> <iron-icon icon="lumo:cross"></iron-icon> </button> </li> `),"ml-m h-l text-body flex justify-between items-center"+(t>0?" border-t border-contrast-10":""),t,this.getText(e),this.disabled,(()=>this.__remove(t))))))}__remove(e){this.value=this.value.filter(((t,s)=>s!==e)),this.dispatchEvent(new ct(this.value))}}let vt,ft,yt=e=>e;class bt extends a{static get styles(){return[x.styles,o(vt||(vt=yt`:host{position:absolute;top:0;right:0;bottom:0;left:0}.top-center{top:calc(50% - (var(--lumo-size-xl)/ 2))}@keyframes dash0{from{transform:translate(0,0)}to{transform:translate(5.681301px,3.368302px)}}@keyframes dash1{from{transform:translate(0,0)}to{transform:translate(5.677051px,3.457428px)}}@keyframes dash2{from{transform:translate(0,0)}to{transform:translate(5.686002px,3.127455px)}}@keyframes dash3{from{transform:translate(-5.6842px,-3.404556px)}to{transform:translate(0,0)}}`))]}render(){return r(ft||(ft=yt` <div class="h-full bg-base text-primary"> <svg xmlns="http://www.w3.org/2000/svg" class="fill-current w-xl h-xl mx-auto sticky top-center" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" viewBox="0 0 64 64"> <path id="ew5fy7afo2w2" fill-rule="evenodd" stroke="none" stroke-width="1" d="M41.93 49.46c0 .18-.2.3-.36.2l-1.78-1.07-22.73-13.76a1.5 1.5 0 01-.7-1.3V11.08c0-.18.2-.3.36-.2l1.75 1.04c.44.25.74.75.74 1.32v19.27c0 .08.05.16.12.2L41.22 46c.47.28.73.8.72 1.32v2.15z" clip-rule="evenodd"/> <path id="ew5fy7afo2w3" fill-rule="evenodd" stroke="none" stroke-width="1" d="M47.64 52.9c0 .2-.2.3-.36.21l-1.8-1.08c-.42-.26-.7-.74-.7-1.3v-19.3a.24.24 0 00-.12-.2L25.27 19.47a.24.24 0 00-.37.21v12.55c0 .19-.21.3-.37.2l-1.76-1.06a1.46 1.46 0 01-.71-1.28V16.7c0-.54.27-1.03.71-1.3.45-.27 1-.26 1.44 0l22.72 13.77c.44.26.7.76.7 1.3v20.27l.01 2.17z" clip-rule="evenodd"/> <g style="animation:dash0 .3s linear infinite normal forwards"> <path id="ew5fy7afo2w4" fill-rule="evenodd" stroke="none" stroke-width="1" d="M30.59 35.68c0 .2-.21.3-.37.21l-1.8-1.1c-.41-.27-.68-.74-.68-1.28V27v-2.15c0-.2.2-.3.37-.21l1.78 1.06c.42.26.7.74.7 1.3v8.68z" clip-rule="evenodd"/> </g> <g style="animation:dash1 .3s linear infinite normal forwards"> <path id="ew5fy7afo2w5" fill-rule="evenodd" stroke="none" stroke-width="1" d="M36.28 39.13c0 .2-.2.3-.37.21l-1.79-1.1c-.41-.25-.69-.73-.69-1.28v-6.51-2.16c0-.2.2-.31.37-.21l1.76 1.06c.44.26.73.75.73 1.3v8.69z" clip-rule="evenodd"/> </g> <g style="animation:dash2 .3s linear infinite normal forwards"> <path id="ew5fy7afo2w6" fill-rule="evenodd" stroke="none" stroke-width="1" d="M41.96 42.57c0 .2-.2.3-.37.21L39.8 41.7a1.52 1.52 0 01-.71-1.3v-6.51-2.17c0-.2.2-.31.37-.21l1.74 1.06c.45.25.75.75.75 1.32v8.68z" clip-rule="evenodd"/> </g> <g transform="translate(-5.68 -3.4)" style="animation:dash3 .3s linear infinite normal forwards"> <path id="ew5fy7afo2w7" fill-rule="evenodd" stroke="none" stroke-width="1" d="M30.59 35.68c0 .2-.21.3-.37.21l-1.8-1.1c-.41-.27-.68-.74-.68-1.28V27v-2.15c0-.2.2-.3.37-.21l1.78 1.06c.42.26.7.74.7 1.3v8.68z" clip-rule="evenodd"/> </g> </svg> </div> `))}}let xt,wt,$t=e=>e;class kt extends a{static get styles(){return[x.styles,o(xt||(xt=$t`::slotted(:not([slot])){margin-top:var(--lumo-space-xl)}`))]}render(){return r(wt||(wt=$t` <article class="relative antialiased font-lumo"> <header class="space-y-xs leading-s"> <h1 class="font-bold text-header text-xl border-b border-contrast-10 pb-s mb-s"> <slot name="title"></slot> </h1> <p class="text-l text-secondary"> <slot name="subtitle"></slot> </p> </header> <slot></slot> </article> `))}}let Dt,St,Ct=e=>e;class Et extends kt{static get styles(){return[super.styles,o(Dt||(Dt=Ct`::slotted(:not([slot])){margin-top:var(--lumo-space-m)}`))]}render(){return r(St||(St=Ct` <section class="leading-s antialiased font-lumo"> <header> <h2 class="text-header font-semibold text-l"> <slot name="title"></slot> </h2> <p class="text-secondary text-m"> <slot name="subtitle"></slot> </p> </header> <slot></slot> </section> `))}}let It,At=e=>e;class Mt extends CustomEvent{constructor(e){super("change",{detail:e})}}class Tt extends a{constructor(){super(...arguments),this.disabled=!1,this.checked=!1}static get properties(){return n(n({},super.properties),{},{disabled:{attribute:!1},checked:{attribute:!1}})}static get styles(){return x.styles}render(){return r(It||(It=At` <label class="${0}"> <span class="text-body text-m mr-m"> <slot></slot> </span> <span style="border-radius:var(--lumo-size-xl);width:calc((var(--lumo-space-l) * 2) + (var(--lumo-space-xs) * 2))" class="${0}"> <span style="width:var(--lumo-space-l);height:var(--lumo-space-l)" class="${0}"></span> <input type="checkbox" class="opacity-0 absolute inset-0" .checked="${0}" .disabled="${0}" @change="${0}"> </span> </label> `),Y({"transition duration-200 flex justify-between items-center group":!0,"cursor-pointer":!this.disabled}),Y({"transition duration-150 relative flex flex-shrink-0 items-center":!0,"bg-success focus-within-shadow-outline-success":!this.disabled&&this.checked,"bg-contrast-10 focus-within-shadow-outline":this.disabled||!this.checked,"bg-contrast-20":!this.disabled&&!this.checked}),Y({"bg-tint transition duration-200 transform block rounded-full m-xs":!0,"translate-x-l":this.checked,"translate-x-0":!this.checked,"shadow-xs group-hover-shadow-s group-hover-scale-110":!this.disabled}),this.checked,this.disabled,(()=>{this.checked=!this.checked,this.dispatchEvent(new Mt(this.checked))}))}}class jt extends Error{constructor(){super("Unhandled request detected. Please add a request handler to connect this component to a backend.")}}class Ot extends CustomEvent{static emit(e){return new Promise(((t,s)=>{const i=new Ot(n({resolve:t,reject:s},e));e.source.dispatchEvent(i)&&s(new jt)}))}constructor({source:e,resolve:t,reject:s,init:i}){var a;super("request",{cancelable:!0,composed:!0,bubbles:!0,detail:{source:e,handle:async function(e){a.stopImmediatePropagation(),a.preventDefault();try{t(await e(...i))}catch(e){s(e)}}}}),a=this}}const Vt=L`<dom-module id="lumo-custom-field" theme-for="vaadin-custom-field">
2
2
  <template>
3
3
  <style include="lumo-required-field">
4
4
  :host {