wcs-core 3.0.0 → 4.0.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 (334) hide show
  1. package/README.md +7 -0
  2. package/dist/cjs/{grid-pagination-ff65e0ff.js → grid-pagination-4b55c908.js} +1 -2
  3. package/dist/cjs/grid-pagination-4b55c908.js.map +1 -0
  4. package/dist/cjs/{helpers-11518d4f.js → helpers-4a14051a.js} +41 -1
  5. package/dist/cjs/helpers-4a14051a.js.map +1 -0
  6. package/dist/cjs/loader.cjs.js +1 -1
  7. package/dist/cjs/wcs-action-bar.cjs.entry.js.map +1 -1
  8. package/dist/cjs/wcs-app.cjs.entry.js +0 -1
  9. package/dist/cjs/wcs-app.cjs.entry.js.map +1 -1
  10. package/dist/cjs/wcs-button.cjs.entry.js +17 -3
  11. package/dist/cjs/wcs-button.cjs.entry.js.map +1 -1
  12. package/dist/cjs/wcs-checkbox.cjs.entry.js +0 -1
  13. package/dist/cjs/wcs-checkbox.cjs.entry.js.map +1 -1
  14. package/dist/cjs/wcs-com-nav-category.cjs.entry.js +1 -1
  15. package/dist/cjs/wcs-com-nav-category.cjs.entry.js.map +1 -1
  16. package/dist/cjs/wcs-com-nav-submenu.cjs.entry.js +1 -1
  17. package/dist/cjs/wcs-com-nav-submenu.cjs.entry.js.map +1 -1
  18. package/dist/cjs/wcs-com-nav.cjs.entry.js.map +1 -1
  19. package/dist/cjs/wcs-counter.cjs.entry.js +130 -0
  20. package/dist/cjs/wcs-counter.cjs.entry.js.map +1 -0
  21. package/dist/cjs/wcs-dropdown-item.cjs.entry.js +1 -1
  22. package/dist/cjs/wcs-dropdown.cjs.entry.js +1 -1
  23. package/dist/cjs/wcs-dropdown.cjs.entry.js.map +1 -1
  24. package/dist/cjs/wcs-editable-field.cjs.entry.js +16 -3
  25. package/dist/cjs/wcs-editable-field.cjs.entry.js.map +1 -1
  26. package/dist/cjs/wcs-error_2.cjs.entry.js +1 -1
  27. package/dist/cjs/wcs-error_2.cjs.entry.js.map +1 -1
  28. package/dist/cjs/wcs-field.cjs.entry.js.map +1 -1
  29. package/dist/cjs/wcs-footer.cjs.entry.js.map +1 -1
  30. package/dist/cjs/wcs-galactic-menu.cjs.entry.js +1 -1
  31. package/dist/cjs/wcs-galactic-menu.cjs.entry.js.map +1 -1
  32. package/dist/cjs/wcs-galactic.cjs.entry.js +0 -1
  33. package/dist/cjs/wcs-galactic.cjs.entry.js.map +1 -1
  34. package/dist/cjs/wcs-grid-column.cjs.entry.js.map +1 -1
  35. package/dist/cjs/wcs-grid-pagination.cjs.entry.js +1 -1
  36. package/dist/cjs/wcs-grid.cjs.entry.js +1 -1
  37. package/dist/cjs/wcs-grid.cjs.entry.js.map +1 -1
  38. package/dist/cjs/wcs-header.cjs.entry.js.map +1 -1
  39. package/dist/cjs/wcs-hint.cjs.entry.js +3 -3
  40. package/dist/cjs/wcs-hint.cjs.entry.js.map +1 -1
  41. package/dist/cjs/wcs-horizontal-stepper.cjs.entry.js +0 -1
  42. package/dist/cjs/wcs-horizontal-stepper.cjs.entry.js.map +1 -1
  43. package/dist/cjs/wcs-input.cjs.entry.js +14 -4
  44. package/dist/cjs/wcs-input.cjs.entry.js.map +1 -1
  45. package/dist/cjs/wcs-native-select.cjs.entry.js +102 -0
  46. package/dist/cjs/wcs-native-select.cjs.entry.js.map +1 -0
  47. package/dist/cjs/wcs-nav-item.cjs.entry.js +1 -1
  48. package/dist/cjs/wcs-radio-group.cjs.entry.js.map +1 -1
  49. package/dist/cjs/wcs-radio.cjs.entry.js +3 -3
  50. package/dist/cjs/wcs-radio.cjs.entry.js.map +1 -1
  51. package/dist/cjs/wcs-select_2.cjs.entry.js +229 -72
  52. package/dist/cjs/wcs-select_2.cjs.entry.js.map +1 -1
  53. package/dist/cjs/wcs-switch.cjs.entry.js +0 -1
  54. package/dist/cjs/wcs-switch.cjs.entry.js.map +1 -1
  55. package/dist/cjs/wcs-tab.cjs.entry.js.map +1 -1
  56. package/dist/cjs/wcs-tabs.cjs.entry.js.map +1 -1
  57. package/dist/cjs/wcs-textarea.cjs.entry.js +5 -3
  58. package/dist/cjs/wcs-textarea.cjs.entry.js.map +1 -1
  59. package/dist/cjs/wcs-tooltip.cjs.entry.js.map +1 -1
  60. package/dist/cjs/wcs.cjs.js +1 -1
  61. package/dist/collection/collection-manifest.json +2 -0
  62. package/dist/collection/components/action-bar/action-bar.js.map +1 -1
  63. package/dist/collection/components/app/app.js +0 -1
  64. package/dist/collection/components/app/app.js.map +1 -1
  65. package/dist/collection/components/button/button-interface.js +5 -1
  66. package/dist/collection/components/button/button-interface.js.map +1 -1
  67. package/dist/collection/components/button/button.css +28 -20
  68. package/dist/collection/components/button/button.js +54 -5
  69. package/dist/collection/components/button/button.js.map +1 -1
  70. package/dist/collection/components/checkbox/checkbox.js +0 -1
  71. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  72. package/dist/collection/components/com-nav/com-nav.js.map +1 -1
  73. package/dist/collection/components/com-nav-category/com-nav-category.js.map +1 -1
  74. package/dist/collection/components/com-nav-submenu/com-nav-submenu.js.map +1 -1
  75. package/dist/collection/components/counter/counter-interface.js +6 -0
  76. package/dist/collection/components/counter/counter-interface.js.map +1 -0
  77. package/dist/collection/components/counter/counter.css +93 -0
  78. package/dist/collection/components/counter/counter.js +293 -0
  79. package/dist/collection/components/counter/counter.js.map +1 -0
  80. package/dist/collection/components/dropdown/dropdown.js +1 -1
  81. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  82. package/dist/collection/components/editable-field/editable-field-interface.js +5 -1
  83. package/dist/collection/components/editable-field/editable-field-interface.js.map +1 -1
  84. package/dist/collection/components/editable-field/editable-field.css +21 -6
  85. package/dist/collection/components/editable-field/editable-field.js +33 -2
  86. package/dist/collection/components/editable-field/editable-field.js.map +1 -1
  87. package/dist/collection/components/field/field.js +4 -0
  88. package/dist/collection/components/field/field.js.map +1 -1
  89. package/dist/collection/components/footer/footer.js +5 -0
  90. package/dist/collection/components/footer/footer.js.map +1 -1
  91. package/dist/collection/components/form-field/form-field.js +1 -1
  92. package/dist/collection/components/form-field/form-field.js.map +1 -1
  93. package/dist/collection/components/galactic/galactic.js +0 -1
  94. package/dist/collection/components/galactic/galactic.js.map +1 -1
  95. package/dist/collection/components/galactic-menu/galactic-menu.js.map +1 -1
  96. package/dist/collection/components/grid/grid.js.map +1 -1
  97. package/dist/collection/components/grid-column/grid-column.js.map +1 -1
  98. package/dist/collection/components/grid-pagination/grid-pagination.js +0 -1
  99. package/dist/collection/components/grid-pagination/grid-pagination.js.map +1 -1
  100. package/dist/collection/components/header/header.js +5 -0
  101. package/dist/collection/components/header/header.js.map +1 -1
  102. package/dist/collection/components/hint/hint.js +2 -2
  103. package/dist/collection/components/hint/hint.js.map +1 -1
  104. package/dist/collection/components/horizontal-stepper/horizontal-stepper.js +0 -2
  105. package/dist/collection/components/horizontal-stepper/horizontal-stepper.js.map +1 -1
  106. package/dist/collection/components/input/input-interface.js +5 -1
  107. package/dist/collection/components/input/input-interface.js.map +1 -1
  108. package/dist/collection/components/input/input.css +21 -4
  109. package/dist/collection/components/input/input.js +30 -19
  110. package/dist/collection/components/input/input.js.map +1 -1
  111. package/dist/collection/components/native-select/native-select.component.js +153 -0
  112. package/dist/collection/components/native-select/native-select.component.js.map +1 -0
  113. package/dist/collection/components/native-select/native-select.css +78 -0
  114. package/dist/collection/components/radio/radio.component.js +1 -1
  115. package/dist/collection/components/radio/radio.component.js.map +1 -1
  116. package/dist/collection/components/radio/radio.css +15 -4
  117. package/dist/collection/components/radio-group/radio-group.js.map +1 -1
  118. package/dist/collection/components/select/select-interface.js +5 -1
  119. package/dist/collection/components/select/select-interface.js.map +1 -1
  120. package/dist/collection/components/select/select.css +41 -37
  121. package/dist/collection/components/select/select.js +233 -68
  122. package/dist/collection/components/select/select.js.map +1 -1
  123. package/dist/collection/components/select-option/select-option.css +3 -0
  124. package/dist/collection/components/select-option/select-option.js +25 -3
  125. package/dist/collection/components/select-option/select-option.js.map +1 -1
  126. package/dist/collection/components/switch/switch.js +0 -1
  127. package/dist/collection/components/switch/switch.js.map +1 -1
  128. package/dist/collection/components/tab/tab.js.map +1 -1
  129. package/dist/collection/components/tabs/tabs.js.map +1 -1
  130. package/dist/collection/components/textarea/textarea.css +3 -1
  131. package/dist/collection/components/textarea/textarea.js +23 -1
  132. package/dist/collection/components/textarea/textarea.js.map +1 -1
  133. package/dist/collection/components/tooltip/tooltip.js.map +1 -1
  134. package/dist/collection/index.js +3 -0
  135. package/dist/collection/index.js.map +1 -0
  136. package/dist/collection/shared-types.js +2 -0
  137. package/dist/collection/shared-types.js.map +1 -0
  138. package/dist/collection/utils/helpers.js +30 -0
  139. package/dist/collection/utils/helpers.js.map +1 -1
  140. package/dist/esm/{grid-pagination-62f9fbbc.js → grid-pagination-41354861.js} +2 -3
  141. package/dist/esm/grid-pagination-41354861.js.map +1 -0
  142. package/dist/esm/{helpers-e9b73aad.js → helpers-1f7170dd.js} +32 -2
  143. package/dist/esm/helpers-1f7170dd.js.map +1 -0
  144. package/dist/esm/loader.js +1 -1
  145. package/dist/esm/wcs-action-bar.entry.js.map +1 -1
  146. package/dist/esm/wcs-app.entry.js +1 -2
  147. package/dist/esm/wcs-app.entry.js.map +1 -1
  148. package/dist/esm/wcs-button.entry.js +17 -3
  149. package/dist/esm/wcs-button.entry.js.map +1 -1
  150. package/dist/esm/wcs-checkbox.entry.js +1 -2
  151. package/dist/esm/wcs-checkbox.entry.js.map +1 -1
  152. package/dist/esm/wcs-com-nav-category.entry.js +1 -1
  153. package/dist/esm/wcs-com-nav-category.entry.js.map +1 -1
  154. package/dist/esm/wcs-com-nav-submenu.entry.js +1 -1
  155. package/dist/esm/wcs-com-nav-submenu.entry.js.map +1 -1
  156. package/dist/esm/wcs-com-nav.entry.js.map +1 -1
  157. package/dist/esm/wcs-counter.entry.js +126 -0
  158. package/dist/esm/wcs-counter.entry.js.map +1 -0
  159. package/dist/esm/wcs-dropdown-item.entry.js +1 -1
  160. package/dist/esm/wcs-dropdown.entry.js +1 -1
  161. package/dist/esm/wcs-dropdown.entry.js.map +1 -1
  162. package/dist/esm/wcs-editable-field.entry.js +16 -3
  163. package/dist/esm/wcs-editable-field.entry.js.map +1 -1
  164. package/dist/esm/wcs-error_2.entry.js +1 -1
  165. package/dist/esm/wcs-error_2.entry.js.map +1 -1
  166. package/dist/esm/wcs-field.entry.js.map +1 -1
  167. package/dist/esm/wcs-footer.entry.js.map +1 -1
  168. package/dist/esm/wcs-galactic-menu.entry.js +1 -1
  169. package/dist/esm/wcs-galactic-menu.entry.js.map +1 -1
  170. package/dist/esm/wcs-galactic.entry.js +1 -2
  171. package/dist/esm/wcs-galactic.entry.js.map +1 -1
  172. package/dist/esm/wcs-grid-column.entry.js.map +1 -1
  173. package/dist/esm/wcs-grid-pagination.entry.js +1 -1
  174. package/dist/esm/wcs-grid.entry.js +1 -1
  175. package/dist/esm/wcs-grid.entry.js.map +1 -1
  176. package/dist/esm/wcs-header.entry.js.map +1 -1
  177. package/dist/esm/wcs-hint.entry.js +3 -3
  178. package/dist/esm/wcs-hint.entry.js.map +1 -1
  179. package/dist/esm/wcs-horizontal-stepper.entry.js +0 -1
  180. package/dist/esm/wcs-horizontal-stepper.entry.js.map +1 -1
  181. package/dist/esm/wcs-input.entry.js +14 -4
  182. package/dist/esm/wcs-input.entry.js.map +1 -1
  183. package/dist/esm/wcs-native-select.entry.js +98 -0
  184. package/dist/esm/wcs-native-select.entry.js.map +1 -0
  185. package/dist/esm/wcs-nav-item.entry.js +1 -1
  186. package/dist/esm/wcs-radio-group.entry.js.map +1 -1
  187. package/dist/esm/wcs-radio.entry.js +3 -3
  188. package/dist/esm/wcs-radio.entry.js.map +1 -1
  189. package/dist/esm/wcs-select_2.entry.js +229 -72
  190. package/dist/esm/wcs-select_2.entry.js.map +1 -1
  191. package/dist/esm/wcs-switch.entry.js +1 -2
  192. package/dist/esm/wcs-switch.entry.js.map +1 -1
  193. package/dist/esm/wcs-tab.entry.js.map +1 -1
  194. package/dist/esm/wcs-tabs.entry.js.map +1 -1
  195. package/dist/esm/wcs-textarea.entry.js +5 -3
  196. package/dist/esm/wcs-textarea.entry.js.map +1 -1
  197. package/dist/esm/wcs-tooltip.entry.js.map +1 -1
  198. package/dist/esm/wcs.js +1 -1
  199. package/dist/types/components/action-bar/action-bar.d.ts +2 -2
  200. package/dist/types/components/app/app.d.ts +0 -1
  201. package/dist/types/components/button/button-interface.d.ts +5 -1
  202. package/dist/types/components/button/button.d.ts +16 -7
  203. package/dist/types/components/checkbox/checkbox.d.ts +0 -1
  204. package/dist/types/components/com-nav/com-nav.d.ts +4 -4
  205. package/dist/types/components/com-nav-category/com-nav-category.d.ts +2 -2
  206. package/dist/types/components/com-nav-submenu/com-nav-submenu.d.ts +2 -2
  207. package/dist/types/components/counter/counter-interface.d.ts +7 -0
  208. package/dist/types/components/counter/counter.d.ts +67 -0
  209. package/dist/types/components/dropdown/dropdown.d.ts +2 -2
  210. package/dist/types/components/editable-field/editable-field-interface.d.ts +4 -0
  211. package/dist/types/components/editable-field/editable-field.d.ts +10 -13
  212. package/dist/types/components/field/field.d.ts +4 -0
  213. package/dist/types/components/footer/footer.d.ts +5 -0
  214. package/dist/types/components/form-field/form-field.d.ts +4 -4
  215. package/dist/types/components/galactic/galactic.d.ts +0 -1
  216. package/dist/types/components/galactic-menu/galactic-menu.d.ts +2 -2
  217. package/dist/types/components/grid/grid.d.ts +4 -4
  218. package/dist/types/components/grid-column/grid-column.d.ts +1 -1
  219. package/dist/types/components/grid-pagination/grid-pagination.d.ts +0 -1
  220. package/dist/types/components/header/header.d.ts +5 -0
  221. package/dist/types/components/hint/hint.d.ts +4 -1
  222. package/dist/types/components/horizontal-stepper/horizontal-stepper.d.ts +2 -4
  223. package/dist/types/components/input/input-interface.d.ts +4 -0
  224. package/dist/types/components/input/input.d.ts +8 -8
  225. package/dist/types/components/native-select/native-select.component.d.ts +56 -0
  226. package/dist/types/components/radio/radio.component.d.ts +1 -1
  227. package/dist/types/components/radio-group/radio-group.d.ts +1 -1
  228. package/dist/types/components/select/select-interface.d.ts +4 -0
  229. package/dist/types/components/select/select.d.ts +32 -20
  230. package/dist/types/components/select-option/select-option.d.ts +9 -3
  231. package/dist/types/components/switch/switch.d.ts +0 -1
  232. package/dist/types/components/tabs/tabs.d.ts +3 -3
  233. package/dist/types/components/textarea/textarea.d.ts +10 -2
  234. package/dist/types/components/tooltip/tooltip.d.ts +1 -2
  235. package/dist/types/components.d.ts +242 -22
  236. package/dist/types/index.d.ts +2 -0
  237. package/dist/types/shared-types.d.ts +10 -0
  238. package/dist/types/utils/helpers.d.ts +10 -0
  239. package/dist/wcs/p-029eb12a.entry.js +2 -0
  240. package/dist/wcs/p-029eb12a.entry.js.map +1 -0
  241. package/dist/wcs/p-069555a1.entry.js.map +1 -1
  242. package/dist/wcs/p-07b8cd36.entry.js.map +1 -1
  243. package/dist/wcs/p-12ac2547.js +2 -0
  244. package/dist/wcs/p-12ac2547.js.map +1 -0
  245. package/dist/wcs/p-1e43122f.entry.js.map +1 -1
  246. package/dist/wcs/p-26c4c983.entry.js +2 -0
  247. package/dist/wcs/p-26c4c983.entry.js.map +1 -0
  248. package/dist/wcs/p-26e7de5c.entry.js +16 -0
  249. package/dist/wcs/p-26e7de5c.entry.js.map +1 -0
  250. package/dist/wcs/p-31a8d23f.entry.js +2 -0
  251. package/dist/wcs/{p-d11c66d4.entry.js.map → p-31a8d23f.entry.js.map} +1 -1
  252. package/dist/wcs/p-463667c9.entry.js +2 -0
  253. package/dist/wcs/p-475ac7c5.js +2 -0
  254. package/dist/wcs/p-475ac7c5.js.map +1 -0
  255. package/dist/wcs/p-47d8ece5.entry.js.map +1 -1
  256. package/dist/wcs/p-4a9f8e94.entry.js.map +1 -1
  257. package/dist/wcs/p-4b2d8a6d.entry.js +2 -0
  258. package/dist/wcs/p-4b2d8a6d.entry.js.map +1 -0
  259. package/dist/wcs/{p-c7b42bae.entry.js → p-4b4d53e2.entry.js} +2 -2
  260. package/dist/wcs/p-50dce764.entry.js.map +1 -1
  261. package/dist/wcs/{p-8762cf93.entry.js → p-554ca93c.entry.js} +2 -2
  262. package/dist/wcs/p-627bbb6a.entry.js.map +1 -1
  263. package/dist/wcs/p-64dd7356.entry.js.map +1 -1
  264. package/dist/wcs/p-6acbf38a.entry.js +2 -0
  265. package/dist/wcs/{p-7d7472e2.entry.js.map → p-6acbf38a.entry.js.map} +1 -1
  266. package/dist/wcs/{p-6f921d57.entry.js → p-732b2faa.entry.js} +2 -2
  267. package/dist/wcs/p-732b2faa.entry.js.map +1 -0
  268. package/dist/wcs/{p-587fea23.entry.js → p-966a241e.entry.js} +2 -2
  269. package/dist/wcs/p-966a241e.entry.js.map +1 -0
  270. package/dist/wcs/p-9ecdeaf9.entry.js +2 -0
  271. package/dist/wcs/p-9ecdeaf9.entry.js.map +1 -0
  272. package/dist/wcs/p-a24fa4f4.entry.js +2 -0
  273. package/dist/wcs/p-a24fa4f4.entry.js.map +1 -0
  274. package/dist/wcs/p-a5cd4c07.entry.js +2 -0
  275. package/dist/wcs/{p-8bb19e58.entry.js.map → p-a5cd4c07.entry.js.map} +1 -1
  276. package/dist/wcs/p-b229a91c.entry.js +2 -0
  277. package/dist/wcs/p-b229a91c.entry.js.map +1 -0
  278. package/dist/wcs/{p-d998e112.entry.js → p-b6cd196d.entry.js} +2 -2
  279. package/dist/wcs/{p-d998e112.entry.js.map → p-b6cd196d.entry.js.map} +1 -1
  280. package/dist/wcs/p-b856f2f6.entry.js +2 -0
  281. package/dist/wcs/p-b856f2f6.entry.js.map +1 -0
  282. package/dist/wcs/{p-274232e6.entry.js → p-bcb8b731.entry.js} +2 -2
  283. package/dist/wcs/p-bcb8b731.entry.js.map +1 -0
  284. package/dist/wcs/p-d2da0c9f.entry.js +2 -0
  285. package/dist/wcs/p-d2da0c9f.entry.js.map +1 -0
  286. package/dist/wcs/p-d3f1cafe.entry.js.map +1 -1
  287. package/dist/wcs/p-d6b3f742.entry.js +2 -0
  288. package/dist/wcs/p-d6b3f742.entry.js.map +1 -0
  289. package/dist/wcs/p-ee453b6e.entry.js +2 -0
  290. package/dist/wcs/p-ee453b6e.entry.js.map +1 -0
  291. package/dist/wcs/p-f386bb8b.entry.js.map +1 -1
  292. package/dist/wcs/{p-e4dcd310.entry.js → p-f82e7a61.entry.js} +2 -2
  293. package/dist/wcs/{p-e4dcd310.entry.js.map → p-f82e7a61.entry.js.map} +1 -1
  294. package/dist/wcs/p-fc3f5b53.entry.js.map +1 -1
  295. package/dist/wcs/wcs.css +1 -1
  296. package/dist/wcs/wcs.esm.js +1 -1
  297. package/dist/wcs/wcs.esm.js.map +1 -1
  298. package/package.json +17 -12
  299. package/dist/cjs/grid-pagination-ff65e0ff.js.map +0 -1
  300. package/dist/cjs/helpers-11518d4f.js.map +0 -1
  301. package/dist/esm/grid-pagination-62f9fbbc.js.map +0 -1
  302. package/dist/esm/helpers-e9b73aad.js.map +0 -1
  303. package/dist/wcs/p-111ae1af.entry.js +0 -2
  304. package/dist/wcs/p-111ae1af.entry.js.map +0 -1
  305. package/dist/wcs/p-14e04d5e.entry.js +0 -2
  306. package/dist/wcs/p-14e04d5e.entry.js.map +0 -1
  307. package/dist/wcs/p-274232e6.entry.js.map +0 -1
  308. package/dist/wcs/p-2920b759.entry.js +0 -16
  309. package/dist/wcs/p-2920b759.entry.js.map +0 -1
  310. package/dist/wcs/p-3e370f48.entry.js +0 -2
  311. package/dist/wcs/p-49e66081.entry.js +0 -2
  312. package/dist/wcs/p-49e66081.entry.js.map +0 -1
  313. package/dist/wcs/p-504fb24e.entry.js +0 -2
  314. package/dist/wcs/p-504fb24e.entry.js.map +0 -1
  315. package/dist/wcs/p-5140269d.entry.js +0 -2
  316. package/dist/wcs/p-5140269d.entry.js.map +0 -1
  317. package/dist/wcs/p-587fea23.entry.js.map +0 -1
  318. package/dist/wcs/p-62db1219.js +0 -2
  319. package/dist/wcs/p-62db1219.js.map +0 -1
  320. package/dist/wcs/p-6f921d57.entry.js.map +0 -1
  321. package/dist/wcs/p-7d7472e2.entry.js +0 -2
  322. package/dist/wcs/p-89b3550b.entry.js +0 -2
  323. package/dist/wcs/p-89b3550b.entry.js.map +0 -1
  324. package/dist/wcs/p-8bb19e58.entry.js +0 -2
  325. package/dist/wcs/p-9157466f.entry.js +0 -2
  326. package/dist/wcs/p-9157466f.entry.js.map +0 -1
  327. package/dist/wcs/p-d11c66d4.entry.js +0 -2
  328. package/dist/wcs/p-d218509e.entry.js +0 -2
  329. package/dist/wcs/p-d218509e.entry.js.map +0 -1
  330. package/dist/wcs/p-dc57a5f7.js +0 -2
  331. package/dist/wcs/p-dc57a5f7.js.map +0 -1
  332. /package/dist/wcs/{p-3e370f48.entry.js.map → p-463667c9.entry.js.map} +0 -0
  333. /package/dist/wcs/{p-c7b42bae.entry.js.map → p-4b4d53e2.entry.js.map} +0 -0
  334. /package/dist/wcs/{p-8762cf93.entry.js.map → p-554ca93c.entry.js.map} +0 -0
@@ -20,7 +20,7 @@ const patchBrowser = () => {
20
20
  };
21
21
 
22
22
  patchBrowser().then(options => {
23
- return index.bootstrapLazy([["wcs-editable-field.cjs",[[1,"wcs-editable-field",{"type":[1],"label":[1],"readonly":[4],"value":[1032],"validateFn":[16],"formatFn":[16],"errorMsg":[1,"error-msg"],"currentState":[32],"isError":[32]},[[8,"click","onWindowClickEvent"]]]]],["wcs-horizontal-stepper.cjs",[[1,"wcs-horizontal-stepper",{"currentStep":[1026,"current-step"],"steps":[16],"mode":[1],"checkOnComplete":[4,"check-on-complete"],"buttonMode":[32],"internalCurrentStep":[32],"previous":[64],"next":[64]}]]],["wcs-grid.cjs",[[1,"wcs-grid",{"serverMode":[4,"server-mode"],"data":[16],"loading":[4],"selectionConfig":[1,"selection-config"],"selectedItems":[8,"selected-items"],"wcsGridPaginationId":[1,"wcs-grid-pagination-id"],"rowIdPath":[1,"row-id-path"],"columns":[32],"paginationEl":[32],"rows":[32]},[[0,"wcsHiddenChange","onHiddenColumnChange"],[0,"wcsSortChange","sortChangeEventHandler"],[0,"wcsGridPaginationChange","paginationChangeEventHandler"],[8,"wcsGridPaginationChange","paginationChangeEventHandlerOutside"]]]]],["wcs-grid-pagination.cjs",[[1,"wcs-grid-pagination",{"availablePageSizes":[16],"currentPage":[2,"current-page"],"pageSize":[2,"page-size"],"itemsCount":[2,"items-count"],"pageCount":[2,"page-count"]}]]],["wcs-modal.cjs",[[4,"wcs-modal",{"withoutBackdrop":[516,"without-backdrop"],"show":[516],"showCloseButton":[516,"show-close-button"],"size":[1],"hideActions":[516,"hide-actions"]},[[4,"keydown","onKeyDown"]]]]],["wcs-dropdown.cjs",[[1,"wcs-dropdown",{"noArrow":[4,"no-arrow"],"mode":[1],"shape":[1],"disabled":[4],"placement":[1],"expanded":[32]},[[8,"click","onWindowClickEvent"],[0,"wcsDropdownItemClick","dropdownItemClick"],[0,"keydown","onKeyDown"]]]]],["wcs-galactic-menu.cjs",[[1,"wcs-galactic-menu",{"text":[1],"showPopoverMenu":[32]},[[8,"click","onWindowClickEvent"]]]]],["wcs-input.cjs",[[17,"wcs-input",{"fireFocusEvents":[4,"fire-focus-events"],"accept":[1],"autocapitalize":[1],"autocomplete":[1],"autocorrect":[1],"autofocus":[4],"clearInput":[4,"clear-input"],"clearOnEdit":[4,"clear-on-edit"],"debounce":[2],"prefixLabel":[1,"prefix-label"],"suffixLabel":[1,"suffix-label"],"disabled":[4],"enterkeyhint":[1],"icon":[1],"inputmode":[1],"max":[1],"maxlength":[2],"min":[1],"minlength":[2],"multiple":[4],"name":[1],"pattern":[1],"placeholder":[1],"readonly":[4],"required":[4],"spellcheck":[4],"state":[513],"step":[1],"size":[2],"type":[1],"value":[1032],"hasFocus":[32],"passwordReveal":[32],"setFocus":[64],"setBlur":[64],"getInputElement":[64]}]]],["wcs-textarea.cjs",[[1,"wcs-textarea",{"fireFocusEvents":[4,"fire-focus-events"],"autocapitalize":[1],"autofocus":[4],"clearOnEdit":[1028,"clear-on-edit"],"debounce":[2],"disabled":[4],"icon":[1],"inputmode":[1],"enterkeyhint":[1],"maxlength":[2],"minlength":[2],"name":[1],"placeholder":[1],"readonly":[4],"required":[4],"spellcheck":[4],"state":[513],"cols":[2],"rows":[2],"wrap":[1],"autoGrow":[4,"auto-grow"],"value":[1025],"hasFocus":[32],"fitContent":[64],"setFocus":[64],"setBlur":[64],"getInputElement":[64]}]]],["wcs-accordion.cjs",[[1,"wcs-accordion",{"hideActionText":[516,"hide-action-text"],"highlight":[516],"groupContentWithHeader":[516,"group-content-with-header"]},[[0,"wcsOpenChange","wcsOpenChangeHandler"]]]]],["wcs-accordion-content.cjs",[[1,"wcs-accordion-content"]]],["wcs-accordion-header.cjs",[[1,"wcs-accordion-header"]]],["wcs-accordion-panel.cjs",[[1,"wcs-accordion-panel",{"open":[1540],"hideActionText":[516,"hide-action-text"],"highlight":[516],"groupContentWithHeader":[516,"group-content-with-header"],"close":[64]}]]],["wcs-action-bar.cjs",[[1,"wcs-action-bar",{"gutter":[4],"hasTabs":[32]}]]],["wcs-app.cjs",[[1,"wcs-app"]]],["wcs-badge.cjs",[[1,"wcs-badge",{"shape":[1],"color":[1]}]]],["wcs-card.cjs",[[1,"wcs-card",{"mode":[1537]}]]],["wcs-card-body.cjs",[[1,"wcs-card-body"]]],["wcs-com-nav.cjs",[[1,"wcs-com-nav",{"appName":[1,"app-name"],"mobileMenuOpen":[32],"currentActiveSizing":[32]},[[0,"wcsClickOnFinalAction","onClickOnFinalAction"],[0,"wcsCategoryItemClicked","onClickOnFinalActionCat"]]]]],["wcs-com-nav-category.cjs",[[1,"wcs-com-nav-category",{"label":[1],"categoryOpen":[32],"close":[64],"open":[64]},[[8,"click","onWindowClickEvent"],[8,"wcsCategoryOpened","onSubmenuOpened"]]]]],["wcs-com-nav-submenu.cjs",[[1,"wcs-com-nav-submenu",{"label":[1],"panelTitle":[1,"panel-title"],"panelDescription":[1,"panel-description"],"menuOpen":[32],"close":[64],"open":[64]},[[8,"click","onWindowClickEvent"],[8,"wcsSubmenuOpened","onSubmenuOpened"],[8,"keydown","onEscapeKeyDown"],[0,"wcsCategoryItemClicked","wcsCategoryItemClickedHandler"]]]]],["wcs-divider.cjs",[[1,"wcs-divider"]]],["wcs-dropdown-divider.cjs",[[1,"wcs-dropdown-divider"]]],["wcs-dropdown-header.cjs",[[1,"wcs-dropdown-header"]]],["wcs-dropdown-item.cjs",[[4,"wcs-dropdown-item",null,[[1,"mousedown","onMouseDown"],[0,"keydown","onKeyDown"]]]]],["wcs-field.cjs",[[1,"wcs-field"]]],["wcs-field-content.cjs",[[1,"wcs-field-content"]]],["wcs-field-label.cjs",[[1,"wcs-field-label"]]],["wcs-footer.cjs",[[1,"wcs-footer"]]],["wcs-galactic.cjs",[[1,"wcs-galactic",{"text":[1],"show":[32]}]]],["wcs-grid-column.cjs",[[1,"wcs-grid-column",{"path":[1],"name":[1],"sort":[4],"sortFn":[16],"formatter":[16],"sortOrder":[1025,"sort-order"],"width":[1],"customCells":[4,"custom-cells"],"hidden":[4]}]]],["wcs-grid-custom-cell.cjs",[[1,"wcs-grid-custom-cell",{"columnId":[1,"column-id"],"rowId":[8,"row-id"]}]]],["wcs-header.cjs",[[1,"wcs-header"]]],["wcs-hint.cjs",[[1,"wcs-hint",{"small":[1540]}]]],["wcs-icon.cjs",[[0,"wcs-icon",{"icon":[1],"size":[1]}]]],["wcs-label.cjs",[[1,"wcs-label",{"required":[516]}]]],["wcs-list-item.cjs",[[1,"wcs-list-item",{"activated":[1028]}]]],["wcs-list-item-properties.cjs",[[1,"wcs-list-item-properties"]]],["wcs-list-item-property.cjs",[[1,"wcs-list-item-property"]]],["wcs-nav.cjs",[[1,"wcs-nav"]]],["wcs-nav-item.cjs",[[4,"wcs-nav-item",{"text":[513],"href":[513]},[[0,"keydown","onKeyDown"]]]]],["wcs-progress-radial.cjs",[[1,"wcs-progress-radial",{"size":[2],"showLabel":[4,"show-label"],"value":[2]}]]],["wcs-radio-group.cjs",[[1,"wcs-radio-group",{"value":[8],"name":[520],"mode":[513]},[[0,"wcsRadioClick","selectedOptionChanged"]]]]],["wcs-switch.cjs",[[1,"wcs-switch",{"name":[1],"checked":[516],"labelAlignment":[513,"label-alignment"],"disabled":[4]}]]],["wcs-tab.cjs",[[1,"wcs-tab",{"header":[513],"itemKey":[8,"item-key"]}]]],["wcs-tabs.cjs",[[1,"wcs-tabs",{"align":[513],"selectedIndex":[2,"selected-index"],"selectedKey":[8,"selected-key"],"headersOnly":[4,"headers-only"],"gutter":[4],"headers":[32],"currentActiveTabIndex":[32]},[[0,"tabLoaded","onTabLoaded"]]]]],["wcs-tooltip.cjs",[[1,"wcs-tooltip",{"for":[1],"position":[513],"interactive":[4],"maxWidth":[8,"max-width"],"delay":[2],"duration":[2],"trigger":[1],"theme":[1],"content":[1],"appendTo":[1,"append-to"],"hide":[64],"show":[64],"disable":[64],"enable":[64]}]]],["wcs-progress-bar.cjs",[[1,"wcs-progress-bar",{"small":[4],"showLabel":[4,"show-label"],"value":[2]}]]],["wcs-radio.cjs",[[1,"wcs-radio",{"mode":[513],"value":[1544],"label":[1537],"checked":[1540],"disabled":[1028]},[[0,"keydown","onKeyDown"]]]]],["wcs-checkbox.cjs",[[1,"wcs-checkbox",{"name":[1],"indeterminate":[1540],"checked":[1540],"labelAlignment":[1537,"label-alignment"],"disabled":[4]}]]],["wcs-select_2.cjs",[[4,"wcs-select-option",{"disabled":[1540],"selected":[1540],"value":[8],"chipColor":[1,"chip-color"],"chipBackgroundColor":[1,"chip-background-color"],"multiple":[1540]},[[1,"mousedown","onMouseDown"]]],[1,"wcs-select",{"value":[1032],"placeholder":[1537],"disabled":[1028],"multiple":[516],"chips":[516],"name":[1],"compareWith":[16],"expanded":[32],"hasLoaded":[32],"displayText":[32],"focused":[32],"overlayDirection":[32],"open":[64],"close":[64]},[[1,"mousedown","onMouseDown"],[8,"click","onWindowClickEvent"],[0,"wcsSelectOptionClick","selectedOptionChanged"]]]]],["wcs-error_2.cjs",[[1,"wcs-error"],[1,"wcs-form-field",{"isError":[1540,"is-error"],"hasPrefix":[32],"hasSuffix":[32],"spiedElement":[32]}]]],["wcs-button.cjs",[[17,"wcs-button",{"type":[1025],"href":[1],"disabled":[516],"ripple":[4],"shape":[513],"mode":[513],"loading":[1028]},[[0,"click","onClick"]]]]],["wcs-mat-icon.cjs",[[1,"wcs-mat-icon",{"icon":[1],"size":[1],"family":[1]}]]],["wcs-spinner.cjs",[[1,"wcs-spinner",{"mode":[513]}]]]], options);
23
+ return index.bootstrapLazy([["wcs-editable-field.cjs",[[1,"wcs-editable-field",{"type":[1],"label":[1],"readonly":[4],"value":[1032],"validateFn":[16],"formatFn":[16],"errorMsg":[1,"error-msg"],"size":[513],"currentState":[32],"isError":[32]},[[8,"click","onWindowClickEvent"]]]]],["wcs-horizontal-stepper.cjs",[[1,"wcs-horizontal-stepper",{"currentStep":[1026,"current-step"],"steps":[16],"mode":[1],"checkOnComplete":[4,"check-on-complete"],"internalCurrentStep":[32],"previous":[64],"next":[64]}]]],["wcs-counter.cjs",[[1,"wcs-counter",{"size":[513],"label":[1],"min":[1026],"max":[1026],"step":[1026],"value":[1026],"currentValue":[32],"displayedValue":[32]}]]],["wcs-grid.cjs",[[1,"wcs-grid",{"serverMode":[4,"server-mode"],"data":[16],"loading":[4],"selectionConfig":[1,"selection-config"],"selectedItems":[8,"selected-items"],"wcsGridPaginationId":[1,"wcs-grid-pagination-id"],"rowIdPath":[1,"row-id-path"],"columns":[32],"paginationEl":[32],"rows":[32]},[[0,"wcsHiddenChange","onHiddenColumnChange"],[0,"wcsSortChange","sortChangeEventHandler"],[0,"wcsGridPaginationChange","paginationChangeEventHandler"],[8,"wcsGridPaginationChange","paginationChangeEventHandlerOutside"]]]]],["wcs-grid-pagination.cjs",[[1,"wcs-grid-pagination",{"availablePageSizes":[16],"currentPage":[2,"current-page"],"pageSize":[2,"page-size"],"itemsCount":[2,"items-count"],"pageCount":[2,"page-count"]}]]],["wcs-modal.cjs",[[4,"wcs-modal",{"withoutBackdrop":[516,"without-backdrop"],"show":[516],"showCloseButton":[516,"show-close-button"],"size":[1],"hideActions":[516,"hide-actions"]},[[4,"keydown","onKeyDown"]]]]],["wcs-dropdown.cjs",[[1,"wcs-dropdown",{"noArrow":[4,"no-arrow"],"mode":[1],"shape":[1],"disabled":[4],"placement":[1],"expanded":[32]},[[8,"click","onWindowClickEvent"],[0,"wcsDropdownItemClick","dropdownItemClick"],[0,"keydown","onKeyDown"]]]]],["wcs-galactic-menu.cjs",[[1,"wcs-galactic-menu",{"text":[1],"showPopoverMenu":[32]},[[8,"click","onWindowClickEvent"]]]]],["wcs-input.cjs",[[17,"wcs-input",{"fireFocusEvents":[4,"fire-focus-events"],"accept":[1],"autocapitalize":[1],"autocomplete":[1],"autocorrect":[1],"autofocus":[4],"clearInput":[4,"clear-input"],"clearOnEdit":[4,"clear-on-edit"],"debounce":[2],"prefixLabel":[1,"prefix-label"],"suffixLabel":[1,"suffix-label"],"disabled":[4],"enterkeyhint":[1],"size":[513],"icon":[1],"inputmode":[1],"max":[1],"maxlength":[2],"min":[1],"minlength":[2],"multiple":[4],"name":[1],"pattern":[1],"placeholder":[1],"readonly":[4],"required":[4],"spellcheck":[4],"state":[513],"step":[1],"type":[1],"value":[1032],"hasFocus":[32],"passwordReveal":[32],"setFocus":[64],"setBlur":[64],"getInputElement":[64]}]]],["wcs-textarea.cjs",[[1,"wcs-textarea",{"fireFocusEvents":[4,"fire-focus-events"],"autocapitalize":[1],"autofocus":[4],"clearOnEdit":[1028,"clear-on-edit"],"debounce":[2],"disabled":[4],"icon":[1],"inputmode":[1],"enterkeyhint":[1],"maxlength":[2],"minlength":[2],"name":[1],"placeholder":[1],"readonly":[4],"required":[4],"spellcheck":[4],"state":[513],"cols":[2],"rows":[2],"wrap":[1],"autoGrow":[4,"auto-grow"],"value":[1025],"resize":[513],"hasFocus":[32],"fitContent":[64],"setFocus":[64],"setBlur":[64],"getInputElement":[64]}]]],["wcs-accordion.cjs",[[1,"wcs-accordion",{"hideActionText":[516,"hide-action-text"],"highlight":[516],"groupContentWithHeader":[516,"group-content-with-header"]},[[0,"wcsOpenChange","wcsOpenChangeHandler"]]]]],["wcs-accordion-content.cjs",[[1,"wcs-accordion-content"]]],["wcs-accordion-header.cjs",[[1,"wcs-accordion-header"]]],["wcs-accordion-panel.cjs",[[1,"wcs-accordion-panel",{"open":[1540],"hideActionText":[516,"hide-action-text"],"highlight":[516],"groupContentWithHeader":[516,"group-content-with-header"],"close":[64]}]]],["wcs-action-bar.cjs",[[1,"wcs-action-bar",{"gutter":[4],"hasTabs":[32]}]]],["wcs-app.cjs",[[1,"wcs-app"]]],["wcs-badge.cjs",[[1,"wcs-badge",{"shape":[1],"color":[1]}]]],["wcs-card.cjs",[[1,"wcs-card",{"mode":[1537]}]]],["wcs-card-body.cjs",[[1,"wcs-card-body"]]],["wcs-com-nav.cjs",[[1,"wcs-com-nav",{"appName":[1,"app-name"],"mobileMenuOpen":[32],"currentActiveSizing":[32]},[[0,"wcsClickOnFinalAction","onClickOnFinalAction"],[0,"wcsCategoryItemClicked","onClickOnFinalActionCat"]]]]],["wcs-com-nav-category.cjs",[[1,"wcs-com-nav-category",{"label":[1],"categoryOpen":[32],"close":[64],"open":[64]},[[8,"click","onWindowClickEvent"],[8,"wcsCategoryOpened","onSubmenuOpened"]]]]],["wcs-com-nav-submenu.cjs",[[1,"wcs-com-nav-submenu",{"label":[1],"panelTitle":[1,"panel-title"],"panelDescription":[1,"panel-description"],"menuOpen":[32],"close":[64],"open":[64]},[[8,"click","onWindowClickEvent"],[8,"wcsSubmenuOpened","onSubmenuOpened"],[8,"keydown","onEscapeKeyDown"],[0,"wcsCategoryItemClicked","wcsCategoryItemClickedHandler"]]]]],["wcs-divider.cjs",[[1,"wcs-divider"]]],["wcs-dropdown-divider.cjs",[[1,"wcs-dropdown-divider"]]],["wcs-dropdown-header.cjs",[[1,"wcs-dropdown-header"]]],["wcs-dropdown-item.cjs",[[4,"wcs-dropdown-item",null,[[1,"mousedown","onMouseDown"],[0,"keydown","onKeyDown"]]]]],["wcs-field.cjs",[[1,"wcs-field"]]],["wcs-field-content.cjs",[[1,"wcs-field-content"]]],["wcs-field-label.cjs",[[1,"wcs-field-label"]]],["wcs-footer.cjs",[[1,"wcs-footer"]]],["wcs-galactic.cjs",[[1,"wcs-galactic",{"text":[1],"show":[32]}]]],["wcs-grid-column.cjs",[[1,"wcs-grid-column",{"path":[1],"name":[1],"sort":[4],"sortFn":[16],"formatter":[16],"sortOrder":[1025,"sort-order"],"width":[1],"customCells":[4,"custom-cells"],"hidden":[4]}]]],["wcs-grid-custom-cell.cjs",[[1,"wcs-grid-custom-cell",{"columnId":[1,"column-id"],"rowId":[8,"row-id"]}]]],["wcs-header.cjs",[[1,"wcs-header"]]],["wcs-hint.cjs",[[1,"wcs-hint",{"small":[1540]}]]],["wcs-icon.cjs",[[0,"wcs-icon",{"icon":[1],"size":[1]}]]],["wcs-label.cjs",[[1,"wcs-label",{"required":[516]}]]],["wcs-list-item.cjs",[[1,"wcs-list-item",{"activated":[1028]}]]],["wcs-list-item-properties.cjs",[[1,"wcs-list-item-properties"]]],["wcs-list-item-property.cjs",[[1,"wcs-list-item-property"]]],["wcs-native-select.cjs",[[1,"wcs-native-select",{"size":[513],"expanded":[32],"disabled":[32]}]]],["wcs-nav.cjs",[[1,"wcs-nav"]]],["wcs-nav-item.cjs",[[4,"wcs-nav-item",{"text":[513],"href":[513]},[[0,"keydown","onKeyDown"]]]]],["wcs-progress-radial.cjs",[[1,"wcs-progress-radial",{"size":[2],"showLabel":[4,"show-label"],"value":[2]}]]],["wcs-radio-group.cjs",[[1,"wcs-radio-group",{"value":[8],"name":[520],"mode":[513]},[[0,"wcsRadioClick","selectedOptionChanged"]]]]],["wcs-switch.cjs",[[1,"wcs-switch",{"name":[1],"checked":[516],"labelAlignment":[513,"label-alignment"],"disabled":[4]}]]],["wcs-tab.cjs",[[1,"wcs-tab",{"header":[513],"itemKey":[8,"item-key"]}]]],["wcs-tabs.cjs",[[1,"wcs-tabs",{"align":[513],"selectedIndex":[2,"selected-index"],"selectedKey":[8,"selected-key"],"headersOnly":[4,"headers-only"],"gutter":[4],"headers":[32],"currentActiveTabIndex":[32]},[[0,"tabLoaded","onTabLoaded"]]]]],["wcs-tooltip.cjs",[[1,"wcs-tooltip",{"for":[1],"position":[513],"interactive":[4],"maxWidth":[8,"max-width"],"delay":[2],"duration":[2],"trigger":[1],"theme":[1],"content":[1],"appendTo":[1,"append-to"],"hide":[64],"show":[64],"disable":[64],"enable":[64]}]]],["wcs-progress-bar.cjs",[[1,"wcs-progress-bar",{"small":[4],"showLabel":[4,"show-label"],"value":[2]}]]],["wcs-radio.cjs",[[1,"wcs-radio",{"mode":[513],"value":[1544],"label":[1537],"checked":[1540],"disabled":[1028]},[[0,"keydown","onKeyDown"]]]]],["wcs-select_2.cjs",[[4,"wcs-select-option",{"disabled":[1540],"selected":[1540],"value":[8],"chipColor":[1,"chip-color"],"chipBackgroundColor":[1,"chip-background-color"],"multiple":[1540]},[[1,"mousedown","onMouseDown"],[0,"keydown","handleKeydown"]]],[1,"wcs-select",{"size":[513],"value":[1032],"placeholder":[1537],"disabled":[1028],"multiple":[516],"chips":[516],"name":[1],"compareWith":[16],"expanded":[32],"hasLoaded":[32],"displayText":[32],"focused":[32],"overlayDirection":[32],"open":[64],"close":[64]},[[1,"mousedown","onMouseDown"],[8,"click","onWindowClickEvent"],[0,"keydown","onKeyDown"],[0,"wcsSelectOptionClick","selectedOptionChanged"]]]]],["wcs-error_2.cjs",[[1,"wcs-error"],[1,"wcs-form-field",{"isError":[1540,"is-error"],"hasPrefix":[32],"hasSuffix":[32],"spiedElement":[32]}]]],["wcs-checkbox.cjs",[[1,"wcs-checkbox",{"name":[1],"indeterminate":[1540],"checked":[1540],"labelAlignment":[1537,"label-alignment"],"disabled":[4]}]]],["wcs-button.cjs",[[17,"wcs-button",{"type":[1025],"href":[1],"target":[1],"disabled":[516],"ripple":[4],"size":[513],"shape":[513],"mode":[513],"loading":[1028]},[[0,"click","onClick"]]]]],["wcs-mat-icon.cjs",[[1,"wcs-mat-icon",{"icon":[1],"size":[1],"family":[1]}]]],["wcs-spinner.cjs",[[1,"wcs-spinner",{"mode":[513]}]]]], options);
24
24
  });
25
25
 
26
26
  exports.setNonce = index.setNonce;
@@ -1,5 +1,6 @@
1
1
  {
2
2
  "entries": [
3
+ "./components/native-select/native-select.component.js",
3
4
  "./components/accordion/accordion.js",
4
5
  "./components/accordion-content/accordion-content.js",
5
6
  "./components/accordion-header/accordion-header.js",
@@ -14,6 +15,7 @@
14
15
  "./components/com-nav/com-nav.js",
15
16
  "./components/com-nav-category/com-nav-category.js",
16
17
  "./components/com-nav-submenu/com-nav-submenu.js",
18
+ "./components/counter/counter.js",
17
19
  "./components/divider/divider.js",
18
20
  "./components/dropdown/dropdown.js",
19
21
  "./components/dropdown-divider/dropdown-divider.js",
@@ -1 +1 @@
1
- {"version":3,"file":"action-bar.js","sourceRoot":"","sources":["../../../src/components/action-bar/action-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAsB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAO7F,MAAM,OAAO,SAAS;;;mBAOC,KAAK;;EAExB,iBAAiB;IACb,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;EAC5D,CAAC;EAED,MAAM;IACF,OAAO,CACH,EAAC,IAAI;MACD,WAAK,KAAK,EAAC,eAAe,mBAAgB,IAAI,CAAC,OAAO;QAClD;UACI,eAAa,CACZ;QACL,WAAK,KAAK,EAAC,SAAS;UAChB,YAAM,IAAI,EAAC,SAAS,GAAQ,CAC1B,CACJ;MACN,WAAK,KAAK,EAAC,gBAAgB;QACvB,YAAM,IAAI,EAAC,MAAM,GAAQ,CACvB,CACH,CACV,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, ComponentInterface, Element, h, Host, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'wcs-action-bar',\n styleUrl: 'action-bar.scss',\n shadow: true\n})\nexport class ActionBar implements ComponentInterface {\n @Element() el: HTMLWcsActionBarElement;\n /**\n * Determines if the action bar should have a border at the bottom.\n * You should not use this property if a gutter is already present on tabs\n */\n @Prop() gutter: boolean;\n @State() hasTabs = false;\n\n componentWillLoad(): Promise<void> | void {\n this.hasTabs = !!this.el.querySelector('[slot=\"tabs\"]');\n }\n\n render() {\n return (\n <Host>\n <div class=\"title-actions\" data-has-tabs={this.hasTabs}>\n <h1>\n <slot></slot>\n </h1>\n <div class=\"actions\">\n <slot name=\"actions\"></slot>\n </div>\n </div>\n <div class=\"tabs-container\">\n <slot name=\"tabs\"></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"action-bar.js","sourceRoot":"","sources":["../../../src/components/action-bar/action-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAsB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAO7F,MAAM,OAAO,SAAS;;;mBAOS,KAAK;;EAEhC,iBAAiB;IACb,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;EAC5D,CAAC;EAED,MAAM;IACF,OAAO,CACH,EAAC,IAAI;MACD,WAAK,KAAK,EAAC,eAAe,mBAAgB,IAAI,CAAC,OAAO;QAClD;UACI,eAAa,CACZ;QACL,WAAK,KAAK,EAAC,SAAS;UAChB,YAAM,IAAI,EAAC,SAAS,GAAQ,CAC1B,CACJ;MACN,WAAK,KAAK,EAAC,gBAAgB;QACvB,YAAM,IAAI,EAAC,MAAM,GAAQ,CACvB,CACH,CACV,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import { Component, ComponentInterface, Element, h, Host, Prop, State } from '@stencil/core';\n\n@Component({\n tag: 'wcs-action-bar',\n styleUrl: 'action-bar.scss',\n shadow: true\n})\nexport class ActionBar implements ComponentInterface {\n @Element() private el: HTMLWcsActionBarElement;\n /**\n * Determines if the action bar should have a border at the bottom.\n * You should not use this property if a gutter is already present on tabs\n */\n @Prop() gutter: boolean;\n @State() private hasTabs = false;\n\n componentWillLoad(): Promise<void> | void {\n this.hasTabs = !!this.el.querySelector('[slot=\"tabs\"]');\n }\n\n render() {\n return (\n <Host>\n <div class=\"title-actions\" data-has-tabs={this.hasTabs}>\n <h1>\n <slot></slot>\n </h1>\n <div class=\"actions\">\n <slot name=\"actions\"></slot>\n </div>\n </div>\n <div class=\"tabs-container\">\n <slot name=\"tabs\"></slot>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -19,6 +19,5 @@ export class App {
19
19
  "$": ["app.css"]
20
20
  };
21
21
  }
22
- static get elementRef() { return "el"; }
23
22
  }
24
23
  //# sourceMappingURL=app.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/components/app/app.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAsB,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAQ1E,MAAM,OAAO,GAAG;EAGZ,MAAM;IACF,OAAO;MACH,YAAM,IAAI,EAAC,QAAQ,GAAE;MACrB,YAAM,IAAI,EAAC,SAAS,GAAE;MACtB,YAAM,IAAI,EAAC,SAAS,GAAE;KACzB,CAAC;EACN,CAAC;;;;;;;;;;CACJ","sourcesContent":["import { Component, ComponentInterface, Element, h } from '@stencil/core';\n\n\n@Component({\n tag: 'wcs-app',\n styleUrl: 'app.scss',\n shadow: true\n})\nexport class App implements ComponentInterface {\n @Element() el!: HTMLWcsAppElement;\n\n render() {\n return [\n <slot name=\"header\"/>,\n <slot name=\"sidebar\"/>,\n <slot name=\"content\"/>\n ];\n }\n}\n"]}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/components/app/app.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAsB,CAAC,EAAE,MAAM,eAAe,CAAC;AAQjE,MAAM,OAAO,GAAG;EAEZ,MAAM;IACF,OAAO;MACH,YAAM,IAAI,EAAC,QAAQ,GAAE;MACrB,YAAM,IAAI,EAAC,SAAS,GAAE;MACtB,YAAM,IAAI,EAAC,SAAS,GAAE;KACzB,CAAC;EACN,CAAC;;;;;;;;;CACJ","sourcesContent":["import { Component, ComponentInterface, h } from '@stencil/core';\n\n\n@Component({\n tag: 'wcs-app',\n styleUrl: 'app.scss',\n shadow: true\n})\nexport class App implements ComponentInterface {\n\n render() {\n return [\n <slot name=\"header\"/>,\n <slot name=\"sidebar\"/>,\n <slot name=\"content\"/>\n ];\n }\n}\n"]}
@@ -1,2 +1,6 @@
1
- export {};
1
+ export const WcsButtonSizeValues = ['s', 'm', 'l']; // as const keyword is used to infer and preserve the exact literal values of an array or object.
2
+ export function isWcsButtonSize(size) {
3
+ // @ts-ignore : ignore size type, as it is checked with WcsButtonSizeValues
4
+ return WcsButtonSizeValues.includes(size);
5
+ }
2
6
  //# sourceMappingURL=button-interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button-interface.js","sourceRoot":"","sources":["../../../src/components/button/button-interface.ts"],"names":[],"mappings":"","sourcesContent":["export type WcsButtonType = 'button' | 'submit';\n\nexport type WcsButtonShape = 'normal' | 'small' | 'round' | 'square';\n\nexport type WcsButtonMode = 'plain' | 'stroked' | 'clear';\n"]}
1
+ {"version":3,"file":"button-interface.js","sourceRoot":"","sources":["../../../src/components/button/button-interface.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU,CAAC,CAAC,iGAAiG;AAI9J,MAAM,UAAU,eAAe,CAAC,IAAY;EACxC,2EAA2E;EAC3E,OAAO,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC","sourcesContent":["import { WcsSize } from '../../shared-types';\n\nexport type WcsButtonType = 'button' | 'submit';\n\nexport type WcsButtonShape = 'normal' | 'round' | 'square';\n\nexport type WcsButtonMode = 'plain' | 'stroked' | 'clear';\n\nexport const WcsButtonSizeValues = ['s', 'm', 'l'] as const; // as const keyword is used to infer and preserve the exact literal values of an array or object.\n\nexport type WcsButtonSize = Extract<WcsSize, typeof WcsButtonSizeValues[number]>;\n\nexport function isWcsButtonSize(size: string): size is WcsButtonSize {\n // @ts-ignore : ignore size type, as it is checked with WcsButtonSizeValues\n return WcsButtonSizeValues.includes(size);\n}\n"]}
@@ -172,7 +172,6 @@
172
172
 
173
173
  :host {
174
174
  display: inline-block;
175
- --wcs-button-padding: calc(var(--wcs-padding) / 2) var(--wcs-padding);
176
175
  --wcs-button-color: var(--wcs-contrast, var(--wcs-white, white));
177
176
  --wcs-button-background-color: var(--wcs-base, var(--wcs-primary, #0088CE));
178
177
  --wcs-button-ripple-color: var(--wcs-contrast, var(--wcs-white, white));
@@ -204,34 +203,41 @@
204
203
  --wcs-button-ripple-color: var(--wcs-base);
205
204
  }
206
205
 
207
- :host([shape=small]) {
208
- --wcs-button-padding: 2px 16px;
206
+ :host([size=l]) {
207
+ --wcs-button-padding: var(--wcs-padding-m) var(--wcs-padding);
208
+ --wcs-button-min-height: var(--wcs-size-l);
209
+ --wcs-button-min-width: var(--wcs-size-l);
210
+ --wcs-button-font-size: 1.0625rem;
209
211
  }
210
- :host([shape=small]) .wcs-inner-button {
211
- min-width: var(--wcs-button-min-width, unset);
212
- min-height: var(--wcs-button-min-height, unset);
212
+
213
+ :host([size=m]) {
214
+ --wcs-button-padding: var(--wcs-padding-m) var(--wcs-padding);
215
+ --wcs-button-min-height: var(--wcs-size-m);
216
+ --wcs-button-min-width: var(--wcs-size-m);
217
+ --wcs-button-font-size: 1rem;
218
+ }
219
+
220
+ :host([size=s]) {
221
+ --wcs-button-padding: var(--wcs-padding-s) var(--wcs-padding);
222
+ --wcs-button-min-height: var(--wcs-size-s);
223
+ --wcs-button-min-width: var(--wcs-size-s);
224
+ --wcs-button-font-size: 0.9375rem;
213
225
  }
214
226
 
215
227
  :host([shape=round]) {
216
- --wcs-button-padding: 0;
217
- --wcs-button-border-radius: 50%;
228
+ --wcs-button-border-radius: 2rem;
218
229
  }
219
- :host([shape=round]) .wcs-inner-button {
220
- min-width: var(--wcs-button-min-width, 42px);
221
- min-height: var(--wcs-button-min-height, 42px);
230
+ :host([shape=round]) ::slotted(wcs-mat-icon) {
231
+ margin: calc(-1 * var(--wcs-padding));
222
232
  }
223
233
 
224
234
  :host([shape=square]) {
225
235
  --wcs-button-padding: 0;
226
236
  }
227
- :host([shape=square]) .wcs-inner-button {
228
- min-width: var(--wcs-button-min-width, 42px);
229
- min-height: var(--wcs-button-min-height, 42px);
237
+ :host([shape=square]) ::slotted(wcs-mat-icon) {
238
+ margin: calc(-1 * var(--wcs-padding));
230
239
  }
231
240
 
232
- :host([shape=normal]) {
233
- --wcs-button-padding: calc(var(--wcs-padding) / 2 + 1px) calc(var(--wcs-padding));
234
- }
235
241
  :host([shape=normal]) .wcs-inner-button {
236
242
  min-width: var(--wcs-button-min-width, unset);
237
243
  min-height: var(--wcs-button-min-height, unset);
@@ -249,8 +255,8 @@
249
255
  opacity: 0;
250
256
  }
251
257
  :host([loading]) wcs-spinner {
252
- height: 24px;
253
- width: 24px;
258
+ height: calc(var(--wcs-button-min-height) / 2);
259
+ width: calc(var(--wcs-button-min-width) / 2);
254
260
  position: absolute;
255
261
  top: 0;
256
262
  bottom: 0;
@@ -305,8 +311,10 @@
305
311
  white-space: nowrap;
306
312
  vertical-align: middle;
307
313
  user-select: none;
308
- font-size: 1rem;
314
+ font-size: var(--wcs-button-font-size);
309
315
  line-height: 1.5;
316
+ min-height: var(--wcs-button-min-height);
317
+ min-width: var(--wcs-button-min-width);
310
318
  transition: color 175ms ease-in-out, background-color 175ms ease-in-out, box-shadow 175ms cubic-bezier(0.4, 0, 0.2, 1);
311
319
  }
312
320
  .wcs-inner-button::before, .wcs-inner-button::after {
@@ -1,5 +1,6 @@
1
1
  import { h } from '@stencil/core';
2
2
  import { MDCRipple } from '@material/ripple';
3
+ import { isWcsButtonSize, WcsButtonSizeValues } from './button-interface';
3
4
  import { hasShadowDom } from '../../utils/helpers';
4
5
  /**
5
6
  * Button component, can also be a link when specifying href.
@@ -8,8 +9,10 @@ export class Button {
8
9
  constructor() {
9
10
  this.type = 'button';
10
11
  this.href = undefined;
12
+ this.target = undefined;
11
13
  this.disabled = false;
12
14
  this.ripple = true;
15
+ this.size = 'm';
13
16
  this.shape = 'normal';
14
17
  this.mode = 'plain';
15
18
  this.loading = false;
@@ -34,6 +37,12 @@ export class Button {
34
37
  }
35
38
  }
36
39
  }
40
+ componentWillLoad() {
41
+ if (!isWcsButtonSize(this.size)) {
42
+ console.error(`Invalid size value for wcs-button : "${this.size}". Must be one of "${WcsButtonSizeValues.join(', ')}"`);
43
+ this.size = "m"; // Default fallback value
44
+ }
45
+ }
37
46
  componentDidLoad() {
38
47
  this.mdcRipple = new MDCRipple(this.el.shadowRoot.querySelector('.wcs-inner-button'));
39
48
  }
@@ -57,7 +66,7 @@ export class Button {
57
66
  render() {
58
67
  const TagType = this.getTagName();
59
68
  const attrs = this.href !== undefined
60
- ? { href: this.href, role: 'button' }
69
+ ? { href: this.href, role: 'button', target: this.target }
61
70
  : { type: this.type };
62
71
  return (h(TagType, Object.assign({}, attrs, { class: "wcs-inner-button", disabled: this.disabled || this.loading }), this.loading && h("wcs-spinner", null), h("slot", null)));
63
72
  }
@@ -111,11 +120,28 @@ export class Button {
111
120
  "optional": true,
112
121
  "docs": {
113
122
  "tags": [],
114
- "text": "Set a URL to point to.\nIf specified use a `a` tag instead of `btn`."
123
+ "text": "Set a URL to point to.<br/>\nIf specified use a `a` tag instead of `btn`."
115
124
  },
116
125
  "attribute": "href",
117
126
  "reflect": false
118
127
  },
128
+ "target": {
129
+ "type": "string",
130
+ "mutable": false,
131
+ "complexType": {
132
+ "original": "'_blank' | '_self'",
133
+ "resolved": "\"_blank\" | \"_self\"",
134
+ "references": {}
135
+ },
136
+ "required": false,
137
+ "optional": true,
138
+ "docs": {
139
+ "tags": [],
140
+ "text": "Specifies where to open the linked document when using href (see prop above)<br/>\nDefault '_self' will open the linked document in the same frame as it was clicked"
141
+ },
142
+ "attribute": "target",
143
+ "reflect": false
144
+ },
119
145
  "disabled": {
120
146
  "type": "boolean",
121
147
  "mutable": false,
@@ -128,7 +154,7 @@ export class Button {
128
154
  "optional": false,
129
155
  "docs": {
130
156
  "tags": [],
131
- "text": "Specify wether the button is disabled or not."
157
+ "text": "Specify whether the button is disabled or not."
132
158
  },
133
159
  "attribute": "disabled",
134
160
  "reflect": true,
@@ -146,18 +172,41 @@ export class Button {
146
172
  "optional": false,
147
173
  "docs": {
148
174
  "tags": [],
149
- "text": "Specify wether the button should have a ripple effect or not."
175
+ "text": "Specify whether the button should have a ripple effect or not."
150
176
  },
151
177
  "attribute": "ripple",
152
178
  "reflect": false,
153
179
  "defaultValue": "true"
154
180
  },
181
+ "size": {
182
+ "type": "string",
183
+ "mutable": false,
184
+ "complexType": {
185
+ "original": "WcsButtonSize",
186
+ "resolved": "\"l\" | \"m\" | \"s\"",
187
+ "references": {
188
+ "WcsButtonSize": {
189
+ "location": "import",
190
+ "path": "./button-interface"
191
+ }
192
+ }
193
+ },
194
+ "required": false,
195
+ "optional": false,
196
+ "docs": {
197
+ "tags": [],
198
+ "text": "Specify the size of the button."
199
+ },
200
+ "attribute": "size",
201
+ "reflect": true,
202
+ "defaultValue": "'m'"
203
+ },
155
204
  "shape": {
156
205
  "type": "string",
157
206
  "mutable": false,
158
207
  "complexType": {
159
208
  "original": "WcsButtonShape",
160
- "resolved": "\"normal\" | \"round\" | \"small\" | \"square\"",
209
+ "resolved": "\"normal\" | \"round\" | \"square\"",
161
210
  "references": {
162
211
  "WcsButtonShape": {
163
212
  "location": "import",
@@ -1 +1 @@
1
- {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAsB,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAC,MAAM,eAAe,CAAC;AAE7F,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD;;GAEG;AAQH,MAAM,OAAO,MAAM;;gBAMgC,QAAQ;;oBAWnB,KAAK;kBAKxB,IAAI;iBAM4B,QAAQ;gBAKV,OAAO;mBAKZ,KAAK;;EAG/C,OAAO,CAAC,EAAS;IACb,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE;MAC/B,EAAE,CAAC,wBAAwB,EAAE,CAAC;KACjC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;MACjD,kDAAkD;MAClD,+CAA+C;MAC/C,sCAAsC;MACtC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;MACrC,IAAI,IAAI,EAAE;QACN,EAAE,CAAC,cAAc,EAAE,CAAC;QAEpB,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC3D,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAC5B,UAAU,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAClC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC7B,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,UAAU,CAAC,MAAM,EAAE,CAAC;OACvB;KACJ;EACL,CAAC;EAED,gBAAgB;IACZ,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC;EAC1F,CAAC;EAEO,mBAAmB;IACvB,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC;EACpC,CAAC;EAEO,oBAAoB;IACxB,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;EACnC,CAAC;EAEO,UAAU;IACd,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;EACpD,CAAC;EAGD,cAAc;IACV,IAAI,IAAI,CAAC,MAAM,EAAE;MACb,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC9B;SAAM;MACH,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC/B;EACL,CAAC;EAED,MAAM;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IAClC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS;MACjC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE;MACrC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1B,OAAO,CACH,EAAC,OAAO,oBACA,KAAK,IACT,KAAK,EAAC,kBAAkB,EACxB,QAAQ,EAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO;MAGrC,IAAI,CAAC,OAAO,IAAI,sBAA2B;MAE/C,eAAO,CACD,CACb,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import {Component, ComponentInterface, Element, h, Listen, Prop, Watch} from '@stencil/core';\n\nimport { MDCRipple } from '@material/ripple';\n\nimport { WcsButtonMode, WcsButtonShape, WcsButtonType } from './button-interface';\nimport { hasShadowDom } from '../../utils/helpers';\n\n/**\n * Button component, can also be a link when specifying href.\n */\n@Component({\n tag: 'wcs-button',\n styleUrl: 'button.scss',\n shadow: {\n delegatesFocus: true\n }\n})\nexport class Button implements ComponentInterface {\n @Element() el!: HTMLElement;\n\n /**\n * Specify the button type.\n */\n @Prop({ mutable: true }) type: WcsButtonType = 'button';\n\n /**\n * Set a URL to point to.\n * If specified use a `a` tag instead of `btn`.\n */\n @Prop() href?: string;\n\n /**\n * Specify wether the button is disabled or not.\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * Specify wether the button should have a ripple effect or not.\n */\n @Prop() ripple = true;\n mdcRipple: MDCRipple;\n\n /**\n * Specify the shape of the button.\n */\n @Prop({ reflect: true }) shape: WcsButtonShape = 'normal';\n\n /**\n * This attribute specify the appearance of the button.\n */\n @Prop({ reflect: true }) mode: WcsButtonMode = 'plain';\n\n /**\n * Flag to display spinner until the end of action\n */\n @Prop({mutable: true}) loading: boolean = false;\n\n @Listen('click')\n onClick(ev: Event) {\n if (this.disabled || this.loading) {\n ev.stopImmediatePropagation();\n }\n if (this.type !== 'button' && hasShadowDom(this.el)) {\n // this button wants to specifically submit a form\n // climb up the dom to see if we're in a <form>\n // and if so, then use JS to submit it\n const form = this.el.closest('form');\n if (form) {\n ev.preventDefault();\n\n const fakeButton = window.document.createElement('button');\n fakeButton.type = this.type;\n fakeButton.style.display = 'none';\n form.appendChild(fakeButton);\n fakeButton.click();\n fakeButton.remove();\n }\n }\n }\n\n componentDidLoad() {\n this.mdcRipple = new MDCRipple(this.el.shadowRoot.querySelector('.wcs-inner-button'));\n }\n\n private enabledRippleEffect() {\n this.mdcRipple.disabled = false;\n }\n\n private disabledRippleEffect() {\n this.mdcRipple.disabled = true;\n }\n\n private getTagName() {\n return this.href !== undefined ? 'a' : 'button';\n }\n\n @Watch('ripple')\n onRippleChange(): void {\n if (this.ripple) {\n this.enabledRippleEffect();\n } else {\n this.disabledRippleEffect();\n }\n }\n\n render() {\n const TagType = this.getTagName();\n const attrs = this.href !== undefined\n ? { href: this.href, role: 'button' }\n : { type: this.type };\n return (\n <TagType\n {...attrs}\n class=\"wcs-inner-button\"\n disabled = {this.disabled || this.loading}\n >\n {\n this.loading && <wcs-spinner></wcs-spinner>\n }\n <slot/>\n </TagType>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, ComponentInterface, Element, h, Listen, Prop, Watch} from '@stencil/core';\n\nimport { MDCRipple } from '@material/ripple';\n\nimport {\n isWcsButtonSize,\n WcsButtonMode,\n WcsButtonShape,\n WcsButtonSize,\n WcsButtonSizeValues,\n WcsButtonType\n} from './button-interface';\nimport { hasShadowDom } from '../../utils/helpers';\n\n/**\n * Button component, can also be a link when specifying href.\n */\n@Component({\n tag: 'wcs-button',\n styleUrl: 'button.scss',\n shadow: {\n delegatesFocus: true\n }\n})\nexport class Button implements ComponentInterface {\n @Element() private el!: HTMLElement;\n\n /**\n * Specify the button type.\n */\n @Prop({ mutable: true }) type: WcsButtonType = 'button';\n\n /**\n * Set a URL to point to.<br/>\n * If specified use a `a` tag instead of `btn`.\n */\n @Prop() href?: string;\n\n /**\n * Specifies where to open the linked document when using href (see prop above)<br/>\n * Default '_self' will open the linked document in the same frame as it was clicked\n */\n @Prop() target?: '_blank' | '_self';\n\n /**\n * Specify whether the button is disabled or not.\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * Specify whether the button should have a ripple effect or not.\n */\n @Prop() ripple = true;\n private mdcRipple: MDCRipple;\n\n /**\n * Specify the size of the button.\n */\n @Prop({ reflect: true }) size: WcsButtonSize = 'm';\n\n /**\n * Specify the shape of the button.\n */\n @Prop({ reflect: true }) shape: WcsButtonShape = 'normal';\n\n /**\n * This attribute specify the appearance of the button.\n */\n @Prop({ reflect: true }) mode: WcsButtonMode = 'plain';\n\n /**\n * Flag to display spinner until the end of action\n */\n @Prop({mutable: true}) loading: boolean = false;\n\n @Listen('click')\n onClick(ev: Event) {\n if (this.disabled || this.loading) {\n ev.stopImmediatePropagation();\n }\n if (this.type !== 'button' && hasShadowDom(this.el)) {\n // this button wants to specifically submit a form\n // climb up the dom to see if we're in a <form>\n // and if so, then use JS to submit it\n const form = this.el.closest('form');\n if (form) {\n ev.preventDefault();\n\n const fakeButton = window.document.createElement('button');\n fakeButton.type = this.type;\n fakeButton.style.display = 'none';\n form.appendChild(fakeButton);\n fakeButton.click();\n fakeButton.remove();\n }\n }\n }\n\n componentWillLoad(): Promise<void> | void {\n if (!isWcsButtonSize(this.size)) {\n console.error(`Invalid size value for wcs-button : \"${this.size}\". Must be one of \"${WcsButtonSizeValues.join(', ')}\"`);\n this.size = \"m\"; // Default fallback value\n }\n }\n\n componentDidLoad() {\n this.mdcRipple = new MDCRipple(this.el.shadowRoot.querySelector('.wcs-inner-button'));\n }\n\n private enabledRippleEffect() {\n this.mdcRipple.disabled = false;\n }\n\n private disabledRippleEffect() {\n this.mdcRipple.disabled = true;\n }\n\n private getTagName() {\n return this.href !== undefined ? 'a' : 'button';\n }\n\n @Watch('ripple')\n onRippleChange(): void {\n if (this.ripple) {\n this.enabledRippleEffect();\n } else {\n this.disabledRippleEffect();\n }\n }\n\n render() {\n const TagType = this.getTagName();\n const attrs = this.href !== undefined\n ? { href: this.href, role: 'button', target: this.target }\n : { type: this.type };\n return (\n <TagType\n {...attrs}\n class=\"wcs-inner-button\"\n disabled = {this.disabled || this.loading}\n >\n {\n this.loading && <wcs-spinner></wcs-spinner>\n }\n <slot/>\n </TagType>\n );\n }\n}\n"]}
@@ -152,7 +152,6 @@ export class Checkbox {
152
152
  }
153
153
  }];
154
154
  }
155
- static get elementRef() { return "el"; }
156
155
  }
157
156
  let checkboxIds = 0;
158
157
  //# sourceMappingURL=checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../../src/components/checkbox/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAoC,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAQ3G,MAAM,OAAO,QAAQ;;IACT,eAAU,GAAG,gBAAgB,WAAW,EAAE,EAAE,CAAC;gBAItC,IAAI,CAAC,UAAU;yBAK0B,KAAK;mBAKX,KAAK;0BAK0B,QAAQ;oBAK7D,KAAK;;EAOjC,YAAY,CAAC,MAAa;IACtB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC3B,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;MAChB,OAAO,EAAE,IAAI,CAAC,OAAO;KACxB,CAAC,CAAC;EACP,CAAC;EAED,MAAM;IACF,OAAO,CACH,EAAC,IAAI;MACD,aAAO,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAC,eAAe,mBAAgB,IAAI,CAAC,QAAQ;QACzE,aAAO,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EACzC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAC,cAAc,EACpB,IAAI,EAAC,UAAU,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,EAAE,EAAE,IAAI,CAAC,IAAI,GACZ;QACR,YAAM,KAAK,EAAC,eAAe,GAAQ;QACnC,YAAM,KAAK,EAAC,MAAM;UACd,eAAO,CACJ,CACH,CACL,CACV,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ;AAED,IAAI,WAAW,GAAG,CAAC,CAAC","sourcesContent":["import { Component, Prop, Event, Element, EventEmitter, ComponentInterface, h, Host } from '@stencil/core';\nimport { CheckboxChangeEventDetail, CheckboxLabelAlignment } from './checkbox-interface';\n\n@Component({\n tag: 'wcs-checkbox',\n styleUrl: 'checkbox.scss',\n shadow: true\n})\nexport class Checkbox implements ComponentInterface {\n private checkboxId = `wcs-checkbox-${checkboxIds++}`;\n\n @Element() el: HTMLElement;\n\n @Prop() name = this.checkboxId;\n\n /**\n * If `true` the checkbox is in indeterminate state.\n */\n @Prop({ reflect: true, mutable: true }) indeterminate = false;\n\n /**\n * If `true`, the checkbox is selected.\n */\n @Prop({ reflect: true, mutable: true }) checked = false;\n\n /**\n * Specifie the alignment of the checkbox with the label content\n */\n @Prop({ mutable: true, reflect: true }) labelAlignment: CheckboxLabelAlignment = 'center';\n\n /**\n * Specify wether the checkbox is disabled or not.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Emitted when the checked property has changed.\n */\n @Event() wcsChange!: EventEmitter<CheckboxChangeEventDetail>;\n\n handleChange(_event: Event) {\n this.indeterminate = false;\n this.checked = !this.checked;\n this.wcsChange.emit({\n checked: this.checked\n });\n }\n\n render() {\n return (\n <Host>\n <label htmlFor={this.name} class=\"wcs-container\" aria-disabled={this.disabled}>\n <input onChange={(evt) => this.handleChange(evt)}\n checked={this.checked}\n class=\"wcs-checkbox\"\n type=\"checkbox\"\n name={this.name}\n disabled={this.disabled}\n id={this.name}>\n </input>\n <span class=\"wcs-checkmark\"></span>\n <span class=\"text\">\n <slot/>\n </span>\n </label>\n </Host>\n );\n }\n}\n\nlet checkboxIds = 0;\n"]}
1
+ {"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../../src/components/checkbox/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAoC,CAAC,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAQlG,MAAM,OAAO,QAAQ;;IACT,eAAU,GAAG,gBAAgB,WAAW,EAAE,EAAE,CAAC;gBACtC,IAAI,CAAC,UAAU;yBAK0B,KAAK;mBAKX,KAAK;0BAK0B,QAAQ;oBAK7D,KAAK;;EAOjC,YAAY,CAAC,MAAa;IACtB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC3B,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;MAChB,OAAO,EAAE,IAAI,CAAC,OAAO;KACxB,CAAC,CAAC;EACP,CAAC;EAED,MAAM;IACF,OAAO,CACH,EAAC,IAAI;MACD,aAAO,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAC,eAAe,mBAAgB,IAAI,CAAC,QAAQ;QACzE,aAAO,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EACzC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,KAAK,EAAC,cAAc,EACpB,IAAI,EAAC,UAAU,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,EAAE,EAAE,IAAI,CAAC,IAAI,GACZ;QACR,YAAM,KAAK,EAAC,eAAe,GAAQ;QACnC,YAAM,KAAK,EAAC,MAAM;UACd,eAAO,CACJ,CACH,CACL,CACV,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ;AAED,IAAI,WAAW,GAAG,CAAC,CAAC","sourcesContent":["import { Component, Prop, Event, EventEmitter, ComponentInterface, h, Host } from '@stencil/core';\nimport { CheckboxChangeEventDetail, CheckboxLabelAlignment } from './checkbox-interface';\n\n@Component({\n tag: 'wcs-checkbox',\n styleUrl: 'checkbox.scss',\n shadow: true\n})\nexport class Checkbox implements ComponentInterface {\n private checkboxId = `wcs-checkbox-${checkboxIds++}`;\n @Prop() name = this.checkboxId;\n\n /**\n * If `true` the checkbox is in indeterminate state.\n */\n @Prop({ reflect: true, mutable: true }) indeterminate = false;\n\n /**\n * If `true`, the checkbox is selected.\n */\n @Prop({ reflect: true, mutable: true }) checked = false;\n\n /**\n * Specifie the alignment of the checkbox with the label content\n */\n @Prop({ mutable: true, reflect: true }) labelAlignment: CheckboxLabelAlignment = 'center';\n\n /**\n * Specify wether the checkbox is disabled or not.\n */\n @Prop() disabled: boolean = false;\n\n /**\n * Emitted when the checked property has changed.\n */\n @Event() wcsChange!: EventEmitter<CheckboxChangeEventDetail>;\n\n handleChange(_event: Event) {\n this.indeterminate = false;\n this.checked = !this.checked;\n this.wcsChange.emit({\n checked: this.checked\n });\n }\n\n render() {\n return (\n <Host>\n <label htmlFor={this.name} class=\"wcs-container\" aria-disabled={this.disabled}>\n <input onChange={(evt) => this.handleChange(evt)}\n checked={this.checked}\n class=\"wcs-checkbox\"\n type=\"checkbox\"\n name={this.name}\n disabled={this.disabled}\n id={this.name}>\n </input>\n <span class=\"wcs-checkmark\"></span>\n <span class=\"text\">\n <slot/>\n </span>\n </label>\n </Host>\n );\n }\n}\n\nlet checkboxIds = 0;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"com-nav.js","sourceRoot":"","sources":["../../../src/components/com-nav/com-nav.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Host, h, Prop, Element, ComponentInterface, State, Listen} from '@stencil/core';\nimport {registerCloseHandlerForFocusOutEventOn} from \"./com-nav-utils\";\n\nconst WCS_COM_NAV_SUBMENU_TAG_NAME = 'WCS-COM-NAV-SUBMENU';\n\n@Component({\n tag: 'wcs-com-nav',\n styleUrl: 'com-nav.scss',\n shadow: true,\n})\nexport class ComNav implements ComponentInterface {\n @Element() el!: HTMLWcsComNavElement;\n\n /** Name of the application to be displayed in the menu bar */\n @Prop() appName: string;\n\n @State() mobileMenuOpen: boolean = false;\n @State() currentActiveSizing: 'desktop' | 'mobile';\n resizeObserver: ResizeObserver;\n private hasAlreadyRegisteredClickHandlerOnSlottedLink: boolean = false;\n\n private mobileMenuIconClick() {\n this.mobileMenuOpen = !this.mobileMenuOpen;\n }\n\n disconnectedCallback() {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): Promise<void> | void {\n this.resizeObserver = new ResizeObserver(entry => {\n const cr = entry[0].contentRect;\n const paddingRight = cr.right - cr.width;\n const paddingLeft = cr.left;\n if (cr.width < 576 - (paddingLeft + paddingRight)) {\n this.currentActiveSizing = 'mobile';\n } else {\n this.currentActiveSizing = 'desktop';\n }\n });\n this.resizeObserver.observe(document.body);\n\n const slottedNavigableItems = this.el.querySelectorAll(':scope > wcs-com-nav-submenu:not([slot]), :scope > a:not([slot])');\n registerCloseHandlerForFocusOutEventOn<HTMLWcsComNavSubmenuElement>(slottedNavigableItems, WCS_COM_NAV_SUBMENU_TAG_NAME);\n }\n\n componentDidRender() {\n this.registerHandlerToCloseMobileMenuOnClickOnSlottedLinkTag();\n }\n\n\n private registerHandlerToCloseMobileMenuOnClickOnSlottedLinkTag() {\n if (this.hasAlreadyRegisteredClickHandlerOnSlottedLink) return;\n\n const mainSlot = this.el.shadowRoot.querySelector('slot:not([name])') as HTMLSlotElement;\n if (mainSlot) {\n this.hasAlreadyRegisteredClickHandlerOnSlottedLink = true;\n // If the user click on a `a` tag, we close the mobile menu overlay.\n mainSlot.assignedElements().filter(e => e.tagName === 'A').forEach(a => {\n a.addEventListener('click', _ => {\n this.mobileMenuOpen = false;\n })\n }\n );\n\n }\n }\n\n //region Handlers for mobile menu overlay visibility\n //\n // In mobile mode, we have only one global drawer to display the menu, that why we have to listen the clicks events\n // in the root component (this component). In desktop mode, all submenus and categories manage their drawer its\n // opening state.\n //\n // We listen to the click events fired by the sebmenu component and we close the mobile menu.\n // In desktop mode, the submenu itself manages the closing of the menu.\n @Listen('wcsClickOnFinalAction')\n onClickOnFinalAction() {\n this.mobileMenuOpen = false;\n }\n\n // We also listen click events on the category menu items, to close the mobile menu.\n // In desktop mode, the category itself manages the closing of the menu.\n @Listen('wcsCategoryItemClicked')\n onClickOnFinalActionCat() {\n this.mobileMenuOpen = false;\n }\n\n //endregion\n\n render() {\n return (\n <Host>\n <div class=\"container\">\n <div class=\"container-left\">\n <div class=\"app-name\">{this.appName}\n <slot name=\"app-name\"/>\n </div>\n <div class=\"menu-bar\">\n {this.currentActiveSizing === 'desktop' ? <slot/> : null}\n </div>\n </div>\n <div class=\"container-right\">\n <slot name=\"actions\"/>\n <span id=\"mobile-menu-icon\" data-mobile-open={this.mobileMenuOpen}\n onClick={() => this.mobileMenuIconClick()}></span>\n </div>\n </div>\n <div class=\"mobile-overlay\" data-mobile-open={this.mobileMenuOpen}>\n {this.currentActiveSizing === 'mobile' ? <slot/> : null}\n </div>\n </Host>\n );\n }\n\n}\n"]}
1
+ {"version":3,"file":"com-nav.js","sourceRoot":"","sources":["../../../src/components/com-nav/com-nav.tsx"],"names":[],"mappings":"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","sourcesContent":["import {Component, Host, h, Prop, Element, ComponentInterface, State, Listen} from '@stencil/core';\nimport {registerCloseHandlerForFocusOutEventOn} from \"./com-nav-utils\";\n\nconst WCS_COM_NAV_SUBMENU_TAG_NAME = 'WCS-COM-NAV-SUBMENU';\n\n@Component({\n tag: 'wcs-com-nav',\n styleUrl: 'com-nav.scss',\n shadow: true,\n})\nexport class ComNav implements ComponentInterface {\n @Element() private el!: HTMLWcsComNavElement;\n\n /** Name of the application to be displayed in the menu bar */\n @Prop() appName: string;\n\n @State() private mobileMenuOpen: boolean = false;\n @State() private currentActiveSizing: 'desktop' | 'mobile';\n private resizeObserver: ResizeObserver;\n private hasAlreadyRegisteredClickHandlerOnSlottedLink: boolean = false;\n\n private mobileMenuIconClick() {\n this.mobileMenuOpen = !this.mobileMenuOpen;\n }\n\n disconnectedCallback() {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): Promise<void> | void {\n this.resizeObserver = new ResizeObserver(entry => {\n const cr = entry[0].contentRect;\n const paddingRight = cr.right - cr.width;\n const paddingLeft = cr.left;\n if (cr.width < 576 - (paddingLeft + paddingRight)) {\n this.currentActiveSizing = 'mobile';\n } else {\n this.currentActiveSizing = 'desktop';\n }\n });\n this.resizeObserver.observe(document.body);\n\n const slottedNavigableItems = this.el.querySelectorAll(':scope > wcs-com-nav-submenu:not([slot]), :scope > a:not([slot])');\n registerCloseHandlerForFocusOutEventOn<HTMLWcsComNavSubmenuElement>(slottedNavigableItems, WCS_COM_NAV_SUBMENU_TAG_NAME);\n }\n\n componentDidRender() {\n this.registerHandlerToCloseMobileMenuOnClickOnSlottedLinkTag();\n }\n\n\n private registerHandlerToCloseMobileMenuOnClickOnSlottedLinkTag() {\n if (this.hasAlreadyRegisteredClickHandlerOnSlottedLink) return;\n\n const mainSlot = this.el.shadowRoot.querySelector('slot:not([name])') as HTMLSlotElement;\n if (mainSlot) {\n this.hasAlreadyRegisteredClickHandlerOnSlottedLink = true;\n // If the user click on a `a` tag, we close the mobile menu overlay.\n mainSlot.assignedElements().filter(e => e.tagName === 'A').forEach(a => {\n a.addEventListener('click', _ => {\n this.mobileMenuOpen = false;\n })\n }\n );\n\n }\n }\n\n //region Handlers for mobile menu overlay visibility\n //\n // In mobile mode, we have only one global drawer to display the menu, that why we have to listen the clicks events\n // in the root component (this component). In desktop mode, all submenus and categories manage their drawer its\n // opening state.\n //\n // We listen to the click events fired by the sebmenu component and we close the mobile menu.\n // In desktop mode, the submenu itself manages the closing of the menu.\n @Listen('wcsClickOnFinalAction')\n onClickOnFinalAction() {\n this.mobileMenuOpen = false;\n }\n\n // We also listen click events on the category menu items, to close the mobile menu.\n // In desktop mode, the category itself manages the closing of the menu.\n @Listen('wcsCategoryItemClicked')\n onClickOnFinalActionCat() {\n this.mobileMenuOpen = false;\n }\n\n //endregion\n\n render() {\n return (\n <Host>\n <div class=\"container\">\n <div class=\"container-left\">\n <div class=\"app-name\">{this.appName}\n <slot name=\"app-name\"/>\n </div>\n <div class=\"menu-bar\">\n {this.currentActiveSizing === 'desktop' ? <slot/> : null}\n </div>\n </div>\n <div class=\"container-right\">\n <slot name=\"actions\"/>\n <span id=\"mobile-menu-icon\" data-mobile-open={this.mobileMenuOpen}\n onClick={() => this.mobileMenuIconClick()}></span>\n </div>\n </div>\n <div class=\"mobile-overlay\" data-mobile-open={this.mobileMenuOpen}>\n {this.currentActiveSizing === 'mobile' ? <slot/> : null}\n </div>\n </Host>\n );\n }\n\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"com-nav-category.js","sourceRoot":"","sources":["../../../src/components/com-nav-category/com-nav-category.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EAET,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,MAAM,EAAE,MAAM,EACd,IAAI,EACJ,KAAK,EACR,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAC,UAAU,EAAE,UAAU,EAAC,MAAM,qBAAqB,CAAC;AAO3D,MAAM,OAAO,cAAc;;;wBAGU,KAAK;;EAKtC,kBAAkB,CAAC,CAAa;IAC5B,IAAI,IAAI,CAAC,YAAY;MAAE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;EACrD,CAAC;EAGD,eAAe,CAAC,KAA6C;IACzD,IAAI,KAAK,CAAC,MAAM,CAAC,eAAe,KAAK,IAAI,CAAC,EAAE,EAAE;MAC1C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;KAC7B;EACL,CAAC;EAED;;;;KAIG;EACK,iBAAiB,CAAC,MAAqB;IAC3C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE;MAC5C,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;KAC1C;EACL,CAAC;EAED;;;;KAIG;EACK,0BAA0B,CAAC,MAAqB;IACpD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE;MAC5C,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;KAChC;EACL,CAAC;EAED;;KAEG;EAEH,KAAK,CAAC,KAAK;IACP,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;EAC9B,CAAC;EAED;;KAEG;EAEH,KAAK,CAAC,IAAI;IACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;EAC7B,CAAC;EAED;;;KAGG;EACK,OAAO,CAAC,GAAe;IAC3B,GAAG,CAAC,eAAe,EAAE,CAAC;IACtB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAC,eAAe,EAAE,IAAI,CAAC,EAAE,EAAC,CAAC,CAAA;EAC3D,CAAC;EAGD;;;;KAIG;EACK,eAAe,CAAC,GAAY;IAChC,IAAK,GAAG,CAAC,MAAsB,CAAC,OAAO,KAAK,GAAG,EAAE;MAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;MACb,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;KACzC;EACL,CAAC;EAED,MAAM;IACF,OAAO,CACH,EAAC,IAAI,IAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;MACnC,WAAK,QAAQ,EAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EACzC,KAAK,EAAC,iBAAiB,eACZ,IAAI,CAAC,YAAY,EAC5B,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAC7C,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY;QAAE,YAAM,KAAK,EAAC,OAAO,IAAE,IAAI,CAAC,KAAK,CAAQ,CAAM;MACxG,WAAK,KAAK,EAAC,gBAAgB,EACtB,QAAQ,EAAE,CAAC,CAAC,eACD,IAAI,CAAC,YAAY,EAC5B,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,EACtD,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;QAC5C,eAAO,CACL,CACH,CACV,CAAA;EACL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEJ","sourcesContent":["import {\n Component,\n ComponentInterface,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen, Method,\n Prop,\n State\n} from '@stencil/core';\nimport { CategoryOpenedEventDetail } from '../com-nav/com-nav-interface';\nimport {isEnterKey, isSpaceKey} from \"../../utils/helpers\";\n\n@Component({\n tag: 'wcs-com-nav-category',\n styleUrl: 'com-nav-category.scss',\n shadow: true,\n})\nexport class ComNavCategory implements ComponentInterface {\n @Element() el!: HTMLWcsComNavCategoryElement;\n @Prop() label: string;\n @State() categoryOpen: boolean = false;\n @Event() wcsCategoryOpened: EventEmitter<CategoryOpenedEventDetail>;\n @Event() wcsCategoryItemClicked: EventEmitter<UIEvent>;\n\n @Listen('click', {target: 'window'})\n onWindowClickEvent(_: MouseEvent) {\n if (this.categoryOpen) this.categoryOpen = false;\n }\n\n @Listen('wcsCategoryOpened', {target: 'window'})\n onSubmenuOpened(event: CustomEvent<CategoryOpenedEventDetail>) {\n if (event.detail.categoryElement !== this.el) {\n this.categoryOpen = false;\n }\n }\n\n /**\n * Open the menu if it is closed and closed the menu if it is already opened\n * @param _event the keyboard event\n * @private\n */\n private handleMenuKeyDown(_event: KeyboardEvent) {\n if ((isSpaceKey(_event)) || isEnterKey(_event)) {\n this.categoryOpen = !this.categoryOpen;\n }\n }\n\n /**\n * Handle key down on category items\n * @param _event the keyboard event\n * @private\n */\n private handleCategoryItemsKeyDown(_event: KeyboardEvent) {\n if ((isSpaceKey(_event)) || isEnterKey(_event)) {\n this.handleItemClick(_event);\n }\n }\n\n /**\n * Close the category\n */\n @Method()\n async close() {\n this.categoryOpen = false;\n }\n\n /**\n * Opens the category\n */\n @Method()\n async open() {\n this.categoryOpen = true;\n }\n\n /**\n * When the user clicks on the menu, we do not propagate the native event and we launch a custom event to manage\n * the closing of the menu correctly\n */\n private onClick(evt: MouseEvent) {\n evt.stopPropagation();\n this.wcsCategoryOpened.emit({categoryElement: this.el})\n }\n\n\n /**\n * Close the category and fire item click if we detect a mouse click on a slotted `a` element.\n * @param evt\n * @private\n */\n private handleItemClick(evt: UIEvent) {\n if ((evt.target as HTMLElement).tagName === 'A') {\n this.close();\n this.wcsCategoryItemClicked.emit(evt);\n }\n }\n\n render(): any {\n return (\n <Host onClick={evt => this.onClick(evt)}>\n <div tabindex={screen.width < 576 ? \"-1\" : \"0\"}\n class=\"label-container\"\n data-open={this.categoryOpen}\n onKeyDown={evt => this.handleMenuKeyDown(evt)}\n onClick={_ => this.categoryOpen = !this.categoryOpen}><span class=\"label\">{this.label}</span></div>\n <div class=\"item-container\"\n tabIndex={-1}\n data-open={this.categoryOpen}\n onKeyDown={evt => this.handleCategoryItemsKeyDown(evt)}\n onClick={(evt) => this.handleItemClick(evt)}>\n <slot/>\n </div>\n </Host>\n )\n }\n\n}\n"]}
1
+ {"version":3,"file":"com-nav-category.js","sourceRoot":"","sources":["../../../src/components/com-nav-category/com-nav-category.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n ComponentInterface,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen, Method,\n Prop,\n State\n} from '@stencil/core';\nimport { CategoryOpenedEventDetail } from '../com-nav/com-nav-interface';\nimport {isEnterKey, isSpaceKey} from \"../../utils/helpers\";\n\n@Component({\n tag: 'wcs-com-nav-category',\n styleUrl: 'com-nav-category.scss',\n shadow: true,\n})\nexport class ComNavCategory implements ComponentInterface {\n @Element() private el!: HTMLWcsComNavCategoryElement;\n @Prop() label: string;\n @State() private categoryOpen: boolean = false;\n @Event() wcsCategoryOpened: EventEmitter<CategoryOpenedEventDetail>;\n @Event() wcsCategoryItemClicked: EventEmitter<UIEvent>;\n\n @Listen('click', {target: 'window'})\n onWindowClickEvent(_: MouseEvent) {\n if (this.categoryOpen) this.categoryOpen = false;\n }\n\n @Listen('wcsCategoryOpened', {target: 'window'})\n onSubmenuOpened(event: CustomEvent<CategoryOpenedEventDetail>) {\n if (event.detail.categoryElement !== this.el) {\n this.categoryOpen = false;\n }\n }\n\n /**\n * Open the menu if it is closed and closed the menu if it is already opened\n * @param _event the keyboard event\n * @private\n */\n private handleMenuKeyDown(_event: KeyboardEvent) {\n if ((isSpaceKey(_event)) || isEnterKey(_event)) {\n this.categoryOpen = !this.categoryOpen;\n }\n }\n\n /**\n * Handle key down on category items\n * @param _event the keyboard event\n * @private\n */\n private handleCategoryItemsKeyDown(_event: KeyboardEvent) {\n if ((isSpaceKey(_event)) || isEnterKey(_event)) {\n this.handleItemClick(_event);\n }\n }\n\n /**\n * Close the category\n */\n @Method()\n async close() {\n this.categoryOpen = false;\n }\n\n /**\n * Opens the category\n */\n @Method()\n async open() {\n this.categoryOpen = true;\n }\n\n /**\n * When the user clicks on the menu, we do not propagate the native event and we launch a custom event to manage\n * the closing of the menu correctly\n */\n private onClick(evt: MouseEvent) {\n evt.stopPropagation();\n this.wcsCategoryOpened.emit({categoryElement: this.el})\n }\n\n\n /**\n * Close the category and fire item click if we detect a mouse click on a slotted `a` element.\n * @param evt\n * @private\n */\n private handleItemClick(evt: UIEvent) {\n if ((evt.target as HTMLElement).tagName === 'A') {\n this.close();\n this.wcsCategoryItemClicked.emit(evt);\n }\n }\n\n render(): any {\n return (\n <Host onClick={evt => this.onClick(evt)}>\n <div tabindex={screen.width < 576 ? \"-1\" : \"0\"}\n class=\"label-container\"\n data-open={this.categoryOpen}\n onKeyDown={evt => this.handleMenuKeyDown(evt)}\n onClick={_ => this.categoryOpen = !this.categoryOpen}><span class=\"label\">{this.label}</span></div>\n <div class=\"item-container\"\n tabIndex={-1}\n data-open={this.categoryOpen}\n onKeyDown={evt => this.handleCategoryItemsKeyDown(evt)}\n onClick={(evt) => this.handleItemClick(evt)}>\n <slot/>\n </div>\n </Host>\n )\n }\n\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"com-nav-submenu.js","sourceRoot":"","sources":["../../../src/components/com-nav-submenu/com-nav-submenu.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n ComponentInterface,\n h,\n Host,\n Listen,\n Prop,\n State,\n Element,\n Event,\n EventEmitter, Method\n} from '@stencil/core';\nimport {MenuOpenedEventDetail} from '../com-nav/com-nav-interface';\nimport {isEnterKey, isEscapeKey, isSpaceKey} from \"../../utils/helpers\";\nimport {registerCloseHandlerForFocusOutEventOn} from \"../com-nav/com-nav-utils\";\n\n\nconst WCS_COM_NAV_CATEGORY = 'WCS-COM-NAV-CATEGORY';\n\n@Component({\n tag: 'wcs-com-nav-submenu',\n styleUrl: 'com-nav-submenu.scss',\n shadow: true,\n})\nexport class ComNavSubmenu implements ComponentInterface {\n @Element() el!: HTMLWcsComNavSubmenuElement;\n @Prop() label: string;\n @Prop() panelTitle: string;\n @Prop() panelDescription: string;\n @State() menuOpen: boolean = false;\n @Event() wcsSubmenuOpened: EventEmitter<MenuOpenedEventDetail>;\n /**\n * Emitted when a user click on a final navigation action.\n *\n * Used by the com-nav component to close the mobile menu overlay when a user click on a final action.\n */\n @Event() wcsClickOnFinalAction: EventEmitter<void>;\n\n componentWillLoad(): Promise<void> | void {\n const slottedCategoryItems = this.el.querySelectorAll(':scope > wcs-com-nav-category:not([slot])');\n registerCloseHandlerForFocusOutEventOn<HTMLWcsComNavCategoryElement>(slottedCategoryItems, WCS_COM_NAV_CATEGORY);\n }\n\n /**\n * If the user clicks outside the menu, we close it\n */\n @Listen('click', {target: 'window'})\n onWindowClickEvent(_: MouseEvent) {\n if (this.menuOpen) this.menuOpen = false;\n }\n\n @Listen('wcsSubmenuOpened', {target: 'window'})\n onSubmenuOpened(event: CustomEvent<MenuOpenedEventDetail>) {\n // If the clicked menu is not this component, we close it\n if (event.detail.menuElement !== this.el) {\n this.menuOpen = false;\n }\n }\n\n /**\n * Close the menu when escape is pressed\n * @param _event keydown event\n */\n @Listen('keydown', {target: 'window'})\n onEscapeKeyDown(_event: KeyboardEvent) {\n if (isEscapeKey(_event) && this.menuOpen) {\n this.menuOpen = false;\n }\n }\n\n /**\n * Close the menu\n */\n @Method()\n async close() {\n this.menuOpen = false;\n }\n\n /**\n * Opens the menu\n */\n @Method()\n async open() {\n this.menuOpen = true;\n }\n\n /**\n * When the user clicks on the menu, we do not propagate the native event and we launch a custom event to manage\n * the closing of the menu correctly\n */\n private onClick(evt: MouseEvent) {\n evt.stopPropagation();\n this.wcsSubmenuOpened.emit({menuElement: this.el})\n }\n\n /**\n * Handle key down on menu items\n * @param _event the keyboard event\n * @private\n */\n private handleMenuItemsKeyDown(_event: KeyboardEvent) {\n if ((isSpaceKey(_event)) || isEnterKey(_event)) {\n this.handleMenuItemsClick(_event);\n }\n }\n\n /**\n * Open the menu if it is closed and closed the menu if it is already opened\n * @param _event the keyboard event\n * @private\n */\n private handleMenuKeyDown(_event: KeyboardEvent) {\n if ((isSpaceKey(_event)) || isEnterKey(_event)) {\n this.menuOpen = !this.menuOpen;\n }\n }\n\n private handleMenuItemsClick(evt: UIEvent) {\n if ((evt.target as HTMLElement).tagName === 'A') {\n this.close();\n this.wcsClickOnFinalAction.emit();\n }\n }\n\n /**\n * handle category item click to close the submenu\n * @param _\n * @private\n */\n @Listen('wcsCategoryItemClicked')\n // @ts-ignore\n private wcsCategoryItemClickedHandler(_: CustomEvent<UIEvent>) {\n // If a category item is clicked, we close the submenu drawer;\n this.close();\n }\n\n\n render(): any {\n return (\n <Host onClick={evt => this.onClick(evt)}>\n <div tabindex={screen.width < 576 ? \"-1\" : \"0\"}\n onClick={_ => this.menuOpen = !this.menuOpen}\n onKeyDown={evt => this.handleMenuKeyDown(evt)}\n class=\"menu-button\">\n <span class=\"label\">{this.label}</span><span class=\"arrow-container\"><span\n class=\"arrow-icon\" data-open={this.menuOpen}>&#xf107;</span></span>\n </div>\n <div class=\"drawer\" data-open={this.menuOpen} tabIndex={-1}>\n <div class=\"drawer-container\">\n <div class=\"drawer-content\">\n <div class=\"drawer-description\">\n <h3>{this.panelTitle}</h3>\n <p>{this.panelDescription}</p>\n </div>\n <div class=\"menu-items\"\n onClick={(evt) => this.handleMenuItemsClick(evt)}\n onKeyDown={evt => this.handleMenuItemsKeyDown(evt)}>\n <slot/>\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n\n}\n"]}
1
+ {"version":3,"file":"com-nav-submenu.js","sourceRoot":"","sources":["../../../src/components/com-nav-submenu/com-nav-submenu.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n ComponentInterface,\n h,\n Host,\n Listen,\n Prop,\n State,\n Element,\n Event,\n EventEmitter, Method\n} from '@stencil/core';\nimport {MenuOpenedEventDetail} from '../com-nav/com-nav-interface';\nimport {isEnterKey, isEscapeKey, isSpaceKey} from \"../../utils/helpers\";\nimport {registerCloseHandlerForFocusOutEventOn} from \"../com-nav/com-nav-utils\";\n\n\nconst WCS_COM_NAV_CATEGORY = 'WCS-COM-NAV-CATEGORY';\n\n@Component({\n tag: 'wcs-com-nav-submenu',\n styleUrl: 'com-nav-submenu.scss',\n shadow: true,\n})\nexport class ComNavSubmenu implements ComponentInterface {\n @Element() private el!: HTMLWcsComNavSubmenuElement;\n @Prop() label: string;\n @Prop() panelTitle: string;\n @Prop() panelDescription: string;\n @State() private menuOpen: boolean = false;\n @Event() wcsSubmenuOpened: EventEmitter<MenuOpenedEventDetail>;\n /**\n * Emitted when a user click on a final navigation action.\n *\n * Used by the com-nav component to close the mobile menu overlay when a user click on a final action.\n */\n @Event() wcsClickOnFinalAction: EventEmitter<void>;\n\n componentWillLoad(): Promise<void> | void {\n const slottedCategoryItems = this.el.querySelectorAll(':scope > wcs-com-nav-category:not([slot])');\n registerCloseHandlerForFocusOutEventOn<HTMLWcsComNavCategoryElement>(slottedCategoryItems, WCS_COM_NAV_CATEGORY);\n }\n\n /**\n * If the user clicks outside the menu, we close it\n */\n @Listen('click', {target: 'window'})\n onWindowClickEvent(_: MouseEvent) {\n if (this.menuOpen) this.menuOpen = false;\n }\n\n @Listen('wcsSubmenuOpened', {target: 'window'})\n onSubmenuOpened(event: CustomEvent<MenuOpenedEventDetail>) {\n // If the clicked menu is not this component, we close it\n if (event.detail.menuElement !== this.el) {\n this.menuOpen = false;\n }\n }\n\n /**\n * Close the menu when escape is pressed\n * @param _event keydown event\n */\n @Listen('keydown', {target: 'window'})\n onEscapeKeyDown(_event: KeyboardEvent) {\n if (isEscapeKey(_event) && this.menuOpen) {\n this.menuOpen = false;\n }\n }\n\n /**\n * Close the menu\n */\n @Method()\n async close() {\n this.menuOpen = false;\n }\n\n /**\n * Opens the menu\n */\n @Method()\n async open() {\n this.menuOpen = true;\n }\n\n /**\n * When the user clicks on the menu, we do not propagate the native event and we launch a custom event to manage\n * the closing of the menu correctly\n */\n private onClick(evt: MouseEvent) {\n evt.stopPropagation();\n this.wcsSubmenuOpened.emit({menuElement: this.el})\n }\n\n /**\n * Handle key down on menu items\n * @param _event the keyboard event\n * @private\n */\n private handleMenuItemsKeyDown(_event: KeyboardEvent) {\n if ((isSpaceKey(_event)) || isEnterKey(_event)) {\n this.handleMenuItemsClick(_event);\n }\n }\n\n /**\n * Open the menu if it is closed and closed the menu if it is already opened\n * @param _event the keyboard event\n * @private\n */\n private handleMenuKeyDown(_event: KeyboardEvent) {\n if ((isSpaceKey(_event)) || isEnterKey(_event)) {\n this.menuOpen = !this.menuOpen;\n }\n }\n\n private handleMenuItemsClick(evt: UIEvent) {\n if ((evt.target as HTMLElement).tagName === 'A') {\n this.close();\n this.wcsClickOnFinalAction.emit();\n }\n }\n\n /**\n * handle category item click to close the submenu\n * @param _\n * @private\n */\n @Listen('wcsCategoryItemClicked')\n // @ts-ignore\n private wcsCategoryItemClickedHandler(_: CustomEvent<UIEvent>) {\n // If a category item is clicked, we close the submenu drawer;\n this.close();\n }\n\n\n render(): any {\n return (\n <Host onClick={evt => this.onClick(evt)}>\n <div tabindex={screen.width < 576 ? \"-1\" : \"0\"}\n onClick={_ => this.menuOpen = !this.menuOpen}\n onKeyDown={evt => this.handleMenuKeyDown(evt)}\n class=\"menu-button\">\n <span class=\"label\">{this.label}</span><span class=\"arrow-container\"><span\n class=\"arrow-icon\" data-open={this.menuOpen}>&#xf107;</span></span>\n </div>\n <div class=\"drawer\" data-open={this.menuOpen} tabIndex={-1}>\n <div class=\"drawer-container\">\n <div class=\"drawer-content\">\n <div class=\"drawer-description\">\n <h3>{this.panelTitle}</h3>\n <p>{this.panelDescription}</p>\n </div>\n <div class=\"menu-items\"\n onClick={(evt) => this.handleMenuItemsClick(evt)}\n onKeyDown={evt => this.handleMenuItemsKeyDown(evt)}>\n <slot/>\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n\n\n}\n"]}
@@ -0,0 +1,6 @@
1
+ export const WcsCounterSizeValues = ['m', 'l']; // as const keyword is used to infer and preserve the exact literal values of an array or object.
2
+ export function isWcsCounterSize(size) {
3
+ // @ts-ignore : ignore size type, as it is checked with WcsInputSizeValues
4
+ return WcsCounterSizeValues.includes(size);
5
+ }
6
+ //# sourceMappingURL=counter-interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"counter-interface.js","sourceRoot":"","sources":["../../../src/components/counter/counter-interface.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,CAAU,CAAC,CAAC,iGAAiG;AAI1J,MAAM,UAAU,gBAAgB,CAAC,IAAY;EACzC,0EAA0E;EAC1E,OAAO,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC","sourcesContent":["import { WcsSize } from \"../../shared-types\";\n\nexport interface CounterChangeEventDetail {\n value: number;\n}\n\nexport const WcsCounterSizeValues = ['m', 'l'] as const; // as const keyword is used to infer and preserve the exact literal values of an array or object.\n\nexport type WcsCounterSize = Extract<WcsSize, typeof WcsCounterSizeValues[number]>;\n\nexport function isWcsCounterSize(size: string): size is WcsCounterSize {\n // @ts-ignore : ignore size type, as it is checked with WcsInputSizeValues\n return WcsCounterSizeValues.includes(size);\n}\n"]}
@@ -0,0 +1,93 @@
1
+ @keyframes spin-animation-up {
2
+ 0% {
3
+ transform: translateY(0);
4
+ transform-origin: center;
5
+ opacity: 1;
6
+ }
7
+ 50% {
8
+ opacity: 0.5;
9
+ }
10
+ 100% {
11
+ transform: translateY(30px);
12
+ transform-origin: center;
13
+ opacity: 1;
14
+ }
15
+ }
16
+ @keyframes spin-animation-down {
17
+ 0% {
18
+ transform: translateY(0);
19
+ transform-origin: center;
20
+ opacity: 1;
21
+ }
22
+ 50% {
23
+ opacity: 0.5;
24
+ }
25
+ 100% {
26
+ transform: translateY(-30px);
27
+ transform-origin: center;
28
+ opacity: 1;
29
+ }
30
+ }
31
+ :host {
32
+ box-sizing: border-box;
33
+ height: var(--wcs-counter-host-height);
34
+ --wcs-input-icon-color: var(--wcs-text-medium);
35
+ --wcs-internal-input-border-radius: calc(var(--wcs-border-radius) * 10);
36
+ --wcs-internal-input-border-width: 2px;
37
+ font-family: var(--wcs-font-sans-serif);
38
+ font-size: var(--wcs-counter-font-size);
39
+ font-weight: bold;
40
+ display: flex;
41
+ align-items: center;
42
+ padding: var(--wcs-counter-host-padding);
43
+ width: fit-content;
44
+ overflow: hidden;
45
+ border-radius: var(--wcs-internal-input-border-radius);
46
+ background-color: var(--wcs-light);
47
+ border: var(--wcs-internal-input-border-width) solid var(--wcs-light);
48
+ background-clip: padding-box;
49
+ }
50
+ :host .counter-container {
51
+ height: var(--wcs-counter-host-height);
52
+ display: flex;
53
+ flex-direction: column;
54
+ align-items: center;
55
+ justify-content: center;
56
+ margin: 0 calc(2 * var(--wcs-base-margin));
57
+ position: relative;
58
+ }
59
+ :host .outliers {
60
+ position: absolute;
61
+ }
62
+ :host #outlier-down {
63
+ top: calc(var(--wcs-counter-host-height) / 2 * -1);
64
+ }
65
+ :host #outlier-up {
66
+ bottom: calc(var(--wcs-counter-host-height) / 2 * -1);
67
+ }
68
+ :host span.current-value:focus-visible {
69
+ outline: 2px dashed var(--wcs-primary);
70
+ outline-offset: 4px;
71
+ border-radius: 0.1rem;
72
+ }
73
+ :host .animate-up {
74
+ animation: spin-animation-up 0.175s ease-in-out;
75
+ }
76
+ :host .animate-down {
77
+ animation: spin-animation-down 0.175s ease-in-out;
78
+ }
79
+ :host .hidden {
80
+ opacity: 0;
81
+ }
82
+
83
+ :host([size=m]) {
84
+ --wcs-counter-host-padding: 4px;
85
+ --wcs-counter-host-height: var(--wcs-size-m);
86
+ --wcs-counter-font-size: 1rem;
87
+ }
88
+
89
+ :host([size=l]) {
90
+ --wcs-counter-host-padding: 8px;
91
+ --wcs-counter-host-height: var(--wcs-size-l);
92
+ --wcs-counter-font-size: 1.0625rem;
93
+ }