@cwellt_software/cwellt-reactjs-lib 1.1.5 → 1.1.7
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.
- package/dist/index.cjs.js +1314 -70
- package/dist/index.css +2 -2
- package/dist/index.d.ts +235 -4
- package/dist/index.es.js +1310 -71
- package/dist/playground/main.d.ts.map +1 -1
- package/dist/src/common/classes/CwSelectList.js +12 -0
- package/dist/src/common/classes/CwSelectListItems.js +14 -0
- package/dist/src/common/functions/collections.js +18 -0
- package/dist/src/common/functions/colorManipulation.js +76 -0
- package/dist/src/common/functions/dsl/UiEventDSL.js +20 -0
- package/dist/src/common/functions/useSingleAndDoubleClicks.js +28 -0
- package/dist/src/components/control/action/button/CwButton.js +13 -0
- package/dist/src/components/control/action/buttons/CwButtons.js +188 -0
- package/dist/src/components/control/action/contextmenu/CwContextMenu.js +43 -0
- package/dist/src/components/control/action/contextual-menu/CwContextualMenu.js +55 -0
- package/dist/src/components/control/action/search/CwSearch.js +67 -0
- package/dist/src/components/control/action/tooltip-dialog/CwTooltipDialog.js +11 -0
- package/dist/src/components/control/choice/checkbox/CwCheckbox.js +15 -0
- package/dist/src/components/control/choice/deprecated/MultiSelect_deprecated_.js +99 -0
- package/dist/src/components/control/choice/dropdown/CwDropdown.js +27 -0
- package/dist/src/components/control/choice/dropdown/CwDropdownContainer.js +30 -0
- package/dist/src/components/control/choice/dropdown/CwDropdownFilter.js +10 -0
- package/dist/src/components/control/choice/multi-filter/CwMultiFilter.js +298 -0
- package/dist/src/components/control/choice/multi-filter/components/tag/CwMultiFilterTag.js +17 -0
- package/dist/src/components/control/choice/multiselect/CwHeadFilter.js +80 -0
- package/dist/src/components/control/choice/multiselect/CwMultiselect.js +393 -0
- package/dist/src/components/control/choice/multiselect/CwOptionList.js +36 -0
- package/dist/src/components/control/choice/option/CwOption.js +16 -0
- package/dist/src/components/control/choice/select/CwSelect.js +36 -0
- package/dist/src/components/control/choice/toggle/CwToggle.js +9 -0
- package/dist/src/components/control/input/any/CwInput.js +16 -0
- package/dist/src/components/control/input/color/CwColorPicker.js +210 -0
- package/dist/src/components/control/input/color/CwInputColor.js +142 -0
- package/dist/src/components/control/input/date/CwInputDate.js +29 -0
- package/dist/src/components/control/input/date-picker/CwInputDatePicker.js +109 -0
- package/dist/src/components/control/input/date-text/CwInputDateText.js +90 -0
- package/dist/src/components/control/input/datetime/CwInputDatetime.js +29 -0
- package/dist/src/components/control/input/digit/CwDigit.js +28 -0
- package/dist/src/components/control/input/file/CwFileUpload.js +52 -0
- package/dist/src/components/control/input/file/CwFileUploadMultiple.js +148 -0
- package/dist/src/components/control/input/image/CwInputImage.js +52 -0
- package/dist/src/components/control/input/image-area/CwImageArea.js +113 -0
- package/dist/src/components/control/input/new-dates/CwDatePicker.d.ts +42 -0
- package/dist/src/components/control/input/new-dates/CwDatePicker.d.ts.map +1 -0
- package/dist/src/components/control/input/new-dates/CwDateRangePicker.d.ts +63 -0
- package/dist/src/components/control/input/new-dates/CwDateRangePicker.d.ts.map +1 -0
- package/dist/src/components/control/input/new-dates/CwDateTimePicker.d.ts +47 -0
- package/dist/src/components/control/input/new-dates/CwDateTimePicker.d.ts.map +1 -0
- package/dist/src/components/control/input/new-dates/CwDateTimePickerCompact.d.ts +46 -0
- package/dist/src/components/control/input/new-dates/CwDateTimePickerCompact.d.ts.map +1 -0
- package/dist/src/components/control/input/new-dates/CwTimePicker.d.ts +38 -0
- package/dist/src/components/control/input/new-dates/CwTimePicker.d.ts.map +1 -0
- package/dist/src/components/control/input/new-dates/dateRangePresets.d.ts +19 -0
- package/dist/src/components/control/input/new-dates/dateRangePresets.d.ts.map +1 -0
- package/dist/src/components/control/input/number/CwInputNumber.js +11 -0
- package/dist/src/components/control/input/phone/CwInputPhone.js +24 -0
- package/dist/src/components/control/input/text/CwInputText.js +31 -0
- package/dist/src/components/control/input/text-area/CwTextArea.js +9 -0
- package/dist/src/components/control/input/time/CwTime.js +29 -0
- package/dist/src/components/control/input/weekday/CwWeekdaySelector.js +143 -0
- package/dist/src/components/custom/find-airport/CwFindAirportComp.js +240 -0
- package/dist/src/components/custom/scheduler/CwSchedulerComp.js +211 -0
- package/dist/src/components/custom/scheduler/CwSuperSchedulerComp.js +269 -0
- package/dist/src/components/custom/scheduler/components/EventRender.js +142 -0
- package/dist/src/components/custom/scheduler/components/ResourceListRender.js +12 -0
- package/dist/src/components/custom/scheduler/components/ResourceRender.js +26 -0
- package/dist/src/components/custom/scheduler/components/day_headers/DayHeader.js +13 -0
- package/dist/src/components/custom/scheduler/components/day_headers/MonthHeader.js +12 -0
- package/dist/src/components/custom/scheduler/components/day_headers/MyDaysHeader.js +62 -0
- package/dist/src/components/custom/scheduler/components/day_headers/WeekHeader.js +13 -0
- package/dist/src/components/custom/scheduler/components/resources_title_list/ResourcesTitleList.js +24 -0
- package/dist/src/components/custom/scheduler/components/scheduler_content_area/SchedulerContentArea.js +17 -0
- package/dist/src/components/custom/scheduler/components/scheduler_header/SchedulerHeader.js +26 -0
- package/dist/src/components/custom/scheduler/components/scheduler_timeline/SchedulerTimeLine.js +23 -0
- package/dist/src/components/custom/scheduler/components/time_headers/TimeHeader.js +31 -0
- package/dist/src/components/custom/scheduler/components/time_headers/TimeHeaderRow.js +16 -0
- package/dist/src/components/custom/scheduler/components/time_line/TimeLine.js +12 -0
- package/dist/src/components/custom/scheduler/logic/dates/addMinutesToDateFromPx.js +5 -0
- package/dist/src/components/custom/scheduler/logic/dates/daysBetweenTwoDates.js +15 -0
- package/dist/src/components/custom/scheduler/logic/dates/daysBetweenTwoDatesWithoutCeil.js +5 -0
- package/dist/src/components/custom/scheduler/logic/dates/getFormatedTimeForHeader.js +43 -0
- package/dist/src/components/custom/scheduler/logic/dates/getMonthHeaderData.js +35 -0
- package/dist/src/components/custom/scheduler/logic/dates/getUtcToday.js +6 -0
- package/dist/src/components/custom/scheduler/logic/dates/getWeekHeaderDataFromWeekRange.js +20 -0
- package/dist/src/components/custom/scheduler/logic/dates/listOfDatesToWeeks.js +55 -0
- package/dist/src/components/custom/scheduler/logic/divisions/calculateDivisionType.js +13 -0
- package/dist/src/components/custom/scheduler/logic/divisions/calculateDivisions.js +16 -0
- package/dist/src/components/custom/scheduler/logic/filtering/filterEvents.js +33 -0
- package/dist/src/components/custom/scheduler/logic/filtering/filterResources.js +14 -0
- package/dist/src/components/custom/scheduler/logic/filtering/hasSameProperties.js +10 -0
- package/dist/src/components/custom/scheduler/logic/onDrop/OnDrop.js +45 -0
- package/dist/src/components/custom/scheduler/logic/pixels/getHeightLineScheduler.js +14 -0
- package/dist/src/components/custom/scheduler/logic/pixels/getPixelsForEvent.js +32 -0
- package/dist/src/components/custom/scheduler/logic/pixels/heightScheduler.js +14 -0
- package/dist/src/components/custom/scheduler/logic/pixels/heightSchedulerPinned.js +9 -0
- package/dist/src/components/custom/scheduler/logic/state_handle/doubleClickOnResource.js +5 -0
- package/dist/src/components/custom/scheduler/logic/state_handle/handleResourceChange.js +11 -0
- package/dist/src/components/custom/scheduler/logic/state_handle/onDragOver.js +9 -0
- package/dist/src/components/custom/scheduler/logic/state_handle/onDropEventToResource.js +3 -0
- package/dist/src/components/custom/scheduler/logic/strings/compareStrings.js +7 -0
- package/dist/src/components/custom/scheduler/logic/strings/getGUID.js +7 -0
- package/dist/src/components/custom/scheduler/logic/ui/checkIfSlotAvailable.js +8 -0
- package/dist/src/components/custom/scheduler/logic/ui/getEventsOfResource.js +45 -0
- package/dist/src/components/custom/scheduler/logic/ui/getTimeHeaders.js +35 -0
- package/dist/src/components/custom/scheduler/logic/ui/isAllowedToMove.js +19 -0
- package/dist/src/components/custom/scheduler/logic/ui/updateResourceVisibility.js +15 -0
- package/dist/src/components/custom/scheduler/state/CblDragAndDrop.js +18 -0
- package/dist/src/components/custom/scheduler/state/CwSchedulerProps.js +1 -0
- package/dist/src/components/custom/scheduler/state/Resource.js +18 -0
- package/dist/src/components/custom/scheduler/state/State.js +1 -0
- package/dist/src/components/custom/scheduler/state/cblEvent.js +28 -0
- package/dist/src/components/custom/scheduler/state/cblEventCompProps.js +1 -0
- package/dist/src/components/custom/scheduler/state/resourceCompProps2.js +1 -0
- package/dist/src/components/custom/scheduler-new/presentation/NewScheduler.js +123 -0
- package/dist/src/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.d.ts +2 -1
- package/dist/src/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.d.ts.map +1 -1
- package/dist/src/components/custom/scheduler-new/presentation/NewSchedulerUiEvents.js +118 -0
- package/dist/src/components/custom/scheduler-new/presentation/SchedulerPresenter.js +166 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderDivision.js +26 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/header/HeaderTitle.js +8 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/header/SchedulerHeader.js +86 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgroundEvent.js +60 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/row/DefaultRowHeader.js +24 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/row/Event.js +150 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/row/EventSideDrag.js +11 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/row/SchedulerRow.js +176 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/timeline/DivisionLine.js +8 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/timeline/TimeLine.js +39 -0
- package/dist/src/components/custom/scheduler-new/presentation/components/timeline/WeekEndLine.js +8 -0
- package/dist/src/components/custom/scheduler-new/presentation/helpers.js +43 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/WeekendCalc.js +24 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/dateFromPercentage.js +7 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/eventIsVisible.js +7 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/getDefaultDivisions.js +113 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/getDivisions.js +21 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/getEventSizes.js +30 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/getLinesByDivisions.js +13 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/getPercentageFromMouseEvent.js +7 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/separateEventsToInnerRows.js +32 -0
- package/dist/src/components/custom/scheduler-new/presentation/logic/sortByCategoryAndTitle.js +12 -0
- package/dist/src/components/custom/scheduler-temporal/CwSchedulerComp2.js +267 -0
- package/dist/src/components/custom/scheduler-temporal/CwSuperSchedulerComp.js +269 -0
- package/dist/src/components/custom/scheduler-temporal/components/EventRender.js +142 -0
- package/dist/src/components/custom/scheduler-temporal/components/ResourceListRender.js +12 -0
- package/dist/src/components/custom/scheduler-temporal/components/ResourceRender.js +26 -0
- package/dist/src/components/custom/scheduler-temporal/components/day_headers/DayHeader.js +13 -0
- package/dist/src/components/custom/scheduler-temporal/components/day_headers/MonthHeader.js +12 -0
- package/dist/src/components/custom/scheduler-temporal/components/day_headers/MyDaysHeader.js +62 -0
- package/dist/src/components/custom/scheduler-temporal/components/day_headers/WeekHeader.js +13 -0
- package/dist/src/components/custom/scheduler-temporal/components/resources_title_list/ResourcesTitleList.js +22 -0
- package/dist/src/components/custom/scheduler-temporal/components/scheduler_content_area/SchedulerContentArea.js +17 -0
- package/dist/src/components/custom/scheduler-temporal/components/scheduler_header/SchedulerHeader.js +26 -0
- package/dist/src/components/custom/scheduler-temporal/components/scheduler_timeline/SchedulerTimeLine.js +23 -0
- package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeader.js +31 -0
- package/dist/src/components/custom/scheduler-temporal/components/time_headers/TimeHeaderRow.js +16 -0
- package/dist/src/components/custom/scheduler-temporal/components/time_line/TimeLine.js +12 -0
- package/dist/src/components/custom/scheduler-temporal/logic/dates/addMinutesToDateFromPx.js +5 -0
- package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDates.js +15 -0
- package/dist/src/components/custom/scheduler-temporal/logic/dates/daysBetweenTwoDatesWithoutCeil.js +5 -0
- package/dist/src/components/custom/scheduler-temporal/logic/dates/getFormatedTimeForHeader.js +43 -0
- package/dist/src/components/custom/scheduler-temporal/logic/dates/getMonthHeaderData.js +35 -0
- package/dist/src/components/custom/scheduler-temporal/logic/dates/getUtcToday.js +6 -0
- package/dist/src/components/custom/scheduler-temporal/logic/dates/getWeekHeaderDataFromWeekRange.js +20 -0
- package/dist/src/components/custom/scheduler-temporal/logic/dates/listOfDatesToWeeks.js +55 -0
- package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisionType.js +13 -0
- package/dist/src/components/custom/scheduler-temporal/logic/divisions/calculateDivisions.js +16 -0
- package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterAndProcessResources.js +10 -0
- package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterEvents.js +34 -0
- package/dist/src/components/custom/scheduler-temporal/logic/filtering/filterResources.js +14 -0
- package/dist/src/components/custom/scheduler-temporal/logic/filtering/hasSameProperties.js +10 -0
- package/dist/src/components/custom/scheduler-temporal/logic/onDrop/OnDrop.js +36 -0
- package/dist/src/components/custom/scheduler-temporal/logic/pixels/getHeightLineScheduler.js +14 -0
- package/dist/src/components/custom/scheduler-temporal/logic/pixels/getPixelsForEvent.js +32 -0
- package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightScheduler.js +14 -0
- package/dist/src/components/custom/scheduler-temporal/logic/pixels/heightSchedulerPinned.js +9 -0
- package/dist/src/components/custom/scheduler-temporal/logic/state_handle/doubleClickOnResource.js +5 -0
- package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handlePropChanges.js +178 -0
- package/dist/src/components/custom/scheduler-temporal/logic/state_handle/handleResourceChange.js +11 -0
- package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDragOver.js +9 -0
- package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onDropEventToResource.js +3 -0
- package/dist/src/components/custom/scheduler-temporal/logic/state_handle/onResizeEvent.js +3 -0
- package/dist/src/components/custom/scheduler-temporal/logic/strings/compareStrings.js +7 -0
- package/dist/src/components/custom/scheduler-temporal/logic/strings/getGUID.js +7 -0
- package/dist/src/components/custom/scheduler-temporal/logic/ui/checkIfSlotAvailable.js +9 -0
- package/dist/src/components/custom/scheduler-temporal/logic/ui/getEventsOfResource.js +92 -0
- package/dist/src/components/custom/scheduler-temporal/logic/ui/getHasPropsChanged.js +242 -0
- package/dist/src/components/custom/scheduler-temporal/logic/ui/getTimeHeaders.js +35 -0
- package/dist/src/components/custom/scheduler-temporal/logic/ui/isAllowedToMove.js +19 -0
- package/dist/src/components/custom/scheduler-temporal/logic/ui/shouldTriggerScroll.js +241 -0
- package/dist/src/components/custom/scheduler-temporal/logic/ui/updateResourceVisibility.js +15 -0
- package/dist/src/components/custom/scheduler-temporal/state/CblDragAndDrop.js +18 -0
- package/dist/src/components/custom/scheduler-temporal/state/Resource.js +18 -0
- package/dist/src/components/custom/scheduler-temporal/state/cblEvent.js +28 -0
- package/dist/src/components/custom/scheduler-temporal/state/cblEventCompProps.js +1 -0
- package/dist/src/components/custom/scheduler-temporal/state/resourceCompProps2.js +1 -0
- package/dist/src/components/custom/super-scheduler/PinRowHeader.d.ts.map +1 -1
- package/dist/src/components/custom/super-scheduler/PinRowHeader.js +53 -0
- package/dist/src/components/custom/super-scheduler/SuperScheduler.js +23 -0
- package/dist/src/components/custom/super-scheduler/SuperSchedulerEvents.js +15 -0
- package/dist/src/components/custom/super-scheduler/SuperSchedulerPresenter.js +45 -0
- package/dist/src/components/display/data/accordion/CwAccordionContainer.js +20 -0
- package/dist/src/components/display/data/generic_tooltip/CwGenericTooltip.js +138 -0
- package/dist/src/components/display/data/table/CwTable.d.ts.map +1 -1
- package/dist/src/components/display/data/table/CwTable.js +203 -0
- package/dist/src/components/display/graphics/icon/CwIcon.js +23 -0
- package/dist/src/components/display/graphics/loading/CwLoading.js +27 -0
- package/dist/src/components/display/graphics/loading-small/CwLoadingSmall.js +20 -0
- package/dist/src/components/display/text/heading/CwHeadingMain.js +5 -0
- package/dist/src/components/display/text/heading/CwHeadingSecond.js +5 -0
- package/dist/src/components/display/text/label/CwLabel.js +13 -0
- package/dist/src/components/display/text/message/CwMessage.js +75 -0
- package/dist/src/components/display/text/note/CwNote.js +78 -0
- package/dist/src/components/display/text/tag/CwChip.js +57 -0
- package/dist/src/components/display/text/tag/CwTag.js +21 -0
- package/dist/src/components/display/text/tooltip/CwTooltip.js +4 -0
- package/dist/src/components/layout/align/CwAlign.js +54 -0
- package/dist/src/components/layout/card/CwCard.js +55 -0
- package/dist/src/components/layout/card/CwCardList.js +38 -0
- package/dist/src/components/layout/dialog/CwDialog.js +255 -0
- package/dist/src/components/layout/dialog/CwDialogManager.js +44 -0
- package/dist/src/components/layout/list/details/CwExpandable.js +28 -0
- package/dist/src/components/layout/list/key-value/CwKeyValueList.d.ts +2 -3
- package/dist/src/components/layout/list/key-value/CwKeyValueList.d.ts.map +1 -1
- package/dist/src/components/layout/list/key-value/CwKeyValueList.js +23 -0
- package/dist/src/components/layout/list/sortable/CwSortableList.js +73 -0
- package/dist/src/components/layout/list/sortable/useSortableList.js +53 -0
- package/dist/src/components/layout/modal/CwModalReportFunctional.js +23 -0
- package/dist/src/components/layout/modal/hover/CwModalHover.js +61 -0
- package/dist/src/components/layout/modal/legacy/cw_modal.js +44 -0
- package/dist/src/components/layout/modal/legacy/cw_modal_confirm.js +39 -0
- package/dist/src/components/layout/modal/legacy/cw_modal_iframe.js +44 -0
- package/dist/src/components/layout/modal/legacy/cw_modal_report.js +26 -0
- package/dist/src/components/layout/table/grouped/CwTableGrouped.js +70 -0
- package/dist/src/components/layout/tabs/CwTabs.js +53 -0
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +187 -0
- package/dist/test/components/custom/new-scheduler/presentation/logic/getDefaultDivisions.test.js +48 -0
- package/dist/test/components/custom/new-scheduler/presentation/logic/hoursBetween.test.js +15 -0
- package/dist/test/components/custom/new-scheduler/presentation/logic/monthDivisions.test.js +42 -0
- package/dist/test/components/custom/new-scheduler/presentation/logic/weekendCalc.test.js +30 -0
- package/dist/test/components/custom/scheduler/addMinutesToDateFromPx.test.js +43 -0
- package/dist/test/components/custom/scheduler/checkIfSlotAvailable.test.js +30 -0
- package/dist/test/components/custom/scheduler/daysBetweenTwoDates.test.js +61 -0
- package/dist/test/components/custom/scheduler/daysBetweenTwoDatesWithoutCeilForEvent.test.js +27 -0
- package/dist/test/components/custom/scheduler/getGUID.test.js +30 -0
- package/dist/test/components/custom/scheduler/getPixelsForEvent.test.js +38 -0
- package/dist/test/components/custom/scheduler/getTimeHeaders.test.js +35 -0
- package/dist/test/components/custom/scheduler/hasSameProperties.test.js +51 -0
- package/dist/test/components/custom/scheduler/isAllowedToMove.test.js +28 -0
- package/dist/test/components/custom/scheduler/listOfDatesToWeeks.test.js +72 -0
- package/dist/test/jest.setup.js +1 -0
- package/package.json +6 -2
- package/dist/assets/asset-DnHaq7m- +0 -50
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-full-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-grad-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-opsz-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-slnt-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-standard-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-wdth-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-wght-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-xopq-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-xtra-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-yopq-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytas-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytde-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytfi-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytlc-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ext-ytuc-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-full-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-grad-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-opsz-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-slnt-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-standard-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-wdth-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-wght-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-xopq-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-xtra-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-yopq-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytas-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytde-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytfi-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytlc-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-cyrillic-ytuc-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-full-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-grad-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-opsz-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-slnt-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-standard-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-wdth-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-wght-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-xopq-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-xtra-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-yopq-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytas-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytde-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytfi-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytlc-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-greek-ytuc-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-full-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-grad-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-opsz-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-slnt-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-standard-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-wdth-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-wght-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-xopq-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-xtra-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-yopq-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytas-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytde-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytfi-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytlc-normal.woff2 +0 -0
- package/dist/content/fonts/roboto-flex/files/roboto-flex-vietnamese-ytuc-normal.woff2 +0 -0
- package/dist/content/icons/cw-icons/css/cw-icons.css +0 -2784
- package/dist/content/icons/cw-icons/fonts/cwAvinodeFont/CblAvinodeIcon.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwAvinodeFont/CblAvinodeIcon.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwAvinodeFont/CblAvinodeIcon.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwAvinodeFont/CblAvinodeIcon.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.svg +0 -38
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/CblCrewControl.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.svg +0 -29
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlFont/Crew Control.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblCrewControlReact.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblCrewControlReact.svg +0 -12
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblCrewControlReact.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblCrewControlReact.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblDutyIcon.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblDutyIcon.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblDutyIcon.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/CblDutyIcon.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/SessionWarning.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/SessionWarning.svg +0 -12
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/SessionWarning.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/SessionWarning.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.svg +0 -26
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblDuty.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrol.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrol.svg +0 -13
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrol.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrol.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.svg +0 -29
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewControlNewIcon/cblcrewcontrolfont.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.svg +0 -29
- package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewFont/Crew.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.svg +0 -17
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/Crew Planning.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.svg +0 -20
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewPlanningFont.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewSchedulingFont.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewSchedulingFont.svg +0 -12
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewSchedulingFont.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwCrewPlanningFont/CrewSchedulingFont.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.svg +0 -20
- package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwDispatchFont/Dispatch.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/ArchiveEmanual.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/ArchiveEmanual.svg +0 -12
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/ArchiveEmanual.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/ArchiveEmanual.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/CblEmanualNewIcons.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/CblEmanualNewIcons.svg +0 -14
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/CblEmanualNewIcons.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/CblEmanualNewIcons.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.svg +0 -38
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/Emanual.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualApprovedFile.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualApprovedFile.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualApprovedFile.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualApprovedFile.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.svg +0 -17
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMark.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMarkLink.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMarkLink.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMarkLink.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualBookMarkLink.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFolder.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFolder.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFolder.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFolder.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFont.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFont.svg +0 -13
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFont.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFont.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.svg +0 -32
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualFontNew.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPendingIcon.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPendingIcon.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPendingIcon.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPendingIcon.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishFile.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishFile.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishFile.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishFile.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishIconFile.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishIconFile.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishIconFile.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualPublishIconFile.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrash.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrash.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrash.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrash.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrashRight.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrashRight.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrashRight.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/EmanualRestoreTrashRight.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/LibraryIcon.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/LibraryIcon.svg +0 -12
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/LibraryIcon.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwEmanualFont/LibraryIcon.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.svg +0 -158
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/Favorites.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/cwellt_icon.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/cwellt_icon.svg +0 -18
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/cwellt_icon.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesElement/cwellt_icon.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.svg +0 -62
- package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesFont/Favorites.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesIcons/CblFavoritesIcons.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesIcons/CblFavoritesIcons.svg +0 -43
- package/dist/content/icons/cw-icons/fonts/cwFavoritesIcons/CblFavoritesIcons.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFavoritesIcons/CblFavoritesIcons.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFgIconsFonts/CblFigIcons.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFgIconsFonts/CblFigIcons.svg +0 -49
- package/dist/content/icons/cw-icons/fonts/cwFgIconsFonts/CblFigIcons.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFgIconsFonts/CblFigIcons.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.svg +0 -41
- package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwFlightOpsFont/FlightOps.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/CblUndoIcon.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/CblUndoIcon.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/CblUndoIcon.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/CblUndoIcon.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/FlightWatchOnTimeIcon.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/FlightWatchOnTimeIcon.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/FlightWatchOnTimeIcon.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/FlightWatchOnTimeIcon.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.svg +0 -41
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/General.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/IDCardStatusIcon.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/IDCardStatusIcon.svg +0 -12
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/IDCardStatusIcon.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwGeneralFont/IDCardStatusIcon.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.svg +0 -17
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/Favorites.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/calculator.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/calculator.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/calculator.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/calculator.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/icons_cwellt.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/icons_cwellt.svg +0 -11
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/icons_cwellt.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwNewGeneralFontIcon/icons_cwellt.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwOpstoolReactFont/opstoolReactIcons.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwOpstoolReactFont/opstoolReactIcons.svg +0 -12
- package/dist/content/icons/cw-icons/fonts/cwOpstoolReactFont/opstoolReactIcons.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwOpstoolReactFont/opstoolReactIcons.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.svg +0 -17
- package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwPaxRelationsFont/Pax Relations.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.svg +0 -50
- package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwSalesFont/Sales.woff2 +0 -0
- package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.eot +0 -0
- package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.svg +0 -17
- package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.ttf +0 -0
- package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.woff +0 -0
- package/dist/content/icons/cw-icons/fonts/cwTrainingFont/Training.woff2 +0 -0
- package/dist/content/icons/font-awesome/webfonts/fa-brands-400.ttf +0 -0
- package/dist/content/icons/font-awesome/webfonts/fa-regular-400.ttf +0 -0
- package/dist/content/icons/font-awesome/webfonts/fa-solid-900.ttf +0 -0
- package/dist/content/icons/font-awesome/webfonts/fa-v4compatibility.ttf +0 -0
- package/dist/index.cjs.js.map +0 -1
- package/dist/index.css.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.esm.js +0 -4836
- package/dist/src/common/functions/reactor.d.ts +0 -2
- package/dist/src/common/functions/reactor.d.ts.map +0 -1
- package/dist/src/components/control/input/chipper/CwChip.d.ts +0 -12
- package/dist/src/components/control/input/chipper/CwChip.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/components/ClearSchedulerButton.d.ts +0 -8
- package/dist/src/components/custom/scheduler/components/ClearSchedulerButton.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/logic/filtering/filterAndProcessResources.d.ts +0 -14
- package/dist/src/components/custom/scheduler/logic/filtering/filterAndProcessResources.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/logic/pixels/calculateMaxPxFromDateRange.d.ts +0 -2
- package/dist/src/components/custom/scheduler/logic/pixels/calculateMaxPxFromDateRange.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/logic/state_handle/handleDateChange.d.ts +0 -5
- package/dist/src/components/custom/scheduler/logic/state_handle/handleDateChange.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/logic/state_handle/handlePropChanges.d.ts +0 -5
- package/dist/src/components/custom/scheduler/logic/state_handle/handlePropChanges.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/logic/state_handle/onResizeEvent.d.ts +0 -3
- package/dist/src/components/custom/scheduler/logic/state_handle/onResizeEvent.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/logic/ui/getHasPropsChanged.d.ts +0 -3
- package/dist/src/components/custom/scheduler/logic/ui/getHasPropsChanged.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/logic/ui/shouldTriggerScroll.d.ts +0 -3
- package/dist/src/components/custom/scheduler/logic/ui/shouldTriggerScroll.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler/state/EventProps.d.ts +0 -7
- package/dist/src/components/custom/scheduler/state/EventProps.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgrounEvent.d.ts +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/components/row/BackgrounEvent.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/components/row/cancellablePromise.d.ts +0 -7
- package/dist/src/components/custom/scheduler-new/presentation/components/row/cancellablePromise.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/components/row/useCancellablePromise.d.ts +0 -7
- package/dist/src/components/custom/scheduler-new/presentation/components/row/useCancellablePromise.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/logic/separateEventsByResource.d.ts +0 -5
- package/dist/src/components/custom/scheduler-new/presentation/logic/separateEventsByResource.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/state/external/Event.d.ts +0 -9
- package/dist/src/components/custom/scheduler-new/presentation/state/external/Event.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/state/external/Row.d.ts +0 -5
- package/dist/src/components/custom/scheduler-new/presentation/state/external/Row.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/EventSideDragState.d.ts +0 -6
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/EventSideDragState.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/HeaderDivision.d.ts +0 -5
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/HeaderDivision.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerEventState.d.ts +0 -14
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerEventState.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerHeaderState.d.ts +0 -11
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerHeaderState.d.ts.map +0 -1
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerRow.d.ts +0 -8
- package/dist/src/components/custom/scheduler-new/presentation/state/ui/SchedulerRow.d.ts.map +0 -1
- package/dist/test/components/custom/newScheduler/presentation/logic/getDefaultDivisions.test.d.ts.map +0 -1
- package/dist/test/components/custom/scheduler/calculateMaxPxFromDateRange.test.d.ts +0 -2
- package/dist/test/components/custom/scheduler/calculateMaxPxFromDateRange.test.d.ts.map +0 -1
- package/dist/test/components/custom/scheduler/filterEvents.test.d.ts.map +0 -1
- package/dist/test/components/custom/scheduler/shouldTriggerScroll.test.d.ts.map +0 -1
- package/dist/test/example.test.d.ts +0 -1
- package/dist/test/example.test.d.ts.map +0 -1
- /package/dist/src/{components/custom/scheduler-new/presentation/TestScheduler.d.ts → common/interfaces/CwSelectListProps.js} +0 -0
- /package/dist/{test/components/custom/newScheduler/presentation/logic/getDefaultDivisions.test.d.ts → src/components/custom/scheduler-new/presentation/components/header/SchedulerHeaderState.js} +0 -0
- /package/dist/{test/components/custom/newScheduler/presentation/logic/hoursBetween.test.d.ts → src/components/custom/scheduler-new/presentation/state/ui/SchedulerState.js} +0 -0
- /package/dist/{test/components/custom/newScheduler/presentation/logic/weekendCalc.test.d.ts → src/components/custom/scheduler-new/presentation/state/ui/WeekRange.js} +0 -0
- /package/dist/{test/components/custom/scheduler/filterEvents.test.d.ts → src/components/custom/scheduler-temporal/state/CwSchedulerProps.js} +0 -0
- /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
|
+
}
|