@ukic/web-components 2.1.0-beta.4 → 2.1.0-beta.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/ic-card.cjs.entry.js.map +1 -1
  3. package/dist/cjs/ic-chip.cjs.entry.js +2 -0
  4. package/dist/cjs/ic-chip.cjs.entry.js.map +1 -1
  5. package/dist/cjs/ic-radio-group.cjs.entry.js +1 -2
  6. package/dist/cjs/ic-radio-group.cjs.entry.js.map +1 -1
  7. package/dist/cjs/ic-select.cjs.entry.js +1 -1
  8. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  9. package/dist/cjs/ic-text-field.cjs.entry.js +1 -1
  10. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  11. package/dist/cjs/loader.cjs.js +1 -1
  12. package/dist/collection/components/ic-card/ic-card.js +1 -1
  13. package/dist/collection/components/ic-card/ic-card.js.map +1 -1
  14. package/dist/collection/components/ic-chip/ic-chip.js +20 -1
  15. package/dist/collection/components/ic-chip/ic-chip.js.map +1 -1
  16. package/dist/collection/components/ic-radio-group/ic-radio-group.js +1 -2
  17. package/dist/collection/components/ic-radio-group/ic-radio-group.js.map +1 -1
  18. package/dist/collection/components/ic-select/ic-select.css +4 -0
  19. package/dist/collection/components/ic-text-field/ic-text-field.css +1 -0
  20. package/dist/components/ic-card.js.map +1 -1
  21. package/dist/components/ic-chip.js +3 -1
  22. package/dist/components/ic-chip.js.map +1 -1
  23. package/dist/components/ic-radio-group.js +1 -2
  24. package/dist/components/ic-radio-group.js.map +1 -1
  25. package/dist/components/ic-select.js +1 -1
  26. package/dist/components/ic-select.js.map +1 -1
  27. package/dist/components/ic-text-field2.js +1 -1
  28. package/dist/components/ic-text-field2.js.map +1 -1
  29. package/dist/core/core.esm.js +1 -1
  30. package/dist/core/core.esm.js.map +1 -1
  31. package/dist/core/{p-a5948fc3.entry.js → p-01e8bd4a.entry.js} +2 -2
  32. package/dist/core/p-01e8bd4a.entry.js.map +1 -0
  33. package/dist/core/p-204f6315.entry.js +2 -0
  34. package/dist/core/p-204f6315.entry.js.map +1 -0
  35. package/dist/core/p-3efa7f8b.entry.js +2 -0
  36. package/dist/core/p-3efa7f8b.entry.js.map +1 -0
  37. package/dist/core/{p-2ca96f69.entry.js → p-6cb276c6.entry.js} +2 -2
  38. package/dist/core/p-6cb276c6.entry.js.map +1 -0
  39. package/dist/core/p-d599cf4f.entry.js.map +1 -1
  40. package/dist/esm/core.js +1 -1
  41. package/dist/esm/ic-card.entry.js.map +1 -1
  42. package/dist/esm/ic-chip.entry.js +2 -0
  43. package/dist/esm/ic-chip.entry.js.map +1 -1
  44. package/dist/esm/ic-radio-group.entry.js +1 -2
  45. package/dist/esm/ic-radio-group.entry.js.map +1 -1
  46. package/dist/esm/ic-select.entry.js +1 -1
  47. package/dist/esm/ic-select.entry.js.map +1 -1
  48. package/dist/esm/ic-text-field.entry.js +1 -1
  49. package/dist/esm/ic-text-field.entry.js.map +1 -1
  50. package/dist/esm/loader.js +1 -1
  51. package/dist/types/components/ic-card/ic-card.d.ts +1 -1
  52. package/dist/types/components/ic-chip/ic-chip.d.ts +5 -1
  53. package/dist/types/components.d.ts +7 -3
  54. package/hydrate/index.js +6 -5
  55. package/package.json +3 -3
  56. package/dist/core/p-2ca96f69.entry.js.map +0 -1
  57. package/dist/core/p-789e197b.entry.js +0 -2
  58. package/dist/core/p-789e197b.entry.js.map +0 -1
  59. package/dist/core/p-a5948fc3.entry.js.map +0 -1
  60. package/dist/core/p-f5b045a5.entry.js +0 -2
  61. package/dist/core/p-f5b045a5.entry.js.map +0 -1
@@ -15,7 +15,7 @@ const patchBrowser = () => {
15
15
  };
16
16
 
17
17
  patchBrowser().then(options => {
18
- return index.bootstrapLazy(JSON.parse("[[\"ic-typography.cjs\",[[1,\"ic-typography\",{\"variant\":[1],\"applyVerticalMargins\":[4,\"apply-vertical-margins\"]}]]],[\"ic-search-bar.cjs\",[[1,\"ic-search-bar\",{\"label\":[1],\"required\":[4],\"disabled\":[4],\"readonly\":[4],\"placeholder\":[1],\"fullWidth\":[4,\"full-width\"],\"disableFilter\":[4,\"disable-filter\"],\"hideLabel\":[4,\"hide-label\"],\"helperText\":[1,\"helper-text\"],\"small\":[4],\"value\":[1537],\"autocapitalize\":[1],\"autocomplete\":[1],\"autocorrect\":[1],\"autofocus\":[4],\"debounce\":[2],\"name\":[1],\"spellcheck\":[4],\"options\":[16],\"focusOnLoad\":[4,\"focus-on-load\"],\"hintText\":[1,\"hint-text\"],\"emptyOptionListText\":[1,\"empty-option-list-text\"],\"charactersUntilSuggestion\":[2,\"characters-until-suggestion\"],\"open\":[32],\"filteredOptions\":[32],\"ariaActiveDescendant\":[32],\"showClearButton\":[32],\"clearButtonFocused\":[32],\"searchSubmitFocused\":[32],\"prevNoOption\":[32],\"highlightedValue\":[32],\"setFocus\":[64]},[[0,\"icKeydown\",\"handleKeyDown\"],[0,\"keyup\",\"handleKeyUp\"],[0,\"icMenuStateChange\",\"onMenuClose\"],[0,\"menuOptionId\",\"onMenuOptionHighlighted\"]]]]],[\"ic-select.cjs\",[[1,\"ic-select\",{\"label\":[1],\"options\":[16],\"required\":[4],\"hideLabel\":[4,\"hide-label\"],\"disabled\":[516],\"readonly\":[4],\"placeholder\":[1],\"helperText\":[1,\"helper-text\"],\"small\":[4],\"fullWidth\":[4,\"full-width\"],\"validationStatus\":[1,\"validation-status\"],\"validationText\":[1,\"validation-text\"],\"value\":[1025],\"name\":[1],\"showClearButton\":[4,\"show-clear-button\"],\"searchable\":[4],\"includeDescriptionsInSearch\":[4,\"include-descriptions-in-search\"],\"includeGroupTitlesInSearch\":[4,\"include-group-titles-in-search\"],\"searchMatchPosition\":[1,\"search-match-position\"],\"charactersUntilSuggestions\":[2,\"characters-until-suggestions\"],\"emptyOptionListText\":[1,\"empty-option-list-text\"],\"open\":[32],\"clearButtonFocused\":[32],\"searchableSelectInputValue\":[32],\"filteredOptions\":[32],\"ariaActiveDescendant\":[32],\"noOptions\":[32],\"initialValue\":[32],\"setFocus\":[64]}]]],[\"ic-top-navigation.cjs\",[[1,\"ic-top-navigation\",{\"appTitle\":[1,\"app-title\"],\"href\":[1],\"version\":[1],\"status\":[1],\"contentAligned\":[1,\"content-aligned\"],\"inline\":[4],\"menuOpen\":[32],\"deviceSize\":[32],\"mobileSearchBarVisible\":[32],\"navMenuVisible\":[32],\"searchValue\":[32],\"mobileSearchHiddenOnBlur\":[32],\"searchButtonClick\":[32],\"foregroundColor\":[32],\"hasFullWidthSearchBar\":[32]},[[0,\"icNavigationMenuClose\",\"navBarMenuCloseHandler\"],[0,\"icSearchBarBlur\",\"searchInputBlurHandler\"],[0,\"icChange\",\"searchValueChangeHandler\"],[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-side-navigation.cjs\",[[1,\"ic-side-navigation\",{\"appTitle\":[1,\"app-title\"],\"status\":[1],\"version\":[1],\"expanded\":[4],\"href\":[1],\"static\":[4],\"collapsedIconLabels\":[4,\"collapsed-icon-labels\"],\"inline\":[4],\"disableAutoParentStyling\":[4,\"disable-auto-parent-styling\"],\"foregroundColor\":[32],\"menuOpen\":[32],\"menuExpanded\":[32],\"deviceSize\":[32],\"deviceSizeAppTitle\":[32],\"hasSecondaryNavigation\":[32]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-alert.cjs\",[[1,\"ic-alert\",{\"variant\":[1],\"heading\":[1],\"message\":[1],\"titleAbove\":[4,\"title-above\"],\"dismissible\":[4],\"announced\":[4],\"visible\":[32],\"alertTitleWrap\":[32]},[[2,\"icDismiss\",\"handleClick\"]]]]],[\"ic-card.cjs\",[[1,\"ic-card\",{\"clickable\":[1028],\"href\":[1],\"hreflang\":[1],\"referrerpolicy\":[1],\"rel\":[1],\"target\":[1],\"heading\":[1],\"subheading\":[1],\"message\":[1],\"disabled\":[4],\"fullWidth\":[4,\"full-width\"],\"expandable\":[4],\"parentIsAnchorTag\":[32],\"isFocussed\":[32],\"parentEl\":[32],\"appearance\":[32],\"areaExpanded\":[32]},[[2,\"click\",\"handleHostClick\"],[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-navigation-button.cjs\",[[1,\"ic-navigation-button\",{\"label\":[1],\"href\":[1],\"target\":[1],\"rel\":[1],\"download\":[8],\"hreflang\":[1],\"referrerpolicy\":[1],\"mode\":[32],\"initialAppearance\":[32],\"setFocus\":[64]},[[4,\"icNavigationMenuOpened\",\"navBarMenuOpenHandler\"],[4,\"icNavigationMenuClosed\",\"navBarMenuCloseHandler\"],[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-checkbox-group.cjs\",[[1,\"ic-checkbox-group\",{\"label\":[1],\"name\":[1],\"required\":[4],\"hideLabel\":[4,\"hide-label\"],\"disabled\":[4],\"helperText\":[1,\"helper-text\"],\"small\":[4],\"validationStatus\":[1,\"validation-status\"],\"validationText\":[1,\"validation-text\"],\"checkedOptions\":[32]},[[0,\"icCheck\",\"selectHandler\"]]]]],[\"ic-radio-group.cjs\",[[1,\"ic-radio-group\",{\"label\":[1],\"name\":[1],\"required\":[4],\"hideLabel\":[4,\"hide-label\"],\"disabled\":[4],\"helperText\":[1,\"helper-text\"],\"small\":[4],\"validationStatus\":[1,\"validation-status\"],\"validationText\":[1,\"validation-text\"],\"checkedValue\":[32],\"selectedChild\":[32]},[[0,\"icCheck\",\"selectHandler\"]]]]],[\"ic-breadcrumb-group.cjs\",[[1,\"ic-breadcrumb-group\",{\"backBreadcrumbOnly\":[4,\"back-breadcrumb-only\"],\"collapsed\":[4],\"deviceSize\":[32],\"expandedBreadcrumbs\":[32]}]]],[\"ic-chip.cjs\",[[1,\"ic-chip\",{\"label\":[1],\"appearance\":[1],\"size\":[1],\"dismissible\":[4],\"disabled\":[4],\"visible\":[32],\"isHovered\":[32]},[[2,\"dismiss\",\"handleClick\"]]]]],[\"ic-footer.cjs\",[[1,\"ic-footer\",{\"description\":[1],\"aligned\":[1],\"breakpoint\":[1],\"groupLinks\":[4,\"group-links\"],\"caption\":[1],\"copyright\":[4],\"deviceSize\":[32],\"foregroundColor\":[32]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-footer-link-group.cjs\",[[1,\"ic-footer-link-group\",{\"groupTitle\":[1,\"group-title\"],\"small\":[32],\"expanded\":[32],\"dropdownIconStyle\":[32],\"deviceSize\":[32]},[[4,\"footerResized\",\"footerResizeHandler\"],[4,\"themeChange\",\"footerThemeChangeHandler\"]]]]],[\"ic-hero.cjs\",[[1,\"ic-hero\",{\"heading\":[1],\"subheading\":[1],\"secondaryHeading\":[1,\"secondary-heading\"],\"secondarySubheading\":[1,\"secondary-subheading\"],\"backgroundImage\":[1,\"background-image\"],\"disableBackgroundParallax\":[4,\"disable-background-parallax\"],\"aligned\":[1],\"contentAligned\":[1,\"content-aligned\"],\"small\":[4],\"rightContent\":[32],\"scrollFactor\":[32],\"leftContentFullWidth\":[32],\"foregroundColor\":[32]},[[4,\"themeChange\",\"themeChangeHandler\"],[5,\"scroll\",\"doScroll\"]]]]],[\"ic-navigation-item.cjs\",[[1,\"ic-navigation-item\",{\"label\":[1],\"href\":[1],\"selected\":[4],\"expandable\":[4],\"displayNavigationTooltip\":[4,\"display-navigation-tooltip\"],\"collapsedIconLabel\":[4,\"collapsed-icon-label\"],\"isTopNavChild\":[32],\"inTopNavSideMenu\":[32],\"deviceSize\":[32],\"focusStyle\":[32],\"navigationType\":[32],\"parentEl\":[32],\"sideNavExpanded\":[32],\"isSideNavMobile\":[32],\"setFocus\":[64]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-page-header.cjs\",[[1,\"ic-page-header\",{\"heading\":[1],\"subheading\":[1],\"aligned\":[1],\"small\":[4],\"border\":[4],\"sticky\":[4],\"stickyDesktopOnly\":[4,\"sticky-desktop-only\"],\"reverseOrder\":[4,\"reverse-order\"],\"deviceSize\":[32],\"areButtonsReversed\":[32],\"actionContent\":[32]}]]],[\"ic-step.cjs\",[[1,\"ic-step\",{\"variant\":[1],\"stepTitle\":[1,\"step-title\"],\"stepSubtitle\":[1,\"step-subtitle\"],\"stepStatus\":[1,\"step-status\"],\"stepType\":[1,\"step-type\"],\"current\":[1028],\"compactStepStyling\":[1,\"compact-step-styling\"],\"stepNum\":[2,\"step-num\"],\"lastStep\":[4,\"last-step\"],\"lastStepNum\":[2,\"last-step-num\"],\"nextStepTitle\":[1,\"next-step-title\"],\"progress\":[2]}]]],[\"ic-switch.cjs\",[[1,\"ic-switch\",{\"label\":[1],\"hideLabel\":[4,\"hide-label\"],\"helperText\":[1,\"helper-text\"],\"checked\":[4],\"small\":[4],\"disabled\":[4],\"name\":[1],\"showState\":[4,\"show-state\"],\"value\":[1],\"checkedState\":[32],\"initiallyChecked\":[32]}]]],[\"ic-tab-group.cjs\",[[1,\"ic-tab-group\",{\"contextId\":[513,\"context-id\"],\"inline\":[516],\"label\":[1],\"appearance\":[1],\"firstTabVisible\":[32],\"lastTabVisible\":[32],\"tabOverflow\":[32],\"scrollTabIntoView\":[64]},[[0,\"tabFocus\",\"tabFocusHandler\"]]]]],[\"ic-back-to-top.cjs\",[[1,\"ic-back-to-top\",{\"target\":[1],\"bannerOffset\":[32],\"targetElVisible\":[32],\"footerVisible\":[32]}]]],[\"ic-checkbox.cjs\",[[1,\"ic-checkbox\",{\"checked\":[1540],\"disabled\":[4],\"label\":[1],\"value\":[1],\"name\":[1],\"groupLabel\":[1,\"group-label\"],\"dynamicText\":[1,\"dynamic-text\"],\"additionalFieldDisplay\":[513,\"additional-field-display\"],\"indeterminate\":[4],\"initiallyChecked\":[32]}]]],[\"ic-classification-banner.cjs\",[[1,\"ic-classification-banner\",{\"additionalSelectors\":[1,\"additional-selectors\"],\"classification\":[1],\"country\":[1],\"inline\":[4],\"upTo\":[4,\"up-to\"]}]]],[\"ic-data-entity.cjs\",[[1,\"ic-data-entity\",{\"heading\":[1],\"small\":[4]}]]],[\"ic-data-row.cjs\",[[1,\"ic-data-row\",{\"label\":[1],\"value\":[1],\"small\":[4],\"deviceSize\":[32],\"entitySize\":[32]}]]],[\"ic-navigation-group.cjs\",[[1,\"ic-navigation-group\",{\"label\":[1],\"expandable\":[4],\"dropdownOpen\":[32],\"inTopNavSideMenu\":[32],\"deviceSize\":[32],\"focusStyle\":[32],\"navigationType\":[32],\"parentEl\":[32],\"expanded\":[32],\"setFocus\":[64]},[[0,\"childBlur\",\"childBlurHandler\"],[0,\"navItemClicked\",\"navItemClickHandler\"],[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-radio-option.cjs\",[[1,\"ic-radio-option\",{\"selected\":[1540],\"disabled\":[4],\"label\":[1],\"value\":[1025],\"name\":[1],\"groupLabel\":[1,\"group-label\"],\"dynamicText\":[1,\"dynamic-text\"],\"additionalFieldDisplay\":[513,\"additional-field-display\"],\"initiallySelected\":[32]},[[0,\"icChange\",\"textfieldValueHandler\"]]]]],[\"ic-status-tag.cjs\",[[1,\"ic-status-tag\",{\"label\":[1],\"status\":[1],\"appearance\":[1],\"small\":[4],\"announced\":[4]}]]],[\"ic-tab.cjs\",[[1,\"ic-tab\",{\"contextId\":[513,\"context-id\"],\"disabled\":[4],\"selected\":[516],\"tabId\":[513,\"tab-id\"],\"tabPosition\":[2,\"tab-position\"],\"appearance\":[1]}]]],[\"ic-footer-link.cjs\",[[1,\"ic-footer-link\",{\"href\":[1],\"footerConfig\":[32],\"deviceSize\":[32],\"foregroundColor\":[32]},[[4,\"footerResized\",\"footerResizeHandler\"],[4,\"themeChange\",\"footerThemeChangeHandler\"]]]]],[\"ic-skeleton.cjs\",[[1,\"ic-skeleton\",{\"variant\":[1],\"light\":[4],\"hasChild\":[32],\"default\":[32],\"heightOnly\":[32],\"widthOnly\":[32]}]]],[\"ic-stepper.cjs\",[[1,\"ic-stepper\",{\"aligned\":[1],\"variant\":[1025],\"connectorWidth\":[2,\"connector-width\"],\"hideStepInfo\":[4,\"hide-step-info\"],\"stepperWidth\":[32],\"lastStepWidth\":[32],\"stepTypes\":[32],\"alignedFullWidth\":[32],\"autoSetStepTitles\":[32],\"variantOverride\":[32],\"noOfResizes\":[32]}]]],[\"ic-tab-context.cjs\",[[4,\"ic-tab-context\",{\"contextId\":[513,\"context-id\"],\"activationType\":[1,\"activation-type\"],\"selectedTabIndex\":[2,\"selected-tab-index\"],\"appearance\":[1],\"selectedTab\":[32]},[[0,\"tabClick\",\"tabClickHandler\"]]]]],[\"ic-tab-panel.cjs\",[[1,\"ic-tab-panel\",{\"contextId\":[513,\"context-id\"],\"tabPosition\":[514,\"tab-position\"],\"panelId\":[513,\"panel-id\"],\"selectedTab\":[1,\"selected-tab\"],\"appearance\":[1]}]]],[\"ic-theme.cjs\",[[1,\"ic-theme\",{\"color\":[1]}]]],[\"ic-input-component-container_3.cjs\",[[1,\"ic-menu\",{\"open\":[516],\"options\":[16],\"small\":[516],\"menuId\":[1,\"menu-id\"],\"value\":[1],\"activationType\":[1,\"activation-type\"],\"inputEl\":[16],\"parentEl\":[16],\"inputLabel\":[1,\"input-label\"],\"anchorEl\":[16],\"fullWidth\":[4,\"full-width\"],\"autoFocusOnSelected\":[4,\"auto-focus-on-selected\"],\"keyboardNav\":[32],\"optionHighlighted\":[32],\"focusFromSearchKeypress\":[32],\"initialOptionsListRender\":[32],\"preventIncorrectTabOrder\":[32],\"handleClickOpen\":[64],\"handleKeyboardOpen\":[64],\"handleSetFirstOption\":[64]},[[4,\"icClear\",\"handleClearListener\"],[4,\"icSubmitSearch\",\"handleSubmitSearch\"]]],[4,\"ic-input-component-container\",{\"disabled\":[4],\"readonly\":[4],\"validationStatus\":[1,\"validation-status\"],\"small\":[4],\"multiLine\":[4,\"multi-line\"],\"validationInline\":[4,\"validation-inline\"],\"dark\":[4],\"fullWidth\":[4,\"full-width\"]}],[4,\"ic-input-container\",{\"disabled\":[4],\"readonly\":[4]}]]],[\"ic-input-label_2.cjs\",[[4,\"ic-input-validation\",{\"message\":[1],\"for\":[1],\"status\":[1],\"fullWidth\":[4,\"full-width\"],\"ariaLiveMode\":[1,\"aria-live-mode\"]}],[0,\"ic-input-label\",{\"for\":[1],\"required\":[4],\"helperText\":[1,\"helper-text\"],\"label\":[1],\"disabled\":[4],\"readonly\":[4],\"error\":[4],\"dark\":[4]}]]],[\"ic-text-field.cjs\",[[1,\"ic-text-field\",{\"inputId\":[1,\"input-id\"],\"label\":[1],\"required\":[4],\"disabled\":[4],\"readonly\":[516],\"placeholder\":[1],\"fullWidth\":[4,\"full-width\"],\"hideLabel\":[4,\"hide-label\"],\"helperText\":[1,\"helper-text\"],\"rows\":[2],\"resize\":[4],\"small\":[516],\"value\":[1537],\"maxLength\":[2,\"max-length\"],\"validationStatus\":[1,\"validation-status\"],\"validationText\":[1,\"validation-text\"],\"validationInline\":[4,\"validation-inline\"],\"autocapitalize\":[1],\"autocomplete\":[1],\"autocorrect\":[1],\"autoFocus\":[4,\"auto-focus\"],\"debounce\":[2],\"type\":[1],\"inputmode\":[1],\"name\":[1],\"spellcheck\":[4],\"ariaActiveDescendant\":[1,\"aria-active-descendant\"],\"truncateValue\":[4,\"truncate-value\"],\"ariaExpanded\":[1,\"aria-expanded\"],\"ariaOwns\":[1,\"aria-owns\"],\"ariaAutocomplete\":[1,\"aria-autocomplete\"],\"role\":[1],\"hiddenInput\":[4,\"hidden-input\"],\"numChars\":[32],\"maxLengthExceeded\":[32],\"initialValue\":[32],\"setFocus\":[64]},[[0,\"keydown\",\"handleKeyDown\"]]]]],[\"ic-button_3.cjs\",[[1,\"ic-button\",{\"disabled\":[4],\"loading\":[4],\"type\":[1],\"href\":[1],\"target\":[1],\"rel\":[1],\"download\":[8],\"hreflang\":[1],\"referrerpolicy\":[1],\"variant\":[1],\"size\":[1],\"fullWidth\":[4,\"full-width\"],\"disableTooltip\":[4,\"disable-tooltip\"],\"tooltipPlacement\":[1,\"tooltip-placement\"],\"appearance\":[1025],\"setFocus\":[64],\"updateAriaLabel\":[64]},[[2,\"click\",\"handleHostClick\"],[4,\"themeChange\",\"themeChangeHandler\"]]],[1,\"ic-loading-indicator\",{\"progress\":[2],\"min\":[2],\"max\":[2],\"label\":[1],\"description\":[1],\"innerLabel\":[2,\"inner-label\"],\"labelDuration\":[2,\"label-duration\"],\"size\":[513],\"type\":[513],\"fullWidth\":[516,\"full-width\"],\"appearance\":[1],\"indicatorLabel\":[32],\"indeterminate\":[32],\"showSecond\":[32],\"circularLineWidth\":[32],\"compactStepCircularLineWidth\":[32],\"circularDiameter\":[32]}],[1,\"ic-tooltip\",{\"target\":[513],\"placement\":[1],\"label\":[1],\"disableHover\":[4,\"disable-hover\"]}]]],[\"ic-navigation-menu.cjs\",[[1,\"ic-navigation-menu\",{\"version\":[1],\"status\":[1]},[[0,\"navItemClicked\",\"navItemClickHandler\"],[4,\"keydown\",\"handleKeyDown\"]]]]],[\"ic-link.cjs\",[[1,\"ic-link\",{\"download\":[8],\"href\":[1],\"hreflang\":[1],\"referrerpolicy\":[1],\"rel\":[1],\"target\":[1],\"showIcon\":[4,\"show-icon\"],\"appearance\":[1025]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-breadcrumb.cjs\",[[1,\"ic-breadcrumb\",{\"pageTitle\":[1,\"page-title\"],\"href\":[1],\"current\":[4],\"showBackIcon\":[516,\"show-back-icon\"]}]]],[\"ic-divider.cjs\",[[2,\"ic-divider\",{\"foregroundColor\":[32]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-section-container.cjs\",[[1,\"ic-section-container\",{\"aligned\":[1],\"fullHeight\":[4,\"full-height\"]}]]]]"), options);
18
+ return index.bootstrapLazy(JSON.parse("[[\"ic-typography.cjs\",[[1,\"ic-typography\",{\"variant\":[1],\"applyVerticalMargins\":[4,\"apply-vertical-margins\"]}]]],[\"ic-search-bar.cjs\",[[1,\"ic-search-bar\",{\"label\":[1],\"required\":[4],\"disabled\":[4],\"readonly\":[4],\"placeholder\":[1],\"fullWidth\":[4,\"full-width\"],\"disableFilter\":[4,\"disable-filter\"],\"hideLabel\":[4,\"hide-label\"],\"helperText\":[1,\"helper-text\"],\"small\":[4],\"value\":[1537],\"autocapitalize\":[1],\"autocomplete\":[1],\"autocorrect\":[1],\"autofocus\":[4],\"debounce\":[2],\"name\":[1],\"spellcheck\":[4],\"options\":[16],\"focusOnLoad\":[4,\"focus-on-load\"],\"hintText\":[1,\"hint-text\"],\"emptyOptionListText\":[1,\"empty-option-list-text\"],\"charactersUntilSuggestion\":[2,\"characters-until-suggestion\"],\"open\":[32],\"filteredOptions\":[32],\"ariaActiveDescendant\":[32],\"showClearButton\":[32],\"clearButtonFocused\":[32],\"searchSubmitFocused\":[32],\"prevNoOption\":[32],\"highlightedValue\":[32],\"setFocus\":[64]},[[0,\"icKeydown\",\"handleKeyDown\"],[0,\"keyup\",\"handleKeyUp\"],[0,\"icMenuStateChange\",\"onMenuClose\"],[0,\"menuOptionId\",\"onMenuOptionHighlighted\"]]]]],[\"ic-select.cjs\",[[1,\"ic-select\",{\"label\":[1],\"options\":[16],\"required\":[4],\"hideLabel\":[4,\"hide-label\"],\"disabled\":[516],\"readonly\":[4],\"placeholder\":[1],\"helperText\":[1,\"helper-text\"],\"small\":[4],\"fullWidth\":[4,\"full-width\"],\"validationStatus\":[1,\"validation-status\"],\"validationText\":[1,\"validation-text\"],\"value\":[1025],\"name\":[1],\"showClearButton\":[4,\"show-clear-button\"],\"searchable\":[4],\"includeDescriptionsInSearch\":[4,\"include-descriptions-in-search\"],\"includeGroupTitlesInSearch\":[4,\"include-group-titles-in-search\"],\"searchMatchPosition\":[1,\"search-match-position\"],\"charactersUntilSuggestions\":[2,\"characters-until-suggestions\"],\"emptyOptionListText\":[1,\"empty-option-list-text\"],\"open\":[32],\"clearButtonFocused\":[32],\"searchableSelectInputValue\":[32],\"filteredOptions\":[32],\"ariaActiveDescendant\":[32],\"noOptions\":[32],\"initialValue\":[32],\"setFocus\":[64]}]]],[\"ic-top-navigation.cjs\",[[1,\"ic-top-navigation\",{\"appTitle\":[1,\"app-title\"],\"href\":[1],\"version\":[1],\"status\":[1],\"contentAligned\":[1,\"content-aligned\"],\"inline\":[4],\"menuOpen\":[32],\"deviceSize\":[32],\"mobileSearchBarVisible\":[32],\"navMenuVisible\":[32],\"searchValue\":[32],\"mobileSearchHiddenOnBlur\":[32],\"searchButtonClick\":[32],\"foregroundColor\":[32],\"hasFullWidthSearchBar\":[32]},[[0,\"icNavigationMenuClose\",\"navBarMenuCloseHandler\"],[0,\"icSearchBarBlur\",\"searchInputBlurHandler\"],[0,\"icChange\",\"searchValueChangeHandler\"],[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-side-navigation.cjs\",[[1,\"ic-side-navigation\",{\"appTitle\":[1,\"app-title\"],\"status\":[1],\"version\":[1],\"expanded\":[4],\"href\":[1],\"static\":[4],\"collapsedIconLabels\":[4,\"collapsed-icon-labels\"],\"inline\":[4],\"disableAutoParentStyling\":[4,\"disable-auto-parent-styling\"],\"foregroundColor\":[32],\"menuOpen\":[32],\"menuExpanded\":[32],\"deviceSize\":[32],\"deviceSizeAppTitle\":[32],\"hasSecondaryNavigation\":[32]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-alert.cjs\",[[1,\"ic-alert\",{\"variant\":[1],\"heading\":[1],\"message\":[1],\"titleAbove\":[4,\"title-above\"],\"dismissible\":[4],\"announced\":[4],\"visible\":[32],\"alertTitleWrap\":[32]},[[2,\"icDismiss\",\"handleClick\"]]]]],[\"ic-card.cjs\",[[1,\"ic-card\",{\"clickable\":[1028],\"href\":[1],\"hreflang\":[1],\"referrerpolicy\":[1],\"rel\":[1],\"target\":[1],\"heading\":[1],\"subheading\":[1],\"message\":[1],\"disabled\":[4],\"fullWidth\":[4,\"full-width\"],\"expandable\":[4],\"parentIsAnchorTag\":[32],\"isFocussed\":[32],\"parentEl\":[32],\"appearance\":[32],\"areaExpanded\":[32]},[[2,\"click\",\"handleHostClick\"],[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-navigation-button.cjs\",[[1,\"ic-navigation-button\",{\"label\":[1],\"href\":[1],\"target\":[1],\"rel\":[1],\"download\":[8],\"hreflang\":[1],\"referrerpolicy\":[1],\"mode\":[32],\"initialAppearance\":[32],\"setFocus\":[64]},[[4,\"icNavigationMenuOpened\",\"navBarMenuOpenHandler\"],[4,\"icNavigationMenuClosed\",\"navBarMenuCloseHandler\"],[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-checkbox-group.cjs\",[[1,\"ic-checkbox-group\",{\"label\":[1],\"name\":[1],\"required\":[4],\"hideLabel\":[4,\"hide-label\"],\"disabled\":[4],\"helperText\":[1,\"helper-text\"],\"small\":[4],\"validationStatus\":[1,\"validation-status\"],\"validationText\":[1,\"validation-text\"],\"checkedOptions\":[32]},[[0,\"icCheck\",\"selectHandler\"]]]]],[\"ic-radio-group.cjs\",[[1,\"ic-radio-group\",{\"label\":[1],\"name\":[1],\"required\":[4],\"hideLabel\":[4,\"hide-label\"],\"disabled\":[4],\"helperText\":[1,\"helper-text\"],\"small\":[4],\"validationStatus\":[1,\"validation-status\"],\"validationText\":[1,\"validation-text\"],\"checkedValue\":[32],\"selectedChild\":[32]},[[0,\"icCheck\",\"selectHandler\"]]]]],[\"ic-breadcrumb-group.cjs\",[[1,\"ic-breadcrumb-group\",{\"backBreadcrumbOnly\":[4,\"back-breadcrumb-only\"],\"collapsed\":[4],\"deviceSize\":[32],\"expandedBreadcrumbs\":[32]}]]],[\"ic-chip.cjs\",[[1,\"ic-chip\",{\"label\":[1],\"appearance\":[1],\"size\":[1],\"dismissible\":[4],\"disabled\":[4],\"visible\":[32],\"isHovered\":[32]},[[2,\"icDismiss\",\"handleClick\"]]]]],[\"ic-footer.cjs\",[[1,\"ic-footer\",{\"description\":[1],\"aligned\":[1],\"breakpoint\":[1],\"groupLinks\":[4,\"group-links\"],\"caption\":[1],\"copyright\":[4],\"deviceSize\":[32],\"foregroundColor\":[32]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-footer-link-group.cjs\",[[1,\"ic-footer-link-group\",{\"groupTitle\":[1,\"group-title\"],\"small\":[32],\"expanded\":[32],\"dropdownIconStyle\":[32],\"deviceSize\":[32]},[[4,\"footerResized\",\"footerResizeHandler\"],[4,\"themeChange\",\"footerThemeChangeHandler\"]]]]],[\"ic-hero.cjs\",[[1,\"ic-hero\",{\"heading\":[1],\"subheading\":[1],\"secondaryHeading\":[1,\"secondary-heading\"],\"secondarySubheading\":[1,\"secondary-subheading\"],\"backgroundImage\":[1,\"background-image\"],\"disableBackgroundParallax\":[4,\"disable-background-parallax\"],\"aligned\":[1],\"contentAligned\":[1,\"content-aligned\"],\"small\":[4],\"rightContent\":[32],\"scrollFactor\":[32],\"leftContentFullWidth\":[32],\"foregroundColor\":[32]},[[4,\"themeChange\",\"themeChangeHandler\"],[5,\"scroll\",\"doScroll\"]]]]],[\"ic-navigation-item.cjs\",[[1,\"ic-navigation-item\",{\"label\":[1],\"href\":[1],\"selected\":[4],\"expandable\":[4],\"displayNavigationTooltip\":[4,\"display-navigation-tooltip\"],\"collapsedIconLabel\":[4,\"collapsed-icon-label\"],\"isTopNavChild\":[32],\"inTopNavSideMenu\":[32],\"deviceSize\":[32],\"focusStyle\":[32],\"navigationType\":[32],\"parentEl\":[32],\"sideNavExpanded\":[32],\"isSideNavMobile\":[32],\"setFocus\":[64]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-page-header.cjs\",[[1,\"ic-page-header\",{\"heading\":[1],\"subheading\":[1],\"aligned\":[1],\"small\":[4],\"border\":[4],\"sticky\":[4],\"stickyDesktopOnly\":[4,\"sticky-desktop-only\"],\"reverseOrder\":[4,\"reverse-order\"],\"deviceSize\":[32],\"areButtonsReversed\":[32],\"actionContent\":[32]}]]],[\"ic-step.cjs\",[[1,\"ic-step\",{\"variant\":[1],\"stepTitle\":[1,\"step-title\"],\"stepSubtitle\":[1,\"step-subtitle\"],\"stepStatus\":[1,\"step-status\"],\"stepType\":[1,\"step-type\"],\"current\":[1028],\"compactStepStyling\":[1,\"compact-step-styling\"],\"stepNum\":[2,\"step-num\"],\"lastStep\":[4,\"last-step\"],\"lastStepNum\":[2,\"last-step-num\"],\"nextStepTitle\":[1,\"next-step-title\"],\"progress\":[2]}]]],[\"ic-switch.cjs\",[[1,\"ic-switch\",{\"label\":[1],\"hideLabel\":[4,\"hide-label\"],\"helperText\":[1,\"helper-text\"],\"checked\":[4],\"small\":[4],\"disabled\":[4],\"name\":[1],\"showState\":[4,\"show-state\"],\"value\":[1],\"checkedState\":[32],\"initiallyChecked\":[32]}]]],[\"ic-tab-group.cjs\",[[1,\"ic-tab-group\",{\"contextId\":[513,\"context-id\"],\"inline\":[516],\"label\":[1],\"appearance\":[1],\"firstTabVisible\":[32],\"lastTabVisible\":[32],\"tabOverflow\":[32],\"scrollTabIntoView\":[64]},[[0,\"tabFocus\",\"tabFocusHandler\"]]]]],[\"ic-back-to-top.cjs\",[[1,\"ic-back-to-top\",{\"target\":[1],\"bannerOffset\":[32],\"targetElVisible\":[32],\"footerVisible\":[32]}]]],[\"ic-checkbox.cjs\",[[1,\"ic-checkbox\",{\"checked\":[1540],\"disabled\":[4],\"label\":[1],\"value\":[1],\"name\":[1],\"groupLabel\":[1,\"group-label\"],\"dynamicText\":[1,\"dynamic-text\"],\"additionalFieldDisplay\":[513,\"additional-field-display\"],\"indeterminate\":[4],\"initiallyChecked\":[32]}]]],[\"ic-classification-banner.cjs\",[[1,\"ic-classification-banner\",{\"additionalSelectors\":[1,\"additional-selectors\"],\"classification\":[1],\"country\":[1],\"inline\":[4],\"upTo\":[4,\"up-to\"]}]]],[\"ic-data-entity.cjs\",[[1,\"ic-data-entity\",{\"heading\":[1],\"small\":[4]}]]],[\"ic-data-row.cjs\",[[1,\"ic-data-row\",{\"label\":[1],\"value\":[1],\"small\":[4],\"deviceSize\":[32],\"entitySize\":[32]}]]],[\"ic-navigation-group.cjs\",[[1,\"ic-navigation-group\",{\"label\":[1],\"expandable\":[4],\"dropdownOpen\":[32],\"inTopNavSideMenu\":[32],\"deviceSize\":[32],\"focusStyle\":[32],\"navigationType\":[32],\"parentEl\":[32],\"expanded\":[32],\"setFocus\":[64]},[[0,\"childBlur\",\"childBlurHandler\"],[0,\"navItemClicked\",\"navItemClickHandler\"],[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-radio-option.cjs\",[[1,\"ic-radio-option\",{\"selected\":[1540],\"disabled\":[4],\"label\":[1],\"value\":[1025],\"name\":[1],\"groupLabel\":[1,\"group-label\"],\"dynamicText\":[1,\"dynamic-text\"],\"additionalFieldDisplay\":[513,\"additional-field-display\"],\"initiallySelected\":[32]},[[0,\"icChange\",\"textfieldValueHandler\"]]]]],[\"ic-status-tag.cjs\",[[1,\"ic-status-tag\",{\"label\":[1],\"status\":[1],\"appearance\":[1],\"small\":[4],\"announced\":[4]}]]],[\"ic-tab.cjs\",[[1,\"ic-tab\",{\"contextId\":[513,\"context-id\"],\"disabled\":[4],\"selected\":[516],\"tabId\":[513,\"tab-id\"],\"tabPosition\":[2,\"tab-position\"],\"appearance\":[1]}]]],[\"ic-footer-link.cjs\",[[1,\"ic-footer-link\",{\"href\":[1],\"footerConfig\":[32],\"deviceSize\":[32],\"foregroundColor\":[32]},[[4,\"footerResized\",\"footerResizeHandler\"],[4,\"themeChange\",\"footerThemeChangeHandler\"]]]]],[\"ic-skeleton.cjs\",[[1,\"ic-skeleton\",{\"variant\":[1],\"light\":[4],\"hasChild\":[32],\"default\":[32],\"heightOnly\":[32],\"widthOnly\":[32]}]]],[\"ic-stepper.cjs\",[[1,\"ic-stepper\",{\"aligned\":[1],\"variant\":[1025],\"connectorWidth\":[2,\"connector-width\"],\"hideStepInfo\":[4,\"hide-step-info\"],\"stepperWidth\":[32],\"lastStepWidth\":[32],\"stepTypes\":[32],\"alignedFullWidth\":[32],\"autoSetStepTitles\":[32],\"variantOverride\":[32],\"noOfResizes\":[32]}]]],[\"ic-tab-context.cjs\",[[4,\"ic-tab-context\",{\"contextId\":[513,\"context-id\"],\"activationType\":[1,\"activation-type\"],\"selectedTabIndex\":[2,\"selected-tab-index\"],\"appearance\":[1],\"selectedTab\":[32]},[[0,\"tabClick\",\"tabClickHandler\"]]]]],[\"ic-tab-panel.cjs\",[[1,\"ic-tab-panel\",{\"contextId\":[513,\"context-id\"],\"tabPosition\":[514,\"tab-position\"],\"panelId\":[513,\"panel-id\"],\"selectedTab\":[1,\"selected-tab\"],\"appearance\":[1]}]]],[\"ic-theme.cjs\",[[1,\"ic-theme\",{\"color\":[1]}]]],[\"ic-input-component-container_3.cjs\",[[1,\"ic-menu\",{\"open\":[516],\"options\":[16],\"small\":[516],\"menuId\":[1,\"menu-id\"],\"value\":[1],\"activationType\":[1,\"activation-type\"],\"inputEl\":[16],\"parentEl\":[16],\"inputLabel\":[1,\"input-label\"],\"anchorEl\":[16],\"fullWidth\":[4,\"full-width\"],\"autoFocusOnSelected\":[4,\"auto-focus-on-selected\"],\"keyboardNav\":[32],\"optionHighlighted\":[32],\"focusFromSearchKeypress\":[32],\"initialOptionsListRender\":[32],\"preventIncorrectTabOrder\":[32],\"handleClickOpen\":[64],\"handleKeyboardOpen\":[64],\"handleSetFirstOption\":[64]},[[4,\"icClear\",\"handleClearListener\"],[4,\"icSubmitSearch\",\"handleSubmitSearch\"]]],[4,\"ic-input-component-container\",{\"disabled\":[4],\"readonly\":[4],\"validationStatus\":[1,\"validation-status\"],\"small\":[4],\"multiLine\":[4,\"multi-line\"],\"validationInline\":[4,\"validation-inline\"],\"dark\":[4],\"fullWidth\":[4,\"full-width\"]}],[4,\"ic-input-container\",{\"disabled\":[4],\"readonly\":[4]}]]],[\"ic-input-label_2.cjs\",[[4,\"ic-input-validation\",{\"message\":[1],\"for\":[1],\"status\":[1],\"fullWidth\":[4,\"full-width\"],\"ariaLiveMode\":[1,\"aria-live-mode\"]}],[0,\"ic-input-label\",{\"for\":[1],\"required\":[4],\"helperText\":[1,\"helper-text\"],\"label\":[1],\"disabled\":[4],\"readonly\":[4],\"error\":[4],\"dark\":[4]}]]],[\"ic-text-field.cjs\",[[1,\"ic-text-field\",{\"inputId\":[1,\"input-id\"],\"label\":[1],\"required\":[4],\"disabled\":[4],\"readonly\":[516],\"placeholder\":[1],\"fullWidth\":[4,\"full-width\"],\"hideLabel\":[4,\"hide-label\"],\"helperText\":[1,\"helper-text\"],\"rows\":[2],\"resize\":[4],\"small\":[516],\"value\":[1537],\"maxLength\":[2,\"max-length\"],\"validationStatus\":[1,\"validation-status\"],\"validationText\":[1,\"validation-text\"],\"validationInline\":[4,\"validation-inline\"],\"autocapitalize\":[1],\"autocomplete\":[1],\"autocorrect\":[1],\"autoFocus\":[4,\"auto-focus\"],\"debounce\":[2],\"type\":[1],\"inputmode\":[1],\"name\":[1],\"spellcheck\":[4],\"ariaActiveDescendant\":[1,\"aria-active-descendant\"],\"truncateValue\":[4,\"truncate-value\"],\"ariaExpanded\":[1,\"aria-expanded\"],\"ariaOwns\":[1,\"aria-owns\"],\"ariaAutocomplete\":[1,\"aria-autocomplete\"],\"role\":[1],\"hiddenInput\":[4,\"hidden-input\"],\"numChars\":[32],\"maxLengthExceeded\":[32],\"initialValue\":[32],\"setFocus\":[64]},[[0,\"keydown\",\"handleKeyDown\"]]]]],[\"ic-button_3.cjs\",[[1,\"ic-button\",{\"disabled\":[4],\"loading\":[4],\"type\":[1],\"href\":[1],\"target\":[1],\"rel\":[1],\"download\":[8],\"hreflang\":[1],\"referrerpolicy\":[1],\"variant\":[1],\"size\":[1],\"fullWidth\":[4,\"full-width\"],\"disableTooltip\":[4,\"disable-tooltip\"],\"tooltipPlacement\":[1,\"tooltip-placement\"],\"appearance\":[1025],\"setFocus\":[64],\"updateAriaLabel\":[64]},[[2,\"click\",\"handleHostClick\"],[4,\"themeChange\",\"themeChangeHandler\"]]],[1,\"ic-loading-indicator\",{\"progress\":[2],\"min\":[2],\"max\":[2],\"label\":[1],\"description\":[1],\"innerLabel\":[2,\"inner-label\"],\"labelDuration\":[2,\"label-duration\"],\"size\":[513],\"type\":[513],\"fullWidth\":[516,\"full-width\"],\"appearance\":[1],\"indicatorLabel\":[32],\"indeterminate\":[32],\"showSecond\":[32],\"circularLineWidth\":[32],\"compactStepCircularLineWidth\":[32],\"circularDiameter\":[32]}],[1,\"ic-tooltip\",{\"target\":[513],\"placement\":[1],\"label\":[1],\"disableHover\":[4,\"disable-hover\"]}]]],[\"ic-navigation-menu.cjs\",[[1,\"ic-navigation-menu\",{\"version\":[1],\"status\":[1]},[[0,\"navItemClicked\",\"navItemClickHandler\"],[4,\"keydown\",\"handleKeyDown\"]]]]],[\"ic-link.cjs\",[[1,\"ic-link\",{\"download\":[8],\"href\":[1],\"hreflang\":[1],\"referrerpolicy\":[1],\"rel\":[1],\"target\":[1],\"showIcon\":[4,\"show-icon\"],\"appearance\":[1025]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-breadcrumb.cjs\",[[1,\"ic-breadcrumb\",{\"pageTitle\":[1,\"page-title\"],\"href\":[1],\"current\":[4],\"showBackIcon\":[516,\"show-back-icon\"]}]]],[\"ic-divider.cjs\",[[2,\"ic-divider\",{\"foregroundColor\":[32]},[[4,\"themeChange\",\"themeChangeHandler\"]]]]],[\"ic-section-container.cjs\",[[1,\"ic-section-container\",{\"aligned\":[1],\"fullHeight\":[4,\"full-height\"]}]]]]"), options);
19
19
  });
20
20
 
21
21
  //# sourceMappingURL=core.cjs.js.map
@@ -1 +1 @@
1
- {"file":"ic-card.entry.cjs.js","mappings":"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","names":["getThemeFromContext","IcThemeForegroundEnum","onComponentRequiredPropUndefined","h","isSlotUsed","chevronIcon"],"sources":["./src/components/ic-card/ic-card.css?tag=ic-card&encapsulation=shadow","./src/components/ic-card/ic-card.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: flex;\n}\n\na {\n text-decoration: none !important;\n color: var(--ic-architechtural-black) !important;\n}\n\nbutton {\n border: none;\n background-color: transparent;\n outline: var(--ic-hc-focus-outline);\n}\n\n.card,\n.card.clickable {\n border: 1px solid var(--ic-architectural-300);\n border-radius: var(--ic-border-radius);\n box-sizing: border-box;\n padding: var(--ic-space-md);\n text-align: left;\n color: var(--ic-architechtural-black);\n transition: var(--ic-easing-transition-fast);\n}\n\n.dark.card,\n.dark.card.clickable {\n border: 1px solid var(--ic-architectural-700);\n}\n\n.card.clickable:hover {\n background-color: var(--ic-action-default-bg-hover);\n border-color: var(--ic-action-default-hover);\n cursor: pointer;\n}\n\n.card.clickable:focus,\n.card.clickable.focussed {\n background-color: var(--ic-action-default-bg-hover);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n}\n\n.card.clickable:active {\n background-color: var(--ic-action-default-bg-active);\n box-shadow: var(--ic-border-focus);\n}\n\n.card.disabled {\n border: var(--ic-border-disabled);\n}\n\n.card.fullwidth,\n:host([full-width=\"true\"]) {\n width: 100%;\n}\n\n.card-header {\n display: flex;\n align-items: center;\n}\n\n.icon {\n display: flex;\n align-items: center;\n padding-right: var(--ic-space-xs);\n}\n\n.card.disabled ::slotted(svg) {\n fill: var(--ic-color-tertiary-text);\n}\n\n.card.clickable .card-title {\n color: var(--ic-hyperlink);\n text-decoration: underline;\n text-decoration-thickness: 1px;\n}\n\n.card.clickable:hover .card-title,\n.card.clickable:focus .card-title,\n.card.clickable.focussed .card-title {\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n}\n\n.card.clickable:active .card-title {\n text-decoration: none;\n}\n\n.card.disabled .card-title {\n text-decoration: underline;\n text-decoration-thickness: 1px;\n text-decoration-color: var(--ic-color-tertiary-text);\n color: var(--ic-color-tertiary-text);\n}\n\n.subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n.adornment {\n margin-top: var(--ic-space-xxs);\n}\n\n.card-message {\n margin-top: var(--ic-space-md);\n align-items: left;\n}\n\n.card.disabled .card-message,\n.card.disabled .subheading {\n color: var(--ic-color-tertiary-text);\n}\n\n.interaction-button {\n margin-left: auto;\n}\n\n.image-top {\n margin-bottom: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.image-mid {\n margin-top: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.interaction-controls {\n margin-top: var(--ic-space-md);\n display: flex;\n align-items: center;\n}\n\n.toggle-button {\n margin-left: auto;\n}\n\n.toggle-button-closed svg {\n transform: rotate(90deg);\n}\n\n.toggle-button-expanded svg {\n transform: rotate(-90deg);\n}\n\n.expanded-content {\n margin-top: var(--ic-space-md);\n}\n","import { Component, Element, Listen, Prop, State, h } from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n getThemeFromContext,\n} from \"../../utils/helpers\";\nimport {\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\n\n/**\n * @slot heading - Content will be placed at the top of the card to the right of the icon.\n * @slot message - Content will be placed in the main body of the card.\n * @slot subheading - Content will be placed below the card heading.\n * @slot adornment - Content will be placed below the card subheading.\n * @slot image-top - Content will be placed at the top of the card above all other content.\n * @slot image-mid - Content will be placed below the card heading section.\n * @slot icon - Content will be placed to the left of the card heading.\n * @slot interaction-button - Content will be placed in the top right corner of the heading section.\n * @slot interaction-controls - Content will be placed below the card message.\n * @slot expanded-content - Content will be placed below the interaction controls but will not initially be rendered.\n */\n@Component({\n tag: \"ic-card\",\n styleUrl: \"ic-card.css\",\n shadow: true,\n})\nexport class Card {\n @Element() el: HTMLIcCardElement;\n\n /**\n * If `true`, the card will be a clickable variant, instead of static.\n */\n @Prop({ mutable: true }) clickable?: boolean = false;\n /**\n * The URL that the clickable card link points to.\n */\n @Prop() href?: string | undefined;\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n /**\n * The heading for the card.\n */\n @Prop() heading!: string;\n /**\n * The subheading for the card.\n */\n @Prop() subheading?: string;\n /**\n * The main body message of the card.\n */\n @Prop() message?: string = \"\";\n /**\n * If `true`, the card will be disabled if it is clickable.\n */\n @Prop() disabled?: boolean = false;\n /**\n * If `true`, the card will fill the width of the container.\n */\n @Prop() fullWidth?: boolean = false;\n /**\n * If `true`, the card will have an expandable area and expansion toggle button.\n */\n @Prop() expandable?: boolean = false;\n\n @State() parentIsAnchorTag: boolean = false;\n\n @State() isFocussed: boolean = false;\n\n @State() parentEl: HTMLElement | null = null;\n\n @State() appearance?: IcThemeForeground = \"default\";\n\n @State() areaExpanded: boolean = false;\n\n @Listen(\"click\", { capture: true })\n handleHostClick(event: Event): void {\n if (this.disabled) {\n event.stopImmediatePropagation();\n }\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.updateTheme(theme.mode);\n }\n\n private parentFocussed = (): void => {\n this.isFocussed = true;\n };\n\n private parentBlurred = (): void => {\n this.isFocussed = false;\n };\n\n private updateTheme(newTheme: IcThemeForeground = null): void {\n const foregroundColor = getThemeFromContext(this.el, newTheme || null);\n\n if (foregroundColor !== IcThemeForegroundEnum.Default) {\n this.appearance = foregroundColor;\n }\n }\n\n private toggleExpanded = (): void => {\n this.areaExpanded = !this.areaExpanded;\n };\n\n componentWillLoad(): void {\n this.parentEl = this.el.parentElement;\n\n if (this.parentEl.tagName === \"A\") {\n this.clickable = true;\n this.parentIsAnchorTag = true;\n this.parentEl.classList.add(\"ic-card-wrapper-link\");\n this.parentEl.addEventListener(\"focus\", this.parentFocussed);\n this.parentEl.addEventListener(\"blur\", this.parentBlurred);\n }\n }\n\n disconnectedCallback(): void {\n if (this.parentIsAnchorTag) {\n this.parentEl.removeEventListener(\"focus\", this.parentFocussed);\n this.parentEl.removeEventListener(\"blur\", this.parentBlurred);\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Card\"\n );\n this.updateTheme();\n }\n\n render() {\n const {\n clickable,\n disabled,\n expandable,\n heading,\n message,\n href,\n hreflang,\n referrerpolicy,\n rel,\n subheading,\n target,\n fullWidth,\n parentIsAnchorTag,\n isFocussed,\n } = this;\n\n const Component = parentIsAnchorTag\n ? \"div\"\n : clickable\n ? this.href === undefined\n ? \"button\"\n : \"a\"\n : \"div\";\n\n const attrs = Component == \"a\" && {\n href: href,\n hrefLang: hreflang,\n referrerPolicy: referrerpolicy,\n rel: rel,\n target: target,\n };\n\n return (\n <Component\n class={{\n [\"card\"]: true,\n [\"clickable\"]: clickable && !disabled,\n [\"disabled\"]: disabled,\n [\"fullwidth\"]: fullWidth,\n [\"focussed\"]: isFocussed,\n [\"dark\"]: this.appearance === IcThemeForegroundEnum.Dark,\n }}\n tabindex={clickable && !parentIsAnchorTag ? 0 : null}\n aria-disabled={disabled ? \"true\" : null}\n disabled={disabled ? true : null}\n {...attrs}\n >\n {isSlotUsed(this.el, \"image-top\") && (\n <div class=\"image-top\">\n <slot name=\"image-top\"></slot>\n </div>\n )}\n <div class=\"card-header\">\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <div class=\"card-title\">\n <slot name=\"heading\">\n <ic-typography variant=\"h4\">\n <p>{heading}</p>\n </ic-typography>\n </slot>\n </div>\n {isSlotUsed(this.el, \"interaction-button\") && (\n <div class=\"interaction-button\">\n <slot name=\"interaction-button\"></slot>\n </div>\n )}\n </div>\n {(subheading || isSlotUsed(this.el, \"subheading\")) && (\n <div class=\"subheading\">\n <slot name=\"subheading\">\n <ic-typography variant=\"subtitle-small\">\n {subheading}\n </ic-typography>\n </slot>\n </div>\n )}\n {isSlotUsed(this.el, \"adornment\") && (\n <div class=\"adornment\">\n <slot name=\"adornment\"></slot>\n </div>\n )}\n {isSlotUsed(this.el, \"image-mid\") && (\n <div class=\"image-mid\">\n <slot name=\"image-mid\"></slot>\n </div>\n )}\n {(message || isSlotUsed(this.el, \"message\")) && (\n <div\n class={{\n [\"card-message\"]: true,\n }}\n >\n <slot name=\"message\">\n <ic-typography variant=\"body\">{message}</ic-typography>\n </slot>\n </div>\n )}\n {(isSlotUsed(this.el, \"interaction-controls\") || expandable) && (\n <div class=\"interaction-controls\">\n <slot name=\"interaction-controls\"></slot>\n {expandable && (\n <ic-button\n class={{\n [\"toggle-button\"]: true,\n [\"toggle-button-closed\"]: !this.areaExpanded,\n [\"toggle-button-expanded\"]: this.areaExpanded,\n }}\n variant=\"icon\"\n disableTooltip\n aria-label=\"Toggle expandable area\"\n aria-expanded={this.areaExpanded}\n aria-controls=\"expanded-content-area\"\n onClick={this.toggleExpanded}\n innerHTML={chevronIcon}\n ></ic-button>\n )}\n </div>\n )}\n {isSlotUsed(this.el, \"expanded-content\") && this.areaExpanded && (\n <div class=\"expanded-content\" id=\"expanded-content-area\">\n <slot name=\"expanded-content\"></slot>\n </div>\n )}\n </Component>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-card.entry.cjs.js","mappings":"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","names":["getThemeFromContext","IcThemeForegroundEnum","onComponentRequiredPropUndefined","h","isSlotUsed","chevronIcon"],"sources":["./src/components/ic-card/ic-card.css?tag=ic-card&encapsulation=shadow","./src/components/ic-card/ic-card.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: flex;\n}\n\na {\n text-decoration: none !important;\n color: var(--ic-architechtural-black) !important;\n}\n\nbutton {\n border: none;\n background-color: transparent;\n outline: var(--ic-hc-focus-outline);\n}\n\n.card,\n.card.clickable {\n border: 1px solid var(--ic-architectural-300);\n border-radius: var(--ic-border-radius);\n box-sizing: border-box;\n padding: var(--ic-space-md);\n text-align: left;\n color: var(--ic-architechtural-black);\n transition: var(--ic-easing-transition-fast);\n}\n\n.dark.card,\n.dark.card.clickable {\n border: 1px solid var(--ic-architectural-700);\n}\n\n.card.clickable:hover {\n background-color: var(--ic-action-default-bg-hover);\n border-color: var(--ic-action-default-hover);\n cursor: pointer;\n}\n\n.card.clickable:focus,\n.card.clickable.focussed {\n background-color: var(--ic-action-default-bg-hover);\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n}\n\n.card.clickable:active {\n background-color: var(--ic-action-default-bg-active);\n box-shadow: var(--ic-border-focus);\n}\n\n.card.disabled {\n border: var(--ic-border-disabled);\n}\n\n.card.fullwidth,\n:host([full-width=\"true\"]) {\n width: 100%;\n}\n\n.card-header {\n display: flex;\n align-items: center;\n}\n\n.icon {\n display: flex;\n align-items: center;\n padding-right: var(--ic-space-xs);\n}\n\n.card.disabled ::slotted(svg) {\n fill: var(--ic-color-tertiary-text);\n}\n\n.card.clickable .card-title {\n color: var(--ic-hyperlink);\n text-decoration: underline;\n text-decoration-thickness: 1px;\n}\n\n.card.clickable:hover .card-title,\n.card.clickable:focus .card-title,\n.card.clickable.focussed .card-title {\n text-decoration-thickness: 25%;\n text-underline-offset: 25%;\n}\n\n.card.clickable:active .card-title {\n text-decoration: none;\n}\n\n.card.disabled .card-title {\n text-decoration: underline;\n text-decoration-thickness: 1px;\n text-decoration-color: var(--ic-color-tertiary-text);\n color: var(--ic-color-tertiary-text);\n}\n\n.subheading {\n margin-top: var(--ic-space-xxs);\n}\n\n.adornment {\n margin-top: var(--ic-space-xxs);\n}\n\n.card-message {\n margin-top: var(--ic-space-md);\n align-items: left;\n}\n\n.card.disabled .card-message,\n.card.disabled .subheading {\n color: var(--ic-color-tertiary-text);\n}\n\n.interaction-button {\n margin-left: auto;\n}\n\n.image-top {\n margin-bottom: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.image-mid {\n margin-top: var(--ic-space-md);\n display: flex;\n justify-content: center;\n}\n\n.interaction-controls {\n margin-top: var(--ic-space-md);\n display: flex;\n align-items: center;\n}\n\n.toggle-button {\n margin-left: auto;\n}\n\n.toggle-button-closed svg {\n transform: rotate(90deg);\n}\n\n.toggle-button-expanded svg {\n transform: rotate(-90deg);\n}\n\n.expanded-content {\n margin-top: var(--ic-space-md);\n}\n","import { Component, Element, Listen, Prop, State, h } from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n getThemeFromContext,\n} from \"../../utils/helpers\";\nimport {\n IcTheme,\n IcThemeForeground,\n IcThemeForegroundEnum,\n} from \"../../utils/types\";\nimport chevronIcon from \"../../assets/chevron-icon.svg\";\n\n/**\n * @slot heading - Content will be placed at the top of the card to the right of the icon.\n * @slot message - Content will be placed in the main body of the card.\n * @slot subheading - Content will be placed below the card heading.\n * @slot adornment - Content will be placed below the card subheading.\n * @slot image-top - Content will be placed at the top of the card above all other content.\n * @slot image-mid - Content will be placed below the card heading section.\n * @slot icon - Content will be placed to the left of the card heading.\n * @slot interaction-button - Content will be placed in the top right corner of the heading section.\n * @slot interaction-controls - Content will be placed below the card message.\n * @slot expanded-content - Content will be placed below the interaction controls but will not initially be rendered.\n */\n@Component({\n tag: \"ic-card\",\n styleUrl: \"ic-card.css\",\n shadow: true,\n})\nexport class Card {\n @Element() el: HTMLIcCardElement;\n\n /**\n * If `true`, the card will be a clickable variant, instead of static.\n */\n @Prop({ mutable: true }) clickable?: boolean = false;\n /**\n * The URL that the clickable card link points to. If set, the clickable card will render as an \"a\" tag, otherwise it will render as a button.\n */\n @Prop() href?: string | undefined;\n /**\n * The human language of the linked URL.\n */\n @Prop() hreflang?: string = \"\";\n /**\n * How much of the referrer to send when following the link.\n */\n @Prop() referrerpolicy?: ReferrerPolicy;\n /**\n * The relationship of the linked URL as space-separated link types.\n */\n @Prop() rel?: string;\n /**\n * The place to display the linked URL, as the name for a browsing context (a tab, window, or iframe).\n */\n @Prop() target?: string;\n /**\n * The heading for the card.\n */\n @Prop() heading!: string;\n /**\n * The subheading for the card.\n */\n @Prop() subheading?: string;\n /**\n * The main body message of the card.\n */\n @Prop() message?: string = \"\";\n /**\n * If `true`, the card will be disabled if it is clickable.\n */\n @Prop() disabled?: boolean = false;\n /**\n * If `true`, the card will fill the width of the container.\n */\n @Prop() fullWidth?: boolean = false;\n /**\n * If `true`, the card will have an expandable area and expansion toggle button.\n */\n @Prop() expandable?: boolean = false;\n\n @State() parentIsAnchorTag: boolean = false;\n\n @State() isFocussed: boolean = false;\n\n @State() parentEl: HTMLElement | null = null;\n\n @State() appearance?: IcThemeForeground = \"default\";\n\n @State() areaExpanded: boolean = false;\n\n @Listen(\"click\", { capture: true })\n handleHostClick(event: Event): void {\n if (this.disabled) {\n event.stopImmediatePropagation();\n }\n }\n\n @Listen(\"themeChange\", { target: \"document\" })\n themeChangeHandler(ev: CustomEvent): void {\n const theme: IcTheme = ev.detail;\n this.updateTheme(theme.mode);\n }\n\n private parentFocussed = (): void => {\n this.isFocussed = true;\n };\n\n private parentBlurred = (): void => {\n this.isFocussed = false;\n };\n\n private updateTheme(newTheme: IcThemeForeground = null): void {\n const foregroundColor = getThemeFromContext(this.el, newTheme || null);\n\n if (foregroundColor !== IcThemeForegroundEnum.Default) {\n this.appearance = foregroundColor;\n }\n }\n\n private toggleExpanded = (): void => {\n this.areaExpanded = !this.areaExpanded;\n };\n\n componentWillLoad(): void {\n this.parentEl = this.el.parentElement;\n\n if (this.parentEl.tagName === \"A\") {\n this.clickable = true;\n this.parentIsAnchorTag = true;\n this.parentEl.classList.add(\"ic-card-wrapper-link\");\n this.parentEl.addEventListener(\"focus\", this.parentFocussed);\n this.parentEl.addEventListener(\"blur\", this.parentBlurred);\n }\n }\n\n disconnectedCallback(): void {\n if (this.parentIsAnchorTag) {\n this.parentEl.removeEventListener(\"focus\", this.parentFocussed);\n this.parentEl.removeEventListener(\"blur\", this.parentBlurred);\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.heading, propName: \"heading\" }],\n \"Card\"\n );\n this.updateTheme();\n }\n\n render() {\n const {\n clickable,\n disabled,\n expandable,\n heading,\n message,\n href,\n hreflang,\n referrerpolicy,\n rel,\n subheading,\n target,\n fullWidth,\n parentIsAnchorTag,\n isFocussed,\n } = this;\n\n const Component = parentIsAnchorTag\n ? \"div\"\n : clickable\n ? this.href === undefined\n ? \"button\"\n : \"a\"\n : \"div\";\n\n const attrs = Component == \"a\" && {\n href: href,\n hrefLang: hreflang,\n referrerPolicy: referrerpolicy,\n rel: rel,\n target: target,\n };\n\n return (\n <Component\n class={{\n [\"card\"]: true,\n [\"clickable\"]: clickable && !disabled,\n [\"disabled\"]: disabled,\n [\"fullwidth\"]: fullWidth,\n [\"focussed\"]: isFocussed,\n [\"dark\"]: this.appearance === IcThemeForegroundEnum.Dark,\n }}\n tabindex={clickable && !parentIsAnchorTag ? 0 : null}\n aria-disabled={disabled ? \"true\" : null}\n disabled={disabled ? true : null}\n {...attrs}\n >\n {isSlotUsed(this.el, \"image-top\") && (\n <div class=\"image-top\">\n <slot name=\"image-top\"></slot>\n </div>\n )}\n <div class=\"card-header\">\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <div class=\"card-title\">\n <slot name=\"heading\">\n <ic-typography variant=\"h4\">\n <p>{heading}</p>\n </ic-typography>\n </slot>\n </div>\n {isSlotUsed(this.el, \"interaction-button\") && (\n <div class=\"interaction-button\">\n <slot name=\"interaction-button\"></slot>\n </div>\n )}\n </div>\n {(subheading || isSlotUsed(this.el, \"subheading\")) && (\n <div class=\"subheading\">\n <slot name=\"subheading\">\n <ic-typography variant=\"subtitle-small\">\n {subheading}\n </ic-typography>\n </slot>\n </div>\n )}\n {isSlotUsed(this.el, \"adornment\") && (\n <div class=\"adornment\">\n <slot name=\"adornment\"></slot>\n </div>\n )}\n {isSlotUsed(this.el, \"image-mid\") && (\n <div class=\"image-mid\">\n <slot name=\"image-mid\"></slot>\n </div>\n )}\n {(message || isSlotUsed(this.el, \"message\")) && (\n <div\n class={{\n [\"card-message\"]: true,\n }}\n >\n <slot name=\"message\">\n <ic-typography variant=\"body\">{message}</ic-typography>\n </slot>\n </div>\n )}\n {(isSlotUsed(this.el, \"interaction-controls\") || expandable) && (\n <div class=\"interaction-controls\">\n <slot name=\"interaction-controls\"></slot>\n {expandable && (\n <ic-button\n class={{\n [\"toggle-button\"]: true,\n [\"toggle-button-closed\"]: !this.areaExpanded,\n [\"toggle-button-expanded\"]: this.areaExpanded,\n }}\n variant=\"icon\"\n disableTooltip\n aria-label=\"Toggle expandable area\"\n aria-expanded={this.areaExpanded}\n aria-controls=\"expanded-content-area\"\n onClick={this.toggleExpanded}\n innerHTML={chevronIcon}\n ></ic-button>\n )}\n </div>\n )}\n {isSlotUsed(this.el, \"expanded-content\") && this.areaExpanded && (\n <div class=\"expanded-content\" id=\"expanded-content-area\">\n <slot name=\"expanded-content\"></slot>\n </div>\n )}\n </Component>\n );\n }\n}\n"],"version":3}
@@ -17,8 +17,10 @@ const Chip = class {
17
17
  constructor(hostRef) {
18
18
  index.registerInstance(this, hostRef);
19
19
  this.dismiss = index.createEvent(this, "dismiss", 7);
20
+ this.icDismiss = index.createEvent(this, "icDismiss", 7);
20
21
  this.dismissAction = () => {
21
22
  this.dismiss.emit();
23
+ this.icDismiss.emit();
22
24
  };
23
25
  this.mouseEnterHandler = () => {
24
26
  this.isHovered = true;
@@ -1 +1 @@
1
- {"file":"ic-chip.entry.cjs.js","mappings":";;;;;;;;;;;;;AAAA,MAAM,SAAS,GAAG,o7IAAo7I;;MCyBz7I,IAAI;;;;IAqCP,kBAAa,GAAG;MACtB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KACrB,CAAC;IAEM,sBAAiB,GAAG;MAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;KACvB,CAAC;IAEM,sBAAiB,GAAG;MAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB,CAAC;;sBArCsC,QAAQ;gBAInB,SAAS;uBAIN,KAAK;oBAIR,KAAK;mBAEN,IAAI;qBAEF,KAAK;;EAGnC,WAAW;IACT,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;GAC9B;EAkBD,gBAAgB;;IACd,IAAI,CAAC,WAAW;OACd,MAAA,IAAI,CAAC,EAAE,CAAC,UAAU;SACf,aAAa,CAAC,uBAAuB,CAAC,0CACrC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA,CAAC;IAC1CA,wCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACzC,MAAM,CACP,CAAC;GACH;EAED,MAAM;IACJ,MAAM,EACJ,KAAK,EACL,UAAU,EACV,IAAI,EACJ,WAAW,EACX,OAAO,EACP,QAAQ,EACR,SAAS,GACV,GAAG,IAAI,CAAC;IAET,QACE,OAAO,KACLC,iBACE,KAAK,EAAE;QACL,CAAC,MAAM,GAAG,IAAI;QACd,CAAC,GAAG,UAAU,EAAE,GAAG,IAAI;QACvB,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI;QACjB,CAAC,UAAU,GAAG,QAAQ;QACtB,CAAC,aAAa,GAAG,WAAW;QAC5B,CAAC,SAAS,GAAG,SAAS;OACvB,IAEAC,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,KAC1BD,iBAAK,KAAK,EAAC,MAAM,IACfA,kBAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACP,EACDA,2BACE,OAAO,EAAC,OAAO,4BACS,KAAK,EAC7B,KAAK,EAAC,OAAO,IAEbA,sBAAO,KAAK,CAAQ,CACN,EACf,WAAW,KACVA,wBACE,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,cAAc,EACrB,KAAK,EAAE,EAAE,CAAC,kBAAkB,GAAG,QAAQ,EAAE,IAEzCA,oBACE,EAAE,EAAC,cAAc,EACjB,KAAK,EAAE;QACL,CAAC,cAAc,GAAG,IAAI;OACvB,gBACW,WAAW,KAAK,OAAO,EACnC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,EAC3B,OAAO,EAAE,IAAI,CAAC,aAAa,EAC3B,YAAY,EAAE,IAAI,CAAC,iBAAiB,EACpC,YAAY,EAAE,IAAI,CAAC,iBAAiB,EACpC,SAAS,EAAE,WAAW,GACd,CACC,CACd,CACG,CACP,EACD;GACH;;;;;;;","names":["onComponentRequiredPropUndefined","h","isSlotUsed"],"sources":["./src/components/ic-chip/ic-chip.css?tag=ic-chip&encapsulation=shadow","./src/components/ic-chip/ic-chip.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: inline-block;\n}\n\n.chip {\n display: flex;\n padding: var(--ic-space-xxs);\n font-size: 14px;\n border-radius: 80px;\n text-align: center;\n align-items: center;\n text-decoration: none;\n transition: var(--ic-easing-transition-fast);\n position: relative;\n}\n\n.chip.small {\n padding: var(--ic-space-xxxs);\n}\n\n.chip.large {\n padding: var(--ic-space-xs);\n}\n\n.label {\n padding: 0 var(--ic-space-xs);\n}\n\n.chip.hovered:not(:focus-within) {\n background-color: var(--ic-architectural-300);\n}\n\n.chip:focus-within {\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n z-index: 1;\n}\n\n.chip.outline.hovered:not(:focus-within) {\n background-color: var(--ic-action-dark-bg-hover);\n}\n\nic-tooltip:focus-within {\n z-index: 1;\n}\n\n.filled {\n background-color: var(--ic-architectural-200);\n color: black;\n border: none;\n}\n\n.filled.disabled {\n background-color: var(--ic-architectural-100);\n}\n\n.outline {\n color: var(--ic-architectural-900);\n border: 1px solid var(--ic-architectural-900);\n padding: calc(var(--ic-space-xxs) - 1px);\n}\n\n.outline.small {\n padding: calc(var(--ic-space-xxxs) - 1px);\n}\n\n.outline.large {\n padding: calc(var(--ic-space-xs) - 1px);\n}\n\n.outline.disabled {\n border: var(--ic-border-disabled);\n background: none;\n}\n\n.chip.disabled ic-typography {\n color: var(--ic-architectural-200);\n}\n\n.dismiss-icon {\n border: none;\n border-radius: 50%;\n padding: 0;\n background: none;\n cursor: pointer;\n margin: var(--ic-space-xxxs);\n height: 20px;\n}\n\n.dismiss-icon:focus {\n outline: var(--ic-hc-focus-outline);\n}\n\n.dismiss-icon[disabled] {\n pointer-events: none;\n color: var(--ic-architectural-200);\n}\n\n.icon {\n padding: var(--ic-space-xxxs);\n box-sizing: border-box;\n}\n\n.icon,\nic-tooltip {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n.chip.disabled path,\n.chip.disabled ::slotted(svg) {\n fill: var(--ic-architectural-200);\n}\n\n@media (forced-colors: active) {\n .chip {\n border: var(--ic-hc-border);\n }\n\n .filled.small {\n padding: calc(var(--ic-space-xxxs) - 1px);\n }\n\n .filled {\n padding: calc(var(--ic-space-xxxs) + 1px);\n }\n\n .filled.large {\n padding: calc(var(--ic-space-xs) - 1px);\n }\n\n .chip.disabled {\n appearance: none;\n border-color: GrayText;\n }\n\n .chip.disabled ic-typography {\n color: GrayText;\n }\n\n .chip.disabled path,\n .chip.disabled ::slotted(svg) {\n fill: GrayText;\n }\n\n .chip:focus-within {\n outline: none;\n border-color: Highlight;\n }\n}\n","import {\n Component,\n h,\n Prop,\n State,\n Listen,\n Event,\n EventEmitter,\n Element,\n} from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport { IcChipAppearance, IcChipSizes } from \"./ic-chip.types\";\nimport dismissIcon from \"../../assets/dismiss-icon.svg\";\n\n/**\n * @slot icon - Content will be rendered at the start of the chip.\n */\n@Component({\n tag: \"ic-chip\",\n styleUrl: \"ic-chip.css\",\n shadow: true,\n})\nexport class Chip {\n @Element() el: HTMLIcChipElement;\n\n /**\n * The text rendered within the chip.\n */\n @Prop() label!: string;\n /**\n * The emphasis of the chip.\n */\n @Prop() appearance?: IcChipAppearance = \"filled\";\n /**\n * The size of the chip.\n */\n @Prop() size?: IcChipSizes = \"default\";\n /**\n * If `true`, the chip will have a close button at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n /**\n * If `true`, the chip will appear disabled.\n */\n @Prop() disabled?: boolean = false;\n\n @State() visible: boolean = true;\n\n @State() isHovered: boolean = false;\n\n @Listen(\"dismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n /**\n * Is emitted when the user dismisses the chip.\n */\n @Event() dismiss: EventEmitter<void>;\n\n private dismissAction = (): void => {\n this.dismiss.emit();\n };\n\n private mouseEnterHandler = (): void => {\n this.isHovered = true;\n };\n\n private mouseLeaveHandler = (): void => {\n this.isHovered = false;\n };\n\n componentDidLoad(): void {\n this.dismissible &&\n this.el.shadowRoot\n .querySelector(\"span.ic-tooltip-label\")\n ?.setAttribute(\"aria-hidden\", \"true\");\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Chip\"\n );\n }\n\n render() {\n const {\n label,\n appearance,\n size,\n dismissible,\n visible,\n disabled,\n isHovered,\n } = this;\n\n return (\n visible && (\n <div\n class={{\n [\"chip\"]: true,\n [`${appearance}`]: true,\n [`${size}`]: true,\n [\"disabled\"]: disabled,\n [\"dismissible\"]: dismissible,\n [\"hovered\"]: isHovered,\n }}\n >\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography\n variant=\"label\"\n apply-vertical-margins={false}\n class=\"label\"\n >\n <span>{label}</span>\n </ic-typography>\n {dismissible && (\n <ic-tooltip\n label=\"Dismiss\"\n target=\"dismiss-icon\"\n class={{ [\"tooltip-disabled\"]: disabled }}\n >\n <button\n id=\"dismiss-icon\"\n class={{\n [\"dismiss-icon\"]: true,\n }}\n aria-label={`Dismiss ${label} chip`}\n disabled={disabled}\n tabindex={disabled ? -1 : 0}\n onClick={this.dismissAction}\n onMouseEnter={this.mouseEnterHandler}\n onMouseLeave={this.mouseLeaveHandler}\n innerHTML={dismissIcon}\n ></button>\n </ic-tooltip>\n )}\n </div>\n )\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-chip.entry.cjs.js","mappings":";;;;;;;;;;;;;AAAA,MAAM,SAAS,GAAG,o7IAAo7I;;MCyBz7I,IAAI;;;;;IA2CP,kBAAa,GAAG;MACtB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;MACpB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;KACvB,CAAC;IAEM,sBAAiB,GAAG;MAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;KACvB,CAAC;IAEM,sBAAiB,GAAG;MAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB,CAAC;;sBA5CsC,QAAQ;gBAInB,SAAS;uBAIN,KAAK;oBAIR,KAAK;mBAEN,IAAI;qBAEF,KAAK;;EAGnC,WAAW;IACT,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;GAC9B;EAyBD,gBAAgB;;IACd,IAAI,CAAC,WAAW;OACd,MAAA,IAAI,CAAC,EAAE,CAAC,UAAU;SACf,aAAa,CAAC,uBAAuB,CAAC,0CACrC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA,CAAC;IAC1CA,wCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACzC,MAAM,CACP,CAAC;GACH;EAED,MAAM;IACJ,MAAM,EACJ,KAAK,EACL,UAAU,EACV,IAAI,EACJ,WAAW,EACX,OAAO,EACP,QAAQ,EACR,SAAS,GACV,GAAG,IAAI,CAAC;IAET,QACE,OAAO,KACLC,iBACE,KAAK,EAAE;QACL,CAAC,MAAM,GAAG,IAAI;QACd,CAAC,GAAG,UAAU,EAAE,GAAG,IAAI;QACvB,CAAC,GAAG,IAAI,EAAE,GAAG,IAAI;QACjB,CAAC,UAAU,GAAG,QAAQ;QACtB,CAAC,aAAa,GAAG,WAAW;QAC5B,CAAC,SAAS,GAAG,SAAS;OACvB,IAEAC,kBAAU,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,KAC1BD,iBAAK,KAAK,EAAC,MAAM,IACfA,kBAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACP,EACDA,2BACE,OAAO,EAAC,OAAO,4BACS,KAAK,EAC7B,KAAK,EAAC,OAAO,IAEbA,sBAAO,KAAK,CAAQ,CACN,EACf,WAAW,KACVA,wBACE,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,cAAc,EACrB,KAAK,EAAE,EAAE,CAAC,kBAAkB,GAAG,QAAQ,EAAE,IAEzCA,oBACE,EAAE,EAAC,cAAc,EACjB,KAAK,EAAE;QACL,CAAC,cAAc,GAAG,IAAI;OACvB,gBACW,WAAW,KAAK,OAAO,EACnC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,EAC3B,OAAO,EAAE,IAAI,CAAC,aAAa,EAC3B,YAAY,EAAE,IAAI,CAAC,iBAAiB,EACpC,YAAY,EAAE,IAAI,CAAC,iBAAiB,EACpC,SAAS,EAAE,WAAW,GACd,CACC,CACd,CACG,CACP,EACD;GACH;;;;;;;","names":["onComponentRequiredPropUndefined","h","isSlotUsed"],"sources":["./src/components/ic-chip/ic-chip.css?tag=ic-chip&encapsulation=shadow","./src/components/ic-chip/ic-chip.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: inline-block;\n}\n\n.chip {\n display: flex;\n padding: var(--ic-space-xxs);\n font-size: 14px;\n border-radius: 80px;\n text-align: center;\n align-items: center;\n text-decoration: none;\n transition: var(--ic-easing-transition-fast);\n position: relative;\n}\n\n.chip.small {\n padding: var(--ic-space-xxxs);\n}\n\n.chip.large {\n padding: var(--ic-space-xs);\n}\n\n.label {\n padding: 0 var(--ic-space-xs);\n}\n\n.chip.hovered:not(:focus-within) {\n background-color: var(--ic-architectural-300);\n}\n\n.chip:focus-within {\n box-shadow: var(--ic-border-focus);\n outline: var(--ic-hc-focus-outline);\n z-index: 1;\n}\n\n.chip.outline.hovered:not(:focus-within) {\n background-color: var(--ic-action-dark-bg-hover);\n}\n\nic-tooltip:focus-within {\n z-index: 1;\n}\n\n.filled {\n background-color: var(--ic-architectural-200);\n color: black;\n border: none;\n}\n\n.filled.disabled {\n background-color: var(--ic-architectural-100);\n}\n\n.outline {\n color: var(--ic-architectural-900);\n border: 1px solid var(--ic-architectural-900);\n padding: calc(var(--ic-space-xxs) - 1px);\n}\n\n.outline.small {\n padding: calc(var(--ic-space-xxxs) - 1px);\n}\n\n.outline.large {\n padding: calc(var(--ic-space-xs) - 1px);\n}\n\n.outline.disabled {\n border: var(--ic-border-disabled);\n background: none;\n}\n\n.chip.disabled ic-typography {\n color: var(--ic-architectural-200);\n}\n\n.dismiss-icon {\n border: none;\n border-radius: 50%;\n padding: 0;\n background: none;\n cursor: pointer;\n margin: var(--ic-space-xxxs);\n height: 20px;\n}\n\n.dismiss-icon:focus {\n outline: var(--ic-hc-focus-outline);\n}\n\n.dismiss-icon[disabled] {\n pointer-events: none;\n color: var(--ic-architectural-200);\n}\n\n.icon {\n padding: var(--ic-space-xxxs);\n box-sizing: border-box;\n}\n\n.icon,\nic-tooltip {\n width: var(--ic-space-lg);\n height: var(--ic-space-lg);\n}\n\n.chip.disabled path,\n.chip.disabled ::slotted(svg) {\n fill: var(--ic-architectural-200);\n}\n\n@media (forced-colors: active) {\n .chip {\n border: var(--ic-hc-border);\n }\n\n .filled.small {\n padding: calc(var(--ic-space-xxxs) - 1px);\n }\n\n .filled {\n padding: calc(var(--ic-space-xxxs) + 1px);\n }\n\n .filled.large {\n padding: calc(var(--ic-space-xs) - 1px);\n }\n\n .chip.disabled {\n appearance: none;\n border-color: GrayText;\n }\n\n .chip.disabled ic-typography {\n color: GrayText;\n }\n\n .chip.disabled path,\n .chip.disabled ::slotted(svg) {\n fill: GrayText;\n }\n\n .chip:focus-within {\n outline: none;\n border-color: Highlight;\n }\n}\n","import {\n Component,\n h,\n Prop,\n State,\n Listen,\n Event,\n EventEmitter,\n Element,\n} from \"@stencil/core\";\nimport {\n onComponentRequiredPropUndefined,\n isSlotUsed,\n} from \"../../utils/helpers\";\nimport { IcChipAppearance, IcChipSizes } from \"./ic-chip.types\";\nimport dismissIcon from \"../../assets/dismiss-icon.svg\";\n\n/**\n * @slot icon - Content will be rendered at the start of the chip.\n */\n@Component({\n tag: \"ic-chip\",\n styleUrl: \"ic-chip.css\",\n shadow: true,\n})\nexport class Chip {\n @Element() el: HTMLIcChipElement;\n\n /**\n * The text rendered within the chip.\n */\n @Prop() label!: string;\n /**\n * The emphasis of the chip.\n */\n @Prop() appearance?: IcChipAppearance = \"filled\";\n /**\n * The size of the chip.\n */\n @Prop() size?: IcChipSizes = \"default\";\n /**\n * If `true`, the chip will have a close button at the end to dismiss it.\n */\n @Prop() dismissible?: boolean = false;\n /**\n * If `true`, the chip will appear disabled.\n */\n @Prop() disabled?: boolean = false;\n\n @State() visible: boolean = true;\n\n @State() isHovered: boolean = false;\n\n @Listen(\"icDismiss\", { capture: true })\n handleClick(): void {\n this.visible = !this.visible;\n }\n\n /**\n * @deprecated This event should not be used anymore. Use icDismiss instead.\n */\n @Event() dismiss: EventEmitter<void>;\n\n /**\n * Is emitted when the user dismisses the chip.\n */\n @Event() icDismiss: EventEmitter<void>;\n\n private dismissAction = (): void => {\n this.dismiss.emit();\n this.icDismiss.emit();\n };\n\n private mouseEnterHandler = (): void => {\n this.isHovered = true;\n };\n\n private mouseLeaveHandler = (): void => {\n this.isHovered = false;\n };\n\n componentDidLoad(): void {\n this.dismissible &&\n this.el.shadowRoot\n .querySelector(\"span.ic-tooltip-label\")\n ?.setAttribute(\"aria-hidden\", \"true\");\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Chip\"\n );\n }\n\n render() {\n const {\n label,\n appearance,\n size,\n dismissible,\n visible,\n disabled,\n isHovered,\n } = this;\n\n return (\n visible && (\n <div\n class={{\n [\"chip\"]: true,\n [`${appearance}`]: true,\n [`${size}`]: true,\n [\"disabled\"]: disabled,\n [\"dismissible\"]: dismissible,\n [\"hovered\"]: isHovered,\n }}\n >\n {isSlotUsed(this.el, \"icon\") && (\n <div class=\"icon\">\n <slot name=\"icon\" />\n </div>\n )}\n <ic-typography\n variant=\"label\"\n apply-vertical-margins={false}\n class=\"label\"\n >\n <span>{label}</span>\n </ic-typography>\n {dismissible && (\n <ic-tooltip\n label=\"Dismiss\"\n target=\"dismiss-icon\"\n class={{ [\"tooltip-disabled\"]: disabled }}\n >\n <button\n id=\"dismiss-icon\"\n class={{\n [\"dismiss-icon\"]: true,\n }}\n aria-label={`Dismiss ${label} chip`}\n disabled={disabled}\n tabindex={disabled ? -1 : 0}\n onClick={this.dismissAction}\n onMouseEnter={this.mouseEnterHandler}\n onMouseLeave={this.mouseLeaveHandler}\n innerHTML={dismissIcon}\n ></button>\n </ic-tooltip>\n )}\n </div>\n )\n );\n }\n}\n"],"version":3}
@@ -91,9 +91,8 @@ const RadioGroup = class {
91
91
  ], "Radio Group");
92
92
  }
93
93
  render() {
94
- const hadValidationStatus = helpers.hasValidationStatus(this.validationStatus, this.disabled);
95
94
  helpers.renderHiddenInput(true, this.host, this.name, this.checkedValue, this.disabled);
96
- return (index.h(index.Host, { onKeyDown: this.handleKeyDown }, index.h("div", { role: "radiogroup", "aria-label": `${this.label}${this.required ? ", required" : ""}` }, !this.hideLabel && (index.h("ic-input-label", { class: { [`${this.validationStatus}`]: true }, label: this.label, helperText: this.helperText, required: this.required, disabled: this.disabled })), index.h("slot", null)), index.h("ic-input-validation", { ariaLiveMode: "polite", status: hadValidationStatus ? this.validationStatus : "", message: hadValidationStatus ? this.validationText : "" })));
95
+ return (index.h(index.Host, { onKeyDown: this.handleKeyDown }, index.h("div", { role: "radiogroup", "aria-label": `${this.label}${this.required ? ", required" : ""}` }, !this.hideLabel && (index.h("ic-input-label", { class: { [`${this.validationStatus}`]: true }, label: this.label, helperText: this.helperText, required: this.required, disabled: this.disabled })), index.h("slot", null)), helpers.hasValidationStatus(this.validationStatus, this.disabled) && (index.h("ic-input-validation", { ariaLiveMode: "polite", status: this.validationStatus, message: this.validationText }))));
97
96
  }
98
97
  get host() { return index.getElement(this); }
99
98
  };
@@ -1 +1 @@
1
- {"file":"ic-radio-group.entry.cjs.js","mappings":"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","names":["onComponentRequiredPropUndefined","hasValidationStatus","renderHiddenInput","h","Host"],"sources":["./src/components/ic-radio-group/ic-radio-group.css?tag=ic-radio-group&encapsulation=shadow","./src/components/ic-radio-group/ic-radio-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n}\n\nic-input-label.error {\n color: var(--ic-status-error);\n}\n\nic-input-label ic-typography {\n margin-bottom: var(--ic-space-sm);\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Listen,\n Element,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\nimport {\n hasValidationStatus,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n} from \"../../utils/helpers\";\nimport { IcInformationStatusOrEmpty } from \"../../utils/types\";\nimport { IcValueEventDetail } from \"../../interface\";\n\n@Component({\n tag: \"ic-radio-group\",\n styleUrl: \"ic-radio-group.css\",\n shadow: true,\n})\nexport class RadioGroup {\n private radioOptions: HTMLIcRadioOptionElement[];\n\n @Element() host: HTMLIcRadioGroupElement;\n\n /**\n * The label for the radio group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the radio group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n /**\n * If `true`, the radio group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: string;\n\n /**\n * If `true`, the small styling will be applied to the radio group.\n */\n @Prop() small: boolean = false;\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n /**\n * The validation text - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText: string = \"\";\n /**\n * The checked state.\n */\n @State() checkedValue: string = \"\";\n @State() selectedChild: number = -1;\n\n /**\n * Emitted when a user selects a radio.\n */\n @Event() icChange: EventEmitter<IcValueEventDetail>;\n\n @Listen(\"icCheck\")\n selectHandler(event: CustomEvent<IcValueEventDetail>): void {\n this.checkedValue = event.detail.value;\n this.icChange.emit({ value: this.checkedValue });\n\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = this.checkedValue === radioOption.value;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.radioOptions[0].shadowRoot.querySelector(\"input\").tabIndex =\n this.selectedChild > 0 ? -1 : 0;\n }\n }\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, true)\n ].selected = true;\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, false)\n ].selected = true;\n event.preventDefault();\n }\n };\n\n private getNextItemToSelect = (\n currentItem: number,\n movingDown: boolean\n ): number => {\n const numRadios = this.radioOptions.length - 1;\n\n if (currentItem < 1) {\n currentItem = 0;\n }\n\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n } else if (nextItem > numRadios) {\n nextItem = 0;\n }\n\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n\n return nextItem;\n };\n\n componentDidLoad(): void {\n this.radioOptions = Array.from(\n this.host.querySelectorAll(\"ic-radio-option\")\n );\n\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n });\n this.radioOptions[0].shadowRoot.querySelector(\"input\").tabIndex =\n this.selectedChild > 0 ? -1 : 0;\n\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Radio Group\"\n );\n }\n\n render() {\n const hadValidationStatus = hasValidationStatus(\n this.validationStatus,\n this.disabled\n );\n\n renderHiddenInput(\n true,\n this.host,\n this.name,\n this.checkedValue,\n this.disabled\n );\n\n return (\n <Host onKeyDown={this.handleKeyDown}>\n <div\n role=\"radiogroup\"\n aria-label={`${this.label}${this.required ? \", required\" : \"\"}`}\n >\n {!this.hideLabel && (\n <ic-input-label\n class={{ [`${this.validationStatus}`]: true }}\n label={this.label}\n helperText={this.helperText}\n required={this.required}\n disabled={this.disabled}\n ></ic-input-label>\n )}\n <slot></slot>\n </div>\n <ic-input-validation\n ariaLiveMode=\"polite\"\n status={hadValidationStatus ? this.validationStatus : \"\"}\n message={hadValidationStatus ? this.validationText : \"\"}\n ></ic-input-validation>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-radio-group.entry.cjs.js","mappings":"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","names":["onComponentRequiredPropUndefined","renderHiddenInput","h","Host","hasValidationStatus"],"sources":["./src/components/ic-radio-group/ic-radio-group.css?tag=ic-radio-group&encapsulation=shadow","./src/components/ic-radio-group/ic-radio-group.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n:host {\n display: block;\n}\n\nic-input-label.error {\n color: var(--ic-status-error);\n}\n\nic-input-label ic-typography {\n margin-bottom: var(--ic-space-sm);\n}\n","import {\n Component,\n Host,\n h,\n Prop,\n State,\n Listen,\n Element,\n Event,\n EventEmitter,\n} from \"@stencil/core\";\nimport {\n hasValidationStatus,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n} from \"../../utils/helpers\";\nimport { IcInformationStatusOrEmpty } from \"../../utils/types\";\nimport { IcValueEventDetail } from \"../../interface\";\n\n@Component({\n tag: \"ic-radio-group\",\n styleUrl: \"ic-radio-group.css\",\n shadow: true,\n})\nexport class RadioGroup {\n private radioOptions: HTMLIcRadioOptionElement[];\n\n @Element() host: HTMLIcRadioGroupElement;\n\n /**\n * The label for the radio group to be displayed.\n */\n @Prop() label!: string;\n\n /**\n * The name for the radio group to differentiate from other groups.\n */\n @Prop() name!: string;\n\n /**\n * If `true`, the radio group will require a value.\n */\n @Prop() required: boolean = false;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel: boolean = false;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText: string;\n\n /**\n * If `true`, the small styling will be applied to the radio group.\n */\n @Prop() small: boolean = false;\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus: IcInformationStatusOrEmpty = \"\";\n /**\n * The validation text - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationText: string = \"\";\n /**\n * The checked state.\n */\n @State() checkedValue: string = \"\";\n @State() selectedChild: number = -1;\n\n /**\n * Emitted when a user selects a radio.\n */\n @Event() icChange: EventEmitter<IcValueEventDetail>;\n\n @Listen(\"icCheck\")\n selectHandler(event: CustomEvent<IcValueEventDetail>): void {\n this.checkedValue = event.detail.value;\n this.icChange.emit({ value: this.checkedValue });\n\n if (this.radioOptions !== undefined) {\n this.radioOptions.forEach((radioOption, index) => {\n radioOption.selected = this.checkedValue === radioOption.value;\n if (radioOption.selected) {\n this.selectedChild = index;\n }\n });\n this.radioOptions[0].shadowRoot.querySelector(\"input\").tabIndex =\n this.selectedChild > 0 ? -1 : 0;\n }\n }\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n switch (event.key) {\n case \"ArrowDown\":\n case \"ArrowRight\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, true)\n ].selected = true;\n event.preventDefault();\n break;\n case \"ArrowUp\":\n case \"ArrowLeft\":\n this.radioOptions[\n this.getNextItemToSelect(this.selectedChild, false)\n ].selected = true;\n event.preventDefault();\n }\n };\n\n private getNextItemToSelect = (\n currentItem: number,\n movingDown: boolean\n ): number => {\n const numRadios = this.radioOptions.length - 1;\n\n if (currentItem < 1) {\n currentItem = 0;\n }\n\n let nextItem = movingDown ? currentItem + 1 : currentItem - 1;\n\n //check if wrap around necessary\n if (nextItem < 0) {\n nextItem = numRadios;\n } else if (nextItem > numRadios) {\n nextItem = 0;\n }\n\n //if next item is disabled then find next\n if (this.radioOptions[nextItem].disabled) {\n nextItem = this.getNextItemToSelect(nextItem, movingDown);\n }\n\n return nextItem;\n };\n\n componentDidLoad(): void {\n this.radioOptions = Array.from(\n this.host.querySelectorAll(\"ic-radio-option\")\n );\n\n this.radioOptions.forEach((radioOption, index) => {\n if (!radioOption.selected) {\n radioOption.selected = this.checkedValue === radioOption.value;\n }\n radioOption.name = this.name;\n radioOption.groupLabel = this.label;\n if (radioOption.selected) {\n this.selectedChild = index;\n this.checkedValue = radioOption.value;\n }\n });\n this.radioOptions[0].shadowRoot.querySelector(\"input\").tabIndex =\n this.selectedChild > 0 ? -1 : 0;\n\n onComponentRequiredPropUndefined(\n [\n { prop: this.label, propName: \"label\" },\n { prop: this.name, propName: \"name\" },\n ],\n \"Radio Group\"\n );\n }\n\n render() {\n renderHiddenInput(\n true,\n this.host,\n this.name,\n this.checkedValue,\n this.disabled\n );\n\n return (\n <Host onKeyDown={this.handleKeyDown}>\n <div\n role=\"radiogroup\"\n aria-label={`${this.label}${this.required ? \", required\" : \"\"}`}\n >\n {!this.hideLabel && (\n <ic-input-label\n class={{ [`${this.validationStatus}`]: true }}\n label={this.label}\n helperText={this.helperText}\n required={this.required}\n disabled={this.disabled}\n ></ic-input-label>\n )}\n <slot></slot>\n </div>\n {hasValidationStatus(this.validationStatus, this.disabled) && (\n <ic-input-validation\n ariaLiveMode=\"polite\"\n status={this.validationStatus}\n message={this.validationText}\n ></ic-input-validation>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -16,7 +16,7 @@ const Clear = `<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www
16
16
  </svg>
17
17
  `;
18
18
 
19
- const icSelectCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}ic-input-component-container:hover{--border-color:var(--ic-action-dark-hover)}ic-input-component-container:active{--border-color:var(--ic-action-dark-active);color:var(--ic-action-dark-active)}ic-input-component-container.menu-open{--border-color:var(--ic-architectural-400);color:var(--ic-action-dark)}ic-input-validation .status-icon,ic-input-validation .statustext{visibility:visible}ic-input-validation.menu-open .status-icon,ic-input-validation.menu-open .statustext{visibility:hidden;transition:visibility 0s}ic-input-label{margin-bottom:var(--ic-space-xs) !important}select{border:0;border-radius:var(--ic-border-radius);background-color:var(--ic-architectural-white);color:var(--ic-color-primary-text);line-height:1.5rem;letter-spacing:0.005rem;width:100%;height:100%;padding-left:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat;background-position:right 6px center;background-image:url(\"data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\")}select option,.select-option-selected{color:var(--ic-color-primary-text)}select:disabled{color:var(--ic-architectural-200);background-image:url(\"data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\")}select:focus{border:0;outline:0}select:not([disabled]){cursor:pointer}.select-container{width:100%;display:flex;align-items:center}.select-input{width:100%;height:100%;padding:0 6px;display:flex;cursor:pointer;align-items:center;justify-content:space-between;background:none;border:none}.select-input:focus{outline:var(--ic-hc-focus-outline)}:host(:not([disabled])) ic-input-component-container:hover .select-input{background-color:var(--ic-architectural-white)}:host([disabled]) .select-input{pointer-events:none}:host([searchable]) .select-input{cursor:auto}.searchable-select-container{align-items:center;display:flex;width:100%}.expand-icon{height:var(--ic-space-lg);padding-left:var(--ic-space-xs);color:var(--ic-action-dark)}:host([disabled]) .expand-icon,:host([disabled]) .expand-icon>svg>path{color:var(--ic-architectural-200)}:host([searchable]) .expand-icon{padding-left:var(--ic-space-xxs);height:36px}:host([searchable]) .expand-icon>svg{height:36px;padding:0 6px}:host([searchable]:not([disabled])) .expand-icon>svg{cursor:pointer}.expand-icon-open{color:var(--ic-action-dark)}.expand-icon-filled{color:var(--ic-action-dark)}.expand-icon-open,:host([searchable]) .expand-icon-open{transform:rotateX(180deg)}:host([disabled]) .value-text,.placeholder{color:var(--ic-color-tertiary-text)}.select-input-end{display:flex;align-items:center}.clear-button-container{display:flex;gap:var(--ic-space-xxs);padding-left:38px}:host([small]) .clear-button-container{padding-left:30px}.divider{width:1px;background-color:var(--ic-architectural-400);margin:var(--ic-space-xxs) 0;border-radius:1px;height:var(--ic-space-lg)}:host([small]) .divider{height:var(--ic-space-md)}.clear-button{position:absolute;right:44px;border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}.clear-button:focus{background-color:var(--ic-focus-blue);box-shadow:inset 0 0 0 2px var(--ic-focus-glow);border-radius:4px}.clear-button:focus *{fill:white}.searchable-select-results-status{border:0;clip:rect(0, 0, 0, 0, 0);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}";
19
+ const icSelectCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=\"button\"],[type=\"reset\"],[type=\"submit\"]{-webkit-appearance:button}button::-moz-focus-inner,[type=\"button\"]::-moz-focus-inner,[type=\"reset\"]::-moz-focus-inner,[type=\"submit\"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=\"button\"]:-moz-focusring,[type=\"reset\"]:-moz-focusring,[type=\"submit\"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=\"checkbox\"],[type=\"radio\"]{box-sizing:border-box;padding:0;}[type=\"number\"]::-webkit-inner-spin-button,[type=\"number\"]::-webkit-outer-spin-button{height:auto}[type=\"search\"]{-webkit-appearance:textfield;outline-offset:-2px;}[type=\"search\"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host{width:100%}ic-input-component-container:hover{--border-color:var(--ic-action-dark-hover)}ic-input-component-container:active{--border-color:var(--ic-action-dark-active);color:var(--ic-action-dark-active)}ic-input-component-container.menu-open{--border-color:var(--ic-architectural-400);color:var(--ic-action-dark)}ic-input-validation .status-icon,ic-input-validation .statustext{visibility:visible}ic-input-validation.menu-open .status-icon,ic-input-validation.menu-open .statustext{visibility:hidden;transition:visibility 0s}ic-input-label{margin-bottom:var(--ic-space-xs) !important}select{border:0;border-radius:var(--ic-border-radius);background-color:var(--ic-architectural-white);color:var(--ic-color-primary-text);line-height:1.5rem;letter-spacing:0.005rem;width:100%;height:100%;padding-left:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-repeat:no-repeat;background-position:right 6px center;background-image:url(\"data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\")}select option,.select-option-selected{color:var(--ic-color-primary-text)}select:disabled{color:var(--ic-architectural-200);background-image:url(\"data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\")}select:focus{border:0;outline:0}select:not([disabled]){cursor:pointer}.select-container{width:100%;display:flex;align-items:center}.select-input{width:100%;height:100%;padding:0 6px;display:flex;cursor:pointer;align-items:center;justify-content:space-between;background:none;border:none}.select-input:focus{outline:var(--ic-hc-focus-outline)}:host(:not([disabled])) ic-input-component-container:hover .select-input{background-color:var(--ic-architectural-white)}:host([disabled]) .select-input{pointer-events:none}:host([searchable]) .select-input{cursor:auto}.searchable-select-container{align-items:center;display:flex;width:100%}.expand-icon{height:var(--ic-space-lg);padding-left:var(--ic-space-xs);color:var(--ic-action-dark)}:host([disabled]) .expand-icon,:host([disabled]) .expand-icon>svg>path{color:var(--ic-architectural-200)}:host([searchable]) .expand-icon{padding-left:var(--ic-space-xxs);height:36px}:host([searchable]) .expand-icon>svg{height:36px;padding:0 6px}:host([searchable]:not([disabled])) .expand-icon>svg{cursor:pointer}.expand-icon-open{color:var(--ic-action-dark)}.expand-icon-filled{color:var(--ic-action-dark)}.expand-icon-open,:host([searchable]) .expand-icon-open{transform:rotateX(180deg)}:host([disabled]) .value-text,.placeholder{color:var(--ic-color-tertiary-text)}.select-input-end{display:flex;align-items:center}.clear-button-container{display:flex;gap:var(--ic-space-xxs);padding-left:38px}:host([small]) .clear-button-container{padding-left:30px}.divider{width:1px;background-color:var(--ic-architectural-400);margin:var(--ic-space-xxs) 0;border-radius:1px;height:var(--ic-space-lg)}:host([small]) .divider{height:var(--ic-space-md)}.clear-button{position:absolute;right:44px;border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}.clear-button:focus{background-color:var(--ic-focus-blue);box-shadow:inset 0 0 0 2px var(--ic-focus-glow);border-radius:4px}.clear-button:focus *{fill:white}.searchable-select-results-status{border:0;clip:rect(0, 0, 0, 0, 0);height:1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}";
20
20
 
21
21
  let inputIds = 0;
22
22
  const Select = class {
@@ -1 +1 @@
1
- {"file":"ic-select.entry.cjs.js","mappings":"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","names":["getLabelFromValue","getFilteredMenuOptions","inheritAttributes","IC_INHERITED_ARIA","addFormResetListener","onComponentRequiredPropUndefined","removeFormResetListener","renderHiddenInput","IcInformationStatus","getInputDescribedByText","hasValidationStatus","h","Host","isMobileOrTablet","IcThemeForegroundEnum"],"sources":["./src/components/ic-select/ic-select.css?tag=ic-select&encapsulation=shadow","./src/components/ic-select/ic-select.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --input-width: Width of the input field\n*/\n\nic-input-component-container:hover {\n --border-color: var(--ic-action-dark-hover);\n}\n\nic-input-component-container:active {\n --border-color: var(--ic-action-dark-active);\n\n color: var(--ic-action-dark-active);\n}\n\nic-input-component-container.menu-open {\n --border-color: var(--ic-architectural-400);\n\n color: var(--ic-action-dark);\n}\n\nic-input-validation .status-icon,\nic-input-validation .statustext {\n visibility: visible;\n}\n\nic-input-validation.menu-open .status-icon,\nic-input-validation.menu-open .statustext {\n visibility: hidden;\n transition: visibility 0s;\n}\n\nic-input-label {\n margin-bottom: var(--ic-space-xs) !important;\n}\n\nselect {\n border: 0;\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-architectural-white);\n color: var(--ic-color-primary-text);\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n height: 100%;\n padding-left: 6px;\n appearance: none;\n background-repeat: no-repeat;\n background-position: right 6px center;\n background-image: url(\"data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\");\n}\n\nselect option,\n.select-option-selected {\n color: var(--ic-color-primary-text);\n}\n\nselect:disabled {\n color: var(--ic-architectural-200);\n background-image: url(\"data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\");\n}\n\nselect:focus {\n border: 0;\n outline: 0;\n}\n\nselect:not([disabled]) {\n cursor: pointer;\n}\n\n.select-container {\n width: 100%;\n display: flex;\n align-items: center;\n}\n\n.select-input {\n width: 100%;\n height: 100%;\n padding: 0 6px;\n display: flex;\n cursor: pointer;\n align-items: center;\n justify-content: space-between;\n background: none;\n border: none;\n}\n\n.select-input:focus {\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(:not([disabled])) ic-input-component-container:hover .select-input {\n background-color: var(--ic-architectural-white);\n}\n\n:host([disabled]) .select-input {\n pointer-events: none;\n}\n\n:host([searchable]) .select-input {\n cursor: auto;\n}\n\n.searchable-select-container {\n align-items: center;\n display: flex;\n width: 100%;\n}\n\n.expand-icon {\n height: var(--ic-space-lg);\n padding-left: var(--ic-space-xs);\n color: var(--ic-action-dark);\n}\n\n:host([disabled]) .expand-icon,\n:host([disabled]) .expand-icon > svg > path {\n color: var(--ic-architectural-200);\n}\n\n:host([searchable]) .expand-icon {\n padding-left: var(--ic-space-xxs);\n height: 36px;\n}\n\n:host([searchable]) .expand-icon > svg {\n height: 36px;\n padding: 0 6px;\n}\n\n:host([searchable]:not([disabled])) .expand-icon > svg {\n cursor: pointer;\n}\n\n.expand-icon-open {\n color: var(--ic-action-dark);\n}\n\n.expand-icon-filled {\n color: var(--ic-action-dark);\n}\n\n.expand-icon-open,\n:host([searchable]) .expand-icon-open {\n transform: rotateX(180deg);\n}\n\n:host([disabled]) .value-text,\n.placeholder {\n color: var(--ic-color-tertiary-text);\n}\n\n.select-input-end {\n display: flex;\n align-items: center;\n}\n\n.clear-button-container {\n display: flex;\n gap: var(--ic-space-xxs);\n padding-left: 38px;\n}\n\n:host([small]) .clear-button-container {\n padding-left: 30px;\n}\n\n.divider {\n width: 1px;\n background-color: var(--ic-architectural-400);\n margin: var(--ic-space-xxs) 0;\n border-radius: 1px;\n height: var(--ic-space-lg);\n}\n\n:host([small]) .divider {\n height: var(--ic-space-md);\n}\n\n.clear-button {\n position: absolute;\n right: 44px;\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n}\n\n.clear-button:focus {\n background-color: var(--ic-focus-blue);\n box-shadow: inset 0 0 0 2px var(--ic-focus-glow);\n border-radius: 4px;\n}\n\n.clear-button:focus * {\n fill: white;\n}\n\n.searchable-select-results-status {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: 1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n h,\n State,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n getInputDescribedByText,\n getLabelFromValue,\n hasValidationStatus,\n inheritAttributes,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n isMobileOrTablet,\n getFilteredMenuOptions,\n addFormResetListener,\n removeFormResetListener,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcThemeForegroundEnum,\n IcMenuOption,\n IcSearchMatchPositions,\n} from \"../../utils/types\";\nimport Expand from \"./assets/Expand.svg\";\nimport Clear from \"./assets/Clear.svg\";\nimport { IcValueEventDetail } from \"../../interface\";\n\nlet inputIds = 0;\n\n@Component({\n tag: \"ic-select\",\n styleUrl: \"ic-select.css\",\n shadow: true,\n})\nexport class Select {\n private nativeSelectElement: HTMLSelectElement;\n private customSelectElement: HTMLButtonElement;\n private searchableSelectElement: HTMLInputElement;\n private menu: HTMLIcMenuElement;\n private anchorEl: HTMLElement;\n private clearButton: HTMLIcButtonElement;\n\n private inputId = `ic-select-input-${inputIds++}`;\n private menuId = `${this.inputId}-menu`;\n\n private inheritedAttributes: { [k: string]: unknown } = {};\n\n private debounce: number;\n\n /**\n * The label for the select.\n */\n @Prop() label!: string;\n\n /**\n * The possible selection options.\n */\n @Prop() options?: IcMenuOption[] = [];\n\n /**\n * If `true`, the select will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop({ reflect: true }) disabled?: boolean = false;\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly?: boolean = false;\n\n /**\n * The placeholder value to be displayed.\n */\n @Prop() placeholder?: string = \"Select an option\";\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the small styling will be applied to the select.\n */\n @Prop() small?: boolean = false;\n\n /**\n * If `true`, the select element will fill the width of the container.\n */\n @Prop() fullWidth: boolean = false;\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * The value of the currently selected option.\n */\n @Prop({ mutable: true }) value?: string;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select.\n */\n @Prop() showClearButton?: boolean = false;\n\n /**\n * If `true`, a searchable variant of the select will be displayed which can be typed in to filter options.\n */\n @Prop() searchable?: boolean = false;\n\n /**\n * If `true`, descriptions of options will be included when filtering options in a searchable select.\n */\n @Prop() includeDescriptionsInSearch?: boolean = false;\n\n /**\n * If `true`, group titles of grouped options will be included when filtering options in a searchable select.\n */\n @Prop() includeGroupTitlesInSearch?: boolean = false;\n\n /**\n * Whether the search string of the searchable select should match the start of or anywhere in the options.\n */\n @Prop() searchMatchPosition?: IcSearchMatchPositions = \"anywhere\";\n\n /**\n * The number of characters until suggestions appear for a searchable select.\n */\n @Prop() charactersUntilSuggestions?: number = 0;\n\n /**\n * The text displayed when there are no options in the option list.\n */\n @Prop() emptyOptionListText = \"No results found\";\n\n @State() open: boolean = false;\n\n @State() clearButtonFocused: boolean = false;\n\n @State() searchableSelectInputValue: string = null;\n\n @State() filteredOptions: IcMenuOption[] = this.options;\n\n @State() ariaActiveDescendant: string;\n\n @State() noOptions: IcMenuOption[] = null;\n\n @State() initialValue = this.value;\n\n @Watch(\"options\")\n watchOptionsHandler(): void {\n this.setOptionsValuesFromLabels();\n this.filteredOptions = this.options;\n }\n\n /**\n * Emitted when a value is selected.\n */\n @Event() icChange!: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when select has focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n /**\n * Emitted when select has blur.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n @Element() host!: HTMLIcSelectElement;\n\n /**\n * Sets focus on the input box.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.nativeSelectElement) {\n this.nativeSelectElement.focus();\n } else if (this.customSelectElement) {\n this.customSelectElement.focus();\n } else if (this.searchableSelectElement) {\n this.searchableSelectElement.focus();\n }\n }\n\n private isMenuEnabled = () => {\n return (\n ((this.searchableSelectInputValue === null ||\n this.searchableSelectInputValue === \"\") &&\n this.charactersUntilSuggestions === 0) ||\n (this.searchableSelectInputValue &&\n this.searchableSelectInputValue.length >=\n this.charactersUntilSuggestions)\n );\n };\n\n private setOptionsValuesFromLabels = (): void => {\n if (this.options.length > 0) {\n this.options.map((option) => {\n if (!option.value) {\n option.value = option.label;\n }\n });\n }\n };\n\n private setTextColor = (): void => {\n if (this.nativeSelectElement.selectedIndex === 0) {\n this.nativeSelectElement.className = \"placeholder\";\n } else {\n this.nativeSelectElement.className = \"select-option-selected\";\n }\n };\n\n private setMenuChange = (open: boolean) => {\n if (this.open !== open) {\n this.open = open;\n }\n };\n\n private getLabelFromValue = (value: string): string | undefined => {\n return getLabelFromValue(value, this.options);\n };\n\n private getValueFromLabel = (label: string): string | undefined => {\n const value = this.options.find((option) => option.label === label)?.value;\n return value;\n };\n\n private getFilteredChildMenuOptions = (option: IcMenuOption) => {\n let children = option.children;\n\n children = getFilteredMenuOptions(\n option.children,\n this.includeDescriptionsInSearch,\n this.searchableSelectInputValue,\n this.searchMatchPosition\n );\n\n const newOption = { ...option };\n newOption.children = children;\n return newOption;\n };\n\n private handleNativeSelectChange = (): void => {\n this.icChange.emit({ value: this.nativeSelectElement.value });\n this.setTextColor();\n };\n\n private handleCustomSelectChange = (event: CustomEvent): void => {\n if (this.searchable && event.detail.label === this.emptyOptionListText) {\n this.searchableSelectElement.focus();\n return;\n }\n\n if (this.searchable) {\n this.searchableSelectInputValue = this.getLabelFromValue(\n event.detail.value\n );\n }\n\n this.ariaActiveDescendant = event.detail.optionId;\n this.icChange.emit({ value: event.detail.value });\n };\n\n private handleMenuChange = (event: CustomEvent): void => {\n this.open = event.detail.open;\n\n this.searchable && this.handleFocusIndicatorDisplay();\n };\n\n private handleFocusIndicatorDisplay = () => {\n const focusIndicator =\n this.host.shadowRoot.querySelector(\".focus-indicator\");\n\n if (this.open) {\n focusIndicator.classList.add(\"focus-indicator-enabled\");\n } else {\n focusIndicator.classList.remove(\"focus-indicator-enabled\");\n }\n };\n\n private handleMouseDown = (event: Event): void => {\n if (!this.open) {\n event.preventDefault();\n }\n };\n\n private handleClick = (event: MouseEvent): void => {\n this.noOptions = null;\n this.menu.options = this.options;\n\n if (event.detail !== 0 && this.isMenuEnabled()) {\n this.menu.handleClickOpen();\n }\n };\n\n private handleExpandIconMouseDown = (event: MouseEvent) => {\n if (!this.disabled) {\n event.preventDefault();\n this.searchableSelectElement.focus();\n this.handleClick(event);\n }\n };\n\n private handleClear = (event: Event): void => {\n event.stopPropagation();\n this.noOptions = null;\n this.icChange.emit({ value: null });\n\n if (this.searchable) {\n this.searchableSelectElement.value = null;\n this.searchableSelectInputValue = null;\n this.menu.options = this.options;\n this.searchableSelectElement.focus();\n\n if (!this.isMenuEnabled()) {\n this.setMenuChange(false);\n }\n } else {\n this.customSelectElement.focus();\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n event.cancelBubble = true;\n\n if (!this.open) {\n this.noOptions = null;\n this.menu.options = this.options;\n }\n\n if (this.open && event.key === \"Enter\") {\n this.setMenuChange(false);\n } else {\n if (\n !(\n (event.key === \"ArrowDown\" || event.key === \"ArrowUp\") &&\n this.noOptions !== null\n ) &&\n this.isMenuEnabled()\n ) {\n this.menu.handleKeyboardOpen(event);\n }\n }\n };\n\n private handleClearButtonFocus = (): void => {\n this.clearButtonFocused = true;\n };\n\n private handleClearButtonBlur = (): void => {\n this.clearButtonFocused = false;\n };\n\n private handleSearchableSelectInput = (event: Event): void => {\n this.searchableSelectInputValue = (event.target as HTMLInputElement).value;\n\n if (this.getValueFromLabel(this.searchableSelectInputValue) === undefined) {\n this.icChange.emit({ value: null });\n }\n\n if (this.isMenuEnabled()) {\n this.setMenuChange(true);\n } else {\n this.setMenuChange(false);\n }\n\n const options = [...this.options];\n\n let isGrouped = false;\n let newFilteredOptions: IcMenuOption[] = [];\n\n options.map((option) => {\n if (option.children) isGrouped = true;\n });\n\n const menuOptionsFiltered = getFilteredMenuOptions(\n options,\n this.includeDescriptionsInSearch,\n this.searchableSelectInputValue,\n this.searchMatchPosition\n );\n\n if (!isGrouped) {\n newFilteredOptions = menuOptionsFiltered;\n } else {\n options.map((option) => {\n if (this.includeGroupTitlesInSearch) {\n if (menuOptionsFiltered.indexOf(option) !== -1) {\n newFilteredOptions.push(option);\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n });\n }\n\n let noChildOptionsWhenFiltered = false;\n\n if (isGrouped) {\n noChildOptionsWhenFiltered = true;\n newFilteredOptions.map((option) => {\n if (option.children.length > 0) {\n noChildOptionsWhenFiltered = false;\n }\n });\n }\n\n const noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n\n if (newFilteredOptions.length > 0 && !noChildOptionsWhenFiltered) {\n this.noOptions = null;\n this.filteredOptions = newFilteredOptions;\n } else {\n this.noOptions = noOptions;\n this.filteredOptions = this.noOptions;\n }\n\n this.debounceAriaLiveUpdate();\n };\n\n private updateSearchableSelectResultAriaLive = (): void => {\n const searchableSelectResultsStatusEl = this.host.shadowRoot.querySelector(\n \".searchable-select-results-status\"\n ) as HTMLDivElement;\n\n if (this.noOptions !== null) {\n searchableSelectResultsStatusEl.innerText = this.emptyOptionListText;\n } else {\n searchableSelectResultsStatusEl.innerText = \"\";\n }\n };\n\n private debounceAriaLiveUpdate() {\n clearTimeout(this.debounce);\n\n window.setTimeout(() => {\n this.updateSearchableSelectResultAriaLive();\n }, 800);\n }\n\n private onFocus = (): void => {\n this.icFocus.emit();\n };\n\n private onBlur = (event: FocusEvent): void => {\n if (\n this.searchable &&\n event.relatedTarget !== this.menu &&\n !(this.clearButton && event.relatedTarget === this.clearButton)\n ) {\n this.setMenuChange(false);\n this.handleFocusIndicatorDisplay();\n }\n\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.value = this.initialValue;\n if (this.searchable) {\n this.searchableSelectInputValue = null;\n }\n };\n\n componentWillLoad(): void {\n this.inheritedAttributes = inheritAttributes(this.host, [\n ...IC_INHERITED_ARIA,\n \"tabindex\",\n \"title\",\n ]);\n\n this.setOptionsValuesFromLabels();\n\n addFormResetListener(this.host, this.handleFormReset);\n }\n\n componentDidRender(): void {\n if (this.nativeSelectElement && !this.disabled) {\n this.setTextColor();\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Select\"\n );\n }\n\n disconnectedCallback(): void {\n removeFormResetListener(this.host, this.handleFormReset);\n }\n\n render() {\n const {\n small,\n disabled,\n fullWidth,\n helperText,\n hideLabel,\n label,\n menuId,\n name,\n options,\n placeholder,\n readonly,\n required,\n searchable,\n showClearButton,\n validationStatus,\n validationText,\n value,\n } = this;\n\n renderHiddenInput(true, this.host, name, value, disabled);\n\n const invalid =\n validationStatus === IcInformationStatus.Error ? \"true\" : \"false\";\n\n const describedBy = getInputDescribedByText(\n this.inputId,\n helperText !== \"\",\n hasValidationStatus(this.validationStatus, this.disabled)\n ).trim();\n\n return (\n <Host>\n <ic-input-container readonly={readonly}>\n {!hideLabel && (\n <ic-input-label\n for={this.inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n readonly={readonly}\n ></ic-input-label>\n )}\n <ic-input-component-container\n ref={(el) => (this.anchorEl = el)}\n class={{ \"menu-open\": this.open }}\n small={small}\n fullWidth={fullWidth}\n disabled={disabled}\n readonly={readonly}\n validationStatus={validationStatus}\n >\n {readonly ? (\n <ic-typography>\n <p>{this.getLabelFromValue(value)}</p>\n </ic-typography>\n ) : isMobileOrTablet() ? (\n <select\n ref={(el) => (this.nativeSelectElement = el)}\n disabled={disabled}\n onChange={this.handleNativeSelectChange}\n required={required}\n id={this.inputId}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n {...this.inheritedAttributes}\n >\n <option value=\"\" selected disabled={!showClearButton}>\n {placeholder}\n </option>\n {options.map((option) => {\n if (option.children) {\n return (\n <optgroup label={option.label}>\n {option.children.map((option) => (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === value}\n >\n {option.label}\n </option>\n ))}\n </optgroup>\n );\n } else {\n return (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === value}\n >\n {option.label}\n </option>\n );\n }\n })}\n </select>\n ) : searchable ? (\n <div class=\"searchable-select-container\">\n <input\n class=\"select-input\"\n role=\"combobox\"\n aria-label={label}\n aria-describedby={describedBy}\n aria-activedescendant={this.ariaActiveDescendant}\n aria-autocomplete=\"list\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-invalid={invalid}\n aria-required={required ? \"true\" : \"false\"}\n aria-controls={menuId}\n ref={(el) => (this.searchableSelectElement = el)}\n id={this.inputId}\n value={this.searchableSelectInputValue}\n placeholder={placeholder}\n disabled={disabled}\n onInput={this.handleSearchableSelectInput}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n ></input>\n {this.searchableSelectInputValue &&\n (showClearButton || searchable) && (\n <div class=\"clear-button-container\">\n <ic-button\n id=\"clear-button\"\n ref={(el) => (this.clearButton = el)}\n aria-label={\n this.searchableSelectInputValue && value === null\n ? \"Clear input\"\n : \"Clear selection\"\n }\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={small ? \"small\" : \"default\"}\n variant=\"icon\"\n appearance={\n this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark\n }\n ></ic-button>\n <div class=\"divider\"></div>\n </div>\n )}\n <span\n onMouseDown={this.handleExpandIconMouseDown}\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n \"expand-icon-filled\": !(value == null || value === \"\"),\n \"expand-icon-disabled\": !this.isMenuEnabled(),\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"searchable-select-results-status\"\n ></div>\n </div>\n ) : (\n <div class=\"select-container\">\n <button\n class=\"select-input\"\n ref={(el) => (this.customSelectElement = el)}\n id={this.inputId}\n aria-label={`${label}, ${\n this.getLabelFromValue(value) || placeholder\n }${required ? \", required\" : \"\"}`}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n aria-haspopup=\"listbox\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-owns={menuId}\n aria-controls={menuId}\n disabled={disabled}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n onClick={this.handleClick}\n onMouseDown={this.handleMouseDown}\n onKeyDown={this.handleKeyDown}\n >\n <ic-typography\n variant=\"body\"\n class={{\n \"value-text\": true,\n placeholder: this.getLabelFromValue(value) === undefined,\n }}\n >\n <p>{this.getLabelFromValue(value) || placeholder}</p>\n </ic-typography>\n <div class=\"select-input-end\">\n {value && showClearButton && <div class=\"divider\"></div>}\n <span\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n \"expand-icon-filled\": !(value == null || value === \"\"),\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n </div>\n </button>\n {value && showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear selection\"\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={small ? \"small\" : \"default\"}\n variant=\"icon\"\n appearance={\n this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark\n }\n ></ic-button>\n )}\n </div>\n )}\n </ic-input-component-container>\n {!isMobileOrTablet() && (\n <ic-menu\n class={{\n \"no-results\": this.noOptions !== null,\n }}\n ref={(el) => (this.menu = el)}\n inputEl={\n searchable\n ? this.searchableSelectElement\n : this.customSelectElement\n }\n inputLabel={label}\n anchorEl={this.anchorEl}\n small={small}\n menuId={menuId}\n open={this.open}\n options={searchable ? this.filteredOptions : options}\n value={value}\n fullWidth={fullWidth}\n onIcMenuStateChange={this.handleMenuChange}\n onIcOptionSelect={this.handleCustomSelectChange}\n parentEl={this.host}\n ></ic-menu>\n )}\n {hasValidationStatus(this.validationStatus, this.disabled) && (\n <ic-input-validation\n class={{ \"menu-open\": this.open }}\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText}\n for={this.inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"ic-select.entry.cjs.js","mappings":";;;;;;;;;;;;;;;;;;AAAA,MAAM,WAAW,GAAG,o8LAAo8L;;ACqCx9L,IAAI,QAAQ,GAAG,CAAC,CAAC;MAOJ,MAAM;;;;;;IAQT,YAAO,GAAG,mBAAmB,QAAQ,EAAE,EAAE,CAAC;IAC1C,WAAM,GAAG,GAAG,IAAI,CAAC,OAAO,OAAO,CAAC;IAEhC,wBAAmB,GAA6B,EAAE,CAAC;IAgKnD,kBAAa,GAAG;MACtB,QACE,CAAC,CAAC,IAAI,CAAC,0BAA0B,KAAK,IAAI;QACxC,IAAI,CAAC,0BAA0B,KAAK,EAAE;QACtC,IAAI,CAAC,0BAA0B,KAAK,CAAC;SACtC,IAAI,CAAC,0BAA0B;UAC9B,IAAI,CAAC,0BAA0B,CAAC,MAAM;YACpC,IAAI,CAAC,0BAA0B,CAAC,EACpC;KACH,CAAC;IAEM,+BAA0B,GAAG;MACnC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM;UACtB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;YACjB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;WAC7B;SACF,CAAC,CAAC;OACJ;KACF,CAAC;IAEM,iBAAY,GAAG;MACrB,IAAI,IAAI,CAAC,mBAAmB,CAAC,aAAa,KAAK,CAAC,EAAE;QAChD,IAAI,CAAC,mBAAmB,CAAC,SAAS,GAAG,aAAa,CAAC;OACpD;WAAM;QACL,IAAI,CAAC,mBAAmB,CAAC,SAAS,GAAG,wBAAwB,CAAC;OAC/D;KACF,CAAC;IAEM,kBAAa,GAAG,CAAC,IAAa;MACpC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;OAClB;KACF,CAAC;IAEM,sBAAiB,GAAG,CAAC,KAAa;MACxC,OAAOA,yBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;KAC/C,CAAC;IAEM,sBAAiB,GAAG,CAAC,KAAa;;MACxC,MAAM,KAAK,GAAG,MAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,0CAAE,KAAK,CAAC;MAC3E,OAAO,KAAK,CAAC;KACd,CAAC;IAEM,gCAA2B,GAAG,CAAC,MAAoB;MACzD,IAAI,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;MAE/B,QAAQ,GAAGC,8BAAsB,CAC/B,MAAM,CAAC,QAAQ,EACf,IAAI,CAAC,2BAA2B,EAChC,IAAI,CAAC,0BAA0B,EAC/B,IAAI,CAAC,mBAAmB,CACzB,CAAC;MAEF,MAAM,SAAS,qBAAQ,MAAM,CAAE,CAAC;MAChC,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;MAC9B,OAAO,SAAS,CAAC;KAClB,CAAC;IAEM,6BAAwB,GAAG;MACjC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC;MAC9D,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB,CAAC;IAEM,6BAAwB,GAAG,CAAC,KAAkB;MACpD,IAAI,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,mBAAmB,EAAE;QACtE,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;QACrC,OAAO;OACR;MAED,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,iBAAiB,CACtD,KAAK,CAAC,MAAM,CAAC,KAAK,CACnB,CAAC;OACH;MAED,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;MAClD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;KACnD,CAAC;IAEM,qBAAgB,GAAG,CAAC,KAAkB;MAC5C,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;MAE9B,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;KACvD,CAAC;IAEM,gCAA2B,GAAG;MACpC,MAAM,cAAc,GAClB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;MAEzD,IAAI,IAAI,CAAC,IAAI,EAAE;QACb,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;OACzD;WAAM;QACL,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;OAC5D;KACF,CAAC;IAEM,oBAAe,GAAG,CAAC,KAAY;MACrC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QACd,KAAK,CAAC,cAAc,EAAE,CAAC;OACxB;KACF,CAAC;IAEM,gBAAW,GAAG,CAAC,KAAiB;MACtC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;MACtB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;MAEjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;QAC9C,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;OAC7B;KACF,CAAC;IAEM,8BAAyB,GAAG,CAAC,KAAiB;MACpD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;QAClB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;OACzB;KACF,CAAC;IAEM,gBAAW,GAAG,CAAC,KAAY;MACjC,KAAK,CAAC,eAAe,EAAE,CAAC;MACxB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;MACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;MAEpC,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,IAAI,CAAC,uBAAuB,CAAC,KAAK,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;QAErC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;UACzB,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SAC3B;OACF;WAAM;QACL,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;OAClC;KACF,CAAC;IAEM,kBAAa,GAAG,CAAC,KAAoB;MAC3C,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC;MAE1B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;QACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;OAClC;MAED,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE;QACtC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;OAC3B;WAAM;QACL,IACE,EACE,CAAC,KAAK,CAAC,GAAG,KAAK,WAAW,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS;UACrD,IAAI,CAAC,SAAS,KAAK,IAAI,CACxB;UACD,IAAI,CAAC,aAAa,EAAE,EACpB;UACA,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;SACrC;OACF;KACF,CAAC;IAEM,2BAAsB,GAAG;MAC/B,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;KAChC,CAAC;IAEM,0BAAqB,GAAG;MAC9B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;KACjC,CAAC;IAEM,gCAA2B,GAAG,CAAC,KAAY;MACjD,IAAI,CAAC,0BAA0B,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;MAE3E,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,0BAA0B,CAAC,KAAK,SAAS,EAAE;QACzE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;OACrC;MAED,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;QACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;OAC1B;WAAM;QACL,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;OAC3B;MAED,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;MAElC,IAAI,SAAS,GAAG,KAAK,CAAC;MACtB,IAAI,kBAAkB,GAAmB,EAAE,CAAC;MAE5C,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM;QACjB,IAAI,MAAM,CAAC,QAAQ;UAAE,SAAS,GAAG,IAAI,CAAC;OACvC,CAAC,CAAC;MAEH,MAAM,mBAAmB,GAAGA,8BAAsB,CAChD,OAAO,EACP,IAAI,CAAC,2BAA2B,EAChC,IAAI,CAAC,0BAA0B,EAC/B,IAAI,CAAC,mBAAmB,CACzB,CAAC;MAEF,IAAI,CAAC,SAAS,EAAE;QACd,kBAAkB,GAAG,mBAAmB,CAAC;OAC1C;WAAM;QACL,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM;UACjB,IAAI,IAAI,CAAC,0BAA0B,EAAE;YACnC,IAAI,mBAAmB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;cAC9C,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACjC;iBAAM;cACL,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC;aACnE;WACF;eAAM;YACL,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC;WACnE;SACF,CAAC,CAAC;OACJ;MAED,IAAI,0BAA0B,GAAG,KAAK,CAAC;MAEvC,IAAI,SAAS,EAAE;QACb,0BAA0B,GAAG,IAAI,CAAC;QAClC,kBAAkB,CAAC,GAAG,CAAC,CAAC,MAAM;UAC5B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9B,0BAA0B,GAAG,KAAK,CAAC;WACpC;SACF,CAAC,CAAC;OACJ;MAED,MAAM,SAAS,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;MAEnE,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,0BAA0B,EAAE;QAChE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,eAAe,GAAG,kBAAkB,CAAC;OAC3C;WAAM;QACL,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC;OACvC;MAED,IAAI,CAAC,sBAAsB,EAAE,CAAC;KAC/B,CAAC;IAEM,yCAAoC,GAAG;MAC7C,MAAM,+BAA+B,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CACxE,mCAAmC,CAClB,CAAC;MAEpB,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;QAC3B,+BAA+B,CAAC,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC;OACtE;WAAM;QACL,+BAA+B,CAAC,SAAS,GAAG,EAAE,CAAC;OAChD;KACF,CAAC;IAUM,YAAO,GAAG;MAChB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;KACrB,CAAC;IAEM,WAAM,GAAG,CAAC,KAAiB;MACjC,IACE,IAAI,CAAC,UAAU;QACf,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC,IAAI;QACjC,EAAE,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC,WAAW,CAAC,EAC/D;QACA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,2BAA2B,EAAE,CAAC;OACpC;MAED,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;KACpB,CAAC;IAEM,oBAAe,GAAG;MACxB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;MAC/B,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC;OACxC;KACF,CAAC;;mBA7aiC,EAAE;oBAKR,KAAK;qBAKJ,KAAK;oBAKW,KAAK;oBAKtB,KAAK;uBAKH,kBAAkB;sBAKnB,EAAE;iBAKN,KAAK;qBAKF,KAAK;4BAKsB,EAAE;0BAKxB,EAAE;;gBAUZ,IAAI,CAAC,OAAO;2BAKA,KAAK;sBAKV,KAAK;uCAKY,KAAK;sCAKN,KAAK;+BAKG,UAAU;sCAKnB,CAAC;+BAKjB,kBAAkB;gBAEvB,KAAK;8BAES,KAAK;sCAEE,IAAI;2BAEP,IAAI,CAAC,OAAO;;qBAIlB,IAAI;wBAEjB,IAAI,CAAC,KAAK;;EAGlC,mBAAmB;IACjB,IAAI,CAAC,0BAA0B,EAAE,CAAC;IAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC;GACrC;;;;EAuBD,MAAM,QAAQ;IACZ,IAAI,IAAI,CAAC,mBAAmB,EAAE;MAC5B,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;KAClC;SAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE;MACnC,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;KAClC;SAAM,IAAI,IAAI,CAAC,uBAAuB,EAAE;MACvC,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;KACtC;GACF;EA6PO,sBAAsB;IAC5B,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE5B,MAAM,CAAC,UAAU,CAAC;MAChB,IAAI,CAAC,oCAAoC,EAAE,CAAC;KAC7C,EAAE,GAAG,CAAC,CAAC;GACT;EA0BD,iBAAiB;IACf,IAAI,CAAC,mBAAmB,GAAGC,yBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE;MACtD,GAAGC,yBAAiB;MACpB,UAAU;MACV,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,CAAC,0BAA0B,EAAE,CAAC;IAElCC,4BAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;GACvD;EAED,kBAAkB;IAChB,IAAI,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;MAC9C,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;GACF;EAED,gBAAgB;IACdC,wCAAgC,CAC9B,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACzC,QAAQ,CACT,CAAC;GACH;EAED,oBAAoB;IAClBC,+BAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;GAC1D;EAED,MAAM;IACJ,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,SAAS,EACT,UAAU,EACV,SAAS,EACT,KAAK,EACL,MAAM,EACN,IAAI,EACJ,OAAO,EACP,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,KAAK,GACN,GAAG,IAAI,CAAC;IAETC,yBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAE1D,MAAM,OAAO,GACX,gBAAgB,KAAKC,yBAAmB,CAAC,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;IAEpE,MAAM,WAAW,GAAGC,+BAAuB,CACzC,IAAI,CAAC,OAAO,EACZ,UAAU,KAAK,EAAE,EACjBC,2BAAmB,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAC1D,CAAC,IAAI,EAAE,CAAC;IAET,QACEC,QAACC,UAAI,QACHD,gCAAoB,QAAQ,EAAE,QAAQ,IACnC,CAAC,SAAS,KACTA,4BACE,GAAG,EAAE,IAAI,CAAC,OAAO,EACjB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GACF,CACnB,EACDA,0CACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,EACjC,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,EACjC,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,EAAE,gBAAgB,IAEjC,QAAQ,IACPA,+BACEA,mBAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAK,CACxB,IACdE,wBAAgB,EAAE,IACpBF,kCACE,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC,EAC5C,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,IAAI,CAAC,wBAAwB,EACvC,QAAQ,EAAE,QAAQ,EAClB,EAAE,EAAE,IAAI,CAAC,OAAO,gBACJ,KAAK,sBACC,WAAW,kBACf,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,IACjB,IAAI,CAAC,mBAAmB,GAE5BA,oBAAQ,KAAK,EAAC,EAAE,EAAC,QAAQ,QAAC,QAAQ,EAAE,CAAC,eAAe,IACjD,WAAW,CACL,EACR,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM;MAClB,IAAI,MAAM,CAAC,QAAQ,EAAE;QACnB,QACEA,sBAAU,KAAK,EAAE,MAAM,CAAC,KAAK,IAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,MAC1BA,oBACE,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,QAAQ,EAAE,MAAM,CAAC,KAAK,KAAK,KAAK,IAE/B,MAAM,CAAC,KAAK,CACN,CACV,CAAC,CACO,EACX;OACH;WAAM;QACL,QACEA,oBACE,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,QAAQ,EAAE,MAAM,CAAC,KAAK,KAAK,KAAK,IAE/B,MAAM,CAAC,KAAK,CACN,EACT;OACH;KACF,CAAC,CACK,IACP,UAAU,IACZA,iBAAK,KAAK,EAAC,6BAA6B,IACtCA,mBACE,KAAK,EAAC,cAAc,EACpB,IAAI,EAAC,UAAU,gBACH,KAAK,sBACC,WAAW,2BACN,IAAI,CAAC,oBAAoB,uBAC9B,MAAM,mBACT,IAAI,CAAC,IAAI,GAAG,MAAM,GAAG,OAAO,kBAC7B,OAAO,mBACN,QAAQ,GAAG,MAAM,GAAG,OAAO,mBAC3B,MAAM,EACrB,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,uBAAuB,GAAG,EAAE,CAAC,EAChD,EAAE,EAAE,IAAI,CAAC,OAAO,EAChB,KAAK,EAAE,IAAI,CAAC,0BAA0B,EACtC,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,IAAI,CAAC,2BAA2B,EACzC,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,SAAS,EAAE,IAAI,CAAC,aAAa,EAC7B,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,GACZ,EACR,IAAI,CAAC,0BAA0B;OAC7B,eAAe,IAAI,UAAU,CAAC,KAC7BA,iBAAK,KAAK,EAAC,wBAAwB,IACjCA,uBACE,EAAE,EAAC,cAAc,EACjB,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,gBAElC,IAAI,CAAC,0BAA0B,IAAI,KAAK,KAAK,IAAI;UAC7C,aAAa;UACb,iBAAiB,EAEvB,KAAK,EAAC,cAAc,EACpB,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,OAAO,EAAE,IAAI,CAAC,sBAAsB,EACpC,MAAM,EAAE,IAAI,CAAC,qBAAqB,EAClC,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,EACjC,OAAO,EAAC,MAAM,EACd,UAAU,EACR,IAAI,CAAC,kBAAkB;UACnBG,2BAAqB,CAAC,KAAK;UAC3BA,2BAAqB,CAAC,IAAI,GAErB,EACbH,iBAAK,KAAK,EAAC,SAAS,GAAO,CACvB,CACP,EACHA,kBACE,WAAW,EAAE,IAAI,CAAC,yBAAyB,EAC3C,KAAK,EAAE;QACL,aAAa,EAAE,IAAI;QACnB,kBAAkB,EAAE,IAAI,CAAC,IAAI;QAC7B,oBAAoB,EAAE,EAAE,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACtD,sBAAsB,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE;OAC9C,EACD,SAAS,EAAE,MAAM,iBACL,MAAM,GAClB,EACFA,8BACY,QAAQ,EAClB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAC,kCAAkC,GACnC,CACH,KAENA,iBAAK,KAAK,EAAC,kBAAkB,IAC3BA,oBACE,KAAK,EAAC,cAAc,EACpB,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC,EAC5C,EAAE,EAAE,IAAI,CAAC,OAAO,gBACJ,GAAG,KAAK,KAClB,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,WACnC,GAAG,QAAQ,GAAG,YAAY,GAAG,EAAE,EAAE,sBACf,WAAW,kBACf,OAAO,mBACP,SAAS,mBACR,IAAI,CAAC,IAAI,GAAG,MAAM,GAAG,OAAO,eAChC,MAAM,mBACF,MAAM,EACrB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,WAAW,EAAE,IAAI,CAAC,eAAe,EACjC,SAAS,EAAE,IAAI,CAAC,aAAa,IAE7BA,2BACE,OAAO,EAAC,MAAM,EACd,KAAK,EAAE;QACL,YAAY,EAAE,IAAI;QAClB,WAAW,EAAE,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,SAAS;OACzD,IAEDA,mBAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,WAAW,CAAK,CACvC,EAChBA,iBAAK,KAAK,EAAC,kBAAkB,IAC1B,KAAK,IAAI,eAAe,IAAIA,iBAAK,KAAK,EAAC,SAAS,GAAO,EACxDA,kBACE,KAAK,EAAE;QACL,aAAa,EAAE,IAAI;QACnB,kBAAkB,EAAE,IAAI,CAAC,IAAI;QAC7B,oBAAoB,EAAE,EAAE,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;OACvD,EACD,SAAS,EAAE,MAAM,iBACL,MAAM,GAClB,CACE,CACC,EACR,KAAK,IAAI,eAAe,KACvBA,uBACE,EAAE,EAAC,cAAc,gBACN,iBAAiB,EAC5B,KAAK,EAAC,cAAc,EACpB,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,OAAO,EAAE,IAAI,CAAC,sBAAsB,EACpC,MAAM,EAAE,IAAI,CAAC,qBAAqB,EAClC,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,EACjC,OAAO,EAAC,MAAM,EACd,UAAU,EACR,IAAI,CAAC,kBAAkB;UACnBG,2BAAqB,CAAC,KAAK;UAC3BA,2BAAqB,CAAC,IAAI,GAErB,CACd,CACG,CACP,CAC4B,EAC9B,CAACD,wBAAgB,EAAE,KAClBF,qBACE,KAAK,EAAE;QACL,YAAY,EAAE,IAAI,CAAC,SAAS,KAAK,IAAI;OACtC,EACD,GAAG,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,EAC7B,OAAO,EACL,UAAU;UACN,IAAI,CAAC,uBAAuB;UAC5B,IAAI,CAAC,mBAAmB,EAE9B,UAAU,EAAE,KAAK,EACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC,eAAe,GAAG,OAAO,EACpD,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,mBAAmB,EAAE,IAAI,CAAC,gBAAgB,EAC1C,gBAAgB,EAAE,IAAI,CAAC,wBAAwB,EAC/C,QAAQ,EAAE,IAAI,CAAC,IAAI,GACV,CACZ,EACAD,2BAAmB,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,KACxDC,iCACE,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,EACjC,YAAY,EAAC,QAAQ,EACrB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE,IAAI,CAAC,OAAO,GACI,CACxB,CACkB,CAChB,EACP;GACH;;;;;;;;;;","names":["getLabelFromValue","getFilteredMenuOptions","inheritAttributes","IC_INHERITED_ARIA","addFormResetListener","onComponentRequiredPropUndefined","removeFormResetListener","renderHiddenInput","IcInformationStatus","getInputDescribedByText","hasValidationStatus","h","Host","isMobileOrTablet","IcThemeForegroundEnum"],"sources":["./src/components/ic-select/ic-select.css?tag=ic-select&encapsulation=shadow","./src/components/ic-select/ic-select.tsx"],"sourcesContent":["@import \"../../global/normalize.css\";\n\n/**\n * @prop --input-width: Width of the input field\n*/\n\n:host {\n width: 100%;\n}\n\nic-input-component-container:hover {\n --border-color: var(--ic-action-dark-hover);\n}\n\nic-input-component-container:active {\n --border-color: var(--ic-action-dark-active);\n\n color: var(--ic-action-dark-active);\n}\n\nic-input-component-container.menu-open {\n --border-color: var(--ic-architectural-400);\n\n color: var(--ic-action-dark);\n}\n\nic-input-validation .status-icon,\nic-input-validation .statustext {\n visibility: visible;\n}\n\nic-input-validation.menu-open .status-icon,\nic-input-validation.menu-open .statustext {\n visibility: hidden;\n transition: visibility 0s;\n}\n\nic-input-label {\n margin-bottom: var(--ic-space-xs) !important;\n}\n\nselect {\n border: 0;\n border-radius: var(--ic-border-radius);\n background-color: var(--ic-architectural-white);\n color: var(--ic-color-primary-text);\n line-height: 1.5rem;\n letter-spacing: 0.005rem;\n width: 100%;\n height: 100%;\n padding-left: 6px;\n appearance: none;\n background-repeat: no-repeat;\n background-position: right 6px center;\n background-image: url(\"data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\");\n}\n\nselect option,\n.select-option-selected {\n color: var(--ic-color-primary-text);\n}\n\nselect:disabled {\n color: var(--ic-architectural-200);\n background-image: url(\"data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>\");\n}\n\nselect:focus {\n border: 0;\n outline: 0;\n}\n\nselect:not([disabled]) {\n cursor: pointer;\n}\n\n.select-container {\n width: 100%;\n display: flex;\n align-items: center;\n}\n\n.select-input {\n width: 100%;\n height: 100%;\n padding: 0 6px;\n display: flex;\n cursor: pointer;\n align-items: center;\n justify-content: space-between;\n background: none;\n border: none;\n}\n\n.select-input:focus {\n outline: var(--ic-hc-focus-outline);\n}\n\n:host(:not([disabled])) ic-input-component-container:hover .select-input {\n background-color: var(--ic-architectural-white);\n}\n\n:host([disabled]) .select-input {\n pointer-events: none;\n}\n\n:host([searchable]) .select-input {\n cursor: auto;\n}\n\n.searchable-select-container {\n align-items: center;\n display: flex;\n width: 100%;\n}\n\n.expand-icon {\n height: var(--ic-space-lg);\n padding-left: var(--ic-space-xs);\n color: var(--ic-action-dark);\n}\n\n:host([disabled]) .expand-icon,\n:host([disabled]) .expand-icon > svg > path {\n color: var(--ic-architectural-200);\n}\n\n:host([searchable]) .expand-icon {\n padding-left: var(--ic-space-xxs);\n height: 36px;\n}\n\n:host([searchable]) .expand-icon > svg {\n height: 36px;\n padding: 0 6px;\n}\n\n:host([searchable]:not([disabled])) .expand-icon > svg {\n cursor: pointer;\n}\n\n.expand-icon-open {\n color: var(--ic-action-dark);\n}\n\n.expand-icon-filled {\n color: var(--ic-action-dark);\n}\n\n.expand-icon-open,\n:host([searchable]) .expand-icon-open {\n transform: rotateX(180deg);\n}\n\n:host([disabled]) .value-text,\n.placeholder {\n color: var(--ic-color-tertiary-text);\n}\n\n.select-input-end {\n display: flex;\n align-items: center;\n}\n\n.clear-button-container {\n display: flex;\n gap: var(--ic-space-xxs);\n padding-left: 38px;\n}\n\n:host([small]) .clear-button-container {\n padding-left: 30px;\n}\n\n.divider {\n width: 1px;\n background-color: var(--ic-architectural-400);\n margin: var(--ic-space-xxs) 0;\n border-radius: 1px;\n height: var(--ic-space-lg);\n}\n\n:host([small]) .divider {\n height: var(--ic-space-md);\n}\n\n.clear-button {\n position: absolute;\n right: 44px;\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n}\n\n.clear-button:focus {\n background-color: var(--ic-focus-blue);\n box-shadow: inset 0 0 0 2px var(--ic-focus-glow);\n border-radius: 4px;\n}\n\n.clear-button:focus * {\n fill: white;\n}\n\n.searchable-select-results-status {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: 1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: 1px;\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n h,\n State,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n getInputDescribedByText,\n getLabelFromValue,\n hasValidationStatus,\n inheritAttributes,\n onComponentRequiredPropUndefined,\n renderHiddenInput,\n isMobileOrTablet,\n getFilteredMenuOptions,\n addFormResetListener,\n removeFormResetListener,\n} from \"../../utils/helpers\";\nimport { IC_INHERITED_ARIA } from \"../../utils/constants\";\nimport {\n IcInformationStatus,\n IcInformationStatusOrEmpty,\n IcThemeForegroundEnum,\n IcMenuOption,\n IcSearchMatchPositions,\n} from \"../../utils/types\";\nimport Expand from \"./assets/Expand.svg\";\nimport Clear from \"./assets/Clear.svg\";\nimport { IcValueEventDetail } from \"../../interface\";\n\nlet inputIds = 0;\n\n@Component({\n tag: \"ic-select\",\n styleUrl: \"ic-select.css\",\n shadow: true,\n})\nexport class Select {\n private nativeSelectElement: HTMLSelectElement;\n private customSelectElement: HTMLButtonElement;\n private searchableSelectElement: HTMLInputElement;\n private menu: HTMLIcMenuElement;\n private anchorEl: HTMLElement;\n private clearButton: HTMLIcButtonElement;\n\n private inputId = `ic-select-input-${inputIds++}`;\n private menuId = `${this.inputId}-menu`;\n\n private inheritedAttributes: { [k: string]: unknown } = {};\n\n private debounce: number;\n\n /**\n * The label for the select.\n */\n @Prop() label!: string;\n\n /**\n * The possible selection options.\n */\n @Prop() options?: IcMenuOption[] = [];\n\n /**\n * If `true`, the select will require a value.\n */\n @Prop() required?: boolean = false;\n\n /**\n * If `true`, the label will be hidden and the required label value will be applied as an aria-label.\n */\n @Prop() hideLabel?: boolean = false;\n\n /**\n * If `true`, the disabled state will be set.\n */\n @Prop({ reflect: true }) disabled?: boolean = false;\n\n /**\n * If `true`, the readonly state will be set.\n */\n @Prop() readonly?: boolean = false;\n\n /**\n * The placeholder value to be displayed.\n */\n @Prop() placeholder?: string = \"Select an option\";\n\n /**\n * The helper text that will be displayed for additional field guidance.\n */\n @Prop() helperText?: string = \"\";\n\n /**\n * If `true`, the small styling will be applied to the select.\n */\n @Prop() small?: boolean = false;\n\n /**\n * If `true`, the select element will fill the width of the container.\n */\n @Prop() fullWidth: boolean = false;\n\n /**\n * The validation status - e.g. 'error' | 'warning' | 'success'.\n */\n @Prop() validationStatus?: IcInformationStatusOrEmpty = \"\";\n\n /**\n * The text to display as the validation message.\n */\n @Prop() validationText?: string = \"\";\n\n /**\n * The value of the currently selected option.\n */\n @Prop({ mutable: true }) value?: string;\n\n /**\n * The name of the control, which is submitted with the form data.\n */\n @Prop() name?: string = this.inputId;\n\n /**\n * If `true`, a button which clears the select input when clicked will be displayed. The button will always appear on the searchable select.\n */\n @Prop() showClearButton?: boolean = false;\n\n /**\n * If `true`, a searchable variant of the select will be displayed which can be typed in to filter options.\n */\n @Prop() searchable?: boolean = false;\n\n /**\n * If `true`, descriptions of options will be included when filtering options in a searchable select.\n */\n @Prop() includeDescriptionsInSearch?: boolean = false;\n\n /**\n * If `true`, group titles of grouped options will be included when filtering options in a searchable select.\n */\n @Prop() includeGroupTitlesInSearch?: boolean = false;\n\n /**\n * Whether the search string of the searchable select should match the start of or anywhere in the options.\n */\n @Prop() searchMatchPosition?: IcSearchMatchPositions = \"anywhere\";\n\n /**\n * The number of characters until suggestions appear for a searchable select.\n */\n @Prop() charactersUntilSuggestions?: number = 0;\n\n /**\n * The text displayed when there are no options in the option list.\n */\n @Prop() emptyOptionListText = \"No results found\";\n\n @State() open: boolean = false;\n\n @State() clearButtonFocused: boolean = false;\n\n @State() searchableSelectInputValue: string = null;\n\n @State() filteredOptions: IcMenuOption[] = this.options;\n\n @State() ariaActiveDescendant: string;\n\n @State() noOptions: IcMenuOption[] = null;\n\n @State() initialValue = this.value;\n\n @Watch(\"options\")\n watchOptionsHandler(): void {\n this.setOptionsValuesFromLabels();\n this.filteredOptions = this.options;\n }\n\n /**\n * Emitted when a value is selected.\n */\n @Event() icChange!: EventEmitter<IcValueEventDetail>;\n\n /**\n * Emitted when select has focus.\n */\n @Event() icFocus!: EventEmitter<void>;\n\n /**\n * Emitted when select has blur.\n */\n @Event() icBlur!: EventEmitter<void>;\n\n @Element() host!: HTMLIcSelectElement;\n\n /**\n * Sets focus on the input box.\n */\n @Method()\n async setFocus(): Promise<void> {\n if (this.nativeSelectElement) {\n this.nativeSelectElement.focus();\n } else if (this.customSelectElement) {\n this.customSelectElement.focus();\n } else if (this.searchableSelectElement) {\n this.searchableSelectElement.focus();\n }\n }\n\n private isMenuEnabled = () => {\n return (\n ((this.searchableSelectInputValue === null ||\n this.searchableSelectInputValue === \"\") &&\n this.charactersUntilSuggestions === 0) ||\n (this.searchableSelectInputValue &&\n this.searchableSelectInputValue.length >=\n this.charactersUntilSuggestions)\n );\n };\n\n private setOptionsValuesFromLabels = (): void => {\n if (this.options.length > 0) {\n this.options.map((option) => {\n if (!option.value) {\n option.value = option.label;\n }\n });\n }\n };\n\n private setTextColor = (): void => {\n if (this.nativeSelectElement.selectedIndex === 0) {\n this.nativeSelectElement.className = \"placeholder\";\n } else {\n this.nativeSelectElement.className = \"select-option-selected\";\n }\n };\n\n private setMenuChange = (open: boolean) => {\n if (this.open !== open) {\n this.open = open;\n }\n };\n\n private getLabelFromValue = (value: string): string | undefined => {\n return getLabelFromValue(value, this.options);\n };\n\n private getValueFromLabel = (label: string): string | undefined => {\n const value = this.options.find((option) => option.label === label)?.value;\n return value;\n };\n\n private getFilteredChildMenuOptions = (option: IcMenuOption) => {\n let children = option.children;\n\n children = getFilteredMenuOptions(\n option.children,\n this.includeDescriptionsInSearch,\n this.searchableSelectInputValue,\n this.searchMatchPosition\n );\n\n const newOption = { ...option };\n newOption.children = children;\n return newOption;\n };\n\n private handleNativeSelectChange = (): void => {\n this.icChange.emit({ value: this.nativeSelectElement.value });\n this.setTextColor();\n };\n\n private handleCustomSelectChange = (event: CustomEvent): void => {\n if (this.searchable && event.detail.label === this.emptyOptionListText) {\n this.searchableSelectElement.focus();\n return;\n }\n\n if (this.searchable) {\n this.searchableSelectInputValue = this.getLabelFromValue(\n event.detail.value\n );\n }\n\n this.ariaActiveDescendant = event.detail.optionId;\n this.icChange.emit({ value: event.detail.value });\n };\n\n private handleMenuChange = (event: CustomEvent): void => {\n this.open = event.detail.open;\n\n this.searchable && this.handleFocusIndicatorDisplay();\n };\n\n private handleFocusIndicatorDisplay = () => {\n const focusIndicator =\n this.host.shadowRoot.querySelector(\".focus-indicator\");\n\n if (this.open) {\n focusIndicator.classList.add(\"focus-indicator-enabled\");\n } else {\n focusIndicator.classList.remove(\"focus-indicator-enabled\");\n }\n };\n\n private handleMouseDown = (event: Event): void => {\n if (!this.open) {\n event.preventDefault();\n }\n };\n\n private handleClick = (event: MouseEvent): void => {\n this.noOptions = null;\n this.menu.options = this.options;\n\n if (event.detail !== 0 && this.isMenuEnabled()) {\n this.menu.handleClickOpen();\n }\n };\n\n private handleExpandIconMouseDown = (event: MouseEvent) => {\n if (!this.disabled) {\n event.preventDefault();\n this.searchableSelectElement.focus();\n this.handleClick(event);\n }\n };\n\n private handleClear = (event: Event): void => {\n event.stopPropagation();\n this.noOptions = null;\n this.icChange.emit({ value: null });\n\n if (this.searchable) {\n this.searchableSelectElement.value = null;\n this.searchableSelectInputValue = null;\n this.menu.options = this.options;\n this.searchableSelectElement.focus();\n\n if (!this.isMenuEnabled()) {\n this.setMenuChange(false);\n }\n } else {\n this.customSelectElement.focus();\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent): void => {\n event.cancelBubble = true;\n\n if (!this.open) {\n this.noOptions = null;\n this.menu.options = this.options;\n }\n\n if (this.open && event.key === \"Enter\") {\n this.setMenuChange(false);\n } else {\n if (\n !(\n (event.key === \"ArrowDown\" || event.key === \"ArrowUp\") &&\n this.noOptions !== null\n ) &&\n this.isMenuEnabled()\n ) {\n this.menu.handleKeyboardOpen(event);\n }\n }\n };\n\n private handleClearButtonFocus = (): void => {\n this.clearButtonFocused = true;\n };\n\n private handleClearButtonBlur = (): void => {\n this.clearButtonFocused = false;\n };\n\n private handleSearchableSelectInput = (event: Event): void => {\n this.searchableSelectInputValue = (event.target as HTMLInputElement).value;\n\n if (this.getValueFromLabel(this.searchableSelectInputValue) === undefined) {\n this.icChange.emit({ value: null });\n }\n\n if (this.isMenuEnabled()) {\n this.setMenuChange(true);\n } else {\n this.setMenuChange(false);\n }\n\n const options = [...this.options];\n\n let isGrouped = false;\n let newFilteredOptions: IcMenuOption[] = [];\n\n options.map((option) => {\n if (option.children) isGrouped = true;\n });\n\n const menuOptionsFiltered = getFilteredMenuOptions(\n options,\n this.includeDescriptionsInSearch,\n this.searchableSelectInputValue,\n this.searchMatchPosition\n );\n\n if (!isGrouped) {\n newFilteredOptions = menuOptionsFiltered;\n } else {\n options.map((option) => {\n if (this.includeGroupTitlesInSearch) {\n if (menuOptionsFiltered.indexOf(option) !== -1) {\n newFilteredOptions.push(option);\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n } else {\n newFilteredOptions.push(this.getFilteredChildMenuOptions(option));\n }\n });\n }\n\n let noChildOptionsWhenFiltered = false;\n\n if (isGrouped) {\n noChildOptionsWhenFiltered = true;\n newFilteredOptions.map((option) => {\n if (option.children.length > 0) {\n noChildOptionsWhenFiltered = false;\n }\n });\n }\n\n const noOptions = [{ label: this.emptyOptionListText, value: \"\" }];\n\n if (newFilteredOptions.length > 0 && !noChildOptionsWhenFiltered) {\n this.noOptions = null;\n this.filteredOptions = newFilteredOptions;\n } else {\n this.noOptions = noOptions;\n this.filteredOptions = this.noOptions;\n }\n\n this.debounceAriaLiveUpdate();\n };\n\n private updateSearchableSelectResultAriaLive = (): void => {\n const searchableSelectResultsStatusEl = this.host.shadowRoot.querySelector(\n \".searchable-select-results-status\"\n ) as HTMLDivElement;\n\n if (this.noOptions !== null) {\n searchableSelectResultsStatusEl.innerText = this.emptyOptionListText;\n } else {\n searchableSelectResultsStatusEl.innerText = \"\";\n }\n };\n\n private debounceAriaLiveUpdate() {\n clearTimeout(this.debounce);\n\n window.setTimeout(() => {\n this.updateSearchableSelectResultAriaLive();\n }, 800);\n }\n\n private onFocus = (): void => {\n this.icFocus.emit();\n };\n\n private onBlur = (event: FocusEvent): void => {\n if (\n this.searchable &&\n event.relatedTarget !== this.menu &&\n !(this.clearButton && event.relatedTarget === this.clearButton)\n ) {\n this.setMenuChange(false);\n this.handleFocusIndicatorDisplay();\n }\n\n this.icBlur.emit();\n };\n\n private handleFormReset = (): void => {\n this.value = this.initialValue;\n if (this.searchable) {\n this.searchableSelectInputValue = null;\n }\n };\n\n componentWillLoad(): void {\n this.inheritedAttributes = inheritAttributes(this.host, [\n ...IC_INHERITED_ARIA,\n \"tabindex\",\n \"title\",\n ]);\n\n this.setOptionsValuesFromLabels();\n\n addFormResetListener(this.host, this.handleFormReset);\n }\n\n componentDidRender(): void {\n if (this.nativeSelectElement && !this.disabled) {\n this.setTextColor();\n }\n }\n\n componentDidLoad(): void {\n onComponentRequiredPropUndefined(\n [{ prop: this.label, propName: \"label\" }],\n \"Select\"\n );\n }\n\n disconnectedCallback(): void {\n removeFormResetListener(this.host, this.handleFormReset);\n }\n\n render() {\n const {\n small,\n disabled,\n fullWidth,\n helperText,\n hideLabel,\n label,\n menuId,\n name,\n options,\n placeholder,\n readonly,\n required,\n searchable,\n showClearButton,\n validationStatus,\n validationText,\n value,\n } = this;\n\n renderHiddenInput(true, this.host, name, value, disabled);\n\n const invalid =\n validationStatus === IcInformationStatus.Error ? \"true\" : \"false\";\n\n const describedBy = getInputDescribedByText(\n this.inputId,\n helperText !== \"\",\n hasValidationStatus(this.validationStatus, this.disabled)\n ).trim();\n\n return (\n <Host>\n <ic-input-container readonly={readonly}>\n {!hideLabel && (\n <ic-input-label\n for={this.inputId}\n label={label}\n helperText={helperText}\n required={required}\n disabled={disabled}\n readonly={readonly}\n ></ic-input-label>\n )}\n <ic-input-component-container\n ref={(el) => (this.anchorEl = el)}\n class={{ \"menu-open\": this.open }}\n small={small}\n fullWidth={fullWidth}\n disabled={disabled}\n readonly={readonly}\n validationStatus={validationStatus}\n >\n {readonly ? (\n <ic-typography>\n <p>{this.getLabelFromValue(value)}</p>\n </ic-typography>\n ) : isMobileOrTablet() ? (\n <select\n ref={(el) => (this.nativeSelectElement = el)}\n disabled={disabled}\n onChange={this.handleNativeSelectChange}\n required={required}\n id={this.inputId}\n aria-label={label}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n {...this.inheritedAttributes}\n >\n <option value=\"\" selected disabled={!showClearButton}>\n {placeholder}\n </option>\n {options.map((option) => {\n if (option.children) {\n return (\n <optgroup label={option.label}>\n {option.children.map((option) => (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === value}\n >\n {option.label}\n </option>\n ))}\n </optgroup>\n );\n } else {\n return (\n <option\n value={option.value}\n disabled={option.disabled}\n selected={option.value === value}\n >\n {option.label}\n </option>\n );\n }\n })}\n </select>\n ) : searchable ? (\n <div class=\"searchable-select-container\">\n <input\n class=\"select-input\"\n role=\"combobox\"\n aria-label={label}\n aria-describedby={describedBy}\n aria-activedescendant={this.ariaActiveDescendant}\n aria-autocomplete=\"list\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-invalid={invalid}\n aria-required={required ? \"true\" : \"false\"}\n aria-controls={menuId}\n ref={(el) => (this.searchableSelectElement = el)}\n id={this.inputId}\n value={this.searchableSelectInputValue}\n placeholder={placeholder}\n disabled={disabled}\n onInput={this.handleSearchableSelectInput}\n onClick={this.handleClick}\n onKeyDown={this.handleKeyDown}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n ></input>\n {this.searchableSelectInputValue &&\n (showClearButton || searchable) && (\n <div class=\"clear-button-container\">\n <ic-button\n id=\"clear-button\"\n ref={(el) => (this.clearButton = el)}\n aria-label={\n this.searchableSelectInputValue && value === null\n ? \"Clear input\"\n : \"Clear selection\"\n }\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={small ? \"small\" : \"default\"}\n variant=\"icon\"\n appearance={\n this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark\n }\n ></ic-button>\n <div class=\"divider\"></div>\n </div>\n )}\n <span\n onMouseDown={this.handleExpandIconMouseDown}\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n \"expand-icon-filled\": !(value == null || value === \"\"),\n \"expand-icon-disabled\": !this.isMenuEnabled(),\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n <div\n aria-live=\"polite\"\n role=\"status\"\n class=\"searchable-select-results-status\"\n ></div>\n </div>\n ) : (\n <div class=\"select-container\">\n <button\n class=\"select-input\"\n ref={(el) => (this.customSelectElement = el)}\n id={this.inputId}\n aria-label={`${label}, ${\n this.getLabelFromValue(value) || placeholder\n }${required ? \", required\" : \"\"}`}\n aria-describedby={describedBy}\n aria-invalid={invalid}\n aria-haspopup=\"listbox\"\n aria-expanded={this.open ? \"true\" : \"false\"}\n aria-owns={menuId}\n aria-controls={menuId}\n disabled={disabled}\n onBlur={this.onBlur}\n onFocus={this.onFocus}\n onClick={this.handleClick}\n onMouseDown={this.handleMouseDown}\n onKeyDown={this.handleKeyDown}\n >\n <ic-typography\n variant=\"body\"\n class={{\n \"value-text\": true,\n placeholder: this.getLabelFromValue(value) === undefined,\n }}\n >\n <p>{this.getLabelFromValue(value) || placeholder}</p>\n </ic-typography>\n <div class=\"select-input-end\">\n {value && showClearButton && <div class=\"divider\"></div>}\n <span\n class={{\n \"expand-icon\": true,\n \"expand-icon-open\": this.open,\n \"expand-icon-filled\": !(value == null || value === \"\"),\n }}\n innerHTML={Expand}\n aria-hidden=\"true\"\n />\n </div>\n </button>\n {value && showClearButton && (\n <ic-button\n id=\"clear-button\"\n aria-label=\"Clear selection\"\n class=\"clear-button\"\n innerHTML={Clear}\n onClick={this.handleClear}\n onFocus={this.handleClearButtonFocus}\n onBlur={this.handleClearButtonBlur}\n size={small ? \"small\" : \"default\"}\n variant=\"icon\"\n appearance={\n this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark\n }\n ></ic-button>\n )}\n </div>\n )}\n </ic-input-component-container>\n {!isMobileOrTablet() && (\n <ic-menu\n class={{\n \"no-results\": this.noOptions !== null,\n }}\n ref={(el) => (this.menu = el)}\n inputEl={\n searchable\n ? this.searchableSelectElement\n : this.customSelectElement\n }\n inputLabel={label}\n anchorEl={this.anchorEl}\n small={small}\n menuId={menuId}\n open={this.open}\n options={searchable ? this.filteredOptions : options}\n value={value}\n fullWidth={fullWidth}\n onIcMenuStateChange={this.handleMenuChange}\n onIcOptionSelect={this.handleCustomSelectChange}\n parentEl={this.host}\n ></ic-menu>\n )}\n {hasValidationStatus(this.validationStatus, this.disabled) && (\n <ic-input-validation\n class={{ \"menu-open\": this.open }}\n ariaLiveMode=\"polite\"\n status={validationStatus}\n message={validationText}\n for={this.inputId}\n ></ic-input-validation>\n )}\n </ic-input-container>\n </Host>\n );\n }\n}\n"],"version":3}