@ebrains/components 3.1.0 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/color-primary-palette_6.cjs.entry.js +14 -14
- package/dist/cjs/components-section.cjs.entry.js +1 -1
- package/dist/cjs/components.cjs.js +1 -1
- package/dist/cjs/correct-use-of-colors.cjs.entry.js +1 -1
- package/dist/cjs/docs-palettes.cjs.entry.js +1 -1
- package/dist/cjs/docs-tokens.cjs.entry.js +1 -1
- package/dist/cjs/eds-accordion_53.cjs.entry.js +367 -248
- package/dist/cjs/eds-app-root.cjs.entry.js +1 -1
- package/dist/cjs/eds-cookies-preference.cjs.entry.js +1 -1
- package/dist/cjs/eds-frame.cjs.entry.js +1 -1
- package/dist/cjs/eds-gitlab-contributors.cjs.entry.js +26 -30
- package/dist/cjs/eds-icon-bluesky.cjs.entry.js +1 -1
- package/dist/cjs/eds-icon-eu.cjs.entry.js +1 -1
- package/dist/cjs/eds-icon-facebook.cjs.entry.js +1 -1
- package/dist/cjs/eds-icon-gitlab.cjs.entry.js +1 -1
- package/dist/cjs/eds-icon-linkedin.cjs.entry.js +1 -1
- package/dist/cjs/eds-icon-mastodon.cjs.entry.js +1 -1
- package/dist/cjs/eds-icon-twitter.cjs.entry.js +1 -1
- package/dist/cjs/eds-icon-youtube.cjs.entry.js +1 -1
- package/dist/cjs/eds-input-search.cjs.entry.js +1 -1
- package/dist/cjs/eds-modal.cjs.entry.js +18 -9
- package/dist/cjs/eds-pie.cjs.entry.js +2 -2
- package/dist/cjs/eds-section-core_2.cjs.entry.js +3 -3
- package/dist/cjs/eds-timeline.cjs.entry.js +1 -1
- package/dist/cjs/eds-toast-manager.cjs.entry.js +1 -1
- package/dist/cjs/eds-trl-badge.cjs.entry.js +14 -11
- package/dist/cjs/incorrect-use-of-colors.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/logo-space.cjs.entry.js +58 -1
- package/dist/cjs/logo-variations-horizontal_2.cjs.entry.js +2 -2
- package/dist/cjs/logo-variations-tabs.cjs.entry.js +1 -1
- package/dist/cjs/logo-wrong-usage.cjs.entry.js +1 -1
- package/dist/cjs/svg-repository.cjs.entry.js +1 -1
- package/dist/cjs/token-list_3.cjs.entry.js +3 -3
- package/dist/cjs/token-ratios.cjs.entry.js +1 -1
- package/dist/cjs/token-spacing.cjs.entry.js +1 -1
- package/dist/cjs/token-typography.cjs.entry.js +8 -2
- package/dist/collection/components/eds-accordion/eds-accordion.js +2 -5
- package/dist/collection/components/eds-alert/eds-alert.css +14 -0
- package/dist/collection/components/eds-alert/eds-alert.js +2 -1
- package/dist/collection/components/eds-button/eds-button.js +6 -10
- package/dist/collection/components/eds-button/eds-button.stories.js +4 -1
- package/dist/collection/components/eds-cards/eds-card-app/eds-card-app.js +2 -5
- package/dist/collection/components/eds-cards/eds-card-composer/eds-card-title/eds-card-title.js +1 -1
- package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.js +2 -5
- package/dist/collection/components/eds-cards/eds-card-cta/eds-card-cta.stories.js +4 -1
- package/dist/collection/components/eds-cards/eds-card-feature/eds-card-feature.js +2 -5
- package/dist/collection/components/eds-cards/eds-card-generic/eds-card-generic.js +2 -4
- package/dist/collection/components/eds-cards/eds-card-hero/eds-card-hero.js +6 -7
- package/dist/collection/components/eds-cards/eds-card-stat/eds-card-stat.js +6 -7
- package/dist/collection/components/eds-charts/eds-pie/eds-pie.js +2 -2
- package/dist/collection/components/eds-code-block/eds-code-block.css +72 -106
- package/dist/collection/components/eds-code-block/eds-code-block.js +1 -1
- package/dist/collection/components/eds-footer/eds-footer.js +23 -18
- package/dist/collection/components/eds-footer/eds-footer.stories.js +3 -4
- package/dist/collection/components/eds-form/eds-form.css +456 -0
- package/dist/collection/components/eds-form/eds-form.js +218 -14
- package/dist/collection/components/eds-form/eds-form.stories.js +110 -3
- package/dist/collection/components/eds-frame/eds-frame.js +1 -1
- package/dist/collection/components/eds-header/eds-header.js +1 -1
- package/dist/collection/components/eds-icons/eds-icon-eu/eds-icon-eu.js +1 -1
- package/dist/collection/components/eds-icons/eds-icon-gitlab/eds-icon-gitlab.js +1 -1
- package/dist/collection/components/eds-icons/social/eds-icon-bluesky/eds-icon-bluesky.js +1 -1
- package/dist/collection/components/eds-icons/social/eds-icon-facebook/eds-icon-facebook.js +1 -1
- package/dist/collection/components/eds-icons/social/eds-icon-linkedin/eds-icon-linkedin.js +1 -1
- package/dist/collection/components/eds-icons/social/eds-icon-mastodon/eds-icon-mastodon.js +1 -1
- package/dist/collection/components/eds-icons/social/eds-icon-twitter/eds-icon-twitter.js +1 -1
- package/dist/collection/components/eds-icons/social/eds-icon-youtube/eds-icon-youtube.js +1 -1
- package/dist/collection/components/eds-img/eds-img.js +2 -2
- package/dist/collection/components/eds-input-dropzone/eds-input-dropzone.js +7 -4
- package/dist/collection/components/eds-input-elements/eds-input/eds-input.js +2 -2
- package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.css +10 -0
- package/dist/collection/components/eds-input-elements/eds-input-footer/eds-input-footer.js +1 -1
- package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.css +17 -5
- package/dist/collection/components/eds-input-elements/eds-input-label/eds-input-label.js +1 -1
- package/dist/collection/components/eds-input-elements/eds-input-range/eds-input-range.js +15 -5
- package/dist/collection/components/eds-input-elements/eds-input-search/eds-input-search.js +1 -1
- package/dist/collection/components/eds-input-elements/eds-input-select/eds-input-select.js +6 -2
- package/dist/collection/components/eds-input-field/eds-input-field.css +219 -0
- package/dist/collection/components/eds-input-field/eds-input-field.js +7 -2
- package/dist/collection/components/eds-input-field/eds-input-field.stories.js +35 -7
- package/dist/collection/components/eds-input-file/eds-input-file.js +5 -3
- package/dist/collection/components/eds-link/eds-link.js +4 -8
- package/dist/collection/components/eds-logo/eds-logo.js +13 -66
- package/dist/collection/components/eds-logo/eds-logo.stories.js +36 -17
- package/dist/collection/components/eds-modal/eds-modal.js +18 -9
- package/dist/collection/components/eds-modal/eds-modal.stories.js +3 -1
- package/dist/collection/components/eds-nps/eds-nps.js +2 -2
- package/dist/collection/components/eds-pagination/eds-pagination.js +1 -1
- package/dist/collection/components/eds-progress-bar/eds-progress-bar.js +1 -8
- package/dist/collection/components/eds-rating/eds-rating.js +1 -1
- package/dist/collection/components/eds-section/eds-section-core/eds-section-core.js +1 -1
- package/dist/collection/components/eds-section/eds-section-heading/eds-section-heading.js +2 -2
- package/dist/collection/components/eds-social-networks/eds-social-networks.js +1 -1
- package/dist/collection/components/eds-spinner/eds-spinner.js +1 -1
- package/dist/collection/components/eds-steps/eds-steps.css +56 -25
- package/dist/collection/components/eds-steps/eds-steps.js +27 -7
- package/dist/collection/components/eds-steps-v2/eds-steps-v2.css +93 -28
- package/dist/collection/components/eds-steps-v2/eds-steps-v2.js +57 -10
- package/dist/collection/components/eds-steps-v2/eds-steps-v2.stories.js +80 -17
- package/dist/collection/components/eds-switch/eds-switch.css +26 -3
- package/dist/collection/components/eds-switch/eds-switch.js +10 -7
- package/dist/collection/components/eds-switch/eds-switch.stories.js +20 -1
- package/dist/collection/components/eds-table/eds-table.js +1 -3
- package/dist/collection/components/eds-table/eds-table.stories.js +2 -6
- package/dist/collection/components/eds-tabs/eds-tabs.js +4 -11
- package/dist/collection/components/eds-tabs/eds-tabs.stories.js +2 -2
- package/dist/collection/components/eds-tag/eds-tag.js +1 -1
- package/dist/collection/components/eds-timeline/eds-timeline.js +1 -1
- package/dist/collection/components/eds-toast/eds-toast.css +146 -0
- package/dist/collection/components/eds-toast/eds-toast.js +106 -4
- package/dist/collection/components/eds-toast/eds-toast.stories.js +102 -5
- package/dist/collection/components/eds-toast-manager/eds-toast-manager.js +1 -1
- package/dist/collection/components/eds-tooltip/eds-tooltip.js +1 -1
- package/dist/collection/components/eds-tooltip/eds-tooltip.stories.js +7 -1
- package/dist/collection/components/eds-user/eds-user.js +2 -5
- package/dist/collection/components/eds-user/eds-user.stories.js +8 -11
- package/dist/collection/eds-docs-ui/colors/color-palette/primary.js +1 -1
- package/dist/collection/eds-docs-ui/colors/color-palette/secondary.js +1 -1
- package/dist/collection/eds-docs-ui/colors/color-palette/support.js +1 -1
- package/dist/collection/eds-docs-ui/colors/gradient-palette/primary.js +1 -1
- package/dist/collection/eds-docs-ui/colors/gradient-palette/secondary.js +7 -7
- package/dist/collection/eds-docs-ui/colors/gradient-palette/support.js +3 -3
- package/dist/collection/eds-docs-ui/colors/use-of-colors/correct-use-of-colors.js +1 -1
- package/dist/collection/eds-docs-ui/colors/use-of-colors/incorrect-use-of-colors.js +1 -1
- package/dist/collection/eds-docs-ui/components-section/components-section.js +1 -1
- package/dist/collection/eds-docs-ui/design-tokens/docs-tokens/docs-tokens.js +1 -1
- package/dist/collection/eds-docs-ui/design-tokens/token-list/token-list.js +1 -1
- package/dist/collection/eds-docs-ui/design-tokens/token-radii/token-radii.js +1 -1
- package/dist/collection/eds-docs-ui/design-tokens/token-ratios/token-ratios.js +1 -1
- package/dist/collection/eds-docs-ui/design-tokens/token-shadows/token-shadows.js +1 -1
- package/dist/collection/eds-docs-ui/design-tokens/token-spacing/token-spacing.js +1 -1
- package/dist/collection/eds-docs-ui/design-tokens/token-typography/token-typography.js +8 -2
- package/dist/collection/eds-docs-ui/docs-palettes/docs-palettes.js +1 -1
- package/dist/collection/eds-docs-ui/logo/logo-space/logo-space.js +58 -1
- package/dist/collection/eds-docs-ui/logo/logo-variations/horizontal/logo-variations-horizontal.js +1 -1
- package/dist/collection/eds-docs-ui/logo/logo-variations/vertical/logo-variations-vertical.js +1 -1
- package/dist/collection/eds-docs-ui/logo/logo-variations-tabs/logo-variations.js +1 -1
- package/dist/collection/eds-docs-ui/logo/logo-wrong-usage/logo-wrong-usage.js +1 -1
- package/dist/collection/eds-docs-ui/svg-repository/svg-repository.js +1 -1
- package/dist/collection/shared-ui/eds-cookies-preference/eds-cookies-preference.js +1 -1
- package/dist/collection/shared-ui/eds-gitlab-contributors/eds-gitlab-contributors.js +26 -30
- package/dist/collection/shared-ui/eds-global-search/eds-global-search.js +18 -12
- package/dist/collection/shared-ui/eds-kg-learning-resources/eds-kg-learning-resources.js +15 -19
- package/dist/collection/shared-ui/eds-kg-web-services-select/eds-kg-web-services-select.js +2 -2
- package/dist/collection/shared-ui/eds-kg-web-services-select/eds-kg-web-services-select.stories.js +1 -3
- package/dist/collection/shared-ui/eds-matomo-notice/eds-matomo-notice.stories.js +1 -1
- package/dist/collection/shared-ui/eds-search-select/eds-search-select.css +11 -1
- package/dist/collection/shared-ui/eds-search-select/eds-search-select.js +37 -16
- package/dist/collection/shared-ui/eds-search-select/eds-search-select.stories.js +10 -5
- package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.js +14 -11
- package/dist/collection/shared-ui/eds-trl-badge/eds-trl-badge.stories.js +4 -1
- package/dist/collection/shared-ui/examples/eds-app-root/eds-app-root.js +1 -1
- package/dist/collection/utils/eds-form/safeFormat.js +1 -5
- package/dist/components/components-section.js +1 -1
- package/dist/components/components.css +9 -7
- package/dist/components/components.esm.js +1 -1
- package/dist/components/correct-use-of-colors.js +1 -1
- package/dist/components/docs-palettes.js +1 -1
- package/dist/components/docs-tokens.js +1 -1
- package/dist/components/eds-accordion2.js +2 -5
- package/dist/components/eds-alert2.js +3 -2
- package/dist/components/eds-app-root.js +1 -1
- package/dist/components/eds-button2.js +5 -9
- package/dist/components/eds-card-app.js +2 -5
- package/dist/components/eds-card-cta.js +2 -5
- package/dist/components/eds-card-feature.js +2 -5
- package/dist/components/eds-card-generic2.js +2 -4
- package/dist/components/eds-card-hero.js +6 -7
- package/dist/components/eds-card-stat.js +6 -7
- package/dist/components/eds-card-title2.js +1 -1
- package/dist/components/eds-code-block2.js +2 -2
- package/dist/components/eds-cookies-preference.js +1 -1
- package/dist/components/eds-footer2.js +23 -18
- package/dist/components/eds-form.js +101 -38
- package/dist/components/eds-frame.js +1 -1
- package/dist/components/eds-gitlab-contributors.js +26 -30
- package/dist/components/eds-global-search.js +18 -12
- package/dist/components/eds-header.js +1 -1
- package/dist/components/eds-icon-bluesky.js +1 -1
- package/dist/components/eds-icon-eu.js +1 -1
- package/dist/components/eds-icon-facebook.js +1 -1
- package/dist/components/eds-icon-gitlab.js +1 -1
- package/dist/components/eds-icon-linkedin.js +1 -1
- package/dist/components/eds-icon-mastodon.js +1 -1
- package/dist/components/eds-icon-twitter.js +1 -1
- package/dist/components/eds-icon-youtube.js +1 -1
- package/dist/components/eds-img2.js +2 -2
- package/dist/components/eds-input-dropzone2.js +7 -4
- package/dist/components/eds-input-field2.js +8 -3
- package/dist/components/eds-input-file2.js +5 -3
- package/dist/components/eds-input-footer2.js +3 -7
- package/dist/components/eds-input-label2.js +2 -2
- package/dist/components/eds-input-range2.js +15 -5
- package/dist/components/eds-input-search.js +1 -1
- package/dist/components/eds-input-select2.js +6 -2
- package/dist/components/eds-input2.js +2 -2
- package/dist/components/eds-kg-learning-resources.js +15 -19
- package/dist/components/eds-kg-web-services-select2.js +2 -2
- package/dist/components/eds-link2.js +3 -7
- package/dist/components/eds-logo2.js +4 -22
- package/dist/components/eds-modal.js +18 -9
- package/dist/components/eds-nps2.js +2 -2
- package/dist/components/eds-pagination2.js +1 -1
- package/dist/components/eds-pie.js +2 -2
- package/dist/components/eds-progress-bar.js +1 -8
- package/dist/components/eds-rating2.js +1 -1
- package/dist/components/eds-search-select2.js +38 -17
- package/dist/components/eds-section-core2.js +1 -1
- package/dist/components/eds-section-heading2.js +2 -2
- package/dist/components/eds-social-networks2.js +1 -1
- package/dist/components/eds-spinner2.js +1 -1
- package/dist/components/eds-steps-v2.js +41 -11
- package/dist/components/eds-steps2.js +28 -8
- package/dist/components/eds-switch2.js +8 -5
- package/dist/components/eds-table2.js +1 -3
- package/dist/components/eds-tabs.js +4 -11
- package/dist/components/eds-tag2.js +1 -1
- package/dist/components/eds-timeline.js +1 -1
- package/dist/components/eds-toast-manager.js +1 -1
- package/dist/components/eds-toast2.js +39 -3
- package/dist/components/eds-tooltip2.js +1 -1
- package/dist/components/eds-trl-badge.js +14 -11
- package/dist/components/eds-user.js +1 -4
- package/dist/components/incorrect-use-of-colors.js +1 -1
- package/dist/components/logo-space.js +58 -1
- package/dist/components/logo-variations-horizontal2.js +1 -1
- package/dist/components/logo-variations-tabs.js +1 -1
- package/dist/components/logo-variations-vertical2.js +1 -1
- package/dist/components/logo-wrong-usage.js +1 -1
- package/dist/components/{p-d59d6fda.entry.js → p-05e96609.entry.js} +1 -1
- package/dist/components/p-0d778d10.entry.js +1 -0
- package/dist/components/{p-62f53e7a.entry.js → p-114f6d54.entry.js} +1 -1
- package/dist/components/p-1534204d.entry.js +1 -0
- package/dist/components/p-337d4ee3.entry.js +9 -0
- package/dist/components/p-340bc935.entry.js +1 -0
- package/dist/components/p-39dbb964.entry.js +1 -0
- package/dist/components/{p-25729ade.entry.js → p-3f66bc26.entry.js} +1 -1
- package/dist/components/p-43f9e64f.entry.js +1 -0
- package/dist/components/p-46cc6c1a.entry.js +1 -0
- package/dist/components/{p-e9e6ec19.entry.js → p-4b8a7979.entry.js} +1 -1
- package/dist/components/{p-bdcb71e1.entry.js → p-6b94b2ec.entry.js} +1 -1
- package/dist/components/p-6d965fef.entry.js +1 -0
- package/dist/components/{p-62580004.entry.js → p-6e370182.entry.js} +1 -1
- package/dist/components/p-6ffe581c.entry.js +1 -0
- package/dist/components/{p-e027bc90.entry.js → p-726637b1.entry.js} +1 -1
- package/dist/components/{p-8a483358.entry.js → p-86ccc09f.entry.js} +1 -1
- package/dist/components/{p-e71a4f29.entry.js → p-8755a21b.entry.js} +1 -1
- package/dist/components/{p-e4df206e.entry.js → p-8ab461e2.entry.js} +1 -1
- package/dist/components/p-8cb162b8.entry.js +1 -0
- package/dist/components/p-8cdbc280.entry.js +1 -0
- package/dist/components/{p-42791331.entry.js → p-8e034c4e.entry.js} +1 -1
- package/dist/components/p-9f649fa3.entry.js +1 -0
- package/dist/components/{p-f9a9fa34.entry.js → p-a26dad9b.entry.js} +1 -1
- package/dist/components/p-a2d6a9ca.entry.js +1 -0
- package/dist/components/p-afabe1be.entry.js +1 -0
- package/dist/components/{p-1fbcc480.entry.js → p-b1519098.entry.js} +1 -1
- package/dist/components/{p-12acc48d.entry.js → p-b4023b45.entry.js} +1 -1
- package/dist/components/p-c53b3563.entry.js +1 -0
- package/dist/components/p-c7d612d1.entry.js +1 -0
- package/dist/components/p-dc9aef22.entry.js +1 -0
- package/dist/components/{p-e339d0b5.entry.js → p-f66a7cf9.entry.js} +1 -1
- package/dist/components/{p-80a32e20.entry.js → p-f97f62f2.entry.js} +1 -1
- package/dist/components/primary.js +1 -1
- package/dist/components/primary2.js +1 -1
- package/dist/components/secondary.js +1 -1
- package/dist/components/secondary2.js +7 -7
- package/dist/components/support.js +1 -1
- package/dist/components/support2.js +3 -3
- package/dist/components/svg-repository.js +1 -1
- package/dist/components/token-list2.js +1 -1
- package/dist/components/token-radii2.js +1 -1
- package/dist/components/token-ratios.js +1 -1
- package/dist/components/token-shadows2.js +1 -1
- package/dist/components/token-spacing.js +1 -1
- package/dist/components/token-typography.js +8 -2
- package/dist/esm/color-primary-palette_6.entry.js +14 -14
- package/dist/esm/components-section.entry.js +1 -1
- package/dist/esm/components.js +1 -1
- package/dist/esm/correct-use-of-colors.entry.js +1 -1
- package/dist/esm/docs-palettes.entry.js +1 -1
- package/dist/esm/docs-tokens.entry.js +1 -1
- package/dist/esm/eds-accordion_53.entry.js +367 -248
- package/dist/esm/eds-app-root.entry.js +1 -1
- package/dist/esm/eds-cookies-preference.entry.js +1 -1
- package/dist/esm/eds-frame.entry.js +1 -1
- package/dist/esm/eds-gitlab-contributors.entry.js +26 -30
- package/dist/esm/eds-icon-bluesky.entry.js +1 -1
- package/dist/esm/eds-icon-eu.entry.js +1 -1
- package/dist/esm/eds-icon-facebook.entry.js +1 -1
- package/dist/esm/eds-icon-gitlab.entry.js +1 -1
- package/dist/esm/eds-icon-linkedin.entry.js +1 -1
- package/dist/esm/eds-icon-mastodon.entry.js +1 -1
- package/dist/esm/eds-icon-twitter.entry.js +1 -1
- package/dist/esm/eds-icon-youtube.entry.js +1 -1
- package/dist/esm/eds-input-search.entry.js +1 -1
- package/dist/esm/eds-modal.entry.js +18 -9
- package/dist/esm/eds-pie.entry.js +2 -2
- package/dist/esm/eds-section-core_2.entry.js +3 -3
- package/dist/esm/eds-timeline.entry.js +1 -1
- package/dist/esm/eds-toast-manager.entry.js +1 -1
- package/dist/esm/eds-trl-badge.entry.js +14 -11
- package/dist/esm/incorrect-use-of-colors.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/logo-space.entry.js +58 -1
- package/dist/esm/logo-variations-horizontal_2.entry.js +2 -2
- package/dist/esm/logo-variations-tabs.entry.js +1 -1
- package/dist/esm/logo-wrong-usage.entry.js +1 -1
- package/dist/esm/svg-repository.entry.js +1 -1
- package/dist/esm/token-list_3.entry.js +3 -3
- package/dist/esm/token-ratios.entry.js +1 -1
- package/dist/esm/token-spacing.entry.js +1 -1
- package/dist/esm/token-typography.entry.js +8 -2
- package/dist/hydrate/index.js +572 -368
- package/dist/hydrate/index.mjs +572 -368
- package/dist/types/components/eds-form/eds-form.d.ts +56 -0
- package/dist/types/components/eds-form/eds-form.stories.d.ts +63 -0
- package/dist/types/components/eds-logo/eds-logo.d.ts +11 -28
- package/dist/types/components/eds-logo/eds-logo.stories.d.ts +22 -2
- package/dist/types/components/eds-steps/eds-steps.d.ts +7 -0
- package/dist/types/components/eds-steps-v2/eds-steps-v2.d.ts +14 -1
- package/dist/types/components/eds-steps-v2/eds-steps-v2.stories.d.ts +40 -9
- package/dist/types/components/eds-switch/eds-switch.d.ts +6 -2
- package/dist/types/components/eds-switch/eds-switch.stories.d.ts +8 -0
- package/dist/types/components/eds-toast/eds-toast.d.ts +33 -1
- package/dist/types/components/eds-toast/eds-toast.stories.d.ts +49 -1
- package/dist/types/components/eds-user/eds-user.d.ts +0 -2
- package/dist/types/components/eds-user/eds-user.stories.d.ts +5 -9
- package/dist/types/components.d.ts +210 -60
- package/package.json +1 -1
- package/dist/components/p-00ba405d.entry.js +0 -1
- package/dist/components/p-03342030.entry.js +0 -1
- package/dist/components/p-0e2bac0f.entry.js +0 -1
- package/dist/components/p-18399fe1.entry.js +0 -1
- package/dist/components/p-1e6f0572.entry.js +0 -1
- package/dist/components/p-27e093c3.entry.js +0 -1
- package/dist/components/p-3d1bb2fe.entry.js +0 -1
- package/dist/components/p-5ff4b1d0.entry.js +0 -1
- package/dist/components/p-6be1730a.entry.js +0 -1
- package/dist/components/p-786ff09b.entry.js +0 -1
- package/dist/components/p-85476a6f.entry.js +0 -9
- package/dist/components/p-c2127276.entry.js +0 -1
- package/dist/components/p-c3ee9163.entry.js +0 -1
- package/dist/components/p-c4cfbf98.entry.js +0 -1
- package/dist/components/p-c65082fe.entry.js +0 -1
- package/dist/components/p-cc096938.entry.js +0 -1
- package/dist/components/p-f4d2f882.entry.js +0 -1
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
|
|
2
2
|
import { s as sendAnalytics } from './analytics.js';
|
|
3
3
|
import { p as parseData } from './sharedUtils.js';
|
|
4
|
-
import { s as safeInlineFormat, d as defineCustomElement$
|
|
5
|
-
import { d as defineCustomElement$
|
|
6
|
-
import { d as defineCustomElement$
|
|
7
|
-
import { d as defineCustomElement$
|
|
8
|
-
import { d as defineCustomElement$
|
|
9
|
-
import { d as defineCustomElement$
|
|
10
|
-
import { d as defineCustomElement$
|
|
11
|
-
import { d as defineCustomElement$
|
|
12
|
-
import { d as defineCustomElement$
|
|
13
|
-
import { d as defineCustomElement$
|
|
14
|
-
import { d as defineCustomElement$
|
|
15
|
-
import { d as defineCustomElement$
|
|
4
|
+
import { s as safeInlineFormat, d as defineCustomElement$b } from './eds-input-footer2.js';
|
|
5
|
+
import { d as defineCustomElement$h } from './eds-button2.js';
|
|
6
|
+
import { d as defineCustomElement$g } from './eds-icon-wrapper2.js';
|
|
7
|
+
import { d as defineCustomElement$f } from './eds-input2.js';
|
|
8
|
+
import { d as defineCustomElement$e } from './eds-input-dropzone2.js';
|
|
9
|
+
import { d as defineCustomElement$d } from './eds-input-field2.js';
|
|
10
|
+
import { d as defineCustomElement$c } from './eds-input-file2.js';
|
|
11
|
+
import { d as defineCustomElement$a } from './eds-input-label2.js';
|
|
12
|
+
import { d as defineCustomElement$9 } from './eds-input-range2.js';
|
|
13
|
+
import { d as defineCustomElement$8 } from './eds-input-select2.js';
|
|
14
|
+
import { d as defineCustomElement$7 } from './eds-kg-web-services-select2.js';
|
|
15
|
+
import { d as defineCustomElement$6 } from './eds-link2.js';
|
|
16
|
+
import { d as defineCustomElement$5 } from './eds-logo2.js';
|
|
16
17
|
import { d as defineCustomElement$4 } from './eds-nps2.js';
|
|
17
18
|
import { d as defineCustomElement$3 } from './eds-rating2.js';
|
|
18
19
|
import { d as defineCustomElement$2 } from './eds-search-select2.js';
|
|
@@ -248,7 +249,7 @@ function getFormInitData({ initData, parsedFields, currentValues
|
|
|
248
249
|
return { updatedValues };
|
|
249
250
|
}
|
|
250
251
|
|
|
251
|
-
const edsFormCss = ".container{width:calc(var(--container-width, 100%) - (2 * var(--breakout-container-outer-gutter, var(--container-outer-gutter, var(--outer-gutter, 0)))));margin-right:auto;margin-left:auto}.container>*{--container-outer-gutter:0;--breakout-container-outer-gutter:0}.flex{display:flex}.flex-col{flex-direction:column}.f-body-01{font-family:var(--f-body-01-fontFamily);font-weight:var(--f-body-01-fontWeight);font-size:var(--f-body-01-fontSize);line-height:var(--f-body-01-lineHeight);letter-spacing:var(--f-body-01-letterSpacing)}.f-body-02{font-family:var(--f-body-02-fontFamily);font-weight:var(--f-body-02-fontWeight);font-size:var(--f-body-02-fontSize);line-height:var(--f-body-02-lineHeight);letter-spacing:var(--f-body-02-letterSpacing)}.f-body-01 b,.f-body-01 strong{font-weight:var(--f-body-01---bold-weight, bold)}.f-body-02 b,.f-body-02 strong{font-weight:var(--f-body-02---bold-weight, bold)}.f-heading-04{font-family:var(--f-heading-04-fontFamily);font-weight:600;font-size:var(--f-heading-04-fontSize);line-height:var(--f-heading-04-lineHeight);letter-spacing:var(--f-heading-04-letterSpacing)}.f-heading-05{font-family:var(--f-heading-05-fontFamily);font-weight:600;font-size:var(--f-heading-05-fontSize);line-height:var(--f-heading-05-lineHeight);letter-spacing:var(--f-heading-05-letterSpacing);overflow:visible}.text-light{color:var(--grey-dark)}.rounded-xs{border-radius:4px}.rounded-sm{border-radius:8px}.border-softer{border-color:rgba(0, 0, 0, .1)}.border-2{border-width:2px}.border-t-2{border-top-width:2px}.mt-20{margin-top:1.25rem}.mt-32{margin-top:2rem}.mt-64{margin-top:4rem}.mb-32{margin-bottom:2rem}.pt-28{padding-top:1.75rem}.pt-32{padding-top:2rem}.pt-64{padding-top:4rem}.pl-8{padding-left:0.5rem}.pl-16{padding-left:1rem}.border-l-2{border-left-width:2px}.gap-y-8{row-gap:0.5rem}.gap-y-16{row-gap:1rem}.gap-y-20{row-gap:1.25rem}.gap-y-24{row-gap:1.5rem}.border-group{border-left:1px solid var(--soft-color, #ddd);padding-left:1rem}.bg-inverse{background-color:var(--white)}.form-brand{box-shadow:0 2px 12px rgba(0, 0, 0, 0.08);border-left:4px solid var(--brand-green);animation:fadeInUp 0.6s ease}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.effect-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms;transition-timing-function:cubic-bezier(0, 0, 0.2, 1)}.shadow-hover{--tw-shadow:0px 0px 16px rgba(0, 0, 0, 0.2);--tw-shadow-colored:0px 0px 16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.cursor-pointer{cursor:pointer}.effect-focus-within{outline-width:3px;outline-offset:2px;outline-color:var(--brand-green)}.effect-focus-within:focus-within{outline-style:solid}.relative{position:relative}.rounded-sm{border-radius:8px}.rounded-lg{border-radius:16px}.px-16{padding-left:1rem;padding-right:1rem}.pb-4{padding-bottom:0.25rem}.pb-16{padding-bottom:1rem}.p-32{padding:2rem}.mr-auto{margin-right:auto}.ml-auto{margin-left:auto}.w-full{width:100%}.justify-between{justify-content:space-between}.items-center{align-items:center}@media (min-width: 750px){.md\\:flex-row-reverse{flex-direction:row-reverse}.md\\:justify-between{justify-content:space-between}.md\\:gap-y-0{row-gap:0}.md\\:w-auto{width:auto}.md\\:mt-64{margin-top:4rem}.md\\:pt-64{padding-top:4rem}}.eds-desc-link{position:relative;display:inline-block;color:var(--brand-black);text-decoration:none}.eds-desc-link::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--brand-green);transition:width 0.3s ease}.eds-desc-link:hover::after{width:100%}.eds-desc-link:focus-visible::after{width:0}.eds-content-block{line-height:1.5;color:var(--brand-black, #07140d)}.eds-content-block strong{font-weight:600}.eds-content-block .eds-desc-link{font-weight:600}";
|
|
252
|
+
const edsFormCss = ".container{width:calc(var(--container-width, 100%) - (2 * var(--breakout-container-outer-gutter, var(--container-outer-gutter, var(--outer-gutter, 0)))));margin-right:auto;margin-left:auto}.container>*{--container-outer-gutter:0;--breakout-container-outer-gutter:0}.flex{display:flex}.flex-col{flex-direction:column}.f-body-01{font-family:var(--f-body-01-fontFamily);font-weight:var(--f-body-01-fontWeight);font-size:var(--f-body-01-fontSize);line-height:var(--f-body-01-lineHeight);letter-spacing:var(--f-body-01-letterSpacing)}.f-body-02{font-family:var(--f-body-02-fontFamily);font-weight:var(--f-body-02-fontWeight);font-size:var(--f-body-02-fontSize);line-height:var(--f-body-02-lineHeight);letter-spacing:var(--f-body-02-letterSpacing)}.f-body-01 b,.f-body-01 strong{font-weight:var(--f-body-01---bold-weight, bold)}.f-body-02 b,.f-body-02 strong{font-weight:var(--f-body-02---bold-weight, bold)}.f-heading-04{font-family:var(--f-heading-04-fontFamily);font-weight:600;font-size:var(--f-heading-04-fontSize);line-height:var(--f-heading-04-lineHeight);letter-spacing:var(--f-heading-04-letterSpacing)}.f-heading-05{font-family:var(--f-heading-05-fontFamily);font-weight:600;font-size:var(--f-heading-05-fontSize);line-height:var(--f-heading-05-lineHeight);letter-spacing:var(--f-heading-05-letterSpacing);overflow:visible}.text-light{color:var(--grey-dark)}.rounded-xs{border-radius:4px}.rounded-sm{border-radius:8px}.border-softer{border-color:rgba(0, 0, 0, .1)}.border-2{border-width:2px}.border-t-2{border-top-width:2px}.mt-20{margin-top:1.25rem}.mt-24{margin-top:1.5rem}.mt-32{margin-top:2rem}.mt-48{margin-top:3rem}.mt-64{margin-top:4rem}.mb-32{margin-bottom:2rem}.mb-48{margin-bottom:3rem}.pt-28{padding-top:1.75rem}.pt-32{padding-top:2rem}.pt-64{padding-top:4rem}.pl-8{padding-left:0.5rem}.pl-16{padding-left:1rem}.border-l-2{border-left-width:2px}.gap-y-8{row-gap:0.5rem}.gap-y-16{row-gap:1rem}.gap-y-20{row-gap:1.25rem}.gap-y-24{row-gap:1.5rem}.border-group{border-left:1px solid var(--soft-color, #ddd);padding-left:1rem}.bg-inverse{background-color:var(--white)}.form-brand{box-shadow:0 2px 12px rgba(0, 0, 0, 0.08);border-left:4px solid var(--brand-green);animation:fadeInUp 0.6s ease}.form-brand-card{--warn:#ffb22c;--warn-strong:#b26b00;--danger:#ff6b5b;--danger-strong:#c0392b;background:var(--white, #fff);border:1px solid var(--line-color, #e2e2e2);border-radius:20px;overflow:hidden;box-shadow:0 30px 60px -34px rgba(7, 20, 13, 0.32);animation:fadeInUp 0.6s ease}.form-brand-header{position:relative;overflow:hidden;background:var(--brand-black, #07140d);color:#fff;padding:38px 40px 34px}.fbh-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255, 255, 255, 0.1) 1px, transparent 1px),\n linear-gradient(90deg, rgba(255, 255, 255, 0.1) 1px, transparent 1px);background-size:42px 42px;-webkit-mask-image:radial-gradient(130% 110% at 15% 0%, #000, transparent 72%);mask-image:radial-gradient(130% 110% at 15% 0%, #000, transparent 72%);opacity:0.5;pointer-events:none}.fbh-glow{position:absolute;top:-50%;right:-12%;width:420px;height:420px;background:radial-gradient(circle, rgba(0, 255, 157, 0.16), transparent 62%);pointer-events:none}.fbh-glow--expiring{background:radial-gradient(circle, rgba(255, 178, 44, 0.13), transparent 62%)}.fbh-glow--closed{background:radial-gradient(circle, rgba(192, 57, 43, 0.14), transparent 62%)}.fbh-in{position:relative}.fbh-brand{display:flex;align-items:center;gap:10px;margin-bottom:24px}.fbh-mark{width:30px;height:30px;border-radius:50%;background:linear-gradient(150deg, #00ff9d, #00c87b 55%, #0a8f5a);display:flex;align-items:center;justify-content:center}.fbh-mark svg{width:19px;height:19px}.fbh-word{font-weight:600;font-size:16px;letter-spacing:0.04em}.fbh-logo{width:150px;margin-bottom:22px}.fbh-eyebrow{font-family:'IBM Plex Mono', monospace;font-size:11px;letter-spacing:0.15em;text-transform:uppercase;color:var(--brand-green, #00ff9d);display:inline-flex;align-items:center;gap:7px}.fbh-eyebrow svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2;flex:0 0 12px}.fbh-eyebrow--expiring{color:var(--warn, #ffb22c)}.fbh-eyebrow--closed{color:var(--danger, #ff6b5b)}.fbh-title{font-weight:200;font-size:clamp(26px, 4vw, 36px);letter-spacing:-0.02em;line-height:1.08;margin-bottom:12px}.fbh-sub{font-size:14.5px;color:rgba(235, 242, 238, 0.62);font-weight:300;max-width:72ch;line-height:1.55}.fbh-meta{display:flex;gap:22px;margin-top:22px;flex-wrap:wrap}.fbh-meta span{display:inline-flex;align-items:center;gap:7px;font-family:'IBM Plex Mono', monospace;font-size:10.5px;letter-spacing:0.06em;text-transform:uppercase;color:rgba(235, 242, 238, 0.62)}.fbh-meta svg{width:13px;height:13px;stroke:var(--brand-green, #00ff9d);fill:none;stroke-width:1.8}.fbh-meta span.is-warn{color:var(--warn, #ffb22c)}.fbh-meta span.is-warn svg{stroke:var(--warn, #ffb22c)}.fbh-meta span.is-danger{color:var(--danger, #ff6b5b)}.fbh-meta span.is-danger svg{stroke:var(--danger, #ff6b5b)}.form-meta-time{display:inline-flex;align-items:center;gap:7px;width:fit-content;font-family:'IBM Plex Mono', monospace;font-size:10.5px;letter-spacing:0.06em;text-transform:uppercase;color:var(--grey-dark)}.form-meta-time svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.form-brand-body{padding:var(--eds-form-padding, 34px 40px 30px);--eds-field-accent:#00c87b}.form-brand-body--closed{opacity:0.55}.form-sect{margin-bottom:30px}.form-sect:last-child{margin-bottom:0}.form-sect-head{display:flex;align-items:center;gap:9px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--line-color, #e2e2e2)}.form-sect-glyph{color:#00c87b;display:inline-flex}.form-sect-glyph svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}.form-sect-label{font-family:'IBM Plex Mono', monospace;font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--brand-black, #07140d)}.form-brand-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 40px;border-top:1px solid var(--line-color, #e2e2e2);background:#fcfcfc;flex-wrap:wrap}.form-brand-footer-actions{display:flex;align-items:center;gap:12px}.req-note{font-family:'IBM Plex Mono', monospace;font-size:10.5px;letter-spacing:0.06em;text-transform:uppercase;color:#8a8c8a}.req-note b{color:#00c87b}.fbf-left{display:flex;align-items:center;gap:12px;min-width:0}.fbf-save{display:inline-flex;align-items:center;gap:9px;font-family:'IBM Plex Mono', monospace;font-size:10.5px;letter-spacing:0.07em;text-transform:uppercase;color:#8a8c8a;transition:color 0.2s;white-space:nowrap}.fbf-save-dot{width:7px;height:7px;border-radius:50%;background:#00c87b;flex:0 0 7px;transition:background 0.2s}.fbf-save--saving{color:#7a7b7a}.fbf-save--saving .fbf-save-dot{background:#7a7b7a;animation:fbfPulse 1s ease-in-out infinite}.fbf-save--error{color:var(--danger-strong, #c0392b)}.fbf-save--error .fbf-save-dot{background:var(--danger-strong, #c0392b)}@keyframes fbfPulse{0%,100%{opacity:1}50%{opacity:0.25}}.fbf-sep{width:1px;height:13px;background:var(--line-color, #e2e2e2);flex:0 0 1px}.fbf-clear{font-family:'IBM Plex Sans', system-ui, sans-serif;font-size:13.5px;color:var(--body-l, #5a5f5c);cursor:pointer;background:none;border:none;padding:6px 2px;transition:color 0.15s}.fbf-clear:hover:not(:disabled){color:var(--danger-strong, #c0392b)}.fbf-clear:disabled{opacity:0.4;cursor:not-allowed}.fbf-confirm{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.fbf-confirm-q{font-size:13.5px;color:var(--danger-strong, #c0392b);display:inline-flex;align-items:center;gap:8px}.fbf-confirm-q svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2;flex:0 0 15px}.fbf-confirm-no{font-family:'IBM Plex Sans', system-ui, sans-serif;font-size:13.5px;color:var(--body-l, #5a5f5c);cursor:pointer;background:none;border:none}.fbf-confirm-no:hover{color:var(--brand-black, #07140d)}.fbf-confirm-yes{font-family:'IBM Plex Sans', system-ui, sans-serif;font-size:13.5px;font-weight:500;cursor:pointer;border-radius:999px;padding:9px 16px;background:#fdf0ee;color:var(--danger-strong, #c0392b);border:1px solid #f2cfc9;transition:0.15s}.fbf-confirm-yes:hover{background:var(--danger-strong, #c0392b);color:#fff;border-color:var(--danger-strong, #c0392b)}.req-note--closed{display:inline-flex;align-items:center;gap:7px;color:var(--danger-strong, #c0392b)}.req-note--closed svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;flex:0 0 13px}@media (max-width: 600px){.form-brand-header,.form-brand-footer{padding-left:24px;padding-right:24px}.form-brand-body{padding:var(--eds-form-padding, 28px 24px 28px)}.form-brand-footer{align-items:flex-start;flex-direction:column-reverse;gap:20px;padding-top:22px}.form-brand-footer-actions,.fbf-confirm{width:100%;justify-content:space-between}.fbf-left{flex-wrap:wrap;row-gap:8px;width:100%;padding-top:20px;border-top:1px solid var(--line-color, #e2e2e2)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.effect-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms;transition-timing-function:cubic-bezier(0, 0, 0.2, 1)}.shadow-hover{--tw-shadow:0px 0px 16px rgba(0, 0, 0, 0.2);--tw-shadow-colored:0px 0px 16px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.cursor-pointer{cursor:pointer}.effect-focus-within{outline-width:3px;outline-offset:2px;outline-color:var(--brand-green)}.effect-focus-within:focus-within{outline-style:solid}.relative{position:relative}.rounded-sm{border-radius:8px}.rounded-lg{border-radius:16px}.px-16{padding-left:1rem;padding-right:1rem}.pb-4{padding-bottom:0.25rem}.pb-16{padding-bottom:1rem}.p-32{padding:2rem}.mr-auto{margin-right:auto}.ml-auto{margin-left:auto}.w-full{width:100%}.justify-between{justify-content:space-between}.items-center{align-items:center}@media (min-width: 750px){.md\\:flex-row-reverse{flex-direction:row-reverse}.md\\:justify-between{justify-content:space-between}.md\\:gap-y-0{row-gap:0}.md\\:w-auto{width:auto}.md\\:mt-64{margin-top:4rem}.md\\:pt-64{padding-top:4rem}}.eds-desc-link{position:relative;display:inline-block;color:var(--brand-black);text-decoration:none}.eds-desc-link::after{content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--brand-green);transition:width 0.3s ease}.eds-desc-link:hover::after{width:100%}.eds-desc-link:focus-visible::after{width:0}.fbh-sub .eds-desc-link{color:#fff;font-weight:400}.eds-content-block{line-height:1.5;color:var(--brand-black, #07140d)}.eds-content-block strong{font-weight:600}.eds-content-block .eds-desc-link{font-weight:600}";
|
|
252
253
|
const EdsFormStyle0 = edsFormCss;
|
|
253
254
|
|
|
254
255
|
const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLElement {
|
|
@@ -260,6 +261,12 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
260
261
|
this.name = 'eds-form';
|
|
261
262
|
this.title = 'Form Title';
|
|
262
263
|
this.description = 'Form Description';
|
|
264
|
+
this.eyebrow = undefined;
|
|
265
|
+
this.estimatedTime = undefined;
|
|
266
|
+
this.progress = undefined;
|
|
267
|
+
this.expires = undefined;
|
|
268
|
+
this.policy = undefined;
|
|
269
|
+
this.gdpr = false;
|
|
263
270
|
this.setFormUrl = true;
|
|
264
271
|
this.formBtn = true;
|
|
265
272
|
this.formBtnLabel = 'Submit';
|
|
@@ -271,7 +278,11 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
271
278
|
this.groups = [];
|
|
272
279
|
this.initData = {};
|
|
273
280
|
this.formStyle = 'default';
|
|
281
|
+
this.status = 'open';
|
|
282
|
+
this.saveStatus = 'idle';
|
|
283
|
+
this.saveLabel = undefined;
|
|
274
284
|
this.values = {};
|
|
285
|
+
this.showClearConfirm = false;
|
|
275
286
|
this.isSubmitting = false;
|
|
276
287
|
this.hasError = false;
|
|
277
288
|
this.errors = {};
|
|
@@ -630,6 +641,10 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
630
641
|
handleSubmit(e) {
|
|
631
642
|
var _a, _b;
|
|
632
643
|
e === null || e === void 0 ? void 0 : e.preventDefault();
|
|
644
|
+
// A closed brand form is read-only — never submit.
|
|
645
|
+
if (this.status === 'closed') {
|
|
646
|
+
return;
|
|
647
|
+
}
|
|
633
648
|
if (this.isSubmitting) {
|
|
634
649
|
return;
|
|
635
650
|
}
|
|
@@ -712,11 +727,13 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
712
727
|
}
|
|
713
728
|
}
|
|
714
729
|
});
|
|
715
|
-
// Emit event
|
|
730
|
+
// Emit event. `cleared: true` lets the host skip autosaving the now-empty
|
|
731
|
+
// form — so clearing never overwrites the last saved draft.
|
|
716
732
|
this.form.emit({
|
|
717
733
|
event: 'change',
|
|
718
734
|
message: 'Form cleared',
|
|
719
|
-
success: true
|
|
735
|
+
success: true,
|
|
736
|
+
cleared: true
|
|
720
737
|
});
|
|
721
738
|
sendAnalytics({
|
|
722
739
|
category: 'ui-component',
|
|
@@ -750,6 +767,9 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
750
767
|
if (!this.isFieldVisible(field)) {
|
|
751
768
|
return null;
|
|
752
769
|
}
|
|
770
|
+
// A closed (expired / not-accepting) brand form is read-only: force every
|
|
771
|
+
// field disabled regardless of its own config.
|
|
772
|
+
const fieldDisabled = field.disabled || this.status === 'closed';
|
|
753
773
|
// 0) Presentational "Text Block" — static formatted text, NOT an input.
|
|
754
774
|
// It has no value, is never added to the submission (makeFormData only
|
|
755
775
|
// iterates this.values) and is never validated (see formValidators). The
|
|
@@ -763,20 +783,20 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
763
783
|
if (field.type === 'rating') {
|
|
764
784
|
// pull the current value (or zero)
|
|
765
785
|
const val = this.values[field.name] || 0;
|
|
766
|
-
return (h("div", { class: "form-group rating-field", key: field.name }, h("div", { class: "flex justify-between" }, field && (h("eds-input-label", { name: `rating-${field.name}`, label: field.label, disabled:
|
|
786
|
+
return (h("div", { class: "form-group rating-field", key: field.name }, h("div", { class: "flex justify-between" }, field && (h("eds-input-label", { name: `rating-${field.name}`, label: field.label, disabled: fieldDisabled, required: field.required }))), h("eds-rating", { id: `rating-${field.name}`, "rating-type": field.ratingType, "rating-count": field.ratingCount, "selected-rating": val, onRating: (e) => this.handleRating(e, field) }), h("div", { class: "mt-6" }, h("eds-input-footer", { id: `${field.name}-footer`, name: field.name, message: field.message, "error-message": (_c = this.errors[field.name]) === null || _c === void 0 ? void 0 : _c.join('<br/>'), error: !!this.errors[field.name], link: field.link }))));
|
|
767
787
|
}
|
|
768
788
|
else if (field.type === 'nps') {
|
|
769
789
|
// pull the current value (or null)
|
|
770
790
|
const val = this.values[field.name] !== undefined ? this.values[field.name] : null;
|
|
771
|
-
return (h("div", { class: "form-group nps-field", key: field.name }, h("div", { class: "flex justify-between" }, field && (h("eds-input-label", { name: `nps-${field.name}`, label: field.question, disabled:
|
|
791
|
+
return (h("div", { class: "form-group nps-field", key: field.name }, h("div", { class: "flex justify-between" }, field && (h("eds-input-label", { name: `nps-${field.name}`, label: field.question, disabled: fieldDisabled, required: field.required }))), h("eds-nps", { id: `nps-${field.name}`, "right-label": field.rightLabel, "left-label": field.leftLabel, "selected-value": val, onNps: (e) => this.handleNPS(e, field) }), h("div", { class: "mt-6" }, h("eds-input-footer", { id: `${field.name}-footer`, name: field.name, "error-message": (_d = this.errors[field.name]) === null || _d === void 0 ? void 0 : _d.join('<br/>'), error: !!this.errors[field.name] }))));
|
|
772
792
|
}
|
|
773
793
|
else if (field.type === 'search-select') {
|
|
774
|
-
return (h("eds-search-select", { key: field.name, name: field.name, label: field.label, source: field.source, options: field.options, multiple: !!field.multiple, "api-base": field.apiBase || '/api/v1', placeholder: field.placeholder, required: field.required, disabled:
|
|
794
|
+
return (h("eds-search-select", { key: field.name, name: field.name, label: field.label, source: field.source, options: field.options, multiple: !!field.multiple, "api-base": field.apiBase || '/api/v1', placeholder: field.placeholder, required: field.required, disabled: fieldDisabled, hint: field.hint, message: field.message, error: !!this.errors[field.name], "error-message": (_e = this.errors[field.name]) === null || _e === void 0 ? void 0 : _e.join('<br/>'), value: this.values[field.name], onEdsinput: (e) => this.handleInput(e, field), onEdschange: (e) => this.handleChange(e, field) }));
|
|
775
795
|
}
|
|
776
796
|
else if (field.type === 'kg-web-service') {
|
|
777
|
-
return (h("eds-kg-web-services-select", { key: field.name, name: field.name, label: field.label, "api-endpoint": field.apiEndpoint || '/api/v1/kg/web-services/cached', placeholder: field.placeholder, required: field.required, disabled:
|
|
797
|
+
return (h("eds-kg-web-services-select", { key: field.name, name: field.name, label: field.label, "api-endpoint": field.apiEndpoint || '/api/v1/kg/web-services/cached', placeholder: field.placeholder, required: field.required, disabled: fieldDisabled, hint: field.hint, message: field.message, error: !!this.errors[field.name], "error-message": (_f = this.errors[field.name]) === null || _f === void 0 ? void 0 : _f.join('<br/>'), value: this.values[field.name], size: field.size || 500, onEdsinput: (e) => this.handleInput(e, field), onEdschange: (e) => this.handleChange(e, field) }));
|
|
778
798
|
}
|
|
779
|
-
return (h("eds-input-field", { key: field.name, name: field.name, label: field.label, placeholder: field.placeholder, type: field.type, value: this.values[field.name], required: field.required, hint: field.hint, message: field.message, link: field.link, error: !!this.errors[field.name], errorMessage: (_g = this.errors[field.name]) === null || _g === void 0 ? void 0 : _g.join('<br/>'), options: field.options, onInput: (e) => this.handleInput(e, field), onChangeNative: (e) => this.handleChange(e, field) }));
|
|
799
|
+
return (h("eds-input-field", { key: field.name, name: field.name, label: field.label, placeholder: field.placeholder, type: field.type, value: this.values[field.name], required: field.required, disabled: fieldDisabled, hint: field.hint, message: field.message, link: field.link, error: !!this.errors[field.name], errorMessage: (_g = this.errors[field.name]) === null || _g === void 0 ? void 0 : _g.join('<br/>'), options: field.options, onInput: (e) => this.handleInput(e, field), onChangeNative: (e) => this.handleChange(e, field) }));
|
|
780
800
|
}
|
|
781
801
|
async getData() {
|
|
782
802
|
return this.makeFormData();
|
|
@@ -799,18 +819,46 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
799
819
|
const buckets = this.groupedFields;
|
|
800
820
|
// build the styling classes based on formStyle prop
|
|
801
821
|
let styleClasses = '';
|
|
822
|
+
// No inner padding on the form card — spacing is provided by the surrounding
|
|
823
|
+
// page/container. This keeps fields flush with the card edge (and, when the
|
|
824
|
+
// form is slotted inside another container like a multi-step stepper, in line
|
|
825
|
+
// with it) instead of double-padding.
|
|
802
826
|
if (this.formStyle === 'default') {
|
|
803
|
-
styleClasses = 'bg-inverse border-softer relative rounded-xs border-2
|
|
827
|
+
styleClasses = 'bg-inverse border-softer relative rounded-xs border-2';
|
|
804
828
|
}
|
|
805
829
|
else if (this.formStyle === 'shadow') {
|
|
806
|
-
styleClasses = 'bg-inverse effect-shadow shadow-hover border-softer relative rounded-xs border-2
|
|
830
|
+
styleClasses = 'bg-inverse effect-shadow shadow-hover border-softer relative rounded-xs border-2';
|
|
807
831
|
}
|
|
808
832
|
else if (this.formStyle === 'brand') {
|
|
809
|
-
styleClasses = 'bg-inverse form-brand relative rounded-xs
|
|
810
|
-
}
|
|
811
|
-
|
|
833
|
+
styleClasses = 'bg-inverse form-brand relative rounded-xs';
|
|
834
|
+
}
|
|
835
|
+
// ── Brand style: a self-contained card with a dark hero header, a light
|
|
836
|
+
// sectioned body, and a footer. The page that hosts it is expected to be
|
|
837
|
+
// chrome-less (the hero header is the page header). ──
|
|
838
|
+
if (this.formStyle === 'brand') {
|
|
839
|
+
const hasRequired = this.parsedFields.some((f) => f && f.required && f.type !== 'hidden');
|
|
840
|
+
const groupSections = this.parsedGroups
|
|
841
|
+
.filter((g) => Array.isArray(buckets[g.id]) && buckets[g.id].length > 0)
|
|
842
|
+
.map((g) => (h("div", { class: "form-sect", key: g.id }, h("div", { class: "form-sect-head" }, h("span", { class: "form-sect-glyph", "aria-hidden": "true" }, h("svg", { viewBox: "0 0 24 24" }, h("path", { d: "M6 4l13 7-5.5 1.5L11 18z", "stroke-linejoin": "round" }))), h("span", { class: "form-sect-label" }, g.title)), h("div", { class: "flex flex-col gap-y-24" }, buckets[g.id].map((f) => this.renderField(f))))));
|
|
843
|
+
// Lifecycle: open (brand green) · expiring (amber) · closed (red, read-only).
|
|
844
|
+
const isClosed = this.status === 'closed';
|
|
845
|
+
const isExpiring = this.status === 'expiring';
|
|
846
|
+
const statusSuffix = isClosed ? 'Closed' : isExpiring ? 'Closing soon' : '';
|
|
847
|
+
const statusIcon = isClosed ? (h("svg", { viewBox: "0 0 24 24" }, h("circle", { cx: "12", cy: "12", r: "9" }), h("path", { d: "M15 9l-6 6M9 9l6 6", "stroke-linecap": "round" }))) : isExpiring ? (h("svg", { viewBox: "0 0 24 24" }, h("circle", { cx: "12", cy: "12", r: "9" }), h("path", { d: "M12 8v4.5M12 16h.01", "stroke-linecap": "round" }))) : null;
|
|
848
|
+
const expiresChipClass = isClosed ? 'is-danger' : isExpiring ? 'is-warn' : '';
|
|
849
|
+
return (h("form", { class: `form-brand-card relative ${isClosed ? 'is-closed' : ''}`, ref: (el) => (this.formEl = el), autocomplete: "on", onSubmit: this.handleSubmit }, h("div", { class: "form-brand-header" }, h("div", { class: "fbh-grid", "aria-hidden": "true" }), h("div", { class: `fbh-glow fbh-glow--${this.status}`, "aria-hidden": "true" }), h("div", { class: "fbh-in" }, h("div", { class: "fbh-logo" }, h("eds-logo", { variant: "negative", href: "/" })), this.eyebrow && (h("span", { class: `fbh-eyebrow fbh-eyebrow--${this.status}` }, statusIcon, this.eyebrow, statusSuffix ? ` · ${statusSuffix}` : '')), this.title && h("h1", { class: "fbh-title" }, this.title), this.description && h("p", { class: "fbh-sub", innerHTML: this.formatDescription(this.description) }), (this.progress != null || this.expires || this.policy || this.estimatedTime || this.gdpr) && (h("div", { class: "fbh-meta" }, this.progress != null && (h("span", null, h("svg", { viewBox: "0 0 24 24" }, h("circle", { cx: "12", cy: "12", r: "9" }), h("path", { d: "M9 12.5l2 2 4-4" })), this.progress, "% complete")), this.expires && (h("span", { class: expiresChipClass }, h("svg", { viewBox: "0 0 24 24" }, h("rect", { x: "4", y: "5", width: "16", height: "15", rx: "2" }), h("path", { d: "M4 9h16M8 3v4M16 3v4" })), this.expires)), this.policy && (h("span", null, h("svg", { viewBox: "0 0 24 24" }, h("path", { d: "M4 9a7 7 0 0112-4M20 15a7 7 0 01-12 4M16 5h4V1M8 19H4v4" })), this.policy)), this.estimatedTime && (h("span", null, h("svg", { viewBox: "0 0 24 24" }, h("circle", { cx: "12", cy: "12", r: "9" }), h("path", { d: "M12 8v4l3 2" })), this.estimatedTime)), this.gdpr && (h("span", null, h("svg", { viewBox: "0 0 24 24" }, h("path", { d: "M12 3l7 3v5c0 4.4-3 8-7 10-4-2-7-5.6-7-10V6z" }), h("path", { d: "M9 12l2 2 4-4" })), "GDPR compliant")))))), h("div", { class: `form-brand-body ${isClosed ? 'form-brand-body--closed' : ''}` }, hiddenFields.map((field, index) => (h("eds-input", { key: index, type: "hidden", name: field.name, value: field.value }))), groupSections, buckets['__ungrouped'] && buckets['__ungrouped'].length > 0 && (h("div", { class: "form-sect form-sect--bare" }, h("div", { class: "flex flex-col gap-y-24" }, buckets['__ungrouped'].map((f) => this.renderField(f)))))), isClosed ? (h("div", { class: "form-brand-footer" }, h("span", { class: "req-note req-note--closed" }, h("svg", { viewBox: "0 0 24 24" }, h("rect", { x: "5", y: "11", width: "14", height: "9", rx: "2" }), h("path", { d: "M8 11V8a4 4 0 018 0v3" })), "Submissions closed"), h("div", { class: "form-brand-footer-actions" }, h("eds-button", { intent: "neutral", pill: true, label: this.formBtnLabel, disabled: true, icon: "arrow-right", size: "large" })))) : ((this.formBtn || this.clearBtn || hasRequired || this.saveLabel) && (h("div", { class: "form-brand-footer" }, h("div", { class: "fbf-left" }, this.saveLabel && (h("span", { class: `fbf-save fbf-save--${this.saveStatus}`, role: "status", "aria-live": "polite" }, h("span", { class: "fbf-save-dot", "aria-hidden": "true" }), this.saveLabel)), this.saveLabel && hasRequired && h("span", { class: "fbf-sep", "aria-hidden": "true" }), hasRequired && (h("span", { class: "req-note" }, h("b", null, "*"), " Required fields"))), this.showClearConfirm ? (h("div", { class: "fbf-confirm" }, h("span", { class: "fbf-confirm-q" }, h("svg", { viewBox: "0 0 24 24" }, h("circle", { cx: "12", cy: "12", r: "9" }), h("path", { d: "M12 8v4.5M12 16h.01", "stroke-linecap": "round" })), "Clear everything you've typed?"), h("button", { type: "button", class: "fbf-confirm-no", onClick: () => (this.showClearConfirm = false) }, "Cancel"), h("button", { type: "button", class: "fbf-confirm-yes", onClick: (e) => {
|
|
850
|
+
this.showClearConfirm = false;
|
|
851
|
+
this.handleClear(e);
|
|
852
|
+
} }, "Yes, clear it"))) : (h("div", { class: "form-brand-footer-actions" }, this.clearBtn && (h("button", { type: "button", class: "fbf-clear", disabled: this.isSubmitting || !this.values || Object.keys(this.values).length === 0, onClick: () => (this.showClearConfirm = true) }, this.clearBtnLabel)), this.formBtn && (h("eds-button", { intent: "brand", pill: true, label: this.formBtnLabel, disabled: this.isSubmitting, loading: this.isSubmitting, icon: "arrow-right", size: "large", onClick: () => this.handleSubmit() })))))))));
|
|
853
|
+
}
|
|
854
|
+
return (h("form", { class: styleClasses,
|
|
855
|
+
// Inner padding defaults to 2rem (the original p-32 look) but can be
|
|
856
|
+
// overridden per-consumer via a CSS custom property, which inherits through
|
|
857
|
+
// the shadow boundary. A form slotted inside an already-padded container
|
|
858
|
+
// (e.g. a multi-step eds-steps card) sets `--eds-form-padding: 0` to sit flush.
|
|
859
|
+
style: { padding: 'var(--eds-form-padding, 2rem)' }, ref: (el) => (this.formEl = el), autocomplete: "on", onSubmit: this.handleSubmit }, h("div", { class: "flex flex-col gap-y-20 overflow-visible" }, this.estimatedTime && (h("span", { class: "form-meta-time" }, h("svg", { viewBox: "0 0 24 24", "aria-hidden": "true" }, h("circle", { cx: "12", cy: "12", r: "9" }), h("path", { d: "M12 8v4l3 2" })), this.estimatedTime)), this.title && (h("span", { role: "heading", class: "f-heading-05 pb-4 block" }, this.title)), this.description && (h("span", { class: "f-body-02 text-light", innerHTML: this.formatDescription(this.description) })), h("slot", null)), hiddenFields.map((field, index) => (h("eds-input", { key: index, type: "hidden", name: field.name, value: field.value }))), this.parsedGroups
|
|
812
860
|
.filter((g) => Array.isArray(buckets[g.id]) && buckets[g.id].length > 0)
|
|
813
|
-
.map((g) => (h("div", { class: "mt-
|
|
861
|
+
.map((g) => (h("div", { class: "mt-48", key: g.id }, h("span", { class: "f-body-02" }, h("b", null, g.title)), h("div", { class: "border-group mt-24 mb-48 flex flex-col gap-y-24" }, buckets[g.id].map((f) => this.renderField(f)))))), h("div", { class: "flex flex-col mt-32 gap-y-24" }, buckets['__ungrouped'].map((f) => this.renderField(f))), (this.formBtn || this.clearBtn) && (h("div", { class: "mt-32 md:mt-64 flex flex-col items-center md:flex-row-reverse md:justify-between gap-y-16 md:gap-y-0" }, this.formBtn && (h("eds-button", { intent: this.buttonIntent, pill: true, label: this.formBtnLabel, disabled: this.isSubmitting, loading: this.isSubmitting, icon: "arrow-right", size: "large", onClick: () => this.handleSubmit() })), this.clearBtn && (h("eds-button", { intent: "neutral", pill: true, size: "large", label: this.clearBtnLabel, disabled: this.isSubmitting || !this.values || Object.keys(this.values).length === 0, onClick: (e) => this.handleClear(e) }))))));
|
|
814
862
|
}
|
|
815
863
|
get el() { return this; }
|
|
816
864
|
static get watchers() { return {
|
|
@@ -822,6 +870,12 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
822
870
|
"name": [1],
|
|
823
871
|
"title": [1],
|
|
824
872
|
"description": [1],
|
|
873
|
+
"eyebrow": [1],
|
|
874
|
+
"estimatedTime": [1, "estimated-time"],
|
|
875
|
+
"progress": [2],
|
|
876
|
+
"expires": [1],
|
|
877
|
+
"policy": [1],
|
|
878
|
+
"gdpr": [4],
|
|
825
879
|
"setFormUrl": [4, "set-form-url"],
|
|
826
880
|
"formBtn": [4, "form-btn"],
|
|
827
881
|
"formBtnLabel": [1, "form-btn-label"],
|
|
@@ -833,7 +887,11 @@ const EdsForm$1 = /*@__PURE__*/ proxyCustomElement(class EdsForm extends HTMLEle
|
|
|
833
887
|
"groups": [1],
|
|
834
888
|
"initData": [16],
|
|
835
889
|
"formStyle": [1, "form-style"],
|
|
890
|
+
"status": [1],
|
|
891
|
+
"saveStatus": [1, "save-status"],
|
|
892
|
+
"saveLabel": [1, "save-label"],
|
|
836
893
|
"values": [32],
|
|
894
|
+
"showClearConfirm": [32],
|
|
837
895
|
"isSubmitting": [32],
|
|
838
896
|
"hasError": [32],
|
|
839
897
|
"errors": [32],
|
|
@@ -849,7 +907,7 @@ function defineCustomElement$1() {
|
|
|
849
907
|
if (typeof customElements === "undefined") {
|
|
850
908
|
return;
|
|
851
909
|
}
|
|
852
|
-
const components = ["eds-form", "eds-button", "eds-icon-wrapper", "eds-input", "eds-input-dropzone", "eds-input-field", "eds-input-file", "eds-input-footer", "eds-input-label", "eds-input-range", "eds-input-select", "eds-kg-web-services-select", "eds-link", "eds-nps", "eds-rating", "eds-search-select"];
|
|
910
|
+
const components = ["eds-form", "eds-button", "eds-icon-wrapper", "eds-input", "eds-input-dropzone", "eds-input-field", "eds-input-file", "eds-input-footer", "eds-input-label", "eds-input-range", "eds-input-select", "eds-kg-web-services-select", "eds-link", "eds-logo", "eds-nps", "eds-rating", "eds-search-select"];
|
|
853
911
|
components.forEach(tagName => { switch (tagName) {
|
|
854
912
|
case "eds-form":
|
|
855
913
|
if (!customElements.get(tagName)) {
|
|
@@ -858,60 +916,65 @@ function defineCustomElement$1() {
|
|
|
858
916
|
break;
|
|
859
917
|
case "eds-button":
|
|
860
918
|
if (!customElements.get(tagName)) {
|
|
861
|
-
defineCustomElement$
|
|
919
|
+
defineCustomElement$h();
|
|
862
920
|
}
|
|
863
921
|
break;
|
|
864
922
|
case "eds-icon-wrapper":
|
|
865
923
|
if (!customElements.get(tagName)) {
|
|
866
|
-
defineCustomElement$
|
|
924
|
+
defineCustomElement$g();
|
|
867
925
|
}
|
|
868
926
|
break;
|
|
869
927
|
case "eds-input":
|
|
870
928
|
if (!customElements.get(tagName)) {
|
|
871
|
-
defineCustomElement$
|
|
929
|
+
defineCustomElement$f();
|
|
872
930
|
}
|
|
873
931
|
break;
|
|
874
932
|
case "eds-input-dropzone":
|
|
875
933
|
if (!customElements.get(tagName)) {
|
|
876
|
-
defineCustomElement$
|
|
934
|
+
defineCustomElement$e();
|
|
877
935
|
}
|
|
878
936
|
break;
|
|
879
937
|
case "eds-input-field":
|
|
880
938
|
if (!customElements.get(tagName)) {
|
|
881
|
-
defineCustomElement$
|
|
939
|
+
defineCustomElement$d();
|
|
882
940
|
}
|
|
883
941
|
break;
|
|
884
942
|
case "eds-input-file":
|
|
885
943
|
if (!customElements.get(tagName)) {
|
|
886
|
-
defineCustomElement$
|
|
944
|
+
defineCustomElement$c();
|
|
887
945
|
}
|
|
888
946
|
break;
|
|
889
947
|
case "eds-input-footer":
|
|
890
948
|
if (!customElements.get(tagName)) {
|
|
891
|
-
defineCustomElement$
|
|
949
|
+
defineCustomElement$b();
|
|
892
950
|
}
|
|
893
951
|
break;
|
|
894
952
|
case "eds-input-label":
|
|
895
953
|
if (!customElements.get(tagName)) {
|
|
896
|
-
defineCustomElement$
|
|
954
|
+
defineCustomElement$a();
|
|
897
955
|
}
|
|
898
956
|
break;
|
|
899
957
|
case "eds-input-range":
|
|
900
958
|
if (!customElements.get(tagName)) {
|
|
901
|
-
defineCustomElement$
|
|
959
|
+
defineCustomElement$9();
|
|
902
960
|
}
|
|
903
961
|
break;
|
|
904
962
|
case "eds-input-select":
|
|
905
963
|
if (!customElements.get(tagName)) {
|
|
906
|
-
defineCustomElement$
|
|
964
|
+
defineCustomElement$8();
|
|
907
965
|
}
|
|
908
966
|
break;
|
|
909
967
|
case "eds-kg-web-services-select":
|
|
910
968
|
if (!customElements.get(tagName)) {
|
|
911
|
-
defineCustomElement$
|
|
969
|
+
defineCustomElement$7();
|
|
912
970
|
}
|
|
913
971
|
break;
|
|
914
972
|
case "eds-link":
|
|
973
|
+
if (!customElements.get(tagName)) {
|
|
974
|
+
defineCustomElement$6();
|
|
975
|
+
}
|
|
976
|
+
break;
|
|
977
|
+
case "eds-logo":
|
|
915
978
|
if (!customElements.get(tagName)) {
|
|
916
979
|
defineCustomElement$5();
|
|
917
980
|
}
|
|
@@ -76,7 +76,7 @@ const EdsFrame$1 = /*@__PURE__*/ proxyCustomElement(class EdsFrame extends HTMLE
|
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
render() {
|
|
79
|
-
return (h("div", { key: '
|
|
79
|
+
return (h("div", { key: '397b0f9433b9339079774f0aa49b1451f9c0d45e', class: this.articleClasses() }, h("div", { key: 'a70c2ec210a1de124a82c39d6f2592ddb9ff4572', class: "effect-height flex items-center justify-between py-8 px-12" }, h("span", { key: '88d0732d0cf4b3fab14ed0e1b0797b78dd230585', class: "f-ui-02" }, this.frameLabel), !this.iframeError && this.url && this.urlLabel ? (h("eds-link", { label: this.urlLabel, url: this.url, intent: this.intent, class: "ml-auto", external: true, disabled: false, icon: "arrow-up-right" })) : null), h("div", { key: '85c0d453e85d23520e5a6a5bae2159285771677e', class: "border-softer" }, this.iframeError ? (h("div", { class: "container ml-8 mr-8 mt-16" }, this.errorMessage)) : (h("iframe", { src: this.frameSrc, width: "100%", height: this.getFrameHeight(), title: this.frameLabel, frameBorder: "0", allowFullScreen: true })))));
|
|
80
80
|
}
|
|
81
81
|
get el() { return this; }
|
|
82
82
|
static get style() { return EdsFrameStyle0; }
|
|
@@ -37,8 +37,8 @@ const EdsGitlabContributors$1 = /*@__PURE__*/ proxyCustomElement(class EdsGitlab
|
|
|
37
37
|
getProjectIds() {
|
|
38
38
|
return this.projectId
|
|
39
39
|
.split(',')
|
|
40
|
-
.map(id => id.trim())
|
|
41
|
-
.filter(id => id.length > 0);
|
|
40
|
+
.map((id) => id.trim())
|
|
41
|
+
.filter((id) => id.length > 0);
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
44
44
|
* Fetches commits by path and aggregates by author for a single project
|
|
@@ -85,7 +85,7 @@ const EdsGitlabContributors$1 = /*@__PURE__*/ proxyCustomElement(class EdsGitlab
|
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
87
|
// Convert to GitLabContributor format
|
|
88
|
-
return Array.from(authorMap.values()).map(author => ({
|
|
88
|
+
return Array.from(authorMap.values()).map((author) => ({
|
|
89
89
|
name: author.name,
|
|
90
90
|
email: author.email,
|
|
91
91
|
commits: author.commits,
|
|
@@ -105,18 +105,16 @@ const EdsGitlabContributors$1 = /*@__PURE__*/ proxyCustomElement(class EdsGitlab
|
|
|
105
105
|
// Fetch commits by path and aggregate by author (for monorepo)
|
|
106
106
|
return await this.fetchCommitsByPathForProject(projectId);
|
|
107
107
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
'PRIVATE-TOKEN': this.accessToken
|
|
113
|
-
}
|
|
114
|
-
});
|
|
115
|
-
if (!contributorsResponse.ok) {
|
|
116
|
-
throw new Error(`GitLab API error: ${contributorsResponse.status} ${contributorsResponse.statusText}`);
|
|
108
|
+
// Use contributors API for entire repository
|
|
109
|
+
const contributorsResponse = await fetch(`${this.apiUrl}/projects/${encodeURIComponent(projectId)}/repository/contributors?per_page=100`, {
|
|
110
|
+
headers: {
|
|
111
|
+
'PRIVATE-TOKEN': this.accessToken
|
|
117
112
|
}
|
|
118
|
-
|
|
113
|
+
});
|
|
114
|
+
if (!contributorsResponse.ok) {
|
|
115
|
+
throw new Error(`GitLab API error: ${contributorsResponse.status} ${contributorsResponse.statusText}`);
|
|
119
116
|
}
|
|
117
|
+
return await contributorsResponse.json();
|
|
120
118
|
}
|
|
121
119
|
/**
|
|
122
120
|
* Fetches contributors from GitLab API (supports multiple projects)
|
|
@@ -131,29 +129,24 @@ const EdsGitlabContributors$1 = /*@__PURE__*/ proxyCustomElement(class EdsGitlab
|
|
|
131
129
|
this.loading = true;
|
|
132
130
|
this.error = '';
|
|
133
131
|
const projectIds = this.getProjectIds();
|
|
134
|
-
|
|
132
|
+
const allContributorsData = [];
|
|
135
133
|
// Fetch contributors from all projects
|
|
136
134
|
for (const projectId of projectIds) {
|
|
137
135
|
const contributorsData = await this.fetchContributorsForProject(projectId);
|
|
138
136
|
allContributorsData.push(...contributorsData);
|
|
139
137
|
}
|
|
140
138
|
// Filter by minimum commits and exclude bot contributors
|
|
141
|
-
const filteredContributors = allContributorsData.filter(c => {
|
|
139
|
+
const filteredContributors = allContributorsData.filter((c) => {
|
|
142
140
|
// Exclude if commits are below minimum
|
|
143
|
-
if (c.commits < this.minCommits)
|
|
141
|
+
if (c.commits < this.minCommits) {
|
|
144
142
|
return false;
|
|
143
|
+
}
|
|
145
144
|
// Exclude GitLab CI and other bots
|
|
146
145
|
const email = c.email.toLowerCase();
|
|
147
146
|
const name = c.name.toLowerCase();
|
|
148
147
|
// Common bot identifiers
|
|
149
|
-
const botPatterns = [
|
|
150
|
-
|
|
151
|
-
'gitlab ci',
|
|
152
|
-
'noreply@gitlab',
|
|
153
|
-
'bot@',
|
|
154
|
-
'automation@'
|
|
155
|
-
];
|
|
156
|
-
return !botPatterns.some(pattern => email.includes(pattern) || name.includes(pattern));
|
|
148
|
+
const botPatterns = ['gitlab-ci', 'gitlab ci', 'noreply@gitlab', 'bot@', 'automation@'];
|
|
149
|
+
return !botPatterns.some((pattern) => email.includes(pattern) || name.includes(pattern));
|
|
157
150
|
});
|
|
158
151
|
// Aggregate duplicate contributors by username
|
|
159
152
|
const aggregatedContributors = this.aggregateContributors(filteredContributors);
|
|
@@ -240,15 +233,18 @@ const EdsGitlabContributors$1 = /*@__PURE__*/ proxyCustomElement(class EdsGitlab
|
|
|
240
233
|
return (h("div", { class: "loading", role: "status", "aria-live": "polite" }, h("eds-spinner", { size: "sm", variant: "primary", background: "transparent", message: "Loading contributors..." })));
|
|
241
234
|
}
|
|
242
235
|
if (this.error) {
|
|
243
|
-
return
|
|
236
|
+
return h("eds-alert", { message: "Error loading contributors", intent: "error" });
|
|
244
237
|
}
|
|
245
238
|
if (this.contributors.length === 0) {
|
|
246
|
-
return
|
|
239
|
+
return h("eds-alert", { message: "No contributors found for this project.", intent: "error" });
|
|
247
240
|
}
|
|
248
|
-
const gridClass = `grid gap-6 w-full ${this.columns === '2'
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
241
|
+
const gridClass = `grid gap-6 w-full ${this.columns === '2'
|
|
242
|
+
? 'grid-cols-1 sm:grid-cols-2'
|
|
243
|
+
: this.columns === '3'
|
|
244
|
+
? 'grid-cols-1 sm:grid-cols-2 md:grid-cols-3'
|
|
245
|
+
: this.columns === '4'
|
|
246
|
+
? 'grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4'
|
|
247
|
+
: 'grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5'}`;
|
|
252
248
|
return (h("div", { class: "w-full" }, h("div", { class: gridClass }, this.contributors.map((contributor) => {
|
|
253
249
|
const { firstName, lastName } = this.parseName(contributor.name);
|
|
254
250
|
return (h("div", { class: "contributor-card flex flex-row gap-4 p-5 bg-white border border-gray-200 rounded-lg transition-all duration-200", key: contributor.email }, h("div", { class: "flex-shrink-0" }, h("eds-avatar", { firstName: firstName, lastName: lastName, color: "black" })), h("div", { class: "min-w-0 flex flex-col gap-2" }, h("span", { class: "f-ui-01 text-default pb-2 m-0 whitespace-nowrap overflow-hidden text-ellipsis" }, "@", contributor.username), h("div", { class: "flex flex-col gap-2 mt-auto" }, h("div", { class: "flex items-center gap-2 font-semibold" }, h("span", { class: "text-light" }, this.formatNumber(contributor.commits)), h("span", { class: "text-lighter" }, contributor.commits === 1 ? 'commit' : 'commits'))))));
|
|
@@ -148,7 +148,9 @@ const EdsGlobalSearch$1 = /*@__PURE__*/ proxyCustomElement(class EdsGlobalSearch
|
|
|
148
148
|
if (this.authToken) {
|
|
149
149
|
headers['Authorization'] = `Bearer ${this.authToken}`;
|
|
150
150
|
}
|
|
151
|
-
const response = await fetch(`${this.apiEndpoint}?q=${encodeURIComponent(query)}&limit=${this.limit}`, {
|
|
151
|
+
const response = await fetch(`${this.apiEndpoint}?q=${encodeURIComponent(query)}&limit=${this.limit}`, {
|
|
152
|
+
headers
|
|
153
|
+
});
|
|
152
154
|
if (!response.ok) {
|
|
153
155
|
throw new Error('Search failed');
|
|
154
156
|
}
|
|
@@ -238,19 +240,23 @@ const EdsGlobalSearch$1 = /*@__PURE__*/ proxyCustomElement(class EdsGlobalSearch
|
|
|
238
240
|
return this.hasSearched && !this.loading && !this.hasResults && this.query.trim();
|
|
239
241
|
}
|
|
240
242
|
render() {
|
|
241
|
-
return (h("div", { key: '
|
|
243
|
+
return (h("div", { key: '677355c6a3318ec1197965eac1b2cd92d1068730', class: "search-wrapper" }, h("label", { key: 'f5cc85b9445df11e888428bb2a0b2b4114bdc3a9', class: `search-pill search-pill--${this.variant}`, htmlFor: "search-global" }, h("svg", { key: 'b95972f32833c302166af4d496d62aabbbca6b96', class: "search-icon", width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("circle", { key: '916f6f24dc45b800fd024196cad8a5a7704715e0', cx: "11", cy: "11", r: "7" }), h("line", { key: 'e73a37d14e3c5de75ff1d5e1ff3ac6dc17276884', x1: "20", y1: "20", x2: "16.5", y2: "16.5" })), h("input", { key: 'e9c88b7577dbc32d700f4ccfc657ac3400c406a7', id: "search-global", class: "search-input", type: "search", name: "search-box-global", placeholder: this.placeholder, value: this.query, autoComplete: "off", onInput: this.handleInput, ref: (el) => (this.inputRef = el) }), this.query && this.query.length > 0 ? (h("button", { type: "button", class: "search-clear", "aria-label": "Clear search", onMouseDown: (e) => e.preventDefault() /* keep focus in input */, onClick: () => this.handleClear() }, h("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "2.2", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("line", { x1: "18", y1: "6", x2: "6", y2: "18" }), h("line", { x1: "6", y1: "6", x2: "18", y2: "18" })))) : (h("kbd", { class: "search-kbd", "aria-hidden": "true" }, "\u2318K"))), this.showDropdown && (h("div", { key: 'bac2451a0d8e8fe44f4ee8205aac072866c071cc', class: "search-dropdown", ref: (el) => (this.dropdownRef = el) }, this.loading && (h("div", { key: '2272670a68466fdcb7f7dbef9392c85524f26511', class: "flex text-center justify-center p-64" }, h("eds-spinner", { key: 'ea08bc71e4e251110d63c1f7f0c9ec3cf4f02d31', variant: "primary", size: "sm" }))), this.error && !this.loading && (h("div", { key: 'c54f235e8cf516715d83b830c13b7091ce10c8e5', class: "flex text-center justify-center p-16" }, h("span", { key: '5e0164e70620b1b70acbd665f72e02627758d447', class: "text-error f-body-02" }, this.error))), this.showEmpty && (h("div", { key: 'bc8c5dce2e1e9e0cdb46db53a94d4a06401f8c2f', class: "dropdown-state" }, h("eds-icon-wrapper", { key: 'ddb1815134abfd538530de6d805006f2e629f423', name: "search" }), h("div", { key: '0fe6b3742f59bf6a9745d0c3652caeed1c9fcd0c' }, h("p", { key: '26751d170e283e85eb0fa914c7cd681281b79606', class: "f-body-02" }, "No results found"), h("p", { key: '3c5117ba70272690647141c09105ad73142d2880', class: "f-ui-04 text-lightest" }, "Try different keywords")))), this.hasResults && !this.loading && (h("ul", { key: 'ec4e905215fa05a2d29e3cb02325b898cc8e7e75', class: "dropdown-results" }, this.results.map((result, index) => (h("li", { key: result.id, "data-index": index, class: {
|
|
242
244
|
'result-item': true,
|
|
243
245
|
'result-item--selected': index === this.selectedIndex
|
|
244
|
-
}, onClick: () => this.selectResult(result), onMouseEnter: () => (this.selectedIndex = index) }, h("div", { class: "result-header" }, h("span", { class: "result-title f-body-02" }, result.title)), h("div", { class: "result-meta" }, result.parent_software
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
result.
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
246
|
+
}, onClick: () => this.selectResult(result), onMouseEnter: () => (this.selectedIndex = index) }, h("div", { class: "result-header" }, h("span", { class: "result-title f-body-02" }, result.title)), h("div", { class: "result-meta" }, result.parent_software
|
|
247
|
+
? [
|
|
248
|
+
h("span", { class: "result-badge result-badge--parent" }, result.parent_software),
|
|
249
|
+
result.section && h("span", { class: "result-badge result-badge--lr" }, result.section)
|
|
250
|
+
]
|
|
251
|
+
: result.source === 'kg-services'
|
|
252
|
+
? [
|
|
253
|
+
h("span", { class: "result-badge" }, "EBRAINS KG"),
|
|
254
|
+
result.section && h("span", { class: "result-badge" }, result.section)
|
|
255
|
+
]
|
|
256
|
+
: [
|
|
257
|
+
h("span", { class: "result-badge" }, result.source),
|
|
258
|
+
result.section && h("span", { class: "result-badge" }, result.section)
|
|
259
|
+
], h("span", { class: "result-url" }, result.url)), result.snippet && h("p", { class: "result-snippet" }, this.stripHtml(result.snippet))))))), this.hasResults && !this.loading && (h("div", { key: '8ba2b0905762d08201d770ef4ad555b5817a93d5', class: "dropdown-footer" }, h("span", { key: '447177da436c4673c1530b63985069270eea9629', class: "footer-hint" }, h("kbd", { key: 'eca68fd4c32ff1b05130322d55c6b40353d0d7e9' }, "\u2191"), " ", h("kbd", { key: 'f0e8c800465276b7648e883f0de99389e144cbdf' }, "\u2193"), " navigate \u2022 ", h("kbd", { key: 'a40bfd64de00d1e9e7770ae13221b84e7270a93e' }, "\u21B5"), " select \u2022 ", h("kbd", { key: 'bbc53439fad27289cdd4705a7ddb61e8d3b578ee' }, "esc"), " close")))))));
|
|
254
260
|
}
|
|
255
261
|
get el() { return this; }
|
|
256
262
|
static get style() { return EdsGlobalSearchStyle0; }
|
|
@@ -53,7 +53,7 @@ const EdsHeader$1 = /*@__PURE__*/ proxyCustomElement(class EdsHeader extends HTM
|
|
|
53
53
|
const logoType = this.variant === 'strong' ? 'negative' : 'positive';
|
|
54
54
|
// Link intent based on header variant
|
|
55
55
|
const linkIntent = this.variant === 'strong' ? 'underlineInverse' : 'underline';
|
|
56
|
-
return (h("header", { key: '
|
|
56
|
+
return (h("header", { key: '7b2039f33349e19ff3f6e8519e36c73008f636ff', role: "banner", class: `flex items-center justify-between relative z-10 ${classes}` }, h("div", { key: '300470c050a9f50a08cc0d964b718327ecec598f', class: "w-[250px]" }, h("div", { key: '4ff98957c7f838561b2a86b6fcf5a40a1f631d94', class: "p-[24px]" }, h("eds-logo", { key: '610e8465379fbdc9cab1d315aa11940763ba4561', variant: logoType, href: this.url }))), this.parsedLinks && (h("nav", { key: '97e14d79eea2d69fb37785984d29167e3056c2ec', role: "navigation", "aria-label": "Primary", class: "flex-1 flex justify-center items-center hidden md:flex" }, h("ul", { key: '79a7dd5f647319b339078ad426160ebc21af733d', class: "flex gap-x-16" }, this.parsedLinks.map((link) => (h("eds-link", { label: link.label, "aria-label": link.label, url: link.url, intent: linkIntent, size: "large", icon: link.icon, external: link.external })))))), h("div", { key: '1da0a64c28395f3601e6e954f5ed9017525d4c2e', class: "w-[250px] flex justify-end items-center" }, h("slot", { key: 'bae6c23ce8400bc5ff21c4aec71e915bde7b15f2', name: "actions" })), this.menu && (h("div", { key: '9ab2466ce42dcf2136565a14522f734565bd2fbf', class: "md:hidden flex overflow-hidden px-16" }, h("eds-button", { key: 'bd2e20f436a96bd28eea126e655f0c9c9976d32e', "aria-label": "Menu", intent: this.variant === 'strong' ? 'ghostInverse' : 'ghost', icon: "menu", size: "small", onClick: () => this.handleToggleMenu() })))));
|
|
57
57
|
}
|
|
58
58
|
get hostEl() { return this; }
|
|
59
59
|
static get style() { return EdsHeaderStyle0; }
|
|
@@ -8,7 +8,7 @@ const EdsIconBluesky$1 = /*@__PURE__*/ proxyCustomElement(class EdsIconBluesky e
|
|
|
8
8
|
this.class = '';
|
|
9
9
|
}
|
|
10
10
|
render() {
|
|
11
|
-
return h("span", { key: '
|
|
11
|
+
return h("span", { key: '5478b4eafaaa8df66ab3e172d1dae11a7bd8aab3', class: this.class, innerHTML: bluesky });
|
|
12
12
|
}
|
|
13
13
|
}, [0, "eds-icon-bluesky", {
|
|
14
14
|
"class": [1]
|
|
@@ -8,7 +8,7 @@ const EdsIconEu$1 = /*@__PURE__*/ proxyCustomElement(class EdsIconEu extends HTM
|
|
|
8
8
|
this.class = '';
|
|
9
9
|
}
|
|
10
10
|
render() {
|
|
11
|
-
return h("span", { key: '
|
|
11
|
+
return h("span", { key: 'a449a7323e89e495479822dd750e2ec7935491f1', class: this.class, innerHTML: euSvg });
|
|
12
12
|
}
|
|
13
13
|
}, [0, "eds-icon-eu", {
|
|
14
14
|
"class": [1]
|
|
@@ -8,7 +8,7 @@ const EdsIconFacebook$1 = /*@__PURE__*/ proxyCustomElement(class EdsIconFacebook
|
|
|
8
8
|
this.class = '';
|
|
9
9
|
}
|
|
10
10
|
render() {
|
|
11
|
-
return h("span", { key: '
|
|
11
|
+
return h("span", { key: '44a7797929e643d63c492dfb0959d61b0513ce47', class: this.class, innerHTML: facebook });
|
|
12
12
|
}
|
|
13
13
|
}, [0, "eds-icon-facebook", {
|
|
14
14
|
"class": [1]
|
|
@@ -8,7 +8,7 @@ const EdsIconGitlab$1 = /*@__PURE__*/ proxyCustomElement(class EdsIconGitlab ext
|
|
|
8
8
|
this.class = '';
|
|
9
9
|
}
|
|
10
10
|
render() {
|
|
11
|
-
return h("span", { key: '
|
|
11
|
+
return h("span", { key: '1dec6051705f876a5263741023164c02f49097e4', class: this.class, innerHTML: gitlabBlack });
|
|
12
12
|
}
|
|
13
13
|
}, [0, "eds-icon-gitlab", {
|
|
14
14
|
"class": [1]
|
|
@@ -8,7 +8,7 @@ const EdsIconLinkedin$1 = /*@__PURE__*/ proxyCustomElement(class EdsIconLinkedin
|
|
|
8
8
|
this.class = '';
|
|
9
9
|
}
|
|
10
10
|
render() {
|
|
11
|
-
return h("span", { key: '
|
|
11
|
+
return h("span", { key: '39eaed2d3eec8d05b46d26a2d5a00be18d305b58', class: this.class, innerHTML: linkedin });
|
|
12
12
|
}
|
|
13
13
|
}, [0, "eds-icon-linkedin", {
|
|
14
14
|
"class": [1]
|