q2-tecton-elements 1.48.1 → 1.48.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 (211) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +17 -54
  2. package/dist/cjs/click-elsewhere_2.cjs.entry.js.map +1 -1
  3. package/dist/cjs/{index-a93362ed.js → index-3f1498f7.js} +33 -1
  4. package/dist/cjs/index-3f1498f7.js.map +1 -0
  5. package/dist/cjs/q2-action-sheet.cjs.entry.js +1 -1
  6. package/dist/cjs/q2-btn_2.cjs.entry.js +1 -1
  7. package/dist/cjs/q2-calendar.cjs.entry.js +1 -1
  8. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  9. package/dist/cjs/q2-carousel-pane.cjs.entry.js +1 -1
  10. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  11. package/dist/cjs/q2-chart-area.cjs.entry.js +1 -1
  12. package/dist/cjs/q2-chart-bar.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-chart-donut.cjs.entry.js +1 -1
  14. package/dist/cjs/q2-checkbox-group.cjs.entry.js +1 -1
  15. package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
  16. package/dist/cjs/q2-data-table.cjs.entry.js +1 -1
  17. package/dist/cjs/q2-detail.cjs.entry.js +1 -1
  18. package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
  19. package/dist/cjs/q2-dropdown.cjs.entry.js +4 -2
  20. package/dist/cjs/q2-dropdown.cjs.entry.js.map +1 -1
  21. package/dist/cjs/q2-editable-field.cjs.entry.js +1 -1
  22. package/dist/cjs/q2-icon.cjs.entry.js +1 -1
  23. package/dist/cjs/q2-input.cjs.entry.js +1 -1
  24. package/dist/cjs/q2-item.cjs.entry.js +1 -1
  25. package/dist/cjs/q2-list.cjs.entry.js +1 -1
  26. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  27. package/dist/cjs/q2-message.cjs.entry.js +1 -1
  28. package/dist/cjs/q2-month-picker.cjs.entry.js +1 -1
  29. package/dist/cjs/q2-optgroup.cjs.entry.js +1 -1
  30. package/dist/cjs/q2-option-list.cjs.entry.js +1 -1
  31. package/dist/cjs/q2-pagination.cjs.entry.js +1 -1
  32. package/dist/cjs/q2-pill.cjs.entry.js +1 -1
  33. package/dist/cjs/q2-radio-group.cjs.entry.js +1 -1
  34. package/dist/cjs/q2-radio.cjs.entry.js +1 -1
  35. package/dist/cjs/q2-relative-time.cjs.entry.js +1 -1
  36. package/dist/cjs/q2-section.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-select.cjs.entry.js +48 -4
  38. package/dist/cjs/q2-select.cjs.entry.js.map +1 -1
  39. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  40. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +1 -1
  41. package/dist/cjs/q2-stepper.cjs.entry.js +1 -1
  42. package/dist/cjs/q2-tab-container.cjs.entry.js +1 -1
  43. package/dist/cjs/q2-tag.cjs.entry.js +1 -1
  44. package/dist/cjs/q2-textarea.cjs.entry.js +1 -1
  45. package/dist/cjs/q2-tooltip.cjs.entry.js +1 -1
  46. package/dist/collection/components/q2-dropdown/q2-dropdown.js +3 -1
  47. package/dist/collection/components/q2-dropdown/q2-dropdown.js.map +1 -1
  48. package/dist/collection/components/q2-popover/q2-popover.js +17 -54
  49. package/dist/collection/components/q2-popover/q2-popover.js.map +1 -1
  50. package/dist/collection/components/q2-select/q2-select.js +47 -3
  51. package/dist/collection/components/q2-select/q2-select.js.map +1 -1
  52. package/dist/collection/utils/index.js +31 -0
  53. package/dist/collection/utils/index.js.map +1 -1
  54. package/dist/components/index2.js +32 -1
  55. package/dist/components/index2.js.map +1 -1
  56. package/dist/components/q2-dropdown.js +3 -1
  57. package/dist/components/q2-dropdown.js.map +1 -1
  58. package/dist/components/q2-popover2.js +17 -54
  59. package/dist/components/q2-popover2.js.map +1 -1
  60. package/dist/components/q2-select2.js +48 -4
  61. package/dist/components/q2-select2.js.map +1 -1
  62. package/dist/esm/click-elsewhere_2.entry.js +17 -54
  63. package/dist/esm/click-elsewhere_2.entry.js.map +1 -1
  64. package/dist/esm/{index-3c5cd75e.js → index-58266aeb.js} +33 -2
  65. package/dist/esm/index-58266aeb.js.map +1 -0
  66. package/dist/esm/q2-action-sheet.entry.js +1 -1
  67. package/dist/esm/q2-btn_2.entry.js +1 -1
  68. package/dist/esm/q2-calendar.entry.js +1 -1
  69. package/dist/esm/q2-card.entry.js +1 -1
  70. package/dist/esm/q2-carousel-pane.entry.js +1 -1
  71. package/dist/esm/q2-carousel.entry.js +1 -1
  72. package/dist/esm/q2-chart-area.entry.js +1 -1
  73. package/dist/esm/q2-chart-bar.entry.js +1 -1
  74. package/dist/esm/q2-chart-donut.entry.js +1 -1
  75. package/dist/esm/q2-checkbox-group.entry.js +1 -1
  76. package/dist/esm/q2-checkbox.entry.js +1 -1
  77. package/dist/esm/q2-data-table.entry.js +1 -1
  78. package/dist/esm/q2-detail.entry.js +1 -1
  79. package/dist/esm/q2-dropdown-item.entry.js +1 -1
  80. package/dist/esm/q2-dropdown.entry.js +4 -2
  81. package/dist/esm/q2-dropdown.entry.js.map +1 -1
  82. package/dist/esm/q2-editable-field.entry.js +1 -1
  83. package/dist/esm/q2-icon.entry.js +1 -1
  84. package/dist/esm/q2-input.entry.js +1 -1
  85. package/dist/esm/q2-item.entry.js +1 -1
  86. package/dist/esm/q2-list.entry.js +1 -1
  87. package/dist/esm/q2-loc.entry.js +1 -1
  88. package/dist/esm/q2-message.entry.js +1 -1
  89. package/dist/esm/q2-month-picker.entry.js +1 -1
  90. package/dist/esm/q2-optgroup.entry.js +1 -1
  91. package/dist/esm/q2-option-list.entry.js +1 -1
  92. package/dist/esm/q2-pagination.entry.js +1 -1
  93. package/dist/esm/q2-pill.entry.js +1 -1
  94. package/dist/esm/q2-radio-group.entry.js +1 -1
  95. package/dist/esm/q2-radio.entry.js +1 -1
  96. package/dist/esm/q2-relative-time.entry.js +1 -1
  97. package/dist/esm/q2-section.entry.js +1 -1
  98. package/dist/esm/q2-select.entry.js +48 -4
  99. package/dist/esm/q2-select.entry.js.map +1 -1
  100. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  101. package/dist/esm/q2-stepper-vertical.entry.js +1 -1
  102. package/dist/esm/q2-stepper.entry.js +1 -1
  103. package/dist/esm/q2-tab-container.entry.js +1 -1
  104. package/dist/esm/q2-tag.entry.js +1 -1
  105. package/dist/esm/q2-textarea.entry.js +1 -1
  106. package/dist/esm/q2-tooltip.entry.js +1 -1
  107. package/dist/jest.setup.js +11 -0
  108. package/dist/jest.setup.js.map +1 -1
  109. package/dist/q2-tecton-elements/{p-3fe532bc.entry.js → p-05f5d0ab.entry.js} +2 -2
  110. package/dist/q2-tecton-elements/{p-1a628982.entry.js → p-0f9d4d30.entry.js} +2 -2
  111. package/dist/q2-tecton-elements/p-139926a3.entry.js +2 -0
  112. package/dist/q2-tecton-elements/p-139926a3.entry.js.map +1 -0
  113. package/dist/q2-tecton-elements/{p-77e6704d.entry.js → p-2cbb1756.entry.js} +2 -2
  114. package/dist/q2-tecton-elements/{p-46085a34.entry.js → p-3468d85d.entry.js} +2 -2
  115. package/dist/q2-tecton-elements/{p-0a211fb4.entry.js → p-3876d25b.entry.js} +2 -2
  116. package/dist/q2-tecton-elements/{p-6be0e333.entry.js → p-3d6e350e.entry.js} +2 -2
  117. package/dist/q2-tecton-elements/p-414c5d4e.entry.js +2 -0
  118. package/dist/q2-tecton-elements/p-414c5d4e.entry.js.map +1 -0
  119. package/dist/q2-tecton-elements/{p-132005d2.entry.js → p-48ecbcc9.entry.js} +2 -2
  120. package/dist/q2-tecton-elements/{p-de2f3111.entry.js → p-4ce69e38.entry.js} +2 -2
  121. package/dist/q2-tecton-elements/{p-e786ba03.entry.js → p-4e58e187.entry.js} +2 -2
  122. package/dist/q2-tecton-elements/{p-a2caa101.entry.js → p-50476216.entry.js} +2 -2
  123. package/dist/q2-tecton-elements/{p-6af21a10.entry.js → p-5234ced7.entry.js} +2 -2
  124. package/dist/q2-tecton-elements/{p-11982614.entry.js → p-5538d1df.entry.js} +2 -2
  125. package/dist/q2-tecton-elements/{p-fe1f1ff4.entry.js → p-5d339d72.entry.js} +2 -2
  126. package/dist/q2-tecton-elements/{p-8734e1cb.entry.js → p-63f9a5e5.entry.js} +2 -2
  127. package/dist/q2-tecton-elements/{p-1d824cdf.entry.js → p-646214e2.entry.js} +2 -2
  128. package/dist/q2-tecton-elements/{p-cfabf5d1.entry.js → p-65e7dab0.entry.js} +2 -2
  129. package/dist/q2-tecton-elements/{p-85a7b1ab.entry.js → p-7c5ee4aa.entry.js} +2 -2
  130. package/dist/q2-tecton-elements/p-7ea95f38.js +2 -0
  131. package/dist/q2-tecton-elements/p-7ea95f38.js.map +1 -0
  132. package/dist/q2-tecton-elements/{p-7deda459.entry.js → p-7fe8e174.entry.js} +2 -2
  133. package/dist/q2-tecton-elements/{p-84fc61f5.entry.js → p-803a5897.entry.js} +2 -2
  134. package/dist/q2-tecton-elements/{p-432532fe.entry.js → p-871bad24.entry.js} +2 -2
  135. package/dist/q2-tecton-elements/{p-5214296a.entry.js → p-8764a131.entry.js} +2 -2
  136. package/dist/q2-tecton-elements/{p-d6c8d94d.entry.js → p-8a2b4f10.entry.js} +2 -2
  137. package/dist/q2-tecton-elements/{p-68276771.entry.js → p-97774780.entry.js} +2 -2
  138. package/dist/q2-tecton-elements/{p-81bb9436.entry.js → p-9c129294.entry.js} +2 -2
  139. package/dist/q2-tecton-elements/{p-def9be7b.entry.js → p-a99e1dc6.entry.js} +2 -2
  140. package/dist/q2-tecton-elements/p-abf27f97.entry.js +2 -0
  141. package/dist/q2-tecton-elements/{p-fe2fd83b.entry.js.map → p-abf27f97.entry.js.map} +1 -1
  142. package/dist/q2-tecton-elements/{p-28b0de1c.entry.js → p-af3a383f.entry.js} +2 -2
  143. package/dist/q2-tecton-elements/{p-07f40176.entry.js → p-b85b6bc1.entry.js} +2 -2
  144. package/dist/q2-tecton-elements/{p-0d73466a.entry.js → p-b998e684.entry.js} +2 -2
  145. package/dist/q2-tecton-elements/{p-63038a54.entry.js → p-c30c53dc.entry.js} +2 -2
  146. package/dist/q2-tecton-elements/{p-76be9cad.entry.js → p-c37fff1e.entry.js} +2 -2
  147. package/dist/q2-tecton-elements/{p-572805fc.entry.js → p-c782a1d6.entry.js} +2 -2
  148. package/dist/q2-tecton-elements/{p-ca17f7ca.entry.js → p-cd225920.entry.js} +2 -2
  149. package/dist/q2-tecton-elements/{p-044b8914.entry.js → p-cdfe6e9d.entry.js} +2 -2
  150. package/dist/q2-tecton-elements/{p-75bb43b2.entry.js → p-d238dc6b.entry.js} +2 -2
  151. package/dist/q2-tecton-elements/{p-644d5b2e.entry.js → p-e08c6b8f.entry.js} +2 -2
  152. package/dist/q2-tecton-elements/{p-d5c182d8.entry.js → p-e41f47bc.entry.js} +2 -2
  153. package/dist/q2-tecton-elements/{p-4740e969.entry.js → p-e4241b1a.entry.js} +2 -2
  154. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  155. package/dist/test/elements/q2-pagination-test.e2e.js +3 -2
  156. package/dist/test/elements/q2-pagination-test.e2e.js.map +1 -1
  157. package/dist/test/elements/q2-popover-test.spec.js +230 -154
  158. package/dist/test/elements/q2-popover-test.spec.js.map +1 -1
  159. package/dist/test/elements/q2-select-test.spec.js +146 -6
  160. package/dist/test/elements/q2-select-test.spec.js.map +1 -1
  161. package/dist/types/builds/q2e/development/tecton/tecton/packages/q2-tecton-elements/.stencil/jest.setup.d.ts +9 -0
  162. package/dist/types/components/q2-popover/q2-popover.d.ts +0 -2
  163. package/dist/types/components/q2-select/q2-select.d.ts +4 -0
  164. package/dist/types/utils/index.d.ts +1 -0
  165. package/package.json +3 -3
  166. package/dist/cjs/index-a93362ed.js.map +0 -1
  167. package/dist/esm/index-3c5cd75e.js.map +0 -1
  168. package/dist/q2-tecton-elements/p-25a0f807.entry.js +0 -2
  169. package/dist/q2-tecton-elements/p-25a0f807.entry.js.map +0 -1
  170. package/dist/q2-tecton-elements/p-84190698.js +0 -2
  171. package/dist/q2-tecton-elements/p-84190698.js.map +0 -1
  172. package/dist/q2-tecton-elements/p-eb45704f.entry.js +0 -2
  173. package/dist/q2-tecton-elements/p-eb45704f.entry.js.map +0 -1
  174. package/dist/q2-tecton-elements/p-fe2fd83b.entry.js +0 -2
  175. /package/dist/q2-tecton-elements/{p-3fe532bc.entry.js.map → p-05f5d0ab.entry.js.map} +0 -0
  176. /package/dist/q2-tecton-elements/{p-1a628982.entry.js.map → p-0f9d4d30.entry.js.map} +0 -0
  177. /package/dist/q2-tecton-elements/{p-77e6704d.entry.js.map → p-2cbb1756.entry.js.map} +0 -0
  178. /package/dist/q2-tecton-elements/{p-46085a34.entry.js.map → p-3468d85d.entry.js.map} +0 -0
  179. /package/dist/q2-tecton-elements/{p-0a211fb4.entry.js.map → p-3876d25b.entry.js.map} +0 -0
  180. /package/dist/q2-tecton-elements/{p-6be0e333.entry.js.map → p-3d6e350e.entry.js.map} +0 -0
  181. /package/dist/q2-tecton-elements/{p-132005d2.entry.js.map → p-48ecbcc9.entry.js.map} +0 -0
  182. /package/dist/q2-tecton-elements/{p-de2f3111.entry.js.map → p-4ce69e38.entry.js.map} +0 -0
  183. /package/dist/q2-tecton-elements/{p-e786ba03.entry.js.map → p-4e58e187.entry.js.map} +0 -0
  184. /package/dist/q2-tecton-elements/{p-a2caa101.entry.js.map → p-50476216.entry.js.map} +0 -0
  185. /package/dist/q2-tecton-elements/{p-6af21a10.entry.js.map → p-5234ced7.entry.js.map} +0 -0
  186. /package/dist/q2-tecton-elements/{p-11982614.entry.js.map → p-5538d1df.entry.js.map} +0 -0
  187. /package/dist/q2-tecton-elements/{p-fe1f1ff4.entry.js.map → p-5d339d72.entry.js.map} +0 -0
  188. /package/dist/q2-tecton-elements/{p-8734e1cb.entry.js.map → p-63f9a5e5.entry.js.map} +0 -0
  189. /package/dist/q2-tecton-elements/{p-1d824cdf.entry.js.map → p-646214e2.entry.js.map} +0 -0
  190. /package/dist/q2-tecton-elements/{p-cfabf5d1.entry.js.map → p-65e7dab0.entry.js.map} +0 -0
  191. /package/dist/q2-tecton-elements/{p-85a7b1ab.entry.js.map → p-7c5ee4aa.entry.js.map} +0 -0
  192. /package/dist/q2-tecton-elements/{p-7deda459.entry.js.map → p-7fe8e174.entry.js.map} +0 -0
  193. /package/dist/q2-tecton-elements/{p-84fc61f5.entry.js.map → p-803a5897.entry.js.map} +0 -0
  194. /package/dist/q2-tecton-elements/{p-432532fe.entry.js.map → p-871bad24.entry.js.map} +0 -0
  195. /package/dist/q2-tecton-elements/{p-5214296a.entry.js.map → p-8764a131.entry.js.map} +0 -0
  196. /package/dist/q2-tecton-elements/{p-d6c8d94d.entry.js.map → p-8a2b4f10.entry.js.map} +0 -0
  197. /package/dist/q2-tecton-elements/{p-68276771.entry.js.map → p-97774780.entry.js.map} +0 -0
  198. /package/dist/q2-tecton-elements/{p-81bb9436.entry.js.map → p-9c129294.entry.js.map} +0 -0
  199. /package/dist/q2-tecton-elements/{p-def9be7b.entry.js.map → p-a99e1dc6.entry.js.map} +0 -0
  200. /package/dist/q2-tecton-elements/{p-28b0de1c.entry.js.map → p-af3a383f.entry.js.map} +0 -0
  201. /package/dist/q2-tecton-elements/{p-07f40176.entry.js.map → p-b85b6bc1.entry.js.map} +0 -0
  202. /package/dist/q2-tecton-elements/{p-0d73466a.entry.js.map → p-b998e684.entry.js.map} +0 -0
  203. /package/dist/q2-tecton-elements/{p-63038a54.entry.js.map → p-c30c53dc.entry.js.map} +0 -0
  204. /package/dist/q2-tecton-elements/{p-76be9cad.entry.js.map → p-c37fff1e.entry.js.map} +0 -0
  205. /package/dist/q2-tecton-elements/{p-572805fc.entry.js.map → p-c782a1d6.entry.js.map} +0 -0
  206. /package/dist/q2-tecton-elements/{p-ca17f7ca.entry.js.map → p-cd225920.entry.js.map} +0 -0
  207. /package/dist/q2-tecton-elements/{p-044b8914.entry.js.map → p-cdfe6e9d.entry.js.map} +0 -0
  208. /package/dist/q2-tecton-elements/{p-75bb43b2.entry.js.map → p-d238dc6b.entry.js.map} +0 -0
  209. /package/dist/q2-tecton-elements/{p-644d5b2e.entry.js.map → p-e08c6b8f.entry.js.map} +0 -0
  210. /package/dist/q2-tecton-elements/{p-d5c182d8.entry.js.map → p-e41f47bc.entry.js.map} +0 -0
  211. /package/dist/q2-tecton-elements/{p-4740e969.entry.js.map → p-e4241b1a.entry.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["q2SelectCss","Q2SelectStyle0","Q2Select","this","lastTouchWasInPopover","scheduledAfterRender","addTouchEventListeners","isMobile","popoverElement","addEventListener","handleTouchStart","passive","initEventListeners","_a","screen","orientation","handleOrientationChange","window","visualViewport","initMutationObserver","observer","MutationObserver","onMutationObserved","observe","hostElement","childList","subtree","mutationObserver","showSelectedOptions","showSelected","showAllOptions","hasPopoverTop","hasPopoverBottom","slotContainer","querySelector","displaySlot","shadowRoot","hasCustomDisplay","assignedNodes","length","children","popTopSlot","topSlotHasNode","popBottomSlot","bottomSlotHasNode","checkSelectedOptions","onOptionListChange","event","stopPropagation","values","detail","handleSelectionChanges","destroyEventListeners","removeEventListener","removeTouchEventListeners","isLandscape","isModule","Tecton","platformDimensions","orientationType","includes","_c","_b","type","searchable","originalSearchable","document","activeElement","target","inputFocused","focus","onPopoverState","open","action","searchText","optionList","setActiveElement","inputField","inputKeydownHandler","readonly","disabled","key","hasSlot","isShiftTab","shiftKey","shouldShowActionSheet","executeActionSheet","keysForOptionListToHandle","value","preventDefault","openDropdownWithoutActiveElement","shouldClearSearchText","clearSearchText","handleOptionListExternalKeydown","visibilityToggleKeyDown","isRadioControlKey","setDefaultActiveElement","inputClickHandler","async","focusInput","toggleDropdown","inputInputHandler","eventValue","shouldClearValue","clearValue","prioritizeSearch","input","emit","query","inputFocusHandler","inputBlurHandler","inputChangeHandler","clickedElsewhere","localName","innerInputField","blur","onCustomDisplayClick","useActionSheets","loc","componentWillLoad","handleAriaLabel","buildStructuredSelectedOptions","handleMultilineOptionsUpdate","multilineOptions","componentDidLoad","overrideFocus","setTimeout","checkSelectedDisplay","componentDidRender","forEach","fn","disconnectedCallback","disconnect","isIframe","top","hasPlatformDimensions","Object","keys","innerInputContainer","badgeValue","multiple","optionsLength","selectedOptions","popoverMinHeight","minRows","firstOption","minHeight","getComputedStyle","parseInt","selectedDisplay","calculateMultiSelectSelectedDisplay","calculateSingleSelectSelectedDisplay","selectedDisplaySlot","firstSelectedValue","firstSelectedOptionElement","optionElements","find","Array","from","querySelectorAll","wrapperClasses","errors","classes","isArray","push","join","structuredSelectedOptions","map","option","ariaLabelObserver","valueUpdated","newValue","oldValue","element","multiline","openChanged","isOpen","waitForNextPaint","popoverTopContainer","height","offsetHeight","style","setProperty","removeProperty","_togglePopover","click","dispatchEvent","FocusEvent","openPopover","closePopover","setValue","options","valuesSet","Set","searchOptions","InputEvent","keydownHandler","onHostElementChange","onchange","onClearHandler","onHostElementInput","oninput","trim","toLocaleLowerCase","matchedCount","hidden","title","firstElementChild","tagName","display","innerText","searchParams","matched","some","text","statusMessageLocString","count","setStatusMessage","delegateFocus","fromHost","isRelatedTargetWithinHost","clearSelectedDisplay","isEventFromElement","handleFocusout","isLeavingHost","isHostLosingFocus","closeDropdown","handleSelectedDisplay","result","showActionSheetList","changeDetails","selectedOptionValues","change","undefined","textContent","handleExternalKeydown","message","clearTimeout","statusMessageTimer","statusMessage","selected","remove","namedSlot","hasNoValue","selectionClone","cloneNode","clientHeight","outerHTML","replaceChild","createElement","slot","appendChild","checkSelectedDisplayHeight","renderCustomDisplay","hasSelectedDisplay","h","name","render","class","onChange","role","ref","el","label","clearable","error","invalid","optional","placeholder","hideLabel","ariaExpanded","ariaControls","ariaHaspopup","iconRight","onClick","onInput","onKeyDown","onFocus","onBlur","badgeTheme","_role","_preventEntry","optionsDropdown","controlElement","direction","popDirection","mode","popoverMode","block","id","listLabel","tabindex","visibilityToggle","selectedOptionsCount","checked","htmlFor"],"sources":["src/components/q2-select/q2-select.scss?tag=q2-select&encapsulation=shadow","src/components/q2-select/q2-select.tsx"],"sourcesContent":["@import '../../styles/host.scss';\n@import '../../styles/functions';\n@import '../../styles/dropdowns';\n\n:host {\n --comp-select-margin: #{var-list(\n --tct-select-margin,\n unquote(\n '#{var-list(var-prefixer(select-margin-top), --app-scale-4, 30px)} 0 #{var-list(var-prefixer(select-margin-bottom), --app-scale-4, 30px)}'\n )\n )};\n display: block;\n margin: var(--comp-select-margin);\n}\n\n.q2-select-container {\n position: relative;\n display: block;\n}\n\n.q2-select-input {\n margin: 0;\n\n --tct-input-min-height: #{var-list(var-prefixer(select-input-min-height))};\n --tct-input-max-height: #{var-list(var-prefixer(select-input-max-height), none)};\n}\n\n::slotted([slot='_selected-display']) {\n width: 100%;\n min-height: var(--comp-selected-display-height, 44px);\n}\n\n.custom-display-content {\n position: absolute;\n bottom: 0;\n left: calc(var-list(--tct-scale-2, --app-scale-2x, 10px) + 1px);\n height: 44px;\n width: calc(100% - 34px - var-list(--tct-scale-3, --app-scale-3x, 15px));\n overflow: hidden;\n cursor: pointer;\n transition: left var-list(--tct-tween-2, --app-tween-1, unquote('0.2s ease'));\n}\n\n.custom-display-content:not([hidden]) {\n display: flex;\n align-items: center;\n}\n\n.is-searchable.is-focused .custom-display-content,\n.is-searchable .custom-display-content:active {\n left: calc(var-list(--tct-scale-3, --app-scale-3x, 15px) + 1px);\n}\n\n.has-error .custom-display-content {\n width: calc(100% - 68px - var-list(--tct-scale-3, --app-scale-3x, 15px));\n}\n\n.popover-content {\n display: flex;\n flex-direction: column-reverse;\n}\n\n.popover-bottom-container {\n position: sticky;\n bottom: 0;\n z-index: 5;\n}\n\n.popover-top-container {\n position: sticky;\n top: 0;\n z-index: 5;\n .multi-select-header {\n padding: var(--tct-scale-2, var(--app-scale-2x, 10px)) var(--tct-scale-2, var(--app-scale-2x, 10px));\n background: var(--app-white);\n display: flex;\n gap: var-list(--app-scale-2x, 10px);\n align-items: center;\n\n fieldset {\n margin: 0;\n padding: 0;\n border: 0;\n display: flex;\n gap: var-list(--app-scale-2x, 10px);\n }\n\n legend {\n padding: 0;\n float: left;\n }\n\n label {\n cursor: pointer;\n padding: var-list(\n var-prefixer(select-multi-select-option-padding),\n var-prefixer(btn-badge-padding),\n unquote('2px 5px')\n );\n font-size: var-list(\n var-prefixer(select-multi-select-option-font-size),\n var-prefixer(btn-badge-font-size),\n inherit\n );\n border-radius: var-list(\n var-prefixer(select-multi-select-option-radius),\n var-prefixer(btn-badge-border-radius),\n --app-border-radius-1,\n 3px\n );\n background: var-list(\n --tct-select-multi-select-option-background,\n var-prefixer(select-multi-select-option-bg),\n --tct-badge-background,\n var-prefixer(btn-badge-bg),\n transparent\n );\n color: var-list(\n var-prefixer(select-multi-select-option-color),\n var-prefixer(btn-badge-font-color),\n inherit\n );\n\n &:hover {\n background: var-list(\n --tct-select-multi-select-option-hover-background,\n var-prefixer(select-multi-select-option-hover-background-color),\n var-prefixer(btn-badge-hover-bg),\n var-prefixer(gray-14),\n --app-gray-l3,\n #f2f2f2\n );\n color: var-list(\n --tct-select-multi-select-option-hover-color,\n var-prefixer(select-multi-select-option-color),\n var-prefixer(btn-badge-hover-font-color),\n var-prefixer(gray-5),\n --app-gray-d2,\n #404040\n );\n }\n }\n\n input {\n &:checked + label {\n &,\n &:enabled:hover {\n background: var-list(\n --tct-select-multi-select-option-active-background,\n var-prefixer(select-multi-select-option-active-background-color),\n var-prefixer(btn-primary-bg),\n #2e2e2e\n );\n color: var-list(\n var-prefixer(select-multi-select-option-active-color),\n var-prefixer(btn-primary-font-color),\n --app-white,\n #ffffff\n );\n }\n }\n\n &:disabled + label {\n opacity: var-list(\n var-prefixer(select-multi-select-option-disabled-opacity),\n var-prefixer(btn-disabled-opacity),\n --app-disabled-opacity,\n 0.4\n );\n cursor: not-allowed;\n }\n\n &:focus + label {\n box-shadow: var(--const-double-focus-ring);\n }\n }\n }\n}\n","import {\n Component,\n Prop,\n Element,\n h,\n Listen,\n State,\n EventEmitter,\n Event,\n ComponentInterface,\n Watch,\n Method,\n} from '@stencil/core';\nimport { IEventDetail, Q2InputCustomEvent, Q2OptionListCustomEvent } from 'src/components';\nimport {\n handleAriaLabel,\n isEventFromElement,\n isHostLosingFocus,\n isRelatedTargetWithinHost,\n loc,\n overrideFocus,\n waitForNextPaint,\n isMobile,\n} from '../../utils';\nimport { IOptionValue } from '../q2-option-list/q2-option-list';\nimport { shouldShowActionSheet, showActionSheetList } from 'src/utils/action-sheet';\n\n@Component({ tag: 'q2-select', shadow: true, styleUrl: 'q2-select.scss' })\nexport class Q2Select implements ComponentInterface {\n /** Disables all interaction with the field and leverages the disabled visual style of `q2-input`. */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /**\n * The presence of `errors` will mark the field as invalid, putting it into an error state.\n * @localizable\n */\n @Prop() errors: string[];\n\n /**\n * Hide's the field's `<label>` element from view.\n * @warning\n * Only use when a visible label is impractical.\n */\n @Prop({ reflect: true, mutable: true }) hideLabel: boolean;\n\n /** Renders an icon button when the field is non-empty. Pressing the button clears all input from the field. */\n @Prop({ reflect: true }) clearable: boolean;\n\n /**\n * Instructs the component to use the action sheet workflow for displaying its options.\n *\n * For more information, see [Action Sheets](https://tecton.q2developer.com/guides/action-sheets/).\n * @warning\n * If your `q2-select` renders inside of an iframe, and you are using multiline/robust content options,\n * any custom CSS you apply to your options will not get passed up to the platform which displays the action sheet.\n * For this reason, we strongly suggest using the [q2-card](https://tecton.q2developer.com/ui/q2-card/) component since its styling is managed by Tecton.\n */\n @Prop() hoist: boolean = !!window.Tecton?.useActionSheets;\n\n /** Determines whether to show an error state. Its primary use-case is for an unfilled field. */\n @Prop({ reflect: true }) invalid: boolean;\n\n /**\n * The text that will be used as the label for the field.\n * @localizable\n */\n @Prop({ reflect: true, mutable: true }) label: string;\n\n /**\n * Determines the label that is applied to the option list for accessibility purposes.\n * @localizable\n */\n @Prop() listLabel: string = loc('tecton.element.select.listLabel');\n\n /** The minimum number of rows the component will try to display below or above the component when opened. */\n @Prop() minRows: number = 3;\n\n /** Enables text wrapping for `q2-option` elements. When `false`, the text truncates and does not wrap. */\n @Prop({ reflect: true }) multilineOptions: boolean = false;\n\n /** Enables multi-select functionality. */\n @Prop({ reflect: true }) multiple: boolean = false;\n\n /** Appends \"(optional)\" to the field label, and sets `aria-required` on the nested input tag to `false`. */\n @Prop({ reflect: true }) optional: boolean = false;\n\n /**\n * Text that appears within the field when it is blurred and empty.\n * Placeholder text disappears when the user selects an option.\n * @localizable\n */\n @Prop({ reflect: true }) placeholder: string;\n\n /** @deprecated */\n @Prop({ reflect: true }) popDirection: 'up' | 'down';\n\n /**\n * Determines the display mode of the popover.\n *\n * Providing a value of `legacy` instructs the popover to use absolute positioning instead of fixed positioning.\n *\n * @info\n * This is a temporary solution to work around styling issues related to using fixed positioning for the popover\n * when nested inside of elements with transform properties. This will be removed once the popover API is available\n * for use.\n */\n @Prop({ mutable: true }) popoverMode: 'legacy' = null;\n\n /**\n * Appends \"(read only)\" to the field label, and field becomes unusable, but remains focusable.\n * Takes priority over `optional` if both are `true`.\n */\n @Prop({ reflect: true }) readonly: boolean = false;\n\n /** Enables search functionality. */\n @Prop({ reflect: true, mutable: true }) searchable: boolean = false;\n\n /**\n * Each item in this array should correspond to the value of a `q2-option` element.\n * This property is only relevant for `multiple` (i.e., multi-select) implementations.\n */\n @Prop({ mutable: true }) selectedOptions: string[] = [];\n\n /**\n * The current value for the select. This should correspond to the value of a nested q2-option element.\n * This property is only relevant for single-select implementations.\n */\n @Prop({ mutable: true }) value: string;\n\n /** @deprecated */\n @Prop({ reflect: true, mutable: true }) ariaLabel: string;\n\n @Element() hostElement: HTMLElement;\n\n @State() open: boolean = false;\n @State() showSelected: boolean = false;\n @State() searchText: string = '';\n @State() hasCustomDisplay: boolean = false;\n @State() hasPopoverTop: boolean = false;\n @State() hasPopoverBottom: boolean = false;\n @State() inputFocused: boolean = false;\n @State() statusMessage: string;\n @State() prioritizeSearch: boolean = false;\n @State() structuredSelectedOptions: IOptionValue[] = [];\n\n inputField?: HTMLQ2InputElement;\n lastTouchWasInPopover: boolean = false;\n optionList: HTMLQ2OptionListElement;\n popoverElement?: HTMLQ2PopoverElement;\n popoverTopContainer?: HTMLDivElement;\n scheduledAfterRender: (() => void)[] = [];\n mutationObserver: MutationObserver;\n originalSearchable: boolean;\n\n /// Lifecycle Hooks ///\n componentWillLoad() {\n this.originalSearchable = this.searchable;\n handleAriaLabel(this);\n this.handleOrientationChange();\n this.buildStructuredSelectedOptions();\n this.handleMultilineOptionsUpdate(this.multilineOptions, false);\n }\n\n componentDidLoad() {\n this.initMutationObserver();\n this.initEventListeners();\n overrideFocus(this.hostElement);\n setTimeout(() => this.checkSelectedDisplay(), 0);\n }\n\n componentDidRender() {\n setTimeout(() => {\n this.scheduledAfterRender.forEach(fn => fn());\n this.scheduledAfterRender = [];\n }, 25);\n }\n\n disconnectedCallback() {\n this.mutationObserver?.disconnect();\n this.mutationObserver = null;\n this.destroyEventListeners();\n }\n\n /// Getters ///\n get isModule() {\n const isIframe = window !== window.top;\n const hasPlatformDimensions = Object.keys(window.Tecton?.platformDimensions ?? {}).length > 0;\n return isIframe && hasPlatformDimensions;\n }\n\n get innerInputField(): HTMLInputElement | HTMLButtonElement {\n return this.inputField?.shadowRoot?.querySelector('.input-field');\n }\n\n get innerInputContainer(): HTMLElement {\n return this.inputField?.shadowRoot?.querySelector('.input-container');\n }\n\n get badgeValue(): string {\n if (!this.multiple) return null;\n const optionsLength = this.selectedOptions?.length ?? 0;\n if (this.open && this.searchable) return optionsLength ? `${optionsLength}` : null;\n else return optionsLength > 1 ? `+${optionsLength - 1}` : null;\n }\n\n get popoverMinHeight() {\n const { minRows } = this;\n const firstOption = this.hostElement.querySelector<HTMLQ2OptionElement>('q2-option:not([hidden])');\n let minHeight = firstOption && window.getComputedStyle(firstOption).minHeight;\n\n // Safari doesn't return a min-height for non-visible items\n if (!minHeight || minHeight === '0px') minHeight = '44px';\n\n return minRows * parseInt(minHeight);\n }\n\n get selectedDisplay() {\n if (this.prioritizeSearch || this.searchText) return this.searchText;\n if (this.hasCustomDisplay) return '';\n return this.multiple ? this.calculateMultiSelectSelectedDisplay() : this.calculateSingleSelectSelectedDisplay();\n }\n\n get selectedDisplaySlot() {\n return this.hostElement.querySelector<HTMLElement>('[slot=\"_selected-display\"]');\n }\n\n get firstSelectedValue() {\n return this.multiple ? this.selectedOptions?.[0] : this.value;\n }\n\n get firstSelectedOptionElement() {\n const { firstSelectedValue } = this;\n return firstSelectedValue ? this.optionElements.find(({ value }) => value === firstSelectedValue) : null;\n }\n\n get optionElements() {\n return Array.from(this.hostElement.querySelectorAll<HTMLQ2OptionElement>('q2-option'));\n }\n\n get wrapperClasses() {\n const { errors } = this;\n const classes = ['q2-select-container'];\n if (Array.isArray(errors) && errors.length > 0) classes.push('has-error');\n if (this.inputFocused) classes.push('is-focused');\n if (this.searchable) classes.push('is-searchable');\n return classes.join(' ');\n }\n\n /// Watchers ///\n @Watch('value')\n @Watch('selectedOptions')\n buildStructuredSelectedOptions() {\n const { multiple, selectedOptions, value } = this;\n if (multiple) {\n this.structuredSelectedOptions = !!selectedOptions?.length\n ? selectedOptions.map(option => (typeof option === 'string' ? { value: option } : option))\n : [];\n } else {\n this.structuredSelectedOptions = value ? [{ value }] : [];\n }\n }\n\n @Watch('ariaLabel')\n ariaLabelObserver() {\n handleAriaLabel(this);\n }\n\n @Watch('value')\n valueUpdated() {\n if (this.multiple) return;\n this.clearSearchText();\n }\n\n @Watch('multilineOptions')\n handleMultilineOptionsUpdate(newValue, oldValue) {\n if (newValue === oldValue) return;\n this.optionElements.forEach(element => (element.multiline = newValue));\n }\n\n @Watch('open')\n openChanged(isOpen: boolean) {\n if (isOpen) {\n this.addTouchEventListeners();\n } else {\n this.removeTouchEventListeners();\n }\n this.scheduledAfterRender.push(async () => {\n await waitForNextPaint();\n const { popoverTopContainer, popoverElement } = this;\n const height = (isOpen && popoverTopContainer?.offsetHeight) || 0;\n if (height) {\n popoverElement.style.setProperty('--comp-popover-top-container-height', `${height}px`);\n } else {\n popoverElement.style.removeProperty('--comp-popover-top-container-height');\n }\n });\n }\n\n /// Events ///\n /**\n * Emitted when an option is selected or deselected.\n *\n * When the multi-select is enabled, the `value` property will be `undefined` and the `selectedOptions` property\n * will contain the selected option values.\n *\n * @legacyEvent\n */\n @Event() change: EventEmitter<{ value: string; selectedOptions: string[] }>;\n\n /**\n * Emitted when the input value changes.\n *\n * Requires the `searchable` prop to be set to `true`.\n */\n @Event() input: EventEmitter<{ query: string }>;\n\n /// Methods ///\n _togglePopover() {\n const { innerInputField } = this;\n innerInputField?.click();\n innerInputField?.focus();\n innerInputField.dispatchEvent(new FocusEvent('focus'));\n }\n\n /**\n * Emulates clicking the `<input>` to display the popover if it is hidden.\n *\n * @testOnly\n */\n @Method()\n async openPopover() {\n if (this.open || this.disabled) return;\n this._togglePopover();\n }\n\n /**\n * Emulates clicking the `<input>` to hide the popover if it is visible.\n *\n * @testOnly\n */\n @Method()\n async closePopover() {\n if (!this.open || this.disabled) return;\n this._togglePopover();\n }\n\n /**\n * Emulates clicking the `<input>` to display the popover and selecting the option(s) with the specified value(s).\n *\n * If the multi-select is enabled and the `closePopover` argument is `true` (default), the popover will be closed\n * after the option(s) are selected.\n *\n * @testOnly\n */\n @Method()\n async setValue(values: string | string[], options: { closePopover?: boolean } = { closePopover: true }) {\n const valuesSet = new Set(Array.isArray(values) ? values : [values]);\n if (!this.open) {\n await this.openPopover();\n await waitForNextPaint();\n }\n\n valuesSet.forEach(value => {\n this.optionElements.find(option => option.value === value)?.click();\n });\n\n if (options.closePopover) {\n await this.closePopover();\n await waitForNextPaint();\n }\n }\n\n /**\n * Emulates focusing the `<input>`, entering the provided value, and emitting an `input` event.\n *\n * @warning\n * Only applicable when the input is searchable.\n *\n * @testOnly\n */\n @Method()\n searchOptions(query: string) {\n if (!this.searchable) return;\n\n const { innerInputField } = this;\n innerInputField.focus();\n innerInputField.dispatchEvent(new FocusEvent('focus'));\n innerInputField.value = query;\n innerInputField.dispatchEvent(new InputEvent('input'));\n }\n\n /// Listeners ///\n @Listen('keydown')\n keydownHandler(event: KeyboardEvent) {\n this.inputKeydownHandler(event);\n }\n\n @Listen('change')\n onHostElementChange(event: CustomEvent<{ value: string; selectedOptions: string[] }>) {\n if (this.readonly || this.disabled) return;\n if (event.target !== this.hostElement || this.hostElement.onchange) return;\n if (this.multiple) {\n this.value = null;\n this.selectedOptions = event.detail.selectedOptions;\n } else {\n this.value = event.detail.value;\n this.selectedOptions = [];\n }\n }\n\n @Listen('clear')\n onClearHandler() {\n this.clearValue();\n }\n\n @Listen('input')\n onHostElementInput(event: CustomEvent) {\n if (!this.searchable || event.target !== this.hostElement || this.hostElement.oninput) return;\n const options = this.optionElements;\n const query = this.searchText.trim().toLocaleLowerCase();\n let matchedCount = 0;\n options.forEach(option => {\n if (query === '') {\n option.hidden = false;\n return;\n }\n\n const title =\n option.firstElementChild?.tagName === 'Q2-CARD'\n ? (option.firstElementChild as HTMLQ2CardElement).title\n : null;\n const { display = '', innerText = '' } = option;\n const searchParams = [display, title, innerText];\n const matched = searchParams.some(text => text?.toLocaleLowerCase().includes(query) ?? false);\n\n option.hidden = !matched;\n if (matched) matchedCount++;\n });\n\n const statusMessageLocString = query\n ? 'tecton.element.select.searchable.results'\n : 'tecton.element.select.allOptions';\n const count = query ? matchedCount : options.length;\n this.setStatusMessage(loc(statusMessageLocString, [count]));\n }\n\n @Listen('focus')\n delegateFocus(event: FocusEvent) {\n const fromHost = isRelatedTargetWithinHost(event, this.hostElement);\n const prioritizeSearch = (this.prioritizeSearch = fromHost && this.searchable);\n if (prioritizeSearch) {\n this.clearSelectedDisplay();\n } else if (isEventFromElement(event, this.hostElement)) {\n this.innerInputField.focus();\n }\n }\n\n @Listen('focusout')\n handleFocusout(event: FocusEvent) {\n const isLeavingHost = isHostLosingFocus(event, this.hostElement);\n if (isLeavingHost) this.closeDropdown();\n this.prioritizeSearch = !isLeavingHost && this.searchable;\n }\n\n @Listen('displayChanged')\n handleSelectedDisplay(event: CustomEvent) {\n if (this.multiple) return;\n this.inputField.value = event.detail.display;\n }\n\n /// Helpers ///\n async executeActionSheet(event: MouseEvent | KeyboardEvent) {\n const result = await showActionSheetList(this, event);\n this.handleSelectionChanges(result);\n }\n\n addTouchEventListeners = () => {\n if (!isMobile() || !this.popoverElement) return;\n\n this.popoverElement.addEventListener('touchstart', this.handleTouchStart, { passive: true });\n };\n\n handleSelectionChanges(changeDetails: { value?: string; values?: IOptionValue[] }) {\n const { value = '', values = [] } = changeDetails;\n const selectedOptionValues = values.map(value => value.value);\n const { multiple } = this;\n if (!this.hostElement.onchange) {\n this.selectedOptions = selectedOptionValues;\n }\n\n this.change.emit({\n value: multiple ? undefined : value,\n selectedOptions: multiple ? selectedOptionValues : undefined,\n });\n }\n\n initEventListeners = () => {\n if (!isMobile()) return;\n screen?.orientation?.addEventListener('change', this.handleOrientationChange);\n window.addEventListener('resize', this.handleOrientationChange);\n visualViewport?.addEventListener('resize', this.handleOrientationChange);\n };\n\n initMutationObserver = () => {\n const observer = new MutationObserver(this.onMutationObserved);\n observer.observe(this.hostElement, { childList: true, subtree: true });\n this.mutationObserver = observer;\n this.onMutationObserved();\n };\n\n showSelectedOptions = () => {\n this.showSelected = true;\n };\n\n showAllOptions = () => {\n this.showSelected = false;\n };\n\n clearValue() {\n const { multiple } = this;\n this.value = '';\n this.selectedOptions = [];\n this.change.emit({ value: multiple ? undefined : '', selectedOptions: multiple ? [] : undefined });\n }\n\n calculateMultiSelectSelectedDisplay() {\n const { firstSelectedOptionElement, firstSelectedValue, multilineOptions } = this;\n if (!firstSelectedValue) return '';\n if (firstSelectedOptionElement?.display) return loc(firstSelectedOptionElement.display);\n if (multilineOptions && this.searchable) return this.searchText;\n if (multilineOptions) return '';\n return (\n firstSelectedOptionElement?.textContent?.trim() ?? firstSelectedOptionElement?.value ?? firstSelectedValue\n );\n }\n\n calculateSingleSelectSelectedDisplay() {\n const { firstSelectedOptionElement, multilineOptions } = this;\n if (multilineOptions) {\n return (firstSelectedOptionElement?.display && loc(firstSelectedOptionElement.display)) || this.value || '';\n } else {\n return (\n (firstSelectedOptionElement?.display && loc(firstSelectedOptionElement.display)) ||\n firstSelectedOptionElement?.textContent?.trim() ||\n this.value ||\n ''\n );\n }\n }\n\n onMutationObserved = () => {\n const { hostElement, hasPopoverTop, hasPopoverBottom } = this;\n const slotContainer = hostElement.querySelector('.custom-display-content');\n const displaySlot = hostElement.shadowRoot.querySelector<HTMLSlotElement>('slot[name=\"q2-select-display\"]');\n const hasCustomDisplay = !!displaySlot\n ? displaySlot.assignedNodes().length > 0\n : slotContainer.children.length > 0;\n\n if (this.hasCustomDisplay !== hasCustomDisplay) {\n this.hasCustomDisplay = hasCustomDisplay;\n }\n\n const popTopSlot = hostElement.shadowRoot.querySelector<HTMLSlotElement>('slot[name=\"popover-top\"]');\n const topSlotHasNode = popTopSlot.assignedNodes().length > 0;\n if (hasPopoverTop !== topSlotHasNode) {\n this.hasPopoverTop = topSlotHasNode;\n }\n\n const popBottomSlot = hostElement.shadowRoot.querySelector<HTMLSlotElement>('slot[name=\"popover-bottom\"]');\n const bottomSlotHasNode = popBottomSlot.assignedNodes().length > 0;\n if (hasPopoverBottom !== bottomSlotHasNode) {\n this.hasPopoverBottom = bottomSlotHasNode;\n }\n\n this.checkSelectedOptions();\n };\n\n onOptionListChange = (event: Q2OptionListCustomEvent<{ value: string; values: IOptionValue[] }>) => {\n event.stopPropagation();\n const { values } = event.detail;\n\n if (values.length === 0) this.showAllOptions();\n this.handleSelectionChanges(event.detail);\n };\n\n openDropdownWithoutActiveElement() {\n if (this.readonly || this.disabled) return;\n this.optionList.setActiveElement(null);\n this.open = true;\n }\n\n closeDropdown() {\n this.open = false;\n this.lastTouchWasInPopover = false;\n this.clearSearchText();\n }\n\n destroyEventListeners = () => {\n if (!isMobile()) return;\n screen?.orientation?.removeEventListener('change', this.handleOrientationChange);\n window.removeEventListener('resize', this.handleOrientationChange);\n visualViewport?.removeEventListener('resize', this.handleOrientationChange);\n this.removeTouchEventListeners();\n };\n\n clearSearchText() {\n if (!this.searchText) return;\n this.searchText = '';\n this.input.emit({ query: '' });\n }\n\n toggleDropdown() {\n if (this.readonly || this.disabled) return;\n\n if (this.open && !this.searchText) {\n this.closeDropdown();\n } else {\n this.openDropdownWithoutActiveElement();\n }\n }\n\n focusInput() {\n this.inputField?.dispatchEvent(new FocusEvent('focus'));\n }\n\n handleOptionListExternalKeydown(event: KeyboardEvent) {\n this.optionList.handleExternalKeydown(event);\n }\n\n handleOrientationChange = () => {\n if (!isMobile()) return;\n\n let isLandscape: boolean;\n if (this.isModule) {\n isLandscape = window.Tecton?.platformDimensions.orientationType.includes('landscape');\n } else {\n isLandscape = screen?.orientation?.type?.includes('landscape');\n }\n if (isLandscape && this.searchable) this.searchable = false;\n if (!isLandscape) this.searchable = this.originalSearchable;\n };\n\n handleTouchStart = (event: TouchEvent) => {\n if (document.activeElement === this.hostElement) {\n const target = event.target as HTMLElement;\n if (target && target !== this.hostElement) {\n this.inputFocused = false;\n this.lastTouchWasInPopover = true;\n target.focus();\n }\n }\n };\n\n statusMessageTimer: NodeJS.Timeout;\n setStatusMessage(message) {\n clearTimeout(this.statusMessageTimer);\n this.statusMessage = '';\n this.statusMessageTimer = setTimeout(() => {\n this.statusMessage = message;\n }, 1000);\n }\n\n checkSelectedOptions() {\n const { multiple, selectedOptions, value } = this;\n this.optionElements.forEach(option => {\n if (multiple) {\n option.selected = selectedOptions.includes(option.value);\n } else {\n option.selected = option.value === value;\n }\n });\n }\n\n clearSelectedDisplay() {\n this.selectedDisplaySlot?.remove();\n }\n\n checkSelectedDisplay() {\n // This prevents a an undefined property error when the spec tests are run\n try {\n this.hostElement;\n } catch (error) {\n return null;\n }\n\n let namedSlot = this.selectedDisplaySlot;\n const { value, multiple, selectedOptions, multilineOptions, firstSelectedOptionElement, prioritizeSearch } =\n this;\n const hasNoValue = !value && multiple && !selectedOptions?.length;\n if (prioritizeSearch || !multilineOptions || hasNoValue) return this.clearSelectedDisplay();\n\n if (!firstSelectedOptionElement || firstSelectedOptionElement.display) return this.clearSelectedDisplay();\n\n // Clone selected option and remove elements with hide-on-select attribute\n const selectionClone = firstSelectedOptionElement.firstElementChild.cloneNode(true) as HTMLElement;\n selectionClone.querySelectorAll('[hide-on-select]').forEach(element => element.remove());\n\n if (namedSlot) {\n const height = namedSlot.clientHeight === 0 ? 'auto' : `${namedSlot.clientHeight}px`;\n namedSlot.style.setProperty('--comp-selected-display-height', height);\n if (namedSlot.firstElementChild.outerHTML !== selectionClone.outerHTML) {\n namedSlot.replaceChild(selectionClone, namedSlot.firstElementChild);\n }\n } else {\n namedSlot = document.createElement('div');\n namedSlot.slot = '_selected-display';\n namedSlot.appendChild(selectionClone);\n this.hostElement.appendChild(namedSlot);\n }\n return namedSlot;\n }\n\n checkSelectedDisplayHeight() {\n const { selectedDisplaySlot } = this;\n if (!selectedDisplaySlot) return;\n selectedDisplaySlot.style.setProperty('--comp-selected-display-height', '44px');\n }\n\n /// Event handlers ///\n onPopoverState = ({\n detail: { open, action },\n }: CustomEvent<{ open: boolean; action: 'close' | 'select' | 'open' }>) => {\n if (!open || this.searchText) {\n if (action !== 'select') {\n this.optionList.setActiveElement(null);\n }\n this.inputField.focus();\n }\n\n if (this.open === open) return;\n this.open = open;\n };\n\n inputKeydownHandler = (event: KeyboardEvent) => {\n if (this.readonly || this.disabled) return;\n const key = event.key;\n const hasSlot = this.hasPopoverTop || this.hasPopoverBottom;\n const isShiftTab = key === 'Tab' && event.shiftKey;\n if (hasSlot && (key === 'Tab' || key === 'Enter' || isShiftTab)) return;\n if (shouldShowActionSheet(this, event)) {\n return this.executeActionSheet(event);\n }\n\n const keysForOptionListToHandle = [\n 'ArrowDown',\n 'ArrowUp',\n 'PageDown',\n 'PageUp',\n 'Home',\n 'End',\n 'Escape',\n 'Tab',\n ];\n\n if (this.searchable && (key === ' ' || key === 'Enter') && this.inputField.value == '') {\n event.preventDefault();\n if (!this.open) this.openDropdownWithoutActiveElement();\n }\n\n if (this.searchable && !keysForOptionListToHandle.includes(key)) return;\n if (this.shouldClearSearchText(event)) this.clearSearchText();\n\n // Prevent click event from firing when spacebar is pressed\n if (key === ' ') event.preventDefault();\n\n this.handleOptionListExternalKeydown(event);\n };\n\n shouldClearSearchText(event: KeyboardEvent) {\n return this.searchable && !!this.searchText && event.key === 'Escape';\n }\n\n visibilityToggleKeyDown = (event: KeyboardEvent) => {\n const key = event.key;\n const isShiftTab = key === 'Tab' && event.shiftKey;\n const isRadioControlKey = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'].includes(key);\n if (isRadioControlKey) event.stopPropagation();\n if (isShiftTab) {\n event.stopPropagation();\n // allows shift+tab keys to select the top slot when present\n if (this.hasPopoverTop) return;\n\n this.optionList.setDefaultActiveElement();\n }\n };\n\n inputClickHandler = async (event: MouseEvent) => {\n event.stopPropagation();\n // Check if the last interaction was a touch within the popover\n // If so, don't toggle the dropdown as the user is likely continuing to interact\n if (this.lastTouchWasInPopover && this.open && this.searchable) {\n // Reset the flag and don't toggle\n this.lastTouchWasInPopover = false;\n this.focusInput();\n return;\n }\n\n // Reset the flag for any other click\n this.lastTouchWasInPopover = false;\n\n if (shouldShowActionSheet(this)) {\n return this.executeActionSheet(event);\n }\n this.toggleDropdown();\n this.focusInput();\n };\n\n inputInputHandler = (event: Q2InputCustomEvent<IEventDetail> & InputEvent) => {\n event.stopPropagation();\n const eventValue = event.detail.value;\n const shouldClearValue = !!this.value;\n\n if (shouldClearValue) this.clearValue();\n if (!this.open) this.openDropdownWithoutActiveElement();\n\n this.prioritizeSearch = true;\n this.searchText = eventValue;\n this.input.emit({ query: eventValue });\n };\n\n inputFocusHandler = () => {\n this.inputFocused = true;\n };\n\n inputBlurHandler = () => {\n this.inputFocused = false;\n };\n\n inputChangeHandler = (event: Event) => {\n event.stopPropagation();\n };\n\n clickedElsewhere = (event: CustomEvent) => {\n const target = event.target as HTMLClickElsewhereElement;\n if (target.localName !== 'click-elsewhere') return;\n event.stopPropagation();\n const { popoverElement } = this;\n if (!popoverElement) return;\n popoverElement.open = false;\n this.innerInputField.blur();\n };\n\n onCustomDisplayClick = (event: MouseEvent) => {\n event.stopPropagation();\n this.focusInput();\n this.toggleDropdown();\n };\n\n removeTouchEventListeners = () => {\n if (!isMobile() || !this.popoverElement) return;\n\n this.popoverElement.removeEventListener('touchstart', this.handleTouchStart);\n };\n\n /// DOM ///\n renderCustomDisplay() {\n const hasSelectedDisplay = this.checkSelectedDisplay();\n if (!hasSelectedDisplay) return;\n this.checkSelectedDisplayHeight();\n\n return (\n <slot\n name=\"_selected-display\"\n slot=\"custom-display\"\n />\n );\n }\n\n render() {\n return (\n <click-elsewhere\n class={this.wrapperClasses}\n onChange={this.clickedElsewhere}\n >\n <div\n aria-live=\"polite\"\n aria-atomic=\"true\"\n role=\"status\"\n class=\"sr\"\n >\n {this.statusMessage}\n </div>\n <q2-input\n ref={el => (this.inputField = el)}\n class=\"q2-select-input\"\n label={(this.label && loc(this.label)) || ''}\n value={this.selectedDisplay}\n clearable={(this.clearable && (!!this.value || !!this.selectedOptions?.length)) || undefined}\n errors={\n (Array.isArray(this.errors) &&\n this.errors.length > 0 &&\n this.errors.map(error => loc(error))) ||\n (this.invalid && ['tecton.element.select.invalid']) ||\n []\n }\n disabled={this.disabled}\n optional={this.optional}\n readonly={!!this.readonly}\n placeholder={this.placeholder || undefined}\n hideLabel={this.hideLabel}\n ariaExpanded={`${this.open}`}\n ariaControls=\"option-list\"\n ariaHaspopup=\"listbox\"\n test-id=\"toggleDropdown\"\n hide-messages\n iconRight=\"chevron-down\"\n onClick={this.inputClickHandler}\n onInput={this.inputInputHandler}\n onKeyDown={this.inputKeydownHandler}\n onFocus={this.inputFocusHandler}\n onBlur={this.inputBlurHandler}\n onChange={this.inputChangeHandler}\n badgeValue={this.badgeValue}\n badgeTheme={this.inputFocused ? 'primary' : undefined}\n _role=\"combobox\"\n _preventEntry={!this.searchable}\n >\n {this.renderCustomDisplay()}\n </q2-input>\n <div\n class=\"custom-display-content\"\n hidden={!this.hasCustomDisplay || !!this.searchText}\n onClick={this.onCustomDisplayClick}\n >\n <slot name=\"q2-select-display\" />\n </div>\n {this.optionsDropdown()}\n </click-elsewhere>\n );\n }\n\n optionsDropdown() {\n return (\n <q2-popover\n ref={el => (this.popoverElement = el)}\n controlElement={this.innerInputContainer}\n open={this.open}\n minHeight={this.popoverMinHeight}\n direction={this.popDirection}\n mode={this.popoverMode || undefined}\n block\n >\n <div class=\"popover-content\">\n <q2-option-list\n onPopoverState={this.onPopoverState}\n ref={el => (this.optionList = el)}\n type=\"listbox\"\n id=\"option-list\"\n show-selected={this.showSelected}\n label={this.listLabel}\n multiple={this.multiple}\n selectedOptions={this.structuredSelectedOptions}\n onChange={this.onOptionListChange}\n >\n <slot />\n </q2-option-list>\n <div\n class=\"popover-top-container\"\n ref={el => (this.popoverTopContainer = el)}\n hidden={!this.multiple && !this.hasPopoverTop}\n tabindex=\"-1\"\n >\n <slot name=\"popover-top\"></slot>\n {this.multiple && this.visibilityToggle()}\n </div>\n </div>\n <div\n class=\"popover-bottom-container\"\n hidden={!this.hasPopoverBottom}\n tabindex=\"-1\"\n >\n <slot name=\"popover-bottom\" />\n </div>\n </q2-popover>\n );\n }\n\n visibilityToggle() {\n const selectedOptionsCount = this.selectedOptions?.length ?? 0;\n const { showSelected } = this;\n return (\n <div class=\"multi-select-header\">\n <fieldset>\n <legend aria-label={loc('tecton.element.select.multiHeader.showing')}>\n {loc('tecton.element.select.multiHeader.showing')}\n </legend>\n <div>\n <input\n class=\"sr\"\n type=\"radio\"\n id=\"all\"\n name=\"viewDisplay\"\n value=\"all\"\n checked={!showSelected}\n aria-label={loc('tecton.element.select.multiHeader.allAriaLabel')}\n test-id=\"allOptionsButton\"\n onClick={this.showAllOptions}\n onKeyDown={this.visibilityToggleKeyDown}\n />\n <label htmlFor=\"all\">{loc('tecton.element.select.multiHeader.all')}</label>\n </div>\n\n <div>\n <input\n class=\"sr\"\n type=\"radio\"\n id=\"selected\"\n disabled={selectedOptionsCount === 0}\n name=\"viewDisplay\"\n value=\"selected\"\n aria-label={loc('tecton.element.select.multiHeader.selectedAriaLabel', [\n selectedOptionsCount,\n ])}\n checked={showSelected}\n test-id=\"selectedOptionsButton\"\n onClick={this.showSelectedOptions}\n onKeyDown={this.visibilityToggleKeyDown}\n />\n <label htmlFor=\"selected\">\n {loc('tecton.element.select.multiHeader.selected', [selectedOptionsCount])}\n </label>\n </div>\n </fieldset>\n </div>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{r as t,c as r,h as e,F as a,g as i}from"./p-a5f18e27.js";import{d as s,c as o,s as n,h as p,o as c,p as d,f,l as u,i as l,n as h,m,e as x}from"./p-84190698.js";function v(t="",r={prefix:"",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:"",allowDecimal:false,allowNegative:true},e=false){const a=t[0]==="-";let i=t;const s=!!r.allowDecimal&&!!r.decimals;if(e){const t=i.replace(/[^\d.]/g,"");i=t&&Number(t).toFixed(s?r.decimals:0)||""}i=i.replace(/[^\d]/g,"");let{integerString:o,decimalString:n}=S(i,s,r.decimals);let p=r.decimalSeparator;if(!s){p="";n=""}const c=r.allowNegative&&a?"-":"";i=`${c}${o}${p}${n}`;o=o.replace(/\B(?=(\d{3})+(?!\d))/g,r.thousandsSeparator);const d=c||o?`${c}${o}${p}${n}`:"";const f=c||o?`${c}${r.prefix}${o}${p}${n}${r.suffix}`:"";let u=d.length-i.length;if(p){u=u+r.decimalSeparator.length}const l=r.prefix||r.suffix;const h=Number.MAX_SAFE_INTEGER.toString().length+u+n.length;const m=`${o.replace(/[^0-9]/g,"")}${n}`.replace(/^0+/,"");return{value:i,formattedValue:d,fullyFormattedValue:f,prefix:l,suffix:"",formattingCharacterCount:u,maxlength:h,unformattedValue:m}}function S(t,r=false,e){if(!r){return{integerString:t,decimalString:""}}const a=t.length-e;let i=t.substring(0,a).padStart(1,"0");if(i.length>1&&i[0]==="0"){i=i.substring(1)}const s=t.substring(a).padStart(e,"0");return{integerString:i,decimalString:s}}function b(t="",r="",e){const a=e&&e.prefix||"";const i=e&&e.suffix||"";if(!t||!r){const r=`${a}${t}${i}`;return{value:t,formattedValue:t,fullyFormattedValue:r,prefix:a.trim()||i.trim(),formattingCharacterCount:0,unformattedValue:t}}const{unformattedValue:s,formattedValue:o,formattingCharacterCount:n}=A(t,r);const p=`${a}${o}${i}`;const c=r.length;const d=Y(r,a,i);return{value:s,formattedValue:o,fullyFormattedValue:p,prefix:a.trim()||i.trim(),formattingCharacterCount:n,maxlength:c,minFormattedLength:d,unformattedValue:s}}const g=["?"];function k(t){return g.includes(t)}const w=["#","@","*",...g];function y(t){return w.includes(t)}function M(t){const r=w.join("|");const e=t.replace(new RegExp(`[${r}]`,"g"),"").split("");return new Set(e)}function C(t,r){return r.has(t)}function D(t,r){switch(r){case"#":t=t.replace(/[^\d]/g,"");break;case"@":t=t.toUpperCase().replace(/[^A-Z]+/g,"");break;case"*":t=t.toUpperCase().replace(/[^\dA-Z]+/g,"");break;case"?":t=t.replace(/[^\d]/g,"");break;default:return t}return t}function A(t,r){const e=r.split("");const a=M(r);let i=0;let s=0;let o="";const n=e.reduce(((r,e)=>{if(i>=t.length){return r}if(k(e)&&C(t[i],a)){return r}if(y(e)){i=L(t,i,a);if(i>=t.length){return r}const s=D(t[i],e);r+=s;o+=s;i++}else{r+=e;s++;if(e===t[i]){i++}}return r}),"");return{unformattedValue:o,formattedValue:n,formattingCharacterCount:s}}function L(t,r,e){if(C(t[r],e)){r++;return L(t,r,e)}return r}function Y(t,r,e){return t.replace(new RegExp(`[${g.join("|")}]`,"g"),"").length+r.length+e.length}const I={AED:{prefix:"",suffix:"د.إ",decimals:2,decimalSeparator:".",thousandsSeparator:","},AFN:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ALL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AMD:{prefix:"դր.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ANG:{prefix:"ƒ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AOA:{prefix:"Kz",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ARS:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AUD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AWG:{prefix:"ƒ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AZN:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BAM:{prefix:"КМ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BBD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BDT:{prefix:"৳",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BGN:{prefix:"৳",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BHD:{prefix:"",suffix:"ب.د",decimals:3,decimalSeparator:".",thousandsSeparator:","},BIF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},BMD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BND:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BOB:{prefix:"Bs.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BRL:{prefix:"R$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BSD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BTN:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BWP:{prefix:"P",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BYN:{prefix:"Br",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},BZD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CAD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CDF:{prefix:"Fr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CHF:{prefix:"Fr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CLF:{prefix:"Fr",suffix:"",decimals:4,decimalSeparator:".",thousandsSeparator:","},CLP:{prefix:"$",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},CNY:{prefix:"¥",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},COP:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CRC:{prefix:"₡",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CUC:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CUP:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CVE:{prefix:"$",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},CZK:{prefix:"Kč",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},DJF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},DKK:{prefix:"kr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},DOP:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},DZD:{prefix:"",suffix:"د.ج",decimals:2,decimalSeparator:".",thousandsSeparator:","},EEK:{prefix:"KR",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},EGP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ERN:{prefix:"Nfk",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ETB:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},EUR:{prefix:"€",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},FJD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},FKP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GBP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GEL:{prefix:"ლ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GHS:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GIP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GMD:{prefix:"D",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GNF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},GTQ:{prefix:"Q",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GYD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HKD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HNL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HRK:{prefix:"kn",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HTG:{prefix:"G",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HUF:{prefix:"Ft",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},IDR:{prefix:"Rs",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ILS:{prefix:"₪",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},INR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},IQD:{prefix:"",suffix:"ع.د",decimals:3,decimalSeparator:".",thousandsSeparator:","},IRR:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ISK:{prefix:"kr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},JMD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},JOD:{prefix:"",suffix:"د.ا",decimals:3,decimalSeparator:".",thousandsSeparator:","},JPY:{prefix:"¥",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},KES:{prefix:"Sh",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KGS:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KHR:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KMF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},KPW:{prefix:"₩",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KRW:{prefix:"₩",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},KWD:{prefix:"د.ك",suffix:"",decimals:3,decimalSeparator:".",thousandsSeparator:","},KYD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KZT:{prefix:"〒",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LAK:{prefix:"₭",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LBP:{prefix:"",suffix:"ل.ل",decimals:2,decimalSeparator:".",thousandsSeparator:","},LKR:{prefix:"Rs",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LRD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LSL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LTL:{prefix:"Lt",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LVL:{prefix:"Ls",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LYD:{prefix:"",suffix:"ل.د",decimals:3,decimalSeparator:".",thousandsSeparator:","},MAD:{prefix:"",suffix:"د.م.",decimals:2,decimalSeparator:".",thousandsSeparator:","},MDL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MGA:{prefix:"¤",suffix:"",decimals:1,decimalSeparator:".",thousandsSeparator:","},MKD:{prefix:"ден",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MMK:{prefix:"K",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MNT:{prefix:"₮",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MOP:{prefix:"P",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MRU:{prefix:"UM",suffix:"",decimals:1,decimalSeparator:".",thousandsSeparator:","},MUR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MVR:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MWK:{prefix:"MK",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MXN:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MYR:{prefix:"RM",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MZN:{prefix:"MTn",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NAD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NGN:{prefix:"₦",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NIO:{prefix:"C$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NOK:{prefix:"kr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NPR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NZD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},OMR:{prefix:"",suffix:"ر.ع.",decimals:3,decimalSeparator:".",thousandsSeparator:","},PAB:{prefix:"B/.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PEN:{prefix:"S/.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PGK:{prefix:"K",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PHP:{prefix:"p",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PKR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PLN:{prefix:"zł",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PYG:{prefix:"¤",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},QAR:{prefix:"",suffix:"ر.ق",decimals:2,decimalSeparator:".",thousandsSeparator:","},RON:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},RSD:{prefix:"дин.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},RUB:{prefix:"руб.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},RWF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},SAR:{prefix:"",suffix:"ر.س",decimals:2,decimalSeparator:".",thousandsSeparator:","},SBD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SCR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SDG:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SEK:{prefix:"kr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SGD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SHP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SKK:{prefix:"Sk",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SLL:{prefix:"Le",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SOS:{prefix:"Sh",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SRD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},STN:{prefix:"Db",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SVC:{prefix:"₡",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SYP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SZL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},THB:{prefix:"฿",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TJS:{prefix:"ЅМ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TMM:{prefix:"m",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TND:{prefix:"",suffix:"د.ت",decimals:3,decimalSeparator:".",thousandsSeparator:","},TOP:{prefix:"T$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TRY:{prefix:"YTL",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TTD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TWD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TZS:{prefix:"Sh",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},UAH:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},UGX:{prefix:"Sh",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},USD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},UYU:{prefix:"$",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},UZS:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},VEF:{prefix:"Bs F",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},VND:{prefix:"₫",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},VUV:{prefix:"Vt",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},WST:{prefix:"T",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},XAF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},XCD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},XOF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},XPF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},YER:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ZAR:{prefix:"R",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ZMW:{prefix:"ZK",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ZWD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","}};function O(t,r="USD",e=false){let a=r||"";let i=true;if(a.includes("-integer")){a=a.split("-integer")[0];i=false}const s=I[a];if(!s){return b(t)}const o=Object.assign(Object.assign({},s),{allowDecimal:i&&s.decimals>0,allowNegative:false});return v(t,o,e)}const F={AF:{mask:"(##) #######",prefix:"+93 "},AL:{mask:"#######",prefix:"+355 "},DZ:{mask:"(##) ###-###",prefix:"+213 "},AD:{mask:"(#) #####",prefix:"+376 "},AO:{mask:"#########",prefix:"+244 "},AI:{mask:"(###) ###-####",prefix:"+1 "},AG:{mask:"(###) ###-####",prefix:"+1 "},AR:{mask:"##########",prefix:"+54 "},AM:{mask:"########",prefix:"+375 "},AQ:{mask:"##-####",prefix:"+672 "},AW:{mask:"###-####",prefix:"+297 "},AU:{mask:"(##) ####-####",prefix:"+61 "},AT:{mask:"#############",prefix:"+43 "},AZ:{mask:"#########",prefix:"+994 "},BS:{mask:"(###) ###-####",prefix:"+1 "},BH:{mask:"####-####",prefix:"+973 "},BD:{mask:"#########",prefix:"+880 "},BB:{mask:"(###) ###-####",prefix:"+1 "},BY:{mask:"#########",prefix:"+375 "},BE:{mask:"########??",prefix:"+32 "},BZ:{mask:"#######",prefix:"+501 "},BJ:{mask:"(##) ###-###",prefix:"+229 "},BM:{mask:"(###) ###-####",prefix:"+1 "},BT:{mask:"(#) ###-###",prefix:"+975 "},BO:{mask:"(#) ###-####",prefix:"+591 "},BA:{mask:"(##) ##-##-##",prefix:"+387 "},BW:{mask:"########",prefix:"+267 "},BR:{mask:"(##) ####-####",prefix:"+55 "},BN:{mask:"###-####",prefix:"+673 "},BG:{mask:"#######?",prefix:"+359 "},BF:{mask:"##-##-##-##",prefix:"+226 "},BI:{mask:"####-####",prefix:"+257 "},KH:{mask:"(##) ######",prefix:"+855 "},CM:{mask:"####-####",prefix:"+237 "},CA:{mask:"(###) ###-####",prefix:"+1 "},CV:{mask:"###-####",prefix:"+238 "},KY:{mask:"(###) ###-####",prefix:"+1 "},CF:{mask:"###-###",prefix:"+236 "},TD:{mask:"###-##-##",prefix:"+235 "},CL:{mask:"#########",prefix:"+56 "},CN:{mask:"###########",prefix:"+86 "},CO:{mask:"##########",prefix:"57 "},KM:{mask:"###-####",prefix:"+269 "},CD:{mask:"###-####",prefix:"+243 "},CG:{mask:"###-####",prefix:"+242 "},CR:{mask:"####-####",prefix:"+506 "},CI:{mask:"####-####",prefix:"+225 "},HR:{mask:"########?",prefix:"+385 "},CU:{mask:"###########",prefix:"+53 "},CY:{mask:"####-####",prefix:"+357 "},CZ:{mask:"#########",prefix:"+420 "},DK:{mask:"####-####",prefix:"+45 "},DJ:{mask:"##-##-##-##",prefix:"+253 "},DM:{mask:"(###) ###-####",prefix:"+1 "},DO:{mask:"(###) ###-####",prefix:"+1 "},TL:{mask:"###-####",prefix:"+670 "},EC:{mask:"(##) ###-####",prefix:"+593 "},EG:{mask:"##########",prefix:"+20 "},SV:{mask:"####-####",prefix:"+503 "},GQ:{mask:"##-####",prefix:"+240 "},EE:{mask:"#######?",prefix:"+372 "},ET:{mask:"(##) ###-####",prefix:"+251 "},FK:{mask:"#####",prefix:"+500 "},FO:{mask:"######",prefix:"+298 "},FJ:{mask:"###-####",prefix:"+679 "},FI:{mask:"############",prefix:"+358 "},FR:{mask:"#########",prefix:"+33 "},GF:{mask:"##########",prefix:"+594 "},PF:{mask:"######",prefix:"+689 "},GA:{mask:"######?",prefix:"+241 "},GM:{mask:"###-####",prefix:"+220 "},GE:{mask:"########",prefix:"+995 "},DE:{mask:"###########",prefix:"+49 "},GH:{mask:"#########",prefix:"+233 "},GI:{mask:"####-####",prefix:"+350 "},GR:{mask:"##########",prefix:"+30 "},GL:{mask:"###-###",prefix:"+299 "},GD:{mask:"(###) ###-####",prefix:"+1 "},GP:{mask:"##########",prefix:"+590 "},GU:{mask:"(###) ###-####",prefix:"+1 "},GT:{mask:"####-####",prefix:"+502 "},GN:{mask:"####-####",prefix:"+224 "},GW:{mask:"###-####",prefix:"+245 "},GY:{mask:"(###) ####",prefix:"+592 "},HK:{mask:"####-####",prefix:"+852 "},HN:{mask:"########",prefix:"+504 "},HT:{mask:"####-####",prefix:"+509 "},HU:{mask:"########??",prefix:"+36 "},IS:{mask:"#########",prefix:"+354 "},IN:{mask:"##########",prefix:"+91 "},ID:{mask:"#######??????",prefix:"+62 "},IR:{mask:"##########",prefix:"+98 "},IQ:{mask:"##########",prefix:"+964 "},IE:{mask:"#########",prefix:"+353 "},IL:{mask:"#########",prefix:"+972 "},IT:{mask:"##########",prefix:"+39 "},JM:{mask:"(###) ###-####",prefix:"+1 "},JP:{mask:"#########??",prefix:"+81 "},JO:{mask:"#########",prefix:"+962 "},KZ:{mask:"(###) ####-###",prefix:"+7 "},KE:{mask:"##########",prefix:"+254 "},KI:{mask:"##-###",prefix:"+686 "},KR:{mask:"##########",prefix:"+82 "},KW:{mask:"####-####",prefix:"+965 "},KG:{mask:"#########",prefix:"+996 "},LA:{mask:"########?",prefix:"+856 "},LV:{mask:"####-####",prefix:"+371 "},LB:{mask:"#######?",prefix:"+961 "},LS:{mask:"##-###-###",prefix:"+266 "},LY:{mask:"########?",prefix:"+218 "},LI:{mask:"###-####",prefix:"+423 "},LT:{mask:"########",prefix:"+370 "},LU:{mask:"###########",prefix:"+352 "},MO:{mask:"####-####",prefix:"+853 "},MK:{mask:"########",prefix:"+389 "},MG:{mask:"##-##-###-##",prefix:"+261 "},MW:{mask:"#########",prefix:"+265 "},MY:{mask:"##########",prefix:"+60 "},MV:{mask:"###-####",prefix:"+960 "},ML:{mask:"####-####",prefix:"+223 "},MT:{mask:"##-##-##-##",prefix:"+356 "},MH:{mask:"###-####",prefix:"+692 "},MQ:{mask:"###-######",prefix:"+596 "},MU:{mask:"###-####",prefix:"+230 "},MX:{mask:"(###) ###-####",prefix:"+52 "},MD:{mask:"########",prefix:"+373 "},MC:{mask:"####-####",prefix:"+377 "},MN:{mask:"###########",prefix:"+976 "},MS:{mask:"(###) ###-####",prefix:"+1 "},MA:{mask:"#########?",prefix:"+212 "},MZ:{mask:"#########",prefix:"+258 "},MM:{mask:"########",prefix:"+95 "},NA:{mask:"##########",prefix:"+264 "},NP:{mask:"##########",prefix:"+977 "},NL:{mask:"#########",prefix:"+31 "},AN:{mask:"########",prefix:"+599 "},NC:{mask:"###-###",prefix:"+687 "},NZ:{mask:"##########",prefix:"+64 "},NI:{mask:"####-####",prefix:"+505 "},NE:{mask:"##-###-###",prefix:"+227 "},NG:{mask:"##########",prefix:"+234 "},MP:{mask:"(###) ###-####",prefix:"+1 "},NO:{mask:"####-####",prefix:"+47 "},OM:{mask:"####-####",prefix:"+968 "},PK:{mask:"##########",prefix:"+92 "},PW:{mask:"###-####",prefix:"+680 "},PA:{mask:"########",prefix:"+507 "},PG:{mask:"########",prefix:"+675 "},PE:{mask:"###########",prefix:"+51 "},PH:{mask:"##########",prefix:"+63 "},PL:{mask:"#########",prefix:"+48 "},PT:{mask:"#-####-####",prefix:"+351 "},PR:{mask:"(###) ###-####",prefix:"+1 "},QA:{mask:"###-####",prefix:"+974 "},RE:{mask:"###-###-###",prefix:"+262 "},RO:{mask:"#########",prefix:"+40 "},RU:{mask:"##########",prefix:"+7 "},RW:{mask:"###-###-###",prefix:"+250 "},SH:{mask:"#-###",prefix:"+290 "},KN:{mask:"(###) ###-####",prefix:"+1 "},LC:{mask:"(###) ###-####",prefix:"+1 "},VC:{mask:"(###) ###-####",prefix:"+1 "},ST:{mask:"##-####",prefix:"+239 "},SA:{mask:"#########",prefix:"+966 "},SN:{mask:"##-###-####",prefix:"+221 "},SC:{mask:"###-###",prefix:"+248 "},SL:{mask:"(##) ###-###",prefix:"+232 "},SG:{mask:"####-####",prefix:"+65 "},SK:{mask:"#########",prefix:"+421 "},SI:{mask:"########",prefix:"+386 "},SB:{mask:"##-###",prefix:"+677 "},ZA:{mask:"(##) ###-####",prefix:"+27 "},ES:{mask:"###-###-###",prefix:"+34 "},LK:{mask:"(##) ###-####",prefix:"+94 "},SD:{mask:"##-###-####",prefix:"+249 "},SR:{mask:"######?",prefix:"+597 "},SZ:{mask:"###-####",prefix:"+268 "},SE:{mask:"###########",prefix:"+46 "},CH:{mask:"(##) ###-####",prefix:"+41 "},SY:{mask:"#########",prefix:"+963 "},TJ:{mask:"#########",prefix:"+992 "},TZ:{mask:"#########",prefix:"+255 "},TH:{mask:"#########",prefix:"+66 "},TG:{mask:"###-####",prefix:"+228 "},TT:{mask:"(###) ###-####",prefix:"+1 "},TN:{mask:"##-###-###",prefix:"+216 "},TR:{mask:"(###) ###-####",prefix:"+90 "},TM:{mask:"########",prefix:"+993 "},TC:{mask:"(###) ###-####",prefix:"+1 "},UG:{mask:"#########",prefix:"+256 "},UA:{mask:"(##) ###-####",prefix:"+380 "},AE:{mask:"#########",prefix:"+971 "},GB:{mask:"#########????",prefix:"+44 "},UY:{mask:"########?",prefix:"+598 "},UZ:{mask:"(##) ###-####",prefix:"+998 "},VE:{mask:"(###) ###-####",prefix:"+58 "},VN:{mask:"#######????",prefix:"+84 "},VG:{mask:"(###) ###-####",prefix:"+1 "},VI:{mask:"(###) ###-####",prefix:"+1 "},YE:{mask:"#########",prefix:"+967 "},ZM:{mask:"#########",prefix:"+260 "},ZW:{mask:"#########",prefix:"+263 "},AC:{mask:"####",prefix:"+247 "},ME:{mask:"(##) ###-###?",prefix:"+382 "},PS:{mask:"#########",prefix:"+970 "},RS:{mask:"#########",prefix:"+381 "},TW:{mask:"#########",prefix:"+886 "},CW:{mask:"#-###-####",prefix:"+599 "},US:{mask:"(###) ###-####",prefix:""}};function R(t,r="US"){const{mask:e,prefix:a}=F[r]||F.US;const i={prefix:a};const s=t||"";if(r==="BR"&&s.replace(/[^0-9]/g,"").length===11){return b(s,"(##) #####-####",i)}else{return b(s,e,i)}}function N(t){return b(t,"###-##-####")}function B(t){return b(t,"##-#######")}function G(t){const r=(t||"").replace(/[^\da-zA-Z]/g,"");return b(r)}function E(t,r){let e=t||"";if(r==="spaced"){e=e.replace(/[^a-zA-Z ]/g,"")}else{e=e.replace(/[^a-zA-Z]/g,"")}return b(e)}function P(t){const r={prefix:"",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:"",allowDecimal:false,allowNegative:true};const e=t.split("-");if(e[0]==="delimited"){r.thousandsSeparator=","}else if(e[0].match(/^[0-9]+dec$/)){r.decimals=Number(e[0].replace("dec",""));r.allowDecimal=true;r.thousandsSeparator=","}else{if(e[0].includes("decimal")){r.decimals=Number(e[0].replace("decimal",""));r.allowDecimal=true}else if(e[0]!=="integer"){return}if(e.includes("positive")){r.allowNegative=false}if(e.includes("delimited")){r.thousandsSeparator=","}}return r}function T(t="",r="",e=false){const a=P(r);if(!a){const r=(t||"").replace(/[^\d.,-]/g,"");return b(r)}return v(t,a,e)}function K(t="",r="",e=false){const a=P(r);if(!a){const r=(t||"").replace(/[^\d.,-]/g,"");return b(r,undefined,{suffix:"%"})}a.suffix="%";return v(t,a,e)}const $={AF:"####",AL:"####",DZ:"#####",AC:"ASCN 1ZZ",AD:"AD###",AR:"####","AR+":"@####@@@",AI:"AI-2640",AM:"####",AS:"#####","AS+4":"#####-####",AU:"####",AT:"####",AZ:"AZ ####",BH:"###?",BD:"####",BB:"BB#####",BY:"######",BE:"####",BM:"@@ **",BT:"#####",BA:"######",BR:"#####","BR+3":"#####-###",VG:"VG####",BN:"@@####",BG:"####",KH:"#####",KY:"KY#-####",CA:"@#@ #@#",CL:"###-####",CN:"######",CX:"####",CC:"####",CO:"######",CR:"#####","CR+4":"#####-####",CV:"####",HR:"#####",CU:"#####",CY:"####",CZ:"### ##",DK:"####",DO:"#####",EC:"######",SV:"####",EG:"#####",EE:"#####",ET:"####",FK:"FIQQ 1ZZ",FO:"###",FI:"#####",FR:"#####",GF:"973##",PF:"987##",GI:"GX11 1AA",GE:"####",DE:"#####",GR:"### ##",GL:"####",GP:"971##",GU:"#####","GU+4":"#####-####",GT:"#####",GG:"GY#? #@@",GN:"###",GS:"SIQQ 1ZZ",GW:"####",HT:"####",HN:"@@####","HN-":"#####",HU:"####",IS:"###",IN:"### ###",ID:"#####",IE:"*** ****",IR:"##########",IQ:"#####",IM:"IM#? #@@",IL:"#######",IT:"#####",JM:"##",JP:"###-####",JE:"JE#? #@@",JO:"#####",KZ:"######",KE:"#####",KR:"#####",KN:"KN####",XK:"#####",KW:"#####",KG:"######",LA:"#####",LV:"LV-####",LB:"####? ????",LS:"###",LR:"####",LI:"####",LT:"#####",LU:"####",MK:"####",MG:"###",MY:"#####",MV:"#####",MT:"@@@ ####",MH:"#####","MH+4":"#####-####",MU:"#####",MQ:"972##",MW:"######",YT:"976##",MX:"#####",FM:"#####","FM+4":"#####-####",MD:"####",MC:"980##",MN:"#####",ME:"#####",MA:"#####",MZ:"####",MM:"#####",NA:"#####",NP:"#####",NC:"988##",NZ:"####",NI:"#####",NE:"####",NG:"######",NF:"####",MP:"#####",NO:"####",OM:"###",PK:"#####",PW:"#####","PW+4":"#####-####",PS:"###",PA:"####",PG:"###",PY:"####",PE:"#####","PE+":"####",PH:"####",PL:"##-###",PT:"####","PT+3":"####-###",PR:"#####","PR+4":"#####-####",RE:"974##",PM:"975##",PN:"PCRN 1ZZ",RO:"######",RU:"######",LC:"LC## ###",VC:"####",WS:"####",SM:"4879#",SA:"#####","SA+4":"#####-####",SN:"#####",RS:"#####",SG:"######",SH:"@@@@ 1ZZ",SK:"### ##",SI:"####",SO:"@@ #####",ZA:"####",ES:"#####",LK:"#####",SD:"#####",SZ:"@###",SE:"### ##",CH:"####",SJ:"####",TW:"###","TW+2":"###-##?",TJ:"######",TZ:"#####",TH:"#####",TT:"######",TN:"####",TR:"#####",TM:"######",UA:"#####",UY:"#####",VI:"#####","VI+4":"#####-####",UZ:"######",VE:"####","VE-":"####-@",VN:"#####?",YU:"#####",WF:"986##",ZM:"#####",US:"#####","US+4":"#####-####"};function V(t,r="US"){const e=$[r];if(!e){return G(t)}return b(t,e)}const Z={"MM/DD/YYYY":"##/##/####","M/D/YYYY":"#?/#?/####","MM/DD/YY":"##/##/##","M/D/YY":"#?/#?/##","MM/YY":"##/##","M/YY":"#?/##","DD/MM/YYYY":"##/##/####","D/M/YYYY":"#?/#?/####","DD/MM/YY":"##/##/##","D/M/YY":"#?/#?/##","MM-DD-YYYY":"##-##-####","M-D-YYYY":"#?-#?-####","MM-DD-YY":"##-##-##","M-D-YY":"#?-#?-##","MM-YY":"##-##","M-YY":"#?-##","DD-MM-YYYY":"##-##-####","D-M-YYYY":"#?-#?-####","DD-MM-YY":"##-##-##","D-M-YY":"#?-#?-##"};function z(t,r="MM/DD/YYYY"){const e=Z[r===null||r===void 0?void 0:r.toUpperCase()]||Z["MM/DD/YYYY"];const a=b(t,e);return Object.assign(Object.assign({},a),{value:a.formattedValue})}function U(t){const r=tt.detectCreditCardTypeFromValue(t);const e=X[r](t);if(t.length<2&&r==="unknown"){e.leftIcon="card"}return e}const H=function t(r){const e=b(r,"#### #### #### ####");return Object.assign(Object.assign({},e),{type:"unknown",leftIcon:"card-unknown",leftIconMuted:r.length<16})};const W=function t(r){const e=b(r,"#### ###### #####");return Object.assign(Object.assign({},e),{type:"amex",leftIcon:"card-amex-color",leftIconMuted:r.length<15})};const j=function t(r){const e=b(r,"#### #### #### ####");return Object.assign(Object.assign({},e),{type:"discover",leftIcon:"card-discover-color",leftIconMuted:r.length<16})};const J=function t(r){const e=b(r,"#### #### #### ####");return Object.assign(Object.assign({},e),{type:"masterCard",leftIcon:"card-mastercard-color",leftIconMuted:r.length<16})};const Q=function t(r){const e=b(r,"#### #### #### ####");return Object.assign(Object.assign({},e),{type:"visa",leftIcon:"card-visa-color",leftIconMuted:r.length<16})};const q=function t(r){const e=b(r,"#### ###### ####");return Object.assign(Object.assign({},e),{type:"dinersClub",leftIcon:"card-dinersclub-color",leftIconMuted:r.length<14})};const X={discover:j,amex:W,masterCard:J,visa:Q,dinersClub:q,unknown:H};function _(t){const r=parseInt(t.charAt(0));const e=parseInt(t.charAt(1));switch(r){case 2:if(e>1&&e<8){if(t.length>=4){const r=parseInt(t.substr(0,4));if(r>=2221&&r<2721){return"masterCard"}}else{return"masterCard"}}break;case 3:if(e===4||e===7){return"amex"}if(e===0){if(t.length>2){const r=parseInt(t.charAt(2));if(r<6||r===9){return"dinersClub"}}else{return"dinersClub"}}if(e===6||e===8||e===9){return"dinersClub"}break;case 4:return"visa";case 5:if(e>0&&e<6){return"masterCard"}break;case 6:if(e===0){if(t.length>3){const r=t.substr(0,4);if(r==="6011"){return"discover"}}else{return"discover"}}if(e===4){if(t.length>2){const r=parseInt(t.substr(0,3));if(r>643){return"discover"}}else{return"discover"}}if(e===5){return"discover"}if(e===2){if(t.length>5){const r=parseInt(t.substr(0,6));if(r>=622126&&r<=622925){return"discover"}}else{return"discover"}}break;default:return"unknown"}return"unknown"}const tt={detectCreditCardTypeFromValue:_,format:U,amexFormatter:W,dinersClubInternationalFormatter:q,discoverFormatter:j,masterCardFormatter:J,visaFormatter:Q,unknownFormatter:H};const rt='*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{--comp-default-input-margin:var(--tct-input-margin-top, var(--t-input-margin-top, var(--app-scale-6x, 30px))) 0 var(--tct-input-margin-bottom, var(--t-input-margin-bottom, var(--app-scale-6x, 30px)));display:block;margin:var(--tct-input-margin, var(--comp-default-input-margin));font-size:var(--tct-input-font-size, var(--t-input-font-size, var(--app-font-size, inherit)))}:host([hidden]){display:none}.field-container,.input-container{position:relative}.field-container{--comp-input-tween:var(--tct-input-tween, var(--t-input-tween, var(--tct-tween-2, var(--app-tween-2, 0.4s ease))))}.field-container.is-small .btn-clear{--tct-btn-icon-width:20px;--tct-icon-size:17px}label{--comp-label-padding:var(--tct-input-label-padding, 0 var(--tct-input-label-padding-right, var(--t-input-label-padding-right, 0)) 0 var(--tct-input-label-padding-left, var(--t-input-label-padding-left, 0)));display:block;padding:var(--comp-label-padding);color:var(--tct-input-label-font-color, var(--t-input-label-font-color, inherit));font-size:var(--tct-input-label-font-size, var(--t-input-label-font-size, inherit));font-weight:var(--tct-input-label-font-weight, var(--t-input-label-font-weight, 600));text-transform:var(--tct-input-label-text-transform, var(--t-input-label-text-transform, none));letter-spacing:var(--tct-input-label-letter-spacing, var(--t-input-label-letter-spacing, normal));transition:color var(--comp-input-tween)}.optional-tag{--comp-label-optional-margin:var(--tct-input-label-optional-margin, 0 0 0 var(--tct-input-label-optional-margin-left, var(--t-input-label-optional-margin-left, var(--tct-scale-1, var(--app-scale-1x, 5px)))));margin:var(--comp-label-optional-margin);color:var(--tct-input-label-optional-font-color, var(--t-input-label-optional-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77)))));font-size:var(--tct-input-label-optional-font-size, var(--t-input-label-optional-font-size, var(--app-font-size-small, 12px)));font-weight:var(--tct-input-label-optional-font-weight, var(--t-input-label-optional-font-weight, 400))}.count-tag{color:var(--tct-input-count-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77))));font-size:var(--tct-input-count-font-size, var(--app-font-size-small, 12px));font-weight:var(--tct-input-count-font-weight, 400);text-align:right;width:var(--tct-input-count-width, auto)}.label-wrapper{--comp-label-margin:var(--tct-input-label-margin, var(--tct-input-label-margin-top, var(--t-input-label-margin-top, 0)) 0 var(--tct-input-label-margin-bottom, var(--t-input-label-margin-bottom, var(--tct-scale-1, var(--app-scale-1x, 5px)))));display:flex;gap:var(--tct-input-label-gap, var(--app-scale-2x, 10px));justify-content:space-between;align-items:end;margin:var(--comp-label-margin);line-height:var(--tct-input-label-line-height, var(--t-input-label-line-height, inherit))}.label-wrapper:has(label.sr){margin:0}.input-container{--comp-input-background:var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--t-gray-14, #fcfcfd))));--comp-input-horizontal-gap:var(--tct-input-horizontal-gap, var(--t-input-horizontal-gap, 0));--comp-input-border-top-left-radius:var(--tct-input-border-top-left-radius, var(--t-input-border-top-left-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));--comp-input-border-top-right-radius:var(--tct-input-border-top-right-radius, var(--t-input-border-top-right-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));--comp-input-border-bottom-right-radius:var(--tct-input-border-bottom-right-radius, var(--t-input-border-bottom-right-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));--comp-input-border-bottom-left-radius:var(--tct-input-border-bottom-left-radius, var(--t-input-border-bottom-left-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));--comp-input-border-radius:var(--comp-input-border-top-left-radius) var(--comp-input-border-top-right-radius)\n var(--comp-input-border-bottom-right-radius) var(--comp-input-border-bottom-left-radius);--comp-input-border-width:var(--tct-input-border-top-width, 1px) var(--tct-input-border-right-width, 1px)\n var(--tct-input-border-bottom-width, 1px) var(--tct-input-border-left-width, 1px);--comp-input-border-color:var(--tct-input-border-color, var(--t-input-border-color, var(--t-a11y-gray-color-AA, #404040)));--comp-input-prefix-clearance:calc(3 * var(--tct-input-prefix-font-size, 14px) + var(--tct-scale-1, 5px));--comp-input-icon-clearance:34px;--comp-input-min-height:var(--tct-input-min-height, var(--t-input-min-height, 44px));--comp-input-max-height:var(--tct-input-max-height, var(--t-input-max-height));--comp-input-hover-ring-color:var(--tct-input-hover-ring-color, var(--t-input-hover-ring-color));--comp-input-hover-ring:0 0 0 2px var(--t-base), 0 0 0 4px var(--comp-input-hover-ring-color), var(--tct-input-hover-box-shadow, var(--t-input-hover-box-shadow, 0 0 transparent));background:var(--comp-input-background);display:flex;align-items:center;gap:var(--tct-input-container-gap, var(--app-scale-2x, 10px));padding-inline:var(--tct-input-container-padding-inline);border-width:var(--comp-input-border-width);border-style:solid;border-color:var(--comp-input-border-color);border-radius:var(--comp-input-border-radius);box-shadow:var(--tct-input-box-shadow, var(--t-input-box-shadow, none));transition:border-width var(--comp-input-tween), border-color var(--comp-input-tween), box-shadow var(--comp-input-tween)}:host([disabled]:not([disabled=false])) .input-container{cursor:not-allowed;opacity:var(--tct-input-disabled-opacity, var(--t-input-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))))}.has-error .input-container{border-color:var(--tct-input-error-border-color, var(--const-stoplight-alert, #d20a0a));background:var(--tct-input-error-background, var(--comp-input-background));box-shadow:var(--tct-input-error-box-shadow, var(--comp-input-hover-ring))}.input-container:hover{border-color:var(--tct-input-hover-border-color, var(--comp-input-border-color));background:var(--tct-input-hover-background, var(--comp-input-background));box-shadow:var(--tct-input-hover-box-shadow, var(--comp-input-hover-ring))}.has-error .input-container:hover{border-color:var(--tct-input-error-hover-border-color, var(--tct-input-error-border-color, var(--const-stoplight-alert, #d20a0a)));background:var(--tct-input-error-hover-background, var(--tct-input-error-background, var(--comp-input-background)));box-shadow:var(--tct-input-error-hover-box-shadow, var(--tct-input-error-box-shadow, var(--comp-input-hover-ring)))}.has-focus .input-container{border-color:var(--tct-input-focus-border-color, var(--t-input-focus-border-color, var(--comp-input-border-color)));background:var(--tct-input-focus-background, var(--comp-input-background));box-shadow:var(--tct-input-focus-box-shadow, var(--const-double-focus-ring))}.has-focus.has-error .input-container,.has-focus.has-error .input-container:hover{border-color:var(--tct-input-error-focus-border-color, var(--tct-input-error-border-color, var(--const-stoplight-alert, #d20a0a)));background:var(--tct-input-error-focus-background, var(--tct-input-error-background, var(--comp-input-background)));box-shadow:var(--tct-input-error-focus-box-shadow, var(--tct-input-error-box-shadow, var(--const-double-focus-ring)))}.input-field{flex:1;border:0;-webkit-appearance:none;appearance:none;box-sizing:border-box;min-height:var(--comp-input-min-height);max-height:var(--comp-input-max-height);overflow-y:hidden;height:var(--tct-input-height, var(--t-input-height, 44px));width:100%;padding:var(--tct-input-padding, 0);background:transparent;color:var(--tct-input-font-color, var(--t-input-font-color, var(--t-text, inherit)));display:inline-block;text-align:var(--tct-input-align, "start");font-weight:var(--tct-input-font-weight, var(--t-input-font-weight, 400));}.input-field:focus{outline:none;box-shadow:none}.input-field::-webkit-outer-spin-button,.input-field::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-field[type=number]{-moz-appearance:textfield}.input-field::-ms-clear{display:none}.input-field[type=search]::-webkit-search-decoration,.input-field[type=search]::-webkit-search-cancel-button,.input-field[type=search]::-webkit-search-results-button,.input-field[type=search]::-webkit-search-results-decoration{display:none}.input-field[disabled]:not([disabled=false]){cursor:not-allowed}.right-aligned .input-field{text-align:right}.input-field:is(input){flex:1}.input-field:is(button){display:inline-flex;align-items:center}.has-custom-display .input-field:is(button){height:auto;padding:0}.input-field:is(button) span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.custom-display-container{max-width:100%}.has-custom-display .custom-display-container{--comp-default-padding:var(--app-scale-2x, 10px) var(--app-scale-2x, 10px) var(--app-scale-3x, 15px);padding:var(--tct-input-padding, var(--t-input-padding, var(--comp-default-padding)));width:100%}.input-field::placeholder,.placeholder-text{color:var(--tct-input-placeholder-font-color, var(--t-input-placeholder-font-color, var(--t-textA, var(--app-gray-d1, rgba(77, 77, 77, 0.77)))))}.pseudo-input-container{min-width:0;flex:1}.input-icons-container-left,.input-icons-container-right{--tct-btn-icon-hover-background:var(--tct-input-btn-hover-background);--tct-btn-hover-background:var(--tct-input-btn-hover-background);display:flex;flex-direction:row;align-items:center;gap:var(--comp-input-horizontal-gap)}.input-icons-container-left>div:not(.vertical-separator),.input-icons-container-right>div:not(.vertical-separator){min-width:var(--tct-input-icon-container-icon-min-width, 44px);display:flex;justify-content:center;align-items:center;font-size:var(--tct-input-icon-container-font-size, inherit)}.input-icons-container-left:empty,.input-icons-container-right:empty{display:var(--tct-input-icon-container-empty-display, block)}.input-icons-container-left{padding-left:var(--comp-input-horizontal-gap)}.input-icons-container-right{padding-right:var(--comp-input-horizontal-gap);--comp-visibility-toggle-padding:0px var(--app-scale-2x, 10px)}.input-icons-container-right .btn-visibility-toggle{--tct-btn-height:var(--comp-input-min-height);--tct-btn-padding-inline:var(--tct-input-visibility-toggle-padding, var(--app-scale-2x, 10px));--tct-btn-font-weight:var(--tct-input-visibility-toggle-font-weight, 400);color:var(--tct-input-visibility-toggle-font-color, var(--t-primary, #0079c1));font-size:var(--tct-input-visibility-toggle-font-size, var(--app-font-size-small, 12px))}q2-icon{margin-top:calc(var(--tct-input-border-top-width, var(--t-input-border-top-width, 1px)) / 2);margin-bottom:calc(var(--tct-input-border-bottom-width, var(--t-input-border-bottom-width, 1px)) / 2);pointer-events:none;color:var(--tct-input-icon-stroke-primary, var(--t-input-icon-stroke-primary, var(--t-a11y-gray-color, var(--t-textA, var(--app-gray, #747474)))));--tct-icon-stroke-primary:var(--tct-input-icon-stroke-primary, var(--t-input-icon-stroke-primary, var(--t-a11y-gray-color, var(--t-textA, var(--app-gray, #747474)))))}.icon-left-muted{opacity:0.5}.input-prefix,.input-suffix{min-height:var(--comp-input-min-height);max-height:var(--comp-input-max-height);height:var(--tct-input-height, var(--t-input-height, 44px));font-size:var(--tct-input-prefix-font-size, var(--t-input-prefix-font-size, inherit));color:var(--tct-input-prefix-font-color, var(--t-input-prefix-font-color, inherit));background:var(--tct-input-prefix-background, var(--tct-input-prefix-bg, var(--t-input-prefix-bg, var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--tct-gray-14, var(--t-gray-14, #f2f2f2))))))));transition:color var(--comp-input-tween), background var(--comp-input-tween)}.input-prefix{border-top-left-radius:calc(\n var(--comp-input-border-top-left-radius) - var(--tct-input-border-top-width, var(--t-input-border-top-width, 1px)) - var(--tct-input-border-left-width, var(--t-input-border-left-width, 1px))\n );border-bottom-left-radius:calc(\n var(--comp-input-border-bottom-left-radius) - var(--tct-input-border-bottom-width, var(--t-input-border-bottom-width, 1px)) - var(--tct-input-border-left-width, var(--t-input-border-left-width, 1px))\n );pointer-events:none;}.input-suffix{border-top-right-radius:calc(\n var(--comp-input-border-top-right-radius) - var(--tct-input-border-top-width, var(--t-input-border-top-width, 1px)) - var(--tct-input-border-right-width, var(--t-input-border-right-width, 1px))\n );border-bottom-right-radius:calc(\n var(--comp-input-border-bottom-right-radius) - var(--tct-input-border-bottom-width, var(--t-input-border-bottom-width, 1px)) - var(--tct-input-border-right-width, var(--t-input-border-right-width, 1px))\n )}.icon-error{color:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));--tct-icon-stroke-primary:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a))}.messages-container{height:0px;overflow:hidden;background:var(--tct-message-background, var(--tct-message-bg, var(--t-message-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l3, var(--app-gray-l3, #f2f2f2)))))));box-shadow:var(--tct-input-message-box-shadow, var(--t-input-message-box-shadow, var(--tct-box-shadow-1, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3)))));transition:height var(--tct-input-messages-tween, var(--t-input-messages-tween, var(--tct-tween-1, var(--app-tween-1, 0.2s ease))));margin-top:var(--tct-input-messages-margin-top, 2px);z-index:var(--tct-input-messages-z-index, 5);position:absolute;width:100%;color:var(--tct-input-messages-font-color, var(--t-input-messages-font-color, inherit));border-radius:var(--tct-message-border-radius, inherit)}.has-error label{color:var(--tct-input-error-label-font-color, var(--t-input-error-label-font-color, var(--tct-input-label-font-color, var(--t-input-label-font-color, inherit))))}.has-error:not(.has-focus) .input-prefix,.has-error:not(.has-focus) .input-suffix{color:var(--tct-input-error-prefix-font-color, var(--t-input-error-prefix-font-color, inherit));background:var(--tct-input-error-prefix-background, var(--tct-input-error-prefix-bg, var(--t-input-error-prefix-bg, var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l3, var(--app-gray-l3, #f2f2f2))))))))))}.icon-left{width:26px;height:26px}.vertical-separator{height:calc(var(--comp-input-min-height) - 2px);border-right-width:var(--tct-input-prefix-border-width, 1px);border-right-style:solid;border-right-color:var(--tct-input-prefix-border-color, var(--t-input-prefix-border-color, var(--tct-input-border-color, var(--t-input-border-color, var(--t-a11y-gray-color-AA, #404040)))))}';const et=rt;const at={text:"text",tel:"tel",number:"number",password:"text",search:"search",url:"url",email:"email",currency:"text",phone:"tel",ssn:"text",alphanumeric:"text",alpha:"text",numeric:"text",percentage:"text",postal:"text",date:"text","credit-card":"text"};const it=class{constructor(e){t(this,e);this.input=r(this,"input",7);this.change=r(this,"change",7);this.clear=r(this,"clear",7);this.formatted=r(this,"formatted",7);this.invalid=r(this,"invalid",7);this.scheduledAfterRender=[];this.isMobile=s();this.onMutationObserved=()=>{this.checkSlotCount=this.checkSlotCount+1};this.guid=o();this.onToggleVisibility=()=>{this.hostElement.dispatchEvent(new FocusEvent("focus"));this.textHidden=!this.textHidden};this.onInputClick=()=>{if(this.shouldCursorStayAtEnd)this.placeCursorAtEnd()};this.onInputFocus=()=>{if(this.inputField.tagName==="INPUT"){this.scheduledAfterRender.push((()=>this.shouldCursorStartAtEnd?this.placeCursorAtEnd():this.setCursorPosition(this.calculateCursorPositionOnFocus())))}this.hasFocus=true;n(this);this.valueOnFocus=this.value};this.onInputBlur=()=>{this.hasFocus=false;n(this);if(this.valueOnFocus!==this.formattedValueObject.value){this.valueOnFocus=this.formattedValueObject.value;this.change.emit(Object.assign({value:this.formattedValueObject.value,formattedValue:this.formattedValueObject.fullyFormattedValue,minFormattedLength:this.formattedValueObject.minFormattedLength},this.formattedValueObject.type&&{type:this.formattedValueObject.type}))}};this.onInputInput=t=>{t.stopPropagation();if(this.type==="currency")this.handleCurrencyDeletion(t);const r=this.getFormattedValue(t.target.value,false);this.handleDataInput(r);this.validateInput()};this.onInputPaste=t=>{if(this.type==="currency"){const r=t.clipboardData.getData("text");const e=this.getFormattedValue(r,true);t.preventDefault();this.handleDataInput(e)}};this.handleValueAndCursor=()=>{const t=this.calculateCursorPositionOnInput();if(this.type!=="number")this.inputField.value=this.formattedValueObject.formattedValue;this.input.emit(Object.assign({value:this.formattedValueObject.value,formattedValue:this.formattedValueObject.fullyFormattedValue,minFormattedLength:this.formattedValueObject.minFormattedLength},this.formattedValueObject.type&&{type:this.formattedValueObject.type}));if(!this.formattedValueObject.value){this.clear.emit()}this.setCursorPosition(t)};this.handleCurrencyKeydown=t=>{if(t.key!=="Backspace"&&t.key!=="Delete")return;const r=this.inputField;this.textSelectedForDeletion=r.selectionStart!==r.selectionEnd};this.onInputKeydown=t=>{const r=["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"];const{key:e}=t;if(this.type==="currency")this.handleCurrencyKeydown(t);if(this.shouldCursorStayAtEnd&&r.includes(e))t.preventDefault();if(e==="Enter"&&this.valueOnFocus!==this.formattedValueObject.value){this.valueOnFocus=this.formattedValueObject.value;this.change.emit(Object.assign({value:this.formattedValueObject.value,formattedValue:this.formattedValueObject.fullyFormattedValue,minFormattedLength:this.formattedValueObject.minFormattedLength},this.formattedValueObject.type&&{type:this.formattedValueObject.type}))}};this.onClearInput=()=>{const t={value:"",formattedValue:"",minFormattedLength:this.formattedValueObject.minFormattedLength};this.input.emit(t);this.change.emit(t);this.clear.emit();this.inputField.focus()};this.onRefocusInput=()=>{if(this.showMessages){this.inputField.focus();n(this)}};this.validateInput=()=>{var t,r;this.validity=(t=this.inputRef)===null||t===void 0?void 0:t.validity;if(((r=this.validity)===null||r===void 0?void 0:r.valid)===false){this.invalid.emit()}};this.autocapitalize=undefined;this.autocomplete=undefined;this.autocorrect=undefined;this.autofocus=undefined;this.badgeTheme=undefined;this.badgeValue=undefined;this.clearable=undefined;this.current=undefined;this.disabled=false;this.errors=undefined;this.formatModifier=undefined;this.hideLabel=undefined;this.hideMessages=undefined;this.hints=undefined;this.iconLeft=undefined;this.iconRight=undefined;this.label=undefined;this.max=undefined;this.maxlength=undefined;this.min=undefined;this.optional=undefined;this.placeholder=undefined;this.pseudo=undefined;this.readonly=undefined;this.role=undefined;this.showCount=undefined;this.showVisibilityToggle=false;this.step=undefined;this.textHidden=undefined;this.type="text";this._role=undefined;this._preventEntry=undefined;this.value=undefined;this.pattern=undefined;this.ariaOwns=undefined;this.ariaControls=undefined;this.ariaHaspopup=undefined;this.ariaExpanded=undefined;this.ariaActivedescendant=undefined;this.ariaLabel=undefined;this.validity=undefined;this.formattedValueObject=undefined;this.hasFocus=undefined;this.isSmall=false;this.checkSlotCount=0}componentWillLoad(){if(isNaN(this.maxlength)){this.maxlength=undefined}this.formattedValueObject=this.getFormattedValue(this.stringValue,true);Object.defineProperty(this.hostElement,"formattedValue",{get:()=>{var t,r;return(r=(t=this.formattedValueObject)===null||t===void 0?void 0:t.formattedValue)!==null&&r!==void 0?r:""}});p(this);if(this.textHidden===undefined){this.textHidden=this.type==="password"}this.manageClearableResizeObserver(this.clearable)}componentDidLoad(){if(!this.pseudo){this.inputField.value=this.formattedValueObject.formattedValue}if(this.autofocus===true){this.inputField.focus()}c(this.hostElement);const t=new MutationObserver(this.onMutationObserved);t.observe(this.hostElement,{childList:true});this.mutationObserver=t}componentDidRender(){this.scheduledAfterRender.forEach((t=>t()));this.scheduledAfterRender=[]}disconnectedCallback(){var t;this.manageClearableResizeObserver();(t=this.mutationObserver)===null||t===void 0?void 0:t.disconnect();this.mutationObserver=null}getFormattedValue(t,r){const e={currency:O,phone:R,ssn:N,tin:B,alphanumeric:G,alpha:E,numeric:T,percentage:K,postal:V,date:z,"credit-card":tt.format};if(e[this.type]){return e[this.type](t,this.formatModifier,r)}return{value:t,formattedValue:t,fullyFormattedValue:t,formattingCharacterCount:0,unformattedValue:t}}get ariaAttributes(){return{ariaOwns:d(this.ariaOwns),ariaHaspopup:d(this.ariaHaspopup,["true","false","menu","listbox","tree","grid","dialog"]),ariaExpanded:d(this.ariaExpanded,["true","false"]),ariaActivedescendant:d(this.ariaActivedescendant)}}get hasCustomDisplaySlot(){return!!this.hostElement.querySelector("[slot=custom-display]")}get clearClasses(){var t;const r=["btn-clear"];if(!this.clearable||!(((t=this.inputField)===null||t===void 0?void 0:t.value)||this.value)){r.push("hidden")}return r}get shouldCursorStartAtEnd(){return this.type==="currency"}get shouldCursorStayAtEnd(){return this.isMobile&&this.type==="currency"}get hasError(){return Array.isArray(this.errors)&&this.errors.length>0}get messages(){return this.errors&&this.errors.length>0&&this.errors||this.hints&&this.hints.length>0&&this.hints||[]}get inputField(){return this.hostElement.shadowRoot.querySelector(".input-field")}get showMessages(){return this.messages.length>0&&!this.hideMessages}get inputId(){return`input-guid-${this.guid}`}get inputDescribedBy(){return this.showMessages?`${this.inputId}-description`:undefined}get hasInputLeftSlot(){return f(this.hostElement,"input-left")}get hasInputRightSlot(){return f(this.hostElement,"input-right")}get isMaskedType(){const t=["currency","phone","ssn","tin","alphanumeric","alpha","numeric","percentage","postal","date","credit-card"];return t.includes(this.type)}get wrapperClasses(){const t=["field-container"];if(this.hasError)t.push("has-error");if(!!this.value)t.push("has-value");if(this.clearable&&!!this.value)t.push("has-clear");if(this.hasFocus)t.push("has-focus");if(this.isSmall)t.push("is-small");if(this.formattedValueObject.prefix)t.push("has-prefix");if(this.computedIconLeft)t.push("has-icon-left");if(this.showIconSeparator)t.push("has-icon-separator");if(this.formattedValueObject.suffix)t.push("has-suffix");if(!this.formattedValueObject.suffix&&this.iconRight)t.push("has-icon-right");if(this.type==="currency")t.push("right-aligned");else t.push("left-aligned");if(this.hasCustomDisplaySlot)t.push("has-custom-display");return t.join(" ")}get computedType(){if(["password","text","ssn"].includes(this.type)&&this.textHidden){return"password"}else{return this.type&&at[this.type]||"text"}}get computedAutocomplete(){if(this.type==="currency")return"transaction-amount";return this.autocomplete||"off"}get computedIconLeft(){if(this.formattedValueObject.prefix){return}if(this.type==="search"){return"search"}if(this.formattedValueObject.leftIcon){return this.formattedValueObject.leftIcon}return this.iconLeft}get showIconSeparator(){return this.type==="credit-card"||!!this.formattedValueObject.prefix}get computedClassForIconLeft(){let t="icon-left";if(this.formattedValueObject.leftIconMuted){t+=" icon-left-muted"}return t}get stringValue(){return this.value&&String(this.value)||""}get canSetSelection(){return!["email","number"].includes(this.computedType)}get visibilityToggleText(){return u(`tecton.element.input.toggle.${this.textHidden?"show":"hide"}`)}get visibilityToggleAriaLabel(){return`tecton.element.input.toggleAriaLabel.${this.textHidden?"show":"hide"}`}formatAndUpdateValueFromProp(){this.formattedValueObject=this.getFormattedValue(this.stringValue,true);if(!this.pseudo){const t=()=>{this.inputField.value=this.formattedValueObject.formattedValue};this.inputField?t():this.scheduledAfterRender.push((()=>t()))}}get inputMode(){const t={currency:"numeric",ssn:"numeric",tin:"numeric",numeric:"decimal",percentage:"decimal",postal:"numeric",date:"numeric","credit-card":"numeric"};return this.type&&t[this.type]||undefined}manageClearableResizeObserver(t){var r;const e=190;if(t){if(this.resizeObserver)return;this.resizeObserver=new ResizeObserver((([t])=>{this.isSmall=e>t.contentRect.width}));this.resizeObserver.observe(this.hostElement)}else{this.isSmall=false;(r=this.resizeObserver)===null||r===void 0?void 0:r.unobserve(this.hostElement);this.resizeObserver=null}}ariaLabelObserver(){p(this)}valueObserver(){this.formatAndUpdateValueFromProp()}formattedValueObjectObserver(){this.formatted.emit(this.formattedValueObject)}typeObserver(){this.formatAndUpdateValueFromProp()}formatModifierObserver(){this.formatAndUpdateValueFromProp()}hintsObserver(){this.hasFocus&&this.scheduledAfterRender.push((()=>n(this)))}errorsObserver(){this.hasFocus&&this.scheduledAfterRender.push((()=>n(this)))}setValue(t){const{inputField:r}=this;r.focus();r.dispatchEvent(new FocusEvent("focus"));r.value=t;r.dispatchEvent(new InputEvent("input"))}clearValue(){if(!this.clearable)return;this.onClearInput()}checkValidity(){this.inputRef.checkValidity();this.validateInput()}onHostElementFocus(t){if(!l(t,this.hostElement))return;this.inputField.focus()}onHostElementChange(t){t.stopPropagation();if(t.target===this.hostElement&&!this.hostElement.onchange){this.value=t.detail.value}}handleCurrencyDeletion(t){if(this.textSelectedForDeletion){this.textSelectedForDeletion=false;return}if(t.inputType!=="deleteContentBackward"&&t.inputType!=="deleteContentForward")return;const r=t.target;const e=r.selectionStart;const{formattedValue:a}=this.formattedValueObject;if(e===null)return;let i;switch(t.inputType){case"deleteContentBackward":const t=a.substring(0,e+1);const r=/[a-zA-Z0-9]$/.test(t);i={leftIndex:r?e:e-1,rightIndex:r?e+1:e,afterCursorOffset:0,newCursorOffset:1};break;case"deleteContentForward":const s=a.substring(e);const o=/^[a-zA-Z0-9]/.test(s);i={leftIndex:o?e:e+1,rightIndex:o?e+1:e+2,afterCursorOffset:1,newCursorOffset:0};break;default:return}const s=[a.substring(0,i.leftIndex),a.substring(i.rightIndex)].join("");const o=a.length-e-i.afterCursorOffset;const n=this.getFormattedValue(s,false).formattedValue;const p=Math.max(n.length-o+i.newCursorOffset,0);r.value=n;r.setSelectionRange(p,p);if(p===0){h((()=>r.setSelectionRange(p,p)))}}handleDataInput(t){if(this.maxlength===undefined||t.unformattedValue.length<=this.maxlength||t.unformattedValue.length<=this.formattedValueObject.unformattedValue.length){this.formattedValueObject=t}else if(this.maxlength){t=this.getFormattedValue(t.unformattedValue.substring(0,this.maxlength),false);this.formattedValueObject=t}this.handleValueAndCursor()}render(){return e("div",{key:"ab401e37133bd42fc82e643f1d85ec4e104d497f",class:this.wrapperClasses},e("div",{key:"63935b656d2d36c7c42ffd66d5b8662ac09bf906",class:"label-wrapper"},x(this),this.countDOM()),this.inputContainerDOM(),m(this))}countDOM(){if(!this.showCount)return;const{maxlength:t,formattedValueObject:r}=this;return e("div",{class:"count-tag"},r.unformattedValue.length,t&&`/${t}`)}inputContainerDOM(){const{hasInputLeftSlot:t,hasInputRightSlot:r}=this;return e("div",{class:"input-container",tabindex:-1,"test-id":"inputContainer"},e("div",{class:"input-icons-container-left"},this.formattedValueObject.prefix&&e("div",{class:"input-prefix"},this.formattedValueObject.prefix),this.computedIconLeft&&e("div",null,e("q2-icon",{type:this.computedIconLeft,class:this.computedClassForIconLeft})),t&&e("slot",{name:"input-left"}),this.showIconSeparator&&e("div",{class:"vertical-separator"}),this.hasError&&this.type==="currency"&&e("div",{"test-id":"divIconError",onClick:this.onRefocusInput},e("q2-icon",{type:"error",class:"icon-error","test-id":"iconError"}))),this.pseudo?this.pseudoInputDOM():this.standardInputDOM(),e("div",{class:"input-icons-container-right"},e("q2-btn",{class:this.clearClasses.join(" "),ariaLabel:u("tecton.element.input.clear",[this.label]),"test-id":"clearButton",onClick:this.onClearInput},e("q2-icon",{type:"close",class:"icon-clear"})),["password","text","ssn","tin"].includes(this.type)&&this.showVisibilityToggle&&e("q2-btn",{class:"btn-visibility-toggle","test-id":"toggleVisibilityButton",onClick:this.onToggleVisibility,label:u(this.visibilityToggleAriaLabel,{label:this.label}),"hide-label":true},this.visibilityToggleText),this.formattedValueObject.suffix&&e("span",{class:"input-suffix"},this.formattedValueObject.suffix),this.badgeValue&&e("q2-badge",{size:"large",theme:this.badgeTheme},this.badgeValue),this.hasError&&this.type!=="currency"&&e("div",{"test-id":"divIconError",onClick:this.onRefocusInput},e("q2-icon",{type:"error",class:"icon-error","test-id":"iconError"})),this.iconRight&&!this.formattedValueObject.suffix&&e("div",null,e("q2-icon",{type:this.iconRight,class:"icon-right"})),r&&e("slot",{name:"input-right"})))}standardInputDOM(){const{hasCustomDisplaySlot:t}=this;const r=["input-field"];const{ariaOwns:i,ariaHaspopup:s,ariaExpanded:o,ariaActivedescendant:n}=this.ariaAttributes;if(t)r.push("sr");return e(a,null,t&&e("div",{class:"custom-display-container"},e("slot",{name:"custom-display"})),e("input",{ref:t=>this.inputRef=t,class:r.join(" "),id:this.inputId,type:this.computedType,size:this.formattedValueObject.prefix?10:undefined,max:this.max,min:this.min,step:this.step,"aria-current":this.current||undefined,"aria-describedby":this.inputDescribedBy,"aria-required":`${!this.optional}`,"aria-invalid":`${this.hasError}`,"aria-owns":i,"aria-haspopup":s,"aria-expanded":o,"aria-activedescendant":n,autocomplete:this.computedAutocomplete,autocapitalize:this.autocapitalize,autocorrect:this.autocorrect==="on"?"on":"off",autofocus:this.autofocus,placeholder:this.placeholder&&u(this.placeholder)||undefined,role:this._role,"test-id":"inputField",readonly:this.readonly||this._preventEntry,disabled:!!this.disabled,onFocus:this.onInputFocus,onBlur:this.onInputBlur,onClick:this.onInputClick,onKeyDown:this.onInputKeydown,onInput:this.onInputInput,onPaste:this.onInputPaste,inputmode:this.inputMode,pattern:this.pattern||undefined}))}pseudoInputDOM(){const t=!this.value&&!!this.placeholder;const{ariaOwns:r,ariaHaspopup:a,ariaExpanded:i,ariaActivedescendant:s}=this.ariaAttributes;return e("div",{class:"pseudo-input-container"},e("button",{class:"input-field",type:"button",id:this.inputId,"aria-describedby":this.inputDescribedBy,"aria-invalid":`${this.hasError}`,"aria-owns":r,"aria-haspopup":a,"aria-expanded":i,"aria-activedescendant":s,role:this.role&&`${this.role}`||"textbox",disabled:!!this.disabled,"test-id":"q2InputInnerClearButton",onFocus:this.onInputFocus,onBlur:this.onInputBlur},e("div",{class:"custom-display-container"},e("slot",{name:"custom-display"},e("span",{class:t?"placeholder-text":""},t?this.placeholder:this.value)))))}placeCursorAtEnd(){const{inputField:t}=this;t.selectionStart=t.selectionEnd=t.value.length}calculateCursorPositionOnInput(){const t=this.inputField;const r=this.formattedValueObject.formattedValue.length;const e=t.value.length;const a=this.type==="currency"?r:0;return{startingPosition:t&&t.selectionStart||a,valueLength:r,previousValueLength:t&&e,hasSelection:false}}calculateCursorPositionOnFocus(){var t,r,e;const{inputField:a}=this;const i=(r=(t=a===null||a===void 0?void 0:a.value)===null||t===void 0?void 0:t.length)!==null&&r!==void 0?r:0;const s=(e=a===null||a===void 0?void 0:a.selectionStart)!==null&&e!==void 0?e:i;return{startingPosition:s,valueLength:i,previousValueLength:i,hasSelection:getSelection().toString().length>0}}setCursorPosition(t){if(this.canSetSelection&&!t.hasSelection){const r=this.inputField;const{valueLength:e,previousValueLength:a,startingPosition:i}=t;if(this.type==="currency"){if(a-e===1){r.setSelectionRange(i-1,i-1)}else{const t=a-e;r.setSelectionRange(i-t,i-t)}}if(this.type!=="currency"){const t=e-a;const s=i+(t>0?t:0);r.setSelectionRange(s,s)}}}get hostElement(){return i(this)}static get watchers(){return{clearable:["manageClearableResizeObserver"],ariaLabel:["ariaLabelObserver"],value:["valueObserver"],formattedValueObject:["formattedValueObjectObserver"],type:["typeObserver"],formatModifier:["formatModifierObserver"],hints:["hintsObserver"],errors:["errorsObserver"]}}};it.style=et;export{it as q2_input};
2
- //# sourceMappingURL=p-77e6704d.entry.js.map
1
+ import{r as t,c as r,h as e,F as a,g as i}from"./p-a5f18e27.js";import{d as s,c as o,s as n,h as p,o as c,p as d,f,l as u,i as l,n as h,m,e as x}from"./p-7ea95f38.js";function v(t="",r={prefix:"",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:"",allowDecimal:false,allowNegative:true},e=false){const a=t[0]==="-";let i=t;const s=!!r.allowDecimal&&!!r.decimals;if(e){const t=i.replace(/[^\d.]/g,"");i=t&&Number(t).toFixed(s?r.decimals:0)||""}i=i.replace(/[^\d]/g,"");let{integerString:o,decimalString:n}=S(i,s,r.decimals);let p=r.decimalSeparator;if(!s){p="";n=""}const c=r.allowNegative&&a?"-":"";i=`${c}${o}${p}${n}`;o=o.replace(/\B(?=(\d{3})+(?!\d))/g,r.thousandsSeparator);const d=c||o?`${c}${o}${p}${n}`:"";const f=c||o?`${c}${r.prefix}${o}${p}${n}${r.suffix}`:"";let u=d.length-i.length;if(p){u=u+r.decimalSeparator.length}const l=r.prefix||r.suffix;const h=Number.MAX_SAFE_INTEGER.toString().length+u+n.length;const m=`${o.replace(/[^0-9]/g,"")}${n}`.replace(/^0+/,"");return{value:i,formattedValue:d,fullyFormattedValue:f,prefix:l,suffix:"",formattingCharacterCount:u,maxlength:h,unformattedValue:m}}function S(t,r=false,e){if(!r){return{integerString:t,decimalString:""}}const a=t.length-e;let i=t.substring(0,a).padStart(1,"0");if(i.length>1&&i[0]==="0"){i=i.substring(1)}const s=t.substring(a).padStart(e,"0");return{integerString:i,decimalString:s}}function b(t="",r="",e){const a=e&&e.prefix||"";const i=e&&e.suffix||"";if(!t||!r){const r=`${a}${t}${i}`;return{value:t,formattedValue:t,fullyFormattedValue:r,prefix:a.trim()||i.trim(),formattingCharacterCount:0,unformattedValue:t}}const{unformattedValue:s,formattedValue:o,formattingCharacterCount:n}=A(t,r);const p=`${a}${o}${i}`;const c=r.length;const d=Y(r,a,i);return{value:s,formattedValue:o,fullyFormattedValue:p,prefix:a.trim()||i.trim(),formattingCharacterCount:n,maxlength:c,minFormattedLength:d,unformattedValue:s}}const g=["?"];function k(t){return g.includes(t)}const w=["#","@","*",...g];function y(t){return w.includes(t)}function M(t){const r=w.join("|");const e=t.replace(new RegExp(`[${r}]`,"g"),"").split("");return new Set(e)}function C(t,r){return r.has(t)}function D(t,r){switch(r){case"#":t=t.replace(/[^\d]/g,"");break;case"@":t=t.toUpperCase().replace(/[^A-Z]+/g,"");break;case"*":t=t.toUpperCase().replace(/[^\dA-Z]+/g,"");break;case"?":t=t.replace(/[^\d]/g,"");break;default:return t}return t}function A(t,r){const e=r.split("");const a=M(r);let i=0;let s=0;let o="";const n=e.reduce(((r,e)=>{if(i>=t.length){return r}if(k(e)&&C(t[i],a)){return r}if(y(e)){i=L(t,i,a);if(i>=t.length){return r}const s=D(t[i],e);r+=s;o+=s;i++}else{r+=e;s++;if(e===t[i]){i++}}return r}),"");return{unformattedValue:o,formattedValue:n,formattingCharacterCount:s}}function L(t,r,e){if(C(t[r],e)){r++;return L(t,r,e)}return r}function Y(t,r,e){return t.replace(new RegExp(`[${g.join("|")}]`,"g"),"").length+r.length+e.length}const I={AED:{prefix:"",suffix:"د.إ",decimals:2,decimalSeparator:".",thousandsSeparator:","},AFN:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ALL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AMD:{prefix:"դր.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ANG:{prefix:"ƒ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AOA:{prefix:"Kz",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ARS:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AUD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AWG:{prefix:"ƒ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},AZN:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BAM:{prefix:"КМ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BBD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BDT:{prefix:"৳",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BGN:{prefix:"৳",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BHD:{prefix:"",suffix:"ب.د",decimals:3,decimalSeparator:".",thousandsSeparator:","},BIF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},BMD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BND:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BOB:{prefix:"Bs.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BRL:{prefix:"R$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BSD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BTN:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BWP:{prefix:"P",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},BYN:{prefix:"Br",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},BZD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CAD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CDF:{prefix:"Fr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CHF:{prefix:"Fr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CLF:{prefix:"Fr",suffix:"",decimals:4,decimalSeparator:".",thousandsSeparator:","},CLP:{prefix:"$",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},CNY:{prefix:"¥",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},COP:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CRC:{prefix:"₡",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CUC:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CUP:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},CVE:{prefix:"$",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},CZK:{prefix:"Kč",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},DJF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},DKK:{prefix:"kr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},DOP:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},DZD:{prefix:"",suffix:"د.ج",decimals:2,decimalSeparator:".",thousandsSeparator:","},EEK:{prefix:"KR",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},EGP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ERN:{prefix:"Nfk",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ETB:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},EUR:{prefix:"€",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},FJD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},FKP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GBP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GEL:{prefix:"ლ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GHS:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GIP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GMD:{prefix:"D",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GNF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},GTQ:{prefix:"Q",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},GYD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HKD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HNL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HRK:{prefix:"kn",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HTG:{prefix:"G",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},HUF:{prefix:"Ft",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},IDR:{prefix:"Rs",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ILS:{prefix:"₪",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},INR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},IQD:{prefix:"",suffix:"ع.د",decimals:3,decimalSeparator:".",thousandsSeparator:","},IRR:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ISK:{prefix:"kr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},JMD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},JOD:{prefix:"",suffix:"د.ا",decimals:3,decimalSeparator:".",thousandsSeparator:","},JPY:{prefix:"¥",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},KES:{prefix:"Sh",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KGS:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KHR:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KMF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},KPW:{prefix:"₩",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KRW:{prefix:"₩",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},KWD:{prefix:"د.ك",suffix:"",decimals:3,decimalSeparator:".",thousandsSeparator:","},KYD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},KZT:{prefix:"〒",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LAK:{prefix:"₭",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LBP:{prefix:"",suffix:"ل.ل",decimals:2,decimalSeparator:".",thousandsSeparator:","},LKR:{prefix:"Rs",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LRD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LSL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LTL:{prefix:"Lt",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LVL:{prefix:"Ls",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},LYD:{prefix:"",suffix:"ل.د",decimals:3,decimalSeparator:".",thousandsSeparator:","},MAD:{prefix:"",suffix:"د.م.",decimals:2,decimalSeparator:".",thousandsSeparator:","},MDL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MGA:{prefix:"¤",suffix:"",decimals:1,decimalSeparator:".",thousandsSeparator:","},MKD:{prefix:"ден",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MMK:{prefix:"K",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MNT:{prefix:"₮",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MOP:{prefix:"P",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MRU:{prefix:"UM",suffix:"",decimals:1,decimalSeparator:".",thousandsSeparator:","},MUR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MVR:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MWK:{prefix:"MK",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MXN:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MYR:{prefix:"RM",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},MZN:{prefix:"MTn",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NAD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NGN:{prefix:"₦",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NIO:{prefix:"C$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NOK:{prefix:"kr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NPR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},NZD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},OMR:{prefix:"",suffix:"ر.ع.",decimals:3,decimalSeparator:".",thousandsSeparator:","},PAB:{prefix:"B/.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PEN:{prefix:"S/.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PGK:{prefix:"K",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PHP:{prefix:"p",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PKR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PLN:{prefix:"zł",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},PYG:{prefix:"¤",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},QAR:{prefix:"",suffix:"ر.ق",decimals:2,decimalSeparator:".",thousandsSeparator:","},RON:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},RSD:{prefix:"дин.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},RUB:{prefix:"руб.",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},RWF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},SAR:{prefix:"",suffix:"ر.س",decimals:2,decimalSeparator:".",thousandsSeparator:","},SBD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SCR:{prefix:"₨",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SDG:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SEK:{prefix:"kr",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SGD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SHP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SKK:{prefix:"Sk",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SLL:{prefix:"Le",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SOS:{prefix:"Sh",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SRD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},STN:{prefix:"Db",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SVC:{prefix:"₡",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SYP:{prefix:"£",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},SZL:{prefix:"L",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},THB:{prefix:"฿",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TJS:{prefix:"ЅМ",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TMM:{prefix:"m",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TND:{prefix:"",suffix:"د.ت",decimals:3,decimalSeparator:".",thousandsSeparator:","},TOP:{prefix:"T$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TRY:{prefix:"YTL",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TTD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TWD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},TZS:{prefix:"Sh",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},UAH:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},UGX:{prefix:"Sh",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},USD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},UYU:{prefix:"$",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},UZS:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},VEF:{prefix:"Bs F",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},VND:{prefix:"₫",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},VUV:{prefix:"Vt",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},WST:{prefix:"T",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},XAF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},XCD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},XOF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},XPF:{prefix:"Fr",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:","},YER:{prefix:"¤",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ZAR:{prefix:"R",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ZMW:{prefix:"ZK",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","},ZWD:{prefix:"$",suffix:"",decimals:2,decimalSeparator:".",thousandsSeparator:","}};function O(t,r="USD",e=false){let a=r||"";let i=true;if(a.includes("-integer")){a=a.split("-integer")[0];i=false}const s=I[a];if(!s){return b(t)}const o=Object.assign(Object.assign({},s),{allowDecimal:i&&s.decimals>0,allowNegative:false});return v(t,o,e)}const F={AF:{mask:"(##) #######",prefix:"+93 "},AL:{mask:"#######",prefix:"+355 "},DZ:{mask:"(##) ###-###",prefix:"+213 "},AD:{mask:"(#) #####",prefix:"+376 "},AO:{mask:"#########",prefix:"+244 "},AI:{mask:"(###) ###-####",prefix:"+1 "},AG:{mask:"(###) ###-####",prefix:"+1 "},AR:{mask:"##########",prefix:"+54 "},AM:{mask:"########",prefix:"+375 "},AQ:{mask:"##-####",prefix:"+672 "},AW:{mask:"###-####",prefix:"+297 "},AU:{mask:"(##) ####-####",prefix:"+61 "},AT:{mask:"#############",prefix:"+43 "},AZ:{mask:"#########",prefix:"+994 "},BS:{mask:"(###) ###-####",prefix:"+1 "},BH:{mask:"####-####",prefix:"+973 "},BD:{mask:"#########",prefix:"+880 "},BB:{mask:"(###) ###-####",prefix:"+1 "},BY:{mask:"#########",prefix:"+375 "},BE:{mask:"########??",prefix:"+32 "},BZ:{mask:"#######",prefix:"+501 "},BJ:{mask:"(##) ###-###",prefix:"+229 "},BM:{mask:"(###) ###-####",prefix:"+1 "},BT:{mask:"(#) ###-###",prefix:"+975 "},BO:{mask:"(#) ###-####",prefix:"+591 "},BA:{mask:"(##) ##-##-##",prefix:"+387 "},BW:{mask:"########",prefix:"+267 "},BR:{mask:"(##) ####-####",prefix:"+55 "},BN:{mask:"###-####",prefix:"+673 "},BG:{mask:"#######?",prefix:"+359 "},BF:{mask:"##-##-##-##",prefix:"+226 "},BI:{mask:"####-####",prefix:"+257 "},KH:{mask:"(##) ######",prefix:"+855 "},CM:{mask:"####-####",prefix:"+237 "},CA:{mask:"(###) ###-####",prefix:"+1 "},CV:{mask:"###-####",prefix:"+238 "},KY:{mask:"(###) ###-####",prefix:"+1 "},CF:{mask:"###-###",prefix:"+236 "},TD:{mask:"###-##-##",prefix:"+235 "},CL:{mask:"#########",prefix:"+56 "},CN:{mask:"###########",prefix:"+86 "},CO:{mask:"##########",prefix:"57 "},KM:{mask:"###-####",prefix:"+269 "},CD:{mask:"###-####",prefix:"+243 "},CG:{mask:"###-####",prefix:"+242 "},CR:{mask:"####-####",prefix:"+506 "},CI:{mask:"####-####",prefix:"+225 "},HR:{mask:"########?",prefix:"+385 "},CU:{mask:"###########",prefix:"+53 "},CY:{mask:"####-####",prefix:"+357 "},CZ:{mask:"#########",prefix:"+420 "},DK:{mask:"####-####",prefix:"+45 "},DJ:{mask:"##-##-##-##",prefix:"+253 "},DM:{mask:"(###) ###-####",prefix:"+1 "},DO:{mask:"(###) ###-####",prefix:"+1 "},TL:{mask:"###-####",prefix:"+670 "},EC:{mask:"(##) ###-####",prefix:"+593 "},EG:{mask:"##########",prefix:"+20 "},SV:{mask:"####-####",prefix:"+503 "},GQ:{mask:"##-####",prefix:"+240 "},EE:{mask:"#######?",prefix:"+372 "},ET:{mask:"(##) ###-####",prefix:"+251 "},FK:{mask:"#####",prefix:"+500 "},FO:{mask:"######",prefix:"+298 "},FJ:{mask:"###-####",prefix:"+679 "},FI:{mask:"############",prefix:"+358 "},FR:{mask:"#########",prefix:"+33 "},GF:{mask:"##########",prefix:"+594 "},PF:{mask:"######",prefix:"+689 "},GA:{mask:"######?",prefix:"+241 "},GM:{mask:"###-####",prefix:"+220 "},GE:{mask:"########",prefix:"+995 "},DE:{mask:"###########",prefix:"+49 "},GH:{mask:"#########",prefix:"+233 "},GI:{mask:"####-####",prefix:"+350 "},GR:{mask:"##########",prefix:"+30 "},GL:{mask:"###-###",prefix:"+299 "},GD:{mask:"(###) ###-####",prefix:"+1 "},GP:{mask:"##########",prefix:"+590 "},GU:{mask:"(###) ###-####",prefix:"+1 "},GT:{mask:"####-####",prefix:"+502 "},GN:{mask:"####-####",prefix:"+224 "},GW:{mask:"###-####",prefix:"+245 "},GY:{mask:"(###) ####",prefix:"+592 "},HK:{mask:"####-####",prefix:"+852 "},HN:{mask:"########",prefix:"+504 "},HT:{mask:"####-####",prefix:"+509 "},HU:{mask:"########??",prefix:"+36 "},IS:{mask:"#########",prefix:"+354 "},IN:{mask:"##########",prefix:"+91 "},ID:{mask:"#######??????",prefix:"+62 "},IR:{mask:"##########",prefix:"+98 "},IQ:{mask:"##########",prefix:"+964 "},IE:{mask:"#########",prefix:"+353 "},IL:{mask:"#########",prefix:"+972 "},IT:{mask:"##########",prefix:"+39 "},JM:{mask:"(###) ###-####",prefix:"+1 "},JP:{mask:"#########??",prefix:"+81 "},JO:{mask:"#########",prefix:"+962 "},KZ:{mask:"(###) ####-###",prefix:"+7 "},KE:{mask:"##########",prefix:"+254 "},KI:{mask:"##-###",prefix:"+686 "},KR:{mask:"##########",prefix:"+82 "},KW:{mask:"####-####",prefix:"+965 "},KG:{mask:"#########",prefix:"+996 "},LA:{mask:"########?",prefix:"+856 "},LV:{mask:"####-####",prefix:"+371 "},LB:{mask:"#######?",prefix:"+961 "},LS:{mask:"##-###-###",prefix:"+266 "},LY:{mask:"########?",prefix:"+218 "},LI:{mask:"###-####",prefix:"+423 "},LT:{mask:"########",prefix:"+370 "},LU:{mask:"###########",prefix:"+352 "},MO:{mask:"####-####",prefix:"+853 "},MK:{mask:"########",prefix:"+389 "},MG:{mask:"##-##-###-##",prefix:"+261 "},MW:{mask:"#########",prefix:"+265 "},MY:{mask:"##########",prefix:"+60 "},MV:{mask:"###-####",prefix:"+960 "},ML:{mask:"####-####",prefix:"+223 "},MT:{mask:"##-##-##-##",prefix:"+356 "},MH:{mask:"###-####",prefix:"+692 "},MQ:{mask:"###-######",prefix:"+596 "},MU:{mask:"###-####",prefix:"+230 "},MX:{mask:"(###) ###-####",prefix:"+52 "},MD:{mask:"########",prefix:"+373 "},MC:{mask:"####-####",prefix:"+377 "},MN:{mask:"###########",prefix:"+976 "},MS:{mask:"(###) ###-####",prefix:"+1 "},MA:{mask:"#########?",prefix:"+212 "},MZ:{mask:"#########",prefix:"+258 "},MM:{mask:"########",prefix:"+95 "},NA:{mask:"##########",prefix:"+264 "},NP:{mask:"##########",prefix:"+977 "},NL:{mask:"#########",prefix:"+31 "},AN:{mask:"########",prefix:"+599 "},NC:{mask:"###-###",prefix:"+687 "},NZ:{mask:"##########",prefix:"+64 "},NI:{mask:"####-####",prefix:"+505 "},NE:{mask:"##-###-###",prefix:"+227 "},NG:{mask:"##########",prefix:"+234 "},MP:{mask:"(###) ###-####",prefix:"+1 "},NO:{mask:"####-####",prefix:"+47 "},OM:{mask:"####-####",prefix:"+968 "},PK:{mask:"##########",prefix:"+92 "},PW:{mask:"###-####",prefix:"+680 "},PA:{mask:"########",prefix:"+507 "},PG:{mask:"########",prefix:"+675 "},PE:{mask:"###########",prefix:"+51 "},PH:{mask:"##########",prefix:"+63 "},PL:{mask:"#########",prefix:"+48 "},PT:{mask:"#-####-####",prefix:"+351 "},PR:{mask:"(###) ###-####",prefix:"+1 "},QA:{mask:"###-####",prefix:"+974 "},RE:{mask:"###-###-###",prefix:"+262 "},RO:{mask:"#########",prefix:"+40 "},RU:{mask:"##########",prefix:"+7 "},RW:{mask:"###-###-###",prefix:"+250 "},SH:{mask:"#-###",prefix:"+290 "},KN:{mask:"(###) ###-####",prefix:"+1 "},LC:{mask:"(###) ###-####",prefix:"+1 "},VC:{mask:"(###) ###-####",prefix:"+1 "},ST:{mask:"##-####",prefix:"+239 "},SA:{mask:"#########",prefix:"+966 "},SN:{mask:"##-###-####",prefix:"+221 "},SC:{mask:"###-###",prefix:"+248 "},SL:{mask:"(##) ###-###",prefix:"+232 "},SG:{mask:"####-####",prefix:"+65 "},SK:{mask:"#########",prefix:"+421 "},SI:{mask:"########",prefix:"+386 "},SB:{mask:"##-###",prefix:"+677 "},ZA:{mask:"(##) ###-####",prefix:"+27 "},ES:{mask:"###-###-###",prefix:"+34 "},LK:{mask:"(##) ###-####",prefix:"+94 "},SD:{mask:"##-###-####",prefix:"+249 "},SR:{mask:"######?",prefix:"+597 "},SZ:{mask:"###-####",prefix:"+268 "},SE:{mask:"###########",prefix:"+46 "},CH:{mask:"(##) ###-####",prefix:"+41 "},SY:{mask:"#########",prefix:"+963 "},TJ:{mask:"#########",prefix:"+992 "},TZ:{mask:"#########",prefix:"+255 "},TH:{mask:"#########",prefix:"+66 "},TG:{mask:"###-####",prefix:"+228 "},TT:{mask:"(###) ###-####",prefix:"+1 "},TN:{mask:"##-###-###",prefix:"+216 "},TR:{mask:"(###) ###-####",prefix:"+90 "},TM:{mask:"########",prefix:"+993 "},TC:{mask:"(###) ###-####",prefix:"+1 "},UG:{mask:"#########",prefix:"+256 "},UA:{mask:"(##) ###-####",prefix:"+380 "},AE:{mask:"#########",prefix:"+971 "},GB:{mask:"#########????",prefix:"+44 "},UY:{mask:"########?",prefix:"+598 "},UZ:{mask:"(##) ###-####",prefix:"+998 "},VE:{mask:"(###) ###-####",prefix:"+58 "},VN:{mask:"#######????",prefix:"+84 "},VG:{mask:"(###) ###-####",prefix:"+1 "},VI:{mask:"(###) ###-####",prefix:"+1 "},YE:{mask:"#########",prefix:"+967 "},ZM:{mask:"#########",prefix:"+260 "},ZW:{mask:"#########",prefix:"+263 "},AC:{mask:"####",prefix:"+247 "},ME:{mask:"(##) ###-###?",prefix:"+382 "},PS:{mask:"#########",prefix:"+970 "},RS:{mask:"#########",prefix:"+381 "},TW:{mask:"#########",prefix:"+886 "},CW:{mask:"#-###-####",prefix:"+599 "},US:{mask:"(###) ###-####",prefix:""}};function R(t,r="US"){const{mask:e,prefix:a}=F[r]||F.US;const i={prefix:a};const s=t||"";if(r==="BR"&&s.replace(/[^0-9]/g,"").length===11){return b(s,"(##) #####-####",i)}else{return b(s,e,i)}}function N(t){return b(t,"###-##-####")}function B(t){return b(t,"##-#######")}function G(t){const r=(t||"").replace(/[^\da-zA-Z]/g,"");return b(r)}function E(t,r){let e=t||"";if(r==="spaced"){e=e.replace(/[^a-zA-Z ]/g,"")}else{e=e.replace(/[^a-zA-Z]/g,"")}return b(e)}function P(t){const r={prefix:"",suffix:"",decimals:0,decimalSeparator:".",thousandsSeparator:"",allowDecimal:false,allowNegative:true};const e=t.split("-");if(e[0]==="delimited"){r.thousandsSeparator=","}else if(e[0].match(/^[0-9]+dec$/)){r.decimals=Number(e[0].replace("dec",""));r.allowDecimal=true;r.thousandsSeparator=","}else{if(e[0].includes("decimal")){r.decimals=Number(e[0].replace("decimal",""));r.allowDecimal=true}else if(e[0]!=="integer"){return}if(e.includes("positive")){r.allowNegative=false}if(e.includes("delimited")){r.thousandsSeparator=","}}return r}function T(t="",r="",e=false){const a=P(r);if(!a){const r=(t||"").replace(/[^\d.,-]/g,"");return b(r)}return v(t,a,e)}function K(t="",r="",e=false){const a=P(r);if(!a){const r=(t||"").replace(/[^\d.,-]/g,"");return b(r,undefined,{suffix:"%"})}a.suffix="%";return v(t,a,e)}const $={AF:"####",AL:"####",DZ:"#####",AC:"ASCN 1ZZ",AD:"AD###",AR:"####","AR+":"@####@@@",AI:"AI-2640",AM:"####",AS:"#####","AS+4":"#####-####",AU:"####",AT:"####",AZ:"AZ ####",BH:"###?",BD:"####",BB:"BB#####",BY:"######",BE:"####",BM:"@@ **",BT:"#####",BA:"######",BR:"#####","BR+3":"#####-###",VG:"VG####",BN:"@@####",BG:"####",KH:"#####",KY:"KY#-####",CA:"@#@ #@#",CL:"###-####",CN:"######",CX:"####",CC:"####",CO:"######",CR:"#####","CR+4":"#####-####",CV:"####",HR:"#####",CU:"#####",CY:"####",CZ:"### ##",DK:"####",DO:"#####",EC:"######",SV:"####",EG:"#####",EE:"#####",ET:"####",FK:"FIQQ 1ZZ",FO:"###",FI:"#####",FR:"#####",GF:"973##",PF:"987##",GI:"GX11 1AA",GE:"####",DE:"#####",GR:"### ##",GL:"####",GP:"971##",GU:"#####","GU+4":"#####-####",GT:"#####",GG:"GY#? #@@",GN:"###",GS:"SIQQ 1ZZ",GW:"####",HT:"####",HN:"@@####","HN-":"#####",HU:"####",IS:"###",IN:"### ###",ID:"#####",IE:"*** ****",IR:"##########",IQ:"#####",IM:"IM#? #@@",IL:"#######",IT:"#####",JM:"##",JP:"###-####",JE:"JE#? #@@",JO:"#####",KZ:"######",KE:"#####",KR:"#####",KN:"KN####",XK:"#####",KW:"#####",KG:"######",LA:"#####",LV:"LV-####",LB:"####? ????",LS:"###",LR:"####",LI:"####",LT:"#####",LU:"####",MK:"####",MG:"###",MY:"#####",MV:"#####",MT:"@@@ ####",MH:"#####","MH+4":"#####-####",MU:"#####",MQ:"972##",MW:"######",YT:"976##",MX:"#####",FM:"#####","FM+4":"#####-####",MD:"####",MC:"980##",MN:"#####",ME:"#####",MA:"#####",MZ:"####",MM:"#####",NA:"#####",NP:"#####",NC:"988##",NZ:"####",NI:"#####",NE:"####",NG:"######",NF:"####",MP:"#####",NO:"####",OM:"###",PK:"#####",PW:"#####","PW+4":"#####-####",PS:"###",PA:"####",PG:"###",PY:"####",PE:"#####","PE+":"####",PH:"####",PL:"##-###",PT:"####","PT+3":"####-###",PR:"#####","PR+4":"#####-####",RE:"974##",PM:"975##",PN:"PCRN 1ZZ",RO:"######",RU:"######",LC:"LC## ###",VC:"####",WS:"####",SM:"4879#",SA:"#####","SA+4":"#####-####",SN:"#####",RS:"#####",SG:"######",SH:"@@@@ 1ZZ",SK:"### ##",SI:"####",SO:"@@ #####",ZA:"####",ES:"#####",LK:"#####",SD:"#####",SZ:"@###",SE:"### ##",CH:"####",SJ:"####",TW:"###","TW+2":"###-##?",TJ:"######",TZ:"#####",TH:"#####",TT:"######",TN:"####",TR:"#####",TM:"######",UA:"#####",UY:"#####",VI:"#####","VI+4":"#####-####",UZ:"######",VE:"####","VE-":"####-@",VN:"#####?",YU:"#####",WF:"986##",ZM:"#####",US:"#####","US+4":"#####-####"};function V(t,r="US"){const e=$[r];if(!e){return G(t)}return b(t,e)}const Z={"MM/DD/YYYY":"##/##/####","M/D/YYYY":"#?/#?/####","MM/DD/YY":"##/##/##","M/D/YY":"#?/#?/##","MM/YY":"##/##","M/YY":"#?/##","DD/MM/YYYY":"##/##/####","D/M/YYYY":"#?/#?/####","DD/MM/YY":"##/##/##","D/M/YY":"#?/#?/##","MM-DD-YYYY":"##-##-####","M-D-YYYY":"#?-#?-####","MM-DD-YY":"##-##-##","M-D-YY":"#?-#?-##","MM-YY":"##-##","M-YY":"#?-##","DD-MM-YYYY":"##-##-####","D-M-YYYY":"#?-#?-####","DD-MM-YY":"##-##-##","D-M-YY":"#?-#?-##"};function z(t,r="MM/DD/YYYY"){const e=Z[r===null||r===void 0?void 0:r.toUpperCase()]||Z["MM/DD/YYYY"];const a=b(t,e);return Object.assign(Object.assign({},a),{value:a.formattedValue})}function U(t){const r=tt.detectCreditCardTypeFromValue(t);const e=X[r](t);if(t.length<2&&r==="unknown"){e.leftIcon="card"}return e}const H=function t(r){const e=b(r,"#### #### #### ####");return Object.assign(Object.assign({},e),{type:"unknown",leftIcon:"card-unknown",leftIconMuted:r.length<16})};const W=function t(r){const e=b(r,"#### ###### #####");return Object.assign(Object.assign({},e),{type:"amex",leftIcon:"card-amex-color",leftIconMuted:r.length<15})};const j=function t(r){const e=b(r,"#### #### #### ####");return Object.assign(Object.assign({},e),{type:"discover",leftIcon:"card-discover-color",leftIconMuted:r.length<16})};const J=function t(r){const e=b(r,"#### #### #### ####");return Object.assign(Object.assign({},e),{type:"masterCard",leftIcon:"card-mastercard-color",leftIconMuted:r.length<16})};const Q=function t(r){const e=b(r,"#### #### #### ####");return Object.assign(Object.assign({},e),{type:"visa",leftIcon:"card-visa-color",leftIconMuted:r.length<16})};const q=function t(r){const e=b(r,"#### ###### ####");return Object.assign(Object.assign({},e),{type:"dinersClub",leftIcon:"card-dinersclub-color",leftIconMuted:r.length<14})};const X={discover:j,amex:W,masterCard:J,visa:Q,dinersClub:q,unknown:H};function _(t){const r=parseInt(t.charAt(0));const e=parseInt(t.charAt(1));switch(r){case 2:if(e>1&&e<8){if(t.length>=4){const r=parseInt(t.substr(0,4));if(r>=2221&&r<2721){return"masterCard"}}else{return"masterCard"}}break;case 3:if(e===4||e===7){return"amex"}if(e===0){if(t.length>2){const r=parseInt(t.charAt(2));if(r<6||r===9){return"dinersClub"}}else{return"dinersClub"}}if(e===6||e===8||e===9){return"dinersClub"}break;case 4:return"visa";case 5:if(e>0&&e<6){return"masterCard"}break;case 6:if(e===0){if(t.length>3){const r=t.substr(0,4);if(r==="6011"){return"discover"}}else{return"discover"}}if(e===4){if(t.length>2){const r=parseInt(t.substr(0,3));if(r>643){return"discover"}}else{return"discover"}}if(e===5){return"discover"}if(e===2){if(t.length>5){const r=parseInt(t.substr(0,6));if(r>=622126&&r<=622925){return"discover"}}else{return"discover"}}break;default:return"unknown"}return"unknown"}const tt={detectCreditCardTypeFromValue:_,format:U,amexFormatter:W,dinersClubInternationalFormatter:q,discoverFormatter:j,masterCardFormatter:J,visaFormatter:Q,unknownFormatter:H};const rt='*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #0066cc)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{--comp-default-input-margin:var(--tct-input-margin-top, var(--t-input-margin-top, var(--app-scale-6x, 30px))) 0 var(--tct-input-margin-bottom, var(--t-input-margin-bottom, var(--app-scale-6x, 30px)));display:block;margin:var(--tct-input-margin, var(--comp-default-input-margin));font-size:var(--tct-input-font-size, var(--t-input-font-size, var(--app-font-size, inherit)))}:host([hidden]){display:none}.field-container,.input-container{position:relative}.field-container{--comp-input-tween:var(--tct-input-tween, var(--t-input-tween, var(--tct-tween-2, var(--app-tween-2, 0.4s ease))))}.field-container.is-small .btn-clear{--tct-btn-icon-width:20px;--tct-icon-size:17px}label{--comp-label-padding:var(--tct-input-label-padding, 0 var(--tct-input-label-padding-right, var(--t-input-label-padding-right, 0)) 0 var(--tct-input-label-padding-left, var(--t-input-label-padding-left, 0)));display:block;padding:var(--comp-label-padding);color:var(--tct-input-label-font-color, var(--t-input-label-font-color, inherit));font-size:var(--tct-input-label-font-size, var(--t-input-label-font-size, inherit));font-weight:var(--tct-input-label-font-weight, var(--t-input-label-font-weight, 600));text-transform:var(--tct-input-label-text-transform, var(--t-input-label-text-transform, none));letter-spacing:var(--tct-input-label-letter-spacing, var(--t-input-label-letter-spacing, normal));transition:color var(--comp-input-tween)}.optional-tag{--comp-label-optional-margin:var(--tct-input-label-optional-margin, 0 0 0 var(--tct-input-label-optional-margin-left, var(--t-input-label-optional-margin-left, var(--tct-scale-1, var(--app-scale-1x, 5px)))));margin:var(--comp-label-optional-margin);color:var(--tct-input-label-optional-font-color, var(--t-input-label-optional-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77)))));font-size:var(--tct-input-label-optional-font-size, var(--t-input-label-optional-font-size, var(--app-font-size-small, 12px)));font-weight:var(--tct-input-label-optional-font-weight, var(--t-input-label-optional-font-weight, 400))}.count-tag{color:var(--tct-input-count-font-color, var(--t-textA, var(--t-a11y-gray-color, rgba(77, 77, 77, 0.77))));font-size:var(--tct-input-count-font-size, var(--app-font-size-small, 12px));font-weight:var(--tct-input-count-font-weight, 400);text-align:right;width:var(--tct-input-count-width, auto)}.label-wrapper{--comp-label-margin:var(--tct-input-label-margin, var(--tct-input-label-margin-top, var(--t-input-label-margin-top, 0)) 0 var(--tct-input-label-margin-bottom, var(--t-input-label-margin-bottom, var(--tct-scale-1, var(--app-scale-1x, 5px)))));display:flex;gap:var(--tct-input-label-gap, var(--app-scale-2x, 10px));justify-content:space-between;align-items:end;margin:var(--comp-label-margin);line-height:var(--tct-input-label-line-height, var(--t-input-label-line-height, inherit))}.label-wrapper:has(label.sr){margin:0}.input-container{--comp-input-background:var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--t-gray-14, #fcfcfd))));--comp-input-horizontal-gap:var(--tct-input-horizontal-gap, var(--t-input-horizontal-gap, 0));--comp-input-border-top-left-radius:var(--tct-input-border-top-left-radius, var(--t-input-border-top-left-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));--comp-input-border-top-right-radius:var(--tct-input-border-top-right-radius, var(--t-input-border-top-right-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));--comp-input-border-bottom-right-radius:var(--tct-input-border-bottom-right-radius, var(--t-input-border-bottom-right-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));--comp-input-border-bottom-left-radius:var(--tct-input-border-bottom-left-radius, var(--t-input-border-bottom-left-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));--comp-input-border-radius:var(--comp-input-border-top-left-radius) var(--comp-input-border-top-right-radius)\n var(--comp-input-border-bottom-right-radius) var(--comp-input-border-bottom-left-radius);--comp-input-border-width:var(--tct-input-border-top-width, 1px) var(--tct-input-border-right-width, 1px)\n var(--tct-input-border-bottom-width, 1px) var(--tct-input-border-left-width, 1px);--comp-input-border-color:var(--tct-input-border-color, var(--t-input-border-color, var(--t-a11y-gray-color-AA, #404040)));--comp-input-prefix-clearance:calc(3 * var(--tct-input-prefix-font-size, 14px) + var(--tct-scale-1, 5px));--comp-input-icon-clearance:34px;--comp-input-min-height:var(--tct-input-min-height, var(--t-input-min-height, 44px));--comp-input-max-height:var(--tct-input-max-height, var(--t-input-max-height));--comp-input-hover-ring-color:var(--tct-input-hover-ring-color, var(--t-input-hover-ring-color));--comp-input-hover-ring:0 0 0 2px var(--t-base), 0 0 0 4px var(--comp-input-hover-ring-color), var(--tct-input-hover-box-shadow, var(--t-input-hover-box-shadow, 0 0 transparent));background:var(--comp-input-background);display:flex;align-items:center;gap:var(--tct-input-container-gap, var(--app-scale-2x, 10px));padding-inline:var(--tct-input-container-padding-inline);border-width:var(--comp-input-border-width);border-style:solid;border-color:var(--comp-input-border-color);border-radius:var(--comp-input-border-radius);box-shadow:var(--tct-input-box-shadow, var(--t-input-box-shadow, none));transition:border-width var(--comp-input-tween), border-color var(--comp-input-tween), box-shadow var(--comp-input-tween)}:host([disabled]:not([disabled=false])) .input-container{cursor:not-allowed;opacity:var(--tct-input-disabled-opacity, var(--t-input-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))))}.has-error .input-container{border-color:var(--tct-input-error-border-color, var(--const-stoplight-alert, #d20a0a));background:var(--tct-input-error-background, var(--comp-input-background));box-shadow:var(--tct-input-error-box-shadow, var(--comp-input-hover-ring))}.input-container:hover{border-color:var(--tct-input-hover-border-color, var(--comp-input-border-color));background:var(--tct-input-hover-background, var(--comp-input-background));box-shadow:var(--tct-input-hover-box-shadow, var(--comp-input-hover-ring))}.has-error .input-container:hover{border-color:var(--tct-input-error-hover-border-color, var(--tct-input-error-border-color, var(--const-stoplight-alert, #d20a0a)));background:var(--tct-input-error-hover-background, var(--tct-input-error-background, var(--comp-input-background)));box-shadow:var(--tct-input-error-hover-box-shadow, var(--tct-input-error-box-shadow, var(--comp-input-hover-ring)))}.has-focus .input-container{border-color:var(--tct-input-focus-border-color, var(--t-input-focus-border-color, var(--comp-input-border-color)));background:var(--tct-input-focus-background, var(--comp-input-background));box-shadow:var(--tct-input-focus-box-shadow, var(--const-double-focus-ring))}.has-focus.has-error .input-container,.has-focus.has-error .input-container:hover{border-color:var(--tct-input-error-focus-border-color, var(--tct-input-error-border-color, var(--const-stoplight-alert, #d20a0a)));background:var(--tct-input-error-focus-background, var(--tct-input-error-background, var(--comp-input-background)));box-shadow:var(--tct-input-error-focus-box-shadow, var(--tct-input-error-box-shadow, var(--const-double-focus-ring)))}.input-field{flex:1;border:0;-webkit-appearance:none;appearance:none;box-sizing:border-box;min-height:var(--comp-input-min-height);max-height:var(--comp-input-max-height);overflow-y:hidden;height:var(--tct-input-height, var(--t-input-height, 44px));width:100%;padding:var(--tct-input-padding, 0);background:transparent;color:var(--tct-input-font-color, var(--t-input-font-color, var(--t-text, inherit)));display:inline-block;text-align:var(--tct-input-align, "start");font-weight:var(--tct-input-font-weight, var(--t-input-font-weight, 400));}.input-field:focus{outline:none;box-shadow:none}.input-field::-webkit-outer-spin-button,.input-field::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-field[type=number]{-moz-appearance:textfield}.input-field::-ms-clear{display:none}.input-field[type=search]::-webkit-search-decoration,.input-field[type=search]::-webkit-search-cancel-button,.input-field[type=search]::-webkit-search-results-button,.input-field[type=search]::-webkit-search-results-decoration{display:none}.input-field[disabled]:not([disabled=false]){cursor:not-allowed}.right-aligned .input-field{text-align:right}.input-field:is(input){flex:1}.input-field:is(button){display:inline-flex;align-items:center}.has-custom-display .input-field:is(button){height:auto;padding:0}.input-field:is(button) span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.custom-display-container{max-width:100%}.has-custom-display .custom-display-container{--comp-default-padding:var(--app-scale-2x, 10px) var(--app-scale-2x, 10px) var(--app-scale-3x, 15px);padding:var(--tct-input-padding, var(--t-input-padding, var(--comp-default-padding)));width:100%}.input-field::placeholder,.placeholder-text{color:var(--tct-input-placeholder-font-color, var(--t-input-placeholder-font-color, var(--t-textA, var(--app-gray-d1, rgba(77, 77, 77, 0.77)))))}.pseudo-input-container{min-width:0;flex:1}.input-icons-container-left,.input-icons-container-right{--tct-btn-icon-hover-background:var(--tct-input-btn-hover-background);--tct-btn-hover-background:var(--tct-input-btn-hover-background);display:flex;flex-direction:row;align-items:center;gap:var(--comp-input-horizontal-gap)}.input-icons-container-left>div:not(.vertical-separator),.input-icons-container-right>div:not(.vertical-separator){min-width:var(--tct-input-icon-container-icon-min-width, 44px);display:flex;justify-content:center;align-items:center;font-size:var(--tct-input-icon-container-font-size, inherit)}.input-icons-container-left:empty,.input-icons-container-right:empty{display:var(--tct-input-icon-container-empty-display, block)}.input-icons-container-left{padding-left:var(--comp-input-horizontal-gap)}.input-icons-container-right{padding-right:var(--comp-input-horizontal-gap);--comp-visibility-toggle-padding:0px var(--app-scale-2x, 10px)}.input-icons-container-right .btn-visibility-toggle{--tct-btn-height:var(--comp-input-min-height);--tct-btn-padding-inline:var(--tct-input-visibility-toggle-padding, var(--app-scale-2x, 10px));--tct-btn-font-weight:var(--tct-input-visibility-toggle-font-weight, 400);color:var(--tct-input-visibility-toggle-font-color, var(--t-primary, #0079c1));font-size:var(--tct-input-visibility-toggle-font-size, var(--app-font-size-small, 12px))}q2-icon{margin-top:calc(var(--tct-input-border-top-width, var(--t-input-border-top-width, 1px)) / 2);margin-bottom:calc(var(--tct-input-border-bottom-width, var(--t-input-border-bottom-width, 1px)) / 2);pointer-events:none;color:var(--tct-input-icon-stroke-primary, var(--t-input-icon-stroke-primary, var(--t-a11y-gray-color, var(--t-textA, var(--app-gray, #747474)))));--tct-icon-stroke-primary:var(--tct-input-icon-stroke-primary, var(--t-input-icon-stroke-primary, var(--t-a11y-gray-color, var(--t-textA, var(--app-gray, #747474)))))}.icon-left-muted{opacity:0.5}.input-prefix,.input-suffix{min-height:var(--comp-input-min-height);max-height:var(--comp-input-max-height);height:var(--tct-input-height, var(--t-input-height, 44px));font-size:var(--tct-input-prefix-font-size, var(--t-input-prefix-font-size, inherit));color:var(--tct-input-prefix-font-color, var(--t-input-prefix-font-color, inherit));background:var(--tct-input-prefix-background, var(--tct-input-prefix-bg, var(--t-input-prefix-bg, var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--tct-gray-14, var(--t-gray-14, #f2f2f2))))))));transition:color var(--comp-input-tween), background var(--comp-input-tween)}.input-prefix{border-top-left-radius:calc(\n var(--comp-input-border-top-left-radius) - var(--tct-input-border-top-width, var(--t-input-border-top-width, 1px)) - var(--tct-input-border-left-width, var(--t-input-border-left-width, 1px))\n );border-bottom-left-radius:calc(\n var(--comp-input-border-bottom-left-radius) - var(--tct-input-border-bottom-width, var(--t-input-border-bottom-width, 1px)) - var(--tct-input-border-left-width, var(--t-input-border-left-width, 1px))\n );pointer-events:none;}.input-suffix{border-top-right-radius:calc(\n var(--comp-input-border-top-right-radius) - var(--tct-input-border-top-width, var(--t-input-border-top-width, 1px)) - var(--tct-input-border-right-width, var(--t-input-border-right-width, 1px))\n );border-bottom-right-radius:calc(\n var(--comp-input-border-bottom-right-radius) - var(--tct-input-border-bottom-width, var(--t-input-border-bottom-width, 1px)) - var(--tct-input-border-right-width, var(--t-input-border-right-width, 1px))\n )}.icon-error{color:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a));--tct-icon-stroke-primary:var(--tct-stoplight-error, var(--const-stoplight-alert, #d20a0a))}.messages-container{height:0px;overflow:hidden;background:var(--tct-message-background, var(--tct-message-bg, var(--t-message-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l3, var(--app-gray-l3, #f2f2f2)))))));box-shadow:var(--tct-input-message-box-shadow, var(--t-input-message-box-shadow, var(--tct-box-shadow-1, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3)))));transition:height var(--tct-input-messages-tween, var(--t-input-messages-tween, var(--tct-tween-1, var(--app-tween-1, 0.2s ease))));margin-top:var(--tct-input-messages-margin-top, 2px);z-index:var(--tct-input-messages-z-index, 5);position:absolute;width:100%;color:var(--tct-input-messages-font-color, var(--t-input-messages-font-color, inherit));border-radius:var(--tct-message-border-radius, inherit)}.has-error label{color:var(--tct-input-error-label-font-color, var(--t-input-error-label-font-color, var(--tct-input-label-font-color, var(--t-input-label-font-color, inherit))))}.has-error:not(.has-focus) .input-prefix,.has-error:not(.has-focus) .input-suffix{color:var(--tct-input-error-prefix-font-color, var(--t-input-error-prefix-font-color, inherit));background:var(--tct-input-error-prefix-background, var(--tct-input-error-prefix-bg, var(--t-input-error-prefix-bg, var(--tct-input-background, var(--tct-input-bg, var(--t-input-bg, var(--tct-gray-14, var(--t-gray-14, var(--tct-gray-l3, var(--app-gray-l3, #f2f2f2))))))))))}.icon-left{width:26px;height:26px}.vertical-separator{height:calc(var(--comp-input-min-height) - 2px);border-right-width:var(--tct-input-prefix-border-width, 1px);border-right-style:solid;border-right-color:var(--tct-input-prefix-border-color, var(--t-input-prefix-border-color, var(--tct-input-border-color, var(--t-input-border-color, var(--t-a11y-gray-color-AA, #404040)))))}';const et=rt;const at={text:"text",tel:"tel",number:"number",password:"text",search:"search",url:"url",email:"email",currency:"text",phone:"tel",ssn:"text",alphanumeric:"text",alpha:"text",numeric:"text",percentage:"text",postal:"text",date:"text","credit-card":"text"};const it=class{constructor(e){t(this,e);this.input=r(this,"input",7);this.change=r(this,"change",7);this.clear=r(this,"clear",7);this.formatted=r(this,"formatted",7);this.invalid=r(this,"invalid",7);this.scheduledAfterRender=[];this.isMobile=s();this.onMutationObserved=()=>{this.checkSlotCount=this.checkSlotCount+1};this.guid=o();this.onToggleVisibility=()=>{this.hostElement.dispatchEvent(new FocusEvent("focus"));this.textHidden=!this.textHidden};this.onInputClick=()=>{if(this.shouldCursorStayAtEnd)this.placeCursorAtEnd()};this.onInputFocus=()=>{if(this.inputField.tagName==="INPUT"){this.scheduledAfterRender.push((()=>this.shouldCursorStartAtEnd?this.placeCursorAtEnd():this.setCursorPosition(this.calculateCursorPositionOnFocus())))}this.hasFocus=true;n(this);this.valueOnFocus=this.value};this.onInputBlur=()=>{this.hasFocus=false;n(this);if(this.valueOnFocus!==this.formattedValueObject.value){this.valueOnFocus=this.formattedValueObject.value;this.change.emit(Object.assign({value:this.formattedValueObject.value,formattedValue:this.formattedValueObject.fullyFormattedValue,minFormattedLength:this.formattedValueObject.minFormattedLength},this.formattedValueObject.type&&{type:this.formattedValueObject.type}))}};this.onInputInput=t=>{t.stopPropagation();if(this.type==="currency")this.handleCurrencyDeletion(t);const r=this.getFormattedValue(t.target.value,false);this.handleDataInput(r);this.validateInput()};this.onInputPaste=t=>{if(this.type==="currency"){const r=t.clipboardData.getData("text");const e=this.getFormattedValue(r,true);t.preventDefault();this.handleDataInput(e)}};this.handleValueAndCursor=()=>{const t=this.calculateCursorPositionOnInput();if(this.type!=="number")this.inputField.value=this.formattedValueObject.formattedValue;this.input.emit(Object.assign({value:this.formattedValueObject.value,formattedValue:this.formattedValueObject.fullyFormattedValue,minFormattedLength:this.formattedValueObject.minFormattedLength},this.formattedValueObject.type&&{type:this.formattedValueObject.type}));if(!this.formattedValueObject.value){this.clear.emit()}this.setCursorPosition(t)};this.handleCurrencyKeydown=t=>{if(t.key!=="Backspace"&&t.key!=="Delete")return;const r=this.inputField;this.textSelectedForDeletion=r.selectionStart!==r.selectionEnd};this.onInputKeydown=t=>{const r=["ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Home","End"];const{key:e}=t;if(this.type==="currency")this.handleCurrencyKeydown(t);if(this.shouldCursorStayAtEnd&&r.includes(e))t.preventDefault();if(e==="Enter"&&this.valueOnFocus!==this.formattedValueObject.value){this.valueOnFocus=this.formattedValueObject.value;this.change.emit(Object.assign({value:this.formattedValueObject.value,formattedValue:this.formattedValueObject.fullyFormattedValue,minFormattedLength:this.formattedValueObject.minFormattedLength},this.formattedValueObject.type&&{type:this.formattedValueObject.type}))}};this.onClearInput=()=>{const t={value:"",formattedValue:"",minFormattedLength:this.formattedValueObject.minFormattedLength};this.input.emit(t);this.change.emit(t);this.clear.emit();this.inputField.focus()};this.onRefocusInput=()=>{if(this.showMessages){this.inputField.focus();n(this)}};this.validateInput=()=>{var t,r;this.validity=(t=this.inputRef)===null||t===void 0?void 0:t.validity;if(((r=this.validity)===null||r===void 0?void 0:r.valid)===false){this.invalid.emit()}};this.autocapitalize=undefined;this.autocomplete=undefined;this.autocorrect=undefined;this.autofocus=undefined;this.badgeTheme=undefined;this.badgeValue=undefined;this.clearable=undefined;this.current=undefined;this.disabled=false;this.errors=undefined;this.formatModifier=undefined;this.hideLabel=undefined;this.hideMessages=undefined;this.hints=undefined;this.iconLeft=undefined;this.iconRight=undefined;this.label=undefined;this.max=undefined;this.maxlength=undefined;this.min=undefined;this.optional=undefined;this.placeholder=undefined;this.pseudo=undefined;this.readonly=undefined;this.role=undefined;this.showCount=undefined;this.showVisibilityToggle=false;this.step=undefined;this.textHidden=undefined;this.type="text";this._role=undefined;this._preventEntry=undefined;this.value=undefined;this.pattern=undefined;this.ariaOwns=undefined;this.ariaControls=undefined;this.ariaHaspopup=undefined;this.ariaExpanded=undefined;this.ariaActivedescendant=undefined;this.ariaLabel=undefined;this.validity=undefined;this.formattedValueObject=undefined;this.hasFocus=undefined;this.isSmall=false;this.checkSlotCount=0}componentWillLoad(){if(isNaN(this.maxlength)){this.maxlength=undefined}this.formattedValueObject=this.getFormattedValue(this.stringValue,true);Object.defineProperty(this.hostElement,"formattedValue",{get:()=>{var t,r;return(r=(t=this.formattedValueObject)===null||t===void 0?void 0:t.formattedValue)!==null&&r!==void 0?r:""}});p(this);if(this.textHidden===undefined){this.textHidden=this.type==="password"}this.manageClearableResizeObserver(this.clearable)}componentDidLoad(){if(!this.pseudo){this.inputField.value=this.formattedValueObject.formattedValue}if(this.autofocus===true){this.inputField.focus()}c(this.hostElement);const t=new MutationObserver(this.onMutationObserved);t.observe(this.hostElement,{childList:true});this.mutationObserver=t}componentDidRender(){this.scheduledAfterRender.forEach((t=>t()));this.scheduledAfterRender=[]}disconnectedCallback(){var t;this.manageClearableResizeObserver();(t=this.mutationObserver)===null||t===void 0?void 0:t.disconnect();this.mutationObserver=null}getFormattedValue(t,r){const e={currency:O,phone:R,ssn:N,tin:B,alphanumeric:G,alpha:E,numeric:T,percentage:K,postal:V,date:z,"credit-card":tt.format};if(e[this.type]){return e[this.type](t,this.formatModifier,r)}return{value:t,formattedValue:t,fullyFormattedValue:t,formattingCharacterCount:0,unformattedValue:t}}get ariaAttributes(){return{ariaOwns:d(this.ariaOwns),ariaHaspopup:d(this.ariaHaspopup,["true","false","menu","listbox","tree","grid","dialog"]),ariaExpanded:d(this.ariaExpanded,["true","false"]),ariaActivedescendant:d(this.ariaActivedescendant)}}get hasCustomDisplaySlot(){return!!this.hostElement.querySelector("[slot=custom-display]")}get clearClasses(){var t;const r=["btn-clear"];if(!this.clearable||!(((t=this.inputField)===null||t===void 0?void 0:t.value)||this.value)){r.push("hidden")}return r}get shouldCursorStartAtEnd(){return this.type==="currency"}get shouldCursorStayAtEnd(){return this.isMobile&&this.type==="currency"}get hasError(){return Array.isArray(this.errors)&&this.errors.length>0}get messages(){return this.errors&&this.errors.length>0&&this.errors||this.hints&&this.hints.length>0&&this.hints||[]}get inputField(){return this.hostElement.shadowRoot.querySelector(".input-field")}get showMessages(){return this.messages.length>0&&!this.hideMessages}get inputId(){return`input-guid-${this.guid}`}get inputDescribedBy(){return this.showMessages?`${this.inputId}-description`:undefined}get hasInputLeftSlot(){return f(this.hostElement,"input-left")}get hasInputRightSlot(){return f(this.hostElement,"input-right")}get isMaskedType(){const t=["currency","phone","ssn","tin","alphanumeric","alpha","numeric","percentage","postal","date","credit-card"];return t.includes(this.type)}get wrapperClasses(){const t=["field-container"];if(this.hasError)t.push("has-error");if(!!this.value)t.push("has-value");if(this.clearable&&!!this.value)t.push("has-clear");if(this.hasFocus)t.push("has-focus");if(this.isSmall)t.push("is-small");if(this.formattedValueObject.prefix)t.push("has-prefix");if(this.computedIconLeft)t.push("has-icon-left");if(this.showIconSeparator)t.push("has-icon-separator");if(this.formattedValueObject.suffix)t.push("has-suffix");if(!this.formattedValueObject.suffix&&this.iconRight)t.push("has-icon-right");if(this.type==="currency")t.push("right-aligned");else t.push("left-aligned");if(this.hasCustomDisplaySlot)t.push("has-custom-display");return t.join(" ")}get computedType(){if(["password","text","ssn"].includes(this.type)&&this.textHidden){return"password"}else{return this.type&&at[this.type]||"text"}}get computedAutocomplete(){if(this.type==="currency")return"transaction-amount";return this.autocomplete||"off"}get computedIconLeft(){if(this.formattedValueObject.prefix){return}if(this.type==="search"){return"search"}if(this.formattedValueObject.leftIcon){return this.formattedValueObject.leftIcon}return this.iconLeft}get showIconSeparator(){return this.type==="credit-card"||!!this.formattedValueObject.prefix}get computedClassForIconLeft(){let t="icon-left";if(this.formattedValueObject.leftIconMuted){t+=" icon-left-muted"}return t}get stringValue(){return this.value&&String(this.value)||""}get canSetSelection(){return!["email","number"].includes(this.computedType)}get visibilityToggleText(){return u(`tecton.element.input.toggle.${this.textHidden?"show":"hide"}`)}get visibilityToggleAriaLabel(){return`tecton.element.input.toggleAriaLabel.${this.textHidden?"show":"hide"}`}formatAndUpdateValueFromProp(){this.formattedValueObject=this.getFormattedValue(this.stringValue,true);if(!this.pseudo){const t=()=>{this.inputField.value=this.formattedValueObject.formattedValue};this.inputField?t():this.scheduledAfterRender.push((()=>t()))}}get inputMode(){const t={currency:"numeric",ssn:"numeric",tin:"numeric",numeric:"decimal",percentage:"decimal",postal:"numeric",date:"numeric","credit-card":"numeric"};return this.type&&t[this.type]||undefined}manageClearableResizeObserver(t){var r;const e=190;if(t){if(this.resizeObserver)return;this.resizeObserver=new ResizeObserver((([t])=>{this.isSmall=e>t.contentRect.width}));this.resizeObserver.observe(this.hostElement)}else{this.isSmall=false;(r=this.resizeObserver)===null||r===void 0?void 0:r.unobserve(this.hostElement);this.resizeObserver=null}}ariaLabelObserver(){p(this)}valueObserver(){this.formatAndUpdateValueFromProp()}formattedValueObjectObserver(){this.formatted.emit(this.formattedValueObject)}typeObserver(){this.formatAndUpdateValueFromProp()}formatModifierObserver(){this.formatAndUpdateValueFromProp()}hintsObserver(){this.hasFocus&&this.scheduledAfterRender.push((()=>n(this)))}errorsObserver(){this.hasFocus&&this.scheduledAfterRender.push((()=>n(this)))}setValue(t){const{inputField:r}=this;r.focus();r.dispatchEvent(new FocusEvent("focus"));r.value=t;r.dispatchEvent(new InputEvent("input"))}clearValue(){if(!this.clearable)return;this.onClearInput()}checkValidity(){this.inputRef.checkValidity();this.validateInput()}onHostElementFocus(t){if(!l(t,this.hostElement))return;this.inputField.focus()}onHostElementChange(t){t.stopPropagation();if(t.target===this.hostElement&&!this.hostElement.onchange){this.value=t.detail.value}}handleCurrencyDeletion(t){if(this.textSelectedForDeletion){this.textSelectedForDeletion=false;return}if(t.inputType!=="deleteContentBackward"&&t.inputType!=="deleteContentForward")return;const r=t.target;const e=r.selectionStart;const{formattedValue:a}=this.formattedValueObject;if(e===null)return;let i;switch(t.inputType){case"deleteContentBackward":const t=a.substring(0,e+1);const r=/[a-zA-Z0-9]$/.test(t);i={leftIndex:r?e:e-1,rightIndex:r?e+1:e,afterCursorOffset:0,newCursorOffset:1};break;case"deleteContentForward":const s=a.substring(e);const o=/^[a-zA-Z0-9]/.test(s);i={leftIndex:o?e:e+1,rightIndex:o?e+1:e+2,afterCursorOffset:1,newCursorOffset:0};break;default:return}const s=[a.substring(0,i.leftIndex),a.substring(i.rightIndex)].join("");const o=a.length-e-i.afterCursorOffset;const n=this.getFormattedValue(s,false).formattedValue;const p=Math.max(n.length-o+i.newCursorOffset,0);r.value=n;r.setSelectionRange(p,p);if(p===0){h((()=>r.setSelectionRange(p,p)))}}handleDataInput(t){if(this.maxlength===undefined||t.unformattedValue.length<=this.maxlength||t.unformattedValue.length<=this.formattedValueObject.unformattedValue.length){this.formattedValueObject=t}else if(this.maxlength){t=this.getFormattedValue(t.unformattedValue.substring(0,this.maxlength),false);this.formattedValueObject=t}this.handleValueAndCursor()}render(){return e("div",{key:"ab401e37133bd42fc82e643f1d85ec4e104d497f",class:this.wrapperClasses},e("div",{key:"63935b656d2d36c7c42ffd66d5b8662ac09bf906",class:"label-wrapper"},x(this),this.countDOM()),this.inputContainerDOM(),m(this))}countDOM(){if(!this.showCount)return;const{maxlength:t,formattedValueObject:r}=this;return e("div",{class:"count-tag"},r.unformattedValue.length,t&&`/${t}`)}inputContainerDOM(){const{hasInputLeftSlot:t,hasInputRightSlot:r}=this;return e("div",{class:"input-container",tabindex:-1,"test-id":"inputContainer"},e("div",{class:"input-icons-container-left"},this.formattedValueObject.prefix&&e("div",{class:"input-prefix"},this.formattedValueObject.prefix),this.computedIconLeft&&e("div",null,e("q2-icon",{type:this.computedIconLeft,class:this.computedClassForIconLeft})),t&&e("slot",{name:"input-left"}),this.showIconSeparator&&e("div",{class:"vertical-separator"}),this.hasError&&this.type==="currency"&&e("div",{"test-id":"divIconError",onClick:this.onRefocusInput},e("q2-icon",{type:"error",class:"icon-error","test-id":"iconError"}))),this.pseudo?this.pseudoInputDOM():this.standardInputDOM(),e("div",{class:"input-icons-container-right"},e("q2-btn",{class:this.clearClasses.join(" "),ariaLabel:u("tecton.element.input.clear",[this.label]),"test-id":"clearButton",onClick:this.onClearInput},e("q2-icon",{type:"close",class:"icon-clear"})),["password","text","ssn","tin"].includes(this.type)&&this.showVisibilityToggle&&e("q2-btn",{class:"btn-visibility-toggle","test-id":"toggleVisibilityButton",onClick:this.onToggleVisibility,label:u(this.visibilityToggleAriaLabel,{label:this.label}),"hide-label":true},this.visibilityToggleText),this.formattedValueObject.suffix&&e("span",{class:"input-suffix"},this.formattedValueObject.suffix),this.badgeValue&&e("q2-badge",{size:"large",theme:this.badgeTheme},this.badgeValue),this.hasError&&this.type!=="currency"&&e("div",{"test-id":"divIconError",onClick:this.onRefocusInput},e("q2-icon",{type:"error",class:"icon-error","test-id":"iconError"})),this.iconRight&&!this.formattedValueObject.suffix&&e("div",null,e("q2-icon",{type:this.iconRight,class:"icon-right"})),r&&e("slot",{name:"input-right"})))}standardInputDOM(){const{hasCustomDisplaySlot:t}=this;const r=["input-field"];const{ariaOwns:i,ariaHaspopup:s,ariaExpanded:o,ariaActivedescendant:n}=this.ariaAttributes;if(t)r.push("sr");return e(a,null,t&&e("div",{class:"custom-display-container"},e("slot",{name:"custom-display"})),e("input",{ref:t=>this.inputRef=t,class:r.join(" "),id:this.inputId,type:this.computedType,size:this.formattedValueObject.prefix?10:undefined,max:this.max,min:this.min,step:this.step,"aria-current":this.current||undefined,"aria-describedby":this.inputDescribedBy,"aria-required":`${!this.optional}`,"aria-invalid":`${this.hasError}`,"aria-owns":i,"aria-haspopup":s,"aria-expanded":o,"aria-activedescendant":n,autocomplete:this.computedAutocomplete,autocapitalize:this.autocapitalize,autocorrect:this.autocorrect==="on"?"on":"off",autofocus:this.autofocus,placeholder:this.placeholder&&u(this.placeholder)||undefined,role:this._role,"test-id":"inputField",readonly:this.readonly||this._preventEntry,disabled:!!this.disabled,onFocus:this.onInputFocus,onBlur:this.onInputBlur,onClick:this.onInputClick,onKeyDown:this.onInputKeydown,onInput:this.onInputInput,onPaste:this.onInputPaste,inputmode:this.inputMode,pattern:this.pattern||undefined}))}pseudoInputDOM(){const t=!this.value&&!!this.placeholder;const{ariaOwns:r,ariaHaspopup:a,ariaExpanded:i,ariaActivedescendant:s}=this.ariaAttributes;return e("div",{class:"pseudo-input-container"},e("button",{class:"input-field",type:"button",id:this.inputId,"aria-describedby":this.inputDescribedBy,"aria-invalid":`${this.hasError}`,"aria-owns":r,"aria-haspopup":a,"aria-expanded":i,"aria-activedescendant":s,role:this.role&&`${this.role}`||"textbox",disabled:!!this.disabled,"test-id":"q2InputInnerClearButton",onFocus:this.onInputFocus,onBlur:this.onInputBlur},e("div",{class:"custom-display-container"},e("slot",{name:"custom-display"},e("span",{class:t?"placeholder-text":""},t?this.placeholder:this.value)))))}placeCursorAtEnd(){const{inputField:t}=this;t.selectionStart=t.selectionEnd=t.value.length}calculateCursorPositionOnInput(){const t=this.inputField;const r=this.formattedValueObject.formattedValue.length;const e=t.value.length;const a=this.type==="currency"?r:0;return{startingPosition:t&&t.selectionStart||a,valueLength:r,previousValueLength:t&&e,hasSelection:false}}calculateCursorPositionOnFocus(){var t,r,e;const{inputField:a}=this;const i=(r=(t=a===null||a===void 0?void 0:a.value)===null||t===void 0?void 0:t.length)!==null&&r!==void 0?r:0;const s=(e=a===null||a===void 0?void 0:a.selectionStart)!==null&&e!==void 0?e:i;return{startingPosition:s,valueLength:i,previousValueLength:i,hasSelection:getSelection().toString().length>0}}setCursorPosition(t){if(this.canSetSelection&&!t.hasSelection){const r=this.inputField;const{valueLength:e,previousValueLength:a,startingPosition:i}=t;if(this.type==="currency"){if(a-e===1){r.setSelectionRange(i-1,i-1)}else{const t=a-e;r.setSelectionRange(i-t,i-t)}}if(this.type!=="currency"){const t=e-a;const s=i+(t>0?t:0);r.setSelectionRange(s,s)}}}get hostElement(){return i(this)}static get watchers(){return{clearable:["manageClearableResizeObserver"],ariaLabel:["ariaLabelObserver"],value:["valueObserver"],formattedValueObject:["formattedValueObjectObserver"],type:["typeObserver"],formatModifier:["formatModifierObserver"],hints:["hintsObserver"],errors:["errorsObserver"]}}};it.style=et;export{it as q2_input};
2
+ //# sourceMappingURL=p-2cbb1756.entry.js.map