@govtechsg/sgds-web-component 2.0.0-rc.1 → 2.0.0-rc.2

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 (78) hide show
  1. package/components/Accordion/accordion.cjs.js +1 -1
  2. package/components/Accordion/accordion.js +1 -1
  3. package/components/Accordion/index.umd.js +1 -1
  4. package/components/ActionCard/index.umd.js +1938 -1836
  5. package/components/ActionCard/index.umd.js.map +1 -1
  6. package/components/ActionCard/sgds-action-card.cjs.js +2 -2
  7. package/components/ActionCard/sgds-action-card.cjs.js.map +1 -1
  8. package/components/ActionCard/sgds-action-card.d.ts +1 -1
  9. package/components/ActionCard/sgds-action-card.js +1 -1
  10. package/components/ActionCard/sgds-action-card.js.map +1 -1
  11. package/components/Alert/index.umd.js +200 -98
  12. package/components/Alert/index.umd.js.map +1 -1
  13. package/components/Alert/sgds-alert.cjs.js +2 -2
  14. package/components/Alert/sgds-alert.cjs.js.map +1 -1
  15. package/components/Alert/sgds-alert.d.ts +1 -1
  16. package/components/Alert/sgds-alert.js +1 -1
  17. package/components/Alert/sgds-alert.js.map +1 -1
  18. package/components/ComboBox/index.umd.js +229 -127
  19. package/components/ComboBox/index.umd.js.map +1 -1
  20. package/components/ComboBox/sgds-combo-box.cjs.js +2 -2
  21. package/components/ComboBox/sgds-combo-box.cjs.js.map +1 -1
  22. package/components/ComboBox/sgds-combo-box.d.ts +1 -1
  23. package/components/ComboBox/sgds-combo-box.js +1 -1
  24. package/components/ComboBox/sgds-combo-box.js.map +1 -1
  25. package/components/Datepicker/index.umd.js +7836 -7734
  26. package/components/Datepicker/index.umd.js.map +1 -1
  27. package/components/Datepicker/sgds-datepicker.cjs.js +2 -2
  28. package/components/Datepicker/sgds-datepicker.cjs.js.map +1 -1
  29. package/components/Datepicker/sgds-datepicker.d.ts +1 -1
  30. package/components/Datepicker/sgds-datepicker.js +1 -1
  31. package/components/Datepicker/sgds-datepicker.js.map +1 -1
  32. package/components/Drawer/index.umd.js +200 -98
  33. package/components/Drawer/index.umd.js.map +1 -1
  34. package/components/Drawer/sgds-drawer.cjs.js +2 -2
  35. package/components/Drawer/sgds-drawer.cjs.js.map +1 -1
  36. package/components/Drawer/sgds-drawer.d.ts +1 -1
  37. package/components/Drawer/sgds-drawer.js +1 -1
  38. package/components/Drawer/sgds-drawer.js.map +1 -1
  39. package/components/Dropdown/index.umd.js +229 -127
  40. package/components/Dropdown/index.umd.js.map +1 -1
  41. package/components/Dropdown/sgds-dropdown.cjs.js +2 -2
  42. package/components/Dropdown/sgds-dropdown.cjs.js.map +1 -1
  43. package/components/Dropdown/sgds-dropdown.d.ts +1 -1
  44. package/components/Dropdown/sgds-dropdown.js +1 -1
  45. package/components/Dropdown/sgds-dropdown.js.map +1 -1
  46. package/components/FileUpload/index.umd.js +229 -127
  47. package/components/FileUpload/index.umd.js.map +1 -1
  48. package/components/FileUpload/sgds-file-upload.cjs.js +2 -2
  49. package/components/FileUpload/sgds-file-upload.cjs.js.map +1 -1
  50. package/components/FileUpload/sgds-file-upload.d.ts +1 -1
  51. package/components/FileUpload/sgds-file-upload.js +1 -1
  52. package/components/FileUpload/sgds-file-upload.js.map +1 -1
  53. package/components/Modal/index.umd.js +200 -98
  54. package/components/Modal/index.umd.js.map +1 -1
  55. package/components/Modal/sgds-modal.cjs.js +2 -2
  56. package/components/Modal/sgds-modal.cjs.js.map +1 -1
  57. package/components/Modal/sgds-modal.d.ts +1 -1
  58. package/components/Modal/sgds-modal.js +1 -1
  59. package/components/Modal/sgds-modal.js.map +1 -1
  60. package/components/QuantityToggle/index.umd.js +200 -98
  61. package/components/QuantityToggle/index.umd.js.map +1 -1
  62. package/components/QuantityToggle/sgds-quantity-toggle.cjs.js +2 -2
  63. package/components/QuantityToggle/sgds-quantity-toggle.cjs.js.map +1 -1
  64. package/components/QuantityToggle/sgds-quantity-toggle.d.ts +1 -1
  65. package/components/QuantityToggle/sgds-quantity-toggle.js +1 -1
  66. package/components/QuantityToggle/sgds-quantity-toggle.js.map +1 -1
  67. package/components/Toast/index.umd.js +1938 -1836
  68. package/components/Toast/index.umd.js.map +1 -1
  69. package/components/Toast/sgds-toast.cjs.js +2 -2
  70. package/components/Toast/sgds-toast.cjs.js.map +1 -1
  71. package/components/Toast/sgds-toast.d.ts +1 -1
  72. package/components/Toast/sgds-toast.js +1 -1
  73. package/components/Toast/sgds-toast.js.map +1 -1
  74. package/components/index.umd.js +201 -99
  75. package/components/index.umd.js.map +1 -1
  76. package/index.umd.js +201 -99
  77. package/index.umd.js.map +1 -1
  78. package/package.json +2 -2
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var tslib = require('tslib');
6
- var litElement_js = require('@open-wc/scoped-elements/lit-element.js');
6
+ var scopedElements = require('@open-wc/scoped-elements');
7
7
  var lit = require('lit');
8
8
  var decorators_js = require('lit/decorators.js');
9
9
  var ref_js = require('lit/directives/ref.js');
@@ -23,7 +23,7 @@ var dropdown = require('../Dropdown/dropdown.cjs.js');
23
23
  * @event sgds-select - Emitted when the combo box's selected value changes.
24
24
  * @event sgds-input - Emitted when user input is received and its value changes.
25
25
  */
26
- class SgdsComboBox extends litElement_js.ScopedElementsMixin(dropdownListElement.DropdownListElement) {
26
+ class SgdsComboBox extends scopedElements.ScopedElementsMixin(dropdownListElement.DropdownListElement) {
27
27
  /**@internal */
28
28
  static get scopedElements() {
29
29
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"sgds-combo-box.cjs.js","sources":["../../../src/components/ComboBox/sgds-combo-box.ts"],"sourcesContent":["import { ScopedElementsMixin } from \"@open-wc/scoped-elements/lit-element.js\";\nimport { html } from \"lit\";\nimport { property, state } from \"lit/decorators.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { DropdownListElement } from \"../../base/dropdown-list-element\";\nimport { defaultValue } from \"../../utils/defaultvalue\";\nimport { watch } from \"../../utils/watch\";\nimport { SgdsDropdownItem } from \"../Dropdown/sgds-dropdown-item\";\nimport { SgdsInput } from \"../Input/sgds-input\";\nimport comboBoxStyle from \"./combo-box.css\";\nimport dropdownStyle from \"../Dropdown/dropdown.css\";\ntype FilterFunction = (inputValue: string, menuItem: string) => boolean;\n\n/**\n * @summary ComboBox component is used for users to make one or more selections from a list.\n *\n * @slot icon - slot for form control icon to be displayed on the right of the input box.\n *\n * @event sgds-select - Emitted when the combo box's selected value changes.\n * @event sgds-input - Emitted when user input is received and its value changes.\n */\nexport class SgdsComboBox extends ScopedElementsMixin(DropdownListElement) {\n static styles = [...DropdownListElement.styles, comboBoxStyle, dropdownStyle];\n /**@internal */\n static get scopedElements() {\n return {\n \"sgds-input\": SgdsInput,\n \"sgds-dropdown-item\": SgdsDropdownItem\n };\n }\n constructor() {\n super();\n /**@internal */\n this.modifierOpt = [\n {\n name: \"offset\",\n options: {\n offset: [0, 10]\n }\n }\n ];\n }\n /** The input's label */\n @property({ reflect: true }) label = \"\";\n /** The input's hint text below the label */\n @property({ reflect: true }) hintText = \"\";\n /**The input's name attribute */\n @property({ reflect: true }) name: string;\n /**The input's placeholder text. */\n @property({ type: String, reflect: true }) placeholder = \"placeholder\";\n /**Autofocus the input */\n @property({ type: Boolean, reflect: true }) autofocus = false;\n /**Disables the input. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n /**Makes the input a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n /**Makes the input readonly. */\n @property({ type: Boolean, reflect: true }) readonly = false;\n /**The input's value attribute. */\n @property({ reflect: true }) value = \"\";\n /**Gets or sets the default value used to reset this element. The initial value corresponds to the one originally specified in the HTML that created this element. */\n @defaultValue()\n defaultValue = \"\";\n\n /** Allows invalidFeedback, invalid and valid styles to be visible with the input */\n @property({ type: Boolean, reflect: true }) hasFeedback = false;\n /**Feedback text for error state when validated */\n @property({ type: String, reflect: true }) invalidFeedback = \"\";\n\n /** Marks the component as invalid. Replace the pseudo :invalid selector for absent in custom elements */\n @property({ type: Boolean, reflect: true }) invalid = false;\n /** Marks the input as invalid. Replace the pseudo :valid selector for absent in custom elements */\n @property({ type: Boolean, reflect: true }) valid = false;\n\n /**The list of items to display in the dropdown. */\n @property({ type: Array }) menuList: string[] = [];\n\n /**The function used to determine if a menu item should be shown in the menu list, given the user's input value. */\n @property()\n filterFunction: FilterFunction = (inputValue: string, menuItem: string) => {\n const itemLowerCase = menuItem.toLowerCase();\n const valueLower = inputValue.toLowerCase();\n return itemLowerCase.startsWith(valueLower);\n };\n\n /**@internal */\n @state()\n private filteredMenuList: string[] = [];\n\n /**@internal */\n @watch(\"value\")\n _handleFilterMenu() {\n this.filteredMenuList = this.menuList.filter(item => this.filterFunction.call(null, this.value, item));\n\n if (!this.myDropdown || !this.bsDropdown) return;\n\n // To hide dropdown menu when filtered menuList is empty\n if (this.filteredMenuList.length === 0) {\n this.hideMenu();\n } else if (this.menuIsOpen) {\n this.showMenu();\n }\n }\n\n private _handleInputChange(e: CustomEvent) {\n this.showMenu();\n this.value = (e.target as SgdsInput).value;\n }\n\n private _handleSelectChange(e: KeyboardEvent | MouseEvent) {\n this.value = (e.target as HTMLButtonElement).innerText;\n this.handleSelectSlot(e);\n }\n\n render() {\n return html`\n <div class=\"sgds combobox dropdown\">\n <sgds-input\n class=\"dropdown-toggle\"\n label=${this.label}\n hintText=${this.hintText}\n name=${this.name}\n ${ref(this.myDropdown)}\n @click=${() => (this.filteredMenuList.length > 0 ? this.showMenu() : this.hideMenu())}\n placeholder=${this.placeholder}\n ?autofocus=${this.autofocus}\n ?disabled=${this.disabled}\n required=${this.required}\n ?readonly=${this.readonly}\n ?hasFeedback=${this.hasFeedback}\n invalidfeedback=${this.invalidFeedback}\n ?invalid=${this.invalid}\n ?valid=${this.valid}\n .value=${this.value}\n @sgds-input=${this._handleInputChange}\n role=\"combobox\"\n aria-expanded=${this.menuIsOpen}\n aria-autocomplete=\"list\"\n aria-controls=${this.dropdownMenuId}\n >\n </sgds-input>\n <div class=\"form-control-icon\">\n <slot name=\"icon\"></slot>\n </div>\n <ul id=${this.dropdownMenuId} class=\"dropdown-menu\" part=\"menu\" tabindex=\"-1\">\n ${this.filteredMenuList.map(\n item => html`<sgds-dropdown-item @click=${this._handleSelectChange}>${item}</sgds-dropdown-item>`\n )}\n </ul>\n </div>\n `;\n }\n}\n\nexport default SgdsComboBox;\n"],"names":["ScopedElementsMixin","DropdownListElement","SgdsInput","SgdsDropdownItem","html","ref","comboBoxStyle","dropdownStyle","__decorate","property","defaultValue","state","watch"],"mappings":"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"}
1
+ {"version":3,"file":"sgds-combo-box.cjs.js","sources":["../../../src/components/ComboBox/sgds-combo-box.ts"],"sourcesContent":["import { ScopedElementsMixin } from \"@open-wc/scoped-elements\";\nimport { html } from \"lit\";\nimport { property, state } from \"lit/decorators.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { DropdownListElement } from \"../../base/dropdown-list-element\";\nimport { defaultValue } from \"../../utils/defaultvalue\";\nimport { watch } from \"../../utils/watch\";\nimport { SgdsDropdownItem } from \"../Dropdown/sgds-dropdown-item\";\nimport { SgdsInput } from \"../Input/sgds-input\";\nimport comboBoxStyle from \"./combo-box.css\";\nimport dropdownStyle from \"../Dropdown/dropdown.css\";\ntype FilterFunction = (inputValue: string, menuItem: string) => boolean;\n\n/**\n * @summary ComboBox component is used for users to make one or more selections from a list.\n *\n * @slot icon - slot for form control icon to be displayed on the right of the input box.\n *\n * @event sgds-select - Emitted when the combo box's selected value changes.\n * @event sgds-input - Emitted when user input is received and its value changes.\n */\nexport class SgdsComboBox extends ScopedElementsMixin(DropdownListElement) {\n static styles = [...DropdownListElement.styles, comboBoxStyle, dropdownStyle];\n /**@internal */\n static get scopedElements() {\n return {\n \"sgds-input\": SgdsInput,\n \"sgds-dropdown-item\": SgdsDropdownItem\n };\n }\n constructor() {\n super();\n /**@internal */\n this.modifierOpt = [\n {\n name: \"offset\",\n options: {\n offset: [0, 10]\n }\n }\n ];\n }\n /** The input's label */\n @property({ reflect: true }) label = \"\";\n /** The input's hint text below the label */\n @property({ reflect: true }) hintText = \"\";\n /**The input's name attribute */\n @property({ reflect: true }) name: string;\n /**The input's placeholder text. */\n @property({ type: String, reflect: true }) placeholder = \"placeholder\";\n /**Autofocus the input */\n @property({ type: Boolean, reflect: true }) autofocus = false;\n /**Disables the input. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n /**Makes the input a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n /**Makes the input readonly. */\n @property({ type: Boolean, reflect: true }) readonly = false;\n /**The input's value attribute. */\n @property({ reflect: true }) value = \"\";\n /**Gets or sets the default value used to reset this element. The initial value corresponds to the one originally specified in the HTML that created this element. */\n @defaultValue()\n defaultValue = \"\";\n\n /** Allows invalidFeedback, invalid and valid styles to be visible with the input */\n @property({ type: Boolean, reflect: true }) hasFeedback = false;\n /**Feedback text for error state when validated */\n @property({ type: String, reflect: true }) invalidFeedback = \"\";\n\n /** Marks the component as invalid. Replace the pseudo :invalid selector for absent in custom elements */\n @property({ type: Boolean, reflect: true }) invalid = false;\n /** Marks the input as invalid. Replace the pseudo :valid selector for absent in custom elements */\n @property({ type: Boolean, reflect: true }) valid = false;\n\n /**The list of items to display in the dropdown. */\n @property({ type: Array }) menuList: string[] = [];\n\n /**The function used to determine if a menu item should be shown in the menu list, given the user's input value. */\n @property()\n filterFunction: FilterFunction = (inputValue: string, menuItem: string) => {\n const itemLowerCase = menuItem.toLowerCase();\n const valueLower = inputValue.toLowerCase();\n return itemLowerCase.startsWith(valueLower);\n };\n\n /**@internal */\n @state()\n private filteredMenuList: string[] = [];\n\n /**@internal */\n @watch(\"value\")\n _handleFilterMenu() {\n this.filteredMenuList = this.menuList.filter(item => this.filterFunction.call(null, this.value, item));\n\n if (!this.myDropdown || !this.bsDropdown) return;\n\n // To hide dropdown menu when filtered menuList is empty\n if (this.filteredMenuList.length === 0) {\n this.hideMenu();\n } else if (this.menuIsOpen) {\n this.showMenu();\n }\n }\n\n private _handleInputChange(e: CustomEvent) {\n this.showMenu();\n this.value = (e.target as SgdsInput).value;\n }\n\n private _handleSelectChange(e: KeyboardEvent | MouseEvent) {\n this.value = (e.target as HTMLButtonElement).innerText;\n this.handleSelectSlot(e);\n }\n\n render() {\n return html`\n <div class=\"sgds combobox dropdown\">\n <sgds-input\n class=\"dropdown-toggle\"\n label=${this.label}\n hintText=${this.hintText}\n name=${this.name}\n ${ref(this.myDropdown)}\n @click=${() => (this.filteredMenuList.length > 0 ? this.showMenu() : this.hideMenu())}\n placeholder=${this.placeholder}\n ?autofocus=${this.autofocus}\n ?disabled=${this.disabled}\n required=${this.required}\n ?readonly=${this.readonly}\n ?hasFeedback=${this.hasFeedback}\n invalidfeedback=${this.invalidFeedback}\n ?invalid=${this.invalid}\n ?valid=${this.valid}\n .value=${this.value}\n @sgds-input=${this._handleInputChange}\n role=\"combobox\"\n aria-expanded=${this.menuIsOpen}\n aria-autocomplete=\"list\"\n aria-controls=${this.dropdownMenuId}\n >\n </sgds-input>\n <div class=\"form-control-icon\">\n <slot name=\"icon\"></slot>\n </div>\n <ul id=${this.dropdownMenuId} class=\"dropdown-menu\" part=\"menu\" tabindex=\"-1\">\n ${this.filteredMenuList.map(\n item => html`<sgds-dropdown-item @click=${this._handleSelectChange}>${item}</sgds-dropdown-item>`\n )}\n </ul>\n </div>\n `;\n }\n}\n\nexport default SgdsComboBox;\n"],"names":["ScopedElementsMixin","DropdownListElement","SgdsInput","SgdsDropdownItem","html","ref","comboBoxStyle","dropdownStyle","__decorate","property","defaultValue","state","watch"],"mappings":"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"}
@@ -2,7 +2,7 @@ import { DropdownListElement } from "../../base/dropdown-list-element";
2
2
  import { SgdsDropdownItem } from "../Dropdown/sgds-dropdown-item";
3
3
  import { SgdsInput } from "../Input/sgds-input";
4
4
  type FilterFunction = (inputValue: string, menuItem: string) => boolean;
5
- declare const SgdsComboBox_base: typeof DropdownListElement & import("@open-wc/scoped-elements/lit-element.js").ScopedElementsHostConstructor;
5
+ declare const SgdsComboBox_base: typeof DropdownListElement & import("@open-wc/dedupe-mixin").Constructor<import("@open-wc/scoped-elements/types/src/types").ScopedElementsHost>;
6
6
  /**
7
7
  * @summary ComboBox component is used for users to make one or more selections from a list.
8
8
  *
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from 'tslib';
2
- import { ScopedElementsMixin } from '@open-wc/scoped-elements/lit-element.js';
2
+ import { ScopedElementsMixin } from '@open-wc/scoped-elements';
3
3
  import { html } from 'lit';
4
4
  import { property, state } from 'lit/decorators.js';
5
5
  import { ref } from 'lit/directives/ref.js';
@@ -1 +1 @@
1
- {"version":3,"file":"sgds-combo-box.js","sources":["../../../src/components/ComboBox/sgds-combo-box.ts"],"sourcesContent":["import { ScopedElementsMixin } from \"@open-wc/scoped-elements/lit-element.js\";\nimport { html } from \"lit\";\nimport { property, state } from \"lit/decorators.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { DropdownListElement } from \"../../base/dropdown-list-element\";\nimport { defaultValue } from \"../../utils/defaultvalue\";\nimport { watch } from \"../../utils/watch\";\nimport { SgdsDropdownItem } from \"../Dropdown/sgds-dropdown-item\";\nimport { SgdsInput } from \"../Input/sgds-input\";\nimport comboBoxStyle from \"./combo-box.css\";\nimport dropdownStyle from \"../Dropdown/dropdown.css\";\ntype FilterFunction = (inputValue: string, menuItem: string) => boolean;\n\n/**\n * @summary ComboBox component is used for users to make one or more selections from a list.\n *\n * @slot icon - slot for form control icon to be displayed on the right of the input box.\n *\n * @event sgds-select - Emitted when the combo box's selected value changes.\n * @event sgds-input - Emitted when user input is received and its value changes.\n */\nexport class SgdsComboBox extends ScopedElementsMixin(DropdownListElement) {\n static styles = [...DropdownListElement.styles, comboBoxStyle, dropdownStyle];\n /**@internal */\n static get scopedElements() {\n return {\n \"sgds-input\": SgdsInput,\n \"sgds-dropdown-item\": SgdsDropdownItem\n };\n }\n constructor() {\n super();\n /**@internal */\n this.modifierOpt = [\n {\n name: \"offset\",\n options: {\n offset: [0, 10]\n }\n }\n ];\n }\n /** The input's label */\n @property({ reflect: true }) label = \"\";\n /** The input's hint text below the label */\n @property({ reflect: true }) hintText = \"\";\n /**The input's name attribute */\n @property({ reflect: true }) name: string;\n /**The input's placeholder text. */\n @property({ type: String, reflect: true }) placeholder = \"placeholder\";\n /**Autofocus the input */\n @property({ type: Boolean, reflect: true }) autofocus = false;\n /**Disables the input. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n /**Makes the input a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n /**Makes the input readonly. */\n @property({ type: Boolean, reflect: true }) readonly = false;\n /**The input's value attribute. */\n @property({ reflect: true }) value = \"\";\n /**Gets or sets the default value used to reset this element. The initial value corresponds to the one originally specified in the HTML that created this element. */\n @defaultValue()\n defaultValue = \"\";\n\n /** Allows invalidFeedback, invalid and valid styles to be visible with the input */\n @property({ type: Boolean, reflect: true }) hasFeedback = false;\n /**Feedback text for error state when validated */\n @property({ type: String, reflect: true }) invalidFeedback = \"\";\n\n /** Marks the component as invalid. Replace the pseudo :invalid selector for absent in custom elements */\n @property({ type: Boolean, reflect: true }) invalid = false;\n /** Marks the input as invalid. Replace the pseudo :valid selector for absent in custom elements */\n @property({ type: Boolean, reflect: true }) valid = false;\n\n /**The list of items to display in the dropdown. */\n @property({ type: Array }) menuList: string[] = [];\n\n /**The function used to determine if a menu item should be shown in the menu list, given the user's input value. */\n @property()\n filterFunction: FilterFunction = (inputValue: string, menuItem: string) => {\n const itemLowerCase = menuItem.toLowerCase();\n const valueLower = inputValue.toLowerCase();\n return itemLowerCase.startsWith(valueLower);\n };\n\n /**@internal */\n @state()\n private filteredMenuList: string[] = [];\n\n /**@internal */\n @watch(\"value\")\n _handleFilterMenu() {\n this.filteredMenuList = this.menuList.filter(item => this.filterFunction.call(null, this.value, item));\n\n if (!this.myDropdown || !this.bsDropdown) return;\n\n // To hide dropdown menu when filtered menuList is empty\n if (this.filteredMenuList.length === 0) {\n this.hideMenu();\n } else if (this.menuIsOpen) {\n this.showMenu();\n }\n }\n\n private _handleInputChange(e: CustomEvent) {\n this.showMenu();\n this.value = (e.target as SgdsInput).value;\n }\n\n private _handleSelectChange(e: KeyboardEvent | MouseEvent) {\n this.value = (e.target as HTMLButtonElement).innerText;\n this.handleSelectSlot(e);\n }\n\n render() {\n return html`\n <div class=\"sgds combobox dropdown\">\n <sgds-input\n class=\"dropdown-toggle\"\n label=${this.label}\n hintText=${this.hintText}\n name=${this.name}\n ${ref(this.myDropdown)}\n @click=${() => (this.filteredMenuList.length > 0 ? this.showMenu() : this.hideMenu())}\n placeholder=${this.placeholder}\n ?autofocus=${this.autofocus}\n ?disabled=${this.disabled}\n required=${this.required}\n ?readonly=${this.readonly}\n ?hasFeedback=${this.hasFeedback}\n invalidfeedback=${this.invalidFeedback}\n ?invalid=${this.invalid}\n ?valid=${this.valid}\n .value=${this.value}\n @sgds-input=${this._handleInputChange}\n role=\"combobox\"\n aria-expanded=${this.menuIsOpen}\n aria-autocomplete=\"list\"\n aria-controls=${this.dropdownMenuId}\n >\n </sgds-input>\n <div class=\"form-control-icon\">\n <slot name=\"icon\"></slot>\n </div>\n <ul id=${this.dropdownMenuId} class=\"dropdown-menu\" part=\"menu\" tabindex=\"-1\">\n ${this.filteredMenuList.map(\n item => html`<sgds-dropdown-item @click=${this._handleSelectChange}>${item}</sgds-dropdown-item>`\n )}\n </ul>\n </div>\n `;\n }\n}\n\nexport default SgdsComboBox;\n"],"names":["comboBoxStyle","dropdownStyle"],"mappings":"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"}
1
+ {"version":3,"file":"sgds-combo-box.js","sources":["../../../src/components/ComboBox/sgds-combo-box.ts"],"sourcesContent":["import { ScopedElementsMixin } from \"@open-wc/scoped-elements\";\nimport { html } from \"lit\";\nimport { property, state } from \"lit/decorators.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { DropdownListElement } from \"../../base/dropdown-list-element\";\nimport { defaultValue } from \"../../utils/defaultvalue\";\nimport { watch } from \"../../utils/watch\";\nimport { SgdsDropdownItem } from \"../Dropdown/sgds-dropdown-item\";\nimport { SgdsInput } from \"../Input/sgds-input\";\nimport comboBoxStyle from \"./combo-box.css\";\nimport dropdownStyle from \"../Dropdown/dropdown.css\";\ntype FilterFunction = (inputValue: string, menuItem: string) => boolean;\n\n/**\n * @summary ComboBox component is used for users to make one or more selections from a list.\n *\n * @slot icon - slot for form control icon to be displayed on the right of the input box.\n *\n * @event sgds-select - Emitted when the combo box's selected value changes.\n * @event sgds-input - Emitted when user input is received and its value changes.\n */\nexport class SgdsComboBox extends ScopedElementsMixin(DropdownListElement) {\n static styles = [...DropdownListElement.styles, comboBoxStyle, dropdownStyle];\n /**@internal */\n static get scopedElements() {\n return {\n \"sgds-input\": SgdsInput,\n \"sgds-dropdown-item\": SgdsDropdownItem\n };\n }\n constructor() {\n super();\n /**@internal */\n this.modifierOpt = [\n {\n name: \"offset\",\n options: {\n offset: [0, 10]\n }\n }\n ];\n }\n /** The input's label */\n @property({ reflect: true }) label = \"\";\n /** The input's hint text below the label */\n @property({ reflect: true }) hintText = \"\";\n /**The input's name attribute */\n @property({ reflect: true }) name: string;\n /**The input's placeholder text. */\n @property({ type: String, reflect: true }) placeholder = \"placeholder\";\n /**Autofocus the input */\n @property({ type: Boolean, reflect: true }) autofocus = false;\n /**Disables the input. */\n @property({ type: Boolean, reflect: true }) disabled = false;\n /**Makes the input a required field. */\n @property({ type: Boolean, reflect: true }) required = false;\n /**Makes the input readonly. */\n @property({ type: Boolean, reflect: true }) readonly = false;\n /**The input's value attribute. */\n @property({ reflect: true }) value = \"\";\n /**Gets or sets the default value used to reset this element. The initial value corresponds to the one originally specified in the HTML that created this element. */\n @defaultValue()\n defaultValue = \"\";\n\n /** Allows invalidFeedback, invalid and valid styles to be visible with the input */\n @property({ type: Boolean, reflect: true }) hasFeedback = false;\n /**Feedback text for error state when validated */\n @property({ type: String, reflect: true }) invalidFeedback = \"\";\n\n /** Marks the component as invalid. Replace the pseudo :invalid selector for absent in custom elements */\n @property({ type: Boolean, reflect: true }) invalid = false;\n /** Marks the input as invalid. Replace the pseudo :valid selector for absent in custom elements */\n @property({ type: Boolean, reflect: true }) valid = false;\n\n /**The list of items to display in the dropdown. */\n @property({ type: Array }) menuList: string[] = [];\n\n /**The function used to determine if a menu item should be shown in the menu list, given the user's input value. */\n @property()\n filterFunction: FilterFunction = (inputValue: string, menuItem: string) => {\n const itemLowerCase = menuItem.toLowerCase();\n const valueLower = inputValue.toLowerCase();\n return itemLowerCase.startsWith(valueLower);\n };\n\n /**@internal */\n @state()\n private filteredMenuList: string[] = [];\n\n /**@internal */\n @watch(\"value\")\n _handleFilterMenu() {\n this.filteredMenuList = this.menuList.filter(item => this.filterFunction.call(null, this.value, item));\n\n if (!this.myDropdown || !this.bsDropdown) return;\n\n // To hide dropdown menu when filtered menuList is empty\n if (this.filteredMenuList.length === 0) {\n this.hideMenu();\n } else if (this.menuIsOpen) {\n this.showMenu();\n }\n }\n\n private _handleInputChange(e: CustomEvent) {\n this.showMenu();\n this.value = (e.target as SgdsInput).value;\n }\n\n private _handleSelectChange(e: KeyboardEvent | MouseEvent) {\n this.value = (e.target as HTMLButtonElement).innerText;\n this.handleSelectSlot(e);\n }\n\n render() {\n return html`\n <div class=\"sgds combobox dropdown\">\n <sgds-input\n class=\"dropdown-toggle\"\n label=${this.label}\n hintText=${this.hintText}\n name=${this.name}\n ${ref(this.myDropdown)}\n @click=${() => (this.filteredMenuList.length > 0 ? this.showMenu() : this.hideMenu())}\n placeholder=${this.placeholder}\n ?autofocus=${this.autofocus}\n ?disabled=${this.disabled}\n required=${this.required}\n ?readonly=${this.readonly}\n ?hasFeedback=${this.hasFeedback}\n invalidfeedback=${this.invalidFeedback}\n ?invalid=${this.invalid}\n ?valid=${this.valid}\n .value=${this.value}\n @sgds-input=${this._handleInputChange}\n role=\"combobox\"\n aria-expanded=${this.menuIsOpen}\n aria-autocomplete=\"list\"\n aria-controls=${this.dropdownMenuId}\n >\n </sgds-input>\n <div class=\"form-control-icon\">\n <slot name=\"icon\"></slot>\n </div>\n <ul id=${this.dropdownMenuId} class=\"dropdown-menu\" part=\"menu\" tabindex=\"-1\">\n ${this.filteredMenuList.map(\n item => html`<sgds-dropdown-item @click=${this._handleSelectChange}>${item}</sgds-dropdown-item>`\n )}\n </ul>\n </div>\n `;\n }\n}\n\nexport default SgdsComboBox;\n"],"names":["comboBoxStyle","dropdownStyle"],"mappings":"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"}