@ptcwebops/ptcw-design 7.0.4-upgrade → 7.0.5-upgrade
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/my-component.ptc-button.ptc-select.ptc-spacer.entry.cjs.js.map +1 -1
- package/dist/cjs/my-component_4.cjs.entry.js +50 -3
- package/dist/collection/components/atoms/ptc-select/ptc-select.js +50 -3
- package/dist/collection/components/atoms/ptc-select/ptc-select.js.map +1 -1
- package/dist/components/academic-form-test.js +1 -1
- package/dist/components/embedded-form.js +1 -1
- package/dist/components/{p-s8aoBDRM.js → p-1BqkHLLN.js} +52 -5
- package/dist/components/p-1BqkHLLN.js.map +1 -0
- package/dist/components/ptc-form.js +1 -1
- package/dist/components/ptc-select.js +1 -1
- package/dist/esm/my-component.ptc-button.ptc-select.ptc-spacer.entry.js.map +1 -1
- package/dist/esm/my-component_4.entry.js +50 -3
- package/dist/ptcw-design/my-component.ptc-button.ptc-select.ptc-spacer.entry.esm.js.map +1 -1
- package/dist/ptcw-design/{p-e03af331.entry.js → p-4ffc00bc.entry.js} +2 -2
- package/dist/ptcw-design/p-4ffc00bc.entry.js.map +1 -0
- package/dist/ptcw-design/ptcw-design.esm.js +1 -1
- package/dist/types/components/atoms/ptc-select/ptc-select.d.ts +1 -0
- package/package.json +1 -1
- package/dist/components/p-s8aoBDRM.js.map +0 -1
- package/dist/ptcw-design/p-e03af331.entry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ptc-select.js","sourceRoot":"","sources":["../../../../src/components/atoms/ptc-select/ptc-select.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\r\n\tComponent,\r\n\th,\r\n\tElement,\r\n\tProp,\r\n\tEvent,\r\n\tEventEmitter,\r\n\tHost,\r\n\tState,\r\n} from \"@stencil/core\";\r\nimport { MDCSelect } from \"@material/select\";\r\nimport { ValidationMessages } from \"../../../utils/validation-messages\";\r\nimport { getLanguageFromURL } from \"../../../utils/utils\";\r\n\r\ninterface ExtendedMDCSelect extends MDCSelect {\r\n\topen: boolean;\r\n}\r\n\r\n@Component({\r\n\ttag: \"ptc-select\",\r\n\tstyleUrl: \"ptc-select.scss\",\r\n\tshadow: false,\r\n})\r\nexport class PtcSelect {\r\n\t@Element() el: HTMLElement;\r\n\t@Prop() fieldId: string;\r\n\t@Prop() label: string;\r\n\t@Prop() isRequired: boolean = true;\r\n\t@Prop({ mutable: true }) helpertext: string = \"Please select a value.\";\r\n\t@Prop() fieldName: string;\r\n\t@Prop() disabled: boolean = false;\r\n\t@Prop({ mutable: true }) selectedValue: string = \"\";\r\n\t@Prop({ mutable: true }) defaultValue: string = \"\";\r\n\t@Prop() infoText: string;\r\n\t/**\r\n\t * Eloqua Data\r\n\t */\r\n\t@Prop() ptcDataEloquaName: string;\r\n\t@Prop() ptcDataTargetEloquaName: string;\r\n\t@State() language: string = \"en\";\r\n\r\n\t@Event() valueChange: EventEmitter<string>;\r\n\r\n\tdefaultSelect: ExtendedMDCSelect;\r\n\tlastInteraction: \"mouse\" | \"keyboard\" = \"mouse\";\r\n\tprivate documentMousedownHandler: () => void;\r\n\tprivate documentKeydownHandler: (e: KeyboardEvent) => void;\r\n\r\n\tasync setValue() {\r\n\t\tthis.defaultSelect.value = this.defaultValue;\r\n\t}\r\n\r\n\tcomponentWillLoad() {\r\n\t\tthis.language = getLanguageFromURL();\r\n\t\tthis.helpertext = this.getValidationMessage(\"select\");\r\n\t}\r\n\r\n\tcomponentDidLoad() {\r\n\t\tconst selectElement = this.el.querySelector(\".mdc-select\");\r\n\t\tif (!selectElement) {\r\n\t\t\tconsole.warn(\"ptc-select: Unable to find .mdc-select element.\");\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.defaultSelect = new MDCSelect(selectElement) as ExtendedMDCSelect;\r\n\r\n\t\tif (this.defaultValue) this.setValue();\r\n\r\n\t\tthis.defaultSelect.listen(\"MDCSelect:change\", () => {\r\n\t\t\tif (this.selectedValue !== this.defaultSelect.value) {\r\n\t\t\t\tthis.valueChange.emit(this.defaultSelect.value);\r\n\t\t\t\tthis.selectedValue = this.defaultSelect.value;\r\n //PUT BACK IN WHEN WE CAN FIGURE OUT WHY IT'S NOT WORKING\r\n\t\t\t\t// if (this.fieldId === \"contact-country\") {\r\n\t\t\t\t// \tconst countryCode = this.selectedValue\r\n\t\t\t\t// \t\t? this.map[this.selectedValue]\r\n\t\t\t\t// \t\t: \"\";\r\n\t\t\t\t// \tconst telField = document.querySelector(\r\n\t\t\t\t// \t\t'ptc-textfield[field-id=\"contact-phone\"]',\r\n\t\t\t\t// \t) as HTMLPtcTextfieldElement;\r\n\t\t\t\t// \t// if (telField && countryCode) {\r\n\t\t\t\t// \t// \ttelField.syncCountry(countryCode);\r\n\t\t\t\t// \t// }\r\n\t\t\t\t// }\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.addKeyboardAccessibility();\r\n\r\n\t\tthis.setupFocusHandlers();\r\n\t}\r\n\r\n\tdisconnectedCallback() {\r\n\t\t// Remove document event listeners to prevent memory leaks\r\n\t\tif (this.documentMousedownHandler) {\r\n\t\t\tdocument.removeEventListener(\"mousedown\", this.documentMousedownHandler);\r\n\t\t}\r\n\t\tif (this.documentKeydownHandler) {\r\n\t\t\tdocument.removeEventListener(\"keydown\", this.documentKeydownHandler);\r\n\t\t}\r\n\t\tif (this.defaultSelect) {\r\n\t\t\tthis.defaultSelect.destroy();\r\n\t\t}\r\n\t}\r\n\r\n\taddKeyboardAccessibility() {\r\n\t\tconst selectAnchor = this.el.querySelector(\r\n\t\t\t\".mdc-select__anchor\",\r\n\t\t) as HTMLElement;\r\n\t\tconst menu = this.el.querySelector(\".mdc-select__menu\") as HTMLElement;\r\n\r\n\t\tif (!selectAnchor || !menu) {\r\n\t\t\tconsole.warn(\r\n\t\t\t\t\"ptc-select: Unable to find select anchor or menu elements.\",\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tselectAnchor.addEventListener(\"keydown\", (event: KeyboardEvent) => {\r\n\t\t\tconst key = event.key;\r\n\r\n\t\t\tswitch (key) {\r\n\t\t\t\tcase \"Enter\":\r\n\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\tthis.defaultSelect.open = !this.defaultSelect.open;\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.setFocusToFirstMenuitem();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"ArrowDown\":\r\n\t\t\t\tcase \"ArrowUp\":\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"Escape\":\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.defaultSelect.open = false;\r\n\t\t\t\t\t\tselectAnchor.focus();\r\n\t\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"Tab\":\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.defaultSelect.open = false;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\t// Focus the first menu item in the dropdown\r\n\tsetFocusToFirstMenuitem() {\r\n\t\tconst firstMenuItem = this.el.querySelector(\r\n\t\t\t\".mdc-list-item\",\r\n\t\t) as HTMLElement;\r\n\t\tif (firstMenuItem) {\r\n\t\t\tfirstMenuItem.focus();\r\n\t\t}\r\n\t}\r\n\r\n\tsetFocusToNextMenuitem(currentMenuitem: HTMLElement) {\r\n\t\tconst menuItems = Array.from(\r\n\t\t\tthis.el.querySelectorAll(\".mdc-list-item\"),\r\n\t\t) as HTMLElement[];\r\n\t\tconst currentIndex = menuItems.indexOf(currentMenuitem);\r\n\t\tconst nextIndex = (currentIndex + 1) % menuItems.length;\r\n\t\tmenuItems[nextIndex].focus();\r\n\t}\r\n\r\n\tsetFocusToPreviousMenuitem(currentMenuitem: HTMLElement) {\r\n\t\tconst menuItems = Array.from(\r\n\t\t\tthis.el.querySelectorAll(\".mdc-list-item\"),\r\n\t\t) as HTMLElement[];\r\n\t\tconst currentIndex = menuItems.indexOf(currentMenuitem);\r\n\t\tconst previousIndex =\r\n\t\t\t(currentIndex - 1 + menuItems.length) % menuItems.length;\r\n\t\tmenuItems[previousIndex].focus();\r\n\t}\r\n\r\n\tgetValidationMessage(type: string) {\r\n\t\treturn ValidationMessages[this.language][type];\r\n\t}\r\n\r\n\tgetSelectClassName() {\r\n\t\tlet className =\r\n\t\t\t\"mdc-select mdc-select--outlined mdc-select--no-label mf-listen\";\r\n\t\tif (this.isRequired) {\r\n\t\t\tclassName = `${className} mdc-select--required`;\r\n\t\t}\r\n\t\treturn className;\r\n\t}\r\n\r\n\tsetupFocusHandlers() {\r\n\t\t// Track the last interaction type - use bound handlers for proper cleanup\r\n\t\tthis.documentMousedownHandler = () => {\r\n\t\t\tthis.lastInteraction = \"mouse\";\r\n\t\t};\r\n\t\tthis.documentKeydownHandler = (e: KeyboardEvent) => {\r\n\t\t\tif (e.key === \"Tab\") {\r\n\t\t\t\tthis.lastInteraction = \"keyboard\";\r\n\t\t\t}\r\n\t\t};\r\n\t\tdocument.addEventListener(\"mousedown\", this.documentMousedownHandler);\r\n\t\tdocument.addEventListener(\"keydown\", this.documentKeydownHandler);\r\n\r\n\t\t// Only query select fields within this component, not globally\r\n\t\tconst selectField = this.el.querySelector(\r\n\t\t\t\".mdc-select\",\r\n\t\t) as HTMLElement;\r\n\t\tif (selectField) {\r\n\t\t\tconst select = selectField.querySelector(\".mdc-select__anchor\");\r\n\t\t\tif (select) {\r\n\t\t\t\tselect.addEventListener(\"focus\", () => {\r\n\t\t\t\t\tif (this.lastInteraction === \"keyboard\") {\r\n\t\t\t\t\t\tselectField.classList.add(\"keyboard-focus\");\r\n\t\t\t\t\t\tselectField.classList.remove(\"mouse-focus\");\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tselectField.classList.add(\"mouse-focus\");\r\n\t\t\t\t\t\tselectField.classList.remove(\"keyboard-focus\");\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tselect.addEventListener(\"blur\", () => {\r\n\t\t\t\t\tselectField.classList.remove(\r\n\t\t\t\t\t\t\"keyboard-focus\",\r\n\t\t\t\t\t\t\"mouse-focus\",\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<Host class=\"ptc-select mf-listen\">\r\n\t\t\t\t<div class={this.getSelectClassName()}>\r\n\t\t\t\t\t<label class=\"ptc-label-select\" htmlFor={this.fieldId}>\r\n\t\t\t\t\t\t{this.label}\r\n\t\t\t\t\t</label>\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"mdc-select__anchor\"\r\n\t\t\t\t\t\taria-labelledby=\"outlined-select-label\"\r\n\t\t\t\t\t\t{...(this.isRequired ? { ariaRequired: true } : null)}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<span class=\"mdc-notched-outline\">\r\n\t\t\t\t\t\t\t<span class=\"mdc-notched-outline__leading\"></span>\r\n\t\t\t\t\t\t\t<span class=\"mdc-notched-outline__trailing\"></span>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<span class=\"mdc-select__selected-text-container\">\r\n\t\t\t\t\t\t\t<span\r\n\t\t\t\t\t\t\t\tid={this.fieldId}\r\n\t\t\t\t\t\t\t\tclass=\"mdc-select__selected-text\"\r\n\t\t\t\t\t\t\t\taria-controls={this.fieldName}\r\n\t\t\t\t\t\t\t\taria-describedby={this.fieldName}\r\n\t\t\t\t\t\t\t\tdata-eloqua-name={this.ptcDataEloquaName}\r\n\t\t\t\t\t\t\t\tdata-target-eloqua-name={\r\n\t\t\t\t\t\t\t\t\tthis.ptcDataTargetEloquaName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t></span>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<span class=\"mdc-select__dropdown-icon\">\r\n\t\t\t\t\t\t\t<svg\r\n\t\t\t\t\t\t\t\tclass=\"\"\r\n\t\t\t\t\t\t\t\twidth=\"10\"\r\n\t\t\t\t\t\t\t\theight=\"10\"\r\n\t\t\t\t\t\t\t\tviewBox=\"0 0 10 10\"\r\n\t\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t<path d=\"M1.375 1.875L5 5.5L8.625 1.875L9.9375 3.1875L5 8.125L0.0625 3.1875L1.375 1.875Z\" />\r\n\t\t\t\t\t\t\t</svg>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"mdc-select__menu mdc-menu mdc-menu-surface mdc-menu-surface--fullwidth\"\r\n\t\t\t\t\t\trole=\"listbox\"\r\n\t\t\t\t\t\taria-label={this.label}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<slot></slot>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<p\r\n\t\t\t\t\t\tid={this.fieldName}\r\n\t\t\t\t\t\tclass=\"mdc-select-helper-text mdc-select-helper-text--validation-msg\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<svg\r\n\t\t\t\t\t\t\tclass=\"select-error-svg\"\r\n\t\t\t\t\t\t\twidth=\"16\"\r\n\t\t\t\t\t\t\theight=\"16\"\r\n\t\t\t\t\t\t\tviewBox=\"0 0 16 16\"\r\n\t\t\t\t\t\t\tfill=\"none\"\r\n\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<g clip-path=\"url(#clip0_12_1424)\">\r\n\t\t\t\t\t\t\t\t<path\r\n\t\t\t\t\t\t\t\t\tfill-rule=\"evenodd\"\r\n\t\t\t\t\t\t\t\t\tclip-rule=\"evenodd\"\r\n\t\t\t\t\t\t\t\t\td=\"M11.3156 0L16 4.68444V11.3156L11.3156 16H4.68444L0 11.3156V4.68444L4.68444 0H11.3156ZM8 10.4C7.36 10.4 6.84444 10.9156 6.84444 11.5556C6.84444 12.1956 7.36 12.7111 8 12.7111C8.64 12.7111 9.15556 12.1956 9.15556 11.5556C9.15556 10.9156 8.64 10.4 8 10.4ZM8.88889 3.55556H7.11111V8.88889H8.88889V3.55556Z\"\r\n\t\t\t\t\t\t\t\t\tfill=\"#AF3231\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t</g>\r\n\t\t\t\t\t\t\t<defs>\r\n\t\t\t\t\t\t\t\t<clipPath id=\"clip0_12_1424\">\r\n\t\t\t\t\t\t\t\t\t<rect width=\"16\" height=\"16\" fill=\"white\" />\r\n\t\t\t\t\t\t\t\t</clipPath>\r\n\t\t\t\t\t\t\t</defs>\r\n\t\t\t\t\t\t</svg>\r\n\t\t\t\t\t\t{this.helpertext}\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t{this.infoText ? (\r\n\t\t\t\t\t\t<p class=\"mdc-select-helper-text mdc-select-helper-text--info-msg\">\r\n\t\t\t\t\t\t\t{this.infoText}\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t) : null}\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t{/* helper text */}\r\n\t\t\t</Host>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"ptc-select.js","sourceRoot":"","sources":["../../../../src/components/atoms/ptc-select/ptc-select.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\r\n\tComponent,\r\n\th,\r\n\tElement,\r\n\tProp,\r\n\tEvent,\r\n\tEventEmitter,\r\n\tHost,\r\n\tState,\r\n} from \"@stencil/core\";\r\nimport { MDCSelect } from \"@material/select\";\r\nimport { ValidationMessages } from \"../../../utils/validation-messages\";\r\nimport { getLanguageFromURL } from \"../../../utils/utils\";\r\n\r\ninterface ExtendedMDCSelect extends MDCSelect {\r\n\topen: boolean;\r\n}\r\n\r\n@Component({\r\n\ttag: \"ptc-select\",\r\n\tstyleUrl: \"ptc-select.scss\",\r\n\tshadow: false,\r\n})\r\nexport class PtcSelect {\r\n\t@Element() el: HTMLElement;\r\n\t@Prop() fieldId: string;\r\n\t@Prop() label: string;\r\n\t@Prop() isRequired: boolean = true;\r\n\t@Prop({ mutable: true }) helpertext: string = \"Please select a value.\";\r\n\t@Prop() fieldName: string;\r\n\t@Prop() disabled: boolean = false;\r\n\t@Prop({ mutable: true }) selectedValue: string = \"\";\r\n\t@Prop({ mutable: true }) defaultValue: string = \"\";\r\n\t@Prop() infoText: string;\r\n\t/**\r\n\t * Eloqua Data\r\n\t */\r\n\t@Prop() ptcDataEloquaName: string;\r\n\t@Prop() ptcDataTargetEloquaName: string;\r\n\t@State() language: string = \"en\";\r\n\r\n\t@Event() valueChange: EventEmitter<string>;\r\n\r\n\tdefaultSelect: ExtendedMDCSelect;\r\n\tlastInteraction: \"mouse\" | \"keyboard\" = \"mouse\";\r\n\tprivate documentMousedownHandler: () => void;\r\n\tprivate documentKeydownHandler: (e: KeyboardEvent) => void;\r\n\r\n\tasync setValue() {\r\n\t\tthis.defaultSelect.value = this.defaultValue;\r\n\t}\r\n\r\n\tcomponentWillLoad() {\r\n\t\tthis.language = getLanguageFromURL();\r\n\t\tthis.helpertext = this.getValidationMessage(\"select\");\r\n\t}\r\n\r\n\tcomponentDidLoad() {\r\n\t\t// Use requestAnimationFrame to ensure slotted content is fully rendered\r\n\t\trequestAnimationFrame(() => {\r\n\t\t\tthis.initializeMDCSelect();\r\n\t\t});\r\n\t}\r\n\r\n\tprivate initializeMDCSelect() {\r\n\t\tconsole.log(\"[ptc-select DEBUG] Starting initialization for field:\", this.fieldId);\r\n\t\t\r\n\t\tconst selectElement = this.el.querySelector(\".mdc-select\");\r\n\t\tif (!selectElement) {\r\n\t\t\tconsole.warn(\"[ptc-select DEBUG] Unable to find .mdc-select element.\");\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconsole.log(\"[ptc-select DEBUG] Found .mdc-select element:\", selectElement);\r\n\r\n\t\t// Ensure the menu has the mdc-list inside it\r\n\t\tconst menu = selectElement.querySelector(\".mdc-select__menu\");\r\n\t\tconst list = menu?.querySelector(\".mdc-list\");\r\n\t\tconsole.log(\"[ptc-select DEBUG] Menu element:\", menu);\r\n\t\tconsole.log(\"[ptc-select DEBUG] List element:\", list);\r\n\t\t\r\n\t\tif (!list) {\r\n\t\t\tconsole.warn(\"[ptc-select DEBUG] Unable to find .mdc-list inside menu. Retrying...\");\r\n\t\t\t// Retry after a short delay if list is not found (slot content may not be ready)\r\n\t\t\tsetTimeout(() => this.initializeMDCSelect(), 100);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\ttry {\r\n\t\t\tthis.defaultSelect = new MDCSelect(selectElement) as ExtendedMDCSelect;\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] MDCSelect initialized successfully:\", this.defaultSelect);\r\n\t\t} catch (error) {\r\n\t\t\tconsole.error(\"[ptc-select DEBUG] Error initializing MDCSelect:\", error);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Add click listener for debugging\r\n\t\tconst anchor = selectElement.querySelector(\".mdc-select__anchor\");\r\n\t\tif (anchor) {\r\n\t\t\tanchor.addEventListener(\"click\", (e) => {\r\n\t\t\t\tconsole.log(\"[ptc-select DEBUG] Anchor clicked!\", e);\r\n\t\t\t\tconsole.log(\"[ptc-select DEBUG] MDCSelect open state:\", this.defaultSelect?.open);\r\n\t\t\t\tconsole.log(\"[ptc-select DEBUG] Menu classes:\", menu?.className);\r\n\t\t\t\tconsole.log(\"[ptc-select DEBUG] Select classes:\", selectElement.className);\r\n\t\t\t});\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] Click listener added to anchor\");\r\n\t\t}\r\n\r\n\t\t// Listen for MDCSelect events\r\n\t\tthis.defaultSelect.listen(\"MDCSelect:change\", () => {\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] MDCSelect:change event fired, value:\", this.defaultSelect.value);\r\n\t\t});\r\n\r\n\t\tthis.defaultSelect.listen(\"MDCMenuSurface:opened\", () => {\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] Menu opened!\");\r\n\t\t});\r\n\r\n\t\tthis.defaultSelect.listen(\"MDCMenuSurface:closed\", () => {\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] Menu closed!\");\r\n\t\t});\r\n\r\n\t\tif (this.defaultValue) this.setValue();\r\n\r\n\t\tthis.defaultSelect.listen(\"MDCSelect:change\", () => {\r\n\t\t\tif (this.selectedValue !== this.defaultSelect.value) {\r\n\t\t\t\tthis.valueChange.emit(this.defaultSelect.value);\r\n\t\t\t\tthis.selectedValue = this.defaultSelect.value;\r\n //PUT BACK IN WHEN WE CAN FIGURE OUT WHY IT'S NOT WORKING\r\n\t\t\t\t// if (this.fieldId === \"contact-country\") {\r\n\t\t\t\t// \tconst countryCode = this.selectedValue\r\n\t\t\t\t// \t\t? this.map[this.selectedValue]\r\n\t\t\t\t// \t\t: \"\";\r\n\t\t\t\t// \tconst telField = document.querySelector(\r\n\t\t\t\t// \t\t'ptc-textfield[field-id=\"contact-phone\"]',\r\n\t\t\t\t// \t) as HTMLPtcTextfieldElement;\r\n\t\t\t\t// \t// if (telField && countryCode) {\r\n\t\t\t\t// \t// \ttelField.syncCountry(countryCode);\r\n\t\t\t\t// \t// }\r\n\t\t\t\t// }\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.addKeyboardAccessibility();\r\n\r\n\t\tthis.setupFocusHandlers();\r\n\t}\r\n\r\n\tdisconnectedCallback() {\r\n\t\t// Remove document event listeners to prevent memory leaks\r\n\t\tif (this.documentMousedownHandler) {\r\n\t\t\tdocument.removeEventListener(\"mousedown\", this.documentMousedownHandler);\r\n\t\t}\r\n\t\tif (this.documentKeydownHandler) {\r\n\t\t\tdocument.removeEventListener(\"keydown\", this.documentKeydownHandler);\r\n\t\t}\r\n\t\tif (this.defaultSelect) {\r\n\t\t\tthis.defaultSelect.destroy();\r\n\t\t}\r\n\t}\r\n\r\n\taddKeyboardAccessibility() {\r\n\t\tconst selectAnchor = this.el.querySelector(\r\n\t\t\t\".mdc-select__anchor\",\r\n\t\t) as HTMLElement;\r\n\t\tconst menu = this.el.querySelector(\".mdc-select__menu\") as HTMLElement;\r\n\r\n\t\tif (!selectAnchor || !menu) {\r\n\t\t\tconsole.warn(\r\n\t\t\t\t\"ptc-select: Unable to find select anchor or menu elements.\",\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tselectAnchor.addEventListener(\"keydown\", (event: KeyboardEvent) => {\r\n\t\t\tconst key = event.key;\r\n\r\n\t\t\tswitch (key) {\r\n\t\t\t\tcase \"Enter\":\r\n\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\tthis.defaultSelect.open = !this.defaultSelect.open;\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.setFocusToFirstMenuitem();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"ArrowDown\":\r\n\t\t\t\tcase \"ArrowUp\":\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"Escape\":\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.defaultSelect.open = false;\r\n\t\t\t\t\t\tselectAnchor.focus();\r\n\t\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"Tab\":\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.defaultSelect.open = false;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\t// Focus the first menu item in the dropdown\r\n\tsetFocusToFirstMenuitem() {\r\n\t\tconst firstMenuItem = this.el.querySelector(\r\n\t\t\t\".mdc-list-item\",\r\n\t\t) as HTMLElement;\r\n\t\tif (firstMenuItem) {\r\n\t\t\tfirstMenuItem.focus();\r\n\t\t}\r\n\t}\r\n\r\n\tsetFocusToNextMenuitem(currentMenuitem: HTMLElement) {\r\n\t\tconst menuItems = Array.from(\r\n\t\t\tthis.el.querySelectorAll(\".mdc-list-item\"),\r\n\t\t) as HTMLElement[];\r\n\t\tconst currentIndex = menuItems.indexOf(currentMenuitem);\r\n\t\tconst nextIndex = (currentIndex + 1) % menuItems.length;\r\n\t\tmenuItems[nextIndex].focus();\r\n\t}\r\n\r\n\tsetFocusToPreviousMenuitem(currentMenuitem: HTMLElement) {\r\n\t\tconst menuItems = Array.from(\r\n\t\t\tthis.el.querySelectorAll(\".mdc-list-item\"),\r\n\t\t) as HTMLElement[];\r\n\t\tconst currentIndex = menuItems.indexOf(currentMenuitem);\r\n\t\tconst previousIndex =\r\n\t\t\t(currentIndex - 1 + menuItems.length) % menuItems.length;\r\n\t\tmenuItems[previousIndex].focus();\r\n\t}\r\n\r\n\tgetValidationMessage(type: string) {\r\n\t\treturn ValidationMessages[this.language][type];\r\n\t}\r\n\r\n\tgetSelectClassName() {\r\n\t\tlet className =\r\n\t\t\t\"mdc-select mdc-select--outlined mdc-select--no-label mf-listen\";\r\n\t\tif (this.isRequired) {\r\n\t\t\tclassName = `${className} mdc-select--required`;\r\n\t\t}\r\n\t\treturn className;\r\n\t}\r\n\r\n\tsetupFocusHandlers() {\r\n\t\t// Track the last interaction type - use bound handlers for proper cleanup\r\n\t\tthis.documentMousedownHandler = () => {\r\n\t\t\tthis.lastInteraction = \"mouse\";\r\n\t\t};\r\n\t\tthis.documentKeydownHandler = (e: KeyboardEvent) => {\r\n\t\t\tif (e.key === \"Tab\") {\r\n\t\t\t\tthis.lastInteraction = \"keyboard\";\r\n\t\t\t}\r\n\t\t};\r\n\t\tdocument.addEventListener(\"mousedown\", this.documentMousedownHandler);\r\n\t\tdocument.addEventListener(\"keydown\", this.documentKeydownHandler);\r\n\r\n\t\t// Only query select fields within this component, not globally\r\n\t\tconst selectField = this.el.querySelector(\r\n\t\t\t\".mdc-select\",\r\n\t\t) as HTMLElement;\r\n\t\tif (selectField) {\r\n\t\t\tconst select = selectField.querySelector(\".mdc-select__anchor\");\r\n\t\t\tif (select) {\r\n\t\t\t\tselect.addEventListener(\"focus\", () => {\r\n\t\t\t\t\tif (this.lastInteraction === \"keyboard\") {\r\n\t\t\t\t\t\tselectField.classList.add(\"keyboard-focus\");\r\n\t\t\t\t\t\tselectField.classList.remove(\"mouse-focus\");\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tselectField.classList.add(\"mouse-focus\");\r\n\t\t\t\t\t\tselectField.classList.remove(\"keyboard-focus\");\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tselect.addEventListener(\"blur\", () => {\r\n\t\t\t\t\tselectField.classList.remove(\r\n\t\t\t\t\t\t\"keyboard-focus\",\r\n\t\t\t\t\t\t\"mouse-focus\",\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<Host class=\"ptc-select mf-listen\">\r\n\t\t\t\t<div class={this.getSelectClassName()}>\r\n\t\t\t\t\t<label class=\"ptc-label-select\" htmlFor={this.fieldId}>\r\n\t\t\t\t\t\t{this.label}\r\n\t\t\t\t\t</label>\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"mdc-select__anchor\"\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\taria-haspopup=\"listbox\"\r\n\t\t\t\t\t\taria-labelledby=\"outlined-select-label\"\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t\t{...(this.isRequired ? { ariaRequired: true } : null)}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<span class=\"mdc-notched-outline\">\r\n\t\t\t\t\t\t\t<span class=\"mdc-notched-outline__leading\"></span>\r\n\t\t\t\t\t\t\t<span class=\"mdc-notched-outline__trailing\"></span>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<span class=\"mdc-select__selected-text-container\">\r\n\t\t\t\t\t\t\t<span\r\n\t\t\t\t\t\t\t\tid={this.fieldId}\r\n\t\t\t\t\t\t\t\tclass=\"mdc-select__selected-text\"\r\n\t\t\t\t\t\t\t\taria-controls={this.fieldName}\r\n\t\t\t\t\t\t\t\taria-describedby={this.fieldName}\r\n\t\t\t\t\t\t\t\tdata-eloqua-name={this.ptcDataEloquaName}\r\n\t\t\t\t\t\t\t\tdata-target-eloqua-name={\r\n\t\t\t\t\t\t\t\t\tthis.ptcDataTargetEloquaName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t></span>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<span class=\"mdc-select__dropdown-icon\">\r\n\t\t\t\t\t\t\t<svg\r\n\t\t\t\t\t\t\t\tclass=\"\"\r\n\t\t\t\t\t\t\t\twidth=\"10\"\r\n\t\t\t\t\t\t\t\theight=\"10\"\r\n\t\t\t\t\t\t\t\tviewBox=\"0 0 10 10\"\r\n\t\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t<path d=\"M1.375 1.875L5 5.5L8.625 1.875L9.9375 3.1875L5 8.125L0.0625 3.1875L1.375 1.875Z\" />\r\n\t\t\t\t\t\t\t</svg>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"mdc-select__menu mdc-menu mdc-menu-surface mdc-menu-surface--fullwidth\"\r\n\t\t\t\t\t\trole=\"listbox\"\r\n\t\t\t\t\t\taria-label={this.label}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<slot></slot>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<p\r\n\t\t\t\t\t\tid={this.fieldName}\r\n\t\t\t\t\t\tclass=\"mdc-select-helper-text mdc-select-helper-text--validation-msg\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<svg\r\n\t\t\t\t\t\t\tclass=\"select-error-svg\"\r\n\t\t\t\t\t\t\twidth=\"16\"\r\n\t\t\t\t\t\t\theight=\"16\"\r\n\t\t\t\t\t\t\tviewBox=\"0 0 16 16\"\r\n\t\t\t\t\t\t\tfill=\"none\"\r\n\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<g clip-path=\"url(#clip0_12_1424)\">\r\n\t\t\t\t\t\t\t\t<path\r\n\t\t\t\t\t\t\t\t\tfill-rule=\"evenodd\"\r\n\t\t\t\t\t\t\t\t\tclip-rule=\"evenodd\"\r\n\t\t\t\t\t\t\t\t\td=\"M11.3156 0L16 4.68444V11.3156L11.3156 16H4.68444L0 11.3156V4.68444L4.68444 0H11.3156ZM8 10.4C7.36 10.4 6.84444 10.9156 6.84444 11.5556C6.84444 12.1956 7.36 12.7111 8 12.7111C8.64 12.7111 9.15556 12.1956 9.15556 11.5556C9.15556 10.9156 8.64 10.4 8 10.4ZM8.88889 3.55556H7.11111V8.88889H8.88889V3.55556Z\"\r\n\t\t\t\t\t\t\t\t\tfill=\"#AF3231\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t</g>\r\n\t\t\t\t\t\t\t<defs>\r\n\t\t\t\t\t\t\t\t<clipPath id=\"clip0_12_1424\">\r\n\t\t\t\t\t\t\t\t\t<rect width=\"16\" height=\"16\" fill=\"white\" />\r\n\t\t\t\t\t\t\t\t</clipPath>\r\n\t\t\t\t\t\t\t</defs>\r\n\t\t\t\t\t\t</svg>\r\n\t\t\t\t\t\t{this.helpertext}\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t{this.infoText ? (\r\n\t\t\t\t\t\t<p class=\"mdc-select-helper-text mdc-select-helper-text--info-msg\">\r\n\t\t\t\t\t\t\t{this.infoText}\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t) : null}\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t{/* helper text */}\r\n\t\t\t</Host>\r\n\t\t);\r\n\t}\r\n}\r\n"]}
|
|
@@ -2,7 +2,7 @@ import { p as proxyCustomElement, H, h, d as Host } from './p-DDcZ67jr.js';
|
|
|
2
2
|
import { d as defineCustomElement$8 } from './p-BJBZdTyo.js';
|
|
3
3
|
import { d as defineCustomElement$7 } from './p-TdFYF_Os.js';
|
|
4
4
|
import { d as defineCustomElement$6 } from './p-DMTNMD3o.js';
|
|
5
|
-
import { d as defineCustomElement$5 } from './p-
|
|
5
|
+
import { d as defineCustomElement$5 } from './p-1BqkHLLN.js';
|
|
6
6
|
import { d as defineCustomElement$4 } from './p-BAXVGaW1.js';
|
|
7
7
|
import { d as defineCustomElement$3 } from './p-HAtJV2yg.js';
|
|
8
8
|
import { d as defineCustomElement$2 } from './p-qFwJl5xl.js';
|
|
@@ -3,7 +3,7 @@ import { d as defineCustomElement$9 } from './p-BJBZdTyo.js';
|
|
|
3
3
|
import { d as defineCustomElement$8 } from './p-TdFYF_Os.js';
|
|
4
4
|
import { d as defineCustomElement$7 } from './p-DMTNMD3o.js';
|
|
5
5
|
import { d as defineCustomElement$6 } from './p-Im8fglI_.js';
|
|
6
|
-
import { d as defineCustomElement$5 } from './p-
|
|
6
|
+
import { d as defineCustomElement$5 } from './p-1BqkHLLN.js';
|
|
7
7
|
import { d as defineCustomElement$4 } from './p-BAXVGaW1.js';
|
|
8
8
|
import { d as defineCustomElement$3 } from './p-HAtJV2yg.js';
|
|
9
9
|
import { d as defineCustomElement$2 } from './p-qFwJl5xl.js';
|
|
@@ -41,12 +41,59 @@ const PtcSelect = /*@__PURE__*/ proxyCustomElement(class PtcSelect extends H {
|
|
|
41
41
|
this.helpertext = this.getValidationMessage("select");
|
|
42
42
|
}
|
|
43
43
|
componentDidLoad() {
|
|
44
|
+
// Use requestAnimationFrame to ensure slotted content is fully rendered
|
|
45
|
+
requestAnimationFrame(() => {
|
|
46
|
+
this.initializeMDCSelect();
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
initializeMDCSelect() {
|
|
50
|
+
console.log("[ptc-select DEBUG] Starting initialization for field:", this.fieldId);
|
|
44
51
|
const selectElement = this.el.querySelector(".mdc-select");
|
|
45
52
|
if (!selectElement) {
|
|
46
|
-
console.warn("ptc-select
|
|
53
|
+
console.warn("[ptc-select DEBUG] Unable to find .mdc-select element.");
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
console.log("[ptc-select DEBUG] Found .mdc-select element:", selectElement);
|
|
57
|
+
// Ensure the menu has the mdc-list inside it
|
|
58
|
+
const menu = selectElement.querySelector(".mdc-select__menu");
|
|
59
|
+
const list = menu?.querySelector(".mdc-list");
|
|
60
|
+
console.log("[ptc-select DEBUG] Menu element:", menu);
|
|
61
|
+
console.log("[ptc-select DEBUG] List element:", list);
|
|
62
|
+
if (!list) {
|
|
63
|
+
console.warn("[ptc-select DEBUG] Unable to find .mdc-list inside menu. Retrying...");
|
|
64
|
+
// Retry after a short delay if list is not found (slot content may not be ready)
|
|
65
|
+
setTimeout(() => this.initializeMDCSelect(), 100);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
try {
|
|
69
|
+
this.defaultSelect = new MDCSelect(selectElement);
|
|
70
|
+
console.log("[ptc-select DEBUG] MDCSelect initialized successfully:", this.defaultSelect);
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
console.error("[ptc-select DEBUG] Error initializing MDCSelect:", error);
|
|
47
74
|
return;
|
|
48
75
|
}
|
|
49
|
-
|
|
76
|
+
// Add click listener for debugging
|
|
77
|
+
const anchor = selectElement.querySelector(".mdc-select__anchor");
|
|
78
|
+
if (anchor) {
|
|
79
|
+
anchor.addEventListener("click", (e) => {
|
|
80
|
+
console.log("[ptc-select DEBUG] Anchor clicked!", e);
|
|
81
|
+
console.log("[ptc-select DEBUG] MDCSelect open state:", this.defaultSelect?.open);
|
|
82
|
+
console.log("[ptc-select DEBUG] Menu classes:", menu?.className);
|
|
83
|
+
console.log("[ptc-select DEBUG] Select classes:", selectElement.className);
|
|
84
|
+
});
|
|
85
|
+
console.log("[ptc-select DEBUG] Click listener added to anchor");
|
|
86
|
+
}
|
|
87
|
+
// Listen for MDCSelect events
|
|
88
|
+
this.defaultSelect.listen("MDCSelect:change", () => {
|
|
89
|
+
console.log("[ptc-select DEBUG] MDCSelect:change event fired, value:", this.defaultSelect.value);
|
|
90
|
+
});
|
|
91
|
+
this.defaultSelect.listen("MDCMenuSurface:opened", () => {
|
|
92
|
+
console.log("[ptc-select DEBUG] Menu opened!");
|
|
93
|
+
});
|
|
94
|
+
this.defaultSelect.listen("MDCMenuSurface:closed", () => {
|
|
95
|
+
console.log("[ptc-select DEBUG] Menu closed!");
|
|
96
|
+
});
|
|
50
97
|
if (this.defaultValue)
|
|
51
98
|
this.setValue();
|
|
52
99
|
this.defaultSelect.listen("MDCSelect:change", () => {
|
|
@@ -180,7 +227,7 @@ const PtcSelect = /*@__PURE__*/ proxyCustomElement(class PtcSelect extends H {
|
|
|
180
227
|
}
|
|
181
228
|
}
|
|
182
229
|
render() {
|
|
183
|
-
return (h(Host, { key: '
|
|
230
|
+
return (h(Host, { key: '5dea3cd63999abed37acc8b38be2946ff45ad7f1', class: "ptc-select mf-listen" }, h("div", { key: 'da6aa2cbf6cdb1a84b4790649fc65755717de577', class: this.getSelectClassName() }, h("label", { key: '93403f7bb19deda1e1df8c1ab6676cda07b92a4d', class: "ptc-label-select", htmlFor: this.fieldId }, this.label), h("div", { key: '2643b2c6ce677f7b2adf037f3f5a11fd91a095b3', class: "mdc-select__anchor", role: "button", "aria-haspopup": "listbox", "aria-labelledby": "outlined-select-label", tabindex: "0", ...(this.isRequired ? { ariaRequired: true } : null) }, h("span", { key: 'f628892254eaa59d33f9c82a65e7337897eeddb4', class: "mdc-notched-outline" }, h("span", { key: '5b2118226c33cc9b36585b71e809a5dea59f8b96', class: "mdc-notched-outline__leading" }), h("span", { key: '1dea00f993b89193440884991eb64bdb1a73781d', class: "mdc-notched-outline__trailing" })), h("span", { key: 'e8afa796285e70c7fa2da52569027cce7c08aa30', class: "mdc-select__selected-text-container" }, h("span", { key: '65bab74b86a67dd734ad59f9261926ab26933e72', id: this.fieldId, class: "mdc-select__selected-text", "aria-controls": this.fieldName, "aria-describedby": this.fieldName, "data-eloqua-name": this.ptcDataEloquaName, "data-target-eloqua-name": this.ptcDataTargetEloquaName })), h("span", { key: 'a12c76ac9edf2ac082c398c068370a01bc1dad86', class: "mdc-select__dropdown-icon" }, h("svg", { key: 'ef5de1a331e53f750f105f84927a5ba85b1094ea', class: "", width: "10", height: "10", viewBox: "0 0 10 10", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '336956f92d89d0f57c85074209557152f393d238', d: "M1.375 1.875L5 5.5L8.625 1.875L9.9375 3.1875L5 8.125L0.0625 3.1875L1.375 1.875Z" })))), h("div", { key: 'cfb86117e32b4c2ecbfe54c3fe719b0dec0e6007', class: "mdc-select__menu mdc-menu mdc-menu-surface mdc-menu-surface--fullwidth", role: "listbox", "aria-label": this.label }, h("slot", { key: '08cab225d17cb45edf3981e94d4840e6842dafb2' })), h("p", { key: '62cfd867b5f5e7191ce3182f66e06d4fcb53a8b9', id: this.fieldName, class: "mdc-select-helper-text mdc-select-helper-text--validation-msg" }, h("svg", { key: '7eb6f4da067582e5cccffa2212c1bbae0f103df8', class: "select-error-svg", width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("g", { key: '18668c906b1b8c354dabdbbba80c6f2a47c81a59', "clip-path": "url(#clip0_12_1424)" }, h("path", { key: '7d2429f54a525aa29b3120884fb0c1c56ba33d06', "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M11.3156 0L16 4.68444V11.3156L11.3156 16H4.68444L0 11.3156V4.68444L4.68444 0H11.3156ZM8 10.4C7.36 10.4 6.84444 10.9156 6.84444 11.5556C6.84444 12.1956 7.36 12.7111 8 12.7111C8.64 12.7111 9.15556 12.1956 9.15556 11.5556C9.15556 10.9156 8.64 10.4 8 10.4ZM8.88889 3.55556H7.11111V8.88889H8.88889V3.55556Z", fill: "#AF3231" })), h("defs", { key: 'cefa25992fa43eb762a407461f3f1f7cb76b545a' }, h("clipPath", { key: '06cf1a1e1af53f69ac92d5018ea968e99d382c8b', id: "clip0_12_1424" }, h("rect", { key: '7e2936db88aad178046c62a5276ffedac4a1840b', width: "16", height: "16", fill: "white" })))), this.helpertext), this.infoText ? (h("p", { class: "mdc-select-helper-text mdc-select-helper-text--info-msg" }, this.infoText)) : null)));
|
|
184
231
|
}
|
|
185
232
|
static get style() { return ptcSelectCss; }
|
|
186
233
|
}, [260, "ptc-select", {
|
|
@@ -213,6 +260,6 @@ function defineCustomElement() {
|
|
|
213
260
|
defineCustomElement();
|
|
214
261
|
|
|
215
262
|
export { PtcSelect as P, defineCustomElement as d };
|
|
216
|
-
//# sourceMappingURL=p-
|
|
263
|
+
//# sourceMappingURL=p-1BqkHLLN.js.map
|
|
217
264
|
|
|
218
|
-
//# sourceMappingURL=p-
|
|
265
|
+
//# sourceMappingURL=p-1BqkHLLN.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"p-1BqkHLLN.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/atoms/ptc-select/ptc-select.scss?tag=ptc-select","src/components/atoms/ptc-select/ptc-select.tsx"],"sourcesContent":["@import \"~@material/select/dist/mdc.select.css\";\r\n@import \"~@material/list/dist/mdc.list.css\";\r\n@import \"~@material/menu/dist/mdc.menu.css\";\r\n@import \"~@material/menu-surface/dist/mdc.menu-surface.css\";\r\n\r\n:host {\r\n\tdisplay: block;\r\n}\r\n\r\n.ptc-select {\r\n\t.ptc-label-select {\r\n\t\tdisplay: block;\r\n\t\tfont-size: var(--ptc-font-size-xx-small);\r\n\t\tfont-weight: var(--ptc-font-weight-semibold);\r\n\t\tline-height: normal;\r\n\t\tmargin-bottom: var(--ptc-element-spacing-01);\r\n\t\tz-index: 1;\r\n\t\tposition: relative;\r\n\t\tcolor: #40434a;\r\n\t}\r\n\r\n\t.mdc-select {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\tmargin-bottom: var(--ptc-element-spacing-04);\r\n\t}\r\n\r\n\t.mdc-select--invalid {\r\n\t\t&::before {\r\n\t\t\tcontent: \"\";\r\n\t\t\tposition: absolute;\r\n\t\t\twidth: calc(100% + 16px);\r\n\t\t\theight: calc(100% + 8px);\r\n\t\t\tbackground: #fef3f3;\r\n\t\t\tdisplay: flex;\r\n\t\t\tflex-direction: column;\r\n\t\t\tjustify-content: center;\r\n\t\t\tz-index: 0;\r\n\t\t\tleft: 50%;\r\n\t\t\ttop: 50%;\r\n\t\t\ttransform: translate(-50%, -50%);\r\n\t\t}\r\n\r\n\t\t.mdc-select__anchor {\r\n\t\t\tbackground-color: var(--color-white) !important;\r\n\t\t\tpadding-left: 8px;\r\n\t\t}\r\n\t}\r\n\r\n\t.mdc-select--outlined {\r\n\t\twidth: 273px;\r\n\r\n\t\t.mdc-select__anchor {\r\n\t\t\theight: 34px;\r\n\t\t\twidth: 273px;\r\n\t\t\tpadding-left: 8px;\r\n\t\t}\r\n\r\n\t\t.mdc-notched-outline__trailing {\r\n\t\t\tborder-radius: 0px !important;\r\n\t\t}\r\n\r\n\t\t.mdc-notched-outline__leading {\r\n\t\t\tborder-radius: 0px !important;\r\n\t\t}\r\n\t}\r\n\r\n\t.mdc-select-helper-text {\r\n\t\tz-index: 1;\r\n\t\tposition: relative;\r\n\t\topacity: 0;\r\n\t\tmargin-top: var(--ptc-element-spacing-02);\r\n\t\t//margin-bottom: var(--ptc-element-spacing-01);\r\n\t}\r\n\r\n\t.select-error-svg {\r\n\t\ttransform: translate(-8px, 3px);\r\n\t}\r\n\r\n\t.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--invalid\r\n\t\t.mdc-select-helper-text--validation-msg {\r\n\t\tcolor: #af3231;\r\n\t\tfont-family: Raleway;\r\n\t\tfont-size: 14px;\r\n\t\tfont-style: normal;\r\n\t\tfont-weight: 600;\r\n\t\tline-height: var(--ptc-line-height-densest);\r\n\t\topacity: 1;\r\n\t\theight: auto;\r\n\t\tmargin-left: 8px;\r\n\t}\r\n\r\n\t.mdc-select--invalid:not(.mdc-select--disabled).mdc-select--invalid\r\n\t\t.mdc-select-helper-text--info-msg {\r\n\t\tcolor: #40434a;\r\n\t\tfont-family: var(--ptc-font-latin);\r\n\t\tfont-size: var(--ptc-font-size-xx-small);\r\n\t\tfont-style: normal;\r\n\t\tfont-weight: var(--ptc-font-weight-medium);\r\n\t\tline-height: var(--ptc-line-height-densest);\r\n\t\tmax-width: 240px;\r\n\t\topacity: 1;\r\n\t\theight: auto;\r\n\t\ttransform: translateX(8px);\r\n\t}\r\n\r\n\t.mdc-select-helper-text--validation-msg,\r\n\t.mdc-select-helper-text--info-msg {\r\n\t\tline-height: 0.66;\r\n\t\theight: 0;\r\n\t}\r\n\r\n\t.mdc-select--outlined:not(.mdc-select--disabled).mdc-select--focused {\r\n\t\t.mdc-notched-outline {\r\n\t\t\t.mdc-notched-outline__leading,\r\n\t\t\t.mdc-notched-outline__notch,\r\n\t\t\t.mdc-notched-outline__trailing {\r\n\t\t\t\tborder-color: var(--color-hyperlink);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t.mdc-select--outlined:not(\r\n\t\t\t.mdc-select--disabled\r\n\t\t).mdc-select--focused.keyboard-focus {\r\n\t\t.mdc-notched-outline {\r\n\t\t\t.mdc-notched-outline__leading,\r\n\t\t\t.mdc-notched-outline__notch,\r\n\t\t\t.mdc-notched-outline__trailing {\r\n\t\t\t\t//Update for tab navigation\r\n\t\t\t\tborder-color: var(--keyboard-nav-outline);\r\n\t\t\t\tborder-width: 5px;\r\n\t\t\t}\r\n\t\t\t.mdc-notched-outline__leading {\r\n\t\t\t\tborder-top-left-radius: var(\r\n\t\t\t\t\t--ptc-border-radius-standard\r\n\t\t\t\t) !important;\r\n\t\t\t\tborder-bottom-left-radius: var(\r\n\t\t\t\t\t--ptc-border-radius-standard\r\n\t\t\t\t) !important;\r\n\t\t\t}\r\n\t\t\t.mdc-notched-outline__trailing {\r\n\t\t\t\tborder-top-right-radius: var(\r\n\t\t\t\t\t--ptc-border-radius-standard\r\n\t\t\t\t) !important;\r\n\t\t\t\tborder-bottom-right-radius: var(\r\n\t\t\t\t\t--ptc-border-radius-standard\r\n\t\t\t\t) !important;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t.mdc-select:not(.mdc-select--disabled).mdc-select--focused {\r\n\t\t.mdc-select__dropdown-icon {\r\n\t\t\tfill: var(--color-hyperlink);\r\n\t\t}\r\n\t}\r\n\r\n\t.mdc-select {\r\n\t\t.mdc-select__dropdown-icon {\r\n\t\t\twidth: 18px;\r\n\t\t\theight: 18px;\r\n\t\t\tmargin-right: 8px;\r\n\t\t}\r\n\t}\r\n\r\n\t// .placehoder-li {\r\n\t// color: var(--color-gray-07);\r\n\t// font-family: Raleway;\r\n\t// font-size: var(--ptc-font-size-xx-small);\r\n\t// font-weight: var(--ptc-font-weight-regular);\r\n\t// line-height:var(--ptc-line-height-normal);\r\n\t// }\r\n\r\n\t.mdc-list {\r\n\t\tfont-family: \"Open Sans\", Arial, sans-serif;\r\n\t}\r\n\r\n\t.mdc-list-item {\r\n\t\tpadding: 5px 8px;\r\n\r\n\t\t&:hover {\r\n\t\t\t.mdc-list-item__ripple::before,\r\n\t\t\t.mdc-list-item__ripple::after {\r\n\t\t\t\tbackground-color: var(--color-gray-02) !important;\r\n\t\t\t\topacity: 1;\r\n\t\t\t\tz-index: -1;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t&:focus,\r\n\t\t&:focus-visible {\r\n\t\t\tbackground-color: var(--color-gray-02);\r\n\t\t\toutline: none;\r\n\t\t}\r\n\r\n\t\t&:focus .mdc-list-item__ripple::before,\r\n\t\t&:focus .mdc-list-item__ripple::after,\r\n\t\t&:focus-visible .mdc-list-item__ripple::before,\r\n\t\t&:focus-visible .mdc-list-item__ripple::after {\r\n\t\t\tbackground-color: var(--color-gray-02) !important;\r\n\t\t\topacity: 1;\r\n\t\t\tz-index: -1;\r\n\t\t}\r\n\t}\r\n\r\n\t.mdc-list-item--selected {\r\n\t\t.mdc-list-item__ripple::before,\r\n\t\t.mdc-list-item__ripple::after {\r\n\t\t\tbackground-color: var(--color-gray-02) !important;\r\n\t\t\topacity: 1;\r\n\t\t\tz-index: -1;\r\n\t\t}\r\n\r\n\t\t&:hover {\r\n\t\t\t.mdc-list-item__ripple::before,\r\n\t\t\t.mdc-list-item__ripple::after {\r\n\t\t\t\tbackground-color: var(--color-gray-04) !important;\r\n\t\t\t\topacity: 1;\r\n\t\t\t\tz-index: -1;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t.mdc-list-item__text,\r\n\t.mdc-select__selected-text {\r\n\t\tcolor: var(--color-gray-12);\r\n\t\tfont-family: \"Open Sans\", Arial, sans-serif;\r\n\t\tfont-size: var(--ptc-font-size-xx-small);\r\n\t\tfont-weight: var(--ptc-font-weight-regular);\r\n\t\tline-height: 24px;\r\n\t\t/* 171.429% */\r\n\t}\r\n\r\n\t:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::before,\r\n\t:not(.mdc-list-item--disabled).mdc-list-item .mdc-list-item__ripple::after {\r\n\t\tbackground-color: unset;\r\n\t}\r\n}\r\n","import {\r\n\tComponent,\r\n\th,\r\n\tElement,\r\n\tProp,\r\n\tEvent,\r\n\tEventEmitter,\r\n\tHost,\r\n\tState,\r\n} from \"@stencil/core\";\r\nimport { MDCSelect } from \"@material/select\";\r\nimport { ValidationMessages } from \"../../../utils/validation-messages\";\r\nimport { getLanguageFromURL } from \"../../../utils/utils\";\r\n\r\ninterface ExtendedMDCSelect extends MDCSelect {\r\n\topen: boolean;\r\n}\r\n\r\n@Component({\r\n\ttag: \"ptc-select\",\r\n\tstyleUrl: \"ptc-select.scss\",\r\n\tshadow: false,\r\n})\r\nexport class PtcSelect {\r\n\t@Element() el: HTMLElement;\r\n\t@Prop() fieldId: string;\r\n\t@Prop() label: string;\r\n\t@Prop() isRequired: boolean = true;\r\n\t@Prop({ mutable: true }) helpertext: string = \"Please select a value.\";\r\n\t@Prop() fieldName: string;\r\n\t@Prop() disabled: boolean = false;\r\n\t@Prop({ mutable: true }) selectedValue: string = \"\";\r\n\t@Prop({ mutable: true }) defaultValue: string = \"\";\r\n\t@Prop() infoText: string;\r\n\t/**\r\n\t * Eloqua Data\r\n\t */\r\n\t@Prop() ptcDataEloquaName: string;\r\n\t@Prop() ptcDataTargetEloquaName: string;\r\n\t@State() language: string = \"en\";\r\n\r\n\t@Event() valueChange: EventEmitter<string>;\r\n\r\n\tdefaultSelect: ExtendedMDCSelect;\r\n\tlastInteraction: \"mouse\" | \"keyboard\" = \"mouse\";\r\n\tprivate documentMousedownHandler: () => void;\r\n\tprivate documentKeydownHandler: (e: KeyboardEvent) => void;\r\n\r\n\tasync setValue() {\r\n\t\tthis.defaultSelect.value = this.defaultValue;\r\n\t}\r\n\r\n\tcomponentWillLoad() {\r\n\t\tthis.language = getLanguageFromURL();\r\n\t\tthis.helpertext = this.getValidationMessage(\"select\");\r\n\t}\r\n\r\n\tcomponentDidLoad() {\r\n\t\t// Use requestAnimationFrame to ensure slotted content is fully rendered\r\n\t\trequestAnimationFrame(() => {\r\n\t\t\tthis.initializeMDCSelect();\r\n\t\t});\r\n\t}\r\n\r\n\tprivate initializeMDCSelect() {\r\n\t\tconsole.log(\"[ptc-select DEBUG] Starting initialization for field:\", this.fieldId);\r\n\t\t\r\n\t\tconst selectElement = this.el.querySelector(\".mdc-select\");\r\n\t\tif (!selectElement) {\r\n\t\t\tconsole.warn(\"[ptc-select DEBUG] Unable to find .mdc-select element.\");\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconsole.log(\"[ptc-select DEBUG] Found .mdc-select element:\", selectElement);\r\n\r\n\t\t// Ensure the menu has the mdc-list inside it\r\n\t\tconst menu = selectElement.querySelector(\".mdc-select__menu\");\r\n\t\tconst list = menu?.querySelector(\".mdc-list\");\r\n\t\tconsole.log(\"[ptc-select DEBUG] Menu element:\", menu);\r\n\t\tconsole.log(\"[ptc-select DEBUG] List element:\", list);\r\n\t\t\r\n\t\tif (!list) {\r\n\t\t\tconsole.warn(\"[ptc-select DEBUG] Unable to find .mdc-list inside menu. Retrying...\");\r\n\t\t\t// Retry after a short delay if list is not found (slot content may not be ready)\r\n\t\t\tsetTimeout(() => this.initializeMDCSelect(), 100);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\ttry {\r\n\t\t\tthis.defaultSelect = new MDCSelect(selectElement) as ExtendedMDCSelect;\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] MDCSelect initialized successfully:\", this.defaultSelect);\r\n\t\t} catch (error) {\r\n\t\t\tconsole.error(\"[ptc-select DEBUG] Error initializing MDCSelect:\", error);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\t// Add click listener for debugging\r\n\t\tconst anchor = selectElement.querySelector(\".mdc-select__anchor\");\r\n\t\tif (anchor) {\r\n\t\t\tanchor.addEventListener(\"click\", (e) => {\r\n\t\t\t\tconsole.log(\"[ptc-select DEBUG] Anchor clicked!\", e);\r\n\t\t\t\tconsole.log(\"[ptc-select DEBUG] MDCSelect open state:\", this.defaultSelect?.open);\r\n\t\t\t\tconsole.log(\"[ptc-select DEBUG] Menu classes:\", menu?.className);\r\n\t\t\t\tconsole.log(\"[ptc-select DEBUG] Select classes:\", selectElement.className);\r\n\t\t\t});\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] Click listener added to anchor\");\r\n\t\t}\r\n\r\n\t\t// Listen for MDCSelect events\r\n\t\tthis.defaultSelect.listen(\"MDCSelect:change\", () => {\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] MDCSelect:change event fired, value:\", this.defaultSelect.value);\r\n\t\t});\r\n\r\n\t\tthis.defaultSelect.listen(\"MDCMenuSurface:opened\", () => {\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] Menu opened!\");\r\n\t\t});\r\n\r\n\t\tthis.defaultSelect.listen(\"MDCMenuSurface:closed\", () => {\r\n\t\t\tconsole.log(\"[ptc-select DEBUG] Menu closed!\");\r\n\t\t});\r\n\r\n\t\tif (this.defaultValue) this.setValue();\r\n\r\n\t\tthis.defaultSelect.listen(\"MDCSelect:change\", () => {\r\n\t\t\tif (this.selectedValue !== this.defaultSelect.value) {\r\n\t\t\t\tthis.valueChange.emit(this.defaultSelect.value);\r\n\t\t\t\tthis.selectedValue = this.defaultSelect.value;\r\n //PUT BACK IN WHEN WE CAN FIGURE OUT WHY IT'S NOT WORKING\r\n\t\t\t\t// if (this.fieldId === \"contact-country\") {\r\n\t\t\t\t// \tconst countryCode = this.selectedValue\r\n\t\t\t\t// \t\t? this.map[this.selectedValue]\r\n\t\t\t\t// \t\t: \"\";\r\n\t\t\t\t// \tconst telField = document.querySelector(\r\n\t\t\t\t// \t\t'ptc-textfield[field-id=\"contact-phone\"]',\r\n\t\t\t\t// \t) as HTMLPtcTextfieldElement;\r\n\t\t\t\t// \t// if (telField && countryCode) {\r\n\t\t\t\t// \t// \ttelField.syncCountry(countryCode);\r\n\t\t\t\t// \t// }\r\n\t\t\t\t// }\r\n\t\t\t}\r\n\t\t});\r\n\t\tthis.addKeyboardAccessibility();\r\n\r\n\t\tthis.setupFocusHandlers();\r\n\t}\r\n\r\n\tdisconnectedCallback() {\r\n\t\t// Remove document event listeners to prevent memory leaks\r\n\t\tif (this.documentMousedownHandler) {\r\n\t\t\tdocument.removeEventListener(\"mousedown\", this.documentMousedownHandler);\r\n\t\t}\r\n\t\tif (this.documentKeydownHandler) {\r\n\t\t\tdocument.removeEventListener(\"keydown\", this.documentKeydownHandler);\r\n\t\t}\r\n\t\tif (this.defaultSelect) {\r\n\t\t\tthis.defaultSelect.destroy();\r\n\t\t}\r\n\t}\r\n\r\n\taddKeyboardAccessibility() {\r\n\t\tconst selectAnchor = this.el.querySelector(\r\n\t\t\t\".mdc-select__anchor\",\r\n\t\t) as HTMLElement;\r\n\t\tconst menu = this.el.querySelector(\".mdc-select__menu\") as HTMLElement;\r\n\r\n\t\tif (!selectAnchor || !menu) {\r\n\t\t\tconsole.warn(\r\n\t\t\t\t\"ptc-select: Unable to find select anchor or menu elements.\",\r\n\t\t\t);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tselectAnchor.addEventListener(\"keydown\", (event: KeyboardEvent) => {\r\n\t\t\tconst key = event.key;\r\n\r\n\t\t\tswitch (key) {\r\n\t\t\t\tcase \"Enter\":\r\n\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\tthis.defaultSelect.open = !this.defaultSelect.open;\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.setFocusToFirstMenuitem();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"ArrowDown\":\r\n\t\t\t\tcase \"ArrowUp\":\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"Escape\":\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.defaultSelect.open = false;\r\n\t\t\t\t\t\tselectAnchor.focus();\r\n\t\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"Tab\":\r\n\t\t\t\t\tif (this.defaultSelect.open) {\r\n\t\t\t\t\t\tthis.defaultSelect.open = false;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\t// Focus the first menu item in the dropdown\r\n\tsetFocusToFirstMenuitem() {\r\n\t\tconst firstMenuItem = this.el.querySelector(\r\n\t\t\t\".mdc-list-item\",\r\n\t\t) as HTMLElement;\r\n\t\tif (firstMenuItem) {\r\n\t\t\tfirstMenuItem.focus();\r\n\t\t}\r\n\t}\r\n\r\n\tsetFocusToNextMenuitem(currentMenuitem: HTMLElement) {\r\n\t\tconst menuItems = Array.from(\r\n\t\t\tthis.el.querySelectorAll(\".mdc-list-item\"),\r\n\t\t) as HTMLElement[];\r\n\t\tconst currentIndex = menuItems.indexOf(currentMenuitem);\r\n\t\tconst nextIndex = (currentIndex + 1) % menuItems.length;\r\n\t\tmenuItems[nextIndex].focus();\r\n\t}\r\n\r\n\tsetFocusToPreviousMenuitem(currentMenuitem: HTMLElement) {\r\n\t\tconst menuItems = Array.from(\r\n\t\t\tthis.el.querySelectorAll(\".mdc-list-item\"),\r\n\t\t) as HTMLElement[];\r\n\t\tconst currentIndex = menuItems.indexOf(currentMenuitem);\r\n\t\tconst previousIndex =\r\n\t\t\t(currentIndex - 1 + menuItems.length) % menuItems.length;\r\n\t\tmenuItems[previousIndex].focus();\r\n\t}\r\n\r\n\tgetValidationMessage(type: string) {\r\n\t\treturn ValidationMessages[this.language][type];\r\n\t}\r\n\r\n\tgetSelectClassName() {\r\n\t\tlet className =\r\n\t\t\t\"mdc-select mdc-select--outlined mdc-select--no-label mf-listen\";\r\n\t\tif (this.isRequired) {\r\n\t\t\tclassName = `${className} mdc-select--required`;\r\n\t\t}\r\n\t\treturn className;\r\n\t}\r\n\r\n\tsetupFocusHandlers() {\r\n\t\t// Track the last interaction type - use bound handlers for proper cleanup\r\n\t\tthis.documentMousedownHandler = () => {\r\n\t\t\tthis.lastInteraction = \"mouse\";\r\n\t\t};\r\n\t\tthis.documentKeydownHandler = (e: KeyboardEvent) => {\r\n\t\t\tif (e.key === \"Tab\") {\r\n\t\t\t\tthis.lastInteraction = \"keyboard\";\r\n\t\t\t}\r\n\t\t};\r\n\t\tdocument.addEventListener(\"mousedown\", this.documentMousedownHandler);\r\n\t\tdocument.addEventListener(\"keydown\", this.documentKeydownHandler);\r\n\r\n\t\t// Only query select fields within this component, not globally\r\n\t\tconst selectField = this.el.querySelector(\r\n\t\t\t\".mdc-select\",\r\n\t\t) as HTMLElement;\r\n\t\tif (selectField) {\r\n\t\t\tconst select = selectField.querySelector(\".mdc-select__anchor\");\r\n\t\t\tif (select) {\r\n\t\t\t\tselect.addEventListener(\"focus\", () => {\r\n\t\t\t\t\tif (this.lastInteraction === \"keyboard\") {\r\n\t\t\t\t\t\tselectField.classList.add(\"keyboard-focus\");\r\n\t\t\t\t\t\tselectField.classList.remove(\"mouse-focus\");\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tselectField.classList.add(\"mouse-focus\");\r\n\t\t\t\t\t\tselectField.classList.remove(\"keyboard-focus\");\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t\tselect.addEventListener(\"blur\", () => {\r\n\t\t\t\t\tselectField.classList.remove(\r\n\t\t\t\t\t\t\"keyboard-focus\",\r\n\t\t\t\t\t\t\"mouse-focus\",\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t<Host class=\"ptc-select mf-listen\">\r\n\t\t\t\t<div class={this.getSelectClassName()}>\r\n\t\t\t\t\t<label class=\"ptc-label-select\" htmlFor={this.fieldId}>\r\n\t\t\t\t\t\t{this.label}\r\n\t\t\t\t\t</label>\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"mdc-select__anchor\"\r\n\t\t\t\t\t\trole=\"button\"\r\n\t\t\t\t\t\taria-haspopup=\"listbox\"\r\n\t\t\t\t\t\taria-labelledby=\"outlined-select-label\"\r\n\t\t\t\t\t\ttabindex=\"0\"\r\n\t\t\t\t\t\t{...(this.isRequired ? { ariaRequired: true } : null)}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<span class=\"mdc-notched-outline\">\r\n\t\t\t\t\t\t\t<span class=\"mdc-notched-outline__leading\"></span>\r\n\t\t\t\t\t\t\t<span class=\"mdc-notched-outline__trailing\"></span>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<span class=\"mdc-select__selected-text-container\">\r\n\t\t\t\t\t\t\t<span\r\n\t\t\t\t\t\t\t\tid={this.fieldId}\r\n\t\t\t\t\t\t\t\tclass=\"mdc-select__selected-text\"\r\n\t\t\t\t\t\t\t\taria-controls={this.fieldName}\r\n\t\t\t\t\t\t\t\taria-describedby={this.fieldName}\r\n\t\t\t\t\t\t\t\tdata-eloqua-name={this.ptcDataEloquaName}\r\n\t\t\t\t\t\t\t\tdata-target-eloqua-name={\r\n\t\t\t\t\t\t\t\t\tthis.ptcDataTargetEloquaName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t></span>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t<span class=\"mdc-select__dropdown-icon\">\r\n\t\t\t\t\t\t\t<svg\r\n\t\t\t\t\t\t\t\tclass=\"\"\r\n\t\t\t\t\t\t\t\twidth=\"10\"\r\n\t\t\t\t\t\t\t\theight=\"10\"\r\n\t\t\t\t\t\t\t\tviewBox=\"0 0 10 10\"\r\n\t\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t<path d=\"M1.375 1.875L5 5.5L8.625 1.875L9.9375 3.1875L5 8.125L0.0625 3.1875L1.375 1.875Z\" />\r\n\t\t\t\t\t\t\t</svg>\r\n\t\t\t\t\t\t</span>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\tclass=\"mdc-select__menu mdc-menu mdc-menu-surface mdc-menu-surface--fullwidth\"\r\n\t\t\t\t\t\trole=\"listbox\"\r\n\t\t\t\t\t\taria-label={this.label}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<slot></slot>\r\n\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t<p\r\n\t\t\t\t\t\tid={this.fieldName}\r\n\t\t\t\t\t\tclass=\"mdc-select-helper-text mdc-select-helper-text--validation-msg\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<svg\r\n\t\t\t\t\t\t\tclass=\"select-error-svg\"\r\n\t\t\t\t\t\t\twidth=\"16\"\r\n\t\t\t\t\t\t\theight=\"16\"\r\n\t\t\t\t\t\t\tviewBox=\"0 0 16 16\"\r\n\t\t\t\t\t\t\tfill=\"none\"\r\n\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\r\n\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t<g clip-path=\"url(#clip0_12_1424)\">\r\n\t\t\t\t\t\t\t\t<path\r\n\t\t\t\t\t\t\t\t\tfill-rule=\"evenodd\"\r\n\t\t\t\t\t\t\t\t\tclip-rule=\"evenodd\"\r\n\t\t\t\t\t\t\t\t\td=\"M11.3156 0L16 4.68444V11.3156L11.3156 16H4.68444L0 11.3156V4.68444L4.68444 0H11.3156ZM8 10.4C7.36 10.4 6.84444 10.9156 6.84444 11.5556C6.84444 12.1956 7.36 12.7111 8 12.7111C8.64 12.7111 9.15556 12.1956 9.15556 11.5556C9.15556 10.9156 8.64 10.4 8 10.4ZM8.88889 3.55556H7.11111V8.88889H8.88889V3.55556Z\"\r\n\t\t\t\t\t\t\t\t\tfill=\"#AF3231\"\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t</g>\r\n\t\t\t\t\t\t\t<defs>\r\n\t\t\t\t\t\t\t\t<clipPath id=\"clip0_12_1424\">\r\n\t\t\t\t\t\t\t\t\t<rect width=\"16\" height=\"16\" fill=\"white\" />\r\n\t\t\t\t\t\t\t\t</clipPath>\r\n\t\t\t\t\t\t\t</defs>\r\n\t\t\t\t\t\t</svg>\r\n\t\t\t\t\t\t{this.helpertext}\r\n\t\t\t\t\t</p>\r\n\t\t\t\t\t{this.infoText ? (\r\n\t\t\t\t\t\t<p class=\"mdc-select-helper-text mdc-select-helper-text--info-msg\">\r\n\t\t\t\t\t\t\t{this.infoText}\r\n\t\t\t\t\t\t</p>\r\n\t\t\t\t\t) : null}\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t{/* helper text */}\r\n\t\t\t</Host>\r\n\t\t);\r\n\t}\r\n}\r\n"],"version":3}
|
|
@@ -3,7 +3,7 @@ import { d as defineCustomElement$9 } from './p-BJBZdTyo.js';
|
|
|
3
3
|
import { d as defineCustomElement$8 } from './p-TdFYF_Os.js';
|
|
4
4
|
import { d as defineCustomElement$7 } from './p-DMTNMD3o.js';
|
|
5
5
|
import { d as defineCustomElement$6 } from './p-Im8fglI_.js';
|
|
6
|
-
import { d as defineCustomElement$5 } from './p-
|
|
6
|
+
import { d as defineCustomElement$5 } from './p-1BqkHLLN.js';
|
|
7
7
|
import { d as defineCustomElement$4 } from './p-BAXVGaW1.js';
|
|
8
8
|
import { d as defineCustomElement$3 } from './p-HAtJV2yg.js';
|
|
9
9
|
import { d as defineCustomElement$2 } from './p-qFwJl5xl.js';
|