@ongov/ontario-design-system-component-library 6.0.0-alpha.5 → 6.0.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/index.d.ts +43 -0
- package/components/index.js +2169 -0
- package/components/index.js.map +1 -0
- package/components/ontario-accordion.d.ts +11 -0
- package/components/ontario-accordion.js +378 -0
- package/components/ontario-accordion.js.map +1 -0
- package/components/ontario-aside.d.ts +11 -0
- package/components/ontario-aside.js +171 -0
- package/components/ontario-aside.js.map +1 -0
- package/components/ontario-back-to-top.d.ts +11 -0
- package/components/ontario-back-to-top.js +119 -0
- package/components/ontario-back-to-top.js.map +1 -0
- package/components/ontario-badge.d.ts +11 -0
- package/components/ontario-badge.js +9 -0
- package/components/ontario-badge.js.map +1 -0
- package/components/ontario-blockquote.d.ts +11 -0
- package/components/ontario-blockquote.js +145 -0
- package/components/ontario-blockquote.js.map +1 -0
- package/components/ontario-button.d.ts +11 -0
- package/components/ontario-button.js +237 -0
- package/components/ontario-button.js.map +1 -0
- package/components/ontario-callout.d.ts +11 -0
- package/components/ontario-callout.js +170 -0
- package/components/ontario-callout.js.map +1 -0
- package/components/ontario-card-collection.d.ts +11 -0
- package/components/ontario-card-collection.js +111 -0
- package/components/ontario-card-collection.js.map +1 -0
- package/components/ontario-card.d.ts +11 -0
- package/components/ontario-card.js +389 -0
- package/components/ontario-card.js.map +1 -0
- package/components/ontario-checkboxes.d.ts +11 -0
- package/components/ontario-checkboxes.js +428 -0
- package/components/ontario-checkboxes.js.map +1 -0
- package/components/ontario-critical-alert.d.ts +11 -0
- package/components/ontario-critical-alert.js +128 -0
- package/components/ontario-critical-alert.js.map +1 -0
- package/components/ontario-date-input.d.ts +11 -0
- package/components/ontario-date-input.js +623 -0
- package/components/ontario-date-input.js.map +1 -0
- package/components/ontario-dropdown-list.d.ts +11 -0
- package/components/ontario-dropdown-list.js +449 -0
- package/components/ontario-dropdown-list.js.map +1 -0
- package/components/ontario-fieldset.d.ts +11 -0
- package/components/ontario-fieldset.js +167 -0
- package/components/ontario-fieldset.js.map +1 -0
- package/components/ontario-footer.d.ts +11 -0
- package/components/ontario-footer.js +455 -0
- package/components/ontario-footer.js.map +1 -0
- package/components/ontario-form-container.d.ts +11 -0
- package/components/ontario-form-container.js +74 -0
- package/components/ontario-form-container.js.map +1 -0
- package/components/ontario-header-overflow-menu.d.ts +11 -0
- package/components/ontario-header-overflow-menu.js +9 -0
- package/components/ontario-header-overflow-menu.js.map +1 -0
- package/components/ontario-header.d.ts +11 -0
- package/components/ontario-header.js +900 -0
- package/components/ontario-header.js.map +1 -0
- package/components/ontario-hint-expander.d.ts +11 -0
- package/components/ontario-hint-expander.js +9 -0
- package/components/ontario-hint-expander.js.map +1 -0
- package/components/ontario-hint-text.d.ts +11 -0
- package/components/ontario-hint-text.js +9 -0
- package/components/ontario-hint-text.js.map +1 -0
- package/components/ontario-icon-accessibility.d.ts +11 -0
- package/components/ontario-icon-accessibility.js +170 -0
- package/components/ontario-icon-accessibility.js.map +1 -0
- package/components/ontario-icon-account.d.ts +11 -0
- package/components/ontario-icon-account.js +170 -0
- package/components/ontario-icon-account.js.map +1 -0
- package/components/ontario-icon-add-alt.d.ts +11 -0
- package/components/ontario-icon-add-alt.js +171 -0
- package/components/ontario-icon-add-alt.js.map +1 -0
- package/components/ontario-icon-add.d.ts +11 -0
- package/components/ontario-icon-add.js +171 -0
- package/components/ontario-icon-add.js.map +1 -0
- package/components/ontario-icon-alert-error.d.ts +11 -0
- package/components/ontario-icon-alert-error.js +9 -0
- package/components/ontario-icon-alert-error.js.map +1 -0
- package/components/ontario-icon-alert-information.d.ts +11 -0
- package/components/ontario-icon-alert-information.js +9 -0
- package/components/ontario-icon-alert-information.js.map +1 -0
- package/components/ontario-icon-alert-success.d.ts +11 -0
- package/components/ontario-icon-alert-success.js +9 -0
- package/components/ontario-icon-alert-success.js.map +1 -0
- package/components/ontario-icon-alert-warning.d.ts +11 -0
- package/components/ontario-icon-alert-warning.js +9 -0
- package/components/ontario-icon-alert-warning.js.map +1 -0
- package/components/ontario-icon-arrow-up.d.ts +11 -0
- package/components/ontario-icon-arrow-up.js +171 -0
- package/components/ontario-icon-arrow-up.js.map +1 -0
- package/components/ontario-icon-attach.d.ts +11 -0
- package/components/ontario-icon-attach.js +172 -0
- package/components/ontario-icon-attach.js.map +1 -0
- package/components/ontario-icon-bookmark-off.d.ts +11 -0
- package/components/ontario-icon-bookmark-off.js +170 -0
- package/components/ontario-icon-bookmark-off.js.map +1 -0
- package/components/ontario-icon-bookmark-on.d.ts +11 -0
- package/components/ontario-icon-bookmark-on.js +170 -0
- package/components/ontario-icon-bookmark-on.js.map +1 -0
- package/components/ontario-icon-calendar.d.ts +11 -0
- package/components/ontario-icon-calendar.js +170 -0
- package/components/ontario-icon-calendar.js.map +1 -0
- package/components/ontario-icon-camera.d.ts +11 -0
- package/components/ontario-icon-camera.js +170 -0
- package/components/ontario-icon-camera.js.map +1 -0
- package/components/ontario-icon-chevron-down.d.ts +11 -0
- package/components/ontario-icon-chevron-down.js +9 -0
- package/components/ontario-icon-chevron-down.js.map +1 -0
- package/components/ontario-icon-chevron-left.d.ts +11 -0
- package/components/ontario-icon-chevron-left.js +9 -0
- package/components/ontario-icon-chevron-left.js.map +1 -0
- package/components/ontario-icon-chevron-right.d.ts +11 -0
- package/components/ontario-icon-chevron-right.js +171 -0
- package/components/ontario-icon-chevron-right.js.map +1 -0
- package/components/ontario-icon-chevron-up.d.ts +11 -0
- package/components/ontario-icon-chevron-up.js +9 -0
- package/components/ontario-icon-chevron-up.js.map +1 -0
- package/components/ontario-icon-clock.d.ts +11 -0
- package/components/ontario-icon-clock.js +170 -0
- package/components/ontario-icon-clock.js.map +1 -0
- package/components/ontario-icon-close-header.d.ts +11 -0
- package/components/ontario-icon-close-header.js +171 -0
- package/components/ontario-icon-close-header.js.map +1 -0
- package/components/ontario-icon-close.d.ts +11 -0
- package/components/ontario-icon-close.js +171 -0
- package/components/ontario-icon-close.js.map +1 -0
- package/components/ontario-icon-cloud.d.ts +11 -0
- package/components/ontario-icon-cloud.js +170 -0
- package/components/ontario-icon-cloud.js.map +1 -0
- package/components/ontario-icon-collapse.d.ts +11 -0
- package/components/ontario-icon-collapse.js +168 -0
- package/components/ontario-icon-collapse.js.map +1 -0
- package/components/ontario-icon-credit-card.d.ts +11 -0
- package/components/ontario-icon-credit-card.js +171 -0
- package/components/ontario-icon-credit-card.js.map +1 -0
- package/components/ontario-icon-critical-alert-warning.d.ts +11 -0
- package/components/ontario-icon-critical-alert-warning.js +188 -0
- package/components/ontario-icon-critical-alert-warning.js.map +1 -0
- package/components/ontario-icon-delete.d.ts +11 -0
- package/components/ontario-icon-delete.js +170 -0
- package/components/ontario-icon-delete.js.map +1 -0
- package/components/ontario-icon-document.d.ts +11 -0
- package/components/ontario-icon-document.js +170 -0
- package/components/ontario-icon-document.js.map +1 -0
- package/components/ontario-icon-download.d.ts +11 -0
- package/components/ontario-icon-download.js +170 -0
- package/components/ontario-icon-download.js.map +1 -0
- package/components/ontario-icon-dropdown-arrow.d.ts +11 -0
- package/components/ontario-icon-dropdown-arrow.js +142 -0
- package/components/ontario-icon-dropdown-arrow.js.map +1 -0
- package/components/ontario-icon-edit.d.ts +11 -0
- package/components/ontario-icon-edit.js +170 -0
- package/components/ontario-icon-edit.js.map +1 -0
- package/components/ontario-icon-email.d.ts +11 -0
- package/components/ontario-icon-email.js +171 -0
- package/components/ontario-icon-email.js.map +1 -0
- package/components/ontario-icon-expand.d.ts +11 -0
- package/components/ontario-icon-expand.js +168 -0
- package/components/ontario-icon-expand.js.map +1 -0
- package/components/ontario-icon-export.d.ts +11 -0
- package/components/ontario-icon-export.js +170 -0
- package/components/ontario-icon-export.js.map +1 -0
- package/components/ontario-icon-facebook-alt.d.ts +11 -0
- package/components/ontario-icon-facebook-alt.js +170 -0
- package/components/ontario-icon-facebook-alt.js.map +1 -0
- package/components/ontario-icon-facebook.d.ts +11 -0
- package/components/ontario-icon-facebook.js +170 -0
- package/components/ontario-icon-facebook.js.map +1 -0
- package/components/ontario-icon-favourite-off.d.ts +11 -0
- package/components/ontario-icon-favourite-off.js +170 -0
- package/components/ontario-icon-favourite-off.js.map +1 -0
- package/components/ontario-icon-favourite-on.d.ts +11 -0
- package/components/ontario-icon-favourite-on.js +170 -0
- package/components/ontario-icon-favourite-on.js.map +1 -0
- package/components/ontario-icon-filter.d.ts +11 -0
- package/components/ontario-icon-filter.js +170 -0
- package/components/ontario-icon-filter.js.map +1 -0
- package/components/ontario-icon-flickr.d.ts +11 -0
- package/components/ontario-icon-flickr.js +170 -0
- package/components/ontario-icon-flickr.js.map +1 -0
- package/components/ontario-icon-grid.d.ts +11 -0
- package/components/ontario-icon-grid.js +170 -0
- package/components/ontario-icon-grid.js.map +1 -0
- package/components/ontario-icon-help.d.ts +11 -0
- package/components/ontario-icon-help.js +171 -0
- package/components/ontario-icon-help.js.map +1 -0
- package/components/ontario-icon-instagram.d.ts +11 -0
- package/components/ontario-icon-instagram.js +170 -0
- package/components/ontario-icon-instagram.js.map +1 -0
- package/components/ontario-icon-interac-en-alt.d.ts +11 -0
- package/components/ontario-icon-interac-en-alt.js +203 -0
- package/components/ontario-icon-interac-en-alt.js.map +1 -0
- package/components/ontario-icon-interac-en.d.ts +11 -0
- package/components/ontario-icon-interac-en.js +202 -0
- package/components/ontario-icon-interac-en.js.map +1 -0
- package/components/ontario-icon-interac-fr-alt.d.ts +11 -0
- package/components/ontario-icon-interac-fr-alt.js +203 -0
- package/components/ontario-icon-interac-fr-alt.js.map +1 -0
- package/components/ontario-icon-interac-fr.d.ts +11 -0
- package/components/ontario-icon-interac-fr.js +183 -0
- package/components/ontario-icon-interac-fr.js.map +1 -0
- package/components/ontario-icon-linkedin-alt.d.ts +11 -0
- package/components/ontario-icon-linkedin-alt.js +170 -0
- package/components/ontario-icon-linkedin-alt.js.map +1 -0
- package/components/ontario-icon-linkedin.d.ts +11 -0
- package/components/ontario-icon-linkedin.js +170 -0
- package/components/ontario-icon-linkedin.js.map +1 -0
- package/components/ontario-icon-list.d.ts +11 -0
- package/components/ontario-icon-list.js +170 -0
- package/components/ontario-icon-list.js.map +1 -0
- package/components/ontario-icon-live-chat.d.ts +11 -0
- package/components/ontario-icon-live-chat.js +170 -0
- package/components/ontario-icon-live-chat.js.map +1 -0
- package/components/ontario-icon-location-off.d.ts +11 -0
- package/components/ontario-icon-location-off.js +170 -0
- package/components/ontario-icon-location-off.js.map +1 -0
- package/components/ontario-icon-location-on.d.ts +11 -0
- package/components/ontario-icon-location-on.js +170 -0
- package/components/ontario-icon-location-on.js.map +1 -0
- package/components/ontario-icon-lock-off.d.ts +11 -0
- package/components/ontario-icon-lock-off.js +170 -0
- package/components/ontario-icon-lock-off.js.map +1 -0
- package/components/ontario-icon-lock-on.d.ts +11 -0
- package/components/ontario-icon-lock-on.js +170 -0
- package/components/ontario-icon-lock-on.js.map +1 -0
- package/components/ontario-icon-map.d.ts +11 -0
- package/components/ontario-icon-map.js +170 -0
- package/components/ontario-icon-map.js.map +1 -0
- package/components/ontario-icon-mastercard-alt.d.ts +11 -0
- package/components/ontario-icon-mastercard-alt.js +161 -0
- package/components/ontario-icon-mastercard-alt.js.map +1 -0
- package/components/ontario-icon-mastercard.d.ts +11 -0
- package/components/ontario-icon-mastercard.js +173 -0
- package/components/ontario-icon-mastercard.js.map +1 -0
- package/components/ontario-icon-media-fast-forward.d.ts +11 -0
- package/components/ontario-icon-media-fast-forward.js +167 -0
- package/components/ontario-icon-media-fast-forward.js.map +1 -0
- package/components/ontario-icon-media-fast-rewind.d.ts +11 -0
- package/components/ontario-icon-media-fast-rewind.js +170 -0
- package/components/ontario-icon-media-fast-rewind.js.map +1 -0
- package/components/ontario-icon-media-pause.d.ts +11 -0
- package/components/ontario-icon-media-pause.js +167 -0
- package/components/ontario-icon-media-pause.js.map +1 -0
- package/components/ontario-icon-media-play.d.ts +11 -0
- package/components/ontario-icon-media-play.js +167 -0
- package/components/ontario-icon-media-play.js.map +1 -0
- package/components/ontario-icon-media-stop.d.ts +11 -0
- package/components/ontario-icon-media-stop.js +167 -0
- package/components/ontario-icon-media-stop.js.map +1 -0
- package/components/ontario-icon-menu-header.d.ts +11 -0
- package/components/ontario-icon-menu-header.js +171 -0
- package/components/ontario-icon-menu-header.js.map +1 -0
- package/components/ontario-icon-menu.d.ts +11 -0
- package/components/ontario-icon-menu.js +171 -0
- package/components/ontario-icon-menu.js.map +1 -0
- package/components/ontario-icon-microphone-off.d.ts +11 -0
- package/components/ontario-icon-microphone-off.js +170 -0
- package/components/ontario-icon-microphone-off.js.map +1 -0
- package/components/ontario-icon-microphone-on.d.ts +11 -0
- package/components/ontario-icon-microphone-on.js +170 -0
- package/components/ontario-icon-microphone-on.js.map +1 -0
- package/components/ontario-icon-more-vertical.d.ts +11 -0
- package/components/ontario-icon-more-vertical.js +170 -0
- package/components/ontario-icon-more-vertical.js.map +1 -0
- package/components/ontario-icon-new-window.d.ts +11 -0
- package/components/ontario-icon-new-window.js +171 -0
- package/components/ontario-icon-new-window.js.map +1 -0
- package/components/ontario-icon-next.d.ts +11 -0
- package/components/ontario-icon-next.js +170 -0
- package/components/ontario-icon-next.js.map +1 -0
- package/components/ontario-icon-notification.d.ts +11 -0
- package/components/ontario-icon-notification.js +170 -0
- package/components/ontario-icon-notification.js.map +1 -0
- package/components/ontario-icon-password-hide.d.ts +11 -0
- package/components/ontario-icon-password-hide.js +170 -0
- package/components/ontario-icon-password-hide.js.map +1 -0
- package/components/ontario-icon-password-show.d.ts +11 -0
- package/components/ontario-icon-password-show.js +170 -0
- package/components/ontario-icon-password-show.js.map +1 -0
- package/components/ontario-icon-phone.d.ts +11 -0
- package/components/ontario-icon-phone.js +171 -0
- package/components/ontario-icon-phone.js.map +1 -0
- package/components/ontario-icon-photo.d.ts +11 -0
- package/components/ontario-icon-photo.js +170 -0
- package/components/ontario-icon-photo.js.map +1 -0
- package/components/ontario-icon-pin-location-off.d.ts +11 -0
- package/components/ontario-icon-pin-location-off.js +170 -0
- package/components/ontario-icon-pin-location-off.js.map +1 -0
- package/components/ontario-icon-pin-location-on.d.ts +11 -0
- package/components/ontario-icon-pin-location-on.js +170 -0
- package/components/ontario-icon-pin-location-on.js.map +1 -0
- package/components/ontario-icon-previous.d.ts +11 -0
- package/components/ontario-icon-previous.js +170 -0
- package/components/ontario-icon-previous.js.map +1 -0
- package/components/ontario-icon-print.d.ts +11 -0
- package/components/ontario-icon-print.js +170 -0
- package/components/ontario-icon-print.js.map +1 -0
- package/components/ontario-icon-remove-alt.d.ts +11 -0
- package/components/ontario-icon-remove-alt.js +171 -0
- package/components/ontario-icon-remove-alt.js.map +1 -0
- package/components/ontario-icon-remove.d.ts +11 -0
- package/components/ontario-icon-remove.js +171 -0
- package/components/ontario-icon-remove.js.map +1 -0
- package/components/ontario-icon-replay.d.ts +11 -0
- package/components/ontario-icon-replay.js +170 -0
- package/components/ontario-icon-replay.js.map +1 -0
- package/components/ontario-icon-rss-feed.d.ts +11 -0
- package/components/ontario-icon-rss-feed.js +170 -0
- package/components/ontario-icon-rss-feed.js.map +1 -0
- package/components/ontario-icon-save.d.ts +11 -0
- package/components/ontario-icon-save.js +170 -0
- package/components/ontario-icon-save.js.map +1 -0
- package/components/ontario-icon-search-white.d.ts +11 -0
- package/components/ontario-icon-search-white.js +173 -0
- package/components/ontario-icon-search-white.js.map +1 -0
- package/components/ontario-icon-search.d.ts +11 -0
- package/components/ontario-icon-search.js +171 -0
- package/components/ontario-icon-search.js.map +1 -0
- package/components/ontario-icon-sentiment-1.d.ts +11 -0
- package/components/ontario-icon-sentiment-1.js +170 -0
- package/components/ontario-icon-sentiment-1.js.map +1 -0
- package/components/ontario-icon-sentiment-2.d.ts +11 -0
- package/components/ontario-icon-sentiment-2.js +170 -0
- package/components/ontario-icon-sentiment-2.js.map +1 -0
- package/components/ontario-icon-sentiment-3.d.ts +11 -0
- package/components/ontario-icon-sentiment-3.js +170 -0
- package/components/ontario-icon-sentiment-3.js.map +1 -0
- package/components/ontario-icon-sentiment-4.d.ts +11 -0
- package/components/ontario-icon-sentiment-4.js +170 -0
- package/components/ontario-icon-sentiment-4.js.map +1 -0
- package/components/ontario-icon-sentiment-5.d.ts +11 -0
- package/components/ontario-icon-sentiment-5.js +170 -0
- package/components/ontario-icon-sentiment-5.js.map +1 -0
- package/components/ontario-icon-settings.d.ts +11 -0
- package/components/ontario-icon-settings.js +170 -0
- package/components/ontario-icon-settings.js.map +1 -0
- package/components/ontario-icon-share.d.ts +11 -0
- package/components/ontario-icon-share.js +170 -0
- package/components/ontario-icon-share.js.map +1 -0
- package/components/ontario-icon-sort-alphabetical-ascending.d.ts +11 -0
- package/components/ontario-icon-sort-alphabetical-ascending.js +170 -0
- package/components/ontario-icon-sort-alphabetical-ascending.js.map +1 -0
- package/components/ontario-icon-sort-alphabetical-descending.d.ts +11 -0
- package/components/ontario-icon-sort-alphabetical-descending.js +170 -0
- package/components/ontario-icon-sort-alphabetical-descending.js.map +1 -0
- package/components/ontario-icon-sort-ascending.d.ts +11 -0
- package/components/ontario-icon-sort-ascending.js +170 -0
- package/components/ontario-icon-sort-ascending.js.map +1 -0
- package/components/ontario-icon-sort-descending.d.ts +11 -0
- package/components/ontario-icon-sort-descending.js +170 -0
- package/components/ontario-icon-sort-descending.js.map +1 -0
- package/components/ontario-icon-sort-variant.d.ts +11 -0
- package/components/ontario-icon-sort-variant.js +167 -0
- package/components/ontario-icon-sort-variant.js.map +1 -0
- package/components/ontario-icon-sort.d.ts +11 -0
- package/components/ontario-icon-sort.js +170 -0
- package/components/ontario-icon-sort.js.map +1 -0
- package/components/ontario-icon-tag.d.ts +11 -0
- package/components/ontario-icon-tag.js +170 -0
- package/components/ontario-icon-tag.js.map +1 -0
- package/components/ontario-icon-text-message.d.ts +11 -0
- package/components/ontario-icon-text-message.js +170 -0
- package/components/ontario-icon-text-message.js.map +1 -0
- package/components/ontario-icon-timer.d.ts +11 -0
- package/components/ontario-icon-timer.js +170 -0
- package/components/ontario-icon-timer.js.map +1 -0
- package/components/ontario-icon-transport-bicycle.d.ts +11 -0
- package/components/ontario-icon-transport-bicycle.js +170 -0
- package/components/ontario-icon-transport-bicycle.js.map +1 -0
- package/components/ontario-icon-transport-bus.d.ts +11 -0
- package/components/ontario-icon-transport-bus.js +170 -0
- package/components/ontario-icon-transport-bus.js.map +1 -0
- package/components/ontario-icon-transport-car.d.ts +11 -0
- package/components/ontario-icon-transport-car.js +170 -0
- package/components/ontario-icon-transport-car.js.map +1 -0
- package/components/ontario-icon-transport-walk.d.ts +11 -0
- package/components/ontario-icon-transport-walk.js +170 -0
- package/components/ontario-icon-transport-walk.js.map +1 -0
- package/components/ontario-icon-tty.d.ts +11 -0
- package/components/ontario-icon-tty.js +171 -0
- package/components/ontario-icon-tty.js.map +1 -0
- package/components/ontario-icon-twitter-alt.d.ts +11 -0
- package/components/ontario-icon-twitter-alt.js +170 -0
- package/components/ontario-icon-twitter-alt.js.map +1 -0
- package/components/ontario-icon-twitter.d.ts +11 -0
- package/components/ontario-icon-twitter.js +170 -0
- package/components/ontario-icon-twitter.js.map +1 -0
- package/components/ontario-icon-upload.d.ts +11 -0
- package/components/ontario-icon-upload.js +170 -0
- package/components/ontario-icon-upload.js.map +1 -0
- package/components/ontario-icon-video.d.ts +11 -0
- package/components/ontario-icon-video.js +170 -0
- package/components/ontario-icon-video.js.map +1 -0
- package/components/ontario-icon-visa.d.ts +11 -0
- package/components/ontario-icon-visa.js +148 -0
- package/components/ontario-icon-visa.js.map +1 -0
- package/components/ontario-icon-vote-dislike.d.ts +11 -0
- package/components/ontario-icon-vote-dislike.js +170 -0
- package/components/ontario-icon-vote-dislike.js.map +1 -0
- package/components/ontario-icon-vote-like.d.ts +11 -0
- package/components/ontario-icon-vote-like.js +170 -0
- package/components/ontario-icon-vote-like.js.map +1 -0
- package/components/ontario-icon-vpn-key.d.ts +11 -0
- package/components/ontario-icon-vpn-key.js +170 -0
- package/components/ontario-icon-vpn-key.js.map +1 -0
- package/components/ontario-icon-wheelchair.d.ts +11 -0
- package/components/ontario-icon-wheelchair.js +170 -0
- package/components/ontario-icon-wheelchair.js.map +1 -0
- package/components/ontario-icon-wifi.d.ts +11 -0
- package/components/ontario-icon-wifi.js +170 -0
- package/components/ontario-icon-wifi.js.map +1 -0
- package/components/ontario-icon-youtube.d.ts +11 -0
- package/components/ontario-icon-youtube.js +170 -0
- package/components/ontario-icon-youtube.js.map +1 -0
- package/components/ontario-input.d.ts +11 -0
- package/components/ontario-input.js +419 -0
- package/components/ontario-input.js.map +1 -0
- package/components/ontario-language-toggle.d.ts +11 -0
- package/components/ontario-language-toggle.js +9 -0
- package/components/ontario-language-toggle.js.map +1 -0
- package/components/ontario-loading-indicator.d.ts +11 -0
- package/components/ontario-loading-indicator.js +181 -0
- package/components/ontario-loading-indicator.js.map +1 -0
- package/components/ontario-page-alert.d.ts +11 -0
- package/components/ontario-page-alert.js +172 -0
- package/components/ontario-page-alert.js.map +1 -0
- package/components/ontario-radio-buttons.d.ts +11 -0
- package/components/ontario-radio-buttons.js +430 -0
- package/components/ontario-radio-buttons.js.map +1 -0
- package/components/ontario-search-box.d.ts +11 -0
- package/components/ontario-search-box.js +283 -0
- package/components/ontario-search-box.js.map +1 -0
- package/components/ontario-step-indicator.d.ts +11 -0
- package/components/ontario-step-indicator.js +172 -0
- package/components/ontario-step-indicator.js.map +1 -0
- package/components/ontario-table.d.ts +11 -0
- package/components/ontario-table.js +392 -0
- package/components/ontario-table.js.map +1 -0
- package/components/ontario-task-list.d.ts +11 -0
- package/components/ontario-task-list.js +211 -0
- package/components/ontario-task-list.js.map +1 -0
- package/components/ontario-task.d.ts +11 -0
- package/components/ontario-task.js +327 -0
- package/components/ontario-task.js.map +1 -0
- package/components/ontario-textarea.d.ts +11 -0
- package/components/ontario-textarea.js +327 -0
- package/components/ontario-textarea.js.map +1 -0
- package/components/p-6uqsTY-M.js +171 -0
- package/components/p-6uqsTY-M.js.map +1 -0
- package/components/p-A8xwC5QP.js +24 -0
- package/components/p-A8xwC5QP.js.map +1 -0
- package/components/p-BBhl-3u7.js +169 -0
- package/components/p-BBhl-3u7.js.map +1 -0
- package/components/p-BF0_OXTe.js +64 -0
- package/components/p-BF0_OXTe.js.map +1 -0
- package/components/p-BHTls9cv.js +286 -0
- package/components/p-BHTls9cv.js.map +1 -0
- package/components/p-BOcd5PoR.js +330 -0
- package/components/p-BOcd5PoR.js.map +1 -0
- package/components/p-BxXM4eur.js +29 -0
- package/components/p-BxXM4eur.js.map +1 -0
- package/components/p-C-t5TNzY.js +10 -0
- package/components/p-C-t5TNzY.js.map +1 -0
- package/components/p-C0Xvjp7G.js +282 -0
- package/components/p-C0Xvjp7G.js.map +1 -0
- package/components/p-C73HZQcq.js +89 -0
- package/components/p-C73HZQcq.js.map +1 -0
- package/components/p-CI209psv.js +271 -0
- package/components/p-CI209psv.js.map +1 -0
- package/components/p-CIdZS10A.js +20 -0
- package/components/p-CIdZS10A.js.map +1 -0
- package/components/p-CNDrx73J.js +145 -0
- package/components/p-CNDrx73J.js.map +1 -0
- package/components/p-CNqFEifG.js +34 -0
- package/components/p-CNqFEifG.js.map +1 -0
- package/components/p-CRMogYVY.js +168 -0
- package/components/p-CRMogYVY.js.map +1 -0
- package/components/p-CXTm9jmr.js +141 -0
- package/components/p-CXTm9jmr.js.map +1 -0
- package/components/p-CXfntdg5.js +7 -0
- package/components/p-CXfntdg5.js.map +1 -0
- package/components/p-C__FBxsY.js +145 -0
- package/components/p-C__FBxsY.js.map +1 -0
- package/components/p-Cdm-Ot0O.js +95 -0
- package/components/p-Cdm-Ot0O.js.map +1 -0
- package/components/p-CeFeBwzQ.js +331 -0
- package/components/p-CeFeBwzQ.js.map +1 -0
- package/components/p-DGFFJaKo.js +168 -0
- package/components/p-DGFFJaKo.js.map +1 -0
- package/components/p-DIe1tcOp.js +197 -0
- package/components/p-DIe1tcOp.js.map +1 -0
- package/components/p-DJOzeqZ-.js +168 -0
- package/components/p-DJOzeqZ-.js.map +1 -0
- package/components/p-DMH_JI3w.js +6 -0
- package/components/p-DMH_JI3w.js.map +1 -0
- package/components/p-DgMhpSmi.js +324 -0
- package/components/p-DgMhpSmi.js.map +1 -0
- package/components/p-TS9NoIOc.js +11 -0
- package/components/p-TS9NoIOc.js.map +1 -0
- package/components/p-V_1wpeJe.js +17 -0
- package/components/p-V_1wpeJe.js.map +1 -0
- package/components/p-dXtLd1df.js +63 -0
- package/components/p-dXtLd1df.js.map +1 -0
- package/components/p-vdzS-daB.js +145 -0
- package/components/p-vdzS-daB.js.map +1 -0
- package/package.json +9 -7
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from '../dist/types/components';
|
|
2
|
+
|
|
3
|
+
interface OntarioAccordion extends Components.OntarioAccordion, HTMLElement {}
|
|
4
|
+
export const OntarioAccordion: {
|
|
5
|
+
prototype: OntarioAccordion;
|
|
6
|
+
new (): OntarioAccordion;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1,378 @@
|
|
|
1
|
+
import { p as proxyCustomElement, H, c as createEvent, h } from './index.js';
|
|
2
|
+
import { b as validateLanguage } from './p-CNqFEifG.js';
|
|
3
|
+
import { C as ConsoleMessageClass } from './p-Cdm-Ot0O.js';
|
|
4
|
+
import { t as translations } from './p-DgMhpSmi.js';
|
|
5
|
+
import { d as defineCustomElement$3 } from './p-DJOzeqZ-.js';
|
|
6
|
+
import { d as defineCustomElement$2 } from './p-CRMogYVY.js';
|
|
7
|
+
import { v as v4 } from './p-BF0_OXTe.js';
|
|
8
|
+
|
|
9
|
+
var AccordionChangeDetailReasons;
|
|
10
|
+
(function (AccordionChangeDetailReasons) {
|
|
11
|
+
AccordionChangeDetailReasons['Init'] = 'init';
|
|
12
|
+
AccordionChangeDetailReasons['ToggleOne'] = 'toggle-one';
|
|
13
|
+
AccordionChangeDetailReasons['ToggleAll'] = 'toggle-all';
|
|
14
|
+
})(AccordionChangeDetailReasons || (AccordionChangeDetailReasons = {}));
|
|
15
|
+
|
|
16
|
+
const ontarioAccordionCss =
|
|
17
|
+
'.ontario-accordion__button--expand-all:focus,.ontario-accordion__button:focus{box-shadow:0 0 0 4px #009ADB;outline:4px solid transparent;transition:box-shadow 0.1s ease-in-out}.ontario-accordion__button{font-style:normal;font-weight:700;text-rendering:optimizeLegibility;margin-bottom:1rem;font-feature-settings:normal;font-family:"Raleway Modified", "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif}.ontario-accordion__button{font-size:1.25rem;letter-spacing:0.03rem;line-height:1.5;margin:0 0 0.75rem 0;max-width:48rem}@media screen and (min-width: 40em){.ontario-accordion__button{font-size:1.5rem;letter-spacing:0.0313rem;line-height:1.5}}.ontario-accordions__container{max-width:48rem;width:100%}.ontario-accordion{border-top:2px solid #cccccc}.ontario-accordion:last-of-type{border-bottom:2px solid #cccccc}.ontario-accordion__controls{display:flex;justify-content:flex-end}.ontario-accordion__button,.ontario-accordion__button--expand-all{background:none;border:0;box-sizing:border-box}.ontario-accordion__button--expand-all{font-size:1rem;margin-bottom:0.5rem;color:#0066CC;cursor:pointer}.ontario-accordion__button--expand-all:focus,.ontario-accordion__button--expand-all:hover{color:#00478F;text-decoration:underline}.ontario-accordion__button--expand-all:active{color:#002142;text-decoration:underline}.ontario-accordion--expand-close-all{display:none}.ontario-accordion__controls--active .ontario-accordion--expand-close-all{display:block}.ontario-accordion__controls--active .ontario-accordion--expand-open-all{display:none}.ontario-accordion__button{display:flex;align-items:flex-start;color:#0066CC;cursor:pointer;padding:0.75rem 0.5rem;text-align:left;width:100%;margin-bottom:0}.ontario-accordion__button .ontario-accordion__button-icon--close,.ontario-accordion__button .ontario-accordion__button-icon--open{margin-right:0.5rem}.ontario-accordion__button .ontario-icon{width:1.75rem;height:1.75rem}.ontario-accordion__button:focus,.ontario-accordion__button:hover{background-color:rgb(242.25, 242.25, 242.25);color:#00478F}.ontario-accordion__button:focus{box-shadow:0 0 0 4px #009ADB inset}.ontario-accordion__button:active{color:#002142}.ontario-accordion__content{display:none;padding:0.75rem 0.75rem 2rem 0.75rem;margin-left:0}@media screen and (min-width: 40em){.ontario-accordion__content{margin-left:2rem}}.ontario-accordion__content *{margin-top:0;max-width:48rem;width:100%}.ontario-accordion__content ul,.ontario-accordion__content ol{max-width:calc(100% - 3rem)}.ontario-accordion__content>:last-child{margin-bottom:0}.ontario-accordion__button-icon--close,.ontario-expander--active .ontario-accordion__button-icon--open{display:none}.ontario-expander--active~.ontario-accordion__content,.ontario-expander--active .ontario-accordion__button-icon--close{display:block}.ontario-accordions__container .ontario-h1,.ontario-accordions__container .ontario-h2,.ontario-accordions__container .ontario-h3,.ontario-accordions__container .ontario-h4,.ontario-accordions__container .ontario-h5,.ontario-accordions__container p,.ontario-accordions__container h1,.ontario-accordions__container h2,.ontario-accordions__container h3,.ontario-accordions__container h4,.ontario-accordions__container h5,.ontario-accordions__container h6{margin:0}';
|
|
18
|
+
|
|
19
|
+
const OntarioAccordion$1 = /*@__PURE__*/ proxyCustomElement(
|
|
20
|
+
class OntarioAccordion extends H {
|
|
21
|
+
constructor() {
|
|
22
|
+
super();
|
|
23
|
+
this.__registerHost();
|
|
24
|
+
this.__attachShadow();
|
|
25
|
+
this.accordionChange = createEvent(this, 'accordionChange');
|
|
26
|
+
/**
|
|
27
|
+
* Store the translation dictionary for use within the component.
|
|
28
|
+
*/
|
|
29
|
+
this.translations = translations;
|
|
30
|
+
/**
|
|
31
|
+
* Internal state containing the parsed Accordion Data
|
|
32
|
+
*/
|
|
33
|
+
this.internalAccordionData = [];
|
|
34
|
+
/**
|
|
35
|
+
* This state tracks which accordions are open.
|
|
36
|
+
*/
|
|
37
|
+
this.openAccordionIndexes = [];
|
|
38
|
+
/** Unique prefix for a11y ids */
|
|
39
|
+
this.uidPrefix = `ontario-accordion-${v4()}`;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* This listens for the `setAppLanguage` event sent from the test language toggler when it is is connected to the DOM. It is used for the initial language when the input component loads.
|
|
43
|
+
*/
|
|
44
|
+
handleSetAppLanguage(event) {
|
|
45
|
+
if (!this.language) {
|
|
46
|
+
this.language = validateLanguage(event);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Handles an update to the language should the user request a language update from the language toggle.
|
|
51
|
+
* @param {CustomEvent} - The language that has been selected.
|
|
52
|
+
*/
|
|
53
|
+
handleHeaderLanguageToggled(event) {
|
|
54
|
+
this.language = validateLanguage(event.detail.newLanguage);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Parse Accordion data, this is used to handle JSON strings from HTML.
|
|
58
|
+
*/
|
|
59
|
+
parseAccordionData() {
|
|
60
|
+
try {
|
|
61
|
+
const parsed = Array.isArray(this.accordionData) ? this.accordionData : JSON.parse(this.accordionData || '[]');
|
|
62
|
+
// Normalize and type-guard
|
|
63
|
+
this.internalAccordionData = parsed.length
|
|
64
|
+
? parsed.map((prop) => {
|
|
65
|
+
var _a, _b, _c;
|
|
66
|
+
return {
|
|
67
|
+
label:
|
|
68
|
+
(_a = prop === null || prop === void 0 ? void 0 : prop.label) !== null && _a !== void 0 ? _a : '',
|
|
69
|
+
content:
|
|
70
|
+
(_b = prop === null || prop === void 0 ? void 0 : prop.content) !== null && _b !== void 0 ? _b : '',
|
|
71
|
+
accordionContentType:
|
|
72
|
+
(_c = prop === null || prop === void 0 ? void 0 : prop.accordionContentType) !== null && _c !== void 0
|
|
73
|
+
? _c
|
|
74
|
+
: 'string',
|
|
75
|
+
isOpen: Boolean(prop === null || prop === void 0 ? void 0 : prop.isOpen),
|
|
76
|
+
ariaLabelText: prop === null || prop === void 0 ? void 0 : prop.ariaLabelText,
|
|
77
|
+
};
|
|
78
|
+
})
|
|
79
|
+
: [];
|
|
80
|
+
// Seed the openAccordionIndexes based on the isOpen properties
|
|
81
|
+
this.seedOpenIndexesFromItems();
|
|
82
|
+
// Initialize the label based on the initial accordion state
|
|
83
|
+
this.updateLabel();
|
|
84
|
+
this.emitAccordionChange({
|
|
85
|
+
openIndexes: this.openAccordionIndexes,
|
|
86
|
+
reason: AccordionChangeDetailReasons.Init,
|
|
87
|
+
});
|
|
88
|
+
} catch (_a) {
|
|
89
|
+
const message = new ConsoleMessageClass();
|
|
90
|
+
message
|
|
91
|
+
.addDesignSystemTag()
|
|
92
|
+
.addMonospaceText(' accordionData ')
|
|
93
|
+
.addRegularText('for')
|
|
94
|
+
.addMonospaceText(' <ontario-accordion> ')
|
|
95
|
+
.addRegularText('could not be parsed. Please ensure it is valid JSON.')
|
|
96
|
+
.printMessage();
|
|
97
|
+
this.internalAccordionData = [];
|
|
98
|
+
this.openAccordionIndexes = [];
|
|
99
|
+
this.updateLabel();
|
|
100
|
+
this.emitAccordionChange({
|
|
101
|
+
openIndexes: this.openAccordionIndexes,
|
|
102
|
+
reason: AccordionChangeDetailReasons.Init,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Parse Expand/Collapse Button Details. This handles both object and JSON string formats
|
|
108
|
+
* passed from HTML, with safe error handling for invalid JSON.
|
|
109
|
+
*/
|
|
110
|
+
parseExpandCollapseButtonDetails() {
|
|
111
|
+
if (typeof this.expandCollapseButton !== 'undefined') {
|
|
112
|
+
if (typeof this.expandCollapseButton === 'string') {
|
|
113
|
+
try {
|
|
114
|
+
this.internalExpandCollapseLabelDetails = JSON.parse(this.expandCollapseButton);
|
|
115
|
+
} catch (_a) {
|
|
116
|
+
const message = new ConsoleMessageClass();
|
|
117
|
+
message
|
|
118
|
+
.addDesignSystemTag()
|
|
119
|
+
.addMonospaceText(' expandCollapseButton ')
|
|
120
|
+
.addRegularText('for')
|
|
121
|
+
.addMonospaceText(' <ontario-accordion> ')
|
|
122
|
+
.addRegularText('could not be parsed from a string. Please ensure it is valid JSON.')
|
|
123
|
+
.printMessage();
|
|
124
|
+
}
|
|
125
|
+
} else {
|
|
126
|
+
this.internalExpandCollapseLabelDetails = this.expandCollapseButton;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Emits a typed change event whenever the open/closed state changes.
|
|
132
|
+
*
|
|
133
|
+
* Consumers can listen for `accordionChange` to:
|
|
134
|
+
* - Read the full set of `openIndexes`
|
|
135
|
+
* - Know which index changed on single-item toggles (`changedIndex`)
|
|
136
|
+
* - Detect bulk actions like expand/collapse all (`isBulk`)
|
|
137
|
+
* - Understand why the change happened (`reason`)
|
|
138
|
+
*
|
|
139
|
+
* Always call this AFTER updating `openAccordionIndexes` and `expandCollapseLabel`.
|
|
140
|
+
*/
|
|
141
|
+
emitAccordionChange(detail) {
|
|
142
|
+
this.accordionChange.emit(detail);
|
|
143
|
+
}
|
|
144
|
+
// Seed the openAccordionIndexes based on the isOpen properties of the accordion items
|
|
145
|
+
seedOpenIndexesFromItems() {
|
|
146
|
+
this.openAccordionIndexes = this.internalAccordionData
|
|
147
|
+
.map((accordionItem, index) =>
|
|
148
|
+
(accordionItem === null || accordionItem === void 0 ? void 0 : accordionItem.isOpen) ? index : -1,
|
|
149
|
+
)
|
|
150
|
+
.filter((accordionIndex) => accordionIndex !== -1);
|
|
151
|
+
}
|
|
152
|
+
// Toggle the accordion state when it's clicked
|
|
153
|
+
toggleAccordion(index) {
|
|
154
|
+
if (this.openAccordionIndexes.includes(index)) {
|
|
155
|
+
this.openAccordionIndexes = this.openAccordionIndexes.filter((i) => i !== index);
|
|
156
|
+
} else {
|
|
157
|
+
this.openAccordionIndexes = [...this.openAccordionIndexes, index];
|
|
158
|
+
}
|
|
159
|
+
this.updateLabel();
|
|
160
|
+
this.emitAccordionChange({
|
|
161
|
+
openIndexes: this.openAccordionIndexes,
|
|
162
|
+
changedIndex: index,
|
|
163
|
+
reason: AccordionChangeDetailReasons.ToggleOne,
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Toggle all accordions open/close
|
|
168
|
+
*/
|
|
169
|
+
toggleAll() {
|
|
170
|
+
if (this.openAccordionIndexes.length === this.internalAccordionData.length) {
|
|
171
|
+
// All accordions are open, close all
|
|
172
|
+
this.openAccordionIndexes = [];
|
|
173
|
+
} else {
|
|
174
|
+
// At least one accordion is closed, open all
|
|
175
|
+
this.openAccordionIndexes = this.internalAccordionData.map((_, index) => index);
|
|
176
|
+
}
|
|
177
|
+
this.updateLabel();
|
|
178
|
+
this.emitAccordionChange({
|
|
179
|
+
openIndexes: this.openAccordionIndexes,
|
|
180
|
+
isBulk: true,
|
|
181
|
+
reason: AccordionChangeDetailReasons.ToggleAll,
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Update the label based on the current accordion state
|
|
186
|
+
*/
|
|
187
|
+
updateLabel() {
|
|
188
|
+
const allOpen = this.internalAccordionData.every((_, index) => this.openAccordionIndexes.includes(index));
|
|
189
|
+
if (allOpen) {
|
|
190
|
+
// All accordions are open, set label to "Collapse all"
|
|
191
|
+
this.expandCollapseLabel = 'collapse';
|
|
192
|
+
} else {
|
|
193
|
+
// At least one accordion is closed, set label to "Expand all"
|
|
194
|
+
this.expandCollapseLabel = 'expand';
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
componentWillLoad() {
|
|
198
|
+
this.parseAccordionData();
|
|
199
|
+
this.parseExpandCollapseButtonDetails();
|
|
200
|
+
this.language = validateLanguage(this.language);
|
|
201
|
+
}
|
|
202
|
+
render() {
|
|
203
|
+
var _a, _b, _c, _d, _e, _f;
|
|
204
|
+
return h(
|
|
205
|
+
'div',
|
|
206
|
+
{ key: 'da27c5ce718dcbbd5e8a7bb66e03491d5da59db4' },
|
|
207
|
+
h('h2', { key: '3a1c6c4fc39f29b6f2e8756dc7835d71c393ca83' }, this.name),
|
|
208
|
+
h(
|
|
209
|
+
'div',
|
|
210
|
+
{ key: 'fb589625eeb5e65ef78ea14dd7a07f10b26f1eb1', class: 'ontario-accordions__container' },
|
|
211
|
+
h(
|
|
212
|
+
'div',
|
|
213
|
+
{ key: '154dd1f975d95b584eee10606246c1030096f8e6', class: 'ontario-accordion__controls' },
|
|
214
|
+
h(
|
|
215
|
+
'button',
|
|
216
|
+
{
|
|
217
|
+
'key': '630718017aec87c8ecf14a17dfe603b54c562c13',
|
|
218
|
+
'class': 'ontario-accordion__button--expand-all',
|
|
219
|
+
'onClick': () => this.toggleAll(),
|
|
220
|
+
'aria-expanded':
|
|
221
|
+
this.openAccordionIndexes.length === this.internalAccordionData.length ? 'true' : 'false',
|
|
222
|
+
'aria-label':
|
|
223
|
+
(_a = this.internalExpandCollapseLabelDetails) === null || _a === void 0 ? void 0 : _a.ariaLabelText,
|
|
224
|
+
},
|
|
225
|
+
h(
|
|
226
|
+
'span',
|
|
227
|
+
{ key: '81701e74455e661cb4db276d1d409805a6baaa9c', class: 'ontario-accordion--expand-open-all' },
|
|
228
|
+
this.expandCollapseLabel === 'expand'
|
|
229
|
+
? h(
|
|
230
|
+
'div',
|
|
231
|
+
null,
|
|
232
|
+
(_c =
|
|
233
|
+
(_b = this.internalExpandCollapseLabelDetails) === null || _b === void 0
|
|
234
|
+
? void 0
|
|
235
|
+
: _b.expandAllSectionsLabel) !== null && _c !== void 0
|
|
236
|
+
? _c
|
|
237
|
+
: this.translations.accordion.expand[`${this.language}`],
|
|
238
|
+
)
|
|
239
|
+
: h(
|
|
240
|
+
'div',
|
|
241
|
+
null,
|
|
242
|
+
(_e =
|
|
243
|
+
(_d = this.internalExpandCollapseLabelDetails) === null || _d === void 0
|
|
244
|
+
? void 0
|
|
245
|
+
: _d.collapseAllSectionsLabel) !== null && _e !== void 0
|
|
246
|
+
? _e
|
|
247
|
+
: this.translations.accordion.collapse[`${this.language}`],
|
|
248
|
+
),
|
|
249
|
+
),
|
|
250
|
+
),
|
|
251
|
+
),
|
|
252
|
+
(_f = this.internalAccordionData) === null || _f === void 0
|
|
253
|
+
? void 0
|
|
254
|
+
: _f.map((accordion, index) => {
|
|
255
|
+
const buttonId = `${this.uidPrefix}__button--${index}`;
|
|
256
|
+
const sectionId = `${this.uidPrefix}__section--${index}`;
|
|
257
|
+
const isOpen = this.openAccordionIndexes.includes(index);
|
|
258
|
+
return h(
|
|
259
|
+
'div',
|
|
260
|
+
{ class: `ontario-accordion ${isOpen ? 'open' : ''}`, key: `accordion-${index}` },
|
|
261
|
+
h(
|
|
262
|
+
'h3',
|
|
263
|
+
{ class: `ontario-accordion__heading ${isOpen ? 'ontario-expander--active' : ''}` },
|
|
264
|
+
h(
|
|
265
|
+
'button',
|
|
266
|
+
{
|
|
267
|
+
'id': buttonId,
|
|
268
|
+
'class': 'ontario-accordion__button',
|
|
269
|
+
'aria-expanded': isOpen ? 'true' : 'false',
|
|
270
|
+
'data-toggle': 'ontario-collapse',
|
|
271
|
+
'aria-controls': sectionId,
|
|
272
|
+
'onClick': () => this.toggleAccordion(index),
|
|
273
|
+
'aria-label': accordion.ariaLabelText,
|
|
274
|
+
},
|
|
275
|
+
h(
|
|
276
|
+
'span',
|
|
277
|
+
{ class: 'ontario-accordion__button-icon--close' },
|
|
278
|
+
h('ontario-icon-chevron-up', { 'colour': 'blue', 'aria-hidden': 'true' }),
|
|
279
|
+
),
|
|
280
|
+
h(
|
|
281
|
+
'span',
|
|
282
|
+
{ class: 'ontario-accordion__button-icon--open' },
|
|
283
|
+
h('ontario-icon-chevron-down', { 'colour': 'blue', 'aria-hidden': 'true' }),
|
|
284
|
+
),
|
|
285
|
+
accordion.label,
|
|
286
|
+
),
|
|
287
|
+
),
|
|
288
|
+
h(
|
|
289
|
+
'section',
|
|
290
|
+
{
|
|
291
|
+
'id': sectionId,
|
|
292
|
+
'class': `ontario-accordion__content ${isOpen ? 'ontario-expander__content--opened' : 'ontario-accordion__content--closed'}`,
|
|
293
|
+
'aria-labelledby': buttonId,
|
|
294
|
+
'role': 'region',
|
|
295
|
+
'aria-hidden': isOpen ? 'false' : 'true',
|
|
296
|
+
'data-toggle': 'ontario-expander-content',
|
|
297
|
+
},
|
|
298
|
+
accordion.accordionContentType === 'html'
|
|
299
|
+
? h('div', { innerHTML: accordion.content }) // Render HTML content
|
|
300
|
+
: h('div', null, accordion.content),
|
|
301
|
+
),
|
|
302
|
+
);
|
|
303
|
+
}),
|
|
304
|
+
),
|
|
305
|
+
);
|
|
306
|
+
}
|
|
307
|
+
get host() {
|
|
308
|
+
return this;
|
|
309
|
+
}
|
|
310
|
+
static get watchers() {
|
|
311
|
+
return {
|
|
312
|
+
accordionData: ['parseAccordionData'],
|
|
313
|
+
expandCollapseButton: ['parseExpandCollapseButtonDetails'],
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
static get style() {
|
|
317
|
+
return ontarioAccordionCss;
|
|
318
|
+
}
|
|
319
|
+
},
|
|
320
|
+
[
|
|
321
|
+
257,
|
|
322
|
+
'ontario-accordion',
|
|
323
|
+
{
|
|
324
|
+
name: [1],
|
|
325
|
+
expandCollapseButton: [1, 'expand-collapse-button'],
|
|
326
|
+
accordionData: [1, 'accordion-data'],
|
|
327
|
+
language: [1025],
|
|
328
|
+
translations: [32],
|
|
329
|
+
expandCollapseLabel: [32],
|
|
330
|
+
internalExpandCollapseLabelDetails: [32],
|
|
331
|
+
internalAccordionData: [32],
|
|
332
|
+
openAccordionIndexes: [32],
|
|
333
|
+
uidPrefix: [32],
|
|
334
|
+
},
|
|
335
|
+
[
|
|
336
|
+
[8, 'setAppLanguage', 'handleSetAppLanguage'],
|
|
337
|
+
[8, 'headerLanguageToggled', 'handleHeaderLanguageToggled'],
|
|
338
|
+
],
|
|
339
|
+
{
|
|
340
|
+
accordionData: ['parseAccordionData'],
|
|
341
|
+
expandCollapseButton: ['parseExpandCollapseButtonDetails'],
|
|
342
|
+
},
|
|
343
|
+
],
|
|
344
|
+
);
|
|
345
|
+
function defineCustomElement$1() {
|
|
346
|
+
if (typeof customElements === 'undefined') {
|
|
347
|
+
return;
|
|
348
|
+
}
|
|
349
|
+
const components = ['ontario-accordion', 'ontario-icon-chevron-down', 'ontario-icon-chevron-up'];
|
|
350
|
+
components.forEach((tagName) => {
|
|
351
|
+
switch (tagName) {
|
|
352
|
+
case 'ontario-accordion':
|
|
353
|
+
if (!customElements.get(tagName)) {
|
|
354
|
+
customElements.define(tagName, OntarioAccordion$1);
|
|
355
|
+
}
|
|
356
|
+
break;
|
|
357
|
+
case 'ontario-icon-chevron-down':
|
|
358
|
+
if (!customElements.get(tagName)) {
|
|
359
|
+
defineCustomElement$3();
|
|
360
|
+
}
|
|
361
|
+
break;
|
|
362
|
+
case 'ontario-icon-chevron-up':
|
|
363
|
+
if (!customElements.get(tagName)) {
|
|
364
|
+
defineCustomElement$2();
|
|
365
|
+
}
|
|
366
|
+
break;
|
|
367
|
+
}
|
|
368
|
+
});
|
|
369
|
+
}
|
|
370
|
+
defineCustomElement$1();
|
|
371
|
+
|
|
372
|
+
const OntarioAccordion = OntarioAccordion$1;
|
|
373
|
+
const defineCustomElement = defineCustomElement$1;
|
|
374
|
+
|
|
375
|
+
export { OntarioAccordion, defineCustomElement };
|
|
376
|
+
//# sourceMappingURL=ontario-accordion.js.map
|
|
377
|
+
|
|
378
|
+
//# sourceMappingURL=ontario-accordion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"ontario-accordion.js","mappings":"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","names":["OntarioAccordion","__stencil_proxyCustomElement","HTMLElement","uuid"],"sources":["src/components/ontario-accordion/accordion.interface.ts","src/components/ontario-accordion/ontario-accordion.scss?tag=ontario-accordion&encapsulation=shadow","src/components/ontario-accordion/ontario-accordion.tsx"],"sourcesContent":["import { Base } from '../../utils/common/common.interface';\n\nexport interface Accordion extends Base {\n\t/**\n\t * The label for the individual accordion button.\n\t */\n\tlabel: string;\n\n\t/**\n\t * The content type of the accordion.\n\t * If no prop is passed, it will default to a string.\n\t * If the accordion requires multiple lines or HTML, the `accordionContentType` prop should be set to `html`.\n\t */\n\n\taccordionContentType: 'string' | 'html';\n\n\t/**\n\t * The content that is passed into each accordion.\n\t */\n\tcontent: string;\n\n\t/**\n\t * A boolean to track whether the accordion is expanded or collapsed.\n\t */\n\tisOpen: boolean;\n\n\t/**\n\t * Custom Aria Label text for the section.\n\t */\n\tariaLabelText: string;\n}\n\nexport enum AccordionChangeDetailReasons {\n\tInit = 'init',\n\tToggleOne = 'toggle-one',\n\tToggleAll = 'toggle-all',\n}\n\n/**\n * The event detail payload emitted by the accordion component.\n */\nexport interface AccordionChangeDetail {\n\t/** Array of indexes currently open */\n\topenIndexes: number[];\n\n\t/** The index that was just toggled (if applicable) */\n\tchangedIndex?: number;\n\n\t/** True if triggered by expand/collapse all */\n\tisBulk?: boolean;\n\n\t/** Optional description of what triggered the event */\n\treason?: AccordionChangeDetailReasons;\n}\n","@use 'pkg:@ongov/ontario-design-system-global-styles/dist/styles/scss/1-variables/global.variables' as globalVariables;\n@use 'pkg:@ongov/ontario-design-system-global-styles/dist/styles/scss/1-variables/spacing.variables' as spacing;\n@use 'pkg:@ongov/ontario-design-system-global-styles/dist/styles/scss/1-variables/colours.variables' as colours;\n@use 'pkg:@ongov/ontario-design-system-global-styles/dist/styles/scss/1-variables/breakpoints.variables' as breakpoints;\n@use 'pkg:@ongov/ontario-design-system-global-styles/dist/styles/scss/2-tools/placeholder/focus.placeholders' as\n\tplaceholders;\n@use 'pkg:@ongov/ontario-design-system-global-styles/dist/styles/scss/1-variables/typography.variables' as typography;\n@use 'pkg:@ongov/ontario-design-system-global-styles/dist/styles/scss/1-variables/font-sizes.variables' as fontSizes;\n\n.ontario-accordions__container {\n\tmax-width: globalVariables.$standard-width;\n\twidth: globalVariables.$full-width;\n}\n\n.ontario-accordion {\n\tborder-top: 2px solid colours.$ontario-greyscale-20;\n\n\t&:last-of-type {\n\t\tborder-bottom: 2px solid colours.$ontario-greyscale-20;\n\t}\n}\n\n.ontario-accordion__controls {\n\tdisplay: flex;\n\tjustify-content: flex-end;\n}\n\n.ontario-accordion__button,\n.ontario-accordion__button--expand-all {\n\tbackground: none;\n\tborder: 0;\n\tbox-sizing: border-box;\n}\n\n.ontario-accordion__button--expand-all {\n\tfont-size: fontSizes.$ontario-font-size-standard-body-text;\n\tmargin-bottom: spacing.$spacing-2;\n\tcolor: colours.$ontario-colour-link;\n\tcursor: pointer;\n\n\t&:focus,\n\t&:hover {\n\t\tcolor: colours.$ontario-colour-link--hover;\n\t\ttext-decoration: underline;\n\t}\n\n\t&:focus {\n\t\t@extend %ontario-focus;\n\t}\n\n\t&:active {\n\t\tcolor: colours.$ontario-colour-link--active;\n\t\ttext-decoration: underline;\n\t}\n}\n\n.ontario-accordion--expand-close-all {\n\tdisplay: none;\n}\n\n.ontario-accordion__controls--active {\n\t.ontario-accordion--expand-close-all {\n\t\tdisplay: block;\n\t}\n\n\t.ontario-accordion--expand-open-all {\n\t\tdisplay: none;\n\t}\n}\n\n.ontario-accordion__button {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tcolor: colours.$ontario-colour-link;\n\tcursor: pointer;\n\tpadding: spacing.$spacing-3 spacing.$spacing-2;\n\ttext-align: left;\n\twidth: globalVariables.$full-width;\n\t@extend %h4-styles;\n\tmargin-bottom: spacing.$spacing-0;\n\n\t.ontario-accordion__button-icon--close,\n\t.ontario-accordion__button-icon--open {\n\t\tmargin-right: spacing.$spacing-2;\n\t}\n\n\t.ontario-icon {\n\t\twidth: 1.75rem;\n\t\theight: 1.75rem;\n\t}\n\n\t&:focus,\n\t&:hover {\n\t\tbackground-color: colours.$ontario-greyscale-5;\n\t\tcolor: colours.$ontario-colour-link--hover;\n\t}\n\n\t&:focus {\n\t\t@extend %ontario-focus;\n\t\tbox-shadow: 0 0 0 4px colours.$ontario-colour-focus inset;\n\t}\n\n\t&:active {\n\t\tcolor: colours.$ontario-colour-link--active;\n\t}\n}\n\n.ontario-accordion__content {\n\tdisplay: none;\n\tpadding: spacing.$spacing-3 spacing.$spacing-3 spacing.$spacing-6 spacing.$spacing-3;\n\tmargin-left: spacing.$spacing-0;\n\n\t@media screen and (min-width: breakpoints.$small-breakpoint) {\n\t\tmargin-left: spacing.$spacing-6;\n\t}\n\n\t* {\n\t\tmargin-top: spacing.$spacing-0;\n\t\tmax-width: globalVariables.$standard-width;\n\t\twidth: globalVariables.$full-width;\n\t}\n\n\tul,\n\tol {\n\t\tmax-width: calc(100% - spacing.$spacing-8);\n\t}\n\n\t& > :last-child {\n\t\tmargin-bottom: spacing.$spacing-0;\n\t}\n}\n\n.ontario-accordion__button-icon--close,\n.ontario-expander--active .ontario-accordion__button-icon--open {\n\tdisplay: none;\n}\n\n.ontario-expander--active ~ .ontario-accordion__content,\n.ontario-expander--active .ontario-accordion__button-icon--close {\n\tdisplay: block;\n}\n\n.ontario-accordions__container {\n\t.ontario-h1,\n\t.ontario-h2,\n\t.ontario-h3,\n\t.ontario-h4,\n\t.ontario-h5,\n\tp,\n\th1,\n\th2,\n\th3,\n\th4,\n\th5,\n\th6 {\n\t\tmargin: spacing.$spacing-0;\n\t}\n}\n","import { Component, Prop, Element, Event, EventEmitter, State, h, Listen, Watch } from '@stencil/core';\nimport { v4 as uuid } from 'uuid';\n\nimport { Accordion, AccordionChangeDetail, AccordionChangeDetailReasons } from './accordion.interface';\nimport { ExpandCollapseButtonDetails } from './expandCollapseButtonDetails.interface';\n\nimport { Language } from '../../utils/common/language-types';\nimport { validateLanguage } from '../../utils/validation/validation-functions';\nimport { ConsoleMessageClass } from '../../utils/console-message/console-message';\nimport { HeaderLanguageToggleEventDetails } from '../../utils/events/common-events.interface';\n\nimport translations from '../../translations/global.i18n.json';\n\n@Component({\n\ttag: 'ontario-accordion',\n\tstyleUrl: 'ontario-accordion.scss',\n\tshadow: true,\n})\nexport class OntarioAccordion {\n\t@Element() host: HTMLElement;\n\n\t/**\n\t * The name of the accordion component.\n\t *\n\t * This is not optional.\n\t */\n\t@Prop() name: string;\n\n\t/**\n\t * Custom Expand/Collapse button text.\n\t *\n\t * @example\n\t * <ontario-accordion\n\t *\t\tname=\"My Accordion\"\n\t *\t\texpand-collapse-button='{\n\t *\t\t\t\"expandAllSectionsLabel\": \"Expand All\",\n\t *\t\t\t\"collapseAllSectionsLabel\": \"Collapse All\"\n\t *\t\t}'\n\t *\t\taccordion-data='[\n\t *\t\t\t{\"label\": \"Accordion 1\", \"content\": [\"Item 1\", \"Item 2\", \"Item 3\"]},\n\t *\t\t\t{\"label\": \"Accordion 2\", \"content\": [\"Item A\", \"Item B\", \"Item C\"]}\n\t *\t\t]'\n\t *\t></ontario-accordion>\n\t */\n\t@Prop() expandCollapseButton?: string | ExpandCollapseButtonDetails;\n\n\t/**\n\t * Used to include individual accordion data for the accordion component.\n\t * Accepts an array of Accordion (@see Accordion) items or a JSON string of that array.\n\t *\n\t * The `content` is rendered either as plain text or HTML depending on `accordionContentType`.\n\t *\n\t * @see Accordion\n\t * @example\n\t * \t<ontario-accordion\n\t *\t\tname=\"My Accordion\"\n\t *\t\taccordion-data='[\n\t *\t\t\t{\"label\": \"Accordion 1\", \"content\": \"This is a string\", \"isOpen\": true},\n\t *\t\t\t{\"label\": \"Accordion 2\", \"accordionContentType\": \"html\", \"content\": \"<ul><li>List A</li><li>List B</li><li>List C</li></ul>\"}\n\t *\t\t]'\n\t *\t></ontario-accordion>\n\t */\n\t@Prop() accordionData: string | Accordion[];\n\n\t/**\n\t * The language of the component.\n\t * This is used for translations, and is by default set through event listeners checking for a language property from the header. If none are passed, it will default to English.\n\t */\n\t@Prop({ mutable: true }) language?: Language;\n\n\t/**\n\t * Emits when open indexes change\n\t */\n\t@Event() accordionChange: EventEmitter<AccordionChangeDetail>;\n\n\t/**\n\t * Store the translation dictionary for use within the component.\n\t */\n\t@State() translations: any = translations;\n\n\t/**\n\t * The label for the expand/collapse button.\n\t * This is internal and udpdated dynamically.\n\t */\n\t@State() private expandCollapseLabel: 'expand' | 'collapse';\n\n\t/**\n\t * Internal state of the expand/collapse label information.\n\t */\n\t@State() private internalExpandCollapseLabelDetails: ExpandCollapseButtonDetails;\n\n\t/**\n\t * Internal state containing the parsed Accordion Data\n\t */\n\t@State() private internalAccordionData: Accordion[] = [];\n\n\t/**\n\t * This state tracks which accordions are open.\n\t */\n\t@State() private openAccordionIndexes: number[] = [];\n\n\t/** Unique prefix for a11y ids */\n\t@State() private uidPrefix: string = `ontario-accordion-${uuid()}`;\n\n\t/**\n\t * This listens for the `setAppLanguage` event sent from the test language toggler when it is is connected to the DOM. It is used for the initial language when the input component loads.\n\t */\n\t@Listen('setAppLanguage', { target: 'window' })\n\thandleSetAppLanguage(event: CustomEvent<Language>) {\n\t\tif (!this.language) {\n\t\t\tthis.language = validateLanguage(event);\n\t\t}\n\t}\n\n\t/**\n\t * Handles an update to the language should the user request a language update from the language toggle.\n\t * @param {CustomEvent} - The language that has been selected.\n\t */\n\t@Listen('headerLanguageToggled', { target: 'window' })\n\thandleHeaderLanguageToggled(event: CustomEvent<HeaderLanguageToggleEventDetails>) {\n\t\tthis.language = validateLanguage(event.detail.newLanguage);\n\t}\n\n\t/**\n\t * Parse Accordion data, this is used to handle JSON strings from HTML.\n\t */\n\t@Watch('accordionData')\n\tprivate parseAccordionData() {\n\t\ttry {\n\t\t\tconst parsed = Array.isArray(this.accordionData) ? this.accordionData : JSON.parse(this.accordionData || '[]');\n\n\t\t\t// Normalize and type-guard\n\t\t\tthis.internalAccordionData = parsed.length\n\t\t\t\t? parsed.map((prop: Accordion) => ({\n\t\t\t\t\t\tlabel: prop?.label ?? '',\n\t\t\t\t\t\tcontent: prop?.content ?? '',\n\t\t\t\t\t\taccordionContentType: (prop?.accordionContentType ?? 'string') as 'string' | 'html',\n\t\t\t\t\t\tisOpen: Boolean(prop?.isOpen),\n\t\t\t\t\t\tariaLabelText: prop?.ariaLabelText,\n\t\t\t\t\t}))\n\t\t\t\t: [];\n\n\t\t\t// Seed the openAccordionIndexes based on the isOpen properties\n\t\t\tthis.seedOpenIndexesFromItems();\n\n\t\t\t// Initialize the label based on the initial accordion state\n\t\t\tthis.updateLabel();\n\n\t\t\tthis.emitAccordionChange({\n\t\t\t\topenIndexes: this.openAccordionIndexes,\n\t\t\t\treason: AccordionChangeDetailReasons.Init,\n\t\t\t});\n\t\t} catch {\n\t\t\tconst message = new ConsoleMessageClass();\n\t\t\tmessage\n\t\t\t\t.addDesignSystemTag()\n\t\t\t\t.addMonospaceText(' accordionData ')\n\t\t\t\t.addRegularText('for')\n\t\t\t\t.addMonospaceText(' <ontario-accordion> ')\n\t\t\t\t.addRegularText('could not be parsed. Please ensure it is valid JSON.')\n\t\t\t\t.printMessage();\n\n\t\t\tthis.internalAccordionData = [];\n\t\t\tthis.openAccordionIndexes = [];\n\t\t\tthis.updateLabel();\n\n\t\t\tthis.emitAccordionChange({\n\t\t\t\topenIndexes: this.openAccordionIndexes,\n\t\t\t\treason: AccordionChangeDetailReasons.Init,\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Parse Expand/Collapse Button Details. This handles both object and JSON string formats\n\t * passed from HTML, with safe error handling for invalid JSON.\n\t */\n\t@Watch('expandCollapseButton')\n\tprivate parseExpandCollapseButtonDetails() {\n\t\tif (typeof this.expandCollapseButton !== 'undefined') {\n\t\t\tif (typeof this.expandCollapseButton === 'string') {\n\t\t\t\ttry {\n\t\t\t\t\tthis.internalExpandCollapseLabelDetails = JSON.parse(this.expandCollapseButton);\n\t\t\t\t} catch {\n\t\t\t\t\tconst message = new ConsoleMessageClass();\n\t\t\t\t\tmessage\n\t\t\t\t\t\t.addDesignSystemTag()\n\t\t\t\t\t\t.addMonospaceText(' expandCollapseButton ')\n\t\t\t\t\t\t.addRegularText('for')\n\t\t\t\t\t\t.addMonospaceText(' <ontario-accordion> ')\n\t\t\t\t\t\t.addRegularText('could not be parsed from a string. Please ensure it is valid JSON.')\n\t\t\t\t\t\t.printMessage();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.internalExpandCollapseLabelDetails = this.expandCollapseButton;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Emits a typed change event whenever the open/closed state changes.\n\t *\n\t * Consumers can listen for `accordionChange` to:\n\t * - Read the full set of `openIndexes`\n\t * - Know which index changed on single-item toggles (`changedIndex`)\n\t * - Detect bulk actions like expand/collapse all (`isBulk`)\n\t * - Understand why the change happened (`reason`)\n\t *\n\t * Always call this AFTER updating `openAccordionIndexes` and `expandCollapseLabel`.\n\t */\n\tprivate emitAccordionChange(detail: AccordionChangeDetail) {\n\t\tthis.accordionChange.emit(detail);\n\t}\n\n\t// Seed the openAccordionIndexes based on the isOpen properties of the accordion items\n\tprivate seedOpenIndexesFromItems() {\n\t\tthis.openAccordionIndexes = this.internalAccordionData\n\t\t\t.map((accordionItem, index) => (accordionItem?.isOpen ? index : -1))\n\t\t\t.filter((accordionIndex) => accordionIndex !== -1);\n\t}\n\n\t// Toggle the accordion state when it's clicked\n\tprivate toggleAccordion(index: number) {\n\t\tif (this.openAccordionIndexes.includes(index)) {\n\t\t\tthis.openAccordionIndexes = this.openAccordionIndexes.filter((i) => i !== index);\n\t\t} else {\n\t\t\tthis.openAccordionIndexes = [...this.openAccordionIndexes, index];\n\t\t}\n\n\t\tthis.updateLabel();\n\n\t\tthis.emitAccordionChange({\n\t\t\topenIndexes: this.openAccordionIndexes,\n\t\t\tchangedIndex: index,\n\t\t\treason: AccordionChangeDetailReasons.ToggleOne,\n\t\t});\n\t}\n\n\t/**\n\t * Toggle all accordions open/close\n\t */\n\tprivate toggleAll() {\n\t\tif (this.openAccordionIndexes.length === this.internalAccordionData.length) {\n\t\t\t// All accordions are open, close all\n\t\t\tthis.openAccordionIndexes = [];\n\t\t} else {\n\t\t\t// At least one accordion is closed, open all\n\t\t\tthis.openAccordionIndexes = this.internalAccordionData.map((_, index) => index);\n\t\t}\n\n\t\tthis.updateLabel();\n\n\t\tthis.emitAccordionChange({\n\t\t\topenIndexes: this.openAccordionIndexes,\n\t\t\tisBulk: true,\n\t\t\treason: AccordionChangeDetailReasons.ToggleAll,\n\t\t});\n\t}\n\n\t/**\n\t * Update the label based on the current accordion state\n\t */\n\tprivate updateLabel() {\n\t\tconst allOpen = this.internalAccordionData.every((_, index) => this.openAccordionIndexes.includes(index));\n\n\t\tif (allOpen) {\n\t\t\t// All accordions are open, set label to \"Collapse all\"\n\t\t\tthis.expandCollapseLabel = 'collapse';\n\t\t} else {\n\t\t\t// At least one accordion is closed, set label to \"Expand all\"\n\t\t\tthis.expandCollapseLabel = 'expand';\n\t\t}\n\t}\n\n\tcomponentWillLoad() {\n\t\tthis.parseAccordionData();\n\t\tthis.parseExpandCollapseButtonDetails();\n\t\tthis.language = validateLanguage(this.language);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t<h2>{this.name}</h2>\n\t\t\t\t<div class=\"ontario-accordions__container\">\n\t\t\t\t\t<div class=\"ontario-accordion__controls\">\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\tclass=\"ontario-accordion__button--expand-all\"\n\t\t\t\t\t\t\tonClick={() => this.toggleAll()}\n\t\t\t\t\t\t\taria-expanded={this.openAccordionIndexes.length === this.internalAccordionData.length ? 'true' : 'false'}\n\t\t\t\t\t\t\taria-label={this.internalExpandCollapseLabelDetails?.ariaLabelText}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span class=\"ontario-accordion--expand-open-all\">\n\t\t\t\t\t\t\t\t{this.expandCollapseLabel === 'expand' ? (\n\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t{this.internalExpandCollapseLabelDetails?.expandAllSectionsLabel ??\n\t\t\t\t\t\t\t\t\t\t\tthis.translations.accordion.expand[`${this.language}`]}\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t{this.internalExpandCollapseLabelDetails?.collapseAllSectionsLabel ??\n\t\t\t\t\t\t\t\t\t\t\tthis.translations.accordion.collapse[`${this.language}`]}\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t\t{this.internalAccordionData?.map((accordion, index) => {\n\t\t\t\t\t\tconst buttonId = `${this.uidPrefix}__button--${index}`;\n\t\t\t\t\t\tconst sectionId = `${this.uidPrefix}__section--${index}`;\n\t\t\t\t\t\tconst isOpen = this.openAccordionIndexes.includes(index);\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<div class={`ontario-accordion ${isOpen ? 'open' : ''}`} key={`accordion-${index}`}>\n\t\t\t\t\t\t\t\t<h3 class={`ontario-accordion__heading ${isOpen ? 'ontario-expander--active' : ''}`}>\n\t\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\t\tid={buttonId}\n\t\t\t\t\t\t\t\t\t\tclass=\"ontario-accordion__button\"\n\t\t\t\t\t\t\t\t\t\taria-expanded={isOpen ? 'true' : 'false'}\n\t\t\t\t\t\t\t\t\t\tdata-toggle=\"ontario-collapse\"\n\t\t\t\t\t\t\t\t\t\taria-controls={sectionId}\n\t\t\t\t\t\t\t\t\t\tonClick={() => this.toggleAccordion(index)}\n\t\t\t\t\t\t\t\t\t\taria-label={accordion.ariaLabelText}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<span class=\"ontario-accordion__button-icon--close\">\n\t\t\t\t\t\t\t\t\t\t\t<ontario-icon-chevron-up colour=\"blue\" aria-hidden=\"true\"></ontario-icon-chevron-up>\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t<span class=\"ontario-accordion__button-icon--open\">\n\t\t\t\t\t\t\t\t\t\t\t<ontario-icon-chevron-down colour=\"blue\" aria-hidden=\"true\"></ontario-icon-chevron-down>\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t{accordion.label}\n\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t</h3>\n\t\t\t\t\t\t\t\t<section\n\t\t\t\t\t\t\t\t\tid={sectionId}\n\t\t\t\t\t\t\t\t\tclass={`ontario-accordion__content ${\n\t\t\t\t\t\t\t\t\t\tisOpen ? 'ontario-expander__content--opened' : 'ontario-accordion__content--closed'\n\t\t\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\t\t\taria-labelledby={buttonId}\n\t\t\t\t\t\t\t\t\trole=\"region\"\n\t\t\t\t\t\t\t\t\taria-hidden={isOpen ? 'false' : 'true'}\n\t\t\t\t\t\t\t\t\tdata-toggle=\"ontario-expander-content\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{accordion.accordionContentType === 'html' ? (\n\t\t\t\t\t\t\t\t\t\t<div innerHTML={accordion.content}></div> // Render HTML content\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<div>{accordion.content}</div>\n\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t</section>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\t}\n}\n"],"version":3}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from '../dist/types/components';
|
|
2
|
+
|
|
3
|
+
interface OntarioAside extends Components.OntarioAside, HTMLElement {}
|
|
4
|
+
export const OntarioAside: {
|
|
5
|
+
prototype: OntarioAside;
|
|
6
|
+
new (): OntarioAside;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { p as proxyCustomElement, H } from './index.js';
|
|
2
|
+
import {
|
|
3
|
+
i as isValidHeadingLevel,
|
|
4
|
+
H as HeadingContentTypes,
|
|
5
|
+
a as isValidHighlightColour,
|
|
6
|
+
g as generateCalloutAside,
|
|
7
|
+
} from './p-dXtLd1df.js';
|
|
8
|
+
import { v as validateValueAgainstArray } from './p-CNqFEifG.js';
|
|
9
|
+
import { C as ConsoleMessageClass } from './p-Cdm-Ot0O.js';
|
|
10
|
+
|
|
11
|
+
const ontarioAsideCss =
|
|
12
|
+
'@charset "UTF-8";h6,.ontario-h6,h5,.ontario-h5,h4,.ontario-h4,h3,.ontario-h3,h2,.ontario-h2,h1,.ontario-h1{font-style:normal;font-weight:700;text-rendering:optimizeLegibility;margin-bottom:1rem;font-feature-settings:normal;font-family:"Raleway Modified", "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif}h1,.ontario-h1{font-size:2rem;letter-spacing:0.04rem;line-height:1.29;margin:2.5rem 0 1.5rem 0;max-width:70rem}@media screen and (min-width: 40em){h1,.ontario-h1{font-size:2.5rem;letter-spacing:0.04rem;line-height:1.2}}h2,.ontario-h2{font-size:1.6875rem;letter-spacing:0.03rem;line-height:1.37;margin:0 0 0.75rem 0;max-width:48rem}@media screen and (min-width: 40em){h2,.ontario-h2{font-size:2.0625rem;letter-spacing:0.02rem;line-height:1.33}}h3,.ontario-h3{font-size:1.4375rem;letter-spacing:0.02rem;line-height:1.39;margin:0 0 0.75rem 0;max-width:48rem}@media screen and (min-width: 40em){h3,.ontario-h3{font-size:1.75rem;letter-spacing:0.02rem;line-height:1.43}}h4,.ontario-h4{font-size:1.25rem;letter-spacing:0.03rem;line-height:1.5;margin:0 0 0.75rem 0;max-width:48rem}@media screen and (min-width: 40em){h4,.ontario-h4{font-size:1.5rem;letter-spacing:0.0313rem;line-height:1.5}}h5,.ontario-h5{font-size:1.125rem;letter-spacing:0.03rem;line-height:1.56;margin:0 0 0.75rem 0;max-width:48rem}@media screen and (min-width: 40em){h5,.ontario-h5{font-size:1.1875rem;letter-spacing:0.025rem;line-height:1.5}}h6,.ontario-h6{font-size:1rem;line-height:1.56;letter-spacing:0.03rem;max-width:48rem;margin:0 0 0.75rem 0}@media screen and (min-width: 40em){h6,.ontario-h6{font-size:1rem;letter-spacing:0.025rem;line-height:1.5}}.ontario-lead-statement{font-size:1.25rem;line-height:1.6;max-width:70rem}@media screen and (min-width: 40em){.ontario-lead-statement{font-size:1.375rem}}html{font-family:"Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;font-size:1rem}body{font-size:1rem;line-height:1.6;background-color:#FFFFFF;color:rgb(25.5, 25.5, 25.5);margin:0}p{font-size:inherit;margin-bottom:1.25rem;text-rendering:optimizeLegibility;margin:0 0 1.5rem 0}cite{font-style:italic;line-height:inherit}strong{font-weight:700;line-height:inherit}*,*::before,*::after{box-sizing:inherit}main p,main p:not(.ontario-lead-statement),main dd,main li{max-width:48rem}hr{border:0;padding:0;margin:2.5rem 0;border-bottom:4px solid #cccccc}hr.ontario-hr--dark{border-bottom:4px solid rgb(25.5, 25.5, 25.5)}a{color:#0066CC;text-decoration:underline}a:visited{color:#551A8B}a:hover{color:#00478F}a:active{color:#002142}a:focus{-moz-box-shadow:0 0 0 4px #009ADB;-webkit-box-shadow:0 0 0 4px #009ADB;box-shadow:0 0 0 4px #009ADB;outline:4px solid transparent;transition:all 0.1s ease-in-out}p{margin:0 0 1.5rem 0}p+h1,p+h2,p+h3,p+h4,p+h5,p+h6,ul+h1,ul+h2,ul+h3,ul+h4,ul+h5,ul+h6,ol+h1,ol+h2,ol+h3,ol+h4,ol+h5,ol+h6,h1+h2,h2+h3,h3+h4,h4+h5,h5+h6{margin-top:2rem}p code,td code,li code{line-height:2.25rem}input[type=text],input[type=number],input[type=email],input[type=date],input[type=color],input[type=search],input[type=tel],textarea{background-origin:initial;height:auto;-webkit-appearance:none;-moz-appearance:none}input[type=checkbox]+label,input[type=radio]+label{font-family:"Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;font-size:1rem;font-weight:400;margin-left:0;margin-right:0}fieldset{border:0;margin:0;padding:0;page-break-inside:avoid}legend,label{display:block;margin:0}select{background-origin:initial;height:auto;-webkit-appearance:none;-moz-appearance:none}ul,ol{padding:0}ul{margin-left:2rem}ul li{padding:0 0 0.75rem 0}ol{margin-left:1.75rem}ol li{padding:0 0 0.75rem 0.25rem}ul li:last-child,ol li:last-child{padding-bottom:0}ul[class*=columns-] li:last-child,ol[class*=columns-] li:last-child{padding-bottom:0.75rem}ul ul,ol ul{margin:0.5rem 0 0.5rem 2rem}ul ol,ol ol{margin:0.5rem 0 0.5rem 1.75rem}p+ul,p+ol{margin-top:-0.75rem}@media screen and (min-width: 40em){ul{margin:0.5rem 0 1.5rem 3rem}ol{margin:0.5rem 0 1.5rem 2.75rem}ul ul,ol ul{margin:0.5rem 0 0.5rem 3rem}ul ol,ol ol{margin:0.5rem 0 0.5rem 2.75rem}}.ontario-aside{border-left:0.25rem solid #367A76;padding:1.5rem;margin:2rem 0 2.5rem 2rem}.ontario-aside *{max-width:48rem}.ontario-aside *:last-child,.ontario-aside *:last-of-type{margin-bottom:0.5rem}@media screen and (max-width: 40em){.ontario-aside .ontario-aside{margin:2rem 0 2.5rem 1rem}}.ontario-aside__title{margin:0 0 1rem}.ontario-border-highlight--teal{border-color:#367A76 !important}.ontario-border-highlight--gold{border-color:#86743D !important}.ontario-border-highlight--yellow{border-color:#8A600D !important}.ontario-border-highlight--taupe{border-color:#7B725C !important}.ontario-border-highlight--green{border-color:#2B8737 !important}.ontario-border-highlight--lime{border-color:#5F8129 !important}.ontario-border-highlight--sky{border-color:#1080A6 !important}.ontario-border-highlight--blue{border-color:#0369ac !important}.ontario-border-highlight--purple{border-color:#92278F !important}';
|
|
13
|
+
|
|
14
|
+
const OntarioAside$1 = /*@__PURE__*/ proxyCustomElement(
|
|
15
|
+
class OntarioAside extends H {
|
|
16
|
+
constructor() {
|
|
17
|
+
super();
|
|
18
|
+
this.__registerHost();
|
|
19
|
+
this.__attachShadow();
|
|
20
|
+
/**
|
|
21
|
+
* The type of the heading content. If no prop is passed, it will default to string.
|
|
22
|
+
*/
|
|
23
|
+
this.headingContentType = 'string';
|
|
24
|
+
/**
|
|
25
|
+
* Optional prop to choose the border colour of the aside. If none is passed, the default colour will be teal.
|
|
26
|
+
*/
|
|
27
|
+
this.highlightColour = 'teal';
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Watch for changes to the `headingType` prop.
|
|
31
|
+
*
|
|
32
|
+
* This is for validation purposes to make sure the `headingType` matches one of the `HeadingLevelOptions`.
|
|
33
|
+
*/
|
|
34
|
+
validateHeadingType() {
|
|
35
|
+
if (!!this.headingType) {
|
|
36
|
+
if (isValidHeadingLevel(this.headingType)) return this.headingType;
|
|
37
|
+
const message = new ConsoleMessageClass();
|
|
38
|
+
return message
|
|
39
|
+
.addDesignSystemTag()
|
|
40
|
+
.addMonospaceText(` headingType ${this.headingType} `)
|
|
41
|
+
.addRegularText('for')
|
|
42
|
+
.addMonospaceText(' <ontario-aside> ')
|
|
43
|
+
.addRegularText('is not a valid type. Please ensure your heading type matches one of the headingType types.')
|
|
44
|
+
.printMessage();
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Watch for changes in the `headingContentType` prop for validation purposes.
|
|
49
|
+
*
|
|
50
|
+
* If the user input doesn't match one of the array values then `headingContentType` will be set to its default (`string`).
|
|
51
|
+
* If a match is found in one of the array values then `headingContentType` will be set to the matching array key value.
|
|
52
|
+
*/
|
|
53
|
+
validateHeadingContentType() {
|
|
54
|
+
const isValid = validateValueAgainstArray(this.headingContentType, HeadingContentTypes);
|
|
55
|
+
if (isValid) {
|
|
56
|
+
return this.headingContentType;
|
|
57
|
+
} else {
|
|
58
|
+
return this.warnDefaultType();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Watch for changes to the `highlightColour` prop.
|
|
63
|
+
*
|
|
64
|
+
* If no `highlightColour` is passed, or if the `highlightColour` does not match the `highlightColour` options, a default value of 'teal' will be applied.
|
|
65
|
+
*/
|
|
66
|
+
validateHighlightColour() {
|
|
67
|
+
if (this.highlightColour) {
|
|
68
|
+
if (isValidHighlightColour(this.highlightColour)) return this.highlightColour;
|
|
69
|
+
else {
|
|
70
|
+
const message = new ConsoleMessageClass();
|
|
71
|
+
message
|
|
72
|
+
.addDesignSystemTag()
|
|
73
|
+
.addMonospaceText(` highlightColour ${this.highlightColour} `)
|
|
74
|
+
.addRegularText('for')
|
|
75
|
+
.addMonospaceText(' <ontario-aside> ')
|
|
76
|
+
.addRegularText(
|
|
77
|
+
'does not match one of the valid highlightColour types. A default colour of `teal` will be applied.',
|
|
78
|
+
)
|
|
79
|
+
.printMessage();
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// if no highlight colour is passed, return 'teal'
|
|
83
|
+
return 'teal';
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Print the invalid `type` warning message.
|
|
87
|
+
* @returns default type ('string')
|
|
88
|
+
*/
|
|
89
|
+
warnDefaultType() {
|
|
90
|
+
const message = new ConsoleMessageClass();
|
|
91
|
+
message
|
|
92
|
+
.addDesignSystemTag()
|
|
93
|
+
.addMonospaceText(' headingContentType ')
|
|
94
|
+
.addRegularText('on')
|
|
95
|
+
.addMonospaceText(' <ontario-aside> ')
|
|
96
|
+
.addRegularText('was set to an invalid type; only')
|
|
97
|
+
.addMonospaceText(' string or html ')
|
|
98
|
+
.addRegularText('are supported. The default type')
|
|
99
|
+
.addMonospaceText(' string ')
|
|
100
|
+
.addRegularText('is assumed.')
|
|
101
|
+
.printMessage();
|
|
102
|
+
return (this.headingContentType = 'string');
|
|
103
|
+
}
|
|
104
|
+
componentWillLoad() {
|
|
105
|
+
this.validateHighlightColour();
|
|
106
|
+
this.validateHeadingType();
|
|
107
|
+
this.validateHeadingContentType();
|
|
108
|
+
}
|
|
109
|
+
render() {
|
|
110
|
+
return generateCalloutAside(
|
|
111
|
+
'aside',
|
|
112
|
+
this.headingContentType,
|
|
113
|
+
this.headingType,
|
|
114
|
+
this.headingContent,
|
|
115
|
+
this.content,
|
|
116
|
+
this.highlightColour,
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
static get watchers() {
|
|
120
|
+
return {
|
|
121
|
+
headingType: ['validateHeadingType'],
|
|
122
|
+
headingContentType: ['validateHeadingContentType'],
|
|
123
|
+
highlightColour: ['validateHighlightColour'],
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
static get style() {
|
|
127
|
+
return ontarioAsideCss;
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
[
|
|
131
|
+
257,
|
|
132
|
+
'ontario-aside',
|
|
133
|
+
{
|
|
134
|
+
headingType: [1025, 'heading-type'],
|
|
135
|
+
headingContentType: [1025, 'heading-content-type'],
|
|
136
|
+
headingContent: [1, 'heading-content'],
|
|
137
|
+
content: [1],
|
|
138
|
+
highlightColour: [1025, 'highlight-colour'],
|
|
139
|
+
},
|
|
140
|
+
undefined,
|
|
141
|
+
{
|
|
142
|
+
headingType: ['validateHeadingType'],
|
|
143
|
+
headingContentType: ['validateHeadingContentType'],
|
|
144
|
+
highlightColour: ['validateHighlightColour'],
|
|
145
|
+
},
|
|
146
|
+
],
|
|
147
|
+
);
|
|
148
|
+
function defineCustomElement$1() {
|
|
149
|
+
if (typeof customElements === 'undefined') {
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
const components = ['ontario-aside'];
|
|
153
|
+
components.forEach((tagName) => {
|
|
154
|
+
switch (tagName) {
|
|
155
|
+
case 'ontario-aside':
|
|
156
|
+
if (!customElements.get(tagName)) {
|
|
157
|
+
customElements.define(tagName, OntarioAside$1);
|
|
158
|
+
}
|
|
159
|
+
break;
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
defineCustomElement$1();
|
|
164
|
+
|
|
165
|
+
const OntarioAside = OntarioAside$1;
|
|
166
|
+
const defineCustomElement = defineCustomElement$1;
|
|
167
|
+
|
|
168
|
+
export { OntarioAside, defineCustomElement };
|
|
169
|
+
//# sourceMappingURL=ontario-aside.js.map
|
|
170
|
+
|
|
171
|
+
//# sourceMappingURL=ontario-aside.js.map
|