@foxy.io/elements 1.42.0-beta.7 → 1.43.0-beta.1
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.
- package/dist/cdn/foxy-access-recovery-form.js +1 -1
- package/dist/cdn/foxy-address-card.js +1 -1
- package/dist/cdn/foxy-address-form.js +1 -1
- package/dist/cdn/foxy-admin-subscription-card.js +1 -1
- package/dist/cdn/foxy-admin-subscription-form.js +1 -1
- package/dist/cdn/foxy-api-browser.js +1 -1
- package/dist/cdn/foxy-applied-coupon-code-card.js +1 -1
- package/dist/cdn/foxy-applied-coupon-code-form.js +1 -1
- package/dist/cdn/foxy-applied-tax-card.js +1 -1
- package/dist/cdn/foxy-attribute-card.js +1 -1
- package/dist/cdn/foxy-attribute-form.js +1 -1
- package/dist/cdn/foxy-billing-address-card.js +1 -1
- package/dist/cdn/foxy-cancellation-form.js +1 -1
- package/dist/cdn/foxy-cart-card.js +1 -1
- package/dist/cdn/foxy-cart-form.js +2 -2
- package/dist/cdn/foxy-client-card.js +1 -1
- package/dist/cdn/foxy-client-form.js +1 -1
- package/dist/cdn/foxy-collection-page.js +1 -1
- package/dist/cdn/foxy-collection-pages.js +1 -1
- package/dist/cdn/foxy-copy-to-clipboard.js +1 -1
- package/dist/cdn/foxy-coupon-card.js +1 -1
- package/dist/cdn/foxy-coupon-code-card.js +1 -1
- package/dist/cdn/foxy-coupon-code-form.js +1 -1
- package/dist/cdn/foxy-coupon-codes-form.js +1 -1
- package/dist/cdn/foxy-coupon-detail-card.js +1 -1
- package/dist/cdn/foxy-coupon-form.js +1 -1
- package/dist/cdn/foxy-custom-field-card.js +1 -1
- package/dist/cdn/foxy-custom-field-form.js +1 -1
- package/dist/cdn/foxy-customer-card.js +1 -1
- package/dist/cdn/foxy-customer-form.js +1 -1
- package/dist/cdn/foxy-customer-portal-settings-form.js +1 -1
- package/dist/cdn/foxy-customer-portal-settings.js +1 -1
- package/dist/cdn/foxy-customer-portal.js +1 -1
- package/dist/cdn/foxy-customer.js +1 -1
- package/dist/cdn/foxy-customers-table.js +1 -1
- package/dist/cdn/foxy-discount-builder.js +1 -1
- package/dist/cdn/foxy-discount-card.js +1 -1
- package/dist/cdn/foxy-discount-detail-card.js +1 -1
- package/dist/cdn/foxy-donation.js +1 -1
- package/dist/cdn/foxy-downloadable-card.js +1 -1
- package/dist/cdn/foxy-downloadable-form.js +2 -2
- package/dist/cdn/foxy-email-template-card.js +1 -1
- package/dist/cdn/foxy-email-template-form.js +1 -1
- package/dist/cdn/foxy-error-entry-card.js +1 -1
- package/dist/cdn/foxy-experimental-add-to-cart-builder.js +1 -1
- package/dist/cdn/foxy-filter-attribute-card.js +1 -1
- package/dist/cdn/foxy-filter-attribute-form.js +1 -1
- package/dist/cdn/foxy-form-dialog.js +1 -1
- package/dist/cdn/foxy-generate-codes-form.js +1 -1
- package/dist/cdn/foxy-gift-card-card.js +1 -1
- package/dist/cdn/foxy-gift-card-code-card.js +1 -1
- package/dist/cdn/foxy-gift-card-code-form.js +1 -1
- package/dist/cdn/foxy-gift-card-code-log-card.js +1 -1
- package/dist/cdn/foxy-gift-card-codes-form.js +1 -1
- package/dist/cdn/foxy-gift-card-form.js +1 -1
- package/dist/cdn/foxy-i18n-editor.js +1 -1
- package/dist/cdn/foxy-i18n.js +1 -1
- package/dist/cdn/foxy-integration-card.js +1 -1
- package/dist/cdn/foxy-integration-form.js +1 -1
- package/dist/cdn/foxy-item-card.js +1 -1
- package/dist/cdn/foxy-item-category-card.js +1 -1
- package/dist/cdn/foxy-item-category-form.js +1 -1
- package/dist/cdn/foxy-item-form.js +1 -1
- package/dist/cdn/foxy-item-option-card.js +1 -1
- package/dist/cdn/foxy-item-option-form.js +1 -1
- package/dist/cdn/foxy-items-form.js +1 -1
- package/dist/cdn/foxy-native-integration-card.js +1 -1
- package/dist/cdn/foxy-native-integration-form.js +1 -1
- package/dist/cdn/foxy-pagination.js +1 -1
- package/dist/cdn/foxy-passkey-card.js +1 -1
- package/dist/cdn/foxy-passkey-form.js +1 -1
- package/dist/cdn/foxy-payment-card-embed.js +1 -1
- package/dist/cdn/foxy-payment-card.js +1 -1
- package/dist/cdn/foxy-payment-method-card.js +1 -1
- package/dist/cdn/foxy-payments-api-fraud-protection-card.js +1 -1
- package/dist/cdn/foxy-payments-api-fraud-protection-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-method-card.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-method-form.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-preset-card.js +1 -1
- package/dist/cdn/foxy-payments-api-payment-preset-form.js +1 -1
- package/dist/cdn/foxy-query-builder.js +1 -1
- package/dist/cdn/foxy-report-form.js +2 -2
- package/dist/cdn/foxy-reports-table.js +6 -6
- package/dist/cdn/foxy-shipment-card.js +1 -1
- package/dist/cdn/foxy-shipping-container-card.js +1 -1
- package/dist/cdn/foxy-shipping-drop-type-card.js +1 -1
- package/dist/cdn/foxy-shipping-method-card.js +1 -1
- package/dist/cdn/foxy-shipping-service-card.js +1 -1
- package/dist/cdn/foxy-sign-in-form.js +1 -1
- package/dist/cdn/foxy-spinner.js +2 -2
- package/dist/cdn/foxy-store-card.js +1 -1
- package/dist/cdn/foxy-store-form.js +1 -1
- package/dist/cdn/foxy-store-shipping-method-form.js +1 -1
- package/dist/cdn/foxy-subscription-card.js +1 -1
- package/dist/cdn/foxy-subscription-form.js +1 -1
- package/dist/cdn/foxy-subscription-settings-form.js +1 -1
- package/dist/cdn/foxy-subscriptions-table.js +1 -1
- package/dist/cdn/foxy-table.js +1 -1
- package/dist/cdn/foxy-tax-card.js +1 -1
- package/dist/cdn/foxy-tax-form.js +1 -1
- package/dist/cdn/foxy-template-config-form.js +1 -1
- package/dist/cdn/foxy-template-form.js +1 -1
- package/dist/cdn/foxy-template-set-card.js +1 -1
- package/dist/cdn/foxy-template-set-form.js +1 -1
- package/dist/cdn/foxy-transaction-card.js +1 -1
- package/dist/cdn/foxy-transaction.js +1 -1
- package/dist/cdn/foxy-transactions-table.js +1 -1
- package/dist/cdn/foxy-update-payment-method-form.js +1 -1
- package/dist/cdn/foxy-user-card.js +1 -1
- package/dist/cdn/foxy-user-form.js +1 -1
- package/dist/cdn/foxy-user-invitation-card.js +1 -1
- package/dist/cdn/foxy-user-invitation-form.js +1 -1
- package/dist/cdn/foxy-users-table.js +1 -1
- package/dist/cdn/foxy-webhook-card.js +1 -1
- package/dist/cdn/foxy-webhook-form.js +1 -1
- package/dist/cdn/foxy-webhook-log-card.js +1 -1
- package/dist/cdn/foxy-webhook-status-card.js +1 -1
- package/dist/cdn/{shared-3a2134c8.js → shared-0224f0b8.js} +1 -1
- package/dist/cdn/{shared-4d919766.js → shared-0d0585dc.js} +1 -1
- package/dist/cdn/{shared-f79f08cc.js → shared-1cd02e50.js} +1 -1
- package/dist/cdn/{shared-3cdec25d.js → shared-264e8301.js} +1 -1
- package/dist/cdn/{shared-0c242246.js → shared-274dec57.js} +1 -1
- package/dist/cdn/{shared-5a04e75c.js → shared-2828fcbf.js} +1 -1
- package/dist/cdn/{shared-330e57d9.js → shared-2cb397e4.js} +1 -1
- package/dist/cdn/{shared-1d03f911.js → shared-2f5cc0e2.js} +1 -1
- package/dist/cdn/{shared-8e010314.js → shared-2f8e53c0.js} +1 -1
- package/dist/cdn/{shared-98f382f3.js → shared-41208627.js} +1 -1
- package/dist/cdn/{shared-4bd1f3d8.js → shared-44b46fef.js} +1 -1
- package/dist/cdn/{shared-ae2336ab.js → shared-4b393539.js} +1 -1
- package/dist/cdn/{shared-35c9fa1d.js → shared-4c764a91.js} +1 -1
- package/dist/cdn/{shared-692691ca.js → shared-4cafa2e7.js} +1 -1
- package/dist/cdn/{shared-7eeb591f.js → shared-4dd24dda.js} +1 -1
- package/dist/cdn/{shared-d8694661.js → shared-567ba8ae.js} +1 -1
- package/dist/cdn/{shared-5d7c4673.js → shared-5f8c01f8.js} +1 -1
- package/dist/cdn/{shared-a60ca6fe.js → shared-6033e09d.js} +1 -1
- package/dist/cdn/{shared-3aca4932.js → shared-656a46f7.js} +1 -1
- package/dist/cdn/{shared-948919d2.js → shared-66201dc5.js} +1 -1
- package/dist/cdn/{shared-b05ef317.js → shared-678beccf.js} +3 -3
- package/dist/cdn/{shared-0cc8df04.js → shared-6962f117.js} +1 -1
- package/dist/cdn/{shared-ceeb14e9.js → shared-6b3fed56.js} +1 -1
- package/dist/cdn/{shared-753fdd34.js → shared-70e6f32c.js} +1 -1
- package/dist/cdn/{shared-cae254ee.js → shared-74d599dc.js} +1 -1
- package/dist/cdn/{shared-2b126cea.js → shared-7fd51889.js} +3 -3
- package/dist/cdn/shared-87b93771.js +1 -0
- package/dist/cdn/shared-894c69f8.js +1 -0
- package/dist/cdn/{shared-8c42634c.js → shared-89d4000a.js} +1 -1
- package/dist/cdn/{shared-e615d2d9.js → shared-8a0bd046.js} +1 -1
- package/dist/cdn/{shared-1aff90a9.js → shared-8ea2bbcc.js} +1 -1
- package/dist/cdn/{shared-d3d4badd.js → shared-8f009bbb.js} +1 -1
- package/dist/cdn/{shared-434cdfec.js → shared-9171c265.js} +1 -1
- package/dist/cdn/{shared-9d4813e6.js → shared-9342ca50.js} +1 -1
- package/dist/cdn/{shared-4cae017c.js → shared-94716ec1.js} +1 -1
- package/dist/cdn/{shared-40028e80.js → shared-97e2abfb.js} +1 -1
- package/dist/cdn/{shared-c584966f.js → shared-9b9d5ff1.js} +1 -1
- package/dist/cdn/{shared-58b6710c.js → shared-9c010e0a.js} +1 -1
- package/dist/cdn/{shared-5520b96c.js → shared-9dc36194.js} +1 -1
- package/dist/cdn/{shared-d743d0fd.js → shared-a4216b50.js} +1 -1
- package/dist/cdn/{shared-4f808d2e.js → shared-a507d54f.js} +4 -4
- package/dist/cdn/{shared-c5b019e5.js → shared-a6c75cc0.js} +1 -1
- package/dist/cdn/{shared-e1400289.js → shared-aa6dab90.js} +2 -2
- package/dist/cdn/{shared-7977d581.js → shared-ad60e8d1.js} +2 -2
- package/dist/cdn/{shared-393a7ab2.js → shared-b1435a0a.js} +1 -1
- package/dist/cdn/{shared-b6c5ac14.js → shared-b6f53f3b.js} +2 -2
- package/dist/cdn/{shared-c009b9b6.js → shared-bb6d7b97.js} +1 -1
- package/dist/cdn/{shared-0cfb1c08.js → shared-bedc5e82.js} +1 -1
- package/dist/cdn/{shared-53253d60.js → shared-c31c50e2.js} +1 -1
- package/dist/cdn/{shared-2fe8aabd.js → shared-c502de27.js} +1 -1
- package/dist/cdn/{shared-92995c02.js → shared-c832f3a1.js} +1 -1
- package/dist/cdn/{shared-cf008f13.js → shared-cae7a43b.js} +1 -1
- package/dist/cdn/{shared-ec9893c7.js → shared-cc4b3b42.js} +1 -1
- package/dist/cdn/{shared-6f08d218.js → shared-d68c6616.js} +1 -1
- package/dist/cdn/{shared-b1c9199f.js → shared-d7d949bc.js} +1 -1
- package/dist/cdn/{shared-1b46df2a.js → shared-dc4d2996.js} +1 -1
- package/dist/cdn/shared-dd303282.js +1 -0
- package/dist/cdn/{shared-c231e3bf.js → shared-e2d3c014.js} +1 -1
- package/dist/cdn/{shared-241b6cca.js → shared-e6a1eef8.js} +1 -1
- package/dist/cdn/{shared-86337ba8.js → shared-e88763ec.js} +1 -1
- package/dist/cdn/{shared-2939f350.js → shared-f7bfb29e.js} +2 -2
- package/dist/cdn/{shared-0553380e.js → shared-fed829c2.js} +1 -1
- package/dist/cdn/{shared-8f81f4ed.js → shared-ffd5932d.js} +1 -1
- package/dist/cdn/translations/experimental-add-to-cart-builder/en.json +3 -1
- package/dist/cdn/translations/item-category-form/en.json +3 -0
- package/dist/cdn/translations/store-form/en.json +7 -0
- package/dist/cdn/translations/tax-card/en.json +3 -0
- package/dist/cdn/translations/tax-form/en.json +23 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.js +13 -5
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/InternalAsyncResourceLinkListControl.js.map +1 -1
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/index.js +11 -0
- package/dist/elements/internal/InternalAsyncResourceLinkListControl/index.js.map +1 -1
- package/dist/elements/internal/InternalEditableListControl/InternalEditableListControl.js +2 -1
- package/dist/elements/internal/InternalEditableListControl/InternalEditableListControl.js.map +1 -1
- package/dist/elements/public/ExperimentalAddToCartBuilder/ExperimentalAddToCartBuilder.js +78 -55
- package/dist/elements/public/ExperimentalAddToCartBuilder/ExperimentalAddToCartBuilder.js.map +1 -1
- package/dist/elements/public/StoreForm/StoreForm.d.ts +3 -0
- package/dist/elements/public/StoreForm/StoreForm.js +21 -0
- package/dist/elements/public/StoreForm/StoreForm.js.map +1 -1
- package/dist/elements/public/TaxCard/TaxCard.d.ts +5 -4
- package/dist/elements/public/TaxCard/TaxCard.js +54 -8
- package/dist/elements/public/TaxCard/TaxCard.js.map +1 -1
- package/dist/elements/public/TaxCard/index.d.ts +2 -2
- package/dist/elements/public/TaxCard/index.js +2 -2
- package/dist/elements/public/TaxCard/index.js.map +1 -1
- package/dist/elements/public/TaxForm/TaxForm.d.ts +2 -0
- package/dist/elements/public/TaxForm/TaxForm.js +21 -2
- package/dist/elements/public/TaxForm/TaxForm.js.map +1 -1
- package/dist/elements/public/TaxForm/index.d.ts +2 -0
- package/dist/elements/public/TaxForm/index.js +2 -0
- package/dist/elements/public/TaxForm/index.js.map +1 -1
- package/dist/mixins/themeable.js +4 -0
- package/dist/mixins/themeable.js.map +1 -1
- package/package.json +1 -1
- package/dist/cdn/shared-0f4dfb14.js +0 -1
- package/dist/cdn/shared-46f8e3d9.js +0 -1
- package/dist/cdn/shared-578cde14.js +0 -1
|
@@ -19,6 +19,8 @@ export class TaxForm extends Base {
|
|
|
19
19
|
super(...arguments);
|
|
20
20
|
/** URL of the `fx:native_integrations` collection for the store. */
|
|
21
21
|
this.nativeIntegrations = null;
|
|
22
|
+
/** URL of the `fx:item_categories` collection for the store. */
|
|
23
|
+
this.itemCategories = null;
|
|
22
24
|
/** URL of the `fx:countries` property helper resource. */
|
|
23
25
|
this.countries = null;
|
|
24
26
|
/** URL of the `fx:regions` property helper resource. */
|
|
@@ -58,6 +60,7 @@ export class TaxForm extends Base {
|
|
|
58
60
|
return {
|
|
59
61
|
...super.properties,
|
|
60
62
|
nativeIntegrations: { attribute: 'native-integrations' },
|
|
63
|
+
itemCategories: { attribute: 'item-categories' },
|
|
61
64
|
countries: {},
|
|
62
65
|
regions: {},
|
|
63
66
|
};
|
|
@@ -124,10 +127,12 @@ export class TaxForm extends Base {
|
|
|
124
127
|
}
|
|
125
128
|
const regions = Object.values((_c = (_b = (_a = this.__regionsLoader) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.values) !== null && _c !== void 0 ? _c : {});
|
|
126
129
|
alwaysMatch.unshift(`group-three:region-${regions.length ? 'input' : 'select'}`);
|
|
130
|
+
if (!this.data || !this.itemCategories)
|
|
131
|
+
alwaysMatch.unshift('item-categories');
|
|
127
132
|
return new BooleanSelector(alwaysMatch.join(' ').trim());
|
|
128
133
|
}
|
|
129
134
|
renderBody() {
|
|
130
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
135
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
131
136
|
const countries = Object.values((_c = (_b = (_a = this.__countriesLoader) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.values) !== null && _c !== void 0 ? _c : {});
|
|
132
137
|
const countryOptions = countries.map(c => ({ rawLabel: c.default, value: c.cc2 }));
|
|
133
138
|
const regions = Object.values((_f = (_e = (_d = this.__regionsLoader) === null || _d === void 0 ? void 0 : _d.data) === null || _e === void 0 ? void 0 : _e.values) !== null && _f !== void 0 ? _f : {});
|
|
@@ -202,12 +207,26 @@ export class TaxForm extends Base {
|
|
|
202
207
|
<foxy-internal-text-control layout="summary-item" infer="city"></foxy-internal-text-control>
|
|
203
208
|
</foxy-internal-summary-control>
|
|
204
209
|
|
|
210
|
+
<foxy-internal-async-resource-link-list-control
|
|
211
|
+
foreign-key-for-uri="item_category_uri"
|
|
212
|
+
foreign-key-for-id="item_category_id"
|
|
213
|
+
own-key-for-uri="tax_uri"
|
|
214
|
+
own-uri=${ifDefined((_g = this.data) === null || _g === void 0 ? void 0 : _g._links.self.href)}
|
|
215
|
+
options-href=${ifDefined((_h = this.itemCategories) !== null && _h !== void 0 ? _h : undefined)}
|
|
216
|
+
links-href=${ifDefined((_j = this.data) === null || _j === void 0 ? void 0 : _j._links['fx:tax_item_categories'].href)}
|
|
217
|
+
embed-key="fx:tax_item_categories"
|
|
218
|
+
infer="item-categories"
|
|
219
|
+
limit="5"
|
|
220
|
+
item="foxy-item-category-card"
|
|
221
|
+
>
|
|
222
|
+
</foxy-internal-async-resource-link-list-control>
|
|
223
|
+
|
|
205
224
|
${super.renderBody()}
|
|
206
225
|
|
|
207
226
|
<foxy-nucleon
|
|
208
227
|
infer=""
|
|
209
228
|
class="hidden"
|
|
210
|
-
href=${ifDefined((
|
|
229
|
+
href=${ifDefined((_k = this.countries) !== null && _k !== void 0 ? _k : void 0)}
|
|
211
230
|
id="countriesLoader"
|
|
212
231
|
@update=${() => this.requestUpdate()}
|
|
213
232
|
>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaxForm.js","sourceRoot":"","sources":["../../../../src/elements/public/TaxForm/TaxForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\nimport type { Data } from './types';\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 = 'tax-form';\nconst Base = TranslatableMixin(InternalForm, NS);\n\n// prettier-ignore\nconst defaultLiveRateCountries: (string | undefined)[] = ['US', 'CA', 'AT', 'BE', 'BG', 'CY', 'CZ', 'DE', 'DK', 'EE', 'ES', 'FI', 'FR', 'GB', 'GR', 'HR', 'HU', 'IE', 'IM', 'IT', 'LT', 'LU', 'LV', 'MC', 'MT', 'NL', 'PL', 'PT', 'RO', 'SE', 'SI', 'SK'];\nconst taxJarLiveRateCountries = [...defaultLiveRateCountries, 'AU'];\n\n/**\n * Form element for creating or editing taxes (`fx:tax`).\n *\n * @element foxy-tax-form\n * @since 1.13.0\n */\nexport class TaxForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n nativeIntegrations: { attribute: 'native-integrations' },\n countries: {},\n regions: {},\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ name: v }) => !!v || 'name:v8n_required',\n ({ name: v }) => !v || v.length <= 30 || 'name:v8n_too_long',\n ({ country: c, type: t }) => t !== 'country' || !!c || 'country:v8n_required',\n ({ country: c, type: t }) => t !== 'region' || !!c || 'country:v8n_required',\n ({ country: c, use_origin_rates: r }) => !r || !!c || 'country:v8n_required',\n ({ region: v, type: t }) => t != 'region' || !!v || 'region:v8n_required',\n ({ region: v }) => !v || v.length <= 20 || 'region:v8n_too_long',\n ({ city: v }) => !v || v.length <= 50 || 'city:v8n_too_long',\n ({ city: c, type: t }) => t != 'local' || !!c || 'city:v8n_required',\n ({ rate: v, type, is_live }) => {\n return (\n v === void 0 ||\n v > 0 ||\n // @ts-expect-error SDK types are not up to date.\n type === 'custom_tax_endpoint' ||\n type === void 0 ||\n is_live ||\n 'rate:v8n_invalid'\n );\n },\n ];\n }\n\n /** URL of the `fx:native_integrations` collection for the store. */\n nativeIntegrations: string | null = null;\n\n /** URL of the `fx:countries` property helper resource. */\n countries: string | null = null;\n\n /** URL of the `fx:regions` property helper resource. */\n regions: string | null = null;\n\n private __countrySetValue = (newValue: string) => {\n this.edit({ country: newValue, region: '', city: '' });\n this.edit({ apply_to_shipping: this.__isApplyToShippingHidden });\n };\n\n private __regionSetValue = (newValue: string) => {\n this.edit({ region: newValue, city: '' });\n };\n\n private __typeSetValue = (newValue: Data['type']) => {\n this.edit({\n type: newValue,\n country: '',\n region: '',\n city: '',\n // @ts-expect-error SDK types are not up to date.\n service_provider: newValue === 'custom_tax_endpoint' ? 'custom_tax' : '',\n apply_to_shipping: false,\n use_origin_rates: false,\n exempt_all_customer_tax_ids: false,\n is_live: false,\n rate: 0,\n });\n };\n\n private readonly __typeOptions = JSON.stringify([\n { label: 'option_custom_tax_endpoint', value: 'custom_tax_endpoint' },\n { label: 'option_global', value: 'global' },\n { label: 'option_union', value: 'union' },\n { label: 'option_country', value: 'country' },\n { label: 'option_region', value: 'region' },\n { label: 'option_local', value: 'local' },\n ]);\n\n get readonlySelector(): BooleanSelector {\n const alwaysMatch = [super.readonlySelector.toString()];\n alwaysMatch.unshift('native-integrations');\n return new BooleanSelector(alwaysMatch.join(' ').trim());\n }\n\n get hiddenSelector(): BooleanSelector {\n const alwaysMatch = [super.hiddenSelector.toString()];\n const type = this.form.type as string | undefined;\n\n if (type === 'global' || type === 'custom_tax_endpoint') {\n alwaysMatch.unshift('group-one:is-live', 'group-one:service-provider');\n if (type === 'custom_tax_endpoint') alwaysMatch.unshift('group-one:rate');\n } else {\n if (this.form.is_live) {\n alwaysMatch.unshift('group-one:rate');\n } else {\n alwaysMatch.unshift('group-one:service-provider');\n }\n }\n\n if (this.__nativeIntegrationsUrl === void 0) alwaysMatch.unshift('native-integrations');\n if (this.__isCountryHidden) alwaysMatch.unshift('group-three:country');\n if (this.__isRegionHidden) {\n alwaysMatch.unshift('group-three:region-select', 'group-three:region-input');\n }\n\n if (this.__isCityHidden) alwaysMatch.unshift('group-three:city');\n if (this.__isApplyToShippingHidden) alwaysMatch.unshift('group-two:apply-to-shipping');\n if (this.__isUseOriginRatesHidden) alwaysMatch.unshift('group-two:use-origin-rates');\n if (this.__isExemptAllCustomerTaxIdsHidden) {\n alwaysMatch.unshift('group-two:exempt-all-customer-tax-ids');\n }\n\n const regions = Object.values(this.__regionsLoader?.data?.values ?? {});\n alwaysMatch.unshift(`group-three:region-${regions.length ? 'input' : 'select'}`);\n\n return new BooleanSelector(alwaysMatch.join(' ').trim());\n }\n\n renderBody(): TemplateResult {\n const countries = Object.values(this.__countriesLoader?.data?.values ?? {});\n const countryOptions = countries.map(c => ({ rawLabel: c.default, value: c.cc2 }));\n\n const regions = Object.values(this.__regionsLoader?.data?.values ?? {});\n const regionOptions = regions.map(r => ({ rawLabel: r.default, value: r.code }));\n\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-summary-control infer=\"group-one\">\n <foxy-internal-text-control layout=\"summary-item\" infer=\"name\"></foxy-internal-text-control>\n\n <foxy-internal-select-control\n options=${this.__typeOptions}\n layout=\"summary-item\"\n infer=\"type\"\n .setValue=${this.__typeSetValue}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-switch-control infer=\"is-live\"></foxy-internal-switch-control>\n\n <foxy-internal-select-control\n options=${JSON.stringify(this.__serviceProviderOptions)}\n layout=\"summary-item\"\n infer=\"service-provider\"\n >\n </foxy-internal-select-control>\n\n <foxy-internal-number-control layout=\"summary-item\" suffix=\"%\" infer=\"rate\" min=\"0\">\n </foxy-internal-number-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-async-list-control\n infer=\"native-integrations\"\n first=${ifDefined(this.__nativeIntegrationsUrl)}\n item=\"foxy-native-integration-card\"\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-summary-control infer=\"group-two\">\n <foxy-internal-switch-control infer=\"exempt-all-customer-tax-ids\">\n </foxy-internal-switch-control>\n <foxy-internal-switch-control infer=\"apply-to-shipping\"></foxy-internal-switch-control>\n <foxy-internal-switch-control infer=\"use-origin-rates\"></foxy-internal-switch-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-summary-control infer=\"group-three\">\n <foxy-internal-select-control\n options=${JSON.stringify(countryOptions)}\n layout=\"summary-item\"\n infer=\"country\"\n .setValue=${this.__countrySetValue}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-select-control\n property=\"region\"\n options=${JSON.stringify(regionOptions)}\n layout=\"summary-item\"\n infer=\"region-select\"\n .setValue=${this.__regionSetValue}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-text-control\n property=\"region\"\n layout=\"summary-item\"\n infer=\"region-input\"\n .setValue=${this.__regionSetValue}\n >\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"city\"></foxy-internal-text-control>\n </foxy-internal-summary-control>\n\n ${super.renderBody()}\n\n <foxy-nucleon\n infer=\"\"\n class=\"hidden\"\n href=${ifDefined(this.countries ?? void 0)}\n id=\"countriesLoader\"\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n infer=\"\"\n class=\"hidden\"\n href=${ifDefined(this.__regionsUrl)}\n id=\"regionsLoader\"\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n `;\n }\n\n private get __serviceProviderOptions() {\n const options = [\n { label: 'option_avalara', value: 'avalara' },\n { label: 'option_onesource', value: 'onesource' },\n ];\n\n if (\n this.form.type === 'union' ||\n !this.form.country ||\n defaultLiveRateCountries.includes(this.form.country)\n ) {\n options.unshift({ label: 'option_default', value: '' });\n }\n\n if (\n this.form.type === 'union' ||\n !this.form.country ||\n taxJarLiveRateCountries.includes(this.form.country)\n ) {\n options.push({ label: 'option_taxjar', value: 'taxjar' });\n }\n\n return options;\n }\n\n private get __nativeIntegrationsUrl() {\n try {\n const url = new URL(this.nativeIntegrations ?? '');\n const provider = this.form.service_provider;\n if (provider) {\n url.searchParams.set('provider', provider);\n return url.toString();\n }\n } catch {\n // do nothing\n }\n }\n\n private get __regionsUrl() {\n try {\n const regionsURL = new URL(this.regions ?? '');\n const country = this.form.country;\n if (country) regionsURL.searchParams.set('country_code', country);\n return regionsURL.toString();\n } catch {\n // do nothing\n }\n }\n\n private get __countriesLoader() {\n type Loader = NucleonElement<Resource<Rels.Countries>>;\n return this.renderRoot.querySelector<Loader>('#countriesLoader');\n }\n\n private get __regionsLoader() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n return this.renderRoot.querySelector<Loader>('#regionsLoader');\n }\n\n private get __isExemptAllCustomerTaxIdsHidden() {\n const type = this.form.type as string | undefined;\n if (type === 'custom_tax_endpoint') return true;\n if (type === 'country' || type === 'region' || type === 'local') return !!this.form.is_live;\n\n const provider = this.form.service_provider as string | undefined;\n return !provider || provider === 'onesource' || provider === 'avalara' || provider === 'taxjar';\n }\n\n private get __isApplyToShippingHidden() {\n const type = this.form.type as string | undefined;\n\n if (!type || type === 'custom_tax_endpoint') return true;\n if (type === 'union') return false;\n if (type === 'country' && this.form.is_live) return true;\n if (type === 'region' && this.form.is_live) return true;\n\n return !!this.form.is_live && defaultLiveRateCountries.includes(this.form.country);\n }\n\n private get __isUseOriginRatesHidden() {\n return this.form.type !== 'union' || !this.form.is_live || !!this.form.service_provider;\n }\n\n private get __isCountryHidden() {\n if (this.form.type === 'union') {\n return (!this.form.service_provider || this.form.is_live) && !this.form.use_origin_rates;\n } else {\n return !(['country', 'region', 'local'] as unknown[]).includes(this.form.type);\n }\n }\n\n private get __isRegionHidden() {\n return this.form.type !== 'local' && this.form.type !== 'region';\n }\n\n private get __isCityHidden() {\n return this.form.type !== 'local';\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"TaxForm.js","sourceRoot":"","sources":["../../../../src/elements/public/TaxForm/TaxForm.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PropertyDeclarations, TemplateResult } from 'lit-element';\nimport type { NucleonElement } from '../NucleonElement/NucleonElement';\nimport type { NucleonV8N } from '../NucleonElement/types';\nimport type { Resource } from '@foxy.io/sdk/core';\nimport type { Rels } from '@foxy.io/sdk/backend';\nimport type { Data } from './types';\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 = 'tax-form';\nconst Base = TranslatableMixin(InternalForm, NS);\n\n// prettier-ignore\nconst defaultLiveRateCountries: (string | undefined)[] = ['US', 'CA', 'AT', 'BE', 'BG', 'CY', 'CZ', 'DE', 'DK', 'EE', 'ES', 'FI', 'FR', 'GB', 'GR', 'HR', 'HU', 'IE', 'IM', 'IT', 'LT', 'LU', 'LV', 'MC', 'MT', 'NL', 'PL', 'PT', 'RO', 'SE', 'SI', 'SK'];\nconst taxJarLiveRateCountries = [...defaultLiveRateCountries, 'AU'];\n\n/**\n * Form element for creating or editing taxes (`fx:tax`).\n *\n * @element foxy-tax-form\n * @since 1.13.0\n */\nexport class TaxForm extends Base<Data> {\n static get properties(): PropertyDeclarations {\n return {\n ...super.properties,\n nativeIntegrations: { attribute: 'native-integrations' },\n itemCategories: { attribute: 'item-categories' },\n countries: {},\n regions: {},\n };\n }\n\n static get v8n(): NucleonV8N<Data> {\n return [\n ({ name: v }) => !!v || 'name:v8n_required',\n ({ name: v }) => !v || v.length <= 30 || 'name:v8n_too_long',\n ({ country: c, type: t }) => t !== 'country' || !!c || 'country:v8n_required',\n ({ country: c, type: t }) => t !== 'region' || !!c || 'country:v8n_required',\n ({ country: c, use_origin_rates: r }) => !r || !!c || 'country:v8n_required',\n ({ region: v, type: t }) => t != 'region' || !!v || 'region:v8n_required',\n ({ region: v }) => !v || v.length <= 20 || 'region:v8n_too_long',\n ({ city: v }) => !v || v.length <= 50 || 'city:v8n_too_long',\n ({ city: c, type: t }) => t != 'local' || !!c || 'city:v8n_required',\n ({ rate: v, type, is_live }) => {\n return (\n v === void 0 ||\n v > 0 ||\n // @ts-expect-error SDK types are not up to date.\n type === 'custom_tax_endpoint' ||\n type === void 0 ||\n is_live ||\n 'rate:v8n_invalid'\n );\n },\n ];\n }\n\n /** URL of the `fx:native_integrations` collection for the store. */\n nativeIntegrations: string | null = null;\n\n /** URL of the `fx:item_categories` collection for the store. */\n itemCategories: string | null = null;\n\n /** URL of the `fx:countries` property helper resource. */\n countries: string | null = null;\n\n /** URL of the `fx:regions` property helper resource. */\n regions: string | null = null;\n\n private __countrySetValue = (newValue: string) => {\n this.edit({ country: newValue, region: '', city: '' });\n this.edit({ apply_to_shipping: this.__isApplyToShippingHidden });\n };\n\n private __regionSetValue = (newValue: string) => {\n this.edit({ region: newValue, city: '' });\n };\n\n private __typeSetValue = (newValue: Data['type']) => {\n this.edit({\n type: newValue,\n country: '',\n region: '',\n city: '',\n // @ts-expect-error SDK types are not up to date.\n service_provider: newValue === 'custom_tax_endpoint' ? 'custom_tax' : '',\n apply_to_shipping: false,\n use_origin_rates: false,\n exempt_all_customer_tax_ids: false,\n is_live: false,\n rate: 0,\n });\n };\n\n private readonly __typeOptions = JSON.stringify([\n { label: 'option_custom_tax_endpoint', value: 'custom_tax_endpoint' },\n { label: 'option_global', value: 'global' },\n { label: 'option_union', value: 'union' },\n { label: 'option_country', value: 'country' },\n { label: 'option_region', value: 'region' },\n { label: 'option_local', value: 'local' },\n ]);\n\n get readonlySelector(): BooleanSelector {\n const alwaysMatch = [super.readonlySelector.toString()];\n alwaysMatch.unshift('native-integrations');\n return new BooleanSelector(alwaysMatch.join(' ').trim());\n }\n\n get hiddenSelector(): BooleanSelector {\n const alwaysMatch = [super.hiddenSelector.toString()];\n const type = this.form.type as string | undefined;\n\n if (type === 'global' || type === 'custom_tax_endpoint') {\n alwaysMatch.unshift('group-one:is-live', 'group-one:service-provider');\n if (type === 'custom_tax_endpoint') alwaysMatch.unshift('group-one:rate');\n } else {\n if (this.form.is_live) {\n alwaysMatch.unshift('group-one:rate');\n } else {\n alwaysMatch.unshift('group-one:service-provider');\n }\n }\n\n if (this.__nativeIntegrationsUrl === void 0) alwaysMatch.unshift('native-integrations');\n if (this.__isCountryHidden) alwaysMatch.unshift('group-three:country');\n if (this.__isRegionHidden) {\n alwaysMatch.unshift('group-three:region-select', 'group-three:region-input');\n }\n\n if (this.__isCityHidden) alwaysMatch.unshift('group-three:city');\n if (this.__isApplyToShippingHidden) alwaysMatch.unshift('group-two:apply-to-shipping');\n if (this.__isUseOriginRatesHidden) alwaysMatch.unshift('group-two:use-origin-rates');\n if (this.__isExemptAllCustomerTaxIdsHidden) {\n alwaysMatch.unshift('group-two:exempt-all-customer-tax-ids');\n }\n\n const regions = Object.values(this.__regionsLoader?.data?.values ?? {});\n alwaysMatch.unshift(`group-three:region-${regions.length ? 'input' : 'select'}`);\n\n if (!this.data || !this.itemCategories) alwaysMatch.unshift('item-categories');\n\n return new BooleanSelector(alwaysMatch.join(' ').trim());\n }\n\n renderBody(): TemplateResult {\n const countries = Object.values(this.__countriesLoader?.data?.values ?? {});\n const countryOptions = countries.map(c => ({ rawLabel: c.default, value: c.cc2 }));\n\n const regions = Object.values(this.__regionsLoader?.data?.values ?? {});\n const regionOptions = regions.map(r => ({ rawLabel: r.default, value: r.code }));\n\n return html`\n ${this.renderHeader()}\n\n <foxy-internal-summary-control infer=\"group-one\">\n <foxy-internal-text-control layout=\"summary-item\" infer=\"name\"></foxy-internal-text-control>\n\n <foxy-internal-select-control\n options=${this.__typeOptions}\n layout=\"summary-item\"\n infer=\"type\"\n .setValue=${this.__typeSetValue}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-switch-control infer=\"is-live\"></foxy-internal-switch-control>\n\n <foxy-internal-select-control\n options=${JSON.stringify(this.__serviceProviderOptions)}\n layout=\"summary-item\"\n infer=\"service-provider\"\n >\n </foxy-internal-select-control>\n\n <foxy-internal-number-control layout=\"summary-item\" suffix=\"%\" infer=\"rate\" min=\"0\">\n </foxy-internal-number-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-async-list-control\n infer=\"native-integrations\"\n first=${ifDefined(this.__nativeIntegrationsUrl)}\n item=\"foxy-native-integration-card\"\n >\n </foxy-internal-async-list-control>\n\n <foxy-internal-summary-control infer=\"group-two\">\n <foxy-internal-switch-control infer=\"exempt-all-customer-tax-ids\">\n </foxy-internal-switch-control>\n <foxy-internal-switch-control infer=\"apply-to-shipping\"></foxy-internal-switch-control>\n <foxy-internal-switch-control infer=\"use-origin-rates\"></foxy-internal-switch-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-summary-control infer=\"group-three\">\n <foxy-internal-select-control\n options=${JSON.stringify(countryOptions)}\n layout=\"summary-item\"\n infer=\"country\"\n .setValue=${this.__countrySetValue}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-select-control\n property=\"region\"\n options=${JSON.stringify(regionOptions)}\n layout=\"summary-item\"\n infer=\"region-select\"\n .setValue=${this.__regionSetValue}\n >\n </foxy-internal-select-control>\n\n <foxy-internal-text-control\n property=\"region\"\n layout=\"summary-item\"\n infer=\"region-input\"\n .setValue=${this.__regionSetValue}\n >\n </foxy-internal-text-control>\n\n <foxy-internal-text-control layout=\"summary-item\" infer=\"city\"></foxy-internal-text-control>\n </foxy-internal-summary-control>\n\n <foxy-internal-async-resource-link-list-control\n foreign-key-for-uri=\"item_category_uri\"\n foreign-key-for-id=\"item_category_id\"\n own-key-for-uri=\"tax_uri\"\n own-uri=${ifDefined(this.data?._links.self.href)}\n options-href=${ifDefined(this.itemCategories ?? undefined)}\n links-href=${ifDefined(this.data?._links['fx:tax_item_categories'].href)}\n embed-key=\"fx:tax_item_categories\"\n infer=\"item-categories\"\n limit=\"5\"\n item=\"foxy-item-category-card\"\n >\n </foxy-internal-async-resource-link-list-control>\n\n ${super.renderBody()}\n\n <foxy-nucleon\n infer=\"\"\n class=\"hidden\"\n href=${ifDefined(this.countries ?? void 0)}\n id=\"countriesLoader\"\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n\n <foxy-nucleon\n infer=\"\"\n class=\"hidden\"\n href=${ifDefined(this.__regionsUrl)}\n id=\"regionsLoader\"\n @update=${() => this.requestUpdate()}\n >\n </foxy-nucleon>\n `;\n }\n\n private get __serviceProviderOptions() {\n const options = [\n { label: 'option_avalara', value: 'avalara' },\n { label: 'option_onesource', value: 'onesource' },\n ];\n\n if (\n this.form.type === 'union' ||\n !this.form.country ||\n defaultLiveRateCountries.includes(this.form.country)\n ) {\n options.unshift({ label: 'option_default', value: '' });\n }\n\n if (\n this.form.type === 'union' ||\n !this.form.country ||\n taxJarLiveRateCountries.includes(this.form.country)\n ) {\n options.push({ label: 'option_taxjar', value: 'taxjar' });\n }\n\n return options;\n }\n\n private get __nativeIntegrationsUrl() {\n try {\n const url = new URL(this.nativeIntegrations ?? '');\n const provider = this.form.service_provider;\n if (provider) {\n url.searchParams.set('provider', provider);\n return url.toString();\n }\n } catch {\n // do nothing\n }\n }\n\n private get __regionsUrl() {\n try {\n const regionsURL = new URL(this.regions ?? '');\n const country = this.form.country;\n if (country) regionsURL.searchParams.set('country_code', country);\n return regionsURL.toString();\n } catch {\n // do nothing\n }\n }\n\n private get __countriesLoader() {\n type Loader = NucleonElement<Resource<Rels.Countries>>;\n return this.renderRoot.querySelector<Loader>('#countriesLoader');\n }\n\n private get __regionsLoader() {\n type Loader = NucleonElement<Resource<Rels.Regions>>;\n return this.renderRoot.querySelector<Loader>('#regionsLoader');\n }\n\n private get __isExemptAllCustomerTaxIdsHidden() {\n const type = this.form.type as string | undefined;\n if (type === 'custom_tax_endpoint') return true;\n if (type === 'country' || type === 'region' || type === 'local') return !!this.form.is_live;\n\n const provider = this.form.service_provider as string | undefined;\n return !provider || provider === 'onesource' || provider === 'avalara' || provider === 'taxjar';\n }\n\n private get __isApplyToShippingHidden() {\n const type = this.form.type as string | undefined;\n\n if (!type || type === 'custom_tax_endpoint') return true;\n if (type === 'union') return false;\n if (type === 'country' && this.form.is_live) return true;\n if (type === 'region' && this.form.is_live) return true;\n\n return !!this.form.is_live && defaultLiveRateCountries.includes(this.form.country);\n }\n\n private get __isUseOriginRatesHidden() {\n return this.form.type !== 'union' || !this.form.is_live || !!this.form.service_provider;\n }\n\n private get __isCountryHidden() {\n if (this.form.type === 'union') {\n return (!this.form.service_provider || this.form.is_live) && !this.form.use_origin_rates;\n } else {\n return !(['country', 'region', 'local'] as unknown[]).includes(this.form.type);\n }\n }\n\n private get __isRegionHidden() {\n return this.form.type !== 'local' && this.form.type !== 'region';\n }\n\n private get __isCityHidden() {\n return this.form.type !== 'local';\n }\n}\n"]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import '../../internal/InternalAsyncResourceLinkListControl/index';
|
|
1
2
|
import '../../internal/InternalAsyncListControl/index';
|
|
2
3
|
import '../../internal/InternalSummaryControl/index';
|
|
3
4
|
import '../../internal/InternalSelectControl/index';
|
|
@@ -6,6 +7,7 @@ import '../../internal/InternalNumberControl/index';
|
|
|
6
7
|
import '../../internal/InternalTextControl/index';
|
|
7
8
|
import '../../internal/InternalForm/index';
|
|
8
9
|
import '../NativeIntegrationCard/index';
|
|
10
|
+
import '../ItemCategoryCard/index';
|
|
9
11
|
import '../NucleonElement/index';
|
|
10
12
|
import { TaxForm } from './TaxForm';
|
|
11
13
|
export { TaxForm };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import "../../internal/InternalAsyncResourceLinkListControl/index.js";
|
|
1
2
|
import "../../internal/InternalAsyncListControl/index.js";
|
|
2
3
|
import "../../internal/InternalSummaryControl/index.js";
|
|
3
4
|
import "../../internal/InternalSelectControl/index.js";
|
|
@@ -6,6 +7,7 @@ import "../../internal/InternalNumberControl/index.js";
|
|
|
6
7
|
import "../../internal/InternalTextControl/index.js";
|
|
7
8
|
import "../../internal/InternalForm/index.js";
|
|
8
9
|
import "../NativeIntegrationCard/index.js";
|
|
10
|
+
import "../ItemCategoryCard/index.js";
|
|
9
11
|
import "../NucleonElement/index.js";
|
|
10
12
|
import { TaxForm } from "./TaxForm.js";
|
|
11
13
|
customElements.define('foxy-tax-form', TaxForm);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/TaxForm/index.ts"],"names":[],"mappings":"AAAA,0DAAuD;AACvD,wDAAqD;AACrD,uDAAoD;AACpD,uDAAoD;AACpD,uDAAoD;AACpD,qDAAkD;AAClD,8CAA2C;AAE3C,2CAAwC;AACxC,oCAAiC;AAEjC,OAAO,EAAE,OAAO,EAAE,qBAAkB;AAEpC,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,CAAC","sourcesContent":["import '../../internal/InternalAsyncListControl/index';\nimport '../../internal/InternalSummaryControl/index';\nimport '../../internal/InternalSelectControl/index';\nimport '../../internal/InternalSwitchControl/index';\nimport '../../internal/InternalNumberControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport '../NativeIntegrationCard/index';\nimport '../NucleonElement/index';\n\nimport { TaxForm } from './TaxForm';\n\ncustomElements.define('foxy-tax-form', TaxForm);\n\nexport { TaxForm };\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/elements/public/TaxForm/index.ts"],"names":[],"mappings":"AAAA,sEAAmE;AACnE,0DAAuD;AACvD,wDAAqD;AACrD,uDAAoD;AACpD,uDAAoD;AACpD,uDAAoD;AACpD,qDAAkD;AAClD,8CAA2C;AAE3C,2CAAwC;AACxC,sCAAmC;AACnC,oCAAiC;AAEjC,OAAO,EAAE,OAAO,EAAE,qBAAkB;AAEpC,cAAc,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,CAAC","sourcesContent":["import '../../internal/InternalAsyncResourceLinkListControl/index';\nimport '../../internal/InternalAsyncListControl/index';\nimport '../../internal/InternalSummaryControl/index';\nimport '../../internal/InternalSelectControl/index';\nimport '../../internal/InternalSwitchControl/index';\nimport '../../internal/InternalNumberControl/index';\nimport '../../internal/InternalTextControl/index';\nimport '../../internal/InternalForm/index';\n\nimport '../NativeIntegrationCard/index';\nimport '../ItemCategoryCard/index';\nimport '../NucleonElement/index';\n\nimport { TaxForm } from './TaxForm';\n\ncustomElements.define('foxy-tax-form', TaxForm);\n\nexport { TaxForm };\n"]}
|
package/dist/mixins/themeable.js
CHANGED
|
@@ -1339,6 +1339,10 @@ option{
|
|
|
1339
1339
|
border-color: transparent;
|
|
1340
1340
|
}
|
|
1341
1341
|
|
|
1342
|
+
.divide-base > :not([hidden]) ~ :not([hidden]) {
|
|
1343
|
+
border-color: var(--lumo-base-color, #fff);
|
|
1344
|
+
}
|
|
1345
|
+
|
|
1342
1346
|
.divide-contrast-10 > :not([hidden]) ~ :not([hidden]) {
|
|
1343
1347
|
border-color: var(--lumo-contrast-10pct, hsla(214, 57%, 24%, 0.1));
|
|
1344
1348
|
}
|
|
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAuKF;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;;;;;;;KAQF,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 option {\n color: var(--lumo-body-text-color);\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 .hljs-tag {\n color: var(--lumo-tertiary-text-color);\n font-weight: 500;\n }\n\n .hljs-name {\n color: var(--lumo-primary-text-color);\n font-weight: 500;\n }\n\n .hljs-attr {\n color: var(--lumo-secondary-text-color);\n font-weight: 500;\n }\n\n .hljs-string {\n color: var(--lumo-success-text-color);\n font-weight: 500;\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 #button {\n cursor: pointer;\n }\n\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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAuKF;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;;;;;;;KAQF,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 option {\n color: var(--lumo-body-text-color);\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 .hljs-tag {\n color: var(--lumo-tertiary-text-color);\n font-weight: 500;\n }\n\n .hljs-name {\n color: var(--lumo-primary-text-color);\n font-weight: 500;\n }\n\n .hljs-attr {\n color: var(--lumo-secondary-text-color);\n font-weight: 500;\n }\n\n .hljs-string {\n color: var(--lumo-success-text-color);\n font-weight: 500;\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 #button {\n cursor: pointer;\n }\n\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 +0,0 @@
|
|
|
1
|
-
import"./shared-86337ba8.js";import"./shared-2fe8aabd.js";import{I as e}from"./shared-ec9893c7.js";import{i as a}from"./shared-53e42a77.js";import{h as r}from"./shared-ba5c42c7.js";let t,s=e=>e;customElements.define("foxy-internal-text-area-control",class extends e{renderControl(){return r(t||(t=s` <vaadin-text-area error-message="${0}" helper-text="${0}" placeholder="${0}" label="${0}" class="w-full" ?disabled="${0}" ?readonly="${0}" .checkValidity="${0}" .value="${0}" @keydown="${0}" @input="${0}"> </vaadin-text-area> `),a(this._errorMessage),this.helperText,this.placeholder,this.label,this.disabled,this.readonly,this._checkValidity,this._value,(e=>{var a;return"Enter"===e.key&&(null===(a=this.nucleon)||void 0===a?void 0:a.submit())}),(e=>{const a=e.currentTarget;this._value=a.value}))}get _value(){var e;return null!==(e=super._value)&&void 0!==e?e:""}set _value(e){super._value=e}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./shared-4d919766.js";import"./foxy-collection-page.js";import"./foxy-nucleon-element.js";import"./foxy-pagination.js";import"./shared-1d03f911.js";import{I as e}from"./shared-ec9893c7.js";import{m as i,_ as t}from"./shared-cb58dfcd.js";import{N as r}from"./shared-f83207fb.js";import{i as s}from"./shared-53e42a77.js";import{c as n}from"./shared-4e709717.js";import{h as o,c as a}from"./shared-ba5c42c7.js";let l,d,h,c,u,f=e=>e;customElements.define("foxy-internal-async-resource-link-list-control",class extends e{constructor(){super(...arguments),this.foreignKeyForUri=null,this.foreignKeyForId=null,this.ownKeyForUri=null,this.optionsHref=null,this.linksHref=null,this.embedKey=null,this.ownUri=null,this.limit=20,this.item=null,this.__getItemRenderer=i(((e,i)=>new Function("ctx",`return ctx.html\`\n <${null!=e?e:"foxy-null"}\n related=\${JSON.stringify(ctx.related)}\n parent=\${ctx.parent}\n infer=""\n ${i?".data=${ctx.data}":"href=${ctx.href}"}\n ...=\${ctx.spread(ctx.props)}\n >\n </${null!=e?e:"foxy-null"}>\``)),((...e)=>e.join())),this.__renderItem=e=>{var i;const t=this.__getItemRenderer(this.item,!!e.data),r=e=>o(l||(l=f` <div style="padding:calc(.625em + (var(--lumo-border-radius)/ 4) - 1px)">${0}</div> `),e);if(!e.href||e.href.startsWith("foxy://"))return r(t(e));if(this.readonly)return r(t(e));const s=this.foreignKeyForUri,n=s?null===(i=this.__allLinks)||void 0===i?void 0:i.find((i=>i[s]===e.href)):void 0,a=this.disabled||!this.__allLinks||this.__isFetching;return r(o(d||(d=f` <vaadin-checkbox class="block" ?disabled="${0}" ?checked="${0}" @change="${0}"> <div class="transition-opacity ${0}"> ${0} </div> </vaadin-checkbox> `),a,!!n,(i=>{var t,r,s;i.currentTarget.checked?this.__insertLink(null!==(r=null===(t=e.data)||void 0===t?void 0:t._links.self.href)&&void 0!==r?r:""):this.__deleteLink(null!==(s=null==n?void 0:n._links.self.href)&&void 0!==s?s:"")}),a?"opacity-50":"opacity-100",t(e)))},this.__isFetching=!1}static get properties(){return t(t({},super.properties),{},{foreignKeyForUri:{attribute:"foreign-key-for-uri"},foreignKeyForId:{attribute:"foreign-key-for-id"},ownKeyForUri:{attribute:"own-key-for-uri"},optionsHref:{attribute:"options-href"},linksHref:{attribute:"links-href"},embedKey:{attribute:"embed-key"},ownUri:{attribute:"own-uri"},limit:{type:Number},item:{},__isFetching:{attribute:!1}})}static get styles(){return[super.styles,a(h||(h=f`vaadin-checkbox::part(label){margin:0 0 0 calc(.625em + (var(--lumo-border-radius)/ 4) - 1px);align-self:center}`))]}renderControl(){var e;let i;try{const t=new URL(null!==(e=this.optionsHref)&&void 0!==e?e:"");t.searchParams.set("limit",this.limit.toString()),i=t.toString()}catch(e){i=void 0}const t=this.__isFetching||!this.__allLinks;return o(c||(c=f` <div class="group"> <div class="mb-s" ?hidden="${0}"> <div class="flex justify-between font-medium text-l" ?hidden="${0}"> <span>${0}</span> <foxy-i18n class="transition-opacity ${0}" infer="" key="${0}"> </foxy-i18n> </div> <div class="text-secondary text-s" ?hidden="${0}">${0}</div> </div> <foxy-pagination first="${0}" infer="pagination"> <foxy-collection-page infer="card" class="${0}" .item="${0}"> </foxy-collection-page> </foxy-pagination> <div class="mt-s text-s leading-xs text-error" ?hidden="${0}"> ${0} </div> ${0} </div> `),!this.label&&!this.helperText,!this.label,this.label,t?"opacity-100":"opacity-0",this.__isFetching?"status_saving":"status_loading",!this.helperText,this.helperText,s(i),n({"block transition-colors divide-y rounded overflow-hidden":!0,"bg-contrast-5 divide-contrast-10":!0}),this.__renderItem,!this._errorMessage||this.disabled||this.readonly,this._errorMessage,this.__renderLinkResourceLoaders())}updated(e){var i,t;super.updated(e),e.has("item")&&(null===(t=(i=this.__getItemRenderer.cache).clear)||void 0===t||t.call(i))}async __insertLink(e){var i,t,s,n,o,a;this.__isFetching=!0;const l=new r.API(this),d=await l.fetch(null!==(i=this.linksHref)&&void 0!==i?i:"",{method:"POST",body:JSON.stringify({[null!==(t=this.foreignKeyForUri)&&void 0!==t?t:""]:e,[null!==(s=this.ownKeyForUri)&&void 0!==s?s:""]:this.ownUri})});if(d.ok){const e=await d.json(),i=await l.fetch(e._links.self.href);if(i.ok){const t=r.Rumour(null!==(o=null===(n=this.nucleon)||void 0===n?void 0:n.group)&&void 0!==o?o:""),s=await i.json();t.share({related:[null!==(a=this.linksHref)&&void 0!==a?a:""],source:e._links.self.href,data:s})}}this.__isFetching=!1}async __deleteLink(e){var i,t,s;this.__isFetching=!0;const n=new r.API(this);if((await n.fetch(e,{method:"DELETE"})).ok){r.Rumour(null!==(t=null===(i=this.nucleon)||void 0===i?void 0:i.group)&&void 0!==t?t:"").share({related:[null!==(s=this.linksHref)&&void 0!==s?s:""],source:e,data:null})}this.__isFetching=!1}__renderLinkResourceLoaders(){var e,i,t;const r=200,s=this.renderRoot.querySelector("[data-link-page]"),n=Number(null!==(i=null===(e=null==s?void 0:s.data)||void 0===e?void 0:e.total_items)&&void 0!==i?i:r),a=[];try{for(let e=0;e<Math.max(1,Math.ceil(n/r));e++){const i=new URL(null!==(t=this.linksHref)&&void 0!==t?t:"");i.searchParams.set("offset",String(e*r)),i.searchParams.set("limit",String(r)),a.push(i.toString())}}catch(e){}return a.map((e=>o(u||(u=f` <foxy-nucleon class="hidden" data-link-page infer="" href="${0}" @update="${0}"> </foxy-nucleon> `),e,(()=>this.requestUpdate()))))}get __allLinks(){var e,i;const t=this.embedKey;if(!t)return null;const r=this.renderRoot.querySelectorAll("[data-link-page]"),s=[];for(const n of r){const r=null===(i=null===(e=n.data)||void 0===e?void 0:e._embedded)||void 0===i?void 0:i[t];if(!r)return null;s.push(...r)}return s}});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./foxy-spinner.js";import{I as e}from"./shared-c009b9b6.js";customElements.define("foxy-internal-card",e);
|