@foxy.io/elements 1.27.0-beta.4 → 1.27.0-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (400) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +1 -1
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-admin-subscription-card.js +1 -1
  5. package/dist/cdn/foxy-api-browser.js +1 -1
  6. package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
  7. package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
  8. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  9. package/dist/cdn/foxy-attribute-card.js +1 -1
  10. package/dist/cdn/foxy-attribute-form.js +1 -1
  11. package/dist/cdn/foxy-billing-address-card.js +1 -1
  12. package/dist/cdn/foxy-cancellation-form.js +1 -1
  13. package/dist/cdn/foxy-cart-card.js +1 -1
  14. package/dist/cdn/foxy-cart-form.js +1 -1
  15. package/dist/cdn/foxy-client-card.js +1 -1
  16. package/dist/cdn/foxy-client-form.js +1 -1
  17. package/dist/cdn/foxy-collection-page.js +1 -1
  18. package/dist/cdn/foxy-collection-pages.js +1 -1
  19. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  20. package/dist/cdn/foxy-coupon-card.js +1 -1
  21. package/dist/cdn/foxy-coupon-code-card.js +1 -0
  22. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  23. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  24. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  25. package/dist/cdn/foxy-coupon-form.js +1 -1
  26. package/dist/cdn/foxy-custom-field-card.js +1 -1
  27. package/dist/cdn/foxy-custom-field-form.js +1 -1
  28. package/dist/cdn/foxy-customer-api.js +1 -1
  29. package/dist/cdn/foxy-customer-card.js +1 -1
  30. package/dist/cdn/foxy-customer-form.js +1 -1
  31. package/dist/cdn/foxy-customer-portal-settings-form.js +1 -0
  32. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  33. package/dist/cdn/foxy-customer-portal.js +3 -3
  34. package/dist/cdn/foxy-customer.js +4 -4
  35. package/dist/cdn/foxy-customers-table.js +1 -1
  36. package/dist/cdn/foxy-discount-builder.js +1 -1
  37. package/dist/cdn/foxy-discount-card.js +1 -1
  38. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  39. package/dist/cdn/foxy-donation.js +1 -1
  40. package/dist/cdn/foxy-downloadable-card.js +1 -1
  41. package/dist/cdn/foxy-downloadable-form.js +7 -7
  42. package/dist/cdn/foxy-email-template-card.js +1 -1
  43. package/dist/cdn/foxy-email-template-form.js +1 -1
  44. package/dist/cdn/foxy-error-entry-card.js +1 -1
  45. package/dist/cdn/foxy-filter-attribute-card.js +1 -1
  46. package/dist/cdn/foxy-filter-attribute-form.js +1 -1
  47. package/dist/cdn/foxy-form-dialog.js +1 -1
  48. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  49. package/dist/cdn/foxy-gift-card-card.js +1 -1
  50. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  51. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  52. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  53. package/dist/cdn/foxy-gift-card-form.js +1 -1
  54. package/dist/cdn/foxy-i18n-editor.js +2 -2
  55. package/dist/cdn/foxy-i18n.js +1 -1
  56. package/dist/cdn/foxy-integration-card.js +1 -1
  57. package/dist/cdn/foxy-integration-form.js +1 -1
  58. package/dist/cdn/foxy-item-card.js +1 -1
  59. package/dist/cdn/foxy-item-category-card.js +1 -1
  60. package/dist/cdn/foxy-item-category-form.js +1 -1
  61. package/dist/cdn/foxy-item-form.js +3 -3
  62. package/dist/cdn/foxy-item-option-card.js +1 -1
  63. package/dist/cdn/foxy-item-option-form.js +1 -1
  64. package/dist/cdn/foxy-items-form.js +1 -1
  65. package/dist/cdn/foxy-native-integration-card.js +1 -1
  66. package/dist/cdn/foxy-native-integration-form.js +1 -1
  67. package/dist/cdn/foxy-nucleon-element.js +1 -1
  68. package/dist/cdn/foxy-pagination.js +1 -1
  69. package/dist/cdn/foxy-passkey-card.js +1 -1
  70. package/dist/cdn/foxy-passkey-form.js +1 -1
  71. package/dist/cdn/foxy-payment-card.js +1 -1
  72. package/dist/cdn/foxy-payment-method-card.js +1 -1
  73. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  74. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  75. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  76. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  77. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  78. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  79. package/dist/cdn/foxy-payments-api.js +1 -1
  80. package/dist/cdn/foxy-query-builder.js +1 -1
  81. package/dist/cdn/foxy-report-form.js +1 -1
  82. package/dist/cdn/foxy-reports-table.js +1 -1
  83. package/dist/cdn/foxy-shipment-card.js +1 -1
  84. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  85. package/dist/cdn/foxy-sign-in-form.js +1 -1
  86. package/dist/cdn/foxy-spinner.js +2 -2
  87. package/dist/cdn/foxy-store-card.js +1 -1
  88. package/dist/cdn/foxy-store-form.js +1 -1
  89. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  90. package/dist/cdn/foxy-subscription-card.js +1 -1
  91. package/dist/cdn/foxy-subscription-form.js +1 -1
  92. package/dist/cdn/foxy-subscription-settings-form.js +1 -1
  93. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  94. package/dist/cdn/foxy-table.js +1 -1
  95. package/dist/cdn/foxy-tax-card.js +1 -1
  96. package/dist/cdn/foxy-tax-form.js +1 -1
  97. package/dist/cdn/foxy-template-config-form.js +1 -1
  98. package/dist/cdn/foxy-template-form.js +1 -1
  99. package/dist/cdn/foxy-template-set-card.js +1 -1
  100. package/dist/cdn/foxy-template-set-form.js +1 -1
  101. package/dist/cdn/foxy-transaction-card.js +1 -1
  102. package/dist/cdn/foxy-transaction.js +1 -1
  103. package/dist/cdn/foxy-transactions-table.js +1 -1
  104. package/dist/cdn/foxy-user-card.js +1 -1
  105. package/dist/cdn/foxy-user-form.js +1 -1
  106. package/dist/cdn/foxy-users-table.js +1 -1
  107. package/dist/cdn/foxy-webhook-card.js +1 -1
  108. package/dist/cdn/foxy-webhook-form.js +1 -1
  109. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  110. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  111. package/dist/cdn/{shared-fd0a4026.js → shared-039de1fd.js} +1 -1
  112. package/dist/cdn/{shared-f1e743df.js → shared-03ccfd62.js} +1 -1
  113. package/dist/cdn/{shared-f0269599.js → shared-065dbdf6.js} +1 -1
  114. package/dist/cdn/shared-07d5e225.js +1 -0
  115. package/dist/cdn/{shared-5ba87b6d.js → shared-0e5ea9cf.js} +1 -1
  116. package/dist/cdn/{shared-97d63da6.js → shared-0e8dceb8.js} +1 -1
  117. package/dist/cdn/shared-11014aad.js +15 -0
  118. package/dist/cdn/{shared-9de9f905.js → shared-1a9e80fa.js} +1 -1
  119. package/dist/cdn/{shared-8b80db13.js → shared-1d257548.js} +1 -1
  120. package/dist/cdn/{shared-7ea4cb27.js → shared-1d6beb48.js} +1 -1
  121. package/dist/cdn/{shared-655e7c5f.js → shared-205721a3.js} +1 -1
  122. package/dist/cdn/shared-208e37af.js +88 -0
  123. package/dist/cdn/shared-250e652f.js +1 -0
  124. package/dist/cdn/shared-29f2468c.js +6 -0
  125. package/dist/cdn/{shared-f94fa366.js → shared-2c70f0b6.js} +1 -1
  126. package/dist/cdn/shared-400240f8.js +1 -0
  127. package/dist/cdn/{shared-f588b5c2.js → shared-4329ffa1.js} +1 -1
  128. package/dist/cdn/{shared-cfed658c.js → shared-4877ed05.js} +2 -2
  129. package/dist/cdn/{shared-bf695fe7.js → shared-48b76c74.js} +1 -1
  130. package/dist/cdn/{shared-331a223c.js → shared-56addb06.js} +2 -2
  131. package/dist/cdn/{shared-2376abfc.js → shared-589e5d06.js} +15 -15
  132. package/dist/cdn/{shared-a3c5a30c.js → shared-5c542149.js} +1 -1
  133. package/dist/cdn/{shared-5df32007.js → shared-5dbb9630.js} +1 -1
  134. package/dist/cdn/{shared-44d207fb.js → shared-5e35c5a5.js} +1 -1
  135. package/dist/cdn/{shared-405a290e.js → shared-5f09205d.js} +1 -1
  136. package/dist/cdn/{shared-2920b595.js → shared-61f67b16.js} +1 -1
  137. package/dist/cdn/shared-683145e5.js +1 -0
  138. package/dist/cdn/{shared-9f570db0.js → shared-6af480b8.js} +1 -1
  139. package/dist/cdn/shared-6c4affb9.js +1 -0
  140. package/dist/cdn/{shared-4482e7b9.js → shared-6e977271.js} +1 -1
  141. package/dist/cdn/{shared-6ed07856.js → shared-724e9a20.js} +1 -1
  142. package/dist/cdn/shared-77fd8dae.js +1 -0
  143. package/dist/cdn/{shared-e40937c5.js → shared-7e201abd.js} +1 -1
  144. package/dist/cdn/{shared-030f561a.js → shared-80eb1fee.js} +1 -1
  145. package/dist/cdn/{shared-db98729a.js → shared-845f8bf1.js} +1 -1
  146. package/dist/cdn/shared-850e2ae1.js +10 -0
  147. package/dist/cdn/{shared-0cbb19f4.js → shared-85979316.js} +1 -1
  148. package/dist/cdn/shared-8a04bea3.js +1 -0
  149. package/dist/cdn/{shared-597737ce.js → shared-8cd0f36d.js} +1 -1
  150. package/dist/cdn/{shared-30cbf0a6.js → shared-8def6325.js} +1 -1
  151. package/dist/cdn/{shared-37e1a834.js → shared-931db653.js} +1 -1
  152. package/dist/cdn/shared-93812e51.js +1 -0
  153. package/dist/cdn/{shared-8ab2ba91.js → shared-9a5da74d.js} +21 -27
  154. package/dist/cdn/{shared-44bb85d8.js → shared-a0cbfb2f.js} +1 -1
  155. package/dist/cdn/{shared-65283d36.js → shared-a73e7be4.js} +1 -1
  156. package/dist/cdn/{shared-12390d6f.js → shared-abf72e2f.js} +1 -1
  157. package/dist/cdn/{shared-a9f76cae.js → shared-b30f9b10.js} +1 -1
  158. package/dist/cdn/{shared-293771ba.js → shared-b81aa01c.js} +1 -1
  159. package/dist/cdn/shared-bb08b5ce.js +32 -0
  160. package/dist/cdn/{shared-83fc5dca.js → shared-bba8ae80.js} +1 -1
  161. package/dist/cdn/{shared-cd8c3429.js → shared-bc95d87e.js} +1 -1
  162. package/dist/cdn/{shared-2062c274.js → shared-befe135a.js} +1 -1
  163. package/dist/cdn/shared-bfa30d93.js +1 -0
  164. package/dist/cdn/shared-bfeff3bb.js +1 -0
  165. package/dist/cdn/shared-c5f57aa8.js +1 -0
  166. package/dist/cdn/{shared-150f5214.js → shared-ca15d510.js} +1 -1
  167. package/dist/cdn/{shared-ae459232.js → shared-cab2aa63.js} +4 -4
  168. package/dist/cdn/shared-cc723108.js +12 -0
  169. package/dist/cdn/{shared-882e7191.js → shared-d04c2e0c.js} +1 -1
  170. package/dist/cdn/{shared-99f0fee6.js → shared-d4322854.js} +1 -1
  171. package/dist/cdn/{shared-e4543605.js → shared-da7a0bfb.js} +9 -9
  172. package/dist/cdn/{shared-250a399a.js → shared-dccfe5e7.js} +1 -1
  173. package/dist/cdn/shared-e07b24ca.js +1 -0
  174. package/dist/cdn/shared-e35297c9.js +1 -0
  175. package/dist/cdn/{shared-d244dd07.js → shared-e48fbf50.js} +1 -1
  176. package/dist/cdn/shared-e84be1c2.js +64 -0
  177. package/dist/cdn/{shared-a19e1dff.js → shared-e966f1ef.js} +1 -1
  178. package/dist/cdn/{shared-26f4b6bf.js → shared-f03dacf5.js} +1 -1
  179. package/dist/cdn/{shared-7039733e.js → shared-f2a8fb36.js} +1 -1
  180. package/dist/cdn/{shared-a5ecd56e.js → shared-f7a5b12a.js} +1 -1
  181. package/dist/cdn/{shared-febda61c.js → shared-fb8c09b8.js} +1 -1
  182. package/dist/cdn/shared-fd041b18.js +1 -0
  183. package/dist/cdn/{shared-d9f65ee0.js → shared-fda63db8.js} +1 -1
  184. package/dist/cdn/{shared-d7892f27.js → shared-fe7b3ed2.js} +1 -1
  185. package/dist/cdn/translations/coupon-code-card/en.json +11 -0
  186. package/dist/cdn/translations/coupon-form/en.json +522 -297
  187. package/dist/cdn/translations/customer-portal-settings-form/en.json +300 -0
  188. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.d.ts +10 -0
  189. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js +99 -2
  190. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControl.js.map +1 -1
  191. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.d.ts +11 -0
  192. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.js +57 -0
  193. package/dist/elements/internal/InternalAsyncListControl/InternalAsyncListControlFilterOverlay.js.map +1 -0
  194. package/dist/elements/internal/InternalAsyncListControl/index.d.ts +1 -0
  195. package/dist/elements/internal/InternalAsyncListControl/index.js +3 -0
  196. package/dist/elements/internal/InternalAsyncListControl/index.js.map +1 -1
  197. package/dist/elements/internal/InternalAsyncListControl/types.d.ts +8 -0
  198. package/dist/elements/internal/InternalAsyncListControl/types.js +2 -0
  199. package/dist/elements/internal/InternalAsyncListControl/types.js.map +1 -0
  200. package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.d.ts +23 -0
  201. package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.js +224 -0
  202. package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.js.map +1 -0
  203. package/dist/elements/internal/InternalAsyncResourceLinkListControl/index.d.ts +8 -0
  204. package/dist/elements/internal/InternalAsyncResourceLinkListControl/index.js +10 -0
  205. package/dist/elements/internal/InternalAsyncResourceLinkListControl/index.js.map +1 -0
  206. package/dist/elements/internal/InternalEditableListControl/InternalEditableListControl.d.ts +6 -2
  207. package/dist/elements/internal/InternalEditableListControl/InternalEditableListControl.js +165 -27
  208. package/dist/elements/internal/InternalEditableListControl/InternalEditableListControl.js.map +1 -1
  209. package/dist/elements/internal/InternalEditableListControl/types.d.ts +5 -0
  210. package/dist/elements/internal/InternalEditableListControl/types.js.map +1 -1
  211. package/dist/elements/internal/InternalForm/InternalForm.d.ts +10 -0
  212. package/dist/elements/internal/InternalForm/InternalForm.js +44 -0
  213. package/dist/elements/internal/InternalForm/InternalForm.js.map +1 -1
  214. package/dist/elements/internal/InternalForm/index.d.ts +2 -0
  215. package/dist/elements/internal/InternalForm/index.js +2 -0
  216. package/dist/elements/internal/InternalForm/index.js.map +1 -1
  217. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.d.ts +1 -0
  218. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.js +4 -1
  219. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.js.map +1 -1
  220. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.d.ts +1 -0
  221. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js +3 -0
  222. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js.map +1 -1
  223. package/dist/elements/internal/InternalPasswordControl/InternalPasswordControl.d.ts +4 -0
  224. package/dist/elements/internal/InternalPasswordControl/InternalPasswordControl.js +4 -1
  225. package/dist/elements/internal/InternalPasswordControl/InternalPasswordControl.js.map +1 -1
  226. package/dist/elements/internal/InternalPasswordControl/generateRandomPassword.d.ts +4 -1
  227. package/dist/elements/internal/InternalPasswordControl/generateRandomPassword.js +5 -3
  228. package/dist/elements/internal/InternalPasswordControl/generateRandomPassword.js.map +1 -1
  229. package/dist/elements/internal/InternalQueryBuilderControl/InternalQueryBuilderControl.d.ts +10 -0
  230. package/dist/elements/internal/InternalQueryBuilderControl/InternalQueryBuilderControl.js +51 -0
  231. package/dist/elements/internal/InternalQueryBuilderControl/InternalQueryBuilderControl.js.map +1 -0
  232. package/dist/elements/internal/InternalQueryBuilderControl/index.d.ts +4 -0
  233. package/dist/elements/internal/InternalQueryBuilderControl/index.js +6 -0
  234. package/dist/elements/internal/InternalQueryBuilderControl/index.js.map +1 -0
  235. package/dist/elements/public/CartForm/CartForm.js +81 -81
  236. package/dist/elements/public/CartForm/CartForm.js.map +1 -1
  237. package/dist/elements/public/CollectionPage/CollectionPage.js +2 -0
  238. package/dist/elements/public/CollectionPage/CollectionPage.js.map +1 -1
  239. package/dist/elements/public/CollectionPage/types.d.ts +1 -0
  240. package/dist/elements/public/CollectionPage/types.js.map +1 -1
  241. package/dist/elements/public/CouponCodeCard/CouponCodeCard.d.ts +16 -0
  242. package/dist/elements/public/CouponCodeCard/CouponCodeCard.js +41 -0
  243. package/dist/elements/public/CouponCodeCard/CouponCodeCard.js.map +1 -0
  244. package/dist/elements/public/CouponCodeCard/index.d.ts +4 -0
  245. package/dist/elements/public/CouponCodeCard/index.js +6 -0
  246. package/dist/elements/public/CouponCodeCard/index.js.map +1 -0
  247. package/dist/elements/public/CouponCodeCard/types.d.ts +3 -0
  248. package/dist/elements/public/CouponCodeCard/types.js +2 -0
  249. package/dist/elements/public/CouponCodeCard/types.js.map +1 -0
  250. package/dist/elements/public/CouponForm/CouponForm.d.ts +65 -41
  251. package/dist/elements/public/CouponForm/CouponForm.js +320 -1035
  252. package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
  253. package/dist/elements/public/CouponForm/index.d.ts +15 -16
  254. package/dist/elements/public/CouponForm/index.js +15 -16
  255. package/dist/elements/public/CouponForm/index.js.map +1 -1
  256. package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/InternalCouponFormBulkAddControl.d.ts +9 -0
  257. package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/InternalCouponFormBulkAddControl.js +49 -0
  258. package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/InternalCouponFormBulkAddControl.js.map +1 -0
  259. package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/index.d.ts +6 -0
  260. package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/index.js +8 -0
  261. package/dist/elements/public/CouponForm/internal/InternalCouponFormBulkAddControl/index.js.map +1 -0
  262. package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/InternalCouponFormRulesControl.d.ts +7 -0
  263. package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/InternalCouponFormRulesControl.js +141 -0
  264. package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/InternalCouponFormRulesControl.js.map +1 -0
  265. package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/index.d.ts +6 -0
  266. package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/index.js +8 -0
  267. package/dist/elements/public/CouponForm/internal/InternalCouponFormRulesControl/index.js.map +1 -0
  268. package/dist/elements/public/CouponForm/types.d.ts +10 -1
  269. package/dist/elements/public/CouponForm/types.js.map +1 -1
  270. package/dist/elements/public/CustomerPortalSettings/CustomerPortalSettings.d.ts +1 -0
  271. package/dist/elements/public/CustomerPortalSettings/CustomerPortalSettings.js +1 -0
  272. package/dist/elements/public/CustomerPortalSettings/CustomerPortalSettings.js.map +1 -1
  273. package/dist/elements/public/CustomerPortalSettingsForm/CustomerPortalSettingsForm.d.ts +36 -0
  274. package/dist/elements/public/CustomerPortalSettingsForm/CustomerPortalSettingsForm.js +291 -0
  275. package/dist/elements/public/CustomerPortalSettingsForm/CustomerPortalSettingsForm.js.map +1 -0
  276. package/dist/elements/public/CustomerPortalSettingsForm/index.d.ts +12 -0
  277. package/dist/elements/public/CustomerPortalSettingsForm/index.js +14 -0
  278. package/dist/elements/public/CustomerPortalSettingsForm/index.js.map +1 -0
  279. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard.d.ts +10 -0
  280. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard.js +40 -0
  281. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard.js.map +1 -0
  282. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/index.d.ts +4 -0
  283. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/index.js +6 -0
  284. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/index.js.map +1 -0
  285. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/types.d.ts +10 -0
  286. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/types.js +2 -0
  287. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleCard/types.js.map +1 -0
  288. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm.d.ts +17 -0
  289. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm.js +62 -0
  290. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm.js.map +1 -0
  291. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/index.d.ts +5 -0
  292. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/index.js +7 -0
  293. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/index.js.map +1 -0
  294. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/types.d.ts +10 -0
  295. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/types.js +2 -0
  296. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowFrequencyModificationRuleForm/types.js.map +1 -0
  297. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard.d.ts +10 -0
  298. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard.js +49 -0
  299. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard.js.map +1 -0
  300. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/index.d.ts +4 -0
  301. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/index.js +6 -0
  302. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/index.js.map +1 -0
  303. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/types.d.ts +12 -0
  304. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/types.js +2 -0
  305. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleCard/types.js.map +1 -0
  306. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm.d.ts +29 -0
  307. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm.js +165 -0
  308. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm.js.map +1 -0
  309. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/index.d.ts +8 -0
  310. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/index.js +10 -0
  311. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/index.js.map +1 -0
  312. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/types.d.ts +13 -0
  313. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/types.js +2 -0
  314. package/dist/elements/public/CustomerPortalSettingsForm/internal/InternalCustomerPortalSettingsFormSubscriptionsAllowNextDateModificationRuleForm/types.js.map +1 -0
  315. package/dist/elements/public/CustomerPortalSettingsForm/isOrigin.d.ts +1 -0
  316. package/dist/elements/public/CustomerPortalSettingsForm/isOrigin.js +9 -0
  317. package/dist/elements/public/CustomerPortalSettingsForm/isOrigin.js.map +1 -0
  318. package/dist/elements/public/CustomerPortalSettingsForm/toOrigin.d.ts +1 -0
  319. package/dist/elements/public/CustomerPortalSettingsForm/toOrigin.js +9 -0
  320. package/dist/elements/public/CustomerPortalSettingsForm/toOrigin.js.map +1 -0
  321. package/dist/elements/public/CustomerPortalSettingsForm/types.d.ts +3 -0
  322. package/dist/elements/public/CustomerPortalSettingsForm/types.js +2 -0
  323. package/dist/elements/public/CustomerPortalSettingsForm/types.js.map +1 -0
  324. package/dist/elements/public/DownloadableForm/DownloadableForm.js +9 -9
  325. package/dist/elements/public/DownloadableForm/DownloadableForm.js.map +1 -1
  326. package/dist/elements/public/I18n/format/discount.js +9 -2
  327. package/dist/elements/public/I18n/format/discount.js.map +1 -1
  328. package/dist/elements/public/I18n/format/ordinal.js +6 -2
  329. package/dist/elements/public/I18n/format/ordinal.js.map +1 -1
  330. package/dist/elements/public/IntegrationForm/IntegrationForm.js +8 -6
  331. package/dist/elements/public/IntegrationForm/IntegrationForm.js.map +1 -1
  332. package/dist/elements/public/ItemCategoryForm/ItemCategoryForm.js +27 -27
  333. package/dist/elements/public/ItemCategoryForm/ItemCategoryForm.js.map +1 -1
  334. package/dist/elements/public/NucleonElement/NucleonElement.d.ts +10 -0
  335. package/dist/elements/public/NucleonElement/NucleonElement.js +33 -9
  336. package/dist/elements/public/NucleonElement/NucleonElement.js.map +1 -1
  337. package/dist/elements/public/NucleonElement/internalServer.d.ts +2 -0
  338. package/dist/elements/public/NucleonElement/internalServer.js +95 -0
  339. package/dist/elements/public/NucleonElement/internalServer.js.map +1 -0
  340. package/dist/elements/public/QueryBuilder/QueryBuilder.d.ts +4 -0
  341. package/dist/elements/public/QueryBuilder/QueryBuilder.js +10 -2
  342. package/dist/elements/public/QueryBuilder/QueryBuilder.js.map +1 -1
  343. package/dist/elements/public/QueryBuilder/components/Group.d.ts +3 -1
  344. package/dist/elements/public/QueryBuilder/components/Group.js +8 -1
  345. package/dist/elements/public/QueryBuilder/components/Group.js.map +1 -1
  346. package/dist/elements/public/QueryBuilder/components/OperatorToggle.d.ts +2 -1
  347. package/dist/elements/public/QueryBuilder/components/OperatorToggle.js +5 -4
  348. package/dist/elements/public/QueryBuilder/components/OperatorToggle.js.map +1 -1
  349. package/dist/elements/public/QueryBuilder/components/Rule.d.ts +3 -1
  350. package/dist/elements/public/QueryBuilder/components/Rule.js +2 -1
  351. package/dist/elements/public/QueryBuilder/components/Rule.js.map +1 -1
  352. package/dist/elements/public/StoreForm/StoreForm.js +7 -8
  353. package/dist/elements/public/StoreForm/StoreForm.js.map +1 -1
  354. package/dist/elements/public/TemplateSetForm/TemplateSetForm.js +28 -28
  355. package/dist/elements/public/TemplateSetForm/TemplateSetForm.js.map +1 -1
  356. package/dist/elements/public/index.d.ts +2 -0
  357. package/dist/elements/public/index.defined.d.ts +2 -0
  358. package/dist/elements/public/index.defined.js +2 -0
  359. package/dist/elements/public/index.defined.js.map +1 -1
  360. package/dist/elements/public/index.js +2 -0
  361. package/dist/elements/public/index.js.map +1 -1
  362. package/dist/events/request.d.ts +1 -0
  363. package/dist/events/request.js +1 -0
  364. package/dist/events/request.js.map +1 -1
  365. package/dist/mixins/inferrable.js +8 -3
  366. package/dist/mixins/inferrable.js.map +1 -1
  367. package/dist/mixins/themeable.js +16 -0
  368. package/dist/mixins/themeable.js.map +1 -1
  369. package/package.json +1 -1
  370. package/dist/cdn/shared-0037b9e6.js +0 -1
  371. package/dist/cdn/shared-07e9d1fb.js +0 -1
  372. package/dist/cdn/shared-1024766f.js +0 -1
  373. package/dist/cdn/shared-12ad8924.js +0 -64
  374. package/dist/cdn/shared-1522d76f.js +0 -15
  375. package/dist/cdn/shared-33d8cbfb.js +0 -1
  376. package/dist/cdn/shared-3d251e6f.js +0 -1
  377. package/dist/cdn/shared-3f19b914.js +0 -20
  378. package/dist/cdn/shared-510a9e1b.js +0 -1
  379. package/dist/cdn/shared-5c0e3fee.js +0 -1
  380. package/dist/cdn/shared-6d41c9a9.js +0 -1
  381. package/dist/cdn/shared-6e9adc43.js +0 -1
  382. package/dist/cdn/shared-966feb65.js +0 -1
  383. package/dist/cdn/shared-9adc47da.js +0 -113
  384. package/dist/cdn/shared-a0435ec6.js +0 -1
  385. package/dist/cdn/shared-c0c7225c.js +0 -1
  386. package/dist/cdn/shared-c6707264.js +0 -1
  387. package/dist/cdn/shared-d0374d0c.js +0 -1
  388. package/dist/cdn/shared-db306674.js +0 -1
  389. package/dist/cdn/shared-eb116b3e.js +0 -1
  390. package/dist/cdn/shared-f5d4dda0.js +0 -1
  391. package/dist/cdn/shared-ff18b2d1.js +0 -1
  392. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.d.ts +0 -20
  393. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.js +0 -99
  394. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.js.map +0 -1
  395. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.d.ts +0 -18
  396. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.js +0 -50
  397. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.js.map +0 -1
  398. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.d.ts +0 -18
  399. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.js +0 -53
  400. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"InternalIntegerControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalIntegerControl/InternalIntegerControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,OAAO,sBAAuB,SAAQ,uBAAuB;IAAnE;;QAWE,WAAM,GAAkB,IAAI,CAAC;QAE7B,WAAM,GAAkB,IAAI,CAAC;QAE7B,QAAG,GAAkB,IAAI,CAAC;QAE1B,QAAG,GAAkB,IAAI,CAAC;IA4B5B,CAAC;IA5CC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;YACV,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACrB,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SACtB,CAAC;IACJ,CAAC;IAUD,aAAa;;QACX,OAAO,IAAI,CAAA;;wBAES,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;sBAC/B,IAAI,CAAC,WAAW;sBAChB,IAAI,CAAC,UAAU;gBACrB,IAAI,CAAC,KAAK;;cAEZ,SAAS,OAAC,IAAI,CAAC,GAAG,mCAAI,SAAS,CAAC;cAChC,SAAS,OAAC,IAAI,CAAC,GAAG,mCAAI,SAAS,CAAC;oBAC1B,IAAI,CAAC,QAAQ;oBACb,IAAI,CAAC,QAAQ;yBACR,IAAI,CAAC,cAAc;iBAC3B,IAAI,CAAC,MAAM;;mBAET,CAAC,GAAkB,EAAE,EAAE,WAAC,OAAA,GAAG,CAAC,GAAG,KAAK,OAAO,WAAI,IAAI,CAAC,OAAO,0CAAE,MAAM,GAAE,CAAA,EAAA;kBACtE,CAAC,GAAgB,EAAE,EAAE;YAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,aAAoC,CAAC;YACvD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;;UAEC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA,sBAAsB,IAAI,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,EAAE;UAChE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA,+CAA+C,IAAI,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,EAAE;;KAE9F,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { IntegerFieldElement } from '@vaadin/vaadin-text-field/vaadin-integer-field';\nimport type { PropertyDeclarations, TemplateResult } from 'lit-element';\n\nimport { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-element';\n\n/**\n * Internal control displaying a basic integer box.\n *\n * @since 1.17.0\n * @element foxy-internal-integer-control\n */\nexport class InternalIntegerControl extends InternalEditableControl {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n prefix: {},\n suffix: {},\n min: { type: Number },\n max: { type: Number },\n };\n }\n\n prefix: string | null = null;\n\n suffix: string | null = null;\n\n min: number | null = null;\n\n max: number | null = null;\n\n renderControl(): TemplateResult {\n return html`\n <vaadin-integer-field\n error-message=${ifDefined(this._errorMessage)}\n placeholder=${this.placeholder}\n helper-text=${this.helperText}\n label=${this.label}\n class=\"w-full\"\n min=${ifDefined(this.min ?? undefined)}\n max=${ifDefined(this.max ?? undefined)}\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n .checkValidity=${this._checkValidity}\n .value=${this._value}\n clear-button-visible\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.nucleon?.submit()}\n @change=${(evt: CustomEvent) => {\n const field = evt.currentTarget as IntegerFieldElement;\n this._value = parseInt(field.value);\n }}\n >\n ${this.prefix ? html`<div slot=\"prefix\">${this.prefix}</div>` : ''}\n ${this.suffix ? html`<div class=\"pr-s font-medium\" slot=\"suffix\">${this.suffix}</div>` : ''}\n </vaadin-integer-field>\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"InternalIntegerControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalIntegerControl/InternalIntegerControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,OAAO,sBAAuB,SAAQ,uBAAuB;IAAnE;;QAYE,iBAAY,GAAG,KAAK,CAAC;QAErB,WAAM,GAAkB,IAAI,CAAC;QAE7B,WAAM,GAAkB,IAAI,CAAC;QAE7B,QAAG,GAAkB,IAAI,CAAC;QAE1B,QAAG,GAAkB,IAAI,CAAC;IA6B5B,CAAC;IAhDC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,YAAY,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE;YAC3D,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;YACV,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACrB,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SACtB,CAAC;IACJ,CAAC;IAYD,aAAa;;QACX,OAAO,IAAI,CAAA;;wBAES,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;sBAC/B,IAAI,CAAC,WAAW;sBAChB,IAAI,CAAC,UAAU;gBACrB,IAAI,CAAC,KAAK;;cAEZ,SAAS,OAAC,IAAI,CAAC,GAAG,mCAAI,SAAS,CAAC;cAChC,SAAS,OAAC,IAAI,CAAC,GAAG,mCAAI,SAAS,CAAC;wBACtB,IAAI,CAAC,YAAY;oBACrB,IAAI,CAAC,QAAQ;oBACb,IAAI,CAAC,QAAQ;yBACR,IAAI,CAAC,cAAc;iBAC3B,IAAI,CAAC,MAAM;;mBAET,CAAC,GAAkB,EAAE,EAAE,WAAC,OAAA,GAAG,CAAC,GAAG,KAAK,OAAO,WAAI,IAAI,CAAC,OAAO,0CAAE,MAAM,GAAE,CAAA,EAAA;kBACtE,CAAC,GAAgB,EAAE,EAAE;YAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,aAAoC,CAAC;YACvD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;;UAEC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA,sBAAsB,IAAI,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,EAAE;UAChE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA,+CAA+C,IAAI,CAAC,MAAM,QAAQ,CAAC,CAAC,CAAC,EAAE;;KAE9F,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { IntegerFieldElement } from '@vaadin/vaadin-text-field/vaadin-integer-field';\nimport type { PropertyDeclarations, TemplateResult } from 'lit-element';\n\nimport { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-element';\n\n/**\n * Internal control displaying a basic integer box.\n *\n * @since 1.17.0\n * @element foxy-internal-integer-control\n */\nexport class InternalIntegerControl extends InternalEditableControl {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n showControls: { type: Boolean, attribute: 'show-controls' },\n prefix: {},\n suffix: {},\n min: { type: Number },\n max: { type: Number },\n };\n }\n\n showControls = false;\n\n prefix: string | null = null;\n\n suffix: string | null = null;\n\n min: number | null = null;\n\n max: number | null = null;\n\n renderControl(): TemplateResult {\n return html`\n <vaadin-integer-field\n error-message=${ifDefined(this._errorMessage)}\n placeholder=${this.placeholder}\n helper-text=${this.helperText}\n label=${this.label}\n class=\"w-full\"\n min=${ifDefined(this.min ?? undefined)}\n max=${ifDefined(this.max ?? undefined)}\n ?has-controls=${this.showControls}\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n .checkValidity=${this._checkValidity}\n .value=${this._value}\n clear-button-visible\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.nucleon?.submit()}\n @change=${(evt: CustomEvent) => {\n const field = evt.currentTarget as IntegerFieldElement;\n this._value = parseInt(field.value);\n }}\n >\n ${this.prefix ? html`<div slot=\"prefix\">${this.prefix}</div>` : ''}\n ${this.suffix ? html`<div class=\"pr-s font-medium\" slot=\"suffix\">${this.suffix}</div>` : ''}\n </vaadin-integer-field>\n `;\n }\n}\n"]}
@@ -8,6 +8,10 @@ import { InternalEditableControl } from '../InternalEditableControl/InternalEdit
8
8
  */
9
9
  export declare class InternalPasswordControl extends InternalEditableControl {
10
10
  static get properties(): PropertyDeclarations;
11
+ generatorOptions: null | {
12
+ length?: number;
13
+ charset?: string;
14
+ };
11
15
  /** If true, renders the password generator button. */
12
16
  showGenerator: boolean;
13
17
  renderControl(): TemplateResult;
@@ -12,12 +12,14 @@ import { classMap } from "../../../utils/class-map.js";
12
12
  export class InternalPasswordControl extends InternalEditableControl {
13
13
  constructor() {
14
14
  super(...arguments);
15
+ this.generatorOptions = null;
15
16
  /** If true, renders the password generator button. */
16
17
  this.showGenerator = false;
17
18
  }
18
19
  static get properties() {
19
20
  return {
20
21
  ...super.properties,
22
+ generatorOptions: { type: Object, attribute: 'generator-options' },
21
23
  showGenerator: { type: Boolean, attribute: 'show-generator' },
22
24
  };
23
25
  }
@@ -61,7 +63,8 @@ export class InternalPasswordControl extends InternalEditableControl {
61
63
  })}
62
64
  slot="suffix"
63
65
  @click=${() => {
64
- this._value = generateRandomPassword();
66
+ var _a;
67
+ this._value = generateRandomPassword((_a = this.generatorOptions) !== null && _a !== void 0 ? _a : void 0);
65
68
  const field = this.renderRoot.querySelector('vaadin-password-field');
66
69
  // @ts-expect-error: this is a private method but it's ok since the version is fixed
67
70
  field === null || field === void 0 ? void 0 : field._setPasswordVisible(true);
@@ -1 +1 @@
1
- {"version":3,"file":"InternalPasswordControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/InternalPasswordControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,sBAAsB,EAAE,oCAAiC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AAEpD;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,uBAAuB;IAApE;;QAQE,sDAAsD;QACtD,kBAAa,GAAG,KAAK,CAAC;IAsDxB,CAAC;IA9DC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE;SAC9D,CAAC;IACJ,CAAC;IAKD,aAAa;QACX,OAAO,IAAI,CAAA;;wBAES,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;sBAC/B,IAAI,CAAC,UAAU;sBACf,IAAI,CAAC,WAAW;gBACtB,IAAI,CAAC,KAAK;;oBAEN,IAAI,CAAC,QAAQ;oBACb,IAAI,CAAC,QAAQ;yBACR,IAAI,CAAC,cAAc;iBAC3B,IAAI,CAAC,MAAM;mBACT,CAAC,GAAkB,EAAE,EAAE,WAAC,OAAA,GAAG,CAAC,GAAG,KAAK,OAAO,WAAI,IAAI,CAAC,OAAO,0CAAE,MAAM,GAAE,CAAA,EAAA;iBACvE,CAAC,GAAgB,EAAE,EAAE;YAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,aAAqC,CAAC;YACvD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,CAAC;;UAEC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE;;KAEvD,CAAC;IACJ,CAAC;IAED,IAAc,MAAM;;QAClB,aAAQ,KAAK,CAAC,MAA6B,mCAAI,EAAE,CAAC;IACpD,CAAC;IAED,IAAc,MAAM,CAAC,QAAgB;QACnC,KAAK,CAAC,MAAM,GAAG,QAA+B,CAAC;IACjD,CAAC;IAEO,iBAAiB;QACvB,OAAO,IAAI,CAAA;;;gBAGC,QAAQ,CAAC;YACf,2EAA2E,EAAE,IAAI;YACjF,yCAAyC,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC3E,kBAAkB,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ;SACnD,CAAC;;iBAEO,GAAG,EAAE;YACZ,IAAI,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;YACrE,oFAAoF;YACpF,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,mBAAmB,CAAC,IAAI,EAAE;QACnC,CAAC;;UAEC,GAAG,CAAA,g1BAAg1B;;KAEx1B,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport type { PasswordFieldElement } from '@vaadin/vaadin-text-field/vaadin-password-field';\n\nimport { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';\nimport { generateRandomPassword } from './generateRandomPassword';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html, svg } from 'lit-element';\nimport { classMap } from '../../../utils/class-map';\n\n/**\n * Internal control displaying a basic password box.\n *\n * @since 1.17.0\n * @element foxy-internal-password-field-control\n */\nexport class InternalPasswordControl extends InternalEditableControl {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n showGenerator: { type: Boolean, attribute: 'show-generator' },\n };\n }\n\n /** If true, renders the password generator button. */\n showGenerator = false;\n\n renderControl(): TemplateResult {\n return html`\n <vaadin-password-field\n error-message=${ifDefined(this._errorMessage)}\n helper-text=${this.helperText}\n placeholder=${this.placeholder}\n label=${this.label}\n class=\"w-full\"\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n .checkValidity=${this._checkValidity}\n .value=${this._value}\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.nucleon?.submit()}\n @input=${(evt: CustomEvent) => {\n const area = evt.currentTarget as PasswordFieldElement;\n this._value = area.value;\n }}\n >\n ${this.showGenerator ? this.__renderGenerator() : ''}\n </vaadin-password-field>\n `;\n }\n\n protected get _value(): string {\n return (super._value as string | undefined) ?? '';\n }\n\n protected set _value(newValue: string) {\n super._value = newValue as unknown | undefined;\n }\n\n private __renderGenerator(): TemplateResult {\n return html`\n <div\n data-testid=\"generator\"\n class=${classMap({\n 'w-s h-s flex items-center justify-center cursor-default transition-colors': true,\n 'text-contrast-60 hover-text-contrast-80': !this.disabled && !this.readonly,\n 'text-contrast-20': this.disabled || this.readonly,\n })}\n slot=\"suffix\"\n @click=${() => {\n this._value = generateRandomPassword();\n const field = this.renderRoot.querySelector('vaadin-password-field');\n // @ts-expect-error: this is a private method but it's ok since the version is fixed\n field?._setPasswordVisible(true);\n }}\n >\n ${svg`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" style=\"width: 1.15em; height: 1.15em\"><path d=\"M15.98 1.804a1 1 0 00-1.96 0l-.24 1.192a1 1 0 01-.784.785l-1.192.238a1 1 0 000 1.962l1.192.238a1 1 0 01.785.785l.238 1.192a1 1 0 001.962 0l.238-1.192a1 1 0 01.785-.785l1.192-.238a1 1 0 000-1.962l-1.192-.238a1 1 0 01-.785-.785l-.238-1.192zM6.949 5.684a1 1 0 00-1.898 0l-.683 2.051a1 1 0 01-.633.633l-2.051.683a1 1 0 000 1.898l2.051.684a1 1 0 01.633.632l.683 2.051a1 1 0 001.898 0l.683-2.051a1 1 0 01.633-.633l2.051-.683a1 1 0 000-1.898l-2.051-.683a1 1 0 01-.633-.633L6.95 5.684zM13.949 13.684a1 1 0 00-1.898 0l-.184.551a1 1 0 01-.632.633l-.551.183a1 1 0 000 1.898l.551.183a1 1 0 01.633.633l.183.551a1 1 0 001.898 0l.184-.551a1 1 0 01.632-.633l.551-.183a1 1 0 000-1.898l-.551-.184a1 1 0 01-.633-.632l-.183-.551z\" /></svg>`}\n </div>\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"InternalPasswordControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/InternalPasswordControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,sBAAsB,EAAE,oCAAiC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AAEpD;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,uBAAuB;IAApE;;QASE,qBAAgB,GAAiD,IAAI,CAAC;QAEtE,sDAAsD;QACtD,kBAAa,GAAG,KAAK,CAAC;IAsDxB,CAAC;IAjEC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,gBAAgB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE;YAClE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE;SAC9D,CAAC;IACJ,CAAC;IAOD,aAAa;QACX,OAAO,IAAI,CAAA;;wBAES,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;sBAC/B,IAAI,CAAC,UAAU;sBACf,IAAI,CAAC,WAAW;gBACtB,IAAI,CAAC,KAAK;;oBAEN,IAAI,CAAC,QAAQ;oBACb,IAAI,CAAC,QAAQ;yBACR,IAAI,CAAC,cAAc;iBAC3B,IAAI,CAAC,MAAM;mBACT,CAAC,GAAkB,EAAE,EAAE,WAAC,OAAA,GAAG,CAAC,GAAG,KAAK,OAAO,WAAI,IAAI,CAAC,OAAO,0CAAE,MAAM,GAAE,CAAA,EAAA;iBACvE,CAAC,GAAgB,EAAE,EAAE;YAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,aAAqC,CAAC;YACvD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,CAAC;;UAEC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE;;KAEvD,CAAC;IACJ,CAAC;IAED,IAAc,MAAM;;QAClB,aAAQ,KAAK,CAAC,MAA6B,mCAAI,EAAE,CAAC;IACpD,CAAC;IAED,IAAc,MAAM,CAAC,QAAgB;QACnC,KAAK,CAAC,MAAM,GAAG,QAA+B,CAAC;IACjD,CAAC;IAEO,iBAAiB;QACvB,OAAO,IAAI,CAAA;;;gBAGC,QAAQ,CAAC;YACf,2EAA2E,EAAE,IAAI;YACjF,yCAAyC,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC3E,kBAAkB,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ;SACnD,CAAC;;iBAEO,GAAG,EAAE;;YACZ,IAAI,CAAC,MAAM,GAAG,sBAAsB,OAAC,IAAI,CAAC,gBAAgB,mCAAI,KAAK,CAAC,CAAC,CAAC;YACtE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC;YACrE,oFAAoF;YACpF,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,mBAAmB,CAAC,IAAI,EAAE;QACnC,CAAC;;UAEC,GAAG,CAAA,g1BAAg1B;;KAEx1B,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport type { PasswordFieldElement } from '@vaadin/vaadin-text-field/vaadin-password-field';\n\nimport { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';\nimport { generateRandomPassword } from './generateRandomPassword';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html, svg } from 'lit-element';\nimport { classMap } from '../../../utils/class-map';\n\n/**\n * Internal control displaying a basic password box.\n *\n * @since 1.17.0\n * @element foxy-internal-password-field-control\n */\nexport class InternalPasswordControl extends InternalEditableControl {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n generatorOptions: { type: Object, attribute: 'generator-options' },\n showGenerator: { type: Boolean, attribute: 'show-generator' },\n };\n }\n\n generatorOptions: null | { length?: number; charset?: string } = null;\n\n /** If true, renders the password generator button. */\n showGenerator = false;\n\n renderControl(): TemplateResult {\n return html`\n <vaadin-password-field\n error-message=${ifDefined(this._errorMessage)}\n helper-text=${this.helperText}\n placeholder=${this.placeholder}\n label=${this.label}\n class=\"w-full\"\n ?disabled=${this.disabled}\n ?readonly=${this.readonly}\n .checkValidity=${this._checkValidity}\n .value=${this._value}\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.nucleon?.submit()}\n @input=${(evt: CustomEvent) => {\n const area = evt.currentTarget as PasswordFieldElement;\n this._value = area.value;\n }}\n >\n ${this.showGenerator ? this.__renderGenerator() : ''}\n </vaadin-password-field>\n `;\n }\n\n protected get _value(): string {\n return (super._value as string | undefined) ?? '';\n }\n\n protected set _value(newValue: string) {\n super._value = newValue as unknown | undefined;\n }\n\n private __renderGenerator(): TemplateResult {\n return html`\n <div\n data-testid=\"generator\"\n class=${classMap({\n 'w-s h-s flex items-center justify-center cursor-default transition-colors': true,\n 'text-contrast-60 hover-text-contrast-80': !this.disabled && !this.readonly,\n 'text-contrast-20': this.disabled || this.readonly,\n })}\n slot=\"suffix\"\n @click=${() => {\n this._value = generateRandomPassword(this.generatorOptions ?? void 0);\n const field = this.renderRoot.querySelector('vaadin-password-field');\n // @ts-expect-error: this is a private method but it's ok since the version is fixed\n field?._setPasswordVisible(true);\n }}\n >\n ${svg`<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" style=\"width: 1.15em; height: 1.15em\"><path d=\"M15.98 1.804a1 1 0 00-1.96 0l-.24 1.192a1 1 0 01-.784.785l-1.192.238a1 1 0 000 1.962l1.192.238a1 1 0 01.785.785l.238 1.192a1 1 0 001.962 0l.238-1.192a1 1 0 01.785-.785l1.192-.238a1 1 0 000-1.962l-1.192-.238a1 1 0 01-.785-.785l-.238-1.192zM6.949 5.684a1 1 0 00-1.898 0l-.683 2.051a1 1 0 01-.633.633l-2.051.683a1 1 0 000 1.898l2.051.684a1 1 0 01.633.632l.683 2.051a1 1 0 001.898 0l.683-2.051a1 1 0 01.633-.633l2.051-.683a1 1 0 000-1.898l-2.051-.683a1 1 0 01-.633-.633L6.95 5.684zM13.949 13.684a1 1 0 00-1.898 0l-.184.551a1 1 0 01-.632.633l-.551.183a1 1 0 000 1.898l.551.183a1 1 0 01.633.633l.183.551a1 1 0 001.898 0l.184-.551a1 1 0 01.632-.633l.551-.183a1 1 0 000-1.898l-.551-.184a1 1 0 01-.633-.632l-.183-.551z\" /></svg>`}\n </div>\n `;\n }\n}\n"]}
@@ -1 +1,4 @@
1
- export declare function generateRandomPassword(): string;
1
+ export declare function generateRandomPassword(opts?: {
2
+ length?: number;
3
+ charset?: string;
4
+ }): string;
@@ -1,7 +1,9 @@
1
- export function generateRandomPassword() {
2
- const charset = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
1
+ export function generateRandomPassword(opts) {
2
+ var _a, _b;
3
+ const charset = (_a = opts === null || opts === void 0 ? void 0 : opts.charset) !== null && _a !== void 0 ? _a : 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
4
+ const length = (_b = opts === null || opts === void 0 ? void 0 : opts.length) !== null && _b !== void 0 ? _b : 18;
3
5
  let result = '';
4
- for (let i = 0; i < 18; i++) {
6
+ for (let i = 0; i < length; i++) {
5
7
  if (i > 0 && i % 6 === 0)
6
8
  result += '-';
7
9
  result += charset[Math.floor(Math.random() * charset.length)];
@@ -1 +1 @@
1
- {"version":3,"file":"generateRandomPassword.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/generateRandomPassword.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,sBAAsB;IACpC,MAAM,OAAO,GAAG,gEAAgE,CAAC;IACjF,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;QAC3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,GAAG,CAAC;QACxC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;KAC/D;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["export function generateRandomPassword(): string {\n const charset = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n let result = '';\n\n for (let i = 0; i < 18; i++) {\n if (i > 0 && i % 6 === 0) result += '-';\n result += charset[Math.floor(Math.random() * charset.length)];\n }\n\n return result;\n}\n"]}
1
+ {"version":3,"file":"generateRandomPassword.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalPasswordControl/generateRandomPassword.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,sBAAsB,CAAC,IAA4C;;IACjF,MAAM,OAAO,SAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,mCAAI,gEAAgE,CAAC;IAClG,MAAM,MAAM,SAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,mCAAI,EAAE,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,GAAG,CAAC;QACxC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;KAC/D;IAED,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["export function generateRandomPassword(opts?: { length?: number; charset?: string }): string {\n const charset = opts?.charset ?? 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n const length = opts?.length ?? 18;\n let result = '';\n\n for (let i = 0; i < length; i++) {\n if (i > 0 && i % 6 === 0) result += '-';\n result += charset[Math.floor(Math.random() * charset.length)];\n }\n\n return result;\n}\n"]}
@@ -0,0 +1,10 @@
1
+ import type { PropertyDeclarations } from 'lit-element';
2
+ import type { TemplateResult } from 'lit-html';
3
+ import { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';
4
+ import { Operator } from '../../public/QueryBuilder/types';
5
+ export declare class InternalQueryBuilderControl extends InternalEditableControl {
6
+ static get properties(): PropertyDeclarations;
7
+ operators: Operator[];
8
+ disableOr: boolean;
9
+ renderControl(): TemplateResult;
10
+ }
@@ -0,0 +1,51 @@
1
+ import { InternalEditableControl } from "../InternalEditableControl/InternalEditableControl.js";
2
+ import { Operator } from "../../public/QueryBuilder/types.js";
3
+ import { classMap } from "../../../utils/class-map.js";
4
+ import { html } from 'lit-html';
5
+ export class InternalQueryBuilderControl extends InternalEditableControl {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.operators = Object.values(Operator);
9
+ this.disableOr = false;
10
+ }
11
+ static get properties() {
12
+ return {
13
+ ...super.properties,
14
+ operators: { type: Array },
15
+ disableOr: { type: Boolean, attribute: 'disable-or' },
16
+ };
17
+ }
18
+ renderControl() {
19
+ const { label, helperText, _errorMessage: error } = this;
20
+ const showError = error && !this.disabled && !this.readonly;
21
+ return html `
22
+ <section
23
+ class=${classMap({
24
+ 'grid gap-xs leading-xs transition-colors': true,
25
+ 'text-secondary hover-text-body': !this.disabled && !this.readonly,
26
+ 'text-disabled': this.disabled,
27
+ 'text-body': this.readonly,
28
+ })}
29
+ >
30
+ ${label ? html `<p class="text-s font-medium">${label}</p>` : ''}
31
+
32
+ <foxy-query-builder
33
+ infer="query-builder"
34
+ .operators=${this.operators}
35
+ .value=${this._value}
36
+ ?disable-or=${this.disableOr}
37
+ @change=${(evt) => {
38
+ var _a;
39
+ const queryBuilder = evt.currentTarget;
40
+ this._value = (_a = queryBuilder.value) !== null && _a !== void 0 ? _a : '';
41
+ }}
42
+ >
43
+ </foxy-query-builder>
44
+
45
+ ${helperText ? html `<p class="text-xs">${helperText}</p>` : ''}
46
+ ${showError ? html `<p class="text-xs text-error">${error}</p>` : ''}
47
+ </section>
48
+ `;
49
+ }
50
+ }
51
+ //# sourceMappingURL=InternalQueryBuilderControl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InternalQueryBuilderControl.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalQueryBuilderControl/InternalQueryBuilderControl.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,uBAAuB,EAAE,8DAA2D;AAC7F,OAAO,EAAE,QAAQ,EAAE,2CAAwC;AAC3D,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,MAAM,OAAO,2BAA4B,SAAQ,uBAAuB;IAAxE;;QASE,cAAS,GAAe,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEhD,cAAS,GAAG,KAAK,CAAC;IAkCpB,CAAC;IA5CC,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;YAC1B,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE;SACtD,CAAC;IACJ,CAAC;IAMD,aAAa;QACX,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACzD,MAAM,SAAS,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QAE5D,OAAO,IAAI,CAAA;;gBAEC,QAAQ,CAAC;YACf,0CAA0C,EAAE,IAAI;YAChD,gCAAgC,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ;YAClE,eAAe,EAAE,IAAI,CAAC,QAAQ;YAC9B,WAAW,EAAE,IAAI,CAAC,QAAQ;SAC3B,CAAC;;UAEA,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA,iCAAiC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE;;;;uBAIhD,IAAI,CAAC,SAAS;mBAClB,IAAI,CAAC,MAAM;wBACN,IAAI,CAAC,SAAS;oBAClB,CAAC,GAAgB,EAAE,EAAE;;YAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,aAA6B,CAAC;YACvD,IAAI,CAAC,MAAM,SAAG,YAAY,CAAC,KAAK,mCAAI,EAAE,CAAC;QACzC,CAAC;;;;UAID,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA,sBAAsB,UAAU,MAAM,CAAC,CAAC,CAAC,EAAE;UAC5D,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA,iCAAiC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE;;KAEtE,CAAC;IACJ,CAAC;CACF","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { TemplateResult } from 'lit-html';\nimport type { QueryBuilder } from '../../public/QueryBuilder/QueryBuilder';\n\nimport { InternalEditableControl } from '../InternalEditableControl/InternalEditableControl';\nimport { Operator } from '../../public/QueryBuilder/types';\nimport { classMap } from '../../../utils/class-map';\nimport { html } from 'lit-html';\n\nexport class InternalQueryBuilderControl extends InternalEditableControl {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n operators: { type: Array },\n disableOr: { type: Boolean, attribute: 'disable-or' },\n };\n }\n\n operators: Operator[] = Object.values(Operator);\n\n disableOr = false;\n\n renderControl(): TemplateResult {\n const { label, helperText, _errorMessage: error } = this;\n const showError = error && !this.disabled && !this.readonly;\n\n return html`\n <section\n class=${classMap({\n 'grid gap-xs leading-xs transition-colors': true,\n 'text-secondary hover-text-body': !this.disabled && !this.readonly,\n 'text-disabled': this.disabled,\n 'text-body': this.readonly,\n })}\n >\n ${label ? html`<p class=\"text-s font-medium\">${label}</p>` : ''}\n\n <foxy-query-builder\n infer=\"query-builder\"\n .operators=${this.operators}\n .value=${this._value}\n ?disable-or=${this.disableOr}\n @change=${(evt: CustomEvent) => {\n const queryBuilder = evt.currentTarget as QueryBuilder;\n this._value = queryBuilder.value ?? '';\n }}\n >\n </foxy-query-builder>\n\n ${helperText ? html`<p class=\"text-xs\">${helperText}</p>` : ''}\n ${showError ? html`<p class=\"text-xs text-error\">${error}</p>` : ''}\n </section>\n `;\n }\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import '../InternalEditableControl/index';
2
+ import '../../public/QueryBuilder/index';
3
+ import { InternalQueryBuilderControl } from './InternalQueryBuilderControl';
4
+ export { InternalQueryBuilderControl };
@@ -0,0 +1,6 @@
1
+ import "../InternalEditableControl/index.js";
2
+ import "../../public/QueryBuilder/index.js";
3
+ import { InternalQueryBuilderControl } from "./InternalQueryBuilderControl.js";
4
+ customElements.define('foxy-internal-query-builder-control', InternalQueryBuilderControl);
5
+ export { InternalQueryBuilderControl };
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/internal/InternalQueryBuilderControl/index.ts"],"names":[],"mappings":"AAAA,6CAA0C;AAE1C,4CAAyC;AAEzC,OAAO,EAAE,2BAA2B,EAAE,yCAAsC;AAE5E,cAAc,CAAC,MAAM,CAAC,qCAAqC,EAAE,2BAA2B,CAAC,CAAC;AAE1F,OAAO,EAAE,2BAA2B,EAAE,CAAC","sourcesContent":["import '../InternalEditableControl/index';\n\nimport '../../public/QueryBuilder/index';\n\nimport { InternalQueryBuilderControl } from './InternalQueryBuilderControl';\n\ncustomElements.define('foxy-internal-query-builder-control', InternalQueryBuilderControl);\n\nexport { InternalQueryBuilderControl };\n"]}
@@ -265,87 +265,6 @@ export class CartForm extends Base {
265
265
  currencyCode = (_h = (_g = /Currency: ([A-Z]{3})/g.exec(localeInfo)) === null || _g === void 0 ? void 0 : _g[1]) !== null && _h !== void 0 ? _h : null;
266
266
  }
267
267
  return html `
268
- <foxy-nucleon
269
- class="hidden"
270
- infer=""
271
- href=${ifDefined(this.__shippingRegionsHref)}
272
- id=${this.__shippingRegionsLoaderId}
273
- @update=${() => this.requestUpdate()}
274
- >
275
- </foxy-nucleon>
276
-
277
- <foxy-nucleon
278
- class="hidden"
279
- infer=""
280
- href=${ifDefined(this.__billingRegionsHref)}
281
- id=${this.__billingRegionsLoaderId}
282
- @update=${() => this.requestUpdate()}
283
- >
284
- </foxy-nucleon>
285
-
286
- <foxy-nucleon
287
- class="hidden"
288
- infer=""
289
- href=${ifDefined(this.__countriesHref)}
290
- id=${this.__countriesHelperLoaderId}
291
- @update=${() => this.requestUpdate()}
292
- >
293
- </foxy-nucleon>
294
-
295
- <foxy-nucleon
296
- class="hidden"
297
- infer=""
298
- href=${ifDefined(this.__customerHref)}
299
- id=${this.__customerLoaderId}
300
- @update=${() => this.requestUpdate()}
301
- >
302
- </foxy-nucleon>
303
-
304
- <foxy-nucleon
305
- class="hidden"
306
- infer=""
307
- href=${ifDefined(this.__discountsHref)}
308
- id=${this.__discountsLoaderId}
309
- @update=${() => this.requestUpdate()}
310
- >
311
- </foxy-nucleon>
312
-
313
- <foxy-nucleon
314
- class="hidden"
315
- infer=""
316
- href=${ifDefined(this.__defaultTemplateSetHref)}
317
- id=${this.__defaultTemplateSetLoaderId}
318
- @update=${() => this.requestUpdate()}
319
- >
320
- </foxy-nucleon>
321
-
322
- <foxy-nucleon
323
- class="hidden"
324
- infer=""
325
- href=${ifDefined(this.__localeCodesHelperHref)}
326
- id=${this.__localeCodesHelperLoaderId}
327
- @update=${() => this.requestUpdate()}
328
- >
329
- </foxy-nucleon>
330
-
331
- <foxy-nucleon
332
- class="hidden"
333
- infer=""
334
- href=${ifDefined(this.__templateSetHref)}
335
- id=${this.__templateSetLoaderId}
336
- @update=${() => this.requestUpdate()}
337
- >
338
- </foxy-nucleon>
339
-
340
- <foxy-nucleon
341
- class="hidden"
342
- infer=""
343
- href=${ifDefined(this.__storeHref)}
344
- id=${this.__storeLoaderId}
345
- @update=${() => this.requestUpdate()}
346
- >
347
- </foxy-nucleon>
348
-
349
268
  <div class="grid sm-grid-cols-2 gap-l">
350
269
  <div class="sm-col-span-2">
351
270
  <foxy-i18n class="text-l font-medium leading-s block" infer="" key="order_section_title">
@@ -550,6 +469,87 @@ export class CartForm extends Base {
550
469
  `
551
470
  : html `<foxy-internal-create-control infer="create"></foxy-internal-create-control>`}
552
471
  </div>
472
+
473
+ <foxy-nucleon
474
+ class="hidden"
475
+ infer=""
476
+ href=${ifDefined(this.__shippingRegionsHref)}
477
+ id=${this.__shippingRegionsLoaderId}
478
+ @update=${() => this.requestUpdate()}
479
+ >
480
+ </foxy-nucleon>
481
+
482
+ <foxy-nucleon
483
+ class="hidden"
484
+ infer=""
485
+ href=${ifDefined(this.__billingRegionsHref)}
486
+ id=${this.__billingRegionsLoaderId}
487
+ @update=${() => this.requestUpdate()}
488
+ >
489
+ </foxy-nucleon>
490
+
491
+ <foxy-nucleon
492
+ class="hidden"
493
+ infer=""
494
+ href=${ifDefined(this.__countriesHref)}
495
+ id=${this.__countriesHelperLoaderId}
496
+ @update=${() => this.requestUpdate()}
497
+ >
498
+ </foxy-nucleon>
499
+
500
+ <foxy-nucleon
501
+ class="hidden"
502
+ infer=""
503
+ href=${ifDefined(this.__customerHref)}
504
+ id=${this.__customerLoaderId}
505
+ @update=${() => this.requestUpdate()}
506
+ >
507
+ </foxy-nucleon>
508
+
509
+ <foxy-nucleon
510
+ class="hidden"
511
+ infer=""
512
+ href=${ifDefined(this.__discountsHref)}
513
+ id=${this.__discountsLoaderId}
514
+ @update=${() => this.requestUpdate()}
515
+ >
516
+ </foxy-nucleon>
517
+
518
+ <foxy-nucleon
519
+ class="hidden"
520
+ infer=""
521
+ href=${ifDefined(this.__defaultTemplateSetHref)}
522
+ id=${this.__defaultTemplateSetLoaderId}
523
+ @update=${() => this.requestUpdate()}
524
+ >
525
+ </foxy-nucleon>
526
+
527
+ <foxy-nucleon
528
+ class="hidden"
529
+ infer=""
530
+ href=${ifDefined(this.__localeCodesHelperHref)}
531
+ id=${this.__localeCodesHelperLoaderId}
532
+ @update=${() => this.requestUpdate()}
533
+ >
534
+ </foxy-nucleon>
535
+
536
+ <foxy-nucleon
537
+ class="hidden"
538
+ infer=""
539
+ href=${ifDefined(this.__templateSetHref)}
540
+ id=${this.__templateSetLoaderId}
541
+ @update=${() => this.requestUpdate()}
542
+ >
543
+ </foxy-nucleon>
544
+
545
+ <foxy-nucleon
546
+ class="hidden"
547
+ infer=""
548
+ href=${ifDefined(this.__storeHref)}
549
+ id=${this.__storeLoaderId}
550
+ @update=${() => this.requestUpdate()}
551
+ >
552
+ </foxy-nucleon>
553
553
  `;
554
554
  }
555
555
  get __defaultTemplateSetHref() {
@@ -1 +1 @@
1
- {"version":3,"file":"CartForm.js","sourceRoot":"","sources":["../../../../src/elements/public/CartForm/CartForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { Templates, Data } from './types';\nimport type { TemplateResult } from 'lit-html';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { FormRenderer } from '../FormDialog/types';\nimport type { ItemRenderer } from '../CollectionPage/types';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { ResponsiveMixin } from '../../../mixins/responsive';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-html';\n\nimport set from 'lodash-es/set';\nimport get from 'lodash-es/get';\n\nconst NS = 'cart-form';\nconst Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));\n\n/**\n * Form element for creating or editing carts (`fx:cart`).\n *\n * @slot customer-type:before\n * @slot customer-type:after\n *\n * @slot customer:before\n * @slot customer:after\n *\n * @slot template-set-uri:before\n * @slot template-set-uri:after\n *\n * @slot items:before\n * @slot items:after\n *\n * @slot applied-coupon-codes:before\n * @slot applied-coupon-codes:after\n *\n * @slot custom-fields:before\n * @slot custom-fields:after\n *\n * @slot attributes:before\n * @slot attributes:after\n *\n * @slot billing-first-name:before\n * @slot billing-first-name:after\n *\n * @slot billing-last-name:before\n * @slot billing-last-name:after\n *\n * @slot billing-company:before\n * @slot billing-company:after\n *\n * @slot billing-phone:before\n * @slot billing-phone:after\n *\n * @slot billing-address-one:before\n * @slot billing-address-one:after\n *\n * @slot billing-address-two:before\n * @slot billing-address-two:after\n *\n * @slot billing-country:before\n * @slot billing-country:after\n *\n * @slot billing-region:before\n * @slot billing-region:after\n *\n * @slot billing-city:before\n * @slot billing-city:after\n *\n * @slot billing-postal-code:before\n * @slot billing-postal-code:after\n *\n * @slot shipping-first-name:before\n * @slot shipping-first-name:after\n *\n * @slot shipping-last-name:before\n * @slot shipping-last-name:after\n *\n * @slot shipping-company:before\n * @slot shipping-company:after\n *\n * @slot shipping-phone:before\n * @slot shipping-phone:after\n *\n * @slot shipping-address-one:before\n * @slot shipping-address-one:after\n *\n * @slot shipping-address-two:before\n * @slot shipping-address-two:after\n *\n * @slot shipping-country:before\n * @slot shipping-country:after\n *\n * @slot shipping-region:before\n * @slot shipping-region:after\n *\n * @slot shipping-city:before\n * @slot shipping-city:after\n *\n * @slot shipping-postal-code:before\n * @slot shipping-postal-code:after\n *\n * @slot view-as-customer:before\n * @slot view-as-customer:after\n *\n * @slot delete:before\n * @slot delete:after\n *\n * @slot create:before\n * @slot create:after\n *\n * @element foxy-cart-form\n * @since 1.21.0\n */\nexport class CartForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n itemCategories: { attribute: 'item-categories' },\n templateSets: { attribute: 'template-sets' },\n localeCodes: { attribute: 'locale-codes' },\n customers: {},\n countries: {},\n regions: {},\n coupons: {},\n __isGuestMode: { attribute: false },\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ billing_first_name: v }) => !v || v.length <= 50 || 'billing-first-name:v8n_too_long',\n ({ billing_last_name: v }) => !v || v.length <= 50 || 'billing-last-name:v8n_too_long',\n ({ billing_region: v }) => !v || v.length <= 50 || 'billing-region:v8n_too_long',\n ({ billing_city: v }) => !v || v.length <= 50 || 'billing-city:v8n_too_long',\n ({ billing_phone: v }) => !v || v.length <= 50 || 'billing-phone:v8n_too_long',\n ({ billing_company: v }) => !v || v.length <= 50 || 'billing-company:v8n_too_long',\n ({ billing_address2: v }) => !v || v.length <= 100 || 'billing-address-two:v8n_too_long',\n ({ billing_address1: v }) => !v || v.length <= 100 || 'billing-address-one:v8n_too_long',\n ({ billing_postal_code: v }) => !v || v.length <= 50 || 'billing-postal-code:v8n_too_long',\n ({ shipping_first_name: v }) => !v || v.length <= 50 || 'shipping-first-name:v8n_too_long',\n ({ shipping_last_name: v }) => !v || v.length <= 50 || 'shipping-last-name:v8n_too_long',\n ({ shipping_region: v }) => !v || v.length <= 50 || 'shipping-region:v8n_too_long',\n ({ shipping_city: v }) => !v || v.length <= 50 || 'shipping-city:v8n_too_long',\n ({ shipping_phone: v }) => !v || v.length <= 50 || 'shipping-phone:v8n_too_long',\n ({ shipping_company: v }) => !v || v.length <= 50 || 'shipping-company:v8n_too_long',\n ({ shipping_address2: v }) => !v || v.length <= 100 || 'shipping-address-two:v8n_too_long',\n ({ shipping_address1: v }) => !v || v.length <= 100 || 'shipping-address-one:v8n_too_long',\n ({ shipping_postal_code: v }) => !v || v.length <= 50 || 'shipping-postal-code:v8n_too_long',\n ];\n }\n\n /** URL of the `fx:item_categories` collection for the store. */\n itemCategories: string | null = null;\n\n /** URL of the `fx:template_sets` collection for the store. */\n templateSets: string | null = null;\n\n /** URL of the `fx:locale_codes` property helper. */\n localeCodes: string | null = null;\n\n /** URL of the `fx:customers` collection for the store. */\n customers: string | null = null;\n\n /** URL of the `fx:countries` property helper. */\n countries: string | null = null;\n\n /** Template render functions mapped to their name. */\n templates: Templates = {};\n\n /** URL of the `fx:regions` property helper. */\n regions: string | null = null;\n\n /** URL of the `fx:coupons` collection for the store. */\n coupons: string | null = null;\n\n private readonly __defaultTemplateSetLoaderId = 'defaultTemplateSetLoader';\n\n private readonly __localeCodesHelperLoaderId = 'localeCodesLoader';\n\n private readonly __shippingRegionsLoaderId = 'shippingRegionsLoader';\n\n private readonly __billingRegionsLoaderId = 'billingRegionsLoader';\n\n private readonly __templateSetLoaderId = 'templateSetLoader';\n\n private readonly __countriesHelperLoaderId = 'countriesHelperLoader';\n\n private readonly __discountsLoaderId = 'discountsLoader';\n\n private readonly __customerLoaderId = 'customerLoader';\n\n private readonly __storeLoaderId = 'storeLoader';\n\n private readonly __customerTypeGetValue = () => {\n if (!this.form.customer_uri) return 'new';\n return this.__customer?.is_anonymous ? 'guest' : 'regular';\n };\n\n private readonly __customerTypeSetValue = (newValue: string) => {\n this.edit({ customer_uri: '', customer_email: '' });\n this.__isGuestMode = newValue === 'guest';\n };\n\n private readonly __customerTypeOptions = [\n { label: 'option_new', value: 'new' },\n { label: 'option_guest', value: 'guest' },\n { label: 'option_regular', value: 'regular' },\n ];\n\n private readonly __customerGetValue = () => {\n return this.form.customer_uri || this.form.customer_email;\n };\n\n private readonly __customerSetValue = (newValue: string) => {\n try {\n // if newValue isn't a fx:customer URI this will error\n new URL(newValue);\n\n // filter customer_email out of edits because when supplying the customer_uri the email must\n // be that customer's email and it might not be immediately available at the time this getter is called\n const newEdits: Partial<Data> = {};\n const data = this.data;\n const form = this.form;\n\n for (const key in this.form) {\n if (key === 'customer_email') continue;\n const formValue = get(form, key);\n if (get(data, key) !== formValue) set(newEdits, key, formValue);\n }\n\n this.undo();\n this.edit({ ...newEdits, customer_uri: newValue });\n } catch {\n this.edit({ customer_uri: '', customer_email: newValue });\n }\n };\n\n private __isGuestMode = false;\n\n renderBody(): TemplateResult {\n const shippingRegions = Object.values(this.__shippingRegions ?? {});\n const billingRegions = Object.values(this.__billingRegions ?? {});\n const countries = Object.values(this.__countriesHelper ?? {});\n\n const shippingRegionOptions = shippingRegions.map(r => ({ label: r.default, value: r.code }));\n const billingRegionOptions = billingRegions.map(r => ({ label: r.default, value: r.code }));\n const countryOptions = countries.map(c => ({ label: c.default, value: c.cc2 }));\n\n const customerAddresses = this.__customer?._links['fx:customer_addresses'].href;\n\n const renderItemForm: FormRenderer = ctx => html`\n <foxy-item-form\n customer-addresses=${ifDefined(customerAddresses ?? void 0)}\n item-categories=${ifDefined(this.itemCategories ?? void 0)}\n locale-codes=${ifDefined(this.localeCodes ?? void 0)}\n coupons=${ifDefined(this.coupons ?? void 0)}\n parent=${ctx.dialog.parent}\n href=${ctx.dialog.href}\n infer=\"\"\n id=\"form\"\n .related=${ctx.dialog.related}\n @fetch=${ctx.handleFetch}\n @update=${ctx.handleUpdate}\n >\n </foxy-item-form>\n `;\n\n const renderItemCard: ItemRenderer = ctx => html`\n <foxy-item-card\n locale-codes=${this.localeCodes}\n parent=${ctx.parent}\n infer=\"\"\n href=${ctx.href}\n .related=${ctx.related}\n >\n </foxy-item-card>\n `;\n\n const store = this.__store;\n const currencyDisplay = store\n ? store.use_international_currency_symbol\n ? 'code'\n : 'symbol'\n : void 0;\n\n let currencyCode: string | null = null;\n\n if (this.form.currency_code) {\n currencyCode = this.form.currency_code;\n } else {\n const allLocaleCodes = this.__localeCodesHelper;\n const localeCode = (this.__templateSet ?? this.__defaultTemplateSet)?.locale_code;\n const localeInfo = localeCode ? allLocaleCodes?.values[localeCode] : void 0;\n\n if (localeInfo) currencyCode = /Currency: ([A-Z]{3})/g.exec(localeInfo)?.[1] ?? null;\n }\n\n return html`\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__shippingRegionsHref)}\n id=${this.__shippingRegionsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__billingRegionsHref)}\n id=${this.__billingRegionsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__countriesHref)}\n id=${this.__countriesHelperLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__customerHref)}\n id=${this.__customerLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__discountsHref)}\n id=${this.__discountsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__defaultTemplateSetHref)}\n id=${this.__defaultTemplateSetLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__localeCodesHelperHref)}\n id=${this.__localeCodesHelperLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__templateSetHref)}\n id=${this.__templateSetLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__storeHref)}\n id=${this.__storeLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <div class=\"grid sm-grid-cols-2 gap-l\">\n <div class=\"sm-col-span-2\">\n <foxy-i18n class=\"text-l font-medium leading-s block\" infer=\"\" key=\"order_section_title\">\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"order_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <foxy-internal-select-control\n infer=\"customer-type\"\n .getValue=${this.__customerTypeGetValue}\n .setValue=${this.__customerTypeSetValue}\n .options=${this.__customerTypeOptions}\n @update=${() => this.requestUpdate()}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-async-combo-box-control\n item-label-path=\"email\"\n item-value-path=\"_links.self.href\"\n item-id-path=\"_links.self.href\"\n first=${ifDefined(this.__customersHref)}\n infer=\"customer\"\n allow-custom-value\n .selectedItem=${this.__customer}\n .getValue=${this.__customerGetValue}\n .setValue=${this.__customerSetValue}\n >\n </foxy-internal-async-combo-box-control>\n\n <foxy-internal-async-combo-box-control\n item-label-path=\"description\"\n item-value-path=\"_links.self.href\"\n item-id-path=\"_links.self.href\"\n first=${ifDefined(this.templateSets)}\n class=\"sm-col-span-2\"\n infer=\"template-set-uri\"\n .selectedItem=${this.__templateSet ?? null}\n >\n </foxy-internal-async-combo-box-control>\n\n <foxy-internal-async-list-control\n infer=\"items\"\n class=\"min-w-0 sm-col-span-2\"\n first=${ifDefined(this.__itemsHref)}\n limit=\"5\"\n .item=${renderItemCard}\n .form=${this.data ? renderItemForm : null}\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"applied-coupon-codes\"\n class=\"min-w-0 sm-col-span-2\"\n first=${ifDefined(this.data?._links['fx:applied_coupon_codes'].href)}\n limit=\"5\"\n item=\"foxy-applied-coupon-code-card\"\n form=${ifDefined(this.data ? 'foxy-applied-coupon-code-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"custom-fields\"\n class=\"min-w-0\"\n first=${ifDefined(this.data?._links['fx:custom_fields'].href)}\n limit=\"5\"\n item=\"foxy-custom-field-card\"\n form=${ifDefined(this.data ? 'foxy-custom-field-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"attributes\"\n class=\"min-w-0\"\n first=${ifDefined(this.data?._links['fx:attributes'].href)}\n limit=\"5\"\n item=\"foxy-attribute-card\"\n form=${ifDefined(this.data ? 'foxy-attribute-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <div class=\"grid gap-l\">\n <div>\n <foxy-i18n\n class=\"text-l font-medium leading-s block\"\n infer=\"\"\n key=\"billing_section_title\"\n >\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"billing_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control infer=\"billing-first-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-last-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-company\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-phone\"></foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"billing_address1\"\n infer=\"billing-address-one\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"billing_address2\"\n infer=\"billing-address-two\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-select-control infer=\"billing-country\" .options=${countryOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-select-control infer=\"billing-region\" .options=${billingRegionOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-text-control infer=\"billing-city\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-postal-code\"></foxy-internal-text-control>\n </div>\n </div>\n\n <div class=\"grid gap-l\">\n <div>\n <foxy-i18n\n class=\"text-l font-medium leading-s block\"\n infer=\"\"\n key=\"shipping_section_title\"\n >\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"shipping_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control infer=\"shipping-first-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-last-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-company\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-phone\"></foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"shipping_address1\"\n infer=\"shipping-address-one\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"shipping_address2\"\n infer=\"shipping-address-two\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-select-control infer=\"shipping-country\" .options=${countryOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-select-control infer=\"shipping-region\" .options=${shippingRegionOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-text-control infer=\"shipping-city\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-postal-code\"></foxy-internal-text-control>\n </div>\n </div>\n\n <div class=\"leading-m sm-col-span-2\">\n <div class=\"text-xl font-medium mb-s\">\n ${this.__renderTotalOrder(currencyCode, currencyDisplay)}\n </div>\n <div class=\"border-t border-contrast-10 mb-s\"></div>\n ${this.__renderTotals(currencyCode, currencyDisplay)}\n ${this.__renderDiscounts(currencyCode, currencyDisplay)}\n </div>\n\n ${this.data\n ? html`\n <div class=\"grid gap-s sm-grid-cols-2 sm-gap-l sm-col-span-2\">\n <foxy-internal-cart-form-view-as-customer-control infer=\"view-as-customer\">\n </foxy-internal-cart-form-view-as-customer-control>\n <foxy-internal-delete-control infer=\"delete\"></foxy-internal-delete-control>\n </div>\n `\n : html`<foxy-internal-create-control infer=\"create\"></foxy-internal-create-control>`}\n </div>\n `;\n }\n\n private get __defaultTemplateSetHref() {\n const templateSetUri = this.data?.template_set_uri;\n\n if (templateSetUri === '') {\n try {\n const url = new URL(this.__store?._links['fx:template_sets'].href ?? '');\n url.searchParams.set('code', 'DEFAULT');\n return url.toString();\n } catch {\n //\n }\n }\n }\n\n private get __localeCodesHelperHref() {\n if (this.__defaultTemplateSetHref || this.__templateSetHref) {\n return this.localeCodes ?? void 0;\n }\n }\n\n private get __shippingRegionsHref() {\n try {\n const url = new URL(this.regions ?? '');\n const code = this.form.shipping_country;\n if (code) url.searchParams.set('country_code', code);\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __billingRegionsHref() {\n try {\n const url = new URL(this.regions ?? '');\n const code = this.form.billing_country;\n if (code) url.searchParams.set('country_code', code);\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __templateSetHref() {\n return this.form.template_set_uri || void 0;\n }\n\n private get __customersHref() {\n try {\n const url = new URL(this.customers ?? '');\n url.searchParams.set('is_anonymous', this.__isGuestMode ? '1' : '0');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __countriesHref() {\n return this.countries ?? void 0;\n }\n\n private get __discountsHref() {\n try {\n const url = new URL(this.data?._links['fx:discounts'].href ?? '');\n url.searchParams.set('limit', '300');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __customerHref() {\n return this.form.customer_uri || void 0;\n }\n\n private get __itemsHref() {\n try {\n const url = new URL(this.data?._links['fx:items'].href ?? '');\n url.searchParams.set('zoom', 'item_options');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __storeHref() {\n return this.data?._links['fx:store']?.href;\n }\n\n private get __defaultTemplateSet() {\n type Loader = NucleonElement<Resource<Rels.TemplateSets>>;\n const selector = `#${this.__defaultTemplateSetLoaderId}`;\n const loader = this.renderRoot.querySelector<Loader>(selector);\n return loader?.data?._embedded['fx:template_sets'][0] ?? null;\n }\n\n private get __localeCodesHelper() {\n type Loader = NucleonElement<Resource<Rels.LocaleCodes>>;\n const selector = `#${this.__localeCodesHelperLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private get __shippingRegions() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__shippingRegionsLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __billingRegions() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__billingRegionsLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __templateSet() {\n type Loader = NucleonElement<Resource<Rels.TemplateSet>>;\n const selector = `#${this.__templateSetLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private get __discounts() {\n type Loader = NucleonElement<Resource<Rels.Discounts>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__discountsLoaderId}`);\n }\n\n private get __countriesHelper() {\n type Loader = NucleonElement<Resource<Rels.Countries>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__countriesHelperLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __customer() {\n type Loader = NucleonElement<Resource<Rels.Customer>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__customerLoaderId}`)?.data;\n }\n\n private get __store() {\n type Loader = NucleonElement<Resource<Rels.Store>>;\n const selector = `#${this.__storeLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private __renderTotalOrder(currency: string | null, currencyDisplay: string | undefined) {\n const data = this.data;\n if (!data || !currency || !currencyDisplay) return html`--`;\n\n const options = { amount: `${data.total_order} ${currency}`, currencyDisplay };\n return html`<foxy-i18n infer=\"totals\" key=\"total_order\" .options=${options}></foxy-i18n>`;\n }\n\n private __renderTotals(currency: string | null, currencyDisplay: string | undefined) {\n const keys = ['total_item_price', 'total_shipping', 'total_tax'] as const;\n const data = this.data;\n const isPriceReady = data && currency && currencyDisplay;\n\n return keys.map(key => {\n const options = { amount: `${data?.[key]} ${currency}`, currencyDisplay };\n\n return html`\n <div data-testid=${key} class=\"flex justify-between text-m text-secondary\">\n <foxy-i18n key=${key} infer=\"totals\"></foxy-i18n>\n ${isPriceReady\n ? html`<foxy-i18n infer=\"totals\" key=\"price\" .options=${options}></foxy-i18n>`\n : html`<span>--</span>`}\n </div>\n `;\n });\n }\n\n private __renderDiscounts(currency: string | null, currencyDisplay: string | undefined) {\n const discounts = this.__discounts?.data?._embedded['fx:discounts'];\n const isPriceReady = currency && currencyDisplay;\n\n return discounts?.map(discount => {\n const options = { amount: `${discount.amount} ${currency}`, currencyDisplay };\n\n return html`\n <div data-testclass=\"discount\" class=\"flex justify-between text-m text-secondary\">\n <span>${discount.name} &bull; ${discount.code}</span>\n ${isPriceReady\n ? html`<foxy-i18n infer=\"totals\" key=\"price\" .options=${options}></foxy-i18n>`\n : html`<span>--</span>`}\n </div>\n `;\n });\n }\n}\n"]}
1
+ {"version":3,"file":"CartForm.js","sourceRoot":"","sources":["../../../../src/elements/public/CartForm/CartForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { Templates, Data } from './types';\nimport type { TemplateResult } from 'lit-html';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { FormRenderer } from '../FormDialog/types';\nimport type { ItemRenderer } from '../CollectionPage/types';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { ResponsiveMixin } from '../../../mixins/responsive';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-html';\n\nimport set from 'lodash-es/set';\nimport get from 'lodash-es/get';\n\nconst NS = 'cart-form';\nconst Base = ResponsiveMixin(TranslatableMixin(InternalForm, NS));\n\n/**\n * Form element for creating or editing carts (`fx:cart`).\n *\n * @slot customer-type:before\n * @slot customer-type:after\n *\n * @slot customer:before\n * @slot customer:after\n *\n * @slot template-set-uri:before\n * @slot template-set-uri:after\n *\n * @slot items:before\n * @slot items:after\n *\n * @slot applied-coupon-codes:before\n * @slot applied-coupon-codes:after\n *\n * @slot custom-fields:before\n * @slot custom-fields:after\n *\n * @slot attributes:before\n * @slot attributes:after\n *\n * @slot billing-first-name:before\n * @slot billing-first-name:after\n *\n * @slot billing-last-name:before\n * @slot billing-last-name:after\n *\n * @slot billing-company:before\n * @slot billing-company:after\n *\n * @slot billing-phone:before\n * @slot billing-phone:after\n *\n * @slot billing-address-one:before\n * @slot billing-address-one:after\n *\n * @slot billing-address-two:before\n * @slot billing-address-two:after\n *\n * @slot billing-country:before\n * @slot billing-country:after\n *\n * @slot billing-region:before\n * @slot billing-region:after\n *\n * @slot billing-city:before\n * @slot billing-city:after\n *\n * @slot billing-postal-code:before\n * @slot billing-postal-code:after\n *\n * @slot shipping-first-name:before\n * @slot shipping-first-name:after\n *\n * @slot shipping-last-name:before\n * @slot shipping-last-name:after\n *\n * @slot shipping-company:before\n * @slot shipping-company:after\n *\n * @slot shipping-phone:before\n * @slot shipping-phone:after\n *\n * @slot shipping-address-one:before\n * @slot shipping-address-one:after\n *\n * @slot shipping-address-two:before\n * @slot shipping-address-two:after\n *\n * @slot shipping-country:before\n * @slot shipping-country:after\n *\n * @slot shipping-region:before\n * @slot shipping-region:after\n *\n * @slot shipping-city:before\n * @slot shipping-city:after\n *\n * @slot shipping-postal-code:before\n * @slot shipping-postal-code:after\n *\n * @slot view-as-customer:before\n * @slot view-as-customer:after\n *\n * @slot delete:before\n * @slot delete:after\n *\n * @slot create:before\n * @slot create:after\n *\n * @element foxy-cart-form\n * @since 1.21.0\n */\nexport class CartForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n itemCategories: { attribute: 'item-categories' },\n templateSets: { attribute: 'template-sets' },\n localeCodes: { attribute: 'locale-codes' },\n customers: {},\n countries: {},\n regions: {},\n coupons: {},\n __isGuestMode: { attribute: false },\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ billing_first_name: v }) => !v || v.length <= 50 || 'billing-first-name:v8n_too_long',\n ({ billing_last_name: v }) => !v || v.length <= 50 || 'billing-last-name:v8n_too_long',\n ({ billing_region: v }) => !v || v.length <= 50 || 'billing-region:v8n_too_long',\n ({ billing_city: v }) => !v || v.length <= 50 || 'billing-city:v8n_too_long',\n ({ billing_phone: v }) => !v || v.length <= 50 || 'billing-phone:v8n_too_long',\n ({ billing_company: v }) => !v || v.length <= 50 || 'billing-company:v8n_too_long',\n ({ billing_address2: v }) => !v || v.length <= 100 || 'billing-address-two:v8n_too_long',\n ({ billing_address1: v }) => !v || v.length <= 100 || 'billing-address-one:v8n_too_long',\n ({ billing_postal_code: v }) => !v || v.length <= 50 || 'billing-postal-code:v8n_too_long',\n ({ shipping_first_name: v }) => !v || v.length <= 50 || 'shipping-first-name:v8n_too_long',\n ({ shipping_last_name: v }) => !v || v.length <= 50 || 'shipping-last-name:v8n_too_long',\n ({ shipping_region: v }) => !v || v.length <= 50 || 'shipping-region:v8n_too_long',\n ({ shipping_city: v }) => !v || v.length <= 50 || 'shipping-city:v8n_too_long',\n ({ shipping_phone: v }) => !v || v.length <= 50 || 'shipping-phone:v8n_too_long',\n ({ shipping_company: v }) => !v || v.length <= 50 || 'shipping-company:v8n_too_long',\n ({ shipping_address2: v }) => !v || v.length <= 100 || 'shipping-address-two:v8n_too_long',\n ({ shipping_address1: v }) => !v || v.length <= 100 || 'shipping-address-one:v8n_too_long',\n ({ shipping_postal_code: v }) => !v || v.length <= 50 || 'shipping-postal-code:v8n_too_long',\n ];\n }\n\n /** URL of the `fx:item_categories` collection for the store. */\n itemCategories: string | null = null;\n\n /** URL of the `fx:template_sets` collection for the store. */\n templateSets: string | null = null;\n\n /** URL of the `fx:locale_codes` property helper. */\n localeCodes: string | null = null;\n\n /** URL of the `fx:customers` collection for the store. */\n customers: string | null = null;\n\n /** URL of the `fx:countries` property helper. */\n countries: string | null = null;\n\n /** Template render functions mapped to their name. */\n templates: Templates = {};\n\n /** URL of the `fx:regions` property helper. */\n regions: string | null = null;\n\n /** URL of the `fx:coupons` collection for the store. */\n coupons: string | null = null;\n\n private readonly __defaultTemplateSetLoaderId = 'defaultTemplateSetLoader';\n\n private readonly __localeCodesHelperLoaderId = 'localeCodesLoader';\n\n private readonly __shippingRegionsLoaderId = 'shippingRegionsLoader';\n\n private readonly __billingRegionsLoaderId = 'billingRegionsLoader';\n\n private readonly __templateSetLoaderId = 'templateSetLoader';\n\n private readonly __countriesHelperLoaderId = 'countriesHelperLoader';\n\n private readonly __discountsLoaderId = 'discountsLoader';\n\n private readonly __customerLoaderId = 'customerLoader';\n\n private readonly __storeLoaderId = 'storeLoader';\n\n private readonly __customerTypeGetValue = () => {\n if (!this.form.customer_uri) return 'new';\n return this.__customer?.is_anonymous ? 'guest' : 'regular';\n };\n\n private readonly __customerTypeSetValue = (newValue: string) => {\n this.edit({ customer_uri: '', customer_email: '' });\n this.__isGuestMode = newValue === 'guest';\n };\n\n private readonly __customerTypeOptions = [\n { label: 'option_new', value: 'new' },\n { label: 'option_guest', value: 'guest' },\n { label: 'option_regular', value: 'regular' },\n ];\n\n private readonly __customerGetValue = () => {\n return this.form.customer_uri || this.form.customer_email;\n };\n\n private readonly __customerSetValue = (newValue: string) => {\n try {\n // if newValue isn't a fx:customer URI this will error\n new URL(newValue);\n\n // filter customer_email out of edits because when supplying the customer_uri the email must\n // be that customer's email and it might not be immediately available at the time this getter is called\n const newEdits: Partial<Data> = {};\n const data = this.data;\n const form = this.form;\n\n for (const key in this.form) {\n if (key === 'customer_email') continue;\n const formValue = get(form, key);\n if (get(data, key) !== formValue) set(newEdits, key, formValue);\n }\n\n this.undo();\n this.edit({ ...newEdits, customer_uri: newValue });\n } catch {\n this.edit({ customer_uri: '', customer_email: newValue });\n }\n };\n\n private __isGuestMode = false;\n\n renderBody(): TemplateResult {\n const shippingRegions = Object.values(this.__shippingRegions ?? {});\n const billingRegions = Object.values(this.__billingRegions ?? {});\n const countries = Object.values(this.__countriesHelper ?? {});\n\n const shippingRegionOptions = shippingRegions.map(r => ({ label: r.default, value: r.code }));\n const billingRegionOptions = billingRegions.map(r => ({ label: r.default, value: r.code }));\n const countryOptions = countries.map(c => ({ label: c.default, value: c.cc2 }));\n\n const customerAddresses = this.__customer?._links['fx:customer_addresses'].href;\n\n const renderItemForm: FormRenderer = ctx => html`\n <foxy-item-form\n customer-addresses=${ifDefined(customerAddresses ?? void 0)}\n item-categories=${ifDefined(this.itemCategories ?? void 0)}\n locale-codes=${ifDefined(this.localeCodes ?? void 0)}\n coupons=${ifDefined(this.coupons ?? void 0)}\n parent=${ctx.dialog.parent}\n href=${ctx.dialog.href}\n infer=\"\"\n id=\"form\"\n .related=${ctx.dialog.related}\n @fetch=${ctx.handleFetch}\n @update=${ctx.handleUpdate}\n >\n </foxy-item-form>\n `;\n\n const renderItemCard: ItemRenderer = ctx => html`\n <foxy-item-card\n locale-codes=${this.localeCodes}\n parent=${ctx.parent}\n infer=\"\"\n href=${ctx.href}\n .related=${ctx.related}\n >\n </foxy-item-card>\n `;\n\n const store = this.__store;\n const currencyDisplay = store\n ? store.use_international_currency_symbol\n ? 'code'\n : 'symbol'\n : void 0;\n\n let currencyCode: string | null = null;\n\n if (this.form.currency_code) {\n currencyCode = this.form.currency_code;\n } else {\n const allLocaleCodes = this.__localeCodesHelper;\n const localeCode = (this.__templateSet ?? this.__defaultTemplateSet)?.locale_code;\n const localeInfo = localeCode ? allLocaleCodes?.values[localeCode] : void 0;\n\n if (localeInfo) currencyCode = /Currency: ([A-Z]{3})/g.exec(localeInfo)?.[1] ?? null;\n }\n\n return html`\n <div class=\"grid sm-grid-cols-2 gap-l\">\n <div class=\"sm-col-span-2\">\n <foxy-i18n class=\"text-l font-medium leading-s block\" infer=\"\" key=\"order_section_title\">\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"order_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <foxy-internal-select-control\n infer=\"customer-type\"\n .getValue=${this.__customerTypeGetValue}\n .setValue=${this.__customerTypeSetValue}\n .options=${this.__customerTypeOptions}\n @update=${() => this.requestUpdate()}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-async-combo-box-control\n item-label-path=\"email\"\n item-value-path=\"_links.self.href\"\n item-id-path=\"_links.self.href\"\n first=${ifDefined(this.__customersHref)}\n infer=\"customer\"\n allow-custom-value\n .selectedItem=${this.__customer}\n .getValue=${this.__customerGetValue}\n .setValue=${this.__customerSetValue}\n >\n </foxy-internal-async-combo-box-control>\n\n <foxy-internal-async-combo-box-control\n item-label-path=\"description\"\n item-value-path=\"_links.self.href\"\n item-id-path=\"_links.self.href\"\n first=${ifDefined(this.templateSets)}\n class=\"sm-col-span-2\"\n infer=\"template-set-uri\"\n .selectedItem=${this.__templateSet ?? null}\n >\n </foxy-internal-async-combo-box-control>\n\n <foxy-internal-async-list-control\n infer=\"items\"\n class=\"min-w-0 sm-col-span-2\"\n first=${ifDefined(this.__itemsHref)}\n limit=\"5\"\n .item=${renderItemCard}\n .form=${this.data ? renderItemForm : null}\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"applied-coupon-codes\"\n class=\"min-w-0 sm-col-span-2\"\n first=${ifDefined(this.data?._links['fx:applied_coupon_codes'].href)}\n limit=\"5\"\n item=\"foxy-applied-coupon-code-card\"\n form=${ifDefined(this.data ? 'foxy-applied-coupon-code-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"custom-fields\"\n class=\"min-w-0\"\n first=${ifDefined(this.data?._links['fx:custom_fields'].href)}\n limit=\"5\"\n item=\"foxy-custom-field-card\"\n form=${ifDefined(this.data ? 'foxy-custom-field-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"attributes\"\n class=\"min-w-0\"\n first=${ifDefined(this.data?._links['fx:attributes'].href)}\n limit=\"5\"\n item=\"foxy-attribute-card\"\n form=${ifDefined(this.data ? 'foxy-attribute-form' : void 0)}\n alert\n >\n </foxy-internal-async-list-control>\n\n <div class=\"grid gap-l\">\n <div>\n <foxy-i18n\n class=\"text-l font-medium leading-s block\"\n infer=\"\"\n key=\"billing_section_title\"\n >\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"billing_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control infer=\"billing-first-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-last-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-company\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-phone\"></foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"billing_address1\"\n infer=\"billing-address-one\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"billing_address2\"\n infer=\"billing-address-two\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-select-control infer=\"billing-country\" .options=${countryOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-select-control infer=\"billing-region\" .options=${billingRegionOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-text-control infer=\"billing-city\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"billing-postal-code\"></foxy-internal-text-control>\n </div>\n </div>\n\n <div class=\"grid gap-l\">\n <div>\n <foxy-i18n\n class=\"text-l font-medium leading-s block\"\n infer=\"\"\n key=\"shipping_section_title\"\n >\n </foxy-i18n>\n\n <foxy-i18n\n class=\"text-s text-secondary leading-s block\"\n infer=\"\"\n key=\"shipping_section_description\"\n >\n </foxy-i18n>\n </div>\n\n <div class=\"grid grid-cols-2 gap-m\">\n <foxy-internal-text-control infer=\"shipping-first-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-last-name\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-company\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-phone\"></foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"shipping_address1\"\n infer=\"shipping-address-one\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-text-control\n property=\"shipping_address2\"\n infer=\"shipping-address-two\"\n class=\"col-span-2\"\n >\n </foxy-internal-text-control>\n\n <foxy-internal-select-control infer=\"shipping-country\" .options=${countryOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-select-control infer=\"shipping-region\" .options=${shippingRegionOptions}>\n </foxy-internal-select-control>\n\n <foxy-internal-text-control infer=\"shipping-city\"></foxy-internal-text-control>\n <foxy-internal-text-control infer=\"shipping-postal-code\"></foxy-internal-text-control>\n </div>\n </div>\n\n <div class=\"leading-m sm-col-span-2\">\n <div class=\"text-xl font-medium mb-s\">\n ${this.__renderTotalOrder(currencyCode, currencyDisplay)}\n </div>\n <div class=\"border-t border-contrast-10 mb-s\"></div>\n ${this.__renderTotals(currencyCode, currencyDisplay)}\n ${this.__renderDiscounts(currencyCode, currencyDisplay)}\n </div>\n\n ${this.data\n ? html`\n <div class=\"grid gap-s sm-grid-cols-2 sm-gap-l sm-col-span-2\">\n <foxy-internal-cart-form-view-as-customer-control infer=\"view-as-customer\">\n </foxy-internal-cart-form-view-as-customer-control>\n <foxy-internal-delete-control infer=\"delete\"></foxy-internal-delete-control>\n </div>\n `\n : html`<foxy-internal-create-control infer=\"create\"></foxy-internal-create-control>`}\n </div>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__shippingRegionsHref)}\n id=${this.__shippingRegionsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__billingRegionsHref)}\n id=${this.__billingRegionsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__countriesHref)}\n id=${this.__countriesHelperLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__customerHref)}\n id=${this.__customerLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__discountsHref)}\n id=${this.__discountsLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__defaultTemplateSetHref)}\n id=${this.__defaultTemplateSetLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__localeCodesHelperHref)}\n id=${this.__localeCodesHelperLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__templateSetHref)}\n id=${this.__templateSetLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.__storeHref)}\n id=${this.__storeLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n `;\n }\n\n private get __defaultTemplateSetHref() {\n const templateSetUri = this.data?.template_set_uri;\n\n if (templateSetUri === '') {\n try {\n const url = new URL(this.__store?._links['fx:template_sets'].href ?? '');\n url.searchParams.set('code', 'DEFAULT');\n return url.toString();\n } catch {\n //\n }\n }\n }\n\n private get __localeCodesHelperHref() {\n if (this.__defaultTemplateSetHref || this.__templateSetHref) {\n return this.localeCodes ?? void 0;\n }\n }\n\n private get __shippingRegionsHref() {\n try {\n const url = new URL(this.regions ?? '');\n const code = this.form.shipping_country;\n if (code) url.searchParams.set('country_code', code);\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __billingRegionsHref() {\n try {\n const url = new URL(this.regions ?? '');\n const code = this.form.billing_country;\n if (code) url.searchParams.set('country_code', code);\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __templateSetHref() {\n return this.form.template_set_uri || void 0;\n }\n\n private get __customersHref() {\n try {\n const url = new URL(this.customers ?? '');\n url.searchParams.set('is_anonymous', this.__isGuestMode ? '1' : '0');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __countriesHref() {\n return this.countries ?? void 0;\n }\n\n private get __discountsHref() {\n try {\n const url = new URL(this.data?._links['fx:discounts'].href ?? '');\n url.searchParams.set('limit', '300');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __customerHref() {\n return this.form.customer_uri || void 0;\n }\n\n private get __itemsHref() {\n try {\n const url = new URL(this.data?._links['fx:items'].href ?? '');\n url.searchParams.set('zoom', 'item_options');\n return url.toString();\n } catch {\n //\n }\n }\n\n private get __storeHref() {\n return this.data?._links['fx:store']?.href;\n }\n\n private get __defaultTemplateSet() {\n type Loader = NucleonElement<Resource<Rels.TemplateSets>>;\n const selector = `#${this.__defaultTemplateSetLoaderId}`;\n const loader = this.renderRoot.querySelector<Loader>(selector);\n return loader?.data?._embedded['fx:template_sets'][0] ?? null;\n }\n\n private get __localeCodesHelper() {\n type Loader = NucleonElement<Resource<Rels.LocaleCodes>>;\n const selector = `#${this.__localeCodesHelperLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private get __shippingRegions() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__shippingRegionsLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __billingRegions() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__billingRegionsLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __templateSet() {\n type Loader = NucleonElement<Resource<Rels.TemplateSet>>;\n const selector = `#${this.__templateSetLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private get __discounts() {\n type Loader = NucleonElement<Resource<Rels.Discounts>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__discountsLoaderId}`);\n }\n\n private get __countriesHelper() {\n type Loader = NucleonElement<Resource<Rels.Countries>>;\n const loader = this.renderRoot.querySelector<Loader>(`#${this.__countriesHelperLoaderId}`);\n return loader?.data?.values;\n }\n\n private get __customer() {\n type Loader = NucleonElement<Resource<Rels.Customer>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__customerLoaderId}`)?.data;\n }\n\n private get __store() {\n type Loader = NucleonElement<Resource<Rels.Store>>;\n const selector = `#${this.__storeLoaderId}`;\n return this.renderRoot.querySelector<Loader>(selector)?.data ?? null;\n }\n\n private __renderTotalOrder(currency: string | null, currencyDisplay: string | undefined) {\n const data = this.data;\n if (!data || !currency || !currencyDisplay) return html`--`;\n\n const options = { amount: `${data.total_order} ${currency}`, currencyDisplay };\n return html`<foxy-i18n infer=\"totals\" key=\"total_order\" .options=${options}></foxy-i18n>`;\n }\n\n private __renderTotals(currency: string | null, currencyDisplay: string | undefined) {\n const keys = ['total_item_price', 'total_shipping', 'total_tax'] as const;\n const data = this.data;\n const isPriceReady = data && currency && currencyDisplay;\n\n return keys.map(key => {\n const options = { amount: `${data?.[key]} ${currency}`, currencyDisplay };\n\n return html`\n <div data-testid=${key} class=\"flex justify-between text-m text-secondary\">\n <foxy-i18n key=${key} infer=\"totals\"></foxy-i18n>\n ${isPriceReady\n ? html`<foxy-i18n infer=\"totals\" key=\"price\" .options=${options}></foxy-i18n>`\n : html`<span>--</span>`}\n </div>\n `;\n });\n }\n\n private __renderDiscounts(currency: string | null, currencyDisplay: string | undefined) {\n const discounts = this.__discounts?.data?._embedded['fx:discounts'];\n const isPriceReady = currency && currencyDisplay;\n\n return discounts?.map(discount => {\n const options = { amount: `${discount.amount} ${currency}`, currencyDisplay };\n\n return html`\n <div data-testclass=\"discount\" class=\"flex justify-between text-m text-secondary\">\n <span>${discount.name} &bull; ${discount.code}</span>\n ${isPriceReady\n ? html`<foxy-i18n infer=\"totals\" key=\"price\" .options=${options}></foxy-i18n>`\n : html`<span>--</span>`}\n </div>\n `;\n });\n }\n}\n"]}
@@ -60,6 +60,7 @@ export class CollectionPage extends Base {
60
60
  ?disabled=\${ctx.disabled}
61
61
  ?readonly=\${ctx.readonly}
62
62
  ?hidden=\${ctx.hidden}
63
+ .simplifyNsLoading=\${ctx.simplifyNsLoading}
63
64
  .templates=\${ctx.templates}
64
65
  ...=\${ctx.spread(ctx.props)}
65
66
  >
@@ -100,6 +101,7 @@ export class CollectionPage extends Base {
100
101
  }));
101
102
  }
102
103
  return html `${repeat(items, item => item.key, (item, index) => { var _a, _b, _c, _d, _e; return (_a = this.__renderItem) === null || _a === void 0 ? void 0 : _a.call(this, {
104
+ simplifyNsLoading: this.simplifyNsLoading,
103
105
  disabledControls: this.disabledControls,
104
106
  readonlyControls: this.readonlyControls,
105
107
  hiddenControls: this.hiddenControls,