@foxy.io/elements 1.16.0-beta.1 → 1.16.0-beta.12

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 (552) 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-api-browser.js +5 -0
  5. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  6. package/dist/cdn/foxy-attribute-card.js +1 -1
  7. package/dist/cdn/foxy-attribute-form.js +1 -1
  8. package/dist/cdn/foxy-cancellation-form.js +1 -1
  9. package/dist/cdn/foxy-collection-page.js +1 -1
  10. package/dist/cdn/foxy-collection-pages.js +1 -1
  11. package/dist/cdn/foxy-copy-to-clipboard.js +1 -0
  12. package/dist/cdn/foxy-coupon-card.js +1 -1
  13. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  14. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  15. package/dist/cdn/foxy-coupon-detail-card.js +1 -0
  16. package/dist/cdn/foxy-coupon-form.js +1 -1
  17. package/dist/cdn/foxy-custom-field-card.js +1 -1
  18. package/dist/cdn/foxy-custom-field-form.js +1 -1
  19. package/dist/cdn/foxy-customer-api.js +1 -1
  20. package/dist/cdn/foxy-customer-card.js +1 -1
  21. package/dist/cdn/foxy-customer-form.js +1 -1
  22. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  23. package/dist/cdn/foxy-customer-portal.js +15 -15
  24. package/dist/cdn/foxy-customer.js +6 -6
  25. package/dist/cdn/foxy-customers-table.js +1 -1
  26. package/dist/cdn/foxy-discount-builder.js +1 -0
  27. package/dist/cdn/foxy-discount-card.js +1 -1
  28. package/dist/cdn/foxy-discount-detail-card.js +1 -0
  29. package/dist/cdn/foxy-donation.js +1 -1
  30. package/dist/cdn/foxy-email-template-form.js +1 -1
  31. package/dist/cdn/foxy-error-entry-card.js +1 -1
  32. package/dist/cdn/foxy-form-dialog.js +1 -1
  33. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  34. package/dist/cdn/foxy-gift-card-card.js +1 -1
  35. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  36. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  37. package/dist/cdn/foxy-gift-card-form.js +1 -1
  38. package/dist/cdn/foxy-i18n.js +1 -1
  39. package/dist/cdn/foxy-item-card.js +1 -0
  40. package/dist/cdn/foxy-item-form.js +1 -0
  41. package/dist/cdn/foxy-item-option-card.js +1 -0
  42. package/dist/cdn/foxy-item-option-form.js +1 -0
  43. package/dist/cdn/foxy-items-form.js +1 -1
  44. package/dist/cdn/foxy-nucleon-element.js +1 -1
  45. package/dist/cdn/foxy-pagination.js +1 -1
  46. package/dist/cdn/foxy-payment-card.js +1 -1
  47. package/dist/cdn/foxy-payment-method-card.js +1 -1
  48. package/dist/cdn/foxy-query-builder.js +1 -1
  49. package/dist/cdn/foxy-report-form.js +15 -15
  50. package/dist/cdn/foxy-reports-table.js +6 -6
  51. package/dist/cdn/foxy-shipment-card.js +13 -0
  52. package/dist/cdn/foxy-sign-in-form.js +1 -1
  53. package/dist/cdn/foxy-spinner.js +2 -2
  54. package/dist/cdn/foxy-subscription-card.js +1 -1
  55. package/dist/cdn/foxy-subscription-form.js +4 -4
  56. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  57. package/dist/cdn/foxy-swipe-actions.js +1 -0
  58. package/dist/cdn/foxy-table.js +1 -1
  59. package/dist/cdn/foxy-tax-card.js +1 -1
  60. package/dist/cdn/foxy-tax-form.js +1 -1
  61. package/dist/cdn/foxy-template-config-form.js +1 -1
  62. package/dist/cdn/foxy-template-form.js +1 -1
  63. package/dist/cdn/foxy-transaction-card.js +1 -1
  64. package/dist/cdn/foxy-transaction.js +1 -0
  65. package/dist/cdn/foxy-transactions-table.js +1 -1
  66. package/dist/cdn/foxy-user-form.js +1 -1
  67. package/dist/cdn/foxy-users-table.js +1 -1
  68. package/dist/cdn/foxy-webhook-card.js +1 -0
  69. package/dist/cdn/foxy-webhook-form.js +318 -0
  70. package/dist/cdn/foxy-webhook-log-card.js +1 -0
  71. package/dist/cdn/foxy-webhook-status-card.js +1 -0
  72. package/dist/cdn/shared-04c2479b.js +1 -0
  73. package/dist/cdn/shared-0d72f6f1.js +9 -0
  74. package/dist/cdn/{shared-218ba06e.js → shared-0eb966c5.js} +1 -1
  75. package/dist/cdn/shared-0fbac4a9.js +1 -0
  76. package/dist/cdn/{shared-3821923d.js → shared-1424c48d.js} +1 -1
  77. package/dist/cdn/{shared-59e44f29.js → shared-1bbd9b73.js} +1 -1
  78. package/dist/cdn/{shared-e8abe6c6.js → shared-1dc8edbe.js} +5 -5
  79. package/dist/cdn/{shared-07134f93.js → shared-22ba9566.js} +1 -1
  80. package/dist/cdn/shared-2394b415.js +1 -0
  81. package/dist/cdn/{shared-278a8b9d.js → shared-26980c97.js} +13 -13
  82. package/dist/cdn/{shared-448781f9.js → shared-26ce8d23.js} +1 -1
  83. package/dist/cdn/shared-3bcc3800.js +29 -0
  84. package/dist/cdn/{shared-7f0a9790.js → shared-45feee83.js} +1 -1
  85. package/dist/cdn/shared-52a534b9.js +1 -0
  86. package/dist/cdn/shared-57dd3cdb.js +1 -0
  87. package/dist/cdn/{shared-15f2aeb5.js → shared-58a0bad5.js} +1 -1
  88. package/dist/cdn/{shared-ee53f7e5.js → shared-5aab96dd.js} +10 -10
  89. package/dist/cdn/shared-5d5c1295.js +1 -0
  90. package/dist/cdn/{shared-e367b5fc.js → shared-5df36a69.js} +9 -9
  91. package/dist/cdn/{shared-d9aed64e.js → shared-61893181.js} +1 -1
  92. package/dist/cdn/{shared-a81a95e8.js → shared-61b5e5e2.js} +4 -4
  93. package/dist/cdn/shared-62539ace.js +1 -0
  94. package/dist/cdn/{shared-7f463a38.js → shared-69041c94.js} +7 -7
  95. package/dist/cdn/shared-6a4f3dd7.js +1 -0
  96. package/dist/cdn/shared-7c8bb60c.js +1 -0
  97. package/dist/cdn/shared-80ca55ed.js +1 -0
  98. package/dist/cdn/{shared-e5937698.js → shared-85f1c22d.js} +14 -19
  99. package/dist/cdn/{shared-5535f38f.js → shared-92327224.js} +2 -2
  100. package/dist/cdn/shared-9419901c.js +1 -0
  101. package/dist/cdn/{shared-cb71ddbc.js → shared-950db2d5.js} +3 -3
  102. package/dist/cdn/{shared-6d45a07b.js → shared-9803aa7c.js} +1 -1
  103. package/dist/cdn/shared-98497473.js +1 -0
  104. package/dist/cdn/{shared-b0f0e8b5.js → shared-99940888.js} +1 -1
  105. package/dist/cdn/{shared-b710881a.js → shared-a0c6a159.js} +2 -2
  106. package/dist/cdn/{shared-24064bd3.js → shared-a525522f.js} +1 -1
  107. package/dist/cdn/{shared-31166bdc.js → shared-abe7759b.js} +1 -1
  108. package/dist/cdn/shared-ac44429d.js +1 -0
  109. package/dist/cdn/{shared-666e8a90.js → shared-ad0158dd.js} +1 -1
  110. package/dist/cdn/{shared-5d169043.js → shared-adc4bb5b.js} +1 -1
  111. package/dist/cdn/{shared-bf6c685e.js → shared-afbb10c5.js} +1 -1
  112. package/dist/cdn/shared-b35522f2.js +1 -0
  113. package/dist/cdn/{shared-b20f463a.js → shared-bdb8e495.js} +2 -11
  114. package/dist/cdn/shared-bf51c28e.js +1 -0
  115. package/dist/cdn/shared-c5d932fe.js +12 -0
  116. package/dist/cdn/shared-d6353669.js +201 -0
  117. package/dist/cdn/shared-d996b713.js +1 -0
  118. package/dist/cdn/shared-dc73b9a5.js +159 -0
  119. package/dist/cdn/{shared-9221e6b2.js → shared-e1c1e8e2.js} +1 -1
  120. package/dist/cdn/shared-e9a4a204.js +1 -0
  121. package/dist/cdn/shared-ebb53e4e.js +1 -0
  122. package/dist/cdn/shared-ec2dd0c8.js +1 -0
  123. package/dist/cdn/shared-f3e32aee.js +1 -0
  124. package/dist/cdn/shared-f9f9ed5b.js +6 -0
  125. package/dist/cdn/shared-fadcb2e1.js +1 -0
  126. package/dist/cdn/shared-fd54992f.js +1 -0
  127. package/dist/cdn/translations/api-browser/en.json +31 -0
  128. package/dist/cdn/translations/copy-to-clipboard/en.json +6 -0
  129. package/dist/cdn/translations/coupon-form/en.json +21 -2
  130. package/dist/cdn/translations/discount-builder/en.json +14 -0
  131. package/dist/cdn/translations/gift-card-form/en.json +21 -0
  132. package/dist/cdn/translations/item-card/en.json +9 -0
  133. package/dist/cdn/translations/item-form/en.json +411 -0
  134. package/dist/cdn/translations/item-option-form/en.json +43 -0
  135. package/dist/cdn/translations/report-form/en.json +14 -2
  136. package/dist/cdn/translations/shipment-card/en.json +470 -0
  137. package/dist/cdn/translations/transaction/en.json +965 -0
  138. package/dist/cdn/translations/webhook-card/en.json +7 -0
  139. package/dist/cdn/translations/webhook-form/en.json +101 -0
  140. package/dist/cdn/translations/webhook-log-card/en.json +8 -0
  141. package/dist/cdn/translations/webhook-status-card/en.json +11 -0
  142. package/dist/elements/index.d.ts +1 -0
  143. package/dist/elements/index.js +2 -0
  144. package/dist/elements/index.js.map +1 -0
  145. package/dist/elements/internal/InternalAsyncComboBoxControl/InternalAsyncComboBoxControl.d.ts +22 -0
  146. package/dist/elements/internal/InternalAsyncComboBoxControl/InternalAsyncComboBoxControl.js +79 -0
  147. package/dist/elements/internal/InternalAsyncComboBoxControl/InternalAsyncComboBoxControl.js.map +1 -0
  148. package/dist/elements/internal/InternalAsyncComboBoxControl/index.d.ts +4 -0
  149. package/dist/elements/internal/InternalAsyncComboBoxControl/index.js +6 -0
  150. package/dist/elements/internal/InternalAsyncComboBoxControl/index.js.map +1 -0
  151. package/dist/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.d.ts +31 -0
  152. package/dist/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.js +140 -0
  153. package/dist/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.js.map +1 -0
  154. package/dist/elements/internal/InternalAsyncDetailsControl/index.d.ts +8 -0
  155. package/dist/elements/internal/InternalAsyncDetailsControl/index.js +10 -0
  156. package/dist/elements/internal/InternalAsyncDetailsControl/index.js.map +1 -0
  157. package/dist/elements/internal/InternalCard/InternalCard.d.ts +21 -0
  158. package/dist/elements/internal/InternalCard/InternalCard.js +53 -0
  159. package/dist/elements/internal/InternalCard/InternalCard.js.map +1 -0
  160. package/dist/elements/internal/InternalCard/index.d.ts +3 -0
  161. package/dist/elements/internal/InternalCard/index.js +5 -0
  162. package/dist/elements/internal/InternalCard/index.js.map +1 -0
  163. package/dist/elements/internal/InternalControl/InternalControl.d.ts +41 -0
  164. package/dist/elements/internal/InternalControl/InternalControl.js +74 -0
  165. package/dist/elements/internal/InternalControl/InternalControl.js.map +1 -0
  166. package/dist/elements/internal/InternalControl/index.d.ts +4 -0
  167. package/dist/elements/internal/InternalControl/index.js +6 -0
  168. package/dist/elements/internal/InternalControl/index.js.map +1 -0
  169. package/dist/elements/internal/InternalCreateControl/InternalCreateControl.d.ts +22 -0
  170. package/dist/elements/internal/InternalCreateControl/InternalCreateControl.js +60 -0
  171. package/dist/elements/internal/InternalCreateControl/InternalCreateControl.js.map +1 -0
  172. package/dist/elements/internal/InternalCreateControl/index.d.ts +5 -0
  173. package/dist/elements/internal/InternalCreateControl/index.js +7 -0
  174. package/dist/elements/internal/InternalCreateControl/index.js.map +1 -0
  175. package/dist/elements/internal/InternalDateControl/InternalDateControl.d.ts +14 -0
  176. package/dist/elements/internal/InternalDateControl/InternalDateControl.js +60 -0
  177. package/dist/elements/internal/InternalDateControl/InternalDateControl.js.map +1 -0
  178. package/dist/elements/internal/InternalDateControl/index.d.ts +4 -0
  179. package/dist/elements/internal/InternalDateControl/index.js +6 -0
  180. package/dist/elements/internal/InternalDateControl/index.js.map +1 -0
  181. package/dist/elements/internal/InternalDeleteControl/InternalDeleteControl.d.ts +15 -0
  182. package/dist/elements/internal/InternalDeleteControl/InternalDeleteControl.js +51 -0
  183. package/dist/elements/internal/InternalDeleteControl/InternalDeleteControl.js.map +1 -0
  184. package/dist/elements/internal/InternalDeleteControl/index.d.ts +6 -0
  185. package/dist/elements/internal/InternalDeleteControl/index.js +8 -0
  186. package/dist/elements/internal/InternalDeleteControl/index.js.map +1 -0
  187. package/dist/elements/internal/InternalDetails/InternalDetails.d.ts +22 -0
  188. package/dist/elements/internal/InternalDetails/InternalDetails.js +71 -0
  189. package/dist/elements/internal/InternalDetails/InternalDetails.js.map +1 -0
  190. package/dist/elements/internal/InternalDetails/index.d.ts +6 -0
  191. package/dist/elements/internal/InternalDetails/index.js +8 -0
  192. package/dist/elements/internal/InternalDetails/index.js.map +1 -0
  193. package/dist/elements/internal/InternalEditableControl/InternalEditableControl.d.ts +77 -0
  194. package/dist/elements/internal/InternalEditableControl/InternalEditableControl.js +153 -0
  195. package/dist/elements/internal/InternalEditableControl/InternalEditableControl.js.map +1 -0
  196. package/dist/elements/internal/InternalEditableControl/index.d.ts +3 -0
  197. package/dist/elements/internal/InternalEditableControl/index.js +5 -0
  198. package/dist/elements/internal/InternalEditableControl/index.js.map +1 -0
  199. package/dist/elements/internal/InternalForm/InternalForm.d.ts +27 -0
  200. package/dist/elements/internal/InternalForm/InternalForm.js +65 -0
  201. package/dist/elements/internal/InternalForm/InternalForm.js.map +1 -0
  202. package/dist/elements/internal/InternalForm/index.d.ts +6 -0
  203. package/dist/elements/internal/InternalForm/index.js +8 -0
  204. package/dist/elements/internal/InternalForm/index.js.map +1 -0
  205. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.d.ts +14 -0
  206. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.js +115 -0
  207. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.js.map +1 -0
  208. package/dist/elements/internal/InternalFrequencyControl/index.d.ts +6 -0
  209. package/dist/elements/internal/InternalFrequencyControl/index.js +8 -0
  210. package/dist/elements/internal/InternalFrequencyControl/index.js.map +1 -0
  211. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.d.ts +13 -0
  212. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js +41 -0
  213. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js.map +1 -0
  214. package/dist/elements/internal/InternalIntegerControl/index.d.ts +4 -0
  215. package/dist/elements/internal/InternalIntegerControl/index.js +6 -0
  216. package/dist/elements/internal/InternalIntegerControl/index.js.map +1 -0
  217. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.d.ts +13 -0
  218. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.js +41 -0
  219. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.js.map +1 -0
  220. package/dist/elements/internal/InternalNumberControl/index.d.ts +4 -0
  221. package/dist/elements/internal/InternalNumberControl/index.js +6 -0
  222. package/dist/elements/internal/InternalNumberControl/index.js.map +1 -0
  223. package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.d.ts +17 -0
  224. package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js +51 -0
  225. package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js.map +1 -0
  226. package/dist/elements/internal/InternalRadioGroupControl/index.d.ts +6 -0
  227. package/dist/elements/internal/InternalRadioGroupControl/index.js +8 -0
  228. package/dist/elements/internal/InternalRadioGroupControl/index.js.map +1 -0
  229. package/dist/elements/internal/InternalRadioGroupControl/types.d.ts +6 -0
  230. package/dist/elements/internal/InternalRadioGroupControl/types.js +2 -0
  231. package/dist/elements/internal/InternalRadioGroupControl/types.js.map +1 -0
  232. package/dist/elements/internal/InternalTextControl/InternalTextControl.d.ts +13 -0
  233. package/dist/elements/internal/InternalTextControl/InternalTextControl.js +40 -0
  234. package/dist/elements/internal/InternalTextControl/InternalTextControl.js.map +1 -0
  235. package/dist/elements/internal/InternalTextControl/index.d.ts +4 -0
  236. package/dist/elements/internal/InternalTextControl/index.js +6 -0
  237. package/dist/elements/internal/InternalTextControl/index.js.map +1 -0
  238. package/dist/elements/internal/InternalTimestampsControl/InternalTimestampsControl.d.ts +14 -0
  239. package/dist/elements/internal/InternalTimestampsControl/InternalTimestampsControl.js +57 -0
  240. package/dist/elements/internal/InternalTimestampsControl/InternalTimestampsControl.js.map +1 -0
  241. package/dist/elements/internal/InternalTimestampsControl/index.d.ts +4 -0
  242. package/dist/elements/internal/InternalTimestampsControl/index.js +6 -0
  243. package/dist/elements/internal/InternalTimestampsControl/index.js.map +1 -0
  244. package/dist/elements/private/Dialog/Dialog.d.ts +4 -2
  245. package/dist/elements/private/Dialog/Dialog.js +3 -1
  246. package/dist/elements/private/Dialog/Dialog.js.map +1 -1
  247. package/dist/elements/private/EditableList/EditableList.d.ts +4 -2
  248. package/dist/elements/private/EditableList/EditableList.js +3 -1
  249. package/dist/elements/private/EditableList/EditableList.js.map +1 -1
  250. package/dist/elements/private/FrequencyInput/FrequencyInput.d.ts +3 -1
  251. package/dist/elements/private/FrequencyInput/FrequencyInput.js +2 -1
  252. package/dist/elements/private/FrequencyInput/FrequencyInput.js.map +1 -1
  253. package/dist/elements/public/ApiBrowser/ApiBrowser.d.ts +31 -0
  254. package/dist/elements/public/ApiBrowser/ApiBrowser.js +221 -0
  255. package/dist/elements/public/ApiBrowser/ApiBrowser.js.map +1 -0
  256. package/dist/elements/public/ApiBrowser/index.d.ts +10 -0
  257. package/dist/elements/public/ApiBrowser/index.js +12 -0
  258. package/dist/elements/public/ApiBrowser/index.js.map +1 -0
  259. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.d.ts +32 -0
  260. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.js +297 -0
  261. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.js.map +1 -0
  262. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.d.ts +11 -0
  263. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.js +13 -0
  264. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.js.map +1 -0
  265. package/dist/elements/public/ApiBrowser/types.d.ts +10 -0
  266. package/dist/elements/public/ApiBrowser/types.js +2 -0
  267. package/dist/elements/public/ApiBrowser/types.js.map +1 -0
  268. package/dist/elements/public/CollectionPage/CollectionPage.d.ts +4 -3
  269. package/dist/elements/public/CollectionPage/CollectionPage.js +5 -3
  270. package/dist/elements/public/CollectionPage/CollectionPage.js.map +1 -1
  271. package/dist/elements/public/CollectionPage/types.d.ts +1 -0
  272. package/dist/elements/public/CollectionPage/types.js.map +1 -1
  273. package/dist/elements/public/CollectionPages/CollectionPages.d.ts +4 -2
  274. package/dist/elements/public/CollectionPages/CollectionPages.js +3 -1
  275. package/dist/elements/public/CollectionPages/CollectionPages.js.map +1 -1
  276. package/dist/elements/public/CopyToClipboard/CopyToClipboard.d.ts +22 -0
  277. package/dist/elements/public/CopyToClipboard/CopyToClipboard.js +121 -0
  278. package/dist/elements/public/CopyToClipboard/CopyToClipboard.js.map +1 -0
  279. package/dist/elements/public/CopyToClipboard/index.d.ts +5 -0
  280. package/dist/elements/public/CopyToClipboard/index.js +7 -0
  281. package/dist/elements/public/CopyToClipboard/index.js.map +1 -0
  282. package/dist/elements/public/CouponDetailCard/CouponDetailCard.d.ts +25 -0
  283. package/dist/elements/public/CouponDetailCard/CouponDetailCard.js +58 -0
  284. package/dist/elements/public/CouponDetailCard/CouponDetailCard.js.map +1 -0
  285. package/dist/elements/public/CouponDetailCard/index.d.ts +5 -0
  286. package/dist/elements/public/CouponDetailCard/index.js +7 -0
  287. package/dist/elements/public/CouponDetailCard/index.js.map +1 -0
  288. package/dist/elements/public/CouponDetailCard/types.d.ts +3 -0
  289. package/dist/elements/public/CouponDetailCard/types.js +2 -0
  290. package/dist/elements/public/CouponDetailCard/types.js.map +1 -0
  291. package/dist/elements/public/CouponForm/CouponForm.js +36 -34
  292. package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
  293. package/dist/elements/public/CouponForm/index.d.ts +1 -0
  294. package/dist/elements/public/CouponForm/index.js +1 -0
  295. package/dist/elements/public/CouponForm/index.js.map +1 -1
  296. package/dist/elements/public/CustomerApi/CustomerApi.d.ts +3 -1
  297. package/dist/elements/public/CustomerApi/CustomerApi.js +2 -1
  298. package/dist/elements/public/CustomerApi/CustomerApi.js.map +1 -1
  299. package/dist/elements/public/CustomerPortal/InternalCustomerPortalChangePassword.d.ts +3 -1
  300. package/dist/elements/public/CustomerPortal/InternalCustomerPortalChangePassword.js +2 -1
  301. package/dist/elements/public/CustomerPortal/InternalCustomerPortalChangePassword.js.map +1 -1
  302. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.d.ts +3 -1
  303. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.js +2 -1
  304. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.js.map +1 -1
  305. package/dist/elements/public/CustomerPortal/InternalCustomerPortalSubscriptions.d.ts +3 -1
  306. package/dist/elements/public/CustomerPortal/InternalCustomerPortalSubscriptions.js +2 -1
  307. package/dist/elements/public/CustomerPortal/InternalCustomerPortalSubscriptions.js.map +1 -1
  308. package/dist/elements/public/CustomerPortal/InternalCustomerPortalTransactions.d.ts +3 -1
  309. package/dist/elements/public/CustomerPortal/InternalCustomerPortalTransactions.js +2 -1
  310. package/dist/elements/public/CustomerPortal/InternalCustomerPortalTransactions.js.map +1 -1
  311. package/dist/elements/public/DiscountBuilder/DiscountBuilder.d.ts +40 -0
  312. package/dist/elements/public/DiscountBuilder/DiscountBuilder.js +342 -0
  313. package/dist/elements/public/DiscountBuilder/DiscountBuilder.js.map +1 -0
  314. package/dist/elements/public/DiscountBuilder/index.d.ts +3 -0
  315. package/dist/elements/public/DiscountBuilder/index.js +5 -0
  316. package/dist/elements/public/DiscountBuilder/index.js.map +1 -0
  317. package/dist/elements/public/DiscountBuilder/types.d.ts +32 -0
  318. package/dist/elements/public/DiscountBuilder/types.js +2 -0
  319. package/dist/elements/public/DiscountBuilder/types.js.map +1 -0
  320. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.d.ts +25 -0
  321. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.js +58 -0
  322. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.js.map +1 -0
  323. package/dist/elements/public/DiscountDetailCard/index.d.ts +5 -0
  324. package/dist/elements/public/DiscountDetailCard/index.js +7 -0
  325. package/dist/elements/public/DiscountDetailCard/index.js.map +1 -0
  326. package/dist/elements/public/DiscountDetailCard/types.d.ts +3 -0
  327. package/dist/elements/public/DiscountDetailCard/types.js +2 -0
  328. package/dist/elements/public/DiscountDetailCard/types.js.map +1 -0
  329. package/dist/elements/public/GiftCardForm/GiftCardForm.js +28 -15
  330. package/dist/elements/public/GiftCardForm/GiftCardForm.js.map +1 -1
  331. package/dist/elements/public/GiftCardForm/index.d.ts +1 -0
  332. package/dist/elements/public/GiftCardForm/index.js +1 -0
  333. package/dist/elements/public/GiftCardForm/index.js.map +1 -1
  334. package/dist/elements/public/I18n/I18n.d.ts +3 -1
  335. package/dist/elements/public/I18n/I18n.js +2 -1
  336. package/dist/elements/public/I18n/I18n.js.map +1 -1
  337. package/dist/elements/public/I18n/format/discount.js +1 -0
  338. package/dist/elements/public/I18n/format/discount.js.map +1 -1
  339. package/dist/elements/public/ItemCard/ItemCard.d.ts +22 -0
  340. package/dist/elements/public/ItemCard/ItemCard.js +151 -0
  341. package/dist/elements/public/ItemCard/ItemCard.js.map +1 -0
  342. package/dist/elements/public/ItemCard/index.d.ts +4 -0
  343. package/dist/elements/public/ItemCard/index.js +6 -0
  344. package/dist/elements/public/ItemCard/index.js.map +1 -0
  345. package/dist/elements/public/ItemCard/types.d.ts +5 -0
  346. package/dist/elements/public/ItemCard/types.js +2 -0
  347. package/dist/elements/public/ItemCard/types.js.map +1 -0
  348. package/dist/elements/public/ItemForm/ItemForm.d.ts +61 -0
  349. package/dist/elements/public/ItemForm/ItemForm.js +138 -0
  350. package/dist/elements/public/ItemForm/ItemForm.js.map +1 -0
  351. package/dist/elements/public/ItemForm/index.d.ts +19 -0
  352. package/dist/elements/public/ItemForm/index.js +21 -0
  353. package/dist/elements/public/ItemForm/index.js.map +1 -0
  354. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/InternalItemFormCartControl.d.ts +6 -0
  355. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/InternalItemFormCartControl.js +23 -0
  356. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/InternalItemFormCartControl.js.map +1 -0
  357. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.d.ts +7 -0
  358. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.js +9 -0
  359. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.js.map +1 -0
  360. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/InternalItemFormInventoryControl.d.ts +6 -0
  361. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/InternalItemFormInventoryControl.js +31 -0
  362. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/InternalItemFormInventoryControl.js.map +1 -0
  363. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.d.ts +6 -0
  364. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.js +8 -0
  365. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.js.map +1 -0
  366. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/InternalItemFormLineItemDiscountControl.d.ts +6 -0
  367. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/InternalItemFormLineItemDiscountControl.js +58 -0
  368. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/InternalItemFormLineItemDiscountControl.js.map +1 -0
  369. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.d.ts +7 -0
  370. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.js +9 -0
  371. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.js.map +1 -0
  372. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/InternalItemFormShippingControl.d.ts +6 -0
  373. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/InternalItemFormShippingControl.js +32 -0
  374. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/InternalItemFormShippingControl.js.map +1 -0
  375. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.d.ts +6 -0
  376. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.js +8 -0
  377. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.js.map +1 -0
  378. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/InternalItemFormSubscriptionControl.d.ts +6 -0
  379. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/InternalItemFormSubscriptionControl.js +70 -0
  380. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/InternalItemFormSubscriptionControl.js.map +1 -0
  381. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.d.ts +9 -0
  382. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.js +11 -0
  383. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.js.map +1 -0
  384. package/dist/elements/public/ItemForm/types.d.ts +3 -0
  385. package/dist/elements/public/ItemForm/types.js +2 -0
  386. package/dist/elements/public/ItemForm/types.js.map +1 -0
  387. package/dist/elements/public/ItemOptionCard/ItemOptionCard.d.ts +25 -0
  388. package/dist/elements/public/ItemOptionCard/ItemOptionCard.js +56 -0
  389. package/dist/elements/public/ItemOptionCard/ItemOptionCard.js.map +1 -0
  390. package/dist/elements/public/ItemOptionCard/index.d.ts +6 -0
  391. package/dist/elements/public/ItemOptionCard/index.js +8 -0
  392. package/dist/elements/public/ItemOptionCard/index.js.map +1 -0
  393. package/dist/elements/public/ItemOptionCard/types.d.ts +11 -0
  394. package/dist/elements/public/ItemOptionCard/types.js +2 -0
  395. package/dist/elements/public/ItemOptionCard/types.js.map +1 -0
  396. package/dist/elements/public/ItemOptionForm/ItemOptionForm.d.ts +30 -0
  397. package/dist/elements/public/ItemOptionForm/ItemOptionForm.js +41 -0
  398. package/dist/elements/public/ItemOptionForm/ItemOptionForm.js.map +1 -0
  399. package/dist/elements/public/ItemOptionForm/index.d.ts +5 -0
  400. package/dist/elements/public/ItemOptionForm/index.js +7 -0
  401. package/dist/elements/public/ItemOptionForm/index.js.map +1 -0
  402. package/dist/elements/public/ItemOptionForm/types.d.ts +3 -0
  403. package/dist/elements/public/ItemOptionForm/types.js +2 -0
  404. package/dist/elements/public/ItemOptionForm/types.js.map +1 -0
  405. package/dist/elements/public/NucleonElement/NucleonElement.d.ts +7 -1
  406. package/dist/elements/public/NucleonElement/NucleonElement.js +13 -1
  407. package/dist/elements/public/NucleonElement/NucleonElement.js.map +1 -1
  408. package/dist/elements/public/Pagination/Pagination.d.ts +3 -1
  409. package/dist/elements/public/Pagination/Pagination.js +3 -2
  410. package/dist/elements/public/Pagination/Pagination.js.map +1 -1
  411. package/dist/elements/public/PaymentCard/PaymentCard.js +1 -1
  412. package/dist/elements/public/PaymentCard/PaymentCard.js.map +1 -1
  413. package/dist/elements/public/QueryBuilder/QueryBuilder.d.ts +3 -1
  414. package/dist/elements/public/QueryBuilder/QueryBuilder.js +2 -1
  415. package/dist/elements/public/QueryBuilder/QueryBuilder.js.map +1 -1
  416. package/dist/elements/public/ReportForm/ReportForm.d.ts +9 -9
  417. package/dist/elements/public/ReportForm/ReportForm.js +159 -73
  418. package/dist/elements/public/ReportForm/ReportForm.js.map +1 -1
  419. package/dist/elements/public/ReportForm/index.d.ts +4 -1
  420. package/dist/elements/public/ReportForm/index.js +4 -1
  421. package/dist/elements/public/ReportForm/index.js.map +1 -1
  422. package/dist/elements/public/ReportForm/types.d.ts +2 -4
  423. package/dist/elements/public/ReportForm/types.js.map +1 -1
  424. package/dist/elements/public/ReportForm/utils.d.ts +16 -0
  425. package/dist/elements/public/ReportForm/utils.js +73 -0
  426. package/dist/elements/public/ReportForm/utils.js.map +1 -0
  427. package/dist/elements/public/ShipmentCard/ShipmentCard.d.ts +28 -0
  428. package/dist/elements/public/ShipmentCard/ShipmentCard.js +119 -0
  429. package/dist/elements/public/ShipmentCard/ShipmentCard.js.map +1 -0
  430. package/dist/elements/public/ShipmentCard/index.d.ts +8 -0
  431. package/dist/elements/public/ShipmentCard/index.js +10 -0
  432. package/dist/elements/public/ShipmentCard/index.js.map +1 -0
  433. package/dist/elements/public/ShipmentCard/types.d.ts +18 -0
  434. package/dist/elements/public/ShipmentCard/types.js +2 -0
  435. package/dist/elements/public/ShipmentCard/types.js.map +1 -0
  436. package/dist/elements/public/Spinner/Spinner.d.ts +4 -2
  437. package/dist/elements/public/Spinner/Spinner.js +3 -1
  438. package/dist/elements/public/Spinner/Spinner.js.map +1 -1
  439. package/dist/elements/public/SwipeActions/SwipeActions.d.ts +28 -0
  440. package/dist/elements/public/SwipeActions/SwipeActions.js +130 -0
  441. package/dist/elements/public/SwipeActions/SwipeActions.js.map +1 -0
  442. package/dist/elements/public/SwipeActions/index.d.ts +2 -0
  443. package/dist/elements/public/SwipeActions/index.js +4 -0
  444. package/dist/elements/public/SwipeActions/index.js.map +1 -0
  445. package/dist/elements/public/Transaction/Transaction.d.ts +19 -0
  446. package/dist/elements/public/Transaction/Transaction.js +107 -0
  447. package/dist/elements/public/Transaction/Transaction.js.map +1 -0
  448. package/dist/elements/public/Transaction/index.d.ts +17 -0
  449. package/dist/elements/public/Transaction/index.js +19 -0
  450. package/dist/elements/public/Transaction/index.js.map +1 -0
  451. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/InternalTransactionActionsControl.d.ts +9 -0
  452. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/InternalTransactionActionsControl.js +65 -0
  453. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/InternalTransactionActionsControl.js.map +1 -0
  454. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/index.d.ts +4 -0
  455. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/index.js +6 -0
  456. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/index.js.map +1 -0
  457. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/InternalTransactionCustomerControl.d.ts +5 -0
  458. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/InternalTransactionCustomerControl.js +36 -0
  459. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/InternalTransactionCustomerControl.js.map +1 -0
  460. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.d.ts +7 -0
  461. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.js +9 -0
  462. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.js.map +1 -0
  463. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/InternalTransactionPostActionControl.d.ts +10 -0
  464. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/InternalTransactionPostActionControl.js +61 -0
  465. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/InternalTransactionPostActionControl.js.map +1 -0
  466. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/index.d.ts +6 -0
  467. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/index.js +8 -0
  468. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/index.js.map +1 -0
  469. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/InternalTransactionSummaryControl.d.ts +8 -0
  470. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/InternalTransactionSummaryControl.js +66 -0
  471. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/InternalTransactionSummaryControl.js.map +1 -0
  472. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/index.d.ts +4 -0
  473. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/index.js +6 -0
  474. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/index.js.map +1 -0
  475. package/dist/elements/public/Transaction/types.d.ts +3 -0
  476. package/dist/elements/public/Transaction/types.js +2 -0
  477. package/dist/elements/public/Transaction/types.js.map +1 -0
  478. package/dist/elements/public/WebhookCard/WebhookCard.d.ts +16 -0
  479. package/dist/elements/public/WebhookCard/WebhookCard.js +36 -0
  480. package/dist/elements/public/WebhookCard/WebhookCard.js.map +1 -0
  481. package/dist/elements/public/WebhookCard/index.d.ts +5 -0
  482. package/dist/elements/public/WebhookCard/index.js +7 -0
  483. package/dist/elements/public/WebhookCard/index.js.map +1 -0
  484. package/dist/elements/public/WebhookCard/types.d.ts +3 -0
  485. package/dist/elements/public/WebhookCard/types.js +2 -0
  486. package/dist/elements/public/WebhookCard/types.js.map +1 -0
  487. package/dist/elements/public/WebhookForm/WebhookForm.d.ts +47 -0
  488. package/dist/elements/public/WebhookForm/WebhookForm.js +101 -0
  489. package/dist/elements/public/WebhookForm/WebhookForm.js.map +1 -0
  490. package/dist/elements/public/WebhookForm/index.d.ts +8 -0
  491. package/dist/elements/public/WebhookForm/index.js +10 -0
  492. package/dist/elements/public/WebhookForm/index.js.map +1 -0
  493. package/dist/elements/public/WebhookForm/types.d.ts +3 -0
  494. package/dist/elements/public/WebhookForm/types.js +2 -0
  495. package/dist/elements/public/WebhookForm/types.js.map +1 -0
  496. package/dist/elements/public/WebhookLogCard/WebhookLogCard.d.ts +16 -0
  497. package/dist/elements/public/WebhookLogCard/WebhookLogCard.js +28 -0
  498. package/dist/elements/public/WebhookLogCard/WebhookLogCard.js.map +1 -0
  499. package/dist/elements/public/WebhookLogCard/index.d.ts +4 -0
  500. package/dist/elements/public/WebhookLogCard/index.js +6 -0
  501. package/dist/elements/public/WebhookLogCard/index.js.map +1 -0
  502. package/dist/elements/public/WebhookLogCard/types.d.ts +3 -0
  503. package/dist/elements/public/WebhookLogCard/types.js +2 -0
  504. package/dist/elements/public/WebhookLogCard/types.js.map +1 -0
  505. package/dist/elements/public/WebhookStatusCard/WebhookStatusCard.d.ts +16 -0
  506. package/dist/elements/public/WebhookStatusCard/WebhookStatusCard.js +41 -0
  507. package/dist/elements/public/WebhookStatusCard/WebhookStatusCard.js.map +1 -0
  508. package/dist/elements/public/WebhookStatusCard/index.d.ts +4 -0
  509. package/dist/elements/public/WebhookStatusCard/index.js +6 -0
  510. package/dist/elements/public/WebhookStatusCard/index.js.map +1 -0
  511. package/dist/elements/public/WebhookStatusCard/types.d.ts +3 -0
  512. package/dist/elements/public/WebhookStatusCard/types.js +2 -0
  513. package/dist/elements/public/WebhookStatusCard/types.js.map +1 -0
  514. package/dist/elements/public/index.d.ts +16 -0
  515. package/dist/elements/public/index.defined.d.ts +16 -0
  516. package/dist/elements/public/index.defined.js +16 -0
  517. package/dist/elements/public/index.defined.js.map +1 -1
  518. package/dist/elements/public/index.js +16 -0
  519. package/dist/elements/public/index.js.map +1 -1
  520. package/dist/mixins/configurable.d.ts +5 -3
  521. package/dist/mixins/configurable.js +40 -4
  522. package/dist/mixins/configurable.js.map +1 -1
  523. package/dist/mixins/inferrable.d.ts +15 -0
  524. package/dist/mixins/inferrable.js +67 -0
  525. package/dist/mixins/inferrable.js.map +1 -0
  526. package/dist/mixins/themeable.js +6818 -17
  527. package/dist/mixins/themeable.js.map +1 -1
  528. package/dist/mixins/translatable.d.ts +3 -1
  529. package/dist/mixins/translatable.js +16 -2
  530. package/dist/mixins/translatable.js.map +1 -1
  531. package/package.json +10 -8
  532. package/dist/cdn/shared-061f64fc.js +0 -1
  533. package/dist/cdn/shared-21419f10.js +0 -1
  534. package/dist/cdn/shared-29db2caa.js +0 -230
  535. package/dist/cdn/shared-2a89f737.js +0 -1
  536. package/dist/cdn/shared-312fdfb6.js +0 -1
  537. package/dist/cdn/shared-385ab830.js +0 -1
  538. package/dist/cdn/shared-39e3ae67.js +0 -1
  539. package/dist/cdn/shared-4190da71.js +0 -1
  540. package/dist/cdn/shared-4792a0b8.js +0 -1
  541. package/dist/cdn/shared-56646cd3.js +0 -1
  542. package/dist/cdn/shared-63eaded9.js +0 -159
  543. package/dist/cdn/shared-756034e4.js +0 -1
  544. package/dist/cdn/shared-9783e5ce.js +0 -1
  545. package/dist/cdn/shared-9da4822a.js +0 -12
  546. package/dist/cdn/shared-b07ef791.js +0 -1
  547. package/dist/cdn/shared-da709e9d.js +0 -1
  548. package/dist/cdn/shared-db4aacb2.js +0 -1
  549. package/dist/cdn/shared-dd4971b5.js +0 -1
  550. package/dist/cdn/shared-df730f90.js +0 -1
  551. package/dist/cdn/shared-e94c2670.js +0 -1
  552. package/dist/cdn/shared-edfe5274.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"themeable.js","sourceRoot":"","sources":["../../src/mixins/themeable.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n\nimport { CSSResult, CSSResultArray, Constructor, LitElement, css } from 'lit-element';\n\nimport { ResponsiveMixin } from './responsive';\nimport { ScopedElementsMixin } from '@open-wc/scoped-elements';\n\ntype Base = Constructor<LitElement> & { styles?: CSSResult | CSSResultArray | CSSStyleSheet };\n\nexport const ThemeableMixin = <TBase extends Base>(\n BaseElement: TBase\n): TBase & { styles: CSSResultArray } => {\n return class ThemeableElement extends BaseElement {\n static get styles(): CSSResultArray {\n const originalCSS = super.styles;\n\n return [\n ...(originalCSS ? (Array.isArray(originalCSS) ? originalCSS : [originalCSS]) : []),\n css`\n @tailwind base;\n\n * {\n -webkit-tap-highlight-color: transparent;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n :host {\n display: block;\n }\n\n details > summary::-webkit-details-marker {\n display: none;\n }\n\n details > summary {\n list-style: none;\n }\n\n vaadin-select {\n margin-top: -4px;\n margin-bottom: -4px;\n }\n\n vaadin-text-area,\n vaadin-text-field,\n vaadin-date-picker,\n vaadin-email-field,\n vaadin-number-field,\n vaadin-custom-field,\n vaadin-integer-field,\n vaadin-password-field,\n vaadin-combo-box::part(text-field) {\n padding-top: 0;\n padding-bottom: 0;\n }\n\n vaadin-date-picker::part(text-field) {\n padding-top: 0;\n padding-bottom: 0;\n }\n\n vaadin-time-picker {\n width: 100%;\n }\n\n vaadin-date-time-picker {\n width: 100%;\n }\n\n vaadin-button {\n margin: 0;\n }\n\n vaadin-checkbox::part(checkbox) {\n margin: 0;\n }\n\n vaadin-checkbox::part(label) {\n margin: 0.1875em var(--lumo-space-m);\n }\n\n .appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n }\n\n .appearance-none::-webkit-calendar-picker-indicator,\n .appearance-none::-webkit-outer-spin-button,\n .appearance-none::-webkit-inner-spin-button,\n .appearance-none::-webkit-list-button {\n opacity: 0 !important;\n width: 0 !important;\n margin: 0 !important;\n padding: 0 !important;\n }\n\n input::-webkit-date-and-time-value {\n text-align: inherit !important;\n }\n\n @tailwind components;\n\n @tailwind utilities;\n\n @layer utilities {\n .border-radius-overflow-fix {\n -webkit-mask-image: -webkit-radial-gradient(white, black);\n }\n\n @variants sm, md, lg, xl {\n .grid-rows-auto {\n grid-auto-rows: 1fr;\n }\n\n .icon-inline {\n --iron-icon-height: 1em;\n --iron-icon-width: 1em;\n }\n\n .bg-blurred {\n backdrop-filter: blur(25px);\n background: var(--lumo-tint-80pct);\n }\n\n .max-w-modal {\n max-width: 28rem;\n }\n\n .w-narrow-modal {\n width: 18rem;\n }\n\n .snap-x-mandatory {\n scroll-snap-type: x mandatory;\n }\n\n .snap-start {\n scroll-snap-align: start;\n }\n }\n }\n `,\n ];\n }\n };\n};\n\n/**\n * One of the base classes for each rel-specific element in the collection\n * providing shared TailwindCSS styles for Shadow DOM content.\n * This class MUST NOT be used on its own (hence the `abstract` keyword) or\n * referenced externally (outside of the package).\n *\n * @deprecated\n */\nexport abstract class Themeable extends ScopedElementsMixin(\n ResponsiveMixin(ThemeableMixin(LitElement))\n) {}\n"]}
1
+ {"version":3,"file":"themeable.js","sourceRoot":"","sources":["../../src/mixins/themeable.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAEtE,OAAO,EAA0C,UAAU,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEtF,OAAO,EAAE,eAAe,EAAE,wBAAqB;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAI/E,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,WAAkB,EACkB,EAAE;IACtC,OAAO,MAAM,gBAAiB,SAAQ,WAAW;QAC/C,MAAM,KAAK,MAAM;YACf,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;YAEjC,OAAO;gBACL,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClF,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAwHF;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,cAAc,CACZ,yBAAyB,EACzB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SASF,CACF,CAAC;AAEF,cAAc,CACZ,qCAAqC,EACrC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAOF,CACF,CAAC;AAEF,cAAc,CACZ,qCAAqC,EACrC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAOF,CACF,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,OAAgB,SAAU,SAAQ,mBAAmB,CACzD,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAC5C;CAAG","sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n\nimport { CSSResult, CSSResultArray, Constructor, LitElement, css } from 'lit-element';\n\nimport { ResponsiveMixin } from './responsive';\nimport { ScopedElementsMixin } from '@open-wc/scoped-elements';\nimport { registerStyles } from '@vaadin/vaadin-themable-mixin/register-styles';\n\ntype Base = Constructor<LitElement> & { styles?: CSSResult | CSSResultArray | CSSStyleSheet };\n\nexport const ThemeableMixin = <TBase extends Base>(\n BaseElement: TBase\n): TBase & { styles: CSSResultArray } => {\n return class ThemeableElement extends BaseElement {\n static get styles(): CSSResultArray {\n const originalCSS = super.styles;\n\n return [\n ...(originalCSS ? (Array.isArray(originalCSS) ? originalCSS : [originalCSS]) : []),\n css`\n @tailwind base;\n\n * {\n -webkit-tap-highlight-color: transparent;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n :host {\n display: block;\n color: var(--lumo-body-text-color);\n line-height: var(--lumo-line-height-m);\n font: normal var(--lumo-font-size-m) var(--lumo-font-family);\n }\n\n details > summary::-webkit-details-marker {\n display: none;\n }\n\n details > summary {\n list-style: none;\n }\n\n vaadin-select {\n margin-top: -4px;\n margin-bottom: -4px;\n }\n\n vaadin-text-area,\n vaadin-text-field,\n vaadin-date-picker,\n vaadin-email-field,\n vaadin-number-field,\n vaadin-custom-field,\n vaadin-integer-field,\n vaadin-password-field,\n vaadin-checkbox-group,\n vaadin-radio-group,\n vaadin-combo-box::part(text-field),\n vaadin-date-picker::part(text-field) {\n padding-top: 0;\n padding-bottom: 0;\n }\n\n vaadin-time-picker,\n vaadin-date-time-picker {\n width: 100%;\n }\n\n vaadin-button,\n vaadin-checkbox::part(checkbox) {\n margin: 0;\n }\n\n vaadin-checkbox::part(label) {\n margin: 0.1875em var(--lumo-space-m);\n }\n\n .appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n }\n\n .appearance-none::-webkit-calendar-picker-indicator,\n .appearance-none::-webkit-outer-spin-button,\n .appearance-none::-webkit-inner-spin-button,\n .appearance-none::-webkit-list-button {\n opacity: 0 !important;\n width: 0 !important;\n margin: 0 !important;\n padding: 0 !important;\n }\n\n input::-webkit-date-and-time-value {\n text-align: inherit !important;\n }\n\n @tailwind components;\n\n @tailwind utilities;\n\n @layer utilities {\n .border-radius-overflow-fix {\n -webkit-mask-image: -webkit-radial-gradient(white, black);\n }\n\n @variants sm, md, lg, xl {\n .grid-rows-auto {\n grid-auto-rows: 1fr;\n }\n\n .icon-inline {\n --iron-icon-height: 1em;\n --iron-icon-width: 1em;\n }\n\n .bg-blurred {\n backdrop-filter: blur(25px);\n background: var(--lumo-tint-80pct);\n }\n\n .max-w-modal {\n max-width: 28rem;\n }\n\n .w-narrow-modal {\n width: 18rem;\n }\n\n .snap-x-mandatory {\n scroll-snap-type: x mandatory;\n }\n\n .snap-start {\n scroll-snap-align: start;\n }\n }\n }\n `,\n ];\n }\n };\n};\n\nregisterStyles(\n 'vaadin-date-time-picker',\n css`\n vaadin-date-time-picker-custom-field {\n --lumo-text-field-size: auto;\n padding: 0;\n }\n\n vaadin-date-time-picker-custom-field::part(label) {\n padding-bottom: 0.5em;\n }\n `\n);\n\nregisterStyles(\n 'vaadin-date-time-picker-date-picker',\n css`\n :host {\n --lumo-text-field-size: auto;\n }\n vaadin-date-time-picker-date-text-field {\n padding: 0;\n }\n `\n);\n\nregisterStyles(\n 'vaadin-date-time-picker-time-picker',\n css`\n :host {\n --lumo-text-field-size: auto;\n }\n vaadin-date-time-picker-time-text-field {\n padding: 0;\n }\n `\n);\n\n/**\n * One of the base classes for each rel-specific element in the collection\n * providing shared TailwindCSS styles for Shadow DOM content.\n * This class MUST NOT be used on its own (hence the `abstract` keyword) or\n * referenced externally (outside of the package).\n *\n * @deprecated\n */\nexport abstract class Themeable extends ScopedElementsMixin(\n ResponsiveMixin(ThemeableMixin(LitElement))\n) {}\n"]}
@@ -1,6 +1,7 @@
1
1
  import { Constructor, LitElement, PropertyDeclarations } from 'lit-element';
2
2
  import { StringMap, TFunction, i18n } from 'i18next';
3
3
  import { Themeable } from './themeable';
4
+ import { InferrableMixinHost } from './inferrable';
4
5
  /**
5
6
  * One of the base classes for each rel-specific element in the collection,
6
7
  * providing internationalization capabilities to the derived components.
@@ -64,8 +65,9 @@ export declare abstract class Translatable extends Themeable {
64
65
  protected get _isI18nReady(): boolean;
65
66
  protected get _t(): TFunction;
66
67
  }
67
- declare type Base = Constructor<LitElement> & {
68
+ declare type Base = Constructor<InferrableMixinHost> & Constructor<LitElement> & {
68
69
  properties?: PropertyDeclarations;
70
+ inferredProperties: string[];
69
71
  };
70
72
  declare type Translator = (key: string, options?: StringMap) => string;
71
73
  export declare class TranslatableMixinHost {
@@ -157,9 +157,11 @@ export const TranslatableMixin = (BaseElement, defaultNS = '') => {
157
157
  if (!I18nElement)
158
158
  return key;
159
159
  const keys = [
160
- ...[defaultNS, ...this.ns.split(' ').reverse()]
160
+ ...this.ns
161
+ .split(' ')
162
+ .reverse()
161
163
  .map(v => v.trim())
162
- .filter((v, i, a) => a.indexOf(v) === i && v.length > 0)
164
+ .filter(v => v.length > 0)
163
165
  .reverse()
164
166
  .map((v, i, a) => `${v}:${[...a.slice(i + 1), key].join('.')}`),
165
167
  `shared:${key}`,
@@ -167,6 +169,9 @@ export const TranslatableMixin = (BaseElement, defaultNS = '') => {
167
169
  return I18nElement.i18next.t(keys, { lng: this.lang, ...options }).toString();
168
170
  };
169
171
  }
172
+ static get inferredProperties() {
173
+ return [...super.inferredProperties, 'lang', 'ns'];
174
+ }
170
175
  static get properties() {
171
176
  return {
172
177
  ...super.properties,
@@ -198,6 +203,15 @@ export const TranslatableMixin = (BaseElement, defaultNS = '') => {
198
203
  super.disconnectedCallback();
199
204
  (_a = this.__untrackTranslations) === null || _a === void 0 ? void 0 : _a.call(this);
200
205
  }
206
+ applyInferredProperties(context) {
207
+ super.applyInferredProperties(context);
208
+ if (this.infer === null)
209
+ return;
210
+ const lang = context.get('lang');
211
+ const ns = context.get('ns');
212
+ this.lang = lang !== null && lang !== void 0 ? lang : '';
213
+ this.ns = ns ? `${ns} ${this.infer}`.trim() : defaultNS;
214
+ }
201
215
  };
202
216
  };
203
217
  //# sourceMappingURL=translatable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"translatable.js","sourceRoot":"","sources":["../../src/mixins/translatable.ts"],"names":[],"mappings":"AACA,OAAO,OAAuD,MAAM,SAAS,CAAC;AAE9E,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,uBAAoB;AACxC,OAAO,EAAE,GAAG,EAAE,kBAAe;AAE7B;;;;;;;GAOG;AACH,MAAM,OAAgB,YAAa,SAAQ,SAAS;IA+DlD;;;;;OAKG;IACH,YAAY,SAAS,GAAG,QAAQ;QAC9B,KAAK,EAAE,CAAC;QAXF,WAAM,GAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAwB,CAAC,CAAC,CAAC,CAAC;QAEzD,SAAI,GAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAuB,CAAC,CAAC,CAAC,CAAC;QAU5D,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IACvD,CAAC;IAxED,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE;YACxC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE;SACvC,CAAC;IACJ,CAAC;IAoED;;;;;;OAMG;IACH,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAW,IAAI,CAAC,KAAa;QAC3B,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,WAAW;YAAE,OAAO;QAC5C,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACxC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;gBAAE,IAAI,CAAC,aAAa,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACH,IAAW,EAAE;QACX,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAW,EAAE,CAAC,KAAa;QACzB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACzC,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;gBAAE,IAAI,CAAC,aAAa,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,MAAM,CAAC,UAAU;QACvB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACtC,EAAE,EAAE,CAAC,QAAQ,CAAC;YACd,aAAa,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YACjF,aAAa,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,EAAE;YAC3C,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE;gBACT,KAAK,EAAE,CAAC,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC;gBACnE,MAAM,EAAE,EAAE;aACX;YACD,OAAO,EAAE;gBACP,QAAQ,EAAE,GAAG,GAAG,mCAAmC;aACpD;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC;QAE7D,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAc,KAAK;;QACjB,aAAO,YAAY,CAAC,MAAM,mCAAI,YAAY,CAAC,UAAU,EAAE,CAAC;IAC1D,CAAC;IAED,IAAc,cAAc;QAC1B,OAAO,YAAY,CAAC,eAAe,CAAC;IACtC,CAAC;IAED,IAAc,YAAY;QACxB,OAAO,YAAY,CAAC,aAAa,CAAC;IACpC,CAAC;IAED,IAAc,EAAE;QACd,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAoB,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;;AA/ID;;;GAGG;AACY,yBAAY,GAAmB,CAAC,KAAK,EAAU,EAAE;IAC9D,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;;GAKG;AACY,oBAAO,GAAmB,CAAC,KAAK,EAAU,EAAE;IACzD,OAAQ,KAAkB;SACvB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACf,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACtB,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;QACpD,OAAO,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;IACxB,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC,CAAC;AAEF;;;GAGG;AACY,gBAAG,GAAmB,CAAC,GAAG,IAAI,EAAU,EAAE;;IACvD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,OAAO,eAAG,IAAI,CAAC,CAAC,CAAC,0CAAE,KAAK,CAAC,GAAG,oCAAK,EAAE,CAAC;IAE1C,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;QACvC,QAAQ,MAAM,EAAE;YACd,KAAK,WAAW;gBACd,OAAO,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC3C,KAAK,MAAM;gBACT,OAAO,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACtC;gBACE,OAAO,MAAM,CAAC;SACjB;IACH,CAAC,EAAE,KAAK,CAAC,CAAC;AACZ,CAAC,CAAC;AAIa,0BAAa,GAAG,KAAK,CAAC;AAwHvC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,WAAc,EACd,SAAS,GAAG,EAAE,EACkD,EAAE;IAClE,OAAO,MAAM,mBAAoB,SAAQ,WAAW;QAA7C;;YAaL,SAAI,GAAG,EAAE,CAAC;YAEV,OAAE,GAAG,SAAS,CAAC;YAEf,MAAC,GAAe,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE;gBAC/B,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,WAAW,CAA4B,CAAC;gBAE/E,IAAI,CAAC,WAAW;oBAAE,OAAO,GAAG,CAAC;gBAE7B,MAAM,IAAI,GAAG;oBACX,GAAG,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;yBAC5C,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;yBAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;yBACvD,OAAO,EAAE;yBACT,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBACjE,UAAU,GAAG,EAAE;iBAChB,CAAC;gBAEF,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChF,CAAC,CAAC;QAyBJ,CAAC;QAxDC,MAAM,KAAK,UAAU;YACnB,OAAO;gBACL,GAAG,KAAK,CAAC,UAAU;gBACnB,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;gBACtB,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;aACrB,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,SAAS;YAClB,OAAO,SAAS,CAAC;QACnB,CAAC;QAyBD,iBAAiB;YACf,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,WAAW,CAA4B,CAAC;YAC/E,IAAI,CAAC,qBAAqB,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,mBAAmB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5F,CAAC;QAED,gBAAgB;QAChB,OAAO,CAAC,iBAA2C;YACjD,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAEjC,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,WAAW,CAA4B,CAAC;YAC/E,IAAI,CAAC,WAAW;gBAAE,OAAO;YAEzB,IAAI,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChF,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1F,CAAC;QAED,oBAAoB;;YAClB,KAAK,CAAC,oBAAoB,EAAE,CAAC;YAC7B,MAAA,IAAI,CAAC,qBAAqB,+CAA1B,IAAI,EAA2B;QACjC,CAAC;KACF,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { Constructor, LitElement, PropertyDeclarations } from 'lit-element';\nimport i18next, { FormatFunction, StringMap, TFunction, i18n } from 'i18next';\n\nimport HttpApi from 'i18next-http-backend';\nimport { I18n } from '../elements/public/I18n/I18n';\nimport { Themeable } from './themeable';\nimport { cdn } from '../env';\n\n/**\n * One of the base classes for each rel-specific element in the collection,\n * providing internationalization capabilities to the derived components.\n * This class MUST NOT be used on its own (hence the `abstract` keyword) or\n * referenced externally (outside of the package).\n *\n * @deprecated\n */\nexport abstract class Translatable extends Themeable {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n lang: { type: String, noAccessor: true },\n ns: { type: String, noAccessor: true },\n };\n }\n\n /**\n * i18next formatter that converts given value to lowecase.\n * @see https://www.i18next.com/translation-function/formatting\n */\n private static __fLowercase: FormatFunction = (value): string => {\n return value.toLowerCase();\n };\n\n /**\n * i18next formatter that presents an array of serializable items\n * as `[0], [1], [...] and [length - 1]`. For example, given an array like\n * the following: `['a', 'b', 'c']`, it will output `'a, b and c'`.\n * @see https://www.i18next.com/translation-function/formatting\n */\n private static __fList: FormatFunction = (value): string => {\n return (value as string[])\n .map((v, i, a) => {\n if (i === 0) return v;\n const part = i === a.length - 1 ? ` $t(and) ` : ',';\n return `${part} ${v}`;\n })\n .join('');\n };\n\n /**\n * Chooses the right i18next formatter for the given template.\n * @see https://www.i18next.com/translation-function/formatting\n */\n private static __f: FormatFunction = (...args): string => {\n const value = args[0];\n const formats = args[1]?.split(' ') ?? [];\n\n return formats.reduce((result, format) => {\n switch (format) {\n case 'lowercase':\n return Translatable.__fLowercase(result);\n case 'list':\n return Translatable.__fList(result);\n default:\n return result;\n }\n }, value);\n };\n\n private static __whenI18NReady: Promise<TFunction>;\n\n private static __isI18NReady = false;\n\n private static __i18n: i18n;\n\n private __lang = (this._i18n.options.fallbackLng as string[])[0];\n\n private __ns = (this._i18n.options.fallbackNS as string[])[0];\n\n /**\n * Creates class instance and starts loading missing translations\n * in background. Triggers render when ready.\n *\n * @param defaultNS Name of the folder translations for this component are stored in. Usually a node name without vendor prefix.\n */\n constructor(defaultNS = 'global') {\n super();\n this.ns = defaultNS;\n this._whenI18nReady.then(() => this.requestUpdate());\n }\n\n /**\n * Contains the language this component presents its translatable\n * content in. Assigning a value to this property will load new\n * translations in background and trigger a render afterwards.\n *\n * **Example:** `\"en\"`\n */\n public get lang(): string {\n return this.__lang;\n }\n\n public set lang(value: string) {\n if (!value || value === 'undefined') return;\n this.__lang = value;\n this._i18n.loadLanguages(value).then(() => {\n if (this.__lang === value) this.requestUpdate();\n });\n }\n\n /**\n * The namespace to look for the translations in. We use this property to\n * sync namespace settings with the parent element and it's highly unlikely\n * that you'll ever need to set or read it in your code.\n *\n * **Example:** `\"admin\"`\n */\n public get ns(): string {\n return this.__ns;\n }\n\n public set ns(value: string) {\n this.__ns = value;\n this._i18n.loadNamespaces(value).then(() => {\n if (this.__ns === value) this.requestUpdate();\n });\n }\n\n private static __initI18N() {\n this.__i18n = i18next.createInstance();\n this.__i18n.use(HttpApi);\n\n this.__whenI18NReady = this.__i18n.init({\n ns: ['global'],\n supportedLngs: ['nl', 'en', 'es', 'sv', 'fi', 'fr', 'de', 'zh', 'no', 'it', 'pl'],\n interpolation: { format: Translatable.__f },\n fallbackLng: 'en',\n fallbackNS: 'global',\n defaultNS: 'global',\n detection: {\n order: ['querystring', 'navigator', 'htmlTag', 'path', 'subdomain'],\n caches: [],\n },\n backend: {\n loadPath: `${cdn}/translations/{{ns}}/{{lng}}.json`,\n },\n });\n\n this.__whenI18NReady.then(() => (this.__isI18NReady = true));\n\n return this.__i18n;\n }\n\n protected get _i18n(): i18n {\n return Translatable.__i18n ?? Translatable.__initI18N();\n }\n\n protected get _whenI18nReady(): Promise<TFunction> {\n return Translatable.__whenI18NReady;\n }\n\n protected get _isI18nReady(): boolean {\n return Translatable.__isI18NReady;\n }\n\n protected get _t(): TFunction {\n const ns = [this.__ns, this._i18n.options.fallbackNS as string];\n return this._i18n.getFixedT(this.__lang, ns);\n }\n}\n\ntype Base = Constructor<LitElement> & { properties?: PropertyDeclarations };\ntype Translator = (key: string, options?: StringMap) => string;\n\nexport declare class TranslatableMixinHost {\n /** Optional ISO 639-1 code describing the language element content is written in. */\n lang: string;\n\n /**\n * Namespace used by this element.\n * @since 1.4.0\n */\n ns: string;\n\n /**\n * Translation function from i18next fixed to the current language and element namespace.\n * @since 1.4.0\n */\n get t(): Translator;\n}\n\nexport const TranslatableMixin = <T extends Base>(\n BaseElement: T,\n defaultNS = ''\n): T & Constructor<TranslatableMixinHost> & { defaultNS: string } => {\n return class TranslatableElement extends BaseElement {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n lang: { type: String },\n ns: { type: String },\n };\n }\n\n static get defaultNS(): string {\n return defaultNS;\n }\n\n lang = '';\n\n ns = defaultNS;\n\n t: Translator = (key, options) => {\n const I18nElement = customElements.get('foxy-i18n') as typeof I18n | undefined;\n\n if (!I18nElement) return key;\n\n const keys = [\n ...[defaultNS, ...this.ns.split(' ').reverse()]\n .map(v => v.trim())\n .filter((v, i, a) => a.indexOf(v) === i && v.length > 0)\n .reverse()\n .map((v, i, a) => `${v}:${[...a.slice(i + 1), key].join('.')}`),\n `shared:${key}`,\n ];\n\n return I18nElement.i18next.t(keys, { lng: this.lang, ...options }).toString();\n };\n\n private __untrackTranslations?: () => void;\n\n connectedCallback(): void {\n super.connectedCallback();\n const I18nElement = customElements.get('foxy-i18n') as typeof I18n | undefined;\n this.__untrackTranslations = I18nElement?.onTranslationChange(() => this.requestUpdate());\n }\n\n /** @readonly */\n updated(changedProperties: Map<keyof I18n, unknown>): void {\n super.updated(changedProperties);\n\n const I18nElement = customElements.get('foxy-i18n') as typeof I18n | undefined;\n if (!I18nElement) return;\n\n if (changedProperties.has('lang')) I18nElement.i18next.loadLanguages(this.lang);\n if (changedProperties.has('ns')) I18nElement.i18next.loadNamespaces(this.ns.split(' '));\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.__untrackTranslations?.();\n }\n };\n};\n"]}
1
+ {"version":3,"file":"translatable.js","sourceRoot":"","sources":["../../src/mixins/translatable.ts"],"names":[],"mappings":"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","sourcesContent":["import { Constructor, LitElement, PropertyDeclarations } from 'lit-element';\nimport i18next, { FormatFunction, StringMap, TFunction, i18n } from 'i18next';\n\nimport HttpApi from 'i18next-http-backend';\nimport { I18n } from '../elements/public/I18n/I18n';\nimport { Themeable } from './themeable';\nimport { cdn } from '../env';\nimport { InferrableMixinHost } from './inferrable';\n\n/**\n * One of the base classes for each rel-specific element in the collection,\n * providing internationalization capabilities to the derived components.\n * This class MUST NOT be used on its own (hence the `abstract` keyword) or\n * referenced externally (outside of the package).\n *\n * @deprecated\n */\nexport abstract class Translatable extends Themeable {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n lang: { type: String, noAccessor: true },\n ns: { type: String, noAccessor: true },\n };\n }\n\n /**\n * i18next formatter that converts given value to lowecase.\n * @see https://www.i18next.com/translation-function/formatting\n */\n private static __fLowercase: FormatFunction = (value): string => {\n return value.toLowerCase();\n };\n\n /**\n * i18next formatter that presents an array of serializable items\n * as `[0], [1], [...] and [length - 1]`. For example, given an array like\n * the following: `['a', 'b', 'c']`, it will output `'a, b and c'`.\n * @see https://www.i18next.com/translation-function/formatting\n */\n private static __fList: FormatFunction = (value): string => {\n return (value as string[])\n .map((v, i, a) => {\n if (i === 0) return v;\n const part = i === a.length - 1 ? ` $t(and) ` : ',';\n return `${part} ${v}`;\n })\n .join('');\n };\n\n /**\n * Chooses the right i18next formatter for the given template.\n * @see https://www.i18next.com/translation-function/formatting\n */\n private static __f: FormatFunction = (...args): string => {\n const value = args[0];\n const formats = args[1]?.split(' ') ?? [];\n\n return formats.reduce((result, format) => {\n switch (format) {\n case 'lowercase':\n return Translatable.__fLowercase(result);\n case 'list':\n return Translatable.__fList(result);\n default:\n return result;\n }\n }, value);\n };\n\n private static __whenI18NReady: Promise<TFunction>;\n\n private static __isI18NReady = false;\n\n private static __i18n: i18n;\n\n private __lang = (this._i18n.options.fallbackLng as string[])[0];\n\n private __ns = (this._i18n.options.fallbackNS as string[])[0];\n\n /**\n * Creates class instance and starts loading missing translations\n * in background. Triggers render when ready.\n *\n * @param defaultNS Name of the folder translations for this component are stored in. Usually a node name without vendor prefix.\n */\n constructor(defaultNS = 'global') {\n super();\n this.ns = defaultNS;\n this._whenI18nReady.then(() => this.requestUpdate());\n }\n\n /**\n * Contains the language this component presents its translatable\n * content in. Assigning a value to this property will load new\n * translations in background and trigger a render afterwards.\n *\n * **Example:** `\"en\"`\n */\n public get lang(): string {\n return this.__lang;\n }\n\n public set lang(value: string) {\n if (!value || value === 'undefined') return;\n this.__lang = value;\n this._i18n.loadLanguages(value).then(() => {\n if (this.__lang === value) this.requestUpdate();\n });\n }\n\n /**\n * The namespace to look for the translations in. We use this property to\n * sync namespace settings with the parent element and it's highly unlikely\n * that you'll ever need to set or read it in your code.\n *\n * **Example:** `\"admin\"`\n */\n public get ns(): string {\n return this.__ns;\n }\n\n public set ns(value: string) {\n this.__ns = value;\n this._i18n.loadNamespaces(value).then(() => {\n if (this.__ns === value) this.requestUpdate();\n });\n }\n\n private static __initI18N() {\n this.__i18n = i18next.createInstance();\n this.__i18n.use(HttpApi);\n\n this.__whenI18NReady = this.__i18n.init({\n ns: ['global'],\n supportedLngs: ['nl', 'en', 'es', 'sv', 'fi', 'fr', 'de', 'zh', 'no', 'it', 'pl'],\n interpolation: { format: Translatable.__f },\n fallbackLng: 'en',\n fallbackNS: 'global',\n defaultNS: 'global',\n detection: {\n order: ['querystring', 'navigator', 'htmlTag', 'path', 'subdomain'],\n caches: [],\n },\n backend: {\n loadPath: `${cdn}/translations/{{ns}}/{{lng}}.json`,\n },\n });\n\n this.__whenI18NReady.then(() => (this.__isI18NReady = true));\n\n return this.__i18n;\n }\n\n protected get _i18n(): i18n {\n return Translatable.__i18n ?? Translatable.__initI18N();\n }\n\n protected get _whenI18nReady(): Promise<TFunction> {\n return Translatable.__whenI18NReady;\n }\n\n protected get _isI18nReady(): boolean {\n return Translatable.__isI18NReady;\n }\n\n protected get _t(): TFunction {\n const ns = [this.__ns, this._i18n.options.fallbackNS as string];\n return this._i18n.getFixedT(this.__lang, ns);\n }\n}\n\ntype Base = Constructor<InferrableMixinHost> &\n Constructor<LitElement> & { properties?: PropertyDeclarations; inferredProperties: string[] };\n\ntype Translator = (key: string, options?: StringMap) => string;\n\nexport declare class TranslatableMixinHost {\n /** Optional ISO 639-1 code describing the language element content is written in. */\n lang: string;\n\n /**\n * Namespace used by this element.\n * @since 1.4.0\n */\n ns: string;\n\n /**\n * Translation function from i18next fixed to the current language and element namespace.\n * @since 1.4.0\n */\n get t(): Translator;\n}\n\nexport const TranslatableMixin = <T extends Base>(\n BaseElement: T,\n defaultNS = ''\n): T & Constructor<TranslatableMixinHost> & { defaultNS: string } => {\n return class TranslatableElement extends BaseElement {\n static get inferredProperties(): string[] {\n return [...super.inferredProperties, 'lang', 'ns'];\n }\n\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n lang: { type: String },\n ns: { type: String },\n };\n }\n\n static get defaultNS(): string {\n return defaultNS;\n }\n\n lang = '';\n\n ns = defaultNS;\n\n t: Translator = (key, options) => {\n const I18nElement = customElements.get('foxy-i18n') as typeof I18n | undefined;\n\n if (!I18nElement) return key;\n\n const keys = [\n ...this.ns\n .split(' ')\n .reverse()\n .map(v => v.trim())\n .filter(v => v.length > 0)\n .reverse()\n .map((v, i, a) => `${v}:${[...a.slice(i + 1), key].join('.')}`),\n `shared:${key}`,\n ];\n\n return I18nElement.i18next.t(keys, { lng: this.lang, ...options }).toString();\n };\n\n private __untrackTranslations?: () => void;\n\n connectedCallback(): void {\n super.connectedCallback();\n const I18nElement = customElements.get('foxy-i18n') as typeof I18n | undefined;\n this.__untrackTranslations = I18nElement?.onTranslationChange(() => this.requestUpdate());\n }\n\n /** @readonly */\n updated(changedProperties: Map<keyof I18n, unknown>): void {\n super.updated(changedProperties);\n\n const I18nElement = customElements.get('foxy-i18n') as typeof I18n | undefined;\n if (!I18nElement) return;\n\n if (changedProperties.has('lang')) I18nElement.i18next.loadLanguages(this.lang);\n if (changedProperties.has('ns')) I18nElement.i18next.loadNamespaces(this.ns.split(' '));\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.__untrackTranslations?.();\n }\n\n applyInferredProperties(context: Map<string, unknown>): void {\n super.applyInferredProperties(context);\n if (this.infer === null) return;\n\n const lang = context.get('lang') as string | undefined;\n const ns = context.get('ns') as string | undefined;\n\n this.lang = lang ?? '';\n this.ns = ns ? `${ns} ${this.infer}`.trim() : defaultNS;\n }\n };\n};\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@foxy.io/elements",
3
3
  "type": "module",
4
- "version": "1.16.0-beta.1",
4
+ "version": "1.16.0-beta.12",
5
5
  "description": "E-commerce web components by Foxy.",
6
6
  "repository": {
7
7
  "type": "git",
@@ -21,12 +21,12 @@
21
21
  "format": "npm run format:eslint && npm run format:prettier",
22
22
  "format:eslint": "eslint --ext .ts,.html . --fix --ignore-path .gitignore",
23
23
  "format:prettier": "prettier \"**/*.js\" \"**/*.ts\" --write --ignore-path .gitignore",
24
- "test": "wtr src/elements/public/ReportCard/ReportCard.test.ts --debug=true",
24
+ "test": "wtr src/**/*.test.ts",
25
25
  "test:watch": "wtr src/**/*.test.ts --watch",
26
26
  "prepack": "npm run lint && rimraf dist && node ./.build/compile-for-npm.js && rollup -c"
27
27
  },
28
28
  "dependencies": {
29
- "@foxy.io/sdk": "^1.9.0",
29
+ "@foxy.io/sdk": "^1.9.1",
30
30
  "@open-wc/lit-helpers": "^0.3.11",
31
31
  "@open-wc/scoped-elements": "1.2.1",
32
32
  "@polymer/iron-icons": "^3.0.1",
@@ -65,11 +65,13 @@
65
65
  "@types/traverse": "^0.6.32",
66
66
  "@typescript-eslint/eslint-plugin": "^4.0.1",
67
67
  "@typescript-eslint/parser": "^4.0.1",
68
- "@web/dev-server": "^0.1.17",
69
- "@web/dev-server-esbuild": "^0.2.11",
70
- "@web/dev-server-rollup": "^0.3.4",
71
- "@web/dev-server-storybook": "^0.3.5",
72
- "@web/test-runner": "^0.12.14",
68
+ "@web/dev-server": "^0.1.32",
69
+ "@web/dev-server-esbuild": "^0.3.1",
70
+ "@web/dev-server-rollup": "^0.3.18",
71
+ "@web/dev-server-storybook": "^0.5.1",
72
+ "@web/test-runner": "^0.13.31",
73
+ "@web/test-runner-commands": "^0.6.3",
74
+ "@web/test-runner-puppeteer": "^0.10.5",
73
75
  "@xstate/test": "^0.4.1",
74
76
  "@zoltu/typescript-transformer-append-js-extension": "^1.0.1",
75
77
  "autoprefixer": "^10.2.5",
@@ -1 +0,0 @@
1
- import{h as t,_ as e}from"./shared-63eaded9.js";import{C as i}from"./shared-df730f90.js";import{N as s}from"./shared-39e3ae67.js";import{T as r}from"./shared-385ab830.js";import{c as a}from"./shared-4e709717.js";let d,l,n,o=t=>t;const h=i(r(s));class p extends h{constructor(){super(...arguments),this.templates={},this.lang="",this.ns="",this.__renderTitle=e=>t(d||(d=o` <div data-testid="title"> ${0} <div class="text-secondary truncate"> ${0}&ZeroWidthSpace; </div> ${0} </div> `),this.renderTemplateOrSlot("title:before"),this.data?null==e?void 0:e(this.data):"",this.renderTemplateOrSlot("title:after")),this.__renderSubtitle=e=>t(l||(l=o` <div data-testid="subtitle"> ${0} <div class="font-semibold truncate"> ${0}&ZeroWidthSpace; </div> ${0} </div> `),this.renderTemplateOrSlot("subtitle:before"),this.data?null==e?void 0:e(this.data):"",this.renderTemplateOrSlot("subtitle:after"))}static get properties(){return e(e({},super.properties),{},{lang:{type:String},ns:{type:String}})}render(e){var i,s;const r=this.hiddenSelector;return t(n||(n=o` <div aria-live="polite" aria-busy="${0}" class="relative text-body text-m font-lumo leading-m"> ${0} ${0} <div class="${0}"> <foxy-spinner data-testid="spinner" class="m-auto" state="${0}" lang="${0}" ns="${0} ${0}"> </foxy-spinner> </div> </div> `),!this.data&&this.in("busy"),r.matches("title",!0)?"":this.__renderTitle(null==e?void 0:e.title),r.matches("subtitle",!0)?"":this.__renderSubtitle(null==e?void 0:e.subtitle),a({"transition duration-250 ease-in-out absolute inset-0 flex":!0,"opacity-0 pointer-events-none":!!this.data}),this.in("fail")?"error":this.in({idle:"template"})?"empty":"busy",this.lang,this.ns,null!==(s=null===(i=customElements.get("foxy-spinner"))||void 0===i?void 0:i.defaultNS)&&void 0!==s?s:"")}}export{p as T};
@@ -1 +0,0 @@
1
- import{c as e,g as t,L as r,_ as n,h as s}from"./shared-63eaded9.js";import{A as o}from"./shared-448781f9.js";import"./shared-59e44f29.js";import{C as i}from"./shared-df730f90.js";import{F as a}from"./shared-5535f38f.js";var u=e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.formatCookie=void 0;var r=function(e){var t=e.path,r=e.domain,n=e.expires,s=e.secure,o=function(e){var t=e.sameSite;return void 0===t?null:["none","lax","strict"].indexOf(t.toLowerCase())>=0?t:null}(e);return[null==t?"":";path="+t,null==r?"":";domain="+r,null==n?"":";expires="+n.toUTCString(),void 0===s||!1===s?"":";secure",null===o?"":";SameSite="+o].join("")};t.formatCookie=function(e,t,n){return[encodeURIComponent(e),"=",encodeURIComponent(t),r(n)].join("")}})),c=e((function(e,t){function r(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,s=!1,o=void 0;try{for(var i,a=e[Symbol.iterator]();!(n=(i=a.next()).done)&&(r.push(i.value),!t||r.length!==t);n=!0);}catch(e){s=!0,o=e}finally{try{n||null==a.return||a.return()}finally{if(s)throw o}}return r}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return n(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}Object.defineProperty(t,"__esModule",{value:!0}),t.parseCookies=void 0;t.parseCookies=function(e){if(0===e.length)return{};var t={},n=new RegExp("\\s*;\\s*");return e.split(n).forEach((function(e){var n=r(e.split("="),2),s=n[0],o=n[1],i=decodeURIComponent(s),a=decodeURIComponent(o);t[i]=a})),t}})),l=e((function(e,t){function r(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}Object.defineProperty(t,"__esModule",{value:!0}),t.CookieStorage=void 0;var n=function(){function e(t){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._defaultOptions=Object.assign({domain:null,expires:null,path:null,secure:!1},t),"undefined"!=typeof Proxy)return new Proxy(this,s)}var t,n,o;return t=e,(n=[{key:"clear",value:function(){var e=this,t=c.parseCookies(this._getCookie());Object.keys(t).forEach((function(t){return e.removeItem(t)}))}},{key:"getItem",value:function(e){var t=c.parseCookies(this._getCookie());return Object.prototype.hasOwnProperty.call(t,e)?t[e]:null}},{key:"key",value:function(e){var t=c.parseCookies(this._getCookie()),r=Object.keys(t).sort();return e<r.length?r[e]:null}},{key:"removeItem",value:function(e,t){var r=Object.assign(Object.assign(Object.assign({},this._defaultOptions),t),{expires:new Date(0)}),n=u.formatCookie(e,"",r);this._setCookie(n)}},{key:"setItem",value:function(e,t,r){var n=Object.assign(Object.assign({},this._defaultOptions),r),s=u.formatCookie(e,t,n);this._setCookie(s)}},{key:"_getCookie",value:function(){return"undefined"==typeof document||void 0===document.cookie?"":document.cookie}},{key:"_setCookie",value:function(e){document.cookie=e}},{key:"length",get:function(){var e=c.parseCookies(this._getCookie());return Object.keys(e).length}}])&&r(t.prototype,n),o&&r(t,o),e}();t.CookieStorage=n;var s={defineProperty:function(e,t,r){return e.setItem(t.toString(),String(r.value)),!0},deleteProperty:function(e,t){return e.removeItem(t.toString()),!0},get:function(e,t,r){if("string"==typeof t&&t in e)return e[t];var n=e.getItem(t.toString());return null!==n?n:void 0},getOwnPropertyDescriptor:function(e,t){if(!(t in e))return{configurable:!0,enumerable:!0,value:e.getItem(t.toString()),writable:!0}},has:function(e,t){return"string"==typeof t&&t in e||null!==e.getItem(t.toString())},ownKeys:function(e){for(var t=[],r=0;r<e.length;r++){var n=e.key(r);null!==n&&t.push(n)}return t},preventExtensions:function(e){throw new TypeError("can't prevent extensions on this proxy object")},set:function(e,t,r,n){return e.setItem(t.toString(),String(r)),!0}}})),f=t(e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"CookieStorage",{enumerable:!0,get:function(){return l.CookieStorage}}),Object.defineProperty(t,"formatCookie",{enumerable:!0,get:function(){return u.formatCookie}}),Object.defineProperty(t,"parseCookies",{enumerable:!0,get:function(){return c.parseCookies}})})));class p extends f.CookieStorage{constructor(){super({sameSite:"Strict",expires:new Date,secure:!0,domain:location.hostname,path:"/"})}getItem(e){if(e===o.SESSION){const e=super.getItem("fx.customer"),t=super.getItem("fx.customer.duration"),r=super.getItem("fx.customer.start"),n=super.getItem("fx.customer.jwt");if(null===e||null===t||null===r||null===n)return null;const s={session_token:e,date_created:r,expires_in:parseInt(t),jwt:n},o=super.getItem("fx.customer.sso");return null!==o&&(s.sso=o),JSON.stringify(s)}return super.getItem(e)}setItem(e,t,r){if(e!==o.SESSION)return super.setItem(e,t,r);{const e=JSON.parse(t),r=1e3*e.expires_in,n=new Date(new Date(e.date_created).getTime()+r);super.setItem("fx.customer",e.session_token,{expires:n}),super.setItem("fx.customer.jwt",e.jwt,{expires:n}),super.setItem("fx.customer.start",e.date_created,{expires:n}),super.setItem("fx.customer.duration",String(e.expires_in),{expires:n}),e.sso&&super.setItem("fx.customer.sso",e.sso,{expires:n})}}clear(){for(let e=0;e<this.length;){const t=super.key(e);t.startsWith("fx.customer")?super.removeItem(t):e++}}}const h=new p;let d,m=e=>e;class g extends(i(r)){constructor(){var e;super(...arguments),e=this,this.__storage="local",this.__level=0,this.__base=location.origin,this.__api=this.__createAPIInstance(),this.__handleFetch=async function(t){if(!(t instanceof a))return;if(t.defaultPrevented)return;if(t.composedPath()[0]===e)return;t.preventDefault();const r=new a("fetch",{cancelable:!0,composed:!0,request:t.request,bubbles:!0,reject:e=>t.respondWith(Promise.reject(e)),resolve:n=>{"foxy://customer-api/session"===r.request.url&&e.requestUpdate(),401===n.status&&e.requestUpdate(),t.respondWith(Promise.resolve(n))}});e.dispatchEvent(r)&&r.respondWith(e.__handleRequest(r.request))}}static get properties(){return n(n({},super.properties),{},{storage:{type:String,noAccessor:!0},level:{type:Number,noAccessor:!0},base:{type:String,noAccessor:!0}})}get isLoggedIn(){return!!this.api.storage.getItem(o.SESSION)}get api(){return this.__api}get base(){return this.__base}set base(e){this.__base=e,this.__api=this.__createAPIInstance()}get level(){return this.__level}set level(e){this.__level=e,this.__api=this.__createAPIInstance()}get storage(){return this.__storage}set storage(e){this.__storage=e,this.__api=this.__createAPIInstance()}connectedCallback(){super.connectedCallback(),this.addEventListener("fetch",this.__handleFetch)}render(){return s(d||(d=m` ${0} <slot></slot> `),this.renderTemplateOrSlot(this.isLoggedIn?"logged-in":"logged-out"))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("fetch",this.__handleFetch)}__createAPIInstance(){const e={session:sessionStorage,cookie:h,local:localStorage};return new o({storage:e[this.storage],level:this.level,base:new URL(this.base)})}async __handleVirtualAuthSessionDelete(){return await this.api.signOut(),this.dispatchEvent(new g.SignOutEvent("signout")),this.requestUpdate(),new Response}async __handleVirtualAuthSessionPost(e){const t=await e.clone().json();if("password"!==t.type)throw new Error(`Unknown payload type ${t.type}`);let r,s;try{await this.api.signIn(t.credential),this.dispatchEvent(new g.SignInEvent("signin")),this.requestUpdate(),r=200,s=n({_links:{self:{href:e.url}}},t)}catch(e){if(!(e instanceof o.AuthError))throw e;if("UNAUTHORIZED"!==e.code)throw e;r=401,s={total:1,_embedded:{"fx:errors":[{message:e.message,logref:"unavailable",code:"invalid_credential_error"}]}}}return new Response(JSON.stringify(s),{status:r})}async __handleVirtualAuthRecoverPost(e){const t=await e.clone().json();if("email"===t.type)return await this.api.sendPasswordResetEmail(t.detail),new Response(JSON.stringify({_links:{self:{href:e.url}},email:t.email}));throw new Error(`Unknown payload type ${t.type}`)}async __handleRequest(e){const t=e.url,r=e.method;try{if("foxy://customer-api/session"===t){if("DELETE"===r)return this.__handleVirtualAuthSessionDelete();if("POST"===r)return this.__handleVirtualAuthSessionPost(e)}if("foxy://customer-api/recover"===t&&"POST"===r)return this.__handleVirtualAuthRecoverPost(e);const n=await this.api.fetch(e);return 401===n.status&&(this.api.storage.clear(),this.dispatchEvent(new g.SignOutEvent("signout")),this.requestUpdate()),n}catch(e){return new Response(null,{status:500})}}}g.SignOutEvent=class extends CustomEvent{},g.SignInEvent=class extends CustomEvent{};export{g as C};