@foxy.io/elements 1.15.0-beta.8 → 1.16.0-beta.10

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 (667) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +1 -1
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-api-browser.js +5 -0
  5. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  6. package/dist/cdn/foxy-attribute-card.js +1 -1
  7. package/dist/cdn/foxy-attribute-form.js +1 -1
  8. package/dist/cdn/foxy-cancellation-form.js +1 -1
  9. package/dist/cdn/foxy-collection-page.js +1 -1
  10. package/dist/cdn/foxy-collection-pages.js +1 -1
  11. package/dist/cdn/foxy-copy-to-clipboard.js +1 -0
  12. package/dist/cdn/foxy-coupon-card.js +1 -1
  13. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  14. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  15. package/dist/cdn/foxy-coupon-detail-card.js +1 -0
  16. package/dist/cdn/foxy-coupon-form.js +1 -1
  17. package/dist/cdn/foxy-custom-field-card.js +1 -1
  18. package/dist/cdn/foxy-custom-field-form.js +1 -1
  19. package/dist/cdn/foxy-customer-api.js +1 -1
  20. package/dist/cdn/foxy-customer-card.js +1 -1
  21. package/dist/cdn/foxy-customer-form.js +1 -1
  22. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  23. package/dist/cdn/foxy-customer-portal.js +15 -15
  24. package/dist/cdn/foxy-customer.js +7 -7
  25. package/dist/cdn/foxy-customers-table.js +1 -1
  26. package/dist/cdn/foxy-discount-builder.js +1 -0
  27. package/dist/cdn/foxy-discount-card.js +1 -1
  28. package/dist/cdn/foxy-discount-detail-card.js +1 -0
  29. package/dist/cdn/foxy-donation.js +1 -1
  30. package/dist/cdn/foxy-email-template-form.js +1 -1
  31. package/dist/cdn/foxy-error-entry-card.js +1 -1
  32. package/dist/cdn/foxy-form-dialog.js +1 -1
  33. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  34. package/dist/cdn/foxy-gift-card-card.js +1 -1
  35. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  36. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  37. package/dist/cdn/foxy-gift-card-form.js +1 -1
  38. package/dist/cdn/foxy-i18n.js +1 -1
  39. package/dist/cdn/foxy-item-card.js +1 -0
  40. package/dist/cdn/foxy-item-form.js +1 -0
  41. package/dist/cdn/foxy-item-option-card.js +1 -0
  42. package/dist/cdn/foxy-item-option-form.js +1 -0
  43. package/dist/cdn/foxy-items-form.js +1 -1
  44. package/dist/cdn/foxy-nucleon-element.js +1 -1
  45. package/dist/cdn/foxy-pagination.js +1 -1
  46. package/dist/cdn/foxy-payment-card.js +1 -1
  47. package/dist/cdn/foxy-payment-method-card.js +1 -1
  48. package/dist/cdn/foxy-query-builder.js +1 -1
  49. package/dist/cdn/foxy-report-form.js +195 -0
  50. package/dist/cdn/foxy-reports-table.js +41 -0
  51. package/dist/cdn/foxy-shipment-card.js +17 -0
  52. package/dist/cdn/foxy-sign-in-form.js +1 -1
  53. package/dist/cdn/foxy-spinner.js +2 -2
  54. package/dist/cdn/foxy-subscription-card.js +1 -1
  55. package/dist/cdn/foxy-subscription-form.js +5 -5
  56. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  57. package/dist/cdn/foxy-swipe-actions.js +1 -0
  58. package/dist/cdn/foxy-table.js +1 -1
  59. package/dist/cdn/foxy-tax-card.js +1 -1
  60. package/dist/cdn/foxy-tax-form.js +1 -1
  61. package/dist/cdn/foxy-template-config-form.js +1 -1
  62. package/dist/cdn/foxy-template-form.js +1 -1
  63. package/dist/cdn/foxy-transaction-card.js +1 -1
  64. package/dist/cdn/foxy-transaction.js +64 -0
  65. package/dist/cdn/foxy-transactions-table.js +1 -1
  66. package/dist/cdn/foxy-user-form.js +1 -1
  67. package/dist/cdn/foxy-users-table.js +1 -1
  68. package/dist/cdn/foxy-webhook-card.js +1 -0
  69. package/dist/cdn/foxy-webhook-form.js +318 -0
  70. package/dist/cdn/foxy-webhook-log-card.js +1 -0
  71. package/dist/cdn/foxy-webhook-status-card.js +1 -0
  72. package/dist/cdn/shared-0504c8dc.js +1 -0
  73. package/dist/cdn/{shared-5a54a9bc.js → shared-0c806443.js} +1 -1
  74. package/dist/cdn/{shared-218ba06e.js → shared-0eb966c5.js} +1 -1
  75. package/dist/cdn/shared-15b109e0.js +1 -0
  76. package/dist/cdn/{shared-1934524e.js → shared-17437844.js} +2 -2
  77. package/dist/cdn/{shared-59e44f29.js → shared-1bbd9b73.js} +1 -1
  78. package/dist/cdn/shared-1d67ea08.js +9 -0
  79. package/dist/cdn/{shared-07134f93.js → shared-22ba9566.js} +1 -1
  80. package/dist/cdn/{shared-448781f9.js → shared-26ce8d23.js} +1 -1
  81. package/dist/cdn/shared-322d50e3.js +1 -0
  82. package/dist/cdn/shared-32fe791c.js +1 -0
  83. package/dist/cdn/{shared-65dfd512.js → shared-3a31785e.js} +2 -11
  84. package/dist/cdn/shared-42883176.js +1 -0
  85. package/dist/cdn/shared-448cf4fc.js +1 -0
  86. package/dist/cdn/{shared-7f0a9790.js → shared-45feee83.js} +1 -1
  87. package/dist/cdn/shared-4d1b8098.js +1 -0
  88. package/dist/cdn/shared-59a3f7dd.js +1 -0
  89. package/dist/cdn/shared-6762b56b.js +12 -0
  90. package/dist/cdn/{shared-223508ae.js → shared-68ebb1d1.js} +7 -7
  91. package/dist/cdn/shared-6f03b699.js +1 -0
  92. package/dist/cdn/{shared-20b9ce70.js → shared-7312e29c.js} +1 -1
  93. package/dist/cdn/{shared-a040d79d.js → shared-7b02ce85.js} +1 -1
  94. package/dist/cdn/{shared-756034e4.js → shared-7c8bb60c.js} +1 -1
  95. package/dist/cdn/shared-7f264e87.js +1 -0
  96. package/dist/cdn/shared-8ada26b5.js +1 -0
  97. package/dist/cdn/{shared-60126eee.js → shared-8be42cfd.js} +1 -1
  98. package/dist/cdn/{shared-4dc6d228.js → shared-8c1f3b5d.js} +1 -1
  99. package/dist/cdn/{shared-5535f38f.js → shared-92327224.js} +2 -2
  100. package/dist/cdn/shared-94ec874e.js +1 -0
  101. package/dist/cdn/{shared-6d45a07b.js → shared-9803aa7c.js} +1 -1
  102. package/dist/cdn/shared-997e1923.js +1 -0
  103. package/dist/cdn/{shared-b0f0e8b5.js → shared-99940888.js} +1 -1
  104. package/dist/cdn/shared-a0617ac7.js +1 -0
  105. package/dist/cdn/{shared-b710881a.js → shared-a0c6a159.js} +2 -2
  106. package/dist/cdn/{shared-fab8c705.js → shared-a4f49e9c.js} +10 -10
  107. package/dist/cdn/{shared-08c63028.js → shared-a8bf2435.js} +14 -19
  108. package/dist/cdn/shared-a916ce20.js +1 -0
  109. package/dist/cdn/shared-ac44429d.js +1 -0
  110. package/dist/cdn/shared-b2b3f0e0.js +201 -0
  111. package/dist/cdn/{shared-073cb8e9.js → shared-b76a1f1d.js} +1 -1
  112. package/dist/cdn/{shared-e2c878c7.js → shared-c0c5d201.js} +10 -10
  113. package/dist/cdn/{shared-0f38a631.js → shared-cf9696be.js} +1 -1
  114. package/dist/cdn/{shared-f4ad24f4.js → shared-d1fae22a.js} +1 -1
  115. package/dist/cdn/shared-d6444ed0.js +1 -0
  116. package/dist/cdn/shared-d8ceb77e.js +1 -0
  117. package/dist/cdn/shared-dc73b9a5.js +159 -0
  118. package/dist/cdn/shared-df43b0ca.js +1 -0
  119. package/dist/cdn/{shared-1a67bc75.js → shared-e05209a8.js} +4 -4
  120. package/dist/cdn/{shared-9221e6b2.js → shared-e1c1e8e2.js} +1 -1
  121. package/dist/cdn/shared-e7634824.js +1 -0
  122. package/dist/cdn/shared-e82cc599.js +29 -0
  123. package/dist/cdn/shared-f9f9ed5b.js +6 -0
  124. package/dist/cdn/{shared-b9f18aaa.js → shared-fa7e21e7.js} +4 -4
  125. package/dist/cdn/shared-fadcb2e1.js +1 -0
  126. package/dist/cdn/{shared-46ee137f.js → shared-fd789489.js} +10 -10
  127. package/dist/cdn/translations/access-recovery-form/en.json +12 -0
  128. package/dist/cdn/translations/address-card/en.json +11 -0
  129. package/dist/cdn/translations/address-form/en.json +27 -0
  130. package/dist/cdn/translations/api-browser/en.json +28 -0
  131. package/dist/cdn/translations/applied-tax-card/en.json +9 -0
  132. package/dist/cdn/translations/attribute-card/en.json +7 -0
  133. package/dist/cdn/translations/attribute-form/en.json +22 -0
  134. package/dist/cdn/translations/cancellation-form/en.json +10 -0
  135. package/dist/cdn/translations/copy-to-clipboard/en.json +6 -0
  136. package/dist/cdn/translations/country/pl.json +251 -0
  137. package/dist/cdn/translations/coupon-card/en.json +36 -0
  138. package/dist/cdn/translations/coupon-code-form/en.json +17 -0
  139. package/dist/cdn/translations/coupon-codes-form/en.json +20 -0
  140. package/dist/cdn/translations/coupon-form/en.json +205 -0
  141. package/dist/cdn/translations/custom-field-card/en.json +7 -0
  142. package/dist/cdn/translations/custom-field-form/en.json +19 -0
  143. package/dist/cdn/translations/customer/en.json +247 -0
  144. package/dist/cdn/translations/customer-card/en.json +7 -0
  145. package/dist/cdn/translations/customer-form/en.json +21 -0
  146. package/dist/cdn/translations/customer-portal/de.json +202 -14
  147. package/dist/cdn/translations/customer-portal/en.json +202 -14
  148. package/dist/cdn/translations/customer-portal/es.json +202 -14
  149. package/dist/cdn/translations/customer-portal/pl.json +223 -0
  150. package/dist/cdn/translations/customer-portal/zh-hk.json +202 -14
  151. package/dist/cdn/translations/customers-table/en.json +9 -0
  152. package/dist/cdn/translations/discount-builder/en.json +14 -0
  153. package/dist/cdn/translations/discount-card/en.json +8 -0
  154. package/dist/cdn/translations/email-template-form/en.json +25 -0
  155. package/dist/cdn/translations/error-entry-card/en.json +7 -0
  156. package/dist/cdn/translations/generate-codes-form/en.json +19 -0
  157. package/dist/cdn/translations/gift-card-card/en.json +9 -0
  158. package/dist/cdn/translations/gift-card-code-form/en.json +19 -0
  159. package/dist/cdn/translations/gift-card-codes-form/en.json +25 -0
  160. package/dist/cdn/translations/gift-card-form/en.json +335 -0
  161. package/dist/cdn/translations/item-card/en.json +9 -0
  162. package/dist/cdn/translations/item-form/en.json +411 -0
  163. package/dist/cdn/translations/item-option-form/en.json +43 -0
  164. package/dist/cdn/translations/pagination/en.json +7 -0
  165. package/dist/cdn/translations/payment-card/en.json +12 -0
  166. package/dist/cdn/translations/payment-method-card/en.json +13 -0
  167. package/dist/cdn/translations/query-builder/en.json +32 -0
  168. package/dist/cdn/translations/report-form/en.json +38 -0
  169. package/dist/cdn/translations/reports-table/en.json +21 -0
  170. package/dist/cdn/translations/shipment-card/en.json +470 -0
  171. package/dist/cdn/translations/sign-in-form/en.json +21 -0
  172. package/dist/cdn/translations/spinner/en.json +7 -0
  173. package/dist/cdn/translations/subscription-card/en.json +26 -0
  174. package/dist/cdn/translations/subscription-form/en.json +76 -0
  175. package/dist/cdn/translations/subscriptions-table/en.json +26 -0
  176. package/dist/cdn/translations/tax-card/en.json +11 -0
  177. package/dist/cdn/translations/tax-form/en.json +38 -0
  178. package/dist/cdn/translations/template-config-form/en.json +107 -0
  179. package/dist/cdn/translations/template-form/en.json +23 -0
  180. package/dist/cdn/translations/transaction/en.json +965 -0
  181. package/dist/cdn/translations/transaction-card/en.json +25 -0
  182. package/dist/cdn/translations/transactions-table/en.json +22 -0
  183. package/dist/cdn/translations/user-form/en.json +26 -0
  184. package/dist/cdn/translations/users-table/en.json +44 -0
  185. package/dist/cdn/translations/webhook-card/en.json +7 -0
  186. package/dist/cdn/translations/webhook-form/en.json +101 -0
  187. package/dist/cdn/translations/webhook-log-card/en.json +8 -0
  188. package/dist/cdn/translations/webhook-status-card/en.json +11 -0
  189. package/dist/elements/index.d.ts +1 -0
  190. package/dist/elements/index.js +2 -0
  191. package/dist/elements/index.js.map +1 -0
  192. package/dist/elements/internal/InternalAsyncComboBoxControl/InternalAsyncComboBoxControl.d.ts +22 -0
  193. package/dist/elements/internal/InternalAsyncComboBoxControl/InternalAsyncComboBoxControl.js +79 -0
  194. package/dist/elements/internal/InternalAsyncComboBoxControl/InternalAsyncComboBoxControl.js.map +1 -0
  195. package/dist/elements/internal/InternalAsyncComboBoxControl/index.d.ts +4 -0
  196. package/dist/elements/internal/InternalAsyncComboBoxControl/index.js +6 -0
  197. package/dist/elements/internal/InternalAsyncComboBoxControl/index.js.map +1 -0
  198. package/dist/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.d.ts +30 -0
  199. package/dist/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.js +131 -0
  200. package/dist/elements/internal/InternalAsyncDetailsControl/InternalAsyncDetailsControl.js.map +1 -0
  201. package/dist/elements/internal/InternalAsyncDetailsControl/index.d.ts +7 -0
  202. package/dist/elements/internal/InternalAsyncDetailsControl/index.js +9 -0
  203. package/dist/elements/internal/InternalAsyncDetailsControl/index.js.map +1 -0
  204. package/dist/elements/internal/InternalCard/InternalCard.d.ts +21 -0
  205. package/dist/elements/internal/InternalCard/InternalCard.js +53 -0
  206. package/dist/elements/internal/InternalCard/InternalCard.js.map +1 -0
  207. package/dist/elements/internal/InternalCard/index.d.ts +3 -0
  208. package/dist/elements/internal/InternalCard/index.js +5 -0
  209. package/dist/elements/internal/InternalCard/index.js.map +1 -0
  210. package/dist/elements/internal/InternalControl/InternalControl.d.ts +21 -0
  211. package/dist/elements/internal/InternalControl/InternalControl.js +53 -0
  212. package/dist/elements/internal/InternalControl/InternalControl.js.map +1 -0
  213. package/dist/elements/internal/InternalControl/index.d.ts +2 -0
  214. package/dist/elements/internal/InternalControl/index.js +4 -0
  215. package/dist/elements/internal/InternalControl/index.js.map +1 -0
  216. package/dist/elements/internal/InternalCreateControl/InternalCreateControl.d.ts +22 -0
  217. package/dist/elements/internal/InternalCreateControl/InternalCreateControl.js +60 -0
  218. package/dist/elements/internal/InternalCreateControl/InternalCreateControl.js.map +1 -0
  219. package/dist/elements/internal/InternalCreateControl/index.d.ts +5 -0
  220. package/dist/elements/internal/InternalCreateControl/index.js +7 -0
  221. package/dist/elements/internal/InternalCreateControl/index.js.map +1 -0
  222. package/dist/elements/internal/InternalDateControl/InternalDateControl.d.ts +14 -0
  223. package/dist/elements/internal/InternalDateControl/InternalDateControl.js +60 -0
  224. package/dist/elements/internal/InternalDateControl/InternalDateControl.js.map +1 -0
  225. package/dist/elements/internal/InternalDateControl/index.d.ts +4 -0
  226. package/dist/elements/internal/InternalDateControl/index.js +6 -0
  227. package/dist/elements/internal/InternalDateControl/index.js.map +1 -0
  228. package/dist/elements/internal/InternalDeleteControl/InternalDeleteControl.d.ts +15 -0
  229. package/dist/elements/internal/InternalDeleteControl/InternalDeleteControl.js +51 -0
  230. package/dist/elements/internal/InternalDeleteControl/InternalDeleteControl.js.map +1 -0
  231. package/dist/elements/internal/InternalDeleteControl/index.d.ts +6 -0
  232. package/dist/elements/internal/InternalDeleteControl/index.js +8 -0
  233. package/dist/elements/internal/InternalDeleteControl/index.js.map +1 -0
  234. package/dist/elements/internal/InternalDetails/InternalDetails.d.ts +22 -0
  235. package/dist/elements/internal/InternalDetails/InternalDetails.js +71 -0
  236. package/dist/elements/internal/InternalDetails/InternalDetails.js.map +1 -0
  237. package/dist/elements/internal/InternalDetails/index.d.ts +6 -0
  238. package/dist/elements/internal/InternalDetails/index.js +8 -0
  239. package/dist/elements/internal/InternalDetails/index.js.map +1 -0
  240. package/dist/elements/internal/InternalEditableControl/InternalEditableControl.d.ts +25 -0
  241. package/dist/elements/internal/InternalEditableControl/InternalEditableControl.js +78 -0
  242. package/dist/elements/internal/InternalEditableControl/InternalEditableControl.js.map +1 -0
  243. package/dist/elements/internal/InternalEditableControl/index.d.ts +3 -0
  244. package/dist/elements/internal/InternalEditableControl/index.js +5 -0
  245. package/dist/elements/internal/InternalEditableControl/index.js.map +1 -0
  246. package/dist/elements/internal/InternalForm/InternalForm.d.ts +11 -0
  247. package/dist/elements/internal/InternalForm/InternalForm.js +48 -0
  248. package/dist/elements/internal/InternalForm/InternalForm.js.map +1 -0
  249. package/dist/elements/internal/InternalForm/index.d.ts +6 -0
  250. package/dist/elements/internal/InternalForm/index.js +8 -0
  251. package/dist/elements/internal/InternalForm/index.js.map +1 -0
  252. package/dist/elements/internal/InternalForm/internal/InternalTimestampsControl/InternalTimestampsControl.d.ts +8 -0
  253. package/dist/elements/internal/InternalForm/internal/InternalTimestampsControl/InternalTimestampsControl.js +56 -0
  254. package/dist/elements/internal/InternalForm/internal/InternalTimestampsControl/InternalTimestampsControl.js.map +1 -0
  255. package/dist/elements/internal/InternalForm/internal/InternalTimestampsControl/index.d.ts +2 -0
  256. package/dist/elements/internal/InternalForm/internal/InternalTimestampsControl/index.js +4 -0
  257. package/dist/elements/internal/InternalForm/internal/InternalTimestampsControl/index.js.map +1 -0
  258. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.d.ts +14 -0
  259. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.js +115 -0
  260. package/dist/elements/internal/InternalFrequencyControl/InternalFrequencyControl.js.map +1 -0
  261. package/dist/elements/internal/InternalFrequencyControl/index.d.ts +6 -0
  262. package/dist/elements/internal/InternalFrequencyControl/index.js +8 -0
  263. package/dist/elements/internal/InternalFrequencyControl/index.js.map +1 -0
  264. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.d.ts +13 -0
  265. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js +41 -0
  266. package/dist/elements/internal/InternalIntegerControl/InternalIntegerControl.js.map +1 -0
  267. package/dist/elements/internal/InternalIntegerControl/index.d.ts +4 -0
  268. package/dist/elements/internal/InternalIntegerControl/index.js +6 -0
  269. package/dist/elements/internal/InternalIntegerControl/index.js.map +1 -0
  270. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.d.ts +13 -0
  271. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.js +41 -0
  272. package/dist/elements/internal/InternalNumberControl/InternalNumberControl.js.map +1 -0
  273. package/dist/elements/internal/InternalNumberControl/index.d.ts +4 -0
  274. package/dist/elements/internal/InternalNumberControl/index.js +6 -0
  275. package/dist/elements/internal/InternalNumberControl/index.js.map +1 -0
  276. package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.d.ts +17 -0
  277. package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js +51 -0
  278. package/dist/elements/internal/InternalRadioGroupControl/InternalRadioGroupControl.js.map +1 -0
  279. package/dist/elements/internal/InternalRadioGroupControl/index.d.ts +6 -0
  280. package/dist/elements/internal/InternalRadioGroupControl/index.js +8 -0
  281. package/dist/elements/internal/InternalRadioGroupControl/index.js.map +1 -0
  282. package/dist/elements/internal/InternalRadioGroupControl/types.d.ts +6 -0
  283. package/dist/elements/internal/InternalRadioGroupControl/types.js +2 -0
  284. package/dist/elements/internal/InternalRadioGroupControl/types.js.map +1 -0
  285. package/dist/elements/internal/InternalTextControl/InternalTextControl.d.ts +13 -0
  286. package/dist/elements/internal/InternalTextControl/InternalTextControl.js +40 -0
  287. package/dist/elements/internal/InternalTextControl/InternalTextControl.js.map +1 -0
  288. package/dist/elements/internal/InternalTextControl/index.d.ts +4 -0
  289. package/dist/elements/internal/InternalTextControl/index.js +6 -0
  290. package/dist/elements/internal/InternalTextControl/index.js.map +1 -0
  291. package/dist/elements/private/Choice/Choice.js +1 -0
  292. package/dist/elements/private/Choice/Choice.js.map +1 -1
  293. package/dist/elements/private/Dialog/Dialog.d.ts +4 -2
  294. package/dist/elements/private/Dialog/Dialog.js +3 -1
  295. package/dist/elements/private/Dialog/Dialog.js.map +1 -1
  296. package/dist/elements/private/EditableList/EditableList.d.ts +4 -2
  297. package/dist/elements/private/EditableList/EditableList.js +3 -1
  298. package/dist/elements/private/EditableList/EditableList.js.map +1 -1
  299. package/dist/elements/private/FrequencyInput/FrequencyInput.d.ts +7 -5
  300. package/dist/elements/private/FrequencyInput/FrequencyInput.js +8 -22
  301. package/dist/elements/private/FrequencyInput/FrequencyInput.js.map +1 -1
  302. package/dist/elements/public/AccessRecoveryForm/AccessRecoveryForm.js +1 -1
  303. package/dist/elements/public/AccessRecoveryForm/AccessRecoveryForm.js.map +1 -1
  304. package/dist/elements/public/ApiBrowser/ApiBrowser.d.ts +31 -0
  305. package/dist/elements/public/ApiBrowser/ApiBrowser.js +215 -0
  306. package/dist/elements/public/ApiBrowser/ApiBrowser.js.map +1 -0
  307. package/dist/elements/public/ApiBrowser/index.d.ts +9 -0
  308. package/dist/elements/public/ApiBrowser/index.js +11 -0
  309. package/dist/elements/public/ApiBrowser/index.js.map +1 -0
  310. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.d.ts +25 -0
  311. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.js +285 -0
  312. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/InternalApiBrowserResourceForm.js.map +1 -0
  313. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.d.ts +10 -0
  314. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.js +12 -0
  315. package/dist/elements/public/ApiBrowser/internal/InternalApiBrowserResourceForm/index.js.map +1 -0
  316. package/dist/elements/public/ApiBrowser/types.d.ts +10 -0
  317. package/dist/elements/public/ApiBrowser/types.js +2 -0
  318. package/dist/elements/public/ApiBrowser/types.js.map +1 -0
  319. package/dist/elements/public/AttributeCard/types.d.ts +3 -3
  320. package/dist/elements/public/AttributeCard/types.js.map +1 -1
  321. package/dist/elements/public/AttributeForm/AttributeForm.js +2 -1
  322. package/dist/elements/public/AttributeForm/AttributeForm.js.map +1 -1
  323. package/dist/elements/public/AttributeForm/types.d.ts +3 -3
  324. package/dist/elements/public/AttributeForm/types.js.map +1 -1
  325. package/dist/elements/public/CollectionPage/CollectionPage.d.ts +4 -3
  326. package/dist/elements/public/CollectionPage/CollectionPage.js +5 -3
  327. package/dist/elements/public/CollectionPage/CollectionPage.js.map +1 -1
  328. package/dist/elements/public/CollectionPage/types.d.ts +1 -0
  329. package/dist/elements/public/CollectionPage/types.js.map +1 -1
  330. package/dist/elements/public/CollectionPages/CollectionPages.d.ts +4 -2
  331. package/dist/elements/public/CollectionPages/CollectionPages.js +3 -1
  332. package/dist/elements/public/CollectionPages/CollectionPages.js.map +1 -1
  333. package/dist/elements/public/CopyToClipboard/CopyToClipboard.d.ts +22 -0
  334. package/dist/elements/public/CopyToClipboard/CopyToClipboard.js +121 -0
  335. package/dist/elements/public/CopyToClipboard/CopyToClipboard.js.map +1 -0
  336. package/dist/elements/public/CopyToClipboard/index.d.ts +5 -0
  337. package/dist/elements/public/CopyToClipboard/index.js +7 -0
  338. package/dist/elements/public/CopyToClipboard/index.js.map +1 -0
  339. package/dist/elements/public/CouponCard/CouponCard.js +2 -1
  340. package/dist/elements/public/CouponCard/CouponCard.js.map +1 -1
  341. package/dist/elements/public/CouponCodeForm/CouponCodeForm.js +5 -5
  342. package/dist/elements/public/CouponCodeForm/CouponCodeForm.js.map +1 -1
  343. package/dist/elements/public/CouponDetailCard/CouponDetailCard.d.ts +25 -0
  344. package/dist/elements/public/CouponDetailCard/CouponDetailCard.js +58 -0
  345. package/dist/elements/public/CouponDetailCard/CouponDetailCard.js.map +1 -0
  346. package/dist/elements/public/CouponDetailCard/index.d.ts +5 -0
  347. package/dist/elements/public/CouponDetailCard/index.js +7 -0
  348. package/dist/elements/public/CouponDetailCard/index.js.map +1 -0
  349. package/dist/elements/public/CouponDetailCard/types.d.ts +3 -0
  350. package/dist/elements/public/CouponDetailCard/types.js +2 -0
  351. package/dist/elements/public/CouponDetailCard/types.js.map +1 -0
  352. package/dist/elements/public/CouponForm/CouponForm.js +232 -196
  353. package/dist/elements/public/CouponForm/CouponForm.js.map +1 -1
  354. package/dist/elements/public/CouponForm/index.d.ts +1 -0
  355. package/dist/elements/public/CouponForm/index.js +1 -0
  356. package/dist/elements/public/CouponForm/index.js.map +1 -1
  357. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.d.ts +4 -3
  358. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.js +5 -4
  359. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPage.js.map +1 -1
  360. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.d.ts +3 -4
  361. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.js +3 -4
  362. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItem.js.map +1 -1
  363. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.d.ts +3 -4
  364. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.js +3 -2
  365. package/dist/elements/public/CouponForm/private/CategoryRestrictionsPageItemContent.js.map +1 -1
  366. package/dist/elements/public/CustomFieldForm/CustomFieldForm.js +2 -1
  367. package/dist/elements/public/CustomFieldForm/CustomFieldForm.js.map +1 -1
  368. package/dist/elements/public/Customer/Customer.js +1 -1
  369. package/dist/elements/public/Customer/Customer.js.map +1 -1
  370. package/dist/elements/public/CustomerApi/CustomerApi.d.ts +3 -1
  371. package/dist/elements/public/CustomerApi/CustomerApi.js +2 -1
  372. package/dist/elements/public/CustomerApi/CustomerApi.js.map +1 -1
  373. package/dist/elements/public/CustomerPortal/InternalCustomerPortalChangePassword.d.ts +3 -1
  374. package/dist/elements/public/CustomerPortal/InternalCustomerPortalChangePassword.js +2 -1
  375. package/dist/elements/public/CustomerPortal/InternalCustomerPortalChangePassword.js.map +1 -1
  376. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedInView.js +18 -5
  377. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedInView.js.map +1 -1
  378. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.d.ts +3 -1
  379. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.js +22 -7
  380. package/dist/elements/public/CustomerPortal/InternalCustomerPortalLoggedOutView.js.map +1 -1
  381. package/dist/elements/public/CustomerPortal/InternalCustomerPortalSubscriptions.d.ts +3 -1
  382. package/dist/elements/public/CustomerPortal/InternalCustomerPortalSubscriptions.js +4 -2
  383. package/dist/elements/public/CustomerPortal/InternalCustomerPortalSubscriptions.js.map +1 -1
  384. package/dist/elements/public/CustomerPortal/InternalCustomerPortalTransactions.d.ts +3 -1
  385. package/dist/elements/public/CustomerPortal/InternalCustomerPortalTransactions.js +2 -1
  386. package/dist/elements/public/CustomerPortal/InternalCustomerPortalTransactions.js.map +1 -1
  387. package/dist/elements/public/DiscountBuilder/DiscountBuilder.d.ts +40 -0
  388. package/dist/elements/public/DiscountBuilder/DiscountBuilder.js +342 -0
  389. package/dist/elements/public/DiscountBuilder/DiscountBuilder.js.map +1 -0
  390. package/dist/elements/public/DiscountBuilder/index.d.ts +3 -0
  391. package/dist/elements/public/DiscountBuilder/index.js +5 -0
  392. package/dist/elements/public/DiscountBuilder/index.js.map +1 -0
  393. package/dist/elements/public/DiscountBuilder/types.d.ts +32 -0
  394. package/dist/elements/public/DiscountBuilder/types.js +2 -0
  395. package/dist/elements/public/DiscountBuilder/types.js.map +1 -0
  396. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.d.ts +25 -0
  397. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.js +58 -0
  398. package/dist/elements/public/DiscountDetailCard/DiscountDetailCard.js.map +1 -0
  399. package/dist/elements/public/DiscountDetailCard/index.d.ts +5 -0
  400. package/dist/elements/public/DiscountDetailCard/index.js +7 -0
  401. package/dist/elements/public/DiscountDetailCard/index.js.map +1 -0
  402. package/dist/elements/public/DiscountDetailCard/types.d.ts +3 -0
  403. package/dist/elements/public/DiscountDetailCard/types.js +2 -0
  404. package/dist/elements/public/DiscountDetailCard/types.js.map +1 -0
  405. package/dist/elements/public/ErrorEntryCard/ErrorEntryCard.js +2 -1
  406. package/dist/elements/public/ErrorEntryCard/ErrorEntryCard.js.map +1 -1
  407. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.js +6 -6
  408. package/dist/elements/public/GiftCardCodeForm/GiftCardCodeForm.js.map +1 -1
  409. package/dist/elements/public/GiftCardForm/GiftCardForm.js +130 -99
  410. package/dist/elements/public/GiftCardForm/GiftCardForm.js.map +1 -1
  411. package/dist/elements/public/GiftCardForm/index.d.ts +1 -0
  412. package/dist/elements/public/GiftCardForm/index.js +1 -0
  413. package/dist/elements/public/GiftCardForm/index.js.map +1 -1
  414. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPage.d.ts +1 -1
  415. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPage.js +3 -3
  416. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPage.js.map +1 -1
  417. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItem.d.ts +1 -3
  418. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItem.js +2 -4
  419. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItem.js.map +1 -1
  420. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItemContent.d.ts +1 -3
  421. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItemContent.js +2 -2
  422. package/dist/elements/public/GiftCardForm/private/CategoryRestrictionsPageItemContent.js.map +1 -1
  423. package/dist/elements/public/I18n/I18n.d.ts +3 -1
  424. package/dist/elements/public/I18n/I18n.js +2 -1
  425. package/dist/elements/public/I18n/I18n.js.map +1 -1
  426. package/dist/elements/public/I18n/format/discount.js +3 -2
  427. package/dist/elements/public/I18n/format/discount.js.map +1 -1
  428. package/dist/elements/public/ItemCard/ItemCard.d.ts +16 -0
  429. package/dist/elements/public/ItemCard/ItemCard.js +142 -0
  430. package/dist/elements/public/ItemCard/ItemCard.js.map +1 -0
  431. package/dist/elements/public/ItemCard/index.d.ts +4 -0
  432. package/dist/elements/public/ItemCard/index.js +6 -0
  433. package/dist/elements/public/ItemCard/index.js.map +1 -0
  434. package/dist/elements/public/ItemCard/types.d.ts +5 -0
  435. package/dist/elements/public/ItemCard/types.js +2 -0
  436. package/dist/elements/public/ItemCard/types.js.map +1 -0
  437. package/dist/elements/public/ItemForm/ItemForm.d.ts +19 -0
  438. package/dist/elements/public/ItemForm/ItemForm.js +96 -0
  439. package/dist/elements/public/ItemForm/ItemForm.js.map +1 -0
  440. package/dist/elements/public/ItemForm/index.d.ts +19 -0
  441. package/dist/elements/public/ItemForm/index.js +21 -0
  442. package/dist/elements/public/ItemForm/index.js.map +1 -0
  443. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/InternalItemFormCartControl.d.ts +6 -0
  444. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/InternalItemFormCartControl.js +23 -0
  445. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/InternalItemFormCartControl.js.map +1 -0
  446. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.d.ts +6 -0
  447. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.js +8 -0
  448. package/dist/elements/public/ItemForm/internal/InternalItemFormCartControl/index.js.map +1 -0
  449. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/InternalItemFormInventoryControl.d.ts +6 -0
  450. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/InternalItemFormInventoryControl.js +31 -0
  451. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/InternalItemFormInventoryControl.js.map +1 -0
  452. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.d.ts +5 -0
  453. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.js +7 -0
  454. package/dist/elements/public/ItemForm/internal/InternalItemFormInventoryControl/index.js.map +1 -0
  455. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/InternalItemFormLineItemDiscountControl.d.ts +6 -0
  456. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/InternalItemFormLineItemDiscountControl.js +48 -0
  457. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/InternalItemFormLineItemDiscountControl.js.map +1 -0
  458. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.d.ts +7 -0
  459. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.js +9 -0
  460. package/dist/elements/public/ItemForm/internal/InternalItemFormLineItemDiscountControl/index.js.map +1 -0
  461. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/InternalItemFormShippingControl.d.ts +6 -0
  462. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/InternalItemFormShippingControl.js +32 -0
  463. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/InternalItemFormShippingControl.js.map +1 -0
  464. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.d.ts +5 -0
  465. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.js +7 -0
  466. package/dist/elements/public/ItemForm/internal/InternalItemFormShippingControl/index.js.map +1 -0
  467. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/InternalItemFormSubscriptionControl.d.ts +6 -0
  468. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/InternalItemFormSubscriptionControl.js +75 -0
  469. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/InternalItemFormSubscriptionControl.js.map +1 -0
  470. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.d.ts +8 -0
  471. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.js +10 -0
  472. package/dist/elements/public/ItemForm/internal/InternalItemFormSubscriptionControl/index.js.map +1 -0
  473. package/dist/elements/public/ItemForm/types.d.ts +3 -0
  474. package/dist/elements/public/ItemForm/types.js +2 -0
  475. package/dist/elements/public/ItemForm/types.js.map +1 -0
  476. package/dist/elements/public/ItemOptionCard/ItemOptionCard.d.ts +25 -0
  477. package/dist/elements/public/ItemOptionCard/ItemOptionCard.js +56 -0
  478. package/dist/elements/public/ItemOptionCard/ItemOptionCard.js.map +1 -0
  479. package/dist/elements/public/ItemOptionCard/index.d.ts +6 -0
  480. package/dist/elements/public/ItemOptionCard/index.js +8 -0
  481. package/dist/elements/public/ItemOptionCard/index.js.map +1 -0
  482. package/dist/elements/public/ItemOptionCard/types.d.ts +11 -0
  483. package/dist/elements/public/ItemOptionCard/types.js +2 -0
  484. package/dist/elements/public/ItemOptionCard/types.js.map +1 -0
  485. package/dist/elements/public/ItemOptionForm/ItemOptionForm.d.ts +30 -0
  486. package/dist/elements/public/ItemOptionForm/ItemOptionForm.js +41 -0
  487. package/dist/elements/public/ItemOptionForm/ItemOptionForm.js.map +1 -0
  488. package/dist/elements/public/ItemOptionForm/index.d.ts +5 -0
  489. package/dist/elements/public/ItemOptionForm/index.js +7 -0
  490. package/dist/elements/public/ItemOptionForm/index.js.map +1 -0
  491. package/dist/elements/public/ItemOptionForm/types.d.ts +3 -0
  492. package/dist/elements/public/ItemOptionForm/types.js +2 -0
  493. package/dist/elements/public/ItemOptionForm/types.js.map +1 -0
  494. package/dist/elements/public/NucleonElement/NucleonElement.d.ts +7 -1
  495. package/dist/elements/public/NucleonElement/NucleonElement.js +13 -1
  496. package/dist/elements/public/NucleonElement/NucleonElement.js.map +1 -1
  497. package/dist/elements/public/Pagination/Pagination.d.ts +3 -1
  498. package/dist/elements/public/Pagination/Pagination.js +7 -2
  499. package/dist/elements/public/Pagination/Pagination.js.map +1 -1
  500. package/dist/elements/public/PaymentCard/PaymentCard.js +1 -1
  501. package/dist/elements/public/PaymentCard/PaymentCard.js.map +1 -1
  502. package/dist/elements/public/QueryBuilder/QueryBuilder.d.ts +3 -1
  503. package/dist/elements/public/QueryBuilder/QueryBuilder.js +2 -1
  504. package/dist/elements/public/QueryBuilder/QueryBuilder.js.map +1 -1
  505. package/dist/elements/public/ReportForm/ReportForm.d.ts +48 -0
  506. package/dist/elements/public/ReportForm/ReportForm.js +391 -0
  507. package/dist/elements/public/ReportForm/ReportForm.js.map +1 -0
  508. package/dist/elements/public/ReportForm/index.d.ts +11 -0
  509. package/dist/elements/public/ReportForm/index.js +13 -0
  510. package/dist/elements/public/ReportForm/index.js.map +1 -0
  511. package/dist/elements/public/ReportForm/types.d.ts +17 -0
  512. package/dist/elements/public/ReportForm/types.js +2 -0
  513. package/dist/elements/public/ReportForm/types.js.map +1 -0
  514. package/dist/elements/public/ReportForm/utils.d.ts +16 -0
  515. package/dist/elements/public/ReportForm/utils.js +73 -0
  516. package/dist/elements/public/ReportForm/utils.js.map +1 -0
  517. package/dist/elements/public/ReportsTable/ReportsTable.d.ts +21 -0
  518. package/dist/elements/public/ReportsTable/ReportsTable.js +101 -0
  519. package/dist/elements/public/ReportsTable/ReportsTable.js.map +1 -0
  520. package/dist/elements/public/ReportsTable/index.d.ts +4 -0
  521. package/dist/elements/public/ReportsTable/index.js +6 -0
  522. package/dist/elements/public/ReportsTable/index.js.map +1 -0
  523. package/dist/elements/public/ReportsTable/types.d.ts +3 -0
  524. package/dist/elements/public/ReportsTable/types.js +2 -0
  525. package/dist/elements/public/ReportsTable/types.js.map +1 -0
  526. package/dist/elements/public/ShipmentCard/ShipmentCard.d.ts +22 -0
  527. package/dist/elements/public/ShipmentCard/ShipmentCard.js +117 -0
  528. package/dist/elements/public/ShipmentCard/ShipmentCard.js.map +1 -0
  529. package/dist/elements/public/ShipmentCard/index.d.ts +7 -0
  530. package/dist/elements/public/ShipmentCard/index.js +9 -0
  531. package/dist/elements/public/ShipmentCard/index.js.map +1 -0
  532. package/dist/elements/public/ShipmentCard/types.d.ts +18 -0
  533. package/dist/elements/public/ShipmentCard/types.js +2 -0
  534. package/dist/elements/public/ShipmentCard/types.js.map +1 -0
  535. package/dist/elements/public/SignInForm/SignInForm.js +1 -1
  536. package/dist/elements/public/SignInForm/SignInForm.js.map +1 -1
  537. package/dist/elements/public/Spinner/Spinner.d.ts +4 -2
  538. package/dist/elements/public/Spinner/Spinner.js +3 -1
  539. package/dist/elements/public/Spinner/Spinner.js.map +1 -1
  540. package/dist/elements/public/SubscriptionForm/SubscriptionForm.js +1 -1
  541. package/dist/elements/public/SubscriptionForm/SubscriptionForm.js.map +1 -1
  542. package/dist/elements/public/SwipeActions/SwipeActions.d.ts +13 -0
  543. package/dist/elements/public/SwipeActions/SwipeActions.js +116 -0
  544. package/dist/elements/public/SwipeActions/SwipeActions.js.map +1 -0
  545. package/dist/elements/public/SwipeActions/index.d.ts +2 -0
  546. package/dist/elements/public/SwipeActions/index.js +4 -0
  547. package/dist/elements/public/SwipeActions/index.js.map +1 -0
  548. package/dist/elements/public/TaxForm/TaxForm.js +16 -14
  549. package/dist/elements/public/TaxForm/TaxForm.js.map +1 -1
  550. package/dist/elements/public/TemplateForm/TemplateForm.js +1 -1
  551. package/dist/elements/public/TemplateForm/TemplateForm.js.map +1 -1
  552. package/dist/elements/public/Transaction/Transaction.d.ts +13 -0
  553. package/dist/elements/public/Transaction/Transaction.js +101 -0
  554. package/dist/elements/public/Transaction/Transaction.js.map +1 -0
  555. package/dist/elements/public/Transaction/index.d.ts +19 -0
  556. package/dist/elements/public/Transaction/index.js +21 -0
  557. package/dist/elements/public/Transaction/index.js.map +1 -0
  558. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/InternalTransactionActionsControl.d.ts +9 -0
  559. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/InternalTransactionActionsControl.js +69 -0
  560. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/InternalTransactionActionsControl.js.map +1 -0
  561. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/index.d.ts +4 -0
  562. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/index.js +6 -0
  563. package/dist/elements/public/Transaction/internal/InternalTransactionActionsControl/index.js.map +1 -0
  564. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/InternalTransactionCustomerControl.d.ts +5 -0
  565. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/InternalTransactionCustomerControl.js +36 -0
  566. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/InternalTransactionCustomerControl.js.map +1 -0
  567. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.d.ts +7 -0
  568. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.js +9 -0
  569. package/dist/elements/public/Transaction/internal/InternalTransactionCustomerControl/index.js.map +1 -0
  570. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/InternalTransactionPostActionControl.d.ts +11 -0
  571. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/InternalTransactionPostActionControl.js +61 -0
  572. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/InternalTransactionPostActionControl.js.map +1 -0
  573. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/index.d.ts +6 -0
  574. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/index.js +8 -0
  575. package/dist/elements/public/Transaction/internal/InternalTransactionPostActionControl/index.js.map +1 -0
  576. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/InternalTransactionSummaryControl.d.ts +8 -0
  577. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/InternalTransactionSummaryControl.js +77 -0
  578. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/InternalTransactionSummaryControl.js.map +1 -0
  579. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/index.d.ts +4 -0
  580. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/index.js +6 -0
  581. package/dist/elements/public/Transaction/internal/InternalTransactionSummaryControl/index.js.map +1 -0
  582. package/dist/elements/public/Transaction/types.d.ts +3 -0
  583. package/dist/elements/public/Transaction/types.js +2 -0
  584. package/dist/elements/public/Transaction/types.js.map +1 -0
  585. package/dist/elements/public/UserForm/UserForm.js +2 -1
  586. package/dist/elements/public/UserForm/UserForm.js.map +1 -1
  587. package/dist/elements/public/UsersTable/UsersTable.d.ts +5 -1
  588. package/dist/elements/public/UsersTable/UsersTable.js +2 -1
  589. package/dist/elements/public/UsersTable/UsersTable.js.map +1 -1
  590. package/dist/elements/public/WebhookCard/WebhookCard.d.ts +16 -0
  591. package/dist/elements/public/WebhookCard/WebhookCard.js +36 -0
  592. package/dist/elements/public/WebhookCard/WebhookCard.js.map +1 -0
  593. package/dist/elements/public/WebhookCard/index.d.ts +5 -0
  594. package/dist/elements/public/WebhookCard/index.js +7 -0
  595. package/dist/elements/public/WebhookCard/index.js.map +1 -0
  596. package/dist/elements/public/WebhookCard/types.d.ts +3 -0
  597. package/dist/elements/public/WebhookCard/types.js +2 -0
  598. package/dist/elements/public/WebhookCard/types.js.map +1 -0
  599. package/dist/elements/public/WebhookForm/WebhookForm.d.ts +47 -0
  600. package/dist/elements/public/WebhookForm/WebhookForm.js +101 -0
  601. package/dist/elements/public/WebhookForm/WebhookForm.js.map +1 -0
  602. package/dist/elements/public/WebhookForm/index.d.ts +8 -0
  603. package/dist/elements/public/WebhookForm/index.js +10 -0
  604. package/dist/elements/public/WebhookForm/index.js.map +1 -0
  605. package/dist/elements/public/WebhookForm/types.d.ts +3 -0
  606. package/dist/elements/public/WebhookForm/types.js +2 -0
  607. package/dist/elements/public/WebhookForm/types.js.map +1 -0
  608. package/dist/elements/public/WebhookLogCard/WebhookLogCard.d.ts +16 -0
  609. package/dist/elements/public/WebhookLogCard/WebhookLogCard.js +28 -0
  610. package/dist/elements/public/WebhookLogCard/WebhookLogCard.js.map +1 -0
  611. package/dist/elements/public/WebhookLogCard/index.d.ts +4 -0
  612. package/dist/elements/public/WebhookLogCard/index.js +6 -0
  613. package/dist/elements/public/WebhookLogCard/index.js.map +1 -0
  614. package/dist/elements/public/WebhookLogCard/types.d.ts +3 -0
  615. package/dist/elements/public/WebhookLogCard/types.js +2 -0
  616. package/dist/elements/public/WebhookLogCard/types.js.map +1 -0
  617. package/dist/elements/public/WebhookStatusCard/WebhookStatusCard.d.ts +16 -0
  618. package/dist/elements/public/WebhookStatusCard/WebhookStatusCard.js +41 -0
  619. package/dist/elements/public/WebhookStatusCard/WebhookStatusCard.js.map +1 -0
  620. package/dist/elements/public/WebhookStatusCard/index.d.ts +4 -0
  621. package/dist/elements/public/WebhookStatusCard/index.js +6 -0
  622. package/dist/elements/public/WebhookStatusCard/index.js.map +1 -0
  623. package/dist/elements/public/WebhookStatusCard/types.d.ts +3 -0
  624. package/dist/elements/public/WebhookStatusCard/types.js +2 -0
  625. package/dist/elements/public/WebhookStatusCard/types.js.map +1 -0
  626. package/dist/elements/public/index.d.ts +18 -0
  627. package/dist/elements/public/index.defined.d.ts +18 -0
  628. package/dist/elements/public/index.defined.js +18 -0
  629. package/dist/elements/public/index.defined.js.map +1 -1
  630. package/dist/elements/public/index.js +18 -0
  631. package/dist/elements/public/index.js.map +1 -1
  632. package/dist/mixins/configurable.d.ts +5 -3
  633. package/dist/mixins/configurable.js +39 -4
  634. package/dist/mixins/configurable.js.map +1 -1
  635. package/dist/mixins/inferrable.d.ts +15 -0
  636. package/dist/mixins/inferrable.js +67 -0
  637. package/dist/mixins/inferrable.js.map +1 -0
  638. package/dist/mixins/themeable.js +6836 -13
  639. package/dist/mixins/themeable.js.map +1 -1
  640. package/dist/mixins/translatable.d.ts +3 -1
  641. package/dist/mixins/translatable.js +17 -3
  642. package/dist/mixins/translatable.js.map +1 -1
  643. package/package.json +3 -3
  644. package/dist/cdn/shared-02945b27.js +0 -1
  645. package/dist/cdn/shared-07049bfe.js +0 -1
  646. package/dist/cdn/shared-09069d7c.js +0 -1
  647. package/dist/cdn/shared-11708514.js +0 -1
  648. package/dist/cdn/shared-21419f10.js +0 -1
  649. package/dist/cdn/shared-253e59d2.js +0 -1
  650. package/dist/cdn/shared-39e3ae67.js +0 -1
  651. package/dist/cdn/shared-63eaded9.js +0 -159
  652. package/dist/cdn/shared-66633ff7.js +0 -1
  653. package/dist/cdn/shared-805d18a2.js +0 -1
  654. package/dist/cdn/shared-8b20bc23.js +0 -12
  655. package/dist/cdn/shared-a23cf7c8.js +0 -1
  656. package/dist/cdn/shared-a7b6feb2.js +0 -1
  657. package/dist/cdn/shared-b5754a42.js +0 -1
  658. package/dist/cdn/shared-c5de42f7.js +0 -1
  659. package/dist/cdn/shared-dcc9c325.js +0 -1
  660. package/dist/cdn/shared-df730f90.js +0 -1
  661. package/dist/cdn/shared-e209cb55.js +0 -1
  662. package/dist/cdn/shared-e68b9c83.js +0 -1
  663. package/dist/cdn/shared-ff79f3f9.js +0 -230
  664. package/dist/cdn/translations/shared/de.json +0 -271
  665. package/dist/cdn/translations/shared/en.json +0 -557
  666. package/dist/cdn/translations/shared/es.json +0 -272
  667. package/dist/cdn/translations/shared/zh-hk.json +0 -179
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorEntryCard.js","sourceRoot":"","sources":["../../../../src/elements/public/ErrorEntryCard/ErrorEntryCard.ts"],"names":[],"mappings":"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","sourcesContent":["import { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport { ScopedElementsMap, ScopedElementsMixin } from '@open-wc/scoped-elements';\n\nimport { Data } from './types';\nimport { DataList } from './DataList';\nimport { Group } from '../../private/Group/Group';\nimport { NucleonElement } from '../NucleonElement/index';\nimport { ResourceViewer } from './ResourceViewer';\nimport { ThemeableMixin } from '../../../mixins/themeable';\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { classMap } from '../../../utils/class-map';\nimport { html } from 'lit-html';\n\nconst NS = 'error-entry-card';\nconst Base = TranslatableMixin(ThemeableMixin(ScopedElementsMixin(NucleonElement)), NS);\n\n/**\n * Displays an ErrorEntry from the Log of FoxyAPI.\n *\n * @element foxy-error-entry-card\n */\nexport class ErrorEntryCard extends Base<Data> {\n static get scopedElements(): ScopedElementsMap {\n return {\n 'x-resource-viewer': ResourceViewer,\n 'foxy-spinner': customElements.get('foxy-spinner'),\n 'x-data-list': DataList,\n 'iron-icon': customElements.get('iron-icon'),\n 'foxy-i18n': customElements.get('foxy-i18n'),\n 'x-group': Group,\n };\n }\n\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n open: { type: Boolean, reflect: true },\n };\n }\n\n /**\n * If true, displays the error details.\n * Additionally, sets `form.hide_error` to `true` and submits changes on first view.\n */\n open = false;\n\n render(): TemplateResult {\n const data = this.data;\n const isBusy = this.in('busy');\n\n if (data) {\n const { hide_error } = data;\n const { open } = this;\n\n return html`\n <details\n aria-busy=${isBusy}\n aria-live=\"polite\"\n class=\"text-body w-full\"\n ?open=${open}\n @toggle=${this.__handleToggle}\n >\n <summary\n class=\"rounded-s ring-offset-4 ring-offset-base ring-primary-50 focus-outline-none focus-ring-2\"\n >\n <div\n style=\"padding-left: calc(var(--lumo-space-xs) + var(--lumo-space-s) - 1px)\"\n class=${classMap({\n 'border-l-2 leading-s relative cursor-pointer': true,\n 'border-contrast': hide_error && !open,\n 'border-primary': !hide_error,\n 'border-error': hide_error && open,\n 'h-l': !open,\n })}\n >\n ${this.__renderSummary(data)}\n </div>\n </summary>\n\n ${open ? this.__renderDetails(data) : ''}\n </details>\n `;\n } else {\n return html`\n <div\n aria-busy=${isBusy}\n aria-live=\"polite\"\n style=\"padding-left: calc(var(--lumo-space-xs) + var(--lumo-space-s) - 1px)\"\n class=\"flex items-center justify-center border-l-2 leading-s relative border-contrast-10 h-l\"\n >\n <foxy-spinner\n data-testid=\"spinner\"\n layout=\"horizontal\"\n state=${isBusy ? 'busy' : this.in('fail') ? 'error' : 'empty'}\n lang=${this.lang}\n ns=${this.ns}\n >\n </foxy-spinner>\n </div>\n `;\n }\n }\n\n private __renderGetOrPostValues(getValues: string, postValues: string) {\n const values = getValues || postValues;\n const params = new URLSearchParams(this.__decodeHtml(values));\n const method = getValues ? 'GET' : 'POST';\n\n return html`\n <div class=\"relative leading-xs pt-s\">\n <div class=\"absolute font-semibold right-0 text-tertiary text-xs top-0 mt-s\">${method}</div>\n <x-data-list data=${JSON.stringify(Array.from(params.entries()))}></x-data-list>\n </div>\n `;\n }\n\n private __renderReferrer(referrer: string) {\n return html`\n <span class=\"text-secondary\">Navigated from</span>\n <a\n target=\"_blank\"\n class=\"font-semibold text-primary hover-underline\"\n href=${referrer}\n rel=\"nofollow noopener noreferrer\"\n >\n ${referrer}\n </a>\n `;\n }\n\n private __renderSummary(data: Data) {\n return html`\n <div class=\"text-s absolute right-0 top-0 text-tertiary\">\n <iron-icon icon=\"icons:expand-${this.open ? 'less' : 'more'}\"></iron-icon>\n </div>\n\n <div class=\"text-s mb-xs ${data.hide_error ? 'text-error' : 'text-primary'}\">\n <foxy-i18n\n options=${JSON.stringify({ value: data.date_created })}\n lang=${this.lang}\n key=\"date\"\n ns=${this.ns}\n >\n </foxy-i18n>\n\n <foxy-i18n\n options=${JSON.stringify({ value: data.date_created })}\n lang=${this.lang}\n key=\"time\"\n ns=${this.ns}\n >\n </foxy-i18n>\n </div>\n\n <p class=\"${this.open ? '' : 'truncate'} overflow-hidden font-medium\">\n ${data.error_message}\n </p>\n `;\n }\n\n private __renderDetails(data: Data) {\n return html`\n <div class=\"space-y-m pt-m\">\n <x-group frame>\n <foxy-i18n slot=\"header\" lang=${this.lang} key=\"request\" ns=${this.ns}></foxy-i18n>\n\n <div class=\"mx-xs p-s text-s divide-y divide-contrast-10 space-y-s\">\n <p>\n <span class=\"block font-semibold\">${data.url}</span>\n ${data.referrer ? this.__renderReferrer(data.referrer) : ''}\n </p>\n\n ${data.get_values || data.post_values\n ? this.__renderGetOrPostValues(data.get_values, data.post_values)\n : ''}\n </div>\n </x-group>\n\n <x-group frame>\n <foxy-i18n slot=\"header\" lang=${this.lang} key=\"client\" ns=${this.ns}></foxy-i18n>\n\n <div class=\"text-s flex flex-col mx-xs p-s\">\n <span class=\"font-semibold\">\n ${data.ip_address}\n ${data.ip_country\n ? html`<span class=\"text-tertiary\"> • </span>${data.ip_country}`\n : ''}\n </span>\n\n ${data.user_agent ? html`<span class=\"text-secondary\">${data.user_agent}</span>` : ''}\n </div>\n </x-group>\n\n ${Object.entries(data._links).map(([curie, link]) => {\n if (['self', 'fx:store', 'curies'].includes(curie)) return '';\n\n return html`\n <x-group frame>\n <foxy-i18n slot=\"header\" lang=${this.lang} key=${curie.substr(3)} ns=${this.ns}>\n </foxy-i18n>\n\n <x-resource-viewer\n class=\"p-s mx-xs\"\n href=${link.href}\n lang=${this.lang}\n ns=${this.ns}\n >\n </x-resource-viewer>\n </x-group>\n `;\n })}\n </div>\n `;\n }\n\n private __handleToggle(event: Event) {\n const details = event.target as HTMLDetailsElement;\n\n if (details.open && this.data?.hide_error === false) {\n this.edit({ hide_error: true });\n this.submit();\n }\n\n this.open = details.open;\n }\n\n private __decodeHtml(html: string) {\n const areaElement = document.createElement('textarea');\n areaElement.innerHTML = html;\n return areaElement.value;\n }\n}\n"]}
1
+ {"version":3,"file":"ErrorEntryCard.js","sourceRoot":"","sources":["../../../../src/elements/public/ErrorEntryCard/ErrorEntryCard.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGlF,OAAO,EAAE,QAAQ,EAAE,sBAAmB;AACtC,OAAO,EAAE,KAAK,EAAE,qCAAkC;AAClD,OAAO,EAAE,cAAc,EAAE,mCAAgC;AACzD,OAAO,EAAE,cAAc,EAAE,4BAAyB;AAClD,OAAO,EAAE,cAAc,EAAE,qCAAkC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,wCAAqC;AACjE,OAAO,EAAE,QAAQ,EAAE,oCAAiC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,MAAM,EAAE,GAAG,kBAAkB,CAAC;AAC9B,MAAM,IAAI,GAAG,iBAAiB,CAAC,cAAc,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAExF;;;;GAIG;AACH,MAAM,OAAO,cAAe,SAAQ,IAAU;IAA9C;;QAmBE;;;WAGG;QACH,SAAI,GAAG,KAAK,CAAC;IA2Lf,CAAC;IAjNC,MAAM,KAAK,cAAc;QACvB,OAAO;YACL,mBAAmB,EAAE,cAAc;YACnC,cAAc,EAAE,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC;YAClD,aAAa,EAAE,QAAQ;YACvB,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC;YAC5C,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC;YAC5C,SAAS,EAAE,KAAK;SACjB,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,UAAU;QACnB,OAAO;YACL,GAAG,KAAK,CAAC,UAAU;YACnB,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;SACvC,CAAC;IACJ,CAAC;IAQD,MAAM;;QACJ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAE/B,IAAI,IAAI,EAAE;YACR,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;YAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;YAEtB,OAAO,IAAI,CAAA;;sBAEK,MAAM;;;kBAGV,IAAI;oBACF,IAAI,CAAC,cAAc;;;;;;;sBAOjB,QAAQ,CAAC;gBACf,8CAA8C,EAAE,IAAI;gBACpD,iBAAiB,EAAE,UAAU,IAAI,CAAC,IAAI;gBACtC,gBAAgB,EAAE,CAAC,UAAU;gBAC7B,cAAc,EAAE,UAAU,IAAI,IAAI;gBAClC,KAAK,EAAE,CAAC,IAAI;aACb,CAAC;;gBAEA,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;;;;YAI9B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;;OAE3C,CAAC;SACH;aAAM;YACL,OAAO,IAAI,CAAA;;sBAEK,MAAM;;;;;;;;oBAQR,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;mBACtD,IAAI,CAAC,IAAI;kBACV,IAAI,CAAC,EAAE,IAAI,YAAA,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,0CAAE,SAAS,mCAAI,EAAE;;;;OAIzE,CAAC;SACH;IACH,CAAC;IAEO,uBAAuB,CAAC,SAAiB,EAAE,UAAkB;QACnE,MAAM,MAAM,GAAG,SAAS,IAAI,UAAU,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAE1C,OAAO,IAAI,CAAA;;uFAEwE,MAAM;4BACjE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;;KAEnE,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,QAAgB;QACvC,OAAO,IAAI,CAAA;;;;;eAKA,QAAQ;;;UAGb,QAAQ;;KAEb,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,IAAU;QAChC,OAAO,IAAI,CAAA;;wCAEyB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;;;iCAGlC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc;;oBAE5D,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;iBAC/C,IAAI,CAAC,IAAI;;eAEX,IAAI,CAAC,EAAE;;;;;oBAKF,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;iBAC/C,IAAI,CAAC,IAAI;;eAEX,IAAI,CAAC,EAAE;;;;;kBAKJ,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU;UACnC,IAAI,CAAC,aAAa;;KAEvB,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,IAAU;QAChC,OAAO,IAAI,CAAA;;;0CAG2B,IAAI,CAAC,IAAI,qBAAqB,IAAI,CAAC,EAAE;;;;kDAI7B,IAAI,CAAC,GAAG;gBAC1C,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;;;cAG3D,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW;YACnC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC;YACjE,CAAC,CAAC,EAAE;;;;;0CAKwB,IAAI,CAAC,IAAI,oBAAoB,IAAI,CAAC,EAAE;;;;gBAI9D,IAAI,CAAC,UAAU;gBACf,IAAI,CAAC,UAAU;YACf,CAAC,CAAC,IAAI,CAAA,yCAAyC,IAAI,CAAC,UAAU,EAAE;YAChE,CAAC,CAAC,EAAE;;;cAGN,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA,gCAAgC,IAAI,CAAC,UAAU,SAAS,CAAC,CAAC,CAAC,EAAE;;;;UAIvF,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE;YAClD,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAC;YAE9D,OAAO,IAAI,CAAA;;8CAEyB,IAAI,CAAC,IAAI,QAAQ,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,EAAE;;;;;uBAKrE,IAAI,CAAC,IAAI;uBACT,IAAI,CAAC,IAAI;qBACX,IAAI,CAAC,EAAE;;;;WAIjB,CAAC;QACJ,CAAC,CAAC;;KAEL,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,KAAY;;QACjC,MAAM,OAAO,GAAG,KAAK,CAAC,MAA4B,CAAC;QAEnD,IAAI,OAAO,CAAC,IAAI,IAAI,OAAA,IAAI,CAAC,IAAI,0CAAE,UAAU,MAAK,KAAK,EAAE;YACnD,IAAI,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM,EAAE,CAAC;SACf;QAED,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAEO,YAAY,CAAC,IAAY;QAC/B,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACvD,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;QAC7B,OAAO,WAAW,CAAC,KAAK,CAAC;IAC3B,CAAC;CACF","sourcesContent":["import { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport { ScopedElementsMap, ScopedElementsMixin } from '@open-wc/scoped-elements';\n\nimport { Data } from './types';\nimport { DataList } from './DataList';\nimport { Group } from '../../private/Group/Group';\nimport { NucleonElement } from '../NucleonElement/index';\nimport { ResourceViewer } from './ResourceViewer';\nimport { ThemeableMixin } from '../../../mixins/themeable';\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { classMap } from '../../../utils/class-map';\nimport { html } from 'lit-html';\n\nconst NS = 'error-entry-card';\nconst Base = TranslatableMixin(ThemeableMixin(ScopedElementsMixin(NucleonElement)), NS);\n\n/**\n * Displays an ErrorEntry from the Log of FoxyAPI.\n *\n * @element foxy-error-entry-card\n */\nexport class ErrorEntryCard extends Base<Data> {\n static get scopedElements(): ScopedElementsMap {\n return {\n 'x-resource-viewer': ResourceViewer,\n 'foxy-spinner': customElements.get('foxy-spinner'),\n 'x-data-list': DataList,\n 'iron-icon': customElements.get('iron-icon'),\n 'foxy-i18n': customElements.get('foxy-i18n'),\n 'x-group': Group,\n };\n }\n\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n open: { type: Boolean, reflect: true },\n };\n }\n\n /**\n * If true, displays the error details.\n * Additionally, sets `form.hide_error` to `true` and submits changes on first view.\n */\n open = false;\n\n render(): TemplateResult {\n const data = this.data;\n const isBusy = this.in('busy');\n\n if (data) {\n const { hide_error } = data;\n const { open } = this;\n\n return html`\n <details\n aria-busy=${isBusy}\n aria-live=\"polite\"\n class=\"text-body w-full\"\n ?open=${open}\n @toggle=${this.__handleToggle}\n >\n <summary\n class=\"rounded-s ring-offset-4 ring-offset-base ring-primary-50 focus-outline-none focus-ring-2\"\n >\n <div\n style=\"padding-left: calc(var(--lumo-space-xs) + var(--lumo-space-s) - 1px)\"\n class=${classMap({\n 'border-l-2 leading-s relative cursor-pointer': true,\n 'border-contrast': hide_error && !open,\n 'border-primary': !hide_error,\n 'border-error': hide_error && open,\n 'h-l': !open,\n })}\n >\n ${this.__renderSummary(data)}\n </div>\n </summary>\n\n ${open ? this.__renderDetails(data) : ''}\n </details>\n `;\n } else {\n return html`\n <div\n aria-busy=${isBusy}\n aria-live=\"polite\"\n style=\"padding-left: calc(var(--lumo-space-xs) + var(--lumo-space-s) - 1px)\"\n class=\"flex items-center justify-center border-l-2 leading-s relative border-contrast-10 h-l\"\n >\n <foxy-spinner\n data-testid=\"spinner\"\n layout=\"horizontal\"\n state=${isBusy ? 'busy' : this.in('fail') ? 'error' : 'empty'}\n lang=${this.lang}\n ns=\"${this.ns} ${customElements.get('foxy-spinner')?.defaultNS ?? ''}\"\n >\n </foxy-spinner>\n </div>\n `;\n }\n }\n\n private __renderGetOrPostValues(getValues: string, postValues: string) {\n const values = getValues || postValues;\n const params = new URLSearchParams(this.__decodeHtml(values));\n const method = getValues ? 'GET' : 'POST';\n\n return html`\n <div class=\"relative leading-xs pt-s\">\n <div class=\"absolute font-semibold right-0 text-tertiary text-xs top-0 mt-s\">${method}</div>\n <x-data-list data=${JSON.stringify(Array.from(params.entries()))}></x-data-list>\n </div>\n `;\n }\n\n private __renderReferrer(referrer: string) {\n return html`\n <span class=\"text-secondary\">Navigated from</span>\n <a\n target=\"_blank\"\n class=\"font-semibold text-primary hover-underline\"\n href=${referrer}\n rel=\"nofollow noopener noreferrer\"\n >\n ${referrer}\n </a>\n `;\n }\n\n private __renderSummary(data: Data) {\n return html`\n <div class=\"text-s absolute right-0 top-0 text-tertiary\">\n <iron-icon icon=\"icons:expand-${this.open ? 'less' : 'more'}\"></iron-icon>\n </div>\n\n <div class=\"text-s mb-xs ${data.hide_error ? 'text-error' : 'text-primary'}\">\n <foxy-i18n\n options=${JSON.stringify({ value: data.date_created })}\n lang=${this.lang}\n key=\"date\"\n ns=${this.ns}\n >\n </foxy-i18n>\n\n <foxy-i18n\n options=${JSON.stringify({ value: data.date_created })}\n lang=${this.lang}\n key=\"time\"\n ns=${this.ns}\n >\n </foxy-i18n>\n </div>\n\n <p class=\"${this.open ? '' : 'truncate'} overflow-hidden font-medium\">\n ${data.error_message}\n </p>\n `;\n }\n\n private __renderDetails(data: Data) {\n return html`\n <div class=\"space-y-m pt-m\">\n <x-group frame>\n <foxy-i18n slot=\"header\" lang=${this.lang} key=\"request\" ns=${this.ns}></foxy-i18n>\n\n <div class=\"mx-xs p-s text-s divide-y divide-contrast-10 space-y-s\">\n <p>\n <span class=\"block font-semibold\">${data.url}</span>\n ${data.referrer ? this.__renderReferrer(data.referrer) : ''}\n </p>\n\n ${data.get_values || data.post_values\n ? this.__renderGetOrPostValues(data.get_values, data.post_values)\n : ''}\n </div>\n </x-group>\n\n <x-group frame>\n <foxy-i18n slot=\"header\" lang=${this.lang} key=\"client\" ns=${this.ns}></foxy-i18n>\n\n <div class=\"text-s flex flex-col mx-xs p-s\">\n <span class=\"font-semibold\">\n ${data.ip_address}\n ${data.ip_country\n ? html`<span class=\"text-tertiary\"> • </span>${data.ip_country}`\n : ''}\n </span>\n\n ${data.user_agent ? html`<span class=\"text-secondary\">${data.user_agent}</span>` : ''}\n </div>\n </x-group>\n\n ${Object.entries(data._links).map(([curie, link]) => {\n if (['self', 'fx:store', 'curies'].includes(curie)) return '';\n\n return html`\n <x-group frame>\n <foxy-i18n slot=\"header\" lang=${this.lang} key=${curie.substr(3)} ns=${this.ns}>\n </foxy-i18n>\n\n <x-resource-viewer\n class=\"p-s mx-xs\"\n href=${link.href}\n lang=${this.lang}\n ns=${this.ns}\n >\n </x-resource-viewer>\n </x-group>\n `;\n })}\n </div>\n `;\n }\n\n private __handleToggle(event: Event) {\n const details = event.target as HTMLDetailsElement;\n\n if (details.open && this.data?.hide_error === false) {\n this.edit({ hide_error: true });\n this.submit();\n }\n\n this.open = details.open;\n }\n\n private __decodeHtml(html: string) {\n const areaElement = document.createElement('textarea');\n areaElement.innerHTML = html;\n return areaElement.value;\n }\n}\n"]}
@@ -73,7 +73,7 @@ export class GiftCardCodeForm extends Base {
73
73
  data-testid="spinner"
74
74
  class=${classMap({
75
75
  'transition duration-500 ease-in-out absolute inset-0 flex': true,
76
- 'opacity-0 pointer-events-none': !this.in('busy') && !this.in('fail'),
76
+ 'opacity-0 pointer-events-none': this.in('idle'),
77
77
  })}
78
78
  >
79
79
  <foxy-spinner
@@ -131,7 +131,7 @@ export class GiftCardCodeForm extends Base {
131
131
  .checkValidity=${this.__getValidator('code')}
132
132
  .errorMessage=${this.__getErrorMessage('code')}
133
133
  .value=${this.form.code}
134
- ?disabled=${this.in('busy') || this.disabledSelector.matches('code', true)}
134
+ ?disabled=${!this.in('idle') || this.disabledSelector.matches('code', true)}
135
135
  ?readonly=${this.readonlySelector.matches('code', true)}
136
136
  required
137
137
  @keydown=${(evt) => evt.key === 'Enter' && this.submit()}
@@ -159,7 +159,7 @@ export class GiftCardCodeForm extends Base {
159
159
  .checkValidity=${this.__getValidator('current_balance')}
160
160
  .errorMessage=${this.__getErrorMessage('current_balance')}
161
161
  .value=${this.form.current_balance}
162
- ?disabled=${this.in('busy') || this.disabledSelector.matches('current-balance', true)}
162
+ ?disabled=${!this.in('idle') || this.disabledSelector.matches('current-balance', true)}
163
163
  ?readonly=${this.readonlySelector.matches('current-balance', true)}
164
164
  prevent-invalid-input
165
165
  has-controls
@@ -189,7 +189,7 @@ export class GiftCardCodeForm extends Base {
189
189
  .checkValidity=${this.__getValidator('end_date')}
190
190
  .errorMessage=${this.__getErrorMessage('end_date')}
191
191
  .value=${this.form.end_date}
192
- ?disabled=${this.in('busy') || this.disabledSelector.matches('end-date', true)}
192
+ ?disabled=${!this.in('idle') || this.disabledSelector.matches('end-date', true)}
193
193
  ?readonly=${this.readonlySelector.matches('end-date', true)}
194
194
  @keydown=${(evt) => evt.key === 'Enter' && this.submit()}
195
195
  @change=${(evt) => {
@@ -233,7 +233,7 @@ export class GiftCardCodeForm extends Base {
233
233
  const isTemplateInvalid = isCleanTemplateInvalid || isDirtyTemplateInvalid;
234
234
  const isSnaphotInvalid = isCleanSnapshotInvalid || isDirtySnapshotInvalid;
235
235
  const isInvalid = isTemplateInvalid || isSnaphotInvalid;
236
- const isBusy = this.in('busy');
236
+ const isIdle = this.in('idle');
237
237
  return html `
238
238
  <div>
239
239
  ${this.renderTemplateOrSlot('create:before')}
@@ -242,7 +242,7 @@ export class GiftCardCodeForm extends Base {
242
242
  data-testid="create"
243
243
  class="w-full"
244
244
  theme="primary success"
245
- ?disabled=${isBusy || isInvalid || this.disabledSelector.matches('create', true)}
245
+ ?disabled=${!isIdle || isInvalid || this.disabledSelector.matches('create', true)}
246
246
  @click=${() => this.submit()}
247
247
  >
248
248
  <foxy-i18n ns=${this.ns} key="create" lang=${this.lang}></foxy-i18n>
@@ -1 +1 @@
1
- {"version":3,"file":"GiftCardCodeForm.js","sourceRoot":"","sources":["../../../../src/elements/public/GiftCardCodeForm/GiftCardCodeForm.ts"],"names":[],"mappings":"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","sourcesContent":["import { Data, Templates } from './types';\nimport { ScopedElementsMap, ScopedElementsMixin } from '@open-wc/scoped-elements';\nimport { TemplateResult, html } from 'lit-html';\n\nimport { ButtonElement } from '@vaadin/vaadin-button';\nimport { ConfigurableMixin } from '../../../mixins/configurable';\nimport { DialogHideEvent } from '../../private/Dialog/DialogHideEvent';\nimport { InternalConfirmDialog } from '../../internal/InternalConfirmDialog/InternalConfirmDialog';\nimport { NucleonElement } from '../NucleonElement/NucleonElement';\nimport { NucleonV8N } from '../NucleonElement/types';\nimport { PropertyTable } from '../../private/index';\nimport { TextFieldElement } from '@vaadin/vaadin-text-field';\nimport { ThemeableMixin } from '../../../mixins/themeable';\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { classMap } from '../../../utils/class-map';\n\nconst NS = 'gift-card-code-form';\nconst Base = ConfigurableMixin(\n ThemeableMixin(ScopedElementsMixin(TranslatableMixin(NucleonElement, NS)))\n);\n\n/**\n * Form element for creating or editing gift card codes (`fx:gift_card_code`).\n *\n * @slot code:before\n * @slot code:after\n *\n * @slot current-balance:before\n * @slot current-balance:after\n *\n * @slot end-date:before\n * @slot end-date:after\n *\n * @slot timestamps:before\n * @slot timestamps:after\n *\n * @slot delete:before\n * @slot delete:after\n *\n * @slot create:before\n * @slot create:after\n *\n * @element foxy-gift-card-code-form\n * @since 1.15.0\n */\nexport class GiftCardCodeForm extends Base<Data> {\n static get scopedElements(): ScopedElementsMap {\n return {\n 'vaadin-number-field': customElements.get('vaadin-number-field'),\n 'vaadin-date-picker': customElements.get('vaadin-date-picker'),\n 'vaadin-text-field': customElements.get('vaadin-text-field'),\n 'vaadin-button': customElements.get('vaadin-button'),\n\n 'foxy-internal-confirm-dialog': customElements.get('foxy-internal-confirm-dialog'),\n 'foxy-internal-sandbox': customElements.get('foxy-internal-sandbox'),\n 'foxy-spinner': customElements.get('foxy-spinner'),\n 'foxy-i18n': customElements.get('foxy-i18n'),\n\n 'x-property-table': PropertyTable,\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ code: v }) => !!v || 'code_required',\n ({ code: v }) => !v || v.length <= 50 || 'code_too_long',\n ({ current_balance: v }) => !!v || 'current_balance_required',\n ({ current_balance: v }) => !v || !isNaN(v) || 'current_balance_required',\n ];\n }\n\n templates: Templates = {};\n\n render(): TemplateResult {\n return html`\n <div class=\"relative space-y-m\">\n ${this.__isCodeHidden ? null : this.__renderCode()}\n ${this.__isCurrentBalanceHidden ? null : this.__renderCurrentBalance()}\n ${this.__isEndDateHidden ? null : this.__renderEndDate()}\n ${this.__isTimestampsHidden ? null : this.__renderTimestamps()}\n ${this.__isCreateHidden ? null : this.__renderCreate()}\n ${this.__isDeleteHidden ? null : this.__renderDelete()}\n\n <div\n data-testid=\"spinner\"\n class=${classMap({\n 'transition duration-500 ease-in-out absolute inset-0 flex': true,\n 'opacity-0 pointer-events-none': !this.in('busy') && !this.in('fail'),\n })}\n >\n <foxy-spinner\n layout=\"vertical\"\n class=\"m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l\"\n state=${this.in('fail') ? 'error' : this.in('busy') ? 'busy' : 'empty'}\n lang=${this.lang}\n ns=\"${this.ns} ${customElements.get('foxy-spinner')?.defaultNS ?? ''}\"\n >\n </foxy-spinner>\n </div>\n </div>\n `;\n }\n\n private get __isCodeHidden(): boolean {\n return this.hiddenSelector.matches('code', true);\n }\n\n private get __isCurrentBalanceHidden(): boolean {\n return this.hiddenSelector.matches('current-balance', true);\n }\n\n private get __isEndDateHidden(): boolean {\n return this.hiddenSelector.matches('end-date', true);\n }\n\n private get __isTimestampsHidden(): boolean {\n if (this.hiddenSelector.matches('timestamps', true)) return true;\n return !this.data;\n }\n\n private get __isCreateHidden(): boolean {\n if (this.hiddenSelector.matches('create', true)) return true;\n return !!this.data;\n }\n\n private get __isDeleteHidden(): boolean {\n if (this.hiddenSelector.matches('delete', true)) return true;\n return !this.data;\n }\n\n private __getErrorMessage(prefix: string) {\n const error = this.errors.find(err => err.startsWith(prefix));\n return error ? this.t(error.replace(prefix, 'v8n')).toString() : '';\n }\n\n private __getValidator(prefix: string) {\n return () => !this.errors.some(err => err.startsWith(prefix));\n }\n\n private __renderCode(): TemplateResult {\n return html`\n <div>\n ${this.renderTemplateOrSlot('code:before')}\n\n <vaadin-text-field\n data-testid=\"code\"\n class=\"w-full\"\n label=${this.t('code')}\n .checkValidity=${this.__getValidator('code')}\n .errorMessage=${this.__getErrorMessage('code')}\n .value=${this.form.code}\n ?disabled=${this.in('busy') || this.disabledSelector.matches('code', true)}\n ?readonly=${this.readonlySelector.matches('code', true)}\n required\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.submit()}\n @input=${(evt: CustomEvent) => {\n const newCode = (evt.currentTarget as TextFieldElement).value;\n this.edit({ code: newCode });\n }}\n >\n </vaadin-text-field>\n\n ${this.renderTemplateOrSlot('code:after')}\n </div>\n `;\n }\n\n private __renderCurrentBalance(): TemplateResult {\n return html`\n <div>\n ${this.renderTemplateOrSlot('current-balance:before')}\n\n <vaadin-number-field\n data-testid=\"current-balance\"\n class=\"w-full\"\n label=${this.t('current_balance')}\n min=\"0\"\n .checkValidity=${this.__getValidator('current_balance')}\n .errorMessage=${this.__getErrorMessage('current_balance')}\n .value=${this.form.current_balance}\n ?disabled=${this.in('busy') || this.disabledSelector.matches('current-balance', true)}\n ?readonly=${this.readonlySelector.matches('current-balance', true)}\n prevent-invalid-input\n has-controls\n required\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.submit()}\n @change=${(evt: CustomEvent) => {\n const newCurrentBalance = (evt.currentTarget as TextFieldElement).value;\n this.edit({ current_balance: parseFloat(newCurrentBalance) });\n }}\n >\n </vaadin-number-field>\n\n ${this.renderTemplateOrSlot('current-balance:after')}\n </div>\n `;\n }\n\n private __renderEndDate(): TemplateResult {\n return html`\n <div>\n ${this.renderTemplateOrSlot('end-date:before')}\n\n <vaadin-date-picker\n data-testid=\"end-date\"\n class=\"w-full\"\n label=${this.t('end_date')}\n min=\"0\"\n .checkValidity=${this.__getValidator('end_date')}\n .errorMessage=${this.__getErrorMessage('end_date')}\n .value=${this.form.end_date}\n ?disabled=${this.in('busy') || this.disabledSelector.matches('end-date', true)}\n ?readonly=${this.readonlySelector.matches('end-date', true)}\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.submit()}\n @change=${(evt: CustomEvent) => {\n const newEndDate = (evt.currentTarget as TextFieldElement).value;\n this.edit({ end_date: newEndDate });\n }}\n >\n </vaadin-date-picker>\n\n ${this.renderTemplateOrSlot('end-date:after')}\n </div>\n `;\n }\n\n private __renderTimestamps(): TemplateResult {\n return html`\n <div>\n ${this.renderTemplateOrSlot('timestamps:before')}\n\n <x-property-table\n data-testid=\"timestamps\"\n .items=${(['date_modified', 'date_created'] as const).map(field => ({\n name: this.t(field),\n value: this.data?.[field]\n ? this.t('date', { value: new Date(this.data[field] as string) })\n : '',\n }))}\n >\n </x-property-table>\n\n ${this.renderTemplateOrSlot('timestamps:after')}\n </div>\n `;\n }\n\n private __renderCreate(): TemplateResult {\n const isCleanTemplateInvalid = this.in({ idle: { template: { clean: 'invalid' } } });\n const isDirtyTemplateInvalid = this.in({ idle: { template: { dirty: 'invalid' } } });\n const isCleanSnapshotInvalid = this.in({ idle: { snapshot: { clean: 'invalid' } } });\n const isDirtySnapshotInvalid = this.in({ idle: { snapshot: { dirty: 'invalid' } } });\n const isTemplateInvalid = isCleanTemplateInvalid || isDirtyTemplateInvalid;\n const isSnaphotInvalid = isCleanSnapshotInvalid || isDirtySnapshotInvalid;\n const isInvalid = isTemplateInvalid || isSnaphotInvalid;\n const isBusy = this.in('busy');\n\n return html`\n <div>\n ${this.renderTemplateOrSlot('create:before')}\n\n <vaadin-button\n data-testid=\"create\"\n class=\"w-full\"\n theme=\"primary success\"\n ?disabled=${isBusy || isInvalid || this.disabledSelector.matches('create', true)}\n @click=${() => this.submit()}\n >\n <foxy-i18n ns=${this.ns} key=\"create\" lang=${this.lang}></foxy-i18n>\n </vaadin-button>\n\n ${this.renderTemplateOrSlot('create:after')}\n </div>\n `;\n }\n\n private __renderDelete(): TemplateResult {\n return html`\n <div>\n <foxy-internal-confirm-dialog\n data-testid=\"confirm\"\n message=\"delete_prompt\"\n confirm=\"delete\"\n cancel=\"cancel\"\n header=\"delete\"\n theme=\"primary error\"\n lang=${this.lang}\n ns=${this.ns}\n id=\"confirm\"\n @hide=${(evt: DialogHideEvent) => !evt.detail.cancelled && this.delete()}\n >\n </foxy-internal-confirm-dialog>\n\n ${this.renderTemplateOrSlot('delete:before')}\n\n <vaadin-button\n data-testid=\"delete\"\n theme=\"primary error\"\n class=\"w-full\"\n ?disabled=${this.in('busy') || this.disabledSelector.matches('delete', true)}\n @click=${(evt: CustomEvent) => {\n const confirm = this.renderRoot.querySelector('#confirm') as InternalConfirmDialog;\n confirm.show(evt.currentTarget as ButtonElement);\n }}\n >\n <foxy-i18n ns=${this.ns} key=\"delete\" lang=${this.lang}></foxy-i18n>\n </vaadin-button>\n\n ${this.renderTemplateOrSlot('delete:after')}\n </div>\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"GiftCardCodeForm.js","sourceRoot":"","sources":["../../../../src/elements/public/GiftCardCodeForm/GiftCardCodeForm.ts"],"names":[],"mappings":"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","sourcesContent":["import { Data, Templates } from './types';\nimport { ScopedElementsMap, ScopedElementsMixin } from '@open-wc/scoped-elements';\nimport { TemplateResult, html } from 'lit-html';\n\nimport { ButtonElement } from '@vaadin/vaadin-button';\nimport { ConfigurableMixin } from '../../../mixins/configurable';\nimport { DialogHideEvent } from '../../private/Dialog/DialogHideEvent';\nimport { InternalConfirmDialog } from '../../internal/InternalConfirmDialog/InternalConfirmDialog';\nimport { NucleonElement } from '../NucleonElement/NucleonElement';\nimport { NucleonV8N } from '../NucleonElement/types';\nimport { PropertyTable } from '../../private/index';\nimport { TextFieldElement } from '@vaadin/vaadin-text-field';\nimport { ThemeableMixin } from '../../../mixins/themeable';\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { classMap } from '../../../utils/class-map';\n\nconst NS = 'gift-card-code-form';\nconst Base = ConfigurableMixin(\n ThemeableMixin(ScopedElementsMixin(TranslatableMixin(NucleonElement, NS)))\n);\n\n/**\n * Form element for creating or editing gift card codes (`fx:gift_card_code`).\n *\n * @slot code:before\n * @slot code:after\n *\n * @slot current-balance:before\n * @slot current-balance:after\n *\n * @slot end-date:before\n * @slot end-date:after\n *\n * @slot timestamps:before\n * @slot timestamps:after\n *\n * @slot delete:before\n * @slot delete:after\n *\n * @slot create:before\n * @slot create:after\n *\n * @element foxy-gift-card-code-form\n * @since 1.15.0\n */\nexport class GiftCardCodeForm extends Base<Data> {\n static get scopedElements(): ScopedElementsMap {\n return {\n 'vaadin-number-field': customElements.get('vaadin-number-field'),\n 'vaadin-date-picker': customElements.get('vaadin-date-picker'),\n 'vaadin-text-field': customElements.get('vaadin-text-field'),\n 'vaadin-button': customElements.get('vaadin-button'),\n\n 'foxy-internal-confirm-dialog': customElements.get('foxy-internal-confirm-dialog'),\n 'foxy-internal-sandbox': customElements.get('foxy-internal-sandbox'),\n 'foxy-spinner': customElements.get('foxy-spinner'),\n 'foxy-i18n': customElements.get('foxy-i18n'),\n\n 'x-property-table': PropertyTable,\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ code: v }) => !!v || 'code_required',\n ({ code: v }) => !v || v.length <= 50 || 'code_too_long',\n ({ current_balance: v }) => !!v || 'current_balance_required',\n ({ current_balance: v }) => !v || !isNaN(v) || 'current_balance_required',\n ];\n }\n\n templates: Templates = {};\n\n render(): TemplateResult {\n return html`\n <div class=\"relative space-y-m\">\n ${this.__isCodeHidden ? null : this.__renderCode()}\n ${this.__isCurrentBalanceHidden ? null : this.__renderCurrentBalance()}\n ${this.__isEndDateHidden ? null : this.__renderEndDate()}\n ${this.__isTimestampsHidden ? null : this.__renderTimestamps()}\n ${this.__isCreateHidden ? null : this.__renderCreate()}\n ${this.__isDeleteHidden ? null : this.__renderDelete()}\n\n <div\n data-testid=\"spinner\"\n class=${classMap({\n 'transition duration-500 ease-in-out absolute inset-0 flex': true,\n 'opacity-0 pointer-events-none': this.in('idle'),\n })}\n >\n <foxy-spinner\n layout=\"vertical\"\n class=\"m-auto p-m bg-base shadow-xs rounded-t-l rounded-b-l\"\n state=${this.in('fail') ? 'error' : this.in('busy') ? 'busy' : 'empty'}\n lang=${this.lang}\n ns=\"${this.ns} ${customElements.get('foxy-spinner')?.defaultNS ?? ''}\"\n >\n </foxy-spinner>\n </div>\n </div>\n `;\n }\n\n private get __isCodeHidden(): boolean {\n return this.hiddenSelector.matches('code', true);\n }\n\n private get __isCurrentBalanceHidden(): boolean {\n return this.hiddenSelector.matches('current-balance', true);\n }\n\n private get __isEndDateHidden(): boolean {\n return this.hiddenSelector.matches('end-date', true);\n }\n\n private get __isTimestampsHidden(): boolean {\n if (this.hiddenSelector.matches('timestamps', true)) return true;\n return !this.data;\n }\n\n private get __isCreateHidden(): boolean {\n if (this.hiddenSelector.matches('create', true)) return true;\n return !!this.data;\n }\n\n private get __isDeleteHidden(): boolean {\n if (this.hiddenSelector.matches('delete', true)) return true;\n return !this.data;\n }\n\n private __getErrorMessage(prefix: string) {\n const error = this.errors.find(err => err.startsWith(prefix));\n return error ? this.t(error.replace(prefix, 'v8n')).toString() : '';\n }\n\n private __getValidator(prefix: string) {\n return () => !this.errors.some(err => err.startsWith(prefix));\n }\n\n private __renderCode(): TemplateResult {\n return html`\n <div>\n ${this.renderTemplateOrSlot('code:before')}\n\n <vaadin-text-field\n data-testid=\"code\"\n class=\"w-full\"\n label=${this.t('code')}\n .checkValidity=${this.__getValidator('code')}\n .errorMessage=${this.__getErrorMessage('code')}\n .value=${this.form.code}\n ?disabled=${!this.in('idle') || this.disabledSelector.matches('code', true)}\n ?readonly=${this.readonlySelector.matches('code', true)}\n required\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.submit()}\n @input=${(evt: CustomEvent) => {\n const newCode = (evt.currentTarget as TextFieldElement).value;\n this.edit({ code: newCode });\n }}\n >\n </vaadin-text-field>\n\n ${this.renderTemplateOrSlot('code:after')}\n </div>\n `;\n }\n\n private __renderCurrentBalance(): TemplateResult {\n return html`\n <div>\n ${this.renderTemplateOrSlot('current-balance:before')}\n\n <vaadin-number-field\n data-testid=\"current-balance\"\n class=\"w-full\"\n label=${this.t('current_balance')}\n min=\"0\"\n .checkValidity=${this.__getValidator('current_balance')}\n .errorMessage=${this.__getErrorMessage('current_balance')}\n .value=${this.form.current_balance}\n ?disabled=${!this.in('idle') || this.disabledSelector.matches('current-balance', true)}\n ?readonly=${this.readonlySelector.matches('current-balance', true)}\n prevent-invalid-input\n has-controls\n required\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.submit()}\n @change=${(evt: CustomEvent) => {\n const newCurrentBalance = (evt.currentTarget as TextFieldElement).value;\n this.edit({ current_balance: parseFloat(newCurrentBalance) });\n }}\n >\n </vaadin-number-field>\n\n ${this.renderTemplateOrSlot('current-balance:after')}\n </div>\n `;\n }\n\n private __renderEndDate(): TemplateResult {\n return html`\n <div>\n ${this.renderTemplateOrSlot('end-date:before')}\n\n <vaadin-date-picker\n data-testid=\"end-date\"\n class=\"w-full\"\n label=${this.t('end_date')}\n min=\"0\"\n .checkValidity=${this.__getValidator('end_date')}\n .errorMessage=${this.__getErrorMessage('end_date')}\n .value=${this.form.end_date}\n ?disabled=${!this.in('idle') || this.disabledSelector.matches('end-date', true)}\n ?readonly=${this.readonlySelector.matches('end-date', true)}\n @keydown=${(evt: KeyboardEvent) => evt.key === 'Enter' && this.submit()}\n @change=${(evt: CustomEvent) => {\n const newEndDate = (evt.currentTarget as TextFieldElement).value;\n this.edit({ end_date: newEndDate });\n }}\n >\n </vaadin-date-picker>\n\n ${this.renderTemplateOrSlot('end-date:after')}\n </div>\n `;\n }\n\n private __renderTimestamps(): TemplateResult {\n return html`\n <div>\n ${this.renderTemplateOrSlot('timestamps:before')}\n\n <x-property-table\n data-testid=\"timestamps\"\n .items=${(['date_modified', 'date_created'] as const).map(field => ({\n name: this.t(field),\n value: this.data?.[field]\n ? this.t('date', { value: new Date(this.data[field] as string) })\n : '',\n }))}\n >\n </x-property-table>\n\n ${this.renderTemplateOrSlot('timestamps:after')}\n </div>\n `;\n }\n\n private __renderCreate(): TemplateResult {\n const isCleanTemplateInvalid = this.in({ idle: { template: { clean: 'invalid' } } });\n const isDirtyTemplateInvalid = this.in({ idle: { template: { dirty: 'invalid' } } });\n const isCleanSnapshotInvalid = this.in({ idle: { snapshot: { clean: 'invalid' } } });\n const isDirtySnapshotInvalid = this.in({ idle: { snapshot: { dirty: 'invalid' } } });\n const isTemplateInvalid = isCleanTemplateInvalid || isDirtyTemplateInvalid;\n const isSnaphotInvalid = isCleanSnapshotInvalid || isDirtySnapshotInvalid;\n const isInvalid = isTemplateInvalid || isSnaphotInvalid;\n const isIdle = this.in('idle');\n\n return html`\n <div>\n ${this.renderTemplateOrSlot('create:before')}\n\n <vaadin-button\n data-testid=\"create\"\n class=\"w-full\"\n theme=\"primary success\"\n ?disabled=${!isIdle || isInvalid || this.disabledSelector.matches('create', true)}\n @click=${() => this.submit()}\n >\n <foxy-i18n ns=${this.ns} key=\"create\" lang=${this.lang}></foxy-i18n>\n </vaadin-button>\n\n ${this.renderTemplateOrSlot('create:after')}\n </div>\n `;\n }\n\n private __renderDelete(): TemplateResult {\n return html`\n <div>\n <foxy-internal-confirm-dialog\n data-testid=\"confirm\"\n message=\"delete_prompt\"\n confirm=\"delete\"\n cancel=\"cancel\"\n header=\"delete\"\n theme=\"primary error\"\n lang=${this.lang}\n ns=${this.ns}\n id=\"confirm\"\n @hide=${(evt: DialogHideEvent) => !evt.detail.cancelled && this.delete()}\n >\n </foxy-internal-confirm-dialog>\n\n ${this.renderTemplateOrSlot('delete:before')}\n\n <vaadin-button\n data-testid=\"delete\"\n theme=\"primary error\"\n class=\"w-full\"\n ?disabled=${this.in('busy') || this.disabledSelector.matches('delete', true)}\n @click=${(evt: CustomEvent) => {\n const confirm = this.renderRoot.querySelector('#confirm') as InternalConfirmDialog;\n confirm.show(evt.currentTarget as ButtonElement);\n }}\n >\n <foxy-i18n ns=${this.ns} key=\"delete\" lang=${this.lang}></foxy-i18n>\n </vaadin-button>\n\n ${this.renderTemplateOrSlot('delete:after')}\n </div>\n `;\n }\n}\n"]}
@@ -55,20 +55,34 @@ export class GiftCardForm extends Base {
55
55
  this.__codesTableColumns = [
56
56
  {
57
57
  header: ctx => html `<foxy-i18n lang=${ctx.lang} key="code" ns=${ctx.ns}></foxy-i18n>`,
58
- cell: ctx => html `
59
- <vaadin-button
60
- theme="tertiary contrast"
61
- class="p-0"
62
- @click=${(evt) => {
63
- const dialog = this.renderRoot.querySelector('#code-dialog');
64
- const button = evt.currentTarget;
65
- dialog.href = ctx.data._links.self.href;
66
- dialog.show(button);
67
- }}
68
- >
69
- <span class="font-tnum">${ctx.data.code}</span>
70
- </vaadin-button>
71
- `,
58
+ cell: ctx => {
59
+ const isDisabled = !this.in('idle') || this.disabledSelector.matches('codes', true);
60
+ return html `
61
+ <div class="flex items-center gap-xs">
62
+ <vaadin-button
63
+ theme="tertiary-inline contrast"
64
+ class="p-0"
65
+ ?disabled=${isDisabled}
66
+ @click=${(evt) => {
67
+ const dialog = this.renderRoot.querySelector('#code-dialog');
68
+ const button = evt.currentTarget;
69
+ dialog.href = ctx.data._links.self.href;
70
+ dialog.show(button);
71
+ }}
72
+ >
73
+ <span class="font-tnum">${ctx.data.code}</span>
74
+ </vaadin-button>
75
+
76
+ <foxy-copy-to-clipboard
77
+ ?disabled=${isDisabled}
78
+ text=${ctx.data.code}
79
+ lang=${ctx.lang}
80
+ ns="${ctx.ns} copy-to-clipboard"
81
+ >
82
+ </foxy-copy-to-clipboard>
83
+ </div>
84
+ `;
85
+ },
72
86
  },
73
87
  {
74
88
  header: ctx => html `<foxy-i18n lang=${ctx.lang} key="date_created" ns=${ctx.ns}></foxy-i18n>`,
@@ -229,7 +243,7 @@ export class GiftCardForm extends Base {
229
243
  label=${this.t('name')}
230
244
  .checkValidity=${this.__getValidator('name')}
231
245
  .value=${(_a = this.form.name) !== null && _a !== void 0 ? _a : ''}
232
- ?disabled=${this.in('busy') || this.disabledSelector.matches('name', true)}
246
+ ?disabled=${!this.in('idle') || this.disabledSelector.matches('name', true)}
233
247
  ?readonly=${this.readonlySelector.matches('name', true)}
234
248
  required
235
249
  @keydown=${(evt) => evt.key === 'Enter' && this.submit()}
@@ -254,6 +268,7 @@ export class GiftCardForm extends Base {
254
268
  item-label-path="label"
255
269
  item-value-path="value"
256
270
  item-id-path="value"
271
+ data-testid="currency"
257
272
  class="w-full"
258
273
  label=${this.t('currency')}
259
274
  ?disabled=${!this.in('idle') || this.disabledSelector.matches('currency', true)}
@@ -281,9 +296,12 @@ export class GiftCardForm extends Base {
281
296
  ${this.renderTemplateOrSlot('expires:before')}
282
297
 
283
298
  <x-frequency-input
284
- class="w-full"
285
- label=${this.t('expires_after')}
286
299
  placeholder=${this.t('select')}
300
+ data-testid="expires"
301
+ label=${this.t('expires_after')}
302
+ class="w-full"
303
+ lang=${this.lang}
304
+ ns=${this.ns}
287
305
  ?disabled=${!this.in('idle') || this.disabledSelector.matches('expires', true)}
288
306
  ?readonly=${this.readonlySelector.matches('expires', true)}
289
307
  .value=${(_a = this.form.expires_after) !== null && _a !== void 0 ? _a : ''}
@@ -299,8 +317,8 @@ export class GiftCardForm extends Base {
299
317
  `;
300
318
  }
301
319
  __renderCodes() {
302
- var _a;
303
- const { disabledSelector, group, data, lang, ns } = this;
320
+ var _a, _b, _c, _d, _e;
321
+ const { disabledSelector, readonlySelector, hiddenSelector, group, data, lang, ns } = this;
304
322
  const isDisabled = !this.in('idle') || disabledSelector.matches('codes', true);
305
323
  const filters = this.__codesTableQuery;
306
324
  const url = new URL(data._links['fx:gift_card_codes'].href);
@@ -309,51 +327,51 @@ export class GiftCardForm extends Base {
309
327
  const filterButtonLabel = filters === null ? 'filter' : 'clear_filters';
310
328
  const filterButtonIcon = `icons:${filters === null ? 'filter-list' : 'clear'}`;
311
329
  return html `
312
- <foxy-form-dialog
313
- disabledcontrols=${disabledSelector.zoom('codes:generate:form').toString()}
314
- readonlycontrols=${this.readonlySelector.zoom('codes:generate:form').toString()}
315
- hiddencontrols="save-button ${this.hiddenSelector.zoom('codes:generate:form').toString()}"
316
- header="generate"
317
- parent=${(_a = data === null || data === void 0 ? void 0 : data._links['fx:generate_codes'].href) !== null && _a !== void 0 ? _a : ''}
318
- group=${group}
319
- lang=${lang}
320
- form="foxy-generate-codes-form"
321
- ns=${ns}
322
- id="generate-codes-dialog"
323
- alert
324
- .related=${[url.toString()]}
325
- >
326
- </foxy-form-dialog>
327
-
328
- <foxy-form-dialog
329
- disabledcontrols=${disabledSelector.zoom('codes:form').toString()}
330
- readonlycontrols=${this.readonlySelector.zoom('codes:form').toString()}
331
- hiddencontrols=${this.hiddenSelector.zoom('codes:form').toString()}
332
- header="code"
333
- parent=${url.toString()}
334
- group=${group}
335
- lang=${lang}
336
- form="foxy-gift-card-code-form"
337
- ns=${ns}
338
- id="code-dialog"
339
- >
340
- </foxy-form-dialog>
341
-
342
- <foxy-form-dialog
343
- disabledcontrols=${disabledSelector.zoom('codes:import:form').toString()}
344
- readonlycontrols=${this.readonlySelector.zoom('codes:import:form').toString()}
345
- hiddencontrols="save-button ${this.hiddenSelector.zoom('codes:generate:form').toString()}"
346
- header="import"
347
- parent=${data._links['fx:gift_card_codes'].href}
348
- group=${group}
349
- lang=${lang}
350
- form="foxy-gift-card-codes-form"
351
- ns=${ns}
352
- id="import-dialog"
353
- >
354
- </foxy-form-dialog>
330
+ <div data-testid="codes">
331
+ <foxy-form-dialog
332
+ disabledcontrols=${disabledSelector.zoom('codes:generate:form').toString()}
333
+ readonlycontrols=${readonlySelector.zoom('codes:generate:form').toString()}
334
+ hiddencontrols="save-button ${hiddenSelector.zoom('codes:generate:form').toString()}"
335
+ header="generate"
336
+ parent=${(_a = data === null || data === void 0 ? void 0 : data._links['fx:generate_codes'].href) !== null && _a !== void 0 ? _a : ''}
337
+ group=${group}
338
+ lang=${lang}
339
+ form="foxy-generate-codes-form"
340
+ ns=${ns}
341
+ id="generate-codes-dialog"
342
+ alert
343
+ .related=${[url.toString()]}
344
+ >
345
+ </foxy-form-dialog>
346
+
347
+ <foxy-form-dialog
348
+ disabledcontrols=${disabledSelector.zoom('codes:form').toString()}
349
+ readonlycontrols=${readonlySelector.zoom('codes:form').toString()}
350
+ hiddencontrols=${hiddenSelector.zoom('codes:form').toString()}
351
+ header="code"
352
+ parent=${url.toString()}
353
+ group=${group}
354
+ lang=${lang}
355
+ form="foxy-gift-card-code-form"
356
+ ns=${ns}
357
+ id="code-dialog"
358
+ >
359
+ </foxy-form-dialog>
360
+
361
+ <foxy-form-dialog
362
+ disabledcontrols=${disabledSelector.zoom('codes:import:form').toString()}
363
+ readonlycontrols=${readonlySelector.zoom('codes:import:form').toString()}
364
+ hiddencontrols="save-button ${hiddenSelector.zoom('codes:import:form').toString()}"
365
+ header="import"
366
+ parent=${data._links['fx:gift_card_codes'].href}
367
+ group=${group}
368
+ lang=${lang}
369
+ form="foxy-gift-card-codes-form"
370
+ ns=${ns}
371
+ id="import-dialog"
372
+ >
373
+ </foxy-form-dialog>
355
374
 
356
- <div>
357
375
  ${this.renderTemplateOrSlot('codes:before')}
358
376
 
359
377
  <div class="flex items-center justify-between mb-xs space-x-s">
@@ -366,6 +384,7 @@ export class GiftCardForm extends Base {
366
384
  </foxy-i18n>
367
385
 
368
386
  <vaadin-button
387
+ data-testid="codes:generate-button"
369
388
  theme="success tertiary small"
370
389
  ?disabled=${isDisabled}
371
390
  @click=${(evt) => {
@@ -379,6 +398,7 @@ export class GiftCardForm extends Base {
379
398
  </vaadin-button>
380
399
 
381
400
  <vaadin-button
401
+ data-testid="codes:import-button"
382
402
  theme="contrast tertiary small"
383
403
  ?disabled=${isDisabled}
384
404
  @click=${(evt) => {
@@ -392,6 +412,7 @@ export class GiftCardForm extends Base {
392
412
  </vaadin-button>
393
413
 
394
414
  <vaadin-button
415
+ data-testid="codes:filter-button"
395
416
  theme="contrast ${filters === null ? 'tertiary' : ''} small"
396
417
  ?disabled=${isDisabled}
397
418
  @click=${() => (this.__codesTableQuery = filters === null ? '' : null)}
@@ -404,7 +425,7 @@ export class GiftCardForm extends Base {
404
425
  <foxy-query-builder
405
426
  class="bg-contrast-5 rounded-tl-l rounded-tr-s rounded-b-l p-m mb-s"
406
427
  lang=${lang}
407
- ns=${ns}
428
+ ns="${ns} ${(_c = (_b = customElements.get('foxy-query-builder')) === null || _b === void 0 ? void 0 : _b.defaultNS) !== null && _c !== void 0 ? _c : ''}"
408
429
  ?disabled=${isDisabled}
409
430
  ?hidden=${filters === null}
410
431
  .options=${GiftCardForm.__codesQueryOptions}
@@ -416,7 +437,12 @@ export class GiftCardForm extends Base {
416
437
  >
417
438
  </foxy-query-builder>
418
439
 
419
- <foxy-pagination first=${url.toString()} lang=${lang} ns=${ns} ?disabled=${isDisabled}>
440
+ <foxy-pagination
441
+ first=${url.toString()}
442
+ lang=${lang}
443
+ ns="${ns} ${(_e = (_d = customElements.get('foxy-pagination')) === null || _d === void 0 ? void 0 : _d.defaultNS) !== null && _e !== void 0 ? _e : ''}"
444
+ ?disabled=${isDisabled}
445
+ >
420
446
  <foxy-table
421
447
  class="px-m mb-s border border-contrast-10 rounded-t-l rounded-b-l"
422
448
  group=${group}
@@ -450,7 +476,7 @@ export class GiftCardForm extends Base {
450
476
  });
451
477
  }
452
478
  return html `
453
- <div>
479
+ <div data-testid="product-restrictions">
454
480
  ${this.renderTemplateOrSlot('product-restrictions:before')}
455
481
 
456
482
  <div class="space-y-s">
@@ -478,6 +504,7 @@ export class GiftCardForm extends Base {
478
504
  </foxy-i18n>
479
505
 
480
506
  <x-editable-list
507
+ data-testid="product-restrictions:${group.header}"
481
508
  lang=${this.lang}
482
509
  ns=${this.ns}
483
510
  ?disabled=${isDisabled}
@@ -523,51 +550,55 @@ export class GiftCardForm extends Base {
523
550
  `;
524
551
  }
525
552
  __renderCategoryRestrictions() {
526
- var _a;
553
+ var _a, _b, _c;
527
554
  const scope = 'category-restrictions';
528
555
  const isDisabled = !this.in('idle') || this.disabledSelector.matches(scope, true);
529
556
  const isReadonly = this.readonlySelector.matches(scope, true);
557
+ const giftCardItemCategories = (_a = this.data) === null || _a === void 0 ? void 0 : _a._links['fx:gift_card_item_categories'].href;
530
558
  return html `
531
- ${this.renderTemplateOrSlot('category-restrictions:before')}
559
+ <div data-testid="category-restrictions">
560
+ ${this.renderTemplateOrSlot(`${scope}:before`)}
532
561
 
533
- <div class="space-y-xs">
534
- <foxy-pagination
535
- first=${this.__itemCategories}
536
- lang=${this.lang}
537
- ns=${this.ns}
538
- ?disabled=${isDisabled}
539
- >
540
- <foxy-i18n
541
- class="block text-s font-medium text-secondary leading-none mb-s"
562
+ <div class="space-y-xs">
563
+ <foxy-pagination
564
+ first=${this.__itemCategories}
542
565
  lang=${this.lang}
543
- key="category_restrictions"
544
- ns=${this.ns}
566
+ ns="${this.ns} ${(_c = (_b = customElements.get('foxy-pagination')) === null || _b === void 0 ? void 0 : _b.defaultNS) !== null && _c !== void 0 ? _c : ''}"
567
+ ?disabled=${isDisabled}
545
568
  >
546
- </foxy-i18n>
569
+ <foxy-i18n
570
+ class="block text-s font-medium text-secondary leading-none mb-s"
571
+ lang=${this.lang}
572
+ key="category_restrictions"
573
+ ns=${this.ns}
574
+ >
575
+ </foxy-i18n>
576
+
577
+ <x-category-restrictions-page
578
+ gift-card-item-categories=${ifDefined(giftCardItemCategories)}
579
+ data-testid="category-restrictions:page"
580
+ gift-card=${this.href}
581
+ class="border border-contrast-10 rounded-t-l rounded-b-l mb-s"
582
+ group=${this.group}
583
+ lang=${this.lang}
584
+ ns=${this.ns}
585
+ ?disabled=${isDisabled}
586
+ ?readonly=${isReadonly}
587
+ >
588
+ </x-category-restrictions-page>
589
+ </foxy-pagination>
547
590
 
548
- <x-category-restrictions-page
549
- gift-card-item-categories=${ifDefined((_a = this.data) === null || _a === void 0 ? void 0 : _a._links['fx:gift_card_item_categories'].href)}
550
- gift-card=${this.href}
551
- class="border border-contrast-10 rounded-t-l rounded-b-l mb-s"
552
- group=${this.group}
591
+ <foxy-i18n
592
+ class="block text-xs leading-s text-secondary"
553
593
  lang=${this.lang}
594
+ key="gift_card_category_restrictions_helper_text"
554
595
  ns=${this.ns}
555
- ?disabled=${isDisabled}
556
- ?readonly=${isReadonly}
557
596
  >
558
- </x-category-restrictions-page>
559
- </foxy-pagination>
597
+ </foxy-i18n>
598
+ </div>
560
599
 
561
- <foxy-i18n
562
- class="block text-xs leading-s text-secondary"
563
- lang=${this.lang}
564
- key="gift_card_category_restrictions_helper_text"
565
- ns=${this.ns}
566
- >
567
- </foxy-i18n>
600
+ ${this.renderTemplateOrSlot(`${scope}:after`)}
568
601
  </div>
569
-
570
- ${this.renderTemplateOrSlot('category-restrictions:after')}
571
602
  `;
572
603
  }
573
604
  __renderTimestamps() {
@@ -642,7 +673,7 @@ export class GiftCardForm extends Base {
642
673
  data-testid="delete"
643
674
  theme="primary error"
644
675
  class="w-full"
645
- ?disabled=${this.in('busy') || this.disabledSelector.matches('delete', true)}
676
+ ?disabled=${!this.in('idle') || this.disabledSelector.matches('delete', true)}
646
677
  @click=${(evt) => {
647
678
  const confirm = this.renderRoot.querySelector('#confirm');
648
679
  confirm.show(evt.currentTarget);