globuswebcomponents 1.7.8 → 1.7.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/cjs/gb-avatar_30.cjs.entry.js +45 -15
  2. package/dist/cjs/gb-avatar_30.cjs.entry.js.map +1 -1
  3. package/dist/cjs/globuscomponents.cjs.js +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/collection/components/gb-input-field/gb-input-field.js +71 -12
  6. package/dist/collection/components/gb-input-field/gb-input-field.js.map +1 -1
  7. package/dist/collection/components/gb-theme-tab/gb-theme-tab.js +32 -3
  8. package/dist/collection/components/gb-theme-tab/gb-theme-tab.js.map +1 -1
  9. package/dist/components/gb-avatar-dropdown.js +1 -1
  10. package/dist/components/gb-input-dropdown.js +1 -1
  11. package/dist/components/gb-input-field.js +1 -1
  12. package/dist/components/gb-pagination.js +2 -2
  13. package/dist/components/gb-theme-tab.js +1 -1
  14. package/dist/components/{p-BbIDFBZw.js → p-BH_kBl5M.js} +3 -3
  15. package/dist/components/{p-BbIDFBZw.js.map → p-BH_kBl5M.js.map} +1 -1
  16. package/dist/components/p-CzL1gfFw.js +87 -0
  17. package/dist/components/p-CzL1gfFw.js.map +1 -0
  18. package/dist/components/{p-BlMglM7m.js → p-DMhcqs9l.js} +18 -14
  19. package/dist/components/p-DMhcqs9l.js.map +1 -0
  20. package/dist/docs.json +71 -1
  21. package/dist/esm/gb-avatar_30.entry.js +45 -15
  22. package/dist/esm/gb-avatar_30.entry.js.map +1 -1
  23. package/dist/esm/globuscomponents.js +1 -1
  24. package/dist/esm/loader.js +1 -1
  25. package/dist/globuscomponents/globuscomponents.esm.js +1 -1
  26. package/dist/globuscomponents/{p-3daff4b2.entry.js → p-2bbf09cc.entry.js} +2 -2
  27. package/dist/globuscomponents/p-2bbf09cc.entry.js.map +1 -0
  28. package/dist/types/components/gb-input-field/gb-input-field.d.ts +3 -0
  29. package/dist/types/components/gb-theme-tab/gb-theme-tab.d.ts +5 -0
  30. package/dist/types/components.d.ts +6 -0
  31. package/package.json +1 -1
  32. package/dist/components/p-BgFE_LzN.js +0 -58
  33. package/dist/components/p-BgFE_LzN.js.map +0 -1
  34. package/dist/components/p-BlMglM7m.js.map +0 -1
  35. package/dist/globuscomponents/p-3daff4b2.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"file":"p-BbIDFBZw.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/gb-input-dropdown/gb-input-dropdown.css?tag=gb-input-dropdown&encapsulation=shadow","src/components/gb-input-dropdown/gb-input-dropdown.tsx"],"sourcesContent":["@import './../../global/global.css';\r\n\r\n.input_dropdown_div{\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n border-radius: 0.5rem;\r\n gap: var(--spacing-3);\r\n border: 1px solid var(--color-border-input, #CDD5DF);\r\n background-color: var(--color-background-card, #FFFFFF);\r\n padding: var(--spacing-none) var(--spacing-3);\r\n cursor: pointer;\r\n position: relative;\r\n}\r\n\r\n.input_dropdown_container{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.input_dropdown_container.tag{\r\n min-height: 3rem;\r\n}\r\n\r\n.icon{\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.input_with_label{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.hint_text{\r\n color: var(--color-text-subtle, #697586);\r\n}\r\n\r\n.error_text{\r\n color: var(--color-text-danger, #B51726);\r\n}\r\n\r\n/* Size Styles */\r\n.input_dropdown_div.sm{\r\n height: 2.5rem;\r\n}\r\n\r\n.input_dropdown_div.md{\r\n height: 3rem;\r\n}\r\n\r\n.dot.sm{\r\n width: var(--spacing-2);\r\n height: var(--spacing-2);\r\n}\r\n\r\n.dot.md{\r\n width: 0.625rem;\r\n height: 0.625rem;\r\n}\r\n\r\n/* State Styles */\r\n.input_dropdown_div.focused{\r\n border-color: var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.input_dropdown_div.destructive{\r\n border-color: var(--color-border-danger, #B51726);\r\n}\r\n\r\n.input_dropdown_div.disabled{\r\n background-color: var(--color-background-disabled, #F6F8FA);\r\n pointer-events: none;\r\n cursor: not-allowed;\r\n}\r\n\r\n.placeholder{\r\n display: flex;\r\n justify-content: stretch;\r\n width: 100%;\r\n white-space: nowrap;\r\n}\r\n\r\n.content{\r\n display: flex;\r\n gap: var(--spacing-2);\r\n overflow: hidden; /* Clip overflowing content */\r\n /* width: 50px; */\r\n flex: 1 0 0;\r\n}\r\n\r\n.text.tag{\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: stretch;\r\n flex-wrap: wrap;\r\n gap: 0.38rem;\r\n padding: 0.4rem 0;\r\n}\r\n\r\n.added_tag{\r\n width: fit-content;\r\n}\r\n\r\n.help_icon{\r\n display: flex;\r\n align-items: center;\r\n height: fit-content;\r\n}\r\n\r\n.dropdown_icon{\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\nsvg.disabled path{\r\n stroke: var(--color-icon-disabled, #CDD5DF);\r\n}\r\n\r\n.dropdown_menu{\r\n display: flex;\r\n min-width: 100%;\r\n max-height: 300px;\r\n padding: var(--spacing-none);\r\n flex-direction: column;\r\n align-items: flex-start;\r\n align-items: stretch;\r\n border-radius: var(--rounded-sm);\r\n border: 1px solid var(--color-border-subtler, #E3E8EF);\r\n background: var(--color-surface, #FFFFFF);\r\n box-shadow: var(--shadow-sm);\r\n position: absolute;\r\n gap: var(--spacing-none);\r\n transition: 1s ease-in-out;\r\n overflow-y: auto;\r\n}\r\n\r\n.dropdown_menu.top{\r\n bottom: 105%;\r\n left: 0;\r\n z-index: 999;\r\n}\r\n\r\n.dropdown_menu.bottom{\r\n top: 105%;\r\n left: 0;\r\n z-index: 999;\r\n}\r\n\r\n/* .input_dropdown_div.sm.tag{\r\n min-height: 2.5rem;\r\n} */\r\n\r\n.input_dropdown_div.tag{\r\n min-height: 3rem;\r\n height: fit-content;\r\n}\r\n\r\n.input_dropdown_div.md.tag{\r\n min-height: 2.5rem;\r\n}\r\n\r\n.input_dropdown_div.md.tag{\r\n min-height: 3rem;\r\n}\r\n\r\n.opened{\r\n transform: rotate(180deg);\r\n transition: 0.2s ease-in-out;\r\n}\r\n\r\n::slotted([slot=\"tooltip_label\"]){\r\n white-space: nowrap;\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n::slotted([slot=\"tooltip_supporting_text\"]){\r\n min-width: fit-content;\r\n max-width: 18.5rem;\r\n color: var(--color-text-subtle, #697586);\r\n margin-top: 5rem;\r\n}\r\n\r\n::slotted([slot=\"initials\"].gray){\r\n color: #4B5565;\r\n}\r\n\r\n::slotted([slot=\"initials\"].blue){\r\n color: var(--color-text-information, #064E94);\r\n}\r\n\r\n::slotted([slot=\"initials\"].cyan){\r\n color: var(--color-text-discovery, #0086C9);\r\n}\r\n\r\n::slotted([slot=\"initials\"].pink){\r\n color: var(--color-text-pink, #DD2590);\r\n}\r\n\r\n::slotted([slot=\"initials\"].purple){\r\n color: var(--color-text-purple, #6938EF);\r\n}\r\n\r\n::slotted([slot=\"initials\"].green){\r\n color: var(--color-text-success, #079455);\r\n}\r\n\r\n::slotted([slot=\"initials\"].yellow){\r\n color: var(--color-text-warning, #DC6803);\r\n}\r\n\r\n.dropdown_search_field{\r\n background: var(--color-surface, #FFFFFF);\r\n padding: var(--spacing-2) var(--spacing-2) var(--spacing-none) var(--spacing-2);\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n}\r\n\r\n.empty_state{\r\n margin: auto;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.background{\r\n position: relative;\r\n width: 80%;\r\n}\r\n\r\n.message_background{\r\n position: absolute;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n gap: var(--spacing-1);\r\n}\r\n\r\n.illustration{\r\n width: 100px;\r\n height: 100px;\r\n}\r\n\r\n.message{\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.text{\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n flex: 1 1 auto; /* Allow it to grow and shrink */\r\n overflow: hidden; /* Prevent content from overflowing */\r\n}\r\n\r\n.selected_text{\r\n overflow: hidden; /* Hide overflowing text */\r\n text-overflow: ellipsis;\r\n white-space: nowrap; /* Prevent wrapping */\r\n flex: 1 1 auto; /* Take up available space and adjust dynamically */\r\n min-width: 0; /* Ensures it respects parent width in flexbox */\r\n}\r\n\r\n/* .new_div{\r\n background: red;\r\n display: flex;\r\n flex: 1 0 0;\r\n justify-content: space-between;\r\n} */\r\n\r\n/* .icon_and_text{\r\n background: purple;\r\n display: flex;\r\n flex: 1 0 0;\r\n} */","import { Component, Prop, h, Fragment, Element, State, getAssetPath, Listen, Event, EventEmitter, Watch } from '@stencil/core';\r\nimport { ColorTypes, DropdownTypes, GeneralSizes, StateEnum } from '../../models/reusableModels';\r\n@Component({\r\n tag: 'gb-input-dropdown',\r\n styleUrl: 'gb-input-dropdown.css',\r\n shadow: true,\r\n})\r\nexport class GbInputDropdown {\r\n @Prop() type: DropdownTypes;\r\n @Prop({ mutable: true }) state: 'default' | 'focused' | 'disabled' | 'filled';\r\n @Prop() size: GeneralSizes;\r\n @Prop() showLabel: boolean = false;\r\n @Prop() label: string = '';\r\n @Prop() placeholder: string = '';\r\n @Prop() showHintText: boolean;\r\n @Prop() hintText: string = '';\r\n @Prop() showHelpIcon: boolean;\r\n @Prop() showLeadingIcon: boolean = false;\r\n @Prop() iconSwap: string = '';\r\n @Prop() text: boolean = false;\r\n @Prop() leadingIcon: string = '';\r\n @Prop() icon: 'country' | 'avatar' | 'dot' | 'false';\r\n @Prop({ mutable: true }) items: any[] = [\r\n { name: 'Mock Item A', username: 1 },\r\n { name: 'Mock Item B', username: 3 },\r\n { name: 'Mock Item C', username: 3 },\r\n { name: 'Mock Item D', username: 3 },\r\n { name: 'Mock Item E', username: 3 },\r\n 45,\r\n 50,\r\n 20,\r\n 25,\r\n 90,\r\n 92,\r\n 53,\r\n 'Activated',\r\n 'Deactivated',\r\n 'John Doe',\r\n 'John smith',\r\n 'Jane leo'\r\n ];\r\n @Prop({ mutable: true }) value: any[] = [\r\n // { name: 'Mock Item A', username: 1, selected: false },\r\n // { name: 'Mock Item B', username: 2, selected: false },\r\n // { name: 'Mock Item C', username: 3, selected: false },\r\n // 45,\r\n // 50,\r\n // 20,\r\n // 25,\r\n // 90,\r\n // 'Activated',\r\n // 'Deactivated',\r\n // 'Transaction Status'\r\n ];\r\n @Prop() supportingText: boolean = false;\r\n @Prop() color: ColorTypes;\r\n @Prop() showBorder: boolean = false;\r\n @Prop() menuPosition: 'top' | ' bottom';\r\n @Prop() showSearchInput: boolean = false;\r\n @Prop() inputValue: string;\r\n @Prop({ mutable: true }) destructive: boolean = false;\r\n @Prop() errorText: string = '';\r\n @State() leadingIconSvg: string = '';\r\n @State() dropdownOpen: boolean = false;\r\n @State() selectedItems: any[] = [];\r\n @State() unselectedItems: any[] = [];\r\n @State() selectedItem: any;\r\n @State() searchItem: any;\r\n @State() searchResults: any;\r\n @Element() el: HTMLElement;\r\n // @Event() dropdownValue: EventEmitter<any>;\r\n @Event() dropdownItemSelected: EventEmitter<any>;\r\n\r\n dropdownRef!: HTMLElement;\r\n\r\n searchItems(event: CustomEvent<any>) {\r\n this.searchItem = event.detail;\r\n this.searchResults = this.items.filter(item => {\r\n if (typeof item === 'string') {\r\n return item.toLowerCase().includes(this.searchItem.toLowerCase());\r\n } else if (typeof item === 'number') {\r\n return item.toString().includes(this.searchItem.toString());\r\n } else if (typeof item === 'object') {\r\n return item.name.toLowerCase().includes(this.searchItem.toLowerCase());\r\n }\r\n });\r\n }\r\n\r\n @Watch('destructive')\r\n watchDestructive() {\r\n this.destructive = this.destructive;\r\n }\r\n\r\n disconnectedCallback() {\r\n document.removeEventListener('click', this.handleClickOutside);\r\n }\r\n\r\n @Listen('click', { target: 'document' })\r\n handleClickOutside(event: MouseEvent) {\r\n if (this.dropdownOpen && !this.el.contains(event.target as Node)) {\r\n this.dropdownOpen = false;\r\n }\r\n }\r\n\r\n toggleDropdown(event: MouseEvent) {\r\n if (this.state !== 'disabled') {\r\n this.dropdownOpen = !this.dropdownOpen;\r\n }\r\n\r\n // console.log(this.inputValue);\r\n event.stopPropagation();\r\n }\r\n\r\n isItemSelected(item) {\r\n const isObject = typeof item === 'object';\r\n if (this.value.length === 0) {\r\n return this.selectedItems.some(i => (isObject ? i.name === item.name : i === item));\r\n } else if (this.value.length > 0) {\r\n return this.value.some(i => (isObject ? i.name === item.name : i === item));\r\n }\r\n }\r\n\r\n async loadIcon(iconName: string) {\r\n const iconPath = getAssetPath(`${iconName}`);\r\n const response = await fetch(iconPath);\r\n const svg = await response.text();\r\n this.leadingIconSvg = svg;\r\n }\r\n\r\n getAvatarSize() {\r\n switch (this.size) {\r\n case 'sm':\r\n return 'xs';\r\n case 'md':\r\n return 'xs';\r\n }\r\n }\r\n\r\n sortDropdownItems(menuItems: any[]): any[] {\r\n return menuItems.sort((a, b) => {\r\n if (a.selected && !b.selected) {\r\n return -1; // Move selected items up\r\n } else if (!a.selected && b.selected) {\r\n return 1; // Keep unselected items down\r\n }\r\n return 0; // Keep order if both are selected or unselected\r\n });\r\n }\r\n\r\n handleItemSelect(item) {\r\n this.destructive = false;\r\n\r\n if (this.type === 'tags') {\r\n if (this.state === 'default') {\r\n this.selectMultipleItems(item);\r\n // console.log(this.state);\r\n } else if (this.state === 'filled' && this.value.length > 0) {\r\n this.state = 'default';\r\n this.value.length = 0;\r\n // console.log(this.state);\r\n this.selectMultipleItems(item);\r\n } else if (this.state === 'filled' && this.value.length === 0) {\r\n this.selectMultipleItems(item);\r\n // console.log(this.state);\r\n }\r\n } else {\r\n if (this.state === 'default') {\r\n this.singleItemSelect(item);\r\n // console.log(this.state);\r\n } else if (this.state === 'filled' && this.value.length > 0) {\r\n this.state = 'default';\r\n this.value.length = 0;\r\n this.singleItemSelect(item);\r\n // console.log(this.state);\r\n } else if (this.state === 'filled' && this.value.length === 0) {\r\n this.singleItemSelect(item);\r\n // console.log(this.state);\r\n }\r\n }\r\n\r\n this.state = this.selectedItems.length > 0 ? 'filled' : 'default';\r\n // console.log(this.state)\r\n }\r\n\r\n singleItemSelect(item) {\r\n // Handle single selection for other types\r\n this.selectedItem = item; // Store single selected item\r\n this.selectedItems = [item]; // Ensure only one item in selectedItems\r\n\r\n // Close the dropdown after selection for single selection types\r\n this.dropdownOpen = false;\r\n // console.log(this.selectedItems);\r\n this.dropdownItemSelected.emit(this.selectedItem);\r\n }\r\n\r\n selectMultipleItems(item) {\r\n const isObject = typeof item === 'object';\r\n\r\n const isSelected = this.selectedItems.some(i => (isObject ? i.name === item.name : i === item));\r\n\r\n if (isSelected) {\r\n // Unselect item: Move it from selectedItems to unselectedItems\r\n this.selectedItems = this.selectedItems.filter(i => (isObject ? i.name !== item.name : i !== item));\r\n if (!this.unselectedItems.some(i => (isObject ? i.name === item.name : i === item))) {\r\n this.unselectedItems = [...this.unselectedItems, item];\r\n }\r\n } else {\r\n // Select item: Move it from unselectedItems to selectedItems\r\n this.selectedItems = [...this.selectedItems, item];\r\n this.unselectedItems = this.unselectedItems.filter(i => (isObject ? i.name !== item.name : i !== item));\r\n // console.log(this.selectedItems);\r\n\r\n this.dropdownItemSelected.emit(this.selectedItems);\r\n }\r\n }\r\n\r\n handleTagRemove(item) {\r\n if (this.value.length === 0) {\r\n const isObject = typeof item === 'object';\r\n\r\n // Remove item from selectedItems\r\n this.selectedItems = this.selectedItems.filter(i => (isObject ? i.name !== item.name : i !== item));\r\n\r\n // Add item back to unselectedItems if not already present\r\n if (!this.unselectedItems.some(i => (isObject ? i.name === item.name : i === item))) {\r\n this.unselectedItems = [...this.unselectedItems, item];\r\n }\r\n\r\n // Optionally update state or emit event\r\n this.state = this.selectedItems.length > 0 ? 'filled' : 'default';\r\n } else if (this.value.length > 0) {\r\n const isObject = typeof item === 'object';\r\n\r\n // Remove item from selectedItems\r\n this.value = this.value.filter(i => (isObject ? i.name !== item.name : i !== item));\r\n this.selectedItems = this.value;\r\n\r\n // Add item back to unselectedItems if not already present\r\n if (!this.unselectedItems.some(i => (isObject ? i.name === item.name : i === item))) {\r\n this.unselectedItems = [...this.unselectedItems, item];\r\n }\r\n\r\n // Optionally update state or emit event\r\n this.state = this.selectedItems.length > 0 ? 'filled' : 'default';\r\n }\r\n }\r\n\r\n componentWillRender() {\r\n if (this.value.length > 0 && this.state === 'default') {\r\n this.state = 'filled';\r\n }\r\n }\r\n\r\n // @Method()\r\n // clearSelection() {}\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.leadingIcon);\r\n\r\n if (this.type !== 'tags') {\r\n this.selectedItem = null; // For single selection types\r\n }\r\n\r\n if (this.value.length > 0) {\r\n if (Array.isArray(this.items)) {\r\n this.selectedItems = [];\r\n this.unselectedItems = [];\r\n\r\n // Separate objects from primitive values\r\n const objectValues = this.value.filter(val => typeof val === 'object' && val !== null);\r\n const primitiveValues = this.value.filter(val => typeof val !== 'object');\r\n\r\n // Find selected items\r\n this.selectedItems = this.items.filter(item => {\r\n if (typeof item === 'object' && item !== null) {\r\n return objectValues.some(val => val.name === item.name);\r\n } else {\r\n return primitiveValues.includes(item);\r\n }\r\n });\r\n\r\n // Find unselected items\r\n this.unselectedItems = this.items.filter(item => {\r\n if (typeof item === 'object' && item !== null) {\r\n return !objectValues.some(val => val.name === item.name);\r\n } else {\r\n return !primitiveValues.includes(item);\r\n }\r\n });\r\n }\r\n } else {\r\n // If value array is empty, all items are unselected\r\n this.selectedItems = [];\r\n this.unselectedItems = [...this.items];\r\n }\r\n\r\n // console.log('Selected Items:', this.selectedItems);\r\n // console.log('Unselected Items:', this.unselectedItems);\r\n }\r\n\r\n componentDidLoad() {\r\n if (this.type !== 'tags') {\r\n document.addEventListener('click', this.handleClickOutside);\r\n }\r\n\r\n const slottedInitials = this.el.querySelector('[slot=\"initials\"]');\r\n\r\n const mainTextSlot = this.el.querySelector('[slot=\"tooltip_label\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"tooltip_supporting_text\"]');\r\n\r\n if (slottedInitials) {\r\n slottedInitials.classList.add('text-xxs-semi-bold');\r\n }\r\n\r\n if (mainTextSlot) {\r\n mainTextSlot.classList.add('text-xs-semi-bold');\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add('text-xs-regular');\r\n }\r\n }\r\n\r\n applyColorToInitials() {\r\n switch (this.color) {\r\n case 'gray':\r\n return 'gray';\r\n case 'blue':\r\n return 'blue';\r\n case 'cyan':\r\n return 'cyan';\r\n case 'pink':\r\n return 'pink';\r\n case 'purple':\r\n return 'purple';\r\n case 'green':\r\n return 'green';\r\n case 'yellow':\r\n return 'yellow';\r\n }\r\n }\r\n\r\n render() {\r\n const emptyStateBackground = getAssetPath('assets/empty-state-background.svg');\r\n const illustration = getAssetPath('assets/empty-state-no-data.svg');\r\n\r\n return [\r\n <div class={`input_dropdown_container ${this.type === 'tags' ? 'tag' : ''}`}>\r\n <div class={`input_with_label`}>\r\n {this.showLabel && (\r\n <p class=\"text-sm-regular\" style={{ color: '#4B5565' }}>\r\n {this.label.charAt(0).toUpperCase() + this.label.slice(1).toLowerCase()}\r\n </p>\r\n )}\r\n <div\r\n class={`input_dropdown_div ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''} ${this.type === 'tags' ? 'tag' : ''} ${\r\n this.dropdownOpen ? 'focused' : ''\r\n }`}\r\n onClick={e => this.toggleDropdown(e)}\r\n >\r\n {this.type === 'icon_leading' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n d=\"M5.48131 12.9013C4.30234 13.6033 1.21114 15.0368 3.09388 16.8305C4.01359 17.7067 5.03791 18.3333 6.32572 18.3333H13.6743C14.9621 18.3333 15.9864 17.7067 16.9061 16.8305C18.7889 15.0368 15.6977 13.6033 14.5187 12.9013C11.754 11.2551 8.24599 11.2551 5.48131 12.9013Z\"\r\n stroke=\"#697586\"\r\n stroke-width=\"1.66667\"\r\n />\r\n <path\r\n d=\"M13.75 5.41667C13.75 7.48774 12.0711 9.16667 10 9.16667C7.92893 9.16667 6.25 7.48774 6.25 5.41667C6.25 3.3456 7.92893 1.66667 10 1.66667C12.0711 1.66667 13.75 3.3456 13.75 5.41667Z\"\r\n stroke=\"#697586\"\r\n stroke-width=\"1.66667\"\r\n />\r\n </svg>\r\n )}\r\n {this.type === 'avatar_leading' && (\r\n <>\r\n {this.state === 'default' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n d=\"M5.48131 12.9013C4.30234 13.6033 1.21114 15.0368 3.09388 16.8305C4.01359 17.7067 5.03791 18.3333 6.32572 18.3333H13.6743C14.9621 18.3333 15.9864 17.7067 16.9061 16.8305C18.7889 15.0368 15.6977 13.6033 14.5187 12.9013C11.754 11.2551 8.24599 11.2551 5.48131 12.9013Z\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.66667\"\r\n />\r\n <path\r\n d=\"M13.75 5.41666C13.75 7.48772 12.0711 9.16666 10 9.16666C7.92893 9.16666 6.25 7.48772 6.25 5.41666C6.25 3.34559 7.92893 1.66666 10 1.66666C12.0711 1.66666 13.75 3.34559 13.75 5.41666Z\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.66667\"\r\n />\r\n </svg>\r\n )}\r\n {this.state === 'filled' && (\r\n <gb-avatar size=\"xs\" text={this.text} color={this.color} show-border={this.showBorder}>\r\n {this.selectedItems.map(item => (\r\n <>\r\n {typeof item === 'object' ? (\r\n <h1 slot=\"initials\">{item.name.split(' ').map(part => part.charAt(0).toUpperCase())}</h1>\r\n ) : (\r\n <h1 slot=\"initials\">{item.split(' ').map(part => part.charAt(0).toUpperCase())}</h1>\r\n )}\r\n </>\r\n ))}\r\n </gb-avatar>\r\n )}\r\n </>\r\n )}\r\n {this.showLeadingIcon && <>{this.type === 'search' || this.type === 'tags' ? <div class={`icon`} innerHTML={this.leadingIconSvg}></div> : null}</>}\r\n {this.type === 'dot_leading' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" class={`dot ${this.size}`}>\r\n <circle cx=\"5\" cy=\"5\" r=\"4\" fill=\"#079455\" />\r\n </svg>\r\n )}\r\n <>\r\n {this.state === 'default' && (\r\n <>\r\n {this.placeholder && (\r\n <div class=\"placeholder\">\r\n <p class=\"text-md-regular\" style={{ color: '#CDD5DF' }}>\r\n {this.placeholder}\r\n </p>\r\n </div>\r\n )}\r\n </>\r\n )}\r\n {this.state === 'filled' && (\r\n <>\r\n <div class={`content`}>\r\n <div class={`text text-md-regular ${this.type === 'tags' ? 'tag' : ''}`} style={{ color: '#4B5565' }}>\r\n {this.type === 'tags' ? (\r\n <>\r\n {this.value.length === 0 ? (\r\n <>\r\n {this.selectedItems.map((item, index) =>\r\n typeof item === 'object' ? (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\" onClick={() => this.handleTagRemove(item)}>\r\n <p class=\"text-xs-medium\">{item.name.split(' ')[0]}</p>\r\n <h1 slot=\"initials\" class=\"text-xxs-semi-bold\">\r\n {item.name\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n </gb-tag>\r\n </div>\r\n ) : (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\" onClick={() => this.handleTagRemove(item)}>\r\n <p class=\"text-xs-medium\">{item}</p>\r\n </gb-tag>\r\n </div>\r\n ),\r\n )}\r\n </>\r\n ) : (\r\n <>\r\n {this.value.map((item, index) =>\r\n typeof item === 'object' ? (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\" onClick={() => this.handleTagRemove(item)}>\r\n <p class=\"text-xs-medium\">{item.name.split(' ')[0]}</p>\r\n <h1 slot=\"initials\" class=\"text-xxs-semi-bold\">\r\n {item.name\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n </gb-tag>\r\n </div>\r\n ) : (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\" onClick={() => this.handleTagRemove(item)}>\r\n <p class=\"text-xs-medium\">{item}</p>\r\n </gb-tag>\r\n </div>\r\n ),\r\n )}\r\n </>\r\n )}\r\n </>\r\n ) : (\r\n <p class=\"selected_text\">\r\n {this.value.length === 0 ? this.selectedItem?.name || this.selectedItem : <>{this.value.map(item => (typeof item === 'object' ? item.name : item))}</>}\r\n </p>\r\n )}\r\n </div>\r\n {this.supportingText && (\r\n <div class=\"supporting_text text-sm-regular\" style={{ color: '#697586' }}>\r\n {this.type !== 'tags' && (\r\n <>{this.value.length === 0 ? <>{this.selectedItem.username}</> : <>{this.value.map(item => typeof item === 'object' && item.username)}</>}</>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </>\r\n )}\r\n {this.state === 'disabled' && (\r\n <>\r\n <div class={`content`}>\r\n <div class={`text text-md-regular ${this.type === 'tags' ? 'tag' : ''}`} style={{ color: '#4B5565' }}>\r\n {this.type === 'tags' ? (\r\n <>\r\n {this.value.map((item, index) =>\r\n typeof item === 'object' ? (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\">\r\n <p class=\"text-xs-medium\">{item.name.split(' ')[0]}</p>\r\n <h1 slot=\"initials\" class=\"text-xxs-semi-bold\">\r\n {item.name\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n </gb-tag>\r\n </div>\r\n ) : (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\">\r\n <p class=\"text-xs-medium\">{item}</p>\r\n </gb-tag>\r\n </div>\r\n ),\r\n )}\r\n </>\r\n ) : (\r\n <>{<>{this.value.map(item => (typeof item === 'object' ? item.name : item))}</>}</>\r\n )}\r\n </div>\r\n {this.supportingText && (\r\n <div class=\"supporting_text text-sm-regular\" style={{ color: '#697586' }}>\r\n {this.type !== 'tags' && (\r\n <>{this.value.length === 0 ? <>{this.selectedItem.username}</> : <>{this.value.map(item => typeof item === 'object' && <>{item.username}</>)}</>}</>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </>\r\n )}\r\n </>\r\n {this.showHelpIcon && (\r\n <div class={`help_icon`}>\r\n <gb-help-tooltip show-supporting-text={true}>\r\n <slot name=\"tooltip_label\" slot=\"label\"></slot>\r\n <slot name=\"tooltip_supporting_text\" slot=\"supporting_text\"></slot>\r\n </gb-help-tooltip>\r\n </div>\r\n )}\r\n {this.type !== 'search' && (\r\n <div class={`dropdown_icon ${this.dropdownOpen ? 'opened' : ''}`}>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" class={`${this.state}`}>\r\n <path\r\n d=\"M15 7.50004C15 7.50004 11.3176 12.5 9.99996 12.5C8.68237 12.5 5 7.5 5 7.5\"\r\n stroke=\"#697586\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n </div>\r\n )}\r\n <>\r\n {this.dropdownOpen && (\r\n <div class={`dropdown_menu ${this.menuPosition}`} ref={el => (this.dropdownRef = el)} onClick={e => e.stopPropagation()}>\r\n {this.showSearchInput && (\r\n <div class=\"dropdown_search_field\">\r\n <gb-input-field\r\n size=\"sm\"\r\n value={this.inputValue}\r\n show-close-button={this.inputValue ? true : false}\r\n icon-swap=\"assets/search-01.svg\"\r\n placeholder=\"Search banks\"\r\n type=\"icon_leading\"\r\n labelText=\"label\"\r\n idOfInput=\"3\"\r\n onInputValueChanged={this.searchItems.bind(this)}\r\n ></gb-input-field>\r\n </div>\r\n )}\r\n {this.searchItem ? (\r\n <>\r\n {this.searchItem !== '' && this.searchResults.length > 0 ? (\r\n <>\r\n {this.searchResults.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type={this.type === 'search' ? 'checkbox' : this.type === 'tags' ? 'checkbox' : this.type}\r\n state={StateEnum.Default}\r\n supporting-text={this.supportingText}\r\n selected={this.isItemSelected(item)}\r\n onClick={() => this.handleItemSelect(item)}\r\n >\r\n {typeof item === 'object' ? (\r\n <>\r\n <p slot=\"name\">{item.name}</p>\r\n <p slot=\"supporting_text\">{item.username}</p>\r\n </>\r\n ) : (\r\n <p slot=\"name\">{item}</p>\r\n )}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </>\r\n ) : this.searchItem !== '' && this.searchResults.length === 0 ? (\r\n //Empty state for when there are no search results\r\n <div class=\"empty_state\">\r\n <img src={emptyStateBackground} class=\"background\" alt=\"\" />\r\n <div class=\"message_background\">\r\n <img src={illustration} alt=\"\" class=\"illustration\" />\r\n <p class=\"message text-md-semi-bold\">No results available</p>\r\n </div>\r\n </div>\r\n ) : null}\r\n </>\r\n ) : (\r\n <>\r\n {this.type === 'tags' ? (\r\n <>\r\n {this.selectedItems.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type={this.type === 'search' ? 'checkbox' : this.type === 'tags' ? 'checkbox' : this.type}\r\n state={StateEnum.Default}\r\n supporting-text={this.supportingText}\r\n selected={true}\r\n onClick={() => this.handleItemSelect(item)}\r\n >\r\n {typeof item === 'object' ? (\r\n <>\r\n <p slot=\"name\">{item.name}</p>\r\n <p slot=\"supporting_text\">{item.username}</p>\r\n <h1 slot=\"initials\">{item.name.split(' ').map(part => part.charAt(0).toUpperCase())}</h1>\r\n </>\r\n ) : (\r\n <>\r\n <p slot=\"name\">{item}</p>\r\n <h1 slot=\"initials\">{item.split(' ').map(part => part.charAt(0).toUpperCase())}</h1>\r\n </>\r\n )}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n {this.unselectedItems.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type={this.type === 'search' ? 'checkbox' : this.type === 'tags' ? 'checkbox' : this.type}\r\n state={StateEnum.Default}\r\n supporting-text={this.supportingText}\r\n selected={false}\r\n onClick={() => this.handleItemSelect(item)}\r\n >\r\n {typeof item === 'object' ? (\r\n <>\r\n <p slot=\"name\">{item.name}</p>\r\n <p slot=\"supporting_text\">{item.username}</p>\r\n </>\r\n ) : (\r\n <p slot=\"name\">{item}</p>\r\n )}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </>\r\n ) : (\r\n <>\r\n {this.items.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type={this.type === 'search' ? 'checkbox' : this.type === 'tags' ? 'checkbox' : this.type}\r\n state={StateEnum.Default}\r\n supporting-text={this.supportingText}\r\n selected={this.isItemSelected(item)}\r\n color={this.color}\r\n onClick={() => this.handleItemSelect(item)}\r\n >\r\n {typeof item === 'object' ? (\r\n <>\r\n <p slot=\"name\">{item.name}</p>\r\n <h1 slot=\"initials\">\r\n {item.name\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n <p slot=\"supporting_text\">{item.username}</p>\r\n </>\r\n ) : typeof item === 'string' ? (\r\n <>\r\n <p slot=\"name\">{item}</p>\r\n <h1 slot=\"initials\">\r\n {item\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n </>\r\n ) : (\r\n <>\r\n <p slot=\"name\">{item}</p>\r\n <h1 slot=\"initials\">{item}</h1>\r\n </>\r\n )}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </>\r\n )}\r\n </>\r\n )}\r\n </div>\r\n )}\r\n </>\r\n </div>\r\n </div>\r\n {/* <button onClick={() => this.clearValue()}>Clear</button> */}\r\n {this.showHintText && <>{!this.destructive ? <p class=\"hint_text text-sm-regular\">{this.hintText}</p> : <p class=\"error_text text-sm-regular\">{this.errorText}</p>}</>}\r\n </div>,\r\n ];\r\n }\r\n}\r\n"],"version":3}
1
+ {"file":"p-BH_kBl5M.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/gb-input-dropdown/gb-input-dropdown.css?tag=gb-input-dropdown&encapsulation=shadow","src/components/gb-input-dropdown/gb-input-dropdown.tsx"],"sourcesContent":["@import './../../global/global.css';\r\n\r\n.input_dropdown_div{\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n border-radius: 0.5rem;\r\n gap: var(--spacing-3);\r\n border: 1px solid var(--color-border-input, #CDD5DF);\r\n background-color: var(--color-background-card, #FFFFFF);\r\n padding: var(--spacing-none) var(--spacing-3);\r\n cursor: pointer;\r\n position: relative;\r\n}\r\n\r\n.input_dropdown_container{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.input_dropdown_container.tag{\r\n min-height: 3rem;\r\n}\r\n\r\n.icon{\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.input_with_label{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.hint_text{\r\n color: var(--color-text-subtle, #697586);\r\n}\r\n\r\n.error_text{\r\n color: var(--color-text-danger, #B51726);\r\n}\r\n\r\n/* Size Styles */\r\n.input_dropdown_div.sm{\r\n height: 2.5rem;\r\n}\r\n\r\n.input_dropdown_div.md{\r\n height: 3rem;\r\n}\r\n\r\n.dot.sm{\r\n width: var(--spacing-2);\r\n height: var(--spacing-2);\r\n}\r\n\r\n.dot.md{\r\n width: 0.625rem;\r\n height: 0.625rem;\r\n}\r\n\r\n/* State Styles */\r\n.input_dropdown_div.focused{\r\n border-color: var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.input_dropdown_div.destructive{\r\n border-color: var(--color-border-danger, #B51726);\r\n}\r\n\r\n.input_dropdown_div.disabled{\r\n background-color: var(--color-background-disabled, #F6F8FA);\r\n pointer-events: none;\r\n cursor: not-allowed;\r\n}\r\n\r\n.placeholder{\r\n display: flex;\r\n justify-content: stretch;\r\n width: 100%;\r\n white-space: nowrap;\r\n}\r\n\r\n.content{\r\n display: flex;\r\n gap: var(--spacing-2);\r\n overflow: hidden; /* Clip overflowing content */\r\n /* width: 50px; */\r\n flex: 1 0 0;\r\n}\r\n\r\n.text.tag{\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: stretch;\r\n flex-wrap: wrap;\r\n gap: 0.38rem;\r\n padding: 0.4rem 0;\r\n}\r\n\r\n.added_tag{\r\n width: fit-content;\r\n}\r\n\r\n.help_icon{\r\n display: flex;\r\n align-items: center;\r\n height: fit-content;\r\n}\r\n\r\n.dropdown_icon{\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\nsvg.disabled path{\r\n stroke: var(--color-icon-disabled, #CDD5DF);\r\n}\r\n\r\n.dropdown_menu{\r\n display: flex;\r\n min-width: 100%;\r\n max-height: 300px;\r\n padding: var(--spacing-none);\r\n flex-direction: column;\r\n align-items: flex-start;\r\n align-items: stretch;\r\n border-radius: var(--rounded-sm);\r\n border: 1px solid var(--color-border-subtler, #E3E8EF);\r\n background: var(--color-surface, #FFFFFF);\r\n box-shadow: var(--shadow-sm);\r\n position: absolute;\r\n gap: var(--spacing-none);\r\n transition: 1s ease-in-out;\r\n overflow-y: auto;\r\n}\r\n\r\n.dropdown_menu.top{\r\n bottom: 105%;\r\n left: 0;\r\n z-index: 999;\r\n}\r\n\r\n.dropdown_menu.bottom{\r\n top: 105%;\r\n left: 0;\r\n z-index: 999;\r\n}\r\n\r\n/* .input_dropdown_div.sm.tag{\r\n min-height: 2.5rem;\r\n} */\r\n\r\n.input_dropdown_div.tag{\r\n min-height: 3rem;\r\n height: fit-content;\r\n}\r\n\r\n.input_dropdown_div.md.tag{\r\n min-height: 2.5rem;\r\n}\r\n\r\n.input_dropdown_div.md.tag{\r\n min-height: 3rem;\r\n}\r\n\r\n.opened{\r\n transform: rotate(180deg);\r\n transition: 0.2s ease-in-out;\r\n}\r\n\r\n::slotted([slot=\"tooltip_label\"]){\r\n white-space: nowrap;\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n::slotted([slot=\"tooltip_supporting_text\"]){\r\n min-width: fit-content;\r\n max-width: 18.5rem;\r\n color: var(--color-text-subtle, #697586);\r\n margin-top: 5rem;\r\n}\r\n\r\n::slotted([slot=\"initials\"].gray){\r\n color: #4B5565;\r\n}\r\n\r\n::slotted([slot=\"initials\"].blue){\r\n color: var(--color-text-information, #064E94);\r\n}\r\n\r\n::slotted([slot=\"initials\"].cyan){\r\n color: var(--color-text-discovery, #0086C9);\r\n}\r\n\r\n::slotted([slot=\"initials\"].pink){\r\n color: var(--color-text-pink, #DD2590);\r\n}\r\n\r\n::slotted([slot=\"initials\"].purple){\r\n color: var(--color-text-purple, #6938EF);\r\n}\r\n\r\n::slotted([slot=\"initials\"].green){\r\n color: var(--color-text-success, #079455);\r\n}\r\n\r\n::slotted([slot=\"initials\"].yellow){\r\n color: var(--color-text-warning, #DC6803);\r\n}\r\n\r\n.dropdown_search_field{\r\n background: var(--color-surface, #FFFFFF);\r\n padding: var(--spacing-2) var(--spacing-2) var(--spacing-none) var(--spacing-2);\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n}\r\n\r\n.empty_state{\r\n margin: auto;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.background{\r\n position: relative;\r\n width: 80%;\r\n}\r\n\r\n.message_background{\r\n position: absolute;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n gap: var(--spacing-1);\r\n}\r\n\r\n.illustration{\r\n width: 100px;\r\n height: 100px;\r\n}\r\n\r\n.message{\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.text{\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n flex: 1 1 auto; /* Allow it to grow and shrink */\r\n overflow: hidden; /* Prevent content from overflowing */\r\n}\r\n\r\n.selected_text{\r\n overflow: hidden; /* Hide overflowing text */\r\n text-overflow: ellipsis;\r\n white-space: nowrap; /* Prevent wrapping */\r\n flex: 1 1 auto; /* Take up available space and adjust dynamically */\r\n min-width: 0; /* Ensures it respects parent width in flexbox */\r\n}\r\n\r\n/* .new_div{\r\n background: red;\r\n display: flex;\r\n flex: 1 0 0;\r\n justify-content: space-between;\r\n} */\r\n\r\n/* .icon_and_text{\r\n background: purple;\r\n display: flex;\r\n flex: 1 0 0;\r\n} */","import { Component, Prop, h, Fragment, Element, State, getAssetPath, Listen, Event, EventEmitter, Watch } from '@stencil/core';\r\nimport { ColorTypes, DropdownTypes, GeneralSizes, StateEnum } from '../../models/reusableModels';\r\n@Component({\r\n tag: 'gb-input-dropdown',\r\n styleUrl: 'gb-input-dropdown.css',\r\n shadow: true,\r\n})\r\nexport class GbInputDropdown {\r\n @Prop() type: DropdownTypes;\r\n @Prop({ mutable: true }) state: 'default' | 'focused' | 'disabled' | 'filled';\r\n @Prop() size: GeneralSizes;\r\n @Prop() showLabel: boolean = false;\r\n @Prop() label: string = '';\r\n @Prop() placeholder: string = '';\r\n @Prop() showHintText: boolean;\r\n @Prop() hintText: string = '';\r\n @Prop() showHelpIcon: boolean;\r\n @Prop() showLeadingIcon: boolean = false;\r\n @Prop() iconSwap: string = '';\r\n @Prop() text: boolean = false;\r\n @Prop() leadingIcon: string = '';\r\n @Prop() icon: 'country' | 'avatar' | 'dot' | 'false';\r\n @Prop({ mutable: true }) items: any[] = [\r\n { name: 'Mock Item A', username: 1 },\r\n { name: 'Mock Item B', username: 3 },\r\n { name: 'Mock Item C', username: 3 },\r\n { name: 'Mock Item D', username: 3 },\r\n { name: 'Mock Item E', username: 3 },\r\n 45,\r\n 50,\r\n 20,\r\n 25,\r\n 90,\r\n 92,\r\n 53,\r\n 'Activated',\r\n 'Deactivated',\r\n 'John Doe',\r\n 'John smith',\r\n 'Jane leo'\r\n ];\r\n @Prop({ mutable: true }) value: any[] = [\r\n // { name: 'Mock Item A', username: 1, selected: false },\r\n // { name: 'Mock Item B', username: 2, selected: false },\r\n // { name: 'Mock Item C', username: 3, selected: false },\r\n // 45,\r\n // 50,\r\n // 20,\r\n // 25,\r\n // 90,\r\n // 'Activated',\r\n // 'Deactivated',\r\n // 'Transaction Status'\r\n ];\r\n @Prop() supportingText: boolean = false;\r\n @Prop() color: ColorTypes;\r\n @Prop() showBorder: boolean = false;\r\n @Prop() menuPosition: 'top' | ' bottom';\r\n @Prop() showSearchInput: boolean = false;\r\n @Prop() inputValue: string;\r\n @Prop({ mutable: true }) destructive: boolean = false;\r\n @Prop() errorText: string = '';\r\n @State() leadingIconSvg: string = '';\r\n @State() dropdownOpen: boolean = false;\r\n @State() selectedItems: any[] = [];\r\n @State() unselectedItems: any[] = [];\r\n @State() selectedItem: any;\r\n @State() searchItem: any;\r\n @State() searchResults: any;\r\n @Element() el: HTMLElement;\r\n // @Event() dropdownValue: EventEmitter<any>;\r\n @Event() dropdownItemSelected: EventEmitter<any>;\r\n\r\n dropdownRef!: HTMLElement;\r\n\r\n searchItems(event: CustomEvent<any>) {\r\n this.searchItem = event.detail;\r\n this.searchResults = this.items.filter(item => {\r\n if (typeof item === 'string') {\r\n return item.toLowerCase().includes(this.searchItem.toLowerCase());\r\n } else if (typeof item === 'number') {\r\n return item.toString().includes(this.searchItem.toString());\r\n } else if (typeof item === 'object') {\r\n return item.name.toLowerCase().includes(this.searchItem.toLowerCase());\r\n }\r\n });\r\n }\r\n\r\n @Watch('destructive')\r\n watchDestructive() {\r\n this.destructive = this.destructive;\r\n }\r\n\r\n disconnectedCallback() {\r\n document.removeEventListener('click', this.handleClickOutside);\r\n }\r\n\r\n @Listen('click', { target: 'document' })\r\n handleClickOutside(event: MouseEvent) {\r\n if (this.dropdownOpen && !this.el.contains(event.target as Node)) {\r\n this.dropdownOpen = false;\r\n }\r\n }\r\n\r\n toggleDropdown(event: MouseEvent) {\r\n if (this.state !== 'disabled') {\r\n this.dropdownOpen = !this.dropdownOpen;\r\n }\r\n\r\n // console.log(this.inputValue);\r\n event.stopPropagation();\r\n }\r\n\r\n isItemSelected(item) {\r\n const isObject = typeof item === 'object';\r\n if (this.value.length === 0) {\r\n return this.selectedItems.some(i => (isObject ? i.name === item.name : i === item));\r\n } else if (this.value.length > 0) {\r\n return this.value.some(i => (isObject ? i.name === item.name : i === item));\r\n }\r\n }\r\n\r\n async loadIcon(iconName: string) {\r\n const iconPath = getAssetPath(`${iconName}`);\r\n const response = await fetch(iconPath);\r\n const svg = await response.text();\r\n this.leadingIconSvg = svg;\r\n }\r\n\r\n getAvatarSize() {\r\n switch (this.size) {\r\n case 'sm':\r\n return 'xs';\r\n case 'md':\r\n return 'xs';\r\n }\r\n }\r\n\r\n sortDropdownItems(menuItems: any[]): any[] {\r\n return menuItems.sort((a, b) => {\r\n if (a.selected && !b.selected) {\r\n return -1; // Move selected items up\r\n } else if (!a.selected && b.selected) {\r\n return 1; // Keep unselected items down\r\n }\r\n return 0; // Keep order if both are selected or unselected\r\n });\r\n }\r\n\r\n handleItemSelect(item) {\r\n this.destructive = false;\r\n\r\n if (this.type === 'tags') {\r\n if (this.state === 'default') {\r\n this.selectMultipleItems(item);\r\n // console.log(this.state);\r\n } else if (this.state === 'filled' && this.value.length > 0) {\r\n this.state = 'default';\r\n this.value.length = 0;\r\n // console.log(this.state);\r\n this.selectMultipleItems(item);\r\n } else if (this.state === 'filled' && this.value.length === 0) {\r\n this.selectMultipleItems(item);\r\n // console.log(this.state);\r\n }\r\n } else {\r\n if (this.state === 'default') {\r\n this.singleItemSelect(item);\r\n // console.log(this.state);\r\n } else if (this.state === 'filled' && this.value.length > 0) {\r\n this.state = 'default';\r\n this.value.length = 0;\r\n this.singleItemSelect(item);\r\n // console.log(this.state);\r\n } else if (this.state === 'filled' && this.value.length === 0) {\r\n this.singleItemSelect(item);\r\n // console.log(this.state);\r\n }\r\n }\r\n\r\n this.state = this.selectedItems.length > 0 ? 'filled' : 'default';\r\n // console.log(this.state)\r\n }\r\n\r\n singleItemSelect(item) {\r\n // Handle single selection for other types\r\n this.selectedItem = item; // Store single selected item\r\n this.selectedItems = [item]; // Ensure only one item in selectedItems\r\n\r\n // Close the dropdown after selection for single selection types\r\n this.dropdownOpen = false;\r\n // console.log(this.selectedItems);\r\n this.dropdownItemSelected.emit(this.selectedItem);\r\n }\r\n\r\n selectMultipleItems(item) {\r\n const isObject = typeof item === 'object';\r\n\r\n const isSelected = this.selectedItems.some(i => (isObject ? i.name === item.name : i === item));\r\n\r\n if (isSelected) {\r\n // Unselect item: Move it from selectedItems to unselectedItems\r\n this.selectedItems = this.selectedItems.filter(i => (isObject ? i.name !== item.name : i !== item));\r\n if (!this.unselectedItems.some(i => (isObject ? i.name === item.name : i === item))) {\r\n this.unselectedItems = [...this.unselectedItems, item];\r\n }\r\n } else {\r\n // Select item: Move it from unselectedItems to selectedItems\r\n this.selectedItems = [...this.selectedItems, item];\r\n this.unselectedItems = this.unselectedItems.filter(i => (isObject ? i.name !== item.name : i !== item));\r\n // console.log(this.selectedItems);\r\n\r\n this.dropdownItemSelected.emit(this.selectedItems);\r\n }\r\n }\r\n\r\n handleTagRemove(item) {\r\n if (this.value.length === 0) {\r\n const isObject = typeof item === 'object';\r\n\r\n // Remove item from selectedItems\r\n this.selectedItems = this.selectedItems.filter(i => (isObject ? i.name !== item.name : i !== item));\r\n\r\n // Add item back to unselectedItems if not already present\r\n if (!this.unselectedItems.some(i => (isObject ? i.name === item.name : i === item))) {\r\n this.unselectedItems = [...this.unselectedItems, item];\r\n }\r\n\r\n // Optionally update state or emit event\r\n this.state = this.selectedItems.length > 0 ? 'filled' : 'default';\r\n } else if (this.value.length > 0) {\r\n const isObject = typeof item === 'object';\r\n\r\n // Remove item from selectedItems\r\n this.value = this.value.filter(i => (isObject ? i.name !== item.name : i !== item));\r\n this.selectedItems = this.value;\r\n\r\n // Add item back to unselectedItems if not already present\r\n if (!this.unselectedItems.some(i => (isObject ? i.name === item.name : i === item))) {\r\n this.unselectedItems = [...this.unselectedItems, item];\r\n }\r\n\r\n // Optionally update state or emit event\r\n this.state = this.selectedItems.length > 0 ? 'filled' : 'default';\r\n }\r\n }\r\n\r\n componentWillRender() {\r\n if (this.value.length > 0 && this.state === 'default') {\r\n this.state = 'filled';\r\n }\r\n }\r\n\r\n // @Method()\r\n // clearSelection() {}\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.leadingIcon);\r\n\r\n if (this.type !== 'tags') {\r\n this.selectedItem = null; // For single selection types\r\n }\r\n\r\n if (this.value.length > 0) {\r\n if (Array.isArray(this.items)) {\r\n this.selectedItems = [];\r\n this.unselectedItems = [];\r\n\r\n // Separate objects from primitive values\r\n const objectValues = this.value.filter(val => typeof val === 'object' && val !== null);\r\n const primitiveValues = this.value.filter(val => typeof val !== 'object');\r\n\r\n // Find selected items\r\n this.selectedItems = this.items.filter(item => {\r\n if (typeof item === 'object' && item !== null) {\r\n return objectValues.some(val => val.name === item.name);\r\n } else {\r\n return primitiveValues.includes(item);\r\n }\r\n });\r\n\r\n // Find unselected items\r\n this.unselectedItems = this.items.filter(item => {\r\n if (typeof item === 'object' && item !== null) {\r\n return !objectValues.some(val => val.name === item.name);\r\n } else {\r\n return !primitiveValues.includes(item);\r\n }\r\n });\r\n }\r\n } else {\r\n // If value array is empty, all items are unselected\r\n this.selectedItems = [];\r\n this.unselectedItems = [...this.items];\r\n }\r\n\r\n // console.log('Selected Items:', this.selectedItems);\r\n // console.log('Unselected Items:', this.unselectedItems);\r\n }\r\n\r\n componentDidLoad() {\r\n if (this.type !== 'tags') {\r\n document.addEventListener('click', this.handleClickOutside);\r\n }\r\n\r\n const slottedInitials = this.el.querySelector('[slot=\"initials\"]');\r\n\r\n const mainTextSlot = this.el.querySelector('[slot=\"tooltip_label\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"tooltip_supporting_text\"]');\r\n\r\n if (slottedInitials) {\r\n slottedInitials.classList.add('text-xxs-semi-bold');\r\n }\r\n\r\n if (mainTextSlot) {\r\n mainTextSlot.classList.add('text-xs-semi-bold');\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add('text-xs-regular');\r\n }\r\n }\r\n\r\n applyColorToInitials() {\r\n switch (this.color) {\r\n case 'gray':\r\n return 'gray';\r\n case 'blue':\r\n return 'blue';\r\n case 'cyan':\r\n return 'cyan';\r\n case 'pink':\r\n return 'pink';\r\n case 'purple':\r\n return 'purple';\r\n case 'green':\r\n return 'green';\r\n case 'yellow':\r\n return 'yellow';\r\n }\r\n }\r\n\r\n render() {\r\n const emptyStateBackground = getAssetPath('assets/empty-state-background.svg');\r\n const illustration = getAssetPath('assets/empty-state-no-data.svg');\r\n\r\n return [\r\n <div class={`input_dropdown_container ${this.type === 'tags' ? 'tag' : ''}`}>\r\n <div class={`input_with_label`}>\r\n {this.showLabel && (\r\n <p class=\"text-sm-regular\" style={{ color: '#4B5565' }}>\r\n {this.label.charAt(0).toUpperCase() + this.label.slice(1).toLowerCase()}\r\n </p>\r\n )}\r\n <div\r\n class={`input_dropdown_div ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''} ${this.type === 'tags' ? 'tag' : ''} ${\r\n this.dropdownOpen ? 'focused' : ''\r\n }`}\r\n onClick={e => this.toggleDropdown(e)}\r\n >\r\n {this.type === 'icon_leading' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n d=\"M5.48131 12.9013C4.30234 13.6033 1.21114 15.0368 3.09388 16.8305C4.01359 17.7067 5.03791 18.3333 6.32572 18.3333H13.6743C14.9621 18.3333 15.9864 17.7067 16.9061 16.8305C18.7889 15.0368 15.6977 13.6033 14.5187 12.9013C11.754 11.2551 8.24599 11.2551 5.48131 12.9013Z\"\r\n stroke=\"#697586\"\r\n stroke-width=\"1.66667\"\r\n />\r\n <path\r\n d=\"M13.75 5.41667C13.75 7.48774 12.0711 9.16667 10 9.16667C7.92893 9.16667 6.25 7.48774 6.25 5.41667C6.25 3.3456 7.92893 1.66667 10 1.66667C12.0711 1.66667 13.75 3.3456 13.75 5.41667Z\"\r\n stroke=\"#697586\"\r\n stroke-width=\"1.66667\"\r\n />\r\n </svg>\r\n )}\r\n {this.type === 'avatar_leading' && (\r\n <>\r\n {this.state === 'default' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n d=\"M5.48131 12.9013C4.30234 13.6033 1.21114 15.0368 3.09388 16.8305C4.01359 17.7067 5.03791 18.3333 6.32572 18.3333H13.6743C14.9621 18.3333 15.9864 17.7067 16.9061 16.8305C18.7889 15.0368 15.6977 13.6033 14.5187 12.9013C11.754 11.2551 8.24599 11.2551 5.48131 12.9013Z\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.66667\"\r\n />\r\n <path\r\n d=\"M13.75 5.41666C13.75 7.48772 12.0711 9.16666 10 9.16666C7.92893 9.16666 6.25 7.48772 6.25 5.41666C6.25 3.34559 7.92893 1.66666 10 1.66666C12.0711 1.66666 13.75 3.34559 13.75 5.41666Z\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.66667\"\r\n />\r\n </svg>\r\n )}\r\n {this.state === 'filled' && (\r\n <gb-avatar size=\"xs\" text={this.text} color={this.color} show-border={this.showBorder}>\r\n {this.selectedItems.map(item => (\r\n <>\r\n {typeof item === 'object' ? (\r\n <h1 slot=\"initials\">{item.name.split(' ').map(part => part.charAt(0).toUpperCase())}</h1>\r\n ) : (\r\n <h1 slot=\"initials\">{item.split(' ').map(part => part.charAt(0).toUpperCase())}</h1>\r\n )}\r\n </>\r\n ))}\r\n </gb-avatar>\r\n )}\r\n </>\r\n )}\r\n {this.showLeadingIcon && <>{this.type === 'search' || this.type === 'tags' ? <div class={`icon`} innerHTML={this.leadingIconSvg}></div> : null}</>}\r\n {this.type === 'dot_leading' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" class={`dot ${this.size}`}>\r\n <circle cx=\"5\" cy=\"5\" r=\"4\" fill=\"#079455\" />\r\n </svg>\r\n )}\r\n <>\r\n {this.state === 'default' && (\r\n <>\r\n {this.placeholder && (\r\n <div class=\"placeholder\">\r\n <p class=\"text-md-regular\" style={{ color: '#CDD5DF' }}>\r\n {this.placeholder}\r\n </p>\r\n </div>\r\n )}\r\n </>\r\n )}\r\n {this.state === 'filled' && (\r\n <>\r\n <div class={`content`}>\r\n <div class={`text text-md-regular ${this.type === 'tags' ? 'tag' : ''}`} style={{ color: '#4B5565' }}>\r\n {this.type === 'tags' ? (\r\n <>\r\n {this.value.length === 0 ? (\r\n <>\r\n {this.selectedItems.map((item, index) =>\r\n typeof item === 'object' ? (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\" onClick={() => this.handleTagRemove(item)}>\r\n <p class=\"text-xs-medium\">{item.name.split(' ')[0]}</p>\r\n <h1 slot=\"initials\" class=\"text-xxs-semi-bold\">\r\n {item.name\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n </gb-tag>\r\n </div>\r\n ) : (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\" onClick={() => this.handleTagRemove(item)}>\r\n <p class=\"text-xs-medium\">{item}</p>\r\n </gb-tag>\r\n </div>\r\n ),\r\n )}\r\n </>\r\n ) : (\r\n <>\r\n {this.value.map((item, index) =>\r\n typeof item === 'object' ? (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\" onClick={() => this.handleTagRemove(item)}>\r\n <p class=\"text-xs-medium\">{item.name.split(' ')[0]}</p>\r\n <h1 slot=\"initials\" class=\"text-xxs-semi-bold\">\r\n {item.name\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n </gb-tag>\r\n </div>\r\n ) : (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\" onClick={() => this.handleTagRemove(item)}>\r\n <p class=\"text-xs-medium\">{item}</p>\r\n </gb-tag>\r\n </div>\r\n ),\r\n )}\r\n </>\r\n )}\r\n </>\r\n ) : (\r\n <p class=\"selected_text\">\r\n {this.value.length === 0 ? this.selectedItem?.name || this.selectedItem : <>{this.value.map(item => (typeof item === 'object' ? item.name : item))}</>}\r\n </p>\r\n )}\r\n </div>\r\n {this.supportingText && (\r\n <div class=\"supporting_text text-sm-regular\" style={{ color: '#697586' }}>\r\n {this.type !== 'tags' && (\r\n <>{this.value.length === 0 ? <>{this.selectedItem.username}</> : <>{this.value.map(item => typeof item === 'object' && item.username)}</>}</>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </>\r\n )}\r\n {this.state === 'disabled' && (\r\n <>\r\n <div class={`content`}>\r\n <div class={`text text-md-regular ${this.type === 'tags' ? 'tag' : ''}`} style={{ color: '#4B5565' }}>\r\n {this.type === 'tags' ? (\r\n <>\r\n {this.value.map((item, index) =>\r\n typeof item === 'object' ? (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\">\r\n <p class=\"text-xs-medium\">{item.name.split(' ')[0]}</p>\r\n <h1 slot=\"initials\" class=\"text-xxs-semi-bold\">\r\n {item.name\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n </gb-tag>\r\n </div>\r\n ) : (\r\n <div class=\"added_tag\" key={index}>\r\n <gb-tag size=\"sm\" icon={this.icon ? this.icon : 'avatar'} action=\"X_close\">\r\n <p class=\"text-xs-medium\">{item}</p>\r\n </gb-tag>\r\n </div>\r\n ),\r\n )}\r\n </>\r\n ) : (\r\n <>{<>{this.value.map(item => (typeof item === 'object' ? item.name : item))}</>}</>\r\n )}\r\n </div>\r\n {this.supportingText && (\r\n <div class=\"supporting_text text-sm-regular\" style={{ color: '#697586' }}>\r\n {this.type !== 'tags' && (\r\n <>{this.value.length === 0 ? <>{this.selectedItem.username}</> : <>{this.value.map(item => typeof item === 'object' && <>{item.username}</>)}</>}</>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </>\r\n )}\r\n </>\r\n {this.showHelpIcon && (\r\n <div class={`help_icon`}>\r\n <gb-help-tooltip show-supporting-text={true}>\r\n <slot name=\"tooltip_label\" slot=\"label\"></slot>\r\n <slot name=\"tooltip_supporting_text\" slot=\"supporting_text\"></slot>\r\n </gb-help-tooltip>\r\n </div>\r\n )}\r\n {this.type !== 'search' && (\r\n <div class={`dropdown_icon ${this.dropdownOpen ? 'opened' : ''}`}>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" class={`${this.state}`}>\r\n <path\r\n d=\"M15 7.50004C15 7.50004 11.3176 12.5 9.99996 12.5C8.68237 12.5 5 7.5 5 7.5\"\r\n stroke=\"#697586\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n </div>\r\n )}\r\n <>\r\n {this.dropdownOpen && (\r\n <div class={`dropdown_menu ${this.menuPosition}`} ref={el => (this.dropdownRef = el)} onClick={e => e.stopPropagation()}>\r\n {this.showSearchInput && (\r\n <div class=\"dropdown_search_field\">\r\n <gb-input-field\r\n size=\"sm\"\r\n value={this.inputValue}\r\n show-close-button={this.inputValue ? true : false}\r\n icon-swap=\"assets/search-01.svg\"\r\n placeholder=\"Search banks\"\r\n type=\"icon_leading\"\r\n labelText=\"label\"\r\n idOfInput=\"3\"\r\n onInputValueChanged={this.searchItems.bind(this)}\r\n ></gb-input-field>\r\n </div>\r\n )}\r\n {this.searchItem ? (\r\n <>\r\n {this.searchItem !== '' && this.searchResults.length > 0 ? (\r\n <>\r\n {this.searchResults.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type={this.type === 'search' ? 'checkbox' : this.type === 'tags' ? 'checkbox' : this.type}\r\n state={StateEnum.Default}\r\n supporting-text={this.supportingText}\r\n selected={this.isItemSelected(item)}\r\n onClick={() => this.handleItemSelect(item)}\r\n >\r\n {typeof item === 'object' ? (\r\n <>\r\n <p slot=\"name\">{item.name}</p>\r\n <p slot=\"supporting_text\">{item.username}</p>\r\n </>\r\n ) : (\r\n <p slot=\"name\">{item}</p>\r\n )}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </>\r\n ) : this.searchItem !== '' && this.searchResults.length === 0 ? (\r\n //Empty state for when there are no search results\r\n <div class=\"empty_state\">\r\n <img src={emptyStateBackground} class=\"background\" alt=\"\" />\r\n <div class=\"message_background\">\r\n <img src={illustration} alt=\"\" class=\"illustration\" />\r\n <p class=\"message text-md-semi-bold\">No results available</p>\r\n </div>\r\n </div>\r\n ) : null}\r\n </>\r\n ) : (\r\n <>\r\n {this.type === 'tags' ? (\r\n <>\r\n {this.selectedItems.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type={this.type === 'search' ? 'checkbox' : this.type === 'tags' ? 'checkbox' : this.type}\r\n state={StateEnum.Default}\r\n supporting-text={this.supportingText}\r\n selected={true}\r\n onClick={() => this.handleItemSelect(item)}\r\n >\r\n {typeof item === 'object' ? (\r\n <>\r\n <p slot=\"name\">{item.name}</p>\r\n <p slot=\"supporting_text\">{item.username}</p>\r\n <h1 slot=\"initials\">{item.name.split(' ').map(part => part.charAt(0).toUpperCase())}</h1>\r\n </>\r\n ) : (\r\n <>\r\n <p slot=\"name\">{item}</p>\r\n <h1 slot=\"initials\">{item.split(' ').map(part => part.charAt(0).toUpperCase())}</h1>\r\n </>\r\n )}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n {this.unselectedItems.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type={this.type === 'search' ? 'checkbox' : this.type === 'tags' ? 'checkbox' : this.type}\r\n state={StateEnum.Default}\r\n supporting-text={this.supportingText}\r\n selected={false}\r\n onClick={() => this.handleItemSelect(item)}\r\n >\r\n {typeof item === 'object' ? (\r\n <>\r\n <p slot=\"name\">{item.name}</p>\r\n <p slot=\"supporting_text\">{item.username}</p>\r\n </>\r\n ) : (\r\n <p slot=\"name\">{item}</p>\r\n )}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </>\r\n ) : (\r\n <>\r\n {this.items.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type={this.type === 'search' ? 'checkbox' : this.type === 'tags' ? 'checkbox' : this.type}\r\n state={StateEnum.Default}\r\n supporting-text={this.supportingText}\r\n selected={this.isItemSelected(item)}\r\n color={this.color}\r\n onClick={() => this.handleItemSelect(item)}\r\n >\r\n {typeof item === 'object' ? (\r\n <>\r\n <p slot=\"name\">{item.name}</p>\r\n <h1 slot=\"initials\">\r\n {item.name\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n <p slot=\"supporting_text\">{item.username}</p>\r\n </>\r\n ) : typeof item === 'string' ? (\r\n <>\r\n <p slot=\"name\">{item}</p>\r\n <h1 slot=\"initials\">\r\n {item\r\n .split(' ')\r\n .map(part => part.charAt(0).toUpperCase())\r\n .join('')}\r\n </h1>\r\n </>\r\n ) : (\r\n <>\r\n <p slot=\"name\">{item}</p>\r\n <h1 slot=\"initials\">{item}</h1>\r\n </>\r\n )}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </>\r\n )}\r\n </>\r\n )}\r\n </div>\r\n )}\r\n </>\r\n </div>\r\n </div>\r\n {/* <button onClick={() => this.clearValue()}>Clear</button> */}\r\n {this.showHintText && <>{!this.destructive ? <p class=\"hint_text text-sm-regular\">{this.hintText}</p> : <p class=\"error_text text-sm-regular\">{this.errorText}</p>}</>}\r\n </div>,\r\n ];\r\n }\r\n}\r\n"],"version":3}
@@ -0,0 +1,87 @@
1
+ import { p as proxyCustomElement, H, c as createEvent, g as getAssetPath, h } from './p-C_NOJI7O.js';
2
+ import { d as defineCustomElement$2 } from './p-j6G2DIRL.js';
3
+ import { d as defineCustomElement$1 } from './p-ByyRIJQv.js';
4
+
5
+ const gbThemeTabCss = ".theme_tab_div{display:flex;padding:0.375rem;justify-content:space-between;align-items:center;gap:0.5rem;border-radius:0.5rem;border:1px solid var(--color-border-subtler, #E3E8EF);background:var(--color-background-gray-subtler, #EEF2F6);flex-grow:1}.tab{width:100%}";
6
+
7
+ const GbThemeTab = /*@__PURE__*/ proxyCustomElement(class GbThemeTab extends H {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.__attachShadow();
12
+ this.themetabClicked = createEvent(this, "themetabClicked");
13
+ this.currentActiveTab = 'system';
14
+ this.handleSystemThemeChange = (e) => {
15
+ if (this.theme === 'system') {
16
+ this.setTheme(e.matches ? 'dark' : 'light');
17
+ }
18
+ };
19
+ }
20
+ componentWillLoad() {
21
+ const savedTheme = localStorage.getItem('preferred-theme');
22
+ this.theme = savedTheme || 'system';
23
+ this.applyTheme(this.theme);
24
+ if (this.theme === 'system') {
25
+ const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
26
+ mediaQuery.addEventListener('change', this.handleSystemThemeChange);
27
+ }
28
+ }
29
+ tabClicked(mode) {
30
+ this.currentActiveTab = mode;
31
+ // this.themetabClicked.emit(mode);
32
+ }
33
+ applyTheme(theme) {
34
+ let finalTheme = theme;
35
+ if (theme === 'system') {
36
+ finalTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
37
+ }
38
+ document.documentElement.setAttribute('data-theme', finalTheme);
39
+ }
40
+ setTheme(theme) {
41
+ this.currentActiveTab = theme;
42
+ this.theme = theme;
43
+ localStorage.setItem('preferred-theme', theme);
44
+ }
45
+ getSystemTheme() {
46
+ return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
47
+ }
48
+ render() {
49
+ const systemIconSrc = getAssetPath(`assets/laptop.svg`);
50
+ const sunSrc = getAssetPath(`assets/sun-02.svg`);
51
+ const moonSrc = getAssetPath(`assets/moon-02.svg`);
52
+ return (h("div", { key: '8187c214ddd6b3b90ae5627d1cbd068c9e001e24', class: `theme_tab_div` }, h("div", { key: 'a350b02ccc20fa3f618db3695529f6120c8a9846', class: "tab" }, h("gb-icon-button-base", { key: '3da749b2493f3aa2482703f266860b733205b831', current: this.currentActiveTab === 'system' ? true : false, icon: systemIconSrc, label: "System", onClick: () => this.setTheme('system') })), h("div", { key: '1c13963cce724a824ae7ff4c59d62dd2b717771e', class: "tab" }, h("gb-icon-button-base", { key: '493fb5143905efc7c440a2fac25a57de942bfd6f', current: this.currentActiveTab === 'light' ? true : false, icon: sunSrc, label: "Light", onClick: () => this.setTheme('light') })), h("div", { key: 'ae7fd2f339f10db6808668c2544666f9fa8d1c03', class: "tab" }, h("gb-icon-button-base", { key: 'cd7641bb38e2a151650edadf9d69ede0488abc10', current: this.currentActiveTab === 'dark' ? true : false, icon: moonSrc, label: "Dark", onClick: () => this.setTheme('dark') }))));
53
+ }
54
+ static get style() { return gbThemeTabCss; }
55
+ }, [1, "gb-theme-tab", {
56
+ "theme": [1],
57
+ "currentActiveTab": [32]
58
+ }]);
59
+ function defineCustomElement() {
60
+ if (typeof customElements === "undefined") {
61
+ return;
62
+ }
63
+ const components = ["gb-theme-tab", "gb-icon-button-base", "gb-tooltip"];
64
+ components.forEach(tagName => { switch (tagName) {
65
+ case "gb-theme-tab":
66
+ if (!customElements.get(tagName)) {
67
+ customElements.define(tagName, GbThemeTab);
68
+ }
69
+ break;
70
+ case "gb-icon-button-base":
71
+ if (!customElements.get(tagName)) {
72
+ defineCustomElement$2();
73
+ }
74
+ break;
75
+ case "gb-tooltip":
76
+ if (!customElements.get(tagName)) {
77
+ defineCustomElement$1();
78
+ }
79
+ break;
80
+ } });
81
+ }
82
+ defineCustomElement();
83
+
84
+ export { GbThemeTab as G, defineCustomElement as d };
85
+ //# sourceMappingURL=p-CzL1gfFw.js.map
86
+
87
+ //# sourceMappingURL=p-CzL1gfFw.js.map
@@ -0,0 +1 @@
1
+ {"file":"p-CzL1gfFw.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/gb-theme-tab/gb-theme-tab.css?tag=gb-theme-tab&encapsulation=shadow","src/components/gb-theme-tab/gb-theme-tab.tsx"],"sourcesContent":[".theme_tab_div {\r\n display: flex;\r\n padding: 0.375rem;\r\n justify-content: space-between;\r\n align-items: center;\r\n gap: 0.5rem;\r\n border-radius: 0.5rem;\r\n border: 1px solid var(--color-border-subtler, #E3E8EF);\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n flex-grow: 1;\r\n}\r\n\r\n.tab{\r\n width: 100%;\r\n}","import { Component, Event, EventEmitter, Prop, State, getAssetPath, h } from '@stencil/core';\r\nimport { ThemeTypes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-theme-tab',\r\n styleUrl: 'gb-theme-tab.css',\r\n shadow: true,\r\n})\r\nexport class GbThemeTab {\r\n @Prop() theme: ThemeTypes;\r\n @Event() themetabClicked: EventEmitter<string>;\r\n @State() currentActiveTab: string = 'system';\r\n\r\n componentWillLoad() {\r\n const savedTheme = localStorage.getItem('preferred-theme') as 'light' | 'dark' | 'system';\r\n this.theme = savedTheme || 'system';\r\n\r\n this.applyTheme(this.theme);\r\n\r\n if (this.theme === 'system') {\r\n const mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');\r\n mediaQuery.addEventListener('change', this.handleSystemThemeChange);\r\n }\r\n }\r\n\r\n tabClicked(mode: string) {\r\n this.currentActiveTab = mode;\r\n // this.themetabClicked.emit(mode);\r\n }\r\n\r\n applyTheme(theme: 'light' | 'dark' | 'system') {\r\n let finalTheme = theme;\r\n if (theme === 'system') {\r\n finalTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\r\n }\r\n\r\n document.documentElement.setAttribute('data-theme', finalTheme);\r\n }\r\n\r\n setTheme(theme: 'light' | 'dark' | 'system') {\r\n this.currentActiveTab = theme;\r\n this.theme = theme;\r\n localStorage.setItem('preferred-theme', theme);\r\n }\r\n\r\n getSystemTheme(): 'light' | 'dark' {\r\n return window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\r\n }\r\n\r\n handleSystemThemeChange = (e: MediaQueryListEvent) => {\r\n if (this.theme === 'system') {\r\n this.setTheme(e.matches ? 'dark' : 'light');\r\n }\r\n };\r\n\r\n render() {\r\n const systemIconSrc = getAssetPath(`assets/laptop.svg`);\r\n const sunSrc = getAssetPath(`assets/sun-02.svg`);\r\n const moonSrc = getAssetPath(`assets/moon-02.svg`);\r\n\r\n return (\r\n <div class={`theme_tab_div`}>\r\n <div class=\"tab\">\r\n <gb-icon-button-base\r\n current={this.currentActiveTab === 'system' ? true : false}\r\n icon={systemIconSrc}\r\n label=\"System\"\r\n onClick={() => this.setTheme('system')}\r\n ></gb-icon-button-base>\r\n </div>\r\n <div class=\"tab\">\r\n <gb-icon-button-base current={this.currentActiveTab === 'light' ? true : false} icon={sunSrc} label=\"Light\" onClick={() => this.setTheme('light')}></gb-icon-button-base>\r\n </div>\r\n <div class=\"tab\">\r\n <gb-icon-button-base current={this.currentActiveTab === 'dark' ? true : false} icon={moonSrc} label=\"Dark\" onClick={() => this.setTheme('dark')}></gb-icon-button-base>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n"],"version":3}