@cwellt_software/cwellt-reactjs-lib 1.1.6 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (637) hide show
  1. package/dist/content/icons/new-cw-icons/NewCwIcons.html +13 -3
  2. package/dist/content/icons/new-cw-icons/NewCwIcons.json +10 -1
  3. package/dist/content/icons/new-cw-icons/css/new-cw-icons.css +39 -2
  4. package/dist/content/icons/new-cw-icons/fonts/NewCwIcons.woff +0 -0
  5. package/dist/index.cjs.js +2169 -1653
  6. package/dist/index.css +1 -7
  7. package/dist/index.d.ts +446 -327
  8. package/dist/index.es.js +2167 -1607
  9. package/dist/src/common/classes/CwSelectList.js +12 -0
  10. package/dist/src/common/classes/CwSelectListItems.js +14 -0
  11. package/dist/src/common/functions/collections.js +18 -0
  12. package/dist/src/common/functions/colorManipulation.js +76 -0
  13. package/dist/src/common/functions/dsl/UiEventDSL.js +20 -0
  14. package/dist/src/common/functions/useSingleAndDoubleClicks.js +28 -0
  15. package/dist/src/components/control/action/button/CwButton.d.ts +5 -2
  16. package/dist/src/components/control/action/button/CwButton.d.ts.map +1 -1
  17. package/dist/src/components/control/action/button/CwButton.js +13 -0
  18. package/dist/src/components/control/action/buttons/CwButtons.d.ts +24 -54
  19. package/dist/src/components/control/action/buttons/CwButtons.d.ts.map +1 -1
  20. package/dist/src/components/control/action/buttons/CwButtons.js +188 -0
  21. package/dist/src/components/control/action/contextmenu/CwAnchoredMenu.d.ts +80 -0
  22. package/dist/src/components/control/action/contextmenu/CwAnchoredMenu.d.ts.map +1 -0
  23. package/dist/src/components/control/action/contextmenu/CwContextMenu.d.ts +0 -11
  24. package/dist/src/components/control/action/contextmenu/CwContextMenu.d.ts.map +1 -1
  25. package/dist/src/components/control/action/contextmenu/CwContextMenu.js +43 -0
  26. package/dist/src/components/control/action/contextual-menu/CwContextualMenu.js +55 -0
  27. package/dist/src/components/control/action/search/CwSearch.d.ts +6 -2
  28. package/dist/src/components/control/action/search/CwSearch.d.ts.map +1 -1
  29. package/dist/src/components/control/action/search/CwSearch.js +67 -0
  30. package/dist/src/components/control/action/tooltip-dialog/CwTooltipDialog.js +11 -0
  31. package/dist/src/components/control/choice/checkbox/CwCheckbox.js +15 -0
  32. package/dist/src/components/control/choice/deprecated/MultiSelect_deprecated_.js +99 -0
  33. package/dist/src/components/control/choice/dropdown/CwDropdown.js +27 -0
  34. package/dist/src/components/control/choice/dropdown/CwDropdownContainer.js +30 -0
  35. package/dist/src/components/control/choice/dropdown/CwDropdownFilter.js +10 -0
  36. package/dist/src/components/control/choice/multi-filter/CwMultiFilter.d.ts +1 -5
  37. package/dist/src/components/control/choice/multi-filter/CwMultiFilter.d.ts.map +1 -1
  38. package/dist/src/components/control/choice/multi-filter/CwMultiFilter.js +298 -0
  39. package/dist/src/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.d.ts +2 -2
  40. package/dist/src/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.d.ts.map +1 -1
  41. package/dist/src/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.js +17 -0
  42. package/dist/src/components/control/choice/multiselect/CwHeadFilter.js +80 -0
  43. package/dist/src/components/control/choice/multiselect/CwMultiselect.js +393 -0
  44. package/dist/src/components/control/choice/multiselect/CwOptionList.js +36 -0
  45. package/dist/src/components/control/choice/option/CwOption.js +16 -0
  46. package/dist/src/components/control/choice/select/CwSelect.js +36 -0
  47. package/dist/src/components/control/choice/toggle/CwToggle.d.ts.map +1 -1
  48. package/dist/src/components/control/choice/toggle/CwToggle.js +9 -0
  49. package/dist/src/components/control/input/any/CwInput.js +16 -0
  50. package/dist/src/components/control/input/color/CwColorPicker.js +210 -0
  51. package/dist/src/components/control/input/color/CwInputColor.js +142 -0
  52. package/dist/src/components/control/input/date/CwInputDate.js +29 -0
  53. package/dist/src/components/control/input/date-picker/CwInputDatePicker.js +109 -0
  54. package/dist/src/components/control/input/date-text/CwInputDateText.js +90 -0
  55. package/dist/src/components/control/input/datetime/CwInputDatetime.js +29 -0
  56. package/dist/src/components/control/input/digit/CwDigit.js +28 -0
  57. package/dist/src/components/control/input/file/CwFileUpload.js +52 -0
  58. package/dist/src/components/control/input/file/CwFileUploadMultiple.d.ts +1 -0
  59. package/dist/src/components/control/input/file/CwFileUploadMultiple.d.ts.map +1 -1
  60. package/dist/src/components/control/input/file/CwFileUploadMultiple.js +148 -0
  61. package/dist/src/components/control/input/image/CwInputImage.js +52 -0
  62. package/dist/src/components/control/input/image-area/CwImageArea.js +113 -0
  63. package/dist/src/components/control/input/new-dates/CwDatePicker.d.ts +44 -0
  64. package/dist/src/components/control/input/new-dates/CwDatePicker.d.ts.map +1 -0
  65. package/dist/src/components/control/input/new-dates/CwDateRangePicker.d.ts +65 -0
  66. package/dist/src/components/control/input/new-dates/CwDateRangePicker.d.ts.map +1 -0
  67. package/dist/src/components/control/input/new-dates/CwDateTimePicker.d.ts +47 -0
  68. package/dist/src/components/control/input/new-dates/CwDateTimePicker.d.ts.map +1 -0
  69. package/dist/src/components/control/input/new-dates/CwDateTimePickerCompact.d.ts +46 -0
  70. package/dist/src/components/control/input/new-dates/CwDateTimePickerCompact.d.ts.map +1 -0
  71. package/dist/src/components/control/input/new-dates/CwTimePicker.d.ts +38 -0
  72. package/dist/src/components/control/input/new-dates/CwTimePicker.d.ts.map +1 -0
  73. package/dist/src/components/control/input/new-dates/dateRangePresets.d.ts +19 -0
  74. package/dist/src/components/control/input/new-dates/dateRangePresets.d.ts.map +1 -0
  75. package/dist/src/components/control/input/number/CwInputNumber.js +11 -0
  76. package/dist/src/components/control/input/phone/CwInputPhone.js +24 -0
  77. package/dist/src/components/control/input/text/CwInputText.d.ts.map +1 -1
  78. package/dist/src/components/control/input/text/CwInputText.js +31 -0
  79. package/dist/src/components/control/input/text-area/CwTextArea.js +9 -0
  80. package/dist/src/components/control/input/time/CwTime.js +29 -0
  81. package/dist/src/components/control/input/weekday/CwWeekdaySelector.js +143 -0
  82. package/dist/src/components/custom/find-airport/CwFindAirportComp.d.ts +4 -1
  83. package/dist/src/components/custom/find-airport/CwFindAirportComp.d.ts.map +1 -1
  84. package/dist/src/components/custom/find-airport/CwFindAirportComp.js +240 -0
  85. package/dist/src/components/custom/scheduler/CwSchedulerComp.js +211 -0
  86. package/dist/src/components/custom/scheduler/CwSuperSchedulerComp.js +269 -0
  87. package/dist/src/components/custom/scheduler/components/EventRender.js +142 -0
  88. package/dist/src/components/custom/scheduler/components/ResourceListRender.d.ts +1 -1
  89. package/dist/src/components/custom/scheduler/components/ResourceListRender.d.ts.map +1 -1
  90. package/dist/src/components/custom/scheduler/components/ResourceListRender.js +12 -0
  91. package/dist/src/components/custom/scheduler/components/ResourceRender.js +26 -0
  92. package/dist/src/components/custom/scheduler/components/day_headers/DayHeader.js +13 -0
  93. package/dist/src/components/custom/scheduler/components/day_headers/MonthHeader.js +12 -0
  94. package/dist/src/components/custom/scheduler/components/day_headers/MyDaysHeader.js +62 -0
  95. package/dist/src/components/custom/scheduler/components/day_headers/WeekHeader.js +13 -0
  96. package/dist/src/components/custom/scheduler/components/resources_title_list/ResourcesTitleList.js +24 -0
  97. package/dist/src/components/custom/scheduler/components/scheduler_content_area/SchedulerContentArea.js +17 -0
  98. package/dist/src/components/custom/scheduler/components/scheduler_header/SchedulerHeader.js +26 -0
  99. package/dist/src/components/custom/scheduler/components/scheduler_timeline/SchedulerTimeLine.js +23 -0
  100. package/dist/src/components/custom/scheduler/components/time_headers/TimeHeader.js +31 -0
  101. package/dist/src/components/custom/scheduler/components/time_headers/TimeHeaderRow.js +16 -0
  102. package/dist/src/components/custom/scheduler/components/time_line/TimeLine.js +12 -0
  103. package/dist/src/components/custom/scheduler/logic/dates/addMinutesToDateFromPx.js +5 -0
  104. package/dist/src/components/custom/scheduler/logic/dates/daysBetweenTwoDates.js +15 -0
  105. package/dist/src/components/custom/scheduler/logic/dates/daysBetweenTwoDatesWithoutCeil.js +5 -0
  106. package/dist/src/components/custom/scheduler/logic/dates/getFormatedTimeForHeader.js +43 -0
  107. package/dist/src/components/custom/scheduler/logic/dates/getMonthHeaderData.js +35 -0
  108. package/dist/src/components/custom/scheduler/logic/dates/getUtcToday.js +6 -0
  109. package/dist/src/components/custom/scheduler/logic/dates/getWeekHeaderDataFromWeekRange.js +20 -0
  110. package/dist/src/components/custom/scheduler/logic/dates/listOfDatesToWeeks.js +55 -0
  111. package/dist/src/components/custom/scheduler/logic/divisions/calculateDivisionType.js +13 -0
  112. package/dist/src/components/custom/scheduler/logic/divisions/calculateDivisions.js +16 -0
  113. package/dist/src/components/custom/scheduler/logic/filtering/filterEvents.js +33 -0
  114. package/dist/src/components/custom/scheduler/logic/filtering/filterResources.js +14 -0
  115. package/dist/src/components/custom/scheduler/logic/filtering/hasSameProperties.js +10 -0
  116. package/dist/src/components/custom/scheduler/logic/onDrop/OnDrop.js +45 -0
  117. package/dist/src/components/custom/scheduler/logic/pixels/getHeightLineScheduler.js +14 -0
  118. package/dist/src/components/custom/scheduler/logic/pixels/getPixelsForEvent.js +32 -0
  119. package/dist/src/components/custom/scheduler/logic/pixels/heightScheduler.js +14 -0
  120. package/dist/src/components/custom/scheduler/logic/pixels/heightSchedulerPinned.js +9 -0
  121. package/dist/src/components/custom/scheduler/logic/state_handle/doubleClickOnResource.js +5 -0
  122. package/dist/src/components/custom/scheduler/logic/state_handle/handleResourceChange.js +11 -0
  123. package/dist/src/components/custom/scheduler/logic/state_handle/onDragOver.js +9 -0
  124. package/dist/src/components/custom/scheduler/logic/state_handle/onDropEventToResource.js +3 -0
  125. package/dist/src/components/custom/scheduler/logic/strings/compareStrings.js +7 -0
  126. package/dist/src/components/custom/scheduler/logic/strings/getGUID.js +7 -0
  127. package/dist/src/components/custom/scheduler/logic/ui/checkIfSlotAvailable.js +8 -0
  128. package/dist/src/components/custom/scheduler/logic/ui/getEventsOfResource.js +45 -0
  129. package/dist/src/components/custom/scheduler/logic/ui/getTimeHeaders.js +35 -0
  130. package/dist/src/components/custom/scheduler/logic/ui/isAllowedToMove.js +19 -0
  131. package/dist/src/components/custom/scheduler/logic/ui/updateResourceVisibility.js +15 -0
  132. package/dist/src/components/custom/scheduler/state/CblDragAndDrop.js +18 -0
  133. package/dist/src/components/custom/scheduler/state/CwSchedulerProps.js +1 -0
  134. package/dist/src/components/custom/scheduler/state/Resource.js +18 -0
  135. package/dist/src/components/custom/scheduler/state/State.js +1 -0
  136. package/dist/src/components/custom/scheduler/state/cblEvent.js +28 -0
  137. package/dist/src/components/custom/scheduler/state/cblEventCompProps.js +1 -0
  138. package/dist/src/components/custom/scheduler/state/resourceCompProps2.js +1 -0
  139. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.d.ts +3 -4
  140. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.d.ts.map +1 -1
  141. package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.js +123 -0
  142. package/dist/src/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.d.ts +2 -1
  143. package/dist/src/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.d.ts.map +1 -1
  144. package/dist/src/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.js +118 -0
  145. package/dist/src/components/custom/scheduler-new/presentation/SchedulerPresenter.js +166 -0
  146. package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderDivision.js +26 -0
  147. package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderTitle.js +8 -0
  148. package/dist/src/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.js +86 -0
  149. package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.js +60 -0
  150. package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.d.ts.map +1 -1
  151. package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.js +24 -0
  152. package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.d.ts +2 -2
  153. package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.d.ts.map +1 -1
  154. package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.js +150 -0
  155. package/dist/src/components/custom/scheduler-new/presentation/components/row/EventSideDrag.js +11 -0
  156. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts +2 -2
  157. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.d.ts.map +1 -1
  158. package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.js +176 -0
  159. package/dist/src/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.js +8 -0
  160. package/dist/src/components/custom/scheduler-new/presentation/components/timeline/TimeLine.js +39 -0
  161. package/dist/src/components/custom/scheduler-new/presentation/components/timeline/WeekEndLine.js +8 -0
  162. package/dist/src/components/custom/scheduler-new/presentation/helpers.js +43 -0
  163. package/dist/src/components/custom/scheduler-new/presentation/logic/WeekendCalc.js +24 -0
  164. package/dist/src/components/custom/scheduler-new/presentation/logic/dateFromPercentage.js +7 -0
  165. package/dist/src/components/custom/scheduler-new/presentation/logic/eventIsVisible.js +7 -0
  166. package/dist/src/components/custom/scheduler-new/presentation/logic/getDefaultDivisions.js +113 -0
  167. package/dist/src/components/custom/scheduler-new/presentation/logic/getDivisions.js +21 -0
  168. package/dist/src/components/custom/scheduler-new/presentation/logic/getEventSizes.js +30 -0
  169. package/dist/src/components/custom/scheduler-new/presentation/logic/getLinesByDivisions.js +13 -0
  170. package/dist/src/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.d.ts +1 -0
  171. package/dist/src/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.d.ts.map +1 -1
  172. package/dist/src/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.js +7 -0
  173. package/dist/src/components/custom/scheduler-new/presentation/logic/separateEventsToInnerRows.js +32 -0
  174. package/dist/src/components/custom/scheduler-new/presentation/logic/sortByCategoryAndTitle.js +12 -0
  175. package/dist/src/components/custom/scheduler-temporal/CwSchedulerComp2.js +267 -0
  176. package/dist/src/components/custom/scheduler-temporal/CwSuperSchedulerComp.js +269 -0
  177. package/dist/src/components/custom/scheduler-temporal/components/EventRender.js +142 -0
  178. package/dist/src/components/custom/scheduler-temporal/components/ResourceListRender.js +12 -0
  179. package/dist/src/components/custom/scheduler-temporal/components/ResourceRender.js +26 -0
  180. package/dist/src/components/custom/scheduler-temporal/components/day_headers/DayHeader.js +13 -0
  181. package/dist/src/components/custom/scheduler-temporal/components/day_headers/MonthHeader.js +12 -0
  182. package/dist/src/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.js +62 -0
  183. package/dist/src/components/custom/scheduler-temporal/components/day_headers/WeekHeader.js +13 -0
  184. package/dist/src/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.js +22 -0
  185. package/dist/src/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.js +17 -0
  186. package/dist/src/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.js +26 -0
  187. package/dist/src/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.js +23 -0
  188. package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeader.js +31 -0
  189. package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.js +16 -0
  190. package/dist/src/components/custom/scheduler-temporal/components/time_line/TimeLine.js +12 -0
  191. package/dist/src/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.js +5 -0
  192. package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.js +15 -0
  193. package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.js +5 -0
  194. package/dist/src/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.js +43 -0
  195. package/dist/src/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.js +35 -0
  196. package/dist/src/components/custom/scheduler-temporal/logic/dates/getUtcToday.js +6 -0
  197. package/dist/src/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.js +20 -0
  198. package/dist/src/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.js +55 -0
  199. package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.js +13 -0
  200. package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.js +16 -0
  201. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.js +10 -0
  202. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterEvents.js +34 -0
  203. package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterResources.js +14 -0
  204. package/dist/src/components/custom/scheduler-temporal/logic/filtering/hasSameProperties.js +10 -0
  205. package/dist/src/components/custom/scheduler-temporal/logic/onDrop/OnDrop.js +36 -0
  206. package/dist/src/components/custom/scheduler-temporal/logic/pixels/getHeightLineScheduler.js +14 -0
  207. package/dist/src/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.js +32 -0
  208. package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightScheduler.js +14 -0
  209. package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightSchedulerPinned.js +9 -0
  210. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.js +5 -0
  211. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handlePropChanges.js +178 -0
  212. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handleResourceChange.js +11 -0
  213. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDragOver.js +9 -0
  214. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.js +3 -0
  215. package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.js +3 -0
  216. package/dist/src/components/custom/scheduler-temporal/logic/strings/compareStrings.js +7 -0
  217. package/dist/src/components/custom/scheduler-temporal/logic/strings/getGUID.js +7 -0
  218. package/dist/src/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.js +9 -0
  219. package/dist/src/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.js +92 -0
  220. package/dist/src/components/custom/scheduler-temporal/logic/ui/getHasPropsChanged.js +242 -0
  221. package/dist/src/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.js +35 -0
  222. package/dist/src/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.js +19 -0
  223. package/dist/src/components/custom/scheduler-temporal/logic/ui/shouldTriggerScroll.js +241 -0
  224. package/dist/src/components/custom/scheduler-temporal/logic/ui/updateResourceVisibility.js +15 -0
  225. package/dist/src/components/custom/scheduler-temporal/state/CblDragAndDrop.js +18 -0
  226. package/dist/src/components/custom/scheduler-temporal/state/Resource.js +18 -0
  227. package/dist/src/components/custom/scheduler-temporal/state/cblEvent.js +28 -0
  228. package/dist/src/components/custom/scheduler-temporal/state/cblEventCompProps.js +1 -0
  229. package/dist/src/components/custom/scheduler-temporal/state/resourceCompProps2.js +1 -0
  230. package/dist/src/components/custom/super-scheduler/PinRowHeader.d.ts +2 -2
  231. package/dist/src/components/custom/super-scheduler/PinRowHeader.d.ts.map +1 -1
  232. package/dist/src/components/custom/super-scheduler/PinRowHeader.js +53 -0
  233. package/dist/src/components/custom/super-scheduler/SuperScheduler.d.ts +2 -2
  234. package/dist/src/components/custom/super-scheduler/SuperScheduler.d.ts.map +1 -1
  235. package/dist/src/components/custom/super-scheduler/SuperScheduler.js +23 -0
  236. package/dist/src/components/custom/super-scheduler/SuperSchedulerEvents.js +15 -0
  237. package/dist/src/components/custom/super-scheduler/SuperSchedulerPresenter.js +45 -0
  238. package/dist/src/components/display/data/accordion/CwAccordionContainer.js +20 -0
  239. package/dist/src/components/display/data/generic_tooltip/CwGenericTooltip.d.ts +1 -0
  240. package/dist/src/components/display/data/generic_tooltip/CwGenericTooltip.d.ts.map +1 -1
  241. package/dist/src/components/display/data/generic_tooltip/CwGenericTooltip.js +138 -0
  242. package/dist/src/components/display/data/table/CwTable.d.ts +25 -20
  243. package/dist/src/components/display/data/table/CwTable.d.ts.map +1 -1
  244. package/dist/src/components/display/data/table/CwTable.js +203 -0
  245. package/dist/src/components/display/graphics/icon/CwIcon.d.ts.map +1 -1
  246. package/dist/src/components/display/graphics/icon/CwIcon.js +23 -0
  247. package/dist/src/components/display/graphics/icon/svg-icons.d.ts +6 -0
  248. package/dist/src/components/display/graphics/icon/svg-icons.d.ts.map +1 -0
  249. package/dist/src/components/display/graphics/loading/CwLoading.js +27 -0
  250. package/dist/src/components/display/graphics/loading-small/CwLoadingSmall.js +20 -0
  251. package/dist/src/components/display/text/heading/CwHeadingMain.js +5 -0
  252. package/dist/src/components/display/text/heading/CwHeadingSecond.js +5 -0
  253. package/dist/src/components/display/text/label/CwLabel.d.ts +1 -4
  254. package/dist/src/components/display/text/label/CwLabel.d.ts.map +1 -1
  255. package/dist/src/components/display/text/label/CwLabel.js +13 -0
  256. package/dist/src/components/display/text/message/CwMessage.js +75 -0
  257. package/dist/src/components/display/text/note/CwNote.js +78 -0
  258. package/dist/src/components/display/text/tag/CwChip.d.ts.map +1 -1
  259. package/dist/src/components/display/text/tag/CwChip.js +57 -0
  260. package/dist/src/components/display/text/tag/CwTag.js +21 -0
  261. package/dist/src/components/display/text/tooltip/CwTooltip.js +4 -0
  262. package/dist/src/components/layout/align/CwAlign.js +54 -0
  263. package/dist/src/components/layout/card/CwCard.js +55 -0
  264. package/dist/src/components/layout/card/CwCardList.js +38 -0
  265. package/dist/src/components/layout/dialog/CwDialog.d.ts.map +1 -1
  266. package/dist/src/components/layout/dialog/CwDialog.js +255 -0
  267. package/dist/src/components/layout/dialog/CwDialogManager.js +44 -0
  268. package/dist/src/components/layout/list/details/CwExpandable.js +28 -0
  269. package/dist/src/components/layout/list/key-value/CwKeyValueList.d.ts +2 -3
  270. package/dist/src/components/layout/list/key-value/CwKeyValueList.d.ts.map +1 -1
  271. package/dist/src/components/layout/list/key-value/CwKeyValueList.js +23 -0
  272. package/dist/src/components/layout/list/sortable/CwSortableList.js +73 -0
  273. package/dist/src/components/layout/list/sortable/useSortableList.js +53 -0
  274. package/dist/src/components/layout/modal/CwModalReportFunctional.d.ts.map +1 -1
  275. package/dist/src/components/layout/modal/CwModalReportFunctional.js +23 -0
  276. package/dist/src/components/layout/modal/hover/CwModalHover.js +61 -0
  277. package/dist/src/components/layout/modal/legacy/cw_modal.d.ts +4 -0
  278. package/dist/src/components/layout/modal/legacy/cw_modal.d.ts.map +1 -1
  279. package/dist/src/components/layout/modal/legacy/cw_modal.js +44 -0
  280. package/dist/src/components/layout/modal/legacy/cw_modal_confirm.js +39 -0
  281. package/dist/src/components/layout/modal/legacy/cw_modal_iframe.js +44 -0
  282. package/dist/src/components/layout/modal/legacy/cw_modal_report.js +26 -0
  283. package/dist/src/components/layout/table/grouped/CwTableGrouped.js +70 -0
  284. package/dist/src/components/layout/tabs/CwTabs.d.ts +2 -0
  285. package/dist/src/components/layout/tabs/CwTabs.d.ts.map +1 -1
  286. package/dist/src/components/layout/tabs/CwTabs.js +53 -0
  287. package/dist/src/dev/palette.d.ts +1 -1
  288. package/dist/src/dev/palette.d.ts.map +1 -1
  289. package/dist/src/index.d.ts +8 -12
  290. package/dist/src/index.d.ts.map +1 -1
  291. package/dist/src/index.js +187 -0
  292. package/dist/test/components/custom/new-scheduler/presentation/logic/getDefaultDivisions.test.js +48 -0
  293. package/dist/test/components/custom/new-scheduler/presentation/logic/hoursBetween.test.js +15 -0
  294. package/dist/test/components/custom/new-scheduler/presentation/logic/monthDivisions.test.js +42 -0
  295. package/dist/test/components/custom/new-scheduler/presentation/logic/weekendCalc.test.js +30 -0
  296. package/dist/test/components/custom/scheduler/addMinutesToDateFromPx.test.js +43 -0
  297. package/dist/test/components/custom/scheduler/checkIfSlotAvailable.test.js +30 -0
  298. package/dist/test/components/custom/scheduler/daysBetweenTwoDates.test.js +61 -0
  299. package/dist/test/components/custom/scheduler/daysBetweenTwoDatesWithoutCeilForEvent.test.js +27 -0
  300. package/dist/test/components/custom/scheduler/getGUID.test.js +30 -0
  301. package/dist/test/components/custom/scheduler/getPixelsForEvent.test.js +38 -0
  302. package/dist/test/components/custom/scheduler/getTimeHeaders.test.js +35 -0
  303. package/dist/test/components/custom/scheduler/hasSameProperties.test.js +51 -0
  304. package/dist/test/components/custom/scheduler/isAllowedToMove.test.js +28 -0
  305. package/dist/test/components/custom/scheduler/listOfDatesToWeeks.test.js +72 -0
  306. package/dist/test/jest.setup.js +1 -0
  307. package/package.json +11 -12
  308. package/dist/assets/asset-DnHaq7m- +0 -50
  309. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-full-normal.woff2 +0 -0
  310. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-grad-normal.woff2 +0 -0
  311. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-opsz-normal.woff2 +0 -0
  312. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-slnt-normal.woff2 +0 -0
  313. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-standard-normal.woff2 +0 -0
  314. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-wdth-normal.woff2 +0 -0
  315. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-wght-normal.woff2 +0 -0
  316. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-xopq-normal.woff2 +0 -0
  317. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-xtra-normal.woff2 +0 -0
  318. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-yopq-normal.woff2 +0 -0
  319. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytas-normal.woff2 +0 -0
  320. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytde-normal.woff2 +0 -0
  321. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytfi-normal.woff2 +0 -0
  322. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytlc-normal.woff2 +0 -0
  323. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytuc-normal.woff2 +0 -0
  324. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-full-normal.woff2 +0 -0
  325. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-grad-normal.woff2 +0 -0
  326. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-opsz-normal.woff2 +0 -0
  327. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-slnt-normal.woff2 +0 -0
  328. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-standard-normal.woff2 +0 -0
  329. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-wdth-normal.woff2 +0 -0
  330. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-wght-normal.woff2 +0 -0
  331. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-xopq-normal.woff2 +0 -0
  332. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-xtra-normal.woff2 +0 -0
  333. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-yopq-normal.woff2 +0 -0
  334. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytas-normal.woff2 +0 -0
  335. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytde-normal.woff2 +0 -0
  336. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytfi-normal.woff2 +0 -0
  337. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytlc-normal.woff2 +0 -0
  338. package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytuc-normal.woff2 +0 -0
  339. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-full-normal.woff2 +0 -0
  340. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-grad-normal.woff2 +0 -0
  341. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-opsz-normal.woff2 +0 -0
  342. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-slnt-normal.woff2 +0 -0
  343. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-standard-normal.woff2 +0 -0
  344. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-wdth-normal.woff2 +0 -0
  345. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-wght-normal.woff2 +0 -0
  346. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-xopq-normal.woff2 +0 -0
  347. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-xtra-normal.woff2 +0 -0
  348. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-yopq-normal.woff2 +0 -0
  349. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytas-normal.woff2 +0 -0
  350. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytde-normal.woff2 +0 -0
  351. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytfi-normal.woff2 +0 -0
  352. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytlc-normal.woff2 +0 -0
  353. package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytuc-normal.woff2 +0 -0
  354. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-full-normal.woff2 +0 -0
  355. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-grad-normal.woff2 +0 -0
  356. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-opsz-normal.woff2 +0 -0
  357. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-slnt-normal.woff2 +0 -0
  358. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-standard-normal.woff2 +0 -0
  359. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-wdth-normal.woff2 +0 -0
  360. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-wght-normal.woff2 +0 -0
  361. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-xopq-normal.woff2 +0 -0
  362. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-xtra-normal.woff2 +0 -0
  363. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-yopq-normal.woff2 +0 -0
  364. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytas-normal.woff2 +0 -0
  365. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytde-normal.woff2 +0 -0
  366. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytfi-normal.woff2 +0 -0
  367. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytlc-normal.woff2 +0 -0
  368. package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytuc-normal.woff2 +0 -0
  369. package/dist/content/icons/cw-icons/css/cw-icons.css +0 -2784
  370. package/dist/content/icons/cw-icons/fonts/cwAvinodeFont/CblAvinodeIcon.eot +0 -0
  371. package/dist/content/icons/cw-icons/fonts/cwAvinodeFont/CblAvinodeIcon.svg +0 -11
  372. package/dist/content/icons/cw-icons/fonts/cwAvinodeFont/CblAvinodeIcon.ttf +0 -0
  373. package/dist/content/icons/cw-icons/fonts/cwAvinodeFont/CblAvinodeIcon.woff +0 -0
  374. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.eot +0 -0
  375. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.svg +0 -38
  376. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.ttf +0 -0
  377. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.woff +0 -0
  378. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.woff2 +0 -0
  379. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.eot +0 -0
  380. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.svg +0 -29
  381. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.ttf +0 -0
  382. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.woff +0 -0
  383. package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.woff2 +0 -0
  384. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblCrewControlReact.eot +0 -0
  385. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblCrewControlReact.svg +0 -12
  386. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblCrewControlReact.ttf +0 -0
  387. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblCrewControlReact.woff +0 -0
  388. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblDutyIcon.eot +0 -0
  389. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblDutyIcon.svg +0 -11
  390. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblDutyIcon.ttf +0 -0
  391. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblDutyIcon.woff +0 -0
  392. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/SessionWarning.eot +0 -0
  393. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/SessionWarning.svg +0 -12
  394. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/SessionWarning.ttf +0 -0
  395. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/SessionWarning.woff +0 -0
  396. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.eot +0 -0
  397. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.svg +0 -26
  398. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.ttf +0 -0
  399. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.woff +0 -0
  400. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.woff2 +0 -0
  401. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrol.eot +0 -0
  402. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrol.svg +0 -13
  403. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrol.ttf +0 -0
  404. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrol.woff +0 -0
  405. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.eot +0 -0
  406. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.svg +0 -29
  407. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.ttf +0 -0
  408. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.woff +0 -0
  409. package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.woff2 +0 -0
  410. package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.eot +0 -0
  411. package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.svg +0 -29
  412. package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.ttf +0 -0
  413. package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.woff +0 -0
  414. package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.woff2 +0 -0
  415. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.eot +0 -0
  416. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.svg +0 -17
  417. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.ttf +0 -0
  418. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.woff +0 -0
  419. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.woff2 +0 -0
  420. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.eot +0 -0
  421. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.svg +0 -20
  422. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.ttf +0 -0
  423. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.woff +0 -0
  424. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.woff2 +0 -0
  425. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewSchedulingFont.eot +0 -0
  426. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewSchedulingFont.svg +0 -12
  427. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewSchedulingFont.ttf +0 -0
  428. package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewSchedulingFont.woff +0 -0
  429. package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.eot +0 -0
  430. package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.svg +0 -20
  431. package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.ttf +0 -0
  432. package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.woff +0 -0
  433. package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.woff2 +0 -0
  434. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/ArchiveEmanual.eot +0 -0
  435. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/ArchiveEmanual.svg +0 -12
  436. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/ArchiveEmanual.ttf +0 -0
  437. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/ArchiveEmanual.woff +0 -0
  438. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/CblEmanualNewIcons.eot +0 -0
  439. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/CblEmanualNewIcons.svg +0 -14
  440. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/CblEmanualNewIcons.ttf +0 -0
  441. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/CblEmanualNewIcons.woff +0 -0
  442. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.eot +0 -0
  443. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.svg +0 -38
  444. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.ttf +0 -0
  445. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.woff +0 -0
  446. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.woff2 +0 -0
  447. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualApprovedFile.eot +0 -0
  448. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualApprovedFile.svg +0 -11
  449. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualApprovedFile.ttf +0 -0
  450. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualApprovedFile.woff +0 -0
  451. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.eot +0 -0
  452. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.svg +0 -17
  453. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.ttf +0 -0
  454. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.woff +0 -0
  455. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.woff2 +0 -0
  456. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMarkLink.eot +0 -0
  457. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMarkLink.svg +0 -11
  458. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMarkLink.ttf +0 -0
  459. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMarkLink.woff +0 -0
  460. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFolder.eot +0 -0
  461. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFolder.svg +0 -11
  462. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFolder.ttf +0 -0
  463. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFolder.woff +0 -0
  464. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFont.eot +0 -0
  465. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFont.svg +0 -13
  466. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFont.ttf +0 -0
  467. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFont.woff +0 -0
  468. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.eot +0 -0
  469. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.svg +0 -32
  470. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.ttf +0 -0
  471. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.woff +0 -0
  472. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.woff2 +0 -0
  473. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPendingIcon.eot +0 -0
  474. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPendingIcon.svg +0 -11
  475. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPendingIcon.ttf +0 -0
  476. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPendingIcon.woff +0 -0
  477. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishFile.eot +0 -0
  478. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishFile.svg +0 -11
  479. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishFile.ttf +0 -0
  480. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishFile.woff +0 -0
  481. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishIconFile.eot +0 -0
  482. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishIconFile.svg +0 -11
  483. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishIconFile.ttf +0 -0
  484. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishIconFile.woff +0 -0
  485. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrash.eot +0 -0
  486. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrash.svg +0 -11
  487. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrash.ttf +0 -0
  488. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrash.woff +0 -0
  489. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrashRight.eot +0 -0
  490. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrashRight.svg +0 -11
  491. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrashRight.ttf +0 -0
  492. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrashRight.woff +0 -0
  493. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/LibraryIcon.eot +0 -0
  494. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/LibraryIcon.svg +0 -12
  495. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/LibraryIcon.ttf +0 -0
  496. package/dist/content/icons/cw-icons/fonts/cwEmanualFont/LibraryIcon.woff +0 -0
  497. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.eot +0 -0
  498. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.svg +0 -158
  499. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.ttf +0 -0
  500. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.woff +0 -0
  501. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.woff2 +0 -0
  502. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/cwellt_icon.eot +0 -0
  503. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/cwellt_icon.svg +0 -18
  504. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/cwellt_icon.ttf +0 -0
  505. package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/cwellt_icon.woff +0 -0
  506. package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.eot +0 -0
  507. package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.svg +0 -62
  508. package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.ttf +0 -0
  509. package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.woff +0 -0
  510. package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.woff2 +0 -0
  511. package/dist/content/icons/cw-icons/fonts/cwFavoritesIcons/CblFavoritesIcons.eot +0 -0
  512. package/dist/content/icons/cw-icons/fonts/cwFavoritesIcons/CblFavoritesIcons.svg +0 -43
  513. package/dist/content/icons/cw-icons/fonts/cwFavoritesIcons/CblFavoritesIcons.ttf +0 -0
  514. package/dist/content/icons/cw-icons/fonts/cwFavoritesIcons/CblFavoritesIcons.woff +0 -0
  515. package/dist/content/icons/cw-icons/fonts/cwFgIconsFonts/CblFigIcons.eot +0 -0
  516. package/dist/content/icons/cw-icons/fonts/cwFgIconsFonts/CblFigIcons.svg +0 -49
  517. package/dist/content/icons/cw-icons/fonts/cwFgIconsFonts/CblFigIcons.ttf +0 -0
  518. package/dist/content/icons/cw-icons/fonts/cwFgIconsFonts/CblFigIcons.woff +0 -0
  519. package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.eot +0 -0
  520. package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.svg +0 -41
  521. package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.ttf +0 -0
  522. package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.woff +0 -0
  523. package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.woff2 +0 -0
  524. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/CblUndoIcon.eot +0 -0
  525. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/CblUndoIcon.svg +0 -11
  526. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/CblUndoIcon.ttf +0 -0
  527. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/CblUndoIcon.woff +0 -0
  528. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/FlightWatchOnTimeIcon.eot +0 -0
  529. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/FlightWatchOnTimeIcon.svg +0 -11
  530. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/FlightWatchOnTimeIcon.ttf +0 -0
  531. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/FlightWatchOnTimeIcon.woff +0 -0
  532. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.eot +0 -0
  533. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.svg +0 -41
  534. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.ttf +0 -0
  535. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.woff +0 -0
  536. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.woff2 +0 -0
  537. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/IDCardStatusIcon.eot +0 -0
  538. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/IDCardStatusIcon.svg +0 -12
  539. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/IDCardStatusIcon.ttf +0 -0
  540. package/dist/content/icons/cw-icons/fonts/cwGeneralFont/IDCardStatusIcon.woff +0 -0
  541. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.eot +0 -0
  542. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.svg +0 -17
  543. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.ttf +0 -0
  544. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.woff +0 -0
  545. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.woff2 +0 -0
  546. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/calculator.eot +0 -0
  547. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/calculator.svg +0 -11
  548. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/calculator.ttf +0 -0
  549. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/calculator.woff +0 -0
  550. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/icons_cwellt.eot +0 -0
  551. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/icons_cwellt.svg +0 -11
  552. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/icons_cwellt.ttf +0 -0
  553. package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/icons_cwellt.woff +0 -0
  554. package/dist/content/icons/cw-icons/fonts/cwOpstoolReactFont/opstoolReactIcons.eot +0 -0
  555. package/dist/content/icons/cw-icons/fonts/cwOpstoolReactFont/opstoolReactIcons.svg +0 -12
  556. package/dist/content/icons/cw-icons/fonts/cwOpstoolReactFont/opstoolReactIcons.ttf +0 -0
  557. package/dist/content/icons/cw-icons/fonts/cwOpstoolReactFont/opstoolReactIcons.woff +0 -0
  558. package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.eot +0 -0
  559. package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.svg +0 -17
  560. package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.ttf +0 -0
  561. package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.woff +0 -0
  562. package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.woff2 +0 -0
  563. package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.eot +0 -0
  564. package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.svg +0 -50
  565. package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.ttf +0 -0
  566. package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.woff +0 -0
  567. package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.woff2 +0 -0
  568. package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.eot +0 -0
  569. package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.svg +0 -17
  570. package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.ttf +0 -0
  571. package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.woff +0 -0
  572. package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.woff2 +0 -0
  573. package/dist/content/icons/font-awesome/webfonts/fa-brands-400.ttf +0 -0
  574. package/dist/content/icons/font-awesome/webfonts/fa-regular-400.ttf +0 -0
  575. package/dist/content/icons/font-awesome/webfonts/fa-solid-900.ttf +0 -0
  576. package/dist/content/icons/font-awesome/webfonts/fa-v4compatibility.ttf +0 -0
  577. package/dist/index.cjs.js.map +0 -1
  578. package/dist/index.css.map +0 -1
  579. package/dist/index.d.ts.map +0 -1
  580. package/dist/index.esm.js +0 -4836
  581. package/dist/src/common/functions/reactor.d.ts +0 -2
  582. package/dist/src/common/functions/reactor.d.ts.map +0 -1
  583. package/dist/src/components/control/input/chipper/CwChip.d.ts +0 -12
  584. package/dist/src/components/control/input/chipper/CwChip.d.ts.map +0 -1
  585. package/dist/src/components/custom/scheduler/components/ClearSchedulerButton.d.ts +0 -8
  586. package/dist/src/components/custom/scheduler/components/ClearSchedulerButton.d.ts.map +0 -1
  587. package/dist/src/components/custom/scheduler/logic/filtering/filterAndProcessResources.d.ts +0 -14
  588. package/dist/src/components/custom/scheduler/logic/filtering/filterAndProcessResources.d.ts.map +0 -1
  589. package/dist/src/components/custom/scheduler/logic/pixels/calculateMaxPxFromDateRange.d.ts +0 -2
  590. package/dist/src/components/custom/scheduler/logic/pixels/calculateMaxPxFromDateRange.d.ts.map +0 -1
  591. package/dist/src/components/custom/scheduler/logic/state_handle/handleDateChange.d.ts +0 -5
  592. package/dist/src/components/custom/scheduler/logic/state_handle/handleDateChange.d.ts.map +0 -1
  593. package/dist/src/components/custom/scheduler/logic/state_handle/handlePropChanges.d.ts +0 -5
  594. package/dist/src/components/custom/scheduler/logic/state_handle/handlePropChanges.d.ts.map +0 -1
  595. package/dist/src/components/custom/scheduler/logic/state_handle/onResizeEvent.d.ts +0 -3
  596. package/dist/src/components/custom/scheduler/logic/state_handle/onResizeEvent.d.ts.map +0 -1
  597. package/dist/src/components/custom/scheduler/logic/ui/getHasPropsChanged.d.ts +0 -3
  598. package/dist/src/components/custom/scheduler/logic/ui/getHasPropsChanged.d.ts.map +0 -1
  599. package/dist/src/components/custom/scheduler/logic/ui/shouldTriggerScroll.d.ts +0 -3
  600. package/dist/src/components/custom/scheduler/logic/ui/shouldTriggerScroll.d.ts.map +0 -1
  601. package/dist/src/components/custom/scheduler/state/EventProps.d.ts +0 -7
  602. package/dist/src/components/custom/scheduler/state/EventProps.d.ts.map +0 -1
  603. package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgrounEvent.d.ts +0 -1
  604. package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgrounEvent.d.ts.map +0 -1
  605. package/dist/src/components/custom/scheduler-new/presentation/components/row/cancellablePromise.d.ts +0 -7
  606. package/dist/src/components/custom/scheduler-new/presentation/components/row/cancellablePromise.d.ts.map +0 -1
  607. package/dist/src/components/custom/scheduler-new/presentation/components/row/useCancellablePromise.d.ts +0 -7
  608. package/dist/src/components/custom/scheduler-new/presentation/components/row/useCancellablePromise.d.ts.map +0 -1
  609. package/dist/src/components/custom/scheduler-new/presentation/logic/separateEventsByResource.d.ts +0 -5
  610. package/dist/src/components/custom/scheduler-new/presentation/logic/separateEventsByResource.d.ts.map +0 -1
  611. package/dist/src/components/custom/scheduler-new/presentation/state/external/Event.d.ts +0 -9
  612. package/dist/src/components/custom/scheduler-new/presentation/state/external/Event.d.ts.map +0 -1
  613. package/dist/src/components/custom/scheduler-new/presentation/state/external/Row.d.ts +0 -5
  614. package/dist/src/components/custom/scheduler-new/presentation/state/external/Row.d.ts.map +0 -1
  615. package/dist/src/components/custom/scheduler-new/presentation/state/ui/EventSideDragState.d.ts +0 -6
  616. package/dist/src/components/custom/scheduler-new/presentation/state/ui/EventSideDragState.d.ts.map +0 -1
  617. package/dist/src/components/custom/scheduler-new/presentation/state/ui/HeaderDivision.d.ts +0 -5
  618. package/dist/src/components/custom/scheduler-new/presentation/state/ui/HeaderDivision.d.ts.map +0 -1
  619. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerEventState.d.ts +0 -14
  620. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerEventState.d.ts.map +0 -1
  621. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerHeaderState.d.ts +0 -11
  622. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerHeaderState.d.ts.map +0 -1
  623. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerRow.d.ts +0 -8
  624. package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerRow.d.ts.map +0 -1
  625. package/dist/test/components/custom/newScheduler/presentation/logic/getDefaultDivisions.test.d.ts.map +0 -1
  626. package/dist/test/components/custom/scheduler/calculateMaxPxFromDateRange.test.d.ts +0 -2
  627. package/dist/test/components/custom/scheduler/calculateMaxPxFromDateRange.test.d.ts.map +0 -1
  628. package/dist/test/components/custom/scheduler/filterEvents.test.d.ts.map +0 -1
  629. package/dist/test/components/custom/scheduler/shouldTriggerScroll.test.d.ts.map +0 -1
  630. package/dist/test/example.test.d.ts +0 -1
  631. package/dist/test/example.test.d.ts.map +0 -1
  632. /package/dist/src/{components/custom/scheduler-new/presentation/TestScheduler.d.ts → common/interfaces/CwSelectListProps.js} +0 -0
  633. /package/dist/{test/components/custom/newScheduler/presentation/logic/getDefaultDivisions.test.d.ts → src/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.js} +0 -0
  634. /package/dist/{test/components/custom/newScheduler/presentation/logic/hoursBetween.test.d.ts → src/components/custom/scheduler-new/presentation/state/ui/SchedulerState.js} +0 -0
  635. /package/dist/{test/components/custom/newScheduler/presentation/logic/weekendCalc.test.d.ts → src/components/custom/scheduler-new/presentation/state/ui/WeekRange.js} +0 -0
  636. /package/dist/{test/components/custom/scheduler/filterEvents.test.d.ts → src/components/custom/scheduler-temporal/state/CwSchedulerProps.js} +0 -0
  637. /package/dist/{test/components/custom/scheduler/shouldTriggerScroll.test.d.ts → src/components/custom/scheduler-temporal/state/State.js} +0 -0
@@ -0,0 +1,210 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useRef, useState } from 'react';
3
+ import { getContrastColor } from '../../../../common/functions/colorManipulation';
4
+ import styles from './cw-color-picker.module.css';
5
+ export const CwColorPicker = ({ initialColor, onChange, previewText = "Color preview" }) => {
6
+ const [rgb, setRgb] = useState({ r: 255, g: 255, b: 255 });
7
+ const [hsv, setHsv] = useState({ h: 0, s: 0, v: 100 });
8
+ const [hexColor, setHexColor] = useState(initialColor || '#FFFFFF');
9
+ const [initialized, setInitialized] = useState(false);
10
+ const [inputMode, setInputMode] = useState('hex');
11
+ // Prevent infinite update loops
12
+ const isUpdatingRef = useRef(false);
13
+ const hueBarRef = useRef(null);
14
+ const colorAreaRef = useRef(null);
15
+ // Convert HSV to RGB
16
+ const hsvToRgb = (h, s, v) => {
17
+ h = h / 360;
18
+ s = s / 100;
19
+ v = v / 100;
20
+ let r = 0, g = 0, b = 0;
21
+ if (s === 0) {
22
+ r = g = b = v;
23
+ }
24
+ else {
25
+ const i = Math.floor(h * 6);
26
+ const f = h * 6 - i;
27
+ const p = v * (1 - s);
28
+ const q = v * (1 - f * s);
29
+ const t = v * (1 - (1 - f) * s);
30
+ switch (i % 6) {
31
+ case 0:
32
+ r = v;
33
+ g = t;
34
+ b = p;
35
+ break;
36
+ case 1:
37
+ r = q;
38
+ g = v;
39
+ b = p;
40
+ break;
41
+ case 2:
42
+ r = p;
43
+ g = v;
44
+ b = t;
45
+ break;
46
+ case 3:
47
+ r = p;
48
+ g = q;
49
+ b = v;
50
+ break;
51
+ case 4:
52
+ r = t;
53
+ g = p;
54
+ b = v;
55
+ break;
56
+ case 5:
57
+ r = v;
58
+ g = p;
59
+ b = q;
60
+ break;
61
+ }
62
+ }
63
+ return {
64
+ r: Math.round(r * 255),
65
+ g: Math.round(g * 255),
66
+ b: Math.round(b * 255)
67
+ };
68
+ };
69
+ // Convert RGB to HSV
70
+ const rgbToHsv = (r, g, b) => {
71
+ r /= 255;
72
+ g /= 255;
73
+ b /= 255;
74
+ const max = Math.max(r, g, b);
75
+ const min = Math.min(r, g, b);
76
+ let h = 0;
77
+ const v = max;
78
+ const d = max - min;
79
+ const s = max === 0 ? 0 : d / max;
80
+ if (max === min) {
81
+ h = 0;
82
+ }
83
+ else {
84
+ switch (max) {
85
+ case r:
86
+ h = (g - b) / d + (g < b ? 6 : 0);
87
+ break;
88
+ case g:
89
+ h = (b - r) / d + 2;
90
+ break;
91
+ case b:
92
+ h = (r - g) / d + 4;
93
+ break;
94
+ }
95
+ h /= 6;
96
+ }
97
+ return {
98
+ h: Math.round(h * 360),
99
+ s: Math.round(s * 100),
100
+ v: Math.round(v * 100)
101
+ };
102
+ };
103
+ // Convert RGB to HEX
104
+ const rgbToHex = (r, g, b) => {
105
+ return `#${r.toString(16).padStart(2, '0')}${g.toString(16).padStart(2, '0')}${b.toString(16).padStart(2, '0')}`.toUpperCase();
106
+ };
107
+ // Initialize color values from initial color prop
108
+ useEffect(() => {
109
+ if (!initialized && initialColor) {
110
+ const hexToRgb = (hex) => {
111
+ const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
112
+ return result ? {
113
+ r: parseInt(result[1], 16),
114
+ g: parseInt(result[2], 16),
115
+ b: parseInt(result[3], 16)
116
+ } : { r: 255, g: 255, b: 255 };
117
+ };
118
+ const initialRgb = hexToRgb(initialColor);
119
+ setRgb(initialRgb);
120
+ setHexColor(initialColor);
121
+ const initialHsv = rgbToHsv(initialRgb.r, initialRgb.g, initialRgb.b);
122
+ setHsv(initialHsv);
123
+ setInitialized(true);
124
+ }
125
+ }, [initialColor, initialized]);
126
+ // Update color state and notify parent component of changes
127
+ const updateColorState = useCallback((newRgb, newHsv) => {
128
+ if (isUpdatingRef.current)
129
+ return;
130
+ isUpdatingRef.current = true;
131
+ // Update RGB and HSV
132
+ setRgb(newRgb);
133
+ setHsv(newHsv);
134
+ // Calculate and update HEX
135
+ const newHex = rgbToHex(newRgb.r, newRgb.g, newRgb.b);
136
+ setHexColor(newHex);
137
+ // Notify changes after render cycle
138
+ requestAnimationFrame(() => {
139
+ onChange(newHex, newRgb, newHsv);
140
+ isUpdatingRef.current = false;
141
+ });
142
+ }, [onChange]);
143
+ const handleRgbChange = (e) => {
144
+ const { name, value } = e.target;
145
+ const numValue = Math.min(255, Math.max(0, parseInt(value, 10) || 0));
146
+ const newRgb = { ...rgb, [name]: numValue };
147
+ const newHsv = rgbToHsv(newRgb.r, newRgb.g, newRgb.b);
148
+ updateColorState(newRgb, newHsv);
149
+ };
150
+ const toggleInputMode = () => {
151
+ setInputMode(inputMode === 'hex' ? 'rgb' : 'hex');
152
+ };
153
+ const handleHexChange = (e) => {
154
+ const { value } = e.target;
155
+ setHexColor(value);
156
+ // Validate and convert HEX to RGB
157
+ const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(value);
158
+ if (result) {
159
+ const newRgb = {
160
+ r: parseInt(result[1], 16),
161
+ g: parseInt(result[2], 16),
162
+ b: parseInt(result[3], 16)
163
+ };
164
+ const newHsv = rgbToHsv(newRgb.r, newRgb.g, newRgb.b);
165
+ // Update RGB and HSV without triggering full cycle
166
+ setRgb(newRgb);
167
+ setHsv(newHsv);
168
+ // Notify changes
169
+ requestAnimationFrame(() => {
170
+ onChange(value, newRgb, newHsv);
171
+ });
172
+ }
173
+ };
174
+ // Handle hue bar click
175
+ const handleHueBarClick = (e) => {
176
+ if (!hueBarRef.current)
177
+ return;
178
+ const rect = hueBarRef.current.getBoundingClientRect();
179
+ const height = rect.height;
180
+ const y = e.clientY - rect.top;
181
+ // Calculate hue value based on vertical position (0-360)
182
+ const newHue = Math.round(360 * (1 - Math.min(1, Math.max(0, y / height))));
183
+ const newHsv = { ...hsv, h: newHue };
184
+ const newRgb = hsvToRgb(newHue, hsv.s, hsv.v);
185
+ updateColorState(newRgb, newHsv);
186
+ };
187
+ // Handle color area click (saturation/value)
188
+ const handleColorAreaClick = (e) => {
189
+ if (!colorAreaRef.current)
190
+ return;
191
+ const rect = colorAreaRef.current.getBoundingClientRect();
192
+ const width = rect.width;
193
+ const height = rect.height;
194
+ const x = e.clientX - rect.left;
195
+ const y = e.clientY - rect.top;
196
+ // Calculate saturation and value based on position
197
+ const newSaturation = Math.round(100 * Math.min(1, Math.max(0, x / width)));
198
+ const newValue = Math.round(100 * (1 - Math.min(1, Math.max(0, y / height))));
199
+ const newHsv = { ...hsv, s: newSaturation, v: newValue };
200
+ const newRgb = hsvToRgb(hsv.h, newSaturation, newValue);
201
+ updateColorState(newRgb, newHsv);
202
+ };
203
+ // Calculate background color for the main area based on current hue
204
+ const hueColor = hsvToRgb(hsv.h, 100, 100);
205
+ const hueHex = rgbToHex(hueColor.r, hueColor.g, hueColor.b);
206
+ return (_jsxs("div", { className: "cw-flex-column cw-gap-small", children: [_jsxs("div", { className: "cw-flex-row cw-align-between-center cw-gap-small", children: [_jsx("div", { className: styles.colorPreview, style: { backgroundColor: hexColor, color: getContrastColor(hexColor) }, children: previewText }), _jsx("button", { type: "button", className: "cw-button", onClick: toggleInputMode, style: { minWidth: "3ch" }, children: inputMode === 'hex' ? 'RGB' : 'HEX' })] }), _jsx("div", { className: "color-inputs-row", children: inputMode === 'hex' ? (_jsx("input", { type: "text", value: hexColor, onChange: handleHexChange })) : (_jsxs("div", { className: "cw-grid-base-3 cw-gap-small", children: [_jsxs("div", { children: [_jsx("label", { children: "R:" }), _jsx("input", { type: "number", name: "r", min: "0", max: "255", value: rgb.r, onChange: handleRgbChange })] }), _jsxs("div", { children: [_jsx("label", { children: "G:" }), _jsx("input", { type: "number", name: "g", min: "0", max: "255", value: rgb.g, onChange: handleRgbChange })] }), _jsxs("div", { children: [_jsx("label", { children: "B:" }), _jsx("input", { type: "number", name: "b", min: "0", max: "255", value: rgb.b, onChange: handleRgbChange })] })] })) }), _jsxs("div", { className: styles.colorPickerInteractiveArea, children: [_jsx("div", { className: styles.hueBar, ref: hueBarRef, onClick: handleHueBarClick, children: _jsx("div", { className: styles.hueBarSlider, style: { top: `${(360 - hsv.h) / 360 * 100}%` } }) }), _jsxs("div", { className: styles.colorArea, ref: colorAreaRef, onClick: handleColorAreaClick, children: [_jsxs("div", { className: styles.colorAreaOverlay, children: [_jsx("div", { className: styles.hueBackground, style: { backgroundColor: hueHex } }), _jsx("div", { className: styles.whiteGradient }), _jsx("div", { className: styles.blackGradient })] }), _jsx("div", { className: styles.colorAreaCursor, style: {
207
+ left: `${hsv.s}%`,
208
+ top: `${100 - hsv.v}%`
209
+ } })] })] })] }));
210
+ };
@@ -0,0 +1,142 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useMemo, useRef, useState } from 'react';
3
+ import { createPortal } from 'react-dom';
4
+ import { CwColorPicker } from './CwColorPicker';
5
+ import styles from './cw-input-color.module.css';
6
+ export const CwInputColor = ({ value, onChange, previewText = "Color preview", disabled = false, width = '4rem', height = '2rem' }) => {
7
+ const [isOpen, setIsOpen] = useState(false);
8
+ const containerRef = useRef(null);
9
+ const dropdownRef = useRef(null);
10
+ const DROPDOWN_WIDTH = 280;
11
+ const DROPDOWN_HEIGHT = 250;
12
+ const MARGIN = 8;
13
+ // Calculate dropdown position
14
+ const dropdownStyle = useMemo(() => {
15
+ if (!isOpen || !containerRef.current) {
16
+ return { display: 'none' };
17
+ }
18
+ const rect = containerRef.current.getBoundingClientRect();
19
+ const viewportWidth = window.innerWidth;
20
+ const viewportHeight = window.innerHeight;
21
+ // Calculate initial positions
22
+ let top = rect.bottom + MARGIN;
23
+ let left = rect.left;
24
+ // Adjust horizontal position if needed
25
+ if (left + DROPDOWN_WIDTH > viewportWidth - MARGIN) {
26
+ // Try to align with right edge of trigger
27
+ left = rect.right - DROPDOWN_WIDTH;
28
+ // If still out of bounds, stick to right edge of viewport
29
+ if (left < MARGIN) {
30
+ left = viewportWidth - DROPDOWN_WIDTH - MARGIN;
31
+ }
32
+ }
33
+ // Adjust vertical position if needed
34
+ if (top + DROPDOWN_HEIGHT > viewportHeight - MARGIN) {
35
+ // Try to show above the trigger
36
+ const topPosition = rect.top - DROPDOWN_HEIGHT - MARGIN;
37
+ // Only use top position if there's enough space
38
+ if (topPosition > MARGIN) {
39
+ top = topPosition;
40
+ }
41
+ else {
42
+ // Keep at bottom but ensure some visibility
43
+ top = Math.min(top, viewportHeight - DROPDOWN_HEIGHT - MARGIN);
44
+ }
45
+ }
46
+ return {
47
+ position: 'fixed',
48
+ top: `${Math.max(MARGIN, top)}px`,
49
+ left: `${Math.max(MARGIN, left)}px`,
50
+ zIndex: 1000,
51
+ width: `${DROPDOWN_WIDTH}px`
52
+ };
53
+ }, [isOpen]);
54
+ const handleToggle = () => {
55
+ if (disabled)
56
+ return;
57
+ setIsOpen(prev => !prev);
58
+ };
59
+ // Recalculate position on scroll/resize
60
+ useEffect(() => {
61
+ if (!isOpen)
62
+ return;
63
+ const handlePositionUpdate = () => {
64
+ // Force re-render to recalculate position
65
+ setIsOpen(false);
66
+ requestAnimationFrame(() => setIsOpen(true));
67
+ };
68
+ // Debounced handlers
69
+ let resizeTimeout;
70
+ let scrollTimeout;
71
+ const handleResize = () => {
72
+ clearTimeout(resizeTimeout);
73
+ resizeTimeout = setTimeout(handlePositionUpdate, 100);
74
+ };
75
+ const handleScroll = () => {
76
+ clearTimeout(scrollTimeout);
77
+ scrollTimeout = setTimeout(handlePositionUpdate, 50);
78
+ };
79
+ window.addEventListener('resize', handleResize);
80
+ window.addEventListener('scroll', handleScroll, true);
81
+ return () => {
82
+ window.removeEventListener('resize', handleResize);
83
+ window.removeEventListener('scroll', handleScroll, true);
84
+ clearTimeout(resizeTimeout);
85
+ clearTimeout(scrollTimeout);
86
+ };
87
+ }, [isOpen]);
88
+ // Handle outside clicks and escape
89
+ useEffect(() => {
90
+ if (!isOpen)
91
+ return;
92
+ const handleClickOutside = (event) => {
93
+ const target = event.target;
94
+ // Check if click is outside both container and dropdown
95
+ if (containerRef.current &&
96
+ !containerRef.current.contains(target) &&
97
+ dropdownRef.current &&
98
+ !dropdownRef.current.contains(target)) {
99
+ setIsOpen(false);
100
+ }
101
+ };
102
+ const handleEscape = (event) => {
103
+ if (event.key === 'Escape') {
104
+ setIsOpen(false);
105
+ // Return focus to trigger
106
+ containerRef.current?.focus();
107
+ }
108
+ };
109
+ // Use capture phase for better event handling
110
+ document.addEventListener('click', handleClickOutside, true);
111
+ document.addEventListener('keydown', handleEscape);
112
+ return () => {
113
+ document.removeEventListener('click', handleClickOutside, true);
114
+ document.removeEventListener('keydown', handleEscape);
115
+ };
116
+ }, [isOpen]);
117
+ const handleColorChange = (color) => {
118
+ onChange(color);
119
+ };
120
+ const handleKeyDown = (e) => {
121
+ if (disabled)
122
+ return;
123
+ switch (e.key) {
124
+ case 'Enter':
125
+ case ' ':
126
+ e.preventDefault();
127
+ handleToggle();
128
+ break;
129
+ case 'Escape':
130
+ if (isOpen) {
131
+ e.preventDefault();
132
+ setIsOpen(false);
133
+ }
134
+ break;
135
+ }
136
+ };
137
+ return (_jsxs(_Fragment, { children: [_jsx("div", { ref: containerRef, onClick: handleToggle, className: `${styles.selectColor} ${disabled ? styles.disabled : ''}`, style: {
138
+ width,
139
+ height,
140
+ backgroundColor: value,
141
+ }, "aria-label": "Open color picker", "aria-expanded": isOpen, "aria-haspopup": "dialog", role: "button", tabIndex: disabled ? -1 : 0, onKeyDown: handleKeyDown }), isOpen && createPortal(_jsx("div", { ref: dropdownRef, className: styles.colorDropdown, style: dropdownStyle, role: "dialog", "aria-modal": "true", "aria-label": "Color picker", children: _jsx(CwColorPicker, { initialColor: value, onChange: handleColorChange, previewText: previewText }) }), document.body)] }));
142
+ };
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { CwButton } from "../../../../components/control/action/button/CwButton";
3
+ import { CwIcon } from "../../../../components/display/graphics/icon/CwIcon";
4
+ import { CwLabel } from "../../../../components/display/text/label/CwLabel";
5
+ import { CwAlign } from "../../../../components/layout/align/CwAlign";
6
+ /**
7
+ * Input for entering a string of text.
8
+ * @remarks
9
+ * ```txt
10
+ * CwIcon CwLabel input type=date CwButton
11
+ * ↑ ↑ ↑ ↑
12
+ * ╭────────────────────╮╭════╮
13
+ * ⌂ Birthdate │ 0000 / 00 / 00 │║ Ok ║
14
+ * ╰────────────────────╯╰════╯
15
+ * ```
16
+ * @example
17
+ * ```tsx
18
+ * <CwInputDate
19
+ * iconProps={{ iconId: "Birthdate" }}
20
+ * labelProps={{ children: "Name", width: "100px" }}
21
+ * buttonProps={{ children: "Ok", onClick:()=>{alert("happy happy joy joy")} }}
22
+ * />
23
+ * ```
24
+ */
25
+ export function CwInputDate(props) {
26
+ const { alignProps, buttonProps, iconProps, labelProps, ...inputProps } = props;
27
+ inputProps.max = inputProps.max ?? "9999-01-01";
28
+ return (_jsx("div", { className: "cw-input-date", children: _jsxs(CwAlign, { ...alignProps, itemProp: inputProps.required === true ? "required" : "", children: [labelProps && (_jsxs(CwLabel, { ...labelProps, children: [iconProps && _jsx(CwIcon, { ...iconProps }), labelProps.text] })), _jsx("input", { type: "date", ...inputProps }), buttonProps && _jsx(CwButton, { ...buttonProps })] }) }));
29
+ }
@@ -0,0 +1,109 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import moment from "moment";
3
+ import { useEffect, useRef, useState } from "react";
4
+ import classes from "./cw-input-date-picker.module.css";
5
+ export const CwInputDatePicker = ({ value, onChange }) => {
6
+ const [isCalendarOpen, setIsCalendarOpen] = useState(false);
7
+ const [internalDate, setInternalDate] = useState(new Date(value || new Date().toISOString()));
8
+ const [textDate, setTextDate] = useState(toGermanDate(value));
9
+ const inputRef = useRef(null);
10
+ const calendarRef = useRef(null);
11
+ useEffect(() => {
12
+ const handleClickOutside = (event) => {
13
+ if (calendarRef.current &&
14
+ !calendarRef.current.contains(event.target) &&
15
+ inputRef.current &&
16
+ !inputRef.current.contains(event.target)) {
17
+ setIsCalendarOpen(false);
18
+ }
19
+ };
20
+ document.addEventListener("mousedown", handleClickOutside);
21
+ return () => {
22
+ document.removeEventListener("mousedown", handleClickOutside);
23
+ };
24
+ }, []);
25
+ useEffect(() => {
26
+ setTextDate(toGermanDate(value));
27
+ }, [value]);
28
+ function toGermanDate(dateString) {
29
+ return moment(dateString).format("DD.MM.YYYY");
30
+ }
31
+ function toISODate(dateString) {
32
+ return moment(dateString).format("YYYY-MM-DD");
33
+ }
34
+ const submitInput = () => {
35
+ if (moment(textDate, "DD.MM.YYYY", true).isValid()) {
36
+ const inputValue = textDate;
37
+ const momentDate = moment(inputValue, "DD.MM.YYYY", true);
38
+ if (momentDate.isValid()) {
39
+ const newDateString = momentDate.format("YYYY-MM-DD");
40
+ if (newDateString !== value) {
41
+ const newDateString = momentDate.format("YYYY-MM-DD");
42
+ setInternalDate(momentDate.toDate());
43
+ onChange?.(newDateString);
44
+ }
45
+ setIsCalendarOpen(false);
46
+ return true;
47
+ }
48
+ else {
49
+ console.error("Invalid date format");
50
+ return false;
51
+ }
52
+ }
53
+ else {
54
+ setTextDate(toGermanDate(new Date(value)));
55
+ return false;
56
+ }
57
+ };
58
+ const handleClickToday = () => {
59
+ const today = toISODate(new Date());
60
+ const currentDate = value;
61
+ if (currentDate != today) {
62
+ setTextDate(toGermanDate(today));
63
+ setInternalDate(new Date(today));
64
+ onChange?.(today);
65
+ }
66
+ setIsCalendarOpen(false);
67
+ };
68
+ const handleClickDay = (day) => {
69
+ const newDate = new Date(internalDate.getFullYear(), internalDate.getMonth(), day);
70
+ const newDateString = toISODate(newDate);
71
+ if (newDateString !== value) {
72
+ setTextDate(toGermanDate(newDate));
73
+ setInternalDate(newDate);
74
+ onChange?.(newDateString);
75
+ }
76
+ setIsCalendarOpen(false);
77
+ };
78
+ const handleClickMonthArrow = (direction) => {
79
+ setInternalDate(prevDate => new Date(prevDate.getFullYear(), prevDate.getMonth() + direction, 1));
80
+ };
81
+ const handlePressEnter = (event) => {
82
+ if (event.key === "Enter" && submitInput()) {
83
+ event.currentTarget.blur();
84
+ }
85
+ };
86
+ const handleBlurInput = (event) => {
87
+ if (value != toISODate(internalDate) && submitInput()) {
88
+ event.currentTarget?.blur();
89
+ }
90
+ };
91
+ const generateCalendarDays = () => {
92
+ const daysInMonth = new Date(internalDate.getFullYear(), internalDate.getMonth() + 1, 0).getDate();
93
+ const startDay = new Date(internalDate.getFullYear(), internalDate.getMonth(), 1).getDay() - 1;
94
+ const calendarDays = new Array;
95
+ for (let i = 0; i < startDay; i++) {
96
+ calendarDays.push(_jsx("div", { className: classes.emptyDay }, `empty-${i}`));
97
+ }
98
+ for (let day = 1; day <= daysInMonth; day++) {
99
+ const currentDate = new Date(internalDate.getFullYear(), internalDate.getMonth(), day);
100
+ const isSelected = moment(currentDate).format("YYYY-MM-DD") === value;
101
+ calendarDays.push(_jsx("div", { className: `${classes.calendarDay}${isSelected ? ` ${classes.selected}` : ""}`, onClick: () => handleClickDay(day), children: day }, day));
102
+ }
103
+ return calendarDays;
104
+ };
105
+ return (_jsxs("div", { className: classes.datePicker, children: [_jsx("input", { type: "text", value: textDate, onChange: e => setTextDate(e.currentTarget.value), onFocus: () => {
106
+ setInternalDate(new Date(value));
107
+ setIsCalendarOpen(true);
108
+ }, onBlur: handleBlurInput, onKeyDown: handlePressEnter, "data-valid": moment(textDate, "DD.MM.YYYY", true).isValid(), ref: inputRef, className: classes.input }), isCalendarOpen && (_jsxs("div", { className: classes.calendar, ref: calendarRef, children: [_jsxs("div", { className: classes.calendarHeader, children: [_jsx("button", { className: classes.arrowButton, onClick: () => handleClickMonthArrow(-1), children: "<" }), _jsxs("span", { className: classes.calendarTitle, children: [internalDate.toLocaleString("default", { month: "long" }), " ", internalDate.getFullYear()] }), _jsx("button", { className: classes.arrowButton, onClick: () => handleClickMonthArrow(1), children: ">" })] }), _jsx("div", { className: classes.calendarBody, children: generateCalendarDays() }), _jsx("button", { className: classes.todayButton, onClick: handleClickToday, children: "Today" })] }))] }));
109
+ };
@@ -0,0 +1,90 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import moment from "moment";
3
+ import { useEffect, useRef, useState } from "react";
4
+ import { CwButton } from "../../../../components/control/action/button/CwButton";
5
+ import { CwIcon } from "../../../../components/display/graphics/icon/CwIcon";
6
+ import { CwLabel } from "../../../../components/display/text/label/CwLabel";
7
+ import { CwAlign } from "../../../../components/layout/align/CwAlign";
8
+ /**
9
+ * Input for entering a string of text as a date
10
+ * @remarks
11
+ * ```txt
12
+ * CwIcon CwLabel (input type=text) CwButton
13
+ * ↑ ↑ ↑ ↑
14
+ * ╭──────────────────╮╭════╮
15
+ * % Birthdate │ yyyy.MM.dd [^] │║ Ok ║
16
+ * ╰──────────────────╯╰════╯
17
+ * ↓
18
+ * (input type=date)
19
+ * ```
20
+ * - ***_format***: Is "DD.MM.YYYY" by default
21
+ * @example
22
+ * ```tsx
23
+ * <CwInputDateText
24
+ * iconProps={{ id: "Birthdate" }}
25
+ * labelProps={{ children: "Name", width: "100px" }}
26
+ * buttonProps={{ children: "Ok", onClick:()=>{alert("happy happy joy joy")} }}
27
+ * />
28
+ * ```
29
+ */
30
+ export function CwInputDateText(props) {
31
+ const displayFormat = "DD.MM.YYYY";
32
+ const internalFormat = "YYYY-MM-DD";
33
+ const { alignProps, buttonProps, iconProps, labelProps, dateFormat, value, size, onChange, name, required, tabIndex, disabled, readOnly, ...inputProps } = props;
34
+ const format = dateFormat ?? displayFormat;
35
+ const width = size ?? 12;
36
+ const formattedDate = (date, inFormat, outFormat) => {
37
+ if (moment(date, inFormat, true).isValid()) {
38
+ return moment(date, inFormat).format(outFormat);
39
+ }
40
+ else
41
+ return "";
42
+ };
43
+ const [date, setDate] = useState("");
44
+ const [displayedDate, setDisplayedDate] = useState("");
45
+ const dateInputRef = useRef(null);
46
+ const textInputRef = useRef(null);
47
+ const updateDateValidity = () => {
48
+ if (dateInputRef?.current && textInputRef?.current) {
49
+ dateInputRef.current.required = true;
50
+ const isDateValid = required
51
+ ? dateInputRef.current.checkValidity()
52
+ : dateInputRef.current.checkValidity() || textInputRef.current.value === "";
53
+ textInputRef.current.setCustomValidity(isDateValid ? "" : "Invalid date");
54
+ dateInputRef.current.required = required !== undefined && required === true;
55
+ }
56
+ };
57
+ const onChangeInputText = (e) => {
58
+ const newDate = e.target.value;
59
+ setDisplayedDate(newDate);
60
+ if (moment(newDate, format, true).isValid()) {
61
+ setDate(moment(newDate, format).format(internalFormat));
62
+ }
63
+ else {
64
+ setDate("");
65
+ }
66
+ };
67
+ const onChangeInputDate = (e) => {
68
+ const newDate = e.target.value;
69
+ setDate(newDate);
70
+ if (moment(newDate, internalFormat, true).isValid())
71
+ setDisplayedDate(moment(newDate, internalFormat).format(format));
72
+ else
73
+ setDisplayedDate("");
74
+ };
75
+ useEffect(() => {
76
+ updateDateValidity();
77
+ });
78
+ useEffect(() => {
79
+ if (value) {
80
+ setDate(formattedDate(value.toString(), internalFormat, internalFormat));
81
+ setDisplayedDate(formattedDate(value.toString(), internalFormat, displayFormat));
82
+ }
83
+ }, [value]);
84
+ useEffect(() => {
85
+ if (date) {
86
+ onChange?.({ target: { value: date, name: name } });
87
+ }
88
+ }, [date]);
89
+ return (_jsx("div", { className: "cw-input-date-text", children: _jsxs(CwAlign, { ...alignProps, itemProp: required ? "required" : "", children: [labelProps && (_jsxs(CwLabel, { ...labelProps, children: [iconProps && _jsx(CwIcon, { ...iconProps }), labelProps.text] })), _jsxs("div", { children: [_jsx("input", { type: "text", disabled: disabled, maxLength: 10, onChange: onChangeInputText, pattern: "^$ --|[.0-9\\/\\-]{10}", placeholder: format.toLowerCase(), readOnly: readOnly, ref: textInputRef, required: required, size: width, tabIndex: tabIndex, value: displayedDate }), _jsxs("span", { children: [_jsx(CwIcon, { iconId: "calendar" }), _jsx("input", { type: "date", disabled: disabled, onChange: onChangeInputDate, readOnly: readOnly, ref: dateInputRef, tabIndex: -1, value: date, ...inputProps })] })] }), buttonProps && _jsx(CwButton, { ...buttonProps })] }) }));
90
+ }
@@ -0,0 +1,29 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { CwButton } from "../../../../components/control/action/button/CwButton";
3
+ import { CwIcon } from "../../../../components/display/graphics/icon/CwIcon";
4
+ import { CwLabel } from "../../../../components/display/text/label/CwLabel";
5
+ import { CwAlign } from "../../../../components/layout/align/CwAlign";
6
+ /**
7
+ * Input for entering a string of text.
8
+ * @remarks
9
+ * ```txt
10
+ * CwIcon CwLabel input type=date CwButton
11
+ * ↑ ↑ ↑ ↑
12
+ * ╭────────────────────╮╭════╮
13
+ * ⌂ Birthdate │ 0000 / 00 / 00 │║ Ok ║
14
+ * ╰────────────────────╯╰════╯
15
+ * ```
16
+ * @example
17
+ * ```tsx
18
+ * <CwInputDate
19
+ * iconProps={{ id: "Birthdate" }}
20
+ * labelProps={{ children: "Name", width: "100px" }}
21
+ * buttonProps={{ children: "Ok", onClick:()=>{alert("happy happy joy joy")} }}
22
+ * />
23
+ * ```
24
+ */
25
+ export function CwInputDatetime(props) {
26
+ const { alignProps, buttonProps, iconProps, labelProps, ...inputProps } = props;
27
+ inputProps.max = inputProps.max ?? "9999-01-01";
28
+ return (_jsx("div", { className: "cw-input-date", children: _jsxs(CwAlign, { ...alignProps, itemProp: inputProps.required === true ? "required" : "", children: [labelProps && (_jsxs(CwLabel, { ...labelProps, children: [iconProps && _jsx(CwIcon, { ...iconProps }), labelProps.text] })), _jsx("input", { type: "datetime-local", ...inputProps }), buttonProps && _jsx(CwButton, { ...buttonProps })] }) }));
29
+ }
@@ -0,0 +1,28 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { CwButton } from "../../../../components/control/action/button/CwButton";
3
+ import { CwIcon } from "../../../../components/display/graphics/icon/CwIcon";
4
+ import { CwLabel } from "../../../../components/display/text/label/CwLabel";
5
+ import { CwAlign } from "../../../../components/layout/align/CwAlign";
6
+ /**
7
+ * Input for entering a string of number.
8
+ * @remarks
9
+ * ```txt
10
+ * CwIcon CwLabel CwSelect CwButton
11
+ * ↑ ↑ ↑ ↑
12
+ * ╭────────────────────╮╭════╮
13
+ * ⌂ Address ││ 2 │║ Ok ║
14
+ * ╰────────────────────╯╰════╯
15
+ * ```
16
+ * @example
17
+ * ```tsx
18
+ * <CwDigit
19
+ * iconProps={{ id: "home" }}
20
+ * labelProps={{ children: "Name", width: "100px" }}
21
+ * buttonProps={{ children: "Ok", onclick:()=>{alert("hi")} }}
22
+ * />
23
+ * ```
24
+ */
25
+ export function CwDigit(props) {
26
+ const { alignProps, buttonProps, iconProps, labelProps, ...inputProps } = props;
27
+ return (_jsx("div", { className: "cw-input-text", children: _jsxs(CwAlign, { ...alignProps, itemProp: inputProps.required === true ? "required" : "", children: [labelProps && (_jsxs(CwLabel, { ...labelProps, children: [iconProps && _jsx(CwIcon, { ...iconProps }), labelProps.text] })), _jsx("input", { type: "number", ...inputProps }), buttonProps && _jsx(CwButton, { ...buttonProps })] }) }));
28
+ }