globuswebcomponents 2.6.1 → 2.6.3

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 (56) hide show
  1. package/dist/cjs/{gb-action-panel_61.cjs.entry.js → gb-action-panel_63.cjs.entry.js} +277 -28
  2. package/dist/cjs/gb-action-panel_63.cjs.entry.js.map +1 -0
  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 +32 -25
  6. package/dist/collection/components/gb-input-field/gb-input-field.js.map +1 -1
  7. package/dist/collection/components/gb-nav-bar/gb-nav-bar.js +98 -98
  8. package/dist/collection/components/gb-nav-bar/gb-nav-bar.js.map +1 -1
  9. package/dist/collection/components/gb-nav-bar-item/gb-nav-bar-item.css +4 -0
  10. package/dist/collection/components/gb-nav-bar-sidemenu/gb-nav-bar-sidemenu.js +1 -1
  11. package/dist/collection/components/gb-nav-bar-sidemenu/gb-nav-bar-sidemenu.js.map +1 -1
  12. package/dist/components/gb-header.js +1 -1
  13. package/dist/components/gb-input-dropdown.js +1 -1
  14. package/dist/components/gb-input-field.js +1 -1
  15. package/dist/components/gb-nav-bar-item.js +1 -1
  16. package/dist/components/gb-nav-bar-sidemenu.js +1 -1
  17. package/dist/components/gb-nav-bar-sidemenu.js.map +1 -1
  18. package/dist/components/gb-nav-bar.js +98 -98
  19. package/dist/components/gb-nav-bar.js.map +1 -1
  20. package/dist/components/gb-pagination.js +2 -2
  21. package/dist/components/gb-table-header.js +2 -2
  22. package/dist/components/{p-CZt4BvQa.js → p-B2CfUeJe.js} +3 -3
  23. package/dist/components/{p-CZt4BvQa.js.map → p-B2CfUeJe.js.map} +1 -1
  24. package/dist/components/{p-D8sTe7Rd.js → p-Bl_6pGZU.js} +34 -27
  25. package/dist/components/p-Bl_6pGZU.js.map +1 -0
  26. package/dist/components/{p-BB5zWLnP.js → p-DuT92yuK.js} +3 -3
  27. package/dist/components/{p-BB5zWLnP.js.map → p-DuT92yuK.js.map} +1 -1
  28. package/dist/docs.json +2 -2
  29. package/dist/esm/{gb-action-panel_61.entry.js → gb-action-panel_63.entry.js} +276 -29
  30. package/dist/esm/gb-action-panel_63.entry.js.map +1 -0
  31. package/dist/esm/globuscomponents.js +1 -1
  32. package/dist/esm/loader.js +1 -1
  33. package/dist/globuscomponents/globuscomponents.esm.js +1 -1
  34. package/dist/globuscomponents/{p-4ecee275.entry.js → p-c91de9eb.entry.js} +2 -2
  35. package/dist/globuscomponents/p-c91de9eb.entry.js.map +1 -0
  36. package/package.json +1 -1
  37. package/dist/cjs/gb-action-panel_61.cjs.entry.js.map +0 -1
  38. package/dist/cjs/gb-nav-bar-item.cjs.entry.js +0 -51
  39. package/dist/cjs/gb-nav-bar-item.cjs.entry.js.map +0 -1
  40. package/dist/cjs/gb-nav-bar-item.entry.cjs.js.map +0 -1
  41. package/dist/cjs/gb-nav-bar.cjs.entry.js +0 -205
  42. package/dist/cjs/gb-nav-bar.cjs.entry.js.map +0 -1
  43. package/dist/cjs/gb-nav-bar.entry.cjs.js.map +0 -1
  44. package/dist/components/p-D8sTe7Rd.js.map +0 -1
  45. package/dist/esm/gb-action-panel_61.entry.js.map +0 -1
  46. package/dist/esm/gb-nav-bar-item.entry.js +0 -49
  47. package/dist/esm/gb-nav-bar-item.entry.js.map +0 -1
  48. package/dist/esm/gb-nav-bar.entry.js +0 -203
  49. package/dist/esm/gb-nav-bar.entry.js.map +0 -1
  50. package/dist/globuscomponents/gb-nav-bar-item.entry.esm.js.map +0 -1
  51. package/dist/globuscomponents/gb-nav-bar.entry.esm.js.map +0 -1
  52. package/dist/globuscomponents/p-1473caf4.entry.js +0 -2
  53. package/dist/globuscomponents/p-1473caf4.entry.js.map +0 -1
  54. package/dist/globuscomponents/p-4ecee275.entry.js.map +0 -1
  55. package/dist/globuscomponents/p-81bfe1c7.entry.js +0 -2
  56. package/dist/globuscomponents/p-81bfe1c7.entry.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"file":"gb-action-panel.gb-approval-modal.gb-avatar.gb-avatar-contrast-inner-border.gb-avatar-dropdown.gb-avatar-label-group.gb-avatar-profile-photo.gb-badge.gb-badge-close.gb-btn.gb-button.gb-button-close.gb-button-group.gb-button-group-base.gb-checkbox.gb-checkbox-base.gb-checkbox-group-item.gb-collapse-button.gb-complex-primary-side-bar-item.gb-complex-secondary-side-bar-item.gb-date-picker.gb-dropdown-items-with-shortcut.gb-export-dropdown.gb-export-dropdown-item.gb-export-sub-dropdown.gb-export-sub-dropdown-item.gb-filter-button.gb-header.gb-header-icon.gb-help-dropdown.gb-help-tooltip.gb-icon-button-base.gb-input-dropdown.gb-input-dropdown-menu-item.gb-input-field.gb-modal-action.gb-modal-header.gb-nav-bar.gb-nav-bar-item.gb-nav-bar-sidemenu.gb-notification-content.gb-notification-pane.gb-pagination.gb-pagination-button-group-base.gb-pagination-number-base.gb-password-button.gb-sidebar.gb-simple-side-bar-item.gb-status-indicator.gb-tab-button-base.gb-table-header.gb-tag.gb-tag-checkbox.gb-tag-close.gb-tag-count.gb-textarea-input-field.gb-theme-tab.gb-toast.gb-toast-button.gb-toggle.gb-toggle-base.gb-tooltip.gb-vertical-tabs.entry.cjs.js","mappings":"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","names":["h","StateEnum","OnlineIndicatorStates","BorderWeights","getAssetPath","GbButton","Fragment","index","this","defaultOptions","English"],"sources":["src/components/gb-action-panel/gb-action-panel.css?tag=gb-action-panel&encapsulation=shadow","src/components/gb-action-panel/gb-action-panel.tsx","src/components/gb-approval-modal/gb-approval-modal.css?tag=gb-approval-modal&encapsulation=shadow","src/components/gb-approval-modal/gb-approval-modal.tsx","src/components/gb-avatar/gb-avatar.css?tag=gb-avatar&encapsulation=shadow","src/components/gb-avatar/gb-avatar.tsx","src/components/gb-avatar-contrast-inner-border/gb-avatar-contrast-inner-border.css?tag=gb-avatar-contrast-inner-border&encapsulation=shadow","src/components/gb-avatar-contrast-inner-border/gb-avatar-contrast-inner-border.tsx","src/components/gb-avatar-dropdown/gb-avatar-dropdown.css?tag=gb-avatar-dropdown&encapsulation=shadow","src/components/gb-avatar-dropdown/gb-avatar-dropdown.tsx","src/components/gb-avatar-label-group/gb-avatar-label-group.css?tag=gb-avatar-label-group&encapsulation=shadow","src/components/gb-avatar-label-group/gb-avatar-label-group.tsx","src/components/gb-avatar-profile-photo/gb-avatar-profile-photo.css?tag=gb-avatar-profile-photo&encapsulation=shadow","src/components/gb-avatar-profile-photo/gb-avatar-profile-photo.tsx","src/components/gb-badge/gb-badge.css?tag=gb-badge&encapsulation=shadow","src/components/gb-badge/gb-badge.tsx","src/components/gb-badge-close/gb-badge-close.css?tag=gb-badge-close&encapsulation=shadow","src/components/gb-badge-close/gb-badge-close.tsx","src/components/gb-btn/gb-btn.css?tag=gb-btn","src/components/gb-btn/gb-btn.tsx","src/components/gb-button/gb-button.css?tag=gb-button&encapsulation=shadow","src/components/gb-button/gb-button.tsx","src/components/gb-button-close/gb-button-close.css?tag=gb-button-close&encapsulation=shadow","src/components/gb-button-close/gb-button-close.tsx","src/components/gb-button-group/gb-button-group.css?tag=gb-button-group&encapsulation=shadow","src/components/gb-button-group/gb-button-group.tsx","src/components/gb-button-group-base/gb-button-group-base.css?tag=gb-button-group-base&encapsulation=shadow","src/components/gb-button-group-base/gb-button-group-base.tsx","src/components/gb-checkbox/gb-checkbox.css?tag=gb-checkbox&encapsulation=shadow","src/components/gb-checkbox/gb-checkbox.tsx","src/components/gb-checkbox-base/gb-checkbox-base.css?tag=gb-checkbox-base&encapsulation=shadow","src/components/gb-checkbox-base/gb-checkbox-base.tsx","src/components/gb-checkbox-group-item/gb-checkbox-group-item.css?tag=gb-checkbox-group-item&encapsulation=shadow","src/components/gb-checkbox-group-item/gb-checkbox-group-item.tsx","src/components/gb-collapse-button/gb-collapse-button.css?tag=gb-collapse-button&encapsulation=shadow","src/components/gb-collapse-button/gb-collapse-button.tsx","src/components/gb-complex-primary-side-bar-item/gb-complex-primary-side-bar-item.css?tag=gb-complex-primary-side-bar-item&encapsulation=shadow","src/components/gb-complex-primary-side-bar-item/gb-complex-primary-side-bar-item.tsx","src/components/gb-complex-secondary-side-bar-item/gb-complex-secondary-side-bar-item.css?tag=gb-complex-secondary-side-bar-item&encapsulation=shadow","src/components/gb-complex-secondary-side-bar-item/gb-complex-secondary-side-bar-item.tsx","node_modules/flatpickr/dist/esm/types/options.js","node_modules/flatpickr/dist/esm/l10n/default.js","node_modules/flatpickr/dist/esm/utils/index.js","node_modules/flatpickr/dist/esm/utils/dom.js","node_modules/flatpickr/dist/esm/utils/formatting.js","node_modules/flatpickr/dist/esm/utils/dates.js","node_modules/flatpickr/dist/esm/utils/polyfills.js","node_modules/flatpickr/dist/esm/index.js","src/components/gb-date-picker/gb-date-picker.css?tag=gb-date-picker&encapsulation=shadow","src/components/gb-date-picker/gb-date-picker.tsx","src/components/gb-dropdown-items-with-shortcut/gb-dropdown-items-with-shortcut.css?tag=gb-dropdown-items-with-shortcut&encapsulation=shadow","src/components/gb-dropdown-items-with-shortcut/gb-dropdown-items-with-shortcut.tsx","src/components/gb-export-dropdown/gb-export-dropdown.css?tag=gb-export-dropdown&encapsulation=shadow","src/components/gb-export-dropdown/gb-export-dropdown.tsx","src/components/gb-export-dropdown-item/gb-export-dropdown-item.css?tag=gb-export-dropdown-item&encapsulation=shadow","src/components/gb-export-dropdown-item/gb-export-dropdown-item.tsx","src/components/gb-export-sub-dropdown/gb-export-sub-dropdown.css?tag=gb-export-sub-dropdown&encapsulation=shadow","src/components/gb-export-sub-dropdown/gb-export-sub-dropdown.tsx","src/components/gb-export-sub-dropdown-item/gb-export-sub-dropdown-item.css?tag=gb-export-sub-dropdown-item&encapsulation=shadow","src/components/gb-export-sub-dropdown-item/gb-export-sub-dropdown-item.tsx","src/components/gb-filter-button/gb-filter-button.css?tag=gb-filter-button&encapsulation=shadow","src/components/gb-filter-button/gb-filter-button.tsx","src/components/gb-header/gb-header.css?tag=gb-header&encapsulation=shadow","src/components/gb-header/gb-header.tsx","src/components/gb-header-icon/gb-header-icon.css?tag=gb-header-icon&encapsulation=shadow","src/components/gb-header-icon/gb-header-icon.tsx","src/components/gb-help-dropdown/gb-help-dropdown.css?tag=gb-help-dropdown&encapsulation=shadow","src/components/gb-help-dropdown/gb-help-dropdown.tsx","src/components/gb-help-tooltip/gb-help-tooltip.css?tag=gb-help-tooltip&encapsulation=shadow","src/components/gb-help-tooltip/gb-help-tooltip.tsx","src/components/gb-icon-button-base/gb-icon-button-base.css?tag=gb-icon-button-base&encapsulation=shadow","src/components/gb-icon-button-base/gb-icon-button-base.tsx","src/components/gb-input-dropdown/gb-input-dropdown.css?tag=gb-input-dropdown&encapsulation=shadow","src/components/gb-input-dropdown/gb-input-dropdown.tsx","src/components/gb-input-dropdown-menu-item/gb-input-dropdown-menu-item.css?tag=gb-input-dropdown-menu-item&encapsulation=shadow","src/components/gb-input-dropdown-menu-item/gb-input-dropdown-menu-item.tsx","src/components/gb-input-field/gb-input-field.css?tag=gb-input-field&encapsulation=shadow","src/components/gb-input-field/gb-input-field.tsx","src/components/gb-modal-action/gb-modal-action.css?tag=gb-modal-action&encapsulation=shadow","src/components/gb-modal-action/gb-modal-action.tsx","src/components/gb-modal-header/gb-modal-header.css?tag=gb-modal-header&encapsulation=shadow","src/components/gb-modal-header/gb-modal-header.tsx","src/components/gb-nav-bar/gb-nav-bar.css?tag=gb-nav-bar&encapsulation=shadow","src/components/gb-nav-bar/gb-nav-bar.tsx","src/components/gb-nav-bar-item/gb-nav-bar-item.css?tag=gb-nav-bar-item&encapsulation=shadow","src/components/gb-nav-bar-item/gb-nav-bar-item.tsx","src/components/gb-nav-bar-sidemenu/gb-nav-bar-sidemenu.css?tag=gb-nav-bar-sidemenu&encapsulation=shadow","src/components/gb-nav-bar-sidemenu/gb-nav-bar-sidemenu.tsx","src/components/gb-notification-content/gb-notification-content.css?tag=gb-notification-content&encapsulation=shadow","src/components/gb-notification-content/gb-notification-content.tsx","src/components/gb-notification-pane/gb-notification-pane.css?tag=gb-notification-pane&encapsulation=shadow","src/components/gb-notification-pane/gb-notification-pane.tsx","src/components/gb-pagination/gb-pagination.css?tag=gb-pagination&encapsulation=shadow","src/components/gb-pagination/gb-pagination.tsx","src/components/gb-pagination-button-group-base/gb-pagination-button-group-base.css?tag=gb-pagination-button-group-base&encapsulation=shadow","src/components/gb-pagination-button-group-base/gb-pagination-button-group-base.tsx","src/components/gb-pagination-number-base/gb-pagination-number-base.css?tag=gb-pagination-number-base&encapsulation=shadow","src/components/gb-pagination-number-base/gb-pagination-number-base.tsx","src/components/gb-password-button/gb-password-button.css?tag=gb-password-button&encapsulation=shadow","src/components/gb-password-button/gb-password-button.tsx","src/components/gb-sidebar/gb-sidebar.css?tag=gb-sidebar&encapsulation=shadow","src/components/gb-sidebar/gb-sidebar.tsx","src/components/gb-simple-side-bar-item/gb-simple-side-bar-item.css?tag=gb-simple-side-bar-item&encapsulation=shadow","src/components/gb-simple-side-bar-item/gb-simple-side-bar-item.tsx","src/components/gb-status-indicator/gb-status-indicator.css?tag=gb-status-indicator&encapsulation=shadow","src/components/gb-status-indicator/gb-status-indicator.tsx","src/components/gb-tab-button-base/gb-tab-button-base.css?tag=gb-tab-button-base&encapsulation=shadow","src/components/gb-tab-button-base/gb-tab-button-base.tsx","src/components/gb-table-header/gb-table-header.css?tag=gb-table-header&encapsulation=shadow","src/components/gb-table-header/gb-table-header.tsx","src/components/gb-tag/gb-tag.css?tag=gb-tag&encapsulation=shadow","src/components/gb-tag/gb-tag.tsx","src/components/gb-tag-checkbox/gb-tag-checkbox.css?tag=gb-tag-checkbox&encapsulation=shadow","src/components/gb-tag-checkbox/gb-tag-checkbox.tsx","src/components/gb-tag-close/gb-tag-close.css?tag=gb-tag-close&encapsulation=shadow","src/components/gb-tag-close/gb-tag-close.tsx","src/components/gb-tag-count/gb-tag-count.css?tag=gb-tag-count&encapsulation=shadow","src/components/gb-tag-count/gb-tag-count.tsx","src/components/gb-textarea-input-field/gb-textarea-input-field.css?tag=gb-textarea-input-field&encapsulation=shadow","src/components/gb-textarea-input-field/gb-textarea-input-field.tsx","src/components/gb-theme-tab/gb-theme-tab.css?tag=gb-theme-tab&encapsulation=shadow","src/components/gb-theme-tab/gb-theme-tab.tsx","src/components/gb-toast/gb-toast.css?tag=gb-toast&encapsulation=shadow","src/components/gb-toast/gb-toast.tsx","src/components/gb-toast-button/gb-toast-button.css?tag=gb-toast-button&encapsulation=shadow","src/components/gb-toast-button/gb-toast-button.tsx","src/components/gb-toggle/gb-toggle.css?tag=gb-toggle&encapsulation=shadow","src/components/gb-toggle/gb-toggle.tsx","src/components/gb-toggle-base/gb-toggle-base.css?tag=gb-toggle-base&encapsulation=shadow","src/components/gb-toggle-base/gb-toggle-base.tsx","src/components/gb-tooltip/gb-tooltip.css?tag=gb-tooltip&encapsulation=shadow","src/components/gb-tooltip/gb-tooltip.tsx","src/components/gb-vertical-tabs/gb-vertical-tabs.css?tag=gb-vertical-tabs&encapsulation=shadow","src/components/gb-vertical-tabs/gb-vertical-tabs.tsx"],"sourcesContent":["@import './../../global/global.css';\r\n\r\n.action_panel_div {\r\n display: flex;\r\n width: 100%;\r\n padding: var(--spacing-none) 0rem 0rem 0rem;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n border-top: 1px solid var(--color-border-subtler, #e3e8ef);\r\n background: var(--color-background-card, #fff);\r\n}\r\n\r\n.panel_content {\r\n display: flex;\r\n flex-wrap: wrap;\r\n padding: var(--spacing-4) var(--spacing-7);\r\n justify-content: space-between;\r\n align-items: center;\r\n gap: var(--spacing-5);\r\n align-self: stretch;\r\n}\r\n\r\n.left_action {\r\n display: flex;\r\n gap: var(--spacing-5);\r\n align-items: center;\r\n flex-wrap: wrap;\r\n}\r\n\r\n.rows_and_close_button {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-5);\r\n}\r\n\r\n.amount {\r\n display: flex;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.amount_heading {\r\n color: var(--color-text-subtle, #697586);\r\n}\r\n\r\n.amount_text {\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.right_action {\r\n display: flex;\r\n flex-direction: row-reverse;\r\n /* justify-content: flex-end; */\r\n align-items: center;\r\n gap: var(--spacing-5);\r\n width: 100%;\r\n flex: 1 0 0;\r\n}\r\n\r\n::slotted([slot='selected_rows']) {\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n/**/\r\n.actions {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n flex: 1 0 0;\r\n}\r\n\r\n.right {\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\r\n gap: var(--spacing-6);\r\n}\r\n\r\n@media (max-width: 940px) {\r\n .right_action {\r\n flex-wrap: wrap;\r\n }\r\n}\r\n\r\n@media (max-width: 468px) {\r\n .panel_content {\r\n padding: var(--spacing-4) var(--spacing-5);\r\n }\r\n\r\n .three_buttons .button_divs {\r\n width: 100%;\r\n }\r\n\r\n .actions {\r\n flex-direction: column;\r\n gap: var(--spacing-4);\r\n }\r\n\r\n .actions .button_divs {\r\n width: 100%;\r\n }\r\n\r\n .right {\r\n width: 100%;\r\n gap: var(--spacing-4);\r\n }\r\n\r\n .actions .right .button_divs {\r\n width: 100%;\r\n }\r\n\r\n .right {\r\n flex-direction: column;\r\n }\r\n}\r\n\r\n@media (max-width: 420px) {\r\n .right_action {\r\n justify-content: space-between;\r\n }\r\n\r\n .right_action .button_divs {\r\n flex: 1 0 0;\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Prop, State, Watch, h } from '@stencil/core';\r\nimport { StateEnum, StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-action-panel',\r\n styleUrl: 'gb-action-panel.css',\r\n shadow: true,\r\n})\r\nexport class GbActionPanel {\r\n @Prop() type!: 'decision_panel' | 'form_control';\r\n @Prop() showCloseButton: boolean = false;\r\n @Prop() showSelectedRows: boolean = false;\r\n @Prop() showCheckbox: boolean = false;\r\n @Prop() firstButton: boolean = false;\r\n @Prop() firstButtonIconLeading: string = '';\r\n @Prop() firstButtonIconTrailing: string = '';\r\n @Prop() secondButton: boolean = false;\r\n @Prop() secondButtonIconLeading: string = '';\r\n @Prop() secondButtonIconTrailing: string = '';\r\n @Prop() thirdButton: boolean = false;\r\n @Prop() thirdButtonIconLeading: string = '';\r\n @Prop() thirdButtonIconTrailing: string = '';\r\n @Prop() showSubmitButton: boolean = false;\r\n @Prop() submitButtonIconLeadingSwap: string = '';\r\n @Prop() submitButtonIconTrailingSwap: string = '';\r\n @Prop() submitButtonState: StateType;\r\n @Prop() firstButtonText: string = '';\r\n @Prop() secondButtonText: string = '';\r\n @Prop() thirdButtonText: string = '';\r\n @Prop() firstButtonState: StateType;\r\n @Prop() secondButtonState: StateType;\r\n @Prop() thirdButtonState: StateType;\r\n @Prop() previousButtonState: StateType;\r\n @Prop() nextButtonState: StateType;\r\n @Prop() showDraftButton: boolean = false;\r\n @Prop() submitButtonText: string = '';\r\n @Prop() showAmount: boolean = false;\r\n @Prop() showFee: boolean = false;\r\n @Prop() amount: string = '';\r\n @Prop() fee: string = '';\r\n @State() checked: any = false;\r\n @State() internalNextButtonState: StateType;\r\n @Event() firstButtonClicked: EventEmitter<void>;\r\n @Event() secondButtonClicked: EventEmitter<void>;\r\n @Event() thirdButtonClicked: EventEmitter<void>;\r\n @Event() previousButtonClicked: EventEmitter<void>;\r\n @Event() saveAsDraft: EventEmitter<HTMLElement>;\r\n @Event() submitButtonClicked: EventEmitter<HTMLElement>;\r\n @Event() nextButtonClicked: EventEmitter<void>;\r\n @Event() checkboxClicked: EventEmitter<void>;\r\n @Event() closeButtonClicked: EventEmitter<void>;\r\n @Element() el: HTMLElement;\r\n\r\n draftButton: HTMLElement;\r\n submitButton: HTMLElement;\r\n\r\n componentDidLoad() {\r\n const selectedRows = this.el.querySelector('[slot=\"selected_rows\"]');\r\n const label = this.el.querySelector('[slot=\"label\"]');\r\n\r\n if (selectedRows) {\r\n selectedRows.classList.add('text-md-medium');\r\n }\r\n\r\n if (label) {\r\n label.classList.add('text-md-medium');\r\n }\r\n }\r\n\r\n @Watch('state')\r\n updateButtonState(newValue: StateType) {\r\n this.internalNextButtonState = newValue;\r\n }\r\n\r\n componentWillRender() {\r\n this.internalNextButtonState = this.nextButtonState;\r\n }\r\n\r\n onCheckboxClicked(event) {\r\n this.checked = event.detail;\r\n this.checkboxClicked.emit(this.checked);\r\n }\r\n\r\n onFirstButtonClicked() {\r\n if (this.firstButtonState === 'default') {\r\n if (this.showCheckbox) {\r\n this.firstButtonClicked.emit(this.checked);\r\n } else {\r\n this.firstButtonClicked.emit();\r\n }\r\n } else {\r\n return;\r\n }\r\n }\r\n\r\n onSecondButtonClicked() {\r\n if (this.secondButtonState === 'default') {\r\n if (this.showCheckbox) {\r\n this.secondButtonClicked.emit(this.checked);\r\n } else {\r\n this.secondButtonClicked.emit();\r\n }\r\n }\r\n }\r\n\r\n onThirdButtonClicked() {\r\n if (this.thirdButtonState === 'default') {\r\n if (this.showCheckbox) {\r\n this.thirdButtonClicked.emit(this.checked);\r\n } else {\r\n this.thirdButtonClicked.emit();\r\n }\r\n }\r\n }\r\n\r\n onPreviousButtonClicked() {\r\n this.previousButtonClicked.emit();\r\n }\r\n\r\n onSaveAsDraft() {\r\n this.saveAsDraft.emit(this.draftButton);\r\n }\r\n\r\n onSubmitClicked() {\r\n this.submitButtonClicked.emit(this.submitButton);\r\n }\r\n\r\n onNextButtonClicked() {\r\n this.nextButtonClicked.emit();\r\n }\r\n\r\n onCloseButtonClicked() {\r\n this.closeButtonClicked.emit();\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"action_panel_div\">\r\n {this.type === 'decision_panel' && (\r\n <div class=\"panel_content\">\r\n <div class=\"left_action\">\r\n <div class=\"rows_and_close_button\">\r\n {this.showCloseButton && <gb-button-close size=\"md\" color=\"primary\" onClick={() => this.onCloseButtonClicked()}></gb-button-close>}\r\n {this.showSelectedRows && <slot name=\"selected_rows\"></slot>}\r\n </div>\r\n {this.showCheckbox && (\r\n <gb-checkbox size=\"md\" state={StateEnum.Default} type=\"checkbox\" text={true} supporting-text={false} onCheckboxClicked={this.onCheckboxClicked.bind(this)}>\r\n <slot name=\"label\" slot=\"label\"></slot>\r\n </gb-checkbox>\r\n )}\r\n {this.showAmount && (\r\n <div class=\"amount\">\r\n <p class=\"amount_heading text-sm-medium\">Total amount:</p>\r\n <p class=\"amount_text text-lg-semi-bold\">{this.amount}</p>\r\n </div>\r\n )}\r\n {this.showFee && (\r\n <div class=\"amount\">\r\n <p class=\"amount_heading text-sm-medium\">Total fee:</p>\r\n <p class=\"amount_text text-lg-semi-bold\">{this.fee}</p>\r\n </div>\r\n )}\r\n </div>\r\n <div class={`right_action ${this.firstButton && this.secondButton && this.thirdButton && 'three_buttons'}`}>\r\n {this.firstButton && (\r\n <div class=\"button_divs\">\r\n <gb-button\r\n size=\"xl\"\r\n state={this.firstButtonState}\r\n hierarchy=\"primary\"\r\n icon=\"default\"\r\n icon-leading={this.firstButtonIconLeading ? true : false}\r\n icon-trailing={this.firstButtonIconTrailing ? true : false}\r\n icon-leading-swap={this.firstButtonIconLeading}\r\n icon-trailing-swap={this.firstButtonIconTrailing}\r\n onClick={() => this.onFirstButtonClicked()}\r\n >\r\n <p>{this.firstButtonText}</p>\r\n </gb-button>\r\n </div>\r\n )}\r\n {this.secondButton && (\r\n <div class=\"button_divs\">\r\n <gb-button\r\n size=\"xl\"\r\n state={this.secondButtonState}\r\n hierarchy=\"secondary_color\"\r\n icon=\"default\"\r\n icon-leading={this.secondButtonIconLeading ? true : false}\r\n icon-trailing={this.secondButtonIconTrailing ? true : false}\r\n icon-leading-swap={this.secondButtonIconLeading}\r\n icon-trailing-swap={this.secondButtonIconTrailing}\r\n onClick={() => this.onSecondButtonClicked()}\r\n >\r\n <p>{this.secondButtonText}</p>\r\n </gb-button>\r\n </div>\r\n )}\r\n {this.thirdButton && (\r\n <div class=\"button_divs\">\r\n <gb-button\r\n size=\"xl\"\r\n state={this.thirdButtonState}\r\n hierarchy=\"secondary_gray\"\r\n icon=\"default\"\r\n icon-leading={this.thirdButtonIconLeading ? true : false}\r\n icon-trailing={this.thirdButtonIconTrailing ? true : false}\r\n icon-leading-swap={this.thirdButtonIconLeading}\r\n icon-trailing-swap={this.thirdButtonIconTrailing}\r\n onClick={() => this.onThirdButtonClicked()}\r\n >\r\n <p>{this.thirdButtonText}</p>\r\n </gb-button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n )}\r\n {this.type === 'form_control' && (\r\n <div class=\"panel_content\">\r\n <div class={`actions ${this.showDraftButton ? 'draft_shown' : ''}`}>\r\n <div class=\"button_divs\">\r\n <gb-button\r\n size=\"xl\"\r\n state={this.previousButtonState}\r\n hierarchy=\"secondary_gray\"\r\n icon=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n >\r\n <p>Previous</p>\r\n </gb-button>\r\n </div>\r\n <div class=\"right\">\r\n {this.showDraftButton && (\r\n <div class=\"button_divs\">\r\n <gb-button size=\"xl\" hierarchy=\"secondary_color\" icon=\"default\" ref={el => (this.draftButton = el)} onClick={() => this.onSaveAsDraft()}>\r\n <p>Save as draft</p>\r\n </gb-button>\r\n </div>\r\n )}\r\n {this.showSubmitButton ? (\r\n <div class=\"button_divs\">\r\n <gb-button\r\n size=\"xl\"\r\n state={this.submitButtonState}\r\n hierarchy=\"primary\"\r\n icon=\"default\"\r\n icon-leading={this.submitButtonIconLeadingSwap ? true : false}\r\n icon-leading-swap={this.submitButtonIconLeadingSwap}\r\n icon-trailing={this.submitButtonIconTrailingSwap ? true : false}\r\n icon-trailing-swap={this.submitButtonIconTrailingSwap}\r\n ref={el => (this.submitButton = el)}\r\n onClick={() => this.onSubmitClicked()}\r\n >\r\n <p>{this.submitButtonText}</p>\r\n </gb-button>\r\n </div>\r\n ) : (\r\n <div class=\"button_divs\">\r\n <gb-button\r\n size=\"xl\"\r\n state={this.internalNextButtonState}\r\n hierarchy=\"primary\"\r\n icon=\"default\"\r\n icon-trailing={true}\r\n icon-trailing-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n >\r\n <p>Next</p>\r\n </gb-button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n.approval-modal{\r\n width: 25.1875rem;\r\n border-radius: 0.75rem;\r\n background-color:var(--color-background-card, #FFFFFF); \r\n position: relative;\r\n overflow: hidden;\r\n}\r\n\r\ngb-button-close{\r\n position: absolute;\r\n right: 0.75rem;\r\n top: 0.59375rem;\r\n}\r\n\r\n.modal-top{\r\n padding: var(--spacing-6);\r\n border-bottom: 1px solid var(--color-border-subtler, #E3E8EF);\r\n}\r\n\r\n.modal-content{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-3);\r\n padding: var(--spacing-6);\r\n}\r\n\r\n .heading{\r\n color: var(--color-text-subtle, #697586);\r\n} \r\n\r\n.modal-row{\r\n border: 1px solid var(--color-border-subtler, #E3E8EF);\r\n border-radius: var(--rounded-sm);\r\n width: 100%;\r\n padding: var(--spacing-4) var(--spacing-4) var(--spacing-4) var(--spacing-4);\r\n gap: var(--spacing-2);\r\n display: flex;\r\n flex-direction: column;\r\n box-sizing: border-box;\r\n}\r\n\r\n.modal-textarea{\r\n /* border-radius: 5px; */\r\n width: 100%;\r\n box-sizing: border-box;\r\n}","import { Component, h, Prop } from '@stencil/core';\r\nimport { GeneralColors, BadgeTypes, BadgeIconTypes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-approval-modal',\r\n styleUrl: 'gb-approval-modal.css',\r\n shadow: true,\r\n})\r\nexport class gbapprovalmodal {\r\n @Prop() showDecision: boolean = true;\r\n @Prop() badgeColor: GeneralColors;\r\n @Prop() badgeType: BadgeTypes;\r\n @Prop() badgeIcon: BadgeIconTypes;\r\n @Prop() badgeLabel: string;\r\n @Prop() firstButtonText: string = '';\r\n @Prop() secondButtonText: string = '';\r\n @Prop() thirdButtonText: string = '';\r\n @Prop() firstIconButtonSwap: string = '';\r\n @Prop() secondIconButtonSwap: string = '';\r\n @Prop() firstButtonIconLeadingSwap: string = '';\r\n @Prop() secondButtonIconLeadingSwap: string = '';\r\n @Prop() thirdButtonIconLeadingSwap: string = '';\r\n @Prop() firstButtonIconTrailingSwap: string = '';\r\n @Prop() secondButtonIconTrailingSwap: string = '';\r\n @Prop() thirdButtonIconTrailingSwap: string = '';\r\n\r\n render() {\r\n return (\r\n <div class=\"approval-modal shadow-sm \">\r\n <gb-modal-header close-button-position=\"right\" text=\"Title\"></gb-modal-header>\r\n {/* <div class=\"modal-top\">\r\n <p class=\"display-xs-semi-bold\">Title</p>\r\n <gb-button-close size=\"sm\" color=\"gray\"></gb-button-close>\r\n </div> */}\r\n\r\n <div class=\"modal-content\">\r\n {this.showDecision && (\r\n <div class=\"modal-row\">\r\n <p class=\"text-sm-regular heading\">Reviewer's decision</p>\r\n <gb-badge size=\"sm\" type={this.badgeType} icon={this.badgeIcon} color={this.badgeColor}>\r\n <p>{this.badgeLabel}</p>\r\n </gb-badge>\r\n </div>\r\n )}\r\n\r\n <div class=\"modal-textarea\">\r\n <gb-textarea-input-field\r\n idOfInput=\"default\"\r\n state=\"default\"\r\n type=\"default\"\r\n show-label={true}\r\n label=\"Reason\"\r\n show-hint-text={false}\r\n destructive={false}\r\n placeholder-text=\"Enter comments here\"\r\n ></gb-textarea-input-field>\r\n </div>\r\n </div>\r\n <gb-modal-action action-type=\"double\" first-button-text={this.firstButtonText} second-button-text={this.secondButtonText}></gb-modal-action>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n:host{\r\n width: fit-content;\r\n}\r\n\r\n.avatar{\r\n position: relative;\r\n width: fit-content;\r\n border-radius: var(--rounded-full);\r\n cursor: pointer;\r\n}\r\n\r\n.inner_content.xxs{\r\n width: 1.125rem;\r\n height: 1.125rem;\r\n}\r\n\r\n.inner_content.xs{\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n}\r\n\r\n.inner_content.sm{\r\n width: 2rem;\r\n height: 2rem;\r\n}\r\n\r\n.inner_content.md{\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n}\r\n\r\n.inner_content.lg{\r\n width: 3rem;\r\n height: 3rem;\r\n}\r\n\r\n.inner_content.xl{\r\n width: 3.5rem;\r\n height: 3.5rem;\r\n}\r\n\r\n.inner_content.xl2{\r\n width: 4rem;\r\n height: 4rem;\r\n}\r\n\r\n.inner_content.profile_sm{\r\n width: 4.5rem;\r\n height: 4.5rem;\r\n}\r\n\r\n.inner_content.profile_md{\r\n width: 6rem;\r\n height: 6rem;\r\n}\r\n\r\n.inner_content.profile_lg{\r\n width: 10rem;\r\n height: 10rem;\r\n}\r\n\r\n::slotted(img){\r\n width: 100%;\r\n height: 100%;\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\n.placeholder,\r\n.initials{\r\n width: 100%;\r\n height: 100%;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\n.indicator{\r\n position: absolute;\r\n bottom: -0.1rem;\r\n right: -0.03rem;\r\n}\r\n\r\n/* Size Styles */\r\n.user_avatar.xxs{\r\n width: 0.75rem;\r\n height: 0.75rem;\r\n}\r\n\r\n.user_avatar.xs{\r\n width: var(--spacing-4);\r\n height: var(--spacing-4);\r\n}\r\n\r\n.user_avatar.sm{\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n}\r\n\r\n.user_avatar.md{\r\n width: var(--spacing-6);\r\n height: var(--spacing-6);\r\n}\r\n\r\n.user_avatar.lg{\r\n width: 1.75rem;\r\n height: 1.75rem;\r\n}\r\n\r\n.user_avatar.xl{\r\n width: 2rem;\r\n height: 2rem;\r\n}\r\n\r\n.user_avatar.xl2{\r\n width: 2rem;\r\n height: 2rem;\r\n}\r\n\r\n.user_avatar.profile_sm{\r\n width: 2.25rem;\r\n height: 2.25rem;\r\n}\r\n\r\n.user_avatar.profile_md{\r\n width: 3rem;\r\n height: 3rem;\r\n}\r\n\r\n.user_avatar.profile_lg{\r\n width: 5rem;\r\n height: 5rem;\r\n}\r\n\r\n/* Avatar Color Styles */\r\n.initials.gray,\r\n.placeholder.gray{\r\n background-color: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\n.initials.gray:hover,\r\n.placeholder.gray:hover{\r\n background-color: var(--color-background-gray-subtle, #E3E8EF);\r\n}\r\n\r\n.initials.gray:active,\r\n.placeholder.gray:active{\r\n background-color: var(--color-background-gray-subtlest, #F6F8FA);\r\n}\r\n\r\n.initials.blue,\r\n.placeholder.blue{\r\n background-color: var(--color-background-information-subtler, #C8E0F9);\r\n}\r\n\r\n.initials.blue:hover,\r\n.placeholder.blue:hover{\r\n background-color: var(--color-background-information-subtle, #9AC7F4);\r\n}\r\n\r\n.initials.blue:active,\r\n.placeholder.blue:active{\r\n background-color: var(--color-background-information-subtlest, #E4F0FC);\r\n}\r\n\r\n.initials.cyan,\r\n.placeholder.cyan{\r\n background-color: var(--color-background-discovery-subtler, #E0F2FE);\r\n}\r\n\r\n.initials.cyan:hover,\r\n.placeholder.cyan:hover{\r\n background-color: var(--color-background-discovery-subtle, #B9E6FE);\r\n}\r\n\r\n.initials.cyan:active,\r\n.placeholder.cyan:active{\r\n background-color: var(--color-background-discovery-subtlest, #F0F9FF);\r\n}\r\n\r\n.initials.pink,\r\n.placeholder.pink{\r\n background-color: var(--color-background-pink-subtler, #FCE7F6);\r\n}\r\n\r\n.initials.pink:hover,\r\n.placeholder.pink:hover{\r\n background-color: var(--color-background-pink-subtle, #FCCEEE);\r\n}\r\n\r\n.initials.pink:active,\r\n.placeholder.pink:active{\r\n background-color: var(--color-background-pink-subtlest, #FDF2FA);\r\n}\r\n\r\n.initials.purple,\r\n.placeholder.purple{\r\n background-color: var(--color-background-purple-subtler, #EBE9FE);\r\n}\r\n\r\n.initials.purple:hover,\r\n.placeholder.purple:hover{\r\n background-color: var(--color-background-purple-subtle, #D9D6FE);\r\n}\r\n\r\n.initials.purple:active,\r\n.placeholder.purple:active{\r\n background-color: var(--color-background-purple-subtlest, #F4F3FF);\r\n}\r\n\r\n.initials.green,\r\n.placeholder.green{\r\n background-color: var(--color-background-success-subtler, #DCFAE6);\r\n}\r\n\r\n.initials.green:hover,\r\n.placeholder.green:hover{\r\n background-color: var(--color-background-success-subtle, #A9EFC5);\r\n}\r\n\r\n.initials.green:active,\r\n.placeholder.green:active{\r\n background-color: var(--color-background-success-subtlest, #ECFDF3);\r\n}\r\n\r\n.initials.yellow,\r\n.placeholder.yellow{\r\n background-color: var(--color-background-warning-subtler, #FEF0C7);\r\n}\r\n\r\n.initials.yellow:hover,\r\n.placeholder.yellow:hover{\r\n background-color: var(--color-background-warning-subtle, #FEDF89);\r\n}\r\n\r\n.initials.yellow:active,\r\n.placeholder.yellow:active{\r\n background-color: var(--color-background-warning-subtlest, #FFFAEB);\r\n}\r\n\r\n\r\n::slotted([slot=\"initials\"].gray){\r\n color: var(--color-text, #4B5565) !important;\r\n}\r\n\r\n::slotted([slot=\"initials\"].blue){\r\n color: var(--color-text-information, #064E94) !important;\r\n}\r\n\r\n::slotted([slot=\"initials\"].cyan){\r\n color: var(--color-text-discovery, #0086C9) !important;\r\n}\r\n\r\n::slotted([slot=\"initials\"].pink){\r\n color: var(--color-text-pink, #DD2590) !important;\r\n}\r\n\r\n::slotted([slot=\"initials\"].purple){\r\n color: var(--color-text-purple, #6938EF) !important;\r\n}\r\n\r\n::slotted([slot=\"initials\"].green){\r\n color: var(--color-text-success, #079455) !important;\r\n}\r\n\r\n::slotted([slot=\"initials\"].yellow){\r\n color: var(--color-text-warning, #DC6803) !important;\r\n}\r\n\r\n.user_avatar.gray path{\r\n fill: var(--color-icon-subtle, #697586) !important;\r\n}\r\n\r\n.user_avatar.blue path{\r\n fill: var(--color-icon-information, #064E94) !important;\r\n}\r\n\r\n.user_avatar.cyan path{\r\n fill: var(--color-icon-discovery, #0086C9) !important;\r\n}\r\n\r\n.user_avatar.pink path{\r\n fill: var(--color-icon-pink, #DD2590) !important;\r\n}\r\n\r\n.user_avatar.purple path{\r\n fill: var(--color-icon-purple, #6938EF) !important;\r\n}\r\n\r\n.user_avatar.green path{\r\n fill: var(--color-icon-success, #079455) !important;\r\n}\r\n\r\n.user_avatar.yellow path{\r\n fill: var(--color-icon-warning, #DC6803) !important;\r\n}","import { Component, Element, h, Prop, State } from \"@stencil/core\";\r\nimport { ColorTypes, BorderWeights, GeneralSizes, OnlineIndicatorStates } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-avatar',\r\n styleUrl: 'gb-avatar.css',\r\n shadow: true,\r\n})\r\nexport class GbAvatar {\r\n @Prop() size: GeneralSizes;\r\n @Prop() placeholder: boolean = false;\r\n @Prop() text: boolean = true;\r\n @Prop() statusIcon: string = '';\r\n @Prop() state: OnlineIndicatorStates = OnlineIndicatorStates.Online;\r\n @Prop() icon: 'user' = 'user';\r\n @Prop() color: ColorTypes;\r\n @Prop() showBorder: boolean = false;\r\n @Element() el: HTMLElement;\r\n @Prop() weight: BorderWeights = BorderWeights.Light;\r\n @State() assignedColorClass: string;\r\n\r\n private colorClasses = [\r\n 'gray', // Red\r\n 'blue', // Green\r\n 'cyan', // Blue\r\n 'green', // Pink\r\n 'purple', // Yellow\r\n 'pink', // Purple\r\n 'yellow', // Teal\r\n ];\r\n\r\n getInitialsSize() {\r\n switch (this.size) {\r\n case 'xl2':\r\n return 'display-xs-semi-bold';\r\n case 'xl':\r\n return 'text-xl-semi-bold';\r\n case 'lg':\r\n return 'text-lg-semi-bold';\r\n case 'md':\r\n return 'text-md-semi-bold';\r\n case 'sm':\r\n return 'text-sm-semi-bold';\r\n case 'xs':\r\n return 'text-xs-semi-bold';\r\n case 'xxs':\r\n return 'text-xxs-semi-bold';\r\n }\r\n }\r\n\r\n setWeight() {\r\n if (this.showBorder) {\r\n switch (this.size) {\r\n case 'xl2':\r\n return BorderWeights.Regular;\r\n case 'xl':\r\n return BorderWeights.Regular;\r\n case 'lg':\r\n return BorderWeights.Regular;\r\n case 'md':\r\n return BorderWeights.Regular;\r\n case 'sm':\r\n return BorderWeights.Light;\r\n case 'xs':\r\n return BorderWeights.Light;\r\n case 'xxs':\r\n return BorderWeights.VeryLight;\r\n }\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 private getRandomColorClass(): string {\r\n const randomIndex = Math.floor(Math.random() * this.colorClasses.length);\r\n return this.colorClasses[randomIndex];\r\n }\r\n\r\n componentDidLoad() {\r\n const slottedInitials = this.el.querySelector('h1');\r\n\r\n if (slottedInitials) {\r\n slottedInitials.classList.add(this.getInitialsSize());\r\n slottedInitials.classList.add(this.assignedColorClass);\r\n }\r\n }\r\n\r\n componentWillLoad() {\r\n if (!this.color) {\r\n this.assignedColorClass = this.getRandomColorClass();\r\n } else {\r\n this.assignedColorClass = this.color.toLowerCase();\r\n }\r\n }\r\n\r\n render() {\r\n const classes = `${this.assignedColorClass}`;\r\n\r\n return [\r\n <div class=\"avatar\">\r\n <gb-avatar-contrast-inner-border show-border={this.showBorder} size={this.size} weight={this.weight}>\r\n <div class={`inner_content ${this.size}`}>\r\n {this.text ? (\r\n // ${!this.color ? 'gray' : this.color}\r\n <div class={`initials ${classes}`}>\r\n <slot name=\"initials\"></slot>\r\n </div>\r\n ) : (\r\n <slot name=\"image\"></slot>\r\n )}\r\n {this.placeholder && (\r\n <div class={`placeholder ${classes}`}>\r\n {this.icon === 'user' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" class={`user_avatar ${this.size} ${classes}`}>\r\n <path\r\n d=\"M11.8706 9.89137C11.9482 9.93754 12.044 9.99158 12.1524 10.0528C12.6276 10.3209 13.3459 10.7261 13.8381 11.2078C14.1458 11.5091 14.4383 11.9061 14.4914 12.3924C14.548 12.9097 14.3223 13.395 13.8697 13.8263C13.0887 14.5703 12.1515 15.1666 10.9393 15.1666H5.06045C3.84825 15.1666 2.91106 14.5703 2.13009 13.8263C1.67741 13.395 1.45177 12.9097 1.50831 12.3924C1.56147 11.9061 1.85391 11.5091 2.16169 11.2078C2.6538 10.7261 3.37214 10.3209 3.84735 10.0528C3.95578 9.99158 4.05158 9.93754 4.12912 9.89137C6.49848 8.48055 9.50126 8.48055 11.8706 9.89137Z\"\r\n fill=\"#697586\"\r\n />\r\n <path\r\n d=\"M4.49987 4.33325C4.49987 2.40026 6.06688 0.833252 7.99987 0.833252C9.93287 0.833252 11.4999 2.40026 11.4999 4.33325C11.4999 6.26625 9.93287 7.83325 7.99987 7.83325C6.06688 7.83325 4.49987 6.26625 4.49987 4.33325Z\"\r\n fill=\"#697586\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </gb-avatar-contrast-inner-border>\r\n <gb-status-indicator class={`indicator ${this.size}`} status-icon={this.statusIcon} size={this.size} state={this.state}></gb-status-indicator>\r\n </div>,\r\n ];\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.inner_border{\r\n border-radius: var(--rounded-full);\r\n width: fit-content;\r\n height: fit-content;\r\n}\r\n\r\n.inner_border.very_light.no_border{\r\n border: 0.3px solid transparent;\r\n}\r\n\r\n.inner_border.light.no_border{\r\n border: 0.5px solid transparent;\r\n}\r\n\r\n.inner_border.regular.no_border{\r\n border: 0.75px solid transparent;\r\n}\r\n\r\n.inner_border.heavy.no_border{\r\n border: 1px solid transparent;\r\n}\r\n\r\n/* Weights */\r\n.inner_border.very_light{\r\n border: 0.3px solid var(--color-blanket-subtler, rgba(33, 44, 101, 0.2));\r\n}\r\n\r\n.inner_border.light{\r\n border: 0.5px solid var(--color-blanket-subtler, rgba(33, 44, 101, 0.2));\r\n}\r\n\r\n.inner_border.regular{\r\n border: 0.75px solid var(--color-blanket-subtler, rgba(33, 44, 101, 0.2));\r\n}\r\n\r\n.inner_border.heavy{\r\n border: 1px solid var(--color-blanket-subtler, rgba(33, 44, 101, 0.2));\r\n}","import { Component, h, Prop } from \"@stencil/core\";\r\nimport { BorderWeights, GeneralSizes } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-avatar-contrast-inner-border',\r\n styleUrl: 'gb-avatar-contrast-inner-border.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbAvatarContrastInnerBorder {\r\n @Prop() weight: BorderWeights;\r\n @Prop() size: GeneralSizes;\r\n @Prop() showBorder: boolean = false;\r\n\r\n setWeight() {\r\n if(this.showBorder){\r\n switch (this.size) {\r\n case 'xl2':\r\n return BorderWeights.Regular;\r\n case 'xl':\r\n return BorderWeights.Regular;\r\n case 'lg':\r\n return BorderWeights.Regular;\r\n case 'md':\r\n return BorderWeights.Regular;\r\n case 'sm':\r\n return BorderWeights.Light;\r\n case 'xs':\r\n return BorderWeights.Light;\r\n case 'xxs':\r\n return BorderWeights.VeryLight;\r\n case 'profile_lg':\r\n return BorderWeights.Heavy;\r\n case 'profile_md':\r\n return BorderWeights.Heavy;\r\n case 'profile_sm':\r\n return BorderWeights.Regular;\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`inner_border ${this.size} ${this.weight} ${!this.showBorder ? 'no_border' : ''}`}>\r\n <slot></slot>\r\n </div>\r\n );\r\n }\r\n}","@import '../../global/global.css';\r\n\r\n.simple-dropdown {\r\n display: flex;\r\n width: 17rem;\r\n padding: 0px;\r\n flex-direction: column;\r\n align-items: flex-start;\r\n gap: 0px;\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-lg);\r\n}\r\n\r\n.profile {\r\n display: flex;\r\n align-items: flex-start;\r\n gap: var(--spacing-none);\r\n border-radius: var(--rounded-none);\r\n border-bottom: 1px solid var(--color-border-subtler, #e3e8ef); \r\n padding: 0.5rem;\r\n flex: 1;\r\n width: 100%;\r\n box-sizing: border-box;\r\n}\r\n\r\n.complex-dropdown {\r\n width: 17rem;\r\n display: flex;\r\n padding: 0px;\r\n flex-direction: column;\r\n align-items: flex-start;\r\n gap: 0px;\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-lg);\r\n}\r\n\r\n.menu-items {\r\n display: flex;\r\n width: 96.5%;\r\n padding: var(--spacing-none);\r\n flex-direction: column;\r\n align-items: flex-start;\r\n gap: var(--spacing-none);\r\n}\r\n\r\n.list {\r\n padding: var(--spacing-1) var(--spacing-none);\r\n align-self: stretch;\r\n border-radius: var(--rounded-none);\r\n}\r\n\r\n.list-group-one,\r\n.list-group-two,\r\n.list-group-three {\r\n width: 100%;\r\n padding: var(--spacing-1) var(--spacing-none);\r\n}\r\n\r\n.list-group-one,\r\n.list-group-two {\r\n border-bottom: 1px solid var(--color-border-subtler, #e3e8ef);\r\n}\r\n\r\n.item {\r\n width: 96.5%;\r\n}\r\n\r\n.label_group {\r\n display: flex;\r\n padding: 0px;\r\n align-items: center;\r\n gap: 12px;\r\n align-self: stretch;\r\n border-radius: var(--rounded-none);\r\n}\r\n\r\n.theme_tab {\r\n width: 100%;\r\n box-sizing: border-box;\r\n padding: var(--spacing-3);\r\n border-bottom: 1px solid var(--color-border-subtler, #e3e8ef);\r\n}\r\n\r\n.roles {\r\n width: 100%;\r\n display: flex;\r\n padding: var(--spacing-3);\r\n gap: var(--spacing-2);\r\n flex-direction: column;\r\n align-items: flex-start;\r\n border-bottom: 1px solid var(--color-border-subtler, #e3e8ef);\r\n color: var(--color-text, #4b5565);\r\n box-sizing: border-box;\r\n}\r\n\r\n.badges {\r\n width: 90%;\r\n display: flex;\r\n align-items: center;\r\n align-content: center;\r\n gap: 0.5rem var(--spacing-2);\r\n align-self: stretch;\r\n flex-wrap: wrap;\r\n}","import { Component, Element, Event, EventEmitter, Prop, h } from '@stencil/core';\r\nimport { ColorTypes, DropdownListGroup, DropdownRoles, ThemeTypes } from '../../models/reusableModels';\r\n@Component({\r\n tag: 'gb-avatar-dropdown',\r\n styleUrl: 'gb-avatar-dropdown.css',\r\n shadow: true,\r\n})\r\nexport class GbAvatarDropdown {\r\n @Prop() type: 'simple' | 'complex' = 'simple';\r\n @Prop() text: boolean = false;\r\n @Prop() showProfile: boolean;\r\n\r\n @Prop() showThemeTab: boolean;\r\n @Prop() showRoles: boolean = false;\r\n @Prop() roles: DropdownRoles[] = [\r\n // {\r\n // badgeLabel: 'Initiator',\r\n // badgeColor: 'information',\r\n // badgeType: 'badge_color',\r\n // },\r\n // {\r\n // badgeLabel: 'Authorizer',\r\n // badgeColor: 'success',\r\n // badgeType: 'badge_color',\r\n // },\r\n // {\r\n // badgeLabel: 'Viewer',\r\n // badgeColor: 'gray',\r\n // badgeType: 'badge_color',\r\n // },\r\n ];\r\n @Prop() showLogOut: boolean;\r\n @Prop() listGroupOne: DropdownListGroup[] = [\r\n // { label: 'View Profile', icon: 'assets/user.svg', shortcut: 'Ctrl K + P' },\r\n // { label: 'Documentation', icon: 'assets/book-open-02.svg', shortcut: 'Ctrl + T' },\r\n // { label: 'Support', icon: 'assets/customer-support.svg', shortcut: 'Ctrl + C' },\r\n ];\r\n @Prop() listGroupTwo: DropdownListGroup[] = [\r\n // { label: 'Configuration', icon: 'assets/user.svg', shortcut: 'Ctrl + S' },\r\n // { label: 'Team', icon: 'assets/book-open-02.svg', shortcut: 'Ctrl K + T' },\r\n // { label: 'Invite members', icon: 'assets/customer-support.svg', shortcut: 'Ctrl + I' },\r\n ];\r\n @Prop() color: ColorTypes;\r\n @Prop() showBorder: boolean = false;\r\n @Prop() currentTheme: ThemeTypes;\r\n @Element() el: HTMLElement;\r\n @Event() itemClicked: EventEmitter<string>;\r\n @Event() themeTabClicked: EventEmitter<string>;\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 onItemClicked(item: string) {\r\n this.itemClicked.emit(item);\r\n }\r\n\r\n emitTheme(theme) {\r\n this.themeTabClicked.emit(theme);\r\n }\r\n\r\n componentDidLoad() {\r\n const slottedInitials = this.el.querySelector('[slot=\"initials\"]');\r\n const nameInitials = this.el.querySelector('[slot=\"name\"');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"supporting_text\"');\r\n\r\n if (slottedInitials) {\r\n slottedInitials.classList.add('text-md-semi-bold');\r\n slottedInitials.classList.add(this.applyColorToInitials() || 'gray');\r\n }\r\n\r\n if (nameInitials) {\r\n nameInitials.classList.add('text-sm-semi-bold');\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add('text-sm-regular');\r\n }\r\n }\r\n\r\n render() {\r\n if (this.type === 'simple') {\r\n return (\r\n <div class=\"simple-dropdown\">\r\n <div class=\"profile\">\r\n <gb-avatar-label-group size=\"md\" text={true} color={this.color} show-border={this.showBorder}>\r\n <slot name=\"name\" slot=\"name\"></slot>\r\n <slot name=\"initials\" slot=\"initials\"></slot>\r\n <slot name=\"supporting_text\" slot=\"supporting_text\"></slot>\r\n </gb-avatar-label-group>\r\n </div>\r\n <div class=\"menu-items\">\r\n <div class=\"list\">\r\n {this.showThemeTab && (\r\n <div class=\"theme_tab\">\r\n <gb-theme-tab current-active-tab={this.currentTheme} onThemeTabClicked={this.emitTheme.bind(this)}></gb-theme-tab>\r\n </div>\r\n )}\r\n {this.showProfile && (\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n iconSrc=\"assets/user_profile.svg\"\r\n label=\"View Profile\"\r\n shortcut\r\n shortcutIcon=\"K + P\"\r\n onClick={() => this.onItemClicked('view_profile')}\r\n ></gb-dropdown-items-with-shortcut>\r\n )}\r\n {this.showLogOut && (\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n iconSrc=\"assets/logout_button.svg\"\r\n label=\"Log out\"\r\n shortcut\r\n shortcutIcon=\"L\"\r\n onClick={() => this.onItemClicked('log_out')}\r\n ></gb-dropdown-items-with-shortcut>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n if (this.type === 'complex') {\r\n return (\r\n <div class=\"complex-dropdown\">\r\n <div class=\"profile\">\r\n <gb-avatar-label-group size=\"md\" class=\"label_group\" text={true} color={this.color}>\r\n <slot name=\"name\" slot=\"name\"></slot>\r\n <slot name=\"initials\" slot=\"initials\"></slot>\r\n <slot name=\"supporting_text\" slot=\"supporting_text\"></slot>\r\n </gb-avatar-label-group>\r\n </div>\r\n {this.showThemeTab && (\r\n <div class=\"theme_tab\">\r\n <gb-theme-tab current-active-tab={this.currentTheme} onThemeTabClicked={this.emitTheme.bind(this)}></gb-theme-tab>\r\n </div>\r\n )}\r\n {this.showRoles && (\r\n <div class=\"roles\">\r\n <p class=\"text-sm-medium\">Available roles</p>\r\n <div class=\"badges\">\r\n {this.roles.map(role => (\r\n <gb-badge size=\"md\" color={role.badgeColor} type={role.badgeType}>\r\n <p>{role.badgeLabel}</p>\r\n </gb-badge>\r\n ))}\r\n </div>\r\n </div>\r\n )}\r\n {this.listGroupOne.length > 0 && (\r\n <div class=\"list-group-one\">\r\n {this.listGroupOne.map(item => (\r\n <div class=\"item\">\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n iconSrc={item.icon}\r\n label={item.label}\r\n shortcut\r\n shortcutIcon={item.shortcut}\r\n onClick={() => this.onItemClicked(item.label.replace(/\\s+/g, '_').toLowerCase())}\r\n ></gb-dropdown-items-with-shortcut>\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n {this.listGroupTwo.length > 0 && (\r\n <div class=\"list-group-two\">\r\n {this.listGroupTwo.map(item => (\r\n <div class=\"item\">\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n iconSrc={item.icon}\r\n label={item.label}\r\n shortcut\r\n shortcutIcon={item.shortcut}\r\n onClick={() => this.onItemClicked(item.label.replace(/\\s+/g, '_').toLowerCase())}\r\n ></gb-dropdown-items-with-shortcut>\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n {this.showLogOut && (\r\n <div class=\"list-group-three\">\r\n <div class=\"item\">\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n iconSrc=\"assets/logout_button.svg\"\r\n label=\"Log out\"\r\n shortcut\r\n shortcutIcon=\"Ctrl + L\"\r\n onClick={() => this.onItemClicked('log_out')}\r\n ></gb-dropdown-items-with-shortcut>\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n:host{\r\n width: 100%;\r\n height: fit-content;\r\n}\r\n\r\n.label_pic{\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n\r\n.label{\r\n width: 100%;\r\n display: flex;\r\n padding: var(--spacing-none);\r\n border-radius: var(--rounded-none);\r\n overflow: hidden;\r\n}\r\n\r\n/* Label Sizes */\r\n.label.sm{\r\n gap: 0.625rem;\r\n}\r\n\r\n.label.md{\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.label.lg{\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.label.xl{\r\n gap: var(--spacing-4);\r\n}\r\n\r\n.label_text{\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n gap: var(--spacing-2);\r\n flex: 1;\r\n overflow: hidden;\r\n}\r\n\r\n::slotted([slot=\"name\"]){\r\n color: var(--color-text, #4B5565) !important;\r\n width: 100%;\r\n overflow: hidden;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n}\r\n\r\n::slotted([slot=\"supporting_text\"]){\r\n color: var(--color-text-subtle, #697586) !important;\r\n width: 100%;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n}","import { Component, Element, h, Prop } from \"@stencil/core\";\r\nimport { ColorTypes, GeneralSizes, OnlineIndicatorStates } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-avatar-label-group',\r\n styleUrl: 'gb-avatar-label-group.css',\r\n shadow: true,\r\n})\r\nexport class GbAvatarLabelGroup {\r\n @Prop() size: GeneralSizes;\r\n @Prop() statusIcon: string = '';\r\n @Prop() state: OnlineIndicatorStates = OnlineIndicatorStates.Online;\r\n @Prop() placeholder: boolean = false;\r\n @Prop() text: boolean = false;\r\n @Prop() color: ColorTypes;\r\n @Prop() showBorder: boolean = false;\r\n @Element() el: HTMLElement;\r\n\r\n getInitialsSize() {\r\n switch (this.size) {\r\n case 'xl2':\r\n return 'display-xs-semi-bold';\r\n case 'xl':\r\n return 'text-xl-semi-bold';\r\n case 'lg':\r\n return 'text-lg-semi-bold';\r\n case 'md':\r\n return 'text-md-semi-bold';\r\n case 'sm':\r\n return 'text-sm-semi-bold';\r\n case 'xs':\r\n return 'text-xs-semi-bold';\r\n }\r\n }\r\n\r\n getNameSize() {\r\n switch (this.size) {\r\n case 'xl':\r\n return 'text-lg-semi-bold';\r\n case 'lg':\r\n return 'text-md-semi-bold';\r\n case 'md':\r\n return 'text-sm-semi-bold';\r\n case 'sm':\r\n return 'text-sm-semi-bold';\r\n }\r\n }\r\n\r\n getOtherTextSize() {\r\n switch (this.size) {\r\n case 'xl':\r\n return 'text-md-regular';\r\n case 'lg':\r\n return 'text-md-regular';\r\n case 'md':\r\n return 'text-sm-regular';\r\n case 'sm':\r\n return '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 componentDidLoad() {\r\n const slottedInitials = this.el.querySelector('[slot=\"initials\"]');\r\n const nameSlot = this.el.querySelector('[slot=\"name\"]');\r\n const othersSlot = this.el.querySelector('[slot=\"supporting_text\"]');\r\n\r\n if (slottedInitials) {\r\n slottedInitials.classList.add(this.getInitialsSize());\r\n slottedInitials.classList.add(this.applyColorToInitials() || 'gray');\r\n }\r\n\r\n if (nameSlot) {\r\n nameSlot.classList.add(this.getNameSize());\r\n }\r\n\r\n if (othersSlot) {\r\n othersSlot.classList.add(this.getOtherTextSize());\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`label ${this.size}`}>\r\n <div class=\"label_pic\">\r\n <gb-avatar\r\n size={this.size}\r\n status-icon={this.statusIcon}\r\n state={this.state}\r\n text={true}\r\n placeholder={this.placeholder}\r\n color={!this.color ? 'gray' : this.color}\r\n show-border={this.showBorder}\r\n >\r\n {!this.text ? <slot name=\"image\" slot=\"image\"></slot> : <slot name=\"initials\" slot=\"initials\"></slot>}\r\n </gb-avatar>\r\n </div>\r\n <div class=\"label_text\">\r\n <slot name=\"name\"></slot>\r\n <slot name=\"supporting_text\"></slot>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.profile_photo{\r\n position: relative;\r\n width: fit-content;\r\n height: fit-content;\r\n background-color: var(--color-border-inverse, #FFFFFF);\r\n border-radius: var(--rounded-full);\r\n box-shadow: var(--shadow-md);\r\n padding: 0.2rem;\r\n}\r\n\r\n.placeholder{\r\n width: 100%;\r\n height: 100%;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n background-color: var(--color-background-gray-subtler, #EEF2F6);\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\n::slotted(h1){\r\n color: var(--color-text, #4B5565) !important;\r\n}\r\n\r\n.user_avatar.sm{\r\n width: 2.25rem;\r\n height: 2.25rem;\r\n}\r\n\r\n.user_avatar.md{\r\n width: 3rem;\r\n height: 3rem;\r\n}\r\n.user_avatar.lg{\r\n width: 5rem;\r\n height: 5rem;\r\n}","import { Component, Element, h, Prop } from \"@stencil/core\";\r\nimport { BorderWeights, GeneralSizes } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-avatar-profile-photo',\r\n styleUrl: 'gb-avatar-profile-photo.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbAvatarProfilePhoto {\r\n @Prop() placeholder: boolean = false;\r\n @Prop() text: boolean = false;\r\n @Prop() size: GeneralSizes;\r\n @Prop() verified: boolean = false;\r\n @Element() el: HTMLElement;\r\n @Prop() icon: string = 'user';\r\n\r\n getInitialsSize() {\r\n switch (this.size) {\r\n case 'lg': return 'display-xl-semi-bold';\r\n case 'md': return 'display-md-semi-bold';\r\n case 'sm': return 'display-sm-semi-bold';\r\n }\r\n }\r\n\r\n getProfileSize() {\r\n switch (this.size) {\r\n case 'lg': return 'profile_lg';\r\n case 'md': return 'profile_md';\r\n case 'sm': return 'profile_sm';\r\n }\r\n }\r\n\r\n setWeight() {\r\n switch (this.size) {\r\n case 'lg' : return BorderWeights.Heavy;\r\n case 'md' : return BorderWeights.Heavy;\r\n case 'sm' : return BorderWeights.Regular;\r\n }\r\n }\r\n\r\n componentDidLoad() {\r\n const slottedInitials = this.el.querySelector('h1');\r\n \r\n if (slottedInitials) {\r\n slottedInitials.classList.add(this.getInitialsSize());\r\n }\r\n }\r\n\r\n render() {\r\n const profileSize = this.getProfileSize();\r\n\r\n return (\r\n <div class={`profile_photo ${profileSize}`}>\r\n <gb-avatar\r\n size={profileSize}\r\n icon=\"user\"\r\n text={this.text}\r\n status-icon={this.verified && ('verified')}\r\n weight={this.setWeight()}\r\n color=\"gray\"\r\n >\r\n {!this.text ? (\r\n <slot name=\"image\" slot=\"image\"></slot>\r\n ) : (\r\n <slot name=\"initials\" slot=\"initials\"></slot>\r\n )}\r\n {this.placeholder && (\r\n <div class={`placeholder`}>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" class={`user_avatar ${this.size}`}>\r\n <path d=\"M11.8706 9.89137C11.9482 9.93754 12.044 9.99158 12.1524 10.0528C12.6276 10.3209 13.3459 10.7261 13.8381 11.2078C14.1458 11.5091 14.4383 11.9061 14.4914 12.3924C14.548 12.9097 14.3223 13.395 13.8697 13.8263C13.0887 14.5703 12.1515 15.1666 10.9393 15.1666H5.06045C3.84825 15.1666 2.91106 14.5703 2.13009 13.8263C1.67741 13.395 1.45177 12.9097 1.50831 12.3924C1.56147 11.9061 1.85391 11.5091 2.16169 11.2078C2.6538 10.7261 3.37214 10.3209 3.84735 10.0528C3.95578 9.99158 4.05158 9.93754 4.12912 9.89137C6.49848 8.48055 9.50126 8.48055 11.8706 9.89137Z\" fill=\"#697586\"/>\r\n <path d=\"M4.49987 4.33325C4.49987 2.40026 6.06688 0.833252 7.99987 0.833252C9.93287 0.833252 11.4999 2.40026 11.4999 4.33325C11.4999 6.26625 9.93287 7.83325 7.99987 7.83325C6.06688 7.83325 4.49987 6.26625 4.49987 4.33325Z\" fill=\"#697586\"/>\r\n </svg>\r\n </div>\r\n )}\r\n </gb-avatar>\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n:host {\r\n display: flex;\r\n align-items: center;\r\n width: fit-content;\r\n}\r\n\r\ndiv {\r\n display: inline-flex;\r\n align-items: center;\r\n gap: 0px;\r\n flex-shrink: 0;\r\n text-align: center;\r\n}\r\n\r\n.label {\r\n padding: 2px;\r\n}\r\n\r\n.icon {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\ndiv.sm {\r\n height: 22px;\r\n min-height: 22px;\r\n gap: 0.25rem;\r\n padding: var(--spacing-none) var(--spacing-2);\r\n}\r\n\r\ndiv.md {\r\n height: var(--spacing-6);\r\n min-height: var(--spacing-6);\r\n padding: var(--spacing-none) var(--spacing-2);\r\n gap: 0.38rem;\r\n}\r\n\r\ndiv.lg {\r\n height: 28px;\r\n min-height: 28px;\r\n gap: 0.38rem;\r\n padding: var(--spacing-none) var(--spacing-2);\r\n}\r\n\r\ndiv.pill_color {\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\ndiv.pill_color.gray,\r\n.badge_color.gray {\r\n border: 1px solid var(--color-border-subtler, #e3e8ef);\r\n background: var(--color-background-gray-subtler, #eef2f6);\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n.pill_color.primary,\r\n.badge_color.primary {\r\n border: 1px solid var(--color-border-information-subtler, #c8e0f9);\r\n background: var(--color-background-information-subtlest, #e4f0fc);\r\n color: var(--color-text-brandDarkBlue, #212c65) !important;\r\n}\r\n\r\n.pill_color.error,\r\n.badge_color.error {\r\n border: 1px solid var(--color-border-danger-subtler, #fde3e5);\r\n background: var(--color-background-danger-subtlest, #fef1f2);\r\n color: var(--color-text-danger, #b51726) !important;\r\n}\r\n\r\n.pill_color.warning,\r\n.badge_color.warning {\r\n border: 1px solid var(--color-border-warning-subtler, #fef0c7);\r\n background: var(--color-background-warning-subtlest, #fffaeb);\r\n color: var(--color-text-warning, #dc6803) !important;\r\n}\r\n\r\n.pill_color.success,\r\n.badge_color.success {\r\n border: 1px solid var(--color-border-success-subtler, #dcfae6);\r\n background: var(--color-background-success-subtlest, #ecfdf3);\r\n color: var(--color-text-success, #079455) !important;\r\n}\r\n\r\n.pill_color.discovery,\r\n.badge_color.discovery {\r\n border: 1px solid var(--color-border-discovery-subtler, #e0f2fe);\r\n background: var(--color-background-discovery-subtlest, #f0f9ff);\r\n color: var(--color-text-discovery, #0086c9) !important;\r\n}\r\n\r\n.pill_color.information,\r\n.badge_color.information {\r\n border: 1px solid var(--color-border-information-subtler, #c8e0f9);\r\n background: var(--color-background-information-subtlest, #e4f0fc);\r\n}\r\n\r\n.pill_color.pink,\r\n.badge_color.pink {\r\n border: 1px solid var(--color-border-pink-subtler, #fce7f6);\r\n background: var(--color-background-pink-subtlest, #fdf2fa);\r\n color: var(--color-text-pink, #dd2590) !important;\r\n}\r\n\r\n.pill_color.purple,\r\n.badge_color.purple {\r\n border: 1px solid var(--color-border-purple-subtler, #ebe9fe);\r\n background: var(--color-background-purple-subtlest, #f4f3ff);\r\n color: var(--color-text-purple, #6938ef);\r\n}\r\n\r\n#badge_text_information {\r\n font-size: 13rem !important;\r\n color: var(--color-text-information, #064e94) !important;\r\n}\r\n\r\n.pill_color svg,\r\n.badge_color svg,\r\n.pill_outline svg,\r\n.badge_modern svg {\r\n width: var(--spacing-2);\r\n height: var(--spacing-2);\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.gray svg path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.gray svg path[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.primary svg path[stroke] {\r\n stroke: var(--color-icon-brandDarkBlue, #212c65);\r\n}\r\n\r\n.primary svg path[fill] {\r\n fill: var(--color-icon-brandDarkBlue, #212c65);\r\n}\r\n\r\n.error svg path[stroke] {\r\n stroke: var(--color-icon-danger, #b51726);\r\n}\r\n\r\n.error svg path[fill] {\r\n fill: var(--color-icon-danger, #b51726);\r\n}\r\n\r\n.warning svg path[stroke] {\r\n stroke: var(--color-icon-warning, #dc6803);\r\n}\r\n\r\n.warning svg path[fill] {\r\n fill: var(--color-icon-warning, #dc6803);\r\n}\r\n\r\n.icon.success svg path[stroke] {\r\n stroke: var(--color-icon-success, #079455);\r\n}\r\n\r\n.success svg path[fill] {\r\n fill: var(--color-icon-success, #079455);\r\n}\r\n\r\n.discovery svg path[stroke] {\r\n stroke: var(--color-icon-discovery, #0086c9);\r\n}\r\n\r\n.discovery svg path[fill] {\r\n fill: var(--color-icon-discovery, #0086c9);\r\n}\r\n\r\n.information svg path[stroke] {\r\n stroke: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.information svg path[fill] {\r\n fill: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.pink svg path[stroke] {\r\n stroke: var(--color-icon-pink, #dd2590);\r\n}\r\n\r\n.pink svg path[fill] {\r\n fill: var(--color-icon-pink, #dd2590);\r\n}\r\n\r\n.purple svg path[stroke] {\r\n stroke: var(--color-icon-purple, #6938ef);\r\n}\r\n\r\n.purple svg path[fill] {\r\n fill: var(--color-icon-purple, #6938ef);\r\n}\r\n\r\n.pill_outline {\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\n.pill_outline.gray {\r\n border: 1.5px solid var(--color-text, #4b5565);\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n.pill_outline.primary {\r\n border: 1.5px solid var(--color-text-brandDarkBlue, #212c65);\r\n color: var(--color-text-brandDarkBlue, #212c65) !important;\r\n}\r\n\r\n.pill_outline.error {\r\n border: 1.5px solid var(--color-text-danger, #b51726);\r\n color: var(--color-text-danger, #b51726) !important;\r\n}\r\n\r\n.pill_outline.warning {\r\n border: 1.5px solid var(--color-text-warning, #dc6803);\r\n color: var(--color-text-warning, #dc6803) !important;\r\n}\r\n\r\n.pill_outline.success {\r\n border: 1.5px solid var(--color-text-success, #079455);\r\n color: var(--color-text-success, #079455) !important;\r\n}\r\n\r\n.pill_outline.discovery {\r\n border: 1.5px solid var(--color-text-discovery, #0086c9);\r\n color: var(--color-text-discovery, #0086c9) !important;\r\n}\r\n\r\n.pill_outline.information {\r\n border: 1.5px solid var(--color-text-information, #064e94);\r\n}\r\n\r\n.pill_outline.pink {\r\n border: 1.5px solid var(--color-text-pink, #dd2590);\r\n color: var(--color-text-pink, #dd2590) !important;\r\n}\r\n\r\n.pill_outline.purple {\r\n border: 1.5px solid var(--color-text-purple, #6938ef);\r\n color: var(--color-text-purple, #6938ef);\r\n}\r\n\r\n.badge_color {\r\n border-radius: var(--rounded-xs);\r\n}\r\n\r\n.badge_modern {\r\n border-radius: var(--rounded-xs);\r\n border: 1px solid var(--color-border-subtler, #e3e8ef);\r\n box-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.badge_modern svg path {\r\n stroke: inherit; /* Inherit color from the parent, but set in the component */\r\n fill: inherit;\r\n}\r\n\r\n.icon svg {\r\n width: var(--spacing-4);\r\n height: var(--spacing-4);\r\n margin-top: -2px;\r\n}\r\n\r\n.icon svg path[stroke] {\r\n stroke: currentColor;\r\n}\r\n\r\n.icon svg path[fill] {\r\n fill: currentColor;\r\n}\r\n\r\n#icon-only svg {\r\n width: var(--spacing-3);\r\n height: var(--spacing-3);\r\n}\r\n\r\ndiv.md #icon-only svg {\r\n padding: 2px;\r\n}\r\n\r\n#icon-only {\r\n display: flex;\r\n padding: var(--spacing-none);\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-1);\r\n flex-shrink: 0;\r\n border-radius: var(--rounded-full);\r\n}\r\n","import { Component, Prop, getAssetPath, h, State, Element } from '@stencil/core';\r\nimport { BadgeIconTypes, BadgeTypes, GeneralColors, GeneralSizes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-badge',\r\n styleUrl: 'gb-badge.css',\r\n shadow: true,\r\n assetsDirs: ['assets'],\r\n})\r\nexport class GbBadges {\r\n @Prop() size!: GeneralSizes;\r\n @Prop() icon: BadgeIconTypes;\r\n @Prop() iconLeadingSwap?: string;\r\n @Prop() iconTrailingSwap?: string;\r\n @Prop() flagSwap: string;\r\n @Prop() color!: GeneralColors;\r\n @Prop() type!: BadgeTypes;\r\n @Prop() closeButton?: boolean = false;\r\n @State() leadingIconContent: string;\r\n @State() trailingIconContent: string;\r\n @Element() el: HTMLElement;\r\n\r\n private getDotColor(color: GeneralColors): string {\r\n const colorMap = {\r\n gray: '#4B5565',\r\n primary: '#212C65',\r\n error: '#B51726',\r\n warning: '#DC6803',\r\n success: '#079455',\r\n discovery: '#0BA5EC',\r\n information: '#064E94',\r\n pink: '#DD2590',\r\n purple: '#6938EF',\r\n };\r\n\r\n if (this.type === 'badge_modern') {\r\n return colorMap[color] || color;\r\n }\r\n\r\n return 'currentColor';\r\n }\r\n\r\n async componentWillLoad() {\r\n if (this.iconLeadingSwap) {\r\n const iconLeadingSrc = getAssetPath(`${this.iconLeadingSwap}`);\r\n this.leadingIconContent = await this.fetchSvgContent(iconLeadingSrc);\r\n }\r\n\r\n if (this.iconTrailingSwap) {\r\n const iconTrailingSrc = getAssetPath(`${this.iconTrailingSwap}`);\r\n this.trailingIconContent = await this.fetchSvgContent(iconTrailingSrc);\r\n }\r\n }\r\n\r\n private async fetchSvgContent(src: string): Promise<string> {\r\n try {\r\n const response = await fetch(src);\r\n if (response.ok) {\r\n return await response.text();\r\n }\r\n return '';\r\n } catch (error) {\r\n console.error('Error fetching SVG:', error);\r\n return '';\r\n }\r\n }\r\n\r\n getTextClass() {\r\n switch (this.size) {\r\n case 'sm':\r\n return 'text-xs-medium';\r\n case 'md':\r\n return 'text-sm-medium';\r\n case 'lg':\r\n return 'text-sm-medium';\r\n }\r\n }\r\n\r\n componentDidLoad() {\r\n const slottedContent = this.el.querySelector('p');\r\n\r\n if (slottedContent) {\r\n slottedContent.classList.add(this.getTextClass());\r\n slottedContent.id = `badge_text_${this.color}`;\r\n // slottedContent.classList.add(`${this.color}`);\r\n }\r\n }\r\n\r\n render() {\r\n const classes = {\r\n badge: true,\r\n [this.type]: true,\r\n [this.color]: true,\r\n [this.size]: true,\r\n };\r\n\r\n const flagSwap = getAssetPath(`${this.flagSwap}`);\r\n const dotColor = this.type === 'badge_modern' ? this.getDotColor(this.color) : 'currentColor';\r\n\r\n return (\r\n <div class={classes}>\r\n {this.icon === 'dot' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"8\" height=\"8\" viewBox=\"0 0 8 8\" fill={dotColor}>\r\n <circle cx=\"4\" cy=\"4\" r=\"3\" />\r\n </svg>\r\n )}\r\n {this.icon === 'icon_leading' && this.iconLeadingSwap && <div class={`icon left-icon`} innerHTML={this.leadingIconContent}></div>}\r\n {this.icon === 'country' && <img src={flagSwap} alt=\"Country Icon\" />}\r\n {this.icon === 'avatar' && (\r\n <gb-avatar class=\"avatar-icon\" size=\"xxs\" status-icon=\"false\">\r\n <slot name=\"image\" slot=\"image\"></slot>\r\n </gb-avatar>\r\n )}\r\n {this.icon !== 'only' && <slot></slot>}\r\n {this.icon === 'icon_trailing' && this.iconTrailingSwap && <div class={`icon right-icon`} innerHTML={this.trailingIconContent}></div>}\r\n {this.icon === 'only' && (\r\n <div id=\"icon-only\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" stroke={dotColor}>\r\n <path d=\"M6 2L6 10M10 6L2 6\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </div>\r\n )}\r\n {this.closeButton && this.icon !== 'only' && <gb-badge-close color={this.color} type=\"rounded\"></gb-badge-close>}\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\ndiv {\r\n display: flex;\r\n padding: var(--spacing-half);\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-none);\r\n height: fit-content;\r\n width: fit-content;\r\n cursor: pointer;\r\n}\r\n\r\ndiv svg{\r\n width: var(--spacing-3);\r\n height: var(--spacing-3);\r\n}\r\n\r\ndiv.square {\r\n border-radius: 3px;\r\n}\r\n\r\ndiv.rounded {\r\n border-radius: 8px;\r\n}\r\n\r\ndiv.gray, div.primary, div.error, div.warning, div.success, div.discovery, div.information, div.pink {\r\n background-color: transparent;\r\n}\r\n\r\ndiv.gray path{\r\n stroke: var(--color-icon, #4B5565); \r\n}\r\n\r\ndiv.primary path{\r\n stroke: var(--color-icon-brandDarkBlue, #212C65);\r\n}\r\n\r\ndiv.error path{\r\n stroke: var(--color-icon-danger, #B51726);\r\n}\r\n\r\ndiv.warning path{\r\n stroke: var(--color-icon-warning, #DC6803);\r\n}\r\n\r\ndiv.success path{\r\n stroke: var(--color-icon-success, #079455); \r\n}\r\n\r\ndiv.discovery path{\r\n stroke: var(--color-icon-discovery, #0086C9);\r\n}\r\n\r\ndiv.information path{\r\n stroke: var(--color-icon-information, #064E94);\r\n}\r\n\r\ndiv.pink path{\r\n stroke: var(--color-icon-pink, #DD2590); \r\n}\r\n\r\ndiv.gray:hover {\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\ndiv.primary:hover {\r\n background: var(--color-background-information-subtler, #C8E0F9);\r\n}\r\n\r\ndiv.error:hover {\r\n background: var(--color-background-danger-subtler, #FDE3E5);\r\n}\r\n\r\ndiv.warning:hover {\r\n background: var(--color-background-warning-subtler, #FEF0C7);\r\n}\r\n\r\ndiv.success:hover {\r\n background: var(--color-background-success-subtler, #DCFAE6);\r\n}\r\n\r\ndiv.discovery:hover {\r\n background: var(--color-background-discovery-subtler, #E0F2FE);\r\n}\r\n\r\ndiv.information:hover {\r\n background: var(--color-background-information-subtler, #C8E0F9);\r\n}\r\n\r\ndiv.pink:hover {\r\n background: var(--color-background-pink-subtler, #FCE7F6);\r\n}","import { Component, Prop, h } from '@stencil/core';\r\nimport { GeneralColors } from '../../models/reusableModels';\r\n\r\n@Component ({\r\n tag: 'gb-badge-close',\r\n styleUrl: 'gb-badge-close.css',\r\n shadow: true\r\n})\r\n\r\nexport class BadgeClose {\r\n @Prop() color: GeneralColors;\r\n @Prop() type: 'square' | 'rounded';\r\n\r\n render() {\r\n return (\r\n <div class={`${this.color} ${this.type}`}>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path d=\"M9.50024 2.5L2.50024 9.5M2.50024 2.5L9.50024 9.5\" stroke=\"#4B5565\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n );\r\n }\r\n} ","@import './../../global/global.css';\r\n\r\n:host {\r\n --button-color: var(--primary-color);\r\n --icon-color: var(--primary-color);\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\nbutton {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border: none;\r\n cursor: pointer;\r\n border-radius: var(--rounded-sm);\r\n width: 100%;\r\n transition: background-color 0.15s, color 0.15s;\r\n}\r\n\r\nbutton.only {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\nbutton .icon {\r\n display: inline-flex;\r\n width: auto;\r\n height: auto;\r\n}\r\n\r\nbutton .icon svg path[fill] {\r\n fill: var(--icon-color);\r\n}\r\n\r\nbutton .icon svg path[stroke] {\r\n stroke: var(--icon-color);\r\n}\r\n\r\nbutton .icon svg circle {\r\n stroke: var(--icon-color);\r\n}\r\n\r\n/* Button Sizes Styles */\r\nbutton.xl2 {\r\n padding: var(--spacing-none) var(--spacing-6);\r\n height: 3.5rem;\r\n gap: var(--spacing-3);\r\n}\r\n\r\nbutton.xl {\r\n padding: var(--spacing-none) var(--spacing-5);\r\n height: 3rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.lg {\r\n padding: 0.625rem 1.125rem;\r\n height: 2.75rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.md {\r\n padding: var(--spacing-none) var(--spacing-4);\r\n height: 2.5rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.sm {\r\n padding: var(--spacing-none) var(--spacing-3);\r\n height: 2.25rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.only.xl2 {\r\n width: 3.5rem;\r\n height: 3.5rem;\r\n}\r\n\r\nbutton.only.xl {\r\n width: 3rem;\r\n height: 3rem;\r\n}\r\n\r\nbutton.only.lg {\r\n width: 2.75rem;\r\n height: 2.75rem;\r\n}\r\n\r\nbutton.only.md {\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n}\r\n\r\nbutton.only.sm {\r\n width: 2.25rem;\r\n height: 2.25rem;\r\n}\r\n\r\nbutton.xl2 .icon svg {\r\n width: var(--spacing-6);\r\n height: var(--spacing-6);\r\n}\r\n\r\nbutton.xl .icon svg,\r\nbutton.lg .icon svg,\r\nbutton.md .icon svg,\r\nbutton.sm .icon svg {\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n}\r\n\r\n/* Hierarchy Styles */\r\nbutton.primary {\r\n background-color: var(--color-background-brandRed, #e21b2e);\r\n --icon-color: var(--color-icon-inverse, #ffffff);\r\n}\r\n\r\n.slotted_button_text.primary {\r\n color: var(--color-text-inverse, #ffffff) !important;\r\n}\r\n\r\nbutton.secondary_gray {\r\n background-color: transparent;\r\n border: 1px solid var(--color-border, #9aa4b2);\r\n --icon-color: var(--color-icon, #4b5565);\r\n}\r\n\r\n.slotted_button_text.secondary_gray {\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\nbutton.secondary_color {\r\n background-color: transparent;\r\n border: 1px solid var(--color-border-brandRed, #e21b2e);\r\n --icon-color: var(--color-icon-brandRed, #e21b2e);\r\n}\r\n\r\n.slotted_button_text.secondary_color {\r\n color: var(--color-text-brandRed, #e21b2e) !important;\r\n}\r\n\r\nbutton.tertiary_gray {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon, #4b5565);\r\n}\r\n\r\n.slotted_button_text.tertiary_gray {\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\nbutton.tertiary_color {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon-brandRed, #e21b2e);\r\n}\r\n\r\n.slotted_button_text.tertiary_color {\r\n color: var(--color-text-brandRed, #e21b2e) !important;\r\n}\r\n\r\nbutton.link_gray {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon, #4b5565);\r\n padding: var(--spacing-none);\r\n height: fit-content;\r\n justify-content: flex-start;\r\n}\r\n\r\n.slotted_button_text.link_gray {\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\nbutton.link_color {\r\n background-color: transparent;\r\n --icon-color: var(--color-link, #075db2);\r\n padding: var(--spacing-none);\r\n height: fit-content;\r\n justify-content: flex-start;\r\n}\r\n\r\n.slotted_button_text.link_color {\r\n color: var(--color-link, #075db2) !important;\r\n}\r\n\r\n/* Button Destructive Styles */\r\nbutton.primary.destructive {\r\n background-color: var(--color-background-danger, #b51726);\r\n --icon-color: var(--color-icon-danger-inverse, #ffffff);\r\n}\r\n\r\n.slotted_button_text.primary.destructive {\r\n color: var(--color-text-inverse, #ffffff) !important;\r\n}\r\n\r\nbutton.secondary_gray.destructive,\r\nbutton.secondary_color.destructive {\r\n border: 1px solid var(--color-border-danger, #b51726);\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\nbutton.tertiary_gray.destructive,\r\nbutton.tertiary_color.destructive {\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\nbutton.link_gray.destructive,\r\nbutton.link_color.destructive {\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\n.slotted_button_text.secondary_gray.destructive,\r\n.slotted_button_text.secondary_color.destructive,\r\n.slotted_button_text.tertiary_gray.destructive,\r\n.slotted_button_text.tertiary_color.destructive,\r\n.slotted_button_text.link_gray.destructive,\r\n.slotted_button_text.link_color.destructive {\r\n color: var(--color-text-danger, #b51726) !important;\r\n}\r\n\r\n/* Button States Styles */\r\nbutton.primary:hover {\r\n background-color: var(--color-background-brandRed-hover, #cc1a2a);\r\n}\r\n\r\nbutton.primary:active {\r\n background-color: var(--color-background-brandRed-pressed, #b51726);\r\n}\r\n\r\nbutton.secondary_gray:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\nbutton.secondary_gray:active {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\nbutton.secondary_color:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.secondary_color:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.tertiary_gray:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\nbutton.tertiary_gray:active {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\nbutton.tertiary_color:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.tertiary_color:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.link_gray:hover,\r\nbutton.link_color:hover {\r\n text-decoration: underline;\r\n}\r\n\r\nbutton.link_gray:active {\r\n text-decoration: none;\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\nbutton.link_color:active {\r\n text-decoration: none;\r\n color: var(--color-link-pressed, #064e94);\r\n}\r\n\r\nbutton.primary.destructive:hover {\r\n background-color: var(--color-background-danger-bold, #8c121d);\r\n}\r\n\r\nbutton.primary.destructive:active {\r\n background-color: var(--color-background-brandRed-hover, #cc1a2a); /* ask Mr Gideon about this */\r\n}\r\n\r\nbutton.secondary_gray.destructive:hover,\r\nbutton.secondary_color.destructive:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.secondary_gray.destructive:active,\r\nbutton.secondary_color.destructive:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.tertiary_gray.destructive:hover,\r\nbutton.tertiary_color.destructive:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.tertiary_gray.destructive:active,\r\nbutton.tertiary_color.destructive:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.link_gray.destructive:active {\r\n color: var(--color-text-danger-bold, #8c121d);\r\n}\r\n\r\nbutton.link_color.destructive:active {\r\n color: var(--color-text-warning-bold, #93370d);\r\n}\r\n\r\n/* Button Disabled Styles */\r\nbutton.disabled {\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\nbutton.primary.disabled {\r\n background-color: var(--color-background-btn-disabled, #eef2f6);\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n}\r\n\r\nbutton.secondary_gray.disabled,\r\nbutton.secondary_color.disabled {\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n color: var(--color-text-disabled, #9aa4b2) !important;\r\n border-color: var(--color-border-disabled, #e3e8ef);\r\n}\r\n\r\nbutton.tertiary_gray.disabled,\r\nbutton.tertiary_color.disabled,\r\nbutton.link_gray.disabled,\r\nbutton.link_color.disabled {\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n color: var(--color-text-disabled, #9aa4b2);\r\n}\r\n\r\n.btn_text {\r\n white-space: nowrap;\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.btn_text::first-letter {\r\n text-transform: uppercase;\r\n}\r\n\r\n.loader {\r\n aspect-ratio: 1;\r\n border-radius: 50%;\r\n -webkit-mask: radial-gradient(farthest-side, #0000 calc(100% - 8px), #000 0);\r\n animation: l13 1s infinite linear;\r\n}\r\n\r\n/* Loader Sizes */\r\n.loader.default.sm,\r\n.loader.default.md,\r\n.loader.default.lg,\r\n.loader.default.xl {\r\n width: 1.8rem;\r\n}\r\n\r\n.loader.default.xl2 {\r\n width: 2rem;\r\n}\r\n\r\n.loader.only.sm,\r\n.loader.only.md,\r\n.loader.only.lg,\r\n.loader.only.xl {\r\n width: 1.5rem;\r\n}\r\n\r\n.loader.only.xl2 {\r\n width: 1.7rem;\r\n}\r\n\r\n/* Loader Colors */\r\n.loader.primary {\r\n background: radial-gradient(farthest-side, var(--color-text-inverse, #ffffff) 94%, #0000) top/8px 8px no-repeat, conic-gradient(#0000 30%, var(--color-text-inverse, #ffffff));\r\n}\r\n\r\n.loader.secondary_gray,\r\n.loader.tertiary_gray {\r\n background: radial-gradient(farthest-side, var(--color-text, #4b5565) 94%, #0000) top/8px 8px no-repeat, conic-gradient(#0000 30%, var(--color-text, #4b5565));\r\n}\r\n\r\n.loader.secondary_color,\r\n.loader.tertiary_color {\r\n background: radial-gradient(farthest-side, var(--color-text-brandRed, #e21b2e) 94%, #0000) top/8px 8px no-repeat, conic-gradient(#0000 30%, var(--color-text-brandRed, #e21b2e));\r\n}\r\n\r\n@keyframes l13 {\r\n 100% {\r\n transform: rotate(1turn);\r\n }\r\n}\r\n","import { Component, Element, getAssetPath, h, Prop, State, Fragment } from \"@stencil/core\";\r\nimport { GeneralHierarchies, GeneralSizes, StateType } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-btn',\r\n styleUrl: 'gb-btn.css',\r\n})\r\nexport class GbButton {\r\n @Prop() size: GeneralSizes;\r\n @Prop() hierarchy: GeneralHierarchies;\r\n @Prop() icon: 'default' | 'only';\r\n @Prop() destructive: boolean = false;\r\n @Prop() state: StateType;\r\n @Prop() iconLeading: boolean = false;\r\n @Prop() iconLeadingSwap: string;\r\n @Prop() iconTrailing: boolean = false;\r\n @Prop() iconTrailingSwap: string;\r\n @Element() el: HTMLElement;\r\n @State() leadingIconSvg: string = '';\r\n @State() trailingIconSvg: string = '';\r\n\r\n componentWillLoad() {\r\n if (this.iconLeading && this.iconLeadingSwap) {\r\n this.loadIcon(this.iconLeadingSwap, 'leading');\r\n }\r\n if (this.iconTrailing && this.iconTrailingSwap) {\r\n this.loadIcon(this.iconTrailingSwap, 'trailing');\r\n }\r\n\r\n const buttonSlot = this.el.querySelector('p');\r\n\r\n if(this.state === 'loading') {\r\n buttonSlot.style.display = 'none';\r\n }\r\n\r\n if (buttonSlot) {\r\n buttonSlot.classList.add(this.getButtonTextClasses());\r\n buttonSlot.classList.add('nowrap');\r\n buttonSlot.id = 'slotted_button_text'\r\n buttonSlot.classList.add('slotted_button_text');\r\n buttonSlot.classList.add(`${this.hierarchy}`);\r\n buttonSlot.classList.add(`${this.destructive ? 'destructive' : ''}`);\r\n buttonSlot.classList.add(`${this.state === 'disabled' ? 'disabled' : ''}`);\r\n }\r\n }\r\n\r\n async loadIcon(iconName: string, type: 'leading' | 'trailing') {\r\n const iconPath = getAssetPath(`${iconName}`);\r\n const response = await fetch(iconPath);\r\n const svg = await response.text();\r\n if (type === 'leading') {\r\n this.leadingIconSvg = svg;\r\n } else {\r\n this.trailingIconSvg = svg;\r\n }\r\n }\r\n\r\n // Helper to apply color styles based on the button state\r\n getButtonClasses() {\r\n return {\r\n button: true,\r\n [this.size]: true,\r\n [this.hierarchy]: true,\r\n destructive: this.destructive,\r\n disabled: this.state === 'disabled',\r\n loading: this.state === 'loading',\r\n only: this.icon === 'only',\r\n };\r\n }\r\n\r\n getButtonTextClasses() {\r\n switch (this.size) {\r\n case 'xl2':\r\n return 'text-lg-semi-bold';\r\n case 'xl':\r\n return 'text-md-semi-bold';\r\n case 'lg':\r\n return 'text-md-semi-bold';\r\n case 'md':\r\n return 'text-sm-semi-bold';\r\n case 'sm':\r\n return 'text-sm-semi-bold';\r\n }\r\n }\r\n\r\n renderLeadingIcon() {\r\n return <div class={`icon left-icon ${this.size}`} innerHTML={this.leadingIconSvg}></div>;\r\n }\r\n\r\n renderTrailingIcon() {\r\n return <div class=\"icon right-icon\" innerHTML={this.trailingIconSvg}></div>;\r\n }\r\n\r\n render() {\r\n return (\r\n <button class={this.getButtonClasses()}>\r\n {this.state === 'loading' && <div class={`loader ${this.hierarchy} ${this.size} ${this.icon}`}></div>}\r\n {this.state !== 'loading' && (\r\n <>\r\n {this.iconLeading && this.icon === 'default' && this.renderLeadingIcon()}\r\n {this.icon === 'default' && (\r\n <div class={`btn_text`}>\r\n <slot></slot>\r\n </div>\r\n )}\r\n {this.iconTrailing && this.renderTrailingIcon()}\r\n {this.icon === 'only' && this.renderLeadingIcon()}\r\n </>\r\n )}\r\n </button>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n:host {\r\n --button-color: var(--primary-color);\r\n --icon-color: var(--primary-color);\r\n display: flex;\r\n align-items: center;\r\n /* width: 100%; */\r\n}\r\n\r\n.button_wrapper{\r\n position: relative;\r\n width: 100%;\r\n}\r\n\r\nbutton {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border: none;\r\n cursor: pointer;\r\n border-radius: var(--rounded-sm);\r\n width: 100%;\r\n transition: background-color 0.15s, color 0.15s;\r\n}\r\n\r\nbutton.only {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\nbutton .icon {\r\n display: inline-flex;\r\n width: auto;\r\n height: auto;\r\n}\r\n\r\nbutton .icon svg path[fill] {\r\n fill: var(--icon-color);\r\n}\r\n\r\nbutton .icon svg path[stroke] {\r\n stroke: var(--icon-color);\r\n}\r\n\r\nbutton .icon svg circle {\r\n stroke: var(--icon-color);\r\n}\r\n\r\n/* Button Sizes Styles */\r\nbutton.xl2 {\r\n padding: var(--spacing-none) var(--spacing-6);\r\n height: 3.5rem;\r\n gap: var(--spacing-3);\r\n}\r\n\r\nbutton.xl {\r\n padding: var(--spacing-none) var(--spacing-5);\r\n height: 3rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.lg {\r\n padding: 0.625rem 1.125rem;\r\n height: 2.75rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.md {\r\n padding: var(--spacing-none) var(--spacing-4);\r\n height: 2.5rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.sm {\r\n padding: var(--spacing-none) var(--spacing-3);\r\n height: 2.25rem;\r\n gap: var(--spacing-2);\r\n}\r\n\r\nbutton.only{\r\n padding: 0;\r\n}\r\n\r\nbutton.only.xl2 {\r\n width: 3.5rem;\r\n height: 3.5rem;\r\n}\r\n\r\nbutton.only.xl {\r\n width: 3rem;\r\n height: 3rem;\r\n}\r\n\r\nbutton.only.lg {\r\n width: 2.75rem;\r\n height: 2.75rem;\r\n}\r\n\r\nbutton.only.md {\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n /* padding: 0; */\r\n}\r\n\r\nbutton.only.sm {\r\n width: 2.25rem;\r\n height: 2.25rem;\r\n}\r\n\r\nbutton.xl2 .icon svg {\r\n width: var(--spacing-6);\r\n height: var(--spacing-6);\r\n}\r\n\r\nbutton.xl .icon svg,\r\nbutton.lg .icon svg,\r\nbutton.md .icon svg,\r\nbutton.sm .icon svg {\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n}\r\n\r\n/* Hierarchy Styles */\r\nbutton.primary {\r\n background-color: var(--color-background-brandRed, #e21b2e);\r\n --icon-color: var(--color-icon-inverse, #ffffff);\r\n color: var(--color-text-inverse, #ffffff) !important;\r\n}\r\n\r\n.slotted_text.primary {\r\n}\r\n\r\nbutton.secondary_gray {\r\n background-color: transparent;\r\n border: 1px solid var(--color-border, #9aa4b2);\r\n --icon-color: var(--color-icon, #4b5565);\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n.slotted_text.secondary_gray {\r\n}\r\n\r\nbutton.secondary_color {\r\n background-color: transparent;\r\n border: 1px solid var(--color-border-brandRed, #e21b2e);\r\n color: var(--color-text-brandRed, #e21b2e) !important;\r\n --icon-color: var(--color-icon-brandRed, #e21b2e);\r\n}\r\n\r\n.slotted_text.secondary_color {\r\n}\r\n\r\nbutton.tertiary_gray {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon, #4b5565);\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n.slotted_text.tertiary_gray {\r\n}\r\n\r\nbutton.tertiary_color {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon-brandRed, #e21b2e);\r\n color: var(--color-text-brandRed, #e21b2e) !important;\r\n}\r\n\r\n.slotted_text.tertiary_color {\r\n}\r\n\r\nbutton.link_gray {\r\n background-color: transparent;\r\n --icon-color: var(--color-icon, #4b5565);\r\n padding: var(--spacing-none);\r\n height: fit-content;\r\n justify-content: flex-start;\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n.slotted_text.link_gray {\r\n}\r\n\r\nbutton.link_color {\r\n background-color: transparent;\r\n --icon-color: var(--color-link, #075db2);\r\n padding: var(--spacing-none);\r\n height: fit-content;\r\n justify-content: flex-start;\r\n color: var(--color-link, #075db2) !important;\r\n}\r\n\r\n.slotted_text.link_color {\r\n}\r\n\r\n/* Button Destructive Styles */\r\nbutton.primary.destructive {\r\n background-color: var(--color-background-danger, #b51726);\r\n color: var(--color-text-inverse, #ffffff);\r\n --icon-color: var(--color-icon-danger-inverse, #ffffff);\r\n}\r\n\r\nbutton.secondary_gray.destructive,\r\nbutton.secondary_color.destructive {\r\n border: 1px solid var(--color-border-danger, #b51726);\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\nbutton.tertiary_gray.destructive,\r\nbutton.tertiary_color.destructive {\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\nbutton.link_gray.destructive,\r\nbutton.link_color.destructive {\r\n --icon-color: var(--color-icon-danger, #b51726);\r\n}\r\n\r\nbutton.secondary_gray.destructive,\r\nbutton.secondary_color.destructive,\r\nbutton.tertiary_gray.destructive,\r\nbutton.tertiary_color.destructive,\r\nbutton.link_gray.destructive,\r\nbutton.link_color.destructive {\r\n color: var(--color-text-danger, #b51726) !important;\r\n}\r\n\r\n/* Button States Styles */\r\nbutton.primary:hover {\r\n background-color: var(--color-background-brandRed-hover, #cc1a2a);\r\n}\r\n\r\nbutton.primary:active {\r\n background-color: var(--color-background-brandRed-pressed, #b51726);\r\n}\r\n\r\nbutton.secondary_gray:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\nbutton.secondary_gray:active {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\nbutton.secondary_color:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.secondary_color:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.tertiary_gray:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\nbutton.tertiary_gray:active {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\nbutton.tertiary_color:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.tertiary_color:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.link_gray:hover,\r\nbutton.link_color:hover {\r\n text-decoration: underline;\r\n}\r\n\r\nbutton.link_gray:active {\r\n text-decoration: none;\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\nbutton.link_color:active {\r\n text-decoration: none;\r\n color: var(--color-link-pressed, #064e94);\r\n}\r\n\r\nbutton.primary.destructive:hover {\r\n background-color: var(--color-background-danger-bold, #8c121d);\r\n}\r\n\r\nbutton.primary.destructive:active {\r\n background-color: var(--color-background-brandRed-hover, #cc1a2a); /* ask Mr Gideon about this */\r\n}\r\n\r\nbutton.secondary_gray.destructive:hover,\r\nbutton.secondary_color.destructive:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.secondary_gray.destructive:active,\r\nbutton.secondary_color.destructive:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.tertiary_gray.destructive:hover,\r\nbutton.tertiary_color.destructive:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\nbutton.tertiary_gray.destructive:active,\r\nbutton.tertiary_color.destructive:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\nbutton.link_gray.destructive:active {\r\n color: var(--color-text-danger-bold, #8c121d);\r\n}\r\n\r\nbutton.link_color.destructive:active {\r\n color: var(--color-text-warning-bold, #93370d);\r\n}\r\n\r\n/* Button Disabled Styles */\r\nbutton.disabled {\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\nbutton.primary.disabled {\r\n background-color: var(--color-background-btn-disabled, #eef2f6);\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n color: var(--color-text-disabled, #9aa4b2) !important;\r\n}\r\n\r\nbutton.secondary_gray.disabled,\r\nbutton.secondary_color.disabled {\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n color: var(--color-text-disabled, #9aa4b2) !important;\r\n border-color: var(--color-border-disabled, #e3e8ef);\r\n}\r\n\r\nbutton.tertiary_gray.disabled,\r\nbutton.tertiary_color.disabled,\r\nbutton.link_gray.disabled,\r\nbutton.link_color.disabled {\r\n --icon-color: var(--color-icon-disabled, #9aa4b2);\r\n color: var(--color-text-disabled, #9aa4b2) !important;\r\n}\r\n\r\n.btn_text {\r\n white-space: nowrap;\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.btn_text::first-letter {\r\n text-transform: uppercase;\r\n}\r\n\r\n.loader {\r\n --loader-thickness: 4px;\r\n aspect-ratio: 1;\r\n border-radius: 50%;\r\n -webkit-mask: radial-gradient(farthest-side, #0000 calc(100% - 8px), #000 0);\r\n animation: l13 1s infinite linear;\r\n mask: radial-gradient(farthest-side, rgba(0,0,0,0) calc(100% - var(--loader-thickness)), #000 0);\r\n}\r\n\r\n.loader.default.sm,\r\n.loader.default.md,\r\n.loader.default.lg,\r\n.loader.default.xl {\r\n width: 1.8rem;\r\n}\r\n\r\n.loader.default.xl2 {\r\n width: 2rem;\r\n}\r\n\r\n.loader.only.sm,\r\n.loader.only.md,\r\n.loader.only.lg,\r\n.loader.only.xl {\r\n width: 1.5rem;\r\n}\r\n\r\n.loader.only.xl2 {\r\n width: 1.7rem;\r\n}\r\n\r\n.loader.primary,\r\n.loader.primary.destructive {\r\n background: radial-gradient(farthest-side, var(--color-text-inverse, #ffffff) 94%, #0000) top/var(--loader-thickness) var(--loader-thickness) no-repeat,\r\n conic-gradient(#0000 30%, var(--color-text-inverse, #ffffff));\r\n}\r\n\r\n.loader.secondary_gray,\r\n.loader.tertiary_gray{\r\n background:\r\n radial-gradient(farthest-side, var(--color-text, #4b5565) 94%, #0000) top/var(--loader-thickness) var(--loader-thickness) no-repeat,\r\n conic-gradient(#0000 30%, var(--color-text, #4b5565));\r\n}\r\n\r\n.loader.secondary_color,\r\n.loader.tertiary_color{\r\n background:\r\n radial-gradient(farthest-side, var(--color-text-brandRed, #e21b2e) 94%, #0000) top/var(--loader-thickness) var(--loader-thickness) no-repeat,\r\n conic-gradient(#0000 30%, var(--color-text-brandRed, #e21b2e));\r\n}\r\n\r\n.loader.destructive {\r\n background:\r\n radial-gradient(farthest-side, var(--color-text-danger-bold, #8c121d) 94%, #0000) top/var(--loader-thickness) var(--loader-thickness) no-repeat,\r\n conic-gradient(#0000 30%, var(--color-text-danger-bold, #8c121d));\r\n}\r\n\r\n@keyframes l13 {\r\n 100% {\r\n transform: rotate(1turn);\r\n }\r\n}\r\n\r\n.tooltip{\r\n position: absolute;\r\n left: 0;\r\n}\r\n\r\n.tooltip.sm{\r\n top: -120%;\r\n}\r\n\r\n.tooltip.md{\r\n top: -110%;\r\n}\r\n\r\n.tooltip.lg{\r\n top: -100%;\r\n}\r\n\r\n.tooltip.xl{\r\n top: -90%;\r\n}\r\n\r\n.tooltip.xl2{\r\n top: -75%;\r\n}","import { Component, Element, getAssetPath, h, Prop, State, Fragment } from '@stencil/core';\r\nimport { ArrowPositions, GeneralHierarchies, GeneralSizes, StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-button',\r\n styleUrl: 'gb-button.css',\r\n shadow: true,\r\n assetsDirs: [''],\r\n})\r\nexport class GbButton {\r\n @Prop() size: GeneralSizes = 'xl';\r\n @Prop() hierarchy: GeneralHierarchies = 'primary';\r\n @Prop() icon!: 'default' | 'only';\r\n @Prop() destructive: boolean = false;\r\n @Prop() state: StateType = 'default';\r\n @Prop() iconLeading: boolean = false;\r\n @Prop() iconLeadingSwap: string;\r\n @Prop() iconTrailing: boolean = false;\r\n @Prop() iconTrailingSwap: string;\r\n @Prop() tooltipText: string = '';\r\n @Prop() arrow: ArrowPositions = 'bottom_center';\r\n @Element() el: HTMLElement;\r\n @State() leadingIconSvg: string = '';\r\n @State() trailingIconSvg: string = '';\r\n @State() internalButtonState: string = '';\r\n @State() internalIconLeadingState: string = '';\r\n @State() internalIconTrailingState: string = '';\r\n @State() tooltipShown: boolean = false;\r\n\r\n componentWillLoad() {\r\n if (this.iconLeading && this.iconLeadingSwap) {\r\n this.loadIcon(this.iconLeadingSwap, 'leading');\r\n }\r\n if (this.iconTrailing && this.iconTrailingSwap) {\r\n this.loadIcon(this.iconTrailingSwap, 'trailing');\r\n }\r\n\r\n const buttonSlot = this.el.querySelector('p');\r\n\r\n if (this.state === 'loading') {\r\n buttonSlot.style.display = 'none';\r\n }\r\n\r\n if (buttonSlot) {\r\n buttonSlot.classList.add(this.getButtonTextClasses());\r\n buttonSlot.classList.add('nowrap');\r\n buttonSlot.classList.add('slotted_button_text');\r\n buttonSlot.classList.add(`${this.hierarchy}`);\r\n }\r\n }\r\n\r\n async loadIcon(iconName: string, type: 'leading' | 'trailing') {\r\n const iconPath = getAssetPath(`${iconName}`);\r\n const response = await fetch(iconPath);\r\n const svg = await response.text();\r\n if (type === 'leading') {\r\n this.leadingIconSvg = svg;\r\n } else {\r\n this.trailingIconSvg = svg;\r\n }\r\n }\r\n\r\n // Helper to apply color styles based on the button state\r\n getButtonClasses() {\r\n return {\r\n button: true,\r\n [this.size]: true,\r\n [this.hierarchy]: true,\r\n destructive: this.destructive,\r\n disabled: this.state === 'disabled',\r\n only: this.icon === 'only',\r\n };\r\n }\r\n\r\n getButtonTextClasses() {\r\n switch (this.size) {\r\n case 'xl2':\r\n return 'text-lg-semi-bold';\r\n case 'xl':\r\n return 'text-md-semi-bold';\r\n case 'lg':\r\n return 'text-md-semi-bold';\r\n case 'md':\r\n return 'text-sm-semi-bold';\r\n case 'sm':\r\n return 'text-sm-semi-bold';\r\n }\r\n }\r\n\r\n renderLeadingIcon() {\r\n return <div class={`icon left-icon ${this.size}`} innerHTML={this.leadingIconSvg}></div>;\r\n }\r\n\r\n renderTrailingIcon() {\r\n return <div class=\"icon right-icon\" innerHTML={this.trailingIconSvg}></div>;\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"button_wrapper\">\r\n <button disabled={this.state === 'disabled'} class={this.getButtonClasses()} onMouseEnter={() => this.tooltipShown = true} onMouseLeave={() => this.tooltipShown = false}>\r\n {this.state === 'loading' && <div class={`loader ${this.hierarchy} ${this.size} ${this.icon} ${this.destructive ? 'destructive' : ''}`}></div>}\r\n {this.state !== 'loading' && (\r\n <>\r\n {this.iconLeading && this.icon === 'default' && this.renderLeadingIcon()}\r\n {this.icon === 'default' && (\r\n <div class={`btn_text`}>\r\n <slot></slot>\r\n </div>\r\n )}\r\n {this.iconTrailing && this.renderTrailingIcon()}\r\n {this.icon === 'only' && this.renderLeadingIcon()}\r\n </>\r\n )}\r\n </button>\r\n {this.tooltipText && this.icon === 'only' && this.tooltipShown && (\r\n <gb-tooltip show-arrow={true} arrow={this.arrow} class={`tooltip ${this.size}`}>\r\n <p slot=\"label\">{this.tooltipText}</p>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\ndiv {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-none);\r\n border-radius: var(--rounded-sm);\r\n height: fit-content;\r\n width: fit-content;\r\n cursor: pointer;\r\n}\r\n\r\n/* Sizes */\r\ndiv.lg {\r\n padding: 0.625rem;\r\n}\r\n\r\ndiv.lg svg {\r\n width: var(--spacing-6);\r\n height: var(--spacing-6);\r\n}\r\n\r\ndiv.md svg {\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n}\r\n\r\ndiv.sm {\r\n padding: var(--spacing-2);\r\n}\r\n\r\ndiv.md {\r\n padding: 0.625rem;\r\n}\r\n\r\n/* Colors */\r\ndiv.primary,\r\ndiv.information,\r\ndiv.success,\r\ndiv.gray,\r\ndiv.warning,\r\ndiv.error,\r\ndiv.white {\r\n background-color: transparent;\r\n}\r\n\r\ndiv.white path {\r\n stroke: var(--color-icon-inverse, #FFFFFF);\r\n}\r\n\r\ndiv.primary path {\r\n stroke: var(--color-icon-brandDarkBlue, #212C65);\r\n}\r\n\r\ndiv.success path {\r\n stroke: var(--color-icon-success, #079455);\r\n}\r\n\r\ndiv.information path {\r\n stroke: var(--color-icon-information, #064E94);\r\n}\r\n\r\ndiv.gray path {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\ndiv.warning path {\r\n stroke: var(--color-icon-warning, #DC6803);\r\n}\r\n\r\ndiv.error path {\r\n stroke: var(--color-icon-danger, #B51726);\r\n}\r\n\r\n/* States */\r\ndiv.white:hover {\r\n background-color: var(--color-background-gray-bold, #9AA4B2);\r\n}\r\n\r\ndiv.primary:hover {\r\n background-color: var(--color-background-discovery-subtler, #E0F2FE);\r\n}\r\n\r\ndiv.primary:hover path {\r\n stroke: var(--color-icon-brandRed, #E21B2E);\r\n}\r\n\r\ndiv.white:active {\r\n background-color: var(--color-background-gray, #CDD5DF);\r\n}\r\n\r\ndiv.primary:active {\r\n background-color: var(--color-background-discovery-subtlest, #F0F9FF);\r\n}\r\n\r\ndiv.information:hover {\r\n background-color: var(--color-background-information-subtler, #C8E0F9);\r\n}\r\n\r\ndiv.information:hover path {\r\n stroke: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\ndiv.information:active {\r\n background-color: var(--color-background-information-subtlest, #E4F0FC);\r\n}\r\n\r\ndiv.success:hover {\r\n background-color: var(--color-background-success-subtler, #DCFAE6);\r\n}\r\n\r\ndiv.success:hover path {\r\n stroke: var(--color-icon-success-bold, #085D3A);\r\n}\r\n\r\ndiv.success:active {\r\n background-color: var(--color-background-success-subtlest, #ECFDF3);\r\n}\r\n\r\ndiv.gray:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\ndiv.gray:hover path {\r\n stroke: var(--color-icon-brandRed, #e21b2e);\r\n}\r\n\r\ndiv.gray:active {\r\n background-color: var(--color-background-gray-subtlest, #f6f8fa);\r\n}\r\n\r\ndiv.warning:hover {\r\n background-color: var(--color-background-warning-subtler, #FEF0C7);\r\n}\r\n\r\ndiv.warning:hover path {\r\n stroke: var(--color-icon-warning-bold, #93370D);\r\n}\r\n\r\ndiv.warning:active {\r\n background-color: var(--color-background-warning-subtlest, #FFFAEB);\r\n}\r\n\r\ndiv.error:hover {\r\n background-color: var(--color-background-danger-subtler, #FDE3E5);\r\n}\r\n\r\ndiv.error:hover path {\r\n stroke: var(--color-icon-danger-bold, #8C121D);\r\n}\r\n\r\ndiv.error:active {\r\n background-color: var(--color-background-danger-subtlest, #FEF1F2);\r\n}\r\n","import { Component, h, Prop } from '@stencil/core';\r\nimport { GeneralColors, GeneralSizes } from '../../models/reusableModels';\r\n@Component({\r\n tag: 'gb-button-close',\r\n styleUrl: 'gb-button-close.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbButtonClose {\r\n @Prop() size!: GeneralSizes;\r\n @Prop() color!: GeneralColors;\r\n\r\n render() {\r\n return (\r\n <div class={`${this.size} ${this.color}`}>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" class={`${this.size}`}>\r\n <path d=\"M19.0005 4.99988L5.00049 18.9999M5.00049 4.99988L19.0005 18.9999\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n )\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.button_group_container{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.dropdown_label{\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.button_group_wrapper {\r\n display: inline-flex;\r\n align-items: flex-start;\r\n width: fit-content;\r\n height: fit-content;\r\n border-radius: 0.5rem;\r\n border: 1px solid var(--color-border-subtle, #cdd5df);\r\n box-shadow: var(--shadow-xs);\r\n overflow: hidden;\r\n}\r\n","import { AttachInternals, Component, Event, EventEmitter, Prop, State, Watch, h } from '@stencil/core';\r\nimport { ButtonGroupTypes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-button-group',\r\n styleUrl: 'gb-button-group.css',\r\n shadow: true,\r\n formAssociated: true,\r\n})\r\nexport class GbButtonGroup {\r\n @AttachInternals() internals: ElementInternals;\r\n @Prop() items: { label: string; current?: boolean; icon?: string }[] = [\r\n // { label: 'Male', current: true, icon: 'assets/calendar-02.svg' },\r\n // { label: 'Female', current: false, icon: 'assets/calendar-02.svg' },\r\n // { label: 'Hi', current: false, icon: 'assets/calendar-02.svg' },\r\n // { label: 'Gideon', current: false, icon: 'assets/calendar-02.svg' },\r\n // { label: 'Emmanuel', current: false, icon: 'assets/calendar-02.svg' },\r\n ];\r\n @Prop() icon: ButtonGroupTypes;\r\n @Prop() showLabel: boolean = false;\r\n @Prop() label: string = '';\r\n @State() internalItems: { label: string; current?: boolean; icon?: string }[] = [];\r\n @State() selectedValue: string = '';\r\n // @Event() valueChange: EventEmitter<{ value: string; current: boolean }>;\r\n @Event() optionChange: EventEmitter<string>;\r\n\r\n @Watch('items')\r\n onItemsUpdated(newValue: { label: string; current?: boolean; icon?: string }[]) {\r\n this.internalItems = newValue;\r\n }\r\n\r\n componentWillLoad() {\r\n this.internalItems = [...this.items];\r\n }\r\n\r\n handleSelect(index: number) {\r\n const selectedValue = this.internalItems[index].label;\r\n\r\n this.internalItems = this.internalItems.map((item, i) => ({\r\n ...item,\r\n current: i === index,\r\n }));\r\n\r\n this.selectedValue = selectedValue;\r\n\r\n this.optionChange.emit(this.selectedValue);\r\n // console.log(this.selectedValue)\r\n\r\n // console.log({ value: this.selectedValue, current: this.internalItems[index].current });\r\n // this.valueChange.emit({ value: this.selectedValue, current: this.internalItems[index].current });\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"button_group_container\">\r\n {this.showLabel && <p class=\"dropdown_label text-sm-regular\">{this.label}</p>}\r\n <div class=\"button_group_wrapper\">\r\n {this.internalItems.map((item, index) => (\r\n <gb-button-group-base\r\n key={index}\r\n state=\"default\"\r\n icon={this.icon}\r\n label={item.label}\r\n current={item.current}\r\n onClick={() => this.handleSelect(index)}\r\n icon-src={item.icon}\r\n ></gb-button-group-base>\r\n ))}\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.button_group_base_div {\r\n display: flex;\r\n height: 1.875rem;\r\n padding: var(--spacing-none) var(--spacing-4);\r\n justify-content: center;\r\n align-items: center;\r\n gap: 0.5rem;\r\n flex-shrink: 0;\r\n border-right: 1px solid var(--color-border-subtle, #cdd5df);\r\n cursor: pointer;\r\n}\r\n\r\n.button_group_base_div.leading {\r\n height: 2.5rem;\r\n}\r\n\r\n.button_group_base_div.dot,\r\n.button_group_base_div.checkbox {\r\n gap: 0.5rem;\r\n}\r\n\r\n.button_group_base_div.only {\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n padding: var(--spacing-none);\r\n}\r\n\r\n.icon {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.icon svg {\r\n width: 1.25rem;\r\n height: 1.25rem;\r\n}\r\n\r\n.dott {\r\n width: 0.625rem;\r\n height: 0.625rem;\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\n.dott.default {\r\n background-color: var(--color-icon-success, #079455);\r\n}\r\n\r\n.dott.disabled {\r\n background-color: var(--color-icon-disabled, #cdd5df);\r\n}\r\n\r\n.button_group_base_div.default.false,\r\n.button_group_base_div.default.leading,\r\n.button_group_base_div.default.checkbox,\r\n.button_group_base_div.default.dot,\r\n.button_group_base_div.default.only {\r\n background: var(--color-background-card, #ffffff);\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.button_group_base_div.default.false.current,\r\n.button_group_base_div.default.leading.current,\r\n.button_group_base_div.default.checkbox.current,\r\n.button_group_base_div.default.dot.current,\r\n.button_group_base_div.default.only.current {\r\n background-color: var(--color-background-information-subtlest, #e4f0fc);\r\n color: var(--color-text-information, #064e94);\r\n}\r\n\r\n.button_group_base_div.default.false:hover,\r\n.button_group_base_div.default.leading:hover,\r\n.button_group_base_div.default.checkbox:hover,\r\n.button_group_base_div.default.dot:hover,\r\n.button_group_base_div.default.only:hover {\r\n background: var(--color-background-gray-subtler, #eef2f6);\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.button_group_base_div.default.false.current:hover,\r\n.button_group_base_div.default.leading.current:hover,\r\n.button_group_base_div.default.checkbox.current:hover,\r\n.button_group_base_div.default.dot.current:hover,\r\n.button_group_base_div.default.only.current:hover {\r\n background-color: var(--color-background-information-subtler, #c8e0f9);\r\n color: var(--color-text-information-bold, #042f59);\r\n}\r\n\r\n.button_group_base_div.default.false:active,\r\n.button_group_base_div.default.leading:active,\r\n.button_group_base_div.default.checkbox:active,\r\n.button_group_base_div.default.dot:active,\r\n.button_group_base_div.default.only:active {\r\n background: var(--color-background-gray-subtle, #e3e8ef);\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.button_group_base_div.default.false.current:active,\r\n.button_group_base_div.default.leading.current:active,\r\n.button_group_base_div.default.checkbox.current:active,\r\n.button_group_base_div.default.dot.current:active,\r\n.button_group_base_div.default.only.current:active {\r\n background-color: var(--color-background-information-subtle, #9ac7f4);\r\n color: var(--color-text-information-bold, #042f59);\r\n}\r\n\r\n.button_group_base_div.disabled,\r\n.button_group_base_div.current.disabled {\r\n color: var(--color-text-disabled, #cdd5df);\r\n background-color: var(--color-background-card, #ffffff);\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\n.icon.default svg path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.button_group_base_div:hover .icon.default svg path[stroke],\r\n.button_group_base_div:active .icon.default svg path[stroke] {\r\n stroke: var(--color-icon-bold, #202939);\r\n}\r\n\r\n.icon.default.current svg path[stroke] {\r\n stroke: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.button_group_base_div:hover .icon.default.current svg path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.default svg path[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.button_group_base_div:hover .icon.default svg path[fill],\r\n.button_group_base_div:active .icon.default svg path[fill] {\r\n fill: var(--color-icon-bold, #202939);\r\n}\r\n\r\n.icon.default.current svg path[fill] {\r\n fill: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.button_group_base_div:hover .icon.default.current svg path[fill],\r\n.button_group_base_div:active .icon.default.current svg path[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.disabled svg path[stroke] {\r\n stroke: var(--color-icon-disabled, #cdd5df);\r\n}\r\n\r\n.icon.disabled svg path[fill] {\r\n fill: var(--color-icon-disabled, #cdd5df);\r\n}\r\n","import { Component, Prop, State, getAssetPath, h } from '@stencil/core';\r\nimport { ButtonGroupTypes, StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-button-group-base',\r\n styleUrl: 'gb-button-group-base.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbButtonGroupBase {\r\n @Prop() current: boolean = false;\r\n @Prop() icon: ButtonGroupTypes;\r\n @Prop() state: StateType;\r\n @Prop() label: string = '';\r\n @Prop() iconSrc: string = '';\r\n @State() leadingIconSvg: string = '';\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 componentWillLoad() {\r\n this.loadIcon(this.iconSrc);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`button_group_base_div ${this.current ? 'current' : ''} ${this.icon} ${this.state}`}>\r\n {this.icon === 'leading' && <div class={`icon ${this.current ? 'current' : ''} ${this.state}`} innerHTML={this.leadingIconSvg}></div>}\r\n {this.icon === 'only' && <div class={`icon ${this.current ? 'current' : ''} ${this.state}`} innerHTML={this.leadingIconSvg}></div>}\r\n {this.icon === 'checkbox' && (\r\n <gb-checkbox checked={this.current} indeterminate={false} size=\"sm\" type=\"radio\" state={this.state} text={true} supporting-text={false}>\r\n <p slot=\"label\">{this.label}</p>\r\n </gb-checkbox>\r\n )}\r\n {this.icon === 'dot' && (\r\n <div class=\"dot_div\">\r\n <div class={`dott ${this.state}`}></div>\r\n </div>\r\n )}\r\n {this.icon !== 'only' && this.icon !== 'checkbox' && <p class=\"text-sm-semi-bold\">{this.label}</p>}\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.checkbox_div{\r\n display: flex;\r\n justify-content: space-between;\r\n width: fit-content;\r\n}\r\n\r\n.checkbox_div{\r\n gap: var(--spacing-none);\r\n}\r\n\r\n.checkbox_div.text_class.sm{\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.checkbox_div.text_class.md{\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.checkbox_base.checkbox_no_supporting_text{\r\n margin-top: 0.22rem;\r\n}\r\n\r\n.text{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.text.no_supporting_text{\r\n justify-content: center;\r\n}\r\n\r\n::slotted(p){\r\n color: var(--color-text, #4B5565) !important;\r\n}","import { Component, Element, Event, EventEmitter, h, Prop } from \"@stencil/core\";\r\nimport { CheckBoxVariants, GeneralSizes, StateType } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-checkbox',\r\n styleUrl: 'gb-checkbox.css',\r\n shadow: true,\r\n})\r\nexport class GbCheckbox {\r\n @Prop() checked: boolean = false;\r\n @Prop() indeterminate: boolean = false;\r\n @Prop() size: GeneralSizes;\r\n @Prop() type: CheckBoxVariants; \r\n @Prop() state: StateType = 'default';\r\n @Prop() text: boolean = false;\r\n @Prop() supportingText: boolean = false;\r\n @Element() el: HTMLElement;\r\n @Event() checkboxClicked: EventEmitter<boolean>;\r\n\r\n getMainTextClass() {\r\n switch (this.size) {\r\n case 'sm':\r\n return `text-sm-medium`;\r\n case 'md':\r\n return `text-md-medium`;\r\n }\r\n }\r\n\r\n getSupportingTextClass() {\r\n switch (this.size) {\r\n case 'sm':\r\n return 'text-xs-regular';\r\n case 'md':\r\n return 'text-sm-regular';\r\n }\r\n }\r\n\r\n componentDidLoad() {\r\n const mainTextSlot = this.el.querySelector('[slot=\"label\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"supporting_text\"]');\r\n\r\n if (mainTextSlot) {\r\n mainTextSlot.classList.add(this.getMainTextClass());\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add(this.getSupportingTextClass());\r\n }\r\n }\r\n\r\n onCheckboxClicked(event) : void {\r\n this.checkboxClicked.emit(event.detail);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`checkbox_div ${this.size} ${this.text ? 'text_class' : ''}`}>\r\n <div class={`checkbox_base ${!this.supportingText ? 'checkbox_no_supporting_text' : ''}`}>\r\n <gb-checkbox-base size={this.size} type={this.type} state={this.state} indeterminate={this.indeterminate} onCheckboxClicked={this.onCheckboxClicked.bind(this)} checked={this.checked}></gb-checkbox-base>\r\n </div>\r\n {this.text && (\r\n <div class={`text ${!this.supportingText ? 'no_supporting_text' : ''}`}>\r\n <slot name=\"label\"></slot>\r\n {this.supportingText && <slot name=\"supporting_text\"></slot>}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n:host{\r\n width: fit-content;\r\n}\r\n\r\n/* Checkbox Styles */\r\n.checkbox_container{\r\n width: fit-content;\r\n height: fit-content;\r\n cursor: pointer;\r\n}\r\n\r\nsvg.sm{\r\n width: var(--spacing-4);\r\n height: var(--spacing-4);\r\n}\r\n\r\nsvg.md{\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n}\r\n\r\n.checkbox_default_unchecked.hover:hover path{\r\n stroke: var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.checkbox_default_checked:hover path, .checkbox_default_indeterminate:hover path{\r\n fill: var(--color-background-information, #064E94);\r\n}\r\n\r\n.checkbox_default_checked:hover .border, .checkbox_default_indeterminate:hover .border{\r\n stroke: var(--color-border-information, #064E94);\r\n}\r\n\r\n/* Radio Styles */\r\n.radio_default_unchecked:hover rect{\r\n stroke: var(--color-border-selected, #075DB2);\r\n}\r\n\r\n/* Check Circle Styles */\r\n.circle_default_unchecked:hover rect{\r\n stroke: var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.circle_default_checked:hover rect{\r\n stroke: var(--color-border-information, #064E94);\r\n}\r\n\r\n.circle_default_checked:hover .background {\r\n fill: var(--color-background-information, #064E94);\r\n}","import { Component, Event, EventEmitter, h, Prop } from \"@stencil/core\";\r\nimport { CheckBoxVariants, GeneralSizes, StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-checkbox-base',\r\n styleUrl: 'gb-checkbox-base.css',\r\n shadow: true,\r\n})\r\nexport class GbCheckboxBase {\r\n @Prop({ mutable: true }) state: StateType;\r\n @Prop() size: GeneralSizes;\r\n @Prop() type: CheckBoxVariants;\r\n @Prop({ mutable: true }) checked: boolean = false;\r\n @Prop({ mutable: true }) indeterminate: boolean = false;\r\n @Event() checkboxClicked: EventEmitter<boolean>;\r\n\r\n private renderSVG() {\r\n switch (this.type) {\r\n case 'checkbox':\r\n return this.renderCheckbox();\r\n case 'check_circle':\r\n return this.renderCircle();\r\n case 'radio':\r\n return this.renderRadio();\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n private renderCheckbox() {\r\n if (this.state === \"default\" && this.checked) {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`checkbox_default_checked ${this.size}`}>\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5C9.89975 0.5 11.2743 0.501062 12.3225 0.641988C13.3563 0.78098 13.9975 1.04772 14.4749 1.52513C14.9523 2.00253 15.219 2.64373 15.358 3.67754C15.4989 4.72573 15.5 6.10025 15.5 8C15.5 9.89975 15.4989 11.2743 15.358 12.3225C15.219 13.3563 14.9523 13.9975 14.4749 14.4749C13.9975 14.9523 13.3563 15.219 12.3225 15.358C11.2743 15.4989 9.89975 15.5 8 15.5C6.10025 15.5 4.72573 15.4989 3.67754 15.358C2.64373 15.219 2.00253 14.9523 1.52513 14.4749C1.04772 13.9975 0.78098 13.3563 0.641988 12.3225C0.501062 11.2743 0.5 9.89975 0.5 8Z\"\r\n fill=\"#075DB2\"\r\n />\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5C9.89975 0.5 11.2743 0.501062 12.3225 0.641988C13.3563 0.78098 13.9975 1.04772 14.4749 1.52513C14.9523 2.00253 15.219 2.64373 15.358 3.67754C15.4989 4.72573 15.5 6.10025 15.5 8C15.5 9.89975 15.4989 11.2743 15.358 12.3225C15.219 13.3563 14.9523 13.9975 14.4749 14.4749C13.9975 14.9523 13.3563 15.219 12.3225 15.358C11.2743 15.4989 9.89975 15.5 8 15.5C6.10025 15.5 4.72573 15.4989 3.67754 15.358C2.64373 15.219 2.00253 14.9523 1.52513 14.4749C1.04772 13.9975 0.78098 13.3563 0.641988 12.3225C0.501062 11.2743 0.5 9.89975 0.5 8Z\"\r\n stroke=\"#075DB2\"\r\n class=\"border\"\r\n />\r\n <path d=\"M4.5 9.25C4.5 9.25 5.25 9.25 6.25 11C6.25 11 9.02941 6.41667 11.5 5.5\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n );\r\n } else if (this.state === \"default\" && this.indeterminate) {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`checkbox_default_indeterminate ${this.size}`}>\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5C9.89975 0.5 11.2743 0.501062 12.3225 0.641988C13.3563 0.78098 13.9975 1.04772 14.4749 1.52513C14.9523 2.00253 15.219 2.64373 15.358 3.67754C15.4989 4.72573 15.5 6.10025 15.5 8C15.5 9.89975 15.4989 11.2743 15.358 12.3225C15.219 13.3563 14.9523 13.9975 14.4749 14.4749C13.9975 14.9523 13.3563 15.219 12.3225 15.358C11.2743 15.4989 9.89975 15.5 8 15.5C6.10025 15.5 4.72573 15.4989 3.67754 15.358C2.64373 15.219 2.00253 14.9523 1.52513 14.4749C1.04772 13.9975 0.78098 13.3563 0.641988 12.3225C0.501062 11.2743 0.5 9.89975 0.5 8Z\"\r\n fill=\"#075DB2\"\r\n />\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5C9.89975 0.5 11.2743 0.501062 12.3225 0.641988C13.3563 0.78098 13.9975 1.04772 14.4749 1.52513C14.9523 2.00253 15.219 2.64373 15.358 3.67754C15.4989 4.72573 15.5 6.10025 15.5 8C15.5 9.89975 15.4989 11.2743 15.358 12.3225C15.219 13.3563 14.9523 13.9975 14.4749 14.4749C13.9975 14.9523 13.3563 15.219 12.3225 15.358C11.2743 15.4989 9.89975 15.5 8 15.5C6.10025 15.5 4.72573 15.4989 3.67754 15.358C2.64373 15.219 2.00253 14.9523 1.52513 14.4749C1.04772 13.9975 0.78098 13.3563 0.641988 12.3225C0.501062 11.2743 0.5 9.89975 0.5 8Z\"\r\n stroke=\"#075DB2\"\r\n class=\"border\"\r\n />\r\n <path d=\"M12 8L4 8\" stroke=\"white\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n );\r\n } else if (this.state === \"disabled\" && !this.checked) {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`checkbox_disabled_unchecked ${this.size}`}>\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5C9.89975 0.5 11.2743 0.501062 12.3225 0.641988C13.3563 0.78098 13.9975 1.04772 14.4749 1.52513C14.9523 2.00253 15.219 2.64373 15.358 3.67754C15.4989 4.72573 15.5 6.10025 15.5 8C15.5 9.89975 15.4989 11.2743 15.358 12.3225C15.219 13.3563 14.9523 13.9975 14.4749 14.4749C13.9975 14.9523 13.3563 15.219 12.3225 15.358C11.2743 15.4989 9.89975 15.5 8 15.5C6.10025 15.5 4.72573 15.4989 3.67754 15.358C2.64373 15.219 2.00253 14.9523 1.52513 14.4749C1.04772 13.9975 0.78098 13.3563 0.641988 12.3225C0.501062 11.2743 0.5 9.89975 0.5 8Z\"\r\n fill=\"#F6F8FA\"\r\n />\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5C9.89975 0.5 11.2743 0.501062 12.3225 0.641988C13.3563 0.78098 13.9975 1.04772 14.4749 1.52513C14.9523 2.00253 15.219 2.64373 15.358 3.67754C15.4989 4.72573 15.5 6.10025 15.5 8C15.5 9.89975 15.4989 11.2743 15.358 12.3225C15.219 13.3563 14.9523 13.9975 14.4749 14.4749C13.9975 14.9523 13.3563 15.219 12.3225 15.358C11.2743 15.4989 9.89975 15.5 8 15.5C6.10025 15.5 4.72573 15.4989 3.67754 15.358C2.64373 15.219 2.00253 14.9523 1.52513 14.4749C1.04772 13.9975 0.78098 13.3563 0.641988 12.3225C0.501062 11.2743 0.5 9.89975 0.5 8Z\"\r\n stroke=\"#E3E8EF\"\r\n />\r\n </svg>\r\n );\r\n } else if (this.state === \"disabled\" && this.checked) {\r\n return (\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`${this.size}`}>\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5H12C13.8998 0.5 15.2743 0.501062 16.3225 0.641988C17.3563 0.78098 17.9975 1.04772 18.4749 1.52513C18.9523 2.00253 19.219 2.64373 19.358 3.67754C19.4989 4.72573 19.5 6.10025 19.5 8V12C19.5 13.8998 19.4989 15.2743 19.358 16.3225C19.219 17.3563 18.9523 17.9975 18.4749 18.4749C17.9975 18.9523 17.3563 19.219 16.3225 19.358C15.2743 19.4989 13.8998 19.5 12 19.5H8C6.10025 19.5 4.72573 19.4989 3.67754 19.358C2.64373 19.219 2.00253 18.9523 1.52513 18.4749C1.04772 17.9975 0.78098 17.3563 0.641988 16.3225C0.501062 15.2743 0.5 13.8998 0.5 12V8Z\"\r\n fill=\"#9AA4B2\"\r\n />\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5H12C13.8998 0.5 15.2743 0.501062 16.3225 0.641988C17.3563 0.78098 17.9975 1.04772 18.4749 1.52513C18.9523 2.00253 19.219 2.64373 19.358 3.67754C19.4989 4.72573 19.5 6.10025 19.5 8V12C19.5 13.8998 19.4989 15.2743 19.358 16.3225C19.219 17.3563 18.9523 17.9975 18.4749 18.4749C17.9975 18.9523 17.3563 19.219 16.3225 19.358C15.2743 19.4989 13.8998 19.5 12 19.5H8C6.10025 19.5 4.72573 19.4989 3.67754 19.358C2.64373 19.219 2.00253 18.9523 1.52513 18.4749C1.04772 17.9975 0.78098 17.3563 0.641988 16.3225C0.501062 15.2743 0.5 13.8998 0.5 12V8Z\"\r\n stroke=\"#9AA4B2\"\r\n />\r\n <path\r\n d=\"M5.3335 11.6667C5.3335 11.6667 6.3335 11.6667 7.66683 14C7.66683 14 11.3727 7.88888 14.6668 6.66666\"\r\n stroke=\"#E3E8EF\"\r\n stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n );\r\n } else if (this.state === \"disabled\" && this.indeterminate) {\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`${this.size}`}>\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5H12C13.8998 0.5 15.2743 0.501062 16.3225 0.641988C17.3563 0.78098 17.9975 1.04772 18.4749 1.52513C18.9523 2.00253 19.219 2.64373 19.358 3.67754C19.4989 4.72573 19.5 6.10025 19.5 8V12C19.5 13.8998 19.4989 15.2743 19.358 16.3225C19.219 17.3563 18.9523 17.9975 18.4749 18.4749C17.9975 18.9523 17.3563 19.219 16.3225 19.358C15.2743 19.4989 13.8998 19.5 12 19.5H8C6.10025 19.5 4.72573 19.4989 3.67754 19.358C2.64373 19.219 2.00253 18.9523 1.52513 18.4749C1.04772 17.9975 0.78098 17.3563 0.641988 16.3225C0.501062 15.2743 0.5 13.8998 0.5 12V8Z\"\r\n fill=\"#9AA4B2\"\r\n />\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5H12C13.8998 0.5 15.2743 0.501062 16.3225 0.641988C17.3563 0.78098 17.9975 1.04772 18.4749 1.52513C18.9523 2.00253 19.219 2.64373 19.358 3.67754C19.4989 4.72573 19.5 6.10025 19.5 8V12C19.5 13.8998 19.4989 15.2743 19.358 16.3225C19.219 17.3563 18.9523 17.9975 18.4749 18.4749C17.9975 18.9523 17.3563 19.219 16.3225 19.358C15.2743 19.4989 13.8998 19.5 12 19.5H8C6.10025 19.5 4.72573 19.4989 3.67754 19.358C2.64373 19.219 2.00253 18.9523 1.52513 18.4749C1.04772 17.9975 0.78098 17.3563 0.641988 16.3225C0.501062 15.2743 0.5 13.8998 0.5 12V8Z\"\r\n stroke=\"#9AA4B2\"\r\n />\r\n <path d=\"M15.3335 10L4.66683 10\" stroke=\"#E3E8EF\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>;\r\n } else {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`checkbox_default_unchecked ${this.size}`}>\r\n <path\r\n d=\"M0.5 8C0.5 6.10025 0.501062 4.72573 0.641988 3.67754C0.78098 2.64373 1.04772 2.00253 1.52513 1.52513C2.00253 1.04772 2.64373 0.78098 3.67754 0.641988C4.72573 0.501062 6.10025 0.5 8 0.5C9.89975 0.5 11.2743 0.501062 12.3225 0.641988C13.3563 0.78098 13.9975 1.04772 14.4749 1.52513C14.9523 2.00253 15.219 2.64373 15.358 3.67754C15.4989 4.72573 15.5 6.10025 15.5 8C15.5 9.89975 15.4989 11.2743 15.358 12.3225C15.219 13.3563 14.9523 13.9975 14.4749 14.4749C13.9975 14.9523 13.3563 15.219 12.3225 15.358C11.2743 15.4989 9.89975 15.5 8 15.5C6.10025 15.5 4.72573 15.4989 3.67754 15.358C2.64373 15.219 2.00253 14.9523 1.52513 14.4749C1.04772 13.9975 0.78098 13.3563 0.641988 12.3225C0.501062 11.2743 0.5 9.89975 0.5 8Z\"\r\n stroke=\"#CDD5DF\"\r\n />\r\n </svg>\r\n );\r\n }\r\n }\r\n\r\n private renderCircle() {\r\n if (this.checked && this.state === \"default\") {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`circle_default_checked ${this.size}`}>\r\n <rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"7.5\" fill=\"#075DB2\" class=\"background\" />\r\n <rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"7.5\" stroke=\"#075DB2\" />\r\n <path\r\n d=\"M5.0835 9.04166C5.0835 9.04166 5.7085 9.04166 6.54183 10.5C6.54183 10.5 8.85801 6.68055 10.9168 5.91666\"\r\n stroke=\"white\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n );\r\n } else if (!this.checked && this.state === \"default\") {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`circle_default_unchecked ${this.size}`}>\r\n <rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"7.5\" stroke=\"#CDD5DF\" />\r\n </svg>\r\n );\r\n } else if (this.checked && this.state === \"disabled\") {\r\n return (\r\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`circle_disabled_checked ${this.size}`}>\r\n <rect x=\"0.5\" y=\"0.5\" width=\"19\" height=\"19\" rx=\"9.5\" fill=\"#9AA4B2\" />\r\n <rect x=\"0.5\" y=\"0.5\" width=\"19\" height=\"19\" rx=\"9.5\" stroke=\"#9AA4B2\" />\r\n <path\r\n d=\"M5.9165 11.4583C5.9165 11.4583 6.7915 11.4583 7.95817 13.5C7.95817 13.5 11.2008 8.15279 14.0832 7.08334\"\r\n stroke=\"#E3E8EF\"\r\n stroke-width=\"2\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n );\r\n } else if (!this.checked && this.state === \"disabled\") {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`circle_disabled_unchecked ${this.size}`}>\r\n <rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"7.5\" stroke=\"#E3E8EF\" />\r\n </svg>\r\n );\r\n }\r\n }\r\n\r\n private renderRadio() {\r\n if (this.state === \"default\" && this.checked) {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`radio_default_checked ${this.size}`}>\r\n <rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"7.5\" stroke=\"#075DB2\" />\r\n <circle cx=\"8\" cy=\"8\" r=\"3\" fill=\"#075DB2\" />\r\n </svg>\r\n );\r\n } else if (this.state === \"disabled\" && !this.checked) {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`radio_disabled_unchecked ${this.size}`}>\r\n <rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"7.5\" stroke=\"#E3E8EF\" />\r\n </svg>\r\n );\r\n } else if (this.state === \"disabled\" && this.checked) {\r\n return (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" class={`radio_disabled_checked ${this.size}`}>\r\n <rect x=\"0.5\" y=\"0.5\" width=\"19\" height=\"19\" rx=\"9.5\" stroke=\"#9AA4B2\" />\r\n <circle cx=\"10\" cy=\"10\" r=\"4\" fill=\"#9AA4B2\" />\r\n </svg>\r\n );\r\n } else {\r\n return (\r\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class={`radio_default_unchecked ${this.size}`}>\r\n <rect x=\"0.5\" y=\"0.5\" width=\"15\" height=\"15\" rx=\"7.5\" stroke=\"#CDD5DF\" />\r\n </svg>\r\n );\r\n }\r\n }\r\n\r\n private toggleCheckboxState() {\r\n if (this.state === \"default\" && !this.checked) {\r\n this.checked = true;\r\n // console.log(this.checked)\r\n this.checkboxClicked.emit(this.checked);\r\n } else if (this.state === \"default\" && this.checked) {\r\n this.checked = false;\r\n // console.log(this.checked);\r\n this.checkboxClicked.emit(this.checked);\r\n }\r\n }\r\n\r\n private toggleCheckCircleState() {\r\n if ((this.state === \"disabled\" && this.checked) || (this.state === \"disabled\" && !this.checked)) {\r\n return;\r\n }\r\n\r\n if (this.state === \"default\" && !this.checked) {\r\n this.checked = true;\r\n this.checkboxClicked.emit(this.checked);\r\n } else if (this.state == \"default\" && this.checked) {\r\n this.checked = false;\r\n this.checkboxClicked.emit(this.checked);\r\n }\r\n }\r\n\r\n private toggleRadioButtonState() {\r\n if ((this.state === \"disabled\" && !this.checked) || (this.state === \"disabled\" && this.checked)) {\r\n return;\r\n }\r\n if (this.state === \"default\" && !this.checked) {\r\n this.checked = true;\r\n this.checkboxClicked.emit(this.checked);\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div\r\n class={`checkbox_container ${this.size}`}\r\n onClick={() => {\r\n if (this.type === 'checkbox') {\r\n return this.toggleCheckboxState();\r\n } else if (this.type === 'check_circle') {\r\n return this.toggleCheckCircleState();\r\n } else if (this.type === 'radio') {\r\n return this.toggleRadioButtonState();\r\n }\r\n }}\r\n >\r\n {this.renderSVG()}\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.checkbox_group_item {\r\n display: flex;\r\n justify-content: space-between;\r\n /* align-items: center; */\r\n background-color: var(--color-background-card, #ffffff);\r\n border: 1px solid var(--color-border-subtle, #cdd5df);\r\n padding: 1rem;\r\n margin-bottom: 0.5rem;\r\n transition: all 0.1s ease-in-out;\r\n cursor: pointer;\r\n border-radius: var(--rounded-md);\r\n}\r\n\r\n.checkbox_group_item .avatar {\r\n /* this is correct*/\r\n flex: 1 0 0;\r\n margin-top: 0.5rem;\r\n border-radius: 12.5rem;\r\n border: 0.5px solid var(--color-blanket-subtler);\r\n}\r\n\r\n.checkbox_group_item.selected {\r\n border: 2px solid var(--color-border-selected, #075db2); /* Checked border color */\r\n background: var(--color-background-information-subtlest, #e4f0fc); /* Checked background color */\r\n}\r\n\r\n/* i'm using this to apply the hover effect but its turning white on hover??? */\r\n.checkbox_group_item:hover {\r\n background: var(--color-background-information-subtler, #c8e0f9);\r\n border-color: var(--color-border-selected, #075db2);\r\n}\r\n\r\n/* i'm using this to change icon color on hover */\r\n.checkbox_group_item:hover .icon-md,\r\n.checkbox_group_item:hover .svg-icon {\r\n fill: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.item-content {\r\n display: flex;\r\n flex: 1 0 0;\r\n align-self: stretch;\r\n}\r\n\r\n.text-container {\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-3);\r\n margin-left: 1rem;\r\n}\r\n\r\n/* Icon Styles */\r\n.icon svg{\r\n width: 2rem;\r\n height: 2rem;\r\n}\r\n\r\n.icon.default path[stroke] {\r\n stroke: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.icon.default path[fill] {\r\n fill: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.icon.default path#Icon[stroke] {\r\n stroke: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.icon.default path#Icon[fill] {\r\n fill: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.icon.default circle[stroke] {\r\n stroke: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.icon.default circle[fill] {\r\n fill: var(--color-icon-information, #064e94);\r\n}\r\n\r\n.icon.disabled path#Icon[stroke] {\r\n stroke: var(--color-icon-disabled, #808c9e);\r\n}\r\n\r\n.icon.disabled path#Icon[fill] {\r\n fill: var(--color-icon-disabled, #808c9e);\r\n}\r\n\r\n.icon.disabled path#Accent[stroke] {\r\n stroke: var(--color-icon-disabled, #808c9e);\r\n}\r\n\r\n.icon.disabled path#Accent[fill] {\r\n fill: var(--color-icon-disabled, #808c9e);\r\n}\r\n\r\n.icon.disabled circle[stroke] {\r\n stroke: var(--color-icon-disabled, #808c9e);\r\n}\r\n\r\n.icon.disabled circle[fill] {\r\n fill: var(--color-icon-disabled, #808c9e);\r\n}\r\n\r\n.icon.disabled path[stroke] {\r\n stroke: var(--color-icon-disabled, #808c9e);\r\n}\r\n\r\n.icon.disabled path[fill] {\r\n fill: var(--color-icon-disabled, #808c9e);\r\n}\r\n\r\n.icon.default path.has_opacity,\r\n.icon.default g.has_opacity,\r\n.icon.default circle.has_opacity,\r\n.icon.default path.has_opacity,\r\n.icon.default g.has_opacity,\r\n.icon.default circle.has_opacity {\r\n opacity: 0.5;\r\n}\r\n\r\n.label-cost {\r\n display: flex;\r\n align-items: center;\r\n flex-direction: row;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.label-cost.payment_icon {\r\n flex-direction: column;\r\n align-items: flex-start;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.label-cost span {\r\n font-size: 1rem;\r\n line-height: 1.2;\r\n}\r\n\r\n.checkbox_container {\r\n margin-left: 1rem;\r\n}\r\n\r\n.icon-md {\r\n width: 2rem;\r\n height: 2rem;\r\n}\r\n\r\n.svg-icon {\r\n width: 2rem;\r\n height: 2rem;\r\n}\r\n\r\n.button{\r\n margin-top: var(--spacing-2);\r\n}\r\n\r\n.buttons {\r\n display: flex;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n/* State Styles */\r\n.checkbox_group_item.default {\r\n border: 1px solid var(--color-border-subtle, #cdd5df);\r\n background: var(--color-background-card, #ffffff);\r\n}\r\n\r\n.checkbox_group_item.default:hover {\r\n border: 1px solid var(--color-border-selected, #075db2);\r\n background: var(--color-background-card, #ffffff);\r\n}\r\n\r\n.checkbox_group_item.selected {\r\n border: 2px solid var(--color-border-selected, #075db2);\r\n background: var(--color-background-information-subtlest, #e4f0fc);\r\n}\r\n\r\n.checkbox_group_item.selected:hover .cost,\r\n.checkbox_group_item.selected:hover .supporting_text {\r\n color: var(--color-text-information, #064e94) !important;\r\n}\r\n\r\n.checkbox_group_item.selected:hover {\r\n border: 2px solid var(--color-border-selected, #075db2);\r\n background: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n.checkbox_group_item.disabled {\r\n border: 1px solid var(--color-border-disabled, #e3e8ef);\r\n background: var(--color-background-disabled, #f6f8fa);\r\n pointer-events: none;\r\n cursor: not-allowed;\r\n}\r\n\r\n.checkbox_group_item.selected.disabled {\r\n border: 2px solid var(--color-border-disabled, #e3e8ef);\r\n background: var(--color-background-disabled, #f6f8fa);\r\n pointer-events: none;\r\n cursor: not-allowed;\r\n}\r\n\r\n.checkbox_group_item ::slotted([slot='label']) {\r\n color: var(--color-text-bold, #202939) !important;\r\n}\r\n\r\n.checkbox_group_item.selected ::slotted([slot='label']) {\r\n color: var(--color-text-information-bold, #042f59) !important;\r\n}\r\n\r\n.checkbox_group_item ::slotted([slot='cost']) {\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n.checkbox_group_item.selected ::slotted([slot='cost']) {\r\n color: var(--color-text-information, #064e94) !important;\r\n}\r\n\r\n.checkbox_group_item ::slotted([slot='supporting_text']) {\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n.checkbox_group_item.selected ::slotted([slot='supporting_text']) {\r\n color: var(--color-text-information, #064e94) !important;\r\n}\r\n\r\n.checkbox_group_item.disabled ::slotted([slot='cost']),\r\n.checkbox_group_item.disabled ::slotted([slot='label']),\r\n.checkbox_group_item.disabled ::slotted([slot='supporting_text']) {\r\n color: var(--color-text-disabled, #cdd5df) !important;\r\n}\r\n\r\n.icon_simple_svg.disabled path[stroke] {\r\n stroke: var(--color-icon-disabled, #cdd5df);\r\n}\r\n\r\n.icon_simple_svg.disabled path[fill] {\r\n fill: var(--color-icon-disabled, #cdd5df);\r\n}\r\n","import { Component, h, Prop, Element, Event, EventEmitter, State, getAssetPath } from '@stencil/core';\r\nimport { GeneralSizes, StateEnum, BreakPoints, CheckBoxVariants } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-checkbox-group-item',\r\n styleUrl: 'gb-checkbox-group-item.css',\r\n shadow: true,\r\n})\r\nexport class GbCheckboxGroupItem {\r\n @Prop() size: GeneralSizes;\r\n @Prop() type: 'icon_simple' | 'avatar' | 'payment_icon' | 'radio_button' | 'checkbox';\r\n @Prop() state: StateEnum;\r\n @Prop() breakpoint: BreakPoints;\r\n @Prop() showCost: boolean = false; // to control cost visibility\r\n @Element() el: HTMLElement;\r\n @Prop({ mutable: true }) selected: boolean = false;\r\n @Prop() showButton: boolean = true;\r\n @Prop() buttonText: string = '';\r\n @Prop() icon: string = '';\r\n @Prop() checkboxType: CheckBoxVariants;\r\n @State() leadingIconSvg: string = '';\r\n @Event() buttonClicked: EventEmitter<void>;\r\n @Event() groupItemClicked: EventEmitter<boolean>;\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\r\n const parser = new DOMParser();\r\n const svgDoc = parser.parseFromString(svg, 'image/svg+xml');\r\n const svgElement = svgDoc.documentElement;\r\n\r\n // Add `has-opacity` class to all elements that have an opacity attribute\r\n const elementsWithOpacity = svgElement.querySelectorAll('[opacity]');\r\n elementsWithOpacity.forEach(el => {\r\n el.classList.add('has_opacity');\r\n });\r\n\r\n // Serialize and store\r\n const modifiedSvg = svgElement.outerHTML;\r\n // console.log(modifiedSvg)\r\n this.leadingIconSvg = modifiedSvg;\r\n }\r\n\r\n onButtonClicked() {\r\n this.buttonClicked.emit();\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n private getLabelSizeClass() {\r\n switch (this.size) {\r\n case 'md':\r\n return 'text-lg-semi-bold';\r\n case 'sm':\r\n return 'text-md-semi-bold';\r\n }\r\n }\r\n\r\n private getCostSizeClass() {\r\n switch (this.size) {\r\n case 'xl':\r\n return 'text-md-regular';\r\n case 'lg':\r\n return 'text-md-regular';\r\n case 'md':\r\n return 'text-sm-regular';\r\n case 'sm':\r\n return 'text-xs-regular';\r\n default:\r\n return 'text-xs-regular';\r\n }\r\n }\r\n\r\n private getSupportingTextClasses() {\r\n switch (this.size) {\r\n case 'md':\r\n return 'text-md-regular';\r\n case 'sm':\r\n return 'text-sm-regular';\r\n default:\r\n return 'text-sm-regular';\r\n }\r\n }\r\n\r\n private getLabelColorClasses() {\r\n switch (this.selected) {\r\n case true:\r\n return 'label_selected';\r\n case false:\r\n return 'label_not_selected';\r\n }\r\n }\r\n\r\n private getCostColorClasses() {\r\n switch (this.selected) {\r\n case true:\r\n return 'cost_selected';\r\n case false:\r\n return 'cost_not_selected';\r\n }\r\n }\r\n\r\n componentDidUpdate() {\r\n const labelSlot = this.el.querySelector('[slot=\"label\"]');\r\n const costSlot = this.el.querySelector('[slot=\"cost\"]');\r\n\r\n labelSlot.classList.add(this.getLabelColorClasses());\r\n costSlot.classList.add(this.getCostColorClasses());\r\n }\r\n\r\n componentDidLoad() {\r\n const labelSlot = this.el.querySelector('[slot=\"label\"]');\r\n const costSlot = this.el.querySelector('[slot=\"cost\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"supporting_text\"]');\r\n\r\n if (labelSlot) {\r\n labelSlot.classList.add(this.getLabelSizeClass());\r\n }\r\n\r\n if (costSlot) {\r\n costSlot.classList.add(this.getCostSizeClass());\r\n costSlot.classList.add(this.getCostColorClasses());\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add(this.getSupportingTextClasses());\r\n supportingTextSlot.classList.add('supporting_text');\r\n }\r\n }\r\n\r\n private renderIcon() {\r\n switch (this.type) {\r\n case 'avatar':\r\n return (\r\n <gb-avatar class=\"icon-md\" size=\"md\" placeholder={false} icon=\"user\">\r\n <img src=\"build/assets/avatar_pic.jpg\" slot=\"image\"></img>\r\n </gb-avatar>\r\n );\r\n case 'payment_icon':\r\n return (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"46\" height=\"32\" viewBox=\"0 0 46 32\" fill=\"none\">\r\n <rect x=\"0.5\" y=\"0.5\" width=\"45\" height=\"31\" rx=\"5.5\" fill=\"white\" />\r\n <rect x=\"0.5\" y=\"0.5\" width=\"45\" height=\"31\" rx=\"5.5\" stroke=\"#F8FAFC\" />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M14.3336 21.1444H11.5872L9.52784 13.0565C9.43009 12.6845 9.22255 12.3556 8.91725 12.2006C8.15535 11.811 7.31579 11.501 6.3999 11.3446V11.0332H10.824C11.4346 11.0332 11.8925 11.501 11.9689 12.0442L13.0374 17.8782L15.7824 11.0332H18.4524L14.3336 21.1444ZM19.9789 21.1444H17.3852L19.5209 11.0332H22.1146L19.9789 21.1444ZM25.4702 13.8343C25.5465 13.2898 26.0044 12.9784 26.5387 12.9784C27.3783 12.9002 28.2928 13.0566 29.0561 13.4448L29.514 11.2678C28.7508 10.9564 27.9112 10.8 27.1493 10.8C24.6319 10.8 22.8002 12.2006 22.8002 14.1444C22.8002 15.6231 24.0977 16.3995 25.0136 16.8673C26.0044 17.3337 26.3861 17.6451 26.3097 18.1114C26.3097 18.811 25.5465 19.1224 24.7846 19.1224C23.8687 19.1224 22.9528 18.8892 22.1146 18.4997L21.6567 20.678C22.5725 21.0662 23.5634 21.2226 24.4793 21.2226C27.3019 21.2994 29.0561 19.9002 29.0561 17.8001C29.0561 15.1553 25.4702 15.0003 25.4702 13.8343ZM38.1332 21.1444L36.0738 11.0332H33.8618C33.4038 11.0332 32.9459 11.3446 32.7932 11.811L28.9797 21.1444H31.6497L32.1826 19.667H35.4632L35.7685 21.1444H38.1332ZM34.2434 13.7562L35.0053 17.5669H32.8696L34.2434 13.7562Z\"\r\n fill=\"#172B85\"\r\n />\r\n </svg>\r\n );\r\n case 'icon_simple':\r\n return <div class={`icon ${this.state}`} innerHTML={this.leadingIconSvg}></div>;\r\n case 'radio_button':\r\n return <gb-checkbox size={this.size} type=\"radio\" state={this.state} checked={this.selected}></gb-checkbox>;\r\n case 'checkbox':\r\n return <gb-checkbox size={this.size} type=\"checkbox\" state={this.state} checked={this.selected}></gb-checkbox>;\r\n }\r\n }\r\n\r\n // Toggle selected state on checkbox click\r\n private toggleSelection() {\r\n if (this.state === 'default') {\r\n this.selected = !this.selected;\r\n }\r\n\r\n this.groupItemClicked.emit(this.selected);\r\n }\r\n\r\n render() {\r\n return [\r\n <div class={`checkbox_group_item ${this.size} ${this.state} ${this.selected ? 'selected' : ''} ${this.breakpoint}`} onClick={() => this.toggleSelection()}>\r\n <div class=\"item-content\">\r\n {this.renderIcon()}\r\n <div class=\"text-container\">\r\n <div class={`label-cost ${this.type}`}>\r\n <slot name=\"label\"></slot>\r\n {this.showCost && <slot name=\"cost\"></slot>}\r\n </div>\r\n {this.type === 'payment_icon' ? (\r\n <div class=\"buttons\">\r\n <gb-button size={this.size} hierarchy=\"link_gray\" icon=\"default\" state={this.state}>\r\n <p>Set as default</p>\r\n </gb-button>\r\n <gb-button size={this.size} hierarchy=\"link_color\" icon=\"default\" state={this.state}>\r\n <p>Edit</p>\r\n </gb-button>\r\n </div>\r\n ) : (\r\n <slot name=\"supporting_text\"></slot>\r\n )}\r\n <gb-button\r\n class=\"button\"\r\n size=\"lg\"\r\n state={this.state}\r\n hierarchy={this.selected ? 'link_color' : 'link_gray'}\r\n icon=\"default\"\r\n onClick={e => {\r\n this.onButtonClicked();\r\n e.stopPropagation();\r\n }}\r\n >\r\n <p>{this.buttonText}</p>\r\n </gb-button>\r\n </div>\r\n </div>\r\n {this.type === 'icon_simple' || this.type === 'avatar' || this.type === 'payment_icon' ? (\r\n <div class={`checkbox_container`}>\r\n <gb-checkbox type={this.checkboxType} size={this.size} state={this.state} checked={this.selected}></gb-checkbox>\r\n </div>\r\n ) : null}\r\n </div>,\r\n ];\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n:host{\r\n position: relative;\r\n}\r\n\r\n.collapse_btn{\r\n background-color: transparent;\r\n border-radius: var(--rounded-full);\r\n display: flex;\r\n width: var(--spacing-7);\r\n height: var(--spacing-7);\r\n padding: var(--spacing-2);\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n cursor: pointer;\r\n}\r\n\r\n.collapse_btn.gray:hover{\r\n background-color: var(--color-background-gray-subtler, #EEF2F6);\r\n cursor: pointer;\r\n}\r\n\r\n.collapse_btn.gray:active{\r\n background-color: var(--color-background-gray-subtle, #E3E8EF);\r\n}\r\n\r\n.collapse_btn.white:hover{\r\n background-color: var(--color-blanket-subtle, rgba(33, 44, 101, 0.3));\r\n cursor: pointer;\r\n}\r\n\r\n.collapse_btn.white:active{\r\n background-color: var(--color-blanket, rgba(33, 44, 101, 0.4));\r\n}\r\n\r\n.icon{\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.icon.horizontal.expand svg{\r\n transform: rotate(180deg);\r\n}\r\n\r\n/* .icon.vertical.collapse svg{\r\n transform: rotate(90deg);\r\n} */\r\n\r\n.icon.vertical.expand svg{\r\n transform: rotate(180deg);\r\n}\r\n\r\n.icon.gray path{\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon.white path{\r\n stroke: var(--base-white, #FFFFFF);\r\n}\r\n\r\n.tooltip.horizontal{\r\n position: absolute;\r\n left: 3.5rem;\r\n bottom: 2.7rem;\r\n}\r\n\r\n.tooltip.vertical{\r\n position: absolute;\r\n left: 0.5rem;\r\n bottom: 190%;\r\n}\r\n\r\n.text-xs-semi-bold{\r\n font-family: var(--font-family-body);\r\n font-size: var(--font-size-t-xs);\r\n font-weight: var(--font-weight-semi-bold);\r\n line-height: var(--font-line-height-t-xs);\r\n margin: var(--spacing-none);\r\n padding: var(--spacing-none);\r\n display: inline-block;\r\n position: relative;\r\n}\r\n\r\n.text-xs-semi-bold::before,\r\n.text-xs-semi-bold::after{\r\n content: \"\";\r\n display: table;\r\n}\r\n\r\n.text-xs-semi-bold::before{\r\n margin-bottom: -0.321em;\r\n}\r\n\r\n.text-xs-semi-bold::after{\r\n margin-top: -0.416em;\r\n}","import { Component, Method, Prop, State, getAssetPath, h } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'gb-collapse-button',\r\n styleUrl: 'gb-collapse-button.css',\r\n shadow: true,\r\n})\r\nexport class GbCollapseButton {\r\n @Prop() color: 'gray' | 'white';\r\n @Prop({ mutable: true }) isCollapsed: boolean = false;\r\n @Prop({ mutable: true }) action: string = 'collapse';\r\n @Prop({ mutable: true }) isHovered: boolean = false;\r\n @Prop() direction: 'horizontal' | 'vertical' = 'horizontal';\r\n @Prop() icon: string = '';\r\n @State() leadingIconSvg: string = '';\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 componentWillLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n toggleIcon() {\r\n if (this.action === 'collapse') {\r\n this.action = 'expand';\r\n this.isHovered = false;\r\n } else if (this.action === 'expand') {\r\n this.action = 'collapse';\r\n this.isHovered = false;\r\n }\r\n }\r\n\r\n @Method()\r\n async collapseSidebar() {\r\n this.isCollapsed = true;\r\n }\r\n\r\n @Method()\r\n async expandSidebar() {\r\n this.isCollapsed = false;\r\n }\r\n\r\n render() {\r\n return [\r\n <div>\r\n <div class={`collapse_btn ${this.color}`} onClick={this.toggleIcon.bind(this)} onMouseOver={() => (this.isHovered = true)} onMouseOut={() => (this.isHovered = false)}>\r\n {/* {this.action === 'collapse' && [\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" class={`icon ${this.color}`}>\r\n <path\r\n d=\"M9.58321 15C9.58321 15 4.58326 11.3176 4.58325 9.99996C4.58324 8.68237 9.58325 5 9.58325 5M15.4165 15C15.4165 15 10.4166 11.3176 10.4166 9.99996C10.4166 8.68237 15.4166 5 15.4166 5\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>,\r\n ]}\r\n {this.action === 'expand' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" class={`icon ${this.color}`}>\r\n <path\r\n d=\"M10.4166 15C10.4166 15 15.4166 11.3176 15.4166 9.99996C15.4166 8.68237 10.4166 5 10.4166 5M4.58329 15C4.58329 15 9.58324 11.3176 9.58325 9.99996C9.58326 8.68237 4.58325 5 4.58325 5\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )} */}\r\n <div class={`icon ${this.color} ${this.direction} ${this.action}`} innerHTML={this.leadingIconSvg}></div>\r\n </div>\r\n {this.isHovered && this.action === 'collapse' ? (\r\n <gb-tooltip class={`tooltip ${this.direction}`} show-arrow={true} arrow={this.direction === 'horizontal' ? 'left' : this.direction === 'vertical' ? 'bottom_left' : null}>\r\n <p slot=\"label\" class=\"text-xs-semi-bold\">\r\n Collapse\r\n </p>\r\n </gb-tooltip>\r\n ) : this.isHovered && this.action === 'expand' ? (\r\n <gb-tooltip class={`tooltip ${this.direction}`} show-arrow={true} arrow={this.direction === 'horizontal' ? 'left' : this.direction === 'vertical' ? 'bottom_left' : null}>\r\n <p slot=\"label\" class=\"text-xs-semi-bold\">\r\n Expand\r\n </p>\r\n </gb-tooltip>\r\n ) : null}\r\n </div>,\r\n ];\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.container{\r\n display: flex;\r\n width: 6rem;\r\n padding: var(--spacing-2) var(--spacing-none);\r\n flex-direction: column;\r\n align-items: center;\r\n gap: var(--spacing-1);\r\n cursor: pointer;\r\n}\r\n\r\n.wrapper{\r\n display: flex;\r\n height: 3rem;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: 0.25rem;\r\n}\r\n\r\n.bar{\r\n position: absolute;\r\n left: 0;\r\n top: 0;\r\n height: 100%;\r\n}\r\n\r\n.icon{\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.icon svg{\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n}\r\n\r\n.container{\r\n position: relative;\r\n}\r\n\r\n/* State Styles*/\r\n.container.default.colored_background:hover{\r\n background: var(--color-blanket, rgba(33, 44, 101, 0.2));\r\n}\r\n\r\n.container.colored_background.active{\r\n background: var(--color-background-information-bold, #042F59);\r\n}\r\n\r\n.container.default.plain_background:hover{\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\n.container.plain_background.active{\r\n background: var(--color-background-information-subtler, #C8E0F9);\r\n}\r\n\r\n/* Icon Color Styles */\r\n.icon.plain_background path[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon.plain_background.active path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.plain_background.active path[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.plain_background path#Icon[fill] {\r\n fill: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon.plain_background.active path#Icon[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.plain_background.active path#Accent[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.plain_background circle[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon.plain_background.active circle[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.colored_background path[stroke] {\r\n stroke: var(--color-icon-inverse, #FFFFFF);\r\n}\r\n\r\n.icon.colored_background.active path[fill] {\r\n fill: var(--color-icon-inverse, #FFFFFF);\r\n}\r\n\r\n.icon.colored_background path#Icon[fill] {\r\n fill: var(--color-icon-inverse, #FFFFFF);\r\n}\r\n\r\n.icon.colored_background.active path#Accent[fill] {\r\n fill: var(--color-icon-inverse, #FFFFFF);\r\n}\r\n\r\n.icon.colored_background circle[stroke] {\r\n stroke: var(--color-icon-inverse, #FFFFFF);\r\n}\r\n\r\n.icon.colored_background.active circle[fill] {\r\n fill: var(--color-icon-inverse, #FFFFFF);\r\n}\r\n\r\n.icon.plain_background.default path[fill],\r\n.icon.colored_background.default path[fill],\r\n.icon.plain_background.default circle[fill],\r\n.icon.colored_background.default circle[fill] {\r\n fill: transparent;\r\n}\r\n\r\n/* Text Styles */\r\n.label_text.colored_background {\r\n color: #FFFFFF; /**/\r\n}\r\n\r\n.label_text.plain_background {\r\n color: var(--color-text, #4B5565); \r\n} \r\n\r\n.label_text.plain_background.active {\r\n color: var(--color-text-information-bold, #042F59);\r\n}\r\n\r\n/* Compact Item Styles */\r\n.compact_container{\r\n display: flex;\r\n width: 6rem;\r\n padding: var(--spacing-2) 0rem;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-1);\r\n}\r\n\r\n.compact_wrapper{\r\n display: flex;\r\n width: 3rem;\r\n justify-content: center;\r\n align-items: center;\r\n gap: 0.5rem;\r\n border-radius: var(--rounded-sm);\r\n position: relative;\r\n cursor: pointer;\r\n}\r\n\r\n.compact_bar{\r\n position: absolute;\r\n top: 0.72rem;\r\n left: 0;\r\n}\r\n\r\n.compact_wrapper.colored_background:hover{\r\n background: var(--color-blanket, rgba(33, 44, 101, 0.2));\r\n}\r\n\r\n.compact_wrapper.colored_background.active{\r\n background: #042F59;\r\n}\r\n\r\n.compact_wrapper.plain_background:hover{\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\n.compact_wrapper.plain_background.active{\r\n background: var(--color-background-information-subtler, #C8E0F9);\r\n}\r\n\r\n.compact_icon_container{\r\n display: flex;\r\n height: 3rem;\r\n padding: var(--spacing-none) var(--spacing-5);\r\n justify-content: center;\r\n align-items: center;\r\n flex: 1 0 0;\r\n border-radius: 62.4375rem;\r\n}\r\n\r\n.tooltip{\r\n position: absolute;\r\n top: 0.4rem;\r\n left: 3.3rem;\r\n}","import { Component, Element, Prop, State, getAssetPath, h, Fragment } from \"@stencil/core\";\r\nimport { GeneralBackgroundCategories } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-complex-primary-side-bar-item',\r\n styleUrl: 'gb-complex-primary-side-bar-item.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbComplexPrimarySideBarItem {\r\n @Prop() category: GeneralBackgroundCategories;\r\n @Prop() itemStyle: 'standard' | 'compact';\r\n @Prop() state: 'default' | 'active';\r\n @Prop() icon: string = '';\r\n @Prop() label: string = 'Recruitment';\r\n @Prop({ mutable: true }) showTooltip: boolean = false;\r\n @State() leadingIconSvg: string = '';\r\n @Element() el: HTMLElement;\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 componentWillLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n // componentDidLoad() {\r\n \r\n // }\r\n\r\n render() {\r\n const redBarSrc = getAssetPath(`assets/complex_bar_red.svg`);\r\n const whiteBarSrc = getAssetPath(`assets/complex_bar_white.svg`);\r\n const redCompactBarSrc = getAssetPath(`assets/compact_bar_red.svg`);\r\n const whiteCompactBarSrc = getAssetPath(`assets/compact_bar_white.svg`);\r\n\r\n return (\r\n <>\r\n {this.itemStyle === 'standard' && (\r\n <div class={`container ${this.state} ${this.category}`}>\r\n <div class={`wrapper ${this.state} ${this.category}`}>\r\n {this.state === 'active' && this.category === 'plain_background' && <img src={redBarSrc} alt=\"\" class=\"bar\" />}\r\n {this.state === 'active' && this.category === 'colored_background' && <img src={whiteBarSrc} alt=\"\" class=\"bar\" />}\r\n <div class=\"icon_container\">\r\n <div class={`icon ${this.state} ${this.category}`} innerHTML={this.leadingIconSvg}></div>\r\n </div>\r\n <p class={`label_text ${this.state} ${this.category} ${this.state === 'active' ? 'text-xs-semi-bold' : 'text-xs-regular'}`}>{this.label}</p>\r\n </div>\r\n </div>\r\n )}\r\n {this.itemStyle === 'compact' && (\r\n <div class=\"compact_container\">\r\n <div class={`compact_wrapper ${this.state} ${this.category}`} onMouseEnter={() => (this.showTooltip = true)} onMouseLeave={() => (this.showTooltip = false)}>\r\n {this.state === 'active' && this.category === 'plain_background' && <img src={redCompactBarSrc} alt=\"\" class=\"compact_bar\" />}\r\n {this.state === 'active' && this.category === 'colored_background' && <img src={whiteCompactBarSrc} alt=\"\" class=\"compact_bar\" />}\r\n <div class=\"compact_icon_container\">\r\n <div class={`icon ${this.state} ${this.category}`} innerHTML={this.leadingIconSvg}></div>\r\n </div>\r\n {this.itemStyle === 'compact' && this.showTooltip && (\r\n <gb-tooltip show-arrow={true} arrow=\"left\" class=\"tooltip\">\r\n <p slot=\"label\">{this.label}</p>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n </div>\r\n )}\r\n </>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n:host {\r\n position: relative;\r\n}\r\n\r\n.container {\r\n display: flex;\r\n padding: var(--spacing-none) var(--spacing-4);\r\n flex-direction: column;\r\n gap: 0.5rem;\r\n}\r\n\r\n.icon{\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.container.full_with_label {\r\n width: 14.875rem;\r\n}\r\n\r\n.container.icon_only {\r\n width: fit-content;\r\n}\r\n\r\n.secondary_side_bar_item_div {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-3);\r\n border-radius: var(--rounded-sm);\r\n padding: var(--spacing-2) var(--spacing-4);\r\n cursor: pointer;\r\n}\r\n\r\n.secondary_side_bar_item_div.icon_only {\r\n width: fit-content;\r\n}\r\n\r\n/* Category Styles */\r\n.secondary_side_bar_item_div.colored_background.default,\r\n.secondary_side_bar_item_div.plain_background.default {\r\n background: transparent;\r\n}\r\n\r\n.secondary_side_bar_item_div.colored_background.default:hover {\r\n background: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n.secondary_side_bar_item_div.colored_background.active {\r\n background: var(--color-background-information-subtle, #9ac7f4);\r\n}\r\n\r\n.secondary_side_bar_item_div.plain_background.default:hover {\r\n background: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\n.secondary_side_bar_item_div.plain_background.active {\r\n background: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n/* Icon Color Styles */\r\n.icon.plain_background path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background.active path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.active path[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background path#Icon[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background.active path#Icon[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.active path#Accent[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background circle[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background.active circle[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.colored_background path[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon.colored_background.active path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.colored_background.active path[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.colored_background path#Icon[fill] {\r\n fill: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon.colored_background.active path#Icon[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.colored_background.active path#Accent[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.colored_background circle[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon.colored_background.active circle[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.icon.plain_background.default path[fill],\r\n.icon.colored_background.default path[fill],\r\n.icon.plain_background.default circle[fill],\r\n.icon.colored_background.default circle[fill] {\r\n fill: transparent;\r\n}\r\n\r\n/* Text Styles */\r\n.label_text.colored_background,\r\n.label_text.plain_background {\r\n color: var(--color-text, #4b5565); /**/\r\n}\r\n\r\n.label_text.colored_background.active,\r\n.label_text.plain_background.active {\r\n color: var(--color-text-information-bold, #042f59);\r\n}\r\n\r\n.tooltip {\r\n position: absolute;\r\n top: 0.3rem;\r\n left: 4.8rem;\r\n}\r\n","import { Component, Element, Prop, State, getAssetPath, h } from \"@stencil/core\";\r\nimport { GeneralBackgroundCategories } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-complex-secondary-side-bar-item',\r\n styleUrl: 'gb-complex-secondary-side-bar-item.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbComplexSecondarySideBarItem {\r\n @Prop() state: 'default' | 'active';\r\n @Prop() type: 'full_with_label' | 'icon_only';\r\n @Prop() category: GeneralBackgroundCategories;\r\n @Prop() label: string = 'Appraisal';\r\n @Prop() icon: string = '';\r\n @Prop({ mutable: true }) showTooltip: boolean = false;\r\n @Element() el: HTMLElement;\r\n @State() leadingIconSvg: string = '';\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 componentDidLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`container ${this.type}`}>\r\n <div\r\n class={`secondary_side_bar_item_div ${this.state} ${this.type} ${this.category}`}\r\n onMouseEnter={() => (this.showTooltip = true)}\r\n onMouseLeave={() => (this.showTooltip = false)}\r\n >\r\n <div class=\"icon\">\r\n <div class=\"icon_container\">\r\n <div class={`icon ${this.state} ${this.category}`} innerHTML={this.leadingIconSvg}></div>\r\n </div>\r\n </div>\r\n {this.type === 'full_with_label' && (\r\n <div class=\"text\">\r\n <p class={`label_text ${this.state} ${this.category} ${this.state !== 'active' ? 'text-md-medium' : 'text-md-semi-bold'}`}>{this.label}</p>\r\n </div>\r\n )}\r\n {this.type === 'icon_only' && this.showTooltip && (\r\n <gb-tooltip show-arrow={true} arrow=\"left\" class=\"tooltip\">\r\n <p slot=\"label\">{this.label}</p>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n </div>\r\n );\r\n }\r\n}","export var HOOKS = [\n \"onChange\",\n \"onClose\",\n \"onDayCreate\",\n \"onDestroy\",\n \"onKeyDown\",\n \"onMonthChange\",\n \"onOpen\",\n \"onParseConfig\",\n \"onReady\",\n \"onValueUpdate\",\n \"onYearChange\",\n \"onPreCalendarPosition\",\n];\nexport var defaults = {\n _disable: [],\n allowInput: false,\n allowInvalidPreload: false,\n altFormat: \"F j, Y\",\n altInput: false,\n altInputClass: \"form-control input\",\n animate: typeof window === \"object\" &&\n window.navigator.userAgent.indexOf(\"MSIE\") === -1,\n ariaDateFormat: \"F j, Y\",\n autoFillDefaultTime: true,\n clickOpens: true,\n closeOnSelect: true,\n conjunction: \", \",\n dateFormat: \"Y-m-d\",\n defaultHour: 12,\n defaultMinute: 0,\n defaultSeconds: 0,\n disable: [],\n disableMobile: false,\n enableSeconds: false,\n enableTime: false,\n errorHandler: function (err) {\n return typeof console !== \"undefined\" && console.warn(err);\n },\n getWeek: function (givenDate) {\n var date = new Date(givenDate.getTime());\n date.setHours(0, 0, 0, 0);\n date.setDate(date.getDate() + 3 - ((date.getDay() + 6) % 7));\n var week1 = new Date(date.getFullYear(), 0, 4);\n return (1 +\n Math.round(((date.getTime() - week1.getTime()) / 86400000 -\n 3 +\n ((week1.getDay() + 6) % 7)) /\n 7));\n },\n hourIncrement: 1,\n ignoredFocusElements: [],\n inline: false,\n locale: \"default\",\n minuteIncrement: 5,\n mode: \"single\",\n monthSelectorType: \"dropdown\",\n nextArrow: \"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>\",\n noCalendar: false,\n now: new Date(),\n onChange: [],\n onClose: [],\n onDayCreate: [],\n onDestroy: [],\n onKeyDown: [],\n onMonthChange: [],\n onOpen: [],\n onParseConfig: [],\n onReady: [],\n onValueUpdate: [],\n onYearChange: [],\n onPreCalendarPosition: [],\n plugins: [],\n position: \"auto\",\n positionElement: undefined,\n prevArrow: \"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>\",\n shorthandCurrentMonth: false,\n showMonths: 1,\n static: false,\n time_24hr: false,\n weekNumbers: false,\n wrap: false,\n};\n","export var english = {\n weekdays: {\n shorthand: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n longhand: [\n \"Sunday\",\n \"Monday\",\n \"Tuesday\",\n \"Wednesday\",\n \"Thursday\",\n \"Friday\",\n \"Saturday\",\n ],\n },\n months: {\n shorthand: [\n \"Jan\",\n \"Feb\",\n \"Mar\",\n \"Apr\",\n \"May\",\n \"Jun\",\n \"Jul\",\n \"Aug\",\n \"Sep\",\n \"Oct\",\n \"Nov\",\n \"Dec\",\n ],\n longhand: [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n ],\n },\n daysInMonth: [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],\n firstDayOfWeek: 0,\n ordinal: function (nth) {\n var s = nth % 100;\n if (s > 3 && s < 21)\n return \"th\";\n switch (s % 10) {\n case 1:\n return \"st\";\n case 2:\n return \"nd\";\n case 3:\n return \"rd\";\n default:\n return \"th\";\n }\n },\n rangeSeparator: \" to \",\n weekAbbreviation: \"Wk\",\n scrollTitle: \"Scroll to increment\",\n toggleTitle: \"Click to toggle\",\n amPM: [\"AM\", \"PM\"],\n yearAriaLabel: \"Year\",\n monthAriaLabel: \"Month\",\n hourAriaLabel: \"Hour\",\n minuteAriaLabel: \"Minute\",\n time_24hr: false,\n};\nexport default english;\n","export var pad = function (number, length) {\n if (length === void 0) { length = 2; }\n return (\"000\" + number).slice(length * -1);\n};\nexport var int = function (bool) { return (bool === true ? 1 : 0); };\nexport function debounce(fn, wait) {\n var t;\n return function () {\n var _this = this;\n var args = arguments;\n clearTimeout(t);\n t = setTimeout(function () { return fn.apply(_this, args); }, wait);\n };\n}\nexport var arrayify = function (obj) {\n return obj instanceof Array ? obj : [obj];\n};\n","export function toggleClass(elem, className, bool) {\n if (bool === true)\n return elem.classList.add(className);\n elem.classList.remove(className);\n}\nexport function createElement(tag, className, content) {\n var e = window.document.createElement(tag);\n className = className || \"\";\n content = content || \"\";\n e.className = className;\n if (content !== undefined)\n e.textContent = content;\n return e;\n}\nexport function clearNode(node) {\n while (node.firstChild)\n node.removeChild(node.firstChild);\n}\nexport function findParent(node, condition) {\n if (condition(node))\n return node;\n else if (node.parentNode)\n return findParent(node.parentNode, condition);\n return undefined;\n}\nexport function createNumberInput(inputClassName, opts) {\n var wrapper = createElement(\"div\", \"numInputWrapper\"), numInput = createElement(\"input\", \"numInput \" + inputClassName), arrowUp = createElement(\"span\", \"arrowUp\"), arrowDown = createElement(\"span\", \"arrowDown\");\n if (navigator.userAgent.indexOf(\"MSIE 9.0\") === -1) {\n numInput.type = \"number\";\n }\n else {\n numInput.type = \"text\";\n numInput.pattern = \"\\\\d*\";\n }\n if (opts !== undefined)\n for (var key in opts)\n numInput.setAttribute(key, opts[key]);\n wrapper.appendChild(numInput);\n wrapper.appendChild(arrowUp);\n wrapper.appendChild(arrowDown);\n return wrapper;\n}\nexport function getEventTarget(event) {\n try {\n if (typeof event.composedPath === \"function\") {\n var path = event.composedPath();\n return path[0];\n }\n return event.target;\n }\n catch (error) {\n return event.target;\n }\n}\n","import { int, pad } from \"../utils\";\nvar doNothing = function () { return undefined; };\nexport var monthToStr = function (monthNumber, shorthand, locale) { return locale.months[shorthand ? \"shorthand\" : \"longhand\"][monthNumber]; };\nexport var revFormat = {\n D: doNothing,\n F: function (dateObj, monthName, locale) {\n dateObj.setMonth(locale.months.longhand.indexOf(monthName));\n },\n G: function (dateObj, hour) {\n dateObj.setHours((dateObj.getHours() >= 12 ? 12 : 0) + parseFloat(hour));\n },\n H: function (dateObj, hour) {\n dateObj.setHours(parseFloat(hour));\n },\n J: function (dateObj, day) {\n dateObj.setDate(parseFloat(day));\n },\n K: function (dateObj, amPM, locale) {\n dateObj.setHours((dateObj.getHours() % 12) +\n 12 * int(new RegExp(locale.amPM[1], \"i\").test(amPM)));\n },\n M: function (dateObj, shortMonth, locale) {\n dateObj.setMonth(locale.months.shorthand.indexOf(shortMonth));\n },\n S: function (dateObj, seconds) {\n dateObj.setSeconds(parseFloat(seconds));\n },\n U: function (_, unixSeconds) { return new Date(parseFloat(unixSeconds) * 1000); },\n W: function (dateObj, weekNum, locale) {\n var weekNumber = parseInt(weekNum);\n var date = new Date(dateObj.getFullYear(), 0, 2 + (weekNumber - 1) * 7, 0, 0, 0, 0);\n date.setDate(date.getDate() - date.getDay() + locale.firstDayOfWeek);\n return date;\n },\n Y: function (dateObj, year) {\n dateObj.setFullYear(parseFloat(year));\n },\n Z: function (_, ISODate) { return new Date(ISODate); },\n d: function (dateObj, day) {\n dateObj.setDate(parseFloat(day));\n },\n h: function (dateObj, hour) {\n dateObj.setHours((dateObj.getHours() >= 12 ? 12 : 0) + parseFloat(hour));\n },\n i: function (dateObj, minutes) {\n dateObj.setMinutes(parseFloat(minutes));\n },\n j: function (dateObj, day) {\n dateObj.setDate(parseFloat(day));\n },\n l: doNothing,\n m: function (dateObj, month) {\n dateObj.setMonth(parseFloat(month) - 1);\n },\n n: function (dateObj, month) {\n dateObj.setMonth(parseFloat(month) - 1);\n },\n s: function (dateObj, seconds) {\n dateObj.setSeconds(parseFloat(seconds));\n },\n u: function (_, unixMillSeconds) {\n return new Date(parseFloat(unixMillSeconds));\n },\n w: doNothing,\n y: function (dateObj, year) {\n dateObj.setFullYear(2000 + parseFloat(year));\n },\n};\nexport var tokenRegex = {\n D: \"\",\n F: \"\",\n G: \"(\\\\d\\\\d|\\\\d)\",\n H: \"(\\\\d\\\\d|\\\\d)\",\n J: \"(\\\\d\\\\d|\\\\d)\\\\w+\",\n K: \"\",\n M: \"\",\n S: \"(\\\\d\\\\d|\\\\d)\",\n U: \"(.+)\",\n W: \"(\\\\d\\\\d|\\\\d)\",\n Y: \"(\\\\d{4})\",\n Z: \"(.+)\",\n d: \"(\\\\d\\\\d|\\\\d)\",\n h: \"(\\\\d\\\\d|\\\\d)\",\n i: \"(\\\\d\\\\d|\\\\d)\",\n j: \"(\\\\d\\\\d|\\\\d)\",\n l: \"\",\n m: \"(\\\\d\\\\d|\\\\d)\",\n n: \"(\\\\d\\\\d|\\\\d)\",\n s: \"(\\\\d\\\\d|\\\\d)\",\n u: \"(.+)\",\n w: \"(\\\\d\\\\d|\\\\d)\",\n y: \"(\\\\d{2})\",\n};\nexport var formats = {\n Z: function (date) { return date.toISOString(); },\n D: function (date, locale, options) {\n return locale.weekdays.shorthand[formats.w(date, locale, options)];\n },\n F: function (date, locale, options) {\n return monthToStr(formats.n(date, locale, options) - 1, false, locale);\n },\n G: function (date, locale, options) {\n return pad(formats.h(date, locale, options));\n },\n H: function (date) { return pad(date.getHours()); },\n J: function (date, locale) {\n return locale.ordinal !== undefined\n ? date.getDate() + locale.ordinal(date.getDate())\n : date.getDate();\n },\n K: function (date, locale) { return locale.amPM[int(date.getHours() > 11)]; },\n M: function (date, locale) {\n return monthToStr(date.getMonth(), true, locale);\n },\n S: function (date) { return pad(date.getSeconds()); },\n U: function (date) { return date.getTime() / 1000; },\n W: function (date, _, options) {\n return options.getWeek(date);\n },\n Y: function (date) { return pad(date.getFullYear(), 4); },\n d: function (date) { return pad(date.getDate()); },\n h: function (date) { return (date.getHours() % 12 ? date.getHours() % 12 : 12); },\n i: function (date) { return pad(date.getMinutes()); },\n j: function (date) { return date.getDate(); },\n l: function (date, locale) {\n return locale.weekdays.longhand[date.getDay()];\n },\n m: function (date) { return pad(date.getMonth() + 1); },\n n: function (date) { return date.getMonth() + 1; },\n s: function (date) { return date.getSeconds(); },\n u: function (date) { return date.getTime(); },\n w: function (date) { return date.getDay(); },\n y: function (date) { return String(date.getFullYear()).substring(2); },\n};\n","import { tokenRegex, revFormat, formats, } from \"./formatting\";\nimport { defaults } from \"../types/options\";\nimport { english } from \"../l10n/default\";\nexport var createDateFormatter = function (_a) {\n var _b = _a.config, config = _b === void 0 ? defaults : _b, _c = _a.l10n, l10n = _c === void 0 ? english : _c, _d = _a.isMobile, isMobile = _d === void 0 ? false : _d;\n return function (dateObj, frmt, overrideLocale) {\n var locale = overrideLocale || l10n;\n if (config.formatDate !== undefined && !isMobile) {\n return config.formatDate(dateObj, frmt, locale);\n }\n return frmt\n .split(\"\")\n .map(function (c, i, arr) {\n return formats[c] && arr[i - 1] !== \"\\\\\"\n ? formats[c](dateObj, locale, config)\n : c !== \"\\\\\"\n ? c\n : \"\";\n })\n .join(\"\");\n };\n};\nexport var createDateParser = function (_a) {\n var _b = _a.config, config = _b === void 0 ? defaults : _b, _c = _a.l10n, l10n = _c === void 0 ? english : _c;\n return function (date, givenFormat, timeless, customLocale) {\n if (date !== 0 && !date)\n return undefined;\n var locale = customLocale || l10n;\n var parsedDate;\n var dateOrig = date;\n if (date instanceof Date)\n parsedDate = new Date(date.getTime());\n else if (typeof date !== \"string\" &&\n date.toFixed !== undefined)\n parsedDate = new Date(date);\n else if (typeof date === \"string\") {\n var format = givenFormat || (config || defaults).dateFormat;\n var datestr = String(date).trim();\n if (datestr === \"today\") {\n parsedDate = new Date();\n timeless = true;\n }\n else if (config && config.parseDate) {\n parsedDate = config.parseDate(date, format);\n }\n else if (/Z$/.test(datestr) ||\n /GMT$/.test(datestr)) {\n parsedDate = new Date(date);\n }\n else {\n var matched = void 0, ops = [];\n for (var i = 0, matchIndex = 0, regexStr = \"\"; i < format.length; i++) {\n var token = format[i];\n var isBackSlash = token === \"\\\\\";\n var escaped = format[i - 1] === \"\\\\\" || isBackSlash;\n if (tokenRegex[token] && !escaped) {\n regexStr += tokenRegex[token];\n var match = new RegExp(regexStr).exec(date);\n if (match && (matched = true)) {\n ops[token !== \"Y\" ? \"push\" : \"unshift\"]({\n fn: revFormat[token],\n val: match[++matchIndex],\n });\n }\n }\n else if (!isBackSlash)\n regexStr += \".\";\n }\n parsedDate =\n !config || !config.noCalendar\n ? new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0)\n : new Date(new Date().setHours(0, 0, 0, 0));\n ops.forEach(function (_a) {\n var fn = _a.fn, val = _a.val;\n return (parsedDate = fn(parsedDate, val, locale) || parsedDate);\n });\n parsedDate = matched ? parsedDate : undefined;\n }\n }\n if (!(parsedDate instanceof Date && !isNaN(parsedDate.getTime()))) {\n config.errorHandler(new Error(\"Invalid date provided: \" + dateOrig));\n return undefined;\n }\n if (timeless === true)\n parsedDate.setHours(0, 0, 0, 0);\n return parsedDate;\n };\n};\nexport function compareDates(date1, date2, timeless) {\n if (timeless === void 0) { timeless = true; }\n if (timeless !== false) {\n return (new Date(date1.getTime()).setHours(0, 0, 0, 0) -\n new Date(date2.getTime()).setHours(0, 0, 0, 0));\n }\n return date1.getTime() - date2.getTime();\n}\nexport function compareTimes(date1, date2) {\n return (3600 * (date1.getHours() - date2.getHours()) +\n 60 * (date1.getMinutes() - date2.getMinutes()) +\n date1.getSeconds() -\n date2.getSeconds());\n}\nexport var isBetween = function (ts, ts1, ts2) {\n return ts > Math.min(ts1, ts2) && ts < Math.max(ts1, ts2);\n};\nexport var calculateSecondsSinceMidnight = function (hours, minutes, seconds) {\n return hours * 3600 + minutes * 60 + seconds;\n};\nexport var parseSeconds = function (secondsSinceMidnight) {\n var hours = Math.floor(secondsSinceMidnight / 3600), minutes = (secondsSinceMidnight - hours * 3600) / 60;\n return [hours, minutes, secondsSinceMidnight - hours * 3600 - minutes * 60];\n};\nexport var duration = {\n DAY: 86400000,\n};\nexport function getDefaultHours(config) {\n var hours = config.defaultHour;\n var minutes = config.defaultMinute;\n var seconds = config.defaultSeconds;\n if (config.minDate !== undefined) {\n var minHour = config.minDate.getHours();\n var minMinutes = config.minDate.getMinutes();\n var minSeconds = config.minDate.getSeconds();\n if (hours < minHour) {\n hours = minHour;\n }\n if (hours === minHour && minutes < minMinutes) {\n minutes = minMinutes;\n }\n if (hours === minHour && minutes === minMinutes && seconds < minSeconds)\n seconds = config.minDate.getSeconds();\n }\n if (config.maxDate !== undefined) {\n var maxHr = config.maxDate.getHours();\n var maxMinutes = config.maxDate.getMinutes();\n hours = Math.min(hours, maxHr);\n if (hours === maxHr)\n minutes = Math.min(maxMinutes, minutes);\n if (hours === maxHr && minutes === maxMinutes)\n seconds = config.maxDate.getSeconds();\n }\n return { hours: hours, minutes: minutes, seconds: seconds };\n}\n","\"use strict\";\nif (typeof Object.assign !== \"function\") {\n Object.assign = function (target) {\n var args = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n args[_i - 1] = arguments[_i];\n }\n if (!target) {\n throw TypeError(\"Cannot convert undefined or null to object\");\n }\n var _loop_1 = function (source) {\n if (source) {\n Object.keys(source).forEach(function (key) { return (target[key] = source[key]); });\n }\n };\n for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {\n var source = args_1[_a];\n _loop_1(source);\n }\n return target;\n };\n}\n","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArrays = (this && this.__spreadArrays) || function () {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n};\nimport { defaults as defaultOptions, HOOKS, } from \"./types/options\";\nimport English from \"./l10n/default\";\nimport { arrayify, debounce, int, pad } from \"./utils\";\nimport { clearNode, createElement, createNumberInput, findParent, toggleClass, getEventTarget, } from \"./utils/dom\";\nimport { compareDates, createDateParser, createDateFormatter, duration, isBetween, getDefaultHours, calculateSecondsSinceMidnight, parseSeconds, } from \"./utils/dates\";\nimport { tokenRegex, monthToStr } from \"./utils/formatting\";\nimport \"./utils/polyfills\";\nvar DEBOUNCED_CHANGE_MS = 300;\nfunction FlatpickrInstance(element, instanceConfig) {\n var self = {\n config: __assign(__assign({}, defaultOptions), flatpickr.defaultConfig),\n l10n: English,\n };\n self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });\n self._handlers = [];\n self.pluginElements = [];\n self.loadedPlugins = [];\n self._bind = bind;\n self._setHoursFromDate = setHoursFromDate;\n self._positionCalendar = positionCalendar;\n self.changeMonth = changeMonth;\n self.changeYear = changeYear;\n self.clear = clear;\n self.close = close;\n self.onMouseOver = onMouseOver;\n self._createElement = createElement;\n self.createDay = createDay;\n self.destroy = destroy;\n self.isEnabled = isEnabled;\n self.jumpToDate = jumpToDate;\n self.updateValue = updateValue;\n self.open = open;\n self.redraw = redraw;\n self.set = set;\n self.setDate = setDate;\n self.toggle = toggle;\n function setupHelperFunctions() {\n self.utils = {\n getDaysInMonth: function (month, yr) {\n if (month === void 0) { month = self.currentMonth; }\n if (yr === void 0) { yr = self.currentYear; }\n if (month === 1 && ((yr % 4 === 0 && yr % 100 !== 0) || yr % 400 === 0))\n return 29;\n return self.l10n.daysInMonth[month];\n },\n };\n }\n function init() {\n self.element = self.input = element;\n self.isOpen = false;\n parseConfig();\n setupLocale();\n setupInputs();\n setupDates();\n setupHelperFunctions();\n if (!self.isMobile)\n build();\n bindEvents();\n if (self.selectedDates.length || self.config.noCalendar) {\n if (self.config.enableTime) {\n setHoursFromDate(self.config.noCalendar ? self.latestSelectedDateObj : undefined);\n }\n updateValue(false);\n }\n setCalendarWidth();\n var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);\n if (!self.isMobile && isSafari) {\n positionCalendar();\n }\n triggerEvent(\"onReady\");\n }\n function getClosestActiveElement() {\n var _a;\n return (((_a = self.calendarContainer) === null || _a === void 0 ? void 0 : _a.getRootNode())\n .activeElement || document.activeElement);\n }\n function bindToInstance(fn) {\n return fn.bind(self);\n }\n function setCalendarWidth() {\n var config = self.config;\n if (config.weekNumbers === false && config.showMonths === 1) {\n return;\n }\n else if (config.noCalendar !== true) {\n window.requestAnimationFrame(function () {\n if (self.calendarContainer !== undefined) {\n self.calendarContainer.style.visibility = \"hidden\";\n self.calendarContainer.style.display = \"block\";\n }\n if (self.daysContainer !== undefined) {\n var daysWidth = (self.days.offsetWidth + 1) * config.showMonths;\n self.daysContainer.style.width = daysWidth + \"px\";\n self.calendarContainer.style.width =\n daysWidth +\n (self.weekWrapper !== undefined\n ? self.weekWrapper.offsetWidth\n : 0) +\n \"px\";\n self.calendarContainer.style.removeProperty(\"visibility\");\n self.calendarContainer.style.removeProperty(\"display\");\n }\n });\n }\n }\n function updateTime(e) {\n if (self.selectedDates.length === 0) {\n var defaultDate = self.config.minDate === undefined ||\n compareDates(new Date(), self.config.minDate) >= 0\n ? new Date()\n : new Date(self.config.minDate.getTime());\n var defaults = getDefaultHours(self.config);\n defaultDate.setHours(defaults.hours, defaults.minutes, defaults.seconds, defaultDate.getMilliseconds());\n self.selectedDates = [defaultDate];\n self.latestSelectedDateObj = defaultDate;\n }\n if (e !== undefined && e.type !== \"blur\") {\n timeWrapper(e);\n }\n var prevValue = self._input.value;\n setHoursFromInputs();\n updateValue();\n if (self._input.value !== prevValue) {\n self._debouncedChange();\n }\n }\n function ampm2military(hour, amPM) {\n return (hour % 12) + 12 * int(amPM === self.l10n.amPM[1]);\n }\n function military2ampm(hour) {\n switch (hour % 24) {\n case 0:\n case 12:\n return 12;\n default:\n return hour % 12;\n }\n }\n function setHoursFromInputs() {\n if (self.hourElement === undefined || self.minuteElement === undefined)\n return;\n var hours = (parseInt(self.hourElement.value.slice(-2), 10) || 0) % 24, minutes = (parseInt(self.minuteElement.value, 10) || 0) % 60, seconds = self.secondElement !== undefined\n ? (parseInt(self.secondElement.value, 10) || 0) % 60\n : 0;\n if (self.amPM !== undefined) {\n hours = ampm2military(hours, self.amPM.textContent);\n }\n var limitMinHours = self.config.minTime !== undefined ||\n (self.config.minDate &&\n self.minDateHasTime &&\n self.latestSelectedDateObj &&\n compareDates(self.latestSelectedDateObj, self.config.minDate, true) ===\n 0);\n var limitMaxHours = self.config.maxTime !== undefined ||\n (self.config.maxDate &&\n self.maxDateHasTime &&\n self.latestSelectedDateObj &&\n compareDates(self.latestSelectedDateObj, self.config.maxDate, true) ===\n 0);\n if (self.config.maxTime !== undefined &&\n self.config.minTime !== undefined &&\n self.config.minTime > self.config.maxTime) {\n var minBound = calculateSecondsSinceMidnight(self.config.minTime.getHours(), self.config.minTime.getMinutes(), self.config.minTime.getSeconds());\n var maxBound = calculateSecondsSinceMidnight(self.config.maxTime.getHours(), self.config.maxTime.getMinutes(), self.config.maxTime.getSeconds());\n var currentTime = calculateSecondsSinceMidnight(hours, minutes, seconds);\n if (currentTime > maxBound && currentTime < minBound) {\n var result = parseSeconds(minBound);\n hours = result[0];\n minutes = result[1];\n seconds = result[2];\n }\n }\n else {\n if (limitMaxHours) {\n var maxTime = self.config.maxTime !== undefined\n ? self.config.maxTime\n : self.config.maxDate;\n hours = Math.min(hours, maxTime.getHours());\n if (hours === maxTime.getHours())\n minutes = Math.min(minutes, maxTime.getMinutes());\n if (minutes === maxTime.getMinutes())\n seconds = Math.min(seconds, maxTime.getSeconds());\n }\n if (limitMinHours) {\n var minTime = self.config.minTime !== undefined\n ? self.config.minTime\n : self.config.minDate;\n hours = Math.max(hours, minTime.getHours());\n if (hours === minTime.getHours() && minutes < minTime.getMinutes())\n minutes = minTime.getMinutes();\n if (minutes === minTime.getMinutes())\n seconds = Math.max(seconds, minTime.getSeconds());\n }\n }\n setHours(hours, minutes, seconds);\n }\n function setHoursFromDate(dateObj) {\n var date = dateObj || self.latestSelectedDateObj;\n if (date && date instanceof Date) {\n setHours(date.getHours(), date.getMinutes(), date.getSeconds());\n }\n }\n function setHours(hours, minutes, seconds) {\n if (self.latestSelectedDateObj !== undefined) {\n self.latestSelectedDateObj.setHours(hours % 24, minutes, seconds || 0, 0);\n }\n if (!self.hourElement || !self.minuteElement || self.isMobile)\n return;\n self.hourElement.value = pad(!self.config.time_24hr\n ? ((12 + hours) % 12) + 12 * int(hours % 12 === 0)\n : hours);\n self.minuteElement.value = pad(minutes);\n if (self.amPM !== undefined)\n self.amPM.textContent = self.l10n.amPM[int(hours >= 12)];\n if (self.secondElement !== undefined)\n self.secondElement.value = pad(seconds);\n }\n function onYearInput(event) {\n var eventTarget = getEventTarget(event);\n var year = parseInt(eventTarget.value) + (event.delta || 0);\n if (year / 1000 > 1 ||\n (event.key === \"Enter\" && !/[^\\d]/.test(year.toString()))) {\n changeYear(year);\n }\n }\n function bind(element, event, handler, options) {\n if (event instanceof Array)\n return event.forEach(function (ev) { return bind(element, ev, handler, options); });\n if (element instanceof Array)\n return element.forEach(function (el) { return bind(el, event, handler, options); });\n element.addEventListener(event, handler, options);\n self._handlers.push({\n remove: function () { return element.removeEventListener(event, handler, options); },\n });\n }\n function triggerChange() {\n triggerEvent(\"onChange\");\n }\n function bindEvents() {\n if (self.config.wrap) {\n [\"open\", \"close\", \"toggle\", \"clear\"].forEach(function (evt) {\n Array.prototype.forEach.call(self.element.querySelectorAll(\"[data-\" + evt + \"]\"), function (el) {\n return bind(el, \"click\", self[evt]);\n });\n });\n }\n if (self.isMobile) {\n setupMobile();\n return;\n }\n var debouncedResize = debounce(onResize, 50);\n self._debouncedChange = debounce(triggerChange, DEBOUNCED_CHANGE_MS);\n if (self.daysContainer && !/iPhone|iPad|iPod/i.test(navigator.userAgent))\n bind(self.daysContainer, \"mouseover\", function (e) {\n if (self.config.mode === \"range\")\n onMouseOver(getEventTarget(e));\n });\n bind(self._input, \"keydown\", onKeyDown);\n if (self.calendarContainer !== undefined) {\n bind(self.calendarContainer, \"keydown\", onKeyDown);\n }\n if (!self.config.inline && !self.config.static)\n bind(window, \"resize\", debouncedResize);\n if (window.ontouchstart !== undefined)\n bind(window.document, \"touchstart\", documentClick);\n else\n bind(window.document, \"mousedown\", documentClick);\n bind(window.document, \"focus\", documentClick, { capture: true });\n if (self.config.clickOpens === true) {\n bind(self._input, \"focus\", self.open);\n bind(self._input, \"click\", self.open);\n }\n if (self.daysContainer !== undefined) {\n bind(self.monthNav, \"click\", onMonthNavClick);\n bind(self.monthNav, [\"keyup\", \"increment\"], onYearInput);\n bind(self.daysContainer, \"click\", selectDate);\n }\n if (self.timeContainer !== undefined &&\n self.minuteElement !== undefined &&\n self.hourElement !== undefined) {\n var selText = function (e) {\n return getEventTarget(e).select();\n };\n bind(self.timeContainer, [\"increment\"], updateTime);\n bind(self.timeContainer, \"blur\", updateTime, { capture: true });\n bind(self.timeContainer, \"click\", timeIncrement);\n bind([self.hourElement, self.minuteElement], [\"focus\", \"click\"], selText);\n if (self.secondElement !== undefined)\n bind(self.secondElement, \"focus\", function () { return self.secondElement && self.secondElement.select(); });\n if (self.amPM !== undefined) {\n bind(self.amPM, \"click\", function (e) {\n updateTime(e);\n });\n }\n }\n if (self.config.allowInput) {\n bind(self._input, \"blur\", onBlur);\n }\n }\n function jumpToDate(jumpDate, triggerChange) {\n var jumpTo = jumpDate !== undefined\n ? self.parseDate(jumpDate)\n : self.latestSelectedDateObj ||\n (self.config.minDate && self.config.minDate > self.now\n ? self.config.minDate\n : self.config.maxDate && self.config.maxDate < self.now\n ? self.config.maxDate\n : self.now);\n var oldYear = self.currentYear;\n var oldMonth = self.currentMonth;\n try {\n if (jumpTo !== undefined) {\n self.currentYear = jumpTo.getFullYear();\n self.currentMonth = jumpTo.getMonth();\n }\n }\n catch (e) {\n e.message = \"Invalid date supplied: \" + jumpTo;\n self.config.errorHandler(e);\n }\n if (triggerChange && self.currentYear !== oldYear) {\n triggerEvent(\"onYearChange\");\n buildMonthSwitch();\n }\n if (triggerChange &&\n (self.currentYear !== oldYear || self.currentMonth !== oldMonth)) {\n triggerEvent(\"onMonthChange\");\n }\n self.redraw();\n }\n function timeIncrement(e) {\n var eventTarget = getEventTarget(e);\n if (~eventTarget.className.indexOf(\"arrow\"))\n incrementNumInput(e, eventTarget.classList.contains(\"arrowUp\") ? 1 : -1);\n }\n function incrementNumInput(e, delta, inputElem) {\n var target = e && getEventTarget(e);\n var input = inputElem ||\n (target && target.parentNode && target.parentNode.firstChild);\n var event = createEvent(\"increment\");\n event.delta = delta;\n input && input.dispatchEvent(event);\n }\n function build() {\n var fragment = window.document.createDocumentFragment();\n self.calendarContainer = createElement(\"div\", \"flatpickr-calendar\");\n self.calendarContainer.tabIndex = -1;\n if (!self.config.noCalendar) {\n fragment.appendChild(buildMonthNav());\n self.innerContainer = createElement(\"div\", \"flatpickr-innerContainer\");\n if (self.config.weekNumbers) {\n var _a = buildWeeks(), weekWrapper = _a.weekWrapper, weekNumbers = _a.weekNumbers;\n self.innerContainer.appendChild(weekWrapper);\n self.weekNumbers = weekNumbers;\n self.weekWrapper = weekWrapper;\n }\n self.rContainer = createElement(\"div\", \"flatpickr-rContainer\");\n self.rContainer.appendChild(buildWeekdays());\n if (!self.daysContainer) {\n self.daysContainer = createElement(\"div\", \"flatpickr-days\");\n self.daysContainer.tabIndex = -1;\n }\n buildDays();\n self.rContainer.appendChild(self.daysContainer);\n self.innerContainer.appendChild(self.rContainer);\n fragment.appendChild(self.innerContainer);\n }\n if (self.config.enableTime) {\n fragment.appendChild(buildTime());\n }\n toggleClass(self.calendarContainer, \"rangeMode\", self.config.mode === \"range\");\n toggleClass(self.calendarContainer, \"animate\", self.config.animate === true);\n toggleClass(self.calendarContainer, \"multiMonth\", self.config.showMonths > 1);\n self.calendarContainer.appendChild(fragment);\n var customAppend = self.config.appendTo !== undefined &&\n self.config.appendTo.nodeType !== undefined;\n if (self.config.inline || self.config.static) {\n self.calendarContainer.classList.add(self.config.inline ? \"inline\" : \"static\");\n if (self.config.inline) {\n if (!customAppend && self.element.parentNode)\n self.element.parentNode.insertBefore(self.calendarContainer, self._input.nextSibling);\n else if (self.config.appendTo !== undefined)\n self.config.appendTo.appendChild(self.calendarContainer);\n }\n if (self.config.static) {\n var wrapper = createElement(\"div\", \"flatpickr-wrapper\");\n if (self.element.parentNode)\n self.element.parentNode.insertBefore(wrapper, self.element);\n wrapper.appendChild(self.element);\n if (self.altInput)\n wrapper.appendChild(self.altInput);\n wrapper.appendChild(self.calendarContainer);\n }\n }\n if (!self.config.static && !self.config.inline)\n (self.config.appendTo !== undefined\n ? self.config.appendTo\n : window.document.body).appendChild(self.calendarContainer);\n }\n function createDay(className, date, _dayNumber, i) {\n var dateIsEnabled = isEnabled(date, true), dayElement = createElement(\"span\", className, date.getDate().toString());\n dayElement.dateObj = date;\n dayElement.$i = i;\n dayElement.setAttribute(\"aria-label\", self.formatDate(date, self.config.ariaDateFormat));\n if (className.indexOf(\"hidden\") === -1 &&\n compareDates(date, self.now) === 0) {\n self.todayDateElem = dayElement;\n dayElement.classList.add(\"today\");\n dayElement.setAttribute(\"aria-current\", \"date\");\n }\n if (dateIsEnabled) {\n dayElement.tabIndex = -1;\n if (isDateSelected(date)) {\n dayElement.classList.add(\"selected\");\n self.selectedDateElem = dayElement;\n if (self.config.mode === \"range\") {\n toggleClass(dayElement, \"startRange\", self.selectedDates[0] &&\n compareDates(date, self.selectedDates[0], true) === 0);\n toggleClass(dayElement, \"endRange\", self.selectedDates[1] &&\n compareDates(date, self.selectedDates[1], true) === 0);\n if (className === \"nextMonthDay\")\n dayElement.classList.add(\"inRange\");\n }\n }\n }\n else {\n dayElement.classList.add(\"flatpickr-disabled\");\n }\n if (self.config.mode === \"range\") {\n if (isDateInRange(date) && !isDateSelected(date))\n dayElement.classList.add(\"inRange\");\n }\n if (self.weekNumbers &&\n self.config.showMonths === 1 &&\n className !== \"prevMonthDay\" &&\n i % 7 === 6) {\n self.weekNumbers.insertAdjacentHTML(\"beforeend\", \"<span class='flatpickr-day'>\" + self.config.getWeek(date) + \"</span>\");\n }\n triggerEvent(\"onDayCreate\", dayElement);\n return dayElement;\n }\n function focusOnDayElem(targetNode) {\n targetNode.focus();\n if (self.config.mode === \"range\")\n onMouseOver(targetNode);\n }\n function getFirstAvailableDay(delta) {\n var startMonth = delta > 0 ? 0 : self.config.showMonths - 1;\n var endMonth = delta > 0 ? self.config.showMonths : -1;\n for (var m = startMonth; m != endMonth; m += delta) {\n var month = self.daysContainer.children[m];\n var startIndex = delta > 0 ? 0 : month.children.length - 1;\n var endIndex = delta > 0 ? month.children.length : -1;\n for (var i = startIndex; i != endIndex; i += delta) {\n var c = month.children[i];\n if (c.className.indexOf(\"hidden\") === -1 && isEnabled(c.dateObj))\n return c;\n }\n }\n return undefined;\n }\n function getNextAvailableDay(current, delta) {\n var givenMonth = current.className.indexOf(\"Month\") === -1\n ? current.dateObj.getMonth()\n : self.currentMonth;\n var endMonth = delta > 0 ? self.config.showMonths : -1;\n var loopDelta = delta > 0 ? 1 : -1;\n for (var m = givenMonth - self.currentMonth; m != endMonth; m += loopDelta) {\n var month = self.daysContainer.children[m];\n var startIndex = givenMonth - self.currentMonth === m\n ? current.$i + delta\n : delta < 0\n ? month.children.length - 1\n : 0;\n var numMonthDays = month.children.length;\n for (var i = startIndex; i >= 0 && i < numMonthDays && i != (delta > 0 ? numMonthDays : -1); i += loopDelta) {\n var c = month.children[i];\n if (c.className.indexOf(\"hidden\") === -1 &&\n isEnabled(c.dateObj) &&\n Math.abs(current.$i - i) >= Math.abs(delta))\n return focusOnDayElem(c);\n }\n }\n self.changeMonth(loopDelta);\n focusOnDay(getFirstAvailableDay(loopDelta), 0);\n return undefined;\n }\n function focusOnDay(current, offset) {\n var activeElement = getClosestActiveElement();\n var dayFocused = isInView(activeElement || document.body);\n var startElem = current !== undefined\n ? current\n : dayFocused\n ? activeElement\n : self.selectedDateElem !== undefined && isInView(self.selectedDateElem)\n ? self.selectedDateElem\n : self.todayDateElem !== undefined && isInView(self.todayDateElem)\n ? self.todayDateElem\n : getFirstAvailableDay(offset > 0 ? 1 : -1);\n if (startElem === undefined) {\n self._input.focus();\n }\n else if (!dayFocused) {\n focusOnDayElem(startElem);\n }\n else {\n getNextAvailableDay(startElem, offset);\n }\n }\n function buildMonthDays(year, month) {\n var firstOfMonth = (new Date(year, month, 1).getDay() - self.l10n.firstDayOfWeek + 7) % 7;\n var prevMonthDays = self.utils.getDaysInMonth((month - 1 + 12) % 12, year);\n var daysInMonth = self.utils.getDaysInMonth(month, year), days = window.document.createDocumentFragment(), isMultiMonth = self.config.showMonths > 1, prevMonthDayClass = isMultiMonth ? \"prevMonthDay hidden\" : \"prevMonthDay\", nextMonthDayClass = isMultiMonth ? \"nextMonthDay hidden\" : \"nextMonthDay\";\n var dayNumber = prevMonthDays + 1 - firstOfMonth, dayIndex = 0;\n for (; dayNumber <= prevMonthDays; dayNumber++, dayIndex++) {\n days.appendChild(createDay(\"flatpickr-day \" + prevMonthDayClass, new Date(year, month - 1, dayNumber), dayNumber, dayIndex));\n }\n for (dayNumber = 1; dayNumber <= daysInMonth; dayNumber++, dayIndex++) {\n days.appendChild(createDay(\"flatpickr-day\", new Date(year, month, dayNumber), dayNumber, dayIndex));\n }\n for (var dayNum = daysInMonth + 1; dayNum <= 42 - firstOfMonth &&\n (self.config.showMonths === 1 || dayIndex % 7 !== 0); dayNum++, dayIndex++) {\n days.appendChild(createDay(\"flatpickr-day \" + nextMonthDayClass, new Date(year, month + 1, dayNum % daysInMonth), dayNum, dayIndex));\n }\n var dayContainer = createElement(\"div\", \"dayContainer\");\n dayContainer.appendChild(days);\n return dayContainer;\n }\n function buildDays() {\n if (self.daysContainer === undefined) {\n return;\n }\n clearNode(self.daysContainer);\n if (self.weekNumbers)\n clearNode(self.weekNumbers);\n var frag = document.createDocumentFragment();\n for (var i = 0; i < self.config.showMonths; i++) {\n var d = new Date(self.currentYear, self.currentMonth, 1);\n d.setMonth(self.currentMonth + i);\n frag.appendChild(buildMonthDays(d.getFullYear(), d.getMonth()));\n }\n self.daysContainer.appendChild(frag);\n self.days = self.daysContainer.firstChild;\n if (self.config.mode === \"range\" && self.selectedDates.length === 1) {\n onMouseOver();\n }\n }\n function buildMonthSwitch() {\n if (self.config.showMonths > 1 ||\n self.config.monthSelectorType !== \"dropdown\")\n return;\n var shouldBuildMonth = function (month) {\n if (self.config.minDate !== undefined &&\n self.currentYear === self.config.minDate.getFullYear() &&\n month < self.config.minDate.getMonth()) {\n return false;\n }\n return !(self.config.maxDate !== undefined &&\n self.currentYear === self.config.maxDate.getFullYear() &&\n month > self.config.maxDate.getMonth());\n };\n self.monthsDropdownContainer.tabIndex = -1;\n self.monthsDropdownContainer.innerHTML = \"\";\n for (var i = 0; i < 12; i++) {\n if (!shouldBuildMonth(i))\n continue;\n var month = createElement(\"option\", \"flatpickr-monthDropdown-month\");\n month.value = new Date(self.currentYear, i).getMonth().toString();\n month.textContent = monthToStr(i, self.config.shorthandCurrentMonth, self.l10n);\n month.tabIndex = -1;\n if (self.currentMonth === i) {\n month.selected = true;\n }\n self.monthsDropdownContainer.appendChild(month);\n }\n }\n function buildMonth() {\n var container = createElement(\"div\", \"flatpickr-month\");\n var monthNavFragment = window.document.createDocumentFragment();\n var monthElement;\n if (self.config.showMonths > 1 ||\n self.config.monthSelectorType === \"static\") {\n monthElement = createElement(\"span\", \"cur-month\");\n }\n else {\n self.monthsDropdownContainer = createElement(\"select\", \"flatpickr-monthDropdown-months\");\n self.monthsDropdownContainer.setAttribute(\"aria-label\", self.l10n.monthAriaLabel);\n bind(self.monthsDropdownContainer, \"change\", function (e) {\n var target = getEventTarget(e);\n var selectedMonth = parseInt(target.value, 10);\n self.changeMonth(selectedMonth - self.currentMonth);\n triggerEvent(\"onMonthChange\");\n });\n buildMonthSwitch();\n monthElement = self.monthsDropdownContainer;\n }\n var yearInput = createNumberInput(\"cur-year\", { tabindex: \"-1\" });\n var yearElement = yearInput.getElementsByTagName(\"input\")[0];\n yearElement.setAttribute(\"aria-label\", self.l10n.yearAriaLabel);\n if (self.config.minDate) {\n yearElement.setAttribute(\"min\", self.config.minDate.getFullYear().toString());\n }\n if (self.config.maxDate) {\n yearElement.setAttribute(\"max\", self.config.maxDate.getFullYear().toString());\n yearElement.disabled =\n !!self.config.minDate &&\n self.config.minDate.getFullYear() === self.config.maxDate.getFullYear();\n }\n var currentMonth = createElement(\"div\", \"flatpickr-current-month\");\n currentMonth.appendChild(monthElement);\n currentMonth.appendChild(yearInput);\n monthNavFragment.appendChild(currentMonth);\n container.appendChild(monthNavFragment);\n return {\n container: container,\n yearElement: yearElement,\n monthElement: monthElement,\n };\n }\n function buildMonths() {\n clearNode(self.monthNav);\n self.monthNav.appendChild(self.prevMonthNav);\n if (self.config.showMonths) {\n self.yearElements = [];\n self.monthElements = [];\n }\n for (var m = self.config.showMonths; m--;) {\n var month = buildMonth();\n self.yearElements.push(month.yearElement);\n self.monthElements.push(month.monthElement);\n self.monthNav.appendChild(month.container);\n }\n self.monthNav.appendChild(self.nextMonthNav);\n }\n function buildMonthNav() {\n self.monthNav = createElement(\"div\", \"flatpickr-months\");\n self.yearElements = [];\n self.monthElements = [];\n self.prevMonthNav = createElement(\"span\", \"flatpickr-prev-month\");\n self.prevMonthNav.innerHTML = self.config.prevArrow;\n self.nextMonthNav = createElement(\"span\", \"flatpickr-next-month\");\n self.nextMonthNav.innerHTML = self.config.nextArrow;\n buildMonths();\n Object.defineProperty(self, \"_hidePrevMonthArrow\", {\n get: function () { return self.__hidePrevMonthArrow; },\n set: function (bool) {\n if (self.__hidePrevMonthArrow !== bool) {\n toggleClass(self.prevMonthNav, \"flatpickr-disabled\", bool);\n self.__hidePrevMonthArrow = bool;\n }\n },\n });\n Object.defineProperty(self, \"_hideNextMonthArrow\", {\n get: function () { return self.__hideNextMonthArrow; },\n set: function (bool) {\n if (self.__hideNextMonthArrow !== bool) {\n toggleClass(self.nextMonthNav, \"flatpickr-disabled\", bool);\n self.__hideNextMonthArrow = bool;\n }\n },\n });\n self.currentYearElement = self.yearElements[0];\n updateNavigationCurrentMonth();\n return self.monthNav;\n }\n function buildTime() {\n self.calendarContainer.classList.add(\"hasTime\");\n if (self.config.noCalendar)\n self.calendarContainer.classList.add(\"noCalendar\");\n var defaults = getDefaultHours(self.config);\n self.timeContainer = createElement(\"div\", \"flatpickr-time\");\n self.timeContainer.tabIndex = -1;\n var separator = createElement(\"span\", \"flatpickr-time-separator\", \":\");\n var hourInput = createNumberInput(\"flatpickr-hour\", {\n \"aria-label\": self.l10n.hourAriaLabel,\n });\n self.hourElement = hourInput.getElementsByTagName(\"input\")[0];\n var minuteInput = createNumberInput(\"flatpickr-minute\", {\n \"aria-label\": self.l10n.minuteAriaLabel,\n });\n self.minuteElement = minuteInput.getElementsByTagName(\"input\")[0];\n self.hourElement.tabIndex = self.minuteElement.tabIndex = -1;\n self.hourElement.value = pad(self.latestSelectedDateObj\n ? self.latestSelectedDateObj.getHours()\n : self.config.time_24hr\n ? defaults.hours\n : military2ampm(defaults.hours));\n self.minuteElement.value = pad(self.latestSelectedDateObj\n ? self.latestSelectedDateObj.getMinutes()\n : defaults.minutes);\n self.hourElement.setAttribute(\"step\", self.config.hourIncrement.toString());\n self.minuteElement.setAttribute(\"step\", self.config.minuteIncrement.toString());\n self.hourElement.setAttribute(\"min\", self.config.time_24hr ? \"0\" : \"1\");\n self.hourElement.setAttribute(\"max\", self.config.time_24hr ? \"23\" : \"12\");\n self.hourElement.setAttribute(\"maxlength\", \"2\");\n self.minuteElement.setAttribute(\"min\", \"0\");\n self.minuteElement.setAttribute(\"max\", \"59\");\n self.minuteElement.setAttribute(\"maxlength\", \"2\");\n self.timeContainer.appendChild(hourInput);\n self.timeContainer.appendChild(separator);\n self.timeContainer.appendChild(minuteInput);\n if (self.config.time_24hr)\n self.timeContainer.classList.add(\"time24hr\");\n if (self.config.enableSeconds) {\n self.timeContainer.classList.add(\"hasSeconds\");\n var secondInput = createNumberInput(\"flatpickr-second\");\n self.secondElement = secondInput.getElementsByTagName(\"input\")[0];\n self.secondElement.value = pad(self.latestSelectedDateObj\n ? self.latestSelectedDateObj.getSeconds()\n : defaults.seconds);\n self.secondElement.setAttribute(\"step\", self.minuteElement.getAttribute(\"step\"));\n self.secondElement.setAttribute(\"min\", \"0\");\n self.secondElement.setAttribute(\"max\", \"59\");\n self.secondElement.setAttribute(\"maxlength\", \"2\");\n self.timeContainer.appendChild(createElement(\"span\", \"flatpickr-time-separator\", \":\"));\n self.timeContainer.appendChild(secondInput);\n }\n if (!self.config.time_24hr) {\n self.amPM = createElement(\"span\", \"flatpickr-am-pm\", self.l10n.amPM[int((self.latestSelectedDateObj\n ? self.hourElement.value\n : self.config.defaultHour) > 11)]);\n self.amPM.title = self.l10n.toggleTitle;\n self.amPM.tabIndex = -1;\n self.timeContainer.appendChild(self.amPM);\n }\n return self.timeContainer;\n }\n function buildWeekdays() {\n if (!self.weekdayContainer)\n self.weekdayContainer = createElement(\"div\", \"flatpickr-weekdays\");\n else\n clearNode(self.weekdayContainer);\n for (var i = self.config.showMonths; i--;) {\n var container = createElement(\"div\", \"flatpickr-weekdaycontainer\");\n self.weekdayContainer.appendChild(container);\n }\n updateWeekdays();\n return self.weekdayContainer;\n }\n function updateWeekdays() {\n if (!self.weekdayContainer) {\n return;\n }\n var firstDayOfWeek = self.l10n.firstDayOfWeek;\n var weekdays = __spreadArrays(self.l10n.weekdays.shorthand);\n if (firstDayOfWeek > 0 && firstDayOfWeek < weekdays.length) {\n weekdays = __spreadArrays(weekdays.splice(firstDayOfWeek, weekdays.length), weekdays.splice(0, firstDayOfWeek));\n }\n for (var i = self.config.showMonths; i--;) {\n self.weekdayContainer.children[i].innerHTML = \"\\n <span class='flatpickr-weekday'>\\n \" + weekdays.join(\"</span><span class='flatpickr-weekday'>\") + \"\\n </span>\\n \";\n }\n }\n function buildWeeks() {\n self.calendarContainer.classList.add(\"hasWeeks\");\n var weekWrapper = createElement(\"div\", \"flatpickr-weekwrapper\");\n weekWrapper.appendChild(createElement(\"span\", \"flatpickr-weekday\", self.l10n.weekAbbreviation));\n var weekNumbers = createElement(\"div\", \"flatpickr-weeks\");\n weekWrapper.appendChild(weekNumbers);\n return {\n weekWrapper: weekWrapper,\n weekNumbers: weekNumbers,\n };\n }\n function changeMonth(value, isOffset) {\n if (isOffset === void 0) { isOffset = true; }\n var delta = isOffset ? value : value - self.currentMonth;\n if ((delta < 0 && self._hidePrevMonthArrow === true) ||\n (delta > 0 && self._hideNextMonthArrow === true))\n return;\n self.currentMonth += delta;\n if (self.currentMonth < 0 || self.currentMonth > 11) {\n self.currentYear += self.currentMonth > 11 ? 1 : -1;\n self.currentMonth = (self.currentMonth + 12) % 12;\n triggerEvent(\"onYearChange\");\n buildMonthSwitch();\n }\n buildDays();\n triggerEvent(\"onMonthChange\");\n updateNavigationCurrentMonth();\n }\n function clear(triggerChangeEvent, toInitial) {\n if (triggerChangeEvent === void 0) { triggerChangeEvent = true; }\n if (toInitial === void 0) { toInitial = true; }\n self.input.value = \"\";\n if (self.altInput !== undefined)\n self.altInput.value = \"\";\n if (self.mobileInput !== undefined)\n self.mobileInput.value = \"\";\n self.selectedDates = [];\n self.latestSelectedDateObj = undefined;\n if (toInitial === true) {\n self.currentYear = self._initialDate.getFullYear();\n self.currentMonth = self._initialDate.getMonth();\n }\n if (self.config.enableTime === true) {\n var _a = getDefaultHours(self.config), hours = _a.hours, minutes = _a.minutes, seconds = _a.seconds;\n setHours(hours, minutes, seconds);\n }\n self.redraw();\n if (triggerChangeEvent)\n triggerEvent(\"onChange\");\n }\n function close() {\n self.isOpen = false;\n if (!self.isMobile) {\n if (self.calendarContainer !== undefined) {\n self.calendarContainer.classList.remove(\"open\");\n }\n if (self._input !== undefined) {\n self._input.classList.remove(\"active\");\n }\n }\n triggerEvent(\"onClose\");\n }\n function destroy() {\n if (self.config !== undefined)\n triggerEvent(\"onDestroy\");\n for (var i = self._handlers.length; i--;) {\n self._handlers[i].remove();\n }\n self._handlers = [];\n if (self.mobileInput) {\n if (self.mobileInput.parentNode)\n self.mobileInput.parentNode.removeChild(self.mobileInput);\n self.mobileInput = undefined;\n }\n else if (self.calendarContainer && self.calendarContainer.parentNode) {\n if (self.config.static && self.calendarContainer.parentNode) {\n var wrapper = self.calendarContainer.parentNode;\n wrapper.lastChild && wrapper.removeChild(wrapper.lastChild);\n if (wrapper.parentNode) {\n while (wrapper.firstChild)\n wrapper.parentNode.insertBefore(wrapper.firstChild, wrapper);\n wrapper.parentNode.removeChild(wrapper);\n }\n }\n else\n self.calendarContainer.parentNode.removeChild(self.calendarContainer);\n }\n if (self.altInput) {\n self.input.type = \"text\";\n if (self.altInput.parentNode)\n self.altInput.parentNode.removeChild(self.altInput);\n delete self.altInput;\n }\n if (self.input) {\n self.input.type = self.input._type;\n self.input.classList.remove(\"flatpickr-input\");\n self.input.removeAttribute(\"readonly\");\n }\n [\n \"_showTimeInput\",\n \"latestSelectedDateObj\",\n \"_hideNextMonthArrow\",\n \"_hidePrevMonthArrow\",\n \"__hideNextMonthArrow\",\n \"__hidePrevMonthArrow\",\n \"isMobile\",\n \"isOpen\",\n \"selectedDateElem\",\n \"minDateHasTime\",\n \"maxDateHasTime\",\n \"days\",\n \"daysContainer\",\n \"_input\",\n \"_positionElement\",\n \"innerContainer\",\n \"rContainer\",\n \"monthNav\",\n \"todayDateElem\",\n \"calendarContainer\",\n \"weekdayContainer\",\n \"prevMonthNav\",\n \"nextMonthNav\",\n \"monthsDropdownContainer\",\n \"currentMonthElement\",\n \"currentYearElement\",\n \"navigationCurrentMonth\",\n \"selectedDateElem\",\n \"config\",\n ].forEach(function (k) {\n try {\n delete self[k];\n }\n catch (_) { }\n });\n }\n function isCalendarElem(elem) {\n return self.calendarContainer.contains(elem);\n }\n function documentClick(e) {\n if (self.isOpen && !self.config.inline) {\n var eventTarget_1 = getEventTarget(e);\n var isCalendarElement = isCalendarElem(eventTarget_1);\n var isInput = eventTarget_1 === self.input ||\n eventTarget_1 === self.altInput ||\n self.element.contains(eventTarget_1) ||\n (e.path &&\n e.path.indexOf &&\n (~e.path.indexOf(self.input) ||\n ~e.path.indexOf(self.altInput)));\n var lostFocus = !isInput &&\n !isCalendarElement &&\n !isCalendarElem(e.relatedTarget);\n var isIgnored = !self.config.ignoredFocusElements.some(function (elem) {\n return elem.contains(eventTarget_1);\n });\n if (lostFocus && isIgnored) {\n if (self.config.allowInput) {\n self.setDate(self._input.value, false, self.config.altInput\n ? self.config.altFormat\n : self.config.dateFormat);\n }\n if (self.timeContainer !== undefined &&\n self.minuteElement !== undefined &&\n self.hourElement !== undefined &&\n self.input.value !== \"\" &&\n self.input.value !== undefined) {\n updateTime();\n }\n self.close();\n if (self.config &&\n self.config.mode === \"range\" &&\n self.selectedDates.length === 1)\n self.clear(false);\n }\n }\n }\n function changeYear(newYear) {\n if (!newYear ||\n (self.config.minDate && newYear < self.config.minDate.getFullYear()) ||\n (self.config.maxDate && newYear > self.config.maxDate.getFullYear()))\n return;\n var newYearNum = newYear, isNewYear = self.currentYear !== newYearNum;\n self.currentYear = newYearNum || self.currentYear;\n if (self.config.maxDate &&\n self.currentYear === self.config.maxDate.getFullYear()) {\n self.currentMonth = Math.min(self.config.maxDate.getMonth(), self.currentMonth);\n }\n else if (self.config.minDate &&\n self.currentYear === self.config.minDate.getFullYear()) {\n self.currentMonth = Math.max(self.config.minDate.getMonth(), self.currentMonth);\n }\n if (isNewYear) {\n self.redraw();\n triggerEvent(\"onYearChange\");\n buildMonthSwitch();\n }\n }\n function isEnabled(date, timeless) {\n var _a;\n if (timeless === void 0) { timeless = true; }\n var dateToCheck = self.parseDate(date, undefined, timeless);\n if ((self.config.minDate &&\n dateToCheck &&\n compareDates(dateToCheck, self.config.minDate, timeless !== undefined ? timeless : !self.minDateHasTime) < 0) ||\n (self.config.maxDate &&\n dateToCheck &&\n compareDates(dateToCheck, self.config.maxDate, timeless !== undefined ? timeless : !self.maxDateHasTime) > 0))\n return false;\n if (!self.config.enable && self.config.disable.length === 0)\n return true;\n if (dateToCheck === undefined)\n return false;\n var bool = !!self.config.enable, array = (_a = self.config.enable) !== null && _a !== void 0 ? _a : self.config.disable;\n for (var i = 0, d = void 0; i < array.length; i++) {\n d = array[i];\n if (typeof d === \"function\" &&\n d(dateToCheck))\n return bool;\n else if (d instanceof Date &&\n dateToCheck !== undefined &&\n d.getTime() === dateToCheck.getTime())\n return bool;\n else if (typeof d === \"string\") {\n var parsed = self.parseDate(d, undefined, true);\n return parsed && parsed.getTime() === dateToCheck.getTime()\n ? bool\n : !bool;\n }\n else if (typeof d === \"object\" &&\n dateToCheck !== undefined &&\n d.from &&\n d.to &&\n dateToCheck.getTime() >= d.from.getTime() &&\n dateToCheck.getTime() <= d.to.getTime())\n return bool;\n }\n return !bool;\n }\n function isInView(elem) {\n if (self.daysContainer !== undefined)\n return (elem.className.indexOf(\"hidden\") === -1 &&\n elem.className.indexOf(\"flatpickr-disabled\") === -1 &&\n self.daysContainer.contains(elem));\n return false;\n }\n function onBlur(e) {\n var isInput = e.target === self._input;\n var valueChanged = self._input.value.trimEnd() !== getDateStr();\n if (isInput &&\n valueChanged &&\n !(e.relatedTarget && isCalendarElem(e.relatedTarget))) {\n self.setDate(self._input.value, true, e.target === self.altInput\n ? self.config.altFormat\n : self.config.dateFormat);\n }\n }\n function onKeyDown(e) {\n var eventTarget = getEventTarget(e);\n var isInput = self.config.wrap\n ? element.contains(eventTarget)\n : eventTarget === self._input;\n var allowInput = self.config.allowInput;\n var allowKeydown = self.isOpen && (!allowInput || !isInput);\n var allowInlineKeydown = self.config.inline && isInput && !allowInput;\n if (e.keyCode === 13 && isInput) {\n if (allowInput) {\n self.setDate(self._input.value, true, eventTarget === self.altInput\n ? self.config.altFormat\n : self.config.dateFormat);\n self.close();\n return eventTarget.blur();\n }\n else {\n self.open();\n }\n }\n else if (isCalendarElem(eventTarget) ||\n allowKeydown ||\n allowInlineKeydown) {\n var isTimeObj = !!self.timeContainer &&\n self.timeContainer.contains(eventTarget);\n switch (e.keyCode) {\n case 13:\n if (isTimeObj) {\n e.preventDefault();\n updateTime();\n focusAndClose();\n }\n else\n selectDate(e);\n break;\n case 27:\n e.preventDefault();\n focusAndClose();\n break;\n case 8:\n case 46:\n if (isInput && !self.config.allowInput) {\n e.preventDefault();\n self.clear();\n }\n break;\n case 37:\n case 39:\n if (!isTimeObj && !isInput) {\n e.preventDefault();\n var activeElement = getClosestActiveElement();\n if (self.daysContainer !== undefined &&\n (allowInput === false ||\n (activeElement && isInView(activeElement)))) {\n var delta_1 = e.keyCode === 39 ? 1 : -1;\n if (!e.ctrlKey)\n focusOnDay(undefined, delta_1);\n else {\n e.stopPropagation();\n changeMonth(delta_1);\n focusOnDay(getFirstAvailableDay(1), 0);\n }\n }\n }\n else if (self.hourElement)\n self.hourElement.focus();\n break;\n case 38:\n case 40:\n e.preventDefault();\n var delta = e.keyCode === 40 ? 1 : -1;\n if ((self.daysContainer &&\n eventTarget.$i !== undefined) ||\n eventTarget === self.input ||\n eventTarget === self.altInput) {\n if (e.ctrlKey) {\n e.stopPropagation();\n changeYear(self.currentYear - delta);\n focusOnDay(getFirstAvailableDay(1), 0);\n }\n else if (!isTimeObj)\n focusOnDay(undefined, delta * 7);\n }\n else if (eventTarget === self.currentYearElement) {\n changeYear(self.currentYear - delta);\n }\n else if (self.config.enableTime) {\n if (!isTimeObj && self.hourElement)\n self.hourElement.focus();\n updateTime(e);\n self._debouncedChange();\n }\n break;\n case 9:\n if (isTimeObj) {\n var elems = [\n self.hourElement,\n self.minuteElement,\n self.secondElement,\n self.amPM,\n ]\n .concat(self.pluginElements)\n .filter(function (x) { return x; });\n var i = elems.indexOf(eventTarget);\n if (i !== -1) {\n var target = elems[i + (e.shiftKey ? -1 : 1)];\n e.preventDefault();\n (target || self._input).focus();\n }\n }\n else if (!self.config.noCalendar &&\n self.daysContainer &&\n self.daysContainer.contains(eventTarget) &&\n e.shiftKey) {\n e.preventDefault();\n self._input.focus();\n }\n break;\n default:\n break;\n }\n }\n if (self.amPM !== undefined && eventTarget === self.amPM) {\n switch (e.key) {\n case self.l10n.amPM[0].charAt(0):\n case self.l10n.amPM[0].charAt(0).toLowerCase():\n self.amPM.textContent = self.l10n.amPM[0];\n setHoursFromInputs();\n updateValue();\n break;\n case self.l10n.amPM[1].charAt(0):\n case self.l10n.amPM[1].charAt(0).toLowerCase():\n self.amPM.textContent = self.l10n.amPM[1];\n setHoursFromInputs();\n updateValue();\n break;\n }\n }\n if (isInput || isCalendarElem(eventTarget)) {\n triggerEvent(\"onKeyDown\", e);\n }\n }\n function onMouseOver(elem, cellClass) {\n if (cellClass === void 0) { cellClass = \"flatpickr-day\"; }\n if (self.selectedDates.length !== 1 ||\n (elem &&\n (!elem.classList.contains(cellClass) ||\n elem.classList.contains(\"flatpickr-disabled\"))))\n return;\n var hoverDate = elem\n ? elem.dateObj.getTime()\n : self.days.firstElementChild.dateObj.getTime(), initialDate = self.parseDate(self.selectedDates[0], undefined, true).getTime(), rangeStartDate = Math.min(hoverDate, self.selectedDates[0].getTime()), rangeEndDate = Math.max(hoverDate, self.selectedDates[0].getTime());\n var containsDisabled = false;\n var minRange = 0, maxRange = 0;\n for (var t = rangeStartDate; t < rangeEndDate; t += duration.DAY) {\n if (!isEnabled(new Date(t), true)) {\n containsDisabled =\n containsDisabled || (t > rangeStartDate && t < rangeEndDate);\n if (t < initialDate && (!minRange || t > minRange))\n minRange = t;\n else if (t > initialDate && (!maxRange || t < maxRange))\n maxRange = t;\n }\n }\n var hoverableCells = Array.from(self.rContainer.querySelectorAll(\"*:nth-child(-n+\" + self.config.showMonths + \") > .\" + cellClass));\n hoverableCells.forEach(function (dayElem) {\n var date = dayElem.dateObj;\n var timestamp = date.getTime();\n var outOfRange = (minRange > 0 && timestamp < minRange) ||\n (maxRange > 0 && timestamp > maxRange);\n if (outOfRange) {\n dayElem.classList.add(\"notAllowed\");\n [\"inRange\", \"startRange\", \"endRange\"].forEach(function (c) {\n dayElem.classList.remove(c);\n });\n return;\n }\n else if (containsDisabled && !outOfRange)\n return;\n [\"startRange\", \"inRange\", \"endRange\", \"notAllowed\"].forEach(function (c) {\n dayElem.classList.remove(c);\n });\n if (elem !== undefined) {\n elem.classList.add(hoverDate <= self.selectedDates[0].getTime()\n ? \"startRange\"\n : \"endRange\");\n if (initialDate < hoverDate && timestamp === initialDate)\n dayElem.classList.add(\"startRange\");\n else if (initialDate > hoverDate && timestamp === initialDate)\n dayElem.classList.add(\"endRange\");\n if (timestamp >= minRange &&\n (maxRange === 0 || timestamp <= maxRange) &&\n isBetween(timestamp, initialDate, hoverDate))\n dayElem.classList.add(\"inRange\");\n }\n });\n }\n function onResize() {\n if (self.isOpen && !self.config.static && !self.config.inline)\n positionCalendar();\n }\n function open(e, positionElement) {\n if (positionElement === void 0) { positionElement = self._positionElement; }\n if (self.isMobile === true) {\n if (e) {\n e.preventDefault();\n var eventTarget = getEventTarget(e);\n if (eventTarget) {\n eventTarget.blur();\n }\n }\n if (self.mobileInput !== undefined) {\n self.mobileInput.focus();\n self.mobileInput.click();\n }\n triggerEvent(\"onOpen\");\n return;\n }\n else if (self._input.disabled || self.config.inline) {\n return;\n }\n var wasOpen = self.isOpen;\n self.isOpen = true;\n if (!wasOpen) {\n self.calendarContainer.classList.add(\"open\");\n self._input.classList.add(\"active\");\n triggerEvent(\"onOpen\");\n positionCalendar(positionElement);\n }\n if (self.config.enableTime === true && self.config.noCalendar === true) {\n if (self.config.allowInput === false &&\n (e === undefined ||\n !self.timeContainer.contains(e.relatedTarget))) {\n setTimeout(function () { return self.hourElement.select(); }, 50);\n }\n }\n }\n function minMaxDateSetter(type) {\n return function (date) {\n var dateObj = (self.config[\"_\" + type + \"Date\"] = self.parseDate(date, self.config.dateFormat));\n var inverseDateObj = self.config[\"_\" + (type === \"min\" ? \"max\" : \"min\") + \"Date\"];\n if (dateObj !== undefined) {\n self[type === \"min\" ? \"minDateHasTime\" : \"maxDateHasTime\"] =\n dateObj.getHours() > 0 ||\n dateObj.getMinutes() > 0 ||\n dateObj.getSeconds() > 0;\n }\n if (self.selectedDates) {\n self.selectedDates = self.selectedDates.filter(function (d) { return isEnabled(d); });\n if (!self.selectedDates.length && type === \"min\")\n setHoursFromDate(dateObj);\n updateValue();\n }\n if (self.daysContainer) {\n redraw();\n if (dateObj !== undefined)\n self.currentYearElement[type] = dateObj.getFullYear().toString();\n else\n self.currentYearElement.removeAttribute(type);\n self.currentYearElement.disabled =\n !!inverseDateObj &&\n dateObj !== undefined &&\n inverseDateObj.getFullYear() === dateObj.getFullYear();\n }\n };\n }\n function parseConfig() {\n var boolOpts = [\n \"wrap\",\n \"weekNumbers\",\n \"allowInput\",\n \"allowInvalidPreload\",\n \"clickOpens\",\n \"time_24hr\",\n \"enableTime\",\n \"noCalendar\",\n \"altInput\",\n \"shorthandCurrentMonth\",\n \"inline\",\n \"static\",\n \"enableSeconds\",\n \"disableMobile\",\n ];\n var userConfig = __assign(__assign({}, JSON.parse(JSON.stringify(element.dataset || {}))), instanceConfig);\n var formats = {};\n self.config.parseDate = userConfig.parseDate;\n self.config.formatDate = userConfig.formatDate;\n Object.defineProperty(self.config, \"enable\", {\n get: function () { return self.config._enable; },\n set: function (dates) {\n self.config._enable = parseDateRules(dates);\n },\n });\n Object.defineProperty(self.config, \"disable\", {\n get: function () { return self.config._disable; },\n set: function (dates) {\n self.config._disable = parseDateRules(dates);\n },\n });\n var timeMode = userConfig.mode === \"time\";\n if (!userConfig.dateFormat && (userConfig.enableTime || timeMode)) {\n var defaultDateFormat = flatpickr.defaultConfig.dateFormat || defaultOptions.dateFormat;\n formats.dateFormat =\n userConfig.noCalendar || timeMode\n ? \"H:i\" + (userConfig.enableSeconds ? \":S\" : \"\")\n : defaultDateFormat + \" H:i\" + (userConfig.enableSeconds ? \":S\" : \"\");\n }\n if (userConfig.altInput &&\n (userConfig.enableTime || timeMode) &&\n !userConfig.altFormat) {\n var defaultAltFormat = flatpickr.defaultConfig.altFormat || defaultOptions.altFormat;\n formats.altFormat =\n userConfig.noCalendar || timeMode\n ? \"h:i\" + (userConfig.enableSeconds ? \":S K\" : \" K\")\n : defaultAltFormat + (\" h:i\" + (userConfig.enableSeconds ? \":S\" : \"\") + \" K\");\n }\n Object.defineProperty(self.config, \"minDate\", {\n get: function () { return self.config._minDate; },\n set: minMaxDateSetter(\"min\"),\n });\n Object.defineProperty(self.config, \"maxDate\", {\n get: function () { return self.config._maxDate; },\n set: minMaxDateSetter(\"max\"),\n });\n var minMaxTimeSetter = function (type) { return function (val) {\n self.config[type === \"min\" ? \"_minTime\" : \"_maxTime\"] = self.parseDate(val, \"H:i:S\");\n }; };\n Object.defineProperty(self.config, \"minTime\", {\n get: function () { return self.config._minTime; },\n set: minMaxTimeSetter(\"min\"),\n });\n Object.defineProperty(self.config, \"maxTime\", {\n get: function () { return self.config._maxTime; },\n set: minMaxTimeSetter(\"max\"),\n });\n if (userConfig.mode === \"time\") {\n self.config.noCalendar = true;\n self.config.enableTime = true;\n }\n Object.assign(self.config, formats, userConfig);\n for (var i = 0; i < boolOpts.length; i++)\n self.config[boolOpts[i]] =\n self.config[boolOpts[i]] === true ||\n self.config[boolOpts[i]] === \"true\";\n HOOKS.filter(function (hook) { return self.config[hook] !== undefined; }).forEach(function (hook) {\n self.config[hook] = arrayify(self.config[hook] || []).map(bindToInstance);\n });\n self.isMobile =\n !self.config.disableMobile &&\n !self.config.inline &&\n self.config.mode === \"single\" &&\n !self.config.disable.length &&\n !self.config.enable &&\n !self.config.weekNumbers &&\n /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\n for (var i = 0; i < self.config.plugins.length; i++) {\n var pluginConf = self.config.plugins[i](self) || {};\n for (var key in pluginConf) {\n if (HOOKS.indexOf(key) > -1) {\n self.config[key] = arrayify(pluginConf[key])\n .map(bindToInstance)\n .concat(self.config[key]);\n }\n else if (typeof userConfig[key] === \"undefined\")\n self.config[key] = pluginConf[key];\n }\n }\n if (!userConfig.altInputClass) {\n self.config.altInputClass =\n getInputElem().className + \" \" + self.config.altInputClass;\n }\n triggerEvent(\"onParseConfig\");\n }\n function getInputElem() {\n return self.config.wrap\n ? element.querySelector(\"[data-input]\")\n : element;\n }\n function setupLocale() {\n if (typeof self.config.locale !== \"object\" &&\n typeof flatpickr.l10ns[self.config.locale] === \"undefined\")\n self.config.errorHandler(new Error(\"flatpickr: invalid locale \" + self.config.locale));\n self.l10n = __assign(__assign({}, flatpickr.l10ns.default), (typeof self.config.locale === \"object\"\n ? self.config.locale\n : self.config.locale !== \"default\"\n ? flatpickr.l10ns[self.config.locale]\n : undefined));\n tokenRegex.D = \"(\" + self.l10n.weekdays.shorthand.join(\"|\") + \")\";\n tokenRegex.l = \"(\" + self.l10n.weekdays.longhand.join(\"|\") + \")\";\n tokenRegex.M = \"(\" + self.l10n.months.shorthand.join(\"|\") + \")\";\n tokenRegex.F = \"(\" + self.l10n.months.longhand.join(\"|\") + \")\";\n tokenRegex.K = \"(\" + self.l10n.amPM[0] + \"|\" + self.l10n.amPM[1] + \"|\" + self.l10n.amPM[0].toLowerCase() + \"|\" + self.l10n.amPM[1].toLowerCase() + \")\";\n var userConfig = __assign(__assign({}, instanceConfig), JSON.parse(JSON.stringify(element.dataset || {})));\n if (userConfig.time_24hr === undefined &&\n flatpickr.defaultConfig.time_24hr === undefined) {\n self.config.time_24hr = self.l10n.time_24hr;\n }\n self.formatDate = createDateFormatter(self);\n self.parseDate = createDateParser({ config: self.config, l10n: self.l10n });\n }\n function positionCalendar(customPositionElement) {\n if (typeof self.config.position === \"function\") {\n return void self.config.position(self, customPositionElement);\n }\n if (self.calendarContainer === undefined)\n return;\n triggerEvent(\"onPreCalendarPosition\");\n var positionElement = customPositionElement || self._positionElement;\n var calendarHeight = Array.prototype.reduce.call(self.calendarContainer.children, (function (acc, child) { return acc + child.offsetHeight; }), 0), calendarWidth = self.calendarContainer.offsetWidth, configPos = self.config.position.split(\" \"), configPosVertical = configPos[0], configPosHorizontal = configPos.length > 1 ? configPos[1] : null, inputBounds = positionElement.getBoundingClientRect(), distanceFromBottom = window.innerHeight - inputBounds.bottom, showOnTop = configPosVertical === \"above\" ||\n (configPosVertical !== \"below\" &&\n distanceFromBottom < calendarHeight &&\n inputBounds.top > calendarHeight);\n var top = window.pageYOffset +\n inputBounds.top +\n (!showOnTop ? positionElement.offsetHeight + 2 : -calendarHeight - 2);\n toggleClass(self.calendarContainer, \"arrowTop\", !showOnTop);\n toggleClass(self.calendarContainer, \"arrowBottom\", showOnTop);\n if (self.config.inline)\n return;\n var left = window.pageXOffset + inputBounds.left;\n var isCenter = false;\n var isRight = false;\n if (configPosHorizontal === \"center\") {\n left -= (calendarWidth - inputBounds.width) / 2;\n isCenter = true;\n }\n else if (configPosHorizontal === \"right\") {\n left -= calendarWidth - inputBounds.width;\n isRight = true;\n }\n toggleClass(self.calendarContainer, \"arrowLeft\", !isCenter && !isRight);\n toggleClass(self.calendarContainer, \"arrowCenter\", isCenter);\n toggleClass(self.calendarContainer, \"arrowRight\", isRight);\n var right = window.document.body.offsetWidth -\n (window.pageXOffset + inputBounds.right);\n var rightMost = left + calendarWidth > window.document.body.offsetWidth;\n var centerMost = right + calendarWidth > window.document.body.offsetWidth;\n toggleClass(self.calendarContainer, \"rightMost\", rightMost);\n if (self.config.static)\n return;\n self.calendarContainer.style.top = top + \"px\";\n if (!rightMost) {\n self.calendarContainer.style.left = left + \"px\";\n self.calendarContainer.style.right = \"auto\";\n }\n else if (!centerMost) {\n self.calendarContainer.style.left = \"auto\";\n self.calendarContainer.style.right = right + \"px\";\n }\n else {\n var doc = getDocumentStyleSheet();\n if (doc === undefined)\n return;\n var bodyWidth = window.document.body.offsetWidth;\n var centerLeft = Math.max(0, bodyWidth / 2 - calendarWidth / 2);\n var centerBefore = \".flatpickr-calendar.centerMost:before\";\n var centerAfter = \".flatpickr-calendar.centerMost:after\";\n var centerIndex = doc.cssRules.length;\n var centerStyle = \"{left:\" + inputBounds.left + \"px;right:auto;}\";\n toggleClass(self.calendarContainer, \"rightMost\", false);\n toggleClass(self.calendarContainer, \"centerMost\", true);\n doc.insertRule(centerBefore + \",\" + centerAfter + centerStyle, centerIndex);\n self.calendarContainer.style.left = centerLeft + \"px\";\n self.calendarContainer.style.right = \"auto\";\n }\n }\n function getDocumentStyleSheet() {\n var editableSheet = null;\n for (var i = 0; i < document.styleSheets.length; i++) {\n var sheet = document.styleSheets[i];\n if (!sheet.cssRules)\n continue;\n try {\n sheet.cssRules;\n }\n catch (err) {\n continue;\n }\n editableSheet = sheet;\n break;\n }\n return editableSheet != null ? editableSheet : createStyleSheet();\n }\n function createStyleSheet() {\n var style = document.createElement(\"style\");\n document.head.appendChild(style);\n return style.sheet;\n }\n function redraw() {\n if (self.config.noCalendar || self.isMobile)\n return;\n buildMonthSwitch();\n updateNavigationCurrentMonth();\n buildDays();\n }\n function focusAndClose() {\n self._input.focus();\n if (window.navigator.userAgent.indexOf(\"MSIE\") !== -1 ||\n navigator.msMaxTouchPoints !== undefined) {\n setTimeout(self.close, 0);\n }\n else {\n self.close();\n }\n }\n function selectDate(e) {\n e.preventDefault();\n e.stopPropagation();\n var isSelectable = function (day) {\n return day.classList &&\n day.classList.contains(\"flatpickr-day\") &&\n !day.classList.contains(\"flatpickr-disabled\") &&\n !day.classList.contains(\"notAllowed\");\n };\n var t = findParent(getEventTarget(e), isSelectable);\n if (t === undefined)\n return;\n var target = t;\n var selectedDate = (self.latestSelectedDateObj = new Date(target.dateObj.getTime()));\n var shouldChangeMonth = (selectedDate.getMonth() < self.currentMonth ||\n selectedDate.getMonth() >\n self.currentMonth + self.config.showMonths - 1) &&\n self.config.mode !== \"range\";\n self.selectedDateElem = target;\n if (self.config.mode === \"single\")\n self.selectedDates = [selectedDate];\n else if (self.config.mode === \"multiple\") {\n var selectedIndex = isDateSelected(selectedDate);\n if (selectedIndex)\n self.selectedDates.splice(parseInt(selectedIndex), 1);\n else\n self.selectedDates.push(selectedDate);\n }\n else if (self.config.mode === \"range\") {\n if (self.selectedDates.length === 2) {\n self.clear(false, false);\n }\n self.latestSelectedDateObj = selectedDate;\n self.selectedDates.push(selectedDate);\n if (compareDates(selectedDate, self.selectedDates[0], true) !== 0)\n self.selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });\n }\n setHoursFromInputs();\n if (shouldChangeMonth) {\n var isNewYear = self.currentYear !== selectedDate.getFullYear();\n self.currentYear = selectedDate.getFullYear();\n self.currentMonth = selectedDate.getMonth();\n if (isNewYear) {\n triggerEvent(\"onYearChange\");\n buildMonthSwitch();\n }\n triggerEvent(\"onMonthChange\");\n }\n updateNavigationCurrentMonth();\n buildDays();\n updateValue();\n if (!shouldChangeMonth &&\n self.config.mode !== \"range\" &&\n self.config.showMonths === 1)\n focusOnDayElem(target);\n else if (self.selectedDateElem !== undefined &&\n self.hourElement === undefined) {\n self.selectedDateElem && self.selectedDateElem.focus();\n }\n if (self.hourElement !== undefined)\n self.hourElement !== undefined && self.hourElement.focus();\n if (self.config.closeOnSelect) {\n var single = self.config.mode === \"single\" && !self.config.enableTime;\n var range = self.config.mode === \"range\" &&\n self.selectedDates.length === 2 &&\n !self.config.enableTime;\n if (single || range) {\n focusAndClose();\n }\n }\n triggerChange();\n }\n var CALLBACKS = {\n locale: [setupLocale, updateWeekdays],\n showMonths: [buildMonths, setCalendarWidth, buildWeekdays],\n minDate: [jumpToDate],\n maxDate: [jumpToDate],\n positionElement: [updatePositionElement],\n clickOpens: [\n function () {\n if (self.config.clickOpens === true) {\n bind(self._input, \"focus\", self.open);\n bind(self._input, \"click\", self.open);\n }\n else {\n self._input.removeEventListener(\"focus\", self.open);\n self._input.removeEventListener(\"click\", self.open);\n }\n },\n ],\n };\n function set(option, value) {\n if (option !== null && typeof option === \"object\") {\n Object.assign(self.config, option);\n for (var key in option) {\n if (CALLBACKS[key] !== undefined)\n CALLBACKS[key].forEach(function (x) { return x(); });\n }\n }\n else {\n self.config[option] = value;\n if (CALLBACKS[option] !== undefined)\n CALLBACKS[option].forEach(function (x) { return x(); });\n else if (HOOKS.indexOf(option) > -1)\n self.config[option] = arrayify(value);\n }\n self.redraw();\n updateValue(true);\n }\n function setSelectedDate(inputDate, format) {\n var dates = [];\n if (inputDate instanceof Array)\n dates = inputDate.map(function (d) { return self.parseDate(d, format); });\n else if (inputDate instanceof Date || typeof inputDate === \"number\")\n dates = [self.parseDate(inputDate, format)];\n else if (typeof inputDate === \"string\") {\n switch (self.config.mode) {\n case \"single\":\n case \"time\":\n dates = [self.parseDate(inputDate, format)];\n break;\n case \"multiple\":\n dates = inputDate\n .split(self.config.conjunction)\n .map(function (date) { return self.parseDate(date, format); });\n break;\n case \"range\":\n dates = inputDate\n .split(self.l10n.rangeSeparator)\n .map(function (date) { return self.parseDate(date, format); });\n break;\n default:\n break;\n }\n }\n else\n self.config.errorHandler(new Error(\"Invalid date supplied: \" + JSON.stringify(inputDate)));\n self.selectedDates = (self.config.allowInvalidPreload\n ? dates\n : dates.filter(function (d) { return d instanceof Date && isEnabled(d, false); }));\n if (self.config.mode === \"range\")\n self.selectedDates.sort(function (a, b) { return a.getTime() - b.getTime(); });\n }\n function setDate(date, triggerChange, format) {\n if (triggerChange === void 0) { triggerChange = false; }\n if (format === void 0) { format = self.config.dateFormat; }\n if ((date !== 0 && !date) || (date instanceof Array && date.length === 0))\n return self.clear(triggerChange);\n setSelectedDate(date, format);\n self.latestSelectedDateObj =\n self.selectedDates[self.selectedDates.length - 1];\n self.redraw();\n jumpToDate(undefined, triggerChange);\n setHoursFromDate();\n if (self.selectedDates.length === 0) {\n self.clear(false);\n }\n updateValue(triggerChange);\n if (triggerChange)\n triggerEvent(\"onChange\");\n }\n function parseDateRules(arr) {\n return arr\n .slice()\n .map(function (rule) {\n if (typeof rule === \"string\" ||\n typeof rule === \"number\" ||\n rule instanceof Date) {\n return self.parseDate(rule, undefined, true);\n }\n else if (rule &&\n typeof rule === \"object\" &&\n rule.from &&\n rule.to)\n return {\n from: self.parseDate(rule.from, undefined),\n to: self.parseDate(rule.to, undefined),\n };\n return rule;\n })\n .filter(function (x) { return x; });\n }\n function setupDates() {\n self.selectedDates = [];\n self.now = self.parseDate(self.config.now) || new Date();\n var preloadedDate = self.config.defaultDate ||\n ((self.input.nodeName === \"INPUT\" ||\n self.input.nodeName === \"TEXTAREA\") &&\n self.input.placeholder &&\n self.input.value === self.input.placeholder\n ? null\n : self.input.value);\n if (preloadedDate)\n setSelectedDate(preloadedDate, self.config.dateFormat);\n self._initialDate =\n self.selectedDates.length > 0\n ? self.selectedDates[0]\n : self.config.minDate &&\n self.config.minDate.getTime() > self.now.getTime()\n ? self.config.minDate\n : self.config.maxDate &&\n self.config.maxDate.getTime() < self.now.getTime()\n ? self.config.maxDate\n : self.now;\n self.currentYear = self._initialDate.getFullYear();\n self.currentMonth = self._initialDate.getMonth();\n if (self.selectedDates.length > 0)\n self.latestSelectedDateObj = self.selectedDates[0];\n if (self.config.minTime !== undefined)\n self.config.minTime = self.parseDate(self.config.minTime, \"H:i\");\n if (self.config.maxTime !== undefined)\n self.config.maxTime = self.parseDate(self.config.maxTime, \"H:i\");\n self.minDateHasTime =\n !!self.config.minDate &&\n (self.config.minDate.getHours() > 0 ||\n self.config.minDate.getMinutes() > 0 ||\n self.config.minDate.getSeconds() > 0);\n self.maxDateHasTime =\n !!self.config.maxDate &&\n (self.config.maxDate.getHours() > 0 ||\n self.config.maxDate.getMinutes() > 0 ||\n self.config.maxDate.getSeconds() > 0);\n }\n function setupInputs() {\n self.input = getInputElem();\n if (!self.input) {\n self.config.errorHandler(new Error(\"Invalid input element specified\"));\n return;\n }\n self.input._type = self.input.type;\n self.input.type = \"text\";\n self.input.classList.add(\"flatpickr-input\");\n self._input = self.input;\n if (self.config.altInput) {\n self.altInput = createElement(self.input.nodeName, self.config.altInputClass);\n self._input = self.altInput;\n self.altInput.placeholder = self.input.placeholder;\n self.altInput.disabled = self.input.disabled;\n self.altInput.required = self.input.required;\n self.altInput.tabIndex = self.input.tabIndex;\n self.altInput.type = \"text\";\n self.input.setAttribute(\"type\", \"hidden\");\n if (!self.config.static && self.input.parentNode)\n self.input.parentNode.insertBefore(self.altInput, self.input.nextSibling);\n }\n if (!self.config.allowInput)\n self._input.setAttribute(\"readonly\", \"readonly\");\n updatePositionElement();\n }\n function updatePositionElement() {\n self._positionElement = self.config.positionElement || self._input;\n }\n function setupMobile() {\n var inputType = self.config.enableTime\n ? self.config.noCalendar\n ? \"time\"\n : \"datetime-local\"\n : \"date\";\n self.mobileInput = createElement(\"input\", self.input.className + \" flatpickr-mobile\");\n self.mobileInput.tabIndex = 1;\n self.mobileInput.type = inputType;\n self.mobileInput.disabled = self.input.disabled;\n self.mobileInput.required = self.input.required;\n self.mobileInput.placeholder = self.input.placeholder;\n self.mobileFormatStr =\n inputType === \"datetime-local\"\n ? \"Y-m-d\\\\TH:i:S\"\n : inputType === \"date\"\n ? \"Y-m-d\"\n : \"H:i:S\";\n if (self.selectedDates.length > 0) {\n self.mobileInput.defaultValue = self.mobileInput.value = self.formatDate(self.selectedDates[0], self.mobileFormatStr);\n }\n if (self.config.minDate)\n self.mobileInput.min = self.formatDate(self.config.minDate, \"Y-m-d\");\n if (self.config.maxDate)\n self.mobileInput.max = self.formatDate(self.config.maxDate, \"Y-m-d\");\n if (self.input.getAttribute(\"step\"))\n self.mobileInput.step = String(self.input.getAttribute(\"step\"));\n self.input.type = \"hidden\";\n if (self.altInput !== undefined)\n self.altInput.type = \"hidden\";\n try {\n if (self.input.parentNode)\n self.input.parentNode.insertBefore(self.mobileInput, self.input.nextSibling);\n }\n catch (_a) { }\n bind(self.mobileInput, \"change\", function (e) {\n self.setDate(getEventTarget(e).value, false, self.mobileFormatStr);\n triggerEvent(\"onChange\");\n triggerEvent(\"onClose\");\n });\n }\n function toggle(e) {\n if (self.isOpen === true)\n return self.close();\n self.open(e);\n }\n function triggerEvent(event, data) {\n if (self.config === undefined)\n return;\n var hooks = self.config[event];\n if (hooks !== undefined && hooks.length > 0) {\n for (var i = 0; hooks[i] && i < hooks.length; i++)\n hooks[i](self.selectedDates, self.input.value, self, data);\n }\n if (event === \"onChange\") {\n self.input.dispatchEvent(createEvent(\"change\"));\n self.input.dispatchEvent(createEvent(\"input\"));\n }\n }\n function createEvent(name) {\n var e = document.createEvent(\"Event\");\n e.initEvent(name, true, true);\n return e;\n }\n function isDateSelected(date) {\n for (var i = 0; i < self.selectedDates.length; i++) {\n var selectedDate = self.selectedDates[i];\n if (selectedDate instanceof Date &&\n compareDates(selectedDate, date) === 0)\n return \"\" + i;\n }\n return false;\n }\n function isDateInRange(date) {\n if (self.config.mode !== \"range\" || self.selectedDates.length < 2)\n return false;\n return (compareDates(date, self.selectedDates[0]) >= 0 &&\n compareDates(date, self.selectedDates[1]) <= 0);\n }\n function updateNavigationCurrentMonth() {\n if (self.config.noCalendar || self.isMobile || !self.monthNav)\n return;\n self.yearElements.forEach(function (yearElement, i) {\n var d = new Date(self.currentYear, self.currentMonth, 1);\n d.setMonth(self.currentMonth + i);\n if (self.config.showMonths > 1 ||\n self.config.monthSelectorType === \"static\") {\n self.monthElements[i].textContent =\n monthToStr(d.getMonth(), self.config.shorthandCurrentMonth, self.l10n) + \" \";\n }\n else {\n self.monthsDropdownContainer.value = d.getMonth().toString();\n }\n yearElement.value = d.getFullYear().toString();\n });\n self._hidePrevMonthArrow =\n self.config.minDate !== undefined &&\n (self.currentYear === self.config.minDate.getFullYear()\n ? self.currentMonth <= self.config.minDate.getMonth()\n : self.currentYear < self.config.minDate.getFullYear());\n self._hideNextMonthArrow =\n self.config.maxDate !== undefined &&\n (self.currentYear === self.config.maxDate.getFullYear()\n ? self.currentMonth + 1 > self.config.maxDate.getMonth()\n : self.currentYear > self.config.maxDate.getFullYear());\n }\n function getDateStr(specificFormat) {\n var format = specificFormat ||\n (self.config.altInput ? self.config.altFormat : self.config.dateFormat);\n return self.selectedDates\n .map(function (dObj) { return self.formatDate(dObj, format); })\n .filter(function (d, i, arr) {\n return self.config.mode !== \"range\" ||\n self.config.enableTime ||\n arr.indexOf(d) === i;\n })\n .join(self.config.mode !== \"range\"\n ? self.config.conjunction\n : self.l10n.rangeSeparator);\n }\n function updateValue(triggerChange) {\n if (triggerChange === void 0) { triggerChange = true; }\n if (self.mobileInput !== undefined && self.mobileFormatStr) {\n self.mobileInput.value =\n self.latestSelectedDateObj !== undefined\n ? self.formatDate(self.latestSelectedDateObj, self.mobileFormatStr)\n : \"\";\n }\n self.input.value = getDateStr(self.config.dateFormat);\n if (self.altInput !== undefined) {\n self.altInput.value = getDateStr(self.config.altFormat);\n }\n if (triggerChange !== false)\n triggerEvent(\"onValueUpdate\");\n }\n function onMonthNavClick(e) {\n var eventTarget = getEventTarget(e);\n var isPrevMonth = self.prevMonthNav.contains(eventTarget);\n var isNextMonth = self.nextMonthNav.contains(eventTarget);\n if (isPrevMonth || isNextMonth) {\n changeMonth(isPrevMonth ? -1 : 1);\n }\n else if (self.yearElements.indexOf(eventTarget) >= 0) {\n eventTarget.select();\n }\n else if (eventTarget.classList.contains(\"arrowUp\")) {\n self.changeYear(self.currentYear + 1);\n }\n else if (eventTarget.classList.contains(\"arrowDown\")) {\n self.changeYear(self.currentYear - 1);\n }\n }\n function timeWrapper(e) {\n e.preventDefault();\n var isKeyDown = e.type === \"keydown\", eventTarget = getEventTarget(e), input = eventTarget;\n if (self.amPM !== undefined && eventTarget === self.amPM) {\n self.amPM.textContent =\n self.l10n.amPM[int(self.amPM.textContent === self.l10n.amPM[0])];\n }\n var min = parseFloat(input.getAttribute(\"min\")), max = parseFloat(input.getAttribute(\"max\")), step = parseFloat(input.getAttribute(\"step\")), curValue = parseInt(input.value, 10), delta = e.delta ||\n (isKeyDown ? (e.which === 38 ? 1 : -1) : 0);\n var newValue = curValue + step * delta;\n if (typeof input.value !== \"undefined\" && input.value.length === 2) {\n var isHourElem = input === self.hourElement, isMinuteElem = input === self.minuteElement;\n if (newValue < min) {\n newValue =\n max +\n newValue +\n int(!isHourElem) +\n (int(isHourElem) && int(!self.amPM));\n if (isMinuteElem)\n incrementNumInput(undefined, -1, self.hourElement);\n }\n else if (newValue > max) {\n newValue =\n input === self.hourElement ? newValue - max - int(!self.amPM) : min;\n if (isMinuteElem)\n incrementNumInput(undefined, 1, self.hourElement);\n }\n if (self.amPM &&\n isHourElem &&\n (step === 1\n ? newValue + curValue === 23\n : Math.abs(newValue - curValue) > step)) {\n self.amPM.textContent =\n self.l10n.amPM[int(self.amPM.textContent === self.l10n.amPM[0])];\n }\n input.value = pad(newValue);\n }\n }\n init();\n return self;\n}\nfunction _flatpickr(nodeList, config) {\n var nodes = Array.prototype.slice\n .call(nodeList)\n .filter(function (x) { return x instanceof HTMLElement; });\n var instances = [];\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n try {\n if (node.getAttribute(\"data-fp-omit\") !== null)\n continue;\n if (node._flatpickr !== undefined) {\n node._flatpickr.destroy();\n node._flatpickr = undefined;\n }\n node._flatpickr = FlatpickrInstance(node, config || {});\n instances.push(node._flatpickr);\n }\n catch (e) {\n console.error(e);\n }\n }\n return instances.length === 1 ? instances[0] : instances;\n}\nif (typeof HTMLElement !== \"undefined\" &&\n typeof HTMLCollection !== \"undefined\" &&\n typeof NodeList !== \"undefined\") {\n HTMLCollection.prototype.flatpickr = NodeList.prototype.flatpickr = function (config) {\n return _flatpickr(this, config);\n };\n HTMLElement.prototype.flatpickr = function (config) {\n return _flatpickr([this], config);\n };\n}\nvar flatpickr = function (selector, config) {\n if (typeof selector === \"string\") {\n return _flatpickr(window.document.querySelectorAll(selector), config);\n }\n else if (selector instanceof Node) {\n return _flatpickr([selector], config);\n }\n else {\n return _flatpickr(selector, config);\n }\n};\nflatpickr.defaultConfig = {};\nflatpickr.l10ns = {\n en: __assign({}, English),\n default: __assign({}, English),\n};\nflatpickr.localize = function (l10n) {\n flatpickr.l10ns.default = __assign(__assign({}, flatpickr.l10ns.default), l10n);\n};\nflatpickr.setDefaults = function (config) {\n flatpickr.defaultConfig = __assign(__assign({}, flatpickr.defaultConfig), config);\n};\nflatpickr.parseDate = createDateParser({});\nflatpickr.formatDate = createDateFormatter({});\nflatpickr.compareDates = compareDates;\nif (typeof jQuery !== \"undefined\" && typeof jQuery.fn !== \"undefined\") {\n jQuery.fn.flatpickr = function (config) {\n return _flatpickr(this, config);\n };\n}\nDate.prototype.fp_incr = function (days) {\n return new Date(this.getFullYear(), this.getMonth(), this.getDate() + (typeof days === \"string\" ? parseInt(days, 10) : days));\n};\nif (typeof window !== \"undefined\") {\n window.flatpickr = flatpickr;\n}\nexport default flatpickr;\n",".date-picker-wrapper {\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n border: 1px solid var(--border-color, #d1d5db);\r\n border-radius: var(--radius-md, 0.5rem);\r\n padding: 0.5rem 0.75rem;\r\n background-color: var(--surface-color, #fff);\r\n transition: border-color 0.2s ease;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.date-picker-wrapper:focus-within {\r\n border: 1.3px solid var(--color-border-selected, #075db2);\r\n}\r\n\r\n.date-picker-wrapper.is-disabled {\r\n opacity: 0.5;\r\n pointer-events: none;\r\n}\r\n\r\n.date-picker-wrapper input {\r\n border: none;\r\n outline: none;\r\n width: 100%;\r\n background: transparent;\r\n font-size: var(--Font-Size-T-sm, 0.875rem);\r\n font-style: normal;\r\n font-weight: var(--Font-Weight-Medium, 500);\r\n line-height: var(--Font-Line-height-T-sm, 1.5rem); /* 171.429% */\r\n letter-spacing: var(--Font-Letter-spacing-T-sm, 0);\r\n color: var(--color-text, #4b5565);\r\n text-overflow: ellipsis;\r\n}\r\n\r\n.inner_container{\r\n width: 100%;\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.calendar-container {\r\n width: fit-content;\r\n position: absolute;\r\n z-index: 9;\r\n}\r\n\r\n.calendar-container.left {\r\n top: 105%;\r\n left: 0;\r\n}\r\n\r\n.calendar-container.right {\r\n top: 105%;\r\n right: 0;\r\n}\r\n\r\n\r\n/* Flatpickr Overrides */\r\n:host ::part(flatpickr-calendar) {\r\n background-color: var(--surface-popover, #fff);\r\n border: 1px solid var(--border-color, #e5e7eb);\r\n}\r\n\r\n.flatpickr-calendar *,\r\ninput {\r\n font-family: var(--font-family-body);\r\n}\r\n\r\n.flatpickr-calendar {\r\n background: var(--color-background-card, #fff);\r\n border: 1px solid var(--border-color, #e5e7eb);\r\n box-shadow: var(--shadow-md);\r\n border-radius: var(--radius-md, 0.5rem);\r\n z-index: 1000;\r\n padding: var(--spacing-3);\r\n white-space: normal !important;\r\n overflow: visible;\r\n}\r\n\r\n.calendar-container.hidden {\r\n display: none;\r\n}\r\n\r\n.flatpickr-calendar.calendar_shown {\r\n display: block;\r\n}\r\n\r\n.flatpickr-weekdaycontainer {\r\n display: flex;\r\n padding: var(--spacing-2) 0;\r\n}\r\n\r\n.flatpickr-weekday {\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.flatpickr-day {\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n cursor: pointer;\r\n}\r\n\r\n.flatpickr-day.selected {\r\n border-radius: 1.25rem;\r\n background: var(--color-background-selected, #075db2);\r\n color: var(--color-background-card, #ffffff);\r\n}\r\n\r\n.flatpickr-months {\r\n display: flex;\r\n width: 100%;\r\n justify-content: space-between;\r\n}\r\n\r\n.flatpickr-current-month {\r\n display: flex;\r\n flex: 1;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.flatpickr-month {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.flatpickr-prev-month svg,\r\n.flatpickr-next-month svg {\r\n width: 20px;\r\n height: 20px;\r\n}\r\n\r\n.flatpickr-days {\r\n width: 17.5rem; /* whatever width you need */\r\n box-sizing: border-box;\r\n padding: 0;\r\n}\r\n\r\n.flatpickr-days .dayContainer {\r\n display: flex !important;\r\n flex-wrap: wrap !important;\r\n width: 100%;\r\n box-sizing: border-box;\r\n align-items: stretch;\r\n}\r\n\r\n/* make each day share 7 columns and center its content */\r\n.flatpickr-days .dayContainer .flatpickr-day {\r\n flex: 0 0 calc(100% / 7) !important; /* 7 columns */\r\n max-width: calc(100% / 7);\r\n box-sizing: border-box;\r\n text-align: center;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n white-space: normal !important;\r\n padding: 0.35rem 0; /* adjust spacing */\r\n}\r\n\r\n/* make weekday headers align with the columns */\r\n.flatpickr-weekdays .flatpickr-weekday {\r\n flex: 0 0 calc(100% / 7);\r\n max-width: calc(100% / 7);\r\n box-sizing: border-box;\r\n text-align: center;\r\n}\r\n\r\n.flatpickr-weekday {\r\n font-size: 0.875rem;\r\n font-style: normal;\r\n font-weight: 500;\r\n line-height: 1.25rem;\r\n}\r\n\r\n.flatpickr-day {\r\n font-family: var(--Font-Family-Body, Sora);\r\n font-size: var(--Font-Size-T-sm, 0.875rem);\r\n font-style: normal;\r\n font-weight: var(--Font-Weight-Regular, 400);\r\n line-height: var(--Font-Line-height-T-sm, 1.5rem); /* 171.429% */\r\n letter-spacing: var(--Font-Letter-spacing-T-sm, 0);\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.flatpickr-day.prevMonthDay,\r\n.flatpickr-day.nextMonthDay {\r\n color: var(--color-text-disabled, #808c9e);\r\n}\r\n\r\n/* Highlight background between start and end */\r\n.flatpickr-day.inRange {\r\n background: var(--color-background-gray-subtlest, #f6f8fa); /* light gray */\r\n border-radius: 0; /* remove default round shape */\r\n box-shadow: none;\r\n}\r\n\r\n/* Start and end bubbles */\r\n.flatpickr-day.startRange,\r\n.flatpickr-day.endRange {\r\n background: var(--color-background-selected, #075db2);\r\n color: var(--color-background-card, #ffffff);\r\n border-radius: 50%; /* make circles */\r\n}\r\n\r\n/* Connect rounded ends for smooth “pill” shape */\r\n.flatpickr-day.startRange.inRange,\r\n.flatpickr-day.endRange.inRange {\r\n border-radius: 50%;\r\n}\r\n\r\n/* Ensure spacing looks continuous */\r\n.flatpickr-day.flatpickr-disabled,\r\n.flatpickr-day.notAllowed {\r\n background: none;\r\n}\r\n\r\n.flatpickr-day.startRange {\r\n border-top-left-radius: 50px;\r\n border-bottom-left-radius: 50px;\r\n}\r\n\r\n.flatpickr-day.inRange + .flatpickr-day.endRange {\r\n border-top-right-radius: 50px;\r\n border-bottom-right-radius: 50px;\r\n}\r\n\r\n.flatpickr-day.today {\r\n position: relative;\r\n font-weight: 500;\r\n}\r\n\r\n/* Add a small dot below today's number */\r\n.flatpickr-day.today::after {\r\n content: '';\r\n position: absolute;\r\n bottom: 0.35rem; /* adjust vertical placement */\r\n left: 50%;\r\n transform: translateX(-50%);\r\n width: 0.3rem;\r\n height: 0.3rem;\r\n background-color: var(--color-icon-selected, #075db2); /* dot color */\r\n border-radius: 50%;\r\n}\r\n\r\n.calendar_arrow {\r\n display: flex;\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n padding: var(--spacing-2);\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-none);\r\n cursor: pointer;\r\n background-color: transparent;\r\n border-radius: var(--rounded-sm);\r\n}\r\n\r\n.calendar_arrow:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\n.calendar_arrow:active {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\n/* Styling the month dropdown */\r\n.flatpickr-current-month select.flatpickr-monthDropdown-months,\r\n.flatpickr-current-month select.flatpickr-yearDropdown-years {\r\n border: 1px solid var(--color-border-input, #cdd5df);\r\n border-radius: 6px;\r\n color: var(--color-text, #4b5565);\r\n padding: 4px 8px;\r\n background-color: var(--color-background-card, #ffffff);\r\n appearance: none; /* hides browser default arrow */\r\n -webkit-appearance: none;\r\n -moz-appearance: none;\r\n cursor: pointer;\r\n outline: none;\r\n font-size: 0.875rem;\r\n font-style: normal;\r\n font-weight: 500;\r\n line-height: 1.25rem;\r\n}\r\n\r\n/* Optional: add custom arrow */\r\n.flatpickr-current-month select.flatpickr-yearDropdown-years {\r\n background-image: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" class=\"calendar_arrow\"><path d=\"M7.50004 5C7.50004 5 12.5 8.68244 12.5 10C12.5 11.3176 7.5 15 7.5 15\" stroke=\"var(--color-icon, #4B5565)\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>');\r\n background-repeat: no-repeat;\r\n background-position: right 8px center;\r\n background-size: 16px;\r\n padding-right: 24px; /* space for the arrow */\r\n}\r\n\r\n/* Styling the year input */\r\n/* Year input container */\r\n.flatpickr-current-month .numInputWrapper {\r\n display: inline-flex;\r\n align-items: center;\r\n width: fit-content;\r\n border: 1px solid var(--color-border-input, #cdd5df);\r\n border-radius: 6px;\r\n transition: all 0.2s ease-in-out;\r\n}\r\n\r\n/* .flatpickr-current-month .numInputWrapper:hover {\r\n background-color: #f3f4f6;\r\n border-color: #9ca3af;\r\n} */\r\n\r\n.flatpickr-current-month .numInputWrapper:focus-within {\r\n /* background-color: #fff; */\r\n border: 1.3px solid var(--color-border-selected, #075db2);\r\n}\r\n\r\n/* Year input field */\r\n.flatpickr-current-month input.cur-year {\r\n border: none;\r\n background: transparent;\r\n width: 3rem;\r\n text-align: center;\r\n appearance: textfield;\r\n color: var(--color-text, #4b5565);\r\n outline: none;\r\n font-size: 0.875rem;\r\n font-style: normal;\r\n font-weight: 500;\r\n line-height: 1.25rem;\r\n}\r\n\r\n/* Remove default number spinner arrows */\r\n.flatpickr-current-month input.cur-year::-webkit-outer-spin-button,\r\n.flatpickr-current-month input.cur-year::-webkit-inner-spin-button {\r\n -webkit-appearance: none;\r\n margin: 0;\r\n}\r\n\r\n.flatpickr-current-month input.cur-year[type='number'] {\r\n -moz-appearance: textfield;\r\n}\r\n","import { Component, Element, Event, EventEmitter, h, Prop, State } from '@stencil/core';\r\nimport flatpickr from 'flatpickr';\r\nimport 'flatpickr/dist/flatpickr.min.css';\r\nimport { CustomLocale } from 'flatpickr/dist/types/locale';\r\nimport { CloseButtonPositions } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-date-picker',\r\n styleUrl: 'gb-date-picker.css',\r\n shadow: true,\r\n})\r\nexport class GbDatePicker {\r\n @Element() el: HTMLElement;\r\n @Prop() placeholder: string = 'Start date - end date';\r\n @Prop({ mutable: true }) value?: string | string[];\r\n @Prop() format: string = 'M j, Y';\r\n @Prop() mode: 'single' | 'range' = 'single';\r\n @Prop() disabled: boolean = false;\r\n @Prop() iconPosition: CloseButtonPositions = 'left';\r\n @Prop() dropdownAlignment: CloseButtonPositions = 'left';\r\n\r\n @State() isCalendarShown: boolean = false;\r\n\r\n @Event() dateChange: EventEmitter<string | string[]>;\r\n\r\n private inputEl!: HTMLInputElement;\r\n private picker: flatpickr.Instance;\r\n\r\n componentDidLoad() {\r\n this.initializePicker();\r\n }\r\n\r\n disconnectedCallback() {\r\n if (this.picker) this.picker.destroy();\r\n }\r\n\r\n private initializePicker() {\r\n const calendarContainer = this.el.shadowRoot.querySelector('.calendar-container') as HTMLElement;\r\n const input = this.inputEl;\r\n\r\n const customLocale: Partial<CustomLocale> = {\r\n weekdays: {\r\n shorthand: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\r\n longhand: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\r\n },\r\n rangeSeparator: ' - ',\r\n };\r\n\r\n if (!calendarContainer || !input) {\r\n console.warn('Calendar container or input not found.');\r\n return;\r\n }\r\n\r\n this.picker = flatpickr(input, {\r\n dateFormat: this.format,\r\n mode: this.mode,\r\n defaultDate: this.value,\r\n appendTo: calendarContainer, // keep inside shadow root\r\n clickOpens: false,\r\n allowInput: true,\r\n altInput: true,\r\n altFormat: this.format,\r\n closeOnSelect: false,\r\n locale: customLocale,\r\n disableMobile: true,\r\n prevArrow: `\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" class=\"calendar_arrow\">\r\n <path d=\"M12.5 4.99988C12.5 4.99988 7.50001 8.68232 7.5 9.99992C7.49999 11.3175 12.5 14.9999 12.5 14.9999\" stroke=\"var(--color-icon, #4B5565)\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n `,\r\n nextArrow: ` \r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" class=\"calendar_arrow\">\r\n <path d=\"M7.50004 5C7.50004 5 12.5 8.68244 12.5 10C12.5 11.3176 7.5 15 7.5 15\" stroke=\"var(--color-icon, #4B5565)\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg>\r\n `,\r\n onChange: (selectedDates: Date[]) => {\r\n if (this.mode === 'range') {\r\n const formattedRange = selectedDates.map(d => this.picker.formatDate(d, this.format));\r\n this.value = formattedRange;\r\n this.dateChange.emit(formattedRange);\r\n } else if (selectedDates.length) {\r\n const formattedDate = this.picker.formatDate(selectedDates[0], this.format);\r\n this.value = formattedDate;\r\n this.dateChange.emit(formattedDate);\r\n }\r\n\r\n this.picker.open();\r\n },\r\n onOpen: () => {\r\n this.isCalendarShown = true;\r\n },\r\n onClose: () => {\r\n this.isCalendarShown = false;\r\n },\r\n });\r\n\r\n input.addEventListener('input', () => {\r\n const dateStr = input.value;\r\n const parsedDate = this.picker.parseDate(dateStr, this.format);\r\n\r\n if (parsedDate) {\r\n this.value = this.picker.formatDate(parsedDate, this.format);\r\n this.dateChange.emit(this.value);\r\n }\r\n\r\n if (!this.isCalendarShown) {\r\n this.picker.open();\r\n }\r\n });\r\n }\r\n\r\n private toggleCalendar(event?: Event) {\r\n if (event) {\r\n const target = event.target as HTMLElement;\r\n if (this.el.shadowRoot && this.el.shadowRoot.contains(target)) {\r\n const calendarEl = this.el.shadowRoot.querySelector('.calendar-container');\r\n if (calendarEl && calendarEl.contains(target)) {\r\n return; // Ignore clicks inside the calendar\r\n }\r\n }\r\n }\r\n\r\n if (!this.picker) return;\r\n\r\n if (this.isCalendarShown) {\r\n this.picker.close();\r\n } else {\r\n this.picker.open();\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"date-picker-wrapper\">\r\n <div\r\n class=\"inner_container\"\r\n onClick={() => {\r\n this.toggleCalendar();\r\n }}\r\n >\r\n {this.iconPosition === 'left' && (\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=\"M9.16658 10.0833C8.75237 10.0833 8.41658 10.4191 8.41658 10.8333C8.41658 11.2475 8.75237 11.5833 9.16658 11.5833V10.8333V10.0833ZM13.3333 11.5833C13.7475 11.5833 14.0833 11.2475 14.0833 10.8333C14.0833 10.4191 13.7475 10.0833 13.3333 10.0833V10.8333V11.5833ZM6.66658 10.0833C6.25237 10.0833 5.91659 10.4191 5.91659 10.8333C5.91659 11.2475 6.25237 11.5833 6.66658 11.5833V10.8333V10.0833ZM6.67407 11.5833C7.08828 11.5833 7.42407 11.2475 7.42407 10.8333C7.42407 10.4191 7.08828 10.0833 6.67407 10.0833V10.8333V11.5833ZM10.8333 14.9166C11.2475 14.9166 11.5833 14.5808 11.5833 14.1666C11.5833 13.7524 11.2475 13.4166 10.8333 13.4166V14.1666V14.9166ZM6.66658 13.4166C6.25237 13.4166 5.91659 13.7524 5.91659 14.1666C5.91659 14.5808 6.25237 14.9166 6.66658 14.9166V14.1666V13.4166ZM13.3333 14.9166C13.7475 14.9166 14.0833 14.5808 14.0833 14.1666C14.0833 13.7524 13.7475 13.4166 13.3333 13.4166V14.1666V14.9166ZM13.3258 13.4166C12.9116 13.4166 12.5758 13.7524 12.5758 14.1666C12.5758 14.5808 12.9116 14.9166 13.3258 14.9166V14.1666V13.4166ZM15.7499 1.66663C15.7499 1.25241 15.4141 0.916626 14.9999 0.916626C14.5857 0.916626 14.2499 1.25241 14.2499 1.66663H14.9999H15.7499ZM14.2499 3.33329C14.2499 3.74751 14.5857 4.08329 14.9999 4.08329C15.4141 4.08329 15.7499 3.74751 15.7499 3.33329H14.9999H14.2499ZM5.74992 1.66663C5.74992 1.25241 5.41413 0.916626 4.99992 0.916626C4.58571 0.916626 4.24992 1.25241 4.24992 1.66663H4.99992H5.74992ZM4.24992 3.33329C4.24992 3.74751 4.58571 4.08329 4.99992 4.08329C5.41413 4.08329 5.74992 3.74751 5.74992 3.33329H4.99992H4.24992ZM2.49992 5.91663C2.08571 5.91663 1.74992 6.25241 1.74992 6.66663C1.74992 7.08084 2.08571 7.41663 2.49992 7.41663V6.66663V5.91663ZM17.4999 7.41663C17.9141 7.41663 18.2499 7.08084 18.2499 6.66663C18.2499 6.25241 17.9141 5.91663 17.4999 5.91663V6.66663V7.41663ZM9.16658 10.8333V11.5833H13.3333V10.8333V10.0833H9.16658V10.8333ZM6.66658 10.8333V11.5833H6.67407V10.8333V10.0833H6.66658V10.8333ZM10.8333 14.1666V13.4166H6.66658V14.1666V14.9166H10.8333V14.1666ZM13.3333 14.1666V13.4166H13.3258V14.1666V14.9166H13.3333V14.1666ZM14.9999 1.66663H14.2499V3.33329H14.9999H15.7499V1.66663H14.9999ZM4.99992 1.66663H4.24992V3.33329H4.99992H5.74992V1.66663H4.99992ZM9.20825 2.49996V3.24996H10.7916V2.49996V1.74996H9.20825V2.49996ZM17.9166 10.2027H17.1666V10.6306H17.9166H18.6666V10.2027H17.9166ZM10.7916 18.3333V17.5833H9.20825V18.3333V19.0833H10.7916V18.3333ZM2.08325 10.6306H2.83325V10.2027H2.08325H1.33325V10.6306H2.08325ZM9.20825 18.3333V17.5833C7.506 17.5833 6.31079 17.5814 5.4071 17.4501C4.53136 17.3228 4.03943 17.0875 3.67726 16.696L3.12668 17.2053L2.57611 17.7145C3.25737 18.451 4.12685 18.7798 5.19134 18.9345C6.22789 19.0851 7.55174 19.0833 9.20825 19.0833V18.3333ZM2.08325 10.6306H1.33325C1.33325 12.4265 1.33189 13.8433 1.46941 14.9491C1.60893 16.071 1.90254 16.9864 2.57611 17.7145L3.12668 17.2053L3.67726 16.696C3.30739 16.2961 3.07929 15.7397 2.95795 14.764C2.83462 13.7723 2.83325 12.4658 2.83325 10.6306H2.08325ZM17.9166 10.6306H17.1666C17.1666 12.4658 17.1652 13.7723 17.0419 14.764C16.9205 15.7397 16.6924 16.2961 16.3226 16.696L16.8732 17.2053L17.4237 17.7145C18.0973 16.9864 18.3909 16.071 18.5304 14.9491C18.668 13.8433 18.6666 12.4265 18.6666 10.6306H17.9166ZM10.7916 18.3333V19.0833C12.4481 19.0833 13.7719 19.0851 14.8085 18.9345C15.873 18.7798 16.7425 18.451 17.4237 17.7145L16.8732 17.2053L16.3226 16.696C15.9604 17.0875 15.4685 17.3228 14.5927 17.4501C13.689 17.5814 12.4938 17.5833 10.7916 17.5833V18.3333ZM10.7916 2.49996V3.24996C12.4938 3.24996 13.689 3.25182 14.5927 3.38316C15.4685 3.51045 15.9604 3.74573 16.3226 4.13728L16.8732 3.62799L17.4237 3.11871C16.7425 2.38222 15.873 2.05348 14.8085 1.89876C13.7719 1.7481 12.4481 1.74996 10.7916 1.74996V2.49996ZM17.9166 10.2027H18.6666C18.6666 8.40677 18.668 6.98999 18.5304 5.88412C18.3909 4.76229 18.0973 3.84689 17.4237 3.11871L16.8732 3.62799L16.3226 4.13728C16.6924 4.53713 16.9205 5.09352 17.0419 6.06924C17.1652 7.06093 17.1666 8.36747 17.1666 10.2027H17.9166ZM9.20825 2.49996V1.74996C7.55174 1.74996 6.22789 1.7481 5.19134 1.89876C4.12685 2.05348 3.25737 2.38222 2.57611 3.11871L3.12668 3.62799L3.67726 4.13728C4.03943 3.74573 4.53136 3.51045 5.4071 3.38316C6.31079 3.25182 7.506 3.24996 9.20825 3.24996V2.49996ZM2.08325 10.2027H2.83325C2.83325 8.36747 2.83462 7.06093 2.95795 6.06924C3.07929 5.09352 3.30739 4.53713 3.67726 4.13728L3.12668 3.62799L2.57611 3.11871C1.90254 3.84689 1.60893 4.76229 1.46941 5.88412C1.33189 6.98999 1.33325 8.40677 1.33325 10.2027H2.08325ZM2.49992 6.66663V7.41663H17.4999V6.66663V5.91663H2.49992V6.66663Z\"\r\n fill=\"var(--color-icon, #4B5565)\"\r\n />\r\n </svg>\r\n )}\r\n <input type=\"text\" ref={el => (this.inputEl = el as HTMLInputElement)} placeholder={this.placeholder} disabled={this.disabled} value={this.value as string} />\r\n {this.iconPosition === 'right' && (\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=\"M9.16658 10.0833C8.75237 10.0833 8.41658 10.4191 8.41658 10.8333C8.41658 11.2475 8.75237 11.5833 9.16658 11.5833V10.8333V10.0833ZM13.3333 11.5833C13.7475 11.5833 14.0833 11.2475 14.0833 10.8333C14.0833 10.4191 13.7475 10.0833 13.3333 10.0833V10.8333V11.5833ZM6.66658 10.0833C6.25237 10.0833 5.91659 10.4191 5.91659 10.8333C5.91659 11.2475 6.25237 11.5833 6.66658 11.5833V10.8333V10.0833ZM6.67407 11.5833C7.08828 11.5833 7.42407 11.2475 7.42407 10.8333C7.42407 10.4191 7.08828 10.0833 6.67407 10.0833V10.8333V11.5833ZM10.8333 14.9166C11.2475 14.9166 11.5833 14.5808 11.5833 14.1666C11.5833 13.7524 11.2475 13.4166 10.8333 13.4166V14.1666V14.9166ZM6.66658 13.4166C6.25237 13.4166 5.91659 13.7524 5.91659 14.1666C5.91659 14.5808 6.25237 14.9166 6.66658 14.9166V14.1666V13.4166ZM13.3333 14.9166C13.7475 14.9166 14.0833 14.5808 14.0833 14.1666C14.0833 13.7524 13.7475 13.4166 13.3333 13.4166V14.1666V14.9166ZM13.3258 13.4166C12.9116 13.4166 12.5758 13.7524 12.5758 14.1666C12.5758 14.5808 12.9116 14.9166 13.3258 14.9166V14.1666V13.4166ZM15.7499 1.66663C15.7499 1.25241 15.4141 0.916626 14.9999 0.916626C14.5857 0.916626 14.2499 1.25241 14.2499 1.66663H14.9999H15.7499ZM14.2499 3.33329C14.2499 3.74751 14.5857 4.08329 14.9999 4.08329C15.4141 4.08329 15.7499 3.74751 15.7499 3.33329H14.9999H14.2499ZM5.74992 1.66663C5.74992 1.25241 5.41413 0.916626 4.99992 0.916626C4.58571 0.916626 4.24992 1.25241 4.24992 1.66663H4.99992H5.74992ZM4.24992 3.33329C4.24992 3.74751 4.58571 4.08329 4.99992 4.08329C5.41413 4.08329 5.74992 3.74751 5.74992 3.33329H4.99992H4.24992ZM2.49992 5.91663C2.08571 5.91663 1.74992 6.25241 1.74992 6.66663C1.74992 7.08084 2.08571 7.41663 2.49992 7.41663V6.66663V5.91663ZM17.4999 7.41663C17.9141 7.41663 18.2499 7.08084 18.2499 6.66663C18.2499 6.25241 17.9141 5.91663 17.4999 5.91663V6.66663V7.41663ZM9.16658 10.8333V11.5833H13.3333V10.8333V10.0833H9.16658V10.8333ZM6.66658 10.8333V11.5833H6.67407V10.8333V10.0833H6.66658V10.8333ZM10.8333 14.1666V13.4166H6.66658V14.1666V14.9166H10.8333V14.1666ZM13.3333 14.1666V13.4166H13.3258V14.1666V14.9166H13.3333V14.1666ZM14.9999 1.66663H14.2499V3.33329H14.9999H15.7499V1.66663H14.9999ZM4.99992 1.66663H4.24992V3.33329H4.99992H5.74992V1.66663H4.99992ZM9.20825 2.49996V3.24996H10.7916V2.49996V1.74996H9.20825V2.49996ZM17.9166 10.2027H17.1666V10.6306H17.9166H18.6666V10.2027H17.9166ZM10.7916 18.3333V17.5833H9.20825V18.3333V19.0833H10.7916V18.3333ZM2.08325 10.6306H2.83325V10.2027H2.08325H1.33325V10.6306H2.08325ZM9.20825 18.3333V17.5833C7.506 17.5833 6.31079 17.5814 5.4071 17.4501C4.53136 17.3228 4.03943 17.0875 3.67726 16.696L3.12668 17.2053L2.57611 17.7145C3.25737 18.451 4.12685 18.7798 5.19134 18.9345C6.22789 19.0851 7.55174 19.0833 9.20825 19.0833V18.3333ZM2.08325 10.6306H1.33325C1.33325 12.4265 1.33189 13.8433 1.46941 14.9491C1.60893 16.071 1.90254 16.9864 2.57611 17.7145L3.12668 17.2053L3.67726 16.696C3.30739 16.2961 3.07929 15.7397 2.95795 14.764C2.83462 13.7723 2.83325 12.4658 2.83325 10.6306H2.08325ZM17.9166 10.6306H17.1666C17.1666 12.4658 17.1652 13.7723 17.0419 14.764C16.9205 15.7397 16.6924 16.2961 16.3226 16.696L16.8732 17.2053L17.4237 17.7145C18.0973 16.9864 18.3909 16.071 18.5304 14.9491C18.668 13.8433 18.6666 12.4265 18.6666 10.6306H17.9166ZM10.7916 18.3333V19.0833C12.4481 19.0833 13.7719 19.0851 14.8085 18.9345C15.873 18.7798 16.7425 18.451 17.4237 17.7145L16.8732 17.2053L16.3226 16.696C15.9604 17.0875 15.4685 17.3228 14.5927 17.4501C13.689 17.5814 12.4938 17.5833 10.7916 17.5833V18.3333ZM10.7916 2.49996V3.24996C12.4938 3.24996 13.689 3.25182 14.5927 3.38316C15.4685 3.51045 15.9604 3.74573 16.3226 4.13728L16.8732 3.62799L17.4237 3.11871C16.7425 2.38222 15.873 2.05348 14.8085 1.89876C13.7719 1.7481 12.4481 1.74996 10.7916 1.74996V2.49996ZM17.9166 10.2027H18.6666C18.6666 8.40677 18.668 6.98999 18.5304 5.88412C18.3909 4.76229 18.0973 3.84689 17.4237 3.11871L16.8732 3.62799L16.3226 4.13728C16.6924 4.53713 16.9205 5.09352 17.0419 6.06924C17.1652 7.06093 17.1666 8.36747 17.1666 10.2027H17.9166ZM9.20825 2.49996V1.74996C7.55174 1.74996 6.22789 1.7481 5.19134 1.89876C4.12685 2.05348 3.25737 2.38222 2.57611 3.11871L3.12668 3.62799L3.67726 4.13728C4.03943 3.74573 4.53136 3.51045 5.4071 3.38316C6.31079 3.25182 7.506 3.24996 9.20825 3.24996V2.49996ZM2.08325 10.2027H2.83325C2.83325 8.36747 2.83462 7.06093 2.95795 6.06924C3.07929 5.09352 3.30739 4.53713 3.67726 4.13728L3.12668 3.62799L2.57611 3.11871C1.90254 3.84689 1.60893 4.76229 1.46941 5.88412C1.33189 6.98999 1.33325 8.40677 1.33325 10.2027H2.08325ZM2.49992 6.66663V7.41663H17.4999V6.66663V5.91663H2.49992V6.66663Z\"\r\n fill=\"var(--color-icon, #4B5565)\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n\r\n {/* Always in DOM, just hidden by CSS */}\r\n <div class={`calendar-container ${!this.isCalendarShown ? 'hidden' : ''} ${this.dropdownAlignment}`}></div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import '../../global/global.css';\r\n\r\n.shortcut-container {\r\n display: flex;\r\n width: 100%;\r\n padding: var(--spacing-half) var(--spacing-1);\r\n align-items: center;\r\n gap: var(--spacing-none);\r\n border-radius: var(--rounded-none);\r\n cursor: pointer;\r\n}\r\n\r\n.shortcut {\r\n display: flex;\r\n padding: var(--spacing-2);\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n flex: 1 0 0;\r\n border-radius: var(--rounded-xs);\r\n}\r\n\r\n.shortcut.destructive:hover {\r\n background-color: var(--color-background-danger-subtlest, #fef1f2);\r\n}\r\n\r\n.shortcut.destructive:active {\r\n background-color: var(--color-background-danger-subtler, #fde3e5);\r\n}\r\n\r\n.label_div {\r\n flex-grow: 1;\r\n}\r\n\r\n.label {\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.label.destructive {\r\n color: var(--color-text-danger, #b51726);\r\n}\r\n\r\n.shortcut-icon {\r\n display: flex;\r\n justify-content: flex-end;\r\n color: var(--color-text, #4b5565);\r\n font-family: var(--Font-Family-Body, Sora);\r\n font-size: var(--Font-Size-T-xs, 12px);\r\n font-style: normal;\r\n font-weight: var(--Font-Weight-Regular, 400);\r\n line-height: var(--Font-Line-height-T-xs, 18px); /* 150% */\r\n letter-spacing: var(--Font-Letter-spacing-T-xs, 0px);\r\n}\r\n\r\n.icon{\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.icon svg {\r\n width: 1.25rem;\r\n height: 1.25rem;\r\n}\r\n\r\n.icon path[opacity]{\r\n opacity: 0;\r\n}\r\n\r\n.icon path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon path[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.disabled path[stroke],\r\n.icon.disabled.destructive path[stroke] {\r\n stroke: var(--color-icon-disabled, #cdd5df);\r\n}\r\n\r\n.icon.disabled path[fill],\r\n.icon.disabled.destructive path[fill] {\r\n fill: var(--color-icon-disabled, #cdd5df);\r\n}\r\n\r\n.icon.destructive path[stroke] {\r\n stroke: var(--color-icon-danger, #b51726);\r\n}\r\n\r\n.icon.destructive path[fill] {\r\n fill: var(--color-icon-danger, #b51726);\r\n}\r\n\r\ngb-checkbox {\r\n padding-top: 4px;\r\n padding-left: 7px;\r\n}\r\n\r\n.shortcut:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n.shortcut:active {\r\n background: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\n.shortcut.disabled {\r\n background-color: var(---color-background-card, #ffffff);\r\n color: var(--color-text-disabled, #cdd5df);\r\n pointer-events: none;\r\n}\r\n\r\n.shortcut.disabled .label,\r\n.shortcut.disabled .shortcut-icon,\r\n.shortcut.disabled gb-checkbox {\r\n color: var(--color-text-disabled, #cdd5df); /* Ensures all text/icons use the disabled color */\r\n}\r\n\r\n.shortcut.disabled .icon img {\r\n opacity: 0.5;\r\n stroke: var(--color-icon-disabled, #cdd5df); /* Reduce opacity for the icon in disabled state */\r\n}\r\n\r\n/* Optional: You can also change the checkbox appearance */\r\n.shortcut.disabled gb-checkbox {\r\n pointer-events: none;\r\n opacity: 0.5; /* Dim the checkbox when disabled */\r\n}\r\n","import { Component, Prop, h, getAssetPath, Element, State } from '@stencil/core';\r\nimport { StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-dropdown-items-with-shortcut',\r\n styleUrl: 'gb-dropdown-items-with-shortcut.css',\r\n shadow: true,\r\n})\r\nexport class GbDropdownShortcut {\r\n @Prop() icon: boolean = false;\r\n @Prop() iconSrc: string;\r\n @Prop() checkbox: boolean = false;\r\n @Prop() shortcut: boolean;\r\n @Prop() shortcutIcon: string = '';\r\n @Prop() label: string = '';\r\n @Prop() state: 'default' | 'disabled' = 'default';\r\n @Prop() destructive: boolean = false;\r\n @State() leadingIconSvg: string = '';\r\n @Element() el: HTMLElement;\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 // Parse SVG into DOM\r\n const parser = new DOMParser();\r\n const svgDoc = parser.parseFromString(svg, 'image/svg+xml');\r\n const svgElement = svgDoc.documentElement;\r\n\r\n // Select all path tags with an opacity attribute\r\n const pathsWithOpacity = svgElement.querySelectorAll('path[opacity]');\r\n\r\n pathsWithOpacity.forEach(path => {\r\n path.classList.add('has_opacity');\r\n });\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.iconSrc);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"shortcut-container\">\r\n <div class={`shortcut ${this.state === 'disabled' ? 'disabled' : ''} ${this.destructive ? 'destructive' : ''}`}>\r\n {this.icon && (\r\n <div class=\"icon_div\">\r\n <div class={`icon ${this.state === 'disabled' ? 'disabled' : ''} ${this.destructive ? 'destructive' : ''}`} innerHTML={this.leadingIconSvg}></div>\r\n </div>\r\n )}\r\n {this.checkbox && !this.icon && <gb-checkbox class=\"checkbox\" size=\"sm\" type=\"checkbox\" state={StateEnum.Default}></gb-checkbox>}\r\n <span class=\"label_div\">\r\n <p class={`label text-sm-medium ${this.destructive ? 'destructive' : ''}`}>{this.label}</p>\r\n </span>\r\n {this.shortcut && (\r\n <span class=\"shortcut-icon\">\r\n <slot>{this.shortcutIcon}</slot>\r\n </span>\r\n )}\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.export_dropdown{\r\n display: inline-flex;\r\n width: fit-content;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-none);\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: relative;\r\n z-index: 999;\r\n}\r\n\r\n.first_dropdown{\r\n position: absolute;\r\n top: 2rem;\r\n left: -10rem;\r\n z-index: 9999999;\r\n}\r\n\r\n.second_dropdown{\r\n position: absolute;\r\n top: 4rem;\r\n left: -10rem;\r\n z-index: 9999999;\r\n}","import { Component, Event, EventEmitter, h, Prop, State, Fragment, Element } from '@stencil/core';\r\nimport { StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-export-dropdown',\r\n styleUrl: 'gb-export-dropdown.css',\r\n shadow: true,\r\n})\r\nexport class GbExportDropdown {\r\n @Prop() state: StateEnum;\r\n @Prop() showEntireData: boolean = false;\r\n @State() showFirstSubDropdown: boolean = false;\r\n @State() showSecondSubDropdown: boolean = false;\r\n @Prop() pdfState: StateEnum = StateEnum.Default;\r\n @Prop() csvState: StateEnum = StateEnum.Default;\r\n @Event() exportClicked: EventEmitter<{ exportType: string; dataType: string }>;\r\n @Element() el: HTMLElement;\r\n\r\n async onExportClicked(exportType: string, dataType: string) {\r\n this.exportClicked.emit({ exportType, dataType });\r\n // console.log({ exportType, dataType });\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n <div class={`export_dropdown`}>\r\n <gb-export-dropdown-item\r\n type=\"pdf\"\r\n state={this.pdfState}\r\n onMouseOver={() => {\r\n if (this.pdfState === StateEnum.Default) {\r\n this.showFirstSubDropdown = true;\r\n }\r\n }}\r\n onMouseOut={() => (this.showFirstSubDropdown = false)}\r\n ></gb-export-dropdown-item>\r\n <gb-export-dropdown-item\r\n type=\"csv\"\r\n state={this.csvState}\r\n onMouseOver={() => {\r\n if (this.csvState === StateEnum.Default) {\r\n this.showSecondSubDropdown = true;\r\n }\r\n }}\r\n onMouseOut={() => (this.showSecondSubDropdown = false)}\r\n ></gb-export-dropdown-item>\r\n </div>\r\n {this.showFirstSubDropdown && (\r\n <gb-export-sub-dropdown\r\n class={`first_dropdown`}\r\n show-entire-data={this.showEntireData}\r\n onMouseOver={() => (this.showFirstSubDropdown = true)}\r\n onMouseOut={() => (this.showFirstSubDropdown = false)}\r\n >\r\n <p slot=\"label_one\" onClick={() => this.onExportClicked('pdf', 'entire_data')}>\r\n Entire Data\r\n </p>\r\n <p slot=\"label_two\" onClick={() => this.onExportClicked('pdf', 'data_on_view')}>\r\n Data on view\r\n </p>\r\n <p slot=\"label_three\" onClick={() => this.onExportClicked('pdf', 'filtered_data')}>\r\n Filtered Data\r\n </p>\r\n </gb-export-sub-dropdown>\r\n )}\r\n {this.showSecondSubDropdown && (\r\n <gb-export-sub-dropdown\r\n class={`second_dropdown`}\r\n show-entire-data={this.showEntireData}\r\n onMouseOver={() => (this.showSecondSubDropdown = true)}\r\n onMouseOut={() => (this.showSecondSubDropdown = false)}\r\n >\r\n <p slot=\"label_one\" onClick={() => this.onExportClicked('csv', 'entire_data')}>\r\n Entire Data\r\n </p>\r\n <p slot=\"label_two\" onClick={() => this.onExportClicked('csv', 'data_on_view')}>\r\n Data on view\r\n </p>\r\n <p slot=\"label_three\" onClick={() => this.onExportClicked('csv', 'filtered_data')}>\r\n Filtered Data\r\n </p>\r\n </gb-export-sub-dropdown>\r\n )}\r\n </>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.export_container{\r\n display: flex;\r\n width: 11rem;\r\n padding: var(--spacing-1);\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n border-radius: var(--rounded-none);\r\n}\r\n\r\n.export_container.disabled{\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\n.content{\r\n display: flex;\r\n min-height: 2.5rem;\r\n padding: var(--spacing-none) var(--spacing-2);\r\n justify-content: space-between;\r\n align-items: center;\r\n flex: 1 0 0;\r\n border-radius: var(--rounded-xs);\r\n cursor: pointer;\r\n}\r\n\r\n.content:hover{\r\n background-color: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\n.content:active{\r\n background-color: var(--color-background-gray-subtle, #E3E8EF);\r\n}\r\n\r\n.wrapper{\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n flex: 1 0 0;\r\n}\r\n\r\n.container{\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.icon,\r\n.arrow{\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.pdf_svg path[stroke]{\r\n stroke: var(--color-icon-brandRed, #E21B2E);\r\n}\r\n\r\n.csv_svg path[stroke]{\r\n stroke: var(--color-icon-success, #079455);\r\n}\r\n\r\n.pdf_svg path[fill]{\r\n fill: var(--color-icon-brandRed, #E21B2E);\r\n}\r\n\r\n.csv_svg path[fill]{\r\n fill: var(--color-icon-success, #079455);\r\n}\r\n\r\n.pdf_svg.disabled path[stroke]{\r\n stroke: var(--color-icon-disabled, #CDD5DF);\r\n}\r\n\r\n.csv_svg.disabled path[stroke]{\r\n stroke: var(--color-icon-disabled, #CDD5DF);\r\n}\r\n\r\n.pdf_svg.disabled path[fill]{\r\n fill: var(--color-icon-disabled, #CDD5DF);\r\n}\r\n\r\n.csv_svg.disabled path[fill]{\r\n fill: var(--color-icon-disabled, #CDD5DF);\r\n}\r\n\r\n.text{\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.text.disabled{\r\n color: var(--color-text-disabled, #CDD5DF);\r\n}\r\n\r\n.arrow_svg.disabled path{\r\n stroke: var(--color-icon-disabled, #CDD5DF);\r\n}","import { Component, Element, h, Prop } from \"@stencil/core\";\r\nimport { StateEnum } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-export-dropdown-item',\r\n styleUrl: 'gb-export-dropdown-item.css',\r\n shadow: true\r\n})\r\nexport class GbExportDropdownItem {\r\n @Prop() icon: boolean = false;\r\n @Prop() state: StateEnum = StateEnum.Default;\r\n @Prop() type: 'pdf' | 'csv';\r\n @Element() el: HTMLElement;\r\n\r\n render() {\r\n return (\r\n <div class={`export_container ${this.state === 'disabled' ? 'disabled' : ''}`}>\r\n <div class={`content ${this.state === 'disabled' ? 'disabled' : ''}`}>\r\n <div class={`wrapper`}>\r\n <div class={`container`}>\r\n <div class={`icon`}>\r\n {this.type === 'pdf' ? (\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"20\"\r\n height=\"20\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"none\"\r\n class={`pdf_svg ${this.type} ${this.state === 'disabled' ? 'disabled' : ''}`}\r\n >\r\n <path\r\n opacity=\"0.4\"\r\n d=\"M2.50117 9.15797C2.78483 8.46126 4.09165 7.08156 7.08171 7.08156C7.33288 7.08156 7.99177 6.82886 7.95767 5.45969C7.94376 4.22219 8.39482 1.77401 10.2871 1.66843C10.662 1.66663 11.0697 1.66663 11.5152 1.66663C13.0144 1.66663 13.764 1.66663 14.3627 1.87679C15.3252 2.21467 16.0844 2.92921 16.4434 3.83508C16.6667 4.39856 16.6667 5.10408 16.6667 6.51511V14.1666C16.6667 14.9411 16.6667 15.3283 16.6026 15.6503C16.3396 16.9726 15.3059 18.0062 13.9836 18.2692C13.6616 18.3333 13.2744 18.3333 12.5 18.3333H8.93939C6.22172 18.3333 4.86289 18.3333 3.91922 17.6684C3.64885 17.4779 3.40882 17.252 3.20642 16.9976C2.5 16.1094 2.5 14.8305 2.5 12.2727V10.1515C2.5 9.79565 2.5 9.46547 2.50117 9.15797Z\"\r\n fill=\"var(--color-icon-brandRed, #E21B2E)\"\r\n />\r\n <path\r\n d=\"M5.83333 15V12.9166M5.83333 12.9166V11.6666C5.83333 11.2738 5.83333 11.0774 5.96147 10.9553C6.08961 10.8333 6.29585 10.8333 6.70833 10.8333H7.29167C7.89573 10.8333 8.38542 11.2997 8.38542 11.875C8.38542 12.4503 7.89573 12.9166 7.29167 12.9166H5.83333ZM17.5 10.8333H16.4062C15.7188 10.8333 15.3751 10.8333 15.1615 11.0367C14.9479 11.2401 14.9479 11.5675 14.9479 12.2222V12.9166M14.9479 15V12.9166M14.9479 12.9166H16.7708M12.5 18.3333H8.93939C6.22172 18.3333 4.86289 18.3333 3.91922 17.6684C3.64885 17.4779 3.40882 17.252 3.20642 16.9976C2.5 16.1094 2.5 14.8305 2.5 12.2727V10.1515C2.5 7.68217 2.5 6.44751 2.89078 5.46142C3.51901 3.87614 4.84761 2.6257 6.53197 2.03442C7.57969 1.66663 8.89151 1.66663 11.5152 1.66663C13.0144 1.66663 13.764 1.66663 14.3627 1.87679C15.3252 2.21467 16.0844 2.92921 16.4434 3.83508C16.6667 4.39856 16.6667 5.10408 16.6667 6.51511V8.33329M2.5 9.99996C2.5 8.46584 3.74365 7.22218 5.27778 7.22218C5.8326 7.22218 6.4867 7.3194 7.02614 7.17486C7.50543 7.04643 7.8798 6.67206 8.00823 6.19276C8.15277 5.65332 8.05556 4.99922 8.05556 4.4444C8.05556 2.91028 9.29921 1.66663 10.8333 1.66663M13.125 12.9166C13.125 14.0672 12.1456 15 10.9375 15C10.6649 15 10.5286 15 10.4271 14.9441C10.184 14.8105 10.2083 14.5399 10.2083 14.3055V11.5277C10.2083 11.2933 10.184 11.0228 10.4271 10.8891C10.5286 10.8333 10.6649 10.8333 10.9375 10.8333C12.1456 10.8333 13.125 11.766 13.125 12.9166Z\"\r\n stroke=\"var(--color-icon-brandRed, #E21B2E)\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n ) : (\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"20\"\r\n height=\"20\"\r\n viewBox=\"0 0 20 20\"\r\n fill=\"none\"\r\n class={`csv_svg ${this.type} ${this.state === 'disabled' ? 'disabled' : ''}`}\r\n >\r\n <path\r\n opacity=\"0.4\"\r\n d=\"M2.50141 9.15797C2.78507 8.46126 4.0919 7.08156 7.08195 7.08156C7.33312 7.08156 7.99201 6.82886 7.95791 5.45969C7.94401 4.22219 8.39506 1.77401 10.2873 1.66843C10.6623 1.66663 11.0699 1.66663 11.5154 1.66663C13.0146 1.66663 13.7642 1.66663 14.3629 1.87679C15.3254 2.21467 16.0846 2.92921 16.4436 3.83508C16.6669 4.39856 16.6669 5.10408 16.6669 6.51511V14.1666C16.6669 14.9411 16.6669 15.3283 16.6029 15.6503C16.3398 16.9726 15.3062 18.0062 13.9839 18.2692C13.6619 18.3333 13.2747 18.3333 12.5002 18.3333H8.93964C6.22197 18.3333 4.86313 18.3333 3.91947 17.6684C3.64909 17.4779 3.40906 17.252 3.20666 16.9976C2.50024 16.1094 2.50024 14.8305 2.50024 12.2727V10.1515C2.50024 9.79565 2.50024 9.46547 2.50141 9.15797Z\"\r\n fill=\"var(--color-icon-success, #079455)\"\r\n />\r\n <path\r\n d=\"M7.82922 11.7147C7.84826 12.1285 8.19913 12.4485 8.6129 12.4294C9.02668 12.4104 9.34668 12.0595 9.32764 11.6458L7.82922 11.7147ZM9.32764 14.1875C9.34668 13.7737 9.02668 13.4229 8.6129 13.4038C8.19913 13.3848 7.84826 13.7048 7.82922 14.1185L9.32764 14.1875ZM18.2025 11.0961C18.3476 10.7081 18.1507 10.276 17.7628 10.1308C17.3748 9.98571 16.9427 10.1826 16.7975 10.5705L18.2025 11.0961ZM16.2804 14.0935L15.5779 13.8307L16.2804 14.0935ZM15.2442 14.0935L15.9467 13.8307L15.9467 13.8307L15.2442 14.0935ZM14.7271 10.5705C14.582 10.1826 14.1498 9.98571 13.7619 10.1308C13.3739 10.276 13.1771 10.7081 13.3222 11.0961L14.7271 10.5705ZM12.2678 11.5833C12.682 11.5833 13.0178 11.2475 13.0178 10.8333C13.0178 10.4191 12.682 10.0833 12.2678 10.0833V11.5833ZM10.5747 14.25C10.1605 14.25 9.82472 14.5857 9.82472 15C9.82472 15.4142 10.1605 15.75 10.5747 15.75V14.25ZM12.0709 14.9471L11.7841 14.2541H11.7841L12.0709 14.9471ZM12.0709 12.9695L12.3577 12.2765V12.2765L12.0709 12.9695ZM10.8439 12.8638L10.5571 13.5568H10.5571L10.8439 12.8638ZM10.8439 10.8862L10.5571 10.1932L10.8439 10.8862ZM12.5 13.943L11.75 13.9428V13.943H12.5ZM12.5 13.9736H11.75V13.9738L12.5 13.9736ZM12.5 19.0833C12.9142 19.0833 13.25 18.7475 13.25 18.3333C13.25 17.9191 12.9142 17.5833 12.5 17.5833V19.0833ZM15.9167 8.33329C15.9167 8.74751 16.2525 9.08329 16.6667 9.08329C17.0809 9.08329 17.4167 8.74751 17.4167 8.33329H15.9167ZM14.3627 1.87679L14.6111 1.16913V1.16913L14.3627 1.87679ZM16.4434 3.83508L17.1406 3.55877L16.4434 3.83508ZM2.89078 5.46142L3.58803 5.73773L2.89078 5.46142ZM6.53197 2.03442L6.78039 2.74208L6.78039 2.74208L6.53197 2.03442ZM3.91922 17.6684L3.48726 18.2815H3.48726L3.91922 17.6684ZM3.20642 16.9976L3.79339 16.5307H3.79339L3.20642 16.9976ZM1.75 9.99996C1.75 10.4142 2.08579 10.75 2.5 10.75C2.91421 10.75 3.25 10.4142 3.25 9.99996H1.75ZM5.27778 7.22218V7.97218H5.27778L5.27778 7.22218ZM8.00823 6.19276L8.73267 6.38688L8.00823 6.19276ZM7.02614 7.17486L7.22025 7.8993L7.22025 7.8993L7.02614 7.17486ZM10.8333 2.41663C11.2475 2.41663 11.5833 2.08084 11.5833 1.66663C11.5833 1.25241 11.2475 0.916626 10.8333 0.916626V2.41663ZM6.58333 13.6111V12.2222H5.08333V13.6111H6.58333ZM7.20935 11.5833C7.40441 11.5833 7.55042 11.585 7.67255 11.5962C7.79576 11.6076 7.84664 11.6251 7.86008 11.6311C7.86341 11.6326 7.85512 11.6293 7.84214 11.6181C7.82841 11.6064 7.81787 11.5931 7.81162 11.5826C7.80017 11.5633 7.82342 11.5885 7.82922 11.7147L9.32764 11.6458C9.31443 11.3586 9.25281 11.0713 9.10081 10.8158C8.94191 10.5486 8.71717 10.3715 8.47384 10.2624C8.05559 10.0749 7.54278 10.0833 7.20935 10.0833V11.5833ZM7.20935 15.75C7.54278 15.75 8.05558 15.7584 8.47384 15.5708C8.71717 15.4617 8.9419 15.2847 9.10081 15.0175C9.25281 14.7619 9.31443 14.4746 9.32764 14.1875L7.82922 14.1185C7.82342 14.2447 7.80017 14.2699 7.81162 14.2507C7.81787 14.2402 7.82841 14.2269 7.84214 14.2151C7.85512 14.204 7.86341 14.2006 7.86008 14.2021C7.84663 14.2082 7.79576 14.2257 7.67255 14.237C7.55042 14.2482 7.40441 14.25 7.20935 14.25V15.75ZM7.20935 10.0833C6.64056 10.0833 5.97423 10.1291 5.53243 10.5988C5.30662 10.8388 5.20075 11.1246 5.1472 11.3897C5.09514 11.6474 5.08333 11.9334 5.08333 12.2222H6.58333C6.58333 11.9575 6.59599 11.7932 6.6175 11.6867C6.63753 11.5876 6.65436 11.5953 6.62501 11.6265C6.59327 11.6603 6.57962 11.6457 6.66952 11.6244C6.76921 11.6007 6.93438 11.5833 7.20935 11.5833V10.0833ZM7.20935 14.25C6.93438 14.25 6.76921 14.2325 6.66952 14.2089C6.57962 14.1875 6.59327 14.173 6.62501 14.2067C6.65436 14.2379 6.63753 14.2457 6.6175 14.1465C6.59599 14.0401 6.58333 13.8758 6.58333 13.6111H5.08333C5.08333 13.8998 5.09514 14.1859 5.1472 14.4436C5.20075 14.7086 5.30662 14.9944 5.53243 15.2345C5.97423 15.7042 6.64056 15.75 7.20935 15.75V14.25ZM16.7975 10.5705L15.5779 13.8307L16.9829 14.3563L18.2025 11.0961L16.7975 10.5705ZM15.9467 13.8307L14.7271 10.5705L13.3222 11.0961L14.5418 14.3563L15.9467 13.8307ZM15.5779 13.8307C15.5206 13.9841 15.4742 14.108 15.4326 14.2123C15.3904 14.3182 15.3606 14.3847 15.3389 14.4262C15.3135 14.4749 15.3201 14.4479 15.3673 14.4025C15.3951 14.3758 15.4436 14.3363 15.515 14.3036C15.5898 14.2694 15.6746 14.2499 15.7623 14.2499V15.7499C16.0474 15.7499 16.2654 15.6199 16.4067 15.4841C16.5325 15.3632 16.6151 15.2229 16.6685 15.1205C16.7742 14.918 16.8777 14.6374 16.9829 14.3563L15.5779 13.8307ZM14.5418 14.3563C14.6469 14.6374 14.7504 14.918 14.8561 15.1205C14.9096 15.2228 14.9922 15.3632 15.118 15.4841C15.2593 15.6199 15.4772 15.7499 15.7623 15.7499V14.2499C15.8501 14.2499 15.9348 14.2694 16.0097 14.3036C16.0811 14.3363 16.1296 14.3758 16.1573 14.4025C16.2045 14.4479 16.2112 14.4749 16.1858 14.4262C16.1641 14.3847 16.1343 14.3182 16.092 14.2123C16.0505 14.108 16.0041 13.9841 15.9467 13.8307L14.5418 14.3563ZM12.2678 10.0833H11.4574V11.5833H12.2678V10.0833ZM11.4574 14.25H10.5747V15.75H11.4574V14.25ZM11.4574 15.75C11.6091 15.75 11.7604 15.7504 11.8887 15.7416C12.0238 15.7324 12.1873 15.7106 12.3577 15.6401L11.7841 14.2541C11.8268 14.2364 11.8455 14.2411 11.7867 14.2451C11.7212 14.2496 11.6296 14.25 11.4574 14.25V15.75ZM11.4574 13.6666C11.6296 13.6666 11.7212 13.667 11.7867 13.6715C11.8455 13.6755 11.8268 13.6802 11.7841 13.6625L12.3577 12.2765C12.1873 12.206 12.0238 12.1842 11.8887 12.175C11.7604 12.1662 11.6091 12.1666 11.4574 12.1666V13.6666ZM11.4574 12.1666C11.2852 12.1666 11.1936 12.1662 11.1281 12.1618C11.0693 12.1578 11.088 12.1531 11.1307 12.1708L10.5571 13.5568C10.7275 13.6273 10.891 13.6491 11.0261 13.6583C11.1544 13.667 11.3057 13.6666 11.4574 13.6666V12.1666ZM11.4574 10.0833C11.3057 10.0833 11.1544 10.0829 11.0261 10.0917C10.891 10.1009 10.7275 10.1226 10.5571 10.1932L11.1307 11.5792C11.088 11.5968 11.0693 11.5922 11.1281 11.5882C11.1936 11.5837 11.2852 11.5833 11.4574 11.5833V10.0833ZM9.66479 11.875C9.66479 12.0361 9.65694 12.3587 9.74777 12.6618C9.85618 13.0235 10.1032 13.3689 10.5571 13.5568L11.1307 12.1708C11.1226 12.1674 11.1414 12.1745 11.1638 12.2006C11.1842 12.2246 11.1877 12.2414 11.1846 12.2312C11.1805 12.2172 11.1733 12.1841 11.1691 12.1185C11.1647 12.0509 11.1648 11.9785 11.1648 11.875H9.66479ZM11.1648 11.875C11.1648 11.7714 11.1647 11.699 11.1691 11.6314C11.1733 11.5658 11.1805 11.5327 11.1846 11.5188C11.1877 11.5085 11.1842 11.5254 11.1638 11.5493C11.1414 11.5754 11.1226 11.5825 11.1307 11.5792L10.5571 10.1932C10.1032 10.381 9.85618 10.7265 9.74777 11.0882C9.65694 11.3913 9.66479 11.7138 9.66479 11.875H11.1648ZM13.25 13.9431C13.25 13.779 13.2563 13.4602 13.163 13.1583C13.0522 12.7998 12.8045 12.4614 12.3577 12.2765L11.7841 13.6625C11.7923 13.6659 11.7739 13.659 11.7518 13.6335C11.7314 13.6099 11.7273 13.5928 11.7299 13.6013C11.7337 13.6135 11.7408 13.6446 11.7452 13.7075C11.7497 13.7719 11.75 13.8428 11.75 13.9428L13.25 13.9431ZM11.75 13.9738C11.75 14.0738 11.7497 14.1446 11.7452 14.2091C11.7408 14.272 11.7337 14.3031 11.7299 14.3153C11.7273 14.3238 11.7314 14.3067 11.7518 14.2831C11.7739 14.2575 11.7923 14.2507 11.7841 14.2541L12.3577 15.6401C12.8045 15.4552 13.0522 15.1167 13.163 14.7583C13.2563 14.4564 13.25 14.1376 13.25 13.9735L11.75 13.9738ZM12.5 17.5833H8.93939V19.0833H12.5V17.5833ZM3.25 12.2727V10.1515H1.75V12.2727H3.25ZM15.9167 6.51511V8.33329H17.4167V6.51511H15.9167ZM11.5152 2.41663C13.0778 2.41663 13.6667 2.42733 14.1143 2.58446L14.6111 1.16913C13.8613 0.905919 12.9509 0.916626 11.5152 0.916626V2.41663ZM17.4167 6.51511C17.4167 5.81948 17.417 5.2615 17.3871 4.8079C17.3568 4.34761 17.2929 3.94316 17.1406 3.55877L15.7461 4.11139C15.8171 4.29048 15.8649 4.52053 15.8904 4.90662C15.9163 5.29941 15.9167 5.79971 15.9167 6.51511H17.4167ZM14.1143 2.58446C14.8827 2.8542 15.4714 3.41808 15.7461 4.11139L17.1406 3.55877C16.6974 2.44033 15.7677 1.57513 14.6111 1.16913L14.1143 2.58446ZM3.25 10.1515C3.25 8.90693 3.25038 8.00979 3.29722 7.2996C3.34362 6.59611 3.43332 6.12813 3.58803 5.73773L2.19354 5.18511C1.95747 5.7808 1.85177 6.42319 1.80047 7.20088C1.74962 7.97187 1.75 8.92671 1.75 10.1515H3.25ZM11.5152 0.916626C8.95498 0.916626 7.48237 0.905919 6.28355 1.32676L6.78039 2.74208C7.67701 2.42733 8.82804 2.41663 11.5152 2.41663V0.916626ZM3.58803 5.73773C4.13202 4.36502 5.29011 3.26523 6.78039 2.74208L6.28355 1.32676C4.40512 1.98616 2.906 3.38727 2.19354 5.18511L3.58803 5.73773ZM8.93939 17.5833C7.56444 17.5833 6.59125 17.5823 5.8418 17.5042C5.10432 17.4274 4.674 17.2828 4.35119 17.0553L3.48726 18.2815C4.10811 18.719 4.82904 18.9068 5.68631 18.9961C6.53161 19.0842 7.59668 19.0833 8.93939 19.0833V17.5833ZM1.75 12.2727C1.75 13.5334 1.74879 14.5444 1.84344 15.3489C1.94017 16.171 2.1452 16.8682 2.61944 17.4644L3.79339 16.5307C3.56122 16.2388 3.41304 15.8525 3.33316 15.1736C3.25121 14.4771 3.25 13.5697 3.25 12.2727H1.75ZM4.35119 17.0553C4.13817 16.9052 3.95058 16.7283 3.79339 16.5307L2.61944 17.4644C2.86705 17.7757 3.15953 18.0506 3.48726 18.2815L4.35119 17.0553ZM3.25 9.99996C3.25 8.88005 4.15787 7.97218 5.27778 7.97218V6.47218C3.32944 6.47218 1.75 8.05162 1.75 9.99996H3.25ZM7.28379 5.99865C7.22471 6.21912 7.0525 6.39134 6.83202 6.45041L7.22025 7.8993C7.95836 7.70152 8.5349 7.12499 8.73267 6.38688L7.28379 5.99865ZM10.8333 0.916626C8.885 0.916626 7.30556 2.49607 7.30556 4.4444H8.80556C8.80556 3.32449 9.71342 2.41663 10.8333 2.41663V0.916626ZM7.30556 4.4444C7.30556 4.60242 7.31245 4.76305 7.31929 4.91055C7.32638 5.06331 7.33339 5.20186 7.33626 5.33992C7.34208 5.62051 7.32806 5.83341 7.28379 5.99865L8.73267 6.38688C8.83294 6.01267 8.84258 5.62881 8.83593 5.30878C8.83257 5.14654 8.82431 4.98381 8.81768 4.84103C8.81081 4.69299 8.80556 4.56379 8.80556 4.4444H7.30556ZM5.27778 7.97218C5.39717 7.97218 5.52637 7.97744 5.67441 7.98431C5.81719 7.99093 5.97991 7.99919 6.14215 8.00256C6.46219 8.00921 6.84605 7.99957 7.22025 7.8993L6.83202 6.45041C6.66679 6.49469 6.45388 6.50871 6.1733 6.50288C6.03523 6.50002 5.89669 6.49301 5.74392 6.48592C5.59642 6.47908 5.4358 6.47218 5.27778 6.47218L5.27778 7.97218ZM13.25 13.9736V13.943H11.75V13.9736H13.25Z\"\r\n fill=\"var(--color-icon-success, #079455)\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n <div class={`text ${this.state === 'disabled' ? 'disabled' : ''}`}>{this.type === 'pdf' ? <p class=\"text-sm-medium\">Export as PDF</p> : <p class=\"text-sm-medium\">Export as CSV</p>}</div>\r\n </div>\r\n <div class=\"arrow\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" class={`arrow_svg ${this.state === 'disabled' ? 'disabled' : ''}`}>\r\n <path\r\n d=\"M6.75004 4.5C6.75004 4.5 11.25 7.8142 11.25 9.00004C11.25 10.1859 6.75 13.5 6.75 13.5\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.sub_dropdown_container{\r\n display: flex;\r\n padding: var(--spacing-half) var(--spacing-none);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n width: 10.125rem;\r\n gap: var(--spacing-none);\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}\r\n\r\n::slotted([slot=\"label_one\"]),\r\n::slotted([slot=\"label_two\"]),\r\n::slotted([slot=\"label_three\"]) {\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n::slotted([slot=\"label\"].disabled),\r\n::slotted([slot=\"label_two\"].disabled),\r\n::slotted([slot=\"label_three\"].disabled) {\r\n color: var(--color-text-disabled, #CDD5DF);\r\n}","import { Component, Element, h, Prop } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: 'gb-export-sub-dropdown',\r\n styleUrl: 'gb-export-sub-dropdown.css',\r\n shadow: true,\r\n})\r\nexport class GbExportSubDropdown {\r\n @Prop() showEntireData: boolean = false;\r\n @Element() el: HTMLElement;\r\n\r\n componentDidLoad() {\r\n const labelOneSlot = this.el.querySelector('[slot=\"label_one\"]');\r\n const labelTwoSlot = this.el.querySelector('[slot=\"label_two\"]');\r\n const labelThreeSlot = this.el.querySelector('[slot=\"label_three\"]');\r\n\r\n if (labelOneSlot) {\r\n labelOneSlot.classList.add('text-sm-medium');\r\n labelTwoSlot.classList.add('text-sm-medium');\r\n labelThreeSlot.classList.add('text-sm-medium');\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`sub_dropdown_container`}>\r\n {this.showEntireData && (\r\n <gb-export-sub-dropdown-item icon=\"assets/database.svg\">\r\n <slot name=\"label_one\" slot=\"label\"></slot>\r\n </gb-export-sub-dropdown-item>\r\n )}\r\n <gb-export-sub-dropdown-item icon=\"assets/laptop_gray.svg\">\r\n <slot name=\"label_two\" slot=\"label\"></slot>\r\n </gb-export-sub-dropdown-item>\r\n <gb-export-sub-dropdown-item icon=\"assets/filter-horizontal.svg\">\r\n <slot name=\"label_three\" slot=\"label\"></slot>\r\n </gb-export-sub-dropdown-item>\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n:host{\r\n width: 100%;\r\n}\r\n\r\n.sub_dropdown_div{\r\n display: flex;\r\n padding: var(--spacing-1);\r\n align-items: center;\r\n}\r\n\r\n.sub_dropdown_div.disabled{\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\n.content{\r\n display: flex;\r\n width: 100%;\r\n padding: var(--spacing-2);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n flex: 1 0 0;\r\n border-radius: var(--rounded-xs);\r\n cursor: pointer;\r\n}\r\n\r\n.content:hover{\r\n background-color: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\n.content:active{\r\n background-color: var(--color-background-gray-subtle, #E3E8EF);\r\n}\r\n\r\n.icon{\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.text_and_suppporting_text{\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n align-self: stretch;\r\n}\r\n\r\n::slotted([slot=\"label\"]) {\r\n color: var(--color-text, #4B5565) !important;\r\n}\r\n\r\n::slotted([slot=\"label\"].disabled) {\r\n color: var(--color-text-disabled, #CDD5DF) !important;\r\n}","import { Component, Element, getAssetPath, h, Prop, State } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: 'gb-export-sub-dropdown-item',\r\n styleUrl: 'gb-export-sub-dropdown-item.css',\r\n shadow: true,\r\n})\r\nexport class GbExportSubDropdownItem {\r\n @Prop() icon: string = '';\r\n @Prop() state: 'default' | 'disabled';\r\n @State() leadingIconSvg: string = '';\r\n @Element() el: HTMLElement;\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 componentDidLoad() {\r\n const labelSlot = this.el.querySelector('[slot=\"label\"]');\r\n\r\n if (labelSlot) {\r\n if (this.state === 'disabled') {\r\n labelSlot.classList.add('disabled');\r\n }\r\n\r\n labelSlot.classList.add('text-sm-medium');\r\n }\r\n\r\n this.loadIcon(this.icon)\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`sub_dropdown_div ${this.state === 'disabled' ? 'disabled' : ''}`}>\r\n <div class={`content`}>\r\n <div class={`text_and_suppporting_text`}>\r\n <div class={`icon ${this.state}`} innerHTML={this.leadingIconSvg}></div>\r\n <div class={`text`}>\r\n <slot name=\"label\"></slot>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}","@import '../../global/global.css';\r\n\r\n.filter_button_div{\r\n width: fit-content;\r\n position: relative;\r\n}\r\n\r\n.badge.applied{\r\n position: absolute;\r\n top: 0.5rem;\r\n right: -0.8rem;\r\n}","import { Component, Element, Prop, h } from '@stencil/core';\r\nimport { StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-filter-button',\r\n styleUrl: 'gb-filter-button.css',\r\n shadow: true,\r\n})\r\nexport class GbFilterButton {\r\n @Prop() state: StateType;\r\n @Prop() iconOnly: boolean = false;\r\n @Element() el: HTMLElement;\r\n\r\n componentDidLoad() {\r\n const countSlot = this.el.querySelector('[slot=\"filter_count\"]');\r\n\r\n if(countSlot) {\r\n countSlot.classList.add('text-xs-medium');\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`filter_button_div`}>\r\n <gb-button\r\n size=\"md\"\r\n state={this.state === 'disabled' ? 'disabled' : 'default'}\r\n hierarchy=\"secondary_gray\"\r\n icon={this.iconOnly ? 'only' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/filter-horizontal-stroke.svg\"\r\n >\r\n <p>Filter</p>\r\n </gb-button>\r\n {this.state === 'applied' && (\r\n <gb-badge size=\"sm\" type=\"pill_color\" color=\"error\" icon=\"false\" class={`badge ${this.state}`}>\r\n <slot name=\"filter_count\"></slot>\r\n </gb-badge>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n","@import '../../global/global.css';\r\n\r\n.header_div {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n width: 100%;\r\n background: var(--color-surface, #ffffff);\r\n}\r\n\r\n.header_div.border {\r\n border-bottom: 0.7px solid var(--color-border-subtle, #cdd5df);\r\n}\r\n\r\n.content {\r\n display: flex;\r\n height: 4.5rem;\r\n padding: 0rem 2rem;\r\n justify-content: space-between;\r\n align-items: center;\r\n align-self: stretch;\r\n}\r\n\r\n.logo {\r\n display: block;\r\n}\r\n\r\n.icon_logo {\r\n display: none;\r\n}\r\n\r\n.header_logo {\r\n display: flex;\r\n align-items: center;\r\n gap: 0.69rem;\r\n}\r\n\r\n.inner_content {\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n flex: 1 0 0;\r\n position: relative;\r\n}\r\n\r\n.action {\r\n display: flex;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.search {\r\n width: 20rem;\r\n}\r\n\r\n.help,\r\n.notification {\r\n position: relative;\r\n}\r\n\r\n.avatar_dropdown {\r\n position: absolute;\r\n top: 110%;\r\n right: 0;\r\n z-index: 9999;\r\n}\r\n\r\n::slotted([slot='name'] p) {\r\n color: var(--color-text, #4b5565);\r\n width: 100%;\r\n overflow: hidden;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n}\r\n\r\n::slotted([slot='supporting_text'] p) {\r\n color: var(--color-text-subtle, #697586);\r\n width: 100%;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n}\r\n\r\n.notification_dropdown {\r\n position: absolute;\r\n top: 110%;\r\n right: 0;\r\n z-index: 9999;\r\n}\r\n\r\n.help_dropdown {\r\n position: absolute;\r\n top: 110%;\r\n right: 0;\r\n z-index: 9999;\r\n}\r\n\r\n@media (max-width: 440px) {\r\n .content {\r\n padding: var(--spacing-none) var(--spacing-5);\r\n }\r\n}\r\n\r\n@media (max-width: 450px) {\r\n .logo {\r\n display: none;\r\n }\r\n\r\n .icon_logo {\r\n display: block;\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, getAssetPath, h, Prop, State, Listen } from '@stencil/core';\r\nimport { ColorTypes, DropdownListGroup, DropdownRoles, Notification, StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-header',\r\n styleUrl: 'gb-header.css',\r\n shadow: true,\r\n})\r\nexport class GbHeader {\r\n @Prop() state: StateEnum;\r\n @Prop() showIndicator: boolean = false;\r\n @Prop() text: boolean = true;\r\n @Prop() placeholder: boolean = false;\r\n @Prop() color: ColorTypes = 'blue';\r\n @Prop() showBorder: boolean = true;\r\n @Prop() showNotification: boolean = false;\r\n @Prop() showHelp: boolean = false;\r\n @Prop() showLogo: boolean = false;\r\n @Prop() logo: string = '';\r\n @Prop() showSearch: boolean = false;\r\n @Prop() inputPlaceholder: string = '';\r\n @Prop() inputIcon: string = '';\r\n @Prop() avatarDropdownType: 'simple' | 'complex' = 'simple';\r\n @Prop() listGroupOne: DropdownListGroup[] = [\r\n // { label: 'View Profile', icon: 'assets/user.svg', shortcut: 'Ctrl K + P' },\r\n // { label: 'Documentation', icon: 'assets/book-open-02.svg', shortcut: 'Ctrl + T' },\r\n // { label: 'Support', icon: 'assets/customer-support.svg', shortcut: 'Ctrl + C' },\r\n ];\r\n @Prop() listGroupTwo: DropdownListGroup[] = [\r\n // { label: 'Configuration', icon: 'assets/user.svg', shortcut: 'Ctrl + S' },\r\n // { label: 'Team', icon: 'assets/book-open-02.svg', shortcut: 'Ctrl K + T' },\r\n // { label: 'Invite members', icon: 'assets/customer-support.svg', shortcut: 'Ctrl + I' },\r\n ];\r\n @Prop() showThemeTab: boolean = true;\r\n @Prop() showProfile: boolean = false;\r\n @Prop() showRoles: boolean = false;\r\n @Prop() roles: DropdownRoles[] = [\r\n // {\r\n // badgeLabel: 'Initiator',\r\n // badgeColor: 'information',\r\n // badgeType: 'badge_color',\r\n // },\r\n // {\r\n // badgeLabel: 'Authorizer',\r\n // badgeColor: 'success',\r\n // badgeType: 'badge_color',\r\n // },\r\n // {\r\n // badgeLabel: 'Viewer',\r\n // badgeColor: 'gray',\r\n // badgeType: 'badge_color',\r\n // },\r\n ];\r\n @Prop() showLogOut: boolean = false;\r\n @Prop() showLogError: boolean = false;\r\n @Prop() notificationState: 'empty' | 'notification_dropdown';\r\n @Prop({ mutable: true }) notifications: Notification[] = [\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n ];\r\n @State() avatarDropdownShown: boolean = false;\r\n @State() notificationDropdownShown: boolean = false;\r\n @State() helpDropdownShown: boolean = false;\r\n @State() initials: string = '';\r\n @Element() el: HTMLElement;\r\n @Event() navBarItemClicked: EventEmitter<string>;\r\n @Event() menuClicked: EventEmitter<void>;\r\n @Event() inputValueChanged: EventEmitter<string>;\r\n @Event() helpItemClicked: EventEmitter<string>;\r\n @Event() themeTabClicked: EventEmitter<string>;\r\n @Event() avatarDropdownItemClicked: EventEmitter<string>;\r\n\r\n avatarDropdown!: HTMLElement;\r\n notificationDropdown!: HTMLElement;\r\n helpDropdown!: HTMLElement;\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 onSearch(item) {\r\n this.inputValueChanged.emit(item.detail);\r\n }\r\n\r\n componentDidLoad() {\r\n document.addEventListener('click', this.handleClickOutside);\r\n\r\n const name = this.el.querySelector(\"[slot='name']\");\r\n const supportingText = this.el.querySelector(\"[slot='supporting_text']\");\r\n const initials = this.el.querySelector(\"[slot='initials']\");\r\n\r\n if (initials) {\r\n initials.classList.add('text-md-semi-bold');\r\n initials.classList.add(this.applyColorToInitials());\r\n }\r\n\r\n if (name) {\r\n name.classList.add('text-sm-semi-bold');\r\n }\r\n\r\n if (supportingText) {\r\n supportingText.classList.add('text-sm-regular');\r\n }\r\n }\r\n\r\n componentWillLoad() {\r\n const initials = this.el.querySelector(\"[slot='initials']\");\r\n\r\n if (initials) {\r\n this.initials = initials.textContent;\r\n }\r\n }\r\n\r\n helpDropdownItemClicked(item) {\r\n this.helpItemClicked.emit(item.detail);\r\n }\r\n\r\n onThemeTabClicked(tab) {\r\n this.themeTabClicked.emit(tab.detail);\r\n }\r\n\r\n onAvatarDropdownItemClicked(item) {\r\n console.log(item.detail);\r\n this.avatarDropdownItemClicked.emit(item.detail);\r\n }\r\n\r\n onNotificationDropdownItemClicked(item) {\r\n console.log(item.detail);\r\n // this.avatarDropdownItemClicked.emit(item.detail);\r\n }\r\n\r\n @Listen('click', { target: 'document' })\r\n handleClickOutside(event: MouseEvent) {\r\n if (this.avatarDropdownShown && !this.el.contains(event.target as Node)) {\r\n this.avatarDropdownShown = false;\r\n }\r\n\r\n if (this.helpDropdownShown && !this.el.contains(event.target as Node)) {\r\n this.helpDropdownShown = false;\r\n }\r\n\r\n if (this.notificationDropdownShown && !this.el.contains(event.target as Node)) {\r\n this.notificationDropdownShown = false;\r\n }\r\n }\r\n\r\n renderLogo() {\r\n const logo = this.el.querySelector('[slot=\"logo\"]');\r\n const logoSrc = getAssetPath(`assets/globus_bank_logo.svg`);\r\n\r\n if (logo) {\r\n return <slot name=\"logo\"></slot>;\r\n } else {\r\n return (\r\n <div class=\"header_logo\">\r\n <img src={logoSrc} alt=\"\" />\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"117\" height=\"17\" viewBox=\"0 0 117 17\" fill=\"none\">\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M55.977 12.6264C56.3596 13.1025 56.8394 13.4915 57.3843 13.7674C57.9292 14.0434 58.5268 14.1998 59.137 14.2264C59.3682 14.2276 59.5989 14.2038 59.825 14.1554C60.0203 14.1134 60.2068 14.0376 60.376 13.9314C60.5266 13.8276 60.6514 13.6908 60.741 13.5314C60.8332 13.3494 60.8789 13.1473 60.874 12.9434C60.8797 12.7871 60.8427 12.6322 60.767 12.4954C60.6928 12.3641 60.5948 12.2478 60.478 12.1524C60.3548 12.0522 60.2206 11.9663 60.078 11.8964C59.9369 11.8205 59.7898 11.7567 59.638 11.7054C59.365 11.6054 59.092 11.4954 58.821 11.4054C58.55 11.3154 58.285 11.2194 58.009 11.1054C57.856 11.0544 57.668 10.9864 57.454 10.9054C57.2189 10.8192 56.9891 10.7191 56.766 10.6054C56.5267 10.4828 56.2967 10.3428 56.078 10.1864C55.8479 10.0188 55.6411 9.82143 55.463 9.59936C55.2755 9.3641 55.1254 9.10136 55.018 8.82037C54.8987 8.50077 54.841 8.16145 54.848 7.82037C54.8385 7.38435 54.9601 6.95552 55.197 6.58938C55.4368 6.22409 55.7548 5.91665 56.128 5.68935C56.5352 5.44285 56.9786 5.26199 57.442 5.15337C57.9371 5.03187 58.4452 4.9714 58.955 4.97335C59.7154 4.96345 60.4735 5.05835 61.208 5.25536C61.883 5.44235 62.5133 5.76379 63.061 6.20037L61.881 7.97738C61.675 7.77738 61.475 7.59837 61.276 7.43737C61.0823 7.28066 60.8736 7.14333 60.653 7.02737C60.4242 6.91238 60.1825 6.82509 59.933 6.76736C59.6405 6.70771 59.3425 6.67923 59.044 6.68237C58.8003 6.6793 58.5576 6.71302 58.324 6.78237C58.1425 6.83794 57.973 6.92678 57.824 7.04437C57.7018 7.14787 57.6053 7.27829 57.542 7.42538C57.4813 7.5669 57.4503 7.71939 57.451 7.87338C57.4479 8.03229 57.4929 8.18844 57.58 8.32137C57.6712 8.45192 57.7854 8.56477 57.917 8.65438C58.0598 8.75308 58.2135 8.83495 58.375 8.89837C58.549 8.96737 58.724 9.03036 58.903 9.08737C59.183 9.18737 59.467 9.28736 59.749 9.37936C60.031 9.47136 60.313 9.57035 60.592 9.66735C60.731 9.72035 60.902 9.77936 61.104 9.85336C61.3158 9.93021 61.522 10.0218 61.721 10.1274C61.945 10.2432 62.1576 10.3798 62.356 10.5354C62.571 10.6981 62.7616 10.8907 62.922 11.1074C63.0947 11.347 63.2296 11.6118 63.322 11.8924C63.4341 12.2242 63.4876 12.5731 63.48 12.9234C63.4886 13.3821 63.3593 13.8329 63.109 14.2174C62.8572 14.5968 62.5255 14.9167 62.137 15.1544C61.711 15.4162 61.2468 15.6099 60.761 15.7284C60.2447 15.8581 59.7143 15.923 59.182 15.9214C58.7286 15.9217 58.2755 15.896 57.825 15.8444C57.4131 15.7956 57.0069 15.7072 56.612 15.5804C56.2266 15.4585 55.8573 15.2906 55.512 15.0804C55.152 14.8574 54.8226 14.5884 54.532 14.2804L55.977 12.6264ZM46.023 5.15136V12.3824C46.0171 12.6297 46.0603 12.8758 46.15 13.1064C46.2233 13.2937 46.3378 13.4622 46.485 13.5994C46.6276 13.7299 46.7989 13.8251 46.985 13.8774C47.1837 13.9372 47.3905 13.9659 47.598 13.9624C48.1129 13.9605 48.6258 13.9001 49.127 13.7824C49.6297 13.6726 50.1117 13.4836 50.555 13.2224V5.14636H53.165V13.8624C53.1705 14.1064 53.1909 14.3498 53.226 14.5914C53.262 14.9064 53.326 15.2774 53.403 15.7014H50.93C50.916 15.6614 50.893 15.5894 50.866 15.4774C50.839 15.3654 50.805 15.2534 50.772 15.1304C50.739 15.0074 50.715 14.8904 50.687 14.7814C50.6662 14.7 50.6501 14.6176 50.639 14.5344C50.4019 14.7386 50.1461 14.9201 49.875 15.0764C49.5915 15.2448 49.2941 15.3887 48.986 15.5064C48.6826 15.626 48.3695 15.719 48.05 15.7844C47.7544 15.8493 47.4527 15.8828 47.15 15.8844C46.5406 15.9045 45.9328 15.8088 45.359 15.6024C44.9281 15.4446 44.5423 15.1836 44.2355 14.8422C43.9287 14.5009 43.7102 14.0897 43.599 13.6444C43.4774 13.1714 43.4179 12.6847 43.422 12.1964V5.14938L46.023 5.15136ZM34.173 14.0344C34.4914 14.1402 34.8178 14.2205 35.149 14.2744C35.5278 14.3366 35.9111 14.368 36.295 14.3684C36.6865 14.3713 37.0725 14.2764 37.418 14.0924C37.7682 13.8978 38.0679 13.6238 38.293 13.2924C38.5589 12.9056 38.7546 12.4751 38.871 12.0204C39.0127 11.4651 39.0799 10.8934 39.071 10.3204C39.0745 9.84945 39.0238 9.37971 38.92 8.92037C38.8359 8.53264 38.6762 8.1653 38.45 7.83938C38.2415 7.54414 37.9623 7.30585 37.638 7.14636C37.2658 6.97548 36.8594 6.89203 36.45 6.90237C36.2347 6.90349 36.0196 6.91785 35.806 6.94537C35.591 6.97637 35.384 7.01636 35.183 7.06536C34.9916 7.11019 34.8033 7.16699 34.619 7.23537C34.4596 7.29532 34.3062 7.37033 34.161 7.45937L34.173 14.0344ZM31.573 0.395379H34.173V5.94637C34.5815 5.64458 35.0369 5.41212 35.521 5.25835C36.0793 5.07415 36.6641 4.98329 37.252 4.98937C37.9775 4.97144 38.697 5.12493 39.352 5.43737C39.9085 5.71759 40.3919 6.12367 40.764 6.62338C41.1391 7.13643 41.4108 7.71756 41.564 8.33437C41.7346 8.99307 41.82 9.67094 41.818 10.3514C41.8392 11.1967 41.6831 12.037 41.36 12.8184C41.081 13.474 40.6682 14.0643 40.148 14.5514C39.6578 15.003 39.0812 15.3507 38.453 15.5734C37.838 15.79 37.1911 15.9022 36.539 15.9054C36.0383 15.9054 35.5797 15.9 35.163 15.8894C34.744 15.8774 34.338 15.8644 33.951 15.8464C33.564 15.8284 33.173 15.7994 32.791 15.7614C32.409 15.7234 32.007 15.6784 31.591 15.6234L31.573 0.395379ZM24.573 14.2164C24.984 14.2278 25.3873 14.103 25.72 13.8614C26.0497 13.616 26.3187 13.2982 26.506 12.9324C26.7225 12.5243 26.8769 12.0861 26.964 11.6324C27.066 11.1494 27.1166 10.657 27.115 10.1634C27.1164 9.72126 27.0718 9.28025 26.982 8.84737C26.9009 8.46194 26.7494 8.09478 26.535 7.76437C26.3324 7.45791 26.0577 7.20585 25.735 7.03036C25.3682 6.83692 24.9575 6.74183 24.543 6.75436C24.1538 6.74764 23.7699 6.845 23.431 7.03637C23.1073 7.23018 22.8334 7.49693 22.631 7.81536C22.4048 8.17634 22.2412 8.57292 22.147 8.98837C21.9311 9.90171 21.9243 10.852 22.127 11.7684C22.216 12.194 22.3705 12.6032 22.585 12.9814C22.7843 13.3379 23.0607 13.6453 23.394 13.8814C23.7431 14.1127 24.1554 14.2301 24.574 14.2174L24.573 14.2164ZM24.66 15.9734C23.8645 15.9875 23.0734 15.8518 22.328 15.5734C21.6834 15.3259 21.1025 14.937 20.628 14.4354C20.1558 13.9225 19.7994 13.3141 19.583 12.6514C19.335 11.9037 19.2134 11.12 19.223 10.3324C19.2197 9.63472 19.3305 8.94126 19.551 8.27938C19.7645 7.63603 20.1153 7.04677 20.5791 6.55242C21.0429 6.05807 21.6086 5.67044 22.237 5.41637C22.9955 5.11592 23.8064 4.97038 24.622 4.98837C25.43 4.96837 26.2335 5.11404 26.983 5.41637C27.6091 5.68005 28.1666 6.0833 28.613 6.59536C29.0478 7.1081 29.3694 7.70683 29.557 8.35238C29.7617 9.05529 29.8627 9.7843 29.857 10.5164C29.8615 11.2376 29.7414 11.9541 29.502 12.6344C29.2754 13.2745 28.9255 13.864 28.472 14.3694C28.0128 14.8682 27.4555 15.2669 26.835 15.5404C26.1487 15.8353 25.4079 15.9818 24.661 15.9704L24.66 15.9734ZM14.302 0.394372H16.902V13.1564C16.8789 13.4015 16.9368 13.6474 17.067 13.8564C17.1212 13.9252 17.191 13.9801 17.2706 14.0167C17.3503 14.0532 17.4375 14.0702 17.525 14.0664C17.7153 14.0716 17.9048 14.0415 18.084 13.9774C18.237 13.9214 18.417 13.8494 18.615 13.7774L19.055 15.0844C18.8809 15.2024 18.6984 15.3077 18.509 15.3994C18.3094 15.4997 18.1032 15.5865 17.892 15.6594C17.672 15.7336 17.4475 15.794 17.22 15.8404C16.9934 15.8855 16.763 15.9086 16.532 15.9094C16.2533 15.9095 15.9753 15.8797 15.703 15.8204C15.4428 15.7656 15.1996 15.6489 14.994 15.4804C14.7726 15.2971 14.6007 15.0612 14.494 14.7944C14.3574 14.4324 14.2942 14.047 14.308 13.6604L14.302 0.394372ZM12.602 14.6814C12.239 14.8724 11.868 15.0444 11.485 15.2064C11.0739 15.377 10.6508 15.517 10.219 15.6254C9.71274 15.7511 9.19858 15.8427 8.68001 15.8994C8.03877 15.9693 7.39406 16.0027 6.74901 15.9994C6.02384 16.0081 5.30187 15.9018 4.61001 15.6844C3.40238 15.3004 2.35048 14.5377 1.61001 13.5094C1.24144 13.0029 0.939006 12.4514 0.710011 11.8684C0.468973 11.2677 0.289379 10.6442 0.174001 10.0074C0.0576192 9.35516 -0.000605498 8.69388 4.74727e-06 8.03137C0.000633892 7.33814 0.0726773 6.64683 0.215001 5.96838C0.349412 5.31408 0.556361 4.67679 0.832006 4.06835C1.10146 3.48093 1.44454 2.9302 1.853 2.42938C2.67554 1.41797 3.78369 0.67779 5.03301 0.305352C5.72268 0.0959449 6.44028 -0.0069001 7.161 0.000359076C7.54 0.000359076 7.88701 0.012372 8.20301 0.032372C8.49632 0.0492166 8.78846 0.0826091 9.07801 0.132378C9.34144 0.177448 9.60066 0.244327 9.853 0.33236C10.107 0.419187 10.3543 0.52447 10.593 0.647362C10.8609 0.782467 11.1192 0.935843 11.366 1.10638C11.6327 1.28438 11.9263 1.49435 12.247 1.73635L10.797 3.68838C10.4912 3.41105 10.1686 3.15288 9.83101 2.91537C9.55631 2.72032 9.26083 2.55631 8.95 2.42635C8.66096 2.30636 8.35893 2.22046 8.05001 2.17037C7.70771 2.11985 7.362 2.0961 7.01601 2.09936C6.40137 2.08829 5.79444 2.23754 5.25501 2.53237C4.73856 2.82694 4.29629 3.23569 3.96201 3.72738C3.59548 4.26897 3.32706 4.87079 3.16901 5.50536C2.98332 6.22376 2.89254 6.9634 2.89901 7.70538C2.89341 8.4936 2.97049 9.28022 3.129 10.0524C3.26457 10.7479 3.51573 11.4158 3.87201 12.0284C4.19608 12.5805 4.64638 13.0479 5.18601 13.3924C5.76832 13.7417 6.43821 13.9176 7.11701 13.8994C7.33906 13.9036 7.56116 13.8939 7.782 13.8704C8.018 13.8414 8.25401 13.8234 8.49601 13.7874C8.73801 13.7514 8.972 13.7084 9.202 13.6594C9.432 13.6104 9.64401 13.5594 9.84601 13.5094V8.32836H12.595L12.602 14.6814Z\"\r\n fill=\"var(--color-text-brandDarkBlue, #212C65)\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M109.442 9.51028L113.077 5.4953H116.426L111.367 10.3453L116.755 16.3633H113.547L109.447 11.6633V16.3633H106.768V0.58728H109.447L109.442 9.51028ZM94.8709 7.3573C94.8709 7.1413 94.871 6.86529 94.852 6.52429C94.8439 6.1785 94.8071 5.83398 94.742 5.49429H97.2649C97.2894 5.55963 97.3098 5.62644 97.326 5.69431C97.345 5.77631 97.3659 5.86929 97.3919 5.96429C97.4179 6.05929 97.4369 6.16428 97.4549 6.26428C97.4729 6.36428 97.486 6.46428 97.5 6.55228C97.687 6.38781 97.8877 6.23961 98.0999 6.10928C98.6115 5.78686 99.1757 5.55704 99.7669 5.4303C100.1 5.35753 100.44 5.32132 100.781 5.3223C101.328 5.31866 101.872 5.40723 102.39 5.58429C102.869 5.74685 103.312 6.00393 103.69 6.3403C104.063 6.67744 104.36 7.08984 104.562 7.55029C104.781 8.06212 104.89 8.61452 104.881 9.1713V16.3713H102.196V9.6713C102.203 9.29813 102.158 8.9258 102.061 8.56528C101.986 8.29345 101.849 8.04279 101.661 7.83328C101.484 7.64715 101.263 7.50943 101.018 7.43329C100.734 7.34463 100.438 7.30144 100.141 7.3053C99.9337 7.30661 99.7268 7.32297 99.5219 7.35428C99.2943 7.38247 99.069 7.42726 98.8479 7.48828C98.6183 7.5484 98.392 7.6205 98.17 7.70428C97.9553 7.77835 97.7466 7.86895 97.5459 7.97528V16.3753H94.8689L94.8709 7.3573ZM89.354 10.6903C88.693 10.7039 88.0352 10.7877 87.3919 10.9403C86.9571 11.0391 86.5446 11.2185 86.1759 11.4693C85.8984 11.6587 85.6811 11.9239 85.55 12.2333C85.4322 12.5398 85.3738 12.866 85.378 13.1943C85.3692 13.4439 85.403 13.6931 85.4779 13.9313C85.5355 14.1106 85.6361 14.273 85.771 14.4043C85.9046 14.5271 86.0668 14.6145 86.243 14.6583C86.4338 14.7108 86.631 14.7364 86.8289 14.7343C87.0219 14.7343 87.219 14.7223 87.419 14.7063C87.6305 14.6839 87.8398 14.6444 88.045 14.5883C88.266 14.5295 88.4818 14.4522 88.69 14.3573C88.9221 14.2504 89.144 14.1225 89.3529 13.9753L89.354 10.6903ZM82.841 6.9743C83.4506 6.43993 84.1574 6.02806 84.9229 5.76129C85.735 5.46771 86.5924 5.31913 87.456 5.3223C88.0356 5.3199 88.6134 5.38703 89.177 5.52228C89.6953 5.64191 90.1898 5.84778 90.6399 6.13129C91.0583 6.40027 91.4075 6.76412 91.659 7.1933C91.9212 7.66192 92.0524 8.19246 92.039 8.72928V13.5793C92.0359 13.7771 92.0499 13.9749 92.081 14.1703C92.0978 14.3025 92.1446 14.429 92.2179 14.5403C92.2808 14.6292 92.369 14.6971 92.471 14.7353C92.5948 14.7743 92.7242 14.7923 92.854 14.7883C92.9578 14.7841 93.0613 14.7741 93.164 14.7583C93.322 14.7363 93.466 14.7133 93.596 14.6893L93.885 15.8443C93.72 15.9443 93.553 16.0353 93.38 16.1263C93.2023 16.2182 93.0173 16.2955 92.8269 16.3573C92.6192 16.4261 92.4066 16.4793 92.1909 16.5163C91.9393 16.5572 91.6849 16.578 91.43 16.5783C90.9747 16.5916 90.5257 16.4694 90.1399 16.2273C89.9688 16.1147 89.822 15.969 89.708 15.7988C89.594 15.6286 89.515 15.4374 89.4759 15.2363C89.2019 15.4862 88.8999 15.7037 88.576 15.8843C88.2804 16.0533 87.9684 16.192 87.6449 16.2983C87.3372 16.399 87.0209 16.4713 86.6999 16.5143C86.3981 16.5528 86.0942 16.5735 85.7899 16.5763C85.333 16.5793 84.8783 16.5135 84.4409 16.3813C84.0636 16.2663 83.7154 16.0716 83.42 15.8103C83.1354 15.5561 82.913 15.24 82.7699 14.8863C82.6093 14.4719 82.5296 14.0307 82.5349 13.5863C82.5244 13.0864 82.6134 12.5894 82.797 12.1243C82.9638 11.7188 83.2106 11.3511 83.5229 11.0433C83.8465 10.733 84.2205 10.4801 84.6289 10.2953C85.0769 10.0896 85.5465 9.93463 86.029 9.83328C86.556 9.71543 87.0906 9.63457 87.6289 9.59128C88.1916 9.54528 88.7643 9.52228 89.347 9.52228V9.13028C89.3559 8.81548 89.3046 8.50188 89.196 8.2063C89.1028 7.96802 88.9568 7.75397 88.769 7.58029C88.5772 7.41846 88.3542 7.29763 88.1139 7.22528C87.8398 7.1455 87.5554 7.10642 87.2699 7.10928C87.021 7.10712 86.7724 7.12957 86.5279 7.1763C86.2826 7.22239 86.0443 7.30002 85.8189 7.40729C85.5603 7.53109 85.3142 7.67943 85.084 7.85028C84.7873 8.07003 84.5041 8.30746 84.2359 8.56128L82.841 6.9743ZM73.27 2.62628V7.3053H74.77C75.2355 7.31174 75.7001 7.26475 76.1549 7.16528C76.5333 7.08847 76.8941 6.94197 77.219 6.73328C77.5016 6.54416 77.7328 6.28785 77.8919 5.9873C78.0558 5.65844 78.1371 5.29461 78.1289 4.92728C78.1359 4.5799 78.0765 4.23441 77.9539 3.9093C77.8334 3.61742 77.6274 3.36884 77.3629 3.19629C77.0275 2.98493 76.6537 2.84156 76.263 2.77429C75.705 2.67186 75.1382 2.62464 74.571 2.6333L73.27 2.62628ZM73.27 9.33929V14.3393H75.4419C75.9397 14.3493 76.4358 14.2783 76.9109 14.1293C77.2868 14.0087 77.6365 13.8184 77.9419 13.5683C78.1976 13.3579 78.4026 13.0927 78.542 12.7923C78.6704 12.5222 78.7387 12.2274 78.742 11.9283C78.7423 11.585 78.6743 11.2451 78.542 10.9283C78.4091 10.6098 78.2008 10.3284 77.935 10.1083C77.6222 9.85665 77.2635 9.66817 76.8789 9.55328C76.3764 9.40636 75.8544 9.3369 75.331 9.34729L73.27 9.33929ZM75.5929 0.58728C76.3348 0.57908 77.0745 0.668854 77.7929 0.854279C78.3878 1.00832 78.9499 1.26888 79.4519 1.62329C79.8961 1.9476 80.2585 2.37119 80.51 2.86029C80.7629 3.38432 80.889 3.96052 80.878 4.5423C80.88 4.93957 80.7993 5.33292 80.641 5.6973C80.4802 6.07453 80.26 6.4236 79.9889 6.73129C79.708 7.04844 79.3819 7.32238 79.021 7.54428C78.6554 7.77312 78.2572 7.9451 77.8399 8.05429C78.2862 8.13489 78.721 8.2692 79.135 8.45428C79.582 8.65138 79.993 8.92179 80.3509 9.2543C80.7289 9.59946 81.0372 10.0139 81.2589 10.4753C81.5061 10.998 81.6277 11.5712 81.6139 12.1493C81.6124 12.6915 81.4898 13.2266 81.255 13.7153C81.0007 14.2375 80.6343 14.697 80.182 15.0613C79.66 15.4835 79.0628 15.8031 78.422 16.0033C77.6359 16.2543 76.8139 16.3742 75.9889 16.3583H70.429V0.581299L75.5929 0.58728Z\"\r\n fill=\"var(--color-text-brandDarkBlue, #212C65)\"\r\n />\r\n </svg>\r\n </div>\r\n );\r\n }\r\n }\r\n\r\n disconnectedCallback() {\r\n document.removeEventListener('click', this.handleClickOutside);\r\n }\r\n\r\n render() {\r\n const helpIconSrc = getAssetPath(`assets/help-circle.svg`);\r\n const notificationIconSrc = getAssetPath(`assets/notification-03.svg`);\r\n\r\n return (\r\n <div class={`header_div ${this.showBorder ? 'border' : ''}`}>\r\n <div class=\"content\">\r\n {this.renderLogo()}\r\n <div class=\"inner_content\">\r\n <div class={`action`}>\r\n {this.showSearch && (\r\n <div class=\"search\">\r\n <gb-input-field\r\n size=\"sm\"\r\n state=\"default\"\r\n type=\"icon_leading\"\r\n enable-cancel-button-function={true}\r\n placeholder={this.inputPlaceholder}\r\n icon-swap={this.inputIcon}\r\n onInputValueChanged={this.onSearch.bind(this)}\r\n ></gb-input-field>\r\n </div>\r\n )}\r\n {this.showHelp && (\r\n <div class=\"help\">\r\n <gb-header-icon\r\n state={StateEnum.Default}\r\n icon={helpIconSrc}\r\n onClick={() => (this.helpDropdownShown = !this.helpDropdownShown)}\r\n class=\"help_button\"\r\n ></gb-header-icon>\r\n {this.helpDropdownShown && (\r\n <gb-help-dropdown class=\"help_dropdown\" show-log-error={this.showLogError} onHelpItemClicked={this.helpDropdownItemClicked.bind(this)}></gb-help-dropdown>\r\n )}\r\n </div>\r\n )}\r\n {this.showNotification && (\r\n <div class=\"notification\">\r\n <gb-header-icon\r\n state={this.state}\r\n icon={notificationIconSrc}\r\n show-indicator={this.showIndicator}\r\n onClick={() => (this.notificationDropdownShown = !this.notificationDropdownShown)}\r\n ></gb-header-icon>\r\n {this.notificationDropdownShown && (\r\n <gb-notification-pane state={this.notificationState} class=\"notification_dropdown\" notifications={this.notifications}>\r\n <p slot=\"label\">No notification</p>\r\n <p slot=\"supporting_text\">Your notification inbox is empty at the moment. Rest assured, you'll be promptly notified of any new events</p>\r\n </gb-notification-pane>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n <gb-avatar\r\n size=\"md\"\r\n text={this.text}\r\n placeholder={this.placeholder}\r\n color={this.color}\r\n show-border={this.showBorder}\r\n onClick={() => (this.avatarDropdownShown = !this.avatarDropdownShown)}\r\n >\r\n {this.text ? <slot slot=\"initials\" name=\"initials\"></slot> : <slot name=\"image\" slot=\"image\"></slot>}\r\n </gb-avatar>\r\n {this.avatarDropdownShown && (\r\n <gb-avatar-dropdown\r\n ref={el => (this.avatarDropdown = el)}\r\n class=\"avatar_dropdown\"\r\n type={this.avatarDropdownType}\r\n show-theme-tab={this.showThemeTab}\r\n show-profile={this.showProfile}\r\n show-log-out={this.showLogOut}\r\n listGroupOne={this.listGroupOne}\r\n listGroupTwo={this.listGroupTwo}\r\n color={this.color}\r\n roles={this.roles}\r\n show-roles={this.showRoles}\r\n current-theme=\"light\"\r\n onThemeTabClicked={this.onThemeTabClicked.bind(this)}\r\n onItemClicked={this.onAvatarDropdownItemClicked.bind(this)}\r\n >\r\n <slot slot=\"name\" name=\"name\"></slot>\r\n <slot slot=\"supporting_text\" name=\"supporting_text\"></slot>\r\n <h1 slot=\"initials\" class={`text-md-semi-bold`}>\r\n {this.initials}\r\n </h1>\r\n </gb-avatar-dropdown>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n:host {\r\n position: relative;\r\n}\r\n\r\nsvg {\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n}\r\n\r\n.background.default{\r\n width: var(--spacing-8);\r\n height: var(--spacing-8);\r\n background-color: transparent;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n border-radius: var(--rounded-sm);\r\n}\r\n\r\n.background:hover {\r\n background-color: var(--color-background-gray-subtler, #EEF2F6);\r\n cursor: pointer;\r\n}\r\n\r\n.background:active {\r\n background-color: var(--color-background-gray-subtle, #E3E8EF);\r\n}\r\n\r\n.background.disabled:hover{\r\n cursor: not-allowed;\r\n background: none;\r\n}\r\n\r\n.red_dot {\r\n width: 0.52rem;\r\n height: var(--spacing-2);\r\n border-radius: var(--rounded-full);\r\n background-color: var(--color-icon-brandRed, #E21B2E);\r\n border: 2px solid var(--color-surface, #FFFFFF);\r\n position: absolute;\r\n top: 0.6rem;\r\n left: 1.2rem;\r\n}\r\n\r\n.icon.default path[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon.default path[fill] {\r\n fill: var(--color-icon, #4B5565);\r\n}","import { Component, h, Prop, Fragment, State, getAssetPath } from '@stencil/core';\r\nimport { StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-header-icon',\r\n styleUrl: 'gb-header-icon.css',\r\n shadow: true,\r\n})\r\nexport class GbHeaderIcon {\r\n @Prop() state: StateEnum;\r\n @Prop() showIndicator: boolean = false;\r\n @Prop() icon: string = '';\r\n @State() leadingIconSvg: string = '';\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\r\n const parser = new DOMParser();\r\n const svgDoc = parser.parseFromString(svg, 'image/svg+xml');\r\n const svgElement = svgDoc.documentElement;\r\n\r\n // Add `has-opacity` class to all elements that have an opacity attribute\r\n const elementsWithOpacity = svgElement.querySelectorAll('[opacity]');\r\n elementsWithOpacity.forEach(el => {\r\n el.classList.add('has_opacity');\r\n });\r\n\r\n // Serialize and store\r\n const modifiedSvg = svgElement.outerHTML;\r\n // console.log(modifiedSvg)\r\n this.leadingIconSvg = modifiedSvg;\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`background ${this.state}`}>\r\n <div class={`icon ${this.state === StateEnum.Default ? 'default' : this.state === StateEnum.Disabled ? 'disabled' : ''}`} innerHTML={this.leadingIconSvg}></div>\r\n <>{this.showIndicator && <div class=\"red_dot\"></div>}</>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import '../../global/global.css';\r\n\r\n.dropdown-container {\r\n display: flex;\r\n width: 13.3125rem;\r\n padding: var(--spacing-half) 0;\r\n flex-direction: column;\r\n justify-content: center;\r\n gap: var(--spacing-half);\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}\r\n\r\n.user_guide,\r\n.bug,\r\n.log_error{\r\n width: 96.5%;\r\n}\r\n\r\ngb-dropdown-items-with-shortcut {\r\n width: fit-content;\r\n max-width: 100%;\r\n}\r\n\r\ngb-dropdown-items-with-shortcut.shortcut-container {\r\n width: 205px;\r\n}","import {Component, Event, EventEmitter, Prop, h } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'gb-help-dropdown',\r\n styleUrl: 'gb-help-dropdown.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbHelpDropdown {\r\n @Prop() showLogError: boolean;\r\n @Event() helpItemClicked: EventEmitter<string>;\r\n\r\n onHelpItemClicked(item: string) {\r\n this.helpItemClicked.emit(item)\r\n }\r\n\r\n render(){\r\n return (\r\n <div class=\"dropdown-container\">\r\n <div class=\"user_guide\">\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n iconSrc=\"assets/book_open.svg\"\r\n label=\"Download user guide\"\r\n onClick={() => this.onHelpItemClicked('download_user_guide')}\r\n ></gb-dropdown-items-with-shortcut>\r\n </div>\r\n <div class=\"bug\">\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n iconSrc=\"assets/bug_02.svg\"\r\n label=\"Report a bug\"\r\n onClick={() => this.onHelpItemClicked('report_a_bug')}\r\n ></gb-dropdown-items-with-shortcut>\r\n </div>\r\n {this.showLogError && (\r\n <div class=\"log_error\">\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n iconSrc=\"assets/alert_02.svg\"\r\n label=\"Log a profile error\"\r\n onClick={() => this.onHelpItemClicked('log_a_profile_error')}\r\n ></gb-dropdown-items-with-shortcut>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.help_tooltip{\r\n display: flex;\r\n position: relative;\r\n width: fit-content;\r\n height: fit-content;\r\n}\r\n\r\n.tooltip{\r\n position: absolute;\r\n top: -7rem;\r\n right: 5.75rem;\r\n}","import { Component, Prop, h, State, Element } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: 'gb-help-tooltip',\r\n styleUrl: 'gb-help-tooltip.css',\r\n shadow: true,\r\n})\r\nexport class GbHelpTooltip {\r\n @State() showHelpTooltip: boolean = false;\r\n @Prop() showArrow: boolean = false;\r\n @Prop() showSupportingText: boolean = false;\r\n @Element() el: HTMLElement;\r\n\r\n componentDidLoad() {\r\n const mainTextSlot = this.el.querySelector('[slot=\"label\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"supporting_text\"]');\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 render() {\r\n return (\r\n <div class={`help_tooltip`}>\r\n <svg\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"16\"\r\n height=\"16\"\r\n viewBox=\"0 0 16 16\"\r\n fill=\"none\"\r\n onMouseEnter={() => (this.showHelpTooltip = true)}\r\n onMouseLeave={() => (this.showHelpTooltip = false)}\r\n class=\"help_circle\"\r\n >\r\n <path\r\n d=\"M6.66659 6C6.66659 5.26362 7.26354 4.66666 7.99992 4.66666C8.7363 4.66666 9.33325 5.26362 9.33325 6C9.33325 6.26543 9.25569 6.51275 9.12199 6.72052C8.72352 7.33978 7.99992 7.93028 7.99992 8.66666V9M7.99458 11.3333H8.00057M14.6666 8C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8C1.33325 4.3181 4.31802 1.33333 7.99992 1.33333C11.6818 1.33333 14.6666 4.3181 14.6666 8Z\"\r\n stroke=\"#697586\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n {this.showHelpTooltip && (\r\n <gb-tooltip show-arrow={true} arrow=\"bottom_right\" show-supporting-text={this.showSupportingText} class=\"tooltip\">\r\n <slot name=\"label\" slot=\"label\"></slot>\r\n <slot name=\"supporting_text\" slot=\"supporting_text\"></slot>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.icon_button_base_container {\r\n position: relative;\r\n}\r\n\r\n.icon_button_base_div {\r\n display: flex;\r\n width: 100%;\r\n height: 2rem;\r\n padding: var(--spacing-none);\r\n justify-content: center;\r\n align-items: center;\r\n gap: 0.5rem;\r\n border-radius: var(--rounded-xs);\r\n cursor: pointer;\r\n}\r\n\r\n.icon_button_base_div:hover {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\n.icon_button_base_div:active {\r\n background-color: transparent;\r\n}\r\n\r\n.icon_button_base_div.current {\r\n background-color: var(--color-background-card, #ffffff);\r\n box-shadow: var(--shadow-md);\r\n}\r\n\r\n.icon_button_base_div.current:hover {\r\n background-color: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n.icon_button_base_div.current:active {\r\n background-color: var(--color-background-information-subtlest, #e4f0fc);\r\n}\r\n\r\n.icon {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.icon svg path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon svg path[fill] {\r\n fill: none; \r\n}\r\n\r\n.icon.current svg path[stroke] {\r\n stroke: var(--color-icon-selected, #075db2);\r\n}\r\n\r\n.icon.current svg path[fill] {\r\n fill: var(--color-icon-selected, #075db2);\r\n}\r\n\r\n.tooltip {\r\n position: absolute;\r\n right: 100%;\r\n top: -130%;\r\n}\r\n","import { Component, Prop, State, getAssetPath, h } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'gb-icon-button-base',\r\n styleUrl: 'gb-icon-button-base.css',\r\n shadow: true,\r\n})\r\nexport class GbIconButtonBase {\r\n @Prop() current: boolean = false;\r\n @Prop() icon: string = '';\r\n @Prop() label: string = '';\r\n @State() leadingIconSvg: string = '';\r\n @State() showTooltip: boolean = false;\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 componentWillLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"icon_button_base_container\">\r\n {this.showTooltip && (\r\n <gb-tooltip show-arrow={true} arrow=\"bottom_center\" class=\"tooltip\">\r\n <p slot=\"label\">{this.label}</p>\r\n </gb-tooltip>\r\n )}\r\n <div class={`icon_button_base_div ${this.current ? 'current' : ''}`} onMouseEnter={() => (this.showTooltip = true)} onMouseLeave={() => (this.showTooltip = false)}>\r\n <div class={`icon ${this.current ? 'current' : ''}`} innerHTML={this.leadingIconSvg}></div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@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, #808c9e);\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.dropdown_label{\r\n color: var(--color-text, #4B5565);\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 overflow: hidden;\r\n text-overflow: ellipsis;\r\n}\r\n\r\n.placeholder p{\r\n width: 100%;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n color: var(--color-text-disabled, #808C9E);\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 border: 1px solid red;\r\n}\r\n\r\n.supporting_text {\r\n display: flex;\r\n align-items: center;\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 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.dropdown_menu::-webkit-scrollbar{\r\n right: 0rem;\r\n bottom: -1.53125rem;\r\n width: 0.8rem;\r\n margin-top: 1rem;\r\n}\r\n\r\n.dropdown_menu::-webkit-scrollbar-track{\r\n width: 0.5rem;\r\n padding: var(--spacing-1);\r\n border: none;\r\n}\r\n\r\n.dropdown_menu::-webkit-scrollbar-thumb{\r\n width: 0.5rem;\r\n height: 11.75rem;\r\n border: 0.25rem solid var(--color-background-card, #FFFFFF);\r\n border-radius: var(--rounded-full);\r\n background: var(--color-border-subtle, #CDD5DF);\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 /* flex: 1 1 auto; */\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 color: var(--color-text, #4B5565);\r\n}\r\n\r\n.search_input {\r\n display: flex;\r\n flex: 1 0 0;\r\n width: 100%;\r\n}\r\n\r\ninput {\r\n border: none;\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\ninput:focus {\r\n outline: none;\r\n}\r\n\r\ninput::placeholder {\r\n color: var(--color-text-disabled, #cdd5df);\r\n}\r\n\r\n.close_button {\r\n position: absolute;\r\n}\r\n\r\n.close_button.sm {\r\n right: 0.2rem;\r\n top: 0.15rem;\r\n}\r\n\r\n.close_button.md {\r\n right: 0.3rem;\r\n top: 0.25rem;\r\n}\r\n\r\n.loader_div {\r\n width: 100%;\r\n height: 10rem;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.loader {\r\n border: 4px solid var(--color-background-gray, #cdd5df); /* Light grey */\r\n border-top: 4px solid var(--color-background-selected, #075db2); /* Blue */\r\n border-radius: 50%;\r\n width: 30px;\r\n height: 30px;\r\n animation: spin 2s linear infinite;\r\n}\r\n\r\n@keyframes spin {\r\n 0% {\r\n transform: rotate(0deg);\r\n }\r\n 100% {\r\n transform: rotate(360deg);\r\n }\r\n}\r\n","import { Component, Prop, h, Fragment, Element, State, getAssetPath, Listen, Event, EventEmitter, Watch, Method } 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 iusbrviubw vwiuhvw vwiurhvwr vwoiuh', 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 @Prop({ mutable: true }) loading: boolean = false;\r\n @Prop() formatLabel: boolean = true;\r\n @State() leadingIconSvg: string = '';\r\n @State() dropdownOpen: boolean = false;\r\n @State() selectedItem: any;\r\n @State() selectedItems: any[] = [];\r\n @State() unselectedItems: any[] = [];\r\n @State() searchItem: any;\r\n @State() searchResults: any;\r\n @State() internalItems: any[] = [...this.items];\r\n @State() showCloseButton: boolean = false;\r\n @State() internalLoading: boolean = this.loading;\r\n @Element() el: HTMLElement;\r\n // @Event() dropdownValue: EventEmitter<any>;\r\n @Event() dropdownItemSelected: EventEmitter<any>;\r\n @Event() inputValueChanged: EventEmitter<string>;\r\n\r\n dropdownRef!: HTMLElement;\r\n inputRef: HTMLInputElement;\r\n\r\n @Method()\r\n async clearSelection() {\r\n if (this.selectedItem && this.selectedItem.length > 0) {\r\n this.selectedItem = [];\r\n }\r\n\r\n if (this.selectedItems && this.selectedItems.length > 0) {\r\n this.selectedItems = [];\r\n }\r\n\r\n if (this.value && this.value.length > 0) {\r\n this.value = [];\r\n this.selectedItems = [];\r\n this.selectedItem = [];\r\n }\r\n\r\n this.unselectedItems = [...this.items];\r\n this.state = 'default';\r\n }\r\n\r\n @Method()\r\n async isDestructive() {\r\n this.destructive = true;\r\n }\r\n\r\n @Method()\r\n async isNotDestructive() {\r\n this.destructive = false;\r\n }\r\n\r\n clearInput() {\r\n if (this.inputRef) {\r\n this.inputRef.value = '';\r\n this.inputValue = this.inputRef.value;\r\n this.showCloseButton = false;\r\n this.inputValueChanged.emit(this.inputValue);\r\n }\r\n }\r\n\r\n @Watch('items')\r\n updateResultsAndShowInDropdown(newItems: any[]) {\r\n this.internalItems = [...newItems];\r\n }\r\n\r\n @Watch('loading')\r\n onLoadingChanged(newLoading: boolean) {\r\n this.internalLoading = newLoading;\r\n\r\n if (newLoading) this.dropdownOpen = true;\r\n }\r\n\r\n emitInputValueToUseForSearch() {\r\n if (this.inputRef.value.length > 0 && this.internalItems.length === 0) {\r\n this.loading = true;\r\n } else if (this.inputRef.value.length > 0 && this.internalItems.length > 0) {\r\n this.showCloseButton = true;\r\n this.inputValueChanged.emit(this.inputRef.value);\r\n } else {\r\n this.showCloseButton = false;\r\n this.dropdownOpen = false;\r\n this.loading = false;\r\n }\r\n }\r\n\r\n searchItemsInDropdownMenu(event: CustomEvent<any>) {\r\n this.searchItem = event.detail;\r\n this.searchResults = this.items.filter(item => {\r\n if (typeof item === 'string') return item.toLowerCase().includes(this.searchItem.toLowerCase());\r\n\r\n if (typeof item === 'number') return item.toString().includes(this.searchItem.toString());\r\n\r\n if (typeof item === 'object') return item.name.toLowerCase().includes(this.searchItem.toLowerCase());\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 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?: any) {\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 (!item) {\r\n this.state = 'default';\r\n this.dropdownOpen = false;\r\n this.selectedItem = null;\r\n this.dropdownItemSelected.emit('');\r\n this.selectedItems = [];\r\n this.value = [];\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\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 this.dropdownItemSelected.emit(this.selectedItems);\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\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 this.dropdownItemSelected.emit(this.selectedItems);\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 this.dropdownItemSelected.emit(this.selectedItems);\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 componentWillLoad() {\r\n this.loadIcon(this.leadingIcon);\r\n\r\n // setTimeout(() => {\r\n // this.loading = true;\r\n\r\n // setTimeout(() => {\r\n // this.items = ['Hi', '8', 'Omo', 98];\r\n // }, 5000);\r\n // }, 2000);\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 <>\r\n {this.formatLabel ? (\r\n <p class=\"dropdown_label text-sm-medium\">{this.label.charAt(0).toUpperCase() + this.label.slice(1).toLowerCase()}</p>\r\n ) : (\r\n <p class=\"dropdown_label text-sm-medium\">{this.label}</p>\r\n )}\r\n </>\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 && (\r\n <>{this.type === 'search' || this.type === 'tags' || this.type === 'icon_leading' ? <div class={`icon`} innerHTML={this.leadingIconSvg}></div> : null}</>\r\n )}\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' && this.type !== 'search' && (\r\n <>\r\n {this.placeholder && (\r\n <div class=\"placeholder\">\r\n <p class={`text-${this.size}-regular`} style={{ color: '#CDD5DF' }}>\r\n {this.placeholder}\r\n </p>\r\n </div>\r\n )}\r\n </>\r\n )}\r\n {this.state === 'default' && this.type === 'search' && (\r\n <div class=\"search_input\">\r\n <input\r\n type=\"text\"\r\n placeholder={this.placeholder}\r\n class={`text-${this.size}-regular`}\r\n ref={el => (this.inputRef = el)}\r\n onInput={this.emitInputValueToUseForSearch.bind(this)}\r\n />\r\n {this.showCloseButton && (\r\n <gb-button\r\n class={`close_button ${this.size}`}\r\n size={this.size}\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/cancel-01.svg\"\r\n onClick={() => this.clearInput()}\r\n ></gb-button>\r\n )}\r\n </div>\r\n )}\r\n {this.state === 'filled' && (\r\n <>\r\n <div class={`content`}>\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 text-${this.size}-regular`}>\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 {this.supportingText && (\r\n <div class={`supporting_text text-${this.size}-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={this.placeholder}\r\n type=\"icon_leading\"\r\n labelText=\"label\"\r\n idOfInput=\"3\"\r\n onInputValueChanged={this.searchItemsInDropdownMenu.bind(this)}\r\n ></gb-input-field>\r\n </div>\r\n )}\r\n {this.loading && (\r\n <div class=\"loader_div\">\r\n <div class=\"loader\"></div>\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 === '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 <gb-input-dropdown-menu-item state={StateEnum.Default} supporting-text={this.supportingText} color={this.color} onClick={() => this.handleItemSelect()}>\r\n <p slot=\"name\">--{this.placeholder}--</p>\r\n </gb-input-dropdown-menu-item>\r\n {this.items.map(item => [\r\n <gb-input-dropdown-menu-item\r\n type={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","@import './../../global/global.css';\r\n\r\n.dropdown-container {\r\n display: flex;\r\n padding: var(--spacing-1);\r\n align-items: center;\r\n gap: var(--spacing-none);\r\n border-radius: var(--rounded-none);\r\n cursor: pointer;\r\n}\r\n\r\n.dropdown-item {\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n flex: 1 0 0;\r\n min-width: 0;\r\n border-radius: var(--rounded-xs);\r\n cursor: pointer;\r\n font-family: var(--Font-Family-Body, Sora);\r\n font-style: normal;\r\n letter-spacing: var(--Font-Letter-spacing-T-md, 0px);\r\n}\r\n\r\n/* .name_text{\r\n max-width: 5rem;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n} */\r\n\r\n.content {\r\n display: flex;\r\n align-items: center;\r\n gap: 0.5rem; /* if needed */\r\n min-width: 0; /* ❗ critical for ellipsis to work */\r\n}\r\n\r\n::slotted([slot='name']) {\r\n width: 100%;\r\n /* max-width: 15rem; */\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n flex: 1 1 auto;\r\n white-space: nowrap;\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n::slotted([slot='supporting_text']) {\r\n font-size: var(--Font-Size-T-sm, 14px);\r\n font-weight: var(--Font-Weight-Regular, 400);\r\n line-height: var(--Font-Line-height-T-sm, 20px); /* 142.857% */\r\n overflow: hidden;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n color: var(--color-text, #4b5565) !important;\r\n}\r\n\r\n/* Icon Styles */\r\n.icon_leading {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.icon_leading svg {\r\n width: 1.25rem;\r\n height: 1.25rem;\r\n}\r\n\r\n.icon_leading path[fill] {\r\n fill: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon_leading path[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon_leading path#Icon[fill] {\r\n fill: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon_leading path#Icon[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon_leading path#Accent[fill] {\r\n fill: var(--color-Accent, #4B5565);\r\n}\r\n\r\n.icon_leading path#Icon[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon_leading circle[fill] {\r\n fill: var(--color-icon, #4B5565);\r\n}\r\n\r\n.icon_leading circle[stroke] {\r\n stroke: var(--color-icon, #4B5565);\r\n}\r\n\r\n/* State Styles */\r\n.dropdown-item:hover {\r\n background-color: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\n.dropdown-item:active {\r\n background-color: var(--color-background-gray-subtle, #e3e8ef);\r\n}\r\n\r\n.dropdown-item.default.selected,\r\n.dropdown-item.icon_leading.selected,\r\n.dropdown-item.avatar_leading.selected,\r\n.dropdown-item.dot_leading.selected {\r\n background-color: var(--color-background-information-subtlest, #e4f0fc);\r\n}\r\n\r\n.dropdown-item.default.selected:hover,\r\n.dropdown-item.icon_leading.selected:hover,\r\n.dropdown-item.avatar_leading.selected:hover,\r\n.dropdown-item.dot_leading.selected:hover {\r\n background-color: var(--color-background-discovery-subtlest, #f0f9ff);\r\n}\r\n\r\n.dropdown-item.default.selected:active,\r\n.dropdown-item.icon_leading.selected:active,\r\n.dropdown-item.avatar_leading.selected:active,\r\n.dropdown-item.dot_leading.selected:active {\r\n background-color: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n.dropdown-item.default.selected.disabled,\r\n.dropdown-item.icon_leading.selected.disabled,\r\n.dropdown-item.avatar_leading.selected.disabled,\r\n.dropdown-item.dot_leading.selected.disabled,\r\n.dropdown-item.checkbox.selected.disabled {\r\n background-color: transparent;\r\n color: var(--color-text-disabled, #cdd5df);\r\n}\r\n\r\n.content {\r\n display: flex;\r\n min-height: 2.5rem;\r\n padding: 0 var(--spacing-2);\r\n justify-content: flex-start;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n flex: 1 0 0;\r\n}\r\n\r\n.dropdown-item--selected slot {\r\n flex-grow: 1;\r\n margin-right: 8px;\r\n}\r\n\r\n.dropdown-item--selected svg:last-of-type {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.tick {\r\n display: flex;\r\n align-items: center;\r\n padding-right: var(--spacing-2);\r\n}\r\n","import { Component, Element, Prop, h, Fragment, Event, EventEmitter, State, getAssetPath } from '@stencil/core';\r\nimport { ColorTypes, DropdownTypes, StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-input-dropdown-menu-item',\r\n styleUrl: 'gb-input-dropdown-menu-item.css',\r\n shadow: true,\r\n})\r\nexport class GbInputDropdownMenuItem {\r\n @Prop() type: DropdownTypes;\r\n @Prop() supportingText: boolean = false;\r\n @Prop({ mutable: true }) selected: boolean = false;\r\n @Prop() state: StateEnum;\r\n @Prop() color: ColorTypes;\r\n @Prop() iconLeading: boolean = false;\r\n @Prop() iconLeadingSwap: string = '';\r\n @State() leadingIconSvg: string = '';\r\n @Event() dropdownItemClicked: EventEmitter<void>;\r\n\r\n @Element() el: HTMLElement;\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\r\n const parser = new DOMParser();\r\n const svgDoc = parser.parseFromString(svg, 'image/svg+xml');\r\n const svgElement = svgDoc.documentElement;\r\n\r\n // Add `has-opacity` class to all elements that have an opacity attribute\r\n const elementsWithOpacity = svgElement.querySelectorAll('[opacity]');\r\n elementsWithOpacity.forEach(el => {\r\n el.classList.add('has_opacity');\r\n });\r\n\r\n // Serialize and store\r\n const modifiedSvg = svgElement.outerHTML;\r\n // console.log(modifiedSvg)\r\n this.leadingIconSvg = modifiedSvg;\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.iconLeadingSwap);\r\n }\r\n\r\n componentDidLoad() {\r\n const nameSlot = this.el.querySelector('[slot=\"name\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"supporting_text\"]');\r\n const initialsSlot = this.el.querySelector('[slot=\"initials\"]');\r\n\r\n if (nameSlot) {\r\n nameSlot.classList.add('text-md-medium');\r\n nameSlot.classList.add('no_wrap');\r\n }\r\n\r\n if (initialsSlot) {\r\n initialsSlot.classList.add('text-xs-semi-bold');\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add('text-sm-regular');\r\n }\r\n }\r\n\r\n async handleClick() {\r\n this.dropdownItemClicked.emit();\r\n }\r\n\r\n render() {\r\n return (\r\n // <div class=\"dropdown-container\" onClick={() => (this.selected = !this.selected)}>\r\n <div class=\"dropdown-container\" onClick={() => this.handleClick()}>\r\n <div\r\n class={{\r\n 'dropdown-item': true,\r\n 'selected': this.selected,\r\n 'disabled': this.state === 'disabled',\r\n 'checkbox': this.type === 'checkbox',\r\n [this.type]: true,\r\n }}\r\n role=\"option\"\r\n aria-selected={this.selected ? 'true' : 'false'}\r\n aria-disabled={this.state === 'disabled' ? 'true' : 'false'}\r\n >\r\n <div class=\"content\">\r\n {this.type === 'icon_leading' && this.iconLeading && <div class={`icon_leading ${this.state}`} innerHTML={this.leadingIconSvg}></div>}\r\n {this.type === 'avatar_leading' && (\r\n <gb-avatar class=\"avatar-icon\" size=\"xs\" color={this.color} text={true}>\r\n <slot name=\"initials\" slot=\"initials\"></slot>\r\n </gb-avatar>\r\n )}\r\n {this.type === 'dot_leading' && (\r\n <>\r\n {this.state === 'default' ? (\r\n <svg id=\"icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 10 10\" fill=\"none\">\r\n <circle cx=\"5\" cy=\"5\" r=\"4\" fill=\"#17B26A\" />\r\n </svg>\r\n ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\">\r\n <circle cx=\"5\" cy=\"5\" r=\"4\" fill=\"#EEF2F6\" />\r\n </svg>\r\n )}\r\n </>\r\n )}\r\n {this.type === 'checkbox' && <gb-checkbox class=\"checkbox\" size=\"md\" type=\"checkbox\" state={this.state} checked={this.selected}></gb-checkbox>}\r\n <slot name=\"name\"></slot>\r\n {this.supportingText && (\r\n <span>\r\n <slot name=\"supporting_text\"></slot>\r\n </span>\r\n )}\r\n </div>\r\n {this.selected && this.type !== 'checkbox' && (\r\n <div class={`tick`}>\r\n {this.state !== 'disabled' ? (\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=\"M4.16669 12.0834C4.16669 12.0834 5.41669 12.0834 7.08335 15C7.08335 15 11.7157 7.36115 15.8334 5.83337\"\r\n stroke=\"#075DB2\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n ) : (\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=\"M4.16669 12.0834C4.16669 12.0834 5.41669 12.0834 7.08335 15C7.08335 15 11.7157 7.36115 15.8334 5.83337\"\r\n stroke=\"#CDD5DF\"\r\n stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n:host {\r\n position: relative;\r\n}\r\n\r\ninput {\r\n background: transparent;\r\n border: none;\r\n outline: none;\r\n}\r\n\r\n/* Target Chrome/Edge/Safari autofill */\r\ninput:-webkit-autofill,\r\ninput:-webkit-autofill:hover,\r\ninput:-webkit-autofill:focus,\r\ninput:-webkit-autofill:active {\r\n /* Make the text use your normal color */\r\n -webkit-text-fill-color: var(--color-text, #4b5565);\r\n\r\n /* Remove the yellow background Chrome applies by covering it */\r\n transition: background-color 9999s ease-in-out 0s;\r\n\r\n /* Or explicitly paint your own background */\r\n box-shadow: 0 0 0 1000px transparent inset !important;\r\n}\r\n\r\n/* Firefox */\r\ninput:autofill {\r\n background-color: transparent !important;\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.input_container,\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.label {\r\n color: var(--color-text, #4b5565);\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.content {\r\n width: 100%;\r\n height: 100%;\r\n border: none;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.content::placeholder,\r\n.input_like::placeholder {\r\n color: var(--color-text-disabled, #cdd5df);\r\n}\r\n\r\n.content:focus,\r\n.input_like:focus {\r\n outline: none;\r\n}\r\n\r\n.icon {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.input {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n align-self: stretch;\r\n border-radius: var(--rounded-sm);\r\n}\r\n\r\n.input,\r\n.input.icon_leading,\r\n.password_input {\r\n border: 1px solid var(--color-border-input, #cdd5df);\r\n background: var(--color-background-card, #ffffff);\r\n}\r\n\r\n.input.leading_text {\r\n flex-grow: 1;\r\n border-radius: var(--rounded-none, 0rem) 0.5rem 0.5rem var(--rounded-none, 0rem);\r\n}\r\n\r\n.leading_text_input {\r\n display: flex;\r\n gap: var(--spacing-none);\r\n padding: var(--spacing-none);\r\n}\r\n\r\n.add_on {\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n border: 1px solid var(--color-border-input, #cdd5df);\r\n border-right: none;\r\n padding: var(--spacing-2) var(--spacing-3);\r\n border-radius: 0.5rem var(--rounded-none) var(--rounded-none) 0.5rem;\r\n}\r\n\r\n.text_input {\r\n flex-grow: 1;\r\n height: 100%;\r\n}\r\n\r\n.trailing_button_text_input,\r\n.leading_dropdown_text_input {\r\n display: flex;\r\n flex-grow: 1;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.trailing_button_text_input.sm,\r\n.trailing_button_text_input.md {\r\n padding: var(--spacing-none) 0 0 var(--spacing-3);\r\n}\r\n\r\n.input.trailing_button.sm.default,\r\n.input.trailing_button.md.default {\r\n padding: 0;\r\n}\r\n\r\n.leading_dropdown_dropdown,\r\n.trailing_dropdown_dropdown {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-1);\r\n cursor: pointer;\r\n}\r\n\r\n.leading_dropdown_dropdown.disabled {\r\n padding-left: var(--spacing-2);\r\n}\r\n\r\n.dropdown_arrow {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.tick {\r\n width: 1.25rem;\r\n height: 1.25rem;\r\n}\r\n\r\n.help_circle {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n/* .input.tags{\r\n position: relative;\r\n} */\r\n\r\n/* Size Styles */\r\n.input.sm {\r\n min-height: 2.5rem;\r\n}\r\n\r\n.input.md {\r\n min-height: 3rem;\r\n}\r\n\r\n.input.sm.default,\r\n.input.sm.password_icon_leading {\r\n padding: var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.input.sm.icon_leading {\r\n position: relative;\r\n padding: var(--spacing-none) var(--spacing-2) var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.input.sm.payment_input {\r\n padding: var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.input.md.default {\r\n padding: var(--spacing-none) 0.875rem var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.input.md.icon_leading {\r\n position: relative;\r\n padding: var(--spacing-none) var(--spacing-2) var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.input.md.password_icon_leading {\r\n padding: var(--spacing-none) var(--spacing-2) var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.input.md.payment_input {\r\n padding: 0 0.875rem 0 var(--spacing-3);\r\n}\r\n\r\n/* State Styles */\r\n.input:focus-within,\r\n.password_input:focus-within,\r\n.count_text_input:focus-within,\r\n.input_like_parent:focus-within {\r\n border: 1.3px solid var(--color-border-selected, #075db2);\r\n}\r\n\r\n.input.disabled,\r\n.password_input.disabled,\r\n.count_text_input.disabled,\r\n.action.disabled,\r\n.input_like_parent.disabled {\r\n border: 1px solid var(--color-border-disabled, #e3e8ef);\r\n}\r\n\r\n.input.disabled,\r\n.content.disabled,\r\n.password_input.disabled,\r\n.count_text_input.disabled,\r\n.input_like_parent.disabled,\r\n.input_like.disabled {\r\n background: var(--color-background-disabled, #f6f8fa);\r\n color: var(--color-text-subtle, #697586);\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\n.input_group.disabled {\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\n.icon path[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.disabled path[stroke] {\r\n stroke: var(--color-icon-disabled, #cdd5df);\r\n}\r\n\r\n.input.destructive,\r\n.input.icon_leading.destructive,\r\n.count_text_input.destructive,\r\n.input_like_parent.destructive {\r\n border: 1px solid var(--color-border-danger, #b51726);\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='text'].text_slot) {\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n::slotted([slot='text'].text_slot.disabled) {\r\n color: var(--color-text-disabled, #cdd5df);\r\n}\r\n\r\n/* Type Styles */\r\n.password_input {\r\n display: flex;\r\n gap: var(--spacing-3);\r\n align-items: center;\r\n align-self: stretch;\r\n border-radius: var(--rounded-sm);\r\n}\r\n\r\n.password_content {\r\n display: flex;\r\n gap: var(--spacing-2);\r\n padding: 0.625rem var(--spacing-none) 0.625rem 0.875rem;\r\n flex-grow: 1;\r\n}\r\n\r\n.dropdown {\r\n padding-right: var(--spacing-half);\r\n padding-left: var(--spacing-3);\r\n}\r\n\r\n.password_icon_leading_content {\r\n display: flex;\r\n align-items: center;\r\n flex-grow: 1;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.count_input {\r\n display: flex;\r\n gap: var(--spacing-none);\r\n}\r\n\r\n.count_text_input {\r\n display: flex;\r\n padding: var(--spacing-none) var(--spacing-3);\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n flex: 1 0 0;\r\n align-self: stretch;\r\n border: 1px solid var(--color-border-input, #cdd5df);\r\n border-radius: 0.5rem var(--rounded-none) var(--rounded-none) 0.5rem;\r\n}\r\n\r\n.action {\r\n border: 1px solid var(--color-border-input, #cdd5df);\r\n border-left: none;\r\n display: flex;\r\n /* padding-right: var(--spacing-1); */\r\n align-items: center;\r\n gap: var(--spacing-none);\r\n align-self: stretch;\r\n border-radius: var(--rounded-none) 0.5rem 0.5rem var(--rounded-none);\r\n}\r\n\r\n/* hr{\r\n height: 100%;\r\n border-right: 0.5px solid var(--color-border-input, #CDD5DF);\r\n} */\r\n\r\n.vertical_line {\r\n width: 1px;\r\n height: 100%;\r\n background-color: var(--color-border-input, #cdd5df);\r\n /* border-right: 1px solid var(--color-border-input, #CDD5DF); */\r\n}\r\n\r\n.trailing_dropdown_content {\r\n display: flex;\r\n align-items: center;\r\n flex-grow: 1;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.country_icon {\r\n display: flex;\r\n align-items: center;\r\n}\r\n\r\n.dropdown_menu {\r\n display: flex;\r\n width: fit-content;\r\n min-height: fit-content;\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 z-index: 10;\r\n gap: var(--spacing-none);\r\n}\r\n\r\n.dropdown_menu.leading_dropdown,\r\n.dropdown_menu.trailing_dropdown {\r\n height: fit-content;\r\n overflow-y: auto;\r\n}\r\n\r\n.dropdown_menu.leading_dropdown.top.sm {\r\n bottom: 4rem;\r\n left: 0;\r\n}\r\n\r\n.dropdown_menu.leading_dropdown.top.md {\r\n bottom: 4.5rem;\r\n left: 0;\r\n}\r\n\r\n.dropdown_menu.leading_dropdown.bottom.sm {\r\n top: 4rem;\r\n left: 0;\r\n}\r\n\r\n.dropdown_menu.leading_dropdown.bottom.md {\r\n top: 4.5rem;\r\n left: 0;\r\n}\r\n\r\n.dropdown_menu.trailing_dropdown.top.sm {\r\n bottom: 3rem;\r\n right: 0;\r\n}\r\n\r\n.dropdown_menu.trailing_dropdown.top.md {\r\n bottom: 3.5rem;\r\n right: 0;\r\n}\r\n\r\n.dropdown_menu.trailing_dropdown.bottom.sm {\r\n top: 4rem;\r\n right: 0;\r\n}\r\n\r\n.dropdown_menu.trailing_dropdown.bottom.md {\r\n top: 4.5rem;\r\n right: 0;\r\n}\r\n\r\n/* Input Tags Styles */\r\n.input_group {\r\n --height: auto;\r\n --inputheight: 4.5rem;\r\n --weight: 100%;\r\n /* flex-direction: row-reverse; */\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n}\r\n\r\n.input_like_parent {\r\n border: 1px solid var(--color-border-input, #cdd5df);\r\n border-radius: var(--rounded-sm);\r\n display: flex;\r\n cursor: pointer;\r\n /* flex-wrap: wrap; */\r\n}\r\n\r\n.input_like_parent.sm,\r\n.input_like_parent.md {\r\n padding: var(--spacing-2);\r\n}\r\n\r\n.input_field {\r\n display: flex;\r\n gap: var(--spacing-2);\r\n align-items: center;\r\n}\r\n\r\n.hidden-span {\r\n visibility: hidden;\r\n position: absolute;\r\n max-width: 100%;\r\n white-space: pre; /* Preserves spaces */\r\n}\r\n\r\n.input_like {\r\n border: none;\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.results_display {\r\n display: flex;\r\n flex-wrap: wrap;\r\n position: relative;\r\n gap: 0.5rem;\r\n background-color: var(--color-surface, #ffffff);\r\n}\r\n\r\n.results_display.disabled {\r\n background: var(--color-background-disabled, #f6f8fa);\r\n}\r\n\r\n.tags {\r\n padding-top: 1rem;\r\n}\r\n\r\n.dropdown_list.show {\r\n display: block;\r\n}\r\n\r\n.tags_dropdown_menu {\r\n display: flex;\r\n min-width: 100%;\r\n width: fit-content;\r\n max-height: 15rem;\r\n padding: var(--spacing-none);\r\n flex-direction: column;\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 z-index: 99999;\r\n gap: var(--spacing-none);\r\n transition: 1s ease-in-out;\r\n overflow-y: auto;\r\n}\r\n\r\n.tags_dropdown_menu.top {\r\n bottom: 105%;\r\n}\r\n\r\n.tags_dropdown_menu.bottom {\r\n top: 105%;\r\n}\r\n\r\n.input_close_button {\r\n position: absolute;\r\n z-index: 9999;\r\n}\r\n\r\n.input_close_button.sm {\r\n right: 0.2rem;\r\n top: 0.15rem;\r\n}\r\n\r\n.input_close_button.md {\r\n right: 0.3rem;\r\n top: 0.25rem;\r\n}\r\n\r\n.loader {\r\n border: 3px solid var(--color-background-gray, #cdd5df); /* Light grey */\r\n border-top: 3px solid var(--color-background-selected, #075db2); /* Blue */\r\n border-radius: 50%;\r\n width: 10px;\r\n height: 10px;\r\n animation: spin 2s linear infinite;\r\n}\r\n\r\n@keyframes spin {\r\n 0% {\r\n transform: rotate(0deg);\r\n }\r\n 100% {\r\n transform: rotate(360deg);\r\n }\r\n}\r\n","import { Component, Prop, h, State, Event, EventEmitter, Fragment, Element, getAssetPath, Watch, Listen, AttachInternals, Method } from '@stencil/core';\r\nimport { GeneralSizes, InputFieldTypes, StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-input-field',\r\n styleUrl: 'gb-input-field.css',\r\n shadow: true,\r\n formAssociated: true,\r\n})\r\nexport class GbInputField {\r\n @AttachInternals() internals: ElementInternals;\r\n @Prop() size: GeneralSizes;\r\n @Prop() type: InputFieldTypes;\r\n @Prop() inputType: string = 'text';\r\n @Prop() minLength: number;\r\n @Prop() maxLength: number;\r\n @Prop({ mutable: true }) destructive: boolean = false;\r\n @Prop() state: 'default' | 'filled' | 'active' | 'disabled';\r\n @Prop() showLabel: boolean = false;\r\n @Prop() label: string = '';\r\n @Prop() showHintText: boolean = false;\r\n @Prop() hintText: string = '';\r\n @Prop() errorText: string = '';\r\n @Prop() showPlaceholder: boolean = false;\r\n @Prop() placeholder: string = '';\r\n @Prop() showHelpIcon: boolean = false;\r\n @Prop() showValidation: boolean = false;\r\n @Prop() showCountryIcon: boolean = false;\r\n @Prop() iconSwap?: string;\r\n @Prop() enableCancelButtonFunction: boolean = false;\r\n @Prop({ mutable: true }) options: string[] = [\r\n // '+234', '+124'\r\n ];\r\n @Prop({ reflect: true }) idOfInput: string;\r\n @Prop({ reflect: true }) labelText: string;\r\n @Prop({ reflect: true }) isReadOnly: boolean = false;\r\n @Prop({ mutable: true }) results: any[] = [\r\n // { objectName: 'John Doe', objectValue: 'john.doe@example.com' },\r\n // { objectName: 'Jane Smith', objectValue: 'jane.smith@example.com' },\r\n // { objectName: 'Alice Johnson', objectValue: 'alice.johnson@example.com' },\r\n // { objectName: 'Emmanuel Kadiri', objectValue: 'kadiri2047@gmail.com' },\r\n // { objectName: 'Gideon Ogunkola', objectValue: 'gideon@example.com' },\r\n // 10,\r\n // 20,\r\n // 30,\r\n // 40,\r\n // 50,\r\n ];\r\n @Prop() menuPosition: 'top' | 'bottom';\r\n @Prop() icon: 'country' | 'avatar' | 'dot' | 'false';\r\n @Prop({ mutable: true }) value: any = [\r\n // { objectName: 'John Doe', objectValue: 'john.doe@example.com' },\r\n // { objectName: 'Jane Smith', objectValue: 'jane.smith@example.com' },\r\n // { objectName: 'Alice Johnson', objectValue: 'alice.johnson@example.com' },\r\n // { objectName: 'Emmanuel Kadiri', objectValue: 'kadiri2047@gmail.com' },\r\n // 10,\r\n ];\r\n @Prop({ reflect: true }) required: boolean = false;\r\n @Prop({ mutable: true }) loading: boolean = false;\r\n @Prop() formatLabel: boolean = true;\r\n @Prop() formatNumber: boolean = true;\r\n @State() showCloseButton?: boolean = false;\r\n @State() inputValue: string = '';\r\n @State() tags: string[] = [];\r\n @State() leadingIconSvg: string = '';\r\n @State() isPasswordVisible: boolean = false;\r\n @State() showDropdown: boolean = false;\r\n @State() selectedItem: string = '';\r\n @State() selectedItems: any[] = [];\r\n @State() unselectedItems: any[] = [];\r\n @State() paddingLeft: string = '1rem';\r\n @State() paddingTop: string = '0rem';\r\n @State() dropdownOpen: boolean = false;\r\n @State() show: boolean = false;\r\n @State() showSpinner: boolean = false;\r\n @State() internalLoading: boolean = this.loading;\r\n @Event() inputValueChanged: EventEmitter<any>;\r\n @Event() buttonClicked: EventEmitter<void>;\r\n @Event() plusButtonClicked: EventEmitter<void>;\r\n @Event() minusButtonClicked: EventEmitter<void>;\r\n @Element() el: HTMLElement;\r\n\r\n private hiddenSpan: HTMLElement;\r\n private minWidth: number = 10;\r\n\r\n inputRef: HTMLInputElement;\r\n dropdownRef!: HTMLElement;\r\n inputElement!: HTMLInputElement;\r\n resultsDisplayElement!: HTMLDivElement;\r\n inputGroupElement!: HTMLDivElement;\r\n\r\n @Method()\r\n async isDestructive() {\r\n this.destructive = true;\r\n }\r\n\r\n @Method()\r\n async isNotDestructive() {\r\n this.destructive = false;\r\n }\r\n\r\n // formAssociatedCallback() {\r\n // // console.log('✅ formAssociatedCallback triggered');\r\n\r\n // this.internals.setValidity({});\r\n\r\n // // Optional: store reference to form\r\n // // const form = this.internals?.form;\r\n // // if (form) {\r\n // // console.log('🔗 Associated form:', form);\r\n // // }\r\n // }\r\n\r\n formResetCallback() {\r\n this.inputValue = '';\r\n this.value = '';\r\n this.internals.setValidity({});\r\n this.internals.setFormValue('');\r\n }\r\n\r\n // formDisabledCallback(disabled: boolean) {\r\n // if (disabled) {\r\n // this.state = 'disabled';\r\n // }\r\n // }\r\n\r\n // private runValidation() {\r\n // if (this.required && !this.inputValue.trim()) {\r\n // this.internals.setValidity({ valueMissing: true }, 'This field is required.', this.el.shadowRoot.querySelector('input'));\r\n // this.destructive = true;\r\n // } else {\r\n // this.internals.setValidity({});\r\n // this.destructive = false;\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 handleTagInput(event: Event) {\r\n const target = event.target as HTMLInputElement;\r\n this.inputValue = target.value; // Update the value\r\n // this.internals.setFormValue(this.inputValue);\r\n // this.runValidation();\r\n this.inputValueChanged.emit(this.inputValue);\r\n\r\n if (this.inputValue.trim() === '') {\r\n this.showDropdown = false;\r\n // this.results = [];\r\n return;\r\n }\r\n\r\n this.showSpinner = true;\r\n\r\n // Simulate API call\r\n setTimeout(() => {\r\n // this.results = this.mockStaffSearch(this.inputValue);\r\n this.showDropdown = this.results.length > 0;\r\n }, 1000);\r\n\r\n this.updateInputWidth();\r\n }\r\n\r\n // mockStaffSearch(query: string) {\r\n // const mockData = this.results;\r\n\r\n // return mockData.filter(staff => staff.name.toLowerCase().includes(query.toLowerCase()));\r\n // }\r\n\r\n selectDropdownItem(item: any) {\r\n if (this.value.length === 0) {\r\n const isObject = typeof item === 'object';\r\n const isSelected = this.selectedItems.some(i => (isObject ? i.objectName === item.objectName : i === item));\r\n if (isSelected) {\r\n // Unselect item: Move it from selectedItems to unselectedItems\r\n this.selectedItems = this.selectedItems.filter(i => (isObject ? i.objectName !== item.objectName : i !== item));\r\n if (!this.unselectedItems.some(i => (isObject ? i.objectName === item.objectName : i === item))) {\r\n this.unselectedItems = [...this.unselectedItems, item];\r\n }\r\n console.log(this.selectedItems);\r\n this.inputValueChanged.emit(this.selectedItems);\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.objectName !== item.objectName : i !== item));\r\n console.log(this.selectedItems);\r\n this.inputValueChanged.emit(this.selectedItems);\r\n }\r\n } else {\r\n const isObject = typeof item === 'object';\r\n const isSelected = this.selectedItems.some(i => (isObject ? i.objectName === item.objectName : i === item));\r\n\r\n if (isSelected) {\r\n this.value = this.value.filter(i => (isObject ? i.objectName !== item.objectName : i !== item));\r\n console.log(this.value);\r\n this.inputValueChanged.emit(this.value);\r\n } else {\r\n this.value = [...this.value, item]; // Add item to array\r\n console.log(this.value);\r\n this.inputValueChanged.emit(this.value);\r\n }\r\n }\r\n\r\n this.updateStyles();\r\n }\r\n\r\n handleTagRemove(index: number) {\r\n if (this.value.length > 0) {\r\n this.value = [...this.value.slice(0, index), ...this.value.slice(index + 1)];\r\n console.log(this.value);\r\n // this.updateStyles();\r\n } else {\r\n this.selectedItems = [...this.selectedItems.slice(0, index), ...this.selectedItems.slice(index + 1)];\r\n this.updateStyles();\r\n }\r\n }\r\n\r\n updateStyles() {\r\n setTimeout(() => {\r\n if (this.resultsDisplayElement) {\r\n const resultsWidth = this.resultsDisplayElement.offsetWidth;\r\n const inputWidth = this.inputElement.offsetWidth;\r\n\r\n this.paddingLeft = this.selectedItems.length === 0 ? '1rem' : `${resultsWidth + 10}px`;\r\n\r\n this.paddingTop = this.selectedItems.length > 2 ? '1rem' : `${inputWidth + 10}px`;\r\n }\r\n });\r\n\r\n if (this.destructive) {\r\n this.destructive = false;\r\n }\r\n this.inputValue = '';\r\n }\r\n\r\n exportSelectedStaff() {\r\n this.inputValueChanged.emit(this.selectedItems);\r\n }\r\n\r\n // private copyToClipboard = () => {\r\n // if (this.inputRef) {\r\n // this.inputRef.select();\r\n // document.execCommand('copy'); // Deprecated but works in most browsers\r\n // // For modern browsers:\r\n // navigator.clipboard.writeText(this.inputRef.value);\r\n // }\r\n // };\r\n\r\n onButtonClicked() {\r\n this.buttonClicked.emit();\r\n }\r\n\r\n onPlusButtonClicked() {\r\n this.plusButtonClicked.emit();\r\n }\r\n\r\n onMinusButtonClicked() {\r\n this.minusButtonClicked.emit();\r\n }\r\n\r\n @Listen('click', { target: 'document' })\r\n handleClickOutside(event: MouseEvent) {\r\n if (this.showDropdown && !this.el.contains(event.target as Node)) {\r\n this.showDropdown = false;\r\n }\r\n }\r\n\r\n /* Function to handle and emit the inputted values */\r\n handleInput(event: Event) {\r\n const target = event.target as HTMLInputElement;\r\n // read raw characters\r\n let raw = target.value.replace(/,/g, '');\r\n\r\n if (this.inputValue && this.enableCancelButtonFunction) {\r\n this.showCloseButton = true;\r\n } else {\r\n this.showCloseButton = false;\r\n }\r\n\r\n if (this.inputType === 'number') {\r\n // keep raw numeric value for data/form\r\n raw = raw.replace(/[^\\d.]/g, '');\r\n // format for display\r\n if(this.formatNumber) {\r\n this.inputValue = this.formatNumberWithCommas(raw);\r\n } else {\r\n this.inputValue = raw;\r\n }\r\n } else {\r\n // non-number: keep both synced (value = raw)\r\n this.inputValue = target.value;\r\n }\r\n\r\n // this.internals.setFormValue(this.inputValue);\r\n\r\n // this.runValidation();\r\n\r\n let emittedValue: any = this.inputValue;\r\n\r\n if (this.type === 'leading_dropdown') {\r\n emittedValue = {\r\n combined: `${this.selectedItem}${this.inputValue}`,\r\n prefix: this.selectedItem,\r\n value: this.inputValue,\r\n };\r\n }\r\n\r\n console.log('emitting:', emittedValue);\r\n this.inputValueChanged.emit(emittedValue);\r\n }\r\n\r\n // Prevent typing non-numeric characters when inputType === 'number'\r\n handleNumericKeyDown = (e: KeyboardEvent) => {\r\n if (this.inputType !== 'number') return;\r\n const key = e.key;\r\n\r\n // Allow navigation, editing and common shortcuts\r\n const allowed = [\r\n 'Backspace','Tab','Enter','Escape','ArrowLeft','ArrowRight','ArrowUp','ArrowDown',\r\n 'Delete','Home','End'\r\n ];\r\n if (allowed.includes(key) || e.ctrlKey || e.metaKey) return;\r\n\r\n // Allow digits and a single dot (.) for decimals\r\n const isDigit = /^[0-9]$/.test(key);\r\n if (key === '.') {\r\n const target = e.target as HTMLInputElement;\r\n if (target && target.value.includes('.')) {\r\n e.preventDefault();\r\n }\r\n return;\r\n }\r\n\r\n if (!isDigit) {\r\n e.preventDefault();\r\n }\r\n };\r\n\r\n // Sanitize pasted text for numeric inputs\r\n handleNumericPaste = (e: ClipboardEvent) => {\r\n if (this.inputType !== 'number') return;\r\n const clipboard = (e.clipboardData || (window as any).clipboardData)?.getData('text') || '';\r\n const sanitized = clipboard.replace(/[^0-9.]/g, '');\r\n if (sanitized !== clipboard) {\r\n e.preventDefault();\r\n const input = e.target as HTMLInputElement;\r\n const start = input.selectionStart ?? 0;\r\n const end = input.selectionEnd ?? 0;\r\n const newVal = input.value.slice(0, start) + sanitized + input.value.slice(end);\r\n input.value = newVal;\r\n // trigger input event so component picks up change\r\n input.dispatchEvent(new window.Event('input', { bubbles: true }));\r\n }\r\n }\r\n\r\n formatNumberWithCommas(value: string): string {\r\n if (!value) return '';\r\n if(!this.formatNumber) return;\r\n // Handle decimals properly\r\n const parts = value.split('.');\r\n parts[0] = parts[0].replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\r\n return parts.join('.');\r\n }\r\n\r\n handleInputFocus() {\r\n if (this.destructive) {\r\n this.destructive = false;\r\n }\r\n }\r\n\r\n clearInput() {\r\n if (this.inputRef) {\r\n this.inputRef.value = '';\r\n this.inputValue = this.inputRef.value;\r\n this.showCloseButton = false;\r\n this.inputValueChanged.emit(this.inputValue);\r\n }\r\n }\r\n\r\n /* Function to handle and emit the inputted values */\r\n togglePasswordVisibility() {\r\n this.isPasswordVisible = !this.isPasswordVisible;\r\n }\r\n\r\n @Watch('options')\r\n optionsChanged(newOptions: string[]) {\r\n // Update selectedItem when options are loaded or changed\r\n if (newOptions.length > 0 && !this.selectedItem) {\r\n this.selectedItem = newOptions[0];\r\n }\r\n }\r\n\r\n @Watch('loading')\r\n onLoadingChanged(newLoading: boolean) {\r\n this.internalLoading = newLoading;\r\n }\r\n\r\n isItemSelected(option) {\r\n return this.selectedItem === option;\r\n }\r\n\r\n isTagItemSelected(item) {\r\n // return this.selectedStaff.some(i => i.name === item.name);\r\n\r\n const isObject = typeof item === 'object';\r\n return this.selectedItems.some(i => (isObject ? i.objectName === item.objectName : i === item));\r\n }\r\n\r\n handleItemSelect(option) {\r\n // For other types, allow only one selection\r\n this.selectedItem = option;\r\n this.showDropdown = false; // Close the dropdown\r\n }\r\n\r\n @Watch('value')\r\n updateSelectedItems(newValue: any[]) {\r\n if (Array.isArray(newValue) && newValue.length > 0) {\r\n this.selectedItems = [];\r\n this.unselectedItems = [];\r\n\r\n const objectValues = newValue.filter(val => typeof val === 'object' && val !== null);\r\n const primitiveValues = newValue.filter(val => typeof val !== 'object');\r\n\r\n this.selectedItems = this.results.filter(item =>\r\n typeof item === 'object' && item !== null\r\n ? objectValues.some(val => JSON.stringify(val) === JSON.stringify(item)) // Avoid object reference issues\r\n : primitiveValues.includes(item),\r\n );\r\n\r\n this.unselectedItems = this.results.filter(item =>\r\n typeof item === 'object' && item !== null ? !objectValues.some(val => JSON.stringify(val) === JSON.stringify(item)) : !primitiveValues.includes(item),\r\n );\r\n } else {\r\n this.selectedItems = [];\r\n this.unselectedItems = [...this.results];\r\n }\r\n }\r\n\r\n componentWillLoad() {\r\n // setTimeout(() => {\r\n // this.loading = true;\r\n // }, 3000);\r\n\r\n this.selectedItem = this.options[0];\r\n\r\n this.loadIcon(this.iconSwap);\r\n\r\n if (this.type !== 'tags') {\r\n this.selectedItem = null; // For single selection types\r\n }\r\n\r\n this.updateSelectedItems(this.value);\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.options && this.options.length > 0) {\r\n this.selectedItem = this.options[0]; // Set the first item as default\r\n }\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 const textSlot = this.el.querySelector('[slot=\"text\"]');\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 if (textSlot) {\r\n textSlot.classList.add('text_slot');\r\n\r\n if (this.state === 'disabled') {\r\n textSlot.classList.add('disabled');\r\n }\r\n\r\n textSlot.classList.add('text-md-regular');\r\n }\r\n\r\n if (this.type === 'tags') {\r\n document.addEventListener('click', this.handleClickOutside);\r\n }\r\n // this.inputElement.addEventListener('input', this.handleTagInput.bind(this));\r\n this.updateInputWidth();\r\n }\r\n\r\n updateInputWidth() {\r\n if (this.hiddenSpan) {\r\n const input = this.el.shadowRoot.querySelector('input') as HTMLInputElement;\r\n\r\n // Update input width based on span's width or use minimum width\r\n const calculatedWidth = Math.max(this.hiddenSpan.offsetWidth + 10, this.minWidth);\r\n input.style.width = `${calculatedWidth}px`;\r\n }\r\n }\r\n\r\n handleWrapperClick() {\r\n this.inputElement.focus(); // Focus the input field\r\n }\r\n\r\n // disconnectedCallback() {\r\n // document.removeEventListener('click', this.handleClickOutside);\r\n // this.inputElement.removeEventListener('input', this.handleTagInput.bind(this));\r\n // }\r\n\r\n render() {\r\n return (\r\n <div class={`input_container`}>\r\n <div class={`input_with_label`}>\r\n {this.showLabel && (\r\n <>\r\n {this.formatLabel ? (\r\n <p class=\"label text-sm-medium\">{this.label.charAt(0).toUpperCase() + this.label.slice(1).toLowerCase()}</p>\r\n ) : (\r\n <p class=\"label text-sm-medium\">{this.label}</p>\r\n )}\r\n </>\r\n )}\r\n {this.type === 'default' && [\r\n <div class={`input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <input\r\n class={`content text-md-regular ${this.type} ${this.state}`}\r\n type={this.inputType === 'number' ? 'text' : this.inputType}\r\n inputMode={this.inputType === 'number' ? 'numeric' : undefined}\r\n pattern={this.inputType === 'number' ? '[0-9]*' : undefined}\r\n minLength={this.minLength}\r\n maxLength={this.maxLength}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n onFocus={() => this.handleInputFocus()}\r\n onKeyDown={e => this.handleNumericKeyDown(e as KeyboardEvent)} // <- added\r\n onPaste={e => this.handleNumericPaste(e as ClipboardEvent)}\r\n value={this.value.length === 0 ? this.inputValue : this.value}\r\n />\r\n <>\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showValidation && (\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=\"M7.03831 9.9735C6.6785 9.76829 6.22047 9.89362 6.01526 10.2534C5.81005 10.6132 5.93538 11.0713 6.29518 11.2765L7.03831 9.9735ZM8.66675 12.5L8.0231 12.885C8.16612 13.1241 8.42989 13.2642 8.70808 13.2489C8.98627 13.2335 9.23302 13.0652 9.34885 12.8118L8.66675 12.5ZM13.6933 7.32469C14.0567 7.12594 14.1902 6.67022 13.9914 6.3068C13.7927 5.94338 13.337 5.80988 12.9736 6.00863L13.6933 7.32469ZM19.0834 9.99999C19.0834 4.9834 15.0167 0.916656 10.0001 0.916656V2.41666C14.1882 2.41666 17.5834 5.81183 17.5834 9.99999H19.0834ZM10.0001 0.916656C4.98349 0.916656 0.916748 4.9834 0.916748 9.99999H2.41675C2.41675 5.81183 5.81192 2.41666 10.0001 2.41666V0.916656ZM0.916748 9.99999C0.916748 15.0166 4.98349 19.0833 10.0001 19.0833V17.5833C5.81192 17.5833 2.41675 14.1881 2.41675 9.99999H0.916748ZM10.0001 19.0833C15.0167 19.0833 19.0834 15.0166 19.0834 9.99999H17.5834C17.5834 14.1881 14.1882 17.5833 10.0001 17.5833V19.0833ZM6.66675 10.625C6.29518 11.2765 6.29506 11.2764 6.29494 11.2763C6.2949 11.2763 6.29478 11.2763 6.29472 11.2762C6.29458 11.2761 6.29446 11.2761 6.29437 11.276C6.29417 11.2759 6.29406 11.2758 6.29402 11.2758C6.29394 11.2758 6.29418 11.2759 6.29472 11.2762C6.2958 11.2768 6.2981 11.2782 6.30155 11.2802C6.30845 11.2843 6.31994 11.2911 6.33556 11.3006C6.36683 11.3196 6.41441 11.3492 6.47453 11.3886C6.59518 11.4676 6.76402 11.5846 6.9516 11.7329C7.33643 12.0371 7.75673 12.4397 8.0231 12.885L9.31039 12.115C8.9101 11.4458 8.3304 10.9108 7.8819 10.5562C7.65281 10.3751 7.44665 10.2322 7.29647 10.1338C7.22117 10.0845 7.15938 10.046 7.11512 10.0191C7.09298 10.0056 7.07518 9.99502 7.06222 9.98739C7.05574 9.98358 7.05047 9.98051 7.04646 9.97819C7.04446 9.97703 7.04278 9.97606 7.04142 9.97528C7.04073 9.97489 7.04013 9.97454 7.03962 9.97425C7.03936 9.9741 7.03912 9.97396 7.0389 9.97384C7.03879 9.97377 7.03865 9.97369 7.03859 9.97366C7.03845 9.97358 7.03831 9.9735 6.66675 10.625ZM8.66675 12.5C9.34885 12.8118 9.3488 12.8119 9.34876 12.812C9.34876 12.812 9.34872 12.8121 9.34871 12.8121C9.3487 12.8122 9.34871 12.8121 9.34876 12.812C9.34884 12.8118 9.34905 12.8114 9.34938 12.8107C9.35003 12.8092 9.35117 12.8068 9.35277 12.8033C9.35599 12.7964 9.36109 12.7855 9.36805 12.7708C9.38196 12.7413 9.40327 12.6967 9.43164 12.6386C9.48841 12.5226 9.57333 12.3531 9.68378 12.1445C9.90507 11.7264 10.2268 11.1546 10.628 10.5403C11.4489 9.28341 12.5314 7.96007 13.6933 7.32469L12.9736 6.00863C11.4687 6.83158 10.218 8.4249 9.37213 9.72011C8.93998 10.3818 8.59509 10.9949 8.35805 11.4427C8.23933 11.667 8.14717 11.8508 8.08415 11.9797C8.05262 12.0441 8.02836 12.0949 8.01167 12.1303C8.00333 12.1479 7.99688 12.1617 7.99236 12.1715C7.9901 12.1763 7.98833 12.1802 7.98704 12.183C7.98639 12.1844 7.98587 12.1855 7.98547 12.1864C7.98527 12.1868 7.9851 12.1872 7.98496 12.1875C7.9849 12.1876 7.98482 12.1878 7.98478 12.1879C7.98471 12.188 7.98464 12.1882 8.66675 12.5Z\"\r\n fill=\"#079455\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </>\r\n </div>,\r\n ]}\r\n {this.type === 'icon_leading' && [\r\n <div class={`input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <div class={`icon ${this.size} ${this.state}`} innerHTML={this.leadingIconSvg}></div>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.inputType === 'number' ? 'text' : this.inputType}\r\n inputMode={this.inputType === 'number' ? 'numeric' : undefined}\r\n pattern={this.inputType === 'number' ? '[0-9]*' : undefined}\r\n minLength={this.minLength}\r\n maxLength={this.maxLength}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n value={this.value.length === 0 ? this.inputValue : this.value}\r\n ref={el => (this.inputRef = el as HTMLInputElement)}\r\n onFocus={() => this.handleInputFocus()}\r\n onKeyDown={e => this.handleNumericKeyDown(e as KeyboardEvent)} // <- added\r\n onPaste={e => this.handleNumericPaste(e as ClipboardEvent)}\r\n />\r\n <>\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showValidation && !this.destructive && (\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=\"M7.03831 9.9735C6.6785 9.76829 6.22047 9.89362 6.01526 10.2534C5.81005 10.6132 5.93538 11.0713 6.29518 11.2765L7.03831 9.9735ZM8.66675 12.5L8.0231 12.885C8.16612 13.1241 8.42989 13.2642 8.70808 13.2489C8.98627 13.2335 9.23302 13.0652 9.34885 12.8118L8.66675 12.5ZM13.6933 7.32469C14.0567 7.12594 14.1902 6.67022 13.9914 6.3068C13.7927 5.94338 13.337 5.80988 12.9736 6.00863L13.6933 7.32469ZM19.0834 9.99999C19.0834 4.9834 15.0167 0.916656 10.0001 0.916656V2.41666C14.1882 2.41666 17.5834 5.81183 17.5834 9.99999H19.0834ZM10.0001 0.916656C4.98349 0.916656 0.916748 4.9834 0.916748 9.99999H2.41675C2.41675 5.81183 5.81192 2.41666 10.0001 2.41666V0.916656ZM0.916748 9.99999C0.916748 15.0166 4.98349 19.0833 10.0001 19.0833V17.5833C5.81192 17.5833 2.41675 14.1881 2.41675 9.99999H0.916748ZM10.0001 19.0833C15.0167 19.0833 19.0834 15.0166 19.0834 9.99999H17.5834C17.5834 14.1881 14.1882 17.5833 10.0001 17.5833V19.0833ZM6.66675 10.625C6.29518 11.2765 6.29506 11.2764 6.29494 11.2763C6.2949 11.2763 6.29478 11.2763 6.29472 11.2762C6.29458 11.2761 6.29446 11.2761 6.29437 11.276C6.29417 11.2759 6.29406 11.2758 6.29402 11.2758C6.29394 11.2758 6.29418 11.2759 6.29472 11.2762C6.2958 11.2768 6.2981 11.2782 6.30155 11.2802C6.30845 11.2843 6.31994 11.2911 6.33556 11.3006C6.36683 11.3196 6.41441 11.3492 6.47453 11.3886C6.59518 11.4676 6.76402 11.5846 6.9516 11.7329C7.33643 12.0371 7.75673 12.4397 8.0231 12.885L9.31039 12.115C8.9101 11.4458 8.3304 10.9108 7.8819 10.5562C7.65281 10.3751 7.44665 10.2322 7.29647 10.1338C7.22117 10.0845 7.15938 10.046 7.11512 10.0191C7.09298 10.0056 7.07518 9.99502 7.06222 9.98739C7.05574 9.98358 7.05047 9.98051 7.04646 9.97819C7.04446 9.97703 7.04278 9.97606 7.04142 9.97528C7.04073 9.97489 7.04013 9.97454 7.03962 9.97425C7.03936 9.9741 7.03912 9.97396 7.0389 9.97384C7.03879 9.97377 7.03865 9.97369 7.03859 9.97366C7.03845 9.97358 7.03831 9.9735 6.66675 10.625ZM8.66675 12.5C9.34885 12.8118 9.3488 12.8119 9.34876 12.812C9.34876 12.812 9.34872 12.8121 9.34871 12.8121C9.3487 12.8122 9.34871 12.8121 9.34876 12.812C9.34884 12.8118 9.34905 12.8114 9.34938 12.8107C9.35003 12.8092 9.35117 12.8068 9.35277 12.8033C9.35599 12.7964 9.36109 12.7855 9.36805 12.7708C9.38196 12.7413 9.40327 12.6967 9.43164 12.6386C9.48841 12.5226 9.57333 12.3531 9.68378 12.1445C9.90507 11.7264 10.2268 11.1546 10.628 10.5403C11.4489 9.28341 12.5314 7.96007 13.6933 7.32469L12.9736 6.00863C11.4687 6.83158 10.218 8.4249 9.37213 9.72011C8.93998 10.3818 8.59509 10.9949 8.35805 11.4427C8.23933 11.667 8.14717 11.8508 8.08415 11.9797C8.05262 12.0441 8.02836 12.0949 8.01167 12.1303C8.00333 12.1479 7.99688 12.1617 7.99236 12.1715C7.9901 12.1763 7.98833 12.1802 7.98704 12.183C7.98639 12.1844 7.98587 12.1855 7.98547 12.1864C7.98527 12.1868 7.9851 12.1872 7.98496 12.1875C7.9849 12.1876 7.98482 12.1878 7.98478 12.1879C7.98471 12.188 7.98464 12.1882 8.66675 12.5Z\"\r\n fill=\"#079455\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n {this.showCloseButton && !this.destructive && (\r\n <gb-button\r\n size={this.size}\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/cancel-01.svg\"\r\n onClick={() => this.clearInput()}\r\n class={`input_close_button ${this.size}`}\r\n ></gb-button>\r\n )}\r\n </>\r\n </div>,\r\n ]}\r\n {this.type === 'leading_dropdown' && [\r\n <div class={`input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <div class={`leading_dropdown_dropdown ${this.state}`} onClick={() => (this.showDropdown = !this.showDropdown)}>\r\n {this.showCountryIcon && (\r\n <div class={`country_icon`}>\r\n <img src=\"build/assets/NG.svg\" alt=\"\" />\r\n </div>\r\n )}\r\n <div class={`dropdown_text`}>\r\n <p class={`text-${this.size}-regular`} style={{ color: 'var(--color-text, #4B5565)' }}>\r\n {this.selectedItem}\r\n </p>\r\n </div>\r\n <div class={`dropdown_arrow`}>\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=\"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=\"#4B5565\"\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 </div>\r\n <div class={`leading_dropdown_text_input`}>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.inputType === 'number' ? 'text' : this.inputType}\r\n inputMode={this.inputType === 'number' ? 'numeric' : undefined}\r\n pattern={this.inputType === 'number' ? '[0-9]*' : undefined}\r\n minLength={this.minLength}\r\n maxLength={this.maxLength}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n value={this.value.length === 0 ? this.inputValue : this.value}\r\n onFocus={() => this.handleInputFocus()}\r\n onKeyDown={e => this.handleNumericKeyDown(e as KeyboardEvent)} // <- added\r\n onPaste={e => this.handleNumericPaste(e as ClipboardEvent)}\r\n />\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showValidation && !this.destructive && (\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=\"M7.03831 9.9735C6.6785 9.76829 6.22047 9.89362 6.01526 10.2534C5.81005 10.6132 5.93538 11.0713 6.29518 11.2765L7.03831 9.9735ZM8.66675 12.5L8.0231 12.885C8.16612 13.1241 8.42989 13.2642 8.70808 13.2489C8.98627 13.2335 9.23302 13.0652 9.34885 12.8118L8.66675 12.5ZM13.6933 7.32469C14.0567 7.12594 14.1902 6.67022 13.9914 6.3068C13.7927 5.94338 13.337 5.80988 12.9736 6.00863L13.6933 7.32469ZM19.0834 9.99999C19.0834 4.9834 15.0167 0.916656 10.0001 0.916656V2.41666C14.1882 2.41666 17.5834 5.81183 17.5834 9.99999H19.0834ZM10.0001 0.916656C4.98349 0.916656 0.916748 4.9834 0.916748 9.99999H2.41675C2.41675 5.81183 5.81192 2.41666 10.0001 2.41666V0.916656ZM0.916748 9.99999C0.916748 15.0166 4.98349 19.0833 10.0001 19.0833V17.5833C5.81192 17.5833 2.41675 14.1881 2.41675 9.99999H0.916748ZM10.0001 19.0833C15.0167 19.0833 19.0834 15.0166 19.0834 9.99999H17.5834C17.5834 14.1881 14.1882 17.5833 10.0001 17.5833V19.0833ZM6.66675 10.625C6.29518 11.2765 6.29506 11.2764 6.29494 11.2763C6.2949 11.2763 6.29478 11.2763 6.29472 11.2762C6.29458 11.2761 6.29446 11.2761 6.29437 11.276C6.29417 11.2759 6.29406 11.2758 6.29402 11.2758C6.29394 11.2758 6.29418 11.2759 6.29472 11.2762C6.2958 11.2768 6.2981 11.2782 6.30155 11.2802C6.30845 11.2843 6.31994 11.2911 6.33556 11.3006C6.36683 11.3196 6.41441 11.3492 6.47453 11.3886C6.59518 11.4676 6.76402 11.5846 6.9516 11.7329C7.33643 12.0371 7.75673 12.4397 8.0231 12.885L9.31039 12.115C8.9101 11.4458 8.3304 10.9108 7.8819 10.5562C7.65281 10.3751 7.44665 10.2322 7.29647 10.1338C7.22117 10.0845 7.15938 10.046 7.11512 10.0191C7.09298 10.0056 7.07518 9.99502 7.06222 9.98739C7.05574 9.98358 7.05047 9.98051 7.04646 9.97819C7.04446 9.97703 7.04278 9.97606 7.04142 9.97528C7.04073 9.97489 7.04013 9.97454 7.03962 9.97425C7.03936 9.9741 7.03912 9.97396 7.0389 9.97384C7.03879 9.97377 7.03865 9.97369 7.03859 9.97366C7.03845 9.97358 7.03831 9.9735 6.66675 10.625ZM8.66675 12.5C9.34885 12.8118 9.3488 12.8119 9.34876 12.812C9.34876 12.812 9.34872 12.8121 9.34871 12.8121C9.3487 12.8122 9.34871 12.8121 9.34876 12.812C9.34884 12.8118 9.34905 12.8114 9.34938 12.8107C9.35003 12.8092 9.35117 12.8068 9.35277 12.8033C9.35599 12.7964 9.36109 12.7855 9.36805 12.7708C9.38196 12.7413 9.40327 12.6967 9.43164 12.6386C9.48841 12.5226 9.57333 12.3531 9.68378 12.1445C9.90507 11.7264 10.2268 11.1546 10.628 10.5403C11.4489 9.28341 12.5314 7.96007 13.6933 7.32469L12.9736 6.00863C11.4687 6.83158 10.218 8.4249 9.37213 9.72011C8.93998 10.3818 8.59509 10.9949 8.35805 11.4427C8.23933 11.667 8.14717 11.8508 8.08415 11.9797C8.05262 12.0441 8.02836 12.0949 8.01167 12.1303C8.00333 12.1479 7.99688 12.1617 7.99236 12.1715C7.9901 12.1763 7.98833 12.1802 7.98704 12.183C7.98639 12.1844 7.98587 12.1855 7.98547 12.1864C7.98527 12.1868 7.9851 12.1872 7.98496 12.1875C7.9849 12.1876 7.98482 12.1878 7.98478 12.1879C7.98471 12.188 7.98464 12.1882 8.66675 12.5Z\"\r\n fill=\"#079455\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </div>,\r\n <>\r\n {this.showDropdown && (\r\n <div class={`dropdown_menu ${this.type} ${this.size} ${this.menuPosition}`} ref={el => (this.dropdownRef = el)}>\r\n {this.options.map(option => (\r\n <gb-input-dropdown-menu-item\r\n type=\"default\"\r\n state={this.options.length === 1 ? StateEnum.Disabled : StateEnum.Default}\r\n selected={this.isItemSelected(option)}\r\n onClick={() => this.handleItemSelect(option)}\r\n >\r\n <p slot=\"name\">{option}</p>\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </div>\r\n )}\r\n </>,\r\n ]}\r\n {this.type === 'trailing_dropdown' && [\r\n <div class={`input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <div class={`trailing_dropdown_content`}>\r\n <p class={`text-${this.size}-regular`} style={{ color: 'var(--color-text, #4B5565)' }}>\r\n $\r\n </p>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.inputType === 'number' ? 'text' : this.inputType}\r\n inputMode={this.inputType === 'number' ? 'numeric' : undefined}\r\n pattern={this.inputType === 'number' ? '[0-9]*' : undefined}\r\n minLength={this.minLength}\r\n maxLength={this.maxLength}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n value={this.value.length === 0 ? this.inputValue : this.value}\r\n onFocus={() => this.handleInputFocus()}\r\n onKeyDown={e => this.handleNumericKeyDown(e as KeyboardEvent)} // <- added\r\n onPaste={e => this.handleNumericPaste(e as ClipboardEvent)}\r\n // onBlur={() => this.runValidation()}\r\n />\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n <div class={`trailing_dropdown_dropdown`} onClick={() => (this.showDropdown = !this.showDropdown)}>\r\n <div class={`dropdown_text`}>\r\n <p class={`text-${this.size}-regular`} style={{ color: 'var(--color-text, #4B5565)' }}>\r\n {this.selectedItem}\r\n </p>\r\n </div>\r\n <div class={`dropdown_arrow`}>\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=\"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=\"#4B5565\"\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 </div>\r\n </div>,\r\n <>\r\n {this.showDropdown && (\r\n <div class={`dropdown_menu ${this.type} ${this.size} ${this.menuPosition}`} ref={el => (this.dropdownRef = el)}>\r\n {this.options.map(option => (\r\n <gb-input-dropdown-menu-item type=\"default\" state={StateEnum.Default} selected={this.isItemSelected(option)} onClick={() => this.handleItemSelect(option)}>\r\n <p slot=\"name\">{option}</p>\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </div>\r\n )}\r\n </>,\r\n ]}\r\n {this.type === 'leading_text' && [\r\n <div class=\"leading_text_input\">\r\n <div class={`add_on`}>\r\n {/* <p class={`text-${this.size}-regular`} style={{ color: this.state === 'disabled' ? 'var(--color-text-disabled, #CDD5DF)' : 'var(--color-text, #4B5565)' }}>\r\n http://\r\n </p> */}\r\n <slot name=\"text\"></slot>\r\n </div>\r\n <div class={`input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.inputType === 'number' ? 'text' : this.inputType}\r\n inputMode={this.inputType === 'number' ? 'numeric' : undefined}\r\n pattern={this.inputType === 'number' ? '[0-9]*' : undefined}\r\n minLength={this.minLength}\r\n maxLength={this.maxLength}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n value={this.value.length === 0 ? this.inputValue : this.value}\r\n onFocus={() => this.handleInputFocus()}\r\n onKeyDown={e => this.handleNumericKeyDown(e as KeyboardEvent)} // <- added\r\n onPaste={e => this.handleNumericPaste(e as ClipboardEvent)}\r\n // onBlur={() => this.runValidation()}\r\n />\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showValidation && !this.destructive && (\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=\"M7.03831 9.9735C6.6785 9.76829 6.22047 9.89362 6.01526 10.2534C5.81005 10.6132 5.93538 11.0713 6.29518 11.2765L7.03831 9.9735ZM8.66675 12.5L8.0231 12.885C8.16612 13.1241 8.42989 13.2642 8.70808 13.2489C8.98627 13.2335 9.23302 13.0652 9.34885 12.8118L8.66675 12.5ZM13.6933 7.32469C14.0567 7.12594 14.1902 6.67022 13.9914 6.3068C13.7927 5.94338 13.337 5.80988 12.9736 6.00863L13.6933 7.32469ZM19.0834 9.99999C19.0834 4.9834 15.0167 0.916656 10.0001 0.916656V2.41666C14.1882 2.41666 17.5834 5.81183 17.5834 9.99999H19.0834ZM10.0001 0.916656C4.98349 0.916656 0.916748 4.9834 0.916748 9.99999H2.41675C2.41675 5.81183 5.81192 2.41666 10.0001 2.41666V0.916656ZM0.916748 9.99999C0.916748 15.0166 4.98349 19.0833 10.0001 19.0833V17.5833C5.81192 17.5833 2.41675 14.1881 2.41675 9.99999H0.916748ZM10.0001 19.0833C15.0167 19.0833 19.0834 15.0166 19.0834 9.99999H17.5834C17.5834 14.1881 14.1882 17.5833 10.0001 17.5833V19.0833ZM6.66675 10.625C6.29518 11.2765 6.29506 11.2764 6.29494 11.2763C6.2949 11.2763 6.29478 11.2763 6.29472 11.2762C6.29458 11.2761 6.29446 11.2761 6.29437 11.276C6.29417 11.2759 6.29406 11.2758 6.29402 11.2758C6.29394 11.2758 6.29418 11.2759 6.29472 11.2762C6.2958 11.2768 6.2981 11.2782 6.30155 11.2802C6.30845 11.2843 6.31994 11.2911 6.33556 11.3006C6.36683 11.3196 6.41441 11.3492 6.47453 11.3886C6.59518 11.4676 6.76402 11.5846 6.9516 11.7329C7.33643 12.0371 7.75673 12.4397 8.0231 12.885L9.31039 12.115C8.9101 11.4458 8.3304 10.9108 7.8819 10.5562C7.65281 10.3751 7.44665 10.2322 7.29647 10.1338C7.22117 10.0845 7.15938 10.046 7.11512 10.0191C7.09298 10.0056 7.07518 9.99502 7.06222 9.98739C7.05574 9.98358 7.05047 9.98051 7.04646 9.97819C7.04446 9.97703 7.04278 9.97606 7.04142 9.97528C7.04073 9.97489 7.04013 9.97454 7.03962 9.97425C7.03936 9.9741 7.03912 9.97396 7.0389 9.97384C7.03879 9.97377 7.03865 9.97369 7.03859 9.97366C7.03845 9.97358 7.03831 9.9735 6.66675 10.625ZM8.66675 12.5C9.34885 12.8118 9.3488 12.8119 9.34876 12.812C9.34876 12.812 9.34872 12.8121 9.34871 12.8121C9.3487 12.8122 9.34871 12.8121 9.34876 12.812C9.34884 12.8118 9.34905 12.8114 9.34938 12.8107C9.35003 12.8092 9.35117 12.8068 9.35277 12.8033C9.35599 12.7964 9.36109 12.7855 9.36805 12.7708C9.38196 12.7413 9.40327 12.6967 9.43164 12.6386C9.48841 12.5226 9.57333 12.3531 9.68378 12.1445C9.90507 11.7264 10.2268 11.1546 10.628 10.5403C11.4489 9.28341 12.5314 7.96007 13.6933 7.32469L12.9736 6.00863C11.4687 6.83158 10.218 8.4249 9.37213 9.72011C8.93998 10.3818 8.59509 10.9949 8.35805 11.4427C8.23933 11.667 8.14717 11.8508 8.08415 11.9797C8.05262 12.0441 8.02836 12.0949 8.01167 12.1303C8.00333 12.1479 7.99688 12.1617 7.99236 12.1715C7.9901 12.1763 7.98833 12.1802 7.98704 12.183C7.98639 12.1844 7.98587 12.1855 7.98547 12.1864C7.98527 12.1868 7.9851 12.1872 7.98496 12.1875C7.9849 12.1876 7.98482 12.1878 7.98478 12.1879C7.98471 12.188 7.98464 12.1882 8.66675 12.5Z\"\r\n fill=\"#079455\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </div>,\r\n ]}\r\n {this.type === 'payment_input' && (\r\n <div class={`input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"23\" height=\"14\" viewBox=\"0 0 23 14\" fill=\"none\">\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M11.179 11.8294C9.99493 12.8275 8.45902 13.43 6.78069 13.43C3.03582 13.43 0 10.4303 0 6.72997C0 3.02966 3.03582 0.0299683 6.78069 0.0299683C8.45902 0.0299683 9.99493 0.632466 11.179 1.63051C12.363 0.632466 13.8989 0.0299683 15.5773 0.0299683C19.3221 0.0299683 22.358 3.02966 22.358 6.72997C22.358 10.4303 19.3221 13.43 15.5773 13.43C13.8989 13.43 12.363 12.8275 11.179 11.8294Z\"\r\n fill=\"#ED0006\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M11.179 11.8294C12.6369 10.6005 13.5614 8.77192 13.5614 6.72997C13.5614 4.68801 12.6369 2.85941 11.179 1.63051C12.363 0.632465 13.8989 0.0299683 15.5772 0.0299683C19.3221 0.0299683 22.3579 3.02966 22.3579 6.72997C22.3579 10.4303 19.3221 13.43 15.5772 13.43C13.8989 13.43 12.363 12.8275 11.179 11.8294Z\"\r\n fill=\"#F9A000\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M11.179 11.8294C12.6369 10.6005 13.5614 8.77193 13.5614 6.72999C13.5614 4.68805 12.6369 2.85946 11.179 1.63055C9.72109 2.85946 8.79663 4.68805 8.79663 6.72999C8.79663 8.77193 9.72109 10.6005 11.179 11.8294Z\"\r\n fill=\"#FF5E00\"\r\n />\r\n </svg>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.inputType === 'number' ? 'text' : this.inputType}\r\n inputMode={this.inputType === 'number' ? 'numeric' : undefined}\r\n pattern={this.inputType === 'number' ? '[0-9]*' : undefined}\r\n minLength={this.minLength}\r\n maxLength={this.maxLength}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n value={this.value.length === 0 ? this.inputValue : this.value}\r\n onFocus={() => this.handleInputFocus()}\r\n onKeyDown={e => this.handleNumericKeyDown(e as KeyboardEvent)} // <- added\r\n onPaste={e => this.handleNumericPaste(e as ClipboardEvent)}\r\n />\r\n <>\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showValidation && !this.destructive && (\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=\"M7.03831 9.9735C6.6785 9.76829 6.22047 9.89362 6.01526 10.2534C5.81005 10.6132 5.93538 11.0713 6.29518 11.2765L7.03831 9.9735ZM8.66675 12.5L8.0231 12.885C8.16612 13.1241 8.42989 13.2642 8.70808 13.2489C8.98627 13.2335 9.23302 13.0652 9.34885 12.8118L8.66675 12.5ZM13.6933 7.32469C14.0567 7.12594 14.1902 6.67022 13.9914 6.3068C13.7927 5.94338 13.337 5.80988 12.9736 6.00863L13.6933 7.32469ZM19.0834 9.99999C19.0834 4.9834 15.0167 0.916656 10.0001 0.916656V2.41666C14.1882 2.41666 17.5834 5.81183 17.5834 9.99999H19.0834ZM10.0001 0.916656C4.98349 0.916656 0.916748 4.9834 0.916748 9.99999H2.41675C2.41675 5.81183 5.81192 2.41666 10.0001 2.41666V0.916656ZM0.916748 9.99999C0.916748 15.0166 4.98349 19.0833 10.0001 19.0833V17.5833C5.81192 17.5833 2.41675 14.1881 2.41675 9.99999H0.916748ZM10.0001 19.0833C15.0167 19.0833 19.0834 15.0166 19.0834 9.99999H17.5834C17.5834 14.1881 14.1882 17.5833 10.0001 17.5833V19.0833ZM6.66675 10.625C6.29518 11.2765 6.29506 11.2764 6.29494 11.2763C6.2949 11.2763 6.29478 11.2763 6.29472 11.2762C6.29458 11.2761 6.29446 11.2761 6.29437 11.276C6.29417 11.2759 6.29406 11.2758 6.29402 11.2758C6.29394 11.2758 6.29418 11.2759 6.29472 11.2762C6.2958 11.2768 6.2981 11.2782 6.30155 11.2802C6.30845 11.2843 6.31994 11.2911 6.33556 11.3006C6.36683 11.3196 6.41441 11.3492 6.47453 11.3886C6.59518 11.4676 6.76402 11.5846 6.9516 11.7329C7.33643 12.0371 7.75673 12.4397 8.0231 12.885L9.31039 12.115C8.9101 11.4458 8.3304 10.9108 7.8819 10.5562C7.65281 10.3751 7.44665 10.2322 7.29647 10.1338C7.22117 10.0845 7.15938 10.046 7.11512 10.0191C7.09298 10.0056 7.07518 9.99502 7.06222 9.98739C7.05574 9.98358 7.05047 9.98051 7.04646 9.97819C7.04446 9.97703 7.04278 9.97606 7.04142 9.97528C7.04073 9.97489 7.04013 9.97454 7.03962 9.97425C7.03936 9.9741 7.03912 9.97396 7.0389 9.97384C7.03879 9.97377 7.03865 9.97369 7.03859 9.97366C7.03845 9.97358 7.03831 9.9735 6.66675 10.625ZM8.66675 12.5C9.34885 12.8118 9.3488 12.8119 9.34876 12.812C9.34876 12.812 9.34872 12.8121 9.34871 12.8121C9.3487 12.8122 9.34871 12.8121 9.34876 12.812C9.34884 12.8118 9.34905 12.8114 9.34938 12.8107C9.35003 12.8092 9.35117 12.8068 9.35277 12.8033C9.35599 12.7964 9.36109 12.7855 9.36805 12.7708C9.38196 12.7413 9.40327 12.6967 9.43164 12.6386C9.48841 12.5226 9.57333 12.3531 9.68378 12.1445C9.90507 11.7264 10.2268 11.1546 10.628 10.5403C11.4489 9.28341 12.5314 7.96007 13.6933 7.32469L12.9736 6.00863C11.4687 6.83158 10.218 8.4249 9.37213 9.72011C8.93998 10.3818 8.59509 10.9949 8.35805 11.4427C8.23933 11.667 8.14717 11.8508 8.08415 11.9797C8.05262 12.0441 8.02836 12.0949 8.01167 12.1303C8.00333 12.1479 7.99688 12.1617 7.99236 12.1715C7.9901 12.1763 7.98833 12.1802 7.98704 12.183C7.98639 12.1844 7.98587 12.1855 7.98547 12.1864C7.98527 12.1868 7.9851 12.1872 7.98496 12.1875C7.9849 12.1876 7.98482 12.1878 7.98478 12.1879C7.98471 12.188 7.98464 12.1882 8.66675 12.5Z\"\r\n fill=\"#079455\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </>\r\n </div>\r\n )}\r\n {this.type === 'trailing_button' && (\r\n <div class={`input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <div class={`trailing_button_text_input ${this.size}`}>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.inputType === 'number' ? 'text' : this.inputType}\r\n inputMode={this.inputType === 'number' ? 'numeric' : undefined}\r\n pattern={this.inputType === 'number' ? '[0-9]*' : undefined}\r\n minLength={this.minLength}\r\n maxLength={this.maxLength}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n ref={el => (this.inputRef = el as HTMLInputElement)}\r\n value={this.value.length === 0 ? this.inputValue : this.value}\r\n onFocus={() => this.handleInputFocus()}\r\n onKeyDown={e => this.handleNumericKeyDown(e as KeyboardEvent)} // <- added\r\n onPaste={e => this.handleNumericPaste(e as ClipboardEvent)}\r\n // onBlur={() => this.runValidation()}\r\n />\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showValidation && !this.destructive && (\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=\"M7.03831 9.9735C6.6785 9.76829 6.22047 9.89362 6.01526 10.2534C5.81005 10.6132 5.93538 11.0713 6.29518 11.2765L7.03831 9.9735ZM8.66675 12.5L8.0231 12.885C8.16612 13.1241 8.42989 13.2642 8.70808 13.2489C8.98627 13.2335 9.23302 13.0652 9.34885 12.8118L8.66675 12.5ZM13.6933 7.32469C14.0567 7.12594 14.1902 6.67022 13.9914 6.3068C13.7927 5.94338 13.337 5.80988 12.9736 6.00863L13.6933 7.32469ZM19.0834 9.99999C19.0834 4.9834 15.0167 0.916656 10.0001 0.916656V2.41666C14.1882 2.41666 17.5834 5.81183 17.5834 9.99999H19.0834ZM10.0001 0.916656C4.98349 0.916656 0.916748 4.9834 0.916748 9.99999H2.41675C2.41675 5.81183 5.81192 2.41666 10.0001 2.41666V0.916656ZM0.916748 9.99999C0.916748 15.0166 4.98349 19.0833 10.0001 19.0833V17.5833C5.81192 17.5833 2.41675 14.1881 2.41675 9.99999H0.916748ZM10.0001 19.0833C15.0167 19.0833 19.0834 15.0166 19.0834 9.99999H17.5834C17.5834 14.1881 14.1882 17.5833 10.0001 17.5833V19.0833ZM6.66675 10.625C6.29518 11.2765 6.29506 11.2764 6.29494 11.2763C6.2949 11.2763 6.29478 11.2763 6.29472 11.2762C6.29458 11.2761 6.29446 11.2761 6.29437 11.276C6.29417 11.2759 6.29406 11.2758 6.29402 11.2758C6.29394 11.2758 6.29418 11.2759 6.29472 11.2762C6.2958 11.2768 6.2981 11.2782 6.30155 11.2802C6.30845 11.2843 6.31994 11.2911 6.33556 11.3006C6.36683 11.3196 6.41441 11.3492 6.47453 11.3886C6.59518 11.4676 6.76402 11.5846 6.9516 11.7329C7.33643 12.0371 7.75673 12.4397 8.0231 12.885L9.31039 12.115C8.9101 11.4458 8.3304 10.9108 7.8819 10.5562C7.65281 10.3751 7.44665 10.2322 7.29647 10.1338C7.22117 10.0845 7.15938 10.046 7.11512 10.0191C7.09298 10.0056 7.07518 9.99502 7.06222 9.98739C7.05574 9.98358 7.05047 9.98051 7.04646 9.97819C7.04446 9.97703 7.04278 9.97606 7.04142 9.97528C7.04073 9.97489 7.04013 9.97454 7.03962 9.97425C7.03936 9.9741 7.03912 9.97396 7.0389 9.97384C7.03879 9.97377 7.03865 9.97369 7.03859 9.97366C7.03845 9.97358 7.03831 9.9735 6.66675 10.625ZM8.66675 12.5C9.34885 12.8118 9.3488 12.8119 9.34876 12.812C9.34876 12.812 9.34872 12.8121 9.34871 12.8121C9.3487 12.8122 9.34871 12.8121 9.34876 12.812C9.34884 12.8118 9.34905 12.8114 9.34938 12.8107C9.35003 12.8092 9.35117 12.8068 9.35277 12.8033C9.35599 12.7964 9.36109 12.7855 9.36805 12.7708C9.38196 12.7413 9.40327 12.6967 9.43164 12.6386C9.48841 12.5226 9.57333 12.3531 9.68378 12.1445C9.90507 11.7264 10.2268 11.1546 10.628 10.5403C11.4489 9.28341 12.5314 7.96007 13.6933 7.32469L12.9736 6.00863C11.4687 6.83158 10.218 8.4249 9.37213 9.72011C8.93998 10.3818 8.59509 10.9949 8.35805 11.4427C8.23933 11.667 8.14717 11.8508 8.08415 11.9797C8.05262 12.0441 8.02836 12.0949 8.01167 12.1303C8.00333 12.1479 7.99688 12.1617 7.99236 12.1715C7.9901 12.1763 7.98833 12.1802 7.98704 12.183C7.98639 12.1844 7.98587 12.1855 7.98547 12.1864C7.98527 12.1868 7.9851 12.1872 7.98496 12.1875C7.9849 12.1876 7.98482 12.1878 7.98478 12.1879C7.98471 12.188 7.98464 12.1882 8.66675 12.5Z\"\r\n fill=\"#079455\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n {this.loading && <div class=\"loader\"></div>}\r\n <gb-button\r\n size=\"lg\"\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"only\"\r\n state={this.state === 'disabled' ? 'disabled' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap={this.iconSwap}\r\n onClick={() => this.onButtonClicked()}\r\n ></gb-button>\r\n </div>\r\n )}\r\n {this.type === 'password' && (\r\n <div class={`password_input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <div class={`password_content`}>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.isPasswordVisible ? 'text' : 'password'}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n onFocus={() => this.handleInputFocus()}\r\n />\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showValidation && !this.destructive && (\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=\"M7.03831 9.9735C6.6785 9.76829 6.22047 9.89362 6.01526 10.2534C5.81005 10.6132 5.93538 11.0713 6.29518 11.2765L7.03831 9.9735ZM8.66675 12.5L8.0231 12.885C8.16612 13.1241 8.42989 13.2642 8.70808 13.2489C8.98627 13.2335 9.23302 13.0652 9.34885 12.8118L8.66675 12.5ZM13.6933 7.32469C14.0567 7.12594 14.1902 6.67022 13.9914 6.3068C13.7927 5.94338 13.337 5.80988 12.9736 6.00863L13.6933 7.32469ZM19.0834 9.99999C19.0834 4.9834 15.0167 0.916656 10.0001 0.916656V2.41666C14.1882 2.41666 17.5834 5.81183 17.5834 9.99999H19.0834ZM10.0001 0.916656C4.98349 0.916656 0.916748 4.9834 0.916748 9.99999H2.41675C2.41675 5.81183 5.81192 2.41666 10.0001 2.41666V0.916656ZM0.916748 9.99999C0.916748 15.0166 4.98349 19.0833 10.0001 19.0833V17.5833C5.81192 17.5833 2.41675 14.1881 2.41675 9.99999H0.916748ZM10.0001 19.0833C15.0167 19.0833 19.0834 15.0166 19.0834 9.99999H17.5834C17.5834 14.1881 14.1882 17.5833 10.0001 17.5833V19.0833ZM6.66675 10.625C6.29518 11.2765 6.29506 11.2764 6.29494 11.2763C6.2949 11.2763 6.29478 11.2763 6.29472 11.2762C6.29458 11.2761 6.29446 11.2761 6.29437 11.276C6.29417 11.2759 6.29406 11.2758 6.29402 11.2758C6.29394 11.2758 6.29418 11.2759 6.29472 11.2762C6.2958 11.2768 6.2981 11.2782 6.30155 11.2802C6.30845 11.2843 6.31994 11.2911 6.33556 11.3006C6.36683 11.3196 6.41441 11.3492 6.47453 11.3886C6.59518 11.4676 6.76402 11.5846 6.9516 11.7329C7.33643 12.0371 7.75673 12.4397 8.0231 12.885L9.31039 12.115C8.9101 11.4458 8.3304 10.9108 7.8819 10.5562C7.65281 10.3751 7.44665 10.2322 7.29647 10.1338C7.22117 10.0845 7.15938 10.046 7.11512 10.0191C7.09298 10.0056 7.07518 9.99502 7.06222 9.98739C7.05574 9.98358 7.05047 9.98051 7.04646 9.97819C7.04446 9.97703 7.04278 9.97606 7.04142 9.97528C7.04073 9.97489 7.04013 9.97454 7.03962 9.97425C7.03936 9.9741 7.03912 9.97396 7.0389 9.97384C7.03879 9.97377 7.03865 9.97369 7.03859 9.97366C7.03845 9.97358 7.03831 9.9735 6.66675 10.625ZM8.66675 12.5C9.34885 12.8118 9.3488 12.8119 9.34876 12.812C9.34876 12.812 9.34872 12.8121 9.34871 12.8121C9.3487 12.8122 9.34871 12.8121 9.34876 12.812C9.34884 12.8118 9.34905 12.8114 9.34938 12.8107C9.35003 12.8092 9.35117 12.8068 9.35277 12.8033C9.35599 12.7964 9.36109 12.7855 9.36805 12.7708C9.38196 12.7413 9.40327 12.6967 9.43164 12.6386C9.48841 12.5226 9.57333 12.3531 9.68378 12.1445C9.90507 11.7264 10.2268 11.1546 10.628 10.5403C11.4489 9.28341 12.5314 7.96007 13.6933 7.32469L12.9736 6.00863C11.4687 6.83158 10.218 8.4249 9.37213 9.72011C8.93998 10.3818 8.59509 10.9949 8.35805 11.4427C8.23933 11.667 8.14717 11.8508 8.08415 11.9797C8.05262 12.0441 8.02836 12.0949 8.01167 12.1303C8.00333 12.1479 7.99688 12.1617 7.99236 12.1715C7.9901 12.1763 7.98833 12.1802 7.98704 12.183C7.98639 12.1844 7.98587 12.1855 7.98547 12.1864C7.98527 12.1868 7.9851 12.1872 7.98496 12.1875C7.9849 12.1876 7.98482 12.1878 7.98478 12.1879C7.98471 12.188 7.98464 12.1882 8.66675 12.5Z\"\r\n fill=\"#079455\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n <div class={`dropdown`}>\r\n <gb-password-button onClick={() => this.togglePasswordVisibility()}></gb-password-button>\r\n </div>\r\n </div>\r\n )}\r\n {this.type === 'password_icon_leading' && (\r\n <div class={`password_icon_leading_input input ${this.type} ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`}>\r\n <div class={`password_icon_leading_content`}>\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=\"M12.0759 12.1667C11.6617 12.1667 11.3259 12.5025 11.3259 12.9167C11.3259 13.3309 11.6617 13.6667 12.0759 13.6667V12.1667ZM12.0833 13.6667C12.4976 13.6667 12.8333 13.3309 12.8333 12.9167C12.8333 12.5025 12.4976 12.1667 12.0833 12.1667V13.6667ZM7.91668 12.1667C7.50246 12.1667 7.16668 12.5025 7.16668 12.9167C7.16668 13.3309 7.50246 13.6667 7.91668 13.6667V12.1667ZM7.92415 13.6667C8.33836 13.6667 8.67415 13.3309 8.67415 12.9167C8.67415 12.5025 8.33836 12.1667 7.92415 12.1667V13.6667ZM16.4435 10.1294L17.1868 10.0293L16.4435 10.1294ZM13.7003 7.58258L13.7347 6.83337L13.7003 7.58258ZM13.7003 18.2508L13.7347 19L13.7003 18.2508ZM16.4435 15.704L15.7002 15.6039L16.4435 15.704ZM6.29973 7.58258L6.33417 8.33179L6.29973 7.58258ZM3.55652 10.1294L2.81323 10.0293L3.55652 10.1294ZM6.29973 18.2508L6.33417 17.5015L6.29973 18.2508ZM3.55652 15.704L4.29981 15.6039L3.55652 15.704ZM5.50001 7.5C5.50001 7.91422 5.8358 8.25 6.25001 8.25C6.66422 8.25 7.00001 7.91422 7.00001 7.5H5.50001ZM13 7.5C13 7.91422 13.3358 8.25 13.75 8.25C14.1642 8.25 14.5 7.91422 14.5 7.5H13ZM12.0759 13.6667H12.0833V12.1667H12.0759V13.6667ZM7.91668 13.6667H7.92415V12.1667H7.91668V13.6667ZM10 17.5833C8.69057 17.5833 7.50287 17.5553 6.33417 17.5015L6.26528 19C7.45761 19.0548 8.66829 19.0833 10 19.0833V17.5833ZM13.6659 17.5015C12.4972 17.5553 11.3094 17.5833 10 17.5833V19.0833C11.3317 19.0833 12.5424 19.0548 13.7347 19L13.6659 17.5015ZM17.1868 15.804C17.3105 14.8853 17.4167 13.9152 17.4167 12.9167H15.9167C15.9167 13.8142 15.8211 14.7058 15.7002 15.6039L17.1868 15.804ZM17.4167 12.9167C17.4167 11.9181 17.3105 10.948 17.1868 10.0293L15.7002 10.2295C15.8211 11.1275 15.9167 12.0192 15.9167 12.9167H17.4167ZM10 8.25C11.3095 8.25 12.4972 8.27806 13.6659 8.33179L13.7347 6.83337C12.5424 6.77856 11.3317 6.75 10 6.75V8.25ZM6.33417 8.33179C7.50287 8.27806 8.69057 8.25 10 8.25V6.75C8.66829 6.75 7.45761 6.77856 6.26528 6.83337L6.33417 8.33179ZM2.81323 10.0293C2.68953 10.948 2.58334 11.9181 2.58334 12.9167H4.08334C4.08334 12.0192 4.1789 11.1275 4.29981 10.2295L2.81323 10.0293ZM2.58334 12.9167C2.58334 13.9152 2.68953 14.8853 2.81323 15.804L4.29981 15.6039C4.1789 14.7058 4.08334 13.8142 4.08334 12.9167H2.58334ZM17.1868 10.0293C16.9527 8.29067 15.5122 6.91509 13.7347 6.83337L13.6659 8.33179C14.6943 8.37907 15.5595 9.18437 15.7002 10.2295L17.1868 10.0293ZM13.7347 19C15.5122 18.9183 16.9527 17.5427 17.1868 15.804L15.7002 15.6039C15.5595 16.649 14.6943 17.4543 13.6659 17.5015L13.7347 19ZM6.26528 6.83337C4.48781 6.91508 3.04732 8.29067 2.81323 10.0293L4.29981 10.2295C4.44052 9.18437 5.30576 8.37907 6.33417 8.33179L6.26528 6.83337ZM6.33417 17.5015C5.30576 17.4543 4.44052 16.649 4.29981 15.6039L2.81323 15.804C3.04732 17.5427 4.48782 18.9183 6.26528 19L6.33417 17.5015ZM7.00001 7.5V5.41667H5.50001V7.5H7.00001ZM13 5.41667V7.5H14.5V5.41667H13ZM10 2.41667C11.6569 2.41667 13 3.75981 13 5.41667H14.5C14.5 2.93139 12.4853 0.916668 10 0.916668V2.41667ZM7.00001 5.41667C7.00001 3.75981 8.34316 2.41667 10 2.41667V0.916668C7.51473 0.916668 5.50001 2.93139 5.50001 5.41667H7.00001Z\"\r\n fill=\"var(--color-icon, #4B5565)\"\r\n />\r\n </svg>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.isPasswordVisible ? 'text' : 'password'}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n />\r\n </div>\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showValidation && !this.destructive && (\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=\"M7.03831 9.9735C6.6785 9.76829 6.22047 9.89362 6.01526 10.2534C5.81005 10.6132 5.93538 11.0713 6.29518 11.2765L7.03831 9.9735ZM8.66675 12.5L8.0231 12.885C8.16612 13.1241 8.42989 13.2642 8.70808 13.2489C8.98627 13.2335 9.23302 13.0652 9.34885 12.8118L8.66675 12.5ZM13.6933 7.32469C14.0567 7.12594 14.1902 6.67022 13.9914 6.3068C13.7927 5.94338 13.337 5.80988 12.9736 6.00863L13.6933 7.32469ZM19.0834 9.99999C19.0834 4.9834 15.0167 0.916656 10.0001 0.916656V2.41666C14.1882 2.41666 17.5834 5.81183 17.5834 9.99999H19.0834ZM10.0001 0.916656C4.98349 0.916656 0.916748 4.9834 0.916748 9.99999H2.41675C2.41675 5.81183 5.81192 2.41666 10.0001 2.41666V0.916656ZM0.916748 9.99999C0.916748 15.0166 4.98349 19.0833 10.0001 19.0833V17.5833C5.81192 17.5833 2.41675 14.1881 2.41675 9.99999H0.916748ZM10.0001 19.0833C15.0167 19.0833 19.0834 15.0166 19.0834 9.99999H17.5834C17.5834 14.1881 14.1882 17.5833 10.0001 17.5833V19.0833ZM6.66675 10.625C6.29518 11.2765 6.29506 11.2764 6.29494 11.2763C6.2949 11.2763 6.29478 11.2763 6.29472 11.2762C6.29458 11.2761 6.29446 11.2761 6.29437 11.276C6.29417 11.2759 6.29406 11.2758 6.29402 11.2758C6.29394 11.2758 6.29418 11.2759 6.29472 11.2762C6.2958 11.2768 6.2981 11.2782 6.30155 11.2802C6.30845 11.2843 6.31994 11.2911 6.33556 11.3006C6.36683 11.3196 6.41441 11.3492 6.47453 11.3886C6.59518 11.4676 6.76402 11.5846 6.9516 11.7329C7.33643 12.0371 7.75673 12.4397 8.0231 12.885L9.31039 12.115C8.9101 11.4458 8.3304 10.9108 7.8819 10.5562C7.65281 10.3751 7.44665 10.2322 7.29647 10.1338C7.22117 10.0845 7.15938 10.046 7.11512 10.0191C7.09298 10.0056 7.07518 9.99502 7.06222 9.98739C7.05574 9.98358 7.05047 9.98051 7.04646 9.97819C7.04446 9.97703 7.04278 9.97606 7.04142 9.97528C7.04073 9.97489 7.04013 9.97454 7.03962 9.97425C7.03936 9.9741 7.03912 9.97396 7.0389 9.97384C7.03879 9.97377 7.03865 9.97369 7.03859 9.97366C7.03845 9.97358 7.03831 9.9735 6.66675 10.625ZM8.66675 12.5C9.34885 12.8118 9.3488 12.8119 9.34876 12.812C9.34876 12.812 9.34872 12.8121 9.34871 12.8121C9.3487 12.8122 9.34871 12.8121 9.34876 12.812C9.34884 12.8118 9.34905 12.8114 9.34938 12.8107C9.35003 12.8092 9.35117 12.8068 9.35277 12.8033C9.35599 12.7964 9.36109 12.7855 9.36805 12.7708C9.38196 12.7413 9.40327 12.6967 9.43164 12.6386C9.48841 12.5226 9.57333 12.3531 9.68378 12.1445C9.90507 11.7264 10.2268 11.1546 10.628 10.5403C11.4489 9.28341 12.5314 7.96007 13.6933 7.32469L12.9736 6.00863C11.4687 6.83158 10.218 8.4249 9.37213 9.72011C8.93998 10.3818 8.59509 10.9949 8.35805 11.4427C8.23933 11.667 8.14717 11.8508 8.08415 11.9797C8.05262 12.0441 8.02836 12.0949 8.01167 12.1303C8.00333 12.1479 7.99688 12.1617 7.99236 12.1715C7.9901 12.1763 7.98833 12.1802 7.98704 12.183C7.98639 12.1844 7.98587 12.1855 7.98547 12.1864C7.98527 12.1868 7.9851 12.1872 7.98496 12.1875C7.9849 12.1876 7.98482 12.1878 7.98478 12.1879C7.98471 12.188 7.98464 12.1882 8.66675 12.5Z\"\r\n fill=\"#079455\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n <gb-password-button onClick={() => this.togglePasswordVisibility()}></gb-password-button>\r\n </div>\r\n )}\r\n {this.type === 'count' && [\r\n <div class={`count_input`}>\r\n <div class={`count_text_input ${this.destructive ? 'destructive' : ''} ${this.state}`}>\r\n <input\r\n class={`content text-${this.size}-regular ${this.type} ${this.state}`}\r\n type={this.inputType === 'number' ? 'text' : this.inputType}\r\n inputMode={this.inputType === 'number' ? 'numeric' : undefined}\r\n pattern={this.inputType === 'number' ? '[0-9]*' : undefined}\r\n minLength={this.minLength}\r\n maxLength={this.maxLength}\r\n placeholder={this.placeholder ? this.placeholder : ''}\r\n onInput={event => this.handleInput(event)}\r\n value={this.value.length === 0 ? this.inputValue : this.value}\r\n onFocus={() => this.handleInputFocus()}\r\n onKeyDown={e => this.handleNumericKeyDown(e as KeyboardEvent)} // <- added\r\n onPaste={e => this.handleNumericPaste(e as ClipboardEvent)}\r\n />\r\n {this.loading && <div class=\"loader\"></div>}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\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 ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n <div class={`action ${this.state}`}>\r\n <gb-button\r\n size=\"xl\"\r\n state={this.state === 'disabled' ? 'disabled' : 'default'}\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"only\"\r\n icon-leading=\"true\"\r\n icon-leading-swap=\"assets/minus_sign.svg\"\r\n onClick={() => this.onMinusButtonClicked()}\r\n ></gb-button>\r\n {/* <hr /> */}\r\n <div class=\"vertical_line\"></div>\r\n <gb-button\r\n size=\"xl\"\r\n state={this.state === 'disabled' ? 'disabled' : 'default'}\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"only\"\r\n icon-leading=\"true\"\r\n icon-leading-swap=\"assets/plus_sign.svg\"\r\n onClick={() => this.onPlusButtonClicked()}\r\n ></gb-button>\r\n </div>\r\n </div>,\r\n ]}\r\n {this.type === 'tags' && (\r\n <div class={`input_group ${this.state}`} ref={el => (this.inputGroupElement = el as HTMLDivElement)} onClick={() => this.handleWrapperClick()}>\r\n <div class={`input_like_parent ${this.size} ${this.state} ${this.destructive ? 'destructive' : ''}`} onClick={() => (this.dropdownOpen = !this.dropdownOpen)}>\r\n {/* ${this.selectedStaff.length >= 1 ? 'show_results' : ''} */}\r\n <div class={`results_display ${this.state === 'disabled' ? 'disabled' : ''}`} ref={el => (this.resultsDisplayElement = el as HTMLDivElement)}>\r\n {this.value.length === 0 ? (\r\n <>\r\n {this.selectedItems.map((item, index) => (\r\n <>\r\n {typeof item === 'object' ? (\r\n <gb-tag size=\"sm\" action=\"X_close\" icon={this.icon ? this.icon : 'avatar'} onClick={() => this.handleTagRemove(index)}>\r\n <h1 class=\"text-xxs-semi-bold\" slot=\"initials\">\r\n {item.objectName.split(' ').map(part => part.charAt(0).toUpperCase())}\r\n </h1>\r\n <p>{item.objectName.split(' ')[0]}</p>\r\n </gb-tag>\r\n ) : (\r\n <gb-tag size=\"sm\" action=\"X_close\" icon={this.icon ? this.icon : 'avatar'} onClick={() => this.handleTagRemove(index)}>\r\n <p>{item}</p>\r\n </gb-tag>\r\n )}\r\n </>\r\n ))}\r\n </>\r\n ) : (\r\n <>\r\n {this.value.map((val, index) => (\r\n <>\r\n {typeof val === 'object' ? (\r\n <gb-tag size=\"sm\" action=\"X_close\" icon={this.icon ? this.icon : 'avatar'} onClick={() => this.handleTagRemove(index)}>\r\n <h1 class=\"text-xxs-semi-bold\" slot=\"initials\">\r\n {val.objectName.split(' ').map(part => part.charAt(0).toUpperCase())}\r\n </h1>\r\n <p>{val.objectName.split(' ')[0]}</p>\r\n </gb-tag>\r\n ) : (\r\n <gb-tag size=\"sm\" action=\"X_close\" icon={this.icon ? this.icon : 'avatar'} onClick={() => this.handleTagRemove(index)}>\r\n <p>{val}</p>\r\n </gb-tag>\r\n )}\r\n </>\r\n ))}\r\n </>\r\n )}\r\n <span class=\"hidden-span\" ref={el => (this.hiddenSpan = el as HTMLElement)}>\r\n {this.inputValue || ' '}\r\n </span>\r\n <div class=\"input_field\">\r\n <input\r\n id={this.idOfInput}\r\n class={`input_like text-${this.size}-regular ${this.state}`}\r\n type=\"text\"\r\n // placeholder={this.placeholder && this.selectedStaff.length === 0 ? this.placeholder : ''}\r\n value={this.inputValue}\r\n readOnly={this.isReadOnly}\r\n ref={el => (this.inputElement = el as HTMLInputElement)}\r\n onBlur={() => this.exportSelectedStaff()}\r\n onInput={event => this.handleTagInput(event)}\r\n onFocus={() => this.handleInputFocus()}\r\n />\r\n </div>\r\n </div>\r\n {/* {this.showValidation && !this.destructive && (\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=\"M4.16675 12.0833C4.16675 12.0833 5.41675 12.0833 7.08341 15C7.08341 15 11.7158 7.36112 15.8334 5.83334\"\r\n stroke=\"#079455\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n {this.showHelpIcon && (\r\n <div class={`help_circle`}>\r\n {!this.destructive ? (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M6.66668 5.99998C6.66668 5.2636 7.26363 4.66665 8.00001 4.66665C8.73639 4.66665 9.33334 5.2636 9.33334 5.99998C9.33334 6.26541 9.25578 6.51273 9.12209 6.72051C8.72361 7.33976 8.00001 7.93027 8.00001 8.66665V8.99998M7.99467 11.3333H8.00066M14.6667 7.99998C14.6667 11.6819 11.6819 14.6666 8.00001 14.6666C4.31811 14.6666 1.33334 11.6819 1.33334 7.99998C1.33334 4.31808 4.31811 1.33331 8.00001 1.33331C11.6819 1.33331 14.6667 4.31808 14.6667 7.99998Z\"\r\n stroke=\"#697586\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.99458 10H8.00057M7.99992 8.00001V5.33334M14.6666 8.00001C14.6666 11.6819 11.6818 14.6667 7.99992 14.6667C4.31802 14.6667 1.33325 11.6819 1.33325 8.00001C1.33325 4.31811 4.31802 1.33334 7.99992 1.33334C11.6818 1.33334 14.6666 4.31811 14.6666 8.00001Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n )} */}\r\n </div>\r\n {this.showDropdown && (\r\n <div class={`tags_dropdown_menu ${this.show ? 'show' : ''} ${this.menuPosition}`}>\r\n {this.results.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type=\"checkbox\"\r\n supporting-text={true}\r\n state={StateEnum.Default}\r\n onClick={() => this.selectDropdownItem(item)}\r\n selected={this.isTagItemSelected(item)}\r\n >\r\n {typeof item === 'object'\r\n ? [<p slot=\"name\">{item.objectName}</p>, <p slot=\"supporting_text\">{item.objectValue}</p>]\r\n : typeof item !== 'object' && <p slot=\"name\">{item}</p>}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n </div>\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","@import './../../global/global.css';\r\n.action-container {\r\n display: flex;\r\n align-items: center;\r\n /* justify-content: space-evenly; */\r\n gap: var(--spacing-8);\r\n padding: var(--spacing-4) var(--spacing-6);\r\n background-color: var(--color-background-card, #ffffff);\r\n border-top: 1px solid var(--color-border-subtler, #e3e8ef);\r\n}\r\n\r\n.action-container.multiple {\r\n display: flex;\r\n gap: var(--spacing-8);\r\n align-items: center;\r\n padding: var(--spacing-4) var(--spacing-6);\r\n align-self: stretch;\r\n}\r\n\r\n.frame {\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\r\n gap: var(--spacing-5);\r\n flex: 1 0 0;\r\n /* margin-left: auto; */\r\n}\r\n\r\n.action {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.action-container.double {\r\n gap: 12px;\r\n justify-content: center;\r\n align-items: center;\r\n padding: var(--spacing-4, 16px) var(--spacing-6, 24px);\r\n}\r\n\r\n.button {\r\n width: 100%;\r\n}\r\n\r\n.first_icon,\r\n.second_icon {\r\n position: relative;\r\n}\r\n\r\n.first_icon_button_tooltip {\r\n position: absolute;\r\n left: 0rem;\r\n top: -100%;\r\n}\r\n\r\n.second_icon_button_tooltip{\r\n position: absolute;\r\n left: -2rem;\r\n top: -100%;\r\n}\r\n\r\n.action-container.single {\r\n padding: var(--spacing-4) var(--spacing-6);\r\n justify-content: flex-end;\r\n align-items: center;\r\n}\r\n\r\n.single_button {\r\n width: fit-content;\r\n}\r\n\r\n.single_button.full_width{\r\n width: 100%;\r\n}","import { Component, Event, EventEmitter, Prop, State, h } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'gb-modal-action',\r\n styleUrl: 'gb-modal-action.css',\r\n shadow: true,\r\n})\r\nexport class GbModalAction {\r\n @Prop() actionType: 'single' | 'multiple' | 'double' = 'multiple';\r\n @Prop() destructive: boolean = false;\r\n @Prop() fullWidth: boolean = false;\r\n\r\n // For the 'multiple' type\r\n @Prop() showSecondaryAction: boolean = true;\r\n @Prop() showFirstButton: boolean = true;\r\n @Prop() showSecondButton: boolean = true;\r\n @Prop() showThirdButton: boolean = true;\r\n @Prop() firstButtonText: string = '';\r\n @Prop() secondButtonText: string = '';\r\n @Prop() thirdButtonText: string = '';\r\n @Prop() firstIconButtonSwap: string = '';\r\n @Prop() secondIconButtonSwap: string = '';\r\n @Prop() firstButtonIconLeadingSwap: string = '';\r\n @Prop() secondButtonIconLeadingSwap: string = '';\r\n @Prop() thirdButtonIconLeadingSwap: string = '';\r\n @Prop() firstButtonIconTrailingSwap: string = '';\r\n @Prop() secondButtonIconTrailingSwap: string = '';\r\n @Prop() thirdButtonIconTrailingSwap: string = '';\r\n\r\n // If secondary action is shown\r\n @Prop() showFirstIconButton: boolean = true;\r\n @Prop() showSecondIconButton: boolean = true;\r\n @Prop() showCheckBox: boolean = true;\r\n @Prop() checkboxLabel: string = '';\r\n @State() firstIconButtonTooltipShown: boolean = false;\r\n @State() secondIconButtonTooltipShown: boolean = false;\r\n @Event() firstButtonClicked: EventEmitter<void>;\r\n @Event() secondButtonClicked: EventEmitter<void>;\r\n @Event() thirdButtonClicked: EventEmitter<void>;\r\n\r\n private renderMultiple() {\r\n return (\r\n <div class=\"action-container multiple\">\r\n {this.showSecondaryAction && (\r\n <div class=\"action\">\r\n <div class=\"first_icon\">\r\n {this.showFirstIconButton && (\r\n <gb-button\r\n size=\"md\"\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"only\"\r\n icon-leading=\"true\"\r\n icon-leading-swap={this.firstIconButtonSwap}\r\n onMouseEnter={() => (this.firstIconButtonTooltipShown = true)}\r\n onMouseLeave={() => (this.firstIconButtonTooltipShown = false)}\r\n ></gb-button>\r\n )}\r\n {this.firstIconButtonTooltipShown && (\r\n <gb-tooltip show-arrow={true} arrow=\"bottom_left\" class=\"first_icon_button_tooltip\">\r\n <p slot=\"label\">Refresh</p>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n <div class=\"second_icon\">\r\n {this.showSecondIconButton && (\r\n <gb-button\r\n size=\"md\"\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"only\"\r\n icon-leading=\"true\"\r\n icon-leading-swap={this.secondIconButtonSwap}\r\n onMouseEnter={() => (this.secondIconButtonTooltipShown = true)}\r\n onMouseLeave={() => (this.secondIconButtonTooltipShown = false)}\r\n ></gb-button>\r\n )}\r\n {this.secondIconButtonTooltipShown && (\r\n <gb-tooltip show-arrow={true} arrow=\"bottom_right\" class=\"second_icon_button_tooltip\">\r\n <p slot=\"label\">Refresh</p>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n {this.showCheckBox && (\r\n <gb-checkbox checked={false} indeterminate={false} size=\"sm\" type=\"checkbox\" state=\"default\" text={true} supporting-text=\"false\">\r\n <p slot=\"label\">{this.checkboxLabel}</p>\r\n </gb-checkbox>\r\n )}\r\n </div>\r\n )}\r\n\r\n <div class=\"frame\">\r\n {this.showThirdButton && (\r\n <div class=\"multiple_button\">\r\n <gb-button\r\n destructive={this.destructive}\r\n size=\"xl\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-leading={this.thirdButtonIconLeadingSwap ? true : false}\r\n icon-leading-swap={this.thirdButtonIconLeadingSwap}\r\n icon-trailing={this.thirdButtonIconTrailingSwap ? true : false}\r\n icon-trailing-swap={this.thirdButtonIconTrailingSwap}\r\n onClick={() => this.onThirdButtonClicked()}\r\n >\r\n <p>{this.thirdButtonText}</p>\r\n </gb-button>\r\n </div>\r\n )}\r\n {this.showSecondButton && (\r\n <div class=\"multiple_button\">\r\n <gb-button\r\n destructive={this.destructive}\r\n size=\"xl\"\r\n hierarchy=\"secondary_color\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-leading={this.secondButtonIconLeadingSwap ? true : false}\r\n icon-leading-swap={this.secondButtonIconLeadingSwap}\r\n icon-trailing={this.secondButtonIconTrailingSwap ? true : false}\r\n icon-trailing-swap={this.secondButtonIconTrailingSwap}\r\n onClick={() => this.onSecondButtonClicked()}\r\n >\r\n <p>{this.secondButtonText}</p>\r\n </gb-button>\r\n </div>\r\n )}\r\n {this.showFirstButton && (\r\n <div class=\"multiple_button\">\r\n <gb-button\r\n destructive={this.destructive}\r\n size=\"xl\"\r\n hierarchy=\"primary\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-leading={this.firstButtonIconLeadingSwap ? true : false}\r\n icon-leading-swap={this.firstButtonIconLeadingSwap}\r\n icon-trailing={this.firstButtonIconTrailingSwap ? true : false}\r\n icon-trailing-swap={this.firstButtonIconTrailingSwap}\r\n onClick={() => this.onFirstButtonClicked()}\r\n >\r\n <p>{this.firstButtonText}</p>\r\n </gb-button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n private renderDouble() {\r\n return (\r\n <div class=\"action-container double\">\r\n <div class=\"button\">\r\n <gb-button\r\n destructive={this.destructive}\r\n size=\"xl\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-leading={this.secondButtonIconLeadingSwap ? true : false}\r\n icon-leading-swap={this.secondButtonIconLeadingSwap}\r\n icon-trailing={this.secondButtonIconTrailingSwap ? true : false}\r\n icon-trailing-swap={this.secondButtonIconTrailingSwap}\r\n onClick={() => this.onSecondButtonClicked()}\r\n >\r\n <p>{this.secondButtonText}</p>\r\n </gb-button>\r\n </div>\r\n <div class=\"button\">\r\n <gb-button\r\n destructive={this.destructive}\r\n size=\"xl\"\r\n hierarchy=\"primary\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-leading={this.firstButtonIconLeadingSwap ? true : false}\r\n icon-leading-swap={this.firstButtonIconLeadingSwap}\r\n icon-trailing={this.firstButtonIconTrailingSwap ? true : false}\r\n icon-trailing-swap={this.firstButtonIconTrailingSwap}\r\n onClick={() => this.onFirstButtonClicked()}\r\n >\r\n <p>{this.firstButtonText}</p>\r\n </gb-button>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n private renderSingle() {\r\n return (\r\n <div class=\"action-container single\">\r\n <div class={`single_button ${this.fullWidth ? 'full_width' : ''}`}>\r\n <gb-button\r\n destructive={this.destructive}\r\n size=\"xl\"\r\n hierarchy=\"primary\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-leading={this.firstButtonIconLeadingSwap ? true : false}\r\n icon-leading-swap={this.firstButtonIconLeadingSwap}\r\n icon-trailing={this.firstButtonIconTrailingSwap ? true : false}\r\n icon-trailing-swap={this.firstButtonIconTrailingSwap}\r\n onClick={() => this.onFirstButtonClicked()}\r\n >\r\n <p>{this.firstButtonText}</p>\r\n </gb-button>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n onFirstButtonClicked() {\r\n this.firstButtonClicked.emit();\r\n }\r\n\r\n onSecondButtonClicked() {\r\n this.secondButtonClicked.emit();\r\n }\r\n\r\n onThirdButtonClicked() {\r\n this.thirdButtonClicked.emit();\r\n }\r\n\r\n render() {\r\n switch (this.actionType) {\r\n case 'single':\r\n return this.renderSingle();\r\n case 'double':\r\n return this.renderDouble();\r\n case 'multiple':\r\n default:\r\n return this.renderMultiple();\r\n }\r\n }\r\n}\r\n"," @import './../../global/global.css';\r\n \r\n:host{\r\n position: relative;\r\n}\r\n\r\n.container {\r\n background-color: var(--color-background-card, #ffffff);\r\n padding: var(--spacing-6); \r\n border-bottom: 1px solid var(--color-border-subtler, #e3e8ef);\r\n}\r\n\r\n.title {\r\n color: var(--color-text-bold, #202939);\r\n margin: 0; /* Remove default paragraph margins */\r\n}\r\n\r\n.title-with-left-button {\r\n padding-left: 3rem; /* Add space when button is on the left */\r\n} \r\n\r\n.close-button-left {\r\n position: absolute;\r\n left: 0.5rem;\r\n top: 0.9375rem;\r\n}\r\n\r\n.close-button-right {\r\n position: absolute;\r\n right: 0.75rem;\r\n top: 0.89375rem;\r\n}","import { Component, Event, EventEmitter, h, Prop } from '@stencil/core';\r\nimport { CloseButtonPositions } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-modal-header',\r\n styleUrl: 'gb-modal-header.css',\r\n shadow: true,\r\n})\r\nexport class GbModalHeader {\r\n @Prop() text: string = '';\r\n @Prop({ reflect: true }) closeButtonPosition: CloseButtonPositions = 'right';\r\n @Event() closeButtonClicked: EventEmitter<void>;\r\n\r\n render() {\r\n const buttonClass = this.closeButtonPosition === 'left' ? 'close-button-left' : 'close-button-right';\r\n const titleClass = this.closeButtonPosition === 'left' ? 'title title-with-left-button' : 'title';\r\n\r\n const button = <gb-button-close class={buttonClass} size=\"sm\" color=\"gray\"></gb-button-close>;\r\n\r\n return (\r\n <div class=\"container\">\r\n {this.closeButtonPosition === 'left' && button}\r\n <p class={`${titleClass} display-xs-semi-bold`}>{this.text}</p>\r\n {this.closeButtonPosition === 'right' && button}\r\n </div>\r\n );\r\n }\r\n}\r\n",".top_bar_div {\r\n display: flex;\r\n width: 100%;\r\n height: 5rem;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n flex-shrink: 0;\r\n position: relative;\r\n}\r\n\r\n.top_bar_div.border.plain_background {\r\n border-bottom: 1px solid var(--color-border-subtler, #e3e8ef);\r\n}\r\n\r\n.top_bar_div.border.colored_background {\r\n border-bottom: 1px solid var(--color-border-subtler, #e3e8ef);\r\n}\r\n\r\n.top_bar_div.colored_background {\r\n background: linear-gradient(63deg, #075db2 16.72%, #053e77 68.99%, #042f59 83.39%);\r\n}\r\n\r\n.top_bar_div.plain_background {\r\n background: var(--color-surface);\r\n}\r\n\r\n.top_bar_content {\r\n display: flex;\r\n padding: 0rem 2rem;\r\n justify-content: space-between;\r\n align-items: center;\r\n flex: 1 0 0;\r\n align-self: stretch;\r\n}\r\n\r\n.content {\r\n display: flex;\r\n align-items: center;\r\n gap: 1rem;\r\n flex: 1 0 0;\r\n overflow: hidden;\r\n}\r\n\r\n.content.shown {\r\n overflow: visible;\r\n}\r\n\r\n.pattern {\r\n position: absolute;\r\n top: 0;\r\n width: 100%;\r\n height: 100%;\r\n overflow: hidden;\r\n mix-blend-mode: multiply;\r\n}\r\n\r\n.more {\r\n position: relative;\r\n}\r\n\r\n.dropdown_menu {\r\n position: absolute;\r\n top: 112%;\r\n right: 0;\r\n\r\n display: flex;\r\n width: fit-content;\r\n min-width: 10rem;\r\n padding-right: var(--spacing-2);\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 z-index: 9;\r\n}\r\n","import { Component, Element, Event, EventEmitter, Prop, State, Watch, getAssetPath, h } from '@stencil/core';\r\nimport { GeneralBackgroundCategories } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-nav-bar',\r\n styleUrl: 'gb-nav-bar.css',\r\n shadow: true,\r\n})\r\nexport class GbNavBar {\r\n @Prop() category: GeneralBackgroundCategories;\r\n @Prop({ mutable: true }) items: { label: string; icon?: string; iconOnly: boolean; index: number }[] = [\r\n {\r\n label: 'First',\r\n icon: 'assets/home-02.svg',\r\n iconOnly: false,\r\n index: 0,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/bank.svg',\r\n iconOnly: false,\r\n index: 1,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/money-02.svg',\r\n iconOnly: false,\r\n index: 2,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/invoice-01.svg',\r\n iconOnly: false,\r\n index: 3,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/money-exchange-03.svg',\r\n iconOnly: false,\r\n index: 4,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/percent.svg',\r\n iconOnly: false,\r\n index: 5,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/qr-code.svg',\r\n iconOnly: false,\r\n index: 6,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/coins-dollar.svg',\r\n iconOnly: false,\r\n index: 7,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/star.svg',\r\n iconOnly: false,\r\n index: 8,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/star.svg',\r\n iconOnly: false,\r\n index: 9,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/star.svg',\r\n iconOnly: false,\r\n index: 10,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/star.svg',\r\n iconOnly: false,\r\n index: 11,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/star.svg',\r\n iconOnly: false,\r\n index: 12,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/star.svg',\r\n iconOnly: false,\r\n index: 13,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/star.svg',\r\n iconOnly: false,\r\n index: 14,\r\n },\r\n {\r\n label: 'Second',\r\n icon: 'assets/star.svg',\r\n iconOnly: false,\r\n index: 15,\r\n },\r\n ];\r\n @Prop() showBorder: boolean = true;\r\n @Prop({ mutable: true }) activeIndex: number = 0;\r\n @Element() el: HTMLElement;\r\n @State() internalItems: { label: string; icon?: string; iconOnly: boolean; index: number }[] = [...this.items];\r\n @State() visibleItems: typeof this.items = [];\r\n @State() overflowItems: typeof this.items = [];\r\n @State() measured: boolean = false;\r\n @State() dropdownOpen: boolean = false;\r\n @State() dropdownItemClicked: boolean = false;\r\n @Event() navBarItemClicked: EventEmitter<number>;\r\n\r\n private containerEl!: HTMLElement;\r\n\r\n onTabItemClicked(index: number, clicked?: boolean) {\r\n this.dropdownItemClicked = false;\r\n this.activeIndex = index;\r\n this.navBarItemClicked.emit(index);\r\n\r\n if (clicked) {\r\n this.dropdownItemClicked = true;\r\n this.dropdownOpen = false;\r\n }\r\n }\r\n\r\n @Watch('items')\r\n onItemsChanged(newValue: { label: string; icon: string; iconOnly: boolean; index: number }[], _oldValue) {\r\n console.log(newValue);\r\n this.internalItems = [...newValue];\r\n // console.log(this.internalItems);\r\n\r\n setTimeout(() => {\r\n this.calculateOverflow();\r\n this.measured = true;\r\n }, 0);\r\n window.addEventListener('resize', this.handleResize);\r\n }\r\n\r\n componentWillLoad() {\r\n // setTimeout(() => {\r\n // this.items = [\r\n // {\r\n // label: 'First',\r\n // icon: 'assets/star.svg',\r\n // iconOnly: false,\r\n // index: 0,\r\n // },\r\n // ];\r\n // }, 3000);\r\n\r\n this.internalItems = this.items; // copy initial prop value safely\r\n }\r\n\r\n private handleResize = () => {\r\n setTimeout(() => {\r\n this.calculateOverflow();\r\n }, 0);\r\n };\r\n\r\n componentDidLoad() {\r\n setTimeout(() => {\r\n this.calculateOverflow();\r\n this.measured = true;\r\n }, 0);\r\n window.addEventListener('resize', this.handleResize);\r\n }\r\n\r\n disconnectedCallback() {\r\n window.removeEventListener('resize', this.handleResize);\r\n }\r\n\r\n calculateOverflow() {\r\n const hiddenContainer = this.el.shadowRoot.querySelector('[style*=\"visibility: hidden\"]');\r\n if (!hiddenContainer) return;\r\n\r\n let containerWidth = this.containerEl.offsetWidth;\r\n let usedWidth = 0;\r\n const visible = [];\r\n const hidden = [];\r\n\r\n const allItems = Array.from(hiddenContainer.querySelectorAll('gb-nav-bar-item'));\r\n\r\n allItems.forEach((el, i) => {\r\n const itemWidth = (el as HTMLElement).offsetWidth + 16;\r\n if (usedWidth + itemWidth < containerWidth - 120) {\r\n usedWidth += itemWidth;\r\n visible.push(this.internalItems[i]);\r\n } else {\r\n hidden.push(this.internalItems[i]);\r\n }\r\n });\r\n\r\n this.visibleItems = visible;\r\n console.log(this.visibleItems);\r\n this.overflowItems = hidden;\r\n }\r\n\r\n toggleDropdown() {\r\n this.dropdownOpen = !this.dropdownOpen;\r\n }\r\n\r\n render() {\r\n const patternSrc = getAssetPath(`assets/top_bar_pattern.svg`);\r\n\r\n return (\r\n <div class={`top_bar_div ${this.category} ${this.showBorder ? 'border' : ''}`}>\r\n {this.category === 'colored_background' && (\r\n <div class=\"pattern\">\r\n <img src={patternSrc} alt=\"\" />\r\n </div>\r\n )}\r\n <div class=\"top_bar_content\">\r\n {/* Hidden measurement container for overflow calculation */}\r\n <div style={{ visibility: 'hidden', position: 'absolute', height: '0', overflow: 'hidden', pointerEvents: 'none' }}>\r\n {this.internalItems.map(tab => (\r\n <gb-nav-bar-item\r\n state={this.activeIndex === tab.index ? 'active' : 'default'}\r\n icon-only={tab.iconOnly}\r\n category={this.category}\r\n icon={tab.icon}\r\n label={tab.label}\r\n ></gb-nav-bar-item>\r\n ))}\r\n </div>\r\n <div class={`content ${this.dropdownOpen ? 'shown' : ''}`} ref={el => (this.containerEl = el)}>\r\n {(this.measured ? this.visibleItems : this.internalItems).map(tab => (\r\n <gb-nav-bar-item\r\n state={this.activeIndex === tab.index ? 'active' : 'default'}\r\n icon-only={tab.iconOnly}\r\n category={this.category}\r\n icon={tab.icon}\r\n label={tab.label}\r\n onClick={() => this.onTabItemClicked(tab.index)}\r\n ></gb-nav-bar-item>\r\n ))}\r\n {this.measured && this.overflowItems.length > 0 && (\r\n <div class=\"more\">\r\n <gb-nav-bar-item\r\n state={this.dropdownItemClicked ? 'active' : 'default'}\r\n icon-only={false}\r\n category={this.category}\r\n icon=\"assets/more.svg\"\r\n label=\"More\"\r\n class=\"more_button\"\r\n onClick={() => this.toggleDropdown()}\r\n ></gb-nav-bar-item>\r\n {this.dropdownOpen && (\r\n <div class=\"dropdown_menu\">\r\n {this.overflowItems.map(tab => (\r\n <gb-dropdown-items-with-shortcut\r\n icon\r\n state=\"default\"\r\n iconSrc={tab.icon}\r\n label={tab.label}\r\n onClick={() => this.onTabItemClicked(tab.index, true)}\r\n ></gb-dropdown-items-with-shortcut>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.top_bar_item_div {\r\n display: inline-flex;\r\n padding: var(--spacing-none);\r\n flex-direction: column;\r\n width: fit-content;\r\n align-items: flex-start;\r\n gap: 0.5rem;\r\n background: transparent;\r\n border-radius: var(--rounded-sm);\r\n cursor: pointer;\r\n position: relative;\r\n}\r\n\r\n.top_bar_item_div.colored_background:hover {\r\n background: rgba(33, 44, 101, 0.4);\r\n}\r\n\r\n.top_bar_item_div.colored_background.active {\r\n background: #042f59;\r\n}\r\n\r\n.top_bar_item_div.plain_background:hover {\r\n background: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\n.top_bar_item_div.plain_background.active {\r\n background: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n.top_bar_content {\r\n display: flex;\r\n padding: var(--spacing-3) var(--spacing-5);\r\n align-items: center;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.bar {\r\n position: absolute;\r\n bottom: 0;\r\n width: calc(100% - 2.5rem);\r\n height: 0.15rem;\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\n.bar.colored_background {\r\n background-color: #fff;\r\n}\r\n\r\n.bar.plain_background {\r\n background-color: var(--color-background-brandRed, #e21b2e);\r\n}\r\n\r\n.icon {\r\n width: 1.25rem;\r\n height: 1.25rem;\r\n}\r\n\r\n.icon.colored_background path[stroke] {\r\n stroke: #fff;\r\n}\r\n\r\n.icon.colored_background path[fill] {\r\n fill: #fff;\r\n}\r\n\r\n.icon.colored_background.active path[fill] {\r\n fill: #fff;\r\n}\r\n\r\n.icon.colored_background.active path.has_opacity[fill][opacity] {\r\n /* fill: transparent; */\r\n opacity: 0.5;\r\n}\r\n\r\n.icon.colored_background.active g.has_opacity[fill][opacity] {\r\n /* fill: transparent; */\r\n opacity: 0.5;\r\n}\r\n\r\n.icon.plain_background path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background path[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background path.has_opacity,\r\n.icon.plain_background g.has_opacity,\r\n.icon.plain_background circle.has_opacity,\r\n.icon.colored_background path.has_opacity,\r\n.icon.colored_background g.has_opacity,\r\n.icon.colored_background circle.has_opacity {\r\n opacity: 0;\r\n}\r\n\r\n.icon.plain_background.active path.has_opacity,\r\n.icon.plain_background.active g.has_opacity,\r\n.icon.plain_background.active circle.has_opacity,\r\n.icon.colored_background.active path.has_opacity,\r\n.icon.colored_background.active g.has_opacity,\r\n.icon.colored_background.active circle.has_opacity {\r\n opacity: 0.5;\r\n}\r\n\r\n/* .icon.plain_background path[fill].has_opacity,\r\n.icon.plain_background g.has_opacity,\r\n.icon.colored_background path[fill].has_opacity,\r\n.icon.colored_background g.has_opacity {\r\n fill: transparent;\r\n} */\r\n\r\n.icon.plain_background.active path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.active path[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.label_text{\r\n white-space: nowrap;\r\n}\r\n\r\n.label_text.colored_background {\r\n color: #fff;\r\n}\r\n\r\n.label_text.plain_background {\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.label_text.plain_background.active {\r\n color: var(--color-text-information-bold, #042f59);\r\n}\r\n\r\n.tooltip {\r\n position: absolute;\r\n bottom: 198%;\r\n left: -0.7rem;\r\n}\r\n","import { Component, Prop, State, getAssetPath, h } from '@stencil/core';\r\nimport { GeneralBackgroundCategories } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-nav-bar-item',\r\n styleUrl: 'gb-nav-bar-item.css',\r\n shadow: true,\r\n})\r\nexport class GbNavBarItem {\r\n @Prop() state: 'default' | 'active';\r\n @Prop() iconOnly: boolean = false;\r\n @Prop() category: GeneralBackgroundCategories;\r\n @Prop() label: string = '';\r\n @Prop() icon: string = '';\r\n @State() leadingIconSvg: string = '';\r\n @State() showTooltip: boolean = false;\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\r\n // Parse SVG into DOM\r\n const parser = new DOMParser();\r\n const svgDoc = parser.parseFromString(svg, 'image/svg+xml');\r\n const svgElement = svgDoc.documentElement;\r\n\r\n // Select all path tags with an opacity attribute\r\n const pathsWithOpacity = svgElement.querySelectorAll('path[opacity]');\r\n const gWithOpacity = svgElement.querySelectorAll('g[opacity]');\r\n\r\n // Add a class to each\r\n pathsWithOpacity.forEach(path => {\r\n path.classList.add('has_opacity');\r\n });\r\n\r\n gWithOpacity.forEach(g => {\r\n g.classList.add('has_opacity');\r\n });\r\n\r\n // Convert the modified SVG back to a string\r\n const modifiedSvg = svgElement.outerHTML;\r\n\r\n // Save or inject it into your component\r\n this.leadingIconSvg = modifiedSvg;\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.icon);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`top_bar_item_div ${this.category} ${this.state}`} onMouseEnter={() => (this.showTooltip = true)} onMouseLeave={() => (this.showTooltip = false)}>\r\n <div class={`top_bar_content`}>\r\n {this.icon && <div class={`icon ${this.category} ${this.state}`} innerHTML={this.leadingIconSvg}></div>}\r\n {!this.iconOnly && (\r\n <div class=\"label\">\r\n <p class={`label_text ${this.state === 'active' ? 'text-md-semi-bold' : 'text-md-medium'} ${this.category} ${this.state}`}>{this.label}</p>\r\n </div>\r\n )}\r\n {this.state === 'active' && this.category === 'colored_background' && <div class={`bar ${this.category}`}></div>}\r\n {this.state === 'active' && this.category === 'plain_background' && <div class={`bar ${this.category}`}></div>}\r\n </div> \r\n {this.iconOnly && this.showTooltip && (\r\n <gb-tooltip show-arrow={true} arrow=\"bottom_center\" class=\"tooltip\">\r\n <p slot=\"label\">{this.label}</p>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n",".nav_bar_wrapper {\r\n display: flex;\r\n width: 17.5rem;\r\n height: 100%;\r\n padding: var(--spacing-6) var(--spacing-7);\r\n flex-direction: column;\r\n justify-content: space-between;\r\n align-items: flex-start;\r\n border-right: 1px solid var(--color-border-subtler, #e3e8ef);\r\n background: var(--color-surface, #ffffff);\r\n box-sizing: border-box;\r\n}\r\n\r\n.vertical_tabs {\r\n width: 100%;\r\n}\r\n\r\n.wrapper {\r\n display: flex;\r\n padding: var(--spacing-4) var(--spacing-5) var(--spacing-5) var(--spacing-5);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n gap: var(--spacing-4);\r\n align-self: stretch;\r\n border-radius: var(--rounded-sm);\r\n border: 1px solid var(--color-border-subtler, #e3e8ef);\r\n background: var(--color-background-gray-subtlest, #f6f8fa);\r\n position: relative;\r\n height: auto;\r\n overflow: hidden;\r\n}\r\n\r\n.wrapper_pattern {\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n mix-blend-mode: multiply;\r\n}\r\n\r\n::slotted([slot='application_name']) {\r\n color: var(--color-text-information-bold, #042f59) !important;\r\n}\r\n\r\n.application_icon path[stroke]{\r\n stroke: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.application_icon path[fill]{\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}","import { Component, Element, Event, EventEmitter, Prop, State, getAssetPath, h } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'gb-nav-bar-sidemenu',\r\n styleUrl: 'gb-nav-bar-sidemenu.css',\r\n shadow: true,\r\n})\r\nexport class GbNavBarSidemenu {\r\n @Prop() applicationName: string = '';\r\n @Prop() applicationIcon: string = '';\r\n @Prop() activeIndex: number = 0;\r\n @Prop() tabs: { name: string; index: number }[] = [\r\n {\r\n name: 'Accounts',\r\n index: 0,\r\n },\r\n {\r\n name: 'Transaction history',\r\n index: 1,\r\n },\r\n {\r\n name: 'TPP report',\r\n index: 1,\r\n },\r\n {\r\n name: 'Check dump history',\r\n index: 1,\r\n },\r\n ];\r\n @State() leadingIconSvg: string = '';\r\n @Element() el: HTMLElement;\r\n @Event() navBarItemClicked: EventEmitter<void>;\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 onTabItemClicked(event) {\r\n this.navBarItemClicked.emit(event.detail);\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.applicationIcon);\r\n }\r\n\r\n componentDidLoad() {\r\n const applicationName = this.el.querySelector('[slot=\"application_name\"]');\r\n\r\n if (applicationName) {\r\n applicationName.classList.add('text-lg-bold');\r\n }\r\n }\r\n\r\n render() {\r\n const patternSrc = getAssetPath(`assets/pattern_wrapper.svg`);\r\n\r\n // return (\r\n // <div class=\"top_bar_sidemenu_div\">\r\n // <div class=\"vertical_tabs_div\">\r\n // <gb-vertical-tabs size=\"md\" tabs={this.tabs} type=\"button_primary\" active-index={this.activeIndex} onTabItemClicked={this.onTabItemClicked.bind(this)}></gb-vertical-tabs>\r\n // </div>\r\n // <div class=\"wrapper\">\r\n // <div class=\"wrapper_pattern\">\r\n // <img src={patternSrc} alt=\"\" />\r\n // </div>\r\n // <div class={`application_icon`} innerHTML={this.leadingIconSvg}></div>\r\n // <div class=\"application_name\">\r\n // <slot name=\"application_name\"></slot>\r\n // </div>\r\n // </div>\r\n // </div>\r\n // );\r\n\r\n return (\r\n <div class=\"nav_bar_wrapper\">\r\n <gb-vertical-tabs\r\n class=\"vertical_tabs\"\r\n size=\"sm\"\r\n tabs={this.tabs}\r\n type=\"button_primary\"\r\n active-index={this.activeIndex}\r\n onTabItemClicked={this.onTabItemClicked.bind(this)}\r\n ></gb-vertical-tabs>\r\n <div class=\"wrapper\">\r\n <div class=\"wrapper_pattern\">\r\n <img src={patternSrc} alt=\"\" />\r\n </div>\r\n <div class={`application_icon`} innerHTML={this.leadingIconSvg}></div>\r\n <slot name=\"application_name\"></slot>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.notification_container {\r\n display: inline-flex;\r\n padding: var(--spacing-6) var(--spacing-2);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n gap: var(--spacing-2);\r\n border-radius: var(--rounded-none);\r\n border-bottom: 0.6px solid var(--color-border-subtler, #E3E8EF);\r\n}\r\n\r\n.notification_container:hover {\r\n background-color: var(--color-background-information-subtlest, #E4F0FC);\r\n}\r\n\r\n.icon img {\r\n fill: var(--color-icon-selected, #075DB2);\r\n stroke: var(--color-icon-selected, #075DB2);\r\n}\r\n\r\nlabel{\r\n color: #202939;\r\n /* Text md/Medium */\r\n font-family: var(--Font-Family-Body, Sora);\r\n font-size: var(--Font-Size-T-md, 16px);\r\n font-style: normal;\r\n font-weight: var(--Font-Weight-Medium, 500);\r\n line-height: var(--Font-Line-height-T-md, 24px); /* 150% */\r\n letter-spacing: var(--Font-Letter-spacing-T-md, 0px);\r\n}\r\n\r\n.time {\r\n color: #697586;\r\n /* Text xs/Regular */\r\n font-family: var(--Font-Family-Body, Sora);\r\n font-size: var(--Font-Size-T-xs, 12px);\r\n font-style: normal;\r\n font-weight: var(--Font-Weight-Regular, 400);\r\n line-height: var(--Font-Line-height-T-xs, 18px); /* 150% */\r\n letter-spacing: var(--Font-Letter-spacing-T-xs, 0px);\r\n}\r\n\r\n.notification_title {\r\n display: flex;\r\n width: 335px;\r\n padding: 0px;\r\n align-items: center;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.supporting_text {\r\n padding-left: 28px;\r\n color:var(--color-text, #4B5565);\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n}","import {Component, Prop, h, getAssetPath} from '@stencil/core'\r\n\r\n@Component({\r\n tag: 'gb-notification-content',\r\n styleUrl: 'gb-notification-content.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbNotificationContent {\r\n @Prop() icon: string;\r\n @Prop() label: string = '';\r\n @Prop() time: string = '';\r\n @Prop() supportingText: string = '';\r\n\r\n render() {\r\n\r\n const iconSrc = getAssetPath(`${this.icon}`);\r\n\r\n return (\r\n <div class=\"notification_container\">\r\n <div class=\"notification_title\">\r\n {this.icon && (\r\n <div class=\"icon\">\r\n <img src={iconSrc} alt=\"Icon\" />\r\n </div>\r\n )}\r\n <label>{this.label}</label>\r\n <span class=\"time\">\r\n {this.time}\r\n </span>\r\n </div> \r\n <div class=\"supporting_text\">\r\n <p class=\"text-sm-regular\">{this.supportingText}</p>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}","@import '../../global/global.css';\r\n\r\n.notification_pane_div{\r\n display: inline-flex;\r\n padding: var(--spacing-2);\r\n flex-direction: column;\r\n align-items: flex-start;\r\n gap: var(--spacing-2);\r\n border-radius: var(--rounded-md);\r\n border: 1px solid var(--color-border-subtler, #E3E8EF);\r\n background: var(--color-surface, #FFFFFF);\r\n box-shadow: var(--shadow-md);\r\n cursor: pointer;\r\n}\r\n\r\n.content_wrapper{\r\n display: flex;\r\n flex-direction: column;\r\n width: fit-content;\r\n height: 24.5rem;\r\n overflow-y: auto;\r\n}\r\n\r\n::-webkit-scrollbar{\r\n right: 0rem;\r\n bottom: -1.53125rem;\r\n width: 0.8rem;\r\n margin-top: 1rem;\r\n}\r\n\r\n::-webkit-scrollbar-track{\r\n width: 0.5rem;\r\n padding: var(--spacing-1);\r\n border: none;\r\n}\r\n\r\n::-webkit-scrollbar-thumb{\r\n width: 0.5rem;\r\n height: 11.75rem;\r\n border: 0.25rem solid var(--color-background-card, #FFFFFF);\r\n border-radius: 0.5rem;\r\n background: var(--color-border-subtle, #CDD5DF);\r\n}\r\n\r\n.container{\r\n position: relative;\r\n display: flex;\r\n width: 24.3125rem;\r\n height: 24.5rem;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n border-bottom: 0.5px solid var(--color-border-subtler, #E3E8EF);\r\n}\r\n\r\n.frame{\r\n display: flex;\r\n /* width: 24.8125rem; */\r\n height: 26.5rem;\r\n padding: var(--spacing-Positive-spacing-None, 0rem) var(--spacing-7);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-Positive-spacing-2, 0.5rem);\r\n flex-shrink: 0;\r\n}\r\n\r\n.empty_state_pattern{\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n mix-blend-mode: multiply;\r\n /* z-index: -1; */\r\n}\r\n\r\n.empty_state{\r\n display: flex;\r\n height: 15rem;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-3);\r\n flex-shrink: 0;\r\n align-self: stretch;\r\n}\r\n\r\n.content{\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n gap: var(--spacing-5);\r\n align-self: stretch;\r\n}\r\n\r\n.text{\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n text-align: center;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.bell_icon{\r\n z-index: 9;\r\n}\r\n\r\n.button{\r\n width: 100%;\r\n}\r\n\r\n::slotted([slot=\"label\"]) {\r\n color: var(--color-text-bold, #202939) !important;\r\n}\r\n\r\n::slotted([slot=\"supporting_text\"]) {\r\n color: var(--color-text, #4B5565) !important;\r\n}","import { Component, Prop, h, getAssetPath, Element, Fragment } from '@stencil/core';\r\nimport { Notification } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-notification-pane',\r\n styleUrl: 'gb-notification-pane.css',\r\n shadow: true,\r\n})\r\nexport class GbNotificationPane {\r\n @Prop() state: 'empty' | 'notification_dropdown';\r\n @Prop({ mutable: true }) notifications: Notification[] = [\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n // {\r\n // label: 'Flagged transaction',\r\n // time: 'Just now',\r\n // desc: 'Aisha, here is your weekly report',\r\n // icon: 'assets/arrow-right-02.svg',\r\n // },\r\n ];\r\n @Element() el: HTMLElement;\r\n\r\n markAllAsRead() {\r\n this.notifications = [];\r\n }\r\n\r\n componentDidLoad() {\r\n const labelSlot = this.el.querySelector('[slot=\"label\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"supporting_text\"]');\r\n\r\n if (labelSlot) {\r\n labelSlot.classList.add('text-lg-semi-bold');\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add('text-sm-regular');\r\n }\r\n }\r\n\r\n render() {\r\n const patternSrc = getAssetPath(`assets/notification_background_pattern.svg`);\r\n const illustrationSrc = getAssetPath(`assets/notification_illustration.svg`);\r\n\r\n return (\r\n <div class=\"notification_pane_div\">\r\n {this.state === 'empty' && [\r\n <div class={`container`}>\r\n <div class=\"frame\">\r\n <img src={patternSrc} alt=\"\" class=\"empty_state_pattern\" />\r\n <div class=\"empty_state\">\r\n <div class=\"content\">\r\n <img src={illustrationSrc} alt=\"bell-icon\" class=\"bell_icon\" />\r\n <div class=\"text\">\r\n <slot name=\"label\"></slot>\r\n <slot name=\"supporting_text\"></slot>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>,\r\n <div class={`button`}>\r\n <gb-button size=\"sm\" hierarchy=\"tertiary_color\" icon=\"default\" state=\"disabled\" icon-leading={true} icon-leading-swap=\"assets/blush_brush.svg\">\r\n <p>Mark all as read</p>\r\n </gb-button>\r\n </div>,\r\n ]}\r\n {this.state === 'notification_dropdown' && (\r\n <>\r\n {this.notifications.length > 0 ? (\r\n <div class=\"notification_dropdown\">\r\n <div class={`content_wrapper`}>\r\n {this.notifications.map(notification => (\r\n <gb-notification-content\r\n label={notification.label}\r\n time={notification.time}\r\n supporting-text={notification.desc}\r\n icon={notification.icon}\r\n ></gb-notification-content>\r\n ))}\r\n </div>\r\n <gb-button size=\"sm\" hierarchy=\"tertiary_color\" icon=\"default\" icon-leading={true} icon-leading-swap=\"assets/blush_brush.svg\" onClick={() => this.markAllAsRead()}>\r\n <p>Mark all as read</p>\r\n </gb-button>\r\n </div>\r\n ) : (\r\n [\r\n <div class={`container`}>\r\n <div class=\"frame\">\r\n <img src={patternSrc} alt=\"\" class=\"empty_state_pattern\" />\r\n <div class=\"empty_state\">\r\n <div class=\"content\">\r\n <img src={illustrationSrc} alt=\"bell-icon\" class=\"bell_icon\" />\r\n <div class=\"text\">\r\n {/* <p class=\"label text-lg-semi-bold\">No notification</p>\r\n <p class=\"supporting_text text-sm-regular\">Your notification inbox is empty at the moment. Rest assured, you'll be promptly notified of any new events</p> */}\r\n <slot name=\"label\"></slot>\r\n <slot name=\"supporting_text\"></slot>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>,\r\n <div class={`button`}>\r\n <gb-button size=\"sm\" hierarchy=\"tertiary_color\" icon=\"default\" state=\"disabled\" icon-leading={true} icon-leading-swap=\"assets/blush_brush.svg\">\r\n <p>Mark all as read</p>\r\n </gb-button>\r\n </div>,\r\n ]\r\n )}\r\n </>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.pagination_div{\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n\r\n.pagination_entries{\r\n display: flex;\r\n gap: var(--spacing-2);\r\n align-items: center;\r\n}\r\n\r\n.pagination_btns{\r\n display: flex;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.entries_dropdown{\r\n width: 6rem;\r\n}\r\n\r\ngb-input-dropdown{\r\n z-index: 99;\r\n}\r\n\r\n.pagination_numbers{\r\n display: flex;\r\n align-items: flex-start;\r\n gap: var(--spacing-half);\r\n}\r\n\r\n.pagination_button_group{\r\n display: flex;\r\n border-radius: var(--rounded-sm);\r\n border: 1px solid var(--color-border-subtle, #CDD5DF);\r\n box-shadow: var(--shadow-xs);\r\n align-items: center;\r\n overflow: hidden;\r\n}\r\n\r\n.page_numbers{\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n/* Pagination Type Styles */\r\n.pagination_div.page_default.desktop,\r\n.pagination_div.page_minimal_center_aligned.desktop{\r\n padding-top: var(--spacing-5);\r\n}\r\n\r\n.pagination_div.card_default.desktop,\r\n.pagination_div.card_minimal_right_aligned.desktop,\r\n.pagination_div.card_minimal_left_aligned.desktop,\r\n.pagination_div.card_minimal_center_aligned.desktop,\r\n.pagination_div.card_button_group_right_aligned.desktop,\r\n.pagination_div.card_button_group_left_aligned.desktop{\r\n padding: var(--spacing-3) var(--spacing-6) var(--spacing-4) var(--spacing-6);\r\n}\r\n\r\n.pagination_div.page_default.mobile,\r\n.pagination_div.page_minimal_center_aligned.mobile{\r\n padding-top: var(--spacing-4);\r\n}\r\n\r\n.pagination_div.card_button_group_center_aligned.desktop{\r\n display: flex;\r\n padding: var(--spacing-3) var(--spacing-6) var(--spacing-4) var(--spacing-6);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: 0.5rem;\r\n}\r\n\r\n.pagination_div.card_default.mobile,\r\n.pagination_div.card_minimal_left_aligned.mobile,\r\n.pagination_div.card_minimal_right_aligned.mobile,\r\n.pagination_div.card_minimal_center_aligned.mobile{\r\n padding: var(--spacing-3) var(--spacing-4);\r\n}\r\n\r\n.pagination_div.card_button_group_right_aligned.mobile{\r\n display: flex;\r\n padding: var(--spacing-3) var(--spacing-4);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: flex-end;\r\n gap: 0.5rem;\r\n}\r\n\r\n.pagination_div.card_button_group_left_aligned.mobile{\r\n display: flex;\r\n padding: var(--spacing-3) var(--spacing-4);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n gap: 0.5rem;\r\n}\r\n\r\n.pagination_div.card_button_group_center_aligned.mobile{\r\n display: flex;\r\n padding: var(--spacing-3) var(--spacing-4);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: 0.5rem;\r\n}","import { Component, Prop, h, Fragment, State, Event, EventEmitter, Watch } from '@stencil/core';\r\nimport { BreakPoints, PaginationNumberShapes, PaginationTypes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-pagination',\r\n styleUrl: 'gb-pagination.css',\r\n shadow: true,\r\n})\r\nexport class GbPagination {\r\n @Prop() type: PaginationTypes;\r\n @Prop() shape: PaginationNumberShapes;\r\n @Prop({ mutable: true }) breakpoint: BreakPoints;\r\n @Prop({ mutable: true }) currentPage: number = 1;\r\n @Prop({ mutable: true }) totalPages: number;\r\n @Prop({ mutable: true }) entries: number[] = [10, 20, 50, 80, 100];\r\n @State() selectedPageSize: number | string | object = this.entries[0];\r\n @State() defaultSelected: any;\r\n @State() pages = [];\r\n @State() width: number = window.innerWidth;\r\n @State() internalTotalPages: number;\r\n @Event() pageItemSelected: EventEmitter<{ pageSize: any; pageNumber: number }>;\r\n\r\n private handleResize = () => {\r\n this.width = window.innerWidth;\r\n this.updatePaginationSize();\r\n };\r\n\r\n updatePaginationSize() {\r\n this.breakpoint = this.width < 730 ? 'mobile' : 'desktop';\r\n }\r\n\r\n onPreviousButtonClicked() {\r\n if (this.internalTotalPages > 1) {\r\n if (this.currentPage === this.internalTotalPages || this.currentPage > 1) {\r\n this.currentPage = this.currentPage - 1;\r\n // console.log(this.currentPage);\r\n }\r\n this.pageItemSelected.emit({ pageSize: this.selectedPageSize, pageNumber: this.currentPage });\r\n }\r\n }\r\n\r\n onNextButtonClicked() {\r\n if (this.internalTotalPages > 1) {\r\n if (this.currentPage === 1 || this.currentPage <= this.internalTotalPages - 1) {\r\n this.currentPage = this.currentPage + 1;\r\n // console.log(this.currentPage);\r\n }\r\n this.pageItemSelected.emit({ pageSize: this.selectedPageSize, pageNumber: this.currentPage });\r\n }\r\n }\r\n \r\n componentWillLoad() {\r\n this.internalTotalPages = this.totalPages;\r\n this.pages = [];\r\n\r\n if (this.totalPages <= 5) {\r\n // Show all pages if totalPages <= 5\r\n for (let i = 1; i <= this.totalPages; i++) {\r\n // console.log(i)\r\n this.pages.push(i)\r\n }\r\n }\r\n\r\n this.updatePaginationSize(); // Set initial variant\r\n window.addEventListener('resize', this.handleResize);\r\n\r\n this.defaultSelected = [this.selectedPageSize];\r\n // console.log(this.currentPage)\r\n this.pageItemSelected.emit({ pageSize: this.selectedPageSize, pageNumber: this.currentPage });\r\n }\r\n\r\n generatePages() {\r\n const tempPages = [];\r\n if (this.internalTotalPages <= 5) {\r\n for (let i = 1; i <= this.internalTotalPages; i++) {\r\n tempPages.push(i);\r\n }\r\n } else {\r\n // Optional: logic for > 5 pages if needed\r\n }\r\n this.pages = tempPages;\r\n }\r\n\r\n // componentWillLoad() {\r\n // setTimeout(() => {this.totalPages = 5}, 2000)\r\n // }\r\n\r\n @Watch('totalPages')\r\n onTotalPagesChange(newValue: number, _oldValue: number) {\r\n // console.log('totalPages changed from', oldValue, 'to', newValue);\r\n this.internalTotalPages = newValue;\r\n this.generatePages();\r\n }\r\n\r\n handlePageSizeSelect(item) {\r\n this.selectedPageSize = item.detail;\r\n this.pageItemSelected.emit({ pageSize: this.selectedPageSize, pageNumber: this.currentPage });\r\n }\r\n\r\n setCurrentPage(number: number) {\r\n this.currentPage = number;\r\n this.pageItemSelected.emit({ pageSize: this.selectedPageSize, pageNumber: this.currentPage });\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`pagination_div ${this.type} ${this.breakpoint}`}>\r\n {/* Desktop Breakpoint Pagination */}\r\n {this.type === 'page_default' && this.breakpoint === 'desktop' && (\r\n <>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n >\r\n <p>Previous</p>\r\n </gb-button>\r\n\r\n <div class=\"pagination_numbers\">\r\n {this.internalTotalPages <= 5 &&\r\n this.pages.map(page => (\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === page ? 'active' : 'default'} onClick={() => this.setCurrentPage(page)}>\r\n <p slot=\"page_number\">{page}</p>\r\n </gb-pagination-number-base>\r\n ))}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => this.setCurrentPage(1)}>\r\n <p slot=\"page_number\">1</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => this.setCurrentPage(2)}>\r\n <p slot=\"page_number\">2</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => this.setCurrentPage(3)}>\r\n <p slot=\"page_number\">3</p>\r\n </gb-pagination-number-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p slot=\"page_number\">{this.currentPage}</p>\r\n </gb-pagination-number-base>\r\n ) : null}\r\n <gb-pagination-number-base shape={this.shape}>\r\n <p slot=\"page_number\">...</p>\r\n </gb-pagination-number-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p slot=\"page_number\">{this.currentPage}</p>\r\n </gb-pagination-number-base>\r\n ) : null}\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages - 2)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages - 2}</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages - 1)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages - 1}</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages}</p>\r\n </gb-pagination-number-base>\r\n </>\r\n )}\r\n </div>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"tertiary_gray\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-trailing={true}\r\n icon-trailing-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n >\r\n <p>Next</p>\r\n </gb-button>\r\n </>\r\n )}\r\n {this.type === 'page_minimal_center_aligned' && this.breakpoint === 'desktop' && (\r\n <>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n >\r\n <p>Previous</p>\r\n </gb-button>\r\n <div class=\"pagination_numbers\">\r\n {this.internalTotalPages <= 5 && (\r\n <>\r\n {this.internalTotalPages <= 5 &&\r\n this.pages.map(page => (\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === page ? 'active' : 'default'} onClick={() => this.setCurrentPage(page)}>\r\n <p slot=\"page_number\">{page}</p>\r\n </gb-pagination-number-base>\r\n ))}\r\n </>\r\n )}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => this.setCurrentPage(1)}>\r\n <p slot=\"page_number\">1</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => this.setCurrentPage(2)}>\r\n <p slot=\"page_number\">2</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => this.setCurrentPage(3)}>\r\n <p slot=\"page_number\">3</p>\r\n </gb-pagination-number-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p slot=\"page_number\">{this.currentPage}</p>\r\n </gb-pagination-number-base>\r\n ) : null}\r\n <gb-pagination-number-base shape={this.shape}>\r\n <p slot=\"page_number\">...</p>\r\n </gb-pagination-number-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p slot=\"page_number\">{this.currentPage}</p>\r\n </gb-pagination-number-base>\r\n ) : null}\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages - 2)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages - 2}</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages - 1)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages - 1}</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages}</p>\r\n </gb-pagination-number-base>\r\n </>\r\n )}\r\n </div>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"default\"\r\n state=\"default\"\r\n icon-trailing={true}\r\n icon-trailing-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n >\r\n <p>Next</p>\r\n </gb-button>\r\n </>\r\n )}\r\n {this.type === 'card_default' && this.breakpoint === 'desktop' && (\r\n <>\r\n <div class=\"pagination_entries\">\r\n <div class=\"entries_text\">\r\n <p class={`text-sm-medium`} style={{ color: 'var(--color-text, #4B5565)' }}>\r\n Entries\r\n </p>\r\n </div>\r\n <div class={`entries_dropdown`}>\r\n <gb-input-dropdown\r\n type=\"default\"\r\n state=\"default\"\r\n size=\"sm\"\r\n show-label={false}\r\n show-hint-text={false}\r\n show-supporting-text={false}\r\n show-help-icon={false}\r\n items={this.entries}\r\n menu-position=\"top\"\r\n onDropdownItemSelected={this.handlePageSizeSelect.bind(this)}\r\n value={this.defaultSelected}\r\n ></gb-input-dropdown>\r\n </div>\r\n </div>\r\n <div class=\"pagination_numbers\">\r\n {this.internalTotalPages <= 5 &&\r\n this.pages.map(page => (\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === page ? 'active' : 'default'} onClick={() => this.setCurrentPage(page)}>\r\n <p slot=\"page_number\">{page}</p>\r\n </gb-pagination-number-base>\r\n ))}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => this.setCurrentPage(1)}>\r\n <p slot=\"page_number\">1</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => this.setCurrentPage(2)}>\r\n <p slot=\"page_number\">2</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => this.setCurrentPage(3)}>\r\n <p slot=\"page_number\">3</p>\r\n </gb-pagination-number-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-number-base shape={this.shape} state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p slot=\"page_number\">{this.currentPage}</p>\r\n </gb-pagination-number-base>\r\n ) : null}\r\n <gb-pagination-number-base shape={this.shape} state=\"default\">\r\n <p slot=\"page_number\">...</p>\r\n </gb-pagination-number-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p slot=\"page_number\">{this.currentPage}</p>\r\n </gb-pagination-number-base>\r\n ) : null}\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages - 2)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages - 2}</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages - 1)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages - 1}</p>\r\n </gb-pagination-number-base>\r\n <gb-pagination-number-base\r\n shape={this.shape}\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => this.setCurrentPage(this.internalTotalPages)}\r\n >\r\n <p slot=\"page_number\">{this.internalTotalPages}</p>\r\n </gb-pagination-number-base>\r\n </>\r\n )}\r\n </div>\r\n <div class=\"pagination_btns\">\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state={this.totalPages === 1 && this.currentPage === 1 ? 'disabled' : this.currentPage === 1 ? 'disabled' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n ></gb-button>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state={this.currentPage === this.internalTotalPages ? 'disabled' : this.currentPage === 1 && this.totalPages === 1 ? 'disabled' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n ></gb-button>\r\n </div>\r\n </>\r\n )}\r\n {this.type === 'card_minimal_right_aligned' && this.breakpoint === 'desktop' && (\r\n <>\r\n <div class=\"pagination_entries\">\r\n <div class=\"entries_text\">\r\n <p class={`text-sm-medium`} style={{ color: 'var(--color-text, #4B5565)' }}>\r\n Entries\r\n </p>\r\n </div>\r\n <div class={`entries_dropdown`}>\r\n <gb-input-dropdown\r\n type=\"default\"\r\n state={'default'}\r\n size=\"sm\"\r\n show-label={false}\r\n show-hint-text={false}\r\n show-supporting-text={false}\r\n show-hep-icon={false}\r\n items={this.entries}\r\n menu-position=\"top\"\r\n onDropdownItemSelected={this.handlePageSizeSelect.bind(this)}\r\n value={this.defaultSelected}\r\n ></gb-input-dropdown>\r\n </div>\r\n </div>\r\n <div class=\"page_number_text\">\r\n <p class=\"page_numbers text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <div class=\"pagination_btns\">\r\n <gb-button size=\"sm\" hierarchy=\"secondary_gray\" icon=\"default\" state=\"default\" onClick={() => this.onPreviousButtonClicked()}>\r\n <p>Previous</p>\r\n </gb-button>\r\n <gb-button size=\"sm\" hierarchy=\"secondary_gray\" icon=\"default\" state=\"default\" onClick={() => this.onNextButtonClicked()}>\r\n <p>Next</p>\r\n </gb-button>\r\n </div>\r\n </>\r\n )}\r\n {this.type === 'card_minimal_left_aligned' && this.breakpoint === 'desktop' && (\r\n <>\r\n <div class=\"pagination_btns\">\r\n <gb-button size=\"sm\" hierarchy=\"secondary_gray\" icon=\"default\" state=\"default\" onClick={() => this.onPreviousButtonClicked()}>\r\n <p>Previous</p>\r\n </gb-button>\r\n <gb-button size=\"sm\" hierarchy=\"secondary_gray\" icon=\"default\" state=\"default\" onClick={() => this.onNextButtonClicked()}>\r\n <p>Next</p>\r\n </gb-button>\r\n </div>\r\n <div class=\"page_number_text\">\r\n <p class=\"text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <div class=\"pagination_entries\">\r\n <div class=\"entries_text\">\r\n <p class={`text-sm-medium`} style={{ color: 'var(--color-text, #4B5565)' }}>\r\n Entries\r\n </p>\r\n </div>\r\n <div class={`entries_dropdown`}>\r\n <gb-input-dropdown\r\n type=\"default\"\r\n state={'default'}\r\n size=\"sm\"\r\n show-label={false}\r\n show-hint-text={false}\r\n show-supporting-text={false}\r\n show-hep-icon={false}\r\n items={this.entries}\r\n menu-position=\"top\"\r\n onDropdownItemSelected={this.handlePageSizeSelect.bind(this)}\r\n value={this.defaultSelected}\r\n ></gb-input-dropdown>\r\n </div>\r\n </div>\r\n </>\r\n )}\r\n {this.type === 'card_minimal_center_aligned' && this.breakpoint === 'desktop' && (\r\n <>\r\n <gb-button size=\"sm\" hierarchy=\"secondary_gray\" icon=\"default\" state=\"default\" onClick={() => this.onPreviousButtonClicked()}>\r\n <p>Previous</p>\r\n </gb-button>\r\n <div class=\"page_number_text\">\r\n <p class=\"page_numbers text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <gb-button size=\"sm\" hierarchy=\"secondary_gray\" icon=\"default\" state=\"default\" onClick={() => this.onNextButtonClicked()}>\r\n <p>Next</p>\r\n </gb-button>\r\n </>\r\n )}\r\n {this.type === 'card_button_group_right_aligned' && this.breakpoint === 'desktop' && (\r\n <>\r\n <div class=\"pagination_entries\">\r\n <div class=\"entries_text\">\r\n <p class={`text-sm-medium`} style={{ color: 'var(--color-text, #4B5565)' }}>\r\n Entries\r\n </p>\r\n </div>\r\n <div class={`entries_dropdown`}>\r\n <gb-input-dropdown\r\n type=\"default\"\r\n state={'default'}\r\n size=\"sm\"\r\n show-label={false}\r\n show-hint-text={false}\r\n show-supporting-text={false}\r\n show-hep-icon={false}\r\n items={this.entries}\r\n menu-position=\"top\"\r\n onDropdownItemSelected={this.handlePageSizeSelect.bind(this)}\r\n value={this.defaultSelected}\r\n ></gb-input-dropdown>\r\n </div>\r\n </div>\r\n <div class=\"pagination_button_group\">\r\n <gb-pagination-button-group-base icon=\"leading\" onClick={() => this.onPreviousButtonClicked()}>\r\n <p>Previous</p>\r\n </gb-pagination-button-group-base>\r\n {this.internalTotalPages <= 5 && (\r\n <>\r\n {this.pages.map(page => (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === page ? 'active' : 'default'} onClick={() => (this.currentPage = page)}>\r\n <p>{page}</p>\r\n </gb-pagination-button-group-base>\r\n ))}\r\n </>\r\n )}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => (this.currentPage = 1)}>\r\n <p>1</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => (this.currentPage = 2)}>\r\n <p>2</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => (this.currentPage = 3)}>\r\n <p>3</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base icon=\"false\">\r\n <p>...</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 2)}\r\n >\r\n <p>{this.internalTotalPages - 2}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 1)}\r\n >\r\n <p>{this.internalTotalPages - 1}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages)}\r\n >\r\n <p>{this.internalTotalPages}</p>\r\n </gb-pagination-button-group-base>\r\n </>\r\n )}\r\n <gb-pagination-button-group-base icon=\"trailing\" onClick={() => this.onNextButtonClicked()}>\r\n <p>Next</p>\r\n </gb-pagination-button-group-base>\r\n </div>\r\n </>\r\n )}\r\n {this.type === 'card_button_group_left_aligned' && this.breakpoint === 'desktop' && (\r\n <>\r\n <div class=\"pagination_button_group\">\r\n <gb-pagination-button-group-base icon=\"leading\" onClick={() => this.onPreviousButtonClicked()}>\r\n <p>Previous</p>\r\n </gb-pagination-button-group-base>\r\n {this.internalTotalPages <= 5 && (\r\n <>\r\n {this.pages.map(page => (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === page ? 'active' : 'default'} onClick={() => (this.currentPage = page)}>\r\n <p>{page}</p>\r\n </gb-pagination-button-group-base>\r\n ))}\r\n </>\r\n )}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => (this.currentPage = 1)}>\r\n <p>1</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => (this.currentPage = 2)}>\r\n <p>2</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => (this.currentPage = 3)}>\r\n <p>3</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base icon=\"false\">\r\n <p>...</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 2)}\r\n >\r\n <p>{this.internalTotalPages - 2}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 1)}\r\n >\r\n <p>{this.internalTotalPages - 1}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages)}\r\n >\r\n <p>{this.internalTotalPages}</p>\r\n </gb-pagination-button-group-base>\r\n </>\r\n )}\r\n <gb-pagination-button-group-base icon=\"trailing\" onClick={() => this.onNextButtonClicked()}>\r\n <p>Next</p>\r\n </gb-pagination-button-group-base>\r\n </div>\r\n <div class=\"pagination_entries\">\r\n <div class=\"entries_text\">\r\n <p class={`text-sm-medium`} style={{ color: 'var(--color-text, #4B5565)' }}>\r\n Entries\r\n </p>\r\n </div>\r\n <div class={`entries_dropdown`}>\r\n <gb-input-dropdown\r\n type=\"default\"\r\n state={'default'}\r\n size=\"sm\"\r\n show-label={false}\r\n show-hint-text={false}\r\n show-supporting-text={false}\r\n show-hep-icon={false}\r\n items={this.entries}\r\n menu-position=\"top\"\r\n onDropdownItemSelected={this.handlePageSizeSelect.bind(this)}\r\n value={this.defaultSelected}\r\n ></gb-input-dropdown>\r\n </div>\r\n </div>\r\n </>\r\n )}\r\n {this.type === 'card_button_group_center_aligned' && this.breakpoint === 'desktop' && (\r\n <>\r\n <div class=\"pagination_button_group\">\r\n <gb-pagination-button-group-base icon=\"leading\" onClick={() => this.onPreviousButtonClicked()}>\r\n <p>Previous</p>\r\n </gb-pagination-button-group-base>\r\n {this.internalTotalPages <= 5 && (\r\n <>\r\n {this.pages.map(page => (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === page ? 'active' : 'default'} onClick={() => (this.currentPage = page)}>\r\n <p>{page}</p>\r\n </gb-pagination-button-group-base>\r\n ))}\r\n </>\r\n )}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => (this.currentPage = 1)}>\r\n <p>1</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => (this.currentPage = 2)}>\r\n <p>2</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => (this.currentPage = 3)}>\r\n <p>3</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base icon=\"false\">\r\n <p>...</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 2)}\r\n >\r\n <p>{this.internalTotalPages - 2}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 1)}\r\n >\r\n <p>{this.internalTotalPages - 1}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages)}\r\n >\r\n <p>{this.internalTotalPages}</p>\r\n </gb-pagination-button-group-base>\r\n </>\r\n )}\r\n <gb-pagination-button-group-base icon=\"trailing\" onClick={() => this.onNextButtonClicked()}>\r\n <p>Next</p>\r\n </gb-pagination-button-group-base>\r\n </div>\r\n </>\r\n )}\r\n {/* Mobile Breakpoint Pagination */}\r\n {this.type === 'page_default' && this.breakpoint === 'mobile' && (\r\n <>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n ></gb-button>\r\n <div class=\"page_number_text\">\r\n <p class=\"page_numbers text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n ></gb-button>\r\n </>\r\n )}\r\n {this.type === 'page_minimal_center_aligned' && this.breakpoint === 'mobile' && (\r\n <>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n ></gb-button>\r\n <div class=\"page_number_text\">\r\n <p class=\"page_numbers text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n ></gb-button>\r\n </>\r\n )}\r\n {this.type === 'card_default' && this.breakpoint === 'mobile' && (\r\n <>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n ></gb-button>\r\n <div class=\"page_number_text\">\r\n <p class=\"page_numbers text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n ></gb-button>\r\n </>\r\n )}\r\n {this.type === 'card_minimal_right_aligned' && this.breakpoint === 'mobile' && (\r\n <>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n ></gb-button>\r\n <div class=\"page_number_text\">\r\n <p class=\"page_numbers text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n ></gb-button>\r\n </>\r\n )}\r\n {this.type === 'card_minimal_left_aligned' && this.breakpoint === 'mobile' && (\r\n <>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n ></gb-button>\r\n <div class=\"page_number_text\">\r\n <p class=\"page_numbers text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n ></gb-button>\r\n </>\r\n )}\r\n {this.type === 'card_minimal_center_aligned' && this.breakpoint === 'mobile' && (\r\n <>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-left-02.svg\"\r\n onClick={() => this.onPreviousButtonClicked()}\r\n ></gb-button>\r\n <div class=\"page_number_text\">\r\n <p class=\"page_numbers text-sm-medium\">\r\n Page {this.currentPage} of {this.internalTotalPages}\r\n </p>\r\n </div>\r\n <gb-button\r\n size=\"sm\"\r\n hierarchy=\"secondary_gray\"\r\n icon=\"only\"\r\n state=\"default\"\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/arrow-right-02.svg\"\r\n onClick={() => this.onNextButtonClicked()}\r\n ></gb-button>\r\n </>\r\n )}\r\n {this.type === 'card_button_group_right_aligned' && this.breakpoint === 'mobile' && (\r\n <div class=\"pagination_button_group\">\r\n <gb-pagination-button-group-base icon=\"only\" icon-src=\"assets/arrow-left-02.svg\" onClick={() => this.onPreviousButtonClicked()}></gb-pagination-button-group-base>\r\n {this.internalTotalPages <= 5 && (\r\n <>\r\n {this.pages.map(page => (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === page ? 'active' : 'default'} onClick={() => (this.currentPage = page)}>\r\n <p>{page}</p>\r\n </gb-pagination-button-group-base>\r\n ))}\r\n </>\r\n )}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => (this.currentPage = 1)}>\r\n <p>1</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => (this.currentPage = 2)}>\r\n <p>2</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => (this.currentPage = 3)}>\r\n <p>3</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base icon=\"false\">\r\n <p>...</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 2)}\r\n >\r\n <p>{this.internalTotalPages - 2}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 1)}\r\n >\r\n <p>{this.internalTotalPages - 1}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages)}\r\n >\r\n <p>{this.internalTotalPages}</p>\r\n </gb-pagination-button-group-base>\r\n </>\r\n )}\r\n <gb-pagination-button-group-base icon=\"only\" icon-src=\"assets/arrow-right-02.svg\" onClick={() => this.onNextButtonClicked()}></gb-pagination-button-group-base>\r\n </div>\r\n )}\r\n {this.type === 'card_button_group_left_aligned' && this.breakpoint === 'mobile' && (\r\n <div class=\"pagination_button_group\">\r\n <gb-pagination-button-group-base icon=\"only\" icon-src=\"assets/arrow-left-02.svg\" onClick={() => this.onPreviousButtonClicked()}></gb-pagination-button-group-base>\r\n {this.internalTotalPages <= 5 && (\r\n <>\r\n {this.pages.map(page => (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === page ? 'active' : 'default'} onClick={() => (this.currentPage = page)}>\r\n <p>{page}</p>\r\n </gb-pagination-button-group-base>\r\n ))}\r\n </>\r\n )}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => (this.currentPage = 1)}>\r\n <p>1</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => (this.currentPage = 2)}>\r\n <p>2</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => (this.currentPage = 3)}>\r\n <p>3</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base icon=\"false\">\r\n <p>...</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 2)}\r\n >\r\n <p>{this.internalTotalPages - 2}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 1)}\r\n >\r\n <p>{this.internalTotalPages - 1}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages)}\r\n >\r\n <p>{this.internalTotalPages}</p>\r\n </gb-pagination-button-group-base>\r\n </>\r\n )}\r\n <gb-pagination-button-group-base icon=\"only\" icon-src=\"assets/arrow-right-02.svg\" onClick={() => this.onNextButtonClicked()}></gb-pagination-button-group-base>\r\n </div>\r\n )}\r\n {this.type === 'card_button_group_center_aligned' && this.breakpoint === 'mobile' && (\r\n <div class=\"pagination_button_group\">\r\n <gb-pagination-button-group-base icon=\"only\" icon-src=\"assets/arrow-left-02.svg\" onClick={() => this.onPreviousButtonClicked()}></gb-pagination-button-group-base>\r\n {this.internalTotalPages <= 5 && (\r\n <>\r\n {this.pages.map(page => (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === page ? 'active' : 'default'} onClick={() => (this.currentPage = page)}>\r\n <p>{page}</p>\r\n </gb-pagination-button-group-base>\r\n ))}\r\n </>\r\n )}\r\n {this.internalTotalPages >= 6 && (\r\n <>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 1 ? 'active' : 'default'} onClick={() => (this.currentPage = 1)}>\r\n <p>1</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 2 ? 'active' : 'default'} onClick={() => (this.currentPage = 2)}>\r\n <p>2</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage === 3 ? 'active' : 'default'} onClick={() => (this.currentPage = 3)}>\r\n <p>3</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? (\r\n <gb-pagination-button-group-base icon=\"false\" state={this.currentPage > 3 && this.currentPage <= this.internalTotalPages / 2 ? 'active' : 'default'}>\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base icon=\"false\">\r\n <p>...</p>\r\n </gb-pagination-button-group-base>\r\n {this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages - 2 ? (\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage > this.internalTotalPages / 2 && this.currentPage < this.internalTotalPages ? 'active' : 'default'}\r\n >\r\n <p>{this.currentPage}</p>\r\n </gb-pagination-button-group-base>\r\n ) : null}\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 2 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 2)}\r\n >\r\n <p>{this.internalTotalPages - 2}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages - 1 ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages - 1)}\r\n >\r\n <p>{this.internalTotalPages - 1}</p>\r\n </gb-pagination-button-group-base>\r\n <gb-pagination-button-group-base\r\n icon=\"false\"\r\n state={this.currentPage === this.internalTotalPages ? 'active' : 'default'}\r\n onClick={() => (this.currentPage = this.internalTotalPages)}\r\n >\r\n <p>{this.internalTotalPages}</p>\r\n </gb-pagination-button-group-base>\r\n </>\r\n )}\r\n <gb-pagination-button-group-base icon=\"only\" icon-src=\"assets/arrow-right-02.svg\" onClick={() => this.onNextButtonClicked()}></gb-pagination-button-group-base>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n",".button_base_div{\r\n display: flex;\r\n align-items: center;\r\n align-self: stretch;\r\n border-right: 1px solid var(--color-border-subtle, #CDD5DF);\r\n justify-content: center;\r\n cursor: pointer;\r\n width: fit-content;\r\n}\r\n\r\n.button_base_div:hover{\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\n.button_base_div.active{\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\n.button_base_div:active{\r\n background: none;\r\n}\r\n\r\n.button_base_div.false{\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n padding: var(--spacing-none);\r\n}\r\n\r\n.button_base_div.leading,\r\n.button_base_div.trailing{\r\n height: 2.5rem;\r\n gap: 0.5rem;\r\n padding: var(--spacing-none) var(--spacing-4);\r\n}\r\n\r\n.button_base_div.only{\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n}\r\n\r\n::slotted(p){\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n::slotted(p.active_text){\r\n color: var(--color-text-bold, #202939);\r\n}","import { Component, Prop, h, Fragment, Element, getAssetPath, State } from \"@stencil/core\";\r\n\r\n@Component({\r\n tag: 'gb-pagination-button-group-base',\r\n styleUrl: 'gb-pagination-button-group-base.css',\r\n shadow: true,\r\n})\r\nexport class GbPaginationButtonGroupBase {\r\n @Prop() icon: 'false' | 'only' | 'trailing' | 'leading';\r\n @Prop() state: 'default' | 'active';\r\n @Prop() iconSrc: string;\r\n @State() leadingIconSvg: string = '';\r\n @Element() el: HTMLElement;\r\n\r\n componentDidLoad() {\r\n const slottedContent = this.el.querySelector('p');\r\n\r\n if (slottedContent) {\r\n slottedContent.classList.add('text-sm-semi-bold');\r\n }\r\n\r\n if(this.state === 'active') {\r\n slottedContent.classList.add('active_text');\r\n }\r\n\r\n this.loadIcon(this.iconSrc);\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 render() {\r\n return (\r\n <div class={`button_base_div ${this.icon} ${this.state}`}>\r\n {this.icon === 'false' && <slot></slot>}\r\n {this.icon === 'leading' && (\r\n <>\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=\"M3.33325 9.99981H16.6666M3.33325 9.99981C3.33326 11.0978 7.49975 14.1667 7.49975 14.1667M3.33325 9.99981C3.33324 8.90182 7.49978 5.83334 7.49978 5.83334\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.67\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n <slot></slot>\r\n </>\r\n )}\r\n {this.icon === 'trailing' && (\r\n <>\r\n <slot></slot>\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=\"M16.6668 9.99984H3.3335M16.6668 9.99984C16.6668 11.0978 12.5003 14.1667 12.5003 14.1667M16.6668 9.99984C16.6669 8.90185 12.5002 5.83337 12.5002 5.83337\"\r\n stroke=\"#4B5565\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n </>\r\n )}\r\n {this.icon === 'only' && (\r\n <>\r\n <div class={`icon`} innerHTML={this.leadingIconSvg}></div>\r\n </>\r\n )}\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.page_number_base{\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n cursor: pointer;\r\n}\r\n\r\n/* Shape Styles */\r\n.page_number_base.square{\r\n border-radius: var(--rounded-sm);\r\n}\r\n\r\n.page_number_base.circle{\r\n border-radius: 1.25rem;\r\n}\r\n\r\n/* State Styles */\r\n.page_number_base:hover{\r\n background-color: var(--color-background-information-subtler, #C8E0F9);\r\n}\r\n\r\n.page_number_base:active,\r\n.page_number_base.active{\r\n background-color: var(--color-background-information-subtle, #9AC7F4);\r\n}\r\n\r\n::slotted([slot=\"page_number\"].default) {\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n::slotted([slot=\"page_number\"].active) {\r\n color: var(--color-text-bold, #202939);\r\n}","import { Component, Element, Prop, h } from \"@stencil/core\";\r\nimport { PaginationNumberShapes } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-pagination-number-base',\r\n styleUrl: 'gb-pagination-number-base.css',\r\n shadow: true,\r\n})\r\nexport class GbPaginationNumberBase {\r\n @Prop() shape: PaginationNumberShapes;\r\n @Prop() state: 'default' | 'active' | 'pressed';\r\n @Element() el: HTMLElement;\r\n\r\n componentDidLoad() {\r\n const slottedContent = this.el.querySelector('[slot=\"page_number\"]');\r\n\r\n if (slottedContent) {\r\n slottedContent.classList.add('text-sm-medium');\r\n }\r\n\r\n if (this.state === 'default') {\r\n slottedContent.classList.add('default');\r\n }\r\n\r\n if (this.state === 'active') {\r\n slottedContent.classList.add('active');\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`page_number_base ${this.shape} ${this.state}`}>\r\n <slot name=\"page_number\"></slot>\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n:host{\r\n display: flex;\r\n align-items: center;\r\n height: 100%;\r\n}\r\n\r\ndiv {\r\n display: inline-flex;\r\n align-items: flex-start;\r\n}","import { Component, h, Prop, State } from '@stencil/core';\r\n\r\n@Component({\r\n tag: 'gb-password-button',\r\n styleUrl: 'gb-password-button.css',\r\n shadow: true\r\n})\r\nexport class GbPasswordButton {\r\n @State() isPasswordVisible: boolean = false;\r\n @Prop() state: 'default' | 'disabled';\r\n\r\n togglePasswordVisibility() {\r\n this.isPasswordVisible = !this.isPasswordVisible;\r\n }\r\n\r\n render() {\r\n return (\r\n <div>\r\n <gb-btn size=\"sm\" hierarchy=\"link_gray\" state=\"default\" onClick={() => this.togglePasswordVisibility()}>\r\n {this.isPasswordVisible ? (\r\n <gb-button size=\"sm\" hierarchy=\"tertiary_gray\" icon=\"default\" state={this.state}>\r\n <p>HIDE</p>\r\n </gb-button>\r\n ) : (\r\n <gb-button size=\"sm\" hierarchy=\"tertiary_gray\" icon=\"default\" state={this.state}>\r\n <p>SHOW</p>\r\n </gb-button>\r\n )}\r\n </gb-btn>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n/* Simple Sidebar Styles */\r\n.simple_sidebar_div{\r\n transition: all 0.3s ease-in-out;\r\n position: relative;\r\n height: 100vh;\r\n}\r\n\r\n.pattern{\r\n position: absolute;\r\n top: 0;\r\n width: 100%;\r\n height: 100%;\r\n overflow: hidden;\r\n mix-blend-mode: multiply;\r\n}\r\n\r\n.simple_sidebar_div .pattern img\r\n.primary_side_menu .pattern img{\r\n width: 100%;\r\n height: auto;\r\n}\r\n\r\n.simple_sidebar_div.expanded{\r\n display: inline-flex;\r\n flex-direction: column;\r\n justify-content: space-between;\r\n width: 16.75rem;\r\n}\r\n\r\n.simple_sidebar_div.collapsed{\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n width: 5rem;\r\n}\r\n\r\n.nav{\r\n display: flex;\r\n width: 100%;\r\n flex-direction: column;\r\n gap: var(--spacing-6);\r\n}\r\n\r\n.sidebar_header.expanded{\r\n display: flex;\r\n padding: var(--spacing-none) var(--spacing-4) var(--spacing-none) var(--spacing-6);\r\n justify-content: space-between;\r\n align-items: center;\r\n margin-top: 1rem;\r\n}\r\n\r\n.sidebar_header.collapsed{\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n margin-top: 1rem;\r\n gap: 1.5rem;\r\n}\r\n\r\n.logo_and_name.expanded{\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n}\r\n\r\n.logo_and_name.collapsed{\r\n display: flex;\r\n justify-content: center;\r\n}\r\n\r\n.sidebar_logo{\r\n display: flex;\r\n align-items: center;\r\n gap: 0.69rem;\r\n}\r\n\r\n.collapse_button.collapsed{\r\n display: flex;\r\n justify-content: center;\r\n}\r\n\r\n.application_name{\r\n display: flex;\r\n padding: var(--spacing-6);\r\n}\r\n\r\n.wrapper{\r\n display: flex;\r\n padding: var(--spacing-4) var(--spacing-5) var(--spacing-5) var(--spacing-5);\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: flex-start;\r\n gap: var(--spacing-4);\r\n align-self: stretch;\r\n border-radius: var(--rounded-sm);\r\n position: relative;\r\n width: 13.75rem;\r\n height: auto;\r\n overflow: hidden;\r\n}\r\n\r\n.application_icon svg{\r\n width: 2.5rem;\r\n height: 2.5rem;\r\n}\r\n\r\n.application_icon.plain_background path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.application_icon.plain_background path[fill] {\r\n fill: var(--color-icon-information-bold, #042F59);\r\n}\r\n\r\n.application_icon.colored_background path[stroke] {\r\n stroke: var(--base-white, #FFFFFF);\r\n}\r\n\r\n.application_icon.colored_background path[fill] {\r\n fill: var(--base-white, #FFFFFF);\r\n}\r\n\r\n.application_name_pattern{\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n mix-blend-mode: multiply;\r\n}\r\n\r\n.application_name_pattern img{\r\n width: 100%;\r\n}\r\n\r\n.wrapper{\r\n width: 100%;\r\n}\r\n\r\n.wrapper.colored_background{\r\n border: 1px solid rgba(255, 255, 255, 0.10);\r\n background: rgba(0, 0, 0, 0.10);\r\n}\r\n\r\n.wrapper.plain_background{\r\n background: var(--color-background-gray-subtlest, #F6F8FA);\r\n border: 1px solid var(--color-border-subtler, #E3E8EF);\r\n}\r\n\r\n::slotted([slot=\"application_name\"].plain_background) {\r\n color: var(--color-text-information-bold, #042F59) !important;\r\n}\r\n\r\n::slotted([slot=\"application_name\"].colored_background) {\r\n color: var(--base-white, #FFFFFF) !important;\r\n}\r\n\r\n/* Simple Sidebar Category Styles */\r\n.simple_sidebar_div.plain_background{\r\n border-right: 0.7px solid var(--color-border-subtle, #CDD5DF);\r\n background: var(--color-surface, #FFFFFF);\r\n}\r\n\r\n.simple_sidebar_div.colored_background{\r\n background-image: linear-gradient(180deg, #064E94 0%, #02182E 100%);\r\n background-size: cover;\r\n}\r\n\r\n.item{\r\n display: flex;\r\n flex-direction: column;\r\n width: 100%;\r\n gap: var(--spacing-1);\r\n}\r\n\r\n/* Complex Sidebar Styles */\r\n.sidebar_and_nav{\r\n width: fit-content;\r\n transition: all 0.3s ease-in-out;\r\n}\r\n\r\n.complex_sidebar_div{\r\n display: flex;\r\n gap: 0;\r\n width: fit-content;\r\n height: 100vh;\r\n}\r\n\r\n.primary_side_menu{\r\n position: relative;\r\n width: 6rem;\r\n}\r\n\r\n.primary_side_menu.standard{\r\n padding: var(--spacing-4) var(--spacing-none) 0.5rem var(--spacing-none);\r\n}\r\n\r\n.primary_side_menu.compact{\r\n padding: var(--spacing-2) var(--spacing-none) 0.5rem var(--spacing-none);\r\n}\r\n\r\n.primary_side_menu_container{\r\n width: 100%;\r\n}\r\n\r\n.nav_div{\r\n display: flex;\r\n height: 4.5rem;\r\n padding: 0.5rem var(--spacing-5) 0.5rem var(--spacing-7);\r\n align-items: center;\r\n gap: 1.5rem;\r\n flex: 1 0 0;\r\n border-bottom: 1px solid var(--color-border-subtler, #E3E8EF);\r\n background: var(--color-surface, #FFFFFF);\r\n}\r\n\r\n.logo_and_button{\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n flex: 1 0 0;\r\n}\r\n\r\n/* Complex Sidebar Category Styles */\r\n.primary_side_menu.plain_background{\r\n border-right: 0.7px solid var(--color-border-subtle, #CDD5DF);\r\n background: var(--color-surface, #FFFFFF);\r\n}\r\n\r\n.primary_side_menu.colored_background{\r\n background-image: linear-gradient(180deg, #064E94 0%, #02182E 100%);\r\n background-size: cover;\r\n}\r\n\r\n/* Complex Sidebar State Styles */\r\n.secondary_side_menu{\r\n width: fit-content;\r\n}\r\n\r\n.secondary_side_menu.colored_background{\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n}\r\n\r\n.secondary_side_menu.plain_background{\r\n background: var(--color-surface, #FFFFFF);\r\n border-right: 0.7px solid var(--color-border-subtle, #CDD5DF);\r\n}\r\n\r\n.sside_menu{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\r\n height: 100vh;\r\n padding: var(--spacing-4) var(--spacing-none);\r\n}\r\n\r\n.information_header{\r\n display: flex;\r\nalign-items: center;\r\ngap: var(--spacing-2);\r\nalign-self: stretch;\r\n}\r\n\r\n.help_icon.plain_background path[stroke]{\r\n stroke: var(--color-text-brandDarkBlue, #212C65)\r\n}\r\n\r\n.help_icon.plain_background path[fill]{\r\n fill: var(--color-text-brandDarkBlue, #212C65)\r\n}\r\n\r\n.help_icon.colored_background path[stroke]{\r\n stroke: var(--base-white, #FFFFFF)\r\n}\r\n\r\n.help_icon.colored_background path[fill]{\r\n fill: var(--base-white, #FFFFFF)\r\n}\r\n\r\n\r\n.need_help.plain_background{\r\n color: var(--color-text-brandDarkBlue, #212C65);\r\n}\r\n\r\n.need_help.colored_background{\r\n color: var(--base-white, #FFFFFF);\r\n}\r\n\r\n.info.colored_background {\r\n color: var(--base-white, #FFFFFF);\r\n}\r\n\r\n.info.plain_background{\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.phone_no{\r\n width: 100%;\r\n word-wrap: break-word;\r\n}","import { Component, Element, h, Prop, Fragment, State, getAssetPath, Method, Event, EventEmitter } from '@stencil/core';\r\nimport { GeneralBackgroundCategories, ThemeTypes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-sidebar',\r\n styleUrl: 'gb-sidebar.css',\r\n shadow: true,\r\n})\r\nexport class GbSidebar {\r\n @Prop({ mutable: true }) state: 'expanded' | 'collapsed' = 'expanded';\r\n @Prop() category: GeneralBackgroundCategories;\r\n @Prop() navItemStyle: 'standard' | 'compact';\r\n @Prop() type: 'simple' | 'complex';\r\n @Prop() showSecondCategory: boolean = false;\r\n @Prop() iconInstance: string = '';\r\n @Prop() firstItemIcon: string = '';\r\n @Prop() secondItemIcon: string = '';\r\n @Prop() thirdItemIcon: string = '';\r\n @Prop() fourthItemIcon: string = '';\r\n @Prop() fifthItemIcon: string = '';\r\n @Prop() sixthItemIcon: string = '';\r\n @Prop() seventhItemIcon: string = '';\r\n @Prop() eighthItemIcon: string = '';\r\n @Prop() ninthItemIcon: string = '';\r\n @Prop() tenthItemIcon: string = '';\r\n @Prop() firstItemLabel: string = '';\r\n @Prop() secondItemLabel: string = '';\r\n @Prop() thirdItemLabel: string = '';\r\n @Prop() fourthItemLabel: string = '';\r\n @Prop() fifthItemLabel: string = '';\r\n @Prop() sixthItemLabel: string = '';\r\n @Prop() seventhItemLabel: string = '';\r\n @Prop() eighthItemLabel: string = '';\r\n @Prop() ninthItemLabel: string = '';\r\n @Prop() tenthItemLabel: string = '';\r\n @Prop() complexSidebarData: any = {\r\n // Recruitment: {\r\n // icon: 'assets/user-search-01.svg', // Icon class or path for Recruitment\r\n // items: [\r\n // { label: 'Overview', icon: 'assets/star.svg' },\r\n // { label: 'My Profile', icon: 'assets/star.svg' },\r\n // { label: 'Appraisal', icon: 'assets/star.svg' },\r\n // { label: 'Staff Management', icon: 'assets/star.svg' },\r\n // { label: 'Leave Management', icon: 'assets/star.svg' },\r\n // { label: 'Resignation Portal', icon: 'assets/star.svg' },\r\n // ],\r\n // },\r\n // Staff: {\r\n // icon: 'assets/user-account.svg',\r\n // items: [\r\n // { label: 'Staff Overview', icon: 'assets/star.svg' },\r\n // { label: 'Payroll Management', icon: 'assets/dashboard-square-03.svg' },\r\n // { label: 'Attendance', icon: 'assets/dashboard-square-03.svg' },\r\n // { label: 'New', icon: 'assets/dashboard-square-03.svg' },\r\n // ],\r\n // },\r\n };\r\n @Prop({ mutable: true }) activeIndex: number;\r\n @Prop({ mutable: true }) activePrimaryItem: string = 'Staff';\r\n @Prop({ mutable: true }) activeSecondaryItem: string = 'Attendance Tracking';\r\n @Prop() hasInfo: boolean = false;\r\n @Prop() email: string = '';\r\n @Prop() phoneNumber: string = '';\r\n @Prop() theme: ThemeTypes = 'system';\r\n @State() isDarkTheme: boolean = false;\r\n @Element() el: HTMLElement;\r\n @State() leadingIconSvg: string = '';\r\n @Event() simpleSidebarItemClicked: EventEmitter<number>;\r\n @Event() secondaryItemClicked: EventEmitter<number>;\r\n @Event() primaryItemClicked: EventEmitter<{ primary: number; secondary: number }>;\r\n @Event() sidebarState: EventEmitter<string>;\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 collapseSideBar() {\r\n if (this.state === 'expanded') {\r\n this.state = 'collapsed';\r\n }\r\n this.sidebarState.emit('collapsed');\r\n }\r\n\r\n expandSideBar() {\r\n if (this.state === 'collapsed') {\r\n this.state = 'expanded';\r\n }\r\n this.sidebarState.emit('expanded');\r\n }\r\n\r\n @Method()\r\n async sideBarItemClicked(index: number) {\r\n this.activeIndex = index;\r\n // console.log(index);\r\n this.simpleSidebarItemClicked.emit(index);\r\n }\r\n\r\n handlePrimaryClick(item: string, _index: number) {\r\n this.activePrimaryItem = item;\r\n this.activeSecondaryItem = this.complexSidebarData[item].items[0].label; // Reset to the first secondary item\r\n // console.log(index)\r\n }\r\n\r\n handleSecondaryClick(item: string, _index: number) {\r\n this.activeSecondaryItem = item;\r\n // console.log(index);\r\n }\r\n\r\n componentDidLoad() {\r\n const applicationName = this.el.querySelector('[slot=\"application_name\"]');\r\n\r\n if (applicationName) {\r\n applicationName.classList.add('text-lg-bold');\r\n applicationName.classList.add('application_name');\r\n applicationName.classList.add(`${this.category}`);\r\n }\r\n }\r\n\r\n changeTheme() {\r\n if (this.theme === 'system') {\r\n if (window.matchMedia('(prefers-color-scheme: dark)').matches) {\r\n this.isDarkTheme = true;\r\n } else {\r\n this.isDarkTheme = false;\r\n }\r\n } else if (this.theme === 'light') {\r\n this.isDarkTheme = false;\r\n } else if (this.theme === 'dark') {\r\n this.isDarkTheme = true;\r\n }\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.iconInstance);\r\n\r\n this.changeTheme();\r\n }\r\n\r\n render() {\r\n const patternSrc = getAssetPath(`assets/pattern_wrapper.svg`);\r\n const logoSrc = getAssetPath(`assets/globus_bank_logo.svg`);\r\n const blueLogoSrc = getAssetPath(`assets/globus_bank_logo_blue.svg`);\r\n\r\n return (\r\n <>\r\n {this.type === 'simple' && (\r\n <div class={`simple_sidebar_div ${this.state} ${this.category}`}>\r\n {this.category === 'colored_background' && (\r\n <div class=\"pattern\">\r\n <img src={patternSrc} alt=\"\" />\r\n </div>\r\n )}\r\n <div class=\"nav\">\r\n <div class={`sidebar_header ${this.state}`}>\r\n <div class={`logo_and_name ${this.state}`}>\r\n {this.state === 'expanded' && (\r\n <div class=\"sidebar_logo\">\r\n <img src={logoSrc} alt=\"\" />\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"117\" height=\"17\" viewBox=\"0 0 117 17\" fill=\"none\">\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M55.977 12.6264C56.3596 13.1025 56.8394 13.4915 57.3843 13.7674C57.9292 14.0434 58.5268 14.1998 59.137 14.2264C59.3682 14.2276 59.5989 14.2038 59.825 14.1554C60.0203 14.1134 60.2068 14.0376 60.376 13.9314C60.5266 13.8276 60.6514 13.6908 60.741 13.5314C60.8332 13.3494 60.8789 13.1473 60.874 12.9434C60.8797 12.7871 60.8427 12.6322 60.767 12.4954C60.6928 12.3641 60.5948 12.2478 60.478 12.1524C60.3548 12.0522 60.2206 11.9663 60.078 11.8964C59.9369 11.8205 59.7898 11.7567 59.638 11.7054C59.365 11.6054 59.092 11.4954 58.821 11.4054C58.55 11.3154 58.285 11.2194 58.009 11.1054C57.856 11.0544 57.668 10.9864 57.454 10.9054C57.2189 10.8192 56.9891 10.7191 56.766 10.6054C56.5267 10.4828 56.2967 10.3428 56.078 10.1864C55.8479 10.0188 55.6411 9.82143 55.463 9.59936C55.2755 9.3641 55.1254 9.10136 55.018 8.82037C54.8987 8.50077 54.841 8.16145 54.848 7.82037C54.8385 7.38435 54.9601 6.95552 55.197 6.58938C55.4368 6.22409 55.7548 5.91665 56.128 5.68935C56.5352 5.44285 56.9786 5.26199 57.442 5.15337C57.9371 5.03187 58.4452 4.9714 58.955 4.97335C59.7154 4.96345 60.4735 5.05835 61.208 5.25536C61.883 5.44235 62.5133 5.76379 63.061 6.20037L61.881 7.97738C61.675 7.77738 61.475 7.59837 61.276 7.43737C61.0823 7.28066 60.8736 7.14333 60.653 7.02737C60.4242 6.91238 60.1825 6.82509 59.933 6.76736C59.6405 6.70771 59.3425 6.67923 59.044 6.68237C58.8003 6.6793 58.5576 6.71302 58.324 6.78237C58.1425 6.83794 57.973 6.92678 57.824 7.04437C57.7018 7.14787 57.6053 7.27829 57.542 7.42538C57.4813 7.5669 57.4503 7.71939 57.451 7.87338C57.4479 8.03229 57.4929 8.18844 57.58 8.32137C57.6712 8.45192 57.7854 8.56477 57.917 8.65438C58.0598 8.75308 58.2135 8.83495 58.375 8.89837C58.549 8.96737 58.724 9.03036 58.903 9.08737C59.183 9.18737 59.467 9.28736 59.749 9.37936C60.031 9.47136 60.313 9.57035 60.592 9.66735C60.731 9.72035 60.902 9.77936 61.104 9.85336C61.3158 9.93021 61.522 10.0218 61.721 10.1274C61.945 10.2432 62.1576 10.3798 62.356 10.5354C62.571 10.6981 62.7616 10.8907 62.922 11.1074C63.0947 11.347 63.2296 11.6118 63.322 11.8924C63.4341 12.2242 63.4876 12.5731 63.48 12.9234C63.4886 13.3821 63.3593 13.8329 63.109 14.2174C62.8572 14.5968 62.5255 14.9167 62.137 15.1544C61.711 15.4162 61.2468 15.6099 60.761 15.7284C60.2447 15.8581 59.7143 15.923 59.182 15.9214C58.7286 15.9217 58.2755 15.896 57.825 15.8444C57.4131 15.7956 57.0069 15.7072 56.612 15.5804C56.2266 15.4585 55.8573 15.2906 55.512 15.0804C55.152 14.8574 54.8226 14.5884 54.532 14.2804L55.977 12.6264ZM46.023 5.15136V12.3824C46.0171 12.6297 46.0603 12.8758 46.15 13.1064C46.2233 13.2937 46.3378 13.4622 46.485 13.5994C46.6276 13.7299 46.7989 13.8251 46.985 13.8774C47.1837 13.9372 47.3905 13.9659 47.598 13.9624C48.1129 13.9605 48.6258 13.9001 49.127 13.7824C49.6297 13.6726 50.1117 13.4836 50.555 13.2224V5.14636H53.165V13.8624C53.1705 14.1064 53.1909 14.3498 53.226 14.5914C53.262 14.9064 53.326 15.2774 53.403 15.7014H50.93C50.916 15.6614 50.893 15.5894 50.866 15.4774C50.839 15.3654 50.805 15.2534 50.772 15.1304C50.739 15.0074 50.715 14.8904 50.687 14.7814C50.6662 14.7 50.6501 14.6176 50.639 14.5344C50.4019 14.7386 50.1461 14.9201 49.875 15.0764C49.5915 15.2448 49.2941 15.3887 48.986 15.5064C48.6826 15.626 48.3695 15.719 48.05 15.7844C47.7544 15.8493 47.4527 15.8828 47.15 15.8844C46.5406 15.9045 45.9328 15.8088 45.359 15.6024C44.9281 15.4446 44.5423 15.1836 44.2355 14.8422C43.9287 14.5009 43.7102 14.0897 43.599 13.6444C43.4774 13.1714 43.4179 12.6847 43.422 12.1964V5.14938L46.023 5.15136ZM34.173 14.0344C34.4914 14.1402 34.8178 14.2205 35.149 14.2744C35.5278 14.3366 35.9111 14.368 36.295 14.3684C36.6865 14.3713 37.0725 14.2764 37.418 14.0924C37.7682 13.8978 38.0679 13.6238 38.293 13.2924C38.5589 12.9056 38.7546 12.4751 38.871 12.0204C39.0127 11.4651 39.0799 10.8934 39.071 10.3204C39.0745 9.84945 39.0238 9.37971 38.92 8.92037C38.8359 8.53264 38.6762 8.1653 38.45 7.83938C38.2415 7.54414 37.9623 7.30585 37.638 7.14636C37.2658 6.97548 36.8594 6.89203 36.45 6.90237C36.2347 6.90349 36.0196 6.91785 35.806 6.94537C35.591 6.97637 35.384 7.01636 35.183 7.06536C34.9916 7.11019 34.8033 7.16699 34.619 7.23537C34.4596 7.29532 34.3062 7.37033 34.161 7.45937L34.173 14.0344ZM31.573 0.395379H34.173V5.94637C34.5815 5.64458 35.0369 5.41212 35.521 5.25835C36.0793 5.07415 36.6641 4.98329 37.252 4.98937C37.9775 4.97144 38.697 5.12493 39.352 5.43737C39.9085 5.71759 40.3919 6.12367 40.764 6.62338C41.1391 7.13643 41.4108 7.71756 41.564 8.33437C41.7346 8.99307 41.82 9.67094 41.818 10.3514C41.8392 11.1967 41.6831 12.037 41.36 12.8184C41.081 13.474 40.6682 14.0643 40.148 14.5514C39.6578 15.003 39.0812 15.3507 38.453 15.5734C37.838 15.79 37.1911 15.9022 36.539 15.9054C36.0383 15.9054 35.5797 15.9 35.163 15.8894C34.744 15.8774 34.338 15.8644 33.951 15.8464C33.564 15.8284 33.173 15.7994 32.791 15.7614C32.409 15.7234 32.007 15.6784 31.591 15.6234L31.573 0.395379ZM24.573 14.2164C24.984 14.2278 25.3873 14.103 25.72 13.8614C26.0497 13.616 26.3187 13.2982 26.506 12.9324C26.7225 12.5243 26.8769 12.0861 26.964 11.6324C27.066 11.1494 27.1166 10.657 27.115 10.1634C27.1164 9.72126 27.0718 9.28025 26.982 8.84737C26.9009 8.46194 26.7494 8.09478 26.535 7.76437C26.3324 7.45791 26.0577 7.20585 25.735 7.03036C25.3682 6.83692 24.9575 6.74183 24.543 6.75436C24.1538 6.74764 23.7699 6.845 23.431 7.03637C23.1073 7.23018 22.8334 7.49693 22.631 7.81536C22.4048 8.17634 22.2412 8.57292 22.147 8.98837C21.9311 9.90171 21.9243 10.852 22.127 11.7684C22.216 12.194 22.3705 12.6032 22.585 12.9814C22.7843 13.3379 23.0607 13.6453 23.394 13.8814C23.7431 14.1127 24.1554 14.2301 24.574 14.2174L24.573 14.2164ZM24.66 15.9734C23.8645 15.9875 23.0734 15.8518 22.328 15.5734C21.6834 15.3259 21.1025 14.937 20.628 14.4354C20.1558 13.9225 19.7994 13.3141 19.583 12.6514C19.335 11.9037 19.2134 11.12 19.223 10.3324C19.2197 9.63472 19.3305 8.94126 19.551 8.27938C19.7645 7.63603 20.1153 7.04677 20.5791 6.55242C21.0429 6.05807 21.6086 5.67044 22.237 5.41637C22.9955 5.11592 23.8064 4.97038 24.622 4.98837C25.43 4.96837 26.2335 5.11404 26.983 5.41637C27.6091 5.68005 28.1666 6.0833 28.613 6.59536C29.0478 7.1081 29.3694 7.70683 29.557 8.35238C29.7617 9.05529 29.8627 9.7843 29.857 10.5164C29.8615 11.2376 29.7414 11.9541 29.502 12.6344C29.2754 13.2745 28.9255 13.864 28.472 14.3694C28.0128 14.8682 27.4555 15.2669 26.835 15.5404C26.1487 15.8353 25.4079 15.9818 24.661 15.9704L24.66 15.9734ZM14.302 0.394372H16.902V13.1564C16.8789 13.4015 16.9368 13.6474 17.067 13.8564C17.1212 13.9252 17.191 13.9801 17.2706 14.0167C17.3503 14.0532 17.4375 14.0702 17.525 14.0664C17.7153 14.0716 17.9048 14.0415 18.084 13.9774C18.237 13.9214 18.417 13.8494 18.615 13.7774L19.055 15.0844C18.8809 15.2024 18.6984 15.3077 18.509 15.3994C18.3094 15.4997 18.1032 15.5865 17.892 15.6594C17.672 15.7336 17.4475 15.794 17.22 15.8404C16.9934 15.8855 16.763 15.9086 16.532 15.9094C16.2533 15.9095 15.9753 15.8797 15.703 15.8204C15.4428 15.7656 15.1996 15.6489 14.994 15.4804C14.7726 15.2971 14.6007 15.0612 14.494 14.7944C14.3574 14.4324 14.2942 14.047 14.308 13.6604L14.302 0.394372ZM12.602 14.6814C12.239 14.8724 11.868 15.0444 11.485 15.2064C11.0739 15.377 10.6508 15.517 10.219 15.6254C9.71274 15.7511 9.19858 15.8427 8.68001 15.8994C8.03877 15.9693 7.39406 16.0027 6.74901 15.9994C6.02384 16.0081 5.30187 15.9018 4.61001 15.6844C3.40238 15.3004 2.35048 14.5377 1.61001 13.5094C1.24144 13.0029 0.939006 12.4514 0.710011 11.8684C0.468973 11.2677 0.289379 10.6442 0.174001 10.0074C0.0576192 9.35516 -0.000605498 8.69388 4.74727e-06 8.03137C0.000633892 7.33814 0.0726773 6.64683 0.215001 5.96838C0.349412 5.31408 0.556361 4.67679 0.832006 4.06835C1.10146 3.48093 1.44454 2.9302 1.853 2.42938C2.67554 1.41797 3.78369 0.67779 5.03301 0.305352C5.72268 0.0959449 6.44028 -0.0069001 7.161 0.000359076C7.54 0.000359076 7.88701 0.012372 8.20301 0.032372C8.49632 0.0492166 8.78846 0.0826091 9.07801 0.132378C9.34144 0.177448 9.60066 0.244327 9.853 0.33236C10.107 0.419187 10.3543 0.52447 10.593 0.647362C10.8609 0.782467 11.1192 0.935843 11.366 1.10638C11.6327 1.28438 11.9263 1.49435 12.247 1.73635L10.797 3.68838C10.4912 3.41105 10.1686 3.15288 9.83101 2.91537C9.55631 2.72032 9.26083 2.55631 8.95 2.42635C8.66096 2.30636 8.35893 2.22046 8.05001 2.17037C7.70771 2.11985 7.362 2.0961 7.01601 2.09936C6.40137 2.08829 5.79444 2.23754 5.25501 2.53237C4.73856 2.82694 4.29629 3.23569 3.96201 3.72738C3.59548 4.26897 3.32706 4.87079 3.16901 5.50536C2.98332 6.22376 2.89254 6.9634 2.89901 7.70538C2.89341 8.4936 2.97049 9.28022 3.129 10.0524C3.26457 10.7479 3.51573 11.4158 3.87201 12.0284C4.19608 12.5805 4.64638 13.0479 5.18601 13.3924C5.76832 13.7417 6.43821 13.9176 7.11701 13.8994C7.33906 13.9036 7.56116 13.8939 7.782 13.8704C8.018 13.8414 8.25401 13.8234 8.49601 13.7874C8.73801 13.7514 8.972 13.7084 9.202 13.6594C9.432 13.6104 9.64401 13.5594 9.84601 13.5094V8.32836H12.595L12.602 14.6814Z\"\r\n fill=\"var(--color-text-brandDarkBlue, #212C65)\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M109.442 9.51028L113.077 5.4953H116.426L111.367 10.3453L116.755 16.3633H113.547L109.447 11.6633V16.3633H106.768V0.58728H109.447L109.442 9.51028ZM94.8709 7.3573C94.8709 7.1413 94.871 6.86529 94.852 6.52429C94.8439 6.1785 94.8071 5.83398 94.742 5.49429H97.2649C97.2894 5.55963 97.3098 5.62644 97.326 5.69431C97.345 5.77631 97.3659 5.86929 97.3919 5.96429C97.4179 6.05929 97.4369 6.16428 97.4549 6.26428C97.4729 6.36428 97.486 6.46428 97.5 6.55228C97.687 6.38781 97.8877 6.23961 98.0999 6.10928C98.6115 5.78686 99.1757 5.55704 99.7669 5.4303C100.1 5.35753 100.44 5.32132 100.781 5.3223C101.328 5.31866 101.872 5.40723 102.39 5.58429C102.869 5.74685 103.312 6.00393 103.69 6.3403C104.063 6.67744 104.36 7.08984 104.562 7.55029C104.781 8.06212 104.89 8.61452 104.881 9.1713V16.3713H102.196V9.6713C102.203 9.29813 102.158 8.9258 102.061 8.56528C101.986 8.29345 101.849 8.04279 101.661 7.83328C101.484 7.64715 101.263 7.50943 101.018 7.43329C100.734 7.34463 100.438 7.30144 100.141 7.3053C99.9337 7.30661 99.7268 7.32297 99.5219 7.35428C99.2943 7.38247 99.069 7.42726 98.8479 7.48828C98.6183 7.5484 98.392 7.6205 98.17 7.70428C97.9553 7.77835 97.7466 7.86895 97.5459 7.97528V16.3753H94.8689L94.8709 7.3573ZM89.354 10.6903C88.693 10.7039 88.0352 10.7877 87.3919 10.9403C86.9571 11.0391 86.5446 11.2185 86.1759 11.4693C85.8984 11.6587 85.6811 11.9239 85.55 12.2333C85.4322 12.5398 85.3738 12.866 85.378 13.1943C85.3692 13.4439 85.403 13.6931 85.4779 13.9313C85.5355 14.1106 85.6361 14.273 85.771 14.4043C85.9046 14.5271 86.0668 14.6145 86.243 14.6583C86.4338 14.7108 86.631 14.7364 86.8289 14.7343C87.0219 14.7343 87.219 14.7223 87.419 14.7063C87.6305 14.6839 87.8398 14.6444 88.045 14.5883C88.266 14.5295 88.4818 14.4522 88.69 14.3573C88.9221 14.2504 89.144 14.1225 89.3529 13.9753L89.354 10.6903ZM82.841 6.9743C83.4506 6.43993 84.1574 6.02806 84.9229 5.76129C85.735 5.46771 86.5924 5.31913 87.456 5.3223C88.0356 5.3199 88.6134 5.38703 89.177 5.52228C89.6953 5.64191 90.1898 5.84778 90.6399 6.13129C91.0583 6.40027 91.4075 6.76412 91.659 7.1933C91.9212 7.66192 92.0524 8.19246 92.039 8.72928V13.5793C92.0359 13.7771 92.0499 13.9749 92.081 14.1703C92.0978 14.3025 92.1446 14.429 92.2179 14.5403C92.2808 14.6292 92.369 14.6971 92.471 14.7353C92.5948 14.7743 92.7242 14.7923 92.854 14.7883C92.9578 14.7841 93.0613 14.7741 93.164 14.7583C93.322 14.7363 93.466 14.7133 93.596 14.6893L93.885 15.8443C93.72 15.9443 93.553 16.0353 93.38 16.1263C93.2023 16.2182 93.0173 16.2955 92.8269 16.3573C92.6192 16.4261 92.4066 16.4793 92.1909 16.5163C91.9393 16.5572 91.6849 16.578 91.43 16.5783C90.9747 16.5916 90.5257 16.4694 90.1399 16.2273C89.9688 16.1147 89.822 15.969 89.708 15.7988C89.594 15.6286 89.515 15.4374 89.4759 15.2363C89.2019 15.4862 88.8999 15.7037 88.576 15.8843C88.2804 16.0533 87.9684 16.192 87.6449 16.2983C87.3372 16.399 87.0209 16.4713 86.6999 16.5143C86.3981 16.5528 86.0942 16.5735 85.7899 16.5763C85.333 16.5793 84.8783 16.5135 84.4409 16.3813C84.0636 16.2663 83.7154 16.0716 83.42 15.8103C83.1354 15.5561 82.913 15.24 82.7699 14.8863C82.6093 14.4719 82.5296 14.0307 82.5349 13.5863C82.5244 13.0864 82.6134 12.5894 82.797 12.1243C82.9638 11.7188 83.2106 11.3511 83.5229 11.0433C83.8465 10.733 84.2205 10.4801 84.6289 10.2953C85.0769 10.0896 85.5465 9.93463 86.029 9.83328C86.556 9.71543 87.0906 9.63457 87.6289 9.59128C88.1916 9.54528 88.7643 9.52228 89.347 9.52228V9.13028C89.3559 8.81548 89.3046 8.50188 89.196 8.2063C89.1028 7.96802 88.9568 7.75397 88.769 7.58029C88.5772 7.41846 88.3542 7.29763 88.1139 7.22528C87.8398 7.1455 87.5554 7.10642 87.2699 7.10928C87.021 7.10712 86.7724 7.12957 86.5279 7.1763C86.2826 7.22239 86.0443 7.30002 85.8189 7.40729C85.5603 7.53109 85.3142 7.67943 85.084 7.85028C84.7873 8.07003 84.5041 8.30746 84.2359 8.56128L82.841 6.9743ZM73.27 2.62628V7.3053H74.77C75.2355 7.31174 75.7001 7.26475 76.1549 7.16528C76.5333 7.08847 76.8941 6.94197 77.219 6.73328C77.5016 6.54416 77.7328 6.28785 77.8919 5.9873C78.0558 5.65844 78.1371 5.29461 78.1289 4.92728C78.1359 4.5799 78.0765 4.23441 77.9539 3.9093C77.8334 3.61742 77.6274 3.36884 77.3629 3.19629C77.0275 2.98493 76.6537 2.84156 76.263 2.77429C75.705 2.67186 75.1382 2.62464 74.571 2.6333L73.27 2.62628ZM73.27 9.33929V14.3393H75.4419C75.9397 14.3493 76.4358 14.2783 76.9109 14.1293C77.2868 14.0087 77.6365 13.8184 77.9419 13.5683C78.1976 13.3579 78.4026 13.0927 78.542 12.7923C78.6704 12.5222 78.7387 12.2274 78.742 11.9283C78.7423 11.585 78.6743 11.2451 78.542 10.9283C78.4091 10.6098 78.2008 10.3284 77.935 10.1083C77.6222 9.85665 77.2635 9.66817 76.8789 9.55328C76.3764 9.40636 75.8544 9.3369 75.331 9.34729L73.27 9.33929ZM75.5929 0.58728C76.3348 0.57908 77.0745 0.668854 77.7929 0.854279C78.3878 1.00832 78.9499 1.26888 79.4519 1.62329C79.8961 1.9476 80.2585 2.37119 80.51 2.86029C80.7629 3.38432 80.889 3.96052 80.878 4.5423C80.88 4.93957 80.7993 5.33292 80.641 5.6973C80.4802 6.07453 80.26 6.4236 79.9889 6.73129C79.708 7.04844 79.3819 7.32238 79.021 7.54428C78.6554 7.77312 78.2572 7.9451 77.8399 8.05429C78.2862 8.13489 78.721 8.2692 79.135 8.45428C79.582 8.65138 79.993 8.92179 80.3509 9.2543C80.7289 9.59946 81.0372 10.0139 81.2589 10.4753C81.5061 10.998 81.6277 11.5712 81.6139 12.1493C81.6124 12.6915 81.4898 13.2266 81.255 13.7153C81.0007 14.2375 80.6343 14.697 80.182 15.0613C79.66 15.4835 79.0628 15.8031 78.422 16.0033C77.6359 16.2543 76.8139 16.3742 75.9889 16.3583H70.429V0.581299L75.5929 0.58728Z\"\r\n fill=\"var(--color-text-brandDarkBlue, #212C65)\"\r\n />\r\n </svg>\r\n </div>\r\n )}\r\n {this.state === 'collapsed' && <img src={logoSrc} alt=\"\" />}\r\n </div>\r\n <div class={`collapse_button ${this.state}`}>\r\n <gb-collapse-button\r\n icon=\"assets/collapse_arrow.svg\"\r\n color={this.category === 'plain_background' ? 'gray' : 'white'}\r\n action={this.state === 'collapsed' ? 'expand' : 'collapse'}\r\n onClick={() => (this.state === 'collapsed' ? this.expandSideBar() : this.collapseSideBar())}\r\n ></gb-collapse-button>\r\n </div>\r\n </div>\r\n <div class=\"navigation\">\r\n <div class=\"item\">\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 0 ? 'active' : 'default'}\r\n icon={this.firstItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(0)}\r\n label={this.firstItemLabel}\r\n ></gb-simple-side-bar-item>\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 1 ? 'active' : 'default'}\r\n icon={this.secondItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(1)}\r\n label={this.secondItemLabel}\r\n ></gb-simple-side-bar-item>\r\n {this.thirdItemLabel && (\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 2 ? 'active' : 'default'}\r\n icon={this.thirdItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(2)}\r\n label={this.thirdItemLabel}\r\n ></gb-simple-side-bar-item>\r\n )}\r\n {this.fourthItemLabel && (\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 3 ? 'active' : 'default'}\r\n icon={this.fourthItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(3)}\r\n label={this.fourthItemLabel}\r\n ></gb-simple-side-bar-item>\r\n )}\r\n {this.fifthItemLabel && (\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 4 ? 'active' : 'default'}\r\n icon={this.fifthItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(4)}\r\n label={this.fifthItemLabel}\r\n ></gb-simple-side-bar-item>\r\n )}\r\n </div>\r\n </div>\r\n {this.showSecondCategory && (\r\n <div class=\"navigation\">\r\n <div class=\"item\">\r\n {this.sixthItemLabel && (\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 5 ? 'active' : 'default'}\r\n icon={this.sixthItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(5)}\r\n label={this.sixthItemLabel}\r\n ></gb-simple-side-bar-item>\r\n )}\r\n {this.seventhItemLabel && (\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 6 ? 'active' : 'default'}\r\n icon={this.seventhItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(6)}\r\n label={this.seventhItemLabel}\r\n ></gb-simple-side-bar-item>\r\n )}\r\n {this.eighthItemLabel && (\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 7 ? 'active' : 'default'}\r\n icon={this.eighthItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(7)}\r\n label={this.eighthItemLabel}\r\n ></gb-simple-side-bar-item>\r\n )}\r\n {this.ninthItemLabel && (\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 8 ? 'active' : 'default'}\r\n icon={this.ninthItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(8)}\r\n label={this.ninthItemLabel}\r\n ></gb-simple-side-bar-item>\r\n )}\r\n {this.tenthItemLabel && (\r\n <gb-simple-side-bar-item\r\n state={this.activeIndex === 9 ? 'active' : 'default'}\r\n icon={this.tenthItemIcon}\r\n category={this.category}\r\n type={this.state === 'collapsed' ? 'icon_only' : 'full_with_label'}\r\n onClick={() => this.sideBarItemClicked(9)}\r\n label={this.tenthItemLabel}\r\n ></gb-simple-side-bar-item>\r\n )}\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n {this.state === 'expanded' && (\r\n <div class=\"application_name\">\r\n <div class={`wrapper ${this.category}`}>\r\n {this.category === 'plain_background' && (\r\n <div class=\"application_name_pattern\">\r\n <img src={patternSrc} alt=\"\" />\r\n </div>\r\n )}\r\n {this.hasInfo ? (\r\n <>\r\n <div class=\"information_header\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" class={`help_icon ${this.category}`}>\r\n <path\r\n opacity=\"0.4\"\r\n d=\"M22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12Z\"\r\n fill=\"var(--color-text-brandDarkBlue, #212C65)\"\r\n />\r\n <path\r\n d=\"M11.2422 17C11.2422 17.5523 11.6899 18 12.2422 18C12.7945 18 13.2422 17.5523 13.2422 17H11.2422ZM11.2422 10C10.6899 10 10.2422 10.4477 10.2422 11C10.2422 11.5523 10.6899 12 11.2422 12V10ZM12.0957 11.1464L12.8028 10.4393L12.0957 11.1464ZM11.992 7C11.4397 7 10.992 7.44772 10.992 8C10.992 8.55228 11.4397 9 11.992 9V7ZM12.001 9C12.5533 9 13.001 8.55228 13.001 8C13.001 7.44772 12.5533 7 12.001 7V9ZM23 12C23 5.92487 18.0751 1 12 1V3C16.9706 3 21 7.02944 21 12H23ZM12 1C5.92487 1 1 5.92487 1 12H3C3 7.02944 7.02944 3 12 3V1ZM1 12C1 18.0751 5.92487 23 12 23V21C7.02944 21 3 16.9706 3 12H1ZM12 23C18.0751 23 23 18.0751 23 12H21C21 16.9706 16.9706 21 12 21V23ZM11.2422 12V17H13.2422V12H11.2422ZM11.2422 12C11.3638 12 11.4531 12.0001 11.5286 12.002C11.6046 12.0039 11.6417 12.0072 11.6576 12.0094C11.6729 12.0114 11.6408 12.009 11.5864 11.9866C11.524 11.9609 11.4526 11.9176 11.3886 11.8536L12.8028 10.4393C12.5129 10.1493 12.1711 10.0604 11.9241 10.0272C11.7058 9.99788 11.4496 10 11.2422 10V12ZM13.2422 12C13.2422 11.7926 13.2443 11.5364 13.215 11.3181C13.1818 11.0711 13.0928 10.7293 12.8028 10.4393L11.3886 11.8536C11.3246 11.7896 11.2813 11.7181 11.2556 11.6558C11.2332 11.6014 11.2307 11.5693 11.2328 11.5846C11.2349 11.6005 11.2383 11.6376 11.2402 11.7136C11.2421 11.789 11.2422 11.8784 11.2422 12H13.2422ZM11.992 9H12.001V7H11.992V9Z\"\r\n fill=\"var(--color-text-brandDarkBlue, #212C65)\"\r\n />\r\n </svg>\r\n <p class={`need_help ${this.category} text-lg-bold`}>Need help?</p>\r\n </div>\r\n {/* <p class={`info ${this.category} text-sm-medium`}>Info@globusbank.com</p> */}\r\n {/* <p class={`info ${this.category} text-sm-medium`}>(+234) 123 4324 122</p> */}\r\n <p class={`info phone_no ${this.category} text-sm-medium`}>{this.email}</p>\r\n {this.phoneNumber && <p class={`info ${this.category} text-sm-medium`}>{this.phoneNumber}</p>}\r\n </>\r\n ) : (\r\n <>\r\n <div class={`application_icon ${this.category}`} innerHTML={this.leadingIconSvg}></div>\r\n <slot name=\"application_name\"></slot>\r\n </>\r\n )}\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n {this.type === 'complex' && (\r\n <div class={`sidebar_and_nav ${this.state}`}>\r\n <div class=\"nav_div\">\r\n <div class=\"logo_and_button\">\r\n {this.state === 'expanded' && <img src={blueLogoSrc} />}\r\n {this.state === 'collapsed' && <img src={logoSrc} alt=\"\" />}\r\n <gb-collapse-button\r\n color=\"gray\"\r\n action={this.state === 'collapsed' ? 'expand' : 'collapse'}\r\n onClick={() => (this.state === 'collapsed' ? this.expandSideBar() : this.collapseSideBar())}\r\n ></gb-collapse-button>\r\n </div>\r\n </div>\r\n <div class=\"complex_sidebar_div\">\r\n <div class={`primary_side_menu ${this.category} ${this.navItemStyle}`}>\r\n {this.category === 'colored_background' && (\r\n <div class=\"pattern\">\r\n <img src={patternSrc} alt=\"\" />\r\n </div>\r\n )}\r\n <div class=\"primary_side_menu_container\">\r\n {Object.keys(this.complexSidebarData).map((primaryItem, index) => (\r\n <gb-complex-primary-side-bar-item\r\n key={`${index}`} // Unique key\r\n label={primaryItem}\r\n category={this.category}\r\n item-style={this.navItemStyle}\r\n icon={this.complexSidebarData[primaryItem].icon}\r\n state={this.activePrimaryItem === primaryItem ? 'active' : 'default'}\r\n onClick={() => this.handlePrimaryClick(primaryItem, index)}\r\n ></gb-complex-primary-side-bar-item>\r\n ))}\r\n </div>\r\n </div>\r\n <div class={`secondary_side_menu ${this.category} ${this.state}`}>\r\n <div class=\"sside_menu\">\r\n {this.complexSidebarData[this.activePrimaryItem].items.map((secondaryItem, index) => (\r\n <gb-complex-secondary-side-bar-item\r\n key={`${this.activePrimaryItem}-${index}`} // Unique key\r\n type={this.state === 'expanded' ? 'full_with_label' : 'icon_only'}\r\n label={secondaryItem.label}\r\n category={this.category}\r\n icon={secondaryItem.icon}\r\n state={this.activeSecondaryItem === secondaryItem.label ? 'active' : 'default'}\r\n onClick={() => this.handleSecondaryClick(secondaryItem.label, index)}\r\n ></gb-complex-secondary-side-bar-item>\r\n ))}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n:host {\r\n position: relative;\r\n}\r\n\r\n.side_bar_item_container {\r\n padding: 0 var(--spacing-4);\r\n}\r\n\r\n.nav_item_base.icon_only {\r\n width: fit-content;\r\n}\r\n\r\n.nav_item_base {\r\n display: flex;\r\n padding: var(--spacing-2) var(--spacing-3);\r\n justify-content: space-between;\r\n align-items: center;\r\n gap: 0.5rem;\r\n align-self: stretch;\r\n border-radius: var(--rounded-sm);\r\n cursor: pointer;\r\n position: relative;\r\n flex-grow: 1;\r\n}\r\n\r\n.content {\r\n display: flex;\r\n align-items: center;\r\n gap: 0.75rem;\r\n flex-grow: 1;\r\n max-width: 100%;\r\n}\r\n\r\n.bar {\r\n position: absolute;\r\n left: 0rem;\r\n width: 0.25rem;\r\n height: 1.25rem;\r\n}\r\n\r\n.bar.plain_background {\r\n border-radius: var(--rounded-full);\r\n background: var(--color-border-brandRed, #E21B2E);\r\n}\r\n\r\n.bar.colored_background {\r\n border-radius: var(--rounded-full);\r\n background: var(--base-white, #FFFFFF);\r\n}\r\n\r\n.icon {\r\n display: flex;\r\n align-items: center;\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n}\r\n\r\n.label_text {\r\n max-width: 100%;\r\n overflow-x: hidden;\r\n overflow-y: none;\r\n white-space: nowrap;\r\n text-overflow: ellipsis;\r\n scrollbar-width: none;\r\n}\r\n\r\n.label_text::-webkit-scrollbar {\r\n display: none;\r\n}\r\n\r\n/* State and Category Styles */\r\n.nav_item_base.plain_background.default,\r\n.nav_item_base.colored_background.default {\r\n background: transparent;\r\n}\r\n\r\n.nav_item_base.plain_background.active {\r\n background: var(--color-background-information-subtler, #c8e0f9);\r\n}\r\n\r\n.nav_item_base.default.plain_background:hover {\r\n background: var(--color-background-gray-subtler, #eef2f6);\r\n}\r\n\r\n.nav_item_base.colored_background.active {\r\n background: var(--blue-800, #042f59);\r\n}\r\n\r\n.nav_item_base.default.colored_background:hover {\r\n background: rgba(33, 44, 101, 0.4);\r\n}\r\n\r\n.label_text.plain_background.default {\r\n color: var(--color-text, #4b5565);\r\n}\r\n\r\n.label_text.plain_background.active {\r\n color: var(--color-text-information-bold, #042f59);\r\n}\r\n\r\n.label_text.colored_background {\r\n color: var(--base-white, #ffffff);\r\n}\r\n\r\n/* Icon Color Styles */\r\n.icon.plain_background.default path[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background.default path[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background.active path[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.active path[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.default path#Icon[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background.default path#Icon[fill] {\r\n fill: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background.active path#Icon[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.active path#Icon[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.active path#Accent[stroke] {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.active path#Accent[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.plain_background.default circle[stroke] {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.icon.plain_background.active circle[fill] {\r\n fill: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.icon.colored_background.default path[stroke] {\r\n stroke: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background.default path[fill] {\r\n fill: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background.active path[stroke] {\r\n stroke: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background.active path[fill] {\r\n fill: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background path#Icon[stroke] {\r\n stroke: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background path#Icon[fill] {\r\n fill: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background.active path#Accent[stroke] {\r\n stroke: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background.active path#Accent[fill] {\r\n fill: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background circle[stroke] {\r\n stroke: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background circle[fill] {\r\n fill: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background.active circle[stroke] {\r\n stroke: var(--base-white, #ffffff);\r\n}\r\n\r\n.icon.colored_background.active circle[fill] {\r\n fill: var(--base-white, #ffffff);\r\n}\r\n\r\n/* .icon.plain_background.default path[fill],\r\n.icon.colored_background.default path[fill],\r\n.icon.plain_background.default circle[fill],\r\n.icon.colored_background.default circle[fill] {\r\n fill: transparent;\r\n} */\r\n\r\n.icon.plain_background.default path.has_opacity,\r\n.icon.plain_background.default g.has_opacity,\r\n.icon.plain_background.default circle.has_opacity,\r\n.icon.colored_background.default path.has_opacity,\r\n.icon.colored_background.default g.has_opacity,\r\n.icon.colored_background.default circle.has_opacity {\r\n opacity: 0;\r\n}\r\n\r\n.icon.plain_background.active path.has_opacity,\r\n.icon.plain_background.active g.has_opacity,\r\n.icon.plain_background.active circle.has_opacity,\r\n.icon.colored_background.active path.has_opacity,\r\n.icon.colored_background.active g.has_opacity,\r\n.icon.colored_background.active circle.has_opacity {\r\n opacity: 0.5;\r\n}\r\n\r\n/* .icon.plain_background.default path[fill].has_opacity,\r\n.icon.plain_background.default g.has_opacity,\r\n.icon.colored_background.default path[fill].has_opacity,\r\n.icon.colored_background.default g.has_opacity{\r\n fill: transparent;\r\n} */\r\n\r\n/* Arrow Color Styles */\r\n.arrow.default.plain_background path {\r\n stroke: var(--color-icon, #4b5565);\r\n}\r\n\r\n.arrow.active.plain_background path {\r\n stroke: var(--color-icon-information-bold, #042f59);\r\n}\r\n\r\n.arrow.default.colored_background path {\r\n stroke: var(--color-icon-inverse, #ffffff);\r\n}\r\n\r\n.arrow.active.colored_background path {\r\n stroke: var(--color-icon-inverse, #ffffff);\r\n}\r\n\r\n.tooltip {\r\n position: absolute;\r\n top: 0.2rem;\r\n left: 4.3rem;\r\n}\r\n","import { Component, h, Prop, Fragment, getAssetPath, State, Event, EventEmitter, Element, Watch } from \"@stencil/core\";\r\nimport { GeneralBackgroundCategories } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-simple-side-bar-item',\r\n styleUrl: 'gb-simple-side-bar-item.css',\r\n shadow: true,\r\n})\r\nexport class GbSimpleSideBarItem {\r\n @Prop() state: 'default' | 'active';\r\n @Prop() type: 'full_with_label' | 'icon_only';\r\n @Prop() label: string = '';\r\n @Prop() icon: string = '';\r\n @Prop() category: GeneralBackgroundCategories;\r\n @Prop() showArrow: boolean = false;\r\n @Prop() showBadge: boolean = false;\r\n @Prop({ mutable: true }) showTooltip: boolean = false;\r\n @State() leadingIconSvg: string = '';\r\n @State() internalIcon: string = '';\r\n @Event() sideBarItemClicked: EventEmitter<void>;\r\n @Element() el: HTMLElement;\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\r\n const parser = new DOMParser();\r\n const svgDoc = parser.parseFromString(svg, 'image/svg+xml');\r\n const svgElement = svgDoc.documentElement;\r\n\r\n // Add `has-opacity` class to all elements that have an opacity attribute\r\n const elementsWithOpacity = svgElement.querySelectorAll('[opacity]');\r\n elementsWithOpacity.forEach(el => {\r\n el.classList.add('has_opacity');\r\n });\r\n\r\n const gWithOpacity = svgElement.querySelectorAll('g[opacity]');\r\n\r\n gWithOpacity.forEach(g => {\r\n g.classList.add('has_opacity');\r\n });\r\n\r\n // Serialize and store\r\n const modifiedSvg = svgElement.outerHTML;\r\n // console.log(modifiedSvg)\r\n this.leadingIconSvg = modifiedSvg;\r\n }\r\n\r\n @Watch('icon')\r\n updateSidebarIcon(newValue: string, _oldValue: string) {\r\n this.internalIcon = newValue;\r\n }\r\n\r\n componentWillLoad() {\r\n this.loadIcon(this.icon);\r\n\r\n this.internalIcon = this.icon;\r\n }\r\n\r\n onSideBarItemClicked() {\r\n this.sideBarItemClicked.emit();\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`side_bar_item_container`} onMouseEnter={() => (this.showTooltip = true)} onMouseLeave={() => (this.showTooltip = false)}>\r\n <div class={`nav_item_base ${this.state} ${this.type} ${this.category}`}>\r\n {this.state === 'active' && <div class={`bar ${this.category}`}></div>}\r\n <div class=\"content\">\r\n {this.icon && <div class={`icon ${this.state} ${this.category}`} innerHTML={this.leadingIconSvg}></div>}\r\n {this.type === 'full_with_label' && (\r\n <p class={`label_text ${this.category} ${this.state} ${this.state === 'active' ? 'text-md-semi-bold' : 'text-md-medium'}`}>{this.label}</p>\r\n )}\r\n </div>\r\n {this.type === 'full_with_label' && (\r\n <>\r\n {this.showBadge && (\r\n <gb-badge size=\"sm\" type=\"pill_outline\" color={this.state === 'active' ? 'information' : 'gray'}>\r\n <p>10</p>\r\n </gb-badge>\r\n )}\r\n {this.showArrow && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" class={`arrow ${this.state} ${this.category}`}>\r\n <path\r\n d=\"M6.00003 4C6.00003 4 9.99999 6.94596 10 8.00003C10 9.05411 6 12 6 12\"\r\n stroke=\"#212C65\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n )}\r\n </>\r\n )}\r\n </div>\r\n {this.type === 'icon_only' && this.showTooltip && (\r\n <gb-tooltip show-arrow={true} arrow=\"left\" class=\"tooltip\">\r\n <p slot=\"label\">{this.label}</p>\r\n </gb-tooltip>\r\n )}\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.online_icon{\r\n border: 1.5px solid var(--color-boarder-inverse, #FFFFFF);\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\n/* Online Indicator States */\r\n.online_icon.offline{\r\n background-color: var(--color-background-gray, #CDD5DF);\r\n}\r\n\r\n.online_icon.online{\r\n background-color: var(--color-icon-success, #079455);\r\n}\r\n\r\n/* Online Indicator Sizes */\r\n.online_icon.xxs{\r\n width: 0.25rem;\r\n height: 0.25rem;\r\n}\r\n\r\n.online_icon.xs{\r\n width: 0.375rem;\r\n height: 0.375rem;\r\n}\r\n\r\n.online_icon.sm{\r\n width: var(--spacing-2);\r\n height: var(--spacing-2);\r\n}\r\n\r\n.online_icon.md{\r\n width: 0.625rem;\r\n height: 0.625rem;\r\n}\r\n\r\n.online_icon.lg{\r\n width: var(--spacing-3);\r\n height: var(--spacing-3);\r\n}\r\n\r\n.online_icon.xl{\r\n width: 0.875rem;\r\n height: 0.875rem;\r\n}\r\n\r\n.online_icon.xl2{\r\n width: var(--spacing-4);\r\n height: var(--spacing-4);\r\n}\r\n\r\n/* Verified Tick Sizes */\r\n.verified.xxs{\r\n width: 0.375rem;\r\n height: 0.375rem;\r\n}\r\n\r\n.verified.xs{\r\n width: 0.625rem;\r\n height: 0.625rem;\r\n}\r\n\r\n.verified.sm{\r\n width: var(--spacing-3);\r\n height: var(--spacing-3);\r\n}\r\n\r\n.verified.md{\r\n width: 0.875rem;\r\n height: 0.875rem;\r\n}\r\n\r\n.verified.lg{\r\n width: var(--spacing-4);\r\n height: var(--spacing-4);\r\n}\r\n\r\n.verified.xl{\r\n width: 1.125rem;\r\n height: 1.125rem;\r\n}\r\n\r\n.verified.xl2{\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n}\r\n\r\n.verified.xl3{\r\n width: var(--spacing-6);\r\n height: var(--spacing-6);\r\n}\r\n\r\n.verified.xl4{\r\n width: var(--spacing-7);\r\n height: var(--spacing-7);\r\n}\r\n\r\n.verified.profile_sm{\r\n width: var(--spacing-5);\r\n height: var(--spacing-5);\r\n position: absolute;\r\n bottom: 0.15rem;\r\n right: 0.01rem;\r\n}\r\n\r\n.verified.profile_md{\r\n width: var(--spacing-6);\r\n height: var(--spacing-6);\r\n position: absolute;\r\n bottom: 0.25rem;\r\n right: 0.2rem;\r\n}\r\n\r\n.verified.profile_lg{\r\n width: var(--spacing-7);\r\n height: var(--spacing-7);\r\n position: absolute;\r\n bottom: 0.5rem;\r\n right: 0.2rem;\r\n}\r\n\r\n/* Company Icon Sizes */\r\n.company.xs{\r\n width: 0.25rem;\r\n height: 0.25rem;\r\n}\r\n\r\n.company.xs{\r\n width: 0.625rem;\r\n height: 0.625rem;\r\n}\r\n\r\n.company.sm{\r\n width: 0.75rem;\r\n height: var(--spacing-3);\r\n}\r\n\r\n.company.md{\r\n width: 0.875rem;\r\n height: 0.875rem;\r\n}\r\n\r\n.company.lg{\r\n width: 1rem;\r\n height: var(--spacing-4);\r\n}\r\n\r\n.company.xl{\r\n width: 1.125rem;\r\n height: 1.125rem;\r\n}\r\n\r\n.company.xl2{\r\n width: 1.25rem;\r\n height: var(--spacing-5);\r\n}","import { Component, h, Prop } from \"@stencil/core\";\r\nimport { GeneralSizes, OnlineIndicatorStates } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-status-indicator',\r\n styleUrl: 'gb-status-indicator.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbStatusIndicator {\r\n @Prop() statusIcon: string = '';\r\n @Prop() size: GeneralSizes;\r\n @Prop() state: OnlineIndicatorStates = OnlineIndicatorStates.Offline;\r\n @Prop() indicatorStateClass: string = this.state;\r\n\r\n render() {\r\n return [\r\n <div>\r\n {this.statusIcon === 'online_indicator' && <div class={`online_icon ${this.size} ${this.indicatorStateClass}`}></div>}\r\n {this.statusIcon === 'verified' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" class={`verified ${this.size}`}>\r\n <g clip-path=\"url(#clip0_0_21453)\">\r\n <path\r\n d=\"M24.7109 5.66715C25.0148 6.40217 25.5982 6.98642 26.3328 7.29145L28.9086 8.35837C29.6436 8.66285 30.2277 9.24688 30.5321 9.98196C30.8366 10.717 30.8366 11.543 30.5321 12.2781L29.466 14.852C29.1614 15.5874 29.1609 16.4142 29.467 17.1492L30.5313 19.7224C30.6822 20.0865 30.7599 20.4767 30.76 20.8708C30.7601 21.265 30.6825 21.6553 30.5316 22.0194C30.3808 22.3835 30.1597 22.7143 29.881 22.993C29.6022 23.2716 29.2713 23.4926 28.9072 23.6433L26.3332 24.7095C25.5982 25.0134 25.0139 25.5968 24.7089 26.3314L23.642 28.9071C23.3375 29.6422 22.7535 30.2262 22.0184 30.5307C21.2833 30.8352 20.4574 30.8352 19.7223 30.5307L17.1484 29.4646C16.4133 29.1608 15.5876 29.1614 14.853 29.4663L12.2772 30.5317C11.5425 30.8355 10.7173 30.8352 9.98284 30.531C9.24835 30.2267 8.66466 29.6434 8.35997 28.9091L7.29273 26.3326C6.98881 25.5975 6.40543 25.0133 5.67087 24.7083L3.09509 23.6413C2.36033 23.337 1.77648 22.7533 1.47188 22.0187C1.16729 21.284 1.16688 20.4585 1.47073 19.7235L2.53689 17.1496C2.84062 16.4145 2.84 15.5888 2.53517 14.8542L1.47054 12.2766C1.3196 11.9125 1.24188 11.5222 1.24181 11.1281C1.24175 10.734 1.31935 10.3437 1.47017 9.97956C1.621 9.61544 1.8421 9.2846 2.12083 9.00595C2.39957 8.72731 2.73047 8.50632 3.09465 8.35561L5.66858 7.28945C6.40297 6.98579 6.98687 6.40316 7.29212 5.66944L8.35904 3.09366C8.66352 2.35857 9.24754 1.77455 9.98263 1.47007C10.7177 1.16559 11.5436 1.16559 12.2787 1.47007L14.8527 2.53623C15.5878 2.83996 16.4134 2.83934 17.148 2.5345L19.7249 1.47172C20.4599 1.16741 21.2856 1.16748 22.0206 1.4719C22.7555 1.77632 23.3395 2.36017 23.644 3.09507L24.7112 5.67161L24.7109 5.66715Z\"\r\n fill=\"#0086C9\"\r\n />\r\n <path d=\"M10 18.1818C10 18.1818 11.2857 18.1818 13 22C13 22 17.7647 12 22 10\" stroke=\"white\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_0_21453\">\r\n <rect width=\"32\" height=\"32\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n )}\r\n {this.statusIcon === 'company' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" class={`company ${this.size}`}>\r\n <path\r\n d=\"M18.8322 3.70039C16.9123 2.11995 14.5039 1.25399 12.0172 1.25001C10.6041 1.24776 9.20439 1.52413 7.89818 2.06333C6.59198 2.60252 5.4049 3.39397 4.40485 4.39237C2.64504 6.1493 1.54876 8.462 1.30275 10.9365C1.05674 13.411 1.67622 15.8943 3.05566 17.9633C4.43511 20.0323 6.48919 21.5591 8.86802 22.2836C11.2469 23.0081 13.8033 22.8855 16.1019 21.9367C18.4004 20.9878 20.299 19.2715 21.474 17.0799C22.6491 14.8884 23.0281 12.3572 22.5464 9.91759C22.0647 7.47798 20.7521 5.28082 18.8322 3.70039Z\"\r\n fill=\"#FF0033\"\r\n stroke=\"white\"\r\n stroke-width=\"1.5\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M12.8942 13.7488V11.865L15.2835 11.8807C15.5231 11.8822 15.7598 11.9336 15.9785 12.0314C16.1973 12.1293 16.3933 12.2715 16.5541 12.449C16.715 12.6266 16.8373 12.8357 16.9131 13.063C16.989 13.2903 17.0168 13.5308 16.9948 13.7694C16.9948 16.4275 12.901 16.9969 12.8973 13.7488M12.8973 8.75316C17.3054 6.44066 17.6942 11.5213 15.0323 11.2788H12.886L12.8973 8.75316ZM16.7385 11.5113C19.8985 10.3013 17.2573 5.5894 12.0854 8.5044C11.5544 8.07132 10.9218 7.78073 10.2473 7.66004C8.96979 7.40066 7.25604 7.62628 6.29479 8.52378L6.75917 8.97941C7.2569 8.55053 7.86627 8.27194 8.51626 8.17611C9.16625 8.08028 9.83009 8.17117 10.4304 8.43816C10.6321 8.53335 10.8098 8.67262 10.9505 8.8457C11.0911 9.01879 11.191 9.22127 11.2429 9.43817L11.266 13.7669C11.0785 16.7738 7.20354 16.5413 7.20354 13.7669V11.8682H10.2492V11.295H5.59729V13.1644C5.60917 16.7175 9.93104 17.315 12.0717 15.5863C12.9471 16.2353 14.0184 16.5649 15.1073 16.52C18.9442 16.4938 19.7323 12.3563 16.7273 11.5144L16.7385 11.5113Z\"\r\n fill=\"white\"\r\n />\r\n </svg>\r\n )}\r\n </div>,\r\n ];\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n:host{\r\n display: flex;\r\n}\r\n\r\n.tab_button_div{\r\n display: flex;\r\n /* align-self: stretch; */\r\n cursor: pointer;\r\n width: 100%;\r\n}\r\n\r\n.tab_button_div.horizontal{\r\n justify-content: center;\r\n align-items: center;\r\n}\r\n\r\n.tab_button_div.vertical{\r\n justify-content: flex-start;\r\n align-items: center;\r\n}\r\n\r\n.tab_text{\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.tab_button_div.button_primary,\r\n.tab_button_div.button_gray,\r\n.tab_button_div.button_white{\r\n display: inline-flex;\r\n border-radius: var(--rounded-xs);\r\n}\r\n\r\n.rounded_button_white{\r\n display: inline-flex;\r\n align-items: center;\r\n border-radius: var(--rounded-full);\r\n}\r\n\r\n.underline,\r\n.underline_filled,\r\n.line{\r\n display: inline-flex;\r\n border-radius: var(--rounded-none);\r\n}\r\n\r\n/* Spacing Styles */\r\n.button_primary,\r\n.button_gray,\r\n.button_white,\r\n.rounded_button_white,\r\n.underline_filled,\r\n.line{\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.underline{\r\n gap: 0.5rem;\r\n}\r\n\r\n/* Tab Type Styles */\r\n.tab_button_div.button_primary,\r\n.tab_button_div.button_gray,\r\n.tab_button_div.button_white,\r\n.tab_button_div.rounded_button_white,\r\n.tab_button_div.underline_filled,\r\n.tab_button_div.line{\r\n background: transparent;\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.tab_button_div.button_white.current{\r\n box-shadow: var(--shadow-md);\r\n}\r\n\r\n/* Tab State Styles */\r\n.tab_button_div.button_primary:hover{\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.tab_button_div.button_primary:active{\r\n background: transparent;\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.tab_button_div.button_gray:hover,\r\n.tab_button_div.button_white:hover,\r\n.tab_button_div.rounded_button_white:hover{\r\n background: var(--color-background-gray-subtle, #E3E8EF);\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.tab_button_div.button_gray:active,\r\n.tab_button_div.button_white:active,\r\n.tab_button_div.rounded_button_white:active{\r\n background: transparent;\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.tab_button_div.underline:hover,\r\n.tab_button_div.underline_filled:hover{\r\n border-bottom: 1px solid var(--color-border-subtle, #CDD5DF);\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.tab_button_div.underline:active,\r\n.tab_button_div.underline_filled:active{\r\n background: transparent;\r\n border: none;\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.tab_button_div.line:hover{\r\n border-radius: var(--rounded-xs);\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n}\r\n\r\n.tab_button_div.line:active{\r\n border-radius: var(--rounded-none);\r\n background: transparent;\r\n}\r\n\r\n.tab_button_div.button_primary.current:hover{\r\n background: var(--color-background-information-subtler, #C8E0F9);\r\n color: var(--color-text-information, #064E94);\r\n}\r\n\r\n.tab_button_div.button_primary.current:active{\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n color: var(--color-text-selected, #075DB2);\r\n}\r\n\r\n.tab_button_div.button_gray.current:hover,\r\n.tab_button_div.button_white.current:hover,\r\n.tab_button_div.rounded_button_white.current:hover{\r\n background: var(--color-background-gray-subtler, #EEF2F6);\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.tab_button_div.button_gray.current:active{\r\n background: var(--color-background-gray-subtlest, #F6F8FA);\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.tab_button_div.button_white.current:active,\r\n.tab_button_div.rounded_button_white.current:active{\r\n background: var(--color-background-card, #FFFFFF);\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.tab_button_div.underline.current:hover{\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n color: var(--color-text-information, #064E94);\r\n border-color: var(--color-border-information, #064E94);\r\n}\r\n\r\n.tab_button_div.underline.current:active{\r\n background: transparent;\r\n color: var(--color-text-selected, #075DB2);\r\n border-color: var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.tab_button_div.underline_filled.current:hover{\r\n background: var(--color-background-information-subtler, #C8E0F9);\r\n color: var(--color-text-information, #064E94);\r\n border-color: var(--color-border-information, #064E94);\r\n}\r\n\r\n.tab_button_div.underline_filled.current:active{\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n color: var(--color-text-selected, #075DB2);\r\n border-color: var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.tab_button_div.line.current:hover{\r\n border-radius: var(--rounded-xs);\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n color: var(--color-text-information, #064E94);\r\n border-color: var(--color-border-information, #064E94);\r\n}\r\n\r\n.tab_button_div.line.current:active{\r\n border-radius: var(--rounded-none);\r\n background: transparent;\r\n color: var(--color-text-selected, #075DB2);\r\n border-left: 2px solid var(--color-border-selected, #075DB2);\r\n}\r\n\r\n/* Tab Current Styles */\r\n.tab_button_div.button_primary.current{\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n color: var(--color-text-selected, #075DB2);\r\n}\r\n\r\n.tab_button_div.button_gray.current{\r\n background: var(--color-background-gray-subtlest, #F6F8FA);\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.tab_button_div.button_white.current,\r\n.tab_button_div.rounded_button_white.current{\r\n background: var(--color-background-card, #FFFFFF);\r\n color: var(--color-text-bold, #202939);\r\n box-shadow: var(--shadow-md);\r\n}\r\n\r\n.tab_button_div.underline.current{\r\n background: transparent;\r\n color: var(--color-text-selected, #075DB2);\r\n border-bottom: 2px solid var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.tab_button_div.underline_filled.current{\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n color: var(--color-text-selected, #075DB2);\r\n border-bottom: 2px solid var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.tab_button_div.line.current{\r\n background: transparent;\r\n color: var(--color-text-selected, #075DB2);\r\n border-left: 2px solid var(--color-border-selected, #075DB2);\r\n}\r\n\r\n/* Tab Size Styles */\r\n.button_primary.sm,\r\n.button_gray.sm,\r\n.button_white.sm,\r\n.rounded_button_white.sm,\r\n.underline.sm{\r\n height: 2.375rem;\r\n padding: var(--spacing-none) var(--spacing-4);\r\n}\r\n\r\n.underline_filled.sm,\r\n.line.sm{\r\n height: 2.375rem;\r\n padding: var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.button_primary.md,\r\n.button_gray.md,\r\n.button_white.md,\r\n.rounded_button_white.md,\r\n.underline.md,\r\n.underline_filled.md,\r\n.line.md{\r\n height: 2.75rem;\r\n padding: var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.button_primary.full_width.sm,\r\n.button_gray.full_width.sm,\r\n.button_white.full_width.sm,\r\n.rounded_button_white.full_width.sm{\r\n width: 100%;\r\n height: 2.375rem;\r\n padding: var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.underline.full_width.sm,\r\n.underline_filled.full_width.sm{\r\n width: 100%;\r\n height: 2.375rem;\r\n padding: var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.button_primary.full_width.md,\r\n.button_gray.full_width.md,\r\n.button_white.full_width.md,\r\n.rounded_button_white.full_width.md{\r\n width: 100%;\r\n height: 2.25rem;\r\n padding: var(--spacing-none) var(--spacing-3);\r\n}\r\n\r\n.underline.full_width.md,\r\n.underline_filled.full_width.md{\r\n width: 100%;\r\n height: 2.25rem;\r\n padding: var(--spacing-none) var(--spacing-3);\r\n}","import { Component, Element, Event, EventEmitter, Prop, h } from \"@stencil/core\";\r\nimport { GeneralSizes, TabTypes } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-tab-button-base',\r\n styleUrl: 'gb-tab-button-base.css',\r\n shadow: true,\r\n})\r\nexport class GbTabButtonBase {\r\n @Prop() current: boolean = false;\r\n @Prop() size: GeneralSizes;\r\n @Prop() fullWidth: boolean = false;\r\n @Prop() badge: boolean = false;\r\n @Prop() type: TabTypes;\r\n @Prop() tabName: string = '';\r\n @Prop() alignment: 'horizontal' | 'vertical';\r\n @Element() el: HTMLElement;\r\n @Event() tabClicked: EventEmitter<void>;\r\n\r\n getTextClasses() {\r\n switch (this.size) {\r\n case 'sm':\r\n return 'text-sm-medium';\r\n case 'md':\r\n return 'text-md-medium';\r\n }\r\n }\r\n\r\n getCurrentTextClasses() {\r\n switch (this.size) {\r\n case 'sm':\r\n return 'text-sm-semi-bold';\r\n case 'md':\r\n return 'text-md-semi-bold';\r\n }\r\n }\r\n\r\n getCountTextClasses() {\r\n switch (this.size) {\r\n case 'sm':\r\n return 'text-xs-medium';\r\n case 'md':\r\n return 'text-sm-medium';\r\n }\r\n }\r\n\r\n componentDidLoad() {\r\n const tabCount = this.el.querySelector('[slot=\"count\"]');\r\n\r\n if(tabCount) {\r\n tabCount.classList.add(this.getCountTextClasses());\r\n }\r\n }\r\n\r\n handleClick() {\r\n this.tabClicked.emit();\r\n }\r\n\r\n render() {\r\n return (\r\n <div \r\n class={`tab_button_div ${this.type}\r\n ${this.current ? 'current' : ''} \r\n ${this.fullWidth ? 'full_width' : ''} \r\n ${this.size}\r\n ${this.alignment}`} \r\n onClick={() => this.handleClick()}\r\n >\r\n <p class={`${!this.current ? 'tab_text' : ''} ${this.current ? this.getCurrentTextClasses() : this.getTextClasses()}`}>{this.tabName}</p>\r\n {this.badge && (\r\n <gb-badge\r\n size=\"sm\"\r\n type=\"pill_color\"\r\n color={\r\n this.current && this.type === 'button_primary'\r\n ? 'information'\r\n : this.current && this.type === 'underline'\r\n ? 'information'\r\n : this.current && this.type === 'underline_filled'\r\n ? 'information'\r\n :\r\n this.current && this.type === 'line'\r\n ? 'information'\r\n : 'gray'\r\n }\r\n >\r\n <slot name=\"count\"></slot>\r\n </gb-badge>\r\n )}\r\n </div>\r\n );\r\n }\r\n}","@import '../../global/global.css';\r\n\r\n.table_header_div {\r\n display: flex;\r\n width: 100%;\r\n height: fit-content;\r\n flex-direction: column;\r\n align-items: flex-start;\r\n gap: 1.25rem;\r\n flex-shrink: 0;\r\n background: var(--color-background-card, #ffffff);\r\n}\r\n\r\n.table_header_content {\r\n display: flex;\r\n padding: var(--spacing-5) var(--spacing-6);\r\n justify-content: space-between;\r\n align-items: center;\r\n gap: var(--spacing-5);\r\n align-self: stretch;\r\n border-bottom: 1px solid var(--color-border-subtle, #cdd5df);\r\n}\r\n\r\n.table_heading {\r\n color: var(--color-text-bold);\r\n}\r\n\r\n.date_filters {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n flex: 1 0 0;\r\n min-width: 0;\r\n}\r\n\r\n.date_dropdown,\r\n.date_input {\r\n width: 100%;\r\n max-width: 13rem;\r\n min-width: 0;\r\n}\r\n\r\n.actions {\r\n display: flex;\r\n max-width: 50.25rem;\r\n justify-content: flex-end;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n flex: 1 0 0;\r\n}\r\n\r\n.input_field {\r\n flex-grow: 1;\r\n width: 100%;\r\n max-width: 20rem;\r\n}\r\n\r\n.action {\r\n display: flex;\r\n padding: 0rem 0rem 0rem var(--spacing-none);\r\n justify-content: flex-end;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n}\r\n\r\n.export {\r\n position: relative;\r\n}\r\n\r\n.dropdown {\r\n position: absolute;\r\n}\r\n\r\n.dropdown.left{\r\n top: 100%;\r\n left: 0;\r\n}\r\n\r\n.dropdown.right{\r\n top: 100%;\r\n right: 0;\r\n}\r\n\r\n.refresh_button {\r\n width: 2.5rem;\r\n}\r\n\r\n/* Breakpoints (Responsiveness) */\r\n/* Mobile */\r\n@media (max-width: 700px) {\r\n .table_header_content {\r\n flex-direction: column;\r\n align-items: flex-start;\r\n }\r\n\r\n .dropdown {\r\n position: absolute;\r\n top: 100%;\r\n left: 0;\r\n }\r\n\r\n .actions {\r\n flex-direction: column;\r\n width: 100%;\r\n align-items: flex-start;\r\n }\r\n}\r\n\r\n@media (max-width: 390px) {\r\n .date_filters {\r\n display: flex;\r\n flex-direction: column;\r\n width: 100%;\r\n }\r\n\r\n .date_dropdown,\r\n .date_input {\r\n width: 100%;\r\n max-width: none;\r\n }\r\n}\r\n","import { Component, Element, Event, EventEmitter, Listen, Prop, State, h } from '@stencil/core';\r\nimport { CloseButtonPositions, StateEnum, StateType } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-table-header',\r\n styleUrl: 'gb-table-header.css',\r\n shadow: true,\r\n})\r\nexport class GbTableHeader {\r\n @Prop() showFilter: boolean = false;\r\n @Prop() showColumnOptions: boolean = false;\r\n @Prop() tableHeading: boolean = true;\r\n @Prop() showSearch: boolean = false;\r\n @Prop() showExport: boolean = false;\r\n @Prop() showRefreshButton: boolean = false;\r\n @Prop() tableHeadingLabel: string = '';\r\n @Prop() showLayoutToggle: boolean = false;\r\n @Prop() filterState: StateType;\r\n @Prop() filterCount: number = 0;\r\n @Prop() showEntireData: boolean = false;\r\n @Prop() exportButtonState: StateType = 'default';\r\n @Prop() pdfState: StateEnum = StateEnum.Default;\r\n @Prop() csvState: StateEnum = StateEnum.Default;\r\n @Prop() showDateFilter: boolean = false;\r\n @State() items = [\r\n { label: 'grid', current: false, icon: 'assets/grid-view.svg' },\r\n { label: 'list', current: true, icon: 'assets/left-to-right-list-dash.svg' },\r\n ];\r\n @Prop() dateItems: any[] = [\r\n // { name: 'Mock Item A iusbrviubw vwiuhvw vwiurhvwr vwoiuh', 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() mode: 'single' | 'range' = 'single';\r\n @Prop() datePickerPlaceholder: string = 'Start date - end date';\r\n @Prop() exportDropdownPosition: CloseButtonPositions = 'right';\r\n @State() width: number = window.innerWidth;\r\n @State() buttonIcon: 'default' | 'only';\r\n @State() showExportDropdown: boolean = false;\r\n @State() isDatePickerShown: boolean = false;\r\n @Event() inputValueChanged: EventEmitter<void>;\r\n @Event() filterButtonClicked: EventEmitter<void>;\r\n @Event() exportClicked: EventEmitter<void>;\r\n @Event() refreshButtonClicked: EventEmitter<void>;\r\n @Event() layoutButtonClicked: EventEmitter<string>;\r\n @Event() dateChange: EventEmitter<string | string[]>;\r\n @Element() el: HTMLElement;\r\n\r\n exportDropdown!: HTMLElement;\r\n\r\n componentDidLoad() {\r\n document.addEventListener('click', this.handleClickOutside);\r\n }\r\n\r\n componentWillLoad() {\r\n this.updateButtonIcon(); // Set initial variant\r\n window.addEventListener('resize', this.handleResize);\r\n this.dateItems.unshift('Custom');\r\n }\r\n\r\n extractDropdownItemSelected(item) {\r\n if (item.detail === 'Custom') {\r\n this.isDatePickerShown = true;\r\n } else {\r\n this.isDatePickerShown = false;\r\n }\r\n }\r\n\r\n emitDateSelected(date) {\r\n this.dateChange.emit(date.detail);\r\n }\r\n\r\n toggleDropdown() {\r\n this.showExportDropdown = !this.showExportDropdown;\r\n }\r\n\r\n private handleResize = () => {\r\n this.width = window.innerWidth;\r\n this.updateButtonIcon();\r\n };\r\n\r\n private updateButtonIcon() {\r\n this.buttonIcon = this.width < 1007 ? 'only' : 'default';\r\n }\r\n\r\n emitValue(inputValue) {\r\n this.inputValueChanged.emit(inputValue);\r\n }\r\n\r\n onFilterButtonClicked() {\r\n this.filterButtonClicked.emit();\r\n }\r\n\r\n emitSelection(selection) {\r\n this.exportClicked.emit(selection);\r\n }\r\n\r\n onRefreshButtonClicked() {\r\n this.refreshButtonClicked.emit();\r\n }\r\n\r\n onLayoutButtonClicked(layout) {\r\n // console.log(layout.detail)\r\n this.layoutButtonClicked.emit(layout.detail);\r\n }\r\n\r\n @Listen('click', { target: 'document' })\r\n handleClickOutside(event: MouseEvent) {\r\n if (this.showExportDropdown && !this.el.contains(event.target as Node)) {\r\n this.showExportDropdown = false;\r\n }\r\n }\r\n\r\n disconnectedCallback() {\r\n document.removeEventListener('click', this.handleClickOutside);\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"table_header_div\">\r\n <div class=\"table_header_content\">\r\n {this.tableHeading && <p class=\"table_heading text-lg-semi-bold\">{this.tableHeadingLabel}</p>}\r\n {this.showDateFilter && (\r\n <div class=\"date_filters\">\r\n <div class=\"date_dropdown\">\r\n <gb-input-dropdown\r\n show-placeholder=\"true\"\r\n placeholder=\"Select a period\"\r\n size=\"sm\"\r\n state=\"default\"\r\n type=\"icon_leading\"\r\n color=\"blue\"\r\n show-leading-icon=\"true\"\r\n leading-icon=\"assets/calendar-02.svg\"\r\n menu-position=\"bottom\"\r\n icon=\"false\"\r\n items={this.dateItems}\r\n onDropdownItemSelected={this.extractDropdownItemSelected.bind(this)}\r\n >\r\n <h1 slot=\"initials\">EK</h1>\r\n <p slot=\"tooltip_label\">This is a label</p>\r\n <p slot=\"tooltip_supporting_text\">This is a supporting text for the tooltip</p>\r\n </gb-input-dropdown>\r\n </div>\r\n {this.isDatePickerShown && (\r\n <div class=\"date_input\">\r\n <gb-date-picker mode={this.mode} placeholder={this.datePickerPlaceholder} onDateChange={this.emitDateSelected.bind(this)}></gb-date-picker>\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n <div class=\"actions\">\r\n {this.showSearch && (\r\n <div class=\"input_field\">\r\n <gb-input-field\r\n size=\"sm\"\r\n type=\"icon_leading\"\r\n icon-swap=\"assets/search-01.svg\"\r\n placeholder=\"Search\"\r\n enable-cancel-button-function={true}\r\n onInputValueChanged={this.emitValue.bind(this)}\r\n ></gb-input-field>\r\n </div>\r\n )}\r\n <div class=\"action\">\r\n {this.showLayoutToggle && <gb-button-group items={this.items} icon=\"only\" onOptionChange={this.onLayoutButtonClicked.bind(this)}></gb-button-group>}\r\n {this.showColumnOptions && (\r\n <gb-button size=\"md\" hierarchy=\"secondary_gray\" icon={this.width <= 1007 ? 'only' : 'default'} icon-leading={true} icon-leading-swap=\"assets/column-insert.svg\">\r\n <p>Columns</p>\r\n </gb-button>\r\n )}\r\n {this.showFilter && (\r\n <gb-filter-button state={this.filterState} icon-only={this.width <= 1007 ? true : false} onClick={() => this.onFilterButtonClicked()}>\r\n <p slot=\"filter_count\">{this.filterCount}</p>\r\n </gb-filter-button>\r\n )}\r\n {this.showExport && (\r\n <div class=\"export\">\r\n <gb-button\r\n size=\"md\"\r\n state={this.exportButtonState}\r\n hierarchy=\"secondary_gray\"\r\n icon={this.width <= 1007 ? 'only' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/file-export.svg\"\r\n icon-trailing={this.width <= 1007 ? false : true}\r\n icon-trailing-swap=\"assets/arrow-down-01.svg\"\r\n onClick={() => this.toggleDropdown()}\r\n >\r\n <p>Export</p>\r\n </gb-button>\r\n {this.showExportDropdown && (\r\n <gb-export-dropdown\r\n ref={el => (this.exportDropdown = el)}\r\n show-entire-data={this.showEntireData}\r\n pdf-state={this.pdfState}\r\n csv-state={this.csvState}\r\n onExportClicked={() => this.emitSelection.bind(this)}\r\n class={`dropdown ${this.exportDropdownPosition}`}\r\n ></gb-export-dropdown>\r\n )}\r\n </div>\r\n )}\r\n {this.showRefreshButton && (\r\n <div class=\"refresh_button\">\r\n <gb-button\r\n size=\"md\"\r\n hierarchy=\"secondary_gray\"\r\n icon={this.width <= 1007 ? 'only' : 'default'}\r\n icon-leading={true}\r\n icon-leading-swap=\"assets/refresh.svg\"\r\n onClick={() => this.onRefreshButtonClicked()}\r\n ></gb-button>\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n:host{\r\n display: flex;\r\n align-items: center;\r\n width: fit-content;\r\n}\r\n\r\n.container {\r\n display: inline-flex;\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-1);\r\n flex-shrink: 0;\r\n border-radius: var(--rounded-xs);\r\n border: 1px solid var(--color-boarder-subtle, #CDD5DF);\r\n background: var(--color-background-card, #FFFFFF); \r\n}\r\n\r\n.content {\r\n display: flex;\r\n padding: var(--spacing-none);\r\n text-align: center;\r\n align-items: center;\r\n border-radius: var(--rounded-none);\r\n font-family: var(--Font-Family-Body, Sora);\r\n font-style: normal;\r\n font-weight: var(--Font-Weight-Medium, 500);\r\n letter-spacing: var(--Font-Letter-spacing-T-sm, 0rem);\r\n}\r\n\r\n::slotted(p){\r\n color: var(--color-text, #4B5565) !important;\r\n}\r\n\r\n.icon {\r\n border: none;\r\n}\r\n\r\n.container.sm {\r\n height: var(--spacing-6);\r\n padding: var(--spacing-none) var(--spacing-1) var(--spacing-none) var(--spacing-2);\r\n}\r\n\r\n.container.md {\r\n height: 1.75rem;\r\n padding: var(--spacing-none) var(--spacing-1) var(--spacing-none) var(--spacing-2);\r\n}\r\n\r\n.container.lg {\r\n height: var(--spacing-7);\r\n padding: var(--spacing-none) var(--spacing-1) var(--spacing-none) var(--spacing-2);\r\n}\r\n\r\n.content.sm {\r\n gap: var(--spacing-1);\r\n font-size: var(--Font-Size-T-xs, 0.75rem);\r\n line-height: var(--Font-Line-height-T-xs, 1.125rem);\r\n}\r\n\r\n.content.md {\r\n gap: 0.3125rem;\r\n font-size: var(--Font-Size-T-sm, 0.875rem); \r\n line-height: var(--Font-Line-height-T-sm, 1.25rem); \r\n}\r\n\r\n.content.lg {\r\n gap: 0.375rem;\r\n font-size: var(--Font-Size-T-sm, 0.875rem);\r\n line-height: var(--Font-Line-height-T-sm, 1.25rem); /* 142.857% */\r\n}\r\n\r\n.label{\r\n display: flex;\r\n align-items: center;\r\n}","import { Component, Method, Prop, getAssetPath, h, Fragment, Event, EventEmitter, Element } from '@stencil/core';\r\nimport { GeneralSizes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-tag',\r\n styleUrl: 'gb-tag.css',\r\n shadow: true,\r\n})\r\nexport class GbTag {\r\n @Prop() size: GeneralSizes;\r\n @Prop() icon?: 'country' | 'avatar' | 'dot' | 'false';\r\n @Prop() action: 'X_close' | 'text_only' | 'count';\r\n @Prop() flagSwap: string;\r\n @Prop() checkbox?: boolean;\r\n @Event() checkboxClicked: EventEmitter<void>;\r\n @Element() el: HTMLElement;\r\n\r\n @Method()\r\n async onTagClose() {\r\n // console.log('close tag clicked');\r\n }\r\n\r\n onCheckboxClicked() {\r\n // this.checkboxClicked.emit()\r\n }\r\n\r\n componentDidLoad() {\r\n const labelSlot = this.el.querySelector('p');\r\n\r\n if(labelSlot) {\r\n if(this.size === 'sm') {\r\n labelSlot.classList.add('text-xs-medium');\r\n } else if(this.size === 'md') {\r\n labelSlot.classList.add('text-sm-medium');\r\n } else if(this.size === 'lg') {\r\n labelSlot.classList.add('text-sm-medium');\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n const flagSwap = getAssetPath(`${this.flagSwap}`);\r\n\r\n return (\r\n <div class={`container ${this.size}`}>\r\n <div class={`content ${this.size}`}>\r\n {this.checkbox && <gb-tag-checkbox size={this.size}></gb-tag-checkbox>}\r\n {this.icon === 'false' && <></>}\r\n {this.icon === 'country' && (\r\n <div class=\"icon left-icon\">\r\n <img src={flagSwap} alt=\"Country Icon\" />\r\n </div>\r\n )}\r\n {this.icon === 'avatar' && (\r\n <gb-avatar class=\"avatar-icon\" size=\"xxs\" status-icon=\"false\" text={false} color=\"gray\">\r\n {/* <slot name=\"initials\" slot=\"initials\"></slot> */}\r\n <slot name=\"image\" slot=\"image\"></slot>\r\n </gb-avatar>\r\n )}\r\n {this.icon === 'dot' && (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"8\" height=\"8\" viewBox=\"0 0 8 8\" fill=\"none\">\r\n <circle cx=\"4\" cy=\"4\" r=\"3\" fill=\"#17B26A\" />\r\n </svg>\r\n )}\r\n <div class=\"label\">\r\n <slot></slot>\r\n </div>\r\n {this.action === 'count' && (\r\n <gb-tag-count size={this.size}>\r\n <slot slot=\"count\" name=\"count\"></slot>\r\n </gb-tag-count>\r\n )}\r\n </div>\r\n {this.action === 'X_close' && <gb-tag-close size={this.size} onClick={() => this.onTagClose()}></gb-tag-close>}\r\n </div>\r\n );\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n.checkbox-container {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n position: relative;\r\n cursor: pointer;\r\n}\r\n\r\ninput[type=\"checkbox\"] {\r\n opacity: 0;\r\n position: absolute;\r\n width: 100%;\r\n height: 100%;\r\n cursor: pointer;\r\n}\r\n\r\n.custom-checkbox {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: var(--rounded-xs);\r\n border: 1px solid var(--color-border-input, #CDD5DF);\r\n background: transparent;\r\n transition: background 0.2s, border 0.2s;\r\n margin-top: 10px;\r\n}\r\n\r\n.sm {\r\n width: 14px;\r\n height: 14px;\r\n}\r\n\r\n.md {\r\n width: var(--spacing-4);\r\n height: var(--spacing-4);\r\n flex-shrink: 0;\r\n}\r\n\r\n.lg {\r\n width: 18px;\r\n height: 18px;\r\n}\r\n\r\ninput[type=\"checkbox\"]:checked + .custom-checkbox {\r\n background: var(--color-background-selected, #075DB2);\r\n border: 1px solid var(--color-border-selected, #075DB2);\r\n}\r\n\r\ninput[type=\"checkbox\"]:checked + .custom-checkbox .checkmark {\r\n display: block;\r\n}\r\n\r\n.checkmark {\r\n display: none;\r\n width: var(--spacing-3);\r\n height: var(--spacing-3);\r\n}\r\n\r\n.checkbox-container:hover .custom-checkbox {\r\n border: 1px solid var(--color-border-selected, #075DB2);\r\n}\r\n\r\n.checkbox-container.disabled .custom-checkbox {\r\n background: var(--color-background-disabled, #F6F8FA);\r\n border: 1px solid var(--color-border-disabled, #E3E8EF);\r\n}\r\n\r\n.checkbox-container.disabled .checkmark {\r\n fill: var(--color-icon-disabled, #CDD5DF);\r\n}\r\n\r\n","import { Component, Event, EventEmitter, Prop, h} from \"@stencil/core\";\r\nimport { GeneralSizes } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-tag-checkbox',\r\n styleUrl: 'gb-tag-checkbox.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbTagCheckbox {\r\n @Prop() checked: boolean = false;\r\n @Prop() size: GeneralSizes = 'md';\r\n @Prop() disabled: boolean = false;\r\n @Event() tagCheckboxClicked: EventEmitter<boolean>;\r\n \r\n render() {\r\n return (\r\n <label class={`checkbox-container ${this.size} ${this.disabled ? 'disabled' : ''}`}>\r\n <input \r\n type=\"checkbox\" \r\n checked={this.checked} \r\n disabled={this.disabled} \r\n />\r\n <span class={`custom-checkbox ${this.size}`}>\r\n <svg class=\"checkmark\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <path d=\"M2.5 7.25C2.5 7.25 3.25 7.25 4.25 9C4.25 9 7.02941 4.41667 9.5 3.5\" stroke=\"white\" stroke-width=\"1.71429\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span>\r\n </label>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\ndiv {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: flex-start;\r\n gap: var(--spacing-none);\r\n border-radius: 3px;\r\n cursor: pointer;\r\n}\r\n\r\ndiv:hover {\r\n background: var(--color-background-gray-subtlest, #F6F8FA);\r\n}\r\n\r\ndiv:hover svg path {\r\n stroke: var(--color-icon-bold, #202939);\r\n}\r\n\r\ndiv.sm,\r\ndiv.md {\r\n padding: var(--spacing-half);\r\n}\r\n\r\ndiv.lg {\r\n padding: 3px;\r\n}\r\n\r\ndiv.sm svg{\r\n width: 10px;\r\n height: 10px;\r\n}\r\n\r\ndiv.md svg{\r\n width: var(--spacing-3);\r\n height: var(--spacing-3);\r\n}\r\n\r\ndiv.lg svg{\r\n width: 14px;\r\n height: 14px;\r\n}","import {Component, Prop, h} from '@stencil/core'\r\nimport { GeneralSizes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-tag-close',\r\n styleUrl: 'gb-tag-close.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbTagClose{\r\n @Prop() size: GeneralSizes;\r\n\r\n render() {\r\n return (\r\n <div class={this.size}>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\">\r\n <path d=\"M7.91683 2.08328L2.0835 7.91662M2.0835 2.08328L7.91683 7.91662\" stroke=\"#4B5565\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n )\r\n }\r\n}","@import './../../global/global.css';\r\n\r\ndiv {\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n gap: var(--spacing-none);\r\n flex-shrink: 0;\r\n border-radius: 3px;\r\n background-color: var(--color-background-gray-subtler, #EEF2F6);\r\n} \r\n\r\ndiv.sm {\r\n width: 16px;\r\n height: 16px;\r\n padding: var(--spacing-none) var(--spacing-1);\r\n}\r\n\r\n.sm p{\r\n width: 8px;\r\n height: 16px; \r\n font-size: var(--Font-Size-T-xs, 0.75rem);\r\n line-height: var(--Font-Line-height-T-xs, 1.125rem);\r\n}\r\n\r\ndiv.md {\r\n width: 1.125rem;\r\n height: 1.125rem;\r\n padding: var(--spacing-none) 5px;\r\n}\r\n\r\n.md p{\r\n width: 0.5625rem;\r\n height: 1.125rem;\r\n font-size: var(--Font-Size-T-xs, 0.75rem);\r\n line-height: var(--Font-Line-height-T-xs, 1.125rem); \r\n}\r\n\r\ndiv.lg {\r\n width: 1.25rem;\r\n height: 1.25rem;\r\n}\r\n\r\n.lg p{\r\n font-size: var(--Font-Size-T-sm, 0.875rem);\r\n line-height: var(--Font-Line-height-T-sm, 1.25rem);\r\n}\r\n\r\np{\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n flex-shrink: 0;\r\n color: var(--color-text, #4B5565);\r\n text-align: center;\r\n font-family: var(--Font-Family-Body, Sora);\r\n font-style: normal;\r\n font-weight: var(--Font-Weight-Medium, 500);\r\n letter-spacing: var(--Font-Letter-spacing-T-sm, 0px);\r\n}\r\n\r\n\r\n","import {Component, Prop, h} from '@stencil/core';\r\nimport { GeneralSizes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-tag-count',\r\n styleUrl: 'gb-tag-count.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbTagCount{\r\n @Prop() size: GeneralSizes;\r\n\r\n render() {\r\n return (\r\n <div class={this.size}>\r\n <slot name=\"count\"></slot>\r\n </div>\r\n )\r\n }\r\n}","@import '../../global/global.css';\r\n\r\n.textarea_container{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\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.textarea{\r\n border: 1px solid var(--color-border-input, #CDD5DF);\r\n border-radius: var(--rounded-sm);\r\n padding: 0.75rem 0.875rem;\r\n font-family: var(--font-family-body);\r\n resize: none;\r\n min-height: 7.5rem;\r\n overflow: visible;\r\n background: transparent;\r\n color: var(--color-text);\r\n}\r\n\r\n.default_textarea:focus{\r\n border-color: #075DB2;\r\n outline: #075DB2;\r\n}\r\n\r\n.textarea::placeholder{\r\n color: var(--color-text-subtle, #697586);\r\n}\r\n\r\n.results_display {\r\n display: flex;\r\n flex-wrap: wrap;\r\n position: relative;\r\n gap: 0.5rem;\r\n width: 100%;\r\n background-color: var(--color-surface, #FFFFFF);\r\n}\r\n\r\n.results_display.disabled{\r\n background: var(--color-background-disabled, #F6F8FA);\r\n}\r\n\r\n.textarea_tags{\r\n --weight: fit-content;\r\n /* flex-direction: row-reverse; */\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n}\r\n\r\n.textarea.tags{\r\n display: flex;\r\n}\r\n\r\n.input_like,\r\n.results_display{\r\n height: fit-content;\r\n}\r\n\r\n.input_like{\r\n border: none;\r\n font-family: var(--font-family-body);\r\n}\r\n\r\n.input_like:focus{\r\n outline: none;\r\n}\r\n\r\n.input_like.disabled{\r\n background: var(--color-background-disabled, #F6F8FA);\r\n}\r\n\r\n.hidden-span {\r\n visibility: hidden;\r\n position: absolute;\r\n max-width: 100%;\r\n white-space: pre;\r\n}\r\n\r\n/* State Styles */\r\n.textarea:focus-within{\r\n border: 1.3px solid var(--color-border-selected, #075DB2);\r\n outline-color: transparent;\r\n}\r\n\r\n.textarea.destructive{\r\n border: 1px solid var(--color-border-danger, #B51726);\r\n}\r\n\r\n.textarea.disabled{\r\n background: var(--color-background-gray-subtlest, #F6F8FA);\r\n border: 1px solid var(--color-border-disabled, #E3E8EF);\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\n.label {\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.hint_text{\r\n color: var(--color-text-subtle, #697586);\r\n}\r\n\r\n.hint_text.destructive{\r\n color: var(--color-border-danger, #B51726);\r\n}\r\n\r\n.dropdown_menu{\r\n display: flex;\r\n min-width: 100%;\r\n width: fit-content;\r\n max-height: 15rem;\r\n padding: var(--spacing-none);\r\n flex-direction: column;\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 z-index: 99999;\r\n gap: var(--spacing-none);\r\n transition: 1s ease-in-out;\r\n overflow-y: auto;\r\n top: 105%;\r\n}","import { Component, Element, Prop, State, h, Fragment, Event, EventEmitter, Listen, Watch } from '@stencil/core';\r\nimport { StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-textarea-input-field',\r\n styleUrl: 'gb-textarea-input-field.css',\r\n shadow: true,\r\n})\r\nexport class GbTextareaInputField {\r\n @Prop() type: 'default' | 'tags';\r\n @Prop({ mutable: true }) state: 'default' | 'filled' | 'active' | 'disabled';\r\n @Prop() destructive: boolean = false;\r\n @Prop() placeholderText: string = '';\r\n @Prop() showLabel: boolean = false;\r\n @Prop() label: string = '';\r\n @Prop() showHintText: boolean = false;\r\n @Prop() hintText: string = '';\r\n @Prop() errorText: string = '';\r\n @Prop({ reflect: true }) idOfInput!: string;\r\n @Prop({ reflect: true }) isReadOnly: boolean = false;\r\n @Prop({ mutable: true }) value: any = [\r\n // { objectName: 'John Doe', objectValue: 'john.doe@example.com' },\r\n // { objectName: 'Jane Smith', objectValue: 'jane.smith@example.com' },\r\n // { objectName: 'Alice Johnson', objectValue: 'alice.johnson@example.com' },\r\n // { objectName: 'Emmanuel Kadiri', objectValue: 'kadiri2047@gmail.com' },\r\n // { objectName: 'Gideon Ogunkola', objectValue: 'gideon@example.com' },\r\n ];\r\n @Prop() icon: 'country' | 'avatar' | 'dot' | 'false';\r\n @Prop({ mutable: true }) results: any[] = [\r\n // { objectName: 'John Doe', objectValue: 'john.doe@example.com' },\r\n // { objectName: 'Jane Smith', objectValue: 'jane.smith@example.com' },\r\n // { objectName: 'Alice Johnson', objectValue: 'alice.johnson@example.com' },\r\n // { objectName: 'Emmanuel Kadiri', objectValue: 'kadiri2047@gmail.com' },\r\n // { objectName: 'Gideon Ogunkola', objectValue: 'gideon@example.com' },\r\n // 10,\r\n // 20,\r\n // 30,\r\n // 40,\r\n // 50,\r\n ];\r\n @Element() el: HTMLElement;\r\n @State() content: string = '';\r\n @State() inputValue: string = '';\r\n @State() selectedStaff: any[] = [];\r\n @State() paddingLeft: string = '1rem';\r\n @State() paddingTop: string = '0rem';\r\n @State() show: boolean = false;\r\n @State() staffInfo: any[] = [];\r\n @State() selectedItems: any[] = [];\r\n @State() unselectedItems: any[] = [];\r\n @Event() textareaValueChanged: EventEmitter<any>;\r\n\r\n private textarea!: HTMLTextAreaElement;\r\n inputElement!: HTMLInputElement;\r\n resultsDisplayElement!: HTMLDivElement;\r\n private hiddenSpan: HTMLElement;\r\n private minWidth: number = 10;\r\n\r\n connectedCallback() {\r\n if (this.type === 'tags') {\r\n document.addEventListener('click', this.handleClickOutside);\r\n this.inputElement?.addEventListener('input', this.handleTagInput.bind(this));\r\n } else {\r\n this.inputElement?.addEventListener('input', this.handleInput.bind(this));\r\n }\r\n }\r\n\r\n componentDidLoad() {\r\n this.updateInputWidth();\r\n }\r\n\r\n componentWillLoad() {\r\n this.updateSelectedItems(this.value);\r\n }\r\n\r\n disconnectedCallback() {\r\n if(this.type === 'tags') {\r\n this.inputElement?.removeEventListener('input', this.handleTagInput.bind(this));\r\n document.removeEventListener('click', this.handleClickOutside);\r\n } else {\r\n this.inputElement?.removeEventListener('input', this.handleInput.bind(this));\r\n }\r\n }\r\n\r\n handleInput() {\r\n this.textarea.style.height = 'auto'; // Reset height to calculate the new height\r\n this.textarea.style.height = `${this.textarea.scrollHeight - 22}px`; // Set the height to the scrollHeight\r\n this.textareaValueChanged.emit(this.textarea.value);\r\n }\r\n\r\n handleInputFocus() {\r\n if (this.destructive) {\r\n this.destructive = false;\r\n }\r\n }\r\n\r\n handleTagInput(event: Event) {\r\n const target = event.target as HTMLInputElement;\r\n this.inputValue = target.value; // Update the value\r\n this.textareaValueChanged.emit(this.selectedItems);\r\n\r\n if (this.inputValue.trim() === '') {\r\n this.show = false;\r\n // this.results = [];\r\n return;\r\n }\r\n\r\n // Simulate API call\r\n setTimeout(() => {\r\n // this.results = this.mockStaffSearch(this.inputValue);\r\n this.show = this.results.length > 0;\r\n }, 1000);\r\n\r\n this.updateInputWidth();\r\n }\r\n\r\n emitInputValue() {\r\n this.textareaValueChanged.emit(this.selectedItems);\r\n }\r\n\r\n handleTagRemove(index: number) {\r\n if (this.value.length > 0) {\r\n this.value = [...this.value.slice(0, index), ...this.value.slice(index + 1)];\r\n this.updateStyles();\r\n this.emitInputValue();\r\n } else {\r\n this.selectedItems = [...this.selectedItems.slice(0, index), ...this.selectedItems.slice(index + 1)];\r\n this.updateStyles();\r\n this.emitInputValue();\r\n }\r\n }\r\n\r\n updateStyles() {\r\n setTimeout(() => {\r\n if (this.resultsDisplayElement) {\r\n const resultsWidth = this.resultsDisplayElement.offsetWidth;\r\n const inputWidth = this.inputElement.offsetWidth;\r\n\r\n this.paddingLeft = this.selectedItems.length === 0 ? '1rem' : `${resultsWidth + 10}px`;\r\n\r\n this.paddingTop = this.selectedItems.length > 2 ? '1rem' : `${inputWidth + 10}px`;\r\n }\r\n });\r\n\r\n if (this.destructive) {\r\n this.destructive = false;\r\n }\r\n this.inputValue = '';\r\n }\r\n\r\n mockStaffSearch(query: string) {\r\n const mockData = this.results;\r\n\r\n return mockData.filter(staff => staff.objectName.toLowerCase().includes(query.toLowerCase()));\r\n }\r\n\r\n selectStaff(staff: any) {\r\n this.selectedStaff = [...this.selectedStaff, staff];\r\n this.inputValue = '';\r\n this.staffInfo = [];\r\n this.updateStyles();\r\n }\r\n\r\n updateInputWidth() {\r\n if (this.hiddenSpan) {\r\n const input = this.el.shadowRoot.querySelector('input') as HTMLInputElement;\r\n\r\n // Update input width based on span's width or use minimum width\r\n const calculatedWidth = Math.max(this.hiddenSpan.offsetWidth + 10, this.minWidth);\r\n input.style.width = `${calculatedWidth}px`;\r\n }\r\n }\r\n\r\n handleWrapperClick() {\r\n this.inputElement.focus(); // Focus the input field\r\n }\r\n\r\n selectDropdownItem(item: any) {\r\n if (this.value.length === 0) {\r\n const isObject = typeof item === 'object';\r\n const isSelected = this.selectedItems.some(i => (isObject ? i.objectName === item.objectName : i === item));\r\n if (isSelected) {\r\n // Unselect item: Move it from selectedItems to unselectedItems\r\n this.selectedItems = this.selectedItems.filter(i => (isObject ? i.objectName !== item.objectName : i !== item));\r\n if (!this.unselectedItems.some(i => (isObject ? i.objectName === item.objectName : i === item))) {\r\n this.unselectedItems = [...this.unselectedItems, item];\r\n }\r\n this.textareaValueChanged.emit(this.selectedItems);\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.objectName !== item.objectName : i !== item));\r\n this.textareaValueChanged.emit(this.selectedItems);\r\n }\r\n } else {\r\n const isObject = typeof item === 'object';\r\n const isSelected = this.selectedItems.some(i => (isObject ? i.objectName === item.objectName : i === item));\r\n\r\n if (isSelected) {\r\n this.value = this.value.filter(i => (isObject ? i.objectName !== item.objectName : i !== item));\r\n console.log(this.value);\r\n this.textareaValueChanged.emit(this.value);\r\n } else {\r\n this.value = [...this.value, item]; // Add item to array\r\n this.textareaValueChanged.emit(this.value);\r\n }\r\n }\r\n\r\n this.updateStyles();\r\n }\r\n\r\n @Watch('value')\r\n updateSelectedItems(newValue: any[]) {\r\n if (Array.isArray(newValue) && newValue.length > 0) {\r\n this.selectedItems = [];\r\n this.unselectedItems = [];\r\n\r\n const objectValues = newValue.filter(val => typeof val === 'object' && val !== null);\r\n const primitiveValues = newValue.filter(val => typeof val !== 'object');\r\n\r\n this.selectedItems = this.results.filter(item =>\r\n typeof item === 'object' && item !== null\r\n ? objectValues.some(val => JSON.stringify(val) === JSON.stringify(item)) // Avoid object reference issues\r\n : primitiveValues.includes(item),\r\n );\r\n\r\n this.unselectedItems = this.results.filter(item =>\r\n typeof item === 'object' && item !== null ? !objectValues.some(val => JSON.stringify(val) === JSON.stringify(item)) : !primitiveValues.includes(item),\r\n );\r\n } else {\r\n this.selectedItems = [];\r\n this.unselectedItems = [...this.results];\r\n }\r\n }\r\n\r\n isTagItemSelected(item) {\r\n // return this.selectedStaff.some(i => i.name === item.name);\r\n\r\n const isObject = typeof item === 'object';\r\n return this.selectedItems.some(i => (isObject ? i.objectName === item.objectName : i === item));\r\n }\r\n\r\n @Listen('click', { target: 'document' })\r\n handleClickOutside(event: MouseEvent) {\r\n if (this.show && !this.el.contains(event.target as Node)) {\r\n this.show = false;\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"textarea_container\">\r\n <div class=\"input_with_label\">\r\n {this.showLabel && <p class={`label text-sm-medium`}>{this.label}</p>}\r\n {this.type === 'default' && (\r\n <textarea\r\n ref={el => (this.textarea = el as HTMLTextAreaElement)}\r\n onInput={() => this.handleInput()}\r\n onFocus={() => this.handleInputFocus()}\r\n class={`textarea default_textarea ${this.state} ${this.destructive ? 'destructive' : ''}`}\r\n placeholder={this.placeholderText}\r\n value={this.inputValue}\r\n ></textarea>\r\n )}\r\n {this.type === 'tags' && (\r\n <div class=\"textarea_tags\">\r\n <div class={`textarea ${this.type} ${this.state} ${this.destructive ? 'destructive' : ''}`} onClick={() => this.handleWrapperClick()}>\r\n <div class={`results_display ${this.state === 'disabled' ? 'disabled' : ''}`} ref={el => (this.resultsDisplayElement = el as HTMLDivElement)}>\r\n {this.value.length === 0 ? (\r\n <>\r\n {this.selectedItems.map((item, index) => (\r\n <>\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(index)}>\r\n <p class=\"text-xs-medium\">{item.objectName.split(' ')[0]}</p>\r\n <h1 slot=\"initials\" class=\"text-xxs-semi-bold\">\r\n {item.objectName\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(index)}>\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 {this.value.map((val, index) => (\r\n <>\r\n {typeof val === 'object' ? (\r\n <gb-tag size=\"sm\" action=\"X_close\" icon={this.icon ? this.icon : 'avatar'} onClick={() => this.handleTagRemove(index)} key={index}>\r\n <h1 class=\"text-xxs-semi-bold\" slot=\"initials\">\r\n {val.objectName.split(' ').map(part => part.charAt(0).toUpperCase())}\r\n </h1>\r\n <p>{val.objectName.split(' ')[0]}</p>\r\n </gb-tag>\r\n ) : (\r\n <gb-tag size=\"sm\" action=\"X_close\" icon={this.icon ? this.icon : 'avatar'} onClick={() => this.handleTagRemove(index)} key={index}>\r\n <p>{val}</p>\r\n </gb-tag>\r\n )}\r\n </>\r\n ))}\r\n </>\r\n )}\r\n <span class=\"hidden-span\" ref={el => (this.hiddenSpan = el as HTMLElement)}>\r\n {this.inputValue || ' '}\r\n </span>\r\n <div class=\"input_field\">\r\n <input\r\n id={this.idOfInput}\r\n class={`input_like text-md-regular ${this.state}`}\r\n type=\"text\"\r\n // placeholder={this.placeholderText}\r\n value={this.inputValue}\r\n readOnly={this.isReadOnly}\r\n ref={el => (this.inputElement = el as HTMLInputElement)}\r\n onBlur={() => this.emitInputValue()}\r\n />\r\n </div>\r\n </div>\r\n {this.destructive && (\r\n <div class=\"help_icon\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M7.9947 10H8.00069M8.00004 8.00004V5.33337M14.6667 8.00004C14.6667 11.6819 11.6819 14.6667 8.00004 14.6667C4.31814 14.6667 1.33337 11.6819 1.33337 8.00004C1.33337 4.31814 4.31814 1.33337 8.00004 1.33337C11.6819 1.33337 14.6667 4.31814 14.6667 8.00004Z\"\r\n stroke=\"#B51726\"\r\n stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n </div>\r\n )}\r\n </div>\r\n {this.show && (\r\n <div class={`dropdown_menu`}>\r\n {this.results.map(item => (\r\n <gb-input-dropdown-menu-item\r\n type=\"checkbox\"\r\n supporting-text={true}\r\n state={StateEnum.Default}\r\n onClick={() => this.selectDropdownItem(item)}\r\n selected={this.isTagItemSelected(item)}\r\n >\r\n {typeof item === 'object'\r\n ? [<p slot=\"name\">{item.objectName}</p>, <p slot=\"supporting_text\">{item.objectValue}</p>]\r\n : typeof item !== 'object' && <p slot=\"name\">{item}</p>}\r\n </gb-input-dropdown-menu-item>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n </div>\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",".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, Element, Event, EventEmitter, Prop, 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({ mutable: true }) theme: ThemeTypes;\r\n @Event() themeTabClicked: EventEmitter<string>;\r\n @Prop({ mutable: true }) currentActiveTab: string = 'system';\r\n @Element() el: HTMLElement;\r\n\r\n tabClicked(theme: string) {\r\n this.currentActiveTab = theme;\r\n this.themeTabClicked.emit(theme);\r\n // this.el.dispatchEvent(\r\n // new CustomEvent('themeChange', {\r\n // detail: { theme },\r\n // bubbles: true,\r\n // composed: true, // This is key\r\n // }),\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.tabClicked('system')}\r\n ></gb-icon-button-base>\r\n </div>\r\n <div class=\"tab\">\r\n <gb-icon-button-base\r\n current={this.currentActiveTab === 'light' ? true : false}\r\n icon={sunSrc}\r\n label=\"Light\"\r\n onClick={() => this.tabClicked('light')}\r\n ></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.tabClicked('dark')}></gb-icon-button-base>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.toast_div{\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n position: relative;\r\n}\r\n\r\n/* Toast Size Styles */\r\n.toast_div.floating{\r\n border-radius: var(--rounded-md);\r\n box-shadow: var(--shadow-xs);\r\n padding: var(--spacing-3) var(--spacing-4);\r\n}\r\n\r\n.container.desktop{\r\n display: flex;\r\n padding: 0.75rem 2rem;\r\n width: 100%;\r\n}\r\n\r\n.container.mobile{\r\n display: flex;\r\n padding: var(--spacing-3) var(--spacing-4);\r\n align-items: center;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.full_width_content.desktop{\r\n display: flex;\r\n align-items: center;\r\n gap: 0.75rem;\r\n flex: 1 0 0;\r\n}\r\n\r\n.full_width_content.mobile{\r\n display: flex;\r\n flex-direction: column;\r\n gap: 0.75rem;\r\n}\r\n\r\n.inner_content.desktop{\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n flex-grow: 1;\r\n}\r\n\r\n.inner_content.mobile{\r\n display: flex;\r\n align-items: center;\r\n gap: var(--spacing-4);\r\n flex-grow: 1;\r\n}\r\n\r\n.icon_container{\r\n width: fit-content;\r\n display: flex;\r\n align-self: stretch;\r\n}\r\n\r\n.content{\r\n display: flex;\r\n flex-grow: 1;\r\n flex-wrap: wrap;\r\n}\r\n\r\n.content.floating{\r\n flex-direction: column;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.content.full_width{\r\n flex-direction: row;\r\n justify-content: space-between;\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.content.actions{\r\n flex-direction: row;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n\r\n.text.floating{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.text.full_width{\r\n display: flex;\r\n gap: 0.38rem;\r\n align-items: center;\r\n}\r\n\r\n.text.mobile{\r\n display: flex;\r\n flex-direction: column;\r\n align-items: flex-start;\r\n}\r\n\r\n.actions{\r\n display: flex;\r\n gap: var(--spacing-5);\r\n}\r\n\r\n.actions.floating{\r\n display: flex;\r\n}\r\n\r\n.actions.full_width{\r\n width: fit-content;\r\n}\r\n\r\n.actions.only_actions{\r\n width: fit-content;\r\n}\r\n\r\n.actions.mobile{\r\n margin-left: 2.8rem;\r\n}\r\n\r\n/* Toast Color Styles */\r\n.toast_div.floating.default{\r\n border: 1px solid var(--color-border-subtler, #E3E8EF);\r\n background: var(--color-background-card, #FFFFFF);\r\n}\r\n\r\n.toast_div.floating.gray{\r\n border: 1px solid var(--color-border-subtle, #CDD5DF);\r\n background: var(--color-background-gray-subtlest, #F6F8FA);\r\n}\r\n\r\n.toast_div.floating.information{\r\n border: 1px solid var(--color-border-infromation-subtle, #9AC7F4);\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n}\r\n\r\n.toast_div.floating.error{\r\n border: 1px solid var(--color-border-danger-subtle, #F9B4BA);\r\n background: var(--color-background-danger-subtlest, #FEF1F2);\r\n}\r\n\r\n.toast_div.floating.warning{\r\n border: 1px solid var(--color-border-warning-subtle, #FEDF89);\r\n background: var(--color-background-warning-subtlest, #FFFAEB);\r\n}\r\n\r\n.toast_div.floating.success{\r\n border: 1px solid var(--color-border-success-subtle, #A9EFC5);\r\n background: var(--color-background-success-subtlest, #ECFDF3);\r\n}\r\n\r\n.toast_div.full_width.default{\r\n border-top: 1px solid var(--color-border-subtler, #E3E8EF);\r\n border-bottom: 1px solid var(--color-border-subtler, #E3E8EF);\r\n background: var(--color-background-card, #FFFFFF);\r\n}\r\n\r\n.toast_div.full_width.gray{\r\n border-top: 1px solid var(--color-border-subtle, #CDD5DF);\r\n border-bottom: 1px solid var(--color-border-subtle, #CDD5DF);\r\n background: var(--color-background-gray-subtlest, #F6F8FA);\r\n}\r\n\r\n.toast_div.full_width.information{\r\n border-top: 1px solid var(--color-border-infromation-subtle, #9AC7F4);\r\n border-bottom: 1px solid var(--color-border-infromation-subtle, #9AC7F4);\r\n background: var(--color-background-information-subtlest, #E4F0FC);\r\n}\r\n\r\n.toast_div.full_width.error{\r\n border-top: 1px solid var(--color-border-danger-subtle, #F9B4BA);\r\n border-bottom: 1px solid var(--color-border-danger-subtle, #F9B4BA);\r\n background: var(--color-background-danger-subtlest, #FEF1F2);\r\n}\r\n\r\n.toast_div.full_width.warning{\r\n border-top: 1px solid var(--color-border-warning-subtle, #FEDF89);\r\n border-bottom: 1px solid var(--color-border-warning-subtle, #FEDF89);\r\n background: var(--color-background-warning-subtlest, #FFFAEB);\r\n}\r\n\r\n.toast_div.full_width.success{\r\n border-top: 1px solid var(--color-border-success-subtle, #A9EFC5);\r\n border-bottom: 1px solid var(--color-border-success-subtle, #A9EFC5);\r\n background: var(--color-background-success-subtlest, #ECFDF3);\r\n}\r\n\r\n.svg_icon.default path,\r\n.svg_icon.gray path{\r\n fill: var(--color-icon, #4B5565);\r\n}\r\n\r\n.svg_icon.information path{\r\n fill: var(--color-icon-information, #064E94);\r\n}\r\n\r\n.svg_icon.error path{\r\n fill: var(--color-icon-danger, #B51726);\r\n}\r\n\r\n.svg_icon.warning path{\r\n fill: var(--color-icon-warning, #DC6803);\r\n}\r\n\r\n.svg_icon.success path{\r\n fill: var(--color-icon-success, #079455);\r\n}\r\n\r\n.main_text_default,\r\n.main_text_gray{\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.main_text_information{\r\n color: var(--color-text-information, #064E94);\r\n}\r\n\r\n.main_text_error{\r\n color: var(--color-text-danger, #B51726);\r\n}\r\n\r\n.main_text_warning{\r\n color: var(--color-text-warning, #DC6803);\r\n}\r\n\r\n.main_text_success{\r\n color: var(--color-text-success, #079455);\r\n}\r\n\r\n.supporting_text_default,\r\n.supporting_text_gray{\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.supporting_text_information{\r\n color: var(--color-text-information, #064E94);\r\n}\r\n\r\n.supporting_text_error{\r\n color: var(--color-text-danger, #B51726);\r\n}\r\n\r\n.supporting_text_warning{\r\n color: var(--color-text-warning, #DC6803);\r\n}\r\n\r\n.supporting_text_success{\r\n color: var(--color-text-success, #079455);\r\n}\r\n\r\n.toast_div.full_width.desktop{\r\n display: flex;\r\n justify-content: center;\r\n}\r\n\r\n@media (max-width: 468px) {\r\n .actions.floating{\r\n width: 100%;\r\n }\r\n}","import { Component, Prop, h, Fragment, Element, Event, EventEmitter, State, Watch } from '@stencil/core';\r\nimport { BreakPoints, GeneralColors, StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-toast',\r\n styleUrl: 'gb-toast.css',\r\n shadow: true,\r\n})\r\nexport class GbToast {\r\n @Prop({ mutable: true }) color: GeneralColors;\r\n @Prop() mainText: string = '';\r\n @Prop() supportingText: string = '';\r\n @Prop() size: 'floating' | 'full_width';\r\n @Prop() breakpoint: BreakPoints;\r\n @Prop() icon: string = '';\r\n @Prop() xCloseButton: boolean = true;\r\n @Prop() actions: boolean = false;\r\n @Prop() showSupportingText: boolean = false;\r\n @State() internalColor: GeneralColors;\r\n @Element() el: HTMLElement;\r\n @Event() dismiss: EventEmitter<void>;\r\n @Event() viewChanges: EventEmitter<void>;\r\n @Event() close: EventEmitter<void>;\r\n\r\n @Watch('color')\r\n onColorChange(newValue: GeneralColors, _oldValue: GeneralColors) {\r\n this.internalColor = newValue;\r\n }\r\n\r\n componentWillLoad() {\r\n this.internalColor = this.color;\r\n }\r\n\r\n closeToast() {\r\n this.close.emit();\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`toast_div ${this.internalColor} ${this.size} ${this.breakpoint}`}>\r\n {this.size === 'floating' && (\r\n <>\r\n <div class={`icon_container`}>\r\n {this.internalColor === 'success' ? (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"29\" viewBox=\"0 0 28 29\" fill=\"none\" class={`svg_icon ${this.internalColor}`}>\r\n <path\r\n opacity=\"0.4\"\r\n d=\"M14.0666 2.24988H14.0665H13.9331H13.9331C11.3773 2.24986 9.36985 2.24985 7.80253 2.46057C6.19643 2.67651 4.92213 3.12805 3.9209 4.12928C2.91967 5.13051 2.46813 6.40481 2.2522 8.01091C2.04148 9.57822 2.04149 11.5857 2.0415 14.1415V14.1415V14.2749V14.2749C2.04149 16.8307 2.04148 18.8382 2.2522 20.4055C2.46813 22.0116 2.91967 23.2859 3.9209 24.2871C4.92213 25.2884 6.19643 25.7399 7.80253 25.9559C9.36985 26.1666 11.3773 26.1666 13.9331 26.1665H14.0665C16.6223 26.1666 18.6298 26.1666 20.1971 25.9559C21.8032 25.7399 23.0775 25.2884 24.0788 24.2871C25.08 23.2859 25.5315 22.0116 25.7475 20.4055C25.9582 18.8382 25.9582 16.8308 25.9582 14.2749V14.1415C25.9582 11.5857 25.9582 9.57822 25.7475 8.01091C25.5315 6.40481 25.08 5.13051 24.0788 4.12928C23.0775 3.12805 21.8032 2.67651 20.1971 2.46057C18.6298 2.24985 16.6224 2.24986 14.0666 2.24988Z\"\r\n fill=\"var(--color-icon-success, #079455)\"\r\n />\r\n <path\r\n d=\"M19.2265 11.1487C19.7918 10.8396 19.9995 10.1307 19.6903 9.56536C19.3811 9.00004 18.6722 8.79238 18.1069 9.10154C15.9735 10.2683 14.2094 12.5199 13.0232 14.3362C12.5849 15.0074 12.2104 15.6429 11.9108 16.1812C11.6313 15.9101 11.3545 15.6747 11.1069 15.479C10.783 15.2228 10.4915 15.0208 10.2789 14.8816L9.91136 14.6534C9.35166 14.3342 8.63915 14.5291 8.31994 15.0888C8.0008 15.6484 8.19559 16.3607 8.75499 16.68L9.00033 16.8335C9.16695 16.9426 9.40042 17.1043 9.6598 17.3093C10.1936 17.7314 10.7696 18.2846 11.1321 18.8907C11.3546 19.2626 11.7649 19.4806 12.1977 19.4567C12.6303 19.4328 13.0142 19.1708 13.1944 18.7769L13.309 18.5372C13.388 18.3756 13.5063 18.1396 13.6603 17.8487C13.9689 17.2657 14.4176 16.4684 14.9769 15.612C16.1241 13.8554 17.6266 12.0237 19.2265 11.1487Z\"\r\n fill=\"var(--color-icon-success, #079455)\"\r\n />\r\n </svg>\r\n ) : this.color === 'error' ? (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"29\" viewBox=\"0 0 28 29\" fill=\"none\" class={`svg_icon ${this.internalColor}`}>\r\n <path\r\n opacity=\"0.4\"\r\n d=\"M14.0665 2.49945C16.6224 2.49944 18.6298 2.49942 20.1971 2.71014C21.8032 2.92608 23.0775 3.37762 24.0788 4.37885C25.08 5.38008 25.5315 6.65438 25.7475 8.26048C25.9582 9.82779 25.9582 11.8352 25.9582 14.391V14.3911V14.5245V14.5245C25.9582 17.0803 25.9582 19.0878 25.7475 20.6551C25.5315 22.2612 25.08 23.5355 24.0788 24.5367C23.0775 25.538 21.8032 25.9895 20.1971 26.2054C18.6298 26.4161 16.6224 26.4161 14.0666 26.4161H14.0665H13.9331H13.9331C11.3773 26.4161 9.36984 26.4161 7.80253 26.2054C6.19643 25.9895 4.92213 25.538 3.9209 24.5367C2.91967 23.5355 2.46813 22.2612 2.2522 20.6551C2.04148 19.0878 2.04149 17.0803 2.0415 14.5245V14.3911C2.04149 11.8353 2.04148 9.8278 2.2522 8.26048C2.46813 6.65438 2.91967 5.38008 3.9209 4.37885C4.92213 3.37762 6.19643 2.92608 7.80253 2.71014C9.36985 2.49942 11.3773 2.49944 13.9331 2.49945H14.0665Z\"\r\n fill=\"var(--color-icon-danger, #B51726)\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M12.8335 19.7075C12.8335 19.0632 13.3535 18.5409 13.9949 18.5409H14.0054C14.6468 18.5409 15.1668 19.0632 15.1668 19.7075C15.1668 20.3519 14.6468 20.8742 14.0054 20.8742H13.9949C13.3535 20.8742 12.8335 20.3519 12.8335 19.7075Z\"\r\n fill=\"var(--color-icon-danger, #B51726)\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M14.0003 16.2075C13.356 16.2075 12.8336 15.6852 12.8336 15.0409L12.8336 10.3742C12.8336 9.72985 13.356 9.20752 14.0003 9.20752C14.6446 9.20752 15.167 9.72985 15.167 10.3742L15.167 15.0409C15.167 15.6852 14.6446 16.2075 14.0003 16.2075Z\"\r\n fill=\"var(--color-icon-danger, #B51726)\"\r\n />\r\n </svg>\r\n ) : (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"28\" viewBox=\"0 0 28 28\" fill=\"none\" class={`svg_icon ${this.internalColor}`}>\r\n <path\r\n opacity=\"0.4\"\r\n d=\"M14.0667 2.04163C16.6225 2.04161 18.63 2.0416 20.1973 2.25232C21.8034 2.46825 23.0777 2.91979 24.079 3.92102C25.0802 4.92226 25.5317 6.19655 25.7477 7.80265C25.9584 9.36996 25.9584 11.3774 25.9584 13.9332V13.9333V14.0667V14.0667C25.9584 16.6225 25.9584 18.63 25.7477 20.1973C25.5317 21.8034 25.0802 23.0777 24.079 24.0789C23.0777 25.0801 21.8034 25.5317 20.1973 25.7476C18.63 25.9583 16.6226 25.9583 14.0668 25.9583H14.0667H13.9333H13.9333C11.3775 25.9583 9.37003 25.9583 7.80271 25.7476C6.19661 25.5317 4.92232 25.0801 3.92109 24.0789C2.91985 23.0777 2.46831 21.8034 2.25238 20.1973C2.04166 18.6299 2.04167 16.6225 2.04169 14.0667V13.9333C2.04167 11.3774 2.04166 9.36997 2.25238 7.80265C2.46831 6.19655 2.91985 4.92226 3.92109 3.92102C4.92232 2.91979 6.19661 2.46825 7.80271 2.25232C9.37003 2.0416 11.3775 2.04161 13.9333 2.04163H14.0667Z\"\r\n fill=\"var(--color-icon, #4B5565)\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M13.6289 12.2818C13.9171 12.3206 14.3158 12.4243 14.6541 12.7626C14.9924 13.101 15.0962 13.4997 15.1349 13.7879C15.167 14.0266 15.1669 14.3043 15.1667 14.5375C15.1667 14.553 15.1667 14.5683 15.1667 14.5834V19.2501C15.1667 19.8944 14.6444 20.4167 14 20.4167C13.3557 20.4167 12.8334 19.8944 12.8334 19.2501V14.5834C12.189 14.5834 11.6667 14.0611 11.6667 13.4167C11.6667 12.7724 12.189 12.2501 12.8334 12.2501C12.8485 12.2501 12.8638 12.2501 12.8793 12.2501C13.1125 12.2499 13.3901 12.2497 13.6289 12.2818Z\"\r\n fill=\"var(--color-icon, #4B5565)\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M12.8333 8.75004C12.8333 8.10571 13.3533 7.58337 13.9947 7.58337H14.0051C14.6466 7.58337 15.1666 8.10571 15.1666 8.75004C15.1666 9.39437 14.6466 9.91671 14.0051 9.91671H13.9947C13.3533 9.91671 12.8333 9.39437 12.8333 8.75004Z\"\r\n fill=\"var(--color-icon, #4B5565)\"\r\n />\r\n </svg>\r\n )}\r\n </div>\r\n <div class={`content ${this.size} ${this.actions ? ' actions' : ''}`}>\r\n <div class={`text ${this.size}`}>\r\n <p class={`text-md-semi-bold main_text_${this.internalColor}`}>{this.mainText}</p>\r\n {this.showSupportingText && <p class={`text-sm-regular supporting_text_${this.internalColor}`}>{this.supportingText}</p>}\r\n </div>\r\n {this.actions && (\r\n <div class={`actions ${this.size} ${!this.showSupportingText ? 'only_actions' : ''}`}>\r\n {this.color === 'default' ? (\r\n <>\r\n <gb-button size=\"sm\" icon=\"default\" state=\"default\" hierarchy=\"link_gray\">\r\n <p>Dismiss</p>\r\n </gb-button>\r\n <gb-button size=\"sm\" icon=\"default\" state=\"default\" hierarchy=\"link_color\">\r\n <p>View changes</p>\r\n </gb-button>\r\n </>\r\n ) : (\r\n <>\r\n <gb-toast-button state={StateEnum.Default} color={this.internalColor}>\r\n <p>Dismiss</p>\r\n </gb-toast-button>\r\n <gb-toast-button state={StateEnum.Default} color={this.internalColor}>\r\n <p>View changes</p>\r\n </gb-toast-button>\r\n </>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n {this.xCloseButton && (\r\n <gb-button-close\r\n size=\"sm\"\r\n color={this.internalColor === 'default' ? 'gray' : this.internalColor === 'gray' ? 'gray' : this.internalColor}\r\n class={`close_button ${this.size}`}\r\n onClick={() => this.closeToast()}\r\n ></gb-button-close>\r\n )}\r\n </>\r\n )}\r\n {this.size === 'full_width' && (\r\n <div class={`container ${this.breakpoint}`}>\r\n <div class={`full_width_content ${this.breakpoint}`}>\r\n <div class={`inner_content ${this.breakpoint}`}>\r\n <div class={`icon_container`}>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"28\" height=\"28\" viewBox=\"0 0 28 28\" fill=\"none\" class={`svg_icon ${this.internalColor}`}>\r\n <path\r\n opacity=\"0.4\"\r\n d=\"M14.0667 2.04163C16.6225 2.04161 18.63 2.0416 20.1973 2.25232C21.8034 2.46825 23.0777 2.91979 24.079 3.92102C25.0802 4.92226 25.5317 6.19655 25.7477 7.80265C25.9584 9.36996 25.9584 11.3774 25.9584 13.9332V13.9333V14.0667V14.0667C25.9584 16.6225 25.9584 18.63 25.7477 20.1973C25.5317 21.8034 25.0802 23.0777 24.079 24.0789C23.0777 25.0801 21.8034 25.5317 20.1973 25.7476C18.63 25.9583 16.6226 25.9583 14.0668 25.9583H14.0667H13.9333H13.9333C11.3775 25.9583 9.37003 25.9583 7.80271 25.7476C6.19661 25.5317 4.92232 25.0801 3.92109 24.0789C2.91985 23.0777 2.46831 21.8034 2.25238 20.1973C2.04166 18.6299 2.04167 16.6225 2.04169 14.0667V13.9333C2.04167 11.3774 2.04166 9.36997 2.25238 7.80265C2.46831 6.19655 2.91985 4.92226 3.92109 3.92102C4.92232 2.91979 6.19661 2.46825 7.80271 2.25232C9.37003 2.0416 11.3775 2.04161 13.9333 2.04163H14.0667Z\"\r\n fill=\"#4B5565\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M13.6289 12.2818C13.9171 12.3206 14.3158 12.4243 14.6541 12.7626C14.9924 13.101 15.0962 13.4997 15.1349 13.7879C15.167 14.0266 15.1669 14.3043 15.1667 14.5375C15.1667 14.553 15.1667 14.5683 15.1667 14.5834V19.2501C15.1667 19.8944 14.6444 20.4167 14 20.4167C13.3557 20.4167 12.8334 19.8944 12.8334 19.2501V14.5834C12.189 14.5834 11.6667 14.0611 11.6667 13.4167C11.6667 12.7724 12.189 12.2501 12.8334 12.2501C12.8485 12.2501 12.8638 12.2501 12.8793 12.2501C13.1125 12.2499 13.3901 12.2497 13.6289 12.2818Z\"\r\n fill=\"#4B5565\"\r\n />\r\n <path\r\n fill-rule=\"evenodd\"\r\n clip-rule=\"evenodd\"\r\n d=\"M12.8333 8.75004C12.8333 8.10571 13.3533 7.58337 13.9947 7.58337H14.0051C14.6466 7.58337 15.1666 8.10571 15.1666 8.75004C15.1666 9.39437 14.6466 9.91671 14.0051 9.91671H13.9947C13.3533 9.91671 12.8333 9.39437 12.8333 8.75004Z\"\r\n fill=\"#4B5565\"\r\n />\r\n </svg>\r\n </div>\r\n <div class={`text ${this.size} ${this.breakpoint}`}>\r\n <p class={`text-sm-semi-bold main_text_${this.internalColor}`}>{this.mainText}</p>\r\n {this.showSupportingText && <p class={`text-xs-regular supporting_text_${this.internalColor}`}>{this.supportingText}</p>}\r\n </div>\r\n </div>\r\n {this.actions && (\r\n <div class={`actions ${this.size} ${this.breakpoint} ${!this.showSupportingText ? 'only_actions' : ''}`}>\r\n {this.color === 'default' ? (\r\n <>\r\n <gb-button size=\"sm\" icon=\"default\" state=\"default\" hierarchy=\"link_gray\">\r\n <p>Dismiss</p>\r\n </gb-button>\r\n <gb-button size=\"sm\" icon=\"default\" state=\"default\" hierarchy=\"link_color\">\r\n <p>View changes</p>\r\n </gb-button>\r\n </>\r\n ) : (\r\n <>\r\n <gb-toast-button state={StateEnum.Default} color={this.internalColor}>\r\n <p>Dismiss</p>\r\n </gb-toast-button>\r\n <gb-toast-button state={StateEnum.Default} color={this.internalColor}>\r\n <p>View changes</p>\r\n </gb-toast-button>\r\n </>\r\n )}\r\n </div>\r\n )}\r\n {this.xCloseButton && (\r\n <gb-button-close\r\n size=\"sm\"\r\n color={this.internalColor === 'default' ? 'gray' : this.internalColor === 'gray' ? 'gray' : this.internalColor}\r\n class={`close_button ${this.breakpoint}`}\r\n onClick={() => this.closeToast()}\r\n ></gb-button-close>\r\n )}\r\n </div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n.toast_button{\r\n width: fit-content;\r\n cursor: pointer;\r\n}\r\n\r\n/* Toast Button Color Styles */\r\n.toast_button.gray{\r\n color: var(--color-text, #4B5565);\r\n}\r\n\r\n.toast_button.information{\r\n color: var(--color-text-information, #064E94);\r\n}\r\n\r\n.toast_button.error{\r\n color: var(--color-text-danger, #B51726);\r\n}\r\n\r\n.toast_button.success{\r\n color: var(--color-text-success, #079455);\r\n}\r\n\r\n.toast_button.warning{\r\n color: var(--color-text-warning, #DC6803);\r\n}\r\n\r\n/* Toast Button State Styles */\r\n.toast_button:hover ::slotted(p){\r\n text-decoration: underline;\r\n}\r\n\r\n.toast_button:active ::slotted(p){\r\n text-decoration: none;\r\n}\r\n\r\n.toast_button.gray:active ::slotted(p){\r\n color: var(--color-text-bold, #202939);\r\n}\r\n\r\n.toast_button.information:active ::slotted(p){\r\n color: var(--color-text-information-bold, #042F59);\r\n}\r\n\r\n.toast_button.error:active ::slotted(p){\r\n color: var(--color-text-danger-bold, #8C121D);\r\n}\r\n\r\n.toast_button.success:active ::slotted(p){\r\n color: var(--color-text-success-bold, #085D3A);\r\n}\r\n.toast_button.warning:active ::slotted(p){\r\n color: var(--color-text-warning-bold, #93370D);\r\n}\r\n\r\n.toast_button.disabled{\r\n cursor: not-allowed;\r\n pointer-events: none;\r\n}\r\n\r\n.toast_button.disabled ::slotted(p){\r\n color: var(--color-text-disabled, #CDD5DF);\r\n}","import { Component, Element, Prop, h } from \"@stencil/core\";\r\nimport { GeneralColors, StateEnum } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-toast-button',\r\n styleUrl: 'gb-toast-button.css',\r\n shadow: true\r\n})\r\n\r\nexport class GbToastButton {\r\n @Prop() state: StateEnum;\r\n @Prop() color: GeneralColors;\r\n @Element() el: HTMLElement;\r\n\r\n componentDidLoad() {\r\n const slottedContent = this.el.querySelector('p');\r\n\r\n slottedContent.classList.add('text-sm-semi-bold');\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`toast_button ${this.state} ${this.color}`}>\r\n <slot></slot>\r\n </div>\r\n );\r\n }\r\n}",".toggle_div{\r\n display: flex;\r\n justify-content: space-between;\r\n width: fit-content;\r\n}\r\n\r\n.toggle_div.sm{\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.toggle_div.md{\r\n gap: var(--spacing-3);\r\n}\r\n\r\n.text{\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n gap: var(--spacing-2);\r\n}\r\n\r\n.text.div_centered{\r\n padding-bottom: 0.2rem;\r\n}\r\n\r\n::slotted(p){\r\n color: var(--color-text, #4B5565) !important;\r\n}","import { Component, Element, Event, EventEmitter, h, Prop, Fragment } from '@stencil/core';\r\nimport { GeneralSizes, StateEnum } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-toggle',\r\n styleUrl: 'gb-toggle.css',\r\n shadow: true,\r\n})\r\nexport class GbToggle {\r\n @Prop() size: GeneralSizes;\r\n @Prop() state: StateEnum;\r\n @Prop() text: boolean = false;\r\n @Prop() supportingText: boolean = false;\r\n @Prop() pressed: boolean = false;\r\n @Prop() position: 'left' | 'right' = 'right';\r\n @Element() el: HTMLElement;\r\n @Event() toggleClicked: EventEmitter<boolean>;\r\n\r\n getMainTextClass() {\r\n switch (this.size) {\r\n case 'sm':\r\n return `text-sm-medium`;\r\n case 'md':\r\n return `text-md-medium`;\r\n }\r\n }\r\n\r\n getSupportingTextClass() {\r\n switch (this.size) {\r\n case 'sm':\r\n return 'text-sm-regular';\r\n case 'md':\r\n return 'text-md-regular';\r\n }\r\n }\r\n\r\n onToggle(event) {\r\n this.toggleClicked.emit(event.detail);\r\n }\r\n\r\n componentDidLoad() {\r\n const mainTextSlot = this.el.querySelector('[slot=\"main_text\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"supporting_text\"]');\r\n const mainDiv = this.el.querySelector('.text');\r\n\r\n if (mainTextSlot) {\r\n mainTextSlot.classList.add(this.getMainTextClass());\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add(this.getSupportingTextClass());\r\n }\r\n\r\n if (mainDiv) {\r\n if (!this.supportingText) {\r\n mainDiv.classList.add('div_centered');\r\n }\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`toggle_div ${this.size}`}>\r\n {this.position === 'left' && (\r\n <>\r\n {this.text && (\r\n <div class=\"text\">\r\n <slot name=\"main_text\"></slot>\r\n {this.supportingText && <slot name=\"supporting_text\"></slot>}\r\n </div>\r\n )}\r\n </>\r\n )}\r\n <div class=\"toggle_base\">\r\n <gb-toggle-base size={this.size} state={this.state} pressed={this.pressed} onToggleClicked={this.onToggle.bind(this)}></gb-toggle-base>\r\n </div>\r\n {this.position === 'right' && (\r\n <>\r\n {this.text && (\r\n <div class=\"text\">\r\n <slot name=\"main_text\"></slot>\r\n {this.supportingText && <slot name=\"supporting_text\"></slot>}\r\n </div>\r\n )}\r\n </>\r\n )}\r\n </div>\r\n );\r\n }\r\n}\r\n","@import './../../global/global.css';\r\n\r\n/* Basic Styles for the Toggle */\r\ninput[type=\"checkbox\"] {\r\n display: none; /* Hide native checkbox */\r\n}\r\n\r\nlabel {\r\n display: inline-block;\r\n border-radius: var(--rounded-lg);\r\n position: relative;\r\n background-color: var(--color-background-gray-subtle, #E3E8EF);\r\n cursor: pointer;\r\n transition: background-color 0.3s ease;\r\n padding: 0.125rem;\r\n}\r\n\r\nlabel.sm{\r\n width: 2.25rem;\r\n height: 1.25rem;\r\n}\r\n\r\nlabel.md{\r\n width: 2.75rem;\r\n height: 1.5rem;\r\n}\r\n\r\nlabel.pressed.default {\r\n background-color: var(--color-background-selected, #075db2);\r\n}\r\n\r\nlabel.disabled{\r\n background-color: var(--color-background-disabled, #F6F8FA);\r\n}\r\n\r\nlabel.pressed.disabled {\r\n background-color: var(--color-background-gray-subtle, #E3E8EF); /* Light gray background when pressed and in disabled state */\r\n}\r\n\r\n/* Circle inside the toggle */\r\nlabel::before {\r\n content: '';\r\n position: absolute;\r\n background-color: var(--color-icon-inverse, #FFFFFF);\r\n border-radius: 50%;\r\n transition: transform 0.3s ease;\r\n filter: drop-shadow(0px 1px 2px rgba(16, 24, 40, 0.06)) drop-shadow(0px 1px 3px rgba(16, 24, 40, 0.10));\r\n}\r\n\r\nlabel.sm::before{\r\n width: 1rem;\r\n height: 1rem;\r\n top: 0.25rem;\r\n left: 0.25rem;\r\n}\r\n\r\nlabel.md::before{\r\n width: 1.25rem;\r\n height: 1.25rem;\r\n top: 0.24rem;\r\n left: 0.25rem;\r\n}\r\n\r\nlabel.sm.pressed::before {\r\n transform: translateX(16px); /* Move the white circle to the right when pressed */\r\n}\r\n\r\nlabel.md.pressed::before {\r\n transform: translateX(20px); /* Move the white circle to the right when pressed */\r\n}\r\n\r\nlabel.disabled::before {\r\n background-color: var(--color-icon-disabled, #CDD5DF); /* Change circle background when disabled */\r\n}\r\n\r\nlabel.pressed.disabled::before {\r\n background-color: var(--color-background-gray-bold, #9AA4B2); /* Change circle background when disabled */\r\n}\r\n\r\n/* Checkmark SVG Styles */\r\n.default_checked_svg,\r\n.disabled_checked_svg {\r\n position: absolute;\r\n transform: translate(-50%, -50%);\r\n width: 12px;\r\n height: 12px;\r\n display: none; /* Hidden by default */\r\n}\r\n\r\n.pressed .default_checked_svg {\r\n display: block; /* Show checkmark when pressed and default */\r\n}\r\n\r\n.pressed .disabled_checked_svg {\r\n display: block; /* Show checkmark when pressed and disabled */\r\n}\r\n\r\n.default_checked_svg.sm,\r\n.disabled_checked_svg.sm{\r\n top: 0.75rem;\r\n right: 0;\r\n}\r\n\r\n.default_checked_svg.md,\r\n.disabled_checked_svg.md{\r\n top: 0.85rem;\r\n right: 0.1rem;\r\n}\r\n\r\n\r\n","import { Component, Event, EventEmitter, h, Prop } from \"@stencil/core\";\r\nimport { GeneralSizes, StateEnum } from \"../../models/reusableModels\";\r\n\r\n@Component({\r\n tag: 'gb-toggle-base',\r\n styleUrl: 'gb-toggle-base.css',\r\n shadow: true,\r\n})\r\nexport class GbToggleBase {\r\n @Prop() size: GeneralSizes;\r\n @Prop() state: StateEnum;\r\n @Prop({ mutable: true }) pressed: boolean = false;\r\n @Event() toggleClicked: EventEmitter<boolean>;\r\n\r\n private handleToggleClick() {\r\n if (this.state === 'default') {\r\n this.pressed = !this.pressed;\r\n this.toggleClicked.emit(this.pressed);\r\n }\r\n }\r\n\r\n render() {\r\n return [\r\n <input type=\"checkbox\" id=\"customCheckbox\" class={`${this.pressed ? 'pressed' : ''}`} readonly />,\r\n <label\r\n onClick={() => this.handleToggleClick()}\r\n class={`${this.size} ${this.state} ${this.pressed ? 'pressed' : ''}`}\r\n htmlFor=\"customCheckbox\"\r\n >\r\n {this.pressed && this.state === 'default' ? (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" class={`default_checked_svg ${this.size}`}>\r\n <path\r\n d=\"M2.08325 6.04167C2.08325 6.04167 2.70825 6.04167 3.54159 7.5C3.54159 7.5 5.85776 3.68056 7.91659 2.91667\"\r\n stroke=\"#075DB2\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n ) : this.pressed && this.state === 'disabled' ? (\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10\" height=\"10\" viewBox=\"0 0 10 10\" fill=\"none\" class={`disabled_checked_svg ${this.size}`}>\r\n <path\r\n d=\"M2.08325 6.04167C2.08325 6.04167 2.70825 6.04167 3.54159 7.5C3.54159 7.5 5.85776 3.68056 7.91659 2.91667\"\r\n stroke=\"#E3E8EF\"\r\n stroke-width=\"1.5\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"\r\n />\r\n </svg>\r\n ) : null}\r\n </label>,\r\n ];\r\n }\r\n}","@import './../../global/global.css';\r\n\r\n:host{\r\n display: block;\r\n}\r\n\r\n.tooltip_container {\r\n position: relative;\r\n}\r\n \r\n.tooltip {\r\n position: absolute;\r\n background-color: var(--color-surface-bold, #FCFCFC);\r\n border: 0.5px solid var(--color-border-subtler, #E3E8EF);\r\n border-radius: var(--rounded-sm);\r\n box-shadow: var(--shadow-sm);\r\n padding: var(--spacing-3);\r\n z-index: 100;\r\n}\r\n\r\n.tooltip_content{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-3);\r\n \r\n}\r\n \r\n.arrow {\r\n width: 0;\r\n height: 0;\r\n border-style: solid;\r\n position: absolute;\r\n}\r\n\r\n.arrow::before {\r\n content: '';\r\n position: absolute;\r\n width: 0;\r\n height: 0;\r\n border-style: solid;\r\n}\r\n \r\n.arrow.bottom_center {\r\n top: 100%;\r\n left: 50%;\r\n border-width: 7.5px 7.5px 0 7.5px;\r\n border-color: var(--color-border-subtler, #E3E8EF) transparent transparent transparent;\r\n transform: translateX(-50%);\r\n}\r\n\r\n.arrow.bottom_center::before {\r\n left: -0.39rem;\r\n bottom: 0.1rem;\r\n border-width: 0 9.6px 9.6px 9.6px;\r\n transform: translateY(-50%) rotate(135deg);\r\n border-color: transparent var(--color-surface-bold, #FCFCFC) transparent transparent;\r\n}\r\n \r\n.arrow.left {\r\n top: 50%;\r\n right: 100%;\r\n border-width: 6px 0 6px 6px;\r\n border-color: transparent transparent transparent var(--color-border-subtler, #E3E8EF);\r\n transform: translateY(-50%) rotate(180deg);\r\n}\r\n\r\n.arrow.left::before {\r\n left: -8px;\r\n top: 50%;\r\n transform: translateY(-50%);\r\n border-width: 7.5px 0 7.5px 7.5px;\r\n border-color: transparent transparent transparent var(--color-surface-bold, #FCFCFC);\r\n}\r\n\r\n.arrow.bottom_left {\r\n top: 100%;\r\n left: 20%;\r\n border-width: 7.5px 7.5px 0 7.5px;\r\n border-color: var(--color-border-subtler, #E3E8EF) transparent transparent transparent;\r\n transform: translateX(-50%);\r\n}\r\n\r\n.arrow.bottom_left::before {\r\n left: -0.39rem;\r\n bottom: 0.1rem;\r\n border-width: 0 9.6px 9.6px 9.6px;\r\n transform: translateY(-50%) rotate(135deg);\r\n border-color: transparent var(--color-surface-bold, #FCFCFC) transparent transparent;\r\n}\r\n \r\n.arrow.right {\r\n top: 50%;\r\n left: 100%;\r\n border-width: 7px 7px 7px 0;\r\n border-color: transparent var(--color-border-subtler, #E3E8EF) transparent transparent;\r\n transform: translateY(-50%) rotate(-180deg);\r\n}\r\n\r\n.arrow.right::before {\r\n left: 0.5px;\r\n top: 50%;\r\n border-width: 6.5px 6.5px 6.5px 0;\r\n transform: translateY(-50%) rotate(0deg);\r\n border-color: transparent var(--color-surface-bold, #FCFCFC) transparent transparent;\r\n}\r\n\r\n.arrow.bottom_right {\r\n top: 100%;\r\n right: 5%;\r\n border-width: 7.5px 7.5px 0 7.5px;\r\n border-color: var(--color-border-subtler, #E3E8EF) transparent transparent transparent;\r\n transform: translateX(-50%);\r\n}\r\n\r\n.arrow.bottom_right::before {\r\n left: -0.39rem;\r\n bottom: 0.1rem;\r\n border-width: 0 9.6px 9.6px 9.6px;\r\n transform: translateY(-50%) rotate(135deg);\r\n border-color: transparent var(--color-surface-bold, #FCFCFC) transparent transparent;\r\n}\r\n \r\n.arrow.top_center {\r\n bottom: 100%;\r\n right: 45%;\r\n border-width: 0 7.5px 7.5px 7.5px;\r\n border-color: transparent transparent var(--color-border-subtler, #E3E8EF) transparent;\r\n}\r\n\r\n.arrow.top_center::before {\r\n left: -12.8px;\r\n bottom: -20.25px;\r\n border-width: 0 9.5px 9.5px 9.5px;\r\n transform: translateY(-50%) rotate(-45deg);\r\n border-color: transparent var(--color-surface-bold, #FCFCFC) transparent transparent;\r\n}\r\n\r\n::slotted([slot=\"label\"]){\r\n color: var(--color-text, #4B5565) !important;\r\n}\r\n\r\n::slotted([slot=\"label\"].nowrap){\r\n white-space: nowrap;\r\n}\r\n\r\n::slotted([slot=\"label\"].wrap_label){\r\n white-space: wrap;\r\n max-width: 10rem;\r\n}\r\n\r\n::slotted([slot=\"supporting_text\"]){\r\n white-space: wrap;\r\n color: var(--color-text-subtle, #697586) !important;\r\n margin-top: 5rem;\r\n min-width: fit-content;\r\n max-width: 18.5rem;\r\n}","import { Component, Element, Prop, h } from '@stencil/core';\r\nimport { ArrowPositions } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-tooltip',\r\n styleUrl: 'gb-tooltip.css',\r\n shadow: true,\r\n})\r\nexport class GbTooltip {\r\n @Prop() showArrow: boolean = false;\r\n @Prop() arrow: ArrowPositions = 'bottom_center';\r\n @Prop() showSupportingText: boolean = false;\r\n @Prop() noWrap: boolean = true;\r\n @Element() el: HTMLElement;\r\n\r\n componentDidLoad() {\r\n const mainTextSlot = this.el.querySelector('[slot=\"label\"]');\r\n const supportingTextSlot = this.el.querySelector('[slot=\"supporting_text\"]');\r\n\r\n if (mainTextSlot) {\r\n mainTextSlot.classList.add('text-xs-semi-bold');\r\n }\r\n\r\n if (mainTextSlot && this.noWrap) {\r\n mainTextSlot.classList.add('nowrap');\r\n }\r\n\r\n if (mainTextSlot && !this.showSupportingText && !this.noWrap) {\r\n mainTextSlot.classList.add('wrap_label');\r\n }\r\n\r\n if (supportingTextSlot) {\r\n supportingTextSlot.classList.add('text-xs-regular');\r\n }\r\n }\r\n\r\n getArrowClass() {\r\n return this.showArrow ? `arrow ${this.arrow}` : '';\r\n }\r\n\r\n render() {\r\n return (\r\n <div class=\"tooltip_container\">\r\n <div class=\"tooltip\">\r\n {this.showArrow && <div class={this.getArrowClass()}></div>}\r\n <div class=\"tooltip_content\">\r\n <slot name=\"label\" />\r\n {this.showSupportingText && <slot name=\"supporting_text\" />}\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n }\r\n}\r\n",".vertical_tab_div{\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--spacing-1);\r\n width: 100%;\r\n}","import { Component, Event, EventEmitter, Prop, State, Watch, h } from '@stencil/core';\r\nimport { GeneralSizes, TabTypes } from '../../models/reusableModels';\r\n\r\n@Component({\r\n tag: 'gb-vertical-tabs',\r\n styleUrl: 'gb-vertical-tabs.css',\r\n shadow: true,\r\n})\r\nexport class GbVerticalTabs {\r\n @Prop() size: GeneralSizes;\r\n @Prop() type: TabTypes;\r\n @Prop({ mutable: true }) activeIndex: number = 0;\r\n @Prop() tabs: { name: string; index: number }[] = [\r\n // {\r\n // name: 'Hiiii',\r\n // index: 0,\r\n // },\r\n // {\r\n // name: 'There',\r\n // index: 1,\r\n // },\r\n ];\r\n @State() internalTabs: { name: string; index: number }[] = [...this.tabs];\r\n @Event() tabItemClicked: EventEmitter<{ index: number; label: string }>;\r\n\r\n @Watch('tabs')\r\n onTabsChanged(newTabs: { name: string; index: number }[]) {\r\n this.internalTabs = newTabs;\r\n }\r\n\r\n componentWillLoad() {\r\n this.internalTabs = this.tabs;\r\n }\r\n\r\n async handleTabClick(index: number, label: string) {\r\n this.activeIndex = index;\r\n this.tabItemClicked.emit({ index, label });\r\n }\r\n\r\n render() {\r\n return (\r\n <div class={`vertical_tab_div`}>\r\n {this.internalTabs.map((tab, index) => (\r\n <gb-tab-button-base\r\n size={this.size}\r\n type={this.type === 'button_gray_border' ? 'button_white' : this.type}\r\n tab-name={tab.name}\r\n current={this.activeIndex === index}\r\n onClick={() => this.handleTabClick(index, tab.name)}\r\n alignment=\"vertical\"\r\n ></gb-tab-button-base>\r\n ))}\r\n </div>\r\n );\r\n }\r\n}\r\n"],"version":3}