ids-enterprise-wc 1.15.9-patch.3 → 1.15.9-patch.5

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 (745) hide show
  1. package/chunks/{ids-chunk-IXIJ5F4V-full.js → ids-chunk-25RRMSCK-full.js} +2 -2
  2. package/chunks/{ids-chunk-S6TUVYGS-full.js → ids-chunk-273NHJXW-full.js} +3 -3
  3. package/chunks/{ids-chunk-IKLVKRXA-full.js → ids-chunk-27USWNVC-full.js} +2 -2
  4. package/chunks/{ids-chunk-33HZ4QQP-full.js → ids-chunk-2FFMS4BJ-full.js} +3 -3
  5. package/chunks/{ids-chunk-FJ426IAI-full.js → ids-chunk-2L5OCXXN-full.js} +2 -2
  6. package/chunks/{ids-chunk-PUPMVP4G-full.js → ids-chunk-2PD5NRM6-full.js} +17 -2
  7. package/chunks/ids-chunk-2PD5NRM6-full.js.map +7 -0
  8. package/chunks/{ids-chunk-A7EHWJXP-full.js → ids-chunk-2PWGRJAO-full.js} +3 -3
  9. package/chunks/{ids-chunk-762VHHJK-full.js → ids-chunk-2Q6JXAZA-full.js} +5 -5
  10. package/chunks/{ids-chunk-N2I47FB4-full.js → ids-chunk-33WAOHDF-full.js} +3 -3
  11. package/chunks/{ids-chunk-BVDCUDIL-full.js → ids-chunk-3DESR2WX-full.js} +3 -3
  12. package/chunks/{ids-chunk-MRSI7V2A-full.js → ids-chunk-3KDZ5BB2-full.js} +3 -3
  13. package/chunks/{ids-chunk-T4EBK6MA-full.js → ids-chunk-3ODALUF7-full.js} +2 -2
  14. package/chunks/{ids-chunk-FKTPSZFZ-full.js → ids-chunk-3YQIAWWH-full.js} +4 -4
  15. package/chunks/{ids-chunk-PLPR5GKJ-full.js → ids-chunk-43FZEBRS-full.js} +4 -4
  16. package/chunks/{ids-chunk-7RGILH7X-full.js → ids-chunk-43XJCARO-full.js} +2 -2
  17. package/chunks/{ids-chunk-WEFW3UUH-full.js → ids-chunk-45IBQAGT-full.js} +2 -2
  18. package/chunks/{ids-chunk-BA4CXSVR-full.js → ids-chunk-46JSMYS6-full.js} +2 -2
  19. package/chunks/{ids-chunk-GOUMT663-full.js → ids-chunk-4AIWNOFW-full.js} +2 -2
  20. package/chunks/{ids-chunk-CBW2SB64-full.js → ids-chunk-4CR43LQ6-full.js} +3 -3
  21. package/chunks/{ids-chunk-NH555S2Q-full.js → ids-chunk-4H7FD7HD-full.js} +3 -3
  22. package/chunks/{ids-chunk-2C76IRIB-full.js → ids-chunk-4TMKTJBO-full.js} +3 -3
  23. package/chunks/{ids-chunk-YMIG7Z77-full.js → ids-chunk-4WM6MCKF-full.js} +2 -2
  24. package/chunks/{ids-chunk-QOLKI5WQ-full.js → ids-chunk-4ZQUHJAI-full.js} +3 -3
  25. package/chunks/{ids-chunk-27QUBXND-full.js → ids-chunk-5F6DIBXR-full.js} +2 -2
  26. package/chunks/{ids-chunk-MG2QEZQZ-full.js → ids-chunk-5G3D7MNU-full.js} +2 -2
  27. package/chunks/{ids-chunk-LBYTB2ER-full.js → ids-chunk-5SHP2LBI-full.js} +2 -2
  28. package/chunks/{ids-chunk-FKK6PR5M-full.js → ids-chunk-6EE4TSYU-full.js} +3 -3
  29. package/chunks/{ids-chunk-4PJMOTV4-full.js → ids-chunk-6F2BOA5W-full.js} +2 -2
  30. package/chunks/{ids-chunk-53KABCRA-full.js → ids-chunk-6PUNABRB-full.js} +3 -3
  31. package/chunks/{ids-chunk-4AJJN5JV-full.js → ids-chunk-6VLETYCE-full.js} +2 -2
  32. package/chunks/{ids-chunk-Q5TJLGPW-full.js → ids-chunk-72OAZJNF-full.js} +3 -3
  33. package/chunks/{ids-chunk-57NGX6S3-full.js → ids-chunk-7FBLSXJN-full.js} +2 -2
  34. package/chunks/{ids-chunk-6OQFDDN7-full.js → ids-chunk-7I2IIEWD-full.js} +3 -3
  35. package/chunks/{ids-chunk-TISUUBCX-full.js → ids-chunk-7IXJYUZT-full.js} +2 -2
  36. package/chunks/{ids-chunk-TRT2DIVS-full.js → ids-chunk-7URDZKCS-full.js} +3 -3
  37. package/chunks/{ids-chunk-DCF2P6AI-full.js → ids-chunk-AANY6YVE-full.js} +2 -2
  38. package/chunks/{ids-chunk-2WZ3QAXR-full.js → ids-chunk-AIJROIVF-full.js} +3 -3
  39. package/chunks/{ids-chunk-ZGD24T5H-full.js → ids-chunk-ANW7SKIO-full.js} +3 -3
  40. package/chunks/{ids-chunk-N4ONCRVF-full.js → ids-chunk-AT54WC4C-full.js} +2 -2
  41. package/chunks/{ids-chunk-FKUM3V2P-full.js → ids-chunk-B3LKCUUG-full.js} +3 -3
  42. package/chunks/{ids-chunk-SKJIMXJU-full.js → ids-chunk-BSYWBPYF-full.js} +2 -2
  43. package/chunks/{ids-chunk-CE3ZRA7E-full.js → ids-chunk-C26R35PY-full.js} +2 -2
  44. package/chunks/{ids-chunk-UBQPRE4M-full.js → ids-chunk-C3LKMRPW-full.js} +4 -4
  45. package/chunks/{ids-chunk-ZYSJZGMO-full.js → ids-chunk-C3V7NTXW-full.js} +2 -2
  46. package/chunks/{ids-chunk-ULHGUV77-full.js → ids-chunk-C5SKQHKU-full.js} +3 -3
  47. package/chunks/{ids-chunk-ASS3XIAM-full.js → ids-chunk-CEOIJ55M-full.js} +2 -2
  48. package/chunks/{ids-chunk-2BHWDRNC-full.js → ids-chunk-CVRPO2NQ-full.js} +2 -2
  49. package/chunks/{ids-chunk-FEXVS7OU-full.js → ids-chunk-DB5SZYVU-full.js} +6 -6
  50. package/chunks/{ids-chunk-E3MSLUD3-full.js → ids-chunk-DIOYPHHO-full.js} +3 -3
  51. package/chunks/{ids-chunk-B4AUSRXA-full.js → ids-chunk-DJKOR4UI-full.js} +2 -2
  52. package/chunks/{ids-chunk-7OQW74N3-full.js → ids-chunk-DQP6DVJQ-full.js} +5 -5
  53. package/chunks/{ids-chunk-L4WBT3JH-full.js → ids-chunk-DQU676TD-full.js} +2 -2
  54. package/chunks/{ids-chunk-CVVQ3AVV-full.js → ids-chunk-DSPHYYDU-full.js} +2 -2
  55. package/chunks/{ids-chunk-ZYPPKSJD-full.js → ids-chunk-DUPQZY3E-full.js} +2 -2
  56. package/chunks/{ids-chunk-VD57DS2I-full.js → ids-chunk-DW7GFEK7-full.js} +2 -2
  57. package/chunks/{ids-chunk-OUKRBJJQ-full.js → ids-chunk-E3EYXCNH-full.js} +2 -2
  58. package/chunks/{ids-chunk-CHJ6KJ7Q-full.js → ids-chunk-EDVQRRHK-full.js} +3 -3
  59. package/chunks/{ids-chunk-N7X6RV6U-full.js → ids-chunk-EHUFTHUE-full.js} +2 -2
  60. package/chunks/{ids-chunk-RS3IXCRP-full.js → ids-chunk-EJUX67VI-full.js} +2 -2
  61. package/chunks/{ids-chunk-GRFPSD5U-full.js → ids-chunk-EN2OYTTK-full.js} +2 -2
  62. package/chunks/{ids-chunk-FBSXIEML-full.js → ids-chunk-EWMDZACP-full.js} +5 -5
  63. package/chunks/{ids-chunk-FBSXIEML-full.js.map → ids-chunk-EWMDZACP-full.js.map} +2 -2
  64. package/chunks/{ids-chunk-LNKZVKYB-full.js → ids-chunk-EWUZBMYJ-full.js} +3 -3
  65. package/chunks/{ids-chunk-74IQSDTV-full.js → ids-chunk-EY3GP66M-full.js} +2 -2
  66. package/chunks/{ids-chunk-IRVUX37Q-full.js → ids-chunk-FERRLPWB-full.js} +2 -2
  67. package/chunks/{ids-chunk-JAAKZXSM-full.js → ids-chunk-FFJ4B7T2-full.js} +2 -2
  68. package/chunks/{ids-chunk-EGAGXAMH-full.js → ids-chunk-FFNMMG2J-full.js} +4 -4
  69. package/chunks/{ids-chunk-F7DISVS3-full.js → ids-chunk-FMNCRYYA-full.js} +2 -2
  70. package/chunks/{ids-chunk-AESZBMJC-full.js → ids-chunk-FOKR7HAI-full.js} +2 -2
  71. package/chunks/{ids-chunk-Z57D6YIW-full.js → ids-chunk-FW4DOBQU-full.js} +2 -2
  72. package/chunks/{ids-chunk-5O5M3P3V-full.js → ids-chunk-G57OOG3H-full.js} +3 -3
  73. package/chunks/{ids-chunk-JHTBYNRI-full.js → ids-chunk-G6RUQIR7-full.js} +2 -2
  74. package/chunks/{ids-chunk-32CIJZMM-full.js → ids-chunk-GBFKIATO-full.js} +6 -6
  75. package/chunks/{ids-chunk-QCVXS5IA-full.js → ids-chunk-GIBGRDF6-full.js} +4 -4
  76. package/chunks/{ids-chunk-A46Y26T3-full.js → ids-chunk-GTGLEDC2-full.js} +2 -2
  77. package/chunks/{ids-chunk-KBL3UP5C-full.js → ids-chunk-GVVP7LQ3-full.js} +3 -3
  78. package/chunks/{ids-chunk-TUTTQTPT-full.js → ids-chunk-H2LEFJY7-full.js} +18 -7
  79. package/chunks/{ids-chunk-TUTTQTPT-full.js.map → ids-chunk-H2LEFJY7-full.js.map} +2 -2
  80. package/chunks/{ids-chunk-EZD76AYH-full.js → ids-chunk-HAZNBMNY-full.js} +2 -2
  81. package/chunks/{ids-chunk-LH4RYRSV-full.js → ids-chunk-HEIH73MS-full.js} +3 -3
  82. package/chunks/{ids-chunk-7NILEKHS-full.js → ids-chunk-HGKIZXDQ-full.js} +49 -3
  83. package/chunks/ids-chunk-HGKIZXDQ-full.js.map +7 -0
  84. package/chunks/{ids-chunk-XWRFO6SR-full.js → ids-chunk-HHC6K5OW-full.js} +3 -3
  85. package/chunks/{ids-chunk-6U6EGRD2-full.js → ids-chunk-HKVSCK5P-full.js} +3 -3
  86. package/chunks/{ids-chunk-UALPAFOA-full.js → ids-chunk-HM2QRPLG-full.js} +2 -2
  87. package/chunks/{ids-chunk-QNWQB575-full.js → ids-chunk-HN3TES6H-full.js} +2 -2
  88. package/chunks/{ids-chunk-SEJB4BB5-full.js → ids-chunk-HW2PKJ3C-full.js} +2 -2
  89. package/chunks/{ids-chunk-Y6FPKWOS-full.js → ids-chunk-HYRXNPHU-full.js} +3 -3
  90. package/chunks/{ids-chunk-RUGV5KEH-full.js → ids-chunk-IQULHGMJ-full.js} +3 -3
  91. package/chunks/{ids-chunk-FEM5UYC2-full.js → ids-chunk-IS4JU2PL-full.js} +3 -3
  92. package/chunks/{ids-chunk-4CE67XBY-full.js → ids-chunk-IZAPGCMG-full.js} +3 -3
  93. package/chunks/{ids-chunk-ZHLPJWPG-full.js → ids-chunk-J4TEQA7D-full.js} +2 -2
  94. package/chunks/{ids-chunk-YBC2KLV3-full.js → ids-chunk-JFJBVCWC-full.js} +2 -2
  95. package/chunks/{ids-chunk-3BAOFQA5-full.js → ids-chunk-JIMIQBLD-full.js} +3 -3
  96. package/chunks/{ids-chunk-DRORXLFL-full.js → ids-chunk-JRDABGQT-full.js} +4 -4
  97. package/chunks/{ids-chunk-MY4CROHL-full.js → ids-chunk-KLVCC44N-full.js} +2 -2
  98. package/chunks/{ids-chunk-DR2HOPGB-full.js → ids-chunk-KNJSIOMM-full.js} +2 -2
  99. package/chunks/{ids-chunk-OONTE23M-full.js → ids-chunk-KTJELTJ7-full.js} +3 -3
  100. package/chunks/{ids-chunk-JZHX2Z4K-full.js → ids-chunk-KWNWPOZR-full.js} +2 -2
  101. package/chunks/{ids-chunk-AD4WG4JR-full.js → ids-chunk-L4TK2KKO-full.js} +2 -2
  102. package/chunks/{ids-chunk-YAVXM4L4-full.js → ids-chunk-LGTL7FTZ-full.js} +3 -3
  103. package/chunks/{ids-chunk-OCWPX7KF-full.js → ids-chunk-LGWDPTQS-full.js} +2 -2
  104. package/chunks/{ids-chunk-UJYGBMKN-full.js → ids-chunk-LKDR3JLR-full.js} +3 -3
  105. package/chunks/{ids-chunk-6FUANLGN-full.js → ids-chunk-LMUN7P76-full.js} +3 -3
  106. package/chunks/{ids-chunk-KAFBSRSW-full.js → ids-chunk-LUII2ZV5-full.js} +3 -3
  107. package/chunks/{ids-chunk-VK4SCEAG-full.js → ids-chunk-LWPAGEOG-full.js} +3 -3
  108. package/chunks/{ids-chunk-Z6VCVVKE-full.js → ids-chunk-LZU34NYE-full.js} +3 -3
  109. package/chunks/{ids-chunk-JDQ3YLZX-full.js → ids-chunk-M4KFUMJI-full.js} +2 -2
  110. package/chunks/{ids-chunk-CLQ4GQXN-full.js → ids-chunk-MDW67Z3D-full.js} +3 -3
  111. package/chunks/{ids-chunk-ZFFGGSGL-full.js → ids-chunk-MF5KPEBP-full.js} +3 -3
  112. package/chunks/{ids-chunk-MK3PJUPX-full.js → ids-chunk-MH2FGZWA-full.js} +2 -2
  113. package/chunks/{ids-chunk-PE5E5PG7-full.js → ids-chunk-MJFOIQDW-full.js} +2 -2
  114. package/chunks/{ids-chunk-GHKBGDSI-full.js → ids-chunk-MUFSPELP-full.js} +2 -2
  115. package/chunks/{ids-chunk-AZMGB3K6-full.js → ids-chunk-MUHJAJLL-full.js} +2 -2
  116. package/chunks/{ids-chunk-FZGISXIH-full.js → ids-chunk-MW57OW32-full.js} +2 -2
  117. package/chunks/{ids-chunk-6QTKQSJF-full.js → ids-chunk-N5DD7SQY-full.js} +2 -2
  118. package/chunks/{ids-chunk-AFQ35IPE-full.js → ids-chunk-N5FVOLA3-full.js} +2 -2
  119. package/chunks/{ids-chunk-6ROHNCND-full.js → ids-chunk-NCZQCFZV-full.js} +2 -2
  120. package/chunks/{ids-chunk-HMZS3IWM-full.js → ids-chunk-NESX4V7F-full.js} +8 -5
  121. package/chunks/ids-chunk-NESX4V7F-full.js.map +7 -0
  122. package/chunks/ids-chunk-NSCVZENR-full.js +65 -0
  123. package/chunks/ids-chunk-NSCVZENR-full.js.map +7 -0
  124. package/chunks/{ids-chunk-5HHTYMIG-full.js → ids-chunk-NWK2E7UY-full.js} +3 -3
  125. package/chunks/{ids-chunk-M5ZDYQZO-full.js → ids-chunk-NWYKW7KX-full.js} +2 -2
  126. package/chunks/{ids-chunk-LKEW46TQ-full.js → ids-chunk-O6DE7LH4-full.js} +2 -2
  127. package/chunks/{ids-chunk-I4YABQIG-full.js → ids-chunk-OC3TQJHF-full.js} +3 -3
  128. package/chunks/{ids-chunk-IQL2BQKM-full.js → ids-chunk-OFMCZ2NH-full.js} +2 -2
  129. package/chunks/{ids-chunk-GLMW7DMU-full.js → ids-chunk-OFS4VIIB-full.js} +8 -7
  130. package/chunks/{ids-chunk-GLMW7DMU-full.js.map → ids-chunk-OFS4VIIB-full.js.map} +2 -2
  131. package/chunks/{ids-chunk-E5HCZ2KG-full.js → ids-chunk-PCFVPLIA-full.js} +2 -2
  132. package/chunks/{ids-chunk-ZIB23J5V-full.js → ids-chunk-PEMXZF3X-full.js} +3 -3
  133. package/chunks/{ids-chunk-XXMP4ISV-full.js → ids-chunk-PLIXQIXO-full.js} +2 -2
  134. package/chunks/{ids-chunk-ABRKWU7O-full.js → ids-chunk-PMQWWRKS-full.js} +2 -2
  135. package/chunks/{ids-chunk-2QRKR2QB-full.js → ids-chunk-PVE4VGOJ-full.js} +2 -2
  136. package/chunks/{ids-chunk-H3YJOVK5-full.js → ids-chunk-Q5A2D5XH-full.js} +2 -2
  137. package/chunks/{ids-chunk-M75TGITM-full.js → ids-chunk-QFSVWAR3-full.js} +2 -2
  138. package/chunks/{ids-chunk-5ZXPNSAT-full.js → ids-chunk-QY5BYBZC-full.js} +2 -2
  139. package/chunks/{ids-chunk-G4ZHZ42Z-full.js → ids-chunk-QZILOIB3-full.js} +2 -2
  140. package/chunks/{ids-chunk-F3M3OIVM-full.js → ids-chunk-R4BNH5OB-full.js} +2 -2
  141. package/chunks/{ids-chunk-D5GE7LEE-full.js → ids-chunk-R5XYM5JI-full.js} +2 -2
  142. package/chunks/{ids-chunk-MBRDC2SV-full.js → ids-chunk-R73SYGDF-full.js} +2 -2
  143. package/chunks/{ids-chunk-OJSVIXP4-full.js → ids-chunk-REIBWCM6-full.js} +2 -2
  144. package/chunks/{ids-chunk-FZRZVA5C-full.js → ids-chunk-RK7Y7HRD-full.js} +2 -2
  145. package/chunks/{ids-chunk-EWSQRQZO-full.js → ids-chunk-RRT4LM45-full.js} +3 -3
  146. package/chunks/{ids-chunk-CBNQQDDM-full.js → ids-chunk-RVHXRE42-full.js} +3 -3
  147. package/chunks/{ids-chunk-5OM3KWJK-full.js → ids-chunk-RWBBMAR3-full.js} +2 -2
  148. package/chunks/{ids-chunk-QQ72JD62-full.js → ids-chunk-RZBNUTFK-full.js} +4 -4
  149. package/chunks/{ids-chunk-OJFOEXUW-full.js → ids-chunk-S4URXSWZ-full.js} +2 -2
  150. package/chunks/{ids-chunk-6M6HEYAD-full.js → ids-chunk-SKC57F2T-full.js} +3 -3
  151. package/chunks/{ids-chunk-E3OFMO6S-full.js → ids-chunk-SN6LW7KC-full.js} +2 -2
  152. package/chunks/{ids-chunk-JXMYDC4T-full.js → ids-chunk-SSVFWV2T-full.js} +2 -2
  153. package/chunks/{ids-chunk-VVSSYJHM-full.js → ids-chunk-T7I2DBGE-full.js} +3 -3
  154. package/chunks/{ids-chunk-GVDVGE7C-full.js → ids-chunk-T7JECBI5-full.js} +2 -2
  155. package/chunks/{ids-chunk-ERPRR4T4-full.js → ids-chunk-TM4HNEL4-full.js} +3 -3
  156. package/chunks/{ids-chunk-FZKUR2JI-full.js → ids-chunk-TMCYBFJ5-full.js} +2 -2
  157. package/chunks/{ids-chunk-MPGWC6ST-full.js → ids-chunk-TYX2OEND-full.js} +2 -2
  158. package/chunks/{ids-chunk-6UXPYDGW-full.js → ids-chunk-UDNQYHA5-full.js} +2 -2
  159. package/chunks/{ids-chunk-YNW5W3PP-full.js → ids-chunk-UEVOEMEM-full.js} +54 -24
  160. package/chunks/ids-chunk-UEVOEMEM-full.js.map +7 -0
  161. package/chunks/{ids-chunk-6S4QSV5N-full.js → ids-chunk-UFMEG2Z7-full.js} +3 -3
  162. package/chunks/{ids-chunk-SNXRRD5T-full.js → ids-chunk-USLG2PTM-full.js} +3 -3
  163. package/chunks/{ids-chunk-FJ2JUSFH-full.js → ids-chunk-V2IQA7L3-full.js} +3 -3
  164. package/chunks/{ids-chunk-QHINKXYB-full.js → ids-chunk-VATX5XAY-full.js} +2 -2
  165. package/chunks/{ids-chunk-7JRTJDFA-full.js → ids-chunk-VPNJ4GG2-full.js} +2 -2
  166. package/chunks/{ids-chunk-PHUC5SK7-full.js → ids-chunk-VULIZCJD-full.js} +5 -5
  167. package/chunks/{ids-chunk-KEQHJ5G3-full.js → ids-chunk-W5OKLYTI-full.js} +3 -3
  168. package/chunks/{ids-chunk-6JBLWV3W-full.js → ids-chunk-WKEWZVYT-full.js} +2 -2
  169. package/chunks/{ids-chunk-HS5ONR6J-full.js → ids-chunk-WNBRICEB-full.js} +2 -2
  170. package/chunks/{ids-chunk-QPTZRSVW-full.js → ids-chunk-WNG7OERZ-full.js} +2 -2
  171. package/chunks/{ids-chunk-3CLJE3UT-full.js → ids-chunk-WNNGZOIF-full.js} +2 -2
  172. package/chunks/{ids-chunk-4ARZ2AAM-full.js → ids-chunk-X6QSQFGR-full.js} +3 -3
  173. package/chunks/{ids-chunk-D6U4XWPR-full.js → ids-chunk-XLD6LQQW-full.js} +2 -2
  174. package/chunks/{ids-chunk-Z3M64LU2-full.js → ids-chunk-XMNEN2UX-full.js} +3 -3
  175. package/chunks/{ids-chunk-ABTOY23D-full.js → ids-chunk-YF3PJT6E-full.js} +3 -3
  176. package/chunks/{ids-chunk-TIM3LTRG-full.js → ids-chunk-YL4L6HJK-full.js} +2 -2
  177. package/chunks/{ids-chunk-D5WII5AE-full.js → ids-chunk-YR3BXJZD-full.js} +3 -3
  178. package/chunks/{ids-chunk-AHFLTQXW-full.js → ids-chunk-ZB5VJXMR-full.js} +3 -3
  179. package/chunks/{ids-chunk-G7ZSOBX3-full.js → ids-chunk-ZD6QL4TP-full.js} +2 -2
  180. package/chunks/{ids-chunk-SVCSD76X-full.js → ids-chunk-ZFEFQ7ON-full.js} +3 -3
  181. package/chunks/{ids-chunk-SRHJCZSW-full.js → ids-chunk-ZL274STH-full.js} +2 -2
  182. package/chunks/{ids-chunk-NQWBNWF3-full.js → ids-chunk-ZSW7GSJP-full.js} +2 -2
  183. package/components/ids-about/ids-about.d.ts +2 -2
  184. package/components/ids-about/ids-about.js +18 -17
  185. package/components/ids-accordion/ids-accordion-header.d.ts +18 -18
  186. package/components/ids-accordion/ids-accordion-header.js +4 -3
  187. package/components/ids-accordion/ids-accordion-panel.d.ts +20 -20
  188. package/components/ids-accordion/ids-accordion-panel.js +5 -4
  189. package/components/ids-accordion/ids-accordion-section.d.ts +18 -18
  190. package/components/ids-accordion/ids-accordion-section.js +4 -3
  191. package/components/ids-accordion/ids-accordion.css +156 -8
  192. package/components/ids-accordion/ids-accordion.d.ts +22 -22
  193. package/components/ids-accordion/ids-accordion.js +8 -7
  194. package/components/ids-action-panel/ids-action-panel.js +31 -30
  195. package/components/ids-action-sheet/ids-action-sheet.d.ts +15 -15
  196. package/components/ids-action-sheet/ids-action-sheet.js +25 -24
  197. package/components/ids-alert/ids-alert.d.ts +17 -17
  198. package/components/ids-alert/ids-alert.js +9 -8
  199. package/components/ids-app-menu/ids-app-menu-container.js +4 -3
  200. package/components/ids-app-menu/ids-app-menu.d.ts +2 -2
  201. package/components/ids-app-menu/ids-app-menu.js +36 -35
  202. package/components/ids-area-chart/ids-area-chart.js +13 -12
  203. package/components/ids-avatar/ids-avatar.d.ts +17 -17
  204. package/components/ids-avatar/ids-avatar.js +4 -3
  205. package/components/ids-axis-chart/ids-axis-chart.d.ts +23 -23
  206. package/components/ids-axis-chart/ids-axis-chart.js +11 -10
  207. package/components/ids-badge/ids-badge.d.ts +15 -15
  208. package/components/ids-badge/ids-badge.js +4 -3
  209. package/components/ids-bar-chart/ids-bar-chart.js +12 -11
  210. package/components/ids-block-grid/ids-block-grid-item.d.ts +19 -19
  211. package/components/ids-block-grid/ids-block-grid-item.js +10 -9
  212. package/components/ids-block-grid/ids-block-grid.d.ts +20 -20
  213. package/components/ids-block-grid/ids-block-grid.js +37 -36
  214. package/components/ids-box/ids-box.js +4 -3
  215. package/components/ids-breadcrumb/ids-breadcrumb.d.ts +15 -15
  216. package/components/ids-breadcrumb/ids-breadcrumb.js +27 -26
  217. package/components/ids-button/ids-button-group-section.d.ts +17 -17
  218. package/components/ids-button/ids-button-group-section.js +7 -6
  219. package/components/ids-button/ids-button-group.d.ts +17 -17
  220. package/components/ids-button/ids-button-group.js +5 -4
  221. package/components/ids-button/ids-button.d.ts +40 -40
  222. package/components/ids-button/ids-button.js +14 -13
  223. package/components/ids-calendar/ids-calendar-event.d.ts +17 -17
  224. package/components/ids-calendar/ids-calendar-event.js +5 -4
  225. package/components/ids-calendar/ids-calendar.css +265 -190
  226. package/components/ids-calendar/ids-calendar.d.ts +27 -27
  227. package/components/ids-calendar/ids-calendar.js +54 -53
  228. package/components/ids-card/ids-card-action.js +4 -3
  229. package/components/ids-card/ids-card.d.ts +39 -39
  230. package/components/ids-card/ids-card.js +12 -11
  231. package/components/ids-checkbox/ids-checkbox-group.d.ts +15 -15
  232. package/components/ids-checkbox/ids-checkbox-group.js +4 -3
  233. package/components/ids-checkbox/ids-checkbox.css +580 -7
  234. package/components/ids-checkbox/ids-checkbox.d.ts +32 -32
  235. package/components/ids-checkbox/ids-checkbox.js +9 -8
  236. package/components/ids-color/ids-color.d.ts +17 -17
  237. package/components/ids-color/ids-color.js +9 -8
  238. package/components/ids-color-picker/ids-color-picker.d.ts +30 -30
  239. package/components/ids-color-picker/ids-color-picker.js +24 -23
  240. package/components/ids-container/ids-container.d.ts +20 -20
  241. package/components/ids-container/ids-container.js +5 -4
  242. package/components/ids-counts/ids-counts.d.ts +15 -15
  243. package/components/ids-counts/ids-counts.js +10 -9
  244. package/components/ids-data-grid/ids-data-grid-cell.d.ts +15 -15
  245. package/components/ids-data-grid/ids-data-grid-cell.js +4 -3
  246. package/components/ids-data-grid/ids-data-grid-editors.js +52 -51
  247. package/components/ids-data-grid/ids-data-grid-empty-message.js +10 -9
  248. package/components/ids-data-grid/ids-data-grid-filter-manager.d.ts +36 -0
  249. package/components/ids-data-grid/ids-data-grid-filter-manager.js +12 -0
  250. package/components/ids-data-grid/ids-data-grid-filter-manager.js.map +7 -0
  251. package/components/ids-data-grid/ids-data-grid-filters.d.ts +6 -0
  252. package/components/ids-data-grid/ids-data-grid-filters.js +48 -47
  253. package/components/ids-data-grid/ids-data-grid-formatters.js +30 -29
  254. package/components/ids-data-grid/ids-data-grid-header.d.ts +15 -15
  255. package/components/ids-data-grid/ids-data-grid-header.js +26 -25
  256. package/components/ids-data-grid/ids-data-grid-row.js +5 -4
  257. package/components/ids-data-grid/ids-data-grid-save-settings-mixin.d.ts +17 -17
  258. package/components/ids-data-grid/ids-data-grid-search-mixin.d.ts +8 -8
  259. package/components/ids-data-grid/ids-data-grid-toolbar-mixin.d.ts +3 -3
  260. package/components/ids-data-grid/ids-data-grid-tooltip-mixin.d.ts +16 -16
  261. package/components/ids-data-grid/ids-data-grid-tooltip-mixin.js +7 -6
  262. package/components/ids-data-grid/ids-data-grid.d.ts +69 -68
  263. package/components/ids-data-grid/ids-data-grid.js +82 -81
  264. package/components/ids-data-label/ids-data-label.d.ts +17 -17
  265. package/components/ids-data-label/ids-data-label.js +5 -4
  266. package/components/ids-date-picker/ids-date-picker-popup.d.ts +9 -9
  267. package/components/ids-date-picker/ids-date-picker-popup.js +46 -45
  268. package/components/ids-date-picker/ids-date-picker.css +389 -31
  269. package/components/ids-date-picker/ids-date-picker.d.ts +46 -41
  270. package/components/ids-date-picker/ids-date-picker.js +47 -46
  271. package/components/ids-date-picker/ids-month-year-picklist.d.ts +21 -21
  272. package/components/ids-date-picker/ids-month-year-picklist.js +9 -8
  273. package/components/ids-draggable/ids-draggable.d.ts +15 -15
  274. package/components/ids-draggable/ids-draggable.js +4 -3
  275. package/components/ids-drawer/ids-drawer.d.ts +22 -22
  276. package/components/ids-drawer/ids-drawer.js +5 -4
  277. package/components/ids-dropdown/ids-dropdown-attributes-mixin.d.ts +2 -2
  278. package/components/ids-dropdown/ids-dropdown-list.d.ts +12 -12
  279. package/components/ids-dropdown/ids-dropdown-list.js +6 -5
  280. package/components/ids-dropdown/ids-dropdown.d.ts +45 -45
  281. package/components/ids-dropdown/ids-dropdown.js +26 -25
  282. package/components/ids-editor/ids-editor.d.ts +34 -34
  283. package/components/ids-editor/ids-editor.js +42 -41
  284. package/components/ids-empty-message/ids-empty-message.d.ts +15 -15
  285. package/components/ids-empty-message/ids-empty-message.js +10 -9
  286. package/components/ids-error-page/ids-error-page.js +20 -19
  287. package/components/ids-expandable-area/ids-expandable-area.d.ts +15 -15
  288. package/components/ids-expandable-area/ids-expandable-area.js +4 -3
  289. package/components/ids-fieldset/ids-fieldset.d.ts +15 -15
  290. package/components/ids-fieldset/ids-fieldset.js +4 -3
  291. package/components/ids-filter-field/ids-filter-field.d.ts +18 -18
  292. package/components/ids-filter-field/ids-filter-field.js +3 -2
  293. package/components/ids-filter-field/ids-filter-field.js.map +1 -1
  294. package/components/ids-form/ids-form.d.ts +18 -18
  295. package/components/ids-form/ids-form.js +4 -3
  296. package/components/ids-global/ids-global.d.ts +8 -0
  297. package/components/ids-global/ids-global.js +2 -1
  298. package/components/ids-header/ids-header.d.ts +17 -17
  299. package/components/ids-header/ids-header.js +4 -3
  300. package/components/ids-hidden/ids-hidden.js +4 -3
  301. package/components/ids-hierarchy/ids-hierarchy-item.d.ts +18 -18
  302. package/components/ids-hierarchy/ids-hierarchy-item.js +4 -3
  303. package/components/ids-hierarchy/ids-hierarchy-legend-item.d.ts +3 -3
  304. package/components/ids-hierarchy/ids-hierarchy-legend-item.js +4 -3
  305. package/components/ids-hierarchy/ids-hierarchy-legend.js +4 -3
  306. package/components/ids-hierarchy/ids-hierarchy.css +117 -14
  307. package/components/ids-hierarchy/ids-hierarchy.d.ts +15 -15
  308. package/components/ids-hierarchy/ids-hierarchy.js +7 -6
  309. package/components/ids-home-page/ids-home-page.d.ts +17 -17
  310. package/components/ids-home-page/ids-home-page.js +31 -30
  311. package/components/ids-hyperlink/ids-hyperlink.d.ts +33 -33
  312. package/components/ids-hyperlink/ids-hyperlink.js +8 -7
  313. package/components/ids-hyperlink/ids-link-list.js +4 -3
  314. package/components/ids-icon/ids-icon.d.ts +20 -20
  315. package/components/ids-icon/ids-icon.js +5 -4
  316. package/components/ids-image/ids-image.d.ts +15 -15
  317. package/components/ids-image/ids-image.js +10 -9
  318. package/components/ids-input/ids-autocomplete.d.ts +11 -11
  319. package/components/ids-input/ids-autocomplete.js +12 -11
  320. package/components/ids-input/ids-input.d.ts +71 -71
  321. package/components/ids-input/ids-input.js +21 -20
  322. package/components/ids-input-group/ids-input-group.d.ts +15 -15
  323. package/components/ids-input-group/ids-input-group.js +3 -2
  324. package/components/ids-input-group/ids-input-group.js.map +1 -1
  325. package/components/ids-kpi/ids-kpi.d.ts +17 -17
  326. package/components/ids-kpi/ids-kpi.js +8 -7
  327. package/components/ids-layout-flex/ids-layout-flex-item.js +4 -3
  328. package/components/ids-layout-flex/ids-layout-flex.css +69 -6
  329. package/components/ids-layout-flex/ids-layout-flex.js +5 -4
  330. package/components/ids-layout-flex/ids-scroll-container.js +4 -3
  331. package/components/ids-layout-grid/ids-layout-grid-cell.d.ts +15 -15
  332. package/components/ids-layout-grid/ids-layout-grid-cell.js +4 -3
  333. package/components/ids-layout-grid/ids-layout-grid.js +4 -3
  334. package/components/ids-line-chart/ids-line-chart.js +12 -11
  335. package/components/ids-list-box/ids-list-box-option.d.ts +17 -17
  336. package/components/ids-list-box/ids-list-box-option.js +11 -10
  337. package/components/ids-list-box/ids-list-box.js +12 -11
  338. package/components/ids-list-builder/ids-list-builder.js +47 -46
  339. package/components/ids-list-view/ids-list-view-group-header.js +4 -3
  340. package/components/ids-list-view/ids-list-view-item.d.ts +17 -17
  341. package/components/ids-list-view/ids-list-view-item.js +35 -34
  342. package/components/ids-list-view/ids-list-view-search-mixin.d.ts +7 -7
  343. package/components/ids-list-view/ids-list-view.css +112 -15
  344. package/components/ids-list-view/ids-list-view.d.ts +33 -33
  345. package/components/ids-list-view/ids-list-view.js +43 -42
  346. package/components/ids-loading-indicator/ids-loading-indicator.d.ts +15 -15
  347. package/components/ids-loading-indicator/ids-loading-indicator.js +5 -4
  348. package/components/ids-lookup/ids-lookup.d.ts +33 -33
  349. package/components/ids-lookup/ids-lookup.js +35 -34
  350. package/components/ids-masthead/ids-masthead.d.ts +17 -17
  351. package/components/ids-masthead/ids-masthead.js +30 -29
  352. package/components/ids-media-gallery/ids-media-gallery.d.ts +17 -17
  353. package/components/ids-media-gallery/ids-media-gallery.js +34 -33
  354. package/components/ids-media-gallery/ids-media-viewer.d.ts +17 -17
  355. package/components/ids-media-gallery/ids-media-viewer.js +11 -10
  356. package/components/ids-menu/ids-menu-group.d.ts +17 -17
  357. package/components/ids-menu/ids-menu-group.js +6 -5
  358. package/components/ids-menu/ids-menu-header.d.ts +15 -15
  359. package/components/ids-menu/ids-menu-header.js +4 -3
  360. package/components/ids-menu/ids-menu-item.d.ts +20 -20
  361. package/components/ids-menu/ids-menu-item.js +6 -5
  362. package/components/ids-menu/ids-menu.css +13 -3
  363. package/components/ids-menu/ids-menu.d.ts +17 -17
  364. package/components/ids-menu/ids-menu.js +10 -9
  365. package/components/ids-menu-button/ids-menu-button.js +25 -24
  366. package/components/ids-message/ids-message.js +18 -17
  367. package/components/ids-modal/ids-modal-button.js +15 -14
  368. package/components/ids-modal/ids-modal.d.ts +41 -41
  369. package/components/ids-modal/ids-modal.js +16 -15
  370. package/components/ids-modal/ids-overlay.d.ts +15 -15
  371. package/components/ids-modal/ids-overlay.js +4 -3
  372. package/components/ids-module-nav/ids-module-nav-bar.d.ts +10 -10
  373. package/components/ids-module-nav/ids-module-nav-bar.js +36 -35
  374. package/components/ids-module-nav/ids-module-nav-button.d.ts +6 -6
  375. package/components/ids-module-nav/ids-module-nav-button.js +15 -14
  376. package/components/ids-module-nav/ids-module-nav-content.d.ts +3 -3
  377. package/components/ids-module-nav/ids-module-nav-content.js +5 -4
  378. package/components/ids-module-nav/ids-module-nav-display-mode-mixin.d.ts +3 -3
  379. package/components/ids-module-nav/ids-module-nav-item.d.ts +16 -16
  380. package/components/ids-module-nav/ids-module-nav-item.js +5 -4
  381. package/components/ids-module-nav/ids-module-nav-settings.d.ts +6 -6
  382. package/components/ids-module-nav/ids-module-nav-settings.js +26 -25
  383. package/components/ids-module-nav/ids-module-nav-switcher.d.ts +21 -21
  384. package/components/ids-module-nav/ids-module-nav-switcher.js +4 -3
  385. package/components/ids-module-nav/ids-module-nav-text-display-mixin.d.ts +3 -3
  386. package/components/ids-module-nav/ids-module-nav-user.d.ts +26 -26
  387. package/components/ids-module-nav/ids-module-nav-user.js +4 -3
  388. package/components/ids-module-nav/ids-module-nav-user.js.map +1 -1
  389. package/components/ids-module-nav/ids-module-nav.d.ts +28 -28
  390. package/components/ids-module-nav/ids-module-nav.js +48 -47
  391. package/components/ids-month-view/ids-month-view-attribute-mixin.d.ts +5 -5
  392. package/components/ids-month-view/ids-month-view.d.ts +27 -27
  393. package/components/ids-month-view/ids-month-view.js +19 -18
  394. package/components/ids-multiselect/ids-multiselect.js +38 -37
  395. package/components/ids-notification-banner/ids-notification-banner-service.js +19 -18
  396. package/components/ids-notification-banner/ids-notification-banner-service.js.map +1 -1
  397. package/components/ids-notification-banner/ids-notification-banner.d.ts +17 -17
  398. package/components/ids-notification-banner/ids-notification-banner.js +19 -18
  399. package/components/ids-pager/ids-pager-button.d.ts +19 -19
  400. package/components/ids-pager/ids-pager-button.js +16 -15
  401. package/components/ids-pager/ids-pager-dropdown.d.ts +17 -17
  402. package/components/ids-pager/ids-pager-dropdown.js +25 -24
  403. package/components/ids-pager/ids-pager-input.d.ts +19 -19
  404. package/components/ids-pager/ids-pager-input.js +22 -21
  405. package/components/ids-pager/ids-pager-number-list.d.ts +17 -17
  406. package/components/ids-pager/ids-pager-number-list.js +16 -15
  407. package/components/ids-pager/ids-pager.css +3 -37
  408. package/components/ids-pager/ids-pager.d.ts +15 -15
  409. package/components/ids-pager/ids-pager.js +26 -25
  410. package/components/ids-pie-chart/ids-pie-chart.d.ts +23 -23
  411. package/components/ids-pie-chart/ids-pie-chart.js +11 -10
  412. package/components/ids-popup/ids-picker-popup.d.ts +30 -30
  413. package/components/ids-popup/ids-picker-popup.js +4 -3
  414. package/components/ids-popup/ids-popup.d.ts +25 -25
  415. package/components/ids-popup/ids-popup.js +6 -5
  416. package/components/ids-popup-menu/ids-popup-menu.d.ts +8 -8
  417. package/components/ids-popup-menu/ids-popup-menu.js +24 -23
  418. package/components/ids-process-indicator/ids-process-indicator-step.d.ts +15 -15
  419. package/components/ids-process-indicator/ids-process-indicator-step.js +4 -3
  420. package/components/ids-process-indicator/ids-process-indicator.d.ts +15 -15
  421. package/components/ids-process-indicator/ids-process-indicator.js +11 -10
  422. package/components/ids-progress-bar/ids-progress-bar.d.ts +15 -15
  423. package/components/ids-progress-bar/ids-progress-bar.js +4 -3
  424. package/components/ids-progress-chart/ids-progress-chart.d.ts +15 -15
  425. package/components/ids-progress-chart/ids-progress-chart.js +4 -3
  426. package/components/ids-radio/ids-radio-group.d.ts +27 -27
  427. package/components/ids-radio/ids-radio-group.js +9 -8
  428. package/components/ids-radio/ids-radio.d.ts +27 -27
  429. package/components/ids-radio/ids-radio.js +10 -9
  430. package/components/ids-rating/ids-rating.d.ts +17 -17
  431. package/components/ids-rating/ids-rating.js +4 -3
  432. package/components/ids-scroll-view/ids-scroll-view.d.ts +19 -19
  433. package/components/ids-scroll-view/ids-scroll-view.js +15 -14
  434. package/components/ids-search-field/ids-search-field.js +32 -31
  435. package/components/ids-segmented-control/ids-segmented-control.d.ts +19 -19
  436. package/components/ids-segmented-control/ids-segmented-control.js +5 -4
  437. package/components/ids-separator/ids-separator.d.ts +18 -18
  438. package/components/ids-separator/ids-separator.js +4 -3
  439. package/components/ids-skip-link/ids-skip-link.d.ts +15 -15
  440. package/components/ids-skip-link/ids-skip-link.js +9 -8
  441. package/components/ids-slider/ids-slider.d.ts +17 -17
  442. package/components/ids-slider/ids-slider.js +5 -4
  443. package/components/ids-spinbox/ids-spinbox.js +23 -22
  444. package/components/ids-splitter/ids-splitter-local-storage.js +6 -5
  445. package/components/ids-splitter/ids-splitter-pane.d.ts +17 -17
  446. package/components/ids-splitter/ids-splitter-pane.js +5 -4
  447. package/components/ids-splitter/ids-splitter.d.ts +17 -17
  448. package/components/ids-splitter/ids-splitter.js +8 -7
  449. package/components/ids-stats/ids-stats.d.ts +17 -17
  450. package/components/ids-stats/ids-stats.js +9 -8
  451. package/components/ids-step-chart/ids-step-chart.d.ts +15 -15
  452. package/components/ids-step-chart/ids-step-chart.js +11 -10
  453. package/components/ids-swaplist/ids-swaplist.d.ts +19 -19
  454. package/components/ids-swaplist/ids-swaplist.js +47 -46
  455. package/components/ids-swappable/ids-swappable-item.d.ts +29 -29
  456. package/components/ids-swappable/ids-swappable-item.js +5 -4
  457. package/components/ids-swappable/ids-swappable.css +84 -19
  458. package/components/ids-swappable/ids-swappable.d.ts +28 -28
  459. package/components/ids-swappable/ids-swappable.js +34 -33
  460. package/components/ids-swipe-action/ids-swipe-action.d.ts +15 -15
  461. package/components/ids-swipe-action/ids-swipe-action.js +4 -3
  462. package/components/ids-switch/ids-switch.d.ts +23 -23
  463. package/components/ids-switch/ids-switch.js +9 -8
  464. package/components/ids-tabs/ids-sub-tab.d.ts +20 -20
  465. package/components/ids-tabs/ids-sub-tab.js +18 -17
  466. package/components/ids-tabs/ids-sub-tabs.d.ts +17 -17
  467. package/components/ids-tabs/ids-sub-tabs.js +21 -20
  468. package/components/ids-tabs/ids-tab-content.d.ts +17 -17
  469. package/components/ids-tabs/ids-tab-content.js +4 -3
  470. package/components/ids-tabs/ids-tab-divider.js +4 -3
  471. package/components/ids-tabs/ids-tab-more.d.ts +2 -2
  472. package/components/ids-tabs/ids-tab-more.js +28 -27
  473. package/components/ids-tabs/ids-tab.d.ts +31 -31
  474. package/components/ids-tabs/ids-tab.js +19 -18
  475. package/components/ids-tabs/ids-tabs-context.d.ts +18 -18
  476. package/components/ids-tabs/ids-tabs-context.js +5 -4
  477. package/components/ids-tabs/ids-tabs.css +542 -11
  478. package/components/ids-tabs/ids-tabs.d.ts +25 -25
  479. package/components/ids-tabs/ids-tabs.js +33 -32
  480. package/components/ids-tag/ids-tag-list.d.ts +15 -15
  481. package/components/ids-tag/ids-tag-list.js +4 -3
  482. package/components/ids-tag/ids-tag.d.ts +19 -19
  483. package/components/ids-tag/ids-tag.js +5 -4
  484. package/components/ids-text/ids-text.d.ts +22 -22
  485. package/components/ids-text/ids-text.js +8 -7
  486. package/components/ids-textarea/ids-textarea.d.ts +43 -43
  487. package/components/ids-textarea/ids-textarea.js +23 -22
  488. package/components/ids-theme-switcher/ids-theme-switcher.d.ts +20 -20
  489. package/components/ids-theme-switcher/ids-theme-switcher.js +26 -25
  490. package/components/ids-time-picker/ids-time-picker-popup.d.ts +6 -6
  491. package/components/ids-time-picker/ids-time-picker-popup.js +28 -27
  492. package/components/ids-time-picker/ids-time-picker.css +49 -67
  493. package/components/ids-time-picker/ids-time-picker.d.ts +34 -34
  494. package/components/ids-time-picker/ids-time-picker.js +29 -28
  495. package/components/ids-toast/ids-toast-message.d.ts +17 -17
  496. package/components/ids-toast/ids-toast-message.js +19 -18
  497. package/components/ids-toast/ids-toast.d.ts +19 -19
  498. package/components/ids-toast/ids-toast.js +21 -20
  499. package/components/ids-toggle-button/ids-toggle-button.js +16 -15
  500. package/components/ids-toolbar/ids-toolbar-more-actions.d.ts +20 -20
  501. package/components/ids-toolbar/ids-toolbar-more-actions.js +27 -26
  502. package/components/ids-toolbar/ids-toolbar-section.d.ts +15 -15
  503. package/components/ids-toolbar/ids-toolbar-section.js +4 -3
  504. package/components/ids-toolbar/ids-toolbar.d.ts +17 -17
  505. package/components/ids-toolbar/ids-toolbar.js +28 -27
  506. package/components/ids-tooltip/ids-tooltip.d.ts +19 -19
  507. package/components/ids-tooltip/ids-tooltip.js +7 -6
  508. package/components/ids-tree/ids-tree-node.d.ts +15 -15
  509. package/components/ids-tree/ids-tree-node.js +11 -10
  510. package/components/ids-tree/ids-tree.d.ts +17 -17
  511. package/components/ids-tree/ids-tree.js +13 -12
  512. package/components/ids-treemap/ids-treemap.d.ts +17 -17
  513. package/components/ids-treemap/ids-treemap.js +5 -4
  514. package/components/ids-trigger-field/ids-trigger-button.d.ts +3 -3
  515. package/components/ids-trigger-field/ids-trigger-button.js +15 -14
  516. package/components/ids-trigger-field/ids-trigger-field.js +22 -21
  517. package/components/ids-upload/ids-upload.d.ts +34 -34
  518. package/components/ids-upload/ids-upload.js +23 -22
  519. package/components/ids-upload-advanced/ids-upload-advanced-file.d.ts +17 -17
  520. package/components/ids-upload-advanced/ids-upload-advanced-file.js +19 -18
  521. package/components/ids-upload-advanced/ids-upload-advanced.d.ts +17 -17
  522. package/components/ids-upload-advanced/ids-upload-advanced.js +33 -32
  523. package/components/ids-virtual-scroll/ids-virtual-scroll.d.ts +15 -15
  524. package/components/ids-virtual-scroll/ids-virtual-scroll.js +4 -3
  525. package/components/ids-week-view/ids-week-view.d.ts +22 -22
  526. package/components/ids-week-view/ids-week-view.js +48 -47
  527. package/components/ids-widget/ids-widget.d.ts +17 -17
  528. package/components/ids-widget/ids-widget.js +30 -29
  529. package/components/ids-wizard/ids-wizard-step.js +4 -3
  530. package/components/ids-wizard/ids-wizard.d.ts +17 -17
  531. package/components/ids-wizard/ids-wizard.js +10 -9
  532. package/core/ids-element.js +3 -2
  533. package/custom-elements.json +728 -540
  534. package/enterprise-wc.all.iife.js +177 -21
  535. package/enterprise-wc.all.iife.js.map +4 -4
  536. package/enterprise-wc.js +177 -176
  537. package/mixins/ids-attachment-mixin/ids-attachment-mixin.d.ts +3 -3
  538. package/mixins/ids-breakpoint-mixin/ids-breakpoint-mixin.d.ts +10 -10
  539. package/mixins/ids-calendar-events-mixin/ids-calendar-events-mixin.d.ts +3 -3
  540. package/mixins/ids-chart-legend-mixin/ids-chart-legend-mixin.d.ts +2 -2
  541. package/mixins/ids-chart-selection-mixin/ids-chart-selection-mixin.d.ts +4 -4
  542. package/mixins/ids-clearable-mixin/ids-clearable-mixin.d.ts +3 -3
  543. package/mixins/ids-color-variant-mixin/ids-color-variant-mixin.d.ts +3 -3
  544. package/mixins/ids-date-attribute-mixin/ids-date-attribute-mixin.d.ts +2 -2
  545. package/mixins/ids-dirty-tracker-mixin/ids-dirty-tracker-mixin.d.ts +5 -5
  546. package/mixins/ids-draggable-mixin/ids-draggable-mixin.d.ts +12 -12
  547. package/mixins/ids-events-mixin/ids-events-mixin.d.ts +15 -15
  548. package/mixins/ids-field-height-mixin/ids-field-height-mixin.d.ts +3 -3
  549. package/mixins/ids-focus-capture-mixin/ids-focus-capture-mixin.d.ts +9 -9
  550. package/mixins/ids-form-input-mixin/ids-form-input-mixin.d.ts +6 -6
  551. package/mixins/ids-hide-focus-mixin/ids-hide-focus-mixin.d.ts +10 -10
  552. package/mixins/ids-hitbox-mixin/ids-hitbox-mixin.d.ts +3 -3
  553. package/mixins/ids-keyboard-mixin/ids-keyboard-mixin.d.ts +2 -2
  554. package/mixins/ids-label-state-mixin/ids-label-state-mixin.d.ts +7 -7
  555. package/mixins/ids-label-state-mixin/ids-label-state-parent-mixin.d.ts +2 -2
  556. package/mixins/ids-loading-indicator-mixin/ids-loading-indicator-mixin.d.ts +5 -5
  557. package/mixins/ids-loading-indicator-mixin/ids-loading-indicator-mixin.js +5 -4
  558. package/mixins/ids-locale-mixin/ids-locale-mixin.d.ts +2 -2
  559. package/mixins/ids-locale-mixin/ids-locale-mixin.js +3 -2
  560. package/mixins/ids-mask-mixin/ids-mask-mixin.d.ts +2 -2
  561. package/mixins/ids-orientation-mixin/ids-orientation-mixin.d.ts +3 -3
  562. package/mixins/ids-pager-mixin/ids-pager-mixin.d.ts +5 -5
  563. package/mixins/ids-pager-mixin/ids-pager-mixin.js +35 -34
  564. package/mixins/ids-popup-interactions-mixin/ids-popup-interactions-mixin.d.ts +3 -3
  565. package/mixins/ids-popup-open-events-mixin/ids-popup-open-events-mixin.d.ts +5 -5
  566. package/mixins/ids-scroll-effect-mixin/ids-scroll-effect-mixin.d.ts +2 -2
  567. package/mixins/ids-selection-mixin/ids-selection-mixin.d.ts +2 -2
  568. package/mixins/ids-tooltip-mixin/ids-tooltip-mixin.d.ts +2 -2
  569. package/mixins/ids-tooltip-mixin/ids-tooltip-mixin.js +7 -6
  570. package/mixins/ids-validation-mixin/ids-validation-input-mixin.d.ts +2 -2
  571. package/mixins/ids-validation-mixin/ids-validation-mixin.d.ts +5 -5
  572. package/mixins/ids-xss-mixin/ids-xss-mixin.d.ts +2 -2
  573. package/package.json +1 -1
  574. package/utils/ids-excel-exporter/ids-excel-exporter.js +2 -2
  575. package/vscode.html-custom-data.json +1 -1
  576. package/chunks/ids-chunk-7NILEKHS-full.js.map +0 -7
  577. package/chunks/ids-chunk-HMZS3IWM-full.js.map +0 -7
  578. package/chunks/ids-chunk-PUPMVP4G-full.js.map +0 -7
  579. package/chunks/ids-chunk-YNW5W3PP-full.js.map +0 -7
  580. /package/chunks/{ids-chunk-IXIJ5F4V-full.js.map → ids-chunk-25RRMSCK-full.js.map} +0 -0
  581. /package/chunks/{ids-chunk-S6TUVYGS-full.js.map → ids-chunk-273NHJXW-full.js.map} +0 -0
  582. /package/chunks/{ids-chunk-IKLVKRXA-full.js.map → ids-chunk-27USWNVC-full.js.map} +0 -0
  583. /package/chunks/{ids-chunk-33HZ4QQP-full.js.map → ids-chunk-2FFMS4BJ-full.js.map} +0 -0
  584. /package/chunks/{ids-chunk-FJ426IAI-full.js.map → ids-chunk-2L5OCXXN-full.js.map} +0 -0
  585. /package/chunks/{ids-chunk-A7EHWJXP-full.js.map → ids-chunk-2PWGRJAO-full.js.map} +0 -0
  586. /package/chunks/{ids-chunk-762VHHJK-full.js.map → ids-chunk-2Q6JXAZA-full.js.map} +0 -0
  587. /package/chunks/{ids-chunk-N2I47FB4-full.js.map → ids-chunk-33WAOHDF-full.js.map} +0 -0
  588. /package/chunks/{ids-chunk-BVDCUDIL-full.js.map → ids-chunk-3DESR2WX-full.js.map} +0 -0
  589. /package/chunks/{ids-chunk-MRSI7V2A-full.js.map → ids-chunk-3KDZ5BB2-full.js.map} +0 -0
  590. /package/chunks/{ids-chunk-T4EBK6MA-full.js.map → ids-chunk-3ODALUF7-full.js.map} +0 -0
  591. /package/chunks/{ids-chunk-FKTPSZFZ-full.js.map → ids-chunk-3YQIAWWH-full.js.map} +0 -0
  592. /package/chunks/{ids-chunk-PLPR5GKJ-full.js.map → ids-chunk-43FZEBRS-full.js.map} +0 -0
  593. /package/chunks/{ids-chunk-7RGILH7X-full.js.map → ids-chunk-43XJCARO-full.js.map} +0 -0
  594. /package/chunks/{ids-chunk-WEFW3UUH-full.js.map → ids-chunk-45IBQAGT-full.js.map} +0 -0
  595. /package/chunks/{ids-chunk-BA4CXSVR-full.js.map → ids-chunk-46JSMYS6-full.js.map} +0 -0
  596. /package/chunks/{ids-chunk-GOUMT663-full.js.map → ids-chunk-4AIWNOFW-full.js.map} +0 -0
  597. /package/chunks/{ids-chunk-CBW2SB64-full.js.map → ids-chunk-4CR43LQ6-full.js.map} +0 -0
  598. /package/chunks/{ids-chunk-NH555S2Q-full.js.map → ids-chunk-4H7FD7HD-full.js.map} +0 -0
  599. /package/chunks/{ids-chunk-2C76IRIB-full.js.map → ids-chunk-4TMKTJBO-full.js.map} +0 -0
  600. /package/chunks/{ids-chunk-YMIG7Z77-full.js.map → ids-chunk-4WM6MCKF-full.js.map} +0 -0
  601. /package/chunks/{ids-chunk-QOLKI5WQ-full.js.map → ids-chunk-4ZQUHJAI-full.js.map} +0 -0
  602. /package/chunks/{ids-chunk-27QUBXND-full.js.map → ids-chunk-5F6DIBXR-full.js.map} +0 -0
  603. /package/chunks/{ids-chunk-MG2QEZQZ-full.js.map → ids-chunk-5G3D7MNU-full.js.map} +0 -0
  604. /package/chunks/{ids-chunk-LBYTB2ER-full.js.map → ids-chunk-5SHP2LBI-full.js.map} +0 -0
  605. /package/chunks/{ids-chunk-FKK6PR5M-full.js.map → ids-chunk-6EE4TSYU-full.js.map} +0 -0
  606. /package/chunks/{ids-chunk-4PJMOTV4-full.js.map → ids-chunk-6F2BOA5W-full.js.map} +0 -0
  607. /package/chunks/{ids-chunk-53KABCRA-full.js.map → ids-chunk-6PUNABRB-full.js.map} +0 -0
  608. /package/chunks/{ids-chunk-4AJJN5JV-full.js.map → ids-chunk-6VLETYCE-full.js.map} +0 -0
  609. /package/chunks/{ids-chunk-Q5TJLGPW-full.js.map → ids-chunk-72OAZJNF-full.js.map} +0 -0
  610. /package/chunks/{ids-chunk-57NGX6S3-full.js.map → ids-chunk-7FBLSXJN-full.js.map} +0 -0
  611. /package/chunks/{ids-chunk-6OQFDDN7-full.js.map → ids-chunk-7I2IIEWD-full.js.map} +0 -0
  612. /package/chunks/{ids-chunk-TISUUBCX-full.js.map → ids-chunk-7IXJYUZT-full.js.map} +0 -0
  613. /package/chunks/{ids-chunk-TRT2DIVS-full.js.map → ids-chunk-7URDZKCS-full.js.map} +0 -0
  614. /package/chunks/{ids-chunk-DCF2P6AI-full.js.map → ids-chunk-AANY6YVE-full.js.map} +0 -0
  615. /package/chunks/{ids-chunk-2WZ3QAXR-full.js.map → ids-chunk-AIJROIVF-full.js.map} +0 -0
  616. /package/chunks/{ids-chunk-ZGD24T5H-full.js.map → ids-chunk-ANW7SKIO-full.js.map} +0 -0
  617. /package/chunks/{ids-chunk-N4ONCRVF-full.js.map → ids-chunk-AT54WC4C-full.js.map} +0 -0
  618. /package/chunks/{ids-chunk-FKUM3V2P-full.js.map → ids-chunk-B3LKCUUG-full.js.map} +0 -0
  619. /package/chunks/{ids-chunk-SKJIMXJU-full.js.map → ids-chunk-BSYWBPYF-full.js.map} +0 -0
  620. /package/chunks/{ids-chunk-CE3ZRA7E-full.js.map → ids-chunk-C26R35PY-full.js.map} +0 -0
  621. /package/chunks/{ids-chunk-UBQPRE4M-full.js.map → ids-chunk-C3LKMRPW-full.js.map} +0 -0
  622. /package/chunks/{ids-chunk-ZYSJZGMO-full.js.map → ids-chunk-C3V7NTXW-full.js.map} +0 -0
  623. /package/chunks/{ids-chunk-ULHGUV77-full.js.map → ids-chunk-C5SKQHKU-full.js.map} +0 -0
  624. /package/chunks/{ids-chunk-ASS3XIAM-full.js.map → ids-chunk-CEOIJ55M-full.js.map} +0 -0
  625. /package/chunks/{ids-chunk-2BHWDRNC-full.js.map → ids-chunk-CVRPO2NQ-full.js.map} +0 -0
  626. /package/chunks/{ids-chunk-FEXVS7OU-full.js.map → ids-chunk-DB5SZYVU-full.js.map} +0 -0
  627. /package/chunks/{ids-chunk-E3MSLUD3-full.js.map → ids-chunk-DIOYPHHO-full.js.map} +0 -0
  628. /package/chunks/{ids-chunk-B4AUSRXA-full.js.map → ids-chunk-DJKOR4UI-full.js.map} +0 -0
  629. /package/chunks/{ids-chunk-7OQW74N3-full.js.map → ids-chunk-DQP6DVJQ-full.js.map} +0 -0
  630. /package/chunks/{ids-chunk-L4WBT3JH-full.js.map → ids-chunk-DQU676TD-full.js.map} +0 -0
  631. /package/chunks/{ids-chunk-CVVQ3AVV-full.js.map → ids-chunk-DSPHYYDU-full.js.map} +0 -0
  632. /package/chunks/{ids-chunk-ZYPPKSJD-full.js.map → ids-chunk-DUPQZY3E-full.js.map} +0 -0
  633. /package/chunks/{ids-chunk-VD57DS2I-full.js.map → ids-chunk-DW7GFEK7-full.js.map} +0 -0
  634. /package/chunks/{ids-chunk-OUKRBJJQ-full.js.map → ids-chunk-E3EYXCNH-full.js.map} +0 -0
  635. /package/chunks/{ids-chunk-CHJ6KJ7Q-full.js.map → ids-chunk-EDVQRRHK-full.js.map} +0 -0
  636. /package/chunks/{ids-chunk-N7X6RV6U-full.js.map → ids-chunk-EHUFTHUE-full.js.map} +0 -0
  637. /package/chunks/{ids-chunk-RS3IXCRP-full.js.map → ids-chunk-EJUX67VI-full.js.map} +0 -0
  638. /package/chunks/{ids-chunk-GRFPSD5U-full.js.map → ids-chunk-EN2OYTTK-full.js.map} +0 -0
  639. /package/chunks/{ids-chunk-LNKZVKYB-full.js.map → ids-chunk-EWUZBMYJ-full.js.map} +0 -0
  640. /package/chunks/{ids-chunk-74IQSDTV-full.js.map → ids-chunk-EY3GP66M-full.js.map} +0 -0
  641. /package/chunks/{ids-chunk-IRVUX37Q-full.js.map → ids-chunk-FERRLPWB-full.js.map} +0 -0
  642. /package/chunks/{ids-chunk-JAAKZXSM-full.js.map → ids-chunk-FFJ4B7T2-full.js.map} +0 -0
  643. /package/chunks/{ids-chunk-EGAGXAMH-full.js.map → ids-chunk-FFNMMG2J-full.js.map} +0 -0
  644. /package/chunks/{ids-chunk-F7DISVS3-full.js.map → ids-chunk-FMNCRYYA-full.js.map} +0 -0
  645. /package/chunks/{ids-chunk-AESZBMJC-full.js.map → ids-chunk-FOKR7HAI-full.js.map} +0 -0
  646. /package/chunks/{ids-chunk-Z57D6YIW-full.js.map → ids-chunk-FW4DOBQU-full.js.map} +0 -0
  647. /package/chunks/{ids-chunk-5O5M3P3V-full.js.map → ids-chunk-G57OOG3H-full.js.map} +0 -0
  648. /package/chunks/{ids-chunk-JHTBYNRI-full.js.map → ids-chunk-G6RUQIR7-full.js.map} +0 -0
  649. /package/chunks/{ids-chunk-32CIJZMM-full.js.map → ids-chunk-GBFKIATO-full.js.map} +0 -0
  650. /package/chunks/{ids-chunk-QCVXS5IA-full.js.map → ids-chunk-GIBGRDF6-full.js.map} +0 -0
  651. /package/chunks/{ids-chunk-A46Y26T3-full.js.map → ids-chunk-GTGLEDC2-full.js.map} +0 -0
  652. /package/chunks/{ids-chunk-KBL3UP5C-full.js.map → ids-chunk-GVVP7LQ3-full.js.map} +0 -0
  653. /package/chunks/{ids-chunk-EZD76AYH-full.js.map → ids-chunk-HAZNBMNY-full.js.map} +0 -0
  654. /package/chunks/{ids-chunk-LH4RYRSV-full.js.map → ids-chunk-HEIH73MS-full.js.map} +0 -0
  655. /package/chunks/{ids-chunk-XWRFO6SR-full.js.map → ids-chunk-HHC6K5OW-full.js.map} +0 -0
  656. /package/chunks/{ids-chunk-6U6EGRD2-full.js.map → ids-chunk-HKVSCK5P-full.js.map} +0 -0
  657. /package/chunks/{ids-chunk-UALPAFOA-full.js.map → ids-chunk-HM2QRPLG-full.js.map} +0 -0
  658. /package/chunks/{ids-chunk-QNWQB575-full.js.map → ids-chunk-HN3TES6H-full.js.map} +0 -0
  659. /package/chunks/{ids-chunk-SEJB4BB5-full.js.map → ids-chunk-HW2PKJ3C-full.js.map} +0 -0
  660. /package/chunks/{ids-chunk-Y6FPKWOS-full.js.map → ids-chunk-HYRXNPHU-full.js.map} +0 -0
  661. /package/chunks/{ids-chunk-RUGV5KEH-full.js.map → ids-chunk-IQULHGMJ-full.js.map} +0 -0
  662. /package/chunks/{ids-chunk-FEM5UYC2-full.js.map → ids-chunk-IS4JU2PL-full.js.map} +0 -0
  663. /package/chunks/{ids-chunk-4CE67XBY-full.js.map → ids-chunk-IZAPGCMG-full.js.map} +0 -0
  664. /package/chunks/{ids-chunk-ZHLPJWPG-full.js.map → ids-chunk-J4TEQA7D-full.js.map} +0 -0
  665. /package/chunks/{ids-chunk-YBC2KLV3-full.js.map → ids-chunk-JFJBVCWC-full.js.map} +0 -0
  666. /package/chunks/{ids-chunk-3BAOFQA5-full.js.map → ids-chunk-JIMIQBLD-full.js.map} +0 -0
  667. /package/chunks/{ids-chunk-DRORXLFL-full.js.map → ids-chunk-JRDABGQT-full.js.map} +0 -0
  668. /package/chunks/{ids-chunk-MY4CROHL-full.js.map → ids-chunk-KLVCC44N-full.js.map} +0 -0
  669. /package/chunks/{ids-chunk-DR2HOPGB-full.js.map → ids-chunk-KNJSIOMM-full.js.map} +0 -0
  670. /package/chunks/{ids-chunk-OONTE23M-full.js.map → ids-chunk-KTJELTJ7-full.js.map} +0 -0
  671. /package/chunks/{ids-chunk-JZHX2Z4K-full.js.map → ids-chunk-KWNWPOZR-full.js.map} +0 -0
  672. /package/chunks/{ids-chunk-AD4WG4JR-full.js.map → ids-chunk-L4TK2KKO-full.js.map} +0 -0
  673. /package/chunks/{ids-chunk-YAVXM4L4-full.js.map → ids-chunk-LGTL7FTZ-full.js.map} +0 -0
  674. /package/chunks/{ids-chunk-OCWPX7KF-full.js.map → ids-chunk-LGWDPTQS-full.js.map} +0 -0
  675. /package/chunks/{ids-chunk-UJYGBMKN-full.js.map → ids-chunk-LKDR3JLR-full.js.map} +0 -0
  676. /package/chunks/{ids-chunk-6FUANLGN-full.js.map → ids-chunk-LMUN7P76-full.js.map} +0 -0
  677. /package/chunks/{ids-chunk-KAFBSRSW-full.js.map → ids-chunk-LUII2ZV5-full.js.map} +0 -0
  678. /package/chunks/{ids-chunk-VK4SCEAG-full.js.map → ids-chunk-LWPAGEOG-full.js.map} +0 -0
  679. /package/chunks/{ids-chunk-Z6VCVVKE-full.js.map → ids-chunk-LZU34NYE-full.js.map} +0 -0
  680. /package/chunks/{ids-chunk-JDQ3YLZX-full.js.map → ids-chunk-M4KFUMJI-full.js.map} +0 -0
  681. /package/chunks/{ids-chunk-CLQ4GQXN-full.js.map → ids-chunk-MDW67Z3D-full.js.map} +0 -0
  682. /package/chunks/{ids-chunk-ZFFGGSGL-full.js.map → ids-chunk-MF5KPEBP-full.js.map} +0 -0
  683. /package/chunks/{ids-chunk-MK3PJUPX-full.js.map → ids-chunk-MH2FGZWA-full.js.map} +0 -0
  684. /package/chunks/{ids-chunk-PE5E5PG7-full.js.map → ids-chunk-MJFOIQDW-full.js.map} +0 -0
  685. /package/chunks/{ids-chunk-GHKBGDSI-full.js.map → ids-chunk-MUFSPELP-full.js.map} +0 -0
  686. /package/chunks/{ids-chunk-AZMGB3K6-full.js.map → ids-chunk-MUHJAJLL-full.js.map} +0 -0
  687. /package/chunks/{ids-chunk-FZGISXIH-full.js.map → ids-chunk-MW57OW32-full.js.map} +0 -0
  688. /package/chunks/{ids-chunk-6QTKQSJF-full.js.map → ids-chunk-N5DD7SQY-full.js.map} +0 -0
  689. /package/chunks/{ids-chunk-AFQ35IPE-full.js.map → ids-chunk-N5FVOLA3-full.js.map} +0 -0
  690. /package/chunks/{ids-chunk-6ROHNCND-full.js.map → ids-chunk-NCZQCFZV-full.js.map} +0 -0
  691. /package/chunks/{ids-chunk-5HHTYMIG-full.js.map → ids-chunk-NWK2E7UY-full.js.map} +0 -0
  692. /package/chunks/{ids-chunk-M5ZDYQZO-full.js.map → ids-chunk-NWYKW7KX-full.js.map} +0 -0
  693. /package/chunks/{ids-chunk-LKEW46TQ-full.js.map → ids-chunk-O6DE7LH4-full.js.map} +0 -0
  694. /package/chunks/{ids-chunk-I4YABQIG-full.js.map → ids-chunk-OC3TQJHF-full.js.map} +0 -0
  695. /package/chunks/{ids-chunk-IQL2BQKM-full.js.map → ids-chunk-OFMCZ2NH-full.js.map} +0 -0
  696. /package/chunks/{ids-chunk-E5HCZ2KG-full.js.map → ids-chunk-PCFVPLIA-full.js.map} +0 -0
  697. /package/chunks/{ids-chunk-ZIB23J5V-full.js.map → ids-chunk-PEMXZF3X-full.js.map} +0 -0
  698. /package/chunks/{ids-chunk-XXMP4ISV-full.js.map → ids-chunk-PLIXQIXO-full.js.map} +0 -0
  699. /package/chunks/{ids-chunk-ABRKWU7O-full.js.map → ids-chunk-PMQWWRKS-full.js.map} +0 -0
  700. /package/chunks/{ids-chunk-2QRKR2QB-full.js.map → ids-chunk-PVE4VGOJ-full.js.map} +0 -0
  701. /package/chunks/{ids-chunk-H3YJOVK5-full.js.map → ids-chunk-Q5A2D5XH-full.js.map} +0 -0
  702. /package/chunks/{ids-chunk-M75TGITM-full.js.map → ids-chunk-QFSVWAR3-full.js.map} +0 -0
  703. /package/chunks/{ids-chunk-5ZXPNSAT-full.js.map → ids-chunk-QY5BYBZC-full.js.map} +0 -0
  704. /package/chunks/{ids-chunk-G4ZHZ42Z-full.js.map → ids-chunk-QZILOIB3-full.js.map} +0 -0
  705. /package/chunks/{ids-chunk-F3M3OIVM-full.js.map → ids-chunk-R4BNH5OB-full.js.map} +0 -0
  706. /package/chunks/{ids-chunk-D5GE7LEE-full.js.map → ids-chunk-R5XYM5JI-full.js.map} +0 -0
  707. /package/chunks/{ids-chunk-MBRDC2SV-full.js.map → ids-chunk-R73SYGDF-full.js.map} +0 -0
  708. /package/chunks/{ids-chunk-OJSVIXP4-full.js.map → ids-chunk-REIBWCM6-full.js.map} +0 -0
  709. /package/chunks/{ids-chunk-FZRZVA5C-full.js.map → ids-chunk-RK7Y7HRD-full.js.map} +0 -0
  710. /package/chunks/{ids-chunk-EWSQRQZO-full.js.map → ids-chunk-RRT4LM45-full.js.map} +0 -0
  711. /package/chunks/{ids-chunk-CBNQQDDM-full.js.map → ids-chunk-RVHXRE42-full.js.map} +0 -0
  712. /package/chunks/{ids-chunk-5OM3KWJK-full.js.map → ids-chunk-RWBBMAR3-full.js.map} +0 -0
  713. /package/chunks/{ids-chunk-QQ72JD62-full.js.map → ids-chunk-RZBNUTFK-full.js.map} +0 -0
  714. /package/chunks/{ids-chunk-OJFOEXUW-full.js.map → ids-chunk-S4URXSWZ-full.js.map} +0 -0
  715. /package/chunks/{ids-chunk-6M6HEYAD-full.js.map → ids-chunk-SKC57F2T-full.js.map} +0 -0
  716. /package/chunks/{ids-chunk-E3OFMO6S-full.js.map → ids-chunk-SN6LW7KC-full.js.map} +0 -0
  717. /package/chunks/{ids-chunk-JXMYDC4T-full.js.map → ids-chunk-SSVFWV2T-full.js.map} +0 -0
  718. /package/chunks/{ids-chunk-VVSSYJHM-full.js.map → ids-chunk-T7I2DBGE-full.js.map} +0 -0
  719. /package/chunks/{ids-chunk-GVDVGE7C-full.js.map → ids-chunk-T7JECBI5-full.js.map} +0 -0
  720. /package/chunks/{ids-chunk-ERPRR4T4-full.js.map → ids-chunk-TM4HNEL4-full.js.map} +0 -0
  721. /package/chunks/{ids-chunk-FZKUR2JI-full.js.map → ids-chunk-TMCYBFJ5-full.js.map} +0 -0
  722. /package/chunks/{ids-chunk-MPGWC6ST-full.js.map → ids-chunk-TYX2OEND-full.js.map} +0 -0
  723. /package/chunks/{ids-chunk-6UXPYDGW-full.js.map → ids-chunk-UDNQYHA5-full.js.map} +0 -0
  724. /package/chunks/{ids-chunk-6S4QSV5N-full.js.map → ids-chunk-UFMEG2Z7-full.js.map} +0 -0
  725. /package/chunks/{ids-chunk-SNXRRD5T-full.js.map → ids-chunk-USLG2PTM-full.js.map} +0 -0
  726. /package/chunks/{ids-chunk-FJ2JUSFH-full.js.map → ids-chunk-V2IQA7L3-full.js.map} +0 -0
  727. /package/chunks/{ids-chunk-QHINKXYB-full.js.map → ids-chunk-VATX5XAY-full.js.map} +0 -0
  728. /package/chunks/{ids-chunk-7JRTJDFA-full.js.map → ids-chunk-VPNJ4GG2-full.js.map} +0 -0
  729. /package/chunks/{ids-chunk-PHUC5SK7-full.js.map → ids-chunk-VULIZCJD-full.js.map} +0 -0
  730. /package/chunks/{ids-chunk-KEQHJ5G3-full.js.map → ids-chunk-W5OKLYTI-full.js.map} +0 -0
  731. /package/chunks/{ids-chunk-6JBLWV3W-full.js.map → ids-chunk-WKEWZVYT-full.js.map} +0 -0
  732. /package/chunks/{ids-chunk-HS5ONR6J-full.js.map → ids-chunk-WNBRICEB-full.js.map} +0 -0
  733. /package/chunks/{ids-chunk-QPTZRSVW-full.js.map → ids-chunk-WNG7OERZ-full.js.map} +0 -0
  734. /package/chunks/{ids-chunk-3CLJE3UT-full.js.map → ids-chunk-WNNGZOIF-full.js.map} +0 -0
  735. /package/chunks/{ids-chunk-4ARZ2AAM-full.js.map → ids-chunk-X6QSQFGR-full.js.map} +0 -0
  736. /package/chunks/{ids-chunk-D6U4XWPR-full.js.map → ids-chunk-XLD6LQQW-full.js.map} +0 -0
  737. /package/chunks/{ids-chunk-Z3M64LU2-full.js.map → ids-chunk-XMNEN2UX-full.js.map} +0 -0
  738. /package/chunks/{ids-chunk-ABTOY23D-full.js.map → ids-chunk-YF3PJT6E-full.js.map} +0 -0
  739. /package/chunks/{ids-chunk-TIM3LTRG-full.js.map → ids-chunk-YL4L6HJK-full.js.map} +0 -0
  740. /package/chunks/{ids-chunk-D5WII5AE-full.js.map → ids-chunk-YR3BXJZD-full.js.map} +0 -0
  741. /package/chunks/{ids-chunk-AHFLTQXW-full.js.map → ids-chunk-ZB5VJXMR-full.js.map} +0 -0
  742. /package/chunks/{ids-chunk-G7ZSOBX3-full.js.map → ids-chunk-ZD6QL4TP-full.js.map} +0 -0
  743. /package/chunks/{ids-chunk-SVCSD76X-full.js.map → ids-chunk-ZFEFQ7ON-full.js.map} +0 -0
  744. /package/chunks/{ids-chunk-SRHJCZSW-full.js.map → ids-chunk-ZL274STH-full.js.map} +0 -0
  745. /package/chunks/{ids-chunk-NQWBNWF3-full.js.map → ids-chunk-ZSW7GSJP-full.js.map} +0 -0
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/components/ids-data-grid/ids-data-grid-filters.ts"],
4
- "sourcesContent": ["import { attributes } from '../../core/ids-attributes';\nimport { hasClass, getClosestContainerNode, getClosest } from '../../utils/ids-dom-utils/ids-dom-utils';\nimport { escapeHTML } from '../../utils/ids-xss-utils/ids-xss-utils';\nimport type { IdsDataGridColumn } from './ids-data-grid-column';\nimport IdsDataGridCell from './ids-data-grid-cell';\nimport '../ids-menu-button/ids-menu-button';\nimport '../ids-popup-menu/ids-popup-menu';\nimport '../ids-popup/ids-popup';\nimport '../ids-menu/ids-menu';\nimport '../ids-menu/ids-menu-item';\nimport '../ids-input/ids-input';\nimport '../ids-dropdown/ids-dropdown';\nimport '../ids-dropdown/ids-dropdown-list';\nimport '../ids-icon/ids-icon';\nimport '../ids-trigger-field/ids-trigger-button';\nimport '../ids-trigger-field/ids-trigger-field';\nimport '../ids-date-picker/ids-date-picker-popup';\nimport '../ids-time-picker/ids-time-picker-popup';\n\nimport type IdsDatePickerPopup from '../ids-date-picker/ids-date-picker-popup';\nimport type IdsMenuItem from '../ids-menu/ids-menu-item';\nimport type IdsTriggerField from '../ids-trigger-field/ids-trigger-field';\nimport type IdsMenuButton from '../ids-menu-button/ids-menu-button';\nimport type IdsPopupMenu from '../ids-popup-menu/ids-popup-menu';\n\nexport interface IdsDataGridFilterConditions {\n /** The filter element */\n filterElem?: any;\n /** The id of the column */\n columnId?: string;\n /** The value filter */\n value?: string;\n /** The filter operator */\n operator?: 'equals' | 'does-not-equal' | 'contains' | 'does-not-contain' | 'end-with' | 'start-with' | 'does-not-end-with' | 'does-not-start-with' | 'is-empty' | 'is-not-empty' | 'in-range' | 'less-than' | 'less-equals' | 'greater-than' | 'greater-equals' | 'selected' | 'not-selected' | 'selected-notselected' | 'earlier-than' | 'earlier-equals' | 'later-than' | 'later-equals';\n}\ninterface IdsDataGridFilterOperator {\n value: string;\n label: string;\n icon: string;\n selected?: boolean;\n}\n\n/**\n * IDS Data Grid Filters\n * @type {object}\n */\nexport default class IdsDataGridFilters {\n constructor(root: any) {\n this.root = root;\n }\n\n root: any;\n\n /**\n * Filter defaults.\n * @type {object}\n */\n DEFAULTS = {\n disableClientFilter: false,\n filterable: true,\n filterWhenTyping: true,\n filterRowDisabled: false\n };\n\n /**\n * Saved list of conditions to use with filter rerender.\n * @private\n * @type {Array<IdsDataGridFilterConditions>}\n */\n #conditions: any = [];\n\n /**\n * Initial values to use reset filter.\n * @private\n * @type {object}\n */\n #initial: any = {};\n\n /**\n * Hold filter in-process state.\n * @private\n * @type {boolean}\n */\n filterIsProcessing = false;\n\n /**\n * Focused element use with rerender filter.\n * @private\n * @type {HTMLElement|null}\n */\n focused: any;\n\n /**\n * Suppress filtered event\n * @private\n * @type {boolean}\n */\n #suppressFilteredEvent = false;\n\n /**\n * Text filter markup.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n text(column: IdsDataGridColumn) {\n return this.#btnAndInputTemplate('text', column);\n }\n\n /**\n * Integer filter markup.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n integer(column: IdsDataGridColumn) {\n return this.#btnAndInputTemplate('integer', column);\n }\n\n /**\n * Decimal filter markup.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n decimal(column: IdsDataGridColumn) {\n return this.#btnAndInputTemplate('decimal', column);\n }\n\n /**\n * Contents filter markup.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n contents(column: IdsDataGridColumn) {\n return this.#dropdownTemplate('contents', column);\n }\n\n /**\n * Dropdown filter markup.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n dropdown(column: IdsDataGridColumn) {\n return this.#dropdownTemplate('dropdown', column);\n }\n\n /**\n * Checkbox filter markup.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n checkbox(column: IdsDataGridColumn) {\n return this.#filterButtonTemplate('checkbox', column);\n }\n\n /**\n * Date filter markup.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n date(column: IdsDataGridColumn) {\n const TYPE = 'date';\n const id = `${this.#id(column)}-${TYPE}`;\n const opt = column.filterOptions || {};\n const disabled = opt.disabled ? ' disabled' : '';\n const format = opt.format ? ` format=\"${opt.format}\"` : '';\n const firstDayOfWeek = opt.firstDayOfWeek ? ` first-day-of-week=\"${opt.firstDayOfWeek}\"` : '';\n const showCancel = opt.showCancel ? ` show-cancel=\"${!!opt.showCancel}\"` : '';\n const showClear = opt.showClear ? ` show-clear=\"${!!opt.showClear}\"` : '';\n const showToday = opt.showToday ? ` show-today=\"${!!opt.showToday}\"` : '';\n const showPicklistWeek = opt.showPicklistWeek ? ` show-picklist-week=\"${!!opt.showPicklistWeek}\"` : '';\n const showPicklistMonth = opt.showPicklistMonth ? ` show-picklist-month=\"${!!opt.showPicklistMonth}\"` : '';\n const showPicklistYear = opt.showPicklistYear ? ` show-picklist-year=\"${!!opt.showPicklistYear}\"` : '';\n const showWeekNumbers = opt.showWeekNumbers ? ` show-week-numbers=\"${!!opt.showWeekNumbers}\"` : '';\n const useCurrentTime = opt.useCurrentTime ? ` use-current-time=\"${!!opt.useCurrentTime}\"` : '';\n const useRange = opt.useRange ? ` use-range=\"${!!opt.useRange}\"` : '';\n const minuteInterval = opt.minuteInterval ? ` minute-interval=\"${opt.minuteInterval}\"` : '';\n const secondInterval = opt.secondInterval ? ` second-interval=\"${opt.secondInterval}\"` : '';\n\n const hasTime = /[Hhmst]/.test(opt.format || '');\n const showApply = opt.showApply || hasTime ? ` show-apply=\"${!!opt.showApply || hasTime}\"` : '';\n\n const filtered = this.#conditions.filter((c: IdsDataGridFilterConditions) => c.columnId === column.id);\n let value = (filtered[0] as any)?.value ?? null;\n this.#initial[column.id] = this.#initial[column.id] || {};\n if (!this.#initial[column.id].datePicker) this.#initial[column.id].datePicker = { value };\n value = value ? ` value=\"${value}\"` : '';\n\n const filterButton = `${this.#filterButtonTemplate(TYPE, column)}`;\n const trigger = `${this.#triggerFieldTemplate(TYPE, column, 'calendar', 'DatePickerTriggerButton')}`;\n\n const popup = `<ids-date-picker-popup\n attachment=\".ids-data-grid-wrapper\"\n data-filter-type=\"${TYPE}\"\n trigger-type=\"click\"\n id=\"popup-${id}\"\n no-margins\n compact=\"true\"\n ${format}\n ${firstDayOfWeek}\n ${showToday}${showWeekNumbers}${showClear}${showCancel}${showApply}\n ${showPicklistWeek}${showPicklistMonth}${showPicklistYear}\n ${useCurrentTime}${useRange}${minuteInterval}${secondInterval}\n ${value}${disabled}></ids-date-picker-popup>`;\n\n const columnAlign = column.filterAlign ?? column.align;\n if (columnAlign === 'right') return `${trigger}${filterButton}${popup}`;\n return `${filterButton}${trigger}${popup}`;\n }\n\n /**\n * Time filter markup.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n time(column: IdsDataGridColumn) {\n const TYPE = 'time';\n const id = `${this.#id(column)}-${TYPE}`;\n const opt = column.filterOptions || {};\n const label = opt.label || 'Filter time picker';\n const format = opt.format ? ` format=\"${opt.format}\"` : '';\n const placeholder = opt.placeholder ? ` placeholder=\"${opt.placeholder}\"` : '';\n const minuteInterval = opt.minuteInterval ? ` minute-interval=\"${opt.minuteInterval}\"` : '';\n const secondInterval = opt.secondInterval ? ` second-interval=\"${opt.secondInterval}\"` : '';\n const autoselect = opt.autoselect ? ' autoselect' : '';\n const autoupdate = opt.autoupdate ? ' autoupdate' : '';\n const disabled = opt.disabled ? ' disabled' : '';\n const readonly = opt.readonly ? ' readonly' : '';\n\n const filtered = this.#conditions.filter((c: IdsDataGridFilterConditions) => c.columnId === column.id);\n let value = (filtered[0] as any)?.value ?? null;\n this.#initial[column.id] = this.#initial[column.id] || {};\n if (!this.#initial[column.id].timePicker) this.#initial[column.id].timePicker = { value };\n value = value ? ` value=\"${value}\"` : '';\n\n const filterButton = `${this.#filterButtonTemplate(TYPE, column)}`;\n const trigger = `${this.#triggerFieldTemplate(TYPE, column, 'clock', 'TimePickerTriggerButton')}`;\n const popup = `<ids-time-picker-popup\n attachment=\".ids-data-grid-wrapper\"\n trigger-type=\"click\"\n color-variant=\"${!this.root.listStyle ? 'alternate-formatter' : 'alternate-list-formatter'}\"\n data-filter-type=\"${TYPE}\"\n size=\"${opt.size || 'full'}\"\n label=\"${label}\"\n label-state=\"collapsed\"\n id=\"${id}\"\n no-margins\n compact\n ${format}${placeholder}${minuteInterval}${secondInterval}\n ${autoselect}${autoupdate}${disabled}${readonly}${value}\n ></ids-time-picker-popup>`;\n\n if (column?.align === 'right') return `${trigger}${filterButton}${popup}`;\n return `${filterButton}${trigger}${popup}`;\n }\n\n /**\n * Get filter wrapper element by given column id\n * @param {string} columnId The column id\n * @returns {HTMLElement|undefined} The filter wrapper element\n */\n filterWrapperById(columnId: string | undefined) {\n return this.root.shadowRoot.querySelector(`.ids-data-grid-header-cell[column-id=\"${columnId}\"]\n .ids-data-grid-header-cell-filter-wrapper`);\n }\n\n /**\n * Returns markup for a header cell filter in data grid.\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The resulting template\n */\n filterTemplate(column: IdsDataGridColumn) {\n const slottedEl = this.root.querySelector(`[slot=\"filter-${column.id}\"]`);\n let html: any = '';\n if (slottedEl) {\n html = `<slot name=\"filter-${column.id}\"></slot>`;\n } else if (typeof column.filterType === 'function') {\n html = column.filterType.apply(this, [column]);\n }\n if (html !== '') {\n let cssClass = 'ids-data-grid-header-cell-filter-wrapper';\n cssClass += !this.root.filterable ? ' hidden' : '';\n cssClass += column.filterOptions?.disabled ? ' disabled' : '';\n html = `<span class=\"${cssClass}\">${html}</span>`;\n }\n return html;\n }\n\n /**\n * Set datepicker type to range or single date.\n * @private\n * @param {object} datePicker datepicker element.\n * @param {string} operator filter type.\n * @returns {void}\n */\n #setDatePickerValue(datePicker: IdsTriggerField, operator?: string): void {\n if (datePicker) {\n const popupId = datePicker.getAttribute('id')?.replace('field-', 'popup-');\n const popupEl: IdsDatePickerPopup = this.root.wrapper.querySelector(`#${popupId}`)!;\n if (popupEl) {\n if (operator === 'in-range') {\n popupEl.useRange = true;\n } else {\n let startDateValue = datePicker.value;\n if (popupEl.rangeSettings && datePicker.value) {\n startDateValue = datePicker.value.split(popupEl.rangeSettings.separator)[0];\n popupEl.resetRangeSettings();\n }\n popupEl.useRange = false;\n popupEl.value = startDateValue;\n }\n }\n }\n }\n\n /**\n * Reset all filters as initial state.\n * @returns {void}\n */\n resetFilters() {\n this.filterNodes?.forEach((n: any) => {\n const slot = n.querySelector('slot[name^=\"filter-\"]');\n const node = slot ? slot.assignedElements()[0] : n;\n if (node) {\n const headerElem = n.closest('.ids-data-grid-header-cell');\n const columnData = this.root.columnDataByHeaderElem(headerElem);\n const initial = this.#initial[columnData.id];\n\n const input = node.querySelector('ids-input');\n const dropdown = node.querySelector('ids-dropdown');\n const triggerField = node.querySelector('ids-trigger-field');\n const timePicker = node.querySelector('ids-time-picker');\n const btn = node.querySelector('ids-menu-button') as IdsMenuButton | null;\n\n if (input) input.value = initial?.input?.value || '';\n if (dropdown) dropdown.value = initial?.dropdown?.value || '';\n if (triggerField) triggerField.value = initial?.triggerField?.value || '';\n if (timePicker) timePicker.value = initial?.timePicker?.value || '';\n if (btn) {\n const menuEl: IdsPopupMenu | null = btn.menuEl;\n const initialBtnValue = initial?.btn?.value;\n let item;\n\n if (menuEl) {\n // Reset filter from popup menu selected states\n item = menuEl.items.filter((itm: any) => itm.value === initialBtnValue)[0] ?? menuEl.items[0];\n menuEl.selectItem(item);\n } else if (columnData.filterType?.name) {\n // If popup menu hasn't been rendered yet, reset filter from column configuration\n const operators = this.#operators(columnData.filterType.name, columnData);\n item = operators.filter((itm: any) => itm.value === initialBtnValue)[0] ?? operators[0];\n if (item) {\n btn.setAttribute(attributes.ICON, item.icon);\n btn.setAttribute(attributes.VALUE, item.value);\n btn.updateBtnText(item.label);\n }\n }\n\n if (triggerField && item) this.#setDatePickerValue(triggerField, item.value);\n }\n }\n });\n }\n\n /**\n * Set filter conditions on the UI Only.\n * @param {Array<IdsDataGridFilterConditions>} conditions An array of objects with the filter conditions.\n * @returns {Array<object>} An array of currently showing filter conditions.\n */\n setFilterConditions(conditions: Array<IdsDataGridFilterConditions>) {\n this.#suppressFilteredEvent = true;\n this.resetFilters();\n const toBeRemoved: any = [];\n conditions.forEach((condition, i) => {\n const headerFilterWrapper = this.filterWrapperById(condition.columnId);\n if (!headerFilterWrapper || hasClass(headerFilterWrapper, 'disabled') || hasClass(headerFilterWrapper, 'readonly')) return;\n\n const headerSlot = headerFilterWrapper.querySelector('slot[name^=\"filter-\"]');\n const headerRoot = headerSlot ? headerSlot.assignedElements()[0] : headerFilterWrapper;\n if (headerRoot) {\n const input = headerRoot.querySelector('ids-input');\n const button = headerRoot.querySelector('ids-menu-button') as IdsMenuButton | null;\n const dropdown = headerRoot.querySelector('ids-dropdown');\n const triggerField = headerRoot.querySelector('ids-trigger-field');\n const timePicker = headerRoot.querySelector('ids-time-picker');\n const headerCell = headerRoot.closest('.ids-data-grid-header-cell');\n const columnData = this.root.columnDataByHeaderElem(headerCell);\n\n const conditionValue = condition.value || '';\n if (input) input.value = conditionValue;\n if (triggerField) triggerField.value = conditionValue;\n if (timePicker) timePicker.value = conditionValue;\n if (dropdown) {\n dropdown.value = conditionValue;\n if (dropdown.value === this.#dropdownNotFilterItem(columnData).value) toBeRemoved.push(i);\n }\n if (timePicker && !columnData.formatOptions?.dateFormat && !columnData.formatOptions?.timeStyle) {\n if (!columnData.formatOptions) columnData.formatOptions = {};\n columnData.formatOptions.dateFormat = timePicker.format;\n columnData.formatOptions.timeStyle = 'short';\n }\n if (button) {\n const menuEl = button.menuEl;\n const conditionOperator = condition.operator;\n\n if (menuEl) {\n // If Popup Menu rendered, get selected values from it\n const item = menuEl.items.filter((itm: any) => itm.value === conditionOperator)[0] ?? menuEl.items[0];\n if (item) button.menuEl.selectItem(item);\n } else if (columnData.filterType?.name) {\n // If Popup Menu not rendered, get operator from column data and update menu button\n const operators = this.#operators(columnData.filterType.name, columnData);\n const item = operators.filter((itm: any) => itm.value === conditionOperator)[0] ?? operators[0];\n if (item) {\n button.setAttribute(attributes.ICON, item.icon);\n button.setAttribute(attributes.VALUE, item.value);\n button.updateBtnText(item.label);\n }\n }\n }\n if (!condition.filterElem) condition.filterElem = timePicker || triggerField || dropdown || input;\n this.#setDatePickerValue(triggerField, condition.operator);\n }\n });\n if (toBeRemoved.length) conditions = conditions.filter((condition, idx) => !toBeRemoved.includes(idx));\n this.#suppressFilteredEvent = false;\n return conditions;\n }\n\n /**\n * Get filter conditions in array from whats set in the UI.\n * @returns {Array<object>} An array of currently showing filter conditions.\n */\n filterConditions(): Array<IdsDataGridFilterConditions> {\n const filterExpr: any = [];\n this.filterNodes?.forEach((n: any) => {\n const slot = n.querySelector('slot[name^=\"filter-\"]');\n const node = slot ? slot.assignedElements()[0] : n;\n if (node) {\n const input = node.querySelector('ids-input');\n const triggerField = node.querySelector('ids-trigger-field');\n const btn = node.querySelector('ids-menu-button');\n const dropdown = node.querySelector('ids-dropdown');\n const timePicker = node.querySelector('ids-time-picker');\n if (!btn && !input && !triggerField && !dropdown) return;\n\n const headerElem = n.closest('.ids-data-grid-header-cell');\n const columnData = this.root.columnDataByHeaderElem(headerElem);\n let operator = btn?.value?.[0]\n || btn?.menuEl?.items?.[0]?.value\n || this.#operators(columnData.filterType?.name, columnData)?.[0]?.value;\n if (!operator && !btn && input) operator = 'contains';\n const value = input?.value ?? triggerField?.value ?? dropdown?.value ?? timePicker?.value ?? '';\n if (dropdown) {\n operator = 'equals';\n if (value === this.#dropdownNotFilterItem(columnData).value) return;\n }\n if (timePicker && !columnData.formatOptions?.dateFormat && !columnData.formatOptions?.timeStyle) {\n if (!columnData.formatOptions) columnData.formatOptions = {};\n columnData.formatOptions.dateFormat = timePicker.format;\n columnData.formatOptions.timeStyle = 'short';\n }\n this.#setDatePickerValue(triggerField, operator);\n\n if (operator === 'selected-notselected') return;\n if (value === '' && !dropdown && !(/\\b(is-not-empty|is-empty|selected|not-selected)\\b/g.test(operator))) return;\n\n const filterElem = timePicker || dropdown || triggerField || input;\n\n const condition = {\n columnId: columnData.id,\n columnData,\n filterElem,\n operator,\n value\n };\n\n filterExpr.push(condition);\n }\n });\n\n return filterExpr;\n }\n\n /**\n * Apply the Filter with the currently selected conditions, or the ones passed in.\n * @param {Array} conditions An array of objects with the filter conditions\n * @returns {void}\n */\n applyFilter(conditions?: any) {\n this.root?.resetCache();\n\n if (this.filterIsProcessing || !this.root.filterable || this.root.filterRowDisabled) return;\n this.filterIsProcessing = true;\n\n if (conditions) {\n conditions = this.setFilterConditions(conditions);\n } else {\n conditions = this.filterConditions();\n }\n this.#conditions = conditions;\n\n // Client filter\n if (this.root.disableClientFilter) {\n this.root.triggerEvent('filtered', this.root, { bubbles: true, detail: { elem: this.root, conditions } });\n this.filterIsProcessing = false;\n this.root.saveSettings?.();\n return;\n }\n\n // No need to go further, if no condition/s to filter\n if ((!conditions?.length && !this.root.datasource.filtered) || !conditions) {\n this.filterIsProcessing = false;\n return;\n }\n\n // Should fire clear event\n const isCleared = !conditions.length && this.root.datasource.filtered;\n let isFilterApply = false;\n\n const checkColumn = (c: any, row: any, index: any, isKeyword: boolean = false) => {\n let isMatch = true;\n if (!c.columnData) {\n c.columnData = this.root.columnDataById(c.columnId);\n if (!c.columnData) return;\n }\n\n if (!isKeyword) {\n // Must be filter type\n if (typeof c.columnData.filterType !== 'function'\n && typeof c.columnData.filterFunction !== 'function') return;\n\n // Use custom filter\n if (typeof c.columnData.filterFunction === 'function') {\n isMatch = c.columnData.filterFunction({ data: row, index, condition: c });\n isFilterApply = true; // Add this line to indicate filter was applied\n if (!isMatch) {\n this.filterIsProcessing = false;\n }\n return isMatch; // Return the match result directly\n }\n }\n\n // All other use in-built filters\n const filterType = c.columnData.filterType?.name || 'text';\n\n // Single filter\n const filterWrapper = this.filterWrapperById(c.columnId);\n if (hasClass(filterWrapper, 'disabled') || hasClass(filterWrapper, 'readonly')) return;\n\n const column = c.columnData;\n\n const stringVal = (v: any) => ((v === null || v === undefined) ? '' : v.toString().toLowerCase());\n const formatterVal = () => {\n const val = IdsDataGridCell.template(row, column, index, this.root);\n const rex = /(<([^>]+)>)|(amp;)|(&lt;([^>]+)&gt;)/ig;\n return val.replace(rex, '').trim().toLowerCase();\n };\n let conditionValue = stringVal(c.value);\n let value = row[column.field];\n let valueStr = stringVal(value);\n\n // Dropdown, multiselect and contents types\n if (/dropdown|multiselect|contents/g.test(filterType)) {\n if ((value === null || typeof value === 'undefined') && c.value === '') {\n const temp = 'filter-blank-value-temp';\n value = temp;\n conditionValue = temp;\n } else {\n conditionValue = c.value;\n }\n }\n\n // Run Data over the formatter\n if (filterType === 'text') {\n value = formatterVal();\n valueStr = stringVal(value);\n }\n\n // Integer\n if (filterType === 'integer') {\n value = formatterVal();\n value = this.root.localeAPI?.parseNumber(value);\n conditionValue = this.root.localeAPI?.parseNumber(conditionValue);\n }\n\n // Decimal\n if (filterType === 'decimal') {\n value = formatterVal();\n value = this.root.localeAPI?.parseNumber(value);\n conditionValue = this.root.localeAPI?.parseNumber(conditionValue);\n }\n\n // Date Time\n if (filterType === 'date' || filterType === 'time') {\n if (/string|undefined/g.test(typeof value)) value = formatterVal();\n const getValues = (rValue: any, cValue: any) => {\n // NOTE: HERE IS THE DATE PROBLEM, format is always equal to a time format, not a date format\n const defaultFilterFormat = filterType === 'date'\n ? this.root.localeAPI?.calendar().dateFormat\n : this.root.localeAPI?.calendar().timeFormat;\n const format = c.format || column.formatOptions || defaultFilterFormat;\n\n cValue = this.root.localeAPI?.parseDate(cValue, format);\n if (cValue) {\n if (filterType === 'time') {\n // drop the day, month and year\n cValue.setDate(1);\n cValue.setMonth(0);\n cValue.setYear(0);\n }\n\n cValue = cValue.getTime();\n }\n\n if (typeof rValue === 'string' && rValue) {\n rValue = this.root.localeAPI?.parseDate(rValue, format);\n\n if (rValue) {\n if (filterType === 'time') {\n // drop the day, month and year\n rValue.setDate(1);\n rValue.setMonth(0);\n rValue.setYear(0);\n } else if (!(column.formatOptions?.showTime)) {\n // Drop any time component of the row data for the filter\n // as it is a date only field\n rValue.setHours(0);\n rValue.setMinutes(0);\n rValue.setSeconds(0);\n rValue.setMilliseconds(0);\n }\n rValue = rValue.getTime();\n }\n }\n return { rValue, cValue };\n };\n\n let values = null;\n if (c.operator === 'in-range') { // range stuff\n const filterButton = c.filterElem.querySelector('ids-trigger-button');\n const datePickerPopupSelector = c.filterElem.getAttribute('aria-controls') ?? filterButton?.getAttribute('aria-controls');\n const datePickerPopup: IdsDatePickerPopup = this.root.wrapper.querySelector(`#${datePickerPopupSelector}`)!;\n\n if (datePickerPopup) {\n if (c.value.indexOf(datePickerPopup.rangeSettings.separator) > -1) {\n const cValues = c.value.split(datePickerPopup.rangeSettings.separator);\n const range = { start: getValues(value, cValues[0]), end: getValues(value, cValues[1]) };\n values = {\n rValue: range.start.rValue,\n cValue: { start: range.start.cValue, end: range.end.cValue }\n };\n } else values = getValues(value, c.value);\n }\n } else {\n values = getValues(value, c.value);\n }\n value = values ? values.rValue : value;\n conditionValue = values ? values.cValue : conditionValue;\n }\n switch (c.operator) {\n case 'equals':\n isMatch = (value === conditionValue && value !== '');\n break;\n case 'does-not-equal':\n isMatch = (value !== conditionValue);\n break;\n case 'contains':\n isMatch = (valueStr.indexOf(conditionValue) > -1 && value.toString() !== '');\n break;\n case 'does-not-contain':\n isMatch = (valueStr.indexOf(conditionValue) === -1);\n break;\n case 'end-with':\n // amazonq-ignore-next-line\n isMatch = (valueStr.lastIndexOf(conditionValue) === (valueStr.length - conditionValue.toString().length) && valueStr !== '' && (valueStr.length >= conditionValue.toString().length));\n break;\n case 'start-with':\n isMatch = (valueStr.indexOf(conditionValue) === 0 && valueStr !== '');\n break;\n case 'does-not-end-with':\n // amazonq-ignore-next-line\n isMatch = (valueStr.lastIndexOf(conditionValue) === (valueStr.length - conditionValue.toString().length) && valueStr !== '' && (valueStr.length >= conditionValue.toString().length));\n isMatch = !isMatch;\n break;\n case 'does-not-start-with':\n isMatch = !(valueStr.indexOf(conditionValue) === 0 && valueStr !== '');\n break;\n case 'is-empty':\n isMatch = (valueStr === '');\n break;\n case 'is-not-empty':\n if (typeof value === 'string') {\n isMatch = !!value.length;\n break;\n }\n if (typeof value === 'number') {\n isMatch = !Number.isNaN(value);\n break;\n }\n isMatch = value !== null && value !== undefined;\n break;\n case 'in-range':\n if (typeof conditionValue === 'object') {\n isMatch = value >= conditionValue.start && value <= conditionValue.end && value !== '';\n } else isMatch = (value === conditionValue && value !== '');\n break;\n case 'less-than':\n isMatch = (value < conditionValue && (value !== '' && value !== null));\n break;\n case 'earlier-than':\n isMatch = (value < conditionValue && (value !== '' && value !== null));\n break;\n case 'less-equals':\n isMatch = (value <= conditionValue && (value !== '' && value !== null));\n break;\n case 'earlier-equals':\n isMatch = (value <= conditionValue && (value !== '' && value !== null));\n break;\n case 'greater-than':\n isMatch = (value > conditionValue && (value !== '' && value !== null));\n break;\n case 'greater-equals':\n isMatch = (value >= conditionValue && (value !== '' && value !== null));\n break;\n case 'later-than':\n isMatch = (value > conditionValue && (value !== '' && value !== null));\n break;\n case 'later-equals':\n isMatch = (value >= conditionValue && (value !== '' && value !== null));\n break;\n case 'selected':\n if (typeof c.columnData.isChecked === 'function') {\n isMatch = c.columnData.isChecked(value);\n break;\n }\n isMatch = (valueStr === '1' || valueStr === 'true' || value === true || value === 1) && valueStr !== '';\n break;\n case 'not-selected':\n if (typeof c.columnData.isChecked === 'function') {\n isMatch = !c.columnData.isChecked(value);\n break;\n }\n isMatch = (valueStr === '0' || valueStr === 'false' || value === false || value === 0 || valueStr === '');\n break;\n case 'selected-notselected':\n isMatch = true;\n break;\n default:\n break;\n }\n\n isFilterApply = true;\n\n if (!isMatch) {\n this.filterIsProcessing = false;\n }\n\n return isMatch;\n };\n\n const checkRow = (row: any, index: number) => {\n let isMatch = true;\n\n for (let i = 0, l = conditions.length; i < l; i++) {\n const c = conditions[i] || {};\n\n if (c?.column === 'all') {\n const columns = this.root.columns;\n for (let j = 0; j < columns.length; j++) {\n const column = columns[j];\n const columnMatch = checkColumn({ ...c, columnId: column?.id }, row, index, true);\n isMatch = !!columnMatch;\n if (isMatch) {\n break;\n }\n }\n } else {\n const columnMatch = checkColumn(c, row, index);\n if (typeof columnMatch === 'undefined') {\n continue;\n }\n if (!columnMatch) {\n isMatch = false;\n break;\n }\n }\n }\n this.filterIsProcessing = false;\n return !isMatch;\n };\n\n this.root.datasource.filter(checkRow);\n this.root.redrawBody();\n\n // Fires after filter action occurs\n if (isCleared || isFilterApply) {\n this.root.toggleEmptyMessage();\n this.root.triggerEvent('filtered', this.root, {\n bubbles: true,\n detail: { elem: this.root, type: isCleared ? 'clear' : 'apply', conditions }\n });\n this.root.saveSettings?.();\n }\n\n requestAnimationFrame(() => {\n this.root.setActiveCell(0, 0, true, 'filter');\n });\n }\n\n /**\n * Set disabled filter row\n * @returns {void}\n */\n setFilterRowDisabled() {\n this.filterNodes?.forEach((n: any) => {\n const slot = n.querySelector('slot[name^=\"filter-\"]');\n const node = slot ? slot.assignedElements()[0] : n;\n if (node) {\n [\n node.querySelector('ids-input'),\n node.querySelector('ids-menu-button'),\n node.querySelector('ids-dropdown'),\n node.querySelector('ids-date-picker'),\n node.querySelector('ids-trigger-field'),\n node.querySelector('ids-time-picker')\n ].forEach((el) => {\n if (this.root.filterRowDisabled) {\n n.classList.add('disabled');\n el?.setAttribute('disabled', '');\n } else {\n n.classList.remove('disabled');\n el?.removeAttribute('disabled');\n }\n });\n }\n });\n }\n\n /**\n * Attach filters setting after data grid render\n * @returns {void}\n */\n attachFilterSettings() {\n // Set filter row should be disabled or not\n if (this.root.filterRowDisabled) this.setFilterRowDisabled();\n\n // Set compulsory attributes for slotted elements\n const setCompulsoryAttributes = (el: any) => {\n el?.setAttribute('color-variant', (!this.root.listStyle ? 'alternate-formatter' : 'alternate-list-formatter'));\n el?.setAttribute('label-state', 'collapsed');\n el?.setAttribute('no-margins', '');\n el?.setAttribute('compact', '');\n };\n\n this.filterNodes?.forEach((n: any) => {\n const slot = n.querySelector('slot[name^=\"filter-\"]');\n const node = slot ? slot.assignedElements()[0] : n;\n const headerElem = n.closest('.ids-data-grid-header-cell');\n const column = this.root.columnDataByHeaderElem(headerElem);\n const input = node?.querySelector('ids-input');\n const type = input?.getAttribute('data-filter-type');\n const dropdown = node?.querySelector('ids-dropdown');\n const dropdownList = node?.querySelector('ids-dropdown-list');\n const datePicker = node?.querySelector('ids-date-picker');\n const timePicker = node?.querySelector('ids-time-picker');\n const btn = node?.querySelector('ids-menu-button');\n const menu = node?.querySelector('ids-popup-menu');\n let triggerBtn = node?.querySelector('ids-trigger-button');\n let triggerField = node?.querySelector('ids-trigger-field');\n const datePickerPopup = node?.querySelector('ids-date-picker-popup');\n const timePickerPopup = node?.querySelector('ids-time-picker-popup');\n let menuAttachment = '.ids-data-grid-wrapper';\n\n // Slotted filter only\n if (slot && (input || dropdown || datePicker || timePicker || btn)) {\n menuAttachment = 'ids-data-grid';\n\n // Slotted initial\n this.#initial[column.id] = this.#initial[column.id] || {};\n const initial = this.#initial[column.id];\n if (input && !initial.input) initial.input = { value: input.value };\n if (dropdown && !initial.dropdown) initial.dropdown = { value: dropdown.value };\n if (datePicker && !initial.datePicker) initial.datePicker = { value: datePicker.value };\n if (timePicker && !initial.timePicker) initial.timePicker = { value: timePicker.value };\n if (btn && !initial.btn) initial.btn = { value: btn.value?.[0] };\n\n // Slotted attributes\n setCompulsoryAttributes(input);\n setCompulsoryAttributes(dropdown);\n setCompulsoryAttributes(datePicker);\n setCompulsoryAttributes(timePicker);\n if (btn) {\n btn.cssClass = [...new Set([...btn.cssClass, 'compact'])];\n btn.setAttribute('color-variant', (!this.root.listStyle ? 'alternate-formatter' : 'alternate-list-formatter'));\n btn.setAttribute('column-id', column.id);\n btn.setAttribute('square', 'true');\n }\n // Place slotted menus into a special slot placed near internal filter menus\n if (menu) {\n menu.setAttribute('slot', `menu-container`);\n }\n }\n\n // Connect Popup Menus\n if (menu) {\n if (slot) {\n triggerField = slot.assignedElements()[0].querySelector('ids-input');\n triggerBtn = slot.assignedElements()[0].querySelector('ids-menu-button');\n menu.setAttribute(attributes.TARGET, `#${triggerBtn.getAttribute('id')}`);\n menu.setAttribute(attributes.TRIGGER_ELEM, `#${triggerBtn.getAttribute('id')}`);\n } else {\n menu.setAttribute(attributes.ATTACHMENT, menuAttachment);\n }\n menu.setAttribute(attributes.TRIGGER_TYPE, 'click');\n menu.removeTriggerEvents();\n\n // Move/Rebind menu (order of these statements matters)\n menu.appendToTargetParent();\n menu.keyboardEventTarget = this.root;\n menu.attachEventHandlers();\n menu.attachKeyboardListeners();\n if (menu.popup) {\n menu.popup.popupOpenEventsTarget = document.body;\n const isInModal = getClosest(menu, 'ids-modal') !== undefined;\n menu.popup.positionStyle = isInModal ? 'fixed' : 'absolute';\n menu.popup.onPlace = (popupRect: DOMRect) => {\n if (isInModal) popupRect.y += 58;\n return popupRect;\n };\n menu.popup.onOutsideClick = () => {\n menu.hide();\n };\n }\n }\n\n btn?.setAttribute('data-filter-conditions-button', '');\n\n const dateOrTimePopup = datePickerPopup || timePickerPopup;\n if (dateOrTimePopup) {\n dateOrTimePopup.appendToTargetParent();\n if (dateOrTimePopup.popup) {\n dateOrTimePopup.popup.popupOpenEventsTarget = document.body;\n dateOrTimePopup.popup.onOutsideClick = (e: MouseEvent) => {\n if (!e.composedPath().includes(dateOrTimePopup)) { dateOrTimePopup.hide(); }\n };\n }\n dateOrTimePopup.setAttribute(attributes.TRIGGER_TYPE, 'click');\n dateOrTimePopup.setAttribute(attributes.TARGET, `#${triggerField.getAttribute(attributes.ID)}`);\n const isInModal = getClosest(dateOrTimePopup, 'ids-modal') !== undefined;\n\n dateOrTimePopup.setAttribute(attributes.TRIGGER_ELEM, `#${triggerBtn.getAttribute(attributes.ID)}`);\n dateOrTimePopup.popup?.setAttribute(attributes.ARROW_TARGET, `#${triggerBtn.getAttribute(attributes.ID)}`);\n if (dateOrTimePopup.popup) dateOrTimePopup.popup.y = 16;\n dateOrTimePopup.setAttribute(attributes.ATTACHMENT, menuAttachment);\n\n if (isInModal && datePickerPopup) {\n datePickerPopup.setAttribute(attributes.POSITION_STYLE, 'fixed');\n datePickerPopup.configurePopup();\n if (triggerBtn) {\n triggerBtn.setAttribute(attributes.SHOW_PICKLIST_MONTH, 'true');\n triggerBtn.setAttribute(attributes.SHOW_PICKLIST_YEAR, 'true');\n }\n }\n dateOrTimePopup.refreshTriggerEvents();\n }\n\n // Date Picker - Adjust range settings\n if (datePickerPopup && triggerField) {\n const rangeSettings = column.filterOptions?.rangeSettings;\n if (rangeSettings) datePickerPopup.rangeSettings = rangeSettings;\n datePickerPopup.useRange = (btn?.value?.[0] === 'in-range');\n\n // Apply date masking to prevent alphabets/special characters\n const format = column.filterOptions?.format || this.root.localeAPI?.calendar().dateFormat;\n if (format && typeof format === 'string' && column.filterType?.name === 'date' && !column.filterFunction) {\n triggerField.mask = column.filterOptions?.mask || 'date';\n triggerField.maskOptions = column.filterOptions?.maskOptions || { format, locale: this.root.localeAPI };\n }\n }\n\n // Time Picker - Adjust format\n if (timePickerPopup) {\n const format = this.root.localeAPI?.calendar().timeFormat;\n triggerField.format = format;\n timePickerPopup.format = format;\n }\n\n // Dropdown/List settings\n if (dropdown && dropdownList) {\n dropdownList.configurePopup();\n dropdownList.setAttribute('size', 'full');\n dropdown.input.value = (dropdownList.selected || dropdownList.listBox?.children[0])?.textContent || '';\n dropdownList.setAttribute(attributes.ATTACHMENT, menuAttachment);\n dropdownList.appendToTargetParent();\n if (dropdownList.popup) {\n dropdownList.popup.popupOpenEventsTarget = document.body;\n // Ensure dropdown can extend beyond grid boundaries\n dropdownList.popup.positionStyle = 'fixed';\n }\n dropdownList.setAttribute(attributes.TRIGGER_TYPE, 'custom');\n dropdownList.setAttribute(attributes.TARGET, `#${dropdown.getAttribute('id')}`);\n dropdownList.setAttribute(attributes.TRIGGER_ELEM, `#${dropdown.getAttribute('id')}`);\n dropdown.onEvent('click', dropdown, () => {\n const popup = dropdownList.popup;\n if (popup) {\n if (!popup.visible) dropdown.open();\n else dropdown.close();\n }\n });\n dropdownList.onOutsideClick = (e: MouseEvent) => {\n if (!e.composedPath().includes(dropdownList)) {\n dropdown.close();\n }\n };\n dropdownList.refreshTriggerEvents();\n }\n\n // Integer type mask\n if (type === 'integer') {\n input.mask = 'number';\n input.maskOptions = {\n allowDecimal: false,\n allowNegative: true,\n allowLeadingZeros: true,\n allowThousandsSeparator: false\n };\n }\n\n // Decimal type mask\n if (type === 'decimal') {\n input.mask = 'number';\n input.maskOptions = {\n allowDecimal: true,\n allowLeadingZeros: true,\n allowNegative: true\n };\n }\n });\n }\n\n /**\n * Handle all triggering and handling of events\n * @returns {void}\n */\n attachFilterEventHandlers() {\n if (!this.root.filterable || !this.root.header) return;\n\n this.root.offEvent(`keydown.${this.#id()}`, this.root.wrapper);\n this.root.onEvent(`keydown.${this.#id()}`, this.root.wrapper, (e: any) => {\n const elem = e.target;\n if (!elem) return;\n\n // Only apply this event to handlers that exist on internal (not slotted) filter menus\n const containerNode = getClosestContainerNode(elem);\n if (containerNode === document) return;\n\n const key = e.key;\n if (key === 'ArrowDown') {\n if (/ids-trigger-field/gi.test(elem.nodeName)) {\n elem.querySelector('ids-trigger-button').click();\n }\n if (/ids-dropdown/gi.test(elem.nodeName)) {\n elem.click();\n }\n }\n\n this.root.lastActiveCell = null;\n });\n\n this.root.offEvent(`hide.${this.#id()}`, this.root.wrapper);\n this.root.onEvent(`hide.${this.#id()}`, this.root.wrapper, (e: any) => {\n const elem = e.target;\n if (!elem) return;\n\n // Only apply this event to handlers that exist on internal (not slotted) filter menus\n const containerNode = getClosestContainerNode(elem);\n if (containerNode === document) return;\n\n if (this.root.openMenu) {\n this.root.offEvent(`keydown.${this.#id()}`, this.root.openMenu);\n this.root.openMenu = null;\n }\n\n // Popup Menus/Dropdown Lists\n if (/ids-popup-menu|ids-dropdown-list/gi.test(elem.nodeName)) {\n this.root.offEvent(`keydown.${this.#id()}`, elem);\n }\n\n // Anything extending IdsPickerPopup\n if (/ids-time-picker-popup|ids-date-picker-popup/gi.test(elem.nodeName)) {\n if (!this.root.contains(document.activeElement)) return;\n if (!this.root.shadowRoot.contains(document.activeElement)) return;\n\n elem.target?.focus();\n }\n });\n\n this.root.offEvent(`show.${this.#id()}`, this.root.wrapper);\n this.root.onEvent(`show.${this.#id()}`, this.root.wrapper, (e: any) => {\n const elem = e.target;\n if (!elem) return;\n\n // Only apply this event to handlers that exist on internal (not slotted) filter menus\n const containerNode = getClosestContainerNode(elem);\n if (containerNode === document) return;\n\n requestAnimationFrame(() => {\n this.root.openMenu = elem;\n });\n\n // Popup Menus\n if (/ids-popup-menu/gi.test(elem.nodeName)) {\n this.root.offEvent(`keydown.${this.#id()}`, elem);\n this.root.onEvent(`keydown.${this.#id()}`, elem, (f: any) => {\n const key = f.key;\n if (['Enter', 'SpaceBar', ' '].includes(key)) {\n elem.selectItem(elem.lastNavigated);\n elem.hideAndFocus(true);\n }\n if (key === 'Escape') {\n elem.hideAndFocus(true);\n }\n });\n }\n\n // Dropdown Lists\n if (/ids-dropdown-list/gi.test(elem.nodeName)) {\n this.root.offEvent(`keydown.${this.#id()}`, elem);\n this.root.onEvent(`keydown.${this.#id()}`, elem, (f: any) => {\n const key = f.key;\n if (key === 'ArrowUp') {\n elem.navigate(-1);\n }\n if (key === 'ArrowDown') {\n elem.navigate(1);\n }\n if (['Enter', 'SpaceBar', ' '].includes(key)) {\n this.root.selectWithFilterDropdown = true;\n elem.select();\n }\n if (key === 'Escape') {\n if (elem.nodeName === 'IDS-DROPDOWN-LIST') {\n elem.popup.visible = false;\n } else if (elem.triggerCloseEvent) elem?.triggerCloseEvent(true);\n }\n });\n }\n });\n\n // Captures selected contents from menu/dropdown list items.\n this.root.offEvent(`selected.${this.#id()}`, this.root.wrapper);\n this.root.onEvent(`selected.${this.#id()}`, this.root.wrapper, (e: any) => {\n const elem = e.detail?.elem;\n if (!elem) return;\n\n if (/ids-menu-item/gi.test(elem.nodeName)) {\n this.#handleMenuButtonSelected(elem);\n }\n\n if (/ids-dropdown-list/gi.test(elem.nodeName)) {\n e.target.value = e.detail.value;\n }\n });\n\n // Change event for input, dropdown and multiselect\n const header = this.root.container?.querySelector('.ids-data-grid-header:not(.column-groups)');\n this.root.offEvent(`input.${this.#id()}`, header);\n this.root.onEvent(`input.${this.#id()}`, header, (e: any) => {\n const nodeName = e.target?.nodeName;\n if (!this.#suppressFilteredEvent && nodeName && /ids-(input|trigger-field|dropdown|multiselect)/gi.test(nodeName)) {\n this.applyFilter();\n }\n });\n\n // Capture 'dayselected' events from IdsDatePickerPopup\n this.root.offEvent(`dayselected.${this.#id()}`, this.root.wrapper);\n this.root.onEvent(`dayselected.${this.#id()}`, this.root.wrapper, (e: any) => {\n // this will trigger the above change event which also calls applyFilter().\n e.target.value = e.detail.value;\n if (!this.#suppressFilteredEvent) {\n this.applyFilter();\n }\n });\n\n // Capture 'timeselected' events from IdsTimePickerPopup\n this.root.offEvent(`timeselected.${this.#id()}`, this.root.wrapper);\n this.root.onEvent(`timeselected.${this.#id()}`, this.root.wrapper, (e: any) => {\n // this will trigger the above change event which also calls applyFilter().\n e.target.value = e.detail.value;\n if (!this.#suppressFilteredEvent) {\n this.applyFilter();\n }\n });\n\n // Change event for ids-date-picker and ids-time-picker\n this.filterNodes?.forEach((n: any) => {\n const slot = n.querySelector('slot[name^=\"filter-\"]');\n const node = slot ? slot.assignedElements()[0] : n;\n const elem = node?.querySelector('ids-date-picker, ids-time-picker');\n if (elem) {\n this.root.offEvent(`change.${this.#id()}`, elem.input);\n this.root.onEvent(`change.${this.#id()}`, elem.input, () => this.applyFilter());\n }\n });\n\n // Set filter event when typing for input\n this.setFilterWhenTyping();\n }\n\n /**\n * Handles `selected` events from filter menus\n * @param {IdsMenuItem} el reference to the menu item that triggered the event\n * @returns {void}\n */\n #handleMenuButtonSelected(el: IdsMenuItem) {\n const target = (el.menu as any)?.target;\n if (!target?.hasAttribute('data-filter-conditions-button')) return;\n\n const { value, icon, text: label } = el;\n if (!icon || !target || target.icon === icon.replace(/^filter-/g, '')) return;\n\n const columnId = target.getAttribute('column-id');\n const initial = this.#initial[columnId].btn;\n const beforeChange = {\n icon: target.icon,\n value: `${target.icon}`.replace(/^filter-/g, ''),\n label: (target.text || '').trim()\n };\n target.icon = icon;\n target.querySelector('span, ids-text').textContent = label;\n this.root.triggerEvent('filteroperatorchanged', this.root, {\n bubbles: true,\n detail: {\n elem: this.root,\n targetElem: target,\n icon,\n value,\n label,\n initial,\n beforeChange\n }\n });\n this.applyFilter();\n }\n\n /**\n * Set filter event when typing for all filter inputs\n * @returns {void}\n */\n setFilterWhenTyping() {\n this.filterNodes?.forEach((n: any) => {\n const slot = n.querySelector('slot[name^=\"filter-\"]');\n const node = slot ? slot.assignedElements()[0] : n;\n const input = node?.querySelector('ids-input');\n if (!input) return;\n const eventName = `keydownend.${input.id}`;\n if (this.root.filterWhenTyping) {\n n.classList.add('filter-when-typing');\n this.root.onEvent(eventName, input, () => {\n const canFilter = input.value?.length > 3 || input.value?.length === 0;\n this.focused = input;\n if (canFilter) this.applyFilter();\n });\n } else {\n n.classList.remove('filter-when-typing');\n this.root.offEvent(eventName, input);\n }\n });\n }\n\n /**\n * Returns the markup for filter menu button and input.\n * @private\n * @param {string} type Must be exactly the same as filter method name\n * @param {IdsDataGridColumn} column The column info.\n * @returns {string} The resulting template\n */\n #btnAndInputTemplate(type: string, column: IdsDataGridColumn) {\n const input = `${this.#inputTemplate(type, column)}`;\n const button = `${this.#filterButtonTemplate(type, column)}`;\n const align = column.filterAlign || column.align;\n if (align === 'right') {\n return `${input}${button}`;\n }\n return `${button}${input}`;\n }\n\n /**\n * Returns the markup for filter menu button in header cell.\n * @private\n * @param {string} type Must be exactly the same as filter method name\n * @param {IdsDataGridColumn} column The column info.\n * @returns {string} The resulting template\n */\n #filterButtonTemplate(type: string, column: IdsDataGridColumn): string {\n const operators = this.#operators(type, column);\n\n if (!operators?.length) return '';\n\n const opt = column.filterOptions || {};\n const disabled = opt.disabled ? ' disabled' : '';\n const readonly = opt.readonly ? ' readonly' : '';\n const id = `${this.#id(column)}-${type}`;\n let sel: IdsDataGridFilterOperator = operators.find((op) => op.selected)\n || operators[0]\n || { value: '', icon: '', label: '' };\n\n if (this.#conditions.length) {\n const condition = this.#conditions.find((c: any) => c.columnId === column.id);\n sel = operators.find((op) => (op.value === condition?.operator)) ?? sel;\n }\n\n this.#initial[column.id] = this.#initial[column.id] || {};\n if (!this.#initial[column.id].btn) this.#initial[column.id].btn = { ...sel };\n\n return `<ids-menu-button\n color-variant=\"${!this.root.listStyle ? 'alternate-formatter' : 'alternate-list-formatter'}\"\n css-class=\"compact\"\n icon=\"${sel.icon}\"\n column-id=\"${column.id}\"\n id=\"btn-${id}\"\n ref-id=\"${id}\"\n menu=\"menu-${id}\"\n value=\"${sel.value}\"\n square=\"true\"\n trigger-type=\"click\"\n ${disabled}${readonly}\n dropdown-icon>\n <span class=\"audible\">${sel?.label}</span>\n </ids-menu-button>`;\n }\n\n /**\n * Returns filter IdsPopupMenu template for header cell\n * @param {string} id ID of btn and popup pairing\n * @param {string} type Must be exactly the same as filter method name\n * @param {IdsDataGridColumn} column The column info.\n * @returns {string} The resulting template\n */\n filterButtonPopupTemplate(id: string, type: string, column: IdsDataGridColumn): string {\n const operators = this.#operators(type, column);\n\n if (!operators?.length) return '';\n\n let sel: IdsDataGridFilterOperator = operators.find((op) => op.selected)\n || operators[0]\n || { value: '', icon: '', label: '' };\n\n if (this.#conditions.length) {\n const condition = this.#conditions.find((c: any) => c.columnId === column.id);\n sel = operators.find((op) => (op.value === condition?.operator)) ?? sel;\n }\n\n this.#initial[column.id] = this.#initial[column.id] || {};\n if (!this.#initial[column.id].btn) this.#initial[column.id].btn = { ...sel };\n\n const items: string = operators.map((op, i) => {\n const selected = op.value === sel?.value ? ' selected=\"true\"' : '';\n return `<ids-menu-item id=\"item-${i}-${id}\" value=\"${op.value}\" icon=\"${op.icon}\"${selected}>${op.label}</ids-menu-item>`;\n }).join('');\n\n return `<ids-popup-menu id=\"menu-${id}\" target=\"#btn-${id}\" trigger-type=\"click\">\n <ids-menu-group select=\"single\">${items}</ids-menu-group>\n </ids-popup-menu>`;\n }\n\n /**\n * Get input template string\n * @private\n * @param {string} type Must be exactly the same as filter method name\n * @param {IdsDataGridColumn} column The column info.\n * @returns {string} The template string\n */\n #inputTemplate(type: any, column: any) {\n const opt = column.filterOptions || {};\n const id = typeof opt?.customId === 'function'\n ? opt?.customId(column)\n : opt?.customId || `${this.#id(column)}-${type}`;\n const label = opt.label || 'Filter Input';\n const placeholder = opt.placeholder ? ` placeholder=\"${opt.placeholder}\"` : '';\n const disabled = opt.disabled ? ' disabled' : '';\n const readonly = opt.readonly ? ' readonly' : '';\n const maxlength = opt.maxlength ? ` maxlength=\"${opt.maxlength}\"` : '';\n const uppercase = opt.uppercase ? ` uppercase` : '';\n\n let value = this.#conditions.filter((c: any) => c.columnId === column.id)[0]?.value ?? null;\n this.#initial[column.id] = this.#initial[column.id] || {};\n if (!this.#initial[column.id].input) this.#initial[column.id].input = { value };\n value = value ? ` value=\"${value}\"` : '';\n\n return `<ids-input\n color-variant=\"${!this.root.listStyle ? 'alternate-formatter' : 'alternate-list-formatter'}\"\n data-filter-type=\"${type}\"\n type=\"${opt.type || 'text'}\"\n size=\"${opt.size || 'full'}\"\n label=\"${label}\"\n label-state=\"collapsed\"\n ${this.root.rowHeight === 'xxs' || this.root.rowHeight === 'xxs' ? `field-height=\"xs\"` : ''}\n id=\"${id}\"\n text-align=\"${column.align === 'right' ? 'end' : 'start'}\"\n no-margins\n compact\n ${opt.browserAutocomplete ? ` browser-autocomplete=\"${opt.browserAutocomplete}\"` : ` autocomplete=\"off\"`}\n ${placeholder}${disabled}${readonly}${maxlength}${uppercase}${value}>\n </ids-input>`;\n }\n\n /**\n * Get trigger field template string\n * @private\n * @param {string} type Must be exactly the same as filter method name\n * @param {IdsDataGridColumn} column The column info.\n * @param {string} [icon] if provided, defines the icon used on this field's trigger button\n * @param {string} [btnText] if provided, defines the text content of this field's trigger button\n * @returns {string} The template string\n */\n #triggerFieldTemplate(type: any, column: any, icon?: string, btnText?: string) {\n const opt = column.filterOptions || {};\n const id = typeof opt?.customId === 'function'\n ? opt?.customId(column)\n : opt?.customId || `field-${this.#id(column)}-${type}`;\n const triggerBtnId = `triggerBtn-${this.#id(column)}-${type}`;\n const triggerBtnIcon = icon ? ` icon=\"${icon}\"` : '';\n const triggerBtnText = btnText ? `<ids-text audible=\"true\" translate-text=\"true\">${btnText}</ids-text>` : '';\n const label = opt.label || 'Filter Input';\n const placeholder = opt.placeholder ? ` placeholder=\"${opt.placeholder}\"` : '';\n const disabled = opt.disabled ? ' disabled' : '';\n const readonly = opt.readonly ? ' readonly' : '';\n\n let value = this.#conditions.filter((c: any) => c.columnId === column.id)[0]?.value ?? null;\n this.#initial[column.id] = this.#initial[column.id] || {};\n if (!this.#initial[column.id].input) this.#initial[column.id].input = { value };\n value = value ? ` value=\"${value}\"` : '';\n\n return `<ids-trigger-field\n color-variant=\"${!this.root.listStyle ? 'alternate-formatter' : 'alternate-list-formatter'}\"\n data-filter-type=\"${type}\"\n type=\"${opt.type || 'text'}\"\n size=\"${opt.size || 'full'}\"\n label=\"${label}\"\n label-state=\"collapsed\"\n id=\"${id}\"\n no-margins\n compact\n ${placeholder}${disabled}${readonly}${value}>\n <ids-trigger-button id=\"${triggerBtnId}\" slot=\"trigger-end\"${triggerBtnIcon}>\n <ids-icon part=\"icon\"></ids-icon>\n ${triggerBtnText}\n </ids-trigger-button>\n </ids-trigger-field>`;\n }\n\n /**\n * Get dropdown template string\n * @private\n * @param {string} type Must be exactly the same as filter method name\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The template string\n */\n #dropdownTemplate(type: any, column: any) {\n const id = `${this.#id(column)}-${type}`;\n const operators = this.#operators(type, column);\n\n const opt = column.filterOptions || {};\n const label = opt.label || 'Filter Dropdown';\n const disabled = opt.disabled ? ' disabled' : '';\n const readonly = opt.readonly ? ' readonly' : '';\n\n let sel: any = null;\n if (this.#conditions.length) {\n const condition = this.#conditions.filter((c: any) => c.columnId === column.id)[0];\n sel = operators.filter((op: any) => (op.label === condition?.value))[0];\n }\n if (!sel) sel = operators.filter((op: any) => op.selected)[0];\n let items = '';\n const { value: nfValue, label: nfLabel } = this.#dropdownNotFilterItem(column);\n const notFilteredItemTemplate = () => {\n if (!sel) sel = { value: nfValue };\n items = `<ids-list-box-option id=\"${id}-opt-not-filtered\" value=\"${nfValue}\">${nfLabel}</ids-list-box-option>`;\n };\n\n if (!operators.length) {\n notFilteredItemTemplate();\n } else {\n const found = operators.some((op: any) => op.value === nfValue);\n if (!found) notFilteredItemTemplate();\n operators.forEach((op: any, i: any) => {\n items += `<ids-list-box-option id=\"${id}-opt-${i}\" value=\"${op.value}\">${op.label}</ids-list-box-option>`;\n });\n }\n if (!sel) sel = operators[0];\n const value = (sel?.value || sel?.value === '') ? ` value=\"${sel.value}\"` : '';\n const isUppercase = (): boolean => {\n if (typeof column?.uppercase === 'function') return column.uppercase('header-cell', column);\n return (column?.uppercase === 'true' || column?.uppercase === true);\n };\n const uppercaseClass = isUppercase() ? ' uppercase' : '';\n\n this.#initial[column.id] = this.#initial[column.id] || {};\n if (!this.#initial[column.id].dropdown) this.#initial[column.id].dropdown = { ...sel };\n\n return `\n <ids-dropdown\n color-variant=\"${!this.root.listStyle ? 'alternate-formatter' : 'alternate-list-formatter'}\"\n label=\"${label}\"\n label-state=\"collapsed\"\n list=\"#${id}-list\"\n no-margins\n compact\n data-filter-type=\"${type}\"\n size=\"${opt.size || 'full'}\"\n id=\"${id}\"\n ${value}${disabled}${readonly}\n >\n </ids-dropdown>\n <ids-dropdown-list id=\"${id}-list\">\n <ids-list-box${uppercaseClass}>${items}</ids-list-box>\n </ids-dropdown-list>\n `;\n }\n\n /**\n * Get list of filter wrapper elements\n * @returns {Array<HTMLElement>} List of filter wrapper elements\n */\n get filterNodes() {\n return this.root?.shadowRoot?.querySelectorAll('.ids-data-grid-header-cell-filter-wrapper');\n }\n\n /**\n * Get not filter item for dropdown\n * @private\n * @param {IdsDataGridColumn} column The column info\n * @returns {object} The item\n */\n #dropdownNotFilterItem(column: IdsDataGridColumn) {\n const item = (column?.filterOptions as any)?.notFilteredItem || {};\n return { value: item.value || 'not-filtered', label: item.label || '' };\n }\n\n /**\n * Get unique id string\n * @private\n * @param {IdsDataGridColumn} column The column info\n * @returns {string} The id string\n */\n #id(column?: IdsDataGridColumn) {\n const columnId = column?.id ? `${column.id}-` : '';\n return `ids-data-grid-filter-${columnId}${this.root.cacheHash}`;\n }\n\n /**\n * Get button operators by filter type\n * @private\n * @param {string} type The filter type\n * @param {IdsDataGridColumn} column The column info\n * @returns {Array} List of button operators\n */\n #operators(type: string, column: IdsDataGridColumn): IdsDataGridFilterOperator[] {\n /**\n * Transform string to camel case\n * @param {string} val the target text\n * @returns {string} the camel case text\n */\n function toCamelCase(val: string) {\n return val.replace(/^./, val[0].toUpperCase());\n }\n\n /**\n * Transform string to operator key\n * @param {string} val the target text\n * @returns {string} the operator key\n */\n function getOperatorKey(val: string) {\n const keys = val.split('-');\n let operator = '';\n for (let keyIndex = 0; keyIndex < keys.length; keyIndex++) {\n if (keyIndex === 0) operator += `${keys[keyIndex]}`;\n else operator += `${toCamelCase(keys[keyIndex])}`;\n }\n\n return operator;\n }\n\n const ds = this.#operatorsDataset;\n\n // Localization\n for (const key in ds) {\n if (ds.hasOwnProperty(key)) {\n const val = toCamelCase(key);\n (ds as any)[key].label = this.root.localeAPI.translate(val);\n }\n }\n\n if (column?.filterConditions?.constructor === Array) {\n for (let i = 0; i < column.filterConditions.length; i++) {\n const opKey = getOperatorKey(column.filterConditions[i].value);\n if ((ds as any)[opKey]) column.filterConditions[i].label = (ds as any)[opKey].label;\n }\n\n return column.filterConditions;\n }\n\n let operators: any = [];\n\n // Collect and built, all the operators for contents type\n const contentsOperators = () => {\n const val = this.root.datasource.allData.map((row: any) => escapeHTML(row[column.id]));\n return [...new Set(val)].map((v) => ({ value: v || '', label: v || '' }));\n };\n\n switch (type) {\n case 'text':\n operators = [\n ds.contains,\n ds.doesNotContain,\n ds.equals,\n ds.doesNotEqual,\n ds.isEmpty,\n ds.isNotEmpty,\n ds.endsWith,\n ds.doesNotEndWith,\n ds.startsWith,\n ds.doesNotStartWith\n ];\n break;\n case 'decimal':\n case 'integer':\n operators = [\n ds.equals,\n ds.doesNotEqual,\n ds.isEmpty,\n ds.isNotEmpty,\n ds.lessThan,\n ds.lessOrEquals,\n ds.greaterThan,\n ds.greaterOrEquals\n ];\n break;\n case 'time':\n operators = [\n ds.equals,\n ds.doesNotEqual,\n ds.isEmpty,\n ds.isNotEmpty,\n ds.earlierThan,\n ds.earlierOrEquals,\n ds.laterThan,\n ds.laterOrEquals\n ];\n break;\n case 'checkbox':\n operators = [\n ds.all,\n ds.selected,\n ds.notSelected\n ];\n break;\n case 'contents':\n operators = contentsOperators();\n break;\n case 'date':\n operators = [\n ds.equals,\n ds.doesNotEqual,\n ds.isEmpty,\n ds.isNotEmpty,\n ds.inRange,\n ds.earlierThan,\n ds.earlierOrEquals,\n ds.laterThan,\n ds.laterOrEquals\n ];\n break;\n default:\n break;\n }\n\n return operators;\n }\n\n /**\n * Available operators for filter button.\n * @private\n * @type {object}\n */\n #operatorsDataset = {\n contains: { value: 'contains', label: 'Contains', icon: 'filter-contains' },\n doesNotContain: { value: 'does-not-contain', label: 'Does Not Contain', icon: 'filter-does-not-contain' },\n equals: { value: 'equals', label: 'Equals', icon: 'filter-equals' },\n doesNotEqual: { value: 'does-not-equal', label: 'Does Not Equals', icon: 'filter-does-not-equal' },\n isEmpty: { value: 'is-empty', label: 'Is Empty', icon: 'filter-is-empty' },\n isNotEmpty: { value: 'is-not-empty', label: 'Is Not Empty', icon: 'filter-is-not-empty' },\n endsWith: { value: 'end-with', label: 'Ends With', icon: 'filter-end-with' },\n doesNotEndWith: { value: 'does-not-end-with', label: 'Does Not End With', icon: 'filter-does-not-end-with' },\n startsWith: { value: 'start-with', label: 'Starts With', icon: 'filter-start-with' },\n doesNotStartWith: { value: 'does-not-start-with', label: 'Does Not Start With', icon: 'filter-does-not-start-with' },\n lessThan: { value: 'less-than', label: 'Less Than', icon: 'filter-less-than' },\n lessOrEquals: { value: 'less-equals', label: 'Less Or Equals', icon: 'filter-less-equals' },\n greaterThan: { value: 'greater-than', label: 'Greater Than', icon: 'filter-greater-than' },\n greaterOrEquals: { value: 'greater-equals', label: 'Greater Or Equals', icon: 'filter-greater-equals' },\n inRange: { value: 'in-range', label: 'In Range', icon: 'filter-in-range' },\n all: { value: 'selected-notselected', label: 'All', icon: 'filter-selected-notselected' },\n selected: { value: 'selected', label: 'Selected', icon: 'filter-selected' },\n notSelected: { value: 'not-selected', label: 'Not Selected', icon: 'filter-not-selected' },\n earlierThan: { value: 'earlier-than', label: 'Earlier than', icon: 'filter-less-than' },\n earlierOrEquals: { value: 'earlier-equals', label: 'Earlier than Or equals', icon: 'filter-less-equals' },\n laterThan: { value: 'later-than', label: 'Later than', icon: 'filter-greater-than' },\n laterOrEquals: { value: 'later-equals', label: 'Later than or equals', icon: 'filter-greater-equals' }\n };\n}\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/components/ids-dropdown/ids-dropdown-list.scss", "../../../../src/components/ids-dropdown/ids-dropdown-list.ts"],
4
- "sourcesContent": ["export default `/* Ids Dropdown Component */\n.validation-message {\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n display: flex;\n font-family: var(--ids-font-family-default), var(--ids-font-family-system-sans);\n margin-top: var(--ids-space-2xs);\n max-width: var(--ids-input-width-full);\n}\n.validation-message.has-custom-icon {\n color: var(--ids-icon-color-default);\n}\n.validation-message.disabled {\n color: var(--ids-input-color-text-disabled);\n}\n.validation-message .ids-icon {\n margin-inline-end: var(--ids-space-2xs);\n}\n.validation-message.alert {\n color: var(--ids-color-caution-default);\n}\n.validation-message.alert.disabled {\n color: var(--ids-color-yellow-30);\n}\n.validation-message.warning {\n color: var(--ids-color-warning-default);\n}\n.validation-message.warning.disabled {\n color: var(--ids-color-orange-30);\n}\n.validation-message.error {\n color: var(--ids-color-error-default);\n}\n.validation-message.error.disabled {\n color: var(--ids-color-red-30);\n}\n.validation-message.info {\n color: var(--ids-color-info-default);\n}\n.validation-message.info.disabled {\n color: var(--ids-color-blue-30);\n}\n.validation-message.success {\n color: var(--ids-color-success-default);\n}\n.validation-message.success.disabled {\n color: var(--ids-color-green-30);\n}\n.validation-message[hidden] {\n display: none;\n}\n\n:host ids-popup {\n max-width: var(--ids-input-width-40);\n}\n\n:host([size=xs]) ids-popup {\n max-width: var(--ids-input-width-10);\n}\n\n:host([size=sm]) ids-popup {\n max-width: calc(var(--ids-input-width-20));\n}\n\n:host([size=mm]) ids-popup {\n max-width: calc(var(--ids-input-width-30));\n}\n\n:host([size=md]) ids-popup {\n max-width: calc(var(--ids-input-width-40));\n}\n\n:host([size=lg]) ids-popup {\n max-width: calc(var(--ids-input-width-50));\n}\n\n:host([size=full]) ids-popup {\n max-width: var(--ids-input-width-full);\n}\n\n:host ids-popup,\n:host([size=full]) {\n width: 100%;\n}\n\n:host([position-style=fixed]) {\n display: block;\n}\n\n:host(.input-auto-size-false) ids-popup {\n width: fit-content;\n max-width: calc(100% - 40px);\n}\n\n:host(.input-auto-size-false) ids-popup::part(popup) {\n border-top: 1px solid var(--ids-input-color-border-focus);\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2J1aWxkcy9pbmZvci1kZXNpZ24vZW50ZXJwcmlzZS13Yy9zcmMvY29tcG9uZW50cy9pZHMtZHJvcGRvd24iLCJzb3VyY2VzIjpbImlkcy1kcm9wZG93bi1saXN0LnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy12YWxpZGF0aW9uLW1peGluLnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0FDRUE7RUNRRTtFQUNBO0VETkE7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFFQTtFQUNFOztBQUlKO0VBQ0U7O0FBRUE7RUFDRTs7QUFJSjtFQUNFOztBQUVBO0VBQ0U7O0FBSUo7RUFDRTs7QUFFQTtFQUNFOztBQUlKO0VBQ0U7O0FBRUE7RUFDRTs7QUFJSjtFQUNFOzs7QUQzREo7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7QUFBQTtFQUVFOzs7QUFHRjtFQUNFOzs7QUFHRjtFQUNFO0VBQ0E7OztBQUdGO0VBQ0UiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBJZHMgRHJvcGRvd24gQ29tcG9uZW50ICovXG5AdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy12YWxpZGF0aW9uLW1peGluJztcblxuLy8gRHJvcGRvd24gbWVudSB3aWR0aFxuOmhvc3QgaWRzLXBvcHVwIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1pZHMtaW5wdXQtd2lkdGgtNDApO1xufVxuXG46aG9zdChbc2l6ZT0neHMnXSkgaWRzLXBvcHVwIHtcbiAgbWF4LXdpZHRoOiB2YXIoLS1pZHMtaW5wdXQtd2lkdGgtMTApO1xufVxuXG46aG9zdChbc2l6ZT0nc20nXSkgaWRzLXBvcHVwIHtcbiAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC0yMCkpO1xufVxuXG46aG9zdChbc2l6ZT0nbW0nXSkgaWRzLXBvcHVwIHtcbiAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC0zMCkpO1xufVxuXG46aG9zdChbc2l6ZT0nbWQnXSkgaWRzLXBvcHVwIHtcbiAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC00MCkpO1xufVxuXG46aG9zdChbc2l6ZT0nbGcnXSkgaWRzLXBvcHVwIHtcbiAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC01MCkpO1xufVxuXG46aG9zdChbc2l6ZT0nZnVsbCddKSBpZHMtcG9wdXAge1xuICBtYXgtd2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC1mdWxsKTtcbn1cblxuOmhvc3QgaWRzLXBvcHVwLFxuOmhvc3QoW3NpemU9J2Z1bGwnXSkge1xuICB3aWR0aDogMTAwJTtcbn1cblxuOmhvc3QoW3Bvc2l0aW9uLXN0eWxlPSdmaXhlZCddKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG46aG9zdCguaW5wdXQtYXV0by1zaXplLWZhbHNlKSBpZHMtcG9wdXAge1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG59XG5cbjpob3N0KC5pbnB1dC1hdXRvLXNpemUtZmFsc2UpIGlkcy1wb3B1cDo6cGFydChwb3B1cCkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0taWRzLWlucHV0LWNvbG9yLWJvcmRlci1mb2N1cyk7XG59XG4iLCJAdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucycgYXMgbWl4aW5zO1xuXG4udmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgQGluY2x1ZGUgbWl4aW5zLmFudGlhbGlhc2VkKCk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWlkcy1mb250LWZhbWlseS1kZWZhdWx0KSwgdmFyKC0taWRzLWZvbnQtZmFtaWx5LXN5c3RlbS1zYW5zKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gIG1heC13aWR0aDogdmFyKC0taWRzLWlucHV0LXdpZHRoLWZ1bGwpO1xuXG4gICYuaGFzLWN1c3RvbS1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWljb24tY29sb3ItZGVmYXVsdCk7XG4gIH1cblxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWlucHV0LWNvbG9yLXRleHQtZGlzYWJsZWQpO1xuICB9XG5cbiAgLmlkcy1pY29uIHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gIH1cblxuICAmLmFsZXJ0IHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWNvbG9yLWNhdXRpb24tZGVmYXVsdCk7XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3IteWVsbG93LTMwKTtcbiAgICB9XG4gIH1cblxuICAmLndhcm5pbmcge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3Itd2FybmluZy1kZWZhdWx0KTtcblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1jb2xvci1vcmFuZ2UtMzApO1xuICAgIH1cbiAgfVxuXG4gICYuZXJyb3Ige1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3ItZXJyb3ItZGVmYXVsdCk7XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3ItcmVkLTMwKTtcbiAgICB9XG4gIH1cblxuICAmLmluZm8ge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3ItaW5mby1kZWZhdWx0KTtcblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1jb2xvci1ibHVlLTMwKTtcbiAgICB9XG4gIH1cblxuICAmLnN1Y2Nlc3Mge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3Itc3VjY2Vzcy1kZWZhdWx0KTtcblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1jb2xvci1ncmVlbi0zMCk7XG4gICAgfVxuICB9XG5cbiAgJltoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBCcmVha3BvaW50cyAtIHRoaXMgY2FudCBiZSB0b2tlbnNcbiRicmVha3BvaW50LXh4bDogMTQ0MHB4O1xuJGJyZWFrcG9pbnQteGw6IDEyODBweDtcbiRicmVha3BvaW50LWxnOiAxMDI0cHg7XG4kYnJlYWtwb2ludC1tZDogODQwcHg7XG4kYnJlYWtwb2ludC1zbTogNjAwcHg7XG4kYnJlYWtwb2ludC14czogMzIwcHg7XG5cbi8vIFNldHMgVGV4dCBBbnRpYWxpYXNpbmdcbkBtaXhpbiBhbnRpYWxpYXNlZCB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyB2ZW5kb3IgcHJlZml4ZWQgdHJhbnNpdGlvbnMgZm9yIHJlZ3VsYXIgYXR0cmlidXRlcyAobm9uLXZlbmRvciBwcmVmaXhlZClcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9ucy1saXN0Li4uKSB7XG4gIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzIHtcbiAgICAjeyRwcmVmaXh9dHJhbnNpdGlvbjogJHRyYW5zaXRpb25zLWxpc3Q7XG4gIH1cbn1cblxuLy8gbWFrZSB0aGUgdGV4dCBpbnZpc2libGUgdmlzdWFsbHkgYnV0IHJlYWRhYmxlIGJ5IHNjcmVlbiByZWFkZXJzXG5AbWl4aW4gYXVkaWJsZSgpIHtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgaGVpZ2h0OiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWluLWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuIl19 */`;\n", "import { customElement, scss } from '../../core/ids-decorators';\nimport { attributes } from '../../core/ids-attributes';\nimport { checkOverflow, getClosest } from '../../utils/ids-dom-utils/ids-dom-utils';\nimport { stringToBool } from '../../utils/ids-string-utils/ids-string-utils';\n\nimport IdsPickerPopup from '../ids-popup/ids-picker-popup';\nimport IdsColorVariantMixin from '../../mixins/ids-color-variant-mixin/ids-color-variant-mixin';\nimport IdsFieldHeightMixin from '../../mixins/ids-field-height-mixin/ids-field-height-mixin';\nimport IdsKeyboardMixin from '../../mixins/ids-keyboard-mixin/ids-keyboard-mixin';\nimport IdsLocaleMixin from '../../mixins/ids-locale-mixin/ids-locale-mixin';\nimport IdsDropdownAttributeMixin from './ids-dropdown-attributes-mixin';\nimport { IdsDropdownColorVariants } from './ids-dropdown-common';\n\nimport type IdsDropdown from './ids-dropdown';\nimport type IdsListBox from '../ids-list-box/ids-list-box';\nimport type IdsListBoxOption from '../ids-list-box/ids-list-box-option';\nimport type IdsTooltip from '../ids-tooltip/ids-tooltip';\n\nimport styles from './ids-dropdown-list.scss';\nimport debounce from '../../utils/ids-debounce-utils/ids-debounce-utils';\nimport IdsGlobal from '../ids-global/ids-global';\n\nconst Base = IdsDropdownAttributeMixin(\n IdsColorVariantMixin(\n IdsLocaleMixin(\n IdsFieldHeightMixin(\n IdsKeyboardMixin(\n IdsPickerPopup\n )\n )\n )\n )\n);\n\n/**\n * IDS Dropdown List Component\n * @type {IdsDropdownList}\n * @inherits IdsPickerPopup\n * @mixes IdsLocaleMixin\n * @part dropdown-list - the dropdown list element\n */\n@customElement('ids-dropdown-list')\n@scss(styles)\nexport default class IdsDropdownList extends Base {\n isMultiSelect?: boolean;\n\n listBox?: IdsListBox | null;\n\n lastHovered: IdsListBoxOption | null = null;\n\n // For position style fixed dropdowns, live refresh dropdown dimensions\n dropdownResizeObserver: ResizeObserver = new ResizeObserver(debounce((entries: ResizeObserverEntry[]) => {\n if (this.autoSize) {\n const target = entries[0].target;\n const dropdownEl = this.dropdownEl;\n const inputAutoSize = dropdownEl?.inputAutoSize !== false;\n\n if (target.tagName === 'IDS-DROPDOWN-LIST') {\n const fieldContainer = this.dropdownEl.getInputFieldContainer();\n if (fieldContainer) {\n const fieldRect = fieldContainer.getBoundingClientRect();\n\n if (inputAutoSize) {\n this.popup?.style.setProperty('max-width', `${fieldRect.width}px`);\n this.popup?.style.setProperty('width', `${fieldRect.width}px`);\n if (this.localeAPI.isRTL()) this.popup?.style.setProperty('left', `${fieldRect.left}px`);\n } else {\n this.popup?.style.setProperty('max-width', 'calc(100% - 40px)');\n this.popup?.style.setProperty('width', 'fit-content');\n }\n }\n } else if (target.className.includes('field-container')) {\n const targetRect = target.getBoundingClientRect();\n if (inputAutoSize) {\n this.popup?.style.setProperty('max-width', `${targetRect.width}px`);\n this.popup?.style.setProperty('width', `${targetRect.width}px`);\n } else {\n this.popup?.style.setProperty('max-width', 'calc(100% - 40px)');\n this.popup?.style.setProperty('width', 'fit-content');\n }\n }\n } else {\n const rect = entries[0].contentRect;\n const fieldContainer = this.dropdownEl.getInputFieldContainer();\n const fieldRec = fieldContainer?.getBoundingClientRect();\n\n if (fieldRec && fieldRec.width < rect.width) {\n this.popup?.style.setProperty('width', `${fieldRec.width}px`);\n } else {\n this.popup?.style.setProperty('width', `${rect.width}px`);\n }\n }\n }, 30));\n\n constructor() {\n super();\n }\n\n /**\n * Return the attributes we handle as getters/setters\n * @returns {Array} The attributes in an array\n */\n static get attributes() {\n return [\n ...super.attributes,\n attributes.POSITION_STYLE\n ];\n }\n\n /**\n * List of available color variants for this component\n * @returns {Array<string>}\n */\n colorVariants: Array<string> = IdsDropdownColorVariants;\n\n template() {\n const autoSize = this.autoSize ? `auto-size=\"${this.autoSize}\"` : '';\n return `<ids-popup class=\"ids-dropdown-list\" ${autoSize} type=\"dropdown\" part=\"dropdown-list\" y=\"-1\">\n <slot slot=\"content\"></slot>\n </ids-popup>`;\n }\n\n /**\n * Invoked each time the custom element is appended into a document-connected element.\n */\n connectedCallback() {\n super.connectedCallback();\n this.configureListBox();\n this.attachEventHandlers();\n this.#setPreselectedLabel();\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n this.listBox = null;\n this.lastHovered = null;\n this.dropdownResizeObserver.disconnect();\n }\n\n /**\n * @returns {IdsDropdown} reference to the IdsDropdown element this list should be attached to\n */\n get dropdownEl(): IdsDropdown {\n let target: IdsDropdown;\n if (this.target?.tagName === 'IDS-DROPDOWN') {\n target = (this.target as IdsDropdown);\n } else {\n target = ((this.parentElement!.parentNode! as ShadowRoot).host! as IdsDropdown);\n }\n return target;\n }\n\n get localeAPI() {\n return IdsGlobal.getLocale();\n }\n\n onHide() {\n if (this.listBox) this.listBox.style.height = '';\n this.setAriaOnMenuClose();\n this.lastHovered = null;\n this.dropdownResizeObserver.disconnect();\n }\n\n onShow() {\n this.scrollIntoView({ block: 'nearest' });\n this.configureListBox();\n this.configurePopup();\n this.setAriaOnMenuOpen();\n\n if (this.value || typeof this.value === 'string') this.selectOption(this.value);\n\n if (this.positionStyle === 'fixed') {\n if (!this.autoSize) this.popup?.style.setProperty('width', `${this.clientWidth}px`);\n this.dropdownResizeObserver.observe(this);\n const fieldContainer = this.dropdownEl.getInputFieldContainer();\n if (fieldContainer) this.dropdownResizeObserver.observe(fieldContainer);\n } else {\n this.popup?.style.removeProperty('width');\n }\n }\n\n onTargetChange() {\n const id = this.getAttribute(attributes.ID);\n if (id) this.target?.setAttribute(attributes.LIST, `#${id}`);\n }\n\n #setPreselectedLabel() {\n if (!this.value) return;\n\n const selectedOptionText = this.getOption(this.value)?.textContent;\n const dropdownEl = this.dropdownEl;\n const dropdownInput = dropdownEl?.input?.input;\n\n if (selectedOptionText && dropdownEl && dropdownInput) {\n dropdownInput.value = selectedOptionText;\n }\n }\n\n private attachEventHandlers() {\n this.offEvent('click.dropdown-list-box');\n this.onEvent('click.dropdown-list-box', this, (e: any) => {\n let target: HTMLElement | null = (e.target as HTMLElement);\n\n if (target && target.nodeName !== 'IDS-LIST-BOX-OPTION') {\n target = target.closest('ids-list-box-option');\n }\n\n if (target) {\n // Excluding group labels\n if (target.hasAttribute(attributes.GROUP_LABEL)) return;\n\n this.value = target.getAttribute(attributes.VALUE) || '';\n\n this.triggerSelectedEvent();\n }\n });\n\n if (this.dropdownEl?.tooltip) {\n this.offEvent('mouseover.dropdown-list-box');\n this.onEvent('mouseover.dropdown-list-box', this.listBox, (e: any) => {\n let target: HTMLElement | null = (e.target as HTMLElement);\n\n if (target && target.nodeName !== 'IDS-LIST-BOX-OPTION') {\n target = target.closest('ids-list-box-option');\n }\n\n if (target) {\n this.lastHovered = (target as IdsListBoxOption);\n this.dropdownEl?.selectTooltip?.(this.lastHovered);\n }\n });\n }\n }\n\n /**\n * Triggers a `selected` event that propagates to the target element (usually an IdsDropdown)\n * @param {CustomEvent} [e] optional event handler to pass arguments\n * @returns {void}\n */\n private triggerSelectedEvent(e?: CustomEvent): void {\n let args: any;\n if (e) args = e;\n else {\n args = {\n bubbles: true,\n detail: {\n elem: this,\n label: this.selected?.textContent,\n selectedElem: this.selected,\n value: this.value,\n }\n };\n }\n\n if (this.target) {\n const event = new CustomEvent('selected', args);\n this.target.dispatchEvent(event);\n }\n }\n\n private initialY: number | null = null; // Store the initial Y position\n\n configurePopup() {\n // External dropdown lists configured for \"full\" size need extra help\n // determining what size matches their target element.\n if (this.size === 'full' && this.target && !this.parentElement?.classList.contains('ids-dropdown')) {\n const targetWidth = `${Math.round((this.target as HTMLElement).getBoundingClientRect().width * 10) / 10}px`;\n this.style.width = targetWidth;\n if (this.popup) {\n this.popup.style.maxWidth = targetWidth;\n this.popup.style.width = targetWidth;\n }\n }\n\n if (this.popup) {\n if (!this.target) {\n this.popup.alignTarget = this;\n }\n this.popup.type = 'dropdown';\n this.popup.container?.classList.add('dropdown');\n this.popup.align = 'bottom, left';\n this.popup.arrow = 'none';\n\n const closestDataGrid = getClosest(this, 'ids-data-grid');\n // Fix aria if the menu is closed\n if (!this.popup.visible) {\n this.popup.y = -1;\n this.popup.x = 0;\n this.setAriaOnMenuClose();\n if (this.positionStyle === 'absolute') {\n this.popup.onPlace = (popupRect: DOMRect) => popupRect;\n }\n } else if (this.popup.visible && this.positionStyle === 'fixed') {\n this.popup.setAttribute(attributes.POSITION_STYLE, 'fixed');\n\n if (closestDataGrid && !this.getAttribute('trigger-elem')) {\n return;\n }\n\n this.configurePopupPlacement();\n } else if (this.popup.visible) {\n this.popup.setPosition(0, -1, false, true);\n }\n }\n }\n\n /**\n * Configures the popup placement of dropdown.\n */\n configurePopupPlacement() {\n if (this.popup) {\n const input = (this.parentNode?.querySelector('ids-trigger-field')?.shadowRoot?.querySelector('.field-container') as HTMLDivElement);\n let y = (input?.getBoundingClientRect().bottom || 0) - 1;\n const x = (input?.getBoundingClientRect().x || 0);\n const root = (this.getRootNode() as any).host;\n\n // Store the initial y position only once\n if (this.initialY === null) {\n this.initialY = y;\n }\n this.popup.onPlace = (popupRect: DOMRect, domElement: HTMLElement) => {\n const inputRect = input?.getBoundingClientRect();\n if (root.tagName.toLowerCase().includes('multiselect')) {\n const fieldContainer = root.getInputFieldContainer();\n const inputAutoSize = this.dropdownEl?.inputAutoSize !== false;\n\n popupRect.x = fieldContainer?.getBoundingClientRect().x || popupRect.x;\n if (this.popup && inputAutoSize) {\n this.popup.style.width = `${fieldContainer?.getBoundingClientRect().width}px`;\n } else if (this.popup && !inputAutoSize) {\n this.popup.style.setProperty('max-width', '95vw');\n this.popup.style.setProperty('width', 'auto');\n }\n }\n\n const willOverflowBottom = () => (inputRect.bottom || 0) + Number(this.popup?.offsetHeight)\n > Number(window?.visualViewport?.height || 0);\n const mobileKeyboardHeightOffset = ((document.body?.scrollHeight || 0)\n - (window?.visualViewport?.height || 0));\n const modalParent = getClosest(this.popup, 'ids-modal, ids-action-panel');\n const willOverFlowTop = () => ((inputRect.top || 0) - Number(this.popup?.offsetHeight)) < 0;\n\n if (modalParent) {\n (popupRect.x as string | number) = 'unset';\n (popupRect.y as string | number) = 'unset';\n if (!this.hasAttribute(attributes.NO_MARGINS)) domElement.style.marginTop = '-17px';\n const scrollTop = modalParent.container?.querySelector('.ids-modal-content').scrollTop || 0;\n if (scrollTop && scrollTop > 0) domElement.style.marginTop = `-${17 + scrollTop}px`;\n if (willOverflowBottom() && !willOverFlowTop()) {\n const popupYCoords = inputRect.top - (this.popup?.offsetHeight || 0);\n const modalGapToBody = (window?.visualViewport?.height || 0) - modalParent.container.querySelector('.ids-modal-container').getBoundingClientRect().height;\n domElement.style.marginTop = '0px';\n popupRect.y = popupYCoords - (modalGapToBody / 2) + (mobileKeyboardHeightOffset / 2) + 1;\n this.popup?.container?.classList.add('flipped');\n } else if (willOverflowBottom()) {\n const availableSpace = Number(window?.visualViewport?.height || 0)\n - (inputRect.bottom || 0);\n this.popup!.maxHeight = availableSpace;\n }\n return popupRect;\n }\n\n y = (inputRect.bottom) + (window?.visualViewport?.offsetTop || 0);\n popupRect.y = y + (this.compact || this.fieldHeight === 'xs' ? 1 : 0);\n if (this.localeAPI.isRTL()) {\n popupRect.x = (inputRect.right || 0) - (this.popup?.offsetWidth || 0);\n } else {\n popupRect.x = x;\n }\n const overflowBottom = willOverflowBottom();\n const overflowTop = willOverFlowTop();\n if (this.listBox) this.listBox.style.height = '';\n const spaceOnBottom = Number(window?.visualViewport?.height || 0) - (inputRect.bottom || 0);\n const spaceOnTop = (inputRect.top || 0);\n // Flip it up\n if (overflowBottom && !overflowTop) {\n popupRect.y = (spaceOnTop + (window?.visualViewport?.offsetTop || 0)) - Number(this.popup?.offsetHeight);\n this.popup?.container?.classList.add('flipped');\n if (this.listBox) this.listBox.style.height = '';\n } else if (!overflowBottom && overflowTop) {\n const newY = inputRect.bottom + (window?.visualViewport?.offsetTop || 0);\n popupRect.y = newY;\n } else if (overflowBottom && overflowTop) {\n if (spaceOnTop > spaceOnBottom) {\n const newHeight = (window?.visualViewport?.height || 0) - inputRect.top;\n this.popup?.container?.classList.add('flipped');\n if (this.listBox) this.listBox.style.height = `${newHeight}px`;\n popupRect.y = (spaceOnTop + (window?.visualViewport?.offsetTop || 0)) - newHeight;\n this.popup?.container?.classList.add('flipped');\n } else {\n const newHeight = spaceOnBottom - 10;\n const newY = inputRect.bottom + (window?.visualViewport?.offsetTop || 0);\n if (this.listBox) this.listBox.style.height = `${newHeight}px`;\n popupRect.y = newY;\n }\n } else {\n this.popup?.container?.classList.remove('flipped');\n }\n return popupRect;\n };\n\n if (!root.tagName.toLowerCase().includes('multiselect')) this.popup.setPosition(x, y, false, true);\n }\n }\n\n /**\n * Configures the IdsListBox element associated with this IdsDropdownList.\n */\n configureListBox() {\n this.listBox = this.querySelector<IdsListBox>('ids-list-box');\n\n // If no list box element is present as a direct descendant,\n // assume usage inside IdsDropdown and search for slotted ListBox\n if (!this.listBox) {\n if (this.children[0]?.tagName === 'SLOT') {\n this.listBox = (this.children[0] as HTMLSlotElement).assignedElements()?.[0] as IdsListBox;\n }\n }\n\n if (this.autoSize) this.listBox?.setAttribute(attributes.AUTO_SIZE, this.autoSize.toString());\n\n if (this.listBox && this.dropdownEl?.inputAutoSize === false) {\n this.listBox.setAttribute(attributes.INPUT_AUTO_SIZE, 'false');\n }\n\n // IdsListBox has styles that are dependent on field height/compact settings,\n // but doesn't implement IdsFieldHeightMixin, so these are passed here.\n if (this.listBox) {\n if (this.compact && !this.listBox?.hasAttribute(attributes.COMPACT)) {\n this.listBox.setAttribute(attributes.COMPACT, 'true');\n }\n\n if (this.listBox.maxHeight && this.popup) {\n this.popup.maxHeight = this.listBox.maxHeight;\n }\n }\n\n this.syncRowIndex();\n }\n\n /**\n * Synchronizes row index values for all list box options to maintain proper sort order\n * @returns {void}\n */\n syncRowIndex() {\n if (this.listBox?.options?.length) {\n this.listBox.options.forEach((option: IdsListBoxOption, index) => {\n if (option.rowIndex >= 0) return;\n option.rowIndex = index; // row-index used to keep track of the sort-order of options\n });\n }\n }\n\n /**\n * Add internal aria attributes while open\n * @private\n * @returns {void}\n */\n private setAriaOnMenuOpen(): void {\n this.setAttribute('aria-expanded', 'true');\n\n // Add aria for the open state\n const selected = this.selectedOption || this.querySelector('ids-list-box-option:not([group-label])');\n this.listBox?.setAttribute('tabindex', '0');\n\n if (selected && this.value) {\n this.selectOption(selected);\n }\n }\n\n /**\n * Adds internal aria attributes while closed\n * @returns {void}\n */\n setAriaOnMenuClose() {\n this.removeAttribute('aria-expanded');\n this.listBox?.removeAttribute('tabindex');\n\n const selected = this.selected;\n\n if (selected) {\n this.deselectOption(selected);\n }\n }\n\n /**\n * Returns the currently available options\n * @returns {Array<any>} the array of options\n */\n get options() {\n return this.querySelectorAll<IdsListBoxOption>('ids-list-box-option');\n }\n\n /**\n * Returns the selected Listbox option based on the Dropdown's value.\n * @returns {IdsListBoxOption| null} the selected option\n */\n get selectedOption(): IdsListBoxOption | null {\n return this.querySelector(`ids-list-box-option[value=\"${this.value}\"]`);\n }\n\n /**\n * Returns the currently-selected Listbox option\n * (may be different from the Dropdown's value because of user input)\n * @readonly\n * @returns {IdsListBoxOption|null} Reference to a selected Listbox option if one is present\n */\n get selected(): IdsListBoxOption | null {\n const child = this.children[0];\n if (child?.tagName === 'SLOT') {\n return this.listBox?.querySelector('ids-list-box-option.is-selected') || null;\n }\n return this.querySelector('ids-list-box-option.is-selected') || null;\n }\n\n /**\n * Set typeahead attribute\n * @param {string | boolean | null} value typeahead value\n */\n set typeahead(value: string | boolean | null) {\n const val = stringToBool(value);\n\n if (val) {\n this.setAttribute(attributes.TYPEAHEAD, String(val));\n } else {\n this.removeAttribute(attributes.TYPEAHEAD);\n }\n\n this.container?.classList.toggle('typeahead', val);\n }\n\n /**\n * Get the typeahead attribute\n * @returns {boolean} typeahead attribute value converted to boolean\n */\n get typeahead(): boolean {\n return stringToBool(this.getAttribute(attributes.TYPEAHEAD));\n }\n\n set positionStyle(val: 'fixed' | 'absolute' | null) {\n this.setAttribute(attributes.POSITION_STYLE, val === 'fixed' ? 'fixed' : 'absolute');\n this.container?.style.setProperty('position', val === 'fixed' ? 'fixed' : 'absolute');\n this.popup?.setAttribute(attributes.POSITION_STYLE, this.positionStyle);\n }\n\n get positionStyle(): 'fixed' | 'absolute' {\n return this.getAttribute(attributes.POSITION_STYLE) === 'fixed' ? 'fixed' : 'absolute';\n }\n\n /**\n * Set the value of the dropdown using the value/id attribute if present\n * @param {string} value The value/id to use\n */\n set value(value: string | null | undefined) {\n let selector = `ids-list-box-option[value=\"${value}\"]`;\n const isCombobox = this.classList.contains('is-combobox');\n\n if (value === ' ' || value === null) selector = `ids-list-box-option:not([value])`;\n else if (isCombobox) selector = `ids-list-box-option`;\n const elem = this.listBox?.querySelector<IdsListBoxOption>(selector);\n if (!elem) return;\n\n this.clearSelected();\n this.selectOption(elem);\n this.setAttribute(attributes.VALUE, String(value));\n }\n\n get value(): string | null | undefined {\n return this.getAttribute(attributes.VALUE);\n }\n\n /**\n * Set the auto-size of input\n * @param {string} value The value of auto-size\n */\n set autoSize(value: string) {\n this.setAttribute(attributes.AUTO_SIZE, value);\n }\n\n get autoSize(): boolean {\n return stringToBool(this.getAttribute(attributes.AUTO_SIZE));\n }\n\n /**\n * Remove the aria and state from the currently selected element\n */\n clearSelected() {\n const option = this.listBox?.querySelector<IdsListBoxOption>('ids-list-box-option[aria-selected]');\n this.deselectOption(option);\n }\n\n /**\n * Gets a reference to an IdsDropdownList option based on a provided value\n * @param {string} val referenced value\n * @returns {IdsListBoxOption | null} element representing the provided value\n */\n getOption(val: string) {\n return this.listBox?.querySelector<IdsListBoxOption>(`ids-list-box-option[value=\"${val}\"]`);\n }\n\n /**\n * Set the aria and state on the element\n * @param {IdsListBoxOption | string} option the option to select\n * @private\n */\n selectOption(option: IdsListBoxOption | string) {\n if (!this?.popup?.visible) return;\n\n let targetOption: IdsListBoxOption | undefined | null;\n if (typeof option === 'string') {\n targetOption = this.getOption(option);\n } else {\n targetOption = option;\n }\n if (!targetOption) return;\n\n targetOption.setAttribute('aria-selected', 'true');\n targetOption.classList.add('is-selected');\n targetOption.setAttribute('tabindex', '0');\n\n const optionIcon = targetOption.querySelector('ids-icon');\n if (optionIcon) {\n const color = optionIcon.getAttribute('color');\n if (color) {\n optionIcon.setAttribute('data-original-color', color);\n optionIcon.removeAttribute('color');\n }\n }\n\n targetOption.focus();\n\n if (targetOption.id) {\n this.listBox?.setAttribute('aria-activedescendant', targetOption.id);\n }\n }\n\n /**\n * Removes selected attributes from an option\n * @param {HTMLElement} option element to remove attributes\n */\n deselectOption(option: HTMLElement | undefined | null) {\n option?.removeAttribute('aria-selected');\n option?.classList.remove('is-selected');\n option?.setAttribute('tabindex', '-1');\n\n const optionIcon = option?.querySelector('ids-icon');\n if (optionIcon) {\n const originalColor = optionIcon.getAttribute('data-original-color');\n if (originalColor) {\n optionIcon.setAttribute('color', originalColor);\n }\n }\n }\n\n onAllowBlankChange(val: boolean) {\n if (val) this.insertBlank();\n else this.removeBlank();\n }\n\n onClearableTextChange() {\n if (this.allowBlank) this.insertBlank();\n }\n\n onColorVariantRefresh(val: string | null) {\n if (this.popup && val?.length) {\n this.popup.type = val;\n }\n }\n\n /**\n * Insert blank option into list box\n */\n private insertBlank(): void {\n const list = this.listBox;\n const blankOption = `<ids-list-box-option value=\"blank\" aria-label=\"Blank\">${this.clearableText ?? '&nbsp;'}</ids-list-box-option>`;\n this.removeBlank();\n list?.insertAdjacentHTML('afterbegin', blankOption);\n }\n\n /**\n * Remove blank options from list box\n */\n private removeBlank(): void {\n this.getOption('blank')?.remove();\n }\n\n /**\n * Refreshes the state of the \"blank\" option in the Dropdown list\n * @returns {void}\n */\n configureBlank() {\n if (this.allowBlank) this.insertBlank();\n else this.removeBlank();\n }\n\n onFieldHeightChange(val: string) {\n const attr = val === attributes.COMPACT ? { name: attributes.COMPACT, val: '' } : { name: attributes.FIELD_HEIGHT, val };\n if (val) {\n this.listBox?.setAttribute(attr.name, attr.val);\n } else {\n this.listBox?.removeAttribute(attributes.COMPACT);\n this.listBox?.removeAttribute(attributes.FIELD_HEIGHT);\n }\n }\n\n onSizeChange(value: string) {\n if (value) this.listBox?.setAttribute(attributes.SIZE, value);\n else this.listBox?.removeAttribute(attributes.SIZE);\n }\n\n /**\n * Uses a currently-highlighted list item to \"navigate\" a specified number\n * of steps to another list item, highlighting it.\n * @param {number} [amt] positive/negative/0 value\n * @returns {Element | null} the item that will be highlighted\n */\n navigate(amt = 0) {\n const selected = this.selected;\n const next = selected?.nextElementSibling;\n const prev = selected?.previousElementSibling;\n let currentItem: Element | null = null;\n\n if (amt > 0 && next) {\n if (next.hasAttribute(attributes.GROUP_LABEL) && !next.nextElementSibling) return currentItem;\n currentItem = next.hasAttribute(attributes.GROUP_LABEL) ? next.nextElementSibling : next;\n }\n\n if (amt < 0 && prev) {\n if (prev.hasAttribute(attributes.GROUP_LABEL) && !prev.previousElementSibling) return currentItem;\n currentItem = prev.hasAttribute(attributes.GROUP_LABEL) ? prev.previousElementSibling : prev;\n }\n\n if (currentItem) {\n this.deselectOption(selected);\n this.selectOption(currentItem as IdsListBoxOption);\n }\n\n return currentItem;\n }\n\n /**\n * Performs a \"selection\" on the list and notifies the Dropdown component\n */\n select() {\n const value = this.selected?.getAttribute(attributes.VALUE) || '';\n this.value = value;\n this.triggerSelectedEvent();\n }\n\n canTooltipShow(tooltipEl: IdsTooltip, tooltipContent: string) {\n if (tooltipContent && this.lastHovered) {\n return checkOverflow(this.lastHovered) || false;\n }\n return false;\n }\n}\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/components/ids-global/ids-global.ts"],
4
- "sourcesContent": ["/* eslint-disable @typescript-eslint/ban-types */\n/**\n * IDS Global Functions / Instances / And Utils Exposed to the end user.\n */\nimport { IdsDeferred } from '../../utils/ids-deferred-utils/ids-deferred-utils';\nimport { version } from '../../core/ids-attributes';\nimport IdsLocale from '../ids-locale/ids-locale';\nimport IdsPersonalize from '../ids-personalize/ids-personalize';\n\ndeclare global {\n interface Window {\n IdsGlobal: {\n locale?: IdsLocale;\n themeLoaded?: IdsDeferred;\n themeName?: string;\n themePath?: string;\n version?: string;\n personalize?: IdsPersonalize;\n customIconData?: object;\n }\n }\n}\n\nif (typeof window !== 'undefined') {\n window.IdsGlobal ??= {\n version,\n locale: new IdsLocale(),\n personalize: new IdsPersonalize(),\n themeName: '',\n themePath: ''\n };\n}\n\nclass IdsGlobal {\n /**\n * Used to hold the single Locale instance\n * @returns {IdsLocale} the locale object\n */\n static getLocale(): IdsLocale {\n if (!window.IdsGlobal.locale) {\n window.IdsGlobal.locale = new IdsLocale();\n }\n return window.IdsGlobal.locale;\n }\n\n /**\n * Used for a global theme event\n * @returns {IdsDeferred} the deferred object\n */\n static onThemeLoaded(): IdsDeferred {\n if (!window.IdsGlobal.themeLoaded) {\n window.IdsGlobal.themeLoaded = new IdsDeferred();\n }\n\n return window.IdsGlobal.themeLoaded;\n }\n\n static get personalize(): IdsPersonalize {\n return window.IdsGlobal.personalize!;\n }\n\n static get version(): string {\n return IdsGlobal.version;\n }\n\n /* Used to set the theme name */\n static get themeName(): string {\n return window.IdsGlobal.themeName || '';\n }\n\n static set themeName(value: string) {\n window.IdsGlobal.themeName = value;\n }\n\n /* Used to correct the theme path to a specific place */\n static get themePath(): string {\n return window.IdsGlobal.themePath || '';\n }\n\n static set themePath(value: string) {\n window.IdsGlobal.themePath = value;\n }\n\n /* Used to hold custom icon json */\n static set customIconData(json: object | undefined) {\n window.IdsGlobal.customIconData = json;\n }\n\n static get customIconData(): object | undefined {\n return window.IdsGlobal.customIconData;\n }\n}\n\nexport default IdsGlobal;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAuBA,IAAI,OAAO,WAAW,aAAa;AACjC,SAAO,cAAc;AAAA,IACnB;AAAA,IACA,QAAQ,IAAI,mBAAU;AAAA,IACtB,aAAa,IAAI,wBAAe;AAAA,IAChC,WAAW;AAAA,IACX,WAAW;AAAA,EACb;AACF;AAEA,IAAM,YAAN,MAAM,WAAU;AAAA;AAAA;AAAA;AAAA;AAAA,EAKd,OAAO,YAAuB;AAC5B,QAAI,CAAC,OAAO,UAAU,QAAQ;AAC5B,aAAO,UAAU,SAAS,IAAI,mBAAU;AAAA,IAC1C;AACA,WAAO,OAAO,UAAU;AAAA,EAC1B;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,OAAO,gBAA6B;AAClC,QAAI,CAAC,OAAO,UAAU,aAAa;AACjC,aAAO,UAAU,cAAc,IAAI,YAAY;AAAA,IACjD;AAEA,WAAO,OAAO,UAAU;AAAA,EAC1B;AAAA,EAEA,WAAW,cAA8B;AACvC,WAAO,OAAO,UAAU;AAAA,EAC1B;AAAA,EAEA,WAAW,UAAkB;AAC3B,WAAO,WAAU;AAAA,EACnB;AAAA;AAAA,EAGA,WAAW,YAAoB;AAC7B,WAAO,OAAO,UAAU,aAAa;AAAA,EACvC;AAAA,EAEA,WAAW,UAAU,OAAe;AAClC,WAAO,UAAU,YAAY;AAAA,EAC/B;AAAA;AAAA,EAGA,WAAW,YAAoB;AAC7B,WAAO,OAAO,UAAU,aAAa;AAAA,EACvC;AAAA,EAEA,WAAW,UAAU,OAAe;AAClC,WAAO,UAAU,YAAY;AAAA,EAC/B;AAAA;AAAA,EAGA,WAAW,eAAe,MAA0B;AAClD,WAAO,UAAU,iBAAiB;AAAA,EACpC;AAAA,EAEA,WAAW,iBAAqC;AAC9C,WAAO,OAAO,UAAU;AAAA,EAC1B;AACF;AAEA,IAAO,qBAAQ;",
6
- "names": []
7
- }