@unidy.io/sdk 1.1.6 → 1.1.8
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/package.json +2 -2
- package/dist/cjs/app-globals-DSKjcXX_.js +0 -10
- package/dist/cjs/app-globals-DSKjcXX_.js.map +0 -1
- package/dist/cjs/auth-B83pzi0f.js +0 -582
- package/dist/cjs/auth-B83pzi0f.js.map +0 -1
- package/dist/cjs/auth-store-DPHWWmXf.js +0 -183
- package/dist/cjs/auth-store-DPHWWmXf.js.map +0 -1
- package/dist/cjs/component-utils-BpMyeVQo.js +0 -35
- package/dist/cjs/component-utils-BpMyeVQo.js.map +0 -1
- package/dist/cjs/flash-store-BuIBuQDx.js +0 -50
- package/dist/cjs/flash-store-BuIBuQDx.js.map +0 -1
- package/dist/cjs/helpers-BcPlKlBG.js +0 -11
- package/dist/cjs/helpers-BcPlKlBG.js.map +0 -1
- package/dist/cjs/helpers-DJyRa0Qo.js +0 -11
- package/dist/cjs/helpers-DJyRa0Qo.js.map +0 -1
- package/dist/cjs/i18n-BoDZ8kd2.js +0 -3236
- package/dist/cjs/i18n-BoDZ8kd2.js.map +0 -1
- package/dist/cjs/index-B_N5xKgH.js +0 -12025
- package/dist/cjs/index-B_N5xKgH.js.map +0 -1
- package/dist/cjs/index-DLz3FT7T.js +0 -214
- package/dist/cjs/index-DLz3FT7T.js.map +0 -1
- package/dist/cjs/index-R2MKLaem.js +0 -5267
- package/dist/cjs/index-R2MKLaem.js.map +0 -1
- package/dist/cjs/index.cjs.js +0 -64
- package/dist/cjs/index.cjs.js.map +0 -1
- package/dist/cjs/loader.cjs.js +0 -14
- package/dist/cjs/loader.cjs.js.map +0 -1
- package/dist/cjs/newsletter-helpers-D-V_8kiN.js +0 -289
- package/dist/cjs/newsletter-helpers-D-V_8kiN.js.map +0 -1
- package/dist/cjs/newsletter-store-BzytX7Qh.js +0 -38
- package/dist/cjs/newsletter-store-BzytX7Qh.js.map +0 -1
- package/dist/cjs/pagination-store-BEiW3MQd.js +0 -16
- package/dist/cjs/pagination-store-BEiW3MQd.js.map +0 -1
- package/dist/cjs/profile-helpers-B2h2III_.js +0 -39
- package/dist/cjs/profile-helpers-B2h2III_.js.map +0 -1
- package/dist/cjs/profile-store-P_BcYkef.js +0 -22
- package/dist/cjs/profile-store-P_BcYkef.js.map +0 -1
- package/dist/cjs/sdk.cjs.js +0 -26
- package/dist/cjs/sdk.cjs.js.map +0 -1
- package/dist/cjs/u-conditional-render.cjs.entry.js +0 -103
- package/dist/cjs/u-conditional-render.entry.cjs.js.map +0 -1
- package/dist/cjs/u-config.cjs.entry.js +0 -87
- package/dist/cjs/u-config.entry.cjs.js.map +0 -1
- package/dist/cjs/u-email-field.cjs.entry.js +0 -77
- package/dist/cjs/u-email-field.entry.cjs.js.map +0 -1
- package/dist/cjs/u-error-message.cjs.entry.js +0 -82
- package/dist/cjs/u-error-message.entry.cjs.js.map +0 -1
- package/dist/cjs/u-field.u-raw-field.entry.cjs.js.map +0 -1
- package/dist/cjs/u-field_2.cjs.entry.js +0 -375
- package/dist/cjs/u-flash-message.cjs.entry.js +0 -37
- package/dist/cjs/u-flash-message.entry.cjs.js.map +0 -1
- package/dist/cjs/u-full-profile.cjs.entry.js +0 -37
- package/dist/cjs/u-full-profile.entry.cjs.js.map +0 -1
- package/dist/cjs/u-logout-button.cjs.entry.js +0 -38
- package/dist/cjs/u-logout-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-magic-code-field.cjs.entry.js +0 -91
- package/dist/cjs/u-magic-code-field.entry.cjs.js.map +0 -1
- package/dist/cjs/u-missing-field.cjs.entry.js +0 -22
- package/dist/cjs/u-missing-field.entry.cjs.js.map +0 -1
- package/dist/cjs/u-missing-fields-submit-button.cjs.entry.js +0 -46
- package/dist/cjs/u-missing-fields-submit-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-newsletter-checkbox.cjs.entry.js +0 -63
- package/dist/cjs/u-newsletter-checkbox.entry.cjs.js.map +0 -1
- package/dist/cjs/u-newsletter-logout-button.cjs.entry.js +0 -36
- package/dist/cjs/u-newsletter-logout-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-newsletter-preference-checkbox.cjs.entry.js +0 -106
- package/dist/cjs/u-newsletter-preference-checkbox.entry.cjs.js.map +0 -1
- package/dist/cjs/u-newsletter-resend-doi-button.cjs.entry.js +0 -49
- package/dist/cjs/u-newsletter-resend-doi-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-newsletter-root.cjs.entry.js +0 -72
- package/dist/cjs/u-newsletter-root.entry.cjs.js.map +0 -1
- package/dist/cjs/u-newsletter-toggle-subscription-button.cjs.entry.js +0 -73
- package/dist/cjs/u-newsletter-toggle-subscription-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-pagination-button.cjs.entry.js +0 -63
- package/dist/cjs/u-pagination-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-pagination-page.cjs.entry.js +0 -44
- package/dist/cjs/u-pagination-page.entry.cjs.js.map +0 -1
- package/dist/cjs/u-passkey.cjs.entry.js +0 -47
- package/dist/cjs/u-passkey.entry.cjs.js.map +0 -1
- package/dist/cjs/u-password-field.cjs.entry.js +0 -104
- package/dist/cjs/u-password-field.entry.cjs.js.map +0 -1
- package/dist/cjs/u-profile.u-submit-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-profile_2.cjs.entry.js +0 -327
- package/dist/cjs/u-registration-button.cjs.entry.js +0 -48
- package/dist/cjs/u-registration-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-reset-password-button.cjs.entry.js +0 -47
- package/dist/cjs/u-reset-password-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-send-magic-code-button.cjs.entry.js +0 -68
- package/dist/cjs/u-send-magic-code-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-signed-in.cjs.entry.js +0 -25
- package/dist/cjs/u-signed-in.entry.cjs.js.map +0 -1
- package/dist/cjs/u-signin-root.cjs.entry.js +0 -43
- package/dist/cjs/u-signin-root.entry.cjs.js.map +0 -1
- package/dist/cjs/u-signin-step.cjs.entry.js +0 -66
- package/dist/cjs/u-signin-step.entry.cjs.js.map +0 -1
- package/dist/cjs/u-signin-strategy.cjs.entry.js +0 -30
- package/dist/cjs/u-signin-strategy.entry.cjs.js.map +0 -1
- package/dist/cjs/u-social-login-button.cjs.entry.js +0 -100
- package/dist/cjs/u-social-login-button.entry.cjs.js.map +0 -1
- package/dist/cjs/u-spinner.cjs.entry.js +0 -18
- package/dist/cjs/u-spinner.entry.cjs.js.map +0 -1
- package/dist/cjs/u-ticketable-list.cjs.entry.js +0 -6087
- package/dist/cjs/u-ticketable-list.entry.cjs.js.map +0 -1
- package/dist/cjs/unidy-store-7AbWnZ6g.js +0 -41
- package/dist/cjs/unidy-store-7AbWnZ6g.js.map +0 -1
- package/dist/collection/api/client.js +0 -144
- package/dist/collection/api/client.js.map +0 -1
- package/dist/collection/api/index.js +0 -42
- package/dist/collection/api/index.js.map +0 -1
- package/dist/collection/api/shared.js +0 -18
- package/dist/collection/api/shared.js.map +0 -1
- package/dist/collection/auth/api/auth.js +0 -264
- package/dist/collection/auth/api/auth.js.map +0 -1
- package/dist/collection/auth/auth-helpers.js +0 -297
- package/dist/collection/auth/auth-helpers.js.map +0 -1
- package/dist/collection/auth/auth.js +0 -124
- package/dist/collection/auth/auth.js.map +0 -1
- package/dist/collection/auth/components/helpers.js +0 -5
- package/dist/collection/auth/components/helpers.js.map +0 -1
- package/dist/collection/auth/components/logout-button/logout-button.js +0 -85
- package/dist/collection/auth/components/logout-button/logout-button.js.map +0 -1
- package/dist/collection/auth/components/magic-code-field/magic-code-field.css +0 -1
- package/dist/collection/auth/components/magic-code-field/magic-code-field.js +0 -113
- package/dist/collection/auth/components/magic-code-field/magic-code-field.js.map +0 -1
- package/dist/collection/auth/components/missing-field/missing-field.js +0 -14
- package/dist/collection/auth/components/missing-field/missing-field.js.map +0 -1
- package/dist/collection/auth/components/missing-fields-submit-button/missing-fields-submit-button.js +0 -39
- package/dist/collection/auth/components/missing-fields-submit-button/missing-fields-submit-button.js.map +0 -1
- package/dist/collection/auth/components/passkey/passkey.js +0 -103
- package/dist/collection/auth/components/passkey/passkey.js.map +0 -1
- package/dist/collection/auth/components/password-field/password-field.js +0 -166
- package/dist/collection/auth/components/password-field/password-field.js.map +0 -1
- package/dist/collection/auth/components/registration/registration-button.js +0 -104
- package/dist/collection/auth/components/registration/registration-button.js.map +0 -1
- package/dist/collection/auth/components/reset-pass-button/reset-pass-button.js +0 -59
- package/dist/collection/auth/components/reset-pass-button/reset-pass-button.js.map +0 -1
- package/dist/collection/auth/components/send-magic-code-button/send-magic-code-button.js +0 -104
- package/dist/collection/auth/components/send-magic-code-button/send-magic-code-button.js.map +0 -1
- package/dist/collection/auth/components/signed-in/signed-in.js +0 -59
- package/dist/collection/auth/components/signed-in/signed-in.js.map +0 -1
- package/dist/collection/auth/components/signin-root/signin-root.js +0 -97
- package/dist/collection/auth/components/signin-root/signin-root.js.map +0 -1
- package/dist/collection/auth/components/signin-step/signin-step.js +0 -135
- package/dist/collection/auth/components/signin-step/signin-step.js.map +0 -1
- package/dist/collection/auth/components/signin-strategy/signin-strategy.js +0 -64
- package/dist/collection/auth/components/signin-strategy/signin-strategy.js.map +0 -1
- package/dist/collection/auth/components/social-logins/logos/apple.js +0 -3
- package/dist/collection/auth/components/social-logins/logos/apple.js.map +0 -1
- package/dist/collection/auth/components/social-logins/logos/discord.js +0 -3
- package/dist/collection/auth/components/social-logins/logos/discord.js.map +0 -1
- package/dist/collection/auth/components/social-logins/logos/facebook.js +0 -3
- package/dist/collection/auth/components/social-logins/logos/facebook.js.map +0 -1
- package/dist/collection/auth/components/social-logins/logos/google.js +0 -3
- package/dist/collection/auth/components/social-logins/logos/google.js.map +0 -1
- package/dist/collection/auth/components/social-logins/logos/linkedin.js +0 -3
- package/dist/collection/auth/components/social-logins/logos/linkedin.js.map +0 -1
- package/dist/collection/auth/components/social-logins/social-login-button.css +0 -1
- package/dist/collection/auth/components/social-logins/social-login-button.js +0 -188
- package/dist/collection/auth/components/social-logins/social-login-button.js.map +0 -1
- package/dist/collection/auth/components/submit-button/auth-submit-button.js +0 -62
- package/dist/collection/auth/components/submit-button/auth-submit-button.js.map +0 -1
- package/dist/collection/auth/error-definitions.js +0 -26
- package/dist/collection/auth/error-definitions.js.map +0 -1
- package/dist/collection/auth/index.js +0 -14
- package/dist/collection/auth/index.js.map +0 -1
- package/dist/collection/auth/passkey-auth.js +0 -106
- package/dist/collection/auth/passkey-auth.js.map +0 -1
- package/dist/collection/auth/store/auth-store.js +0 -174
- package/dist/collection/auth/store/auth-store.js.map +0 -1
- package/dist/collection/collection-manifest.json +0 -46
- package/dist/collection/globalScript.js +0 -18
- package/dist/collection/globalScript.js.map +0 -1
- package/dist/collection/i18n.js +0 -31
- package/dist/collection/i18n.js.map +0 -1
- package/dist/collection/index.js +0 -16
- package/dist/collection/index.js.map +0 -1
- package/dist/collection/locales/de.json +0 -133
- package/dist/collection/locales/en.json +0 -133
- package/dist/collection/locales/fr.json +0 -133
- package/dist/collection/locales/it.json +0 -133
- package/dist/collection/locales/nl_be.json +0 -133
- package/dist/collection/locales/ro.json +0 -133
- package/dist/collection/logger.js +0 -106
- package/dist/collection/logger.js.map +0 -1
- package/dist/collection/newsletter/api/newsletters.js +0 -189
- package/dist/collection/newsletter/api/newsletters.js.map +0 -1
- package/dist/collection/newsletter/components/helpers.js +0 -5
- package/dist/collection/newsletter/components/helpers.js.map +0 -1
- package/dist/collection/newsletter/components/logout-button/logout-button.js +0 -48
- package/dist/collection/newsletter/components/logout-button/logout-button.js.map +0 -1
- package/dist/collection/newsletter/components/newsletter-checkbox/newsletter-checkbox.js +0 -109
- package/dist/collection/newsletter/components/newsletter-checkbox/newsletter-checkbox.js.map +0 -1
- package/dist/collection/newsletter/components/newsletter-root/newsletter-root.js +0 -119
- package/dist/collection/newsletter/components/newsletter-root/newsletter-root.js.map +0 -1
- package/dist/collection/newsletter/components/preference-checkbox/preference-checkbox.js +0 -178
- package/dist/collection/newsletter/components/preference-checkbox/preference-checkbox.js.map +0 -1
- package/dist/collection/newsletter/components/resend-doi-button/resend-doi-button.css +0 -1
- package/dist/collection/newsletter/components/resend-doi-button/resend-doi-button.js +0 -89
- package/dist/collection/newsletter/components/resend-doi-button/resend-doi-button.js.map +0 -1
- package/dist/collection/newsletter/components/submit-button/newsletter-submit-button.js +0 -18
- package/dist/collection/newsletter/components/submit-button/newsletter-submit-button.js.map +0 -1
- package/dist/collection/newsletter/components/toggle-subscription-button/toggle-subscription-button.css +0 -1
- package/dist/collection/newsletter/components/toggle-subscription-button/toggle-subscription-button.js +0 -154
- package/dist/collection/newsletter/components/toggle-subscription-button/toggle-subscription-button.js.map +0 -1
- package/dist/collection/newsletter/index.js +0 -11
- package/dist/collection/newsletter/index.js.map +0 -1
- package/dist/collection/newsletter/newsletter-helpers.js +0 -277
- package/dist/collection/newsletter/newsletter-helpers.js.map +0 -1
- package/dist/collection/newsletter/store/newsletter-store.js +0 -34
- package/dist/collection/newsletter/store/newsletter-store.js.map +0 -1
- package/dist/collection/profile/api/profile.js +0 -168
- package/dist/collection/profile/api/profile.js.map +0 -1
- package/dist/collection/profile/components/field/field.css +0 -1
- package/dist/collection/profile/components/field/field.js +0 -359
- package/dist/collection/profile/components/field/field.js.map +0 -1
- package/dist/collection/profile/components/full-profile/full-profile.css +0 -1
- package/dist/collection/profile/components/full-profile/full-profile.js +0 -78
- package/dist/collection/profile/components/full-profile/full-profile.js.map +0 -1
- package/dist/collection/profile/components/profile/profile.js +0 -250
- package/dist/collection/profile/components/profile/profile.js.map +0 -1
- package/dist/collection/profile/components/raw-field/raw-field.js +0 -697
- package/dist/collection/profile/components/raw-field/raw-field.js.map +0 -1
- package/dist/collection/profile/components/raw-input-fields/Input.js +0 -3
- package/dist/collection/profile/components/raw-input-fields/Input.js.map +0 -1
- package/dist/collection/profile/components/raw-input-fields/MultiSelect.js +0 -8
- package/dist/collection/profile/components/raw-input-fields/MultiSelect.js.map +0 -1
- package/dist/collection/profile/components/raw-input-fields/RadioGroup.js +0 -8
- package/dist/collection/profile/components/raw-input-fields/RadioGroup.js.map +0 -1
- package/dist/collection/profile/components/raw-input-fields/Select.js +0 -11
- package/dist/collection/profile/components/raw-input-fields/Select.js.map +0 -1
- package/dist/collection/profile/components/raw-input-fields/Textarea.js +0 -3
- package/dist/collection/profile/components/raw-input-fields/Textarea.js.map +0 -1
- package/dist/collection/profile/components/submit-button/profile-submit-button.js +0 -17
- package/dist/collection/profile/components/submit-button/profile-submit-button.js.map +0 -1
- package/dist/collection/profile/index.js +0 -13
- package/dist/collection/profile/index.js.map +0 -1
- package/dist/collection/profile/profile-helpers.js +0 -31
- package/dist/collection/profile/profile-helpers.js.map +0 -1
- package/dist/collection/profile/store/profile-store.js +0 -15
- package/dist/collection/profile/store/profile-store.js.map +0 -1
- package/dist/collection/sdk.css +0 -39
- package/dist/collection/shared/component-utils.js +0 -28
- package/dist/collection/shared/component-utils.js.map +0 -1
- package/dist/collection/shared/components/conditional-render/conditional-render.js +0 -178
- package/dist/collection/shared/components/conditional-render/conditional-render.js.map +0 -1
- package/dist/collection/shared/components/config/config.js +0 -260
- package/dist/collection/shared/components/config/config.js.map +0 -1
- package/dist/collection/shared/components/email-field/email-field.css +0 -1
- package/dist/collection/shared/components/email-field/email-field.js +0 -145
- package/dist/collection/shared/components/email-field/email-field.js.map +0 -1
- package/dist/collection/shared/components/error-message/error-message.js +0 -141
- package/dist/collection/shared/components/error-message/error-message.js.map +0 -1
- package/dist/collection/shared/components/flash-message/close-icon.js +0 -3
- package/dist/collection/shared/components/flash-message/close-icon.js.map +0 -1
- package/dist/collection/shared/components/flash-message/flash-message.css +0 -1
- package/dist/collection/shared/components/flash-message/flash-message.js +0 -79
- package/dist/collection/shared/components/flash-message/flash-message.js.map +0 -1
- package/dist/collection/shared/components/spinner/spinner.css +0 -1
- package/dist/collection/shared/components/spinner/spinner.js +0 -19
- package/dist/collection/shared/components/spinner/spinner.js.map +0 -1
- package/dist/collection/shared/components/submit-button/context.js +0 -10
- package/dist/collection/shared/components/submit-button/context.js.map +0 -1
- package/dist/collection/shared/components/submit-button/submit-button.css +0 -1
- package/dist/collection/shared/components/submit-button/submit-button.js +0 -196
- package/dist/collection/shared/components/submit-button/submit-button.js.map +0 -1
- package/dist/collection/shared/store/flash-store.js +0 -43
- package/dist/collection/shared/store/flash-store.js.map +0 -1
- package/dist/collection/shared/store/unidy-store.js +0 -33
- package/dist/collection/shared/store/unidy-store.js.map +0 -1
- package/dist/collection/ticketable/api/get-with-schema.js +0 -35
- package/dist/collection/ticketable/api/get-with-schema.js.map +0 -1
- package/dist/collection/ticketable/api/schemas.js +0 -12
- package/dist/collection/ticketable/api/schemas.js.map +0 -1
- package/dist/collection/ticketable/api/subscriptions.js +0 -47
- package/dist/collection/ticketable/api/subscriptions.js.map +0 -1
- package/dist/collection/ticketable/api/tickets.js +0 -48
- package/dist/collection/ticketable/api/tickets.js.map +0 -1
- package/dist/collection/ticketable/components/pagination/pagination-button.js +0 -108
- package/dist/collection/ticketable/components/pagination/pagination-button.js.map +0 -1
- package/dist/collection/ticketable/components/pagination/pagination-page.js +0 -69
- package/dist/collection/ticketable/components/pagination/pagination-page.js.map +0 -1
- package/dist/collection/ticketable/components/ticketable-list/skeleton-helpers.js +0 -54
- package/dist/collection/ticketable/components/ticketable-list/skeleton-helpers.js.map +0 -1
- package/dist/collection/ticketable/components/ticketable-list/ticketable-list.js +0 -498
- package/dist/collection/ticketable/components/ticketable-list/ticketable-list.js.map +0 -1
- package/dist/collection/ticketable/index.js +0 -13
- package/dist/collection/ticketable/index.js.map +0 -1
- package/dist/collection/ticketable/store/pagination-store.js +0 -9
- package/dist/collection/ticketable/store/pagination-store.js.map +0 -1
- package/dist/components/auth-store.js +0 -178
- package/dist/components/auth-store.js.map +0 -1
- package/dist/components/auth.js +0 -581
- package/dist/components/auth.js.map +0 -1
- package/dist/components/component-utils.js +0 -32
- package/dist/components/component-utils.js.map +0 -1
- package/dist/components/exports.js +0 -4106
- package/dist/components/exports.js.map +0 -1
- package/dist/components/field.js +0 -144
- package/dist/components/field.js.map +0 -1
- package/dist/components/flash-store.js +0 -47
- package/dist/components/flash-store.js.map +0 -1
- package/dist/components/helpers.js +0 -9
- package/dist/components/helpers.js.map +0 -1
- package/dist/components/helpers2.js +0 -9
- package/dist/components/helpers2.js.map +0 -1
- package/dist/components/i18n.js +0 -3234
- package/dist/components/i18n.js.map +0 -1
- package/dist/components/index.d.ts +0 -33
- package/dist/components/index.js +0 -5902
- package/dist/components/index.js.map +0 -1
- package/dist/components/index2.js +0 -5256
- package/dist/components/index2.js.map +0 -1
- package/dist/components/index3.js +0 -212
- package/dist/components/index3.js.map +0 -1
- package/dist/components/logger.js +0 -111
- package/dist/components/logger.js.map +0 -1
- package/dist/components/newsletter-helpers.js +0 -278
- package/dist/components/newsletter-helpers.js.map +0 -1
- package/dist/components/newsletter-store.js +0 -34
- package/dist/components/newsletter-store.js.map +0 -1
- package/dist/components/pagination-store.js +0 -14
- package/dist/components/pagination-store.js.map +0 -1
- package/dist/components/profile-helpers.js +0 -36
- package/dist/components/profile-helpers.js.map +0 -1
- package/dist/components/profile-store.js +0 -18
- package/dist/components/profile-store.js.map +0 -1
- package/dist/components/profile.js +0 -151
- package/dist/components/profile.js.map +0 -1
- package/dist/components/raw-field.js +0 -318
- package/dist/components/raw-field.js.map +0 -1
- package/dist/components/spinner.js +0 -35
- package/dist/components/spinner.js.map +0 -1
- package/dist/components/submit-button.js +0 -231
- package/dist/components/submit-button.js.map +0 -1
- package/dist/components/u-conditional-render.d.ts +0 -11
- package/dist/components/u-conditional-render.js +0 -121
- package/dist/components/u-conditional-render.js.map +0 -1
- package/dist/components/u-config.d.ts +0 -11
- package/dist/components/u-config.js +0 -113
- package/dist/components/u-config.js.map +0 -1
- package/dist/components/u-email-field.d.ts +0 -11
- package/dist/components/u-email-field.js +0 -99
- package/dist/components/u-email-field.js.map +0 -1
- package/dist/components/u-error-message.d.ts +0 -11
- package/dist/components/u-error-message.js +0 -105
- package/dist/components/u-error-message.js.map +0 -1
- package/dist/components/u-field.d.ts +0 -11
- package/dist/components/u-field.js +0 -9
- package/dist/components/u-field.js.map +0 -1
- package/dist/components/u-flash-message.d.ts +0 -11
- package/dist/components/u-flash-message.js +0 -58
- package/dist/components/u-flash-message.js.map +0 -1
- package/dist/components/u-full-profile.d.ts +0 -11
- package/dist/components/u-full-profile.js +0 -87
- package/dist/components/u-full-profile.js.map +0 -1
- package/dist/components/u-logout-button.d.ts +0 -11
- package/dist/components/u-logout-button.js +0 -53
- package/dist/components/u-logout-button.js.map +0 -1
- package/dist/components/u-magic-code-field.d.ts +0 -11
- package/dist/components/u-magic-code-field.js +0 -106
- package/dist/components/u-magic-code-field.js.map +0 -1
- package/dist/components/u-missing-field.d.ts +0 -11
- package/dist/components/u-missing-field.js +0 -57
- package/dist/components/u-missing-field.js.map +0 -1
- package/dist/components/u-missing-fields-submit-button.d.ts +0 -11
- package/dist/components/u-missing-fields-submit-button.js +0 -70
- package/dist/components/u-missing-fields-submit-button.js.map +0 -1
- package/dist/components/u-newsletter-checkbox.d.ts +0 -11
- package/dist/components/u-newsletter-checkbox.js +0 -77
- package/dist/components/u-newsletter-checkbox.js.map +0 -1
- package/dist/components/u-newsletter-logout-button.d.ts +0 -11
- package/dist/components/u-newsletter-logout-button.js +0 -51
- package/dist/components/u-newsletter-logout-button.js.map +0 -1
- package/dist/components/u-newsletter-preference-checkbox.d.ts +0 -11
- package/dist/components/u-newsletter-preference-checkbox.js +0 -124
- package/dist/components/u-newsletter-preference-checkbox.js.map +0 -1
- package/dist/components/u-newsletter-resend-doi-button.d.ts +0 -11
- package/dist/components/u-newsletter-resend-doi-button.js +0 -70
- package/dist/components/u-newsletter-resend-doi-button.js.map +0 -1
- package/dist/components/u-newsletter-root.d.ts +0 -11
- package/dist/components/u-newsletter-root.js +0 -90
- package/dist/components/u-newsletter-root.js.map +0 -1
- package/dist/components/u-newsletter-toggle-subscription-button.d.ts +0 -11
- package/dist/components/u-newsletter-toggle-subscription-button.js +0 -97
- package/dist/components/u-newsletter-toggle-subscription-button.js.map +0 -1
- package/dist/components/u-pagination-button.d.ts +0 -11
- package/dist/components/u-pagination-button.js +0 -86
- package/dist/components/u-pagination-button.js.map +0 -1
- package/dist/components/u-pagination-page.d.ts +0 -11
- package/dist/components/u-pagination-page.js +0 -66
- package/dist/components/u-pagination-page.js.map +0 -1
- package/dist/components/u-passkey.d.ts +0 -11
- package/dist/components/u-passkey.js +0 -65
- package/dist/components/u-passkey.js.map +0 -1
- package/dist/components/u-password-field.d.ts +0 -11
- package/dist/components/u-password-field.js +0 -125
- package/dist/components/u-password-field.js.map +0 -1
- package/dist/components/u-profile.d.ts +0 -11
- package/dist/components/u-profile.js +0 -9
- package/dist/components/u-profile.js.map +0 -1
- package/dist/components/u-raw-field.d.ts +0 -11
- package/dist/components/u-raw-field.js +0 -9
- package/dist/components/u-raw-field.js.map +0 -1
- package/dist/components/u-registration-button.d.ts +0 -11
- package/dist/components/u-registration-button.js +0 -70
- package/dist/components/u-registration-button.js.map +0 -1
- package/dist/components/u-reset-password-button.d.ts +0 -11
- package/dist/components/u-reset-password-button.js +0 -63
- package/dist/components/u-reset-password-button.js.map +0 -1
- package/dist/components/u-send-magic-code-button.d.ts +0 -11
- package/dist/components/u-send-magic-code-button.js +0 -85
- package/dist/components/u-send-magic-code-button.js.map +0 -1
- package/dist/components/u-signed-in.d.ts +0 -11
- package/dist/components/u-signed-in.js +0 -44
- package/dist/components/u-signed-in.js.map +0 -1
- package/dist/components/u-signin-root.d.ts +0 -11
- package/dist/components/u-signin-root.js +0 -63
- package/dist/components/u-signin-root.js.map +0 -1
- package/dist/components/u-signin-step.d.ts +0 -11
- package/dist/components/u-signin-step.js +0 -84
- package/dist/components/u-signin-step.js.map +0 -1
- package/dist/components/u-signin-strategy.d.ts +0 -11
- package/dist/components/u-signin-strategy.js +0 -50
- package/dist/components/u-signin-strategy.js.map +0 -1
- package/dist/components/u-social-login-button.d.ts +0 -11
- package/dist/components/u-social-login-button.js +0 -125
- package/dist/components/u-social-login-button.js.map +0 -1
- package/dist/components/u-spinner.d.ts +0 -11
- package/dist/components/u-spinner.js +0 -9
- package/dist/components/u-spinner.js.map +0 -1
- package/dist/components/u-submit-button.d.ts +0 -11
- package/dist/components/u-submit-button.js +0 -9
- package/dist/components/u-submit-button.js.map +0 -1
- package/dist/components/u-ticketable-list.d.ts +0 -11
- package/dist/components/u-ticketable-list.js +0 -6122
- package/dist/components/u-ticketable-list.js.map +0 -1
- package/dist/components/unidy-store.js +0 -37
- package/dist/components/unidy-store.js.map +0 -1
- package/dist/esm/app-globals-CPU9ZcqZ.js +0 -8
- package/dist/esm/app-globals-CPU9ZcqZ.js.map +0 -1
- package/dist/esm/auth-B0RIcDM-.js +0 -580
- package/dist/esm/auth-B0RIcDM-.js.map +0 -1
- package/dist/esm/auth-store-BGMYm_jK.js +0 -178
- package/dist/esm/auth-store-BGMYm_jK.js.map +0 -1
- package/dist/esm/component-utils-D1lzXl_Z.js +0 -32
- package/dist/esm/component-utils-D1lzXl_Z.js.map +0 -1
- package/dist/esm/flash-store-CEvWSG0c.js +0 -47
- package/dist/esm/flash-store-CEvWSG0c.js.map +0 -1
- package/dist/esm/helpers-BqFCd65h.js +0 -9
- package/dist/esm/helpers-BqFCd65h.js.map +0 -1
- package/dist/esm/helpers-DUHc_Cx7.js +0 -9
- package/dist/esm/helpers-DUHc_Cx7.js.map +0 -1
- package/dist/esm/i18n-CLdWzy5J.js +0 -3233
- package/dist/esm/i18n-CLdWzy5J.js.map +0 -1
- package/dist/esm/index-Bjp1XO-f.js +0 -212
- package/dist/esm/index-Bjp1XO-f.js.map +0 -1
- package/dist/esm/index-Ci3aTmzp.js +0 -12007
- package/dist/esm/index-Ci3aTmzp.js.map +0 -1
- package/dist/esm/index-DSDkaHWI.js +0 -5254
- package/dist/esm/index-DSDkaHWI.js.map +0 -1
- package/dist/esm/index.js +0 -40
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/loader.js +0 -12
- package/dist/esm/loader.js.map +0 -1
- package/dist/esm/newsletter-helpers-CONtbKYi.js +0 -278
- package/dist/esm/newsletter-helpers-CONtbKYi.js.map +0 -1
- package/dist/esm/newsletter-store-DBL1A203.js +0 -34
- package/dist/esm/newsletter-store-DBL1A203.js.map +0 -1
- package/dist/esm/pagination-store-DzdJOp-n.js +0 -14
- package/dist/esm/pagination-store-DzdJOp-n.js.map +0 -1
- package/dist/esm/profile-helpers-CglNd6Nw.js +0 -36
- package/dist/esm/profile-helpers-CglNd6Nw.js.map +0 -1
- package/dist/esm/profile-store-RmZB2PTc.js +0 -18
- package/dist/esm/profile-store-RmZB2PTc.js.map +0 -1
- package/dist/esm/sdk.js +0 -22
- package/dist/esm/sdk.js.map +0 -1
- package/dist/esm/u-conditional-render.entry.js +0 -101
- package/dist/esm/u-conditional-render.entry.js.map +0 -1
- package/dist/esm/u-config.entry.js +0 -85
- package/dist/esm/u-config.entry.js.map +0 -1
- package/dist/esm/u-email-field.entry.js +0 -75
- package/dist/esm/u-email-field.entry.js.map +0 -1
- package/dist/esm/u-error-message.entry.js +0 -80
- package/dist/esm/u-error-message.entry.js.map +0 -1
- package/dist/esm/u-field.u-raw-field.entry.js.map +0 -1
- package/dist/esm/u-field_2.entry.js +0 -372
- package/dist/esm/u-flash-message.entry.js +0 -35
- package/dist/esm/u-flash-message.entry.js.map +0 -1
- package/dist/esm/u-full-profile.entry.js +0 -35
- package/dist/esm/u-full-profile.entry.js.map +0 -1
- package/dist/esm/u-logout-button.entry.js +0 -36
- package/dist/esm/u-logout-button.entry.js.map +0 -1
- package/dist/esm/u-magic-code-field.entry.js +0 -89
- package/dist/esm/u-magic-code-field.entry.js.map +0 -1
- package/dist/esm/u-missing-field.entry.js +0 -20
- package/dist/esm/u-missing-field.entry.js.map +0 -1
- package/dist/esm/u-missing-fields-submit-button.entry.js +0 -44
- package/dist/esm/u-missing-fields-submit-button.entry.js.map +0 -1
- package/dist/esm/u-newsletter-checkbox.entry.js +0 -61
- package/dist/esm/u-newsletter-checkbox.entry.js.map +0 -1
- package/dist/esm/u-newsletter-logout-button.entry.js +0 -34
- package/dist/esm/u-newsletter-logout-button.entry.js.map +0 -1
- package/dist/esm/u-newsletter-preference-checkbox.entry.js +0 -104
- package/dist/esm/u-newsletter-preference-checkbox.entry.js.map +0 -1
- package/dist/esm/u-newsletter-resend-doi-button.entry.js +0 -47
- package/dist/esm/u-newsletter-resend-doi-button.entry.js.map +0 -1
- package/dist/esm/u-newsletter-root.entry.js +0 -70
- package/dist/esm/u-newsletter-root.entry.js.map +0 -1
- package/dist/esm/u-newsletter-toggle-subscription-button.entry.js +0 -71
- package/dist/esm/u-newsletter-toggle-subscription-button.entry.js.map +0 -1
- package/dist/esm/u-pagination-button.entry.js +0 -61
- package/dist/esm/u-pagination-button.entry.js.map +0 -1
- package/dist/esm/u-pagination-page.entry.js +0 -42
- package/dist/esm/u-pagination-page.entry.js.map +0 -1
- package/dist/esm/u-passkey.entry.js +0 -45
- package/dist/esm/u-passkey.entry.js.map +0 -1
- package/dist/esm/u-password-field.entry.js +0 -102
- package/dist/esm/u-password-field.entry.js.map +0 -1
- package/dist/esm/u-profile.u-submit-button.entry.js.map +0 -1
- package/dist/esm/u-profile_2.entry.js +0 -324
- package/dist/esm/u-registration-button.entry.js +0 -46
- package/dist/esm/u-registration-button.entry.js.map +0 -1
- package/dist/esm/u-reset-password-button.entry.js +0 -45
- package/dist/esm/u-reset-password-button.entry.js.map +0 -1
- package/dist/esm/u-send-magic-code-button.entry.js +0 -66
- package/dist/esm/u-send-magic-code-button.entry.js.map +0 -1
- package/dist/esm/u-signed-in.entry.js +0 -23
- package/dist/esm/u-signed-in.entry.js.map +0 -1
- package/dist/esm/u-signin-root.entry.js +0 -41
- package/dist/esm/u-signin-root.entry.js.map +0 -1
- package/dist/esm/u-signin-step.entry.js +0 -64
- package/dist/esm/u-signin-step.entry.js.map +0 -1
- package/dist/esm/u-signin-strategy.entry.js +0 -28
- package/dist/esm/u-signin-strategy.entry.js.map +0 -1
- package/dist/esm/u-social-login-button.entry.js +0 -98
- package/dist/esm/u-social-login-button.entry.js.map +0 -1
- package/dist/esm/u-spinner.entry.js +0 -16
- package/dist/esm/u-spinner.entry.js.map +0 -1
- package/dist/esm/u-ticketable-list.entry.js +0 -6085
- package/dist/esm/u-ticketable-list.entry.js.map +0 -1
- package/dist/esm/unidy-store-BldTAtO0.js +0 -37
- package/dist/esm/unidy-store-BldTAtO0.js.map +0 -1
- package/dist/index.cjs.js +0 -1
- package/dist/index.js +0 -1
- package/dist/sdk/auth-BopPjv7G.js.map +0 -1
- package/dist/sdk/auth-C0vldOq6.js.map +0 -1
- package/dist/sdk/auth-store-DQaam_Qh.js.map +0 -1
- package/dist/sdk/auth-store-sOmplc4z.js.map +0 -1
- package/dist/sdk/component-utils-D1lzXl_Z.js.map +0 -1
- package/dist/sdk/flash-store-Cgu7WoSN.js.map +0 -1
- package/dist/sdk/flash-store-DNcSEn2p.js.map +0 -1
- package/dist/sdk/helpers-BqFCd65h.js.map +0 -1
- package/dist/sdk/helpers-DUHc_Cx7.js.map +0 -1
- package/dist/sdk/i18n-B6rRU-m3.js.map +0 -1
- package/dist/sdk/i18n-CZii1E-s.js.map +0 -1
- package/dist/sdk/index-B1aDcaWd.js.map +0 -1
- package/dist/sdk/index-BnBstyfp.js.map +0 -1
- package/dist/sdk/index-BqL27K_R.js.map +0 -1
- package/dist/sdk/index-C5jZjlU8.js.map +0 -1
- package/dist/sdk/index-Df-7P3r0.js.map +0 -1
- package/dist/sdk/index-Eu7hg2ii.js.map +0 -1
- package/dist/sdk/index-Iulyfmzq.js.map +0 -1
- package/dist/sdk/index-O6h7SI7-.js.map +0 -1
- package/dist/sdk/index.esm.js +0 -2
- package/dist/sdk/index.esm.js.map +0 -1
- package/dist/sdk/loader.esm.js.map +0 -1
- package/dist/sdk/locales/de.json +0 -133
- package/dist/sdk/locales/en.json +0 -133
- package/dist/sdk/locales/fr.json +0 -133
- package/dist/sdk/locales/it.json +0 -133
- package/dist/sdk/locales/nl_be.json +0 -133
- package/dist/sdk/locales/ro.json +0 -133
- package/dist/sdk/newsletter-helpers-8ByV38YW.js.map +0 -1
- package/dist/sdk/newsletter-helpers-B-Md6T9k.js.map +0 -1
- package/dist/sdk/newsletter-store-CqD-GcDC.js.map +0 -1
- package/dist/sdk/newsletter-store-CvULKmsu.js.map +0 -1
- package/dist/sdk/p-08ff2de2.entry.js +0 -2
- package/dist/sdk/p-08ff2de2.entry.js.map +0 -1
- package/dist/sdk/p-1ea49938.entry.js +0 -2
- package/dist/sdk/p-1ea49938.entry.js.map +0 -1
- package/dist/sdk/p-2a65bcbb.entry.js +0 -2
- package/dist/sdk/p-2a65bcbb.entry.js.map +0 -1
- package/dist/sdk/p-2af8b45f.entry.js +0 -2
- package/dist/sdk/p-2af8b45f.entry.js.map +0 -1
- package/dist/sdk/p-3411c743.entry.js +0 -2
- package/dist/sdk/p-3411c743.entry.js.map +0 -1
- package/dist/sdk/p-467c7304.entry.js +0 -2
- package/dist/sdk/p-467c7304.entry.js.map +0 -1
- package/dist/sdk/p-56abb377.entry.js +0 -2
- package/dist/sdk/p-56abb377.entry.js.map +0 -1
- package/dist/sdk/p-5703102b.entry.js +0 -2
- package/dist/sdk/p-5703102b.entry.js.map +0 -1
- package/dist/sdk/p-593c6dde.entry.js +0 -2
- package/dist/sdk/p-593c6dde.entry.js.map +0 -1
- package/dist/sdk/p-5b627aea.entry.js +0 -2
- package/dist/sdk/p-5b627aea.entry.js.map +0 -1
- package/dist/sdk/p-5babee6b.entry.js +0 -2
- package/dist/sdk/p-5babee6b.entry.js.map +0 -1
- package/dist/sdk/p-5cc20a8b.entry.js +0 -2
- package/dist/sdk/p-5cc20a8b.entry.js.map +0 -1
- package/dist/sdk/p-628ccd68.entry.js +0 -2
- package/dist/sdk/p-628ccd68.entry.js.map +0 -1
- package/dist/sdk/p-675eb13d.entry.js +0 -2
- package/dist/sdk/p-675eb13d.entry.js.map +0 -1
- package/dist/sdk/p-6893d167.entry.js +0 -2
- package/dist/sdk/p-6893d167.entry.js.map +0 -1
- package/dist/sdk/p-6a642433.entry.js +0 -2
- package/dist/sdk/p-6a642433.entry.js.map +0 -1
- package/dist/sdk/p-73c2ec89.entry.js +0 -2
- package/dist/sdk/p-73c2ec89.entry.js.map +0 -1
- package/dist/sdk/p-7a0cefff.entry.js +0 -2
- package/dist/sdk/p-7a0cefff.entry.js.map +0 -1
- package/dist/sdk/p-91bb8b59.entry.js +0 -2
- package/dist/sdk/p-91bb8b59.entry.js.map +0 -1
- package/dist/sdk/p-9f59909b.entry.js +0 -2
- package/dist/sdk/p-9f59909b.entry.js.map +0 -1
- package/dist/sdk/p-BZ1kW_eK.js +0 -2
- package/dist/sdk/p-BZ1kW_eK.js.map +0 -1
- package/dist/sdk/p-BlAULXyw.js +0 -2
- package/dist/sdk/p-BlAULXyw.js.map +0 -1
- package/dist/sdk/p-BlOjABPD.js +0 -2
- package/dist/sdk/p-BlOjABPD.js.map +0 -1
- package/dist/sdk/p-BqFCd65h.js +0 -2
- package/dist/sdk/p-BqFCd65h.js.map +0 -1
- package/dist/sdk/p-C0feI0p8.js +0 -2
- package/dist/sdk/p-C0feI0p8.js.map +0 -1
- package/dist/sdk/p-C3fhudPT.js +0 -2
- package/dist/sdk/p-C3fhudPT.js.map +0 -1
- package/dist/sdk/p-CFiZLMAA.js +0 -2
- package/dist/sdk/p-CFiZLMAA.js.map +0 -1
- package/dist/sdk/p-CPPYdoIv.js +0 -2
- package/dist/sdk/p-CPPYdoIv.js.map +0 -1
- package/dist/sdk/p-CbRhHGU5.js +0 -2
- package/dist/sdk/p-CbRhHGU5.js.map +0 -1
- package/dist/sdk/p-Ce8zGAi1.js +0 -2
- package/dist/sdk/p-Ce8zGAi1.js.map +0 -1
- package/dist/sdk/p-Ci3aTmzp.js +0 -3
- package/dist/sdk/p-Ci3aTmzp.js.map +0 -1
- package/dist/sdk/p-D1lzXl_Z.js +0 -2
- package/dist/sdk/p-D1lzXl_Z.js.map +0 -1
- package/dist/sdk/p-DA84OuuU.js +0 -2
- package/dist/sdk/p-DA84OuuU.js.map +0 -1
- package/dist/sdk/p-DUHc_Cx7.js +0 -2
- package/dist/sdk/p-DUHc_Cx7.js.map +0 -1
- package/dist/sdk/p-DYtgart8.js +0 -2
- package/dist/sdk/p-DYtgart8.js.map +0 -1
- package/dist/sdk/p-DdUvQelg.js +0 -2
- package/dist/sdk/p-DdUvQelg.js.map +0 -1
- package/dist/sdk/p-S3-2d2Qd.js +0 -2
- package/dist/sdk/p-S3-2d2Qd.js.map +0 -1
- package/dist/sdk/p-a4b7ffd8.entry.js +0 -2
- package/dist/sdk/p-a4b7ffd8.entry.js.map +0 -1
- package/dist/sdk/p-a5db968f.entry.js +0 -2
- package/dist/sdk/p-a5db968f.entry.js.map +0 -1
- package/dist/sdk/p-a6393d19.entry.js +0 -2
- package/dist/sdk/p-a6393d19.entry.js.map +0 -1
- package/dist/sdk/p-c31dbbb4.entry.js +0 -2
- package/dist/sdk/p-c31dbbb4.entry.js.map +0 -1
- package/dist/sdk/p-c5bffd90.entry.js +0 -2
- package/dist/sdk/p-c5bffd90.entry.js.map +0 -1
- package/dist/sdk/p-da363474.entry.js +0 -2
- package/dist/sdk/p-da363474.entry.js.map +0 -1
- package/dist/sdk/p-e3611b71.entry.js +0 -2
- package/dist/sdk/p-e3611b71.entry.js.map +0 -1
- package/dist/sdk/p-e3f28800.entry.js +0 -2
- package/dist/sdk/p-e3f28800.entry.js.map +0 -1
- package/dist/sdk/p-effaf86b.entry.js +0 -2
- package/dist/sdk/p-effaf86b.entry.js.map +0 -1
- package/dist/sdk/p-f0598e42.entry.js +0 -2
- package/dist/sdk/p-f0598e42.entry.js.map +0 -1
- package/dist/sdk/p-f369a996.entry.js +0 -2
- package/dist/sdk/p-f369a996.entry.js.map +0 -1
- package/dist/sdk/p-ffac964c.entry.js +0 -2
- package/dist/sdk/p-ffac964c.entry.js.map +0 -1
- package/dist/sdk/profile-helpers-BDjk573F.js.map +0 -1
- package/dist/sdk/profile-helpers-b8Koj20a.js.map +0 -1
- package/dist/sdk/profile-store-BZKApsQm.js.map +0 -1
- package/dist/sdk/profile-store-DD6sq42i.js.map +0 -1
- package/dist/sdk/sdk.css +0 -39
- package/dist/sdk/sdk.esm.js +0 -2
- package/dist/sdk/sdk.esm.js.map +0 -1
- package/dist/sdk/u-conditional-render.entry.esm.js.map +0 -1
- package/dist/sdk/u-config.entry.esm.js.map +0 -1
- package/dist/sdk/u-email-field.entry.esm.js.map +0 -1
- package/dist/sdk/u-error-message.entry.esm.js.map +0 -1
- package/dist/sdk/u-field.u-raw-field.entry.esm.js.map +0 -1
- package/dist/sdk/u-flash-message.entry.esm.js.map +0 -1
- package/dist/sdk/u-full-profile.entry.esm.js.map +0 -1
- package/dist/sdk/u-logout-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-magic-code-field.entry.esm.js.map +0 -1
- package/dist/sdk/u-missing-field.entry.esm.js.map +0 -1
- package/dist/sdk/u-missing-fields-submit-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-newsletter-checkbox.entry.esm.js.map +0 -1
- package/dist/sdk/u-newsletter-logout-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-newsletter-preference-checkbox.entry.esm.js.map +0 -1
- package/dist/sdk/u-newsletter-resend-doi-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-newsletter-root.entry.esm.js.map +0 -1
- package/dist/sdk/u-newsletter-toggle-subscription-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-pagination-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-pagination-page.entry.esm.js.map +0 -1
- package/dist/sdk/u-passkey.entry.esm.js.map +0 -1
- package/dist/sdk/u-password-field.entry.esm.js.map +0 -1
- package/dist/sdk/u-password-field.entry.js +0 -104
- package/dist/sdk/u-profile.u-submit-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-registration-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-reset-password-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-reset-password-button.entry.js +0 -54
- package/dist/sdk/u-send-magic-code-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-signed-in.entry.esm.js.map +0 -1
- package/dist/sdk/u-signin-root.entry.esm.js.map +0 -1
- package/dist/sdk/u-signin-step.entry.esm.js.map +0 -1
- package/dist/sdk/u-signin-strategy.entry.esm.js.map +0 -1
- package/dist/sdk/u-social-login-button.entry.esm.js.map +0 -1
- package/dist/sdk/u-spinner.entry.esm.js.map +0 -1
- package/dist/sdk/u-ticketable-list.entry.esm.js.map +0 -1
- package/dist/sdk/unidy-store-BwZym11Y.js.map +0 -1
- package/dist/sdk/unidy-store-CtifvCkV.js.map +0 -1
- package/dist/types/api/client.d.ts +0 -32
- package/dist/types/api/index.d.ts +0 -22
- package/dist/types/api/shared.d.ts +0 -20
- package/dist/types/auth/api/auth.d.ts +0 -300
- package/dist/types/auth/auth-helpers.d.ts +0 -375
- package/dist/types/auth/auth.d.ts +0 -54
- package/dist/types/auth/components/helpers.d.ts +0 -1
- package/dist/types/auth/components/logout-button/logout-button.d.ts +0 -8
- package/dist/types/auth/components/magic-code-field/magic-code-field.d.ts +0 -10
- package/dist/types/auth/components/missing-field/missing-field.d.ts +0 -4
- package/dist/types/auth/components/missing-fields-submit-button/missing-fields-submit-button.d.ts +0 -5
- package/dist/types/auth/components/passkey/passkey.d.ts +0 -9
- package/dist/types/auth/components/password-field/password-field.d.ts +0 -15
- package/dist/types/auth/components/registration/registration-button.d.ts +0 -11
- package/dist/types/auth/components/reset-pass-button/reset-pass-button.d.ts +0 -7
- package/dist/types/auth/components/send-magic-code-button/send-magic-code-button.d.ts +0 -11
- package/dist/types/auth/components/signed-in/signed-in.d.ts +0 -5
- package/dist/types/auth/components/signin-root/signin-root.d.ts +0 -14
- package/dist/types/auth/components/signin-step/signin-step.d.ts +0 -8
- package/dist/types/auth/components/signin-strategy/signin-strategy.d.ts +0 -5
- package/dist/types/auth/components/social-logins/logos/apple.d.ts +0 -4
- package/dist/types/auth/components/social-logins/logos/discord.d.ts +0 -4
- package/dist/types/auth/components/social-logins/logos/facebook.d.ts +0 -4
- package/dist/types/auth/components/social-logins/logos/google.d.ts +0 -4
- package/dist/types/auth/components/social-logins/logos/linkedin.d.ts +0 -4
- package/dist/types/auth/components/social-logins/social-login-button.d.ts +0 -24
- package/dist/types/auth/components/submit-button/auth-submit-button.d.ts +0 -3
- package/dist/types/auth/error-definitions.d.ts +0 -23
- package/dist/types/auth/index.d.ts +0 -16
- package/dist/types/auth/passkey-auth.d.ts +0 -2
- package/dist/types/auth/store/auth-store.d.ts +0 -56
- package/dist/types/components.d.ts +0 -1246
- package/dist/types/globalScript.d.ts +0 -1
- package/dist/types/i18n.d.ts +0 -3
- package/dist/types/index.d.ts +0 -16
- package/dist/types/logger.d.ts +0 -55
- package/dist/types/newsletter/api/newsletters.d.ts +0 -198
- package/dist/types/newsletter/components/helpers.d.ts +0 -1
- package/dist/types/newsletter/components/logout-button/logout-button.d.ts +0 -6
- package/dist/types/newsletter/components/newsletter-checkbox/newsletter-checkbox.d.ts +0 -10
- package/dist/types/newsletter/components/newsletter-root/newsletter-root.d.ts +0 -11
- package/dist/types/newsletter/components/preference-checkbox/preference-checkbox.d.ts +0 -23
- package/dist/types/newsletter/components/resend-doi-button/resend-doi-button.d.ts +0 -8
- package/dist/types/newsletter/components/submit-button/newsletter-submit-button.d.ts +0 -3
- package/dist/types/newsletter/components/toggle-subscription-button/toggle-subscription-button.d.ts +0 -12
- package/dist/types/newsletter/index.d.ts +0 -10
- package/dist/types/newsletter/newsletter-helpers.d.ts +0 -15
- package/dist/types/newsletter/store/newsletter-store.d.ts +0 -25
- package/dist/types/profile/api/profile.d.ts +0 -238
- package/dist/types/profile/components/field/field.d.ts +0 -40
- package/dist/types/profile/components/full-profile/full-profile.d.ts +0 -6
- package/dist/types/profile/components/profile/profile.d.ts +0 -27
- package/dist/types/profile/components/raw-field/raw-field.d.ts +0 -45
- package/dist/types/profile/components/raw-input-fields/Input.d.ts +0 -17
- package/dist/types/profile/components/raw-input-fields/MultiSelect.d.ts +0 -28
- package/dist/types/profile/components/raw-input-fields/RadioGroup.d.ts +0 -30
- package/dist/types/profile/components/raw-input-fields/Select.d.ts +0 -24
- package/dist/types/profile/components/raw-input-fields/Textarea.d.ts +0 -17
- package/dist/types/profile/components/submit-button/profile-submit-button.d.ts +0 -2
- package/dist/types/profile/index.d.ts +0 -13
- package/dist/types/profile/profile-helpers.d.ts +0 -7
- package/dist/types/profile/store/profile-store.d.ts +0 -39
- package/dist/types/shared/component-utils.d.ts +0 -9
- package/dist/types/shared/components/conditional-render/conditional-render.d.ts +0 -11
- package/dist/types/shared/components/config/config.d.ts +0 -31
- package/dist/types/shared/components/email-field/email-field.d.ts +0 -13
- package/dist/types/shared/components/error-message/error-message.d.ts +0 -15
- package/dist/types/shared/components/flash-message/close-icon.d.ts +0 -1
- package/dist/types/shared/components/flash-message/flash-message.d.ts +0 -6
- package/dist/types/shared/components/spinner/spinner.d.ts +0 -3
- package/dist/types/shared/components/submit-button/context.d.ts +0 -9
- package/dist/types/shared/components/submit-button/submit-button.d.ts +0 -20
- package/dist/types/shared/store/flash-store.d.ts +0 -29
- package/dist/types/shared/store/unidy-store.d.ts +0 -12
- package/dist/types/stencil-public-runtime.d.ts +0 -1756
- package/dist/types/ticketable/api/get-with-schema.d.ts +0 -3
- package/dist/types/ticketable/api/schemas.d.ts +0 -18
- package/dist/types/ticketable/api/subscriptions.d.ts +0 -84
- package/dist/types/ticketable/api/tickets.d.ts +0 -86
- package/dist/types/ticketable/components/pagination/pagination-button.d.ts +0 -14
- package/dist/types/ticketable/components/pagination/pagination-page.d.ts +0 -12
- package/dist/types/ticketable/components/ticketable-list/skeleton-helpers.d.ts +0 -13
- package/dist/types/ticketable/components/ticketable-list/ticketable-list.d.ts +0 -41
- package/dist/types/ticketable/index.d.ts +0 -12
- package/dist/types/ticketable/store/pagination-store.d.ts +0 -10
- package/loader/cdn.js +0 -1
- package/loader/index.cjs.js +0 -1
- package/loader/index.d.ts +0 -24
- package/loader/index.es2017.js +0 -1
- package/loader/index.js +0 -2
|
@@ -1,277 +0,0 @@
|
|
|
1
|
-
import { getUnidyClient } from "../api";
|
|
2
|
-
import { Auth } from "../auth/auth";
|
|
3
|
-
import { t } from "../i18n";
|
|
4
|
-
import { createLogger } from "../logger";
|
|
5
|
-
import { Flash } from "../shared/store/flash-store";
|
|
6
|
-
import { newsletterStore, persist, } from "./store/newsletter-store";
|
|
7
|
-
const logger = createLogger("NewsletterHelpers");
|
|
8
|
-
const PERSIST_KEY_PREFIX = "unidy_newsletter_";
|
|
9
|
-
export function newsletterLogout() {
|
|
10
|
-
newsletterStore.state.preferenceToken = "";
|
|
11
|
-
newsletterStore.state.existingSubscriptions = [];
|
|
12
|
-
sessionStorage.removeItem(`${PERSIST_KEY_PREFIX}preferenceToken`);
|
|
13
|
-
sessionStorage.removeItem(`${PERSIST_KEY_PREFIX}email`);
|
|
14
|
-
}
|
|
15
|
-
export async function resendDoi(internalName) {
|
|
16
|
-
const { preferenceToken } = newsletterStore.state;
|
|
17
|
-
const authInstance = await Auth.getInstance();
|
|
18
|
-
const idToken = await authInstance.getToken();
|
|
19
|
-
const response = await getUnidyClient().newsletters.resendDoi(internalName, { redirect_to_after_confirmation: redirectToAfterConfirmationUrl() }, {
|
|
20
|
-
preferenceToken: typeof preferenceToken === "string" ? preferenceToken : "",
|
|
21
|
-
idToken: typeof idToken === "string" ? idToken : "",
|
|
22
|
-
});
|
|
23
|
-
if (response.status === 204) {
|
|
24
|
-
return true;
|
|
25
|
-
}
|
|
26
|
-
if (response.status === 401) {
|
|
27
|
-
Flash.error.addMessage(t("newsletter.errors.unauthorized"));
|
|
28
|
-
newsletterLogout();
|
|
29
|
-
return false;
|
|
30
|
-
}
|
|
31
|
-
return false;
|
|
32
|
-
}
|
|
33
|
-
export async function sendLoginEmail(email) {
|
|
34
|
-
const response = await getUnidyClient().newsletters.sendLoginEmail({
|
|
35
|
-
email,
|
|
36
|
-
redirect_uri: redirectToAfterConfirmationUrl(),
|
|
37
|
-
});
|
|
38
|
-
if (response.status === 204) {
|
|
39
|
-
Flash.info.addMessage(t("newsletter.success.login_email_sent"));
|
|
40
|
-
}
|
|
41
|
-
else if (response.status === 404) {
|
|
42
|
-
Flash.error.addMessage(t("newsletter.errors.login_email_not_found"));
|
|
43
|
-
}
|
|
44
|
-
else {
|
|
45
|
-
Flash.error.addMessage(t("errors.unknown", { defaultValue: "An unknown error occurred" }));
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
export async function fetchSubscriptions() {
|
|
49
|
-
const { preferenceToken } = newsletterStore.state;
|
|
50
|
-
// either preference token is needed or the user must be authenticated
|
|
51
|
-
if (!preferenceToken && !newsletterStore.state.isAuthenticated) {
|
|
52
|
-
logger.error("Preference token or authentication is required to fetch subscriptions");
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
const authInstance = await Auth.getInstance();
|
|
56
|
-
const idToken = await authInstance.getToken();
|
|
57
|
-
newsletterStore.state.fetchingSubscriptions = true;
|
|
58
|
-
const response = await getUnidyClient().newsletters.listSubscriptions({
|
|
59
|
-
preferenceToken,
|
|
60
|
-
idToken: typeof idToken === "string" ? idToken : "",
|
|
61
|
-
});
|
|
62
|
-
newsletterStore.state.fetchingSubscriptions = false;
|
|
63
|
-
if (response.status === 401) {
|
|
64
|
-
newsletterLogout();
|
|
65
|
-
Flash.error.addMessage(t("newsletter.errors.unauthorized"));
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
if (response.success && response.data) {
|
|
69
|
-
newsletterStore.state.existingSubscriptions = response.data.map((sub) => ({
|
|
70
|
-
newsletter_internal_name: sub.newsletter_internal_name,
|
|
71
|
-
confirmed: sub.confirmed_at !== null,
|
|
72
|
-
preference_identifiers: sub.preference_identifiers || [],
|
|
73
|
-
}));
|
|
74
|
-
// init checked newsletters and preferences
|
|
75
|
-
const checkedNewsletters = { ...newsletterStore.state.checkedNewsletters };
|
|
76
|
-
for (const sub of response.data) {
|
|
77
|
-
checkedNewsletters[sub.newsletter_internal_name] = [...(sub.preference_identifiers || [])];
|
|
78
|
-
}
|
|
79
|
-
newsletterStore.state.checkedNewsletters = checkedNewsletters;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
async function handleAlreadySubscribedError(email, errors) {
|
|
83
|
-
if (newsletterStore.state.isAuthenticated || newsletterStore.state.preferenceToken) {
|
|
84
|
-
const existingNames = new Set(newsletterStore.state.existingSubscriptions.map((s) => s.newsletter_internal_name));
|
|
85
|
-
const newSubscriptions = errors
|
|
86
|
-
.filter((err) => err.error_identifier === "already_subscribed" && !existingNames.has(err.meta.newsletter_internal_name))
|
|
87
|
-
.map((err) => ({
|
|
88
|
-
newsletter_internal_name: err.meta.newsletter_internal_name,
|
|
89
|
-
confirmed: null,
|
|
90
|
-
preference_identifiers: [],
|
|
91
|
-
}));
|
|
92
|
-
if (newSubscriptions.length > 0) {
|
|
93
|
-
newsletterStore.state.existingSubscriptions = [...newsletterStore.state.existingSubscriptions, ...newSubscriptions];
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
await sendLoginEmail(email);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
async function handleCreateSubscriptionRequest(email, internalNames, showSuccessMessage = true) {
|
|
101
|
-
const authInstance = await Auth.getInstance();
|
|
102
|
-
const idToken = await authInstance.getToken();
|
|
103
|
-
const { checkedNewsletters } = newsletterStore.state;
|
|
104
|
-
const [error, response] = await getUnidyClient().newsletters.createSubscriptions({
|
|
105
|
-
email,
|
|
106
|
-
newsletter_subscriptions: internalNames.map((newsletter) => ({
|
|
107
|
-
newsletter_internal_name: newsletter,
|
|
108
|
-
preference_identifiers: checkedNewsletters[newsletter] || [],
|
|
109
|
-
})),
|
|
110
|
-
redirect_to_after_confirmation: redirectToAfterConfirmationUrl(),
|
|
111
|
-
}, {
|
|
112
|
-
idToken: typeof idToken === "string" ? idToken : "",
|
|
113
|
-
});
|
|
114
|
-
if (error === null) {
|
|
115
|
-
if (response.data?.results && response.data.results.length > 0) {
|
|
116
|
-
const newSubscriptions = response.data.results.map((result) => ({
|
|
117
|
-
newsletter_internal_name: result.newsletter_internal_name,
|
|
118
|
-
confirmed: result.confirmed_at !== null,
|
|
119
|
-
preference_identifiers: result.preference_identifiers || [],
|
|
120
|
-
}));
|
|
121
|
-
newsletterStore.state.existingSubscriptions = [...newsletterStore.state.existingSubscriptions, ...newSubscriptions];
|
|
122
|
-
}
|
|
123
|
-
if (showSuccessMessage) {
|
|
124
|
-
Flash.success.addMessage(t("newsletter.success.subscribe"));
|
|
125
|
-
}
|
|
126
|
-
return true;
|
|
127
|
-
}
|
|
128
|
-
if (error === "unauthorized") {
|
|
129
|
-
Flash.error.addMessage(t("newsletter.errors.unauthorized"));
|
|
130
|
-
newsletterLogout();
|
|
131
|
-
return false;
|
|
132
|
-
}
|
|
133
|
-
if (error === "newsletter_error") {
|
|
134
|
-
const errors = response.data?.errors || [];
|
|
135
|
-
const errorMap = {};
|
|
136
|
-
// special error case which is handled differently: if user is not authenticated, we send a login email, otherwise we add the
|
|
137
|
-
// already_subscribed subscriptions to the existing subscriptions
|
|
138
|
-
const hasAlreadySubscribedError = errors.some((err) => err.error_identifier === "already_subscribed");
|
|
139
|
-
if (hasAlreadySubscribedError) {
|
|
140
|
-
await handleAlreadySubscribedError(email, errors);
|
|
141
|
-
}
|
|
142
|
-
const newsletterNotFoundError = errors.some((err) => err.error_identifier === "newsletter_not_found");
|
|
143
|
-
if (newsletterNotFoundError) {
|
|
144
|
-
errorMap.general = "newsletter_not_found";
|
|
145
|
-
}
|
|
146
|
-
const hasInvalidEmailError = errors.some((err) => err.error_identifier === "validation_error" && err.error_details && "email" in err.error_details);
|
|
147
|
-
if (hasInvalidEmailError) {
|
|
148
|
-
errorMap.email = "invalid_email";
|
|
149
|
-
}
|
|
150
|
-
else {
|
|
151
|
-
for (const err of errors) {
|
|
152
|
-
errorMap[err.meta.newsletter_internal_name] = err.error_identifier;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
newsletterStore.state.errors = errorMap;
|
|
156
|
-
}
|
|
157
|
-
else {
|
|
158
|
-
Flash.error.addMessage(t("errors.unknown", { defaultValue: "An unknown error occurred" }));
|
|
159
|
-
}
|
|
160
|
-
return false;
|
|
161
|
-
}
|
|
162
|
-
export async function subscribeToNewsletter(internalName, email) {
|
|
163
|
-
return handleCreateSubscriptionRequest(email, [internalName], false);
|
|
164
|
-
}
|
|
165
|
-
export async function createSubscriptions({ email }) {
|
|
166
|
-
const internalNames = Object.keys(newsletterStore.state.checkedNewsletters);
|
|
167
|
-
await handleCreateSubscriptionRequest(email, internalNames, true);
|
|
168
|
-
}
|
|
169
|
-
export async function deleteSubscription(internalName) {
|
|
170
|
-
const { preferenceToken } = newsletterStore.state;
|
|
171
|
-
// either preference token is needed or the user must be authenticated to delete a subscription
|
|
172
|
-
if (!preferenceToken && !newsletterStore.state.isAuthenticated) {
|
|
173
|
-
logger.error("Preference token or authentication is required to delete a subscription");
|
|
174
|
-
return false;
|
|
175
|
-
}
|
|
176
|
-
const authInstance = await Auth.getInstance();
|
|
177
|
-
const idToken = await authInstance.getToken();
|
|
178
|
-
const response = await getUnidyClient().newsletters.deleteSubscription(internalName, {
|
|
179
|
-
preferenceToken,
|
|
180
|
-
idToken: typeof idToken === "string" ? idToken : "",
|
|
181
|
-
});
|
|
182
|
-
if (response.status === 200 && response.data?.new_preference_token) {
|
|
183
|
-
// if user is not authenticated, we need to store the new preference token which is used for the next request
|
|
184
|
-
if (!newsletterStore.state.isAuthenticated) {
|
|
185
|
-
newsletterStore.state.preferenceToken = response.data.new_preference_token;
|
|
186
|
-
persist("preferenceToken");
|
|
187
|
-
}
|
|
188
|
-
newsletterStore.state.existingSubscriptions = newsletterStore.state.existingSubscriptions.filter((sub) => sub.newsletter_internal_name !== internalName);
|
|
189
|
-
// Reset checked preferences to defaults (preferences marked with checked='true')
|
|
190
|
-
const defaultPrefs = newsletterStore.state.defaultPreferences[internalName];
|
|
191
|
-
newsletterStore.state.checkedNewsletters = {
|
|
192
|
-
...newsletterStore.state.checkedNewsletters,
|
|
193
|
-
[internalName]: defaultPrefs ? [...defaultPrefs] : [],
|
|
194
|
-
};
|
|
195
|
-
return true;
|
|
196
|
-
}
|
|
197
|
-
if (response.status === 204) {
|
|
198
|
-
newsletterLogout();
|
|
199
|
-
newsletterStore.state.checkedNewsletters = {};
|
|
200
|
-
return true;
|
|
201
|
-
}
|
|
202
|
-
if (response.status === 401) {
|
|
203
|
-
Flash.error.addMessage(t("newsletter.errors.unauthorized"));
|
|
204
|
-
newsletterLogout();
|
|
205
|
-
return false;
|
|
206
|
-
}
|
|
207
|
-
if (response.status === 422) {
|
|
208
|
-
return false;
|
|
209
|
-
}
|
|
210
|
-
Flash.error.addMessage(t("errors.unknown", { defaultValue: "An unknown error occurred" }));
|
|
211
|
-
return false;
|
|
212
|
-
}
|
|
213
|
-
export function getSubscription(internalName) {
|
|
214
|
-
return newsletterStore.state.existingSubscriptions.find((sub) => sub.newsletter_internal_name === internalName);
|
|
215
|
-
}
|
|
216
|
-
export function isSubscribed(internalName) {
|
|
217
|
-
return newsletterStore.state.existingSubscriptions.some((sub) => sub.newsletter_internal_name === internalName);
|
|
218
|
-
}
|
|
219
|
-
export function isConfirmed(internalName) {
|
|
220
|
-
const sub = getSubscription(internalName);
|
|
221
|
-
return sub?.confirmed ?? false;
|
|
222
|
-
}
|
|
223
|
-
function redirectToAfterConfirmationUrl() {
|
|
224
|
-
const baseUrl = `${location.origin}${location.pathname}`;
|
|
225
|
-
const params = new URLSearchParams(location.search);
|
|
226
|
-
for (const key of ["email", "newsletter_error"]) {
|
|
227
|
-
params.delete(key);
|
|
228
|
-
}
|
|
229
|
-
const queryString = params.toString();
|
|
230
|
-
return queryString ? `${baseUrl}?${queryString}` : baseUrl;
|
|
231
|
-
}
|
|
232
|
-
export function getSubscriptionPreferences(internalName) {
|
|
233
|
-
const subscription = getSubscription(internalName);
|
|
234
|
-
return subscription?.preference_identifiers || [];
|
|
235
|
-
}
|
|
236
|
-
export async function updateSubscriptionPreferences(internalName) {
|
|
237
|
-
const { preferenceToken } = newsletterStore.state;
|
|
238
|
-
// Either preference token is needed or the user must be authenticated
|
|
239
|
-
if (!preferenceToken && !newsletterStore.state.isAuthenticated) {
|
|
240
|
-
logger.error("Preference token or authentication is required to update subscription preferences");
|
|
241
|
-
return false;
|
|
242
|
-
}
|
|
243
|
-
// Check if the subscription exists
|
|
244
|
-
if (!isSubscribed(internalName)) {
|
|
245
|
-
logger.error(`Cannot update preferences: not subscribed to newsletter '${internalName}'`);
|
|
246
|
-
return false;
|
|
247
|
-
}
|
|
248
|
-
const authInstance = await Auth.getInstance();
|
|
249
|
-
const idToken = await authInstance.getToken();
|
|
250
|
-
const preferenceIdentifiers = newsletterStore.state.checkedNewsletters[internalName] || [];
|
|
251
|
-
const response = await getUnidyClient().newsletters.updateSubscription(internalName, { preference_identifiers: preferenceIdentifiers }, {
|
|
252
|
-
preferenceToken,
|
|
253
|
-
idToken: typeof idToken === "string" ? idToken : "",
|
|
254
|
-
});
|
|
255
|
-
if (response.status === 401) {
|
|
256
|
-
Flash.error.addMessage(t("newsletter.errors.unauthorized"));
|
|
257
|
-
newsletterLogout();
|
|
258
|
-
return false;
|
|
259
|
-
}
|
|
260
|
-
if (response.success && response.data) {
|
|
261
|
-
// Update the local subscription with the new preferences
|
|
262
|
-
const subscriptionIndex = newsletterStore.state.existingSubscriptions.findIndex((sub) => sub.newsletter_internal_name === internalName);
|
|
263
|
-
if (subscriptionIndex !== -1) {
|
|
264
|
-
const updatedSubscriptions = [...newsletterStore.state.existingSubscriptions];
|
|
265
|
-
updatedSubscriptions[subscriptionIndex] = {
|
|
266
|
-
...updatedSubscriptions[subscriptionIndex],
|
|
267
|
-
preference_identifiers: response.data.preference_identifiers || [],
|
|
268
|
-
};
|
|
269
|
-
newsletterStore.state.existingSubscriptions = updatedSubscriptions;
|
|
270
|
-
}
|
|
271
|
-
Flash.success.addMessage(t("newsletter.success.preferences_updated"));
|
|
272
|
-
return true;
|
|
273
|
-
}
|
|
274
|
-
Flash.error.addMessage(t("errors.unknown", { defaultValue: "An unknown error occurred" }));
|
|
275
|
-
return false;
|
|
276
|
-
}
|
|
277
|
-
//# sourceMappingURL=newsletter-helpers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"newsletter-helpers.js","sourceRoot":"","sources":["../../src/newsletter/newsletter-helpers.ts"],"names":[],"mappings":"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","sourcesContent":["import { getUnidyClient } from \"../api\";\nimport { Auth } from \"../auth/auth\";\nimport { t } from \"../i18n\";\nimport { createLogger } from \"../logger\";\nimport { Flash } from \"../shared/store/flash-store\";\nimport {\n type CheckedNewsletters,\n type ExistingSubscription,\n type NewsletterErrorIdentifier,\n newsletterStore,\n persist,\n} from \"./store/newsletter-store\";\n\nconst logger = createLogger(\"NewsletterHelpers\");\n\nconst PERSIST_KEY_PREFIX = \"unidy_newsletter_\";\n\nexport function newsletterLogout(): void {\n newsletterStore.state.preferenceToken = \"\";\n newsletterStore.state.existingSubscriptions = [];\n sessionStorage.removeItem(`${PERSIST_KEY_PREFIX}preferenceToken`);\n sessionStorage.removeItem(`${PERSIST_KEY_PREFIX}email`);\n}\n\nexport async function resendDoi(internalName: string): Promise<boolean> {\n const { preferenceToken } = newsletterStore.state;\n\n const authInstance = await Auth.getInstance();\n const idToken = await authInstance.getToken();\n\n const response = await getUnidyClient().newsletters.resendDoi(\n internalName,\n { redirect_to_after_confirmation: redirectToAfterConfirmationUrl() },\n {\n preferenceToken: typeof preferenceToken === \"string\" ? preferenceToken : \"\",\n idToken: typeof idToken === \"string\" ? idToken : \"\",\n },\n );\n\n if (response.status === 204) {\n return true;\n }\n\n if (response.status === 401) {\n Flash.error.addMessage(t(\"newsletter.errors.unauthorized\"));\n newsletterLogout();\n return false;\n }\n\n return false;\n}\n\nexport async function sendLoginEmail(email: string): Promise<void> {\n const response = await getUnidyClient().newsletters.sendLoginEmail({\n email,\n redirect_uri: redirectToAfterConfirmationUrl(),\n });\n\n if (response.status === 204) {\n Flash.info.addMessage(t(\"newsletter.success.login_email_sent\"));\n } else if (response.status === 404) {\n Flash.error.addMessage(t(\"newsletter.errors.login_email_not_found\"));\n } else {\n Flash.error.addMessage(t(\"errors.unknown\", { defaultValue: \"An unknown error occurred\" }));\n }\n}\n\nexport async function fetchSubscriptions(): Promise<void> {\n const { preferenceToken } = newsletterStore.state;\n\n // either preference token is needed or the user must be authenticated\n if (!preferenceToken && !newsletterStore.state.isAuthenticated) {\n logger.error(\"Preference token or authentication is required to fetch subscriptions\");\n return;\n }\n\n const authInstance = await Auth.getInstance();\n const idToken = await authInstance.getToken();\n\n newsletterStore.state.fetchingSubscriptions = true;\n\n const response = await getUnidyClient().newsletters.listSubscriptions({\n preferenceToken,\n idToken: typeof idToken === \"string\" ? idToken : \"\",\n });\n\n newsletterStore.state.fetchingSubscriptions = false;\n\n if (response.status === 401) {\n newsletterLogout();\n Flash.error.addMessage(t(\"newsletter.errors.unauthorized\"));\n return;\n }\n\n if (response.success && response.data) {\n newsletterStore.state.existingSubscriptions = response.data.map(\n (sub): ExistingSubscription => ({\n newsletter_internal_name: sub.newsletter_internal_name,\n confirmed: sub.confirmed_at !== null,\n preference_identifiers: sub.preference_identifiers || [],\n }),\n );\n\n // init checked newsletters and preferences\n const checkedNewsletters: CheckedNewsletters = { ...newsletterStore.state.checkedNewsletters };\n for (const sub of response.data) {\n checkedNewsletters[sub.newsletter_internal_name] = [...(sub.preference_identifiers || [])];\n }\n newsletterStore.state.checkedNewsletters = checkedNewsletters;\n }\n}\n\nasync function handleAlreadySubscribedError(\n email: string,\n errors: Array<{ error_identifier: string; meta: { newsletter_internal_name: string } }>,\n): Promise<void> {\n if (newsletterStore.state.isAuthenticated || newsletterStore.state.preferenceToken) {\n const existingNames = new Set(newsletterStore.state.existingSubscriptions.map((s) => s.newsletter_internal_name));\n\n const newSubscriptions: ExistingSubscription[] = errors\n .filter((err) => err.error_identifier === \"already_subscribed\" && !existingNames.has(err.meta.newsletter_internal_name))\n .map((err) => ({\n newsletter_internal_name: err.meta.newsletter_internal_name,\n confirmed: null,\n preference_identifiers: [],\n }));\n\n if (newSubscriptions.length > 0) {\n newsletterStore.state.existingSubscriptions = [...newsletterStore.state.existingSubscriptions, ...newSubscriptions];\n }\n } else {\n await sendLoginEmail(email);\n }\n}\n\nasync function handleCreateSubscriptionRequest(email: string, internalNames: string[], showSuccessMessage = true): Promise<boolean> {\n const authInstance = await Auth.getInstance();\n const idToken = await authInstance.getToken();\n const { checkedNewsletters } = newsletterStore.state;\n\n const [error, response] = await getUnidyClient().newsletters.createSubscriptions(\n {\n email,\n newsletter_subscriptions: internalNames.map((newsletter) => ({\n newsletter_internal_name: newsletter,\n preference_identifiers: checkedNewsletters[newsletter] || [],\n })),\n redirect_to_after_confirmation: redirectToAfterConfirmationUrl(),\n },\n {\n idToken: typeof idToken === \"string\" ? idToken : \"\",\n },\n );\n\n if (error === null) {\n if (response.data?.results && response.data.results.length > 0) {\n const newSubscriptions: ExistingSubscription[] = response.data.results.map((result) => ({\n newsletter_internal_name: result.newsletter_internal_name,\n confirmed: result.confirmed_at !== null,\n preference_identifiers: result.preference_identifiers || [],\n }));\n\n newsletterStore.state.existingSubscriptions = [...newsletterStore.state.existingSubscriptions, ...newSubscriptions];\n }\n\n if (showSuccessMessage) {\n Flash.success.addMessage(t(\"newsletter.success.subscribe\"));\n }\n\n return true;\n }\n\n if (error === \"unauthorized\") {\n Flash.error.addMessage(t(\"newsletter.errors.unauthorized\"));\n newsletterLogout();\n return false;\n }\n\n if (error === \"newsletter_error\") {\n const errors = response.data?.errors || [];\n const errorMap: Record<string, NewsletterErrorIdentifier> = {};\n\n // special error case which is handled differently: if user is not authenticated, we send a login email, otherwise we add the\n // already_subscribed subscriptions to the existing subscriptions\n const hasAlreadySubscribedError = errors.some((err) => err.error_identifier === \"already_subscribed\");\n if (hasAlreadySubscribedError) {\n await handleAlreadySubscribedError(email, errors);\n }\n\n const newsletterNotFoundError = errors.some((err) => err.error_identifier === \"newsletter_not_found\");\n if (newsletterNotFoundError) {\n errorMap.general = \"newsletter_not_found\";\n }\n\n const hasInvalidEmailError = errors.some(\n (err) => err.error_identifier === \"validation_error\" && err.error_details && \"email\" in err.error_details,\n );\n\n if (hasInvalidEmailError) {\n errorMap.email = \"invalid_email\";\n } else {\n for (const err of errors) {\n errorMap[err.meta.newsletter_internal_name] = err.error_identifier as NewsletterErrorIdentifier;\n }\n }\n\n newsletterStore.state.errors = errorMap;\n } else {\n Flash.error.addMessage(t(\"errors.unknown\", { defaultValue: \"An unknown error occurred\" }));\n }\n\n return false;\n}\n\nexport async function subscribeToNewsletter(internalName: string, email: string): Promise<boolean> {\n return handleCreateSubscriptionRequest(email, [internalName], false);\n}\n\nexport async function createSubscriptions({ email }: { email: string }): Promise<void> {\n const internalNames = Object.keys(newsletterStore.state.checkedNewsletters);\n await handleCreateSubscriptionRequest(email, internalNames, true);\n}\n\nexport async function deleteSubscription(internalName: string): Promise<boolean> {\n const { preferenceToken } = newsletterStore.state;\n\n // either preference token is needed or the user must be authenticated to delete a subscription\n if (!preferenceToken && !newsletterStore.state.isAuthenticated) {\n logger.error(\"Preference token or authentication is required to delete a subscription\");\n return false;\n }\n\n const authInstance = await Auth.getInstance();\n const idToken = await authInstance.getToken();\n\n const response = await getUnidyClient().newsletters.deleteSubscription(internalName, {\n preferenceToken,\n idToken: typeof idToken === \"string\" ? idToken : \"\",\n });\n\n if (response.status === 200 && response.data?.new_preference_token) {\n // if user is not authenticated, we need to store the new preference token which is used for the next request\n if (!newsletterStore.state.isAuthenticated) {\n newsletterStore.state.preferenceToken = response.data.new_preference_token;\n persist(\"preferenceToken\");\n }\n\n newsletterStore.state.existingSubscriptions = newsletterStore.state.existingSubscriptions.filter(\n (sub) => sub.newsletter_internal_name !== internalName,\n );\n\n // Reset checked preferences to defaults (preferences marked with checked='true')\n const defaultPrefs = newsletterStore.state.defaultPreferences[internalName];\n newsletterStore.state.checkedNewsletters = {\n ...newsletterStore.state.checkedNewsletters,\n [internalName]: defaultPrefs ? [...defaultPrefs] : [],\n };\n\n return true;\n }\n\n if (response.status === 204) {\n newsletterLogout();\n\n newsletterStore.state.checkedNewsletters = {};\n return true;\n }\n\n if (response.status === 401) {\n Flash.error.addMessage(t(\"newsletter.errors.unauthorized\"));\n newsletterLogout();\n return false;\n }\n\n if (response.status === 422) {\n return false;\n }\n\n Flash.error.addMessage(t(\"errors.unknown\", { defaultValue: \"An unknown error occurred\" }));\n return false;\n}\n\nexport function getSubscription(internalName: string): ExistingSubscription | undefined {\n return newsletterStore.state.existingSubscriptions.find((sub) => sub.newsletter_internal_name === internalName);\n}\n\nexport function isSubscribed(internalName: string): boolean {\n return newsletterStore.state.existingSubscriptions.some((sub) => sub.newsletter_internal_name === internalName);\n}\n\nexport function isConfirmed(internalName: string): boolean {\n const sub = getSubscription(internalName);\n return sub?.confirmed ?? false;\n}\n\nfunction redirectToAfterConfirmationUrl(): string {\n const baseUrl = `${location.origin}${location.pathname}`;\n const params = new URLSearchParams(location.search);\n for (const key of [\"email\", \"newsletter_error\"]) {\n params.delete(key);\n }\n const queryString = params.toString();\n return queryString ? `${baseUrl}?${queryString}` : baseUrl;\n}\n\nexport function getSubscriptionPreferences(internalName: string): string[] {\n const subscription = getSubscription(internalName);\n return subscription?.preference_identifiers || [];\n}\n\nexport async function updateSubscriptionPreferences(internalName: string): Promise<boolean> {\n const { preferenceToken } = newsletterStore.state;\n\n // Either preference token is needed or the user must be authenticated\n if (!preferenceToken && !newsletterStore.state.isAuthenticated) {\n logger.error(\"Preference token or authentication is required to update subscription preferences\");\n return false;\n }\n\n // Check if the subscription exists\n if (!isSubscribed(internalName)) {\n logger.error(`Cannot update preferences: not subscribed to newsletter '${internalName}'`);\n return false;\n }\n\n const authInstance = await Auth.getInstance();\n const idToken = await authInstance.getToken();\n\n const preferenceIdentifiers = newsletterStore.state.checkedNewsletters[internalName] || [];\n\n const response = await getUnidyClient().newsletters.updateSubscription(\n internalName,\n { preference_identifiers: preferenceIdentifiers },\n {\n preferenceToken,\n idToken: typeof idToken === \"string\" ? idToken : \"\",\n },\n );\n\n if (response.status === 401) {\n Flash.error.addMessage(t(\"newsletter.errors.unauthorized\"));\n newsletterLogout();\n return false;\n }\n\n if (response.success && response.data) {\n // Update the local subscription with the new preferences\n const subscriptionIndex = newsletterStore.state.existingSubscriptions.findIndex((sub) => sub.newsletter_internal_name === internalName);\n\n if (subscriptionIndex !== -1) {\n const updatedSubscriptions = [...newsletterStore.state.existingSubscriptions];\n updatedSubscriptions[subscriptionIndex] = {\n ...updatedSubscriptions[subscriptionIndex],\n preference_identifiers: response.data.preference_identifiers || [],\n };\n newsletterStore.state.existingSubscriptions = updatedSubscriptions;\n }\n\n Flash.success.addMessage(t(\"newsletter.success.preferences_updated\"));\n return true;\n }\n\n Flash.error.addMessage(t(\"errors.unknown\", { defaultValue: \"An unknown error occurred\" }));\n return false;\n}\n"]}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { createStore } from "@stencil/store";
|
|
2
|
-
const PERSIST_KEY_PREFIX = "unidy_newsletter_";
|
|
3
|
-
export const persist = (key) => {
|
|
4
|
-
sessionStorage.setItem(`${PERSIST_KEY_PREFIX}${key}`, newsletterStore.state[key]);
|
|
5
|
-
};
|
|
6
|
-
const getPersistedValue = (key) => {
|
|
7
|
-
return sessionStorage.getItem(`${PERSIST_KEY_PREFIX}${key}`);
|
|
8
|
-
};
|
|
9
|
-
const initialState = {
|
|
10
|
-
email: getPersistedValue("email") ?? "",
|
|
11
|
-
preferenceToken: getPersistedValue("preferenceToken") ?? "",
|
|
12
|
-
checkedNewsletters: {},
|
|
13
|
-
defaultPreferences: {},
|
|
14
|
-
fetchingSubscriptions: false,
|
|
15
|
-
existingSubscriptions: [],
|
|
16
|
-
errors: {},
|
|
17
|
-
isAuthenticated: false,
|
|
18
|
-
};
|
|
19
|
-
export const newsletterStore = createStore(initialState);
|
|
20
|
-
export const storeDefaultPreference = (internalName, preferenceIdentifier) => {
|
|
21
|
-
const current = newsletterStore.state.defaultPreferences[internalName] ?? new Set();
|
|
22
|
-
const updated = new Set(current);
|
|
23
|
-
updated.add(preferenceIdentifier);
|
|
24
|
-
newsletterStore.state.defaultPreferences = {
|
|
25
|
-
...newsletterStore.state.defaultPreferences,
|
|
26
|
-
[internalName]: updated,
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
export const reset = () => {
|
|
30
|
-
sessionStorage.removeItem(`${PERSIST_KEY_PREFIX}preferenceToken`);
|
|
31
|
-
sessionStorage.removeItem(`${PERSIST_KEY_PREFIX}email`);
|
|
32
|
-
newsletterStore.state = initialState;
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=newsletter-store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"newsletter-store.js","sourceRoot":"","sources":["../../../src/newsletter/store/newsletter-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAsC7C,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAE/C,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAgC,EAAE,EAAE;IAC1D,cAAc,CAAC,OAAO,CAAC,GAAG,kBAAkB,GAAG,GAAG,EAAE,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AACpF,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,GAAgC,EAAE,EAAE;IAC7D,OAAO,cAAc,CAAC,OAAO,CAAC,GAAG,kBAAkB,GAAG,GAAG,EAAE,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,MAAM,YAAY,GAAoB;IACpC,KAAK,EAAE,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE;IACvC,eAAe,EAAE,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,EAAE;IAC3D,kBAAkB,EAAE,EAAE;IACtB,kBAAkB,EAAE,EAAE;IAEtB,qBAAqB,EAAE,KAAK;IAC5B,qBAAqB,EAAE,EAAE;IAEzB,MAAM,EAAE,EAAE;IACV,eAAe,EAAE,KAAK;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAkB,YAAY,CAAC,CAAC;AAE1E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,YAAoC,EAAE,oBAA0C,EAAE,EAAE;IACzH,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;IACpF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAClC,eAAe,CAAC,KAAK,CAAC,kBAAkB,GAAG;QACzC,GAAG,eAAe,CAAC,KAAK,CAAC,kBAAkB;QAC3C,CAAC,YAAY,CAAC,EAAE,OAAO;KACxB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,GAAG,EAAE;IACxB,cAAc,CAAC,UAAU,CAAC,GAAG,kBAAkB,iBAAiB,CAAC,CAAC;IAClE,cAAc,CAAC,UAAU,CAAC,GAAG,kBAAkB,OAAO,CAAC,CAAC;IACxD,eAAe,CAAC,KAAK,GAAG,YAAY,CAAC;AACvC,CAAC,CAAC","sourcesContent":["import { createStore } from \"@stencil/store\";\n\nexport type NewsletterErrorIdentifier =\n | \"unconfirmed\"\n | \"already_subscribed\"\n | \"invalid_email\"\n | \"newsletter_not_found\"\n | \"preferences_not_found\"\n | \"invalid_preference_token\"\n | \"unknown\";\n\nexport type NewsletterInternalName = string;\nexport type PreferenceIdentifier = string;\n\nexport interface ExistingSubscription {\n newsletter_internal_name: NewsletterInternalName;\n confirmed: boolean;\n preference_identifiers: PreferenceIdentifier[];\n}\n\nexport type CheckedNewsletters = Record<NewsletterInternalName, PreferenceIdentifier[]>;\n\nexport type DefaultPreferences = Record<NewsletterInternalName, Set<PreferenceIdentifier>>;\n\ninterface NewsletterState {\n email: string;\n preferenceToken: string;\n checkedNewsletters: CheckedNewsletters;\n defaultPreferences: DefaultPreferences;\n\n fetchingSubscriptions: boolean;\n existingSubscriptions: ExistingSubscription[];\n\n errors: Record<string, NewsletterErrorIdentifier>;\n\n isAuthenticated: boolean;\n}\n\nconst PERSIST_KEY_PREFIX = \"unidy_newsletter_\";\n\nexport const persist = (key: \"email\" | \"preferenceToken\") => {\n sessionStorage.setItem(`${PERSIST_KEY_PREFIX}${key}`, newsletterStore.state[key]);\n};\n\nconst getPersistedValue = (key: \"email\" | \"preferenceToken\") => {\n return sessionStorage.getItem(`${PERSIST_KEY_PREFIX}${key}`);\n};\n\nconst initialState: NewsletterState = {\n email: getPersistedValue(\"email\") ?? \"\",\n preferenceToken: getPersistedValue(\"preferenceToken\") ?? \"\",\n checkedNewsletters: {},\n defaultPreferences: {},\n\n fetchingSubscriptions: false,\n existingSubscriptions: [],\n\n errors: {},\n isAuthenticated: false,\n};\n\nexport const newsletterStore = createStore<NewsletterState>(initialState);\n\nexport const storeDefaultPreference = (internalName: NewsletterInternalName, preferenceIdentifier: PreferenceIdentifier) => {\n const current = newsletterStore.state.defaultPreferences[internalName] ?? new Set();\n const updated = new Set(current);\n updated.add(preferenceIdentifier);\n newsletterStore.state.defaultPreferences = {\n ...newsletterStore.state.defaultPreferences,\n [internalName]: updated,\n };\n};\n\nexport const reset = () => {\n sessionStorage.removeItem(`${PERSIST_KEY_PREFIX}preferenceToken`);\n sessionStorage.removeItem(`${PERSIST_KEY_PREFIX}email`);\n newsletterStore.state = initialState;\n};\n"]}
|
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
import * as Sentry from "@sentry/browser";
|
|
2
|
-
import * as z from "zod";
|
|
3
|
-
const FieldType = z.enum(["text", "textarea", "number", "boolean", "select", "radio", "date", "datetime-local", "checkbox", "tel"]);
|
|
4
|
-
const BaseFieldDataSchema = z
|
|
5
|
-
.object({
|
|
6
|
-
required: z.boolean(),
|
|
7
|
-
label: z.string(),
|
|
8
|
-
attr_name: z.string(),
|
|
9
|
-
locked: z.boolean().optional(),
|
|
10
|
-
locked_text: z.string().optional(),
|
|
11
|
-
})
|
|
12
|
-
.strict();
|
|
13
|
-
const SelectOptionSchema = z
|
|
14
|
-
.object({
|
|
15
|
-
value: z.string(),
|
|
16
|
-
label: z.string(),
|
|
17
|
-
})
|
|
18
|
-
.strict();
|
|
19
|
-
const RadioValue = z.union([z.string(), z.literal("_NOT_SET_"), z.boolean()]).nullable();
|
|
20
|
-
const RadioOptionSchema = z
|
|
21
|
-
.object({
|
|
22
|
-
value: RadioValue,
|
|
23
|
-
label: z.string(),
|
|
24
|
-
checked: z.boolean(),
|
|
25
|
-
})
|
|
26
|
-
.strict();
|
|
27
|
-
const TextFieldSchema = BaseFieldDataSchema.extend({
|
|
28
|
-
value: z.union([z.string(), z.null()]),
|
|
29
|
-
type: z.enum(["text", "textarea"]),
|
|
30
|
-
}).strict();
|
|
31
|
-
const PhoneFieldSchema = BaseFieldDataSchema.extend({
|
|
32
|
-
value: z.union([z.string().nullable()]),
|
|
33
|
-
type: z.enum(["tel"]),
|
|
34
|
-
}).strict();
|
|
35
|
-
const RadioFieldSchema = BaseFieldDataSchema.extend({
|
|
36
|
-
value: RadioValue,
|
|
37
|
-
type: z.enum(["radio"]),
|
|
38
|
-
radio_options: z.array(RadioOptionSchema),
|
|
39
|
-
}).strict();
|
|
40
|
-
const SelectFieldSchema = BaseFieldDataSchema.extend({
|
|
41
|
-
value: z.string().nullable(),
|
|
42
|
-
type: z.enum(["select"]),
|
|
43
|
-
options: z.array(SelectOptionSchema),
|
|
44
|
-
}).strict();
|
|
45
|
-
const DateFieldSchema = BaseFieldDataSchema.extend({
|
|
46
|
-
value: z.union([z.string(), z.null()]),
|
|
47
|
-
type: z.enum(["date", "datetime-local"]),
|
|
48
|
-
}).strict();
|
|
49
|
-
const CustomFieldSchema = BaseFieldDataSchema.extend({
|
|
50
|
-
value: z.union([z.string(), z.null(), z.boolean(), z.number(), z.array(z.string())]),
|
|
51
|
-
type: FieldType,
|
|
52
|
-
readonly: z.boolean(),
|
|
53
|
-
radio_options: z.array(RadioOptionSchema).optional(),
|
|
54
|
-
options: z.array(SelectOptionSchema).optional(),
|
|
55
|
-
}).strict();
|
|
56
|
-
export const UserProfileSchema = z.object({
|
|
57
|
-
salutation: RadioFieldSchema,
|
|
58
|
-
first_name: TextFieldSchema,
|
|
59
|
-
last_name: TextFieldSchema,
|
|
60
|
-
email: TextFieldSchema,
|
|
61
|
-
phone_number: PhoneFieldSchema,
|
|
62
|
-
company_name: TextFieldSchema,
|
|
63
|
-
address_line_1: TextFieldSchema,
|
|
64
|
-
address_line_2: TextFieldSchema,
|
|
65
|
-
city: TextFieldSchema,
|
|
66
|
-
postal_code: TextFieldSchema,
|
|
67
|
-
country_code: SelectFieldSchema,
|
|
68
|
-
date_of_birth: DateFieldSchema,
|
|
69
|
-
preferred_language: TextFieldSchema.optional(),
|
|
70
|
-
custom_attributes: z.record(z.string(), CustomFieldSchema),
|
|
71
|
-
});
|
|
72
|
-
const UserProfileErrorSchema = z
|
|
73
|
-
.object({
|
|
74
|
-
error_identifier: z.string(),
|
|
75
|
-
})
|
|
76
|
-
.strict();
|
|
77
|
-
const FormErrorsValue = z.union([z.array(z.string()), z.array(z.tuple([z.number(), z.array(z.string())]))]);
|
|
78
|
-
const FormErrorsRawSchema = z.record(z.string(), FormErrorsValue);
|
|
79
|
-
const UserProfileFormErrorSchema = z
|
|
80
|
-
.object({
|
|
81
|
-
errors: FormErrorsRawSchema,
|
|
82
|
-
})
|
|
83
|
-
.strict()
|
|
84
|
-
.transform(({ errors }) => {
|
|
85
|
-
const flatErrors = Object.fromEntries(Object.entries(errors).map(([field, value]) => {
|
|
86
|
-
const errorMessages = Array.isArray(value) && value.length > 0 && typeof value[0] === "string"
|
|
87
|
-
? value
|
|
88
|
-
: value.flatMap(([, arr]) => arr);
|
|
89
|
-
return [field, errorMessages.join(" | ")];
|
|
90
|
-
}));
|
|
91
|
-
return { errors, flatErrors };
|
|
92
|
-
});
|
|
93
|
-
const UserProfileRailsFormErrorSchema = z
|
|
94
|
-
.object({
|
|
95
|
-
error_details: FormErrorsRawSchema,
|
|
96
|
-
})
|
|
97
|
-
.loose()
|
|
98
|
-
.transform(({ error_details }) => ({ errors: error_details }))
|
|
99
|
-
.pipe(UserProfileFormErrorSchema);
|
|
100
|
-
const ProfileResultSchema = z.union([
|
|
101
|
-
UserProfileSchema,
|
|
102
|
-
UserProfileErrorSchema,
|
|
103
|
-
UserProfileFormErrorSchema,
|
|
104
|
-
UserProfileRailsFormErrorSchema,
|
|
105
|
-
]);
|
|
106
|
-
export class ProfileService {
|
|
107
|
-
client;
|
|
108
|
-
constructor(client) {
|
|
109
|
-
this.client = client;
|
|
110
|
-
}
|
|
111
|
-
async fetchProfile({ idToken, lang }) {
|
|
112
|
-
if (!idToken) {
|
|
113
|
-
return { status: 401, success: false, headers: new Headers(), error: "missing id_token" };
|
|
114
|
-
}
|
|
115
|
-
try {
|
|
116
|
-
const resp = await this.client.get(`/api/sdk/v1/profile${lang ? `?lang=${lang}` : ""}`, { "X-ID-Token": idToken });
|
|
117
|
-
const parsed = ProfileResultSchema.safeParse(resp.data);
|
|
118
|
-
if (!parsed.success) {
|
|
119
|
-
return { status: 400, success: false, headers: new Headers(), error: "invalid profile data" };
|
|
120
|
-
}
|
|
121
|
-
const data = parsed.data;
|
|
122
|
-
if ("error_identifier" in data) {
|
|
123
|
-
return { ...resp, data, error: data.error_identifier };
|
|
124
|
-
}
|
|
125
|
-
return { ...resp, data };
|
|
126
|
-
}
|
|
127
|
-
catch (error) {
|
|
128
|
-
Sentry.captureException(error);
|
|
129
|
-
return {
|
|
130
|
-
status: error instanceof TypeError ? 0 : 500,
|
|
131
|
-
success: false,
|
|
132
|
-
headers: new Headers(),
|
|
133
|
-
error: error instanceof Error ? error.message : String(error),
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
async updateProfile({ idToken, data, lang }) {
|
|
138
|
-
if (!idToken) {
|
|
139
|
-
return { status: 401, success: false, headers: new Headers(), error: "missing id_token" };
|
|
140
|
-
}
|
|
141
|
-
const payload = data;
|
|
142
|
-
try {
|
|
143
|
-
const resp = await this.client.patch(`/api/sdk/v1/profile${lang ? `?lang=${lang}` : ""}`, { ...payload }, { "X-ID-Token": idToken });
|
|
144
|
-
const parsed = ProfileResultSchema.safeParse(resp.data);
|
|
145
|
-
if (!parsed.success) {
|
|
146
|
-
return { status: 400, success: false, headers: new Headers(), error: "invalid profile data" };
|
|
147
|
-
}
|
|
148
|
-
const result = parsed.data;
|
|
149
|
-
if ("errors" in result) {
|
|
150
|
-
return { ...resp, data: result };
|
|
151
|
-
}
|
|
152
|
-
if ("error_identifier" in result) {
|
|
153
|
-
return { ...resp, data: result, error: result.error_identifier };
|
|
154
|
-
}
|
|
155
|
-
return { ...resp, data: result };
|
|
156
|
-
}
|
|
157
|
-
catch (error) {
|
|
158
|
-
Sentry.captureException(error);
|
|
159
|
-
return {
|
|
160
|
-
status: error instanceof TypeError ? 0 : 500,
|
|
161
|
-
success: false,
|
|
162
|
-
headers: new Headers(),
|
|
163
|
-
error: error instanceof Error ? error.message : String(error),
|
|
164
|
-
};
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
//# sourceMappingURL=profile.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../src/profile/api/profile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAC1C,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAGzB,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;AAEpI,MAAM,mBAAmB,GAAG,CAAC;KAC1B,MAAM,CAAC;IACN,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC9B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,kBAAkB,GAAG,CAAC;KACzB,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEzF,MAAM,iBAAiB,GAAG,CAAC;KACxB,MAAM,CAAC;IACN,KAAK,EAAE,UAAU;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;CACrB,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACnC,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAClD,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;IACvC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;CACtB,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM,CAAC;IAClD,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IACvB,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;CAC1C,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;CACrC,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,CAAC;IACjD,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CACzC,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,MAAM,CAAC;IACnD,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACpF,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;IACpD,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,UAAU,EAAE,gBAAgB;IAC5B,UAAU,EAAE,eAAe;IAC3B,SAAS,EAAE,eAAe;IAC1B,KAAK,EAAE,eAAe;IACtB,YAAY,EAAE,gBAAgB;IAC9B,YAAY,EAAE,eAAe;IAC7B,cAAc,EAAE,eAAe;IAC/B,cAAc,EAAE,eAAe;IAC/B,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,eAAe;IAC5B,YAAY,EAAE,iBAAiB;IAC/B,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,eAAe,CAAC,QAAQ,EAAE;IAC9C,iBAAiB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,iBAAiB,CAAC;CAC3D,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;CAC7B,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE5G,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC;AAElE,MAAM,0BAA0B,GAAG,CAAC;KACjC,MAAM,CAAC;IACN,MAAM,EAAE,mBAAmB;CAC5B,CAAC;KACD,MAAM,EAAE;KACR,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;IACxB,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CACnC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE;QAC5C,MAAM,aAAa,GACjB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ;YACtE,CAAC,CAAE,KAAkB;YACrB,CAAC,CAAE,KAAmC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QACrE,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC,CACH,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;AAChC,CAAC,CAAC,CAAC;AAEL,MAAM,+BAA+B,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,aAAa,EAAE,mBAAmB;CACnC,CAAC;KACD,KAAK,EAAE;KACP,SAAS,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;KAC7D,IAAI,CAAC,0BAA0B,CAAC,CAAC;AAMpC,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC;IAClC,iBAAiB;IACjB,sBAAsB;IACtB,0BAA0B;IAC1B,+BAA+B;CAChC,CAAC,CAAC;AAaH,MAAM,OAAO,cAAc;IACL;IAApB,YAAoB,MAAiB;QAAjB,WAAM,GAAN,MAAM,CAAW;IAAG,CAAC;IAEzC,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAoB;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAC5F,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAU,sBAAsB,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;YAE5H,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;YAChG,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YAEzB,IAAI,kBAAkB,IAAI,IAAI,EAAE,CAAC;gBAC/B,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzD,CAAC;YAED,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC/B,OAAO;gBACL,MAAM,EAAE,KAAK,YAAY,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;gBAC5C,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,IAAI,OAAO,EAAE;gBACtB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAqB;QAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAC5F,CAAC;QAED,MAAM,OAAO,GAAG,IAAc,CAAC;QAE/B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAClC,sBAAsB,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EACnD,EAAE,GAAG,OAAO,EAAE,EACd,EAAE,YAAY,EAAE,OAAO,EAAE,CAC1B,CAAC;YAEF,MAAM,MAAM,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,OAAO,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;YAChG,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;YAE3B,IAAI,QAAQ,IAAI,MAAM,EAAE,CAAC;gBACvB,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACnC,CAAC;YAED,IAAI,kBAAkB,IAAI,MAAM,EAAE,CAAC;gBACjC,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACnE,CAAC;YAED,OAAO,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC/B,OAAO;gBACL,MAAM,EAAE,KAAK,YAAY,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;gBAC5C,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,IAAI,OAAO,EAAE;gBACtB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC;QACJ,CAAC;IACH,CAAC;CACF","sourcesContent":["import * as Sentry from \"@sentry/browser\";\nimport * as z from \"zod\";\nimport type { ApiClient, ApiResponse } from \"../../api\";\n\nconst FieldType = z.enum([\"text\", \"textarea\", \"number\", \"boolean\", \"select\", \"radio\", \"date\", \"datetime-local\", \"checkbox\", \"tel\"]);\n\nconst BaseFieldDataSchema = z\n .object({\n required: z.boolean(),\n label: z.string(),\n attr_name: z.string(),\n locked: z.boolean().optional(),\n locked_text: z.string().optional(),\n })\n .strict();\n\nconst SelectOptionSchema = z\n .object({\n value: z.string(),\n label: z.string(),\n })\n .strict();\n\nconst RadioValue = z.union([z.string(), z.literal(\"_NOT_SET_\"), z.boolean()]).nullable();\n\nconst RadioOptionSchema = z\n .object({\n value: RadioValue,\n label: z.string(),\n checked: z.boolean(),\n })\n .strict();\n\nconst TextFieldSchema = BaseFieldDataSchema.extend({\n value: z.union([z.string(), z.null()]),\n type: z.enum([\"text\", \"textarea\"]),\n}).strict();\n\nconst PhoneFieldSchema = BaseFieldDataSchema.extend({\n value: z.union([z.string().nullable()]),\n type: z.enum([\"tel\"]),\n}).strict();\n\nconst RadioFieldSchema = BaseFieldDataSchema.extend({\n value: RadioValue,\n type: z.enum([\"radio\"]),\n radio_options: z.array(RadioOptionSchema),\n}).strict();\n\nconst SelectFieldSchema = BaseFieldDataSchema.extend({\n value: z.string().nullable(),\n type: z.enum([\"select\"]),\n options: z.array(SelectOptionSchema),\n}).strict();\n\nconst DateFieldSchema = BaseFieldDataSchema.extend({\n value: z.union([z.string(), z.null()]),\n type: z.enum([\"date\", \"datetime-local\"]),\n}).strict();\n\nconst CustomFieldSchema = BaseFieldDataSchema.extend({\n value: z.union([z.string(), z.null(), z.boolean(), z.number(), z.array(z.string())]),\n type: FieldType,\n readonly: z.boolean(),\n radio_options: z.array(RadioOptionSchema).optional(),\n options: z.array(SelectOptionSchema).optional(),\n}).strict();\n\nexport const UserProfileSchema = z.object({\n salutation: RadioFieldSchema,\n first_name: TextFieldSchema,\n last_name: TextFieldSchema,\n email: TextFieldSchema,\n phone_number: PhoneFieldSchema,\n company_name: TextFieldSchema,\n address_line_1: TextFieldSchema,\n address_line_2: TextFieldSchema,\n city: TextFieldSchema,\n postal_code: TextFieldSchema,\n country_code: SelectFieldSchema,\n date_of_birth: DateFieldSchema,\n preferred_language: TextFieldSchema.optional(),\n custom_attributes: z.record(z.string(), CustomFieldSchema),\n});\n\nconst UserProfileErrorSchema = z\n .object({\n error_identifier: z.string(),\n })\n .strict();\n\nconst FormErrorsValue = z.union([z.array(z.string()), z.array(z.tuple([z.number(), z.array(z.string())]))]);\n\nconst FormErrorsRawSchema = z.record(z.string(), FormErrorsValue);\n\nconst UserProfileFormErrorSchema = z\n .object({\n errors: FormErrorsRawSchema,\n })\n .strict()\n .transform(({ errors }) => {\n const flatErrors = Object.fromEntries(\n Object.entries(errors).map(([field, value]) => {\n const errorMessages =\n Array.isArray(value) && value.length > 0 && typeof value[0] === \"string\"\n ? (value as string[])\n : (value as Array<[number, string[]]>).flatMap(([, arr]) => arr);\n return [field, errorMessages.join(\" | \")];\n }),\n );\n return { errors, flatErrors };\n });\n\nconst UserProfileRailsFormErrorSchema = z\n .object({\n error_details: FormErrorsRawSchema,\n })\n .loose()\n .transform(({ error_details }) => ({ errors: error_details }))\n .pipe(UserProfileFormErrorSchema);\n\nexport type UserProfileData = z.infer<typeof UserProfileSchema>;\nexport type UserProfileError = z.infer<typeof UserProfileErrorSchema>;\nexport type UserProfileFormError = z.infer<typeof UserProfileFormErrorSchema>;\n\nconst ProfileResultSchema = z.union([\n UserProfileSchema,\n UserProfileErrorSchema,\n UserProfileFormErrorSchema,\n UserProfileRailsFormErrorSchema,\n]);\n\nexport type ProfileResult = UserProfileData | UserProfileError | UserProfileFormError | Record<string, string>;\n\ndeclare global {\n interface Window {\n UNIDY?: { auth?: { id_token?: string } };\n }\n}\n\ntype FetchProfileArgs = { idToken: string; lang?: string };\ntype UpdateProfileArgs = { idToken: string; data: unknown; lang?: string };\n\nexport class ProfileService {\n constructor(private client: ApiClient) {}\n\n async fetchProfile({ idToken, lang }: FetchProfileArgs): Promise<ApiResponse<ProfileResult>> {\n if (!idToken) {\n return { status: 401, success: false, headers: new Headers(), error: \"missing id_token\" };\n }\n\n try {\n const resp = await this.client.get<unknown>(`/api/sdk/v1/profile${lang ? `?lang=${lang}` : \"\"}`, { \"X-ID-Token\": idToken });\n\n const parsed = ProfileResultSchema.safeParse(resp.data);\n if (!parsed.success) {\n return { status: 400, success: false, headers: new Headers(), error: \"invalid profile data\" };\n }\n\n const data = parsed.data;\n\n if (\"error_identifier\" in data) {\n return { ...resp, data, error: data.error_identifier };\n }\n\n return { ...resp, data };\n } catch (error) {\n Sentry.captureException(error);\n return {\n status: error instanceof TypeError ? 0 : 500,\n success: false,\n headers: new Headers(),\n error: error instanceof Error ? error.message : String(error),\n };\n }\n }\n\n async updateProfile({ idToken, data, lang }: UpdateProfileArgs): Promise<ApiResponse<ProfileResult>> {\n if (!idToken) {\n return { status: 401, success: false, headers: new Headers(), error: \"missing id_token\" };\n }\n\n const payload = data as object;\n\n try {\n const resp = await this.client.patch<unknown>(\n `/api/sdk/v1/profile${lang ? `?lang=${lang}` : \"\"}`,\n { ...payload },\n { \"X-ID-Token\": idToken },\n );\n\n const parsed = ProfileResultSchema.safeParse(resp.data);\n if (!parsed.success) {\n return { status: 400, success: false, headers: new Headers(), error: \"invalid profile data\" };\n }\n\n const result = parsed.data;\n\n if (\"errors\" in result) {\n return { ...resp, data: result };\n }\n\n if (\"error_identifier\" in result) {\n return { ...resp, data: result, error: result.error_identifier };\n }\n\n return { ...resp, data: result };\n } catch (error) {\n Sentry.captureException(error);\n return {\n status: error instanceof TypeError ? 0 : 500,\n success: false,\n headers: new Headers(),\n error: error instanceof Error ? error.message : String(error),\n };\n }\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
/*! tailwindcss v4.1.17 | 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\:flex{display:flex}.u\:justify-end{justify-content:flex-end}} /*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer base{}@layer components,utilities; /*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer base{}@layer components,utilities; /*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer base{}@layer components,utilities; /*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer base{}@layer components,utilities; /*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer base{}@layer components,utilities; /*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@layer base{}@layer components,utilities; /*! tailwindcss v4.1.17 | 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{.block{display:block}.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)}}:host{display:block}.field-error:focus{border-color:red;outline-color:red}.multi-select-readonly-container{list-style:none}.multi-select-readonly-container li{display:inline-block}[part=input]:disabled,[part=select]:disabled{cursor:not-allowed}@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}
|