@foxy.io/elements 1.15.0-beta.3 → 1.15.0-beta.6

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 (181) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +2 -2
  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-coupon-card.js +1 -1
  11. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  12. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  13. package/dist/cdn/foxy-coupon-form.js +1 -1
  14. package/dist/cdn/foxy-custom-field-card.js +1 -1
  15. package/dist/cdn/foxy-custom-field-form.js +1 -1
  16. package/dist/cdn/foxy-customer-api.js +1 -1
  17. package/dist/cdn/foxy-customer-card.js +1 -1
  18. package/dist/cdn/foxy-customer-form.js +1 -1
  19. package/dist/cdn/foxy-customer-portal-settings.js +1 -169
  20. package/dist/cdn/foxy-customer-portal.js +2 -2
  21. package/dist/cdn/foxy-customer.js +1 -1
  22. package/dist/cdn/foxy-customers-table.js +1 -1
  23. package/dist/cdn/foxy-discount-card.js +1 -1
  24. package/dist/cdn/foxy-donation.js +1 -1
  25. package/dist/cdn/foxy-email-template-form.js +1 -1
  26. package/dist/cdn/foxy-error-entry-card.js +1 -1
  27. package/dist/cdn/foxy-form-dialog.js +1 -1
  28. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  29. package/dist/cdn/foxy-gift-card-card.js +1 -0
  30. package/dist/cdn/foxy-gift-card-code-form.js +1 -0
  31. package/dist/cdn/foxy-gift-card-codes-form.js +1 -0
  32. package/dist/cdn/foxy-gift-card-form.js +1 -0
  33. package/dist/cdn/foxy-i18n.js +1 -1
  34. package/dist/cdn/foxy-items-form.js +1 -1
  35. package/dist/cdn/foxy-nucleon-element.js +1 -1
  36. package/dist/cdn/foxy-pagination.js +1 -1
  37. package/dist/cdn/foxy-payment-card.js +1 -1
  38. package/dist/cdn/foxy-payment-method-card.js +1 -1
  39. package/dist/cdn/foxy-query-builder.js +1 -1
  40. package/dist/cdn/foxy-sign-in-form.js +1 -1
  41. package/dist/cdn/foxy-spinner.js +2 -2
  42. package/dist/cdn/foxy-subscription-card.js +1 -1
  43. package/dist/cdn/foxy-subscription-form.js +1 -1
  44. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  45. package/dist/cdn/foxy-table.js +1 -1
  46. package/dist/cdn/foxy-tax-card.js +1 -1
  47. package/dist/cdn/foxy-tax-form.js +1 -1
  48. package/dist/cdn/foxy-template-config-form.js +1 -1
  49. package/dist/cdn/foxy-template-form.js +1 -1
  50. package/dist/cdn/foxy-transaction-card.js +1 -1
  51. package/dist/cdn/foxy-transactions-table.js +1 -1
  52. package/dist/cdn/foxy-user-form.js +1 -1
  53. package/dist/cdn/foxy-users-table.js +1 -1
  54. package/dist/cdn/{shared-9af7b5f0.js → shared-02945b27.js} +1 -1
  55. package/dist/cdn/{shared-a8d96c23.js → shared-06e64d75.js} +1 -1
  56. package/dist/cdn/{shared-b03b6d72.js → shared-07049bfe.js} +1 -1
  57. package/dist/cdn/{shared-ccea5a33.js → shared-08c63028.js} +1 -1
  58. package/dist/cdn/shared-09069d7c.js +1 -0
  59. package/dist/cdn/shared-11708514.js +1 -0
  60. package/dist/cdn/{shared-a11160e7.js → shared-20b9ce70.js} +1 -1
  61. package/dist/cdn/{shared-d3831f99.js → shared-21419f10.js} +1 -1
  62. package/dist/cdn/shared-25e67340.js +302 -0
  63. package/dist/cdn/{shared-423a4840.js → shared-39e3ae67.js} +1 -1
  64. package/dist/cdn/shared-3be96355.js +1 -0
  65. package/dist/cdn/{shared-51b5e223.js → shared-40b5267a.js} +1 -1
  66. package/dist/cdn/{shared-fb403e1f.js → shared-448781f9.js} +1 -1
  67. package/dist/cdn/{shared-8f7a66c4.js → shared-4dc6d228.js} +1 -1
  68. package/dist/cdn/shared-5272c758.js +1 -0
  69. package/dist/cdn/{shared-c1dadefe.js → shared-5535f38f.js} +1 -1
  70. package/dist/cdn/shared-66633ff7.js +1 -0
  71. package/dist/cdn/{shared-30131f76.js → shared-756034e4.js} +1 -1
  72. package/dist/cdn/shared-7f0a9790.js +1 -0
  73. package/dist/cdn/{shared-6b7602c7.js → shared-805d18a2.js} +1 -1
  74. package/dist/cdn/shared-940a4826.js +1 -0
  75. package/dist/cdn/{shared-b2330475.js → shared-a23cf7c8.js} +1 -1
  76. package/dist/cdn/{shared-0bda8ecb.js → shared-a7095b6a.js} +1 -1
  77. package/dist/cdn/{shared-a4e6ecb0.js → shared-b9f18aaa.js} +1 -1
  78. package/dist/cdn/{shared-51e28c83.js → shared-df730f90.js} +1 -1
  79. package/dist/cdn/{shared-4038cb18.js → shared-e209cb55.js} +1 -1
  80. package/dist/cdn/{shared-cd3c902e.js → shared-e68b9c83.js} +1 -1
  81. package/dist/cdn/{shared-ff149b55.js → shared-ffb27563.js} +1 -1
  82. package/dist/cdn/translations/shared/en.json +180 -0
  83. package/dist/elements/private/EditableList/EditableList.js +1 -0
  84. package/dist/elements/private/EditableList/EditableList.js.map +1 -1
  85. package/dist/elements/private/FrequencyInput/FrequencyInput.d.ts +2 -1
  86. package/dist/elements/private/FrequencyInput/FrequencyInput.js +3 -1
  87. package/dist/elements/private/FrequencyInput/FrequencyInput.js.map +1 -1
  88. package/dist/elements/public/CollectionPage/CollectionPage.js +3 -1
  89. package/dist/elements/public/CollectionPage/CollectionPage.js.map +1 -1
  90. package/dist/elements/public/CollectionPage/types.d.ts +2 -0
  91. package/dist/elements/public/CollectionPage/types.js.map +1 -1
  92. package/dist/elements/public/CouponCard/CouponCard.js +5 -5
  93. package/dist/elements/public/CouponCard/CouponCard.js.map +1 -1
  94. package/dist/elements/public/CouponCodesForm/CouponCodesForm.d.ts +2 -0
  95. package/dist/elements/public/CouponCodesForm/CouponCodesForm.js +7 -1
  96. package/dist/elements/public/CouponCodesForm/CouponCodesForm.js.map +1 -1
  97. package/dist/elements/public/CouponCodesForm/types.d.ts +3 -2
  98. package/dist/elements/public/CouponCodesForm/types.js.map +1 -1
  99. package/dist/elements/public/CouponForm/CouponForm.js +3 -3
  100. package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
  101. package/dist/elements/public/GenerateCodesForm/GenerateCodesForm.d.ts +4 -0
  102. package/dist/elements/public/GenerateCodesForm/GenerateCodesForm.js +32 -0
  103. package/dist/elements/public/GenerateCodesForm/GenerateCodesForm.js.map +1 -1
  104. package/dist/elements/public/GiftCardCard/GiftCardCard.d.ts +26 -0
  105. package/dist/elements/public/GiftCardCard/GiftCardCard.js +95 -0
  106. package/dist/elements/public/GiftCardCard/GiftCardCard.js.map +1 -0
  107. package/dist/elements/public/GiftCardCard/index.d.ts +5 -0
  108. package/dist/elements/public/GiftCardCard/index.js +7 -0
  109. package/dist/elements/public/GiftCardCard/index.js.map +1 -0
  110. package/dist/elements/public/GiftCardCard/types.d.ts +11 -0
  111. package/dist/elements/public/GiftCardCard/types.js +2 -0
  112. package/dist/elements/public/GiftCardCard/types.js.map +1 -0
  113. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.d.ts +55 -0
  114. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.js +292 -0
  115. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.js.map +1 -0
  116. package/dist/elements/public/GiftCardCodeForm/index.d.ts +10 -0
  117. package/dist/elements/public/GiftCardCodeForm/index.js +12 -0
  118. package/dist/elements/public/GiftCardCodeForm/index.js.map +1 -0
  119. package/dist/elements/public/GiftCardCodeForm/types.d.ts +19 -0
  120. package/dist/elements/public/GiftCardCodeForm/types.js +2 -0
  121. package/dist/elements/public/GiftCardCodeForm/types.js.map +1 -0
  122. package/dist/elements/public/GiftCardCodesForm/GiftCardCodesForm.d.ts +37 -0
  123. package/dist/elements/public/GiftCardCodesForm/GiftCardCodesForm.js +259 -0
  124. package/dist/elements/public/GiftCardCodesForm/GiftCardCodesForm.js.map +1 -0
  125. package/dist/elements/public/GiftCardCodesForm/index.d.ts +9 -0
  126. package/dist/elements/public/GiftCardCodesForm/index.js +13 -0
  127. package/dist/elements/public/GiftCardCodesForm/index.js.map +1 -0
  128. package/dist/elements/public/GiftCardCodesForm/internal/InternalGiftCardCodesFormListItem.d.ts +19 -0
  129. package/dist/elements/public/GiftCardCodesForm/internal/InternalGiftCardCodesFormListItem.js +48 -0
  130. package/dist/elements/public/GiftCardCodesForm/internal/InternalGiftCardCodesFormListItem.js.map +1 -0
  131. package/dist/elements/public/GiftCardCodesForm/types.d.ts +17 -0
  132. package/dist/elements/public/GiftCardCodesForm/types.js +2 -0
  133. package/dist/elements/public/GiftCardCodesForm/types.js.map +1 -0
  134. package/dist/elements/public/GiftCardForm/GiftCardForm.d.ts +67 -0
  135. package/dist/elements/public/GiftCardForm/GiftCardForm.js +666 -0
  136. package/dist/elements/public/GiftCardForm/GiftCardForm.js.map +1 -0
  137. package/dist/elements/public/GiftCardForm/currencies.d.ts +1 -0
  138. package/dist/elements/public/GiftCardForm/currencies.js +173 -0
  139. package/dist/elements/public/GiftCardForm/currencies.js.map +1 -0
  140. package/dist/elements/public/GiftCardForm/index.d.ts +18 -0
  141. package/dist/elements/public/GiftCardForm/index.js +20 -0
  142. package/dist/elements/public/GiftCardForm/index.js.map +1 -0
  143. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPage.d.ts +20 -0
  144. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPage.js +99 -0
  145. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPage.js.map +1 -0
  146. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItem.d.ts +20 -0
  147. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItem.js +52 -0
  148. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItem.js.map +1 -0
  149. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItemContent.d.ts +20 -0
  150. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItemContent.js +53 -0
  151. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItemContent.js.map +1 -0
  152. package/dist/elements/public/GiftCardForm/types.d.ts +28 -0
  153. package/dist/elements/public/GiftCardForm/types.js +2 -0
  154. package/dist/elements/public/GiftCardForm/types.js.map +1 -0
  155. package/dist/elements/public/I18n/format/index.js +2 -0
  156. package/dist/elements/public/I18n/format/index.js.map +1 -1
  157. package/dist/elements/public/I18n/format/relative.d.ts +6 -0
  158. package/dist/elements/public/I18n/format/relative.js +15 -0
  159. package/dist/elements/public/I18n/format/relative.js.map +1 -0
  160. package/dist/elements/public/NucleonElement/NucleonElement.js +4 -4
  161. package/dist/elements/public/NucleonElement/NucleonElement.js.map +1 -1
  162. package/dist/elements/public/index.d.ts +4 -0
  163. package/dist/elements/public/index.defined.d.ts +4 -0
  164. package/dist/elements/public/index.defined.js +4 -0
  165. package/dist/elements/public/index.defined.js.map +1 -1
  166. package/dist/elements/public/index.js +4 -0
  167. package/dist/elements/public/index.js.map +1 -1
  168. package/dist/mixins/themeable.js +12 -0
  169. package/dist/mixins/themeable.js.map +1 -1
  170. package/dist/utils/parse-duration.d.ts +1 -1
  171. package/dist/utils/parse-duration.js +7 -3
  172. package/dist/utils/parse-duration.js.map +1 -1
  173. package/package.json +2 -2
  174. package/dist/cdn/shared-0fcdd1c4.js +0 -1
  175. package/dist/cdn/shared-4fa5f144.js +0 -1
  176. package/dist/cdn/shared-710ed658.js +0 -134
  177. package/dist/cdn/shared-800a5471.js +0 -1
  178. package/dist/cdn/shared-87ca7818.js +0 -1
  179. package/dist/cdn/shared-c6a4b2d6.js +0 -1
  180. package/dist/cdn/shared-d9a260f0.js +0 -1
  181. package/dist/cdn/shared-f875a4f8.js +0 -1
@@ -1 +1 @@
1
- import"./shared-bb824ab4.js";import{C as e,a as t}from"./shared-710ed658.js";import"./shared-0ced76a0.js";import"./shared-f875a4f8.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{_ as a,j as i,h as s}from"./shared-63eaded9.js";import"./shared-46ee137f.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{S as r,T as n,a as o}from"./shared-cd3c902e.js";import{c as d}from"./shared-4e709717.js";import"./shared-0fcdd1c4.js";import"./shared-a8d96c23.js";import"./shared-ec861f31.js";import"./shared-36629ded.js";import{G as l}from"./shared-9af7b5f0.js";import{P as c}from"./shared-8f7a66c4.js";import{C as h}from"./shared-51e28c83.js";import{N as m}from"./shared-423a4840.js";import{l as p}from"./shared-07134f93.js";import"./shared-ff79f3f9.js";import"./shared-c1dadefe.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-30131f76.js";import"./shared-60126eee.js";import"./shared-4fa5f144.js";import"./shared-6d45a07b.js";import"./shared-7684cb05.js";let f,u,$,y,v,b,x,_=e=>e;const g=r(n(h(o(m,"template-form"))));class j extends g{constructor(){super(...arguments),this.templates={},this.__cacheState="idle",this.__contentChoice="default"}static get properties(){return a(a({},super.properties),{},{__cacheState:{attribute:!1},__contentChoice:{attribute:!1}})}static get styles(){return[...super.styles,i(f||(f=_`#cached-content::part(input-field){max-height:15em}`))]}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-text-area":customElements.get("vaadin-text-area"),"vaadin-button":customElements.get("vaadin-button"),"x-property-table":c,"x-choice":e,"x-group":l}}render(){var e,t;const{hiddenSelector:a,href:i,lang:r,ns:n}=this,o=i?"delete":"create",l=this.in("busy"),c=this.in("fail");return s(u||(u=_` <div class="space-y-m"> ${0} ${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> `),a.matches("description",!0)?"":this.__renderDescription(),a.matches("content",!0)?"":this.__renderContent(),a.matches("timestamps",!0)||!i?"":this.__renderTimestamps(),a.matches(o)?"":this.__renderAction(o),d({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!l&&!c}),c?"error":l?"busy":"empty",r,n,null!==(t=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==t?t:"")}__renderDescription(){var e,t;const a="description";return s($||($=_` <div> ${0} <vaadin-text-field data-testid="${0}" class="w-full mb-s" label="${0}" ?disabled="${0}" ?readonly="${0}" .value="${0}" @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${a}:before`),a,this.t(a),!this.in("idle")||this.disabledSelector.matches(a),this.readonlySelector.matches(a),null!==(t=null===(e=this.form)||void 0===e?void 0:e.description)&&void 0!==t?t:"",(e=>"Enter"===e.key&&this.submit()),(e=>{this.edit({description:e.currentTarget.value})}),this.renderTemplateOrSlot(`${a}:after`))}__renderContent(){var e;const a="content",i=!this.in("idle")||this.disabledSelector.matches(a),r=this.readonlySelector.matches(a),n=this.form.content_url?"url":this.form.content?"clipboard":this.__contentChoice;return s(y||(y=_` <div data-testid="content"> ${0} <x-group frame> <foxy-i18n class="${0}" lang="${0}" slot="header" key="template" ns="${0}"> </foxy-i18n> <x-choice data-testid="content-type" .value="${0}" .items="${0}" ?readonly="${0}" ?disabled="${0}" @change="${0}"> ${0} <div slot="url" ?hidden="${0}"> <div class="flex items-center mt-0 mb-m"> <vaadin-text-field data-testid="content-url" class="mr-s flex-grow" ?readonly="${0}" ?disabled="${0}" .value="${0}" @keydown="${0}" @input="${0}"> </vaadin-text-field> <vaadin-button data-testid="cache" class="relative" ?hidden="${0}" ?disabled="${0}" @click="${0}"> <foxy-i18n class="${0}" lang="${0}" key="cache" ns="${0}"> </foxy-i18n> <div class="${0}"> <foxy-spinner layout="no-label" class="m-auto" state="${0}" lang="${0}" ns="${0}"> </foxy-spinner> </div> </vaadin-button> </div> </div> <div slot="clipboard" ?hidden="${0}"> <vaadin-text-area id="cached-content" data-testid="content-clipboard" class="w-full mb-m" ?readonly="${0}" ?disabled="${0}" .value="${0}" @input="${0}"> </vaadin-text-area> </div> </x-choice> </x-group> ${0} </div> `),this.renderTemplateOrSlot("content:before"),d({"transition-colors":!0,"text-disabled":i}),this.lang,this.ns,n,["default","url","clipboard"],r,i,(e=>{e instanceof t&&(this.edit({content:"",content_url:""}),this.__contentChoice=e.detail)}),["default","url","clipboard"].map((e=>s(v||(v=_` <div slot="${0}-label" class="py-s leading-s"> <foxy-i18n class="block" lang="${0}" key="template_${0}" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-s opacity-70" lang="${0}" key="template_${0}_explainer" ns="${0}"> </foxy-i18n> </div> `),e,this.lang,e,this.ns,this.lang,e,this.ns))),"url"!==n,r,i,this.form.content_url,(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({content:"",content_url:t})}),r||this.form.content_url!==(null===(e=this.data)||void 0===e?void 0:e.content_url),i||"busy"===this.__cacheState,this.__cache,d({"relative transition-opacity":!0,"opacity-0":"idle"!==this.__cacheState}),this.lang,this.ns,d({"absolute inset-0 flex transition-opacity":!0,"opacity-0":"idle"===this.__cacheState}),"fail"===this.__cacheState?"error":"busy",this.lang,this.ns,"clipboard"!==n,r,i,p(this.form.content),(e=>{const t=e.currentTarget.value;this.edit({content:t,content_url:""})}),this.renderTemplateOrSlot("content:after"))}__renderTimestamps(){const e="timestamps";return s(b||(b=_` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot(`${e}: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(`${e}:after`))}__renderAction(e){const{disabledSelector:t,href:a,lang:i,ns:r}=this,n=this.in({idle:{template:{dirty:"valid"}}}),o=this.in({idle:{snapshot:{dirty:"valid"}}}),d=!this.in("idle")||t.matches(e,!0),l=n||o;return s(x||(x=_` <div> ${0} <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> <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(`${e}:before`),i,r,(e=>{e.detail.cancelled||this.delete()}),this.in("idle")?"primary "+(a?"error":"success"):"",e,this.in({idle:"template"})&&!l||d,(t=>{if("delete"===e){this.renderRoot.querySelector("#confirm").show(t.currentTarget)}else this.submit()}),r,e,i,this.renderTemplateOrSlot(`${e}:after`))}async __cache(){var e,t;this.__cacheState="busy";try{const a=null!==(t=null===(e=this.data)||void 0===e?void 0:e._links["fx:cache"].href)&&void 0!==t?t:"",i=await new j.API(this).fetch(a,{method:"POST"});this.__cacheState=i.ok?"idle":"fail"}catch(e){this.__cacheState="fail"}}}customElements.define("foxy-template-form",j);export{j as TemplateForm};
1
+ import"./shared-bb824ab4.js";import{C as e,b as t}from"./shared-25e67340.js";import"./shared-0ced76a0.js";import"./shared-5272c758.js";import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./shared-11708514.js";import{_ as i,j as s,h as a}from"./shared-63eaded9.js";import"./shared-46ee137f.js";import"./shared-df573cea.js";import"./shared-f0a83bd6.js";import{S as r,T as n,a as o}from"./shared-e68b9c83.js";import{c as d}from"./shared-4e709717.js";import"./shared-66633ff7.js";import"./shared-06e64d75.js";import"./shared-36629ded.js";import"./shared-ec861f31.js";import{G as l}from"./shared-02945b27.js";import{P as c}from"./shared-4dc6d228.js";import{C as h}from"./shared-df730f90.js";import{N as m}from"./shared-39e3ae67.js";import{l as p}from"./shared-07134f93.js";import"./shared-ff79f3f9.js";import"./shared-5535f38f.js";import"./shared-b0f0e8b5.js";import"./shared-756034e4.js";import"./shared-60126eee.js";import"./shared-7f0a9790.js";import"./shared-6d45a07b.js";import"./shared-7684cb05.js";let f,u,$,v,y,b,_,x=e=>e;const g=r(n(h(o(m,"template-form"))));class j extends g{constructor(){super(...arguments),this.templates={},this.__cacheState="idle",this.__contentChoice="default"}static get properties(){return i(i({},super.properties),{},{__cacheState:{attribute:!1},__contentChoice:{attribute:!1}})}static get styles(){return[...super.styles,s(f||(f=x`#cached-content::part(input-field){max-height:15em}`))]}static get scopedElements(){return{"foxy-internal-confirm-dialog":customElements.get("foxy-internal-confirm-dialog"),"foxy-internal-sandbox":customElements.get("foxy-internal-sandbox"),"foxy-spinner":customElements.get("foxy-spinner"),"foxy-i18n":customElements.get("foxy-i18n"),"vaadin-text-field":customElements.get("vaadin-text-field"),"vaadin-text-area":customElements.get("vaadin-text-area"),"vaadin-button":customElements.get("vaadin-button"),"x-property-table":c,"x-choice":e,"x-group":l}}render(){var e,t;const{hiddenSelector:i,href:s,lang:r,ns:n}=this,o=s?"delete":"create",l=this.in("busy"),c=this.in("fail");return a(u||(u=x` <div class="space-y-m"> ${0} ${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> `),i.matches("description",!0)?"":this.__renderDescription(),i.matches("content",!0)?"":this.__renderContent(),i.matches("timestamps",!0)||!s?"":this.__renderTimestamps(),i.matches(o)?"":this.__renderAction(o),d({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!l&&!c}),c?"error":l?"busy":"empty",r,n,null!==(t=null===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==t?t:"")}__renderDescription(){var e,t;const i="description";return a($||($=x` <div> ${0} <vaadin-text-field data-testid="${0}" class="w-full mb-s" label="${0}" ?disabled="${0}" ?readonly="${0}" .value="${0}" @keydown="${0}" @input="${0}"> </vaadin-text-field> ${0} </div> `),this.renderTemplateOrSlot(`${i}:before`),i,this.t(i),!this.in("idle")||this.disabledSelector.matches(i),this.readonlySelector.matches(i),null!==(t=null===(e=this.form)||void 0===e?void 0:e.description)&&void 0!==t?t:"",(e=>"Enter"===e.key&&this.submit()),(e=>{this.edit({description:e.currentTarget.value})}),this.renderTemplateOrSlot(`${i}:after`))}__renderContent(){var e;const i="content",s=!this.in("idle")||this.disabledSelector.matches(i),r=this.readonlySelector.matches(i),n=this.form.content_url?"url":this.form.content?"clipboard":this.__contentChoice;return a(v||(v=x` <div data-testid="content"> ${0} <x-group frame> <foxy-i18n class="${0}" lang="${0}" slot="header" key="template" ns="${0}"> </foxy-i18n> <x-choice data-testid="content-type" .value="${0}" .items="${0}" ?readonly="${0}" ?disabled="${0}" @change="${0}"> ${0} <div slot="url" ?hidden="${0}"> <div class="flex items-center mt-0 mb-m"> <vaadin-text-field data-testid="content-url" class="mr-s flex-grow" ?readonly="${0}" ?disabled="${0}" .value="${0}" @keydown="${0}" @input="${0}"> </vaadin-text-field> <vaadin-button data-testid="cache" class="relative" ?hidden="${0}" ?disabled="${0}" @click="${0}"> <foxy-i18n class="${0}" lang="${0}" key="cache" ns="${0}"> </foxy-i18n> <div class="${0}"> <foxy-spinner layout="no-label" class="m-auto" state="${0}" lang="${0}" ns="${0}"> </foxy-spinner> </div> </vaadin-button> </div> </div> <div slot="clipboard" ?hidden="${0}"> <vaadin-text-area id="cached-content" data-testid="content-clipboard" class="w-full mb-m" ?readonly="${0}" ?disabled="${0}" .value="${0}" @input="${0}"> </vaadin-text-area> </div> </x-choice> </x-group> ${0} </div> `),this.renderTemplateOrSlot("content:before"),d({"transition-colors":!0,"text-disabled":s}),this.lang,this.ns,n,["default","url","clipboard"],r,s,(e=>{e instanceof t&&(this.edit({content:"",content_url:""}),this.__contentChoice=e.detail)}),["default","url","clipboard"].map((e=>a(y||(y=x` <div slot="${0}-label" class="py-s leading-s"> <foxy-i18n class="block" lang="${0}" key="template_${0}" ns="${0}"> </foxy-i18n> <foxy-i18n class="block text-s opacity-70" lang="${0}" key="template_${0}_explainer" ns="${0}"> </foxy-i18n> </div> `),e,this.lang,e,this.ns,this.lang,e,this.ns))),"url"!==n,r,s,this.form.content_url,(e=>"Enter"===e.key&&this.submit()),(e=>{const t=e.currentTarget.value;this.edit({content:"",content_url:t})}),r||this.form.content_url!==(null===(e=this.data)||void 0===e?void 0:e.content_url),s||"busy"===this.__cacheState,this.__cache,d({"relative transition-opacity":!0,"opacity-0":"idle"!==this.__cacheState}),this.lang,this.ns,d({"absolute inset-0 flex transition-opacity":!0,"opacity-0":"idle"===this.__cacheState}),"fail"===this.__cacheState?"error":"busy",this.lang,this.ns,"clipboard"!==n,r,s,p(this.form.content),(e=>{const t=e.currentTarget.value;this.edit({content:t,content_url:""})}),this.renderTemplateOrSlot("content:after"))}__renderTimestamps(){const e="timestamps";return a(b||(b=x` <div> ${0} <x-property-table data-testid="timestamps" .items="${0}"> </x-property-table> ${0} </div> `),this.renderTemplateOrSlot(`${e}: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(`${e}:after`))}__renderAction(e){const{disabledSelector:t,href:i,lang:s,ns:r}=this,n=this.in({idle:{template:{dirty:"valid"}}}),o=this.in({idle:{snapshot:{dirty:"valid"}}}),d=!this.in("idle")||t.matches(e,!0),l=n||o;return a(_||(_=x` <div> ${0} <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> <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(`${e}:before`),s,r,(e=>{e.detail.cancelled||this.delete()}),this.in("idle")?"primary "+(i?"error":"success"):"",e,this.in({idle:"template"})&&!l||d,(t=>{if("delete"===e){this.renderRoot.querySelector("#confirm").show(t.currentTarget)}else this.submit()}),r,e,s,this.renderTemplateOrSlot(`${e}:after`))}async __cache(){var e,t;this.__cacheState="busy";try{const i=null!==(t=null===(e=this.data)||void 0===e?void 0:e._links["fx:cache"].href)&&void 0!==t?t:"",s=await new j.API(this).fetch(i,{method:"POST"});this.__cacheState=s.ok?"idle":"fail"}catch(e){this.__cacheState="fail"}}}customElements.define("foxy-template-form",j);export{j as TemplateForm};
@@ -1 +1 @@
1
- import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as t}from"./shared-63eaded9.js";import{C as e}from"./shared-51e28c83.js";import{N as s}from"./shared-423a4840.js";import{T as i,a as r}from"./shared-cd3c902e.js";import{c as a}from"./shared-4e709717.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-c1dadefe.js";import"./shared-6d45a07b.js";import"./shared-4fa5f144.js";import"./shared-7684cb05.js";import"./shared-30131f76.js";let n,o,d,c,l,m,h,p,u,f,v,y,_=t=>t;const $=i(e(r(s,"transaction-card")));class x extends ${constructor(){super(...arguments),this.templates={},this.__currencyDisplay=""}render(){var e,s;const i=this.hiddenSelector,r=!i.matches("total",!0),d=!i.matches("status",!0);return t(n||(n=_` <div aria-busy="${0}" aria-live="polite" class="relative leading-m font-lumo text-m"> <div class="${0}"> ${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"),a({"transition-opacity":!0,"opacity-0":!this.data}),r||d?t(o||(o=_` <div class="flex items-center justify-between"> ${0} ${0} </div> `),r?this.__renderTotal():"",d?this.__renderStatus():""):"",i.matches("description",!0)?"":this.__renderDescription(),i.matches("customer",!0)?"":this.__renderCustomer(),a({"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===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"")}async _sendGet(){const t=await super._sendGet(),e=await super._fetch(t._links["fx:store"].href);return this.__currencyDisplay=e.use_international_currency_symbol?"code":"symbol",t}__renderTotal(){const e=this.data;let s;if(e){const i=`${e.total_order} ${e.currency_code}`,r=this.__currencyDisplay;s=t(d||(d=_` <foxy-i18n options="${0}" lang="${0}" key="price" ns="${0}"> </foxy-i18n> `),JSON.stringify({amount:i,currencyDisplay:r}),this.lang,this.ns)}else s=t(c||(c=_`&ZeroWidthSpace;`));return t(l||(l=_` <div data-testid="total"> ${0} <div class="font-semibold truncate">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("total:before"),s,this.renderTemplateOrSlot("total:after"))}__renderStatus(){var e,s,i,r;const a=(null===(e=this.data)||void 0===e?void 0:e.status)||"completed";return t(m||(m=_` <div data-testid="status"> ${0} <div class="text-tertiary text-s flex items-center space-x-s"> <foxy-i18n options="${0}" lang="${0}" key="time" ns="${0}"> </foxy-i18n> <iron-icon data-testid="status-icon" class="icon-inline text-l ${0}" title="${0}" icon="${0}"> </iron-icon> </div> ${0} </div> `),this.renderTemplateOrSlot("status:before"),JSON.stringify({value:null===(s=this.data)||void 0===s?void 0:s.transaction_date}),this.lang,this.ns,null!==(i={completed:"text-success",rejected:"text-error",declined:"text-error"}[a])&&void 0!==i?i:"text-tertiary",this.t(`transaction_${a}`),null!==(r={completed:"icons:done-all",refunded:"icons:restore",rejected:"icons:highlight-off",declined:"icons:highlight-off",voided:"icons:remove-circle-outline"}[a])&&void 0!==r?r:"icons:schedule",this.renderTemplateOrSlot("status:after"))}__renderDescription(){var e,s;const i=null===(s=null===(e=this.data)||void 0===e?void 0:e._embedded)||void 0===s?void 0:s["fx:items"];let r;if(i){const e={most_expensive_item:[...i].sort(((t,e)=>t.price-e.price))[0],count:i.length};r=t(h||(h=_` <foxy-i18n options="${0}" lang="${0}" key="transaction_summary" ns="${0}"> </foxy-i18n> `),JSON.stringify(e),this.lang,this.ns)}else r=t(p||(p=_`&ZeroWidthSpace;`));return t(u||(u=_` <div data-testid="description"> ${0} <div class="text-s text-secondary truncate">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("description:before"),r,this.renderTemplateOrSlot("description:after"))}__renderCustomer(){const e=this.data,s=e?t(f||(f=_`${0} ${0} (${0})`),e.customer_first_name,e.customer_last_name,e.customer_email):t(v||(v=_`&ZeroWidthSpace;`));return t(y||(y=_` <div data-testid="customer"> ${0} <div class="text-tertiary truncate text-s">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("customer:before"),s,this.renderTemplateOrSlot("customer:after"))}}customElements.define("foxy-transaction-card",x);export{x as TransactionCard};
1
+ import"./shared-9221e6b2.js";import"./foxy-spinner.js";import"./shared-11708514.js";import{h as t}from"./shared-63eaded9.js";import{C as e}from"./shared-df730f90.js";import{N as s}from"./shared-39e3ae67.js";import{T as i,a as r}from"./shared-e68b9c83.js";import{c as a}from"./shared-4e709717.js";import"./shared-46ee137f.js";import"./shared-ff79f3f9.js";import"./shared-60126eee.js";import"./shared-5535f38f.js";import"./shared-6d45a07b.js";import"./shared-7f0a9790.js";import"./shared-7684cb05.js";import"./shared-756034e4.js";let n,o,d,c,l,m,h,p,u,f,v,y,_=t=>t;const $=i(e(r(s,"transaction-card")));class x extends ${constructor(){super(...arguments),this.templates={},this.__currencyDisplay=""}render(){var e,s;const i=this.hiddenSelector,r=!i.matches("total",!0),d=!i.matches("status",!0);return t(n||(n=_` <div aria-busy="${0}" aria-live="polite" class="relative leading-m font-lumo text-m"> <div class="${0}"> ${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"),a({"transition-opacity":!0,"opacity-0":!this.data}),r||d?t(o||(o=_` <div class="flex items-center justify-between"> ${0} ${0} </div> `),r?this.__renderTotal():"",d?this.__renderStatus():""):"",i.matches("description",!0)?"":this.__renderDescription(),i.matches("customer",!0)?"":this.__renderCustomer(),a({"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===(e=customElements.get("foxy-spinner"))||void 0===e?void 0:e.defaultNS)&&void 0!==s?s:"")}async _sendGet(){const t=await super._sendGet(),e=await super._fetch(t._links["fx:store"].href);return this.__currencyDisplay=e.use_international_currency_symbol?"code":"symbol",t}__renderTotal(){const e=this.data;let s;if(e){const i=`${e.total_order} ${e.currency_code}`,r=this.__currencyDisplay;s=t(d||(d=_` <foxy-i18n options="${0}" lang="${0}" key="price" ns="${0}"> </foxy-i18n> `),JSON.stringify({amount:i,currencyDisplay:r}),this.lang,this.ns)}else s=t(c||(c=_`&ZeroWidthSpace;`));return t(l||(l=_` <div data-testid="total"> ${0} <div class="font-semibold truncate">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("total:before"),s,this.renderTemplateOrSlot("total:after"))}__renderStatus(){var e,s,i,r;const a=(null===(e=this.data)||void 0===e?void 0:e.status)||"completed";return t(m||(m=_` <div data-testid="status"> ${0} <div class="text-tertiary text-s flex items-center space-x-s"> <foxy-i18n options="${0}" lang="${0}" key="time" ns="${0}"> </foxy-i18n> <iron-icon data-testid="status-icon" class="icon-inline text-l ${0}" title="${0}" icon="${0}"> </iron-icon> </div> ${0} </div> `),this.renderTemplateOrSlot("status:before"),JSON.stringify({value:null===(s=this.data)||void 0===s?void 0:s.transaction_date}),this.lang,this.ns,null!==(i={completed:"text-success",rejected:"text-error",declined:"text-error"}[a])&&void 0!==i?i:"text-tertiary",this.t(`transaction_${a}`),null!==(r={completed:"icons:done-all",refunded:"icons:restore",rejected:"icons:highlight-off",declined:"icons:highlight-off",voided:"icons:remove-circle-outline"}[a])&&void 0!==r?r:"icons:schedule",this.renderTemplateOrSlot("status:after"))}__renderDescription(){var e,s;const i=null===(s=null===(e=this.data)||void 0===e?void 0:e._embedded)||void 0===s?void 0:s["fx:items"];let r;if(i){const e={most_expensive_item:[...i].sort(((t,e)=>t.price-e.price))[0],count:i.length};r=t(h||(h=_` <foxy-i18n options="${0}" lang="${0}" key="transaction_summary" ns="${0}"> </foxy-i18n> `),JSON.stringify(e),this.lang,this.ns)}else r=t(p||(p=_`&ZeroWidthSpace;`));return t(u||(u=_` <div data-testid="description"> ${0} <div class="text-s text-secondary truncate">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("description:before"),r,this.renderTemplateOrSlot("description:after"))}__renderCustomer(){const e=this.data,s=e?t(f||(f=_`${0} ${0} (${0})`),e.customer_first_name,e.customer_last_name,e.customer_email):t(v||(v=_`&ZeroWidthSpace;`));return t(y||(y=_` <div data-testid="customer"> ${0} <div class="text-tertiary truncate text-s">${0}</div> ${0} </div> `),this.renderTemplateOrSlot("customer:before"),s,this.renderTemplateOrSlot("customer:after"))}}customElements.define("foxy-transaction-card",x);export{x as TransactionCard};
@@ -1 +1 @@
1
- import"./shared-60126eee.js";import"./shared-46ee137f.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{T as e}from"./shared-a4e6ecb0.js";export{T as TransactionsTable}from"./shared-a4e6ecb0.js";import"./shared-ff79f3f9.js";import"./shared-63eaded9.js";import"./shared-cd3c902e.js";import"./shared-c1dadefe.js";import"./shared-b2330475.js";import"./shared-51e28c83.js";import"./shared-6d45a07b.js";import"./foxy-nucleon-element.js";import"./shared-423a4840.js";import"./shared-4fa5f144.js";import"./shared-7684cb05.js";import"./shared-30131f76.js";import"./shared-4e709717.js";customElements.define("foxy-transactions-table",e);
1
+ import"./shared-60126eee.js";import"./shared-46ee137f.js";import"./foxy-spinner.js";import"./shared-11708514.js";import{T as s}from"./shared-b9f18aaa.js";export{T as TransactionsTable}from"./shared-b9f18aaa.js";import"./shared-ff79f3f9.js";import"./shared-63eaded9.js";import"./shared-e68b9c83.js";import"./shared-5535f38f.js";import"./shared-a23cf7c8.js";import"./shared-df730f90.js";import"./shared-6d45a07b.js";import"./foxy-nucleon-element.js";import"./shared-39e3ae67.js";import"./shared-7f0a9790.js";import"./shared-7684cb05.js";import"./shared-756034e4.js";import"./shared-4e709717.js";customElements.define("foxy-transactions-table",s);
@@ -1 +1 @@
1
- import"./shared-bb824ab4.js";import"./shared-0ced76a0.js";import"./shared-f875a4f8.js";import"./foxy-spinner.js";import"./foxy-i18n.js";export{U as UserForm}from"./shared-c6a4b2d6.js";import"./shared-df573cea.js";import"./shared-ff79f3f9.js";import"./shared-63eaded9.js";import"./shared-0fcdd1c4.js";import"./shared-4fa5f144.js";import"./shared-c1dadefe.js";import"./shared-51e28c83.js";import"./shared-6d45a07b.js";import"./shared-cd3c902e.js";import"./shared-4e709717.js";import"./shared-46ee137f.js";import"./shared-60126eee.js";import"./shared-51b5e223.js";import"./shared-f0a83bd6.js";import"./shared-710ed658.js";import"./shared-36629ded.js";import"./shared-ec861f31.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-30131f76.js";import"./shared-a8d96c23.js";import"./shared-9af7b5f0.js";import"./shared-423a4840.js";import"./shared-7684cb05.js";import"./shared-b738ee96.js";
1
+ import"./shared-bb824ab4.js";import"./shared-0ced76a0.js";import"./shared-5272c758.js";import"./foxy-spinner.js";import"./shared-11708514.js";export{U as UserForm}from"./shared-940a4826.js";import"./shared-df573cea.js";import"./shared-ff79f3f9.js";import"./shared-63eaded9.js";import"./shared-66633ff7.js";import"./shared-7f0a9790.js";import"./shared-5535f38f.js";import"./shared-df730f90.js";import"./shared-6d45a07b.js";import"./shared-e68b9c83.js";import"./shared-4e709717.js";import"./shared-46ee137f.js";import"./shared-60126eee.js";import"./shared-40b5267a.js";import"./shared-f0a83bd6.js";import"./shared-25e67340.js";import"./shared-36629ded.js";import"./shared-ec861f31.js";import"./shared-b0f0e8b5.js";import"./shared-756034e4.js";import"./shared-06e64d75.js";import"./shared-02945b27.js";import"./shared-39e3ae67.js";import"./shared-7684cb05.js";import"./shared-b738ee96.js";
@@ -1 +1 @@
1
- import"./shared-0ced76a0.js";import"./foxy-form-dialog.js";import{r as e}from"./shared-c6a4b2d6.js";import"./foxy-spinner.js";import"./foxy-i18n.js";import{h as s}from"./shared-63eaded9.js";import{T as a}from"./shared-b2330475.js";import"./shared-df573cea.js";import"./shared-ff79f3f9.js";import"./shared-f875a4f8.js";import"./shared-0fcdd1c4.js";import"./shared-4fa5f144.js";import"./shared-c1dadefe.js";import"./shared-51e28c83.js";import"./shared-6d45a07b.js";import"./shared-cd3c902e.js";import"./shared-4e709717.js";import"./shared-7684cb05.js";import"./shared-bb824ab4.js";import"./shared-51b5e223.js";import"./shared-46ee137f.js";import"./shared-f0a83bd6.js";import"./shared-710ed658.js";import"./shared-36629ded.js";import"./shared-ec861f31.js";import"./shared-87ca7818.js";import"./shared-b0f0e8b5.js";import"./shared-30131f76.js";import"./shared-a8d96c23.js";import"./shared-9af7b5f0.js";import"./shared-423a4840.js";import"./shared-b738ee96.js";import"./shared-60126eee.js";import"./foxy-nucleon-element.js";let t,r,o,d,i,m,n,l=e=>e;class f extends a{constructor(){super(...arguments),this.columns=[f.nameColumn,f.emailColumn,f.rolesColumn,f.lastUpdatedColumn,f.actionsColumn]}render(){return s(t||(t=l` <foxy-form-dialog parent="${0}" form="foxy-user-form" lang="${0}" ns="${0}" id="form"> </foxy-form-dialog> ${0} `),this.href,this.lang,this.ns,super.render())}}f.nameColumn={cell:e=>s(r||(r=l` <span data-testclass="name" class="text-m font-medium"> ${0} ${0} </span> `),e.data.first_name,e.data.last_name)},f.emailColumn={hideBelow:"md",cell:e=>s(o||(o=l` <span data-testclass="email" class="text-m text-secondary">${0}</span> `),e.data.email)},f.rolesColumn={cell:a=>s(d||(d=l` <div data-testclass="roles" class="flex space-x-s"> ${0} </div> `),["is_merchant","is_programmer","is_front_end_developer","is_designer"].map((t=>s(i||(i=l` <div class="${0}" style="width:1rem;height:1rem"> ${0} </div> `),a.data[t]?"":"text-disabled",e.find((e=>e.property===t)).icon))))},f.lastUpdatedColumn={hideBelow:"lg",cell:e=>s(m||(m=l` <span data-testclass="lastUpdated" class="text-m text-secondary font-tnum"> <foxy-i18n options="${0}" lang="${0}" key="date" ns="${0}"> </foxy-i18n> <foxy-i18n options="${0}" lang="${0}" key="time" ns="${0}"> </foxy-i18n> </span> `),JSON.stringify({value:e.data.date_modified}),e.lang,e.ns,JSON.stringify({value:e.data.date_modified}),e.lang,e.ns)},f.actionsColumn={cell:e=>s(n||(n=l` <vaadin-button data-testclass="actions" theme="tertiary small" @click="${0}"> <foxy-i18n lang="${0}" key="update" ns="${0}"></foxy-i18n> </vaadin-button> `),(s=>{const a=s.target,t=a.getRootNode().querySelector("#form");t.href=e.data._links.self.href,t.show(a)}),e.lang,e.ns)},customElements.define("foxy-users-table",f);export{f as UsersTable};
1
+ import"./shared-0ced76a0.js";import"./foxy-form-dialog.js";import{r as e}from"./shared-940a4826.js";import"./foxy-spinner.js";import"./shared-11708514.js";import{h as s}from"./shared-63eaded9.js";import{T as a}from"./shared-a23cf7c8.js";import"./shared-df573cea.js";import"./shared-ff79f3f9.js";import"./shared-5272c758.js";import"./shared-66633ff7.js";import"./shared-7f0a9790.js";import"./shared-5535f38f.js";import"./shared-df730f90.js";import"./shared-6d45a07b.js";import"./shared-e68b9c83.js";import"./shared-4e709717.js";import"./shared-7684cb05.js";import"./shared-bb824ab4.js";import"./shared-40b5267a.js";import"./shared-46ee137f.js";import"./shared-f0a83bd6.js";import"./shared-25e67340.js";import"./shared-36629ded.js";import"./shared-ec861f31.js";import"./shared-b0f0e8b5.js";import"./shared-756034e4.js";import"./shared-06e64d75.js";import"./shared-02945b27.js";import"./shared-39e3ae67.js";import"./shared-b738ee96.js";import"./shared-60126eee.js";import"./foxy-nucleon-element.js";let t,r,o,d,i,m,n,l=e=>e;class p extends a{constructor(){super(...arguments),this.columns=[p.nameColumn,p.emailColumn,p.rolesColumn,p.lastUpdatedColumn,p.actionsColumn]}render(){return s(t||(t=l` <foxy-form-dialog parent="${0}" form="foxy-user-form" lang="${0}" ns="${0}" id="form"> </foxy-form-dialog> ${0} `),this.href,this.lang,this.ns,super.render())}}p.nameColumn={cell:e=>s(r||(r=l` <span data-testclass="name" class="text-m font-medium"> ${0} ${0} </span> `),e.data.first_name,e.data.last_name)},p.emailColumn={hideBelow:"md",cell:e=>s(o||(o=l` <span data-testclass="email" class="text-m text-secondary">${0}</span> `),e.data.email)},p.rolesColumn={cell:a=>s(d||(d=l` <div data-testclass="roles" class="flex space-x-s"> ${0} </div> `),["is_merchant","is_programmer","is_front_end_developer","is_designer"].map((t=>s(i||(i=l` <div class="${0}" style="width:1rem;height:1rem"> ${0} </div> `),a.data[t]?"":"text-disabled",e.find((e=>e.property===t)).icon))))},p.lastUpdatedColumn={hideBelow:"lg",cell:e=>s(m||(m=l` <span data-testclass="lastUpdated" class="text-m text-secondary font-tnum"> <foxy-i18n options="${0}" lang="${0}" key="date" ns="${0}"> </foxy-i18n> <foxy-i18n options="${0}" lang="${0}" key="time" ns="${0}"> </foxy-i18n> </span> `),JSON.stringify({value:e.data.date_modified}),e.lang,e.ns,JSON.stringify({value:e.data.date_modified}),e.lang,e.ns)},p.actionsColumn={cell:e=>s(n||(n=l` <vaadin-button data-testclass="actions" theme="tertiary small" @click="${0}"> <foxy-i18n lang="${0}" key="update" ns="${0}"></foxy-i18n> </vaadin-button> `),(s=>{const a=s.target,t=a.getRootNode().querySelector("#form");t.href=e.data._links.self.href,t.show(a)}),e.lang,e.ns)},customElements.define("foxy-users-table",p);export{p as UsersTable};
@@ -1 +1 @@
1
- import{L as e,_ as s,h as t}from"./shared-63eaded9.js";import{b as r}from"./shared-cd3c902e.js";let o,a=e=>e;class d extends e{constructor(){super(...arguments),this.frame=!1}static get properties(){return s(s({},super.properties),{},{frame:{type:Boolean}})}static get styles(){return r.styles}render(){return t(o||(o=a` <section class="space-y-s font-lumo antialiased"> <h3 class="${0}"> <slot name="header"></slot> </h3> <div class="rounded-t-l rounded-b-l ${0}"> <slot></slot> </div> </section> `),"text-s font-medium text-secondary leading-none "+(this.frame?"":"pl-m"),this.frame?"border border-contrast-10 overflow-hidden":"")}}export{d as G};
1
+ import{L as e,_ as s,h as t}from"./shared-63eaded9.js";import{b as r}from"./shared-e68b9c83.js";let o,a=e=>e;class d extends e{constructor(){super(...arguments),this.frame=!1}static get properties(){return s(s({},super.properties),{},{frame:{type:Boolean}})}static get styles(){return r.styles}render(){return t(o||(o=a` <section class="space-y-s font-lumo antialiased"> <h3 class="${0}"> <slot name="header"></slot> </h3> <div class="rounded-t-l rounded-b-l ${0}"> <slot></slot> </div> </section> `),"text-s font-medium text-secondary leading-none "+(this.frame?"":"pl-m"),this.frame?"border border-contrast-10 overflow-hidden":"")}}export{d as G};
@@ -1,4 +1,4 @@
1
- import{C as e,j as t,L as s,_ as i,h as n}from"./shared-63eaded9.js";import{a as r,E as o,T as l,C as a}from"./shared-df573cea.js";import{T as d}from"./shared-bb824ab4.js";import{O as A,I as h}from"./shared-ec861f31.js";import{h as c,a as m,t as u,P as p}from"./shared-ff79f3f9.js";import{F as g,P as v,a as y}from"./shared-46ee137f.js";import{D as _}from"./shared-710ed658.js";import{b as f,c as b}from"./shared-cd3c902e.js";class w extends CustomEvent{constructor(e){super("change",{detail:e})}}class x extends w{}const E=c`<dom-module id="lumo-list-box" theme-for="vaadin-list-box">
1
+ import{C as e,j as t,L as s,_ as i,h as n}from"./shared-63eaded9.js";import{a as r,E as o,T as l,C as a}from"./shared-df573cea.js";import{T as d}from"./shared-bb824ab4.js";import{O as A,I as h}from"./shared-ec861f31.js";import{h as c,a as m,t as u,P as p}from"./shared-ff79f3f9.js";import{F as g,P as v,a as y}from"./shared-46ee137f.js";import{D as _}from"./shared-25e67340.js";import{b as f,c as b}from"./shared-e68b9c83.js";class w extends CustomEvent{constructor(e){super("change",{detail:e})}}class x extends w{}const E=c`<dom-module id="lumo-list-box" theme-for="vaadin-list-box">
2
2
  <template>
3
3
  <style>
4
4
  :host {
@@ -1 +1 @@
1
- import{L as e,h as r}from"./shared-63eaded9.js";import{b as s}from"./shared-cd3c902e.js";let t,o=e=>e;class n extends e{static get styles(){return s.styles}render(){return r(t||(t=o` <p class="flex text-s border border-contrast-10 rounded-t-l rounded-b-l p-s text-body leading-s"> <iron-icon icon="lumo:error" class="text-error flex-shrink-0 mr-s"></iron-icon> <slot></slot> </p> `))}}function a(e){const[r,s,t]=e.split("-").map((e=>parseInt(e,10)));return[r,s,t].some((e=>"number"!=typeof e||isNaN(e)))?null:new Date(r,s-1,t)}export{n as W,a as p};
1
+ import{L as e,h as r}from"./shared-63eaded9.js";import{b as s}from"./shared-e68b9c83.js";let t,o=e=>e;class n extends e{static get styles(){return s.styles}render(){return r(t||(t=o` <p class="flex text-s border border-contrast-10 rounded-t-l rounded-b-l p-s text-body leading-s"> <iron-icon icon="lumo:error" class="text-error flex-shrink-0 mr-s"></iron-icon> <slot></slot> </p> `))}}function a(e){const[r,s,t]=e.split("-").map((e=>parseInt(e,10)));return[r,s,t].some((e=>"number"!=typeof e||isNaN(e)))?null:new Date(r,s-1,t)}export{n as W,a as p};
@@ -1,4 +1,4 @@
1
- import"./shared-60126eee.js";import"./shared-46ee137f.js";import{s as e,h as l,_ as t,j as n,L as s}from"./shared-63eaded9.js";import{c as a}from"./shared-4e709717.js";import{i}from"./shared-6d45a07b.js";import{s as o}from"./shared-2061be9a.js";import{r}from"./shared-b710881a.js";import{R as u,T as d,a as c}from"./shared-cd3c902e.js";var v,p;!function(e){e.Attribute="attribute",e.Boolean="boolean",e.String="string",e.Number="number",e.Date="date",e.Any="any"}(v||(v={})),function(e){e.LessThanOrEqual="lessthanorequal",e.LessThan="lessthan",e.GreaterThanOrEqual="greaterthanorequal",e.GreaterThan="greaterthan",e.IsDefined="isdefined",e.Not="not",e.In="in"}(p||(p={}));let f;const h=e(f||(f=(e=>e)`
1
+ import"./shared-60126eee.js";import"./shared-46ee137f.js";import{s as e,h as l,_ as t,j as n,L as s}from"./shared-63eaded9.js";import{c as a}from"./shared-4e709717.js";import{i}from"./shared-6d45a07b.js";import{s as o}from"./shared-2061be9a.js";import{r}from"./shared-b710881a.js";import{R as u,T as d,a as c}from"./shared-e68b9c83.js";var v,p;!function(e){e.Attribute="attribute",e.Boolean="boolean",e.String="string",e.Number="number",e.Date="date",e.Any="any"}(v||(v={})),function(e){e.LessThanOrEqual="lessthanorequal",e.LessThan="lessthan",e.GreaterThanOrEqual="greaterthanorequal",e.GreaterThan="greaterthan",e.IsDefined="isdefined",e.Not="not",e.In="in"}(p||(p={}));let f;const h=e(f||(f=(e=>e)`
2
2
  <svg class="w-full h-full" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg">
3
3
  <path d="M26.4 14.7399C26.4 15.2922 25.9523 15.7399 25.4 15.7399H10.6C10.0477 15.7399 9.60001 15.2922 9.60001 14.7399V14.2C9.60001 13.6477 10.0477 13.2 10.6 13.2H25.4C25.9523 13.2 26.4 13.6477 26.4 14.2V14.7399ZM26.4 21.8C26.4 22.3523 25.9523 22.8 25.4 22.8H10.6C10.0477 22.8 9.60001 22.3523 9.60001 21.8V21.2601C9.60001 20.7078 10.0477 20.2601 10.6 20.2601H25.4C25.9523 20.2601 26.4 20.7078 26.4 21.2601V21.8Z" class="fill-current"/>
4
4
  </svg>
@@ -0,0 +1 @@
1
+ import{L as e,_ as t,h as s}from"./shared-63eaded9.js";import{C as i}from"./shared-df730f90.js";import{a as r,T as n}from"./shared-e68b9c83.js";import{c as o}from"./shared-4e709717.js";import{l as a}from"./shared-07134f93.js";import{r as l}from"./shared-b710881a.js";let d,c,h,u=e=>e;class m extends(r(i(n(e)))){constructor(){super(...arguments),this.options=[],this.items=[],this.__newItem=""}static get properties(){return t(t({},super.properties),{},{options:{type:Array},items:{type:Array},__newItem:{attribute:!1}})}render(){const e=o({"w-xs h-xs mr-xs rounded-full transition-colors flex-shrink-0":!0,"focus-outline-none focus-ring-2 ring-inset ring-error-50":!0,"text-tertiary hover-bg-error-10 hover-text-error":!this.disabled,"cursor-default text-disabled":this.disabled,"flex items-center justify-center":!this.readonly,hidden:this.readonly}),t=o({"transition-colors h-l ml-m flex items-center":!0,"text-secondary":this.readonly,"text-disabled":this.disabled}),i=this.disabled||!this.__newItem,r=()=>{this.__newItem&&(this.items.push({value:this.__newItem}),this.requestUpdate("items"),this.dispatchEvent(new CustomEvent("change")),this.__newItem="")};return s(d||(d=u` <slot></slot> <ol class="divide-y divide-contrast-10"> ${0} </ol> <div class="${0}"> <input placeholder="${0}" class="w-full bg-transparent appearance-none h-m focus-outline-none" list="list" .value="${0}" ?disabled="${0}" ?readonly="${0}" @keydown="${0}" @change="${0}" @input="${0}"> <datalist id="list"> ${0} </datalist> <div class="transition-opacity ${0}"> <button aria-label="${0}" class="${0}" ?disabled="${0}" @click="${0}"> <iron-icon icon="lumo:plus" class="icon-inline text-l"></iron-icon> </button> </div> </div> `),l(this.items,(e=>e.value),((i,r)=>{var n;return s(c||(c=u` <li class="${0}"> <div class="flex-1 mr-s">${0}</div> <button aria-label="${0}" class="${0}" ?disabled="${0}" @click="${0}"> <iron-icon icon="lumo:cross" class="icon-inline text-xl"></iron-icon> </button> </li> `),t,null!==(n=i.label)&&void 0!==n?n:i.value,this.t("delete"),e,this.disabled,(()=>{this.items.splice(r,1),this.requestUpdate("items"),this.dispatchEvent(new CustomEvent("change"))}))})),o({"ml-m h-l flex items-center":!0,"border-t border-contrast-10":this.items.length>0,flex:!this.readonly,hidden:this.readonly}),this.t("type_here"),a(this.__newItem),this.disabled,this.readonly,(e=>"Enter"===e.key&&r()),(e=>e.stopPropagation()),(e=>{this.__newItem=e.currentTarget.value.trim()}),this.options.map((({label:e,value:t})=>{if(!this.items.some((e=>e.value===t)))return s(h||(h=u`<option value="${0}">${0}</option>`),t,null!=e?e:t)})),this.__newItem?"opacity-100":"opacity-0",this.t("submit"),o({"w-xs h-xs mr-xs flex-shrink-0 ring-inset ring-success-50 focus-outline-none":!0,"flex items-center justify-center rounded-full transition-colors":!0,"bg-contrast-5 text-disabled cursor-default":i,"bg-success-10 text-success cursor-pointer":!i,"hover-bg-success hover-text-success-contrast":!i,"focus-ring-2":!i}),i,r)}}export{m as E};
@@ -0,0 +1 @@
1
+ import{L as e,_ as t,h as n}from"./shared-63eaded9.js";import{i as r,a as s}from"./shared-e68b9c83.js";import{F as a,A as i}from"./shared-5535f38f.js";const o={type:"backend",init:()=>{},read:(e,t,n)=>{const r=async e=>{const t=e.ok?null:new Error(await e.text()),r=!!e.ok&&await e.json();n(t,r)},s=e=>{const t=e instanceof Error?e:new Error(String(e));n(t,!1)},o=new a("fetch",{cancelable:!0,composed:!0,bubbles:!0,request:new i.WHATWGRequest(`foxy://i18n/${t}/${e}`),resolve:r,reject:s});dispatchEvent(o),o.defaultPrevented||fetch(o.request).then(r).catch(s)},create:()=>{throw new Error("foxy-i18n does not support resource creation")}};function c(e,t=!1){var n;const r=e.replace(/(y|m|w|d)/,""),s=e.replace(/\.?\d+/,"");return{count:".5"===r?.5:parseInt(r),units:t&&null!==(n={y:"year",m:"month",w:"week",d:"day"}[s])&&void 0!==n?n:s}}const l={discount:({type:e,details:t},n,r)=>{const s=e.endsWith("_percentage")?.01:1,a=t.split("|"),i=`${["allunits","incremental","repeat","single"].includes(a[0])?a.shift():"single"}_${e}_discount_summary`;return a.map((e=>{var t,n;const r=null!==(n=null===(t=/[-+]/.exec(e))||void 0===t?void 0:t.index)&&void 0!==n?n:-1,a=parseFloat(e.substring(r))*s,o=parseFloat(e.substring(0,r));return`$t(${i}, ${JSON.stringify({adjustment:a,from:o})})`})).join("; ")},relative:(e,t,n)=>{const r=new Intl.RelativeTimeFormat(n);let{count:s,units:a}=c(e,!0);return.5===s&&"month"===a&&(s=2,a="week"),r.format(s,a)},percent:(e,t,n)=>{let r=null;try{"number"==typeof e&&(r=e.toLocaleString(n,{style:"percent"}))}catch(e){console.warn(`i18next formatter error: ${e.message}`)}return r||String(e)},ordinal:(e,t,n)=>`${e}$t(ordinal_${new Intl.PluralRules(n,{type:"ordinal"}).select(e)})`,price:(e,t,n,r)=>{var s;try{const[t,a]=e.split(" ");return parseFloat(t).toLocaleString(n,{maximumFractionDigits:2,minimumFractionDigits:2,currencyDisplay:null!==(s=null==r?void 0:r.currencyDisplay)&&void 0!==s?s:"symbol",style:"currency",currency:a})}catch(t){return e}},date:(e,t,n)=>{if(!e)return"$t(unknown)";const r=new Date(e),s=(new Date).getFullYear()===r.getFullYear()?void 0:"numeric";return r.toLocaleDateString(n,{month:"long",year:s,day:"numeric"})},time:(e,t,n)=>new Date(e).toLocaleTimeString(n,{hour:"numeric",minute:"numeric"})};let u,d=e=>e;class p extends(s(e,"")){constructor(){super(...arguments),this.options={},this.key=""}static onTranslationChange(e){const t=["initialized","loaded"],n=["removed","added"];return t.forEach((t=>p.i18next.on(t,e))),n.forEach((t=>p.i18next.store.on(t,e))),()=>{t.forEach((t=>p.i18next.off(t,e))),n.forEach((t=>p.i18next.store.off(t,e)))}}static onResourceFetch(e){const t=t=>{if(t instanceof a&&t.request.url.startsWith("foxy://i18n/")){const[n,r]=t.request.url.split("/").reverse();t.respondWith(e(r,n))}};return addEventListener("fetch",t),()=>removeEventListener("fetch",t)}static setGateways({values:e}){for(const t in e)this.i18next.addResource("en","gateways",`gateways.${t}`,e[t].name)}static get properties(){return t(t({},super.properties),{},{options:{type:Object},key:{type:String}})}connectedCallback(){super.connectedCallback(),this.__unsubscribe=p.onTranslationChange((()=>this.requestUpdate()))}render(){return n(u||(u=d`<span>${0}</span>`),this.t(this.key,t(t({},this.options),{},{lng:this.lang})))}disconnectedCallback(){var e;super.disconnectedCallback(),null===(e=this.__unsubscribe)||void 0===e||e.call(this)}}p.FetchEvent=a,p.i18next=r.createInstance().use(o),p.i18next.init({interpolation:{format:(e,t="",n="en",r={})=>t.split(" ").filter((e=>!!e.trim())).reduce(((e,t)=>{var s,a;return null!==(a=null===(s=l[t])||void 0===s?void 0:s.call(l,e,t,n,r))&&void 0!==a?a:e}),e),escapeValue:!1},fallbackLng:"en",fallbackNS:"shared",defaultNS:"shared",ns:["shared"]}),customElements.define("foxy-i18n",p);export{p as I,c as p};
@@ -1,4 +1,4 @@
1
- import{_ as t}from"./shared-63eaded9.js";import{T as e}from"./shared-b2330475.js";import{a as s}from"./shared-cd3c902e.js";import{p as a}from"./shared-6b7602c7.js";let n,o,r,i,c=t=>t;class l extends(s(e,"subscriptions-table")){constructor(){super(...arguments),this.columns=[l.priceColumn,l.summaryColumn,l.statusColumn,l.subTokenURLColumn]}}l.priceColumn={cell:e=>{const s=e.data._embedded["fx:last_transaction"],o=`${s.total_order} ${s.currency_code}`;return e.html(n||(n=c`
1
+ import{_ as t}from"./shared-63eaded9.js";import{T as e}from"./shared-a23cf7c8.js";import{a as s}from"./shared-e68b9c83.js";import{p as a}from"./shared-805d18a2.js";let n,o,r,i,c=t=>t;class l extends(s(e,"subscriptions-table")){constructor(){super(...arguments),this.columns=[l.priceColumn,l.summaryColumn,l.statusColumn,l.subTokenURLColumn]}}l.priceColumn={cell:e=>{const s=e.data._embedded["fx:last_transaction"],o=`${s.total_order} ${s.currency_code}`;return e.html(n||(n=c`
2
2
  <foxy-i18n
3
3
  data-testclass="i18n frequencies"
4
4
  class="font-semibold text-m font-tnum"
@@ -1 +1 @@
1
- import{c as e,g as t,L as r,_ as n,h as s}from"./shared-63eaded9.js";import{A as o}from"./shared-fb403e1f.js";import"./shared-59e44f29.js";import{C as i}from"./shared-51e28c83.js";import{F as a}from"./shared-c1dadefe.js";var u=e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.formatCookie=void 0;var r=function(e){var t=e.path,r=e.domain,n=e.expires,s=e.secure,o=function(e){var t=e.sameSite;return void 0===t?null:["none","lax","strict"].indexOf(t.toLowerCase())>=0?t:null}(e);return[null==t?"":";path="+t,null==r?"":";domain="+r,null==n?"":";expires="+n.toUTCString(),void 0===s||!1===s?"":";secure",null===o?"":";SameSite="+o].join("")};t.formatCookie=function(e,t,n){return[encodeURIComponent(e),"=",encodeURIComponent(t),r(n)].join("")}})),c=e((function(e,t){function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,s=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){s=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(s)throw o}}return r}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return n(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}Object.defineProperty(t,"__esModule",{value:!0}),t.parseCookies=void 0;t.parseCookies=function(e){if(0===e.length)return{};var t={},n=new RegExp("\\s*;\\s*");return e.split(n).forEach((function(e){var n=r(e.split("="),2),s=n[0],o=n[1],i=decodeURIComponent(s),a=decodeURIComponent(o);t[i]=a})),t}})),l=e((function(e,t){function r(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}Object.defineProperty(t,"__esModule",{value:!0}),t.CookieStorage=void 0;var n=function(){function e(t){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._defaultOptions=Object.assign({domain:null,expires:null,path:null,secure:!1},t),"undefined"!=typeof Proxy)return new Proxy(this,s)}var t,n,o;return t=e,(n=[{key:"clear",value:function(){var e=this,t=c.parseCookies(this._getCookie());Object.keys(t).forEach((function(t){return e.removeItem(t)}))}},{key:"getItem",value:function(e){var t=c.parseCookies(this._getCookie());return Object.prototype.hasOwnProperty.call(t,e)?t[e]:null}},{key:"key",value:function(e){var t=c.parseCookies(this._getCookie()),r=Object.keys(t).sort();return e<r.length?r[e]:null}},{key:"removeItem",value:function(e,t){var r=Object.assign(Object.assign(Object.assign({},this._defaultOptions),t),{expires:new Date(0)}),n=u.formatCookie(e,"",r);this._setCookie(n)}},{key:"setItem",value:function(e,t,r){var n=Object.assign(Object.assign({},this._defaultOptions),r),s=u.formatCookie(e,t,n);this._setCookie(s)}},{key:"_getCookie",value:function(){return"undefined"==typeof document||void 0===document.cookie?"":document.cookie}},{key:"_setCookie",value:function(e){document.cookie=e}},{key:"length",get:function(){var e=c.parseCookies(this._getCookie());return Object.keys(e).length}}])&&r(t.prototype,n),o&&r(t,o),e}();t.CookieStorage=n;var s={defineProperty:function(e,t,r){return e.setItem(t.toString(),String(r.value)),!0},deleteProperty:function(e,t){return e.removeItem(t.toString()),!0},get:function(e,t,r){if("string"==typeof t&&t in e)return e[t];var n=e.getItem(t.toString());return null!==n?n:void 0},getOwnPropertyDescriptor:function(e,t){if(!(t in e))return{configurable:!0,enumerable:!0,value:e.getItem(t.toString()),writable:!0}},has:function(e,t){return"string"==typeof t&&t in e||null!==e.getItem(t.toString())},ownKeys:function(e){for(var t=[],r=0;r<e.length;r++){var n=e.key(r);null!==n&&t.push(n)}return t},preventExtensions:function(e){throw new TypeError("can't prevent extensions on this proxy object")},set:function(e,t,r,n){return e.setItem(t.toString(),String(r)),!0}}})),p=t(e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"CookieStorage",{enumerable:!0,get:function(){return l.CookieStorage}}),Object.defineProperty(t,"formatCookie",{enumerable:!0,get:function(){return u.formatCookie}}),Object.defineProperty(t,"parseCookies",{enumerable:!0,get:function(){return c.parseCookies}})})));class f extends p.CookieStorage{constructor(){super({sameSite:"Strict",expires:new Date,secure:!0,domain:location.hostname,path:"/"})}getItem(e){if(e===o.SESSION){const e=super.getItem("fx.customer"),t=super.getItem("fx.customer.duration"),r=super.getItem("fx.customer.start"),n=super.getItem("fx.customer.jwt");if(null===e||null===t||null===r||null===n)return null;const s={session_token:e,date_created:r,expires_in:parseInt(t),jwt:n},o=super.getItem("fx.customer.sso");return null!==o&&(s.sso=o),JSON.stringify(s)}return super.getItem(e)}setItem(e,t,r){if(e!==o.SESSION)return super.setItem(e,t,r);{const e=JSON.parse(t),r=1e3*e.expires_in,n=new Date(new Date(e.date_created).getTime()+r);super.setItem("fx.customer",e.session_token,{expires:n}),super.setItem("fx.customer.jwt",e.jwt,{expires:n}),super.setItem("fx.customer.start",e.date_created,{expires:n}),super.setItem("fx.customer.duration",String(e.expires_in),{expires:n}),e.sso&&super.setItem("fx.customer.sso",e.sso,{expires:n})}}clear(){for(let e=0;e<this.length;){const t=super.key(e);t.startsWith("fx.customer")?super.removeItem(t):e++}}}const h=new f;let d,m=e=>e;class g extends(i(r)){constructor(){var e;super(...arguments),e=this,this.__storage="local",this.__level=0,this.__base=location.origin,this.__api=this.__createAPIInstance(),this.__handleFetch=async function(t){if(!(t instanceof a))return;if(t.defaultPrevented)return;if(t.composedPath()[0]===e)return;t.preventDefault();const r=new a("fetch",{cancelable:!0,composed:!0,request:t.request,bubbles:!0,reject:e=>t.respondWith(Promise.reject(e)),resolve:n=>{"foxy://customer-api/session"===r.request.url&&e.requestUpdate(),401===n.status&&e.requestUpdate(),t.respondWith(Promise.resolve(n))}});e.dispatchEvent(r)&&r.respondWith(e.__handleRequest(r.request))}}static get properties(){return n(n({},super.properties),{},{storage:{type:String,noAccessor:!0},level:{type:Number,noAccessor:!0},base:{type:String,noAccessor:!0}})}get isLoggedIn(){return!!this.api.storage.getItem(o.SESSION)}get api(){return this.__api}get base(){return this.__base}set base(e){this.__base=e,this.__api=this.__createAPIInstance()}get level(){return this.__level}set level(e){this.__level=e,this.__api=this.__createAPIInstance()}get storage(){return this.__storage}set storage(e){this.__storage=e,this.__api=this.__createAPIInstance()}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__handleFetch)}render(){return s(d||(d=m` ${0} <slot></slot> `),this.renderTemplateOrSlot(this.isLoggedIn?"logged-in":"logged-out"))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__handleFetch)}__createAPIInstance(){const e={session:sessionStorage,cookie:h,local:localStorage};return new o({storage:e[this.storage],level:this.level,base:new URL(this.base)})}async __handleVirtualAuthSessionDelete(){return await this.api.signOut(),this.dispatchEvent(new g.SignOutEvent("signout")),this.requestUpdate(),new Response}async __handleVirtualAuthSessionPost(e){const t=await e.clone().json();if("password"!==t.type)throw new Error(`Unknown payload type ${t.type}`);let r,s;try{await this.api.signIn(t.credential),this.dispatchEvent(new g.SignInEvent("signin")),this.requestUpdate(),r=200,s=n({_links:{self:{href:e.url}}},t)}catch(e){if(!(e instanceof o.AuthError))throw e;if("UNAUTHORIZED"!==e.code)throw e;r=401,s={total:1,_embedded:{"fx:errors":[{message:e.message,logref:"unavailable",code:"invalid_credential_error"}]}}}return new Response(JSON.stringify(s),{status:r})}async __handleVirtualAuthRecoverPost(e){const t=await e.clone().json();if("email"===t.type)return await this.api.sendPasswordResetEmail(t.detail),new Response(JSON.stringify({_links:{self:{href:e.url}},email:t.email}));throw new Error(`Unknown payload type ${t.type}`)}async __handleRequest(e){const t=e.url,r=e.method;try{if("foxy://customer-api/session"===t){if("DELETE"===r)return this.__handleVirtualAuthSessionDelete();if("POST"===r)return this.__handleVirtualAuthSessionPost(e)}if("foxy://customer-api/recover"===t&&"POST"===r)return this.__handleVirtualAuthRecoverPost(e);const n=await this.api.fetch(e);return 401===n.status&&(this.api.storage.clear(),this.dispatchEvent(new g.SignOutEvent("signout")),this.requestUpdate()),n}catch(e){return new Response(null,{status:500})}}}g.SignOutEvent=class extends CustomEvent{},g.SignInEvent=class extends CustomEvent{};export{g as C};
1
+ import{c as e,g as t,L as r,_ as n,h as s}from"./shared-63eaded9.js";import{A as o}from"./shared-448781f9.js";import"./shared-59e44f29.js";import{C as i}from"./shared-df730f90.js";import{F as a}from"./shared-5535f38f.js";var u=e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.formatCookie=void 0;var r=function(e){var t=e.path,r=e.domain,n=e.expires,s=e.secure,o=function(e){var t=e.sameSite;return void 0===t?null:["none","lax","strict"].indexOf(t.toLowerCase())>=0?t:null}(e);return[null==t?"":";path="+t,null==r?"":";domain="+r,null==n?"":";expires="+n.toUTCString(),void 0===s||!1===s?"":";secure",null===o?"":";SameSite="+o].join("")};t.formatCookie=function(e,t,n){return[encodeURIComponent(e),"=",encodeURIComponent(t),r(n)].join("")}})),c=e((function(e,t){function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,s=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){s=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(s)throw o}}return r}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return n(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}Object.defineProperty(t,"__esModule",{value:!0}),t.parseCookies=void 0;t.parseCookies=function(e){if(0===e.length)return{};var t={},n=new RegExp("\\s*;\\s*");return e.split(n).forEach((function(e){var n=r(e.split("="),2),s=n[0],o=n[1],i=decodeURIComponent(s),a=decodeURIComponent(o);t[i]=a})),t}})),l=e((function(e,t){function r(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}Object.defineProperty(t,"__esModule",{value:!0}),t.CookieStorage=void 0;var n=function(){function e(t){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._defaultOptions=Object.assign({domain:null,expires:null,path:null,secure:!1},t),"undefined"!=typeof Proxy)return new Proxy(this,s)}var t,n,o;return t=e,(n=[{key:"clear",value:function(){var e=this,t=c.parseCookies(this._getCookie());Object.keys(t).forEach((function(t){return e.removeItem(t)}))}},{key:"getItem",value:function(e){var t=c.parseCookies(this._getCookie());return Object.prototype.hasOwnProperty.call(t,e)?t[e]:null}},{key:"key",value:function(e){var t=c.parseCookies(this._getCookie()),r=Object.keys(t).sort();return e<r.length?r[e]:null}},{key:"removeItem",value:function(e,t){var r=Object.assign(Object.assign(Object.assign({},this._defaultOptions),t),{expires:new Date(0)}),n=u.formatCookie(e,"",r);this._setCookie(n)}},{key:"setItem",value:function(e,t,r){var n=Object.assign(Object.assign({},this._defaultOptions),r),s=u.formatCookie(e,t,n);this._setCookie(s)}},{key:"_getCookie",value:function(){return"undefined"==typeof document||void 0===document.cookie?"":document.cookie}},{key:"_setCookie",value:function(e){document.cookie=e}},{key:"length",get:function(){var e=c.parseCookies(this._getCookie());return Object.keys(e).length}}])&&r(t.prototype,n),o&&r(t,o),e}();t.CookieStorage=n;var s={defineProperty:function(e,t,r){return e.setItem(t.toString(),String(r.value)),!0},deleteProperty:function(e,t){return e.removeItem(t.toString()),!0},get:function(e,t,r){if("string"==typeof t&&t in e)return e[t];var n=e.getItem(t.toString());return null!==n?n:void 0},getOwnPropertyDescriptor:function(e,t){if(!(t in e))return{configurable:!0,enumerable:!0,value:e.getItem(t.toString()),writable:!0}},has:function(e,t){return"string"==typeof t&&t in e||null!==e.getItem(t.toString())},ownKeys:function(e){for(var t=[],r=0;r<e.length;r++){var n=e.key(r);null!==n&&t.push(n)}return t},preventExtensions:function(e){throw new TypeError("can't prevent extensions on this proxy object")},set:function(e,t,r,n){return e.setItem(t.toString(),String(r)),!0}}})),f=t(e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"CookieStorage",{enumerable:!0,get:function(){return l.CookieStorage}}),Object.defineProperty(t,"formatCookie",{enumerable:!0,get:function(){return u.formatCookie}}),Object.defineProperty(t,"parseCookies",{enumerable:!0,get:function(){return c.parseCookies}})})));class p extends f.CookieStorage{constructor(){super({sameSite:"Strict",expires:new Date,secure:!0,domain:location.hostname,path:"/"})}getItem(e){if(e===o.SESSION){const e=super.getItem("fx.customer"),t=super.getItem("fx.customer.duration"),r=super.getItem("fx.customer.start"),n=super.getItem("fx.customer.jwt");if(null===e||null===t||null===r||null===n)return null;const s={session_token:e,date_created:r,expires_in:parseInt(t),jwt:n},o=super.getItem("fx.customer.sso");return null!==o&&(s.sso=o),JSON.stringify(s)}return super.getItem(e)}setItem(e,t,r){if(e!==o.SESSION)return super.setItem(e,t,r);{const e=JSON.parse(t),r=1e3*e.expires_in,n=new Date(new Date(e.date_created).getTime()+r);super.setItem("fx.customer",e.session_token,{expires:n}),super.setItem("fx.customer.jwt",e.jwt,{expires:n}),super.setItem("fx.customer.start",e.date_created,{expires:n}),super.setItem("fx.customer.duration",String(e.expires_in),{expires:n}),e.sso&&super.setItem("fx.customer.sso",e.sso,{expires:n})}}clear(){for(let e=0;e<this.length;){const t=super.key(e);t.startsWith("fx.customer")?super.removeItem(t):e++}}}const h=new p;let d,m=e=>e;class g extends(i(r)){constructor(){var e;super(...arguments),e=this,this.__storage="local",this.__level=0,this.__base=location.origin,this.__api=this.__createAPIInstance(),this.__handleFetch=async function(t){if(!(t instanceof a))return;if(t.defaultPrevented)return;if(t.composedPath()[0]===e)return;t.preventDefault();const r=new a("fetch",{cancelable:!0,composed:!0,request:t.request,bubbles:!0,reject:e=>t.respondWith(Promise.reject(e)),resolve:n=>{"foxy://customer-api/session"===r.request.url&&e.requestUpdate(),401===n.status&&e.requestUpdate(),t.respondWith(Promise.resolve(n))}});e.dispatchEvent(r)&&r.respondWith(e.__handleRequest(r.request))}}static get properties(){return n(n({},super.properties),{},{storage:{type:String,noAccessor:!0},level:{type:Number,noAccessor:!0},base:{type:String,noAccessor:!0}})}get isLoggedIn(){return!!this.api.storage.getItem(o.SESSION)}get api(){return this.__api}get base(){return this.__base}set base(e){this.__base=e,this.__api=this.__createAPIInstance()}get level(){return this.__level}set level(e){this.__level=e,this.__api=this.__createAPIInstance()}get storage(){return this.__storage}set storage(e){this.__storage=e,this.__api=this.__createAPIInstance()}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__handleFetch)}render(){return s(d||(d=m` ${0} <slot></slot> `),this.renderTemplateOrSlot(this.isLoggedIn?"logged-in":"logged-out"))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__handleFetch)}__createAPIInstance(){const e={session:sessionStorage,cookie:h,local:localStorage};return new o({storage:e[this.storage],level:this.level,base:new URL(this.base)})}async __handleVirtualAuthSessionDelete(){return await this.api.signOut(),this.dispatchEvent(new g.SignOutEvent("signout")),this.requestUpdate(),new Response}async __handleVirtualAuthSessionPost(e){const t=await e.clone().json();if("password"!==t.type)throw new Error(`Unknown payload type ${t.type}`);let r,s;try{await this.api.signIn(t.credential),this.dispatchEvent(new g.SignInEvent("signin")),this.requestUpdate(),r=200,s=n({_links:{self:{href:e.url}}},t)}catch(e){if(!(e instanceof o.AuthError))throw e;if("UNAUTHORIZED"!==e.code)throw e;r=401,s={total:1,_embedded:{"fx:errors":[{message:e.message,logref:"unavailable",code:"invalid_credential_error"}]}}}return new Response(JSON.stringify(s),{status:r})}async __handleVirtualAuthRecoverPost(e){const t=await e.clone().json();if("email"===t.type)return await this.api.sendPasswordResetEmail(t.detail),new Response(JSON.stringify({_links:{self:{href:e.url}},email:t.email}));throw new Error(`Unknown payload type ${t.type}`)}async __handleRequest(e){const t=e.url,r=e.method;try{if("foxy://customer-api/session"===t){if("DELETE"===r)return this.__handleVirtualAuthSessionDelete();if("POST"===r)return this.__handleVirtualAuthSessionPost(e)}if("foxy://customer-api/recover"===t&&"POST"===r)return this.__handleVirtualAuthRecoverPost(e);const n=await this.api.fetch(e);return 401===n.status&&(this.api.storage.clear(),this.dispatchEvent(new g.SignOutEvent("signout")),this.requestUpdate()),n}catch(e){return new Response(null,{status:500})}}}g.SignOutEvent=class extends CustomEvent{},g.SignInEvent=class extends CustomEvent{};export{g as C};
@@ -0,0 +1,302 @@
1
+ import{k as e,P as t,A as a,L as s,j as i,h as r,_ as n}from"./shared-63eaded9.js";import{F as l}from"./shared-46ee137f.js";import{E as o,C as d,T as h}from"./shared-df573cea.js";import"./shared-f0a83bd6.js";import"./shared-36629ded.js";import{a as u}from"./shared-bb824ab4.js";import{h as c,P as p}from"./shared-ff79f3f9.js";import"./shared-ec861f31.js";import{p as m}from"./shared-11708514.js";import{Q as v,T as g,U as b,V as f,W as _,X as y,Y as x,Z as w,b as E,$ as k,a0 as T,a1 as $,a2 as A,a3 as S,a4 as C,a5 as V,m as I,a6 as M}from"./shared-5535f38f.js";import{c as z}from"./shared-e68b9c83.js";import{s as q}from"./shared-b0f0e8b5.js";import{i as L}from"./shared-756034e4.js";var j={raise:v,send:g,sendParent:b,sendUpdate:f,log:_,cancel:y,start:x,stop:w,assign:E,after:k,done:T,respond:$,forwardTo:A,escalate:S,choose:C,pure:V};const H=c`<dom-module id="lumo-text-area" theme-for="vaadin-text-area">
2
+ <template>
3
+ <style include="lumo-text-field">
4
+ [part="input-field"],
5
+ [part="input-field"] ::slotted(textarea) {
6
+ /* Equal to the implicit padding in vaadin-text-field */
7
+ padding-top: calc((var(--lumo-text-field-size) - 1em * var(--lumo-line-height-s)) / 2);
8
+ padding-bottom: calc((var(--lumo-text-field-size) - 1em * var(--lumo-line-height-s)) / 2);
9
+ height: auto;
10
+ box-sizing: border-box;
11
+ transition: background-color 0.1s;
12
+ line-height: var(--lumo-line-height-s);
13
+ }
14
+
15
+ :host(:not([readonly])) [part="input-field"]::after {
16
+ display: none;
17
+ }
18
+
19
+ :host([readonly]) [part="input-field"] {
20
+ border: 1px dashed var(--lumo-contrast-30pct);
21
+ }
22
+
23
+ :host([readonly]) [part="input-field"]::after {
24
+ border: none;
25
+ }
26
+
27
+ :host(:hover:not([readonly]):not([focused]):not([invalid])) [part="input-field"] {
28
+ background-color: var(--lumo-contrast-20pct);
29
+ }
30
+
31
+ @media (pointer: coarse) {
32
+ :host(:hover:not([readonly]):not([focused]):not([invalid])) [part="input-field"] {
33
+ background-color: var(--lumo-contrast-10pct);
34
+ }
35
+
36
+ :host(:active:not([readonly]):not([focused])) [part="input-field"] {
37
+ background-color: var(--lumo-contrast-20pct);
38
+ }
39
+ }
40
+
41
+ [part="value"],
42
+ [part="input-field"] ::slotted(textarea) {
43
+ line-height: inherit;
44
+ --_lumo-text-field-overflow-mask-image: none;
45
+ }
46
+
47
+ /* Vertically align icon prefix/suffix with the first line of text */
48
+ [part="input-field"] ::slotted(iron-icon) {
49
+ margin-top: calc((var(--lumo-icon-size-m) - 1em * var(--lumo-line-height-s)) / -2);
50
+ }
51
+
52
+ [part="input-field"] [part="value"],
53
+ [part="input-field"] ::slotted(textarea) {
54
+ white-space: pre-wrap; /* override \`nowrap\` from <vaadin-text-field> */
55
+ align-self: stretch; /* override \`baseline\` from <vaadin-text-field> */
56
+ }
57
+ </style>
58
+ </template>
59
+ </dom-module>`;document.head.appendChild(H.content);
60
+ /**
61
+ @license
62
+ Copyright (c) 2017 Vaadin Ltd.
63
+ This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
64
+ */
65
+ class F extends(o(u(d(h(p))))){static get template(){return c`
66
+ <style include="vaadin-text-field-shared-styles">
67
+ .vaadin-text-area-container {
68
+ flex: auto;
69
+ max-height: inherit; /* MSIE 11 */
70
+ min-height: inherit; /* MSIE 11 */
71
+ }
72
+
73
+ /* The label, helper text and the error message should neither grow nor shrink. */
74
+ [part="label"],
75
+ [part="helper-text"],
76
+ [part="error-message"] {
77
+ flex: none;
78
+ }
79
+
80
+ [part="input-field"] {
81
+ overflow: auto;
82
+ -webkit-overflow-scrolling: touch;
83
+ }
84
+
85
+ [part="value"] {
86
+ resize: none;
87
+ }
88
+
89
+ [part="value"],
90
+ [part="input-field"] ::slotted(*) {
91
+ align-self: flex-start;
92
+ }
93
+
94
+ @keyframes vaadin-text-area-appear {
95
+ to {
96
+ opacity: 1;
97
+ }
98
+ }
99
+
100
+ :host {
101
+ animation: 1ms vaadin-text-area-appear;
102
+ }
103
+
104
+ /* Workaround https://bugzilla.mozilla.org/show_bug.cgi?id=1739079 */
105
+ :host([disabled]) [part='value'] {
106
+ user-select: none;
107
+ }
108
+ </style>
109
+
110
+ <div class="vaadin-text-area-container">
111
+
112
+ <label part="label" on-click="focus" id="[[_labelId]]">[[label]]</label>
113
+
114
+ <div part="input-field" id="[[_inputId]]">
115
+
116
+ <slot name="prefix"></slot>
117
+
118
+ <slot name="textarea">
119
+ <textarea part="value"></textarea>
120
+ </slot>
121
+
122
+ <div part="clear-button" id="clearButton" role="button" aria-label\$="[[i18n.clear]]"></div>
123
+ <slot name="suffix"></slot>
124
+
125
+ </div>
126
+
127
+ <div part="helper-text" id="[[_helperTextId]]">
128
+ <slot name="helper">[[helperText]]</slot>
129
+ </div>
130
+
131
+ <div part="error-message" id="[[_errorId]]" aria-live="assertive" aria-hidden\$="[[_getErrorMessageAriaHidden(invalid, errorMessage, _errorId)]]">[[errorMessage]]</div>
132
+
133
+ </div>
134
+ `}static get is(){return"vaadin-text-area"}static get version(){return"2.9.0"}static get properties(){return{pattern:{type:String}}}static get observers(){return["_textAreaValueChanged(value)"]}ready(){super.ready(),this._updateHeight(),this.addEventListener("animationend",this._onAnimationEnd)}_onAnimationEnd(e){0===e.animationName.indexOf("vaadin-text-area-appear")&&this._updateHeight()}get _slottedTagName(){return"textarea"}_textAreaValueChanged(e){this._updateHeight()}_updateHeight(){const e=this.root.querySelector("[part=input-field]"),t=e.scrollTop,a=this.inputElement,s=this.value?this.value.length:0;if(this._oldValueLength>=s){const t=getComputedStyle(e).height,s=getComputedStyle(a).width;e.style.display="block",e.style.height=t,a.style.maxWidth=s,a.style.height="auto"}this._oldValueLength=s;const i=a.scrollHeight;i>a.clientHeight&&(a.style.height=i+"px"),a.style.removeProperty("max-width"),e.style.removeProperty("display"),e.style.removeProperty("height"),e.scrollTop=t,this._dispatchIronResizeEventIfNeeded("InputHeight",i)}checkValidity(){if(!super.checkValidity())return!1;if(!this.pattern||!this.inputElement.value)return!0;try{const e=this.inputElement.value.match(this.pattern);return!!e&&e[0]===e.input}catch(e){return!0}}}customElements.define(F.is,F);class O extends CustomEvent{constructor(e){super("change",{detail:e})}}const P=c`<dom-module id="lumo-custom-field" theme-for="vaadin-custom-field">
135
+ <template>
136
+ <style include="lumo-required-field">
137
+ :host {
138
+ --lumo-text-field-size: var(--lumo-size-m);
139
+ color: var(--lumo-body-text-color);
140
+ font-size: var(--lumo-font-size-m);
141
+ /* align with text-field height + vertical paddings */
142
+ line-height: calc(var(--lumo-text-field-size) + 2 * var(--lumo-space-xs));
143
+ font-family: var(--lumo-font-family);
144
+ -webkit-font-smoothing: antialiased;
145
+ -moz-osx-font-smoothing: grayscale;
146
+ -webkit-tap-highlight-color: transparent;
147
+ padding: 0;
148
+ }
149
+
150
+ :host::before {
151
+ margin-top: var(--lumo-space-xs);
152
+ height: var(--lumo-text-field-size);
153
+ box-sizing: border-box;
154
+ display: inline-flex;
155
+ align-items: center;
156
+ }
157
+
158
+ /* align with text-field label */
159
+ :host([has-label]) [part="label"] {
160
+ padding-bottom: calc(0.5em - var(--lumo-space-xs));
161
+ }
162
+
163
+ :host(:not([has-label])) [part="label"],
164
+ :host(:not([has-label]))::before {
165
+ display: none;
166
+ }
167
+
168
+ /* align with text-field error message */
169
+ :host([invalid]) [part="error-message"]:not(:empty)::before {
170
+ height: calc(0.4em - var(--lumo-space-xs));
171
+ }
172
+
173
+ :host([focused]:not([readonly]):not([disabled])) [part="label"] {
174
+ color: var(--lumo-primary-text-color);
175
+ }
176
+
177
+ :host(:hover:not([readonly]):not([disabled]):not([focused])) [part="label"],
178
+ :host(:hover:not([readonly]):not([disabled]):not([focused])) [part="helper-text"],
179
+ :host(:hover:not([readonly]):not([disabled]):not([focused])) [part="helper-text"] ::slotted(*) {
180
+ color: var(--lumo-body-text-color);
181
+ }
182
+
183
+ :host([has-helper]) [part="helper-text"]::before {
184
+ content: "";
185
+ display: block;
186
+ height: 0.4em;
187
+ }
188
+
189
+ [part="helper-text"],
190
+ [part="helper-text"] ::slotted(*) {
191
+ display: block;
192
+ color: var(--lumo-secondary-text-color);
193
+ font-size: var(--lumo-font-size-xs);
194
+ line-height: var(--lumo-line-height-xs);
195
+ margin-left: calc(var(--lumo-border-radius-m) / 4);
196
+ transition: color 0.2s;
197
+ }
198
+
199
+ /* helper-text position */
200
+
201
+ :host([has-helper][theme~="helper-above-field"]) [part="helper-text"]::before {
202
+ display: none;
203
+ }
204
+
205
+ :host([has-helper][theme~="helper-above-field"]) [part="helper-text"]::after {
206
+ content: "";
207
+ display: block;
208
+ height: 0.4em;
209
+ }
210
+
211
+ :host([has-helper][theme~="helper-above-field"]) [part="label"] {
212
+ order: 0;
213
+ padding-bottom: 0.4em;
214
+ }
215
+
216
+ :host([has-helper][theme~="helper-above-field"]) [part="helper-text"] {
217
+ order: 1;
218
+ }
219
+
220
+ :host([has-helper][theme~="helper-above-field"]) .inputs-wrapper {
221
+ order: 2;
222
+ }
223
+
224
+ :host([has-helper][theme~="helper-above-field"]) [part="error-message"] {
225
+ order: 3;
226
+ }
227
+
228
+ /* Touch device adjustment */
229
+ @media (pointer: coarse) {
230
+ :host(:hover:not([readonly]):not([disabled]):not([focused])) [part="label"] {
231
+ color: var(--lumo-secondary-text-color);
232
+ }
233
+ }
234
+
235
+ /* Disabled style */
236
+
237
+ :host([disabled]) [part="label"] {
238
+ color: var(--lumo-disabled-text-color);
239
+ -webkit-text-fill-color: var(--lumo-disabled-text-color);
240
+ }
241
+
242
+ /* Small theme */
243
+
244
+ :host([theme~="small"]) {
245
+ font-size: var(--lumo-font-size-s);
246
+ --lumo-text-field-size: var(--lumo-size-s);
247
+ }
248
+
249
+ :host([theme~="small"][has-label]) [part="label"] {
250
+ font-size: var(--lumo-font-size-xs);
251
+ }
252
+
253
+ :host([theme~="small"][has-label]) [part="error-message"] {
254
+ font-size: var(--lumo-font-size-xxs);
255
+ }
256
+ </style>
257
+ </template>
258
+ </dom-module>`;document.head.appendChild(P.content);const N=e=>class extends e{static get properties(){return{inputs:{type:Array,readOnly:!0},i18n:{type:Object,value:()=>({parseValue:function(e){return e.split("\t")},formatValue:function(e){return e.join("\t")}})},__errorId:String,__labelId:String,__helperTextId:String,__hasSlottedHelper:Boolean}}connectedCallback(){super.connectedCallback(),this.__observer&&this.__observer.connect()}disconnectedCallback(){super.disconnectedCallback(),this.__observer&&this.__observer.disconnect()}ready(){super.ready(),this.__setInputsFromSlot(),this.__observer=new l(this.$.slot,(()=>{this.__setInputsFromSlot()})),this.$.helperSlot.addEventListener("slotchange",this.__onHelperSlotChange.bind(this)),this.__onHelperSlotChange();const e=/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor);this.addEventListener("keydown",(t=>{if(9===t.keyCode){if("slot"===t.target.parentElement.localName&&!t.defaultPrevented&&e){const e=t.target.parentElement;e.setAttribute("tabindex",-1),setTimeout((()=>e.removeAttribute("tabindex")))}this.inputs.indexOf(t.target)<this.inputs.length-1&&!t.shiftKey||this.inputs.indexOf(t.target)>0&&t.shiftKey?this.dispatchEvent(new CustomEvent("internal-tab")):this.__setValue()}})),this.addEventListener("focusin",(()=>this.setAttribute("focused",""))),this.addEventListener("focusout",(e=>{const t=this.getRootNode().activeElement;this.inputs.some((e=>t===e||e.shadowRoot&&e.shadowRoot.contains(t)))||this.removeAttribute("focused")}));var t=N._uniqueId=1+N._uniqueId||1;this.__errorId=`${this.constructor.is}-error-${t}`,this.__labelId=`${this.constructor.is}-label-${t}`,this.__helperTextId=`${this.constructor.is}-helper-${t}`}focus(){this.inputs&&this.inputs[0]&&this.inputs[0].focus()}__updateValue(e){e&&e.stopPropagation(),this.__setValue(),this.validate(),this.dispatchEvent(new CustomEvent("change",{bubbles:!0,cancelable:!1,detail:{value:this.value}}))}__setValue(){this.__settingValue=!0,this.value=this.i18n.formatValue.apply(this,[this.inputs.map((e=>e.value))]),this.__settingValue=!1}__queryAllAssignedElements(e){const t=[];let a;return"SLOT"===e.tagName?a=e.assignedNodes({flatten:!0}).filter((e=>e.nodeType===Node.ELEMENT_NODE)):(t.push(e),a=Array.from(e.children)),a.forEach((e=>t.push(...this.__queryAllAssignedElements(e)))),t}__getInputsFromSlot(){return this.__queryAllAssignedElements(this.$.slot).filter((e=>e.validate||e.checkValidity))}__setInputsFromSlot(){this._setInputs(this.__getInputsFromSlot()),this.__setValue()}__valueChanged(e,t){if(this.__settingValue||!this.inputs)return;const a=this.i18n.parseValue(e);a&&0!=a.length?(this.inputs.forEach(((e,t)=>e.value=a[t])),void 0!==t&&this.validate()):console.warn("Value parser has not provided values array")}__onHelperSlotChange(){const e=this.$.helperSlot.assignedNodes({flatten:!0});this.__hasSlottedHelper=e.filter((e=>3!==e.nodeType)).length>0,this.__hasSlottedHelper?this.setAttribute("has-helper","slotted"):""!==this.helperText&&null!==this.helperText||this.removeAttribute("has-helper")}}
259
+ /**
260
+ @license
261
+ Copyright (c) 2018 Vaadin Ltd.
262
+ This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
263
+ */;class U extends(o(N(h(p)))){static get template(){return c`
264
+ <style>
265
+ :host {
266
+ display: inline-flex;
267
+ }
268
+
269
+ :host::before {
270
+ content: "\\2003";
271
+ width: 0;
272
+ display: inline-block;
273
+ /* Size and position this element on the same vertical position as the input-field element
274
+ to make vertical align for the host element work as expected */
275
+ }
276
+
277
+ :host([hidden]) {
278
+ display: none !important;
279
+ }
280
+
281
+ .container {
282
+ width: 100%;
283
+ display: flex;
284
+ flex-direction: column;
285
+ }
286
+
287
+ .inputs-wrapper {
288
+ flex: none;
289
+ }
290
+ </style>
291
+
292
+ <div class="container">
293
+ <label part="label" on-click="focus" id="[[__labelId]]">[[label]]</label>
294
+ <div class="inputs-wrapper" on-change="__updateValue">
295
+ <slot id="slot"></slot>
296
+ </div>
297
+ <div part="helper-text" id="[[__helperTextId]]">
298
+ <slot name="helper" id="helperSlot">[[helperText]]</slot>
299
+ </div>
300
+ <div part="error-message" id="[[__errorId]]" aria-live="assertive" aria-hidden\$="[[__getErrorMessageAriaHidden(invalid, errorMessage, __errorId)]]">[[errorMessage]]</div>
301
+ </div>
302
+ `}static get is(){return"vaadin-custom-field"}static get version(){return"1.3.0"}static get properties(){return{label:{type:String,value:"",observer:"_labelChanged"},name:String,required:{type:Boolean,reflectToAttribute:!0},value:{type:String,observer:"__valueChanged",notify:!0},invalid:{type:Boolean,reflectToAttribute:!0,notify:!0,value:!1,observer:"__invalidChanged"},errorMessage:{type:String,value:"",observer:"__errorMessageChanged"},helperText:{type:String,value:"",observer:"__helperTextChanged"}}}static get observers(){return["__getActiveErrorId(invalid, errorMessage, __errorId, helperText, __helperTextId, __hasSlottedHelper)","__getActiveLabelId(label, __labelId)","__toggleHasValue(value)"]}__invalidChanged(e){this.__setOrToggleAttribute("aria-invalid",e,this)}__errorMessageChanged(e){this.__setOrToggleAttribute("has-error-message",!!e,this)}__helperTextChanged(e){this.__setOrToggleAttribute("has-helper",!!e,this)}__toggleHasValue(e){null!==e&&""!==e.trim()?this.setAttribute("has-value",""):this.removeAttribute("has-value")}_labelChanged(e){""!==e&&null!=e?this.setAttribute("has-label",""):this.removeAttribute("has-label")}validate(){return!(this.invalid=!this.checkValidity())}checkValidity(){return!(this.inputs.filter((e=>!(e.validate||e.checkValidity).call(e))).length||this.required&&!this.value.trim())}__setOrToggleAttribute(e,t,a){e&&a&&a.hasAttribute(e)===!t&&(t?a.setAttribute(e,"boolean"==typeof t?"":t):a.removeAttribute(e))}__getActiveErrorId(e,t,a,s,i,r){const n=[];(s||r)&&n.push(i),t&&e&&n.push(a),n.length>0?this.setAttribute("aria-describedby",n.join(" ")):this.removeAttribute("aria-describedby")}__getActiveLabelId(e,t){this.__setOrToggleAttribute("aria-labelledby",e?t:void 0,this)}__getErrorMessageAriaHidden(e,t,a){return(!(t&&e?a:void 0)).toString()}}customElements.define(U.is,U);class D extends CustomEvent{constructor(e){super("change",{detail:e})}}class B extends D{}const R=e((e=>s=>{const{element:i,name:r,strings:n}=s.committer;if(2!==n.length||""!==n[0]||""!==n[1])throw new Error("live directive bindings must not contain any static values");if(s.committer.parts.length>1)throw new Error("live directive must be the only directive for an attribute or property");if(s instanceof t)i[r]!==e&&s.setValue(e);else{if(!(s instanceof a))throw new Error("live directive can only be used on attributes or properties");i.getAttribute(r)!==e&&s.setValue(e)}}));let Y,W,X=e=>e;class K extends s{constructor(){super(...arguments),this.label="",this.value="",this.disabled=!1,this.readonly=!1,this.errorMessage="",this.__i18n={formatValue:e=>e.join(""),parseValue:e=>{const{count:t,units:a}=m(e);return[t.toString(),a]}},this.__getItems=I((e=>{const t=m(e).count;return[{value:"d",label:this.__t("day",{count:t})},{value:"w",label:this.__t("week",{count:t})},{value:"m",label:this.__t("month",{count:t})},{value:"y",label:this.__t("year",{count:t})}]}))}static get properties(){return{checkValidity:{attribute:!1},errorMessage:{type:String,attribute:"error-message"},disabled:{type:Boolean,reflect:!0},readonly:{type:Boolean,reflect:!0},label:{type:String},value:{type:String},lang:{type:String}}}static get styles(){return i(Y||(Y=X`:host{display:block}vaadin-custom-field{width:100%;font-size:0;line-height:0;padding-top:0!important}vaadin-custom-field::part(label){padding-bottom:var(--lumo-space-s)}vaadin-custom-field::part(error-message)[aria-hidden=false]{padding-top:var(--lumo-space-xs)}vaadin-combo-box,vaadin-integer-field{width:calc(50% - (var(--lumo-space-s)/ 2))}vaadin-integer-field{margin-right:var(--lumo-space-s);padding:0}vaadin-combo-box::part(text-field){padding:0}`))}connectedCallback(){super.connectedCallback(),this.__untrackTranslations=customElements.get("foxy-i18n").onTranslationChange((()=>{var e,t;null===(t=(e=this.__getItems.cache).clear)||void 0===t||t.call(e),this.requestUpdate()}))}render(){return r(W||(W=X` <vaadin-custom-field data-testid="field" .i18n="${0}" .label="${0}" .value="${0}" ?disabled="${0}" ?readonly="${0}" .errorMessage="${0}" .checkValidity="${0}" @change="${0}"> <vaadin-integer-field data-testid="value" min="1" max="999" has-controls prevent-invalid-input ?invalid="${0}" ?disabled="${0}" ?readonly="${0}"> </vaadin-integer-field> <vaadin-combo-box data-testid="units" item-value-path="value" item-label-path="label" .items="${0}" ?invalid="${0}" ?disabled="${0}" ?readonly="${0}"> </vaadin-combo-box> </vaadin-custom-field> `),this.__i18n,this.label,R(this.value),this.disabled,this.readonly,this.errorMessage,this.checkValidity,this.__handleChange,!this.checkValidity(),this.disabled,this.readonly,this.__getItems(this.value),!this.checkValidity(),this.disabled,this.readonly)}updated(e){super.updated(e);const t=this.renderRoot.firstElementChild;t.value!==this.value&&(t.value=this.value)}disconnectedCallback(){var e;super.disconnectedCallback(),null===(e=this.__untrackTranslations)||void 0===e||e.call(this)}checkValidity(){return!0}get __t(){return customElements.get("foxy-i18n").i18next.getFixedT(this.lang)}__handleChange(e){const t=e.target;this.value=t.value,this.dispatchEvent(new B(this.value))}}const G=M({id:"choice",type:"parallel",context:{defaultCustomValue:"",customValue:null,custom:!1,items:[],value:null,type:"text",min:null,max:null},states:{mutability:{initial:"editable",states:{editable:{},readonly:{}},on:{SET_READONLY:[{target:".editable",cond:"isPayloadFalsey"},{target:".readonly",cond:"isPayloadTruthy"}]}},interactivity:{initial:"enabled",states:{enabled:{},disabled:{}},on:{SET_DISABLED:[{target:".enabled",cond:"isPayloadFalsey"},{target:".disabled",cond:"isPayloadTruthy"}]}},selection:{initial:"unknown",states:{unknown:{always:[{target:"multiple",cond:"isValueArray"},{target:"single"}]},none:{},single:{},multiple:{}}},extension:{initial:"unknown",states:{unknown:{always:[{target:"present",cond:"hasCustom"},{target:"absent"}]},absent:{},present:{initial:"unknown",states:{unknown:{always:[{target:"selected",cond:"hasCustomValue"},{target:"available"}]},available:{on:{SET_TYPE:{actions:"setType"}}},selected:{initial:"unknown",states:{unknown:{always:[{target:"integer",cond:"showsIntegerField"},{target:"textarea",cond:"showsTextarea"},{target:"frequency",cond:"showsFrequency"},{target:"text"}]},text:{},frequency:{},textarea:{},integer:{type:"parallel",states:{min:{initial:"unknown",states:{unknown:{always:[{target:"custom",cond:"hasMinConstraint"},{target:"none"}]},none:{},custom:{}}},max:{initial:"unknown",states:{unknown:{always:[{target:"custom",cond:"hasMaxConstraint"},{target:"none"}]},none:{},custom:{}}}}}}}}}}}},on:{SET_DEFAULT_CUSTOM_VALUE:{actions:"setDefaultCustomValue"},SET_CUSTOM:{actions:"setCustom",target:[".selection.unknown",".extension.unknown"]},SET_VALUE:{actions:"setValue",target:[".selection.unknown",".extension.unknown"]},SET_ITEMS:{actions:"setItems",target:[".selection.unknown",".extension.unknown"]},SET_TYPE:{actions:"setType",target:".extension.unknown"},SET_MIN:{actions:"setMin",target:".extension.unknown"},SET_MAX:{actions:"setMax",target:".extension.unknown"}}},{guards:{isPayloadFalsey:(e,t)=>!t.data,isPayloadTruthy:(e,t)=>!!t.data,isValueArray:e=>Array.isArray(e.value),showsIntegerField:e=>"integer"===e.type,showsFrequency:e=>"frequency"===e.type,showsTextarea:e=>"textarea"===e.type,hasMinConstraint:e=>"number"==typeof e.min,hasMaxConstraint:e=>"number"==typeof e.max,hasCustomValue:e=>"string"==typeof e.customValue,hasCustom:e=>e.custom},actions:{setDefaultCustomValue:j.assign({defaultCustomValue:(e,t)=>t.data}),setValue:j.assign({value:(e,t)=>t.data,customValue:(e,t)=>Array.isArray(t.data)?t.data.find((t=>!e.items.includes(t))):e.items.includes(t.data)?null:t.data}),setCustom:j.assign({custom:(e,t)=>t.data}),setItems:j.assign({items:(e,t)=>t.data}),setType:j.assign({type:(e,t)=>t.data}),setMin:j.assign({min:(e,t)=>t.data}),setMax:j.assign({max:(e,t)=>t.data})}});let Q,Z,J,ee,te,ae,se,ie,re,ne,le,oe,de,he=e=>e;const ue=`@foxy.io/elements::other[${(Math.pow(10,10)*Math.random()).toFixed(0)}]`;class ce extends z{constructor(){super(...arguments),this.getText=e=>e,this.__service=L(G).onChange((()=>this.requestUpdate())).onTransition((({changed:e})=>e&&this.requestUpdate())).start()}static get scopedElements(){return{"vaadin-integer-field":customElements.get("vaadin-integer-field"),"vaadin-text-field":customElements.get("vaadin-text-field"),"x-frequency-input":K,"vaadin-text-area":customElements.get("vaadin-text-area"),"iron-icon":customElements.get("iron-icon")}}static get styles(){return[super.styles,i(J||(J=he`:host{--item-width:calc((var(--lumo-space-m) * 2) + 1.25rem)}.ml-xxl{margin-left:var(--item-width)}.item{height:var(--lumo-size-l);width:var(--item-width)}.radio{height:1.25rem;width:1.25rem}.check{height:1.125rem;width:1.125rem}.dot{height:.5rem;width:.5rem}`))]}static get properties(){return n(n({},super.properties),{},{defaultCustomValue:{type:String,attribute:"default-custom-value"},disabled:{type:Boolean},readonly:{type:Boolean},custom:{type:Boolean},type:{type:String},min:{type:Number},max:{type:Number},value:{type:Array},items:{type:Array},getText:{attribute:!1}})}get defaultCustomValue(){return this.__service.state.context.defaultCustomValue}set defaultCustomValue(e){this.__service.send("SET_DEFAULT_CUSTOM_VALUE",{data:e})}get readonly(){return this.__service.state.matches("mutability.readonly")}set readonly(e){this.__service.send("SET_READONLY",{data:e})}get disabled(){return this.__service.state.matches("interactivity.disabled")}set disabled(e){this.__service.send("SET_DISABLED",{data:e})}get custom(){return this.__service.state.matches("extension.present")}set custom(e){this.__service.send("SET_CUSTOM",{data:e})}get type(){return this.__service.state.context.type}set type(e){this.__service.send("SET_TYPE",{data:e})}get min(){return this.__service.state.context.min}set min(e){this.__service.send("SET_MIN",{data:e})}get max(){return this.__service.state.context.max}set max(e){this.__service.send("SET_MAX",{data:e})}get value(){return this.__service.state.context.value}set value(e){this.__service.send("SET_VALUE",{data:e})}get items(){return this.__service.state.context.items}set items(e){this.__service.send("SET_ITEMS",{data:e})}render(){const e=this.custom?[...this.items,ue]:this.items,t=Array.isArray(this.value),a=this.__service.state.matches("extension.present.selected"),s=r(ee||(ee=he` ${0} `),e.map(((e,s,i)=>{var n;const l=this.custom&&s===i.length-1,o=l?a:t?!!(null===(n=this.value)||void 0===n?void 0:n.includes(e)):e===String(this.value),d=this.disabled||!this._isI18nReady,h=q({value:l?ue:e,name:t?e:"choice","data-testid":`item-${e}`,"?disabled":d,"@change":t=>{if(this.readonly)return t.preventDefault();const a=t.target.checked,s=e===ue?this.defaultCustomValue:e,i=this.value;Array.isArray(i)?this.value=e===ue?a?[...i,s]:i.slice(0,i.length-1):a?[s,...i]:i.filter((e=>e!==s)):this.value=a?s:null,this.dispatchEvent(new O(this.value))}}),u=r(te||(te=he` <div> ${0} </div> `),e===ue?this._t("choice.other").toString():r(ae||(ae=he`<slot name="${0}">${0}</slot>`),`${e}-label`,this.getText(e)));return r(se||(se=he` <div class="ml-xxl border-t border-contrast-10 ${0}"></div> ${0} <div class="mr-m ml-xxl"> ${0} ${0} </div> `),s?"":"hidden",t?function(e,t,a,s,i){const n="transition ease-in-out duration-200",l=`${n} transform ${a?"scale-100":"scale-0"} ${e?"text-contrast-70":"text-tint"}`;return r(Z||(Z=he` <label class="group flex items-center ${0}"> <div class="item flex items-center justify-center flex-shrink-0 text-primary-contrast"> <div class="check rounded-s ${0} ${0} ${0} focus-within-shadow-outline"> <iron-icon icon="lumo:checkmark" class="block w-full h-full ${0}"></iron-icon> <input type="checkbox" class="sr-only" .checked="${0}" ...="${0}"> </div> </div> <div class="font-lumo leading-m ${0}">${0}</div> </label> `),t||e?"":"cursor-pointer","border "+(e?"border-dashed border-contrast-30":"border-transparent"),n,e?"":t?a?"bg-primary-50":"bg-contrast-10":a?"bg-primary":"bg-contrast-20 group-hover-bg-contrast-30",l,a,s,t?"text-disabled":e?"text-secondary":"text-body",i)}(this.readonly,d,o,h,u):function(e,t,a,s,i){const n="transition ease-in-out duration-200",l=`${n} ${t||e?"":"shadow-xs"} transform ${a?"scale-100":"scale-0"} ${e?"bg-contrast-70":"bg-tint"}`;return r(Q||(Q=he` <label class="group flex items-center ${0}"> <div class="item flex items-center justify-center flex-shrink-0"> <div class="flex radio rounded-full ${0} ${0} ${0} focus-within-shadow-outline"> <div class="dot m-auto rounded-full ${0}"></div> <input type="radio" class="sr-only" .checked="${0}" ...="${0}"> </div> </div> <div class="font-lumo leading-m ${0}">${0}</div> </label> `),t||e?"":"cursor-pointer","border "+(e?"border-dashed border-contrast-30":"border-transparent"),n,e?"":t?a?"bg-primary-50":"bg-contrast-10":a?"bg-primary":"bg-contrast-20 group-hover-bg-contrast-30",l,a,s,t?"text-disabled":e?"text-secondary":"text-body",i)}(this.readonly,d,o,h,u),e===ue&&a?this.__field:"",e!==ue?r(ie||(ie=he`<slot name="${0}"></slot>`),e):"")})));return r(re||(re=he`<form>${0}</form> `),s)}get __field(){const e=q({placeholder:this._t("choice.other").toString(),class:"w-full mb-m",value:this.__service.state.context.customValue,max:this.max,min:this.min,"?disabled":this.disabled,"?readonly":this.readonly,"data-testid":"field","@change":e=>{e.stopPropagation();const t=e.target.value;Array.isArray(this.value)?this.value=this.value.slice(0,this.value.length-1).concat(t):this.value=t,this.dispatchEvent(new O(this.value))}});return"frequency"===this.type?r(ne||(ne=he`<x-frequency-input ...="${0}"></x-frequency-input>`),e):"integer"===this.type?r(le||(le=he`<vaadin-integer-field ...="${0}" has-controls></vaadin-integer-field>`),e):"textarea"===this.type?r(oe||(oe=he`<vaadin-text-area ...="${0}"></vaadin-text-area>`),e):r(de||(de=he`<vaadin-text-field ...="${0}"></vaadin-text-field>`),e)}}export{ce as C,D,K as F,U as a,O as b,j as c};