bromcom-ui 2.10.1-rc.9 → 2.10.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 (430) 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/{p-b4e67a0b.js → p-025c8c2a.js} +1 -1
  4. package/dist/bromcom-ui/{p-7c5763cc.entry.js → p-03337609.entry.js} +1 -1
  5. package/dist/bromcom-ui/{p-6edf985f.js → p-034bbcdd.js} +1 -1
  6. package/dist/bromcom-ui/{p-eb2c11e0.js → p-07351315.js} +1 -1
  7. package/dist/bromcom-ui/{p-bc0e11d2.entry.js → p-07e0d057.entry.js} +1 -1
  8. package/dist/bromcom-ui/{p-ea18d38d.entry.js → p-09b8a530.entry.js} +1 -1
  9. package/dist/bromcom-ui/p-0ae6bac4.entry.js +5 -0
  10. package/dist/bromcom-ui/{p-430c0a24.entry.js → p-0efc9196.entry.js} +1 -1
  11. package/dist/bromcom-ui/{p-c1a992e7.entry.js → p-107f11df.entry.js} +1 -1
  12. package/dist/bromcom-ui/{p-6bbedf32.entry.js → p-10a88b11.entry.js} +1 -1
  13. package/dist/bromcom-ui/{p-c658e7f0.entry.js → p-151b5e1b.entry.js} +1 -1
  14. package/dist/bromcom-ui/p-1596caaf.entry.js +5 -0
  15. package/dist/bromcom-ui/{p-7d18ce0e.entry.js → p-181f2f4a.entry.js} +1 -1
  16. package/dist/bromcom-ui/{p-2aaeb247.entry.js → p-188b9079.entry.js} +1 -1
  17. package/dist/bromcom-ui/{p-26290ed5.entry.js → p-18bc4e04.entry.js} +1 -1
  18. package/dist/bromcom-ui/{p-74e6d2b6.js → p-197aba37.js} +1 -1
  19. package/dist/bromcom-ui/{p-a664cc20.entry.js → p-1a33d7a3.entry.js} +1 -1
  20. package/dist/bromcom-ui/{p-39134670.entry.js → p-1b04f2bd.entry.js} +1 -1
  21. package/dist/bromcom-ui/{p-81a2c866.js → p-1d1d917d.js} +1 -1
  22. package/dist/bromcom-ui/{p-fff1a0f9.entry.js → p-1e8559ac.entry.js} +1 -1
  23. package/dist/bromcom-ui/{p-f824e6bb.entry.js → p-269f7c74.entry.js} +1 -1
  24. package/dist/bromcom-ui/p-28cb759c.entry.js +5 -0
  25. package/dist/bromcom-ui/{p-8839e454.entry.js → p-2e036fec.entry.js} +1 -1
  26. package/dist/bromcom-ui/{p-73789dbb.entry.js → p-2ffff840.entry.js} +1 -1
  27. package/dist/bromcom-ui/p-3182df7e.js +10 -0
  28. package/dist/bromcom-ui/p-35d6f83d.entry.js +5 -0
  29. package/dist/bromcom-ui/{p-7cf44256.entry.js → p-37a49186.entry.js} +1 -1
  30. package/dist/bromcom-ui/{p-d2b358ae.js → p-37df4996.js} +1 -1
  31. package/dist/bromcom-ui/{p-67343ad8.entry.js → p-3b079331.entry.js} +1 -1
  32. package/dist/bromcom-ui/p-3c4e35c7.entry.js +5 -0
  33. package/dist/bromcom-ui/p-3c4fbed6.entry.js +5 -0
  34. package/dist/bromcom-ui/{p-8c018ae0.js → p-3c7a0345.js} +1 -1
  35. package/dist/bromcom-ui/{p-769facbd.entry.js → p-3cb58e96.entry.js} +1 -1
  36. package/dist/bromcom-ui/{p-e32e4c09.entry.js → p-3ef90dfc.entry.js} +1 -1
  37. package/dist/bromcom-ui/{p-14cafd64.entry.js → p-4438d629.entry.js} +1 -1
  38. package/dist/bromcom-ui/{p-5699f67d.entry.js → p-468157a0.entry.js} +1 -1
  39. package/dist/bromcom-ui/{p-f327dd16.entry.js → p-46abab59.entry.js} +1 -1
  40. package/dist/bromcom-ui/{p-61db1f1f.js → p-4798d827.js} +1 -1
  41. package/dist/bromcom-ui/{p-69260d36.entry.js → p-48f5a3c9.entry.js} +1 -1
  42. package/dist/bromcom-ui/{p-78ace67b.entry.js → p-4c1a710e.entry.js} +1 -1
  43. package/dist/bromcom-ui/{p-ece578ef.entry.js → p-4d7ea23c.entry.js} +1 -1
  44. package/dist/bromcom-ui/{p-51b6a14a.entry.js → p-4ded5e14.entry.js} +1 -1
  45. package/dist/bromcom-ui/p-4fc22565.entry.js +5 -0
  46. package/dist/bromcom-ui/p-509053bd.entry.js +5 -0
  47. package/dist/bromcom-ui/p-536b15e0.js +5 -0
  48. package/dist/bromcom-ui/p-5436ddd6.js +5 -0
  49. package/dist/bromcom-ui/p-545b73c2.entry.js +5 -0
  50. package/dist/bromcom-ui/p-551c72ee.entry.js +5 -0
  51. package/dist/bromcom-ui/{p-c285ac3e.entry.js → p-58af1aef.entry.js} +1 -1
  52. package/dist/bromcom-ui/{p-7e44e6b5.js → p-5ae0a59b.js} +1 -1
  53. package/dist/bromcom-ui/{p-cc556e65.entry.js → p-5b0742ce.entry.js} +1 -1
  54. package/dist/bromcom-ui/{p-1c26a0c1.js → p-5b0cae60.js} +1 -1
  55. package/dist/bromcom-ui/p-5dac2714.entry.js +5 -0
  56. package/dist/bromcom-ui/p-5ea9881d.entry.js +5 -0
  57. package/dist/bromcom-ui/p-5eeccb39.entry.js +5 -0
  58. package/dist/bromcom-ui/{p-4bcb29c3.entry.js → p-627fa674.entry.js} +1 -1
  59. package/dist/bromcom-ui/{p-d551a51d.entry.js → p-63138ee5.entry.js} +1 -1
  60. package/dist/bromcom-ui/{p-19f27bd8.entry.js → p-6de81bd3.entry.js} +1 -1
  61. package/dist/bromcom-ui/{p-ba9eff2a.entry.js → p-6e7bb16f.entry.js} +1 -1
  62. package/dist/bromcom-ui/p-6f00f65d.entry.js +5 -0
  63. package/dist/bromcom-ui/p-6f11eb8e.entry.js +5 -0
  64. package/dist/bromcom-ui/p-76edf59f.js +7 -0
  65. package/dist/bromcom-ui/p-77035c08.entry.js +5 -0
  66. package/dist/bromcom-ui/{p-c1b1c0b4.entry.js → p-78aa3b87.entry.js} +1 -1
  67. package/dist/bromcom-ui/{p-626b805d.entry.js → p-7a89243a.entry.js} +1 -1
  68. package/dist/bromcom-ui/p-7e3209a0.js +14 -0
  69. package/dist/bromcom-ui/{p-eab01ad5.entry.js → p-895431f3.entry.js} +1 -1
  70. package/dist/bromcom-ui/{p-a25c8a55.js → p-8a92f2bf.js} +1 -1
  71. package/dist/bromcom-ui/{p-9850cbce.js → p-8e5e362a.js} +1 -1
  72. package/dist/bromcom-ui/p-90358ed5.entry.js +5 -0
  73. package/dist/bromcom-ui/{p-66929631.entry.js → p-927c1d95.entry.js} +1 -1
  74. package/dist/bromcom-ui/{p-157359d6.js → p-94554e42.js} +1 -1
  75. package/dist/bromcom-ui/{p-1c801d0c.entry.js → p-95a2c489.entry.js} +1 -1
  76. package/dist/bromcom-ui/{p-d65c93dd.entry.js → p-9691ee8f.entry.js} +1 -1
  77. package/dist/bromcom-ui/{p-ec2688a7.entry.js → p-9a72c525.entry.js} +1 -1
  78. package/dist/bromcom-ui/{p-8ea1d342.entry.js → p-9b8d0870.entry.js} +1 -1
  79. package/dist/bromcom-ui/{p-8af69fbb.entry.js → p-9e49975e.entry.js} +1 -1
  80. package/dist/bromcom-ui/{p-8d16573c.entry.js → p-a274bcd9.entry.js} +1 -1
  81. package/dist/bromcom-ui/{p-6a6c51e1.entry.js → p-a7a58c76.entry.js} +1 -1
  82. package/dist/bromcom-ui/p-a967a06e.entry.js +5 -0
  83. package/dist/bromcom-ui/{p-086cda42.entry.js → p-b78c36e9.entry.js} +1 -1
  84. package/dist/bromcom-ui/{p-366262cb.entry.js → p-b90ca5bc.entry.js} +1 -1
  85. package/dist/bromcom-ui/p-baf4fb9c.js +5 -0
  86. package/dist/bromcom-ui/{p-5c671967.entry.js → p-bca72f17.entry.js} +1 -1
  87. package/dist/bromcom-ui/{p-f1829cae.entry.js → p-bebb0c4e.entry.js} +1 -1
  88. package/dist/bromcom-ui/p-bed627ab.js +11 -0
  89. package/dist/bromcom-ui/{p-d706b0bd.entry.js → p-bfccb78e.entry.js} +1 -1
  90. package/dist/bromcom-ui/{p-4e577842.entry.js → p-c0df6b14.entry.js} +1 -1
  91. package/dist/bromcom-ui/{p-84ff5d64.entry.js → p-c55b0a94.entry.js} +1 -1
  92. package/dist/bromcom-ui/{p-48a57eb6.entry.js → p-c8c05178.entry.js} +1 -1
  93. package/dist/bromcom-ui/{p-377eec7f.entry.js → p-cc8be50c.entry.js} +1 -1
  94. package/dist/bromcom-ui/{p-b04dbde5.entry.js → p-cf8d291c.entry.js} +1 -1
  95. package/dist/bromcom-ui/{p-d82d0c57.entry.js → p-cfc2188d.entry.js} +1 -1
  96. package/dist/bromcom-ui/p-cfe7a164.entry.js +5 -0
  97. package/dist/bromcom-ui/{p-2f46157a.entry.js → p-d0f33e65.entry.js} +1 -1
  98. package/dist/bromcom-ui/p-d4d3c135.entry.js +5 -0
  99. package/dist/bromcom-ui/{p-40b85b9b.entry.js → p-dbea0599.entry.js} +1 -1
  100. package/dist/bromcom-ui/{p-7b02eb85.entry.js → p-dc8e177d.entry.js} +1 -1
  101. package/dist/bromcom-ui/{p-b50bee51.entry.js → p-de6b516a.entry.js} +1 -1
  102. package/dist/bromcom-ui/{p-170cf07d.js → p-e037ee2b.js} +1 -1
  103. package/dist/bromcom-ui/p-e18a6a5b.entry.js +5 -0
  104. package/dist/bromcom-ui/p-e1ce3cfc.js +5 -0
  105. package/dist/bromcom-ui/{p-1c9314bd.entry.js → p-e32ab4da.entry.js} +1 -1
  106. package/dist/bromcom-ui/{p-1e8ba7b1.js → p-e442fd4c.js} +1 -1
  107. package/dist/bromcom-ui/{p-85eedabc.js → p-e45c1546.js} +1 -1
  108. package/dist/bromcom-ui/{p-ce45a5a0.entry.js → p-e4639bad.entry.js} +1 -1
  109. package/dist/bromcom-ui/p-e4b42f26.js +5 -0
  110. package/dist/bromcom-ui/{p-f0a6db76.entry.js → p-e53bafc8.entry.js} +1 -1
  111. package/dist/bromcom-ui/{p-0a7346a7.entry.js → p-eb956eea.entry.js} +1 -1
  112. package/dist/bromcom-ui/{p-c40a820f.entry.js → p-ec50e7e4.entry.js} +1 -1
  113. package/dist/bromcom-ui/{p-125d6ed0.js → p-ed9d082d.js} +1 -1
  114. package/dist/bromcom-ui/{p-4c30ce4b.entry.js → p-efe995fb.entry.js} +1 -1
  115. package/dist/bromcom-ui/{p-8348f7e8.entry.js → p-f2948b08.entry.js} +1 -1
  116. package/dist/bromcom-ui/{p-d0c1fcc5.entry.js → p-f680271c.entry.js} +1 -1
  117. package/dist/bromcom-ui/{p-99824717.entry.js → p-f9119bec.entry.js} +1 -1
  118. package/dist/bromcom-ui/p-f93bcd16.entry.js +5 -0
  119. package/dist/cjs/bcm-accordion.cjs.entry.js +2 -2
  120. package/dist/cjs/bcm-alert.cjs.entry.js +2 -2
  121. package/dist/cjs/bcm-attendance-actions-comment.cjs.entry.js +136 -0
  122. package/dist/cjs/bcm-attendance-actions-dropdown.cjs.entry.js +101 -0
  123. package/dist/cjs/bcm-attendance-actions.cjs.entry.js +330 -0
  124. package/dist/cjs/bcm-attendance.cjs.entry.js +2 -2
  125. package/dist/cjs/bcm-avatar_2.cjs.entry.js +4 -4
  126. package/dist/cjs/bcm-breadcrumb.cjs.entry.js +2 -2
  127. package/dist/cjs/bcm-button-group.cjs.entry.js +2 -2
  128. package/dist/cjs/bcm-button.cjs.entry.js +372 -0
  129. package/dist/cjs/bcm-caption.cjs.entry.js +4 -4
  130. package/dist/cjs/bcm-card.cjs.entry.js +2 -2
  131. package/dist/cjs/bcm-checkbox-group.cjs.entry.js +2 -2
  132. package/dist/cjs/bcm-checkbox-lite_9.cjs.entry.js +2 -2
  133. package/dist/cjs/bcm-checkbox_2.cjs.entry.js +194 -0
  134. package/dist/cjs/bcm-chip-group.cjs.entry.js +4 -4
  135. package/dist/cjs/bcm-chip.cjs.entry.js +2 -2
  136. package/dist/cjs/bcm-collapse.cjs.entry.js +2 -2
  137. package/dist/cjs/bcm-color-input.cjs.entry.js +4 -4
  138. package/dist/cjs/bcm-colorful_2.cjs.entry.js +17440 -0
  139. package/dist/cjs/bcm-date-picker.cjs.entry.js +2 -2
  140. package/dist/cjs/bcm-date.cjs.entry.js +182 -0
  141. package/dist/cjs/bcm-datetime-picker.cjs.entry.js +3 -3
  142. package/dist/cjs/bcm-default.cjs.entry.js +2 -2
  143. package/dist/cjs/bcm-drawer.cjs.entry.js +4 -4
  144. package/dist/cjs/bcm-dropdown.cjs.entry.js +3 -3
  145. package/dist/cjs/bcm-expansion-panel.cjs.entry.js +2 -2
  146. package/dist/cjs/bcm-form-2.cjs.entry.js +2 -2
  147. package/dist/cjs/bcm-form.cjs.entry.js +492 -0
  148. package/dist/cjs/bcm-icon.cjs.entry.js +39 -0
  149. package/dist/cjs/bcm-input-custom.cjs.entry.js +2 -2
  150. package/dist/cjs/bcm-input-dropdown.cjs.entry.js +4 -4
  151. package/dist/cjs/bcm-input_2.cjs.entry.js +550 -0
  152. package/dist/cjs/bcm-item.cjs.entry.js +2 -2
  153. package/dist/cjs/bcm-items.cjs.entry.js +2 -2
  154. package/dist/cjs/bcm-label_2.cjs.entry.js +135 -0
  155. package/dist/cjs/bcm-list_3.cjs.entry.js +2544 -0
  156. package/dist/cjs/bcm-menu.cjs.entry.js +5 -5
  157. package/dist/cjs/bcm-modal-2-footer.cjs.entry.js +4 -4
  158. package/dist/cjs/bcm-modal-2-header.cjs.entry.js +4 -4
  159. package/dist/cjs/bcm-modal-2.cjs.entry.js +4 -4
  160. package/dist/cjs/bcm-modal.cjs.entry.js +2 -2
  161. package/dist/cjs/bcm-number-input.cjs.entry.js +4 -4
  162. package/dist/cjs/bcm-old-input.cjs.entry.js +1 -1
  163. package/dist/cjs/bcm-popconfirm-box.cjs.entry.js +2 -2
  164. package/dist/cjs/bcm-popconfirm.cjs.entry.js +2 -2
  165. package/dist/cjs/bcm-popover.cjs.entry.js +4 -4
  166. package/dist/cjs/bcm-progress.cjs.entry.js +2 -2
  167. package/dist/cjs/bcm-radio-group.cjs.entry.js +4 -4
  168. package/dist/cjs/bcm-radio.cjs.entry.js +4 -4
  169. package/dist/cjs/bcm-range.cjs.entry.js +3 -3
  170. package/dist/cjs/bcm-rc-picker.cjs.entry.js +9391 -0
  171. package/dist/cjs/bcm-shortcut.cjs.entry.js +4 -4
  172. package/dist/cjs/bcm-skeleton.cjs.entry.js +4 -4
  173. package/dist/cjs/bcm-step.cjs.entry.js +3 -3
  174. package/dist/cjs/bcm-stepper.cjs.entry.js +5 -5
  175. package/dist/cjs/bcm-switch.cjs.entry.js +151 -0
  176. package/dist/cjs/bcm-tab-group.cjs.entry.js +4 -4
  177. package/dist/cjs/bcm-tab-item-header.cjs.entry.js +4 -4
  178. package/dist/cjs/bcm-tab-item.cjs.entry.js +4 -4
  179. package/dist/cjs/bcm-table.cjs.entry.js +4 -4
  180. package/dist/cjs/bcm-tag.cjs.entry.js +3 -3
  181. package/dist/cjs/bcm-time-picker.cjs.entry.js +2 -2
  182. package/dist/cjs/bcm-toast.cjs.entry.js +2 -2
  183. package/dist/cjs/bromcom-ui.cjs.js +3 -3
  184. package/dist/cjs/{generate-a89cbf95.js → generate-2ba77a51.js} +3 -12
  185. package/dist/cjs/{global-12727d81.js → global-83c7a742.js} +1 -1
  186. package/dist/cjs/index-3d67f613.js +1610 -0
  187. package/dist/cjs/index-e05a7c6f.js +545 -0
  188. package/dist/cjs/{input-template-aed0898b.js → input-template-7cc31eec.js} +1 -1
  189. package/dist/cjs/{json-parse-decarator-f6d01750.js → json-parse-decarator-7e7c2a0b.js} +1 -1
  190. package/dist/cjs/loader.cjs.js +3 -3
  191. package/dist/cjs/moment-d06b012f.js +4601 -0
  192. package/dist/cjs/{number-helper-ed1167a6.js → number-helper-af985650.js} +1 -1
  193. package/dist/cjs/old-bcm-popover-box.cjs.entry.js +3 -3
  194. package/dist/cjs/old-bcm-popover.cjs.entry.js +2 -2
  195. package/dist/cjs/{package-e3618032.js → package-63c2f54e.js} +1 -1
  196. package/dist/cjs/{stepper-states-5cde5a5b.js → stepper-states-ef6a0181.js} +1 -1
  197. package/dist/cjs/{tooltip-helper-8e999092.js → tooltip-helper-f38c67f4.js} +3 -3
  198. package/dist/cjs/{validators-ca50c59e.js → validators-e6dd5dca.js} +1 -1
  199. package/dist/collection/collection-manifest.json +3 -0
  200. package/dist/collection/components/atoms/label/label.js +1 -1
  201. package/dist/collection/components/molecules/linked/linked.js +23 -0
  202. package/dist/collection/components/molecules/range/range.js +1 -1
  203. package/dist/collection/components/organism/datetime-picker/datetime-picker.css +47 -0
  204. package/dist/collection/components/organism/form/form.js +9 -0
  205. package/dist/collection/components/organism/list/list.js +1 -1
  206. package/dist/collection/components/other/attendance-actions/attendance-actions-comment.js +313 -0
  207. package/dist/collection/components/other/attendance-actions/attendance-actions-comment.style.js +27 -0
  208. package/dist/collection/components/other/attendance-actions/attendance-actions-dropdown.js +253 -0
  209. package/dist/collection/components/other/attendance-actions/attendance-actions-dropdown.style.js +34 -0
  210. package/dist/collection/components/other/attendance-actions/attendance-actions.css +0 -0
  211. package/dist/collection/components/other/attendance-actions/attendance-actions.js +363 -0
  212. package/dist/collection/components/other/attendance-actions/attendance-actions.style.js +143 -0
  213. package/dist/collection/components/other_deprecated/old-input/old-input.css +47 -0
  214. package/dist/collection/helper/generate.js +2 -11
  215. package/dist/components/avatar.js +1 -1
  216. package/dist/components/badge.js +1 -1
  217. package/dist/components/bcm-attendance-actions-comment.d.ts +11 -0
  218. package/dist/components/bcm-attendance-actions-comment.js +208 -0
  219. package/dist/components/bcm-attendance-actions-dropdown.d.ts +11 -0
  220. package/dist/components/bcm-attendance-actions-dropdown.js +118 -0
  221. package/dist/components/bcm-attendance-actions.d.ts +11 -0
  222. package/dist/components/bcm-attendance-actions.js +346 -0
  223. package/dist/components/bcm-button-group.js +1 -1
  224. package/dist/components/bcm-caption.js +1 -1
  225. package/dist/components/bcm-checkbox-group.js +1 -1
  226. package/dist/components/bcm-chip-group.js +1 -1
  227. package/dist/components/bcm-date-picker.js +1 -1
  228. package/dist/components/bcm-date.js +1 -1
  229. package/dist/components/bcm-drawer.js +1 -1
  230. package/dist/components/bcm-dropdown.js +1 -1
  231. package/dist/components/bcm-form-2.js +1 -1
  232. package/dist/components/bcm-form.js +1 -504
  233. package/dist/components/bcm-input-dropdown.js +1 -1
  234. package/dist/components/bcm-item.js +1 -1
  235. package/dist/components/bcm-modal-2.js +1 -1
  236. package/dist/components/bcm-modal.js +1 -1
  237. package/dist/components/bcm-number-input.js +1 -1
  238. package/dist/components/bcm-popconfirm.js +1 -1
  239. package/dist/components/bcm-popover.js +1 -1
  240. package/dist/components/bcm-progress.js +1 -1
  241. package/dist/components/bcm-radio-group.js +1 -1
  242. package/dist/components/bcm-range.js +2 -2
  243. package/dist/components/bcm-shortcut.js +1 -1
  244. package/dist/components/bcm-stepper.js +1 -1
  245. package/dist/components/bcm-switch.js +1 -1
  246. package/dist/components/bcm-tab-group.js +1 -1
  247. package/dist/components/bcm-tab-item-header.js +1 -1
  248. package/dist/components/bcm-tag.js +1 -1
  249. package/dist/components/bcm-time-picker.js +1 -1
  250. package/dist/components/bcm-toast.js +1 -1
  251. package/dist/components/bcm.js +1 -1
  252. package/dist/components/button.js +1 -1
  253. package/dist/components/checkbox-lite.js +1 -1
  254. package/dist/components/checkbox.js +1 -1
  255. package/dist/components/datetime-picker.js +2 -2
  256. package/dist/components/divider.js +1 -1
  257. package/dist/components/floating-ui.js +1 -1
  258. package/dist/components/form.js +513 -0
  259. package/dist/components/generate.js +3 -12
  260. package/dist/components/index.d.ts +3 -0
  261. package/dist/components/index.js +3 -0
  262. package/dist/components/input-template.js +1 -1
  263. package/dist/components/input.js +1 -1
  264. package/dist/components/label.js +2 -2
  265. package/dist/components/link.js +1 -1
  266. package/dist/components/linked.js +7 -1
  267. package/dist/components/list.js +2 -2
  268. package/dist/components/old-bcm-popover.js +1 -1
  269. package/dist/components/old-input.js +1 -1
  270. package/dist/components/radio.js +1 -1
  271. package/dist/components/rc-picker.js +1 -1
  272. package/dist/components/search.js +1 -1
  273. package/dist/components/string-helper.js +1 -1
  274. package/dist/components/textarea.js +1 -1
  275. package/dist/components/tooltip-helper.js +1 -1
  276. package/dist/components/tooltip.js +1 -1
  277. package/dist/esm/{_commonjsHelpers-7002e5de.js → _commonjsHelpers-be0d4ec8.js} +1 -1
  278. package/dist/esm/bcm-accordion.entry.js +5 -5
  279. package/dist/esm/bcm-alert.entry.js +8 -8
  280. package/dist/esm/bcm-attendance-actions-comment.entry.js +132 -0
  281. package/dist/esm/bcm-attendance-actions-dropdown.entry.js +97 -0
  282. package/dist/esm/bcm-attendance-actions.entry.js +326 -0
  283. package/dist/esm/bcm-attendance.entry.js +5 -5
  284. package/dist/esm/bcm-autocomplete.entry.js +3 -3
  285. package/dist/esm/bcm-avatar_2.entry.js +11 -11
  286. package/dist/esm/bcm-box.entry.js +1 -1
  287. package/dist/esm/bcm-breadcrumb.entry.js +6 -6
  288. package/dist/esm/bcm-button-group.entry.js +7 -7
  289. package/dist/esm/bcm-button.entry.js +368 -0
  290. package/dist/esm/bcm-caption.entry.js +13 -13
  291. package/dist/esm/bcm-card.entry.js +10 -10
  292. package/dist/esm/bcm-checkbox-group.entry.js +10 -10
  293. package/dist/esm/bcm-checkbox-lite_9.entry.js +7 -7
  294. package/dist/esm/bcm-checkbox_2.entry.js +189 -0
  295. package/dist/esm/bcm-chip-group.entry.js +14 -14
  296. package/dist/esm/bcm-chip.entry.js +8 -8
  297. package/dist/esm/bcm-collapse-group.entry.js +2 -2
  298. package/dist/esm/bcm-collapse.entry.js +6 -6
  299. package/dist/esm/bcm-color-input.entry.js +11 -11
  300. package/dist/esm/bcm-colorful_2.entry.js +17435 -0
  301. package/dist/esm/bcm-colorpicker.entry.js +5 -5
  302. package/dist/esm/bcm-content.entry.js +1 -1
  303. package/dist/esm/bcm-date-picker.entry.js +8 -8
  304. package/dist/esm/bcm-date.entry.js +178 -0
  305. package/dist/esm/bcm-datetime-picker.entry.js +13 -13
  306. package/dist/esm/bcm-default.entry.js +5 -5
  307. package/dist/esm/bcm-drawer.entry.js +12 -12
  308. package/dist/esm/bcm-dropdown.entry.js +8 -8
  309. package/dist/esm/bcm-error-layout.entry.js +3 -3
  310. package/dist/esm/bcm-expansion-panel.entry.js +9 -9
  311. package/dist/esm/bcm-form-2.entry.js +7 -7
  312. package/dist/esm/bcm-form-group.entry.js +1 -1
  313. package/dist/esm/bcm-form.entry.js +488 -0
  314. package/dist/esm/bcm-icon.entry.js +35 -0
  315. package/dist/esm/bcm-input-custom.entry.js +6 -6
  316. package/dist/esm/bcm-input-dropdown.entry.js +13 -13
  317. package/dist/esm/bcm-input_2.entry.js +545 -0
  318. package/dist/esm/bcm-item.entry.js +8 -8
  319. package/dist/esm/bcm-items.entry.js +6 -6
  320. package/dist/esm/bcm-label_2.entry.js +130 -0
  321. package/dist/esm/bcm-link.entry.js +3 -3
  322. package/dist/esm/bcm-list_3.entry.js +2538 -0
  323. package/dist/esm/bcm-menu.entry.js +14 -14
  324. package/dist/esm/bcm-message.entry.js +3 -3
  325. package/dist/esm/bcm-modal-2-footer.entry.js +12 -12
  326. package/dist/esm/bcm-modal-2-header.entry.js +11 -11
  327. package/dist/esm/bcm-modal-2.entry.js +12 -12
  328. package/dist/esm/bcm-modal.entry.js +8 -8
  329. package/dist/esm/bcm-notification.entry.js +3 -3
  330. package/dist/esm/bcm-number-input.entry.js +13 -13
  331. package/dist/esm/bcm-old-input.entry.js +6 -6
  332. package/dist/esm/bcm-old-tag_2.entry.js +4 -4
  333. package/dist/esm/bcm-overlay_2.entry.js +4 -4
  334. package/dist/esm/bcm-popconfirm-box.entry.js +10 -10
  335. package/dist/esm/bcm-popconfirm.entry.js +6 -6
  336. package/dist/esm/bcm-popover.entry.js +11 -11
  337. package/dist/esm/bcm-progress.entry.js +8 -8
  338. package/dist/esm/bcm-radio-group.entry.js +14 -14
  339. package/dist/esm/bcm-radio.entry.js +12 -12
  340. package/dist/esm/bcm-range.entry.js +8 -8
  341. package/dist/esm/bcm-rc-picker.entry.js +9387 -0
  342. package/dist/esm/bcm-result.entry.js +3 -3
  343. package/dist/esm/bcm-select-group.entry.js +3 -3
  344. package/dist/esm/bcm-select-option.entry.js +3 -3
  345. package/dist/esm/bcm-select.entry.js +5 -5
  346. package/dist/esm/bcm-shortcut.entry.js +12 -12
  347. package/dist/esm/bcm-skeleton.entry.js +11 -11
  348. package/dist/esm/bcm-step.entry.js +8 -8
  349. package/dist/esm/bcm-stepper.entry.js +14 -14
  350. package/dist/esm/bcm-switch.entry.js +147 -0
  351. package/dist/esm/bcm-tab-group.entry.js +11 -11
  352. package/dist/esm/bcm-tab-item-header.entry.js +12 -12
  353. package/dist/esm/bcm-tab-item.entry.js +11 -11
  354. package/dist/esm/bcm-tab-pane.entry.js +3 -3
  355. package/dist/esm/bcm-tab.entry.js +3 -3
  356. package/dist/esm/bcm-table.entry.js +12 -12
  357. package/dist/esm/bcm-tabs-content.entry.js +4 -4
  358. package/dist/esm/bcm-tabs.entry.js +4 -4
  359. package/dist/esm/bcm-tag.entry.js +8 -8
  360. package/dist/esm/bcm-text.entry.js +8 -8
  361. package/dist/esm/bcm-time-picker.entry.js +8 -8
  362. package/dist/esm/bcm-timeline-item.entry.js +3 -3
  363. package/dist/esm/bcm-timeline.entry.js +3 -3
  364. package/dist/esm/bcm-toast.entry.js +8 -8
  365. package/dist/esm/bcm-treeview-group.entry.js +1 -1
  366. package/dist/esm/bromcom-ui.js +5 -5
  367. package/dist/esm/{caption-template-0c32ce16.js → caption-template-b5210fba.js} +2 -2
  368. package/dist/esm/{color-helper-845ba523.js → color-helper-c4fa9ebc.js} +2 -2
  369. package/dist/esm/{colors-ebea297f.js → colors-e1c31f79.js} +1 -1
  370. package/dist/esm/{element-dragger-89bb52fd.js → element-dragger-7ea06c76.js} +1 -1
  371. package/dist/esm/{generate-f51f2b02.js → generate-7b9db394.js} +4 -13
  372. package/dist/esm/{global-d1c1614b.js → global-5a56dbcb.js} +2 -2
  373. package/dist/esm/{index-0615c2b8.js → index-4614b7f0.js} +1 -1
  374. package/dist/esm/index-a6d9d0af.js +541 -0
  375. package/dist/esm/{index-00c8a8f7.js → index-b84bc8c9.js} +1 -1
  376. package/dist/esm/index-c4568336.js +1594 -0
  377. package/dist/esm/{index-7e71bbc8.js → index-f38e3364.js} +1 -1
  378. package/dist/esm/{input-template-43cf6972.js → input-template-56887e94.js} +3 -3
  379. package/dist/esm/{is-load-decorator-8277e3b8.js → is-load-decorator-b8ca22f2.js} +1 -1
  380. package/dist/esm/{json-parse-decarator-05d60871.js → json-parse-decarator-70d0d84b.js} +2 -2
  381. package/dist/esm/{label-template-ad2e8119.js → label-template-b2e8f81d.js} +2 -2
  382. package/dist/esm/loader.js +5 -5
  383. package/dist/esm/moment-15cd9198.js +4598 -0
  384. package/dist/esm/{number-helper-96513ada.js → number-helper-847951a8.js} +1 -1
  385. package/dist/esm/old-bcm-popover-box.entry.js +11 -11
  386. package/dist/esm/old-bcm-popover.entry.js +6 -6
  387. package/dist/esm/{package-ebccec3c.js → package-a6df69df.js} +1 -1
  388. package/dist/esm/{popover-placement-279ce860.js → popover-placement-e6ed184e.js} +1 -1
  389. package/dist/esm/{slot-template-9234df88.js → slot-template-481a5ac5.js} +2 -2
  390. package/dist/esm/{stepper-states-0860f554.js → stepper-states-f49a097b.js} +3 -3
  391. package/dist/esm/{string-helper-8f5da9ec.js → string-helper-3526c4fe.js} +1 -1
  392. package/dist/esm/{tooltip-helper-ab4dde34.js → tooltip-helper-b8b00aee.js} +7 -7
  393. package/dist/esm/{utils-57652744.js → utils-b3338faf.js} +1 -1
  394. package/dist/esm/{validators-f9fdca63.js → validators-74e39305.js} +1 -1
  395. package/dist/types/components/molecules/linked/linked.d.ts +1 -0
  396. package/dist/types/components/organism/form/form.d.ts +1 -0
  397. package/dist/types/components/organism/list/list.d.ts +1 -1
  398. package/dist/types/components/other/attendance-actions/attendance-actions-comment.d.ts +24 -0
  399. package/dist/types/components/other/attendance-actions/attendance-actions-comment.style.d.ts +52 -0
  400. package/dist/types/components/other/attendance-actions/attendance-actions-dropdown.d.ts +18 -0
  401. package/dist/types/components/other/attendance-actions/attendance-actions-dropdown.style.d.ts +100 -0
  402. package/dist/types/components/other/attendance-actions/attendance-actions.d.ts +29 -0
  403. package/dist/types/components/other/attendance-actions/attendance-actions.style.d.ts +242 -0
  404. package/dist/types/components.d.ts +104 -0
  405. package/dist/types/helper/generate.d.ts +1 -1
  406. package/dist/types/models/bcm.d.ts +4 -0
  407. package/package.json +1 -1
  408. package/dist/bromcom-ui/p-000670b6.js +0 -5
  409. package/dist/bromcom-ui/p-228c74e9.entry.js +0 -5
  410. package/dist/bromcom-ui/p-56655c71.js +0 -5
  411. package/dist/bromcom-ui/p-64fad38b.js +0 -11
  412. package/dist/bromcom-ui/p-6fe10a4c.entry.js +0 -21
  413. package/dist/bromcom-ui/p-761208cf.entry.js +0 -5
  414. package/dist/bromcom-ui/p-7a2ea416.entry.js +0 -5
  415. package/dist/bromcom-ui/p-9f886bdd.js +0 -5
  416. package/dist/bromcom-ui/p-a0d60a3c.js +0 -5
  417. package/dist/bromcom-ui/p-a55d0baf.entry.js +0 -5
  418. package/dist/bromcom-ui/p-a9769aef.entry.js +0 -5
  419. package/dist/bromcom-ui/p-abc44b58.entry.js +0 -5
  420. package/dist/bromcom-ui/p-ae57f046.entry.js +0 -5
  421. package/dist/bromcom-ui/p-da0a6963.entry.js +0 -5
  422. package/dist/bromcom-ui/p-ed3b97b0.entry.js +0 -5
  423. package/dist/bromcom-ui/p-f800e665.js +0 -5
  424. package/dist/bromcom-ui/p-fe585083.entry.js +0 -5
  425. package/dist/cjs/bcm-button_15.cjs.entry.js +0 -37832
  426. package/dist/cjs/bcm-textarea.cjs.entry.js +0 -163
  427. package/dist/cjs/bcm-typography.cjs.entry.js +0 -21
  428. package/dist/esm/bcm-button_15.entry.js +0 -37814
  429. package/dist/esm/bcm-textarea.entry.js +0 -159
  430. package/dist/esm/bcm-typography.entry.js +0 -17
@@ -0,0 +1,253 @@
1
+ /*!
2
+ * Built with Stencil
3
+ * Copyright (c) Bromcom.
4
+ */
5
+ import { Generate } from "@bcm/helpers";
6
+ import { Bcm } from "@bcm/model";
7
+ import { FloatingUI } from "@bcm/utils";
8
+ import { Host, h } from "@stencil/core";
9
+ import cs from "classnames";
10
+ import { attendanceActionDropdownStyle } from "./attendance-actions-dropdown.style";
11
+ export class BcmAttendanceActionsDropdown {
12
+ constructor() {
13
+ this._id = Generate.UID();
14
+ this.size = Bcm.Size.medium;
15
+ this.disabled = false;
16
+ this.selectedKey = null;
17
+ this.targetId = null;
18
+ this.isShow = false;
19
+ this.data = [];
20
+ }
21
+ handleSelectItem(item) {
22
+ this.selectedKey = item.key;
23
+ this.change.emit(item);
24
+ }
25
+ async show() {
26
+ const targetElement = document.getElementById(this.targetId);
27
+ FloatingUI({
28
+ ref: targetElement,
29
+ floating: this.el,
30
+ placement: "bottom-end",
31
+ offset: 4,
32
+ });
33
+ this.isShow = true;
34
+ }
35
+ async hide() {
36
+ if (this.isShow) {
37
+ this.el.remove();
38
+ }
39
+ }
40
+ handleClickOutside() {
41
+ this.hide();
42
+ }
43
+ render() {
44
+ const { size } = this;
45
+ const { host, dataItem, selectedItem, key } = attendanceActionDropdownStyle({
46
+ size,
47
+ });
48
+ return (h(Host, { class: host() }, this.data.map((item) => (h("div", { class: cs(dataItem(), this.selectedKey === item.key && selectedItem()), onClick: () => this.handleSelectItem(item) }, h("span", { class: key() }, item.key, " - "), h("span", null, item.value))))));
49
+ }
50
+ static get is() { return "bcm-attendance-actions-dropdown"; }
51
+ static get properties() {
52
+ return {
53
+ "_id": {
54
+ "type": "string",
55
+ "mutable": true,
56
+ "complexType": {
57
+ "original": "string",
58
+ "resolved": "string",
59
+ "references": {}
60
+ },
61
+ "required": false,
62
+ "optional": false,
63
+ "docs": {
64
+ "tags": [],
65
+ "text": ""
66
+ },
67
+ "attribute": "id",
68
+ "reflect": true,
69
+ "defaultValue": "Generate.UID()"
70
+ },
71
+ "size": {
72
+ "type": "string",
73
+ "mutable": true,
74
+ "complexType": {
75
+ "original": "SizeTypes",
76
+ "resolved": "\"large\" | \"medium\" | \"small\"",
77
+ "references": {
78
+ "SizeTypes": {
79
+ "location": "import",
80
+ "path": "@bcm/model"
81
+ }
82
+ }
83
+ },
84
+ "required": false,
85
+ "optional": false,
86
+ "docs": {
87
+ "tags": [],
88
+ "text": ""
89
+ },
90
+ "attribute": "size",
91
+ "reflect": false,
92
+ "defaultValue": "Bcm.Size.medium"
93
+ },
94
+ "disabled": {
95
+ "type": "boolean",
96
+ "mutable": false,
97
+ "complexType": {
98
+ "original": "boolean",
99
+ "resolved": "boolean",
100
+ "references": {}
101
+ },
102
+ "required": false,
103
+ "optional": false,
104
+ "docs": {
105
+ "tags": [],
106
+ "text": ""
107
+ },
108
+ "attribute": "disabled",
109
+ "reflect": false,
110
+ "defaultValue": "false"
111
+ },
112
+ "selectedKey": {
113
+ "type": "string",
114
+ "mutable": true,
115
+ "complexType": {
116
+ "original": "string",
117
+ "resolved": "string",
118
+ "references": {}
119
+ },
120
+ "required": false,
121
+ "optional": false,
122
+ "docs": {
123
+ "tags": [],
124
+ "text": ""
125
+ },
126
+ "attribute": "selected-key",
127
+ "reflect": false,
128
+ "defaultValue": "null"
129
+ },
130
+ "targetId": {
131
+ "type": "string",
132
+ "mutable": false,
133
+ "complexType": {
134
+ "original": "string",
135
+ "resolved": "string",
136
+ "references": {}
137
+ },
138
+ "required": false,
139
+ "optional": false,
140
+ "docs": {
141
+ "tags": [],
142
+ "text": ""
143
+ },
144
+ "attribute": "target-id",
145
+ "reflect": false,
146
+ "defaultValue": "null"
147
+ },
148
+ "isShow": {
149
+ "type": "boolean",
150
+ "mutable": true,
151
+ "complexType": {
152
+ "original": "boolean",
153
+ "resolved": "boolean",
154
+ "references": {}
155
+ },
156
+ "required": false,
157
+ "optional": false,
158
+ "docs": {
159
+ "tags": [],
160
+ "text": ""
161
+ },
162
+ "attribute": "is-show",
163
+ "reflect": false,
164
+ "defaultValue": "false"
165
+ },
166
+ "data": {
167
+ "type": "unknown",
168
+ "mutable": true,
169
+ "complexType": {
170
+ "original": "Bcm.InputDropdownData[]",
171
+ "resolved": "InputDropdownData[]",
172
+ "references": {
173
+ "Bcm": {
174
+ "location": "import",
175
+ "path": "@bcm/model"
176
+ }
177
+ }
178
+ },
179
+ "required": false,
180
+ "optional": false,
181
+ "docs": {
182
+ "tags": [],
183
+ "text": ""
184
+ },
185
+ "defaultValue": "[]"
186
+ }
187
+ };
188
+ }
189
+ static get events() {
190
+ return [{
191
+ "method": "change",
192
+ "name": "bcm-attendance-actions-dropdown-change",
193
+ "bubbles": false,
194
+ "cancelable": true,
195
+ "composed": true,
196
+ "docs": {
197
+ "tags": [],
198
+ "text": ""
199
+ },
200
+ "complexType": {
201
+ "original": "any",
202
+ "resolved": "any",
203
+ "references": {}
204
+ }
205
+ }];
206
+ }
207
+ static get methods() {
208
+ return {
209
+ "show": {
210
+ "complexType": {
211
+ "signature": "() => Promise<void>",
212
+ "parameters": [],
213
+ "references": {
214
+ "Promise": {
215
+ "location": "global"
216
+ }
217
+ },
218
+ "return": "Promise<void>"
219
+ },
220
+ "docs": {
221
+ "text": "",
222
+ "tags": []
223
+ }
224
+ },
225
+ "hide": {
226
+ "complexType": {
227
+ "signature": "() => Promise<void>",
228
+ "parameters": [],
229
+ "references": {
230
+ "Promise": {
231
+ "location": "global"
232
+ }
233
+ },
234
+ "return": "Promise<void>"
235
+ },
236
+ "docs": {
237
+ "text": "",
238
+ "tags": []
239
+ }
240
+ }
241
+ };
242
+ }
243
+ static get elementRef() { return "el"; }
244
+ static get listeners() {
245
+ return [{
246
+ "name": "click",
247
+ "method": "handleClickOutside",
248
+ "target": "window",
249
+ "capture": false,
250
+ "passive": false
251
+ }];
252
+ }
253
+ }
@@ -0,0 +1,34 @@
1
+ /*!
2
+ * Built with Stencil
3
+ * Copyright (c) Bromcom.
4
+ */
5
+ import { tv } from "tailwind-variants";
6
+ export const attendanceActionDropdownStyle = tv({
7
+ slots: {
8
+ host: [
9
+ "tw-w-fit",
10
+ "tw-absolute tw-left-0 tw-right-0 tw-z-tooltip tw-opacity-100 tw-transition-opacity tw-duration-300",
11
+ "tw-overscroll-contain tw-scroll-smooth tw-rounded tw-bg-white tw-shadow tw-max-h-64 tw-overflow-y-auto",
12
+ "bcm-ui-element bcm-attendance-actions tw-flex tw-flex-col tw-items-start tw-justify-start tw-p-2 tw-font-medium tw-text-slate-700"
13
+ ],
14
+ dataItem: ["tw-flex tw-w-full tw-cursor-pointer tw-flex-row tw-items-start tw-justify-start tw-gap-2 tw-rounded hover:tw-bg-blue-100"],
15
+ key: ["tw-font-mono tw-text-slate-600"],
16
+ selectedItem: ["tw-bg-blue-100"],
17
+ },
18
+ variants: {
19
+ size: {
20
+ small: {
21
+ dataItem: ["tw-text-2.5 tw-px-2.5 tw-py-2"],
22
+ },
23
+ medium: {
24
+ dataItem: ["tw-text-3 tw-px-3 tw-py-2"],
25
+ },
26
+ large: {
27
+ dataItem: ["tw-text-4 tw-px-4 tw-py-2"],
28
+ },
29
+ }
30
+ },
31
+ defaultVariants: {
32
+ size: "medium"
33
+ },
34
+ });
@@ -0,0 +1,363 @@
1
+ /*!
2
+ * Built with Stencil
3
+ * Copyright (c) Bromcom.
4
+ */
5
+ import { Generate } from "@bcm/helpers";
6
+ import { Bcm } from "@bcm/model";
7
+ import { Host, h } from "@stencil/core";
8
+ import cs from "classnames";
9
+ import { attendanceActionStyle } from "./attendance-actions.style";
10
+ export class BcmAttendanceActions {
11
+ constructor() {
12
+ this._id = Generate.UID();
13
+ this.size = Bcm.Size.medium;
14
+ this.disabled = false;
15
+ this.data = [
16
+ { key: "P", value: "Present", color: "emerald", icon: "fa-solid fa-check", priority: 0 },
17
+ { key: "A", value: "Absent", color: "red", icon: "fa-solid fa-times", priority: 1 },
18
+ { key: "L", value: "Late", color: "amber", icon: "fa-solid fa-clock", priority: 2 },
19
+ { key: "C", value: "Other Authorised Circumstance", color: "blue", icon: "fa-solid fa-question" },
20
+ { key: "E", value: "Exlude", color: "blue", icon: "fa-solid fa-minus" },
21
+ { key: "G", value: "Family Holiday", color: "blue", icon: "fa-solid fa-minus" },
22
+ { key: "H", value: "Family Holiday (Agreed)", color: "blue", icon: "fa-solid fa-minus" },
23
+ { key: "I", value: "Illness", color: "blue", icon: "fa-solid fa-minus" },
24
+ { key: "J", value: "Intervier", color: "blue", icon: "fa-solid fa-minus" },
25
+ { key: "M", value: "Medical / Dental", color: "blue", icon: "fa-solid fa-minus" },
26
+ { key: "N", value: "No Reason yet PRovided", color: "blue", icon: "fa-solid fa-minus" },
27
+ { key: "O", value: "Unauthrised Absence", color: "blue", icon: "fa-solid fa-minus" },
28
+ { key: "U", value: "Late after Reg. Closed", color: "blue", icon: "fa-solid fa-minus" },
29
+ { key: "X", value: "Non-comp School Age Absence", color: "blue", icon: "fa-solid fa-minus" },
30
+ ];
31
+ this.lateKeys = "L";
32
+ this.hideComment = false;
33
+ }
34
+ get selectedItem() {
35
+ return this.data.find(item => item.selected);
36
+ }
37
+ get priorityButtons() {
38
+ return this.data.filter(item => item.priority !== undefined).sort((a, b) => a.priority - b.priority);
39
+ }
40
+ get renderButtons() {
41
+ const { selectedItem, priorityButtons } = this;
42
+ return [...(selectedItem ? [selectedItem] : priorityButtons.length ? priorityButtons : this.data.slice(0, 3))];
43
+ }
44
+ get lateKeysMap() {
45
+ return this.lateKeys.toLocaleLowerCase().split(",");
46
+ }
47
+ get isLate() {
48
+ var _a, _b;
49
+ return this.lateKeysMap.includes((_b = (_a = this.selectedItem) === null || _a === void 0 ? void 0 : _a.key) === null || _b === void 0 ? void 0 : _b.toLocaleLowerCase());
50
+ }
51
+ get dropdownMenuElement() {
52
+ return document.getElementById("attendance-dropdown-" + this._id);
53
+ }
54
+ get commentAreaElement() {
55
+ return document.getElementById("comment-" + this._id);
56
+ }
57
+ handleSelectItem(item, triggerChange = true, showComment = true) {
58
+ var _a, _b;
59
+ this.data = [...this.data.map(data => { var _a, _b; return (Object.assign(Object.assign({}, data), { selected: ((_a = item.key) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === ((_b = data.key) === null || _b === void 0 ? void 0 : _b.toLocaleLowerCase()) })); })];
60
+ (_a = this.dropdownMenuElement) === null || _a === void 0 ? void 0 : _a.hide();
61
+ (_b = this.commentAreaElement) === null || _b === void 0 ? void 0 : _b.hide();
62
+ if (!this.isLate)
63
+ return triggerChange && this.changed();
64
+ !this.hideComment && showComment && this.commentArea();
65
+ }
66
+ changed() {
67
+ this.change.emit(this.selectedItem);
68
+ }
69
+ hasDataForKey(key) {
70
+ return !!this.data.find(item => item.key.toLocaleLowerCase() === key.toLocaleLowerCase());
71
+ }
72
+ handleKeyPress({ key }) {
73
+ if (!this.hasDataForKey(key))
74
+ return;
75
+ const item = this.data.find(item => { var _a; return ((_a = item.key) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === (key === null || key === void 0 ? void 0 : key.toLocaleLowerCase()); });
76
+ this.handleSelectItem(item);
77
+ }
78
+ handleSave(lateMinutes, comment) {
79
+ this.data = [...this.data].map(item => {
80
+ var _a, _b, _c;
81
+ if (((_a = item.key) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === ((_c = (_b = this.selectedItem) === null || _b === void 0 ? void 0 : _b.key) === null || _c === void 0 ? void 0 : _c.toLocaleLowerCase())) {
82
+ return Object.assign(Object.assign({}, item), { lateMin: lateMinutes, comment });
83
+ }
84
+ return item;
85
+ });
86
+ this.changed();
87
+ }
88
+ dropdownMenu() {
89
+ var _a;
90
+ const dropdownMenu = Generate.createComponent("bcm-attendance-actions-dropdown", {
91
+ id: "attendance-dropdown-" + this._id,
92
+ size: this.size,
93
+ data: this.data,
94
+ selectedKey: (_a = this.selectedItem) === null || _a === void 0 ? void 0 : _a.key,
95
+ targetId: "attendance-dropdown-button-" + this._id,
96
+ });
97
+ dropdownMenu.addEventListener("bcm-attendance-actions-dropdown-change", ({ detail }) => {
98
+ this.handleSelectItem(detail);
99
+ });
100
+ dropdownMenu.show();
101
+ }
102
+ commentArea() {
103
+ var _a, _b;
104
+ const commentArea = Generate.createComponent("bcm-attendance-actions-comment", {
105
+ id: "comment-" + this._id,
106
+ size: this.size,
107
+ isLate: this.isLate,
108
+ targetId: "comment-area-" + this._id,
109
+ selectedItem: this.selectedItem,
110
+ lateMinutes: (_a = this.selectedItem) === null || _a === void 0 ? void 0 : _a.lateMin,
111
+ comment: (_b = this.selectedItem) === null || _b === void 0 ? void 0 : _b.comment,
112
+ });
113
+ commentArea.addEventListener("bcm-attendance-actions-comment-change", ({ detail }) => {
114
+ this.handleSave(detail.lateMinutes, detail.comment);
115
+ });
116
+ commentArea.show();
117
+ }
118
+ async set(key, triggerChange = true) {
119
+ if (!this.hasDataForKey(key))
120
+ return;
121
+ const item = this.data.find(item => { var _a; return ((_a = item.key) === null || _a === void 0 ? void 0 : _a.toLocaleLowerCase()) === (key === null || key === void 0 ? void 0 : key.toLocaleLowerCase()); });
122
+ this.handleSelectItem(item, triggerChange, false);
123
+ }
124
+ async get() {
125
+ return this.selectedItem;
126
+ }
127
+ render() {
128
+ var _a, _b, _c;
129
+ const { selectedItem, renderButtons, disabled, hideComment, size } = this;
130
+ const { host, buttonContainer, button, dropdownButton, commentIcon, mainButton } = attendanceActionStyle({
131
+ selected: !!selectedItem,
132
+ size,
133
+ disabled,
134
+ });
135
+ const buttonStyle = !!selectedItem
136
+ ? Generate.getTwColor({
137
+ color: (_a = selectedItem.color) !== null && _a !== void 0 ? _a : "blue",
138
+ tones: {
139
+ 600: ["bg"],
140
+ 700: ["hover-bg"],
141
+ 800: ["active-bg"],
142
+ },
143
+ variable: "--bcm-attendance-actions-button",
144
+ })
145
+ : {};
146
+ const buttonAttributes = {
147
+ class: cs(button(), mainButton()),
148
+ style: Object.assign({}, buttonStyle),
149
+ disabled,
150
+ type: "button",
151
+ };
152
+ const iconButtonAttributes = Object.assign(Object.assign({}, buttonAttributes), { class: cs(button(), dropdownButton()) });
153
+ const isShowCommentIcon = !hideComment && !!selectedItem;
154
+ const commentTooltip = (selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.comment) || (selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.lateMin) ? `${(selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.comment) || ""}${(selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.lateMin) ? ` (${selectedItem === null || selectedItem === void 0 ? void 0 : selectedItem.lateMin} min) ` : ""}` : "";
155
+ return (h(Host, { class: host(), onKeyPress: this.handleKeyPress.bind(this) }, h("div", { class: buttonContainer() }, renderButtons === null || renderButtons === void 0 ? void 0 :
156
+ renderButtons.map(item => {
157
+ return (h("button", Object.assign({}, buttonAttributes, { onClick: () => this.handleSelectItem(item), title: item.value }), h("i", { class: cs(item.icon || "fa-solid fa-minus", "!tw-leading-[inherit]") }), item.selected && h("span", { class: "tw-truncate" }, item.value)));
158
+ }), h("button", Object.assign({ id: "attendance-dropdown-button-" + this._id }, iconButtonAttributes, { onClick: () => this.dropdownMenu(), title: "More" }), h("i", { class: cs("fa-solid fa-angle-down !tw-leading-[inherit]") }))), h("div", { id: "comment-area-" + this._id, class: cs(commentIcon(), {
159
+ "tw-cursor-default": !isShowCommentIcon,
160
+ "tw-cursor-pointer": isShowCommentIcon,
161
+ }), onClick: () => isShowCommentIcon && this.commentArea() }, h("i", { title: isShowCommentIcon ? commentTooltip : "", class: cs("fa-solid fa-comment", {
162
+ "tw-text-gray-400": !(((_b = this.selectedItem) === null || _b === void 0 ? void 0 : _b.comment) || ((_c = this.selectedItem) === null || _c === void 0 ? void 0 : _c.lateMin)),
163
+ "tw-visible": isShowCommentIcon,
164
+ "tw-invisible": !isShowCommentIcon,
165
+ }) }))));
166
+ }
167
+ static get is() { return "bcm-attendance-actions"; }
168
+ static get originalStyleUrls() {
169
+ return {
170
+ "$": ["attendance-actions.scss"]
171
+ };
172
+ }
173
+ static get styleUrls() {
174
+ return {
175
+ "$": ["attendance-actions.css"]
176
+ };
177
+ }
178
+ static get properties() {
179
+ return {
180
+ "_id": {
181
+ "type": "string",
182
+ "mutable": true,
183
+ "complexType": {
184
+ "original": "string",
185
+ "resolved": "string",
186
+ "references": {}
187
+ },
188
+ "required": false,
189
+ "optional": false,
190
+ "docs": {
191
+ "tags": [],
192
+ "text": ""
193
+ },
194
+ "attribute": "id",
195
+ "reflect": true,
196
+ "defaultValue": "Generate.UID()"
197
+ },
198
+ "size": {
199
+ "type": "string",
200
+ "mutable": true,
201
+ "complexType": {
202
+ "original": "SizeTypes",
203
+ "resolved": "\"large\" | \"medium\" | \"small\"",
204
+ "references": {
205
+ "SizeTypes": {
206
+ "location": "import",
207
+ "path": "@bcm/model"
208
+ }
209
+ }
210
+ },
211
+ "required": false,
212
+ "optional": false,
213
+ "docs": {
214
+ "tags": [],
215
+ "text": ""
216
+ },
217
+ "attribute": "size",
218
+ "reflect": false,
219
+ "defaultValue": "Bcm.Size.medium"
220
+ },
221
+ "disabled": {
222
+ "type": "boolean",
223
+ "mutable": false,
224
+ "complexType": {
225
+ "original": "boolean",
226
+ "resolved": "boolean",
227
+ "references": {}
228
+ },
229
+ "required": false,
230
+ "optional": false,
231
+ "docs": {
232
+ "tags": [],
233
+ "text": ""
234
+ },
235
+ "attribute": "disabled",
236
+ "reflect": false,
237
+ "defaultValue": "false"
238
+ },
239
+ "data": {
240
+ "type": "unknown",
241
+ "mutable": true,
242
+ "complexType": {
243
+ "original": "Bcm.InputDropdownData[]",
244
+ "resolved": "InputDropdownData[]",
245
+ "references": {
246
+ "Bcm": {
247
+ "location": "import",
248
+ "path": "@bcm/model"
249
+ }
250
+ }
251
+ },
252
+ "required": false,
253
+ "optional": false,
254
+ "docs": {
255
+ "tags": [],
256
+ "text": ""
257
+ },
258
+ "defaultValue": "[\n { key: \"P\", value: \"Present\", color: \"emerald\", icon: \"fa-solid fa-check\", priority: 0 },\n { key: \"A\", value: \"Absent\", color: \"red\", icon: \"fa-solid fa-times\", priority: 1 },\n { key: \"L\", value: \"Late\", color: \"amber\", icon: \"fa-solid fa-clock\", priority: 2 },\n { key: \"C\", value: \"Other Authorised Circumstance\", color: \"blue\", icon: \"fa-solid fa-question\" },\n { key: \"E\", value: \"Exlude\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"G\", value: \"Family Holiday\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"H\", value: \"Family Holiday (Agreed)\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"I\", value: \"Illness\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"J\", value: \"Intervier\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"M\", value: \"Medical / Dental\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"N\", value: \"No Reason yet PRovided\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"O\", value: \"Unauthrised Absence\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"U\", value: \"Late after Reg. Closed\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n { key: \"X\", value: \"Non-comp School Age Absence\", color: \"blue\", icon: \"fa-solid fa-minus\" },\n ]"
259
+ },
260
+ "lateKeys": {
261
+ "type": "string",
262
+ "mutable": true,
263
+ "complexType": {
264
+ "original": "string",
265
+ "resolved": "string",
266
+ "references": {}
267
+ },
268
+ "required": false,
269
+ "optional": false,
270
+ "docs": {
271
+ "tags": [],
272
+ "text": ""
273
+ },
274
+ "attribute": "late-keys",
275
+ "reflect": false,
276
+ "defaultValue": "\"L\""
277
+ },
278
+ "hideComment": {
279
+ "type": "boolean",
280
+ "mutable": false,
281
+ "complexType": {
282
+ "original": "boolean",
283
+ "resolved": "boolean",
284
+ "references": {}
285
+ },
286
+ "required": false,
287
+ "optional": false,
288
+ "docs": {
289
+ "tags": [],
290
+ "text": ""
291
+ },
292
+ "attribute": "hide-comment",
293
+ "reflect": false,
294
+ "defaultValue": "false"
295
+ }
296
+ };
297
+ }
298
+ static get events() {
299
+ return [{
300
+ "method": "change",
301
+ "name": "bcm-attendance-change",
302
+ "bubbles": false,
303
+ "cancelable": true,
304
+ "composed": true,
305
+ "docs": {
306
+ "tags": [],
307
+ "text": ""
308
+ },
309
+ "complexType": {
310
+ "original": "any",
311
+ "resolved": "any",
312
+ "references": {}
313
+ }
314
+ }];
315
+ }
316
+ static get methods() {
317
+ return {
318
+ "set": {
319
+ "complexType": {
320
+ "signature": "(key: string, triggerChange?: boolean) => Promise<void>",
321
+ "parameters": [{
322
+ "tags": [],
323
+ "text": ""
324
+ }, {
325
+ "tags": [],
326
+ "text": ""
327
+ }],
328
+ "references": {
329
+ "Promise": {
330
+ "location": "global"
331
+ }
332
+ },
333
+ "return": "Promise<void>"
334
+ },
335
+ "docs": {
336
+ "text": "",
337
+ "tags": []
338
+ }
339
+ },
340
+ "get": {
341
+ "complexType": {
342
+ "signature": "() => Promise<Bcm.InputDropdownData>",
343
+ "parameters": [],
344
+ "references": {
345
+ "Promise": {
346
+ "location": "global"
347
+ },
348
+ "Bcm": {
349
+ "location": "import",
350
+ "path": "@bcm/model"
351
+ }
352
+ },
353
+ "return": "Promise<InputDropdownData>"
354
+ },
355
+ "docs": {
356
+ "text": "",
357
+ "tags": []
358
+ }
359
+ }
360
+ };
361
+ }
362
+ static get elementRef() { return "el"; }
363
+ }