@foxy.io/elements 1.26.0 → 1.27.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +1 -1
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-admin-subscription-card.js +1 -1
  5. package/dist/cdn/foxy-api-browser.js +1 -1
  6. package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
  7. package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
  8. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  9. package/dist/cdn/foxy-attribute-card.js +1 -1
  10. package/dist/cdn/foxy-attribute-form.js +1 -1
  11. package/dist/cdn/foxy-billing-address-card.js +1 -1
  12. package/dist/cdn/foxy-cancellation-form.js +1 -1
  13. package/dist/cdn/foxy-cart-card.js +1 -1
  14. package/dist/cdn/foxy-cart-form.js +1 -1
  15. package/dist/cdn/foxy-client-card.js +1 -1
  16. package/dist/cdn/foxy-client-form.js +1 -1
  17. package/dist/cdn/foxy-collection-page.js +1 -1
  18. package/dist/cdn/foxy-collection-pages.js +1 -1
  19. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  20. package/dist/cdn/foxy-coupon-card.js +1 -1
  21. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  22. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  23. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  24. package/dist/cdn/foxy-coupon-form.js +1 -1
  25. package/dist/cdn/foxy-custom-field-card.js +1 -1
  26. package/dist/cdn/foxy-custom-field-form.js +1 -1
  27. package/dist/cdn/foxy-customer-api.js +1 -1
  28. package/dist/cdn/foxy-customer-card.js +1 -1
  29. package/dist/cdn/foxy-customer-form.js +1 -1
  30. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  31. package/dist/cdn/foxy-customer-portal.js +2 -2
  32. package/dist/cdn/foxy-customer.js +3 -3
  33. package/dist/cdn/foxy-customers-table.js +1 -1
  34. package/dist/cdn/foxy-discount-builder.js +1 -1
  35. package/dist/cdn/foxy-discount-card.js +1 -1
  36. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  37. package/dist/cdn/foxy-donation.js +1 -1
  38. package/dist/cdn/foxy-downloadable-card.js +1 -1
  39. package/dist/cdn/foxy-downloadable-form.js +1 -1
  40. package/dist/cdn/foxy-email-template-card.js +1 -1
  41. package/dist/cdn/foxy-email-template-form.js +1 -1
  42. package/dist/cdn/foxy-error-entry-card.js +1 -1
  43. package/dist/cdn/foxy-filter-attribute-card.js +1 -1
  44. package/dist/cdn/foxy-filter-attribute-form.js +1 -1
  45. package/dist/cdn/foxy-form-dialog.js +1 -1
  46. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  47. package/dist/cdn/foxy-gift-card-card.js +1 -1
  48. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  49. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  50. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  51. package/dist/cdn/foxy-gift-card-form.js +1 -1
  52. package/dist/cdn/foxy-i18n-editor.js +2 -2
  53. package/dist/cdn/foxy-i18n.js +1 -1
  54. package/dist/cdn/foxy-integration-card.js +1 -1
  55. package/dist/cdn/foxy-integration-form.js +1 -1
  56. package/dist/cdn/foxy-item-card.js +1 -1
  57. package/dist/cdn/foxy-item-category-card.js +1 -1
  58. package/dist/cdn/foxy-item-category-form.js +1 -1
  59. package/dist/cdn/foxy-item-form.js +4 -4
  60. package/dist/cdn/foxy-item-option-card.js +1 -1
  61. package/dist/cdn/foxy-item-option-form.js +1 -1
  62. package/dist/cdn/foxy-items-form.js +1 -1
  63. package/dist/cdn/foxy-native-integration-card.js +1 -1
  64. package/dist/cdn/foxy-native-integration-form.js +1 -1
  65. package/dist/cdn/foxy-nucleon-element.js +1 -1
  66. package/dist/cdn/foxy-pagination.js +1 -1
  67. package/dist/cdn/foxy-passkey-card.js +1 -1
  68. package/dist/cdn/foxy-passkey-form.js +1 -1
  69. package/dist/cdn/foxy-payment-card.js +1 -1
  70. package/dist/cdn/foxy-payment-method-card.js +1 -1
  71. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  72. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  73. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  74. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  75. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  76. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  77. package/dist/cdn/foxy-payments-api.js +1 -1
  78. package/dist/cdn/foxy-query-builder.js +1 -1
  79. package/dist/cdn/foxy-report-form.js +11 -11
  80. package/dist/cdn/foxy-reports-table.js +1 -1
  81. package/dist/cdn/foxy-shipment-card.js +1 -1
  82. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  83. package/dist/cdn/foxy-sign-in-form.js +1 -1
  84. package/dist/cdn/foxy-spinner.js +2 -2
  85. package/dist/cdn/foxy-store-card.js +1 -1
  86. package/dist/cdn/foxy-store-form.js +1 -1
  87. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  88. package/dist/cdn/foxy-subscription-card.js +1 -1
  89. package/dist/cdn/foxy-subscription-form.js +1 -5
  90. package/dist/cdn/foxy-subscription-settings-form.js +1 -1
  91. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  92. package/dist/cdn/foxy-swipe-actions.js +1 -1
  93. package/dist/cdn/foxy-table.js +1 -1
  94. package/dist/cdn/foxy-tax-card.js +1 -1
  95. package/dist/cdn/foxy-tax-form.js +1 -1
  96. package/dist/cdn/foxy-template-config-form.js +1 -1
  97. package/dist/cdn/foxy-template-form.js +1 -1
  98. package/dist/cdn/foxy-template-set-card.js +1 -1
  99. package/dist/cdn/foxy-template-set-form.js +1 -1
  100. package/dist/cdn/foxy-transaction-card.js +1 -1
  101. package/dist/cdn/foxy-transaction.js +1 -1
  102. package/dist/cdn/foxy-transactions-table.js +7 -7
  103. package/dist/cdn/foxy-user-card.js +1 -1
  104. package/dist/cdn/foxy-user-form.js +1 -1
  105. package/dist/cdn/foxy-users-table.js +1 -1
  106. package/dist/cdn/foxy-webhook-card.js +1 -1
  107. package/dist/cdn/foxy-webhook-form.js +1 -1
  108. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  109. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  110. package/dist/cdn/{shared-2787655b.js → shared-030f561a.js} +1 -1
  111. package/dist/cdn/shared-0cbb19f4.js +2 -0
  112. package/dist/cdn/{shared-38499b40.js → shared-0cf90158.js} +1 -1
  113. package/dist/cdn/{shared-b06b1473.js → shared-1024766f.js} +1 -1
  114. package/dist/cdn/{shared-360e1c8e.js → shared-12390d6f.js} +1 -1
  115. package/dist/cdn/{shared-942ef1fc.js → shared-12ad8924.js} +2 -2
  116. package/dist/cdn/shared-150f5214.js +1 -0
  117. package/dist/cdn/shared-2062c274.js +1 -0
  118. package/dist/cdn/{shared-f3b35364.js → shared-22ba9566.js} +1 -1
  119. package/dist/cdn/{shared-69c67952.js → shared-2376abfc.js} +7 -7
  120. package/dist/cdn/{shared-76812651.js → shared-26f4b6bf.js} +1 -1
  121. package/dist/cdn/{shared-f7365ea5.js → shared-2920b595.js} +1 -1
  122. package/dist/cdn/{shared-d7be11de.js → shared-2bf89a21.js} +1 -1
  123. package/dist/cdn/{shared-550f9cae.js → shared-331a223c.js} +2 -2
  124. package/dist/cdn/{shared-6da29a49.js → shared-33d8cbfb.js} +1 -1
  125. package/dist/cdn/{shared-213c60d3.js → shared-352c79a6.js} +1 -1
  126. package/dist/cdn/{shared-cadbb2e3.js → shared-37e1a834.js} +1 -1
  127. package/dist/cdn/shared-3f19b914.js +20 -0
  128. package/dist/cdn/{shared-d2dc8486.js → shared-405a290e.js} +1 -1
  129. package/dist/cdn/shared-40bece2b.js +1 -0
  130. package/dist/cdn/{shared-2d40129d.js → shared-4482e7b9.js} +6 -6
  131. package/dist/cdn/{shared-19732959.js → shared-44bb85d8.js} +1 -1
  132. package/dist/cdn/{shared-2b68c60f.js → shared-497ebb8c.js} +1 -1
  133. package/dist/cdn/{shared-60e167ae.js → shared-4cec4de0.js} +1 -1
  134. package/dist/cdn/{shared-51318b75.js → shared-510a9e1b.js} +1 -1
  135. package/dist/cdn/{shared-f9180815.js → shared-51c4a6dd.js} +1 -1
  136. package/dist/cdn/shared-5ba87b6d.js +11 -0
  137. package/dist/cdn/{shared-c37707da.js → shared-5df32007.js} +1 -1
  138. package/dist/cdn/{shared-eaceb493.js → shared-5dfec3b7.js} +1 -1
  139. package/dist/cdn/shared-651c44fa.js +6 -0
  140. package/dist/cdn/{shared-ac62d098.js → shared-655e7c5f.js} +1 -1
  141. package/dist/cdn/shared-6d41c9a9.js +1 -0
  142. package/dist/cdn/{shared-be8c90cc.js → shared-6e508e5b.js} +11 -22
  143. package/dist/cdn/{shared-f1ee9bf9.js → shared-6ed07856.js} +1 -1
  144. package/dist/cdn/{shared-5407617a.js → shared-7039733e.js} +1 -1
  145. package/dist/cdn/{shared-be5ef71d.js → shared-74adbf9e.js} +1 -1
  146. package/dist/cdn/{shared-d7910e16.js → shared-7ea4cb27.js} +1 -1
  147. package/dist/cdn/{shared-8ed04343.js → shared-83fc5dca.js} +1 -1
  148. package/dist/cdn/{shared-bb05cfed.js → shared-8438d4ca.js} +1 -1
  149. package/dist/cdn/{shared-50a3cb63.js → shared-882e7191.js} +1 -1
  150. package/dist/cdn/shared-8ab2ba91.js +425 -0
  151. package/dist/cdn/{shared-31b7a6ad.js → shared-8b80db13.js} +1 -1
  152. package/dist/cdn/shared-966feb65.js +1 -0
  153. package/dist/cdn/{shared-aa4f6a25.js → shared-97d63da6.js} +1 -1
  154. package/dist/cdn/{shared-d3bf9ac0.js → shared-9803aa7c.js} +2 -2
  155. package/dist/cdn/{shared-11c2efc8.js → shared-99940888.js} +1 -1
  156. package/dist/cdn/shared-99f0fee6.js +1 -0
  157. package/dist/cdn/shared-9adc47da.js +113 -0
  158. package/dist/cdn/{shared-b23c903e.js → shared-9f570db0.js} +1 -1
  159. package/dist/cdn/{shared-bc113435.js → shared-9fd64015.js} +1 -1
  160. package/dist/cdn/{shared-6a7f96c4.js → shared-a0435ec6.js} +1 -1
  161. package/dist/cdn/{shared-d519a301.js → shared-a0c6a159.js} +2 -2
  162. package/dist/cdn/{shared-16b391d9.js → shared-a19e1dff.js} +1 -1
  163. package/dist/cdn/{shared-ee54f718.js → shared-a5ecd56e.js} +1 -1
  164. package/dist/cdn/{shared-7d24a3f1.js → shared-a9f76cae.js} +1 -1
  165. package/dist/cdn/{shared-927fa880.js → shared-ae459232.js} +4 -4
  166. package/dist/cdn/{shared-1f8ae298.js → shared-bbc0cdd6.js} +1 -1
  167. package/dist/cdn/{shared-1c07b1be.js → shared-bf695fe7.js} +1 -1
  168. package/dist/cdn/{shared-4721aeb1.js → shared-cd8c3429.js} +1 -1
  169. package/dist/cdn/{shared-d28b95c6.js → shared-cfed658c.js} +2 -2
  170. package/dist/cdn/shared-d0374d0c.js +1 -0
  171. package/dist/cdn/{shared-55f58244.js → shared-d244dd07.js} +1 -1
  172. package/dist/cdn/{shared-de59c42c.js → shared-d9f65ee0.js} +4 -4
  173. package/dist/cdn/{shared-df8380e1.js → shared-db98729a.js} +1 -1
  174. package/dist/cdn/{shared-7f33a83a.js → shared-dc73b9a5.js} +1 -1
  175. package/dist/cdn/{shared-902b0773.js → shared-e40937c5.js} +1 -1
  176. package/dist/cdn/{shared-e8621807.js → shared-f0269599.js} +1 -1
  177. package/dist/cdn/shared-f1afbd7b.js +1 -0
  178. package/dist/cdn/{shared-dc8c202b.js → shared-f53d078e.js} +1 -1
  179. package/dist/cdn/{shared-533c0d6a.js → shared-f588b5c2.js} +1 -1
  180. package/dist/cdn/{shared-8d51eaa6.js → shared-f5d4dda0.js} +1 -1
  181. package/dist/cdn/{shared-87f81b69.js → shared-f94fa366.js} +1 -1
  182. package/dist/cdn/shared-fd0a4026.js +1 -0
  183. package/dist/cdn/translations/access-recovery-form/en.json +5 -2
  184. package/dist/cdn/translations/address-card/en.json +1 -1
  185. package/dist/cdn/translations/address-form/en.json +86 -26
  186. package/dist/cdn/translations/admin-subscription-card/en.json +1 -1
  187. package/dist/cdn/translations/applied-coupon-code-card/en.json +1 -1
  188. package/dist/cdn/translations/applied-coupon-code-form/en.json +2 -1
  189. package/dist/cdn/translations/applied-tax-card/en.json +1 -1
  190. package/dist/cdn/translations/attribute-card/en.json +1 -1
  191. package/dist/cdn/translations/attribute-form/en.json +36 -17
  192. package/dist/cdn/translations/billing-address-card/en.json +1 -1
  193. package/dist/cdn/translations/cancellation-form/en.json +2 -1
  194. package/dist/cdn/translations/cart-card/en.json +1 -1
  195. package/dist/cdn/translations/cart-form/en.json +51 -29
  196. package/dist/cdn/translations/client-card/en.json +1 -1
  197. package/dist/cdn/translations/client-form/en.json +2 -1
  198. package/dist/cdn/translations/coupon-card/en.json +1 -1
  199. package/dist/cdn/translations/coupon-code-form/en.json +70 -13
  200. package/dist/cdn/translations/coupon-codes-form/en.json +3 -2
  201. package/dist/cdn/translations/coupon-form/en.json +77 -16
  202. package/dist/cdn/translations/custom-field-card/en.json +1 -1
  203. package/dist/cdn/translations/custom-field-form/en.json +34 -14
  204. package/dist/cdn/translations/customer/en.json +142 -67
  205. package/dist/cdn/translations/customer-card/en.json +1 -1
  206. package/dist/cdn/translations/customer-form/en.json +2 -1
  207. package/dist/cdn/translations/customer-portal/en.json +106 -38
  208. package/dist/cdn/translations/customers-table/en.json +2 -1
  209. package/dist/cdn/translations/discount-card/en.json +1 -1
  210. package/dist/cdn/translations/downloadable-card/en.json +1 -1
  211. package/dist/cdn/translations/downloadable-form/en.json +2 -1
  212. package/dist/cdn/translations/email-template-card/en.json +1 -1
  213. package/dist/cdn/translations/email-template-form/en.json +2 -1
  214. package/dist/cdn/translations/filter-attribute-card/en.json +1 -1
  215. package/dist/cdn/translations/filter-attribute-form/en.json +2 -1
  216. package/dist/cdn/translations/generate-codes-form/en.json +2 -1
  217. package/dist/cdn/translations/gift-card-card/en.json +1 -1
  218. package/dist/cdn/translations/gift-card-code-form/en.json +55 -24
  219. package/dist/cdn/translations/gift-card-code-log-card/en.json +1 -1
  220. package/dist/cdn/translations/gift-card-codes-form/en.json +3 -2
  221. package/dist/cdn/translations/gift-card-form/en.json +67 -29
  222. package/dist/cdn/translations/i18n-editor/en.json +2 -1
  223. package/dist/cdn/translations/integration-card/en.json +1 -1
  224. package/dist/cdn/translations/integration-form/en.json +2 -1
  225. package/dist/cdn/translations/item-card/en.json +1 -1
  226. package/dist/cdn/translations/item-category-card/en.json +1 -1
  227. package/dist/cdn/translations/item-category-form/en.json +3 -2
  228. package/dist/cdn/translations/item-form/en.json +44 -23
  229. package/dist/cdn/translations/item-option-form/en.json +2 -1
  230. package/dist/cdn/translations/native-integration-card/en.json +1 -1
  231. package/dist/cdn/translations/native-integration-form/en.json +2 -1
  232. package/dist/cdn/translations/passkey-card/en.json +1 -1
  233. package/dist/cdn/translations/passkey-form/en.json +2 -1
  234. package/dist/cdn/translations/payment-card/en.json +1 -1
  235. package/dist/cdn/translations/payment-method-card/en.json +1 -1
  236. package/dist/cdn/translations/payments-api-fraud-protection-card/en.json +1 -1
  237. package/dist/cdn/translations/payments-api-fraud-protection-form/en.json +2 -1
  238. package/dist/cdn/translations/payments-api-payment-method-card/en.json +1 -1
  239. package/dist/cdn/translations/payments-api-payment-method-form/en.json +2 -1
  240. package/dist/cdn/translations/payments-api-payment-preset-card/en.json +1 -1
  241. package/dist/cdn/translations/payments-api-payment-preset-form/en.json +2 -1
  242. package/dist/cdn/translations/report-form/en.json +2 -1
  243. package/dist/cdn/translations/reports-table/en.json +2 -1
  244. package/dist/cdn/translations/shared/en.json +4 -0
  245. package/dist/cdn/translations/shared/es.json +3 -0
  246. package/dist/cdn/translations/shipment-card/en.json +1 -1
  247. package/dist/cdn/translations/shipping-method-card/en.json +1 -1
  248. package/dist/cdn/translations/sign-in-form/en.json +2 -1
  249. package/dist/cdn/translations/spinner/en.json +1 -1
  250. package/dist/cdn/translations/store-card/en.json +1 -1
  251. package/dist/cdn/translations/store-form/en.json +2 -1
  252. package/dist/cdn/translations/store-shipping-method-form/en.json +3 -2
  253. package/dist/cdn/translations/subscription-card/en.json +1 -1
  254. package/dist/cdn/translations/subscription-form/en.json +9 -17
  255. package/dist/cdn/translations/subscription-settings-form/en.json +2 -1
  256. package/dist/cdn/translations/subscriptions-table/en.json +2 -1
  257. package/dist/cdn/translations/tax-card/en.json +1 -1
  258. package/dist/cdn/translations/tax-form/en.json +2 -1
  259. package/dist/cdn/translations/template-config-form/en.json +2 -1
  260. package/dist/cdn/translations/template-form/en.json +2 -1
  261. package/dist/cdn/translations/template-set-card/en.json +1 -1
  262. package/dist/cdn/translations/template-set-form/en.json +4 -2
  263. package/dist/cdn/translations/transaction/en.json +209 -88
  264. package/dist/cdn/translations/transaction-card/en.json +1 -1
  265. package/dist/cdn/translations/transactions-table/en.json +2 -1
  266. package/dist/cdn/translations/user-card/en.json +1 -1
  267. package/dist/cdn/translations/user-form/en.json +56 -21
  268. package/dist/cdn/translations/users-table/en.json +58 -22
  269. package/dist/cdn/translations/webhook-card/en.json +1 -1
  270. package/dist/cdn/translations/webhook-form/en.json +4 -3
  271. package/dist/cdn/translations/webhook-log-card/en.json +1 -1
  272. package/dist/cdn/translations/webhook-status-card/en.json +1 -1
  273. package/dist/elements/internal/InternalForm/InternalForm.js +10 -3
  274. package/dist/elements/internal/InternalForm/InternalForm.js.map +1 -1
  275. package/dist/elements/internal/InternalSourceControl/InternalSourceControl.d.ts +1 -0
  276. package/dist/elements/internal/InternalSourceControl/InternalSourceControl.js +19 -4
  277. package/dist/elements/internal/InternalSourceControl/InternalSourceControl.js.map +1 -1
  278. package/dist/elements/public/AddressForm/AddressForm.d.ts +13 -24
  279. package/dist/elements/public/AddressForm/AddressForm.js +76 -275
  280. package/dist/elements/public/AddressForm/AddressForm.js.map +1 -1
  281. package/dist/elements/public/AddressForm/index.d.ts +3 -6
  282. package/dist/elements/public/AddressForm/index.js +3 -6
  283. package/dist/elements/public/AddressForm/index.js.map +1 -1
  284. package/dist/elements/public/AddressForm/types.d.ts +4 -15
  285. package/dist/elements/public/AddressForm/types.js.map +1 -1
  286. package/dist/elements/public/AttributeForm/AttributeForm.d.ts +15 -25
  287. package/dist/elements/public/AttributeForm/AttributeForm.js +35 -238
  288. package/dist/elements/public/AttributeForm/AttributeForm.js.map +1 -1
  289. package/dist/elements/public/AttributeForm/index.d.ts +3 -7
  290. package/dist/elements/public/AttributeForm/index.js +3 -7
  291. package/dist/elements/public/AttributeForm/index.js.map +1 -1
  292. package/dist/elements/public/AttributeForm/types.d.ts +4 -7
  293. package/dist/elements/public/AttributeForm/types.js.map +1 -1
  294. package/dist/elements/public/CouponCodeForm/CouponCodeForm.d.ts +19 -21
  295. package/dist/elements/public/CouponCodeForm/CouponCodeForm.js +47 -178
  296. package/dist/elements/public/CouponCodeForm/CouponCodeForm.js.map +1 -1
  297. package/dist/elements/public/CouponCodeForm/index.d.ts +5 -6
  298. package/dist/elements/public/CouponCodeForm/index.js +5 -6
  299. package/dist/elements/public/CouponCodeForm/index.js.map +1 -1
  300. package/dist/elements/public/CouponCodeForm/types.d.ts +11 -4
  301. package/dist/elements/public/CouponCodeForm/types.js.map +1 -1
  302. package/dist/elements/public/CouponForm/CouponForm.d.ts +2 -1
  303. package/dist/elements/public/CouponForm/CouponForm.js +4 -0
  304. package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
  305. package/dist/elements/public/CouponForm/types.d.ts +3 -0
  306. package/dist/elements/public/CouponForm/types.js.map +1 -1
  307. package/dist/elements/public/CustomFieldForm/CustomFieldForm.d.ts +27 -36
  308. package/dist/elements/public/CustomFieldForm/CustomFieldForm.js +40 -221
  309. package/dist/elements/public/CustomFieldForm/CustomFieldForm.js.map +1 -1
  310. package/dist/elements/public/CustomFieldForm/index.d.ts +3 -7
  311. package/dist/elements/public/CustomFieldForm/index.js +3 -7
  312. package/dist/elements/public/CustomFieldForm/index.js.map +1 -1
  313. package/dist/elements/public/CustomFieldForm/types.d.ts +4 -7
  314. package/dist/elements/public/CustomFieldForm/types.js.map +1 -1
  315. package/dist/elements/public/CustomerForm/CustomerForm.d.ts +0 -1
  316. package/dist/elements/public/CustomerForm/CustomerForm.js +5 -8
  317. package/dist/elements/public/CustomerForm/CustomerForm.js.map +1 -1
  318. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.d.ts +12 -29
  319. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.js +27 -276
  320. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.js.map +1 -1
  321. package/dist/elements/public/GiftCardCodeForm/index.d.ts +5 -9
  322. package/dist/elements/public/GiftCardCodeForm/index.js +5 -9
  323. package/dist/elements/public/GiftCardCodeForm/index.js.map +1 -1
  324. package/dist/elements/public/GiftCardCodeForm/internal/InternalGiftCardCodeFormItemControl/InternalGiftCardCodeFormItemControl.js +17 -6
  325. package/dist/elements/public/GiftCardCodeForm/internal/InternalGiftCardCodeFormItemControl/InternalGiftCardCodeFormItemControl.js.map +1 -1
  326. package/dist/elements/public/GiftCardCodeForm/internal/InternalGiftCardCodeFormItemControl/index.d.ts +0 -1
  327. package/dist/elements/public/GiftCardCodeForm/internal/InternalGiftCardCodeFormItemControl/index.js +0 -1
  328. package/dist/elements/public/GiftCardCodeForm/internal/InternalGiftCardCodeFormItemControl/index.js.map +1 -1
  329. package/dist/elements/public/GiftCardCodeForm/types.d.ts +6 -4
  330. package/dist/elements/public/GiftCardCodeForm/types.js.map +1 -1
  331. package/dist/elements/public/SubscriptionForm/SubscriptionForm.d.ts +3 -0
  332. package/dist/elements/public/SubscriptionForm/SubscriptionForm.js +88 -78
  333. package/dist/elements/public/SubscriptionForm/SubscriptionForm.js.map +1 -1
  334. package/dist/elements/public/SubscriptionForm/index.d.ts +0 -2
  335. package/dist/elements/public/SubscriptionForm/index.js +0 -8
  336. package/dist/elements/public/SubscriptionForm/index.js.map +1 -1
  337. package/dist/elements/public/UserForm/UserForm.d.ts +15 -12
  338. package/dist/elements/public/UserForm/UserForm.js +64 -172
  339. package/dist/elements/public/UserForm/UserForm.js.map +1 -1
  340. package/dist/elements/public/UserForm/index.d.ts +3 -5
  341. package/dist/elements/public/UserForm/index.js +3 -5
  342. package/dist/elements/public/UserForm/index.js.map +1 -1
  343. package/dist/elements/public/UserForm/types.d.ts +3 -1
  344. package/dist/elements/public/UserForm/types.js.map +1 -1
  345. package/dist/elements/public/UsersTable/UsersTable.js +1 -1
  346. package/dist/elements/public/UsersTable/UsersTable.js.map +1 -1
  347. package/dist/elements/public/UsersTable/roles.js.map +1 -0
  348. package/dist/mixins/themeable.js +38 -8
  349. package/dist/mixins/themeable.js.map +1 -1
  350. package/dist/mixins/translatable.d.ts +6 -0
  351. package/dist/mixins/translatable.js +26 -8
  352. package/dist/mixins/translatable.js.map +1 -1
  353. package/package.json +1 -1
  354. package/dist/cdn/shared-027a9660.js +0 -1
  355. package/dist/cdn/shared-0838fad0.js +0 -1
  356. package/dist/cdn/shared-132b2b71.js +0 -2
  357. package/dist/cdn/shared-1e3d7d40.js +0 -1
  358. package/dist/cdn/shared-6d34289d.js +0 -1
  359. package/dist/cdn/shared-9f039798.js +0 -1
  360. package/dist/cdn/shared-a26d7f7a.js +0 -25
  361. package/dist/cdn/shared-a502026c.js +0 -1
  362. package/dist/cdn/shared-c36477d7.js +0 -531
  363. package/dist/cdn/shared-e7dffedb.js +0 -1
  364. package/dist/cdn/shared-f2eb454c.js +0 -1
  365. package/dist/elements/public/UserForm/roles.js.map +0 -1
  366. /package/dist/elements/public/{UserForm → UsersTable}/roles.d.ts +0 -0
  367. /package/dist/elements/public/{UserForm → UsersTable}/roles.js +0 -0
@@ -1,4 +1,4 @@
1
- import{D as t,r as e,e as n,g as r,f as i,h as s,o,b as a,p as l,j as c,k as d,m as h,c as u,n as p,q as _,s as f,t as m,v as y}from"./shared-550f9cae.js";
1
+ import{D as t,r as e,e as n,g as r,f as i,h as s,o,b as a,p as l,j as c,k as d,m as h,c as u,n as p,q as _,s as f,t as m,v as y}from"./shared-331a223c.js";
2
2
  /**
3
3
  @license
4
4
  Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
@@ -1,4 +1,4 @@
1
- import{E as e,T as t}from"./shared-d28b95c6.js";import{h as o,G as i,P as r}from"./shared-1c07b1be.js";import{C as a}from"./shared-61ade33e.js";const s=o`<dom-module id="lumo-checkbox" theme-for="vaadin-checkbox">
1
+ import{E as e,T as t}from"./shared-cfed658c.js";import{h as o,G as i,P as r}from"./shared-bf695fe7.js";import{C as a}from"./shared-61ade33e.js";const s=o`<dom-module id="lumo-checkbox" theme-for="vaadin-checkbox">
2
2
  <template>
3
3
  <style include="lumo-checkbox-style lumo-checkbox-effects">
4
4
  /* IE11 only */
@@ -1,6 +1,6 @@
1
- import{D as t,i as n,e}from"./shared-1c07b1be.js";import{D as o}from"./shared-550f9cae.js";class l extends HTMLElement{static get version(){return"1.6.1"}}customElements.define("vaadin-lumo-styles",l);const a=document.createElement("template");a.innerHTML='<custom-style>\n <style>\n html {\n /* Base (background) */\n --lumo-base-color: #FFF;\n\n /* Tint */\n --lumo-tint-5pct: hsla(0, 0%, 100%, 0.3);\n --lumo-tint-10pct: hsla(0, 0%, 100%, 0.37);\n --lumo-tint-20pct: hsla(0, 0%, 100%, 0.44);\n --lumo-tint-30pct: hsla(0, 0%, 100%, 0.5);\n --lumo-tint-40pct: hsla(0, 0%, 100%, 0.57);\n --lumo-tint-50pct: hsla(0, 0%, 100%, 0.64);\n --lumo-tint-60pct: hsla(0, 0%, 100%, 0.7);\n --lumo-tint-70pct: hsla(0, 0%, 100%, 0.77);\n --lumo-tint-80pct: hsla(0, 0%, 100%, 0.84);\n --lumo-tint-90pct: hsla(0, 0%, 100%, 0.9);\n --lumo-tint: #FFF;\n\n /* Shade */\n --lumo-shade-5pct: hsla(214, 61%, 25%, 0.05);\n --lumo-shade-10pct: hsla(214, 57%, 24%, 0.1);\n --lumo-shade-20pct: hsla(214, 53%, 23%, 0.16);\n --lumo-shade-30pct: hsla(214, 50%, 22%, 0.26);\n --lumo-shade-40pct: hsla(214, 47%, 21%, 0.38);\n --lumo-shade-50pct: hsla(214, 45%, 20%, 0.5);\n --lumo-shade-60pct: hsla(214, 43%, 19%, 0.61);\n --lumo-shade-70pct: hsla(214, 42%, 18%, 0.72);\n --lumo-shade-80pct: hsla(214, 41%, 17%, 0.83);\n --lumo-shade-90pct: hsla(214, 40%, 16%, 0.94);\n --lumo-shade: hsl(214, 35%, 15%);\n\n /* Contrast */\n --lumo-contrast-5pct: var(--lumo-shade-5pct);\n --lumo-contrast-10pct: var(--lumo-shade-10pct);\n --lumo-contrast-20pct: var(--lumo-shade-20pct);\n --lumo-contrast-30pct: var(--lumo-shade-30pct);\n --lumo-contrast-40pct: var(--lumo-shade-40pct);\n --lumo-contrast-50pct: var(--lumo-shade-50pct);\n --lumo-contrast-60pct: var(--lumo-shade-60pct);\n --lumo-contrast-70pct: var(--lumo-shade-70pct);\n --lumo-contrast-80pct: var(--lumo-shade-80pct);\n --lumo-contrast-90pct: var(--lumo-shade-90pct);\n --lumo-contrast: var(--lumo-shade);\n\n /* Text */\n --lumo-header-text-color: var(--lumo-contrast);\n --lumo-body-text-color: var(--lumo-contrast-90pct);\n --lumo-secondary-text-color: var(--lumo-contrast-70pct);\n --lumo-tertiary-text-color: var(--lumo-contrast-50pct);\n --lumo-disabled-text-color: var(--lumo-contrast-30pct);\n\n /* Primary */\n --lumo-primary-color: hsl(214, 90%, 52%);\n --lumo-primary-color-50pct: hsla(214, 90%, 52%, 0.5);\n --lumo-primary-color-10pct: hsla(214, 90%, 52%, 0.1);\n --lumo-primary-text-color: var(--lumo-primary-color);\n --lumo-primary-contrast-color: #FFF;\n\n /* Error */\n --lumo-error-color: hsl(3, 100%, 61%);\n --lumo-error-color-50pct: hsla(3, 100%, 60%, 0.5);\n --lumo-error-color-10pct: hsla(3, 100%, 60%, 0.1);\n --lumo-error-text-color: hsl(3, 92%, 53%);\n --lumo-error-contrast-color: #FFF;\n\n /* Success */\n --lumo-success-color: hsl(145, 80%, 42%); /* hsl(144,82%,37%); */\n --lumo-success-color-50pct: hsla(145, 76%, 44%, 0.55);\n --lumo-success-color-10pct: hsla(145, 76%, 44%, 0.12);\n --lumo-success-text-color: hsl(145, 100%, 32%);\n --lumo-success-contrast-color: #FFF;\n }\n </style>\n</custom-style><dom-module id="lumo-color">\n <template>\n <style>\n [theme~="dark"] {\n /* Base (background) */\n --lumo-base-color: hsl(214, 35%, 21%);\n\n /* Tint */\n --lumo-tint-5pct: hsla(214, 65%, 85%, 0.06);\n --lumo-tint-10pct: hsla(214, 60%, 80%, 0.14);\n --lumo-tint-20pct: hsla(214, 64%, 82%, 0.23);\n --lumo-tint-30pct: hsla(214, 69%, 84%, 0.32);\n --lumo-tint-40pct: hsla(214, 73%, 86%, 0.41);\n --lumo-tint-50pct: hsla(214, 78%, 88%, 0.5);\n --lumo-tint-60pct: hsla(214, 82%, 90%, 0.6);\n --lumo-tint-70pct: hsla(214, 87%, 92%, 0.7);\n --lumo-tint-80pct: hsla(214, 91%, 94%, 0.8);\n --lumo-tint-90pct: hsla(214, 96%, 96%, 0.9);\n --lumo-tint: hsl(214, 100%, 98%);\n\n /* Shade */\n --lumo-shade-5pct: hsla(214, 0%, 0%, 0.07);\n --lumo-shade-10pct: hsla(214, 4%, 2%, 0.15);\n --lumo-shade-20pct: hsla(214, 8%, 4%, 0.23);\n --lumo-shade-30pct: hsla(214, 12%, 6%, 0.32);\n --lumo-shade-40pct: hsla(214, 16%, 8%, 0.41);\n --lumo-shade-50pct: hsla(214, 20%, 10%, 0.5);\n --lumo-shade-60pct: hsla(214, 24%, 12%, 0.6);\n --lumo-shade-70pct: hsla(214, 28%, 13%, 0.7);\n --lumo-shade-80pct: hsla(214, 32%, 13%, 0.8);\n --lumo-shade-90pct: hsla(214, 33%, 13%, 0.9);\n --lumo-shade: hsl(214, 33%, 13%);\n\n /* Contrast */\n --lumo-contrast-5pct: var(--lumo-tint-5pct);\n --lumo-contrast-10pct: var(--lumo-tint-10pct);\n --lumo-contrast-20pct: var(--lumo-tint-20pct);\n --lumo-contrast-30pct: var(--lumo-tint-30pct);\n --lumo-contrast-40pct: var(--lumo-tint-40pct);\n --lumo-contrast-50pct: var(--lumo-tint-50pct);\n --lumo-contrast-60pct: var(--lumo-tint-60pct);\n --lumo-contrast-70pct: var(--lumo-tint-70pct);\n --lumo-contrast-80pct: var(--lumo-tint-80pct);\n --lumo-contrast-90pct: var(--lumo-tint-90pct);\n --lumo-contrast: var(--lumo-tint);\n\n /* Text */\n --lumo-header-text-color: var(--lumo-contrast);\n --lumo-body-text-color: var(--lumo-contrast-90pct);\n --lumo-secondary-text-color: var(--lumo-contrast-70pct);\n --lumo-tertiary-text-color: var(--lumo-contrast-50pct);\n --lumo-disabled-text-color: var(--lumo-contrast-30pct);\n\n /* Primary */\n --lumo-primary-color: hsl(214, 86%, 55%);\n --lumo-primary-color-50pct: hsla(214, 86%, 55%, 0.5);\n --lumo-primary-color-10pct: hsla(214, 90%, 63%, 0.1);\n --lumo-primary-text-color: hsl(214, 100%, 70%);\n --lumo-primary-contrast-color: #FFF;\n\n /* Error */\n --lumo-error-color: hsl(3, 90%, 63%);\n --lumo-error-color-50pct: hsla(3, 90%, 63%, 0.5);\n --lumo-error-color-10pct: hsla(3, 90%, 63%, 0.1);\n --lumo-error-text-color: hsl(3, 100%, 67%);\n\n /* Success */\n --lumo-success-color: hsl(145, 65%, 42%);\n --lumo-success-color-50pct: hsla(145, 65%, 42%, 0.5);\n --lumo-success-color-10pct: hsla(145, 65%, 42%, 0.1);\n --lumo-success-text-color: hsl(145, 85%, 47%);\n }\n\n html {\n color: var(--lumo-body-text-color);\n background-color: var(--lumo-base-color);\n }\n\n [theme~="dark"] {\n color: var(--lumo-body-text-color);\n background-color: var(--lumo-base-color);\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n color: var(--lumo-header-text-color);\n }\n\n a {\n color: var(--lumo-primary-text-color);\n }\n\n blockquote {\n color: var(--lumo-secondary-text-color);\n }\n\n code,\n pre {\n background-color: var(--lumo-contrast-10pct);\n border-radius: var(--lumo-border-radius-m);\n }\n </style>\n </template>\n</dom-module><dom-module id="lumo-color-legacy">\n <template>\n <style include="lumo-color">\n :host {\n color: var(--lumo-body-text-color) !important;\n background-color: var(--lumo-base-color) !important;\n }\n </style>\n </template>\n</dom-module>',document.head.appendChild(a.content);const s=document.createElement("template");s.innerHTML="<custom-style>\n <style>\n html {\n --lumo-size-xs: 1.625rem;\n --lumo-size-s: 1.875rem;\n --lumo-size-m: 2.25rem;\n --lumo-size-l: 2.75rem;\n --lumo-size-xl: 3.5rem;\n\n /* Icons */\n --lumo-icon-size-s: 1.25em;\n --lumo-icon-size-m: 1.5em;\n --lumo-icon-size-l: 2.25em;\n /* For backwards compatibility */\n --lumo-icon-size: var(--lumo-icon-size-m);\n }\n </style>\n</custom-style>",document.head.appendChild(s.content);const r=document.createElement("template");r.innerHTML="<custom-style>\n <style>\n html {\n /* Square */\n --lumo-space-xs: 0.25rem;\n --lumo-space-s: 0.5rem;\n --lumo-space-m: 1rem;\n --lumo-space-l: 1.5rem;\n --lumo-space-xl: 2.5rem;\n\n /* Wide */\n --lumo-space-wide-xs: calc(var(--lumo-space-xs) / 2) var(--lumo-space-xs);\n --lumo-space-wide-s: calc(var(--lumo-space-s) / 2) var(--lumo-space-s);\n --lumo-space-wide-m: calc(var(--lumo-space-m) / 2) var(--lumo-space-m);\n --lumo-space-wide-l: calc(var(--lumo-space-l) / 2) var(--lumo-space-l);\n --lumo-space-wide-xl: calc(var(--lumo-space-xl) / 2) var(--lumo-space-xl);\n\n /* Tall */\n --lumo-space-tall-xs: var(--lumo-space-xs) calc(var(--lumo-space-xs) / 2);\n --lumo-space-tall-s: var(--lumo-space-s) calc(var(--lumo-space-s) / 2);\n --lumo-space-tall-m: var(--lumo-space-m) calc(var(--lumo-space-m) / 2);\n --lumo-space-tall-l: var(--lumo-space-l) calc(var(--lumo-space-l) / 2);\n --lumo-space-tall-xl: var(--lumo-space-xl) calc(var(--lumo-space-xl) / 2);\n }\n </style>\n</custom-style>",document.head.appendChild(r.content);const c=document.createElement("template");c.innerHTML="<custom-style>\n <style>\n html {\n /* Border radius */\n --lumo-border-radius-s: 0.25em; /* Checkbox, badge, date-picker year indicator, etc */\n --lumo-border-radius-m: var(--lumo-border-radius, 0.25em); /* Button, text field, menu overlay, etc */\n --lumo-border-radius-l: 0.5em; /* Dialog, notification, etc */\n --lumo-border-radius: 0.25em; /* Deprecated */\n\n /* Shadow */\n --lumo-box-shadow-xs: 0 1px 4px -1px var(--lumo-shade-50pct);\n --lumo-box-shadow-s: 0 2px 4px -1px var(--lumo-shade-20pct), 0 3px 12px -1px var(--lumo-shade-30pct);\n --lumo-box-shadow-m: 0 2px 6px -1px var(--lumo-shade-20pct), 0 8px 24px -4px var(--lumo-shade-40pct);\n --lumo-box-shadow-l: 0 3px 18px -2px var(--lumo-shade-20pct), 0 12px 48px -6px var(--lumo-shade-40pct);\n --lumo-box-shadow-xl: 0 4px 24px -3px var(--lumo-shade-20pct), 0 18px 64px -8px var(--lumo-shade-40pct);\n\n /* Clickable element cursor */\n --lumo-clickable-cursor: default;\n }\n </style>\n</custom-style>",document.head.appendChild(c.content);const m=document.createElement("template");m.innerHTML='<custom-style>\n <style>\n html {\n /* Font families */\n --lumo-font-family: -apple-system, BlinkMacSystemFont, "Roboto", "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";\n\n /* Font sizes */\n --lumo-font-size-xxs: .75rem;\n --lumo-font-size-xs: .8125rem;\n --lumo-font-size-s: .875rem;\n --lumo-font-size-m: 1rem;\n --lumo-font-size-l: 1.125rem;\n --lumo-font-size-xl: 1.375rem;\n --lumo-font-size-xxl: 1.75rem;\n --lumo-font-size-xxxl: 2.5rem;\n\n /* Line heights */\n --lumo-line-height-xs: 1.25;\n --lumo-line-height-s: 1.375;\n --lumo-line-height-m: 1.625;\n }\n\n </style>\n</custom-style><dom-module id="lumo-typography">\n <template>\n <style>\n html {\n font-family: var(--lumo-font-family);\n font-size: var(--lumo-font-size, var(--lumo-font-size-m));\n line-height: var(--lumo-line-height-m);\n -webkit-text-size-adjust: 100%;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n /* Can’t combine with the above selector because that doesn’t work in browsers without native shadow dom */\n :host {\n font-family: var(--lumo-font-family);\n font-size: var(--lumo-font-size, var(--lumo-font-size-m));\n line-height: var(--lumo-line-height-m);\n -webkit-text-size-adjust: 100%;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n small,\n [theme~="font-size-s"] {\n font-size: var(--lumo-font-size-s);\n line-height: var(--lumo-line-height-s);\n }\n\n [theme~="font-size-xs"] {\n font-size: var(--lumo-font-size-xs);\n line-height: var(--lumo-line-height-xs);\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-weight: 600;\n line-height: var(--lumo-line-height-xs);\n margin-top: 1.25em;\n }\n\n h1 {\n font-size: var(--lumo-font-size-xxxl);\n margin-bottom: 0.75em;\n }\n\n h2 {\n font-size: var(--lumo-font-size-xxl);\n margin-bottom: 0.5em;\n }\n\n h3 {\n font-size: var(--lumo-font-size-xl);\n margin-bottom: 0.5em;\n }\n\n h4 {\n font-size: var(--lumo-font-size-l);\n margin-bottom: 0.5em;\n }\n\n h5 {\n font-size: var(--lumo-font-size-m);\n margin-bottom: 0.25em;\n }\n\n h6 {\n font-size: var(--lumo-font-size-xs);\n margin-bottom: 0;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n }\n\n p,\n blockquote {\n margin-top: 0.5em;\n margin-bottom: 0.75em;\n }\n\n a {\n text-decoration: none;\n }\n\n a:hover {\n text-decoration: underline;\n }\n\n hr {\n display: block;\n align-self: stretch;\n height: 1px;\n border: 0;\n padding: 0;\n margin: var(--lumo-space-s) calc(var(--lumo-border-radius-m) / 2);\n background-color: var(--lumo-contrast-10pct);\n }\n\n blockquote {\n border-left: 2px solid var(--lumo-contrast-30pct);\n }\n\n b,\n strong {\n font-weight: 600;\n }\n\n /* RTL specific styles */\n\n blockquote[dir="rtl"] {\n border-left: none;\n border-right: 2px solid var(--lumo-contrast-30pct);\n }\n\n </style>\n </template>\n</dom-module>',document.head.appendChild(m.content);const i=t=>class extends t{static get properties(){return{theme:{type:String,readOnly:!0}}}attributeChangedCallback(t,n,e){super.attributeChangedCallback(t,n,e),"theme"===t&&this._setTheme(e)}},u=t=>class extends(i(t)){static finalize(){super.finalize();const t=this.prototype._template,n=this.template&&this.template.parentElement&&this.template.parentElement.id===this.is,e=Object.getPrototypeOf(this.prototype)._template;e&&!n&&Array.from(e.content.querySelectorAll("style[include]")).forEach((n=>{this._includeStyle(n.getAttribute("include"),t)})),this._includeMatchingThemes(t)}static _includeMatchingThemes(t){const n=o.prototype.modules;let e=!1;const l=this.is+"-default-theme";Object.keys(n).sort(((t,n)=>{const e=0===t.indexOf("vaadin-"),o=0===n.indexOf("vaadin-"),l=["lumo-","material-"],a=l.filter((n=>0===t.indexOf(n))).length>0,s=l.filter((t=>0===n.indexOf(t))).length>0;return e!==o?e?-1:1:a!==s?a?-1:1:0})).forEach((o=>{if(o!==l){const l=n[o].getAttribute("theme-for");l&&l.split(" ").forEach((n=>{new RegExp("^"+n.split("*").join(".*")+"$").test(this.is)&&(e=!0,this._includeStyle(o,t))}))}})),!e&&n[l]&&this._includeStyle(l,t)}static _includeStyle(t,n){if(n&&!n.content.querySelector(`style[include="${t}"]`)){const e=document.createElement("style");e.setAttribute("include",t),n.content.appendChild(e)}}}
1
+ import{D as t,i as n,e}from"./shared-bf695fe7.js";import{D as o}from"./shared-331a223c.js";class l extends HTMLElement{static get version(){return"1.6.1"}}customElements.define("vaadin-lumo-styles",l);const a=document.createElement("template");a.innerHTML='<custom-style>\n <style>\n html {\n /* Base (background) */\n --lumo-base-color: #FFF;\n\n /* Tint */\n --lumo-tint-5pct: hsla(0, 0%, 100%, 0.3);\n --lumo-tint-10pct: hsla(0, 0%, 100%, 0.37);\n --lumo-tint-20pct: hsla(0, 0%, 100%, 0.44);\n --lumo-tint-30pct: hsla(0, 0%, 100%, 0.5);\n --lumo-tint-40pct: hsla(0, 0%, 100%, 0.57);\n --lumo-tint-50pct: hsla(0, 0%, 100%, 0.64);\n --lumo-tint-60pct: hsla(0, 0%, 100%, 0.7);\n --lumo-tint-70pct: hsla(0, 0%, 100%, 0.77);\n --lumo-tint-80pct: hsla(0, 0%, 100%, 0.84);\n --lumo-tint-90pct: hsla(0, 0%, 100%, 0.9);\n --lumo-tint: #FFF;\n\n /* Shade */\n --lumo-shade-5pct: hsla(214, 61%, 25%, 0.05);\n --lumo-shade-10pct: hsla(214, 57%, 24%, 0.1);\n --lumo-shade-20pct: hsla(214, 53%, 23%, 0.16);\n --lumo-shade-30pct: hsla(214, 50%, 22%, 0.26);\n --lumo-shade-40pct: hsla(214, 47%, 21%, 0.38);\n --lumo-shade-50pct: hsla(214, 45%, 20%, 0.5);\n --lumo-shade-60pct: hsla(214, 43%, 19%, 0.61);\n --lumo-shade-70pct: hsla(214, 42%, 18%, 0.72);\n --lumo-shade-80pct: hsla(214, 41%, 17%, 0.83);\n --lumo-shade-90pct: hsla(214, 40%, 16%, 0.94);\n --lumo-shade: hsl(214, 35%, 15%);\n\n /* Contrast */\n --lumo-contrast-5pct: var(--lumo-shade-5pct);\n --lumo-contrast-10pct: var(--lumo-shade-10pct);\n --lumo-contrast-20pct: var(--lumo-shade-20pct);\n --lumo-contrast-30pct: var(--lumo-shade-30pct);\n --lumo-contrast-40pct: var(--lumo-shade-40pct);\n --lumo-contrast-50pct: var(--lumo-shade-50pct);\n --lumo-contrast-60pct: var(--lumo-shade-60pct);\n --lumo-contrast-70pct: var(--lumo-shade-70pct);\n --lumo-contrast-80pct: var(--lumo-shade-80pct);\n --lumo-contrast-90pct: var(--lumo-shade-90pct);\n --lumo-contrast: var(--lumo-shade);\n\n /* Text */\n --lumo-header-text-color: var(--lumo-contrast);\n --lumo-body-text-color: var(--lumo-contrast-90pct);\n --lumo-secondary-text-color: var(--lumo-contrast-70pct);\n --lumo-tertiary-text-color: var(--lumo-contrast-50pct);\n --lumo-disabled-text-color: var(--lumo-contrast-30pct);\n\n /* Primary */\n --lumo-primary-color: hsl(214, 90%, 52%);\n --lumo-primary-color-50pct: hsla(214, 90%, 52%, 0.5);\n --lumo-primary-color-10pct: hsla(214, 90%, 52%, 0.1);\n --lumo-primary-text-color: var(--lumo-primary-color);\n --lumo-primary-contrast-color: #FFF;\n\n /* Error */\n --lumo-error-color: hsl(3, 100%, 61%);\n --lumo-error-color-50pct: hsla(3, 100%, 60%, 0.5);\n --lumo-error-color-10pct: hsla(3, 100%, 60%, 0.1);\n --lumo-error-text-color: hsl(3, 92%, 53%);\n --lumo-error-contrast-color: #FFF;\n\n /* Success */\n --lumo-success-color: hsl(145, 80%, 42%); /* hsl(144,82%,37%); */\n --lumo-success-color-50pct: hsla(145, 76%, 44%, 0.55);\n --lumo-success-color-10pct: hsla(145, 76%, 44%, 0.12);\n --lumo-success-text-color: hsl(145, 100%, 32%);\n --lumo-success-contrast-color: #FFF;\n }\n </style>\n</custom-style><dom-module id="lumo-color">\n <template>\n <style>\n [theme~="dark"] {\n /* Base (background) */\n --lumo-base-color: hsl(214, 35%, 21%);\n\n /* Tint */\n --lumo-tint-5pct: hsla(214, 65%, 85%, 0.06);\n --lumo-tint-10pct: hsla(214, 60%, 80%, 0.14);\n --lumo-tint-20pct: hsla(214, 64%, 82%, 0.23);\n --lumo-tint-30pct: hsla(214, 69%, 84%, 0.32);\n --lumo-tint-40pct: hsla(214, 73%, 86%, 0.41);\n --lumo-tint-50pct: hsla(214, 78%, 88%, 0.5);\n --lumo-tint-60pct: hsla(214, 82%, 90%, 0.6);\n --lumo-tint-70pct: hsla(214, 87%, 92%, 0.7);\n --lumo-tint-80pct: hsla(214, 91%, 94%, 0.8);\n --lumo-tint-90pct: hsla(214, 96%, 96%, 0.9);\n --lumo-tint: hsl(214, 100%, 98%);\n\n /* Shade */\n --lumo-shade-5pct: hsla(214, 0%, 0%, 0.07);\n --lumo-shade-10pct: hsla(214, 4%, 2%, 0.15);\n --lumo-shade-20pct: hsla(214, 8%, 4%, 0.23);\n --lumo-shade-30pct: hsla(214, 12%, 6%, 0.32);\n --lumo-shade-40pct: hsla(214, 16%, 8%, 0.41);\n --lumo-shade-50pct: hsla(214, 20%, 10%, 0.5);\n --lumo-shade-60pct: hsla(214, 24%, 12%, 0.6);\n --lumo-shade-70pct: hsla(214, 28%, 13%, 0.7);\n --lumo-shade-80pct: hsla(214, 32%, 13%, 0.8);\n --lumo-shade-90pct: hsla(214, 33%, 13%, 0.9);\n --lumo-shade: hsl(214, 33%, 13%);\n\n /* Contrast */\n --lumo-contrast-5pct: var(--lumo-tint-5pct);\n --lumo-contrast-10pct: var(--lumo-tint-10pct);\n --lumo-contrast-20pct: var(--lumo-tint-20pct);\n --lumo-contrast-30pct: var(--lumo-tint-30pct);\n --lumo-contrast-40pct: var(--lumo-tint-40pct);\n --lumo-contrast-50pct: var(--lumo-tint-50pct);\n --lumo-contrast-60pct: var(--lumo-tint-60pct);\n --lumo-contrast-70pct: var(--lumo-tint-70pct);\n --lumo-contrast-80pct: var(--lumo-tint-80pct);\n --lumo-contrast-90pct: var(--lumo-tint-90pct);\n --lumo-contrast: var(--lumo-tint);\n\n /* Text */\n --lumo-header-text-color: var(--lumo-contrast);\n --lumo-body-text-color: var(--lumo-contrast-90pct);\n --lumo-secondary-text-color: var(--lumo-contrast-70pct);\n --lumo-tertiary-text-color: var(--lumo-contrast-50pct);\n --lumo-disabled-text-color: var(--lumo-contrast-30pct);\n\n /* Primary */\n --lumo-primary-color: hsl(214, 86%, 55%);\n --lumo-primary-color-50pct: hsla(214, 86%, 55%, 0.5);\n --lumo-primary-color-10pct: hsla(214, 90%, 63%, 0.1);\n --lumo-primary-text-color: hsl(214, 100%, 70%);\n --lumo-primary-contrast-color: #FFF;\n\n /* Error */\n --lumo-error-color: hsl(3, 90%, 63%);\n --lumo-error-color-50pct: hsla(3, 90%, 63%, 0.5);\n --lumo-error-color-10pct: hsla(3, 90%, 63%, 0.1);\n --lumo-error-text-color: hsl(3, 100%, 67%);\n\n /* Success */\n --lumo-success-color: hsl(145, 65%, 42%);\n --lumo-success-color-50pct: hsla(145, 65%, 42%, 0.5);\n --lumo-success-color-10pct: hsla(145, 65%, 42%, 0.1);\n --lumo-success-text-color: hsl(145, 85%, 47%);\n }\n\n html {\n color: var(--lumo-body-text-color);\n background-color: var(--lumo-base-color);\n }\n\n [theme~="dark"] {\n color: var(--lumo-body-text-color);\n background-color: var(--lumo-base-color);\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n color: var(--lumo-header-text-color);\n }\n\n a {\n color: var(--lumo-primary-text-color);\n }\n\n blockquote {\n color: var(--lumo-secondary-text-color);\n }\n\n code,\n pre {\n background-color: var(--lumo-contrast-10pct);\n border-radius: var(--lumo-border-radius-m);\n }\n </style>\n </template>\n</dom-module><dom-module id="lumo-color-legacy">\n <template>\n <style include="lumo-color">\n :host {\n color: var(--lumo-body-text-color) !important;\n background-color: var(--lumo-base-color) !important;\n }\n </style>\n </template>\n</dom-module>',document.head.appendChild(a.content);const s=document.createElement("template");s.innerHTML="<custom-style>\n <style>\n html {\n --lumo-size-xs: 1.625rem;\n --lumo-size-s: 1.875rem;\n --lumo-size-m: 2.25rem;\n --lumo-size-l: 2.75rem;\n --lumo-size-xl: 3.5rem;\n\n /* Icons */\n --lumo-icon-size-s: 1.25em;\n --lumo-icon-size-m: 1.5em;\n --lumo-icon-size-l: 2.25em;\n /* For backwards compatibility */\n --lumo-icon-size: var(--lumo-icon-size-m);\n }\n </style>\n</custom-style>",document.head.appendChild(s.content);const r=document.createElement("template");r.innerHTML="<custom-style>\n <style>\n html {\n /* Square */\n --lumo-space-xs: 0.25rem;\n --lumo-space-s: 0.5rem;\n --lumo-space-m: 1rem;\n --lumo-space-l: 1.5rem;\n --lumo-space-xl: 2.5rem;\n\n /* Wide */\n --lumo-space-wide-xs: calc(var(--lumo-space-xs) / 2) var(--lumo-space-xs);\n --lumo-space-wide-s: calc(var(--lumo-space-s) / 2) var(--lumo-space-s);\n --lumo-space-wide-m: calc(var(--lumo-space-m) / 2) var(--lumo-space-m);\n --lumo-space-wide-l: calc(var(--lumo-space-l) / 2) var(--lumo-space-l);\n --lumo-space-wide-xl: calc(var(--lumo-space-xl) / 2) var(--lumo-space-xl);\n\n /* Tall */\n --lumo-space-tall-xs: var(--lumo-space-xs) calc(var(--lumo-space-xs) / 2);\n --lumo-space-tall-s: var(--lumo-space-s) calc(var(--lumo-space-s) / 2);\n --lumo-space-tall-m: var(--lumo-space-m) calc(var(--lumo-space-m) / 2);\n --lumo-space-tall-l: var(--lumo-space-l) calc(var(--lumo-space-l) / 2);\n --lumo-space-tall-xl: var(--lumo-space-xl) calc(var(--lumo-space-xl) / 2);\n }\n </style>\n</custom-style>",document.head.appendChild(r.content);const c=document.createElement("template");c.innerHTML="<custom-style>\n <style>\n html {\n /* Border radius */\n --lumo-border-radius-s: 0.25em; /* Checkbox, badge, date-picker year indicator, etc */\n --lumo-border-radius-m: var(--lumo-border-radius, 0.25em); /* Button, text field, menu overlay, etc */\n --lumo-border-radius-l: 0.5em; /* Dialog, notification, etc */\n --lumo-border-radius: 0.25em; /* Deprecated */\n\n /* Shadow */\n --lumo-box-shadow-xs: 0 1px 4px -1px var(--lumo-shade-50pct);\n --lumo-box-shadow-s: 0 2px 4px -1px var(--lumo-shade-20pct), 0 3px 12px -1px var(--lumo-shade-30pct);\n --lumo-box-shadow-m: 0 2px 6px -1px var(--lumo-shade-20pct), 0 8px 24px -4px var(--lumo-shade-40pct);\n --lumo-box-shadow-l: 0 3px 18px -2px var(--lumo-shade-20pct), 0 12px 48px -6px var(--lumo-shade-40pct);\n --lumo-box-shadow-xl: 0 4px 24px -3px var(--lumo-shade-20pct), 0 18px 64px -8px var(--lumo-shade-40pct);\n\n /* Clickable element cursor */\n --lumo-clickable-cursor: default;\n }\n </style>\n</custom-style>",document.head.appendChild(c.content);const m=document.createElement("template");m.innerHTML='<custom-style>\n <style>\n html {\n /* Font families */\n --lumo-font-family: -apple-system, BlinkMacSystemFont, "Roboto", "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";\n\n /* Font sizes */\n --lumo-font-size-xxs: .75rem;\n --lumo-font-size-xs: .8125rem;\n --lumo-font-size-s: .875rem;\n --lumo-font-size-m: 1rem;\n --lumo-font-size-l: 1.125rem;\n --lumo-font-size-xl: 1.375rem;\n --lumo-font-size-xxl: 1.75rem;\n --lumo-font-size-xxxl: 2.5rem;\n\n /* Line heights */\n --lumo-line-height-xs: 1.25;\n --lumo-line-height-s: 1.375;\n --lumo-line-height-m: 1.625;\n }\n\n </style>\n</custom-style><dom-module id="lumo-typography">\n <template>\n <style>\n html {\n font-family: var(--lumo-font-family);\n font-size: var(--lumo-font-size, var(--lumo-font-size-m));\n line-height: var(--lumo-line-height-m);\n -webkit-text-size-adjust: 100%;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n /* Can’t combine with the above selector because that doesn’t work in browsers without native shadow dom */\n :host {\n font-family: var(--lumo-font-family);\n font-size: var(--lumo-font-size, var(--lumo-font-size-m));\n line-height: var(--lumo-line-height-m);\n -webkit-text-size-adjust: 100%;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n small,\n [theme~="font-size-s"] {\n font-size: var(--lumo-font-size-s);\n line-height: var(--lumo-line-height-s);\n }\n\n [theme~="font-size-xs"] {\n font-size: var(--lumo-font-size-xs);\n line-height: var(--lumo-line-height-xs);\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-weight: 600;\n line-height: var(--lumo-line-height-xs);\n margin-top: 1.25em;\n }\n\n h1 {\n font-size: var(--lumo-font-size-xxxl);\n margin-bottom: 0.75em;\n }\n\n h2 {\n font-size: var(--lumo-font-size-xxl);\n margin-bottom: 0.5em;\n }\n\n h3 {\n font-size: var(--lumo-font-size-xl);\n margin-bottom: 0.5em;\n }\n\n h4 {\n font-size: var(--lumo-font-size-l);\n margin-bottom: 0.5em;\n }\n\n h5 {\n font-size: var(--lumo-font-size-m);\n margin-bottom: 0.25em;\n }\n\n h6 {\n font-size: var(--lumo-font-size-xs);\n margin-bottom: 0;\n text-transform: uppercase;\n letter-spacing: 0.03em;\n }\n\n p,\n blockquote {\n margin-top: 0.5em;\n margin-bottom: 0.75em;\n }\n\n a {\n text-decoration: none;\n }\n\n a:hover {\n text-decoration: underline;\n }\n\n hr {\n display: block;\n align-self: stretch;\n height: 1px;\n border: 0;\n padding: 0;\n margin: var(--lumo-space-s) calc(var(--lumo-border-radius-m) / 2);\n background-color: var(--lumo-contrast-10pct);\n }\n\n blockquote {\n border-left: 2px solid var(--lumo-contrast-30pct);\n }\n\n b,\n strong {\n font-weight: 600;\n }\n\n /* RTL specific styles */\n\n blockquote[dir="rtl"] {\n border-left: none;\n border-right: 2px solid var(--lumo-contrast-30pct);\n }\n\n </style>\n </template>\n</dom-module>',document.head.appendChild(m.content);const i=t=>class extends t{static get properties(){return{theme:{type:String,readOnly:!0}}}attributeChangedCallback(t,n,e){super.attributeChangedCallback(t,n,e),"theme"===t&&this._setTheme(e)}},u=t=>class extends(i(t)){static finalize(){super.finalize();const t=this.prototype._template,n=this.template&&this.template.parentElement&&this.template.parentElement.id===this.is,e=Object.getPrototypeOf(this.prototype)._template;e&&!n&&Array.from(e.content.querySelectorAll("style[include]")).forEach((n=>{this._includeStyle(n.getAttribute("include"),t)})),this._includeMatchingThemes(t)}static _includeMatchingThemes(t){const n=o.prototype.modules;let e=!1;const l=this.is+"-default-theme";Object.keys(n).sort(((t,n)=>{const e=0===t.indexOf("vaadin-"),o=0===n.indexOf("vaadin-"),l=["lumo-","material-"],a=l.filter((n=>0===t.indexOf(n))).length>0,s=l.filter((t=>0===n.indexOf(t))).length>0;return e!==o?e?-1:1:a!==s?a?-1:1:0})).forEach((o=>{if(o!==l){const l=n[o].getAttribute("theme-for");l&&l.split(" ").forEach((n=>{new RegExp("^"+n.split("*").join(".*")+"$").test(this.is)&&(e=!0,this._includeStyle(o,t))}))}})),!e&&n[l]&&this._includeStyle(l,t)}static _includeStyle(t,n){if(n&&!n.content.querySelector(`style[include="${t}"]`)){const e=document.createElement("style");e.setAttribute("include",t),n.content.appendChild(e)}}}
2
2
  /**
3
3
  @license
4
4
  Copyright (c) 2020 Vaadin Ltd.
5
5
  This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
6
- */;class d{static detectScrollType(){const t=document.createElement("div");t.textContent="ABCD",t.dir="rtl",t.style.fontSize="14px",t.style.width="4px",t.style.height="1px",t.style.position="absolute",t.style.top="-1000px",t.style.overflow="scroll",document.body.appendChild(t);let n="reverse";return t.scrollLeft>0?n="default":(t.scrollLeft=2,t.scrollLeft<2&&(n="negative")),document.body.removeChild(t),n}static getNormalizedScrollLeft(t,n,e){const{scrollLeft:o}=e;if("rtl"!==n||!t)return o;switch(t){case"negative":return e.scrollWidth-e.clientWidth+o;case"reverse":return e.scrollWidth-e.clientWidth-o}return o}static setNormalizedScrollLeft(t,n,e,o){if("rtl"===n&&t)switch(t){case"negative":e.scrollLeft=e.clientWidth-e.scrollWidth+o;break;case"reverse":e.scrollLeft=e.scrollWidth-e.clientWidth-o;break;default:e.scrollLeft=o}else e.scrollLeft=o}}const p=[];let h;new MutationObserver((function(){const t=x();p.forEach((n=>{v(n,t)}))})).observe(document.documentElement,{attributes:!0,attributeFilter:["dir"]});const v=function(t,n){n?t.setAttribute("dir",n):t.removeAttribute("dir")},x=function(){return document.documentElement.getAttribute("dir")},f=t=>class extends t{static get properties(){return{dir:{type:String,readOnly:!0}}}static finalize(){super.finalize(),h||(h=d.detectScrollType())}connectedCallback(){super.connectedCallback(),this.hasAttribute("dir")||(this.__subscribe(),v(this,x()))}attributeChangedCallback(t,n,e){if(super.attributeChangedCallback(t,n,e),"dir"!==t)return;const o=e===x()&&-1===p.indexOf(this),l=!e&&n&&-1===p.indexOf(this),a=e!==x()&&n===x();o||l?(this.__subscribe(),v(this,x())):a&&this.__subscribe(!1)}disconnectedCallback(){super.disconnectedCallback(),this.__subscribe(!1),this.removeAttribute("dir")}__subscribe(t=!0){t?-1===p.indexOf(this)&&p.push(this):p.indexOf(this)>-1&&p.splice(p.indexOf(this),1)}__getNormalizedScrollLeft(t){return d.getNormalizedScrollLeft(h,this.getAttribute("dir")||"ltr",t)}__setNormalizedScrollLeft(t,n){return d.setNormalizedScrollLeft(h,this.getAttribute("dir")||"ltr",t,n)}},b=/\/\*[\*!]\s+vaadin-dev-mode:start([\s\S]*)vaadin-dev-mode:end\s+\*\*\//i,y=window.Vaadin&&window.Vaadin.Flow&&window.Vaadin.Flow.clients;function g(t,n){if("function"!=typeof t)return;const e=b.exec(t.toString());if(e)try{t=new Function(e[1])}catch(t){console.log("vaadin-development-mode-detector: uncommentAndRun() failed",t)}return t(n)}window.Vaadin=window.Vaadin||{};const w=function(t,n){if(window.Vaadin.developmentMode)return g(t,n)};function z(){}void 0===window.Vaadin.developmentMode&&(window.Vaadin.developmentMode=function(){try{return!!localStorage.getItem("vaadin.developmentmode.force")||["localhost","127.0.0.1"].indexOf(window.location.hostname)>=0&&(y?!(y&&Object.keys(y).map((t=>y[t])).filter((t=>t.productionMode)).length>0):!g((function(){return!0})))}catch(t){return!1}}());const k=function(){return w(z)};let C;window.Vaadin||(window.Vaadin={}),window.Vaadin.registrations=window.Vaadin.registrations||[],window.Vaadin.developmentModeCallback=window.Vaadin.developmentModeCallback||{},window.Vaadin.developmentModeCallback["vaadin-usage-statistics"]=function(){k&&k()};const S=new Set,F=o=>class extends(f(o)){static finalize(){super.finalize();const{is:o}=this;o&&!S.has(o)&&(window.Vaadin.registrations.push(this),S.add(o),window.Vaadin.developmentModeCallback&&(C=t.debounce(C,n,(()=>{window.Vaadin.developmentModeCallback["vaadin-usage-statistics"]()})),e(C)))}constructor(){super(),null===document.doctype&&console.warn('Vaadin components require the "standards mode" declaration. Please add <!DOCTYPE html> to the HTML document.')}};export{f as D,F as E,u as T,d as a};
6
+ */;class d{static detectScrollType(){const t=document.createElement("div");t.textContent="ABCD",t.dir="rtl",t.style.fontSize="14px",t.style.width="4px",t.style.height="1px",t.style.position="absolute",t.style.top="-1000px",t.style.overflow="scroll",document.body.appendChild(t);let n="reverse";return t.scrollLeft>0?n="default":(t.scrollLeft=2,t.scrollLeft<2&&(n="negative")),document.body.removeChild(t),n}static getNormalizedScrollLeft(t,n,e){const{scrollLeft:o}=e;if("rtl"!==n||!t)return o;switch(t){case"negative":return e.scrollWidth-e.clientWidth+o;case"reverse":return e.scrollWidth-e.clientWidth-o}return o}static setNormalizedScrollLeft(t,n,e,o){if("rtl"===n&&t)switch(t){case"negative":e.scrollLeft=e.clientWidth-e.scrollWidth+o;break;case"reverse":e.scrollLeft=e.scrollWidth-e.clientWidth-o;break;default:e.scrollLeft=o}else e.scrollLeft=o}}const p=[];let h;new MutationObserver((function(){const t=f();p.forEach((n=>{v(n,t)}))})).observe(document.documentElement,{attributes:!0,attributeFilter:["dir"]});const v=function(t,n){n?t.setAttribute("dir",n):t.removeAttribute("dir")},f=function(){return document.documentElement.getAttribute("dir")},x=t=>class extends t{static get properties(){return{dir:{type:String,readOnly:!0}}}static finalize(){super.finalize(),h||(h=d.detectScrollType())}connectedCallback(){super.connectedCallback(),this.hasAttribute("dir")||(this.__subscribe(),v(this,f()))}attributeChangedCallback(t,n,e){if(super.attributeChangedCallback(t,n,e),"dir"!==t)return;const o=e===f()&&-1===p.indexOf(this),l=!e&&n&&-1===p.indexOf(this),a=e!==f()&&n===f();o||l?(this.__subscribe(),v(this,f())):a&&this.__subscribe(!1)}disconnectedCallback(){super.disconnectedCallback(),this.__subscribe(!1),this.removeAttribute("dir")}__subscribe(t=!0){t?-1===p.indexOf(this)&&p.push(this):p.indexOf(this)>-1&&p.splice(p.indexOf(this),1)}__getNormalizedScrollLeft(t){return d.getNormalizedScrollLeft(h,this.getAttribute("dir")||"ltr",t)}__setNormalizedScrollLeft(t,n){return d.setNormalizedScrollLeft(h,this.getAttribute("dir")||"ltr",t,n)}},b=/\/\*[\*!]\s+vaadin-dev-mode:start([\s\S]*)vaadin-dev-mode:end\s+\*\*\//i,y=window.Vaadin&&window.Vaadin.Flow&&window.Vaadin.Flow.clients;function g(t,n){if("function"!=typeof t)return;const e=b.exec(t.toString());if(e)try{t=new Function(e[1])}catch(t){console.log("vaadin-development-mode-detector: uncommentAndRun() failed",t)}return t(n)}window.Vaadin=window.Vaadin||{};const w=function(t,n){if(window.Vaadin.developmentMode)return g(t,n)};function z(){}void 0===window.Vaadin.developmentMode&&(window.Vaadin.developmentMode=function(){try{return!!localStorage.getItem("vaadin.developmentmode.force")||["localhost","127.0.0.1"].indexOf(window.location.hostname)>=0&&(y?!(y&&Object.keys(y).map((t=>y[t])).filter((t=>t.productionMode)).length>0):!g((function(){return!0})))}catch(t){return!1}}());const k=function(){return w(z)};let C;window.Vaadin||(window.Vaadin={}),window.Vaadin.registrations=window.Vaadin.registrations||[],window.Vaadin.developmentModeCallback=window.Vaadin.developmentModeCallback||{},window.Vaadin.developmentModeCallback["vaadin-usage-statistics"]=function(){k&&k()};const S=new Set,F=o=>class extends(x(o)){static finalize(){super.finalize();const{is:o}=this;o&&!S.has(o)&&(window.Vaadin.registrations.push(this),S.add(o),window.Vaadin.developmentModeCallback&&(C=t.debounce(C,n,(()=>{window.Vaadin.developmentModeCallback["vaadin-usage-statistics"]()})),e(C)))}constructor(){super(),null===document.doctype&&console.warn('Vaadin components require the "standards mode" declaration. Please add <!DOCTYPE html> to the HTML document.')}};export{x as D,F as E,u as T,d as a};
@@ -0,0 +1 @@
1
+ import"./foxy-spinner.js";import{I as e}from"./shared-d244dd07.js";customElements.define("foxy-internal-card",e);
@@ -1 +1 @@
1
- import{T as e}from"./shared-550f9cae.js";import{N as s}from"./shared-6a7f96c4.js";import{c as t}from"./shared-4e709717.js";import{h as i}from"./shared-7f33a83a.js";let a,r,o=e=>e;class n extends(e(s)){renderBody(){return i(a||(a=o``))}render(){const e=this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy";return i(r||(r=o` <div aria-busy="${0}" aria-live="polite" class="relative leading-m text-body text-m font-lumo"> <div class="${0}"> ${0} </div> <div class="${0}"> <foxy-spinner layout="${0}" state="${0}" class="m-auto" infer="spinner"> </foxy-spinner> </div> </div> `),this.in("busy"),t({"transition duration-500 ease-in-out":!0,"opacity-0 pointer-events-none":!this.isBodyReady}),this.renderBody(),t({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":this.isBodyReady}),"busy"===e?"no-label":"horizontal",e)}get isBodyReady(){return!!this.data}}export{n as I};
1
+ import{T as e}from"./shared-331a223c.js";import{N as s}from"./shared-a0435ec6.js";import{c as t}from"./shared-4e709717.js";import{h as i}from"./shared-dc73b9a5.js";let a,r,o=e=>e;class n extends(e(s)){renderBody(){return i(a||(a=o``))}render(){const e=this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy";return i(r||(r=o` <div aria-busy="${0}" aria-live="polite" class="relative leading-m text-body text-m font-lumo"> <div class="${0}"> ${0} </div> <div class="${0}"> <foxy-spinner layout="${0}" state="${0}" class="m-auto" infer="spinner"> </foxy-spinner> </div> </div> `),this.in("busy"),t({"transition duration-500 ease-in-out":!0,"opacity-0 pointer-events-none":!this.isBodyReady}),this.renderBody(),t({"transition duration-500 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":this.isBodyReady}),"busy"===e?"no-label":"horizontal",e)}get isBodyReady(){return!!this.data}}export{n as I};
@@ -1,4 +1,4 @@
1
- import{_ as e}from"./shared-1522d76f.js";import{T as t}from"./shared-16b391d9.js";import{a as s}from"./shared-550f9cae.js";import{p as n}from"./shared-027a9660.js";let a,o,i,r,l=e=>e;class c extends(s(t,"subscriptions-table")){constructor(){super(...arguments),this.columns=[c.priceColumn,c.summaryColumn,c.statusColumn,c.subTokenURLColumn]}}c.priceColumn={cell:t=>{const s=t.data._embedded["fx:transaction_template"],o=`${s.total_order} ${s.currency_code}`;return t.html(a||(a=l`
1
+ import{_ as e}from"./shared-1522d76f.js";import{T as t}from"./shared-a19e1dff.js";import{a as s}from"./shared-331a223c.js";import{p as a}from"./shared-6d41c9a9.js";let n,o,i,r,l=e=>e;class c extends(s(t,"subscriptions-table")){constructor(){super(...arguments),this.columns=[c.priceColumn,c.summaryColumn,c.statusColumn,c.subTokenURLColumn]}}c.priceColumn={cell:t=>{const s=t.data._embedded["fx:transaction_template"],o=`${s.total_order} ${s.currency_code}`;return t.html(n||(n=l`
2
2
  <foxy-i18n
3
3
  data-testclass="i18n frequencies"
4
4
  class="font-medium text-m font-tnum"
@@ -8,7 +8,7 @@ import{_ as e}from"./shared-1522d76f.js";import{T as t}from"./shared-16b391d9.js
8
8
  .options=${0}
9
9
  >
10
10
  </foxy-i18n>
11
- `),t.lang,".5m"===t.data.frequency?"twice_a_month":"recurring",t.ns,e(e({},n(t.data.frequency)),{},{amount:o}))}},c.summaryColumn={cell:e=>{const t=e.data._embedded["fx:transaction_template"]._embedded["fx:items"],s={most_expensive_item:[...t].sort(((e,t)=>e.price-t.price))[0],count_minus_one:t.length-1,count:t.length};return e.html(o||(o=l`
11
+ `),t.lang,".5m"===t.data.frequency?"twice_a_month":"recurring",t.ns,e(e({},a(t.data.frequency)),{},{amount:o}))}},c.summaryColumn={cell:e=>{const t=e.data._embedded["fx:transaction_template"]._embedded["fx:items"],s={most_expensive_item:[...t].sort(((e,t)=>e.price-t.price))[0],count_minus_one:t.length-1,count:t.length};return e.html(o||(o=l`
12
12
  <foxy-i18n
13
13
  data-testclass="i18n summaries"
14
14
  class="text-m"
@@ -18,7 +18,7 @@ import{_ as e}from"./shared-1522d76f.js";import{T as t}from"./shared-16b391d9.js
18
18
  .options=${0}
19
19
  >
20
20
  </foxy-i18n>
21
- `),e.lang,e.ns,s)}},c.statusColumn={hideBelow:"sm",cell:({ns:e,lang:t,data:s,html:n})=>{let a,o,r="bg-contrast-5 text-secondary";if(s.first_failed_transaction_date)r="bg-error-10 text-error",a=s.first_failed_transaction_date,o="subscription_failed";else if(s.end_date){a=s.end_date;o=new Date(s.end_date).getTime()>Date.now()?"subscription_will_be_cancelled":"subscription_cancelled"}else s.is_active?new Date(s.start_date)>new Date?(a=s.start_date,o="subscription_will_be_active"):(r="bg-success-10 text-success",a=s.next_transaction_date,o="subscription_active"):(a="",o="subscription_inactive");return n(i||(i=l`
21
+ `),e.lang,e.ns,s)}},c.statusColumn={hideBelow:"sm",cell:({ns:e,lang:t,data:s,html:a})=>{let n,o,r="bg-contrast-5 text-secondary";if(s.first_failed_transaction_date)r="bg-error-10 text-error",n=s.first_failed_transaction_date,o="subscription_failed";else if(s.end_date){n=s.end_date;o=new Date(s.end_date).getTime()>Date.now()?"subscription_will_be_cancelled":"subscription_cancelled"}else s.is_active?new Date(s.start_date)>new Date?(n=s.start_date,o="subscription_will_be_active"):(r="bg-success-10 text-success",n=s.next_transaction_date,o="subscription_active"):(n="",o="subscription_inactive");return a(i||(i=l`
22
22
  <foxy-i18n
23
23
  data-testclass="i18n statuses"
24
24
  class="px-s py-xs text-m font-medium block whitespace-normal rounded ${0}"
@@ -28,7 +28,7 @@ import{_ as e}from"./shared-1522d76f.js";import{T as t}from"./shared-16b391d9.js
28
28
  .options=${0}
29
29
  >
30
30
  </foxy-i18n>
31
- `),r,t,o,e,{date:a})}},c.subTokenURLColumn={cell:e=>e.html(r||(r=l`
31
+ `),r,t,o,e,{date:n})}},c.subTokenURLColumn={cell:e=>e.html(r||(r=l`
32
32
  <a
33
33
  data-testclass="links"
34
34
  target="_blank"
@@ -1,4 +1,4 @@
1
- import"./shared-ac62d098.js";import"./shared-d28b95c6.js";import{T as e}from"./shared-2d40129d.js";import{h as t}from"./shared-1c07b1be.js";import{D as i}from"./shared-550f9cae.js";const n=t`<dom-module id="lumo-number-field" theme-for="vaadin-number-field">
1
+ import"./shared-655e7c5f.js";import"./shared-cfed658c.js";import{T as e}from"./shared-4482e7b9.js";import{h as t}from"./shared-bf695fe7.js";import{D as i}from"./shared-331a223c.js";const n=t`<dom-module id="lumo-number-field" theme-for="vaadin-number-field">
2
2
  <template>
3
3
  <style include="lumo-field-button">
4
4
  :host {
@@ -156,4 +156,4 @@ const tt=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeSha
156
156
  * subject to an additional IP rights grant found at
157
157
  * http://polymer.github.io/PATENTS.txt
158
158
  */
159
- (window.litElementVersions||(window.litElementVersions=[])).push("2.5.1");const rt={};class ot extends Z{static getStyles(){return this.styles}static _getUniqueStyles(){if(this.hasOwnProperty(JSCompiler_renameProperty("_styles",this)))return;const t=this.getStyles();if(Array.isArray(t)){const e=(t,s)=>t.reduceRight(((t,s)=>Array.isArray(s)?e(s,t):(t.add(s),t)),s),s=e(t,new Set),i=[];s.forEach((t=>i.unshift(t))),this._styles=i}else this._styles=void 0===t?[]:[t];this._styles=this._styles.map((t=>{if(t instanceof CSSStyleSheet&&!tt){const e=Array.prototype.slice.call(t.cssRules).reduce(((t,e)=>t+e.cssText),"");return it(e)}return t}))}initialize(){super.initialize(),this.constructor._getUniqueStyles(),this.renderRoot=this.createRenderRoot(),window.ShadowRoot&&this.renderRoot instanceof window.ShadowRoot&&this.adoptStyles()}createRenderRoot(){return this.attachShadow(this.constructor.shadowRootOptions)}adoptStyles(){const t=this.constructor._styles;0!==t.length&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow?tt?this.renderRoot.adoptedStyleSheets=t.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):this._needsShimAdoptedStyleSheets=!0:window.ShadyCSS.ScopingShim.prepareAdoptedCssText(t.map((t=>t.cssText)),this.localName))}connectedCallback(){super.connectedCallback(),this.hasUpdated&&void 0!==window.ShadyCSS&&window.ShadyCSS.styleElement(this)}update(t){const e=this.render();super.update(t),e!==rt&&this.constructor.render(e,this.renderRoot,{scopeName:this.localName,eventContext:this}),this._needsShimAdoptedStyleSheets&&(this._needsShimAdoptedStyleSheets=!1,this.constructor._styles.forEach((t=>{const e=document.createElement("style");e.textContent=t.cssText,this.renderRoot.appendChild(e)})))}render(){return rt}}ot.finalized=!0,ot.render=(t,e,i)=>{if(!i||"object"!=typeof i||!i.scopeName)throw new Error("The `scopeName` option is required.");const n=i.scopeName,r=I.has(e),o=z&&11===e.nodeType&&!!e.host,a=o&&!J.has(n),l=a?document.createDocumentFragment():e;if(j(t,l,Object.assign({templateFactory:W(n)},i)),a){const t=I.get(l);I.delete(l);const i=t.value instanceof v?t.value.template:void 0;G(n,l,i),s(e,e.firstChild),e.appendChild(l),I.set(e,t)}!r&&o&&window.ShadyCSS.styleElement(e.host)},ot.shadowRootOptions={mode:"open"};export{A,V as B,st as C,k as E,ot as L,E as N,O as P,a as T,x as a,d as b,nt as c,f as d,s as e,j as f,B as h,i as m,g as n,e as r,F as s,L as t,it as u};
159
+ (window.litElementVersions||(window.litElementVersions=[])).push("2.5.1");const rt={};class ot extends Z{static getStyles(){return this.styles}static _getUniqueStyles(){if(this.hasOwnProperty(JSCompiler_renameProperty("_styles",this)))return;const t=this.getStyles();if(Array.isArray(t)){const e=(t,s)=>t.reduceRight(((t,s)=>Array.isArray(s)?e(s,t):(t.add(s),t)),s),s=e(t,new Set),i=[];s.forEach((t=>i.unshift(t))),this._styles=i}else this._styles=void 0===t?[]:[t];this._styles=this._styles.map((t=>{if(t instanceof CSSStyleSheet&&!tt){const e=Array.prototype.slice.call(t.cssRules).reduce(((t,e)=>t+e.cssText),"");return it(e)}return t}))}initialize(){super.initialize(),this.constructor._getUniqueStyles(),this.renderRoot=this.createRenderRoot(),window.ShadowRoot&&this.renderRoot instanceof window.ShadowRoot&&this.adoptStyles()}createRenderRoot(){return this.attachShadow(this.constructor.shadowRootOptions)}adoptStyles(){const t=this.constructor._styles;0!==t.length&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow?tt?this.renderRoot.adoptedStyleSheets=t.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):this._needsShimAdoptedStyleSheets=!0:window.ShadyCSS.ScopingShim.prepareAdoptedCssText(t.map((t=>t.cssText)),this.localName))}connectedCallback(){super.connectedCallback(),this.hasUpdated&&void 0!==window.ShadyCSS&&window.ShadyCSS.styleElement(this)}update(t){const e=this.render();super.update(t),e!==rt&&this.constructor.render(e,this.renderRoot,{scopeName:this.localName,eventContext:this}),this._needsShimAdoptedStyleSheets&&(this._needsShimAdoptedStyleSheets=!1,this.constructor._styles.forEach((t=>{const e=document.createElement("style");e.textContent=t.cssText,this.renderRoot.appendChild(e)})))}render(){return rt}}ot.finalized=!0,ot.render=(t,e,i)=>{if(!i||"object"!=typeof i||!i.scopeName)throw new Error("The `scopeName` option is required.");const n=i.scopeName,r=I.has(e),o=z&&11===e.nodeType&&!!e.host,a=o&&!J.has(n),l=a?document.createDocumentFragment():e;if(j(t,l,Object.assign({templateFactory:W(n)},i)),a){const t=I.get(l);I.delete(l);const i=t.value instanceof v?t.value.template:void 0;G(n,l,i),s(e,e.firstChild),e.appendChild(l),I.set(e,t)}!r&&o&&window.ShadyCSS.styleElement(e.host)},ot.shadowRootOptions={mode:"open"};export{A,V as B,st as C,k as E,ot as L,E as N,O as P,a as T,x as a,d as b,nt as c,f as d,e,s as f,B as h,i as m,g as n,j as r,F as s,L as t,it as u};
@@ -1,4 +1,4 @@
1
- import{f as e,M as t,n as s,c as i,d as n,g as r,V as o,j as l,k as a,l as h,u as c,m as d,o as u,w as _,p,E as f,G as m,q as y,r as g,s as b,D as C,t as v,v as x,x as w,P as S,y as P,z as E,e as I,A as O,h as A}from"./shared-1c07b1be.js";import{l as k,b as N,s as T,c as M,u as D,d as R,f as F}from"./shared-550f9cae.js";
1
+ import{f as e,M as t,n as s,c as i,d as n,g as r,V as o,j as l,k as a,l as h,u as c,m as d,o as u,w as _,p,E as f,G as m,q as y,r as g,s as b,D as C,t as v,v as x,x as w,P as S,y as P,z as E,e as I,A as O,h as A}from"./shared-bf695fe7.js";import{l as k,b as N,s as T,c as M,u as D,d as R,f as F}from"./shared-331a223c.js";
2
2
  /**
3
3
  @license
4
4
  Copyright (c) 2017 The Polymer Project Authors. All rights reserved.
@@ -1 +1 @@
1
- import{c as e,am as t,_ as n}from"./shared-1522d76f.js";import{h as r,L as s}from"./shared-7f33a83a.js";import{A as o}from"./shared-f1e743df.js";import"./shared-250a399a.js";import{C as i}from"./shared-b23c903e.js";import{F as a}from"./shared-343d1fd7.js";import{I as u}from"./shared-30cbf0a6.js";var l=e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.formatCookie=void 0;var n=function(e){var t=e.path,n=e.domain,r=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==n?"":";domain="+n,null==r?"":";expires="+r.toUTCString(),void 0===s||!1===s?"":";secure",null===o?"":";SameSite="+o].join("")};t.formatCookie=function(e,t,r){return[encodeURIComponent(e),"=",encodeURIComponent(t),n(r)].join("")}})),c=e((function(e,t){function n(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 n=[],r=!0,s=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(r=(i=a.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(e){s=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(s)throw o}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(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 r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}Object.defineProperty(t,"__esModule",{value:!0}),t.parseCookies=void 0;t.parseCookies=function(e){if(0===e.length)return{};var t={},r=new RegExp("\\s*;\\s*");return e.split(r).forEach((function(e){var r=n(e.split("="),2),s=r[0],o=r[1],i=decodeURIComponent(s),a=decodeURIComponent(o);t[i]=a})),t}})),h=e((function(e,t){function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}Object.defineProperty(t,"__esModule",{value:!0}),t.CookieStorage=void 0;var r=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,r,o;return t=e,(r=[{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()),n=Object.keys(t).sort();return e<n.length?n[e]:null}},{key:"removeItem",value:function(e,t){var n=Object.assign(Object.assign(Object.assign({},this._defaultOptions),t),{expires:new Date(0)}),r=l.formatCookie(e,"",n);this._setCookie(r)}},{key:"setItem",value:function(e,t,n){var r=Object.assign(Object.assign({},this._defaultOptions),n),s=l.formatCookie(e,t,r);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}}])&&n(t.prototype,r),o&&n(t,o),e}();t.CookieStorage=r;var s={defineProperty:function(e,t,n){return e.setItem(t.toString(),String(n.value)),!0},deleteProperty:function(e,t){return e.removeItem(t.toString()),!0},get:function(e,t,n){if("string"==typeof t&&t in e)return e[t];var r=e.getItem(t.toString());return null!==r?r: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=[],n=0;n<e.length;n++){var r=e.key(n);null!==r&&t.push(r)}return t},preventExtensions:function(e){throw new TypeError("can't prevent extensions on this proxy object")},set:function(e,t,n,r){return e.setItem(t.toString(),String(n)),!0}}})),p=t(e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"CookieStorage",{enumerable:!0,get:function(){return h.CookieStorage}}),Object.defineProperty(t,"formatCookie",{enumerable:!0,get:function(){return l.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"),n=super.getItem("fx.customer.start"),r=super.getItem("fx.customer.jwt");if(null===e||null===t||null===n||null===r)return null;const s={session_token:e,date_created:n,expires_in:parseInt(t),jwt:r},o=super.getItem("fx.customer.sso");return null!==o&&(s.sso=o),JSON.stringify(s)}return super.getItem(e)}setItem(e,t,n){if(e!==o.SESSION)return super.setItem(e,t,n);{const e=JSON.parse(t),n=1e3*e.expires_in,r=new Date(new Date(e.date_created).getTime()+n);super.setItem("fx.customer",e.session_token,{expires:r}),super.setItem("fx.customer.jwt",e.jwt,{expires:r}),super.setItem("fx.customer.start",e.date_created,{expires:r}),super.setItem("fx.customer.duration",String(e.expires_in),{expires:r}),e.sso&&super.setItem("fx.customer.sso",e.sso,{expires:r})}}clear(){for(let e=0;e<this.length;){const t=super.key(e);t.startsWith("fx.customer")?super.removeItem(t):e++}}}const d=new f;let g,m=e=>e;class _ extends(i(u(s))){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 n=new a("fetch",{cancelable:!0,composed:!0,request:t.request,bubbles:!0,reject:e=>t.respondWith(Promise.reject(e)),resolve:r=>{"foxy://customer-api/session"===n.request.url&&e.requestUpdate(),401===r.status&&e.requestUpdate(),t.respondWith(Promise.resolve(r))}});e.dispatchEvent(n)&&n.respondWith(e.__handleRequest(n.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 r(g||(g=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:d,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 _.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 _.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 __handleVirtualAuthSessionAny(e){return new Response(JSON.stringify({_links:{self:{href:e.url}},message:"POST to this endpoint to sign in"}))}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 __handleVirtualAuthRecoverAny(e){return new Response(JSON.stringify({_links:{self:{href:e.url}},message:"POST to this endpoint to request a password reset"}))}async __handleVirtualAuthSignUpPost(e){const t=await e.clone().json();try{await this.api.signUp(t)}catch(e){if(!(e instanceof o.AuthError))throw e;let t,n;if("UNAUTHORIZED"===e.code)t="Customer registration is disabled for this store.",n=401;else if("UNAVAILABLE"===e.code)t="This email address is already in use by an existing customer of this store.",n=403;else{if("INVALID_FORM"!==e.code)throw e;t="Client verification failed.",n=400}const r=JSON.stringify({total:1,_embedded:{"fx:errors":[{message:t}]}});return new Response(r,{status:n})}return t.password&&await this.api.signIn(t),this.requestUpdate(),this.dispatchEvent(new _.SignUpEvent("signup")),new Response(JSON.stringify({_links:{self:{href:e.url}},message:"Account created"}))}async __handleVirtualAuthSignUpAny(e){return new Response(JSON.stringify({_links:{self:{href:e.url}},message:"POST to this endpoint to create an account"}))}async __handleRequest(e){const t=e.url,n=e.method;try{if(t.startsWith("foxy://customer-api/session"))return"DELETE"===n?this.__handleVirtualAuthSessionDelete():"POST"===n?this.__handleVirtualAuthSessionPost(e):this.__handleVirtualAuthSessionAny(e);if(t.startsWith("foxy://customer-api/recover"))return"POST"===n?this.__handleVirtualAuthRecoverPost(e):this.__handleVirtualAuthRecoverAny(e);if(t.startsWith("foxy://customer-api/signup"))return"POST"===n?this.__handleVirtualAuthSignUpPost(e):this.__handleVirtualAuthSignUpAny(e);const r=await this.api.fetch(e);return 401===r.status&&(this.api.storage.clear(),this.dispatchEvent(new _.SignOutEvent("signout")),this.requestUpdate()),r}catch(e){return new Response(null,{status:500})}}}_.SignOutEvent=class extends CustomEvent{},_.SignInEvent=class extends CustomEvent{},_.SignUpEvent=class extends CustomEvent{};export{_ as C};
1
+ import{c as e,am as t,_ as n}from"./shared-1522d76f.js";import{h as r,L as s}from"./shared-dc73b9a5.js";import{A as o}from"./shared-f1e743df.js";import"./shared-250a399a.js";import{C as i}from"./shared-9f570db0.js";import{F as a}from"./shared-343d1fd7.js";import{I as u}from"./shared-30cbf0a6.js";var l=e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.formatCookie=void 0;var n=function(e){var t=e.path,n=e.domain,r=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==n?"":";domain="+n,null==r?"":";expires="+r.toUTCString(),void 0===s||!1===s?"":";secure",null===o?"":";SameSite="+o].join("")};t.formatCookie=function(e,t,r){return[encodeURIComponent(e),"=",encodeURIComponent(t),n(r)].join("")}})),c=e((function(e,t){function n(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 n=[],r=!0,s=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(r=(i=a.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(e){s=!0,o=e}finally{try{r||null==a.return||a.return()}finally{if(s)throw o}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(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 r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}Object.defineProperty(t,"__esModule",{value:!0}),t.parseCookies=void 0;t.parseCookies=function(e){if(0===e.length)return{};var t={},r=new RegExp("\\s*;\\s*");return e.split(r).forEach((function(e){var r=n(e.split("="),2),s=r[0],o=r[1],i=decodeURIComponent(s),a=decodeURIComponent(o);t[i]=a})),t}})),h=e((function(e,t){function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}Object.defineProperty(t,"__esModule",{value:!0}),t.CookieStorage=void 0;var r=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,r,o;return t=e,(r=[{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()),n=Object.keys(t).sort();return e<n.length?n[e]:null}},{key:"removeItem",value:function(e,t){var n=Object.assign(Object.assign(Object.assign({},this._defaultOptions),t),{expires:new Date(0)}),r=l.formatCookie(e,"",n);this._setCookie(r)}},{key:"setItem",value:function(e,t,n){var r=Object.assign(Object.assign({},this._defaultOptions),n),s=l.formatCookie(e,t,r);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}}])&&n(t.prototype,r),o&&n(t,o),e}();t.CookieStorage=r;var s={defineProperty:function(e,t,n){return e.setItem(t.toString(),String(n.value)),!0},deleteProperty:function(e,t){return e.removeItem(t.toString()),!0},get:function(e,t,n){if("string"==typeof t&&t in e)return e[t];var r=e.getItem(t.toString());return null!==r?r: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=[],n=0;n<e.length;n++){var r=e.key(n);null!==r&&t.push(r)}return t},preventExtensions:function(e){throw new TypeError("can't prevent extensions on this proxy object")},set:function(e,t,n,r){return e.setItem(t.toString(),String(n)),!0}}})),p=t(e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"CookieStorage",{enumerable:!0,get:function(){return h.CookieStorage}}),Object.defineProperty(t,"formatCookie",{enumerable:!0,get:function(){return l.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"),n=super.getItem("fx.customer.start"),r=super.getItem("fx.customer.jwt");if(null===e||null===t||null===n||null===r)return null;const s={session_token:e,date_created:n,expires_in:parseInt(t),jwt:r},o=super.getItem("fx.customer.sso");return null!==o&&(s.sso=o),JSON.stringify(s)}return super.getItem(e)}setItem(e,t,n){if(e!==o.SESSION)return super.setItem(e,t,n);{const e=JSON.parse(t),n=1e3*e.expires_in,r=new Date(new Date(e.date_created).getTime()+n);super.setItem("fx.customer",e.session_token,{expires:r}),super.setItem("fx.customer.jwt",e.jwt,{expires:r}),super.setItem("fx.customer.start",e.date_created,{expires:r}),super.setItem("fx.customer.duration",String(e.expires_in),{expires:r}),e.sso&&super.setItem("fx.customer.sso",e.sso,{expires:r})}}clear(){for(let e=0;e<this.length;){const t=super.key(e);t.startsWith("fx.customer")?super.removeItem(t):e++}}}const d=new f;let g,m=e=>e;class _ extends(i(u(s))){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 n=new a("fetch",{cancelable:!0,composed:!0,request:t.request,bubbles:!0,reject:e=>t.respondWith(Promise.reject(e)),resolve:r=>{"foxy://customer-api/session"===n.request.url&&e.requestUpdate(),401===r.status&&e.requestUpdate(),t.respondWith(Promise.resolve(r))}});e.dispatchEvent(n)&&n.respondWith(e.__handleRequest(n.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 r(g||(g=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:d,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 _.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 _.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 __handleVirtualAuthSessionAny(e){return new Response(JSON.stringify({_links:{self:{href:e.url}},message:"POST to this endpoint to sign in"}))}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 __handleVirtualAuthRecoverAny(e){return new Response(JSON.stringify({_links:{self:{href:e.url}},message:"POST to this endpoint to request a password reset"}))}async __handleVirtualAuthSignUpPost(e){const t=await e.clone().json();try{await this.api.signUp(t)}catch(e){if(!(e instanceof o.AuthError))throw e;let t,n;if("UNAUTHORIZED"===e.code)t="Customer registration is disabled for this store.",n=401;else if("UNAVAILABLE"===e.code)t="This email address is already in use by an existing customer of this store.",n=403;else{if("INVALID_FORM"!==e.code)throw e;t="Client verification failed.",n=400}const r=JSON.stringify({total:1,_embedded:{"fx:errors":[{message:t}]}});return new Response(r,{status:n})}return t.password&&await this.api.signIn(t),this.requestUpdate(),this.dispatchEvent(new _.SignUpEvent("signup")),new Response(JSON.stringify({_links:{self:{href:e.url}},message:"Account created"}))}async __handleVirtualAuthSignUpAny(e){return new Response(JSON.stringify({_links:{self:{href:e.url}},message:"POST to this endpoint to create an account"}))}async __handleRequest(e){const t=e.url,n=e.method;try{if(t.startsWith("foxy://customer-api/session"))return"DELETE"===n?this.__handleVirtualAuthSessionDelete():"POST"===n?this.__handleVirtualAuthSessionPost(e):this.__handleVirtualAuthSessionAny(e);if(t.startsWith("foxy://customer-api/recover"))return"POST"===n?this.__handleVirtualAuthRecoverPost(e):this.__handleVirtualAuthRecoverAny(e);if(t.startsWith("foxy://customer-api/signup"))return"POST"===n?this.__handleVirtualAuthSignUpPost(e):this.__handleVirtualAuthSignUpAny(e);const r=await this.api.fetch(e);return 401===r.status&&(this.api.storage.clear(),this.dispatchEvent(new _.SignOutEvent("signout")),this.requestUpdate()),r}catch(e){return new Response(null,{status:500})}}}_.SignOutEvent=class extends CustomEvent{},_.SignInEvent=class extends CustomEvent{},_.SignUpEvent=class extends CustomEvent{};export{_ as C};
@@ -0,0 +1 @@
1
+ import{m as e,_ as t}from"./shared-1522d76f.js";import"./shared-db98729a.js";import"./shared-4482e7b9.js";import"./shared-44bb85d8.js";import"./shared-f94fa366.js";import"./shared-8ab2ba91.js";import{p as a}from"./shared-f5d4dda0.js";import{d as i,P as s,A as r,L as d,c as l,h as n}from"./shared-dc73b9a5.js";import{a as o}from"./shared-331a223c.js";import{I as h}from"./shared-30cbf0a6.js";const c=i((e=>t=>{const{element:a,name:i,strings:d}=t.committer;if(2!==d.length||""!==d[0]||""!==d[1])throw new Error("live directive bindings must not contain any static values");if(t.committer.parts.length>1)throw new Error("live directive must be the only directive for an attribute or property");if(t instanceof s)a[i]!==e&&t.setValue(e);else{if(!(t instanceof r))throw new Error("live directive can only be used on attributes or properties");a.getAttribute(i)!==e&&t.setValue(e)}}));class u extends CustomEvent{constructor(e){super("change",{detail:e})}}class m extends u{}let p,v,b=e=>e;class g extends(o(h(d))){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:i}=a(e);return[t.toString(),i]}},this.__getItems=e((e=>{const t=a(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 t(t({},super.properties),{},{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}})}static get styles(){return l(p||(p=b`: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}`))}render(){return n(v||(v=b` <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,c(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)}checkValidity(){return!0}__handleChange(e){const t=e.target;this.value=t.value,this.dispatchEvent(new m(this.value))}}export{u as D,g as F};
@@ -1 +1 @@
1
- import"./shared-df8380e1.js";import"./shared-2d40129d.js";import{I as e}from"./shared-9f039798.js";import{_ as i}from"./shared-1522d76f.js";import{i as r}from"./shared-d3bf9ac0.js";import{h as s}from"./shared-7f33a83a.js";let t,l,a,n=e=>e;customElements.define("foxy-internal-number-control",class extends e{constructor(){super(...arguments),this.prefix=null,this.suffix=null,this.min=null,this.max=null}static get properties(){return i(i({},super.properties),{},{prefix:{},suffix:{},min:{type:Number},max:{type:Number}})}renderControl(){var e,i;return s(t||(t=n` <vaadin-number-field error-message="${0}" placeholder="${0}" helper-text="${0}" label="${0}" class="w-full" min="${0}" max="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" .value="${0}" clear-button-visible @keydown="${0}" @change="${0}"> ${0} ${0} </vaadin-number-field> `),r(this._errorMessage),this.placeholder,this.helperText,this.label,r(null!==(e=this.min)&&void 0!==e?e:void 0),r(null!==(i=this.max)&&void 0!==i?i:void 0),this.disabled,this.readonly,this._checkValidity,String(this._value),(e=>{var i;return"Enter"===e.key&&(null===(i=this.nucleon)||void 0===i?void 0:i.submit())}),(e=>{const i=e.currentTarget;this._value=parseFloat(i.value)}),this.prefix?s(l||(l=n`<div slot="prefix">${0}</div>`),this.prefix):"",this.suffix?s(a||(a=n`<div class="pr-s font-medium" slot="suffix">${0}</div>`),this.suffix):"")}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:0}set _value(e){super._value=e}});
1
+ import"./shared-db98729a.js";import"./shared-4482e7b9.js";import{I as e}from"./shared-2062c274.js";import{_ as i}from"./shared-1522d76f.js";import{i as r}from"./shared-9803aa7c.js";import{h as s}from"./shared-dc73b9a5.js";let t,l,a,n=e=>e;customElements.define("foxy-internal-number-control",class extends e{constructor(){super(...arguments),this.prefix=null,this.suffix=null,this.min=null,this.max=null}static get properties(){return i(i({},super.properties),{},{prefix:{},suffix:{},min:{type:Number},max:{type:Number}})}renderControl(){var e,i;return s(t||(t=n` <vaadin-number-field error-message="${0}" placeholder="${0}" helper-text="${0}" label="${0}" class="w-full" min="${0}" max="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" .value="${0}" clear-button-visible @keydown="${0}" @change="${0}"> ${0} ${0} </vaadin-number-field> `),r(this._errorMessage),this.placeholder,this.helperText,this.label,r(null!==(e=this.min)&&void 0!==e?e:void 0),r(null!==(i=this.max)&&void 0!==i?i:void 0),this.disabled,this.readonly,this._checkValidity,String(this._value),(e=>{var i;return"Enter"===e.key&&(null===(i=this.nucleon)||void 0===i?void 0:i.submit())}),(e=>{const i=e.currentTarget;this._value=parseFloat(i.value)}),this.prefix?s(l||(l=n`<div slot="prefix">${0}</div>`),this.prefix):"",this.suffix?s(a||(a=n`<div class="pr-s font-medium" slot="suffix">${0}</div>`),this.suffix):"")}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:0}set _value(e){super._value=e}});
@@ -1,4 +1,4 @@
1
- import{E as e,T as t}from"./shared-d28b95c6.js";import{h as a,P as i}from"./shared-1c07b1be.js";import{a as r}from"./shared-2d40129d.js";import{C as l}from"./shared-61ade33e.js";const o=a`<dom-module id="lumo-text-area" theme-for="vaadin-text-area">
1
+ import{E as e,T as t}from"./shared-cfed658c.js";import{h as a,P as i}from"./shared-bf695fe7.js";import{a as r}from"./shared-4482e7b9.js";import{C as l}from"./shared-61ade33e.js";const o=a`<dom-module id="lumo-text-area" theme-for="vaadin-text-area">
2
2
  <template>
3
3
  <style include="lumo-text-field">
4
4
  [part="input-field"],
@@ -1 +1 @@
1
- import{A as e,_ as t}from"./shared-1522d76f.js";import{h as n,L as r}from"./shared-7f33a83a.js";import{i as s,a}from"./shared-550f9cae.js";import{F as i}from"./shared-343d1fd7.js";import{I as o}from"./shared-30cbf0a6.js";const l={type:"backend",init:()=>{},read:(t,n,r)=>{const s=async e=>{const t=e.ok?null:new Error(await e.text()),n=!!e.ok&&await e.json();r(t,n)},a=e=>{const t=e instanceof Error?e:new Error(String(e));r(t,!1)},o=new i("fetch",{cancelable:!0,composed:!0,bubbles:!0,request:new e.WHATWGRequest(`foxy://i18n/${n}/${t}`),resolve:s,reject:a});dispatchEvent(o),o.defaultPrevented||fetch(o.request).then(s).catch(a)},create:()=>{throw new Error("foxy-i18n does not support resource creation")}};function c(e,t=!1){var n;const r=e.replace(/^\.?\d+/,""),s=e.substring(0,e.length-r.length);return{count:".5"===s?.5:parseInt(s),units:t&&null!==(n={y:"year",m:"month",w:"week",d:"day"}[r])&&void 0!==n?n:r}}const u={discount:({ns:e,type:t,details:n},r,s)=>{const a=t.endsWith("_percentage")?.01:1,i=n.split("|"),o=`${["allunits","incremental","repeat","single"].includes(i[0])?i.shift():"single"}_${t}_discount_summary`;return i.map((t=>{var n,r;const s=null!==(r=null===(n=/[-+]/.exec(t))||void 0===n?void 0:n.index)&&void 0!==r?r:-1,i=parseFloat(t.substring(s))*a,l=parseFloat(t.substring(0,s));return`$t(${o}, ${JSON.stringify({maximumFractionDigits:10,adjustment:i,from:l,ns:e})})`})).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,n,r,s)=>{let a=null;try{"number"==typeof e&&(a=e.toLocaleString(r,t(t({},s),{},{style:"percent"})))}catch(e){console.warn(`i18next formatter error: ${e.message}`)}return a||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",signDisplay:null==r?void 0:r.signDisplay,style:"currency",currency:a})}catch(t){return e}},date:(e,t,n,r)=>{var s,a,i;if(!e)return"$t(unknown)";const o=new Date(e),l=null!==(s=null==r?void 0:r.month)&&void 0!==s?s:"long",c=(null!==(a=null==r?void 0:r.year)&&void 0!==a?a:(new Date).getFullYear()===o.getFullYear())?void 0:"numeric",u=null!==(i=null==r?void 0:r.day)&&void 0!==i?i:"numeric";return o.toLocaleDateString(n,{month:l,year:c,day:u})},time:(e,t,n)=>new Date(e).toLocaleTimeString(n,{hour:"numeric",minute:"numeric"})};let d,p=e=>e;class m extends(a(o(r),"")){constructor(){super(...arguments),this.options={},this.key=""}static onTranslationChange(e){const t=["initialized","loaded"],n=["removed","added"];return t.forEach((t=>m.i18next.on(t,e))),n.forEach((t=>m.i18next.store.on(t,e))),()=>{t.forEach((t=>m.i18next.off(t,e))),n.forEach((t=>m.i18next.store.off(t,e)))}}static onResourceFetch(e){const t=t=>{if(t instanceof i&&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=m.onTranslationChange((()=>this.requestUpdate()))}render(){return n(d||(d=p`<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)}}m.FetchEvent=i,m.i18next=s.createInstance().use(l),m.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=u[t])||void 0===s?void 0:s.call(u,e,t,n,r))&&void 0!==a?a:e}),e),escapeValue:!1},fallbackLng:"en",fallbackNS:"shared",defaultNS:"shared",ns:["shared"]}),customElements.define("foxy-i18n",m);export{m as I,c as p};
1
+ import{A as e,_ as t}from"./shared-1522d76f.js";import{h as n,L as r}from"./shared-dc73b9a5.js";import{i as s,a}from"./shared-331a223c.js";import{F as i}from"./shared-343d1fd7.js";import{I as o}from"./shared-30cbf0a6.js";const l={type:"backend",init:()=>{},read:(t,n,r)=>{const s=async e=>{const t=e.ok?null:new Error(await e.text()),n=!!e.ok&&await e.json();r(t,n)},a=e=>{const t=e instanceof Error?e:new Error(String(e));r(t,!1)},o=new i("fetch",{cancelable:!0,composed:!0,bubbles:!0,request:new e.WHATWGRequest(`foxy://i18n/${n}/${t}`),resolve:s,reject:a});dispatchEvent(o),o.defaultPrevented||fetch(o.request).then(s).catch(a)},create:()=>{throw new Error("foxy-i18n does not support resource creation")}};function c(e,t=!1){var n;const r=e.replace(/^\.?\d+/,""),s=e.substring(0,e.length-r.length);return{count:".5"===s?.5:parseInt(s),units:t&&null!==(n={y:"year",m:"month",w:"week",d:"day"}[r])&&void 0!==n?n:r}}const u={discount:({ns:e,type:t,details:n},r,s)=>{const a=t.endsWith("_percentage")?.01:1,i=n.split("|"),o=`${["allunits","incremental","repeat","single"].includes(i[0])?i.shift():"single"}_${t}_discount_summary`;return i.map((t=>{var n,r;const s=null!==(r=null===(n=/[-+]/.exec(t))||void 0===n?void 0:n.index)&&void 0!==r?r:-1,i=parseFloat(t.substring(s))*a,l=parseFloat(t.substring(0,s));return`$t(${o}, ${JSON.stringify({maximumFractionDigits:10,adjustment:i,from:l,ns:e})})`})).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,n,r,s)=>{let a=null;try{"number"==typeof e&&(a=e.toLocaleString(r,t(t({},s),{},{style:"percent"})))}catch(e){console.warn(`i18next formatter error: ${e.message}`)}return a||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",signDisplay:null==r?void 0:r.signDisplay,style:"currency",currency:a})}catch(t){return e}},date:(e,t,n,r)=>{var s,a,i;if(!e)return"$t(unknown)";const o=new Date(e),l=null!==(s=null==r?void 0:r.month)&&void 0!==s?s:"long",c=(null!==(a=null==r?void 0:r.year)&&void 0!==a?a:(new Date).getFullYear()===o.getFullYear())?void 0:"numeric",u=null!==(i=null==r?void 0:r.day)&&void 0!==i?i:"numeric";return o.toLocaleDateString(n,{month:l,year:c,day:u})},time:(e,t,n)=>new Date(e).toLocaleTimeString(n,{hour:"numeric",minute:"numeric"})};let d,p=e=>e;class m extends(a(o(r),"")){constructor(){super(...arguments),this.options={},this.key=""}static onTranslationChange(e){const t=["initialized","loaded"],n=["removed","added"];return t.forEach((t=>m.i18next.on(t,e))),n.forEach((t=>m.i18next.store.on(t,e))),()=>{t.forEach((t=>m.i18next.off(t,e))),n.forEach((t=>m.i18next.store.off(t,e)))}}static onResourceFetch(e){const t=t=>{if(t instanceof i&&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=m.onTranslationChange((()=>this.requestUpdate()))}render(){return n(d||(d=p`<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)}}m.FetchEvent=i,m.i18next=s.createInstance().use(l),m.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=u[t])||void 0===s?void 0:s.call(u,e,t,n,r))&&void 0!==a?a:e}),e),escapeValue:!1},fallbackLng:"en",fallbackNS:"shared",defaultNS:"shared",ns:["shared"]}),customElements.define("foxy-i18n",m);export{m as I,c as p};
@@ -1,4 +1,4 @@
1
- import{E as e,T as t}from"./shared-d28b95c6.js";import"./shared-2d40129d.js";import{h as s,P as r}from"./shared-1c07b1be.js";import{F as l}from"./shared-902b0773.js";const i=s`<dom-module id="lumo-custom-field" theme-for="vaadin-custom-field">
1
+ import{E as e,T as t}from"./shared-cfed658c.js";import"./shared-fd0a4026.js";import{h as s,P as r}from"./shared-bf695fe7.js";import{F as l}from"./shared-e40937c5.js";const i=s`<dom-module id="lumo-custom-field" theme-for="vaadin-custom-field">
2
2
  <template>
3
3
  <style include="lumo-required-field">
4
4
  :host {
@@ -0,0 +1 @@
1
+ import"./shared-cfed658c.js";const n=document.createElement("template");n.innerHTML='<dom-module id="lumo-required-field">\n <template>\n <style>\n [part="label"] {\n align-self: flex-start;\n color: var(--lumo-secondary-text-color);\n font-weight: 500;\n font-size: var(--lumo-font-size-s);\n margin-left: calc(var(--lumo-border-radius-m) / 4);\n transition: color 0.2s;\n line-height: 1;\n padding-bottom: 0.5em;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n position: relative;\n max-width: 100%;\n box-sizing: border-box;\n }\n\n :host([has-label])::before {\n margin-top: calc(var(--lumo-font-size-s) * 1.5);\n }\n\n :host([has-label]) {\n padding-top: var(--lumo-space-m);\n }\n\n :host([required]) [part="label"] {\n padding-right: 1em;\n }\n\n [part="label"]::after {\n content: var(--lumo-required-field-indicator, "•");\n transition: opacity 0.2s;\n opacity: 0;\n color: var(--lumo-primary-text-color);\n position: absolute;\n right: 0;\n width: 1em;\n text-align: center;\n }\n\n :host([required]:not([has-value])) [part="label"]::after {\n opacity: 1;\n }\n\n :host([invalid]) [part="label"]::after {\n color: var(--lumo-error-text-color);\n }\n\n [part="error-message"] {\n margin-left: calc(var(--lumo-border-radius-m) / 4);\n font-size: var(--lumo-font-size-xs);\n line-height: var(--lumo-line-height-xs);\n color: var(--lumo-error-text-color);\n will-change: max-height;\n transition: 0.4s max-height;\n max-height: 5em;\n }\n\n /* Margin that doesn’t reserve space when there’s no error message */\n [part="error-message"]:not(:empty)::before,\n [part="error-message"]:not(:empty)::after {\n content: "";\n display: block;\n height: 0.4em;\n }\n\n :host(:not([invalid])) [part="error-message"] {\n max-height: 0;\n overflow: hidden;\n }\n\n /* RTL specific styles */\n\n :host([dir="rtl"]) [part="label"] {\n margin-left: 0;\n margin-right: calc(var(--lumo-border-radius-m) / 4);\n }\n\n :host([required][dir="rtl"]) [part="label"] {\n padding-left: 1em;\n padding-right: 0;\n }\n\n :host([dir="rtl"]) [part="label"]::after {\n right: auto;\n left: 0;\n }\n\n :host([dir="rtl"]) [part="error-message"] {\n margin-left: 0;\n margin-right: calc(var(--lumo-border-radius-m) / 4);\n }\n\n </style>\n </template>\n</dom-module>',document.head.appendChild(n.content);
@@ -1,12 +1,15 @@
1
1
  {
2
+ "back": "Go back",
2
3
  "email": "Email",
3
4
  "recover_access": "Get temporary password",
5
+ "recover_access_hint": "Enter your email to get a temporary password",
4
6
  "recover_access_success": "Done! Please check your email for further instructions.",
5
- "unknown_error": "An unknown error has occured. Please try again later.",
7
+ "unknown_error": "We can't issue a one-time code for this account at the moment. If you've already requested the code, please wait a few minutes before trying again.",
6
8
  "v8n_invalid_email": "Invalid email",
7
9
  "v8n_required": "Required",
8
10
  "spinner": {
11
+ "refresh": "Refresh",
9
12
  "loading_busy": "Loading",
10
- "loading_error": "Failed to load"
13
+ "loading_error": "Unknown error"
11
14
  }
12
15
  }
@@ -6,6 +6,6 @@
6
6
  "spinner": {
7
7
  "loading_busy": "Loading",
8
8
  "loading_empty": "No data",
9
- "loading_error": "Failed to load"
9
+ "loading_error": "Unknown error"
10
10
  }
11
11
  }
@@ -1,25 +1,89 @@
1
1
  {
2
- "address_name": "Address name",
3
- "address1": "Address Line 1",
4
- "address2": "Address Line 2",
5
- "cancel": "Cancel",
6
- "city": "City",
7
- "company": "Company",
8
- "confirm": "Confirm",
9
- "country": "Country",
10
- "create": "Create",
11
- "date": "{{value, date}}",
12
- "date_created": "Created on",
13
- "date_modified": "Last updated on",
14
- "delete": "Delete",
15
- "delete_prompt": "This resource will be permanently removed. Are you sure?",
16
- "first_name": "First name",
17
- "last_name": "Last name",
18
- "phone": "Phone",
19
- "postal_code": "Postal code",
20
- "region": "Region",
21
- "v8n_required": "Required",
22
- "v8n_too_long": "Too long",
2
+ "address-name": {
3
+ "label": "Address name",
4
+ "placeholder": "Required",
5
+ "helper_text": "",
6
+ "v8n_required": "Please enter address name",
7
+ "v8n_too_long": "Please shorten address name to 100 characters or less"
8
+ },
9
+ "first-name": {
10
+ "label": "First name",
11
+ "placeholder": "Optional",
12
+ "helper_text": "",
13
+ "v8n_too_long": "Unfortunately we can't store first names longer than 50 characters"
14
+ },
15
+ "last-name": {
16
+ "label": "Last name",
17
+ "placeholder": "Optional",
18
+ "helper_text": "",
19
+ "v8n_too_long": "Unfortunately we can't store last names longer than 50 characters"
20
+ },
21
+ "company": {
22
+ "label": "Company",
23
+ "placeholder": "Optional",
24
+ "helper_text": "",
25
+ "v8n_too_long": "Unfortunately we can't store company names longer than 50 characters"
26
+ },
27
+ "phone": {
28
+ "label": "Phone",
29
+ "placeholder": "Optional",
30
+ "helper_text": "",
31
+ "v8n_too_long": "This phone number appears to be too long"
32
+ },
33
+ "address-one": {
34
+ "label": "Address Line 1",
35
+ "placeholder": "Required",
36
+ "helper_text": "Street address, P.O. box, company name, c/o",
37
+ "v8n_required": "Please enter address line 1",
38
+ "v8n_too_long": "Please shorten address line 1 to 100 characters or less"
39
+ },
40
+ "address-two": {
41
+ "label": "Address Line 2",
42
+ "placeholder": "Optional",
43
+ "helper_text": "Apartment, suite, unit, building, floor, etc.",
44
+ "v8n_too_long": "Please shorten address line 2 to 100 characters or less"
45
+ },
46
+ "city": {
47
+ "label": "City",
48
+ "placeholder": "Optional",
49
+ "helper_text": "",
50
+ "v8n_too_long": "Unfortunately we can't store city names longer than 50 characters"
51
+ },
52
+ "postal-code": {
53
+ "label": "Postal code",
54
+ "placeholder": "Optional",
55
+ "helper_text": "",
56
+ "v8n_too_long": "This postal code appears to be too long"
57
+ },
58
+ "country": {
59
+ "label": "Country",
60
+ "placeholder": "Optional",
61
+ "helper_text": ""
62
+ },
63
+ "region": {
64
+ "label": "Region",
65
+ "placeholder": "Optional",
66
+ "helper_text": "",
67
+ "v8n_too_long": "Unfortunately we can't store region names longer than 50 characters"
68
+ },
69
+ "timestamps": {
70
+ "date": "{{value, date}}",
71
+ "date_created": "Created on",
72
+ "date_modified": "Last updated on"
73
+ },
74
+ "delete": {
75
+ "delete": "Delete",
76
+ "cancel": "Cancel",
77
+ "delete_prompt": "Are you sure you'd like to remove this address? You won't be able to bring it back."
78
+ },
79
+ "create": {
80
+ "create": "Create"
81
+ },
82
+ "spinner": {
83
+ "refresh": "Refresh",
84
+ "loading_busy": "Loading",
85
+ "loading_error": "Unknown error"
86
+ },
23
87
  "country_af": "Afghanistan",
24
88
  "country_ax": "Åland Islands",
25
89
  "country_al": "Albania",
@@ -596,9 +660,5 @@
596
660
  "country_eh": "Western Sahara",
597
661
  "country_ye": "Yemen",
598
662
  "country_zm": "Zambia",
599
- "country_zw": "Zimbabwe",
600
- "spinner": {
601
- "loading_busy": "Loading",
602
- "loading_error": "Failed to load"
603
- }
663
+ "country_zw": "Zimbabwe"
604
664
  }
@@ -23,6 +23,6 @@
23
23
  "spinner": {
24
24
  "loading_busy": "Loading",
25
25
  "loading_empty": "No data",
26
- "loading_error": "Failed to load"
26
+ "loading_error": "Unknown error"
27
27
  }
28
28
  }
@@ -2,6 +2,6 @@
2
2
  "spinner": {
3
3
  "loading_busy": "Loading",
4
4
  "loading_empty": "No data",
5
- "loading_error": "Failed to load"
5
+ "loading_error": "Unknown error"
6
6
  }
7
7
  }
@@ -20,7 +20,8 @@
20
20
  "create": "Apply"
21
21
  },
22
22
  "spinner": {
23
+ "refresh": "Refresh",
23
24
  "loading_busy": "Loading",
24
- "loading_error": "Failed to load"
25
+ "loading_error": "Unknown error"
25
26
  }
26
27
  }
@@ -4,6 +4,6 @@
4
4
  "spinner": {
5
5
  "loading_busy": "Loading",
6
6
  "loading_empty": "No data",
7
- "loading_error": "Failed to load"
7
+ "loading_error": "Unknown error"
8
8
  }
9
9
  }
@@ -2,6 +2,6 @@
2
2
  "spinner": {
3
3
  "loading_busy": "Loading",
4
4
  "loading_empty": "No data",
5
- "loading_error": "Failed to load"
5
+ "loading_error": "Unknown error"
6
6
  }
7
7
  }
@@ -1,22 +1,41 @@
1
1
  {
2
- "cancel": "Cancel",
3
- "confirm": "Confirm",
4
- "create": "Create",
5
- "date": "{{value, date}}",
6
- "date_created": "Created on",
7
- "date_modified": "Last updated on",
8
- "delete": "Delete",
9
- "delete_prompt": "This resource will be permanently removed. Are you sure?",
10
- "name": "Name",
11
- "v8n_required": "Required",
12
- "v8n_too_long": "Too long",
13
- "value": "Value",
14
- "visibility": "Visibility",
15
- "visibility_private": "Only me",
16
- "visibility_public": "Everyone",
17
- "visibility_restricted": "Store admins",
2
+ "name": {
3
+ "label": "Name",
4
+ "placeholder": "Required",
5
+ "helper_text": "Name of this attribute. It does not have to be unique.",
6
+ "v8n_required": "Please name this attribute.",
7
+ "v8n_too_long": "Please choose a name that is 500 characters long or less."
8
+ },
9
+ "value": {
10
+ "label": "Value",
11
+ "placeholder": "Required",
12
+ "helper_text": "Value of this attribute. Attribute values are automatically HTML-escaped.",
13
+ "v8n_required": "Please provide a value for this attribute.",
14
+ "v8n_too_long": "Unfortunately we can't store values that are more than 1000 characters long."
15
+ },
16
+ "visibility": {
17
+ "label": "Visibility",
18
+ "option_public": "Everyone",
19
+ "option_restricted": "Store admins",
20
+ "option_private": "Only me",
21
+ "helper_text": "Controls who can see this attribute. Public attributes can be shown to anyone, including customers. Private attributes are more suitable for configuration or technical details which are irrelevant to the public. Restricted attributes can only be viewed with the OAuth client that created them."
22
+ },
23
+ "timestamps": {
24
+ "date": "{{value, date}}",
25
+ "date_created": "Created on",
26
+ "date_modified": "Last updated on"
27
+ },
28
+ "delete": {
29
+ "delete": "Delete",
30
+ "cancel": "Cancel",
31
+ "delete_prompt": "Are you sure you'd like to remove this attribute? You won't be able to bring it back."
32
+ },
33
+ "create": {
34
+ "create": "Create"
35
+ },
18
36
  "spinner": {
37
+ "refresh": "Refresh",
19
38
  "loading_busy": "Loading",
20
- "loading_error": "Failed to load"
39
+ "loading_error": "Unknown error"
21
40
  }
22
41
  }
@@ -4,6 +4,6 @@
4
4
  "spinner": {
5
5
  "loading_busy": "Loading",
6
6
  "loading_empty": "No data",
7
- "loading_error": "Failed to load"
7
+ "loading_error": "Unknown error"
8
8
  }
9
9
  }