@cwellt_software/cwellt-reactjs-lib 1.4.2 → 1.4.4

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 (2893) hide show
  1. package/dist/common/classes/CwSelectList.d.ts +8 -0
  2. package/dist/common/classes/CwSelectList.d.ts.map +1 -0
  3. package/dist/common/classes/CwSelectListItems.d.ts +9 -0
  4. package/dist/common/classes/CwSelectListItems.d.ts.map +1 -0
  5. package/dist/common/functions/collections.d.ts +15 -0
  6. package/dist/common/functions/collections.d.ts.map +1 -0
  7. package/dist/common/functions/colorManipulation.d.ts +6 -0
  8. package/dist/common/functions/colorManipulation.d.ts.map +1 -0
  9. package/dist/common/functions/dsl/UiEventDSL.d.ts +9 -0
  10. package/dist/common/functions/dsl/UiEventDSL.d.ts.map +1 -0
  11. package/dist/common/functions/useSingleAndDoubleClicks.d.ts +7 -0
  12. package/dist/common/functions/useSingleAndDoubleClicks.d.ts.map +1 -0
  13. package/dist/common/interfaces/CwSelectListProps.d.ts +9 -0
  14. package/dist/common/interfaces/CwSelectListProps.d.ts.map +1 -0
  15. package/dist/components/control/action/button/CwButton.d.ts +26 -0
  16. package/dist/components/control/action/button/CwButton.d.ts.map +1 -0
  17. package/dist/components/control/action/buttons/CwButtons.d.ts +59 -0
  18. package/dist/components/control/action/buttons/CwButtons.d.ts.map +1 -0
  19. package/dist/components/control/action/contextmenu/CwContextMenu.d.ts +23 -0
  20. package/dist/components/control/action/contextmenu/CwContextMenu.d.ts.map +1 -0
  21. package/dist/components/control/action/contextual-menu/CwContextualMenu.d.ts +29 -0
  22. package/dist/components/control/action/contextual-menu/CwContextualMenu.d.ts.map +1 -0
  23. package/dist/components/control/action/search/CwSearch.d.ts +16 -0
  24. package/dist/components/control/action/search/CwSearch.d.ts.map +1 -0
  25. package/dist/components/control/choice/checkbox/CwCheckbox.d.ts +17 -0
  26. package/dist/components/control/choice/checkbox/CwCheckbox.d.ts.map +1 -0
  27. package/dist/components/control/choice/deprecated/MultiSelect_deprecated_.d.ts +24 -0
  28. package/dist/components/control/choice/deprecated/MultiSelect_deprecated_.d.ts.map +1 -0
  29. package/dist/components/control/choice/dropdown/CwDropdown.d.ts +19 -0
  30. package/dist/components/control/choice/dropdown/CwDropdown.d.ts.map +1 -0
  31. package/dist/components/control/choice/dropdown/CwDropdownContainer.d.ts +17 -0
  32. package/dist/components/control/choice/dropdown/CwDropdownContainer.d.ts.map +1 -0
  33. package/dist/components/control/choice/dropdown/CwDropdownFilter.d.ts +28 -0
  34. package/dist/components/control/choice/dropdown/CwDropdownFilter.d.ts.map +1 -0
  35. package/dist/components/control/choice/dropdown/CwDropdownNavigation.d.ts +21 -0
  36. package/dist/components/control/choice/dropdown/CwDropdownNavigation.d.ts.map +1 -0
  37. package/dist/components/control/choice/multi-filter/CwMultiFilter.d.ts +158 -0
  38. package/dist/components/control/choice/multi-filter/CwMultiFilter.d.ts.map +1 -0
  39. package/dist/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.d.ts +33 -0
  40. package/dist/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.d.ts.map +1 -0
  41. package/dist/components/control/choice/multiselect/CwHeadFilter.d.ts +16 -0
  42. package/dist/components/control/choice/multiselect/CwHeadFilter.d.ts.map +1 -0
  43. package/dist/components/control/choice/multiselect/CwMultiselect.d.ts +13 -0
  44. package/dist/components/control/choice/multiselect/CwMultiselect.d.ts.map +1 -0
  45. package/dist/components/control/choice/multiselect/CwOptionList.d.ts +15 -0
  46. package/dist/components/control/choice/multiselect/CwOptionList.d.ts.map +1 -0
  47. package/dist/components/control/choice/option/CwOption.d.ts +17 -0
  48. package/dist/components/control/choice/option/CwOption.d.ts.map +1 -0
  49. package/dist/components/control/choice/select/CwSelect.d.ts +48 -0
  50. package/dist/components/control/choice/select/CwSelect.d.ts.map +1 -0
  51. package/dist/components/control/choice/toggle/CwToggle.d.ts +28 -0
  52. package/dist/components/control/choice/toggle/CwToggle.d.ts.map +1 -0
  53. package/dist/components/control/input/any/CwInput.d.ts +17 -0
  54. package/dist/components/control/input/any/CwInput.d.ts.map +1 -0
  55. package/dist/components/control/input/date/CwInputDate.d.ts +40 -0
  56. package/dist/components/control/input/date/CwInputDate.d.ts.map +1 -0
  57. package/dist/components/control/input/date-picker/CwInputDatePicker.d.ts +7 -0
  58. package/dist/components/control/input/date-picker/CwInputDatePicker.d.ts.map +1 -0
  59. package/dist/components/control/input/date-text/CwInputDateText.d.ts +38 -0
  60. package/dist/components/control/input/date-text/CwInputDateText.d.ts.map +1 -0
  61. package/dist/components/control/input/datetime/CwInputDatetime.d.ts +40 -0
  62. package/dist/components/control/input/datetime/CwInputDatetime.d.ts.map +1 -0
  63. package/dist/components/control/input/digit/CwDigit.d.ts +40 -0
  64. package/dist/components/control/input/digit/CwDigit.d.ts.map +1 -0
  65. package/dist/components/control/input/file/CwFileUpload.d.ts +18 -0
  66. package/dist/components/control/input/file/CwFileUpload.d.ts.map +1 -0
  67. package/dist/components/control/input/file/CwFileUploadMultiple.d.ts +15 -0
  68. package/dist/components/control/input/file/CwFileUploadMultiple.d.ts.map +1 -0
  69. package/dist/components/control/input/image/CwInputImage.d.ts +7 -0
  70. package/dist/components/control/input/image/CwInputImage.d.ts.map +1 -0
  71. package/dist/components/control/input/image-area/CwImageArea.d.ts +53 -0
  72. package/dist/components/control/input/image-area/CwImageArea.d.ts.map +1 -0
  73. package/dist/components/control/input/number/CwInputNumber.d.ts +20 -0
  74. package/dist/components/control/input/number/CwInputNumber.d.ts.map +1 -0
  75. package/dist/components/control/input/phone/CwInputPhone.d.ts +36 -0
  76. package/dist/components/control/input/phone/CwInputPhone.d.ts.map +1 -0
  77. package/dist/components/control/input/text/CwInputText.d.ts +40 -0
  78. package/dist/components/control/input/text/CwInputText.d.ts.map +1 -0
  79. package/dist/components/control/input/text-area/CwTextArea.d.ts +24 -0
  80. package/dist/components/control/input/text-area/CwTextArea.d.ts.map +1 -0
  81. package/dist/components/control/input/time/CwTime.d.ts +40 -0
  82. package/dist/components/control/input/time/CwTime.d.ts.map +1 -0
  83. package/dist/components/control/input/weekday/CwWeekdaySelector.d.ts +53 -0
  84. package/dist/components/control/input/weekday/CwWeekdaySelector.d.ts.map +1 -0
  85. package/dist/components/custom/find-airport/CwFindAirportComp.d.ts +35 -0
  86. package/dist/components/custom/find-airport/CwFindAirportComp.d.ts.map +1 -0
  87. package/dist/components/custom/scheduler/CwSchedulerComp.d.ts +19 -0
  88. package/dist/components/custom/scheduler/CwSchedulerComp.d.ts.map +1 -0
  89. package/dist/components/custom/scheduler/CwSuperSchedulerComp.d.ts +86 -0
  90. package/dist/components/custom/scheduler/CwSuperSchedulerComp.d.ts.map +1 -0
  91. package/dist/components/custom/scheduler/components/EventRender.d.ts +10 -0
  92. package/dist/components/custom/scheduler/components/EventRender.d.ts.map +1 -0
  93. package/dist/components/custom/scheduler/components/ResourceListRender.d.ts +20 -0
  94. package/dist/components/custom/scheduler/components/ResourceListRender.d.ts.map +1 -0
  95. package/dist/components/custom/scheduler/components/ResourceRender.d.ts +14 -0
  96. package/dist/components/custom/scheduler/components/ResourceRender.d.ts.map +1 -0
  97. package/dist/components/custom/scheduler/components/day_headers/DayHeader.d.ts +11 -0
  98. package/dist/components/custom/scheduler/components/day_headers/DayHeader.d.ts.map +1 -0
  99. package/dist/components/custom/scheduler/components/day_headers/MonthHeader.d.ts +11 -0
  100. package/dist/components/custom/scheduler/components/day_headers/MonthHeader.d.ts.map +1 -0
  101. package/dist/components/custom/scheduler/components/day_headers/MyDaysHeader.d.ts +13 -0
  102. package/dist/components/custom/scheduler/components/day_headers/MyDaysHeader.d.ts.map +1 -0
  103. package/dist/components/custom/scheduler/components/day_headers/WeekHeader.d.ts +11 -0
  104. package/dist/components/custom/scheduler/components/day_headers/WeekHeader.d.ts.map +1 -0
  105. package/dist/components/custom/scheduler/components/resources_title_list/ResourcesTitleList.d.ts +14 -0
  106. package/dist/components/custom/scheduler/components/resources_title_list/ResourcesTitleList.d.ts.map +1 -0
  107. package/dist/components/custom/scheduler/components/scheduler_content_area/SchedulerContentArea.d.ts +23 -0
  108. package/dist/components/custom/scheduler/components/scheduler_content_area/SchedulerContentArea.d.ts.map +1 -0
  109. package/dist/components/custom/scheduler/components/scheduler_header/SchedulerHeader.d.ts +8 -0
  110. package/dist/components/custom/scheduler/components/scheduler_header/SchedulerHeader.d.ts.map +1 -0
  111. package/dist/components/custom/scheduler/components/scheduler_timeline/SchedulerTimeLine.d.ts +12 -0
  112. package/dist/components/custom/scheduler/components/scheduler_timeline/SchedulerTimeLine.d.ts.map +1 -0
  113. package/dist/components/custom/scheduler/components/time_headers/TimeHeader.d.ts +12 -0
  114. package/dist/components/custom/scheduler/components/time_headers/TimeHeader.d.ts.map +1 -0
  115. package/dist/components/custom/scheduler/components/time_headers/TimeHeaderRow.d.ts +10 -0
  116. package/dist/components/custom/scheduler/components/time_headers/TimeHeaderRow.d.ts.map +1 -0
  117. package/dist/components/custom/scheduler/components/time_line/TimeLine.d.ts +12 -0
  118. package/dist/components/custom/scheduler/components/time_line/TimeLine.d.ts.map +1 -0
  119. package/dist/components/custom/scheduler/logic/dates/addMinutesToDateFromPx.d.ts +2 -0
  120. package/dist/components/custom/scheduler/logic/dates/addMinutesToDateFromPx.d.ts.map +1 -0
  121. package/dist/components/custom/scheduler/logic/dates/daysBetweenTwoDates.d.ts +2 -0
  122. package/dist/components/custom/scheduler/logic/dates/daysBetweenTwoDates.d.ts.map +1 -0
  123. package/dist/components/custom/scheduler/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts +2 -0
  124. package/dist/components/custom/scheduler/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts.map +1 -0
  125. package/dist/components/custom/scheduler/logic/dates/getFormatedTimeForHeader.d.ts +7 -0
  126. package/dist/components/custom/scheduler/logic/dates/getFormatedTimeForHeader.d.ts.map +1 -0
  127. package/dist/components/custom/scheduler/logic/dates/getMonthHeaderData.d.ts +10 -0
  128. package/dist/components/custom/scheduler/logic/dates/getMonthHeaderData.d.ts.map +1 -0
  129. package/dist/components/custom/scheduler/logic/dates/getUtcToday.d.ts +2 -0
  130. package/dist/components/custom/scheduler/logic/dates/getUtcToday.d.ts.map +1 -0
  131. package/dist/components/custom/scheduler/logic/dates/getWeekHeaderDataFromWeekRange.d.ts +7 -0
  132. package/dist/components/custom/scheduler/logic/dates/getWeekHeaderDataFromWeekRange.d.ts.map +1 -0
  133. package/dist/components/custom/scheduler/logic/dates/listOfDatesToWeeks.d.ts +8 -0
  134. package/dist/components/custom/scheduler/logic/dates/listOfDatesToWeeks.d.ts.map +1 -0
  135. package/dist/components/custom/scheduler/logic/divisions/calculateDivisionType.d.ts +2 -0
  136. package/dist/components/custom/scheduler/logic/divisions/calculateDivisionType.d.ts.map +1 -0
  137. package/dist/components/custom/scheduler/logic/divisions/calculateDivisions.d.ts +2 -0
  138. package/dist/components/custom/scheduler/logic/divisions/calculateDivisions.d.ts.map +1 -0
  139. package/dist/components/custom/scheduler/logic/filtering/filterEvents.d.ts +3 -0
  140. package/dist/components/custom/scheduler/logic/filtering/filterEvents.d.ts.map +1 -0
  141. package/dist/components/custom/scheduler/logic/filtering/filterResources.d.ts +3 -0
  142. package/dist/components/custom/scheduler/logic/filtering/filterResources.d.ts.map +1 -0
  143. package/dist/components/custom/scheduler/logic/onDrop/OnDrop.d.ts +13 -0
  144. package/dist/components/custom/scheduler/logic/onDrop/OnDrop.d.ts.map +1 -0
  145. package/dist/components/custom/scheduler/logic/pixels/getPixelsForEvent.d.ts +17 -0
  146. package/dist/components/custom/scheduler/logic/pixels/getPixelsForEvent.d.ts.map +1 -0
  147. package/dist/components/custom/scheduler/logic/pixels/heightScheduler.d.ts +3 -0
  148. package/dist/components/custom/scheduler/logic/pixels/heightScheduler.d.ts.map +1 -0
  149. package/dist/components/custom/scheduler/logic/state_handle/doubleClickOnResource.d.ts +4 -0
  150. package/dist/components/custom/scheduler/logic/state_handle/doubleClickOnResource.d.ts.map +1 -0
  151. package/dist/components/custom/scheduler/logic/state_handle/onDragOver.d.ts +2 -0
  152. package/dist/components/custom/scheduler/logic/state_handle/onDragOver.d.ts.map +1 -0
  153. package/dist/components/custom/scheduler/logic/state_handle/onDropEventToResource.d.ts +5 -0
  154. package/dist/components/custom/scheduler/logic/state_handle/onDropEventToResource.d.ts.map +1 -0
  155. package/dist/components/custom/scheduler/logic/strings/compareStrings.d.ts +2 -0
  156. package/dist/components/custom/scheduler/logic/strings/compareStrings.d.ts.map +1 -0
  157. package/dist/components/custom/scheduler/logic/strings/getGUID.d.ts +2 -0
  158. package/dist/components/custom/scheduler/logic/strings/getGUID.d.ts.map +1 -0
  159. package/dist/components/custom/scheduler/logic/ui/checkIfSlotAvailable.d.ts +3 -0
  160. package/dist/components/custom/scheduler/logic/ui/checkIfSlotAvailable.d.ts.map +1 -0
  161. package/dist/components/custom/scheduler/logic/ui/getEventsOfResource.d.ts +4 -0
  162. package/dist/components/custom/scheduler/logic/ui/getEventsOfResource.d.ts.map +1 -0
  163. package/dist/components/custom/scheduler/logic/ui/getTimeHeaders.d.ts +2 -0
  164. package/dist/components/custom/scheduler/logic/ui/getTimeHeaders.d.ts.map +1 -0
  165. package/dist/components/custom/scheduler/logic/ui/isAllowedToMove.d.ts +3 -0
  166. package/dist/components/custom/scheduler/logic/ui/isAllowedToMove.d.ts.map +1 -0
  167. package/dist/components/custom/scheduler/state/CblDragAndDrop.d.ts +11 -0
  168. package/dist/components/custom/scheduler/state/CblDragAndDrop.d.ts.map +1 -0
  169. package/dist/components/custom/scheduler/state/CwSchedulerProps.d.ts +43 -0
  170. package/dist/components/custom/scheduler/state/CwSchedulerProps.d.ts.map +1 -0
  171. package/dist/components/custom/scheduler/state/Resource.d.ts +14 -0
  172. package/dist/components/custom/scheduler/state/Resource.d.ts.map +1 -0
  173. package/dist/components/custom/scheduler/state/State.d.ts +19 -0
  174. package/dist/components/custom/scheduler/state/State.d.ts.map +1 -0
  175. package/dist/components/custom/scheduler/state/cblEvent.d.ts +18 -0
  176. package/dist/components/custom/scheduler/state/cblEvent.d.ts.map +1 -0
  177. package/dist/components/custom/scheduler/state/cblEventCompProps.d.ts +7 -0
  178. package/dist/components/custom/scheduler/state/cblEventCompProps.d.ts.map +1 -0
  179. package/dist/components/custom/scheduler/state/resourceCompProps2.d.ts +6 -0
  180. package/dist/components/custom/scheduler/state/resourceCompProps2.d.ts.map +1 -0
  181. package/dist/components/custom/scheduler-new/presentation/NewScheduler.d.ts +29 -0
  182. package/dist/components/custom/scheduler-new/presentation/NewScheduler.d.ts.map +1 -0
  183. package/dist/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.d.ts +80 -0
  184. package/dist/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.d.ts.map +1 -0
  185. package/dist/components/custom/scheduler-new/presentation/SchedulerPresenter.d.ts +27 -0
  186. package/dist/components/custom/scheduler-new/presentation/SchedulerPresenter.d.ts.map +1 -0
  187. package/dist/components/custom/scheduler-new/presentation/components/header/HeaderDivision.d.ts +19 -0
  188. package/dist/components/custom/scheduler-new/presentation/components/header/HeaderDivision.d.ts.map +1 -0
  189. package/dist/components/custom/scheduler-new/presentation/components/header/HeaderTitle.d.ts +10 -0
  190. package/dist/components/custom/scheduler-new/presentation/components/header/HeaderTitle.d.ts.map +1 -0
  191. package/dist/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.d.ts +5 -0
  192. package/dist/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.d.ts.map +1 -0
  193. package/dist/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.d.ts +17 -0
  194. package/dist/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.d.ts.map +1 -0
  195. package/dist/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.d.ts +8 -0
  196. package/dist/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.d.ts.map +1 -0
  197. package/dist/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts +17 -0
  198. package/dist/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts.map +1 -0
  199. package/dist/components/custom/scheduler-new/presentation/components/row/Event.d.ts +34 -0
  200. package/dist/components/custom/scheduler-new/presentation/components/row/Event.d.ts.map +1 -0
  201. package/dist/components/custom/scheduler-new/presentation/components/row/EventSideDrag.d.ts +8 -0
  202. package/dist/components/custom/scheduler-new/presentation/components/row/EventSideDrag.d.ts.map +1 -0
  203. package/dist/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts +27 -0
  204. package/dist/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts.map +1 -0
  205. package/dist/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.d.ts +10 -0
  206. package/dist/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.d.ts.map +1 -0
  207. package/dist/components/custom/scheduler-new/presentation/components/timeline/TimeLine.d.ts +15 -0
  208. package/dist/components/custom/scheduler-new/presentation/components/timeline/TimeLine.d.ts.map +1 -0
  209. package/dist/components/custom/scheduler-new/presentation/components/timeline/WeekEndLine.d.ts +11 -0
  210. package/dist/components/custom/scheduler-new/presentation/components/timeline/WeekEndLine.d.ts.map +1 -0
  211. package/dist/components/custom/scheduler-new/presentation/helpers.d.ts +19 -0
  212. package/dist/components/custom/scheduler-new/presentation/helpers.d.ts.map +1 -0
  213. package/dist/components/custom/scheduler-new/presentation/logic/WeekendCalc.d.ts +4 -0
  214. package/dist/components/custom/scheduler-new/presentation/logic/WeekendCalc.d.ts.map +1 -0
  215. package/dist/components/custom/scheduler-new/presentation/logic/dateFromPercentage.d.ts +2 -0
  216. package/dist/components/custom/scheduler-new/presentation/logic/dateFromPercentage.d.ts.map +1 -0
  217. package/dist/components/custom/scheduler-new/presentation/logic/eventIsVisible.d.ts +2 -0
  218. package/dist/components/custom/scheduler-new/presentation/logic/eventIsVisible.d.ts.map +1 -0
  219. package/dist/components/custom/scheduler-new/presentation/logic/getDefaultDivisions.d.ts +6 -0
  220. package/dist/components/custom/scheduler-new/presentation/logic/getDefaultDivisions.d.ts.map +1 -0
  221. package/dist/components/custom/scheduler-new/presentation/logic/getDivisions.d.ts +3 -0
  222. package/dist/components/custom/scheduler-new/presentation/logic/getDivisions.d.ts.map +1 -0
  223. package/dist/components/custom/scheduler-new/presentation/logic/getEventSizes.d.ts +6 -0
  224. package/dist/components/custom/scheduler-new/presentation/logic/getEventSizes.d.ts.map +1 -0
  225. package/dist/components/custom/scheduler-new/presentation/logic/getLinesByDivisions.d.ts +4 -0
  226. package/dist/components/custom/scheduler-new/presentation/logic/getLinesByDivisions.d.ts.map +1 -0
  227. package/dist/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.d.ts +2 -0
  228. package/dist/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.d.ts.map +1 -0
  229. package/dist/components/custom/scheduler-new/presentation/logic/separateEventsToInnerRows.d.ts +3 -0
  230. package/dist/components/custom/scheduler-new/presentation/logic/separateEventsToInnerRows.d.ts.map +1 -0
  231. package/dist/components/custom/scheduler-new/presentation/logic/sortByCategoryAndTitle.d.ts +4 -0
  232. package/dist/components/custom/scheduler-new/presentation/logic/sortByCategoryAndTitle.d.ts.map +1 -0
  233. package/dist/components/custom/scheduler-new/presentation/state/ui/SchedulerState.d.ts +12 -0
  234. package/dist/components/custom/scheduler-new/presentation/state/ui/SchedulerState.d.ts.map +1 -0
  235. package/dist/components/custom/scheduler-new/presentation/state/ui/WeekRange.d.ts +5 -0
  236. package/dist/components/custom/scheduler-new/presentation/state/ui/WeekRange.d.ts.map +1 -0
  237. package/dist/components/custom/scheduler-temporal/CwSchedulerComp2.d.ts +24 -0
  238. package/dist/components/custom/scheduler-temporal/CwSchedulerComp2.d.ts.map +1 -0
  239. package/dist/components/custom/scheduler-temporal/CwSuperSchedulerComp.d.ts +86 -0
  240. package/dist/components/custom/scheduler-temporal/CwSuperSchedulerComp.d.ts.map +1 -0
  241. package/dist/components/custom/scheduler-temporal/components/EventRender.d.ts +10 -0
  242. package/dist/components/custom/scheduler-temporal/components/EventRender.d.ts.map +1 -0
  243. package/dist/components/custom/scheduler-temporal/components/ResourceListRender.d.ts +20 -0
  244. package/dist/components/custom/scheduler-temporal/components/ResourceListRender.d.ts.map +1 -0
  245. package/dist/components/custom/scheduler-temporal/components/ResourceRender.d.ts +14 -0
  246. package/dist/components/custom/scheduler-temporal/components/ResourceRender.d.ts.map +1 -0
  247. package/dist/components/custom/scheduler-temporal/components/day_headers/DayHeader.d.ts +11 -0
  248. package/dist/components/custom/scheduler-temporal/components/day_headers/DayHeader.d.ts.map +1 -0
  249. package/dist/components/custom/scheduler-temporal/components/day_headers/MonthHeader.d.ts +11 -0
  250. package/dist/components/custom/scheduler-temporal/components/day_headers/MonthHeader.d.ts.map +1 -0
  251. package/dist/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.d.ts +13 -0
  252. package/dist/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.d.ts.map +1 -0
  253. package/dist/components/custom/scheduler-temporal/components/day_headers/WeekHeader.d.ts +11 -0
  254. package/dist/components/custom/scheduler-temporal/components/day_headers/WeekHeader.d.ts.map +1 -0
  255. package/dist/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.d.ts +14 -0
  256. package/dist/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.d.ts.map +1 -0
  257. package/dist/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.d.ts +23 -0
  258. package/dist/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.d.ts.map +1 -0
  259. package/dist/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.d.ts +8 -0
  260. package/dist/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.d.ts.map +1 -0
  261. package/dist/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.d.ts +12 -0
  262. package/dist/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.d.ts.map +1 -0
  263. package/dist/components/custom/scheduler-temporal/components/time_headers/TimeHeader.d.ts +12 -0
  264. package/dist/components/custom/scheduler-temporal/components/time_headers/TimeHeader.d.ts.map +1 -0
  265. package/dist/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.d.ts +10 -0
  266. package/dist/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.d.ts.map +1 -0
  267. package/dist/components/custom/scheduler-temporal/components/time_line/TimeLine.d.ts +12 -0
  268. package/dist/components/custom/scheduler-temporal/components/time_line/TimeLine.d.ts.map +1 -0
  269. package/dist/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.d.ts +2 -0
  270. package/dist/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.d.ts.map +1 -0
  271. package/dist/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.d.ts +2 -0
  272. package/dist/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.d.ts.map +1 -0
  273. package/dist/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts +2 -0
  274. package/dist/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts.map +1 -0
  275. package/dist/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.d.ts +7 -0
  276. package/dist/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.d.ts.map +1 -0
  277. package/dist/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.d.ts +10 -0
  278. package/dist/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.d.ts.map +1 -0
  279. package/dist/components/custom/scheduler-temporal/logic/dates/getUtcToday.d.ts +2 -0
  280. package/dist/components/custom/scheduler-temporal/logic/dates/getUtcToday.d.ts.map +1 -0
  281. package/dist/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.d.ts +7 -0
  282. package/dist/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.d.ts.map +1 -0
  283. package/dist/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.d.ts +8 -0
  284. package/dist/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.d.ts.map +1 -0
  285. package/dist/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.d.ts +2 -0
  286. package/dist/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.d.ts.map +1 -0
  287. package/dist/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.d.ts +2 -0
  288. package/dist/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.d.ts.map +1 -0
  289. package/dist/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.d.ts +15 -0
  290. package/dist/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.d.ts.map +1 -0
  291. package/dist/components/custom/scheduler-temporal/logic/filtering/filterEvents.d.ts +3 -0
  292. package/dist/components/custom/scheduler-temporal/logic/filtering/filterEvents.d.ts.map +1 -0
  293. package/dist/components/custom/scheduler-temporal/logic/filtering/filterResources.d.ts +3 -0
  294. package/dist/components/custom/scheduler-temporal/logic/filtering/filterResources.d.ts.map +1 -0
  295. package/dist/components/custom/scheduler-temporal/logic/onDrop/OnDrop.d.ts +13 -0
  296. package/dist/components/custom/scheduler-temporal/logic/onDrop/OnDrop.d.ts.map +1 -0
  297. package/dist/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.d.ts +17 -0
  298. package/dist/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.d.ts.map +1 -0
  299. package/dist/components/custom/scheduler-temporal/logic/pixels/heightScheduler.d.ts +3 -0
  300. package/dist/components/custom/scheduler-temporal/logic/pixels/heightScheduler.d.ts.map +1 -0
  301. package/dist/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.d.ts +4 -0
  302. package/dist/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.d.ts.map +1 -0
  303. package/dist/components/custom/scheduler-temporal/logic/state_handle/onDragOver.d.ts +2 -0
  304. package/dist/components/custom/scheduler-temporal/logic/state_handle/onDragOver.d.ts.map +1 -0
  305. package/dist/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.d.ts +5 -0
  306. package/dist/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.d.ts.map +1 -0
  307. package/dist/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.d.ts +4 -0
  308. package/dist/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.d.ts.map +1 -0
  309. package/dist/components/custom/scheduler-temporal/logic/strings/compareStrings.d.ts +2 -0
  310. package/dist/components/custom/scheduler-temporal/logic/strings/compareStrings.d.ts.map +1 -0
  311. package/dist/components/custom/scheduler-temporal/logic/strings/getGUID.d.ts +2 -0
  312. package/dist/components/custom/scheduler-temporal/logic/strings/getGUID.d.ts.map +1 -0
  313. package/dist/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.d.ts +3 -0
  314. package/dist/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.d.ts.map +1 -0
  315. package/dist/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.d.ts +6 -0
  316. package/dist/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.d.ts.map +1 -0
  317. package/dist/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.d.ts +2 -0
  318. package/dist/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.d.ts.map +1 -0
  319. package/dist/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.d.ts +3 -0
  320. package/dist/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.d.ts.map +1 -0
  321. package/dist/components/custom/scheduler-temporal/state/CblDragAndDrop.d.ts +11 -0
  322. package/dist/components/custom/scheduler-temporal/state/CblDragAndDrop.d.ts.map +1 -0
  323. package/dist/components/custom/scheduler-temporal/state/CwSchedulerProps.d.ts +43 -0
  324. package/dist/components/custom/scheduler-temporal/state/CwSchedulerProps.d.ts.map +1 -0
  325. package/dist/components/custom/scheduler-temporal/state/Resource.d.ts +14 -0
  326. package/dist/components/custom/scheduler-temporal/state/Resource.d.ts.map +1 -0
  327. package/dist/components/custom/scheduler-temporal/state/State.d.ts +25 -0
  328. package/dist/components/custom/scheduler-temporal/state/State.d.ts.map +1 -0
  329. package/dist/components/custom/scheduler-temporal/state/cblEvent.d.ts +18 -0
  330. package/dist/components/custom/scheduler-temporal/state/cblEvent.d.ts.map +1 -0
  331. package/dist/components/custom/scheduler-temporal/state/cblEventCompProps.d.ts +7 -0
  332. package/dist/components/custom/scheduler-temporal/state/cblEventCompProps.d.ts.map +1 -0
  333. package/dist/components/custom/super-scheduler/PinRowHeader.d.ts +15 -0
  334. package/dist/components/custom/super-scheduler/PinRowHeader.d.ts.map +1 -0
  335. package/dist/components/custom/super-scheduler/SuperScheduler.d.ts +25 -0
  336. package/dist/components/custom/super-scheduler/SuperScheduler.d.ts.map +1 -0
  337. package/dist/components/custom/super-scheduler/SuperSchedulerEvents.d.ts +13 -0
  338. package/dist/components/custom/super-scheduler/SuperSchedulerEvents.d.ts.map +1 -0
  339. package/dist/components/custom/super-scheduler/SuperSchedulerPresenter.d.ts +9 -0
  340. package/dist/components/custom/super-scheduler/SuperSchedulerPresenter.d.ts.map +1 -0
  341. package/dist/components/display/data/accordion/CwAccordionContainer.d.ts +14 -0
  342. package/dist/components/display/data/accordion/CwAccordionContainer.d.ts.map +1 -0
  343. package/dist/components/display/data/generic_tooltip/CwGenericTooltip.d.ts +15 -0
  344. package/dist/components/display/data/generic_tooltip/CwGenericTooltip.d.ts.map +1 -0
  345. package/dist/components/display/data/table/CwTable.d.ts +102 -0
  346. package/dist/components/display/data/table/CwTable.d.ts.map +1 -0
  347. package/dist/components/display/graphics/icon/CwIcon.d.ts +15 -0
  348. package/dist/components/display/graphics/icon/CwIcon.d.ts.map +1 -0
  349. package/dist/components/display/graphics/loading/CwLoading.d.ts +42 -0
  350. package/dist/components/display/graphics/loading/CwLoading.d.ts.map +1 -0
  351. package/dist/components/display/graphics/loading-small/CwLoadingSmall.d.ts +18 -0
  352. package/dist/components/display/graphics/loading-small/CwLoadingSmall.d.ts.map +1 -0
  353. package/dist/components/display/text/heading/CwHeadingMain.d.ts +3 -0
  354. package/dist/components/display/text/heading/CwHeadingMain.d.ts.map +1 -0
  355. package/dist/components/display/text/heading/CwHeadingSecond.d.ts +3 -0
  356. package/dist/components/display/text/heading/CwHeadingSecond.d.ts.map +1 -0
  357. package/dist/components/display/text/label/CwLabel.d.ts +28 -0
  358. package/dist/components/display/text/label/CwLabel.d.ts.map +1 -0
  359. package/dist/components/display/text/message/CwMessage.d.ts +31 -0
  360. package/dist/components/display/text/message/CwMessage.d.ts.map +1 -0
  361. package/dist/components/display/text/tag/CwChip.d.ts +36 -0
  362. package/dist/components/display/text/tag/CwChip.d.ts.map +1 -0
  363. package/dist/components/display/text/tag/CwTag.d.ts +16 -0
  364. package/dist/components/display/text/tag/CwTag.d.ts.map +1 -0
  365. package/dist/components/display/text/tooltip/CwTooltip.d.ts +8 -0
  366. package/dist/components/display/text/tooltip/CwTooltip.d.ts.map +1 -0
  367. package/dist/components/layout/align/CwAlign.d.ts +54 -0
  368. package/dist/components/layout/align/CwAlign.d.ts.map +1 -0
  369. package/dist/components/layout/card/CwCard.d.ts +61 -0
  370. package/dist/components/layout/card/CwCard.d.ts.map +1 -0
  371. package/dist/components/layout/card/CwCardList.d.ts +32 -0
  372. package/dist/components/layout/card/CwCardList.d.ts.map +1 -0
  373. package/dist/components/layout/dialog/CwDialog.d.ts +28 -0
  374. package/dist/components/layout/dialog/CwDialog.d.ts.map +1 -0
  375. package/dist/components/layout/dialog/CwDialogManager.d.ts +11 -0
  376. package/dist/components/layout/dialog/CwDialogManager.d.ts.map +1 -0
  377. package/dist/components/layout/list/details/CwExpandable.d.ts +23 -0
  378. package/dist/components/layout/list/details/CwExpandable.d.ts.map +1 -0
  379. package/dist/components/layout/list/key-value/CwKeyValueList.d.ts +33 -0
  380. package/dist/components/layout/list/key-value/CwKeyValueList.d.ts.map +1 -0
  381. package/dist/components/layout/modal/CwModalReportFunctional.d.ts +15 -0
  382. package/dist/components/layout/modal/CwModalReportFunctional.d.ts.map +1 -0
  383. package/dist/components/layout/modal/hover/CwModalHover.d.ts +19 -0
  384. package/dist/components/layout/modal/hover/CwModalHover.d.ts.map +1 -0
  385. package/dist/components/layout/modal/legacy/cw_modal.d.ts +22 -0
  386. package/dist/components/layout/modal/legacy/cw_modal.d.ts.map +1 -0
  387. package/dist/components/layout/modal/legacy/cw_modal_confirm.d.ts +16 -0
  388. package/dist/components/layout/modal/legacy/cw_modal_confirm.d.ts.map +1 -0
  389. package/dist/components/layout/modal/legacy/cw_modal_iframe.d.ts +21 -0
  390. package/dist/components/layout/modal/legacy/cw_modal_iframe.d.ts.map +1 -0
  391. package/dist/components/layout/modal/legacy/cw_modal_report.d.ts +32 -0
  392. package/dist/components/layout/modal/legacy/cw_modal_report.d.ts.map +1 -0
  393. package/dist/components/layout/table/grouped/CwTableGrouped.d.ts +80 -0
  394. package/dist/components/layout/table/grouped/CwTableGrouped.d.ts.map +1 -0
  395. package/dist/components/layout/tabs/CwTabs.d.ts +46 -0
  396. package/dist/components/layout/tabs/CwTabs.d.ts.map +1 -0
  397. package/dist/content/icons/font-awesome/LICENSE.txt +165 -0
  398. package/dist/content/icons/font-awesome/css/all.css +8030 -0
  399. package/dist/content/icons/font-awesome/css/all.min.css +9 -0
  400. package/dist/content/icons/font-awesome/css/brands.css +1594 -0
  401. package/dist/content/icons/font-awesome/css/brands.min.css +6 -0
  402. package/dist/content/icons/font-awesome/css/fontawesome.css +6375 -0
  403. package/dist/content/icons/font-awesome/css/fontawesome.min.css +9 -0
  404. package/dist/content/icons/font-awesome/css/regular.css +19 -0
  405. package/dist/content/icons/font-awesome/css/regular.min.css +6 -0
  406. package/dist/content/icons/font-awesome/css/solid.css +19 -0
  407. package/dist/content/icons/font-awesome/css/solid.min.css +6 -0
  408. package/dist/content/icons/font-awesome/css/svg-with-js.css +640 -0
  409. package/dist/content/icons/font-awesome/css/svg-with-js.min.css +6 -0
  410. package/dist/content/icons/font-awesome/css/v4-font-face.css +26 -0
  411. package/dist/content/icons/font-awesome/css/v4-font-face.min.css +6 -0
  412. package/dist/content/icons/font-awesome/css/v4-shims.css +2194 -0
  413. package/dist/content/icons/font-awesome/css/v4-shims.min.css +6 -0
  414. package/dist/content/icons/font-awesome/css/v5-font-face.css +22 -0
  415. package/dist/content/icons/font-awesome/css/v5-font-face.min.css +6 -0
  416. package/dist/content/icons/font-awesome/js/all.js +19027 -0
  417. package/dist/content/icons/font-awesome/js/all.min.js +17199 -0
  418. package/dist/content/icons/font-awesome/js/brands.js +3792 -0
  419. package/dist/content/icons/font-awesome/js/brands.min.js +3693 -0
  420. package/dist/content/icons/font-awesome/js/conflict-detection.js +1303 -0
  421. package/dist/content/icons/font-awesome/js/conflict-detection.min.js +778 -0
  422. package/dist/content/icons/font-awesome/js/fontawesome.js +3617 -0
  423. package/dist/content/icons/font-awesome/js/fontawesome.min.js +2068 -0
  424. package/dist/content/icons/font-awesome/js/regular.js +1515 -0
  425. package/dist/content/icons/font-awesome/js/regular.min.js +1416 -0
  426. package/dist/content/icons/font-awesome/js/solid.js +10118 -0
  427. package/dist/content/icons/font-awesome/js/solid.min.js +10019 -0
  428. package/dist/content/icons/font-awesome/js/v4-shims.js +1126 -0
  429. package/dist/content/icons/font-awesome/js/v4-shims.min.js +1053 -0
  430. package/dist/content/icons/font-awesome/less/_animated.less +152 -0
  431. package/dist/content/icons/font-awesome/less/_bordered-pulled.less +20 -0
  432. package/dist/content/icons/font-awesome/less/_core.less +38 -0
  433. package/dist/content/icons/font-awesome/less/_fixed-width.less +7 -0
  434. package/dist/content/icons/font-awesome/less/_icons.less +9 -0
  435. package/dist/content/icons/font-awesome/less/_list.less +18 -0
  436. package/dist/content/icons/font-awesome/less/_mixins.less +78 -0
  437. package/dist/content/icons/font-awesome/less/_rotated-flipped.less +31 -0
  438. package/dist/content/icons/font-awesome/less/_screen-reader.less +14 -0
  439. package/dist/content/icons/font-awesome/less/_shims.less +2042 -0
  440. package/dist/content/icons/font-awesome/less/_sizing.less +19 -0
  441. package/dist/content/icons/font-awesome/less/_stacked.less +31 -0
  442. package/dist/content/icons/font-awesome/less/_variables.less +5012 -0
  443. package/dist/content/icons/font-awesome/less/brands.less +29 -0
  444. package/dist/content/icons/font-awesome/less/fontawesome.less +20 -0
  445. package/dist/content/icons/font-awesome/less/regular.less +25 -0
  446. package/dist/content/icons/font-awesome/less/solid.less +26 -0
  447. package/dist/content/icons/font-awesome/less/v4-shims.less +10 -0
  448. package/dist/content/icons/font-awesome/metadata/categories.yml +3075 -0
  449. package/dist/content/icons/font-awesome/metadata/icon-families.json +80440 -0
  450. package/dist/content/icons/font-awesome/metadata/icon-families.yml +53789 -0
  451. package/dist/content/icons/font-awesome/metadata/icons.json +52794 -0
  452. package/dist/content/icons/font-awesome/metadata/icons.yml +43892 -0
  453. package/dist/content/icons/font-awesome/metadata/shims.json +812 -0
  454. package/dist/content/icons/font-awesome/metadata/shims.yml +646 -0
  455. package/dist/content/icons/font-awesome/metadata/sponsors.yml +1452 -0
  456. package/dist/content/icons/font-awesome/scss/_animated.scss +152 -0
  457. package/dist/content/icons/font-awesome/scss/_bordered-pulled.scss +20 -0
  458. package/dist/content/icons/font-awesome/scss/_core.scss +43 -0
  459. package/dist/content/icons/font-awesome/scss/_fixed-width.scss +7 -0
  460. package/dist/content/icons/font-awesome/scss/_functions.scss +57 -0
  461. package/dist/content/icons/font-awesome/scss/_icons.scss +10 -0
  462. package/dist/content/icons/font-awesome/scss/_list.scss +18 -0
  463. package/dist/content/icons/font-awesome/scss/_mixins.scss +72 -0
  464. package/dist/content/icons/font-awesome/scss/_rotated-flipped.scss +31 -0
  465. package/dist/content/icons/font-awesome/scss/_screen-reader.scss +14 -0
  466. package/dist/content/icons/font-awesome/scss/_shims.scss +1578 -0
  467. package/dist/content/icons/font-awesome/scss/_sizing.scss +16 -0
  468. package/dist/content/icons/font-awesome/scss/_stacked.scss +32 -0
  469. package/dist/content/icons/font-awesome/scss/_variables.scss +5011 -0
  470. package/dist/content/icons/font-awesome/scss/brands.scss +30 -0
  471. package/dist/content/icons/font-awesome/scss/fontawesome.scss +21 -0
  472. package/dist/content/icons/font-awesome/scss/regular.scss +26 -0
  473. package/dist/content/icons/font-awesome/scss/solid.scss +26 -0
  474. package/dist/content/icons/font-awesome/scss/v4-shims.scss +11 -0
  475. package/dist/content/icons/font-awesome/sprites/brands.svg +1478 -0
  476. package/dist/content/icons/font-awesome/sprites/regular.svg +497 -0
  477. package/dist/content/icons/font-awesome/sprites/solid.svg +4184 -0
  478. package/dist/content/icons/font-awesome/svgs/brands/42-group.svg +1 -0
  479. package/dist/content/icons/font-awesome/svgs/brands/500px.svg +1 -0
  480. package/dist/content/icons/font-awesome/svgs/brands/accessible-icon.svg +1 -0
  481. package/dist/content/icons/font-awesome/svgs/brands/accusoft.svg +1 -0
  482. package/dist/content/icons/font-awesome/svgs/brands/adn.svg +1 -0
  483. package/dist/content/icons/font-awesome/svgs/brands/adversal.svg +1 -0
  484. package/dist/content/icons/font-awesome/svgs/brands/affiliatetheme.svg +1 -0
  485. package/dist/content/icons/font-awesome/svgs/brands/airbnb.svg +1 -0
  486. package/dist/content/icons/font-awesome/svgs/brands/algolia.svg +1 -0
  487. package/dist/content/icons/font-awesome/svgs/brands/alipay.svg +1 -0
  488. package/dist/content/icons/font-awesome/svgs/brands/amazon-pay.svg +1 -0
  489. package/dist/content/icons/font-awesome/svgs/brands/amazon.svg +1 -0
  490. package/dist/content/icons/font-awesome/svgs/brands/amilia.svg +1 -0
  491. package/dist/content/icons/font-awesome/svgs/brands/android.svg +1 -0
  492. package/dist/content/icons/font-awesome/svgs/brands/angellist.svg +1 -0
  493. package/dist/content/icons/font-awesome/svgs/brands/angrycreative.svg +1 -0
  494. package/dist/content/icons/font-awesome/svgs/brands/angular.svg +1 -0
  495. package/dist/content/icons/font-awesome/svgs/brands/app-store-ios.svg +1 -0
  496. package/dist/content/icons/font-awesome/svgs/brands/app-store.svg +1 -0
  497. package/dist/content/icons/font-awesome/svgs/brands/apper.svg +1 -0
  498. package/dist/content/icons/font-awesome/svgs/brands/apple-pay.svg +1 -0
  499. package/dist/content/icons/font-awesome/svgs/brands/apple.svg +1 -0
  500. package/dist/content/icons/font-awesome/svgs/brands/artstation.svg +1 -0
  501. package/dist/content/icons/font-awesome/svgs/brands/asymmetrik.svg +1 -0
  502. package/dist/content/icons/font-awesome/svgs/brands/atlassian.svg +1 -0
  503. package/dist/content/icons/font-awesome/svgs/brands/audible.svg +1 -0
  504. package/dist/content/icons/font-awesome/svgs/brands/autoprefixer.svg +1 -0
  505. package/dist/content/icons/font-awesome/svgs/brands/avianex.svg +1 -0
  506. package/dist/content/icons/font-awesome/svgs/brands/aviato.svg +1 -0
  507. package/dist/content/icons/font-awesome/svgs/brands/aws.svg +1 -0
  508. package/dist/content/icons/font-awesome/svgs/brands/bandcamp.svg +1 -0
  509. package/dist/content/icons/font-awesome/svgs/brands/battle-net.svg +1 -0
  510. package/dist/content/icons/font-awesome/svgs/brands/behance.svg +1 -0
  511. package/dist/content/icons/font-awesome/svgs/brands/bilibili.svg +1 -0
  512. package/dist/content/icons/font-awesome/svgs/brands/bimobject.svg +1 -0
  513. package/dist/content/icons/font-awesome/svgs/brands/bitbucket.svg +1 -0
  514. package/dist/content/icons/font-awesome/svgs/brands/bitcoin.svg +1 -0
  515. package/dist/content/icons/font-awesome/svgs/brands/bity.svg +1 -0
  516. package/dist/content/icons/font-awesome/svgs/brands/black-tie.svg +1 -0
  517. package/dist/content/icons/font-awesome/svgs/brands/blackberry.svg +1 -0
  518. package/dist/content/icons/font-awesome/svgs/brands/blogger-b.svg +1 -0
  519. package/dist/content/icons/font-awesome/svgs/brands/blogger.svg +1 -0
  520. package/dist/content/icons/font-awesome/svgs/brands/bluesky.svg +1 -0
  521. package/dist/content/icons/font-awesome/svgs/brands/bluetooth-b.svg +1 -0
  522. package/dist/content/icons/font-awesome/svgs/brands/bluetooth.svg +1 -0
  523. package/dist/content/icons/font-awesome/svgs/brands/bootstrap.svg +1 -0
  524. package/dist/content/icons/font-awesome/svgs/brands/bots.svg +1 -0
  525. package/dist/content/icons/font-awesome/svgs/brands/brave-reverse.svg +1 -0
  526. package/dist/content/icons/font-awesome/svgs/brands/brave.svg +1 -0
  527. package/dist/content/icons/font-awesome/svgs/brands/btc.svg +1 -0
  528. package/dist/content/icons/font-awesome/svgs/brands/buffer.svg +1 -0
  529. package/dist/content/icons/font-awesome/svgs/brands/buromobelexperte.svg +1 -0
  530. package/dist/content/icons/font-awesome/svgs/brands/buy-n-large.svg +1 -0
  531. package/dist/content/icons/font-awesome/svgs/brands/buysellads.svg +1 -0
  532. package/dist/content/icons/font-awesome/svgs/brands/canadian-maple-leaf.svg +1 -0
  533. package/dist/content/icons/font-awesome/svgs/brands/cc-amazon-pay.svg +1 -0
  534. package/dist/content/icons/font-awesome/svgs/brands/cc-amex.svg +1 -0
  535. package/dist/content/icons/font-awesome/svgs/brands/cc-apple-pay.svg +1 -0
  536. package/dist/content/icons/font-awesome/svgs/brands/cc-diners-club.svg +1 -0
  537. package/dist/content/icons/font-awesome/svgs/brands/cc-discover.svg +1 -0
  538. package/dist/content/icons/font-awesome/svgs/brands/cc-jcb.svg +1 -0
  539. package/dist/content/icons/font-awesome/svgs/brands/cc-mastercard.svg +1 -0
  540. package/dist/content/icons/font-awesome/svgs/brands/cc-paypal.svg +1 -0
  541. package/dist/content/icons/font-awesome/svgs/brands/cc-stripe.svg +1 -0
  542. package/dist/content/icons/font-awesome/svgs/brands/cc-visa.svg +1 -0
  543. package/dist/content/icons/font-awesome/svgs/brands/centercode.svg +1 -0
  544. package/dist/content/icons/font-awesome/svgs/brands/centos.svg +1 -0
  545. package/dist/content/icons/font-awesome/svgs/brands/chrome.svg +1 -0
  546. package/dist/content/icons/font-awesome/svgs/brands/chromecast.svg +1 -0
  547. package/dist/content/icons/font-awesome/svgs/brands/cloudflare.svg +1 -0
  548. package/dist/content/icons/font-awesome/svgs/brands/cloudscale.svg +1 -0
  549. package/dist/content/icons/font-awesome/svgs/brands/cloudsmith.svg +1 -0
  550. package/dist/content/icons/font-awesome/svgs/brands/cloudversify.svg +1 -0
  551. package/dist/content/icons/font-awesome/svgs/brands/cmplid.svg +1 -0
  552. package/dist/content/icons/font-awesome/svgs/brands/codepen.svg +1 -0
  553. package/dist/content/icons/font-awesome/svgs/brands/codiepie.svg +1 -0
  554. package/dist/content/icons/font-awesome/svgs/brands/confluence.svg +1 -0
  555. package/dist/content/icons/font-awesome/svgs/brands/connectdevelop.svg +1 -0
  556. package/dist/content/icons/font-awesome/svgs/brands/contao.svg +1 -0
  557. package/dist/content/icons/font-awesome/svgs/brands/cotton-bureau.svg +1 -0
  558. package/dist/content/icons/font-awesome/svgs/brands/cpanel.svg +1 -0
  559. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-by.svg +1 -0
  560. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-nc-eu.svg +1 -0
  561. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-nc-jp.svg +1 -0
  562. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-nc.svg +1 -0
  563. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-nd.svg +1 -0
  564. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-pd-alt.svg +1 -0
  565. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-pd.svg +1 -0
  566. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-remix.svg +1 -0
  567. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-sa.svg +1 -0
  568. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-sampling-plus.svg +1 -0
  569. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-sampling.svg +1 -0
  570. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-share.svg +1 -0
  571. package/dist/content/icons/font-awesome/svgs/brands/creative-commons-zero.svg +1 -0
  572. package/dist/content/icons/font-awesome/svgs/brands/creative-commons.svg +1 -0
  573. package/dist/content/icons/font-awesome/svgs/brands/critical-role.svg +1 -0
  574. package/dist/content/icons/font-awesome/svgs/brands/css3-alt.svg +1 -0
  575. package/dist/content/icons/font-awesome/svgs/brands/css3.svg +1 -0
  576. package/dist/content/icons/font-awesome/svgs/brands/cuttlefish.svg +1 -0
  577. package/dist/content/icons/font-awesome/svgs/brands/d-and-d-beyond.svg +1 -0
  578. package/dist/content/icons/font-awesome/svgs/brands/d-and-d.svg +1 -0
  579. package/dist/content/icons/font-awesome/svgs/brands/dailymotion.svg +1 -0
  580. package/dist/content/icons/font-awesome/svgs/brands/dashcube.svg +1 -0
  581. package/dist/content/icons/font-awesome/svgs/brands/debian.svg +1 -0
  582. package/dist/content/icons/font-awesome/svgs/brands/deezer.svg +1 -0
  583. package/dist/content/icons/font-awesome/svgs/brands/delicious.svg +1 -0
  584. package/dist/content/icons/font-awesome/svgs/brands/deploydog.svg +1 -0
  585. package/dist/content/icons/font-awesome/svgs/brands/deskpro.svg +1 -0
  586. package/dist/content/icons/font-awesome/svgs/brands/dev.svg +1 -0
  587. package/dist/content/icons/font-awesome/svgs/brands/deviantart.svg +1 -0
  588. package/dist/content/icons/font-awesome/svgs/brands/dhl.svg +1 -0
  589. package/dist/content/icons/font-awesome/svgs/brands/diaspora.svg +1 -0
  590. package/dist/content/icons/font-awesome/svgs/brands/digg.svg +1 -0
  591. package/dist/content/icons/font-awesome/svgs/brands/digital-ocean.svg +1 -0
  592. package/dist/content/icons/font-awesome/svgs/brands/discord.svg +1 -0
  593. package/dist/content/icons/font-awesome/svgs/brands/discourse.svg +1 -0
  594. package/dist/content/icons/font-awesome/svgs/brands/dochub.svg +1 -0
  595. package/dist/content/icons/font-awesome/svgs/brands/docker.svg +1 -0
  596. package/dist/content/icons/font-awesome/svgs/brands/draft2digital.svg +1 -0
  597. package/dist/content/icons/font-awesome/svgs/brands/dribbble.svg +1 -0
  598. package/dist/content/icons/font-awesome/svgs/brands/dropbox.svg +1 -0
  599. package/dist/content/icons/font-awesome/svgs/brands/drupal.svg +1 -0
  600. package/dist/content/icons/font-awesome/svgs/brands/dyalog.svg +1 -0
  601. package/dist/content/icons/font-awesome/svgs/brands/earlybirds.svg +1 -0
  602. package/dist/content/icons/font-awesome/svgs/brands/ebay.svg +1 -0
  603. package/dist/content/icons/font-awesome/svgs/brands/edge-legacy.svg +1 -0
  604. package/dist/content/icons/font-awesome/svgs/brands/edge.svg +1 -0
  605. package/dist/content/icons/font-awesome/svgs/brands/elementor.svg +1 -0
  606. package/dist/content/icons/font-awesome/svgs/brands/ello.svg +1 -0
  607. package/dist/content/icons/font-awesome/svgs/brands/ember.svg +1 -0
  608. package/dist/content/icons/font-awesome/svgs/brands/empire.svg +1 -0
  609. package/dist/content/icons/font-awesome/svgs/brands/envira.svg +1 -0
  610. package/dist/content/icons/font-awesome/svgs/brands/erlang.svg +1 -0
  611. package/dist/content/icons/font-awesome/svgs/brands/ethereum.svg +1 -0
  612. package/dist/content/icons/font-awesome/svgs/brands/etsy.svg +1 -0
  613. package/dist/content/icons/font-awesome/svgs/brands/evernote.svg +1 -0
  614. package/dist/content/icons/font-awesome/svgs/brands/expeditedssl.svg +1 -0
  615. package/dist/content/icons/font-awesome/svgs/brands/facebook-f.svg +1 -0
  616. package/dist/content/icons/font-awesome/svgs/brands/facebook-messenger.svg +1 -0
  617. package/dist/content/icons/font-awesome/svgs/brands/facebook.svg +1 -0
  618. package/dist/content/icons/font-awesome/svgs/brands/fantasy-flight-games.svg +1 -0
  619. package/dist/content/icons/font-awesome/svgs/brands/fedex.svg +1 -0
  620. package/dist/content/icons/font-awesome/svgs/brands/fedora.svg +1 -0
  621. package/dist/content/icons/font-awesome/svgs/brands/figma.svg +1 -0
  622. package/dist/content/icons/font-awesome/svgs/brands/firefox-browser.svg +1 -0
  623. package/dist/content/icons/font-awesome/svgs/brands/firefox.svg +1 -0
  624. package/dist/content/icons/font-awesome/svgs/brands/first-order-alt.svg +1 -0
  625. package/dist/content/icons/font-awesome/svgs/brands/first-order.svg +1 -0
  626. package/dist/content/icons/font-awesome/svgs/brands/firstdraft.svg +1 -0
  627. package/dist/content/icons/font-awesome/svgs/brands/flickr.svg +1 -0
  628. package/dist/content/icons/font-awesome/svgs/brands/flipboard.svg +1 -0
  629. package/dist/content/icons/font-awesome/svgs/brands/fly.svg +1 -0
  630. package/dist/content/icons/font-awesome/svgs/brands/font-awesome.svg +1 -0
  631. package/dist/content/icons/font-awesome/svgs/brands/fonticons-fi.svg +1 -0
  632. package/dist/content/icons/font-awesome/svgs/brands/fonticons.svg +1 -0
  633. package/dist/content/icons/font-awesome/svgs/brands/fort-awesome-alt.svg +1 -0
  634. package/dist/content/icons/font-awesome/svgs/brands/fort-awesome.svg +1 -0
  635. package/dist/content/icons/font-awesome/svgs/brands/forumbee.svg +1 -0
  636. package/dist/content/icons/font-awesome/svgs/brands/foursquare.svg +1 -0
  637. package/dist/content/icons/font-awesome/svgs/brands/free-code-camp.svg +1 -0
  638. package/dist/content/icons/font-awesome/svgs/brands/freebsd.svg +1 -0
  639. package/dist/content/icons/font-awesome/svgs/brands/fulcrum.svg +1 -0
  640. package/dist/content/icons/font-awesome/svgs/brands/galactic-republic.svg +1 -0
  641. package/dist/content/icons/font-awesome/svgs/brands/galactic-senate.svg +1 -0
  642. package/dist/content/icons/font-awesome/svgs/brands/get-pocket.svg +1 -0
  643. package/dist/content/icons/font-awesome/svgs/brands/gg-circle.svg +1 -0
  644. package/dist/content/icons/font-awesome/svgs/brands/gg.svg +1 -0
  645. package/dist/content/icons/font-awesome/svgs/brands/git-alt.svg +1 -0
  646. package/dist/content/icons/font-awesome/svgs/brands/git.svg +1 -0
  647. package/dist/content/icons/font-awesome/svgs/brands/github-alt.svg +1 -0
  648. package/dist/content/icons/font-awesome/svgs/brands/github.svg +1 -0
  649. package/dist/content/icons/font-awesome/svgs/brands/gitkraken.svg +1 -0
  650. package/dist/content/icons/font-awesome/svgs/brands/gitlab.svg +1 -0
  651. package/dist/content/icons/font-awesome/svgs/brands/gitter.svg +1 -0
  652. package/dist/content/icons/font-awesome/svgs/brands/glide-g.svg +1 -0
  653. package/dist/content/icons/font-awesome/svgs/brands/glide.svg +1 -0
  654. package/dist/content/icons/font-awesome/svgs/brands/gofore.svg +1 -0
  655. package/dist/content/icons/font-awesome/svgs/brands/golang.svg +1 -0
  656. package/dist/content/icons/font-awesome/svgs/brands/goodreads-g.svg +1 -0
  657. package/dist/content/icons/font-awesome/svgs/brands/goodreads.svg +1 -0
  658. package/dist/content/icons/font-awesome/svgs/brands/google-drive.svg +1 -0
  659. package/dist/content/icons/font-awesome/svgs/brands/google-pay.svg +1 -0
  660. package/dist/content/icons/font-awesome/svgs/brands/google-play.svg +1 -0
  661. package/dist/content/icons/font-awesome/svgs/brands/google-plus-g.svg +1 -0
  662. package/dist/content/icons/font-awesome/svgs/brands/google-plus.svg +1 -0
  663. package/dist/content/icons/font-awesome/svgs/brands/google-scholar.svg +1 -0
  664. package/dist/content/icons/font-awesome/svgs/brands/google-wallet.svg +1 -0
  665. package/dist/content/icons/font-awesome/svgs/brands/google.svg +1 -0
  666. package/dist/content/icons/font-awesome/svgs/brands/gratipay.svg +1 -0
  667. package/dist/content/icons/font-awesome/svgs/brands/grav.svg +1 -0
  668. package/dist/content/icons/font-awesome/svgs/brands/gripfire.svg +1 -0
  669. package/dist/content/icons/font-awesome/svgs/brands/grunt.svg +1 -0
  670. package/dist/content/icons/font-awesome/svgs/brands/guilded.svg +1 -0
  671. package/dist/content/icons/font-awesome/svgs/brands/gulp.svg +1 -0
  672. package/dist/content/icons/font-awesome/svgs/brands/hacker-news.svg +1 -0
  673. package/dist/content/icons/font-awesome/svgs/brands/hackerrank.svg +1 -0
  674. package/dist/content/icons/font-awesome/svgs/brands/hashnode.svg +1 -0
  675. package/dist/content/icons/font-awesome/svgs/brands/hips.svg +1 -0
  676. package/dist/content/icons/font-awesome/svgs/brands/hire-a-helper.svg +1 -0
  677. package/dist/content/icons/font-awesome/svgs/brands/hive.svg +1 -0
  678. package/dist/content/icons/font-awesome/svgs/brands/hooli.svg +1 -0
  679. package/dist/content/icons/font-awesome/svgs/brands/hornbill.svg +1 -0
  680. package/dist/content/icons/font-awesome/svgs/brands/hotjar.svg +1 -0
  681. package/dist/content/icons/font-awesome/svgs/brands/houzz.svg +1 -0
  682. package/dist/content/icons/font-awesome/svgs/brands/html5.svg +1 -0
  683. package/dist/content/icons/font-awesome/svgs/brands/hubspot.svg +1 -0
  684. package/dist/content/icons/font-awesome/svgs/brands/ideal.svg +1 -0
  685. package/dist/content/icons/font-awesome/svgs/brands/imdb.svg +1 -0
  686. package/dist/content/icons/font-awesome/svgs/brands/instagram.svg +1 -0
  687. package/dist/content/icons/font-awesome/svgs/brands/instalod.svg +1 -0
  688. package/dist/content/icons/font-awesome/svgs/brands/intercom.svg +1 -0
  689. package/dist/content/icons/font-awesome/svgs/brands/internet-explorer.svg +1 -0
  690. package/dist/content/icons/font-awesome/svgs/brands/invision.svg +1 -0
  691. package/dist/content/icons/font-awesome/svgs/brands/ioxhost.svg +1 -0
  692. package/dist/content/icons/font-awesome/svgs/brands/itch-io.svg +1 -0
  693. package/dist/content/icons/font-awesome/svgs/brands/itunes-note.svg +1 -0
  694. package/dist/content/icons/font-awesome/svgs/brands/itunes.svg +1 -0
  695. package/dist/content/icons/font-awesome/svgs/brands/java.svg +1 -0
  696. package/dist/content/icons/font-awesome/svgs/brands/jedi-order.svg +1 -0
  697. package/dist/content/icons/font-awesome/svgs/brands/jenkins.svg +1 -0
  698. package/dist/content/icons/font-awesome/svgs/brands/jira.svg +1 -0
  699. package/dist/content/icons/font-awesome/svgs/brands/joget.svg +1 -0
  700. package/dist/content/icons/font-awesome/svgs/brands/joomla.svg +1 -0
  701. package/dist/content/icons/font-awesome/svgs/brands/js.svg +1 -0
  702. package/dist/content/icons/font-awesome/svgs/brands/jsfiddle.svg +1 -0
  703. package/dist/content/icons/font-awesome/svgs/brands/jxl.svg +1 -0
  704. package/dist/content/icons/font-awesome/svgs/brands/kaggle.svg +1 -0
  705. package/dist/content/icons/font-awesome/svgs/brands/keybase.svg +1 -0
  706. package/dist/content/icons/font-awesome/svgs/brands/keycdn.svg +1 -0
  707. package/dist/content/icons/font-awesome/svgs/brands/kickstarter-k.svg +1 -0
  708. package/dist/content/icons/font-awesome/svgs/brands/kickstarter.svg +1 -0
  709. package/dist/content/icons/font-awesome/svgs/brands/korvue.svg +1 -0
  710. package/dist/content/icons/font-awesome/svgs/brands/laravel.svg +1 -0
  711. package/dist/content/icons/font-awesome/svgs/brands/lastfm.svg +1 -0
  712. package/dist/content/icons/font-awesome/svgs/brands/leanpub.svg +1 -0
  713. package/dist/content/icons/font-awesome/svgs/brands/less.svg +1 -0
  714. package/dist/content/icons/font-awesome/svgs/brands/letterboxd.svg +1 -0
  715. package/dist/content/icons/font-awesome/svgs/brands/line.svg +1 -0
  716. package/dist/content/icons/font-awesome/svgs/brands/linkedin-in.svg +1 -0
  717. package/dist/content/icons/font-awesome/svgs/brands/linkedin.svg +1 -0
  718. package/dist/content/icons/font-awesome/svgs/brands/linode.svg +1 -0
  719. package/dist/content/icons/font-awesome/svgs/brands/linux.svg +1 -0
  720. package/dist/content/icons/font-awesome/svgs/brands/lyft.svg +1 -0
  721. package/dist/content/icons/font-awesome/svgs/brands/magento.svg +1 -0
  722. package/dist/content/icons/font-awesome/svgs/brands/mailchimp.svg +1 -0
  723. package/dist/content/icons/font-awesome/svgs/brands/mandalorian.svg +1 -0
  724. package/dist/content/icons/font-awesome/svgs/brands/markdown.svg +1 -0
  725. package/dist/content/icons/font-awesome/svgs/brands/mastodon.svg +1 -0
  726. package/dist/content/icons/font-awesome/svgs/brands/maxcdn.svg +1 -0
  727. package/dist/content/icons/font-awesome/svgs/brands/mdb.svg +1 -0
  728. package/dist/content/icons/font-awesome/svgs/brands/medapps.svg +1 -0
  729. package/dist/content/icons/font-awesome/svgs/brands/medium.svg +1 -0
  730. package/dist/content/icons/font-awesome/svgs/brands/medrt.svg +1 -0
  731. package/dist/content/icons/font-awesome/svgs/brands/meetup.svg +1 -0
  732. package/dist/content/icons/font-awesome/svgs/brands/megaport.svg +1 -0
  733. package/dist/content/icons/font-awesome/svgs/brands/mendeley.svg +1 -0
  734. package/dist/content/icons/font-awesome/svgs/brands/meta.svg +1 -0
  735. package/dist/content/icons/font-awesome/svgs/brands/microblog.svg +1 -0
  736. package/dist/content/icons/font-awesome/svgs/brands/microsoft.svg +1 -0
  737. package/dist/content/icons/font-awesome/svgs/brands/mintbit.svg +1 -0
  738. package/dist/content/icons/font-awesome/svgs/brands/mix.svg +1 -0
  739. package/dist/content/icons/font-awesome/svgs/brands/mixcloud.svg +1 -0
  740. package/dist/content/icons/font-awesome/svgs/brands/mixer.svg +1 -0
  741. package/dist/content/icons/font-awesome/svgs/brands/mizuni.svg +1 -0
  742. package/dist/content/icons/font-awesome/svgs/brands/modx.svg +1 -0
  743. package/dist/content/icons/font-awesome/svgs/brands/monero.svg +1 -0
  744. package/dist/content/icons/font-awesome/svgs/brands/napster.svg +1 -0
  745. package/dist/content/icons/font-awesome/svgs/brands/neos.svg +1 -0
  746. package/dist/content/icons/font-awesome/svgs/brands/nfc-directional.svg +1 -0
  747. package/dist/content/icons/font-awesome/svgs/brands/nfc-symbol.svg +1 -0
  748. package/dist/content/icons/font-awesome/svgs/brands/nimblr.svg +1 -0
  749. package/dist/content/icons/font-awesome/svgs/brands/node-js.svg +1 -0
  750. package/dist/content/icons/font-awesome/svgs/brands/node.svg +1 -0
  751. package/dist/content/icons/font-awesome/svgs/brands/npm.svg +1 -0
  752. package/dist/content/icons/font-awesome/svgs/brands/ns8.svg +1 -0
  753. package/dist/content/icons/font-awesome/svgs/brands/nutritionix.svg +1 -0
  754. package/dist/content/icons/font-awesome/svgs/brands/octopus-deploy.svg +1 -0
  755. package/dist/content/icons/font-awesome/svgs/brands/odnoklassniki.svg +1 -0
  756. package/dist/content/icons/font-awesome/svgs/brands/odysee.svg +1 -0
  757. package/dist/content/icons/font-awesome/svgs/brands/old-republic.svg +1 -0
  758. package/dist/content/icons/font-awesome/svgs/brands/opencart.svg +1 -0
  759. package/dist/content/icons/font-awesome/svgs/brands/openid.svg +1 -0
  760. package/dist/content/icons/font-awesome/svgs/brands/opensuse.svg +1 -0
  761. package/dist/content/icons/font-awesome/svgs/brands/opera.svg +1 -0
  762. package/dist/content/icons/font-awesome/svgs/brands/optin-monster.svg +1 -0
  763. package/dist/content/icons/font-awesome/svgs/brands/orcid.svg +1 -0
  764. package/dist/content/icons/font-awesome/svgs/brands/osi.svg +1 -0
  765. package/dist/content/icons/font-awesome/svgs/brands/padlet.svg +1 -0
  766. package/dist/content/icons/font-awesome/svgs/brands/page4.svg +1 -0
  767. package/dist/content/icons/font-awesome/svgs/brands/pagelines.svg +1 -0
  768. package/dist/content/icons/font-awesome/svgs/brands/palfed.svg +1 -0
  769. package/dist/content/icons/font-awesome/svgs/brands/patreon.svg +1 -0
  770. package/dist/content/icons/font-awesome/svgs/brands/paypal.svg +1 -0
  771. package/dist/content/icons/font-awesome/svgs/brands/perbyte.svg +1 -0
  772. package/dist/content/icons/font-awesome/svgs/brands/periscope.svg +1 -0
  773. package/dist/content/icons/font-awesome/svgs/brands/phabricator.svg +1 -0
  774. package/dist/content/icons/font-awesome/svgs/brands/phoenix-framework.svg +1 -0
  775. package/dist/content/icons/font-awesome/svgs/brands/phoenix-squadron.svg +1 -0
  776. package/dist/content/icons/font-awesome/svgs/brands/php.svg +1 -0
  777. package/dist/content/icons/font-awesome/svgs/brands/pied-piper-alt.svg +1 -0
  778. package/dist/content/icons/font-awesome/svgs/brands/pied-piper-hat.svg +1 -0
  779. package/dist/content/icons/font-awesome/svgs/brands/pied-piper-pp.svg +1 -0
  780. package/dist/content/icons/font-awesome/svgs/brands/pied-piper.svg +1 -0
  781. package/dist/content/icons/font-awesome/svgs/brands/pinterest-p.svg +1 -0
  782. package/dist/content/icons/font-awesome/svgs/brands/pinterest.svg +1 -0
  783. package/dist/content/icons/font-awesome/svgs/brands/pix.svg +1 -0
  784. package/dist/content/icons/font-awesome/svgs/brands/pixiv.svg +1 -0
  785. package/dist/content/icons/font-awesome/svgs/brands/playstation.svg +1 -0
  786. package/dist/content/icons/font-awesome/svgs/brands/product-hunt.svg +1 -0
  787. package/dist/content/icons/font-awesome/svgs/brands/pushed.svg +1 -0
  788. package/dist/content/icons/font-awesome/svgs/brands/python.svg +1 -0
  789. package/dist/content/icons/font-awesome/svgs/brands/qq.svg +1 -0
  790. package/dist/content/icons/font-awesome/svgs/brands/quinscape.svg +1 -0
  791. package/dist/content/icons/font-awesome/svgs/brands/quora.svg +1 -0
  792. package/dist/content/icons/font-awesome/svgs/brands/r-project.svg +1 -0
  793. package/dist/content/icons/font-awesome/svgs/brands/raspberry-pi.svg +1 -0
  794. package/dist/content/icons/font-awesome/svgs/brands/ravelry.svg +1 -0
  795. package/dist/content/icons/font-awesome/svgs/brands/react.svg +1 -0
  796. package/dist/content/icons/font-awesome/svgs/brands/reacteurope.svg +1 -0
  797. package/dist/content/icons/font-awesome/svgs/brands/readme.svg +1 -0
  798. package/dist/content/icons/font-awesome/svgs/brands/rebel.svg +1 -0
  799. package/dist/content/icons/font-awesome/svgs/brands/red-river.svg +1 -0
  800. package/dist/content/icons/font-awesome/svgs/brands/reddit-alien.svg +1 -0
  801. package/dist/content/icons/font-awesome/svgs/brands/reddit.svg +1 -0
  802. package/dist/content/icons/font-awesome/svgs/brands/redhat.svg +1 -0
  803. package/dist/content/icons/font-awesome/svgs/brands/renren.svg +1 -0
  804. package/dist/content/icons/font-awesome/svgs/brands/replyd.svg +1 -0
  805. package/dist/content/icons/font-awesome/svgs/brands/researchgate.svg +1 -0
  806. package/dist/content/icons/font-awesome/svgs/brands/resolving.svg +1 -0
  807. package/dist/content/icons/font-awesome/svgs/brands/rev.svg +1 -0
  808. package/dist/content/icons/font-awesome/svgs/brands/rocketchat.svg +1 -0
  809. package/dist/content/icons/font-awesome/svgs/brands/rockrms.svg +1 -0
  810. package/dist/content/icons/font-awesome/svgs/brands/rust.svg +1 -0
  811. package/dist/content/icons/font-awesome/svgs/brands/safari.svg +1 -0
  812. package/dist/content/icons/font-awesome/svgs/brands/salesforce.svg +1 -0
  813. package/dist/content/icons/font-awesome/svgs/brands/sass.svg +1 -0
  814. package/dist/content/icons/font-awesome/svgs/brands/schlix.svg +1 -0
  815. package/dist/content/icons/font-awesome/svgs/brands/screenpal.svg +1 -0
  816. package/dist/content/icons/font-awesome/svgs/brands/scribd.svg +1 -0
  817. package/dist/content/icons/font-awesome/svgs/brands/searchengin.svg +1 -0
  818. package/dist/content/icons/font-awesome/svgs/brands/sellcast.svg +1 -0
  819. package/dist/content/icons/font-awesome/svgs/brands/sellsy.svg +1 -0
  820. package/dist/content/icons/font-awesome/svgs/brands/servicestack.svg +1 -0
  821. package/dist/content/icons/font-awesome/svgs/brands/shirtsinbulk.svg +1 -0
  822. package/dist/content/icons/font-awesome/svgs/brands/shoelace.svg +1 -0
  823. package/dist/content/icons/font-awesome/svgs/brands/shopify.svg +1 -0
  824. package/dist/content/icons/font-awesome/svgs/brands/shopware.svg +1 -0
  825. package/dist/content/icons/font-awesome/svgs/brands/signal-messenger.svg +1 -0
  826. package/dist/content/icons/font-awesome/svgs/brands/simplybuilt.svg +1 -0
  827. package/dist/content/icons/font-awesome/svgs/brands/sistrix.svg +1 -0
  828. package/dist/content/icons/font-awesome/svgs/brands/sith.svg +1 -0
  829. package/dist/content/icons/font-awesome/svgs/brands/sitrox.svg +1 -0
  830. package/dist/content/icons/font-awesome/svgs/brands/sketch.svg +1 -0
  831. package/dist/content/icons/font-awesome/svgs/brands/skyatlas.svg +1 -0
  832. package/dist/content/icons/font-awesome/svgs/brands/skype.svg +1 -0
  833. package/dist/content/icons/font-awesome/svgs/brands/slack.svg +1 -0
  834. package/dist/content/icons/font-awesome/svgs/brands/slideshare.svg +1 -0
  835. package/dist/content/icons/font-awesome/svgs/brands/snapchat.svg +1 -0
  836. package/dist/content/icons/font-awesome/svgs/brands/soundcloud.svg +1 -0
  837. package/dist/content/icons/font-awesome/svgs/brands/sourcetree.svg +1 -0
  838. package/dist/content/icons/font-awesome/svgs/brands/space-awesome.svg +1 -0
  839. package/dist/content/icons/font-awesome/svgs/brands/speakap.svg +1 -0
  840. package/dist/content/icons/font-awesome/svgs/brands/speaker-deck.svg +1 -0
  841. package/dist/content/icons/font-awesome/svgs/brands/spotify.svg +1 -0
  842. package/dist/content/icons/font-awesome/svgs/brands/square-behance.svg +1 -0
  843. package/dist/content/icons/font-awesome/svgs/brands/square-dribbble.svg +1 -0
  844. package/dist/content/icons/font-awesome/svgs/brands/square-facebook.svg +1 -0
  845. package/dist/content/icons/font-awesome/svgs/brands/square-font-awesome-stroke.svg +1 -0
  846. package/dist/content/icons/font-awesome/svgs/brands/square-font-awesome.svg +1 -0
  847. package/dist/content/icons/font-awesome/svgs/brands/square-git.svg +1 -0
  848. package/dist/content/icons/font-awesome/svgs/brands/square-github.svg +1 -0
  849. package/dist/content/icons/font-awesome/svgs/brands/square-gitlab.svg +1 -0
  850. package/dist/content/icons/font-awesome/svgs/brands/square-google-plus.svg +1 -0
  851. package/dist/content/icons/font-awesome/svgs/brands/square-hacker-news.svg +1 -0
  852. package/dist/content/icons/font-awesome/svgs/brands/square-instagram.svg +1 -0
  853. package/dist/content/icons/font-awesome/svgs/brands/square-js.svg +1 -0
  854. package/dist/content/icons/font-awesome/svgs/brands/square-lastfm.svg +1 -0
  855. package/dist/content/icons/font-awesome/svgs/brands/square-letterboxd.svg +1 -0
  856. package/dist/content/icons/font-awesome/svgs/brands/square-odnoklassniki.svg +1 -0
  857. package/dist/content/icons/font-awesome/svgs/brands/square-pied-piper.svg +1 -0
  858. package/dist/content/icons/font-awesome/svgs/brands/square-pinterest.svg +1 -0
  859. package/dist/content/icons/font-awesome/svgs/brands/square-reddit.svg +1 -0
  860. package/dist/content/icons/font-awesome/svgs/brands/square-snapchat.svg +1 -0
  861. package/dist/content/icons/font-awesome/svgs/brands/square-steam.svg +1 -0
  862. package/dist/content/icons/font-awesome/svgs/brands/square-threads.svg +1 -0
  863. package/dist/content/icons/font-awesome/svgs/brands/square-tumblr.svg +1 -0
  864. package/dist/content/icons/font-awesome/svgs/brands/square-twitter.svg +1 -0
  865. package/dist/content/icons/font-awesome/svgs/brands/square-upwork.svg +1 -0
  866. package/dist/content/icons/font-awesome/svgs/brands/square-viadeo.svg +1 -0
  867. package/dist/content/icons/font-awesome/svgs/brands/square-vimeo.svg +1 -0
  868. package/dist/content/icons/font-awesome/svgs/brands/square-web-awesome-stroke.svg +1 -0
  869. package/dist/content/icons/font-awesome/svgs/brands/square-web-awesome.svg +1 -0
  870. package/dist/content/icons/font-awesome/svgs/brands/square-whatsapp.svg +1 -0
  871. package/dist/content/icons/font-awesome/svgs/brands/square-x-twitter.svg +1 -0
  872. package/dist/content/icons/font-awesome/svgs/brands/square-xing.svg +1 -0
  873. package/dist/content/icons/font-awesome/svgs/brands/square-youtube.svg +1 -0
  874. package/dist/content/icons/font-awesome/svgs/brands/squarespace.svg +1 -0
  875. package/dist/content/icons/font-awesome/svgs/brands/stack-exchange.svg +1 -0
  876. package/dist/content/icons/font-awesome/svgs/brands/stack-overflow.svg +1 -0
  877. package/dist/content/icons/font-awesome/svgs/brands/stackpath.svg +1 -0
  878. package/dist/content/icons/font-awesome/svgs/brands/staylinked.svg +1 -0
  879. package/dist/content/icons/font-awesome/svgs/brands/steam-symbol.svg +1 -0
  880. package/dist/content/icons/font-awesome/svgs/brands/steam.svg +1 -0
  881. package/dist/content/icons/font-awesome/svgs/brands/sticker-mule.svg +1 -0
  882. package/dist/content/icons/font-awesome/svgs/brands/strava.svg +1 -0
  883. package/dist/content/icons/font-awesome/svgs/brands/stripe-s.svg +1 -0
  884. package/dist/content/icons/font-awesome/svgs/brands/stripe.svg +1 -0
  885. package/dist/content/icons/font-awesome/svgs/brands/stubber.svg +1 -0
  886. package/dist/content/icons/font-awesome/svgs/brands/studiovinari.svg +1 -0
  887. package/dist/content/icons/font-awesome/svgs/brands/stumbleupon-circle.svg +1 -0
  888. package/dist/content/icons/font-awesome/svgs/brands/stumbleupon.svg +1 -0
  889. package/dist/content/icons/font-awesome/svgs/brands/superpowers.svg +1 -0
  890. package/dist/content/icons/font-awesome/svgs/brands/supple.svg +1 -0
  891. package/dist/content/icons/font-awesome/svgs/brands/suse.svg +1 -0
  892. package/dist/content/icons/font-awesome/svgs/brands/swift.svg +1 -0
  893. package/dist/content/icons/font-awesome/svgs/brands/symfony.svg +1 -0
  894. package/dist/content/icons/font-awesome/svgs/brands/teamspeak.svg +1 -0
  895. package/dist/content/icons/font-awesome/svgs/brands/telegram.svg +1 -0
  896. package/dist/content/icons/font-awesome/svgs/brands/tencent-weibo.svg +1 -0
  897. package/dist/content/icons/font-awesome/svgs/brands/the-red-yeti.svg +1 -0
  898. package/dist/content/icons/font-awesome/svgs/brands/themeco.svg +1 -0
  899. package/dist/content/icons/font-awesome/svgs/brands/themeisle.svg +1 -0
  900. package/dist/content/icons/font-awesome/svgs/brands/think-peaks.svg +1 -0
  901. package/dist/content/icons/font-awesome/svgs/brands/threads.svg +1 -0
  902. package/dist/content/icons/font-awesome/svgs/brands/tiktok.svg +1 -0
  903. package/dist/content/icons/font-awesome/svgs/brands/trade-federation.svg +1 -0
  904. package/dist/content/icons/font-awesome/svgs/brands/trello.svg +1 -0
  905. package/dist/content/icons/font-awesome/svgs/brands/tumblr.svg +1 -0
  906. package/dist/content/icons/font-awesome/svgs/brands/twitch.svg +1 -0
  907. package/dist/content/icons/font-awesome/svgs/brands/twitter.svg +1 -0
  908. package/dist/content/icons/font-awesome/svgs/brands/typo3.svg +1 -0
  909. package/dist/content/icons/font-awesome/svgs/brands/uber.svg +1 -0
  910. package/dist/content/icons/font-awesome/svgs/brands/ubuntu.svg +1 -0
  911. package/dist/content/icons/font-awesome/svgs/brands/uikit.svg +1 -0
  912. package/dist/content/icons/font-awesome/svgs/brands/umbraco.svg +1 -0
  913. package/dist/content/icons/font-awesome/svgs/brands/uncharted.svg +1 -0
  914. package/dist/content/icons/font-awesome/svgs/brands/uniregistry.svg +1 -0
  915. package/dist/content/icons/font-awesome/svgs/brands/unity.svg +1 -0
  916. package/dist/content/icons/font-awesome/svgs/brands/unsplash.svg +1 -0
  917. package/dist/content/icons/font-awesome/svgs/brands/untappd.svg +1 -0
  918. package/dist/content/icons/font-awesome/svgs/brands/ups.svg +1 -0
  919. package/dist/content/icons/font-awesome/svgs/brands/upwork.svg +1 -0
  920. package/dist/content/icons/font-awesome/svgs/brands/usb.svg +1 -0
  921. package/dist/content/icons/font-awesome/svgs/brands/usps.svg +1 -0
  922. package/dist/content/icons/font-awesome/svgs/brands/ussunnah.svg +1 -0
  923. package/dist/content/icons/font-awesome/svgs/brands/vaadin.svg +1 -0
  924. package/dist/content/icons/font-awesome/svgs/brands/viacoin.svg +1 -0
  925. package/dist/content/icons/font-awesome/svgs/brands/viadeo.svg +1 -0
  926. package/dist/content/icons/font-awesome/svgs/brands/viber.svg +1 -0
  927. package/dist/content/icons/font-awesome/svgs/brands/vimeo-v.svg +1 -0
  928. package/dist/content/icons/font-awesome/svgs/brands/vimeo.svg +1 -0
  929. package/dist/content/icons/font-awesome/svgs/brands/vine.svg +1 -0
  930. package/dist/content/icons/font-awesome/svgs/brands/vk.svg +1 -0
  931. package/dist/content/icons/font-awesome/svgs/brands/vnv.svg +1 -0
  932. package/dist/content/icons/font-awesome/svgs/brands/vuejs.svg +1 -0
  933. package/dist/content/icons/font-awesome/svgs/brands/watchman-monitoring.svg +1 -0
  934. package/dist/content/icons/font-awesome/svgs/brands/waze.svg +1 -0
  935. package/dist/content/icons/font-awesome/svgs/brands/web-awesome.svg +1 -0
  936. package/dist/content/icons/font-awesome/svgs/brands/webflow.svg +1 -0
  937. package/dist/content/icons/font-awesome/svgs/brands/weebly.svg +1 -0
  938. package/dist/content/icons/font-awesome/svgs/brands/weibo.svg +1 -0
  939. package/dist/content/icons/font-awesome/svgs/brands/weixin.svg +1 -0
  940. package/dist/content/icons/font-awesome/svgs/brands/whatsapp.svg +1 -0
  941. package/dist/content/icons/font-awesome/svgs/brands/whmcs.svg +1 -0
  942. package/dist/content/icons/font-awesome/svgs/brands/wikipedia-w.svg +1 -0
  943. package/dist/content/icons/font-awesome/svgs/brands/windows.svg +1 -0
  944. package/dist/content/icons/font-awesome/svgs/brands/wirsindhandwerk.svg +1 -0
  945. package/dist/content/icons/font-awesome/svgs/brands/wix.svg +1 -0
  946. package/dist/content/icons/font-awesome/svgs/brands/wizards-of-the-coast.svg +1 -0
  947. package/dist/content/icons/font-awesome/svgs/brands/wodu.svg +1 -0
  948. package/dist/content/icons/font-awesome/svgs/brands/wolf-pack-battalion.svg +1 -0
  949. package/dist/content/icons/font-awesome/svgs/brands/wordpress-simple.svg +1 -0
  950. package/dist/content/icons/font-awesome/svgs/brands/wordpress.svg +1 -0
  951. package/dist/content/icons/font-awesome/svgs/brands/wpbeginner.svg +1 -0
  952. package/dist/content/icons/font-awesome/svgs/brands/wpexplorer.svg +1 -0
  953. package/dist/content/icons/font-awesome/svgs/brands/wpforms.svg +1 -0
  954. package/dist/content/icons/font-awesome/svgs/brands/wpressr.svg +1 -0
  955. package/dist/content/icons/font-awesome/svgs/brands/x-twitter.svg +1 -0
  956. package/dist/content/icons/font-awesome/svgs/brands/xbox.svg +1 -0
  957. package/dist/content/icons/font-awesome/svgs/brands/xing.svg +1 -0
  958. package/dist/content/icons/font-awesome/svgs/brands/y-combinator.svg +1 -0
  959. package/dist/content/icons/font-awesome/svgs/brands/yahoo.svg +1 -0
  960. package/dist/content/icons/font-awesome/svgs/brands/yammer.svg +1 -0
  961. package/dist/content/icons/font-awesome/svgs/brands/yandex-international.svg +1 -0
  962. package/dist/content/icons/font-awesome/svgs/brands/yandex.svg +1 -0
  963. package/dist/content/icons/font-awesome/svgs/brands/yarn.svg +1 -0
  964. package/dist/content/icons/font-awesome/svgs/brands/yelp.svg +1 -0
  965. package/dist/content/icons/font-awesome/svgs/brands/yoast.svg +1 -0
  966. package/dist/content/icons/font-awesome/svgs/brands/youtube.svg +1 -0
  967. package/dist/content/icons/font-awesome/svgs/brands/zhihu.svg +1 -0
  968. package/dist/content/icons/font-awesome/svgs/regular/address-book.svg +1 -0
  969. package/dist/content/icons/font-awesome/svgs/regular/address-card.svg +1 -0
  970. package/dist/content/icons/font-awesome/svgs/regular/bell-slash.svg +1 -0
  971. package/dist/content/icons/font-awesome/svgs/regular/bell.svg +1 -0
  972. package/dist/content/icons/font-awesome/svgs/regular/bookmark.svg +1 -0
  973. package/dist/content/icons/font-awesome/svgs/regular/building.svg +1 -0
  974. package/dist/content/icons/font-awesome/svgs/regular/calendar-check.svg +1 -0
  975. package/dist/content/icons/font-awesome/svgs/regular/calendar-days.svg +1 -0
  976. package/dist/content/icons/font-awesome/svgs/regular/calendar-minus.svg +1 -0
  977. package/dist/content/icons/font-awesome/svgs/regular/calendar-plus.svg +1 -0
  978. package/dist/content/icons/font-awesome/svgs/regular/calendar-xmark.svg +1 -0
  979. package/dist/content/icons/font-awesome/svgs/regular/calendar.svg +1 -0
  980. package/dist/content/icons/font-awesome/svgs/regular/chart-bar.svg +1 -0
  981. package/dist/content/icons/font-awesome/svgs/regular/chess-bishop.svg +1 -0
  982. package/dist/content/icons/font-awesome/svgs/regular/chess-king.svg +1 -0
  983. package/dist/content/icons/font-awesome/svgs/regular/chess-knight.svg +1 -0
  984. package/dist/content/icons/font-awesome/svgs/regular/chess-pawn.svg +1 -0
  985. package/dist/content/icons/font-awesome/svgs/regular/chess-queen.svg +1 -0
  986. package/dist/content/icons/font-awesome/svgs/regular/chess-rook.svg +1 -0
  987. package/dist/content/icons/font-awesome/svgs/regular/circle-check.svg +1 -0
  988. package/dist/content/icons/font-awesome/svgs/regular/circle-dot.svg +1 -0
  989. package/dist/content/icons/font-awesome/svgs/regular/circle-down.svg +1 -0
  990. package/dist/content/icons/font-awesome/svgs/regular/circle-left.svg +1 -0
  991. package/dist/content/icons/font-awesome/svgs/regular/circle-pause.svg +1 -0
  992. package/dist/content/icons/font-awesome/svgs/regular/circle-play.svg +1 -0
  993. package/dist/content/icons/font-awesome/svgs/regular/circle-question.svg +1 -0
  994. package/dist/content/icons/font-awesome/svgs/regular/circle-right.svg +1 -0
  995. package/dist/content/icons/font-awesome/svgs/regular/circle-stop.svg +1 -0
  996. package/dist/content/icons/font-awesome/svgs/regular/circle-up.svg +1 -0
  997. package/dist/content/icons/font-awesome/svgs/regular/circle-user.svg +1 -0
  998. package/dist/content/icons/font-awesome/svgs/regular/circle-xmark.svg +1 -0
  999. package/dist/content/icons/font-awesome/svgs/regular/circle.svg +1 -0
  1000. package/dist/content/icons/font-awesome/svgs/regular/clipboard.svg +1 -0
  1001. package/dist/content/icons/font-awesome/svgs/regular/clock.svg +1 -0
  1002. package/dist/content/icons/font-awesome/svgs/regular/clone.svg +1 -0
  1003. package/dist/content/icons/font-awesome/svgs/regular/closed-captioning.svg +1 -0
  1004. package/dist/content/icons/font-awesome/svgs/regular/comment-dots.svg +1 -0
  1005. package/dist/content/icons/font-awesome/svgs/regular/comment.svg +1 -0
  1006. package/dist/content/icons/font-awesome/svgs/regular/comments.svg +1 -0
  1007. package/dist/content/icons/font-awesome/svgs/regular/compass.svg +1 -0
  1008. package/dist/content/icons/font-awesome/svgs/regular/copy.svg +1 -0
  1009. package/dist/content/icons/font-awesome/svgs/regular/copyright.svg +1 -0
  1010. package/dist/content/icons/font-awesome/svgs/regular/credit-card.svg +1 -0
  1011. package/dist/content/icons/font-awesome/svgs/regular/envelope-open.svg +1 -0
  1012. package/dist/content/icons/font-awesome/svgs/regular/envelope.svg +1 -0
  1013. package/dist/content/icons/font-awesome/svgs/regular/eye-slash.svg +1 -0
  1014. package/dist/content/icons/font-awesome/svgs/regular/eye.svg +1 -0
  1015. package/dist/content/icons/font-awesome/svgs/regular/face-angry.svg +1 -0
  1016. package/dist/content/icons/font-awesome/svgs/regular/face-dizzy.svg +1 -0
  1017. package/dist/content/icons/font-awesome/svgs/regular/face-flushed.svg +1 -0
  1018. package/dist/content/icons/font-awesome/svgs/regular/face-frown-open.svg +1 -0
  1019. package/dist/content/icons/font-awesome/svgs/regular/face-frown.svg +1 -0
  1020. package/dist/content/icons/font-awesome/svgs/regular/face-grimace.svg +1 -0
  1021. package/dist/content/icons/font-awesome/svgs/regular/face-grin-beam-sweat.svg +1 -0
  1022. package/dist/content/icons/font-awesome/svgs/regular/face-grin-beam.svg +1 -0
  1023. package/dist/content/icons/font-awesome/svgs/regular/face-grin-hearts.svg +1 -0
  1024. package/dist/content/icons/font-awesome/svgs/regular/face-grin-squint-tears.svg +1 -0
  1025. package/dist/content/icons/font-awesome/svgs/regular/face-grin-squint.svg +1 -0
  1026. package/dist/content/icons/font-awesome/svgs/regular/face-grin-stars.svg +1 -0
  1027. package/dist/content/icons/font-awesome/svgs/regular/face-grin-tears.svg +1 -0
  1028. package/dist/content/icons/font-awesome/svgs/regular/face-grin-tongue-squint.svg +1 -0
  1029. package/dist/content/icons/font-awesome/svgs/regular/face-grin-tongue-wink.svg +1 -0
  1030. package/dist/content/icons/font-awesome/svgs/regular/face-grin-tongue.svg +1 -0
  1031. package/dist/content/icons/font-awesome/svgs/regular/face-grin-wide.svg +1 -0
  1032. package/dist/content/icons/font-awesome/svgs/regular/face-grin-wink.svg +1 -0
  1033. package/dist/content/icons/font-awesome/svgs/regular/face-grin.svg +1 -0
  1034. package/dist/content/icons/font-awesome/svgs/regular/face-kiss-beam.svg +1 -0
  1035. package/dist/content/icons/font-awesome/svgs/regular/face-kiss-wink-heart.svg +1 -0
  1036. package/dist/content/icons/font-awesome/svgs/regular/face-kiss.svg +1 -0
  1037. package/dist/content/icons/font-awesome/svgs/regular/face-laugh-beam.svg +1 -0
  1038. package/dist/content/icons/font-awesome/svgs/regular/face-laugh-squint.svg +1 -0
  1039. package/dist/content/icons/font-awesome/svgs/regular/face-laugh-wink.svg +1 -0
  1040. package/dist/content/icons/font-awesome/svgs/regular/face-laugh.svg +1 -0
  1041. package/dist/content/icons/font-awesome/svgs/regular/face-meh-blank.svg +1 -0
  1042. package/dist/content/icons/font-awesome/svgs/regular/face-meh.svg +1 -0
  1043. package/dist/content/icons/font-awesome/svgs/regular/face-rolling-eyes.svg +1 -0
  1044. package/dist/content/icons/font-awesome/svgs/regular/face-sad-cry.svg +1 -0
  1045. package/dist/content/icons/font-awesome/svgs/regular/face-sad-tear.svg +1 -0
  1046. package/dist/content/icons/font-awesome/svgs/regular/face-smile-beam.svg +1 -0
  1047. package/dist/content/icons/font-awesome/svgs/regular/face-smile-wink.svg +1 -0
  1048. package/dist/content/icons/font-awesome/svgs/regular/face-smile.svg +1 -0
  1049. package/dist/content/icons/font-awesome/svgs/regular/face-surprise.svg +1 -0
  1050. package/dist/content/icons/font-awesome/svgs/regular/face-tired.svg +1 -0
  1051. package/dist/content/icons/font-awesome/svgs/regular/file-audio.svg +1 -0
  1052. package/dist/content/icons/font-awesome/svgs/regular/file-code.svg +1 -0
  1053. package/dist/content/icons/font-awesome/svgs/regular/file-excel.svg +1 -0
  1054. package/dist/content/icons/font-awesome/svgs/regular/file-image.svg +1 -0
  1055. package/dist/content/icons/font-awesome/svgs/regular/file-lines.svg +1 -0
  1056. package/dist/content/icons/font-awesome/svgs/regular/file-pdf.svg +1 -0
  1057. package/dist/content/icons/font-awesome/svgs/regular/file-powerpoint.svg +1 -0
  1058. package/dist/content/icons/font-awesome/svgs/regular/file-video.svg +1 -0
  1059. package/dist/content/icons/font-awesome/svgs/regular/file-word.svg +1 -0
  1060. package/dist/content/icons/font-awesome/svgs/regular/file-zipper.svg +1 -0
  1061. package/dist/content/icons/font-awesome/svgs/regular/file.svg +1 -0
  1062. package/dist/content/icons/font-awesome/svgs/regular/flag.svg +1 -0
  1063. package/dist/content/icons/font-awesome/svgs/regular/floppy-disk.svg +1 -0
  1064. package/dist/content/icons/font-awesome/svgs/regular/folder-closed.svg +1 -0
  1065. package/dist/content/icons/font-awesome/svgs/regular/folder-open.svg +1 -0
  1066. package/dist/content/icons/font-awesome/svgs/regular/folder.svg +1 -0
  1067. package/dist/content/icons/font-awesome/svgs/regular/font-awesome.svg +1 -0
  1068. package/dist/content/icons/font-awesome/svgs/regular/futbol.svg +1 -0
  1069. package/dist/content/icons/font-awesome/svgs/regular/gem.svg +1 -0
  1070. package/dist/content/icons/font-awesome/svgs/regular/hand-back-fist.svg +1 -0
  1071. package/dist/content/icons/font-awesome/svgs/regular/hand-lizard.svg +1 -0
  1072. package/dist/content/icons/font-awesome/svgs/regular/hand-peace.svg +1 -0
  1073. package/dist/content/icons/font-awesome/svgs/regular/hand-point-down.svg +1 -0
  1074. package/dist/content/icons/font-awesome/svgs/regular/hand-point-left.svg +1 -0
  1075. package/dist/content/icons/font-awesome/svgs/regular/hand-point-right.svg +1 -0
  1076. package/dist/content/icons/font-awesome/svgs/regular/hand-point-up.svg +1 -0
  1077. package/dist/content/icons/font-awesome/svgs/regular/hand-pointer.svg +1 -0
  1078. package/dist/content/icons/font-awesome/svgs/regular/hand-scissors.svg +1 -0
  1079. package/dist/content/icons/font-awesome/svgs/regular/hand-spock.svg +1 -0
  1080. package/dist/content/icons/font-awesome/svgs/regular/hand.svg +1 -0
  1081. package/dist/content/icons/font-awesome/svgs/regular/handshake.svg +1 -0
  1082. package/dist/content/icons/font-awesome/svgs/regular/hard-drive.svg +1 -0
  1083. package/dist/content/icons/font-awesome/svgs/regular/heart.svg +1 -0
  1084. package/dist/content/icons/font-awesome/svgs/regular/hospital.svg +1 -0
  1085. package/dist/content/icons/font-awesome/svgs/regular/hourglass-half.svg +1 -0
  1086. package/dist/content/icons/font-awesome/svgs/regular/hourglass.svg +1 -0
  1087. package/dist/content/icons/font-awesome/svgs/regular/id-badge.svg +1 -0
  1088. package/dist/content/icons/font-awesome/svgs/regular/id-card.svg +1 -0
  1089. package/dist/content/icons/font-awesome/svgs/regular/image.svg +1 -0
  1090. package/dist/content/icons/font-awesome/svgs/regular/images.svg +1 -0
  1091. package/dist/content/icons/font-awesome/svgs/regular/keyboard.svg +1 -0
  1092. package/dist/content/icons/font-awesome/svgs/regular/lemon.svg +1 -0
  1093. package/dist/content/icons/font-awesome/svgs/regular/life-ring.svg +1 -0
  1094. package/dist/content/icons/font-awesome/svgs/regular/lightbulb.svg +1 -0
  1095. package/dist/content/icons/font-awesome/svgs/regular/map.svg +1 -0
  1096. package/dist/content/icons/font-awesome/svgs/regular/message.svg +1 -0
  1097. package/dist/content/icons/font-awesome/svgs/regular/money-bill-1.svg +1 -0
  1098. package/dist/content/icons/font-awesome/svgs/regular/moon.svg +1 -0
  1099. package/dist/content/icons/font-awesome/svgs/regular/newspaper.svg +1 -0
  1100. package/dist/content/icons/font-awesome/svgs/regular/note-sticky.svg +1 -0
  1101. package/dist/content/icons/font-awesome/svgs/regular/object-group.svg +1 -0
  1102. package/dist/content/icons/font-awesome/svgs/regular/object-ungroup.svg +1 -0
  1103. package/dist/content/icons/font-awesome/svgs/regular/paper-plane.svg +1 -0
  1104. package/dist/content/icons/font-awesome/svgs/regular/paste.svg +1 -0
  1105. package/dist/content/icons/font-awesome/svgs/regular/pen-to-square.svg +1 -0
  1106. package/dist/content/icons/font-awesome/svgs/regular/rectangle-list.svg +1 -0
  1107. package/dist/content/icons/font-awesome/svgs/regular/rectangle-xmark.svg +1 -0
  1108. package/dist/content/icons/font-awesome/svgs/regular/registered.svg +1 -0
  1109. package/dist/content/icons/font-awesome/svgs/regular/share-from-square.svg +1 -0
  1110. package/dist/content/icons/font-awesome/svgs/regular/snowflake.svg +1 -0
  1111. package/dist/content/icons/font-awesome/svgs/regular/square-caret-down.svg +1 -0
  1112. package/dist/content/icons/font-awesome/svgs/regular/square-caret-left.svg +1 -0
  1113. package/dist/content/icons/font-awesome/svgs/regular/square-caret-right.svg +1 -0
  1114. package/dist/content/icons/font-awesome/svgs/regular/square-caret-up.svg +1 -0
  1115. package/dist/content/icons/font-awesome/svgs/regular/square-check.svg +1 -0
  1116. package/dist/content/icons/font-awesome/svgs/regular/square-full.svg +1 -0
  1117. package/dist/content/icons/font-awesome/svgs/regular/square-minus.svg +1 -0
  1118. package/dist/content/icons/font-awesome/svgs/regular/square-plus.svg +1 -0
  1119. package/dist/content/icons/font-awesome/svgs/regular/square.svg +1 -0
  1120. package/dist/content/icons/font-awesome/svgs/regular/star-half-stroke.svg +1 -0
  1121. package/dist/content/icons/font-awesome/svgs/regular/star-half.svg +1 -0
  1122. package/dist/content/icons/font-awesome/svgs/regular/star.svg +1 -0
  1123. package/dist/content/icons/font-awesome/svgs/regular/sun.svg +1 -0
  1124. package/dist/content/icons/font-awesome/svgs/regular/thumbs-down.svg +1 -0
  1125. package/dist/content/icons/font-awesome/svgs/regular/thumbs-up.svg +1 -0
  1126. package/dist/content/icons/font-awesome/svgs/regular/trash-can.svg +1 -0
  1127. package/dist/content/icons/font-awesome/svgs/regular/user.svg +1 -0
  1128. package/dist/content/icons/font-awesome/svgs/regular/window-maximize.svg +1 -0
  1129. package/dist/content/icons/font-awesome/svgs/regular/window-minimize.svg +1 -0
  1130. package/dist/content/icons/font-awesome/svgs/regular/window-restore.svg +1 -0
  1131. package/dist/content/icons/font-awesome/svgs/solid/0.svg +1 -0
  1132. package/dist/content/icons/font-awesome/svgs/solid/1.svg +1 -0
  1133. package/dist/content/icons/font-awesome/svgs/solid/2.svg +1 -0
  1134. package/dist/content/icons/font-awesome/svgs/solid/3.svg +1 -0
  1135. package/dist/content/icons/font-awesome/svgs/solid/4.svg +1 -0
  1136. package/dist/content/icons/font-awesome/svgs/solid/5.svg +1 -0
  1137. package/dist/content/icons/font-awesome/svgs/solid/6.svg +1 -0
  1138. package/dist/content/icons/font-awesome/svgs/solid/7.svg +1 -0
  1139. package/dist/content/icons/font-awesome/svgs/solid/8.svg +1 -0
  1140. package/dist/content/icons/font-awesome/svgs/solid/9.svg +1 -0
  1141. package/dist/content/icons/font-awesome/svgs/solid/a.svg +1 -0
  1142. package/dist/content/icons/font-awesome/svgs/solid/address-book.svg +1 -0
  1143. package/dist/content/icons/font-awesome/svgs/solid/address-card.svg +1 -0
  1144. package/dist/content/icons/font-awesome/svgs/solid/align-center.svg +1 -0
  1145. package/dist/content/icons/font-awesome/svgs/solid/align-justify.svg +1 -0
  1146. package/dist/content/icons/font-awesome/svgs/solid/align-left.svg +1 -0
  1147. package/dist/content/icons/font-awesome/svgs/solid/align-right.svg +1 -0
  1148. package/dist/content/icons/font-awesome/svgs/solid/anchor-circle-check.svg +1 -0
  1149. package/dist/content/icons/font-awesome/svgs/solid/anchor-circle-exclamation.svg +1 -0
  1150. package/dist/content/icons/font-awesome/svgs/solid/anchor-circle-xmark.svg +1 -0
  1151. package/dist/content/icons/font-awesome/svgs/solid/anchor-lock.svg +1 -0
  1152. package/dist/content/icons/font-awesome/svgs/solid/anchor.svg +1 -0
  1153. package/dist/content/icons/font-awesome/svgs/solid/angle-down.svg +1 -0
  1154. package/dist/content/icons/font-awesome/svgs/solid/angle-left.svg +1 -0
  1155. package/dist/content/icons/font-awesome/svgs/solid/angle-right.svg +1 -0
  1156. package/dist/content/icons/font-awesome/svgs/solid/angle-up.svg +1 -0
  1157. package/dist/content/icons/font-awesome/svgs/solid/angles-down.svg +1 -0
  1158. package/dist/content/icons/font-awesome/svgs/solid/angles-left.svg +1 -0
  1159. package/dist/content/icons/font-awesome/svgs/solid/angles-right.svg +1 -0
  1160. package/dist/content/icons/font-awesome/svgs/solid/angles-up.svg +1 -0
  1161. package/dist/content/icons/font-awesome/svgs/solid/ankh.svg +1 -0
  1162. package/dist/content/icons/font-awesome/svgs/solid/apple-whole.svg +1 -0
  1163. package/dist/content/icons/font-awesome/svgs/solid/archway.svg +1 -0
  1164. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-1-9.svg +1 -0
  1165. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-9-1.svg +1 -0
  1166. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-a-z.svg +1 -0
  1167. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-long.svg +1 -0
  1168. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-short-wide.svg +1 -0
  1169. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-up-across-line.svg +1 -0
  1170. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-up-lock.svg +1 -0
  1171. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-wide-short.svg +1 -0
  1172. package/dist/content/icons/font-awesome/svgs/solid/arrow-down-z-a.svg +1 -0
  1173. package/dist/content/icons/font-awesome/svgs/solid/arrow-down.svg +1 -0
  1174. package/dist/content/icons/font-awesome/svgs/solid/arrow-left-long.svg +1 -0
  1175. package/dist/content/icons/font-awesome/svgs/solid/arrow-left.svg +1 -0
  1176. package/dist/content/icons/font-awesome/svgs/solid/arrow-pointer.svg +1 -0
  1177. package/dist/content/icons/font-awesome/svgs/solid/arrow-right-arrow-left.svg +1 -0
  1178. package/dist/content/icons/font-awesome/svgs/solid/arrow-right-from-bracket.svg +1 -0
  1179. package/dist/content/icons/font-awesome/svgs/solid/arrow-right-long.svg +1 -0
  1180. package/dist/content/icons/font-awesome/svgs/solid/arrow-right-to-bracket.svg +1 -0
  1181. package/dist/content/icons/font-awesome/svgs/solid/arrow-right-to-city.svg +1 -0
  1182. package/dist/content/icons/font-awesome/svgs/solid/arrow-right.svg +1 -0
  1183. package/dist/content/icons/font-awesome/svgs/solid/arrow-rotate-left.svg +1 -0
  1184. package/dist/content/icons/font-awesome/svgs/solid/arrow-rotate-right.svg +1 -0
  1185. package/dist/content/icons/font-awesome/svgs/solid/arrow-trend-down.svg +1 -0
  1186. package/dist/content/icons/font-awesome/svgs/solid/arrow-trend-up.svg +1 -0
  1187. package/dist/content/icons/font-awesome/svgs/solid/arrow-turn-down.svg +1 -0
  1188. package/dist/content/icons/font-awesome/svgs/solid/arrow-turn-up.svg +1 -0
  1189. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-1-9.svg +1 -0
  1190. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-9-1.svg +1 -0
  1191. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-a-z.svg +1 -0
  1192. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-from-bracket.svg +1 -0
  1193. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-from-ground-water.svg +1 -0
  1194. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-from-water-pump.svg +1 -0
  1195. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-long.svg +1 -0
  1196. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-right-dots.svg +1 -0
  1197. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-right-from-square.svg +1 -0
  1198. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-short-wide.svg +1 -0
  1199. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-wide-short.svg +1 -0
  1200. package/dist/content/icons/font-awesome/svgs/solid/arrow-up-z-a.svg +1 -0
  1201. package/dist/content/icons/font-awesome/svgs/solid/arrow-up.svg +1 -0
  1202. package/dist/content/icons/font-awesome/svgs/solid/arrows-down-to-line.svg +1 -0
  1203. package/dist/content/icons/font-awesome/svgs/solid/arrows-down-to-people.svg +1 -0
  1204. package/dist/content/icons/font-awesome/svgs/solid/arrows-left-right-to-line.svg +1 -0
  1205. package/dist/content/icons/font-awesome/svgs/solid/arrows-left-right.svg +1 -0
  1206. package/dist/content/icons/font-awesome/svgs/solid/arrows-rotate.svg +1 -0
  1207. package/dist/content/icons/font-awesome/svgs/solid/arrows-spin.svg +1 -0
  1208. package/dist/content/icons/font-awesome/svgs/solid/arrows-split-up-and-left.svg +1 -0
  1209. package/dist/content/icons/font-awesome/svgs/solid/arrows-to-circle.svg +1 -0
  1210. package/dist/content/icons/font-awesome/svgs/solid/arrows-to-dot.svg +1 -0
  1211. package/dist/content/icons/font-awesome/svgs/solid/arrows-to-eye.svg +1 -0
  1212. package/dist/content/icons/font-awesome/svgs/solid/arrows-turn-right.svg +1 -0
  1213. package/dist/content/icons/font-awesome/svgs/solid/arrows-turn-to-dots.svg +1 -0
  1214. package/dist/content/icons/font-awesome/svgs/solid/arrows-up-down-left-right.svg +1 -0
  1215. package/dist/content/icons/font-awesome/svgs/solid/arrows-up-down.svg +1 -0
  1216. package/dist/content/icons/font-awesome/svgs/solid/arrows-up-to-line.svg +1 -0
  1217. package/dist/content/icons/font-awesome/svgs/solid/asterisk.svg +1 -0
  1218. package/dist/content/icons/font-awesome/svgs/solid/at.svg +1 -0
  1219. package/dist/content/icons/font-awesome/svgs/solid/atom.svg +1 -0
  1220. package/dist/content/icons/font-awesome/svgs/solid/audio-description.svg +1 -0
  1221. package/dist/content/icons/font-awesome/svgs/solid/austral-sign.svg +1 -0
  1222. package/dist/content/icons/font-awesome/svgs/solid/award.svg +1 -0
  1223. package/dist/content/icons/font-awesome/svgs/solid/b.svg +1 -0
  1224. package/dist/content/icons/font-awesome/svgs/solid/baby-carriage.svg +1 -0
  1225. package/dist/content/icons/font-awesome/svgs/solid/baby.svg +1 -0
  1226. package/dist/content/icons/font-awesome/svgs/solid/backward-fast.svg +1 -0
  1227. package/dist/content/icons/font-awesome/svgs/solid/backward-step.svg +1 -0
  1228. package/dist/content/icons/font-awesome/svgs/solid/backward.svg +1 -0
  1229. package/dist/content/icons/font-awesome/svgs/solid/bacon.svg +1 -0
  1230. package/dist/content/icons/font-awesome/svgs/solid/bacteria.svg +1 -0
  1231. package/dist/content/icons/font-awesome/svgs/solid/bacterium.svg +1 -0
  1232. package/dist/content/icons/font-awesome/svgs/solid/bag-shopping.svg +1 -0
  1233. package/dist/content/icons/font-awesome/svgs/solid/bahai.svg +1 -0
  1234. package/dist/content/icons/font-awesome/svgs/solid/baht-sign.svg +1 -0
  1235. package/dist/content/icons/font-awesome/svgs/solid/ban-smoking.svg +1 -0
  1236. package/dist/content/icons/font-awesome/svgs/solid/ban.svg +1 -0
  1237. package/dist/content/icons/font-awesome/svgs/solid/bandage.svg +1 -0
  1238. package/dist/content/icons/font-awesome/svgs/solid/bangladeshi-taka-sign.svg +1 -0
  1239. package/dist/content/icons/font-awesome/svgs/solid/barcode.svg +1 -0
  1240. package/dist/content/icons/font-awesome/svgs/solid/bars-progress.svg +1 -0
  1241. package/dist/content/icons/font-awesome/svgs/solid/bars-staggered.svg +1 -0
  1242. package/dist/content/icons/font-awesome/svgs/solid/bars.svg +1 -0
  1243. package/dist/content/icons/font-awesome/svgs/solid/baseball-bat-ball.svg +1 -0
  1244. package/dist/content/icons/font-awesome/svgs/solid/baseball.svg +1 -0
  1245. package/dist/content/icons/font-awesome/svgs/solid/basket-shopping.svg +1 -0
  1246. package/dist/content/icons/font-awesome/svgs/solid/basketball.svg +1 -0
  1247. package/dist/content/icons/font-awesome/svgs/solid/bath.svg +1 -0
  1248. package/dist/content/icons/font-awesome/svgs/solid/battery-empty.svg +1 -0
  1249. package/dist/content/icons/font-awesome/svgs/solid/battery-full.svg +1 -0
  1250. package/dist/content/icons/font-awesome/svgs/solid/battery-half.svg +1 -0
  1251. package/dist/content/icons/font-awesome/svgs/solid/battery-quarter.svg +1 -0
  1252. package/dist/content/icons/font-awesome/svgs/solid/battery-three-quarters.svg +1 -0
  1253. package/dist/content/icons/font-awesome/svgs/solid/bed-pulse.svg +1 -0
  1254. package/dist/content/icons/font-awesome/svgs/solid/bed.svg +1 -0
  1255. package/dist/content/icons/font-awesome/svgs/solid/beer-mug-empty.svg +1 -0
  1256. package/dist/content/icons/font-awesome/svgs/solid/bell-concierge.svg +1 -0
  1257. package/dist/content/icons/font-awesome/svgs/solid/bell-slash.svg +1 -0
  1258. package/dist/content/icons/font-awesome/svgs/solid/bell.svg +1 -0
  1259. package/dist/content/icons/font-awesome/svgs/solid/bezier-curve.svg +1 -0
  1260. package/dist/content/icons/font-awesome/svgs/solid/bicycle.svg +1 -0
  1261. package/dist/content/icons/font-awesome/svgs/solid/binoculars.svg +1 -0
  1262. package/dist/content/icons/font-awesome/svgs/solid/biohazard.svg +1 -0
  1263. package/dist/content/icons/font-awesome/svgs/solid/bitcoin-sign.svg +1 -0
  1264. package/dist/content/icons/font-awesome/svgs/solid/blender-phone.svg +1 -0
  1265. package/dist/content/icons/font-awesome/svgs/solid/blender.svg +1 -0
  1266. package/dist/content/icons/font-awesome/svgs/solid/blog.svg +1 -0
  1267. package/dist/content/icons/font-awesome/svgs/solid/bold.svg +1 -0
  1268. package/dist/content/icons/font-awesome/svgs/solid/bolt-lightning.svg +1 -0
  1269. package/dist/content/icons/font-awesome/svgs/solid/bolt.svg +1 -0
  1270. package/dist/content/icons/font-awesome/svgs/solid/bomb.svg +1 -0
  1271. package/dist/content/icons/font-awesome/svgs/solid/bone.svg +1 -0
  1272. package/dist/content/icons/font-awesome/svgs/solid/bong.svg +1 -0
  1273. package/dist/content/icons/font-awesome/svgs/solid/book-atlas.svg +1 -0
  1274. package/dist/content/icons/font-awesome/svgs/solid/book-bible.svg +1 -0
  1275. package/dist/content/icons/font-awesome/svgs/solid/book-bookmark.svg +1 -0
  1276. package/dist/content/icons/font-awesome/svgs/solid/book-journal-whills.svg +1 -0
  1277. package/dist/content/icons/font-awesome/svgs/solid/book-medical.svg +1 -0
  1278. package/dist/content/icons/font-awesome/svgs/solid/book-open-reader.svg +1 -0
  1279. package/dist/content/icons/font-awesome/svgs/solid/book-open.svg +1 -0
  1280. package/dist/content/icons/font-awesome/svgs/solid/book-quran.svg +1 -0
  1281. package/dist/content/icons/font-awesome/svgs/solid/book-skull.svg +1 -0
  1282. package/dist/content/icons/font-awesome/svgs/solid/book-tanakh.svg +1 -0
  1283. package/dist/content/icons/font-awesome/svgs/solid/book.svg +1 -0
  1284. package/dist/content/icons/font-awesome/svgs/solid/bookmark.svg +1 -0
  1285. package/dist/content/icons/font-awesome/svgs/solid/border-all.svg +1 -0
  1286. package/dist/content/icons/font-awesome/svgs/solid/border-none.svg +1 -0
  1287. package/dist/content/icons/font-awesome/svgs/solid/border-top-left.svg +1 -0
  1288. package/dist/content/icons/font-awesome/svgs/solid/bore-hole.svg +1 -0
  1289. package/dist/content/icons/font-awesome/svgs/solid/bottle-droplet.svg +1 -0
  1290. package/dist/content/icons/font-awesome/svgs/solid/bottle-water.svg +1 -0
  1291. package/dist/content/icons/font-awesome/svgs/solid/bowl-food.svg +1 -0
  1292. package/dist/content/icons/font-awesome/svgs/solid/bowl-rice.svg +1 -0
  1293. package/dist/content/icons/font-awesome/svgs/solid/bowling-ball.svg +1 -0
  1294. package/dist/content/icons/font-awesome/svgs/solid/box-archive.svg +1 -0
  1295. package/dist/content/icons/font-awesome/svgs/solid/box-open.svg +1 -0
  1296. package/dist/content/icons/font-awesome/svgs/solid/box-tissue.svg +1 -0
  1297. package/dist/content/icons/font-awesome/svgs/solid/box.svg +1 -0
  1298. package/dist/content/icons/font-awesome/svgs/solid/boxes-packing.svg +1 -0
  1299. package/dist/content/icons/font-awesome/svgs/solid/boxes-stacked.svg +1 -0
  1300. package/dist/content/icons/font-awesome/svgs/solid/braille.svg +1 -0
  1301. package/dist/content/icons/font-awesome/svgs/solid/brain.svg +1 -0
  1302. package/dist/content/icons/font-awesome/svgs/solid/brazilian-real-sign.svg +1 -0
  1303. package/dist/content/icons/font-awesome/svgs/solid/bread-slice.svg +1 -0
  1304. package/dist/content/icons/font-awesome/svgs/solid/bridge-circle-check.svg +1 -0
  1305. package/dist/content/icons/font-awesome/svgs/solid/bridge-circle-exclamation.svg +1 -0
  1306. package/dist/content/icons/font-awesome/svgs/solid/bridge-circle-xmark.svg +1 -0
  1307. package/dist/content/icons/font-awesome/svgs/solid/bridge-lock.svg +1 -0
  1308. package/dist/content/icons/font-awesome/svgs/solid/bridge-water.svg +1 -0
  1309. package/dist/content/icons/font-awesome/svgs/solid/bridge.svg +1 -0
  1310. package/dist/content/icons/font-awesome/svgs/solid/briefcase-medical.svg +1 -0
  1311. package/dist/content/icons/font-awesome/svgs/solid/briefcase.svg +1 -0
  1312. package/dist/content/icons/font-awesome/svgs/solid/broom-ball.svg +1 -0
  1313. package/dist/content/icons/font-awesome/svgs/solid/broom.svg +1 -0
  1314. package/dist/content/icons/font-awesome/svgs/solid/brush.svg +1 -0
  1315. package/dist/content/icons/font-awesome/svgs/solid/bucket.svg +1 -0
  1316. package/dist/content/icons/font-awesome/svgs/solid/bug-slash.svg +1 -0
  1317. package/dist/content/icons/font-awesome/svgs/solid/bug.svg +1 -0
  1318. package/dist/content/icons/font-awesome/svgs/solid/bugs.svg +1 -0
  1319. package/dist/content/icons/font-awesome/svgs/solid/building-circle-arrow-right.svg +1 -0
  1320. package/dist/content/icons/font-awesome/svgs/solid/building-circle-check.svg +1 -0
  1321. package/dist/content/icons/font-awesome/svgs/solid/building-circle-exclamation.svg +1 -0
  1322. package/dist/content/icons/font-awesome/svgs/solid/building-circle-xmark.svg +1 -0
  1323. package/dist/content/icons/font-awesome/svgs/solid/building-columns.svg +1 -0
  1324. package/dist/content/icons/font-awesome/svgs/solid/building-flag.svg +1 -0
  1325. package/dist/content/icons/font-awesome/svgs/solid/building-lock.svg +1 -0
  1326. package/dist/content/icons/font-awesome/svgs/solid/building-ngo.svg +1 -0
  1327. package/dist/content/icons/font-awesome/svgs/solid/building-shield.svg +1 -0
  1328. package/dist/content/icons/font-awesome/svgs/solid/building-un.svg +1 -0
  1329. package/dist/content/icons/font-awesome/svgs/solid/building-user.svg +1 -0
  1330. package/dist/content/icons/font-awesome/svgs/solid/building-wheat.svg +1 -0
  1331. package/dist/content/icons/font-awesome/svgs/solid/building.svg +1 -0
  1332. package/dist/content/icons/font-awesome/svgs/solid/bullhorn.svg +1 -0
  1333. package/dist/content/icons/font-awesome/svgs/solid/bullseye.svg +1 -0
  1334. package/dist/content/icons/font-awesome/svgs/solid/burger.svg +1 -0
  1335. package/dist/content/icons/font-awesome/svgs/solid/burst.svg +1 -0
  1336. package/dist/content/icons/font-awesome/svgs/solid/bus-simple.svg +1 -0
  1337. package/dist/content/icons/font-awesome/svgs/solid/bus.svg +1 -0
  1338. package/dist/content/icons/font-awesome/svgs/solid/business-time.svg +1 -0
  1339. package/dist/content/icons/font-awesome/svgs/solid/c.svg +1 -0
  1340. package/dist/content/icons/font-awesome/svgs/solid/cable-car.svg +1 -0
  1341. package/dist/content/icons/font-awesome/svgs/solid/cake-candles.svg +1 -0
  1342. package/dist/content/icons/font-awesome/svgs/solid/calculator.svg +1 -0
  1343. package/dist/content/icons/font-awesome/svgs/solid/calendar-check.svg +1 -0
  1344. package/dist/content/icons/font-awesome/svgs/solid/calendar-day.svg +1 -0
  1345. package/dist/content/icons/font-awesome/svgs/solid/calendar-days.svg +1 -0
  1346. package/dist/content/icons/font-awesome/svgs/solid/calendar-minus.svg +1 -0
  1347. package/dist/content/icons/font-awesome/svgs/solid/calendar-plus.svg +1 -0
  1348. package/dist/content/icons/font-awesome/svgs/solid/calendar-week.svg +1 -0
  1349. package/dist/content/icons/font-awesome/svgs/solid/calendar-xmark.svg +1 -0
  1350. package/dist/content/icons/font-awesome/svgs/solid/calendar.svg +1 -0
  1351. package/dist/content/icons/font-awesome/svgs/solid/camera-retro.svg +1 -0
  1352. package/dist/content/icons/font-awesome/svgs/solid/camera-rotate.svg +1 -0
  1353. package/dist/content/icons/font-awesome/svgs/solid/camera.svg +1 -0
  1354. package/dist/content/icons/font-awesome/svgs/solid/campground.svg +1 -0
  1355. package/dist/content/icons/font-awesome/svgs/solid/candy-cane.svg +1 -0
  1356. package/dist/content/icons/font-awesome/svgs/solid/cannabis.svg +1 -0
  1357. package/dist/content/icons/font-awesome/svgs/solid/capsules.svg +1 -0
  1358. package/dist/content/icons/font-awesome/svgs/solid/car-battery.svg +1 -0
  1359. package/dist/content/icons/font-awesome/svgs/solid/car-burst.svg +1 -0
  1360. package/dist/content/icons/font-awesome/svgs/solid/car-on.svg +1 -0
  1361. package/dist/content/icons/font-awesome/svgs/solid/car-rear.svg +1 -0
  1362. package/dist/content/icons/font-awesome/svgs/solid/car-side.svg +1 -0
  1363. package/dist/content/icons/font-awesome/svgs/solid/car-tunnel.svg +1 -0
  1364. package/dist/content/icons/font-awesome/svgs/solid/car.svg +1 -0
  1365. package/dist/content/icons/font-awesome/svgs/solid/caravan.svg +1 -0
  1366. package/dist/content/icons/font-awesome/svgs/solid/caret-down.svg +1 -0
  1367. package/dist/content/icons/font-awesome/svgs/solid/caret-left.svg +1 -0
  1368. package/dist/content/icons/font-awesome/svgs/solid/caret-right.svg +1 -0
  1369. package/dist/content/icons/font-awesome/svgs/solid/caret-up.svg +1 -0
  1370. package/dist/content/icons/font-awesome/svgs/solid/carrot.svg +1 -0
  1371. package/dist/content/icons/font-awesome/svgs/solid/cart-arrow-down.svg +1 -0
  1372. package/dist/content/icons/font-awesome/svgs/solid/cart-flatbed-suitcase.svg +1 -0
  1373. package/dist/content/icons/font-awesome/svgs/solid/cart-flatbed.svg +1 -0
  1374. package/dist/content/icons/font-awesome/svgs/solid/cart-plus.svg +1 -0
  1375. package/dist/content/icons/font-awesome/svgs/solid/cart-shopping.svg +1 -0
  1376. package/dist/content/icons/font-awesome/svgs/solid/cash-register.svg +1 -0
  1377. package/dist/content/icons/font-awesome/svgs/solid/cat.svg +1 -0
  1378. package/dist/content/icons/font-awesome/svgs/solid/cedi-sign.svg +1 -0
  1379. package/dist/content/icons/font-awesome/svgs/solid/cent-sign.svg +1 -0
  1380. package/dist/content/icons/font-awesome/svgs/solid/certificate.svg +1 -0
  1381. package/dist/content/icons/font-awesome/svgs/solid/chair.svg +1 -0
  1382. package/dist/content/icons/font-awesome/svgs/solid/chalkboard-user.svg +1 -0
  1383. package/dist/content/icons/font-awesome/svgs/solid/chalkboard.svg +1 -0
  1384. package/dist/content/icons/font-awesome/svgs/solid/champagne-glasses.svg +1 -0
  1385. package/dist/content/icons/font-awesome/svgs/solid/charging-station.svg +1 -0
  1386. package/dist/content/icons/font-awesome/svgs/solid/chart-area.svg +1 -0
  1387. package/dist/content/icons/font-awesome/svgs/solid/chart-bar.svg +1 -0
  1388. package/dist/content/icons/font-awesome/svgs/solid/chart-column.svg +1 -0
  1389. package/dist/content/icons/font-awesome/svgs/solid/chart-gantt.svg +1 -0
  1390. package/dist/content/icons/font-awesome/svgs/solid/chart-line.svg +1 -0
  1391. package/dist/content/icons/font-awesome/svgs/solid/chart-pie.svg +1 -0
  1392. package/dist/content/icons/font-awesome/svgs/solid/chart-simple.svg +1 -0
  1393. package/dist/content/icons/font-awesome/svgs/solid/check-double.svg +1 -0
  1394. package/dist/content/icons/font-awesome/svgs/solid/check-to-slot.svg +1 -0
  1395. package/dist/content/icons/font-awesome/svgs/solid/check.svg +1 -0
  1396. package/dist/content/icons/font-awesome/svgs/solid/cheese.svg +1 -0
  1397. package/dist/content/icons/font-awesome/svgs/solid/chess-bishop.svg +1 -0
  1398. package/dist/content/icons/font-awesome/svgs/solid/chess-board.svg +1 -0
  1399. package/dist/content/icons/font-awesome/svgs/solid/chess-king.svg +1 -0
  1400. package/dist/content/icons/font-awesome/svgs/solid/chess-knight.svg +1 -0
  1401. package/dist/content/icons/font-awesome/svgs/solid/chess-pawn.svg +1 -0
  1402. package/dist/content/icons/font-awesome/svgs/solid/chess-queen.svg +1 -0
  1403. package/dist/content/icons/font-awesome/svgs/solid/chess-rook.svg +1 -0
  1404. package/dist/content/icons/font-awesome/svgs/solid/chess.svg +1 -0
  1405. package/dist/content/icons/font-awesome/svgs/solid/chevron-down.svg +1 -0
  1406. package/dist/content/icons/font-awesome/svgs/solid/chevron-left.svg +1 -0
  1407. package/dist/content/icons/font-awesome/svgs/solid/chevron-right.svg +1 -0
  1408. package/dist/content/icons/font-awesome/svgs/solid/chevron-up.svg +1 -0
  1409. package/dist/content/icons/font-awesome/svgs/solid/child-combatant.svg +1 -0
  1410. package/dist/content/icons/font-awesome/svgs/solid/child-dress.svg +1 -0
  1411. package/dist/content/icons/font-awesome/svgs/solid/child-reaching.svg +1 -0
  1412. package/dist/content/icons/font-awesome/svgs/solid/child.svg +1 -0
  1413. package/dist/content/icons/font-awesome/svgs/solid/children.svg +1 -0
  1414. package/dist/content/icons/font-awesome/svgs/solid/church.svg +1 -0
  1415. package/dist/content/icons/font-awesome/svgs/solid/circle-arrow-down.svg +1 -0
  1416. package/dist/content/icons/font-awesome/svgs/solid/circle-arrow-left.svg +1 -0
  1417. package/dist/content/icons/font-awesome/svgs/solid/circle-arrow-right.svg +1 -0
  1418. package/dist/content/icons/font-awesome/svgs/solid/circle-arrow-up.svg +1 -0
  1419. package/dist/content/icons/font-awesome/svgs/solid/circle-check.svg +1 -0
  1420. package/dist/content/icons/font-awesome/svgs/solid/circle-chevron-down.svg +1 -0
  1421. package/dist/content/icons/font-awesome/svgs/solid/circle-chevron-left.svg +1 -0
  1422. package/dist/content/icons/font-awesome/svgs/solid/circle-chevron-right.svg +1 -0
  1423. package/dist/content/icons/font-awesome/svgs/solid/circle-chevron-up.svg +1 -0
  1424. package/dist/content/icons/font-awesome/svgs/solid/circle-dollar-to-slot.svg +1 -0
  1425. package/dist/content/icons/font-awesome/svgs/solid/circle-dot.svg +1 -0
  1426. package/dist/content/icons/font-awesome/svgs/solid/circle-down.svg +1 -0
  1427. package/dist/content/icons/font-awesome/svgs/solid/circle-exclamation.svg +1 -0
  1428. package/dist/content/icons/font-awesome/svgs/solid/circle-h.svg +1 -0
  1429. package/dist/content/icons/font-awesome/svgs/solid/circle-half-stroke.svg +1 -0
  1430. package/dist/content/icons/font-awesome/svgs/solid/circle-info.svg +1 -0
  1431. package/dist/content/icons/font-awesome/svgs/solid/circle-left.svg +1 -0
  1432. package/dist/content/icons/font-awesome/svgs/solid/circle-minus.svg +1 -0
  1433. package/dist/content/icons/font-awesome/svgs/solid/circle-nodes.svg +1 -0
  1434. package/dist/content/icons/font-awesome/svgs/solid/circle-notch.svg +1 -0
  1435. package/dist/content/icons/font-awesome/svgs/solid/circle-pause.svg +1 -0
  1436. package/dist/content/icons/font-awesome/svgs/solid/circle-play.svg +1 -0
  1437. package/dist/content/icons/font-awesome/svgs/solid/circle-plus.svg +1 -0
  1438. package/dist/content/icons/font-awesome/svgs/solid/circle-question.svg +1 -0
  1439. package/dist/content/icons/font-awesome/svgs/solid/circle-radiation.svg +1 -0
  1440. package/dist/content/icons/font-awesome/svgs/solid/circle-right.svg +1 -0
  1441. package/dist/content/icons/font-awesome/svgs/solid/circle-stop.svg +1 -0
  1442. package/dist/content/icons/font-awesome/svgs/solid/circle-up.svg +1 -0
  1443. package/dist/content/icons/font-awesome/svgs/solid/circle-user.svg +1 -0
  1444. package/dist/content/icons/font-awesome/svgs/solid/circle-xmark.svg +1 -0
  1445. package/dist/content/icons/font-awesome/svgs/solid/circle.svg +1 -0
  1446. package/dist/content/icons/font-awesome/svgs/solid/city.svg +1 -0
  1447. package/dist/content/icons/font-awesome/svgs/solid/clapperboard.svg +1 -0
  1448. package/dist/content/icons/font-awesome/svgs/solid/clipboard-check.svg +1 -0
  1449. package/dist/content/icons/font-awesome/svgs/solid/clipboard-list.svg +1 -0
  1450. package/dist/content/icons/font-awesome/svgs/solid/clipboard-question.svg +1 -0
  1451. package/dist/content/icons/font-awesome/svgs/solid/clipboard-user.svg +1 -0
  1452. package/dist/content/icons/font-awesome/svgs/solid/clipboard.svg +1 -0
  1453. package/dist/content/icons/font-awesome/svgs/solid/clock-rotate-left.svg +1 -0
  1454. package/dist/content/icons/font-awesome/svgs/solid/clock.svg +1 -0
  1455. package/dist/content/icons/font-awesome/svgs/solid/clone.svg +1 -0
  1456. package/dist/content/icons/font-awesome/svgs/solid/closed-captioning.svg +1 -0
  1457. package/dist/content/icons/font-awesome/svgs/solid/cloud-arrow-down.svg +1 -0
  1458. package/dist/content/icons/font-awesome/svgs/solid/cloud-arrow-up.svg +1 -0
  1459. package/dist/content/icons/font-awesome/svgs/solid/cloud-bolt.svg +1 -0
  1460. package/dist/content/icons/font-awesome/svgs/solid/cloud-meatball.svg +1 -0
  1461. package/dist/content/icons/font-awesome/svgs/solid/cloud-moon-rain.svg +1 -0
  1462. package/dist/content/icons/font-awesome/svgs/solid/cloud-moon.svg +1 -0
  1463. package/dist/content/icons/font-awesome/svgs/solid/cloud-rain.svg +1 -0
  1464. package/dist/content/icons/font-awesome/svgs/solid/cloud-showers-heavy.svg +1 -0
  1465. package/dist/content/icons/font-awesome/svgs/solid/cloud-showers-water.svg +1 -0
  1466. package/dist/content/icons/font-awesome/svgs/solid/cloud-sun-rain.svg +1 -0
  1467. package/dist/content/icons/font-awesome/svgs/solid/cloud-sun.svg +1 -0
  1468. package/dist/content/icons/font-awesome/svgs/solid/cloud.svg +1 -0
  1469. package/dist/content/icons/font-awesome/svgs/solid/clover.svg +1 -0
  1470. package/dist/content/icons/font-awesome/svgs/solid/code-branch.svg +1 -0
  1471. package/dist/content/icons/font-awesome/svgs/solid/code-commit.svg +1 -0
  1472. package/dist/content/icons/font-awesome/svgs/solid/code-compare.svg +1 -0
  1473. package/dist/content/icons/font-awesome/svgs/solid/code-fork.svg +1 -0
  1474. package/dist/content/icons/font-awesome/svgs/solid/code-merge.svg +1 -0
  1475. package/dist/content/icons/font-awesome/svgs/solid/code-pull-request.svg +1 -0
  1476. package/dist/content/icons/font-awesome/svgs/solid/code.svg +1 -0
  1477. package/dist/content/icons/font-awesome/svgs/solid/coins.svg +1 -0
  1478. package/dist/content/icons/font-awesome/svgs/solid/colon-sign.svg +1 -0
  1479. package/dist/content/icons/font-awesome/svgs/solid/comment-dollar.svg +1 -0
  1480. package/dist/content/icons/font-awesome/svgs/solid/comment-dots.svg +1 -0
  1481. package/dist/content/icons/font-awesome/svgs/solid/comment-medical.svg +1 -0
  1482. package/dist/content/icons/font-awesome/svgs/solid/comment-slash.svg +1 -0
  1483. package/dist/content/icons/font-awesome/svgs/solid/comment-sms.svg +1 -0
  1484. package/dist/content/icons/font-awesome/svgs/solid/comment.svg +1 -0
  1485. package/dist/content/icons/font-awesome/svgs/solid/comments-dollar.svg +1 -0
  1486. package/dist/content/icons/font-awesome/svgs/solid/comments.svg +1 -0
  1487. package/dist/content/icons/font-awesome/svgs/solid/compact-disc.svg +1 -0
  1488. package/dist/content/icons/font-awesome/svgs/solid/compass-drafting.svg +1 -0
  1489. package/dist/content/icons/font-awesome/svgs/solid/compass.svg +1 -0
  1490. package/dist/content/icons/font-awesome/svgs/solid/compress.svg +1 -0
  1491. package/dist/content/icons/font-awesome/svgs/solid/computer-mouse.svg +1 -0
  1492. package/dist/content/icons/font-awesome/svgs/solid/computer.svg +1 -0
  1493. package/dist/content/icons/font-awesome/svgs/solid/cookie-bite.svg +1 -0
  1494. package/dist/content/icons/font-awesome/svgs/solid/cookie.svg +1 -0
  1495. package/dist/content/icons/font-awesome/svgs/solid/copy.svg +1 -0
  1496. package/dist/content/icons/font-awesome/svgs/solid/copyright.svg +1 -0
  1497. package/dist/content/icons/font-awesome/svgs/solid/couch.svg +1 -0
  1498. package/dist/content/icons/font-awesome/svgs/solid/cow.svg +1 -0
  1499. package/dist/content/icons/font-awesome/svgs/solid/credit-card.svg +1 -0
  1500. package/dist/content/icons/font-awesome/svgs/solid/crop-simple.svg +1 -0
  1501. package/dist/content/icons/font-awesome/svgs/solid/crop.svg +1 -0
  1502. package/dist/content/icons/font-awesome/svgs/solid/cross.svg +1 -0
  1503. package/dist/content/icons/font-awesome/svgs/solid/crosshairs.svg +1 -0
  1504. package/dist/content/icons/font-awesome/svgs/solid/crow.svg +1 -0
  1505. package/dist/content/icons/font-awesome/svgs/solid/crown.svg +1 -0
  1506. package/dist/content/icons/font-awesome/svgs/solid/crutch.svg +1 -0
  1507. package/dist/content/icons/font-awesome/svgs/solid/cruzeiro-sign.svg +1 -0
  1508. package/dist/content/icons/font-awesome/svgs/solid/cube.svg +1 -0
  1509. package/dist/content/icons/font-awesome/svgs/solid/cubes-stacked.svg +1 -0
  1510. package/dist/content/icons/font-awesome/svgs/solid/cubes.svg +1 -0
  1511. package/dist/content/icons/font-awesome/svgs/solid/d.svg +1 -0
  1512. package/dist/content/icons/font-awesome/svgs/solid/database.svg +1 -0
  1513. package/dist/content/icons/font-awesome/svgs/solid/delete-left.svg +1 -0
  1514. package/dist/content/icons/font-awesome/svgs/solid/democrat.svg +1 -0
  1515. package/dist/content/icons/font-awesome/svgs/solid/desktop.svg +1 -0
  1516. package/dist/content/icons/font-awesome/svgs/solid/dharmachakra.svg +1 -0
  1517. package/dist/content/icons/font-awesome/svgs/solid/diagram-next.svg +1 -0
  1518. package/dist/content/icons/font-awesome/svgs/solid/diagram-predecessor.svg +1 -0
  1519. package/dist/content/icons/font-awesome/svgs/solid/diagram-project.svg +1 -0
  1520. package/dist/content/icons/font-awesome/svgs/solid/diagram-successor.svg +1 -0
  1521. package/dist/content/icons/font-awesome/svgs/solid/diamond-turn-right.svg +1 -0
  1522. package/dist/content/icons/font-awesome/svgs/solid/diamond.svg +1 -0
  1523. package/dist/content/icons/font-awesome/svgs/solid/dice-d20.svg +1 -0
  1524. package/dist/content/icons/font-awesome/svgs/solid/dice-d6.svg +1 -0
  1525. package/dist/content/icons/font-awesome/svgs/solid/dice-five.svg +1 -0
  1526. package/dist/content/icons/font-awesome/svgs/solid/dice-four.svg +1 -0
  1527. package/dist/content/icons/font-awesome/svgs/solid/dice-one.svg +1 -0
  1528. package/dist/content/icons/font-awesome/svgs/solid/dice-six.svg +1 -0
  1529. package/dist/content/icons/font-awesome/svgs/solid/dice-three.svg +1 -0
  1530. package/dist/content/icons/font-awesome/svgs/solid/dice-two.svg +1 -0
  1531. package/dist/content/icons/font-awesome/svgs/solid/dice.svg +1 -0
  1532. package/dist/content/icons/font-awesome/svgs/solid/disease.svg +1 -0
  1533. package/dist/content/icons/font-awesome/svgs/solid/display.svg +1 -0
  1534. package/dist/content/icons/font-awesome/svgs/solid/divide.svg +1 -0
  1535. package/dist/content/icons/font-awesome/svgs/solid/dna.svg +1 -0
  1536. package/dist/content/icons/font-awesome/svgs/solid/dog.svg +1 -0
  1537. package/dist/content/icons/font-awesome/svgs/solid/dollar-sign.svg +1 -0
  1538. package/dist/content/icons/font-awesome/svgs/solid/dolly.svg +1 -0
  1539. package/dist/content/icons/font-awesome/svgs/solid/dong-sign.svg +1 -0
  1540. package/dist/content/icons/font-awesome/svgs/solid/door-closed.svg +1 -0
  1541. package/dist/content/icons/font-awesome/svgs/solid/door-open.svg +1 -0
  1542. package/dist/content/icons/font-awesome/svgs/solid/dove.svg +1 -0
  1543. package/dist/content/icons/font-awesome/svgs/solid/down-left-and-up-right-to-center.svg +1 -0
  1544. package/dist/content/icons/font-awesome/svgs/solid/down-long.svg +1 -0
  1545. package/dist/content/icons/font-awesome/svgs/solid/download.svg +1 -0
  1546. package/dist/content/icons/font-awesome/svgs/solid/dragon.svg +1 -0
  1547. package/dist/content/icons/font-awesome/svgs/solid/draw-polygon.svg +1 -0
  1548. package/dist/content/icons/font-awesome/svgs/solid/droplet-slash.svg +1 -0
  1549. package/dist/content/icons/font-awesome/svgs/solid/droplet.svg +1 -0
  1550. package/dist/content/icons/font-awesome/svgs/solid/drum-steelpan.svg +1 -0
  1551. package/dist/content/icons/font-awesome/svgs/solid/drum.svg +1 -0
  1552. package/dist/content/icons/font-awesome/svgs/solid/drumstick-bite.svg +1 -0
  1553. package/dist/content/icons/font-awesome/svgs/solid/dumbbell.svg +1 -0
  1554. package/dist/content/icons/font-awesome/svgs/solid/dumpster-fire.svg +1 -0
  1555. package/dist/content/icons/font-awesome/svgs/solid/dumpster.svg +1 -0
  1556. package/dist/content/icons/font-awesome/svgs/solid/dungeon.svg +1 -0
  1557. package/dist/content/icons/font-awesome/svgs/solid/e.svg +1 -0
  1558. package/dist/content/icons/font-awesome/svgs/solid/ear-deaf.svg +1 -0
  1559. package/dist/content/icons/font-awesome/svgs/solid/ear-listen.svg +1 -0
  1560. package/dist/content/icons/font-awesome/svgs/solid/earth-africa.svg +1 -0
  1561. package/dist/content/icons/font-awesome/svgs/solid/earth-americas.svg +1 -0
  1562. package/dist/content/icons/font-awesome/svgs/solid/earth-asia.svg +1 -0
  1563. package/dist/content/icons/font-awesome/svgs/solid/earth-europe.svg +1 -0
  1564. package/dist/content/icons/font-awesome/svgs/solid/earth-oceania.svg +1 -0
  1565. package/dist/content/icons/font-awesome/svgs/solid/egg.svg +1 -0
  1566. package/dist/content/icons/font-awesome/svgs/solid/eject.svg +1 -0
  1567. package/dist/content/icons/font-awesome/svgs/solid/elevator.svg +1 -0
  1568. package/dist/content/icons/font-awesome/svgs/solid/ellipsis-vertical.svg +1 -0
  1569. package/dist/content/icons/font-awesome/svgs/solid/ellipsis.svg +1 -0
  1570. package/dist/content/icons/font-awesome/svgs/solid/envelope-circle-check.svg +1 -0
  1571. package/dist/content/icons/font-awesome/svgs/solid/envelope-open-text.svg +1 -0
  1572. package/dist/content/icons/font-awesome/svgs/solid/envelope-open.svg +1 -0
  1573. package/dist/content/icons/font-awesome/svgs/solid/envelope.svg +1 -0
  1574. package/dist/content/icons/font-awesome/svgs/solid/envelopes-bulk.svg +1 -0
  1575. package/dist/content/icons/font-awesome/svgs/solid/equals.svg +1 -0
  1576. package/dist/content/icons/font-awesome/svgs/solid/eraser.svg +1 -0
  1577. package/dist/content/icons/font-awesome/svgs/solid/ethernet.svg +1 -0
  1578. package/dist/content/icons/font-awesome/svgs/solid/euro-sign.svg +1 -0
  1579. package/dist/content/icons/font-awesome/svgs/solid/exclamation.svg +1 -0
  1580. package/dist/content/icons/font-awesome/svgs/solid/expand.svg +1 -0
  1581. package/dist/content/icons/font-awesome/svgs/solid/explosion.svg +1 -0
  1582. package/dist/content/icons/font-awesome/svgs/solid/eye-dropper.svg +1 -0
  1583. package/dist/content/icons/font-awesome/svgs/solid/eye-low-vision.svg +1 -0
  1584. package/dist/content/icons/font-awesome/svgs/solid/eye-slash.svg +1 -0
  1585. package/dist/content/icons/font-awesome/svgs/solid/eye.svg +1 -0
  1586. package/dist/content/icons/font-awesome/svgs/solid/f.svg +1 -0
  1587. package/dist/content/icons/font-awesome/svgs/solid/face-angry.svg +1 -0
  1588. package/dist/content/icons/font-awesome/svgs/solid/face-dizzy.svg +1 -0
  1589. package/dist/content/icons/font-awesome/svgs/solid/face-flushed.svg +1 -0
  1590. package/dist/content/icons/font-awesome/svgs/solid/face-frown-open.svg +1 -0
  1591. package/dist/content/icons/font-awesome/svgs/solid/face-frown.svg +1 -0
  1592. package/dist/content/icons/font-awesome/svgs/solid/face-grimace.svg +1 -0
  1593. package/dist/content/icons/font-awesome/svgs/solid/face-grin-beam-sweat.svg +1 -0
  1594. package/dist/content/icons/font-awesome/svgs/solid/face-grin-beam.svg +1 -0
  1595. package/dist/content/icons/font-awesome/svgs/solid/face-grin-hearts.svg +1 -0
  1596. package/dist/content/icons/font-awesome/svgs/solid/face-grin-squint-tears.svg +1 -0
  1597. package/dist/content/icons/font-awesome/svgs/solid/face-grin-squint.svg +1 -0
  1598. package/dist/content/icons/font-awesome/svgs/solid/face-grin-stars.svg +1 -0
  1599. package/dist/content/icons/font-awesome/svgs/solid/face-grin-tears.svg +1 -0
  1600. package/dist/content/icons/font-awesome/svgs/solid/face-grin-tongue-squint.svg +1 -0
  1601. package/dist/content/icons/font-awesome/svgs/solid/face-grin-tongue-wink.svg +1 -0
  1602. package/dist/content/icons/font-awesome/svgs/solid/face-grin-tongue.svg +1 -0
  1603. package/dist/content/icons/font-awesome/svgs/solid/face-grin-wide.svg +1 -0
  1604. package/dist/content/icons/font-awesome/svgs/solid/face-grin-wink.svg +1 -0
  1605. package/dist/content/icons/font-awesome/svgs/solid/face-grin.svg +1 -0
  1606. package/dist/content/icons/font-awesome/svgs/solid/face-kiss-beam.svg +1 -0
  1607. package/dist/content/icons/font-awesome/svgs/solid/face-kiss-wink-heart.svg +1 -0
  1608. package/dist/content/icons/font-awesome/svgs/solid/face-kiss.svg +1 -0
  1609. package/dist/content/icons/font-awesome/svgs/solid/face-laugh-beam.svg +1 -0
  1610. package/dist/content/icons/font-awesome/svgs/solid/face-laugh-squint.svg +1 -0
  1611. package/dist/content/icons/font-awesome/svgs/solid/face-laugh-wink.svg +1 -0
  1612. package/dist/content/icons/font-awesome/svgs/solid/face-laugh.svg +1 -0
  1613. package/dist/content/icons/font-awesome/svgs/solid/face-meh-blank.svg +1 -0
  1614. package/dist/content/icons/font-awesome/svgs/solid/face-meh.svg +1 -0
  1615. package/dist/content/icons/font-awesome/svgs/solid/face-rolling-eyes.svg +1 -0
  1616. package/dist/content/icons/font-awesome/svgs/solid/face-sad-cry.svg +1 -0
  1617. package/dist/content/icons/font-awesome/svgs/solid/face-sad-tear.svg +1 -0
  1618. package/dist/content/icons/font-awesome/svgs/solid/face-smile-beam.svg +1 -0
  1619. package/dist/content/icons/font-awesome/svgs/solid/face-smile-wink.svg +1 -0
  1620. package/dist/content/icons/font-awesome/svgs/solid/face-smile.svg +1 -0
  1621. package/dist/content/icons/font-awesome/svgs/solid/face-surprise.svg +1 -0
  1622. package/dist/content/icons/font-awesome/svgs/solid/face-tired.svg +1 -0
  1623. package/dist/content/icons/font-awesome/svgs/solid/fan.svg +1 -0
  1624. package/dist/content/icons/font-awesome/svgs/solid/faucet-drip.svg +1 -0
  1625. package/dist/content/icons/font-awesome/svgs/solid/faucet.svg +1 -0
  1626. package/dist/content/icons/font-awesome/svgs/solid/fax.svg +1 -0
  1627. package/dist/content/icons/font-awesome/svgs/solid/feather-pointed.svg +1 -0
  1628. package/dist/content/icons/font-awesome/svgs/solid/feather.svg +1 -0
  1629. package/dist/content/icons/font-awesome/svgs/solid/ferry.svg +1 -0
  1630. package/dist/content/icons/font-awesome/svgs/solid/file-arrow-down.svg +1 -0
  1631. package/dist/content/icons/font-awesome/svgs/solid/file-arrow-up.svg +1 -0
  1632. package/dist/content/icons/font-awesome/svgs/solid/file-audio.svg +1 -0
  1633. package/dist/content/icons/font-awesome/svgs/solid/file-circle-check.svg +1 -0
  1634. package/dist/content/icons/font-awesome/svgs/solid/file-circle-exclamation.svg +1 -0
  1635. package/dist/content/icons/font-awesome/svgs/solid/file-circle-minus.svg +1 -0
  1636. package/dist/content/icons/font-awesome/svgs/solid/file-circle-plus.svg +1 -0
  1637. package/dist/content/icons/font-awesome/svgs/solid/file-circle-question.svg +1 -0
  1638. package/dist/content/icons/font-awesome/svgs/solid/file-circle-xmark.svg +1 -0
  1639. package/dist/content/icons/font-awesome/svgs/solid/file-code.svg +1 -0
  1640. package/dist/content/icons/font-awesome/svgs/solid/file-contract.svg +1 -0
  1641. package/dist/content/icons/font-awesome/svgs/solid/file-csv.svg +1 -0
  1642. package/dist/content/icons/font-awesome/svgs/solid/file-excel.svg +1 -0
  1643. package/dist/content/icons/font-awesome/svgs/solid/file-export.svg +1 -0
  1644. package/dist/content/icons/font-awesome/svgs/solid/file-image.svg +1 -0
  1645. package/dist/content/icons/font-awesome/svgs/solid/file-import.svg +1 -0
  1646. package/dist/content/icons/font-awesome/svgs/solid/file-invoice-dollar.svg +1 -0
  1647. package/dist/content/icons/font-awesome/svgs/solid/file-invoice.svg +1 -0
  1648. package/dist/content/icons/font-awesome/svgs/solid/file-lines.svg +1 -0
  1649. package/dist/content/icons/font-awesome/svgs/solid/file-medical.svg +1 -0
  1650. package/dist/content/icons/font-awesome/svgs/solid/file-pdf.svg +1 -0
  1651. package/dist/content/icons/font-awesome/svgs/solid/file-pen.svg +1 -0
  1652. package/dist/content/icons/font-awesome/svgs/solid/file-powerpoint.svg +1 -0
  1653. package/dist/content/icons/font-awesome/svgs/solid/file-prescription.svg +1 -0
  1654. package/dist/content/icons/font-awesome/svgs/solid/file-shield.svg +1 -0
  1655. package/dist/content/icons/font-awesome/svgs/solid/file-signature.svg +1 -0
  1656. package/dist/content/icons/font-awesome/svgs/solid/file-video.svg +1 -0
  1657. package/dist/content/icons/font-awesome/svgs/solid/file-waveform.svg +1 -0
  1658. package/dist/content/icons/font-awesome/svgs/solid/file-word.svg +1 -0
  1659. package/dist/content/icons/font-awesome/svgs/solid/file-zipper.svg +1 -0
  1660. package/dist/content/icons/font-awesome/svgs/solid/file.svg +1 -0
  1661. package/dist/content/icons/font-awesome/svgs/solid/fill-drip.svg +1 -0
  1662. package/dist/content/icons/font-awesome/svgs/solid/fill.svg +1 -0
  1663. package/dist/content/icons/font-awesome/svgs/solid/film.svg +1 -0
  1664. package/dist/content/icons/font-awesome/svgs/solid/filter-circle-dollar.svg +1 -0
  1665. package/dist/content/icons/font-awesome/svgs/solid/filter-circle-xmark.svg +1 -0
  1666. package/dist/content/icons/font-awesome/svgs/solid/filter.svg +1 -0
  1667. package/dist/content/icons/font-awesome/svgs/solid/fingerprint.svg +1 -0
  1668. package/dist/content/icons/font-awesome/svgs/solid/fire-burner.svg +1 -0
  1669. package/dist/content/icons/font-awesome/svgs/solid/fire-extinguisher.svg +1 -0
  1670. package/dist/content/icons/font-awesome/svgs/solid/fire-flame-curved.svg +1 -0
  1671. package/dist/content/icons/font-awesome/svgs/solid/fire-flame-simple.svg +1 -0
  1672. package/dist/content/icons/font-awesome/svgs/solid/fire.svg +1 -0
  1673. package/dist/content/icons/font-awesome/svgs/solid/fish-fins.svg +1 -0
  1674. package/dist/content/icons/font-awesome/svgs/solid/fish.svg +1 -0
  1675. package/dist/content/icons/font-awesome/svgs/solid/flag-checkered.svg +1 -0
  1676. package/dist/content/icons/font-awesome/svgs/solid/flag-usa.svg +1 -0
  1677. package/dist/content/icons/font-awesome/svgs/solid/flag.svg +1 -0
  1678. package/dist/content/icons/font-awesome/svgs/solid/flask-vial.svg +1 -0
  1679. package/dist/content/icons/font-awesome/svgs/solid/flask.svg +1 -0
  1680. package/dist/content/icons/font-awesome/svgs/solid/floppy-disk.svg +1 -0
  1681. package/dist/content/icons/font-awesome/svgs/solid/florin-sign.svg +1 -0
  1682. package/dist/content/icons/font-awesome/svgs/solid/folder-closed.svg +1 -0
  1683. package/dist/content/icons/font-awesome/svgs/solid/folder-minus.svg +1 -0
  1684. package/dist/content/icons/font-awesome/svgs/solid/folder-open.svg +1 -0
  1685. package/dist/content/icons/font-awesome/svgs/solid/folder-plus.svg +1 -0
  1686. package/dist/content/icons/font-awesome/svgs/solid/folder-tree.svg +1 -0
  1687. package/dist/content/icons/font-awesome/svgs/solid/folder.svg +1 -0
  1688. package/dist/content/icons/font-awesome/svgs/solid/font-awesome.svg +1 -0
  1689. package/dist/content/icons/font-awesome/svgs/solid/font.svg +1 -0
  1690. package/dist/content/icons/font-awesome/svgs/solid/football.svg +1 -0
  1691. package/dist/content/icons/font-awesome/svgs/solid/forward-fast.svg +1 -0
  1692. package/dist/content/icons/font-awesome/svgs/solid/forward-step.svg +1 -0
  1693. package/dist/content/icons/font-awesome/svgs/solid/forward.svg +1 -0
  1694. package/dist/content/icons/font-awesome/svgs/solid/franc-sign.svg +1 -0
  1695. package/dist/content/icons/font-awesome/svgs/solid/frog.svg +1 -0
  1696. package/dist/content/icons/font-awesome/svgs/solid/futbol.svg +1 -0
  1697. package/dist/content/icons/font-awesome/svgs/solid/g.svg +1 -0
  1698. package/dist/content/icons/font-awesome/svgs/solid/gamepad.svg +1 -0
  1699. package/dist/content/icons/font-awesome/svgs/solid/gas-pump.svg +1 -0
  1700. package/dist/content/icons/font-awesome/svgs/solid/gauge-high.svg +1 -0
  1701. package/dist/content/icons/font-awesome/svgs/solid/gauge-simple-high.svg +1 -0
  1702. package/dist/content/icons/font-awesome/svgs/solid/gauge-simple.svg +1 -0
  1703. package/dist/content/icons/font-awesome/svgs/solid/gauge.svg +1 -0
  1704. package/dist/content/icons/font-awesome/svgs/solid/gavel.svg +1 -0
  1705. package/dist/content/icons/font-awesome/svgs/solid/gear.svg +1 -0
  1706. package/dist/content/icons/font-awesome/svgs/solid/gears.svg +1 -0
  1707. package/dist/content/icons/font-awesome/svgs/solid/gem.svg +1 -0
  1708. package/dist/content/icons/font-awesome/svgs/solid/genderless.svg +1 -0
  1709. package/dist/content/icons/font-awesome/svgs/solid/ghost.svg +1 -0
  1710. package/dist/content/icons/font-awesome/svgs/solid/gift.svg +1 -0
  1711. package/dist/content/icons/font-awesome/svgs/solid/gifts.svg +1 -0
  1712. package/dist/content/icons/font-awesome/svgs/solid/glass-water-droplet.svg +1 -0
  1713. package/dist/content/icons/font-awesome/svgs/solid/glass-water.svg +1 -0
  1714. package/dist/content/icons/font-awesome/svgs/solid/glasses.svg +1 -0
  1715. package/dist/content/icons/font-awesome/svgs/solid/globe.svg +1 -0
  1716. package/dist/content/icons/font-awesome/svgs/solid/golf-ball-tee.svg +1 -0
  1717. package/dist/content/icons/font-awesome/svgs/solid/gopuram.svg +1 -0
  1718. package/dist/content/icons/font-awesome/svgs/solid/graduation-cap.svg +1 -0
  1719. package/dist/content/icons/font-awesome/svgs/solid/greater-than-equal.svg +1 -0
  1720. package/dist/content/icons/font-awesome/svgs/solid/greater-than.svg +1 -0
  1721. package/dist/content/icons/font-awesome/svgs/solid/grip-lines-vertical.svg +1 -0
  1722. package/dist/content/icons/font-awesome/svgs/solid/grip-lines.svg +1 -0
  1723. package/dist/content/icons/font-awesome/svgs/solid/grip-vertical.svg +1 -0
  1724. package/dist/content/icons/font-awesome/svgs/solid/grip.svg +1 -0
  1725. package/dist/content/icons/font-awesome/svgs/solid/group-arrows-rotate.svg +1 -0
  1726. package/dist/content/icons/font-awesome/svgs/solid/guarani-sign.svg +1 -0
  1727. package/dist/content/icons/font-awesome/svgs/solid/guitar.svg +1 -0
  1728. package/dist/content/icons/font-awesome/svgs/solid/gun.svg +1 -0
  1729. package/dist/content/icons/font-awesome/svgs/solid/h.svg +1 -0
  1730. package/dist/content/icons/font-awesome/svgs/solid/hammer.svg +1 -0
  1731. package/dist/content/icons/font-awesome/svgs/solid/hamsa.svg +1 -0
  1732. package/dist/content/icons/font-awesome/svgs/solid/hand-back-fist.svg +1 -0
  1733. package/dist/content/icons/font-awesome/svgs/solid/hand-dots.svg +1 -0
  1734. package/dist/content/icons/font-awesome/svgs/solid/hand-fist.svg +1 -0
  1735. package/dist/content/icons/font-awesome/svgs/solid/hand-holding-dollar.svg +1 -0
  1736. package/dist/content/icons/font-awesome/svgs/solid/hand-holding-droplet.svg +1 -0
  1737. package/dist/content/icons/font-awesome/svgs/solid/hand-holding-hand.svg +1 -0
  1738. package/dist/content/icons/font-awesome/svgs/solid/hand-holding-heart.svg +1 -0
  1739. package/dist/content/icons/font-awesome/svgs/solid/hand-holding-medical.svg +1 -0
  1740. package/dist/content/icons/font-awesome/svgs/solid/hand-holding.svg +1 -0
  1741. package/dist/content/icons/font-awesome/svgs/solid/hand-lizard.svg +1 -0
  1742. package/dist/content/icons/font-awesome/svgs/solid/hand-middle-finger.svg +1 -0
  1743. package/dist/content/icons/font-awesome/svgs/solid/hand-peace.svg +1 -0
  1744. package/dist/content/icons/font-awesome/svgs/solid/hand-point-down.svg +1 -0
  1745. package/dist/content/icons/font-awesome/svgs/solid/hand-point-left.svg +1 -0
  1746. package/dist/content/icons/font-awesome/svgs/solid/hand-point-right.svg +1 -0
  1747. package/dist/content/icons/font-awesome/svgs/solid/hand-point-up.svg +1 -0
  1748. package/dist/content/icons/font-awesome/svgs/solid/hand-pointer.svg +1 -0
  1749. package/dist/content/icons/font-awesome/svgs/solid/hand-scissors.svg +1 -0
  1750. package/dist/content/icons/font-awesome/svgs/solid/hand-sparkles.svg +1 -0
  1751. package/dist/content/icons/font-awesome/svgs/solid/hand-spock.svg +1 -0
  1752. package/dist/content/icons/font-awesome/svgs/solid/hand.svg +1 -0
  1753. package/dist/content/icons/font-awesome/svgs/solid/handcuffs.svg +1 -0
  1754. package/dist/content/icons/font-awesome/svgs/solid/hands-asl-interpreting.svg +1 -0
  1755. package/dist/content/icons/font-awesome/svgs/solid/hands-bound.svg +1 -0
  1756. package/dist/content/icons/font-awesome/svgs/solid/hands-bubbles.svg +1 -0
  1757. package/dist/content/icons/font-awesome/svgs/solid/hands-clapping.svg +1 -0
  1758. package/dist/content/icons/font-awesome/svgs/solid/hands-holding-child.svg +1 -0
  1759. package/dist/content/icons/font-awesome/svgs/solid/hands-holding-circle.svg +1 -0
  1760. package/dist/content/icons/font-awesome/svgs/solid/hands-holding.svg +1 -0
  1761. package/dist/content/icons/font-awesome/svgs/solid/hands-praying.svg +1 -0
  1762. package/dist/content/icons/font-awesome/svgs/solid/hands.svg +1 -0
  1763. package/dist/content/icons/font-awesome/svgs/solid/handshake-angle.svg +1 -0
  1764. package/dist/content/icons/font-awesome/svgs/solid/handshake-simple-slash.svg +1 -0
  1765. package/dist/content/icons/font-awesome/svgs/solid/handshake-simple.svg +1 -0
  1766. package/dist/content/icons/font-awesome/svgs/solid/handshake-slash.svg +1 -0
  1767. package/dist/content/icons/font-awesome/svgs/solid/handshake.svg +1 -0
  1768. package/dist/content/icons/font-awesome/svgs/solid/hanukiah.svg +1 -0
  1769. package/dist/content/icons/font-awesome/svgs/solid/hard-drive.svg +1 -0
  1770. package/dist/content/icons/font-awesome/svgs/solid/hashtag.svg +1 -0
  1771. package/dist/content/icons/font-awesome/svgs/solid/hat-cowboy-side.svg +1 -0
  1772. package/dist/content/icons/font-awesome/svgs/solid/hat-cowboy.svg +1 -0
  1773. package/dist/content/icons/font-awesome/svgs/solid/hat-wizard.svg +1 -0
  1774. package/dist/content/icons/font-awesome/svgs/solid/head-side-cough-slash.svg +1 -0
  1775. package/dist/content/icons/font-awesome/svgs/solid/head-side-cough.svg +1 -0
  1776. package/dist/content/icons/font-awesome/svgs/solid/head-side-mask.svg +1 -0
  1777. package/dist/content/icons/font-awesome/svgs/solid/head-side-virus.svg +1 -0
  1778. package/dist/content/icons/font-awesome/svgs/solid/heading.svg +1 -0
  1779. package/dist/content/icons/font-awesome/svgs/solid/headphones-simple.svg +1 -0
  1780. package/dist/content/icons/font-awesome/svgs/solid/headphones.svg +1 -0
  1781. package/dist/content/icons/font-awesome/svgs/solid/headset.svg +1 -0
  1782. package/dist/content/icons/font-awesome/svgs/solid/heart-circle-bolt.svg +1 -0
  1783. package/dist/content/icons/font-awesome/svgs/solid/heart-circle-check.svg +1 -0
  1784. package/dist/content/icons/font-awesome/svgs/solid/heart-circle-exclamation.svg +1 -0
  1785. package/dist/content/icons/font-awesome/svgs/solid/heart-circle-minus.svg +1 -0
  1786. package/dist/content/icons/font-awesome/svgs/solid/heart-circle-plus.svg +1 -0
  1787. package/dist/content/icons/font-awesome/svgs/solid/heart-circle-xmark.svg +1 -0
  1788. package/dist/content/icons/font-awesome/svgs/solid/heart-crack.svg +1 -0
  1789. package/dist/content/icons/font-awesome/svgs/solid/heart-pulse.svg +1 -0
  1790. package/dist/content/icons/font-awesome/svgs/solid/heart.svg +1 -0
  1791. package/dist/content/icons/font-awesome/svgs/solid/helicopter-symbol.svg +1 -0
  1792. package/dist/content/icons/font-awesome/svgs/solid/helicopter.svg +1 -0
  1793. package/dist/content/icons/font-awesome/svgs/solid/helmet-safety.svg +1 -0
  1794. package/dist/content/icons/font-awesome/svgs/solid/helmet-un.svg +1 -0
  1795. package/dist/content/icons/font-awesome/svgs/solid/highlighter.svg +1 -0
  1796. package/dist/content/icons/font-awesome/svgs/solid/hill-avalanche.svg +1 -0
  1797. package/dist/content/icons/font-awesome/svgs/solid/hill-rockslide.svg +1 -0
  1798. package/dist/content/icons/font-awesome/svgs/solid/hippo.svg +1 -0
  1799. package/dist/content/icons/font-awesome/svgs/solid/hockey-puck.svg +1 -0
  1800. package/dist/content/icons/font-awesome/svgs/solid/holly-berry.svg +1 -0
  1801. package/dist/content/icons/font-awesome/svgs/solid/horse-head.svg +1 -0
  1802. package/dist/content/icons/font-awesome/svgs/solid/horse.svg +1 -0
  1803. package/dist/content/icons/font-awesome/svgs/solid/hospital-user.svg +1 -0
  1804. package/dist/content/icons/font-awesome/svgs/solid/hospital.svg +1 -0
  1805. package/dist/content/icons/font-awesome/svgs/solid/hot-tub-person.svg +1 -0
  1806. package/dist/content/icons/font-awesome/svgs/solid/hotdog.svg +1 -0
  1807. package/dist/content/icons/font-awesome/svgs/solid/hotel.svg +1 -0
  1808. package/dist/content/icons/font-awesome/svgs/solid/hourglass-end.svg +1 -0
  1809. package/dist/content/icons/font-awesome/svgs/solid/hourglass-half.svg +1 -0
  1810. package/dist/content/icons/font-awesome/svgs/solid/hourglass-start.svg +1 -0
  1811. package/dist/content/icons/font-awesome/svgs/solid/hourglass.svg +1 -0
  1812. package/dist/content/icons/font-awesome/svgs/solid/house-chimney-crack.svg +1 -0
  1813. package/dist/content/icons/font-awesome/svgs/solid/house-chimney-medical.svg +1 -0
  1814. package/dist/content/icons/font-awesome/svgs/solid/house-chimney-user.svg +1 -0
  1815. package/dist/content/icons/font-awesome/svgs/solid/house-chimney-window.svg +1 -0
  1816. package/dist/content/icons/font-awesome/svgs/solid/house-chimney.svg +1 -0
  1817. package/dist/content/icons/font-awesome/svgs/solid/house-circle-check.svg +1 -0
  1818. package/dist/content/icons/font-awesome/svgs/solid/house-circle-exclamation.svg +1 -0
  1819. package/dist/content/icons/font-awesome/svgs/solid/house-circle-xmark.svg +1 -0
  1820. package/dist/content/icons/font-awesome/svgs/solid/house-crack.svg +1 -0
  1821. package/dist/content/icons/font-awesome/svgs/solid/house-fire.svg +1 -0
  1822. package/dist/content/icons/font-awesome/svgs/solid/house-flag.svg +1 -0
  1823. package/dist/content/icons/font-awesome/svgs/solid/house-flood-water-circle-arrow-right.svg +1 -0
  1824. package/dist/content/icons/font-awesome/svgs/solid/house-flood-water.svg +1 -0
  1825. package/dist/content/icons/font-awesome/svgs/solid/house-laptop.svg +1 -0
  1826. package/dist/content/icons/font-awesome/svgs/solid/house-lock.svg +1 -0
  1827. package/dist/content/icons/font-awesome/svgs/solid/house-medical-circle-check.svg +1 -0
  1828. package/dist/content/icons/font-awesome/svgs/solid/house-medical-circle-exclamation.svg +1 -0
  1829. package/dist/content/icons/font-awesome/svgs/solid/house-medical-circle-xmark.svg +1 -0
  1830. package/dist/content/icons/font-awesome/svgs/solid/house-medical-flag.svg +1 -0
  1831. package/dist/content/icons/font-awesome/svgs/solid/house-medical.svg +1 -0
  1832. package/dist/content/icons/font-awesome/svgs/solid/house-signal.svg +1 -0
  1833. package/dist/content/icons/font-awesome/svgs/solid/house-tsunami.svg +1 -0
  1834. package/dist/content/icons/font-awesome/svgs/solid/house-user.svg +1 -0
  1835. package/dist/content/icons/font-awesome/svgs/solid/house.svg +1 -0
  1836. package/dist/content/icons/font-awesome/svgs/solid/hryvnia-sign.svg +1 -0
  1837. package/dist/content/icons/font-awesome/svgs/solid/hurricane.svg +1 -0
  1838. package/dist/content/icons/font-awesome/svgs/solid/i-cursor.svg +1 -0
  1839. package/dist/content/icons/font-awesome/svgs/solid/i.svg +1 -0
  1840. package/dist/content/icons/font-awesome/svgs/solid/ice-cream.svg +1 -0
  1841. package/dist/content/icons/font-awesome/svgs/solid/icicles.svg +1 -0
  1842. package/dist/content/icons/font-awesome/svgs/solid/icons.svg +1 -0
  1843. package/dist/content/icons/font-awesome/svgs/solid/id-badge.svg +1 -0
  1844. package/dist/content/icons/font-awesome/svgs/solid/id-card-clip.svg +1 -0
  1845. package/dist/content/icons/font-awesome/svgs/solid/id-card.svg +1 -0
  1846. package/dist/content/icons/font-awesome/svgs/solid/igloo.svg +1 -0
  1847. package/dist/content/icons/font-awesome/svgs/solid/image-portrait.svg +1 -0
  1848. package/dist/content/icons/font-awesome/svgs/solid/image.svg +1 -0
  1849. package/dist/content/icons/font-awesome/svgs/solid/images.svg +1 -0
  1850. package/dist/content/icons/font-awesome/svgs/solid/inbox.svg +1 -0
  1851. package/dist/content/icons/font-awesome/svgs/solid/indent.svg +1 -0
  1852. package/dist/content/icons/font-awesome/svgs/solid/indian-rupee-sign.svg +1 -0
  1853. package/dist/content/icons/font-awesome/svgs/solid/industry.svg +1 -0
  1854. package/dist/content/icons/font-awesome/svgs/solid/infinity.svg +1 -0
  1855. package/dist/content/icons/font-awesome/svgs/solid/info.svg +1 -0
  1856. package/dist/content/icons/font-awesome/svgs/solid/italic.svg +1 -0
  1857. package/dist/content/icons/font-awesome/svgs/solid/j.svg +1 -0
  1858. package/dist/content/icons/font-awesome/svgs/solid/jar-wheat.svg +1 -0
  1859. package/dist/content/icons/font-awesome/svgs/solid/jar.svg +1 -0
  1860. package/dist/content/icons/font-awesome/svgs/solid/jedi.svg +1 -0
  1861. package/dist/content/icons/font-awesome/svgs/solid/jet-fighter-up.svg +1 -0
  1862. package/dist/content/icons/font-awesome/svgs/solid/jet-fighter.svg +1 -0
  1863. package/dist/content/icons/font-awesome/svgs/solid/joint.svg +1 -0
  1864. package/dist/content/icons/font-awesome/svgs/solid/jug-detergent.svg +1 -0
  1865. package/dist/content/icons/font-awesome/svgs/solid/k.svg +1 -0
  1866. package/dist/content/icons/font-awesome/svgs/solid/kaaba.svg +1 -0
  1867. package/dist/content/icons/font-awesome/svgs/solid/key.svg +1 -0
  1868. package/dist/content/icons/font-awesome/svgs/solid/keyboard.svg +1 -0
  1869. package/dist/content/icons/font-awesome/svgs/solid/khanda.svg +1 -0
  1870. package/dist/content/icons/font-awesome/svgs/solid/kip-sign.svg +1 -0
  1871. package/dist/content/icons/font-awesome/svgs/solid/kit-medical.svg +1 -0
  1872. package/dist/content/icons/font-awesome/svgs/solid/kitchen-set.svg +1 -0
  1873. package/dist/content/icons/font-awesome/svgs/solid/kiwi-bird.svg +1 -0
  1874. package/dist/content/icons/font-awesome/svgs/solid/l.svg +1 -0
  1875. package/dist/content/icons/font-awesome/svgs/solid/land-mine-on.svg +1 -0
  1876. package/dist/content/icons/font-awesome/svgs/solid/landmark-dome.svg +1 -0
  1877. package/dist/content/icons/font-awesome/svgs/solid/landmark-flag.svg +1 -0
  1878. package/dist/content/icons/font-awesome/svgs/solid/landmark.svg +1 -0
  1879. package/dist/content/icons/font-awesome/svgs/solid/language.svg +1 -0
  1880. package/dist/content/icons/font-awesome/svgs/solid/laptop-code.svg +1 -0
  1881. package/dist/content/icons/font-awesome/svgs/solid/laptop-file.svg +1 -0
  1882. package/dist/content/icons/font-awesome/svgs/solid/laptop-medical.svg +1 -0
  1883. package/dist/content/icons/font-awesome/svgs/solid/laptop.svg +1 -0
  1884. package/dist/content/icons/font-awesome/svgs/solid/lari-sign.svg +1 -0
  1885. package/dist/content/icons/font-awesome/svgs/solid/layer-group.svg +1 -0
  1886. package/dist/content/icons/font-awesome/svgs/solid/leaf.svg +1 -0
  1887. package/dist/content/icons/font-awesome/svgs/solid/left-long.svg +1 -0
  1888. package/dist/content/icons/font-awesome/svgs/solid/left-right.svg +1 -0
  1889. package/dist/content/icons/font-awesome/svgs/solid/lemon.svg +1 -0
  1890. package/dist/content/icons/font-awesome/svgs/solid/less-than-equal.svg +1 -0
  1891. package/dist/content/icons/font-awesome/svgs/solid/less-than.svg +1 -0
  1892. package/dist/content/icons/font-awesome/svgs/solid/life-ring.svg +1 -0
  1893. package/dist/content/icons/font-awesome/svgs/solid/lightbulb.svg +1 -0
  1894. package/dist/content/icons/font-awesome/svgs/solid/lines-leaning.svg +1 -0
  1895. package/dist/content/icons/font-awesome/svgs/solid/link-slash.svg +1 -0
  1896. package/dist/content/icons/font-awesome/svgs/solid/link.svg +1 -0
  1897. package/dist/content/icons/font-awesome/svgs/solid/lira-sign.svg +1 -0
  1898. package/dist/content/icons/font-awesome/svgs/solid/list-check.svg +1 -0
  1899. package/dist/content/icons/font-awesome/svgs/solid/list-ol.svg +1 -0
  1900. package/dist/content/icons/font-awesome/svgs/solid/list-ul.svg +1 -0
  1901. package/dist/content/icons/font-awesome/svgs/solid/list.svg +1 -0
  1902. package/dist/content/icons/font-awesome/svgs/solid/litecoin-sign.svg +1 -0
  1903. package/dist/content/icons/font-awesome/svgs/solid/location-arrow.svg +1 -0
  1904. package/dist/content/icons/font-awesome/svgs/solid/location-crosshairs.svg +1 -0
  1905. package/dist/content/icons/font-awesome/svgs/solid/location-dot.svg +1 -0
  1906. package/dist/content/icons/font-awesome/svgs/solid/location-pin-lock.svg +1 -0
  1907. package/dist/content/icons/font-awesome/svgs/solid/location-pin.svg +1 -0
  1908. package/dist/content/icons/font-awesome/svgs/solid/lock-open.svg +1 -0
  1909. package/dist/content/icons/font-awesome/svgs/solid/lock.svg +1 -0
  1910. package/dist/content/icons/font-awesome/svgs/solid/locust.svg +1 -0
  1911. package/dist/content/icons/font-awesome/svgs/solid/lungs-virus.svg +1 -0
  1912. package/dist/content/icons/font-awesome/svgs/solid/lungs.svg +1 -0
  1913. package/dist/content/icons/font-awesome/svgs/solid/m.svg +1 -0
  1914. package/dist/content/icons/font-awesome/svgs/solid/magnet.svg +1 -0
  1915. package/dist/content/icons/font-awesome/svgs/solid/magnifying-glass-arrow-right.svg +1 -0
  1916. package/dist/content/icons/font-awesome/svgs/solid/magnifying-glass-chart.svg +1 -0
  1917. package/dist/content/icons/font-awesome/svgs/solid/magnifying-glass-dollar.svg +1 -0
  1918. package/dist/content/icons/font-awesome/svgs/solid/magnifying-glass-location.svg +1 -0
  1919. package/dist/content/icons/font-awesome/svgs/solid/magnifying-glass-minus.svg +1 -0
  1920. package/dist/content/icons/font-awesome/svgs/solid/magnifying-glass-plus.svg +1 -0
  1921. package/dist/content/icons/font-awesome/svgs/solid/magnifying-glass.svg +1 -0
  1922. package/dist/content/icons/font-awesome/svgs/solid/manat-sign.svg +1 -0
  1923. package/dist/content/icons/font-awesome/svgs/solid/map-location-dot.svg +1 -0
  1924. package/dist/content/icons/font-awesome/svgs/solid/map-location.svg +1 -0
  1925. package/dist/content/icons/font-awesome/svgs/solid/map-pin.svg +1 -0
  1926. package/dist/content/icons/font-awesome/svgs/solid/map.svg +1 -0
  1927. package/dist/content/icons/font-awesome/svgs/solid/marker.svg +1 -0
  1928. package/dist/content/icons/font-awesome/svgs/solid/mars-and-venus-burst.svg +1 -0
  1929. package/dist/content/icons/font-awesome/svgs/solid/mars-and-venus.svg +1 -0
  1930. package/dist/content/icons/font-awesome/svgs/solid/mars-double.svg +1 -0
  1931. package/dist/content/icons/font-awesome/svgs/solid/mars-stroke-right.svg +1 -0
  1932. package/dist/content/icons/font-awesome/svgs/solid/mars-stroke-up.svg +1 -0
  1933. package/dist/content/icons/font-awesome/svgs/solid/mars-stroke.svg +1 -0
  1934. package/dist/content/icons/font-awesome/svgs/solid/mars.svg +1 -0
  1935. package/dist/content/icons/font-awesome/svgs/solid/martini-glass-citrus.svg +1 -0
  1936. package/dist/content/icons/font-awesome/svgs/solid/martini-glass-empty.svg +1 -0
  1937. package/dist/content/icons/font-awesome/svgs/solid/martini-glass.svg +1 -0
  1938. package/dist/content/icons/font-awesome/svgs/solid/mask-face.svg +1 -0
  1939. package/dist/content/icons/font-awesome/svgs/solid/mask-ventilator.svg +1 -0
  1940. package/dist/content/icons/font-awesome/svgs/solid/mask.svg +1 -0
  1941. package/dist/content/icons/font-awesome/svgs/solid/masks-theater.svg +1 -0
  1942. package/dist/content/icons/font-awesome/svgs/solid/mattress-pillow.svg +1 -0
  1943. package/dist/content/icons/font-awesome/svgs/solid/maximize.svg +1 -0
  1944. package/dist/content/icons/font-awesome/svgs/solid/medal.svg +1 -0
  1945. package/dist/content/icons/font-awesome/svgs/solid/memory.svg +1 -0
  1946. package/dist/content/icons/font-awesome/svgs/solid/menorah.svg +1 -0
  1947. package/dist/content/icons/font-awesome/svgs/solid/mercury.svg +1 -0
  1948. package/dist/content/icons/font-awesome/svgs/solid/message.svg +1 -0
  1949. package/dist/content/icons/font-awesome/svgs/solid/meteor.svg +1 -0
  1950. package/dist/content/icons/font-awesome/svgs/solid/microchip.svg +1 -0
  1951. package/dist/content/icons/font-awesome/svgs/solid/microphone-lines-slash.svg +1 -0
  1952. package/dist/content/icons/font-awesome/svgs/solid/microphone-lines.svg +1 -0
  1953. package/dist/content/icons/font-awesome/svgs/solid/microphone-slash.svg +1 -0
  1954. package/dist/content/icons/font-awesome/svgs/solid/microphone.svg +1 -0
  1955. package/dist/content/icons/font-awesome/svgs/solid/microscope.svg +1 -0
  1956. package/dist/content/icons/font-awesome/svgs/solid/mill-sign.svg +1 -0
  1957. package/dist/content/icons/font-awesome/svgs/solid/minimize.svg +1 -0
  1958. package/dist/content/icons/font-awesome/svgs/solid/minus.svg +1 -0
  1959. package/dist/content/icons/font-awesome/svgs/solid/mitten.svg +1 -0
  1960. package/dist/content/icons/font-awesome/svgs/solid/mobile-button.svg +1 -0
  1961. package/dist/content/icons/font-awesome/svgs/solid/mobile-retro.svg +1 -0
  1962. package/dist/content/icons/font-awesome/svgs/solid/mobile-screen-button.svg +1 -0
  1963. package/dist/content/icons/font-awesome/svgs/solid/mobile-screen.svg +1 -0
  1964. package/dist/content/icons/font-awesome/svgs/solid/mobile.svg +1 -0
  1965. package/dist/content/icons/font-awesome/svgs/solid/money-bill-1-wave.svg +1 -0
  1966. package/dist/content/icons/font-awesome/svgs/solid/money-bill-1.svg +1 -0
  1967. package/dist/content/icons/font-awesome/svgs/solid/money-bill-transfer.svg +1 -0
  1968. package/dist/content/icons/font-awesome/svgs/solid/money-bill-trend-up.svg +1 -0
  1969. package/dist/content/icons/font-awesome/svgs/solid/money-bill-wave.svg +1 -0
  1970. package/dist/content/icons/font-awesome/svgs/solid/money-bill-wheat.svg +1 -0
  1971. package/dist/content/icons/font-awesome/svgs/solid/money-bill.svg +1 -0
  1972. package/dist/content/icons/font-awesome/svgs/solid/money-bills.svg +1 -0
  1973. package/dist/content/icons/font-awesome/svgs/solid/money-check-dollar.svg +1 -0
  1974. package/dist/content/icons/font-awesome/svgs/solid/money-check.svg +1 -0
  1975. package/dist/content/icons/font-awesome/svgs/solid/monument.svg +1 -0
  1976. package/dist/content/icons/font-awesome/svgs/solid/moon.svg +1 -0
  1977. package/dist/content/icons/font-awesome/svgs/solid/mortar-pestle.svg +1 -0
  1978. package/dist/content/icons/font-awesome/svgs/solid/mosque.svg +1 -0
  1979. package/dist/content/icons/font-awesome/svgs/solid/mosquito-net.svg +1 -0
  1980. package/dist/content/icons/font-awesome/svgs/solid/mosquito.svg +1 -0
  1981. package/dist/content/icons/font-awesome/svgs/solid/motorcycle.svg +1 -0
  1982. package/dist/content/icons/font-awesome/svgs/solid/mound.svg +1 -0
  1983. package/dist/content/icons/font-awesome/svgs/solid/mountain-city.svg +1 -0
  1984. package/dist/content/icons/font-awesome/svgs/solid/mountain-sun.svg +1 -0
  1985. package/dist/content/icons/font-awesome/svgs/solid/mountain.svg +1 -0
  1986. package/dist/content/icons/font-awesome/svgs/solid/mug-hot.svg +1 -0
  1987. package/dist/content/icons/font-awesome/svgs/solid/mug-saucer.svg +1 -0
  1988. package/dist/content/icons/font-awesome/svgs/solid/music.svg +1 -0
  1989. package/dist/content/icons/font-awesome/svgs/solid/n.svg +1 -0
  1990. package/dist/content/icons/font-awesome/svgs/solid/naira-sign.svg +1 -0
  1991. package/dist/content/icons/font-awesome/svgs/solid/network-wired.svg +1 -0
  1992. package/dist/content/icons/font-awesome/svgs/solid/neuter.svg +1 -0
  1993. package/dist/content/icons/font-awesome/svgs/solid/newspaper.svg +1 -0
  1994. package/dist/content/icons/font-awesome/svgs/solid/not-equal.svg +1 -0
  1995. package/dist/content/icons/font-awesome/svgs/solid/notdef.svg +1 -0
  1996. package/dist/content/icons/font-awesome/svgs/solid/note-sticky.svg +1 -0
  1997. package/dist/content/icons/font-awesome/svgs/solid/notes-medical.svg +1 -0
  1998. package/dist/content/icons/font-awesome/svgs/solid/o.svg +1 -0
  1999. package/dist/content/icons/font-awesome/svgs/solid/object-group.svg +1 -0
  2000. package/dist/content/icons/font-awesome/svgs/solid/object-ungroup.svg +1 -0
  2001. package/dist/content/icons/font-awesome/svgs/solid/oil-can.svg +1 -0
  2002. package/dist/content/icons/font-awesome/svgs/solid/oil-well.svg +1 -0
  2003. package/dist/content/icons/font-awesome/svgs/solid/om.svg +1 -0
  2004. package/dist/content/icons/font-awesome/svgs/solid/otter.svg +1 -0
  2005. package/dist/content/icons/font-awesome/svgs/solid/outdent.svg +1 -0
  2006. package/dist/content/icons/font-awesome/svgs/solid/p.svg +1 -0
  2007. package/dist/content/icons/font-awesome/svgs/solid/pager.svg +1 -0
  2008. package/dist/content/icons/font-awesome/svgs/solid/paint-roller.svg +1 -0
  2009. package/dist/content/icons/font-awesome/svgs/solid/paintbrush.svg +1 -0
  2010. package/dist/content/icons/font-awesome/svgs/solid/palette.svg +1 -0
  2011. package/dist/content/icons/font-awesome/svgs/solid/pallet.svg +1 -0
  2012. package/dist/content/icons/font-awesome/svgs/solid/panorama.svg +1 -0
  2013. package/dist/content/icons/font-awesome/svgs/solid/paper-plane.svg +1 -0
  2014. package/dist/content/icons/font-awesome/svgs/solid/paperclip.svg +1 -0
  2015. package/dist/content/icons/font-awesome/svgs/solid/parachute-box.svg +1 -0
  2016. package/dist/content/icons/font-awesome/svgs/solid/paragraph.svg +1 -0
  2017. package/dist/content/icons/font-awesome/svgs/solid/passport.svg +1 -0
  2018. package/dist/content/icons/font-awesome/svgs/solid/paste.svg +1 -0
  2019. package/dist/content/icons/font-awesome/svgs/solid/pause.svg +1 -0
  2020. package/dist/content/icons/font-awesome/svgs/solid/paw.svg +1 -0
  2021. package/dist/content/icons/font-awesome/svgs/solid/peace.svg +1 -0
  2022. package/dist/content/icons/font-awesome/svgs/solid/pen-clip.svg +1 -0
  2023. package/dist/content/icons/font-awesome/svgs/solid/pen-fancy.svg +1 -0
  2024. package/dist/content/icons/font-awesome/svgs/solid/pen-nib.svg +1 -0
  2025. package/dist/content/icons/font-awesome/svgs/solid/pen-ruler.svg +1 -0
  2026. package/dist/content/icons/font-awesome/svgs/solid/pen-to-square.svg +1 -0
  2027. package/dist/content/icons/font-awesome/svgs/solid/pen.svg +1 -0
  2028. package/dist/content/icons/font-awesome/svgs/solid/pencil.svg +1 -0
  2029. package/dist/content/icons/font-awesome/svgs/solid/people-arrows.svg +1 -0
  2030. package/dist/content/icons/font-awesome/svgs/solid/people-carry-box.svg +1 -0
  2031. package/dist/content/icons/font-awesome/svgs/solid/people-group.svg +1 -0
  2032. package/dist/content/icons/font-awesome/svgs/solid/people-line.svg +1 -0
  2033. package/dist/content/icons/font-awesome/svgs/solid/people-pulling.svg +1 -0
  2034. package/dist/content/icons/font-awesome/svgs/solid/people-robbery.svg +1 -0
  2035. package/dist/content/icons/font-awesome/svgs/solid/people-roof.svg +1 -0
  2036. package/dist/content/icons/font-awesome/svgs/solid/pepper-hot.svg +1 -0
  2037. package/dist/content/icons/font-awesome/svgs/solid/percent.svg +1 -0
  2038. package/dist/content/icons/font-awesome/svgs/solid/person-arrow-down-to-line.svg +1 -0
  2039. package/dist/content/icons/font-awesome/svgs/solid/person-arrow-up-from-line.svg +1 -0
  2040. package/dist/content/icons/font-awesome/svgs/solid/person-biking.svg +1 -0
  2041. package/dist/content/icons/font-awesome/svgs/solid/person-booth.svg +1 -0
  2042. package/dist/content/icons/font-awesome/svgs/solid/person-breastfeeding.svg +1 -0
  2043. package/dist/content/icons/font-awesome/svgs/solid/person-burst.svg +1 -0
  2044. package/dist/content/icons/font-awesome/svgs/solid/person-cane.svg +1 -0
  2045. package/dist/content/icons/font-awesome/svgs/solid/person-chalkboard.svg +1 -0
  2046. package/dist/content/icons/font-awesome/svgs/solid/person-circle-check.svg +1 -0
  2047. package/dist/content/icons/font-awesome/svgs/solid/person-circle-exclamation.svg +1 -0
  2048. package/dist/content/icons/font-awesome/svgs/solid/person-circle-minus.svg +1 -0
  2049. package/dist/content/icons/font-awesome/svgs/solid/person-circle-plus.svg +1 -0
  2050. package/dist/content/icons/font-awesome/svgs/solid/person-circle-question.svg +1 -0
  2051. package/dist/content/icons/font-awesome/svgs/solid/person-circle-xmark.svg +1 -0
  2052. package/dist/content/icons/font-awesome/svgs/solid/person-digging.svg +1 -0
  2053. package/dist/content/icons/font-awesome/svgs/solid/person-dots-from-line.svg +1 -0
  2054. package/dist/content/icons/font-awesome/svgs/solid/person-dress-burst.svg +1 -0
  2055. package/dist/content/icons/font-awesome/svgs/solid/person-dress.svg +1 -0
  2056. package/dist/content/icons/font-awesome/svgs/solid/person-drowning.svg +1 -0
  2057. package/dist/content/icons/font-awesome/svgs/solid/person-falling-burst.svg +1 -0
  2058. package/dist/content/icons/font-awesome/svgs/solid/person-falling.svg +1 -0
  2059. package/dist/content/icons/font-awesome/svgs/solid/person-half-dress.svg +1 -0
  2060. package/dist/content/icons/font-awesome/svgs/solid/person-harassing.svg +1 -0
  2061. package/dist/content/icons/font-awesome/svgs/solid/person-hiking.svg +1 -0
  2062. package/dist/content/icons/font-awesome/svgs/solid/person-military-pointing.svg +1 -0
  2063. package/dist/content/icons/font-awesome/svgs/solid/person-military-rifle.svg +1 -0
  2064. package/dist/content/icons/font-awesome/svgs/solid/person-military-to-person.svg +1 -0
  2065. package/dist/content/icons/font-awesome/svgs/solid/person-praying.svg +1 -0
  2066. package/dist/content/icons/font-awesome/svgs/solid/person-pregnant.svg +1 -0
  2067. package/dist/content/icons/font-awesome/svgs/solid/person-rays.svg +1 -0
  2068. package/dist/content/icons/font-awesome/svgs/solid/person-rifle.svg +1 -0
  2069. package/dist/content/icons/font-awesome/svgs/solid/person-running.svg +1 -0
  2070. package/dist/content/icons/font-awesome/svgs/solid/person-shelter.svg +1 -0
  2071. package/dist/content/icons/font-awesome/svgs/solid/person-skating.svg +1 -0
  2072. package/dist/content/icons/font-awesome/svgs/solid/person-skiing-nordic.svg +1 -0
  2073. package/dist/content/icons/font-awesome/svgs/solid/person-skiing.svg +1 -0
  2074. package/dist/content/icons/font-awesome/svgs/solid/person-snowboarding.svg +1 -0
  2075. package/dist/content/icons/font-awesome/svgs/solid/person-swimming.svg +1 -0
  2076. package/dist/content/icons/font-awesome/svgs/solid/person-through-window.svg +1 -0
  2077. package/dist/content/icons/font-awesome/svgs/solid/person-walking-arrow-loop-left.svg +1 -0
  2078. package/dist/content/icons/font-awesome/svgs/solid/person-walking-arrow-right.svg +1 -0
  2079. package/dist/content/icons/font-awesome/svgs/solid/person-walking-dashed-line-arrow-right.svg +1 -0
  2080. package/dist/content/icons/font-awesome/svgs/solid/person-walking-luggage.svg +1 -0
  2081. package/dist/content/icons/font-awesome/svgs/solid/person-walking-with-cane.svg +1 -0
  2082. package/dist/content/icons/font-awesome/svgs/solid/person-walking.svg +1 -0
  2083. package/dist/content/icons/font-awesome/svgs/solid/person.svg +1 -0
  2084. package/dist/content/icons/font-awesome/svgs/solid/peseta-sign.svg +1 -0
  2085. package/dist/content/icons/font-awesome/svgs/solid/peso-sign.svg +1 -0
  2086. package/dist/content/icons/font-awesome/svgs/solid/phone-flip.svg +1 -0
  2087. package/dist/content/icons/font-awesome/svgs/solid/phone-slash.svg +1 -0
  2088. package/dist/content/icons/font-awesome/svgs/solid/phone-volume.svg +1 -0
  2089. package/dist/content/icons/font-awesome/svgs/solid/phone.svg +1 -0
  2090. package/dist/content/icons/font-awesome/svgs/solid/photo-film.svg +1 -0
  2091. package/dist/content/icons/font-awesome/svgs/solid/piggy-bank.svg +1 -0
  2092. package/dist/content/icons/font-awesome/svgs/solid/pills.svg +1 -0
  2093. package/dist/content/icons/font-awesome/svgs/solid/pizza-slice.svg +1 -0
  2094. package/dist/content/icons/font-awesome/svgs/solid/place-of-worship.svg +1 -0
  2095. package/dist/content/icons/font-awesome/svgs/solid/plane-arrival.svg +1 -0
  2096. package/dist/content/icons/font-awesome/svgs/solid/plane-circle-check.svg +1 -0
  2097. package/dist/content/icons/font-awesome/svgs/solid/plane-circle-exclamation.svg +1 -0
  2098. package/dist/content/icons/font-awesome/svgs/solid/plane-circle-xmark.svg +1 -0
  2099. package/dist/content/icons/font-awesome/svgs/solid/plane-departure.svg +1 -0
  2100. package/dist/content/icons/font-awesome/svgs/solid/plane-lock.svg +1 -0
  2101. package/dist/content/icons/font-awesome/svgs/solid/plane-slash.svg +1 -0
  2102. package/dist/content/icons/font-awesome/svgs/solid/plane-up.svg +1 -0
  2103. package/dist/content/icons/font-awesome/svgs/solid/plane.svg +1 -0
  2104. package/dist/content/icons/font-awesome/svgs/solid/plant-wilt.svg +1 -0
  2105. package/dist/content/icons/font-awesome/svgs/solid/plate-wheat.svg +1 -0
  2106. package/dist/content/icons/font-awesome/svgs/solid/play.svg +1 -0
  2107. package/dist/content/icons/font-awesome/svgs/solid/plug-circle-bolt.svg +1 -0
  2108. package/dist/content/icons/font-awesome/svgs/solid/plug-circle-check.svg +1 -0
  2109. package/dist/content/icons/font-awesome/svgs/solid/plug-circle-exclamation.svg +1 -0
  2110. package/dist/content/icons/font-awesome/svgs/solid/plug-circle-minus.svg +1 -0
  2111. package/dist/content/icons/font-awesome/svgs/solid/plug-circle-plus.svg +1 -0
  2112. package/dist/content/icons/font-awesome/svgs/solid/plug-circle-xmark.svg +1 -0
  2113. package/dist/content/icons/font-awesome/svgs/solid/plug.svg +1 -0
  2114. package/dist/content/icons/font-awesome/svgs/solid/plus-minus.svg +1 -0
  2115. package/dist/content/icons/font-awesome/svgs/solid/plus.svg +1 -0
  2116. package/dist/content/icons/font-awesome/svgs/solid/podcast.svg +1 -0
  2117. package/dist/content/icons/font-awesome/svgs/solid/poo-storm.svg +1 -0
  2118. package/dist/content/icons/font-awesome/svgs/solid/poo.svg +1 -0
  2119. package/dist/content/icons/font-awesome/svgs/solid/poop.svg +1 -0
  2120. package/dist/content/icons/font-awesome/svgs/solid/power-off.svg +1 -0
  2121. package/dist/content/icons/font-awesome/svgs/solid/prescription-bottle-medical.svg +1 -0
  2122. package/dist/content/icons/font-awesome/svgs/solid/prescription-bottle.svg +1 -0
  2123. package/dist/content/icons/font-awesome/svgs/solid/prescription.svg +1 -0
  2124. package/dist/content/icons/font-awesome/svgs/solid/print.svg +1 -0
  2125. package/dist/content/icons/font-awesome/svgs/solid/pump-medical.svg +1 -0
  2126. package/dist/content/icons/font-awesome/svgs/solid/pump-soap.svg +1 -0
  2127. package/dist/content/icons/font-awesome/svgs/solid/puzzle-piece.svg +1 -0
  2128. package/dist/content/icons/font-awesome/svgs/solid/q.svg +1 -0
  2129. package/dist/content/icons/font-awesome/svgs/solid/qrcode.svg +1 -0
  2130. package/dist/content/icons/font-awesome/svgs/solid/question.svg +1 -0
  2131. package/dist/content/icons/font-awesome/svgs/solid/quote-left.svg +1 -0
  2132. package/dist/content/icons/font-awesome/svgs/solid/quote-right.svg +1 -0
  2133. package/dist/content/icons/font-awesome/svgs/solid/r.svg +1 -0
  2134. package/dist/content/icons/font-awesome/svgs/solid/radiation.svg +1 -0
  2135. package/dist/content/icons/font-awesome/svgs/solid/radio.svg +1 -0
  2136. package/dist/content/icons/font-awesome/svgs/solid/rainbow.svg +1 -0
  2137. package/dist/content/icons/font-awesome/svgs/solid/ranking-star.svg +1 -0
  2138. package/dist/content/icons/font-awesome/svgs/solid/receipt.svg +1 -0
  2139. package/dist/content/icons/font-awesome/svgs/solid/record-vinyl.svg +1 -0
  2140. package/dist/content/icons/font-awesome/svgs/solid/rectangle-ad.svg +1 -0
  2141. package/dist/content/icons/font-awesome/svgs/solid/rectangle-list.svg +1 -0
  2142. package/dist/content/icons/font-awesome/svgs/solid/rectangle-xmark.svg +1 -0
  2143. package/dist/content/icons/font-awesome/svgs/solid/recycle.svg +1 -0
  2144. package/dist/content/icons/font-awesome/svgs/solid/registered.svg +1 -0
  2145. package/dist/content/icons/font-awesome/svgs/solid/repeat.svg +1 -0
  2146. package/dist/content/icons/font-awesome/svgs/solid/reply-all.svg +1 -0
  2147. package/dist/content/icons/font-awesome/svgs/solid/reply.svg +1 -0
  2148. package/dist/content/icons/font-awesome/svgs/solid/republican.svg +1 -0
  2149. package/dist/content/icons/font-awesome/svgs/solid/restroom.svg +1 -0
  2150. package/dist/content/icons/font-awesome/svgs/solid/retweet.svg +1 -0
  2151. package/dist/content/icons/font-awesome/svgs/solid/ribbon.svg +1 -0
  2152. package/dist/content/icons/font-awesome/svgs/solid/right-from-bracket.svg +1 -0
  2153. package/dist/content/icons/font-awesome/svgs/solid/right-left.svg +1 -0
  2154. package/dist/content/icons/font-awesome/svgs/solid/right-long.svg +1 -0
  2155. package/dist/content/icons/font-awesome/svgs/solid/right-to-bracket.svg +1 -0
  2156. package/dist/content/icons/font-awesome/svgs/solid/ring.svg +1 -0
  2157. package/dist/content/icons/font-awesome/svgs/solid/road-barrier.svg +1 -0
  2158. package/dist/content/icons/font-awesome/svgs/solid/road-bridge.svg +1 -0
  2159. package/dist/content/icons/font-awesome/svgs/solid/road-circle-check.svg +1 -0
  2160. package/dist/content/icons/font-awesome/svgs/solid/road-circle-exclamation.svg +1 -0
  2161. package/dist/content/icons/font-awesome/svgs/solid/road-circle-xmark.svg +1 -0
  2162. package/dist/content/icons/font-awesome/svgs/solid/road-lock.svg +1 -0
  2163. package/dist/content/icons/font-awesome/svgs/solid/road-spikes.svg +1 -0
  2164. package/dist/content/icons/font-awesome/svgs/solid/road.svg +1 -0
  2165. package/dist/content/icons/font-awesome/svgs/solid/robot.svg +1 -0
  2166. package/dist/content/icons/font-awesome/svgs/solid/rocket.svg +1 -0
  2167. package/dist/content/icons/font-awesome/svgs/solid/rotate-left.svg +1 -0
  2168. package/dist/content/icons/font-awesome/svgs/solid/rotate-right.svg +1 -0
  2169. package/dist/content/icons/font-awesome/svgs/solid/rotate.svg +1 -0
  2170. package/dist/content/icons/font-awesome/svgs/solid/route.svg +1 -0
  2171. package/dist/content/icons/font-awesome/svgs/solid/rss.svg +1 -0
  2172. package/dist/content/icons/font-awesome/svgs/solid/ruble-sign.svg +1 -0
  2173. package/dist/content/icons/font-awesome/svgs/solid/rug.svg +1 -0
  2174. package/dist/content/icons/font-awesome/svgs/solid/ruler-combined.svg +1 -0
  2175. package/dist/content/icons/font-awesome/svgs/solid/ruler-horizontal.svg +1 -0
  2176. package/dist/content/icons/font-awesome/svgs/solid/ruler-vertical.svg +1 -0
  2177. package/dist/content/icons/font-awesome/svgs/solid/ruler.svg +1 -0
  2178. package/dist/content/icons/font-awesome/svgs/solid/rupee-sign.svg +1 -0
  2179. package/dist/content/icons/font-awesome/svgs/solid/rupiah-sign.svg +1 -0
  2180. package/dist/content/icons/font-awesome/svgs/solid/s.svg +1 -0
  2181. package/dist/content/icons/font-awesome/svgs/solid/sack-dollar.svg +1 -0
  2182. package/dist/content/icons/font-awesome/svgs/solid/sack-xmark.svg +1 -0
  2183. package/dist/content/icons/font-awesome/svgs/solid/sailboat.svg +1 -0
  2184. package/dist/content/icons/font-awesome/svgs/solid/satellite-dish.svg +1 -0
  2185. package/dist/content/icons/font-awesome/svgs/solid/satellite.svg +1 -0
  2186. package/dist/content/icons/font-awesome/svgs/solid/scale-balanced.svg +1 -0
  2187. package/dist/content/icons/font-awesome/svgs/solid/scale-unbalanced-flip.svg +1 -0
  2188. package/dist/content/icons/font-awesome/svgs/solid/scale-unbalanced.svg +1 -0
  2189. package/dist/content/icons/font-awesome/svgs/solid/school-circle-check.svg +1 -0
  2190. package/dist/content/icons/font-awesome/svgs/solid/school-circle-exclamation.svg +1 -0
  2191. package/dist/content/icons/font-awesome/svgs/solid/school-circle-xmark.svg +1 -0
  2192. package/dist/content/icons/font-awesome/svgs/solid/school-flag.svg +1 -0
  2193. package/dist/content/icons/font-awesome/svgs/solid/school-lock.svg +1 -0
  2194. package/dist/content/icons/font-awesome/svgs/solid/school.svg +1 -0
  2195. package/dist/content/icons/font-awesome/svgs/solid/scissors.svg +1 -0
  2196. package/dist/content/icons/font-awesome/svgs/solid/screwdriver-wrench.svg +1 -0
  2197. package/dist/content/icons/font-awesome/svgs/solid/screwdriver.svg +1 -0
  2198. package/dist/content/icons/font-awesome/svgs/solid/scroll-torah.svg +1 -0
  2199. package/dist/content/icons/font-awesome/svgs/solid/scroll.svg +1 -0
  2200. package/dist/content/icons/font-awesome/svgs/solid/sd-card.svg +1 -0
  2201. package/dist/content/icons/font-awesome/svgs/solid/section.svg +1 -0
  2202. package/dist/content/icons/font-awesome/svgs/solid/seedling.svg +1 -0
  2203. package/dist/content/icons/font-awesome/svgs/solid/server.svg +1 -0
  2204. package/dist/content/icons/font-awesome/svgs/solid/shapes.svg +1 -0
  2205. package/dist/content/icons/font-awesome/svgs/solid/share-from-square.svg +1 -0
  2206. package/dist/content/icons/font-awesome/svgs/solid/share-nodes.svg +1 -0
  2207. package/dist/content/icons/font-awesome/svgs/solid/share.svg +1 -0
  2208. package/dist/content/icons/font-awesome/svgs/solid/sheet-plastic.svg +1 -0
  2209. package/dist/content/icons/font-awesome/svgs/solid/shekel-sign.svg +1 -0
  2210. package/dist/content/icons/font-awesome/svgs/solid/shield-cat.svg +1 -0
  2211. package/dist/content/icons/font-awesome/svgs/solid/shield-dog.svg +1 -0
  2212. package/dist/content/icons/font-awesome/svgs/solid/shield-halved.svg +1 -0
  2213. package/dist/content/icons/font-awesome/svgs/solid/shield-heart.svg +1 -0
  2214. package/dist/content/icons/font-awesome/svgs/solid/shield-virus.svg +1 -0
  2215. package/dist/content/icons/font-awesome/svgs/solid/shield.svg +1 -0
  2216. package/dist/content/icons/font-awesome/svgs/solid/ship.svg +1 -0
  2217. package/dist/content/icons/font-awesome/svgs/solid/shirt.svg +1 -0
  2218. package/dist/content/icons/font-awesome/svgs/solid/shoe-prints.svg +1 -0
  2219. package/dist/content/icons/font-awesome/svgs/solid/shop-lock.svg +1 -0
  2220. package/dist/content/icons/font-awesome/svgs/solid/shop-slash.svg +1 -0
  2221. package/dist/content/icons/font-awesome/svgs/solid/shop.svg +1 -0
  2222. package/dist/content/icons/font-awesome/svgs/solid/shower.svg +1 -0
  2223. package/dist/content/icons/font-awesome/svgs/solid/shrimp.svg +1 -0
  2224. package/dist/content/icons/font-awesome/svgs/solid/shuffle.svg +1 -0
  2225. package/dist/content/icons/font-awesome/svgs/solid/shuttle-space.svg +1 -0
  2226. package/dist/content/icons/font-awesome/svgs/solid/sign-hanging.svg +1 -0
  2227. package/dist/content/icons/font-awesome/svgs/solid/signal.svg +1 -0
  2228. package/dist/content/icons/font-awesome/svgs/solid/signature.svg +1 -0
  2229. package/dist/content/icons/font-awesome/svgs/solid/signs-post.svg +1 -0
  2230. package/dist/content/icons/font-awesome/svgs/solid/sim-card.svg +1 -0
  2231. package/dist/content/icons/font-awesome/svgs/solid/sink.svg +1 -0
  2232. package/dist/content/icons/font-awesome/svgs/solid/sitemap.svg +1 -0
  2233. package/dist/content/icons/font-awesome/svgs/solid/skull-crossbones.svg +1 -0
  2234. package/dist/content/icons/font-awesome/svgs/solid/skull.svg +1 -0
  2235. package/dist/content/icons/font-awesome/svgs/solid/slash.svg +1 -0
  2236. package/dist/content/icons/font-awesome/svgs/solid/sleigh.svg +1 -0
  2237. package/dist/content/icons/font-awesome/svgs/solid/sliders.svg +1 -0
  2238. package/dist/content/icons/font-awesome/svgs/solid/smog.svg +1 -0
  2239. package/dist/content/icons/font-awesome/svgs/solid/smoking.svg +1 -0
  2240. package/dist/content/icons/font-awesome/svgs/solid/snowflake.svg +1 -0
  2241. package/dist/content/icons/font-awesome/svgs/solid/snowman.svg +1 -0
  2242. package/dist/content/icons/font-awesome/svgs/solid/snowplow.svg +1 -0
  2243. package/dist/content/icons/font-awesome/svgs/solid/soap.svg +1 -0
  2244. package/dist/content/icons/font-awesome/svgs/solid/socks.svg +1 -0
  2245. package/dist/content/icons/font-awesome/svgs/solid/solar-panel.svg +1 -0
  2246. package/dist/content/icons/font-awesome/svgs/solid/sort-down.svg +1 -0
  2247. package/dist/content/icons/font-awesome/svgs/solid/sort-up.svg +1 -0
  2248. package/dist/content/icons/font-awesome/svgs/solid/sort.svg +1 -0
  2249. package/dist/content/icons/font-awesome/svgs/solid/spa.svg +1 -0
  2250. package/dist/content/icons/font-awesome/svgs/solid/spaghetti-monster-flying.svg +1 -0
  2251. package/dist/content/icons/font-awesome/svgs/solid/spell-check.svg +1 -0
  2252. package/dist/content/icons/font-awesome/svgs/solid/spider.svg +1 -0
  2253. package/dist/content/icons/font-awesome/svgs/solid/spinner.svg +1 -0
  2254. package/dist/content/icons/font-awesome/svgs/solid/splotch.svg +1 -0
  2255. package/dist/content/icons/font-awesome/svgs/solid/spoon.svg +1 -0
  2256. package/dist/content/icons/font-awesome/svgs/solid/spray-can-sparkles.svg +1 -0
  2257. package/dist/content/icons/font-awesome/svgs/solid/spray-can.svg +1 -0
  2258. package/dist/content/icons/font-awesome/svgs/solid/square-arrow-up-right.svg +1 -0
  2259. package/dist/content/icons/font-awesome/svgs/solid/square-caret-down.svg +1 -0
  2260. package/dist/content/icons/font-awesome/svgs/solid/square-caret-left.svg +1 -0
  2261. package/dist/content/icons/font-awesome/svgs/solid/square-caret-right.svg +1 -0
  2262. package/dist/content/icons/font-awesome/svgs/solid/square-caret-up.svg +1 -0
  2263. package/dist/content/icons/font-awesome/svgs/solid/square-check.svg +1 -0
  2264. package/dist/content/icons/font-awesome/svgs/solid/square-envelope.svg +1 -0
  2265. package/dist/content/icons/font-awesome/svgs/solid/square-full.svg +1 -0
  2266. package/dist/content/icons/font-awesome/svgs/solid/square-h.svg +1 -0
  2267. package/dist/content/icons/font-awesome/svgs/solid/square-minus.svg +1 -0
  2268. package/dist/content/icons/font-awesome/svgs/solid/square-nfi.svg +1 -0
  2269. package/dist/content/icons/font-awesome/svgs/solid/square-parking.svg +1 -0
  2270. package/dist/content/icons/font-awesome/svgs/solid/square-pen.svg +1 -0
  2271. package/dist/content/icons/font-awesome/svgs/solid/square-person-confined.svg +1 -0
  2272. package/dist/content/icons/font-awesome/svgs/solid/square-phone-flip.svg +1 -0
  2273. package/dist/content/icons/font-awesome/svgs/solid/square-phone.svg +1 -0
  2274. package/dist/content/icons/font-awesome/svgs/solid/square-plus.svg +1 -0
  2275. package/dist/content/icons/font-awesome/svgs/solid/square-poll-horizontal.svg +1 -0
  2276. package/dist/content/icons/font-awesome/svgs/solid/square-poll-vertical.svg +1 -0
  2277. package/dist/content/icons/font-awesome/svgs/solid/square-root-variable.svg +1 -0
  2278. package/dist/content/icons/font-awesome/svgs/solid/square-rss.svg +1 -0
  2279. package/dist/content/icons/font-awesome/svgs/solid/square-share-nodes.svg +1 -0
  2280. package/dist/content/icons/font-awesome/svgs/solid/square-up-right.svg +1 -0
  2281. package/dist/content/icons/font-awesome/svgs/solid/square-virus.svg +1 -0
  2282. package/dist/content/icons/font-awesome/svgs/solid/square-xmark.svg +1 -0
  2283. package/dist/content/icons/font-awesome/svgs/solid/square.svg +1 -0
  2284. package/dist/content/icons/font-awesome/svgs/solid/staff-snake.svg +1 -0
  2285. package/dist/content/icons/font-awesome/svgs/solid/stairs.svg +1 -0
  2286. package/dist/content/icons/font-awesome/svgs/solid/stamp.svg +1 -0
  2287. package/dist/content/icons/font-awesome/svgs/solid/stapler.svg +1 -0
  2288. package/dist/content/icons/font-awesome/svgs/solid/star-and-crescent.svg +1 -0
  2289. package/dist/content/icons/font-awesome/svgs/solid/star-half-stroke.svg +1 -0
  2290. package/dist/content/icons/font-awesome/svgs/solid/star-half.svg +1 -0
  2291. package/dist/content/icons/font-awesome/svgs/solid/star-of-david.svg +1 -0
  2292. package/dist/content/icons/font-awesome/svgs/solid/star-of-life.svg +1 -0
  2293. package/dist/content/icons/font-awesome/svgs/solid/star.svg +1 -0
  2294. package/dist/content/icons/font-awesome/svgs/solid/sterling-sign.svg +1 -0
  2295. package/dist/content/icons/font-awesome/svgs/solid/stethoscope.svg +1 -0
  2296. package/dist/content/icons/font-awesome/svgs/solid/stop.svg +1 -0
  2297. package/dist/content/icons/font-awesome/svgs/solid/stopwatch-20.svg +1 -0
  2298. package/dist/content/icons/font-awesome/svgs/solid/stopwatch.svg +1 -0
  2299. package/dist/content/icons/font-awesome/svgs/solid/store-slash.svg +1 -0
  2300. package/dist/content/icons/font-awesome/svgs/solid/store.svg +1 -0
  2301. package/dist/content/icons/font-awesome/svgs/solid/street-view.svg +1 -0
  2302. package/dist/content/icons/font-awesome/svgs/solid/strikethrough.svg +1 -0
  2303. package/dist/content/icons/font-awesome/svgs/solid/stroopwafel.svg +1 -0
  2304. package/dist/content/icons/font-awesome/svgs/solid/subscript.svg +1 -0
  2305. package/dist/content/icons/font-awesome/svgs/solid/suitcase-medical.svg +1 -0
  2306. package/dist/content/icons/font-awesome/svgs/solid/suitcase-rolling.svg +1 -0
  2307. package/dist/content/icons/font-awesome/svgs/solid/suitcase.svg +1 -0
  2308. package/dist/content/icons/font-awesome/svgs/solid/sun-plant-wilt.svg +1 -0
  2309. package/dist/content/icons/font-awesome/svgs/solid/sun.svg +1 -0
  2310. package/dist/content/icons/font-awesome/svgs/solid/superscript.svg +1 -0
  2311. package/dist/content/icons/font-awesome/svgs/solid/swatchbook.svg +1 -0
  2312. package/dist/content/icons/font-awesome/svgs/solid/synagogue.svg +1 -0
  2313. package/dist/content/icons/font-awesome/svgs/solid/syringe.svg +1 -0
  2314. package/dist/content/icons/font-awesome/svgs/solid/t.svg +1 -0
  2315. package/dist/content/icons/font-awesome/svgs/solid/table-cells-column-lock.svg +1 -0
  2316. package/dist/content/icons/font-awesome/svgs/solid/table-cells-large.svg +1 -0
  2317. package/dist/content/icons/font-awesome/svgs/solid/table-cells-row-lock.svg +1 -0
  2318. package/dist/content/icons/font-awesome/svgs/solid/table-cells.svg +1 -0
  2319. package/dist/content/icons/font-awesome/svgs/solid/table-columns.svg +1 -0
  2320. package/dist/content/icons/font-awesome/svgs/solid/table-list.svg +1 -0
  2321. package/dist/content/icons/font-awesome/svgs/solid/table-tennis-paddle-ball.svg +1 -0
  2322. package/dist/content/icons/font-awesome/svgs/solid/table.svg +1 -0
  2323. package/dist/content/icons/font-awesome/svgs/solid/tablet-button.svg +1 -0
  2324. package/dist/content/icons/font-awesome/svgs/solid/tablet-screen-button.svg +1 -0
  2325. package/dist/content/icons/font-awesome/svgs/solid/tablet.svg +1 -0
  2326. package/dist/content/icons/font-awesome/svgs/solid/tablets.svg +1 -0
  2327. package/dist/content/icons/font-awesome/svgs/solid/tachograph-digital.svg +1 -0
  2328. package/dist/content/icons/font-awesome/svgs/solid/tag.svg +1 -0
  2329. package/dist/content/icons/font-awesome/svgs/solid/tags.svg +1 -0
  2330. package/dist/content/icons/font-awesome/svgs/solid/tape.svg +1 -0
  2331. package/dist/content/icons/font-awesome/svgs/solid/tarp-droplet.svg +1 -0
  2332. package/dist/content/icons/font-awesome/svgs/solid/tarp.svg +1 -0
  2333. package/dist/content/icons/font-awesome/svgs/solid/taxi.svg +1 -0
  2334. package/dist/content/icons/font-awesome/svgs/solid/teeth-open.svg +1 -0
  2335. package/dist/content/icons/font-awesome/svgs/solid/teeth.svg +1 -0
  2336. package/dist/content/icons/font-awesome/svgs/solid/temperature-arrow-down.svg +1 -0
  2337. package/dist/content/icons/font-awesome/svgs/solid/temperature-arrow-up.svg +1 -0
  2338. package/dist/content/icons/font-awesome/svgs/solid/temperature-empty.svg +1 -0
  2339. package/dist/content/icons/font-awesome/svgs/solid/temperature-full.svg +1 -0
  2340. package/dist/content/icons/font-awesome/svgs/solid/temperature-half.svg +1 -0
  2341. package/dist/content/icons/font-awesome/svgs/solid/temperature-high.svg +1 -0
  2342. package/dist/content/icons/font-awesome/svgs/solid/temperature-low.svg +1 -0
  2343. package/dist/content/icons/font-awesome/svgs/solid/temperature-quarter.svg +1 -0
  2344. package/dist/content/icons/font-awesome/svgs/solid/temperature-three-quarters.svg +1 -0
  2345. package/dist/content/icons/font-awesome/svgs/solid/tenge-sign.svg +1 -0
  2346. package/dist/content/icons/font-awesome/svgs/solid/tent-arrow-down-to-line.svg +1 -0
  2347. package/dist/content/icons/font-awesome/svgs/solid/tent-arrow-left-right.svg +1 -0
  2348. package/dist/content/icons/font-awesome/svgs/solid/tent-arrow-turn-left.svg +1 -0
  2349. package/dist/content/icons/font-awesome/svgs/solid/tent-arrows-down.svg +1 -0
  2350. package/dist/content/icons/font-awesome/svgs/solid/tent.svg +1 -0
  2351. package/dist/content/icons/font-awesome/svgs/solid/tents.svg +1 -0
  2352. package/dist/content/icons/font-awesome/svgs/solid/terminal.svg +1 -0
  2353. package/dist/content/icons/font-awesome/svgs/solid/text-height.svg +1 -0
  2354. package/dist/content/icons/font-awesome/svgs/solid/text-slash.svg +1 -0
  2355. package/dist/content/icons/font-awesome/svgs/solid/text-width.svg +1 -0
  2356. package/dist/content/icons/font-awesome/svgs/solid/thermometer.svg +1 -0
  2357. package/dist/content/icons/font-awesome/svgs/solid/thumbs-down.svg +1 -0
  2358. package/dist/content/icons/font-awesome/svgs/solid/thumbs-up.svg +1 -0
  2359. package/dist/content/icons/font-awesome/svgs/solid/thumbtack.svg +1 -0
  2360. package/dist/content/icons/font-awesome/svgs/solid/ticket-simple.svg +1 -0
  2361. package/dist/content/icons/font-awesome/svgs/solid/ticket.svg +1 -0
  2362. package/dist/content/icons/font-awesome/svgs/solid/timeline.svg +1 -0
  2363. package/dist/content/icons/font-awesome/svgs/solid/toggle-off.svg +1 -0
  2364. package/dist/content/icons/font-awesome/svgs/solid/toggle-on.svg +1 -0
  2365. package/dist/content/icons/font-awesome/svgs/solid/toilet-paper-slash.svg +1 -0
  2366. package/dist/content/icons/font-awesome/svgs/solid/toilet-paper.svg +1 -0
  2367. package/dist/content/icons/font-awesome/svgs/solid/toilet-portable.svg +1 -0
  2368. package/dist/content/icons/font-awesome/svgs/solid/toilet.svg +1 -0
  2369. package/dist/content/icons/font-awesome/svgs/solid/toilets-portable.svg +1 -0
  2370. package/dist/content/icons/font-awesome/svgs/solid/toolbox.svg +1 -0
  2371. package/dist/content/icons/font-awesome/svgs/solid/tooth.svg +1 -0
  2372. package/dist/content/icons/font-awesome/svgs/solid/torii-gate.svg +1 -0
  2373. package/dist/content/icons/font-awesome/svgs/solid/tornado.svg +1 -0
  2374. package/dist/content/icons/font-awesome/svgs/solid/tower-broadcast.svg +1 -0
  2375. package/dist/content/icons/font-awesome/svgs/solid/tower-cell.svg +1 -0
  2376. package/dist/content/icons/font-awesome/svgs/solid/tower-observation.svg +1 -0
  2377. package/dist/content/icons/font-awesome/svgs/solid/tractor.svg +1 -0
  2378. package/dist/content/icons/font-awesome/svgs/solid/trademark.svg +1 -0
  2379. package/dist/content/icons/font-awesome/svgs/solid/traffic-light.svg +1 -0
  2380. package/dist/content/icons/font-awesome/svgs/solid/trailer.svg +1 -0
  2381. package/dist/content/icons/font-awesome/svgs/solid/train-subway.svg +1 -0
  2382. package/dist/content/icons/font-awesome/svgs/solid/train-tram.svg +1 -0
  2383. package/dist/content/icons/font-awesome/svgs/solid/train.svg +1 -0
  2384. package/dist/content/icons/font-awesome/svgs/solid/transgender.svg +1 -0
  2385. package/dist/content/icons/font-awesome/svgs/solid/trash-arrow-up.svg +1 -0
  2386. package/dist/content/icons/font-awesome/svgs/solid/trash-can-arrow-up.svg +1 -0
  2387. package/dist/content/icons/font-awesome/svgs/solid/trash-can.svg +1 -0
  2388. package/dist/content/icons/font-awesome/svgs/solid/trash.svg +1 -0
  2389. package/dist/content/icons/font-awesome/svgs/solid/tree-city.svg +1 -0
  2390. package/dist/content/icons/font-awesome/svgs/solid/tree.svg +1 -0
  2391. package/dist/content/icons/font-awesome/svgs/solid/triangle-exclamation.svg +1 -0
  2392. package/dist/content/icons/font-awesome/svgs/solid/trophy.svg +1 -0
  2393. package/dist/content/icons/font-awesome/svgs/solid/trowel-bricks.svg +1 -0
  2394. package/dist/content/icons/font-awesome/svgs/solid/trowel.svg +1 -0
  2395. package/dist/content/icons/font-awesome/svgs/solid/truck-arrow-right.svg +1 -0
  2396. package/dist/content/icons/font-awesome/svgs/solid/truck-droplet.svg +1 -0
  2397. package/dist/content/icons/font-awesome/svgs/solid/truck-fast.svg +1 -0
  2398. package/dist/content/icons/font-awesome/svgs/solid/truck-field-un.svg +1 -0
  2399. package/dist/content/icons/font-awesome/svgs/solid/truck-field.svg +1 -0
  2400. package/dist/content/icons/font-awesome/svgs/solid/truck-front.svg +1 -0
  2401. package/dist/content/icons/font-awesome/svgs/solid/truck-medical.svg +1 -0
  2402. package/dist/content/icons/font-awesome/svgs/solid/truck-monster.svg +1 -0
  2403. package/dist/content/icons/font-awesome/svgs/solid/truck-moving.svg +1 -0
  2404. package/dist/content/icons/font-awesome/svgs/solid/truck-pickup.svg +1 -0
  2405. package/dist/content/icons/font-awesome/svgs/solid/truck-plane.svg +1 -0
  2406. package/dist/content/icons/font-awesome/svgs/solid/truck-ramp-box.svg +1 -0
  2407. package/dist/content/icons/font-awesome/svgs/solid/truck.svg +1 -0
  2408. package/dist/content/icons/font-awesome/svgs/solid/tty.svg +1 -0
  2409. package/dist/content/icons/font-awesome/svgs/solid/turkish-lira-sign.svg +1 -0
  2410. package/dist/content/icons/font-awesome/svgs/solid/turn-down.svg +1 -0
  2411. package/dist/content/icons/font-awesome/svgs/solid/turn-up.svg +1 -0
  2412. package/dist/content/icons/font-awesome/svgs/solid/tv.svg +1 -0
  2413. package/dist/content/icons/font-awesome/svgs/solid/u.svg +1 -0
  2414. package/dist/content/icons/font-awesome/svgs/solid/umbrella-beach.svg +1 -0
  2415. package/dist/content/icons/font-awesome/svgs/solid/umbrella.svg +1 -0
  2416. package/dist/content/icons/font-awesome/svgs/solid/underline.svg +1 -0
  2417. package/dist/content/icons/font-awesome/svgs/solid/universal-access.svg +1 -0
  2418. package/dist/content/icons/font-awesome/svgs/solid/unlock-keyhole.svg +1 -0
  2419. package/dist/content/icons/font-awesome/svgs/solid/unlock.svg +1 -0
  2420. package/dist/content/icons/font-awesome/svgs/solid/up-down-left-right.svg +1 -0
  2421. package/dist/content/icons/font-awesome/svgs/solid/up-down.svg +1 -0
  2422. package/dist/content/icons/font-awesome/svgs/solid/up-long.svg +1 -0
  2423. package/dist/content/icons/font-awesome/svgs/solid/up-right-and-down-left-from-center.svg +1 -0
  2424. package/dist/content/icons/font-awesome/svgs/solid/up-right-from-square.svg +1 -0
  2425. package/dist/content/icons/font-awesome/svgs/solid/upload.svg +1 -0
  2426. package/dist/content/icons/font-awesome/svgs/solid/user-astronaut.svg +1 -0
  2427. package/dist/content/icons/font-awesome/svgs/solid/user-check.svg +1 -0
  2428. package/dist/content/icons/font-awesome/svgs/solid/user-clock.svg +1 -0
  2429. package/dist/content/icons/font-awesome/svgs/solid/user-doctor.svg +1 -0
  2430. package/dist/content/icons/font-awesome/svgs/solid/user-gear.svg +1 -0
  2431. package/dist/content/icons/font-awesome/svgs/solid/user-graduate.svg +1 -0
  2432. package/dist/content/icons/font-awesome/svgs/solid/user-group.svg +1 -0
  2433. package/dist/content/icons/font-awesome/svgs/solid/user-injured.svg +1 -0
  2434. package/dist/content/icons/font-awesome/svgs/solid/user-large-slash.svg +1 -0
  2435. package/dist/content/icons/font-awesome/svgs/solid/user-large.svg +1 -0
  2436. package/dist/content/icons/font-awesome/svgs/solid/user-lock.svg +1 -0
  2437. package/dist/content/icons/font-awesome/svgs/solid/user-minus.svg +1 -0
  2438. package/dist/content/icons/font-awesome/svgs/solid/user-ninja.svg +1 -0
  2439. package/dist/content/icons/font-awesome/svgs/solid/user-nurse.svg +1 -0
  2440. package/dist/content/icons/font-awesome/svgs/solid/user-pen.svg +1 -0
  2441. package/dist/content/icons/font-awesome/svgs/solid/user-plus.svg +1 -0
  2442. package/dist/content/icons/font-awesome/svgs/solid/user-secret.svg +1 -0
  2443. package/dist/content/icons/font-awesome/svgs/solid/user-shield.svg +1 -0
  2444. package/dist/content/icons/font-awesome/svgs/solid/user-slash.svg +1 -0
  2445. package/dist/content/icons/font-awesome/svgs/solid/user-tag.svg +1 -0
  2446. package/dist/content/icons/font-awesome/svgs/solid/user-tie.svg +1 -0
  2447. package/dist/content/icons/font-awesome/svgs/solid/user-xmark.svg +1 -0
  2448. package/dist/content/icons/font-awesome/svgs/solid/user.svg +1 -0
  2449. package/dist/content/icons/font-awesome/svgs/solid/users-between-lines.svg +1 -0
  2450. package/dist/content/icons/font-awesome/svgs/solid/users-gear.svg +1 -0
  2451. package/dist/content/icons/font-awesome/svgs/solid/users-line.svg +1 -0
  2452. package/dist/content/icons/font-awesome/svgs/solid/users-rays.svg +1 -0
  2453. package/dist/content/icons/font-awesome/svgs/solid/users-rectangle.svg +1 -0
  2454. package/dist/content/icons/font-awesome/svgs/solid/users-slash.svg +1 -0
  2455. package/dist/content/icons/font-awesome/svgs/solid/users-viewfinder.svg +1 -0
  2456. package/dist/content/icons/font-awesome/svgs/solid/users.svg +1 -0
  2457. package/dist/content/icons/font-awesome/svgs/solid/utensils.svg +1 -0
  2458. package/dist/content/icons/font-awesome/svgs/solid/v.svg +1 -0
  2459. package/dist/content/icons/font-awesome/svgs/solid/van-shuttle.svg +1 -0
  2460. package/dist/content/icons/font-awesome/svgs/solid/vault.svg +1 -0
  2461. package/dist/content/icons/font-awesome/svgs/solid/vector-square.svg +1 -0
  2462. package/dist/content/icons/font-awesome/svgs/solid/venus-double.svg +1 -0
  2463. package/dist/content/icons/font-awesome/svgs/solid/venus-mars.svg +1 -0
  2464. package/dist/content/icons/font-awesome/svgs/solid/venus.svg +1 -0
  2465. package/dist/content/icons/font-awesome/svgs/solid/vest-patches.svg +1 -0
  2466. package/dist/content/icons/font-awesome/svgs/solid/vest.svg +1 -0
  2467. package/dist/content/icons/font-awesome/svgs/solid/vial-circle-check.svg +1 -0
  2468. package/dist/content/icons/font-awesome/svgs/solid/vial-virus.svg +1 -0
  2469. package/dist/content/icons/font-awesome/svgs/solid/vial.svg +1 -0
  2470. package/dist/content/icons/font-awesome/svgs/solid/vials.svg +1 -0
  2471. package/dist/content/icons/font-awesome/svgs/solid/video-slash.svg +1 -0
  2472. package/dist/content/icons/font-awesome/svgs/solid/video.svg +1 -0
  2473. package/dist/content/icons/font-awesome/svgs/solid/vihara.svg +1 -0
  2474. package/dist/content/icons/font-awesome/svgs/solid/virus-covid-slash.svg +1 -0
  2475. package/dist/content/icons/font-awesome/svgs/solid/virus-covid.svg +1 -0
  2476. package/dist/content/icons/font-awesome/svgs/solid/virus-slash.svg +1 -0
  2477. package/dist/content/icons/font-awesome/svgs/solid/virus.svg +1 -0
  2478. package/dist/content/icons/font-awesome/svgs/solid/viruses.svg +1 -0
  2479. package/dist/content/icons/font-awesome/svgs/solid/voicemail.svg +1 -0
  2480. package/dist/content/icons/font-awesome/svgs/solid/volcano.svg +1 -0
  2481. package/dist/content/icons/font-awesome/svgs/solid/volleyball.svg +1 -0
  2482. package/dist/content/icons/font-awesome/svgs/solid/volume-high.svg +1 -0
  2483. package/dist/content/icons/font-awesome/svgs/solid/volume-low.svg +1 -0
  2484. package/dist/content/icons/font-awesome/svgs/solid/volume-off.svg +1 -0
  2485. package/dist/content/icons/font-awesome/svgs/solid/volume-xmark.svg +1 -0
  2486. package/dist/content/icons/font-awesome/svgs/solid/vr-cardboard.svg +1 -0
  2487. package/dist/content/icons/font-awesome/svgs/solid/w.svg +1 -0
  2488. package/dist/content/icons/font-awesome/svgs/solid/walkie-talkie.svg +1 -0
  2489. package/dist/content/icons/font-awesome/svgs/solid/wallet.svg +1 -0
  2490. package/dist/content/icons/font-awesome/svgs/solid/wand-magic-sparkles.svg +1 -0
  2491. package/dist/content/icons/font-awesome/svgs/solid/wand-magic.svg +1 -0
  2492. package/dist/content/icons/font-awesome/svgs/solid/wand-sparkles.svg +1 -0
  2493. package/dist/content/icons/font-awesome/svgs/solid/warehouse.svg +1 -0
  2494. package/dist/content/icons/font-awesome/svgs/solid/water-ladder.svg +1 -0
  2495. package/dist/content/icons/font-awesome/svgs/solid/water.svg +1 -0
  2496. package/dist/content/icons/font-awesome/svgs/solid/wave-square.svg +1 -0
  2497. package/dist/content/icons/font-awesome/svgs/solid/weight-hanging.svg +1 -0
  2498. package/dist/content/icons/font-awesome/svgs/solid/weight-scale.svg +1 -0
  2499. package/dist/content/icons/font-awesome/svgs/solid/wheat-awn-circle-exclamation.svg +1 -0
  2500. package/dist/content/icons/font-awesome/svgs/solid/wheat-awn.svg +1 -0
  2501. package/dist/content/icons/font-awesome/svgs/solid/wheelchair-move.svg +1 -0
  2502. package/dist/content/icons/font-awesome/svgs/solid/wheelchair.svg +1 -0
  2503. package/dist/content/icons/font-awesome/svgs/solid/whiskey-glass.svg +1 -0
  2504. package/dist/content/icons/font-awesome/svgs/solid/wifi.svg +1 -0
  2505. package/dist/content/icons/font-awesome/svgs/solid/wind.svg +1 -0
  2506. package/dist/content/icons/font-awesome/svgs/solid/window-maximize.svg +1 -0
  2507. package/dist/content/icons/font-awesome/svgs/solid/window-minimize.svg +1 -0
  2508. package/dist/content/icons/font-awesome/svgs/solid/window-restore.svg +1 -0
  2509. package/dist/content/icons/font-awesome/svgs/solid/wine-bottle.svg +1 -0
  2510. package/dist/content/icons/font-awesome/svgs/solid/wine-glass-empty.svg +1 -0
  2511. package/dist/content/icons/font-awesome/svgs/solid/wine-glass.svg +1 -0
  2512. package/dist/content/icons/font-awesome/svgs/solid/won-sign.svg +1 -0
  2513. package/dist/content/icons/font-awesome/svgs/solid/worm.svg +1 -0
  2514. package/dist/content/icons/font-awesome/svgs/solid/wrench.svg +1 -0
  2515. package/dist/content/icons/font-awesome/svgs/solid/x-ray.svg +1 -0
  2516. package/dist/content/icons/font-awesome/svgs/solid/x.svg +1 -0
  2517. package/dist/content/icons/font-awesome/svgs/solid/xmark.svg +1 -0
  2518. package/dist/content/icons/font-awesome/svgs/solid/xmarks-lines.svg +1 -0
  2519. package/dist/content/icons/font-awesome/svgs/solid/y.svg +1 -0
  2520. package/dist/content/icons/font-awesome/svgs/solid/yen-sign.svg +1 -0
  2521. package/dist/content/icons/font-awesome/svgs/solid/yin-yang.svg +1 -0
  2522. package/dist/content/icons/font-awesome/svgs/solid/z.svg +1 -0
  2523. package/dist/content/icons/font-awesome/webfonts/fa-brands-400.woff2 +0 -0
  2524. package/dist/content/icons/font-awesome/webfonts/fa-regular-400.woff2 +0 -0
  2525. package/dist/content/icons/font-awesome/webfonts/fa-solid-900.woff2 +0 -0
  2526. package/dist/content/icons/font-awesome/webfonts/fa-v4compatibility.woff2 +0 -0
  2527. package/dist/content/icons/new-cw-icons/NewCwIcons.json +204 -1
  2528. package/dist/content/icons/new-cw-icons/css/new-cw-icons.css +1 -9
  2529. package/dist/content/icons/new-cw-icons/fonts/NewCwIcons.woff +0 -0
  2530. package/dist/index.cjs.js +686 -2563
  2531. package/dist/index.css +1 -3
  2532. package/dist/index.d.ts +26 -739
  2533. package/dist/index.d.ts.map +1 -0
  2534. package/dist/index.es.js +687 -2552
  2535. package/dist/src/common/functions/collections.d.ts.map +1 -1
  2536. package/dist/src/common/functions/colorManipulation.d.ts.map +1 -1
  2537. package/dist/src/common/functions/dsl/UiEventDSL.d.ts +1 -1
  2538. package/dist/src/common/functions/useSingleAndDoubleClicks.d.ts.map +1 -1
  2539. package/dist/src/components/control/action/contextual-menu/CwContextualMenu.d.ts +29 -0
  2540. package/dist/src/components/control/action/contextual-menu/CwContextualMenu.d.ts.map +1 -0
  2541. package/dist/src/components/control/action/search/CwSearch.d.ts +0 -22
  2542. package/dist/src/components/control/action/search/CwSearch.d.ts.map +1 -1
  2543. package/dist/src/components/control/action/tooltip-dialog/CwTooltipDialog.d.ts +19 -0
  2544. package/dist/src/components/control/action/tooltip-dialog/CwTooltipDialog.d.ts.map +1 -0
  2545. package/dist/src/components/control/choice/checkbox/CwCheckbox.d.ts +0 -4
  2546. package/dist/src/components/control/choice/checkbox/CwCheckbox.d.ts.map +1 -1
  2547. package/dist/src/components/control/choice/deprecated/MultiSelect_deprecated_.d.ts +24 -0
  2548. package/dist/src/components/control/choice/deprecated/MultiSelect_deprecated_.d.ts.map +1 -0
  2549. package/dist/src/components/control/choice/dropdown/CwDropdown.d.ts +19 -0
  2550. package/dist/src/components/control/choice/dropdown/CwDropdown.d.ts.map +1 -0
  2551. package/dist/src/components/control/choice/dropdown/CwDropdownContainer.d.ts +17 -0
  2552. package/dist/src/components/control/choice/dropdown/CwDropdownContainer.d.ts.map +1 -0
  2553. package/dist/src/components/control/choice/dropdown/CwDropdownNavigation.d.ts +21 -0
  2554. package/dist/src/components/control/choice/dropdown/CwDropdownNavigation.d.ts.map +1 -0
  2555. package/dist/src/components/control/choice/multi-filter/CwMultiFilter.d.ts +0 -6
  2556. package/dist/src/components/control/choice/multi-filter/CwMultiFilter.d.ts.map +1 -1
  2557. package/dist/src/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.d.ts +0 -1
  2558. package/dist/src/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.d.ts.map +1 -1
  2559. package/dist/src/components/control/choice/multiselect/CwHeadFilter.d.ts +17 -0
  2560. package/dist/src/components/control/choice/multiselect/CwHeadFilter.d.ts.map +1 -0
  2561. package/dist/src/components/control/choice/multiselect/CwMultiselect.d.ts +13 -0
  2562. package/dist/src/components/control/choice/multiselect/CwMultiselect.d.ts.map +1 -0
  2563. package/dist/src/components/control/choice/multiselect/CwOptionList.d.ts +14 -0
  2564. package/dist/src/components/control/choice/multiselect/CwOptionList.d.ts.map +1 -0
  2565. package/dist/src/components/control/choice/option/CwOption.d.ts +1 -3
  2566. package/dist/src/components/control/choice/option/CwOption.d.ts.map +1 -1
  2567. package/dist/src/components/control/choice/select/CwSelect.d.ts +1 -7
  2568. package/dist/src/components/control/choice/select/CwSelect.d.ts.map +1 -1
  2569. package/dist/src/components/control/choice/toggle/CwToggle.d.ts +1 -1
  2570. package/dist/src/components/control/choice/toggle/CwToggle.d.ts.map +1 -1
  2571. package/dist/src/components/control/input/color/CwInputColor.d.ts +0 -30
  2572. package/dist/src/components/control/input/color/CwInputColor.d.ts.map +1 -1
  2573. package/dist/src/components/control/input/date-picker/CwInputDatePicker.d.ts.map +1 -1
  2574. package/dist/src/components/control/input/date-text/CwInputDateText.d.ts +4 -4
  2575. package/dist/src/components/control/input/date-text/CwInputDateText.d.ts.map +1 -1
  2576. package/dist/src/components/control/input/file/CwFileUploadMultiple.d.ts +0 -16
  2577. package/dist/src/components/control/input/file/CwFileUploadMultiple.d.ts.map +1 -1
  2578. package/dist/src/components/control/input/new-dates/CwDatePicker.d.ts +1 -10
  2579. package/dist/src/components/control/input/new-dates/CwDatePicker.d.ts.map +1 -1
  2580. package/dist/src/components/control/input/new-dates/CwDateRangePicker.d.ts.map +1 -1
  2581. package/dist/src/components/control/input/new-dates/CwDateTimePicker.d.ts +1 -8
  2582. package/dist/src/components/control/input/new-dates/CwDateTimePicker.d.ts.map +1 -1
  2583. package/dist/src/components/control/input/new-dates/CwDateTimePickerCompact.d.ts +1 -8
  2584. package/dist/src/components/control/input/new-dates/CwDateTimePickerCompact.d.ts.map +1 -1
  2585. package/dist/src/components/control/input/new-dates/CwTimePicker.d.ts.map +1 -1
  2586. package/dist/src/components/control/input/new-dates/dateRangePresets.d.ts.map +1 -1
  2587. package/dist/src/components/control/input/text/CwInputText.d.ts +0 -7
  2588. package/dist/src/components/control/input/text/CwInputText.d.ts.map +1 -1
  2589. package/dist/src/components/control/input/text-area/CwTextArea.d.ts +0 -6
  2590. package/dist/src/components/control/input/text-area/CwTextArea.d.ts.map +1 -1
  2591. package/dist/src/components/custom/find-airport/CwFindAirportComp.d.ts +1 -37
  2592. package/dist/src/components/custom/find-airport/CwFindAirportComp.d.ts.map +1 -1
  2593. package/dist/src/components/custom/scheduler/CwSchedulerComp.d.ts.map +1 -1
  2594. package/dist/src/components/custom/scheduler/CwSuperSchedulerComp.d.ts.map +1 -1
  2595. package/dist/src/components/custom/scheduler/components/day_headers/MyDaysHeader.d.ts +3 -0
  2596. package/dist/src/components/custom/scheduler/components/day_headers/MyDaysHeader.d.ts.map +1 -1
  2597. package/dist/src/components/custom/scheduler/components/scheduler_content_area/SchedulerContentArea.d.ts.map +1 -1
  2598. package/dist/src/components/custom/scheduler/components/time_line/TimeLine.d.ts.map +1 -1
  2599. package/dist/src/components/custom/scheduler/logic/dates/addMinutesToDateFromPx.d.ts.map +1 -1
  2600. package/dist/src/components/custom/scheduler/logic/dates/daysBetweenTwoDates.d.ts.map +1 -1
  2601. package/dist/src/components/custom/scheduler/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts.map +1 -1
  2602. package/dist/src/components/custom/scheduler/logic/dates/getFormatedTimeForHeader.d.ts.map +1 -1
  2603. package/dist/src/components/custom/scheduler/logic/dates/getMonthHeaderData.d.ts.map +1 -1
  2604. package/dist/src/components/custom/scheduler/logic/dates/getWeekHeaderDataFromWeekRange.d.ts.map +1 -1
  2605. package/dist/src/components/custom/scheduler/logic/dates/listOfDatesToWeeks.d.ts.map +1 -1
  2606. package/dist/src/components/custom/scheduler/logic/divisions/calculateDivisionType.d.ts.map +1 -1
  2607. package/dist/src/components/custom/scheduler/logic/divisions/calculateDivisions.d.ts.map +1 -1
  2608. package/dist/src/components/custom/scheduler/logic/filtering/filterEvents.d.ts.map +1 -1
  2609. package/dist/src/components/custom/scheduler/logic/filtering/filterResources.d.ts.map +1 -1
  2610. package/dist/src/components/custom/scheduler/logic/filtering/hasSameProperties.d.ts.map +1 -1
  2611. package/dist/src/components/custom/scheduler/logic/pixels/getHeightLineScheduler.d.ts.map +1 -1
  2612. package/dist/src/components/custom/scheduler/logic/pixels/getPixelsForEvent.d.ts.map +1 -1
  2613. package/dist/src/components/custom/scheduler/logic/pixels/heightScheduler.d.ts.map +1 -1
  2614. package/dist/src/components/custom/scheduler/logic/pixels/heightSchedulerPinned.d.ts.map +1 -1
  2615. package/dist/src/components/custom/scheduler/logic/state_handle/doubleClickOnResource.d.ts.map +1 -1
  2616. package/dist/src/components/custom/scheduler/logic/state_handle/handleResourceChange.d.ts.map +1 -1
  2617. package/dist/src/components/custom/scheduler/logic/state_handle/onDragOver.d.ts.map +1 -1
  2618. package/dist/src/components/custom/scheduler/logic/state_handle/onDropEventToResource.d.ts.map +1 -1
  2619. package/dist/src/components/custom/scheduler/logic/strings/compareStrings.d.ts.map +1 -1
  2620. package/dist/src/components/custom/scheduler/logic/ui/checkIfSlotAvailable.d.ts.map +1 -1
  2621. package/dist/src/components/custom/scheduler/logic/ui/getEventsOfResource.d.ts.map +1 -1
  2622. package/dist/src/components/custom/scheduler/logic/ui/getTimeHeaders.d.ts.map +1 -1
  2623. package/dist/src/components/custom/scheduler/logic/ui/isAllowedToMove.d.ts.map +1 -1
  2624. package/dist/src/components/custom/scheduler/logic/ui/updateResourceVisibility.d.ts.map +1 -1
  2625. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.d.ts +1 -4
  2626. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.d.ts.map +1 -1
  2627. package/dist/src/components/custom/scheduler-new/presentation/SchedulerPresenter.d.ts.map +1 -1
  2628. package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderDivision.d.ts.map +1 -1
  2629. package/dist/src/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.d.ts +1 -6
  2630. package/dist/src/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.d.ts.map +1 -1
  2631. package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.d.ts +0 -1
  2632. package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.d.ts.map +1 -1
  2633. package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts +0 -1
  2634. package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts.map +1 -1
  2635. package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.d.ts.map +1 -1
  2636. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts +1 -3
  2637. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts.map +1 -1
  2638. package/dist/src/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.d.ts +0 -1
  2639. package/dist/src/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.d.ts.map +1 -1
  2640. package/dist/src/components/custom/scheduler-new/presentation/helpers.d.ts +9 -0
  2641. package/dist/src/components/custom/scheduler-new/presentation/helpers.d.ts.map +1 -1
  2642. package/dist/src/components/custom/scheduler-new/presentation/logic/WeekendCalc.d.ts.map +1 -1
  2643. package/dist/src/components/custom/scheduler-new/presentation/logic/dateFromPercentage.d.ts.map +1 -1
  2644. package/dist/src/components/custom/scheduler-new/presentation/logic/eventIsVisible.d.ts.map +1 -1
  2645. package/dist/src/components/custom/scheduler-new/presentation/logic/getDefaultDivisions.d.ts.map +1 -1
  2646. package/dist/src/components/custom/scheduler-new/presentation/logic/getDivisions.d.ts +1 -1
  2647. package/dist/src/components/custom/scheduler-new/presentation/logic/getDivisions.d.ts.map +1 -1
  2648. package/dist/src/components/custom/scheduler-new/presentation/logic/getEventSizes.d.ts.map +1 -1
  2649. package/dist/src/components/custom/scheduler-new/presentation/logic/getLinesByDivisions.d.ts.map +1 -1
  2650. package/dist/src/components/custom/scheduler-new/presentation/logic/separateEventsToInnerRows.d.ts.map +1 -1
  2651. package/dist/src/components/custom/scheduler-new/presentation/logic/sortByCategoryAndTitle.d.ts.map +1 -1
  2652. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerState.d.ts +0 -1
  2653. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerState.d.ts.map +1 -1
  2654. package/dist/src/components/custom/scheduler-temporal/CwSchedulerComp2.d.ts +24 -0
  2655. package/dist/src/components/custom/scheduler-temporal/CwSchedulerComp2.d.ts.map +1 -0
  2656. package/dist/src/components/custom/scheduler-temporal/CwSuperSchedulerComp.d.ts +86 -0
  2657. package/dist/src/components/custom/scheduler-temporal/CwSuperSchedulerComp.d.ts.map +1 -0
  2658. package/dist/src/components/custom/scheduler-temporal/components/EventRender.d.ts +10 -0
  2659. package/dist/src/components/custom/scheduler-temporal/components/EventRender.d.ts.map +1 -0
  2660. package/dist/src/components/custom/scheduler-temporal/components/ResourceListRender.d.ts +20 -0
  2661. package/dist/src/components/custom/scheduler-temporal/components/ResourceListRender.d.ts.map +1 -0
  2662. package/dist/src/components/custom/scheduler-temporal/components/ResourceRender.d.ts +14 -0
  2663. package/dist/src/components/custom/scheduler-temporal/components/ResourceRender.d.ts.map +1 -0
  2664. package/dist/src/components/custom/scheduler-temporal/components/day_headers/DayHeader.d.ts +11 -0
  2665. package/dist/src/components/custom/scheduler-temporal/components/day_headers/DayHeader.d.ts.map +1 -0
  2666. package/dist/src/components/custom/scheduler-temporal/components/day_headers/MonthHeader.d.ts +11 -0
  2667. package/dist/src/components/custom/scheduler-temporal/components/day_headers/MonthHeader.d.ts.map +1 -0
  2668. package/dist/src/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.d.ts +13 -0
  2669. package/dist/src/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.d.ts.map +1 -0
  2670. package/dist/src/components/custom/scheduler-temporal/components/day_headers/WeekHeader.d.ts +11 -0
  2671. package/dist/src/components/custom/scheduler-temporal/components/day_headers/WeekHeader.d.ts.map +1 -0
  2672. package/dist/src/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.d.ts +14 -0
  2673. package/dist/src/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.d.ts.map +1 -0
  2674. package/dist/src/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.d.ts +23 -0
  2675. package/dist/src/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.d.ts.map +1 -0
  2676. package/dist/src/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.d.ts +8 -0
  2677. package/dist/src/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.d.ts.map +1 -0
  2678. package/dist/src/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.d.ts +12 -0
  2679. package/dist/src/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.d.ts.map +1 -0
  2680. package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeader.d.ts +12 -0
  2681. package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeader.d.ts.map +1 -0
  2682. package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.d.ts +10 -0
  2683. package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.d.ts.map +1 -0
  2684. package/dist/src/components/custom/scheduler-temporal/components/time_line/TimeLine.d.ts +12 -0
  2685. package/dist/src/components/custom/scheduler-temporal/components/time_line/TimeLine.d.ts.map +1 -0
  2686. package/dist/src/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.d.ts +2 -0
  2687. package/dist/src/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.d.ts.map +1 -0
  2688. package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.d.ts +2 -0
  2689. package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.d.ts.map +1 -0
  2690. package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts +2 -0
  2691. package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts.map +1 -0
  2692. package/dist/src/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.d.ts +7 -0
  2693. package/dist/src/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.d.ts.map +1 -0
  2694. package/dist/src/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.d.ts +10 -0
  2695. package/dist/src/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.d.ts.map +1 -0
  2696. package/dist/src/components/custom/scheduler-temporal/logic/dates/getUtcToday.d.ts +2 -0
  2697. package/dist/src/components/custom/scheduler-temporal/logic/dates/getUtcToday.d.ts.map +1 -0
  2698. package/dist/src/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.d.ts +7 -0
  2699. package/dist/src/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.d.ts.map +1 -0
  2700. package/dist/src/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.d.ts +8 -0
  2701. package/dist/src/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.d.ts.map +1 -0
  2702. package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.d.ts +2 -0
  2703. package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.d.ts.map +1 -0
  2704. package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.d.ts +2 -0
  2705. package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.d.ts.map +1 -0
  2706. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.d.ts +15 -0
  2707. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.d.ts.map +1 -0
  2708. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterEvents.d.ts +3 -0
  2709. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterEvents.d.ts.map +1 -0
  2710. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterResources.d.ts +3 -0
  2711. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterResources.d.ts.map +1 -0
  2712. package/dist/src/components/custom/scheduler-temporal/logic/filtering/hasSameProperties.d.ts +3 -0
  2713. package/dist/src/components/custom/scheduler-temporal/logic/filtering/hasSameProperties.d.ts.map +1 -0
  2714. package/dist/src/components/custom/scheduler-temporal/logic/onDrop/OnDrop.d.ts +13 -0
  2715. package/dist/src/components/custom/scheduler-temporal/logic/onDrop/OnDrop.d.ts.map +1 -0
  2716. package/dist/src/components/custom/scheduler-temporal/logic/pixels/getHeightLineScheduler.d.ts +2 -0
  2717. package/dist/src/components/custom/scheduler-temporal/logic/pixels/getHeightLineScheduler.d.ts.map +1 -0
  2718. package/dist/src/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.d.ts +17 -0
  2719. package/dist/src/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.d.ts.map +1 -0
  2720. package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightScheduler.d.ts +3 -0
  2721. package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightScheduler.d.ts.map +1 -0
  2722. package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightSchedulerPinned.d.ts +2 -0
  2723. package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightSchedulerPinned.d.ts.map +1 -0
  2724. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.d.ts +4 -0
  2725. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.d.ts.map +1 -0
  2726. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handlePropChanges.d.ts +6 -0
  2727. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handlePropChanges.d.ts.map +1 -0
  2728. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handleResourceChange.d.ts +5 -0
  2729. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handleResourceChange.d.ts.map +1 -0
  2730. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDragOver.d.ts +2 -0
  2731. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDragOver.d.ts.map +1 -0
  2732. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.d.ts +5 -0
  2733. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.d.ts.map +1 -0
  2734. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.d.ts +4 -0
  2735. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.d.ts.map +1 -0
  2736. package/dist/src/components/custom/scheduler-temporal/logic/strings/compareStrings.d.ts +2 -0
  2737. package/dist/src/components/custom/scheduler-temporal/logic/strings/compareStrings.d.ts.map +1 -0
  2738. package/dist/src/components/custom/scheduler-temporal/logic/strings/getGUID.d.ts +2 -0
  2739. package/dist/src/components/custom/scheduler-temporal/logic/strings/getGUID.d.ts.map +1 -0
  2740. package/dist/src/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.d.ts +3 -0
  2741. package/dist/src/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.d.ts.map +1 -0
  2742. package/dist/src/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.d.ts +6 -0
  2743. package/dist/src/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.d.ts.map +1 -0
  2744. package/dist/src/components/custom/scheduler-temporal/logic/ui/getHasPropsChanged.d.ts +4 -0
  2745. package/dist/src/components/custom/scheduler-temporal/logic/ui/getHasPropsChanged.d.ts.map +1 -0
  2746. package/dist/src/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.d.ts +2 -0
  2747. package/dist/src/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.d.ts.map +1 -0
  2748. package/dist/src/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.d.ts +3 -0
  2749. package/dist/src/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.d.ts.map +1 -0
  2750. package/dist/src/components/custom/scheduler-temporal/logic/ui/shouldTriggerScroll.d.ts +4 -0
  2751. package/dist/src/components/custom/scheduler-temporal/logic/ui/shouldTriggerScroll.d.ts.map +1 -0
  2752. package/dist/src/components/custom/scheduler-temporal/logic/ui/updateResourceVisibility.d.ts +3 -0
  2753. package/dist/src/components/custom/scheduler-temporal/logic/ui/updateResourceVisibility.d.ts.map +1 -0
  2754. package/dist/src/components/custom/scheduler-temporal/state/CblDragAndDrop.d.ts +11 -0
  2755. package/dist/src/components/custom/scheduler-temporal/state/CblDragAndDrop.d.ts.map +1 -0
  2756. package/dist/src/components/custom/scheduler-temporal/state/CwSchedulerProps.d.ts +43 -0
  2757. package/dist/src/components/custom/scheduler-temporal/state/CwSchedulerProps.d.ts.map +1 -0
  2758. package/dist/src/components/custom/scheduler-temporal/state/Resource.d.ts +14 -0
  2759. package/dist/src/components/custom/scheduler-temporal/state/Resource.d.ts.map +1 -0
  2760. package/dist/src/components/custom/scheduler-temporal/state/State.d.ts +25 -0
  2761. package/dist/src/components/custom/scheduler-temporal/state/State.d.ts.map +1 -0
  2762. package/dist/src/components/custom/scheduler-temporal/state/cblEvent.d.ts +18 -0
  2763. package/dist/src/components/custom/scheduler-temporal/state/cblEvent.d.ts.map +1 -0
  2764. package/dist/src/components/custom/scheduler-temporal/state/cblEventCompProps.d.ts +7 -0
  2765. package/dist/src/components/custom/scheduler-temporal/state/cblEventCompProps.d.ts.map +1 -0
  2766. package/dist/src/components/custom/scheduler-temporal/state/resourceCompProps2.d.ts +6 -0
  2767. package/dist/src/components/custom/scheduler-temporal/state/resourceCompProps2.d.ts.map +1 -0
  2768. package/dist/src/components/custom/super-scheduler/PinRowHeader.d.ts +2 -1
  2769. package/dist/src/components/custom/super-scheduler/PinRowHeader.d.ts.map +1 -1
  2770. package/dist/src/components/custom/super-scheduler/SuperScheduler.d.ts +0 -3
  2771. package/dist/src/components/custom/super-scheduler/SuperScheduler.d.ts.map +1 -1
  2772. package/dist/src/components/custom/super-scheduler/SuperSchedulerPresenter.d.ts.map +1 -1
  2773. package/dist/src/components/display/data/generic_tooltip/CwGenericTooltip.d.ts +0 -13
  2774. package/dist/src/components/display/data/generic_tooltip/CwGenericTooltip.d.ts.map +1 -1
  2775. package/dist/src/components/display/data/table/CwTable.d.ts +1 -4
  2776. package/dist/src/components/display/data/table/CwTable.d.ts.map +1 -1
  2777. package/dist/src/components/display/data/table-serverside/CwTableServerSide.d.ts +1 -4
  2778. package/dist/src/components/display/data/table-serverside/CwTableServerSide.d.ts.map +1 -1
  2779. package/dist/src/components/display/text/message/CwMessage.d.ts +2 -3
  2780. package/dist/src/components/display/text/message/CwMessage.d.ts.map +1 -1
  2781. package/dist/src/components/display/text/note/CwNote.d.ts +1 -1
  2782. package/dist/src/components/display/text/note/CwNote.d.ts.map +1 -1
  2783. package/dist/src/components/display/text/tag/CwChip.d.ts +1 -1
  2784. package/dist/src/components/display/text/tag/CwChip.d.ts.map +1 -1
  2785. package/dist/src/components/display/text/tag/CwTag.d.ts +15 -0
  2786. package/dist/src/components/display/text/tag/CwTag.d.ts.map +1 -0
  2787. package/dist/src/components/display/text/tooltip/CwTooltip.d.ts +8 -0
  2788. package/dist/src/components/display/text/tooltip/CwTooltip.d.ts.map +1 -0
  2789. package/dist/src/components/layout/dialog/CwDialog.d.ts +0 -2
  2790. package/dist/src/components/layout/dialog/CwDialog.d.ts.map +1 -1
  2791. package/dist/src/components/layout/dialog/CwDialogManager.d.ts.map +1 -1
  2792. package/dist/src/components/layout/list/sortable/CwSortableList.d.ts +1 -2
  2793. package/dist/src/components/layout/list/sortable/CwSortableList.d.ts.map +1 -1
  2794. package/dist/src/components/layout/modal/legacy/cw_modal.d.ts.map +1 -1
  2795. package/dist/src/components/layout/modal/legacy/cw_modal_confirm.d.ts +16 -0
  2796. package/dist/src/components/layout/modal/legacy/cw_modal_confirm.d.ts.map +1 -0
  2797. package/dist/src/components/layout/modal/legacy/cw_modal_iframe.d.ts +21 -0
  2798. package/dist/src/components/layout/modal/legacy/cw_modal_iframe.d.ts.map +1 -0
  2799. package/dist/src/components/layout/modal/legacy/cw_modal_report.d.ts +1 -0
  2800. package/dist/src/components/layout/modal/legacy/cw_modal_report.d.ts.map +1 -1
  2801. package/dist/src/components/layout/table/grouped/CwTableGrouped.d.ts +0 -2
  2802. package/dist/src/components/layout/table/grouped/CwTableGrouped.d.ts.map +1 -1
  2803. package/dist/src/components/layout/tabs/CwTabs.d.ts +0 -2
  2804. package/dist/src/components/layout/tabs/CwTabs.d.ts.map +1 -1
  2805. package/dist/src/index.d.ts +1 -14
  2806. package/dist/src/index.d.ts.map +1 -1
  2807. package/dist/test/jest.setup.d.ts +2 -0
  2808. package/dist/test/jest.setup.d.ts.map +1 -0
  2809. package/package.json +2 -2
  2810. package/dist/src/common/hooks/useDropdownPortal.d.ts +0 -86
  2811. package/dist/src/common/hooks/useDropdownPortal.d.ts.map +0 -1
  2812. package/dist/src/common/interfaces/CwFormTypes.d.ts +0 -5
  2813. package/dist/src/common/interfaces/CwFormTypes.d.ts.map +0 -1
  2814. package/dist/src/components/control/choice/checkbox/CwCheck.d.ts +0 -15
  2815. package/dist/src/components/control/choice/checkbox/CwCheck.d.ts.map +0 -1
  2816. package/dist/src/components/control/choice/checkbox/CwCheckboxGroup.d.ts +0 -35
  2817. package/dist/src/components/control/choice/checkbox/CwCheckboxGroup.d.ts.map +0 -1
  2818. package/dist/src/components/control/choice/dropdown/CwPopoverButton.d.ts +0 -35
  2819. package/dist/src/components/control/choice/dropdown/CwPopoverButton.d.ts.map +0 -1
  2820. package/dist/src/components/control/choice/select/CwDropdown.d.ts +0 -56
  2821. package/dist/src/components/control/choice/select/CwDropdown.d.ts.map +0 -1
  2822. package/dist/src/components/control/choice/tag-selector/CwTagSelector.d.ts +0 -68
  2823. package/dist/src/components/control/choice/tag-selector/CwTagSelector.d.ts.map +0 -1
  2824. package/dist/src/components/control/input/date-picker/datePickerUtils.d.ts +0 -38
  2825. package/dist/src/components/control/input/date-picker/datePickerUtils.d.ts.map +0 -1
  2826. package/dist/src/components/control/input/new-dates/CwDatePickerTemporal.d.ts +0 -48
  2827. package/dist/src/components/control/input/new-dates/CwDatePickerTemporal.d.ts.map +0 -1
  2828. package/dist/src/components/control/input/new-dates/datePickerHelpers.d.ts +0 -20
  2829. package/dist/src/components/control/input/new-dates/datePickerHelpers.d.ts.map +0 -1
  2830. package/dist/src/components/control/input/new-dates/usePickerPopup.d.ts +0 -23
  2831. package/dist/src/components/control/input/new-dates/usePickerPopup.d.ts.map +0 -1
  2832. package/dist/src/components/control/input/new-dates/utils/timezoneHelpers.d.ts +0 -38
  2833. package/dist/src/components/control/input/new-dates/utils/timezoneHelpers.d.ts.map +0 -1
  2834. package/dist/src/components/custom/find-crewmember/CwFindCrewmemberComp.d.ts +0 -44
  2835. package/dist/src/components/custom/find-crewmember/CwFindCrewmemberComp.d.ts.map +0 -1
  2836. package/dist/src/components/custom/scheduler-new/presentation/components/row/IndicatorRow.d.ts +0 -18
  2837. package/dist/src/components/custom/scheduler-new/presentation/components/row/IndicatorRow.d.ts.map +0 -1
  2838. package/dist/src/components/custom/scheduler-new/presentation/logic/filterVisibleEvents.d.ts +0 -3
  2839. package/dist/src/components/custom/scheduler-new/presentation/logic/filterVisibleEvents.d.ts.map +0 -1
  2840. package/dist/src/components/custom/scheduler-new/presentation/logic/isToday.d.ts +0 -2
  2841. package/dist/src/components/custom/scheduler-new/presentation/logic/isToday.d.ts.map +0 -1
  2842. package/dist/src/components/display/data/table_sortable/CwSortableTable.d.ts +0 -74
  2843. package/dist/src/components/display/data/table_sortable/CwSortableTable.d.ts.map +0 -1
  2844. package/dist/src/components/display/data/table_sortable/useSortableTable.d.ts +0 -42
  2845. package/dist/src/components/display/data/table_sortable/useSortableTable.d.ts.map +0 -1
  2846. package/dist/src/components/display/data/tooltip_manager/CwTooltip.d.ts +0 -25
  2847. package/dist/src/components/display/data/tooltip_manager/CwTooltip.d.ts.map +0 -1
  2848. package/dist/src/components/display/data/tooltip_manager/CwTooltipManager.d.ts +0 -19
  2849. package/dist/src/components/display/data/tooltip_manager/CwTooltipManager.d.ts.map +0 -1
  2850. package/dist/src/components/layout/master-detail/CwMasterDetail.d.ts +0 -41
  2851. package/dist/src/components/layout/master-detail/CwMasterDetail.d.ts.map +0 -1
  2852. package/dist/src/dev/index.d.ts +0 -5
  2853. package/dist/src/dev/index.d.ts.map +0 -1
  2854. package/dist/src/dev/palette.d.ts +0 -3
  2855. package/dist/src/dev/palette.d.ts.map +0 -1
  2856. package/dist/src/dev/previews.d.ts +0 -3
  2857. package/dist/src/dev/previews.d.ts.map +0 -1
  2858. package/dist/src/dev/useInitial.d.ts +0 -3
  2859. package/dist/src/dev/useInitial.d.ts.map +0 -1
  2860. package/dist/src/main.d.ts +0 -2
  2861. package/dist/src/main.d.ts.map +0 -1
  2862. package/dist/src/playground/PlaygroundApp.d.ts +0 -4
  2863. package/dist/src/playground/PlaygroundApp.d.ts.map +0 -1
  2864. package/dist/src/playground/pages/ColorContrastPage.d.ts +0 -3
  2865. package/dist/src/playground/pages/ColorContrastPage.d.ts.map +0 -1
  2866. package/dist/src/playground/pages/DatePickerLocalePage.d.ts +0 -3
  2867. package/dist/src/playground/pages/DatePickerLocalePage.d.ts.map +0 -1
  2868. package/dist/src/playground/pages/DatePickerTemporalPage.d.ts +0 -3
  2869. package/dist/src/playground/pages/DatePickerTemporalPage.d.ts.map +0 -1
  2870. package/dist/src/playground/pages/SelectorsPage.d.ts +0 -3
  2871. package/dist/src/playground/pages/SelectorsPage.d.ts.map +0 -1
  2872. package/dist/src/playground/pages/TablePaginationPage.d.ts +0 -3
  2873. package/dist/src/playground/pages/TablePaginationPage.d.ts.map +0 -1
  2874. package/dist/test/components/control/input/date-picker/datePickerUtils.test.d.ts +0 -2
  2875. package/dist/test/components/control/input/date-picker/datePickerUtils.test.d.ts.map +0 -1
  2876. package/dist/test/components/control/input/new-dates/datePickerHelpers.test.d.ts +0 -2
  2877. package/dist/test/components/control/input/new-dates/datePickerHelpers.test.d.ts.map +0 -1
  2878. package/dist/test/components/control/input/new-dates/timezoneHelpers.test.d.ts +0 -2
  2879. package/dist/test/components/control/input/new-dates/timezoneHelpers.test.d.ts.map +0 -1
  2880. package/dist/test/components/custom/new-scheduler/presentation/header/getStartEnd.test.d.ts +0 -2
  2881. package/dist/test/components/custom/new-scheduler/presentation/header/getStartEnd.test.d.ts.map +0 -1
  2882. package/dist/test/components/custom/new-scheduler/presentation/logic/dateFromPercentage.test.d.ts +0 -2
  2883. package/dist/test/components/custom/new-scheduler/presentation/logic/dateFromPercentage.test.d.ts.map +0 -1
  2884. package/dist/test/components/custom/new-scheduler/presentation/logic/eventIsVisible.test.d.ts +0 -2
  2885. package/dist/test/components/custom/new-scheduler/presentation/logic/eventIsVisible.test.d.ts.map +0 -1
  2886. package/dist/test/components/custom/new-scheduler/presentation/logic/filterVisibleEvents.test.d.ts +0 -2
  2887. package/dist/test/components/custom/new-scheduler/presentation/logic/filterVisibleEvents.test.d.ts.map +0 -1
  2888. package/dist/test/components/custom/new-scheduler/presentation/logic/isToday.test.d.ts +0 -2
  2889. package/dist/test/components/custom/new-scheduler/presentation/logic/isToday.test.d.ts.map +0 -1
  2890. package/dist/test/components/custom/scheduler/getFormattedTimeForHeader.test.d.ts +0 -2
  2891. package/dist/test/components/custom/scheduler/getFormattedTimeForHeader.test.d.ts.map +0 -1
  2892. package/dist/test/vitest.setup.d.ts +0 -2
  2893. package/dist/test/vitest.setup.d.ts.map +0 -1
package/dist/index.es.js CHANGED
@@ -1,9 +1,11 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
- import React__default, { cloneElement, useEffect, useState, useCallback, useRef, useMemo, useLayoutEffect, forwardRef, useImperativeHandle, createElement, memo, Fragment as Fragment$1, Component } from 'react';
3
+ import React__default, { cloneElement, useEffect, useState, useCallback, useRef, useMemo, forwardRef, useLayoutEffect, useImperativeHandle, createElement, memo, Fragment as Fragment$1, Component } from 'react';
4
4
  import { createRoot } from 'react-dom/client';
5
5
  import { createPortal } from 'react-dom';
6
+ import { Tooltip } from 'antd';
6
7
  import Draggable from 'react-draggable';
8
+ import moment from 'moment';
7
9
  import { format } from 'date-fns';
8
10
  import { enGB } from 'date-fns/locale';
9
11
  import { DayPicker } from 'react-day-picker';
@@ -60,6 +62,10 @@ function CwLabel(props) {
60
62
  return (jsx("label", { className: "cw-label", style: { textAlign: justify, width: labelWidth, height: labelHeight, margin: margin ?? "1px 0 0 0" }, ...labelProps, children: labelProps.children ?? text }));
61
63
  }
62
64
 
65
+ function CwTooltip(CwelltTooltipProps) {
66
+ return (jsxs("div", { className: "cwelltTooltip", children: [jsx("div", { className: "cwelltTooltipTitle", style: CwelltTooltipProps.tooltipTitleStyle, children: jsx("span", { children: CwelltTooltipProps.tooltipTitle }) }), CwelltTooltipProps.children] }));
67
+ }
68
+
63
69
  function colorToHSL(color) {
64
70
  const hexColor = colorToHEX(color);
65
71
  const hex = hexColor.replace('#', '');
@@ -105,60 +111,36 @@ function getHSLColor(color, alpha = 1) {
105
111
  const hsl = colorToHSL(color);
106
112
  return `hsla(${hsl.h}, ${hsl.s}%, ${hsl.l}%, ${alpha})`;
107
113
  }
108
- function hslToLinearRgb(h, s, l) {
109
- const sNorm = s / 100;
110
- const lNorm = l / 100;
111
- const a = sNorm * Math.min(lNorm, 1 - lNorm);
112
- const f = (n) => {
113
- const k = (n + h / 30) % 12;
114
- return lNorm - a * Math.max(-1, Math.min(k - 3, Math.min(9 - k, 1)));
115
- };
116
- return [f(0), f(8), f(4)];
117
- }
118
- function srgbLuminance(r, g, b) {
119
- const lin = (c) => c <= 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);
120
- return 0.2126 * lin(r) + 0.7152 * lin(g) + 0.0722 * lin(b);
121
- }
122
- function wcagContrastRatio(lum1, lum2) {
123
- const lighter = Math.max(lum1, lum2);
124
- const darker = Math.min(lum1, lum2);
125
- return (lighter + 0.05) / (darker + 0.05);
126
- }
127
114
  function getContrastColor(color) {
128
- if (color === null)
115
+ if (color === null) {
129
116
  return '#000000';
117
+ }
130
118
  const hsl = colorToHSL(color);
119
+ // Saturated greenyellow and cyan tones need lower luminance threshold (40-35)
120
+ // Saturated mediumblue and blueviolet tones need higher luminance threshold (55-60)
121
+ // Saturated orangered tones need lower luminance threshold (45)
122
+ const isYellowGreen = (hsl.h >= 45 && hsl.h <= 180);
123
+ const isBlueViolet = (hsl.h >= 210 && hsl.h <= 300);
124
+ const isRedOrange = (hsl.h >= 0 && hsl.h <= 30) || (hsl.h >= 330 && hsl.h <= 360);
125
+ let threshold = 50;
126
+ if (isYellowGreen) {
127
+ threshold = 40;
128
+ if (hsl.s >= 70) {
129
+ threshold = 35;
130
+ }
131
+ }
132
+ else if (isBlueViolet) {
133
+ threshold = 55;
134
+ if (hsl.s >= 70) {
135
+ threshold = 60;
136
+ }
137
+ }
138
+ else if (isRedOrange && hsl.s >= 80) {
139
+ threshold = 45;
140
+ }
141
+ const contrastL = hsl.l >= threshold ? 20 : 90;
131
142
  const contrastS = Math.min(hsl.s, 90);
132
- const bgRgb = hslToLinearRgb(hsl.h, hsl.s, hsl.l);
133
- const bgLum = srgbLuminance(...bgRgb);
134
- const darkL = 15;
135
- const lightL = 90;
136
- const darkLum = srgbLuminance(...hslToLinearRgb(hsl.h, contrastS, darkL));
137
- const lightLum = srgbLuminance(...hslToLinearRgb(hsl.h, contrastS, lightL));
138
- const darkRatio = wcagContrastRatio(bgLum, darkLum);
139
- const lightRatio = wcagContrastRatio(bgLum, lightLum);
140
- // On saturated backgrounds, dark-tinted text blends visually with the
141
- // vibrant color even when math says it has better contrast.
142
- // Prefer light text unless dark has an overwhelmingly higher ratio.
143
- const saturatedBias = hsl.s >= 30 && bgLum < 0.4;
144
- // Mid-grays (#777–#999): dark text "sinks" into the background while
145
- // white text pops, even though dark wins on WCAG ratio.
146
- const midGrayBias = hsl.s < 15 && bgLum >= 0.18 && bgLum <= 0.35;
147
- const goLight = saturatedBias
148
- ? darkRatio < lightRatio * 3
149
- : midGrayBias || lightRatio >= darkRatio;
150
- let targetL = goLight ? lightL : darkL;
151
- let bestRatio = goLight ? lightRatio : darkRatio;
152
- if (bestRatio < 4.5) {
153
- const step = goLight ? 5 : -5;
154
- const limit = goLight ? 95 : 0;
155
- while (bestRatio < 4.5 && targetL !== limit) {
156
- targetL = goLight ? Math.min(targetL + step, limit) : Math.max(targetL + step, limit);
157
- const candidateLum = srgbLuminance(...hslToLinearRgb(hsl.h, contrastS, targetL));
158
- bestRatio = wcagContrastRatio(bgLum, candidateLum);
159
- }
160
- }
161
- return `hsl(${hsl.h}, ${contrastS}%, ${targetL}%)`;
143
+ return `hsl(${hsl.h}, ${contrastS}%, ${contrastL}%)`;
162
144
  }
163
145
 
164
146
  const SVG_ICONS = {
@@ -235,7 +217,7 @@ const CwChip = ({ label, colorScheme = 'info', customColor, variant = 'soft', cl
235
217
  className,
236
218
  closable ? 'cw-chip-closable' : '',
237
219
  ].filter(Boolean).join(' ');
238
- return (jsxs("span", { className: chipClassNames, "data-color-scheme": colorScheme, "data-variant": variant, style: chipStyle, children: [icon && jsx(CwIcon, { iconId: icon }), label && jsx("span", { children: label }), closable && (jsx("button", { className: "cw-chip-close-button", onClick: handleClose, "aria-label": "Remove", type: "button", children: jsx("span", { className: "cwi-icons cwi-close" }) }))] }));
220
+ return (jsxs("span", { className: chipClassNames, "data-color-scheme": colorScheme, "data-variant": variant, style: chipStyle, children: [icon && jsx(CwIcon, { iconId: icon }), jsx("span", { children: label }), closable && (jsx("button", { className: "cw-chip-close-button", onClick: handleClose, "aria-label": "Remove", type: "button", children: jsx("span", { className: "cwi-icons cwi-close" }) }))] }));
239
221
  };
240
222
 
241
223
  const CW_DEFAULT_MESSAGE_DURATION = 2000;
@@ -253,7 +235,7 @@ const CwMessage = props => {
253
235
  }, props.duration ?? CW_DEFAULT_MESSAGE_DURATION);
254
236
  return () => clearTimeout(timer);
255
237
  }, [props]);
256
- return (jsxs("div", { className: "cw-message", "data-message-type": Object.keys(CwMessageType).find(key => CwMessageType[key] === props.messageType), onClick: props.onClick, style: props.onClick ? { cursor: "pointer" } : undefined, children: [props.messageType && jsx(CwIcon, { iconId: props.messageType.toString(), size: "large" }), props.message] }));
238
+ return (jsxs("div", { className: "cw-message", "data-message-type": Object.keys(CwMessageType).find(key => CwMessageType[key] === props.messageType), children: [props.messageType && jsx(CwIcon, { iconId: props.messageType.toString(), size: "large" }), props.message] }));
257
239
  };
258
240
  /**
259
241
  * Hook for displaying inline messages within specific components.
@@ -316,11 +298,11 @@ class CwMessageManager {
316
298
  document.body.prepend(this.messageWrapper);
317
299
  this.root = createRoot(this.messageWrapper); // Create a root at the messageWrapper
318
300
  }
319
- showMessage(message, type, duration, onClick) {
301
+ showMessage(message, type, duration) {
320
302
  const msg = document.createElement("div");
321
303
  this.messageWrapper?.prepend(msg);
322
304
  const msgRoot = createRoot(msg); // Create a root for the new message
323
- msgRoot.render(jsx(CwMessage, { message: message, messageType: type, duration: duration, onClick: onClick, onClose: () => this.closeMessage(msgRoot) }));
305
+ msgRoot.render(jsx(CwMessage, { message: message, messageType: type, duration: duration, onClose: () => this.closeMessage(msgRoot) }));
324
306
  }
325
307
  closeMessage(msgRoot) {
326
308
  msgRoot.unmount(); // Unmount the message root
@@ -342,8 +324,8 @@ class CwMessageManager {
342
324
  *
343
325
  * @note For inline messages within components, use `CwNote` or `useCwMessage` hook instead
344
326
  */
345
- function CwDisplayMessage(message, type, duration, onClick) {
346
- CwMessageManager.getInstance().showMessage(message, type, duration, onClick);
327
+ function CwDisplayMessage(message, type, duration) {
328
+ CwMessageManager.getInstance().showMessage(message, type, duration);
347
329
  }
348
330
 
349
331
  /**
@@ -629,36 +611,40 @@ function CwLoading({ isLoading = false, text = '', size = 'regular', iconPositio
629
611
  * <CwLoading size="small" />
630
612
  */
631
613
  function CwLoadingSmall(CwelltLoadingAppointements) {
632
- return (jsx("div", { children: CwelltLoadingAppointements.isLoading === true ? (jsx("div", { className: "cw-loading-container", children: jsx("div", { className: "cw-loading" }) })) : (jsx("div", {})) }));
614
+ return (jsx("div", { children: CwelltLoadingAppointements.isLoading === true ? (
615
+ // * Show loading appointment
616
+ jsx("div", { className: "cw-loading-container", children: jsx("div", { className: "cw-loading" }) })) : (
617
+ // Show empty div
618
+ jsx("div", {})) }));
633
619
  }
634
620
 
635
- var styles$q = {"cw-generic-tooltip-content":"cw-generic-tooltip-module__cw-generic-tooltip-content__la-Si","cw-generic-tooltip":"cw-generic-tooltip-module__cw-generic-tooltip__Ij76M"};
621
+ var styles$k = {"cw-generic-tooltip-content":"cw-generic-tooltip-module_cw-generic-tooltip-content__la-Si","cw-generic-tooltip":"cw-generic-tooltip-module_cw-generic-tooltip__Ij76M"};
636
622
 
637
623
  // Constants moved outside to prevent recreation
638
- const margin$1 = 16;
624
+ const margin = 16;
639
625
  const defaultPosition = "right";
640
- const positionOrder$1 = ['right', 'bottom', 'left', 'top'];
626
+ const positionOrder = ['right', 'bottom', 'left', 'top'];
641
627
  // Memoized utility functions to prevent recreation
642
- const calculatePositionForSide$1 = (position, triggerRect, tooltipRect) => {
628
+ const calculatePositionForSide = (position, triggerRect, tooltipRect) => {
643
629
  switch (position) {
644
630
  case 'left':
645
631
  return {
646
632
  top: triggerRect.top + (triggerRect.height - tooltipRect.height) / 2,
647
- left: triggerRect.left - tooltipRect.width - margin$1
633
+ left: triggerRect.left - tooltipRect.width - margin
648
634
  };
649
635
  case 'right':
650
636
  return {
651
637
  top: triggerRect.top + (triggerRect.height - tooltipRect.height) / 2,
652
- left: triggerRect.right + margin$1
638
+ left: triggerRect.right + margin
653
639
  };
654
640
  case 'top':
655
641
  return {
656
- top: triggerRect.top - tooltipRect.height - margin$1,
642
+ top: triggerRect.top - tooltipRect.height - margin,
657
643
  left: triggerRect.left + (triggerRect.width - tooltipRect.width) / 2
658
644
  };
659
645
  case 'bottom':
660
646
  return {
661
- top: triggerRect.bottom + margin$1,
647
+ top: triggerRect.bottom + margin,
662
648
  left: triggerRect.left + (triggerRect.width - tooltipRect.width) / 2
663
649
  };
664
650
  }
@@ -699,26 +685,26 @@ const useTooltipPosition = (isVisible, containerRef, preferredPosition, tooltipC
699
685
  const triggerRect = containerRef.current.getBoundingClientRect();
700
686
  const tooltipRect = tooltipElement.getBoundingClientRect();
701
687
  // Try preferred position first
702
- const position = calculatePositionForSide$1(preferredPosition, triggerRect, tooltipRect);
688
+ const position = calculatePositionForSide(preferredPosition, triggerRect, tooltipRect);
703
689
  const windowWidth = window.innerWidth;
704
690
  const windowHeight = window.innerHeight;
705
691
  // Quick bounds check
706
- if (position.left >= margin$1 &&
707
- position.top >= margin$1 &&
708
- position.left + tooltipRect.width <= windowWidth - margin$1 &&
709
- position.top + tooltipRect.height <= windowHeight - margin$1) {
692
+ if (position.left >= margin &&
693
+ position.top >= margin &&
694
+ position.left + tooltipRect.width <= windowWidth - margin &&
695
+ position.top + tooltipRect.height <= windowHeight - margin) {
710
696
  setTooltipState({ position, actualPosition: preferredPosition });
711
697
  return;
712
698
  }
713
699
  // Try other positions if preferred doesn't fit
714
- for (const pos of positionOrder$1) {
700
+ for (const pos of positionOrder) {
715
701
  if (pos === preferredPosition)
716
702
  continue;
717
- const newPosition = calculatePositionForSide$1(pos, triggerRect, tooltipRect);
718
- if (newPosition.left >= margin$1 &&
719
- newPosition.top >= margin$1 &&
720
- newPosition.left + tooltipRect.width <= windowWidth - margin$1 &&
721
- newPosition.top + tooltipRect.height <= windowHeight - margin$1) {
703
+ const newPosition = calculatePositionForSide(pos, triggerRect, tooltipRect);
704
+ if (newPosition.left >= margin &&
705
+ newPosition.top >= margin &&
706
+ newPosition.left + tooltipRect.width <= windowWidth - margin &&
707
+ newPosition.top + tooltipRect.height <= windowHeight - margin) {
722
708
  setTooltipState({ position: newPosition, actualPosition: pos });
723
709
  return;
724
710
  }
@@ -736,31 +722,19 @@ const useTooltipPosition = (isVisible, containerRef, preferredPosition, tooltipC
736
722
  }, [updatePosition]);
737
723
  return tooltipState;
738
724
  };
739
- /**
740
- * Standalone tooltip component. Each instance manages its own portal,
741
- * requiring no external dependencies or global setup.
742
- *
743
- * Suitable for low-density use cases with few tooltip instances.
744
- * For high-density scenarios (e.g. schedulers, tables, lists),
745
- * prefer CwTooltipNew which shares a single DOM portal for better performance.
746
- *
747
- * @remarks Not formally deprecated, but CwTooltipNew is now the recommended
748
- * approach for new implementations. Cannot be deprecated yet due to potential use on projects such as Operon and Improve.
749
- *
750
- * @see CwTooltipNew
751
- */
725
+ // Main component with optimizations
752
726
  const CwGenericTooltip = ({ children, content = null, position = defaultPosition, dissapearsWhenHover = false, hide = false, overlayStyle = {}, showDelay = 0, displayInline = false, }) => {
753
727
  const [isVisible, setIsVisible] = useState(false);
754
728
  const containerRef = useRef(null);
755
729
  const { setTooltipTimeout, clearTooltipTimeout } = useTooltipDelay(() => {
756
730
  setIsVisible(true);
757
731
  }, showDelay);
758
- const { position: tooltipPosition, actualPosition } = useTooltipPosition(isVisible, containerRef, position, styles$q["cw-generic-tooltip-content"]);
732
+ const { position: tooltipPosition, actualPosition } = useTooltipPosition(isVisible, containerRef, position, styles$k["cw-generic-tooltip-content"]);
759
733
  // Memoize tooltip content creation
760
734
  const tooltipContent = useMemo(() => {
761
735
  if (hide || !isVisible || !content)
762
736
  return null;
763
- return createPortal(jsx("div", { className: styles$q["cw-generic-tooltip-content"], "data-position": actualPosition, "data-visible": isVisible, "data-inline": displayInline, style: {
737
+ return createPortal(jsx("div", { className: styles$k["cw-generic-tooltip-content"], "data-position": actualPosition, "data-visible": isVisible, "data-inline": displayInline, style: {
764
738
  position: 'fixed',
765
739
  top: `${tooltipPosition.top}px`,
766
740
  left: `${tooltipPosition.left}px`,
@@ -775,310 +749,9 @@ const CwGenericTooltip = ({ children, content = null, position = defaultPosition
775
749
  clearTooltipTimeout();
776
750
  setIsVisible(false);
777
751
  }, [clearTooltipTimeout]);
778
- return (jsxs("div", { ref: containerRef, className: styles$q["cw-generic-tooltip"], onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, style: overlayStyle, "data-inline": displayInline, children: [tooltipContent, children] }));
779
- };
780
-
781
- var styles$p = {"cw-tooltip-content":"cw-tooltip-module__cw-tooltip-content__RZczd","cw-tooltip":"cw-tooltip-module__cw-tooltip__1KYig"};
782
-
783
- // Constants
784
- const margin = 16;
785
- const positionOrder = ['right', 'bottom', 'left', 'top'];
786
- // Singleton state
787
- let currentState = {
788
- isVisible: false,
789
- content: null,
790
- triggerRect: null,
791
- position: "right",
792
- dissapearsWhenHover: false
793
- };
794
- const stateUpdateCallbacks = new Set();
795
- let hideTimeout;
796
- // Public API
797
- const showTooltip = (content, triggerElement, position = "right", dissapearsWhenHover = false) => {
798
- if (hideTimeout !== undefined) {
799
- window.clearTimeout(hideTimeout);
800
- hideTimeout = undefined;
801
- }
802
- currentState = {
803
- isVisible: true,
804
- content,
805
- triggerRect: triggerElement.getBoundingClientRect(),
806
- position,
807
- dissapearsWhenHover
808
- };
809
- stateUpdateCallbacks.forEach((cb) => cb());
810
- };
811
- const hideTooltip = (delay = 100) => {
812
- if (hideTimeout !== undefined) {
813
- window.clearTimeout(hideTimeout);
814
- }
815
- hideTimeout = window.setTimeout(() => {
816
- hideTimeout = undefined;
817
- currentState = {
818
- ...currentState,
819
- isVisible: false
820
- };
821
- stateUpdateCallbacks.forEach((cb) => cb());
822
- }, delay);
823
- };
824
- // Position calculation
825
- const calculatePositionForSide = (position, triggerRect, tooltipRect) => {
826
- switch (position) {
827
- case 'left':
828
- return {
829
- top: triggerRect.top + (triggerRect.height - tooltipRect.height) / 2,
830
- left: triggerRect.left - tooltipRect.width - margin
831
- };
832
- case 'right':
833
- return {
834
- top: triggerRect.top + (triggerRect.height - tooltipRect.height) / 2,
835
- left: triggerRect.right + margin
836
- };
837
- case 'top':
838
- return {
839
- top: triggerRect.top - tooltipRect.height - margin,
840
- left: triggerRect.left + (triggerRect.width - tooltipRect.width) / 2
841
- };
842
- case 'bottom':
843
- return {
844
- top: triggerRect.bottom + margin,
845
- left: triggerRect.left + (triggerRect.width - tooltipRect.width) / 2
846
- };
847
- }
848
- };
849
- const MANAGER_CONTAINER_CLASS = "cw-tooltip-manager";
850
- const ensureTooltipManager = () => {
851
- if (document.querySelector(`.${MANAGER_CONTAINER_CLASS}`))
852
- return;
853
- const container = document.createElement("div");
854
- container.className = MANAGER_CONTAINER_CLASS;
855
- document.body.appendChild(container);
856
- const root = createRoot(container);
857
- root.render(jsx(CwTooltipManager, {}));
858
- };
859
- // Main component
860
- /**
861
- * Global tooltip renderer. Manages a single portal instance in the DOM,
862
- * shared across all CwTooltipNew instances for optimal performance.
863
- *
864
- * Mount once at the app root, or let CwTooltipNew handle it automatically
865
- * via ensureTooltipManager().
866
- *
867
- * @see CwTooltipNew
868
- * @see showTooltip
869
- * @see hideTooltip
870
- */
871
- const CwTooltipManager = () => {
872
- const [state, setState] = useState(currentState);
873
- const [tooltipPosition, setTooltipPosition] = useState({ top: 0, left: 0 });
874
- const [actualPosition, setActualPosition] = useState("right");
875
- const [isPositioned, setIsPositioned] = useState(false);
876
- const tooltipRef = useRef(null);
877
- const [isMeasuring, setIsMeasuring] = useState(false);
878
- // Register update callback
879
- useEffect(() => {
880
- const update = () => {
881
- setState({ ...currentState });
882
- if (!currentState.isVisible)
883
- setIsMeasuring(false);
884
- };
885
- stateUpdateCallbacks.add(update);
886
- return () => {
887
- stateUpdateCallbacks.delete(update);
888
- };
889
- }, []);
890
- // Function to calculate position
891
- const calculatePosition = useCallback(() => {
892
- if (!state.isVisible || !state.triggerRect || !tooltipRef.current) {
893
- return;
894
- }
895
- const tooltipRect = tooltipRef.current.getBoundingClientRect();
896
- const windowWidth = window.innerWidth;
897
- const windowHeight = window.innerHeight;
898
- // Try preferred position first
899
- let position = calculatePositionForSide(state.position, state.triggerRect, tooltipRect);
900
- // Check if it fits
901
- if (position.left >= margin &&
902
- position.top >= margin &&
903
- position.left + tooltipRect.width <= windowWidth - margin &&
904
- position.top + tooltipRect.height <= windowHeight - margin) {
905
- setTooltipPosition(position);
906
- setActualPosition(state.position);
907
- setIsPositioned(true);
908
- setIsMeasuring(false);
909
- return;
910
- }
911
- // Try other positions
912
- for (const pos of positionOrder) {
913
- if (pos === state.position)
914
- continue;
915
- const newPosition = calculatePositionForSide(pos, state.triggerRect, tooltipRect);
916
- if (newPosition.left >= margin &&
917
- newPosition.top >= margin &&
918
- newPosition.left + tooltipRect.width <= windowWidth - margin &&
919
- newPosition.top + tooltipRect.height <= windowHeight - margin) {
920
- setTooltipPosition(newPosition);
921
- setActualPosition(pos);
922
- setIsPositioned(true);
923
- setIsMeasuring(false);
924
- return;
925
- }
926
- }
927
- // Fallback if none fit - adjust to fit within viewport
928
- const triggerRect = state.triggerRect;
929
- // Calculate available space around the trigger element
930
- const spaceTop = triggerRect.top;
931
- const spaceBottom = windowHeight - triggerRect.bottom;
932
- const spaceLeft = triggerRect.left;
933
- const spaceRight = windowWidth - triggerRect.right;
934
- // Find the side with the most space
935
- let bestPosition;
936
- const maxSpace = Math.max(spaceTop, spaceBottom, spaceLeft, spaceRight);
937
- if (maxSpace === spaceRight) {
938
- bestPosition = 'right';
939
- }
940
- else if (maxSpace === spaceBottom) {
941
- bestPosition = 'bottom';
942
- }
943
- else if (maxSpace === spaceLeft) {
944
- bestPosition = 'left';
945
- }
946
- else {
947
- bestPosition = 'top';
948
- }
949
- // Find the coordinates for the best position
950
- let bestPositionCoords = calculatePositionForSide(bestPosition, triggerRect, tooltipRect);
951
- // Adjust to fit within the viewport (but without covering the trigger element)
952
- if (bestPositionCoords.left < margin) {
953
- bestPositionCoords.left = margin;
954
- }
955
- else if (bestPositionCoords.left + tooltipRect.width > windowWidth - margin) {
956
- bestPositionCoords.left = windowWidth - tooltipRect.width - margin;
957
- }
958
- if (bestPositionCoords.top < margin) {
959
- bestPositionCoords.top = margin;
960
- }
961
- else if (bestPositionCoords.top + tooltipRect.height > windowHeight - margin) {
962
- bestPositionCoords.top = windowHeight - tooltipRect.height - margin;
963
- }
964
- setTooltipPosition(bestPositionCoords);
965
- setActualPosition(bestPosition);
966
- setIsPositioned(true);
967
- setIsMeasuring(false);
968
- }, [state]);
969
- // Reset isPositioned when state changes (new tooltip)
970
- // useLayouteffect is used to ensure it runs before the browser paints, preventing flashes of incorrectly positioned tooltips
971
- useLayoutEffect(() => {
972
- if (state.isVisible) {
973
- setIsPositioned(false);
974
- // Calculate position in next frame
975
- calculatePosition();
976
- }
977
- }, [state.isVisible, state.triggerRect, state.content, calculatePosition]);
978
- // ResizeObserver to reposition when content size changes (e.g., data loads)
979
- useLayoutEffect(() => {
980
- if (!state.isVisible || !tooltipRef.current) {
981
- return;
982
- }
983
- const resizeObserver = new ResizeObserver(() => {
984
- setIsMeasuring(true);
985
- setIsPositioned(false);
986
- calculatePosition();
987
- });
988
- resizeObserver.observe(tooltipRef.current);
989
- return () => {
990
- resizeObserver.disconnect();
991
- };
992
- }, [state.isVisible, calculatePosition]);
993
- if (!state.isVisible || !state.content) {
994
- return null;
995
- }
996
- return createPortal(jsx("div", { ref: tooltipRef, className: styles$p["cw-tooltip-content"], "data-position": actualPosition, "data-visible": state.isVisible, style: {
997
- top: `${tooltipPosition.top}px`,
998
- left: `${tooltipPosition.left}px`,
999
- opacity: (isPositioned && !isMeasuring) ? 1 : 0,
1000
- }, onMouseEnter: () => state.dissapearsWhenHover && hideTooltip(), children: state.content }), document.body);
1001
- };
1002
-
1003
- /**
1004
- * Tooltip component backed by the global CwTooltipManager singleton.
1005
- * More performant than CwGenericTooltip for high-density scenarios (e.g. schedulers)
1006
- * as it shares a single DOM portal across all instances.
1007
- *
1008
- * Self-initializes the Manager if not already mounted via ensureTooltipManager().
1009
- * Drop-in replacement for CwGenericTooltip with the same API.
1010
- *
1011
- * @see CwTooltipManager
1012
- * @see CwGenericTooltip
1013
- */
1014
- const CwTooltipNew = ({ children, content = null, position = "right", dissapearsWhenHover = false, hide = false, showDelay = 0, overlayStyle = {}, displayInline = false, }) => {
1015
- const containerRef = useRef(null);
1016
- const timeoutRef = useRef();
1017
- const handleMouseEnter = useCallback(() => {
1018
- if (hide || !content || !containerRef.current)
1019
- return;
1020
- if (timeoutRef.current) {
1021
- window.clearTimeout(timeoutRef.current);
1022
- }
1023
- if (showDelay > 0) {
1024
- timeoutRef.current = window.setTimeout(() => {
1025
- if (containerRef.current) {
1026
- showTooltip(content, containerRef.current, position, dissapearsWhenHover);
1027
- }
1028
- }, showDelay);
1029
- }
1030
- else {
1031
- showTooltip(content, containerRef.current, position, dissapearsWhenHover);
1032
- }
1033
- }, [content, position, showDelay, hide, dissapearsWhenHover]);
1034
- const handleMouseLeave = useCallback(() => {
1035
- if (timeoutRef.current) {
1036
- window.clearTimeout(timeoutRef.current);
1037
- }
1038
- hideTooltip();
1039
- }, []);
1040
- // Cleanup on unmount to prevent memory leaks
1041
- useEffect(() => {
1042
- return () => {
1043
- if (timeoutRef.current) {
1044
- window.clearTimeout(timeoutRef.current);
1045
- }
1046
- };
1047
- }, []);
1048
- // Hide tooltip when mousedown / drag events
1049
- useEffect(() => {
1050
- const handleDocumentMouseDown = () => {
1051
- if (timeoutRef.current) {
1052
- window.clearTimeout(timeoutRef.current);
1053
- }
1054
- hideTooltip();
1055
- };
1056
- document.addEventListener("mousedown", handleDocumentMouseDown);
1057
- return () => {
1058
- document.removeEventListener("mousedown", handleDocumentMouseDown);
1059
- };
1060
- }, []);
1061
- useEffect(() => {
1062
- ensureTooltipManager();
1063
- }, []);
1064
- return (jsx("div", { ref: containerRef, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, style: overlayStyle, "data-inline": displayInline, className: styles$p["cw-tooltip"], children: children }));
752
+ return (jsxs("div", { ref: containerRef, className: styles$k["cw-generic-tooltip"], onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, style: overlayStyle, "data-inline": displayInline, children: [tooltipContent, children] }));
1065
753
  };
1066
754
 
1067
- function CwButton({ text, variant = 'solid', color = 'primary', className = '', icon = "", title, tooltipPosition = "bottom", children, ...buttonProps }) {
1068
- // Build CSS classes based on variant and props
1069
- let buttonClass = `cw-button-${variant}`;
1070
- // Add icon class only for icon variant without children
1071
- if (variant === 'icon' && icon && !children) {
1072
- buttonClass += ` cwi-${icon}`;
1073
- }
1074
- if (className) {
1075
- buttonClass += ` ${className}`;
1076
- }
1077
- const tooltipContent = title || (variant === 'icon' && text ? text : undefined);
1078
- const buttonElement = (jsx("button", { type: "button", className: buttonClass, ...buttonProps, "data-color": color, "aria-label": tooltipContent, children: variant === 'icon' ? null : (children ?? (jsxs(Fragment, { children: [icon && jsx(CwIcon, { iconId: icon }), text && jsx("strong", { children: text })] }))) }));
1079
- return tooltipContent ? (jsx(CwTooltipNew, { content: tooltipContent, position: tooltipPosition, displayInline: true, children: buttonElement })) : (buttonElement);
1080
- }
1081
-
1082
755
  // Reference for draggable modal
1083
756
  /**
1084
757
  * **Note:** For new development, we recommend using {@link CwDialog} instead. CwModal remains supported for existing code.
@@ -1092,6 +765,10 @@ function CwModal(custModalProps) {
1092
765
  const isHide = custModalProps.hideModalActions !== null && custModalProps.hideModalActions !== undefined
1093
766
  ? custModalProps.hideModalActions
1094
767
  : false;
768
+ // [ Show custom button === true ? show : default buttons ]
769
+ const isShowcustButton = custModalProps.ShowcustButton !== null && custModalProps.ShowcustButton !== undefined
770
+ ? custModalProps.ShowcustButton
771
+ : false;
1095
772
  const cwelltOnMouseOverModal = () => {
1096
773
  setModalDisabled(false);
1097
774
  };
@@ -1111,10 +788,15 @@ function CwModal(custModalProps) {
1111
788
  width: custModalProps.widthModal
1112
789
  }
1113
790
  };
1114
- return (jsx("div", { children: custModalProps.modalState && (jsxs("div", { className: custModalProps.classNameModalOverlay + " cwelltModalOverlay", children: [jsx("div", { className: "cwelltModalOverlayBg", onClick: custModalProps.onCloseModal }), jsx(Draggable, { disabled: isModalDisabled, axis: "both", nodeRef: draggableRef, children: jsxs("div", { className: custModalProps.classNameModal + " cwelltContainerModal", ref: draggableRef, style: widthModalDef !== "40em" ? modalStyle.widthCustomStyle : modalStyle.widthDefStyle, children: [jsxs("div", { className: "cwelltModalHeader", onMouseOver: cwelltOnMouseOverModal, onMouseOut: cwelltOnMouseOutModal, children: [jsx("div", { className: "cwelltModalTitle", children: custModalProps.titleModal }), jsx("button", { className: "cwelltBtnCloseModal", onClick: custModalProps.onCloseModal, children: jsx("span", { className: "cwelltCloseIcon" }) })] }), jsx("div", { className: "cwelltModalBody", children: jsx("div", { className: "cwelltContainerModalBody", style: { position: "relative" }, children: custModalProps.children }) }), isHide === false ? (jsx("footer", { className: "legacy-modal-footer", onMouseOver: cwelltOnMouseOverModal, onMouseOut: cwelltOnMouseOutModal, children: jsx(CwButton, { variant: "icon", icon: "save", title: "Save", onClick: custModalProps.onSaveModal, form: custModalProps.formSaveModal, hidden: custModalProps.HideBtnModal, type: custModalProps.HtmlSubmitModal }) })) : (jsx("div", { style: { display: "none" } }))] }) })] })) }));
791
+ return (jsx("div", { children: custModalProps.modalState && (jsxs("div", { className: custModalProps.classNameModalOverlay + " cwelltModalOverlay", children: [jsx("div", { className: "cwelltModalOverlayBg", onClick: custModalProps.onCloseModal }), jsx(Draggable, { disabled: isModalDisabled, axis: "both", nodeRef: draggableRef, children: jsxs("div", { className: custModalProps.classNameModal + " cwelltContainerModal", ref: draggableRef, style: widthModalDef !== "40em" ? modalStyle.widthCustomStyle : modalStyle.widthDefStyle, children: [jsxs("div", { className: "cwelltModalHeader", onMouseOver: cwelltOnMouseOverModal, onMouseOut: cwelltOnMouseOutModal, children: [jsx("div", { className: "cwelltModalTitle", children: custModalProps.titleModal }), jsx("button", { className: "cwelltBtnCloseModal", onClick: custModalProps.onCloseModal, children: jsx("span", { className: "cwelltCloseIcon" }) })] }), jsx("div", { className: "cwelltModalBody", children: jsx("div", { className: "cwelltContainerModalBody", style: { position: "relative" }, children: custModalProps.children }) }), isHide === false ? (
792
+ // [ false : show modal ]
793
+ jsxs("div", { className: "cwelltModalFooter", onMouseOver: cwelltOnMouseOverModal, onMouseOut: cwelltOnMouseOutModal, children: [jsx(Tooltip, { placement: "bottom", title: "Save", color: "#368ee0", children: jsx("div", { className: "cwellt_flex cwellt_justify_center ", style: { width: "2em" }, children: jsx("button", { className: "cw-button-icon cwi-save", onClick: custModalProps.onSaveModal, form: custModalProps.formSaveModal, hidden: custModalProps.HideBtnModal, type: custModalProps.HtmlSubmitModal }) }) }), isShowcustButton === true ? (jsx(Tooltip, { placement: "bottom", title: custModalProps.custButtonTitle, color: custModalProps.custColorButtonTooltip, children: jsx("div", { className: "cwellt_flex cwellt_justify_center", style: { width: "2em" }, children: jsx("button", { className: "cw-button-icon " +
794
+ custModalProps.custButtonClassName, onClick: custModalProps.custButtonClick }) }) })) : (jsx("div", {}))] })) : (
795
+ // true [ do not show the modal ]
796
+ jsx("div", { style: { display: "none" } }))] }) })] })) }));
1115
797
  }
1116
798
 
1117
- var styles$o = {"overlayPositioned":"CwConfirmationPopup-module__overlayPositioned__11qYB","popup":"CwConfirmationPopup-module__popup__ahPjM","message":"CwConfirmationPopup-module__message__MnNL4","buttons":"CwConfirmationPopup-module__buttons__fGYYE","button":"CwConfirmationPopup-module__button__ugYQE","confirmButton":"CwConfirmationPopup-module__confirmButton__rTP4S","cancelButton":"CwConfirmationPopup-module__cancelButton__Ry694"};
799
+ var styles$j = {"overlayPositioned":"CwConfirmationPopup-module_overlayPositioned__11qYB","popup":"CwConfirmationPopup-module_popup__ahPjM","message":"CwConfirmationPopup-module_message__MnNL4","buttons":"CwConfirmationPopup-module_buttons__fGYYE","button":"CwConfirmationPopup-module_button__ugYQE","confirmButton":"CwConfirmationPopup-module_confirmButton__rTP4S","cancelButton":"CwConfirmationPopup-module_cancelButton__Ry694"};
1118
800
 
1119
801
  function CwConfirmationPopup(props) {
1120
802
  const { isOpen, onConfirm, onCancel, message = "Are you sure you want to proceed?", confirmText = "Confirm", cancelText = "Cancel", placement = 'bottom', children } = props;
@@ -1178,15 +860,30 @@ function CwConfirmationPopup(props) {
1178
860
  onCancel();
1179
861
  }
1180
862
  };
1181
- return (jsxs(Fragment, { children: [renderChildren(), isOpen && (jsx("div", { className: styles$o.overlayPositioned, onClick: handleOverlayClick, children: jsxs("div", { ref: popupRef, className: styles$o.popup, style: {
863
+ return (jsxs(Fragment, { children: [renderChildren(), isOpen && (jsx("div", { className: styles$j.overlayPositioned, onClick: handleOverlayClick, children: jsxs("div", { ref: popupRef, className: styles$j.popup, style: {
1182
864
  position: 'absolute',
1183
865
  top: `${position.top}px`,
1184
866
  left: `${position.left}px`,
1185
867
  transform: 'none'
1186
- }, children: [jsx("p", { className: styles$o.message, children: message }), jsxs("div", { className: styles$o.buttons, children: [jsx("button", { className: `${styles$o.button} ${styles$o.confirmButton}`, onClick: onConfirm, children: confirmText }), jsx("button", { className: `${styles$o.button} ${styles$o.cancelButton}`, onClick: onCancel, children: cancelText })] })] }) }))] }));
868
+ }, children: [jsx("p", { className: styles$j.message, children: message }), jsxs("div", { className: styles$j.buttons, children: [jsx("button", { className: `${styles$j.button} ${styles$j.confirmButton}`, onClick: onConfirm, children: confirmText }), jsx("button", { className: `${styles$j.button} ${styles$j.cancelButton}`, onClick: onCancel, children: cancelText })] })] }) }))] }));
1187
869
  }
1188
870
 
1189
- var styles$n = {"cw-dialog-main":"cw-dialog-module__cw-dialog-main__cHxHt","cw-dialog-button-close":"cw-dialog-module__cw-dialog-button-close__9GRd8"};
871
+ function CwButton({ text, variant = 'solid', color = 'primary', className = '', icon = "", title, tooltipPosition = "bottom", children, ...buttonProps }) {
872
+ // Build CSS classes based on variant and props
873
+ let buttonClass = `cw-button-${variant}`;
874
+ // Add icon class only for icon variant without children
875
+ if (variant === 'icon' && icon && !children) {
876
+ buttonClass += ` cwi-${icon}`;
877
+ }
878
+ if (className) {
879
+ buttonClass += ` ${className}`;
880
+ }
881
+ const tooltipContent = title || (variant === 'icon' && text ? text : undefined);
882
+ const buttonElement = (jsx("button", { type: "button", className: buttonClass, ...buttonProps, "data-color": color, "aria-label": tooltipContent, children: variant === 'icon' ? null : (children ?? (jsxs(Fragment, { children: [icon && jsx(CwIcon, { iconId: icon }), text && jsx("strong", { children: text })] }))) }));
883
+ return tooltipContent ? (jsx(CwGenericTooltip, { content: tooltipContent, position: tooltipPosition, displayInline: true, children: buttonElement })) : (buttonElement);
884
+ }
885
+
886
+ var styles$i = {"cw-dialog-main":"cw-dialog-module_cw-dialog-main__cHxHt","cw-dialog-button-close":"cw-dialog-module_cw-dialog-button-close__9GRd8"};
1190
887
 
1191
888
  // Helper function to parse size values
1192
889
  const parseSize = (size) => {
@@ -1225,7 +922,7 @@ const convertFromPx = (px, unit) => {
1225
922
  }
1226
923
  };
1227
924
  const CwDialog = props => {
1228
- const { customFooter, customHeader, headline, width, height, dialogSize, scrim, onSave, onClose, hideFooter, children, open, autoReposition = false, disableSave, ...domProps } = props;
925
+ const { customFooter, customHeader, headline, width, height, dialogSize, scrim, onSave, onClose, hideFooter, children, open, autoReposition = false, ...domProps } = props;
1229
926
  const dialogRef = useRef(null);
1230
927
  const [isPressingScrim, setIsPressingScrim] = useState(false);
1231
928
  const pressTimerRef = useRef(0);
@@ -1262,13 +959,9 @@ const CwDialog = props => {
1262
959
  heightUnit: parsedHeight.unit,
1263
960
  autoHeight: isAutoHeight
1264
961
  };
1265
- const maxWidth = window.innerWidth * 0.9;
1266
- const maxHeight = window.innerHeight * 0.9;
1267
- const clampedWidth = Math.min(initialWidthPx, maxWidth);
1268
- const clampedHeight = Math.min(initialEstimatedHeight, maxHeight);
1269
962
  const initialPosition = {
1270
- x: Math.max(0, window.document.body.clientWidth / 2 - clampedWidth / 2),
1271
- y: Math.max(0, window.document.body.clientHeight / 2 - clampedHeight / 2)
963
+ x: window.document.body.clientWidth / 2 - initialWidthPx / 2,
964
+ y: window.document.body.clientHeight / 2 - initialEstimatedHeight / 2
1272
965
  };
1273
966
  return { initialDialogSize, initialPosition };
1274
967
  }, [width, height, dialogSize]); // Only recalculate when these props change
@@ -1277,7 +970,6 @@ const CwDialog = props => {
1277
970
  const [position, setPosition] = useState(initialSetup.initialPosition);
1278
971
  const [size, setSize] = useState(initialSetup.initialDialogSize);
1279
972
  const [dragStart, setDragStart] = useState({ x: 0, y: 0 });
1280
- const userDraggedRef = useRef(false);
1281
973
  // scrim is true by default
1282
974
  const hasScrim = scrim !== false;
1283
975
  // Adjust position after the dialog is rendered when using autoHeight
@@ -1317,35 +1009,6 @@ const CwDialog = props => {
1317
1009
  resizeObserver?.disconnect();
1318
1010
  };
1319
1011
  }, [size.autoHeight, open, autoReposition]);
1320
- // Keep dialog visible when viewport is resized; re-center only if user hasn't dragged
1321
- const originalWidthPx = initialSetup.initialDialogSize.width;
1322
- useEffect(() => {
1323
- if (!open)
1324
- return;
1325
- userDraggedRef.current = false;
1326
- const handleWindowResize = () => {
1327
- const vw = window.innerWidth;
1328
- const vh = window.innerHeight;
1329
- const w = Math.min(originalWidthPx, vw * 0.9);
1330
- setSize(prev => w !== prev.width ? { ...prev, width: w } : prev);
1331
- if (!userDraggedRef.current) {
1332
- const dh = dialogRef.current?.offsetHeight ?? 300;
1333
- setPosition({
1334
- x: Math.max(0, (vw - w) / 2),
1335
- y: Math.max(0, (vh - dh) / 2),
1336
- });
1337
- }
1338
- else {
1339
- // Clamp so dialog stays on screen
1340
- setPosition(prev => ({
1341
- x: Math.max(0, Math.min(prev.x, vw - w - 8)),
1342
- y: Math.max(0, Math.min(prev.y, vh - (dialogRef.current?.offsetHeight ?? 300) - 8)),
1343
- }));
1344
- }
1345
- };
1346
- window.addEventListener("resize", handleWindowResize);
1347
- return () => window.removeEventListener("resize", handleWindowResize);
1348
- }, [open]);
1349
1012
  useEffect(() => {
1350
1013
  const handleMouseMove = (e) => {
1351
1014
  if (isDragging) {
@@ -1427,7 +1090,6 @@ const CwDialog = props => {
1427
1090
  }, [isDragging, resizeDirection, dragStart, position, size]);
1428
1091
  const handleMouseDown = useCallback((e) => {
1429
1092
  setIsDragging(true);
1430
- userDraggedRef.current = true;
1431
1093
  setDragStart({ x: e.clientX - position.x, y: e.clientY - position.y });
1432
1094
  }, [position]);
1433
1095
  const handleResizeMouseDown = useCallback((direction) => (e) => {
@@ -1459,15 +1121,17 @@ const CwDialog = props => {
1459
1121
  }
1460
1122
  }
1461
1123
  }, [open]);
1462
- const header = useMemo(() => (jsxs("header", { onMouseDown: handleMouseDown, children: [jsx("span", { children: headline }), customHeader || (jsx("button", { className: styles$n["cw-dialog-button-close"], onClick: onClose }))] })), [handleMouseDown, headline, customHeader, onClose]);
1124
+ const header = useMemo(() => (jsxs("header", { onMouseDown: handleMouseDown, children: [jsx("span", { children: headline }), customHeader || (jsx("button", { className: styles$i["cw-dialog-button-close"], onClick: onClose }))] })), [handleMouseDown, headline, customHeader, onClose]);
1463
1125
  const content = useMemo(() => (jsx("section", { children: children })), [children]);
1464
- const footer = useMemo(() => (jsx("footer", { children: customFooter || (jsx(CwButton, { variant: "icon", icon: "save", title: "Save", onClick: onSave, tooltipPosition: "top", disabled: disableSave, "data-testid": "cw-dialog-save" })) })), [customFooter, onSave, disableSave]);
1126
+ const footer = useMemo(() => (jsx("footer", { children: customFooter || (jsx(CwButton, { variant: "icon", icon: "save", title: "Save", onClick: onSave, tooltipPosition: "top" })) })), [customFooter, onSave]);
1465
1127
  const resizeHandles = useMemo(() => size.autoHeight
1466
1128
  ? [
1129
+ // Only horizontal handles if autoHeight is true
1467
1130
  jsx("div", { "data-handle-e": true, onMouseDown: handleResizeMouseDown("e") }, "handle-e"),
1468
1131
  jsx("div", { "data-handle-w": true, onMouseDown: handleResizeMouseDown("w") }, "handle-w")
1469
1132
  ]
1470
1133
  : [
1134
+ // All handles if autoHeight is false
1471
1135
  jsx("div", { "data-handle-n": true, onMouseDown: handleResizeMouseDown("n") }, "handle-n"),
1472
1136
  jsx("div", { "data-handle-s": true, onMouseDown: handleResizeMouseDown("s") }, "handle-s"),
1473
1137
  jsx("div", { "data-handle-e": true, onMouseDown: handleResizeMouseDown("e") }, "handle-e"),
@@ -1486,7 +1150,7 @@ const CwDialog = props => {
1486
1150
  : `${convertFromPx(size.height, size.heightUnit)}${size.heightUnit}`;
1487
1151
  return { displayWidth, displayHeight };
1488
1152
  }, [size.width, size.height, size.widthUnit, size.heightUnit, size.autoHeight]);
1489
- const dialogContent = (jsx("div", { "data-has-scrim": hasScrim, className: styles$n["cw-dialog-main"], onMouseDown: handleScrimMouseDown, onMouseUp: handleScrimMouseUpOrLeave, onMouseLeave: handleScrimMouseUpOrLeave, "data-pressing": isPressingScrim, children: jsxs("dialog", { ...domProps, ref: dialogRef, style: {
1153
+ const dialogContent = (jsx("div", { "data-has-scrim": hasScrim, className: styles$i["cw-dialog-main"], onMouseDown: handleScrimMouseDown, onMouseUp: handleScrimMouseUpOrLeave, onMouseLeave: handleScrimMouseUpOrLeave, "data-pressing": isPressingScrim, children: jsxs("dialog", { ...domProps, ref: dialogRef, style: {
1490
1154
  left: `${position.x}px`,
1491
1155
  top: `${position.y}px`,
1492
1156
  width: displayDimensions.displayWidth,
@@ -1517,6 +1181,7 @@ const CwModalReportFunctional = (props) => {
1517
1181
  };
1518
1182
 
1519
1183
  class CwReportModal extends React.Component {
1184
+ formRef = React.createRef();
1520
1185
  constructor(props) {
1521
1186
  super(props);
1522
1187
  this.state = {
@@ -1533,6 +1198,7 @@ class CwReportModal extends React.Component {
1533
1198
  }
1534
1199
  render() {
1535
1200
  return (jsx("div", { id: "modal-report-content", children: this.state.isModal === true ? (jsxs(CwDialog, { open: this.props.visible, width: this.props.width, height: this.props.height, headline: this.props.title, onClose: () => {
1201
+ this.formRef?.current?.resetFields();
1536
1202
  this.props.SET_MODAL_REPORT_VISIBLE(false);
1537
1203
  }, hideFooter: true, className: "modal-report-content", children: [this.props.name !== "Empty.pdf" && (jsx("div", { style: { width: "100%", height: "100%", overflowX: "auto", overflowY: "auto" }, children: jsx("embed", { src: "data:application/pdf;base64," + this.props.content, type: "application/pdf", style: { width: "100%", height: "100%", display: "block" } }) })), this.props.name === "Empty.pdf" && (jsx("div", { children: jsxs("h1", { style: { marginLeft: "2em" }, children: [" ", "Please add a(n) ", this.props.reportName, " report in ", this.props.moduleSettings, " Settings"] }) }))] })) : (jsxs("div", { children: [this.props.name !== "Empty.pdf" && (jsx("embed", { src: "data:application/pdf;base64," + this.props.content, type: "application/pdf", width: "100%", height: "800px" })), this.props.name === "Empty.pdf" && (jsxs("div", { children: ["Please add a(n) ", this.props.reportName, " report in ", this.props.moduleSettings, " Settings"] }))] })) }));
1538
1204
  }
@@ -1689,7 +1355,7 @@ function CwAlign(props) {
1689
1355
  }, children: props.children }));
1690
1356
  }
1691
1357
 
1692
- var styles$m = {"card":"cw-card-module__card__HJUT0","clickable":"cw-card-module__clickable__Y-V3X","disabled":"cw-card-module__disabled__0wHh1","loading":"cw-card-module__loading__-fzlx","content":"cw-card-module__content__ma9qy","headerContent":"cw-card-module__headerContent__x4Jfl","footerTags":"cw-card-module__footerTags__80sSW","loadingOverlay":"cw-card-module__loadingOverlay__8-zVV"};
1358
+ var styles$h = {"card":"cw-card-module_card__HJUT0","clickable":"cw-card-module_clickable__Y-V3X","disabled":"cw-card-module_disabled__0wHh1","loading":"cw-card-module_loading__-fzlx","content":"cw-card-module_content__ma9qy","headerContent":"cw-card-module_headerContent__x4Jfl","footerTags":"cw-card-module_footerTags__80sSW","loadingOverlay":"cw-card-module_loadingOverlay__8-zVV"};
1693
1359
 
1694
1360
  /**
1695
1361
  * CwCard - A simple card component for displaying content in a contained format
@@ -1713,11 +1379,11 @@ const CwCard = ({ id, title, subtitle, alignment = 'center', children, footer, o
1713
1379
  // Construct class names using CSS modules
1714
1380
  const cardClassNames = [
1715
1381
  'cw-card',
1716
- styles$m.card,
1382
+ styles$h.card,
1717
1383
  className,
1718
- clickable ? styles$m.clickable : '',
1719
- disabled ? styles$m.disabled : '',
1720
- isLoading ? styles$m.loading : '',
1384
+ clickable ? styles$h.clickable : '',
1385
+ disabled ? styles$h.disabled : '',
1386
+ isLoading ? styles$h.loading : '',
1721
1387
  ].filter(Boolean).join(' ');
1722
1388
  // Handle click event when card is clickable
1723
1389
  const handleClick = () => {
@@ -1734,15 +1400,15 @@ const CwCard = ({ id, title, subtitle, alignment = 'center', children, footer, o
1734
1400
  // Determine if footer should be rendered
1735
1401
  const hasFooter = hasChips || footer || (hasActions && direction === "row");
1736
1402
  // Actions component to reuse
1737
- const ActionsComponent = hasActions && !disabled ? (jsxs("div", { className: styles$m.actions, children: [extraActions ?? null, onEdit && jsx(CwButton, { variant: "icon", icon: "edit", onClick: onEdit }), onDelete && jsx(CwButton, { variant: "icon", icon: "delete", color: "danger", onClick: onDelete })] })) : null;
1403
+ const ActionsComponent = hasActions && !disabled ? (jsxs("div", { className: styles$h.actions, children: [extraActions ?? null, onEdit && jsx(CwButton, { variant: "icon", icon: "edit", onClick: onEdit }), onDelete && jsx(CwButton, { variant: "icon", icon: "delete", color: "danger", onClick: onDelete })] })) : null;
1738
1404
  return (jsxs("div", { ...(id && { id }), className: cardClassNames, ...(style && { style }), ...(clickable && {
1739
1405
  role: 'button',
1740
1406
  tabIndex: 0,
1741
1407
  onClick: handleClick,
1742
- }), "data-variant": variant, "data-direction": direction, children: [hasHeader && (jsxs("header", { children: [(title || subtitle) && (jsxs("div", { className: styles$m.headerContent, "data-alignment": alignment, children: [title && jsx("h5", { children: title }), subtitle && jsx("strong", { children: subtitle })] })), direction === "column" && ActionsComponent] })), jsx("div", { className: styles$m.content, children: children }), hasFooter && (jsxs("footer", { children: [hasChips && (jsx("div", { className: styles$m.footerTags, children: chips.map((chip, index) => (jsx(CwChip, { label: chip.label, colorScheme: chip.colorScheme, className: styles$m.chip, ...(chip.customColor && { customColor: chip.customColor }), ...(chip.variant && { variant: chip.variant }), ...(chip.icon && { icon: chip.icon }) }, index))) })), footer && (jsx("div", { className: styles$m.footerContent, children: footer }))] })), direction === "row" && ActionsComponent, isLoading && (jsx("div", { className: styles$m.loadingOverlay, children: jsx(CwLoading, { isLoading: isLoading, size: "small" }) }))] }));
1408
+ }), "data-variant": variant, "data-direction": direction, children: [hasHeader && (jsxs("header", { children: [(title || subtitle) && (jsxs("div", { className: styles$h.headerContent, "data-alignment": alignment, children: [title && jsx("h5", { children: title }), subtitle && jsx("strong", { children: subtitle })] })), direction === "column" && ActionsComponent] })), jsx("div", { className: styles$h.content, children: children }), hasFooter && (jsxs("footer", { children: [hasChips && (jsx("div", { className: styles$h.footerTags, children: chips.map((chip, index) => (jsx(CwChip, { label: chip.label, colorScheme: chip.colorScheme, className: styles$h.chip, ...(chip.customColor && { customColor: chip.customColor }), ...(chip.variant && { variant: chip.variant }), ...(chip.icon && { icon: chip.icon }) }, index))) })), footer && (jsx("div", { className: styles$h.footerContent, children: footer }))] })), direction === "row" && ActionsComponent, isLoading && (jsx("div", { className: styles$h.loadingOverlay, children: jsx(CwLoading, { isLoading: isLoading, size: "small" }) }))] }));
1743
1409
  };
1744
1410
 
1745
- var styles$l = {"cardContainer":"cw-card-list-module__cardContainer__l3YEh","pagination":"cw-card-list-module__pagination__5Ay78","pageInfo":"cw-card-list-module__pageInfo__uiMel","loading":"cw-card-list-module__loading__cYpND","emptyState":"cw-card-list-module__emptyState__RlqiS","sortControls":"cw-card-list-module__sortControls__mWgZA"};
1411
+ var styles$g = {"cardContainer":"cw-card-list-module_cardContainer__l3YEh","pagination":"cw-card-list-module_pagination__5Ay78","pageInfo":"cw-card-list-module_pageInfo__uiMel","loading":"cw-card-list-module_loading__cYpND","emptyState":"cw-card-list-module_emptyState__RlqiS","sortControls":"cw-card-list-module_sortControls__mWgZA"};
1746
1412
 
1747
1413
  function CwCardList({ items, renderCard, pageSize = 10, layout = 'grid', defaultCardWidth = 320, cardGap = 16, isLoading = false, emptyState, sortOptions = [], defaultSortKey, ...htmlProps }) {
1748
1414
  const [currentPage, setCurrentPage] = useState(1);
@@ -1776,10 +1442,10 @@ function CwCardList({ items, renderCard, pageSize = 10, layout = 'grid', default
1776
1442
  '--card-width': `${defaultCardWidth}px`,
1777
1443
  '--card-gap': `${cardGap}px`
1778
1444
  };
1779
- return (jsxs("div", { ...htmlProps, children: [sortOptions.length > 0 && (jsxs("div", { className: styles$l.sortControls, children: [jsx("label", { htmlFor: "cardlist-sort-select", children: "Sort by:" }), jsx("select", { id: "cardlist-sort-select", value: sortKey, onChange: (e) => handleSortChange(e.target.value), className: styles$l.sortSelect, children: sortOptions.map(option => (jsx("option", { value: option.key, children: option.label }, option.key))) }), jsx("button", { onClick: () => setSortDirection(prev => prev === 'asc' ? 'desc' : 'asc'), className: `cw-button-icon ${sortDirection === 'asc' ? 'cwi-arrow-up' : 'cwi-arrow-down'}`, title: `Sort ${sortDirection === 'asc' ? 'descending' : 'ascending'}` })] })), isLoading ? (jsx("div", { className: styles$l.loading, children: jsx(CwLoading, { isLoading: isLoading }) })) : sortedItems.length === 0 ? (jsx("div", { className: styles$l.emptyState, children: emptyState || jsx("p", { children: "No items to display" }) })) : (jsxs(Fragment, { children: [jsx("div", { className: `${styles$l.cardContainer}`, "data-layout": layout, style: gridStyle, children: visibleItems.map((item, index) => (jsx("div", { className: styles$l.cardWrapper, children: renderCard(item, index) }, index))) }), totalPages > 1 && (jsxs("div", { className: styles$l.pagination, children: [jsx("button", { disabled: currentPage === 1, onClick: () => setCurrentPage(p => Math.max(1, p - 1)), className: "cw-button-icon cwi-chevron-left" }), jsxs("span", { className: styles$l.pageInfo, children: [currentPage, " of ", totalPages] }), jsx("button", { disabled: currentPage === totalPages, onClick: () => setCurrentPage(p => Math.min(totalPages, p + 1)), className: "cw-button-icon cwi-chevron-right" })] }))] }))] }));
1445
+ return (jsxs("div", { ...htmlProps, children: [sortOptions.length > 0 && (jsxs("div", { className: styles$g.sortControls, children: [jsx("label", { htmlFor: "cardlist-sort-select", children: "Sort by:" }), jsx("select", { id: "cardlist-sort-select", value: sortKey, onChange: (e) => handleSortChange(e.target.value), className: styles$g.sortSelect, children: sortOptions.map(option => (jsx("option", { value: option.key, children: option.label }, option.key))) }), jsx("button", { onClick: () => setSortDirection(prev => prev === 'asc' ? 'desc' : 'asc'), className: `cw-button-icon ${sortDirection === 'asc' ? 'cwi-arrow-up' : 'cwi-arrow-down'}`, title: `Sort ${sortDirection === 'asc' ? 'descending' : 'ascending'}` })] })), isLoading ? (jsx("div", { className: styles$g.loading, children: jsx(CwLoading, { isLoading: isLoading }) })) : sortedItems.length === 0 ? (jsx("div", { className: styles$g.emptyState, children: emptyState || jsx("p", { children: "No items to display" }) })) : (jsxs(Fragment, { children: [jsx("div", { className: `${styles$g.cardContainer}`, "data-layout": layout, style: gridStyle, children: visibleItems.map((item, index) => (jsx("div", { className: styles$g.cardWrapper, children: renderCard(item, index) }, index))) }), totalPages > 1 && (jsxs("div", { className: styles$g.pagination, children: [jsx("button", { disabled: currentPage === 1, onClick: () => setCurrentPage(p => Math.max(1, p - 1)), className: "cw-button-icon cwi-chevron-left" }), jsxs("span", { className: styles$g.pageInfo, children: [currentPage, " of ", totalPages] }), jsx("button", { disabled: currentPage === totalPages, onClick: () => setCurrentPage(p => Math.min(totalPages, p + 1)), className: "cw-button-icon cwi-chevron-right" })] }))] }))] }));
1780
1446
  }
1781
1447
 
1782
- var styles$k = {"cw-accordion":"cw-accordion-module__cw-accordion__ErvlW","cw-accordion-body":"cw-accordion-module__cw-accordion-body__xlI8b"};
1448
+ var styles$f = {"cw-accordion":"cw-accordion-module_cw-accordion__ErvlW","cw-accordion-body":"cw-accordion-module_cw-accordion-body__xlI8b"};
1783
1449
 
1784
1450
  /**
1785
1451
  *
@@ -1796,7 +1462,7 @@ function CwAccordionContainer(CwelltAccordionContainerProps) {
1796
1462
  setVisible_accordionBody(!isVisible_accordionBody);
1797
1463
  };
1798
1464
  // #endregion
1799
- return (jsxs("div", { className: styles$k["cw-accordion"], style: CwelltAccordionContainerProps.style, "data-open": isVisible_accordionBody, children: [jsxs("header", { onClick: () => showAccordionBody(), children: [jsx("div", { children: CwelltAccordionContainerProps.desc_text }), jsx("button", { className: "cw-button-icon" })] }), jsx("div", { className: styles$k["cw-accordion-body"], children: CwelltAccordionContainerProps.children })] }));
1465
+ return (jsxs("div", { className: styles$f["cw-accordion"], style: CwelltAccordionContainerProps.style, "data-open": isVisible_accordionBody, children: [jsxs("header", { onClick: () => showAccordionBody(), children: [jsx("div", { children: CwelltAccordionContainerProps.desc_text }), jsx("button", { className: "cw-button-icon" })] }), jsx("div", { className: styles$f["cw-accordion-body"], children: CwelltAccordionContainerProps.children })] }));
1800
1466
  }
1801
1467
 
1802
1468
  /**
@@ -1868,7 +1534,7 @@ function CwAccordionContainer(CwelltAccordionContainerProps) {
1868
1534
  *
1869
1535
  * @returns React component
1870
1536
  */
1871
- function CwTable({ columns, data, pagination = false, pageSizeOptions = [5, 10, 20, 50], expandedRowRender, onExpand, className, classNameRow, style, classNameContainer, id, testId, textNoData = "No data available at the moment", rowKey = "key", loading = false, scrollHeight, stickyHeader = false, pageLabel = "page", rowSelection }) {
1537
+ function CwTable({ columns, data, pagination = false, pageSizeOptions = [5, 10, 20, 50], expandedRowRender, onExpand, className, classNameRow, style, classNameContainer, id, textNoData = "No data available at the moment", rowKey = "key", loading = false, scrollHeight, stickyHeader = false, rowSelection }) {
1872
1538
  const [currentPage, setCurrentPage] = useState(1);
1873
1539
  const [expandedRowKey, setExpandedRowKey] = useState(null);
1874
1540
  const [sortConfig, setSortConfig] = useState({
@@ -2000,6 +1666,15 @@ function CwTable({ columns, data, pagination = false, pageSizeOptions = [5, 10,
2000
1666
  window.addEventListener("mousemove", onMouseMove);
2001
1667
  window.addEventListener("mouseup", onMouseUp);
2002
1668
  };
1669
+ const scrollContainerStyle = useMemo(() => {
1670
+ if (stickyHeader || scrollHeight) {
1671
+ return {
1672
+ maxHeight: scrollHeight ?? 300,
1673
+ overflowY: "auto"
1674
+ };
1675
+ }
1676
+ return {}; // no height or scroll
1677
+ }, [stickyHeader, scrollHeight]);
2003
1678
  const getColSpan = () => columns.length + (expandedRowRender ? 1 : 0);
2004
1679
  const hasClassNameRow = (item) => {
2005
1680
  return typeof item === "object" && item !== null && "classNameRow" in item;
@@ -2019,441 +1694,79 @@ function CwTable({ columns, data, pagination = false, pageSizeOptions = [5, 10,
2019
1694
  const dynamicClassName = typeof classNameRow === "function"
2020
1695
  ? classNameRow(item)
2021
1696
  : classNameRow ?? "";
2022
- return (jsxs(React__default.Fragment, { children: [jsxs("tr", { className: `${dynamicClassName} ${hasClassNameRow(item) ? item.classNameRow : ""} ${isSelected ? "cw-table-row-selected" : ""}`, onClick: (e) => rowSelection && handleRowClick(item, e), "data-row-key": itemKey != null ? String(itemKey) : undefined, style: {
1697
+ return (jsxs(React__default.Fragment, { children: [jsxs("tr", { className: `${dynamicClassName} ${hasClassNameRow(item) ? item.classNameRow : ""} ${isSelected ? "cw-table-row-selected" : ""}`, onClick: (e) => rowSelection && handleRowClick(item, e), style: {
2023
1698
  cursor: rowSelection ? "pointer" : "default",
2024
1699
  backgroundColor: isSelected ? "var(--cw-color-info-container)" : undefined,
2025
1700
  transition: "background-color 0.2s ease",
2026
1701
  }, children: [expandedRowRender && (jsx("td", { className: "cw-table-col-action cw-table-col-expand", children: jsx("button", { onClick: () => handleRowExpand(item), className: `cw-button-icon ${expandedRowKey === itemKey
2027
1702
  ? "cwi-chevron-down"
2028
- : "cwi-chevron-right"}` }) })), columns.map(col => (jsx("td", { className: col.className ?? "", children: col.render ? col.render(item) : col.dataIndex ? String(item[col.dataIndex] ?? "") : "" }, `${itemKey}_${col.key}`)))] }), expandedRowRender && expandedRowKey === itemKey && (jsx("tr", { className: "cw-table-row-expanded", children: jsx("td", { colSpan: getColSpan(), children: expandedRowRender(item) }) }))] }, String(itemKey)));
1703
+ : "cwi-chevron-right"}` }) })), columns.map(col => (jsx("td", { className: col.className ?? "", children: col.render ? col.render(item) : col.dataIndex ? String(item[col.dataIndex]) : "" }, `${itemKey}_${col.key}`)))] }), expandedRowRender && expandedRowKey === itemKey && (jsx("tr", { className: "cw-table-row-expanded", children: jsx("td", { colSpan: getColSpan(), children: expandedRowRender(item) }) }))] }, String(itemKey)));
2029
1704
  });
2030
1705
  };
2031
- return (jsxs("div", { id: id, "data-testid": testId, className: `cw-table-container${stickyHeader || scrollHeight ? " cw-table-scroll" : ""} ${classNameContainer ?? ""}`, style: { ...(scrollHeight ? { "--table-height": typeof scrollHeight === "number" ? `${scrollHeight}px` : scrollHeight } : {}), ...style }, children: [jsxs("table", { className: `cw-table ${className ?? ""}`, style: { width: "100%" }, children: [jsx("thead", { children: jsxs("tr", { children: [expandedRowRender && jsx("th", {}), columns.map(col => (jsxs("th", { onClick: () => col.sortable && col.dataIndex && handleSort(col.dataIndex), className: `${col.className ?? ""} ${sortConfig.key === col.dataIndex
2032
- ? sortConfig.direction
2033
- : ""}`.trim(), style: {
2034
- cursor: col.sortable ? "pointer" : "default",
2035
- userSelect: "none",
2036
- width: columnWidths[col.key] ?? col.width,
2037
- ...((col.width || columnWidths[col.key]) && {
2038
- minWidth: 50,
2039
- maxWidth: columnWidths[col.key] ?? col.width
2040
- }),
2041
- }, children: [jsxs("div", { className: "cw-flex-row cw-align-between-center", children: [jsx("span", { children: col.title }), col.sortable && col.dataIndex && (jsx(CwIcon, { style: { fontSize: "1.25em" }, iconId: sortConfig.key !== col.dataIndex
2042
- ? "sortable"
2043
- : sortConfig.direction === "asc"
2044
- ? "sortable-asc"
2045
- : "sortable-desc" }))] }), jsx("span", { onMouseDown: (e) => startResize(e, col.key), className: "th-column-resizer" })] }, col.key)))] }) }), jsx("tbody", { children: renderTableBody() })] }), pagination && data.length > pageSizeOptions[0] && (jsxs("footer", { className: "cw-table-pagination", children: [jsxs("div", { className: "cw-table-pagination-size", children: [jsx(CwIcon, { iconId: "list" }), jsx("select", { value: localItemsPerPage, onChange: handleItemsPerPageChange, children: pageSizeOptions.map(size => (jsx("option", { value: size, children: pageLabel ? `${size} / ${pageLabel}` : size }, size))) })] }), jsxs("div", { className: "cw-table-pagination-nav", children: [jsx(CwButton, { onClick: () => handlePageChange(1), disabled: currentPage === 1 || totalPages === 1, variant: "icon", icon: "chevron-left-double" }), jsx(CwButton, { onClick: () => handlePageChange(currentPage - 1), disabled: currentPage === 1 || totalPages === 1, variant: "icon", icon: "chevron-left" }), jsx("input", { type: "text", inputMode: "numeric", value: currentPage, onChange: (e) => {
2046
- const value = parseInt(e.target.value, 10);
2047
- if (!isNaN(value))
2048
- handlePageChange(value);
2049
- }, onBlur: (e) => {
2050
- const value = parseInt(e.target.value, 10);
2051
- if (isNaN(value) || value < 1 || value > totalPages) {
2052
- handlePageChange(1);
2053
- }
2054
- }, min: 1, max: totalPages }), jsx("span", { children: "/" }), jsx("span", { children: totalPages }), jsx(CwButton, { onClick: () => handlePageChange(currentPage + 1), disabled: currentPage === totalPages || totalPages === 1, variant: "icon", icon: "chevron-right" }), jsx(CwButton, { onClick: () => handlePageChange(totalPages), disabled: currentPage === totalPages || totalPages === 1, variant: "icon", icon: "chevron-right-double" })] })] }))] }));
1706
+ return (jsxs("div", { id: id, className: `cw-table-container ${classNameContainer ?? ""}`, style: style, children: [jsx("div", { style: scrollContainerStyle, children: jsxs("table", { className: `cw-table ${className ?? ""}`, style: { width: "100%" }, children: [jsx("thead", { style: stickyHeader
1707
+ ? { position: "sticky", top: 0, background: "white", zIndex: 2 }
1708
+ : undefined, children: jsxs("tr", { children: [expandedRowRender && jsx("th", {}), columns.map(col => (jsxs("th", { onClick: () => col.sortable && col.dataIndex && handleSort(col.dataIndex), className: `${col.className ?? ""} ${sortConfig.key === col.dataIndex
1709
+ ? sortConfig.direction
1710
+ : ""}`.trim(), style: {
1711
+ cursor: col.sortable ? "pointer" : "default",
1712
+ userSelect: "none",
1713
+ width: columnWidths[col.key] ?? col.width,
1714
+ ...((col.width || columnWidths[col.key]) && {
1715
+ minWidth: 50,
1716
+ maxWidth: columnWidths[col.key] ?? col.width
1717
+ }),
1718
+ }, children: [jsxs("div", { className: "cw-flex-row cw-align-between-center", children: [jsx("span", { children: col.title }), col.sortable && col.dataIndex && (jsx(CwIcon, { size: "large", iconId: sortConfig.key !== col.dataIndex
1719
+ ? "sortable"
1720
+ : sortConfig.direction === "asc"
1721
+ ? "sortable-asc"
1722
+ : "sortable-desc" }))] }), jsx("span", { onMouseDown: (e) => startResize(e, col.key), className: "th-column-resizer" })] }, col.key)))] }) }), jsx("tbody", { children: renderTableBody() })] }) }), pagination && totalPages > 1 && (jsxs("footer", { className: "cw-table-pagination", children: [jsx("button", { onClick: () => handlePageChange(1), disabled: currentPage === 1 || totalPages === 1, className: "cw-button-icon cwi-chevron-left-double", title: "First" }), jsx("button", { onClick: () => handlePageChange(currentPage - 1), disabled: currentPage === 1 || totalPages === 1, className: "cw-button-icon cwi-chevron-left", title: "Previous" }), jsx("input", { type: "text", inputMode: "numeric", value: currentPage, onChange: (e) => {
1723
+ const value = parseInt(e.target.value, 10);
1724
+ if (!isNaN(value))
1725
+ handlePageChange(value);
1726
+ }, onBlur: (e) => {
1727
+ const value = parseInt(e.target.value, 10);
1728
+ if (isNaN(value) || value < 1 || value > totalPages) {
1729
+ handlePageChange(1);
1730
+ }
1731
+ }, min: 1, max: totalPages }), jsxs("span", { children: ["of ", totalPages] }), jsx("button", { onClick: () => handlePageChange(currentPage + 1), disabled: currentPage === totalPages || totalPages === 1, className: "cw-button-icon cwi-chevron-right", title: "Next" }), jsx("button", { onClick: () => handlePageChange(totalPages), disabled: currentPage === totalPages || totalPages === 1, className: "cw-button-icon cwi-chevron-right-double", title: "Last" }), jsx("select", { value: localItemsPerPage, onChange: handleItemsPerPageChange, children: pageSizeOptions.map(size => (jsxs("option", { value: size, children: [size, " / page"] }, size))) })] }))] }));
2055
1732
  }
2056
1733
 
2057
- var styles$j = {"dropIndicator":"cw-sortable-table-module__dropIndicator__ov-Jz","dragging":"cw-sortable-table-module__dragging__MrLrz","skeletonRow":"cw-sortable-table-module__skeletonRow__vyD0M","skeleton":"cw-sortable-table-module__skeleton__QGXAD","saveBar":"cw-sortable-table-module__saveBar__3OdoZ cw-flex-row cw-align-center-center cw-gap-small"};
1734
+ var styles$e = {"cw-tabs":"cw-tabs-module_cw-tabs__1pmji","badge":"cw-tabs-module_badge__AmVxW","cw-tabs-content":"cw-tabs-module_cw-tabs-content__HTp8d"};
2058
1735
 
1736
+ const TabIcon = ({ icon }) => {
1737
+ if (!icon)
1738
+ return null;
1739
+ // If icon is a string, treat it as a class name
1740
+ if (typeof icon === 'string') {
1741
+ return (jsx("span", { className: `cwi-icons ${icon}` }));
1742
+ }
1743
+ // If icon is a ReactNode, return it directly
1744
+ return icon;
1745
+ };
2059
1746
  /**
2060
- * Hook that provides state management for CwSortableTable.
1747
+ * CwTabs component for displaying tabbed content.
1748
+ * @param CwTabsProps
1749
+ * @example
1750
+ The way to use the tab component:
1751
+ * const [activeTab, setActiveTab] = useState("1");
2061
1752
  *
2062
- * Follows the same pattern as useSortableList:
2063
- * - The hook only manages STATE (items, hasChanges, save, discard)
2064
- * - The component manages INTERACTION (drag, drop, calculating new order)
2065
- * - handleReorder receives the already-reordered array and just stores it
2066
- * - Changes are only persisted when handleSave is called
2067
- * - handleDiscard restores the original order
1753
+ * const handleTabChange = (tab) => {
1754
+ * setActiveTab(tab.key);
1755
+ * };
2068
1756
  *
2069
- * @param initialItems - The initial array of items to display
1757
+ * const tabs = [
1758
+ * { key: "1", title: 'Tab 1', icon: 'iconClassname', content: <div>Content for tab 1</div> },
1759
+ * { key: "2", title: 'Tab 2', icon: 'iconClassname', content: <div>Content for tab 2</div> },
1760
+ * { key: "3", title: 'Tab 3', icon: 'iconClassname', content: <div>Content for tab 3</div> },
1761
+ * ];
2070
1762
  *
2071
- * @example
2072
- * ```tsx
2073
- * const { items, hasChanges, handleReorder, handleSave, handleDiscard } = useSortableTable(data);
2074
- * ```
2075
- */
2076
- function useSortableTable(initialItems) {
2077
- const [items, setItems] = useState(initialItems);
2078
- const [originalItems, setOriginalItems] = useState(initialItems);
2079
- const [hasChanges, setHasChanges] = useState(false);
2080
- // Sync items only when initialItems changes from outside (e.g. after initial fetch).
2081
- // We skip the sync when there are local unsaved changes to avoid
2082
- // overwriting the user's reordering work.
2083
- const prevInitialRef = useRef(initialItems);
2084
- useEffect(() => {
2085
- if (prevInitialRef.current === initialItems)
2086
- return;
2087
- prevInitialRef.current = initialItems;
2088
- if (!hasChanges) {
2089
- setItems(initialItems);
2090
- setOriginalItems(initialItems);
2091
- }
2092
- }, [initialItems, hasChanges]);
2093
- // Receives the already-reordered array from the component and stores it.
2094
- // No splice logic here — same pattern as useSortableList.handleReorder.
2095
- const handleReorder = useCallback((newItems) => {
2096
- setItems(newItems);
2097
- setHasChanges(true);
2098
- }, []);
2099
- const handleSave = async (onSave) => {
2100
- await onSave(items);
2101
- setOriginalItems(items);
2102
- setHasChanges(false);
2103
- };
2104
- const handleDiscard = useCallback(() => {
2105
- setItems(originalItems);
2106
- setHasChanges(false);
2107
- }, [originalItems]);
2108
- return {
2109
- items,
2110
- hasChanges,
2111
- handleReorder,
2112
- handleSave,
2113
- handleDiscard,
2114
- // dragState is managed in the component, same as CwSortableList
2115
- dragState: { dragSourceIndex: -1, dropTargetIndex: -1 },
2116
- };
2117
- }
2118
-
2119
- // ─── Drop indicator row ───────────────────────────────────────────────────────
2120
- const DropIndicatorRow = ({ colSpan }) => (jsx("tr", { className: styles$j.dropIndicator, "aria-hidden": true, children: jsx("td", { colSpan: colSpan, children: jsx("div", {}) }) }));
2121
- // ─── Loading skeleton ─────────────────────────────────────────────────────────
2122
- const LoadingRows = ({ colSpan }) => (jsx(Fragment, { children: Array.from({ length: 4 }).map((_, i) => (jsx("tr", { className: styles$j.skeletonRow, children: jsx("td", { colSpan: colSpan, children: jsx("div", { className: styles$j.skeleton }) }) }, i))) }));
2123
- // ─── Component ────────────────────────────────────────────────────────────────
2124
- /**
2125
- * CwSortableTable
2126
- *
2127
- * A table with drag-and-drop row reordering and save/discard support.
2128
- * Shares visual styles with CwTable but is intentionally simpler:
2129
- * no column sorting, no pagination.
2130
- *
2131
- * When the user reorders rows, changes are held locally until they
2132
- * click Save. A save bar appears automatically when there are pending changes.
2133
- *
2134
- * Follows the same pattern as CwSortableList:
2135
- * - All rows are draggable — the handle is visual only
2136
- * - Reorder is calculated in onDragEnd using lastValidDropIndex
2137
- * - draggedItem is tracked in state, not via dataTransfer
2138
- */
2139
- function CwSortableTable({ columns, data, rowKey = "key", onReorder, loading = false, textNoData = "No data available", className, tableClassName, maxHeight, showHandle = true, style, saveLabel = "Save order", discardLabel = "Discard", }) {
2140
- const { items, hasChanges, handleReorder, handleSave, handleDiscard, } = useSortableTable(data);
2141
- // Drag state lives in the component, same as CwSortableList
2142
- const [draggedItem, setDraggedItem] = useState(null);
2143
- const [dropIndicatorIndex, setDropIndicatorIndex] = useState(null);
2144
- const [lastValidDropIndex, setLastValidDropIndex] = useState(null);
2145
- // Total columns = handle column (optional) + user columns
2146
- const totalCols = columns.length + (showHandle ? 1 : 0);
2147
- const containerStyle = {
2148
- ...style,
2149
- ...(maxHeight ? { maxHeight, overflowY: "auto" } : {}),
2150
- };
2151
- // ── Drag handlers — replicating CwSortableList pattern exactly ──────────
2152
- const cleanupDragState = () => {
2153
- setDraggedItem(null);
2154
- setDropIndicatorIndex(null);
2155
- setLastValidDropIndex(null);
2156
- };
2157
- const handleDragStart = (e, item) => {
2158
- setDraggedItem(item);
2159
- setLastValidDropIndex(null);
2160
- e.dataTransfer.effectAllowed = "move";
2161
- };
2162
- const handleDragOver = (e, index) => {
2163
- e.preventDefault();
2164
- if (!draggedItem)
2165
- return;
2166
- const rect = e.currentTarget.getBoundingClientRect();
2167
- const elementCenterY = rect.top + rect.height / 2;
2168
- const dropIndex = e.clientY < elementCenterY ? index : index + 1;
2169
- if (dropIndicatorIndex !== dropIndex) {
2170
- setDropIndicatorIndex(dropIndex);
2171
- setLastValidDropIndex(dropIndex);
2172
- }
2173
- };
2174
- const handleDragEnd = () => {
2175
- if (draggedItem && lastValidDropIndex !== null) {
2176
- const dragIndex = items.findIndex(item => item[rowKey] === draggedItem[rowKey]);
2177
- if (dragIndex !== lastValidDropIndex && dragIndex !== lastValidDropIndex - 1) {
2178
- const newItems = [...items];
2179
- const [draggedElement] = newItems.splice(dragIndex, 1);
2180
- let finalIndex = lastValidDropIndex;
2181
- if (dragIndex < finalIndex)
2182
- finalIndex -= 1;
2183
- newItems.splice(finalIndex, 0, draggedElement);
2184
- handleReorder(newItems);
2185
- }
2186
- }
2187
- cleanupDragState();
2188
- };
2189
- // ── Render helpers ──────────────────────────────────────────────────────
2190
- const renderCell = (item, col) => {
2191
- if (col.render)
2192
- return col.render(item);
2193
- if (col.dataIndex) {
2194
- const value = item[col.dataIndex];
2195
- return value != null ? String(value) : "";
2196
- }
2197
- return "";
2198
- };
2199
- const renderBody = () => {
2200
- if (loading) {
2201
- return jsx(LoadingRows, { colSpan: totalCols });
2202
- }
2203
- if (!items || items.length === 0) {
2204
- return (jsx("tr", { children: jsx("td", { colSpan: totalCols, className: "cw-table-cell-empty", style: { textAlign: "center" }, children: textNoData }) }));
2205
- }
2206
- return items.map((item, index) => {
2207
- const key = item[rowKey];
2208
- const isDragging = draggedItem?.[rowKey] === key;
2209
- return (jsxs(React__default.Fragment, { children: [dropIndicatorIndex === index && (jsx(DropIndicatorRow, { colSpan: totalCols })), jsxs("tr", { draggable: true, onDragStart: (e) => handleDragStart(e, item), onDragOver: (e) => handleDragOver(e, index), onDragEnd: handleDragEnd, className: isDragging ? styles$j.dragging : "", children: [showHandle && (jsx("td", { className: "cw-table-col-action", children: jsx(CwIcon, { iconId: "grip-dots", color: "neutral", style: { opacity: 0.75 } }) })), columns.map(col => (jsx("td", { className: col.className ?? "", style: col.width ? { width: col.width } : undefined, children: renderCell(item, col) }, `${String(key)}_${col.key}`)))] }), index === items.length - 1 && dropIndicatorIndex === items.length && (jsx(DropIndicatorRow, { colSpan: totalCols }))] }, String(key)));
2210
- });
2211
- };
2212
- // ── Render ──────────────────────────────────────────────────────────────
2213
- return (jsxs("div", { className: `cw-table-container ${className ?? ""}`, style: containerStyle, children: [jsxs("table", { className: `cw-table cw-sortable-table ${tableClassName ?? ""}`, style: { width: "100%" }, children: [jsx("thead", { children: jsxs("tr", { children: [showHandle && jsx("th", { className: "cw-table-col-action" }), columns.map(col => (jsx("th", { className: col.className ?? "", style: col.width ? { width: col.width, minWidth: 50 } : undefined, children: col.title }, col.key)))] }) }), jsx("tbody", { children: renderBody() })] }), hasChanges && (jsxs("footer", { className: styles$j.saveBar, children: [jsx(CwButton, { variant: "outline", color: "neutral", icon: "undo", text: discardLabel, onClick: handleDiscard }), jsx(CwButton, { variant: "solid", color: "primary", icon: "save", text: saveLabel, onClick: () => handleSave(onReorder) })] }))] }));
2214
- }
2215
-
2216
- /**
2217
- * A reusable and customizable table component (server-side pagination and sorting).
2218
- *
2219
- * @param props - Component props to configure columns, data, styles, pagination, expanded rows, and more.
2220
- *
2221
- * @example
2222
- * // --- Component ---
2223
- * const columns: Column<User>[] = [
2224
- * { title: "Name", dataIndex: "name", key: "name", sortable: true },
2225
- * { title: "Age", dataIndex: "age", key: "age", sortable: true },
2226
- * { title: "Address", dataIndex: "address", key: "address" }
2227
- * ];
2228
- *
2229
- *
2230
- * const [tableState, setTableState] = useState<ServerSideTableState<User>>({
2231
- * page: 1,
2232
- * pageSize: 5,
2233
- * sortKey: null,
2234
- * sortDirection: null
2235
- * });
2236
- * const [data, setData] = useState<User[]>([]);
2237
- * const [totalItems, setTotalItems] = useState(0);
2238
- * const [loading, setLoading] = useState(false);
2239
- *
2240
- * // Fetch simulation on table state change
2241
- * useEffect(() => {
2242
- * setLoading(true);
2243
- * fetch(`/api/users?page=${tableState.page}&pageSize=${tableState.pageSize}` +
2244
- * (tableState.sortKey ? `&sortKey=${tableState.sortKey}&sortDirection=${tableState.sortDirection}` : "")
2245
- * )
2246
- * .then(res => res.json())
2247
- * .then(({ items, total }) => {
2248
- * setData(items);
2249
- * setTotalItems(total);
2250
- * })
2251
- * .finally(() => setLoading(false));
2252
- * }, [tableState]);
2253
- *
2254
- * <CwTableServerSide<User>
2255
- * columns={columns}
2256
- * data={data}
2257
- * totalItems={totalItems}
2258
- * pagination={true}
2259
- * pageSizeOptions={[5, 10, 20]}
2260
- * loading={loading}
2261
- * serverState={tableState}
2262
- * onChange={setTableState}
2263
- * rowKey="id"
2264
- * textNoData="No data available"
2265
- * />
2266
- *
2267
- * @returns React component
2268
- */
2269
- function CwTableServerSide({ columns, data, totalItems, pagination = false, pageSizeOptions = [5, 10, 20, 50], pageLabel = "page", expandedRowRender, onExpand, className, classNameRow, style, classNameContainer, id, testId, textNoData = "No data available at the moment", rowKey = "key", loading = false, scrollHeight, stickyHeader = false, rowSelection, onChange, serverState, }) {
2270
- const [internalState, setInternalState] = useState({
2271
- page: 1,
2272
- pageSize: pageSizeOptions[0],
2273
- sortKey: null,
2274
- sortDirection: null,
2275
- });
2276
- const [expandedRowKey, setExpandedRowKey] = useState(null);
2277
- const [columnWidths, setColumnWidths] = useState(() => columns.reduce((acc, col) => {
2278
- if (col.width)
2279
- acc[col.key] = col.width;
2280
- return acc;
2281
- }, {}));
2282
- const [selectedKeys, setSelectedKeys] = useState(new Set(rowSelection?.selectedRowKeys || []));
2283
- useEffect(() => {
2284
- setSelectedKeys(new Set(rowSelection?.selectedRowKeys || []));
2285
- }, [rowSelection?.selectedRowKeys]);
2286
- const state = serverState ?? internalState;
2287
- const triggerChange = useCallback((next) => {
2288
- const newState = { ...state, ...next };
2289
- if (!serverState)
2290
- setInternalState(newState);
2291
- onChange?.(newState);
2292
- }, [state, serverState, onChange]);
2293
- const handleItemsPerPageChange = useCallback((e) => {
2294
- triggerChange({ pageSize: parseInt(e.target.value, 10), page: 1 });
2295
- }, [triggerChange]);
2296
- const handleRowExpand = useCallback((item) => {
2297
- const itemKey = item[rowKey];
2298
- setExpandedRowKey((prev) => (prev === itemKey ? null : itemKey));
2299
- onExpand?.(item);
2300
- }, [rowKey, onExpand]);
2301
- const handleSort = useCallback((columnKey) => {
2302
- let nextSortKey = columnKey;
2303
- let nextSortDirection = "asc";
2304
- if (state.sortKey === columnKey) {
2305
- nextSortDirection = state.sortDirection === "asc" ? "desc" : state.sortDirection === "desc" ? null : "asc";
2306
- if (nextSortDirection === null)
2307
- nextSortKey = null;
2308
- }
2309
- triggerChange({ sortKey: nextSortKey, sortDirection: nextSortDirection, page: 1 });
2310
- }, [state, triggerChange]);
2311
- const handleRowClick = useCallback((item, e) => {
2312
- if (e.target.closest(".cw-table-col-expand")) {
2313
- return;
2314
- }
2315
- const itemKey = item[rowKey];
2316
- setSelectedKeys((prev) => {
2317
- const newSet = new Set(prev);
2318
- if (rowSelection?.type === "single") {
2319
- if (newSet.has(itemKey)) {
2320
- newSet.clear();
2321
- }
2322
- else {
2323
- newSet.clear();
2324
- newSet.add(itemKey);
2325
- }
2326
- }
2327
- else {
2328
- if (newSet.has(itemKey)) {
2329
- newSet.delete(itemKey);
2330
- }
2331
- else {
2332
- newSet.add(itemKey);
2333
- }
2334
- }
2335
- const selectedRows = data.filter((item) => newSet.has(item[rowKey]));
2336
- setTimeout(() => {
2337
- rowSelection?.onChange?.(Array.from(newSet), selectedRows);
2338
- }, 0);
2339
- return newSet;
2340
- });
2341
- }, [rowSelection, rowKey, data]);
2342
- const totalPages = useMemo(() => {
2343
- return pagination ? Math.ceil(totalItems / state.pageSize) : 1;
2344
- }, [totalItems, state.pageSize, pagination]);
2345
- const handlePageChange = (page) => {
2346
- if (page >= 1 && page <= totalPages)
2347
- triggerChange({ page });
2348
- };
2349
- const startResize = (e, key) => {
2350
- e.preventDefault();
2351
- const startX = e.clientX;
2352
- const startWidth = e.target.parentElement?.offsetWidth || 0;
2353
- const onMouseMove = (moveEvent) => {
2354
- const newWidth = Math.max(startWidth + moveEvent.clientX - startX, 50);
2355
- setColumnWidths((prev) => ({ ...prev, [key]: newWidth }));
2356
- };
2357
- const onMouseUp = () => {
2358
- window.removeEventListener("mousemove", onMouseMove);
2359
- window.removeEventListener("mouseup", onMouseUp);
2360
- };
2361
- window.addEventListener("mousemove", onMouseMove);
2362
- window.addEventListener("mouseup", onMouseUp);
2363
- };
2364
- const scrollContainerStyle = useMemo(() => {
2365
- if (stickyHeader || scrollHeight) {
2366
- return {
2367
- maxHeight: scrollHeight ?? 300,
2368
- overflowY: "auto",
2369
- };
2370
- }
2371
- return {};
2372
- }, [stickyHeader, scrollHeight]);
2373
- const getColSpan = () => columns.length + (expandedRowRender ? 1 : 0);
2374
- const hasClassNameRow = (item) => {
2375
- return typeof item === "object" && item !== null && "classNameRow" in item;
2376
- };
2377
- const renderTableBody = () => {
2378
- if (loading) {
2379
- return (jsx("tr", { children: jsx("td", { colSpan: getColSpan(), children: jsx("div", { children: "Loading data..." }) }) }));
2380
- }
2381
- if (!data || data.length === 0) {
2382
- return (jsx("tr", { children: jsx("td", { colSpan: getColSpan(), className: "cw-table-cell-empty", style: { textAlign: "center" }, children: textNoData }) }));
2383
- }
2384
- return data.map((item) => {
2385
- const itemKey = item[rowKey];
2386
- if (!itemKey)
2387
- console.warn("Missing row key for item", item);
2388
- const isSelected = selectedKeys.has(itemKey);
2389
- const dynamicClassName = typeof classNameRow === "function" ? classNameRow(item) : (classNameRow ?? "");
2390
- return (jsxs(React__default.Fragment, { children: [jsxs("tr", { className: `${dynamicClassName} ${hasClassNameRow(item) ? item.classNameRow : ""} ${isSelected ? "cw-table-row-selected" : ""}`, onClick: (e) => rowSelection && handleRowClick(item, e), style: {
2391
- cursor: rowSelection ? "pointer" : "default",
2392
- backgroundColor: isSelected ? "var(--cw-color-info-container)" : undefined,
2393
- transition: "background-color 0.2s ease",
2394
- }, children: [expandedRowRender && (jsx("td", { className: "cw-table-col-action cw-table-col-expand", children: jsx("button", { onClick: () => handleRowExpand(item), className: `cw-button-icon ${expandedRowKey === itemKey ? "cwi-chevron-down" : "cwi-chevron-right"}` }) })), columns.map((col) => (jsx("td", { className: col.className ?? "", children: col.render ? col.render(item) : col.dataIndex ? String(item[col.dataIndex]) : "" }, `${itemKey}_${col.key}`)))] }), expandedRowRender && expandedRowKey === itemKey && (jsx("tr", { className: "cw-table-row-expanded", children: jsx("td", { colSpan: getColSpan(), children: expandedRowRender(item) }) }))] }, String(itemKey)));
2395
- });
2396
- };
2397
- return (jsxs("div", { id: id, "data-testid": testId, className: `cw-table-container ${classNameContainer ?? ""}`, style: style, children: [jsx("div", { style: scrollContainerStyle, children: jsxs("table", { className: `cw-table ${className ?? ""}`, style: { width: "100%" }, children: [jsx("thead", { style: stickyHeader ? { position: "sticky", top: 0, background: "white", zIndex: 2 } : undefined, children: jsxs("tr", { children: [expandedRowRender && jsx("th", {}), columns.map((col) => (jsxs("th", { onClick: () => col.sortable && col.dataIndex && handleSort(col.dataIndex), className: `${col.className ?? ""} ${state.sortKey === col.dataIndex ? state.sortDirection : ""}`.trim(), style: {
2398
- cursor: col.sortable ? "pointer" : "default",
2399
- userSelect: "none",
2400
- width: columnWidths[col.key] ?? col.width,
2401
- ...((col.width || columnWidths[col.key]) && {
2402
- minWidth: 50,
2403
- maxWidth: columnWidths[col.key] ?? col.width,
2404
- }),
2405
- }, children: [jsxs("div", { className: "cw-flex-row cw-align-between-center", children: [jsx("span", { children: col.title }), col.sortable && col.dataIndex && (jsx(CwIcon, { size: "large", iconId: state.sortKey !== col.dataIndex
2406
- ? "sortable"
2407
- : state.sortDirection === "asc"
2408
- ? "sortable-asc"
2409
- : "sortable-desc" }))] }), jsx("span", { onMouseDown: (e) => startResize(e, col.key), className: "th-column-resizer" })] }, col.key)))] }) }), jsx("tbody", { children: renderTableBody() })] }) }), pagination && (jsxs("footer", { className: "cw-table-pagination", children: [jsx("button", { onClick: () => handlePageChange(1), disabled: state.page === 1 || totalPages === 1, className: "cw-button-icon cwi-chevron-left-double", title: "First" }), jsx("button", { onClick: () => handlePageChange(state.page - 1), disabled: state.page === 1 || totalPages === 1, className: "cw-button-icon cwi-chevron-left", title: "Previous" }), jsx("input", { type: "text", inputMode: "numeric", value: state.page, onChange: (e) => {
2410
- const value = parseInt(e.target.value, 10);
2411
- if (!isNaN(value))
2412
- handlePageChange(value);
2413
- }, onBlur: (e) => {
2414
- const value = parseInt(e.target.value, 10);
2415
- if (isNaN(value) || value < 1 || value > totalPages) {
2416
- handlePageChange(1);
2417
- }
2418
- }, min: 1, max: totalPages }), jsxs("span", { children: ["of ", totalPages] }), jsx("button", { onClick: () => handlePageChange(state.page + 1), disabled: state.page === totalPages || totalPages === 1, className: "cw-button-icon cwi-chevron-right", title: "Next" }), jsx("button", { onClick: () => handlePageChange(totalPages), disabled: state.page === totalPages || totalPages === 1, className: "cw-button-icon cwi-chevron-right-double", title: "Last" }), jsx("select", { value: state.pageSize, onChange: handleItemsPerPageChange, children: pageSizeOptions.map((size) => (jsx("option", { value: size, children: pageLabel ? `${size} / ${pageLabel}` : size }, size))) })] }))] }));
2419
- }
2420
-
2421
- var styles$i = {"cw-tabs":"cw-tabs-module__cw-tabs__1pmji","badge":"cw-tabs-module__badge__AmVxW","cw-tabs-content":"cw-tabs-module__cw-tabs-content__HTp8d"};
2422
-
2423
- const TabIcon = ({ icon }) => {
2424
- if (!icon)
2425
- return null;
2426
- // If icon is a string, treat it as a class name
2427
- if (typeof icon === 'string') {
2428
- return (jsx("span", { className: `cwi-icons ${icon}` }));
2429
- }
2430
- // If icon is a ReactNode, return it directly
2431
- return icon;
2432
- };
2433
- /**
2434
- * CwTabs component for displaying tabbed content.
2435
- * @param CwTabsProps
2436
- * @example
2437
- The way to use the tab component:
2438
- * const [activeTab, setActiveTab] = useState("1");
2439
- *
2440
- * const handleTabChange = (tab) => {
2441
- * setActiveTab(tab.key);
2442
- * };
2443
- *
2444
- * const tabs = [
2445
- * { key: "1", title: 'Tab 1', icon: 'iconClassname', content: <div>Content for tab 1</div> },
2446
- * { key: "2", title: 'Tab 2', icon: 'iconClassname', content: <div>Content for tab 2</div> },
2447
- * { key: "3", title: 'Tab 3', icon: 'iconClassname', content: <div>Content for tab 3</div> },
2448
- * ];
2449
- *
2450
- * <CwTabs
2451
- * tabs={tabs}
2452
- * tabsPosition="top"
2453
- * defaultActiveKey={activeTab} // Use the current state for defaultActiveKey
2454
- * onTabClick={handleTabChange}
2455
- * />
2456
- * @returns A tab
1763
+ * <CwTabs
1764
+ * tabs={tabs}
1765
+ * tabsPosition="top"
1766
+ * defaultActiveKey={activeTab} // Use the current state for defaultActiveKey
1767
+ * onTabClick={handleTabChange}
1768
+ * />
1769
+ * @returns A tab
2457
1770
  */
2458
1771
  function CwTabs(CwTabsProps) {
2459
1772
  // const [activeTab, setActiveTab] = useState<string | null>(null);
@@ -2468,7 +1781,7 @@ function CwTabs(CwTabsProps) {
2468
1781
  const tabsListStyle = position === 'left' && CwTabsProps.tabsListWidth
2469
1782
  ? { minWidth: CwTabsProps.tabsListWidth }
2470
1783
  : undefined;
2471
- return (jsxs("div", { id: CwTabsProps.id, "data-testid": CwTabsProps.testId, className: styles$i['cw-tabs'] + (CwTabsProps.className ? ` ${CwTabsProps.className}` : "") + "", style: CwTabsProps.style, "data-tabs-position": position, children: [jsx("ul", { style: tabsListStyle, children: CwTabsProps.tabs.map(tab => (jsxs("li", { className: `${tab.key === activeTab ? "cw-tab-active" : ""}`, onClick: () => handleTabClick(tab), "data-active": tab.key === activeTab, "data-tab-key": tab.key, children: [jsx(TabIcon, { icon: tab.icon }), tab.title, (tab.badge !== undefined || tab.badgeColor) && (jsx("span", { className: styles$i['badge'], style: tab.badgeColor ? { backgroundColor: tab.badgeColor, color: getContrastColor(tab.badgeColor) } : undefined, children: tab.badge }))] }, tab.key))) }), jsx("div", { className: styles$i['cw-tabs-content'], "data-active-tab-key": activeTab ?? undefined, children: activeTab !== null && CwTabsProps.tabs.find(tab => tab.key === activeTab)?.content })] }));
1784
+ return (jsxs("div", { id: CwTabsProps.id, className: styles$e['cw-tabs'], style: CwTabsProps.style, "data-tabs-position": position, children: [jsx("ul", { style: tabsListStyle, children: CwTabsProps.tabs.map(tab => (jsxs("li", { className: `${tab.key === activeTab ? "cw-tab-active" : ""}`, onClick: () => handleTabClick(tab), "data-active": tab.key === activeTab, children: [jsx(TabIcon, { icon: tab.icon }), tab.title, tab.badge !== undefined && (jsx("span", { className: styles$e['badge'], style: tab.badgeColor ? { backgroundColor: tab.badgeColor, color: getContrastColor(tab.badgeColor) } : undefined, children: tab.badge }))] }, tab.key))) }), jsx("div", { className: styles$e['cw-tabs-content'], children: activeTab !== null && CwTabsProps.tabs.find(tab => tab.key === activeTab)?.content })] }));
2472
1785
  }
2473
1786
 
2474
1787
  /**
@@ -2492,49 +1805,7 @@ const CwExpandable = ({ briefing, onToggle, onOpen, onClose, children, ...detail
2492
1805
  onClose?.(ev);
2493
1806
  });
2494
1807
  }, [onClose, onOpen, onToggle]);
2495
- return (jsxs("details", { ref: myRef, ...detailsProps, className: "cw-expandable", children: [jsx("summary", { children: briefing }), children && jsx("section", { children: children })] }));
2496
- };
2497
-
2498
- var styles$h = {"cw-master-detail":"cw-master-detail-module__cw-master-detail__O8-FA","resizer":"cw-master-detail-module__resizer__hvGhL","detail":"cw-master-detail-module__detail__BG4Dm","detail-empty":"cw-master-detail-module__detail-empty__KFScK"};
2499
-
2500
- const CwMasterDetail = ({ id, className, style, items, selectedKey, onSelect, detailContent, emptyDetail, searchPlaceholder = 'Search...', onSearch, masterHeader, masterFooter, masterWidth: initialWidth = 320, minMasterWidth = 240, maxMasterWidth = 500, resizable = true, showSearch = true, }) => {
2501
- const [masterWidth, setMasterWidth] = useState(initialWidth);
2502
- const [isResizing, setIsResizing] = useState(false);
2503
- const containerRef = useRef(null);
2504
- const handleMouseDown = useCallback((e) => {
2505
- if (!resizable)
2506
- return;
2507
- e.preventDefault();
2508
- setIsResizing(true);
2509
- }, [resizable]);
2510
- useEffect(() => {
2511
- if (!isResizing)
2512
- return;
2513
- const handleMouseMove = (e) => {
2514
- if (!containerRef.current)
2515
- return;
2516
- const rect = containerRef.current.getBoundingClientRect();
2517
- const newWidth = Math.max(minMasterWidth, Math.min(maxMasterWidth, e.clientX - rect.left));
2518
- setMasterWidth(newWidth);
2519
- };
2520
- const handleMouseUp = () => {
2521
- setIsResizing(false);
2522
- };
2523
- document.addEventListener('mousemove', handleMouseMove);
2524
- document.addEventListener('mouseup', handleMouseUp);
2525
- document.body.style.cursor = 'col-resize';
2526
- document.body.style.userSelect = 'none';
2527
- return () => {
2528
- document.removeEventListener('mousemove', handleMouseMove);
2529
- document.removeEventListener('mouseup', handleMouseUp);
2530
- document.body.style.cursor = '';
2531
- document.body.style.userSelect = '';
2532
- };
2533
- }, [isResizing, minMasterWidth, maxMasterWidth]);
2534
- const rootClassName = [styles$h['cw-master-detail'], className].filter(Boolean).join(' ');
2535
- return (jsxs("div", { id: id, ref: containerRef, className: rootClassName, style: style, children: [jsxs("aside", { style: { width: masterWidth, minWidth: masterWidth }, children: [showSearch && (jsx("search", { children: jsx("input", { type: "text", placeholder: searchPlaceholder, onChange: (e) => onSearch?.(e.target.value) }) })), masterHeader && (jsx("header", { children: masterHeader })), jsx("ul", { children: items.map((item) => (jsx("li", { "data-master-key": item.key, "data-selected": item.key === selectedKey, "data-disabled": item.disabled, onClick: () => onSelect?.(item.key), children: item.content }, item.key))) }), masterFooter && (jsx("footer", { children: masterFooter }))] }), resizable && (jsx("div", { className: styles$h.resizer, "data-resizing": isResizing, onMouseDown: handleMouseDown })), jsx("section", { className: styles$h.detail, children: selectedKey && detailContent
2536
- ? detailContent
2537
- : (jsx("div", { className: styles$h['detail-empty'], children: emptyDetail ?? 'Select an item to view details' })) })] }));
1808
+ return (jsx("div", { className: "cw-expandable", children: jsxs("details", { ref: myRef, ...detailsProps, children: [jsx("summary", { children: briefing }), children && jsx("section", { children: children })] }) }));
2538
1809
  };
2539
1810
 
2540
1811
  /**
@@ -2558,9 +1829,9 @@ const CwKeyValueList = ({ items, className = "", emptyValue = "-", direction = "
2558
1829
  : emptyValue })] }, item.key))) }));
2559
1830
  };
2560
1831
 
2561
- var styles$g = {"sortableList":"cw-sortable-list-module__sortableList__PyLO-","sortableItem":"cw-sortable-list-module__sortableItem__FAnn2","readOnly":"cw-sortable-list-module__readOnly__r7GcH","dragging":"cw-sortable-list-module__dragging__MD715","moved":"cw-sortable-list-module__moved__sE6-N","expandedContent":"cw-sortable-list-module__expandedContent__Kocna","sortableHandle":"cw-sortable-list-module__sortableHandle__HvYBK","sortableContent":"cw-sortable-list-module__sortableContent__C6JhR","sortableTitle":"cw-sortable-list-module__sortableTitle__EgWXr","sortableExtraContent":"cw-sortable-list-module__sortableExtraContent__s4LSv","sortableActions":"cw-sortable-list-module__sortableActions__gwQOU","dropIndicator":"cw-sortable-list-module__dropIndicator__MNSF-","emptyMessage":"cw-sortable-list-module__emptyMessage__gMpaL"};
1832
+ var styles$d = {"sortableList":"cw-sortable-list-module_sortableList__PyLO-","sortableItem":"cw-sortable-list-module_sortableItem__FAnn2","readOnly":"cw-sortable-list-module_readOnly__r7GcH","dragging":"cw-sortable-list-module_dragging__MD715","moved":"cw-sortable-list-module_moved__sE6-N","expandedContent":"cw-sortable-list-module_expandedContent__Kocna","sortableHandle":"cw-sortable-list-module_sortableHandle__HvYBK","sortableContent":"cw-sortable-list-module_sortableContent__C6JhR","sortableTitle":"cw-sortable-list-module_sortableTitle__EgWXr","sortableExtraContent":"cw-sortable-list-module_sortableExtraContent__s4LSv","sortableActions":"cw-sortable-list-module_sortableActions__gwQOU","dropIndicator":"cw-sortable-list-module_dropIndicator__MNSF-","emptyMessage":"cw-sortable-list-module_emptyMessage__gMpaL"};
2562
1833
 
2563
- function CwSortableList({ items, onReorder, renderItem, className = '', movedItems = new Set(), emptyMessage = "No elements to show", readOnly = false, maxHeight = "300px", }) {
1834
+ function CwSortableList({ items, onReorder, renderItem, className = '', movedItems = new Set(), emptyMessage = "No elements to show", readOnly = false, }) {
2564
1835
  const [draggedItem, setDraggedItem] = useState(null);
2565
1836
  const [dropIndicatorIndex, setDropIndicatorIndex] = useState(null);
2566
1837
  const [lastValidDropIndex, setLastValidDropIndex] = useState(null);
@@ -2621,15 +1892,15 @@ function CwSortableList({ items, onReorder, renderItem, className = '', movedIte
2621
1892
  }
2622
1893
  };
2623
1894
  if (items.length === 0) {
2624
- return (jsx("div", { className: `${styles$g.sortableList} ${styles$g.emptyState} ${className}`, children: jsx("div", { className: styles$g.emptyMessage, children: emptyMessage }) }));
1895
+ return (jsx("div", { className: `${styles$d.sortableList} ${styles$d.emptyState} ${className}`, children: jsx("div", { className: styles$d.emptyMessage, children: emptyMessage }) }));
2625
1896
  }
2626
- return (jsx("div", { className: `${styles$g.sortableList} ${className}`, style: { maxHeight }, children: items.map((item, index) => {
1897
+ return (jsx("div", { className: `${styles$d.sortableList} ${className}`, children: items.map((item, index) => {
2627
1898
  const { title, extraContent, actions, showHandle = true, expandedContent } = renderItem(item);
2628
1899
  const isDragging = draggedItem?.id === item.id;
2629
1900
  const isMoved = movedItems.has(item.id);
2630
1901
  const canExpand = Boolean(expandedContent);
2631
1902
  const isExpanded = expandedItems.has(item.id);
2632
- return (jsxs(React__default.Fragment, { children: [dropIndicatorIndex === index && jsx("div", { className: styles$g.dropIndicator }), jsxs("div", { className: `${styles$g.sortableItem} ${isDragging ? styles$g.dragging : ''} ${isMoved ? styles$g.moved : ''} ${readOnly ? styles$g.readOnly : ''}`, draggable: !readOnly, onDragStart: (e) => handleDragStart(e, item), onDragOver: (e) => handleDragOver(e, index), onDragEnd: handleDragEnd, children: [jsxs("header", { children: [canExpand ? (jsx(CwButton, { variant: "icon", onClick: () => toggleExpanded(item.id), type: "button", title: isExpanded ? "Collapse" : "Expand", icon: isExpanded ? "chevron-up" : "chevron-down" })) : showHandle ? (jsx("div", { className: styles$g.sortableHandle, children: jsx(CwIcon, { iconId: "grip-dots" }) })) : null, jsxs("div", { className: styles$g.sortableContent, children: [jsx("div", { className: styles$g.sortableTitle, children: title }), extraContent && jsx("div", { className: styles$g.sortableExtraContent, children: extraContent })] }), jsx("div", { className: styles$g.sortableActions, children: actions })] }), isExpanded && expandedContent && (jsx("div", { className: styles$g.expandedContent, children: expandedContent }))] }), !readOnly && dropIndicatorIndex === items.length && index === items.length - 1 && (jsx("div", { className: styles$g.dropIndicator }))] }, item.id));
1903
+ return (jsxs(React__default.Fragment, { children: [dropIndicatorIndex === index && jsx("div", { className: styles$d.dropIndicator }), jsxs("div", { className: `${styles$d.sortableItem} ${isDragging ? styles$d.dragging : ''} ${isMoved ? styles$d.moved : ''} ${readOnly ? styles$d.readOnly : ''}`, draggable: !readOnly, onDragStart: (e) => handleDragStart(e, item), onDragOver: (e) => handleDragOver(e, index), onDragEnd: handleDragEnd, children: [jsxs("header", { children: [canExpand ? (jsx(CwButton, { variant: "icon", onClick: () => toggleExpanded(item.id), type: "button", title: isExpanded ? "Collapse" : "Expand", icon: isExpanded ? "chevron-up" : "chevron-down" })) : showHandle ? (jsx("div", { className: styles$d.sortableHandle, children: jsx(CwIcon, { iconId: "grip-dots" }) })) : null, jsxs("div", { className: styles$d.sortableContent, children: [jsx("div", { className: styles$d.sortableTitle, children: title }), extraContent && jsx("div", { className: styles$d.sortableExtraContent, children: extraContent })] }), jsx("div", { className: styles$d.sortableActions, children: actions })] }), isExpanded && expandedContent && (jsx("div", { className: styles$d.expandedContent, children: expandedContent }))] }), !readOnly && dropIndicatorIndex === items.length && index === items.length - 1 && (jsx("div", { className: styles$d.dropIndicator }))] }, item.id));
2633
1904
  }) }));
2634
1905
  }
2635
1906
 
@@ -2751,7 +2022,7 @@ const CwTableGrouped = props => {
2751
2022
  [index]: !prev[index]
2752
2023
  }));
2753
2024
  };
2754
- return (jsx("div", { className: "cw-table-grouped", "data-testid": props.testId, style: { width: "100%" }, children: jsxs("table", { style: { width: "100%" }, children: [jsx("colgroup", { children: props.tableData.head.map((head, i) => (jsx("col", { span: 1, style: { width: head.expandSize } }, i))) }), jsx("thead", { children: jsx("tr", { children: props.tableData.head.map((head, i) => (jsx("th", { children: head.title }, i))) }) }), jsx("tbody", { children: props.tableData.groups.map((group, i) => (jsxs(React__default.Fragment, { children: [jsx("tr", { "data-group": true, "data-expanded": !!expandedGroups[i], onClick: () => handleToggle(i), children: jsx("td", { colSpan: props.tableData.head.length, children: group.title }) }), expandedGroups[i] &&
2025
+ return (jsx("div", { className: "cw-table-grouped", style: { width: "100%" }, children: jsxs("table", { style: { width: "100%" }, children: [jsx("colgroup", { children: props.tableData.head.map((head, i) => (jsx("col", { span: 1, style: { width: head.expandSize } }, i))) }), jsx("thead", { children: jsx("tr", { children: props.tableData.head.map((head, i) => (jsx("th", { children: head.title }, i))) }) }), jsx("tbody", { children: props.tableData.groups.map((group, i) => (jsxs(React__default.Fragment, { children: [jsx("tr", { "data-group": true, "data-expanded": !!expandedGroups[i], onClick: () => handleToggle(i), children: jsx("td", { colSpan: props.tableData.head.length, children: group.title }) }), expandedGroups[i] &&
2755
2026
  group.rows.map((child, j) => (jsx("tr", { "data-row": true, "data-row-last-of-group": j == group.rows.length - 1, children: child.cells.map((cell, k) => (jsx("td", { children: cell.content }, k))) }, j)))] }, i))) }), jsx("tfoot", {})] }) }));
2756
2027
  };
2757
2028
 
@@ -2806,28 +2077,12 @@ function CwFileUpload(fileUploadProps) {
2806
2077
  return (jsxs("div", { children: [jsxs("div", { className: "row", children: [jsx("input", { className: "cw-button", type: "file", accept: fileUploadProps.accept, readOnly: true, placeholder: "No file selected...", onChange: handleFileChange }), previewURL && (jsx("div", { className: "row", children: jsx("img", { src: previewURL, alt: "Preview", style: { maxWidth: "200px", maxHeight: "200px" } }) }))] }), error && jsx("div", { className: "row error", children: error }), jsx("div", { className: "row", children: jsxs("label", { children: ["Please note: File/image has to be in ", fileUploadProps.acceptString, " format", fileUploadProps.sizeString && `, ${fileUploadProps.sizeString}`] }) })] }));
2807
2078
  }
2808
2079
 
2809
- var styles$f = {"fileUploadContainer":"cw-file-upload-multiple-module__fileUploadContainer__liEc1","hiddenInput":"cw-file-upload-multiple-module__hiddenInput__TZBBI","uploadArea":"cw-file-upload-multiple-module__uploadArea__DdOhs","uploadAreaDisabled":"cw-file-upload-multiple-module__uploadAreaDisabled__VWeFX","uploadTitle":"cw-file-upload-multiple-module__uploadTitle__gjRk8","uploadSubtitle":"cw-file-upload-multiple-module__uploadSubtitle__Z0S5t","filesContainer":"cw-file-upload-multiple-module__filesContainer__g44PY","fileItem":"cw-file-upload-multiple-module__fileItem__w27Dg","fileIcon":"cw-file-upload-multiple-module__fileIcon__iJJUX","fileExtension":"cw-file-upload-multiple-module__fileExtension__vOuHv","fileInfo":"cw-file-upload-multiple-module__fileInfo__R5ZTv","fileName":"cw-file-upload-multiple-module__fileName__DjepK","fileSize":"cw-file-upload-multiple-module__fileSize__b8GSm","smallButton":"cw-file-upload-multiple-module__smallButton__siUAh"};
2810
-
2811
- const DEFAULT_LABELS = {
2812
- uploadDisabled: 'Upload disabled',
2813
- clickToUpload: 'Click to upload or drag and drop',
2814
- acceptedFiles: (accept) => `Accepted files: ${accept}`,
2815
- singleFileOnly: '(Single file only)',
2816
- allTypesAccepted: 'All file types accepted',
2817
- changeFile: 'Change File',
2818
- clearAll: 'Clear all',
2819
- addMoreFiles: 'Add More Files',
2820
- filesSelected: (count) => `${count} file${count !== 1 ? 's' : ''} selected`,
2821
- fileTooLarge: (name, maxSize) => `File "${name}" is too large. Maximum size allowed is ${maxSize}MB.`,
2822
- invalidFormat: (name, accepted) => `File "${name}" has an invalid format. Allowed formats: ${accepted}`,
2823
- invalidMimeType: (name, types) => `File "${name}" has an invalid MIME type. Allowed types: ${types}`,
2824
- alreadySelected: (name) => `File "${name}" is already selected.`,
2825
- };
2080
+ var styles$c = {"fileUploadContainer":"cw-file-upload-multiple-module_fileUploadContainer__liEc1","hiddenInput":"cw-file-upload-multiple-module_hiddenInput__TZBBI","uploadArea":"cw-file-upload-multiple-module_uploadArea__DdOhs","uploadAreaDisabled":"cw-file-upload-multiple-module_uploadAreaDisabled__VWeFX","uploadTitle":"cw-file-upload-multiple-module_uploadTitle__gjRk8","uploadSubtitle":"cw-file-upload-multiple-module_uploadSubtitle__Z0S5t","filesContainer":"cw-file-upload-multiple-module_filesContainer__g44PY","fileItem":"cw-file-upload-multiple-module_fileItem__w27Dg","fileIcon":"cw-file-upload-multiple-module_fileIcon__iJJUX","fileExtension":"cw-file-upload-multiple-module_fileExtension__vOuHv","fileInfo":"cw-file-upload-multiple-module_fileInfo__R5ZTv","fileName":"cw-file-upload-multiple-module_fileName__DjepK","fileSize":"cw-file-upload-multiple-module_fileSize__b8GSm","smallButton":"cw-file-upload-multiple-module_smallButton__siUAh"};
2081
+
2826
2082
  function CwFileUploadMultiple(fileUploadProps) {
2827
2083
  const fileInputRef = useRef(null);
2828
2084
  const [selectedFiles, setSelectedFiles] = useState([]);
2829
2085
  const [existingFile, setExistingFile] = useState(fileUploadProps.initialFileName);
2830
- const labels = { ...DEFAULT_LABELS, ...fileUploadProps.labels };
2831
2086
  React__default.useEffect(() => {
2832
2087
  setExistingFile(fileUploadProps.initialFileName);
2833
2088
  }, [fileUploadProps.initialFileName]);
@@ -2841,7 +2096,7 @@ function CwFileUploadMultiple(fileUploadProps) {
2841
2096
  if (fileSizeInMB > fileUploadProps.maxFileSize) {
2842
2097
  return {
2843
2098
  isValid: false,
2844
- error: labels.fileTooLarge(file.name, fileUploadProps.maxFileSize)
2099
+ error: `File "${file.name}" is too large. Maximum size allowed is ${fileUploadProps.maxFileSize}MB.`
2845
2100
  };
2846
2101
  }
2847
2102
  }
@@ -2858,7 +2113,7 @@ function CwFileUploadMultiple(fileUploadProps) {
2858
2113
  if (!isExtensionValid) {
2859
2114
  return {
2860
2115
  isValid: false,
2861
- error: labels.invalidFormat(file.name, fileUploadProps.accept)
2116
+ error: `File "${file.name}" has an invalid format. Allowed formats: ${fileUploadProps.accept}`
2862
2117
  };
2863
2118
  }
2864
2119
  }
@@ -2868,7 +2123,7 @@ function CwFileUploadMultiple(fileUploadProps) {
2868
2123
  if (!isMimeTypeValid) {
2869
2124
  return {
2870
2125
  isValid: false,
2871
- error: labels.invalidMimeType(file.name, fileUploadProps.allowedTypes.join(', '))
2126
+ error: `File "${file.name}" has an invalid MIME type. Allowed types: ${fileUploadProps.allowedTypes.join(', ')}`
2872
2127
  };
2873
2128
  }
2874
2129
  }
@@ -2882,7 +2137,7 @@ function CwFileUploadMultiple(fileUploadProps) {
2882
2137
  // Check if the file already exists (by name and size)
2883
2138
  const isDuplicate = existingFiles.some(existingFile => existingFile.name === file.name && existingFile.size === file.size);
2884
2139
  if (isDuplicate) {
2885
- errors.push(labels.alreadySelected(file.name));
2140
+ errors.push(`File "${file.name}" is already selected.`);
2886
2141
  continue;
2887
2142
  }
2888
2143
  const validation = validateFile(file);
@@ -2973,12 +2228,12 @@ function CwFileUploadMultiple(fileUploadProps) {
2973
2228
  }
2974
2229
  }
2975
2230
  };
2976
- return (jsxs("div", { className: `${styles$f.fileUploadContainer} ${fileUploadProps.className}`, children: [jsx("input", { ref: fileInputRef, type: "file", name: fileUploadProps.name, accept: fileUploadProps.accept, multiple: fileUploadProps.multiple, onChange: handleFileSelectInternal, disabled: fileUploadProps.disabled, "aria-label": "files", className: styles$f.hiddenInput }), selectedFiles.length === 0 && !existingFile ? (jsxs("div", { className: `${styles$f.uploadArea} ${fileUploadProps.disabled ? styles$f.uploadAreaDisabled : ''}`, onDragOver: handleDragOver, onDrop: handleDrop, onClick: !fileUploadProps.disabled ? handleButtonClick : undefined, children: [jsx(CwIcon, { iconId: "upload" }), jsx("p", { className: `${styles$f.uploadTitle}`, children: fileUploadProps.disabled ? labels.uploadDisabled : labels.clickToUpload }), jsxs("p", { className: `${styles$f.uploadSubtitle}`, children: [fileUploadProps.accept ? labels.acceptedFiles(fileUploadProps.accept) : labels.allTypesAccepted, !fileUploadProps.multiple && ` ${labels.singleFileOnly}`] })] })) : selectedFiles.length === 0 && existingFile ? (jsxs("div", { className: styles$f.filesContainer, children: [jsxs("div", { className: styles$f.fileItem, children: [jsxs("div", { className: styles$f.fileIcon, children: [jsx(CwIcon, { iconId: "page" }), jsx("span", { className: styles$f.fileExtension, children: getFileExtension(existingFile) })] }), jsx("div", { className: styles$f.fileInfo, children: jsx("p", { className: styles$f.fileName, children: existingFile }) }), jsx(CwButton, { variant: "icon", icon: "close", color: "neutral", onClick: () => {
2231
+ return (jsxs("div", { className: `${styles$c.fileUploadContainer} ${fileUploadProps.className}`, children: [jsx("input", { ref: fileInputRef, type: "file", name: fileUploadProps.name, accept: fileUploadProps.accept, multiple: fileUploadProps.multiple, onChange: handleFileSelectInternal, disabled: fileUploadProps.disabled, "aria-label": "files", className: styles$c.hiddenInput }), selectedFiles.length === 0 && !existingFile ? (jsxs("div", { className: `${styles$c.uploadArea} ${fileUploadProps.disabled ? styles$c.uploadAreaDisabled : ''}`, onDragOver: handleDragOver, onDrop: handleDrop, onClick: !fileUploadProps.disabled ? handleButtonClick : undefined, children: [jsx(CwIcon, { iconId: "upload" }), jsx("p", { className: `${styles$c.uploadTitle}`, children: fileUploadProps.disabled ? 'Upload disabled' : 'Click to upload or drag and drop' }), jsxs("p", { className: `${styles$c.uploadSubtitle}`, children: [fileUploadProps.accept ? `Accepted files: ${fileUploadProps.accept}` : 'All file types accepted', !fileUploadProps.multiple && ' (Single file only)'] })] })) : selectedFiles.length === 0 && existingFile ? (jsxs("div", { className: styles$c.filesContainer, children: [jsxs("div", { className: styles$c.fileItem, children: [jsxs("div", { className: styles$c.fileIcon, children: [jsx(CwIcon, { iconId: "page" }), jsx("span", { className: styles$c.fileExtension, children: getFileExtension(existingFile) })] }), jsx("div", { className: styles$c.fileInfo, children: jsx("p", { className: styles$c.fileName, children: existingFile }) }), jsx(CwButton, { variant: "icon", icon: "close", color: "neutral", onClick: () => {
2977
2232
  setExistingFile(undefined);
2978
2233
  if (fileUploadProps.onSelect) {
2979
2234
  fileUploadProps.onSelect(null);
2980
2235
  }
2981
- }, disabled: fileUploadProps.disabled, className: styles$f.smallButton })] }), jsx(CwButton, { text: labels.changeFile, icon: "refresh", onClick: handleButtonClick, disabled: fileUploadProps.disabled })] })) : (jsxs("div", { className: styles$f.filesContainer, children: [jsxs("div", { className: "cw-flex-row cw-align-between-center", children: [jsx("small", { className: styles$f.filesCount, children: labels.filesSelected(selectedFiles.length) }), jsx(CwButton, { onClick: removeAllFiles, disabled: fileUploadProps.disabled, color: "danger", variant: "outline", icon: "delete", text: labels.clearAll })] }), selectedFiles.map((file, index) => (jsxs("div", { className: styles$f.fileItem, children: [jsxs("div", { className: styles$f.fileIcon, children: [jsx(CwIcon, { iconId: "page" }), jsx("span", { className: styles$f.fileExtension, children: getFileExtension(file.name) })] }), jsxs("div", { className: styles$f.fileInfo, children: [jsx("p", { className: styles$f.fileName, children: file.name }), jsxs("p", { className: styles$f.fileSize, children: [(file.size / 1024).toFixed(1), " KB"] })] }), jsx(CwButton, { variant: "icon", icon: "close", color: "neutral", onClick: () => removeFile(index), className: styles$f.smallButton })] }, index))), fileUploadProps.multiple && (jsx(CwButton, { text: labels.addMoreFiles, icon: "plus", variant: "outline", onClick: handleButtonClick, disabled: fileUploadProps.disabled })), !fileUploadProps.multiple && (jsx(CwButton, { text: labels.changeFile, icon: "refresh", onClick: handleButtonClick, disabled: fileUploadProps.disabled }))] }))] }));
2236
+ }, disabled: fileUploadProps.disabled, className: styles$c.smallButton })] }), jsx(CwButton, { text: "Change File", icon: "refresh", onClick: handleButtonClick, disabled: fileUploadProps.disabled })] })) : (jsxs("div", { className: styles$c.filesContainer, children: [jsxs("div", { className: "cw-flex-row cw-align-between-center", children: [jsxs("small", { className: styles$c.filesCount, children: [selectedFiles.length, " file", selectedFiles.length !== 1 ? 's' : '', " selected"] }), jsx(CwButton, { onClick: removeAllFiles, disabled: fileUploadProps.disabled, color: "danger", variant: "outline", icon: "delete", text: "Clear all" })] }), selectedFiles.map((file, index) => (jsxs("div", { className: styles$c.fileItem, children: [jsxs("div", { className: styles$c.fileIcon, children: [jsx(CwIcon, { iconId: "page" }), jsx("span", { className: styles$c.fileExtension, children: getFileExtension(file.name) })] }), jsxs("div", { className: styles$c.fileInfo, children: [jsx("p", { className: styles$c.fileName, children: file.name }), jsxs("p", { className: styles$c.fileSize, children: [(file.size / 1024).toFixed(1), " KB"] })] }), jsx(CwButton, { variant: "icon", icon: "close", color: "neutral", onClick: () => removeFile(index), className: styles$c.smallButton })] }, index))), fileUploadProps.multiple && (jsx(CwButton, { text: "Add More Files", icon: "plus", variant: "outline", onClick: handleButtonClick, disabled: fileUploadProps.disabled })), !fileUploadProps.multiple && (jsx(CwButton, { text: "Change File", icon: "refresh", onClick: handleButtonClick, disabled: fileUploadProps.disabled }))] }))] }));
2982
2237
  }
2983
2238
 
2984
2239
  function CwInput(CwInputProps) {
@@ -2992,7 +2247,9 @@ function CwInput(CwInputProps) {
2992
2247
  ? "cw-flex-column"
2993
2248
  : "cw-flex-row ", children: [jsx("label", { className: CwInputProps.disabled === true
2994
2249
  ? CwInputProps.labelClassName + " " + "cw_label_text cw_label_text_disabled"
2995
- : CwInputProps.labelClassName + " " + "cw_label_text", children: CwInputProps.labelName }), jsx("input", { id: CwInputProps.id, type: "text", value: CwInputProps.value, onChange: e => handleChange(e), className: CwInputProps.className + " " + "cw_input", placeholder: CwInputProps.placeholder === undefined ? "Write a text please" : CwInputProps.placeholder, style: CwInputProps.style, disabled: CwInputProps.disabled, required: CwInputProps.required }), CwInputProps.value && (jsx("button", { className: "cw_button_clear cwellt_flex cwellt_justify_center cwellt_align_items_center", onClick: handleClearClick }))] }));
2250
+ : CwInputProps.labelClassName + " " + "cw_label_text", children: CwInputProps.labelName }), jsx("input", { id: CwInputProps.id, type: "text", value: CwInputProps.value, onChange: e => handleChange(e), className: CwInputProps.className + " " + "cw_input", placeholder: CwInputProps.placeholder === undefined ? "Write a text please" : CwInputProps.placeholder, style: CwInputProps.style, disabled: CwInputProps.disabled, required: CwInputProps.required }), CwInputProps.value && (
2251
+ // if the component is disabled do not show clear button
2252
+ jsx("button", { className: "cw_button_clear cwellt_flex cwellt_justify_center cwellt_align_items_center", onClick: handleClearClick }))] }));
2996
2253
  }
2997
2254
 
2998
2255
  /**
@@ -3019,7 +2276,7 @@ function CwDigit(props) {
3019
2276
  return (jsx("div", { className: "cw-input-text", children: jsxs(CwAlign, { ...alignProps, itemProp: inputProps.required === true ? "required" : "", children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsx("input", { type: "number", ...inputProps }), buttonProps && jsx(CwButton, { ...buttonProps })] }) }));
3020
2277
  }
3021
2278
 
3022
- var styles$e = {"colorPreview":"cw-color-picker-module__colorPreview__ylJcD","hueBar":"cw-color-picker-module__hueBar__bFhyC","hueBarSlider":"cw-color-picker-module__hueBarSlider__D53IV","colorPickerInteractiveArea":"cw-color-picker-module__colorPickerInteractiveArea__KZFR1","colorArea":"cw-color-picker-module__colorArea__xgpSE","colorAreaOverlay":"cw-color-picker-module__colorAreaOverlay__pmgOc","hueBackground":"cw-color-picker-module__hueBackground__Mks78","whiteGradient":"cw-color-picker-module__whiteGradient__Bt-fU","blackGradient":"cw-color-picker-module__blackGradient__VnEKJ","colorAreaCursor":"cw-color-picker-module__colorAreaCursor__lotg3"};
2279
+ var styles$b = {"colorPreview":"cw-color-picker-module_colorPreview__ylJcD","hueBar":"cw-color-picker-module_hueBar__bFhyC","hueBarSlider":"cw-color-picker-module_hueBarSlider__D53IV","colorPickerInteractiveArea":"cw-color-picker-module_colorPickerInteractiveArea__KZFR1","colorArea":"cw-color-picker-module_colorArea__xgpSE","colorAreaOverlay":"cw-color-picker-module_colorAreaOverlay__pmgOc","hueBackground":"cw-color-picker-module_hueBackground__Mks78","whiteGradient":"cw-color-picker-module_whiteGradient__Bt-fU","blackGradient":"cw-color-picker-module_blackGradient__VnEKJ","colorAreaCursor":"cw-color-picker-module_colorAreaCursor__lotg3"};
3023
2280
 
3024
2281
  const CwColorPicker = ({ initialColor, onChange, previewText = "Color preview" }) => {
3025
2282
  const [rgb, setRgb] = useState({ r: 255, g: 255, b: 255 });
@@ -3222,15 +2479,15 @@ const CwColorPicker = ({ initialColor, onChange, previewText = "Color preview" }
3222
2479
  // Calculate background color for the main area based on current hue
3223
2480
  const hueColor = hsvToRgb(hsv.h, 100, 100);
3224
2481
  const hueHex = rgbToHex(hueColor.r, hueColor.g, hueColor.b);
3225
- return (jsxs("div", { className: "cw-flex-column cw-gap-small", children: [jsxs("div", { className: "cw-flex-row cw-align-between-center cw-gap-small", children: [jsx("div", { className: styles$e.colorPreview, style: { backgroundColor: hexColor, color: getContrastColor(hexColor) }, children: previewText }), jsx("button", { type: "button", className: "cw-button", onClick: toggleInputMode, style: { minWidth: "3ch" }, children: inputMode === 'hex' ? 'RGB' : 'HEX' })] }), jsx("div", { className: "color-inputs-row", children: inputMode === 'hex' ? (jsx("input", { type: "text", value: hexColor, onChange: handleHexChange })) : (jsxs("div", { className: "cw-grid-base-3 cw-gap-small", children: [jsxs("div", { children: [jsx("label", { children: "R:" }), jsx("input", { type: "number", name: "r", min: "0", max: "255", value: rgb.r, onChange: handleRgbChange })] }), jsxs("div", { children: [jsx("label", { children: "G:" }), jsx("input", { type: "number", name: "g", min: "0", max: "255", value: rgb.g, onChange: handleRgbChange })] }), jsxs("div", { children: [jsx("label", { children: "B:" }), jsx("input", { type: "number", name: "b", min: "0", max: "255", value: rgb.b, onChange: handleRgbChange })] })] })) }), jsxs("div", { className: styles$e.colorPickerInteractiveArea, children: [jsx("div", { className: styles$e.hueBar, ref: hueBarRef, onClick: handleHueBarClick, children: jsx("div", { className: styles$e.hueBarSlider, style: { top: `${(360 - hsv.h) / 360 * 100}%` } }) }), jsxs("div", { className: styles$e.colorArea, ref: colorAreaRef, onClick: handleColorAreaClick, children: [jsxs("div", { className: styles$e.colorAreaOverlay, children: [jsx("div", { className: styles$e.hueBackground, style: { backgroundColor: hueHex } }), jsx("div", { className: styles$e.whiteGradient }), jsx("div", { className: styles$e.blackGradient })] }), jsx("div", { className: styles$e.colorAreaCursor, style: {
2482
+ return (jsxs("div", { className: "cw-flex-column cw-gap-small", children: [jsxs("div", { className: "cw-flex-row cw-align-between-center cw-gap-small", children: [jsx("div", { className: styles$b.colorPreview, style: { backgroundColor: hexColor, color: getContrastColor(hexColor) }, children: previewText }), jsx("button", { type: "button", className: "cw-button", onClick: toggleInputMode, style: { minWidth: "3ch" }, children: inputMode === 'hex' ? 'RGB' : 'HEX' })] }), jsx("div", { className: "color-inputs-row", children: inputMode === 'hex' ? (jsx("input", { type: "text", value: hexColor, onChange: handleHexChange })) : (jsxs("div", { className: "cw-grid-base-3 cw-gap-small", children: [jsxs("div", { children: [jsx("label", { children: "R:" }), jsx("input", { type: "number", name: "r", min: "0", max: "255", value: rgb.r, onChange: handleRgbChange })] }), jsxs("div", { children: [jsx("label", { children: "G:" }), jsx("input", { type: "number", name: "g", min: "0", max: "255", value: rgb.g, onChange: handleRgbChange })] }), jsxs("div", { children: [jsx("label", { children: "B:" }), jsx("input", { type: "number", name: "b", min: "0", max: "255", value: rgb.b, onChange: handleRgbChange })] })] })) }), jsxs("div", { className: styles$b.colorPickerInteractiveArea, children: [jsx("div", { className: styles$b.hueBar, ref: hueBarRef, onClick: handleHueBarClick, children: jsx("div", { className: styles$b.hueBarSlider, style: { top: `${(360 - hsv.h) / 360 * 100}%` } }) }), jsxs("div", { className: styles$b.colorArea, ref: colorAreaRef, onClick: handleColorAreaClick, children: [jsxs("div", { className: styles$b.colorAreaOverlay, children: [jsx("div", { className: styles$b.hueBackground, style: { backgroundColor: hueHex } }), jsx("div", { className: styles$b.whiteGradient }), jsx("div", { className: styles$b.blackGradient })] }), jsx("div", { className: styles$b.colorAreaCursor, style: {
3226
2483
  left: `${hsv.s}%`,
3227
2484
  top: `${100 - hsv.v}%`
3228
2485
  } })] })] })] }));
3229
2486
  };
3230
2487
 
3231
- var styles$d = {"container":"cw-input-color-module__container__x7gpk","selectColor":"cw-input-color-module__selectColor__DTo3V","disabled":"cw-input-color-module__disabled__O1fK5","readOnly":"cw-input-color-module__readOnly__HL-Bz","colorDropdown":"cw-input-color-module__colorDropdown__pX2bc"};
2488
+ var styles$a = {"selectColor":"cw-input-color-module_selectColor__DTo3V","disabled":"cw-input-color-module_disabled__O1fK5","colorDropdown":"cw-input-color-module_colorDropdown__pX2bc"};
3232
2489
 
3233
- const CwInputColor = ({ value, onChange, previewText = "Color preview", disabled = false, readOnly = false, width = '4rem', height = '2rem', labelProps, layoutProps, }) => {
2490
+ const CwInputColor = ({ value, onChange, previewText = "Color preview", disabled = false, width = '4rem', height = '2rem' }) => {
3234
2491
  const [isOpen, setIsOpen] = useState(false);
3235
2492
  const containerRef = useRef(null);
3236
2493
  const dropdownRef = useRef(null);
@@ -3279,7 +2536,7 @@ const CwInputColor = ({ value, onChange, previewText = "Color preview", disabled
3279
2536
  };
3280
2537
  }, [isOpen]);
3281
2538
  const handleToggle = () => {
3282
- if (disabled || readOnly)
2539
+ if (disabled)
3283
2540
  return;
3284
2541
  setIsOpen(prev => !prev);
3285
2542
  };
@@ -3361,11 +2618,11 @@ const CwInputColor = ({ value, onChange, previewText = "Color preview", disabled
3361
2618
  break;
3362
2619
  }
3363
2620
  };
3364
- return (jsxs("div", { className: `cw-input-color ${styles$d.container}`, "data-direction": layoutProps?.direction ?? "row", "data-align": layoutProps?.align, children: [labelProps && (jsx(CwLabel, { ...labelProps })), jsx("div", { ref: containerRef, onClick: handleToggle, className: `${styles$d.selectColor} ${disabled ? styles$d.disabled : ''} ${readOnly ? styles$d.readOnly : ''}`, style: {
2621
+ return (jsxs(Fragment, { children: [jsx("div", { ref: containerRef, onClick: handleToggle, className: `${styles$a.selectColor} ${disabled ? styles$a.disabled : ''}`, style: {
3365
2622
  width,
3366
2623
  height,
3367
2624
  backgroundColor: value,
3368
- }, "aria-label": "Open color picker", "aria-expanded": isOpen, "aria-haspopup": "dialog", "aria-readonly": readOnly, role: "button", tabIndex: disabled ? -1 : 0, onKeyDown: handleKeyDown }), isOpen && createPortal(jsx("div", { ref: dropdownRef, className: styles$d.colorDropdown, style: dropdownStyle, role: "dialog", "aria-modal": "true", "aria-label": "Color picker", children: jsx(CwColorPicker, { initialColor: value, onChange: handleColorChange, previewText: previewText }) }), document.body)] }));
2625
+ }, "aria-label": "Open color picker", "aria-expanded": isOpen, "aria-haspopup": "dialog", role: "button", tabIndex: disabled ? -1 : 0, onKeyDown: handleKeyDown }), isOpen && createPortal(jsx("div", { ref: dropdownRef, className: styles$a.colorDropdown, style: dropdownStyle, role: "dialog", "aria-modal": "true", "aria-label": "Color picker", children: jsx(CwColorPicker, { initialColor: value, onChange: handleColorChange, previewText: previewText }) }), document.body)] }));
3369
2626
  };
3370
2627
 
3371
2628
  /**
@@ -3384,20 +2641,15 @@ const CwInputColor = ({ value, onChange, previewText = "Color preview", disabled
3384
2641
  * iconProps={{ id: "home" }}
3385
2642
  * labelProps={{ children: "Name", width: "100px" }}
3386
2643
  * buttonProps={{ children: "Ok", onclick:()=>{alert("hi")} }}
3387
- * feedback={{ type: "danger", message: "This field is required" }}
3388
2644
  * />
3389
2645
  * ```
3390
2646
  */
3391
2647
  function CwInputText(props) {
3392
- const { alignProps, buttonProps, iconProps, labelProps, className, feedback, ...inputProps } = props;
3393
- const feedbackMessages = feedback
3394
- ? Array.isArray(feedback) ? feedback : [feedback]
3395
- : [];
2648
+ const { alignProps, buttonProps, iconProps, labelProps, className, ...inputProps } = props;
3396
2649
  const containerClassName = className
3397
2650
  ? `cw-input-text ${className}`
3398
2651
  : "cw-input-text";
3399
- const flexDirection = alignProps?.flexDirection ?? "row";
3400
- return (jsxs("div", { className: containerClassName, "data-direction": flexDirection, children: [jsxs(CwAlign, { ...alignProps, itemProp: inputProps.required === true ? "required" : "", children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsxs("div", { className: "cw-input-button", children: [jsx("input", { type: props.type ?? "text", ...inputProps }), buttonProps && jsx(CwButton, { ...buttonProps })] })] }), feedbackMessages.map((feedbackItem, index) => (jsx("p", { className: "cw-input-info", "data-color": feedbackItem.type, children: feedbackItem.message }, index)))] }));
2652
+ return (jsx("div", { className: containerClassName, children: jsxs(CwAlign, { ...alignProps, itemProp: inputProps.required === true ? "required" : "", children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsxs("div", { className: "cw-input-button", children: [jsx("input", { type: props.type ?? "text", ...inputProps }), buttonProps && jsx(CwButton, { ...buttonProps })] })] }) }));
3401
2653
  }
3402
2654
 
3403
2655
  /**
@@ -3432,13 +2684,8 @@ function CwInputNumber(CwInputNumberProps) {
3432
2684
  }
3433
2685
 
3434
2686
  function CwTextArea(props) {
3435
- const { alignProps, buttonProps, iconProps, labelProps, resize, feedback, style, ...textareaProps } = props;
3436
- const feedbackMessages = feedback
3437
- ? Array.isArray(feedback) ? feedback : [feedback]
3438
- : [];
3439
- const flexDirection = alignProps?.flexDirection ?? "row";
3440
- const dataDirection = { 'data-direction': flexDirection };
3441
- return (jsxs("div", { className: "cw-text-area", ...dataDirection, style: style, children: [jsxs(CwAlign, { ...alignProps, children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsx("textarea", { ...textareaProps, itemProp: textareaProps.required === true ? "required" : "", style: { resize: resize } }), buttonProps && jsx(CwButton, { ...buttonProps })] }), feedbackMessages.map((feedbackItem, index) => (jsx("p", { className: "cw-input-info", "data-color": feedbackItem.type, children: feedbackItem.message }, index)))] }));
2687
+ const { alignProps, buttonProps, iconProps, labelProps, resize, ...textareaProps } = props;
2688
+ return (jsx("div", { className: "cw-text-area", children: jsxs(CwAlign, { ...alignProps, children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsx("textarea", { ...textareaProps, itemProp: textareaProps.required === true ? "required" : "", style: { ...textareaProps.style, resize: resize } }), buttonProps && jsx(CwButton, { ...buttonProps })] }) }));
3442
2689
  }
3443
2690
 
3444
2691
  /**
@@ -3466,115 +2713,7 @@ function CwInputDate(props) {
3466
2713
  return (jsx("div", { className: "cw-input-date", children: jsxs(CwAlign, { ...alignProps, itemProp: inputProps.required === true ? "required" : "", children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsx("input", { type: "date", ...inputProps }), buttonProps && jsx(CwButton, { ...buttonProps })] }) }));
3467
2714
  }
3468
2715
 
3469
- var classes = {"datePicker":"cw-input-date-picker-module__datePicker__jogOq","input":"cw-input-date-picker-module__input__uQshH","calendar":"cw-input-date-picker-module__calendar__q39ic","calendarHeader":"cw-input-date-picker-module__calendarHeader__1btPK","arrowButton":"cw-input-date-picker-module__arrowButton__23tNc","calendarTitle":"cw-input-date-picker-module__calendarTitle__oOODw","calendarBody":"cw-input-date-picker-module__calendarBody__-711a","calendarDay":"cw-input-date-picker-module__calendarDay__z-Mmv","selected":"cw-input-date-picker-module__selected__XQgR7","todayButton":"cw-input-date-picker-module__todayButton__oYamC","emptyDay":"cw-input-date-picker-module__emptyDay__lbI5B"};
3470
-
3471
- /**
3472
- * Converts a Date or ISO string to a Temporal.PlainDate.
3473
- */
3474
- function toPlainDate$1(dateString) {
3475
- if (dateString instanceof Date) {
3476
- return Temporal.PlainDate.from({
3477
- year: dateString.getFullYear(),
3478
- month: dateString.getMonth() + 1,
3479
- day: dateString.getDate(),
3480
- });
3481
- }
3482
- // ISO "YYYY-MM-DD" → direct parse
3483
- return Temporal.PlainDate.from(dateString);
3484
- }
3485
- /**
3486
- * Formats a date as DD.MM.YYYY (German locale).
3487
- */
3488
- function toGermanDate(dateString) {
3489
- const pd = toPlainDate$1(dateString);
3490
- const day = String(pd.day).padStart(2, "0");
3491
- const month = String(pd.month).padStart(2, "0");
3492
- return `${day}.${month}.${pd.year}`;
3493
- }
3494
- /**
3495
- * Formats a date as YYYY-MM-DD (ISO).
3496
- */
3497
- function toISODate(dateString) {
3498
- return toPlainDate$1(dateString).toString();
3499
- }
3500
- /**
3501
- * Validates whether a string is a valid DD.MM.YYYY date.
3502
- */
3503
- function isValidGermanDate(textDate) {
3504
- return parseGermanDate(textDate) !== null;
3505
- }
3506
- /**
3507
- * Converts a DD.MM.YYYY string to YYYY-MM-DD, or null if invalid.
3508
- */
3509
- function germanDateToISO(textDate) {
3510
- const pd = parseGermanDate(textDate);
3511
- return pd ? pd.toString() : null;
3512
- }
3513
- /**
3514
- * Converts a DD.MM.YYYY string to a Date object, or null if invalid.
3515
- */
3516
- function germanDateToDate(textDate) {
3517
- const pd = parseGermanDate(textDate);
3518
- if (!pd)
3519
- return null;
3520
- return new Date(pd.year, pd.month - 1, pd.day);
3521
- }
3522
- /**
3523
- * Returns the number of days in the month and the Monday-based
3524
- * weekday offset (0 = Monday) for the 1st of the month.
3525
- */
3526
- function computeCalendarGrid(internalDate) {
3527
- const pd = Temporal.PlainDate.from({
3528
- year: internalDate.getFullYear(),
3529
- month: internalDate.getMonth() + 1,
3530
- day: 1,
3531
- });
3532
- const daysInMonth = pd.daysInMonth;
3533
- const startDay = pd.dayOfWeek - 1; // Temporal: 1=Mon … 7=Sun → 0-based Mon
3534
- return { daysInMonth, startDay };
3535
- }
3536
- /**
3537
- * Returns true when the given day in the internalDate's month/year
3538
- * matches the selected ISO value string.
3539
- */
3540
- function isSelectedDay(internalDate, day, value) {
3541
- const pd = Temporal.PlainDate.from({
3542
- year: internalDate.getFullYear(),
3543
- month: internalDate.getMonth() + 1,
3544
- day,
3545
- });
3546
- return pd.toString() === value;
3547
- }
3548
- /**
3549
- * Returns a new Date set to the 1st of the month offset by `direction` months.
3550
- */
3551
- function computeNextMonthDate(currentDate, direction) {
3552
- const pd = Temporal.PlainDate.from({
3553
- year: currentDate.getFullYear(),
3554
- month: currentDate.getMonth() + 1,
3555
- day: 1,
3556
- });
3557
- const moved = pd.add({ months: direction });
3558
- return new Date(moved.year, moved.month - 1, moved.day);
3559
- }
3560
- // ── internal helper ────────────────────────────────────────────────────
3561
- /**
3562
- * Strictly parses a DD.MM.YYYY string into a Temporal.PlainDate, or null.
3563
- */
3564
- function parseGermanDate(text) {
3565
- const match = /^(\d{2})\.(\d{2})\.(\d{4})$/.exec(text);
3566
- if (!match)
3567
- return null;
3568
- const day = Number(match[1]);
3569
- const month = Number(match[2]);
3570
- const year = Number(match[3]);
3571
- try {
3572
- return Temporal.PlainDate.from({ year, month, day }, { overflow: "reject" });
3573
- }
3574
- catch {
3575
- return null;
3576
- }
3577
- }
2716
+ var classes = {"datePicker":"cw-input-date-picker-module_datePicker__jogOq","input":"cw-input-date-picker-module_input__uQshH","calendar":"cw-input-date-picker-module_calendar__q39ic","calendarHeader":"cw-input-date-picker-module_calendarHeader__1btPK","arrowButton":"cw-input-date-picker-module_arrowButton__23tNc","calendarTitle":"cw-input-date-picker-module_calendarTitle__oOODw","calendarBody":"cw-input-date-picker-module_calendarBody__-711a","calendarDay":"cw-input-date-picker-module_calendarDay__z-Mmv","selected":"cw-input-date-picker-module_selected__XQgR7","todayButton":"cw-input-date-picker-module_todayButton__oYamC","emptyDay":"cw-input-date-picker-module_emptyDay__lbI5B"};
3578
2717
 
3579
2718
  const CwInputDatePicker = ({ value, onChange }) => {
3580
2719
  const [isCalendarOpen, setIsCalendarOpen] = useState(false);
@@ -3599,13 +2738,21 @@ const CwInputDatePicker = ({ value, onChange }) => {
3599
2738
  useEffect(() => {
3600
2739
  setTextDate(toGermanDate(value));
3601
2740
  }, [value]);
2741
+ function toGermanDate(dateString) {
2742
+ return moment(dateString).format("DD.MM.YYYY");
2743
+ }
2744
+ function toISODate(dateString) {
2745
+ return moment(dateString).format("YYYY-MM-DD");
2746
+ }
3602
2747
  const submitInput = () => {
3603
- if (isValidGermanDate(textDate)) {
3604
- const newDateString = germanDateToISO(textDate);
3605
- const newDate = germanDateToDate(textDate);
3606
- if (newDateString && newDate) {
2748
+ if (moment(textDate, "DD.MM.YYYY", true).isValid()) {
2749
+ const inputValue = textDate;
2750
+ const momentDate = moment(inputValue, "DD.MM.YYYY", true);
2751
+ if (momentDate.isValid()) {
2752
+ const newDateString = momentDate.format("YYYY-MM-DD");
3607
2753
  if (newDateString !== value) {
3608
- setInternalDate(newDate);
2754
+ const newDateString = momentDate.format("YYYY-MM-DD");
2755
+ setInternalDate(momentDate.toDate());
3609
2756
  onChange?.(newDateString);
3610
2757
  }
3611
2758
  setIsCalendarOpen(false);
@@ -3642,7 +2789,7 @@ const CwInputDatePicker = ({ value, onChange }) => {
3642
2789
  setIsCalendarOpen(false);
3643
2790
  };
3644
2791
  const handleClickMonthArrow = (direction) => {
3645
- setInternalDate(prevDate => computeNextMonthDate(prevDate, direction));
2792
+ setInternalDate(prevDate => new Date(prevDate.getFullYear(), prevDate.getMonth() + direction, 1));
3646
2793
  };
3647
2794
  const handlePressEnter = (event) => {
3648
2795
  if (event.key === "Enter" && submitInput()) {
@@ -3655,21 +2802,23 @@ const CwInputDatePicker = ({ value, onChange }) => {
3655
2802
  }
3656
2803
  };
3657
2804
  const generateCalendarDays = () => {
3658
- const { daysInMonth, startDay } = computeCalendarGrid(internalDate);
2805
+ const daysInMonth = new Date(internalDate.getFullYear(), internalDate.getMonth() + 1, 0).getDate();
2806
+ const startDay = new Date(internalDate.getFullYear(), internalDate.getMonth(), 1).getDay() - 1;
3659
2807
  const calendarDays = new Array;
3660
2808
  for (let i = 0; i < startDay; i++) {
3661
2809
  calendarDays.push(jsx("div", { className: classes.emptyDay }, `empty-${i}`));
3662
2810
  }
3663
2811
  for (let day = 1; day <= daysInMonth; day++) {
3664
- const selected = isSelectedDay(internalDate, day, value);
3665
- calendarDays.push(jsx("div", { className: `${classes.calendarDay}${selected ? ` ${classes.selected}` : ""}`, onClick: () => handleClickDay(day), children: day }, day));
2812
+ const currentDate = new Date(internalDate.getFullYear(), internalDate.getMonth(), day);
2813
+ const isSelected = moment(currentDate).format("YYYY-MM-DD") === value;
2814
+ calendarDays.push(jsx("div", { className: `${classes.calendarDay}${isSelected ? ` ${classes.selected}` : ""}`, onClick: () => handleClickDay(day), children: day }, day));
3666
2815
  }
3667
2816
  return calendarDays;
3668
2817
  };
3669
2818
  return (jsxs("div", { className: classes.datePicker, children: [jsx("input", { type: "text", value: textDate, onChange: e => setTextDate(e.currentTarget.value), onFocus: () => {
3670
2819
  setInternalDate(new Date(value));
3671
2820
  setIsCalendarOpen(true);
3672
- }, onBlur: handleBlurInput, onKeyDown: handlePressEnter, "data-valid": isValidGermanDate(textDate), ref: inputRef, className: classes.input }), isCalendarOpen && (jsxs("div", { className: classes.calendar, ref: calendarRef, children: [jsxs("div", { className: classes.calendarHeader, children: [jsx("button", { className: classes.arrowButton, onClick: () => handleClickMonthArrow(-1), children: "<" }), jsxs("span", { className: classes.calendarTitle, children: [internalDate.toLocaleString("default", { month: "long" }), " ", internalDate.getFullYear()] }), jsx("button", { className: classes.arrowButton, onClick: () => handleClickMonthArrow(1), children: ">" })] }), jsx("div", { className: classes.calendarBody, children: generateCalendarDays() }), jsx("button", { className: classes.todayButton, onClick: handleClickToday, children: "Today" })] }))] }));
2821
+ }, onBlur: handleBlurInput, onKeyDown: handlePressEnter, "data-valid": moment(textDate, "DD.MM.YYYY", true).isValid(), ref: inputRef, className: classes.input }), isCalendarOpen && (jsxs("div", { className: classes.calendar, ref: calendarRef, children: [jsxs("div", { className: classes.calendarHeader, children: [jsx("button", { className: classes.arrowButton, onClick: () => handleClickMonthArrow(-1), children: "<" }), jsxs("span", { className: classes.calendarTitle, children: [internalDate.toLocaleString("default", { month: "long" }), " ", internalDate.getFullYear()] }), jsx("button", { className: classes.arrowButton, onClick: () => handleClickMonthArrow(1), children: ">" })] }), jsx("div", { className: classes.calendarBody, children: generateCalendarDays() }), jsx("button", { className: classes.todayButton, onClick: handleClickToday, children: "Today" })] }))] }));
3673
2822
  };
3674
2823
 
3675
2824
  /**
@@ -3722,47 +2871,6 @@ function CwTime(props) {
3722
2871
  return (jsx("div", { className: "cw-input-date", children: jsxs(CwAlign, { ...alignProps, itemProp: inputProps.required === true ? "required" : "", children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsx("input", { type: "time", ...inputProps }), buttonProps && jsx(CwButton, { ...buttonProps })] }) }));
3723
2872
  }
3724
2873
 
3725
- function parseDateParts(dateStr, format) {
3726
- const parts = dateStr.split(/[.\-\/]/);
3727
- if (parts.length !== 3)
3728
- return null;
3729
- let year, month, day;
3730
- switch (format) {
3731
- case "DD.MM.YYYY":
3732
- case "DD/MM/YYYY":
3733
- day = Number(parts[0]);
3734
- month = Number(parts[1]);
3735
- year = Number(parts[2]);
3736
- break;
3737
- case "MM/DD/YYYY":
3738
- month = Number(parts[0]);
3739
- day = Number(parts[1]);
3740
- year = Number(parts[2]);
3741
- break;
3742
- case "YYYY-MM-DD":
3743
- year = Number(parts[0]);
3744
- month = Number(parts[1]);
3745
- day = Number(parts[2]);
3746
- break;
3747
- }
3748
- try {
3749
- return Temporal.PlainDate.from({ year, month, day });
3750
- }
3751
- catch {
3752
- return null;
3753
- }
3754
- }
3755
- function formatPlainDate(pd, format) {
3756
- const dd = pd.day.toString().padStart(2, "0");
3757
- const mm = pd.month.toString().padStart(2, "0");
3758
- const yyyy = pd.year.toString().padStart(4, "0");
3759
- switch (format) {
3760
- case "DD.MM.YYYY": return `${dd}.${mm}.${yyyy}`;
3761
- case "DD/MM/YYYY": return `${dd}/${mm}/${yyyy}`;
3762
- case "MM/DD/YYYY": return `${mm}/${dd}/${yyyy}`;
3763
- case "YYYY-MM-DD": return `${yyyy}-${mm}-${dd}`;
3764
- }
3765
- }
3766
2874
  /**
3767
2875
  * Input for entering a string of text as a date
3768
2876
  * @remarks
@@ -3792,8 +2900,11 @@ function CwInputDateText(props) {
3792
2900
  const format = dateFormat ?? displayFormat;
3793
2901
  const width = size ?? 12;
3794
2902
  const formattedDate = (date, inFormat, outFormat) => {
3795
- const pd = parseDateParts(date, inFormat);
3796
- return pd ? formatPlainDate(pd, outFormat) : "";
2903
+ if (moment(date, inFormat, true).isValid()) {
2904
+ return moment(date, inFormat).format(outFormat);
2905
+ }
2906
+ else
2907
+ return "";
3797
2908
  };
3798
2909
  const [date, setDate] = useState("");
3799
2910
  const [displayedDate, setDisplayedDate] = useState("");
@@ -3812,9 +2923,8 @@ function CwInputDateText(props) {
3812
2923
  const onChangeInputText = (e) => {
3813
2924
  const newDate = e.target.value;
3814
2925
  setDisplayedDate(newDate);
3815
- const pd = parseDateParts(newDate, format);
3816
- if (pd) {
3817
- setDate(formatPlainDate(pd, internalFormat));
2926
+ if (moment(newDate, format, true).isValid()) {
2927
+ setDate(moment(newDate, format).format(internalFormat));
3818
2928
  }
3819
2929
  else {
3820
2930
  setDate("");
@@ -3823,9 +2933,8 @@ function CwInputDateText(props) {
3823
2933
  const onChangeInputDate = (e) => {
3824
2934
  const newDate = e.target.value;
3825
2935
  setDate(newDate);
3826
- const pd = parseDateParts(newDate, internalFormat);
3827
- if (pd)
3828
- setDisplayedDate(formatPlainDate(pd, format));
2936
+ if (moment(newDate, internalFormat, true).isValid())
2937
+ setDisplayedDate(moment(newDate, internalFormat).format(format));
3829
2938
  else
3830
2939
  setDisplayedDate("");
3831
2940
  };
@@ -4006,7 +3115,7 @@ const CwImageArea = forwardRef((props, ref) => {
4006
3115
  });
4007
3116
  CwImageArea.displayName = "CwImageArea";
4008
3117
 
4009
- var styles$c = {"cw-weekday-selector":"cw-weekday-selector-module__cw-weekday-selector__Iz4GZ"};
3118
+ var styles$9 = {"cw-weekday-selector":"cw-weekday-selector-module_cw-weekday-selector__Iz4GZ"};
4010
3119
 
4011
3120
  /**
4012
3121
  * This class represents a week where days can be selected or unselected
@@ -4146,17 +3255,9 @@ const CwWeekdaySelector = ({ value = "", onChange, disabled = false }) => {
4146
3255
  setSelectedDays(newWeekdays);
4147
3256
  onChange?.(newWeekdays.toString());
4148
3257
  };
4149
- return (jsx("div", { className: styles$c["cw-weekday-selector"], children: Weekdays.getFullWeek().map(day => (jsx("input", { type: "checkbox", "data-day": day, checked: selectedDays.toArray().includes(day), onChange: (e) => handleChange(day, e.target.checked), disabled: disabled }, day))) }));
3258
+ return (jsx("div", { className: styles$9["cw-weekday-selector"], children: Weekdays.getFullWeek().map(day => (jsx("input", { type: "checkbox", "data-day": day, checked: selectedDays.toArray().includes(day), onChange: (e) => handleChange(day, e.target.checked), disabled: disabled }, day))) }));
4150
3259
  };
4151
3260
 
4152
- var styles$b = {"check-container":"cw-check-module__check-container__4nscZ","checkbox-group-container":"cw-check-module__checkbox-group-container__WMNbG"};
4153
-
4154
- function CwCheck(props) {
4155
- const { labelProps, labelText, iconProps, alignment = "row", className, ...inputProps } = props;
4156
- const displayText = labelText || labelProps?.text;
4157
- return (jsx("div", { className: `cw-check ${styles$b["check-container"]}${className ? ` ${className}` : ''}`, children: jsxs("label", { "data-direction": alignment, children: [jsx("input", { type: "checkbox", ...inputProps }), displayText && (jsxs("span", { className: "cw-icon-text", children: [iconProps && jsx(CwIcon, { ...iconProps }), displayText] }))] }) }));
4158
- }
4159
-
4160
3261
  function CwCheckbox(CwCheckboxProps) {
4161
3262
  const handleChange = (e) => {
4162
3263
  CwCheckboxProps.onChange?.(e.target.checked);
@@ -4172,23 +3273,6 @@ function CwCheckbox(CwCheckboxProps) {
4172
3273
  : "cw_checkboxContent cwellt_flex_row" + " " + CwCheckboxProps.classNameContainer, style: CwCheckboxProps.styleContainer, children: [inputElement, CwCheckboxProps.labelName ? (jsx("label", { htmlFor: CwCheckboxProps.id, className: CwCheckboxProps.labelClassName, children: CwCheckboxProps.labelName })) : null] }));
4173
3274
  }
4174
3275
 
4175
- function CwCheckboxGroup({ options, value = [], onChange, labelProps, alignProps, required, disabled, optionsAlignment = "row", className, feedback, }) {
4176
- const handleChange = (optionValue, checked) => {
4177
- if (checked) {
4178
- onChange([...value, optionValue]);
4179
- }
4180
- else {
4181
- onChange(value.filter(v => v !== optionValue));
4182
- }
4183
- };
4184
- const feedbackMessages = feedback
4185
- ? Array.isArray(feedback) ? feedback : [feedback]
4186
- : [];
4187
- const flexDirection = alignProps?.flexDirection ?? "row";
4188
- const dataDirection = { 'data-direction': flexDirection };
4189
- return (jsxs("div", { className: `cw-checkbox-group ${styles$b["checkbox-group-container"]}${className ? ` ${className}` : ''}`, ...dataDirection, children: [jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsx("div", { className: `${optionsAlignment === "row" ? "cw-flex-column cw-gap-small" : "cw-flex-row cw-flex-wrap"}`, children: options.map((option) => (jsx(CwCheck, { labelText: option.label, checked: value.includes(option.value), disabled: disabled || option.disabled, alignment: optionsAlignment, onChange: (e) => handleChange(option.value, e.target.checked) }, option.value))) })] }), feedbackMessages.map((feedbackItem, index) => (jsx("p", { className: "cw-input-info", "data-color": feedbackItem.type, children: feedbackItem.message }, index)))] }));
4190
- }
4191
-
4192
3276
  function CwToggle(props) {
4193
3277
  const { labelProps, labelText, iconProps, alignment = "row", className, style, ...inputProps } = props;
4194
3278
  const displayText = labelText || labelProps?.text;
@@ -4204,16 +3288,13 @@ function CwToggle(props) {
4204
3288
  * @example
4205
3289
  * <CwSelect>
4206
3290
  * <CwOption>A</CwOption>
4207
- * <CwOption color="#4a90d9">Blue option</CwOption>
3291
+ * <CwOption>B</CwOption>
4208
3292
  * <CwOption>C</CwOption>
4209
3293
  * </CwSelect>
4210
3294
  */
4211
3295
  function CwOption(props) {
4212
- const { text, color, style, ...optionProps } = props;
4213
- const mergedStyle = color
4214
- ? { ...style, backgroundColor: color, color: getContrastColor(color) }
4215
- : style;
4216
- return (jsx("option", { className: "cw-option", style: mergedStyle, ...optionProps, children: optionProps.children ?? text }));
3296
+ const { text, ...optionProps } = props;
3297
+ return (jsx("option", { className: "cw-option", ...optionProps, children: optionProps.children ?? text }));
4217
3298
  }
4218
3299
 
4219
3300
  /**
@@ -4241,254 +3322,10 @@ function CwOption(props) {
4241
3322
  * </CwSelect>
4242
3323
  */
4243
3324
  function CwSelect(props) {
4244
- const { alignProps, labelProps, buttonProps, iconProps, placeholder, feedback, children, style, className, ...selectProps } = props;
4245
- const feedbackMessages = feedback
4246
- ? Array.isArray(feedback) ? feedback : [feedback]
4247
- : [];
4248
- const flexDirection = alignProps?.flexDirection ?? "row";
4249
- const dataDirection = { 'data-direction': flexDirection };
4250
- const { backgroundColor, color: textColor, ...wrapperStyle } = style ?? {};
4251
- return (jsxs("div", { className: `cw-select${className ? ` ${className}` : ''}`, ...dataDirection, style: wrapperStyle, children: [jsxs(CwAlign, { ...alignProps, itemProp: selectProps.required === true ? "required" : "", children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsxs("div", { className: "cw-flex-row cw-gap-small cw-flex-grow", children: [jsxs("select", { ...selectProps, style: backgroundColor ? { backgroundColor, color: textColor } : undefined, children: [placeholder && jsx(CwOption, { value: "", children: placeholder }), children] }), buttonProps && jsx(CwButton, { ...buttonProps })] })] }), feedbackMessages.map((feedbackItem, index) => (jsx("p", { className: "cw-input-info", "data-color": feedbackItem.type, children: feedbackItem.message }, index)))] }));
4252
- }
4253
-
4254
- // ─── Default strategy: below anchor, match width, flip above if needed ────────
4255
- function defaultPositionStrategy(anchorRect, panelRect) {
4256
- const panelH = panelRect?.height ?? 200;
4257
- const spaceBelow = window.innerHeight - anchorRect.bottom;
4258
- const top = spaceBelow >= panelH + 4
4259
- ? anchorRect.bottom + 4
4260
- : Math.max(4, anchorRect.top - panelH);
4261
- const width = anchorRect.width;
4262
- const left = Math.max(4, Math.min(anchorRect.left, window.innerWidth - width - 4));
4263
- return { top, left, width };
4264
- }
4265
- // ─── Hook ─────────────────────────────────────────────────────────────────────
4266
- /**
4267
- * Generic portal-based dropdown panel hook.
4268
- *
4269
- * Renders the panel as a direct child of `<body>` via `createPortal` so it
4270
- * escapes any `overflow: hidden/auto` ancestor (dialogs, tabs, cards, etc.).
4271
- * Positions the panel with `position: fixed` computed from the anchor element's
4272
- * `getBoundingClientRect()`, and repositions on scroll and resize.
4273
- *
4274
- * The fix pattern is the same as {@link usePickerPopup} used by `CwDatePicker`.
4275
- *
4276
- * > **Future migration note:** Once the project's minimum browser baseline
4277
- * > reaches Firefox 147 / Safari 26 (CSS Anchor Positioning — Baseline 2026),
4278
- * > this hook can be replaced with `popover="manual"` + CSS `anchor()` with
4279
- * > zero JS positioning.
4280
- *
4281
- * @example
4282
- * ```tsx
4283
- * const wrapperRef = useRef<HTMLDivElement>(null);
4284
- * const { panelRef, panelStyle, renderPanel } = useDropdownPortal({
4285
- * anchorRef: wrapperRef,
4286
- * isOpen,
4287
- * onClose: () => setIsOpen(false),
4288
- * });
4289
- *
4290
- * return (
4291
- * <div ref={wrapperRef}>
4292
- * <input ... />
4293
- * {renderPanel(
4294
- * <div ref={panelRef} style={panelStyle} className={styles.dropdown}>
4295
- * {options}
4296
- * </div>
4297
- * )}
4298
- * </div>
4299
- * );
4300
- * ```
4301
- */
4302
- function useDropdownPortal({ anchorRef, isOpen, onClose, positionStrategy = defaultPositionStrategy, }) {
4303
- const panelRef = useRef(null);
4304
- const [style, setStyle] = useState({
4305
- position: "fixed",
4306
- top: 0,
4307
- left: 0,
4308
- width: "auto",
4309
- zIndex: 1000,
4310
- right: "auto",
4311
- marginLeft: 0,
4312
- });
4313
- const reposition = useCallback(() => {
4314
- const anchor = anchorRef.current;
4315
- if (!anchor)
4316
- return;
4317
- const anchorRect = anchor.getBoundingClientRect();
4318
- const panelRect = panelRef.current?.getBoundingClientRect() ?? null;
4319
- const { top, left, width } = positionStrategy(anchorRect, panelRect);
4320
- setStyle({
4321
- position: "fixed",
4322
- top,
4323
- left,
4324
- width: width ?? "auto",
4325
- zIndex: 1000,
4326
- right: "auto",
4327
- marginLeft: 0,
4328
- });
4329
- }, [anchorRef, positionStrategy]);
4330
- // Reposition when opened; re-measure after first paint to get real panel size
4331
- useEffect(() => {
4332
- if (!isOpen)
4333
- return;
4334
- reposition();
4335
- const raf = requestAnimationFrame(reposition);
4336
- const handleUpdate = () => reposition();
4337
- window.addEventListener("resize", handleUpdate);
4338
- // Capture phase catches scroll on all scrollable ancestors
4339
- window.addEventListener("scroll", handleUpdate, true);
4340
- return () => {
4341
- cancelAnimationFrame(raf);
4342
- window.removeEventListener("resize", handleUpdate);
4343
- window.removeEventListener("scroll", handleUpdate, true);
4344
- };
4345
- }, [isOpen, reposition]);
4346
- // Close when the anchor scrolls out of view in any overflow container
4347
- useEffect(() => {
4348
- if (!isOpen)
4349
- return;
4350
- const anchor = anchorRef.current;
4351
- if (!anchor)
4352
- return;
4353
- const observer = new IntersectionObserver(([entry]) => { if (!entry.isIntersecting)
4354
- onClose(); }, { threshold: 0 });
4355
- observer.observe(anchor);
4356
- return () => observer.disconnect();
4357
- }, [isOpen, anchorRef, onClose]);
4358
- // Close on outside click (anchor + panel are both considered "inside")
4359
- useEffect(() => {
4360
- if (!isOpen)
4361
- return;
4362
- const handleMouseDown = (e) => {
4363
- const target = e.target;
4364
- if (anchorRef.current?.contains(target) || panelRef.current?.contains(target))
4365
- return;
4366
- onClose();
4367
- };
4368
- document.addEventListener("mousedown", handleMouseDown);
4369
- return () => document.removeEventListener("mousedown", handleMouseDown);
4370
- }, [isOpen, onClose, anchorRef, panelRef]);
4371
- const renderPanel = useCallback((children) => {
4372
- if (!isOpen)
4373
- return null;
4374
- return createPortal(children, document.body);
4375
- }, [isOpen]);
4376
- return { panelRef, panelStyle: style, renderPanel };
4377
- }
4378
-
4379
- var dropdownStyles = {"dropdown":"cw-choice-dropdown-module__dropdown__P0b4j","option":"cw-choice-dropdown-module__option__uR-ro","optionFocused":"cw-choice-dropdown-module__optionFocused__BYMxj","optionSelected":"cw-choice-dropdown-module__optionSelected__Lt8Xg","optionDisabled":"cw-choice-dropdown-module__optionDisabled__n3scM","searchBox":"cw-choice-dropdown-module__searchBox__0gox7","searchInput":"cw-choice-dropdown-module__searchInput__G5oRs","emptyState":"cw-choice-dropdown-module__emptyState__HO0Y7","colorCircle":"cw-choice-dropdown-module__colorCircle__x7mI9"};
4380
-
4381
- /**
4382
- * Custom dropdown component with colour-coded options, optional search filter, and full
4383
- * keyboard navigation (↑ ↓ Enter Esc Tab).
4384
- *
4385
- * Use `CwDropdown` instead of the native `<select>` when options need colour indicators or
4386
- * when inline search filtering is required.
4387
- *
4388
- * @example
4389
- * <CwDropdown
4390
- * options={[{ value: 'a', label: 'Option A', color: '#1976D2' }]}
4391
- * value={selected}
4392
- * onChange={setSelected}
4393
- * labelProps={{ text: 'My Label' }}
4394
- * />
4395
- */
4396
- function CwDropdown({ options, value, onChange, labelProps, alignProps, placeholder = "Select...", allowSearch = false, disabled = false, required = false, feedback, className, style, ...otherProps }) {
4397
- const [isOpen, setIsOpen] = useState(false);
4398
- const [searchText, setSearchText] = useState("");
4399
- const [highlightedIndex, setHighlightedIndex] = useState(-1);
4400
- const containerRef = useRef(null);
4401
- const wrapperRef = useRef(null);
4402
- const inputRef = useRef(null);
4403
- const highlightedItemRef = useRef(null);
4404
- const { panelRef, panelStyle, renderPanel } = useDropdownPortal({
4405
- anchorRef: wrapperRef,
4406
- isOpen,
4407
- onClose: () => { setIsOpen(false); setSearchText(""); setHighlightedIndex(-1); },
4408
- });
4409
- const selectedOption = options.find(opt => opt.value === value);
4410
- // Filter options based on search
4411
- const filteredOptions = searchText
4412
- ? options.filter(opt => opt.label.toLowerCase().includes(searchText.toLowerCase()))
4413
- : options;
4414
- // Feedback handling
4415
- const feedbackMessages = feedback
4416
- ? Array.isArray(feedback) ? feedback : [feedback]
4417
- : [];
4418
- // Scroll highlighted item into view
4419
- useEffect(() => {
4420
- if (isOpen && highlightedItemRef.current) {
4421
- highlightedItemRef.current.scrollIntoView({
4422
- block: "nearest",
4423
- behavior: "smooth",
4424
- });
4425
- }
4426
- }, [highlightedIndex, isOpen]);
4427
- const handleTriggerClick = useCallback(() => {
4428
- if (!disabled) {
4429
- setIsOpen(!isOpen);
4430
- setHighlightedIndex(-1);
4431
- if (!isOpen && allowSearch) {
4432
- setTimeout(() => inputRef.current?.focus(), 0);
4433
- }
4434
- }
4435
- }, [isOpen, disabled, allowSearch]);
4436
- const handleOptionSelect = useCallback((optionValue) => {
4437
- const selected = options.find(opt => opt.value === optionValue);
4438
- if (selected && !selected.disabled) {
4439
- onChange?.(optionValue);
4440
- setIsOpen(false);
4441
- setSearchText("");
4442
- setHighlightedIndex(-1);
4443
- }
4444
- }, [options, onChange]);
4445
- const handleSearchChange = useCallback((e) => {
4446
- setSearchText(e.target.value);
4447
- setHighlightedIndex(-1);
4448
- }, []);
4449
- const handleKeyDown = useCallback((e) => {
4450
- if (!isOpen) {
4451
- if (e.key === "Enter" || e.key === " " || e.key === "ArrowDown") {
4452
- e.preventDefault();
4453
- setIsOpen(true);
4454
- }
4455
- return;
4456
- }
4457
- switch (e.key) {
4458
- case "ArrowDown":
4459
- e.preventDefault();
4460
- setHighlightedIndex(prev => prev < filteredOptions.length - 1 ? prev + 1 : 0);
4461
- break;
4462
- case "ArrowUp":
4463
- e.preventDefault();
4464
- setHighlightedIndex(prev => prev > 0 ? prev - 1 : filteredOptions.length - 1);
4465
- break;
4466
- case "Enter":
4467
- e.preventDefault();
4468
- if (highlightedIndex >= 0 && highlightedIndex < filteredOptions.length) {
4469
- handleOptionSelect(filteredOptions[highlightedIndex].value);
4470
- }
4471
- break;
4472
- case "Escape":
4473
- e.preventDefault();
4474
- setIsOpen(false);
4475
- setSearchText("");
4476
- setHighlightedIndex(-1);
4477
- break;
4478
- case "Tab":
4479
- setIsOpen(false);
4480
- setSearchText("");
4481
- setHighlightedIndex(-1);
4482
- break;
4483
- }
4484
- }, [isOpen, highlightedIndex, filteredOptions, handleOptionSelect]);
4485
- const flexDirection = alignProps?.flexDirection ?? "row";
4486
- return (jsxs("div", { ref: containerRef, className: `cw-dropdown${className ? ` ${className}` : ""}`, "data-direction": flexDirection, style: style, ...otherProps, children: [jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: "cw-dropdown-wrapper", ref: wrapperRef, children: [jsx("button", { type: "button", className: "cw-dropdown-trigger", onClick: handleTriggerClick, onKeyDown: handleKeyDown, disabled: disabled, "aria-haspopup": "listbox", "aria-expanded": isOpen, "aria-label": selectedOption?.label || placeholder, children: jsx("div", { className: "cw-dropdown-trigger-content", children: selectedOption ? (jsxs(Fragment, { children: [selectedOption.color && (jsx("span", { className: dropdownStyles.colorCircle, style: { backgroundColor: selectedOption.color } })), jsx("span", { children: selectedOption.label })] })) : (jsx("span", { className: "cw-dropdown-placeholder", children: placeholder })) }) }), jsx("div", { style: { display: "flex", alignItems: "center", paddingRight: "0.5rem", flexShrink: 0, cursor: disabled ? "not-allowed" : "pointer" }, onClick: handleTriggerClick, children: jsx(CwIcon, { iconId: "chevron-down", size: "small" }) }), renderPanel(jsxs("div", { ref: panelRef, className: dropdownStyles.dropdown, style: panelStyle, role: "listbox", onKeyDown: handleKeyDown, children: [allowSearch && (jsx("div", { className: dropdownStyles.searchBox, children: jsx("input", { ref: inputRef, type: "text", placeholder: "Search...", value: searchText, onChange: handleSearchChange, onKeyDown: handleKeyDown, className: dropdownStyles.searchInput, autoComplete: "off" }) })), jsx("ul", { children: filteredOptions.length > 0 ? (filteredOptions.map((option, index) => (jsxs("li", { ref: highlightedIndex === index ? highlightedItemRef : null, className: [
4487
- dropdownStyles.option,
4488
- value === option.value ? dropdownStyles.optionSelected : "",
4489
- highlightedIndex === index ? dropdownStyles.optionFocused : "",
4490
- option.disabled ? dropdownStyles.optionDisabled : "",
4491
- ].filter(Boolean).join(" "), onClick: () => !option.disabled && handleOptionSelect(option.value), onMouseEnter: () => setHighlightedIndex(index), role: "option", "aria-selected": value === option.value, "aria-disabled": option.disabled, children: [option.color && (jsx("span", { className: dropdownStyles.colorCircle, style: { backgroundColor: option.color } })), jsx("span", { children: option.label })] }, option.value)))) : (jsx("li", { className: dropdownStyles.emptyState, children: "No options available" })) })] }))] })] }), feedbackMessages.map((item, index) => (jsx("p", { className: "cw-input-info", "data-color": item.type, children: item.message }, index)))] }));
3325
+ const { alignProps, labelProps, buttonProps, iconProps, placeholder, children, style, ...selectProps } = props;
3326
+ const flexDirection = alignProps?.flexDirection;
3327
+ const dataDirection = flexDirection ? { 'data-direction': flexDirection } : {};
3328
+ return (jsx("div", { className: "cw-select", ...dataDirection, style: style, children: jsxs(CwAlign, { ...alignProps, itemProp: selectProps.required === true ? "required" : "", children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsxs("select", { ...selectProps, children: [placeholder && jsx(CwOption, { value: "", children: placeholder }), children] }), buttonProps && jsx(CwButton, { ...buttonProps })] }) }));
4492
3329
  }
4493
3330
 
4494
3331
  function CwDropdownFilter(props) {
@@ -4501,56 +3338,6 @@ function CwDropdownFilter(props) {
4501
3338
  return (jsxs("div", { id: props.IdContent, className: containerClassName, children: [props.children, isVisible && (jsx("nav", { className: "cw-dropdown-menu", style: inlineStyles, onMouseLeave: props.onMouseLeave, id: props.idDropDownFilter, role: "menu", children: jsx("ul", { role: "none", children: props.DataSourceDropDownItem?.map((item) => (jsx("li", { id: item.IdDropDown_filter, role: "menuitem", children: item.dropDownFilter_desc }, item.IdDropDown_filter))) }) }))] }));
4502
3339
  }
4503
3340
 
4504
- var styles$a = {"container":"cw-popover-button-module__container__YSWQU","panel":"cw-popover-button-module__panel__C-BTn"};
4505
-
4506
- /**
4507
- * Button that toggles a floating panel with arbitrary children.
4508
- * Uses the native Popover API — panel renders in the browser's top layer,
4509
- * escaping all overflow/stacking contexts. Light dismiss (click outside)
4510
- * and Escape key are handled natively by the browser.
4511
- *
4512
- * Designed as a composable primitive:
4513
- * - Column picker: put `<CwCheckboxGroup>` inside
4514
- * - Options menu: put toggles / links inside
4515
- * - Future CwTable integration: use internally for column visibility
4516
- *
4517
- * @example
4518
- * <CwPopoverButton text="Columns" icon="table" variant="outline">
4519
- * <CwCheckboxGroup options={opts} value={val} onChange={setVal} />
4520
- * </CwPopoverButton>
4521
- *
4522
- * @example
4523
- * <CwPopoverButton text="Options" icon="options" variant="outline" placement="bottom-end">
4524
- * <CwToggle labelText="Show assigned" checked={v} onChange={setV} />
4525
- * </CwPopoverButton>
4526
- */
4527
- function CwPopoverButton({ children, panelWidth = "auto", placement = "bottom-start", panelClassName, ...buttonProps }) {
4528
- const containerRef = useRef(null);
4529
- const panelRef = useRef(null);
4530
- const panelCallbackRef = useCallback((node) => {
4531
- panelRef.current = node;
4532
- node?.setAttribute("popover", "auto");
4533
- }, []);
4534
- const handleClick = useCallback(() => {
4535
- const panel = panelRef.current;
4536
- const container = containerRef.current;
4537
- if (!panel || !container)
4538
- return;
4539
- const rect = container.getBoundingClientRect();
4540
- panel.style.top = `${rect.bottom + 4}px`;
4541
- if (placement === "bottom-start") {
4542
- panel.style.left = `${rect.left}px`;
4543
- panel.style.right = "auto";
4544
- }
4545
- else {
4546
- panel.style.right = `${window.innerWidth - rect.right}px`;
4547
- panel.style.left = "auto";
4548
- }
4549
- panel.togglePopover();
4550
- }, [placement]);
4551
- return (jsxs("div", { ref: containerRef, className: styles$a.container, children: [jsx(CwButton, { ...buttonProps, onClick: handleClick }), jsx("div", { ref: panelCallbackRef, className: `${styles$a.panel}${panelClassName ? ` ${panelClassName}` : ""}`, style: { width: panelWidth }, children: children })] }));
4552
- }
4553
-
4554
3341
  function itemsToMultiFilterTags(items, nameKey, valueKey, category, primaryColor, onPrimaryColor) {
4555
3342
  const result = new Set();
4556
3343
  items.forEach((item, index) => {
@@ -4566,13 +3353,13 @@ function itemsToMultiFilterTags(items, nameKey, valueKey, category, primaryColor
4566
3353
  return result;
4567
3354
  }
4568
3355
 
4569
- var styles$9 = {"cw-multifilter-tag":"cw-multi-filter-tag-module__cw-multifilter-tag__Epda-"};
3356
+ var styles$8 = {"cw-multifilter-tag":"cw-multi-filter-tag-module_cw-multifilter-tag__Epda-"};
4570
3357
 
4571
3358
  const CwMultiFilterTag = props => {
4572
3359
  const { ID, Name, Value, Category, Removable, PrimaryColor, Selectable, Selected } = props;
4573
3360
  const backgroundColor = `rgb(${PrimaryColor.r},${PrimaryColor.g},${PrimaryColor.b})`;
4574
3361
  const isOutlineMode = Selected && !Removable;
4575
- return (jsx("li", { className: styles$9["cw-multifilter-tag"], id: ID, "data-value": Value, "data-category": Category, "data-selected": !!Selected, title: props.tooltip ?? Name, onClick: () => {
3362
+ return (jsx("li", { className: styles$8["cw-multifilter-tag"], id: ID, "data-value": Value, "data-category": Category, "data-selected": !!Selected, title: Name, onClick: () => {
4576
3363
  if (Selectable)
4577
3364
  props.OnSelect?.(props);
4578
3365
  }, children: jsx(CwChip, { label: Name, colorScheme: "custom", customColor: backgroundColor, variant: isOutlineMode ? "outline" : "soft", closable: Removable, onClose: () => props.OnRemove?.(props),
@@ -4582,7 +3369,7 @@ const CwMultiFilterTag = props => {
4582
3369
  } : undefined }) }));
4583
3370
  };
4584
3371
 
4585
- var styles$8 = {"cw-multi-filter-catalog-container":"cw-multi-filter-module__cw-multi-filter-catalog-container__S3nsq","cw-multi-filter":"cw-multi-filter-module__cw-multi-filter__zipBK","category-selected":"cw-multi-filter-module__category-selected__eYbes","cw-multi-filter-search":"cw-multi-filter-module__cw-multi-filter-search__eyHr0 cw-choice-input-box-module__inputBox__gHY9d"};
3372
+ var styles$7 = {"cw-multi-filter-catalog-container":"cw-multi-filter-module_cw-multi-filter-catalog-container__S3nsq","cw-multi-filter":"cw-multi-filter-module_cw-multi-filter__zipBK","cw-multi-filter-search":"cw-multi-filter-module_cw-multi-filter-search__eyHr0"};
4586
3373
 
4587
3374
  /**
4588
3375
  * A multiple filter selector, a MULTI-SELECT even. Allows users to select and filter items based on tags.
@@ -4723,21 +3510,26 @@ var styles$8 = {"cw-multi-filter-catalog-container":"cw-multi-filter-module__cw-
4723
3510
  * @param {CwMultiFilterProps} props
4724
3511
  * @returns Set the `onChange` callback to a function to check for changes in the selected filters
4725
3512
  */
4726
- const CwMultiFilter = ({ allTags, id, onChangeSelectedTags, selectedTags, placeholder = "Write to filter", allCategoriesLabel = "ALL CATEGORIES", className, style }) => {
3513
+ const CwMultiFilter = ({ allTags, id, onChangeSelectedTags, selectedTags, style }) => {
4727
3514
  const [filteredTags, setFilteredTags] = useState(new Set());
4728
3515
  const [inputTextValue, setInputTextValue] = useState("");
4729
3516
  const [isPanelOpen, setIsPanelOpen] = useState(false);
4730
3517
  const [selectedCategory, setSelectedCategory] = useState("All");
4731
3518
  const componentRef = useRef(null);
4732
3519
  const inputRef = useRef(null);
4733
- const wrapperRef = useRef(null);
4734
- const { panelRef, panelStyle, renderPanel } = useDropdownPortal({
4735
- anchorRef: wrapperRef,
4736
- isOpen: isPanelOpen,
4737
- onClose: () => { setIsPanelOpen(false); setFilteredTags(getUnselectedAll()); setSelectedCategory("All"); setInputTextValue(""); },
4738
- });
4739
3520
  useEffect(() => {
4740
- // Outside-click is now handled by useDropdownPortal
3521
+ function handleClickOutside(event) {
3522
+ if (componentRef.current && !componentRef.current.contains(event.target)) {
3523
+ setIsPanelOpen(false);
3524
+ setFilteredTags(new Set());
3525
+ setSelectedCategory("All");
3526
+ setInputTextValue("");
3527
+ }
3528
+ }
3529
+ document.addEventListener("mousedown", handleClickOutside);
3530
+ return () => {
3531
+ document.removeEventListener("mousedown", handleClickOutside);
3532
+ };
4741
3533
  }, []);
4742
3534
  const categoriesMappedToTags = () => {
4743
3535
  const categoriesMap = new Map();
@@ -4748,10 +3540,9 @@ const CwMultiFilter = ({ allTags, id, onChangeSelectedTags, selectedTags, placeh
4748
3540
  });
4749
3541
  return categoriesMap;
4750
3542
  };
4751
- const getUnselectedAll = (excluded = selectedTags) => new Set(Array.from(allTags).filter(tag => !Array.from(excluded).some(t => t.ID === tag.ID)));
4752
3543
  const handleClickCategory = (category) => {
4753
3544
  setSelectedCategory(category);
4754
- setFilteredTags(category !== "All" ? (categoriesMappedToTags().get(category) ?? new Set()) : getUnselectedAll());
3545
+ setFilteredTags(category != "All" ? (categoriesMappedToTags().get(category) ?? new Set()) : new Set());
4755
3546
  };
4756
3547
  const rgbAString = (r, g, b) => {
4757
3548
  return `rgb(${r}, ${g}, ${b})`;
@@ -4783,7 +3574,7 @@ const CwMultiFilter = ({ allTags, id, onChangeSelectedTags, selectedTags, placeh
4783
3574
  setFilteredTags(new Set(newFilterTags));
4784
3575
  }
4785
3576
  else {
4786
- setFilteredTags(getUnselectedAll());
3577
+ setFilteredTags(new Set());
4787
3578
  }
4788
3579
  };
4789
3580
  const addTag = (newTag) => {
@@ -4797,13 +3588,7 @@ const CwMultiFilter = ({ allTags, id, onChangeSelectedTags, selectedTags, placeh
4797
3588
  const updatedTags = new Set(selectedTags).add(newTag);
4798
3589
  onChangeSelectedTags(updatedTags);
4799
3590
  setInputTextValue("");
4800
- setFilteredTags(selectedCategory === "All" ? getUnselectedAll(updatedTags) : prev => {
4801
- const next = new Set(prev);
4802
- const toRemove = Array.from(next).find(t => t.ID === newTag.ID);
4803
- if (toRemove)
4804
- next.delete(toRemove);
4805
- return next;
4806
- });
3591
+ //setFilteredTags(allTags);
4807
3592
  }
4808
3593
  };
4809
3594
  const removeTag = (id) => {
@@ -4827,9 +3612,9 @@ const CwMultiFilter = ({ allTags, id, onChangeSelectedTags, selectedTags, placeh
4827
3612
  inputRef.current?.focus();
4828
3613
  }
4829
3614
  };
4830
- return (jsxs("form", { ref: componentRef, id: id, className: `${styles$8["cw-multi-filter"]}${className ? ` ${className}` : ""}`, style: style, onSubmit: (e) => {
3615
+ return (jsxs("form", { ref: componentRef, id: id, className: styles$7["cw-multi-filter"], style: style, onSubmit: (e) => {
4831
3616
  e.preventDefault();
4832
- }, children: [jsxs("div", { onClick: handleDivClick, ref: wrapperRef, className: styles$8["cw-multi-filter-search"], style: isPanelOpen ? { outline: "1px solid var(--cw-color-outline-variant)" } : {}, children: [jsxs("ul", { id: id + "_selected_filters", children: [Array.from(selectedTags).map(tag => (createElement(CwMultiFilterTag, { ...tag, key: tag.ID, Selectable: false, Removable: true, OnRemove: () => removeTag(tag.ID) }))), jsx("input", { type: "text", id: id + "_input", ref: inputRef, value: inputTextValue, spellCheck: false, onFocus: () => setIsPanelOpen(true), onChange: e => handleInputText(e.currentTarget.value), autoComplete: "off", placeholder: selectedTags.size === 0 ? placeholder : "", onKeyDown: e => {
3617
+ }, children: [jsxs("div", { onClick: handleDivClick, className: styles$7["cw-multi-filter-search"], style: isPanelOpen ? { outline: "1px solid var(--cw-color-primary)", outlineOffset: "-2px" } : {}, children: [jsxs("ul", { id: id + "_selected_filters", children: [Array.from(selectedTags).map(tag => (createElement(CwMultiFilterTag, { ...tag, key: tag.ID, Selectable: false, Removable: true, OnRemove: () => removeTag(tag.ID) }))), jsx("input", { type: "text", id: id + "_input", ref: inputRef, value: inputTextValue, spellCheck: false, onFocus: () => setIsPanelOpen(true), onChange: e => handleInputText(e.target.value), autoComplete: "off", placeholder: "Write to filter", onKeyDown: e => {
4833
3618
  switch (e.key) {
4834
3619
  case "Enter":
4835
3620
  case "Tab": {
@@ -4856,10 +3641,29 @@ const CwMultiFilter = ({ allTags, id, onChangeSelectedTags, selectedTags, placeh
4856
3641
  break;
4857
3642
  }
4858
3643
  }
4859
- } })] }), selectedTags.size > 0 && (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onMouseDown: e => e.preventDefault(), onClick: (e) => { e.stopPropagation(); onChangeSelectedTags(new Set()); setIsPanelOpen(false); }, tabIndex: -1, "aria-label": "Clear all" }))] }), renderPanel(jsxs("section", { ref: panelRef, className: styles$8["cw-multi-filter-catalog-container"], style: panelStyle, children: [jsxs("nav", { children: [jsx("button", { className: selectedCategory === "All" ? styles$8["category-selected"] : undefined, onClick: () => handleClickCategory("All"), children: allCategoriesLabel }), Array.from(categoriesMappedToTags().keys()).map(category => (jsx("button", { className: selectedCategory === category ? styles$8["category-selected"] : undefined, style: {
4860
- backgroundColor: getColor(category).primary,
4861
- color: getColor(category).onPrimary,
4862
- }, onClick: () => handleClickCategory(category), children: category }, category)))] }), jsx("ul", { children: Array.from(filteredTags)
3644
+ } })] }), selectedTags.size > 0 ? (jsx("input", { type: "reset", value: "\u00D7", onClick: e => {
3645
+ e.preventDefault();
3646
+ onChangeSelectedTags(new Set());
3647
+ } })) : null] }), jsxs("section", { className: styles$7["cw-multi-filter-catalog-container"], "data-display-none": !isPanelOpen, children: [jsxs("nav", { children: [jsx("button", { style: selectedCategory === "All"
3648
+ ? {
3649
+ backgroundColor: "var(--cw-color-primary-container)",
3650
+ color: "var(--cw-color-primary)",
3651
+ outline: "2px solid var(--cw-color-primary)",
3652
+ outlineOffset: "-2px",
3653
+ fontWeight: 400
3654
+ }
3655
+ : {}, onClick: () => handleClickCategory("All"), children: "SEARCH IN ALL CATEGORIES" }), Array.from(categoriesMappedToTags().keys()).map(category => (jsx("button", { style: selectedCategory === category
3656
+ ? {
3657
+ backgroundColor: getColor(category).primary,
3658
+ color: getColor(category).onPrimary,
3659
+ outline: "2px solid " + getColor(category).onPrimary,
3660
+ outlineOffset: "-2px",
3661
+ fontWeight: 400
3662
+ }
3663
+ : {
3664
+ backgroundColor: getColor(category).primary,
3665
+ color: getColor(category).onPrimary,
3666
+ }, onClick: () => handleClickCategory(category), children: category }, category)))] }), jsx("ul", { children: Array.from(filteredTags)
4863
3667
  .sort((a, b) => {
4864
3668
  const input = inputTextValue.trim().toLowerCase();
4865
3669
  const aName = a.Name.trim().toLowerCase();
@@ -4879,149 +3683,10 @@ const CwMultiFilter = ({ allTags, id, onChangeSelectedTags, selectedTags, placeh
4879
3683
  removeTag(props.ID);
4880
3684
  else
4881
3685
  addTag(props);
4882
- } }, props.ID))) })] }))] }));
3686
+ } }, props.ID))) })] })] }));
4883
3687
  };
4884
3688
 
4885
- var styles$7 = {"container":"cw-tag-selector-module__container__-do8i","inputBox":"cw-tag-selector-module__inputBox__3NGz9 cw-choice-input-box-module__inputBox__gHY9d","disabled":"cw-tag-selector-module__disabled__vbud9 cw-choice-input-box-module__disabled__TFAnC","dropdown":"cw-tag-selector-module__dropdown__X6Dob cw-choice-dropdown-module__dropdown__P0b4j","option":"cw-tag-selector-module__option__2UQ7g cw-choice-dropdown-module__option__uR-ro","optionFocused":"cw-tag-selector-module__optionFocused__8-lv8 cw-choice-dropdown-module__optionFocused__BYMxj","optionDot":"cw-tag-selector-module__optionDot__CdFlG cw-choice-dropdown-module__colorCircle__x7mI9","selectAll":"cw-tag-selector-module__selectAll__HyvMA"};
4886
-
4887
- /**
4888
- * Multi-select input with chip tags and searchable dropdown.
4889
- * Works like a Kendo MultiSelect: selected items appear as removable chips
4890
- * inside the input area, and a filtered dropdown lets the user pick more.
4891
- *
4892
- * @example
4893
- * ```tsx
4894
- * const options = [
4895
- * { value: "1", label: "Alpha" },
4896
- * { value: "2", label: "Bravo" },
4897
- * { value: "3", label: "Charlie" },
4898
- * ];
4899
- * const [selected, setSelected] = useState<string[]>([]);
4900
- *
4901
- * <CwTagSelector
4902
- * labelProps={{ text: "Tags" }}
4903
- * options={options}
4904
- * value={selected}
4905
- * onChange={setSelected}
4906
- * placeholder="Select items…"
4907
- * />
4908
- * ```
4909
- */
4910
- function CwTagSelector({ id, options, value, onChange, labelProps, iconProps, alignProps, placeholder = "Select…", disabled = false, showSelectAll = false, feedback, className, style, }) {
4911
- const [search, setSearch] = useState("");
4912
- const [open, setOpen] = useState(false);
4913
- const [focusedIndex, setFocusedIndex] = useState(-1);
4914
- const containerRef = useRef(null);
4915
- const inputBoxRef = useRef(null);
4916
- const inputRef = useRef(null);
4917
- const listRef = useRef(null);
4918
- const { panelRef, panelStyle, renderPanel } = useDropdownPortal({
4919
- anchorRef: inputBoxRef,
4920
- isOpen: open,
4921
- onClose: () => { setOpen(false); setFocusedIndex(-1); },
4922
- });
4923
- const selectedSet = useMemo(() => new Set(value), [value]);
4924
- const filtered = useMemo(() => {
4925
- if (!search)
4926
- return options.filter(o => !selectedSet.has(o.value));
4927
- const lower = search.toLowerCase();
4928
- return options.filter(o => !selectedSet.has(o.value) && o.label.toLowerCase().includes(lower));
4929
- }, [options, selectedSet, search]);
4930
- const selectedOptions = useMemo(() => value.map(v => options.find(o => o.value === v)).filter(Boolean), [value, options]);
4931
- const handleSelect = useCallback((optionValue) => {
4932
- onChange([...value, optionValue]);
4933
- setSearch("");
4934
- setFocusedIndex(-1);
4935
- inputRef.current?.focus();
4936
- }, [value, onChange]);
4937
- const handleRemove = useCallback((optionValue) => {
4938
- onChange(value.filter(v => v !== optionValue));
4939
- inputRef.current?.focus();
4940
- }, [value, onChange]);
4941
- const allSelected = options.length > 0 && options.every(o => selectedSet.has(o.value));
4942
- const handleToggleAll = useCallback(() => {
4943
- if (allSelected) {
4944
- onChange([]);
4945
- }
4946
- else {
4947
- onChange(options.map(o => o.value));
4948
- }
4949
- setSearch("");
4950
- setFocusedIndex(-1);
4951
- inputRef.current?.focus();
4952
- }, [allSelected, options, onChange]);
4953
- const handleInputChange = useCallback((e) => {
4954
- setSearch(e.currentTarget.value);
4955
- if (!open)
4956
- setOpen(true);
4957
- setFocusedIndex(-1);
4958
- }, [open]);
4959
- const handleInputFocus = useCallback(() => {
4960
- if (!disabled)
4961
- setOpen(true);
4962
- }, [disabled]);
4963
- const handleKeyDown = useCallback((e) => {
4964
- if (e.key === "Backspace" && !search && value.length > 0) {
4965
- onChange(value.slice(0, -1));
4966
- return;
4967
- }
4968
- if (e.key === "Escape") {
4969
- setOpen(false);
4970
- setFocusedIndex(-1);
4971
- return;
4972
- }
4973
- if (e.key === "Enter") {
4974
- e.preventDefault();
4975
- if (focusedIndex >= 0 && focusedIndex < filtered.length) {
4976
- handleSelect(filtered[focusedIndex].value);
4977
- }
4978
- else if (search.trim().length > 0 && filtered.length > 0) {
4979
- const lower = search.trim().toLowerCase();
4980
- const match = filtered.find(o => o.label.trim().toLowerCase() === lower) ??
4981
- filtered.find(o => o.label.trim().toLowerCase().startsWith(lower)) ??
4982
- filtered[0];
4983
- if (match)
4984
- handleSelect(match.value);
4985
- }
4986
- else if (!open) {
4987
- setOpen(true);
4988
- setFocusedIndex(0);
4989
- }
4990
- return;
4991
- }
4992
- if (!open) {
4993
- if (e.key === "ArrowDown") {
4994
- setOpen(true);
4995
- setFocusedIndex(0);
4996
- e.preventDefault();
4997
- }
4998
- return;
4999
- }
5000
- if (e.key === "ArrowDown") {
5001
- e.preventDefault();
5002
- setFocusedIndex(prev => (prev < filtered.length - 1 ? prev + 1 : prev));
5003
- }
5004
- else if (e.key === "ArrowUp") {
5005
- e.preventDefault();
5006
- setFocusedIndex(prev => (prev > 0 ? prev - 1 : 0));
5007
- }
5008
- }, [open, search, value, filtered, focusedIndex, onChange, handleSelect]);
5009
- // Scroll focused item into view
5010
- useEffect(() => {
5011
- if (focusedIndex >= 0 && listRef.current) {
5012
- const item = listRef.current.children[focusedIndex];
5013
- item?.scrollIntoView({ block: "nearest" });
5014
- }
5015
- }, [focusedIndex]);
5016
- // Close on outside click — now handled by useDropdownPortal
5017
- // Keeping containerRef for any other potential use
5018
- const direction = alignProps?.flexDirection ?? "row";
5019
- const feedbackMessages = feedback ? (Array.isArray(feedback) ? feedback : [feedback]) : [];
5020
- return (jsxs("div", { ref: containerRef, className: `${styles$7.container}${className ? ` ${className}` : ""}`, style: style, id: id, "data-direction": direction, children: [jsxs(CwAlign, { ...alignProps, children: [labelProps && (jsxs(CwLabel, { ...labelProps, children: [iconProps && jsx(CwIcon, { ...iconProps }), labelProps.text] })), jsxs("div", { className: `${styles$7.inputBox}${disabled ? ` ${styles$7.disabled}` : ""}`, ref: inputBoxRef, onClick: () => { if (!disabled)
5021
- inputRef.current?.focus(); }, children: [selectedOptions.map(opt => (jsx(CwChip, { label: opt.label, colorScheme: opt.color ? "custom" : "info", customColor: opt.color, closable: !disabled, onClose: () => handleRemove(opt.value) }, opt.value))), jsx("input", { ref: inputRef, type: "text", value: search, onChange: handleInputChange, onFocus: handleInputFocus, onKeyDown: handleKeyDown, placeholder: selectedOptions.length === 0 ? placeholder : "", disabled: disabled, autoComplete: "off" }), value.length > 0 && !disabled && (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onMouseDown: (e) => e.preventDefault(), onClick: (e) => { e.stopPropagation(); onChange([]); setSearch(""); setOpen(false); }, tabIndex: -1, "aria-label": "Clear all" }))] })] }), feedbackMessages.map((fb, i) => (jsx("p", { className: "cw-input-info", "data-color": fb.type, children: fb.message }, i))), renderPanel((showSelectAll || filtered.length > 0) ? (jsxs("div", { ref: panelRef, className: styles$7.dropdown, style: panelStyle, children: [showSelectAll && !search && (jsxs("div", { className: styles$7.selectAll, onMouseDown: (e) => e.preventDefault(), onClick: handleToggleAll, children: [jsx("input", { type: "checkbox", checked: allSelected, readOnly: true, tabIndex: -1 }), allSelected ? "Deselect all" : "Select all"] })), jsx("ul", { ref: listRef, children: filtered.map((opt, idx) => (jsxs("li", { className: `${styles$7.option}${idx === focusedIndex ? ` ${styles$7.optionFocused}` : ""}`, onMouseDown: (e) => e.preventDefault(), onClick: () => handleSelect(opt.value), onMouseEnter: () => setFocusedIndex(idx), title: opt.tooltip, children: [opt.color && jsx("span", { className: styles$7.optionDot, style: { backgroundColor: opt.color } }), opt.label] }, opt.value))) })] })) : null)] }));
5022
- }
5023
-
5024
- var styles$6 = {"tree-container":"cw-tree-view-module__tree-container__NN-HJ","tree-wrapper":"cw-tree-view-module__tree-wrapper__keBZI","tree-item":"cw-tree-view-module__tree-item__prE9N","tree-node":"cw-tree-view-module__tree-node__wfro9","selected":"cw-tree-view-module__selected__XJQ0w","non-selectable":"cw-tree-view-module__non-selectable__YuPSx","tree-children":"cw-tree-view-module__tree-children__ji8CZ","empty-state":"cw-tree-view-module__empty-state__yvRjo","tree-label":"cw-tree-view-module__tree-label__ss3Nf","tree-spacer":"cw-tree-view-module__tree-spacer__E9Ud2"};
3689
+ var styles$6 = {"tree-container":"cw-tree-view-module_tree-container__NN-HJ","tree-wrapper":"cw-tree-view-module_tree-wrapper__keBZI","tree-item":"cw-tree-view-module_tree-item__prE9N","tree-node":"cw-tree-view-module_tree-node__wfro9","selected":"cw-tree-view-module_selected__XJQ0w","non-selectable":"cw-tree-view-module_non-selectable__YuPSx","tree-children":"cw-tree-view-module_tree-children__ji8CZ","empty-state":"cw-tree-view-module_empty-state__yvRjo","tree-label":"cw-tree-view-module_tree-label__ss3Nf","tree-spacer":"cw-tree-view-module_tree-spacer__E9Ud2"};
5025
3690
 
5026
3691
  function CwTreeView({ data, onSelect, allowParentSelection = false, selectedId: initialSelectedId = null }) {
5027
3692
  const [expanded, setExpanded] = useState(new Set());
@@ -5127,30 +3792,12 @@ function CwTreeView({ data, onSelect, allowParentSelection = false, selectedId:
5127
3792
  return (jsxs("div", { className: `cw-tree-view ${styles$6["tree-container"]}`, children: [jsxs("header", { children: [jsx("input", { type: "text", placeholder: "Search in tree...", value: search, onChange: (e) => setSearch(e.target.value) }), search && (jsx(CwButton, { onClick: () => setSearch(""), type: "button", icon: "close", variant: "icon", color: "neutral" }))] }), jsx("div", { className: styles$6["tree-wrapper"], children: filteredData.length > 0 ? (filteredData.map((node) => renderNode(node))) : (jsxs("div", { className: styles$6["empty-state"], children: [jsx(CwIcon, { iconId: "comment" }), search ? "No results found" : "There are no items"] })) })] }));
5128
3793
  }
5129
3794
 
5130
- /**
5131
- * Text input with a live-filtered suggestion dropdown backed by a local `CwSelectList` array.
5132
- * Use `CwFindAirport` or `CwFindCrewmember` for API-backed search inputs.
5133
- *
5134
- * @example
5135
- * <CwSearchInput
5136
- * selectList={myItems}
5137
- * handleChange={(id) => console.log('selected', id)}
5138
- * labelProps={{ text: 'Employee' }}
5139
- * placeholder="Search by name…"
5140
- * />
5141
- */
5142
3795
  function CwSearchInput(optionsProps) {
5143
3796
  const [searchText, setSearchText] = useState("");
5144
3797
  const [filteredOptions, setFilteredOptions] = useState([]);
5145
3798
  const [_selectedOption, setSelectedOption] = useState(null);
5146
3799
  const [showDropdown, setShowDropdown] = useState(false);
5147
3800
  const [isLoading, setIsLoading] = useState(false);
5148
- const wrapperRef = useRef(null);
5149
- const { panelRef, panelStyle, renderPanel } = useDropdownPortal({
5150
- anchorRef: wrapperRef,
5151
- isOpen: showDropdown && filteredOptions.length > 0,
5152
- onClose: () => setShowDropdown(false),
5153
- });
5154
3801
  // Extract props
5155
3802
  const { labelProps, iconProps, alignProps, selectList, handleChange, placeholder = "Search…", disabled, renderOption, style, id, className, defaultValue, ...otherProps } = optionsProps;
5156
3803
  // Get direction for data attribute
@@ -5201,8 +3848,9 @@ function CwSearchInput(optionsProps) {
5201
3848
  }
5202
3849
  };
5203
3850
  const handleInputBlur = () => {
5204
- // Dropdown is closed by useDropdownPortal's outside-click handler.
5205
- // Blur alone must not close it — clicking an option would lose focus before the click fires.
3851
+ setTimeout(() => {
3852
+ setShowDropdown(false);
3853
+ }, 150);
5206
3854
  };
5207
3855
  const handleOptionSelect = (option) => {
5208
3856
  setSearchText(option.description);
@@ -5220,10 +3868,10 @@ function CwSearchInput(optionsProps) {
5220
3868
  handleChange("");
5221
3869
  }
5222
3870
  };
5223
- return (jsxs("div", { className: `cw-search-input ${className || ""}`, style: style, id: id, ...otherProps, "data-direction": direction, children: [jsxs(CwAlign, { ...alignProps, children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: "cw-search-input-wrapper", ref: wrapperRef, children: [jsx("input", { type: "text", value: searchText, onChange: handleInputChange, onFocus: handleInputFocus, onBlur: handleInputBlur, placeholder: placeholder, className: "cw-input-search", disabled: disabled }), isLoading && (jsx("div", { className: "cw-search-input-loading", children: jsx(CwIcon, { iconId: "spinner" }) })), jsx("div", { className: "cw-search-input-icons", children: searchText && !disabled && !isLoading ? (jsx(CwButton, { type: "button", onClick: handleClearClick, "aria-label": "Clear search", variant: "icon", icon: "close", color: "neutral" })) : (iconProps ? jsx(CwIcon, { ...iconProps }) : jsx(CwIcon, { iconId: "search" })) })] })] }), renderPanel(jsx("div", { ref: panelRef, className: dropdownStyles.dropdown, style: panelStyle, children: jsx("ul", { children: filteredOptions.map((option) => (jsx("li", { className: dropdownStyles.option, onClick: () => handleOptionSelect(option), onMouseDown: (e) => e.preventDefault(), children: renderOption ? renderOption(option) : option.description }, option.id))) }) }))] }));
3871
+ return (jsxs("div", { className: `cw-search-input ${className || ""}`, style: style, id: id, ...otherProps, "data-direction": direction, children: [jsxs(CwAlign, { ...alignProps, children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: "cw-search-input-wrapper", children: [jsx("input", { type: "text", value: searchText, onChange: handleInputChange, onFocus: handleInputFocus, onBlur: handleInputBlur, placeholder: placeholder, className: "cw-input-search", disabled: disabled }), isLoading && (jsx("div", { className: "cw-search-input-loading", children: jsx(CwIcon, { iconId: "spinner" }) })), jsx("div", { className: "cw-search-input-icons", children: searchText && !disabled && !isLoading ? (jsx(CwButton, { type: "button", onClick: handleClearClick, "aria-label": "Clear search", variant: "icon", icon: "close", color: "neutral" })) : (iconProps ? jsx(CwIcon, { ...iconProps }) : jsx(CwIcon, { iconId: "search" })) })] })] }), showDropdown && filteredOptions.length > 0 && (jsx("div", { className: "cw-input-search-dropdown", children: jsx("ul", { children: filteredOptions.map((option) => (jsx("li", { onClick: () => handleOptionSelect(option), onMouseDown: (e) => e.preventDefault(), children: renderOption ? renderOption(option) : option.description }, option.id))) }) }))] }));
5224
3872
  }
5225
3873
 
5226
- var styles$5 = {"menu":"cw-context-menu-module__menu__tXmun","item":"cw-context-menu-module__item__-ko8L","arrow":"cw-context-menu-module__arrow__LHZmQ"};
3874
+ var styles$5 = {"menu":"cw-context-menu-module_menu__tXmun","item":"cw-context-menu-module_item__-ko8L","arrow":"cw-context-menu-module_arrow__LHZmQ"};
5227
3875
 
5228
3876
  const ARROW_SIZE = 8;
5229
3877
  const SAFETY_MARGIN = 8;
@@ -5472,73 +4120,14 @@ function CwBtnDelete({ cw_btnOnclick, cw_btn_disabled, onClick, disabled, ...res
5472
4120
  return (jsx(CwButton, { ...rest, variant: "icon", icon: "delete", color: "danger", onClick: onClick ?? cw_btnOnclick, disabled: disabled ?? cw_btn_disabled }));
5473
4121
  }
5474
4122
 
5475
- var styles$4 = {"pickerWrapper":"cw-pickers-base-module__pickerWrapper__Fb9Zo","pickerIcons":"cw-pickers-base-module__pickerIcons__dyd2-","pickerPopup":"cw-pickers-base-module__pickerPopup__dkxJo"};
5476
-
5477
- /**
5478
- * Renders a picker popup in a portal so it escapes overflow containers.
5479
- * Positions itself relative to the anchor element.
5480
- *
5481
- * Thin wrapper around {@link useDropdownPortal} that adds directional
5482
- * preference logic ("left-bottom", "right-top", etc.) for calendar popups.
5483
- * The public API is unchanged — existing callers (`CwDatePicker`, etc.) need
5484
- * no modifications.
5485
- */
5486
- function usePickerPopup({ anchorRef, isOpen, onClose, position = "left-bottom" }) {
5487
- const pickerStrategy = useCallback((anchorRect, panelRect) => {
5488
- const popupH = panelRect?.height ?? 300;
5489
- const popupW = panelRect?.width ?? 300;
5490
- const preferTop = position.includes("top");
5491
- const spaceBelow = window.innerHeight - anchorRect.bottom;
5492
- const spaceAbove = anchorRect.top;
5493
- let top;
5494
- if (preferTop && spaceAbove >= popupH) {
5495
- top = anchorRect.top - popupH;
5496
- }
5497
- else if (!preferTop && spaceBelow >= popupH + 4) {
5498
- top = anchorRect.bottom + 4;
5499
- }
5500
- else {
5501
- top = spaceBelow >= popupH + 4 ? anchorRect.bottom + 4 : anchorRect.top - popupH;
5502
- }
5503
- let left;
5504
- if (position.includes("right")) {
5505
- left = anchorRect.right - popupW;
5506
- }
5507
- else {
5508
- left = anchorRect.left;
5509
- }
5510
- left = Math.max(4, Math.min(left, window.innerWidth - popupW - 4));
5511
- top = Math.max(4, top);
5512
- // No width override — the calendar has its own intrinsic size
5513
- return { top, left };
5514
- }, [position]);
5515
- const { panelRef, panelStyle, renderPanel } = useDropdownPortal({
5516
- anchorRef,
5517
- isOpen,
5518
- onClose,
5519
- positionStrategy: pickerStrategy,
5520
- });
5521
- // Expose original API names so CwDatePicker needs zero changes
5522
- return { popupRef: panelRef, popupStyle: panelStyle, renderPopup: renderPanel };
5523
- }
4123
+ var styles$4 = {"pickerWrapper":"cw-pickers-base-module_pickerWrapper__Fb9Zo","pickerIcons":"cw-pickers-base-module_pickerIcons__dyd2-","pickerPopup":"cw-pickers-base-module_pickerPopup__dkxJo"};
5524
4124
 
5525
- function CwDatePicker({ value, onChange, minDate, maxDate, disabledDates, disabledMatcher, defaultMonth, labelProps, alignProps, placeholder = "Select a date", displayFormat = "dd.MM.yyyy", disabled, required, className, showClear = true, popupPosition = "left-bottom", numberOfMonths = 1, showTodayButton = false, locale = enGB, todayLabel = "Today", feedback, }) {
4125
+ function CwDatePicker({ value, onChange, minDate, maxDate, disabledDates, disabledMatcher, defaultMonth, labelProps, alignProps, placeholder = "Select a date", displayFormat = "dd.MM.yyyy", disabled, required, className, showClear = true, popupPosition = "left-bottom", numberOfMonths = 1, showTodayButton = false, }) {
5526
4126
  const [isOpen, setIsOpen] = useState(false);
5527
4127
  const [inputValue, setInputValue] = useState("");
5528
4128
  const containerRef = useRef(null);
5529
- const feedbackMessages = feedback
5530
- ? Array.isArray(feedback) ? feedback : [feedback]
5531
- : [];
5532
- const wrapperRef = useRef(null);
5533
4129
  const inputRef = useRef(null);
5534
4130
  const prevValueRef = useRef(undefined);
5535
- const handleClose = useCallback(() => setIsOpen(false), []);
5536
- const { popupRef, popupStyle, renderPopup } = usePickerPopup({
5537
- anchorRef: wrapperRef,
5538
- isOpen,
5539
- onClose: handleClose,
5540
- position: popupPosition,
5541
- });
5542
4131
  // Parse date from string based on format
5543
4132
  const parseDate = useCallback((dateString, formatStr) => {
5544
4133
  try {
@@ -5621,6 +4210,20 @@ function CwDatePicker({ value, onChange, minDate, maxDate, disabledDates, disabl
5621
4210
  }
5622
4211
  }
5623
4212
  }, [value, displayFormat]);
4213
+ // Close calendar when clicking outside
4214
+ useEffect(() => {
4215
+ const handleClickOutside = (event) => {
4216
+ if (containerRef.current && !containerRef.current.contains(event.target)) {
4217
+ setIsOpen(false);
4218
+ }
4219
+ };
4220
+ if (isOpen) {
4221
+ document.addEventListener("mousedown", handleClickOutside);
4222
+ }
4223
+ return () => {
4224
+ document.removeEventListener("mousedown", handleClickOutside);
4225
+ };
4226
+ }, [isOpen]);
5624
4227
  const handleDaySelect = useCallback((date) => {
5625
4228
  onChange(date);
5626
4229
  setIsOpen(false);
@@ -5696,14 +4299,14 @@ function CwDatePicker({ value, onChange, minDate, maxDate, disabledDates, disabl
5696
4299
  ...(maxDate ? [{ after: maxDate }] : []),
5697
4300
  ...(disabledMatcher ? [disabledMatcher] : []),
5698
4301
  ], [disabledDates, minDate, maxDate, disabledMatcher]);
5699
- return (jsxs("div", { ref: containerRef, className: `cw-datepicker ${className || ""}`, children: [jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { ref: wrapperRef, className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, placeholder: placeholder, onChange: handleInputChange, onBlur: handleInputBlur, onClick: handleInputClick, onKeyDown: handleInputKeyDown, disabled: disabled, required: required }), jsx("div", { className: styles$4.pickerIcons, children: showClear && value && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onClick: handleClear, tabIndex: -1, "aria-label": "Clear date" })) : (jsx(CwIcon, { iconId: "calendar" })) }), renderPopup(jsxs("div", { ref: popupRef, className: styles$4.pickerPopup, style: popupStyle, children: [jsx(DayPicker, { mode: "single", selected: value || undefined, defaultMonth: defaultMonth || value || undefined, onSelect: handleDaySelect, disabled: disabledDays, numberOfMonths: numberOfMonths, locale: locale, modifiers: {
5700
- today: new Date(),
5701
- }, modifiersClassNames: {
5702
- today: "rdp-day-today",
5703
- } }), showTodayButton && (jsx("footer", { className: "cw-flex-row cw-align-right-center", children: jsx(CwButton, { type: "button", variant: "outline", onClick: handleTodayClick, text: todayLabel }) }))] }))] })] }), feedbackMessages.map((feedbackItem, index) => (jsx("p", { className: "cw-input-info", "data-color": feedbackItem.type, children: feedbackItem.message }, index)))] }));
4302
+ return (jsx("div", { ref: containerRef, className: `cw-datepicker ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, placeholder: placeholder, onChange: handleInputChange, onBlur: handleInputBlur, onClick: handleInputClick, onKeyDown: handleInputKeyDown, disabled: disabled, required: required }), jsx("div", { className: styles$4.pickerIcons, children: showClear && value && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onClick: handleClear, tabIndex: -1, "aria-label": "Clear date" })) : (jsx(CwIcon, { iconId: "calendar" })) }), isOpen && (jsxs("div", { className: styles$4.pickerPopup, "data-position": popupPosition, children: [jsx(DayPicker, { mode: "single", selected: value || undefined, defaultMonth: defaultMonth || value || undefined, onSelect: handleDaySelect, disabled: disabledDays, numberOfMonths: numberOfMonths, modifiers: {
4303
+ today: new Date(),
4304
+ }, modifiersClassNames: {
4305
+ today: "rdp-day-today",
4306
+ } }), showTodayButton && (jsx("footer", { className: "cw-flex-row cw-align-right-center", children: jsx(CwButton, { type: "button", variant: "outline", onClick: handleTodayClick, text: "Today" }) }))] }))] })] }) }));
5704
4307
  }
5705
4308
 
5706
- var rangeStyles = {"rangeWrapper":"cw-range-picker-module__rangeWrapper__1nIVs","rangePopup":"cw-range-picker-module__rangePopup__E5jd1","presetList":"cw-range-picker-module__presetList__INiLo"};
4309
+ var rangeStyles = {"rangeWrapper":"cw-range-picker-module_rangeWrapper__1nIVs","rangePopup":"cw-range-picker-module_rangePopup__E5jd1","presetList":"cw-range-picker-module_presetList__INiLo"};
5707
4310
 
5708
4311
  const PRESET_LIBRARY = {
5709
4312
  // === PAST DAYS ===
@@ -5980,20 +4583,9 @@ function CwDateRangePicker({ value, onChange, minDate, maxDate, disabledDates, d
5980
4583
  const [inputToValue, setInputToValue] = useState("");
5981
4584
  const [focusedInput, setFocusedInput] = useState();
5982
4585
  const containerRef = useRef(null);
5983
- const wrapperRef = useRef(null);
5984
4586
  const inputFromRef = useRef(null);
5985
4587
  const inputToRef = useRef(null);
5986
4588
  const prevValueRef = useRef(undefined);
5987
- const handleClose = useCallback(() => {
5988
- setIsOpen(false);
5989
- setFocusedInput(undefined);
5990
- }, []);
5991
- const { popupRef, popupStyle, renderPopup } = usePickerPopup({
5992
- anchorRef: wrapperRef,
5993
- isOpen,
5994
- onClose: handleClose,
5995
- position: popupPosition,
5996
- });
5997
4589
  // Calculate presets to render
5998
4590
  const presetsToRender = useMemo(() => {
5999
4591
  let presets = [];
@@ -6102,8 +4694,23 @@ function CwDateRangePicker({ value, onChange, minDate, maxDate, disabledDates, d
6102
4694
  }
6103
4695
  }
6104
4696
  }, [value, displayFormat]);
6105
- const handleRangeSelect = useCallback((range, // El rango sugerido por react-day-picker
6106
- selectedDay) => {
4697
+ // Close calendar when clicking outside
4698
+ useEffect(() => {
4699
+ const handleClickOutside = (event) => {
4700
+ if (containerRef.current && !containerRef.current.contains(event.target)) {
4701
+ setIsOpen(false);
4702
+ setFocusedInput(undefined);
4703
+ }
4704
+ };
4705
+ if (isOpen) {
4706
+ document.addEventListener("mousedown", handleClickOutside);
4707
+ }
4708
+ return () => {
4709
+ document.removeEventListener("mousedown", handleClickOutside);
4710
+ };
4711
+ }, [isOpen]);
4712
+ const handleRangeSelect = useCallback((range, // El rango sugerido por react-day-picker
4713
+ selectedDay) => {
6107
4714
  let newRange;
6108
4715
  if (focusedInput === 'from') {
6109
4716
  newRange = { from: selectedDay, to: value?.to };
@@ -6322,14 +4929,14 @@ function CwDateRangePicker({ value, onChange, minDate, maxDate, disabledDates, d
6322
4929
  }
6323
4930
  return undefined;
6324
4931
  }, [value]);
6325
- return (jsx("div", { ref: containerRef, className: `cw-rangepicker ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { ref: wrapperRef, className: rangeStyles.rangeWrapper, children: [jsxs("div", { className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputFromRef, type: "text", value: inputFromValue, placeholder: placeholderFrom, onChange: handleInputFromChange, onBlur: () => handleInputBlur('from'), onClick: handleInputFromClick, onKeyDown: (e) => handleInputKeyDown(e, 'from'), disabled: disabled, required: required, "data-focused": focusedInput === 'from' }), jsx("div", { className: styles$4.pickerIcons, children: showClear && value?.from && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onClick: handleClearFrom, tabIndex: -1, "aria-label": "Clear from date" })) : (jsx(CwIcon, { iconId: "calendar" })) })] }), jsx(CwIcon, { iconId: "arrow-right", size: "medium" }), jsxs("div", { className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputToRef, type: "text", value: inputToValue, placeholder: placeholderTo, onChange: handleInputToChange, onBlur: () => handleInputBlur('to'), onClick: handleInputToClick, onKeyDown: (e) => handleInputKeyDown(e, 'to'), disabled: disabled, required: required, "data-focused": focusedInput === 'to' }), jsx("div", { className: styles$4.pickerIcons, children: showClear && value?.to && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onClick: handleClearTo, tabIndex: -1, "aria-label": "Clear to date" })) : (jsx(CwIcon, { iconId: "calendar" })) })] }), renderPopup(jsxs("div", { ref: popupRef, className: `${styles$4.pickerPopup} ${rangeStyles.rangePopup}`, style: popupStyle, children: [showPresets && presetsToRender.length > 0 && (jsx("div", { className: rangeStyles.presetList, children: presetsToRender.map((preset) => (jsx("button", { type: "button", onClick: (e) => handlePresetClick(preset, e), children: preset.label }, preset.key))) })), jsx(DayPicker, { mode: "range", selected: selectedRange, onSelect: handleRangeSelect, disabled: disabledDays, numberOfMonths: numberOfMonths, defaultMonth: defaultMonth || value?.from || undefined, modifiers: {
4932
+ return (jsx("div", { ref: containerRef, className: `cw-rangepicker ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: rangeStyles.rangeWrapper, children: [jsxs("div", { className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputFromRef, type: "text", value: inputFromValue, placeholder: placeholderFrom, onChange: handleInputFromChange, onBlur: () => handleInputBlur('from'), onClick: handleInputFromClick, onKeyDown: (e) => handleInputKeyDown(e, 'from'), disabled: disabled, required: required, "data-focused": focusedInput === 'from' }), jsx("div", { className: styles$4.pickerIcons, children: showClear && value?.from && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onClick: handleClearFrom, tabIndex: -1, "aria-label": "Clear from date" })) : (jsx(CwIcon, { iconId: "calendar" })) })] }), jsx(CwIcon, { iconId: "arrow-right", size: "medium" }), jsxs("div", { className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputToRef, type: "text", value: inputToValue, placeholder: placeholderTo, onChange: handleInputToChange, onBlur: () => handleInputBlur('to'), onClick: handleInputToClick, onKeyDown: (e) => handleInputKeyDown(e, 'to'), disabled: disabled, required: required, "data-focused": focusedInput === 'to' }), jsx("div", { className: styles$4.pickerIcons, children: showClear && value?.to && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onClick: handleClearTo, tabIndex: -1, "aria-label": "Clear to date" })) : (jsx(CwIcon, { iconId: "calendar" })) })] }), isOpen && (jsxs("div", { className: `${styles$4.pickerPopup} ${rangeStyles.rangePopup}`, "data-position": popupPosition, children: [showPresets && presetsToRender.length > 0 && (jsx("div", { className: rangeStyles.presetList, children: presetsToRender.map((preset) => (jsx("button", { type: "button", onClick: (e) => handlePresetClick(preset, e), children: preset.label }, preset.key))) })), jsx(DayPicker, { mode: "range", selected: selectedRange, onSelect: handleRangeSelect, disabled: disabledDays, numberOfMonths: numberOfMonths, defaultMonth: defaultMonth || value?.from || undefined, modifiers: {
6326
4933
  today: new Date(),
6327
4934
  }, modifiersClassNames: {
6328
4935
  today: "rdp-day-today",
6329
4936
  } })] }))] })] }) }));
6330
4937
  }
6331
4938
 
6332
- var timeStyles = {"timePickerPopup":"cw-time-picker-module__timePickerPopup__BN63t","timePickerList":"cw-time-picker-module__timePickerList__E88pr","selected":"cw-time-picker-module__selected__qVnfL","hasIcons":"cw-time-picker-module__hasIcons__ZiGUf","notIcons":"cw-time-picker-module__notIcons__3icu1"};
4939
+ var timeStyles = {"timePickerPopup":"cw-time-picker-module_timePickerPopup__BN63t","timePickerList":"cw-time-picker-module_timePickerList__E88pr","selected":"cw-time-picker-module_selected__qVnfL","hasIcons":"cw-time-picker-module_hasIcons__ZiGUf","notIcons":"cw-time-picker-module_notIcons__3icu1"};
6333
4940
 
6334
4941
  const isMobileDevice = () => {
6335
4942
  return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
@@ -6338,16 +4945,8 @@ function CwTimePicker({ value, onChange, interval = 15, minTime, maxTime, labelP
6338
4945
  const [isOpen, setIsOpen] = useState(false);
6339
4946
  const [inputValue, setInputValue] = useState("");
6340
4947
  const containerRef = useRef(null);
6341
- const wrapperRef = useRef(null);
6342
4948
  const inputRef = useRef(null);
6343
4949
  const selectedItemRef = useRef(null);
6344
- const handleClose = useCallback(() => setIsOpen(false), []);
6345
- const { popupRef, popupStyle, renderPopup } = usePickerPopup({
6346
- anchorRef: wrapperRef,
6347
- isOpen,
6348
- onClose: handleClose,
6349
- position: popupPosition,
6350
- });
6351
4950
  // Sync input value with prop value
6352
4951
  useEffect(() => {
6353
4952
  if (value) {
@@ -6375,6 +4974,20 @@ function CwTimePicker({ value, onChange, interval = 15, minTime, maxTime, labelP
6375
4974
  return options;
6376
4975
  };
6377
4976
  const timeOptions = generateTimeOptions();
4977
+ // Close dropdown when clicking outside
4978
+ useEffect(() => {
4979
+ const handleClickOutside = (event) => {
4980
+ if (containerRef.current && !containerRef.current.contains(event.target)) {
4981
+ setIsOpen(false);
4982
+ }
4983
+ };
4984
+ if (isOpen) {
4985
+ document.addEventListener("mousedown", handleClickOutside);
4986
+ }
4987
+ return () => {
4988
+ document.removeEventListener("mousedown", handleClickOutside);
4989
+ };
4990
+ }, [isOpen]);
6378
4991
  // Scroll to selected time when opening dropdown
6379
4992
  useEffect(() => {
6380
4993
  if (isOpen && selectedItemRef.current) {
@@ -6485,70 +5098,13 @@ function CwTimePicker({ value, onChange, interval = 15, minTime, maxTime, labelP
6485
5098
  return (jsx("div", { className: `cw-timepicker cw-timepicker-native ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsx("div", { className: styles$4.pickerWrapper, children: jsx("input", { type: "time", value: displayValue, onChange: handleNativeChange, min: minTime, max: maxTime, step: interval * 60, disabled: disabled, required: required, placeholder: placeholder, className: "cw-timepicker-native" }) })] }) }));
6486
5099
  }
6487
5100
  // Custom time picker
6488
- return (jsx("div", { ref: containerRef, className: `cw-timepicker ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { ref: wrapperRef, className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, placeholder: placeholder, onChange: handleInputChange, onBlur: handleInputBlur, onClick: handleInputClick, onKeyDown: handleInputKeyDown, disabled: disabled, required: required, maxLength: 5, className: showClear ? timeStyles.hasIcons : timeStyles.notIcons }), showClear && (jsx("div", { className: styles$4.pickerIcons, children: value && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", icon: "close", color: "neutral", onClick: handleClear, tabIndex: -1, "aria-label": "Clear time" })) : (jsx(CwIcon, { iconId: "clock" })) })), renderPopup(jsx("div", { ref: popupRef, className: `${styles$4.pickerPopup} ${timeStyles.timePickerPopup}`, style: popupStyle, children: jsx("div", { className: timeStyles.timePickerList, children: timeOptions.map((time) => {
5101
+ return (jsx("div", { ref: containerRef, className: `cw-timepicker ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, placeholder: placeholder, onChange: handleInputChange, onBlur: handleInputBlur, onClick: handleInputClick, onKeyDown: handleInputKeyDown, disabled: disabled, required: required, maxLength: 5, className: showClear ? timeStyles.hasIcons : timeStyles.notIcons }), showClear && (jsx("div", { className: styles$4.pickerIcons, children: value && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", icon: "close", color: "neutral", onClick: handleClear, tabIndex: -1, "aria-label": "Clear time" })) : (jsx(CwIcon, { iconId: "clock" })) })), isOpen && (jsx("div", { className: `${styles$4.pickerPopup} ${timeStyles.timePickerPopup}`, "data-position": popupPosition, children: jsx("div", { className: timeStyles.timePickerList, children: timeOptions.map((time) => {
6489
5102
  const isSelected = time === value;
6490
5103
  return (jsx("button", { ref: isSelected ? selectedItemRef : null, type: "button", className: isSelected ? timeStyles.selected : "", onClick: () => handleTimeSelect(time), children: time }, time));
6491
5104
  }) }) }))] })] }) }));
6492
5105
  }
6493
5106
 
6494
- /**
6495
- * Converts a numeric offset in hours (e.g. 0, 1, -5, 5.5) to a
6496
- * Temporal-compatible offset string like "+00:00", "+01:00", "-05:00", "+05:30".
6497
- */
6498
- function offsetHoursToString(offset) {
6499
- const sign = offset >= 0 ? "+" : "-";
6500
- const abs = Math.abs(offset);
6501
- const hours = Math.floor(abs);
6502
- const minutes = Math.round((abs - hours) * 60);
6503
- return `${sign}${String(hours).padStart(2, "0")}:${String(minutes).padStart(2, "0")}`;
6504
- }
6505
- /**
6506
- * Converts a Date to a new Date whose local year/month/day
6507
- * reflect the date in the given UTC offset.
6508
- *
6509
- * This is necessary because date-fns format() and DayPicker
6510
- * always use the browser's local timezone. By "shifting" the date,
6511
- * we ensure the correct date displays regardless of browser timezone.
6512
- *
6513
- * @param date - The original Date object
6514
- * @param timezoneOffset - Numeric offset in hours (e.g., 0 for UTC, 1 for CET, -5 for EST, 5.5 for IST)
6515
- * @returns A new Date with local fields matching the target timezone's date
6516
- */
6517
- function getDateInOffset(date, timezoneOffset) {
6518
- const instant = Temporal.Instant.fromEpochMilliseconds(date.getTime());
6519
- const zdt = instant.toZonedDateTimeISO(offsetHoursToString(timezoneOffset));
6520
- return new Date(zdt.year, zdt.month - 1, zdt.day);
6521
- }
6522
- /**
6523
- * Gets the time string (HH:mm) for a Date in the given UTC offset.
6524
- *
6525
- * @param date - The original Date object
6526
- * @param timezoneOffset - Numeric offset in hours (e.g., 0 for UTC, 1 for CET, -5 for EST, 5.5 for IST)
6527
- * @returns Time string in "HH:mm" format for the given offset
6528
- */
6529
- function getTimeInOffset(date, timezoneOffset) {
6530
- const instant = Temporal.Instant.fromEpochMilliseconds(date.getTime());
6531
- const zdt = instant.toZonedDateTimeISO(offsetHoursToString(timezoneOffset));
6532
- return `${String(zdt.hour).padStart(2, "0")}:${String(zdt.minute).padStart(2, "0")}`;
6533
- }
6534
- /**
6535
- * Combines a display date (local fields) and time components into a real Date
6536
- * by interpreting them in the given UTC offset.
6537
- *
6538
- * @param date - Date whose local year/month/day are the "display" values
6539
- * @param hours - Hour component (0-23)
6540
- * @param minutes - Minute component (0-59)
6541
- * @param timezoneOffset - Numeric offset in hours
6542
- * @returns A Date representing the UTC instant of that date+time in the given offset
6543
- */
6544
- function combineDateTimeInOffset(date, hours, minutes, timezoneOffset) {
6545
- const offsetStr = offsetHoursToString(timezoneOffset);
6546
- const pdt = new Temporal.PlainDateTime(date.getFullYear(), date.getMonth() + 1, date.getDate(), hours, minutes);
6547
- const zdt = pdt.toZonedDateTime(offsetStr);
6548
- return new Date(zdt.epochMilliseconds);
6549
- }
6550
-
6551
- function CwDateTimePicker({ value, onChange, minDateTime, maxDateTime, disabledDates, disabledMatcher, timeInterval = 15, minTime, maxTime, labelProps, alignProps, datePlaceholder = "dd.MM.yyyy", timePlaceholder = "HH:mm", disabled, required, className, showClear = true, popupPosition = "left-bottom", numberOfMonths = 1, showNowButton = false, nowLabel = "Now", locale = enGB, timezoneOffset, }) {
5107
+ function CwDateTimePicker({ value, onChange, minDateTime, maxDateTime, disabledDates, disabledMatcher, timeInterval = 15, minTime, maxTime, labelProps, alignProps, datePlaceholder = "dd.MM.yyyy", timePlaceholder = "HH:mm", disabled, required, className, showClear = true, popupPosition = "left-bottom", numberOfMonths = 1, showNowButton = false, }) {
6552
5108
  // ========================================
6553
5109
  // PROPS NORMALIZATION
6554
5110
  // ========================================
@@ -6580,32 +5136,10 @@ function CwDateTimePicker({ value, onChange, minDateTime, maxDateTime, disabledD
6580
5136
  const normalizedMinDateTime = useMemo(() => normalizeDateTime(minDateTime, 'minDateTime'), [minDateTime, normalizeDateTime]);
6581
5137
  const normalizedMaxDateTime = useMemo(() => normalizeDateTime(maxDateTime, 'maxDateTime'), [maxDateTime, normalizeDateTime]);
6582
5138
  // ========================================
6583
- // HELPERS CON MOMENT
6584
- // ========================================
6585
- /**
6586
- * Convert a Date to a "display date" whose local year/month/day
6587
- * reflect the date in the target timezone offset.
6588
- * When timezoneOffset is undefined, returns the date as-is.
6589
- */
6590
- const toDisplayDate = useCallback((date) => {
6591
- return timezoneOffset !== undefined
6592
- ? getDateInOffset(date, timezoneOffset)
6593
- : date;
6594
- }, [timezoneOffset]);
6595
- /**
6596
- * Get the time string (HH:mm) for a Date, adjusted for timezone offset.
6597
- * When timezoneOffset is undefined, uses local time.
6598
- */
6599
- const toDisplayTime = useCallback((date) => {
6600
- return timezoneOffset !== undefined
6601
- ? getTimeInOffset(date, timezoneOffset)
6602
- : `${String(date.getHours()).padStart(2, '0')}:${String(date.getMinutes()).padStart(2, '0')}`;
6603
- }, [timezoneOffset]);
6604
- // ========================================
6605
5139
  // INTERNAL STATE
6606
5140
  // ========================================
6607
- const [selectedDate, setSelectedDate] = useState(value ? toDisplayDate(value) : undefined);
6608
- const [selectedTime, setSelectedTime] = useState(value ? toDisplayTime(value) : undefined);
5141
+ const [selectedDate, setSelectedDate] = useState(value);
5142
+ const [selectedTime, setSelectedTime] = useState(value ? `${value.getHours().toString().padStart(2, "0")}:${value.getMinutes().toString().padStart(2, "0")}` : undefined);
6609
5143
  // Track previous value to detect external changes
6610
5144
  const prevValueRef = useRef(undefined);
6611
5145
  // ========================================
@@ -6620,22 +5154,28 @@ function CwDateTimePicker({ value, onChange, minDateTime, maxDateTime, disabledD
6620
5154
  const combineDateTime = useCallback((date, time) => {
6621
5155
  if (!date)
6622
5156
  return undefined;
6623
- const [hours, minutes] = (time ?? "00:00").split(':').map(Number);
6624
- let combined;
6625
- if (timezoneOffset !== undefined) {
6626
- // Interpret the display date+time as belonging to the specified offset
6627
- combined = combineDateTimeInOffset(date, hours, minutes, timezoneOffset);
6628
- }
6629
- else {
6630
- combined = new Date(date.getFullYear(), date.getMonth(), date.getDate(), hours, minutes, 0, 0);
5157
+ // If no time is selected, use 00:00
5158
+ if (!time) {
5159
+ const combined = new Date(date);
5160
+ combined.setHours(0, 0, 0, 0);
5161
+ // Validate against min/max datetime
5162
+ if (normalizedMinDateTime && combined < normalizedMinDateTime)
5163
+ return undefined;
5164
+ if (normalizedMaxDateTime && combined > normalizedMaxDateTime)
5165
+ return undefined;
5166
+ return combined;
6631
5167
  }
5168
+ // Parse time and combine with date
5169
+ const [hours, minutes] = time.split(':').map(Number);
5170
+ const combined = new Date(date);
5171
+ combined.setHours(hours, minutes, 0, 0);
6632
5172
  // Validate against min/max datetime
6633
5173
  if (normalizedMinDateTime && combined < normalizedMinDateTime)
6634
5174
  return undefined;
6635
5175
  if (normalizedMaxDateTime && combined > normalizedMaxDateTime)
6636
5176
  return undefined;
6637
5177
  return combined;
6638
- }, [normalizedMinDateTime, normalizedMaxDateTime, timezoneOffset]);
5178
+ }, [normalizedMinDateTime, normalizedMaxDateTime]);
6639
5179
  /**
6640
5180
  * Calculate dynamic time restrictions based on selected date
6641
5181
  *
@@ -6649,39 +5189,33 @@ function CwDateTimePicker({ value, onChange, minDateTime, maxDateTime, disabledD
6649
5189
  const calculateTimeRestrictions = useCallback((selectedDate) => {
6650
5190
  if (!selectedDate)
6651
5191
  return { minTime, maxTime };
6652
- const isSameDay = (a, b) => a.getFullYear() === b.getFullYear() &&
6653
- a.getMonth() === b.getMonth() &&
6654
- a.getDate() === b.getDate();
6655
- const formatLocalTime = (d) => `${String(d.getHours()).padStart(2, "0")}:${String(d.getMinutes()).padStart(2, "0")}`;
5192
+ // Normalize selected date to date-only (ignore time component)
5193
+ const selectedDateOnly = new Date(selectedDate.getFullYear(), selectedDate.getMonth(), selectedDate.getDate());
6656
5194
  let calculatedMinTime = minTime;
6657
5195
  let calculatedMaxTime = maxTime;
6658
5196
  // If selected date matches minDateTime date, restrict minimum time
6659
5197
  if (normalizedMinDateTime) {
6660
- const minDisplay = timezoneOffset !== undefined
6661
- ? getDateInOffset(normalizedMinDateTime, timezoneOffset)
6662
- : normalizedMinDateTime;
6663
- if (isSameDay(selectedDate, minDisplay)) {
6664
- calculatedMinTime = timezoneOffset !== undefined
6665
- ? getTimeInOffset(normalizedMinDateTime, timezoneOffset)
6666
- : formatLocalTime(normalizedMinDateTime);
5198
+ const minDateOnly = new Date(normalizedMinDateTime.getFullYear(), normalizedMinDateTime.getMonth(), normalizedMinDateTime.getDate());
5199
+ if (selectedDateOnly.getTime() === minDateOnly.getTime()) {
5200
+ const hours = normalizedMinDateTime.getHours().toString().padStart(2, "0");
5201
+ const minutes = normalizedMinDateTime.getMinutes().toString().padStart(2, "0");
5202
+ calculatedMinTime = `${hours}:${minutes}`;
6667
5203
  }
6668
5204
  }
6669
5205
  // If selected date matches maxDateTime date, restrict maximum time
6670
5206
  if (normalizedMaxDateTime) {
6671
- const maxDisplay = timezoneOffset !== undefined
6672
- ? getDateInOffset(normalizedMaxDateTime, timezoneOffset)
6673
- : normalizedMaxDateTime;
6674
- if (isSameDay(selectedDate, maxDisplay)) {
6675
- calculatedMaxTime = timezoneOffset !== undefined
6676
- ? getTimeInOffset(normalizedMaxDateTime, timezoneOffset)
6677
- : formatLocalTime(normalizedMaxDateTime);
5207
+ const maxDateOnly = new Date(normalizedMaxDateTime.getFullYear(), normalizedMaxDateTime.getMonth(), normalizedMaxDateTime.getDate());
5208
+ if (selectedDateOnly.getTime() === maxDateOnly.getTime()) {
5209
+ const hours = normalizedMaxDateTime.getHours().toString().padStart(2, "0");
5210
+ const minutes = normalizedMaxDateTime.getMinutes().toString().padStart(2, "0");
5211
+ calculatedMaxTime = `${hours}:${minutes}`;
6678
5212
  }
6679
5213
  }
6680
5214
  return {
6681
5215
  minTime: calculatedMinTime,
6682
5216
  maxTime: calculatedMaxTime
6683
5217
  };
6684
- }, [normalizedMinDateTime, normalizedMaxDateTime, minTime, maxTime, timezoneOffset]);
5218
+ }, [normalizedMinDateTime, normalizedMaxDateTime, minTime, maxTime]);
6685
5219
  // Calculate current time restrictions based on selected date
6686
5220
  // Recalculates whenever selectedDate or the calculation function changes
6687
5221
  const timeRestrictions = useMemo(() => calculateTimeRestrictions(selectedDate), [selectedDate, calculateTimeRestrictions]);
@@ -6701,15 +5235,15 @@ function CwDateTimePicker({ value, onChange, minDateTime, maxDateTime, disabledD
6701
5235
  if (currentTime !== prevTime) {
6702
5236
  prevValueRef.current = value;
6703
5237
  if (value) {
6704
- setSelectedDate(toDisplayDate(value));
6705
- setSelectedTime(toDisplayTime(value));
5238
+ setSelectedDate(value);
5239
+ setSelectedTime(`${value.getHours().toString().padStart(2, "0")}:${value.getMinutes().toString().padStart(2, "0")}`);
6706
5240
  }
6707
5241
  else {
6708
5242
  setSelectedDate(undefined);
6709
5243
  setSelectedTime(undefined);
6710
5244
  }
6711
5245
  }
6712
- }, [value, toDisplayDate, toDisplayTime]);
5246
+ }, [value]);
6713
5247
  // ========================================
6714
5248
  // EVENT HANDLERS
6715
5249
  // ========================================
@@ -6778,38 +5312,26 @@ function CwDateTimePicker({ value, onChange, minDateTime, maxDateTime, disabledD
6778
5312
  onChange(now);
6779
5313
  }
6780
5314
  }, [normalizedMinDateTime, normalizedMaxDateTime, onChange]);
5315
+ // Extract min/max date from normalized datetime for DatePicker
5316
+ const minDate = normalizedMinDateTime;
5317
+ const maxDate = normalizedMaxDateTime;
6781
5318
  // ========================================
6782
5319
  // RENDER
6783
5320
  // ========================================
6784
- // Shift min/max dates for CwDatePicker display (it uses local timezone internally)
6785
- const displayMinDate = useMemo(() => normalizedMinDateTime && timezoneOffset !== undefined
6786
- ? getDateInOffset(normalizedMinDateTime, timezoneOffset)
6787
- : normalizedMinDateTime, [normalizedMinDateTime, timezoneOffset]);
6788
- const displayMaxDate = useMemo(() => normalizedMaxDateTime && timezoneOffset !== undefined
6789
- ? getDateInOffset(normalizedMaxDateTime, timezoneOffset)
6790
- : normalizedMaxDateTime, [normalizedMaxDateTime, timezoneOffset]);
6791
- return jsx("div", { className: `cw-datetimepicker cw-datetimepicker-separate ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: "cw-flex-row cw-align-left-center cw-gap-small", children: [jsx(CwDatePicker, { value: selectedDate, onChange: handleDateChange, minDate: displayMinDate, maxDate: displayMaxDate, disabledDates: disabledDates, disabledMatcher: disabledMatcher, placeholder: datePlaceholder, disabled: disabled, required: required, showClear: showClear, numberOfMonths: numberOfMonths, popupPosition: popupPosition, locale: locale }), jsx(CwTimePicker, { value: selectedTime, onChange: handleTimeChange, interval: timeInterval, minTime: timeRestrictions.minTime, maxTime: timeRestrictions.maxTime, placeholder: timePlaceholder, disabled: disabled, required: required, showClear: showClear, popupPosition: popupPosition }), showNowButton && (jsx(CwButton, { type: "button", variant: "outline", onClick: handleNowClick, disabled: disabled, text: nowLabel }))] })] }) });
5321
+ return (jsx("div", { className: `cw-datetimepicker cw-datetimepicker-separate ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: "cw-flex-row cw-align-left-center cw-gap-small", children: [jsx(CwDatePicker, { value: selectedDate, onChange: handleDateChange, minDate: minDate, maxDate: maxDate, disabledDates: disabledDates, disabledMatcher: disabledMatcher, placeholder: datePlaceholder, disabled: disabled, required: required, showClear: showClear, numberOfMonths: numberOfMonths, popupPosition: popupPosition }), jsx(CwTimePicker, { value: selectedTime, onChange: handleTimeChange, interval: timeInterval, minTime: timeRestrictions.minTime, maxTime: timeRestrictions.maxTime, placeholder: timePlaceholder, disabled: disabled, required: required, showClear: showClear, popupPosition: popupPosition }), showNowButton && (jsx(CwButton, { type: "button", variant: "outline", onClick: handleNowClick, disabled: disabled, title: "Set to current date and time", text: "Now" }))] })] }) }));
6792
5322
  }
6793
5323
 
6794
- var compactStyles = {"compactPopup":"cw-datetime-compact-module__compactPopup__GiuNY","calendarWrapper":"cw-datetime-compact-module__calendarWrapper__P4Nlq","timeWrapper":"cw-datetime-compact-module__timeWrapper__uMe-A","compactTimeList":"cw-datetime-compact-module__compactTimeList__MzSQT"};
5324
+ var compactStyles = {"compactPopup":"cw-datetime-compact-module_compactPopup__GiuNY","calendarWrapper":"cw-datetime-compact-module_calendarWrapper__P4Nlq","timeWrapper":"cw-datetime-compact-module_timeWrapper__uMe-A","compactTimeList":"cw-datetime-compact-module_compactTimeList__MzSQT"};
6795
5325
 
6796
- function CwDateTimePickerCompact({ value, onChange, minDateTime, maxDateTime, disabledDates, disabledMatcher, timeInterval = 15, minTime, maxTime, labelProps, alignProps, placeholder = "dd.mm.yyyy HH:mm", disabled, required, className, showClear = true, popupPosition = "left-bottom", numberOfMonths = 1, showTodayButton = false, nowLabel = "Now", timeLabel = "Time", locale = enGB, }) {
5326
+ function CwDateTimePickerCompact({ value, onChange, minDateTime, maxDateTime, disabledDates, disabledMatcher, timeInterval = 15, minTime, maxTime, labelProps, alignProps, placeholder = "dd.mm.yyyy HH:mm", disabled, required, className, showClear = true, popupPosition = "left-bottom", numberOfMonths = 1, showTodayButton = false, }) {
6797
5327
  const [isOpen, setIsOpen] = useState(false);
6798
5328
  const [inputValue, setInputValue] = useState("");
6799
5329
  const [selectedDate, setSelectedDate] = useState(value);
6800
5330
  const [selectedTime, setSelectedTime] = useState("");
6801
5331
  const containerRef = useRef(null);
6802
- const wrapperRef = useRef(null);
6803
5332
  const inputRef = useRef(null);
6804
5333
  const timeListRef = useRef(null);
6805
5334
  const prevValueRef = useRef(value);
6806
- const handleClose = useCallback(() => setIsOpen(false), []);
6807
- const { popupRef, popupStyle, renderPopup } = usePickerPopup({
6808
- anchorRef: wrapperRef,
6809
- isOpen,
6810
- onClose: handleClose,
6811
- position: popupPosition,
6812
- });
6813
5335
  // Generate time options based on interval - memoized
6814
5336
  const timeOptions = useMemo(() => {
6815
5337
  const options = [];
@@ -6902,6 +5424,20 @@ function CwDateTimePickerCompact({ value, onChange, minDateTime, maxDateTime, di
6902
5424
  }
6903
5425
  }
6904
5426
  }, [value]);
5427
+ // Close popup when clicking outside
5428
+ useEffect(() => {
5429
+ const handleClickOutside = (event) => {
5430
+ if (containerRef.current && !containerRef.current.contains(event.target)) {
5431
+ setIsOpen(false);
5432
+ }
5433
+ };
5434
+ if (isOpen) {
5435
+ document.addEventListener("mousedown", handleClickOutside);
5436
+ }
5437
+ return () => {
5438
+ document.removeEventListener("mousedown", handleClickOutside);
5439
+ };
5440
+ }, [isOpen]);
6905
5441
  // Scroll to selected time when opening
6906
5442
  useEffect(() => {
6907
5443
  if (isOpen && selectedTime && timeListRef.current) {
@@ -7024,11 +5560,11 @@ function CwDateTimePickerCompact({ value, onChange, minDateTime, maxDateTime, di
7024
5560
  ...(maxDateTime ? [{ after: maxDateTime }] : []),
7025
5561
  ...(disabledMatcher ? [disabledMatcher] : []),
7026
5562
  ], [disabledDates, minDateTime, maxDateTime, disabledMatcher]);
7027
- return (jsx("div", { ref: containerRef, className: `cw-datetimepicker ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { ref: wrapperRef, className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, placeholder: placeholder, onChange: handleInputChange, onBlur: handleInputBlur, onClick: handleInputClick, onKeyDown: handleInputKeyDown, disabled: disabled, required: required, maxLength: 16 }), jsx("div", { className: styles$4.pickerIcons, children: showClear && value && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onClick: handleClear, tabIndex: -1, "aria-label": "Clear datetime" })) : (jsx(CwIcon, { iconId: "calendar-time" })) }), renderPopup(jsxs("div", { ref: popupRef, className: `${styles$4.pickerPopup} ${compactStyles.compactPopup}`, style: popupStyle, children: [jsxs("div", { className: compactStyles.calendarWrapper, children: [jsx(DayPicker, { mode: "single", selected: selectedDate, onSelect: handleDaySelect, defaultMonth: selectedDate, disabled: disabledDays, numberOfMonths: numberOfMonths, locale: locale, modifiers: {
5563
+ return (jsx("div", { ref: containerRef, className: `cw-datetimepicker ${className || ""}`, children: jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: styles$4.pickerWrapper, children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, placeholder: placeholder, onChange: handleInputChange, onBlur: handleInputBlur, onClick: handleInputClick, onKeyDown: handleInputKeyDown, disabled: disabled, required: required, maxLength: 16, style: { width: "24ch" } }), jsx("div", { className: styles$4.pickerIcons, children: showClear && value && !disabled ? (jsx(CwButton, { type: "button", variant: "icon", color: "neutral", icon: "close", onClick: handleClear, tabIndex: -1, "aria-label": "Clear datetime" })) : (jsx(CwIcon, { iconId: "calendar-time" })) }), isOpen && (jsxs("div", { className: `${styles$4.pickerPopup} ${compactStyles.compactPopup}`, "data-position": popupPosition, children: [jsxs("div", { className: compactStyles.calendarWrapper, children: [jsx(DayPicker, { mode: "single", selected: selectedDate, onSelect: handleDaySelect, defaultMonth: selectedDate, disabled: disabledDays, numberOfMonths: numberOfMonths, modifiers: {
7028
5564
  today: new Date(),
7029
5565
  }, modifiersClassNames: {
7030
5566
  today: "rdp-day-today",
7031
- } }), showTodayButton && (jsx("footer", { className: "cw-flex-row cw-align-center-center", children: jsx(CwButton, { type: "button", variant: "outline", icon: "check-big", onClick: handleNowClick, text: nowLabel }) }))] }), jsxs("div", { className: compactStyles.timeWrapper, children: [jsxs("header", { children: [jsx(CwIcon, { iconId: "clock", size: "medium" }), jsx("span", { children: timeLabel })] }), jsx("div", { ref: timeListRef, className: `${timeStyles.timePickerList} ${compactStyles.compactTimeList}`, children: timeOptions.map((time) => {
5567
+ } }), showTodayButton && (jsx("footer", { className: "cw-flex-row cw-align-center-center", children: jsx(CwButton, { type: "button", variant: "outline", icon: "check-big", onClick: handleNowClick, text: "Now" }) }))] }), jsxs("div", { className: compactStyles.timeWrapper, children: [jsxs("header", { children: [jsx(CwIcon, { iconId: "clock", size: "medium" }), jsx("span", { children: "Time" })] }), jsx("div", { ref: timeListRef, className: `${timeStyles.timePickerList} ${compactStyles.compactTimeList}`, children: timeOptions.map((time) => {
7032
5568
  const isSelected = time === selectedTime;
7033
5569
  return (jsx("button", { type: "button", className: isSelected ? timeStyles.selected : "", onClick: () => handleTimeSelect(time), children: time }, time));
7034
5570
  }) })] })] }))] })] }) }));
@@ -7350,7 +5886,7 @@ crewAssignmentSchedulerContextMenu, }) => {
7350
5886
  };
7351
5887
 
7352
5888
  const TimeLine$1 = ({ id, toolTipTitle, marginLeft, color = "rgba(255,0,0,.6)", pixels = 2, height = "100%", zIndex = 1, }) => {
7353
- return (jsx(CwGenericTooltip, { content: toolTipTitle, position: "top", children: jsx("div", { id: id, style: {
5889
+ return (jsx(Tooltip, { title: toolTipTitle, children: jsx("div", { id: id, style: {
7354
5890
  borderLeft: `${pixels}px solid ${color}`,
7355
5891
  marginLeft: marginLeft,
7356
5892
  width: "0px",
@@ -7365,10 +5901,7 @@ const SchedulerContentArea = ({ now, showTimeline, timeLineLeftPx, timeSeparator
7365
5901
  if (reference) {
7366
5902
  setContentArea(reference);
7367
5903
  }
7368
- }, children: [showTimeline && (jsx(TimeLine$1, { id: scheduler.props.id + "_timeline", marginLeft: timeLineLeftPx, zIndex: 8, toolTipTitle: Temporal.PlainTime.from({
7369
- hour: now.getHours(),
7370
- minute: now.getMinutes(),
7371
- }).toString({ smallestUnit: "minute" }) })), timeSeparatorLeftPx.map((pixels) => {
5904
+ }, children: [showTimeline && (jsx(TimeLine$1, { id: scheduler.props.id + "_timeline", marginLeft: timeLineLeftPx, zIndex: 8, toolTipTitle: moment(now).format("HH:mm") })), timeSeparatorLeftPx.map((pixels) => {
7372
5905
  return jsx(TimeLine$1, { marginLeft: pixels, color: "rgba(255,255,255,0.7)" });
7373
5906
  }), jsx("span", { onClick: () => {
7374
5907
  if (onEmptyClick) {
@@ -7582,11 +6115,6 @@ const DaysHeader = ({ days, divisionType, maxWidth, headerType }) => {
7582
6115
  return jsx("tr", { className: "cwelltSchRowDate", children: headerToDraw });
7583
6116
  };
7584
6117
 
7585
- function formatHHmm(date) {
7586
- const timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
7587
- const zdt = Temporal.Instant.fromEpochMilliseconds(date.getTime()).toZonedDateTimeISO(timeZone);
7588
- return `${zdt.hour.toString().padStart(2, "0")}:${zdt.minute.toString().padStart(2, "0")}`;
7589
- }
7590
6118
  const getFormattedTimeForHeader = (calculatedDivType, calculatedDivision, timeHeader) => {
7591
6119
  let showDate = "";
7592
6120
  switch (calculatedDivType) {
@@ -7602,18 +6130,18 @@ const getFormattedTimeForHeader = (calculatedDivType, calculatedDivision, timeHe
7602
6130
  timeHeader.getHours() === 15 ||
7603
6131
  timeHeader.getHours() === 18 ||
7604
6132
  timeHeader.getHours() === 21
7605
- ? formatHHmm(timeHeader)
6133
+ ? moment(timeHeader).format("HH:mm")
7606
6134
  : "";
7607
6135
  break;
7608
6136
  case 3:
7609
6137
  showDate =
7610
6138
  timeHeader.getHours() === 0 || timeHeader.getHours() === 8 || timeHeader.getHours() === 16
7611
- ? formatHHmm(timeHeader)
6139
+ ? moment(timeHeader).format("HH:mm")
7612
6140
  : "";
7613
6141
  break;
7614
6142
  case 2:
7615
6143
  showDate =
7616
- timeHeader.getHours() === 0 || timeHeader.getHours() === 12 ? formatHHmm(timeHeader) : "";
6144
+ timeHeader.getHours() === 0 || timeHeader.getHours() === 12 ? moment(timeHeader).format("HH:mm") : "";
7617
6145
  break;
7618
6146
  }
7619
6147
  break;
@@ -7765,7 +6293,8 @@ const compareStrings = (str1, str2) => {
7765
6293
  const filterResources = (module, resourceName, resources, groupByFunction, endDate, startDate, scheduleName) => {
7766
6294
  if ((module === "CrewControl" || module === "CrewScheduling" || module === "CrewSchedulingVacations") &&
7767
6295
  resourceName === "Employees") {
7768
- resources = resources.filter(c => (c.data.Eintritt === null || (new Date(c.data.Eintritt) <= endDate)) && (c.data.Austritt === null || (new Date(c.data.Austritt) >= startDate)));
6296
+ resources = resources.filter(c => (c.data.Eintritt === null || (c.data.Eintritt !== null && moment(c.data.Eintritt).toDate() <= endDate)) &&
6297
+ (c.data.Austritt === null || (c.data.Austritt !== null && moment(c.data.Austritt).toDate() >= startDate)));
7769
6298
  }
7770
6299
  if (scheduleName === "crewPinnedScheduler" || (module === "CrewControl" || module === "CrewScheduling") && resourceName === "Employees") {
7771
6300
  const sortKey = (groupByFunction || scheduleName === "crewPinnedScheduler") ? "mainFunction" : "C3_LC";
@@ -7959,8 +6488,8 @@ class CwScheduler extends Component {
7959
6488
  arraysEqual = (a1, a2) => a1.length === a2.length && a1.every((o, idx) => this.objectsEqualDeep(o, a2[idx]));
7960
6489
  componentWillReceiveProps(_nextProps) {
7961
6490
  if (this.state.showConsoleLogs) {
7962
- console.log("Schedule - componentWillReceiveProps, start: ", new Date());
7963
- console.log("Schedule - componentWillReceiveProps - has changes, start: ", new Date());
6491
+ console.log("Schedule - componentWillReceiveProps, start: ", moment(new Date()).toString());
6492
+ console.log("Schedule - componentWillReceiveProps - has changes, start: ", moment(new Date()).toString());
7964
6493
  }
7965
6494
  const dateChange = _nextProps.startDate.toISOString() !== this.props.startDate.toISOString() ||
7966
6495
  _nextProps.endDate.toISOString() !== this.props.endDate.toISOString();
@@ -8001,8 +6530,8 @@ class CwScheduler extends Component {
8001
6530
  pinnedResources: this.props.pinnedResources ?? [],
8002
6531
  });
8003
6532
  if (this.state.showConsoleLogs) {
8004
- console.log("Schedule - componentWillReceiveProps - print on schedule, end: ", new Date());
8005
- console.log("Schedule - componentWillReceiveProps, end: ", new Date());
6533
+ console.log("Schedule - componentWillReceiveProps - print on schedule, end: ", moment(new Date()).toString());
6534
+ console.log("Schedule - componentWillReceiveProps, end: ", moment(new Date()).toString());
8006
6535
  }
8007
6536
  return;
8008
6537
  }
@@ -8095,11 +6624,10 @@ class CwScheduler extends Component {
8095
6624
  }
8096
6625
 
8097
6626
  function dateFromPercentage(startDate, visibleDays, percentage) {
8098
- const start = Temporal.Instant.fromEpochMilliseconds(startDate.getTime());
8099
- const spanMs = Math.round(visibleDays) * 24 * 60 * 60 * 1000;
8100
- const offsetMs = Math.round(spanMs * percentage);
8101
- const result = start.add({ milliseconds: offsetMs });
8102
- return new Date(result.epochMilliseconds);
6627
+ const endTime = moment(startDate).add(visibleDays, "day").toDate();
6628
+ const timeSpan = endTime.getTime() - startDate.getTime();
6629
+ const clickedDate = new Date(startDate.getTime() + (timeSpan * percentage));
6630
+ return clickedDate;
8103
6631
  }
8104
6632
 
8105
6633
  function getPercentageFromMouseEvent(event) {
@@ -8234,7 +6762,7 @@ class OnClickContextMenu {
8234
6762
  }
8235
6763
  }
8236
6764
 
8237
- var styles$3 = {"scheduler-header-divisions":"scheduler-header-module__scheduler-header-divisions__1JrNe","scheduler-timeline-now":"scheduler-header-module__scheduler-timeline-now__naREv","scheduler-timeline-label":"scheduler-header-module__scheduler-timeline-label__mLVAp","scheduler-header-title":"scheduler-header-module__scheduler-header-title__Jzy94","scheduler-dates":"scheduler-header-module__scheduler-dates__O7ePQ","current-day":"scheduler-header-module__current-day__FpHiv","scheduler-hours":"scheduler-header-module__scheduler-hours__ZDCVj"};
6765
+ var styles$3 = {"scheduler-header-divisions":"scheduler-header-module_scheduler-header-divisions__1JrNe","scheduler-timeline-now":"scheduler-header-module_scheduler-timeline-now__naREv","scheduler-timeline-label":"scheduler-header-module_scheduler-timeline-label__mLVAp","scheduler-header-title":"scheduler-header-module_scheduler-header-title__Jzy94","scheduler-dates":"scheduler-header-module_scheduler-dates__O7ePQ","current-day":"scheduler-header-module_current-day__FpHiv","scheduler-hours":"scheduler-header-module_scheduler-hours__ZDCVj"};
8238
6766
 
8239
6767
  const getNow$1 = (isUtc) => {
8240
6768
  let now = new Date();
@@ -8270,27 +6798,20 @@ const TimeLine = ({ left, top = "0px", height, color, width = "2px", zIndexNumbe
8270
6798
  }, className: styles$3["scheduler-timeline-label"], children: timeString })) }));
8271
6799
  };
8272
6800
 
8273
- function isToday(startDate, endDate) {
8274
- if (!startDate)
8275
- return false;
8276
- const timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
8277
- const today = Temporal.Now.plainDateISO();
8278
- const start = Temporal.Instant.fromEpochMilliseconds(startDate.getTime())
8279
- .toZonedDateTimeISO(timeZone).toPlainDate();
8280
- if (endDate) {
8281
- const end = Temporal.Instant.fromEpochMilliseconds(endDate.getTime())
8282
- .toZonedDateTimeISO(timeZone).toPlainDate();
8283
- return Temporal.PlainDate.compare(today, start) >= 0
8284
- && Temporal.PlainDate.compare(today, end) <= 0;
8285
- }
8286
- return today.equals(start);
8287
- }
8288
-
8289
6801
  const SchedulerHeaderDivision = ({ topDivisions, bottomDivisions, classification, topWidth, startDate, endDate }) => {
6802
+ const isToday = () => {
6803
+ if (!startDate)
6804
+ return false;
6805
+ const today = moment();
6806
+ if (endDate) {
6807
+ return today.isBetween(startDate, endDate, 'day', '[]');
6808
+ }
6809
+ return today.isSame(startDate, 'day');
6810
+ };
8290
6811
  return (jsxs("div", { style: {
8291
6812
  width: topWidth,
8292
6813
  cursor: "pointer"
8293
- }, children: [jsx("div", { className: `${styles$3["scheduler-dates"]} ${isToday(startDate, endDate) ? styles$3["current-day"] : ""}`, children: jsx("span", { children: topDivisions }) }), jsx("div", { style: { display: "flex", justifyContent: "space-between", flex: 1 }, children: bottomDivisions.map((element) => (jsx("div", { className: styles$3["scheduler-hours"], children: jsx("span", { children: element }) }, classification + element + topDivisions))) })] }));
6814
+ }, children: [jsx("div", { className: `${styles$3["scheduler-dates"]} ${isToday() ? styles$3["current-day"] : ""}`, children: jsx("span", { children: topDivisions }) }), jsx("div", { style: { display: "flex", justifyContent: "space-between", flex: 1 }, children: bottomDivisions.map((element) => (jsx("div", { className: styles$3["scheduler-hours"], children: jsx("span", { children: element }) }, classification + element + topDivisions))) })] }));
8294
6815
  };
8295
6816
 
8296
6817
  const HeaderTitle = ({ title, dividerText, width }) => {
@@ -8314,25 +6835,14 @@ const SchedulerHeader = ({ content, divisions, visibleDays, selectedDate, width,
8314
6835
  const thisTopWidth = visibleDays > 15
8315
6836
  ? topWidth * day.bottom.length
8316
6837
  : topWidth;
8317
- const { start, end } = getStartEnd(day);
8318
- return (jsx(SchedulerHeaderDivision, { topDivisions: day.top, bottomDivisions: day.bottom, classification: classification, topWidth: thisTopWidth + "%", startDate: start, endDate: end }, day.top + classification));
6838
+ const dateStr = day.startDate ? moment(day.startDate) : moment(day.top, "DD.MM.YYYY");
6839
+ const startDate = dateStr.toDate();
6840
+ const endDate = day.endDate ? moment(day.endDate).toDate() : undefined;
6841
+ return (jsx(SchedulerHeaderDivision, { topDivisions: day.top, bottomDivisions: day.bottom, classification: classification, topWidth: thisTopWidth + "%", startDate: startDate, endDate: endDate }, day.top + classification));
8319
6842
  }), !(timeLinePercentage < 0 || timeLinePercentage > 100) && (jsx(TimeLine, { color: "red", left: `${timeLinePercentage}%`, top: "50%", height: "50%", isHeader: true, isUtc: isUtc }))] })] }));
8320
6843
  };
8321
- function getStartEnd(day) {
8322
- const startDate = day.startDate
8323
- ? new Date(day.startDate)
8324
- : (() => {
8325
- const [dd, mm, yyyy] = day.top.split(".");
8326
- return new Date(Number(yyyy), Number(mm) - 1, Number(dd));
8327
- })();
8328
- const endDate = day.endDate ? new Date(day.endDate) : undefined;
8329
- return {
8330
- start: startDate,
8331
- end: endDate
8332
- };
8333
- }
8334
6844
 
8335
- var styles$2 = {"hide-scrollbar":"new-scheduler-module__hide-scrollbar__33GG9","scheduler-event":"new-scheduler-module__scheduler-event__gphwn","scheduler-event-container":"new-scheduler-module__scheduler-event-container__-h1xm","time-marker":"new-scheduler-module__time-marker__2BejU","scheduler-event-text":"new-scheduler-module__scheduler-event-text__zjvd7"};
6845
+ var styles$2 = {"hide-scrollbar":"new-scheduler-module_hide-scrollbar__33GG9","scheduler-event":"new-scheduler-module_scheduler-event__gphwn","scheduler-event-container":"new-scheduler-module_scheduler-event-container__-h1xm","time-marker":"new-scheduler-module_time-marker__2BejU","scheduler-event-text":"new-scheduler-module_scheduler-event-text__zjvd7"};
8336
6846
 
8337
6847
  const BackgroundEvent = ({ value, heightRem }) => {
8338
6848
  const backColor = getHSLColor(value.color, value.alpha ?? 0.5);
@@ -8358,7 +6868,7 @@ const BackgroundEvent = ({ value, heightRem }) => {
8358
6868
  fontSize: "var(--cw-font-size-smallest)",
8359
6869
  padding: "0.25rem",
8360
6870
  color: textColor,
8361
- alignItems: value.contentAlign ?? "center"
6871
+ alignItems: "flex-end"
8362
6872
  }, className: styles$2["scheduler-event-container"], children: [value.icons ? jsx("div", { style: {
8363
6873
  display: "flex",
8364
6874
  flexDirection: "row",
@@ -8368,147 +6878,44 @@ const BackgroundEvent = ({ value, heightRem }) => {
8368
6878
  }, children: value.icons }) : null, jsx("span", { className: styles$2["scheduler-event-text"], children: value.name })] }) }) }) }) })) : null;
8369
6879
  };
8370
6880
 
8371
- const eventIsVisible = (startDate, endDate, selectedDate, visibleDays) => {
8372
- const schedulerEndDate = new Date(selectedDate.getTime() + visibleDays * 24 * 60 * 60 * 1000);
8373
- const isBefore = selectedDate > startDate && selectedDate > endDate;
8374
- const isAfter = schedulerEndDate < startDate && schedulerEndDate < endDate;
8375
- return !isBefore && !isAfter;
8376
- };
8377
-
8378
- const hoursBetween = (date1, date2) => {
8379
- const oneHourInMillis = 60 * 60 * 1000; // hours*minutes*seconds*milliseconds
8380
- const timeDiff = date2.getTime() - date1.getTime();
8381
- return timeDiff / oneHourInMillis;
8382
- };
8383
- const getEventSizes = (schedulerDate, totalDays, startDate, endDate) => {
8384
- if (!eventIsVisible(startDate, endDate, schedulerDate, totalDays)) {
8385
- return {
8386
- left: 0,
8387
- width: 0,
8388
- };
8389
- }
8390
- const totalHours = totalDays * 24;
8391
- // const dateString = schedulerDate.toISOString().split('T')[0];
8392
- //const schedulerDateAtZero = new Date(dateString)
8393
- let startHours = hoursBetween(schedulerDate, startDate);
8394
- let durationHours = hoursBetween(startDate, endDate);
8395
- const startOutOfScheduler = startHours < 0;
8396
- if (startOutOfScheduler) {
8397
- durationHours += startHours;
8398
- startHours = 0;
8399
- }
8400
- const left = (startHours / totalHours) * 100;
8401
- // Minimum width equivalent to 15 minutes so zero/near-zero duration events stay visible
8402
- const MIN_WIDTH_HOURS = 0.25;
8403
- const minWidth = (MIN_WIDTH_HOURS * 100) / totalHours;
8404
- const width = Math.max((durationHours * 100) / totalHours, minWidth);
8405
- return {
8406
- left,
8407
- width,
8408
- };
8409
- };
6881
+ var styles$1 = {"scheduler-row-header":"scheduler-row-module_scheduler-row-header__S-iv4"};
8410
6882
 
8411
- const INDICATOR_HEIGHT_REM = 0.25;
8412
- const IndicatorRow = ({ indicators, selectedDate, visibleDays }) => {
8413
- return (jsx("div", { style: {
8414
- position: "relative",
8415
- height: `${INDICATOR_HEIGHT_REM}rem`,
8416
- pointerEvents: "none",
8417
- }, "data-name": "indicator-row", children: indicators.map((indicator) => {
8418
- const { left, width } = getEventSizes(selectedDate, visibleDays, indicator.start, indicator.end);
8419
- if (width <= 0)
8420
- return null;
8421
- const bar = (jsx("div", { style: {
8422
- position: "absolute",
8423
- left: `${left}%`,
8424
- width: `${width}%`,
8425
- height: `${INDICATOR_HEIGHT_REM}rem`,
8426
- backgroundColor: indicator.color,
8427
- borderRadius: "1px",
8428
- pointerEvents: "auto",
8429
- } }, indicator.id));
8430
- if (indicator.tooltip) {
8431
- return (jsx(CwTooltipNew, { content: indicator.tooltip, position: "bottom", dissapearsWhenHover: true, showDelay: 200, children: bar }, indicator.id));
8432
- }
8433
- return bar;
8434
- }) }));
6883
+ const DefaultRowHeader = ({ value, width, onEvent }) => {
6884
+ return (jsxs("div", { style: {
6885
+ width: width,
6886
+ // background: color,
6887
+ }, onClick: (_) => {
6888
+ onEvent(new OnClickRowHeader(value.rowId));
6889
+ }, className: styles$1["scheduler-row-header"], children: [jsxs("div", { children: [jsx("strong", { children: value.title }), value.title2 && jsxs("span", { children: ["-", value.title2] }), " ", jsx("strong", { children: value.subtitle })] }), value.subtitle && jsxs("div", { style: { opacity: 0.5 }, children: [value.title3 && jsxs("span", { className: styles$1["scheduler-crewmember-functions"], children: ["(", value.title3, ")"] }), value.subtitle2 && jsxs("span", { children: ["-", value.subtitle2] })] })] }));
8435
6890
  };
8436
6891
 
8437
- // Fires onClick on the first click of a sequence (detail === 1) and
8438
- // onDoubleClick on the native dblclick event. Subsequent clicks of a
8439
- // double-click sequence (detail > 1) are suppressed so the same logical
8440
- // interaction does not fire onClick twice. Selection therefore appears
8441
- // within one paint frame instead of being delayed by an artificial timer.
8442
6892
  function useSingleAndDoubleClicks(onClick, onDoubleClick) {
6893
+ const timer = useRef(null);
6894
+ const cancelPendingClick = useCallback(() => {
6895
+ if (timer.current) {
6896
+ clearTimeout(timer.current);
6897
+ timer.current = null;
6898
+ }
6899
+ }, [timer]);
8443
6900
  const handleClick = useCallback((e) => {
6901
+ // We only cache the most recent click event, so cancel any pending clicks
8444
6902
  e.stopPropagation();
8445
6903
  e.preventDefault();
8446
- if (e.detail > 1)
8447
- return;
8448
- onClick(e);
8449
- }, [onClick]);
6904
+ cancelPendingClick();
6905
+ timer.current = setTimeout(() => {
6906
+ timer.current = null;
6907
+ onClick(e);
6908
+ }, 500);
6909
+ }, [timer, cancelPendingClick, onClick]);
8450
6910
  const handleDoubleClick = useCallback((e) => {
8451
6911
  e.stopPropagation();
8452
6912
  e.preventDefault();
6913
+ cancelPendingClick();
8453
6914
  onDoubleClick(e);
8454
- }, [onDoubleClick]);
6915
+ }, [cancelPendingClick, onDoubleClick]);
8455
6916
  return { handleClick, handleDoubleClick };
8456
6917
  }
8457
6918
 
8458
- const eventsCollide = (event1, event2) => {
8459
- const eventInsideOther = event1.startDate <= event2.startDate && event1.endDate >= event2.endDate;
8460
- const eventCollideStart = event1.endDate > event2.startDate && event1.endDate < event2.endDate;
8461
- const eventCollideEnd = event2.endDate > event1.startDate && event2.endDate < event1.endDate;
8462
- return eventInsideOther || eventCollideStart || eventCollideEnd;
8463
- };
8464
- // Function to separate events into non-colliding rows
8465
- const separateEventsToInnerRows = (events) => {
8466
- const sortedEvents = [...events].sort((a, b) => {
8467
- const aOrder = a.order ?? Number.MAX_SAFE_INTEGER;
8468
- const bOrder = b.order ?? Number.MAX_SAFE_INTEGER;
8469
- if (aOrder !== bOrder) {
8470
- return aOrder - bOrder; // Prioridad al order si ambos están definidos
8471
- }
8472
- return a.startDate.getTime() - b.startDate.getTime();
8473
- });
8474
- const rows = [];
8475
- for (const event of sortedEvents) {
8476
- let placed = false;
8477
- for (const row of rows) {
8478
- if (!row.some((existingEvent) => eventsCollide(existingEvent, event))) {
8479
- row.push(event);
8480
- placed = true;
8481
- break;
8482
- }
8483
- }
8484
- if (!placed) {
8485
- rows.push([event]);
8486
- }
8487
- }
8488
- return rows;
8489
- };
8490
-
8491
- const DivisionLine = ({ left, top = "0px", height, isDayBoundary }) => {
8492
- const color = isDayBoundary ? "rgba(255,255,255,1)" : "rgba(255,255,255,0.8)";
8493
- const width = isDayBoundary ? "2px" : "1px";
8494
- return (jsx(TimeLine, { color: color, left: left + "%", height: height, width: width, top: top }));
8495
- };
8496
-
8497
- const WeekEndLine = ({ left, top = "0px", height, widthPercentage }) => {
8498
- return (jsx(TimeLine, { color: "rgba(0,0,0,0.05)", left: left + "%", height: height, width: widthPercentage + "%", top: top }));
8499
- };
8500
-
8501
- var styles$1 = {"scheduler-row-header":"scheduler-row-module__scheduler-row-header__S-iv4"};
8502
-
8503
- const DefaultRowHeader = ({ value, width, onEvent }) => {
8504
- return (jsxs("div", { style: {
8505
- width: width,
8506
- // background: color,
8507
- }, onClick: (_) => {
8508
- onEvent(new OnClickRowHeader(value.rowId));
8509
- }, className: styles$1["scheduler-row-header"], children: [jsxs("div", { children: [jsx("strong", { children: value.title }), value.title2 && jsxs("span", { children: ["-", value.title2] }), " ", jsx("strong", { children: value.subtitle })] }), value.subtitle && jsxs("div", { style: { opacity: 0.5 }, children: [value.title3 && jsxs("span", { className: styles$1["scheduler-crewmember-functions"], children: ["(", value.title3, ")"] }), value.subtitle2 && jsxs("span", { children: ["-", value.subtitle2] })] })] }));
8510
- };
8511
-
8512
6919
  const EventSideDrag = ({ left = false, heightRem, onStartEvent }) => {
8513
6920
  return (jsx("span", { draggable: true, onDragStart: (e) => {
8514
6921
  e.stopPropagation();
@@ -8520,13 +6927,9 @@ const EventSideDrag = ({ left = false, heightRem, onStartEvent }) => {
8520
6927
  } }));
8521
6928
  };
8522
6929
 
8523
- const MAX_EVENT_HEIGHT_REM = 1.5;
8524
6930
  const SchedulerEvent = ({ value, heightRem, onEvent }) => {
8525
6931
  const [isOnDrag, setIsOnDrag] = useState(false);
8526
6932
  const [isContextMenuOpen, setIsContextMenuOpen] = useState(false);
8527
- const effectiveHeight = Math.min(heightRem, MAX_EVENT_HEIGHT_REM);
8528
- const topOffsetRem = (heightRem - effectiveHeight) / 2;
8529
- const topOffsetPx = Math.round(topOffsetRem * 16) + 1;
8530
6933
  // Calculate colors of the event
8531
6934
  const backColor = getHSLColor(value.color, value.alpha ?? 1);
8532
6935
  const textColor = getContrastColor(value.color);
@@ -8562,10 +6965,9 @@ const SchedulerEvent = ({ value, heightRem, onEvent }) => {
8562
6965
  }, placement: "bottom", options: value.contextMenuItems ?? [], onSelect: (key) => {
8563
6966
  onEvent(new OnClickContextMenu(value.id, key));
8564
6967
  }, children: jsx("div", { style: {
8565
- top: `${topOffsetPx}px`,
6968
+ top: "2px",
8566
6969
  left: `${value.left}%`,
8567
6970
  width: `${value.width}%`,
8568
- minWidth: "5px",
8569
6971
  position: "absolute",
8570
6972
  zIndex: isOnDrag ? 999 : undefined,
8571
6973
  contentVisibility: "auto",
@@ -8582,21 +6984,19 @@ const SchedulerEvent = ({ value, heightRem, onEvent }) => {
8582
6984
  }, onDragEnd: (_) => {
8583
6985
  if (value.isDraggable)
8584
6986
  setIsOnDrag(false);
8585
- }, children: jsx(CwTooltipNew, { content: value.tooltip, position: "bottom", hide: isOnDrag, showDelay: 200, children: jsxs("div", { style: {
6987
+ }, children: jsx(CwGenericTooltip, { content: value.tooltip, position: "bottom", hide: isOnDrag, dissapearsWhenHover: true, showDelay: 200, children: jsxs("div", { style: {
8586
6988
  border: value.selected ? "2px solid black" : "none",
8587
6989
  backgroundColor: backColor,
8588
- height: `calc(${effectiveHeight}rem - 4px)`,
6990
+ height: `calc(${heightRem}rem - 4px)`,
8589
6991
  opacity: eventTransparent ? 0.5 : 1,
8590
6992
  }, className: styles$2["scheduler-event"], children: [jsxs("div", { style: {
8591
6993
  display: "flex",
8592
6994
  flexDirection: "row",
8593
6995
  alignItems: "stretch",
8594
6996
  width: "100%",
8595
- padding: "0 2px",
8596
6997
  cursor: value.isDraggable ? "pointer" : "default",
8597
- // height: `calc(${effectiveHeight}rem - 8px)`,
8598
- height: "100%",
8599
- }, children: [value.isResizable && (jsx(EventSideDrag, { left: true, heightRem: effectiveHeight * 0.7, onStartEvent: () => {
6998
+ height: `calc(${heightRem}rem - 10px)`,
6999
+ }, children: [value.isResizable && (jsx(EventSideDrag, { left: true, heightRem: heightRem * 0.7, onStartEvent: () => {
8600
7000
  onEvent(new OnLeftDragStart(value.id));
8601
7001
  } })), jsxs("div", { className: styles$2["scheduler-event-container"], children: [jsx("div", { style: {
8602
7002
  display: "flex",
@@ -8620,7 +7020,7 @@ const SchedulerEvent = ({ value, heightRem, onEvent }) => {
8620
7020
  height: "8px",
8621
7021
  margin: 0,
8622
7022
  padding: 0,
8623
- } }, value.id + "_" + i))) })) : (value.name) })] }), value.isResizable && (jsx(EventSideDrag, { heightRem: effectiveHeight * 0.7, onStartEvent: () => {
7023
+ } }, value.id + "_" + i))) })) : (value.name) })] }), value.isResizable && (jsx(EventSideDrag, { heightRem: heightRem * 0.7, onStartEvent: () => {
8624
7024
  onEvent(new OnRightDragStart(value.id));
8625
7025
  } }))] }), value.primaryTimeMarkerColor && (jsx("div", { className: styles$2["time-marker"], style: {
8626
7026
  backgroundColor: value.primaryTimeMarkerColor,
@@ -8629,9 +7029,50 @@ const SchedulerEvent = ({ value, heightRem, onEvent }) => {
8629
7029
  } }))] }) }) }, value.id) }));
8630
7030
  };
8631
7031
 
7032
+ const eventsCollide = (event1, event2) => {
7033
+ const eventInsideOther = event1.startDate <= event2.startDate && event1.endDate >= event2.endDate;
7034
+ const eventCollideStart = event1.endDate > event2.startDate && event1.endDate < event2.endDate;
7035
+ const eventCollideEnd = event2.endDate > event1.startDate && event2.endDate < event1.endDate;
7036
+ return eventInsideOther || eventCollideStart || eventCollideEnd;
7037
+ };
7038
+ // Function to separate events into non-colliding rows
7039
+ const separateEventsToInnerRows = (events) => {
7040
+ const sortedEvents = [...events].sort((a, b) => {
7041
+ const aOrder = a.order ?? Number.MAX_SAFE_INTEGER;
7042
+ const bOrder = b.order ?? Number.MAX_SAFE_INTEGER;
7043
+ if (aOrder !== bOrder) {
7044
+ return aOrder - bOrder; // Prioridad al order si ambos están definidos
7045
+ }
7046
+ return a.startDate.getTime() - b.startDate.getTime();
7047
+ });
7048
+ const rows = [];
7049
+ for (const event of sortedEvents) {
7050
+ let placed = false;
7051
+ for (const row of rows) {
7052
+ if (!row.some((existingEvent) => eventsCollide(existingEvent, event))) {
7053
+ row.push(event);
7054
+ placed = true;
7055
+ break;
7056
+ }
7057
+ }
7058
+ if (!placed) {
7059
+ rows.push([event]);
7060
+ }
7061
+ }
7062
+ return rows;
7063
+ };
7064
+
7065
+ const DivisionLine = ({ left, top = "0px", height }) => {
7066
+ return (jsx(TimeLine, { color: "rgba(255,255,255,1)", left: left + "%", height: height, width: 1 + "px", top: top }));
7067
+ };
7068
+
7069
+ const WeekEndLine = ({ left, top = "0px", height, widthPercentage }) => {
7070
+ return (jsx(TimeLine, { color: "rgba(0,0,0,0.05)", left: left + "%", height: height, width: widthPercentage + "%", top: top }));
7071
+ };
7072
+
8632
7073
  const SchedulerRow = memo((props) => {
8633
7074
  const [isContextMenuOpen, setIsContextMenuOpen] = useState(false);
8634
- const { events, backgroundEvents, indicatorRows, rowHeader, contextMenuItems, RowTitleComp, EventComp, BackgroundEventComp, weekendLines, divisionLines, timeLinePercentage, selectedDate, visibleDays, onEvent, } = props;
7075
+ const { events, backgroundEvents, rowHeader, contextMenuItems, RowTitleComp, EventComp, BackgroundEventComp, weekendLines, divisionLines, timeLinePercentage, selectedDate, visibleDays, onEvent, } = props;
8635
7076
  const internalRows = separateEventsToInnerRows(events);
8636
7077
  const schedulerDivRef = useRef(null);
8637
7078
  const { handleClick, handleDoubleClick } = useSingleAndDoubleClicks((e) => {
@@ -8675,7 +7116,7 @@ const SchedulerRow = memo((props) => {
8675
7116
  }
8676
7117
  }, onDragOver: (e) => {
8677
7118
  e.preventDefault();
8678
- }, onClick: handleClick, onDoubleClick: handleDoubleClick, children: [weekendLines.map((weekend) => (jsx(WeekEndLine, { height: "100%", left: weekend.left, widthPercentage: weekend.width }, weekend.left))), divisionLines.map((division) => (jsx(DivisionLine, { height: "100%", left: division.left, isDayBoundary: division.isDayBoundary }, division.left))), backgroundEvents.length > 0 && backgroundEvents.some((e) => e.isVisible) && (jsx("div", { style: {
7119
+ }, onClick: handleClick, onDoubleClick: handleDoubleClick, children: [weekendLines.map((weekend) => (jsx(WeekEndLine, { height: "100%", left: weekend.left, widthPercentage: weekend.width }, weekend.left))), divisionLines.map((division) => (jsx(DivisionLine, { height: "100%", left: division.left }, division.left))), backgroundEvents.length > 0 && backgroundEvents.some((e) => e.isVisible) && (jsx("div", { style: {
8679
7120
  height: "100%",
8680
7121
  position: internalRows.length > 0 ? "absolute" : "relative",
8681
7122
  width: "100%",
@@ -8688,7 +7129,7 @@ const SchedulerRow = memo((props) => {
8688
7129
  height: props.rowHeightInRem + "rem",
8689
7130
  pointerEvents: "none"
8690
7131
  }, children: internalRow.map((event) => (jsx(EventComp, { value: event, heightRem: props.rowHeightInRem, onEvent: onEvent }, event.id))) }, index));
8691
- }), indicatorRows.length > 0 && (jsx(IndicatorRow, { indicators: indicatorRows, selectedDate: selectedDate, visibleDays: visibleDays })), !(timeLinePercentage < 0 || timeLinePercentage > 100) && (jsx(TimeLine, { color: "red", left: `${timeLinePercentage}%`, top: "0px", height: `100%` }))] }) })] }));
7132
+ }), !(timeLinePercentage < 0 || timeLinePercentage > 100) && (jsx(TimeLine, { color: "red", left: `${timeLinePercentage}%`, top: "0px", height: `100%` }))] }) })] }));
8692
7133
  }, (prevProps, nextProps) => {
8693
7134
  // This memo is necessary to prevent re-render all the rows when a user makes drag and drop
8694
7135
  const getEventKey = (event) => {
@@ -8714,78 +7155,31 @@ const SchedulerRow = memo((props) => {
8714
7155
  return false;
8715
7156
  }
8716
7157
  }
8717
- if (prevProps.indicatorRows.length !== nextProps.indicatorRows.length) {
8718
- return false;
8719
- }
8720
7158
  // If we got here, the events are the same
8721
7159
  return true;
8722
7160
  });
8723
7161
 
8724
- const filterVisibleEvents = (events, selectedDate, visibleDays) => {
8725
- const lastDayOfScheduler = new Date(selectedDate.getTime() + visibleDays * 24 * 60 * 60 * 1000);
8726
- return events.filter((event) => event.endDate > selectedDate && event.startDate < lastDayOfScheduler);
8727
- };
8728
-
8729
- const DIVISION_RULES = [
8730
- { maxDays: 2, divisions: 24 },
8731
- { maxDays: 3, divisions: 12 },
8732
- { maxDays: 4, divisions: 8 },
8733
- { maxDays: 5, divisions: 6 },
8734
- { maxDays: 7, divisions: 3 },
8735
- ];
8736
- const DEFAULT_DIVISIONS = 2;
8737
7162
  const calculateDivisionsByDays = (days) => {
8738
- const rule = DIVISION_RULES.find((it) => days <= it.maxDays);
8739
- return rule?.divisions ?? DEFAULT_DIVISIONS;
7163
+ if (days <= 3) {
7164
+ return 8;
7165
+ }
7166
+ if (days <= 7) {
7167
+ return 3;
7168
+ }
7169
+ return 2;
8740
7170
  };
8741
- const getHoursFromDivisions = (divisions, useCompactHourFormat = false) => {
7171
+ const getHoursFromDivisions = (divisions) => {
8742
7172
  const hoursInterval = 24 / divisions;
8743
7173
  const array = [];
8744
7174
  for (let i = 0; i < divisions; i++) {
8745
- const totalMinutes = Math.round(hoursInterval * i * 60);
8746
- const hours = Math.floor(totalMinutes / 60);
8747
- const minutes = totalMinutes % 60;
8748
- const hh = hours.toString().padStart(2, "0");
8749
- const mm = minutes.toString().padStart(2, "0");
8750
- array.push(useCompactHourFormat ? `${hh}h` : `${hh}:${mm}`);
7175
+ const newHour = moment(new Date(1, 1, 1))
7176
+ .add(hoursInterval * i, "hours")
7177
+ .format("HH:mm");
7178
+ array.push(newHour);
8751
7179
  }
8752
7180
  return array;
8753
7181
  };
8754
7182
 
8755
- const timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
8756
- function toPlainDate(date) {
8757
- return Temporal.Instant.fromEpochMilliseconds(date.getTime())
8758
- .toZonedDateTimeISO(timeZone).toPlainDate();
8759
- }
8760
- function addDays(date, days) {
8761
- const result = new Date(date);
8762
- result.setDate(result.getDate() + days);
8763
- return result;
8764
- }
8765
- function formatDD_MM(date) {
8766
- const pd = toPlainDate(date);
8767
- return `${pd.day.toString().padStart(2, "0")}.${pd.month.toString().padStart(2, "0")}`;
8768
- }
8769
- function formatDD_MM_YYYY(date) {
8770
- const pd = toPlainDate(date);
8771
- return `${pd.day.toString().padStart(2, "0")}.${pd.month.toString().padStart(2, "0")}.${pd.year}`;
8772
- }
8773
- function formatMM_YYYY(date) {
8774
- const pd = toPlainDate(date);
8775
- return `${pd.month.toString().padStart(2, "0")}.${pd.year}`;
8776
- }
8777
- function getShortWeekday(date) {
8778
- return date.toLocaleDateString("en-US", { weekday: "short" });
8779
- }
8780
- function daysBetween(a, b) {
8781
- const aPlain = toPlainDate(a);
8782
- const bPlain = toPlainDate(b);
8783
- return Math.abs(aPlain.until(bPlain).days);
8784
- }
8785
- function daysInMonth(date) {
8786
- const pd = toPlainDate(date);
8787
- return pd.daysInMonth;
8788
- }
8789
7183
  const getDefaultDivisions = (visibleDays, selectedDate) => {
8790
7184
  if (visibleDays <= 15) {
8791
7185
  return getDayDivisions(visibleDays, selectedDate);
@@ -8798,19 +7192,15 @@ const getDefaultDivisions = (visibleDays, selectedDate) => {
8798
7192
  };
8799
7193
  const getDayDivisions = (visibleDays, selectedDate) => {
8800
7194
  const divisionsNumber = calculateDivisionsByDays(visibleDays);
8801
- const divisions = getHoursFromDivisions(divisionsNumber, visibleDays < 3);
7195
+ const divisions = getHoursFromDivisions(divisionsNumber);
8802
7196
  const calculatedDivision = [];
8803
7197
  for (let i = 0; i < visibleDays; i++) {
8804
- const currentDate = addDays(selectedDate, i);
8805
- const weekdayShort = getShortWeekday(currentDate);
8806
- const weekdayLabel = visibleDays < 8
8807
- ? weekdayShort
8808
- : weekdayShort.charAt(0).toUpperCase();
7198
+ const currentDate = moment(selectedDate).add(i, "days");
8809
7199
  calculatedDivision.push({
8810
- top: `${weekdayLabel} ${formatDD_MM(currentDate)}`,
7200
+ top: currentDate.format("DD.MM.YYYY"),
8811
7201
  bottom: divisions,
8812
- startDate: currentDate,
8813
- endDate: currentDate
7202
+ startDate: currentDate.toDate(),
7203
+ endDate: currentDate.toDate()
8814
7204
  });
8815
7205
  }
8816
7206
  return calculatedDivision;
@@ -8818,16 +7208,16 @@ const getDayDivisions = (visibleDays, selectedDate) => {
8818
7208
  const getWeekDivisions = (visibleDays, selectedDate) => {
8819
7209
  const weeks = getWeeksByDays(visibleDays, selectedDate);
8820
7210
  const divisions = weeks.map((week) => {
8821
- const days = Array.from({ length: week.days }, (_, i) => addDays(week.start, i).getDate().toString());
8822
- const weekEnd = addDays(week.start, week.days - 1);
7211
+ const days = Array.from({ length: week.days }, (_, i) => moment(week.start).add(i, "days").date().toString());
7212
+ const weekEnd = moment(week.start).add(week.days - 1, "days");
8823
7213
  const top = days.length > 2
8824
- ? formatDD_MM_YYYY(week.start) + " - " + formatDD_MM_YYYY(weekEnd)
8825
- : formatDD_MM_YYYY(week.start);
7214
+ ? moment(week.start).format("DD.MM.YYYY") + " - " + moment(week.start).add(week.days - 1, "days").format("DD.MM.YYYY")
7215
+ : moment(week.start).format("DD.MM.YYYY");
8826
7216
  const division = {
8827
7217
  top: top,
8828
7218
  bottom: days,
8829
- startDate: new Date(week.start),
8830
- endDate: weekEnd
7219
+ startDate: moment(week.start).toDate(),
7220
+ endDate: weekEnd.toDate()
8831
7221
  };
8832
7222
  return division;
8833
7223
  });
@@ -8836,13 +7226,13 @@ const getWeekDivisions = (visibleDays, selectedDate) => {
8836
7226
  const getMonthDivisions = (visibleDays, selectedDate) => {
8837
7227
  const months = getMonthsByDays(visibleDays, selectedDate);
8838
7228
  const divisions = months.map((month) => {
8839
- const days = Array.from({ length: month.days }, (_, i) => addDays(month.start, i).getDate().toString());
8840
- const monthEnd = addDays(month.start, month.days - 1);
7229
+ const days = Array.from({ length: month.days }, (_, i) => moment(month.start).add(i, "days").date().toString());
7230
+ const monthEnd = moment(month.start).add(month.days - 1, "days");
8841
7231
  const division = {
8842
- top: formatMM_YYYY(month.start),
7232
+ top: moment(month.start).format("MM.YYYY"),
8843
7233
  bottom: days,
8844
- startDate: new Date(month.start),
8845
- endDate: monthEnd
7234
+ startDate: moment(month.start).toDate(), // Añadir fecha de inicio
7235
+ endDate: monthEnd.toDate()
8846
7236
  };
8847
7237
  return division;
8848
7238
  });
@@ -8853,23 +7243,23 @@ const getMonthsByDays = (visibleDays, selectedDate) => {
8853
7243
  return [];
8854
7244
  }
8855
7245
  const month = [];
8856
- let rangeStart = new Date(selectedDate);
7246
+ let temporalDay = moment(selectedDate);
8857
7247
  for (let i = 0; i < visibleDays; i++) {
8858
- const currentDay = addDays(selectedDate, i);
7248
+ const currentDay = moment(selectedDate).add(i, "days");
8859
7249
  const isLastLoop = i + 1 === visibleDays;
8860
7250
  if (isLastLoop) {
8861
7251
  month.push({
8862
- start: rangeStart,
8863
- days: daysBetween(rangeStart, currentDay) + 1,
7252
+ start: temporalDay.toDate(),
7253
+ days: Math.abs(temporalDay.diff(currentDay, "days")) + 1,
8864
7254
  });
8865
7255
  break;
8866
7256
  }
8867
- if (currentDay.getDate() === daysInMonth(currentDay)) {
7257
+ if (currentDay.date() === currentDay.daysInMonth()) {
8868
7258
  month.push({
8869
- start: rangeStart,
8870
- days: daysBetween(rangeStart, currentDay) + 1,
7259
+ start: temporalDay.toDate(),
7260
+ days: Math.abs(temporalDay.diff(currentDay, "days")) + 1,
8871
7261
  });
8872
- rangeStart = addDays(currentDay, 1);
7262
+ temporalDay = currentDay.add(1, "days");
8873
7263
  }
8874
7264
  }
8875
7265
  return month;
@@ -8880,36 +7270,76 @@ const getWeeksByDays = (visibleDays, selectedDate) => {
8880
7270
  return [];
8881
7271
  }
8882
7272
  const weeks = [];
8883
- let rangeStart = new Date(selectedDate);
7273
+ let temporalDay = moment(selectedDate);
8884
7274
  for (let i = 0; i < visibleDays; i++) {
8885
- const currentDay = addDays(selectedDate, i);
7275
+ const currentDay = moment(selectedDate).add(i, "days");
8886
7276
  const isLastLoop = i + 1 === visibleDays;
8887
7277
  if (isLastLoop) {
8888
7278
  weeks.push({
8889
- start: rangeStart,
8890
- days: daysBetween(rangeStart, currentDay) + 1,
7279
+ start: temporalDay.toDate(),
7280
+ days: Math.abs(temporalDay.diff(currentDay, "days")) + 1,
8891
7281
  });
8892
7282
  break;
8893
7283
  }
8894
- if (currentDay.getDay() === SUNDAY) {
7284
+ if (currentDay.day() === SUNDAY) {
8895
7285
  weeks.push({
8896
- start: rangeStart,
8897
- days: daysBetween(rangeStart, currentDay) + 1,
7286
+ start: temporalDay.toDate(),
7287
+ days: Math.abs(temporalDay.diff(currentDay, "days")) + 1,
8898
7288
  });
8899
- rangeStart = addDays(currentDay, 1);
7289
+ temporalDay = currentDay.add(1, "days");
8900
7290
  }
8901
7291
  }
8902
7292
  return weeks;
8903
7293
  };
8904
7294
 
7295
+ const eventIsVisible = (startDate, endDate, selectedDate, visibleDays) => {
7296
+ const schedulerEnd = moment(selectedDate).add(visibleDays, "days").toDate();
7297
+ const isBefore = selectedDate > startDate && selectedDate > endDate;
7298
+ const isAfter = schedulerEnd < startDate && schedulerEnd < endDate;
7299
+ return !isBefore && !isAfter;
7300
+ };
7301
+
7302
+ const hoursBetween = (date1, date2) => {
7303
+ const oneHourInMillis = 60 * 60 * 1000; // hours*minutes*seconds*milliseconds
7304
+ const timeDiff = date2.getTime() - date1.getTime();
7305
+ return timeDiff / oneHourInMillis;
7306
+ };
7307
+ const getEventSizes = (schedulerDate, totalDays, startDate, endDate) => {
7308
+ if (!eventIsVisible(startDate, endDate, schedulerDate, totalDays)) {
7309
+ return {
7310
+ left: 0,
7311
+ width: 0,
7312
+ };
7313
+ }
7314
+ const totalHours = totalDays * 24;
7315
+ // const dateString = schedulerDate.toISOString().split('T')[0];
7316
+ //const schedulerDateAtZero = new Date(dateString)
7317
+ let startHours = hoursBetween(schedulerDate, startDate);
7318
+ let durationHours = hoursBetween(startDate, endDate);
7319
+ const startOutOfScheduler = startHours < 0;
7320
+ if (startOutOfScheduler) {
7321
+ durationHours += startHours;
7322
+ startHours = 0;
7323
+ }
7324
+ const left = (startHours / totalHours) * 100;
7325
+ const width = (durationHours * 100) / totalHours;
7326
+ return {
7327
+ left,
7328
+ width,
7329
+ };
7330
+ };
7331
+
8905
7332
  function getLinesByDivisions(headerDivision, _) {
8906
- const lines = headerDivision.flatMap((division) => division.bottom.map((_, i) => ({ isDayBoundary: i === 0 })));
7333
+ const lines = headerDivision.flatMap((division) => {
7334
+ return division.bottom;
7335
+ });
8907
7336
  const left = 100 / lines.length;
8908
- const finalLines = lines.map((line, index) => ({
8909
- left: left * index,
8910
- width: 1,
8911
- isDayBoundary: line.isDayBoundary,
8912
- })).filter((_, index) => index !== 0);
7337
+ const finalLines = lines.map((_, index) => {
7338
+ return {
7339
+ left: left * index,
7340
+ width: 1,
7341
+ };
7342
+ }).filter((_, index) => index !== 0);
8913
7343
  return finalLines;
8914
7344
  }
8915
7345
 
@@ -8948,6 +7378,9 @@ const getWeekendsDaysInDateRange = (initialDate, visibleDays) => {
8948
7378
  return weekends;
8949
7379
  };
8950
7380
 
7381
+ class UiEvent {
7382
+ }
7383
+
8951
7384
  const getNow = (isUtc) => {
8952
7385
  let now = new Date();
8953
7386
  if (!isUtc) {
@@ -8955,67 +7388,11 @@ const getNow = (isUtc) => {
8955
7388
  }
8956
7389
  return now;
8957
7390
  };
7391
+ const rowsHeight = 1.75; // rem
8958
7392
  const milliSecondsInSecond = 1000;
8959
7393
  const refreshMilliSeconds = 45 * milliSecondsInSecond;
8960
- const EMPTY_EVENTS = [];
8961
- const EMPTY_BG_EVENTS = [];
8962
- const EMPTY_INDICATORS = [];
8963
- // Memoised row body. Receives flat props (the per-row buckets are looked up
8964
- // by the outer Row wrapper). As long as those bucket arrays keep their
8965
- // reference (see `groupByRowIdStable`) and the rest of the render-context
8966
- // values are stable, this row will skip re-rendering on selection clicks
8967
- // that don't affect it.
8968
- const RowContent = React__default.memo(function RowContent(props) {
8969
- const header = {
8970
- value: props.row,
8971
- width: props.rowHeaderWidth,
8972
- onEvent: props.onEvent,
8973
- };
8974
- return (jsx("div", { style: {
8975
- ...props.style,
8976
- backgroundColor: props.rowColor
8977
- }, children: jsx(SchedulerRow, { events: props.events, backgroundEvents: props.backgroundEvents, indicatorRows: props.indicatorRows, rowHeader: header, EventComp: props.EventComp, BackgroundEventComp: props.BackgroundEventComp, RowTitleComp: props.RowTitleComp, weekendLines: props.weekendLines, divisionLines: props.divisionLines, timeLinePercentage: props.timeLinePercentage, rowHeightInRem: props.rowHeightRem, onEvent: props.onEvent, contextMenuItems: props.contextMenuItems, visibleDays: props.visibleDays, selectedDate: props.selectedDate }) }, props.row.rowId));
8978
- });
8979
- // Outer (unmemoised) row: looks up per-row buckets from the shared `data`
8980
- // object and forwards them as flat props to `RowContent`. Because the
8981
- // referenced arrays are reused when their contents are unchanged
8982
- // (see `groupByRowIdStable`), `RowContent.memo` will skip the work.
8983
- const Row = ({ index, style, data }) => {
8984
- const row = data.rows[index];
8985
- const rowColor = data.groupRowColors
8986
- ? Math.floor(index / 2) % 2 === 0 ? data.evenColor : data.oddColor
8987
- : index % 2 === 0 ? data.evenColor : data.oddColor;
8988
- return (jsx(RowContent, { style: style, row: row, rowColor: rowColor, events: data.eventsByRow.get(row.rowId) ?? EMPTY_EVENTS, backgroundEvents: data.backgroundEventsByRow.get(row.rowId) ?? EMPTY_BG_EVENTS, indicatorRows: data.indicatorRowsByRow.get(row.rowId) ?? EMPTY_INDICATORS, EventComp: data.EventComp, BackgroundEventComp: data.BackgroundEventComp, RowTitleComp: data.RowTitleComp, rowHeaderWidth: data.rowHeaderWidth, rowHeightRem: row.rowHeightRem ?? data.rowHeightRem, weekendLines: data.weekendLines, divisionLines: data.divisionLines, timeLinePercentage: data.timeLinePercentage, selectedDate: data.selectedDate, visibleDays: data.visibleDays, contextMenuItems: data.contextMenuItems, onEvent: data.onEvent }));
8989
- };
8990
- // Bucket items by rowId, but reuse previous bucket arrays whenever a row's
8991
- // contents have not changed. Keeping bucket references stable is essential
8992
- // for `RowContent.memo` to skip work when only one row's events change
8993
- // (e.g. on selection clicks).
8994
- const groupByRowIdStable = (items, prev) => {
8995
- const next = new Map();
8996
- for (const item of items) {
8997
- const bucket = next.get(item.rowId);
8998
- if (bucket) {
8999
- bucket.push(item);
9000
- }
9001
- else {
9002
- next.set(item.rowId, [item]);
9003
- }
9004
- }
9005
- if (!prev)
9006
- return next;
9007
- for (const [rowId, bucket] of next) {
9008
- const prevBucket = prev.get(rowId);
9009
- if (prevBucket
9010
- && prevBucket.length === bucket.length
9011
- && prevBucket.every((v, i) => v === bucket[i])) {
9012
- next.set(rowId, prevBucket);
9013
- }
9014
- }
9015
- return next;
9016
- };
9017
7394
  const Scheduler = (props) => {
9018
- const { header: headerContent, id, events: eventsState, backgroundEvents, indicatorRows: allIndicatorRows = [], contextMenuItems, EventComp, RowTitleComp, orderCategories = ["title"], useOrderCategory, onEvent, groupRowColors, rowHeaderWidth = 180, rowHeightRem = 1.75, } = props;
7395
+ const { header: headerContent, id, events: eventsState, backgroundEvents, contextMenuItems, EventComp, RowTitleComp, orderCategories = ["title"], useOrderCategory, onEvent, groupRowColors, rowHeaderWidth = 180, } = props;
9019
7396
  const BackgroundEventComp = props.BackgroundEventComp ?? BackgroundEvent;
9020
7397
  const rows = useOrderCategory === false
9021
7398
  ? props.rows
@@ -9023,50 +7400,21 @@ const Scheduler = (props) => {
9023
7400
  const instanceRef = useRef(null);
9024
7401
  // const rowHeaderWidth = "180px";
9025
7402
  const { selectedDate, visibleDays, isUtc, isHeaderVisible, visibleRows: stateVisibleRows } = props.state;
9026
- const events = useMemo(() => filterVisibleEvents(eventsState, selectedDate, visibleDays), [eventsState, selectedDate, visibleDays]);
7403
+ const events = eventsState.filter((event) => {
7404
+ const lastDayOfScheduler = moment(selectedDate).add(visibleDays, "days");
7405
+ return (moment(event.endDate).isAfter(selectedDate) &&
7406
+ moment(event.startDate).isBefore(lastDayOfScheduler));
7407
+ });
9027
7408
  useEffect(() => {
9028
7409
  instanceRef.current?.resetAfterIndex(0);
9029
- }, [orderCategories, props.rows.length, events, allIndicatorRows]);
9030
- // Bucket events / backgroundEvents / indicatorRows by rowId once per render
9031
- // instead of running events.filter() per row inside the row renderer.
9032
- // Reuse previous bucket arrays when their contents are unchanged so the
9033
- // memoised RowContent below can skip work (essential for selection clicks
9034
- // to be cheap).
9035
- const eventsByRowRef = useRef();
9036
- const backgroundEventsByRowRef = useRef();
9037
- const indicatorRowsByRowRef = useRef();
9038
- const eventsByRow = useMemo(() => {
9039
- const next = groupByRowIdStable(events, eventsByRowRef.current);
9040
- eventsByRowRef.current = next;
9041
- return next;
9042
- }, [events]);
9043
- const backgroundEventsByRow = useMemo(() => {
9044
- const next = groupByRowIdStable(backgroundEvents, backgroundEventsByRowRef.current);
9045
- backgroundEventsByRowRef.current = next;
9046
- return next;
9047
- }, [backgroundEvents]);
9048
- const indicatorRowsByRow = useMemo(() => {
9049
- const next = groupByRowIdStable(allIndicatorRows, indicatorRowsByRowRef.current);
9050
- indicatorRowsByRowRef.current = next;
9051
- return next;
9052
- }, [allIndicatorRows]);
9053
- const totalHeightRem = rows.reduce((acc, row) => {
9054
- const filteredEvents = eventsByRow.get(row.rowId) ?? [];
9055
- const innerRows = separateEventsToInnerRows(filteredEvents);
9056
- const effectiveRowHeight = row.rowHeightRem ?? rowHeightRem;
9057
- const eventHeight = Math.max(innerRows.length, 1) * effectiveRowHeight;
9058
- const hasIndicators = indicatorRowsByRow.has(row.rowId);
9059
- return acc + eventHeight + (hasIndicators ? INDICATOR_HEIGHT_REM : 0);
9060
- }, 0);
9061
- const schedulerContentHeight = stateVisibleRows != null
9062
- ? Math.min(totalHeightRem, stateVisibleRows * rowHeightRem)
9063
- : Math.max(totalHeightRem, rowHeightRem);
7410
+ }, [orderCategories, props.rows.length, events]);
7411
+ const notEmptyRows = stateVisibleRows ?? rows.length;
7412
+ const visibleRows = height(events, rows, notEmptyRows);
9064
7413
  const totalHours = visibleDays * 24;
9065
7414
  const [timeLinePercentage, setTimeLinePercentage] = useState(0);
9066
- const divisions = useMemo(() => getDefaultDivisions(visibleDays, selectedDate), [visibleDays, selectedDate]);
9067
7415
  const header = {
9068
7416
  content: headerContent,
9069
- divisions,
7417
+ divisions: getDefaultDivisions(visibleDays, selectedDate),
9070
7418
  visibleDays: visibleDays,
9071
7419
  width: rowHeaderWidth,
9072
7420
  selectedDate,
@@ -9076,8 +7424,9 @@ const Scheduler = (props) => {
9076
7424
  };
9077
7425
  const evenColor = "var(--cw-color-surface-container-low)";
9078
7426
  const oddColor = "var(--cw-color-surface-container)";
9079
- const weekendsLines = useMemo(() => getWeekendLinesByDatesVisible(selectedDate, visibleDays), [selectedDate, visibleDays]);
9080
- const divisionLines = useMemo(() => getLinesByDivisions(divisions), [divisions, visibleDays]);
7427
+ const schedulerContentHeight = rowsHeight * visibleRows;
7428
+ const weekendsLines = getWeekendLinesByDatesVisible(selectedDate, visibleDays);
7429
+ const divisionLines = getLinesByDivisions(header.divisions);
9081
7430
  // Timeline percentage calculation
9082
7431
  useEffect(() => {
9083
7432
  const updateTimeLinePercentage = () => {
@@ -9088,56 +7437,30 @@ const Scheduler = (props) => {
9088
7437
  const interval = setInterval(updateTimeLinePercentage, refreshMilliSeconds);
9089
7438
  return () => clearInterval(interval);
9090
7439
  }, [selectedDate, isUtc, totalHours]);
9091
- const itemData = useMemo(() => ({
9092
- rows,
9093
- eventsByRow,
9094
- backgroundEventsByRow,
9095
- indicatorRowsByRow,
9096
- EventComp: EventComp,
9097
- BackgroundEventComp,
9098
- RowTitleComp: RowTitleComp,
9099
- rowHeaderWidth,
9100
- rowHeightRem,
9101
- weekendLines: weekendsLines,
9102
- divisionLines,
9103
- timeLinePercentage,
9104
- selectedDate,
9105
- visibleDays,
9106
- contextMenuItems,
9107
- onEvent,
9108
- groupRowColors,
9109
- evenColor,
9110
- oddColor,
9111
- }), [
9112
- rows,
9113
- eventsByRow,
9114
- backgroundEventsByRow,
9115
- indicatorRowsByRow,
9116
- EventComp,
9117
- BackgroundEventComp,
9118
- RowTitleComp,
9119
- rowHeaderWidth,
9120
- rowHeightRem,
9121
- weekendsLines,
9122
- divisionLines,
9123
- timeLinePercentage,
9124
- selectedDate,
9125
- visibleDays,
9126
- contextMenuItems,
9127
- onEvent,
9128
- groupRowColors,
9129
- ]);
7440
+ // Memoized Row Component
7441
+ const Row = React__default.memo(({ index, style }) => {
7442
+ const row = rows[index];
7443
+ const rowColor = groupRowColors
7444
+ ? Math.floor(index / 2) % 2 === 0 ? evenColor : oddColor
7445
+ : index % 2 === 0 ? evenColor : oddColor;
7446
+ const header = {
7447
+ value: row,
7448
+ width: rowHeaderWidth,
7449
+ onEvent: onEvent,
7450
+ };
7451
+ return (jsx("div", { style: {
7452
+ ...style,
7453
+ backgroundColor: rowColor
7454
+ }, children: jsx(SchedulerRow, { events: events.filter((it) => it.rowId === row.rowId), backgroundEvents: backgroundEvents.filter((it) => it.rowId === row.rowId), rowHeader: header, EventComp: EventComp, BackgroundEventComp: BackgroundEventComp, RowTitleComp: RowTitleComp, weekendLines: weekendsLines, divisionLines: divisionLines, timeLinePercentage: timeLinePercentage, rowHeightInRem: rowsHeight, onEvent: onEvent, contextMenuItems: contextMenuItems, visibleDays: visibleDays, selectedDate: selectedDate }) }, row.rowId));
7455
+ });
9130
7456
  const getItemSize = useCallback((index) => {
9131
7457
  const row = rows[index];
9132
- const filteredEvents = eventsByRow.get(row.rowId) ?? [];
7458
+ const filteredEvents = events.filter((it) => it.rowId === row.rowId);
9133
7459
  const innerRows = separateEventsToInnerRows(filteredEvents);
9134
7460
  const rowsNumber = innerRows.length > 0 ? innerRows.length : 1;
9135
7461
  const pixelsInRem = 16;
9136
- const effectiveRowHeight = row.rowHeightRem ?? rowHeightRem;
9137
- const hasIndicators = indicatorRowsByRow.has(row.rowId);
9138
- const indicatorPixels = hasIndicators ? INDICATOR_HEIGHT_REM * pixelsInRem : 0;
9139
- return rowsNumber * effectiveRowHeight * pixelsInRem + indicatorPixels;
9140
- }, [rows, eventsByRow, indicatorRowsByRow, rowHeightRem]);
7462
+ return rowsNumber * rowsHeight * pixelsInRem;
7463
+ }, [rows, events]);
9141
7464
  // Render
9142
7465
  return (jsxs("div", { id: id, style: {
9143
7466
  position: "relative",
@@ -9148,11 +7471,17 @@ const Scheduler = (props) => {
9148
7471
  position: "sticky",
9149
7472
  top: 0,
9150
7473
  zIndex: 1,
9151
- }, children: jsx(SchedulerHeader, { ...header }) })), jsx(VariableSizeList, { height: schedulerContentHeight * 16, itemCount: rows.length, itemSize: getItemSize, itemData: itemData, width: "100%", style: { overflowX: "hidden" }, ref: instanceRef, className: styles$2["hide-scrollbar"], children: Row })] }));
7474
+ }, children: jsx(SchedulerHeader, { ...header }) })), jsx(VariableSizeList, { height: schedulerContentHeight * 16, itemCount: rows.length, itemSize: getItemSize, width: "100%", style: { overflowX: "hidden" }, ref: instanceRef, className: styles$2["hide-scrollbar"], children: Row })] }));
7475
+ };
7476
+ const height = (events, rows, rowsNumber) => {
7477
+ const selectedRows = rows.slice(0, rowsNumber);
7478
+ const flatMapped = selectedRows.flatMap(row => {
7479
+ const newEvents = events.filter(it => it.rowId === row.rowId);
7480
+ const innerRows = separateEventsToInnerRows(newEvents);
7481
+ return innerRows.length > 0 ? innerRows : [[]];
7482
+ });
7483
+ return flatMapped.length;
9152
7484
  };
9153
-
9154
- class UiEvent {
9155
- }
9156
7485
 
9157
7486
  let topsCounter = 0;
9158
7487
  class CwSuperScheduler extends React.Component {
@@ -9473,7 +7802,7 @@ class Resource {
9473
7802
  }
9474
7803
  }
9475
7804
 
9476
- var styles = {"super-scheduler-row-header":"super-scheduler-module__super-scheduler-row-header__TTs4e","indicators":"super-scheduler-module__indicators__f4lIT","scheduler-crewmember-functions":"super-scheduler-module__scheduler-crewmember-functions__BS2hs"};
7805
+ var styles = {"super-scheduler-row-header":"super-scheduler-module_super-scheduler-row-header__TTs4e","indicators":"super-scheduler-module_indicators__f4lIT","scheduler-crewmember-functions":"super-scheduler-module_scheduler-crewmember-functions__BS2hs"};
9477
7806
 
9478
7807
  class OnPinRow {
9479
7808
  id;
@@ -9494,12 +7823,11 @@ class OnClearPinned {
9494
7823
  const PinRowHeader = ({ value, width, onEvent }) => {
9495
7824
  const [isContextMenuOpen, setIsContextMenuOpen] = useState(false);
9496
7825
  const { highlightColor, isLoading } = value;
9497
- return jsx(CwAnchoredMenu, { open: isContextMenuOpen, onOpenChange: setIsContextMenuOpen, placement: "right", options: value.contextMenuItems ?? [], onSelect: (key) => {
7826
+ return (jsx(CwAnchoredMenu, { open: isContextMenuOpen, onOpenChange: setIsContextMenuOpen, placement: "right", options: value.contextMenuItems ?? [], onSelect: (key) => {
9498
7827
  onEvent(new OnClickContextMenu(value.rowId, key));
9499
- }, children: jsx(CwTooltipNew, { content: value.tooltip, position: "right", dissapearsWhenHover: true, children: jsxs("div", { style: {
7828
+ }, children: jsx(CwGenericTooltip, { content: value.tooltip, position: "right", dissapearsWhenHover: true, overlayStyle: value.overlayTooltipStyle, children: jsxs("div", { style: {
9500
7829
  width: width,
9501
- height: "100%",
9502
- background: highlightColor
7830
+ background: highlightColor,
9503
7831
  }, className: styles["super-scheduler-row-header"], children: [jsx("button", { className: "cw-button-icon cwi-pin", "data-pinned": value.isPinned, onClick: (_) => {
9504
7832
  onEvent(value.isPinned ? new OnUnpinRow(value.rowId) : new OnPinRow(value.rowId));
9505
7833
  } }), jsx("div", { className: styles["indicators"], children: value.indicators ?? undefined }), jsxs("div", { style: {
@@ -9508,37 +7836,19 @@ const PinRowHeader = ({ value, width, onEvent }) => {
9508
7836
  justifyContent: "center",
9509
7837
  alignItems: "flex-start",
9510
7838
  }, children: [jsxs("div", { children: [jsx("strong", { children: value.title }), value.title2 && jsxs("span", { children: ["-", value.title2] }), " ", jsx("strong", { children: value.subtitle })] }), value.subtitle && jsxs("div", { style: { opacity: 0.5 }, children: [value.title3 &&
9511
- jsxs("span", { className: styles["scheduler-crewmember-functions"], children: ["(", value.title3, ")"] }), value.subtitle2 && jsxs("span", { children: ["-", value.subtitle2] })] })] }), isLoading ? jsx("span", { className: "cwi-icons cwi-spinner" }) : undefined] }) }, value.rowId) }, value.rowId);
7839
+ jsxs("span", { className: styles["scheduler-crewmember-functions"], children: ["(", value.title3, ")"] }), value.subtitle2 && jsxs("span", { children: ["-", value.subtitle2] })] })] }), isLoading ? jsx("span", { className: "cwi-icons cwi-spinner" }) : undefined] }) }, value.rowId) }, value.rowId));
9512
7840
  };
9513
7841
 
9514
- const SuperScheduler = ({ id, state, header, rows, events, pinnedOrderCategory, unPinnedOrderCategory, backgroundEvents, indicatorRows = [], contextMenuItems, onEvent, rowHeightRem = 1.75 }) => {
7842
+ const SuperScheduler = ({ id, state, header, rows, events, pinnedOrderCategory, unPinnedOrderCategory, backgroundEvents, contextMenuItems, onEvent }) => {
9515
7843
  const pinnedRows = rows.filter((it) => it.isPinned);
9516
7844
  const notPinnedRows = rows.filter((it) => !it.isPinned);
9517
7845
  const isFirstVisible = pinnedRows.length > 0;
9518
- return (jsxs(Fragment, { children: [isFirstVisible && (jsxs(Fragment, { children: [jsx(Scheduler, { id: `${id}-pinned`, state: state, header: header, rows: pinnedRows, events: events, backgroundEvents: backgroundEvents, indicatorRows: indicatorRows, contextMenuItems: contextMenuItems, orderCategories: pinnedOrderCategory, onEvent: onEvent, EventComp: SchedulerEvent, RowTitleComp: PinRowHeader, rowHeightRem: rowHeightRem }), jsx("div", { children: jsx(CwButton, { onClick: () => {
7846
+ return (jsxs(Fragment, { children: [isFirstVisible && (jsxs(Fragment, { children: [jsx(Scheduler, { id: `${id}-pinned`, state: state, header: header, rows: pinnedRows, events: events, backgroundEvents: backgroundEvents, contextMenuItems: contextMenuItems, orderCategories: pinnedOrderCategory, onEvent: onEvent, EventComp: SchedulerEvent, RowTitleComp: PinRowHeader }), jsx("div", { children: jsx(CwButton, { onClick: () => {
9519
7847
  onEvent(new OnClearPinned());
9520
- }, children: "Clear pinned" }) })] })), jsx(Scheduler, { id: `${id}-notPinned`, state: { ...state, isHeaderVisible: !isFirstVisible }, header: header, rows: notPinnedRows, events: events, backgroundEvents: backgroundEvents, indicatorRows: indicatorRows, contextMenuItems: contextMenuItems, orderCategories: unPinnedOrderCategory, onEvent: onEvent, EventComp: SchedulerEvent, RowTitleComp: PinRowHeader, rowHeightRem: rowHeightRem })] }));
7848
+ }, children: "Clear pinned" }) })] })), jsx(Scheduler, { id: `${id}-notPinned`, state: { ...state, isHeaderVisible: !isFirstVisible }, header: header, rows: notPinnedRows, events: events, backgroundEvents: backgroundEvents, contextMenuItems: contextMenuItems, orderCategories: unPinnedOrderCategory, onEvent: onEvent, EventComp: SchedulerEvent, RowTitleComp: PinRowHeader })] }));
9521
7849
  };
9522
7850
 
9523
- /**
9524
- * API-backed airport search input for WinOps.
9525
- *
9526
- * Fetches matching airports from the WinOps backend as the user types (debounced).
9527
- * Renders results in a shared `cw-choice-dropdown` styled panel with keyboard navigation.
9528
- * Supports pre-selecting an airport by `value` (AptKey) and customising the displayed text
9529
- * format via `displayMode`.
9530
- *
9531
- * Requires a running WinOps backend — set `cblConfig` to its base URL.
9532
- *
9533
- * @example
9534
- * <CwFindAirport
9535
- * cblConfig="https://localhost:44300"
9536
- * handleChange={(key) => setAirportKey(key)}
9537
- * labelProps={{ text: 'Departure Airport' }}
9538
- * displayMode="iata-only"
9539
- * />
9540
- */
9541
- const CwFindAirport = ({ handleChange, searchType = "OnlyDatabase", placeHolder = "Search airport…", required = false, cblConfig, className = "", value, disabled = false, displayMode, initialDisplayText, labelProps, alignProps, width }) => {
7851
+ const CwFindAirport = ({ handleChange, searchType = "OnlyDatabase", placeHolder = "Search airport…", required = false, cblConfig, className = "", value, disabled = false, displayMode, labelProps, alignProps, width }) => {
9542
7852
  // State
9543
7853
  const [inputValue, setInputValue] = useState("");
9544
7854
  const [options, setOptions] = useState([]);
@@ -9550,13 +7860,8 @@ const CwFindAirport = ({ handleChange, searchType = "OnlyDatabase", placeHolder
9550
7860
  const [tooltipText, setTooltipText] = useState("");
9551
7861
  // Refs
9552
7862
  const inputRef = useRef(null);
9553
- const wrapperRef = useRef(null);
7863
+ const dropdownRef = useRef(null);
9554
7864
  const searchTimeoutRef = useRef();
9555
- const { panelRef, panelStyle, renderPanel } = useDropdownPortal({
9556
- anchorRef: wrapperRef,
9557
- isOpen: showDropdown && options.length > 0,
9558
- onClose: () => { setShowDropdown(false); setHighlightedIndex(-1); },
9559
- });
9560
7865
  // Utility function to extract ICAO from DisplayAirportText
9561
7866
  const extractIcao = useCallback((displayText) => {
9562
7867
  const match = displayText.match(/^([A-Z]{4})\(/);
@@ -9733,19 +8038,25 @@ const CwFindAirport = ({ handleChange, searchType = "OnlyDatabase", placeHolder
9733
8038
  break;
9734
8039
  }
9735
8040
  };
9736
- // Handle clicks outside dropdown — now handled by useDropdownPortal
8041
+ // Handle clicks outside dropdown
8042
+ useEffect(() => {
8043
+ const handleClickOutside = (event) => {
8044
+ if (dropdownRef.current &&
8045
+ !dropdownRef.current.contains(event.target) &&
8046
+ !inputRef.current?.contains(event.target)) {
8047
+ setShowDropdown(false);
8048
+ setHighlightedIndex(-1);
8049
+ }
8050
+ };
8051
+ document.addEventListener("mousedown", handleClickOutside);
8052
+ return () => document.removeEventListener("mousedown", handleClickOutside);
8053
+ }, []);
9737
8054
  // Load initial value
9738
8055
  useEffect(() => {
9739
8056
  if (value && value !== 0 && value !== -1) {
9740
- if (initialDisplayText) {
9741
- setInputValue(initialDisplayText);
9742
- setTooltipText(initialDisplayText);
9743
- }
9744
- else {
9745
- fetchAirportData(value);
9746
- }
8057
+ fetchAirportData(value);
9747
8058
  }
9748
- }, [value, fetchAirportData, initialDisplayText]);
8059
+ }, [value, fetchAirportData]);
9749
8060
  useEffect(() => {
9750
8061
  if (!value || value === 0 || value === -1) {
9751
8062
  setInputValue("");
@@ -9775,183 +8086,7 @@ const CwFindAirport = ({ handleChange, searchType = "OnlyDatabase", placeHolder
9775
8086
  return (jsxs("div", { className: `cw-search-input ${className}`, style: {
9776
8087
  ...(width ? { width } : {}),
9777
8088
  ...(labelProps?.labelWidth ? { '--label-width': labelProps.labelWidth } : {})
9778
- }, "data-direction": direction, children: [jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: "cw-search-input-wrapper", ref: wrapperRef, children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, onChange: handleInputChange, onKeyDown: handleKeyDown, onFocus: handleInputFocus, placeholder: isInitialLoading ? "Loading…" : placeHolder, disabled: disabled, required: required, autoComplete: "off", "aria-expanded": showDropdown, "aria-haspopup": "listbox", role: "combobox", title: tooltipText }), (isLoading || isInitialLoading) && (jsx("div", { className: "cw-search-input-loading", children: jsx(CwIcon, { iconId: "spinner" }) })), jsx("div", { className: "cw-search-input-icons", children: inputValue && !disabled && !isInitialLoading ? (jsx(CwButton, { type: "button", onClick: handleClear, "aria-label": "Clear selected airport", variant: "icon", icon: "close", color: "neutral" })) : (jsx(CwIcon, { iconId: "control-tower" })) })] })] }), renderPanel(jsx("div", { ref: panelRef, className: dropdownStyles.dropdown, style: panelStyle, role: "listbox", children: jsx("ul", { children: options.map((option, index) => (jsx("li", { className: `${dropdownStyles.option}${index === highlightedIndex ? ` ${dropdownStyles.optionFocused}` : ""}`, onClick: () => handleOptionSelect(option.value), onMouseDown: (e) => e.preventDefault(), onMouseEnter: () => setHighlightedIndex(index), role: "option", "aria-selected": index === highlightedIndex, children: option.text }, option.value))) }) }))] }));
9779
- };
9780
-
9781
- /**
9782
- * API-backed crewmember search input for WinOps.
9783
- *
9784
- * Fetches matching crewmembers from the WinOps backend as the user types (debounced).
9785
- * Renders results in a shared `cw-choice-dropdown` styled panel with keyboard navigation.
9786
- * Supports pre-selecting a crewmember by numeric `value` (ID).
9787
- *
9788
- * Requires a running WinOps backend — set `cblConfig` to its base URL.
9789
- *
9790
- * @example
9791
- * <CwFindCrewmember
9792
- * cblConfig="https://localhost:44300"
9793
- * handleChange={(id) => setCrewId(id)}
9794
- * labelProps={{ text: 'Crew Member' }}
9795
- * />
9796
- */
9797
- const CwFindCrewmember = ({ handleChange, placeHolder = "Search crew…", required = false, cblConfig, className = "", value, disabled = false, initialDisplayText, labelProps, alignProps, width }) => {
9798
- const [inputValue, setInputValue] = useState("");
9799
- const [options, setOptions] = useState([]);
9800
- const [crewmembers, setCrewmembers] = useState([]);
9801
- const [isLoading, setIsLoading] = useState(false);
9802
- const [isInitialLoading, setIsInitialLoading] = useState(false);
9803
- const [showDropdown, setShowDropdown] = useState(false);
9804
- const [highlightedIndex, setHighlightedIndex] = useState(-1);
9805
- const [tooltipText, setTooltipText] = useState("");
9806
- const inputRef = useRef(null);
9807
- const wrapperRef = useRef(null);
9808
- const searchTimeoutRef = useRef();
9809
- const { panelRef, panelStyle, renderPanel } = useDropdownPortal({
9810
- anchorRef: wrapperRef,
9811
- isOpen: showDropdown && options.length > 0,
9812
- onClose: () => { setShowDropdown(false); setHighlightedIndex(-1); },
9813
- });
9814
- const getDisplayText = useCallback((crew) => {
9815
- return `${crew.threeLetterCode} - ${crew.lastName} ${crew.firstName}`;
9816
- }, []);
9817
- const fetchCrewmemberData = useCallback(async (crewmemberId) => {
9818
- setIsInitialLoading(true);
9819
- try {
9820
- const response = await fetch(`${cblConfig}controls/cblFindCrew/cblFindCrew/GetCrewmember?crewmemberId=${crewmemberId}`);
9821
- const result = await response.json();
9822
- const display = getDisplayText(result);
9823
- setCrewmembers([result]);
9824
- setOptions([{ value: result.id, text: display }]);
9825
- setInputValue(display);
9826
- setTooltipText(display);
9827
- }
9828
- catch (error) {
9829
- console.error("Error fetching crewmember data:", error);
9830
- }
9831
- finally {
9832
- setIsInitialLoading(false);
9833
- }
9834
- }, [cblConfig, getDisplayText]);
9835
- const searchCrewmembers = useCallback(async (searchText) => {
9836
- if (searchText.length < 2) {
9837
- setOptions([]);
9838
- setCrewmembers([]);
9839
- setShowDropdown(false);
9840
- return;
9841
- }
9842
- setIsLoading(true);
9843
- try {
9844
- const response = await fetch(`${cblConfig}controls/cblFindCrew/cblFindCrew/SearchCrewCodeName?text=${encodeURIComponent(searchText)}`);
9845
- const results = await response.json();
9846
- const newOptions = results.map(crew => ({
9847
- value: crew.id,
9848
- text: getDisplayText(crew)
9849
- }));
9850
- setOptions(newOptions);
9851
- setCrewmembers(results);
9852
- setShowDropdown(newOptions.length > 0);
9853
- setHighlightedIndex(-1);
9854
- }
9855
- catch (error) {
9856
- console.error("Error searching crewmembers:", error);
9857
- setOptions([]);
9858
- setCrewmembers([]);
9859
- setShowDropdown(false);
9860
- }
9861
- finally {
9862
- setIsLoading(false);
9863
- }
9864
- }, [cblConfig, getDisplayText]);
9865
- const debouncedSearch = useCallback((searchText) => {
9866
- if (searchTimeoutRef.current) {
9867
- window.clearTimeout(searchTimeoutRef.current);
9868
- }
9869
- searchTimeoutRef.current = window.setTimeout(() => {
9870
- searchCrewmembers(searchText);
9871
- }, 300);
9872
- }, [searchCrewmembers]);
9873
- const handleInputChange = (e) => {
9874
- const newValue = e.target.value;
9875
- setInputValue(newValue);
9876
- if (newValue !== inputValue) {
9877
- debouncedSearch(newValue);
9878
- }
9879
- };
9880
- const handleOptionSelect = (optionValue) => {
9881
- const selectedCrew = crewmembers.find(c => c.id === optionValue);
9882
- if (!selectedCrew)
9883
- return;
9884
- setShowDropdown(false);
9885
- const display = getDisplayText(selectedCrew);
9886
- setInputValue(display);
9887
- setTooltipText(display);
9888
- handleChange(optionValue);
9889
- };
9890
- const handleKeyDown = (e) => {
9891
- if (!showDropdown || options.length === 0)
9892
- return;
9893
- switch (e.key) {
9894
- case "ArrowDown":
9895
- e.preventDefault();
9896
- setHighlightedIndex(prev => prev < options.length - 1 ? prev + 1 : 0);
9897
- break;
9898
- case "ArrowUp":
9899
- e.preventDefault();
9900
- setHighlightedIndex(prev => prev > 0 ? prev - 1 : options.length - 1);
9901
- break;
9902
- case "Enter":
9903
- e.preventDefault();
9904
- if (highlightedIndex >= 0 && highlightedIndex < options.length) {
9905
- handleOptionSelect(options[highlightedIndex].value);
9906
- }
9907
- break;
9908
- case "Escape":
9909
- setShowDropdown(false);
9910
- setHighlightedIndex(-1);
9911
- break;
9912
- }
9913
- };
9914
- useEffect(() => {
9915
- // Outside-click is now handled by useDropdownPortal
9916
- }, []);
9917
- useEffect(() => {
9918
- if (value && value !== 0 && value !== -1) {
9919
- if (initialDisplayText) {
9920
- setInputValue(initialDisplayText);
9921
- setTooltipText(initialDisplayText);
9922
- }
9923
- else {
9924
- fetchCrewmemberData(value);
9925
- }
9926
- }
9927
- }, [value, fetchCrewmemberData, initialDisplayText]);
9928
- useEffect(() => {
9929
- if (!value || value === 0 || value === -1) {
9930
- setInputValue("");
9931
- setTooltipText("");
9932
- setOptions([]);
9933
- setCrewmembers([]);
9934
- }
9935
- }, [value]);
9936
- const handleInputFocus = () => {
9937
- if (options.length > 0) {
9938
- setShowDropdown(true);
9939
- }
9940
- };
9941
- const handleClear = () => {
9942
- setInputValue("");
9943
- setTooltipText("");
9944
- setOptions([]);
9945
- setCrewmembers([]);
9946
- setShowDropdown(false);
9947
- handleChange(0);
9948
- inputRef.current?.focus();
9949
- };
9950
- const direction = alignProps?.flexDirection || "row";
9951
- return (jsxs("div", { className: `cw-search-input ${className}`, style: {
9952
- ...(width ? { width } : {}),
9953
- ...(labelProps?.labelWidth ? { '--label-width': labelProps.labelWidth } : {})
9954
- }, "data-direction": direction, children: [jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: "cw-search-input-wrapper", ref: wrapperRef, children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, onChange: handleInputChange, onKeyDown: handleKeyDown, onFocus: handleInputFocus, placeholder: isInitialLoading ? "Loading…" : placeHolder, disabled: disabled, required: required, autoComplete: "off", "aria-expanded": showDropdown, "aria-haspopup": "listbox", role: "combobox", title: tooltipText }), (isLoading || isInitialLoading) && (jsx("div", { className: "cw-search-input-loading", children: jsx(CwIcon, { iconId: "spinner" }) })), jsx("div", { className: "cw-search-input-icons", children: inputValue && !disabled && !isInitialLoading ? (jsx(CwButton, { type: "button", onClick: handleClear, "aria-label": "Clear selected crewmember", variant: "icon", icon: "close", color: "neutral" })) : (jsx(CwIcon, { iconId: "person" })) })] })] }), renderPanel(jsx("div", { ref: panelRef, className: dropdownStyles.dropdown, style: panelStyle, role: "listbox", children: jsx("ul", { children: options.map((option, index) => (jsx("li", { className: `${dropdownStyles.option}${index === highlightedIndex ? ` ${dropdownStyles.optionFocused}` : ""}`, onClick: () => handleOptionSelect(option.value), onMouseDown: (e) => e.preventDefault(), onMouseEnter: () => setHighlightedIndex(index), role: "option", "aria-selected": index === highlightedIndex, children: option.text }, option.value))) }) }))] }));
8089
+ }, "data-direction": direction, children: [jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (jsx(CwLabel, { ...labelProps, children: labelProps.text })), jsxs("div", { className: "cw-search-input-wrapper", children: [jsx("input", { ref: inputRef, type: "text", value: inputValue, onChange: handleInputChange, onKeyDown: handleKeyDown, onFocus: handleInputFocus, placeholder: isInitialLoading ? "Loading…" : placeHolder, disabled: disabled, required: required, autoComplete: "off", "aria-expanded": showDropdown, "aria-haspopup": "listbox", role: "combobox", title: tooltipText }), (isLoading || isInitialLoading) && (jsx("div", { className: "cw-search-input-loading", children: jsx(CwIcon, { iconId: "spinner" }) })), jsx("div", { className: "cw-search-input-icons", children: inputValue && !disabled && !isInitialLoading ? (jsx(CwButton, { type: "button", onClick: handleClear, "aria-label": "Clear selected airport", variant: "icon", icon: "close", color: "neutral" })) : (jsx(CwIcon, { iconId: "control-tower" })) })] })] }), showDropdown && options.length > 0 && (jsx("div", { ref: dropdownRef, className: "cw-input-search-dropdown", role: "listbox", children: jsx("ul", { children: options.map((option, index) => (jsx("li", { className: index === highlightedIndex ? "highlighted" : "", onClick: () => handleOptionSelect(option.value), onMouseDown: (e) => e.preventDefault(), role: "option", "aria-selected": index === highlightedIndex, children: option.text }, option.value))) }) }))] }));
9955
8090
  };
9956
8091
 
9957
- export { CblDragAndDrop, CwAccordionContainer, CwAlign, CwAnchoredMenu, CwBtnDelete, CwBtnEdit, CwBtnSave, CwButton, CwCard, CwCardList, CwCheck, CwCheckbox, CwCheckboxGroup, CwChip, CwColorPicker, CwConfirmationPopup, CwContextMenu, CwDatePicker, CwDateRangePicker, CwDateTimePicker, CwDateTimePickerCompact, CwDialog, CwDialogManager, CwDigit, CwDisplayMessage, CwDropdown, CwDropdownFilter, CwExpandable, CwFileUpload, CwFileUploadMultiple, CwFindAirport, CwFindCrewmember, CwGenericTooltip, CwHeadingMain, CwHeadingSecond, CwIcon, CwImageArea, CwImageGallery, CwImageZoom, CwInput, CwInputColor, CwInputDate, CwInputDatePicker, CwInputDateText, CwInputDatetime, CwInputImage, CwInputNumber, CwInputPhone, CwInputText, CwKeyValueList, CwLabel, CwLoading, CwLoadingSmall, CwMasterDetail, CwMessage, CwMessageManager, CwMessageType, CwModal, CwModalHover, CwModalReportFunctional, CwMultiFilter, CwMultiFilterTag, CwNote, CwOption, CwPopoverButton, CwReportModal, CwScheduler, CwSearchInput, CwSelect, CwSelectList, CwSelectListItems, CwSortableList, CwSortableTable, CwSuperScheduler, CwTable, CwTableGrouped, CwTableServerSide, CwTabs, CwTagSelector, CwTextArea, CwTime, CwTimePicker, CwToggle, CwTooltipManager, CwTooltipNew, CwTreeView, CwWeekdaySelector, DefaultRowHeader, OnClearPinned, OnClickContextMenu, OnClickEvent, OnClickRowEvent, OnClickRowHeader, OnClickUtc, OnDoubleClickEvent, OnDoubleClickRowEvent, OnDragEvent, OnDropCtrlEvent, OnDropEvent, OnEndClickHeaderEvent, OnLeftDragStart, OnMultiClickEvent, OnPinRow, OnRangeClickEvent, OnRightClickEvent, OnRightClickRow, OnRightDragStart, OnStartClickHeaderEvent, OnUnpinRow, PinRowHeader, Resource, Scheduler, SchedulerEvent, SuperScheduler, UiEvent, Weekdays, cblEvent, eventIsVisible, filterVisibleEvents, getDefaultDivisions, getEventSizes, itemsToMultiFilterTags, useCwMessage, useSortableList, useSortableTable };
8092
+ export { CblDragAndDrop, CwAccordionContainer, CwAlign, CwAnchoredMenu, CwBtnDelete, CwBtnEdit, CwBtnSave, CwButton, CwCard, CwCardList, CwCheckbox, CwChip, CwColorPicker, CwConfirmationPopup, CwContextMenu, CwDatePicker, CwDateRangePicker, CwDateTimePicker, CwDateTimePickerCompact, CwDialog, CwDialogManager, CwDigit, CwDisplayMessage, CwDropdownFilter, CwExpandable, CwFileUpload, CwFileUploadMultiple, CwFindAirport, CwGenericTooltip, CwHeadingMain, CwHeadingSecond, CwIcon, CwImageArea, CwImageGallery, CwImageZoom, CwInput, CwInputColor, CwInputDate, CwInputDatePicker, CwInputDateText, CwInputDatetime, CwInputImage, CwInputNumber, CwInputPhone, CwInputText, CwKeyValueList, CwLabel, CwLoading, CwLoadingSmall, CwMessage, CwMessageManager, CwMessageType, CwModal, CwModalHover, CwModalReportFunctional, CwMultiFilter, CwMultiFilterTag, CwNote, CwOption, CwReportModal, CwScheduler, CwSearchInput, CwSelect, CwSelectList, CwSelectListItems, CwSortableList, CwSuperScheduler, CwTable, CwTableGrouped, CwTabs, CwTextArea, CwTime, CwTimePicker, CwToggle, CwTooltip, CwTreeView, CwWeekdaySelector, DefaultRowHeader, OnClearPinned, OnClickContextMenu, OnClickEvent, OnClickRowEvent, OnClickRowHeader, OnClickUtc, OnDoubleClickEvent, OnDoubleClickRowEvent, OnDragEvent, OnDropCtrlEvent, OnDropEvent, OnEndClickHeaderEvent, OnLeftDragStart, OnMultiClickEvent, OnPinRow, OnRangeClickEvent, OnRightClickEvent, OnRightClickRow, OnRightDragStart, OnStartClickHeaderEvent, OnUnpinRow, PinRowHeader, Resource, Scheduler, SchedulerEvent, SuperScheduler, UiEvent, Weekdays, cblEvent, eventIsVisible, getDefaultDivisions, getEventSizes, itemsToMultiFilterTags, useCwMessage, useSortableList };