bromcom-ui 2.7.38-rc.9 → 2.8.0-rc.1

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 (441) hide show
  1. package/dist/bromcom-ui/bromcom-ui.css +1 -1
  2. package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
  3. package/dist/bromcom-ui/global/helper/index.ts +1 -0
  4. package/dist/bromcom-ui/global/helper/toast.ts +136 -0
  5. package/dist/bromcom-ui/p-07b62dab.entry.js +5 -0
  6. package/dist/bromcom-ui/p-0ae31364.entry.js +5 -0
  7. package/dist/bromcom-ui/{p-72f741db.entry.js → p-0b77585e.entry.js} +1 -1
  8. package/dist/bromcom-ui/{p-64b20f43.entry.js → p-0f685aa9.entry.js} +1 -1
  9. package/dist/bromcom-ui/{p-c58f338d.entry.js → p-14938158.entry.js} +1 -1
  10. package/dist/bromcom-ui/p-168d2632.entry.js +5 -0
  11. package/dist/bromcom-ui/p-178fb088.entry.js +5 -0
  12. package/dist/bromcom-ui/p-17bafd84.entry.js +5 -0
  13. package/dist/bromcom-ui/p-1a0900cc.entry.js +10 -0
  14. package/dist/bromcom-ui/p-1faaac85.entry.js +5 -0
  15. package/dist/bromcom-ui/p-22e08221.entry.js +5 -0
  16. package/dist/bromcom-ui/p-2a57c8c7.entry.js +5 -0
  17. package/dist/bromcom-ui/{p-444cb95f.entry.js → p-2cdc4578.entry.js} +1 -1
  18. package/dist/bromcom-ui/p-2eaf7068.entry.js +5 -0
  19. package/dist/bromcom-ui/p-34a59d30.js +5 -0
  20. package/dist/bromcom-ui/{p-4721d58a.entry.js → p-369d6e4f.entry.js} +1 -1
  21. package/dist/bromcom-ui/p-3a093f9e.entry.js +5 -0
  22. package/dist/bromcom-ui/{p-969f623c.entry.js → p-3ccc9177.entry.js} +1 -1
  23. package/dist/bromcom-ui/{p-69ef565b.entry.js → p-3d4897d8.entry.js} +1 -1
  24. package/dist/bromcom-ui/p-3d8802d9.entry.js +5 -0
  25. package/dist/bromcom-ui/p-3e45d00d.entry.js +5 -0
  26. package/dist/bromcom-ui/p-410c74f6.js +5 -0
  27. package/dist/bromcom-ui/p-4185987d.entry.js +5 -0
  28. package/dist/bromcom-ui/p-4487e8c2.js +5 -0
  29. package/dist/bromcom-ui/{p-5775dcea.js → p-48e9166c.js} +1 -1
  30. package/dist/bromcom-ui/{p-1d44dbea.entry.js → p-4a123037.entry.js} +1 -1
  31. package/dist/bromcom-ui/p-4a51c718.entry.js +5 -0
  32. package/dist/bromcom-ui/p-51deaab5.entry.js +5 -0
  33. package/dist/bromcom-ui/p-524ab0fc.entry.js +5 -0
  34. package/dist/bromcom-ui/{p-620afa4f.js → p-56a5396d.js} +1 -1
  35. package/dist/bromcom-ui/p-56bb19ef.js +5 -0
  36. package/dist/bromcom-ui/p-58815bb1.entry.js +5 -0
  37. package/dist/bromcom-ui/p-5cd30376.entry.js +5 -0
  38. package/dist/bromcom-ui/{p-fc55a7e3.entry.js → p-5d014153.entry.js} +1 -1
  39. package/dist/bromcom-ui/p-5de651cc.entry.js +5 -0
  40. package/dist/bromcom-ui/{p-3126f440.entry.js → p-61709094.entry.js} +1 -1
  41. package/dist/bromcom-ui/p-65fbabc8.entry.js +5 -0
  42. package/dist/bromcom-ui/p-6baf6ea4.entry.js +5 -0
  43. package/dist/bromcom-ui/p-6ea775e8.entry.js +5 -0
  44. package/dist/bromcom-ui/p-701cf04e.entry.js +5 -0
  45. package/dist/bromcom-ui/p-70c794df.js +5 -0
  46. package/dist/bromcom-ui/p-71930900.js +5 -0
  47. package/dist/bromcom-ui/{p-16ff1ff3.js → p-74595a06.js} +1 -1
  48. package/dist/bromcom-ui/p-79a1c167.js +5 -0
  49. package/dist/bromcom-ui/{p-5ae0a59b.js → p-7e44e6b5.js} +1 -1
  50. package/dist/bromcom-ui/p-7eb09daf.entry.js +5 -0
  51. package/dist/bromcom-ui/{p-930558cd.js → p-7eb8c46e.js} +1 -1
  52. package/dist/bromcom-ui/p-80fdd63f.entry.js +5 -0
  53. package/dist/bromcom-ui/p-889553d3.entry.js +5 -0
  54. package/dist/bromcom-ui/{p-ba062b3c.js → p-88f7d869.js} +1 -1
  55. package/dist/bromcom-ui/p-89a9e8e3.entry.js +5 -0
  56. package/dist/bromcom-ui/{p-3c7a0345.js → p-8c018ae0.js} +1 -1
  57. package/dist/bromcom-ui/p-8cc29a92.entry.js +5 -0
  58. package/dist/bromcom-ui/{p-219b3300.entry.js → p-8d1cd79f.entry.js} +1 -1
  59. package/dist/bromcom-ui/p-8fa7cdf0.entry.js +5 -0
  60. package/dist/bromcom-ui/p-94da7678.entry.js +5 -0
  61. package/dist/bromcom-ui/p-967df53d.entry.js +5 -0
  62. package/dist/bromcom-ui/p-970a4dd6.entry.js +5 -0
  63. package/dist/bromcom-ui/{p-57d0c6e7.entry.js → p-97df9122.entry.js} +1 -1
  64. package/dist/bromcom-ui/p-98c9ac37.entry.js +5 -0
  65. package/dist/bromcom-ui/{p-ee9ba6ba.entry.js → p-9a1dc17c.entry.js} +1 -1
  66. package/dist/bromcom-ui/{p-1d77b8a6.js → p-9bef5a59.js} +1 -1
  67. package/dist/bromcom-ui/{p-4f86851c.entry.js → p-a173ed35.entry.js} +1 -1
  68. package/dist/bromcom-ui/p-a452bb5e.entry.js +5 -0
  69. package/dist/bromcom-ui/p-a5abe2d6.entry.js +5 -0
  70. package/dist/bromcom-ui/p-afa908e9.entry.js +5 -0
  71. package/dist/bromcom-ui/p-b175a1e1.entry.js +5 -0
  72. package/dist/bromcom-ui/p-b5531d54.entry.js +5 -0
  73. package/dist/bromcom-ui/p-ba8d8c03.entry.js +5 -0
  74. package/dist/bromcom-ui/p-bd2d9941.entry.js +5 -0
  75. package/dist/bromcom-ui/{p-5a9b78f6.entry.js → p-bdb012c3.entry.js} +1 -1
  76. package/dist/bromcom-ui/p-c3238361.entry.js +5 -0
  77. package/dist/bromcom-ui/{p-5001042f.js → p-c718f29a.js} +1 -1
  78. package/dist/bromcom-ui/{p-2b73f6b1.entry.js → p-c9235a71.entry.js} +1 -1
  79. package/dist/bromcom-ui/p-ceace9c7.entry.js +5 -0
  80. package/dist/bromcom-ui/p-d236a84f.entry.js +5 -0
  81. package/dist/bromcom-ui/p-d39369ff.entry.js +5 -0
  82. package/dist/bromcom-ui/{p-a368c325.entry.js → p-dae1cc7b.entry.js} +1 -1
  83. package/dist/bromcom-ui/{p-b9352123.entry.js → p-dc306bd8.entry.js} +1 -1
  84. package/dist/bromcom-ui/{p-764ae0c1.js → p-de954bc9.js} +1 -1
  85. package/dist/bromcom-ui/{p-c3ef369d.entry.js → p-dfe8e354.entry.js} +1 -1
  86. package/dist/bromcom-ui/{p-568f4f45.entry.js → p-e02491ce.entry.js} +1 -1
  87. package/dist/bromcom-ui/{p-0b6afb97.entry.js → p-e2b3cb98.entry.js} +1 -1
  88. package/dist/bromcom-ui/p-e2e7d808.entry.js +5 -0
  89. package/dist/bromcom-ui/p-e30c5251.entry.js +5 -0
  90. package/dist/bromcom-ui/p-e3d32c37.entry.js +5 -0
  91. package/dist/bromcom-ui/{p-ac156ba4.entry.js → p-e422fc70.entry.js} +1 -1
  92. package/dist/bromcom-ui/p-e9295fec.entry.js +5 -0
  93. package/dist/bromcom-ui/p-ef6e4107.entry.js +5 -0
  94. package/dist/bromcom-ui/{p-4b1ed966.entry.js → p-f089027d.entry.js} +1 -1
  95. package/dist/bromcom-ui/{p-9979bd82.entry.js → p-f16ce14a.entry.js} +1 -1
  96. package/dist/bromcom-ui/p-f881a6b8.entry.js +5 -0
  97. package/dist/bromcom-ui/p-ffb57c2c.entry.js +5 -0
  98. package/dist/cjs/bcm-accordion.cjs.entry.js +3 -1
  99. package/dist/cjs/bcm-alert.cjs.entry.js +2 -1
  100. package/dist/cjs/bcm-attendance.cjs.entry.js +4 -2
  101. package/dist/cjs/bcm-avatar_2.cjs.entry.js +5 -4
  102. package/dist/cjs/bcm-breadcrumb.cjs.entry.js +2 -1
  103. package/dist/cjs/bcm-button-group.cjs.entry.js +2 -1
  104. package/dist/cjs/{bcm-button.cjs.entry.js → bcm-button_2.cjs.entry.js} +127 -29
  105. package/dist/cjs/bcm-card.cjs.entry.js +3 -2
  106. package/dist/cjs/bcm-checkbox-group.cjs.entry.js +2 -1
  107. package/dist/cjs/bcm-checkbox-lite_9.cjs.entry.js +3 -2
  108. package/dist/cjs/bcm-checkbox_2.cjs.entry.js +5 -4
  109. package/dist/cjs/bcm-chip.cjs.entry.js +4 -3
  110. package/dist/cjs/bcm-collapse.cjs.entry.js +2 -1
  111. package/dist/cjs/bcm-color-input.cjs.entry.js +5 -4
  112. package/dist/cjs/{bcm-colorful_7.cjs.entry.js → bcm-colorful_2.cjs.entry.js} +10 -904
  113. package/dist/cjs/bcm-colorpicker.cjs.entry.js +432 -0
  114. package/dist/cjs/bcm-date-picker.cjs.entry.js +2 -1
  115. package/dist/cjs/bcm-datetime-picker.cjs.entry.js +3 -2
  116. package/dist/cjs/bcm-default.cjs.entry.js +3 -1
  117. package/dist/cjs/bcm-drawer.cjs.entry.js +5 -4
  118. package/dist/cjs/bcm-dropdown.cjs.entry.js +3 -2
  119. package/dist/cjs/bcm-expansion-panel.cjs.entry.js +3 -2
  120. package/dist/cjs/bcm-form-2.cjs.entry.js +2 -1
  121. package/dist/cjs/bcm-form.cjs.entry.js +1 -1
  122. package/dist/cjs/bcm-icon.cjs.entry.js +41 -0
  123. package/dist/cjs/bcm-input-custom.cjs.entry.js +73 -0
  124. package/dist/cjs/bcm-input.cjs.entry.js +369 -0
  125. package/dist/cjs/bcm-item.cjs.entry.js +3 -2
  126. package/dist/cjs/bcm-items.cjs.entry.js +3 -2
  127. package/dist/cjs/bcm-label_2.cjs.entry.js +149 -0
  128. package/dist/cjs/bcm-link.cjs.entry.js +1 -1
  129. package/dist/cjs/bcm-list.cjs.entry.js +14 -12
  130. package/dist/cjs/bcm-menu.cjs.entry.js +7 -6
  131. package/dist/cjs/bcm-modal.cjs.entry.js +2 -1
  132. package/dist/cjs/bcm-popconfirm-box.cjs.entry.js +3 -2
  133. package/dist/cjs/bcm-popconfirm.cjs.entry.js +3 -2
  134. package/dist/cjs/bcm-popover.cjs.entry.js +84 -34
  135. package/dist/cjs/bcm-progress.cjs.entry.js +3 -2
  136. package/dist/cjs/bcm-radio-group.cjs.entry.js +77 -211
  137. package/dist/cjs/bcm-radio.cjs.entry.js +36 -77
  138. package/dist/cjs/bcm-range.cjs.entry.js +2 -1
  139. package/dist/cjs/bcm-search.cjs.entry.js +6 -4
  140. package/dist/cjs/bcm-select.cjs.entry.js +1 -1
  141. package/dist/cjs/bcm-skeleton.cjs.entry.js +3 -1
  142. package/dist/cjs/bcm-step.cjs.entry.js +3 -2
  143. package/dist/cjs/bcm-stepper.cjs.entry.js +56 -29
  144. package/dist/cjs/bcm-switch.cjs.entry.js +3 -2
  145. package/dist/cjs/bcm-tab-group.cjs.entry.js +86 -98
  146. package/dist/cjs/bcm-tab-item-header.cjs.entry.js +87 -0
  147. package/dist/cjs/bcm-tab-item.cjs.entry.js +104 -0
  148. package/dist/cjs/bcm-tag.cjs.entry.js +3 -2
  149. package/dist/cjs/bcm-text.cjs.entry.js +2 -1
  150. package/dist/cjs/bcm-textarea.cjs.entry.js +3 -2
  151. package/dist/cjs/bcm-time-picker.cjs.entry.js +2 -1
  152. package/dist/cjs/bromcom-ui.cjs.js +1 -1
  153. package/dist/cjs/color-helper-09aa652d.js +86 -0
  154. package/dist/cjs/{color-helper-c9882bd8.js → colors-7cc2aee2.js} +1 -78
  155. package/dist/cjs/{generate-dbed3a63.js → generate-b2779357.js} +118 -16
  156. package/dist/cjs/{input-template-79002b88.js → input-template-ef0dff49.js} +2 -2
  157. package/dist/cjs/{json-parse-decarator-65760934.js → json-parse-decarator-6daa901d.js} +1 -1
  158. package/dist/cjs/loader.cjs.js +1 -1
  159. package/dist/cjs/{number-helper-d77c9113.js → number-helper-c0a3073d.js} +1 -1
  160. package/dist/cjs/old-bcm-popover-box.cjs.entry.js +3 -2
  161. package/dist/cjs/old-bcm-popover.cjs.entry.js +2 -1
  162. package/dist/cjs/{stepper-states-fae35b0d.js → stepper-states-7458308e.js} +1 -1
  163. package/dist/cjs/{tooltip-helper-7beca613.js → tooltip-helper-d4c09d59.js} +38 -8
  164. package/dist/cjs/{validators-95afb38d.js → validators-9db90679.js} +1 -1
  165. package/dist/collection/collection-manifest.json +5 -1
  166. package/dist/collection/components/atoms/button/button.js +1 -1
  167. package/dist/collection/components/atoms/chip/chip.js +1 -1
  168. package/dist/collection/components/atoms/link/link.js +1 -1
  169. package/dist/collection/components/external-source/bcm-toast-helper.js +20 -0
  170. package/dist/collection/components/external-source/test.js/bcm-toast-helper.js +20 -0
  171. package/dist/collection/components/molecules/checkbox/checkbox.css +1 -0
  172. package/dist/collection/components/molecules/checkbox/checkbox.js +1 -1
  173. package/dist/collection/components/molecules/input/input.js +5 -2
  174. package/dist/collection/components/molecules/menu/menu.js +1 -1
  175. package/dist/collection/components/molecules/popconfirm/popconfirm.js +1 -1
  176. package/dist/collection/components/molecules/popover/popover.js +107 -2
  177. package/dist/collection/components/molecules/radio/{group.js → radio-group.js} +163 -246
  178. package/dist/collection/components/molecules/radio/radio.js +42 -132
  179. package/dist/collection/components/molecules/search/search.js +20 -1
  180. package/dist/collection/components/molecules/stepper/stepper.js +55 -35
  181. package/dist/collection/components/molecules/switch/switch.js +1 -1
  182. package/dist/collection/components/molecules/tab-group/tab-group.js +98 -100
  183. package/dist/collection/components/molecules/tab-group/tab-item-header.js +186 -0
  184. package/dist/collection/components/molecules/tab-group/tab-item.js +161 -0
  185. package/dist/collection/components/molecules/tooltip/tooltip.js +109 -2
  186. package/dist/collection/components/organism/datetime-picker/datetime-picker.js +1 -1
  187. package/dist/collection/components/organism/form/form.js +1 -1
  188. package/dist/collection/components/organism/list/list.css +1 -0
  189. package/dist/collection/components/organism/list/list.js +21 -2
  190. package/dist/collection/components/other/attendance/attendance.js +1 -1
  191. package/dist/collection/components/other/input-custom/input-custom.js +249 -0
  192. package/dist/collection/components/other/toast/toast.js +365 -0
  193. package/dist/collection/components/other_deprecated/select/select.js +1 -1
  194. package/dist/collection/global/components/_checkbox.css +1 -0
  195. package/dist/collection/global/helper/index.js +5 -0
  196. package/dist/collection/global/helper/index.ts +1 -0
  197. package/dist/collection/global/helper/toast.js +114 -0
  198. package/dist/collection/global/helper/toast.ts +136 -0
  199. package/dist/collection/helper/generate.js +120 -19
  200. package/dist/collection/helper/popover-helper.js +57 -29
  201. package/dist/collection/helper/tooltip-helper.js +34 -5
  202. package/dist/collection/stories/assets/button/1.svg +35 -0
  203. package/dist/collection/stories/assets/button/10.svg +24 -0
  204. package/dist/collection/stories/assets/button/11.svg +24 -0
  205. package/dist/collection/stories/assets/button/12.svg +24 -0
  206. package/dist/collection/stories/assets/button/2.svg +28 -0
  207. package/dist/collection/stories/assets/button/3.svg +41 -0
  208. package/dist/collection/stories/assets/button/4.svg +9 -0
  209. package/dist/collection/stories/assets/button/5.svg +65 -0
  210. package/dist/collection/stories/assets/button/6.svg +68 -0
  211. package/dist/collection/stories/assets/button/7.svg +203 -0
  212. package/dist/collection/stories/assets/button/8.svg +316 -0
  213. package/dist/collection/stories/assets/button/9.svg +9 -0
  214. package/dist/collection/templates/button-template.js +1 -1
  215. package/dist/collection/templates/input-template.js +1 -1
  216. package/dist/collection/templates/list-item-template.js +1 -1
  217. package/dist/collection/templates/list-template.js +2 -2
  218. package/dist/components/bcm-attendance.js +1 -1
  219. package/dist/components/bcm-chip.js +1 -1
  220. package/dist/components/bcm-form.js +1 -1
  221. package/dist/components/bcm-input-custom.d.ts +11 -0
  222. package/dist/components/bcm-input-custom.js +114 -0
  223. package/dist/components/bcm-list.js +10 -8
  224. package/dist/components/bcm-popconfirm.js +1 -1
  225. package/dist/components/bcm-popover.js +83 -30
  226. package/dist/components/bcm-radio-group.js +88 -230
  227. package/dist/components/bcm-select.js +1 -1
  228. package/dist/components/bcm-stepper.js +51 -33
  229. package/dist/components/bcm-switch.js +1 -1
  230. package/dist/components/bcm-tab-group.js +84 -98
  231. package/dist/components/bcm-tab-item-header.d.ts +11 -0
  232. package/dist/components/bcm-tab-item-header.js +102 -0
  233. package/dist/components/bcm-tab-item.d.ts +11 -0
  234. package/dist/components/bcm-tab-item.js +117 -0
  235. package/dist/components/bcm-tab.js +1 -1
  236. package/dist/components/bcm-tabs-content.js +1 -1
  237. package/dist/components/bcm-tabs.js +1 -1
  238. package/dist/components/bcm-tag.js +1 -1
  239. package/dist/components/bcm-toast.d.ts +11 -0
  240. package/dist/components/bcm-toast.js +140 -0
  241. package/dist/components/button.js +2 -2
  242. package/dist/components/checkbox-lite.js +1 -1
  243. package/dist/components/checkbox.js +2 -2
  244. package/dist/components/color-helper.js +1 -405
  245. package/dist/components/colors2.js +411 -0
  246. package/dist/components/datetime-picker.js +1 -1
  247. package/dist/components/generate.js +117 -16
  248. package/dist/components/index.d.ts +5 -1
  249. package/dist/components/index.js +4 -0
  250. package/dist/components/input-template.js +2 -15
  251. package/dist/components/input.js +5 -2
  252. package/dist/components/link.js +1 -1
  253. package/dist/components/menu.js +1 -1
  254. package/dist/components/radio.js +38 -82
  255. package/dist/components/search.js +3 -1
  256. package/dist/components/tooltip-helper.js +34 -4
  257. package/dist/components/tooltip.js +29 -3
  258. package/dist/components/types.js +14 -27
  259. package/dist/components/types2.js +25 -25
  260. package/dist/components/types3.js +32 -0
  261. package/dist/esm/bcm-accordion.entry.js +5 -3
  262. package/dist/esm/bcm-alert.entry.js +5 -4
  263. package/dist/esm/bcm-attendance.entry.js +6 -4
  264. package/dist/esm/bcm-autocomplete.entry.js +2 -2
  265. package/dist/esm/bcm-avatar_2.entry.js +10 -9
  266. package/dist/esm/bcm-box.entry.js +2 -2
  267. package/dist/esm/bcm-breadcrumb.entry.js +4 -3
  268. package/dist/esm/bcm-button-group.entry.js +4 -3
  269. package/dist/esm/{bcm-button.entry.js → bcm-button_2.entry.js} +125 -28
  270. package/dist/esm/bcm-card.entry.js +7 -6
  271. package/dist/esm/bcm-checkbox-group.entry.js +8 -7
  272. package/dist/esm/bcm-checkbox-lite_9.entry.js +6 -5
  273. package/dist/esm/bcm-checkbox_2.entry.js +10 -9
  274. package/dist/esm/bcm-chip.entry.js +7 -6
  275. package/dist/esm/bcm-collapse-group.entry.js +3 -3
  276. package/dist/esm/bcm-collapse.entry.js +4 -3
  277. package/dist/esm/bcm-color-input.entry.js +8 -7
  278. package/dist/esm/{bcm-colorful_7.entry.js → bcm-colorful_2.entry.js} +16 -905
  279. package/dist/esm/bcm-colorpicker.entry.js +428 -0
  280. package/dist/esm/bcm-date-picker.entry.js +5 -4
  281. package/dist/esm/bcm-datetime-picker.entry.js +9 -8
  282. package/dist/esm/bcm-default.entry.js +5 -3
  283. package/dist/esm/bcm-drawer.entry.js +9 -8
  284. package/dist/esm/bcm-dropdown.entry.js +5 -4
  285. package/dist/esm/bcm-error-layout.entry.js +2 -2
  286. package/dist/esm/bcm-expansion-panel.entry.js +6 -5
  287. package/dist/esm/bcm-form-2.entry.js +4 -3
  288. package/dist/esm/bcm-form-group.entry.js +2 -2
  289. package/dist/esm/bcm-form.entry.js +4 -4
  290. package/dist/esm/bcm-icon.entry.js +37 -0
  291. package/dist/esm/bcm-input-custom.entry.js +69 -0
  292. package/dist/esm/bcm-input.entry.js +365 -0
  293. package/dist/esm/bcm-item.entry.js +6 -5
  294. package/dist/esm/bcm-items.entry.js +5 -4
  295. package/dist/esm/bcm-label_2.entry.js +144 -0
  296. package/dist/esm/bcm-link.entry.js +3 -3
  297. package/dist/esm/bcm-list.entry.js +22 -20
  298. package/dist/esm/bcm-menu.entry.js +11 -10
  299. package/dist/esm/bcm-message.entry.js +2 -2
  300. package/dist/esm/bcm-modal.entry.js +5 -4
  301. package/dist/esm/bcm-notification.entry.js +2 -2
  302. package/dist/esm/bcm-old-input.entry.js +4 -4
  303. package/dist/esm/bcm-old-tag_2.entry.js +3 -3
  304. package/dist/esm/bcm-popconfirm-box.entry.js +6 -5
  305. package/dist/esm/bcm-popconfirm.entry.js +5 -4
  306. package/dist/esm/bcm-popover.entry.js +87 -37
  307. package/dist/esm/bcm-progress.entry.js +6 -5
  308. package/dist/esm/bcm-radio-group.entry.js +74 -208
  309. package/dist/esm/bcm-radio.entry.js +37 -78
  310. package/dist/esm/bcm-range.entry.js +5 -4
  311. package/dist/esm/bcm-result.entry.js +2 -2
  312. package/dist/esm/bcm-search.entry.js +10 -8
  313. package/dist/esm/bcm-select-group.entry.js +1 -1
  314. package/dist/esm/bcm-select-option.entry.js +1 -1
  315. package/dist/esm/bcm-select.entry.js +4 -4
  316. package/dist/esm/bcm-skeleton.entry.js +5 -3
  317. package/dist/esm/bcm-step.entry.js +6 -5
  318. package/dist/esm/bcm-stepper.entry.js +57 -30
  319. package/dist/esm/bcm-switch.entry.js +7 -6
  320. package/dist/esm/bcm-tab-group.entry.js +87 -99
  321. package/dist/esm/bcm-tab-item-header.entry.js +83 -0
  322. package/dist/esm/bcm-tab-item.entry.js +100 -0
  323. package/dist/esm/bcm-tab-pane.entry.js +2 -2
  324. package/dist/esm/bcm-tab.entry.js +2 -2
  325. package/dist/esm/bcm-table.entry.js +3 -3
  326. package/dist/esm/bcm-tabs-content.entry.js +3 -3
  327. package/dist/esm/bcm-tabs.entry.js +3 -3
  328. package/dist/esm/bcm-tag.entry.js +6 -5
  329. package/dist/esm/bcm-text.entry.js +6 -5
  330. package/dist/esm/bcm-textarea.entry.js +7 -6
  331. package/dist/esm/bcm-time-picker.entry.js +5 -4
  332. package/dist/esm/bcm-timeline-item.entry.js +2 -2
  333. package/dist/esm/bcm-timeline.entry.js +2 -2
  334. package/dist/esm/bcm-treeview-group.entry.js +1 -1
  335. package/dist/esm/bromcom-ui.js +2 -2
  336. package/dist/esm/{caption-template-2ef181f9.js → caption-template-389f5bd6.js} +1 -1
  337. package/dist/esm/color-helper-2b6697b6.js +84 -0
  338. package/dist/esm/{color-helper-b5e9aa56.js → colors-39b87f63.js} +1 -78
  339. package/dist/esm/{element-dragger-7ea06c76.js → element-dragger-89bb52fd.js} +1 -1
  340. package/dist/esm/{generate-1e46485f.js → generate-fbf3c64b.js} +118 -16
  341. package/dist/esm/{index-662f4cf5.js → index-6e2d80d7.js} +1 -1
  342. package/dist/esm/{index-cb0cdd87.js → index-8b349654.js} +1 -1
  343. package/dist/esm/{input-template-844dc974.js → input-template-f5b003c0.js} +3 -3
  344. package/dist/esm/{is-load-decorator-0a59085d.js → is-load-decorator-66e19e04.js} +1 -1
  345. package/dist/esm/{json-parse-decarator-00aa321e.js → json-parse-decarator-f023562b.js} +2 -2
  346. package/dist/esm/{label-template-d8687efd.js → label-template-eed2dd69.js} +2 -2
  347. package/dist/esm/loader.js +2 -2
  348. package/dist/esm/{number-helper-f2cdb65b.js → number-helper-b69dc985.js} +1 -1
  349. package/dist/esm/old-bcm-popover-box.entry.js +7 -6
  350. package/dist/esm/old-bcm-popover.entry.js +4 -3
  351. package/dist/esm/{slot-template-5b2da1d3.js → slot-template-64b41ee5.js} +1 -1
  352. package/dist/esm/{stepper-states-822ebfe9.js → stepper-states-7087f0cb.js} +3 -3
  353. package/dist/esm/{tooltip-helper-aecc821b.js → tooltip-helper-31ca799b.js} +39 -9
  354. package/dist/esm/{utils-b3338faf.js → utils-57652744.js} +1 -1
  355. package/dist/esm/{validators-1b3c085a.js → validators-d3c37e80.js} +1 -1
  356. package/dist/types/components/external-source/bcm-toast-helper.d.ts +12 -0
  357. package/dist/types/components/external-source/test.js/bcm-toast-helper.d.ts +12 -0
  358. package/dist/types/components/molecules/popover/popover.d.ts +10 -1
  359. package/dist/types/components/molecules/radio/{group.d.ts → radio-group.d.ts} +19 -27
  360. package/dist/types/components/molecules/radio/radio.d.ts +5 -11
  361. package/dist/types/components/molecules/search/search.d.ts +1 -0
  362. package/dist/types/components/molecules/stepper/stepper.d.ts +3 -3
  363. package/dist/types/components/molecules/tab-group/tab-group.d.ts +7 -4
  364. package/dist/types/components/molecules/tab-group/tab-item-header.d.ts +13 -0
  365. package/dist/types/components/molecules/tab-group/tab-item.d.ts +17 -0
  366. package/dist/types/components/molecules/tooltip/tooltip.d.ts +10 -1
  367. package/dist/types/components/organism/list/list.d.ts +1 -0
  368. package/dist/types/components/other/input-custom/input-custom.d.ts +20 -0
  369. package/dist/types/components/other/toast/toast.d.ts +25 -0
  370. package/dist/types/components.d.ts +176 -42
  371. package/dist/types/global/helper/index.d.ts +1 -0
  372. package/dist/types/global/helper/toast.d.ts +96 -0
  373. package/dist/types/helper/generate.d.ts +3 -0
  374. package/dist/types/helper/popover-helper.d.ts +13 -3
  375. package/dist/types/helper/tooltip-helper.d.ts +13 -3
  376. package/dist/types/index.d.ts +1 -1
  377. package/dist/types/templates/list-template.d.ts +1 -0
  378. package/helper/index.d.ts +2 -0
  379. package/helper/index.d.ts.map +1 -0
  380. package/helper/index.js +17 -0
  381. package/helper/toast.d.ts +97 -0
  382. package/helper/toast.d.ts.map +1 -0
  383. package/helper/toast.js +115 -0
  384. package/package.json +8 -5
  385. package/dist/bromcom-ui/p-053e9893.js +0 -5
  386. package/dist/bromcom-ui/p-07ebe62b.entry.js +0 -10
  387. package/dist/bromcom-ui/p-08c22a43.entry.js +0 -5
  388. package/dist/bromcom-ui/p-0a6cf248.entry.js +0 -5
  389. package/dist/bromcom-ui/p-15dcafdc.entry.js +0 -5
  390. package/dist/bromcom-ui/p-1683b3c0.entry.js +0 -5
  391. package/dist/bromcom-ui/p-1eaffb4d.entry.js +0 -5
  392. package/dist/bromcom-ui/p-2d75fb9d.entry.js +0 -5
  393. package/dist/bromcom-ui/p-2dc55ebd.entry.js +0 -5
  394. package/dist/bromcom-ui/p-2de23a54.entry.js +0 -5
  395. package/dist/bromcom-ui/p-3118bba1.entry.js +0 -5
  396. package/dist/bromcom-ui/p-3f3bb4b0.entry.js +0 -5
  397. package/dist/bromcom-ui/p-3f4192c8.entry.js +0 -5
  398. package/dist/bromcom-ui/p-40736ee7.entry.js +0 -5
  399. package/dist/bromcom-ui/p-44843df2.entry.js +0 -5
  400. package/dist/bromcom-ui/p-612f6cbc.entry.js +0 -5
  401. package/dist/bromcom-ui/p-69bffd70.entry.js +0 -5
  402. package/dist/bromcom-ui/p-6c77955c.entry.js +0 -5
  403. package/dist/bromcom-ui/p-6f98089c.entry.js +0 -5
  404. package/dist/bromcom-ui/p-6fcb72c6.entry.js +0 -5
  405. package/dist/bromcom-ui/p-73076cdb.entry.js +0 -5
  406. package/dist/bromcom-ui/p-751ee360.entry.js +0 -5
  407. package/dist/bromcom-ui/p-7b7ae0f3.entry.js +0 -5
  408. package/dist/bromcom-ui/p-7c318b12.js +0 -5
  409. package/dist/bromcom-ui/p-7dfb39a6.js +0 -5
  410. package/dist/bromcom-ui/p-7ea09be3.js +0 -5
  411. package/dist/bromcom-ui/p-87de49b4.entry.js +0 -5
  412. package/dist/bromcom-ui/p-8914af05.entry.js +0 -5
  413. package/dist/bromcom-ui/p-918acf86.entry.js +0 -5
  414. package/dist/bromcom-ui/p-962d32ef.entry.js +0 -5
  415. package/dist/bromcom-ui/p-968e2d79.js +0 -5
  416. package/dist/bromcom-ui/p-9d349123.entry.js +0 -5
  417. package/dist/bromcom-ui/p-a3864e85.entry.js +0 -5
  418. package/dist/bromcom-ui/p-a5077dec.entry.js +0 -5
  419. package/dist/bromcom-ui/p-a8d1397d.js +0 -5
  420. package/dist/bromcom-ui/p-adf96c3b.entry.js +0 -5
  421. package/dist/bromcom-ui/p-b00d3d27.entry.js +0 -5
  422. package/dist/bromcom-ui/p-c421b369.entry.js +0 -5
  423. package/dist/bromcom-ui/p-c9e1f317.entry.js +0 -5
  424. package/dist/bromcom-ui/p-cd8998bd.entry.js +0 -5
  425. package/dist/bromcom-ui/p-cf5ad8a8.entry.js +0 -5
  426. package/dist/bromcom-ui/p-d1bd9b8d.entry.js +0 -5
  427. package/dist/bromcom-ui/p-dddbb790.entry.js +0 -5
  428. package/dist/bromcom-ui/p-de332baa.entry.js +0 -5
  429. package/dist/bromcom-ui/p-e258c81c.entry.js +0 -5
  430. package/dist/bromcom-ui/p-e9cea37d.entry.js +0 -5
  431. package/dist/bromcom-ui/p-ea9667ba.entry.js +0 -5
  432. package/dist/bromcom-ui/p-f7e85c95.entry.js +0 -5
  433. package/dist/bromcom-ui/p-f9608226.entry.js +0 -5
  434. package/dist/bromcom-ui/p-fa5118d5.entry.js +0 -5
  435. package/dist/bromcom-ui/p-faee01b2.entry.js +0 -5
  436. package/dist/collection/components/molecules/radio/group.css +0 -802
  437. package/dist/collection/components/molecules/radio/radio.css +0 -1286
  438. package/dist/collection/components/molecules/radio/types.js +0 -30
  439. package/dist/collection/components/molecules/states/radio-group.states.js +0 -107
  440. package/dist/types/components/molecules/radio/types.d.ts +0 -29
  441. package/dist/types/components/molecules/states/radio-group.states.d.ts +0 -48
@@ -2,7 +2,7 @@
2
2
  * Built with Stencil
3
3
  * Copyright (c) Bromcom.
4
4
  */
5
- import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
5
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
6
6
  import { I as IsLoad } from './is-load-decorator.js';
7
7
  import { C as ColorHelper } from './color-helper.js';
8
8
  import './validators.js';
@@ -11,31 +11,39 @@ import './number-helper.js';
11
11
  import { S as StringHelper } from './string-helper.js';
12
12
  import './element-dragger.js';
13
13
  import { a as Bcm } from './bcm.js';
14
+ import { d as delay } from './utils.js';
14
15
  import { F as FloatingUI } from './floating-ui.js';
15
16
 
16
17
  class Popover {
17
- constructor({ content, message, targetId, placement = 'top', color = 'slate-700', trigger = 'none' }) {
18
+ constructor({ content, message, targetId, placement = "top", color = "slate-700", trigger = "none", openDelay = 0, closeDelay = 0, emitShow = () => { }, emitHide = () => { } }) {
19
+ this.destroy = () => {
20
+ this.el = document.getElementById(this.id);
21
+ if (this.el) {
22
+ this.el.remove();
23
+ this.emitHide();
24
+ }
25
+ this.removeListener();
26
+ };
18
27
  this.bgColor = () => ColorHelper.twColor(this.color, 700);
19
28
  this.exepcitonColors = {
20
- white: 'slate-300',
21
- black: 'slate-700',
29
+ white: "slate-300",
30
+ black: "slate-700",
22
31
  };
23
32
  this.target = () => document.getElementById(this.targetId);
24
33
  this.init = () => {
25
- console.log(this.content, this.message);
26
34
  const inner = `<div class="tw-z-[1] tw-rounded tw-py-2 tw-bg-${this.bgColor()}">
27
- ${this.message ? `<div class="tw-font-medium tw-w-full tw-pb-1 tw-px-4">${StringHelper.trim(this.message)}</div>` : ''}
28
- ${this.content ? `<div class="tw-font-normal tw-px-4">${StringHelper.trim(this.content)}</div>` : ''}
35
+ ${this.message ? `<div class="tw-font-medium tw-w-full tw-pb-1 tw-px-4">${StringHelper.trim(this.message)}</div>` : ""}
36
+ ${this.content ? `<div class="tw-font-normal tw-px-4">${StringHelper.trim(this.content)}</div>` : ""}
29
37
  </div>`;
30
- this.el = Generate.createElement('div', {
31
- 'id': `${this.targetId}-popover-box`,
32
- 'class': `
38
+ this.el = Generate.createElement("div", {
39
+ "id": `${this.targetId}-popover-box`,
40
+ "class": `
33
41
  tw-whitespace-normal tw-break-words tw-block tw-font-sans tw-pointer-events-none tw-max-w-[256px] tw-rounded tw-bg-${this.bgColor()} tw-text-white tw-text-3 tw-absolute tw-top-0 tw-left-0 tw-z-tooltip tw-opacity-0 tw-transition-opacity tw-duration-300
34
42
  tw-shadow`,
35
- 'role': 'popover',
36
- 'aria-hidden': 'true',
37
- 'style': `color: ${ColorHelper.twColorReverse(this.bgColor())}`,
38
- 'innerHTML': inner,
43
+ "role": "popover",
44
+ "aria-hidden": "true",
45
+ "style": `color: ${ColorHelper.twColorReverse(this.bgColor())}`,
46
+ "innerHTML": inner,
39
47
  });
40
48
  };
41
49
  this.update = () => {
@@ -46,26 +54,38 @@ class Popover {
46
54
  }
47
55
  };
48
56
  this.listener = () => {
49
- window.addEventListener('resize', this.calculatePosition.bind(this));
50
- window.addEventListener('scroll', this.calculatePosition.bind(this), true);
51
- window.addEventListener('wheel', this.calculatePosition.bind(this));
57
+ window.addEventListener("resize", this.calculatePosition.bind(this));
58
+ window.addEventListener("scroll", this.calculatePosition.bind(this), true);
59
+ window.addEventListener("wheel", this.calculatePosition.bind(this));
52
60
  if (this.trigger && this.target()) {
53
61
  switch (this.trigger) {
54
- case 'click':
55
- this.target().addEventListener('click', this.toggle.bind(this));
62
+ case "click":
63
+ this.target().addEventListener("click", this.toggle.bind(this));
56
64
  break;
57
- case 'hover':
58
- this.target().addEventListener('mouseenter', this.show.bind(this));
59
- this.target().addEventListener('mouseleave', this.hide.bind(this));
65
+ case "hover":
66
+ this.target().addEventListener("mouseenter", this.show.bind(this));
67
+ this.target().addEventListener("mouseleave", this.hide.bind(this));
60
68
  break;
61
- case 'focus':
62
- this.target().addEventListener('focus', this.show.bind(this), true);
63
- this.target().addEventListener('blur', this.hide.bind(this), true);
69
+ case "focus":
70
+ this.target().addEventListener("focus", this.show.bind(this), true);
71
+ this.target().addEventListener("blur", this.hide.bind(this), true);
64
72
  break;
65
73
  }
66
74
  }
67
75
  this.calculatePosition();
68
76
  };
77
+ this.removeListener = () => {
78
+ window.removeEventListener("resize", this.calculatePosition.bind(this));
79
+ window.removeEventListener("scroll", this.calculatePosition.bind(this), true);
80
+ window.removeEventListener("wheel", this.calculatePosition.bind(this));
81
+ if (this.target()) {
82
+ this.target().removeEventListener("click", this.toggle.bind(this));
83
+ this.target().removeEventListener("mouseenter", this.show.bind(this));
84
+ this.target().removeEventListener("mouseleave", this.hide.bind(this));
85
+ this.target().removeEventListener("focus", this.show.bind(this), true);
86
+ this.target().removeEventListener("blur", this.hide.bind(this), true);
87
+ }
88
+ };
69
89
  this.calculatePosition = () => {
70
90
  this.el = document.getElementById(this.id);
71
91
  if (this.el) {
@@ -79,19 +99,23 @@ class Popover {
79
99
  });
80
100
  }
81
101
  };
82
- this.show = () => {
102
+ this.show = async () => {
83
103
  if (this.message) {
84
104
  this.init();
105
+ await delay(this.openDelay);
85
106
  this.calculatePosition();
107
+ this.emitShow();
86
108
  }
87
109
  else {
88
110
  this.hide();
89
111
  }
90
112
  };
91
- this.hide = () => {
113
+ this.hide = async () => {
92
114
  this.el = document.getElementById(this.id);
93
115
  if (this.el) {
116
+ await delay(this.closeDelay);
94
117
  this.el.remove();
118
+ this.emitHide();
95
119
  }
96
120
  };
97
121
  this.toggle = () => {
@@ -109,7 +133,12 @@ class Popover {
109
133
  this.placement = placement;
110
134
  this.color = color;
111
135
  this.trigger = trigger;
112
- this.id = targetId + '-popover-box';
136
+ this.id = targetId + "-popover-box";
137
+ this.openDelay = openDelay;
138
+ this.closeDelay = closeDelay;
139
+ this.emitShow = emitShow;
140
+ this.emitHide = emitHide;
141
+ Generate.observeElementRemoval(document.getElementById(this.targetId), this.destroy.bind(this));
113
142
  }
114
143
  }
115
144
 
@@ -127,6 +156,8 @@ const BcmPopover$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
127
156
  constructor() {
128
157
  super();
129
158
  this.__registerHost();
159
+ this.bcmPopoverShow = createEvent(this, "bcmPopoverShow", 7);
160
+ this.bcmPopoverHide = createEvent(this, "bcmPopoverHide", 7);
130
161
  this._id = Generate.UID();
131
162
  this.message = "";
132
163
  this.content = "";
@@ -134,13 +165,29 @@ const BcmPopover$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
134
165
  this.trigger = Bcm.TriggerType.click;
135
166
  this.open = false;
136
167
  this.color = "white";
168
+ this.targetId = undefined;
169
+ this.openDelay = 0;
170
+ this.closeDelay = 0;
171
+ this.popover = undefined;
172
+ }
173
+ emitShow() {
174
+ this.bcmPopoverShow.emit();
175
+ }
176
+ emitHide() {
177
+ this.bcmPopoverHide.emit();
178
+ }
179
+ componentWillLoad() {
137
180
  this.popover = new Popover({
138
- targetId: this._id,
181
+ targetId: this.targetId || this._id,
139
182
  content: this.content,
140
183
  message: this.message,
141
184
  placement: this.placement,
142
185
  color: this.color,
143
186
  trigger: this.trigger,
187
+ openDelay: this.openDelay,
188
+ closeDelay: this.closeDelay,
189
+ emitShow: () => this.emitShow(),
190
+ emitHide: () => this.emitHide(),
144
191
  });
145
192
  }
146
193
  componentDidLoad() {
@@ -155,6 +202,9 @@ const BcmPopover$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
155
202
  this.popover.trigger = trigger;
156
203
  this.popover.update();
157
204
  }
205
+ disconnectedCallback() {
206
+ this.popover.destroy();
207
+ }
158
208
  async show() {
159
209
  this.popover.show();
160
210
  }
@@ -165,7 +215,7 @@ const BcmPopover$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
165
215
  this.popover.toggle();
166
216
  }
167
217
  render() {
168
- return (h(Host, { "aria-describedby": "popover", tabindex: "-1", class: "tw-inline-flex tw-h-fit tw-w-fit" }, h("slot", null)));
218
+ return (h(Host, { "aria-describedby": "popover", class: "tw-inline-flex tw-h-fit tw-w-fit" }, h("slot", null)));
169
219
  }
170
220
  get el() { return this; }
171
221
  }, [4, "bcm-popover", {
@@ -176,6 +226,9 @@ const BcmPopover$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
176
226
  "trigger": [1],
177
227
  "open": [1028],
178
228
  "color": [1],
229
+ "targetId": [1, "target-id"],
230
+ "openDelay": [2, "open-delay"],
231
+ "closeDelay": [2, "close-delay"],
179
232
  "popover": [32],
180
233
  "show": [64],
181
234
  "hide": [64],
@@ -3,121 +3,24 @@
3
3
  * Copyright (c) Bromcom.
4
4
  */
5
5
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
6
+ import './color-helper.js';
7
+ import './validators.js';
8
+ import { G as Generate } from './generate.js';
9
+ import './number-helper.js';
10
+ import './string-helper.js';
11
+ import './element-dragger.js';
12
+ import { d as delay } from './utils.js';
13
+ import { a as Bcm } from './bcm.js';
14
+ import { C as CaptionTemplate } from './caption-template.js';
6
15
  import { c as classnames } from './index2.js';
7
- import { s as snq, G as Generate } from './generate.js';
16
+ import './types.js';
17
+ import './types2.js';
8
18
  import { I as IsLoad } from './is-load-decorator.js';
9
- import { B as Bcm } from './bcm.js';
10
- import { C as CaptionTemplate } from './caption-template.js';
11
- import { d as delay, g as getChildElements } from './utils.js';
12
- import { c as createStore } from './index3.js';
13
- import { S as StringHelper } from './string-helper.js';
14
19
  import { d as defineCustomElement$5 } from './icon.js';
15
20
  import { d as defineCustomElement$4 } from './label.js';
16
21
  import { d as defineCustomElement$3 } from './radio.js';
17
22
  import { d as defineCustomElement$2 } from './tooltip.js';
18
23
 
19
- const { state, onChange } = createStore({
20
- group: new Map(),
21
- onChange: {},
22
- });
23
- const setValue = async ({ fullWidth, optionType, buttonStyle, size, disabled, defaultCheckedItems, el, id, label, required, captionType, hidden, direction, childs, gap, name, noCaption, }) => {
24
- if (el) {
25
- state.group.set(id, {
26
- fullWidth,
27
- optionType,
28
- buttonStyle,
29
- size,
30
- disabled,
31
- defaultCheckedItems,
32
- label,
33
- required,
34
- captionType,
35
- hidden,
36
- direction,
37
- gap,
38
- noCaption,
39
- name,
40
- childs: await childs.map(child => {
41
- fullWidth && (child.style.flex = fullWidth == 'flex' ? 'auto' : '100%');
42
- optionType && (child.optionType = optionType);
43
- buttonStyle && (child.buttonStyle = buttonStyle);
44
- size && (child.size = size);
45
- defaultCheckedItems && defaultCheckedItems.find(e => e === child.name) && (child.checked = true);
46
- child.noCaption = noCaption;
47
- return {
48
- id: child.id || Generate.UID(),
49
- checked: child.checked,
50
- name: name,
51
- value: child.value,
52
- size: child.size,
53
- buttonStyle: child.buttonStyle,
54
- optionType: child.optionType,
55
- style: child.style,
56
- noCaption: child.noCaption,
57
- color: child.color,
58
- disabled: child.disabled,
59
- label: child.label || child.name,
60
- slot: child.slot || child.textContent,
61
- required,
62
- captionType,
63
- hidden: child.hidden
64
- };
65
- }),
66
- });
67
- }
68
- };
69
- const getProperty = id => {
70
- return snq(() => state.group.get(id), {});
71
- };
72
- const getValue = id => {
73
- const group = getProperty(id);
74
- let value = null;
75
- group.childs.map(child => {
76
- child.checked == true && (value = child.value || child.slot);
77
- });
78
- return value && StringHelper.trim(value);
79
- };
80
- const setClear = id => {
81
- getProperty(id).childs.forEach(child => {
82
- child.checked = false;
83
- });
84
- };
85
- const setCheckedItem = (id, itemId, checked) => {
86
- const childs = getProperty(id).childs;
87
- if (childs && childs.length > 0) {
88
- childs.forEach(child => {
89
- child.checked = child.id == itemId || child.value == itemId ? checked : false;
90
- });
91
- }
92
- };
93
- const resetCaption = id => {
94
- const noCaption = getProperty(id).noCaption;
95
- getProperty(id).childs.forEach(child => {
96
- child.resetCaption();
97
- child.noCaption = noCaption;
98
- });
99
- };
100
- const removeState = id => {
101
- return Promise.resolve(state.group.delete(id));
102
- };
103
- onChange('onChange', (obj) => {
104
- getProperty(obj.id).childs.map(child => {
105
- child.checked = child.id === obj.childId;
106
- });
107
- });
108
- const radioGroupState = {
109
- setValue,
110
- getValue,
111
- setCheckedItem,
112
- getProperty,
113
- setClear,
114
- removeState,
115
- resetCaption,
116
- state,
117
- };
118
-
119
- const groupCss = "@import url(\"https://fonts.googleapis.com/css?family=Roboto:400,500\");@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@200;400;500;600&display=swap\"); @import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@200;400;500;600&display=swap\"); .size-1{font-size:12px;line-height:20px}.size-2{font-size:14px;line-height:22px}.size-3{font-size:16px;line-height:24px}.size-4{font-size:20px;line-height:28px}.size-5{font-size:24px;line-height:32px}.size-6{font-size:30px;line-height:38px}.size-7{font-size:38px;line-height:46px}.size-8{font-size:46px;line-height:54px}.size-9{font-size:56px;line-height:64px}.weight-regular{font-weight:400}.weight-semibold{font-weight:500}.input-size-large{height:40px}.input-size-medium{height:32px}.input-size-small{height:24px}.resize-none textarea{resize:none}.resize-vertical textarea{resize:vertical}.resize-auto textarea{height:auto;resize:none}.textarea-size-large{padding:4px 0 0 4px;min-height:40px}.textarea-size-large .bcm-input-element{min-height:calc((40px - 8px) + 2px)}.textarea-size-large .input-clear-button{height:calc( 40px - 16px );top:8px;padding:0;margin-right:8px}.textarea-size-medium{padding:4px 0 0 4px;min-height:32px}.textarea-size-medium .bcm-input-element{min-height:calc((32px - 8px) + 2px)}.textarea-size-medium .input-clear-button{height:calc( 32px - 16px );top:8px;padding:0;margin-right:8px}.textarea-size-small{padding:0px 0 0 4px;min-height:24px}.textarea-size-small .bcm-input-element{min-height:calc((24px - 8px) + 2px)}.textarea-size-small .input-clear-button{height:calc( 24px - 16px );top:8px;padding:0;margin-right:8px}:root,::after,::before{--bcm-new-ds-color-inherit:inherit;--bcm-new-ds-color-current:currentColor;--bcm-new-ds-color-transparent:transparent;--bcm-new-ds-color-black:#000;--bcm-new-ds-color-white:#fff;--bcm-new-ds-color-slate:#64748b;--bcm-new-ds-color-slate-50:#f8fafc;--bcm-new-ds-color-slate-100:#f1f5f9;--bcm-new-ds-color-slate-200:#e2e8f0;--bcm-new-ds-color-slate-300:#cbd5e1;--bcm-new-ds-color-slate-400:#94a3b8;--bcm-new-ds-color-slate-500:#64748b;--bcm-new-ds-color-slate-600:#475569;--bcm-new-ds-color-slate-700:#334155;--bcm-new-ds-color-slate-800:#1e293b;--bcm-new-ds-color-slate-900:#0f172a;--bcm-new-ds-color-gray:#6b7280;--bcm-new-ds-color-gray-50:#f9fafb;--bcm-new-ds-color-gray-100:#f3f4f6;--bcm-new-ds-color-gray-200:#e5e7eb;--bcm-new-ds-color-gray-300:#d1d5db;--bcm-new-ds-color-gray-400:#9ca3af;--bcm-new-ds-color-gray-500:#6b7280;--bcm-new-ds-color-gray-600:#4b5563;--bcm-new-ds-color-gray-700:#374151;--bcm-new-ds-color-gray-800:#1f2937;--bcm-new-ds-color-gray-900:#111827;--bcm-new-ds-color-zinc:#71717a;--bcm-new-ds-color-zinc-50:#fafafa;--bcm-new-ds-color-zinc-100:#f4f4f5;--bcm-new-ds-color-zinc-200:#e4e4e7;--bcm-new-ds-color-zinc-300:#d4d4d8;--bcm-new-ds-color-zinc-400:#a1a1aa;--bcm-new-ds-color-zinc-500:#71717a;--bcm-new-ds-color-zinc-600:#52525b;--bcm-new-ds-color-zinc-700:#3f3f46;--bcm-new-ds-color-zinc-800:#27272a;--bcm-new-ds-color-zinc-900:#18181b;--bcm-new-ds-color-neutral:#737373;--bcm-new-ds-color-neutral-50:#fafafa;--bcm-new-ds-color-neutral-100:#f5f5f5;--bcm-new-ds-color-neutral-200:#e5e5e5;--bcm-new-ds-color-neutral-300:#d4d4d4;--bcm-new-ds-color-neutral-400:#a3a3a3;--bcm-new-ds-color-neutral-500:#737373;--bcm-new-ds-color-neutral-600:#525252;--bcm-new-ds-color-neutral-700:#404040;--bcm-new-ds-color-neutral-800:#262626;--bcm-new-ds-color-neutral-900:#171717;--bcm-new-ds-color-stone:#78716c;--bcm-new-ds-color-stone-50:#fafaf9;--bcm-new-ds-color-stone-100:#f5f5f4;--bcm-new-ds-color-stone-200:#e7e5e4;--bcm-new-ds-color-stone-300:#d6d3d1;--bcm-new-ds-color-stone-400:#a8a29e;--bcm-new-ds-color-stone-500:#78716c;--bcm-new-ds-color-stone-600:#57534e;--bcm-new-ds-color-stone-700:#44403c;--bcm-new-ds-color-stone-800:#292524;--bcm-new-ds-color-stone-900:#1c1917;--bcm-new-ds-color-red:#ef4444;--bcm-new-ds-color-red-50:#fef2f2;--bcm-new-ds-color-red-100:#fee2e2;--bcm-new-ds-color-red-200:#fecaca;--bcm-new-ds-color-red-300:#fca5a5;--bcm-new-ds-color-red-400:#f87171;--bcm-new-ds-color-red-500:#ef4444;--bcm-new-ds-color-red-600:#dc2626;--bcm-new-ds-color-red-700:#b91c1c;--bcm-new-ds-color-red-800:#991b1b;--bcm-new-ds-color-red-900:#7f1d1d;--bcm-new-ds-color-orange:#f97316;--bcm-new-ds-color-orange-50:#fff7ed;--bcm-new-ds-color-orange-100:#ffedd5;--bcm-new-ds-color-orange-200:#fed7aa;--bcm-new-ds-color-orange-300:#fdba74;--bcm-new-ds-color-orange-400:#fb923c;--bcm-new-ds-color-orange-500:#f97316;--bcm-new-ds-color-orange-600:#ea580c;--bcm-new-ds-color-orange-700:#c2410c;--bcm-new-ds-color-orange-800:#9a3412;--bcm-new-ds-color-orange-900:#7c2d12;--bcm-new-ds-color-amber:#f59e0b;--bcm-new-ds-color-amber-50:#fffbeb;--bcm-new-ds-color-amber-100:#fef3c7;--bcm-new-ds-color-amber-200:#fde68a;--bcm-new-ds-color-amber-300:#fcd34d;--bcm-new-ds-color-amber-400:#fbbf24;--bcm-new-ds-color-amber-500:#f59e0b;--bcm-new-ds-color-amber-600:#d97706;--bcm-new-ds-color-amber-700:#b45309;--bcm-new-ds-color-amber-800:#92400e;--bcm-new-ds-color-amber-900:#78350f;--bcm-new-ds-color-yellow:#eab308;--bcm-new-ds-color-yellow-50:#fefce8;--bcm-new-ds-color-yellow-100:#fef9c3;--bcm-new-ds-color-yellow-200:#fef08a;--bcm-new-ds-color-yellow-300:#fde047;--bcm-new-ds-color-yellow-400:#facc15;--bcm-new-ds-color-yellow-500:#eab308;--bcm-new-ds-color-yellow-600:#ca8a04;--bcm-new-ds-color-yellow-700:#a16207;--bcm-new-ds-color-yellow-800:#854d0e;--bcm-new-ds-color-yellow-900:#713f12;--bcm-new-ds-color-lime:#84cc16;--bcm-new-ds-color-lime-50:#f7fee7;--bcm-new-ds-color-lime-100:#ecfccb;--bcm-new-ds-color-lime-200:#d9f99d;--bcm-new-ds-color-lime-300:#bef264;--bcm-new-ds-color-lime-400:#a3e635;--bcm-new-ds-color-lime-500:#84cc16;--bcm-new-ds-color-lime-600:#65a30d;--bcm-new-ds-color-lime-700:#4d7c0f;--bcm-new-ds-color-lime-800:#3f6212;--bcm-new-ds-color-lime-900:#365314;--bcm-new-ds-color-green:#22c55e;--bcm-new-ds-color-green-50:#f0fdf4;--bcm-new-ds-color-green-100:#dcfce7;--bcm-new-ds-color-green-200:#bbf7d0;--bcm-new-ds-color-green-300:#86efac;--bcm-new-ds-color-green-400:#4ade80;--bcm-new-ds-color-green-500:#22c55e;--bcm-new-ds-color-green-600:#16a34a;--bcm-new-ds-color-green-700:#15803d;--bcm-new-ds-color-green-800:#166534;--bcm-new-ds-color-green-900:#14532d;--bcm-new-ds-color-emerald:#10b981;--bcm-new-ds-color-emerald-50:#ecfdf5;--bcm-new-ds-color-emerald-100:#d1fae5;--bcm-new-ds-color-emerald-200:#a7f3d0;--bcm-new-ds-color-emerald-300:#6ee7b7;--bcm-new-ds-color-emerald-400:#34d399;--bcm-new-ds-color-emerald-500:#10b981;--bcm-new-ds-color-emerald-600:#059669;--bcm-new-ds-color-emerald-700:#047857;--bcm-new-ds-color-emerald-800:#065f46;--bcm-new-ds-color-emerald-900:#064e3b;--bcm-new-ds-color-teal:#14b8a6;--bcm-new-ds-color-teal-50:#f0fdfa;--bcm-new-ds-color-teal-100:#ccfbf1;--bcm-new-ds-color-teal-200:#99f6e4;--bcm-new-ds-color-teal-300:#5eead4;--bcm-new-ds-color-teal-400:#2dd4bf;--bcm-new-ds-color-teal-500:#14b8a6;--bcm-new-ds-color-teal-600:#0d9488;--bcm-new-ds-color-teal-700:#0f766e;--bcm-new-ds-color-teal-800:#115e59;--bcm-new-ds-color-teal-900:#134e4a;--bcm-new-ds-color-cyan:#06b6d4;--bcm-new-ds-color-cyan-50:#ecfeff;--bcm-new-ds-color-cyan-100:#cffafe;--bcm-new-ds-color-cyan-200:#a5f3fc;--bcm-new-ds-color-cyan-300:#67e8f9;--bcm-new-ds-color-cyan-400:#22d3ee;--bcm-new-ds-color-cyan-500:#06b6d4;--bcm-new-ds-color-cyan-600:#0891b2;--bcm-new-ds-color-cyan-700:#0e7490;--bcm-new-ds-color-cyan-800:#155e75;--bcm-new-ds-color-cyan-900:#164e63;--bcm-new-ds-color-sky:#0ea5e9;--bcm-new-ds-color-sky-50:#f0f9ff;--bcm-new-ds-color-sky-100:#e0f2fe;--bcm-new-ds-color-sky-200:#bae6fd;--bcm-new-ds-color-sky-300:#7dd3fc;--bcm-new-ds-color-sky-400:#38bdf8;--bcm-new-ds-color-sky-500:#0ea5e9;--bcm-new-ds-color-sky-600:#0284c7;--bcm-new-ds-color-sky-700:#0369a1;--bcm-new-ds-color-sky-800:#075985;--bcm-new-ds-color-sky-900:#0c4a6e;--bcm-new-ds-color-blue:#3b82f6;--bcm-new-ds-color-blue-50:#eff6ff;--bcm-new-ds-color-blue-100:#dbeafe;--bcm-new-ds-color-blue-200:#bfdbfe;--bcm-new-ds-color-blue-300:#93c5fd;--bcm-new-ds-color-blue-400:#60a5fa;--bcm-new-ds-color-blue-500:#3b82f6;--bcm-new-ds-color-blue-600:#2563eb;--bcm-new-ds-color-blue-700:#1d4ed8;--bcm-new-ds-color-blue-800:#1e40af;--bcm-new-ds-color-blue-900:#1e3a8a;--bcm-new-ds-color-indigo:#6366f1;--bcm-new-ds-color-indigo-50:#eef2ff;--bcm-new-ds-color-indigo-100:#e0e7ff;--bcm-new-ds-color-indigo-200:#c7d2fe;--bcm-new-ds-color-indigo-300:#a5b4fc;--bcm-new-ds-color-indigo-400:#818cf8;--bcm-new-ds-color-indigo-500:#6366f1;--bcm-new-ds-color-indigo-600:#4f46e5;--bcm-new-ds-color-indigo-700:#4338ca;--bcm-new-ds-color-indigo-800:#3730a3;--bcm-new-ds-color-indigo-900:#312e81;--bcm-new-ds-color-violet:#8b5cf6;--bcm-new-ds-color-violet-50:#f5f3ff;--bcm-new-ds-color-violet-100:#ede9fe;--bcm-new-ds-color-violet-200:#ddd6fe;--bcm-new-ds-color-violet-300:#c4b5fd;--bcm-new-ds-color-violet-400:#a78bfa;--bcm-new-ds-color-violet-500:#8b5cf6;--bcm-new-ds-color-violet-600:#7c3aed;--bcm-new-ds-color-violet-700:#6d28d9;--bcm-new-ds-color-violet-800:#5b21b6;--bcm-new-ds-color-violet-900:#4c1d95;--bcm-new-ds-color-purple:#a855f7;--bcm-new-ds-color-purple-50:#faf5ff;--bcm-new-ds-color-purple-100:#f3e8ff;--bcm-new-ds-color-purple-200:#e9d5ff;--bcm-new-ds-color-purple-300:#d8b4fe;--bcm-new-ds-color-purple-400:#c084fc;--bcm-new-ds-color-purple-500:#a855f7;--bcm-new-ds-color-purple-600:#9333ea;--bcm-new-ds-color-purple-700:#7e22ce;--bcm-new-ds-color-purple-800:#6b21a8;--bcm-new-ds-color-purple-900:#581c87;--bcm-new-ds-color-fuchsia:#d946ef;--bcm-new-ds-color-fuchsia-50:#fdf4ff;--bcm-new-ds-color-fuchsia-100:#fae8ff;--bcm-new-ds-color-fuchsia-200:#f5d0fe;--bcm-new-ds-color-fuchsia-300:#f0abfc;--bcm-new-ds-color-fuchsia-400:#e879f9;--bcm-new-ds-color-fuchsia-500:#d946ef;--bcm-new-ds-color-fuchsia-600:#c026d3;--bcm-new-ds-color-fuchsia-700:#a21caf;--bcm-new-ds-color-fuchsia-800:#86198f;--bcm-new-ds-color-fuchsia-900:#701a75;--bcm-new-ds-color-pink:#ec4899;--bcm-new-ds-color-pink-50:#fdf2f8;--bcm-new-ds-color-pink-100:#fce7f3;--bcm-new-ds-color-pink-200:#fbcfe8;--bcm-new-ds-color-pink-300:#f9a8d4;--bcm-new-ds-color-pink-400:#f472b6;--bcm-new-ds-color-pink-500:#ec4899;--bcm-new-ds-color-pink-600:#db2777;--bcm-new-ds-color-pink-700:#be185d;--bcm-new-ds-color-pink-800:#9d174d;--bcm-new-ds-color-pink-900:#831843;--bcm-new-ds-color-rose:#f43f5e;--bcm-new-ds-color-rose-50:#fff1f2;--bcm-new-ds-color-rose-100:#ffe4e6;--bcm-new-ds-color-rose-200:#fecdd3;--bcm-new-ds-color-rose-300:#fda4af;--bcm-new-ds-color-rose-400:#fb7185;--bcm-new-ds-color-rose-500:#f43f5e;--bcm-new-ds-color-rose-600:#e11d48;--bcm-new-ds-color-rose-700:#be123c;--bcm-new-ds-color-rose-800:#9f1239;--bcm-new-ds-color-rose-900:#881337}*{box-sizing:border-box}.bcm-caption-area{font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400;font-size:12px;line-height:calc(12px + 8px);color:var(--bcm-new-ds-color-slate-400);display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;flex-wrap:nowrap;margin-top:2px}.bcm-caption-area__text{color:var(--bcm-new-ds-color-slate-400)}.bcm-caption-area__text.default{color:var(--bcm-new-ds-color-slate-400)}.bcm-caption-area__text.info{color:var(--bcm-new-ds-color-blue-500)}.bcm-caption-area__text.success{color:var(--bcm-new-ds-color-emerald-500)}.bcm-caption-area__text.warning{color:var(--bcm-new-ds-color-amber-500)}.bcm-caption-area__text.error{color:var(--bcm-new-ds-color-red-500)}.bcm-caption-area__size-small{font-size:10px;line-height:calc(10px + 8px);min-height:calc(10px + 8px)}.bcm-caption-area__size-medium{font-size:12px;line-height:calc(12px + 8px);min-height:calc(12px + 8px)}.bcm-caption-area__size-large{font-size:14px;line-height:calc(14px + 8px);min-height:calc(14px + 8px)}:root,::after,::before{--bcm-new-ds-color-inherit:inherit;--bcm-new-ds-color-current:currentColor;--bcm-new-ds-color-transparent:transparent;--bcm-new-ds-color-black:#000;--bcm-new-ds-color-white:#fff;--bcm-new-ds-color-slate:#64748b;--bcm-new-ds-color-slate-50:#f8fafc;--bcm-new-ds-color-slate-100:#f1f5f9;--bcm-new-ds-color-slate-200:#e2e8f0;--bcm-new-ds-color-slate-300:#cbd5e1;--bcm-new-ds-color-slate-400:#94a3b8;--bcm-new-ds-color-slate-500:#64748b;--bcm-new-ds-color-slate-600:#475569;--bcm-new-ds-color-slate-700:#334155;--bcm-new-ds-color-slate-800:#1e293b;--bcm-new-ds-color-slate-900:#0f172a;--bcm-new-ds-color-gray:#6b7280;--bcm-new-ds-color-gray-50:#f9fafb;--bcm-new-ds-color-gray-100:#f3f4f6;--bcm-new-ds-color-gray-200:#e5e7eb;--bcm-new-ds-color-gray-300:#d1d5db;--bcm-new-ds-color-gray-400:#9ca3af;--bcm-new-ds-color-gray-500:#6b7280;--bcm-new-ds-color-gray-600:#4b5563;--bcm-new-ds-color-gray-700:#374151;--bcm-new-ds-color-gray-800:#1f2937;--bcm-new-ds-color-gray-900:#111827;--bcm-new-ds-color-zinc:#71717a;--bcm-new-ds-color-zinc-50:#fafafa;--bcm-new-ds-color-zinc-100:#f4f4f5;--bcm-new-ds-color-zinc-200:#e4e4e7;--bcm-new-ds-color-zinc-300:#d4d4d8;--bcm-new-ds-color-zinc-400:#a1a1aa;--bcm-new-ds-color-zinc-500:#71717a;--bcm-new-ds-color-zinc-600:#52525b;--bcm-new-ds-color-zinc-700:#3f3f46;--bcm-new-ds-color-zinc-800:#27272a;--bcm-new-ds-color-zinc-900:#18181b;--bcm-new-ds-color-neutral:#737373;--bcm-new-ds-color-neutral-50:#fafafa;--bcm-new-ds-color-neutral-100:#f5f5f5;--bcm-new-ds-color-neutral-200:#e5e5e5;--bcm-new-ds-color-neutral-300:#d4d4d4;--bcm-new-ds-color-neutral-400:#a3a3a3;--bcm-new-ds-color-neutral-500:#737373;--bcm-new-ds-color-neutral-600:#525252;--bcm-new-ds-color-neutral-700:#404040;--bcm-new-ds-color-neutral-800:#262626;--bcm-new-ds-color-neutral-900:#171717;--bcm-new-ds-color-stone:#78716c;--bcm-new-ds-color-stone-50:#fafaf9;--bcm-new-ds-color-stone-100:#f5f5f4;--bcm-new-ds-color-stone-200:#e7e5e4;--bcm-new-ds-color-stone-300:#d6d3d1;--bcm-new-ds-color-stone-400:#a8a29e;--bcm-new-ds-color-stone-500:#78716c;--bcm-new-ds-color-stone-600:#57534e;--bcm-new-ds-color-stone-700:#44403c;--bcm-new-ds-color-stone-800:#292524;--bcm-new-ds-color-stone-900:#1c1917;--bcm-new-ds-color-red:#ef4444;--bcm-new-ds-color-red-50:#fef2f2;--bcm-new-ds-color-red-100:#fee2e2;--bcm-new-ds-color-red-200:#fecaca;--bcm-new-ds-color-red-300:#fca5a5;--bcm-new-ds-color-red-400:#f87171;--bcm-new-ds-color-red-500:#ef4444;--bcm-new-ds-color-red-600:#dc2626;--bcm-new-ds-color-red-700:#b91c1c;--bcm-new-ds-color-red-800:#991b1b;--bcm-new-ds-color-red-900:#7f1d1d;--bcm-new-ds-color-orange:#f97316;--bcm-new-ds-color-orange-50:#fff7ed;--bcm-new-ds-color-orange-100:#ffedd5;--bcm-new-ds-color-orange-200:#fed7aa;--bcm-new-ds-color-orange-300:#fdba74;--bcm-new-ds-color-orange-400:#fb923c;--bcm-new-ds-color-orange-500:#f97316;--bcm-new-ds-color-orange-600:#ea580c;--bcm-new-ds-color-orange-700:#c2410c;--bcm-new-ds-color-orange-800:#9a3412;--bcm-new-ds-color-orange-900:#7c2d12;--bcm-new-ds-color-amber:#f59e0b;--bcm-new-ds-color-amber-50:#fffbeb;--bcm-new-ds-color-amber-100:#fef3c7;--bcm-new-ds-color-amber-200:#fde68a;--bcm-new-ds-color-amber-300:#fcd34d;--bcm-new-ds-color-amber-400:#fbbf24;--bcm-new-ds-color-amber-500:#f59e0b;--bcm-new-ds-color-amber-600:#d97706;--bcm-new-ds-color-amber-700:#b45309;--bcm-new-ds-color-amber-800:#92400e;--bcm-new-ds-color-amber-900:#78350f;--bcm-new-ds-color-yellow:#eab308;--bcm-new-ds-color-yellow-50:#fefce8;--bcm-new-ds-color-yellow-100:#fef9c3;--bcm-new-ds-color-yellow-200:#fef08a;--bcm-new-ds-color-yellow-300:#fde047;--bcm-new-ds-color-yellow-400:#facc15;--bcm-new-ds-color-yellow-500:#eab308;--bcm-new-ds-color-yellow-600:#ca8a04;--bcm-new-ds-color-yellow-700:#a16207;--bcm-new-ds-color-yellow-800:#854d0e;--bcm-new-ds-color-yellow-900:#713f12;--bcm-new-ds-color-lime:#84cc16;--bcm-new-ds-color-lime-50:#f7fee7;--bcm-new-ds-color-lime-100:#ecfccb;--bcm-new-ds-color-lime-200:#d9f99d;--bcm-new-ds-color-lime-300:#bef264;--bcm-new-ds-color-lime-400:#a3e635;--bcm-new-ds-color-lime-500:#84cc16;--bcm-new-ds-color-lime-600:#65a30d;--bcm-new-ds-color-lime-700:#4d7c0f;--bcm-new-ds-color-lime-800:#3f6212;--bcm-new-ds-color-lime-900:#365314;--bcm-new-ds-color-green:#22c55e;--bcm-new-ds-color-green-50:#f0fdf4;--bcm-new-ds-color-green-100:#dcfce7;--bcm-new-ds-color-green-200:#bbf7d0;--bcm-new-ds-color-green-300:#86efac;--bcm-new-ds-color-green-400:#4ade80;--bcm-new-ds-color-green-500:#22c55e;--bcm-new-ds-color-green-600:#16a34a;--bcm-new-ds-color-green-700:#15803d;--bcm-new-ds-color-green-800:#166534;--bcm-new-ds-color-green-900:#14532d;--bcm-new-ds-color-emerald:#10b981;--bcm-new-ds-color-emerald-50:#ecfdf5;--bcm-new-ds-color-emerald-100:#d1fae5;--bcm-new-ds-color-emerald-200:#a7f3d0;--bcm-new-ds-color-emerald-300:#6ee7b7;--bcm-new-ds-color-emerald-400:#34d399;--bcm-new-ds-color-emerald-500:#10b981;--bcm-new-ds-color-emerald-600:#059669;--bcm-new-ds-color-emerald-700:#047857;--bcm-new-ds-color-emerald-800:#065f46;--bcm-new-ds-color-emerald-900:#064e3b;--bcm-new-ds-color-teal:#14b8a6;--bcm-new-ds-color-teal-50:#f0fdfa;--bcm-new-ds-color-teal-100:#ccfbf1;--bcm-new-ds-color-teal-200:#99f6e4;--bcm-new-ds-color-teal-300:#5eead4;--bcm-new-ds-color-teal-400:#2dd4bf;--bcm-new-ds-color-teal-500:#14b8a6;--bcm-new-ds-color-teal-600:#0d9488;--bcm-new-ds-color-teal-700:#0f766e;--bcm-new-ds-color-teal-800:#115e59;--bcm-new-ds-color-teal-900:#134e4a;--bcm-new-ds-color-cyan:#06b6d4;--bcm-new-ds-color-cyan-50:#ecfeff;--bcm-new-ds-color-cyan-100:#cffafe;--bcm-new-ds-color-cyan-200:#a5f3fc;--bcm-new-ds-color-cyan-300:#67e8f9;--bcm-new-ds-color-cyan-400:#22d3ee;--bcm-new-ds-color-cyan-500:#06b6d4;--bcm-new-ds-color-cyan-600:#0891b2;--bcm-new-ds-color-cyan-700:#0e7490;--bcm-new-ds-color-cyan-800:#155e75;--bcm-new-ds-color-cyan-900:#164e63;--bcm-new-ds-color-sky:#0ea5e9;--bcm-new-ds-color-sky-50:#f0f9ff;--bcm-new-ds-color-sky-100:#e0f2fe;--bcm-new-ds-color-sky-200:#bae6fd;--bcm-new-ds-color-sky-300:#7dd3fc;--bcm-new-ds-color-sky-400:#38bdf8;--bcm-new-ds-color-sky-500:#0ea5e9;--bcm-new-ds-color-sky-600:#0284c7;--bcm-new-ds-color-sky-700:#0369a1;--bcm-new-ds-color-sky-800:#075985;--bcm-new-ds-color-sky-900:#0c4a6e;--bcm-new-ds-color-blue:#3b82f6;--bcm-new-ds-color-blue-50:#eff6ff;--bcm-new-ds-color-blue-100:#dbeafe;--bcm-new-ds-color-blue-200:#bfdbfe;--bcm-new-ds-color-blue-300:#93c5fd;--bcm-new-ds-color-blue-400:#60a5fa;--bcm-new-ds-color-blue-500:#3b82f6;--bcm-new-ds-color-blue-600:#2563eb;--bcm-new-ds-color-blue-700:#1d4ed8;--bcm-new-ds-color-blue-800:#1e40af;--bcm-new-ds-color-blue-900:#1e3a8a;--bcm-new-ds-color-indigo:#6366f1;--bcm-new-ds-color-indigo-50:#eef2ff;--bcm-new-ds-color-indigo-100:#e0e7ff;--bcm-new-ds-color-indigo-200:#c7d2fe;--bcm-new-ds-color-indigo-300:#a5b4fc;--bcm-new-ds-color-indigo-400:#818cf8;--bcm-new-ds-color-indigo-500:#6366f1;--bcm-new-ds-color-indigo-600:#4f46e5;--bcm-new-ds-color-indigo-700:#4338ca;--bcm-new-ds-color-indigo-800:#3730a3;--bcm-new-ds-color-indigo-900:#312e81;--bcm-new-ds-color-violet:#8b5cf6;--bcm-new-ds-color-violet-50:#f5f3ff;--bcm-new-ds-color-violet-100:#ede9fe;--bcm-new-ds-color-violet-200:#ddd6fe;--bcm-new-ds-color-violet-300:#c4b5fd;--bcm-new-ds-color-violet-400:#a78bfa;--bcm-new-ds-color-violet-500:#8b5cf6;--bcm-new-ds-color-violet-600:#7c3aed;--bcm-new-ds-color-violet-700:#6d28d9;--bcm-new-ds-color-violet-800:#5b21b6;--bcm-new-ds-color-violet-900:#4c1d95;--bcm-new-ds-color-purple:#a855f7;--bcm-new-ds-color-purple-50:#faf5ff;--bcm-new-ds-color-purple-100:#f3e8ff;--bcm-new-ds-color-purple-200:#e9d5ff;--bcm-new-ds-color-purple-300:#d8b4fe;--bcm-new-ds-color-purple-400:#c084fc;--bcm-new-ds-color-purple-500:#a855f7;--bcm-new-ds-color-purple-600:#9333ea;--bcm-new-ds-color-purple-700:#7e22ce;--bcm-new-ds-color-purple-800:#6b21a8;--bcm-new-ds-color-purple-900:#581c87;--bcm-new-ds-color-fuchsia:#d946ef;--bcm-new-ds-color-fuchsia-50:#fdf4ff;--bcm-new-ds-color-fuchsia-100:#fae8ff;--bcm-new-ds-color-fuchsia-200:#f5d0fe;--bcm-new-ds-color-fuchsia-300:#f0abfc;--bcm-new-ds-color-fuchsia-400:#e879f9;--bcm-new-ds-color-fuchsia-500:#d946ef;--bcm-new-ds-color-fuchsia-600:#c026d3;--bcm-new-ds-color-fuchsia-700:#a21caf;--bcm-new-ds-color-fuchsia-800:#86198f;--bcm-new-ds-color-fuchsia-900:#701a75;--bcm-new-ds-color-pink:#ec4899;--bcm-new-ds-color-pink-50:#fdf2f8;--bcm-new-ds-color-pink-100:#fce7f3;--bcm-new-ds-color-pink-200:#fbcfe8;--bcm-new-ds-color-pink-300:#f9a8d4;--bcm-new-ds-color-pink-400:#f472b6;--bcm-new-ds-color-pink-500:#ec4899;--bcm-new-ds-color-pink-600:#db2777;--bcm-new-ds-color-pink-700:#be185d;--bcm-new-ds-color-pink-800:#9d174d;--bcm-new-ds-color-pink-900:#831843;--bcm-new-ds-color-rose:#f43f5e;--bcm-new-ds-color-rose-50:#fff1f2;--bcm-new-ds-color-rose-100:#ffe4e6;--bcm-new-ds-color-rose-200:#fecdd3;--bcm-new-ds-color-rose-300:#fda4af;--bcm-new-ds-color-rose-400:#fb7185;--bcm-new-ds-color-rose-500:#f43f5e;--bcm-new-ds-color-rose-600:#e11d48;--bcm-new-ds-color-rose-700:#be123c;--bcm-new-ds-color-rose-800:#9f1239;--bcm-new-ds-color-rose-900:#881337}*{box-sizing:border-box}.bcm-label{display:inline-flex;align-items:flex-start;grid-gap:2px}.bcm-label__text{margin-bottom:2px;font-family:\"Inter\", sans-serif;font-size:14px;line-height:calc(14px + 8px);font-weight:400;display:inline-block;color:var(--bcm-new-ds-color-slate-600)}.bcm-label__size-small{font-size:10px;line-height:calc(10px + 8px);min-height:calc(10px + 8px)}.bcm-label__size-medium{font-size:12px;line-height:calc(12px + 8px);min-height:calc(12px + 8px)}.bcm-label__size-large{font-size:14px;line-height:calc(14px + 8px);min-height:calc(14px + 8px)}.bcm-input[no-margin]{margin:0}.bcm-textarea[no-margin]{margin:0}.bcm-switch[no-margin]{margin:0}.bcm-checkbox[no-margin]{margin:0}.bcm-radio-group[no-margin]{margin:0}.bcm-checkbox-group[no-margin]{margin:0}.bcm-range[no-margin]{margin:0}.bcm-form[no-margin]{margin:0}.bcm-form-group[no-margin]{margin:0}.bcm-list[no-margin]{margin:0}.bcm-colorpicker[no-margin]{margin:0}.bcm-date-picker[no-margin]{margin:0}.bcm-time-picker[no-margin]{margin:0}.bcm-datetime-picker[no-margin]{margin:0}.bcm-select[no-margin]{margin:0}.bcm-listbox[no-margin]{margin:0}.bcm-radio-group{margin-bottom:8px;display:block}.bcm-radio-group.hidden{display:none}.bcm-radio-group__container{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;width:100%}.bcm-radio-group__container.vertical{gap:8px;flex-direction:column}.bcm-radio-group__container.full-width{max-width:100%}";
120
-
121
24
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
122
25
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
123
26
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
@@ -134,78 +37,68 @@ const BcmRadioGroup$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
134
37
  this.__registerHost();
135
38
  this.change = createEvent(this, "bcm-change", 7);
136
39
  this._id = Generate.UID();
137
- this.value = undefined;
138
- this.direction = Bcm.Direction.horizontal;
139
- this.items = [];
140
- this.size = Bcm.Size.medium;
141
- this.name = undefined;
142
40
  this.label = undefined;
41
+ this.name = undefined;
42
+ this.value = null;
43
+ this.defaultValue = undefined;
44
+ this.size = Bcm.Size.medium;
143
45
  this.disabled = false;
144
46
  this.hidden = false;
145
47
  this.required = false;
146
48
  this.gap = undefined;
147
- this.defaultValue = undefined;
148
- this.optionType = 'default';
149
- this.buttonStyle = 'solid';
49
+ this.direction = Bcm.Direction.horizontal;
150
50
  this.fullWidth = false;
51
+ this.items = [];
151
52
  this.caption = undefined;
152
53
  this.noCaption = false;
153
54
  this.captionError = undefined;
154
55
  this.captionType = Bcm.Status.default;
155
56
  this.captionCache = undefined;
156
57
  this.captionTypeCache = undefined;
157
- this.radioOptions = [];
158
- this.usingSlots = true;
159
- this.tick = {};
160
58
  }
161
- disconnectedCallback() {
162
- radioGroupState.removeState(this._id);
59
+ get radios() {
60
+ return Array.from(this.el.querySelectorAll("bcm-radio"));
163
61
  }
164
- componentDidLoad() {
165
- this.initState();
62
+ get Items() {
63
+ return this.items;
166
64
  }
167
- componentShouldUpdate(newVal, oldVal, propName) {
168
- if ((propName == 'defaultValue' || propName == 'tick') && newVal !== oldVal) {
169
- const isHaveChild = snq(() => radioGroupState.getProperty(this._id).childs.length > 0, false);
170
- if (isHaveChild) {
171
- this.getValue().then(values => (this.value = values));
172
- }
173
- }
65
+ connectedCallback() {
66
+ this.captionCache = this.caption;
67
+ this.captionTypeCache = this.captionType;
174
68
  }
175
- async initState() {
176
- const { fullWidth, optionType, buttonStyle, size, disabled, noCaption, defaultValue, label, required, captionType, hidden, direction, gap, items, name } = this;
177
- const defaultCheckedItems = defaultValue && defaultValue;
178
- const childElements = items.length > 0 ? snq(() => (typeof this.items == 'string' ? JSON.parse(this.items) : this.items)) : await this.getRadioItems();
179
- await radioGroupState.setValue({
180
- id: this._id,
181
- el: this.el,
182
- name,
183
- fullWidth,
184
- optionType,
185
- buttonStyle,
186
- size,
187
- disabled,
188
- defaultCheckedItems,
189
- label,
190
- noCaption,
191
- required,
192
- captionType,
193
- hidden,
194
- gap,
195
- direction,
196
- childs: childElements,
69
+ updateValue() {
70
+ var _a, _b, _c;
71
+ this.value = (_c = (_b = (_a = this.radios) === null || _a === void 0 ? void 0 : _a.find(radio => radio.checked)) === null || _b === void 0 ? void 0 : _b.value) !== null && _c !== void 0 ? _c : null;
72
+ }
73
+ componentWillLoad() {
74
+ var _a;
75
+ (_a = this.radios) === null || _a === void 0 ? void 0 : _a.forEach(radio => {
76
+ radio.disabled = radio.disabled || this.disabled;
77
+ radio.size = this.size;
78
+ if (this.defaultValue) {
79
+ radio.checked = radio.value == this.defaultValue;
80
+ }
197
81
  });
198
- this.getValue().then(values => (this.value = values));
199
- }
200
- async markForCheck() {
201
- await delay(10);
202
- this.tick = Generate.UID();
82
+ this.updateValue();
83
+ }
84
+ handleChange(e) {
85
+ var _a, _b;
86
+ e.stopPropagation();
87
+ e.preventDefault();
88
+ const checked = (_a = e.target.checked) !== null && _a !== void 0 ? _a : false;
89
+ (_b = this.radios) === null || _b === void 0 ? void 0 : _b.forEach(radio => {
90
+ radio.checked = radio.id == e.target.id ? !checked : false;
91
+ });
92
+ this.updateValue();
93
+ this.change.emit(this.value);
203
94
  }
95
+ ;
204
96
  async setClear() {
205
- radioGroupState.setClear(this._id);
206
- this.markForCheck();
207
- await delay(10);
208
- return Promise.resolve();
97
+ var _a;
98
+ this.value = null;
99
+ (_a = this.radios) === null || _a === void 0 ? void 0 : _a.forEach(radio => {
100
+ radio.checked = false;
101
+ });
209
102
  }
210
103
  async resetCaption() {
211
104
  await delay(10);
@@ -215,92 +108,57 @@ const BcmRadioGroup$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
215
108
  await delay(10);
216
109
  return Promise.resolve();
217
110
  }
218
- async set(data) {
219
- await this.check(data);
111
+ async check(itemId, checked = true) {
112
+ var _a;
113
+ (_a = this.radios) === null || _a === void 0 ? void 0 : _a.forEach(radio => {
114
+ radio.checked = radio.id == itemId || radio.value == itemId ? checked : false;
115
+ });
116
+ this.updateValue();
117
+ this.change.emit(this.value);
220
118
  }
221
119
  async get() {
222
- return await this.getValue();
120
+ return this.value;
223
121
  }
224
- async check(item, checked = true) {
225
- radioGroupState.setCheckedItem(this._id, item, checked);
226
- this.defaultValue = item;
227
- await this.markForCheck();
228
- this.change.emit(this.value);
122
+ async set(data) {
123
+ await this.check(data);
229
124
  }
230
125
  async getValue() {
231
- return radioGroupState.getValue(this._id);
232
- }
233
- handleItemsChange() {
234
- this.initState();
235
- }
236
- getRadioItems() {
237
- return getChildElements(this.el, 'bcm-radio');
238
- }
239
- async changeRadio(event) {
240
- radioGroupState.state.onChange = { id: this._id, childId: event };
241
- await this.markForCheck();
242
- this.change.emit(this.value);
243
- }
244
- getItems() {
245
- return radioGroupState.getProperty(this._id);
246
- }
247
- connectedCallback() {
248
- this.captionCache = this.caption;
249
- this.captionTypeCache = this.captionType;
126
+ return this.value;
250
127
  }
251
128
  render() {
252
- const { label, required, hidden, childs, gap, direction, fullWidth, optionType } = this.getItems();
253
- const bcmRadioGroupHostClasses = classnames('bcm-radio-group', {
254
- hidden,
255
- 'error': this.captionType == 'error',
256
- 'full-width': fullWidth,
257
- });
258
- const bcmRadioGroupContainerClasses = classnames('bcm-radio-group__container', optionType, {
259
- [direction]: optionType === 'default',
260
- 'full-width': fullWidth,
261
- });
262
- return (h(Host, { class: bcmRadioGroupHostClasses }, label && h("bcm-label", { type: this.captionType, value: label, required: required }), h("div", { class: bcmRadioGroupContainerClasses, style: gap && { gap: gap } }, childs &&
263
- childs.map(radio => (h("bcm-radio", { id: radio.id, onClick: e => {
264
- !radio.disabled && this.changeRadio(radio.id), e.preventDefault();
265
- }, value: radio.value, disabled: radio.disabled, checked: radio.checked, size: radio.size, color: radio.color, required: radio.required, hidden: radio.hidden, "no-margin": true }, radio.slot || radio.label)))), h(CaptionTemplate, { noCaption: this.noCaption, captionType: this.captionType, captionError: this.captionError, caption: this.caption }), h("span", { hidden: true }, h("slot", null))));
129
+ var _a, _b;
130
+ const { direction, fullWidth, gap, label, size, required, disabled, caption, captionError, captionType, noCaption } = this;
131
+ return (h(Host, { role: "radio-group", class: "tw-mb-2 tw-flex tw-flex-col" }, label && h("bcm-label", { type: captionType, value: label, required: required }), h("div", { class: classnames("tw-flex tw-flex-wrap", direction == Bcm.Direction.horizontal ? "tw-flex-row" : "tw-flex-col", fullWidth && "tw-w-full"), style: { "gap": gap } }, h("slot", null), ((_a = this.Items) === null || _a === void 0 ? void 0 : _a.length) > 0 &&
132
+ ((_b = this.Items) === null || _b === void 0 ? void 0 : _b.map(item => (h("bcm-radio", { id: item.id, value: item.value, disabled: disabled || item.disabled, checked: item.checked, color: item.color, size: size }, item.label))))), h(CaptionTemplate, { noCaption: noCaption, captionType: captionType, captionError: captionError, caption: caption })));
266
133
  }
267
134
  get el() { return this; }
268
- static get watchers() { return {
269
- "items": ["handleItemsChange"]
270
- }; }
271
- static get style() { return groupCss; }
272
135
  }, [4, "bcm-radio-group", {
273
- "_id": [1537, "id"],
136
+ "_id": [513, "id"],
137
+ "label": [1],
138
+ "name": [1],
274
139
  "value": [1032],
275
- "direction": [1025],
276
- "items": [1025],
277
- "size": [1025],
278
- "name": [1025],
279
- "label": [1025],
280
- "disabled": [1028],
281
- "hidden": [1028],
282
- "required": [1028],
283
- "gap": [1025],
284
- "defaultValue": [1025, "default-value"],
285
- "optionType": [1025, "option-type"],
286
- "buttonStyle": [1025, "button-style"],
287
- "fullWidth": [1544, "full-width"],
288
- "caption": [1025],
289
- "noCaption": [1028, "no-caption"],
290
- "captionError": [1025, "caption-error"],
291
- "captionType": [1025, "caption-type"],
140
+ "defaultValue": [8, "default-value"],
141
+ "size": [1],
142
+ "disabled": [4],
143
+ "hidden": [4],
144
+ "required": [4],
145
+ "gap": [1],
146
+ "direction": [1],
147
+ "fullWidth": [4, "full-width"],
148
+ "items": [1],
149
+ "caption": [1],
150
+ "noCaption": [4, "no-caption"],
151
+ "captionError": [1, "caption-error"],
152
+ "captionType": [1, "caption-type"],
292
153
  "captionCache": [32],
293
154
  "captionTypeCache": [32],
294
- "radioOptions": [32],
295
- "usingSlots": [32],
296
- "tick": [32],
297
155
  "setClear": [64],
298
156
  "resetCaption": [64],
299
- "set": [64],
300
- "get": [64],
301
157
  "check": [64],
158
+ "get": [64],
159
+ "set": [64],
302
160
  "getValue": [64]
303
- }]);
161
+ }, [[0, "bcm-radio-change", "handleChange"]]]);
304
162
  __decorate([
305
163
  IsLoad()
306
164
  ], BcmRadioGroup$1.prototype, "el", void 0);