@foxy.io/elements 1.29.0-beta.5 → 1.29.0-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/dist/cdn/foxy-access-recovery-form.js +1 -1
  2. package/dist/cdn/foxy-address-card.js +1 -1
  3. package/dist/cdn/foxy-address-form.js +1 -1
  4. package/dist/cdn/foxy-admin-subscription-card.js +1 -1
  5. package/dist/cdn/foxy-admin-subscription-form.js +1 -1
  6. package/dist/cdn/foxy-api-browser.js +1 -1
  7. package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
  8. package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
  9. package/dist/cdn/foxy-applied-tax-card.js +1 -1
  10. package/dist/cdn/foxy-attribute-card.js +1 -1
  11. package/dist/cdn/foxy-attribute-form.js +1 -1
  12. package/dist/cdn/foxy-billing-address-card.js +1 -1
  13. package/dist/cdn/foxy-cancellation-form.js +1 -1
  14. package/dist/cdn/foxy-cart-card.js +1 -1
  15. package/dist/cdn/foxy-cart-form.js +1 -1
  16. package/dist/cdn/foxy-client-card.js +1 -1
  17. package/dist/cdn/foxy-client-form.js +1 -1
  18. package/dist/cdn/foxy-collection-page.js +1 -1
  19. package/dist/cdn/foxy-collection-pages.js +1 -1
  20. package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
  21. package/dist/cdn/foxy-coupon-card.js +1 -1
  22. package/dist/cdn/foxy-coupon-code-card.js +1 -1
  23. package/dist/cdn/foxy-coupon-code-form.js +1 -1
  24. package/dist/cdn/foxy-coupon-codes-form.js +1 -1
  25. package/dist/cdn/foxy-coupon-detail-card.js +1 -1
  26. package/dist/cdn/foxy-coupon-form.js +1 -1
  27. package/dist/cdn/foxy-custom-field-card.js +1 -1
  28. package/dist/cdn/foxy-custom-field-form.js +1 -1
  29. package/dist/cdn/foxy-customer-card.js +1 -1
  30. package/dist/cdn/foxy-customer-form.js +1 -1
  31. package/dist/cdn/foxy-customer-portal-settings-form.js +1 -1
  32. package/dist/cdn/foxy-customer-portal-settings.js +1 -1
  33. package/dist/cdn/foxy-customer-portal.js +1 -1
  34. package/dist/cdn/foxy-customer.js +1 -1
  35. package/dist/cdn/foxy-customers-table.js +1 -1
  36. package/dist/cdn/foxy-discount-builder.js +1 -1
  37. package/dist/cdn/foxy-discount-card.js +1 -1
  38. package/dist/cdn/foxy-discount-detail-card.js +1 -1
  39. package/dist/cdn/foxy-donation.js +1 -1
  40. package/dist/cdn/foxy-downloadable-card.js +1 -1
  41. package/dist/cdn/foxy-downloadable-form.js +5 -5
  42. package/dist/cdn/foxy-email-template-card.js +1 -1
  43. package/dist/cdn/foxy-email-template-form.js +1 -1
  44. package/dist/cdn/foxy-error-entry-card.js +1 -1
  45. package/dist/cdn/foxy-filter-attribute-card.js +1 -1
  46. package/dist/cdn/foxy-filter-attribute-form.js +1 -1
  47. package/dist/cdn/foxy-form-dialog.js +1 -1
  48. package/dist/cdn/foxy-generate-codes-form.js +1 -1
  49. package/dist/cdn/foxy-gift-card-card.js +1 -1
  50. package/dist/cdn/foxy-gift-card-code-card.js +1 -1
  51. package/dist/cdn/foxy-gift-card-code-form.js +1 -1
  52. package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
  53. package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
  54. package/dist/cdn/foxy-gift-card-form.js +1 -1
  55. package/dist/cdn/foxy-i18n-editor.js +554 -2
  56. package/dist/cdn/foxy-i18n.js +1 -1
  57. package/dist/cdn/foxy-integration-card.js +1 -1
  58. package/dist/cdn/foxy-integration-form.js +1 -1
  59. package/dist/cdn/foxy-item-card.js +1 -1
  60. package/dist/cdn/foxy-item-category-card.js +1 -1
  61. package/dist/cdn/foxy-item-category-form.js +1 -1
  62. package/dist/cdn/foxy-item-form.js +1 -1
  63. package/dist/cdn/foxy-item-option-card.js +1 -1
  64. package/dist/cdn/foxy-item-option-form.js +1 -1
  65. package/dist/cdn/foxy-items-form.js +1 -1
  66. package/dist/cdn/foxy-native-integration-card.js +1 -1
  67. package/dist/cdn/foxy-native-integration-form.js +1 -1
  68. package/dist/cdn/foxy-pagination.js +1 -1
  69. package/dist/cdn/foxy-passkey-card.js +1 -1
  70. package/dist/cdn/foxy-passkey-form.js +1 -1
  71. package/dist/cdn/foxy-payment-card-embed.js +1 -1
  72. package/dist/cdn/foxy-payment-card.js +1 -1
  73. package/dist/cdn/foxy-payment-method-card.js +1 -1
  74. package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
  75. package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
  76. package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
  77. package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
  78. package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
  79. package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
  80. package/dist/cdn/foxy-payments-api.js +1 -1
  81. package/dist/cdn/foxy-query-builder.js +1 -1
  82. package/dist/cdn/foxy-report-form.js +1 -1
  83. package/dist/cdn/foxy-reports-table.js +1 -1
  84. package/dist/cdn/foxy-shipment-card.js +1 -1
  85. package/dist/cdn/foxy-shipping-container-card.js +1 -1
  86. package/dist/cdn/foxy-shipping-drop-type-card.js +1 -1
  87. package/dist/cdn/foxy-shipping-method-card.js +1 -1
  88. package/dist/cdn/foxy-shipping-service-card.js +1 -1
  89. package/dist/cdn/foxy-sign-in-form.js +1 -1
  90. package/dist/cdn/foxy-spinner.js +2 -2
  91. package/dist/cdn/foxy-store-card.js +1 -1
  92. package/dist/cdn/foxy-store-form.js +1 -1
  93. package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
  94. package/dist/cdn/foxy-subscription-card.js +1 -1
  95. package/dist/cdn/foxy-subscription-form.js +1 -1
  96. package/dist/cdn/foxy-subscription-settings-form.js +1 -1
  97. package/dist/cdn/foxy-subscriptions-table.js +1 -1
  98. package/dist/cdn/foxy-table.js +1 -1
  99. package/dist/cdn/foxy-tax-card.js +1 -1
  100. package/dist/cdn/foxy-tax-form.js +1 -1
  101. package/dist/cdn/foxy-template-config-form.js +1 -1
  102. package/dist/cdn/foxy-template-form.js +1 -1
  103. package/dist/cdn/foxy-template-set-card.js +1 -1
  104. package/dist/cdn/foxy-template-set-form.js +1 -1
  105. package/dist/cdn/foxy-transaction-card.js +1 -1
  106. package/dist/cdn/foxy-transaction.js +1 -1
  107. package/dist/cdn/foxy-transactions-table.js +1 -1
  108. package/dist/cdn/foxy-update-payment-method-form.js +1 -1
  109. package/dist/cdn/foxy-user-card.js +1 -1
  110. package/dist/cdn/foxy-user-form.js +1 -1
  111. package/dist/cdn/foxy-users-table.js +1 -1
  112. package/dist/cdn/foxy-webhook-card.js +1 -1
  113. package/dist/cdn/foxy-webhook-form.js +1 -1
  114. package/dist/cdn/foxy-webhook-log-card.js +1 -1
  115. package/dist/cdn/foxy-webhook-status-card.js +1 -1
  116. package/dist/cdn/{shared-b53c58a6.js → shared-0ad0fb9f.js} +1 -1
  117. package/dist/cdn/{shared-bdb350d5.js → shared-0c7f9c0c.js} +1 -1
  118. package/dist/cdn/{shared-982ea9e1.js → shared-0f00d4d8.js} +1 -1
  119. package/dist/cdn/{shared-ca437731.js → shared-13203be0.js} +1 -1
  120. package/dist/cdn/{shared-cdf1e214.js → shared-1467a889.js} +1 -1
  121. package/dist/cdn/{shared-ffbcfbc5.js → shared-19768452.js} +1 -1
  122. package/dist/cdn/{shared-b938ba79.js → shared-1ecfa77b.js} +1 -1
  123. package/dist/cdn/{shared-f02d1d28.js → shared-226dd830.js} +1 -1
  124. package/dist/cdn/{shared-64aa8234.js → shared-22ba950a.js} +1 -1
  125. package/dist/cdn/{shared-91445b2b.js → shared-25502f01.js} +1 -1
  126. package/dist/cdn/{shared-f9e2e408.js → shared-2c1dff50.js} +1 -1
  127. package/dist/cdn/{shared-7e2a1984.js → shared-301a779e.js} +1 -1
  128. package/dist/cdn/{shared-494a9f3d.js → shared-32e92c3b.js} +1 -1
  129. package/dist/cdn/{shared-c1770155.js → shared-3483c729.js} +1 -1
  130. package/dist/cdn/{shared-fd17c575.js → shared-376784f0.js} +1 -1
  131. package/dist/cdn/{shared-c308b7e0.js → shared-38f0bda5.js} +1 -1
  132. package/dist/cdn/{shared-525fa58a.js → shared-40c6b1f6.js} +1 -1
  133. package/dist/cdn/{shared-735ba10d.js → shared-421a3ced.js} +1 -1
  134. package/dist/cdn/{shared-4f6e3162.js → shared-49ecea83.js} +1 -1
  135. package/dist/cdn/{shared-fcb58504.js → shared-4f183419.js} +1 -1
  136. package/dist/cdn/{shared-c0ce5ed0.js → shared-59b7fcc0.js} +1 -1
  137. package/dist/cdn/{shared-c92aa1b4.js → shared-5c4d786c.js} +1 -1
  138. package/dist/cdn/{shared-c2296e25.js → shared-63192750.js} +1 -1
  139. package/dist/cdn/{shared-337f11e4.js → shared-6a8a40cc.js} +1 -1
  140. package/dist/cdn/{shared-bbf4189c.js → shared-6be24929.js} +1 -1
  141. package/dist/cdn/{shared-aa9765b6.js → shared-70747a5c.js} +1 -1
  142. package/dist/cdn/{shared-66c5e679.js → shared-75331d5e.js} +1 -1
  143. package/dist/cdn/{shared-8e81d32d.js → shared-77e15843.js} +1 -1
  144. package/dist/cdn/{shared-ad932522.js → shared-77ef56aa.js} +1 -1
  145. package/dist/cdn/{shared-5ab6d05e.js → shared-8526ed32.js} +1 -1
  146. package/dist/cdn/{shared-aba112fe.js → shared-887e1795.js} +1 -1
  147. package/dist/cdn/{shared-843229d8.js → shared-8bb3eb45.js} +1 -1
  148. package/dist/cdn/{shared-d70c024a.js → shared-8cb35eb4.js} +1 -1
  149. package/dist/cdn/{shared-3cd5a0f0.js → shared-8f74f5fc.js} +1 -1
  150. package/dist/cdn/{shared-86012240.js → shared-8fce283a.js} +1 -1
  151. package/dist/cdn/shared-90706e10.js +1 -0
  152. package/dist/cdn/{shared-04327f82.js → shared-970d98db.js} +1 -1
  153. package/dist/cdn/{shared-f0cbc9b6.js → shared-98ddb87c.js} +1 -1
  154. package/dist/cdn/{shared-64faf409.js → shared-9a22d597.js} +1 -1
  155. package/dist/cdn/{shared-8c77078c.js → shared-9b895561.js} +1 -1
  156. package/dist/cdn/{shared-f4bf0a11.js → shared-a97c3129.js} +1 -1
  157. package/dist/cdn/{shared-52c30c2b.js → shared-ae00ce7c.js} +1 -1
  158. package/dist/cdn/{shared-0059cfec.js → shared-afd7214a.js} +4 -4
  159. package/dist/cdn/{shared-ba9431a5.js → shared-ba7354fa.js} +1 -1
  160. package/dist/cdn/{shared-e891437e.js → shared-c11df800.js} +1 -1
  161. package/dist/cdn/shared-c4124870.js +1 -0
  162. package/dist/cdn/{shared-31276bc2.js → shared-c5a0cdd7.js} +1 -1
  163. package/dist/cdn/{shared-c0a292f9.js → shared-c9845b4a.js} +1 -1
  164. package/dist/cdn/{shared-928400e3.js → shared-cc808e01.js} +1 -1
  165. package/dist/cdn/{shared-0ba38e56.js → shared-ce0465c6.js} +1 -1
  166. package/dist/cdn/shared-cfb33387.js +1 -0
  167. package/dist/cdn/{shared-437a77f7.js → shared-d0e4d7b1.js} +1 -1
  168. package/dist/cdn/{shared-1287115d.js → shared-d75f83f8.js} +1 -1
  169. package/dist/cdn/{shared-bd0a9424.js → shared-dbda59a0.js} +1 -1
  170. package/dist/cdn/{shared-01b35bfe.js → shared-df42c94f.js} +1 -1
  171. package/dist/cdn/{shared-ff73b5b8.js → shared-dfc47fd9.js} +1 -1
  172. package/dist/cdn/{shared-5b53b424.js → shared-e4870c47.js} +1 -1
  173. package/dist/cdn/{shared-72d815f5.js → shared-e7232c2b.js} +1 -1
  174. package/dist/cdn/{shared-383f55a5.js → shared-ea8f9a88.js} +2 -2
  175. package/dist/cdn/{shared-864584b7.js → shared-ecf479f2.js} +1 -1
  176. package/dist/cdn/{shared-45512693.js → shared-edae6816.js} +1 -1
  177. package/dist/cdn/{shared-a18c7822.js → shared-ee2cda29.js} +1 -1
  178. package/dist/cdn/{shared-d692fde9.js → shared-f21254a3.js} +1 -1
  179. package/dist/cdn/{shared-13c54ae2.js → shared-f4abc29a.js} +1 -1
  180. package/dist/cdn/{shared-f7a3f4c7.js → shared-f6573d25.js} +1 -1
  181. package/dist/cdn/{shared-5e463387.js → shared-fb1602a2.js} +1 -1
  182. package/dist/cdn/{shared-fbcfc48c.js → shared-fb1dd186.js} +1 -1
  183. package/dist/cdn/{shared-fe167efc.js → shared-fe4a2e3d.js} +1 -1
  184. package/dist/cdn/{shared-1c166d01.js → shared-ff7b2af6.js} +1 -1
  185. package/dist/cdn/translations/customer-portal/de.json +5 -75
  186. package/dist/cdn/translations/customer-portal/en.json +7 -77
  187. package/dist/cdn/translations/customer-portal/es.json +5 -74
  188. package/dist/cdn/translations/customer-portal/fr.json +5 -75
  189. package/dist/cdn/translations/customer-portal/nl.json +5 -75
  190. package/dist/cdn/translations/customer-portal/pl.json +5 -75
  191. package/dist/cdn/translations/customer-portal/sv.json +5 -75
  192. package/dist/cdn/translations/customer-portal/zh-hk.json +5 -75
  193. package/dist/cdn/translations/payments-api-fraud-protection-form/en.json +25 -11
  194. package/dist/cdn/translations/payments-api-payment-method-form/en.json +40 -21
  195. package/dist/cdn/translations/payments-api-payment-preset-form/en.json +154 -36
  196. package/dist/elements/internal/InternalSwitchControl/InternalSwitchControl.js +1 -1
  197. package/dist/elements/internal/InternalSwitchControl/InternalSwitchControl.js.map +1 -1
  198. package/dist/elements/internal/InternalTextControl/InternalTextControl.js +1 -1
  199. package/dist/elements/internal/InternalTextControl/InternalTextControl.js.map +1 -1
  200. package/dist/elements/public/PaymentsApi/api/composers/available_fraud_protections.d.ts +2 -1
  201. package/dist/elements/public/PaymentsApi/api/composers/available_fraud_protections.js +90 -87
  202. package/dist/elements/public/PaymentsApi/api/composers/available_fraud_protections.js.map +1 -1
  203. package/dist/elements/public/PaymentsApi/api/composers/available_payment_methods.d.ts +2 -1
  204. package/dist/elements/public/PaymentsApi/api/composers/available_payment_methods.js +4 -1
  205. package/dist/elements/public/PaymentsApi/api/composers/available_payment_methods.js.map +1 -1
  206. package/dist/elements/public/PaymentsApi/api/handlers/available_fraud_protections.d.ts +1 -0
  207. package/dist/elements/public/PaymentsApi/api/handlers/available_fraud_protections.js +18 -1
  208. package/dist/elements/public/PaymentsApi/api/handlers/available_fraud_protections.js.map +1 -1
  209. package/dist/elements/public/PaymentsApi/api/handlers/available_payment_methods.js +16 -0
  210. package/dist/elements/public/PaymentsApi/api/handlers/available_payment_methods.js.map +1 -1
  211. package/dist/elements/public/PaymentsApi/api/index.js +7 -7
  212. package/dist/elements/public/PaymentsApi/api/index.js.map +1 -1
  213. package/dist/elements/public/PaymentsApi/api/types.d.ts +5 -0
  214. package/dist/elements/public/PaymentsApi/api/types.js.map +1 -1
  215. package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.d.ts +1 -1
  216. package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.js +66 -36
  217. package/dist/elements/public/PaymentsApiFraudProtectionForm/PaymentsApiFraudProtectionForm.js.map +1 -1
  218. package/dist/elements/public/PaymentsApiFraudProtectionForm/index.d.ts +3 -2
  219. package/dist/elements/public/PaymentsApiFraudProtectionForm/index.js +3 -2
  220. package/dist/elements/public/PaymentsApiFraudProtectionForm/index.js.map +1 -1
  221. package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.d.ts +8 -3
  222. package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.js +171 -130
  223. package/dist/elements/public/PaymentsApiPaymentMethodForm/PaymentsApiPaymentMethodForm.js.map +1 -1
  224. package/dist/elements/public/PaymentsApiPaymentMethodForm/index.d.ts +2 -4
  225. package/dist/elements/public/PaymentsApiPaymentMethodForm/index.js +2 -4
  226. package/dist/elements/public/PaymentsApiPaymentMethodForm/index.js.map +1 -1
  227. package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.d.ts +6 -7
  228. package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.js +80 -87
  229. package/dist/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.js.map +1 -1
  230. package/dist/elements/public/PaymentsApiPaymentPresetForm/index.d.ts +2 -1
  231. package/dist/elements/public/PaymentsApiPaymentPresetForm/index.js +2 -1
  232. package/dist/elements/public/PaymentsApiPaymentPresetForm/index.js.map +1 -1
  233. package/dist/mixins/themeable.js +0 -4
  234. package/dist/mixins/themeable.js.map +1 -1
  235. package/package.json +1 -1
  236. package/dist/cdn/shared-241b34e5.js +0 -1
  237. package/dist/cdn/shared-9a4ccbbb.js +0 -1
  238. package/dist/cdn/shared-c7055ee3.js +0 -1
  239. package/dist/cdn/shared-e9bf9d3d.js +0 -553
@@ -1,7 +1,7 @@
1
1
  import type { PropertyDeclarations } from 'lit-element';
2
- import type { Data } from './types';
3
2
  import type { TemplateResult } from 'lit-html';
4
3
  import type { NucleonV8N } from '../NucleonElement/types';
4
+ import type { Data } from './types';
5
5
  import { BooleanSelector } from '@foxy.io/sdk/core';
6
6
  import { InternalForm } from '../../internal/InternalForm/InternalForm';
7
7
  declare const Base: typeof InternalForm & import("lit-element").Constructor<import("../../../mixins/translatable").TranslatableMixinHost> & {
@@ -25,13 +25,12 @@ export declare class PaymentsApiPaymentPresetForm extends Base<Data> {
25
25
  getFraudProtectionImageSrc: ((type: string) => string) | null;
26
26
  /** A function that returns image URL for given payment method `type`. */
27
27
  getPaymentMethodImageSrc: ((type: string) => string) | null;
28
- private static readonly __isPOEnabledOptions;
29
- private static readonly __isLiveOptions;
30
- private __getIsPOEnabledValue;
31
- private __setIsPOEnabledValue;
32
- private __getIsLiveValue;
33
- private __setIsLiveValue;
28
+ private readonly __isPurchaseOrderEnabledGetValue;
29
+ private readonly __isLiveGetValue;
30
+ private readonly __storeLoaderId;
31
+ get readonlySelector(): BooleanSelector;
34
32
  get hiddenSelector(): BooleanSelector;
35
33
  renderBody(): TemplateResult;
34
+ private get __storeLoader();
36
35
  }
37
36
  export {};
@@ -1,6 +1,7 @@
1
1
  import { TranslatableMixin } from "../../../mixins/translatable.js";
2
2
  import { BooleanSelector } from '@foxy.io/sdk/core';
3
3
  import { InternalForm } from "../../internal/InternalForm/InternalForm.js";
4
+ import { ifDefined } from 'lit-html/directives/if-defined';
4
5
  import { html } from 'lit-html';
5
6
  const NS = 'payments-api-payment-preset-form';
6
7
  const Base = TranslatableMixin(InternalForm, NS);
@@ -22,18 +23,15 @@ export class PaymentsApiPaymentPresetForm extends Base {
22
23
  this.getFraudProtectionImageSrc = null;
23
24
  /** A function that returns image URL for given payment method `type`. */
24
25
  this.getPaymentMethodImageSrc = null;
25
- this.__getIsPOEnabledValue = () => {
26
- return this.form.is_purchase_order_enabled ? ['true'] : [];
26
+ this.__isPurchaseOrderEnabledGetValue = () => {
27
+ var _a, _b;
28
+ return ((_b = (_a = this.__storeLoader) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.is_active) ? this.form.is_purchase_order_enabled : false;
27
29
  };
28
- this.__setIsPOEnabledValue = newValue => {
29
- this.edit({ is_purchase_order_enabled: newValue.includes('true') });
30
- };
31
- this.__getIsLiveValue = () => {
32
- return this.form.is_live ? ['live'] : ['test'];
33
- };
34
- this.__setIsLiveValue = newValue => {
35
- this.edit({ is_live: newValue.includes('live') });
30
+ this.__isLiveGetValue = () => {
31
+ var _a, _b;
32
+ return ((_b = (_a = this.__storeLoader) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.is_active) ? this.form.is_live : false;
36
33
  };
34
+ this.__storeLoaderId = 'storeLoader';
37
35
  }
38
36
  static get properties() {
39
37
  return {
@@ -48,99 +46,94 @@ export class PaymentsApiPaymentPresetForm extends Base {
48
46
  ({ description: v }) => (v && v.length <= 100) || 'description:v8n_too_long',
49
47
  ];
50
48
  }
49
+ get readonlySelector() {
50
+ var _a, _b;
51
+ const alwaysMatch = [super.hiddenSelector.toString()];
52
+ if (!((_b = (_a = this.__storeLoader) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.is_active)) {
53
+ alwaysMatch.unshift('general:is-live', 'general:is-purchase-order-enabled');
54
+ }
55
+ return new BooleanSelector(alwaysMatch.join(' ').trim());
56
+ }
51
57
  get hiddenSelector() {
52
- return new BooleanSelector(`header:copy-json ${super.hiddenSelector}`.trimEnd());
58
+ var _a;
59
+ const alwaysMatch = ['header:copy-json', super.hiddenSelector.toString()];
60
+ const store = (_a = this.__storeLoader) === null || _a === void 0 ? void 0 : _a.data;
61
+ if (!this.data)
62
+ alwaysMatch.unshift('payment-methods', 'fraud-protections');
63
+ if (!store)
64
+ alwaysMatch.unshift('general:is-live', 'general:is-purchase-order-enabled');
65
+ return new BooleanSelector(alwaysMatch.join(' ').trim());
53
66
  }
54
67
  renderBody() {
55
- const constructor = this.constructor;
68
+ var _a, _b, _c, _d, _e, _f;
69
+ const isStoreActive = !!((_b = (_a = this.__storeLoader) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.is_active);
70
+ const helperTextSuffix = isStoreActive ? '' : '_inactive_store';
56
71
  return html `
57
72
  ${this.renderHeader()}
58
73
 
59
- <foxy-internal-text-control infer="description"></foxy-internal-text-control>
74
+ <foxy-internal-summary-control infer="general">
75
+ <foxy-internal-text-control layout="summary-item" infer="description">
76
+ </foxy-internal-text-control>
60
77
 
61
- <div class="-mb-s">
62
- <foxy-internal-checkbox-group-control
78
+ <foxy-internal-switch-control
79
+ helper-text=${this.t(`general.is-live.helper_text${helperTextSuffix}`)}
63
80
  infer="is-live"
64
- .getValue=${this.__getIsLiveValue}
65
- .setValue=${this.__setIsLiveValue}
66
- .options=${constructor.__isLiveOptions}
81
+ helper-text-as-tooltip
82
+ .getValue=${this.__isLiveGetValue}
67
83
  >
68
- </foxy-internal-checkbox-group-control>
84
+ </foxy-internal-switch-control>
69
85
 
70
- <foxy-internal-checkbox-group-control
86
+ <foxy-internal-switch-control
87
+ helper-text=${this.t(`general.is-purchase-order-enabled.helper_text${helperTextSuffix}`)}
71
88
  infer="is-purchase-order-enabled"
72
- .getValue=${this.__getIsPOEnabledValue}
73
- .setValue=${this.__setIsPOEnabledValue}
74
- .options=${constructor.__isPOEnabledOptions}
89
+ helper-text-as-tooltip
90
+ .getValue=${this.__isPurchaseOrderEnabledGetValue}
75
91
  >
76
- </foxy-internal-checkbox-group-control>
77
- </div>
92
+ </foxy-internal-switch-control>
93
+ </foxy-internal-summary-control>
78
94
 
79
- ${this.data
80
- ? html `
81
- <foxy-internal-async-list-control
82
- infer="payment-methods"
83
- first=${this.data._links['fx:payment_methods'].href}
84
- limit="5"
85
- alert
86
- .item=${(ctx) => html `
87
- <foxy-payments-api-payment-method-card
88
- parent=${ctx.parent}
89
- infer="payments-api-payment-method-card"
90
- href=${ctx.href}
91
- .getImageSrc=${this.getPaymentMethodImageSrc}
92
- >
93
- </foxy-payments-api-payment-method-card>
94
- `}
95
- .form=${(ctx) => html `
96
- <foxy-payments-api-payment-method-form
97
- parent=${ctx.dialog.parent}
98
- infer="payments-api-payment-method-form"
99
- href=${ctx.dialog.href}
100
- id="form"
101
- .getImageSrc=${this.getPaymentMethodImageSrc}
102
- @fetch=${ctx.handleFetch}
103
- @update=${ctx.handleUpdate}
104
- >
105
- </foxy-payments-api-payment-method-form>
106
- `}
107
- >
108
- </foxy-internal-async-list-control>
95
+ <foxy-internal-async-list-control
96
+ infer="payment-methods"
97
+ first=${ifDefined((_c = this.data) === null || _c === void 0 ? void 0 : _c._links['fx:payment_methods'].href)}
98
+ limit="5"
99
+ item="foxy-payments-api-payment-method-card"
100
+ form="foxy-payments-api-payment-method-form"
101
+ alert
102
+ .itemProps=${{ '.getImageSrc': this.getPaymentMethodImageSrc }}
103
+ .formProps=${{
104
+ '.getImageSrc': this.getPaymentMethodImageSrc,
105
+ 'payment-preset': this.href,
106
+ 'store': (_d = this.data) === null || _d === void 0 ? void 0 : _d._links['fx:store'].href,
107
+ }}
108
+ >
109
+ </foxy-internal-async-list-control>
110
+
111
+ <foxy-internal-async-list-control
112
+ infer="fraud-protections"
113
+ first=${ifDefined((_e = this.data) === null || _e === void 0 ? void 0 : _e._links['fx:fraud_protections'].href)}
114
+ limit="5"
115
+ item="foxy-payments-api-fraud-protection-card"
116
+ form="foxy-payments-api-fraud-protection-form"
117
+ alert
118
+ .itemProps=${{ '.getImageSrc': this.getFraudProtectionImageSrc }}
119
+ .formProps=${{ '.getImageSrc': this.getFraudProtectionImageSrc }}
120
+ >
121
+ </foxy-internal-async-list-control>
109
122
 
110
- <foxy-internal-async-list-control
111
- infer="fraud-protections"
112
- first=${this.data._links['fx:fraud_protections'].href}
113
- limit="5"
114
- alert
115
- .item=${(ctx) => html `
116
- <foxy-payments-api-fraud-protection-card
117
- parent=${ctx.parent}
118
- infer="payments-api-fraud-protection-card"
119
- href=${ctx.href}
120
- .getImageSrc=${this.getFraudProtectionImageSrc}
121
- >
122
- </foxy-payments-api-fraud-protection-card>
123
- `}
124
- .form=${(ctx) => html `
125
- <foxy-payments-api-fraud-protection-form
126
- parent=${ctx.dialog.parent}
127
- infer="payments-api-fraud-protection-form"
128
- href=${ctx.dialog.href}
129
- id="form"
130
- .getImageSrc=${this.getFraudProtectionImageSrc}
131
- @fetch=${ctx.handleFetch}
132
- @update=${ctx.handleUpdate}
133
- >
134
- </foxy-payments-api-fraud-protection-form>
135
- `}
136
- >
137
- </foxy-internal-async-list-control>
138
- `
139
- : ''}
140
123
  ${super.renderBody()}
124
+
125
+ <foxy-nucleon
126
+ class="hidden"
127
+ infer=""
128
+ href=${ifDefined((_f = this.data) === null || _f === void 0 ? void 0 : _f._links['fx:store'].href)}
129
+ id=${this.__storeLoaderId}
130
+ @update=${() => this.requestUpdate()}
131
+ >
132
+ </foxy-nucleon>
141
133
  `;
142
134
  }
135
+ get __storeLoader() {
136
+ return this.renderRoot.querySelector(`#${this.__storeLoaderId}`);
137
+ }
143
138
  }
144
- PaymentsApiPaymentPresetForm.__isPOEnabledOptions = [{ label: 'option_true', value: 'true' }];
145
- PaymentsApiPaymentPresetForm.__isLiveOptions = [{ label: 'option_live', value: 'live' }];
146
139
  //# sourceMappingURL=PaymentsApiPaymentPresetForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentsApiPaymentPresetForm.js","sourceRoot":"","sources":["../../../../src/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { InternalCheckboxGroupControl } from '../../internal/InternalCheckboxGroupControl/InternalCheckboxGroupControl';\nimport type { PropertyDeclarations } from 'lit-element';\nimport type { FormRendererContext } from '../FormDialog/types';\nimport type { ItemRendererContext } from '../CollectionPage/types';\nimport type { Data } from './types';\nimport type { TemplateResult } from 'lit-html';\nimport type { NucleonV8N } from '../NucleonElement/types';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { html } from 'lit-html';\n\nconst NS = 'payments-api-payment-preset-form';\nconst Base = TranslatableMixin(InternalForm, NS);\n\n/**\n * Form element for the `fx:payment_preset` resource of Payments API.\n *\n * _Payments API is a client-side virtual API layer built on top of hAPI\n * in an attempt to streamline access to stores' payment method settings\n * that is currently a bit quirky due to the legacy functionality. To use\n * this element with hAPI, wrap it into a foxy-payments-api node._\n *\n * @element foxy-payments-api-payment-preset-form\n * @since 1.21.0\n */\nexport class PaymentsApiPaymentPresetForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n getFraudProtectionImageSrc: { attribute: false },\n getPaymentMethodImageSrc: { attribute: false },\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ description: v }) => !!v || 'description:v8n_required',\n ({ description: v }) => (v && v.length <= 100) || 'description:v8n_too_long',\n ];\n }\n\n /** A function that returns image URL for given fraud protection `type`. */\n getFraudProtectionImageSrc: ((type: string) => string) | null = null;\n\n /** A function that returns image URL for given payment method `type`. */\n getPaymentMethodImageSrc: ((type: string) => string) | null = null;\n\n private static readonly __isPOEnabledOptions = [{ label: 'option_true', value: 'true' }];\n\n private static readonly __isLiveOptions = [{ label: 'option_live', value: 'live' }];\n\n private __getIsPOEnabledValue: InternalCheckboxGroupControl['getValue'] = () => {\n return this.form.is_purchase_order_enabled ? ['true'] : [];\n };\n\n private __setIsPOEnabledValue: InternalCheckboxGroupControl['setValue'] = newValue => {\n this.edit({ is_purchase_order_enabled: (newValue as string[]).includes('true') });\n };\n\n private __getIsLiveValue: InternalCheckboxGroupControl['getValue'] = () => {\n return this.form.is_live ? ['live'] : ['test'];\n };\n\n private __setIsLiveValue: InternalCheckboxGroupControl['setValue'] = newValue => {\n this.edit({ is_live: (newValue as string[]).includes('live') });\n };\n\n get hiddenSelector(): BooleanSelector {\n return new BooleanSelector(`header:copy-json ${super.hiddenSelector}`.trimEnd());\n }\n\n renderBody(): TemplateResult {\n const constructor = this.constructor as typeof PaymentsApiPaymentPresetForm;\n\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-text-control infer=\"description\"></foxy-internal-text-control>\n\n <div class=\"-mb-s\">\n <foxy-internal-checkbox-group-control\n infer=\"is-live\"\n .getValue=${this.__getIsLiveValue}\n .setValue=${this.__setIsLiveValue}\n .options=${constructor.__isLiveOptions}\n >\n </foxy-internal-checkbox-group-control>\n\n <foxy-internal-checkbox-group-control\n infer=\"is-purchase-order-enabled\"\n .getValue=${this.__getIsPOEnabledValue}\n .setValue=${this.__setIsPOEnabledValue}\n .options=${constructor.__isPOEnabledOptions}\n >\n </foxy-internal-checkbox-group-control>\n </div>\n\n ${this.data\n ? html`\n <foxy-internal-async-list-control\n infer=\"payment-methods\"\n first=${this.data._links['fx:payment_methods'].href}\n limit=\"5\"\n alert\n .item=${(ctx: ItemRendererContext) => html`\n <foxy-payments-api-payment-method-card\n parent=${ctx.parent}\n infer=\"payments-api-payment-method-card\"\n href=${ctx.href}\n .getImageSrc=${this.getPaymentMethodImageSrc}\n >\n </foxy-payments-api-payment-method-card>\n `}\n .form=${(ctx: FormRendererContext) => html`\n <foxy-payments-api-payment-method-form\n parent=${ctx.dialog.parent}\n infer=\"payments-api-payment-method-form\"\n href=${ctx.dialog.href}\n id=\"form\"\n .getImageSrc=${this.getPaymentMethodImageSrc}\n @fetch=${ctx.handleFetch}\n @update=${ctx.handleUpdate}\n >\n </foxy-payments-api-payment-method-form>\n `}\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"fraud-protections\"\n first=${this.data._links['fx:fraud_protections'].href}\n limit=\"5\"\n alert\n .item=${(ctx: ItemRendererContext) => html`\n <foxy-payments-api-fraud-protection-card\n parent=${ctx.parent}\n infer=\"payments-api-fraud-protection-card\"\n href=${ctx.href}\n .getImageSrc=${this.getFraudProtectionImageSrc}\n >\n </foxy-payments-api-fraud-protection-card>\n `}\n .form=${(ctx: FormRendererContext) => html`\n <foxy-payments-api-fraud-protection-form\n parent=${ctx.dialog.parent}\n infer=\"payments-api-fraud-protection-form\"\n href=${ctx.dialog.href}\n id=\"form\"\n .getImageSrc=${this.getFraudProtectionImageSrc}\n @fetch=${ctx.handleFetch}\n @update=${ctx.handleUpdate}\n >\n </foxy-payments-api-fraud-protection-form>\n `}\n >\n </foxy-internal-async-list-control>\n `\n : ''}\n ${super.renderBody()}\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"PaymentsApiPaymentPresetForm.js","sourceRoot":"","sources":["../../../../src/elements/public/PaymentsApiPaymentPresetForm/PaymentsApiPaymentPresetForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations } from 'lit-element';\nimport type { TemplateResult } from 'lit-html';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Data } from './types';\nimport type { Rels } from '@foxy.io/sdk/backend';\n\nimport { TranslatableMixin } from '../../../mixins/translatable';\nimport { BooleanSelector } from '@foxy.io/sdk/core';\nimport { InternalForm } from '../../internal/InternalForm/InternalForm';\nimport { ifDefined } from 'lit-html/directives/if-defined';\nimport { html } from 'lit-html';\n\nconst NS = 'payments-api-payment-preset-form';\nconst Base = TranslatableMixin(InternalForm, NS);\n\n/**\n * Form element for the `fx:payment_preset` resource of Payments API.\n *\n * _Payments API is a client-side virtual API layer built on top of hAPI\n * in an attempt to streamline access to stores' payment method settings\n * that is currently a bit quirky due to the legacy functionality. To use\n * this element with hAPI, wrap it into a foxy-payments-api node._\n *\n * @element foxy-payments-api-payment-preset-form\n * @since 1.21.0\n */\nexport class PaymentsApiPaymentPresetForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n getFraudProtectionImageSrc: { attribute: false },\n getPaymentMethodImageSrc: { attribute: false },\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ description: v }) => !!v || 'description:v8n_required',\n ({ description: v }) => (v && v.length <= 100) || 'description:v8n_too_long',\n ];\n }\n\n /** A function that returns image URL for given fraud protection `type`. */\n getFraudProtectionImageSrc: ((type: string) => string) | null = null;\n\n /** A function that returns image URL for given payment method `type`. */\n getPaymentMethodImageSrc: ((type: string) => string) | null = null;\n\n private readonly __isPurchaseOrderEnabledGetValue = () => {\n return this.__storeLoader?.data?.is_active ? this.form.is_purchase_order_enabled : false;\n };\n\n private readonly __isLiveGetValue = () => {\n return this.__storeLoader?.data?.is_active ? this.form.is_live : false;\n };\n\n private readonly __storeLoaderId = 'storeLoader';\n\n get readonlySelector(): BooleanSelector {\n const alwaysMatch = [super.hiddenSelector.toString()];\n\n if (!this.__storeLoader?.data?.is_active) {\n alwaysMatch.unshift('general:is-live', 'general:is-purchase-order-enabled');\n }\n\n return new BooleanSelector(alwaysMatch.join(' ').trim());\n }\n\n get hiddenSelector(): BooleanSelector {\n const alwaysMatch = ['header:copy-json', super.hiddenSelector.toString()];\n const store = this.__storeLoader?.data;\n\n if (!this.data) alwaysMatch.unshift('payment-methods', 'fraud-protections');\n if (!store) alwaysMatch.unshift('general:is-live', 'general:is-purchase-order-enabled');\n\n return new BooleanSelector(alwaysMatch.join(' ').trim());\n }\n\n renderBody(): TemplateResult {\n const isStoreActive = !!this.__storeLoader?.data?.is_active;\n const helperTextSuffix = isStoreActive ? '' : '_inactive_store';\n\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-summary-control infer=\"general\">\n <foxy-internal-text-control layout=\"summary-item\" infer=\"description\">\n </foxy-internal-text-control>\n\n <foxy-internal-switch-control\n helper-text=${this.t(`general.is-live.helper_text${helperTextSuffix}`)}\n infer=\"is-live\"\n helper-text-as-tooltip\n .getValue=${this.__isLiveGetValue}\n >\n </foxy-internal-switch-control>\n\n <foxy-internal-switch-control\n helper-text=${this.t(`general.is-purchase-order-enabled.helper_text${helperTextSuffix}`)}\n infer=\"is-purchase-order-enabled\"\n helper-text-as-tooltip\n .getValue=${this.__isPurchaseOrderEnabledGetValue}\n >\n </foxy-internal-switch-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-async-list-control\n infer=\"payment-methods\"\n first=${ifDefined(this.data?._links['fx:payment_methods'].href)}\n limit=\"5\"\n item=\"foxy-payments-api-payment-method-card\"\n form=\"foxy-payments-api-payment-method-form\"\n alert\n .itemProps=${{ '.getImageSrc': this.getPaymentMethodImageSrc }}\n .formProps=${{\n '.getImageSrc': this.getPaymentMethodImageSrc,\n 'payment-preset': this.href,\n 'store': this.data?._links['fx:store'].href,\n }}\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-async-list-control\n infer=\"fraud-protections\"\n first=${ifDefined(this.data?._links['fx:fraud_protections'].href)}\n limit=\"5\"\n item=\"foxy-payments-api-fraud-protection-card\"\n form=\"foxy-payments-api-fraud-protection-form\"\n alert\n .itemProps=${{ '.getImageSrc': this.getFraudProtectionImageSrc }}\n .formProps=${{ '.getImageSrc': this.getFraudProtectionImageSrc }}\n >\n </foxy-internal-async-list-control>\n\n ${super.renderBody()}\n\n <foxy-nucleon\n class=\"hidden\"\n infer=\"\"\n href=${ifDefined(this.data?._links['fx:store'].href)}\n id=${this.__storeLoaderId}\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n `;\n }\n\n private get __storeLoader() {\n type Loader = NucleonElement<Resource<Rels.Store>>;\n return this.renderRoot.querySelector<Loader>(`#${this.__storeLoaderId}`);\n }\n}\n"]}
@@ -1,5 +1,6 @@
1
- import '../../internal/InternalCheckboxGroupControl/index';
2
1
  import '../../internal/InternalAsyncListControl/index';
2
+ import '../../internal/InternalSummaryControl/index';
3
+ import '../../internal/InternalSwitchControl/index';
3
4
  import '../../internal/InternalTextControl/index';
4
5
  import '../../internal/InternalForm/index';
5
6
  import '../PaymentsApiFraudProtectionCard/index';
@@ -1,5 +1,6 @@
1
- import "../../internal/InternalCheckboxGroupControl/index.js";
2
1
  import "../../internal/InternalAsyncListControl/index.js";
2
+ import "../../internal/InternalSummaryControl/index.js";
3
+ import "../../internal/InternalSwitchControl/index.js";
3
4
  import "../../internal/InternalTextControl/index.js";
4
5
  import "../../internal/InternalForm/index.js";
5
6
  import "../PaymentsApiFraudProtectionCard/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/PaymentsApiPaymentPresetForm/index.ts"],"names":[],"mappings":"AAAA,8DAA2D;AAC3D,0DAAuD;AACvD,qDAAkD;AAClD,8CAA2C;AAE3C,oDAAiD;AACjD,oDAAiD;AAEjD,kDAA+C;AAC/C,kDAA+C;AAE/C,OAAO,EAAE,4BAA4B,EAAE,0CAAuC;AAE9E,cAAc,CAAC,MAAM,CAAC,uCAAuC,EAAE,4BAA4B,CAAC,CAAC;AAE7F,OAAO,EAAE,4BAA4B,EAAE,CAAC","sourcesContent":["import '../../internal/InternalCheckboxGroupControl/index';\nimport '../../internal/InternalAsyncListControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport '../PaymentsApiFraudProtectionCard/index';\nimport '../PaymentsApiFraudProtectionForm/index';\n\nimport '../PaymentsApiPaymentMethodCard/index';\nimport '../PaymentsApiPaymentMethodForm/index';\n\nimport { PaymentsApiPaymentPresetForm } from './PaymentsApiPaymentPresetForm';\n\ncustomElements.define('foxy-payments-api-payment-preset-form', PaymentsApiPaymentPresetForm);\n\nexport { PaymentsApiPaymentPresetForm };\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/PaymentsApiPaymentPresetForm/index.ts"],"names":[],"mappings":"AAAA,0DAAuD;AACvD,wDAAqD;AACrD,uDAAoD;AACpD,qDAAkD;AAClD,8CAA2C;AAE3C,oDAAiD;AACjD,oDAAiD;AAEjD,kDAA+C;AAC/C,kDAA+C;AAE/C,OAAO,EAAE,4BAA4B,EAAE,0CAAuC;AAE9E,cAAc,CAAC,MAAM,CAAC,uCAAuC,EAAE,4BAA4B,CAAC,CAAC;AAE7F,OAAO,EAAE,4BAA4B,EAAE,CAAC","sourcesContent":["import '../../internal/InternalAsyncListControl/index';\nimport '../../internal/InternalSummaryControl/index';\nimport '../../internal/InternalSwitchControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport '../PaymentsApiFraudProtectionCard/index';\nimport '../PaymentsApiFraudProtectionForm/index';\n\nimport '../PaymentsApiPaymentMethodCard/index';\nimport '../PaymentsApiPaymentMethodForm/index';\n\nimport { PaymentsApiPaymentPresetForm } from './PaymentsApiPaymentPresetForm';\n\ncustomElements.define('foxy-payments-api-payment-preset-form', PaymentsApiPaymentPresetForm);\n\nexport { PaymentsApiPaymentPresetForm };\n"]}
@@ -2499,10 +2499,6 @@ input::-webkit-date-and-time-value{
2499
2499
  transition-duration: 200ms;
2500
2500
  }
2501
2501
 
2502
- .duration-300 {
2503
- transition-duration: 300ms;
2504
- }
2505
-
2506
2502
  .duration-500 {
2507
2503
  transition-duration: 500ms;
2508
2504
  }
@@ -1 +1 @@
1
- {"version":3,"file":"themeable.js","sourceRoot":"","sources":["../../src/mixins/themeable.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAEtE,OAAO,EAA0C,UAAU,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEtF,OAAO,EAAE,eAAe,EAAE,wBAAqB;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAI/E,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,WAAkB,EACkB,EAAE;IACtC,OAAO,MAAM,gBAAiB,SAAQ,WAAW;QAC/C,MAAM,KAAK,MAAM;YACf,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;YAEjC,OAAO;gBACL,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClF,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA+IF;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,IAAI;IACF,cAAc,CACZ,yBAAyB,EACzB,GAAG;;;;;;;;KASF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED,IAAI;IACF,cAAc,CACZ,qCAAqC,EACrC,GAAG;;;;;;;KAOF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED,IAAI;IACF,cAAc,CACZ,qCAAqC,EACrC,GAAG;;;;;;;KAOF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED,IAAI;IACF,cAAc,CACZ,eAAe,EACf,GAAG;;;KAIF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED,IAAI;IACF,uEAAuE;IACvE,cAAc,CACZ,aAAa,EACb,GAAG;;;KAIF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED;;;;;;;GAOG;AACH,MAAM,OAAgB,SAAU,SAAQ,mBAAmB,CACzD,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAC5C;CAAG","sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n\nimport { CSSResult, CSSResultArray, Constructor, LitElement, css } from 'lit-element';\n\nimport { ResponsiveMixin } from './responsive';\nimport { ScopedElementsMixin } from '@open-wc/scoped-elements';\nimport { registerStyles } from '@vaadin/vaadin-themable-mixin/register-styles';\n\ntype Base = Constructor<LitElement> & { styles?: CSSResult | CSSResultArray | CSSStyleSheet };\n\nexport const ThemeableMixin = <TBase extends Base>(\n BaseElement: TBase\n): TBase & { styles: CSSResultArray } => {\n return class ThemeableElement extends BaseElement {\n static get styles(): CSSResultArray {\n const originalCSS = super.styles;\n\n return [\n ...(originalCSS ? (Array.isArray(originalCSS) ? originalCSS : [originalCSS]) : []),\n css`\n @tailwind base;\n\n * {\n -webkit-tap-highlight-color: transparent;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n :host {\n display: block;\n color: var(--lumo-body-text-color);\n line-height: var(--lumo-line-height-m);\n font: normal var(--lumo-font-size-m) var(--lumo-font-family);\n }\n\n details > summary::-webkit-details-marker {\n display: none;\n }\n\n details > summary {\n list-style: none;\n }\n\n vaadin-select {\n margin-top: -4px;\n margin-bottom: -4px;\n }\n\n vaadin-text-area,\n vaadin-text-field,\n vaadin-date-picker,\n vaadin-email-field,\n vaadin-number-field,\n vaadin-custom-field,\n vaadin-integer-field,\n vaadin-password-field,\n vaadin-checkbox-group,\n vaadin-radio-group,\n vaadin-combo-box::part(text-field),\n vaadin-date-picker::part(text-field) {\n padding-top: 0;\n padding-bottom: 0;\n }\n\n vaadin-text-area::part(label),\n vaadin-text-field::part(label),\n vaadin-date-picker::part(label),\n vaadin-email-field::part(label),\n vaadin-number-field::part(label),\n vaadin-custom-field::part(label),\n vaadin-integer-field::part(label),\n vaadin-password-field::part(label),\n vaadin-checkbox-group::part(label),\n vaadin-radio-group::part(label),\n vaadin-combo-box::part(label),\n vaadin-date-picker::part(label) {\n margin-left: 0;\n }\n\n vaadin-time-picker,\n vaadin-date-time-picker {\n width: 100%;\n }\n\n vaadin-button,\n vaadin-checkbox::part(checkbox) {\n margin: 0;\n }\n\n vaadin-checkbox::part(label) {\n margin: 0.1875em var(--lumo-space-m);\n }\n\n .appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n }\n\n .appearance-none::-webkit-calendar-picker-indicator,\n .appearance-none::-webkit-outer-spin-button,\n .appearance-none::-webkit-inner-spin-button,\n .appearance-none::-webkit-list-button {\n opacity: 0 !important;\n width: 0 !important;\n margin: 0 !important;\n padding: 0 !important;\n }\n\n input::-webkit-date-and-time-value {\n text-align: inherit !important;\n }\n\n [hidden] {\n display: none !important;\n }\n\n @tailwind components;\n\n @tailwind utilities;\n\n @layer utilities {\n .border-radius-overflow-fix {\n -webkit-mask-image: -webkit-radial-gradient(white, black);\n }\n\n @variants sm, md, lg, xl {\n .grid-rows-auto {\n grid-auto-rows: 1fr;\n }\n\n .icon-inline {\n --iron-icon-height: 1em;\n --iron-icon-width: 1em;\n }\n\n .bg-blurred {\n backdrop-filter: blur(25px);\n background: var(--lumo-tint-80pct);\n }\n\n .max-w-modal {\n max-width: 28rem;\n }\n\n .max-w-modal-wide {\n max-width: 50rem;\n }\n\n .w-narrow-modal {\n width: 18rem;\n }\n\n .snap-x-mandatory {\n scroll-snap-type: x mandatory;\n }\n\n .snap-start {\n scroll-snap-align: start;\n }\n }\n }\n `,\n ];\n }\n };\n};\n\ntry {\n registerStyles(\n 'vaadin-date-time-picker',\n css`\n vaadin-date-time-picker-custom-field {\n --lumo-text-field-size: auto;\n padding: 0;\n }\n\n vaadin-date-time-picker-custom-field::part(label) {\n padding-bottom: 0.5em;\n }\n `\n );\n} catch {\n // ignore\n}\n\ntry {\n registerStyles(\n 'vaadin-date-time-picker-date-picker',\n css`\n :host {\n --lumo-text-field-size: auto;\n }\n vaadin-date-time-picker-date-text-field {\n padding: 0;\n }\n `\n );\n} catch {\n // ignore\n}\n\ntry {\n registerStyles(\n 'vaadin-date-time-picker-time-picker',\n css`\n :host {\n --lumo-text-field-size: auto;\n }\n vaadin-date-time-picker-time-text-field {\n padding: 0;\n }\n `\n );\n} catch {\n // ignore\n}\n\ntry {\n registerStyles(\n 'vaadin-button',\n css`\n :host([theme~='primary']) {\n font-weight: 500;\n }\n `\n );\n} catch {\n // ignore\n}\n\ntry {\n /** https://github.com/vaadin-component-factory/vcf-tooltip/issues/6 */\n registerStyles(\n 'vcf-tooltip',\n css`\n :host([hidden]) [part='container'] {\n display: none !important;\n }\n `\n );\n} catch {\n // ignore\n}\n\n/**\n * One of the base classes for each rel-specific element in the collection\n * providing shared TailwindCSS styles for Shadow DOM content.\n * This class MUST NOT be used on its own (hence the `abstract` keyword) or\n * referenced externally (outside of the package).\n *\n * @deprecated\n */\nexport abstract class Themeable extends ScopedElementsMixin(\n ResponsiveMixin(ThemeableMixin(LitElement))\n) {}\n"]}
1
+ {"version":3,"file":"themeable.js","sourceRoot":"","sources":["../../src/mixins/themeable.ts"],"names":[],"mappings":"AAAA,sEAAsE;AAEtE,OAAO,EAA0C,UAAU,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEtF,OAAO,EAAE,eAAe,EAAE,wBAAqB;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAI/E,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,WAAkB,EACkB,EAAE;IACtC,OAAO,MAAM,gBAAiB,SAAQ,WAAW;QAC/C,MAAM,KAAK,MAAM;YACf,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC;YAEjC,OAAO;gBACL,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClF,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA+IF;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,IAAI;IACF,cAAc,CACZ,yBAAyB,EACzB,GAAG;;;;;;;;KASF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED,IAAI;IACF,cAAc,CACZ,qCAAqC,EACrC,GAAG;;;;;;;KAOF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED,IAAI;IACF,cAAc,CACZ,qCAAqC,EACrC,GAAG;;;;;;;KAOF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED,IAAI;IACF,cAAc,CACZ,eAAe,EACf,GAAG;;;KAIF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED,IAAI;IACF,uEAAuE;IACvE,cAAc,CACZ,aAAa,EACb,GAAG;;;KAIF,CACF,CAAC;CACH;AAAC,WAAM;IACN,SAAS;CACV;AAED;;;;;;;GAOG;AACH,MAAM,OAAgB,SAAU,SAAQ,mBAAmB,CACzD,eAAe,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAC5C;CAAG","sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n\nimport { CSSResult, CSSResultArray, Constructor, LitElement, css } from 'lit-element';\n\nimport { ResponsiveMixin } from './responsive';\nimport { ScopedElementsMixin } from '@open-wc/scoped-elements';\nimport { registerStyles } from '@vaadin/vaadin-themable-mixin/register-styles';\n\ntype Base = Constructor<LitElement> & { styles?: CSSResult | CSSResultArray | CSSStyleSheet };\n\nexport const ThemeableMixin = <TBase extends Base>(\n BaseElement: TBase\n): TBase & { styles: CSSResultArray } => {\n return class ThemeableElement extends BaseElement {\n static get styles(): CSSResultArray {\n const originalCSS = super.styles;\n\n return [\n ...(originalCSS ? (Array.isArray(originalCSS) ? originalCSS : [originalCSS]) : []),\n css`\n @tailwind base;\n\n * {\n -webkit-tap-highlight-color: transparent;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n\n :host {\n display: block;\n color: var(--lumo-body-text-color);\n line-height: var(--lumo-line-height-m);\n font: normal var(--lumo-font-size-m) var(--lumo-font-family);\n }\n\n details > summary::-webkit-details-marker {\n display: none;\n }\n\n details > summary {\n list-style: none;\n }\n\n vaadin-select {\n margin-top: -4px;\n margin-bottom: -4px;\n }\n\n vaadin-text-area,\n vaadin-text-field,\n vaadin-date-picker,\n vaadin-email-field,\n vaadin-number-field,\n vaadin-custom-field,\n vaadin-integer-field,\n vaadin-password-field,\n vaadin-checkbox-group,\n vaadin-radio-group,\n vaadin-combo-box::part(text-field),\n vaadin-date-picker::part(text-field) {\n padding-top: 0;\n padding-bottom: 0;\n }\n\n vaadin-text-area::part(label),\n vaadin-text-field::part(label),\n vaadin-date-picker::part(label),\n vaadin-email-field::part(label),\n vaadin-number-field::part(label),\n vaadin-custom-field::part(label),\n vaadin-integer-field::part(label),\n vaadin-password-field::part(label),\n vaadin-checkbox-group::part(label),\n vaadin-radio-group::part(label),\n vaadin-combo-box::part(label),\n vaadin-date-picker::part(label) {\n margin-left: 0;\n }\n\n vaadin-time-picker,\n vaadin-date-time-picker {\n width: 100%;\n }\n\n vaadin-button,\n vaadin-checkbox::part(checkbox) {\n margin: 0;\n }\n\n vaadin-checkbox::part(label) {\n margin: 0.1875em var(--lumo-space-m);\n }\n\n .appearance-none {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n }\n\n .appearance-none::-webkit-calendar-picker-indicator,\n .appearance-none::-webkit-outer-spin-button,\n .appearance-none::-webkit-inner-spin-button,\n .appearance-none::-webkit-list-button {\n opacity: 0 !important;\n width: 0 !important;\n margin: 0 !important;\n padding: 0 !important;\n }\n\n input::-webkit-date-and-time-value {\n text-align: inherit !important;\n }\n\n [hidden] {\n display: none !important;\n }\n\n @tailwind components;\n\n @tailwind utilities;\n\n @layer utilities {\n .border-radius-overflow-fix {\n -webkit-mask-image: -webkit-radial-gradient(white, black);\n }\n\n @variants sm, md, lg, xl {\n .grid-rows-auto {\n grid-auto-rows: 1fr;\n }\n\n .icon-inline {\n --iron-icon-height: 1em;\n --iron-icon-width: 1em;\n }\n\n .bg-blurred {\n backdrop-filter: blur(25px);\n background: var(--lumo-tint-80pct);\n }\n\n .max-w-modal {\n max-width: 28rem;\n }\n\n .max-w-modal-wide {\n max-width: 50rem;\n }\n\n .w-narrow-modal {\n width: 18rem;\n }\n\n .snap-x-mandatory {\n scroll-snap-type: x mandatory;\n }\n\n .snap-start {\n scroll-snap-align: start;\n }\n }\n }\n `,\n ];\n }\n };\n};\n\ntry {\n registerStyles(\n 'vaadin-date-time-picker',\n css`\n vaadin-date-time-picker-custom-field {\n --lumo-text-field-size: auto;\n padding: 0;\n }\n\n vaadin-date-time-picker-custom-field::part(label) {\n padding-bottom: 0.5em;\n }\n `\n );\n} catch {\n // ignore\n}\n\ntry {\n registerStyles(\n 'vaadin-date-time-picker-date-picker',\n css`\n :host {\n --lumo-text-field-size: auto;\n }\n vaadin-date-time-picker-date-text-field {\n padding: 0;\n }\n `\n );\n} catch {\n // ignore\n}\n\ntry {\n registerStyles(\n 'vaadin-date-time-picker-time-picker',\n css`\n :host {\n --lumo-text-field-size: auto;\n }\n vaadin-date-time-picker-time-text-field {\n padding: 0;\n }\n `\n );\n} catch {\n // ignore\n}\n\ntry {\n registerStyles(\n 'vaadin-button',\n css`\n :host([theme~='primary']) {\n font-weight: 500;\n }\n `\n );\n} catch {\n // ignore\n}\n\ntry {\n /** https://github.com/vaadin-component-factory/vcf-tooltip/issues/6 */\n registerStyles(\n 'vcf-tooltip',\n css`\n :host([hidden]) [part='container'] {\n display: none !important;\n }\n `\n );\n} catch {\n // ignore\n}\n\n/**\n * One of the base classes for each rel-specific element in the collection\n * providing shared TailwindCSS styles for Shadow DOM content.\n * This class MUST NOT be used on its own (hence the `abstract` keyword) or\n * referenced externally (outside of the package).\n *\n * @deprecated\n */\nexport abstract class Themeable extends ScopedElementsMixin(\n ResponsiveMixin(ThemeableMixin(LitElement))\n) {}\n"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@foxy.io/elements",
3
3
  "type": "module",
4
- "version": "1.29.0-beta.5",
4
+ "version": "1.29.0-beta.6",
5
5
  "description": "E-commerce web components by Foxy.",
6
6
  "repository": {
7
7
  "type": "git",
@@ -1 +0,0 @@
1
- import{_ as r}from"./shared-0f6e4584.js";import{p as s}from"./shared-4f6e3162.js";function t(t){var e;const n=s(t),o=null!==(e={y:"yearly",m:"monthly",w:"weekly",d:"daily"}[n.units])&&void 0!==e?e:n.units;return r(r({},n),{},{units:o})}export{t as p};
@@ -1 +0,0 @@
1
- import"./foxy-spinner.js";import{I as e}from"./shared-01b35bfe.js";customElements.define("foxy-internal-card",e);
@@ -1 +0,0 @@
1
- import"./shared-fe167efc.js";import{I as e}from"./shared-f02d1d28.js";import{_ as t}from"./shared-0f6e4584.js";import{c as s,h as i,s as r}from"./shared-dc73b9a5.js";import{i as l}from"./shared-9803aa7c.js";import{c as a}from"./shared-4e709717.js";import{l as o}from"./shared-22ba9566.js";let d,n,u,h,p,c,f=e=>e;customElements.define("foxy-internal-text-control",class extends e{constructor(){super(...arguments),this.layout=null,this.prefix=null,this.suffix=null,this.__isErrorVisible=!1}static get properties(){return t(t({},super.properties),{},{layout:{},prefix:{},suffix:{},__isErrorVisible:{attribute:!1}})}static get styles(){return[super.styles,s(d||(d=f`input::-webkit-contacts-auto-fill-button{visibility:hidden;display:none!important;pointer-events:none;position:absolute;right:0}`))]}reportValidity(){this.__isErrorVisible=!0,super.reportValidity()}renderControl(){return"summary-item"===this.layout?this.__renderSummaryItemLayout():i(n||(n=f` <vaadin-text-field error-message="${0}" helper-text="${0}" placeholder="${0}" label="${0}" class="w-full" ?clear-button-visible="${0}" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" .value="${0}" @keydown="${0}" @input="${0}"> ${0} ${0} </vaadin-text-field> `),l(this._errorMessage),this.helperText,this.placeholder,this.label,!this.suffix,this.disabled,this.readonly,this._checkValidity,this._value,(e=>{var t;return"Enter"===e.key&&(null===(t=this.nucleon)||void 0===t?void 0:t.submit())}),(e=>{const t=e.currentTarget;this._value=t.value}),this.prefix?i(u||(u=f`<div slot="prefix">${0}</div>`),this.prefix):"",this.suffix?i(h||(h=f`<div class="pr-s font-medium" slot="suffix">${0}</div>`),this.suffix):"")}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:""}set _value(e){super._value=e}__renderSummaryItemLayout(){return i(p||(p=f` <div class="flex items-start gap-m leading-xs"> <div> <label class="text-m text-body" for="input">${0}</label> <p class="text-xs text-secondary">${0}</p> <p class="text-xs text-error" ?hidden="${0}"> ${0} </p> </div> <div class="flex-1 flex items-center gap-xs"> <input placeholder="${0}" class="${0}" type="text" id="input" .value="${0}" ?disabled="${0}" ?readonly="${0}" @keydown="${0}" @blur="${0}" @input="${0}"> <button aria-label="${0}" class="${0}" style="width:1em;height:1em" ?disabled="${0}" ?hidden="${0}" @click="${0}"> ${0} </button> </div> </div> `),this.label,this.helperText,!this.__isErrorVisible||this.disabled||this.readonly,this._errorMessage,this.placeholder,a({"w-full appearance-none text-right bg-transparent transition-colors":!0,"text-m rounded-s focus-outline-none":!0,"text-secondary":this.readonly,"text-disabled":this.disabled,"font-medium":!this.readonly}),o(this._value),this.disabled,this.readonly,(e=>{var t;return"Enter"===e.key&&(null===(t=this.nucleon)||void 0===t?void 0:t.submit())}),(()=>this.__isErrorVisible=!0),(e=>{e.stopPropagation(),this._value=e.target.value}),this.t("clear"),a({"rounded-full transition-colors":!0,"focus-outline-none focus-ring-2 focus-ring-primary-50":!0,"cursor-pointer text-tertiary hover-text-body":!this.disabled,"cursor-default text-disabled":this.disabled}),this.disabled,this.readonly||!this._value,(()=>{this._value="",this.dispatchEvent(new CustomEvent("clear"))}),r(c||(c=f`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" style="width: 1em; height: 1em; transform: scale(1.25); margin-right: -0.16em"><path d="M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z" /></svg>`)))}});