@descope/web-components-ui 1.32.0 → 1.33.0

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 (321) hide show
  1. package/dist/cjs/index.cjs.js +481 -364
  2. package/dist/cjs/index.cjs.js.map +1 -1
  3. package/dist/index.esm.js +524 -438
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/umd/1408.js +382 -0
  6. package/dist/umd/1408.js.LICENSE.txt +17 -0
  7. package/dist/umd/1408.js.map +1 -0
  8. package/dist/umd/{9243.js → 1519.js} +7 -6
  9. package/dist/umd/1519.js.map +1 -0
  10. package/dist/umd/189.js +109 -276
  11. package/dist/umd/189.js.LICENSE.txt +12 -0
  12. package/dist/umd/189.js.map +1 -0
  13. package/dist/umd/{7979.js → 1899.js} +11 -10
  14. package/dist/umd/1899.js.map +1 -0
  15. package/dist/umd/{1172.js → 1995.js} +10 -9
  16. package/dist/umd/1995.js.map +1 -0
  17. package/dist/umd/2540.js +2 -1
  18. package/dist/umd/2540.js.map +1 -0
  19. package/dist/umd/2672.js +2 -0
  20. package/dist/umd/2672.js.map +1 -0
  21. package/dist/umd/2739.js +2 -0
  22. package/dist/umd/2739.js.map +1 -0
  23. package/dist/umd/{2570.js → 2894.js} +6 -5
  24. package/dist/umd/2894.js.map +1 -0
  25. package/dist/umd/{404.js → 3620.js} +9 -8
  26. package/dist/umd/3620.js.map +1 -0
  27. package/dist/umd/{4455.js → 384.js} +8 -7
  28. package/dist/umd/384.js.map +1 -0
  29. package/dist/umd/4467.js +3 -0
  30. package/dist/umd/4467.js.map +1 -0
  31. package/dist/umd/{4127.js → 4518.js} +11 -10
  32. package/dist/umd/4518.js.map +1 -0
  33. package/dist/umd/{1902.js → 4550.js} +7 -6
  34. package/dist/umd/4550.js.map +1 -0
  35. package/dist/umd/{4554.js → 4623.js} +7 -6
  36. package/dist/umd/4623.js.map +1 -0
  37. package/dist/umd/{742.js → 4914.js} +3 -2
  38. package/dist/umd/4914.js.map +1 -0
  39. package/dist/umd/{9478.js → 513.js} +6 -5
  40. package/dist/umd/513.js.map +1 -0
  41. package/dist/umd/{201.js → 5260.js} +6 -5
  42. package/dist/umd/5260.js.map +1 -0
  43. package/dist/umd/5414.js +2 -1
  44. package/dist/umd/5414.js.map +1 -0
  45. package/dist/umd/5648.js +110 -0
  46. package/dist/umd/5648.js.map +1 -0
  47. package/dist/umd/5780.js +2 -0
  48. package/dist/umd/5780.js.map +1 -0
  49. package/dist/umd/{5563.js → 6227.js} +6 -5
  50. package/dist/umd/6227.js.map +1 -0
  51. package/dist/umd/6424.js +149 -0
  52. package/dist/umd/6424.js.map +1 -0
  53. package/dist/umd/{7097.js → 6649.js} +6 -5
  54. package/dist/umd/6649.js.map +1 -0
  55. package/dist/umd/676.js +3 -0
  56. package/dist/umd/676.js.map +1 -0
  57. package/dist/umd/{1738.js → 7092.js} +2 -1
  58. package/dist/umd/7092.js.map +1 -0
  59. package/dist/umd/{3638.js → 7182.js} +3 -2
  60. package/dist/umd/7182.js.map +1 -0
  61. package/dist/umd/{507.js → 7291.js} +6 -5
  62. package/dist/umd/7291.js.map +1 -0
  63. package/dist/umd/{4187.js → 7565.js} +3 -2
  64. package/dist/umd/7565.js.map +1 -0
  65. package/dist/umd/{3191.js → 7620.js} +11 -7
  66. package/dist/umd/7620.js.map +1 -0
  67. package/dist/umd/{6050.js → 7774.js} +10 -9
  68. package/dist/umd/7774.js.map +1 -0
  69. package/dist/umd/{2666.js → 7939.js} +5 -4
  70. package/dist/umd/7939.js.map +1 -0
  71. package/dist/umd/{4114.js → 8618.js} +5 -4
  72. package/dist/umd/8618.js.map +1 -0
  73. package/dist/umd/8961.js +2 -0
  74. package/dist/umd/8961.js.map +1 -0
  75. package/dist/umd/{4574.js → 8983.js} +6 -5
  76. package/dist/umd/8983.js.map +1 -0
  77. package/dist/umd/9030.js +265 -307
  78. package/dist/umd/9030.js.LICENSE.txt +0 -6
  79. package/dist/umd/9030.js.map +1 -0
  80. package/dist/umd/9365.js +2 -0
  81. package/dist/umd/9365.js.map +1 -0
  82. package/dist/umd/{4218.js → 9380.js} +5 -4
  83. package/dist/umd/9380.js.map +1 -0
  84. package/dist/umd/9871.js +276 -0
  85. package/dist/umd/9871.js.map +1 -0
  86. package/dist/umd/9970.js +833 -0
  87. package/dist/umd/9970.js.map +1 -0
  88. package/dist/umd/DescopeDev.js +2 -1
  89. package/dist/umd/DescopeDev.js.map +1 -0
  90. package/dist/umd/boolean-fields-descope-boolean-field-internal-index-js.js +2 -1
  91. package/dist/umd/boolean-fields-descope-boolean-field-internal-index-js.js.map +1 -0
  92. package/dist/umd/boolean-fields-descope-checkbox-index-js.js +2 -1
  93. package/dist/umd/boolean-fields-descope-checkbox-index-js.js.map +1 -0
  94. package/dist/umd/boolean-fields-descope-switch-toggle-index-js.js +2 -1
  95. package/dist/umd/boolean-fields-descope-switch-toggle-index-js.js.map +1 -0
  96. package/dist/umd/button-selection-group-fields-descope-button-multi-selection-group-index-js.js +2 -1
  97. package/dist/umd/button-selection-group-fields-descope-button-multi-selection-group-index-js.js.map +1 -0
  98. package/dist/umd/button-selection-group-fields-descope-button-multi-selection-group-internal-index-js.js +2 -1
  99. package/dist/umd/button-selection-group-fields-descope-button-multi-selection-group-internal-index-js.js.map +1 -0
  100. package/dist/umd/button-selection-group-fields-descope-button-selection-group-index-js.js +2 -1
  101. package/dist/umd/button-selection-group-fields-descope-button-selection-group-index-js.js.map +1 -0
  102. package/dist/umd/button-selection-group-fields-descope-button-selection-group-internal-index-js.js +2 -1
  103. package/dist/umd/button-selection-group-fields-descope-button-selection-group-internal-index-js.js.map +1 -0
  104. package/dist/umd/button-selection-group-fields-descope-button-selection-group-item-index-js.js +2 -1
  105. package/dist/umd/button-selection-group-fields-descope-button-selection-group-item-index-js.js.map +1 -0
  106. package/dist/umd/descope-address-field.js +2 -1
  107. package/dist/umd/descope-address-field.js.map +1 -0
  108. package/dist/umd/descope-alert-index-js.js +2 -1
  109. package/dist/umd/descope-alert-index-js.js.map +1 -0
  110. package/dist/umd/descope-apps-list-index-js.js +2 -1
  111. package/dist/umd/descope-apps-list-index-js.js.map +1 -0
  112. package/dist/umd/descope-autocomplete-field.js +2 -1
  113. package/dist/umd/descope-autocomplete-field.js.map +1 -0
  114. package/dist/umd/descope-avatar.js +2 -1
  115. package/dist/umd/descope-avatar.js.map +1 -0
  116. package/dist/umd/descope-badge-index-js.js +2 -1
  117. package/dist/umd/descope-badge-index-js.js.map +1 -0
  118. package/dist/umd/descope-button-index-js.js +5 -4
  119. package/dist/umd/descope-button-index-js.js.map +1 -0
  120. package/dist/umd/descope-code-snippet-index-js.js +2 -1
  121. package/dist/umd/descope-code-snippet-index-js.js.map +1 -0
  122. package/dist/umd/descope-combo-box.js +7 -6
  123. package/dist/umd/descope-combo-box.js.map +1 -0
  124. package/dist/umd/descope-container-index-js.js +2 -1
  125. package/dist/umd/descope-container-index-js.js.map +1 -0
  126. package/dist/umd/descope-date-field-descope-calendar-index-js.js +2 -1
  127. package/dist/umd/descope-date-field-descope-calendar-index-js.js.map +1 -0
  128. package/dist/umd/descope-date-field-index-js.js +2 -1
  129. package/dist/umd/descope-date-field-index-js.js.map +1 -0
  130. package/dist/umd/descope-divider-index-js.js +2 -1
  131. package/dist/umd/descope-divider-index-js.js.map +1 -0
  132. package/dist/umd/descope-email-field-index-js.js +5 -4
  133. package/dist/umd/descope-email-field-index-js.js.map +1 -0
  134. package/dist/umd/descope-enriched-text-index-js.js +2 -1
  135. package/dist/umd/descope-enriched-text-index-js.js.map +1 -0
  136. package/dist/umd/descope-grid-descope-grid-custom-column-index-js.js +5 -4
  137. package/dist/umd/descope-grid-descope-grid-custom-column-index-js.js.map +1 -0
  138. package/dist/umd/descope-grid-descope-grid-item-details-column-index-js.js +6 -5
  139. package/dist/umd/descope-grid-descope-grid-item-details-column-index-js.js.map +1 -0
  140. package/dist/umd/descope-grid-descope-grid-selection-column-index-js.js +2 -1
  141. package/dist/umd/descope-grid-descope-grid-selection-column-index-js.js.map +1 -0
  142. package/dist/umd/descope-grid-descope-grid-text-column-index-js.js +5 -4
  143. package/dist/umd/descope-grid-descope-grid-text-column-index-js.js.map +1 -0
  144. package/dist/umd/descope-grid-index-js.js +2 -1
  145. package/dist/umd/descope-grid-index-js.js.map +1 -0
  146. package/dist/umd/descope-hybrid-field-index-js.js +4 -3
  147. package/dist/umd/descope-hybrid-field-index-js.js.map +1 -0
  148. package/dist/umd/descope-icon-index-js.js +2 -1
  149. package/dist/umd/descope-icon-index-js.js.map +1 -0
  150. package/dist/umd/descope-image-index-js.js +2 -1
  151. package/dist/umd/descope-image-index-js.js.map +1 -0
  152. package/dist/umd/descope-link-index-js.js +2 -1
  153. package/dist/umd/descope-link-index-js.js.map +1 -0
  154. package/dist/umd/descope-list-index-js.js +2 -1
  155. package/dist/umd/descope-list-index-js.js.map +1 -0
  156. package/dist/umd/descope-loader-linear-index-js.js +2 -1
  157. package/dist/umd/descope-loader-linear-index-js.js.map +1 -0
  158. package/dist/umd/descope-loader-radial-index-js.js +2 -1
  159. package/dist/umd/descope-loader-radial-index-js.js.map +1 -0
  160. package/dist/umd/descope-logo-index-js.js +2 -1
  161. package/dist/umd/descope-logo-index-js.js.map +1 -0
  162. package/dist/umd/descope-modal-index-js.js +2 -1
  163. package/dist/umd/descope-modal-index-js.js.map +1 -0
  164. package/dist/umd/descope-multi-select-combo-box-index-js.js +2 -1
  165. package/dist/umd/descope-multi-select-combo-box-index-js.js.map +1 -0
  166. package/dist/umd/descope-new-password-descope-new-password-internal-index-js.js +2 -1
  167. package/dist/umd/descope-new-password-descope-new-password-internal-index-js.js.map +1 -0
  168. package/dist/umd/descope-new-password-index-js.js +2 -1
  169. package/dist/umd/descope-new-password-index-js.js.map +1 -0
  170. package/dist/umd/descope-notification-descope-notification-card-index-js.js +2 -1
  171. package/dist/umd/descope-notification-descope-notification-card-index-js.js.map +1 -0
  172. package/dist/umd/descope-notification-index-js.js +2 -1
  173. package/dist/umd/descope-notification-index-js.js.map +1 -0
  174. package/dist/umd/descope-notp-image-index-js.js +2 -1
  175. package/dist/umd/descope-notp-image-index-js.js.map +1 -0
  176. package/dist/umd/descope-number-field-index-js.js +2 -1
  177. package/dist/umd/descope-number-field-index-js.js.map +1 -0
  178. package/dist/umd/descope-passcode-descope-passcode-internal-index-js.js +2 -1
  179. package/dist/umd/descope-passcode-descope-passcode-internal-index-js.js.map +1 -0
  180. package/dist/umd/descope-passcode-index-js.js +3 -2
  181. package/dist/umd/descope-passcode-index-js.js.map +1 -0
  182. package/dist/umd/descope-password-index-js.js +2 -1
  183. package/dist/umd/descope-password-index-js.js.map +1 -0
  184. package/dist/umd/descope-policy-validation-index-js.js +2 -1
  185. package/dist/umd/descope-policy-validation-index-js.js.map +1 -0
  186. package/dist/umd/descope-radio-group-index-js.js +2 -1
  187. package/dist/umd/descope-radio-group-index-js.js.map +1 -0
  188. package/dist/umd/descope-recaptcha-index-js.js +2 -1
  189. package/dist/umd/descope-recaptcha-index-js.js.map +1 -0
  190. package/dist/umd/descope-scopes-list-index-js.js +2 -1
  191. package/dist/umd/descope-scopes-list-index-js.js.map +1 -0
  192. package/dist/umd/descope-security-questions-setup-index-js.js +2 -1
  193. package/dist/umd/descope-security-questions-setup-index-js.js.map +1 -0
  194. package/dist/umd/descope-security-questions-verify-index-js.js +3 -2
  195. package/dist/umd/descope-security-questions-verify-index-js.js.map +1 -0
  196. package/dist/umd/descope-text-area-index-js.js +2 -1
  197. package/dist/umd/descope-text-area-index-js.js.map +1 -0
  198. package/dist/umd/descope-text-field-index-js.js +3 -2
  199. package/dist/umd/descope-text-field-index-js.js.map +1 -0
  200. package/dist/umd/descope-text.js +2 -1
  201. package/dist/umd/descope-text.js.map +1 -0
  202. package/dist/umd/descope-third-party-app-logo-index-js.js +2 -1
  203. package/dist/umd/descope-third-party-app-logo-index-js.js.map +1 -0
  204. package/dist/umd/descope-totp-image-index-js.js +2 -1
  205. package/dist/umd/descope-totp-image-index-js.js.map +1 -0
  206. package/dist/umd/descope-upload-file-index-js.js +2 -1
  207. package/dist/umd/descope-upload-file-index-js.js.map +1 -0
  208. package/dist/umd/descope-user-attribute-index-js.js +2 -1
  209. package/dist/umd/descope-user-attribute-index-js.js.map +1 -0
  210. package/dist/umd/descope-user-auth-method-index-js.js +2 -1
  211. package/dist/umd/descope-user-auth-method-index-js.js.map +1 -0
  212. package/dist/umd/fonts/font-1364590020.woff +0 -0
  213. package/dist/umd/fonts/font-1949233557.woff +0 -0
  214. package/dist/umd/index.js +2 -1
  215. package/dist/umd/index.js.map +1 -0
  216. package/dist/umd/mapping-fields-descope-mappings-field-descope-mapping-item-index-js.js +2 -1
  217. package/dist/umd/mapping-fields-descope-mappings-field-descope-mapping-item-index-js.js.map +1 -0
  218. package/dist/umd/mapping-fields-descope-mappings-field-descope-mappings-field-internal-index-js.js +2 -1
  219. package/dist/umd/mapping-fields-descope-mappings-field-descope-mappings-field-internal-index-js.js.map +1 -0
  220. package/dist/umd/mapping-fields-descope-mappings-field-index-js.js +2 -1
  221. package/dist/umd/mapping-fields-descope-mappings-field-index-js.js.map +1 -0
  222. package/dist/umd/mapping-fields-descope-saml-group-mappings-descope-saml-group-mappings-internal-index-js.js +2 -1
  223. package/dist/umd/mapping-fields-descope-saml-group-mappings-descope-saml-group-mappings-internal-index-js.js.map +1 -0
  224. package/dist/umd/mapping-fields-descope-saml-group-mappings-index-js.js +2 -1
  225. package/dist/umd/mapping-fields-descope-saml-group-mappings-index-js.js.map +1 -0
  226. package/dist/umd/phone-fields-descope-phone-field-descope-phone-field-internal-index-js.js +2 -1
  227. package/dist/umd/phone-fields-descope-phone-field-descope-phone-field-internal-index-js.js.map +1 -0
  228. package/dist/umd/phone-fields-descope-phone-field-index-js.js +2 -1
  229. package/dist/umd/phone-fields-descope-phone-field-index-js.js.map +1 -0
  230. package/dist/umd/phone-fields-descope-phone-input-box-field-descope-phone-input-box-internal-index-js.js +3 -2
  231. package/dist/umd/phone-fields-descope-phone-input-box-field-descope-phone-input-box-internal-index-js.js.map +1 -0
  232. package/dist/umd/phone-fields-descope-phone-input-box-field-index-js.js +8 -7
  233. package/dist/umd/phone-fields-descope-phone-input-box-field-index-js.js.map +1 -0
  234. package/package.json +10 -8
  235. package/src/baseClasses/createCssVarImageClass.js +10 -5
  236. package/src/components/button-selection-group-fields/baseButtonSelectionGroup.js +7 -0
  237. package/src/components/button-selection-group-fields/createBaseButtonSelectionGroupInternalClass.js +1 -8
  238. package/src/components/button-selection-group-fields/descope-button-selection-group-item/ButtonSelectionGroupItemClass.js +11 -6
  239. package/src/components/descope-alert/AlertClass.js +16 -12
  240. package/src/components/descope-badge/BadgeClass.js +11 -6
  241. package/src/components/descope-code-snippet/CodeSnippetClass.js +9 -4
  242. package/src/components/descope-container/ContainerClass.js +9 -4
  243. package/src/components/descope-date-field/DateFieldClass.js +22 -17
  244. package/src/components/descope-date-field/descope-calendar/CalendarClass.js +28 -18
  245. package/src/components/descope-date-field/descope-calendar/helpers.js +1 -2
  246. package/src/components/descope-divider/DividerClass.js +14 -9
  247. package/src/components/descope-enriched-text/EnrichedTextClass.js +9 -4
  248. package/src/components/descope-grid/GridClass.js +1 -1
  249. package/src/components/descope-hybrid-field/HybridFieldClass.js +15 -10
  250. package/src/components/descope-icon/IconClass.js +9 -4
  251. package/src/components/descope-image/ImageClass.js +10 -5
  252. package/src/components/descope-link/LinkClass.js +14 -9
  253. package/src/components/descope-list/ListClass.js +15 -13
  254. package/src/components/descope-list/ListItemClass.js +16 -14
  255. package/src/components/descope-loader-linear/LoaderLinearClass.js +10 -5
  256. package/src/components/descope-loader-radial/LoaderRadialClass.js +10 -5
  257. package/src/components/descope-modal/ModalClass.js +16 -4
  258. package/src/components/descope-new-password/NewPasswordClass.js +1 -1
  259. package/src/components/descope-new-password/descope-new-password-internal/NewPasswordInternal.js +8 -6
  260. package/src/components/descope-passcode/PasscodeClass.js +28 -1
  261. package/src/components/descope-passcode/descope-passcode-internal/PasscodeInternal.js +26 -23
  262. package/src/components/descope-passcode/descope-passcode-internal/helpers.js +3 -22
  263. package/src/components/descope-policy-validation/PolicyValidationClass.js +8 -3
  264. package/src/components/descope-recaptcha/RecaptchaClass.js +13 -8
  265. package/src/components/descope-scopes-list/ScopesListClass.js +9 -5
  266. package/src/components/descope-security-questions-setup/SecurityQuestionsSetupClass.js +9 -5
  267. package/src/components/descope-security-questions-verify/SecurityQuestionsVerifyClass.js +9 -5
  268. package/src/components/descope-text-field/TextFieldClass.js +1 -1
  269. package/src/components/descope-third-party-app-logo/ThirdPartyAppLogoClass.js +20 -16
  270. package/src/components/descope-upload-file/UploadFileClass.js +20 -15
  271. package/src/components/descope-user-attribute/UserAttributeClass.js +25 -22
  272. package/src/components/descope-user-auth-method/UserAuthMethodClass.js +25 -22
  273. package/src/components/mapping-fields/descope-mappings-field/descope-mapping-item/MappingItem.js +15 -9
  274. package/src/components/phone-fields/descope-phone-field/PhoneFieldClass.js +1 -0
  275. package/src/components/phone-fields/descope-phone-field/helpers.js +0 -1
  276. package/src/mixins/createProxy.js +3 -1
  277. package/src/mixins/createStyleMixin/index.js +9 -22
  278. package/src/mixins/draggableMixin.js +3 -2
  279. package/dist/umd/1402.js +0 -1
  280. package/dist/umd/1484.js +0 -148
  281. package/dist/umd/3110.js +0 -275
  282. package/dist/umd/3437.js +0 -2
  283. package/dist/umd/4619.js +0 -1
  284. package/dist/umd/4902.js +0 -170
  285. package/dist/umd/4902.js.LICENSE.txt +0 -23
  286. package/dist/umd/5096.js +0 -109
  287. package/dist/umd/5318.js +0 -1
  288. package/dist/umd/5459.js +0 -1
  289. package/dist/umd/7150.js +0 -2
  290. package/dist/umd/731.js +0 -832
  291. package/dist/umd/8823.js +0 -1
  292. /package/dist/umd/{9243.js.LICENSE.txt → 1519.js.LICENSE.txt} +0 -0
  293. /package/dist/umd/{1902.js.LICENSE.txt → 1899.js.LICENSE.txt} +0 -0
  294. /package/dist/umd/{1172.js.LICENSE.txt → 1995.js.LICENSE.txt} +0 -0
  295. /package/dist/umd/{2570.js.LICENSE.txt → 2894.js.LICENSE.txt} +0 -0
  296. /package/dist/umd/{1484.js.LICENSE.txt → 3620.js.LICENSE.txt} +0 -0
  297. /package/dist/umd/{2666.js.LICENSE.txt → 384.js.LICENSE.txt} +0 -0
  298. /package/dist/umd/{3437.js.LICENSE.txt → 4467.js.LICENSE.txt} +0 -0
  299. /package/dist/umd/{404.js.LICENSE.txt → 4518.js.LICENSE.txt} +0 -0
  300. /package/dist/umd/{4455.js.LICENSE.txt → 4550.js.LICENSE.txt} +0 -0
  301. /package/dist/umd/{4554.js.LICENSE.txt → 4623.js.LICENSE.txt} +0 -0
  302. /package/dist/umd/{742.js.LICENSE.txt → 4914.js.LICENSE.txt} +0 -0
  303. /package/dist/umd/{507.js.LICENSE.txt → 513.js.LICENSE.txt} +0 -0
  304. /package/dist/umd/{201.js.LICENSE.txt → 5260.js.LICENSE.txt} +0 -0
  305. /package/dist/umd/{5096.js.LICENSE.txt → 5648.js.LICENSE.txt} +0 -0
  306. /package/dist/umd/{5563.js.LICENSE.txt → 6227.js.LICENSE.txt} +0 -0
  307. /package/dist/umd/{4127.js.LICENSE.txt → 6424.js.LICENSE.txt} +0 -0
  308. /package/dist/umd/{7097.js.LICENSE.txt → 6649.js.LICENSE.txt} +0 -0
  309. /package/dist/umd/{7150.js.LICENSE.txt → 676.js.LICENSE.txt} +0 -0
  310. /package/dist/umd/{3638.js.LICENSE.txt → 7182.js.LICENSE.txt} +0 -0
  311. /package/dist/umd/{7979.js.LICENSE.txt → 7291.js.LICENSE.txt} +0 -0
  312. /package/dist/umd/{4187.js.LICENSE.txt → 7565.js.LICENSE.txt} +0 -0
  313. /package/dist/umd/{3191.js.LICENSE.txt → 7620.js.LICENSE.txt} +0 -0
  314. /package/dist/umd/{6050.js.LICENSE.txt → 7774.js.LICENSE.txt} +0 -0
  315. /package/dist/umd/{9478.js.LICENSE.txt → 7939.js.LICENSE.txt} +0 -0
  316. /package/dist/umd/{4114.js.LICENSE.txt → 8618.js.LICENSE.txt} +0 -0
  317. /package/dist/umd/{4574.js.LICENSE.txt → 8983.js.LICENSE.txt} +0 -0
  318. /package/dist/umd/{4218.js.LICENSE.txt → 9380.js.LICENSE.txt} +0 -0
  319. /package/dist/umd/{3110.js.LICENSE.txt → 9871.js.LICENSE.txt} +0 -0
  320. /package/dist/umd/{731.js.LICENSE.txt → 9970.js.LICENSE.txt} +0 -0
  321. /package/dist/umd/{bcdfe87ae253c2cf789c9a737f8d8c22.woff → fonts/font-38673212.woff} +0 -0
@@ -1 +1,2 @@
1
- "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[8009],{22339:(t,e,o)=>{o.r(e),o.d(e,{LoaderLinearClass:()=>c,componentName:()=>i});var n=o(94619),r=o(70263),a=o(7138);const i=(0,o(14944).xE)("loader-linear");class s extends((0,r.q)({componentName:i,baseSelector:":host > div"})){static get componentName(){return i}constructor(){super(),this.attachShadow({mode:"open"}).innerHTML="\n\t\t<style>\n\t\t\t@keyframes tilt {\n\t\t\t\t0% { transform: translateX(0); }\n\t\t\t\t50% { transform: translateX(400%); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t\tdiv::after {\n\t\t\t\tcontent: '';\n\t\t\t\tanimation-name: tilt;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t</style>\n\t\t<div></div>\n\t"}}const{after:p,host:d}={after:{selector:"::after"},host:{selector:()=>":host"}},c=(0,a.Zz)((0,n.RF)({mappings:{hostDisplay:{},hostWidth:{...d,property:"width"},barHeight:[{property:"height"},{...p,property:"height"}],barBorderRadius:[{property:"border-radius"},{...p,property:"border-radius"}],verticalPadding:[{...d,property:"padding-top"},{...d,property:"padding-bottom"}],barBackgroundColor:{property:"background-color"},barColor:{...p,property:"background-color"},barWidth:{...p,property:"width"},animationDuration:[{},p],animationTimingFunction:[{},p],animationIterationCount:[{},p]}}),n.VO,n.tQ)(s);customElements.define(i,c)}}]);
1
+ "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[8009],{63581:(t,o,e)=>{e.r(o),e.d(o,{LoaderLinearClass:()=>l,componentName:()=>p});var n=e(79365),r=e(81365),a=e(9696),i=e(97810),s=e(25964);const p=(0,i.xE)("loader-linear");class d extends((0,r.q)({componentName:p,baseSelector:":host > div"})){static get componentName(){return p}constructor(){super(),this.attachShadow({mode:"open"}).innerHTML="\n\t\t<div></div>\n\t",(0,s.fz)("\n @keyframes tilt {\n\t\t\t\t0% { transform: translateX(0); }\n\t\t\t\t50% { transform: translateX(400%); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t\tdiv::after {\n\t\t\t\tcontent: '';\n\t\t\t\tanimation-name: tilt;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\twidth: 100%;\n\t\t\t}\n ",this)}}const{after:c,host:h}={after:{selector:"::after"},host:{selector:()=>":host"}},l=(0,a.Zz)((0,n.RF)({mappings:{hostDisplay:{},hostWidth:{...h,property:"width"},barHeight:[{property:"height"},{...c,property:"height"}],barBorderRadius:[{property:"border-radius"},{...c,property:"border-radius"}],verticalPadding:[{...h,property:"padding-top"},{...h,property:"padding-bottom"}],barBackgroundColor:{property:"background-color"},barColor:{...c,property:"background-color"},barWidth:{...c,property:"width"},animationDuration:[{},c],animationTimingFunction:[{},c],animationIterationCount:[{},c]}}),n.VO,n.tQ)(d);customElements.define(p,l)}}]);
2
+ //# sourceMappingURL=descope-loader-linear-index-js.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descope-loader-linear-index-js.js","mappings":"+PAMO,MAAMA,GAAgB,QAAiB,iBAE9C,MAAMC,WAAwB,EAAAC,EAAA,GAAgB,CAAEF,gBAAeG,aAAc,iBAC3E,wBAAWH,GACT,OAAOA,CACT,CAEA,WAAAI,GACEC,QAEAC,KAAKC,aAAa,CAAEC,KAAM,SAAUC,UAAY,yBAIhD,QACE,uYAmBAH,KAEJ,EAGF,MAKM,MAAEI,EAAK,KAAEC,GALG,CAChBD,MAAO,CAAEE,SAAU,WACnBD,KAAM,CAAEC,SAAU,IAAM,UAKbC,GAAoB,SAC/B,QAAiB,CACfC,SAAU,CACRC,YAAa,CAAC,EACdC,UAAW,IAAKL,EAAMM,SAAU,SAChCC,UAAW,CAAC,CAAED,SAAU,UAAY,IAAKP,EAAOO,SAAU,WAC1DE,gBAAiB,CAAC,CAAEF,SAAU,iBAAmB,IAAKP,EAAOO,SAAU,kBACvEG,gBAAiB,CACf,IAAKT,EAAMM,SAAU,eACrB,IAAKN,EAAMM,SAAU,mBAEvBI,mBAAoB,CAAEJ,SAAU,oBAChCK,SAAU,IAAKZ,EAAOO,SAAU,oBAChCM,SAAU,IAAKb,EAAOO,SAAU,SAChCO,kBAAmB,CAAC,CAAC,EAAGd,GACxBe,wBAAyB,CAAC,CAAC,EAAGf,GAC9BgB,wBAAyB,CAAC,CAAC,EAAGhB,MAGlC,KACA,KApB+B,CAqB/BT,GCvEF0B,eAAeC,OAAO5B,EAAea,E","sources":["webpack://@descope/web-components-ui/./src/components/descope-loader-linear/LoaderLinearClass.js","webpack://@descope/web-components-ui/./src/components/descope-loader-linear/index.js"],"sourcesContent":["import { createStyleMixin, draggableMixin, componentNameValidationMixin } from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { injectStyle } from '@descope-ui/common/components-helpers';\n\nexport const componentName = getComponentName('loader-linear');\n\nclass RawLoaderLinear extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n static get componentName() {\n return componentName;\n }\n\n constructor() {\n super();\n\n this.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<div></div>\n\t`;\n\n injectStyle(\n `\n @keyframes tilt {\n\t\t\t\t0% { transform: translateX(0); }\n\t\t\t\t50% { transform: translateX(400%); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: flex;\n\t\t\t}\n\t\t\tdiv::after {\n\t\t\t\tcontent: '';\n\t\t\t\tanimation-name: tilt;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\twidth: 100%;\n\t\t\t}\n `,\n this\n );\n }\n}\n\nconst selectors = {\n after: { selector: '::after' },\n host: { selector: () => ':host' },\n};\n\nconst { after, host } = selectors;\n\nexport const LoaderLinearClass = compose(\n createStyleMixin({\n mappings: {\n hostDisplay: {},\n hostWidth: { ...host, property: 'width' },\n barHeight: [{ property: 'height' }, { ...after, property: 'height' }],\n barBorderRadius: [{ property: 'border-radius' }, { ...after, property: 'border-radius' }],\n verticalPadding: [\n { ...host, property: 'padding-top' },\n { ...host, property: 'padding-bottom' },\n ],\n barBackgroundColor: { property: 'background-color' },\n barColor: { ...after, property: 'background-color' },\n barWidth: { ...after, property: 'width' },\n animationDuration: [{}, after],\n animationTimingFunction: [{}, after],\n animationIterationCount: [{}, after],\n },\n }),\n draggableMixin,\n componentNameValidationMixin\n)(RawLoaderLinear);\n","import { componentName, LoaderLinearClass } from './LoaderLinearClass';\n\ncustomElements.define(componentName, LoaderLinearClass);\n\nexport { LoaderLinearClass, componentName };\n"],"names":["componentName","RawLoaderLinear","createBaseClass","baseSelector","constructor","super","this","attachShadow","mode","innerHTML","after","host","selector","LoaderLinearClass","mappings","hostDisplay","hostWidth","property","barHeight","barBorderRadius","verticalPadding","barBackgroundColor","barColor","barWidth","animationDuration","animationTimingFunction","animationIterationCount","customElements","define"],"sourceRoot":""}
@@ -1 +1,2 @@
1
- "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[7163],{14815:(t,r,e)=>{e.d(r,{T:()=>a,l:()=>p});var o=e(94619),n=e(70263),i=e(7138);const a=(0,e(14944).xE)("loader-radial");class s extends((0,n.q)({componentName:a,baseSelector:":host > div"})){constructor(){super(),this.attachShadow({mode:"open"}).innerHTML="\n\t\t<style>\n\t\t\t@keyframes spin {\n\t\t\t\t0% { transform: rotate(0deg); }\n\t\t\t\t100% { transform: rotate(360deg); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\tanimation-name: spin;\n\t\t\t}\n\t\t</style>\n\t\t<div></div>\n\t"}}const p=(0,i.Zz)((0,o.RF)({mappings:{hostDisplay:{property:"display"},spinnerSize:[{property:"width"},{property:"height"}],spinnerBorderWidth:{property:"border-width"},spinnerBorderStyle:{property:"border-style"},spinnerBorderRadius:{property:"border-radius"},spinnerQuadrant1Color:{property:"border-top-color"},spinnerQuadrant2Color:{property:"border-bottom-color"},spinnerQuadrant3Color:{property:"border-right-color"},spinnerQuadrant4Color:{property:"border-left-color"},animationDuration:{},animationTimingFunction:{},animationIterationCount:{}}}),o.VO,o.tQ)(s)},86715:(t,r,e)=>{e.r(r),e.d(r,{LoaderRadialClass:()=>o.l,componentName:()=>o.T});var o=e(14815);customElements.define(o.T,o.l)}}]);
1
+ "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[7163],{74713:(t,r,o)=>{o.d(r,{T:()=>s,l:()=>l});var e=o(79365),n=o(81365),i=o(9696),a=o(97810),p=o(25964);const s=(0,a.xE)("loader-radial");class d extends((0,n.q)({componentName:s,baseSelector:":host > div"})){constructor(){super(),this.attachShadow({mode:"open"}).innerHTML="\n\t\t<div></div>\n\t",(0,p.fz)("\n @keyframes spin {\n\t\t\t\t0% { transform: rotate(0deg); }\n\t\t\t\t100% { transform: rotate(360deg); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\tanimation-name: spin;\n\t\t\t}\n ",this)}}const l=(0,i.Zz)((0,e.RF)({mappings:{hostDisplay:{property:"display"},spinnerSize:[{property:"width"},{property:"height"}],spinnerBorderWidth:{property:"border-width"},spinnerBorderStyle:{property:"border-style"},spinnerBorderRadius:{property:"border-radius"},spinnerQuadrant1Color:{property:"border-top-color"},spinnerQuadrant2Color:{property:"border-bottom-color"},spinnerQuadrant3Color:{property:"border-right-color"},spinnerQuadrant4Color:{property:"border-left-color"},animationDuration:{},animationTimingFunction:{},animationIterationCount:{}}}),e.VO,e.tQ)(d)},54249:(t,r,o)=>{o.r(r),o.d(r,{LoaderRadialClass:()=>e.l,componentName:()=>e.T});var e=o(74713);customElements.define(e.T,e.l)}}]);
2
+ //# sourceMappingURL=descope-loader-radial-index-js.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descope-loader-radial-index-js.js","mappings":"4NAMO,MAAMA,GAAgB,QAAiB,iBAE9C,MAAMC,WAAwB,OAAgB,CAAED,gBAAeE,aAAc,iBAC3E,WAAAC,GACEC,QAEAC,KAAKC,aAAa,CAAEC,KAAM,SAAUC,UAAY,yBAIhD,QACE,oRAaAH,KAEJ,EAGK,MAAMI,GAAoB,SAC/B,QAAiB,CACfC,SAAU,CACRC,YAAa,CAAEC,SAAU,WACzBC,YAAa,CAAC,CAAED,SAAU,SAAW,CAAEA,SAAU,WACjDE,mBAAoB,CAAEF,SAAU,gBAChCG,mBAAoB,CAAEH,SAAU,gBAChCI,oBAAqB,CAAEJ,SAAU,iBACjCK,sBAAuB,CAAEL,SAAU,oBACnCM,sBAAuB,CAAEN,SAAU,uBACnCO,sBAAuB,CAAEP,SAAU,sBACnCQ,sBAAuB,CAAER,SAAU,qBACnCS,kBAAmB,CAAC,EACpBC,wBAAyB,CAAC,EAC1BC,wBAAyB,CAAC,KAG9B,KACA,KAlB+B,CAmB/BtB,E,iGCpDFuB,eAAeC,OAAO,IAAe,I","sources":["webpack://@descope/web-components-ui/./src/components/descope-loader-radial/LoaderRadialClass.js","webpack://@descope/web-components-ui/./src/components/descope-loader-radial/index.js"],"sourcesContent":["import { createStyleMixin, draggableMixin, componentNameValidationMixin } from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { injectStyle } from '@descope-ui/common/components-helpers';\n\nexport const componentName = getComponentName('loader-radial');\n\nclass RawLoaderRadial extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n constructor() {\n super();\n\n this.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t<div></div>\n\t`;\n\n injectStyle(\n `\n @keyframes spin {\n\t\t\t\t0% { transform: rotate(0deg); }\n\t\t\t\t100% { transform: rotate(360deg); }\n\t\t\t}\n\t\t\t:host {\n\t\t\t\tposition: relative;\n\t\t\t\tdisplay: inline-flex;\n\t\t\t}\n\t\t\t:host > div {\n\t\t\t\tanimation-name: spin;\n\t\t\t}\n `,\n this\n );\n }\n}\n\nexport const LoaderRadialClass = compose(\n createStyleMixin({\n mappings: {\n hostDisplay: { property: 'display' },\n spinnerSize: [{ property: 'width' }, { property: 'height' }],\n spinnerBorderWidth: { property: 'border-width' },\n spinnerBorderStyle: { property: 'border-style' },\n spinnerBorderRadius: { property: 'border-radius' },\n spinnerQuadrant1Color: { property: 'border-top-color' },\n spinnerQuadrant2Color: { property: 'border-bottom-color' },\n spinnerQuadrant3Color: { property: 'border-right-color' },\n spinnerQuadrant4Color: { property: 'border-left-color' },\n animationDuration: {},\n animationTimingFunction: {},\n animationIterationCount: {},\n },\n }),\n draggableMixin,\n componentNameValidationMixin\n)(RawLoaderRadial);\n","import { componentName, LoaderRadialClass } from './LoaderRadialClass';\n\ncustomElements.define(componentName, LoaderRadialClass);\n\nexport { LoaderRadialClass, componentName };\n"],"names":["componentName","RawLoaderRadial","baseSelector","constructor","super","this","attachShadow","mode","innerHTML","LoaderRadialClass","mappings","hostDisplay","property","spinnerSize","spinnerBorderWidth","spinnerBorderStyle","spinnerBorderRadius","spinnerQuadrant1Color","spinnerQuadrant2Color","spinnerQuadrant3Color","spinnerQuadrant4Color","animationDuration","animationTimingFunction","animationIterationCount","customElements","define"],"sourceRoot":""}
@@ -1 +1,2 @@
1
- "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[1239],{68185:(t,e,n)=>{n.d(e,{I:()=>c});var o=n(7138),a=n(94619),s=n(70263);const c=({componentName:t,varName:e,fallbackVarName:n})=>{let c;class r extends((0,s.q)({componentName:t,baseSelector:":host > div"})){constructor(){super(),this.attachShadow({mode:"open"}).innerHTML=`\n\t\t\t<style>\n\t\t\t\t:host {\n\t\t\t\t\tdisplay: inline-flex;\n\t\t\t\t}\n\t\t\t\t:host([draggable="true"]) > div {\n\t\t\t\t\tpointer-events: none\n\t\t\t\t}\t\t\n\t\t\t\t:host > div {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t\tmax-width: 100%;\n\t\t\t\t\tmax-height: 100%;\n\t\t\t\t\tobject-fit: contain;\n\t\t\t\t\tmargin: auto;\n\t\t\t\t\t${c}\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t<div></div>\n\t\t\t`}}const i=(0,o.Zz)((0,a.RF)({mappings:{height:{selector:()=>":host > div"},width:{selector:()=>":host > div"},[e]:{property:"content"},[n]:{property:"content"}}}),a.VO,a.tQ)(r);return c=`content: var(${i.cssVarList[e]}, var(${i.cssVarList[n]}));`,i}},9980:(t,e,n)=>{n.d(e,{T:()=>s,m:()=>c});var o=n(14944),a=n(68185);const s=(0,o.xE)("logo"),c=(0,a.I)({componentName:s,varName:"url",fallbackVarName:"fallbackUrl"})},47713:(t,e,n)=>{n.r(e),n.d(e,{LogoClass:()=>o.m,componentName:()=>o.T});var o=n(9980);customElements.define(o.T,o.m)}}]);
1
+ "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[1239],{51491:(t,e,n)=>{n.d(e,{I:()=>r});var o=n(25964),a=n(9696),s=n(79365),c=n(81365);const r=({componentName:t,varName:e,fallbackVarName:n})=>{let r;class i extends((0,c.q)({componentName:t,baseSelector:":host > div"})){constructor(){super(),this.attachShadow({mode:"open"}).innerHTML="\n\t\t\t<div></div>\n\t\t\t",(0,o.fz)(`\n\t\t\t\t:host {\n\t\t\t\t\tdisplay: inline-flex;\n\t\t\t\t}\n\t\t\t\t:host([draggable="true"]) > div {\n\t\t\t\t\tpointer-events: none\n\t\t\t\t}\n\t\t\t\t:host > div {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t\tmax-width: 100%;\n\t\t\t\t\tmax-height: 100%;\n\t\t\t\t\tobject-fit: contain;\n\t\t\t\t\tmargin: auto;\n\t\t\t\t\t${r}\n\t\t\t\t}\n `,this)}}const l=(0,a.Zz)((0,s.RF)({mappings:{height:{selector:()=>":host > div"},width:{selector:()=>":host > div"},[e]:{property:"content"},[n]:{property:"content"}}}),s.VO,s.tQ)(i);return r=`content: var(${l.cssVarList[e]}, var(${l.cssVarList[n]}));`,l}},59410:(t,e,n)=>{n.d(e,{T:()=>s,m:()=>c});var o=n(97810),a=n(51491);const s=(0,o.xE)("logo"),c=(0,a.I)({componentName:s,varName:"url",fallbackVarName:"fallbackUrl"})},86947:(t,e,n)=>{n.r(e),n.d(e,{LogoClass:()=>o.m,componentName:()=>o.T});var o=n(59410);customElements.define(o.T,o.m)}}]);
2
+ //# sourceMappingURL=descope-logo-index-js.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descope-logo-index-js.js","mappings":"yMAKO,MAAMA,EAAyB,EAAGC,gBAAeC,UAASC,sBAC/D,IAAIC,EAGJ,MAAMC,WAA4B,OAAgB,CAChDJ,gBACAK,aAAc,iBAEd,WAAAC,GACEC,QACAC,KAAKC,aAAa,CAAEC,KAAM,SAAUC,UAAY,+BAIhD,QACE,6UAbmBR,yBA6BnBK,KAEJ,EAGF,MAAMI,GAAmB,SACvB,QAAiB,CACfC,SAAU,CACRC,OAAQ,CAAEC,SAAU,IAAM,eAC1BC,MAAO,CAAED,SAAU,IAAM,eACzB,CAACd,GAAU,CAAEgB,SAAU,WACvB,CAACf,GAAkB,CAAEe,SAAU,cAGnC,KACA,KAVuB,CAWvBb,GAIF,OAFAD,EAAQ,gBAAgBS,EAAiBM,WAAWjB,WAAiBW,EAAiBM,WAAWhB,QAE1FU,CAAgB,C,qECrDlB,MAAMZ,GAAgB,QAAiB,QAEjCmB,GAAY,OAAuB,CAC9CnB,gBACAC,QAAS,MACTC,gBAAiB,e,yFCNnBkB,eAAeC,OAAO,IAAe,I","sources":["webpack://@descope/web-components-ui/./src/baseClasses/createCssVarImageClass.js","webpack://@descope/web-components-ui/./src/components/descope-logo/LogoClass.js","webpack://@descope/web-components-ui/./src/components/descope-logo/index.js"],"sourcesContent":["import { injectStyle } from '@descope-ui/common/components-helpers';\nimport { compose } from '../helpers';\nimport { componentNameValidationMixin, createStyleMixin, draggableMixin } from '../mixins';\nimport { createBaseClass } from './createBaseClass';\n\nexport const createCssVarImageClass = ({ componentName, varName, fallbackVarName }) => {\n let style;\n const getContent = () => style;\n\n class RawCssVarImageClass extends createBaseClass({\n componentName,\n baseSelector: ':host > div',\n }) {\n constructor() {\n super();\n this.attachShadow({ mode: 'open' }).innerHTML = `\n\t\t\t<div></div>\n\t\t\t`;\n\n injectStyle(\n `\n\t\t\t\t:host {\n\t\t\t\t\tdisplay: inline-flex;\n\t\t\t\t}\n\t\t\t\t:host([draggable=\"true\"]) > div {\n\t\t\t\t\tpointer-events: none\n\t\t\t\t}\n\t\t\t\t:host > div {\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t\tmax-width: 100%;\n\t\t\t\t\tmax-height: 100%;\n\t\t\t\t\tobject-fit: contain;\n\t\t\t\t\tmargin: auto;\n\t\t\t\t\t${getContent()}\n\t\t\t\t}\n `,\n this\n );\n }\n }\n\n const CssVarImageClass = compose(\n createStyleMixin({\n mappings: {\n height: { selector: () => ':host > div' },\n width: { selector: () => ':host > div' },\n [varName]: { property: 'content' },\n [fallbackVarName]: { property: 'content' },\n },\n }),\n draggableMixin,\n componentNameValidationMixin\n )(RawCssVarImageClass);\n\n style = `content: var(${CssVarImageClass.cssVarList[varName]}, var(${CssVarImageClass.cssVarList[fallbackVarName]}));`;\n\n return CssVarImageClass;\n};\n","import { getComponentName } from '../../helpers/componentHelpers';\nimport { createCssVarImageClass } from '../../baseClasses/createCssVarImageClass';\n\nexport const componentName = getComponentName('logo');\n\nexport const LogoClass = createCssVarImageClass({\n componentName,\n varName: 'url',\n fallbackVarName: 'fallbackUrl',\n});\n","import { componentName, LogoClass } from './LogoClass';\n\ncustomElements.define(componentName, LogoClass);\n\nexport { LogoClass, componentName };\n"],"names":["createCssVarImageClass","componentName","varName","fallbackVarName","style","RawCssVarImageClass","baseSelector","constructor","super","this","attachShadow","mode","innerHTML","CssVarImageClass","mappings","height","selector","width","property","cssVarList","LogoClass","customElements","define"],"sourceRoot":""}
@@ -1 +1,2 @@
1
- "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[4139],{826:(e,t,o)=>{o.r(t),o.d(t,{ModalClass:()=>n,componentName:()=>l}),o(75032);var s=o(7138),a=o(14944),r=o(94619);const l=(0,a.xE)("modal"),n=(0,s.Zz)((0,r.RF)({mappings:{overlayBackgroundColor:{property:()=>n.cssVarList.overlay.backgroundColor},overlayShadow:{property:()=>n.cssVarList.overlay.shadow},overlayWidth:{property:()=>n.cssVarList.overlay.width}}}),(0,r.mA)({name:"overlay",selector:"",mappings:{hostDisplay:{selector:()=>":host(.descope-modal)",property:"display",important:!0},backgroundColor:[{selector:()=>"::part(content)",property:"background-color"},{selector:()=>"::part(overlay)",property:"background-color"}],width:{selector:()=>"::part(overlay)",property:"width"},shadow:{selector:()=>"::part(overlay)",property:"box-shadow"}},forward:{include:!1,attributes:["opened"]}}),r.VO,r.tQ,(e=>class extends e{get opened(){return"true"===this.getAttribute("opened")}handleOpened(){(0,a.EA)(this,this.baseElement,{includeAttrs:["opened"]}),this.opened?this.style.display="":this.style.display="none"}init(){super.init?.(),this.style.display="none",setTimeout((()=>{this.baseElement.shadowRoot.querySelector("vaadin-dialog-overlay").appendChild(document.createElement("slot")),this.#e(),this.handleOpened()}))}#e(){const e=this.baseElement.shadowRoot.querySelector("vaadin-dialog-overlay");e._attachOverlay=()=>{e.bringToFront(),this.baseElement.setAttribute("style","display:flex!important;")},e._detachOverlay=()=>{this.baseElement.style.display="none"},e._enterModalState=()=>{},e.close=()=>!1}}))((0,r.tz)({slots:[""],wrappedEleName:"vaadin-dialog",style:()=>"",excludeAttrsSync:["tabindex","opened"],componentName:l}));customElements.define(l,n)}}]);
1
+ "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[4139],{52079:(e,t,o)=>{o.r(t),o.d(t,{ModalClass:()=>d,componentName:()=>l}),o(69117);var a=o(25964),s=o(9696),r=o(97810),n=o(79365);const l=(0,r.xE)("modal"),d=(0,s.Zz)((0,n.RF)({mappings:{overlayBackgroundColor:{property:()=>d.cssVarList.overlay.backgroundColor},overlayShadow:{property:()=>d.cssVarList.overlay.shadow},overlayWidth:{property:()=>d.cssVarList.overlay.width}}}),(0,n.mA)({name:"overlay",selector:"",mappings:{hostDisplay:{selector:()=>":host(.descope-modal)",property:"display",important:!0},backgroundColor:[{selector:()=>"::part(content)",property:"background-color"},{selector:()=>"::part(overlay)",property:"background-color"}],width:{selector:()=>"::part(overlay)",property:"width"},shadow:{selector:()=>"::part(overlay)",property:"box-shadow"}},forward:{include:!1,attributes:["opened","style"]}}),n.VO,n.tQ,(e=>class extends e{get opened(){return"true"===this.getAttribute("opened")}handleOpened(){(0,r.EA)(this,this.baseElement,{includeAttrs:["opened"]}),this.opened?this.style.display="":this.style.display="none"}init(){super.init?.(),this.style.display="none",setTimeout((()=>{this.baseElement.shadowRoot.querySelector("vaadin-dialog-overlay").appendChild(document.createElement("slot")),this.#e(),this.handleOpened()}))}#e(){const e=this.baseElement.shadowRoot.querySelector("vaadin-dialog-overlay");e._attachOverlay=()=>{e.bringToFront(),(0,a.fz)("\n :host {\n display: flex!important;\n }\n ",this.baseElement)},e._detachOverlay=()=>{this.baseElement.style.display="none"},e._enterModalState=()=>{},e.close=()=>!1}}))((0,n.tz)({slots:[""],wrappedEleName:"vaadin-dialog",style:()=>"\n vaaadin-dialog {\n display: flex!important;\n }\n ",excludeAttrsSync:["tabindex","opened","style"],componentName:l}));customElements.define(l,d)}}]);
2
+ //# sourceMappingURL=descope-modal-index-js.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descope-modal-index-js.js","mappings":"sPAWO,MAAMA,GAAgB,QAAiB,SAoEjCC,GAAa,SACxB,QAAiB,CACfC,SAAU,CACRC,uBAAwB,CAAEC,SAAU,IAAMH,EAAWI,WAAWC,QAAQC,iBACxEC,cAAe,CAAEJ,SAAU,IAAMH,EAAWI,WAAWC,QAAQG,QAC/DC,aAAc,CAAEN,SAAU,IAAMH,EAAWI,WAAWC,QAAQK,WAGlE,QAAY,CACVC,KAAM,UACNC,SAAU,GACVX,SAAU,CACRY,YAAa,CACXD,SAAU,IAAM,wBAChBT,SAAU,UACVW,WAAW,GAEbR,gBAAiB,CACf,CAAEM,SAAU,IAAM,kBAAmBT,SAAU,oBAC/C,CAAES,SAAU,IAAM,kBAAmBT,SAAU,qBAEjDO,MAAO,CAAEE,SAAU,IAAM,kBAAmBT,SAAU,SACtDK,OAAQ,CAAEI,SAAU,IAAM,kBAAmBT,SAAU,eAEzDY,QAAS,CACPC,SAAS,EACTC,WAAY,CAAC,SAAU,YAG3B,KACA,MAhGmBC,GACnB,cAA8BA,EAC5B,UAAIC,GACF,MAAuC,SAAhCC,KAAKC,aAAa,SAC3B,CAEA,YAAAC,IACE,QAAaF,KAAMA,KAAKG,YAAa,CAAEC,aAAc,CAAC,YAClDJ,KAAKD,OACPC,KAAKK,MAAMC,QAAU,GAErBN,KAAKK,MAAMC,QAAU,MAEzB,CAEA,IAAAC,GACEC,MAAMD,SACNP,KAAKK,MAAMC,QAAU,OAKrBG,YAAW,KAITT,KAAKG,YAAYO,WACdC,cAAc,yBACdC,YAAYC,SAASC,cAAc,SAEtCd,MAAK,IAMLA,KAAKE,cAAc,GAEvB,CAKA,KACE,MAAMjB,EAAUe,KAAKG,YAAYO,WAAWC,cAAc,yBAE1D1B,EAAQ8B,eAAiB,KACvB9B,EAAQ+B,gBACR,QACE,qFAKAhB,KAAKG,YACN,EAEHlB,EAAQgC,eAAiB,KACvBjB,KAAKG,YAAYE,MAAMC,QAAU,MAAM,EAEzCrB,EAAQiC,iBAAmB,OAE3BjC,EAAQkC,MAAQ,KAAM,CACxB,IAGsB,EAiCxB,QAAY,CACVC,MAAO,CAAC,IACRC,eAAgB,gBAChBhB,MAAO,IAAM,4EAKbiB,iBAAkB,CAAC,WAAY,SAAU,SACzC3C,mBCtHJ4C,eAAeC,OAAO7C,EAAeC,E","sources":["webpack://@descope/web-components-ui/./src/components/descope-modal/ModalClass.js","webpack://@descope/web-components-ui/./src/components/descope-modal/index.js"],"sourcesContent":["import { injectStyle } from '@descope-ui/common/components-helpers';\nimport { compose } from '../../helpers';\nimport { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\nimport {\n createStyleMixin,\n draggableMixin,\n createProxy,\n componentNameValidationMixin,\n portalMixin,\n} from '../../mixins';\n\nexport const componentName = getComponentName('modal');\n\nconst customMixin = (superclass) =>\n class ModalMixinClass extends superclass {\n get opened() {\n return this.getAttribute('opened') === 'true';\n }\n\n handleOpened() {\n forwardAttrs(this, this.baseElement, { includeAttrs: ['opened'] });\n if (this.opened) {\n this.style.display = '';\n } else {\n this.style.display = 'none';\n }\n }\n\n init() {\n super.init?.();\n this.style.display = 'none';\n\n // vaadin-dialog might not be loaded in time\n // in order to make sure it's loaded before this block is running\n // we are wrapping it with setTimeout\n setTimeout(() => {\n // we want to sync descope-modal content through vaadin-dialog into the overlay\n // so we are adding a slot to the overlay, which allows us to forward the content from\n // vaadin-dialog to vaadin-dialog-overlay\n this.baseElement.shadowRoot\n .querySelector('vaadin-dialog-overlay')\n .appendChild(document.createElement('slot'));\n\n this.#overrideOverlaySettings();\n\n // we need to always open the modal in `opened=false`\n // to prevent it from rendering outside the dialog\n // first, we have to run `overrideOverlaySettings` to setup\n // the component.\n this.handleOpened();\n });\n }\n\n // the default vaadin behavior is to attach the overlay to the body when opened\n // we do not want that because it's difficult to style the overlay in this way\n // so we override it to open inside the shadow DOM\n #overrideOverlaySettings() {\n const overlay = this.baseElement.shadowRoot.querySelector('vaadin-dialog-overlay');\n\n overlay._attachOverlay = () => {\n overlay.bringToFront();\n injectStyle(\n `\n :host {\n display: flex!important;\n }\n `,\n this.baseElement\n );\n };\n overlay._detachOverlay = () => {\n this.baseElement.style.display = 'none';\n };\n overlay._enterModalState = () => {};\n\n overlay.close = () => false;\n }\n };\n\nexport const ModalClass = compose(\n createStyleMixin({\n mappings: {\n overlayBackgroundColor: { property: () => ModalClass.cssVarList.overlay.backgroundColor },\n overlayShadow: { property: () => ModalClass.cssVarList.overlay.shadow },\n overlayWidth: { property: () => ModalClass.cssVarList.overlay.width },\n },\n }),\n portalMixin({\n name: 'overlay',\n selector: '',\n mappings: {\n hostDisplay: {\n selector: () => ':host(.descope-modal)',\n property: 'display',\n important: true,\n },\n backgroundColor: [\n { selector: () => '::part(content)', property: 'background-color' },\n { selector: () => '::part(overlay)', property: 'background-color' },\n ],\n width: { selector: () => '::part(overlay)', property: 'width' },\n shadow: { selector: () => '::part(overlay)', property: 'box-shadow' },\n },\n forward: {\n include: false,\n attributes: ['opened', 'style'],\n },\n }),\n draggableMixin,\n componentNameValidationMixin,\n customMixin\n)(\n createProxy({\n slots: [''],\n wrappedEleName: 'vaadin-dialog',\n style: () => `\n vaaadin-dialog {\n display: flex!important;\n }\n `,\n excludeAttrsSync: ['tabindex', 'opened', 'style'],\n componentName,\n })\n);\n","import '@vaadin/dialog';\nimport { componentName, ModalClass } from './ModalClass';\n\ncustomElements.define(componentName, ModalClass);\n\nexport { ModalClass, componentName };\n"],"names":["componentName","ModalClass","mappings","overlayBackgroundColor","property","cssVarList","overlay","backgroundColor","overlayShadow","shadow","overlayWidth","width","name","selector","hostDisplay","important","forward","include","attributes","superclass","opened","this","getAttribute","handleOpened","baseElement","includeAttrs","style","display","init","super","setTimeout","shadowRoot","querySelector","appendChild","document","createElement","_attachOverlay","bringToFront","_detachOverlay","_enterModalState","close","slots","wrappedEleName","excludeAttrsSync","customElements","define"],"sourceRoot":""}
@@ -1 +1,2 @@
1
- "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[1331],{10664:(t,e,o)=>{o.r(e),o.d(e,{MultiSelectComboBoxClass:()=>I,componentName:()=>l}),o(36649);var n=o(7138),r=o(14944),i=o(33177),a=o(94619);const l=(0,r.xE)("multi-select-combo-box"),{host:s,inputField:d,inputElement:p,placeholder:c,toggle:u,clearButton:m,label:b,requiredIndicator:h,helperText:g,errorMessage:y,chip:v,chipLabel:f,overflowChipFirstBorder:x,overflowChipSecondBorder:w}={host:{selector:()=>":host"},inputField:{selector:"::part(input-field)"},inputElement:{selector:"input"},placeholder:{selector:"> input:placeholder-shown"},toggle:{selector:"::part(toggle-button)"},clearButton:{selector:"::part(clear-button)"},label:{selector:"::part(label)"},requiredIndicator:{selector:"[required]::part(required-indicator)::after"},helperText:{selector:"::part(helper-text)"},errorMessage:{selector:"::part(error-message)"},chip:{selector:"vaadin-multi-select-combo-box-chip"},chipLabel:{selector:"vaadin-multi-select-combo-box-chip::part(label)"},overflowChipFirstBorder:{selector:"vaadin-multi-select-combo-box-chip[slot='overflow']::before"},overflowChipSecondBorder:{selector:"vaadin-multi-select-combo-box-chip[slot='overflow']::after"}},I=(0,n.Zz)((0,a.RF)({mappings:{hostWidth:{...s,property:"width"},hostDirection:{...s,property:"direction"},fontSize:[{},s],chipFontSize:{...f,property:"font-size"},fontFamily:[b,c,d,g,y,f],labelFontSize:{...b,property:"font-size"},labelFontWeight:{...b,property:"font-weight"},labelTextColor:[{...b,property:"color"},{...h,property:"color"}],errorMessageTextColor:{...y,property:"color"},errorMessageIcon:{...y,property:"background-image"},errorMessageIconSize:{...y,property:"background-size"},errorMessageIconPadding:{...y,property:"padding-inline-start"},errorMessageIconRepeat:{...y,property:"background-repeat"},errorMessageIconPosition:{...y,property:"background-position"},inputHeight:{...d,property:"min-height"},inputBackgroundColor:{...d,property:"background-color"},inputBorderColor:{...d,property:"border-color"},inputBorderWidth:{...d,property:"border-width"},inputBorderStyle:{...d,property:"border-style"},inputBorderRadius:{...d,property:"border-radius"},labelRequiredIndicator:{...h,property:"content"},inputValueTextColor:{...d,property:"color"},inputPlaceholderTextColor:{...c,property:"color"},inputDropdownButtonCursor:[{...u,property:"cursor"},{...m,property:"cursor"}],inputDropdownButtonColor:[{...u,property:"color"},{...m,property:"color"}],inputDropdownButtonSize:[{...u,property:"font-size"},{...m,property:"font-size"}],inputDropdownButtonOffset:[{...u,property:"margin-right"},{...u,property:"margin-left"}],inputOutlineColor:{...d,property:"outline-color"},inputOutlineWidth:{...d,property:"outline-width"},inputOutlineStyle:{...d,property:"outline-style"},inputOutlineOffset:{...d,property:"outline-offset"},inputHorizontalPadding:[{...p,property:"padding-left"},{...p,property:"padding-right"},{...d,property:"padding-inline-start"}],inputVerticalPadding:[{...d,property:"padding-top"},{...d,property:"padding-bottom"}],chipTextColor:{...f,property:"color"},chipBackgroundColor:[{...v,property:"background-color"},{...x,property:"border-color"},{...w,property:"border-color"}],labelPosition:{...b,property:"position"},labelTopPosition:{...b,property:"top"},labelLeftPosition:{...b,property:"left"},labelHorizontalPosition:[{...b,property:"left"},{...b,property:"right"}],inputTransformY:{...b,property:"transform"},inputTransition:{...b,property:"transition"},marginInlineStart:{...b,property:"margin-inline-start"},placeholderOpacity:{...c,property:"opacity"},inputVerticalAlignment:{...d,property:"align-items"},overlayBackground:{property:()=>I.cssVarList.overlay.backgroundColor},overlayTextColor:{property:()=>I.cssVarList.overlay.textColor},overlayBorder:{property:()=>I.cssVarList.overlay.border},overlayFontSize:{property:()=>I.cssVarList.overlay.fontSize},overlayFontFamily:{property:()=>I.cssVarList.overlay.fontFamily},overlayCursor:{property:()=>I.cssVarList.overlay.cursor},overlayItemBoxShadow:{property:()=>I.cssVarList.overlay.itemBoxShadow},overlayItemPaddingInlineStart:{property:()=>I.cssVarList.overlay.itemPaddingInlineStart},overlayItemPaddingInlineEnd:{property:()=>I.cssVarList.overlay.itemPaddingInlineEnd}}}),a.VO,(0,a.mA)({name:"overlay",selector:"vaadin-multi-select-combo-box-internal",mappings:{backgroundColor:{selector:"vaadin-multi-select-combo-box-scroller"},minHeight:{selector:"vaadin-multi-select-combo-box-overlay"},margin:{selector:"vaadin-multi-select-combo-box-overlay"},cursor:{selector:"vaadin-multi-select-combo-box-item"},fontFamily:{selector:"vaadin-multi-select-combo-box-item"},textColor:{selector:"vaadin-multi-select-combo-box-item",property:"color"},fontSize:{selector:"vaadin-multi-select-combo-box-item"},itemBoxShadow:{selector:"vaadin-multi-select-combo-box-item",property:"box-shadow"},itemPaddingInlineStart:{selector:"vaadin-multi-select-combo-box-item",property:"padding-inline-start"},itemPaddingInlineEnd:{selector:"vaadin-multi-select-combo-box-item",property:"padding-inline-end"}},forward:{include:!1,attributes:["size"]}}),(0,a.OZ)({proxyProps:["selectionStart"],inputEvent:"selected-items-changed"}),a._$,a.tQ,(t=>class extends t{static get observedAttributes(){return["readonly"]}#t=({displayName:t,value:e,label:o})=>`<span data-name="${o}" data-id="${e}">${t||o}</span>`;#e;#o=[];get defaultValues(){const t=this.getAttribute("default-values");if(t)try{const e=JSON.parse(t);if(this.isValidDataType(e))return e}catch(t){console.error('could not parse data string from attribute "default-values" -',t.message)}return[]}get renderItem(){return this.#t}set renderItem(t){this.#t=t,this.renderItems()}get data(){if(this.#e)return this.#e;const t=this.getAttribute("data");if(t)try{const e=JSON.parse(t);if(this.isValidDataType(e))return e}catch(t){console.error('could not parse data string from attribute "data" -',t.message)}return[]}set data(t){this.isValidDataType(t)&&(this.#e=t,this.renderItems())}get allowCustomValues(){return"true"===this.getAttribute("allow-custom-value")}get minItemsSelection(){return parseInt(this.getAttribute("min-items-selection"),10)||0}get maxItemsSelection(){return parseInt(this.getAttribute("max-items-selection"),10)||0}isValidDataType(t){const e=Array.isArray(t);return e||console.error("data and default-values must be an array, received:",t),e}getItemsTemplate(){return this.data?.reduce?.(((t,e)=>t+(this.renderItem?.(e||{})||"")),"")}renderItems(){const t=this.getItemsTemplate();t&&(this.innerHTML=t)}updateSelectedItems(){const t=this.baseElement.selectedItems?.map((t=>t.getAttribute("data-id")))||[];t.length>0&&(this.value=t),0===this.value.length&&this.setDefaultValues()}customValueTransformFn(t){return t}setComboBoxDescriptor(){const t=Object.getOwnPropertyDescriptor(this.inputElement.constructor.prototype,"value"),e=this;Object.defineProperties(this.inputElement,{value:{...t,set(o){const n=e.customValueTransformFn(o)||"";n!==this.value&&t.set.call(this,n)}}})}#n(t){return Array.from(new Map(t.map((t=>[t.getAttribute("data-id"),t]))).values())}#r(){const t=Array.from(this.children),e=this.#n(t);t.length?(this.removeAttribute("has-no-options"),e.forEach((t=>{Object.defineProperty(t,"data-name",{value:t.getAttribute("data-name"),configurable:!0,writable:!0}),Object.defineProperty(t,"data-id",{value:t.getAttribute("data-id"),configurable:!0,writable:!0})})),this.baseElement.items=e,setTimeout((()=>{this.updateSelectedItems()}),0)):(this.baseElement.items=[],this.setAttribute("has-no-options","")),this.baseElement.renderer=(t,e,o)=>{t.innerHTML=o.item.outerHTML}}#i(){const t=this.baseElement.shadowRoot.querySelector("vaadin-multi-select-combo-box-internal").shadowRoot.querySelector("vaadin-multi-select-combo-box-overlay");t._attachOverlay=()=>{t.bringToFront()},t._detachOverlay=()=>{},t._enterModalState=()=>{}}#a(){this.allowCustomValues&&this.baseElement.addEventListener("custom-value-set",(t=>{const e=this.#t({label:t.detail,displayName:t.detail,value:t.detail});this.innerHTML+=e,this.baseElement._lastFilter="",setTimeout((()=>{this.value=[...this.value,t.detail]}),0)}))}setGetValidity(){this.getValidity=function(){if(this.pattern){const t=new RegExp(this.pattern);if(this.value.some((e=>!t.test(e))))return{patternMismatch:!0}}return this.isRequired&&!this.value.length?{valueMissing:!0}:this.isRequired&&this.minItemsSelection&&this.value.length<this.minItemsSelection?{rangeUnderflow:!0}:this.maxItemsSelection&&this.value.length>this.maxItemsSelection?{rangeOverflow:!0}:{}};const t=this;this.baseElement.checkValidity=()=>t.validity.valid}init(){super.init?.(),this.setGetValidity(),this.setComboBoxDescriptor(),this.#i(),this.#a(),this.renderItems(),(0,r.mx)(this,this.renderItems.bind(this),{includeAttrs:["data"]}),(0,r.Ge)(this,this.#r.bind(this)),(0,r.EA)(this,this.baseElement,{includeAttrs:["placeholder"]}),this.setDefaultValues(),this.baseElement.addEventListener("selected-items-changed",(()=>{this.#l(),this.dispatchEvent(new CustomEvent("input",{bubbles:!0}))}))}setDefaultValues(){this.defaultValues.length>0&&(this.value=this.defaultValues)}#l(){this.#o=this.baseElement.selectedItems?.map((t=>t.getAttribute("data-id")))||[]}set value(t){if(t&&t.length>0){const e=this.baseElement.items?.filter((e=>t.includes(e["data-id"])));if(this.allowCustomValues){const o=e?.map((t=>t.getAttribute("data-id")))||[],n=t.filter((t=>!o.includes(t)));if(n.length){const e=n.reduce(((t,e)=>t+this.#t({label:e,displayName:e,value:e})),"");return this.innerHTML+=e,void setTimeout((()=>{this.value=t}),0)}}const o=e?.map((t=>t.getAttribute("data-id")))||[];(0,n.AG)(this.#o,o)||(this.baseElement.selectedItems=e)}else this.baseElement.selectedItems=[]}get value(){return this.#o}attributeChangedCallback(t,e,o){super.attributeChangedCallback?.(t,e,o),"readonly"===t&&this.onReadOnlyChange(null!==o&&"true"===o)}onReadOnlyChange(t){t?this.baseElement?.shadowRoot?.querySelector("vaadin-multi-select-combo-box-internal")?.setAttribute("inert",t):this.baseElement?.shadowRoot?.querySelector("vaadin-multi-select-combo-box-internal")?.removeAttribute("inert")}}))((0,a.tz)({slots:["","prefix"],wrappedEleName:"vaadin-multi-select-combo-box",style:()=>`\n\t\t:host {\n\t\t\tdisplay: inline-flex;\n\t\t\tbox-sizing: border-box;\n\t\t\t-webkit-mask-image: none;\n\t\t}\n\t\t${(0,i.cy)(I.cssVarList)}\n\t\t${(0,i.fu)("vaadin-multi-select-combo-box")}\n\t\t${(0,i.lS)("vaadin-multi-select-combo-box")}\n\t\t${(0,i.I4)("vaadin-multi-select-combo-box")}\n\n\t\tvaadin-multi-select-combo-box {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t}\n\t\tvaadin-multi-select-combo-box::before {\n\t\t\theight: initial;\n\t\t}\n\t\tvaadin-multi-select-combo-box [slot="input"] {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n align-self: center;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\t\tvaadin-multi-select-combo-box[readonly] [slot="input"] {\n flex-grow: 1;\n flex-basis: 4em;\n\t\t}\n\n\t\t::part(input-field) {\n padding: 0;\n\t\t\tbox-shadow: none;\n\t\t}\n ${(0,i.$J)("vaadin-multi-select-combo-box")}\n :host([has-label]) vaadin-multi-select-combo-box-chip::part(label) {\n display: block;\n }\n\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::before,\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::after {\n left: -4px;\n right: -4px;\n border-left-width: 0;\n border-inline-start-style: solid;\n border-inline-start-width: 2px;\n }\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::after {\n left: -8px;\n right: -8px;\n }\n\n :host([has-no-options][allow-custom-value='true']) ::part(toggle-button) {\n display: none;\n }\n\n ${(0,i.Kl)()}\n\n vaadin-multi-select-combo-box::part(toggle-button),\n vaadin-multi-select-combo-box::part(clear-button) {\n align-self: center;\n }\n\n vaadin-multi-select-combo-box[label-type="floating"]:not([focused])[readonly] > input:placeholder-shown {\n opacity: 0;\n }\n vaadin-multi-select-combo-box[label-type="floating"]:not([focused])[disabled] > input:placeholder-shown {\n opacity: 0;\n }\n\n\t\t`,excludeAttrsSync:["tabindex","size","data","placeholder"],componentName:l,includeForwardProps:["items","renderer","selectedItems"]}));customElements.define(l,I)},33177:(t,e,o)=>{o.d(e,{$J:()=>u,I4:()=>a,Kl:()=>m,LJ:()=>c,Qv:()=>i,X6:()=>s,cy:()=>n,fu:()=>d,kG:()=>p,lS:()=>l,zm:()=>r});const n=t=>`\n :host {\n padding: calc(var(${t.inputOutlineWidth}) + var(${t.inputOutlineOffset}))\n }\n`,r=t=>`\n ${t} {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n }\n`,i=t=>`\n ${t}::part(input-field) {\n overflow: hidden;\n padding: 0;\n box-shadow: none;\n }\n`,a=t=>`\n ${t} > label,\n ${t}::part(label),\n ${t}::part(required-indicator) {\n cursor: pointer;\n }\n`,l=(t,e="input")=>`\n ${t}[disabled] > ${e}:placeholder-shown,\n\t${t}[readonly] > ${e}:placeholder-shown {\n\t\topacity: 1;\n\t}\n`,s=()=>"\n :host {\n --vaadin-field-default-width: auto;\n box-sizing: border-box;\n }\n",d=t=>`\n ${t}::part(input-field)::after {\n opacity: 0;\n }\n`,p=t=>`\n ${t}::part(input-field)::after {\n background: none;\n }\n`,c=(t,e)=>`\n ${r(t)}\n ${a(t)}\n ${l(t)}\n ${i(t)}\n ${((t,e)=>`\n ${t} input:-webkit-autofill,\n ${t} input:-webkit-autofill::first-line,\n ${t} input:-webkit-autofill:hover,\n ${t} input:-webkit-autofill:active,\n ${t} input:-webkit-autofill:focus {\n -webkit-text-fill-color: var(${e.inputValueTextColor});\n box-shadow: 0 0 0 var(${e.inputHeight}) var(${e.inputBackgroundColor}) inset;\n }\n`)(t,e)}\n ${p(t)}\n ${(t=>`\n ${t}::before {\n\t\theight: unset;\n\t}\n`)(t)}\n ${(t=>`\n ${t} > input {\n -webkit-mask-image: none;\n min-height: 0;\n box-sizing: border-box;\n }\n`)(t)}\n ${(t=>`\n ${t}::part(input-field)::after {\n border: none;\n }\n`)(t)}\n`,u=t=>`\n :host ::part(error-message) {\n direction: ltr;\n }\n :host([required]) ::part(required-indicator) {\n width: 1em;\n display: inline-flex;\n }\n :host([required]) ::part(required-indicator)::after {\n position: static;\n }\n :host([has-label]) ::part(label) {\n padding-right: 0;\n padding-bottom: 0;\n display: flex;\n width: 100%;\n }\n ${t} [slot="label"] {\n max-width: calc(100% - 1em);\n overflow: hidden;\n text-overflow: ellipsis;\n padding-bottom: 0.5em;\n }\n`,m=()=>'\n :host([label-type="floating"]) {\n position: relative;\n }\n :host([label-type="floating"][has-label]) [slot="label"] {\n padding: 0;\n }\n :host([label-type="floating"][has-label]) > ::part(label) {\n z-index: 1;\n padding: 0;\n width: auto;\n }\n '}}]);
1
+ "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[1331],{12848:(t,e,o)=>{o.r(e),o.d(e,{MultiSelectComboBoxClass:()=>I,componentName:()=>l}),o(51408);var n=o(9696),r=o(97810),i=o(73551),a=o(79365);const l=(0,r.xE)("multi-select-combo-box"),{host:s,inputField:d,inputElement:p,placeholder:c,toggle:u,clearButton:m,label:b,requiredIndicator:h,helperText:g,errorMessage:y,chip:v,chipLabel:f,overflowChipFirstBorder:x,overflowChipSecondBorder:w}={host:{selector:()=>":host"},inputField:{selector:"::part(input-field)"},inputElement:{selector:"input"},placeholder:{selector:"> input:placeholder-shown"},toggle:{selector:"::part(toggle-button)"},clearButton:{selector:"::part(clear-button)"},label:{selector:"::part(label)"},requiredIndicator:{selector:"[required]::part(required-indicator)::after"},helperText:{selector:"::part(helper-text)"},errorMessage:{selector:"::part(error-message)"},chip:{selector:"vaadin-multi-select-combo-box-chip"},chipLabel:{selector:"vaadin-multi-select-combo-box-chip::part(label)"},overflowChipFirstBorder:{selector:"vaadin-multi-select-combo-box-chip[slot='overflow']::before"},overflowChipSecondBorder:{selector:"vaadin-multi-select-combo-box-chip[slot='overflow']::after"}},I=(0,n.Zz)((0,a.RF)({mappings:{hostWidth:{...s,property:"width"},hostDirection:{...s,property:"direction"},fontSize:[{},s],chipFontSize:{...f,property:"font-size"},fontFamily:[b,c,d,g,y,f],labelFontSize:{...b,property:"font-size"},labelFontWeight:{...b,property:"font-weight"},labelTextColor:[{...b,property:"color"},{...h,property:"color"}],errorMessageTextColor:{...y,property:"color"},errorMessageIcon:{...y,property:"background-image"},errorMessageIconSize:{...y,property:"background-size"},errorMessageIconPadding:{...y,property:"padding-inline-start"},errorMessageIconRepeat:{...y,property:"background-repeat"},errorMessageIconPosition:{...y,property:"background-position"},inputHeight:{...d,property:"min-height"},inputBackgroundColor:{...d,property:"background-color"},inputBorderColor:{...d,property:"border-color"},inputBorderWidth:{...d,property:"border-width"},inputBorderStyle:{...d,property:"border-style"},inputBorderRadius:{...d,property:"border-radius"},labelRequiredIndicator:{...h,property:"content"},inputValueTextColor:{...d,property:"color"},inputPlaceholderTextColor:{...c,property:"color"},inputDropdownButtonCursor:[{...u,property:"cursor"},{...m,property:"cursor"}],inputDropdownButtonColor:[{...u,property:"color"},{...m,property:"color"}],inputDropdownButtonSize:[{...u,property:"font-size"},{...m,property:"font-size"}],inputDropdownButtonOffset:[{...u,property:"margin-right"},{...u,property:"margin-left"}],inputOutlineColor:{...d,property:"outline-color"},inputOutlineWidth:{...d,property:"outline-width"},inputOutlineStyle:{...d,property:"outline-style"},inputOutlineOffset:{...d,property:"outline-offset"},inputHorizontalPadding:[{...p,property:"padding-left"},{...p,property:"padding-right"},{...d,property:"padding-inline-start"}],inputVerticalPadding:[{...d,property:"padding-top"},{...d,property:"padding-bottom"}],chipTextColor:{...f,property:"color"},chipBackgroundColor:[{...v,property:"background-color"},{...x,property:"border-color"},{...w,property:"border-color"}],labelPosition:{...b,property:"position"},labelTopPosition:{...b,property:"top"},labelLeftPosition:{...b,property:"left"},labelHorizontalPosition:[{...b,property:"left"},{...b,property:"right"}],inputTransformY:{...b,property:"transform"},inputTransition:{...b,property:"transition"},marginInlineStart:{...b,property:"margin-inline-start"},placeholderOpacity:{...c,property:"opacity"},inputVerticalAlignment:{...d,property:"align-items"},overlayBackground:{property:()=>I.cssVarList.overlay.backgroundColor},overlayTextColor:{property:()=>I.cssVarList.overlay.textColor},overlayBorder:{property:()=>I.cssVarList.overlay.border},overlayFontSize:{property:()=>I.cssVarList.overlay.fontSize},overlayFontFamily:{property:()=>I.cssVarList.overlay.fontFamily},overlayCursor:{property:()=>I.cssVarList.overlay.cursor},overlayItemBoxShadow:{property:()=>I.cssVarList.overlay.itemBoxShadow},overlayItemPaddingInlineStart:{property:()=>I.cssVarList.overlay.itemPaddingInlineStart},overlayItemPaddingInlineEnd:{property:()=>I.cssVarList.overlay.itemPaddingInlineEnd}}}),a.VO,(0,a.mA)({name:"overlay",selector:"vaadin-multi-select-combo-box-internal",mappings:{backgroundColor:{selector:"vaadin-multi-select-combo-box-scroller"},minHeight:{selector:"vaadin-multi-select-combo-box-overlay"},margin:{selector:"vaadin-multi-select-combo-box-overlay"},cursor:{selector:"vaadin-multi-select-combo-box-item"},fontFamily:{selector:"vaadin-multi-select-combo-box-item"},textColor:{selector:"vaadin-multi-select-combo-box-item",property:"color"},fontSize:{selector:"vaadin-multi-select-combo-box-item"},itemBoxShadow:{selector:"vaadin-multi-select-combo-box-item",property:"box-shadow"},itemPaddingInlineStart:{selector:"vaadin-multi-select-combo-box-item",property:"padding-inline-start"},itemPaddingInlineEnd:{selector:"vaadin-multi-select-combo-box-item",property:"padding-inline-end"}},forward:{include:!1,attributes:["size"]}}),(0,a.OZ)({proxyProps:["selectionStart"],inputEvent:"selected-items-changed"}),a._$,a.tQ,(t=>class extends t{static get observedAttributes(){return["readonly"]}#t=({displayName:t,value:e,label:o})=>`<span data-name="${o}" data-id="${e}">${t||o}</span>`;#e;#o=[];get defaultValues(){const t=this.getAttribute("default-values");if(t)try{const e=JSON.parse(t);if(this.isValidDataType(e))return e}catch(t){console.error('could not parse data string from attribute "default-values" -',t.message)}return[]}get renderItem(){return this.#t}set renderItem(t){this.#t=t,this.renderItems()}get data(){if(this.#e)return this.#e;const t=this.getAttribute("data");if(t)try{const e=JSON.parse(t);if(this.isValidDataType(e))return e}catch(t){console.error('could not parse data string from attribute "data" -',t.message)}return[]}set data(t){this.isValidDataType(t)&&(this.#e=t,this.renderItems())}get allowCustomValues(){return"true"===this.getAttribute("allow-custom-value")}get minItemsSelection(){return parseInt(this.getAttribute("min-items-selection"),10)||0}get maxItemsSelection(){return parseInt(this.getAttribute("max-items-selection"),10)||0}isValidDataType(t){const e=Array.isArray(t);return e||console.error("data and default-values must be an array, received:",t),e}getItemsTemplate(){return this.data?.reduce?.(((t,e)=>t+(this.renderItem?.(e||{})||"")),"")}renderItems(){const t=this.getItemsTemplate();t&&(this.innerHTML=t)}updateSelectedItems(){const t=this.baseElement.selectedItems?.map((t=>t.getAttribute("data-id")))||[];t.length>0&&(this.value=t),0===this.value.length&&this.setDefaultValues()}customValueTransformFn(t){return t}setComboBoxDescriptor(){const t=Object.getOwnPropertyDescriptor(this.inputElement.constructor.prototype,"value"),e=this;Object.defineProperties(this.inputElement,{value:{...t,set(o){const n=e.customValueTransformFn(o)||"";n!==this.value&&t.set.call(this,n)}}})}#n(t){return Array.from(new Map(t.map((t=>[t.getAttribute("data-id"),t]))).values())}#r(){const t=Array.from(this.children),e=this.#n(t);t.length?(this.removeAttribute("has-no-options"),e.forEach((t=>{Object.defineProperty(t,"data-name",{value:t.getAttribute("data-name"),configurable:!0,writable:!0}),Object.defineProperty(t,"data-id",{value:t.getAttribute("data-id"),configurable:!0,writable:!0})})),this.baseElement.items=e,setTimeout((()=>{this.updateSelectedItems()}),0)):(this.baseElement.items=[],this.setAttribute("has-no-options","")),this.baseElement.renderer=(t,e,o)=>{t.innerHTML=o.item.outerHTML}}#i(){const t=this.baseElement.shadowRoot.querySelector("vaadin-multi-select-combo-box-internal").shadowRoot.querySelector("vaadin-multi-select-combo-box-overlay");t._attachOverlay=()=>{t.bringToFront()},t._detachOverlay=()=>{},t._enterModalState=()=>{}}#a(){this.allowCustomValues&&this.baseElement.addEventListener("custom-value-set",(t=>{const e=this.#t({label:t.detail,displayName:t.detail,value:t.detail});this.innerHTML+=e,this.baseElement._lastFilter="",setTimeout((()=>{this.value=[...this.value,t.detail]}),0)}))}setGetValidity(){this.getValidity=function(){if(this.pattern){const t=new RegExp(this.pattern);if(this.value.some((e=>!t.test(e))))return{patternMismatch:!0}}return this.isRequired&&!this.value.length?{valueMissing:!0}:this.isRequired&&this.minItemsSelection&&this.value.length<this.minItemsSelection?{rangeUnderflow:!0}:this.maxItemsSelection&&this.value.length>this.maxItemsSelection?{rangeOverflow:!0}:{}};const t=this;this.baseElement.checkValidity=()=>t.validity.valid}init(){super.init?.(),this.setGetValidity(),this.setComboBoxDescriptor(),this.#i(),this.#a(),this.renderItems(),(0,r.mx)(this,this.renderItems.bind(this),{includeAttrs:["data"]}),(0,r.Ge)(this,this.#r.bind(this)),(0,r.EA)(this,this.baseElement,{includeAttrs:["placeholder"]}),this.setDefaultValues(),this.baseElement.addEventListener("selected-items-changed",(()=>{this.#l(),this.dispatchEvent(new CustomEvent("input",{bubbles:!0}))}))}setDefaultValues(){this.defaultValues.length>0&&(this.value=this.defaultValues)}#l(){this.#o=this.baseElement.selectedItems?.map((t=>t.getAttribute("data-id")))||[]}set value(t){if(t&&t.length>0){const e=this.baseElement.items?.filter((e=>t.includes(e["data-id"])));if(this.allowCustomValues){const o=e?.map((t=>t.getAttribute("data-id")))||[],n=t.filter((t=>!o.includes(t)));if(n.length){const e=n.reduce(((t,e)=>t+this.#t({label:e,displayName:e,value:e})),"");return this.innerHTML+=e,void setTimeout((()=>{this.value=t}),0)}}const o=e?.map((t=>t.getAttribute("data-id")))||[];(0,n.AG)(this.#o,o)||(this.baseElement.selectedItems=e)}else this.baseElement.selectedItems=[]}get value(){return this.#o}attributeChangedCallback(t,e,o){super.attributeChangedCallback?.(t,e,o),"readonly"===t&&this.onReadOnlyChange(null!==o&&"true"===o)}onReadOnlyChange(t){t?this.baseElement?.shadowRoot?.querySelector("vaadin-multi-select-combo-box-internal")?.setAttribute("inert",t):this.baseElement?.shadowRoot?.querySelector("vaadin-multi-select-combo-box-internal")?.removeAttribute("inert")}}))((0,a.tz)({slots:["","prefix"],wrappedEleName:"vaadin-multi-select-combo-box",style:()=>`\n\t\t:host {\n\t\t\tdisplay: inline-flex;\n\t\t\tbox-sizing: border-box;\n\t\t\t-webkit-mask-image: none;\n\t\t}\n\t\t${(0,i.cy)(I.cssVarList)}\n\t\t${(0,i.fu)("vaadin-multi-select-combo-box")}\n\t\t${(0,i.lS)("vaadin-multi-select-combo-box")}\n\t\t${(0,i.I4)("vaadin-multi-select-combo-box")}\n\n\t\tvaadin-multi-select-combo-box {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t}\n\t\tvaadin-multi-select-combo-box::before {\n\t\t\theight: initial;\n\t\t}\n\t\tvaadin-multi-select-combo-box [slot="input"] {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n align-self: center;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\t\tvaadin-multi-select-combo-box[readonly] [slot="input"] {\n flex-grow: 1;\n flex-basis: 4em;\n\t\t}\n\n\t\t::part(input-field) {\n padding: 0;\n\t\t\tbox-shadow: none;\n\t\t}\n ${(0,i.$J)("vaadin-multi-select-combo-box")}\n :host([has-label]) vaadin-multi-select-combo-box-chip::part(label) {\n display: block;\n }\n\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::before,\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::after {\n left: -4px;\n right: -4px;\n border-left-width: 0;\n border-inline-start-style: solid;\n border-inline-start-width: 2px;\n }\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::after {\n left: -8px;\n right: -8px;\n }\n\n :host([has-no-options][allow-custom-value='true']) ::part(toggle-button) {\n display: none;\n }\n\n ${(0,i.Kl)()}\n\n vaadin-multi-select-combo-box::part(toggle-button),\n vaadin-multi-select-combo-box::part(clear-button) {\n align-self: center;\n }\n\n vaadin-multi-select-combo-box[label-type="floating"]:not([focused])[readonly] > input:placeholder-shown {\n opacity: 0;\n }\n vaadin-multi-select-combo-box[label-type="floating"]:not([focused])[disabled] > input:placeholder-shown {\n opacity: 0;\n }\n\n\t\t`,excludeAttrsSync:["tabindex","size","data","placeholder"],componentName:l,includeForwardProps:["items","renderer","selectedItems"]}));customElements.define(l,I)},73551:(t,e,o)=>{o.d(e,{$J:()=>u,I4:()=>a,Kl:()=>m,LJ:()=>c,Qv:()=>i,X6:()=>s,cy:()=>n,fu:()=>d,kG:()=>p,lS:()=>l,zm:()=>r});const n=t=>`\n :host {\n padding: calc(var(${t.inputOutlineWidth}) + var(${t.inputOutlineOffset}))\n }\n`,r=t=>`\n ${t} {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n }\n`,i=t=>`\n ${t}::part(input-field) {\n overflow: hidden;\n padding: 0;\n box-shadow: none;\n }\n`,a=t=>`\n ${t} > label,\n ${t}::part(label),\n ${t}::part(required-indicator) {\n cursor: pointer;\n }\n`,l=(t,e="input")=>`\n ${t}[disabled] > ${e}:placeholder-shown,\n\t${t}[readonly] > ${e}:placeholder-shown {\n\t\topacity: 1;\n\t}\n`,s=()=>"\n :host {\n --vaadin-field-default-width: auto;\n box-sizing: border-box;\n }\n",d=t=>`\n ${t}::part(input-field)::after {\n opacity: 0;\n }\n`,p=t=>`\n ${t}::part(input-field)::after {\n background: none;\n }\n`,c=(t,e)=>`\n ${r(t)}\n ${a(t)}\n ${l(t)}\n ${i(t)}\n ${((t,e)=>`\n ${t} input:-webkit-autofill,\n ${t} input:-webkit-autofill::first-line,\n ${t} input:-webkit-autofill:hover,\n ${t} input:-webkit-autofill:active,\n ${t} input:-webkit-autofill:focus {\n -webkit-text-fill-color: var(${e.inputValueTextColor});\n box-shadow: 0 0 0 var(${e.inputHeight}) var(${e.inputBackgroundColor}) inset;\n }\n`)(t,e)}\n ${p(t)}\n ${(t=>`\n ${t}::before {\n\t\theight: unset;\n\t}\n`)(t)}\n ${(t=>`\n ${t} > input {\n -webkit-mask-image: none;\n min-height: 0;\n box-sizing: border-box;\n }\n`)(t)}\n ${(t=>`\n ${t}::part(input-field)::after {\n border: none;\n }\n`)(t)}\n`,u=t=>`\n :host ::part(error-message) {\n direction: ltr;\n }\n :host([required]) ::part(required-indicator) {\n width: 1em;\n display: inline-flex;\n }\n :host([required]) ::part(required-indicator)::after {\n position: static;\n }\n :host([has-label]) ::part(label) {\n padding-right: 0;\n padding-bottom: 0;\n display: flex;\n width: 100%;\n }\n ${t} [slot="label"] {\n max-width: calc(100% - 1em);\n overflow: hidden;\n text-overflow: ellipsis;\n padding-bottom: 0.5em;\n }\n`,m=()=>'\n :host([label-type="floating"]) {\n position: relative;\n }\n :host([label-type="floating"][has-label]) [slot="label"] {\n padding: 0;\n }\n :host([label-type="floating"][has-label]) > ::part(label) {\n z-index: 1;\n padding: 0;\n width: auto;\n }\n '}}]);
2
+ //# sourceMappingURL=descope-multi-select-combo-box-index-js.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descope-multi-select-combo-box-index-js.js","mappings":"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","sources":["webpack://@descope/web-components-ui/./src/components/descope-multi-select-combo-box/MultiSelectComboBoxClass.js","webpack://@descope/web-components-ui/./src/components/descope-multi-select-combo-box/index.js","webpack://@descope/web-components-ui/./src/helpers/themeHelpers/resetHelpers.js"],"sourcesContent":["import { compose, compareArraysUnordered } from '../../helpers';\nimport {\n forwardAttrs,\n getComponentName,\n observeAttributes,\n observeChildren,\n} from '../../helpers/componentHelpers';\nimport {\n resetInputLabelPosition,\n resetInputCursor,\n resetInputPlaceholder,\n resetInputReadonlyStyle,\n useHostExternalPadding,\n inputFloatingLabelStyle,\n} from '../../helpers/themeHelpers/resetHelpers';\nimport {\n createStyleMixin,\n draggableMixin,\n createProxy,\n componentNameValidationMixin,\n portalMixin,\n proxyInputMixin,\n changeMixin,\n} from '../../mixins';\n\nexport const componentName = getComponentName('multi-select-combo-box');\n\nconst multiSelectComboBoxMixin = (superclass) =>\n class MultiSelectComboBoxMixinClass extends superclass {\n static get observedAttributes() {\n return ['readonly'];\n }\n\n // eslint-disable-next-line class-methods-use-this\n #renderItem = ({ displayName, value, label }) => {\n return `<span data-name=\"${label}\" data-id=\"${value}\">${displayName || label}</span>`;\n };\n\n #data;\n\n #value = [];\n\n get defaultValues() {\n const defaultValuesAttr = this.getAttribute('default-values');\n if (defaultValuesAttr) {\n try {\n const defaultValues = JSON.parse(defaultValuesAttr);\n if (this.isValidDataType(defaultValues)) {\n return defaultValues;\n }\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error('could not parse data string from attribute \"default-values\" -', e.message);\n }\n }\n return [];\n }\n\n get renderItem() {\n return this.#renderItem;\n }\n\n set renderItem(renderFn) {\n this.#renderItem = renderFn;\n this.renderItems();\n }\n\n get data() {\n if (this.#data) return this.#data;\n\n const dataAttr = this.getAttribute('data');\n\n if (dataAttr) {\n try {\n const data = JSON.parse(dataAttr);\n if (this.isValidDataType(data)) {\n return data;\n }\n } catch (e) {\n // eslint-disable-next-line no-console\n console.error('could not parse data string from attribute \"data\" -', e.message);\n }\n }\n\n return [];\n }\n\n set data(data) {\n if (this.isValidDataType(data)) {\n this.#data = data;\n this.renderItems();\n }\n }\n\n get allowCustomValues() {\n return this.getAttribute('allow-custom-value') === 'true';\n }\n\n get minItemsSelection() {\n return parseInt(this.getAttribute('min-items-selection'), 10) || 0;\n }\n\n get maxItemsSelection() {\n return parseInt(this.getAttribute('max-items-selection'), 10) || 0;\n }\n\n // eslint-disable-next-line class-methods-use-this\n isValidDataType(data) {\n const isValid = Array.isArray(data);\n if (!isValid) {\n // eslint-disable-next-line no-console\n console.error('data and default-values must be an array, received:', data);\n }\n\n return isValid;\n }\n\n getItemsTemplate() {\n return this.data?.reduce?.((acc, item) => acc + (this.renderItem?.(item || {}) || ''), '');\n }\n\n renderItems() {\n const template = this.getItemsTemplate();\n if (template) this.innerHTML = template;\n }\n\n updateSelectedItems() {\n // This is a list of all the selected items, including ones that may have been removed from the DOM\n const currentSelected =\n this.baseElement.selectedItems?.map((item) => item.getAttribute('data-id')) || [];\n\n // if there are selected items, we want to trigger a potential update to the value if some child elements were removed\n if (currentSelected.length > 0) {\n // setting the value checks that the selected items are still in the DOM and will not set the value if they are not\n this.value = currentSelected;\n }\n\n // otherwise, if default value is specified, set default value as selected item\n if (this.value.length === 0) {\n this.setDefaultValues();\n }\n }\n\n // eslint-disable-next-line class-methods-use-this\n customValueTransformFn(val) {\n return val;\n }\n\n // We want to override Vaadin's Combo Box value setter. This is needed since Vaadin couples between the\n // field that it searches the value, and the finaly display value of the input.\n // We provide a custom transform function to override that behavior.\n setComboBoxDescriptor() {\n const valueDescriptor = Object.getOwnPropertyDescriptor(\n this.inputElement.constructor.prototype,\n 'value'\n );\n\n const comboBox = this;\n\n Object.defineProperties(this.inputElement, {\n value: {\n ...valueDescriptor,\n set(val) {\n const transformedValue = comboBox.customValueTransformFn(val) || '';\n\n if (transformedValue === this.value) {\n return;\n }\n\n valueDescriptor.set.call(this, transformedValue);\n },\n },\n });\n }\n\n // To prevent duplicate items for the multi select options, we dedup them based on the \"data-id\" attribute\n // eslint-disable-next-line class-methods-use-this\n #dedupItems(items) {\n return Array.from(\n new Map(items.map((item) => [item.getAttribute('data-id'), item])).values()\n );\n }\n\n // vaadin api is to set props on their combo box node,\n // in order to avoid it, we are passing the children of this component\n // to the items & renderer props, so it will be used as the combo box items\n #onChildrenChange() {\n const items = Array.from(this.children);\n const dedupItems = this.#dedupItems(items);\n\n // we want the data-name attribute to be accessible as an object attribute\n if (items.length) {\n this.removeAttribute('has-no-options');\n\n dedupItems.forEach((node) => {\n Object.defineProperty(node, 'data-name', {\n value: node.getAttribute('data-name'),\n configurable: true,\n writable: true,\n });\n Object.defineProperty(node, 'data-id', {\n value: node.getAttribute('data-id'),\n configurable: true,\n writable: true,\n });\n });\n\n this.baseElement.items = dedupItems;\n\n setTimeout(() => {\n // set timeout to ensure this runs after customValueTransformFn had the chance to be overriden\n this.updateSelectedItems();\n }, 0);\n } else {\n this.baseElement.items = [];\n this.setAttribute('has-no-options', '');\n }\n\n // use vaadin combobox custom renderer to render options as HTML\n // and not via default renderer, which renders only the data-name's value\n // in its own HTML template\n this.baseElement.renderer = (root, combo, model) => {\n // eslint-disable-next-line no-param-reassign\n root.innerHTML = model.item.outerHTML;\n };\n }\n\n // the default vaadin behavior is to attach the overlay to the body when opened\n // we do not want that because it's difficult to style the overlay in this way\n // so we override it to open inside the shadow DOM\n #overrideOverlaySettings() {\n const overlay = this.baseElement.shadowRoot\n .querySelector('vaadin-multi-select-combo-box-internal')\n .shadowRoot.querySelector('vaadin-multi-select-combo-box-overlay');\n overlay._attachOverlay = () => {\n overlay.bringToFront();\n };\n overlay._detachOverlay = () => {};\n overlay._enterModalState = () => {};\n }\n\n #handleCustomValues() {\n if (this.allowCustomValues) {\n this.baseElement.addEventListener('custom-value-set', (e) => {\n const newItemHtml = this.#renderItem({\n label: e.detail,\n displayName: e.detail,\n value: e.detail,\n });\n this.innerHTML += newItemHtml;\n // The internal filter needs to be removed, otherwise there's a bug where a new custom item\n // added can't be removed from the dropdown because of how the vaadin component is implemented\n this.baseElement._lastFilter = '';\n // The value needs to be set with a timeout because it needs to execute after\n // the custom value is added to items by the children change observer\n setTimeout(() => {\n this.value = [...this.value, e.detail];\n }, 0);\n });\n }\n }\n\n setGetValidity() {\n // eslint-disable-next-line func-names\n this.getValidity = function () {\n if (this.pattern) {\n const patternRegex = new RegExp(this.pattern);\n if (this.value.some((val) => !patternRegex.test(val)))\n return {\n patternMismatch: true,\n };\n }\n\n if (this.isRequired && !this.value.length) {\n return {\n valueMissing: true,\n };\n }\n // If the field is not required, no minimum selection can be set\n if (\n this.isRequired &&\n this.minItemsSelection &&\n this.value.length < this.minItemsSelection\n ) {\n return {\n rangeUnderflow: true,\n };\n }\n if (this.maxItemsSelection && this.value.length > this.maxItemsSelection) {\n return {\n rangeOverflow: true,\n };\n }\n return {};\n };\n\n // This is required to override the default validity check of the vaadin component\n // which is triggered when the component is checked for validity after blur\n // Without this, our minItemsSelection and maxItemsSelection constraints will not be checked\n const that = this;\n // eslint-disable-next-line func-names\n this.baseElement.checkValidity = () => {\n return that.validity.valid;\n };\n }\n\n init() {\n super.init?.();\n\n this.setGetValidity();\n\n this.setComboBoxDescriptor();\n\n this.#overrideOverlaySettings();\n\n this.#handleCustomValues();\n\n this.renderItems();\n\n observeAttributes(this, this.renderItems.bind(this), { includeAttrs: ['data'] });\n\n observeChildren(this, this.#onChildrenChange.bind(this));\n\n // Note: we need to forward the `placeholder` because the vaadin component observes it and\n // tries to override it, causing us to lose the user set placeholder.\n forwardAttrs(this, this.baseElement, { includeAttrs: ['placeholder'] });\n\n this.setDefaultValues();\n\n this.baseElement.addEventListener('selected-items-changed', () => {\n this.#updateInternalValue();\n this.dispatchEvent(new CustomEvent('input', { bubbles: true }));\n });\n }\n\n setDefaultValues() {\n const initialDefaultValues = this.defaultValues;\n if (initialDefaultValues.length > 0) {\n this.value = this.defaultValues;\n }\n }\n\n #updateInternalValue() {\n // This is done here because we don't want to return a different copy of the same array\n // every time get value is called if a new value wasn't set\n this.#value =\n this.baseElement.selectedItems?.map((elem) => elem.getAttribute('data-id')) || [];\n }\n\n // Updating the value will update the selectedItems, which will trigger an event 'selected-items-changed'\n // which we listen to in the init function to update the internal value\n set value(vals) {\n if (vals && vals.length > 0) {\n // Filters the children of the component to find the ones that match the values,\n // since it's possible that some values that are trying to set are not in the children\n const selectedChildren = this.baseElement.items?.filter((item) =>\n vals.includes(item['data-id'])\n );\n\n // If the component allows custom values, we need to add the values that are not present in the children\n if (this.allowCustomValues) {\n const existingValues =\n selectedChildren?.map((child) => child.getAttribute('data-id')) || [];\n const missingValues = vals.filter((val) => !existingValues.includes(val));\n\n if (missingValues.length) {\n const newItemsHtml = missingValues.reduce((acc, val) => {\n const newItemHtml = this.#renderItem({\n label: val,\n displayName: val,\n value: val,\n });\n return acc + newItemHtml;\n }, '');\n this.innerHTML += newItemsHtml;\n\n // The value needs to be set with a timeout because it needs to execute after\n // the custom values are added to the items by the children change observer\n setTimeout(() => {\n this.value = vals;\n }, 0);\n return;\n }\n }\n\n const newSelectedValues =\n selectedChildren?.map((child) => child.getAttribute('data-id')) || [];\n if (!compareArraysUnordered(this.#value, newSelectedValues)) {\n this.baseElement.selectedItems = selectedChildren;\n }\n } else {\n this.baseElement.selectedItems = [];\n }\n }\n\n get value() {\n return this.#value;\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n if (attrName === 'readonly') {\n this.onReadOnlyChange(newValue !== null && newValue === 'true');\n }\n }\n\n onReadOnlyChange(val) {\n if (val) {\n this.baseElement?.shadowRoot\n ?.querySelector('vaadin-multi-select-combo-box-internal')\n ?.setAttribute('inert', val);\n } else {\n this.baseElement?.shadowRoot\n ?.querySelector('vaadin-multi-select-combo-box-internal')\n ?.removeAttribute('inert');\n }\n }\n };\n\nconst {\n host,\n inputField,\n inputElement,\n placeholder,\n toggle,\n clearButton,\n label,\n requiredIndicator,\n helperText,\n errorMessage,\n chip,\n chipLabel,\n overflowChipFirstBorder,\n overflowChipSecondBorder,\n} = {\n host: { selector: () => ':host' },\n inputField: { selector: '::part(input-field)' },\n inputElement: { selector: 'input' },\n placeholder: { selector: '> input:placeholder-shown' },\n toggle: { selector: '::part(toggle-button)' },\n clearButton: { selector: '::part(clear-button)' },\n label: { selector: '::part(label)' },\n requiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n helperText: { selector: '::part(helper-text)' },\n errorMessage: { selector: '::part(error-message)' },\n chip: { selector: 'vaadin-multi-select-combo-box-chip' },\n chipLabel: { selector: 'vaadin-multi-select-combo-box-chip::part(label)' },\n overflowChipFirstBorder: {\n selector: \"vaadin-multi-select-combo-box-chip[slot='overflow']::before\",\n },\n overflowChipSecondBorder: {\n selector: \"vaadin-multi-select-combo-box-chip[slot='overflow']::after\",\n },\n};\n\nexport const MultiSelectComboBoxClass = compose(\n createStyleMixin({\n mappings: {\n hostWidth: { ...host, property: 'width' },\n hostDirection: { ...host, property: 'direction' },\n // we apply font-size also on the host so we can set its width with em\n fontSize: [{}, host],\n chipFontSize: { ...chipLabel, property: 'font-size' },\n fontFamily: [label, placeholder, inputField, helperText, errorMessage, chipLabel],\n labelFontSize: { ...label, property: 'font-size' },\n labelFontWeight: { ...label, property: 'font-weight' },\n labelTextColor: [\n { ...label, property: 'color' },\n { ...requiredIndicator, property: 'color' },\n ],\n errorMessageTextColor: { ...errorMessage, property: 'color' },\n errorMessageIcon: { ...errorMessage, property: 'background-image' },\n errorMessageIconSize: { ...errorMessage, property: 'background-size' },\n errorMessageIconPadding: { ...errorMessage, property: 'padding-inline-start' },\n errorMessageIconRepeat: { ...errorMessage, property: 'background-repeat' },\n errorMessageIconPosition: { ...errorMessage, property: 'background-position' },\n inputHeight: { ...inputField, property: 'min-height' },\n inputBackgroundColor: { ...inputField, property: 'background-color' },\n inputBorderColor: { ...inputField, property: 'border-color' },\n inputBorderWidth: { ...inputField, property: 'border-width' },\n inputBorderStyle: { ...inputField, property: 'border-style' },\n inputBorderRadius: { ...inputField, property: 'border-radius' },\n labelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n inputValueTextColor: { ...inputField, property: 'color' },\n inputPlaceholderTextColor: { ...placeholder, property: 'color' },\n inputDropdownButtonCursor: [\n { ...toggle, property: 'cursor' },\n { ...clearButton, property: 'cursor' },\n ],\n inputDropdownButtonColor: [\n { ...toggle, property: 'color' },\n { ...clearButton, property: 'color' },\n ],\n inputDropdownButtonSize: [\n { ...toggle, property: 'font-size' },\n { ...clearButton, property: 'font-size' },\n ],\n inputDropdownButtonOffset: [\n { ...toggle, property: 'margin-right' },\n { ...toggle, property: 'margin-left' },\n ],\n inputOutlineColor: { ...inputField, property: 'outline-color' },\n inputOutlineWidth: { ...inputField, property: 'outline-width' },\n inputOutlineStyle: { ...inputField, property: 'outline-style' },\n inputOutlineOffset: { ...inputField, property: 'outline-offset' },\n inputHorizontalPadding: [\n { ...inputElement, property: 'padding-left' },\n { ...inputElement, property: 'padding-right' },\n { ...inputField, property: 'padding-inline-start' },\n ],\n inputVerticalPadding: [\n { ...inputField, property: 'padding-top' },\n { ...inputField, property: 'padding-bottom' },\n ],\n chipTextColor: { ...chipLabel, property: 'color' },\n chipBackgroundColor: [\n { ...chip, property: 'background-color' },\n { ...overflowChipFirstBorder, property: 'border-color' },\n { ...overflowChipSecondBorder, property: 'border-color' },\n ],\n\n labelPosition: { ...label, property: 'position' },\n labelTopPosition: { ...label, property: 'top' },\n labelLeftPosition: { ...label, property: 'left' },\n labelHorizontalPosition: [\n { ...label, property: 'left' },\n { ...label, property: 'right' },\n ],\n inputTransformY: { ...label, property: 'transform' },\n inputTransition: { ...label, property: 'transition' },\n marginInlineStart: { ...label, property: 'margin-inline-start' },\n placeholderOpacity: { ...placeholder, property: 'opacity' },\n inputVerticalAlignment: { ...inputField, property: 'align-items' },\n\n // we need to use the variables from the portal mixin\n // so we need to use an arrow function on the selector\n // for that to work, because ComboBox is not available\n // at this time.\n overlayBackground: {\n property: () => MultiSelectComboBoxClass.cssVarList.overlay.backgroundColor,\n },\n overlayTextColor: {\n property: () => MultiSelectComboBoxClass.cssVarList.overlay.textColor,\n },\n overlayBorder: { property: () => MultiSelectComboBoxClass.cssVarList.overlay.border },\n overlayFontSize: { property: () => MultiSelectComboBoxClass.cssVarList.overlay.fontSize },\n overlayFontFamily: { property: () => MultiSelectComboBoxClass.cssVarList.overlay.fontFamily },\n overlayCursor: { property: () => MultiSelectComboBoxClass.cssVarList.overlay.cursor },\n overlayItemBoxShadow: {\n property: () => MultiSelectComboBoxClass.cssVarList.overlay.itemBoxShadow,\n },\n overlayItemPaddingInlineStart: {\n property: () => MultiSelectComboBoxClass.cssVarList.overlay.itemPaddingInlineStart,\n },\n overlayItemPaddingInlineEnd: {\n property: () => MultiSelectComboBoxClass.cssVarList.overlay.itemPaddingInlineEnd,\n },\n },\n }),\n draggableMixin,\n portalMixin({\n name: 'overlay',\n selector: 'vaadin-multi-select-combo-box-internal',\n mappings: {\n backgroundColor: { selector: 'vaadin-multi-select-combo-box-scroller' },\n minHeight: { selector: 'vaadin-multi-select-combo-box-overlay' },\n margin: { selector: 'vaadin-multi-select-combo-box-overlay' },\n cursor: { selector: 'vaadin-multi-select-combo-box-item' },\n fontFamily: { selector: 'vaadin-multi-select-combo-box-item' },\n textColor: { selector: 'vaadin-multi-select-combo-box-item', property: 'color' },\n fontSize: { selector: 'vaadin-multi-select-combo-box-item' },\n itemBoxShadow: { selector: 'vaadin-multi-select-combo-box-item', property: 'box-shadow' },\n itemPaddingInlineStart: {\n selector: 'vaadin-multi-select-combo-box-item',\n property: 'padding-inline-start',\n },\n itemPaddingInlineEnd: {\n selector: 'vaadin-multi-select-combo-box-item',\n property: 'padding-inline-end',\n },\n },\n forward: {\n include: false,\n attributes: ['size'],\n },\n }),\n proxyInputMixin({ proxyProps: ['selectionStart'], inputEvent: 'selected-items-changed' }),\n changeMixin,\n componentNameValidationMixin,\n multiSelectComboBoxMixin\n)(\n createProxy({\n slots: ['', 'prefix'],\n wrappedEleName: 'vaadin-multi-select-combo-box',\n style: () => `\n\t\t:host {\n\t\t\tdisplay: inline-flex;\n\t\t\tbox-sizing: border-box;\n\t\t\t-webkit-mask-image: none;\n\t\t}\n\t\t${useHostExternalPadding(MultiSelectComboBoxClass.cssVarList)}\n\t\t${resetInputReadonlyStyle('vaadin-multi-select-combo-box')}\n\t\t${resetInputPlaceholder('vaadin-multi-select-combo-box')}\n\t\t${resetInputCursor('vaadin-multi-select-combo-box')}\n\n\t\tvaadin-multi-select-combo-box {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t}\n\t\tvaadin-multi-select-combo-box::before {\n\t\t\theight: initial;\n\t\t}\n\t\tvaadin-multi-select-combo-box [slot=\"input\"] {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n align-self: center;\n\t\t\tbox-sizing: border-box;\n\t\t}\n\t\tvaadin-multi-select-combo-box[readonly] [slot=\"input\"] {\n flex-grow: 1;\n flex-basis: 4em;\n\t\t}\n\n\t\t::part(input-field) {\n padding: 0;\n\t\t\tbox-shadow: none;\n\t\t}\n ${resetInputLabelPosition('vaadin-multi-select-combo-box')}\n :host([has-label]) vaadin-multi-select-combo-box-chip::part(label) {\n display: block;\n }\n\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::before,\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::after {\n left: -4px;\n right: -4px;\n border-left-width: 0;\n border-inline-start-style: solid;\n border-inline-start-width: 2px;\n }\n vaadin-multi-select-combo-box vaadin-multi-select-combo-box-chip[slot='overflow']::after {\n left: -8px;\n right: -8px;\n }\n\n :host([has-no-options][allow-custom-value='true']) ::part(toggle-button) {\n display: none;\n }\n\n ${inputFloatingLabelStyle()}\n\n vaadin-multi-select-combo-box::part(toggle-button),\n vaadin-multi-select-combo-box::part(clear-button) {\n align-self: center;\n }\n\n vaadin-multi-select-combo-box[label-type=\"floating\"]:not([focused])[readonly] > input:placeholder-shown {\n opacity: 0;\n }\n vaadin-multi-select-combo-box[label-type=\"floating\"]:not([focused])[disabled] > input:placeholder-shown {\n opacity: 0;\n }\n\n\t\t`,\n // Note: we exclude `size` to avoid overriding Vaadin's ComboBox property\n // with the same name. Including it will cause Vaadin to calculate NaN size,\n // and reset items to an empty array, and opening the list box with no items\n // to display.\n // Note: we exclude `placeholder` because the vaadin component observes it and\n // tries to override it, causing us to lose the user set placeholder.\n excludeAttrsSync: ['tabindex', 'size', 'data', 'placeholder'],\n componentName,\n includeForwardProps: ['items', 'renderer', 'selectedItems'],\n })\n);\n","import '@vaadin/multi-select-combo-box';\nimport { componentName, MultiSelectComboBoxClass } from './MultiSelectComboBoxClass';\n\ncustomElements.define(componentName, MultiSelectComboBoxClass);\n\nexport { MultiSelectComboBoxClass, componentName };\n","export const useHostExternalPadding = (cssVarList) => `\n :host {\n padding: calc(var(${cssVarList.inputOutlineWidth}) + var(${cssVarList.inputOutlineOffset}))\n }\n`;\n\nexport const resetInputFieldUnderlayingBorder = (name) => `\n ${name}::part(input-field)::after {\n border: none;\n }\n`;\n\nexport const resetInitialHeight = (name) => `\n ${name}::before {\n\t\theight: unset;\n\t}\n`;\n\nexport const resetInputElement = (name) => `\n ${name} > input {\n -webkit-mask-image: none;\n min-height: 0;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputContainer = (name) => `\n ${name} {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputField = (name) => `\n ${name}::part(input-field) {\n overflow: hidden;\n padding: 0;\n box-shadow: none;\n }\n`;\n\nexport const resetInputCursor = (name) => `\n ${name} > label,\n ${name}::part(label),\n ${name}::part(required-indicator) {\n cursor: pointer;\n }\n`;\n\nexport const resetInputPlaceholder = (name, ele = 'input') => `\n ${name}[disabled] > ${ele}:placeholder-shown,\n\t${name}[readonly] > ${ele}:placeholder-shown {\n\t\topacity: 1;\n\t}\n`;\n\nexport const resetInputAutoFill = (name, cssVarList) => `\n ${name} input:-webkit-autofill,\n ${name} input:-webkit-autofill::first-line,\n ${name} input:-webkit-autofill:hover,\n ${name} input:-webkit-autofill:active,\n ${name} input:-webkit-autofill:focus {\n -webkit-text-fill-color: var(${cssVarList.inputValueTextColor});\n box-shadow: 0 0 0 var(${cssVarList.inputHeight}) var(${cssVarList.inputBackgroundColor}) inset;\n }\n`;\n\nexport const resetInputFieldDefaultWidth = () => `\n :host {\n --vaadin-field-default-width: auto;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputReadonlyStyle = (name) => `\n ${name}::part(input-field)::after {\n opacity: 0;\n }\n`;\n\nexport const resetInputFieldInvalidBackgroundColor = (name) => `\n ${name}::part(input-field)::after {\n background: none;\n }\n`;\n\nexport const resetInputOverrides = (name, cssVarList) => `\n ${resetInputContainer(name)}\n ${resetInputCursor(name)}\n ${resetInputPlaceholder(name)}\n ${resetInputField(name)}\n ${resetInputAutoFill(name, cssVarList)}\n ${resetInputFieldInvalidBackgroundColor(name)}\n ${resetInitialHeight(name)}\n ${resetInputElement(name)}\n ${resetInputFieldUnderlayingBorder(name)}\n`;\n\n// This function is used to support RTL correctly for input components.\n// It also fixes the error message to be displayed LTR since we currently\n// don't support RTL for error messages.\nexport const resetInputLabelPosition = (name) => `\n :host ::part(error-message) {\n direction: ltr;\n }\n :host([required]) ::part(required-indicator) {\n width: 1em;\n display: inline-flex;\n }\n :host([required]) ::part(required-indicator)::after {\n position: static;\n }\n :host([has-label]) ::part(label) {\n padding-right: 0;\n padding-bottom: 0;\n display: flex;\n width: 100%;\n }\n ${name} [slot=\"label\"] {\n max-width: calc(100% - 1em);\n overflow: hidden;\n text-overflow: ellipsis;\n padding-bottom: 0.5em;\n }\n`;\n\nexport const inputFloatingLabelStyle = () => {\n return `\n :host([label-type=\"floating\"]) {\n position: relative;\n }\n :host([label-type=\"floating\"][has-label]) [slot=\"label\"] {\n padding: 0;\n }\n :host([label-type=\"floating\"][has-label]) > ::part(label) {\n z-index: 1;\n padding: 0;\n width: auto;\n }\n `;\n};\n"],"names":["componentName","host","inputField","inputElement","placeholder","toggle","clearButton","label","requiredIndicator","helperText","errorMessage","chip","chipLabel","overflowChipFirstBorder","overflowChipSecondBorder","selector","MultiSelectComboBoxClass","mappings","hostWidth","property","hostDirection","fontSize","chipFontSize","fontFamily","labelFontSize","labelFontWeight","labelTextColor","errorMessageTextColor","errorMessageIcon","errorMessageIconSize","errorMessageIconPadding","errorMessageIconRepeat","errorMessageIconPosition","inputHeight","inputBackgroundColor","inputBorderColor","inputBorderWidth","inputBorderStyle","inputBorderRadius","labelRequiredIndicator","inputValueTextColor","inputPlaceholderTextColor","inputDropdownButtonCursor","inputDropdownButtonColor","inputDropdownButtonSize","inputDropdownButtonOffset","inputOutlineColor","inputOutlineWidth","inputOutlineStyle","inputOutlineOffset","inputHorizontalPadding","inputVerticalPadding","chipTextColor","chipBackgroundColor","labelPosition","labelTopPosition","labelLeftPosition","labelHorizontalPosition","inputTransformY","inputTransition","marginInlineStart","placeholderOpacity","inputVerticalAlignment","overlayBackground","cssVarList","overlay","backgroundColor","overlayTextColor","textColor","overlayBorder","border","overlayFontSize","overlayFontFamily","overlayCursor","cursor","overlayItemBoxShadow","itemBoxShadow","overlayItemPaddingInlineStart","itemPaddingInlineStart","overlayItemPaddingInlineEnd","itemPaddingInlineEnd","name","minHeight","margin","forward","include","attributes","proxyProps","inputEvent","superclass","observedAttributes","displayName","value","defaultValues","defaultValuesAttr","this","getAttribute","JSON","parse","isValidDataType","e","console","error","message","renderItem","renderFn","renderItems","data","dataAttr","allowCustomValues","minItemsSelection","parseInt","maxItemsSelection","isValid","Array","isArray","getItemsTemplate","reduce","acc","item","template","innerHTML","updateSelectedItems","currentSelected","baseElement","selectedItems","map","length","setDefaultValues","customValueTransformFn","val","setComboBoxDescriptor","valueDescriptor","Object","getOwnPropertyDescriptor","constructor","prototype","comboBox","defineProperties","set","transformedValue","call","items","from","Map","values","children","dedupItems","removeAttribute","forEach","node","defineProperty","configurable","writable","setTimeout","setAttribute","renderer","root","combo","model","outerHTML","shadowRoot","querySelector","_attachOverlay","bringToFront","_detachOverlay","_enterModalState","addEventListener","newItemHtml","detail","_lastFilter","setGetValidity","getValidity","pattern","patternRegex","RegExp","some","test","patternMismatch","isRequired","valueMissing","rangeUnderflow","rangeOverflow","that","checkValidity","validity","valid","init","super","bind","includeAttrs","dispatchEvent","CustomEvent","bubbles","elem","vals","selectedChildren","filter","includes","existingValues","child","missingValues","newItemsHtml","newSelectedValues","attributeChangedCallback","attrName","oldValue","newValue","onReadOnlyChange","slots","wrappedEleName","style","excludeAttrsSync","includeForwardProps","customElements","define","useHostExternalPadding","resetInputContainer","resetInputField","resetInputCursor","resetInputPlaceholder","ele","resetInputFieldDefaultWidth","resetInputReadonlyStyle","resetInputFieldInvalidBackgroundColor","resetInputOverrides","resetInputAutoFill","resetInitialHeight","resetInputElement","resetInputFieldUnderlayingBorder","resetInputLabelPosition","inputFloatingLabelStyle"],"sourceRoot":""}
@@ -1 +1,2 @@
1
- "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[8603],{25827:(t,e,i)=>{i.d(e,{y:()=>s});var n=i(7138),r=i(94619),o=i(70263);const s=(...t)=>(0,n.Zz)(r.XX,r._$,r.yF,r.jd)((0,o.q)(...t))},41029:(t,e,i)=>{i.d(e,{M:()=>w,T:()=>d});var n=i(14944),r=i(7138),o=i(94619),s=i(83367),a=i(14372),l=i(33177),p=i(9775);const d=(0,n.xE)("new-password"),u=p.w.cssVarList,{host:c,label:h,internalInputsWrapper:b,errorMessage:g,helperText:y,passwordInput:m,policyPreview:v}={host:{selector:()=>":host"},label:{selector:"::part(label)"},internalInputsWrapper:{selector:"descope-new-password-internal .wrapper"},helperText:{selector:"::part(helper-text)"},errorMessage:{selector:"::part(error-message)"},passwordInput:{selector:"descope-password"},policyPreview:{selector:"descope-policy-validation"}},w=(0,r.Zz)((0,o.RF)({mappings:{fontSize:[c,{},{selector:a.M.componentName,property:a.M.cssVarList.fontSize}],fontFamily:[h,g,y],labelFontSize:{...h,property:"font-size"},labelFontWeight:{...h,property:"font-weight"},labelTextColor:{...h,property:"color"},errorMessageTextColor:{...g,property:"color"},errorMessageIcon:{...g,property:"background-image"},errorMessageIconSize:{...g,property:"background-size"},errorMessageIconPadding:{...g,property:"padding-inline-start"},errorMessageIconRepeat:{...g,property:"background-repeat"},errorMessageIconPosition:{...g,property:"background-position"},hostWidth:{...c,property:"width"},hostMinWidth:{...c,property:"min-width"},hostDirection:[{...c,property:"direction"},{...m,property:a.M.cssVarList.hostDirection}],inputsRequiredIndicator:{...c,property:"content"},spaceBetweenInputs:{...b,property:"gap"},policyPreviewBackgroundColor:{...v,property:u.backgroundColor},policyPreviewPadding:{...v,property:u.padding},valueInputHeight:{...m,property:a.M.cssVarList.valueInputHeight},valueInputMarginBottom:{...m,property:a.M.cssVarList.valueInputMarginBottom}}}),o.VO,(0,o.OZ)({proxyProps:["value","selectionStart"]}),(t=>class extends t{init(){super.init?.();const t=document.createElement("template"),e=this.getAttribute("external-input");t.innerHTML=`\n\t\t\t<${s.T}\n\t\t\t\tname="new-password"\n\t\t\t\ttabindex="-1"\n\t\t\t\tslot="input"\n external-input="${e}"\n\t\t\t>\n </${s.T}>\n\t\t\t`,this.baseElement.appendChild(t.content.cloneNode(!0)),this.inputElement=this.shadowRoot.querySelector(s.T),"true"===this.getAttribute("external-input")&&this.initExternalInput(),(0,n.EA)(this,this.inputElement,{includeAttrs:["password-label","password-placeholder","confirm-label","confirm-placeholder","full-width","size","bordered","label","has-confirm","invalid","readonly","draggable","has-validation","policy-label","active-policies","available-policies","data-password-policy-value-minlength","label-type","manual-visibility-toggle"]})}createSlottedExternalInput(t,e){const i=t.querySelector("input"),n=document.createElement("slot"),r=i.getAttribute("slot");n.setAttribute("name",e),n.setAttribute("slot",r),t.appendChild(n),i.setAttribute("slot",e),i.setAttribute("name",this.getAttribute("name")),i.setAttribute("data-hidden-input","true"),this.appendChild(i)}initExternalInput(){this.passwordInput=this.inputElement.querySelector('[data-id="password"]'),this.confirmInput=this.inputElement.querySelector('[data-id="confirm"]'),this.createSlottedExternalInput(this.passwordInput,"external-password-input"),this.createSlottedExternalInput(this.confirmInput,"external-confirm-input")}}))((0,o.tz)({slots:[],wrappedEleName:"vaadin-text-field",style:()=>`\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t\tmax-width: 100%;\n\t\t\tbox-sizing: border-box;\n\t\t}\n :host ::part(error-message) {\n direction: ltr;\n }\n\t\t${(0,l.cy)(a.M.cssVarList)}\n\t\tvaadin-text-field {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t}\n\t\tvaadin-text-field::part(input-field) {\n\t\t\tmin-height: 0;\n\t\t\tbackground: transparent;\n\t\t\tbox-shadow: none;\n\t\t\tpadding: 0;\n\t\t}\n\t\tvaadin-text-field::part(input-field)::after {\n\t\t\tbackground: transparent;\n\t\t\topacity: 0;\n\t\t}\n\t\tdescope-new-password-internal {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n\t\t\twidth: 100%;\n\t\t\tpadding: 0;\n\t\t}\n\t\tdescope-new-password-internal > .wrapper {\n -webkit-mask-image: none;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\t\tdescope-password {\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t}\n\t\tdescope-new-password-internal vaadin-password-field::before {\n\t\t\theight: initial;\n\t\t}\n descope-policy-validation {\n margin-top: 8px;\n display: flex;\n }\n descope-policy-validation.hidden {\n display: none;\n }\n\t\t`,excludeAttrsSync:["tabindex"],componentName:d}))},83367:(t,e,i)=>{i.d(e,{T:()=>n});const n=(0,i(14944).xE)("new-password-internal")},32039:(t,e,i)=>{var n=i(25827),r=i(14944),o=i(41029),s=i(83367);const a=/^password-/,l=/^confirm-/,p=(t,e)=>t.replace(e,""),d=["password-label","password-placeholder"],u=["confirm-label","confirm-placeholder"],c=["has-confirm","disabled","bordered","size","full-width","maxlength","invalid","readonly","draggable","autocomplete","label-type","manual-visibility-toggle"],h=[].concat(c,d,u,["has-validation"]),b=(0,n.y)({componentName:s.T,baseSelector:"div"});customElements.define(s.T,class extends b{static get observedAttributes(){return[].concat(b.observedAttributes||[],h)}constructor(){super(),this.innerHTML='\n\t\t\t<div class="wrapper"></div>\n\t\t',this.wrapperEle=this.querySelector(".wrapper")}get value(){return this.passwordInput?.value||""}set value(t){t!==this.value&&(this.passwordInput.value=t)}get hasConfirm(){return"true"===this.getAttribute("has-confirm")}onHasConfirmChange(t){this.confirmInput.style.display=t?"":"none"}onHasValidationChange(t){this.policyPanel.style.display=t?"":"none"}get hasValidation(){return"true"===this.getAttribute("has-validation")}getValidity(){if(this.isRequired&&!this.value)return{valueMissing:!0};if(this.value&&!this.policyPanel.isValid)return{typeMismatch:!0};if(this.hasConfirm&&this.confirmInput&&this.value!==this.confirmInput.value)return{patternMismatch:!0};const t=this.getAttribute("minlength"),e=parseInt(t,10)||0;return this.value.length>=e?{}:{tooShort:!0}}init(){this.addEventListener("focus",(t=>{t.isTrusted&&this.passwordInput.focus()})),super.init?.(),this.renderInputs(this.hasConfirm,this.hasValidation)}renderInputs(){const t="true"===this.getAttribute("external-input"),e=`\n <div>\n <descope-password\n autocomplete="new-password"\n manual-visibility-toggle="true"\n data-id="password"\n external-input="${t}"\n ></descope-password>\n <descope-policy-validation></descope-policy-validation>\n </div>\n <descope-password\n autocomplete="new-password"\n manual-visibility-toggle="true"\n external-input="${t}"\n data-id="confirm"\n ></descope-password>\n `;this.wrapperEle.innerHTML=e,this.passwordInput=this.querySelector('[data-id="password"]'),this.confirmInput=this.querySelector('[data-id="confirm"]'),this.policyPanel=this.querySelector("descope-policy-validation"),this.inputs=[this.passwordInput,this.confirmInput],this.initInputs(),this.passwordInput.addEventListener("input",(t=>{this.policyPanel.setAttribute("value",t.target.value)})),(0,r.EA)(this,this.policyPanel,{includeAttrs:["policy-label","available-policies","active-policies","data-password-policy-value-minlength","manual-visibility-toggle"],mapAttrs:{"policy-label":"label","available-policies":"data"}})}handleIndicatorStyle(){this.inputs.forEach((t=>{const e=document.createElement("style");e.innerHTML=`\n\t\t\t\t:host ::part(required-indicator)::after {\n\t\t\t\t\tcontent: var(${o.M.cssVarList.inputsRequiredIndicator});\n width: 1em;\n text-align: center;\n\t\t\t\t}\n :host ::part(required-indicator) {\n display: inline-flex;\n }\n\t\t\t\t`,t?.shadowRoot.appendChild(e)}))}get isInvalid(){return this.hasAttribute("invalid")&&"false"!==this.getAttribute("invalid")}handleInputsInvalidAttribute(){this.inputs.forEach((t=>{t&&(0,r.mx)(t,(e=>{if(e.includes("invalid")){const e=t.getAttribute("invalid"),i=this.getAttribute("invalid");this.isInvalid&&i!==e&&t.setAttribute("invalid","true")}}),{})}))}initInputs(){this.handleIndicatorStyle(),this.handleInputsInvalidAttribute(),this.handleFocusEventsDispatching(this.inputs)}toggleBooleanAttribute(t,e,i){null===i?t?.removeAttribute(e):t?.setAttribute(e,i)}attributeChangedCallback(t,e,i){super.attributeChangedCallback?.(t,e,i),e!==i&&("has-validation"===t?this.onHasValidationChange("true"===i):"has-confirm"===t?this.onHasConfirmChange("true"===i):c.includes(t)?this.inputs.forEach((e=>this.toggleBooleanAttribute(e,t,i))):d.includes(t)?this.toggleBooleanAttribute(this.passwordInput,p(t,a),i):u.includes(t)&&this.toggleBooleanAttribute(this.confirmInput,p(t,l),i))}})},14372:(t,e,i)=>{i.d(e,{M:()=>w,T:()=>l});var n=i(94619),r=i(7138),o=i(14944),s=i(43686),a=i(33177);const l=(0,o.xE)("password"),{host:p,inputField:d,inputElement:u,inputElementPlaceholder:c,revealButtonContainer:h,revealButtonIcon:b,label:g,requiredIndicator:y,errorMessage:m,helperText:v}={host:{selector:()=>":host"},inputField:{selector:"::part(input-field)"},inputElement:{selector:"> input"},inputElementPlaceholder:{selector:()=>":host input:placeholder-shown"},revealButtonContainer:{selector:"::part(reveal-button)"},revealButtonIcon:{selector:"::part(reveal-button)::before"},label:{selector:"::part(label)"},requiredIndicator:{selector:"[required]::part(required-indicator)::after"},helperText:{selector:"::part(helper-text)"},errorMessage:{selector:"::part(error-message)"}},w=(0,r.Zz)((0,n.RF)({mappings:{hostWidth:{...p,property:"width"},hostMinWidth:{...p,property:"min-width"},hostDirection:{...p,property:"direction"},fontSize:[{},p],fontFamily:[g,d,m,v],inputHeight:{...d,property:"height"},inputHorizontalPadding:[{...u,property:"padding-left"},{...u,property:"padding-right"}],inputBackgroundColor:{...d,property:"background-color"},inputBorderStyle:{...d,property:"border-style"},inputBorderWidth:{...d,property:"border-width"},inputBorderColor:{...d,property:"border-color"},inputBorderRadius:{...d,property:"border-radius"},inputOutlineColor:{...d,property:"outline-color"},inputOutlineStyle:{...d,property:"outline-style"},inputOutlineOffset:{...d,property:"outline-offset"},inputOutlineWidth:{...d,property:"outline-width"},labelFontSize:{...g,property:"font-size"},labelFontWeight:{...g,property:"font-weight"},labelTextColor:[{...g,property:"color"},{...y,property:"color"}],labelRequiredIndicator:{...y,property:"content"},errorMessageTextColor:{...m,property:"color"},errorMessageIcon:{...m,property:"background-image"},errorMessageIconSize:{...m,property:"background-size"},errorMessageIconPadding:{...m,property:"padding-inline-start"},errorMessageIconRepeat:{...m,property:"background-repeat"},errorMessageIconPosition:{...m,property:"background-position"},inputPlaceholderTextColor:[{...c,property:"color"},{selector:()=>":host ::slotted(input:placeholder-shown)",property:"color"}],inputValueTextColor:[{...u,property:"color"},{selector:()=>":host ::slotted(input)",property:"color"}],revealButtonOffset:[{...h,property:"margin-right"},{...h,property:"margin-left"}],revealButtonSize:{...h,property:"font-size"},revealButtonColor:{...b,property:"color"},labelPosition:{...g,property:"position"},labelTopPosition:{...g,property:"top"},labelHorizontalPosition:[{...g,property:"left"},{...g,property:"right"}],inputTransformY:{...g,property:"transform"},inputTransition:{...g,property:"transition"},marginInlineStart:{...g,property:"margin-inline-start"},placeholderOpacity:[{selector:"> input:placeholder-shown",property:"opacity"},{...u,property:"opacity"}],inputVerticalAlignment:{...d,property:"align-items"},valueInputHeight:{...u,property:"height"}}}),n.VO,(0,n.RV)({inputType:"password",inputName:"password",includeAttrs:["disabled","readonly","pattern","type","autocomplete"],noBlurDispatch:!0}),(0,n.OZ)({proxyProps:["value","selectionStart"],useProxyTargets:!0}),n.tQ,s.A,(t=>class extends t{static get observedAttributes(){return["manual-visibility-toggle"]}get manualToggleVisibility(){return"true"===this.getAttribute("manual-visibility-toggle")}init(){super.init?.(),this.handleCaretOnVisibilityChange(),this.origSetPasswordVisible=this.baseElement._setPasswordVisible,this.origSetFocused=this.baseElement._setFocused,this.baseElement._setFocused=this.setFocus.bind(this),this.initExternalInput()}initExternalInput(){const t=this.createExternalInput();t&&this.handlePasswordVisibility(t)}get caretPosition(){return this.value?.length||0}handleCaretOnVisibilityChange(){const t=this.baseElement._togglePasswordVisibility.bind(this.baseElement);this.baseElement._togglePasswordVisibility=()=>{setTimeout((()=>(t(),this.inputElement.setSelectionRange(this.caretPosition,this.caretPosition),!1)))}}setFocus(t){this.manualToggleVisibility&&(this.baseElement._setPasswordVisible=()=>{}),this.origSetFocused.call(this.baseElement,t),this.baseElement._setPasswordVisible=this.origSetPasswordVisible.bind(this.baseElement)}resetPasswordVisibilityToggle(){this.baseElement._setPasswordVisible=this.origSetPasswordVisible,this.baseElement._setFocused=this.origSetFocus}attributeChangedCallback(t,e,i){super.attributeChangedCallback?.(t,e,i)}handlePasswordVisibility(t){const e=this.baseElement.__boundRevealButtonMouseDown;this.baseElement.querySelector("vaadin-password-field-button").removeEventListener("mousedown",e),this.baseElement._passwordVisibleChanged=()=>{},this.baseElement._togglePasswordVisibility=()=>{"password"===t.getAttribute("type")?this.showPasswordVisibility(t):this.hidePasswordVisibility(t)}}showPasswordVisibility(t){t.setAttribute("type","text"),this.setAttribute("password-visible","true")}hidePasswordVisibility(t){t.setAttribute("type","password"),this.setAttribute("password-visible","false")}}))((0,n.tz)({slots:["","suffix"],wrappedEleName:"vaadin-password-field",style:()=>`\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: 10em;\n box-sizing: border-box;\n position: relative;\n\t\t\t}\n\t\t\t${(0,a.cy)(w.cssVarList)}\n\t\t\t${(0,a.I4)("vaadin-password-field")}\n ${(0,a.$J)("vaadin-password-field")}\n\n\t\t\tvaadin-password-field {\n\t\t\t\twidth: 100%;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field > input {\n -webkit-mask-image: none;\n\t\t\t\tbox-sizing: border-box;\n opacity: 1;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field) {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field[focus-ring]::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n :host ::slotted(input) {\n\t\t\t\tmin-height: 0;\n }\n :host([readonly]) ::slotted(input:placeholder-shown) {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t\tvaadin-password-field::before {\n\t\t\t\theight: initial;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field)::after {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t\tvaadin-password-field-button {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\t\t\t:host([readonly]) vaadin-password-field-button {\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t\tvaadin-password-field-button[focus-ring] {\n\t\t\t\tbox-shadow: 0 0 0 2px var(${w.cssVarList.inputOutlineColor});\n\t\t\t}\n\n ${(0,a.Kl)()}\n \n ::part(reveal-button) {\n align-self: center;\n }\n\n vaadin-password-field[external-input="true"] > input:not(:placeholder-shown) {\n opacity: 0;\n }\n\t\t`,excludeAttrsSync:["tabindex"],componentName:l}))},43686:(t,e,i)=>{i.d(e,{A:()=>n});const n=t=>class extends t{get isReadOnly(){return this.hasAttribute("readonly")&&"false"!==this.getAttribute("readonly")}init(){super.init?.();const t=this.querySelector("input");t?.addEventListener("mousedown",(e=>{if(this.isDraggable&&this.isReadOnly){t.setAttribute("inert","true");const i=e.target,n=i.getAttribute("type");i.setAttribute("type","text"),setTimeout((()=>{i.focus()}));const r=e=>{i.setAttribute("type",n),t.removeAttribute("inert"),this.removeEventListener("mouseup",r),this.removeEventListener("dragend",r)};this.addEventListener("dragend",r,{once:!0}),this.addEventListener("mouseup",r,{once:!0})}}))}}},9775:(t,e,i)=>{i.d(e,{T:()=>l,w:()=>m});var n=i(94619),r=i(70263),o=i(7138),s=i(14944),a=i(38917);const l=(0,s.xE)("policy-validation"),p=["data","active-policies","overrides","data-password-policy-value-minlength"],d=["label","value",...p];class u extends((0,r.q)({componentName:l,baseSelector:":host > div"})){#t;#e=[];#i;static get observedAttributes(){return d}constructor(){super(),this.attachShadow({mode:"open"}).innerHTML='\n <div>\n <div class="label"></div>\n <ul></ul>\n </div>\n <style>\n :host > div {\n width: 100%;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n }\n .label {\n max-width: 100%;\n text-wrap: wrap;\n overflow-wrap: break-word;\n }\n .hide-label .label {\n display: none;\n }\n ul {\n display: flex;\n flex-direction: column;\n padding: 0;\n margin: 0;\n }\n ul, li {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n li::before {\n display: inline-block;\n width: 1em;\n text-align: center;\n }\n </style>\n\t\t',this.panel=this.shadowRoot.querySelector(":host > div"),this.label=this.shadowRoot.querySelector(".label"),this.list=this.shadowRoot.querySelector("ul")}attributeChangedCallback(t,e,i){if(super.attributeChangedCallback?.(t,e,i),e!==i){if("label"===t&&this.updateLabel(i),p.includes(t)){if("data"===t)try{this.availablePolicies=JSON.parse(i)}catch{console.error("Failed to set available policies")}if("active-policies"===t&&(this.#e=(i||"").split(",")),"data-password-policy-value-minlength"===t){const t=Number(i);!Number.isNaN(t)&&t>0&&(this.#i={...this.#i,minlength:{value:`${t}`}})}}this.renderItems(this.#t,this.#e,this.#i)}}get availablePolicies(){return this.#t||[]}set availablePolicies(t){this.#t=t}get value(){return this.getAttribute("value")||""}validate(){let t=this.#t;return this.#i&&(t=this.#t.map((t=>this.#i[t.id]?{...t,data:this.#i[t.id]}:t))),this.#e.reduce(((e,i)=>{const n=t.find((t=>t.id===i));if(!n)return e;const{pattern:r,message:o,data:s}=n;if(!r||!o)return e;const l={valid:new RegExp((0,a.z)(r,s)).test(this.value),message:(0,a.z)(o,s),id:i};return e.push(l),e}),[])}get isValid(){return!this.validate().some((({valid:t})=>!1===t))}getValidationItemTemplate({valid:t,message:e}){return`\n <li class="item" data-valid="${this.value?t:"none"}">\n <span class="message">${e}</span>\n </li>\n `}renderItems(t,e){t&&e.length&&(this.list.innerHTML=this.validate().map(this.getValidationItemTemplate.bind(this)).join(""))}updateLabel(t){t?(this.label.textContent=t,this.classList.remove("hide-label")):(this.classList.add("hide-label"),this.label.textContent="")}}const{host:c,item:h,symbolDefault:b,symbolSuccess:g,symbolError:y}={host:{selector:()=>":host > div"},item:{selector:()=>".item"},symbolDefault:{selector:()=>'.item[data-valid="none"]::before'},symbolSuccess:{selector:()=>'.item[data-valid="true"]::before'},symbolError:{selector:()=>'.item[data-valid="false"]::before'}},m=(0,o.Zz)((0,n.RF)({componentNameOverride:(0,s.xE)("input-wrapper")}),(0,n.RF)({mappings:{hostDirection:{selector:()=>":host",property:"direction"},fontSize:{},fontFamily:{},padding:{},borderWidth:{...c,property:"border-width"},borderStyle:{...c,property:"border-style"},borderColor:{...c,property:"border-color"},borderRadius:{...c,property:"border-radius"},backgroundColor:{...c,property:"background-color"},textColor:{property:"color"},labelMargin:{...c,property:"gap"},itemsSpacing:{...h,property:"line-height"},itemSymbolSuccessColor:{...g,property:"color"},itemSymbolErrorColor:{...y,property:"color"},itemSymbolDefault:{...b,property:"content"},itemSymbolSuccess:{...g,property:"content"},itemSymbolError:{...y,property:"content"}}}),n.VO,n.tQ)(u)},38917:(t,e,i)=>{i.d(e,{z:()=>n});const n=(t,e)=>t.replace(/{{(\w+)+}}/g,((t,i)=>e?.[i]||t))},33177:(t,e,i)=>{i.d(e,{$J:()=>c,I4:()=>s,Kl:()=>h,LJ:()=>u,Qv:()=>o,X6:()=>l,cy:()=>n,fu:()=>p,kG:()=>d,lS:()=>a,zm:()=>r});const n=t=>`\n :host {\n padding: calc(var(${t.inputOutlineWidth}) + var(${t.inputOutlineOffset}))\n }\n`,r=t=>`\n ${t} {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n }\n`,o=t=>`\n ${t}::part(input-field) {\n overflow: hidden;\n padding: 0;\n box-shadow: none;\n }\n`,s=t=>`\n ${t} > label,\n ${t}::part(label),\n ${t}::part(required-indicator) {\n cursor: pointer;\n }\n`,a=(t,e="input")=>`\n ${t}[disabled] > ${e}:placeholder-shown,\n\t${t}[readonly] > ${e}:placeholder-shown {\n\t\topacity: 1;\n\t}\n`,l=()=>"\n :host {\n --vaadin-field-default-width: auto;\n box-sizing: border-box;\n }\n",p=t=>`\n ${t}::part(input-field)::after {\n opacity: 0;\n }\n`,d=t=>`\n ${t}::part(input-field)::after {\n background: none;\n }\n`,u=(t,e)=>`\n ${r(t)}\n ${s(t)}\n ${a(t)}\n ${o(t)}\n ${((t,e)=>`\n ${t} input:-webkit-autofill,\n ${t} input:-webkit-autofill::first-line,\n ${t} input:-webkit-autofill:hover,\n ${t} input:-webkit-autofill:active,\n ${t} input:-webkit-autofill:focus {\n -webkit-text-fill-color: var(${e.inputValueTextColor});\n box-shadow: 0 0 0 var(${e.inputHeight}) var(${e.inputBackgroundColor}) inset;\n }\n`)(t,e)}\n ${d(t)}\n ${(t=>`\n ${t}::before {\n\t\theight: unset;\n\t}\n`)(t)}\n ${(t=>`\n ${t} > input {\n -webkit-mask-image: none;\n min-height: 0;\n box-sizing: border-box;\n }\n`)(t)}\n ${(t=>`\n ${t}::part(input-field)::after {\n border: none;\n }\n`)(t)}\n`,c=t=>`\n :host ::part(error-message) {\n direction: ltr;\n }\n :host([required]) ::part(required-indicator) {\n width: 1em;\n display: inline-flex;\n }\n :host([required]) ::part(required-indicator)::after {\n position: static;\n }\n :host([has-label]) ::part(label) {\n padding-right: 0;\n padding-bottom: 0;\n display: flex;\n width: 100%;\n }\n ${t} [slot="label"] {\n max-width: calc(100% - 1em);\n overflow: hidden;\n text-overflow: ellipsis;\n padding-bottom: 0.5em;\n }\n`,h=()=>'\n :host([label-type="floating"]) {\n position: relative;\n }\n :host([label-type="floating"][has-label]) [slot="label"] {\n padding: 0;\n }\n :host([label-type="floating"][has-label]) > ::part(label) {\n z-index: 1;\n padding: 0;\n width: auto;\n }\n '}}]);
1
+ "use strict";(self.webpackChunk_descope_web_components_ui=self.webpackChunk_descope_web_components_ui||[]).push([[8603],{3393:(t,e,i)=>{i.d(e,{y:()=>s});var n=i(9696),r=i(79365),o=i(81365);const s=(...t)=>(0,n.Zz)(r.XX,r._$,r.yF,r.jd)((0,o.q)(...t))},87455:(t,e,i)=>{i.d(e,{M:()=>w,T:()=>d});var n=i(97810),r=i(9696),o=i(79365),s=i(8877),a=i(5810),l=i(73551),p=i(10777);const d=(0,n.xE)("new-password"),u=p.w.cssVarList,{host:c,label:h,internalInputsWrapper:b,errorMessage:g,helperText:y,passwordInput:m,policyPreview:v}={host:{selector:()=>":host"},label:{selector:"::part(label)"},internalInputsWrapper:{selector:"descope-new-password-internal .wrapper"},helperText:{selector:"::part(helper-text)"},errorMessage:{selector:"::part(error-message)"},passwordInput:{selector:"descope-password"},policyPreview:{selector:"descope-policy-validation"}},w=(0,r.Zz)((0,o.RF)({mappings:{fontSize:[c,{},{selector:a.M.componentName,property:a.M.cssVarList.fontSize}],fontFamily:[h,g,y],labelFontSize:{...h,property:"font-size"},labelFontWeight:{...h,property:"font-weight"},labelTextColor:{...h,property:"color"},errorMessageTextColor:{...g,property:"color"},errorMessageIcon:{...g,property:"background-image"},errorMessageIconSize:{...g,property:"background-size"},errorMessageIconPadding:{...g,property:"padding-inline-start"},errorMessageIconRepeat:{...g,property:"background-repeat"},errorMessageIconPosition:{...g,property:"background-position"},hostWidth:{...c,property:"width"},hostMinWidth:{...c,property:"min-width"},hostDirection:[{...c,property:"direction"},{...m,property:a.M.cssVarList.hostDirection}],inputsRequiredIndicator:{...c,property:"content"},spaceBetweenInputs:{...b,property:"gap"},policyPreviewBackgroundColor:{...v,property:u.backgroundColor},policyPreviewPadding:{...v,property:u.padding},valueInputHeight:{...m,property:a.M.cssVarList.valueInputHeight},valueInputMarginBottom:{...m,property:a.M.cssVarList.valueInputMarginBottom}}}),o.VO,(0,o.OZ)({proxyProps:["value","selectionStart"]}),(t=>class extends t{init(){super.init?.();const t=document.createElement("template"),e=this.getAttribute("external-input");t.innerHTML=`\n\t\t\t<${s.T}\n\t\t\t\tname="new-password"\n\t\t\t\ttabindex="-1"\n\t\t\t\tslot="input"\n external-input="${e}"\n\t\t\t>\n </${s.T}>\n\t\t\t`,this.baseElement.appendChild(t.content.cloneNode(!0)),this.inputElement=this.shadowRoot.querySelector(s.T),"true"===this.getAttribute("external-input")&&this.initExternalInput(),(0,n.EA)(this,this.inputElement,{includeAttrs:["password-label","password-placeholder","confirm-label","confirm-placeholder","full-width","size","bordered","label","has-confirm","invalid","readonly","draggable","has-validation","policy-label","active-policies","available-policies","data-password-policy-value-minlength","label-type","manual-visibility-toggle"]})}createSlottedExternalInput(t,e){const i=t.querySelector("input"),n=document.createElement("slot"),r=i.getAttribute("slot");n.setAttribute("name",e),n.setAttribute("slot",r),t.appendChild(n),i.setAttribute("slot",e),i.setAttribute("name",this.getAttribute("name")),i.setAttribute("data-hidden-input","true"),this.appendChild(i)}initExternalInput(){this.passwordInput=this.inputElement.querySelector('[data-id="password"]'),this.confirmInput=this.inputElement.querySelector('[data-id="confirm"]'),this.createSlottedExternalInput(this.passwordInput,"external-password-input"),this.createSlottedExternalInput(this.confirmInput,"external-confirm-input")}}))((0,o.tz)({slots:[],wrappedEleName:"vaadin-text-field",style:()=>`\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t\tmax-width: 100%;\n\t\t\tbox-sizing: border-box;\n\t\t}\n :host ::part(error-message) {\n direction: ltr;\n }\n\t\t${(0,l.cy)(a.M.cssVarList)}\n\t\tvaadin-text-field {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t}\n\t\tvaadin-text-field::part(input-field) {\n\t\t\tmin-height: 0;\n\t\t\tbackground: transparent;\n\t\t\tbox-shadow: none;\n\t\t\tpadding: 0;\n\t\t}\n\t\tvaadin-text-field::part(input-field)::after {\n\t\t\tbackground: transparent;\n\t\t\topacity: 0;\n\t\t}\n\t\tdescope-new-password-internal {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n\t\t\twidth: 100%;\n\t\t\tpadding: 0;\n\t\t}\n\t\tdescope-new-password-internal > .wrapper {\n -webkit-mask-image: none;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\t\tdescope-password {\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t}\n\t\tdescope-new-password-internal vaadin-password-field::before {\n\t\t\theight: initial;\n\t\t}\n descope-policy-validation {\n margin-top: 8px;\n display: flex;\n }\n .hidden {\n display: none;\n }\n\t\t`,excludeAttrsSync:["tabindex"],componentName:d}))},8877:(t,e,i)=>{i.d(e,{T:()=>n});const n=(0,i(97810).xE)("new-password-internal")},78844:(t,e,i)=>{var n=i(25964),r=i(3393),o=i(97810),s=i(87455),a=i(8877);const l=/^password-/,p=/^confirm-/,d=(t,e)=>t.replace(e,""),u=["password-label","password-placeholder"],c=["confirm-label","confirm-placeholder"],h=["has-confirm","disabled","bordered","size","full-width","maxlength","invalid","readonly","draggable","autocomplete","label-type","manual-visibility-toggle"],b=[].concat(h,u,c,["has-validation"]),g=(0,r.y)({componentName:a.T,baseSelector:"div"});customElements.define(a.T,class extends g{static get observedAttributes(){return[].concat(g.observedAttributes||[],b)}constructor(){super(),this.innerHTML='\n\t\t\t<div class="wrapper"></div>\n\t\t',this.wrapperEle=this.querySelector(".wrapper")}get value(){return this.passwordInput?.value||""}set value(t){t!==this.value&&(this.passwordInput.value=t)}get hasConfirm(){return"true"===this.getAttribute("has-confirm")}onHasConfirmChange(t){this.confirmInput.classList.toggle("hidden",!t)}onHasValidationChange(t){this.policyPanel.classList.toggle("hidden",!t)}get hasValidation(){return"true"===this.getAttribute("has-validation")}getValidity(){if(this.isRequired&&!this.value)return{valueMissing:!0};if(this.value&&!this.policyPanel.isValid)return{typeMismatch:!0};if(this.hasConfirm&&this.confirmInput&&this.value!==this.confirmInput.value)return{patternMismatch:!0};const t=this.getAttribute("minlength"),e=parseInt(t,10)||0;return this.value.length>=e?{}:{tooShort:!0}}init(){this.addEventListener("focus",(t=>{t.isTrusted&&this.passwordInput.focus()})),super.init?.(),this.renderInputs(this.hasConfirm,this.hasValidation)}renderInputs(){const t="true"===this.getAttribute("external-input"),e=`\n <div>\n <descope-password\n autocomplete="new-password"\n manual-visibility-toggle="true"\n data-id="password"\n external-input="${t}"\n ></descope-password>\n <descope-policy-validation></descope-policy-validation>\n </div>\n <descope-password\n autocomplete="new-password"\n manual-visibility-toggle="true"\n external-input="${t}"\n data-id="confirm"\n ></descope-password>\n `;this.wrapperEle.innerHTML=e,this.passwordInput=this.querySelector('[data-id="password"]'),this.confirmInput=this.querySelector('[data-id="confirm"]'),this.policyPanel=this.querySelector("descope-policy-validation"),this.inputs=[this.passwordInput,this.confirmInput],this.initInputs(),this.passwordInput.addEventListener("input",(t=>{this.policyPanel.setAttribute("value",t.target.value)})),(0,o.EA)(this,this.policyPanel,{includeAttrs:["policy-label","available-policies","active-policies","data-password-policy-value-minlength","manual-visibility-toggle"],mapAttrs:{"policy-label":"label","available-policies":"data"}})}handleIndicatorStyle(){this.inputs.forEach((t=>{(0,n.fz)(`\n\t\t\t\t:host ::part(required-indicator)::after {\n\t\t\t\t\tcontent: var(${s.M.cssVarList.inputsRequiredIndicator});\n width: 1em;\n text-align: center;\n\t\t\t\t}\n :host ::part(required-indicator) {\n display: inline-flex;\n }\n\t\t\t\t`,t)}))}get isInvalid(){return this.hasAttribute("invalid")&&"false"!==this.getAttribute("invalid")}handleInputsInvalidAttribute(){this.inputs.forEach((t=>{t&&(0,o.mx)(t,(e=>{if(e.includes("invalid")){const e=t.getAttribute("invalid"),i=this.getAttribute("invalid");this.isInvalid&&i!==e&&t.setAttribute("invalid","true")}}),{})}))}initInputs(){this.handleIndicatorStyle(),this.handleInputsInvalidAttribute(),this.handleFocusEventsDispatching(this.inputs)}toggleBooleanAttribute(t,e,i){null===i?t?.removeAttribute(e):t?.setAttribute(e,i)}attributeChangedCallback(t,e,i){super.attributeChangedCallback?.(t,e,i),e!==i&&("has-validation"===t?this.onHasValidationChange("true"===i):"has-confirm"===t?this.onHasConfirmChange("true"===i):h.includes(t)?this.inputs.forEach((e=>this.toggleBooleanAttribute(e,t,i))):u.includes(t)?this.toggleBooleanAttribute(this.passwordInput,d(t,l),i):c.includes(t)&&this.toggleBooleanAttribute(this.confirmInput,d(t,p),i))}})},5810:(t,e,i)=>{i.d(e,{M:()=>w,T:()=>l});var n=i(79365),r=i(9696),o=i(97810),s=i(16616),a=i(73551);const l=(0,o.xE)("password"),{host:p,inputField:d,inputElement:u,inputElementPlaceholder:c,revealButtonContainer:h,revealButtonIcon:b,label:g,requiredIndicator:y,errorMessage:m,helperText:v}={host:{selector:()=>":host"},inputField:{selector:"::part(input-field)"},inputElement:{selector:"> input"},inputElementPlaceholder:{selector:()=>":host input:placeholder-shown"},revealButtonContainer:{selector:"::part(reveal-button)"},revealButtonIcon:{selector:"::part(reveal-button)::before"},label:{selector:"::part(label)"},requiredIndicator:{selector:"[required]::part(required-indicator)::after"},helperText:{selector:"::part(helper-text)"},errorMessage:{selector:"::part(error-message)"}},w=(0,r.Zz)((0,n.RF)({mappings:{hostWidth:{...p,property:"width"},hostMinWidth:{...p,property:"min-width"},hostDirection:{...p,property:"direction"},fontSize:[{},p],fontFamily:[g,d,m,v],inputHeight:{...d,property:"height"},inputHorizontalPadding:[{...u,property:"padding-left"},{...u,property:"padding-right"}],inputBackgroundColor:{...d,property:"background-color"},inputBorderStyle:{...d,property:"border-style"},inputBorderWidth:{...d,property:"border-width"},inputBorderColor:{...d,property:"border-color"},inputBorderRadius:{...d,property:"border-radius"},inputOutlineColor:{...d,property:"outline-color"},inputOutlineStyle:{...d,property:"outline-style"},inputOutlineOffset:{...d,property:"outline-offset"},inputOutlineWidth:{...d,property:"outline-width"},labelFontSize:{...g,property:"font-size"},labelFontWeight:{...g,property:"font-weight"},labelTextColor:[{...g,property:"color"},{...y,property:"color"}],labelRequiredIndicator:{...y,property:"content"},errorMessageTextColor:{...m,property:"color"},errorMessageIcon:{...m,property:"background-image"},errorMessageIconSize:{...m,property:"background-size"},errorMessageIconPadding:{...m,property:"padding-inline-start"},errorMessageIconRepeat:{...m,property:"background-repeat"},errorMessageIconPosition:{...m,property:"background-position"},inputPlaceholderTextColor:[{...c,property:"color"},{selector:()=>":host ::slotted(input:placeholder-shown)",property:"color"}],inputValueTextColor:[{...u,property:"color"},{selector:()=>":host ::slotted(input)",property:"color"}],revealButtonOffset:[{...h,property:"margin-right"},{...h,property:"margin-left"}],revealButtonSize:{...h,property:"font-size"},revealButtonColor:{...b,property:"color"},labelPosition:{...g,property:"position"},labelTopPosition:{...g,property:"top"},labelHorizontalPosition:[{...g,property:"left"},{...g,property:"right"}],inputTransformY:{...g,property:"transform"},inputTransition:{...g,property:"transition"},marginInlineStart:{...g,property:"margin-inline-start"},placeholderOpacity:[{selector:"> input:placeholder-shown",property:"opacity"},{...u,property:"opacity"}],inputVerticalAlignment:{...d,property:"align-items"},valueInputHeight:{...u,property:"height"}}}),n.VO,(0,n.RV)({inputType:"password",inputName:"password",includeAttrs:["disabled","readonly","pattern","type","autocomplete"],noBlurDispatch:!0}),(0,n.OZ)({proxyProps:["value","selectionStart"],useProxyTargets:!0}),n.tQ,s.A,(t=>class extends t{static get observedAttributes(){return["manual-visibility-toggle"]}get manualToggleVisibility(){return"true"===this.getAttribute("manual-visibility-toggle")}init(){super.init?.(),this.handleCaretOnVisibilityChange(),this.origSetPasswordVisible=this.baseElement._setPasswordVisible,this.origSetFocused=this.baseElement._setFocused,this.baseElement._setFocused=this.setFocus.bind(this),this.initExternalInput()}initExternalInput(){const t=this.createExternalInput();t&&this.handlePasswordVisibility(t)}get caretPosition(){return this.value?.length||0}handleCaretOnVisibilityChange(){const t=this.baseElement._togglePasswordVisibility.bind(this.baseElement);this.baseElement._togglePasswordVisibility=()=>{setTimeout((()=>(t(),this.inputElement.setSelectionRange(this.caretPosition,this.caretPosition),!1)))}}setFocus(t){this.manualToggleVisibility&&(this.baseElement._setPasswordVisible=()=>{}),this.origSetFocused.call(this.baseElement,t),this.baseElement._setPasswordVisible=this.origSetPasswordVisible.bind(this.baseElement)}resetPasswordVisibilityToggle(){this.baseElement._setPasswordVisible=this.origSetPasswordVisible,this.baseElement._setFocused=this.origSetFocus}attributeChangedCallback(t,e,i){super.attributeChangedCallback?.(t,e,i)}handlePasswordVisibility(t){const e=this.baseElement.__boundRevealButtonMouseDown;this.baseElement.querySelector("vaadin-password-field-button").removeEventListener("mousedown",e),this.baseElement._passwordVisibleChanged=()=>{},this.baseElement._togglePasswordVisibility=()=>{"password"===t.getAttribute("type")?this.showPasswordVisibility(t):this.hidePasswordVisibility(t)}}showPasswordVisibility(t){t.setAttribute("type","text"),this.setAttribute("password-visible","true")}hidePasswordVisibility(t){t.setAttribute("type","password"),this.setAttribute("password-visible","false")}}))((0,n.tz)({slots:["","suffix"],wrappedEleName:"vaadin-password-field",style:()=>`\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: 10em;\n box-sizing: border-box;\n position: relative;\n\t\t\t}\n\t\t\t${(0,a.cy)(w.cssVarList)}\n\t\t\t${(0,a.I4)("vaadin-password-field")}\n ${(0,a.$J)("vaadin-password-field")}\n\n\t\t\tvaadin-password-field {\n\t\t\t\twidth: 100%;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field > input {\n -webkit-mask-image: none;\n\t\t\t\tbox-sizing: border-box;\n opacity: 1;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field) {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field[focus-ring]::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n :host ::slotted(input) {\n\t\t\t\tmin-height: 0;\n }\n :host([readonly]) ::slotted(input:placeholder-shown) {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t\tvaadin-password-field::before {\n\t\t\t\theight: initial;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field)::after {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t\tvaadin-password-field-button {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\t\t\t:host([readonly]) vaadin-password-field-button {\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t\tvaadin-password-field-button[focus-ring] {\n\t\t\t\tbox-shadow: 0 0 0 2px var(${w.cssVarList.inputOutlineColor});\n\t\t\t}\n\n ${(0,a.Kl)()}\n \n ::part(reveal-button) {\n align-self: center;\n }\n\n vaadin-password-field[external-input="true"] > input:not(:placeholder-shown) {\n opacity: 0;\n }\n\t\t`,excludeAttrsSync:["tabindex"],componentName:l}))},16616:(t,e,i)=>{i.d(e,{A:()=>n});const n=t=>class extends t{get isReadOnly(){return this.hasAttribute("readonly")&&"false"!==this.getAttribute("readonly")}init(){super.init?.();const t=this.querySelector("input");t?.addEventListener("mousedown",(e=>{if(this.isDraggable&&this.isReadOnly){t.setAttribute("inert","true");const i=e.target,n=i.getAttribute("type");i.setAttribute("type","text"),setTimeout((()=>{i.focus()}));const r=e=>{i.setAttribute("type",n),t.removeAttribute("inert"),this.removeEventListener("mouseup",r),this.removeEventListener("dragend",r)};this.addEventListener("dragend",r,{once:!0}),this.addEventListener("mouseup",r,{once:!0})}}))}}},10777:(t,e,i)=>{i.d(e,{T:()=>p,w:()=>v});var n=i(79365),r=i(81365),o=i(9696),s=i(97810),a=i(88191),l=i(25964);const p=(0,s.xE)("policy-validation"),d=["data","active-policies","overrides","data-password-policy-value-minlength"],u=["label","value",...d];class c extends((0,r.q)({componentName:p,baseSelector:":host > div"})){#t;#e=[];#i;static get observedAttributes(){return u}constructor(){super(),this.attachShadow({mode:"open"}).innerHTML='\n <div>\n <div class="label"></div>\n <ul></ul>\n </div>\n\t\t',(0,l.fz)("\n :host > div {\n width: 100%;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n }\n .label {\n max-width: 100%;\n text-wrap: wrap;\n overflow-wrap: break-word;\n }\n .hide-label .label {\n display: none;\n }\n ul {\n display: flex;\n flex-direction: column;\n padding: 0;\n margin: 0;\n }\n ul, li {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n li::before {\n display: inline-block;\n width: 1em;\n text-align: center;\n }\n ",this),this.panel=this.shadowRoot.querySelector(":host > div"),this.label=this.shadowRoot.querySelector(".label"),this.list=this.shadowRoot.querySelector("ul")}attributeChangedCallback(t,e,i){if(super.attributeChangedCallback?.(t,e,i),e!==i){if("label"===t&&this.updateLabel(i),d.includes(t)){if("data"===t)try{this.availablePolicies=JSON.parse(i)}catch{console.error("Failed to set available policies")}if("active-policies"===t&&(this.#e=(i||"").split(",")),"data-password-policy-value-minlength"===t){const t=Number(i);!Number.isNaN(t)&&t>0&&(this.#i={...this.#i,minlength:{value:`${t}`}})}}this.renderItems(this.#t,this.#e,this.#i)}}get availablePolicies(){return this.#t||[]}set availablePolicies(t){this.#t=t}get value(){return this.getAttribute("value")||""}validate(){let t=this.#t;return this.#i&&(t=this.#t.map((t=>this.#i[t.id]?{...t,data:this.#i[t.id]}:t))),this.#e.reduce(((e,i)=>{const n=t.find((t=>t.id===i));if(!n)return e;const{pattern:r,message:o,data:s}=n;if(!r||!o)return e;const l={valid:new RegExp((0,a.z)(r,s)).test(this.value),message:(0,a.z)(o,s),id:i};return e.push(l),e}),[])}get isValid(){return!this.validate().some((({valid:t})=>!1===t))}getValidationItemTemplate({valid:t,message:e}){return`\n <li class="item" data-valid="${this.value?t:"none"}">\n <span class="message">${e}</span>\n </li>\n `}renderItems(t,e){t&&e.length&&(this.list.innerHTML=this.validate().map(this.getValidationItemTemplate.bind(this)).join(""))}updateLabel(t){t?(this.label.textContent=t,this.classList.remove("hide-label")):(this.classList.add("hide-label"),this.label.textContent="")}}const{host:h,item:b,symbolDefault:g,symbolSuccess:y,symbolError:m}={host:{selector:()=>":host > div"},item:{selector:()=>".item"},symbolDefault:{selector:()=>'.item[data-valid="none"]::before'},symbolSuccess:{selector:()=>'.item[data-valid="true"]::before'},symbolError:{selector:()=>'.item[data-valid="false"]::before'}},v=(0,o.Zz)((0,n.RF)({componentNameOverride:(0,s.xE)("input-wrapper")}),(0,n.RF)({mappings:{hostDirection:{selector:()=>":host",property:"direction"},fontSize:{},fontFamily:{},padding:{},borderWidth:{...h,property:"border-width"},borderStyle:{...h,property:"border-style"},borderColor:{...h,property:"border-color"},borderRadius:{...h,property:"border-radius"},backgroundColor:{...h,property:"background-color"},textColor:{property:"color"},labelMargin:{...h,property:"gap"},itemsSpacing:{...b,property:"line-height"},itemSymbolSuccessColor:{...y,property:"color"},itemSymbolErrorColor:{...m,property:"color"},itemSymbolDefault:{...g,property:"content"},itemSymbolSuccess:{...y,property:"content"},itemSymbolError:{...m,property:"content"}}}),n.VO,n.tQ)(c)},88191:(t,e,i)=>{i.d(e,{z:()=>n});const n=(t,e)=>t.replace(/{{(\w+)+}}/g,((t,i)=>e?.[i]||t))},73551:(t,e,i)=>{i.d(e,{$J:()=>c,I4:()=>s,Kl:()=>h,LJ:()=>u,Qv:()=>o,X6:()=>l,cy:()=>n,fu:()=>p,kG:()=>d,lS:()=>a,zm:()=>r});const n=t=>`\n :host {\n padding: calc(var(${t.inputOutlineWidth}) + var(${t.inputOutlineOffset}))\n }\n`,r=t=>`\n ${t} {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n }\n`,o=t=>`\n ${t}::part(input-field) {\n overflow: hidden;\n padding: 0;\n box-shadow: none;\n }\n`,s=t=>`\n ${t} > label,\n ${t}::part(label),\n ${t}::part(required-indicator) {\n cursor: pointer;\n }\n`,a=(t,e="input")=>`\n ${t}[disabled] > ${e}:placeholder-shown,\n\t${t}[readonly] > ${e}:placeholder-shown {\n\t\topacity: 1;\n\t}\n`,l=()=>"\n :host {\n --vaadin-field-default-width: auto;\n box-sizing: border-box;\n }\n",p=t=>`\n ${t}::part(input-field)::after {\n opacity: 0;\n }\n`,d=t=>`\n ${t}::part(input-field)::after {\n background: none;\n }\n`,u=(t,e)=>`\n ${r(t)}\n ${s(t)}\n ${a(t)}\n ${o(t)}\n ${((t,e)=>`\n ${t} input:-webkit-autofill,\n ${t} input:-webkit-autofill::first-line,\n ${t} input:-webkit-autofill:hover,\n ${t} input:-webkit-autofill:active,\n ${t} input:-webkit-autofill:focus {\n -webkit-text-fill-color: var(${e.inputValueTextColor});\n box-shadow: 0 0 0 var(${e.inputHeight}) var(${e.inputBackgroundColor}) inset;\n }\n`)(t,e)}\n ${d(t)}\n ${(t=>`\n ${t}::before {\n\t\theight: unset;\n\t}\n`)(t)}\n ${(t=>`\n ${t} > input {\n -webkit-mask-image: none;\n min-height: 0;\n box-sizing: border-box;\n }\n`)(t)}\n ${(t=>`\n ${t}::part(input-field)::after {\n border: none;\n }\n`)(t)}\n`,c=t=>`\n :host ::part(error-message) {\n direction: ltr;\n }\n :host([required]) ::part(required-indicator) {\n width: 1em;\n display: inline-flex;\n }\n :host([required]) ::part(required-indicator)::after {\n position: static;\n }\n :host([has-label]) ::part(label) {\n padding-right: 0;\n padding-bottom: 0;\n display: flex;\n width: 100%;\n }\n ${t} [slot="label"] {\n max-width: calc(100% - 1em);\n overflow: hidden;\n text-overflow: ellipsis;\n padding-bottom: 0.5em;\n }\n`,h=()=>'\n :host([label-type="floating"]) {\n position: relative;\n }\n :host([label-type="floating"][has-label]) [slot="label"] {\n padding: 0;\n }\n :host([label-type="floating"][has-label]) > ::part(label) {\n z-index: 1;\n padding: 0;\n width: auto;\n }\n '}}]);
2
+ //# sourceMappingURL=descope-new-password-descope-new-password-internal-index-js.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"descope-new-password-descope-new-password-internal-index-js.js","mappings":"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","sources":["webpack://@descope/web-components-ui/./src/baseClasses/createBaseInputClass.js","webpack://@descope/web-components-ui/./src/components/descope-new-password/NewPasswordClass.js","webpack://@descope/web-components-ui/./src/components/descope-new-password/descope-new-password-internal/componentName.js","webpack://@descope/web-components-ui/./src/components/descope-new-password/descope-new-password-internal/NewPasswordInternal.js","webpack://@descope/web-components-ui/./src/components/descope-new-password/descope-new-password-internal/index.js","webpack://@descope/web-components-ui/./src/components/descope-password/PasswordClass.js","webpack://@descope/web-components-ui/./src/components/descope-password/passwordDraggableMixin.js","webpack://@descope/web-components-ui/./src/components/descope-policy-validation/PolicyValidationClass.js","webpack://@descope/web-components-ui/./src/components/descope-policy-validation/helpers.js","webpack://@descope/web-components-ui/./src/helpers/themeHelpers/resetHelpers.js"],"sourcesContent":["import { compose } from '../helpers';\nimport {\n changeMixin,\n inputEventsDispatchingMixin,\n inputValidationMixin,\n normalizeBooleanAttributesMixin,\n} from '../mixins';\nimport { createBaseClass } from './createBaseClass';\n\nexport const createBaseInputClass = (...args) =>\n compose(\n inputValidationMixin,\n changeMixin,\n normalizeBooleanAttributesMixin,\n inputEventsDispatchingMixin\n )(createBaseClass(...args));\n","import { forwardAttrs, getComponentName } from '../../helpers/componentHelpers';\nimport { compose } from '../../helpers';\nimport { createStyleMixin, proxyInputMixin, draggableMixin, createProxy } from '../../mixins';\nimport { componentName as descopeInternalComponentName } from './descope-new-password-internal/componentName';\nimport { PasswordClass } from '../descope-password/PasswordClass';\nimport { useHostExternalPadding } from '../../helpers/themeHelpers/resetHelpers';\nimport { PolicyValidationClass } from '../descope-policy-validation/PolicyValidationClass';\n\nexport const componentName = getComponentName('new-password');\n\nconst policyPreviewVars = PolicyValidationClass.cssVarList;\n\nconst customMixin = (superclass) =>\n class NewPasswordMixinClass extends superclass {\n init() {\n super.init?.();\n\n const template = document.createElement('template');\n\n const externalInputAttr = this.getAttribute('external-input');\n\n template.innerHTML = `\n\t\t\t<${descopeInternalComponentName}\n\t\t\t\tname=\"new-password\"\n\t\t\t\ttabindex=\"-1\"\n\t\t\t\tslot=\"input\"\n external-input=\"${externalInputAttr}\"\n\t\t\t>\n </${descopeInternalComponentName}>\n\t\t\t`;\n\n this.baseElement.appendChild(template.content.cloneNode(true));\n\n this.inputElement = this.shadowRoot.querySelector(descopeInternalComponentName);\n\n if (this.getAttribute('external-input') === 'true') {\n this.initExternalInput();\n }\n\n forwardAttrs(this, this.inputElement, {\n includeAttrs: [\n 'password-label',\n 'password-placeholder',\n 'confirm-label',\n 'confirm-placeholder',\n 'full-width',\n 'size',\n 'bordered',\n 'label',\n 'has-confirm',\n 'invalid',\n 'readonly',\n 'draggable',\n 'has-validation',\n 'policy-label',\n 'active-policies',\n 'available-policies',\n 'data-password-policy-value-minlength',\n 'label-type',\n 'manual-visibility-toggle',\n ],\n });\n }\n\n createSlottedExternalInput(node, slotName) {\n const externalInput = node.querySelector('input');\n const slotEle = document.createElement('slot');\n\n const targetSlot = externalInput.getAttribute('slot');\n\n slotEle.setAttribute('name', slotName);\n slotEle.setAttribute('slot', targetSlot);\n\n node.appendChild(slotEle);\n\n // move external input\n externalInput.setAttribute('slot', slotName);\n externalInput.setAttribute('name', this.getAttribute('name'));\n externalInput.setAttribute('data-hidden-input', 'true');\n\n this.appendChild(externalInput);\n }\n\n initExternalInput() {\n // get descope input components\n this.passwordInput = this.inputElement.querySelector('[data-id=\"password\"]');\n this.confirmInput = this.inputElement.querySelector('[data-id=\"confirm\"]');\n\n // create slots for external password input\n this.createSlottedExternalInput(this.passwordInput, 'external-password-input');\n this.createSlottedExternalInput(this.confirmInput, 'external-confirm-input');\n }\n };\n\nconst {\n host,\n label,\n internalInputsWrapper,\n errorMessage,\n helperText,\n passwordInput,\n policyPreview,\n} = {\n host: { selector: () => ':host' },\n label: { selector: '::part(label)' },\n internalInputsWrapper: { selector: 'descope-new-password-internal .wrapper' },\n helperText: { selector: '::part(helper-text)' },\n errorMessage: { selector: '::part(error-message)' },\n passwordInput: { selector: 'descope-password' },\n policyPreview: { selector: 'descope-policy-validation' },\n};\n\nexport const NewPasswordClass = compose(\n createStyleMixin({\n mappings: {\n fontSize: [\n host,\n {},\n {\n selector: PasswordClass.componentName,\n property: PasswordClass.cssVarList.fontSize,\n },\n ],\n fontFamily: [label, errorMessage, helperText],\n labelFontSize: { ...label, property: 'font-size' },\n labelFontWeight: { ...label, property: 'font-weight' },\n labelTextColor: { ...label, property: 'color' },\n errorMessageTextColor: { ...errorMessage, property: 'color' },\n errorMessageIcon: { ...errorMessage, property: 'background-image' },\n errorMessageIconSize: { ...errorMessage, property: 'background-size' },\n errorMessageIconPadding: { ...errorMessage, property: 'padding-inline-start' },\n errorMessageIconRepeat: { ...errorMessage, property: 'background-repeat' },\n errorMessageIconPosition: { ...errorMessage, property: 'background-position' },\n hostWidth: { ...host, property: 'width' },\n hostMinWidth: { ...host, property: 'min-width' },\n hostDirection: [\n { ...host, property: 'direction' },\n { ...passwordInput, property: PasswordClass.cssVarList.hostDirection },\n ],\n inputsRequiredIndicator: { ...host, property: 'content' },\n spaceBetweenInputs: { ...internalInputsWrapper, property: 'gap' },\n policyPreviewBackgroundColor: {\n ...policyPreview,\n property: policyPreviewVars.backgroundColor,\n },\n policyPreviewPadding: { ...policyPreview, property: policyPreviewVars.padding },\n\n valueInputHeight: { ...passwordInput, property: PasswordClass.cssVarList.valueInputHeight },\n valueInputMarginBottom: {\n ...passwordInput,\n property: PasswordClass.cssVarList.valueInputMarginBottom,\n },\n },\n }),\n draggableMixin,\n proxyInputMixin({ proxyProps: ['value', 'selectionStart'] }),\n customMixin\n)(\n createProxy({\n slots: [],\n wrappedEleName: 'vaadin-text-field',\n style: () => `\n\t\t:host {\n\t\t\tdisplay: inline-block;\n\t\t\tmax-width: 100%;\n\t\t\tbox-sizing: border-box;\n\t\t}\n :host ::part(error-message) {\n direction: ltr;\n }\n\t\t${useHostExternalPadding(PasswordClass.cssVarList)}\n\t\tvaadin-text-field {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t}\n\t\tvaadin-text-field::part(input-field) {\n\t\t\tmin-height: 0;\n\t\t\tbackground: transparent;\n\t\t\tbox-shadow: none;\n\t\t\tpadding: 0;\n\t\t}\n\t\tvaadin-text-field::part(input-field)::after {\n\t\t\tbackground: transparent;\n\t\t\topacity: 0;\n\t\t}\n\t\tdescope-new-password-internal {\n\t\t\t-webkit-mask-image: none;\n\t\t\tmin-height: 0;\n\t\t\twidth: 100%;\n\t\t\tpadding: 0;\n\t\t}\n\t\tdescope-new-password-internal > .wrapper {\n -webkit-mask-image: none;\n\t\t\twidth: 100%;\n\t\t\theight: 100%;\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\t\tdescope-password {\n\t\t\tdisplay: block;\n\t\t\twidth: 100%;\n\t\t}\n\t\tdescope-new-password-internal vaadin-password-field::before {\n\t\t\theight: initial;\n\t\t}\n descope-policy-validation {\n margin-top: 8px;\n display: flex;\n }\n .hidden {\n display: none;\n }\n\t\t`,\n excludeAttrsSync: ['tabindex'],\n componentName,\n })\n);\n","import { getComponentName } from '../../../helpers/componentHelpers';\n\nexport const componentName = getComponentName('new-password-internal');\n","import { injectStyle } from '@descope-ui/common/components-helpers';\nimport { createBaseInputClass } from '../../../baseClasses/createBaseInputClass';\nimport { forwardAttrs, observeAttributes } from '../../../helpers/componentHelpers';\nimport { NewPasswordClass } from '../NewPasswordClass';\nimport { componentName } from './componentName';\n\nconst passwordAttrPrefixRegex = /^password-/;\nconst confirmAttrPrefixRegex = /^confirm-/;\n\nconst removeAttrPrefix = (attr, prefix) => attr.replace(prefix, '');\n\nconst passwordInputAttrs = ['password-label', 'password-placeholder'];\nconst confirmInputAttrs = ['confirm-label', 'confirm-placeholder'];\nconst policyPanelAttrs = ['has-validation'];\nconst commonAttrs = [\n 'has-confirm',\n 'disabled',\n 'bordered',\n 'size',\n 'full-width',\n 'maxlength',\n 'invalid',\n 'readonly',\n 'draggable',\n 'autocomplete',\n 'label-type',\n 'manual-visibility-toggle',\n];\n\nconst inputRelatedAttrs = [].concat(\n commonAttrs,\n passwordInputAttrs,\n confirmInputAttrs,\n policyPanelAttrs\n);\n\nconst BaseInputClass = createBaseInputClass({ componentName, baseSelector: 'div' });\n\nclass NewPasswordInternal extends BaseInputClass {\n static get observedAttributes() {\n return [].concat(BaseInputClass.observedAttributes || [], inputRelatedAttrs);\n }\n\n constructor() {\n super();\n\n this.innerHTML = `\n\t\t\t<div class=\"wrapper\"></div>\n\t\t`;\n\n this.wrapperEle = this.querySelector('.wrapper');\n }\n\n get value() {\n return this.passwordInput?.value || '';\n }\n\n set value(val) {\n if (val === this.value) return;\n this.passwordInput.value = val;\n }\n\n get hasConfirm() {\n return this.getAttribute('has-confirm') === 'true';\n }\n\n onHasConfirmChange(hasConfirm) {\n this.confirmInput.classList.toggle('hidden', !hasConfirm);\n }\n\n onHasValidationChange(hasValidation) {\n this.policyPanel.classList.toggle('hidden', !hasValidation);\n }\n\n get hasValidation() {\n return this.getAttribute('has-validation') === 'true';\n }\n\n getValidity() {\n if (this.isRequired && !this.value) {\n return { valueMissing: true };\n }\n\n if (this.value && !this.policyPanel.isValid) {\n return { typeMismatch: true };\n }\n\n if (this.hasConfirm && this.confirmInput && this.value !== this.confirmInput.value) {\n return { patternMismatch: true };\n }\n\n const min = this.getAttribute('minlength');\n const minVal = parseInt(min, 10) || 0;\n const minValid = this.value.length >= minVal;\n if (!minValid) {\n return { tooShort: true };\n }\n\n return {};\n }\n\n init() {\n this.addEventListener('focus', (e) => {\n // we want to ignore focus events we are dispatching\n if (e.isTrusted) {\n this.passwordInput.focus();\n }\n });\n super.init?.();\n this.renderInputs(this.hasConfirm, this.hasValidation);\n }\n\n renderInputs() {\n const hasExternalInput = this.getAttribute('external-input') === 'true';\n const template = `\n <div>\n <descope-password\n autocomplete=\"new-password\"\n manual-visibility-toggle=\"true\"\n data-id=\"password\"\n external-input=\"${hasExternalInput}\"\n ></descope-password>\n <descope-policy-validation></descope-policy-validation>\n </div>\n <descope-password\n autocomplete=\"new-password\"\n manual-visibility-toggle=\"true\"\n external-input=\"${hasExternalInput}\"\n data-id=\"confirm\"\n ></descope-password>\n `;\n\n this.wrapperEle.innerHTML = template;\n\n this.passwordInput = this.querySelector('[data-id=\"password\"]');\n this.confirmInput = this.querySelector('[data-id=\"confirm\"]');\n this.policyPanel = this.querySelector('descope-policy-validation');\n\n this.inputs = [this.passwordInput, this.confirmInput];\n\n this.initInputs();\n\n // sync input value to policy validation panel\n this.passwordInput.addEventListener('input', (e) => {\n this.policyPanel.setAttribute('value', e.target.value);\n });\n\n forwardAttrs(this, this.policyPanel, {\n includeAttrs: [\n 'policy-label',\n 'available-policies',\n 'active-policies',\n 'data-password-policy-value-minlength',\n 'manual-visibility-toggle',\n ],\n mapAttrs: {\n 'policy-label': 'label',\n 'available-policies': 'data',\n },\n });\n }\n\n // the inputs are not required but we still want it to have a required\n // indicator in case the root component is required\n handleIndicatorStyle() {\n this.inputs.forEach((input) => {\n injectStyle(\n `\n\t\t\t\t:host ::part(required-indicator)::after {\n\t\t\t\t\tcontent: var(${NewPasswordClass.cssVarList.inputsRequiredIndicator});\n width: 1em;\n text-align: center;\n\t\t\t\t}\n :host ::part(required-indicator) {\n display: inline-flex;\n }\n\t\t\t\t`,\n input\n );\n });\n }\n\n get isInvalid() {\n return this.hasAttribute('invalid') && this.getAttribute('invalid') !== 'false';\n }\n\n // for some reason, Vaadin is removing the invalid attribute on several events,\n // e.g. focus, input, etc..., so we need to make sure the inputs will stay invalid\n // if the root component is invalid\n handleInputsInvalidAttribute() {\n this.inputs.forEach((input) => {\n input &&\n observeAttributes(\n input,\n (changedAttributes) => {\n if (changedAttributes.includes('invalid')) {\n const inputInvalidValue = input.getAttribute('invalid');\n const rootInvalidValue = this.getAttribute('invalid');\n\n if (this.isInvalid && rootInvalidValue !== inputInvalidValue) {\n input.setAttribute('invalid', 'true');\n }\n }\n },\n {}\n );\n });\n }\n\n initInputs() {\n this.handleIndicatorStyle();\n this.handleInputsInvalidAttribute();\n this.handleFocusEventsDispatching(this.inputs);\n }\n\n // eslint-disable-next-line class-methods-use-this\n toggleBooleanAttribute(ele, name, value) {\n value === null ? ele?.removeAttribute(name) : ele?.setAttribute(name, value);\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n\n if (oldValue !== newValue) {\n if (attrName === 'has-validation') {\n this.onHasValidationChange(newValue === 'true');\n } else if (attrName === 'has-confirm') {\n this.onHasConfirmChange(newValue === 'true');\n } else if (commonAttrs.includes(attrName)) {\n this.inputs.forEach((input) => this.toggleBooleanAttribute(input, attrName, newValue));\n } else if (passwordInputAttrs.includes(attrName)) {\n this.toggleBooleanAttribute(\n this.passwordInput,\n removeAttrPrefix(attrName, passwordAttrPrefixRegex),\n newValue\n );\n } else if (confirmInputAttrs.includes(attrName)) {\n this.toggleBooleanAttribute(\n this.confirmInput,\n removeAttrPrefix(attrName, confirmAttrPrefixRegex),\n newValue\n );\n }\n }\n }\n}\n\nexport default NewPasswordInternal;\n","import NewPasswordInternal from './NewPasswordInternal';\nimport { componentName } from './componentName';\n\ncustomElements.define(componentName, NewPasswordInternal);\n","import {\n createStyleMixin,\n draggableMixin,\n createProxy,\n proxyInputMixin,\n componentNameValidationMixin,\n externalInputMixin,\n} from '../../mixins';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport passwordDraggableMixin from './passwordDraggableMixin';\nimport {\n resetInputLabelPosition,\n resetInputCursor,\n useHostExternalPadding,\n inputFloatingLabelStyle,\n} from '../../helpers/themeHelpers/resetHelpers';\n\nexport const componentName = getComponentName('password');\n\nconst customMixin = (superclass) =>\n class PasswordFieldMixinClass extends superclass {\n static get observedAttributes() {\n return ['manual-visibility-toggle'];\n }\n\n get manualToggleVisibility() {\n return this.getAttribute('manual-visibility-toggle') === 'true';\n }\n\n init() {\n super.init?.();\n this.handleCaretOnVisibilityChange();\n this.origSetPasswordVisible = this.baseElement._setPasswordVisible;\n this.origSetFocused = this.baseElement._setFocused;\n this.baseElement._setFocused = this.setFocus.bind(this);\n\n this.initExternalInput();\n }\n\n initExternalInput() {\n const externalInput = this.createExternalInput();\n if (externalInput) {\n this.handlePasswordVisibility(externalInput);\n }\n }\n\n get caretPosition() {\n return this.value?.length || 0;\n }\n\n handleCaretOnVisibilityChange() {\n const origTogglePasswordVisibility = this.baseElement._togglePasswordVisibility.bind(\n this.baseElement\n );\n this.baseElement._togglePasswordVisibility = () => {\n setTimeout(() => {\n origTogglePasswordVisibility();\n this.inputElement.setSelectionRange(this.caretPosition, this.caretPosition);\n return false;\n });\n };\n }\n\n // We use `manual-visibility-toggle` to to toggle the password's visibility\n // even if the input field is focused-out. However, on focusout - Vaadin resets\n // password visibility. Since we don't want to override Vaadin's native setFocus\n // function (which is part of their FocusMixin).\n // So, here we override the part of logic that runs within Vaadin's setFocus that reports\n // the password visibility state. This logic is part of our `manual-visibility-toggle` only.\n setFocus(focused) {\n if (this.manualToggleVisibility) {\n this.baseElement._setPasswordVisible = () => {};\n }\n this.origSetFocused.call(this.baseElement, focused);\n this.baseElement._setPasswordVisible = this.origSetPasswordVisible.bind(this.baseElement);\n }\n\n resetPasswordVisibilityToggle() {\n this.baseElement._setPasswordVisible = this.origSetPasswordVisible;\n this.baseElement._setFocused = this.origSetFocus;\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n }\n\n // override vaadin's password visibility toggle.\n // we need this override in order to to resolve the external input `focus` race condition,\n // which is caused due to the focus sync between the two inputs.\n handlePasswordVisibility(externalInput) {\n // disable vaadin's `__boundRevealButtonMouseDown` mouse-down event lisetener\n const origBoundRevealButtonMouseDown = this.baseElement.__boundRevealButtonMouseDown;\n this.baseElement\n .querySelector('vaadin-password-field-button')\n .removeEventListener('mousedown', origBoundRevealButtonMouseDown);\n\n // disable vaadin's `_passwordVisibleChanged` observer\n this.baseElement._passwordVisibleChanged = () => {};\n\n // override vaadin's `_togglePasswordVisibility`\n this.baseElement._togglePasswordVisibility = () => {\n const currVisibility = externalInput.getAttribute('type');\n if (currVisibility === 'password') {\n this.showPasswordVisibility(externalInput);\n } else {\n this.hidePasswordVisibility(externalInput);\n }\n };\n }\n\n showPasswordVisibility(input) {\n // handle input element's type\n input.setAttribute('type', 'text');\n // handle vaadin's `password-visible` attribute\n this.setAttribute('password-visible', 'true');\n }\n\n hidePasswordVisibility(input) {\n // handle input element's type\n input.setAttribute('type', 'password');\n // handle vaadin's `password-visible` attribute\n this.setAttribute('password-visible', 'false');\n }\n };\n\nconst {\n host,\n inputField,\n inputElement,\n inputElementPlaceholder,\n revealButtonContainer,\n revealButtonIcon,\n label,\n requiredIndicator,\n errorMessage,\n helperText,\n} = {\n host: { selector: () => ':host' },\n inputField: { selector: '::part(input-field)' },\n inputElement: { selector: '> input' },\n inputElementPlaceholder: { selector: () => ':host input:placeholder-shown' },\n revealButtonContainer: { selector: '::part(reveal-button)' },\n revealButtonIcon: { selector: '::part(reveal-button)::before' },\n label: { selector: '::part(label)' },\n requiredIndicator: { selector: '[required]::part(required-indicator)::after' },\n helperText: { selector: '::part(helper-text)' },\n errorMessage: { selector: '::part(error-message)' },\n};\n\nexport const PasswordClass = compose(\n createStyleMixin({\n mappings: {\n hostWidth: { ...host, property: 'width' },\n hostMinWidth: { ...host, property: 'min-width' },\n hostDirection: { ...host, property: 'direction' },\n fontSize: [{}, host],\n fontFamily: [label, inputField, errorMessage, helperText],\n inputHeight: { ...inputField, property: 'height' },\n inputHorizontalPadding: [\n { ...inputElement, property: 'padding-left' },\n { ...inputElement, property: 'padding-right' },\n ],\n inputBackgroundColor: { ...inputField, property: 'background-color' },\n\n inputBorderStyle: { ...inputField, property: 'border-style' },\n inputBorderWidth: { ...inputField, property: 'border-width' },\n inputBorderColor: { ...inputField, property: 'border-color' },\n inputBorderRadius: { ...inputField, property: 'border-radius' },\n\n inputOutlineColor: { ...inputField, property: 'outline-color' },\n inputOutlineStyle: { ...inputField, property: 'outline-style' },\n inputOutlineOffset: { ...inputField, property: 'outline-offset' },\n inputOutlineWidth: { ...inputField, property: 'outline-width' },\n\n labelFontSize: { ...label, property: 'font-size' },\n labelFontWeight: { ...label, property: 'font-weight' },\n labelTextColor: [\n { ...label, property: 'color' },\n { ...requiredIndicator, property: 'color' },\n ],\n labelRequiredIndicator: { ...requiredIndicator, property: 'content' },\n errorMessageTextColor: { ...errorMessage, property: 'color' },\n errorMessageIcon: { ...errorMessage, property: 'background-image' },\n errorMessageIconSize: { ...errorMessage, property: 'background-size' },\n errorMessageIconPadding: { ...errorMessage, property: 'padding-inline-start' },\n errorMessageIconRepeat: { ...errorMessage, property: 'background-repeat' },\n errorMessageIconPosition: { ...errorMessage, property: 'background-position' },\n\n inputPlaceholderTextColor: [\n { ...inputElementPlaceholder, property: 'color' },\n { selector: () => ':host ::slotted(input:placeholder-shown)', property: 'color' },\n ],\n inputValueTextColor: [\n { ...inputElement, property: 'color' },\n { selector: () => ':host ::slotted(input)', property: 'color' },\n ],\n\n revealButtonOffset: [\n { ...revealButtonContainer, property: 'margin-right' },\n { ...revealButtonContainer, property: 'margin-left' },\n ],\n revealButtonSize: { ...revealButtonContainer, property: 'font-size' },\n revealButtonColor: { ...revealButtonIcon, property: 'color' },\n\n labelPosition: { ...label, property: 'position' },\n labelTopPosition: { ...label, property: 'top' },\n labelHorizontalPosition: [\n { ...label, property: 'left' },\n { ...label, property: 'right' },\n ],\n inputTransformY: { ...label, property: 'transform' },\n inputTransition: { ...label, property: 'transition' },\n marginInlineStart: { ...label, property: 'margin-inline-start' },\n placeholderOpacity: [\n { selector: '> input:placeholder-shown', property: 'opacity' },\n { ...inputElement, property: 'opacity' },\n ],\n inputVerticalAlignment: { ...inputField, property: 'align-items' },\n valueInputHeight: { ...inputElement, property: 'height' },\n },\n }),\n draggableMixin,\n externalInputMixin({\n inputType: 'password',\n inputName: 'password',\n includeAttrs: ['disabled', 'readonly', 'pattern', 'type', 'autocomplete'],\n noBlurDispatch: true,\n }),\n proxyInputMixin({ proxyProps: ['value', 'selectionStart'], useProxyTargets: true }),\n componentNameValidationMixin,\n passwordDraggableMixin,\n customMixin\n)(\n createProxy({\n slots: ['', 'suffix'],\n wrappedEleName: 'vaadin-password-field',\n style: () => `\n\t\t\t:host {\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tmax-width: 100%;\n\t\t\t\tmin-width: 10em;\n box-sizing: border-box;\n position: relative;\n\t\t\t}\n\t\t\t${useHostExternalPadding(PasswordClass.cssVarList)}\n\t\t\t${resetInputCursor('vaadin-password-field')}\n ${resetInputLabelPosition('vaadin-password-field')}\n\n\t\t\tvaadin-password-field {\n\t\t\t\twidth: 100%;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field > input {\n -webkit-mask-image: none;\n\t\t\t\tbox-sizing: border-box;\n opacity: 1;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field) {\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tpadding: 0;\n\t\t\t}\n\t\t\tvaadin-password-field[focus-ring]::part(input-field) {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n :host ::slotted(input) {\n\t\t\t\tmin-height: 0;\n }\n :host([readonly]) ::slotted(input:placeholder-shown) {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t\tvaadin-password-field::before {\n\t\t\t\theight: initial;\n\t\t\t}\n\t\t\tvaadin-password-field::part(input-field)::after {\n\t\t\t\topacity: 0;\n\t\t\t}\n\t\t\tvaadin-password-field-button {\n\t\t\t\tcursor: pointer;\n\t\t\t}\n\t\t\t:host([readonly]) vaadin-password-field-button {\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t\tvaadin-password-field-button[focus-ring] {\n\t\t\t\tbox-shadow: 0 0 0 2px var(${PasswordClass.cssVarList.inputOutlineColor});\n\t\t\t}\n\n ${inputFloatingLabelStyle()}\n \n ::part(reveal-button) {\n align-self: center;\n }\n\n vaadin-password-field[external-input=\"true\"] > input:not(:placeholder-shown) {\n opacity: 0;\n }\n\t\t`,\n excludeAttrsSync: ['tabindex'],\n componentName,\n })\n);\n","const passwordDraggableMixin = (superclass) =>\n class PasswordDraggableMixinClass extends superclass {\n get isReadOnly() {\n return this.hasAttribute('readonly') && this.getAttribute('readonly') !== 'false';\n }\n\n init() {\n // there is an issue in Chrome that input field with type password cannot be D&D\n // so in case the input is draggable & readonly, we are changing the input type to \"text\" before dragging\n // and return the original type when done\n super.init?.();\n\n const ele = this.querySelector('input');\n\n ele?.addEventListener('mousedown', (e) => {\n if (this.isDraggable && this.isReadOnly) {\n ele.setAttribute('inert', 'true');\n\n const inputEle = e.target;\n const prevType = inputEle.getAttribute('type');\n inputEle.setAttribute('type', 'text');\n setTimeout(() => {\n inputEle.focus();\n });\n\n const onComplete = (_) => {\n inputEle.setAttribute('type', prevType);\n ele.removeAttribute('inert');\n this.removeEventListener('mouseup', onComplete);\n this.removeEventListener('dragend', onComplete);\n };\n\n this.addEventListener('dragend', onComplete, { once: true });\n this.addEventListener('mouseup', onComplete, { once: true });\n }\n });\n }\n };\n\nexport default passwordDraggableMixin;\n","// eslint-disable-next-line max-classes-per-file\nimport { createStyleMixin, draggableMixin, componentNameValidationMixin } from '../../mixins';\nimport { createBaseClass } from '../../baseClasses/createBaseClass';\nimport { compose } from '../../helpers';\nimport { getComponentName } from '../../helpers/componentHelpers';\nimport { interpolateString } from './helpers';\nimport { injectStyle } from '@descope-ui/common/components-helpers';\n\nexport const componentName = getComponentName('policy-validation');\n\nconst overrideAttrs = ['data-password-policy-value-minlength'];\nconst dataAttrs = ['data', 'active-policies', 'overrides', ...overrideAttrs];\nconst policyAttrs = ['label', 'value', ...dataAttrs];\n\nclass RawPolicyValidation extends createBaseClass({ componentName, baseSelector: ':host > div' }) {\n #availablePolicies;\n\n #activePolicies = [];\n\n #overrides;\n\n static get observedAttributes() {\n return policyAttrs;\n }\n\n constructor() {\n super();\n\n this.attachShadow({ mode: 'open' }).innerHTML = `\n <div>\n <div class=\"label\"></div>\n <ul></ul>\n </div>\n\t\t`;\n\n injectStyle(\n `\n :host > div {\n width: 100%;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n }\n .label {\n max-width: 100%;\n text-wrap: wrap;\n overflow-wrap: break-word;\n }\n .hide-label .label {\n display: none;\n }\n ul {\n display: flex;\n flex-direction: column;\n padding: 0;\n margin: 0;\n }\n ul, li {\n margin: 0;\n padding: 0;\n list-style: none;\n }\n li::before {\n display: inline-block;\n width: 1em;\n text-align: center;\n }\n `,\n this\n );\n\n this.panel = this.shadowRoot.querySelector(':host > div');\n this.label = this.shadowRoot.querySelector('.label');\n this.list = this.shadowRoot.querySelector('ul');\n }\n\n attributeChangedCallback(attrName, oldValue, newValue) {\n super.attributeChangedCallback?.(attrName, oldValue, newValue);\n if (oldValue !== newValue) {\n if (attrName === 'label') {\n this.updateLabel(newValue);\n }\n\n // we're don't know the order in which the attributes are forwarded, so we're trying to render every time\n // once `data` and `active-policies` are populated, the render will be executed.\n // once the `overrides` object is updated, we want to re-render the panel.\n if (dataAttrs.includes(attrName)) {\n if (attrName === 'data') {\n try {\n this.availablePolicies = JSON.parse(newValue);\n } catch {\n // eslint-disable-next-line no-console\n console.error('Failed to set available policies');\n }\n }\n if (attrName === 'active-policies') {\n this.#activePolicies = (newValue || '').split(',');\n }\n\n if (attrName === 'data-password-policy-value-minlength') {\n const ln = Number(newValue);\n if (!Number.isNaN(ln) && ln > 0) {\n this.#overrides = { ...this.#overrides, minlength: { value: `${ln}` } };\n }\n }\n }\n\n this.renderItems(this.#availablePolicies, this.#activePolicies, this.#overrides);\n }\n }\n\n get availablePolicies() {\n return this.#availablePolicies || [];\n }\n\n set availablePolicies(val) {\n this.#availablePolicies = val;\n }\n\n get value() {\n return this.getAttribute('value') || '';\n }\n\n validate() {\n let policies = this.#availablePolicies;\n\n if (this.#overrides) {\n policies = this.#availablePolicies.map((policy) =>\n this.#overrides[policy.id] ? { ...policy, data: this.#overrides[policy.id] } : policy\n );\n }\n\n return this.#activePolicies.reduce((results, id) => {\n const policy = policies.find((p) => p.id === id);\n\n if (!policy) {\n return results;\n }\n\n const { pattern, message, data } = policy;\n\n if (!pattern || !message) {\n return results;\n }\n\n const exp = new RegExp(interpolateString(pattern, data));\n\n const validationResult = {\n valid: exp.test(this.value),\n message: interpolateString(message, data),\n id,\n };\n\n results.push(validationResult);\n\n return results;\n }, []);\n }\n\n get isValid() {\n return !this.validate().some(({ valid }) => valid === false);\n }\n\n getValidationItemTemplate({ valid, message }) {\n const status = !this.value ? 'none' : valid;\n return `\n <li class=\"item\" data-valid=\"${status}\">\n <span class=\"message\">${message}</span>\n </li>\n `;\n }\n\n renderItems(availablePolicies, activePolicies) {\n if (!availablePolicies || !activePolicies.length) {\n return;\n }\n\n this.list.innerHTML = this.validate().map(this.getValidationItemTemplate.bind(this)).join('');\n }\n\n updateLabel(val) {\n if (!val) {\n this.classList.add('hide-label');\n this.label.textContent = '';\n } else {\n this.label.textContent = val;\n this.classList.remove('hide-label');\n }\n }\n}\n\nconst { host, item, symbolDefault, symbolSuccess, symbolError } = {\n host: { selector: () => ':host > div' },\n item: { selector: () => '.item' },\n symbolDefault: { selector: () => '.item[data-valid=\"none\"]::before' },\n symbolSuccess: { selector: () => '.item[data-valid=\"true\"]::before' },\n symbolError: { selector: () => '.item[data-valid=\"false\"]::before' },\n};\n\nexport const PolicyValidationClass = compose(\n createStyleMixin({ componentNameOverride: getComponentName('input-wrapper') }),\n createStyleMixin({\n mappings: {\n hostDirection: { selector: () => ':host', property: 'direction' },\n fontSize: {},\n fontFamily: {},\n padding: {},\n borderWidth: { ...host, property: 'border-width' },\n borderStyle: { ...host, property: 'border-style' },\n borderColor: { ...host, property: 'border-color' },\n borderRadius: { ...host, property: 'border-radius' },\n backgroundColor: { ...host, property: 'background-color' },\n textColor: { property: 'color' },\n labelMargin: { ...host, property: 'gap' },\n itemsSpacing: { ...item, property: 'line-height' },\n itemSymbolSuccessColor: { ...symbolSuccess, property: 'color' },\n itemSymbolErrorColor: { ...symbolError, property: 'color' },\n itemSymbolDefault: { ...symbolDefault, property: 'content' },\n itemSymbolSuccess: { ...symbolSuccess, property: 'content' },\n itemSymbolError: { ...symbolError, property: 'content' },\n },\n }),\n draggableMixin,\n componentNameValidationMixin\n)(RawPolicyValidation);\n","export const interpolateString = (template, values) =>\n template.replace(/{{(\\w+)+}}/g, (match, key) => values?.[key] || match);\n","export const useHostExternalPadding = (cssVarList) => `\n :host {\n padding: calc(var(${cssVarList.inputOutlineWidth}) + var(${cssVarList.inputOutlineOffset}))\n }\n`;\n\nexport const resetInputFieldUnderlayingBorder = (name) => `\n ${name}::part(input-field)::after {\n border: none;\n }\n`;\n\nexport const resetInitialHeight = (name) => `\n ${name}::before {\n\t\theight: unset;\n\t}\n`;\n\nexport const resetInputElement = (name) => `\n ${name} > input {\n -webkit-mask-image: none;\n min-height: 0;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputContainer = (name) => `\n ${name} {\n margin: 0;\n padding: 0;\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputField = (name) => `\n ${name}::part(input-field) {\n overflow: hidden;\n padding: 0;\n box-shadow: none;\n }\n`;\n\nexport const resetInputCursor = (name) => `\n ${name} > label,\n ${name}::part(label),\n ${name}::part(required-indicator) {\n cursor: pointer;\n }\n`;\n\nexport const resetInputPlaceholder = (name, ele = 'input') => `\n ${name}[disabled] > ${ele}:placeholder-shown,\n\t${name}[readonly] > ${ele}:placeholder-shown {\n\t\topacity: 1;\n\t}\n`;\n\nexport const resetInputAutoFill = (name, cssVarList) => `\n ${name} input:-webkit-autofill,\n ${name} input:-webkit-autofill::first-line,\n ${name} input:-webkit-autofill:hover,\n ${name} input:-webkit-autofill:active,\n ${name} input:-webkit-autofill:focus {\n -webkit-text-fill-color: var(${cssVarList.inputValueTextColor});\n box-shadow: 0 0 0 var(${cssVarList.inputHeight}) var(${cssVarList.inputBackgroundColor}) inset;\n }\n`;\n\nexport const resetInputFieldDefaultWidth = () => `\n :host {\n --vaadin-field-default-width: auto;\n box-sizing: border-box;\n }\n`;\n\nexport const resetInputReadonlyStyle = (name) => `\n ${name}::part(input-field)::after {\n opacity: 0;\n }\n`;\n\nexport const resetInputFieldInvalidBackgroundColor = (name) => `\n ${name}::part(input-field)::after {\n background: none;\n }\n`;\n\nexport const resetInputOverrides = (name, cssVarList) => `\n ${resetInputContainer(name)}\n ${resetInputCursor(name)}\n ${resetInputPlaceholder(name)}\n ${resetInputField(name)}\n ${resetInputAutoFill(name, cssVarList)}\n ${resetInputFieldInvalidBackgroundColor(name)}\n ${resetInitialHeight(name)}\n ${resetInputElement(name)}\n ${resetInputFieldUnderlayingBorder(name)}\n`;\n\n// This function is used to support RTL correctly for input components.\n// It also fixes the error message to be displayed LTR since we currently\n// don't support RTL for error messages.\nexport const resetInputLabelPosition = (name) => `\n :host ::part(error-message) {\n direction: ltr;\n }\n :host([required]) ::part(required-indicator) {\n width: 1em;\n display: inline-flex;\n }\n :host([required]) ::part(required-indicator)::after {\n position: static;\n }\n :host([has-label]) ::part(label) {\n padding-right: 0;\n padding-bottom: 0;\n display: flex;\n width: 100%;\n }\n ${name} [slot=\"label\"] {\n max-width: calc(100% - 1em);\n overflow: hidden;\n text-overflow: ellipsis;\n padding-bottom: 0.5em;\n }\n`;\n\nexport const inputFloatingLabelStyle = () => {\n return `\n :host([label-type=\"floating\"]) {\n position: relative;\n }\n :host([label-type=\"floating\"][has-label]) [slot=\"label\"] {\n padding: 0;\n }\n :host([label-type=\"floating\"][has-label]) > ::part(label) {\n z-index: 1;\n padding: 0;\n width: auto;\n }\n `;\n};\n"],"names":["createBaseInputClass","args","componentName","policyPreviewVars","cssVarList","host","label","internalInputsWrapper","errorMessage","helperText","passwordInput","policyPreview","selector","NewPasswordClass","mappings","fontSize","property","fontFamily","labelFontSize","labelFontWeight","labelTextColor","errorMessageTextColor","errorMessageIcon","errorMessageIconSize","errorMessageIconPadding","errorMessageIconRepeat","errorMessageIconPosition","hostWidth","hostMinWidth","hostDirection","inputsRequiredIndicator","spaceBetweenInputs","policyPreviewBackgroundColor","backgroundColor","policyPreviewPadding","padding","valueInputHeight","valueInputMarginBottom","proxyProps","superclass","init","super","template","document","createElement","externalInputAttr","this","getAttribute","innerHTML","baseElement","appendChild","content","cloneNode","inputElement","shadowRoot","querySelector","initExternalInput","includeAttrs","createSlottedExternalInput","node","slotName","externalInput","slotEle","targetSlot","setAttribute","confirmInput","slots","wrappedEleName","style","excludeAttrsSync","passwordAttrPrefixRegex","confirmAttrPrefixRegex","removeAttrPrefix","attr","prefix","replace","passwordInputAttrs","confirmInputAttrs","commonAttrs","inputRelatedAttrs","concat","BaseInputClass","customElements","define","observedAttributes","constructor","wrapperEle","value","val","hasConfirm","onHasConfirmChange","classList","toggle","onHasValidationChange","hasValidation","policyPanel","getValidity","isRequired","valueMissing","isValid","typeMismatch","patternMismatch","min","minVal","parseInt","length","tooShort","addEventListener","e","isTrusted","focus","renderInputs","hasExternalInput","inputs","initInputs","target","mapAttrs","handleIndicatorStyle","forEach","input","isInvalid","hasAttribute","handleInputsInvalidAttribute","changedAttributes","includes","inputInvalidValue","rootInvalidValue","handleFocusEventsDispatching","toggleBooleanAttribute","ele","name","removeAttribute","attributeChangedCallback","attrName","oldValue","newValue","inputField","inputElementPlaceholder","revealButtonContainer","revealButtonIcon","requiredIndicator","PasswordClass","inputHeight","inputHorizontalPadding","inputBackgroundColor","inputBorderStyle","inputBorderWidth","inputBorderColor","inputBorderRadius","inputOutlineColor","inputOutlineStyle","inputOutlineOffset","inputOutlineWidth","labelRequiredIndicator","inputPlaceholderTextColor","inputValueTextColor","revealButtonOffset","revealButtonSize","revealButtonColor","labelPosition","labelTopPosition","labelHorizontalPosition","inputTransformY","inputTransition","marginInlineStart","placeholderOpacity","inputVerticalAlignment","inputType","inputName","noBlurDispatch","useProxyTargets","manualToggleVisibility","handleCaretOnVisibilityChange","origSetPasswordVisible","_setPasswordVisible","origSetFocused","_setFocused","setFocus","bind","createExternalInput","handlePasswordVisibility","caretPosition","origTogglePasswordVisibility","_togglePasswordVisibility","setTimeout","setSelectionRange","focused","call","resetPasswordVisibilityToggle","origSetFocus","origBoundRevealButtonMouseDown","__boundRevealButtonMouseDown","removeEventListener","_passwordVisibleChanged","showPasswordVisibility","hidePasswordVisibility","isReadOnly","isDraggable","inputEle","prevType","onComplete","_","once","dataAttrs","policyAttrs","RawPolicyValidation","baseSelector","attachShadow","mode","panel","list","updateLabel","availablePolicies","JSON","parse","console","error","split","ln","Number","isNaN","minlength","renderItems","validate","policies","map","policy","id","data","reduce","results","find","p","pattern","message","validationResult","valid","RegExp","test","push","some","getValidationItemTemplate","activePolicies","join","textContent","remove","add","item","symbolDefault","symbolSuccess","symbolError","PolicyValidationClass","componentNameOverride","borderWidth","borderStyle","borderColor","borderRadius","textColor","labelMargin","itemsSpacing","itemSymbolSuccessColor","itemSymbolErrorColor","itemSymbolDefault","itemSymbolSuccess","itemSymbolError","interpolateString","values","match","key","useHostExternalPadding","resetInputContainer","resetInputField","resetInputCursor","resetInputPlaceholder","resetInputFieldDefaultWidth","resetInputReadonlyStyle","resetInputFieldInvalidBackgroundColor","resetInputOverrides","resetInputAutoFill","resetInitialHeight","resetInputElement","resetInputFieldUnderlayingBorder","resetInputLabelPosition","inputFloatingLabelStyle"],"sourceRoot":""}