@cwellt_software/cwellt-reactjs-lib 1.0.9 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (715) hide show
  1. package/dist/content/icons/new-cw-icons/NewCwIcons.html +14 -6
  2. package/dist/content/icons/new-cw-icons/NewCwIcons.json +195 -1
  3. package/dist/content/icons/new-cw-icons/css/new-cw-icons.css +783 -198
  4. package/dist/content/icons/new-cw-icons/fonts/NewCwIcons.woff +0 -0
  5. package/dist/index.cjs.js +1462 -628
  6. package/dist/index.css +2 -2
  7. package/dist/index.d.ts +366 -106
  8. package/dist/index.es.js +1456 -630
  9. package/dist/playground/main.d.ts +4 -0
  10. package/dist/playground/main.d.ts.map +1 -0
  11. package/dist/src/common/classes/CwSelectList.js +12 -0
  12. package/dist/src/common/classes/CwSelectListItems.js +14 -0
  13. package/dist/src/common/functions/collections.js +18 -0
  14. package/dist/src/common/functions/colorManipulation.js +76 -0
  15. package/dist/src/common/functions/dsl/UiEventDSL.js +20 -0
  16. package/dist/src/common/functions/useSingleAndDoubleClicks.js +28 -0
  17. package/dist/src/common/interfaces/CwSelectListProps.js +1 -0
  18. package/dist/src/components/control/action/button/CwButton.js +13 -0
  19. package/dist/src/components/control/action/buttons/CwButtons.js +188 -0
  20. package/dist/src/components/control/action/contextmenu/CwContextMenu.js +43 -0
  21. package/dist/src/components/control/action/contextual-menu/CwContextualMenu.js +55 -0
  22. package/dist/src/components/control/action/search/CwSearch.d.ts +1 -1
  23. package/dist/src/components/control/action/search/CwSearch.d.ts.map +1 -1
  24. package/dist/src/components/control/action/search/CwSearch.js +67 -0
  25. package/dist/src/components/control/action/tooltip-dialog/CwTooltipDialog.js +11 -0
  26. package/dist/src/components/control/choice/checkbox/CwCheckbox.d.ts +1 -1
  27. package/dist/src/components/control/choice/checkbox/CwCheckbox.d.ts.map +1 -1
  28. package/dist/src/components/control/choice/checkbox/CwCheckbox.js +15 -0
  29. package/dist/src/components/control/choice/deprecated/MultiSelect_deprecated_.js +99 -0
  30. package/dist/src/components/control/choice/dropdown/CwDropdown.js +27 -0
  31. package/dist/src/components/control/choice/dropdown/CwDropdownContainer.d.ts.map +1 -1
  32. package/dist/src/components/control/choice/dropdown/CwDropdownContainer.js +30 -0
  33. package/dist/src/components/control/choice/dropdown/CwDropdownFilter.d.ts +10 -20
  34. package/dist/src/components/control/choice/dropdown/CwDropdownFilter.d.ts.map +1 -1
  35. package/dist/src/components/control/choice/dropdown/CwDropdownFilter.js +10 -0
  36. package/dist/src/components/control/choice/multi-filter/CwMultiFilter.js +298 -0
  37. package/dist/src/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.js +17 -0
  38. package/dist/src/components/control/choice/multiselect/CwHeadFilter.d.ts +1 -0
  39. package/dist/src/components/control/choice/multiselect/CwHeadFilter.d.ts.map +1 -1
  40. package/dist/src/components/control/choice/multiselect/CwHeadFilter.js +80 -0
  41. package/dist/src/components/control/choice/multiselect/CwMultiselect.d.ts.map +1 -1
  42. package/dist/src/components/control/choice/multiselect/CwMultiselect.js +393 -0
  43. package/dist/src/components/control/choice/multiselect/CwOptionList.d.ts +0 -1
  44. package/dist/src/components/control/choice/multiselect/CwOptionList.d.ts.map +1 -1
  45. package/dist/src/components/control/choice/multiselect/CwOptionList.js +36 -0
  46. package/dist/src/components/control/choice/option/CwOption.js +16 -0
  47. package/dist/src/components/control/choice/select/CwSelect.js +36 -0
  48. package/dist/src/components/control/choice/toggle/CwToggle.d.ts +8 -21
  49. package/dist/src/components/control/choice/toggle/CwToggle.d.ts.map +1 -1
  50. package/dist/src/components/control/choice/toggle/CwToggle.js +9 -0
  51. package/dist/src/components/control/choice/tree-view/CwTreeView.d.ts +15 -0
  52. package/dist/src/components/control/choice/tree-view/CwTreeView.d.ts.map +1 -0
  53. package/dist/src/components/control/input/any/CwInput.js +16 -0
  54. package/dist/src/components/control/input/color/CwColorPicker.d.ts +17 -0
  55. package/dist/src/components/control/input/color/CwColorPicker.d.ts.map +1 -0
  56. package/dist/src/components/control/input/color/CwColorPicker.js +210 -0
  57. package/dist/src/components/control/input/color/CwInputColor.d.ts +12 -0
  58. package/dist/src/components/control/input/color/CwInputColor.d.ts.map +1 -0
  59. package/dist/src/components/control/input/color/CwInputColor.js +142 -0
  60. package/dist/src/components/control/input/date/CwInputDate.js +29 -0
  61. package/dist/src/components/control/input/date-picker/CwInputDatePicker.js +109 -0
  62. package/dist/src/components/control/input/date-text/CwInputDateText.js +90 -0
  63. package/dist/src/components/control/input/datetime/CwInputDatetime.js +29 -0
  64. package/dist/src/components/control/input/digit/CwDigit.js +28 -0
  65. package/dist/src/components/control/input/file/CwFileUpload.js +52 -0
  66. package/dist/src/components/control/input/file/CwFileUploadMultiple.js +148 -0
  67. package/dist/src/components/control/input/image/CwInputImage.js +52 -0
  68. package/dist/src/components/control/input/image-area/CwImageArea.js +113 -0
  69. package/dist/src/components/control/input/number/CwInputNumber.js +11 -0
  70. package/dist/src/components/control/input/phone/CwInputPhone.js +24 -0
  71. package/dist/src/components/control/input/text/CwInputText.d.ts +1 -1
  72. package/dist/src/components/control/input/text/CwInputText.d.ts.map +1 -1
  73. package/dist/src/components/control/input/text/CwInputText.js +31 -0
  74. package/dist/src/components/control/input/text-area/CwTextArea.js +9 -0
  75. package/dist/src/components/control/input/time/CwTime.js +29 -0
  76. package/dist/src/components/control/input/weekday/CwWeekdaySelector.js +143 -0
  77. package/dist/src/components/custom/find-airport/CwFindAirportComp.d.ts +7 -24
  78. package/dist/src/components/custom/find-airport/CwFindAirportComp.d.ts.map +1 -1
  79. package/dist/src/components/custom/find-airport/CwFindAirportComp.js +240 -0
  80. package/dist/src/components/custom/scheduler/CwSchedulerComp.js +211 -0
  81. package/dist/src/components/custom/scheduler/CwSuperSchedulerComp.d.ts.map +1 -1
  82. package/dist/src/components/custom/scheduler/CwSuperSchedulerComp.js +269 -0
  83. package/dist/src/components/custom/scheduler/components/EventRender.js +142 -0
  84. package/dist/src/components/custom/scheduler/components/ResourceListRender.js +12 -0
  85. package/dist/src/components/custom/scheduler/components/ResourceRender.js +26 -0
  86. package/dist/src/components/custom/scheduler/components/day_headers/DayHeader.js +13 -0
  87. package/dist/src/components/custom/scheduler/components/day_headers/MonthHeader.js +12 -0
  88. package/dist/src/components/custom/scheduler/components/day_headers/MyDaysHeader.js +62 -0
  89. package/dist/src/components/custom/scheduler/components/day_headers/WeekHeader.js +13 -0
  90. package/dist/src/components/custom/scheduler/components/resources_title_list/ResourcesTitleList.js +24 -0
  91. package/dist/src/components/custom/scheduler/components/scheduler_content_area/SchedulerContentArea.js +17 -0
  92. package/dist/src/components/custom/scheduler/components/scheduler_header/SchedulerHeader.js +26 -0
  93. package/dist/src/components/custom/scheduler/components/scheduler_timeline/SchedulerTimeLine.js +23 -0
  94. package/dist/src/components/custom/scheduler/components/time_headers/TimeHeader.js +31 -0
  95. package/dist/src/components/custom/scheduler/components/time_headers/TimeHeaderRow.js +16 -0
  96. package/dist/src/components/custom/scheduler/components/time_line/TimeLine.js +12 -0
  97. package/dist/src/components/custom/scheduler/logic/dates/addMinutesToDateFromPx.js +5 -0
  98. package/dist/src/components/custom/scheduler/logic/dates/daysBetweenTwoDates.js +15 -0
  99. package/dist/src/components/custom/scheduler/logic/dates/daysBetweenTwoDatesWithoutCeil.js +5 -0
  100. package/dist/src/components/custom/scheduler/logic/dates/getFormatedTimeForHeader.js +43 -0
  101. package/dist/src/components/custom/scheduler/logic/dates/getMonthHeaderData.js +35 -0
  102. package/dist/src/components/custom/scheduler/logic/dates/getUtcToday.js +6 -0
  103. package/dist/src/components/custom/scheduler/logic/dates/getWeekHeaderDataFromWeekRange.js +20 -0
  104. package/dist/src/components/custom/scheduler/logic/dates/listOfDatesToWeeks.js +55 -0
  105. package/dist/src/components/custom/scheduler/logic/divisions/calculateDivisionType.js +13 -0
  106. package/dist/src/components/custom/scheduler/logic/divisions/calculateDivisions.js +16 -0
  107. package/dist/src/components/custom/scheduler/logic/filtering/filterEvents.js +33 -0
  108. package/dist/src/components/custom/scheduler/logic/filtering/filterResources.js +14 -0
  109. package/dist/src/components/custom/scheduler/logic/filtering/hasSameProperties.js +10 -0
  110. package/dist/src/components/custom/scheduler/logic/onDrop/OnDrop.js +45 -0
  111. package/dist/src/components/custom/scheduler/logic/pixels/getHeightLineScheduler.js +14 -0
  112. package/dist/src/components/custom/scheduler/logic/pixels/getPixelsForEvent.js +32 -0
  113. package/dist/src/components/custom/scheduler/logic/pixels/heightScheduler.js +14 -0
  114. package/dist/src/components/custom/scheduler/logic/pixels/heightSchedulerPinned.js +9 -0
  115. package/dist/src/components/custom/scheduler/logic/state_handle/doubleClickOnResource.js +5 -0
  116. package/dist/src/components/custom/scheduler/logic/state_handle/handleResourceChange.js +11 -0
  117. package/dist/src/components/custom/scheduler/logic/state_handle/onDragOver.js +9 -0
  118. package/dist/src/components/custom/scheduler/logic/state_handle/onDropEventToResource.js +3 -0
  119. package/dist/src/components/custom/scheduler/logic/strings/compareStrings.js +7 -0
  120. package/dist/src/components/custom/scheduler/logic/strings/getGUID.js +7 -0
  121. package/dist/src/components/custom/scheduler/logic/ui/checkIfSlotAvailable.js +8 -0
  122. package/dist/src/components/custom/scheduler/logic/ui/getEventsOfResource.js +45 -0
  123. package/dist/src/components/custom/scheduler/logic/ui/getTimeHeaders.js +35 -0
  124. package/dist/src/components/custom/scheduler/logic/ui/isAllowedToMove.js +19 -0
  125. package/dist/src/components/custom/scheduler/logic/ui/updateResourceVisibility.js +15 -0
  126. package/dist/src/components/custom/scheduler/state/CblDragAndDrop.js +18 -0
  127. package/dist/src/components/custom/scheduler/state/CwSchedulerProps.js +1 -0
  128. package/dist/src/components/custom/scheduler/state/Resource.js +18 -0
  129. package/dist/src/components/custom/scheduler/state/State.js +1 -0
  130. package/dist/src/components/custom/scheduler/state/cblEvent.js +28 -0
  131. package/dist/src/components/custom/scheduler/state/cblEventCompProps.js +1 -0
  132. package/dist/src/components/custom/scheduler/state/resourceCompProps2.js +1 -0
  133. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.d.ts.map +1 -1
  134. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.js +123 -0
  135. package/dist/src/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.js +118 -0
  136. package/dist/src/components/custom/scheduler-new/presentation/SchedulerPresenter.js +166 -0
  137. package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderDivision.js +26 -0
  138. package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderTitle.js +8 -0
  139. package/dist/src/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.js +86 -0
  140. package/dist/src/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.js +1 -0
  141. package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.js +60 -0
  142. package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts.map +1 -1
  143. package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.js +24 -0
  144. package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.d.ts.map +1 -1
  145. package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.js +150 -0
  146. package/dist/src/components/custom/scheduler-new/presentation/components/row/EventSideDrag.js +11 -0
  147. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts.map +1 -1
  148. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.js +176 -0
  149. package/dist/src/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.js +8 -0
  150. package/dist/src/components/custom/scheduler-new/presentation/components/timeline/TimeLine.js +39 -0
  151. package/dist/src/components/custom/scheduler-new/presentation/components/timeline/WeekEndLine.js +8 -0
  152. package/dist/src/components/custom/scheduler-new/presentation/helpers.js +43 -0
  153. package/dist/src/components/custom/scheduler-new/presentation/logic/WeekendCalc.d.ts.map +1 -1
  154. package/dist/src/components/custom/scheduler-new/presentation/logic/WeekendCalc.js +24 -0
  155. package/dist/src/components/custom/scheduler-new/presentation/logic/dateFromPercentage.js +7 -0
  156. package/dist/src/components/custom/scheduler-new/presentation/logic/eventIsVisible.js +7 -0
  157. package/dist/src/components/custom/scheduler-new/presentation/logic/getDefaultDivisions.js +113 -0
  158. package/dist/src/components/custom/scheduler-new/presentation/logic/getDivisions.js +21 -0
  159. package/dist/src/components/custom/scheduler-new/presentation/logic/getEventSizes.js +30 -0
  160. package/dist/src/components/custom/scheduler-new/presentation/logic/getLinesByDivisions.js +13 -0
  161. package/dist/src/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.js +7 -0
  162. package/dist/src/components/custom/scheduler-new/presentation/logic/separateEventsToInnerRows.js +32 -0
  163. package/dist/src/components/custom/scheduler-new/presentation/logic/sortByCategoryAndTitle.js +12 -0
  164. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerState.js +1 -0
  165. package/dist/src/components/custom/scheduler-new/presentation/state/ui/WeekRange.js +1 -0
  166. package/dist/src/components/custom/scheduler-temporal/CwSchedulerComp2.js +267 -0
  167. package/dist/src/components/custom/scheduler-temporal/CwSuperSchedulerComp.d.ts.map +1 -1
  168. package/dist/src/components/custom/scheduler-temporal/CwSuperSchedulerComp.js +269 -0
  169. package/dist/src/components/custom/scheduler-temporal/components/EventRender.js +142 -0
  170. package/dist/src/components/custom/scheduler-temporal/components/ResourceListRender.js +12 -0
  171. package/dist/src/components/custom/scheduler-temporal/components/ResourceRender.js +26 -0
  172. package/dist/src/components/custom/scheduler-temporal/components/day_headers/DayHeader.js +13 -0
  173. package/dist/src/components/custom/scheduler-temporal/components/day_headers/MonthHeader.js +12 -0
  174. package/dist/src/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.js +62 -0
  175. package/dist/src/components/custom/scheduler-temporal/components/day_headers/WeekHeader.js +13 -0
  176. package/dist/src/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.js +22 -0
  177. package/dist/src/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.js +17 -0
  178. package/dist/src/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.js +26 -0
  179. package/dist/src/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.js +23 -0
  180. package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeader.js +31 -0
  181. package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.js +16 -0
  182. package/dist/src/components/custom/scheduler-temporal/components/time_line/TimeLine.js +12 -0
  183. package/dist/src/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.js +5 -0
  184. package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.js +15 -0
  185. package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.js +5 -0
  186. package/dist/src/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.js +43 -0
  187. package/dist/src/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.js +35 -0
  188. package/dist/src/components/custom/scheduler-temporal/logic/dates/getUtcToday.js +6 -0
  189. package/dist/src/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.js +20 -0
  190. package/dist/src/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.js +55 -0
  191. package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.js +13 -0
  192. package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.js +16 -0
  193. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.js +10 -0
  194. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterEvents.js +34 -0
  195. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterResources.js +14 -0
  196. package/dist/src/components/custom/scheduler-temporal/logic/filtering/hasSameProperties.js +10 -0
  197. package/dist/src/components/custom/scheduler-temporal/logic/onDrop/OnDrop.js +36 -0
  198. package/dist/src/components/custom/scheduler-temporal/logic/pixels/getHeightLineScheduler.js +14 -0
  199. package/dist/src/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.js +32 -0
  200. package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightScheduler.js +14 -0
  201. package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightSchedulerPinned.js +9 -0
  202. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.js +5 -0
  203. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handlePropChanges.js +178 -0
  204. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handleResourceChange.js +11 -0
  205. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDragOver.js +9 -0
  206. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.js +3 -0
  207. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.js +3 -0
  208. package/dist/src/components/custom/scheduler-temporal/logic/strings/compareStrings.js +7 -0
  209. package/dist/src/components/custom/scheduler-temporal/logic/strings/getGUID.js +7 -0
  210. package/dist/src/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.js +9 -0
  211. package/dist/src/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.js +92 -0
  212. package/dist/src/components/custom/scheduler-temporal/logic/ui/getHasPropsChanged.js +242 -0
  213. package/dist/src/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.js +35 -0
  214. package/dist/src/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.js +19 -0
  215. package/dist/src/components/custom/scheduler-temporal/logic/ui/shouldTriggerScroll.js +241 -0
  216. package/dist/src/components/custom/scheduler-temporal/logic/ui/updateResourceVisibility.js +15 -0
  217. package/dist/src/components/custom/scheduler-temporal/state/CblDragAndDrop.js +18 -0
  218. package/dist/src/components/custom/scheduler-temporal/state/CwSchedulerProps.js +1 -0
  219. package/dist/src/components/custom/scheduler-temporal/state/Resource.js +18 -0
  220. package/dist/src/components/custom/scheduler-temporal/state/State.js +1 -0
  221. package/dist/src/components/custom/scheduler-temporal/state/cblEvent.js +28 -0
  222. package/dist/src/components/custom/scheduler-temporal/state/cblEventCompProps.js +1 -0
  223. package/dist/src/components/custom/scheduler-temporal/state/resourceCompProps2.js +1 -0
  224. package/dist/src/components/custom/super-scheduler/PinRowHeader.d.ts.map +1 -1
  225. package/dist/src/components/custom/super-scheduler/PinRowHeader.js +53 -0
  226. package/dist/src/components/custom/super-scheduler/SuperScheduler.js +23 -0
  227. package/dist/src/components/custom/super-scheduler/SuperSchedulerEvents.js +15 -0
  228. package/dist/src/components/custom/super-scheduler/SuperSchedulerPresenter.js +45 -0
  229. package/dist/src/components/display/data/accordion/CwAccordionContainer.js +20 -0
  230. package/dist/src/components/display/data/generic_tooltip/CwGenericTooltip.js +138 -0
  231. package/dist/src/components/display/data/table/CwTable.d.ts.map +1 -1
  232. package/dist/src/components/display/data/table/CwTable.js +203 -0
  233. package/dist/src/components/display/graphics/icon/CwIcon.d.ts +5 -1
  234. package/dist/src/components/display/graphics/icon/CwIcon.d.ts.map +1 -1
  235. package/dist/src/components/display/graphics/icon/CwIcon.js +23 -0
  236. package/dist/src/components/display/graphics/image-gallery/CwImageGallery.d.ts +30 -0
  237. package/dist/src/components/display/graphics/image-gallery/CwImageGallery.d.ts.map +1 -0
  238. package/dist/src/components/display/graphics/image-zoom/CwImageZoom.d.ts +21 -0
  239. package/dist/src/components/display/graphics/image-zoom/CwImageZoom.d.ts.map +1 -0
  240. package/dist/src/components/display/graphics/loading/CwLoading.d.ts.map +1 -1
  241. package/dist/src/components/display/graphics/loading/CwLoading.js +27 -0
  242. package/dist/src/components/display/graphics/loading-small/CwLoadingSmall.js +20 -0
  243. package/dist/src/components/display/text/heading/CwHeadingMain.js +5 -0
  244. package/dist/src/components/display/text/heading/CwHeadingSecond.js +5 -0
  245. package/dist/src/components/display/text/label/CwLabel.js +13 -0
  246. package/dist/src/components/display/text/message/CwMessage.d.ts +49 -2
  247. package/dist/src/components/display/text/message/CwMessage.d.ts.map +1 -1
  248. package/dist/src/components/display/text/message/CwMessage.js +75 -0
  249. package/dist/src/components/display/text/note/CwNote.d.ts +48 -0
  250. package/dist/src/components/display/text/note/CwNote.d.ts.map +1 -0
  251. package/dist/src/components/display/text/note/CwNote.js +78 -0
  252. package/dist/src/components/display/text/tag/CwChip.d.ts +1 -1
  253. package/dist/src/components/display/text/tag/CwChip.d.ts.map +1 -1
  254. package/dist/src/components/display/text/tag/CwChip.js +57 -0
  255. package/dist/src/components/display/text/tag/CwTag.d.ts +0 -1
  256. package/dist/src/components/display/text/tag/CwTag.d.ts.map +1 -1
  257. package/dist/src/components/display/text/tag/CwTag.js +21 -0
  258. package/dist/src/components/display/text/tooltip/CwTooltip.js +4 -0
  259. package/dist/src/components/layout/align/CwAlign.js +54 -0
  260. package/dist/src/components/layout/card/CwCard.js +55 -0
  261. package/dist/src/components/layout/card/CwCardList.d.ts +3 -5
  262. package/dist/src/components/layout/card/CwCardList.d.ts.map +1 -1
  263. package/dist/src/components/layout/card/CwCardList.js +38 -0
  264. package/dist/src/components/layout/confirmation-popup/CwConfirmationPopup.d.ts +18 -0
  265. package/dist/src/components/layout/confirmation-popup/CwConfirmationPopup.d.ts.map +1 -0
  266. package/dist/src/components/layout/dialog/CwDialog.d.ts +3 -1
  267. package/dist/src/components/layout/dialog/CwDialog.d.ts.map +1 -1
  268. package/dist/src/components/layout/dialog/CwDialog.js +255 -0
  269. package/dist/src/components/layout/dialog/CwDialogManager.js +44 -0
  270. package/dist/src/components/layout/list/details/CwExpandable.js +28 -0
  271. package/dist/src/components/layout/list/key-value/CwKeyValueList.d.ts +1 -0
  272. package/dist/src/components/layout/list/key-value/CwKeyValueList.d.ts.map +1 -1
  273. package/dist/src/components/layout/list/key-value/CwKeyValueList.js +23 -0
  274. package/dist/src/components/layout/list/sortable/CwSortableList.d.ts +60 -0
  275. package/dist/src/components/layout/list/sortable/CwSortableList.d.ts.map +1 -0
  276. package/dist/src/components/layout/list/sortable/CwSortableList.js +73 -0
  277. package/dist/src/components/layout/list/sortable/useSortableList.d.ts +58 -0
  278. package/dist/src/components/layout/list/sortable/useSortableList.d.ts.map +1 -0
  279. package/dist/src/components/layout/list/sortable/useSortableList.js +53 -0
  280. package/dist/src/components/layout/modal/CwModalReportFunctional.js +23 -0
  281. package/dist/src/components/layout/modal/hover/CwModalHover.js +61 -0
  282. package/dist/src/components/layout/modal/legacy/cw_modal.d.ts.map +1 -1
  283. package/dist/src/components/layout/modal/legacy/cw_modal.js +44 -0
  284. package/dist/src/components/layout/modal/legacy/cw_modal_confirm.js +39 -0
  285. package/dist/src/components/layout/modal/legacy/cw_modal_iframe.js +44 -0
  286. package/dist/src/components/layout/modal/legacy/cw_modal_report.js +26 -0
  287. package/dist/{components/layout/table/grouped/CwTableGrouped.d.ts → src/components/layout/table/grouped/CwTableGrouped.js} +13 -23
  288. package/dist/src/components/layout/tabs/CwTabs.d.ts +1 -2
  289. package/dist/src/components/layout/tabs/CwTabs.d.ts.map +1 -1
  290. package/dist/src/components/layout/tabs/CwTabs.js +53 -0
  291. package/dist/src/dev/index.d.ts +5 -0
  292. package/dist/src/dev/index.d.ts.map +1 -0
  293. package/dist/src/dev/palette.d.ts +4 -0
  294. package/dist/src/dev/palette.d.ts.map +1 -0
  295. package/dist/src/dev/previews.d.ts +3 -0
  296. package/dist/src/dev/previews.d.ts.map +1 -0
  297. package/dist/src/dev/useInitial.d.ts +3 -0
  298. package/dist/src/dev/useInitial.d.ts.map +1 -0
  299. package/dist/src/index.d.ts +10 -2
  300. package/dist/src/index.d.ts.map +1 -1
  301. package/dist/src/index.js +187 -0
  302. package/dist/test/components/custom/new-scheduler/presentation/logic/getDefaultDivisions.test.js +48 -0
  303. package/dist/test/components/custom/new-scheduler/presentation/logic/getEventSizes.test.d.ts +2 -0
  304. package/dist/test/components/custom/new-scheduler/presentation/logic/getEventSizes.test.d.ts.map +1 -0
  305. package/dist/test/components/custom/new-scheduler/presentation/logic/hoursBetween.test.js +15 -0
  306. package/dist/test/components/custom/new-scheduler/presentation/logic/monthDivisions.test.js +42 -0
  307. package/dist/test/components/custom/new-scheduler/presentation/logic/weekendCalc.test.js +30 -0
  308. package/dist/test/components/custom/scheduler/addMinutesToDateFromPx.test.js +43 -0
  309. package/dist/test/components/custom/scheduler/checkIfSlotAvailable.test.js +30 -0
  310. package/dist/test/components/custom/scheduler/daysBetweenTwoDates.test.js +61 -0
  311. package/dist/test/components/custom/scheduler/daysBetweenTwoDatesWithoutCeilForEvent.test.js +27 -0
  312. package/dist/test/components/custom/scheduler/getGUID.test.js +30 -0
  313. package/dist/test/components/custom/scheduler/getPixelsForEvent.test.js +38 -0
  314. package/dist/test/components/custom/scheduler/getTimeHeaders.test.js +35 -0
  315. package/dist/test/components/custom/scheduler/hasSameProperties.test.js +51 -0
  316. package/dist/test/components/custom/scheduler/isAllowedToMove.test.js +28 -0
  317. package/dist/test/components/custom/scheduler/listOfDatesToWeeks.test.js +72 -0
  318. package/dist/test/jest.setup.js +1 -0
  319. package/package.json +9 -5
  320. package/dist/common/classes/CwSelectList.d.ts +0 -8
  321. package/dist/common/classes/CwSelectList.d.ts.map +0 -1
  322. package/dist/common/classes/CwSelectListItems.d.ts +0 -9
  323. package/dist/common/classes/CwSelectListItems.d.ts.map +0 -1
  324. package/dist/common/functions/collections.d.ts +0 -15
  325. package/dist/common/functions/collections.d.ts.map +0 -1
  326. package/dist/common/functions/colorManipulation.d.ts +0 -6
  327. package/dist/common/functions/colorManipulation.d.ts.map +0 -1
  328. package/dist/common/functions/dsl/UiEventDSL.d.ts +0 -9
  329. package/dist/common/functions/dsl/UiEventDSL.d.ts.map +0 -1
  330. package/dist/common/functions/useSingleAndDoubleClicks.d.ts +0 -7
  331. package/dist/common/functions/useSingleAndDoubleClicks.d.ts.map +0 -1
  332. package/dist/common/interfaces/CwSelectListProps.d.ts +0 -9
  333. package/dist/common/interfaces/CwSelectListProps.d.ts.map +0 -1
  334. package/dist/components/control/action/button/CwButton.d.ts +0 -26
  335. package/dist/components/control/action/button/CwButton.d.ts.map +0 -1
  336. package/dist/components/control/action/buttons/CwButtons.d.ts +0 -59
  337. package/dist/components/control/action/buttons/CwButtons.d.ts.map +0 -1
  338. package/dist/components/control/action/contextmenu/CwContextMenu.d.ts +0 -23
  339. package/dist/components/control/action/contextmenu/CwContextMenu.d.ts.map +0 -1
  340. package/dist/components/control/action/contextual-menu/CwContextualMenu.d.ts +0 -29
  341. package/dist/components/control/action/contextual-menu/CwContextualMenu.d.ts.map +0 -1
  342. package/dist/components/control/action/search/CwSearch.d.ts +0 -16
  343. package/dist/components/control/action/search/CwSearch.d.ts.map +0 -1
  344. package/dist/components/control/choice/checkbox/CwCheckbox.d.ts +0 -17
  345. package/dist/components/control/choice/checkbox/CwCheckbox.d.ts.map +0 -1
  346. package/dist/components/control/choice/deprecated/MultiSelect_deprecated_.d.ts +0 -24
  347. package/dist/components/control/choice/deprecated/MultiSelect_deprecated_.d.ts.map +0 -1
  348. package/dist/components/control/choice/dropdown/CwDropdown.d.ts +0 -19
  349. package/dist/components/control/choice/dropdown/CwDropdown.d.ts.map +0 -1
  350. package/dist/components/control/choice/dropdown/CwDropdownContainer.d.ts +0 -17
  351. package/dist/components/control/choice/dropdown/CwDropdownContainer.d.ts.map +0 -1
  352. package/dist/components/control/choice/dropdown/CwDropdownFilter.d.ts +0 -28
  353. package/dist/components/control/choice/dropdown/CwDropdownFilter.d.ts.map +0 -1
  354. package/dist/components/control/choice/dropdown/CwDropdownNavigation.d.ts +0 -21
  355. package/dist/components/control/choice/dropdown/CwDropdownNavigation.d.ts.map +0 -1
  356. package/dist/components/control/choice/multi-filter/CwMultiFilter.d.ts +0 -158
  357. package/dist/components/control/choice/multi-filter/CwMultiFilter.d.ts.map +0 -1
  358. package/dist/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.d.ts +0 -33
  359. package/dist/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.d.ts.map +0 -1
  360. package/dist/components/control/choice/multiselect/CwHeadFilter.d.ts +0 -16
  361. package/dist/components/control/choice/multiselect/CwHeadFilter.d.ts.map +0 -1
  362. package/dist/components/control/choice/multiselect/CwMultiselect.d.ts +0 -13
  363. package/dist/components/control/choice/multiselect/CwMultiselect.d.ts.map +0 -1
  364. package/dist/components/control/choice/multiselect/CwOptionList.d.ts +0 -15
  365. package/dist/components/control/choice/multiselect/CwOptionList.d.ts.map +0 -1
  366. package/dist/components/control/choice/option/CwOption.d.ts +0 -17
  367. package/dist/components/control/choice/option/CwOption.d.ts.map +0 -1
  368. package/dist/components/control/choice/select/CwSelect.d.ts +0 -48
  369. package/dist/components/control/choice/select/CwSelect.d.ts.map +0 -1
  370. package/dist/components/control/choice/toggle/CwToggle.d.ts +0 -28
  371. package/dist/components/control/choice/toggle/CwToggle.d.ts.map +0 -1
  372. package/dist/components/control/input/any/CwInput.d.ts +0 -17
  373. package/dist/components/control/input/any/CwInput.d.ts.map +0 -1
  374. package/dist/components/control/input/date/CwInputDate.d.ts +0 -40
  375. package/dist/components/control/input/date/CwInputDate.d.ts.map +0 -1
  376. package/dist/components/control/input/date-picker/CwInputDatePicker.d.ts +0 -7
  377. package/dist/components/control/input/date-picker/CwInputDatePicker.d.ts.map +0 -1
  378. package/dist/components/control/input/date-text/CwInputDateText.d.ts +0 -38
  379. package/dist/components/control/input/date-text/CwInputDateText.d.ts.map +0 -1
  380. package/dist/components/control/input/datetime/CwInputDatetime.d.ts +0 -40
  381. package/dist/components/control/input/datetime/CwInputDatetime.d.ts.map +0 -1
  382. package/dist/components/control/input/digit/CwDigit.d.ts +0 -40
  383. package/dist/components/control/input/digit/CwDigit.d.ts.map +0 -1
  384. package/dist/components/control/input/file/CwFileUpload.d.ts +0 -18
  385. package/dist/components/control/input/file/CwFileUpload.d.ts.map +0 -1
  386. package/dist/components/control/input/file/CwFileUploadMultiple.d.ts +0 -15
  387. package/dist/components/control/input/file/CwFileUploadMultiple.d.ts.map +0 -1
  388. package/dist/components/control/input/image/CwInputImage.d.ts +0 -7
  389. package/dist/components/control/input/image/CwInputImage.d.ts.map +0 -1
  390. package/dist/components/control/input/image-area/CwImageArea.d.ts +0 -53
  391. package/dist/components/control/input/image-area/CwImageArea.d.ts.map +0 -1
  392. package/dist/components/control/input/number/CwInputNumber.d.ts +0 -20
  393. package/dist/components/control/input/number/CwInputNumber.d.ts.map +0 -1
  394. package/dist/components/control/input/phone/CwInputPhone.d.ts +0 -36
  395. package/dist/components/control/input/phone/CwInputPhone.d.ts.map +0 -1
  396. package/dist/components/control/input/text/CwInputText.d.ts +0 -40
  397. package/dist/components/control/input/text/CwInputText.d.ts.map +0 -1
  398. package/dist/components/control/input/text-area/CwTextArea.d.ts +0 -24
  399. package/dist/components/control/input/text-area/CwTextArea.d.ts.map +0 -1
  400. package/dist/components/control/input/time/CwTime.d.ts +0 -40
  401. package/dist/components/control/input/time/CwTime.d.ts.map +0 -1
  402. package/dist/components/control/input/weekday/CwWeekdaySelector.d.ts +0 -53
  403. package/dist/components/control/input/weekday/CwWeekdaySelector.d.ts.map +0 -1
  404. package/dist/components/custom/find-airport/CwFindAirportComp.d.ts +0 -35
  405. package/dist/components/custom/find-airport/CwFindAirportComp.d.ts.map +0 -1
  406. package/dist/components/custom/scheduler/CwSchedulerComp.d.ts +0 -19
  407. package/dist/components/custom/scheduler/CwSchedulerComp.d.ts.map +0 -1
  408. package/dist/components/custom/scheduler/CwSuperSchedulerComp.d.ts +0 -86
  409. package/dist/components/custom/scheduler/CwSuperSchedulerComp.d.ts.map +0 -1
  410. package/dist/components/custom/scheduler/components/EventRender.d.ts +0 -10
  411. package/dist/components/custom/scheduler/components/EventRender.d.ts.map +0 -1
  412. package/dist/components/custom/scheduler/components/ResourceListRender.d.ts +0 -20
  413. package/dist/components/custom/scheduler/components/ResourceListRender.d.ts.map +0 -1
  414. package/dist/components/custom/scheduler/components/ResourceRender.d.ts +0 -14
  415. package/dist/components/custom/scheduler/components/ResourceRender.d.ts.map +0 -1
  416. package/dist/components/custom/scheduler/components/day_headers/DayHeader.d.ts +0 -11
  417. package/dist/components/custom/scheduler/components/day_headers/DayHeader.d.ts.map +0 -1
  418. package/dist/components/custom/scheduler/components/day_headers/MonthHeader.d.ts +0 -11
  419. package/dist/components/custom/scheduler/components/day_headers/MonthHeader.d.ts.map +0 -1
  420. package/dist/components/custom/scheduler/components/day_headers/MyDaysHeader.d.ts +0 -13
  421. package/dist/components/custom/scheduler/components/day_headers/MyDaysHeader.d.ts.map +0 -1
  422. package/dist/components/custom/scheduler/components/day_headers/WeekHeader.d.ts +0 -11
  423. package/dist/components/custom/scheduler/components/day_headers/WeekHeader.d.ts.map +0 -1
  424. package/dist/components/custom/scheduler/components/resources_title_list/ResourcesTitleList.d.ts +0 -14
  425. package/dist/components/custom/scheduler/components/resources_title_list/ResourcesTitleList.d.ts.map +0 -1
  426. package/dist/components/custom/scheduler/components/scheduler_content_area/SchedulerContentArea.d.ts +0 -23
  427. package/dist/components/custom/scheduler/components/scheduler_content_area/SchedulerContentArea.d.ts.map +0 -1
  428. package/dist/components/custom/scheduler/components/scheduler_header/SchedulerHeader.d.ts +0 -8
  429. package/dist/components/custom/scheduler/components/scheduler_header/SchedulerHeader.d.ts.map +0 -1
  430. package/dist/components/custom/scheduler/components/scheduler_timeline/SchedulerTimeLine.d.ts +0 -12
  431. package/dist/components/custom/scheduler/components/scheduler_timeline/SchedulerTimeLine.d.ts.map +0 -1
  432. package/dist/components/custom/scheduler/components/time_headers/TimeHeader.d.ts +0 -12
  433. package/dist/components/custom/scheduler/components/time_headers/TimeHeader.d.ts.map +0 -1
  434. package/dist/components/custom/scheduler/components/time_headers/TimeHeaderRow.d.ts +0 -10
  435. package/dist/components/custom/scheduler/components/time_headers/TimeHeaderRow.d.ts.map +0 -1
  436. package/dist/components/custom/scheduler/components/time_line/TimeLine.d.ts +0 -12
  437. package/dist/components/custom/scheduler/components/time_line/TimeLine.d.ts.map +0 -1
  438. package/dist/components/custom/scheduler/logic/dates/addMinutesToDateFromPx.d.ts +0 -2
  439. package/dist/components/custom/scheduler/logic/dates/addMinutesToDateFromPx.d.ts.map +0 -1
  440. package/dist/components/custom/scheduler/logic/dates/daysBetweenTwoDates.d.ts +0 -2
  441. package/dist/components/custom/scheduler/logic/dates/daysBetweenTwoDates.d.ts.map +0 -1
  442. package/dist/components/custom/scheduler/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts +0 -2
  443. package/dist/components/custom/scheduler/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts.map +0 -1
  444. package/dist/components/custom/scheduler/logic/dates/getFormatedTimeForHeader.d.ts +0 -7
  445. package/dist/components/custom/scheduler/logic/dates/getFormatedTimeForHeader.d.ts.map +0 -1
  446. package/dist/components/custom/scheduler/logic/dates/getMonthHeaderData.d.ts +0 -10
  447. package/dist/components/custom/scheduler/logic/dates/getMonthHeaderData.d.ts.map +0 -1
  448. package/dist/components/custom/scheduler/logic/dates/getUtcToday.d.ts +0 -2
  449. package/dist/components/custom/scheduler/logic/dates/getUtcToday.d.ts.map +0 -1
  450. package/dist/components/custom/scheduler/logic/dates/getWeekHeaderDataFromWeekRange.d.ts +0 -7
  451. package/dist/components/custom/scheduler/logic/dates/getWeekHeaderDataFromWeekRange.d.ts.map +0 -1
  452. package/dist/components/custom/scheduler/logic/dates/listOfDatesToWeeks.d.ts +0 -8
  453. package/dist/components/custom/scheduler/logic/dates/listOfDatesToWeeks.d.ts.map +0 -1
  454. package/dist/components/custom/scheduler/logic/divisions/calculateDivisionType.d.ts +0 -2
  455. package/dist/components/custom/scheduler/logic/divisions/calculateDivisionType.d.ts.map +0 -1
  456. package/dist/components/custom/scheduler/logic/divisions/calculateDivisions.d.ts +0 -2
  457. package/dist/components/custom/scheduler/logic/divisions/calculateDivisions.d.ts.map +0 -1
  458. package/dist/components/custom/scheduler/logic/filtering/filterEvents.d.ts +0 -3
  459. package/dist/components/custom/scheduler/logic/filtering/filterEvents.d.ts.map +0 -1
  460. package/dist/components/custom/scheduler/logic/filtering/filterResources.d.ts +0 -3
  461. package/dist/components/custom/scheduler/logic/filtering/filterResources.d.ts.map +0 -1
  462. package/dist/components/custom/scheduler/logic/onDrop/OnDrop.d.ts +0 -13
  463. package/dist/components/custom/scheduler/logic/onDrop/OnDrop.d.ts.map +0 -1
  464. package/dist/components/custom/scheduler/logic/pixels/getPixelsForEvent.d.ts +0 -17
  465. package/dist/components/custom/scheduler/logic/pixels/getPixelsForEvent.d.ts.map +0 -1
  466. package/dist/components/custom/scheduler/logic/pixels/heightScheduler.d.ts +0 -3
  467. package/dist/components/custom/scheduler/logic/pixels/heightScheduler.d.ts.map +0 -1
  468. package/dist/components/custom/scheduler/logic/state_handle/doubleClickOnResource.d.ts +0 -4
  469. package/dist/components/custom/scheduler/logic/state_handle/doubleClickOnResource.d.ts.map +0 -1
  470. package/dist/components/custom/scheduler/logic/state_handle/onDragOver.d.ts +0 -2
  471. package/dist/components/custom/scheduler/logic/state_handle/onDragOver.d.ts.map +0 -1
  472. package/dist/components/custom/scheduler/logic/state_handle/onDropEventToResource.d.ts +0 -5
  473. package/dist/components/custom/scheduler/logic/state_handle/onDropEventToResource.d.ts.map +0 -1
  474. package/dist/components/custom/scheduler/logic/strings/compareStrings.d.ts +0 -2
  475. package/dist/components/custom/scheduler/logic/strings/compareStrings.d.ts.map +0 -1
  476. package/dist/components/custom/scheduler/logic/strings/getGUID.d.ts +0 -2
  477. package/dist/components/custom/scheduler/logic/strings/getGUID.d.ts.map +0 -1
  478. package/dist/components/custom/scheduler/logic/ui/checkIfSlotAvailable.d.ts +0 -3
  479. package/dist/components/custom/scheduler/logic/ui/checkIfSlotAvailable.d.ts.map +0 -1
  480. package/dist/components/custom/scheduler/logic/ui/getEventsOfResource.d.ts +0 -4
  481. package/dist/components/custom/scheduler/logic/ui/getEventsOfResource.d.ts.map +0 -1
  482. package/dist/components/custom/scheduler/logic/ui/getTimeHeaders.d.ts +0 -2
  483. package/dist/components/custom/scheduler/logic/ui/getTimeHeaders.d.ts.map +0 -1
  484. package/dist/components/custom/scheduler/logic/ui/isAllowedToMove.d.ts +0 -3
  485. package/dist/components/custom/scheduler/logic/ui/isAllowedToMove.d.ts.map +0 -1
  486. package/dist/components/custom/scheduler/state/CblDragAndDrop.d.ts +0 -11
  487. package/dist/components/custom/scheduler/state/CblDragAndDrop.d.ts.map +0 -1
  488. package/dist/components/custom/scheduler/state/CwSchedulerProps.d.ts +0 -43
  489. package/dist/components/custom/scheduler/state/CwSchedulerProps.d.ts.map +0 -1
  490. package/dist/components/custom/scheduler/state/Resource.d.ts +0 -14
  491. package/dist/components/custom/scheduler/state/Resource.d.ts.map +0 -1
  492. package/dist/components/custom/scheduler/state/State.d.ts +0 -19
  493. package/dist/components/custom/scheduler/state/State.d.ts.map +0 -1
  494. package/dist/components/custom/scheduler/state/cblEvent.d.ts +0 -18
  495. package/dist/components/custom/scheduler/state/cblEvent.d.ts.map +0 -1
  496. package/dist/components/custom/scheduler/state/cblEventCompProps.d.ts +0 -7
  497. package/dist/components/custom/scheduler/state/cblEventCompProps.d.ts.map +0 -1
  498. package/dist/components/custom/scheduler/state/resourceCompProps2.d.ts +0 -6
  499. package/dist/components/custom/scheduler/state/resourceCompProps2.d.ts.map +0 -1
  500. package/dist/components/custom/scheduler-new/presentation/NewScheduler.d.ts +0 -29
  501. package/dist/components/custom/scheduler-new/presentation/NewScheduler.d.ts.map +0 -1
  502. package/dist/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.d.ts +0 -80
  503. package/dist/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.d.ts.map +0 -1
  504. package/dist/components/custom/scheduler-new/presentation/SchedulerPresenter.d.ts +0 -27
  505. package/dist/components/custom/scheduler-new/presentation/SchedulerPresenter.d.ts.map +0 -1
  506. package/dist/components/custom/scheduler-new/presentation/components/header/HeaderDivision.d.ts +0 -19
  507. package/dist/components/custom/scheduler-new/presentation/components/header/HeaderDivision.d.ts.map +0 -1
  508. package/dist/components/custom/scheduler-new/presentation/components/header/HeaderTitle.d.ts +0 -10
  509. package/dist/components/custom/scheduler-new/presentation/components/header/HeaderTitle.d.ts.map +0 -1
  510. package/dist/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.d.ts +0 -5
  511. package/dist/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.d.ts.map +0 -1
  512. package/dist/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.d.ts +0 -17
  513. package/dist/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.d.ts.map +0 -1
  514. package/dist/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.d.ts +0 -8
  515. package/dist/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.d.ts.map +0 -1
  516. package/dist/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts +0 -17
  517. package/dist/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts.map +0 -1
  518. package/dist/components/custom/scheduler-new/presentation/components/row/Event.d.ts +0 -34
  519. package/dist/components/custom/scheduler-new/presentation/components/row/Event.d.ts.map +0 -1
  520. package/dist/components/custom/scheduler-new/presentation/components/row/EventSideDrag.d.ts +0 -8
  521. package/dist/components/custom/scheduler-new/presentation/components/row/EventSideDrag.d.ts.map +0 -1
  522. package/dist/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts +0 -27
  523. package/dist/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts.map +0 -1
  524. package/dist/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.d.ts +0 -10
  525. package/dist/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.d.ts.map +0 -1
  526. package/dist/components/custom/scheduler-new/presentation/components/timeline/TimeLine.d.ts +0 -15
  527. package/dist/components/custom/scheduler-new/presentation/components/timeline/TimeLine.d.ts.map +0 -1
  528. package/dist/components/custom/scheduler-new/presentation/components/timeline/WeekEndLine.d.ts +0 -11
  529. package/dist/components/custom/scheduler-new/presentation/components/timeline/WeekEndLine.d.ts.map +0 -1
  530. package/dist/components/custom/scheduler-new/presentation/helpers.d.ts +0 -19
  531. package/dist/components/custom/scheduler-new/presentation/helpers.d.ts.map +0 -1
  532. package/dist/components/custom/scheduler-new/presentation/logic/WeekendCalc.d.ts +0 -4
  533. package/dist/components/custom/scheduler-new/presentation/logic/WeekendCalc.d.ts.map +0 -1
  534. package/dist/components/custom/scheduler-new/presentation/logic/dateFromPercentage.d.ts +0 -2
  535. package/dist/components/custom/scheduler-new/presentation/logic/dateFromPercentage.d.ts.map +0 -1
  536. package/dist/components/custom/scheduler-new/presentation/logic/eventIsVisible.d.ts +0 -2
  537. package/dist/components/custom/scheduler-new/presentation/logic/eventIsVisible.d.ts.map +0 -1
  538. package/dist/components/custom/scheduler-new/presentation/logic/getDefaultDivisions.d.ts +0 -6
  539. package/dist/components/custom/scheduler-new/presentation/logic/getDefaultDivisions.d.ts.map +0 -1
  540. package/dist/components/custom/scheduler-new/presentation/logic/getDivisions.d.ts +0 -3
  541. package/dist/components/custom/scheduler-new/presentation/logic/getDivisions.d.ts.map +0 -1
  542. package/dist/components/custom/scheduler-new/presentation/logic/getEventSizes.d.ts +0 -6
  543. package/dist/components/custom/scheduler-new/presentation/logic/getEventSizes.d.ts.map +0 -1
  544. package/dist/components/custom/scheduler-new/presentation/logic/getLinesByDivisions.d.ts +0 -4
  545. package/dist/components/custom/scheduler-new/presentation/logic/getLinesByDivisions.d.ts.map +0 -1
  546. package/dist/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.d.ts +0 -2
  547. package/dist/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.d.ts.map +0 -1
  548. package/dist/components/custom/scheduler-new/presentation/logic/separateEventsToInnerRows.d.ts +0 -3
  549. package/dist/components/custom/scheduler-new/presentation/logic/separateEventsToInnerRows.d.ts.map +0 -1
  550. package/dist/components/custom/scheduler-new/presentation/logic/sortByCategoryAndTitle.d.ts +0 -4
  551. package/dist/components/custom/scheduler-new/presentation/logic/sortByCategoryAndTitle.d.ts.map +0 -1
  552. package/dist/components/custom/scheduler-new/presentation/state/ui/SchedulerState.d.ts +0 -12
  553. package/dist/components/custom/scheduler-new/presentation/state/ui/SchedulerState.d.ts.map +0 -1
  554. package/dist/components/custom/scheduler-new/presentation/state/ui/WeekRange.d.ts +0 -5
  555. package/dist/components/custom/scheduler-new/presentation/state/ui/WeekRange.d.ts.map +0 -1
  556. package/dist/components/custom/scheduler-temporal/CwSchedulerComp2.d.ts +0 -24
  557. package/dist/components/custom/scheduler-temporal/CwSchedulerComp2.d.ts.map +0 -1
  558. package/dist/components/custom/scheduler-temporal/CwSuperSchedulerComp.d.ts +0 -86
  559. package/dist/components/custom/scheduler-temporal/CwSuperSchedulerComp.d.ts.map +0 -1
  560. package/dist/components/custom/scheduler-temporal/components/EventRender.d.ts +0 -10
  561. package/dist/components/custom/scheduler-temporal/components/EventRender.d.ts.map +0 -1
  562. package/dist/components/custom/scheduler-temporal/components/ResourceListRender.d.ts +0 -20
  563. package/dist/components/custom/scheduler-temporal/components/ResourceListRender.d.ts.map +0 -1
  564. package/dist/components/custom/scheduler-temporal/components/ResourceRender.d.ts +0 -14
  565. package/dist/components/custom/scheduler-temporal/components/ResourceRender.d.ts.map +0 -1
  566. package/dist/components/custom/scheduler-temporal/components/day_headers/DayHeader.d.ts +0 -11
  567. package/dist/components/custom/scheduler-temporal/components/day_headers/DayHeader.d.ts.map +0 -1
  568. package/dist/components/custom/scheduler-temporal/components/day_headers/MonthHeader.d.ts +0 -11
  569. package/dist/components/custom/scheduler-temporal/components/day_headers/MonthHeader.d.ts.map +0 -1
  570. package/dist/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.d.ts +0 -13
  571. package/dist/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.d.ts.map +0 -1
  572. package/dist/components/custom/scheduler-temporal/components/day_headers/WeekHeader.d.ts +0 -11
  573. package/dist/components/custom/scheduler-temporal/components/day_headers/WeekHeader.d.ts.map +0 -1
  574. package/dist/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.d.ts +0 -14
  575. package/dist/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.d.ts.map +0 -1
  576. package/dist/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.d.ts +0 -23
  577. package/dist/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.d.ts.map +0 -1
  578. package/dist/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.d.ts +0 -8
  579. package/dist/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.d.ts.map +0 -1
  580. package/dist/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.d.ts +0 -12
  581. package/dist/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.d.ts.map +0 -1
  582. package/dist/components/custom/scheduler-temporal/components/time_headers/TimeHeader.d.ts +0 -12
  583. package/dist/components/custom/scheduler-temporal/components/time_headers/TimeHeader.d.ts.map +0 -1
  584. package/dist/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.d.ts +0 -10
  585. package/dist/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.d.ts.map +0 -1
  586. package/dist/components/custom/scheduler-temporal/components/time_line/TimeLine.d.ts +0 -12
  587. package/dist/components/custom/scheduler-temporal/components/time_line/TimeLine.d.ts.map +0 -1
  588. package/dist/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.d.ts +0 -2
  589. package/dist/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.d.ts.map +0 -1
  590. package/dist/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.d.ts +0 -2
  591. package/dist/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.d.ts.map +0 -1
  592. package/dist/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts +0 -2
  593. package/dist/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.d.ts.map +0 -1
  594. package/dist/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.d.ts +0 -7
  595. package/dist/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.d.ts.map +0 -1
  596. package/dist/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.d.ts +0 -10
  597. package/dist/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.d.ts.map +0 -1
  598. package/dist/components/custom/scheduler-temporal/logic/dates/getUtcToday.d.ts +0 -2
  599. package/dist/components/custom/scheduler-temporal/logic/dates/getUtcToday.d.ts.map +0 -1
  600. package/dist/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.d.ts +0 -7
  601. package/dist/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.d.ts.map +0 -1
  602. package/dist/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.d.ts +0 -8
  603. package/dist/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.d.ts.map +0 -1
  604. package/dist/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.d.ts +0 -2
  605. package/dist/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.d.ts.map +0 -1
  606. package/dist/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.d.ts +0 -2
  607. package/dist/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.d.ts.map +0 -1
  608. package/dist/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.d.ts +0 -15
  609. package/dist/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.d.ts.map +0 -1
  610. package/dist/components/custom/scheduler-temporal/logic/filtering/filterEvents.d.ts +0 -3
  611. package/dist/components/custom/scheduler-temporal/logic/filtering/filterEvents.d.ts.map +0 -1
  612. package/dist/components/custom/scheduler-temporal/logic/filtering/filterResources.d.ts +0 -3
  613. package/dist/components/custom/scheduler-temporal/logic/filtering/filterResources.d.ts.map +0 -1
  614. package/dist/components/custom/scheduler-temporal/logic/onDrop/OnDrop.d.ts +0 -13
  615. package/dist/components/custom/scheduler-temporal/logic/onDrop/OnDrop.d.ts.map +0 -1
  616. package/dist/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.d.ts +0 -17
  617. package/dist/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.d.ts.map +0 -1
  618. package/dist/components/custom/scheduler-temporal/logic/pixels/heightScheduler.d.ts +0 -3
  619. package/dist/components/custom/scheduler-temporal/logic/pixels/heightScheduler.d.ts.map +0 -1
  620. package/dist/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.d.ts +0 -4
  621. package/dist/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.d.ts.map +0 -1
  622. package/dist/components/custom/scheduler-temporal/logic/state_handle/onDragOver.d.ts +0 -2
  623. package/dist/components/custom/scheduler-temporal/logic/state_handle/onDragOver.d.ts.map +0 -1
  624. package/dist/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.d.ts +0 -5
  625. package/dist/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.d.ts.map +0 -1
  626. package/dist/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.d.ts +0 -4
  627. package/dist/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.d.ts.map +0 -1
  628. package/dist/components/custom/scheduler-temporal/logic/strings/compareStrings.d.ts +0 -2
  629. package/dist/components/custom/scheduler-temporal/logic/strings/compareStrings.d.ts.map +0 -1
  630. package/dist/components/custom/scheduler-temporal/logic/strings/getGUID.d.ts +0 -2
  631. package/dist/components/custom/scheduler-temporal/logic/strings/getGUID.d.ts.map +0 -1
  632. package/dist/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.d.ts +0 -3
  633. package/dist/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.d.ts.map +0 -1
  634. package/dist/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.d.ts +0 -6
  635. package/dist/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.d.ts.map +0 -1
  636. package/dist/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.d.ts +0 -2
  637. package/dist/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.d.ts.map +0 -1
  638. package/dist/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.d.ts +0 -3
  639. package/dist/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.d.ts.map +0 -1
  640. package/dist/components/custom/scheduler-temporal/state/CblDragAndDrop.d.ts +0 -11
  641. package/dist/components/custom/scheduler-temporal/state/CblDragAndDrop.d.ts.map +0 -1
  642. package/dist/components/custom/scheduler-temporal/state/CwSchedulerProps.d.ts +0 -43
  643. package/dist/components/custom/scheduler-temporal/state/CwSchedulerProps.d.ts.map +0 -1
  644. package/dist/components/custom/scheduler-temporal/state/Resource.d.ts +0 -14
  645. package/dist/components/custom/scheduler-temporal/state/Resource.d.ts.map +0 -1
  646. package/dist/components/custom/scheduler-temporal/state/State.d.ts +0 -25
  647. package/dist/components/custom/scheduler-temporal/state/State.d.ts.map +0 -1
  648. package/dist/components/custom/scheduler-temporal/state/cblEvent.d.ts +0 -18
  649. package/dist/components/custom/scheduler-temporal/state/cblEvent.d.ts.map +0 -1
  650. package/dist/components/custom/scheduler-temporal/state/cblEventCompProps.d.ts +0 -7
  651. package/dist/components/custom/scheduler-temporal/state/cblEventCompProps.d.ts.map +0 -1
  652. package/dist/components/custom/super-scheduler/PinRowHeader.d.ts +0 -15
  653. package/dist/components/custom/super-scheduler/PinRowHeader.d.ts.map +0 -1
  654. package/dist/components/custom/super-scheduler/SuperScheduler.d.ts +0 -25
  655. package/dist/components/custom/super-scheduler/SuperScheduler.d.ts.map +0 -1
  656. package/dist/components/custom/super-scheduler/SuperSchedulerEvents.d.ts +0 -13
  657. package/dist/components/custom/super-scheduler/SuperSchedulerEvents.d.ts.map +0 -1
  658. package/dist/components/custom/super-scheduler/SuperSchedulerPresenter.d.ts +0 -9
  659. package/dist/components/custom/super-scheduler/SuperSchedulerPresenter.d.ts.map +0 -1
  660. package/dist/components/display/data/accordion/CwAccordionContainer.d.ts +0 -14
  661. package/dist/components/display/data/accordion/CwAccordionContainer.d.ts.map +0 -1
  662. package/dist/components/display/data/generic_tooltip/CwGenericTooltip.d.ts +0 -15
  663. package/dist/components/display/data/generic_tooltip/CwGenericTooltip.d.ts.map +0 -1
  664. package/dist/components/display/data/table/CwTable.d.ts +0 -102
  665. package/dist/components/display/data/table/CwTable.d.ts.map +0 -1
  666. package/dist/components/display/graphics/icon/CwIcon.d.ts +0 -15
  667. package/dist/components/display/graphics/icon/CwIcon.d.ts.map +0 -1
  668. package/dist/components/display/graphics/loading/CwLoading.d.ts +0 -42
  669. package/dist/components/display/graphics/loading/CwLoading.d.ts.map +0 -1
  670. package/dist/components/display/graphics/loading-small/CwLoadingSmall.d.ts +0 -18
  671. package/dist/components/display/graphics/loading-small/CwLoadingSmall.d.ts.map +0 -1
  672. package/dist/components/display/text/heading/CwHeadingMain.d.ts +0 -3
  673. package/dist/components/display/text/heading/CwHeadingMain.d.ts.map +0 -1
  674. package/dist/components/display/text/heading/CwHeadingSecond.d.ts +0 -3
  675. package/dist/components/display/text/heading/CwHeadingSecond.d.ts.map +0 -1
  676. package/dist/components/display/text/label/CwLabel.d.ts +0 -28
  677. package/dist/components/display/text/label/CwLabel.d.ts.map +0 -1
  678. package/dist/components/display/text/message/CwMessage.d.ts +0 -31
  679. package/dist/components/display/text/message/CwMessage.d.ts.map +0 -1
  680. package/dist/components/display/text/tag/CwChip.d.ts +0 -36
  681. package/dist/components/display/text/tag/CwChip.d.ts.map +0 -1
  682. package/dist/components/display/text/tag/CwTag.d.ts +0 -16
  683. package/dist/components/display/text/tag/CwTag.d.ts.map +0 -1
  684. package/dist/components/display/text/tooltip/CwTooltip.d.ts +0 -8
  685. package/dist/components/display/text/tooltip/CwTooltip.d.ts.map +0 -1
  686. package/dist/components/layout/align/CwAlign.d.ts +0 -54
  687. package/dist/components/layout/align/CwAlign.d.ts.map +0 -1
  688. package/dist/components/layout/card/CwCard.d.ts +0 -61
  689. package/dist/components/layout/card/CwCard.d.ts.map +0 -1
  690. package/dist/components/layout/card/CwCardList.d.ts +0 -32
  691. package/dist/components/layout/card/CwCardList.d.ts.map +0 -1
  692. package/dist/components/layout/dialog/CwDialog.d.ts +0 -28
  693. package/dist/components/layout/dialog/CwDialog.d.ts.map +0 -1
  694. package/dist/components/layout/dialog/CwDialogManager.d.ts +0 -11
  695. package/dist/components/layout/dialog/CwDialogManager.d.ts.map +0 -1
  696. package/dist/components/layout/list/details/CwExpandable.d.ts +0 -23
  697. package/dist/components/layout/list/details/CwExpandable.d.ts.map +0 -1
  698. package/dist/components/layout/list/key-value/CwKeyValueList.d.ts +0 -33
  699. package/dist/components/layout/list/key-value/CwKeyValueList.d.ts.map +0 -1
  700. package/dist/components/layout/modal/CwModalReportFunctional.d.ts +0 -15
  701. package/dist/components/layout/modal/CwModalReportFunctional.d.ts.map +0 -1
  702. package/dist/components/layout/modal/hover/CwModalHover.d.ts +0 -19
  703. package/dist/components/layout/modal/hover/CwModalHover.d.ts.map +0 -1
  704. package/dist/components/layout/modal/legacy/cw_modal.d.ts +0 -22
  705. package/dist/components/layout/modal/legacy/cw_modal.d.ts.map +0 -1
  706. package/dist/components/layout/modal/legacy/cw_modal_confirm.d.ts +0 -16
  707. package/dist/components/layout/modal/legacy/cw_modal_confirm.d.ts.map +0 -1
  708. package/dist/components/layout/modal/legacy/cw_modal_iframe.d.ts +0 -21
  709. package/dist/components/layout/modal/legacy/cw_modal_iframe.d.ts.map +0 -1
  710. package/dist/components/layout/modal/legacy/cw_modal_report.d.ts +0 -32
  711. package/dist/components/layout/modal/legacy/cw_modal_report.d.ts.map +0 -1
  712. package/dist/components/layout/table/grouped/CwTableGrouped.d.ts.map +0 -1
  713. package/dist/components/layout/tabs/CwTabs.d.ts +0 -46
  714. package/dist/components/layout/tabs/CwTabs.d.ts.map +0 -1
  715. package/dist/index.d.ts.map +0 -1
@@ -0,0 +1,255 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
3
+ import { createPortal } from "react-dom";
4
+ import styles from "./cw-dialog.module.css";
5
+ // Helper function to parse size values
6
+ const parseSize = (size) => {
7
+ if (typeof size === 'number')
8
+ return { value: size, unit: 'px' };
9
+ // Match numeric value and unit
10
+ const match = String(size).match(/^([\d.]+)(\D+)$/);
11
+ if (match) {
12
+ const unit = match[2];
13
+ // Only allow px, rem, vw, vh
14
+ if (['px', 'rem', 'vw', 'vh'].includes(unit)) {
15
+ return { value: parseFloat(match[1]), unit };
16
+ }
17
+ }
18
+ // Default to pixels if no unit specified or unit not supported
19
+ return { value: parseFloat(String(size)), unit: 'px' };
20
+ };
21
+ // Helper to convert size to px for calculations
22
+ const convertToPx = (size) => {
23
+ switch (size.unit) {
24
+ case 'px': return size.value;
25
+ case 'rem': return size.value * 16; // Assuming 1rem = 16px
26
+ case 'vh': return (window.innerHeight * size.value) / 100;
27
+ case 'vw': return (window.innerWidth * size.value) / 100;
28
+ default: return size.value; // Default fallback
29
+ }
30
+ };
31
+ // Function to convert from px back to original unit
32
+ const convertFromPx = (px, unit) => {
33
+ switch (unit) {
34
+ case 'px': return px;
35
+ case 'rem': return px / 16;
36
+ case 'vh': return (px * 100) / window.innerHeight;
37
+ case 'vw': return (px * 100) / window.innerWidth;
38
+ default: return px;
39
+ }
40
+ };
41
+ export const CwDialog = props => {
42
+ const { customFooter, customHeader, headline, width, height, dialogSize, scrim, onSave, onClose, hideFooter, children, open, autoReposition = false, ...domProps } = props;
43
+ const dialogRef = useRef(null);
44
+ const initialSetup = useMemo(() => {
45
+ // Default width and height with units
46
+ const defaultWidth = 800;
47
+ // Priority: direct props > dialogSize > default values
48
+ const initialWidth = width !== undefined
49
+ ? width
50
+ : dialogSize?.width !== undefined
51
+ ? dialogSize.width
52
+ : defaultWidth;
53
+ const initialHeight = height !== undefined
54
+ ? height
55
+ : dialogSize?.height !== undefined
56
+ ? dialogSize.height
57
+ : undefined; // Undefined for autoHeight
58
+ // Determine if height is automatic when height is not provided
59
+ const isAutoHeight = initialHeight === undefined;
60
+ // Parse the sizes to separate value and unit
61
+ const parsedWidth = parseSize(initialWidth);
62
+ const parsedHeight = isAutoHeight
63
+ ? { value: 0, unit: 'auto' }
64
+ : parseSize(initialHeight);
65
+ // Convert to px for internal calculations
66
+ const initialWidthPx = convertToPx(parsedWidth);
67
+ const initialHeightPx = isAutoHeight ? 0 : convertToPx(parsedHeight);
68
+ // Use estimated height for initial positioning when autoHeight is true
69
+ const initialEstimatedHeight = isAutoHeight ? 300 : initialHeightPx;
70
+ const initialDialogSize = {
71
+ width: initialWidthPx,
72
+ height: initialHeightPx,
73
+ widthUnit: parsedWidth.unit,
74
+ heightUnit: parsedHeight.unit,
75
+ autoHeight: isAutoHeight
76
+ };
77
+ const initialPosition = {
78
+ x: window.document.body.clientWidth / 2 - initialWidthPx / 2,
79
+ y: window.document.body.clientHeight / 2 - initialEstimatedHeight / 2
80
+ };
81
+ return { initialDialogSize, initialPosition };
82
+ }, [width, height, dialogSize]); // Only recalculate when these props change
83
+ const [isDragging, setIsDragging] = useState(false);
84
+ const [resizeDirection, setResizeDirection] = useState(null);
85
+ const [position, setPosition] = useState(initialSetup.initialPosition);
86
+ const [size, setSize] = useState(initialSetup.initialDialogSize);
87
+ const [dragStart, setDragStart] = useState({ x: 0, y: 0 });
88
+ // scrim is true by default
89
+ const hasScrim = scrim !== false;
90
+ // Adjust position after the dialog is rendered when using autoHeight
91
+ useLayoutEffect(() => {
92
+ let resizeObserver = null;
93
+ if (size.autoHeight && dialogRef.current && open) {
94
+ const recalculatePosition = () => {
95
+ const actualHeight = dialogRef.current?.offsetHeight;
96
+ if (actualHeight && actualHeight > 0) {
97
+ setPosition({
98
+ x: Math.max(0, window.document.body.clientWidth / 2 - size.width / 2),
99
+ y: Math.max(0, window.document.body.clientHeight / 2 - actualHeight / 2)
100
+ });
101
+ }
102
+ };
103
+ setTimeout(recalculatePosition, 0);
104
+ // For modals with delayed loading content (inner fetchs and similar)
105
+ if (autoReposition) {
106
+ resizeObserver = new ResizeObserver(() => {
107
+ const dialog = dialogRef.current;
108
+ if (!dialog)
109
+ return;
110
+ const dialogRect = dialog.getBoundingClientRect();
111
+ const viewportHeight = window.innerHeight;
112
+ const margin = 50;
113
+ // Only reposition if modal tries to grow over window limits
114
+ const isOverflowingTop = dialogRect.top < margin;
115
+ const isOverflowingBottom = dialogRect.bottom > viewportHeight - margin;
116
+ if (isOverflowingTop || isOverflowingBottom) {
117
+ recalculatePosition();
118
+ }
119
+ });
120
+ resizeObserver.observe(dialogRef.current);
121
+ }
122
+ }
123
+ return () => {
124
+ resizeObserver?.disconnect();
125
+ };
126
+ }, [size.autoHeight, open, autoReposition]);
127
+ useEffect(() => {
128
+ const handleMouseMove = (e) => {
129
+ if (isDragging) {
130
+ const parent = dialogRef.current?.parentElement;
131
+ if (parent) {
132
+ const parentRect = parent.getBoundingClientRect();
133
+ const dialogRect = dialogRef.current?.getBoundingClientRect();
134
+ if (dialogRect) {
135
+ const minVisiblePx = 48;
136
+ const newX = e.clientX - dragStart.x;
137
+ const newY = e.clientY - dragStart.y;
138
+ const clampedX = Math.min(Math.max(newX, minVisiblePx - dialogRect.width), parentRect.width - minVisiblePx);
139
+ const clampedY = Math.min(Math.max(newY, minVisiblePx - dialogRect.height), parentRect.height - minVisiblePx);
140
+ setPosition({ x: clampedX, y: clampedY });
141
+ }
142
+ }
143
+ }
144
+ else if (resizeDirection) {
145
+ const parent = dialogRef.current?.parentElement;
146
+ if (parent) {
147
+ const parentRect = parent.getBoundingClientRect();
148
+ const dialogRect = dialogRef.current?.getBoundingClientRect();
149
+ if (dialogRect) {
150
+ let newWidth = size.width;
151
+ let newHeight = size.height;
152
+ let newX = position.x;
153
+ let newY = position.y;
154
+ const minVisiblePx = 64;
155
+ const minSize = 100;
156
+ // Only allow horizontal resizing if autoHeight is true
157
+ if (!size.autoHeight || (!resizeDirection.includes("n") && !resizeDirection.includes("s"))) {
158
+ // Logic for horizontal resizing
159
+ if (resizeDirection.includes("w")) {
160
+ const dx = e.clientX - position.x;
161
+ newWidth = Math.max(size.width - dx, minSize);
162
+ newX = Math.min(Math.max(position.x + dx, minVisiblePx - newWidth), position.x + size.width - minSize);
163
+ }
164
+ if (resizeDirection.includes("e")) {
165
+ newWidth = Math.min(Math.max(e.clientX - position.x, minSize), parentRect.width - position.x + dialogRect.width - minVisiblePx);
166
+ }
167
+ }
168
+ // Only apply vertical resizing if autoHeight is false
169
+ if (!size.autoHeight) {
170
+ if (resizeDirection.includes("n")) {
171
+ const dy = e.clientY - position.y;
172
+ newHeight = Math.max(size.height - dy, minSize);
173
+ newY = Math.min(Math.max(position.y + dy, minVisiblePx - newHeight), position.y + size.height - minSize);
174
+ }
175
+ if (resizeDirection.includes("s")) {
176
+ newHeight = Math.min(Math.max(e.clientY - position.y, minSize), parentRect.height - position.y + dialogRect.height - minVisiblePx);
177
+ }
178
+ }
179
+ // Ensure the modal stays within bounds after resizing
180
+ newX = Math.min(Math.max(newX, minVisiblePx - newWidth), parentRect.width - minVisiblePx);
181
+ newY = Math.min(Math.max(newY, minVisiblePx - newHeight), parentRect.height - minVisiblePx);
182
+ // Update state maintaining original units
183
+ setSize({
184
+ width: newWidth,
185
+ height: newHeight,
186
+ widthUnit: size.widthUnit,
187
+ heightUnit: size.heightUnit,
188
+ autoHeight: size.autoHeight
189
+ });
190
+ setPosition({ x: newX, y: newY });
191
+ }
192
+ }
193
+ }
194
+ };
195
+ const handleMouseUp = () => {
196
+ setIsDragging(false);
197
+ setResizeDirection(null);
198
+ };
199
+ document.addEventListener("mousemove", handleMouseMove);
200
+ document.addEventListener("mouseup", handleMouseUp);
201
+ return () => {
202
+ document.removeEventListener("mousemove", handleMouseMove);
203
+ document.removeEventListener("mouseup", handleMouseUp);
204
+ };
205
+ }, [isDragging, resizeDirection, dragStart, position, size]);
206
+ const handleMouseDown = useCallback((e) => {
207
+ setIsDragging(true);
208
+ setDragStart({ x: e.clientX - position.x, y: e.clientY - position.y });
209
+ }, [position]);
210
+ const handleResizeMouseDown = useCallback((direction) => (e) => {
211
+ e.stopPropagation();
212
+ setResizeDirection(direction);
213
+ }, []);
214
+ const handleScrimClick = useCallback((e) => {
215
+ if (e.target === e.currentTarget && onClose) {
216
+ onClose();
217
+ }
218
+ }, [onClose]);
219
+ const header = useMemo(() => (_jsxs("header", { onMouseDown: handleMouseDown, children: [_jsx("span", { children: headline }), customHeader || (_jsx("button", { className: styles["cw-dialog-button-close"], onClick: onClose }))] })), [handleMouseDown, headline, customHeader, onClose]);
220
+ const content = useMemo(() => (_jsx("section", { children: children })), [children]);
221
+ const footer = useMemo(() => (_jsx("footer", { children: customFooter || (_jsx("button", { className: "cw-button-icon cwi-save", onClick: onSave })) })), [customFooter, onSave]);
222
+ const resizeHandles = useMemo(() => size.autoHeight
223
+ ? [
224
+ // Only horizontal handles if autoHeight is true
225
+ _jsx("div", { "data-handle-e": true, onMouseDown: handleResizeMouseDown("e") }, "handle-e"),
226
+ _jsx("div", { "data-handle-w": true, onMouseDown: handleResizeMouseDown("w") }, "handle-w")
227
+ ]
228
+ : [
229
+ // All handles if autoHeight is false
230
+ _jsx("div", { "data-handle-n": true, onMouseDown: handleResizeMouseDown("n") }, "handle-n"),
231
+ _jsx("div", { "data-handle-s": true, onMouseDown: handleResizeMouseDown("s") }, "handle-s"),
232
+ _jsx("div", { "data-handle-e": true, onMouseDown: handleResizeMouseDown("e") }, "handle-e"),
233
+ _jsx("div", { "data-handle-w": true, onMouseDown: handleResizeMouseDown("w") }, "handle-w"),
234
+ _jsx("div", { "data-handle-ne": true, onMouseDown: handleResizeMouseDown("ne") }, "handle-ne"),
235
+ _jsx("div", { "data-handle-nw": true, onMouseDown: handleResizeMouseDown("nw") }, "handle-nw"),
236
+ _jsx("div", { "data-handle-se": true, onMouseDown: handleResizeMouseDown("se") }, "handle-se"),
237
+ _jsx("div", { "data-handle-sw": true, onMouseDown: handleResizeMouseDown("sw") }, "handle-sw")
238
+ ], [size.autoHeight, handleResizeMouseDown]);
239
+ const displayDimensions = useMemo(() => {
240
+ // Prepare width and height with original units for display
241
+ const displayWidth = `${convertFromPx(size.width, size.widthUnit)}${size.widthUnit}`;
242
+ // If autoHeight, don't specify height and let it adapt to content
243
+ const displayHeight = size.autoHeight
244
+ ? 'auto'
245
+ : `${convertFromPx(size.height, size.heightUnit)}${size.heightUnit}`;
246
+ return { displayWidth, displayHeight };
247
+ }, [size.width, size.height, size.widthUnit, size.heightUnit, size.autoHeight]);
248
+ const dialogContent = (_jsx("div", { "data-has-scrim": hasScrim, className: styles["cw-dialog-main"], onClick: handleScrimClick, children: _jsxs("dialog", { ...domProps, ref: dialogRef, style: {
249
+ left: `${position.x}px`,
250
+ top: `${position.y}px`,
251
+ width: displayDimensions.displayWidth,
252
+ height: displayDimensions.displayHeight
253
+ }, children: [header, content, hideFooter !== true && footer, resizeHandles] }) }));
254
+ return open ? createPortal(dialogContent, document.body) : null;
255
+ };
@@ -0,0 +1,44 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createRoot } from "react-dom/client";
3
+ import { CwDialog } from "./CwDialog";
4
+ export class CwDialogManager {
5
+ static openDialogs = new Map();
6
+ static OpenDialog(id, props) {
7
+ if (!CwDialogManager.openDialogs.has(id)) {
8
+ const container = document.createElement("div");
9
+ document.body.appendChild(container);
10
+ const root = createRoot(container);
11
+ root.render(_jsx(CwDialog, { ...props }));
12
+ CwDialogManager.openDialogs.set(id, { props, container });
13
+ }
14
+ }
15
+ static CloseDialog(id) {
16
+ const dialog = CwDialogManager.openDialogs.get(id);
17
+ if (dialog) {
18
+ const root = createRoot(dialog.container);
19
+ root.unmount();
20
+ dialog.container.remove();
21
+ CwDialogManager.openDialogs.delete(id);
22
+ }
23
+ }
24
+ static CloseAllDialogs() {
25
+ CwDialogManager.openDialogs.forEach((_dialog, id) => {
26
+ CwDialogManager.CloseDialog(id);
27
+ });
28
+ }
29
+ static CloseLastDialog() {
30
+ const lastDialogId = Array.from(CwDialogManager.openDialogs.keys()).pop();
31
+ if (lastDialogId) {
32
+ CwDialogManager.CloseDialog(lastDialogId);
33
+ }
34
+ }
35
+ static CloseFirstDialog() {
36
+ const firstDialogId = Array.from(CwDialogManager.openDialogs.keys())[0];
37
+ if (firstDialogId) {
38
+ CwDialogManager.CloseDialog(firstDialogId);
39
+ }
40
+ }
41
+ static GetOpenDialogCount() {
42
+ return CwDialogManager.openDialogs.size;
43
+ }
44
+ }
@@ -0,0 +1,28 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useRef } from "react";
3
+ /**
4
+ * An expandable element with briefing and children displayed when clicked
5
+ * @param briefing Title of the expandable
6
+ * @param onToggle Function to run when expandable is toggled open/closed
7
+ * @param onClose Function to run when expandable is closed
8
+ * @param onOpen Function to run when expandable is opened
9
+ * @example
10
+ * <CwExpandable briefing="Title here">Contents here</CwExpandable>
11
+ */
12
+ export const CwExpandable = ({ briefing, onToggle, onOpen, onClose, children, ...detailsProps }) => {
13
+ const myRef = useRef(null);
14
+ useEffect(() => {
15
+ myRef.current?.addEventListener("click", ev => {
16
+ const isOpen = ev.currentTarget.open;
17
+ onToggle?.(!isOpen);
18
+ if (!isOpen)
19
+ onOpen?.(ev);
20
+ else
21
+ onClose?.(ev);
22
+ });
23
+ }, [onClose, onOpen, onToggle]);
24
+ return (_jsx("div", { className: "cw-expandable", children: _jsxs("details", { ref: myRef, ...detailsProps, children: [_jsx("summary", { children: briefing }), children && _jsx("section", { children: children })] }) }));
25
+ };
26
+ export const _CwExpandableTest = () => {
27
+ return _jsx(CwExpandable, { briefing: "a", children: "hola" });
28
+ };
@@ -1,3 +1,4 @@
1
+ import React from "react";
1
2
  import "./cw-key-value-list.css";
2
3
  /**
3
4
  * Props for the CwKeyValueList component
@@ -1 +1 @@
1
- {"version":3,"file":"CwKeyValueList.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/list/key-value/CwKeyValueList.tsx"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC;;GAEG;AACH,UAAU,mBAAmB;IAE5B,KAAK,EAAE,KAAK,CAAC;QAEZ,GAAG,EAAE,MAAM,CAAC;QAEZ,KAAK,EAAE,MAAM,CAAC;QAEd,KAAK,EAAE,GAAG,CAAC;QACX,4EAA4E;QAC5E,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IAEH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,kEAAkE;IAClE,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CAC7B;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAuBxD,CAAC;AAEF,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"CwKeyValueList.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/list/key-value/CwKeyValueList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,yBAAyB,CAAC;AACjC;;GAEG;AACH,UAAU,mBAAmB;IAE5B,KAAK,EAAE,KAAK,CAAC;QAEZ,GAAG,EAAE,MAAM,CAAC;QAEZ,KAAK,EAAE,MAAM,CAAC;QAEd,KAAK,EAAE,GAAG,CAAC;QACX,4EAA4E;QAC5E,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IAEH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,kEAAkE;IAClE,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;CAC7B;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAyBxD,CAAC;AAEF,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React from "react";
3
+ import "./cw-key-value-list.css";
4
+ /**
5
+ * A component for displaying key-value pairs in a definition list format
6
+ * Used for read-only display of structured data
7
+ *
8
+ * @example
9
+ * <CwKeyValueList
10
+ * items={[
11
+ * { key: "length", label: "Length", value: "10", suffix: "m" },
12
+ * { key: "width", label: "Width", value: null, suffix: "m" }
13
+ * ]}
14
+ * emptyValue="N/A"
15
+ * />
16
+ */
17
+ export const CwKeyValueList = ({ items, className = "", emptyValue = "-", direction = "row" }) => {
18
+ return (_jsx("dl", { className: `cw-keyvalue-list ${className}`, children: items.map(item => (_jsxs("div", { className: `cw-keyvalue-list-item cw-flex-${direction}`, children: [_jsx("dt", { children: item.label }), _jsx("dd", { children: item.value !== undefined && item.value !== null && item.value !== ""
19
+ ? (React.isValidElement(item.value)
20
+ ? item.value
21
+ : `${item.value}${item.suffix ? ` ${item.suffix}` : ''}`)
22
+ : emptyValue })] }, item.key))) }));
23
+ };
@@ -0,0 +1,60 @@
1
+ import { ReactNode } from 'react';
2
+ /**
3
+ * CwSortableList
4
+ *
5
+ * A drag-and-drop sortable list component that allows users to visually reorder items.
6
+ * It is designed to work seamlessly with the associated `useSortableList` hook,
7
+ * which manages state, tracks moved items, and handles unsaved changes (save/discard).
8
+ *
9
+ * @template T - The item type extending SortableItem (must include an `id` field)
10
+ *
11
+ * @param {Object} props
12
+ * @param {T[]} props.items - The array of sortable items.
13
+ * @param {(newItems: T[], movedId?: string | number) => void} props.onReorder
14
+ * Callback triggered when the list is reordered.
15
+ * - `newItems`: The updated list after reordering.
16
+ * - `movedId`: The ID of the item that was moved (if applicable).
17
+ * @param {(item: T) => {title: ReactNode, extraContent?: ReactNode, actions?: ReactNode, showHandle?: boolean}} props.renderItem
18
+ * Function that defines how each item should be rendered.
19
+ * @param {string} [props.className] - Optional CSS class for the list container.
20
+ * @param {Set<string|number>} [props.movedItems] - Set of item IDs that have been moved, used to apply the `moved` style.
21
+ *
22
+ * @example
23
+ * const {
24
+ * items,
25
+ * handleReorder,
26
+ * movedItems
27
+ * } = useSortableList(initialItems);
28
+ *
29
+ * <CwSortableList
30
+ * items={items}
31
+ * onReorder={handleReorder}
32
+ * movedItems={movedItems}
33
+ * renderItem={(item) => ({
34
+ * title: item.name,
35
+ * extraContent: <span>{item.duration}</span>
36
+ * })}
37
+ * />
38
+ */
39
+ interface SortableItem {
40
+ id: string | number;
41
+ [key: string]: any;
42
+ }
43
+ export interface CwSortableListProps<T extends SortableItem> {
44
+ items: T[];
45
+ onReorder: (newItems: T[], movedId?: string | number) => void;
46
+ renderItem: (item: T) => {
47
+ title: ReactNode;
48
+ extraContent?: ReactNode;
49
+ actions?: ReactNode;
50
+ showHandle?: boolean;
51
+ expandedContent?: ReactNode;
52
+ };
53
+ className?: string;
54
+ movedItems?: Set<string | number>;
55
+ emptyMessage?: ReactNode;
56
+ readOnly?: boolean;
57
+ }
58
+ export declare function CwSortableList<T extends SortableItem>({ items, onReorder, renderItem, className, movedItems, emptyMessage, readOnly, }: CwSortableListProps<T>): import("react/jsx-runtime").JSX.Element;
59
+ export {};
60
+ //# sourceMappingURL=CwSortableList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CwSortableList.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/list/sortable/CwSortableList.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAY,MAAM,OAAO,CAAC;AAKnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,UAAU,YAAY;IACrB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,YAAY;IAC1D,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC9D,UAAU,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK;QACxB,KAAK,EAAE,SAAS,CAAC;QACjB,YAAY,CAAC,EAAE,SAAS,CAAC;QACzB,OAAO,CAAC,EAAE,SAAS,CAAC;QACpB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,eAAe,CAAC,EAAE,SAAS,CAAC;KAC5B,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAClC,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,YAAY,EAAE,EACtD,KAAK,EACL,SAAS,EACT,UAAU,EACV,SAAc,EACd,UAAsB,EACtB,YAAoC,EACpC,QAAgB,GAChB,EAAE,mBAAmB,CAAC,CAAC,CAAC,2CA2IxB"}
@@ -0,0 +1,73 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React, { useState } from 'react';
3
+ import { CwButton } from '../../../control/action/button/CwButton';
4
+ import { CwIcon } from '../../../display/graphics/icon/CwIcon';
5
+ import styles from "./cw-sortable-list.module.css";
6
+ export function CwSortableList({ items, onReorder, renderItem, className = '', movedItems = new Set(), emptyMessage = "No elements to show", }) {
7
+ const [draggedItem, setDraggedItem] = useState(null);
8
+ const [dropIndicatorIndex, setDropIndicatorIndex] = useState(null);
9
+ const [lastValidDropIndex, setLastValidDropIndex] = useState(null);
10
+ const [expandedItems, setExpandedItems] = useState(new Set());
11
+ const toggleExpanded = (itemId) => {
12
+ setExpandedItems(prev => {
13
+ const newSet = new Set(prev);
14
+ if (newSet.has(itemId)) {
15
+ newSet.delete(itemId);
16
+ }
17
+ else {
18
+ newSet.add(itemId);
19
+ }
20
+ return newSet;
21
+ });
22
+ };
23
+ const cleanupDragState = () => {
24
+ setDraggedItem(null);
25
+ setDropIndicatorIndex(null);
26
+ setLastValidDropIndex(null);
27
+ };
28
+ const handleDragStart = (e, item) => {
29
+ setDraggedItem(item);
30
+ setLastValidDropIndex(null);
31
+ e.dataTransfer.effectAllowed = 'move';
32
+ };
33
+ const handleDragEnd = () => {
34
+ if (draggedItem && lastValidDropIndex !== null) {
35
+ const dragIndex = items.findIndex(item => item.id === draggedItem.id);
36
+ if (dragIndex !== lastValidDropIndex && dragIndex !== lastValidDropIndex - 1) {
37
+ const newItems = [...items];
38
+ const [draggedElement] = newItems.splice(dragIndex, 1);
39
+ let finalIndex = lastValidDropIndex;
40
+ if (dragIndex < finalIndex)
41
+ finalIndex -= 1;
42
+ newItems.splice(finalIndex, 0, draggedElement);
43
+ // Ahora pasamos el id del elemento movido al callback
44
+ onReorder(newItems, draggedItem.id);
45
+ }
46
+ }
47
+ cleanupDragState();
48
+ };
49
+ const handleDragOver = (e, index) => {
50
+ e.preventDefault();
51
+ if (!draggedItem)
52
+ return;
53
+ const rect = e.currentTarget.getBoundingClientRect();
54
+ const mouseY = e.clientY;
55
+ const elementCenterY = rect.top + (rect.height / 2);
56
+ const dropIndex = mouseY < elementCenterY ? index : index + 1;
57
+ setLastValidDropIndex(dropIndex);
58
+ if (dropIndicatorIndex !== dropIndex) {
59
+ setDropIndicatorIndex(dropIndex);
60
+ }
61
+ };
62
+ if (items.length === 0) {
63
+ return (_jsx("div", { className: `${styles.sortableList} ${styles.emptyState} ${className}`, children: _jsx("div", { className: styles.emptyMessage, children: emptyMessage }) }));
64
+ }
65
+ return (_jsx("div", { className: `${styles.sortableList} ${className}`, children: items.map((item, index) => {
66
+ const { title, extraContent, actions, showHandle = true, expandedContent } = renderItem(item);
67
+ const isDragging = draggedItem?.id === item.id;
68
+ const isMoved = movedItems.has(item.id);
69
+ const canExpand = Boolean(expandedContent);
70
+ const isExpanded = expandedItems.has(item.id);
71
+ return (_jsxs(React.Fragment, { children: [dropIndicatorIndex === index && _jsx("div", { className: styles.dropIndicator }), _jsxs("div", { className: `${styles.sortableItem} ${isDragging ? styles.dragging : ''} ${isMoved ? styles.moved : ''}`, draggable: true, 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.sortableHandle, children: _jsx(CwIcon, { iconId: "grip-dots" }) })) : null, _jsxs("div", { className: styles.sortableContent, children: [_jsx("div", { className: styles.sortableTitle, children: title }), extraContent && _jsx("div", { className: styles.sortableExtraContent, children: extraContent })] }), _jsx("div", { className: styles.sortableActions, children: actions })] }), isExpanded && expandedContent && (_jsx("div", { className: styles.expandedContent, children: expandedContent }))] }), dropIndicatorIndex === items.length && index === items.length - 1 && (_jsx("div", { className: styles.dropIndicator }))] }, item.id));
72
+ }) }));
73
+ }
@@ -0,0 +1,58 @@
1
+ /**
2
+ * useSortableList
3
+ *
4
+ * A React hook that manages the state of a sortable list compatible with `CwSortableList`.
5
+ * It provides utilities to reorder, add, remove, save, and discard changes
6
+ * while tracking which items have been moved for styling purposes.
7
+ *
8
+ * @template T - The item type extending SortableItem (must include an `id` field)
9
+ *
10
+ * @param {T[]} initialItems - Initial array of items for the sortable list.
11
+ *
12
+ * @returns {{
13
+ * items: T[],
14
+ * setItems: React.Dispatch<React.SetStateAction<T[]>>,
15
+ * handleReorder: (newItems: T[], movedId?: string | number) => void,
16
+ * handleSave: (onSave: (items: T[]) => Promise<void>) => Promise<void>,
17
+ * handleDiscard: () => void,
18
+ * addItem: (newItem: T) => void,
19
+ * removeItem: (id: string | number) => void,
20
+ * movedItems: Set<string|number>,
21
+ * hasChanges: boolean,
22
+ * resetKey: number
23
+ * }}
24
+ *
25
+ * @example
26
+ * const {
27
+ * items,
28
+ * handleReorder,
29
+ * handleSave,
30
+ * handleDiscard,
31
+ * movedItems,
32
+ * hasChanges
33
+ * } = useSortableList(initialItems);
34
+ *
35
+ * <CwSortableList
36
+ * items={items}
37
+ * onReorder={handleReorder}
38
+ * movedItems={movedItems}
39
+ * renderItem={(item) => ({ title: item.name })}
40
+ * />
41
+ */
42
+ export interface SortableItem {
43
+ id: string | number;
44
+ [key: string]: any;
45
+ }
46
+ export declare function useSortableList<T extends SortableItem>(initialItems: T[]): {
47
+ items: T[];
48
+ setItems: (newItems: T[]) => void;
49
+ handleReorder: (newItems: T[], movedId?: string | number) => void;
50
+ handleSave: (onSave: (items: T[]) => Promise<void>) => Promise<void>;
51
+ handleDiscard: () => void;
52
+ addItem: (newItem: T) => void;
53
+ movedItems: Set<string | number>;
54
+ removeItem: (id: string | number) => void;
55
+ hasChanges: boolean;
56
+ resetKey: number;
57
+ };
58
+ //# sourceMappingURL=useSortableList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSortableList.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/list/sortable/useSortableList.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,MAAM,WAAW,YAAY;IAC5B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACnB;AAED,wBAAgB,eAAe,CAAC,CAAC,SAAS,YAAY,EAAE,YAAY,EAAE,CAAC,EAAE;;yBAqCzC,CAAC,EAAE;8BA7BW,CAAC,EAAE,YAAY,MAAM,GAAG,MAAM;yBAoBzC,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC;;uBAXrC,CAAC;;qBAMH,MAAM,GAAG,MAAM;;;EAuCvC"}
@@ -0,0 +1,53 @@
1
+ import { useCallback, useState } from "react";
2
+ export function useSortableList(initialItems) {
3
+ const [items, setItems] = useState(initialItems);
4
+ const [originalItems, setOriginalItems] = useState(initialItems);
5
+ const [hasChanges, setHasChanges] = useState(false);
6
+ const [movedItems, setMovedItems] = useState(new Set());
7
+ const [resetKey, setResetKey] = useState(0);
8
+ const handleReorder = useCallback((newItems, movedId) => {
9
+ setItems(newItems);
10
+ if (movedId !== undefined) {
11
+ setMovedItems(prev => new Set(prev).add(movedId));
12
+ }
13
+ setHasChanges(true);
14
+ }, []);
15
+ const addItem = (newItem) => {
16
+ setItems(prev => [...prev, newItem]);
17
+ setHasChanges(true);
18
+ };
19
+ const removeItem = (id) => {
20
+ setItems(prev => prev.filter(item => item.id !== id));
21
+ setHasChanges(true);
22
+ };
23
+ const handleSave = async (onSave) => {
24
+ await onSave(items);
25
+ setOriginalItems(items);
26
+ setMovedItems(new Set());
27
+ setHasChanges(false);
28
+ setResetKey(prev => prev + 1);
29
+ };
30
+ const updateItems = (newItems) => {
31
+ setItems(newItems);
32
+ setOriginalItems(newItems); // Keep original items in sync
33
+ setHasChanges(true);
34
+ };
35
+ const handleDiscard = () => {
36
+ setItems(originalItems);
37
+ setMovedItems(new Set());
38
+ setHasChanges(false);
39
+ setResetKey(prev => prev + 1);
40
+ };
41
+ return {
42
+ items,
43
+ setItems: updateItems,
44
+ handleReorder,
45
+ handleSave,
46
+ handleDiscard,
47
+ addItem,
48
+ movedItems,
49
+ removeItem,
50
+ hasChanges,
51
+ resetKey,
52
+ };
53
+ }
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { CwDialog } from "../dialog/CwDialog";
4
+ export const CwModalReportFunctional = (props) => {
5
+ const [isModal, _setIsModal] = useState(props.isModal !== undefined && props.isModal !== null ? props.isModal : true);
6
+ const renderContentModal = () => {
7
+ if (props.name !== "Empty.pdf") {
8
+ return (_jsx("div", { style: { width: "100%", height: "100%", overflowX: "auto", overflowY: "auto" }, children: _jsx("embed", { src: `data:application/pdf;base64,${props.content}`, type: "application/pdf", style: { width: "100%", height: "100%", display: "block" } }) }));
9
+ }
10
+ else {
11
+ return (_jsx("div", { children: _jsxs("h1", { style: { marginLeft: "2em" }, children: ["Please add a(n) ", props.reportName, " report in ", props.moduleSettings, " Settings"] }) }));
12
+ }
13
+ };
14
+ const renderContentNotModal = () => {
15
+ if (props.name !== "Empty.pdf") {
16
+ return (_jsx("embed", { src: "data:application/pdf;base64," + props.content, type: "application/pdf", width: "100%", height: "600px" }));
17
+ }
18
+ else {
19
+ return (_jsxs("div", { children: ["Please add a(n) ", props.reportName, " report in ", props.moduleSettings, " Settings"] }));
20
+ }
21
+ };
22
+ return (_jsx("div", { id: "cwelltModalReportContent", children: isModal ? (_jsx(CwDialog, { open: props.visible, width: props.width, height: props.height, headline: props.title, onClose: props.onCloseModal, hideFooter: true, children: renderContentModal() })) : (_jsx("div", { children: renderContentNotModal() })) }));
23
+ };