@unidy.io/sdk 1.2.0-alpha9 → 1.2.0
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/cjs/_commonjsHelpers-CFO10eej.js +10 -0
- package/dist/cjs/_commonjsHelpers-CFO10eej.js.map +1 -0
- package/dist/cjs/app-globals-C-Wl5lPS.js +10 -0
- package/dist/cjs/app-globals-C-Wl5lPS.js.map +1 -0
- package/dist/cjs/{auth-store-DPmGKHZ2.js → auth-store-0vv3uOib.js} +4 -4
- package/dist/cjs/{auth-store-DPmGKHZ2.js.map → auth-store-0vv3uOib.js.map} +1 -1
- package/dist/cjs/component-DLxnZCW6.js +34 -0
- package/dist/cjs/component-DLxnZCW6.js.map +1 -0
- package/dist/cjs/component-utils-XXctnOM9.js +38 -0
- package/dist/cjs/component-utils-XXctnOM9.js.map +1 -0
- package/dist/cjs/de-BWF6Glzg.js +704 -0
- package/dist/cjs/de-BWF6Glzg.js.map +1 -0
- package/dist/cjs/en-GB-DhD5mdQw.js +119 -0
- package/dist/cjs/en-GB-DhD5mdQw.js.map +1 -0
- package/dist/cjs/{flash-store-gbSYhPAV.js → flash-store-CR6Umh1O.js} +3 -3
- package/dist/cjs/{flash-store-gbSYhPAV.js.map → flash-store-CR6Umh1O.js.map} +1 -1
- package/dist/cjs/fr-j2wwoj-A.js +577 -0
- package/dist/cjs/fr-j2wwoj-A.js.map +1 -0
- package/dist/cjs/has-slot-content-CfJbU4t-.js +37 -0
- package/dist/cjs/has-slot-content-CfJbU4t-.js.map +1 -0
- package/dist/cjs/{i18n-D5j_Zl-4.js → i18n-ClWrNmGh.js} +100 -4
- package/dist/cjs/{i18n-D5j_Zl-4.js.map → i18n-ClWrNmGh.js.map} +1 -1
- package/dist/cjs/{index-B325yXfO.js → index-2Fz3r5o0.js} +5 -41
- package/dist/cjs/index-2Fz3r5o0.js.map +1 -0
- package/dist/cjs/{index-yaeiYlfa.js → index-C6ZBKFYr.js} +3 -3
- package/dist/cjs/{index-yaeiYlfa.js.map → index-C6ZBKFYr.js.map} +1 -1
- package/dist/cjs/{index-BzPYBLYC.js → index-CpPKy1CZ.js} +1170 -1087
- package/dist/cjs/index-CpPKy1CZ.js.map +1 -0
- package/dist/cjs/index.cjs.js +24 -11
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{newsletter-helpers-hdDC5X-V.js → newsletter-helpers-BHvOI8M4.js} +46 -9
- package/dist/cjs/newsletter-helpers-BHvOI8M4.js.map +1 -0
- package/dist/cjs/{newsletter-store-CupsLgO9.js → newsletter-store-22Jswiqe.js} +5 -3
- package/dist/cjs/newsletter-store-22Jswiqe.js.map +1 -0
- package/dist/cjs/nl-BE-yKvOp1-G.js +542 -0
- package/dist/cjs/nl-BE-yKvOp1-G.js.map +1 -0
- package/dist/cjs/{profile-helpers-Bprrm-Xl.js → profile-helpers-BBpAqHjK.js} +4 -4
- package/dist/cjs/{profile-helpers-Bprrm-Xl.js.map → profile-helpers-BBpAqHjK.js.map} +1 -1
- package/dist/cjs/{profile-store-C_q-TuA_.js → profile-store-CQEQhPQD.js} +4 -4
- package/dist/cjs/{profile-store-C_q-TuA_.js.map → profile-store-CQEQhPQD.js.map} +1 -1
- package/dist/cjs/redirect-with-token-wupYX97S.js +37 -0
- package/dist/cjs/redirect-with-token-wupYX97S.js.map +1 -0
- package/dist/cjs/ro-CXq9d1lv.js +578 -0
- package/dist/cjs/ro-CXq9d1lv.js.map +1 -0
- package/dist/cjs/sdk.cjs.js +3 -3
- package/dist/cjs/sv-CMln4V33.js +597 -0
- package/dist/cjs/sv-CMln4V33.js.map +1 -0
- package/dist/cjs/u-conditional-render.cjs.entry.js +14 -14
- package/dist/cjs/u-conditional-render.entry.cjs.js.map +1 -1
- package/dist/cjs/u-config.cjs.entry.js +24 -11
- package/dist/cjs/u-config.entry.cjs.js.map +1 -1
- package/dist/cjs/u-email-field.cjs.entry.js +7 -7
- package/dist/cjs/u-error-message.cjs.entry.js +49 -22
- package/dist/cjs/u-error-message.entry.cjs.js.map +1 -1
- package/dist/cjs/u-field.u-raw-field.entry.cjs.js.map +1 -1
- package/dist/cjs/u-field_2.cjs.entry.js +124 -12
- package/dist/cjs/u-flash-message.cjs.entry.js +3 -3
- package/dist/cjs/u-full-profile.cjs.entry.js +6 -6
- package/dist/cjs/u-jump-to-service.cjs.entry.js +23 -44
- package/dist/cjs/u-jump-to-service.entry.cjs.js.map +1 -1
- package/dist/cjs/u-jump-to-unidy.cjs.entry.js +22 -43
- package/dist/cjs/u-jump-to-unidy.entry.cjs.js.map +1 -1
- package/dist/cjs/u-logout-button.u-signed-in.entry.cjs.js.map +1 -1
- package/dist/cjs/u-logout-button_2.cjs.entry.js +15 -22
- package/dist/cjs/u-magic-code-field.cjs.entry.js +8 -9
- package/dist/cjs/u-magic-code-field.entry.cjs.js.map +1 -1
- package/dist/cjs/u-missing-field.cjs.entry.js +6 -5
- package/dist/cjs/u-missing-field.entry.cjs.js.map +1 -1
- package/dist/cjs/u-missing-fields-submit-button.cjs.entry.js +16 -14
- package/dist/cjs/u-missing-fields-submit-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-newsletter-checkbox.cjs.entry.js +11 -12
- package/dist/cjs/u-newsletter-checkbox.entry.cjs.js.map +1 -1
- package/dist/cjs/u-newsletter-consent-checkbox.cjs.entry.js +4 -4
- package/dist/cjs/u-newsletter-logout-button.cjs.entry.js +15 -20
- package/dist/cjs/u-newsletter-logout-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-newsletter-preference-checkbox.cjs.entry.js +11 -12
- package/dist/cjs/u-newsletter-preference-checkbox.entry.cjs.js.map +1 -1
- package/dist/cjs/u-newsletter-resend-doi-button.cjs.entry.js +10 -11
- package/dist/cjs/u-newsletter-resend-doi-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-newsletter-root.cjs.entry.js +45 -22
- package/dist/cjs/u-newsletter-root.entry.cjs.js.map +1 -1
- package/dist/cjs/u-newsletter-toggle-subscription-button.cjs.entry.js +11 -12
- package/dist/cjs/u-newsletter-toggle-subscription-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-pagination-button.cjs.entry.js +4 -4
- package/dist/cjs/u-pagination-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-pagination-page.cjs.entry.js +4 -4
- package/dist/cjs/u-pagination-page.entry.cjs.js.map +1 -1
- package/dist/cjs/u-passkey.cjs.entry.js +8 -9
- package/dist/cjs/u-passkey.entry.cjs.js.map +1 -1
- package/dist/cjs/u-password-field.cjs.entry.js +5 -5
- package/dist/cjs/u-profile.u-submit-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-profile_2.cjs.entry.js +31 -33
- package/dist/cjs/u-registration-button.cjs.entry.js +5 -5
- package/dist/cjs/u-reset-password-button.cjs.entry.js +12 -15
- package/dist/cjs/u-reset-password-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-send-magic-code-button.cjs.entry.js +8 -9
- package/dist/cjs/u-send-magic-code-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-signin-root.cjs.entry.js +6 -8
- package/dist/cjs/u-signin-root.entry.cjs.js.map +1 -1
- package/dist/cjs/u-signin-step.cjs.entry.js +17 -21
- package/dist/cjs/u-signin-step.entry.cjs.js.map +1 -1
- package/dist/cjs/u-social-login-button.cjs.entry.js +16 -15
- package/dist/cjs/u-social-login-button.entry.cjs.js.map +1 -1
- package/dist/cjs/u-spinner.cjs.entry.js +3 -3
- package/dist/cjs/u-spinner.entry.cjs.js.map +1 -1
- package/dist/cjs/u-ticketable-export.cjs.entry.js +76 -0
- package/dist/cjs/u-ticketable-export.entry.cjs.js.map +1 -0
- package/dist/cjs/u-ticketable-list-D3M8iA-g.js +3991 -0
- package/dist/cjs/u-ticketable-list-D3M8iA-g.js.map +1 -0
- package/dist/cjs/u-ticketable-list.cjs.entry.js +11 -6118
- package/dist/cjs/u-ticketable-list.entry.cjs.js.map +1 -1
- package/dist/cjs/{unidy-store-BGnWn9pc.js → unidy-store-Bvnl24i9.js} +3 -3
- package/dist/cjs/{unidy-store-BGnWn9pc.js.map → unidy-store-Bvnl24i9.js.map} +1 -1
- package/dist/collection/api/base-service.js.map +1 -1
- package/dist/collection/api/client.js.map +1 -1
- package/dist/collection/api/index.js +6 -6
- package/dist/collection/api/index.js.map +1 -1
- package/dist/collection/api/standalone.js +88 -39
- package/dist/collection/api/standalone.js.map +1 -1
- package/dist/collection/auth/api/auth.js.map +1 -1
- package/dist/collection/auth/api/schemas.js +5 -5
- package/dist/collection/auth/api/schemas.js.map +1 -1
- package/dist/collection/auth/auth-helpers.js +7 -8
- package/dist/collection/auth/auth-helpers.js.map +1 -1
- package/dist/collection/auth/auth.js +1 -0
- package/dist/collection/auth/auth.js.map +1 -1
- package/dist/collection/auth/components/jump-to-service/jump-to-service.js +20 -40
- package/dist/collection/auth/components/jump-to-service/jump-to-service.js.map +1 -1
- package/dist/collection/auth/components/jump-to-unidy/jump-to-unidy.js +20 -39
- package/dist/collection/auth/components/jump-to-unidy/jump-to-unidy.js.map +1 -1
- package/dist/collection/auth/components/logout-button/logout-button.js +7 -11
- package/dist/collection/auth/components/logout-button/logout-button.js.map +1 -1
- package/dist/collection/auth/components/missing-field/missing-field.js +25 -1
- package/dist/collection/auth/components/missing-field/missing-field.js.map +1 -1
- package/dist/collection/auth/components/missing-fields-submit-button/missing-fields-submit-button.js +33 -7
- package/dist/collection/auth/components/missing-fields-submit-button/missing-fields-submit-button.js.map +1 -1
- package/dist/collection/auth/components/password-field/password-field.js +1 -1
- package/dist/collection/auth/components/reset-pass-button/reset-pass-button.js +6 -8
- package/dist/collection/auth/components/reset-pass-button/reset-pass-button.js.map +1 -1
- package/dist/collection/auth/components/signed-in/signed-in.js +2 -5
- package/dist/collection/auth/components/signed-in/signed-in.js.map +1 -1
- package/dist/collection/auth/components/signin-root/signin-root.js +2 -5
- package/dist/collection/auth/components/signin-root/signin-root.js.map +1 -1
- package/dist/collection/auth/components/signin-step/signin-step.js +9 -13
- package/dist/collection/auth/components/signin-step/signin-step.js.map +1 -1
- package/dist/collection/auth/components/social-logins/social-login-button.css +1 -1
- package/dist/collection/auth/components/social-logins/social-login-button.js +11 -12
- package/dist/collection/auth/components/social-logins/social-login-button.js.map +1 -1
- package/dist/collection/auth/components/submit-button/auth-submit-button.js +10 -0
- package/dist/collection/auth/components/submit-button/auth-submit-button.js.map +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/locales/de.json +16 -0
- package/dist/collection/locales/en.json +16 -0
- package/dist/collection/locales/fr.json +16 -0
- package/dist/collection/locales/it.json +16 -0
- package/dist/collection/locales/nl_be.json +16 -0
- package/dist/collection/locales/ro.json +16 -0
- package/dist/collection/logger.js +0 -37
- package/dist/collection/logger.js.map +1 -1
- package/dist/collection/newsletter/api/newsletters.js +19 -18
- package/dist/collection/newsletter/api/newsletters.js.map +1 -1
- package/dist/collection/newsletter/components/consent-checkbox/consent-checkbox.js +1 -1
- package/dist/collection/newsletter/components/logout-button/logout-button.js +6 -10
- package/dist/collection/newsletter/components/logout-button/logout-button.js.map +1 -1
- package/dist/collection/newsletter/components/newsletter-checkbox/newsletter-checkbox.js +1 -1
- package/dist/collection/newsletter/components/newsletter-root/newsletter-root.js +65 -10
- package/dist/collection/newsletter/components/newsletter-root/newsletter-root.js.map +1 -1
- package/dist/collection/newsletter/components/preference-checkbox/preference-checkbox.js +1 -1
- package/dist/collection/newsletter/components/toggle-subscription-button/toggle-subscription-button.js +1 -1
- package/dist/collection/newsletter/newsletter-helpers.js +39 -2
- package/dist/collection/newsletter/newsletter-helpers.js.map +1 -1
- package/dist/collection/newsletter/store/newsletter-store.js +2 -0
- package/dist/collection/newsletter/store/newsletter-store.js.map +1 -1
- package/dist/collection/profile/api/profile.js.map +1 -1
- package/dist/collection/profile/api/schemas.js +1 -1
- package/dist/collection/profile/api/schemas.js.map +1 -1
- package/dist/collection/profile/components/field/field.js +3 -1
- package/dist/collection/profile/components/field/field.js.map +1 -1
- package/dist/collection/profile/components/full-profile/full-profile.js +1 -1
- package/dist/collection/profile/components/raw-field/raw-field.js +40 -7
- package/dist/collection/profile/components/raw-field/raw-field.js.map +1 -1
- package/dist/collection/profile/store/profile-store.js +1 -1
- package/dist/collection/profile/store/profile-store.js.map +1 -1
- package/dist/collection/shared/base/component.js +28 -0
- package/dist/collection/shared/base/component.js.map +1 -0
- package/dist/collection/shared/base/has-slot-content.js +31 -0
- package/dist/collection/shared/base/has-slot-content.js.map +1 -0
- package/dist/collection/shared/component-utils.js +23 -27
- package/dist/collection/shared/component-utils.js.map +1 -1
- package/dist/collection/shared/components/conditional-render/conditional-render.js +4 -5
- package/dist/collection/shared/components/conditional-render/conditional-render.js.map +1 -1
- package/dist/collection/shared/components/config/config.js +18 -5
- package/dist/collection/shared/components/config/config.js.map +1 -1
- package/dist/collection/shared/components/email-field/email-field.js +1 -1
- package/dist/collection/shared/components/error-message/error-message.css +1 -1
- package/dist/collection/shared/components/error-message/error-message.js +44 -17
- package/dist/collection/shared/components/error-message/error-message.js.map +1 -1
- package/dist/collection/shared/components/spinner/spinner.css +1 -1
- package/dist/collection/shared/components/spinner/spinner.js +1 -1
- package/dist/collection/shared/components/submit-button/submit-button.css +1 -1
- package/dist/collection/shared/components/submit-button/submit-button.js +12 -23
- package/dist/collection/shared/components/submit-button/submit-button.js.map +1 -1
- package/dist/collection/shared/context-utils.js +96 -0
- package/dist/collection/shared/context-utils.js.map +1 -0
- package/dist/collection/shared/utils/redirect-with-token.js +30 -0
- package/dist/collection/shared/utils/redirect-with-token.js.map +1 -0
- package/dist/collection/shared/utils/url-utils.js +25 -0
- package/dist/collection/shared/utils/url-utils.js.map +1 -0
- package/dist/collection/ticketable/api/schemas.js +10 -2
- package/dist/collection/ticketable/api/schemas.js.map +1 -1
- package/dist/collection/ticketable/api/subscriptions.js +22 -1
- package/dist/collection/ticketable/api/subscriptions.js.map +1 -1
- package/dist/collection/ticketable/api/tickets.js +22 -1
- package/dist/collection/ticketable/api/tickets.js.map +1 -1
- package/dist/collection/ticketable/components/pagination/pagination-button.js +3 -5
- package/dist/collection/ticketable/components/pagination/pagination-button.js.map +1 -1
- package/dist/collection/ticketable/components/pagination/pagination-page.js +3 -5
- package/dist/collection/ticketable/components/pagination/pagination-page.js.map +1 -1
- package/dist/collection/ticketable/components/ticketable-export/ticketable-export.js +175 -0
- package/dist/collection/ticketable/components/ticketable-export/ticketable-export.js.map +1 -0
- package/dist/collection/ticketable/components/ticketable-list/ticketable-list.js +163 -25
- package/dist/collection/ticketable/components/ticketable-list/ticketable-list.js.map +1 -1
- package/dist/collection/ticketable/index.js +1 -0
- package/dist/collection/ticketable/index.js.map +1 -1
- package/dist/components/_commonjsHelpers.js +8 -0
- package/dist/components/_commonjsHelpers.js.map +1 -0
- package/dist/components/component-utils.js +25 -28
- package/dist/components/component-utils.js.map +1 -1
- package/dist/components/component.js +33 -0
- package/dist/components/component.js.map +1 -0
- package/dist/components/de.js +702 -0
- package/dist/components/de.js.map +1 -0
- package/dist/components/en-GB.js +117 -0
- package/dist/components/en-GB.js.map +1 -0
- package/dist/components/field.js +3 -1
- package/dist/components/field.js.map +1 -1
- package/dist/components/fr.js +575 -0
- package/dist/components/fr.js.map +1 -0
- package/dist/components/has-slot-content.js +35 -0
- package/dist/components/has-slot-content.js.map +1 -0
- package/dist/components/i18n.js +96 -0
- package/dist/components/i18n.js.map +1 -1
- package/dist/components/index.js +11 -3
- package/dist/components/index.js.map +1 -1
- package/dist/components/index2.js +1158 -1083
- package/dist/components/index2.js.map +1 -1
- package/dist/components/logger.js +1 -39
- package/dist/components/logger.js.map +1 -1
- package/dist/components/newsletter-helpers.js +39 -2
- package/dist/components/newsletter-helpers.js.map +1 -1
- package/dist/components/newsletter-store.js +2 -0
- package/dist/components/newsletter-store.js.map +1 -1
- package/dist/components/nl-BE.js +540 -0
- package/dist/components/nl-BE.js.map +1 -0
- package/dist/components/profile-store.js +1 -1
- package/dist/components/profile-store.js.map +1 -1
- package/dist/components/raw-field.js +116 -7
- package/dist/components/raw-field.js.map +1 -1
- package/dist/components/redirect-with-token.js +35 -0
- package/dist/components/redirect-with-token.js.map +1 -0
- package/dist/components/ro.js +576 -0
- package/dist/components/ro.js.map +1 -0
- package/dist/components/spinner.js +2 -2
- package/dist/components/spinner.js.map +1 -1
- package/dist/components/submit-button.js +21 -24
- package/dist/components/submit-button.js.map +1 -1
- package/dist/components/sv.js +595 -0
- package/dist/components/sv.js.map +1 -0
- package/dist/components/u-conditional-render.js +5 -6
- package/dist/components/u-conditional-render.js.map +1 -1
- package/dist/components/u-config.js +16 -3
- package/dist/components/u-config.js.map +1 -1
- package/dist/components/u-email-field.js +1 -1
- package/dist/components/u-error-message.js +44 -19
- package/dist/components/u-error-message.js.map +1 -1
- package/dist/components/u-full-profile.js +1 -1
- package/dist/components/u-jump-to-service.js +16 -38
- package/dist/components/u-jump-to-service.js.map +1 -1
- package/dist/components/u-jump-to-unidy.js +16 -37
- package/dist/components/u-jump-to-unidy.js.map +1 -1
- package/dist/components/u-logout-button.js +5 -11
- package/dist/components/u-logout-button.js.map +1 -1
- package/dist/components/u-missing-field.js +5 -2
- package/dist/components/u-missing-field.js.map +1 -1
- package/dist/components/u-missing-fields-submit-button.js +10 -8
- package/dist/components/u-missing-fields-submit-button.js.map +1 -1
- package/dist/components/u-newsletter-checkbox.js +1 -1
- package/dist/components/u-newsletter-consent-checkbox.js +1 -1
- package/dist/components/u-newsletter-logout-button.js +6 -12
- package/dist/components/u-newsletter-logout-button.js.map +1 -1
- package/dist/components/u-newsletter-preference-checkbox.js +1 -1
- package/dist/components/u-newsletter-root.js +35 -12
- package/dist/components/u-newsletter-root.js.map +1 -1
- package/dist/components/u-newsletter-toggle-subscription-button.js +1 -1
- package/dist/components/u-pagination-button.js +3 -4
- package/dist/components/u-pagination-button.js.map +1 -1
- package/dist/components/u-pagination-page.js +3 -4
- package/dist/components/u-pagination-page.js.map +1 -1
- package/dist/components/u-reset-password-button.js +4 -8
- package/dist/components/u-reset-password-button.js.map +1 -1
- package/dist/components/u-signed-in.js +3 -6
- package/dist/components/u-signed-in.js.map +1 -1
- package/dist/components/u-signin-root.js +3 -6
- package/dist/components/u-signin-root.js.map +1 -1
- package/dist/components/u-signin-step.js +10 -14
- package/dist/components/u-signin-step.js.map +1 -1
- package/dist/components/u-social-login-button.js +13 -14
- package/dist/components/u-social-login-button.js.map +1 -1
- package/dist/components/u-ticketable-export.d.ts +11 -0
- package/dist/components/u-ticketable-export.js +93 -0
- package/dist/components/u-ticketable-export.js.map +1 -0
- package/dist/components/u-ticketable-list.js +256 -2396
- package/dist/components/u-ticketable-list.js.map +1 -1
- package/dist/esm/_commonjsHelpers-B85MJLTf.js +8 -0
- package/dist/esm/_commonjsHelpers-B85MJLTf.js.map +1 -0
- package/dist/esm/app-globals-J743qnJf.js +8 -0
- package/dist/esm/app-globals-J743qnJf.js.map +1 -0
- package/dist/esm/{auth-store-DBlGNGhq.js → auth-store-CSpEdi46.js} +4 -4
- package/dist/esm/{auth-store-DBlGNGhq.js.map → auth-store-CSpEdi46.js.map} +1 -1
- package/dist/esm/component-qfegGRWr.js +32 -0
- package/dist/esm/component-qfegGRWr.js.map +1 -0
- package/dist/esm/component-utils-WEof9bTg.js +36 -0
- package/dist/esm/component-utils-WEof9bTg.js.map +1 -0
- package/dist/esm/de-C6AnCqsA.js +702 -0
- package/dist/esm/de-C6AnCqsA.js.map +1 -0
- package/dist/esm/en-GB-DO63WPxt.js +117 -0
- package/dist/esm/en-GB-DO63WPxt.js.map +1 -0
- package/dist/esm/{flash-store-Df2YkLTB.js → flash-store-Dn1Bava8.js} +3 -3
- package/dist/esm/{flash-store-Df2YkLTB.js.map → flash-store-Dn1Bava8.js.map} +1 -1
- package/dist/esm/fr-C0oU6-EJ.js +575 -0
- package/dist/esm/fr-C0oU6-EJ.js.map +1 -0
- package/dist/esm/has-slot-content-DSMkJu9G.js +35 -0
- package/dist/esm/has-slot-content-DSMkJu9G.js.map +1 -0
- package/dist/esm/{i18n-Da7S9Oqf.js → i18n-ioyZxWsT.js} +100 -4
- package/dist/esm/{i18n-Da7S9Oqf.js.map → i18n-ioyZxWsT.js.map} +1 -1
- package/dist/esm/{index-FTKB5a1d.js → index-BsJDptgj.js} +4 -40
- package/dist/esm/index-BsJDptgj.js.map +1 -0
- package/dist/esm/{index-BnAYOYR5.js → index-C8kmD3tu.js} +3 -3
- package/dist/esm/{index-BnAYOYR5.js.map → index-C8kmD3tu.js.map} +1 -1
- package/dist/esm/{index-BVlbCQEX.js → index-kgGjfc-n.js} +1163 -1088
- package/dist/esm/index-kgGjfc-n.js.map +1 -0
- package/dist/esm/index.js +18 -12
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +4 -4
- package/dist/esm/{newsletter-helpers-fCpxzovf.js → newsletter-helpers-DoKGN_Kq.js} +46 -9
- package/dist/esm/newsletter-helpers-DoKGN_Kq.js.map +1 -0
- package/dist/esm/{newsletter-store-BB618FgS.js → newsletter-store-DpR85vaC.js} +5 -3
- package/dist/esm/newsletter-store-DpR85vaC.js.map +1 -0
- package/dist/esm/nl-BE-C8uPYb_H.js +540 -0
- package/dist/esm/nl-BE-C8uPYb_H.js.map +1 -0
- package/dist/esm/{profile-helpers-CXK2X6Ts.js → profile-helpers-BMJy0ei_.js} +4 -4
- package/dist/esm/{profile-helpers-CXK2X6Ts.js.map → profile-helpers-BMJy0ei_.js.map} +1 -1
- package/dist/esm/{profile-store-CHlSKuTY.js → profile-store-7wBS3gBH.js} +4 -4
- package/dist/esm/{profile-store-CHlSKuTY.js.map → profile-store-7wBS3gBH.js.map} +1 -1
- package/dist/esm/redirect-with-token-StCLJlSp.js +35 -0
- package/dist/esm/redirect-with-token-StCLJlSp.js.map +1 -0
- package/dist/esm/ro-BlDHz7d-.js +576 -0
- package/dist/esm/ro-BlDHz7d-.js.map +1 -0
- package/dist/esm/sdk.js +4 -4
- package/dist/esm/sv-B_Gq29K0.js +595 -0
- package/dist/esm/sv-B_Gq29K0.js.map +1 -0
- package/dist/esm/u-conditional-render.entry.js +14 -14
- package/dist/esm/u-conditional-render.entry.js.map +1 -1
- package/dist/esm/u-config.entry.js +24 -11
- package/dist/esm/u-config.entry.js.map +1 -1
- package/dist/esm/u-email-field.entry.js +7 -7
- package/dist/esm/u-error-message.entry.js +49 -22
- package/dist/esm/u-error-message.entry.js.map +1 -1
- package/dist/esm/u-field.u-raw-field.entry.js.map +1 -1
- package/dist/esm/u-field_2.entry.js +124 -12
- package/dist/esm/u-flash-message.entry.js +3 -3
- package/dist/esm/u-full-profile.entry.js +6 -6
- package/dist/esm/u-jump-to-service.entry.js +23 -44
- package/dist/esm/u-jump-to-service.entry.js.map +1 -1
- package/dist/esm/u-jump-to-unidy.entry.js +22 -43
- package/dist/esm/u-jump-to-unidy.entry.js.map +1 -1
- package/dist/esm/u-logout-button.u-signed-in.entry.js.map +1 -1
- package/dist/esm/u-logout-button_2.entry.js +15 -22
- package/dist/esm/u-magic-code-field.entry.js +8 -9
- package/dist/esm/u-magic-code-field.entry.js.map +1 -1
- package/dist/esm/u-missing-field.entry.js +6 -5
- package/dist/esm/u-missing-field.entry.js.map +1 -1
- package/dist/esm/u-missing-fields-submit-button.entry.js +16 -14
- package/dist/esm/u-missing-fields-submit-button.entry.js.map +1 -1
- package/dist/esm/u-newsletter-checkbox.entry.js +11 -12
- package/dist/esm/u-newsletter-checkbox.entry.js.map +1 -1
- package/dist/esm/u-newsletter-consent-checkbox.entry.js +4 -4
- package/dist/esm/u-newsletter-logout-button.entry.js +15 -20
- package/dist/esm/u-newsletter-logout-button.entry.js.map +1 -1
- package/dist/esm/u-newsletter-preference-checkbox.entry.js +11 -12
- package/dist/esm/u-newsletter-preference-checkbox.entry.js.map +1 -1
- package/dist/esm/u-newsletter-resend-doi-button.entry.js +10 -11
- package/dist/esm/u-newsletter-resend-doi-button.entry.js.map +1 -1
- package/dist/esm/u-newsletter-root.entry.js +42 -19
- package/dist/esm/u-newsletter-root.entry.js.map +1 -1
- package/dist/esm/u-newsletter-toggle-subscription-button.entry.js +11 -12
- package/dist/esm/u-newsletter-toggle-subscription-button.entry.js.map +1 -1
- package/dist/esm/u-pagination-button.entry.js +4 -4
- package/dist/esm/u-pagination-button.entry.js.map +1 -1
- package/dist/esm/u-pagination-page.entry.js +4 -4
- package/dist/esm/u-pagination-page.entry.js.map +1 -1
- package/dist/esm/u-passkey.entry.js +8 -9
- package/dist/esm/u-passkey.entry.js.map +1 -1
- package/dist/esm/u-password-field.entry.js +5 -5
- package/dist/esm/u-profile.u-submit-button.entry.js.map +1 -1
- package/dist/esm/u-profile_2.entry.js +31 -33
- package/dist/esm/u-registration-button.entry.js +5 -5
- package/dist/esm/u-reset-password-button.entry.js +12 -15
- package/dist/esm/u-reset-password-button.entry.js.map +1 -1
- package/dist/esm/u-send-magic-code-button.entry.js +8 -9
- package/dist/esm/u-send-magic-code-button.entry.js.map +1 -1
- package/dist/esm/u-signin-root.entry.js +6 -8
- package/dist/esm/u-signin-root.entry.js.map +1 -1
- package/dist/esm/u-signin-step.entry.js +17 -21
- package/dist/esm/u-signin-step.entry.js.map +1 -1
- package/dist/esm/u-social-login-button.entry.js +16 -15
- package/dist/esm/u-social-login-button.entry.js.map +1 -1
- package/dist/esm/u-spinner.entry.js +3 -3
- package/dist/esm/u-spinner.entry.js.map +1 -1
- package/dist/esm/u-ticketable-export.entry.js +74 -0
- package/dist/esm/u-ticketable-export.entry.js.map +1 -0
- package/dist/esm/u-ticketable-list-D2p21JjR.js +3981 -0
- package/dist/esm/u-ticketable-list-D2p21JjR.js.map +1 -0
- package/dist/esm/u-ticketable-list.entry.js +10 -6121
- package/dist/esm/u-ticketable-list.entry.js.map +1 -1
- package/dist/esm/{unidy-store-Bg7IaIMd.js → unidy-store-B5Bf4Vit.js} +3 -3
- package/dist/esm/{unidy-store-Bg7IaIMd.js.map → unidy-store-B5Bf4Vit.js.map} +1 -1
- package/dist/sdk/index.esm.js +1 -1
- package/dist/sdk/index.esm.js.map +1 -1
- package/dist/sdk/locales/de.json +16 -0
- package/dist/sdk/locales/en.json +16 -0
- package/dist/sdk/locales/fr.json +16 -0
- package/dist/sdk/locales/it.json +16 -0
- package/dist/sdk/locales/nl_be.json +16 -0
- package/dist/sdk/locales/ro.json +16 -0
- package/dist/sdk/p-02dce5da.entry.js +2 -0
- package/dist/sdk/p-02dce5da.entry.js.map +1 -0
- package/dist/sdk/p-043c7643.entry.js +2 -0
- package/dist/sdk/p-043c7643.entry.js.map +1 -0
- package/dist/sdk/p-18c17747.entry.js +2 -0
- package/dist/sdk/p-18c17747.entry.js.map +1 -0
- package/dist/sdk/p-1a1c1af0.entry.js +2 -0
- package/dist/sdk/p-1a1c1af0.entry.js.map +1 -0
- package/dist/sdk/p-271781c7.entry.js +2 -0
- package/dist/sdk/{p-1a8973a6.entry.js.map → p-271781c7.entry.js.map} +1 -1
- package/dist/sdk/p-29473a55.entry.js +2 -0
- package/dist/sdk/p-29473a55.entry.js.map +1 -0
- package/dist/sdk/p-2a25d62e.entry.js +2 -0
- package/dist/sdk/p-2a25d62e.entry.js.map +1 -0
- package/dist/sdk/{p-C8lRzJEX.js → p-2bKltz_F.js} +2 -2
- package/dist/sdk/{p-C8lRzJEX.js.map → p-2bKltz_F.js.map} +1 -1
- package/dist/sdk/p-2cc3a00d.entry.js +2 -0
- package/dist/sdk/p-2cc3a00d.entry.js.map +1 -0
- package/dist/sdk/p-2f49e0cb.entry.js +2 -0
- package/dist/sdk/p-2f49e0cb.entry.js.map +1 -0
- package/dist/sdk/p-34f5d201.entry.js +2 -0
- package/dist/sdk/p-34f5d201.entry.js.map +1 -0
- package/dist/sdk/p-52c4bdd9.entry.js +2 -0
- package/dist/sdk/p-52c4bdd9.entry.js.map +1 -0
- package/dist/sdk/p-585a0efa.entry.js +2 -0
- package/dist/sdk/p-585a0efa.entry.js.map +1 -0
- package/dist/sdk/p-60675019.entry.js +2 -0
- package/dist/sdk/p-60675019.entry.js.map +1 -0
- package/dist/sdk/p-79ef9a70.entry.js +2 -0
- package/dist/sdk/p-79ef9a70.entry.js.map +1 -0
- package/dist/sdk/p-7d88e21c.entry.js +2 -0
- package/dist/sdk/p-7d88e21c.entry.js.map +1 -0
- package/dist/sdk/p-7eaf3468.entry.js +2 -0
- package/dist/sdk/p-7eaf3468.entry.js.map +1 -0
- package/dist/sdk/{p-88beb872.entry.js → p-8412762c.entry.js} +2 -2
- package/dist/sdk/p-8ea70c08.entry.js +2 -0
- package/dist/sdk/p-8ea70c08.entry.js.map +1 -0
- package/dist/sdk/p-946cdb0a.entry.js +2 -0
- package/dist/sdk/p-946cdb0a.entry.js.map +1 -0
- package/dist/sdk/p-94bb0217.entry.js +2 -0
- package/dist/sdk/p-94bb0217.entry.js.map +1 -0
- package/dist/sdk/{p-bcca06f1.entry.js → p-96860b09.entry.js} +2 -2
- package/dist/sdk/p-B1A6Nu24.js +2 -0
- package/dist/sdk/p-B1A6Nu24.js.map +1 -0
- package/dist/sdk/p-B85MJLTf.js +2 -0
- package/dist/sdk/p-B85MJLTf.js.map +1 -0
- package/dist/sdk/p-B8N6Bwsa.js +2 -0
- package/dist/sdk/{p-DCG3L43i.js.map → p-B8N6Bwsa.js.map} +1 -1
- package/dist/sdk/p-Ba5szISo.js +2 -0
- package/dist/sdk/p-Ba5szISo.js.map +1 -0
- package/dist/sdk/p-BsJDptgj.js +14 -0
- package/dist/sdk/p-BsJDptgj.js.map +1 -0
- package/dist/sdk/{p-bpXpOZY_.js → p-C0Mo15qt.js} +2 -2
- package/dist/sdk/{p-bpXpOZY_.js.map → p-C0Mo15qt.js.map} +1 -1
- package/dist/sdk/p-C10MAuCE.js +2 -0
- package/dist/sdk/p-C10MAuCE.js.map +1 -0
- package/dist/sdk/p-CTy6pQSg.js +2 -0
- package/dist/sdk/p-CTy6pQSg.js.map +1 -0
- package/dist/sdk/p-CW6kGAuQ.js +2 -0
- package/dist/sdk/p-CW6kGAuQ.js.map +1 -0
- package/dist/sdk/{p-DdMKVWx8.js → p-CbSP8My1.js} +2 -2
- package/dist/sdk/{p-DdMKVWx8.js.map → p-CbSP8My1.js.map} +1 -1
- package/dist/sdk/p-CbzzI4uW.js +2 -0
- package/dist/sdk/p-CbzzI4uW.js.map +1 -0
- package/dist/sdk/p-CgT6fZjb.js +2 -0
- package/dist/sdk/p-CgT6fZjb.js.map +1 -0
- package/dist/sdk/p-CuHZ3IkE.js +2 -0
- package/dist/sdk/p-CuHZ3IkE.js.map +1 -0
- package/dist/sdk/p-Cysk_vik.js +2 -0
- package/dist/sdk/p-Cysk_vik.js.map +1 -0
- package/dist/sdk/p-D0ut3waq.js +2 -0
- package/dist/sdk/p-D0ut3waq.js.map +1 -0
- package/dist/sdk/{p-BigbTrKk.js → p-D2Rf-QGm.js} +2 -2
- package/dist/sdk/{p-BigbTrKk.js.map → p-D2Rf-QGm.js.map} +1 -1
- package/dist/sdk/{p-6rqGeAfT.js → p-D9yFO_ID.js} +2 -2
- package/dist/sdk/{p-6rqGeAfT.js.map → p-D9yFO_ID.js.map} +1 -1
- package/dist/sdk/p-DD_5soRi.js +2 -0
- package/dist/sdk/p-DD_5soRi.js.map +1 -0
- package/dist/sdk/p-DHuvvagO.js +2 -0
- package/dist/sdk/p-DHuvvagO.js.map +1 -0
- package/dist/sdk/p-DSMkJu9G.js +2 -0
- package/dist/sdk/p-DSMkJu9G.js.map +1 -0
- package/dist/sdk/p-DcirMfca.js +2 -0
- package/dist/sdk/p-DcirMfca.js.map +1 -0
- package/dist/sdk/p-J0cv5IOA.js +2 -0
- package/dist/sdk/p-J0cv5IOA.js.map +1 -0
- package/dist/sdk/p-_5evboqW.js +2 -0
- package/dist/sdk/{p-DSktNM_k.js.map → p-_5evboqW.js.map} +1 -1
- package/dist/sdk/{p-7ee2f2ab.entry.js → p-ac3a6bbf.entry.js} +2 -2
- package/dist/sdk/p-b498bcdd.entry.js +2 -0
- package/dist/sdk/p-b498bcdd.entry.js.map +1 -0
- package/dist/sdk/p-b5dd5b4c.entry.js +2 -0
- package/dist/sdk/p-b5dd5b4c.entry.js.map +1 -0
- package/dist/sdk/{p-6b061b18.entry.js → p-b99588a8.entry.js} +2 -2
- package/dist/sdk/p-bf9c27a8.entry.js +2 -0
- package/dist/sdk/p-bf9c27a8.entry.js.map +1 -0
- package/dist/sdk/p-c10d9b8e.entry.js +2 -0
- package/dist/sdk/p-c10d9b8e.entry.js.map +1 -0
- package/dist/sdk/{p-10e20afd.entry.js → p-c2634439.entry.js} +2 -2
- package/dist/sdk/p-d6777395.entry.js +2 -0
- package/dist/sdk/p-d6777395.entry.js.map +1 -0
- package/dist/sdk/p-dbfe7b29.entry.js +2 -0
- package/dist/sdk/p-dbfe7b29.entry.js.map +1 -0
- package/dist/sdk/p-def4e874.entry.js +2 -0
- package/dist/sdk/p-def4e874.entry.js.map +1 -0
- package/dist/sdk/p-e872a012.entry.js +2 -0
- package/dist/sdk/p-e872a012.entry.js.map +1 -0
- package/dist/sdk/p-eaaf3989.entry.js +2 -0
- package/dist/sdk/p-eaaf3989.entry.js.map +1 -0
- package/dist/sdk/p-fd46b459.entry.js +2 -0
- package/dist/sdk/{p-830778eb.entry.js.map → p-fd46b459.entry.js.map} +1 -1
- package/dist/sdk/sdk.esm.js +1 -1
- package/dist/sdk/u-conditional-render.entry.esm.js.map +1 -1
- package/dist/sdk/u-config.entry.esm.js.map +1 -1
- package/dist/sdk/u-error-message.entry.esm.js.map +1 -1
- package/dist/sdk/u-field.u-raw-field.entry.esm.js.map +1 -1
- package/dist/sdk/u-jump-to-service.entry.esm.js.map +1 -1
- package/dist/sdk/u-jump-to-unidy.entry.esm.js.map +1 -1
- package/dist/sdk/u-logout-button.u-signed-in.entry.esm.js.map +1 -1
- package/dist/sdk/u-magic-code-field.entry.esm.js.map +1 -1
- package/dist/sdk/u-missing-field.entry.esm.js.map +1 -1
- package/dist/sdk/u-missing-fields-submit-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-newsletter-checkbox.entry.esm.js.map +1 -1
- package/dist/sdk/u-newsletter-logout-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-newsletter-preference-checkbox.entry.esm.js.map +1 -1
- package/dist/sdk/u-newsletter-resend-doi-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-newsletter-root.entry.esm.js.map +1 -1
- package/dist/sdk/u-newsletter-toggle-subscription-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-pagination-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-pagination-page.entry.esm.js.map +1 -1
- package/dist/sdk/u-passkey.entry.esm.js.map +1 -1
- package/dist/sdk/u-profile.u-submit-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-reset-password-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-send-magic-code-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-signin-root.entry.esm.js.map +1 -1
- package/dist/sdk/u-signin-step.entry.esm.js.map +1 -1
- package/dist/sdk/u-social-login-button.entry.esm.js.map +1 -1
- package/dist/sdk/u-spinner.entry.esm.js.map +1 -1
- package/dist/sdk/u-ticketable-export.entry.esm.js.map +1 -0
- package/dist/sdk/u-ticketable-list.entry.esm.js.map +1 -1
- package/dist/types/api/client.d.ts +1 -1
- package/dist/types/api/index.d.ts +4 -4
- package/dist/types/api/standalone.d.ts +9 -9
- package/dist/types/auth/api/auth.d.ts +2 -3
- package/dist/types/auth/api/schemas.d.ts +19 -19
- package/dist/types/auth/auth-helpers.d.ts +1 -0
- package/dist/types/auth/components/jump-to-service/jump-to-service.d.ts +13 -5
- package/dist/types/auth/components/jump-to-unidy/jump-to-unidy.d.ts +13 -9
- package/dist/types/auth/components/logout-button/logout-button.d.ts +13 -4
- package/dist/types/auth/components/missing-field/missing-field.d.ts +1 -0
- package/dist/types/auth/components/missing-fields-submit-button/missing-fields-submit-button.d.ts +14 -2
- package/dist/types/auth/components/reset-pass-button/reset-pass-button.d.ts +13 -4
- package/dist/types/auth/components/social-logins/social-login-button.d.ts +11 -7
- package/dist/types/components.d.ts +73 -0
- package/dist/types/logger.d.ts +0 -34
- package/dist/types/newsletter/components/logout-button/logout-button.d.ts +13 -4
- package/dist/types/newsletter/components/newsletter-root/newsletter-root.d.ts +16 -2
- package/dist/types/newsletter/newsletter-helpers.d.ts +8 -2
- package/dist/types/newsletter/store/newsletter-store.d.ts +8 -1
- package/dist/types/profile/api/profile.d.ts +2 -2
- package/dist/types/profile/api/schemas.d.ts +21 -21
- package/dist/types/profile/components/raw-field/raw-field.d.ts +14 -2
- package/dist/types/shared/base/component.d.ts +46 -0
- package/dist/types/shared/base/has-slot-content.d.ts +10 -0
- package/dist/types/shared/component-utils.d.ts +20 -12
- package/dist/types/shared/components/conditional-render/conditional-render.d.ts +7 -2
- package/dist/types/shared/components/config/config.d.ts +7 -2
- package/dist/types/shared/components/error-message/error-message.d.ts +14 -2
- package/dist/types/shared/components/submit-button/submit-button.d.ts +13 -4
- package/dist/types/shared/context-utils.d.ts +73 -0
- package/dist/types/shared/utils/redirect-with-token.d.ts +21 -0
- package/dist/types/shared/utils/url-utils.d.ts +16 -0
- package/dist/types/ticketable/api/schemas.d.ts +16 -2
- package/dist/types/ticketable/api/subscriptions.d.ts +8 -3
- package/dist/types/ticketable/api/tickets.d.ts +8 -3
- package/dist/types/ticketable/components/pagination/pagination-button.d.ts +8 -4
- package/dist/types/ticketable/components/pagination/pagination-page.d.ts +8 -4
- package/dist/types/ticketable/components/ticketable-export/ticketable-export.d.ts +24 -0
- package/dist/types/ticketable/components/ticketable-list/ticketable-list.d.ts +10 -4
- package/dist/types/ticketable/index.d.ts +1 -0
- package/package.json +6 -2
- package/readme.md +248 -27
- package/dist/cjs/app-globals-hdkLqF51.js +0 -10
- package/dist/cjs/app-globals-hdkLqF51.js.map +0 -1
- package/dist/cjs/component-utils-bu3SY4dE.js +0 -42
- package/dist/cjs/component-utils-bu3SY4dE.js.map +0 -1
- package/dist/cjs/index-B325yXfO.js.map +0 -1
- package/dist/cjs/index-BzPYBLYC.js.map +0 -1
- package/dist/cjs/newsletter-helpers-hdDC5X-V.js.map +0 -1
- package/dist/cjs/newsletter-store-CupsLgO9.js.map +0 -1
- package/dist/cjs/pagination-store-zo48QpTm.js +0 -16
- package/dist/cjs/pagination-store-zo48QpTm.js.map +0 -1
- package/dist/components/pagination-store.js +0 -14
- package/dist/components/pagination-store.js.map +0 -1
- package/dist/esm/app-globals-iHhGdwBB.js +0 -8
- package/dist/esm/app-globals-iHhGdwBB.js.map +0 -1
- package/dist/esm/component-utils-BGq0leDV.js +0 -39
- package/dist/esm/component-utils-BGq0leDV.js.map +0 -1
- package/dist/esm/index-BVlbCQEX.js.map +0 -1
- package/dist/esm/index-FTKB5a1d.js.map +0 -1
- package/dist/esm/newsletter-helpers-fCpxzovf.js.map +0 -1
- package/dist/esm/newsletter-store-BB618FgS.js.map +0 -1
- package/dist/esm/pagination-store-DxmcQH8R.js +0 -14
- package/dist/esm/pagination-store-DxmcQH8R.js.map +0 -1
- package/dist/sdk/p-1a8973a6.entry.js +0 -2
- package/dist/sdk/p-35ad60ab.entry.js +0 -2
- package/dist/sdk/p-35ad60ab.entry.js.map +0 -1
- package/dist/sdk/p-3f352f38.entry.js +0 -2
- package/dist/sdk/p-3f352f38.entry.js.map +0 -1
- package/dist/sdk/p-468aaf62.entry.js +0 -2
- package/dist/sdk/p-468aaf62.entry.js.map +0 -1
- package/dist/sdk/p-4e2e6a13.entry.js +0 -2
- package/dist/sdk/p-4e2e6a13.entry.js.map +0 -1
- package/dist/sdk/p-57c8dc68.entry.js +0 -2
- package/dist/sdk/p-57c8dc68.entry.js.map +0 -1
- package/dist/sdk/p-594aec0c.entry.js +0 -2
- package/dist/sdk/p-594aec0c.entry.js.map +0 -1
- package/dist/sdk/p-60c8be64.entry.js +0 -2
- package/dist/sdk/p-60c8be64.entry.js.map +0 -1
- package/dist/sdk/p-760718d3.entry.js +0 -2
- package/dist/sdk/p-760718d3.entry.js.map +0 -1
- package/dist/sdk/p-77f541f3.entry.js +0 -2
- package/dist/sdk/p-77f541f3.entry.js.map +0 -1
- package/dist/sdk/p-830778eb.entry.js +0 -2
- package/dist/sdk/p-8839648e.entry.js +0 -2
- package/dist/sdk/p-8839648e.entry.js.map +0 -1
- package/dist/sdk/p-B6MYe-dh.js +0 -2
- package/dist/sdk/p-B6MYe-dh.js.map +0 -1
- package/dist/sdk/p-BGq0leDV.js +0 -2
- package/dist/sdk/p-BGq0leDV.js.map +0 -1
- package/dist/sdk/p-C_UZBwdm.js +0 -2
- package/dist/sdk/p-C_UZBwdm.js.map +0 -1
- package/dist/sdk/p-CbazSxaZ.js +0 -2
- package/dist/sdk/p-CbazSxaZ.js.map +0 -1
- package/dist/sdk/p-DCG3L43i.js +0 -2
- package/dist/sdk/p-DEUPZOH-.js +0 -2
- package/dist/sdk/p-DEUPZOH-.js.map +0 -1
- package/dist/sdk/p-DSktNM_k.js +0 -2
- package/dist/sdk/p-FTKB5a1d.js +0 -14
- package/dist/sdk/p-FTKB5a1d.js.map +0 -1
- package/dist/sdk/p-a7ffcff9.entry.js +0 -2
- package/dist/sdk/p-a7ffcff9.entry.js.map +0 -1
- package/dist/sdk/p-acaba1d5.entry.js +0 -2
- package/dist/sdk/p-acaba1d5.entry.js.map +0 -1
- package/dist/sdk/p-ae47a7a3.entry.js +0 -2
- package/dist/sdk/p-ae47a7a3.entry.js.map +0 -1
- package/dist/sdk/p-aec580e4.entry.js +0 -2
- package/dist/sdk/p-aec580e4.entry.js.map +0 -1
- package/dist/sdk/p-b63438ff.entry.js +0 -2
- package/dist/sdk/p-b63438ff.entry.js.map +0 -1
- package/dist/sdk/p-baaaa7f5.entry.js +0 -2
- package/dist/sdk/p-baaaa7f5.entry.js.map +0 -1
- package/dist/sdk/p-bba2da84.entry.js +0 -2
- package/dist/sdk/p-bba2da84.entry.js.map +0 -1
- package/dist/sdk/p-bc47f42b.entry.js +0 -2
- package/dist/sdk/p-bc47f42b.entry.js.map +0 -1
- package/dist/sdk/p-bd51e26f.entry.js +0 -2
- package/dist/sdk/p-bd51e26f.entry.js.map +0 -1
- package/dist/sdk/p-c3552f75.entry.js +0 -2
- package/dist/sdk/p-c3552f75.entry.js.map +0 -1
- package/dist/sdk/p-d9900482.entry.js +0 -2
- package/dist/sdk/p-d9900482.entry.js.map +0 -1
- package/dist/sdk/p-e6796c38.entry.js +0 -2
- package/dist/sdk/p-e6796c38.entry.js.map +0 -1
- package/dist/sdk/p-f272eb38.entry.js +0 -2
- package/dist/sdk/p-f272eb38.entry.js.map +0 -1
- package/dist/sdk/p-f4a47ef8.entry.js +0 -2
- package/dist/sdk/p-f4a47ef8.entry.js.map +0 -1
- package/dist/sdk/p-f608e64a.entry.js +0 -2
- package/dist/sdk/p-f608e64a.entry.js.map +0 -1
- package/dist/sdk/p-f762ac70.entry.js +0 -2
- package/dist/sdk/p-f762ac70.entry.js.map +0 -1
- package/dist/sdk/p-l6NinBiD.js +0 -2
- package/dist/sdk/p-l6NinBiD.js.map +0 -1
- /package/dist/sdk/{p-88beb872.entry.js.map → p-8412762c.entry.js.map} +0 -0
- /package/dist/sdk/{p-bcca06f1.entry.js.map → p-96860b09.entry.js.map} +0 -0
- /package/dist/sdk/{p-7ee2f2ab.entry.js.map → p-ac3a6bbf.entry.js.map} +0 -0
- /package/dist/sdk/{p-6b061b18.entry.js.map → p-b99588a8.entry.js.map} +0 -0
- /package/dist/sdk/{p-10e20afd.entry.js.map → p-c2634439.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"raw-field.js","sourceRoot":"","sources":["../../../../src/profile/components/raw-field/raw-field.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, h, Prop, State } from \"@stencil/core\";\nimport { UnidyComponent } from \"../../../logger\";\nimport { type ProfileNode, type ProfileRaw, state as profileState } from \"../../store/profile-store\";\nimport { Input } from \"../raw-input-fields/Input\";\nimport { MultiSelect, type MultiSelectOption } from \"../raw-input-fields/MultiSelect\";\nimport { RadioGroup, type RadioOption } from \"../raw-input-fields/RadioGroup\";\nimport { type Option, Select } from \"../raw-input-fields/Select\";\nimport { Textarea } from \"../raw-input-fields/Textarea\";\n\n@Component({\n tag: \"u-raw-field\",\n shadow: false,\n})\nexport class RawField extends UnidyComponent {\n @Prop() required = false;\n @Prop() readonlyPlaceholder = \"\";\n @Prop() countryCodeDisplayOption?: \"icon\" | \"label\" = \"label\";\n @Prop() invalidPhoneMessage = \"Please enter a valid phone number.\";\n @Prop({ attribute: \"class-name\" }) componentClassName?: string;\n\n @Prop() field!: string;\n @Prop() value?: string | string[];\n @Prop() checked?: boolean;\n @Prop() disabled?: boolean;\n @Prop() tooltip?: string;\n @Prop() type!: string;\n @Prop() placeholder?: string;\n @Prop() options?: string | Option[];\n @Prop() emptyOption = false;\n @Prop() attrName?: string;\n @Prop() radioOptions?: RadioOption[];\n @Prop() multiSelectOptions?: MultiSelectOption[];\n @Prop() specificPartKey?: string;\n @Prop() ariaDescribedBy = \"\";\n @Prop() pattern?: string;\n @Prop() patternErrorMessage?: string;\n @Prop() validationFunc?: (value: string | string[]) => { valid: boolean; message?: string };\n\n @Element() el!: HTMLElement;\n\n @State() selected?: string | string[];\n\n private readStore(fieldName: string): string | undefined | string[] {\n if (!fieldName) return;\n const data: ProfileRaw = profileState.data;\n\n if (!data) return;\n\n let field: ProfileNode | undefined;\n\n if (fieldName.startsWith(\"custom_attributes.\")) {\n const key = fieldName.replace(\"custom_attributes.\", \"\");\n field = data.custom_attributes?.[key];\n } else {\n field = data[fieldName];\n }\n\n if (!field) return;\n\n if (field.radio_options) {\n const checkedOption = field.radio_options.find((option: RadioOption) => option.checked);\n\n const checkedValue = checkedOption?.value ?? field.value ?? \"\";\n\n return String(checkedValue);\n }\n\n if (field.type === \"checkbox\") {\n return Array.isArray(field.value) ? field.value : [];\n }\n\n return field.value;\n }\n\n private writeStore(fieldName: string, value: string | string[]) {\n if (!fieldName) return;\n const data: ProfileRaw = profileState.data;\n if (!data) return;\n\n const isCustomAttribute = fieldName.startsWith(\"custom_attributes.\");\n const key = isCustomAttribute ? fieldName.replace(\"custom_attributes.\", \"\") : fieldName;\n\n if (isCustomAttribute) {\n const field = data.custom_attributes?.[key];\n profileState.data = {\n ...data,\n custom_attributes: {\n ...data.custom_attributes,\n [key]: { ...field, value },\n },\n };\n } else {\n const field = data[key];\n profileState.data = { ...data, [key]: { ...field, value } };\n }\n }\n\n private runExternalValidator(value: string | string[]) {\n if (this.validationFunc) {\n try {\n return this.validationFunc(value);\n } catch (e) {\n this.logger.error(\"External validator (validationFunc) threw an error:\", e);\n return null;\n }\n }\n }\n\n private validateValue(value: string | string[]): { valid: boolean; message: string } {\n // TODO: We should validate this when the component is loading.\n if (this.required) {\n const empty = value === undefined || value === null || value === \"\";\n if (empty) {\n return { valid: false, message: \"This field is required.\" };\n }\n }\n\n if (this.pattern && typeof value === \"string\") {\n const regex = new RegExp(this.pattern);\n if (!regex.test(value)) {\n return { valid: false, message: this.patternErrorMessage || \"Invalid format.\" };\n }\n }\n\n const externalResult = this.runExternalValidator(value);\n\n if (externalResult && !externalResult.valid) {\n return { valid: false, message: externalResult.message || \"Invalid input.\" };\n }\n\n if (this.type === \"tel\") {\n const phonePattern = /^(?=.{4,13}$)(\\+\\d+|\\d+)$/;\n if (typeof value === \"string\" && value !== \"\" && !phonePattern.test(value)) {\n return { valid: false, message: this.invalidPhoneMessage };\n }\n }\n\n return { valid: true, message: \"\" };\n }\n\n private getNormalizedOptions(): Option[] {\n if (Array.isArray(this.options)) return this.options;\n\n // unidy-raw-field select-options prop can be a JSON string\n if (typeof this.options === \"string\") return JSON.parse(this.options);\n\n return [];\n }\n\n private countryIcon(countryCode: string, placeholder = \"➖\"): string {\n if (!/^[A-Z]{2}$/.test(countryCode)) {\n return placeholder;\n }\n\n return Array.from(countryCode)\n .map((char) => String.fromCodePoint(0x1f1e6 + (char.charCodeAt(0) - \"A\".charCodeAt(0))))\n .join(\"\");\n }\n\n private onMultiToggle = (optValue: string, checked: boolean) => {\n const currentValues = Array.isArray(this.selected) ? this.selected : [];\n let updatedValues: string[];\n if (checked) {\n updatedValues = currentValues.includes(optValue) ? currentValues : [...currentValues, optValue];\n } else {\n updatedValues = currentValues.filter((v) => v !== optValue);\n }\n\n this.selected = updatedValues;\n // TODO: validate multiselect if needed\n this.writeStore(this.field, updatedValues);\n };\n\n private onBlurFieldValidation = (e: Event) => {\n const input = e.target as HTMLInputElement | HTMLTextAreaElement;\n const val = input.value;\n\n const result = this.validateValue(val);\n const newErrors = { ...profileState.errors };\n\n if (result.valid) {\n delete newErrors[this.field];\n } else {\n newErrors[this.field] = result.message;\n }\n\n profileState.errors = newErrors;\n };\n\n private onChangeFieldValidation = (newValue: string) => {\n this.selected = newValue;\n\n const result = this.validateValue(newValue);\n const newErrors = { ...profileState.errors };\n\n if (result.valid) {\n delete newErrors[this.field];\n this.writeStore(this.field, newValue);\n } else {\n newErrors[this.field] = result.message;\n }\n\n profileState.errors = newErrors;\n };\n\n componentWillLoad() {\n if (!this.field) throw new Error('u-raw-field: \"field\" is required.');\n if (!this.type) throw new Error('u-raw-field: \"type\" is required.');\n\n const allowed: Set<string> = new Set([\"text\", \"email\", \"tel\", \"password\", \"number\", \"date\", \"radio\", \"textarea\", \"select\", \"checkbox\"]);\n if (!allowed.has(this.type)) {\n this.type = \"text\";\n }\n\n const current = this.readStore(this.field);\n const isType =\n this.type === \"text\" ||\n this.type === \"email\" ||\n this.type === \"tel\" ||\n this.type === \"password\" ||\n this.type === \"number\" ||\n this.type === \"date\" ||\n this.type === \"textarea\" ||\n this.type === \"select\";\n\n if (isType && (current === undefined || current === null) && typeof this.value === \"string\") {\n this.writeStore(this.field, this.value);\n }\n\n this.selected = current;\n }\n\n componentDidRender() {\n const errs = profileState.errors;\n if (errs?.[this.field]) {\n this.el.querySelector<HTMLInputElement | HTMLTextAreaElement>(`#${CSS.escape(this.field)}`)?.focus();\n }\n }\n\n render() {\n if (this.type === \"radio\") {\n if (Array.isArray(this.radioOptions) && this.radioOptions.length) {\n const checkedOptions = this.radioOptions.map((opt) => ({\n ...opt,\n checked: String(opt.value) === this.selected,\n }));\n return (\n <RadioGroup\n name={this.field}\n disabled={this.disabled}\n title={this.tooltip}\n type=\"radio\"\n onChange={this.onChangeFieldValidation}\n options={checkedOptions}\n specificPartKey={this.specificPartKey}\n aria-describedby={this.ariaDescribedBy}\n required={this.required}\n />\n );\n }\n\n if (typeof this.value === \"string\") {\n const currentValue = this.readStore(this.field);\n const isChecked = currentValue != null && String(currentValue) === this.value;\n return (\n <RadioGroup\n name={this.field}\n value={this.value}\n checked={isChecked}\n disabled={this.disabled}\n title={this.tooltip}\n componentClassName={this.componentClassName}\n type=\"radio\"\n specificPartKey={this.specificPartKey}\n onChange={this.onChangeFieldValidation}\n aria-describedby={this.ariaDescribedBy}\n required={this.required}\n />\n );\n }\n }\n\n if (this.type === \"checkbox\") {\n if (Array.isArray(this.multiSelectOptions) && this.multiSelectOptions.length) {\n const selected = Array.isArray(this.selected) ? this.selected : [];\n return (\n <MultiSelect\n value={selected}\n options={this.multiSelectOptions}\n disabled={this.disabled}\n title={this.tooltip}\n type=\"checkbox\"\n specificPartKey={this.specificPartKey}\n onToggle={this.onMultiToggle}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n\n if (this.value) {\n const currentValue = (this.readStore(this.field) as string[]) ?? [];\n const isChecked = currentValue?.includes(this.value as string);\n return (\n <MultiSelect\n id={`${this.field}-${this.value}`}\n name={this.field}\n value={this.value as string}\n checked={isChecked}\n disabled={this.disabled}\n title={this.tooltip}\n componentClassName={this.componentClassName}\n type=\"checkbox\"\n onToggle={(val, checked) => {\n const current = this.readStore(this.field) as string[];\n const updated = checked ? [...current, val] : current.filter((v) => v !== val);\n this.writeStore(this.field, updated);\n }}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n }\n\n if (this.type === \"select\") {\n const currentValue = (this.readStore(this.field) as string) ?? \"\";\n const option = this.getNormalizedOptions();\n return (\n <Select\n id={this.field}\n name={this.field}\n value={currentValue}\n options={option}\n disabled={this.disabled}\n title={this.tooltip}\n emptyOption={this.emptyOption}\n onChange={this.onChangeFieldValidation}\n componentClassName={this.componentClassName}\n countryCodeDisplayOption={this.countryCodeDisplayOption}\n countryIcon={this.countryIcon}\n attr_name={this.attrName}\n specificPartKey={this.specificPartKey}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n\n if (this.type === \"textarea\") {\n const currentValue = (this.readStore(this.field) as string) || \"\";\n return (\n <Textarea\n id={this.field}\n value={currentValue}\n required={this.required}\n disabled={this.disabled}\n title={this.tooltip}\n componentClassName={this.componentClassName}\n specificPartKey={this.specificPartKey}\n onChange={this.onChangeFieldValidation}\n onBlur={this.onBlurFieldValidation}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n\n const currentValue = (this.readStore(this.field) as string) || \"\";\n return (\n <Input\n id={this.field}\n value={currentValue}\n required={this.required}\n disabled={this.disabled}\n title={this.tooltip}\n type={this.type}\n componentClassName={this.componentClassName}\n placeholder={this.placeholder}\n specificPartKey={this.specificPartKey}\n onChange={this.onChangeFieldValidation}\n onBlur={this.onBlurFieldValidation}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"raw-field.js","sourceRoot":"","sources":["../../../../src/profile/components/raw-field/raw-field.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, h, Prop, State } from \"@stencil/core\";\nimport { newsletterStore } from \"../../../newsletter/store/newsletter-store\";\nimport { UnidyComponent } from \"../../../shared/base/component\";\nimport { type ComponentContext, detectContext } from \"../../../shared/context-utils\";\nimport { type ProfileNode, type ProfileRaw, state as profileState } from \"../../store/profile-store\";\nimport { Input } from \"../raw-input-fields/Input\";\nimport { MultiSelect, type MultiSelectOption } from \"../raw-input-fields/MultiSelect\";\nimport { RadioGroup, type RadioOption } from \"../raw-input-fields/RadioGroup\";\nimport { type Option, Select } from \"../raw-input-fields/Select\";\nimport { Textarea } from \"../raw-input-fields/Textarea\";\n\n@Component({\n tag: \"u-raw-field\",\n shadow: false,\n})\nexport class RawField extends UnidyComponent() {\n @Prop() required = false;\n @Prop() readonlyPlaceholder = \"\";\n @Prop() countryCodeDisplayOption?: \"icon\" | \"label\" = \"label\";\n @Prop() invalidPhoneMessage = \"Please enter a valid phone number.\";\n @Prop({ attribute: \"class-name\" }) componentClassName?: string;\n\n @Prop() field!: string;\n @Prop() value?: string | string[];\n @Prop() checked?: boolean;\n @Prop() disabled?: boolean;\n @Prop() tooltip?: string;\n @Prop() type!: string;\n @Prop() placeholder?: string;\n @Prop() options?: string | Option[];\n @Prop() emptyOption = false;\n @Prop() attrName?: string;\n @Prop() radioOptions?: RadioOption[];\n @Prop() multiSelectOptions?: MultiSelectOption[];\n @Prop() specificPartKey?: string;\n @Prop() ariaDescribedBy = \"\";\n @Prop() pattern?: string;\n @Prop() patternErrorMessage?: string;\n @Prop() validationFunc?: (value: string | string[]) => { valid: boolean; message?: string };\n\n @Element() el!: HTMLElement;\n\n @State() selected?: string | string[];\n\n private get context(): ComponentContext | null {\n return detectContext(this.el);\n }\n\n private readStore(fieldName: string): string | undefined | string[] {\n if (!fieldName) return;\n return this.context === \"newsletter\" ? this.readNewsletterStore(fieldName) : this.readProfileStore(fieldName);\n }\n\n private readProfileStore(fieldName: string): string | undefined | string[] {\n const data: ProfileRaw = profileState.data;\n\n if (!data) return;\n\n let field: ProfileNode | undefined;\n\n if (fieldName.startsWith(\"custom_attributes.\")) {\n const key = fieldName.replace(\"custom_attributes.\", \"\");\n field = data.custom_attributes?.[key];\n } else {\n field = data[fieldName];\n }\n\n if (!field) return;\n\n if (field.radio_options) {\n const checkedOption = field.radio_options.find((option: RadioOption) => option.checked);\n\n const checkedValue = checkedOption?.value ?? field.value ?? \"\";\n\n return String(checkedValue);\n }\n\n if (field.type === \"checkbox\") {\n return Array.isArray(field.value) ? field.value : [];\n }\n\n return field.value;\n }\n\n private readNewsletterStore(fieldName: string): string | undefined | string[] {\n const field = newsletterStore.state.additionalFields[fieldName];\n return field?.value;\n }\n\n private writeStore(fieldName: string, value: string | string[]) {\n if (!fieldName) return;\n this.context === \"newsletter\" ? this.writeNewsletterStore(fieldName, value) : this.writeProfileStore(fieldName, value);\n }\n\n private writeProfileStore(fieldName: string, value: string | string[]) {\n const data: ProfileRaw = profileState.data;\n if (!data) return;\n\n const isCustomAttribute = fieldName.startsWith(\"custom_attributes.\");\n const key = isCustomAttribute ? fieldName.replace(\"custom_attributes.\", \"\") : fieldName;\n\n if (isCustomAttribute) {\n const field = data.custom_attributes?.[key];\n profileState.data = {\n ...data,\n custom_attributes: {\n ...data.custom_attributes,\n [key]: { ...field, value },\n },\n };\n } else {\n const field = data[key];\n profileState.data = { ...data, [key]: { ...field, value } };\n }\n }\n\n private writeNewsletterStore(fieldName: string, value: string | string[]) {\n const data = newsletterStore.state.additionalFields;\n newsletterStore.state.additionalFields = {\n ...data,\n [fieldName]: { ...data[fieldName], value },\n };\n }\n\n private getErrors(): Record<string, string> {\n return this.context === \"newsletter\" ? newsletterStore.state.additionalFieldErrors : profileState.errors;\n }\n\n private setErrors(errors: Record<string, string>) {\n if (this.context === \"newsletter\") {\n newsletterStore.state.additionalFieldErrors = errors;\n } else {\n profileState.errors = errors;\n }\n }\n\n private runExternalValidator(value: string | string[]) {\n if (this.validationFunc) {\n try {\n return this.validationFunc(value);\n } catch (e) {\n this.logger.error(\"External validator (validationFunc) threw an error:\", e);\n return null;\n }\n }\n }\n\n private validateValue(value: string | string[]): { valid: boolean; message: string } {\n // TODO: We should validate this when the component is loading.\n if (this.required) {\n const empty = value === undefined || value === null || value === \"\";\n if (empty) {\n return { valid: false, message: \"This field is required.\" };\n }\n }\n\n if (this.pattern && typeof value === \"string\") {\n const regex = new RegExp(this.pattern);\n if (!regex.test(value)) {\n return { valid: false, message: this.patternErrorMessage || \"Invalid format.\" };\n }\n }\n\n const externalResult = this.runExternalValidator(value);\n\n if (externalResult && !externalResult.valid) {\n return { valid: false, message: externalResult.message || \"Invalid input.\" };\n }\n\n if (this.type === \"tel\") {\n const phonePattern = /^(?=.{4,13}$)(\\+\\d+|\\d+)$/;\n if (typeof value === \"string\" && value !== \"\" && !phonePattern.test(value)) {\n return { valid: false, message: this.invalidPhoneMessage };\n }\n }\n\n return { valid: true, message: \"\" };\n }\n\n private getNormalizedOptions(): Option[] {\n if (Array.isArray(this.options)) return this.options;\n\n // unidy-raw-field select-options prop can be a JSON string\n if (typeof this.options === \"string\") return JSON.parse(this.options);\n\n return [];\n }\n\n private countryIcon(countryCode: string, placeholder = \"➖\"): string {\n if (!/^[A-Z]{2}$/.test(countryCode)) {\n return placeholder;\n }\n\n return Array.from(countryCode)\n .map((char) => String.fromCodePoint(0x1f1e6 + (char.charCodeAt(0) - \"A\".charCodeAt(0))))\n .join(\"\");\n }\n\n private onMultiToggle = (optValue: string, checked: boolean) => {\n const currentValues = Array.isArray(this.selected) ? this.selected : [];\n let updatedValues: string[];\n if (checked) {\n updatedValues = currentValues.includes(optValue) ? currentValues : [...currentValues, optValue];\n } else {\n updatedValues = currentValues.filter((v) => v !== optValue);\n }\n\n this.selected = updatedValues;\n // TODO: validate multiselect if needed\n this.writeStore(this.field, updatedValues);\n };\n\n private onBlurFieldValidation = (e: Event) => {\n const input = e.target as HTMLInputElement | HTMLTextAreaElement;\n const val = input.value;\n\n const result = this.validateValue(val);\n const newErrors = { ...this.getErrors() };\n\n if (result.valid) {\n delete newErrors[this.field];\n } else {\n newErrors[this.field] = result.message;\n }\n\n this.setErrors(newErrors);\n };\n\n private onChangeFieldValidation = (newValue: string) => {\n this.selected = newValue;\n\n const result = this.validateValue(newValue);\n const newErrors = { ...this.getErrors() };\n\n if (result.valid) {\n delete newErrors[this.field];\n this.writeStore(this.field, newValue);\n } else {\n newErrors[this.field] = result.message;\n }\n\n this.setErrors(newErrors);\n };\n\n componentWillLoad() {\n if (!this.field) throw new Error('u-raw-field: \"field\" is required.');\n if (!this.type) throw new Error('u-raw-field: \"type\" is required.');\n\n const allowed: Set<string> = new Set([\"text\", \"email\", \"tel\", \"password\", \"number\", \"date\", \"radio\", \"textarea\", \"select\", \"checkbox\"]);\n if (!allowed.has(this.type)) {\n this.type = \"text\";\n }\n\n const current = this.readStore(this.field);\n const isType =\n this.type === \"text\" ||\n this.type === \"email\" ||\n this.type === \"tel\" ||\n this.type === \"password\" ||\n this.type === \"number\" ||\n this.type === \"date\" ||\n this.type === \"textarea\" ||\n this.type === \"select\";\n\n if (isType && (current === undefined || current === null) && typeof this.value === \"string\") {\n this.writeStore(this.field, this.value);\n }\n\n this.selected = current;\n }\n\n componentDidRender() {\n const errs = this.getErrors();\n if (errs?.[this.field]) {\n this.el.querySelector<HTMLInputElement | HTMLTextAreaElement>(`#${CSS.escape(this.field)}`)?.focus();\n }\n }\n\n render() {\n if (this.type === \"radio\") {\n if (Array.isArray(this.radioOptions) && this.radioOptions.length) {\n const checkedOptions = this.radioOptions.map((opt) => ({\n ...opt,\n checked: String(opt.value) === this.selected,\n }));\n return (\n <RadioGroup\n name={this.field}\n disabled={this.disabled}\n title={this.tooltip}\n type=\"radio\"\n onChange={this.onChangeFieldValidation}\n options={checkedOptions}\n specificPartKey={this.specificPartKey}\n aria-describedby={this.ariaDescribedBy}\n required={this.required}\n />\n );\n }\n\n if (typeof this.value === \"string\") {\n const currentValue = this.readStore(this.field);\n const isChecked = currentValue != null && String(currentValue) === this.value;\n return (\n <RadioGroup\n name={this.field}\n value={this.value}\n checked={isChecked}\n disabled={this.disabled}\n title={this.tooltip}\n componentClassName={this.componentClassName}\n type=\"radio\"\n specificPartKey={this.specificPartKey}\n onChange={this.onChangeFieldValidation}\n aria-describedby={this.ariaDescribedBy}\n required={this.required}\n />\n );\n }\n }\n\n if (this.type === \"checkbox\") {\n if (Array.isArray(this.multiSelectOptions) && this.multiSelectOptions.length) {\n const selected = Array.isArray(this.selected) ? this.selected : [];\n return (\n <MultiSelect\n value={selected}\n options={this.multiSelectOptions}\n disabled={this.disabled}\n title={this.tooltip}\n type=\"checkbox\"\n specificPartKey={this.specificPartKey}\n onToggle={this.onMultiToggle}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n\n if (this.value) {\n const currentValue = (this.readStore(this.field) as string[]) ?? [];\n const isChecked = currentValue?.includes(this.value as string);\n return (\n <MultiSelect\n id={`${this.field}-${this.value}`}\n name={this.field}\n value={this.value as string}\n checked={isChecked}\n disabled={this.disabled}\n title={this.tooltip}\n componentClassName={this.componentClassName}\n type=\"checkbox\"\n onToggle={(val, checked) => {\n const current = this.readStore(this.field) as string[];\n const updated = checked ? [...current, val] : current.filter((v) => v !== val);\n this.writeStore(this.field, updated);\n }}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n }\n\n if (this.type === \"select\") {\n const currentValue = (this.readStore(this.field) as string) ?? \"\";\n const option = this.getNormalizedOptions();\n return (\n <Select\n id={this.field}\n name={this.field}\n value={currentValue}\n options={option}\n disabled={this.disabled}\n title={this.tooltip}\n emptyOption={this.emptyOption}\n onChange={this.onChangeFieldValidation}\n componentClassName={this.componentClassName}\n countryCodeDisplayOption={this.countryCodeDisplayOption}\n countryIcon={this.countryIcon}\n attr_name={this.attrName}\n specificPartKey={this.specificPartKey}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n\n if (this.type === \"textarea\") {\n const currentValue = (this.readStore(this.field) as string) || \"\";\n return (\n <Textarea\n id={this.field}\n value={currentValue}\n required={this.required}\n disabled={this.disabled}\n title={this.tooltip}\n componentClassName={this.componentClassName}\n specificPartKey={this.specificPartKey}\n onChange={this.onChangeFieldValidation}\n onBlur={this.onBlurFieldValidation}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n\n const currentValue = (this.readStore(this.field) as string) || \"\";\n return (\n <Input\n id={this.field}\n value={currentValue}\n required={this.required}\n disabled={this.disabled}\n title={this.tooltip}\n type={this.type}\n componentClassName={this.componentClassName}\n placeholder={this.placeholder}\n specificPartKey={this.specificPartKey}\n onChange={this.onChangeFieldValidation}\n onBlur={this.onBlurFieldValidation}\n aria-describedby={this.ariaDescribedBy}\n />\n );\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile-store.js","sourceRoot":"","sources":["../../../src/profile/store/profile-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AA+B7C,MAAM,YAAY,GAAiB;IACjC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"profile-store.js","sourceRoot":"","sources":["../../../src/profile/store/profile-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AA+B7C,MAAM,YAAY,GAAiB;IACjC,OAAO,EAAE,KAAK;IACd,IAAI,EAAE,EAAE;IACR,aAAa,EAAE,EAAE;IACjB,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,IAAI;CACjB,CAAC;AAEF,MAAM,YAAY,GAAG,WAAW,CAAe,YAAY,CAAC,CAAC;AAE7D,MAAM,oBAAoB,GACxB,YAAY,CAAC,QAAQ,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,YAAY,CAAC;AACtC,OAAO,EAAE,oBAAoB,IAAI,QAAQ,EAAE,CAAC","sourcesContent":["import { createStore } from \"@stencil/store\";\n\nexport type Option = { value: string; label: string; icon?: string | null };\nexport type RadioOption = { value: string; label: string; checked: boolean };\n\nexport interface ProfileNode {\n value?: string | undefined | string[];\n type?: string;\n label?: string;\n required?: boolean;\n readonly?: boolean;\n locked?: boolean;\n locked_text?: string;\n options?: Option[];\n radio_options?: RadioOption[];\n attr_name?: string;\n}\n\nexport type ProfileRaw = {\n custom_attributes?: Record<string, ProfileNode>;\n} & Record<string, ProfileNode>;\n\nexport interface ProfileState {\n loading: boolean;\n data: ProfileRaw;\n configuration: ProfileRaw;\n errors: Record<string, string | null>;\n configUpdateSource?: \"fetch\" | \"submit\";\n phoneValid: boolean;\n}\n\nconst initialState: ProfileState = {\n loading: false,\n data: {},\n configuration: {},\n errors: {},\n phoneValid: true,\n};\n\nconst profileStore = createStore<ProfileState>(initialState);\n\nconst profileStoreOnChange: <K extends keyof ProfileState>(prop: K, cb: (value: ProfileState[K]) => void) => () => void =\n profileStore.onChange;\n\nexport { profileStore };\nexport const { state } = profileStore;\nexport { profileStoreOnChange as onChange };\n"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { getElement, Mixin } from "@stencil/core";
|
|
2
|
+
import { createLogger } from "../../logger";
|
|
3
|
+
export const loggerFactory = (Base) => {
|
|
4
|
+
class LoggerMixin extends Base {
|
|
5
|
+
/** @internal */
|
|
6
|
+
__logger = null;
|
|
7
|
+
get logger() {
|
|
8
|
+
if (!this.__logger) {
|
|
9
|
+
this.__logger = createLogger(this.element.localName);
|
|
10
|
+
}
|
|
11
|
+
return this.__logger;
|
|
12
|
+
}
|
|
13
|
+
get element() {
|
|
14
|
+
return getElement(this);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return LoggerMixin;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Base class factory for Unidy Stencil components that provides logging functionality
|
|
21
|
+
* and allows composing additional mixins.
|
|
22
|
+
* Components extending this class get a `this.logger` property that automatically prefixes log messages with the component's class name.
|
|
23
|
+
* Components extending this class get a `this.element` property that automatically returns the component's host element.
|
|
24
|
+
*/
|
|
25
|
+
export const UnidyComponent = (...mixins) => {
|
|
26
|
+
return Mixin(loggerFactory, ...mixins);
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=component.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/shared/base/component.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAoB,KAAK,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAAe,MAAM,cAAc,CAAC;AAEzD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAwB,IAAO,EAAE,EAAE;IAC9D,MAAM,WAAY,SAAQ,IAAI;QAC5B,gBAAgB;QAChB,QAAQ,GAAkB,IAAI,CAAC;QAE/B,IAAI,MAAM;YACR,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,IAAI,CAAC,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QAED,IAAI,OAAO;YACT,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;KACF;IACD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAIF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAmD,GAAG,MAAS,EAAE,EAAE;IAC/F,OAAO,KAAK,CAAC,aAAa,EAAE,GAAG,MAAM,CAAC,CAAC;AACzC,CAAC,CAAC","sourcesContent":["import { getElement, type MixedInCtor, Mixin } from \"@stencil/core\";\nimport { createLogger, type Logger } from \"../../logger\";\n\nexport const loggerFactory = <B extends MixedInCtor>(Base: B) => {\n class LoggerMixin extends Base {\n /** @internal */\n __logger: Logger | null = null;\n\n get logger(): Logger {\n if (!this.__logger) {\n this.__logger = createLogger(this.element.localName);\n }\n return this.__logger;\n }\n\n get element() {\n return getElement(this);\n }\n }\n return LoggerMixin;\n};\n\nexport type BaseComponentType = ReturnType<typeof loggerFactory>;\n\n/**\n * Base class factory for Unidy Stencil components that provides logging functionality\n * and allows composing additional mixins.\n * Components extending this class get a `this.logger` property that automatically prefixes log messages with the component's class name.\n * Components extending this class get a `this.element` property that automatically returns the component's host element.\n */\nexport const UnidyComponent = <T extends ((base: MixedInCtor) => MixedInCtor)[]>(...mixins: T) => {\n return Mixin(loggerFactory, ...mixins);\n};\n"]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// biome-ignore lint/suspicious/noExplicitAny: Mixin factory requires any for Base parameter
|
|
2
|
+
export const HasSlotContent = (Base = Object) => {
|
|
3
|
+
function hasSlotContent(element) {
|
|
4
|
+
if (!element.hasChildNodes())
|
|
5
|
+
return false;
|
|
6
|
+
for (const child of Array.from(element.childNodes)) {
|
|
7
|
+
if (child.nodeType === Node.ELEMENT_NODE)
|
|
8
|
+
return true;
|
|
9
|
+
if (child.nodeType === Node.TEXT_NODE && child.textContent?.trim())
|
|
10
|
+
return true;
|
|
11
|
+
}
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
class HasSlotMixin extends Base {
|
|
15
|
+
// Provided by loggerFactory when used with UnidyComponent(HasSlotContent)
|
|
16
|
+
hasSlot = false;
|
|
17
|
+
/*
|
|
18
|
+
* IMPORTANT: (for shadow: false components)
|
|
19
|
+
* This must be called in `connectedCallback()` and cached.
|
|
20
|
+
* After the first render, `element.childNodes` will contain both user-provided slot content
|
|
21
|
+
* AND the component's rendered internal elements (like <button>), causing false positives.
|
|
22
|
+
*
|
|
23
|
+
* @see https://stenciljs.com/docs/templating-jsx#slots-outside-shadow-dom
|
|
24
|
+
*/
|
|
25
|
+
connectedCallback() {
|
|
26
|
+
this.hasSlot = hasSlotContent(this.element);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return HasSlotMixin;
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=has-slot-content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"has-slot-content.js","sourceRoot":"","sources":["../../../src/shared/base/has-slot-content.tsx"],"names":[],"mappings":"AAEA,4FAA4F;AAC5F,MAAM,CAAC,MAAM,cAAc,GAAG,CAA8B,OAAU,MAAa,EAAE,EAAE;IACrF,SAAS,cAAc,CAAC,OAAoB;QAC1C,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;YAAE,OAAO,KAAK,CAAC;QAE3C,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACnD,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY;gBAAE,OAAO,IAAI,CAAC;YACtD,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE;gBAAE,OAAO,IAAI,CAAC;QAClF,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,YAAa,SAAQ,IAAI;QAC7B,0EAA0E;QAC1E,OAAO,GAAG,KAAK,CAAC;QAEhB;;;;;;;WAOG;QACH,iBAAiB;YACf,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;KACF;IAED,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC","sourcesContent":["import type { BaseComponentType } from \"./component\";\n\n// biome-ignore lint/suspicious/noExplicitAny: Mixin factory requires any for Base parameter\nexport const HasSlotContent = <B extends BaseComponentType>(Base: B = Object as any) => {\n function hasSlotContent(element: HTMLElement) {\n if (!element.hasChildNodes()) return false;\n\n for (const child of Array.from(element.childNodes)) {\n if (child.nodeType === Node.ELEMENT_NODE) return true;\n if (child.nodeType === Node.TEXT_NODE && child.textContent?.trim()) return true;\n }\n\n return false;\n }\n\n class HasSlotMixin extends Base {\n // Provided by loggerFactory when used with UnidyComponent(HasSlotContent)\n hasSlot = false;\n\n /*\n * IMPORTANT: (for shadow: false components)\n * This must be called in `connectedCallback()` and cached.\n * After the first render, `element.childNodes` will contain both user-provided slot content\n * AND the component's rendered internal elements (like <button>), causing false positives.\n *\n * @see https://stenciljs.com/docs/templating-jsx#slots-outside-shadow-dom\n */\n connectedCallback() {\n this.hasSlot = hasSlotContent(this.element);\n }\n }\n\n return HasSlotMixin;\n};\n"]}
|
|
@@ -1,35 +1,31 @@
|
|
|
1
|
+
import { Fragment, h } from "@stencil/core";
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
3
|
+
* Returns slot fallback content with proper loading handling for shadow: false components.
|
|
4
|
+
* When there's slot content, we must always render the <slot /> element to capture it,
|
|
5
|
+
* otherwise the slotted content will be visible even during loading state.
|
|
4
6
|
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* AND the component's rendered internal elements (like <button>), causing false positives.
|
|
7
|
+
* @param fallbackText - The default text to display when there's no slot content
|
|
8
|
+
* @param options - Options object containing hasSlot and loading state
|
|
9
|
+
* @returns JSX content for the slot fallback
|
|
9
10
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* render() {
|
|
14
|
+
* return (
|
|
15
|
+
* <button>
|
|
16
|
+
* {slotFallbackText(t("buttons.submit"), { hasSlot: this.hasSlot, loading: this.isLoading() })}
|
|
17
|
+
* </button>
|
|
18
|
+
* );
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
14
21
|
*/
|
|
15
|
-
export function
|
|
16
|
-
if (
|
|
17
|
-
return
|
|
18
|
-
for (const child of Array.from(element.childNodes)) {
|
|
19
|
-
if (child.nodeType === Node.ELEMENT_NODE)
|
|
20
|
-
return true;
|
|
21
|
-
if (child.nodeType === Node.TEXT_NODE && child.textContent?.trim())
|
|
22
|
-
return true;
|
|
22
|
+
export function slotFallbackText(fallbackText, { hasSlot, loading = false }) {
|
|
23
|
+
if (hasSlot) {
|
|
24
|
+
return (h(Fragment, null, loading && h("u-spinner", { key: "spinner" }), h("span", { key: "slot", style: { display: loading ? "none" : "contents" } }, h("slot", null))));
|
|
23
25
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
export function clearUrlParam(param) {
|
|
27
|
-
const url = new URL(window.location.href);
|
|
28
|
-
const value = url.searchParams.get(param);
|
|
29
|
-
if (value) {
|
|
30
|
-
url.searchParams.delete(param);
|
|
31
|
-
window.history.replaceState(null, "", url.toString());
|
|
26
|
+
if (loading) {
|
|
27
|
+
return h("u-spinner", null);
|
|
32
28
|
}
|
|
33
|
-
return
|
|
29
|
+
return fallbackText;
|
|
34
30
|
}
|
|
35
31
|
//# sourceMappingURL=component-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"component-utils.js","sourceRoot":"","sources":["../../src/shared/component-utils.
|
|
1
|
+
{"version":3,"file":"component-utils.js","sourceRoot":"","sources":["../../src/shared/component-utils.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAE5C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAoB,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,KAAK,EAA2C;IAC1H,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,EAAC,QAAQ;YACN,OAAO,IAAI,iBAAW,GAAG,EAAC,SAAS,GAAG;YACvC,YAAM,GAAG,EAAC,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE;gBAChE,eAAQ,CACH,CACE,CACZ,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,oBAAa,CAAC;IACvB,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC","sourcesContent":["import { Fragment, h } from \"@stencil/core\";\n\n/**\n * Returns slot fallback content with proper loading handling for shadow: false components.\n * When there's slot content, we must always render the <slot /> element to capture it,\n * otherwise the slotted content will be visible even during loading state.\n *\n * @param fallbackText - The default text to display when there's no slot content\n * @param options - Options object containing hasSlot and loading state\n * @returns JSX content for the slot fallback\n *\n * @example\n * ```tsx\n * render() {\n * return (\n * <button>\n * {slotFallbackText(t(\"buttons.submit\"), { hasSlot: this.hasSlot, loading: this.isLoading() })}\n * </button>\n * );\n * }\n * ```\n */\nexport function slotFallbackText(fallbackText: string, { hasSlot, loading = false }: { hasSlot: boolean; loading?: boolean }) {\n if (hasSlot) {\n return (\n <Fragment>\n {loading && <u-spinner key=\"spinner\" />}\n <span key=\"slot\" style={{ display: loading ? \"none\" : \"contents\" }}>\n <slot />\n </span>\n </Fragment>\n );\n }\n\n if (loading) {\n return <u-spinner />;\n }\n\n return fallbackText;\n}\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Host, h } from "@stencil/core";
|
|
2
2
|
import { authState } from "../../../auth/store/auth-store";
|
|
3
|
-
import { UnidyComponent } from "../../../logger";
|
|
4
3
|
import * as NewsletterHelpers from "../../../newsletter/newsletter-helpers";
|
|
5
4
|
import { newsletterStore } from "../../../newsletter/store/newsletter-store";
|
|
6
5
|
import { profileStore } from "../../../profile/store/profile-store";
|
|
6
|
+
import { UnidyComponent } from "../../base/component";
|
|
7
7
|
import { flashState } from "../../store/flash-store";
|
|
8
8
|
const PREDEFINED_CONDITIONS = {
|
|
9
9
|
"auth.passkeyEnabled": () => authState.availableLoginOptions?.passkey,
|
|
@@ -32,7 +32,7 @@ const PREDEFINED_CONDITIONS = {
|
|
|
32
32
|
function isTruthy(value) {
|
|
33
33
|
return Boolean(value);
|
|
34
34
|
}
|
|
35
|
-
export class ConditionalRender extends UnidyComponent {
|
|
35
|
+
export class ConditionalRender extends UnidyComponent() {
|
|
36
36
|
constructor() {
|
|
37
37
|
super();
|
|
38
38
|
}
|
|
@@ -84,11 +84,10 @@ export class ConditionalRender extends UnidyComponent {
|
|
|
84
84
|
return this.not ? !result : result;
|
|
85
85
|
}
|
|
86
86
|
render() {
|
|
87
|
-
const
|
|
88
|
-
return (h(Host, { key: '
|
|
87
|
+
const shouldShow = this.shouldRender();
|
|
88
|
+
return (h(Host, { key: '0320f400a4c2dd08fcb34fd1c8315ac1ca61c26c', hidden: !shouldShow, style: { display: shouldShow ? "contents" : undefined }, "aria-hidden": !shouldShow ? "true" : null, "aria-live": "polite" }, h("slot", { key: 'e2148d70a7baf9e242665a5ff7e6b16557b543bf' })));
|
|
89
89
|
}
|
|
90
90
|
static get is() { return "u-conditional-render"; }
|
|
91
|
-
static get encapsulation() { return "shadow"; }
|
|
92
91
|
static get properties() {
|
|
93
92
|
return {
|
|
94
93
|
"when": {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conditional-render.js","sourceRoot":"","sources":["../../../../src/shared/components/conditional-render/conditional-render.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAkB,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,
|
|
1
|
+
{"version":3,"file":"conditional-render.js","sourceRoot":"","sources":["../../../../src/shared/components/conditional-render/conditional-render.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, h, Prop } from \"@stencil/core\";\nimport { type AuthState, authState } from \"../../../auth/store/auth-store\";\nimport * as NewsletterHelpers from \"../../../newsletter/newsletter-helpers\";\nimport { newsletterStore } from \"../../../newsletter/store/newsletter-store\";\nimport { profileStore } from \"../../../profile/store/profile-store\";\nimport { UnidyComponent } from \"../../base/component\";\nimport { flashState } from \"../../store/flash-store\";\n\nconst PREDEFINED_CONDITIONS: Record<string, (...args: unknown[]) => unknown> = {\n \"auth.passkeyEnabled\": () => authState.availableLoginOptions?.passkey,\n \"auth.passwordEnabled\": () => authState.availableLoginOptions?.password,\n \"auth.magicCodeEnabled\": () => authState.availableLoginOptions?.magic_link,\n \"auth.socialLoginsEnabled\": () => (authState.availableLoginOptions?.social_logins?.length ?? 0) > 0,\n \"auth.hasSocialLogin\": (provider: string) => authState.availableLoginOptions?.social_logins?.includes(provider) ?? false,\n \"auth.loading\": () => authState.loading,\n \"auth.authenticated\": () => authState.authenticated,\n \"auth.magicCodeSent\": () => authState.magicCodeStep === \"sent\" || authState.magicCodeStep === \"requested\",\n \"auth.magicCodeRequested\": () => authState.magicCodeStep === \"requested\",\n \"auth.resetPasswordSent\": () => authState.resetPassword.step === \"sent\" || authState.resetPassword.step === \"requested\",\n \"auth.resetPasswordRequested\": () => authState.resetPassword.step === \"requested\",\n\n \"newsletter.hasCheckedNewsletters\": () => Object.keys(newsletterStore.state.checkedNewsletters).length > 0,\n \"newsletter.hasPreferenceToken\": () => !!newsletterStore.state.preferenceToken,\n \"newsletter.hasEmail\": () => !!newsletterStore.state.email,\n \"newsletter.subscribed\": (newsletterInternalName: string) => NewsletterHelpers.isSubscribed(newsletterInternalName),\n \"newsletter.confirmed\": (newsletterInternalName: string) => NewsletterHelpers.isConfirmed(newsletterInternalName),\n \"newsletter.loggedIn\": () => newsletterStore.state.isAuthenticated || newsletterStore.state.preferenceToken !== \"\",\n\n \"profile.loading\": () => profileStore.state.loading,\n \"profile.hasErrors\": () => Object.keys(profileStore.state.errors).some((key) => profileStore.state.errors[key] !== null),\n \"profile.hasFlashErrors\": () => flashState.messages.some((m) => m.variant === \"error\"),\n \"profile.phoneValid\": () => profileStore.state.phoneValid,\n \"profile.hasData\": () => Object.keys(profileStore.state.data).length > 0,\n};\n\nfunction isTruthy(value: unknown): boolean {\n return Boolean(value);\n}\n\n@Component({\n tag: \"u-conditional-render\",\n shadow: false,\n})\nexport class ConditionalRender extends UnidyComponent() {\n @Prop() when?: string; // condition to check\n @Prop() is?: string; // optional value to compare against\n @Prop() not = false;\n @Prop() conditionFunction?: (state: AuthState) => boolean;\n\n private evaluateCondition(): unknown {\n const predefinedFunction = PREDEFINED_CONDITIONS[this.when];\n if (predefinedFunction) {\n return predefinedFunction(this.is);\n }\n\n return null;\n }\n\n private shouldRender(): boolean {\n if (!this.when && !this.conditionFunction) {\n this.logger.error(\"[u-conditional-render] Either 'when' or 'conditionFunction' prop is required\");\n }\n\n if (this.conditionFunction) {\n const result = this.conditionFunction(authState);\n return this.not ? !result : result;\n }\n\n const value = this.evaluateCondition();\n if (value === null) {\n return false;\n }\n\n const normalizedIs = this.is?.toString().toLowerCase();\n let result: boolean;\n\n if (typeof value === \"boolean\") {\n if (normalizedIs === \"false\" || normalizedIs === \"disabled\") {\n result = !value;\n } else {\n result = value;\n }\n } else if (this.is === undefined) {\n result = isTruthy(value);\n } else if (normalizedIs === \"enabled\" || normalizedIs === \"true\") {\n result = isTruthy(value);\n } else if (normalizedIs === \"disabled\" || normalizedIs === \"false\") {\n result = !isTruthy(value);\n } else {\n result = String(value) === String(this.is); // to compare exact value\n }\n\n return this.not ? !result : result;\n }\n\n render() {\n const shouldShow = this.shouldRender();\n\n return (\n <Host\n hidden={!shouldShow}\n style={{ display: shouldShow ? \"contents\" : undefined }}\n aria-hidden={!shouldShow ? \"true\" : null}\n aria-live=\"polite\"\n >\n <slot />\n </Host>\n );\n }\n}\n"]}
|
|
@@ -3,9 +3,10 @@ import { h } from "@stencil/core";
|
|
|
3
3
|
import { getUnidyClient } from "../../../api/";
|
|
4
4
|
import { Auth } from "../../../auth";
|
|
5
5
|
import i18n from "../../../i18n";
|
|
6
|
-
import { UnidyComponent } from "
|
|
6
|
+
import { UnidyComponent } from "../../base/component";
|
|
7
7
|
import { unidyState } from "../../store/unidy-store";
|
|
8
|
-
|
|
8
|
+
let configInstance = null;
|
|
9
|
+
export class UnidyConfig extends UnidyComponent() {
|
|
9
10
|
constructor() {
|
|
10
11
|
super();
|
|
11
12
|
}
|
|
@@ -19,6 +20,11 @@ export class UnidyConfig extends UnidyComponent {
|
|
|
19
20
|
unidyInitialized;
|
|
20
21
|
configChange;
|
|
21
22
|
async componentWillLoad() {
|
|
23
|
+
if (configInstance !== null) {
|
|
24
|
+
this.logger.error("Only one <u-config> element is allowed per page.");
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
configInstance = this;
|
|
22
28
|
if (!this.baseUrl || !this.apiKey) {
|
|
23
29
|
this.logger.error("baseUrl and apiKey are required");
|
|
24
30
|
return;
|
|
@@ -40,6 +46,13 @@ export class UnidyConfig extends UnidyComponent {
|
|
|
40
46
|
if (this.checkSignedIn) {
|
|
41
47
|
auth.helpers.checkSignedIn();
|
|
42
48
|
}
|
|
49
|
+
this.logger.debug("Unidy SDK initialized successfully");
|
|
50
|
+
}
|
|
51
|
+
disconnectedCallback() {
|
|
52
|
+
if (configInstance === this) {
|
|
53
|
+
configInstance = null;
|
|
54
|
+
unidyState.isConfigured = false;
|
|
55
|
+
}
|
|
43
56
|
}
|
|
44
57
|
// extend the list of properties that should be watched when new properties are added to the Config
|
|
45
58
|
onPropChange(newValue, oldValue, propName) {
|
|
@@ -55,7 +68,7 @@ export class UnidyConfig extends UnidyComponent {
|
|
|
55
68
|
});
|
|
56
69
|
}
|
|
57
70
|
render() {
|
|
58
|
-
return h("slot", { key: '
|
|
71
|
+
return h("slot", { key: 'd8c63b2abf7d7032823546f4598e9d2fb671bf16' });
|
|
59
72
|
}
|
|
60
73
|
loadCustomTranslations() {
|
|
61
74
|
if (this.customTranslations) {
|
|
@@ -243,7 +256,7 @@ export class UnidyConfig extends UnidyComponent {
|
|
|
243
256
|
"references": {
|
|
244
257
|
"Config": {
|
|
245
258
|
"location": "local",
|
|
246
|
-
"path": "/Users/
|
|
259
|
+
"path": "/Users/bvogel/Development/unidy-sdk/packages/sdk/src/shared/components/config/config.tsx",
|
|
247
260
|
"id": "src/shared/components/config/config.tsx::Config"
|
|
248
261
|
}
|
|
249
262
|
}
|
|
@@ -264,7 +277,7 @@ export class UnidyConfig extends UnidyComponent {
|
|
|
264
277
|
"references": {
|
|
265
278
|
"ConfigChange": {
|
|
266
279
|
"location": "local",
|
|
267
|
-
"path": "/Users/
|
|
280
|
+
"path": "/Users/bvogel/Development/unidy-sdk/packages/sdk/src/shared/components/config/config.tsx",
|
|
268
281
|
"id": "src/shared/components/config/config.tsx::ConfigChange"
|
|
269
282
|
}
|
|
270
283
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/shared/components/config/config.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAqB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,IAAI,MAAM,eAAe,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/shared/components/config/config.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as Sentry from \"@sentry/browser\";\nimport { Component, Event, type EventEmitter, h, Prop, Watch } from \"@stencil/core\";\nimport { getUnidyClient } from \"../../../api/\";\nimport { Auth } from \"../../../auth\";\nimport i18n from \"../../../i18n\";\nimport { UnidyComponent } from \"../../base/component\";\nimport { unidyState } from \"../../store/unidy-store\";\n\nlet configInstance: UnidyConfig | null = null;\n\nexport interface Config {\n apiKey: string;\n baseUrl: string;\n locale: string;\n mode: \"production\" | \"development\";\n}\n\nexport interface ConfigChange {\n key: string;\n value: string;\n previousValue: string;\n}\n\ntype TranslationTree = {\n [key: string]: string | TranslationTree;\n};\n\n@Component({\n tag: \"u-config\",\n shadow: false,\n})\nexport class UnidyConfig extends UnidyComponent() {\n @Prop() mode: \"production\" | \"development\" = \"production\";\n @Prop() baseUrl = \"\";\n @Prop() apiKey = \"\";\n @Prop() customTranslations: string | Record<string, TranslationTree> = \"\";\n @Prop() fallbackLocale = \"en\";\n @Prop() locale = \"en\";\n @Prop() checkSignedIn = false;\n\n @Event() unidyInitialized!: EventEmitter<Config>;\n @Event() configChange!: EventEmitter<ConfigChange>;\n\n async componentWillLoad() {\n if (configInstance !== null) {\n this.logger.error(\"Only one <u-config> element is allowed per page.\");\n return;\n }\n configInstance = this;\n\n if (!this.baseUrl || !this.apiKey) {\n this.logger.error(\"baseUrl and apiKey are required\");\n return;\n }\n\n unidyState.apiKey = this.apiKey;\n unidyState.baseUrl = this.baseUrl;\n unidyState.locale = this.locale;\n unidyState.isConfigured = true;\n\n this.unidyInitialized.emit({\n apiKey: this.apiKey,\n baseUrl: this.baseUrl,\n locale: this.locale,\n mode: this.mode,\n });\n\n i18n.options.fallbackLng = this.fallbackLocale;\n\n this.loadCustomTranslations();\n unidyState.locale = this.locale;\n\n const auth = await Auth.initialize(getUnidyClient());\n\n if (this.checkSignedIn) {\n auth.helpers.checkSignedIn();\n }\n\n this.logger.debug(\"Unidy SDK initialized successfully\");\n }\n\n disconnectedCallback() {\n if (configInstance === this) {\n configInstance = null;\n unidyState.isConfigured = false;\n }\n }\n\n // extend the list of properties that should be watched when new properties are added to the Config\n @Watch(\"mode\")\n @Watch(\"locale\")\n onPropChange(newValue: string, oldValue: string, propName: keyof Config) {\n if (oldValue === undefined) return;\n\n if (propName in unidyState) {\n (unidyState as Record<keyof Config, string>)[propName] = newValue;\n }\n\n this.configChange.emit({\n key: propName,\n value: newValue,\n previousValue: oldValue,\n });\n }\n\n render() {\n return <slot />;\n }\n\n private loadCustomTranslations() {\n if (this.customTranslations) {\n try {\n const translations = typeof this.customTranslations === \"string\" ? JSON.parse(this.customTranslations) : this.customTranslations;\n\n for (const lang in translations) {\n if (Object.hasOwn(translations, lang)) {\n i18n.addResourceBundle(lang, \"translation\", translations[lang], true, true);\n }\n }\n } catch (error) {\n Sentry.captureException(\"Failed to parse customTranslations\", error);\n }\n }\n }\n}\n"]}
|
|
@@ -58,7 +58,7 @@ export class EmailField {
|
|
|
58
58
|
}
|
|
59
59
|
render() {
|
|
60
60
|
const placeholderText = t("auth.email.placeholder", { defaultValue: "Enter your email" });
|
|
61
|
-
return (h("form", { key: '
|
|
61
|
+
return (h("form", { key: '5033ba72842a4cd9125a58170a733c6ec2aaed5a', onSubmit: this.handleSubmit }, h("input", { key: 'f97c1f8881e08fcfcffdf252862e63469b483cbd', id: "email", type: "email", value: this.store.state.email, autocomplete: "email", placeholder: placeholderText, disabled: this.isDisabled(), class: `${this.componentClassName} u:disabled:opacity-40 u:disabled:bg-gray-200 u:disabled:cursor-not-allowed`, onInput: this.handleInput, "aria-label": this.ariaLabel }), h("slot", { key: 'd4d403e19c003e80119be01587d9cd00244908ae' })));
|
|
62
62
|
}
|
|
63
63
|
static get is() { return "u-email-field"; }
|
|
64
64
|
static get originalStyleUrls() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--u-font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--u-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--u-default-font-family:var(--u-font-sans);--u-default-mono-font-family:var(--u-font-mono);--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{border:0 solid;box-sizing:border-box;margin:0;padding:0}::file-selector-button{appearance:button;background-color:#0000;border:0 solid;border-radius:0;box-sizing:border-box;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;margin:0;margin-inline-end:4px;opacity:1;padding:0}:host,html{font-family:var(--u-default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--u-default-font-feature-settings,normal);font-variation-settings:var(--u-default-font-variation-settings,normal);-webkit-text-size-adjust:100%;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);line-height:1.5;tab-size:4;-webkit-tap-highlight-color:transparent}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--u-default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--u-default-mono-font-feature-settings,normal);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-size:1em;font-variation-settings:var(--u-default-mono-font-variation-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}button,input,optgroup,select,textarea{background-color:#0000;border-radius:0;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex;padding-block:0}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components,utilities; /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer base{}@layer components;@layer utilities{.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}
|
|
1
|
+
/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--u-font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--u-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--u-default-font-family:var(--u-font-sans);--u-default-mono-font-family:var(--u-font-mono);--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{border:0 solid;box-sizing:border-box;margin:0;padding:0}::file-selector-button{appearance:button;background-color:#0000;border:0 solid;border-radius:0;box-sizing:border-box;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;margin:0;margin-inline-end:4px;opacity:1;padding:0}:host,html{font-family:var(--u-default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--u-default-font-feature-settings,normal);font-variation-settings:var(--u-default-font-variation-settings,normal);-webkit-text-size-adjust:100%;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);line-height:1.5;tab-size:4;-webkit-tap-highlight-color:transparent}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--u-default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--u-default-mono-font-feature-settings,normal);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-size:1em;font-variation-settings:var(--u-default-mono-font-variation-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}button,input,optgroup,select,textarea{background-color:#0000;border-radius:0;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex;padding-block:0}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.u\:block{display:block}} /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer base{}@layer components,utilities; /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer base{}@layer components,utilities; /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer base{}@layer components;@layer utilities{.visible{visibility:visible}.hidden{display:none}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
|