ezux 1.0.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.
- package/LICENSE +21 -0
- package/README.md +56 -0
- package/dist/EzEventModal-DtpvYwGr.js +684 -0
- package/dist/EzGroupingPanel-CFwKUrF_.js +59 -0
- package/dist/EzTableEditDialog-BIk_mNpI.js +60 -0
- package/dist/components/EzKanban/EzKanban.types.d.ts +789 -0
- package/dist/components/EzKanban/components/CardEditorModal.d.ts +23 -0
- package/dist/components/EzKanban/components/EzKanbanErrorFallback.d.ts +1 -0
- package/dist/components/EzKanban/components/FilterPopover.d.ts +10 -0
- package/dist/components/EzKanban/components/KanbanBoard.d.ts +62 -0
- package/dist/components/EzKanban/components/KanbanCard.d.ts +38 -0
- package/dist/components/EzKanban/components/KanbanColumn.d.ts +55 -0
- package/dist/components/EzKanban/components/KanbanSwimlane.d.ts +46 -0
- package/dist/components/EzKanban/components/KanbanToolbar.d.ts +41 -0
- package/dist/components/EzKanban/exports.d.ts +4 -0
- package/dist/components/EzKanban/hooks/useKanbanCards.d.ts +36 -0
- package/dist/components/EzKanban/hooks/useKanbanColumns.d.ts +27 -0
- package/dist/components/EzKanban/hooks/useKanbanDragDrop.d.ts +31 -0
- package/dist/components/EzKanban/hooks/useKanbanFilters.d.ts +23 -0
- package/dist/components/EzKanban/hooks/useKanbanState.d.ts +79 -0
- package/dist/components/EzKanban/hooks/useKanbanSwimlanes.d.ts +27 -0
- package/dist/components/EzKanban/hooks/useKanbanVirtualization.d.ts +16 -0
- package/dist/components/EzKanban/index.d.ts +45 -0
- package/dist/components/EzKanban/services/KanbanService.d.ts +30 -0
- package/dist/components/EzKanban/state/kanban.store.d.ts +33 -0
- package/dist/components/EzKanban/useEzKanban.d.ts +162 -0
- package/dist/components/EzKanban/views/KanbanTimelineView.d.ts +15 -0
- package/dist/components/EzLayout/Authentication/AuthSlider.d.ts +13 -0
- package/dist/components/EzLayout/Authentication/InputPassword.d.ts +7 -0
- package/dist/components/EzLayout/Authentication/SignInForm.d.ts +21 -0
- package/dist/components/EzLayout/Authentication/SignUpForm.d.ts +20 -0
- package/dist/components/EzLayout/EzHeader.d.ts +33 -0
- package/dist/components/EzLayout/EzLanguageSwitcher.d.ts +4 -0
- package/dist/components/EzLayout/EzLayout.types.d.ts +223 -0
- package/dist/components/EzLayout/EzSidebar.d.ts +14 -0
- package/dist/components/EzLayout/EzThemeColorChanger.d.ts +9 -0
- package/dist/components/EzLayout/EzThemeSwitcher.d.ts +8 -0
- package/dist/components/EzLayout/EzUserProfile.d.ts +23 -0
- package/dist/components/EzLayout/components/MainContent.d.ts +13 -0
- package/dist/components/EzLayout/hooks/useLayoutImperative.d.ts +17 -0
- package/dist/components/EzLayout/hooks/useLayoutState.d.ts +25 -0
- package/dist/components/EzLayout/index.d.ts +19 -0
- package/dist/components/EzLayout/useEzLayout.d.ts +26 -0
- package/dist/components/EzScheduler/EzScheduler.types.d.ts +1658 -0
- package/dist/components/EzScheduler/EzSchedulerToolbar.d.ts +117 -0
- package/dist/components/EzScheduler/components/EzEventModal.d.ts +17 -0
- package/dist/components/EzScheduler/components/EzOverlapAlert.d.ts +12 -0
- package/dist/components/EzScheduler/components/EzQuickInfoPopup.d.ts +22 -0
- package/dist/components/EzScheduler/components/EzResourceSidebar.d.ts +33 -0
- package/dist/components/EzScheduler/components/EzSchedulerContent.d.ts +123 -0
- package/dist/components/EzScheduler/components/EzSchedulerQuickAdd.d.ts +17 -0
- package/dist/components/EzScheduler/components/RecurrenceEditor.d.ts +7 -0
- package/dist/components/EzScheduler/components/SchedulerLoadingSpinner.d.ts +2 -0
- package/dist/components/EzScheduler/components/dnd/DraggableEvent.d.ts +21 -0
- package/dist/components/EzScheduler/components/dnd/DroppableSlot.d.ts +19 -0
- package/dist/components/EzScheduler/hooks/useRecurrence.d.ts +2 -0
- package/dist/components/EzScheduler/hooks/useSchedulerEventHandlers.d.ts +11 -0
- package/dist/components/EzScheduler/hooks/useSchedulerEvents.d.ts +26 -0
- package/dist/components/EzScheduler/hooks/useSchedulerImperative.d.ts +15 -0
- package/dist/components/EzScheduler/hooks/useSchedulerNavigation.d.ts +9 -0
- package/dist/components/EzScheduler/hooks/useSchedulerResources.d.ts +10 -0
- package/dist/components/EzScheduler/hooks/useSchedulerState.d.ts +14 -0
- package/dist/components/EzScheduler/hooks/useSchedulerVirtualization.d.ts +9 -0
- package/dist/components/EzScheduler/index.d.ts +41 -0
- package/dist/components/EzScheduler/models/EventSettings.d.ts +11 -0
- package/dist/components/EzScheduler/models/View.d.ts +49 -0
- package/dist/components/EzScheduler/models/index.d.ts +2 -0
- package/dist/components/EzScheduler/services/AttendeeService.d.ts +15 -0
- package/dist/components/EzScheduler/services/AuditService.d.ts +15 -0
- package/dist/components/EzScheduler/services/CollisionDetectionService.d.ts +19 -0
- package/dist/components/EzScheduler/services/DragAndDropService.d.ts +16 -0
- package/dist/components/EzScheduler/services/HistoryService.d.ts +31 -0
- package/dist/components/EzScheduler/services/ICalendarImportService.d.ts +16 -0
- package/dist/components/EzScheduler/services/PrintService.d.ts +7 -0
- package/dist/components/EzScheduler/services/RecurrenceEngine.d.ts +7 -0
- package/dist/components/EzScheduler/services/ReminderService.d.ts +17 -0
- package/dist/components/EzScheduler/services/SchedulerService.d.ts +69 -0
- package/dist/components/EzScheduler/services/SearchService.d.ts +11 -0
- package/dist/components/EzScheduler/services/SecurityService.d.ts +25 -0
- package/dist/components/EzScheduler/services/TimezoneService.d.ts +20 -0
- package/dist/components/EzScheduler/services/VirtualScrollingService.d.ts +34 -0
- package/dist/components/EzScheduler/state/scheduler.store.d.ts +27 -0
- package/dist/components/EzScheduler/templates/CellTemplate.d.ts +42 -0
- package/dist/components/EzScheduler/templates/EditorTemplate.d.ts +32 -0
- package/dist/components/EzScheduler/templates/HeaderTemplate.d.ts +36 -0
- package/dist/components/EzScheduler/tests/phase1_rendering.spec.d.ts +1 -0
- package/dist/components/EzScheduler/tests/phase2_events.spec.d.ts +1 -0
- package/dist/components/EzScheduler/tests/phase3_templates.spec.d.ts +1 -0
- package/dist/components/EzScheduler/tests/phase4_export.spec.d.ts +1 -0
- package/dist/components/EzScheduler/tests/phase5_advanced.spec.d.ts +1 -0
- package/dist/components/EzScheduler/tests/phase6_security.spec.d.ts +1 -0
- package/dist/components/EzScheduler/tests/phase7_regression.spec.d.ts +1 -0
- package/dist/components/EzScheduler/useEzScheduler.d.ts +152 -0
- package/dist/components/EzScheduler/utils/createDragConstraint.d.ts +7 -0
- package/dist/components/EzScheduler/utils/getWeekNumber.d.ts +8 -0
- package/dist/components/EzScheduler/utils/sanitizeHtml.d.ts +17 -0
- package/dist/components/EzScheduler/views/AgendaView.d.ts +33 -0
- package/dist/components/EzScheduler/views/DayWeekView.d.ts +182 -0
- package/dist/components/EzScheduler/views/MonthView.d.ts +65 -0
- package/dist/components/EzScheduler/views/TimelineView.d.ts +121 -0
- package/dist/components/EzSignature/EzSignature.d.ts +42 -0
- package/dist/components/EzSignature/EzSignature.test.d.ts +1 -0
- package/dist/components/EzSignature/EzSignature.types.d.ts +132 -0
- package/dist/components/EzSignature/index.d.ts +2 -0
- package/dist/components/EzTable/EzColumnMenu.d.ts +7 -0
- package/dist/components/EzTable/EzDateFilterTree.d.ts +7 -0
- package/dist/components/EzTable/EzExcelFilter.d.ts +6 -0
- package/dist/components/EzTable/EzFilterBuilder.d.ts +12 -0
- package/dist/components/EzTable/EzGroupingPanel.d.ts +9 -0
- package/dist/components/EzTable/EzHeaderContextMenu.d.ts +8 -0
- package/dist/components/EzTable/EzPagination.d.ts +19 -0
- package/dist/components/EzTable/EzTable.types.d.ts +1481 -0
- package/dist/components/EzTable/EzTableEditDialog.d.ts +15 -0
- package/dist/components/EzTable/EzTableFooter.d.ts +10 -0
- package/dist/components/EzTable/EzTableOverlays.d.ts +11 -0
- package/dist/components/EzTable/EzTableStatusBar.d.ts +6 -0
- package/dist/components/EzTable/EzTableToolbar.d.ts +58 -0
- package/dist/components/EzTable/SmartCell.d.ts +7 -0
- package/dist/components/EzTable/__tests__/EzTableDX.test.d.ts +0 -0
- package/dist/components/EzTable/__tests__/EzTableEnterprise.test.d.ts +1 -0
- package/dist/components/EzTable/__tests__/useEzTable.test.d.ts +1 -0
- package/dist/components/EzTable/components/AdvancedColumnFilter.d.ts +16 -0
- package/dist/components/EzTable/components/BooleanFilterSection.d.ts +7 -0
- package/dist/components/EzTable/components/DraggableHeader.d.ts +10 -0
- package/dist/components/EzTable/components/EzTableBodySection.d.ts +70 -0
- package/dist/components/EzTable/components/EzTableCell.d.ts +46 -0
- package/dist/components/EzTable/components/EzTableHeaderSection.d.ts +22 -0
- package/dist/components/EzTable/components/EzTablePaginationSection.d.ts +31 -0
- package/dist/components/EzTable/components/EzTableRow.d.ts +56 -0
- package/dist/components/EzTable/components/FilterActionButtons.d.ts +16 -0
- package/dist/components/EzTable/components/FilterRuleSelect.d.ts +26 -0
- package/dist/components/EzTable/components/SelectAllCheckbox.d.ts +21 -0
- package/dist/components/EzTable/components/SelectFilterSection.d.ts +18 -0
- package/dist/components/EzTable/components/VirtualizedFilterList.d.ts +21 -0
- package/dist/components/EzTable/constants/filterOptions.d.ts +47 -0
- package/dist/components/EzTable/context/EzTableContext.d.ts +10 -0
- package/dist/components/EzTable/context/TableConfigContext.d.ts +13 -0
- package/dist/components/EzTable/context/TableStore.d.ts +17 -0
- package/dist/components/EzTable/filterUtils.d.ts +5 -0
- package/dist/components/EzTable/hooks/useAutoFit.d.ts +4 -0
- package/dist/components/EzTable/hooks/useCellEventHandlers.d.ts +16 -0
- package/dist/components/EzTable/hooks/useColumnSizeVars.d.ts +6 -0
- package/dist/components/EzTable/hooks/useContainerResize.d.ts +11 -0
- package/dist/components/EzTable/hooks/useDialogStateInitialization.d.ts +8 -0
- package/dist/components/EzTable/hooks/useFilterSelection.d.ts +12 -0
- package/dist/components/EzTable/hooks/useTableFiltering.d.ts +23 -0
- package/dist/components/EzTable/hooks/useTableHistory.d.ts +87 -0
- package/dist/components/EzTable/hooks/useTableImperative.d.ts +42 -0
- package/dist/components/EzTable/hooks/useTableSelection.d.ts +32 -0
- package/dist/components/EzTable/hooks/useTableState.d.ts +31 -0
- package/dist/components/EzTable/hooks/useTableVirtualization.d.ts +33 -0
- package/dist/components/EzTable/index.d.ts +50 -0
- package/dist/components/EzTable/renderers/index.d.ts +6 -0
- package/dist/components/EzTable/services/TableService.d.ts +26 -0
- package/dist/components/EzTable/useEzTable.d.ts +17 -0
- package/dist/components/EzTable/utils/TextMeasurer.d.ts +1 -0
- package/dist/components/EzTable/utils/TruncatedTooltip.d.ts +7 -0
- package/dist/components/EzTable/utils/columnTypeDetector.d.ts +5 -0
- package/dist/components/EzTable/utils/filterTypeGuards.d.ts +3 -0
- package/dist/components/EzTable/utils/index.d.ts +1 -0
- package/dist/components/EzTreeView/EzTreeView.types.d.ts +395 -0
- package/dist/components/EzTreeView/EzTreeViewItem.d.ts +77 -0
- package/dist/components/EzTreeView/EzVirtualTree.d.ts +72 -0
- package/dist/components/EzTreeView/components/EzTreeViewLoadingSpinner.d.ts +2 -0
- package/dist/components/EzTreeView/hooks/useTreeDragDrop.d.ts +31 -0
- package/dist/components/EzTreeView/hooks/useTreeExpansion.d.ts +21 -0
- package/dist/components/EzTreeView/hooks/useTreeImperative.d.ts +28 -0
- package/dist/components/EzTreeView/hooks/useTreeSelection.d.ts +31 -0
- package/dist/components/EzTreeView/hooks/useTreeState.d.ts +21 -0
- package/dist/components/EzTreeView/hooks/useTreeVirtualization.d.ts +18 -0
- package/dist/components/EzTreeView/index.d.ts +40 -0
- package/dist/components/EzTreeView/services/TreeService.d.ts +11 -0
- package/dist/components/EzTreeView/useEzTreeView.d.ts +62 -0
- package/dist/components/EzTreeView/utils/treeUtils.d.ts +17 -0
- package/dist/components/shared/components/EzErrorBoundary.d.ts +18 -0
- package/dist/components/shared/components/EzLayoutErrorFallback.d.ts +2 -0
- package/dist/components/shared/components/EzLoadingSpinner.d.ts +8 -0
- package/dist/components/shared/components/EzSchedulerErrorFallback.d.ts +2 -0
- package/dist/components/shared/components/EzTableErrorFallback.d.ts +2 -0
- package/dist/components/shared/components/EzTreeViewErrorFallback.d.ts +2 -0
- package/dist/components/ui/avatar.d.ts +5 -0
- package/dist/components/ui/badge.d.ts +9 -0
- package/dist/components/ui/breadcrumb.d.ts +19 -0
- package/dist/components/ui/button.d.ts +12 -0
- package/dist/components/ui/calendar.d.ts +15 -0
- package/dist/components/ui/card.d.ts +8 -0
- package/dist/components/ui/checkbox.d.ts +7 -0
- package/dist/components/ui/command.d.ts +78 -0
- package/dist/components/ui/context-menu.d.ts +27 -0
- package/dist/components/ui/date-time-picker.d.ts +13 -0
- package/dist/components/ui/dropdown-menu.d.ts +27 -0
- package/dist/components/ui/index.d.ts +26 -0
- package/dist/components/ui/input.d.ts +5 -0
- package/dist/components/ui/label.d.ts +5 -0
- package/dist/components/ui/modal.d.ts +9 -0
- package/dist/components/ui/password-input.d.ts +5 -0
- package/dist/components/ui/popover.d.ts +4 -0
- package/dist/components/ui/progress.d.ts +7 -0
- package/dist/components/ui/radio-group.d.ts +5 -0
- package/dist/components/ui/scroll-area.d.ts +5 -0
- package/dist/components/ui/select.d.ts +24 -0
- package/dist/components/ui/skeleton.d.ts +2 -0
- package/dist/components/ui/switch.d.ts +4 -0
- package/dist/components/ui/table.d.ts +10 -0
- package/dist/components/ui/tabs.d.ts +14 -0
- package/dist/components/ui/textarea.d.ts +5 -0
- package/dist/components/ui/tooltip.d.ts +7 -0
- package/dist/ezux.es.js +149 -0
- package/dist/ezux.umd.js +68 -0
- package/dist/index-DBwoXp4n.js +30656 -0
- package/dist/index.d.ts +70 -0
- package/dist/lib/perfect-freehand.d.ts +221 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/shared/components/AnimatedText.d.ts +44 -0
- package/dist/shared/components/BaseCell.d.ts +14 -0
- package/dist/shared/components/BooleanRenderer.d.ts +34 -0
- package/dist/shared/components/ChartRenderer.d.ts +19 -0
- package/dist/shared/components/DeleteConfirmationModal.d.ts +11 -0
- package/dist/shared/components/EzContextMenu.d.ts +12 -0
- package/dist/shared/components/EzNotificationDropdown.d.ts +1 -0
- package/dist/shared/components/HighlightText.d.ts +4 -0
- package/dist/shared/components/Modal.d.ts +13 -0
- package/dist/shared/components/NotificationPanel.d.ts +2 -0
- package/dist/shared/components/PrimitiveRenderer.d.ts +39 -0
- package/dist/shared/components/SearchableSelect.d.ts +13 -0
- package/dist/shared/components/SelectRenderer.d.ts +33 -0
- package/dist/shared/components/StatusBadge.d.ts +12 -0
- package/dist/shared/components/TooltipWrapper.d.ts +12 -0
- package/dist/shared/components/index.d.ts +9 -0
- package/dist/shared/hooks/index.d.ts +56 -0
- package/dist/shared/hooks/useBaseComponent.d.ts +60 -0
- package/dist/shared/hooks/useComponentImperativeAPI.d.ts +11 -0
- package/dist/shared/hooks/useComponentState.d.ts +39 -0
- package/dist/shared/hooks/useCurrentTime.d.ts +6 -0
- package/dist/shared/hooks/useDataChangeEvents.d.ts +53 -0
- package/dist/shared/hooks/useDebounce.d.ts +10 -0
- package/dist/shared/hooks/useDeleteConfirmation.d.ts +9 -0
- package/dist/shared/hooks/useDialogState.d.ts +21 -0
- package/dist/shared/hooks/useDndHandlers.d.ts +17 -0
- package/dist/shared/hooks/useEditing.d.ts +107 -0
- package/dist/shared/hooks/useEventHandlers.d.ts +61 -0
- package/dist/shared/hooks/useEzTheme.d.ts +22 -0
- package/dist/shared/hooks/useFieldValidation.d.ts +24 -0
- package/dist/shared/hooks/useHistory.d.ts +13 -0
- package/dist/shared/hooks/useI18n.d.ts +9 -0
- package/dist/shared/hooks/useImperativeAPI.d.ts +8 -0
- package/dist/shared/hooks/useInitCoreServices.d.ts +5 -0
- package/dist/shared/hooks/useKeyboardNavigation.d.ts +36 -0
- package/dist/shared/hooks/useKeyboardShortcuts.d.ts +14 -0
- package/dist/shared/hooks/useLifecycleEvents.d.ts +22 -0
- package/dist/shared/hooks/useLoadingState.d.ts +17 -0
- package/dist/shared/hooks/useMediaQuery.d.ts +6 -0
- package/dist/shared/hooks/useNotificationService.d.ts +8 -0
- package/dist/shared/hooks/usePerformanceMonitor.d.ts +15 -0
- package/dist/shared/hooks/useRowSelectionEvents.d.ts +44 -0
- package/dist/shared/hooks/useSelection.d.ts +73 -0
- package/dist/shared/hooks/useService.d.ts +12 -0
- package/dist/shared/hooks/useServiceState.d.ts +12 -0
- package/dist/shared/hooks/useStateChangeEvents.d.ts +61 -0
- package/dist/shared/hooks/useTheme.d.ts +13 -0
- package/dist/shared/hooks/useVirtualization.d.ts +85 -0
- package/dist/shared/services/BaseService.d.ts +56 -0
- package/dist/shared/services/ContextMenuService.d.ts +58 -0
- package/dist/shared/services/ExportService.d.ts +35 -0
- package/dist/shared/services/FocusManagerService.d.ts +33 -0
- package/dist/shared/services/HierarchyService.d.ts +43 -0
- package/dist/shared/services/I18nService.d.ts +65 -0
- package/dist/shared/services/LayoutService.d.ts +80 -0
- package/dist/shared/services/NotificationService.d.ts +44 -0
- package/dist/shared/services/PersistenceService.d.ts +69 -0
- package/dist/shared/services/ServiceRegistry.d.ts +51 -0
- package/dist/shared/services/ThemeService.d.ts +49 -0
- package/dist/shared/services/VirtualizationService.d.ts +51 -0
- package/dist/shared/state/store.d.ts +10 -0
- package/dist/shared/themes.d.ts +25 -0
- package/dist/shared/types/BaseProps.d.ts +18 -0
- package/dist/shared/types/common.d.ts +292 -0
- package/dist/shared/types/commonTypes.d.ts +101 -0
- package/dist/shared/types/index.d.ts +2 -0
- package/dist/shared/utils/canvasUtils.d.ts +16 -0
- package/dist/shared/utils/commonUtils.d.ts +28 -0
- package/dist/shared/utils/csvUtils.d.ts +7 -0
- package/dist/shared/utils/dateUtils.d.ts +5 -0
- package/dist/shared/utils/dndUtils.d.ts +16 -0
- package/dist/shared/utils/ezStyleUtils.d.ts +64 -0
- package/dist/shared/utils/formatUtils.d.ts +20 -0
- package/dist/shared/utils/imperativeApiUtils.d.ts +36 -0
- package/dist/shared/utils/index.d.ts +11 -0
- package/dist/shared/utils/renderUtils.d.ts +6 -0
- package/dist/shared/utils/serviceUtils.d.ts +10 -0
- package/dist/shared/utils/styleUtils.d.ts +66 -0
- package/dist/shared/utils/validationUtils.d.ts +16 -0
- package/package.json +101 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
import { SchedulerEvent } from '../EzScheduler.types';
|
|
3
|
+
import { DragEndEvent } from '@dnd-kit/core';
|
|
4
|
+
export declare class DragAndDropService implements IService {
|
|
5
|
+
name: string;
|
|
6
|
+
calculateNewTimes(event: SchedulerEvent, deltaMinutes: number): {
|
|
7
|
+
start: Date;
|
|
8
|
+
end: Date;
|
|
9
|
+
};
|
|
10
|
+
handleDragEnd(event: DragEndEvent, events: SchedulerEvent[], _slotDuration?: number): {
|
|
11
|
+
eventId: string;
|
|
12
|
+
newStart: Date;
|
|
13
|
+
newEnd: Date;
|
|
14
|
+
} | null;
|
|
15
|
+
cleanup(): void;
|
|
16
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
import { BaseService } from '../../../shared/services/BaseService';
|
|
3
|
+
import { SchedulerEvent } from '../EzScheduler.types';
|
|
4
|
+
export interface HistoryState {
|
|
5
|
+
canUndo: boolean;
|
|
6
|
+
canRedo: boolean;
|
|
7
|
+
}
|
|
8
|
+
export type HistoryActionType = 'ADD_EVENT' | 'UPDATE_EVENT' | 'DELETE_EVENT' | 'BATCH_UPDATE';
|
|
9
|
+
export interface HistoryAction {
|
|
10
|
+
type: HistoryActionType;
|
|
11
|
+
previousState: SchedulerEvent[] | SchedulerEvent | null;
|
|
12
|
+
newState: SchedulerEvent[] | SchedulerEvent | null;
|
|
13
|
+
timestamp: number;
|
|
14
|
+
description: string;
|
|
15
|
+
}
|
|
16
|
+
export declare class HistoryService extends BaseService<HistoryState> implements IService {
|
|
17
|
+
name: string;
|
|
18
|
+
private undoStack;
|
|
19
|
+
private redoStack;
|
|
20
|
+
private maxHistorySize;
|
|
21
|
+
constructor();
|
|
22
|
+
/**
|
|
23
|
+
* Records an action for potential undo
|
|
24
|
+
*/
|
|
25
|
+
record(action: Omit<HistoryAction, 'timestamp'>): void;
|
|
26
|
+
undo(): HistoryAction | null;
|
|
27
|
+
redo(): HistoryAction | null;
|
|
28
|
+
clear(): void;
|
|
29
|
+
private updateState;
|
|
30
|
+
cleanup(): void;
|
|
31
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { SchedulerEvent } from '../EzScheduler.types';
|
|
2
|
+
/**
|
|
3
|
+
* Service for importing iCalendar (.ics) files
|
|
4
|
+
*/
|
|
5
|
+
export declare class ICalendarImportService {
|
|
6
|
+
/**
|
|
7
|
+
* Parse iCalendar content and convert to Scheduler events
|
|
8
|
+
*/
|
|
9
|
+
parse(content: string | Blob): Promise<SchedulerEvent[]>;
|
|
10
|
+
private parseICalendarText;
|
|
11
|
+
private parseVEvent;
|
|
12
|
+
private unfoldLines;
|
|
13
|
+
private parseLine;
|
|
14
|
+
private parseDateTime;
|
|
15
|
+
private unescapeValue;
|
|
16
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
import { SchedulerEvent } from '../EzScheduler.types';
|
|
3
|
+
export declare class PrintService implements IService {
|
|
4
|
+
name: string;
|
|
5
|
+
print(_schedulerElementId: string, _events: SchedulerEvent[]): void;
|
|
6
|
+
cleanup(): void;
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
import { SchedulerEvent } from '../EzScheduler.types';
|
|
3
|
+
export declare class RecurrenceEngine implements IService {
|
|
4
|
+
name: string;
|
|
5
|
+
expandEvents(events: SchedulerEvent[], start: Date, end: Date): SchedulerEvent[];
|
|
6
|
+
cleanup(): void;
|
|
7
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
import { SchedulerEvent, Reminder } from '../EzScheduler.types';
|
|
3
|
+
export declare class ReminderService implements IService {
|
|
4
|
+
name: string;
|
|
5
|
+
private timer;
|
|
6
|
+
private checkInterval;
|
|
7
|
+
private onReminderTriggered?;
|
|
8
|
+
constructor();
|
|
9
|
+
start(onTrigger: (event: SchedulerEvent, reminder: Reminder) => void): void;
|
|
10
|
+
stop(): void;
|
|
11
|
+
private checkReminders;
|
|
12
|
+
/**
|
|
13
|
+
* Calculates trigger time for a reminder
|
|
14
|
+
*/
|
|
15
|
+
getTriggerTime(eventStart: Date, minutesBefore: number): Date;
|
|
16
|
+
cleanup(): void;
|
|
17
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { SchedulerEvent, Resource, ISchedulerService } from '../EzScheduler.types';
|
|
2
|
+
/**
|
|
3
|
+
* Service for managing scheduler data and operations.
|
|
4
|
+
* @group Services
|
|
5
|
+
*/
|
|
6
|
+
export declare class SchedulerService implements ISchedulerService {
|
|
7
|
+
name: string;
|
|
8
|
+
constructor(initialEvents?: SchedulerEvent[]);
|
|
9
|
+
/**
|
|
10
|
+
* Initializes the service.
|
|
11
|
+
* @group Methods
|
|
12
|
+
*/
|
|
13
|
+
init(): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Cleans up the service.
|
|
16
|
+
* @group Methods
|
|
17
|
+
*/
|
|
18
|
+
cleanup(): Promise<void>;
|
|
19
|
+
/**
|
|
20
|
+
* Seeds the mock database with initial data.
|
|
21
|
+
* @param events Initial events
|
|
22
|
+
* @param resources Initial resources
|
|
23
|
+
* @group Methods
|
|
24
|
+
*/
|
|
25
|
+
initializeWithData(events: SchedulerEvent[], resources?: Resource[]): void;
|
|
26
|
+
/**
|
|
27
|
+
* Retrieves events within a date range.
|
|
28
|
+
* @param start Start date
|
|
29
|
+
* @param end End date
|
|
30
|
+
* @returns Promise resolving to an array of scheduler events
|
|
31
|
+
* @group Methods
|
|
32
|
+
*/
|
|
33
|
+
getEvents(start?: Date, end?: Date): Promise<SchedulerEvent[]>;
|
|
34
|
+
/**
|
|
35
|
+
* Adds a new event to the scheduler.
|
|
36
|
+
* @param event The event to add
|
|
37
|
+
* @returns Promise resolving to the added event
|
|
38
|
+
* @group Methods
|
|
39
|
+
*/
|
|
40
|
+
addEvent(event: Partial<SchedulerEvent>): Promise<SchedulerEvent>;
|
|
41
|
+
/**
|
|
42
|
+
* Updates an existing event.
|
|
43
|
+
* @param event The event to update
|
|
44
|
+
* @returns Promise resolving to the updated event
|
|
45
|
+
* @group Methods
|
|
46
|
+
*/
|
|
47
|
+
updateEvent(event: SchedulerEvent): Promise<SchedulerEvent>;
|
|
48
|
+
/**
|
|
49
|
+
* Deletes an event by ID.
|
|
50
|
+
* @param id The ID of the event to delete
|
|
51
|
+
* @returns Promise void
|
|
52
|
+
* @group Methods
|
|
53
|
+
*/
|
|
54
|
+
deleteEvent(id: string | number): Promise<void>;
|
|
55
|
+
/**
|
|
56
|
+
* Retrieves all resources.
|
|
57
|
+
* @returns Promise resolving to an array of resources
|
|
58
|
+
* @group Methods
|
|
59
|
+
*/
|
|
60
|
+
getResources(): Promise<Resource[]>;
|
|
61
|
+
/**
|
|
62
|
+
* Adds a new resource.
|
|
63
|
+
* @param resource The resource to add
|
|
64
|
+
* @returns Promise resolving to the added resource
|
|
65
|
+
* @group Methods
|
|
66
|
+
*/
|
|
67
|
+
addResource(resource: Resource): Promise<Resource>;
|
|
68
|
+
private simulateLatency;
|
|
69
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
import { SchedulerEvent } from '../EzScheduler.types';
|
|
3
|
+
export interface SearchOptions {
|
|
4
|
+
fields?: ('title' | 'description' | 'location')[];
|
|
5
|
+
matchCase?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare class SearchService implements IService {
|
|
8
|
+
name: string;
|
|
9
|
+
search(events: SchedulerEvent[], query: string, options?: SearchOptions): SchedulerEvent[];
|
|
10
|
+
cleanup(): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
export interface UserContext {
|
|
3
|
+
userId: string;
|
|
4
|
+
tenantId: string;
|
|
5
|
+
roles: string[];
|
|
6
|
+
permissions?: string[];
|
|
7
|
+
}
|
|
8
|
+
export declare class SecurityService implements IService {
|
|
9
|
+
name: string;
|
|
10
|
+
private currentUser;
|
|
11
|
+
setUser(user: UserContext): void;
|
|
12
|
+
getUser(): UserContext | null;
|
|
13
|
+
/**
|
|
14
|
+
* Checks if the current user has permission for a specific action.
|
|
15
|
+
* @param action The action to check (e.g., 'edit_event', 'delete_event').
|
|
16
|
+
* @param resourceId Optional resource ID if checking specific resource access.
|
|
17
|
+
*/
|
|
18
|
+
hasPermission(action: string, _resourceId?: string): boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Checks if the data belongs to the current user's tenant.
|
|
21
|
+
* @param dataTenantId The tenant ID associated with the data.
|
|
22
|
+
*/
|
|
23
|
+
validateTenant(dataTenantId: string): boolean;
|
|
24
|
+
cleanup(): void;
|
|
25
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
export declare class TimezoneService implements IService {
|
|
3
|
+
name: string;
|
|
4
|
+
constructor();
|
|
5
|
+
/**
|
|
6
|
+
* Converts a date to a specific timezone
|
|
7
|
+
* @param date Date object
|
|
8
|
+
* @param timeZone Target time zone (e.g., 'America/New_York')
|
|
9
|
+
*/
|
|
10
|
+
toTimezone(date: Date | string | number, timeZone: string): Date;
|
|
11
|
+
/**
|
|
12
|
+
* Formats a date in a specific timezone
|
|
13
|
+
*/
|
|
14
|
+
formatInTimezone(date: Date | string | number, timeZone: string, options?: Intl.DateTimeFormatOptions): string;
|
|
15
|
+
/**
|
|
16
|
+
* Get local browser timezone name
|
|
17
|
+
*/
|
|
18
|
+
getLocalTimezone(): string;
|
|
19
|
+
cleanup(): void;
|
|
20
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { IService } from '../../../shared/services/ServiceRegistry';
|
|
2
|
+
import { BaseService } from '../../../shared/services/BaseService';
|
|
3
|
+
export interface VirtualScrollState {
|
|
4
|
+
offsets: Record<string, {
|
|
5
|
+
top: number;
|
|
6
|
+
left: number;
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
export type ScrollDirection = 'vertical' | 'horizontal' | 'both';
|
|
10
|
+
/**
|
|
11
|
+
* High-performance service for coordinating virtualization state across components.
|
|
12
|
+
* Supports bidirectional syncing for complex layouts (Timeline, Resource Headers).
|
|
13
|
+
*/
|
|
14
|
+
export declare class VirtualScrollingService extends BaseService<VirtualScrollState> implements IService {
|
|
15
|
+
name: string;
|
|
16
|
+
private registrants;
|
|
17
|
+
constructor();
|
|
18
|
+
/**
|
|
19
|
+
* Registers a callback for external scroll control
|
|
20
|
+
*/
|
|
21
|
+
register(id: string, onUpdate: (offset: {
|
|
22
|
+
top: number;
|
|
23
|
+
left: number;
|
|
24
|
+
}) => void): () => boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Updates the scroll offset and syncs with all other registrants
|
|
27
|
+
* @param id The source component ID
|
|
28
|
+
* @param top Vertical offset
|
|
29
|
+
* @param left Horizontal offset
|
|
30
|
+
* @param direction Which axis to sync (optimization)
|
|
31
|
+
*/
|
|
32
|
+
setScrollOffset(id: string, top: number, left: number, _direction?: ScrollDirection): void;
|
|
33
|
+
cleanup(): void;
|
|
34
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Store } from '@tanstack/store';
|
|
2
|
+
import { SchedulerEvent, Resource, ViewType, ResourceModel } from '../EzScheduler.types';
|
|
3
|
+
export interface SchedulerState {
|
|
4
|
+
events: SchedulerEvent[];
|
|
5
|
+
resources: Resource[] | ResourceModel[];
|
|
6
|
+
view: ViewType;
|
|
7
|
+
currentDate: Date;
|
|
8
|
+
selectedDate: Date;
|
|
9
|
+
selectedEventId: string | null;
|
|
10
|
+
slotDuration: number;
|
|
11
|
+
is24Hour: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare const createSchedulerStore: (initialState: Partial<SchedulerState>) => Store<SchedulerState, (cb: SchedulerState) => SchedulerState>;
|
|
14
|
+
export declare const createSchedulerActions: (store: Store<SchedulerState>) => {
|
|
15
|
+
setEvents: (events: SchedulerEvent[]) => void;
|
|
16
|
+
addEvent: (event: SchedulerEvent) => void;
|
|
17
|
+
updateEvent: (updatedEvent: SchedulerEvent) => void;
|
|
18
|
+
deleteEvent: (id: string | number) => void;
|
|
19
|
+
setResources: (resources: Resource[] | ResourceModel[]) => void;
|
|
20
|
+
setView: (view: ViewType) => void;
|
|
21
|
+
setCurrentDate: (date: Date) => void;
|
|
22
|
+
setSelectedDate: (date: Date) => void;
|
|
23
|
+
setSelectedEventId: (id: string | null) => void;
|
|
24
|
+
setSlotDuration: (duration: number) => void;
|
|
25
|
+
setIs24Hour: (is24: boolean) => void;
|
|
26
|
+
};
|
|
27
|
+
export type SchedulerActions = ReturnType<typeof createSchedulerActions>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { SchedulerEvent } from '../EzScheduler.types';
|
|
3
|
+
/**
|
|
4
|
+
* Props for the CellTemplate component.
|
|
5
|
+
*/
|
|
6
|
+
export interface CellTemplateProps {
|
|
7
|
+
/**
|
|
8
|
+
* The date representing this cell.
|
|
9
|
+
* @group Properties
|
|
10
|
+
*/
|
|
11
|
+
date: Date;
|
|
12
|
+
/**
|
|
13
|
+
* The type of view context.
|
|
14
|
+
* @group Properties
|
|
15
|
+
*/
|
|
16
|
+
type: 'month' | 'week' | 'day';
|
|
17
|
+
/**
|
|
18
|
+
* Events occurring on this date.
|
|
19
|
+
* @group Properties
|
|
20
|
+
*/
|
|
21
|
+
events?: SchedulerEvent[];
|
|
22
|
+
/**
|
|
23
|
+
* Custom content for the cell.
|
|
24
|
+
* @group Properties
|
|
25
|
+
*/
|
|
26
|
+
children?: React.ReactNode;
|
|
27
|
+
/**
|
|
28
|
+
* Custom CSS class name.
|
|
29
|
+
* @group Properties
|
|
30
|
+
*/
|
|
31
|
+
className?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Callback when the cell is clicked.
|
|
34
|
+
* @group Events
|
|
35
|
+
*/
|
|
36
|
+
onClick?: (date: Date) => void;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Default template for rendering a scheduler cell.
|
|
40
|
+
* @group Models
|
|
41
|
+
*/
|
|
42
|
+
export declare const CellTemplate: React.FC<CellTemplateProps>;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { SchedulerEvent } from '../EzScheduler.types';
|
|
3
|
+
/**
|
|
4
|
+
* Props for the EditorTemplate component.
|
|
5
|
+
*/
|
|
6
|
+
export interface EditorTemplateProps {
|
|
7
|
+
/**
|
|
8
|
+
* The event being edited or created.
|
|
9
|
+
* @group Properties
|
|
10
|
+
*/
|
|
11
|
+
event?: Partial<SchedulerEvent>;
|
|
12
|
+
/**
|
|
13
|
+
* Callback when the event is saved.
|
|
14
|
+
* @group Events
|
|
15
|
+
*/
|
|
16
|
+
onSave: (event: SchedulerEvent) => void;
|
|
17
|
+
/**
|
|
18
|
+
* Callback when editing is cancelled.
|
|
19
|
+
* @group Events
|
|
20
|
+
*/
|
|
21
|
+
onCancel: () => void;
|
|
22
|
+
/**
|
|
23
|
+
* Callback when the event is deleted.
|
|
24
|
+
* @group Events
|
|
25
|
+
*/
|
|
26
|
+
onDelete?: (id: string) => void;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Default template for the event editor dialog.
|
|
30
|
+
* @group Models
|
|
31
|
+
*/
|
|
32
|
+
export declare const EditorTemplate: React.FC<EditorTemplateProps>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Props for the HeaderTemplate component.
|
|
4
|
+
*/
|
|
5
|
+
export interface HeaderTemplateProps {
|
|
6
|
+
/**
|
|
7
|
+
* The date representing this header.
|
|
8
|
+
* @group Properties
|
|
9
|
+
*/
|
|
10
|
+
date: Date;
|
|
11
|
+
/**
|
|
12
|
+
* The type of header.
|
|
13
|
+
* @group Properties
|
|
14
|
+
*/
|
|
15
|
+
type: 'day' | 'week' | 'month' | 'resource';
|
|
16
|
+
/**
|
|
17
|
+
* Date format string for display.
|
|
18
|
+
* @group Properties
|
|
19
|
+
*/
|
|
20
|
+
formatString?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Custom text for the header.
|
|
23
|
+
* @group Properties
|
|
24
|
+
*/
|
|
25
|
+
text?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Custom CSS class name.
|
|
28
|
+
* @group Properties
|
|
29
|
+
*/
|
|
30
|
+
className?: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Default template for rendering a scheduler header.
|
|
34
|
+
* @group Models
|
|
35
|
+
*/
|
|
36
|
+
export declare const HeaderTemplate: React.FC<HeaderTemplateProps>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { EzSchedulerProps } from './EzScheduler.types';
|
|
2
|
+
import { HistoryService } from './services/HistoryService';
|
|
3
|
+
import { SearchService } from './services/SearchService';
|
|
4
|
+
import { TimezoneService } from './services/TimezoneService';
|
|
5
|
+
import { AttendeeService } from './services/AttendeeService';
|
|
6
|
+
import { ReminderService } from './services/ReminderService';
|
|
7
|
+
/**
|
|
8
|
+
* Orchestrator hook for EzScheduler.
|
|
9
|
+
* Delegates responsibilities to specialized sub-hooks and provides a unified interface for managing scheduler state and operations.
|
|
10
|
+
*
|
|
11
|
+
* @param props - Scheduler properties of type {@link EzSchedulerProps}
|
|
12
|
+
* @returns An object containing the consolidated state and API methods for the scheduler
|
|
13
|
+
* @group Hooks
|
|
14
|
+
*/
|
|
15
|
+
export declare const useEzScheduler: (props: EzSchedulerProps) => {
|
|
16
|
+
useSchedulerImperative: (view: import('./EzScheduler.types').ViewType, currentDate: Date, schedulerService: import('./services/SchedulerService').SchedulerService, visibleEvents: import('./EzScheduler.types').SchedulerEvent[], methods: {
|
|
17
|
+
setEditorState: (state: any) => void;
|
|
18
|
+
setResources: (res: import('./EzScheduler.types').Resource[] | ((prev: import('./EzScheduler.types').Resource[]) => import('./EzScheduler.types').Resource[])) => void;
|
|
19
|
+
scrollToIndex: (index: number) => void;
|
|
20
|
+
forceUpdate: () => void;
|
|
21
|
+
showSpinner: () => void;
|
|
22
|
+
hideSpinner: () => void;
|
|
23
|
+
closeQuickInfoPopup: () => void;
|
|
24
|
+
changeView: (view: import('./EzScheduler.types').View) => void;
|
|
25
|
+
next: () => void;
|
|
26
|
+
prev: () => void;
|
|
27
|
+
today: () => void;
|
|
28
|
+
}, ref: React.Ref<import('./EzScheduler.types').EzSchedulerRef>, extraApi?: any) => void;
|
|
29
|
+
store: import('@tanstack/store').Store<import('./state/scheduler.store').SchedulerState, (cb: import('./state/scheduler.store').SchedulerState) => import('./state/scheduler.store').SchedulerState>;
|
|
30
|
+
actions: {
|
|
31
|
+
setEvents: (events: import('./EzScheduler.types').SchedulerEvent[]) => void;
|
|
32
|
+
addEvent: (event: import('./EzScheduler.types').SchedulerEvent) => void;
|
|
33
|
+
updateEvent: (updatedEvent: import('./EzScheduler.types').SchedulerEvent) => void;
|
|
34
|
+
deleteEvent: (id: string | number) => void;
|
|
35
|
+
setResources: (resources: import('./EzScheduler.types').Resource[] | import('./EzScheduler.types').ResourceModel[]) => void;
|
|
36
|
+
setView: (view: import('./EzScheduler.types').ViewType) => void;
|
|
37
|
+
setCurrentDate: (date: Date) => void;
|
|
38
|
+
setSelectedDate: (date: Date) => void;
|
|
39
|
+
setSelectedEventId: (id: string | null) => void;
|
|
40
|
+
setSlotDuration: (duration: number) => void;
|
|
41
|
+
setIs24Hour: (is24: boolean) => void;
|
|
42
|
+
};
|
|
43
|
+
view: import('./EzScheduler.types').ViewType;
|
|
44
|
+
visibleEvents: any;
|
|
45
|
+
currentDate: Date;
|
|
46
|
+
setCurrentDate: (date: Date) => void;
|
|
47
|
+
next: () => void;
|
|
48
|
+
prev: () => void;
|
|
49
|
+
daysInView: Date[];
|
|
50
|
+
allEvents: import('./EzScheduler.types').SchedulerEvent[];
|
|
51
|
+
slotDuration: number;
|
|
52
|
+
setSlotDuration: (duration: number) => void;
|
|
53
|
+
is24Hour: boolean;
|
|
54
|
+
setIs24Hour: (is24: boolean) => void;
|
|
55
|
+
today: () => void;
|
|
56
|
+
parentRef: import('react').RefObject<HTMLDivElement | null>;
|
|
57
|
+
rowVirtualizer: import('@tanstack/virtual-core').Virtualizer<HTMLDivElement, Element>;
|
|
58
|
+
columnVirtualizer: import('@tanstack/virtual-core').Virtualizer<HTMLDivElement, Element> | undefined;
|
|
59
|
+
schedulerService: import('./services/SchedulerService').SchedulerService;
|
|
60
|
+
recurrenceEngine: any;
|
|
61
|
+
historyService: HistoryService;
|
|
62
|
+
searchService: SearchService;
|
|
63
|
+
timezoneService: TimezoneService;
|
|
64
|
+
attendeeService: AttendeeService;
|
|
65
|
+
reminderService: ReminderService;
|
|
66
|
+
serviceRegistry: import('../../shared/services/ServiceRegistry').ServiceRegistry;
|
|
67
|
+
showWeekend: boolean;
|
|
68
|
+
timeFormat: string | undefined;
|
|
69
|
+
weekRule: import('./EzScheduler.types').WeekRule;
|
|
70
|
+
monthsCount: number;
|
|
71
|
+
eventDragArea: string | undefined;
|
|
72
|
+
dir: "ltr" | "rtl";
|
|
73
|
+
/**
|
|
74
|
+
* Current view mode.
|
|
75
|
+
* @group State
|
|
76
|
+
*/
|
|
77
|
+
currentView: import('./EzScheduler.types').ViewType;
|
|
78
|
+
/**
|
|
79
|
+
* Selected date.
|
|
80
|
+
* @group State
|
|
81
|
+
*/
|
|
82
|
+
selectedDate: Date;
|
|
83
|
+
/**
|
|
84
|
+
* List of events.
|
|
85
|
+
* @group State
|
|
86
|
+
*/
|
|
87
|
+
events: import('./EzScheduler.types').SchedulerEvent[];
|
|
88
|
+
/**
|
|
89
|
+
* List of resources.
|
|
90
|
+
* @group State
|
|
91
|
+
*/
|
|
92
|
+
resources: import('./EzScheduler.types').ResourceModel[] | import('./EzScheduler.types').Resource[];
|
|
93
|
+
/**
|
|
94
|
+
* View-specific events.
|
|
95
|
+
* @group State
|
|
96
|
+
*/
|
|
97
|
+
viewEvents: any;
|
|
98
|
+
/**
|
|
99
|
+
* Navigates to the next period.
|
|
100
|
+
* @group Methods
|
|
101
|
+
*/
|
|
102
|
+
nextPeriod: () => void;
|
|
103
|
+
/**
|
|
104
|
+
* Navigates to the previous period.
|
|
105
|
+
* @group Methods
|
|
106
|
+
*/
|
|
107
|
+
prevPeriod: () => void;
|
|
108
|
+
/**
|
|
109
|
+
* Sets the current view.
|
|
110
|
+
* @group Methods
|
|
111
|
+
*/
|
|
112
|
+
setView: (view: import('./EzScheduler.types').ViewType) => void;
|
|
113
|
+
/**
|
|
114
|
+
* Sets the selected date.
|
|
115
|
+
* @group Methods
|
|
116
|
+
*/
|
|
117
|
+
setDate: (date: Date) => void;
|
|
118
|
+
/**
|
|
119
|
+
* Adds a new event.
|
|
120
|
+
* @group Methods
|
|
121
|
+
*/
|
|
122
|
+
addEvent: import('@tanstack/react-query').UseMutateAsyncFunction<import('./EzScheduler.types').SchedulerEvent, Error, Partial<import('./EzScheduler.types').SchedulerEvent>, {
|
|
123
|
+
previousEvents: unknown;
|
|
124
|
+
queryKey: string[];
|
|
125
|
+
}>;
|
|
126
|
+
/**
|
|
127
|
+
* Updates an existing event.
|
|
128
|
+
* @group Methods
|
|
129
|
+
*/
|
|
130
|
+
updateEvent: import('@tanstack/react-query').UseMutateAsyncFunction<import('./EzScheduler.types').SchedulerEvent, Error, import('./EzScheduler.types').SchedulerEvent, {
|
|
131
|
+
previousEvents: unknown;
|
|
132
|
+
queryKey: string[];
|
|
133
|
+
}>;
|
|
134
|
+
/**
|
|
135
|
+
* Deletes an event.
|
|
136
|
+
* @group Methods
|
|
137
|
+
*/
|
|
138
|
+
deleteEvent: import('@tanstack/react-query').UseMutateAsyncFunction<string | number, Error, string | number, {
|
|
139
|
+
previousEvents: unknown;
|
|
140
|
+
queryKey: string[];
|
|
141
|
+
}>;
|
|
142
|
+
isUpdating: boolean;
|
|
143
|
+
selectedIndex: number;
|
|
144
|
+
setSelectedIndex: import('react').Dispatch<import('react').SetStateAction<number>>;
|
|
145
|
+
highlightedEventId: string | null;
|
|
146
|
+
setHighlightedEventId: import('react').Dispatch<import('react').SetStateAction<string | null>>;
|
|
147
|
+
baseState: import('../../shared/hooks').BaseComponentState;
|
|
148
|
+
baseApi: {
|
|
149
|
+
showSpinner: () => void;
|
|
150
|
+
hideSpinner: () => void;
|
|
151
|
+
};
|
|
152
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Modifier } from '@dnd-kit/core';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a drag constraint modifier that restricts dragging to a specified area
|
|
4
|
+
* @param selector - CSS selector for the constraint boundary element
|
|
5
|
+
* @returns Modifier function or undefined if no selector provided
|
|
6
|
+
*/
|
|
7
|
+
export declare function createDragConstraint(selector?: string): Modifier | undefined;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { WeekRule } from '../EzScheduler.types';
|
|
2
|
+
/**
|
|
3
|
+
* Calculate week number based on the specified week rule
|
|
4
|
+
* @param date - The date to calculate week number for
|
|
5
|
+
* @param weekRule - The week numbering rule to use
|
|
6
|
+
* @returns Week number
|
|
7
|
+
*/
|
|
8
|
+
export declare function getWeekNumber(date: Date, weekRule?: WeekRule): number;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sanitizes HTML content using DOMPurify
|
|
3
|
+
* @param html - The HTML string to sanitize
|
|
4
|
+
* @param enabled - Whether sanitization is enabled
|
|
5
|
+
* @returns Sanitized HTML string or original if disabled
|
|
6
|
+
*/
|
|
7
|
+
export declare function sanitizeHtml(html: string, enabled?: boolean): string;
|
|
8
|
+
/**
|
|
9
|
+
* Renders template content safely
|
|
10
|
+
* @param template - Template content (React node or HTML string)
|
|
11
|
+
* @param data - Data to pass to template function
|
|
12
|
+
* @param enableSanitizer - Whether to sanitize HTML strings
|
|
13
|
+
* @returns Rendered content
|
|
14
|
+
*/
|
|
15
|
+
export declare function renderTemplate(template: ((data: any) => React.ReactNode) | string | undefined, data: any, enableSanitizer?: boolean): React.ReactNode | {
|
|
16
|
+
__html: string;
|
|
17
|
+
} | null;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { SchedulerEvent, EzSchedulerComponents } from '../EzScheduler.types';
|
|
3
|
+
/**
|
|
4
|
+
* Props for the AgendaView component.
|
|
5
|
+
*/
|
|
6
|
+
interface AgendaViewProps {
|
|
7
|
+
/**
|
|
8
|
+
* List of days to display in the agenda.
|
|
9
|
+
* @group Properties
|
|
10
|
+
*/
|
|
11
|
+
daysInView: Date[];
|
|
12
|
+
/**
|
|
13
|
+
* List of events to display.
|
|
14
|
+
* @group Properties
|
|
15
|
+
*/
|
|
16
|
+
visibleEvents: SchedulerEvent[];
|
|
17
|
+
/**
|
|
18
|
+
* Callback when an event is clicked.
|
|
19
|
+
* @group Events
|
|
20
|
+
*/
|
|
21
|
+
onEventClick?: (event: SchedulerEvent) => void;
|
|
22
|
+
/**
|
|
23
|
+
* Custom components for injection.
|
|
24
|
+
* @group Properties
|
|
25
|
+
*/
|
|
26
|
+
components?: EzSchedulerComponents;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* A linear list view of events, grouped by day.
|
|
30
|
+
* @group Views
|
|
31
|
+
*/
|
|
32
|
+
export declare const AgendaView: React.FC<AgendaViewProps>;
|
|
33
|
+
export {};
|