dishui 0.0.67 → 0.0.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist/calendar.js +5 -0
  2. package/dist/components/Demo/index.js +76 -80
  3. package/dist/components/Demo/index.js.map +1 -1
  4. package/dist/components/pro/Calendar/Calendar.js +576 -0
  5. package/dist/components/pro/Calendar/Calendar.js.map +1 -0
  6. package/dist/components/pro/Calendar/hooks/useCalendarDrag.js +104 -0
  7. package/dist/components/pro/Calendar/hooks/useCalendarDrag.js.map +1 -0
  8. package/dist/components/pro/Calendar/hooks/useCalendarState.js +187 -0
  9. package/dist/components/pro/Calendar/hooks/useCalendarState.js.map +1 -0
  10. package/dist/components/pro/Calendar/utils.js +193 -0
  11. package/dist/components/pro/Calendar/utils.js.map +1 -0
  12. package/dist/components/pro/Gantt/Gantt.js +868 -0
  13. package/dist/components/pro/Gantt/Gantt.js.map +1 -0
  14. package/dist/components/pro/Gantt/hooks/useGanttDrag.js +99 -0
  15. package/dist/components/pro/Gantt/hooks/useGanttDrag.js.map +1 -0
  16. package/dist/components/pro/Gantt/hooks/useGanttState.js +95 -0
  17. package/dist/components/pro/Gantt/hooks/useGanttState.js.map +1 -0
  18. package/dist/components/pro/Gantt/utils.js +236 -0
  19. package/dist/components/pro/Gantt/utils.js.map +1 -0
  20. package/dist/dishui.css +1 -1
  21. package/dist/gantt.js +5 -0
  22. package/dist/hooks/useCopyToClipboard.d.ts +2 -1
  23. package/dist/hooks/useCopyToClipboard.js +17 -9
  24. package/dist/hooks/useCopyToClipboard.js.map +1 -1
  25. package/dist/index.d.ts +4 -0
  26. package/dist/index.js +9 -1
  27. package/dist/utils/i18n.js +40 -0
  28. package/dist/utils/i18n.js.map +1 -1
  29. package/package.json +12 -1
  30. package/dist/pages/components/Gantt/index.d.ts +0 -3
  31. package/dist/pages/components/Gantt/index.en.d.ts +0 -3
  32. package/dist/pages/components/Gantt/index.zh.d.ts +0 -3
package/dist/gantt.js ADDED
@@ -0,0 +1,5 @@
1
+ import { DEFAULT_CATEGORY_CONFIG as e, DEFAULT_SCALE_CONFIGS as t, DEFAULT_TIME_WINDOW as n, addDays as r, addWorkingDays as i, calculateWorkingDays as a, computeDateRange as o, dateToX as s, daysBetween as c, flattenTree as l, formatDate as u, generateDateRange as d, generateHeaderGroups as f, getISOWeekNumber as p, getISOWeekYear as m, isNonWorkingDay as h, isWeekend as g, parseDate as _, startOfDay as v, xToDate as y } from "./components/pro/Gantt/utils.js";
2
+ import { useGanttState as b } from "./components/pro/Gantt/hooks/useGanttState.js";
3
+ import { useGanttDrag as x } from "./components/pro/Gantt/hooks/useGanttDrag.js";
4
+ import S from "./components/pro/Gantt/Gantt.js";
5
+ export { e as DEFAULT_CATEGORY_CONFIG, t as DEFAULT_SCALE_CONFIGS, n as DEFAULT_TIME_WINDOW, S as Gantt, r as addDays, i as addWorkingDays, a as calculateWorkingDays, o as computeDateRange, s as dateToX, c as daysBetween, l as flattenTree, u as formatDate, d as generateDateRange, f as generateHeaderGroups, p as getISOWeekNumber, m as getISOWeekYear, h as isNonWorkingDay, g as isWeekend, _ as parseDate, v as startOfDay, x as useGanttDrag, b as useGanttState, y as xToDate };
@@ -2,7 +2,7 @@
2
2
  * 复制到剪贴板的 Hook,带有自动重置的反馈状态
3
3
  *
4
4
  * @param resetDelay - 复制成功后 `copied` 状态重置的延迟(毫秒),默认 2000
5
- * @returns `{ copied, copy }` — `copied` 为当前复制反馈状态,`copy` 为触发复制的函数
5
+ * @returns `{ copied, error, copy }` — 复制反馈、失败原因及触发函数;重复复制会重置反馈计时
6
6
  *
7
7
  * @example
8
8
  * ```tsx
@@ -14,5 +14,6 @@
14
14
  */
15
15
  export declare function useCopyToClipboard(resetDelay?: number): {
16
16
  copied: boolean;
17
+ error: Error | null;
17
18
  copy: (text: string) => Promise<void>;
18
19
  };
@@ -1,19 +1,27 @@
1
- import { useCallback as e, useState as t } from "react";
1
+ import { useCallback as e, useEffect as t, useRef as n, useState as r } from "react";
2
2
  //#region src/hooks/useCopyToClipboard.ts
3
- function n(n = 2e3) {
4
- let [r, i] = t(!1);
5
- return {
6
- copied: r,
3
+ function i(i = 2e3) {
4
+ let [a, o] = r(!1), [s, c] = r(null), l = n(void 0), u = n(0);
5
+ return t(() => () => {
6
+ clearTimeout(l.current), u.current += 1;
7
+ }, []), {
8
+ copied: a,
9
+ error: s,
7
10
  copy: e(async (e) => {
11
+ let t = ++u.current;
12
+ clearTimeout(l.current), o(!1), c(null);
8
13
  try {
9
- await navigator.clipboard.writeText(e), i(!0), setTimeout(() => i(!1), n);
14
+ if (typeof navigator > "u" || !navigator.clipboard?.writeText) throw Error("Clipboard access requires a supported browser and a secure context.");
15
+ if (await navigator.clipboard.writeText(e), t !== u.current) return;
16
+ o(!0), l.current = setTimeout(() => o(!1), i);
10
17
  } catch (e) {
11
- console.error("Failed to copy to clipboard:", e);
18
+ if (t !== u.current) return;
19
+ c(e instanceof Error ? e : Error(String(e)));
12
20
  }
13
- }, [n])
21
+ }, [i])
14
22
  };
15
23
  }
16
24
  //#endregion
17
- export { n as useCopyToClipboard };
25
+ export { i as useCopyToClipboard };
18
26
 
19
27
  //# sourceMappingURL=useCopyToClipboard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCopyToClipboard.js","names":[],"sources":["../../src/hooks/useCopyToClipboard.ts"],"sourcesContent":["import { useState, useCallback } from 'react';\n\n/**\n * 复制到剪贴板的 Hook,带有自动重置的反馈状态\n *\n * @param resetDelay - 复制成功后 `copied` 状态重置的延迟(毫秒),默认 2000\n * @returns `{ copied, copy }` — `copied` 为当前复制反馈状态,`copy` 为触发复制的函数\n *\n * @example\n * ```tsx\n * const { copied, copy } = useCopyToClipboard();\n * <button onClick={() => copy(text)}>\n * {copied ? '已复制' : '复制'}\n * </button>\n * ```\n */\nexport function useCopyToClipboard(resetDelay: number = 2000) {\n const [copied, setCopied] = useState(false);\n\n const copy = useCallback(\n async (text: string) => {\n try {\n await navigator.clipboard.writeText(text);\n setCopied(true);\n setTimeout(() => setCopied(false), resetDelay);\n } catch (err) {\n console.error('Failed to copy to clipboard:', err);\n }\n },\n [resetDelay]\n );\n\n return { copied, copy };\n}\n"],"mappings":";;AAgBA,SAAgB,EAAmB,IAAqB,KAAM;CAC1D,IAAM,CAAC,GAAQ,KAAa,EAAS,EAAK;CAe1C,OAAO;EAAE;EAAQ,MAbJ,EACT,OAAO,MAAiB;GACpB,IAAI;IAGA,AAFA,MAAM,UAAU,UAAU,UAAU,CAAI,GACxC,EAAU,EAAI,GACd,iBAAiB,EAAU,EAAK,GAAG,CAAU;GACjD,SAAS,GAAK;IACV,QAAQ,MAAM,gCAAgC,CAAG;GACrD;EACJ,GACA,CAAC,CAAU,CAGE;CAAK;AAC1B"}
1
+ {"version":3,"file":"useCopyToClipboard.js","names":[],"sources":["../../src/hooks/useCopyToClipboard.ts"],"sourcesContent":["import { useState, useCallback, useEffect, useRef } from 'react';\n\n/**\n * 复制到剪贴板的 Hook,带有自动重置的反馈状态\n *\n * @param resetDelay - 复制成功后 `copied` 状态重置的延迟(毫秒),默认 2000\n * @returns `{ copied, error, copy }` — 复制反馈、失败原因及触发函数;重复复制会重置反馈计时\n *\n * @example\n * ```tsx\n * const { copied, copy } = useCopyToClipboard();\n * <button onClick={() => copy(text)}>\n * {copied ? '已复制' : '复制'}\n * </button>\n * ```\n */\nexport function useCopyToClipboard(resetDelay: number = 2000) {\n const [copied, setCopied] = useState(false);\n const [error, setError] = useState<Error | null>(null);\n const timer = useRef<ReturnType<typeof setTimeout> | undefined>(undefined);\n const request = useRef(0);\n\n useEffect(() => () => {\n clearTimeout(timer.current);\n request.current += 1;\n }, []);\n\n const copy = useCallback(\n async (text: string) => {\n const currentRequest = ++request.current;\n clearTimeout(timer.current);\n setCopied(false);\n setError(null);\n try {\n if (typeof navigator === 'undefined' || !navigator.clipboard?.writeText) {\n throw new Error('Clipboard access requires a supported browser and a secure context.');\n }\n await navigator.clipboard.writeText(text);\n if (currentRequest !== request.current) return;\n setCopied(true);\n timer.current = setTimeout(() => setCopied(false), resetDelay);\n } catch (err) {\n if (currentRequest !== request.current) return;\n setError(err instanceof Error ? err : new Error(String(err)));\n }\n },\n [resetDelay]\n );\n\n return { copied, error, copy };\n}\n"],"mappings":";;AAgBA,SAAgB,EAAmB,IAAqB,KAAM;CAC1D,IAAM,CAAC,GAAQ,KAAa,EAAS,EAAK,GACpC,CAAC,GAAO,KAAY,EAAuB,IAAI,GAC/C,IAAQ,EAAkD,KAAA,CAAS,GACnE,IAAU,EAAO,CAAC;CA6BxB,OA3BA,cAAsB;EAElB,AADA,aAAa,EAAM,OAAO,GAC1B,EAAQ,WAAW;CACvB,GAAG,CAAC,CAAC,GAwBE;EAAE;EAAQ;EAAO,MAtBX,EACT,OAAO,MAAiB;GACpB,IAAM,IAAiB,EAAE,EAAQ;GAGjC,AAFA,aAAa,EAAM,OAAO,GAC1B,EAAU,EAAK,GACf,EAAS,IAAI;GACb,IAAI;IACA,IAAI,OAAO,YAAc,OAAe,CAAC,UAAU,WAAW,WAC1D,MAAU,MAAM,qEAAqE;IAGzF,IADA,MAAM,UAAU,UAAU,UAAU,CAAI,GACpC,MAAmB,EAAQ,SAAS;IAExC,AADA,EAAU,EAAI,GACd,EAAM,UAAU,iBAAiB,EAAU,EAAK,GAAG,CAAU;GACjE,SAAS,GAAK;IACV,IAAI,MAAmB,EAAQ,SAAS;IACxC,EAAS,aAAe,QAAQ,IAAU,MAAM,OAAO,CAAG,CAAC,CAAC;GAChE;EACJ,GACA,CAAC,CAAU,CAGS;CAAK;AACjC"}
package/dist/index.d.ts CHANGED
@@ -101,3 +101,7 @@ export { RichTextEditor, AIRewrite, MarkdownBlockExtension, CodeBlockExtension,
101
101
  export type { RichTextEditorProps, AIConfig, AIAction, ToolbarSection as RichTextToolbarSection, RichTextEditorLabels, } from './components/pro/RichTextEditor';
102
102
  export { Flow, useFlowContext, FlowProvider, useFlowUI, FlowUIProvider, useNodeMutations, useEdgeMutations, useLineMutations, useSelection as useFlowSelection, useClipboard as useFlowClipboard, useLayoutActions, useFlowImportExport, exportCanvasToPNG, downloadDataURL, FlowToolbar, ShapePalette as FlowShapePalette, InspectorPanel as FlowInspectorPanel, OutlinePanel as FlowOutlinePanel, ContextMenu as FlowContextMenu, FLOW_NODE_TYPES, PALETTE_ITEMS, EDGE_TYPE_OPTIONS, EDGE_MARKER_OPTIONS, EDGE_LINE_STYLE_OPTIONS, BORDER_STYLE_OPTIONS, DASH_DENSITY_OPTIONS, GRADIENT_DIRECTION_OPTIONS, DEFAULT_NODE_DATA, DEFAULT_EDGE_DATA, createEmptyDocument, ROOT_CANVAS_ID, } from './components/pro/Flow';
103
103
  export type { FlowProps, FlowDocument, FlowCanvasData, FlowNode, FlowNodeData, FlowEdge, FlowEdgeData, FlowLine, FlowLineType, FlowShapeType, FlowEdgeTypeName, FlowEdgeMarkerKind, FlowEdgeLineStyle, FlowEdgeDashDensity, FlowBezierControl, FlowBorderStyle, FlowToolMode, ViewportState, SelectionState as FlowSelectionState, FlowNodeAttribute, GradientDirection, FlowGroupLabelPlacement, FlowGroupLabelAlign, FlowIconLabelPlacement, FlowMediaKind, FlowModelFormat, FlowDataConfig, FlowDataColumn, FlowDataColumnType, FlowDataView, FlowDataChartType, FlowDataChartConfig, FlowDataPivotConfig, FlowDataPivotPanelPlacement, FlowDataAggFn, ContextMenuItem as FlowContextMenuItem, ContextMenuProps as FlowContextMenuProps, FlowToolbarProps, FlowHandle, } from './components/pro/Flow';
104
+ export { Gantt, useGanttState, useGanttDrag, DEFAULT_SCALE_CONFIGS, DEFAULT_CATEGORY_CONFIG, DEFAULT_TIME_WINDOW, parseDate as parseGanttDate, formatDate as formatGanttDate, isWeekend as isGanttWeekend, isNonWorkingDay as isGanttNonWorkingDay, calculateWorkingDays, addWorkingDays, daysBetween, addDays as addGanttDays, startOfDay as startOfGanttDay, computeDateRange, generateDateRange, generateHeaderGroups, flattenTree as flattenGanttTree, xToDate as ganttXToDate, dateToX as ganttDateToX, getISOWeekNumber, getISOWeekYear, } from './components/pro/Gantt';
105
+ export type { GanttProps, GanttHandle, GanttNode, GanttNodeId, GanttColumn, GanttLabels, GanttScaleLevel, GanttScaleConfig, GanttCategoryConfig, GanttBarRenderProps, GanttBarChangeEvent, GanttContextMenuEvent, GanttTodayMarker, GanttTooltipConfig, GanttGridConfig, GanttDependencyLink, DependencyLineStyle, HolidayCalendar, HolidayEntry, TimeWindow, FlatGanttNode, TimelineHeaderGroup, } from './components/pro/Gantt';
106
+ export { Calendar, useCalendarState, useCalendarDrag, LABELS_EN as CALENDAR_LABELS_EN, LABELS_ZH as CALENDAR_LABELS_ZH, DEFAULT_COLOR_OPTIONS as CALENDAR_DEFAULT_COLOR_OPTIONS, parseDate as parseCalendarDate, formatDate as formatCalendarDate, todayStr as calendarTodayStr, isToday as isCalendarToday, isSameDay as isCalendarSameDay, isWeekend as isCalendarWeekend, isHoliday as isCalendarHoliday, isNonWorkingDay as isCalendarNonWorkingDay, getHolidayEntry as getCalendarHolidayEntry, getDaysInMonth as getCalendarDaysInMonth, getFirstDayOfMonth as getCalendarFirstDayOfMonth, getMonthDates as getCalendarMonthDates, getWeekDates as getCalendarWeekDates, minutesToTime as calendarMinutesToTime, timeToMinutes as calendarTimeToMinutes, formatTime as formatCalendarTime, parseTime as parseCalendarTime, generateTimeSlots as generateCalendarTimeSlots, TIME_SLOTS as CALENDAR_TIME_SLOTS, SLOT_HEIGHT as CALENDAR_SLOT_HEIGHT, TIME_GRID_HEIGHT as CALENDAR_TIME_GRID_HEIGHT, addDays as addCalendarDays, generateId as generateCalendarId, clamp as calendarClamp, } from './components/pro/Calendar';
107
+ export type { CalendarProps, CalendarHandle, CalendarEntry, CalendarViewMode, CalendarLabels, CalendarDragEvent, HolidayCalendar as CalendarHolidayCalendar, HolidayEntry as CalendarHolidayEntry, UseCalendarStateOptions, EntryModalState, CalendarDragState, CalendarDropTarget, UseCalendarDragOptions, } from './components/pro/Calendar';
package/dist/index.js CHANGED
@@ -106,4 +106,12 @@ import { useNodeMutations as Xt } from "./components/pro/Flow/hooks/useNodeMutat
106
106
  import { useEdgeMutations as Zt } from "./components/pro/Flow/hooks/useEdgeMutations.js";
107
107
  import { useLineMutations as Qt } from "./components/pro/Flow/hooks/useLineMutations.js";
108
108
  import { useSelection as $t } from "./components/pro/Flow/hooks/useSelection.js";
109
- export { yt as AIRewrite, y as Accordion, ee as AppLayoutWrapper, te as AppProvider, ne as AppShell, Oe as ArticleContextMenu, De as ArticleControl, v as Avatar, Ct as BORDER_STYLE_OPTIONS, n as Badge, dt as Breadcrumb, t as Button, u as Card, Te as Chart, a as Checkbox, R as ChoicePicker, xt as CodeBlockExtension, Je as CodeEditor, j as Column, C as Container, ht as CreateDialog, wt as DASH_DENSITY_OPTIONS, Tt as DEFAULT_EDGE_DATA, Et as DEFAULT_NODE_DATA, pe as DataTable, I as DateTimeInput, Ee as Demo, Z as DesktopSidebarToggleButton, c as Divider, at as DropZone, Dt as EDGE_LINE_STYLE_OPTIONS, Ot as EDGE_MARKER_OPTIONS, kt as EDGE_TYPE_OPTIONS, _ as EmptyState, Wt as FLOW_NODE_TYPES, gt as FileExplorer, ft as FileExplorerToolbar, ut as FileIcon, lt as FileUploader, w as Flex, Yt as Flow, qt as FlowContextMenu, Gt as FlowInspectorPanel, Kt as FlowOutlinePanel, Pt as FlowProvider, Ut as FlowShapePalette, Ht as FlowToolbar, It as FlowUIProvider, Xe as FootnotePanel, At as GRADIENT_DIRECTION_OPTIONS, T as Grid, E as GridItem, mt as GridView, D as Group, G as Headbar, J as HeadbarLangSwitcher, q as HeadbarSearch, X as HeadbarThemeSwitcher, K as HeadbarTitle, P as Icon, N as Image, r as Input, i as Label, S as Layout, k as List, pt as ListView, et as MainLayout, ke as Markdown, bt as MarkdownBlockExtension, Ze as MarkdownEditor, Q as MobileSidebarToggleButton, b as Modal, L as MultipleChoice, tt as Navbar, Qe as OutlinePanel, jt as PALETTE_ITEMS, f as Page, p as PageBody, d as PageHeader, m as PageLeft, h as PageMain, g as PageRight, ue as PivotPanel, le as PivotView, nt as ProtectedRoute, Mt as ROOT_CANVAS_ID, St as RichTextEditor, vt as RichTextToolbar, A as Row, l as Select, W as Sidebar, $ as SidebarToggleButtons, F as Slider, O as Space, o as Switch, z as Table, Ye as TableOfContentsPanel, x as Tabs, M as Text, s as Tooltip, U as Tree, st as UploadFileItem, ct as UploadQueue, $e as VariablePanel, ze as bracketMatchingStyle, rt as buildRouter, e as cn, Ge as collectVariables, ce as computePivot, me as createActionColumn, he as createColumn, ge as createComputedColumn, Nt as createEmptyDocument, it as createRouterFromConfig, _e as createSelectOptions, ve as createSelectionColumn, We as createThemeExtension, ye as dateSort, qe as defaultContextMenu, be as defaultFilterFunctions, se as defineExtension, Rt as downloadDataURL, zt as exportCanvasToPNG, xe as extractUniqueOptions, ot as formatFileSize, Ke as generateOutline, B as generateSidebarActiveStyles, V as generateTreeActiveStyles, Ae as getDefaultSnippets, Le as getJumpableKeywords, Re as getLanguageKeywords, Y as getThemes, je as javascriptSnippets, Ne as jsJumpableKeywords, Pe as jsKeywords, Be as jumpTargetHighlight, Ve as jumpToDefinition, He as lineHighlightStyle, Se as numericSort, Fe as pyJumpableKeywords, Ie as pyKeywords, Me as pythonSnippets, _t as richTextDefaultLabels, Ue as smartAutocompletion, Ce as stringSort, H as themeActiveStyles, we as treeSort, re as useAppContext, ie as useAuth, Zt as useEdgeMutations, Jt as useFlowClipboard, Ft as useFlowContext, Bt as useFlowImportExport, $t as useFlowSelection, Lt as useFlowUI, Vt as useLayoutActions, Qt as useLineMutations, Xt as useNodeMutations, de as usePivotExtension, fe as useRowDetailExtension, ae as useTableColumns, oe as useTableData };
109
+ import { DEFAULT_CATEGORY_CONFIG as en, DEFAULT_SCALE_CONFIGS as tn, DEFAULT_TIME_WINDOW as nn, addDays as rn, addWorkingDays as an, calculateWorkingDays as on, computeDateRange as sn, dateToX as cn, daysBetween as ln, flattenTree as un, formatDate as dn, generateDateRange as fn, generateHeaderGroups as pn, getISOWeekNumber as mn, getISOWeekYear as hn, isNonWorkingDay as gn, isWeekend as _n, parseDate as vn, startOfDay as yn, xToDate as bn } from "./components/pro/Gantt/utils.js";
110
+ import { useGanttState as xn } from "./components/pro/Gantt/hooks/useGanttState.js";
111
+ import { useGanttDrag as Sn } from "./components/pro/Gantt/hooks/useGanttDrag.js";
112
+ import Cn from "./components/pro/Gantt/Gantt.js";
113
+ import { DEFAULT_COLOR_OPTIONS as wn, LABELS_EN as Tn, LABELS_ZH as En, SLOT_HEIGHT as Dn, TIME_GRID_HEIGHT as On, TIME_SLOTS as kn, addDays as An, clamp as jn, formatDate as Mn, formatTime as Nn, generateId as Pn, generateTimeSlots as Fn, getDaysInMonth as In, getFirstDayOfMonth as Ln, getHolidayEntry as Rn, getMonthDates as zn, getWeekDates as Bn, isHoliday as Vn, isNonWorkingDay as Hn, isSameDay as Un, isToday as Wn, isWeekend as Gn, minutesToTime as Kn, parseDate as qn, parseTime as Jn, timeToMinutes as Yn, todayStr as Xn } from "./components/pro/Calendar/utils.js";
114
+ import { useCalendarState as Zn } from "./components/pro/Calendar/hooks/useCalendarState.js";
115
+ import { useCalendarDrag as Qn } from "./components/pro/Calendar/hooks/useCalendarDrag.js";
116
+ import $n from "./components/pro/Calendar/Calendar.js";
117
+ export { yt as AIRewrite, y as Accordion, ee as AppLayoutWrapper, te as AppProvider, ne as AppShell, Oe as ArticleContextMenu, De as ArticleControl, v as Avatar, Ct as BORDER_STYLE_OPTIONS, n as Badge, dt as Breadcrumb, t as Button, wn as CALENDAR_DEFAULT_COLOR_OPTIONS, Tn as CALENDAR_LABELS_EN, En as CALENDAR_LABELS_ZH, Dn as CALENDAR_SLOT_HEIGHT, On as CALENDAR_TIME_GRID_HEIGHT, kn as CALENDAR_TIME_SLOTS, $n as Calendar, u as Card, Te as Chart, a as Checkbox, R as ChoicePicker, xt as CodeBlockExtension, Je as CodeEditor, j as Column, C as Container, ht as CreateDialog, wt as DASH_DENSITY_OPTIONS, en as DEFAULT_CATEGORY_CONFIG, Tt as DEFAULT_EDGE_DATA, Et as DEFAULT_NODE_DATA, tn as DEFAULT_SCALE_CONFIGS, nn as DEFAULT_TIME_WINDOW, pe as DataTable, I as DateTimeInput, Ee as Demo, Z as DesktopSidebarToggleButton, c as Divider, at as DropZone, Dt as EDGE_LINE_STYLE_OPTIONS, Ot as EDGE_MARKER_OPTIONS, kt as EDGE_TYPE_OPTIONS, _ as EmptyState, Wt as FLOW_NODE_TYPES, gt as FileExplorer, ft as FileExplorerToolbar, ut as FileIcon, lt as FileUploader, w as Flex, Yt as Flow, qt as FlowContextMenu, Gt as FlowInspectorPanel, Kt as FlowOutlinePanel, Pt as FlowProvider, Ut as FlowShapePalette, Ht as FlowToolbar, It as FlowUIProvider, Xe as FootnotePanel, At as GRADIENT_DIRECTION_OPTIONS, Cn as Gantt, T as Grid, E as GridItem, mt as GridView, D as Group, G as Headbar, J as HeadbarLangSwitcher, q as HeadbarSearch, X as HeadbarThemeSwitcher, K as HeadbarTitle, P as Icon, N as Image, r as Input, i as Label, S as Layout, k as List, pt as ListView, et as MainLayout, ke as Markdown, bt as MarkdownBlockExtension, Ze as MarkdownEditor, Q as MobileSidebarToggleButton, b as Modal, L as MultipleChoice, tt as Navbar, Qe as OutlinePanel, jt as PALETTE_ITEMS, f as Page, p as PageBody, d as PageHeader, m as PageLeft, h as PageMain, g as PageRight, ue as PivotPanel, le as PivotView, nt as ProtectedRoute, Mt as ROOT_CANVAS_ID, St as RichTextEditor, vt as RichTextToolbar, A as Row, l as Select, W as Sidebar, $ as SidebarToggleButtons, F as Slider, O as Space, o as Switch, z as Table, Ye as TableOfContentsPanel, x as Tabs, M as Text, s as Tooltip, U as Tree, st as UploadFileItem, ct as UploadQueue, $e as VariablePanel, An as addCalendarDays, rn as addGanttDays, an as addWorkingDays, ze as bracketMatchingStyle, rt as buildRouter, on as calculateWorkingDays, jn as calendarClamp, Kn as calendarMinutesToTime, Yn as calendarTimeToMinutes, Xn as calendarTodayStr, e as cn, Ge as collectVariables, sn as computeDateRange, ce as computePivot, me as createActionColumn, he as createColumn, ge as createComputedColumn, Nt as createEmptyDocument, it as createRouterFromConfig, _e as createSelectOptions, ve as createSelectionColumn, We as createThemeExtension, ye as dateSort, ln as daysBetween, qe as defaultContextMenu, be as defaultFilterFunctions, se as defineExtension, Rt as downloadDataURL, zt as exportCanvasToPNG, xe as extractUniqueOptions, un as flattenGanttTree, Mn as formatCalendarDate, Nn as formatCalendarTime, ot as formatFileSize, dn as formatGanttDate, cn as ganttDateToX, bn as ganttXToDate, Pn as generateCalendarId, Fn as generateCalendarTimeSlots, fn as generateDateRange, pn as generateHeaderGroups, Ke as generateOutline, B as generateSidebarActiveStyles, V as generateTreeActiveStyles, In as getCalendarDaysInMonth, Ln as getCalendarFirstDayOfMonth, Rn as getCalendarHolidayEntry, zn as getCalendarMonthDates, Bn as getCalendarWeekDates, Ae as getDefaultSnippets, mn as getISOWeekNumber, hn as getISOWeekYear, Le as getJumpableKeywords, Re as getLanguageKeywords, Y as getThemes, Vn as isCalendarHoliday, Hn as isCalendarNonWorkingDay, Un as isCalendarSameDay, Wn as isCalendarToday, Gn as isCalendarWeekend, gn as isGanttNonWorkingDay, _n as isGanttWeekend, je as javascriptSnippets, Ne as jsJumpableKeywords, Pe as jsKeywords, Be as jumpTargetHighlight, Ve as jumpToDefinition, He as lineHighlightStyle, Se as numericSort, qn as parseCalendarDate, Jn as parseCalendarTime, vn as parseGanttDate, Fe as pyJumpableKeywords, Ie as pyKeywords, Me as pythonSnippets, _t as richTextDefaultLabels, Ue as smartAutocompletion, yn as startOfGanttDay, Ce as stringSort, H as themeActiveStyles, we as treeSort, re as useAppContext, ie as useAuth, Qn as useCalendarDrag, Zn as useCalendarState, Zt as useEdgeMutations, Jt as useFlowClipboard, Ft as useFlowContext, Bt as useFlowImportExport, $t as useFlowSelection, Lt as useFlowUI, Sn as useGanttDrag, xn as useGanttState, Vt as useLayoutActions, Qt as useLineMutations, Xt as useNodeMutations, de as usePivotExtension, fe as useRowDetailExtension, ae as useTableColumns, oe as useTableData };
@@ -344,6 +344,26 @@ var e = {
344
344
  id: "flow-mobile",
345
345
  label: "Flow 移动端示例",
346
346
  path: "/components/flow/mobile"
347
+ },
348
+ gantt: {
349
+ id: "gantt",
350
+ label: "甘特图 Gantt",
351
+ path: "/components/gantt"
352
+ },
353
+ ganttScenarios: {
354
+ id: "gantt-scenarios",
355
+ label: "Gantt 场景示例",
356
+ path: "/components/gantt/scenarios"
357
+ },
358
+ calendar: {
359
+ id: "calendar",
360
+ label: "日历 Calendar",
361
+ path: "/components/calendar"
362
+ },
363
+ calendarScenarios: {
364
+ id: "calendar-scenarios",
365
+ label: "Calendar 场景示例",
366
+ path: "/components/calendar/scenarios"
347
367
  }
348
368
  }
349
369
  }
@@ -693,6 +713,26 @@ var e = {
693
713
  id: "flow-mobile",
694
714
  label: "Flow Mobile Guide",
695
715
  path: "/components/flow/mobile"
716
+ },
717
+ gantt: {
718
+ id: "gantt",
719
+ label: "Gantt Chart",
720
+ path: "/components/gantt"
721
+ },
722
+ ganttScenarios: {
723
+ id: "gantt-scenarios",
724
+ label: "Gantt Scenarios",
725
+ path: "/components/gantt/scenarios"
726
+ },
727
+ calendar: {
728
+ id: "calendar",
729
+ label: "Calendar",
730
+ path: "/components/calendar"
731
+ },
732
+ calendarScenarios: {
733
+ id: "calendar-scenarios",
734
+ label: "Calendar Scenarios",
735
+ path: "/components/calendar/scenarios"
696
736
  }
697
737
  }
698
738
  }
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","names":[],"sources":["../../src/utils/i18n.tsx"],"sourcesContent":["// 导入类型\nimport { MenuItem } from '../types/menu';\n\n// 定义语言类型\nexport type Language = 'zh' | 'en';\n\n// 定义翻译类型\nexport type Translations = {\n navbar: {\n search: string;\n searchPlaceholder: string;\n searchShortcut: string;\n noResults: string;\n };\n sidebar: {\n menu: {\n home: MenuItem;\n components: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n layouts: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n advanced: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n charts: MenuItem;\n };\n };\n};\n\n// 中文翻译\nexport const zhTranslations: Translations = {\n navbar: {\n search: '搜索组件',\n searchPlaceholder: '搜索组件、文档、示例...',\n searchShortcut: 'Cmd+K',\n noResults: '没有找到匹配的结果',\n },\n sidebar: {\n menu: {\n home: {\n id: 'home',\n label: '主页',\n path: '/',\n },\n components: {\n id: 'components',\n label: '组件',\n children: {\n button: {\n id: 'button',\n label: '按钮 Button',\n path: '/components/button',\n },\n badge: {\n id: 'badge',\n label: '徽章 Badge',\n path: '/components/badge',\n },\n input: {\n id: 'input',\n label: '输入框 Input',\n path: '/components/input',\n },\n label: {\n id: 'label',\n label: '标签 Label',\n path: '/components/label',\n },\n checkbox: {\n id: 'checkbox',\n label: '复选框 Checkbox',\n path: '/components/checkbox',\n },\n select: {\n id: 'select',\n label: '选择器 Select',\n path: '/components/select',\n },\n card: {\n id: 'card',\n label: '卡片 Card',\n path: '/components/card',\n },\n avatar: {\n id: 'avatar',\n label: '头像 Avatar',\n path: '/components/avatar',\n },\n accordion: {\n id: 'accordion',\n label: '手风琴 Accordion',\n path: '/components/accordion',\n },\n emptystate: {\n id: 'emptystate',\n label: '空状态 EmptyState',\n path: '/components/emptystate',\n },\n modal: {\n id: 'modal',\n label: '模态框 Modal',\n path: '/components/modal',\n },\n tabs: {\n id: 'tabs',\n label: '标签页 Tabs',\n path: '/components/tabs',\n },\n list: {\n id: 'list',\n label: '列表 List',\n path: '/components/list',\n },\n table: {\n id: 'table',\n label: '表格 Table',\n path: '/components/table',\n },\n markdown: {\n id: 'markdown',\n label: '文档 Markdown',\n path: '/components/markdown',\n },\n tree: {\n id: 'tree',\n label: '树形控件 Tree',\n path: '/components/tree',\n },\n fileuploader: {\n id: 'fileuploader',\n label: '文件上传 FileUploader',\n path: '/components/fileuploader',\n },\n text: {\n id: 'text',\n label: '文本 Text',\n path: '/components/text',\n },\n image: {\n id: 'image',\n label: '图片 Image',\n path: '/components/image',\n },\n icon: {\n id: 'icon',\n label: '图标 Icon',\n path: '/components/icon',\n },\n slider: {\n id: 'slider',\n label: '滑块 Slider',\n path: '/components/slider',\n },\n datetimeinput: {\n id: 'datetimeinput',\n label: '日期时间 DateTimeInput',\n path: '/components/datetime-input',\n },\n multiplechoice: {\n id: 'multiplechoice',\n label: '多选组 MultipleChoice',\n path: '/components/multiple-choice',\n },\n choicepicker: {\n id: 'choicepicker',\n label: '单选组 ChoicePicker',\n path: '/components/choice-picker',\n },\n },\n },\n layouts: {\n id: 'layouts',\n label: '布局 Layout',\n children: {\n layout: { id: 'layout', label: '布局总览 Layout', path: '/layouts/layout' },\n container: { id: 'container', label: '容器 Container', path: '/layouts/container' },\n grid: { id: 'grid', label: '栅格 Grid', path: '/layouts/grid' },\n flex: { id: 'flex', label: '弹性布局 Flex', path: '/layouts/flex' },\n group: { id: 'group', label: '布局组 Group', path: '/layouts/group' },\n space: { id: 'space', label: '占位 Space', path: '/layouts/space' },\n page: { id: 'page', label: '页面布局 Page', path: '/layouts/page' },\n row: { id: 'row', label: '行布局 Row', path: '/layouts/row' },\n column: { id: 'column', label: '列布局 Column', path: '/layouts/column' },\n },\n },\n charts: {\n id: 'charts',\n label: '图表 Charts',\n path: '/components/chart',\n children: [\n { id: 'chart-line', label: '折线图 Line', path: '/components/chart/line' },\n { id: 'chart-area', label: '面积图 Area', path: '/components/chart/area' },\n { id: 'chart-bar', label: '柱状图 Bar', path: '/components/chart/bar' },\n { id: 'chart-pie', label: '饼图 Pie', path: '/components/chart/pie' },\n { id: 'chart-scatter', label: '散点图 Scatter', path: '/components/chart/scatter' },\n { id: 'chart-combo', label: '组合图 Combo', path: '/components/chart/complex/combo' },\n { id: 'chart-stacked', label: '堆叠面积图 Stacked Area', path: '/components/chart/complex/stacked' },\n { id: 'chart-heatmap', label: '热力图 Heatmap', path: '/components/chart/complex/heatmap' },\n { id: 'chart-regression', label: '回归分析 Regression', path: '/components/chart/complex/regression' },\n { id: 'chart-radar', label: '雷达图 Radar', path: '/components/chart/special/radar' },\n { id: 'chart-sankey', label: '桑基图 Sankey', path: '/components/chart/special/sankey' },\n { id: 'chart-network', label: '网络图 Network', path: '/components/chart/special/network' },\n { id: 'chart-calendar', label: '日历热力图 Calendar', path: '/components/chart/special/calendar' },\n { id: 'chart-stacked-pie', label: '堆叠饼图 Stacked Pie', path: '/components/chart/special/stacked-pie' },\n { id: 'chart-funnel', label: '销售漏斗图 Funnel', path: '/components/chart/special/funnel' },\n { id: 'chart-treemap', label: '矩形树图 Treemap', path: '/components/chart/special/treemap' },\n { id: 'chart-globe', label: '地球 Globe', path: '/components/chart/special/globe' },\n { id: 'chart-world-map', label: '世界地图 World Map', path: '/components/chart/special/world-map' },\n ],\n },\n advanced: {\n id: 'advanced-components',\n label: '高级组件',\n children: {\n datatable: {\n id: 'datatable',\n label: '数据表格 DataTable',\n path: '/components/datatable',\n },\n\n jukebox: {\n id: 'jukebox',\n label: '音乐播放器 Jukebox',\n path: '/components/jukebox',\n },\n articlecontrol: {\n id: 'articlecontrol',\n label: '文档悬浮控件 ArticleControl',\n path: '/components/articlecontrol',\n },\n codeeditor: {\n id: 'codeeditor',\n label: '代码编辑器 CodeEditor',\n path: '/components/codeeditor',\n },\n markdowneditor: {\n id: 'markdowneditor',\n label: 'Markdown编辑器 MarkdownEditor',\n path: '/components/markdowneditor',\n },\n sidebar: {\n id: 'sidebar-demo',\n label: '侧边栏 Sidebar',\n path: '/components/sidebar',\n },\n fileexplorer: {\n id: 'fileexplorer',\n label: '文件浏览器 FileExplorer',\n path: '/components/fileexplorer',\n },\n richtexteditor: {\n id: 'richtexteditor',\n label: '富文本编辑器 RichTextEditor',\n path: '/components/richtexteditor',\n },\n flow: {\n id: 'flow',\n label: '流程图编辑器 Flow',\n path: '/components/flow',\n },\n flowUsage: {\n id: 'flow-usage',\n label: 'Flow 使用示例',\n path: '/components/flow/usage',\n },\n flowMobile: {\n id: 'flow-mobile',\n label: 'Flow 移动端示例',\n path: '/components/flow/mobile',\n },\n },\n },\n },\n },\n};\n\n// 英文翻译\nexport const enTranslations: Translations = {\n navbar: {\n search: 'Search Components',\n searchPlaceholder: 'Search components, docs, examples...',\n searchShortcut: 'Cmd+K',\n noResults: 'No results found',\n },\n sidebar: {\n menu: {\n home: {\n id: 'home',\n label: 'Home',\n path: '/',\n },\n components: {\n id: 'components',\n label: 'Components',\n children: {\n button: {\n id: 'button',\n label: 'Button',\n path: '/components/button',\n },\n badge: {\n id: 'badge',\n label: 'Badge',\n path: '/components/badge',\n },\n input: {\n id: 'input',\n label: 'Input',\n path: '/components/input',\n },\n label: {\n id: 'label',\n label: 'Label',\n path: '/components/label',\n },\n checkbox: {\n id: 'checkbox',\n label: 'Checkbox',\n path: '/components/checkbox',\n },\n select: {\n id: 'select',\n label: 'Select',\n path: '/components/select',\n },\n card: {\n id: 'card',\n label: 'Card',\n path: '/components/card',\n },\n avatar: {\n id: 'avatar',\n label: 'Avatar',\n path: '/components/avatar',\n },\n accordion: {\n id: 'accordion',\n label: 'Accordion',\n path: '/components/accordion',\n },\n emptystate: {\n id: 'emptystate',\n label: 'EmptyState',\n path: '/components/emptystate',\n },\n modal: {\n id: 'modal',\n label: 'Modal',\n path: '/components/modal',\n },\n tabs: {\n id: 'tabs',\n label: 'Tabs',\n path: '/components/tabs',\n },\n list: {\n id: 'list',\n label: 'List',\n path: '/components/list',\n },\n table: {\n id: 'table',\n label: 'Table',\n path: '/components/table',\n },\n markdown: {\n id: 'markdown',\n label: 'Markdown',\n path: '/components/markdown',\n },\n tree: {\n id: 'tree',\n label: 'Tree',\n path: '/components/tree',\n },\n fileuploader: {\n id: 'fileuploader',\n label: 'FileUploader',\n path: '/components/fileuploader',\n },\n text: {\n id: 'text',\n label: 'Text',\n path: '/components/text',\n },\n image: {\n id: 'image',\n label: 'Image',\n path: '/components/image',\n },\n icon: {\n id: 'icon',\n label: 'Icon',\n path: '/components/icon',\n },\n slider: {\n id: 'slider',\n label: 'Slider',\n path: '/components/slider',\n },\n datetimeinput: {\n id: 'datetimeinput',\n label: 'DateTimeInput',\n path: '/components/datetime-input',\n },\n multiplechoice: {\n id: 'multiplechoice',\n label: 'MultipleChoice',\n path: '/components/multiple-choice',\n },\n choicepicker: {\n id: 'choicepicker',\n label: 'ChoicePicker',\n path: '/components/choice-picker',\n },\n },\n },\n layouts: {\n id: 'layouts',\n label: 'Layout',\n children: {\n layout: { id: 'layout', label: 'Layout Overview', path: '/layouts/layout' },\n container: { id: 'container', label: 'Container', path: '/layouts/container' },\n grid: { id: 'grid', label: 'Grid', path: '/layouts/grid' },\n flex: { id: 'flex', label: 'Flex', path: '/layouts/flex' },\n group: { id: 'group', label: 'Group', path: '/layouts/group' },\n space: { id: 'space', label: 'Space', path: '/layouts/space' },\n page: { id: 'page', label: 'Page Layout', path: '/layouts/page' },\n row: { id: 'row', label: 'Row', path: '/layouts/row' },\n column: { id: 'column', label: 'Column', path: '/layouts/column' },\n },\n },\n charts: {\n id: 'charts',\n label: 'Charts',\n path: '/components/chart',\n children: [\n { id: 'chart-line', label: 'Line Chart', path: '/components/chart/line' },\n { id: 'chart-area', label: 'Area Chart', path: '/components/chart/area' },\n { id: 'chart-bar', label: 'Bar Chart', path: '/components/chart/bar' },\n { id: 'chart-pie', label: 'Pie Chart', path: '/components/chart/pie' },\n { id: 'chart-scatter', label: 'Scatter Chart', path: '/components/chart/scatter' },\n { id: 'chart-combo', label: 'Combo Chart', path: '/components/chart/complex/combo' },\n { id: 'chart-stacked', label: 'Stacked Area', path: '/components/chart/complex/stacked' },\n { id: 'chart-heatmap', label: 'Heatmap', path: '/components/chart/complex/heatmap' },\n { id: 'chart-regression', label: 'Regression Analysis', path: '/components/chart/complex/regression' },\n { id: 'chart-radar', label: 'Radar Chart', path: '/components/chart/special/radar' },\n { id: 'chart-sankey', label: 'Sankey Diagram', path: '/components/chart/special/sankey' },\n { id: 'chart-network', label: 'Network Graph', path: '/components/chart/special/network' },\n { id: 'chart-calendar', label: 'Calendar Heatmap', path: '/components/chart/special/calendar' },\n { id: 'chart-stacked-pie', label: 'Stacked Pie', path: '/components/chart/special/stacked-pie' },\n { id: 'chart-funnel', label: 'Sales Funnel', path: '/components/chart/special/funnel' },\n { id: 'chart-treemap', label: 'Treemap', path: '/components/chart/special/treemap' },\n { id: 'chart-globe', label: 'Globe', path: '/components/chart/special/globe' },\n { id: 'chart-world-map', label: 'World Map', path: '/components/chart/special/world-map' }\n ],\n },\n advanced: {\n id: 'advanced-components',\n label: 'Advanced Components',\n children: {\n datatable: {\n id: 'datatable',\n label: 'DataTable',\n path: '/components/datatable',\n },\n\n jukebox: {\n id: 'jukebox',\n label: 'Jukebox',\n path: '/components/jukebox',\n },\n articlecontrol: {\n id: 'articlecontrol',\n label: 'ArticleControl',\n path: '/components/articlecontrol',\n },\n codeeditor: {\n id: 'codeeditor',\n label: 'CodeEditor',\n path: '/components/codeeditor',\n },\n markdowneditor: {\n id: 'markdowneditor',\n label: 'MarkdownEditor',\n path: '/components/markdowneditor',\n },\n sidebar: {\n id: 'sidebar-demo',\n label: 'Sidebar',\n path: '/components/sidebar',\n },\n fileexplorer: {\n id: 'fileexplorer',\n label: 'FileExplorer',\n path: '/components/fileexplorer',\n },\n richtexteditor: {\n id: 'richtexteditor',\n label: 'RichTextEditor',\n path: '/components/richtexteditor',\n },\n flow: {\n id: 'flow',\n label: 'Flow Editor',\n path: '/components/flow',\n },\n flowUsage: {\n id: 'flow-usage',\n label: 'Flow Usage Guide',\n path: '/components/flow/usage',\n },\n flowMobile: {\n id: 'flow-mobile',\n label: 'Flow Mobile Guide',\n path: '/components/flow/mobile',\n },\n },\n },\n },\n },\n};\n\n// 根据语言获取翻译\nexport const getTranslations = (language: Language): Translations => {\n return language === 'zh' ? zhTranslations : enTranslations;\n};"],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","names":[],"sources":["../../src/utils/i18n.tsx"],"sourcesContent":["// 导入类型\nimport { MenuItem } from '../types/menu';\n\n// 定义语言类型\nexport type Language = 'zh' | 'en';\n\n// 定义翻译类型\nexport type Translations = {\n navbar: {\n search: string;\n searchPlaceholder: string;\n searchShortcut: string;\n noResults: string;\n };\n sidebar: {\n menu: {\n home: MenuItem;\n components: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n layouts: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n advanced: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n charts: MenuItem;\n };\n };\n};\n\n// 中文翻译\nexport const zhTranslations: Translations = {\n navbar: {\n search: '搜索组件',\n searchPlaceholder: '搜索组件、文档、示例...',\n searchShortcut: 'Cmd+K',\n noResults: '没有找到匹配的结果',\n },\n sidebar: {\n menu: {\n home: {\n id: 'home',\n label: '主页',\n path: '/',\n },\n components: {\n id: 'components',\n label: '组件',\n children: {\n button: {\n id: 'button',\n label: '按钮 Button',\n path: '/components/button',\n },\n badge: {\n id: 'badge',\n label: '徽章 Badge',\n path: '/components/badge',\n },\n input: {\n id: 'input',\n label: '输入框 Input',\n path: '/components/input',\n },\n label: {\n id: 'label',\n label: '标签 Label',\n path: '/components/label',\n },\n checkbox: {\n id: 'checkbox',\n label: '复选框 Checkbox',\n path: '/components/checkbox',\n },\n select: {\n id: 'select',\n label: '选择器 Select',\n path: '/components/select',\n },\n card: {\n id: 'card',\n label: '卡片 Card',\n path: '/components/card',\n },\n avatar: {\n id: 'avatar',\n label: '头像 Avatar',\n path: '/components/avatar',\n },\n accordion: {\n id: 'accordion',\n label: '手风琴 Accordion',\n path: '/components/accordion',\n },\n emptystate: {\n id: 'emptystate',\n label: '空状态 EmptyState',\n path: '/components/emptystate',\n },\n modal: {\n id: 'modal',\n label: '模态框 Modal',\n path: '/components/modal',\n },\n tabs: {\n id: 'tabs',\n label: '标签页 Tabs',\n path: '/components/tabs',\n },\n list: {\n id: 'list',\n label: '列表 List',\n path: '/components/list',\n },\n table: {\n id: 'table',\n label: '表格 Table',\n path: '/components/table',\n },\n markdown: {\n id: 'markdown',\n label: '文档 Markdown',\n path: '/components/markdown',\n },\n tree: {\n id: 'tree',\n label: '树形控件 Tree',\n path: '/components/tree',\n },\n fileuploader: {\n id: 'fileuploader',\n label: '文件上传 FileUploader',\n path: '/components/fileuploader',\n },\n text: {\n id: 'text',\n label: '文本 Text',\n path: '/components/text',\n },\n image: {\n id: 'image',\n label: '图片 Image',\n path: '/components/image',\n },\n icon: {\n id: 'icon',\n label: '图标 Icon',\n path: '/components/icon',\n },\n slider: {\n id: 'slider',\n label: '滑块 Slider',\n path: '/components/slider',\n },\n datetimeinput: {\n id: 'datetimeinput',\n label: '日期时间 DateTimeInput',\n path: '/components/datetime-input',\n },\n multiplechoice: {\n id: 'multiplechoice',\n label: '多选组 MultipleChoice',\n path: '/components/multiple-choice',\n },\n choicepicker: {\n id: 'choicepicker',\n label: '单选组 ChoicePicker',\n path: '/components/choice-picker',\n },\n },\n },\n layouts: {\n id: 'layouts',\n label: '布局 Layout',\n children: {\n layout: { id: 'layout', label: '布局总览 Layout', path: '/layouts/layout' },\n container: { id: 'container', label: '容器 Container', path: '/layouts/container' },\n grid: { id: 'grid', label: '栅格 Grid', path: '/layouts/grid' },\n flex: { id: 'flex', label: '弹性布局 Flex', path: '/layouts/flex' },\n group: { id: 'group', label: '布局组 Group', path: '/layouts/group' },\n space: { id: 'space', label: '占位 Space', path: '/layouts/space' },\n page: { id: 'page', label: '页面布局 Page', path: '/layouts/page' },\n row: { id: 'row', label: '行布局 Row', path: '/layouts/row' },\n column: { id: 'column', label: '列布局 Column', path: '/layouts/column' },\n },\n },\n charts: {\n id: 'charts',\n label: '图表 Charts',\n path: '/components/chart',\n children: [\n { id: 'chart-line', label: '折线图 Line', path: '/components/chart/line' },\n { id: 'chart-area', label: '面积图 Area', path: '/components/chart/area' },\n { id: 'chart-bar', label: '柱状图 Bar', path: '/components/chart/bar' },\n { id: 'chart-pie', label: '饼图 Pie', path: '/components/chart/pie' },\n { id: 'chart-scatter', label: '散点图 Scatter', path: '/components/chart/scatter' },\n { id: 'chart-combo', label: '组合图 Combo', path: '/components/chart/complex/combo' },\n { id: 'chart-stacked', label: '堆叠面积图 Stacked Area', path: '/components/chart/complex/stacked' },\n { id: 'chart-heatmap', label: '热力图 Heatmap', path: '/components/chart/complex/heatmap' },\n { id: 'chart-regression', label: '回归分析 Regression', path: '/components/chart/complex/regression' },\n { id: 'chart-radar', label: '雷达图 Radar', path: '/components/chart/special/radar' },\n { id: 'chart-sankey', label: '桑基图 Sankey', path: '/components/chart/special/sankey' },\n { id: 'chart-network', label: '网络图 Network', path: '/components/chart/special/network' },\n { id: 'chart-calendar', label: '日历热力图 Calendar', path: '/components/chart/special/calendar' },\n { id: 'chart-stacked-pie', label: '堆叠饼图 Stacked Pie', path: '/components/chart/special/stacked-pie' },\n { id: 'chart-funnel', label: '销售漏斗图 Funnel', path: '/components/chart/special/funnel' },\n { id: 'chart-treemap', label: '矩形树图 Treemap', path: '/components/chart/special/treemap' },\n { id: 'chart-globe', label: '地球 Globe', path: '/components/chart/special/globe' },\n { id: 'chart-world-map', label: '世界地图 World Map', path: '/components/chart/special/world-map' },\n ],\n },\n advanced: {\n id: 'advanced-components',\n label: '高级组件',\n children: {\n datatable: {\n id: 'datatable',\n label: '数据表格 DataTable',\n path: '/components/datatable',\n },\n\n jukebox: {\n id: 'jukebox',\n label: '音乐播放器 Jukebox',\n path: '/components/jukebox',\n },\n articlecontrol: {\n id: 'articlecontrol',\n label: '文档悬浮控件 ArticleControl',\n path: '/components/articlecontrol',\n },\n codeeditor: {\n id: 'codeeditor',\n label: '代码编辑器 CodeEditor',\n path: '/components/codeeditor',\n },\n markdowneditor: {\n id: 'markdowneditor',\n label: 'Markdown编辑器 MarkdownEditor',\n path: '/components/markdowneditor',\n },\n sidebar: {\n id: 'sidebar-demo',\n label: '侧边栏 Sidebar',\n path: '/components/sidebar',\n },\n fileexplorer: {\n id: 'fileexplorer',\n label: '文件浏览器 FileExplorer',\n path: '/components/fileexplorer',\n },\n richtexteditor: {\n id: 'richtexteditor',\n label: '富文本编辑器 RichTextEditor',\n path: '/components/richtexteditor',\n },\n flow: {\n id: 'flow',\n label: '流程图编辑器 Flow',\n path: '/components/flow',\n },\n flowUsage: {\n id: 'flow-usage',\n label: 'Flow 使用示例',\n path: '/components/flow/usage',\n },\n flowMobile: {\n id: 'flow-mobile',\n label: 'Flow 移动端示例',\n path: '/components/flow/mobile',\n },\n gantt: {\n id: 'gantt',\n label: '甘特图 Gantt',\n path: '/components/gantt',\n },\n ganttScenarios: {\n id: 'gantt-scenarios',\n label: 'Gantt 场景示例',\n path: '/components/gantt/scenarios',\n },\n calendar: {\n id: 'calendar',\n label: '日历 Calendar',\n path: '/components/calendar',\n },\n calendarScenarios: {\n id: 'calendar-scenarios',\n label: 'Calendar 场景示例',\n path: '/components/calendar/scenarios',\n },\n },\n },\n },\n },\n};\n\n// 英文翻译\nexport const enTranslations: Translations = {\n navbar: {\n search: 'Search Components',\n searchPlaceholder: 'Search components, docs, examples...',\n searchShortcut: 'Cmd+K',\n noResults: 'No results found',\n },\n sidebar: {\n menu: {\n home: {\n id: 'home',\n label: 'Home',\n path: '/',\n },\n components: {\n id: 'components',\n label: 'Components',\n children: {\n button: {\n id: 'button',\n label: 'Button',\n path: '/components/button',\n },\n badge: {\n id: 'badge',\n label: 'Badge',\n path: '/components/badge',\n },\n input: {\n id: 'input',\n label: 'Input',\n path: '/components/input',\n },\n label: {\n id: 'label',\n label: 'Label',\n path: '/components/label',\n },\n checkbox: {\n id: 'checkbox',\n label: 'Checkbox',\n path: '/components/checkbox',\n },\n select: {\n id: 'select',\n label: 'Select',\n path: '/components/select',\n },\n card: {\n id: 'card',\n label: 'Card',\n path: '/components/card',\n },\n avatar: {\n id: 'avatar',\n label: 'Avatar',\n path: '/components/avatar',\n },\n accordion: {\n id: 'accordion',\n label: 'Accordion',\n path: '/components/accordion',\n },\n emptystate: {\n id: 'emptystate',\n label: 'EmptyState',\n path: '/components/emptystate',\n },\n modal: {\n id: 'modal',\n label: 'Modal',\n path: '/components/modal',\n },\n tabs: {\n id: 'tabs',\n label: 'Tabs',\n path: '/components/tabs',\n },\n list: {\n id: 'list',\n label: 'List',\n path: '/components/list',\n },\n table: {\n id: 'table',\n label: 'Table',\n path: '/components/table',\n },\n markdown: {\n id: 'markdown',\n label: 'Markdown',\n path: '/components/markdown',\n },\n tree: {\n id: 'tree',\n label: 'Tree',\n path: '/components/tree',\n },\n fileuploader: {\n id: 'fileuploader',\n label: 'FileUploader',\n path: '/components/fileuploader',\n },\n text: {\n id: 'text',\n label: 'Text',\n path: '/components/text',\n },\n image: {\n id: 'image',\n label: 'Image',\n path: '/components/image',\n },\n icon: {\n id: 'icon',\n label: 'Icon',\n path: '/components/icon',\n },\n slider: {\n id: 'slider',\n label: 'Slider',\n path: '/components/slider',\n },\n datetimeinput: {\n id: 'datetimeinput',\n label: 'DateTimeInput',\n path: '/components/datetime-input',\n },\n multiplechoice: {\n id: 'multiplechoice',\n label: 'MultipleChoice',\n path: '/components/multiple-choice',\n },\n choicepicker: {\n id: 'choicepicker',\n label: 'ChoicePicker',\n path: '/components/choice-picker',\n },\n },\n },\n layouts: {\n id: 'layouts',\n label: 'Layout',\n children: {\n layout: { id: 'layout', label: 'Layout Overview', path: '/layouts/layout' },\n container: { id: 'container', label: 'Container', path: '/layouts/container' },\n grid: { id: 'grid', label: 'Grid', path: '/layouts/grid' },\n flex: { id: 'flex', label: 'Flex', path: '/layouts/flex' },\n group: { id: 'group', label: 'Group', path: '/layouts/group' },\n space: { id: 'space', label: 'Space', path: '/layouts/space' },\n page: { id: 'page', label: 'Page Layout', path: '/layouts/page' },\n row: { id: 'row', label: 'Row', path: '/layouts/row' },\n column: { id: 'column', label: 'Column', path: '/layouts/column' },\n },\n },\n charts: {\n id: 'charts',\n label: 'Charts',\n path: '/components/chart',\n children: [\n { id: 'chart-line', label: 'Line Chart', path: '/components/chart/line' },\n { id: 'chart-area', label: 'Area Chart', path: '/components/chart/area' },\n { id: 'chart-bar', label: 'Bar Chart', path: '/components/chart/bar' },\n { id: 'chart-pie', label: 'Pie Chart', path: '/components/chart/pie' },\n { id: 'chart-scatter', label: 'Scatter Chart', path: '/components/chart/scatter' },\n { id: 'chart-combo', label: 'Combo Chart', path: '/components/chart/complex/combo' },\n { id: 'chart-stacked', label: 'Stacked Area', path: '/components/chart/complex/stacked' },\n { id: 'chart-heatmap', label: 'Heatmap', path: '/components/chart/complex/heatmap' },\n { id: 'chart-regression', label: 'Regression Analysis', path: '/components/chart/complex/regression' },\n { id: 'chart-radar', label: 'Radar Chart', path: '/components/chart/special/radar' },\n { id: 'chart-sankey', label: 'Sankey Diagram', path: '/components/chart/special/sankey' },\n { id: 'chart-network', label: 'Network Graph', path: '/components/chart/special/network' },\n { id: 'chart-calendar', label: 'Calendar Heatmap', path: '/components/chart/special/calendar' },\n { id: 'chart-stacked-pie', label: 'Stacked Pie', path: '/components/chart/special/stacked-pie' },\n { id: 'chart-funnel', label: 'Sales Funnel', path: '/components/chart/special/funnel' },\n { id: 'chart-treemap', label: 'Treemap', path: '/components/chart/special/treemap' },\n { id: 'chart-globe', label: 'Globe', path: '/components/chart/special/globe' },\n { id: 'chart-world-map', label: 'World Map', path: '/components/chart/special/world-map' }\n ],\n },\n advanced: {\n id: 'advanced-components',\n label: 'Advanced Components',\n children: {\n datatable: {\n id: 'datatable',\n label: 'DataTable',\n path: '/components/datatable',\n },\n\n jukebox: {\n id: 'jukebox',\n label: 'Jukebox',\n path: '/components/jukebox',\n },\n articlecontrol: {\n id: 'articlecontrol',\n label: 'ArticleControl',\n path: '/components/articlecontrol',\n },\n codeeditor: {\n id: 'codeeditor',\n label: 'CodeEditor',\n path: '/components/codeeditor',\n },\n markdowneditor: {\n id: 'markdowneditor',\n label: 'MarkdownEditor',\n path: '/components/markdowneditor',\n },\n sidebar: {\n id: 'sidebar-demo',\n label: 'Sidebar',\n path: '/components/sidebar',\n },\n fileexplorer: {\n id: 'fileexplorer',\n label: 'FileExplorer',\n path: '/components/fileexplorer',\n },\n richtexteditor: {\n id: 'richtexteditor',\n label: 'RichTextEditor',\n path: '/components/richtexteditor',\n },\n flow: {\n id: 'flow',\n label: 'Flow Editor',\n path: '/components/flow',\n },\n flowUsage: {\n id: 'flow-usage',\n label: 'Flow Usage Guide',\n path: '/components/flow/usage',\n },\n flowMobile: {\n id: 'flow-mobile',\n label: 'Flow Mobile Guide',\n path: '/components/flow/mobile',\n },\n gantt: {\n id: 'gantt',\n label: 'Gantt Chart',\n path: '/components/gantt',\n },\n ganttScenarios: {\n id: 'gantt-scenarios',\n label: 'Gantt Scenarios',\n path: '/components/gantt/scenarios',\n },\n calendar: {\n id: 'calendar',\n label: 'Calendar',\n path: '/components/calendar',\n },\n calendarScenarios: {\n id: 'calendar-scenarios',\n label: 'Calendar Scenarios',\n path: '/components/calendar/scenarios',\n },\n },\n },\n },\n },\n};\n\n// 根据语言获取翻译\nexport const getTranslations = (language: Language): Translations => {\n return language === 'zh' ? zhTranslations : enTranslations;\n};"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dishui",
3
- "version": "0.0.67",
3
+ "version": "0.0.68",
4
4
  "description": "New Components UI Framework with AI Powered",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -23,6 +23,14 @@
23
23
  "types": "./dist/components/pro/Flow/index.d.ts",
24
24
  "import": "./dist/flow.js"
25
25
  },
26
+ "./gantt": {
27
+ "types": "./dist/components/pro/Gantt/index.d.ts",
28
+ "import": "./dist/gantt.js"
29
+ },
30
+ "./calendar": {
31
+ "types": "./dist/components/pro/Calendar/index.d.ts",
32
+ "import": "./dist/calendar.js"
33
+ },
26
34
  "./code-editor": {
27
35
  "types": "./dist/components/pro/CodeEditor/index.d.ts",
28
36
  "import": "./dist/code-editor.js"
@@ -52,6 +60,9 @@
52
60
  "build:demo": "vite build --config vite.config.demo.ts",
53
61
  "build:types": "tsc --emitDeclarationOnly -p tsconfig.json && node scripts/strip-dts-css-imports.mjs",
54
62
  "typecheck": "tsc --noEmit -p tsconfig.demo.json",
63
+ "docs:generate": "node scripts/check-docs.mjs --write",
64
+ "docs:check": "node scripts/check-docs.mjs",
65
+ "test:docs": "node --test scripts/check-docs.test.mjs",
55
66
  "lint": "oxlint --config .oxlintrc.json src",
56
67
  "lint:fix": "oxlint --config .oxlintrc.json --fix src",
57
68
  "prepublishOnly": "npm run build",
@@ -1,3 +0,0 @@
1
- import React from 'react';
2
- declare const GanttPage: React.FC;
3
- export default GanttPage;
@@ -1,3 +0,0 @@
1
- import React from "react";
2
- declare const GanttPageEn: React.FC;
3
- export default GanttPageEn;
@@ -1,3 +0,0 @@
1
- import React from "react";
2
- declare const GanttPageZh: React.FC;
3
- export default GanttPageZh;