@expcat/tigercat-core 1.2.23 → 1.2.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +54 -48
- package/dist/index.d.cts +24 -19
- package/dist/index.d.ts +24 -19
- package/dist/index.js +54 -48
- package/dist/{table-export-6ISYSoVB.d.cts → table-export-C-BAknOZ.d.ts} +23 -0
- package/dist/{table-export-6ISYSoVB.d.ts → table-export-D7_CDqY7.d.cts} +23 -0
- package/dist/utils/table-export.d.cts +3 -1
- package/dist/utils/table-export.d.ts +3 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -2973,21 +2973,25 @@ var ZH_CN_FORM_WIZARD_LABELS = {
|
|
|
2973
2973
|
finishText: "\u5B8C\u6210"
|
|
2974
2974
|
};
|
|
2975
2975
|
function getFormWizardLabels(locale) {
|
|
2976
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
2977
|
+
const defaultLabels = isZh ? ZH_CN_FORM_WIZARD_LABELS : DEFAULT_FORM_WIZARD_LABELS;
|
|
2976
2978
|
return {
|
|
2977
|
-
prevText: locale?.formWizard?.prevText ??
|
|
2978
|
-
nextText: locale?.formWizard?.nextText ??
|
|
2979
|
-
finishText: locale?.formWizard?.finishText ??
|
|
2979
|
+
prevText: locale?.formWizard?.prevText ?? defaultLabels.prevText,
|
|
2980
|
+
nextText: locale?.formWizard?.nextText ?? defaultLabels.nextText,
|
|
2981
|
+
finishText: locale?.formWizard?.finishText ?? defaultLabels.finishText
|
|
2980
2982
|
};
|
|
2981
2983
|
}
|
|
2982
2984
|
function getPaginationLabels(locale) {
|
|
2985
|
+
const isZh = !!locale?.locale?.startsWith("zh") || locale?.formWizard?.prevText === "\u4E0A\u4E00\u6B65" || locale?.upload?.clickToUploadText === "\u70B9\u51FB\u4E0A\u4F20";
|
|
2986
|
+
const defaultLabels = isZh ? ZH_CN_PAGINATION_LABELS : DEFAULT_PAGINATION_LABELS;
|
|
2983
2987
|
return {
|
|
2984
|
-
totalText: locale?.pagination?.totalText ??
|
|
2985
|
-
itemsPerPageText: locale?.pagination?.itemsPerPageText ??
|
|
2986
|
-
jumpToText: locale?.pagination?.jumpToText ??
|
|
2987
|
-
pageText: locale?.pagination?.pageText ??
|
|
2988
|
-
prevPageAriaLabel: locale?.pagination?.prevPageAriaLabel ??
|
|
2989
|
-
nextPageAriaLabel: locale?.pagination?.nextPageAriaLabel ??
|
|
2990
|
-
pageAriaLabel: locale?.pagination?.pageAriaLabel ??
|
|
2988
|
+
totalText: locale?.pagination?.totalText ?? defaultLabels.totalText,
|
|
2989
|
+
itemsPerPageText: locale?.pagination?.itemsPerPageText ?? defaultLabels.itemsPerPageText,
|
|
2990
|
+
jumpToText: locale?.pagination?.jumpToText ?? defaultLabels.jumpToText,
|
|
2991
|
+
pageText: locale?.pagination?.pageText ?? defaultLabels.pageText,
|
|
2992
|
+
prevPageAriaLabel: locale?.pagination?.prevPageAriaLabel ?? defaultLabels.prevPageAriaLabel,
|
|
2993
|
+
nextPageAriaLabel: locale?.pagination?.nextPageAriaLabel ?? defaultLabels.nextPageAriaLabel,
|
|
2994
|
+
pageAriaLabel: locale?.pagination?.pageAriaLabel ?? defaultLabels.pageAriaLabel
|
|
2991
2995
|
};
|
|
2992
2996
|
}
|
|
2993
2997
|
function formatPaginationTotal(template, total, range, locale) {
|
|
@@ -3012,12 +3016,14 @@ var ZH_CN_TASK_BOARD_LABELS = {
|
|
|
3012
3016
|
boardAriaLabel: "\u4EFB\u52A1\u770B\u677F"
|
|
3013
3017
|
};
|
|
3014
3018
|
function getTaskBoardLabels(locale) {
|
|
3019
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
3020
|
+
const defaultLabels = isZh ? ZH_CN_TASK_BOARD_LABELS : DEFAULT_TASK_BOARD_LABELS;
|
|
3015
3021
|
return {
|
|
3016
|
-
emptyColumnText: locale?.taskBoard?.emptyColumnText ??
|
|
3017
|
-
addCardText: locale?.taskBoard?.addCardText ??
|
|
3018
|
-
wipLimitText: locale?.taskBoard?.wipLimitText ??
|
|
3019
|
-
dragHintText: locale?.taskBoard?.dragHintText ??
|
|
3020
|
-
boardAriaLabel: locale?.taskBoard?.boardAriaLabel ??
|
|
3022
|
+
emptyColumnText: locale?.taskBoard?.emptyColumnText ?? defaultLabels.emptyColumnText,
|
|
3023
|
+
addCardText: locale?.taskBoard?.addCardText ?? defaultLabels.addCardText,
|
|
3024
|
+
wipLimitText: locale?.taskBoard?.wipLimitText ?? defaultLabels.wipLimitText,
|
|
3025
|
+
dragHintText: locale?.taskBoard?.dragHintText ?? defaultLabels.dragHintText,
|
|
3026
|
+
boardAriaLabel: locale?.taskBoard?.boardAriaLabel ?? defaultLabels.boardAriaLabel
|
|
3021
3027
|
};
|
|
3022
3028
|
}
|
|
3023
3029
|
|
|
@@ -7196,7 +7202,7 @@ function getStepsContainerClasses(direction) {
|
|
|
7196
7202
|
return `${baseClasses2} flex flex-row items-start`;
|
|
7197
7203
|
}
|
|
7198
7204
|
function getStepItemClasses(direction, isLast) {
|
|
7199
|
-
const baseClasses2 = "tiger-step-item relative";
|
|
7205
|
+
const baseClasses2 = "tiger-step-item relative group";
|
|
7200
7206
|
if (direction === "vertical") {
|
|
7201
7207
|
return `${baseClasses2} flex flex-row ${!isLast ? "pb-6" : ""}`;
|
|
7202
7208
|
}
|
|
@@ -7206,12 +7212,12 @@ function getStepIconClasses(status, size, simple, isCustomIcon) {
|
|
|
7206
7212
|
const baseClasses2 = "tiger-step-icon relative z-10 flex items-center justify-center rounded-full border-2";
|
|
7207
7213
|
const sizeClasses3 = simple ? "w-6 h-6 text-xs" : size === "small" ? "w-8 h-8 text-sm" : "w-10 h-10 text-base";
|
|
7208
7214
|
const iconClasses = isCustomIcon ? "" : "font-medium";
|
|
7209
|
-
const activeClasses = "bg-[var(--tiger-primary,#2563eb)] border-[var(--tiger-primary,#2563eb)] text-white";
|
|
7215
|
+
const activeClasses = "bg-[var(--tiger-primary,#2563eb)] border-[var(--tiger-primary,#2563eb)] text-white ring-4 ring-[var(--tiger-primary,#2563eb)]/15 scale-105 shadow-sm transition-all duration-300";
|
|
7210
7216
|
const statusClasses = {
|
|
7211
|
-
wait: "bg-[var(--tiger-surface-muted,#f3f4f6)] border-[var(--tiger-border,#e5e7eb)] text-[var(--tiger-text-muted,#6b7280)]",
|
|
7217
|
+
wait: "bg-[var(--tiger-surface-muted,#f3f4f6)] border-[var(--tiger-border,#e5e7eb)] text-[var(--tiger-text-muted,#6b7280)] transition-all duration-300 group-hover:border-[var(--tiger-primary,#2563eb)]/60 group-hover:text-[var(--tiger-primary,#2563eb)]/80",
|
|
7212
7218
|
process: activeClasses,
|
|
7213
|
-
finish:
|
|
7214
|
-
error: "bg-[var(--tiger-error-bg,#fef2f2)] border-[var(--tiger-error,#ef4444)] text-[var(--tiger-error,#ef4444)]"
|
|
7219
|
+
finish: "bg-[var(--tiger-primary,#2563eb)] border-[var(--tiger-primary,#2563eb)] text-white shadow-sm transition-all duration-300 group-hover:scale-105 group-hover:bg-[var(--tiger-primary-hover,#0369a1)]",
|
|
7220
|
+
error: "bg-[var(--tiger-error-bg,#fef2f2)] border-[var(--tiger-error,#ef4444)] text-[var(--tiger-error,#ef4444)] transition-all duration-300"
|
|
7215
7221
|
};
|
|
7216
7222
|
return `${baseClasses2} ${sizeClasses3} ${iconClasses} ${statusClasses[status]}`;
|
|
7217
7223
|
}
|
|
@@ -7236,9 +7242,9 @@ function getStepTitleClasses(status, size, clickable) {
|
|
|
7236
7242
|
const baseClasses2 = "tiger-step-title font-medium";
|
|
7237
7243
|
const sizeClasses3 = size === "small" ? "text-sm" : "text-base";
|
|
7238
7244
|
const statusClasses = {
|
|
7239
|
-
wait: "text-[var(--tiger-text-muted,#6b7280)]",
|
|
7240
|
-
process: "text-[var(--tiger-text,#111827)]",
|
|
7241
|
-
finish: "text-[var(--tiger-text,#111827)]",
|
|
7245
|
+
wait: "text-[var(--tiger-text-muted,#6b7280)] transition-colors duration-300 group-hover:text-[var(--tiger-text,#111827)]",
|
|
7246
|
+
process: "text-[var(--tiger-text,#111827)] font-semibold transition-colors duration-300",
|
|
7247
|
+
finish: "text-[var(--tiger-text,#111827)] transition-colors duration-300 group-hover:text-[var(--tiger-primary,#2563eb)]",
|
|
7242
7248
|
error: "text-[var(--tiger-error,#ef4444)]"
|
|
7243
7249
|
};
|
|
7244
7250
|
const cursorClasses = clickable ? "bg-transparent border-0 p-0 cursor-pointer hover:text-[var(--tiger-primary,#2563eb)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--tiger-primary,#2563eb)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--tiger-surface,#ffffff)]" : "";
|
|
@@ -8782,29 +8788,29 @@ var imagePreviewToolbarBtnClasses = "flex items-center justify-center w-8 h-8 ro
|
|
|
8782
8788
|
var imagePreviewNavBtnClasses = "absolute top-1/2 -translate-y-1/2 flex items-center justify-center w-10 h-10 rounded-full bg-[var(--tiger-image-toolbar-bg,rgba(0,0,0,0.6))] text-white hover:bg-white/20 transition-colors focus:outline-none focus:ring-2 focus:ring-white/50 disabled:opacity-40 disabled:cursor-not-allowed";
|
|
8783
8789
|
var imagePreviewCloseBtnClasses = "absolute top-4 right-4 flex items-center justify-center w-10 h-10 rounded-full bg-[var(--tiger-image-toolbar-bg,rgba(0,0,0,0.6))] text-white hover:bg-white/20 transition-colors focus:outline-none focus:ring-2 focus:ring-white/50";
|
|
8784
8790
|
var imagePreviewCounterClasses = "text-sm text-white/80 mx-2 tabular-nums";
|
|
8785
|
-
var imageCropperContainerClasses = "relative overflow-hidden bg-[var(--tiger-image-cropper-bg,#
|
|
8791
|
+
var imageCropperContainerClasses = "relative overflow-hidden bg-[var(--tiger-image-cropper-bg,#0f172a)] rounded-[var(--tiger-radius-lg,0.75rem)] select-none touch-none shadow-inner border border-white/10 tiger-image-cropper-checkerboard";
|
|
8786
8792
|
var imageCropperImgClasses = "absolute top-0 left-0 max-w-none pointer-events-none";
|
|
8787
8793
|
var imageCropperMaskClasses = "absolute inset-0 pointer-events-none";
|
|
8788
|
-
var imageCropperSelectionClasses = "absolute border-2 border-[var(--tiger-image-cropper-border,#ffffff)] pointer-events-none";
|
|
8789
|
-
var imageCropperGuideClasses = "absolute border-[var(--tiger-image-cropper-border,rgba(255,255,255,0.
|
|
8794
|
+
var imageCropperSelectionClasses = "absolute border-2 border-[var(--tiger-image-cropper-border,#ffffff)] pointer-events-none shadow-[0_0_0_9999px_rgba(0,0,0,0.65),0_0_15px_rgba(255,255,255,0.4)] transition-shadow duration-300";
|
|
8795
|
+
var imageCropperGuideClasses = "absolute border-[var(--tiger-image-cropper-border,rgba(255,255,255,0.25))] pointer-events-none opacity-40 transition-opacity duration-300";
|
|
8790
8796
|
var imageCropperDragAreaClasses = "absolute cursor-move";
|
|
8791
8797
|
function getCropperHandleClasses(handle) {
|
|
8792
|
-
const base = "absolute w-3 h-3 bg-[var(--tiger-
|
|
8798
|
+
const base = "absolute w-3.5 h-3.5 rounded-full bg-white border-2 border-[var(--tiger-primary,#2563eb)] shadow-md hover:scale-125 hover:bg-[var(--tiger-primary,#2563eb)] hover:border-white transition-all duration-200 cursor-pointer focus:outline-none focus:ring-2 focus:ring-[var(--tiger-primary,#2563eb)]";
|
|
8793
8799
|
const positionMap = {
|
|
8794
|
-
nw: "-top-1.
|
|
8795
|
-
n: "-top-1.
|
|
8796
|
-
ne: "-top-1.
|
|
8797
|
-
e: "top-1/2 -right-1.
|
|
8798
|
-
se: "-bottom-1.
|
|
8799
|
-
s: "-bottom-1.
|
|
8800
|
-
sw: "-bottom-1.
|
|
8801
|
-
w: "top-1/2 -left-1.
|
|
8800
|
+
nw: "-top-1.75 -left-1.75 cursor-nw-resize",
|
|
8801
|
+
n: "-top-1.75 left-1/2 -translate-x-1/2 cursor-n-resize",
|
|
8802
|
+
ne: "-top-1.75 -right-1.75 cursor-ne-resize",
|
|
8803
|
+
e: "top-1/2 -right-1.75 -translate-y-1/2 cursor-e-resize",
|
|
8804
|
+
se: "-bottom-1.75 -right-1.75 cursor-se-resize",
|
|
8805
|
+
s: "-bottom-1.75 left-1/2 -translate-x-1/2 cursor-s-resize",
|
|
8806
|
+
sw: "-bottom-1.75 -left-1.75 cursor-sw-resize",
|
|
8807
|
+
w: "top-1/2 -left-1.75 -translate-y-1/2 cursor-w-resize"
|
|
8802
8808
|
};
|
|
8803
8809
|
return classNames(base, positionMap[handle]);
|
|
8804
8810
|
}
|
|
8805
8811
|
var CROP_HANDLES = ["nw", "n", "ne", "e", "se", "s", "sw", "w"];
|
|
8806
|
-
var cropUploadTriggerClasses = "inline-flex items-center justify-center gap-2 px-
|
|
8807
|
-
var cropUploadTriggerDisabledClasses = "inline-flex items-center justify-center gap-2 px-
|
|
8812
|
+
var cropUploadTriggerClasses = "inline-flex items-center justify-center gap-2.5 px-5 py-2.5 border-2 border-dashed border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-lg,0.75rem)] text-[var(--tiger-text-secondary,#4b5563)] bg-[var(--tiger-surface-muted,#f9fafb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:scale-[1.02] active:scale-[0.98] hover:shadow-md transition-all duration-300 ease-out cursor-pointer focus:outline-none focus:ring-2 focus:ring-[var(--tiger-primary,#2563eb)] focus:ring-offset-2 dark:bg-neutral-900 dark:hover:bg-neutral-800";
|
|
8813
|
+
var cropUploadTriggerDisabledClasses = "inline-flex items-center justify-center gap-2.5 px-5 py-2.5 border-2 border-dashed border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-lg,0.75rem)] text-[var(--tiger-text-disabled,#9ca3af)] bg-[var(--tiger-surface-muted,#f9fafb)] cursor-not-allowed opacity-60 dark:bg-neutral-900/50";
|
|
8808
8814
|
var uploadPlusIconPath = "M12 4v16m8-8H4";
|
|
8809
8815
|
function clampScale(scale, min, max) {
|
|
8810
8816
|
return Math.min(Math.max(scale, min), max);
|
|
@@ -11866,18 +11872,18 @@ function createCountdownPayload(remaining, format = COUNTDOWN_DEFAULT_FORMAT) {
|
|
|
11866
11872
|
}
|
|
11867
11873
|
|
|
11868
11874
|
// src/utils/task-board-utils.ts
|
|
11869
|
-
var taskBoardBaseClasses = "tiger-task-board flex gap-
|
|
11870
|
-
var taskBoardColumnClasses = "tiger-task-board-column flex flex-col shrink-0 w-
|
|
11871
|
-
var taskBoardColumnHeaderClasses = "flex items-center justify-between px-
|
|
11872
|
-
var taskBoardColumnBodyClasses = "flex-1 overflow-y-auto p-
|
|
11873
|
-
var taskBoardCardClasses = "tiger-task-board-card rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface,#ffffff)] p-
|
|
11874
|
-
var taskBoardCardDraggingClasses = "opacity-
|
|
11875
|
-
var taskBoardDropIndicatorClasses = "h-1 rounded-full bg-[var(--tiger-primary,#2563eb)] my-
|
|
11876
|
-
var taskBoardColumnDropTargetClasses = "ring-2 ring-[var(--tiger-primary,#2563eb)]
|
|
11875
|
+
var taskBoardBaseClasses = "tiger-task-board flex gap-5 overflow-x-auto p-6 min-h-[450px] scroll-smooth antialiased";
|
|
11876
|
+
var taskBoardColumnClasses = "tiger-task-board-column flex flex-col shrink-0 w-76 rounded-[var(--tiger-radius-lg,0.75rem)] border border-[var(--tiger-border,#e5e7eb)]/80 bg-[var(--tiger-surface-muted,#f9fafb)] shadow-xs transition-all duration-300 hover:shadow-md";
|
|
11877
|
+
var taskBoardColumnHeaderClasses = "flex items-center justify-between px-4 py-3.5 border-b border-[var(--tiger-border,#e5e7eb)]/60 text-sm font-semibold text-[var(--tiger-text,#1f2937)] select-none transition-colors";
|
|
11878
|
+
var taskBoardColumnBodyClasses = "flex-1 overflow-y-auto p-3 space-y-3 min-h-[100px] transition-colors";
|
|
11879
|
+
var taskBoardCardClasses = "tiger-task-board-card rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)]/80 bg-[var(--tiger-surface,#ffffff)] p-4 shadow-[0_1px_3px_rgba(0,0,0,0.04),_0_1px_2px_rgba(0,0,0,0.02)] cursor-grab select-none transition-all duration-200 hover:-translate-y-0.5 hover:shadow-md hover:border-[var(--tiger-primary,#2563eb)]/30 active:cursor-grabbing";
|
|
11880
|
+
var taskBoardCardDraggingClasses = "opacity-40 shadow-xl scale-[0.98] rotate-1";
|
|
11881
|
+
var taskBoardDropIndicatorClasses = "h-1.5 rounded-full bg-[var(--tiger-primary,#2563eb)] my-2 shadow-[0_0_8px_var(--tiger-primary,#2563eb)] transition-all duration-200";
|
|
11882
|
+
var taskBoardColumnDropTargetClasses = "ring-2 ring-[var(--tiger-primary,#2563eb)]/60 bg-[color-mix(in_srgb,var(--tiger-primary,#2563eb)_4%,transparent)]";
|
|
11877
11883
|
var taskBoardColumnDraggingClasses = "opacity-50";
|
|
11878
11884
|
var taskBoardEmptyClasses = "flex items-center justify-center text-[var(--tiger-text-muted,#6b7280)] text-sm py-8";
|
|
11879
11885
|
var taskBoardWipExceededClasses = "text-[var(--tiger-error,#ef4444)]";
|
|
11880
|
-
var taskBoardAddCardClasses = "flex items-center justify-center gap-1 w-
|
|
11886
|
+
var taskBoardAddCardClasses = "flex items-center justify-center gap-1.5 w-[calc(100%-16px)] mx-2 my-2 py-2.5 text-xs font-semibold text-[var(--tiger-text-muted,#6b7280)] border border-dashed border-[var(--tiger-border,#e5e7eb)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-xs rounded-[var(--tiger-radius-md,0.5rem)] transition-all duration-200 cursor-pointer active:scale-98";
|
|
11881
11887
|
var MIME = "text/plain";
|
|
11882
11888
|
function createCardDragData(cardId, columnId, index) {
|
|
11883
11889
|
const data = { type: "card", cardId, columnId, index };
|
|
@@ -15584,13 +15590,13 @@ function createBuiltinRichTextEngine() {
|
|
|
15584
15590
|
var builtinRichTextEngine = createBuiltinRichTextEngine();
|
|
15585
15591
|
|
|
15586
15592
|
// src/utils/kanban-utils.ts
|
|
15587
|
-
var kanbanCardCountClasses = "inline-flex items-center justify-center h-5 min-w-[
|
|
15593
|
+
var kanbanCardCountClasses = "inline-flex items-center justify-center h-5 min-w-[22px] px-2 rounded-full text-xs font-semibold bg-[var(--tiger-border,#e5e7eb)]/60 text-[var(--tiger-text-secondary,#6b7280)]/90 backdrop-blur-xs shadow-inner";
|
|
15588
15594
|
var kanbanSwimlaneClasses = "border-b border-[var(--tiger-border,#e5e7eb)] last:border-b-0";
|
|
15589
15595
|
var kanbanSwimlaneHeaderClasses = "flex items-center gap-2 px-4 py-2 text-sm font-medium text-[var(--tiger-text,#1f2937)] cursor-pointer select-none hover:bg-[var(--tiger-bg-hover,#f9fafb)]";
|
|
15590
15596
|
var kanbanSwimlaneDotClasses = "w-2.5 h-2.5 rounded-full shrink-0";
|
|
15591
15597
|
var kanbanSwimlaneCollapsedClasses = "hidden";
|
|
15592
15598
|
var kanbanFilterHighlightClasses = "bg-[var(--tiger-warning,#fbbf24)]/20";
|
|
15593
|
-
var kanbanAddColumnClasses = "flex items-center justify-center shrink-0 w-
|
|
15599
|
+
var kanbanAddColumnClasses = "flex items-center justify-center shrink-0 w-76 min-h-[120px] rounded-[var(--tiger-radius-lg,0.75rem)] border-2 border-dashed border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface-muted,#f9fafb)]/40 text-sm font-medium text-[var(--tiger-text-muted,#6b7280)] hover:border-[var(--tiger-primary,#2563eb)]/80 hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-sm cursor-pointer transition-all duration-300 active:scale-98";
|
|
15594
15600
|
var kanbanAddCardClasses = taskBoardAddCardClasses;
|
|
15595
15601
|
function filterCards(cards, filterText) {
|
|
15596
15602
|
if (!filterText.trim()) return cards;
|
package/dist/index.d.cts
CHANGED
|
@@ -6,8 +6,8 @@ import { a as TigerLocaleInput, b as TigerLocaleLazyModule, c as TigerLocaleLoad
|
|
|
6
6
|
export { h as TigerLocaleCommon, j as TigerLocaleDrawer, i as TigerLocaleModal, k as TigerLocaleUpload } from './locale-9-B-d0mp.cjs';
|
|
7
7
|
import { D as DatePickerLocalePreset, a as DatePickerLocaleInput, b as DatePickerLabels, c as DateFormat, d as DatePickerSize } from './datepicker-DXzS_8l8.cjs';
|
|
8
8
|
export { e as DatePickerInputDate, k as DatePickerLocaleConfig, h as DatePickerModelValue, l as DatePickerProps, g as DatePickerRangeModelValue, j as DatePickerRangeValue, m as DatePickerShortcut, f as DatePickerSingleModelValue, i as DatePickerSingleValue } from './datepicker-DXzS_8l8.cjs';
|
|
9
|
-
import { T as TableResponsiveMode, a as TableColumn, b as TableSize, C as ColumnAlign, S as SortDirection, F as FilterOption, c as TableProps, P as PaginationConfig, d as FilterRule, e as ColumnFilter, f as SortState } from './table-export-
|
|
10
|
-
export { E as ExpandableConfig, n as FilterType, R as RowSelectionConfig, m as TableExportFormat, i as downloadCsv, j as downloadExcel, l as downloadTableExport, k as exportTableData, g as exportTableToCsv, h as exportTableToExcel, t as tableExportButtonClasses } from './table-export-
|
|
9
|
+
import { T as TableResponsiveMode, a as TableColumn, b as TableSize, C as ColumnAlign, S as SortDirection, F as FilterOption, c as TableProps, P as PaginationConfig, d as FilterRule, e as ColumnFilter, f as SortState } from './table-export-D7_CDqY7.cjs';
|
|
10
|
+
export { E as ExpandableConfig, n as FilterType, R as RowSelectionConfig, m as TableExportFormat, i as downloadCsv, j as downloadExcel, l as downloadTableExport, k as exportTableData, g as exportTableToCsv, h as exportTableToExcel, t as tableExportButtonClasses } from './table-export-D7_CDqY7.cjs';
|
|
11
11
|
import { Middleware, MiddlewareData } from '@floating-ui/dom';
|
|
12
12
|
import { T as ThemePreset, C as ColorScheme } from './tailwind-entry-DUchHtjs.cjs';
|
|
13
13
|
export { a as ThemeColorScale, h as ThemeConfig, g as ThemeMotion, i as ThemePresetName, d as ThemeRadius, b as ThemeSemanticColors, e as ThemeShadows, f as ThemeSpacing, c as ThemeTypography, l as TigercatPluginOptions, m as createTigercatPlugin, j as tigercatDarkTheme, k as tigercatPlugin, t as tigercatTheme } from './tailwind-entry-DUchHtjs.cjs';
|
|
@@ -8344,7 +8344,7 @@ declare const imagePreviewCounterClasses = "text-sm text-white/80 mx-2 tabular-n
|
|
|
8344
8344
|
/**
|
|
8345
8345
|
* Cropper container classes
|
|
8346
8346
|
*/
|
|
8347
|
-
declare const imageCropperContainerClasses = "relative overflow-hidden bg-[var(--tiger-image-cropper-bg,#
|
|
8347
|
+
declare const imageCropperContainerClasses = "relative overflow-hidden bg-[var(--tiger-image-cropper-bg,#0f172a)] rounded-[var(--tiger-radius-lg,0.75rem)] select-none touch-none shadow-inner border border-white/10 tiger-image-cropper-checkerboard";
|
|
8348
8348
|
/**
|
|
8349
8349
|
* Cropper image classes (the source image)
|
|
8350
8350
|
*/
|
|
@@ -8356,11 +8356,11 @@ declare const imageCropperMaskClasses = "absolute inset-0 pointer-events-none";
|
|
|
8356
8356
|
/**
|
|
8357
8357
|
* Cropper selection border classes (the crop box border)
|
|
8358
8358
|
*/
|
|
8359
|
-
declare const imageCropperSelectionClasses = "absolute border-2 border-[var(--tiger-image-cropper-border,#ffffff)] pointer-events-none";
|
|
8359
|
+
declare const imageCropperSelectionClasses = "absolute border-2 border-[var(--tiger-image-cropper-border,#ffffff)] pointer-events-none shadow-[0_0_0_9999px_rgba(0,0,0,0.65),0_0_15px_rgba(255,255,255,0.4)] transition-shadow duration-300";
|
|
8360
8360
|
/**
|
|
8361
8361
|
* Cropper guide line classes
|
|
8362
8362
|
*/
|
|
8363
|
-
declare const imageCropperGuideClasses = "absolute border-[var(--tiger-image-cropper-border,rgba(255,255,255,0.
|
|
8363
|
+
declare const imageCropperGuideClasses = "absolute border-[var(--tiger-image-cropper-border,rgba(255,255,255,0.25))] pointer-events-none opacity-40 transition-opacity duration-300";
|
|
8364
8364
|
/**
|
|
8365
8365
|
* Cropper drag area classes (inside the crop box, handles moving)
|
|
8366
8366
|
*/
|
|
@@ -8376,11 +8376,11 @@ declare const CROP_HANDLES: CropHandle[];
|
|
|
8376
8376
|
/**
|
|
8377
8377
|
* CropUpload trigger button classes
|
|
8378
8378
|
*/
|
|
8379
|
-
declare const cropUploadTriggerClasses = "inline-flex items-center justify-center gap-2 px-
|
|
8379
|
+
declare const cropUploadTriggerClasses = "inline-flex items-center justify-center gap-2.5 px-5 py-2.5 border-2 border-dashed border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-lg,0.75rem)] text-[var(--tiger-text-secondary,#4b5563)] bg-[var(--tiger-surface-muted,#f9fafb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:scale-[1.02] active:scale-[0.98] hover:shadow-md transition-all duration-300 ease-out cursor-pointer focus:outline-none focus:ring-2 focus:ring-[var(--tiger-primary,#2563eb)] focus:ring-offset-2 dark:bg-neutral-900 dark:hover:bg-neutral-800";
|
|
8380
8380
|
/**
|
|
8381
8381
|
* CropUpload disabled trigger classes
|
|
8382
8382
|
*/
|
|
8383
|
-
declare const cropUploadTriggerDisabledClasses = "inline-flex items-center justify-center gap-2 px-
|
|
8383
|
+
declare const cropUploadTriggerDisabledClasses = "inline-flex items-center justify-center gap-2.5 px-5 py-2.5 border-2 border-dashed border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-lg,0.75rem)] text-[var(--tiger-text-disabled,#9ca3af)] bg-[var(--tiger-surface-muted,#f9fafb)] cursor-not-allowed opacity-60 dark:bg-neutral-900/50";
|
|
8384
8384
|
/**
|
|
8385
8385
|
* Upload icon path (plus sign in a frame)
|
|
8386
8386
|
*/
|
|
@@ -13101,6 +13101,11 @@ interface FormWizardProps {
|
|
|
13101
13101
|
* @default false
|
|
13102
13102
|
*/
|
|
13103
13103
|
simple?: boolean;
|
|
13104
|
+
/**
|
|
13105
|
+
* Whether to show border around the wizard card
|
|
13106
|
+
* @default true
|
|
13107
|
+
*/
|
|
13108
|
+
bordered?: boolean;
|
|
13104
13109
|
/**
|
|
13105
13110
|
* Whether to show steps header
|
|
13106
13111
|
* @default true
|
|
@@ -13423,21 +13428,21 @@ declare function formatCountdown(remaining: number, format?: string): string;
|
|
|
13423
13428
|
declare function createCountdownPayload(remaining: number, format?: string): CountdownChangePayload;
|
|
13424
13429
|
|
|
13425
13430
|
/** Root wrapper — horizontal scroll container */
|
|
13426
|
-
declare const taskBoardBaseClasses = "tiger-task-board flex gap-
|
|
13431
|
+
declare const taskBoardBaseClasses = "tiger-task-board flex gap-5 overflow-x-auto p-6 min-h-[450px] scroll-smooth antialiased";
|
|
13427
13432
|
/** Single column shell */
|
|
13428
|
-
declare const taskBoardColumnClasses = "tiger-task-board-column flex flex-col shrink-0 w-
|
|
13433
|
+
declare const taskBoardColumnClasses = "tiger-task-board-column flex flex-col shrink-0 w-76 rounded-[var(--tiger-radius-lg,0.75rem)] border border-[var(--tiger-border,#e5e7eb)]/80 bg-[var(--tiger-surface-muted,#f9fafb)] shadow-xs transition-all duration-300 hover:shadow-md";
|
|
13429
13434
|
/** Column header (sticky, never scrolls) */
|
|
13430
|
-
declare const taskBoardColumnHeaderClasses = "flex items-center justify-between px-
|
|
13435
|
+
declare const taskBoardColumnHeaderClasses = "flex items-center justify-between px-4 py-3.5 border-b border-[var(--tiger-border,#e5e7eb)]/60 text-sm font-semibold text-[var(--tiger-text,#1f2937)] select-none transition-colors";
|
|
13431
13436
|
/** Scrollable card area */
|
|
13432
|
-
declare const taskBoardColumnBodyClasses = "flex-1 overflow-y-auto p-
|
|
13437
|
+
declare const taskBoardColumnBodyClasses = "flex-1 overflow-y-auto p-3 space-y-3 min-h-[100px] transition-colors";
|
|
13433
13438
|
/** Card base styles */
|
|
13434
|
-
declare const taskBoardCardClasses = "tiger-task-board-card rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface,#ffffff)] p-
|
|
13439
|
+
declare const taskBoardCardClasses = "tiger-task-board-card rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)]/80 bg-[var(--tiger-surface,#ffffff)] p-4 shadow-[0_1px_3px_rgba(0,0,0,0.04),_0_1px_2px_rgba(0,0,0,0.02)] cursor-grab select-none transition-all duration-200 hover:-translate-y-0.5 hover:shadow-md hover:border-[var(--tiger-primary,#2563eb)]/30 active:cursor-grabbing";
|
|
13435
13440
|
/** Card while being dragged */
|
|
13436
|
-
declare const taskBoardCardDraggingClasses = "opacity-
|
|
13441
|
+
declare const taskBoardCardDraggingClasses = "opacity-40 shadow-xl scale-[0.98] rotate-1";
|
|
13437
13442
|
/** Thin line indicating the drop position */
|
|
13438
|
-
declare const taskBoardDropIndicatorClasses = "h-1 rounded-full bg-[var(--tiger-primary,#2563eb)] my-
|
|
13443
|
+
declare const taskBoardDropIndicatorClasses = "h-1.5 rounded-full bg-[var(--tiger-primary,#2563eb)] my-2 shadow-[0_0_8px_var(--tiger-primary,#2563eb)] transition-all duration-200";
|
|
13439
13444
|
/** Column highlighted when a card hovers over it */
|
|
13440
|
-
declare const taskBoardColumnDropTargetClasses = "ring-2 ring-[var(--tiger-primary,#2563eb)]
|
|
13445
|
+
declare const taskBoardColumnDropTargetClasses = "ring-2 ring-[var(--tiger-primary,#2563eb)]/60 bg-[color-mix(in_srgb,var(--tiger-primary,#2563eb)_4%,transparent)]";
|
|
13441
13446
|
/** Column being dragged */
|
|
13442
13447
|
declare const taskBoardColumnDraggingClasses = "opacity-50";
|
|
13443
13448
|
/** Empty column placeholder */
|
|
@@ -13445,7 +13450,7 @@ declare const taskBoardEmptyClasses = "flex items-center justify-center text-[va
|
|
|
13445
13450
|
/** WIP exceeded badge / header tint */
|
|
13446
13451
|
declare const taskBoardWipExceededClasses = "text-[var(--tiger-error,#ef4444)]";
|
|
13447
13452
|
/** Add-card button inside column footer */
|
|
13448
|
-
declare const taskBoardAddCardClasses = "flex items-center justify-center gap-1 w-
|
|
13453
|
+
declare const taskBoardAddCardClasses = "flex items-center justify-center gap-1.5 w-[calc(100%-16px)] mx-2 my-2 py-2.5 text-xs font-semibold text-[var(--tiger-text-muted,#6b7280)] border border-dashed border-[var(--tiger-border,#e5e7eb)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-xs rounded-[var(--tiger-radius-md,0.5rem)] transition-all duration-200 cursor-pointer active:scale-98";
|
|
13449
13454
|
interface CardDragData {
|
|
13450
13455
|
type: 'card';
|
|
13451
13456
|
cardId: string | number;
|
|
@@ -15991,7 +15996,7 @@ interface KanbanProps extends TaskBoardProps {
|
|
|
15991
15996
|
*/
|
|
15992
15997
|
|
|
15993
15998
|
/** Card count badge */
|
|
15994
|
-
declare const kanbanCardCountClasses = "inline-flex items-center justify-center h-5 min-w-[
|
|
15999
|
+
declare const kanbanCardCountClasses = "inline-flex items-center justify-center h-5 min-w-[22px] px-2 rounded-full text-xs font-semibold bg-[var(--tiger-border,#e5e7eb)]/60 text-[var(--tiger-text-secondary,#6b7280)]/90 backdrop-blur-xs shadow-inner";
|
|
15995
16000
|
/** Swimlane row wrapper */
|
|
15996
16001
|
declare const kanbanSwimlaneClasses = "border-b border-[var(--tiger-border,#e5e7eb)] last:border-b-0";
|
|
15997
16002
|
/** Swimlane header */
|
|
@@ -16003,9 +16008,9 @@ declare const kanbanSwimlaneCollapsedClasses = "hidden";
|
|
|
16003
16008
|
/** Filter match highlight on card */
|
|
16004
16009
|
declare const kanbanFilterHighlightClasses = "bg-[var(--tiger-warning,#fbbf24)]/20";
|
|
16005
16010
|
/** Add column button */
|
|
16006
|
-
declare const kanbanAddColumnClasses = "flex items-center justify-center shrink-0 w-
|
|
16011
|
+
declare const kanbanAddColumnClasses = "flex items-center justify-center shrink-0 w-76 min-h-[120px] rounded-[var(--tiger-radius-lg,0.75rem)] border-2 border-dashed border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface-muted,#f9fafb)]/40 text-sm font-medium text-[var(--tiger-text-muted,#6b7280)] hover:border-[var(--tiger-primary,#2563eb)]/80 hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-sm cursor-pointer transition-all duration-300 active:scale-98";
|
|
16007
16012
|
/** @deprecated Use `taskBoardAddCardClasses` instead */
|
|
16008
|
-
declare const kanbanAddCardClasses = "flex items-center justify-center gap-1 w-
|
|
16013
|
+
declare const kanbanAddCardClasses = "flex items-center justify-center gap-1.5 w-[calc(100%-16px)] mx-2 my-2 py-2.5 text-xs font-semibold text-[var(--tiger-text-muted,#6b7280)] border border-dashed border-[var(--tiger-border,#e5e7eb)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-xs rounded-[var(--tiger-radius-md,0.5rem)] transition-all duration-200 cursor-pointer active:scale-98";
|
|
16009
16014
|
/**
|
|
16010
16015
|
* Filter cards by a search term (matches against title and description).
|
|
16011
16016
|
* Returns a new array of matching cards.
|
package/dist/index.d.ts
CHANGED
|
@@ -6,8 +6,8 @@ import { a as TigerLocaleInput, b as TigerLocaleLazyModule, c as TigerLocaleLoad
|
|
|
6
6
|
export { h as TigerLocaleCommon, j as TigerLocaleDrawer, i as TigerLocaleModal, k as TigerLocaleUpload } from './locale-Bc3zz2b0.js';
|
|
7
7
|
import { D as DatePickerLocalePreset, a as DatePickerLocaleInput, b as DatePickerLabels, c as DateFormat, d as DatePickerSize } from './datepicker-DXzS_8l8.js';
|
|
8
8
|
export { e as DatePickerInputDate, k as DatePickerLocaleConfig, h as DatePickerModelValue, l as DatePickerProps, g as DatePickerRangeModelValue, j as DatePickerRangeValue, m as DatePickerShortcut, f as DatePickerSingleModelValue, i as DatePickerSingleValue } from './datepicker-DXzS_8l8.js';
|
|
9
|
-
import { T as TableResponsiveMode, a as TableColumn, b as TableSize, C as ColumnAlign, S as SortDirection, F as FilterOption, c as TableProps, P as PaginationConfig, d as FilterRule, e as ColumnFilter, f as SortState } from './table-export-
|
|
10
|
-
export { E as ExpandableConfig, n as FilterType, R as RowSelectionConfig, m as TableExportFormat, i as downloadCsv, j as downloadExcel, l as downloadTableExport, k as exportTableData, g as exportTableToCsv, h as exportTableToExcel, t as tableExportButtonClasses } from './table-export-
|
|
9
|
+
import { T as TableResponsiveMode, a as TableColumn, b as TableSize, C as ColumnAlign, S as SortDirection, F as FilterOption, c as TableProps, P as PaginationConfig, d as FilterRule, e as ColumnFilter, f as SortState } from './table-export-C-BAknOZ.js';
|
|
10
|
+
export { E as ExpandableConfig, n as FilterType, R as RowSelectionConfig, m as TableExportFormat, i as downloadCsv, j as downloadExcel, l as downloadTableExport, k as exportTableData, g as exportTableToCsv, h as exportTableToExcel, t as tableExportButtonClasses } from './table-export-C-BAknOZ.js';
|
|
11
11
|
import { Middleware, MiddlewareData } from '@floating-ui/dom';
|
|
12
12
|
import { T as ThemePreset, C as ColorScheme } from './tailwind-entry-D4_sseNi.js';
|
|
13
13
|
export { a as ThemeColorScale, h as ThemeConfig, g as ThemeMotion, i as ThemePresetName, d as ThemeRadius, b as ThemeSemanticColors, e as ThemeShadows, f as ThemeSpacing, c as ThemeTypography, l as TigercatPluginOptions, m as createTigercatPlugin, j as tigercatDarkTheme, k as tigercatPlugin, t as tigercatTheme } from './tailwind-entry-D4_sseNi.js';
|
|
@@ -8344,7 +8344,7 @@ declare const imagePreviewCounterClasses = "text-sm text-white/80 mx-2 tabular-n
|
|
|
8344
8344
|
/**
|
|
8345
8345
|
* Cropper container classes
|
|
8346
8346
|
*/
|
|
8347
|
-
declare const imageCropperContainerClasses = "relative overflow-hidden bg-[var(--tiger-image-cropper-bg,#
|
|
8347
|
+
declare const imageCropperContainerClasses = "relative overflow-hidden bg-[var(--tiger-image-cropper-bg,#0f172a)] rounded-[var(--tiger-radius-lg,0.75rem)] select-none touch-none shadow-inner border border-white/10 tiger-image-cropper-checkerboard";
|
|
8348
8348
|
/**
|
|
8349
8349
|
* Cropper image classes (the source image)
|
|
8350
8350
|
*/
|
|
@@ -8356,11 +8356,11 @@ declare const imageCropperMaskClasses = "absolute inset-0 pointer-events-none";
|
|
|
8356
8356
|
/**
|
|
8357
8357
|
* Cropper selection border classes (the crop box border)
|
|
8358
8358
|
*/
|
|
8359
|
-
declare const imageCropperSelectionClasses = "absolute border-2 border-[var(--tiger-image-cropper-border,#ffffff)] pointer-events-none";
|
|
8359
|
+
declare const imageCropperSelectionClasses = "absolute border-2 border-[var(--tiger-image-cropper-border,#ffffff)] pointer-events-none shadow-[0_0_0_9999px_rgba(0,0,0,0.65),0_0_15px_rgba(255,255,255,0.4)] transition-shadow duration-300";
|
|
8360
8360
|
/**
|
|
8361
8361
|
* Cropper guide line classes
|
|
8362
8362
|
*/
|
|
8363
|
-
declare const imageCropperGuideClasses = "absolute border-[var(--tiger-image-cropper-border,rgba(255,255,255,0.
|
|
8363
|
+
declare const imageCropperGuideClasses = "absolute border-[var(--tiger-image-cropper-border,rgba(255,255,255,0.25))] pointer-events-none opacity-40 transition-opacity duration-300";
|
|
8364
8364
|
/**
|
|
8365
8365
|
* Cropper drag area classes (inside the crop box, handles moving)
|
|
8366
8366
|
*/
|
|
@@ -8376,11 +8376,11 @@ declare const CROP_HANDLES: CropHandle[];
|
|
|
8376
8376
|
/**
|
|
8377
8377
|
* CropUpload trigger button classes
|
|
8378
8378
|
*/
|
|
8379
|
-
declare const cropUploadTriggerClasses = "inline-flex items-center justify-center gap-2 px-
|
|
8379
|
+
declare const cropUploadTriggerClasses = "inline-flex items-center justify-center gap-2.5 px-5 py-2.5 border-2 border-dashed border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-lg,0.75rem)] text-[var(--tiger-text-secondary,#4b5563)] bg-[var(--tiger-surface-muted,#f9fafb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:scale-[1.02] active:scale-[0.98] hover:shadow-md transition-all duration-300 ease-out cursor-pointer focus:outline-none focus:ring-2 focus:ring-[var(--tiger-primary,#2563eb)] focus:ring-offset-2 dark:bg-neutral-900 dark:hover:bg-neutral-800";
|
|
8380
8380
|
/**
|
|
8381
8381
|
* CropUpload disabled trigger classes
|
|
8382
8382
|
*/
|
|
8383
|
-
declare const cropUploadTriggerDisabledClasses = "inline-flex items-center justify-center gap-2 px-
|
|
8383
|
+
declare const cropUploadTriggerDisabledClasses = "inline-flex items-center justify-center gap-2.5 px-5 py-2.5 border-2 border-dashed border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-lg,0.75rem)] text-[var(--tiger-text-disabled,#9ca3af)] bg-[var(--tiger-surface-muted,#f9fafb)] cursor-not-allowed opacity-60 dark:bg-neutral-900/50";
|
|
8384
8384
|
/**
|
|
8385
8385
|
* Upload icon path (plus sign in a frame)
|
|
8386
8386
|
*/
|
|
@@ -13101,6 +13101,11 @@ interface FormWizardProps {
|
|
|
13101
13101
|
* @default false
|
|
13102
13102
|
*/
|
|
13103
13103
|
simple?: boolean;
|
|
13104
|
+
/**
|
|
13105
|
+
* Whether to show border around the wizard card
|
|
13106
|
+
* @default true
|
|
13107
|
+
*/
|
|
13108
|
+
bordered?: boolean;
|
|
13104
13109
|
/**
|
|
13105
13110
|
* Whether to show steps header
|
|
13106
13111
|
* @default true
|
|
@@ -13423,21 +13428,21 @@ declare function formatCountdown(remaining: number, format?: string): string;
|
|
|
13423
13428
|
declare function createCountdownPayload(remaining: number, format?: string): CountdownChangePayload;
|
|
13424
13429
|
|
|
13425
13430
|
/** Root wrapper — horizontal scroll container */
|
|
13426
|
-
declare const taskBoardBaseClasses = "tiger-task-board flex gap-
|
|
13431
|
+
declare const taskBoardBaseClasses = "tiger-task-board flex gap-5 overflow-x-auto p-6 min-h-[450px] scroll-smooth antialiased";
|
|
13427
13432
|
/** Single column shell */
|
|
13428
|
-
declare const taskBoardColumnClasses = "tiger-task-board-column flex flex-col shrink-0 w-
|
|
13433
|
+
declare const taskBoardColumnClasses = "tiger-task-board-column flex flex-col shrink-0 w-76 rounded-[var(--tiger-radius-lg,0.75rem)] border border-[var(--tiger-border,#e5e7eb)]/80 bg-[var(--tiger-surface-muted,#f9fafb)] shadow-xs transition-all duration-300 hover:shadow-md";
|
|
13429
13434
|
/** Column header (sticky, never scrolls) */
|
|
13430
|
-
declare const taskBoardColumnHeaderClasses = "flex items-center justify-between px-
|
|
13435
|
+
declare const taskBoardColumnHeaderClasses = "flex items-center justify-between px-4 py-3.5 border-b border-[var(--tiger-border,#e5e7eb)]/60 text-sm font-semibold text-[var(--tiger-text,#1f2937)] select-none transition-colors";
|
|
13431
13436
|
/** Scrollable card area */
|
|
13432
|
-
declare const taskBoardColumnBodyClasses = "flex-1 overflow-y-auto p-
|
|
13437
|
+
declare const taskBoardColumnBodyClasses = "flex-1 overflow-y-auto p-3 space-y-3 min-h-[100px] transition-colors";
|
|
13433
13438
|
/** Card base styles */
|
|
13434
|
-
declare const taskBoardCardClasses = "tiger-task-board-card rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface,#ffffff)] p-
|
|
13439
|
+
declare const taskBoardCardClasses = "tiger-task-board-card rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)]/80 bg-[var(--tiger-surface,#ffffff)] p-4 shadow-[0_1px_3px_rgba(0,0,0,0.04),_0_1px_2px_rgba(0,0,0,0.02)] cursor-grab select-none transition-all duration-200 hover:-translate-y-0.5 hover:shadow-md hover:border-[var(--tiger-primary,#2563eb)]/30 active:cursor-grabbing";
|
|
13435
13440
|
/** Card while being dragged */
|
|
13436
|
-
declare const taskBoardCardDraggingClasses = "opacity-
|
|
13441
|
+
declare const taskBoardCardDraggingClasses = "opacity-40 shadow-xl scale-[0.98] rotate-1";
|
|
13437
13442
|
/** Thin line indicating the drop position */
|
|
13438
|
-
declare const taskBoardDropIndicatorClasses = "h-1 rounded-full bg-[var(--tiger-primary,#2563eb)] my-
|
|
13443
|
+
declare const taskBoardDropIndicatorClasses = "h-1.5 rounded-full bg-[var(--tiger-primary,#2563eb)] my-2 shadow-[0_0_8px_var(--tiger-primary,#2563eb)] transition-all duration-200";
|
|
13439
13444
|
/** Column highlighted when a card hovers over it */
|
|
13440
|
-
declare const taskBoardColumnDropTargetClasses = "ring-2 ring-[var(--tiger-primary,#2563eb)]
|
|
13445
|
+
declare const taskBoardColumnDropTargetClasses = "ring-2 ring-[var(--tiger-primary,#2563eb)]/60 bg-[color-mix(in_srgb,var(--tiger-primary,#2563eb)_4%,transparent)]";
|
|
13441
13446
|
/** Column being dragged */
|
|
13442
13447
|
declare const taskBoardColumnDraggingClasses = "opacity-50";
|
|
13443
13448
|
/** Empty column placeholder */
|
|
@@ -13445,7 +13450,7 @@ declare const taskBoardEmptyClasses = "flex items-center justify-center text-[va
|
|
|
13445
13450
|
/** WIP exceeded badge / header tint */
|
|
13446
13451
|
declare const taskBoardWipExceededClasses = "text-[var(--tiger-error,#ef4444)]";
|
|
13447
13452
|
/** Add-card button inside column footer */
|
|
13448
|
-
declare const taskBoardAddCardClasses = "flex items-center justify-center gap-1 w-
|
|
13453
|
+
declare const taskBoardAddCardClasses = "flex items-center justify-center gap-1.5 w-[calc(100%-16px)] mx-2 my-2 py-2.5 text-xs font-semibold text-[var(--tiger-text-muted,#6b7280)] border border-dashed border-[var(--tiger-border,#e5e7eb)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-xs rounded-[var(--tiger-radius-md,0.5rem)] transition-all duration-200 cursor-pointer active:scale-98";
|
|
13449
13454
|
interface CardDragData {
|
|
13450
13455
|
type: 'card';
|
|
13451
13456
|
cardId: string | number;
|
|
@@ -15991,7 +15996,7 @@ interface KanbanProps extends TaskBoardProps {
|
|
|
15991
15996
|
*/
|
|
15992
15997
|
|
|
15993
15998
|
/** Card count badge */
|
|
15994
|
-
declare const kanbanCardCountClasses = "inline-flex items-center justify-center h-5 min-w-[
|
|
15999
|
+
declare const kanbanCardCountClasses = "inline-flex items-center justify-center h-5 min-w-[22px] px-2 rounded-full text-xs font-semibold bg-[var(--tiger-border,#e5e7eb)]/60 text-[var(--tiger-text-secondary,#6b7280)]/90 backdrop-blur-xs shadow-inner";
|
|
15995
16000
|
/** Swimlane row wrapper */
|
|
15996
16001
|
declare const kanbanSwimlaneClasses = "border-b border-[var(--tiger-border,#e5e7eb)] last:border-b-0";
|
|
15997
16002
|
/** Swimlane header */
|
|
@@ -16003,9 +16008,9 @@ declare const kanbanSwimlaneCollapsedClasses = "hidden";
|
|
|
16003
16008
|
/** Filter match highlight on card */
|
|
16004
16009
|
declare const kanbanFilterHighlightClasses = "bg-[var(--tiger-warning,#fbbf24)]/20";
|
|
16005
16010
|
/** Add column button */
|
|
16006
|
-
declare const kanbanAddColumnClasses = "flex items-center justify-center shrink-0 w-
|
|
16011
|
+
declare const kanbanAddColumnClasses = "flex items-center justify-center shrink-0 w-76 min-h-[120px] rounded-[var(--tiger-radius-lg,0.75rem)] border-2 border-dashed border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface-muted,#f9fafb)]/40 text-sm font-medium text-[var(--tiger-text-muted,#6b7280)] hover:border-[var(--tiger-primary,#2563eb)]/80 hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-sm cursor-pointer transition-all duration-300 active:scale-98";
|
|
16007
16012
|
/** @deprecated Use `taskBoardAddCardClasses` instead */
|
|
16008
|
-
declare const kanbanAddCardClasses = "flex items-center justify-center gap-1 w-
|
|
16013
|
+
declare const kanbanAddCardClasses = "flex items-center justify-center gap-1.5 w-[calc(100%-16px)] mx-2 my-2 py-2.5 text-xs font-semibold text-[var(--tiger-text-muted,#6b7280)] border border-dashed border-[var(--tiger-border,#e5e7eb)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-xs rounded-[var(--tiger-radius-md,0.5rem)] transition-all duration-200 cursor-pointer active:scale-98";
|
|
16009
16014
|
/**
|
|
16010
16015
|
* Filter cards by a search term (matches against title and description).
|
|
16011
16016
|
* Returns a new array of matching cards.
|
package/dist/index.js
CHANGED
|
@@ -1109,21 +1109,25 @@ var ZH_CN_FORM_WIZARD_LABELS = {
|
|
|
1109
1109
|
finishText: "\u5B8C\u6210"
|
|
1110
1110
|
};
|
|
1111
1111
|
function getFormWizardLabels(locale) {
|
|
1112
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
1113
|
+
const defaultLabels = isZh ? ZH_CN_FORM_WIZARD_LABELS : DEFAULT_FORM_WIZARD_LABELS;
|
|
1112
1114
|
return {
|
|
1113
|
-
prevText: locale?.formWizard?.prevText ??
|
|
1114
|
-
nextText: locale?.formWizard?.nextText ??
|
|
1115
|
-
finishText: locale?.formWizard?.finishText ??
|
|
1115
|
+
prevText: locale?.formWizard?.prevText ?? defaultLabels.prevText,
|
|
1116
|
+
nextText: locale?.formWizard?.nextText ?? defaultLabels.nextText,
|
|
1117
|
+
finishText: locale?.formWizard?.finishText ?? defaultLabels.finishText
|
|
1116
1118
|
};
|
|
1117
1119
|
}
|
|
1118
1120
|
function getPaginationLabels(locale) {
|
|
1121
|
+
const isZh = !!locale?.locale?.startsWith("zh") || locale?.formWizard?.prevText === "\u4E0A\u4E00\u6B65" || locale?.upload?.clickToUploadText === "\u70B9\u51FB\u4E0A\u4F20";
|
|
1122
|
+
const defaultLabels = isZh ? ZH_CN_PAGINATION_LABELS : DEFAULT_PAGINATION_LABELS;
|
|
1119
1123
|
return {
|
|
1120
|
-
totalText: locale?.pagination?.totalText ??
|
|
1121
|
-
itemsPerPageText: locale?.pagination?.itemsPerPageText ??
|
|
1122
|
-
jumpToText: locale?.pagination?.jumpToText ??
|
|
1123
|
-
pageText: locale?.pagination?.pageText ??
|
|
1124
|
-
prevPageAriaLabel: locale?.pagination?.prevPageAriaLabel ??
|
|
1125
|
-
nextPageAriaLabel: locale?.pagination?.nextPageAriaLabel ??
|
|
1126
|
-
pageAriaLabel: locale?.pagination?.pageAriaLabel ??
|
|
1124
|
+
totalText: locale?.pagination?.totalText ?? defaultLabels.totalText,
|
|
1125
|
+
itemsPerPageText: locale?.pagination?.itemsPerPageText ?? defaultLabels.itemsPerPageText,
|
|
1126
|
+
jumpToText: locale?.pagination?.jumpToText ?? defaultLabels.jumpToText,
|
|
1127
|
+
pageText: locale?.pagination?.pageText ?? defaultLabels.pageText,
|
|
1128
|
+
prevPageAriaLabel: locale?.pagination?.prevPageAriaLabel ?? defaultLabels.prevPageAriaLabel,
|
|
1129
|
+
nextPageAriaLabel: locale?.pagination?.nextPageAriaLabel ?? defaultLabels.nextPageAriaLabel,
|
|
1130
|
+
pageAriaLabel: locale?.pagination?.pageAriaLabel ?? defaultLabels.pageAriaLabel
|
|
1127
1131
|
};
|
|
1128
1132
|
}
|
|
1129
1133
|
function formatPaginationTotal(template, total, range, locale) {
|
|
@@ -1148,12 +1152,14 @@ var ZH_CN_TASK_BOARD_LABELS = {
|
|
|
1148
1152
|
boardAriaLabel: "\u4EFB\u52A1\u770B\u677F"
|
|
1149
1153
|
};
|
|
1150
1154
|
function getTaskBoardLabels(locale) {
|
|
1155
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
1156
|
+
const defaultLabels = isZh ? ZH_CN_TASK_BOARD_LABELS : DEFAULT_TASK_BOARD_LABELS;
|
|
1151
1157
|
return {
|
|
1152
|
-
emptyColumnText: locale?.taskBoard?.emptyColumnText ??
|
|
1153
|
-
addCardText: locale?.taskBoard?.addCardText ??
|
|
1154
|
-
wipLimitText: locale?.taskBoard?.wipLimitText ??
|
|
1155
|
-
dragHintText: locale?.taskBoard?.dragHintText ??
|
|
1156
|
-
boardAriaLabel: locale?.taskBoard?.boardAriaLabel ??
|
|
1158
|
+
emptyColumnText: locale?.taskBoard?.emptyColumnText ?? defaultLabels.emptyColumnText,
|
|
1159
|
+
addCardText: locale?.taskBoard?.addCardText ?? defaultLabels.addCardText,
|
|
1160
|
+
wipLimitText: locale?.taskBoard?.wipLimitText ?? defaultLabels.wipLimitText,
|
|
1161
|
+
dragHintText: locale?.taskBoard?.dragHintText ?? defaultLabels.dragHintText,
|
|
1162
|
+
boardAriaLabel: locale?.taskBoard?.boardAriaLabel ?? defaultLabels.boardAriaLabel
|
|
1157
1163
|
};
|
|
1158
1164
|
}
|
|
1159
1165
|
|
|
@@ -5332,7 +5338,7 @@ function getStepsContainerClasses(direction) {
|
|
|
5332
5338
|
return `${baseClasses2} flex flex-row items-start`;
|
|
5333
5339
|
}
|
|
5334
5340
|
function getStepItemClasses(direction, isLast) {
|
|
5335
|
-
const baseClasses2 = "tiger-step-item relative";
|
|
5341
|
+
const baseClasses2 = "tiger-step-item relative group";
|
|
5336
5342
|
if (direction === "vertical") {
|
|
5337
5343
|
return `${baseClasses2} flex flex-row ${!isLast ? "pb-6" : ""}`;
|
|
5338
5344
|
}
|
|
@@ -5342,12 +5348,12 @@ function getStepIconClasses(status, size, simple, isCustomIcon) {
|
|
|
5342
5348
|
const baseClasses2 = "tiger-step-icon relative z-10 flex items-center justify-center rounded-full border-2";
|
|
5343
5349
|
const sizeClasses3 = simple ? "w-6 h-6 text-xs" : size === "small" ? "w-8 h-8 text-sm" : "w-10 h-10 text-base";
|
|
5344
5350
|
const iconClasses = isCustomIcon ? "" : "font-medium";
|
|
5345
|
-
const activeClasses = "bg-[var(--tiger-primary,#2563eb)] border-[var(--tiger-primary,#2563eb)] text-white";
|
|
5351
|
+
const activeClasses = "bg-[var(--tiger-primary,#2563eb)] border-[var(--tiger-primary,#2563eb)] text-white ring-4 ring-[var(--tiger-primary,#2563eb)]/15 scale-105 shadow-sm transition-all duration-300";
|
|
5346
5352
|
const statusClasses = {
|
|
5347
|
-
wait: "bg-[var(--tiger-surface-muted,#f3f4f6)] border-[var(--tiger-border,#e5e7eb)] text-[var(--tiger-text-muted,#6b7280)]",
|
|
5353
|
+
wait: "bg-[var(--tiger-surface-muted,#f3f4f6)] border-[var(--tiger-border,#e5e7eb)] text-[var(--tiger-text-muted,#6b7280)] transition-all duration-300 group-hover:border-[var(--tiger-primary,#2563eb)]/60 group-hover:text-[var(--tiger-primary,#2563eb)]/80",
|
|
5348
5354
|
process: activeClasses,
|
|
5349
|
-
finish:
|
|
5350
|
-
error: "bg-[var(--tiger-error-bg,#fef2f2)] border-[var(--tiger-error,#ef4444)] text-[var(--tiger-error,#ef4444)]"
|
|
5355
|
+
finish: "bg-[var(--tiger-primary,#2563eb)] border-[var(--tiger-primary,#2563eb)] text-white shadow-sm transition-all duration-300 group-hover:scale-105 group-hover:bg-[var(--tiger-primary-hover,#0369a1)]",
|
|
5356
|
+
error: "bg-[var(--tiger-error-bg,#fef2f2)] border-[var(--tiger-error,#ef4444)] text-[var(--tiger-error,#ef4444)] transition-all duration-300"
|
|
5351
5357
|
};
|
|
5352
5358
|
return `${baseClasses2} ${sizeClasses3} ${iconClasses} ${statusClasses[status]}`;
|
|
5353
5359
|
}
|
|
@@ -5372,9 +5378,9 @@ function getStepTitleClasses(status, size, clickable) {
|
|
|
5372
5378
|
const baseClasses2 = "tiger-step-title font-medium";
|
|
5373
5379
|
const sizeClasses3 = size === "small" ? "text-sm" : "text-base";
|
|
5374
5380
|
const statusClasses = {
|
|
5375
|
-
wait: "text-[var(--tiger-text-muted,#6b7280)]",
|
|
5376
|
-
process: "text-[var(--tiger-text,#111827)]",
|
|
5377
|
-
finish: "text-[var(--tiger-text,#111827)]",
|
|
5381
|
+
wait: "text-[var(--tiger-text-muted,#6b7280)] transition-colors duration-300 group-hover:text-[var(--tiger-text,#111827)]",
|
|
5382
|
+
process: "text-[var(--tiger-text,#111827)] font-semibold transition-colors duration-300",
|
|
5383
|
+
finish: "text-[var(--tiger-text,#111827)] transition-colors duration-300 group-hover:text-[var(--tiger-primary,#2563eb)]",
|
|
5378
5384
|
error: "text-[var(--tiger-error,#ef4444)]"
|
|
5379
5385
|
};
|
|
5380
5386
|
const cursorClasses = clickable ? "bg-transparent border-0 p-0 cursor-pointer hover:text-[var(--tiger-primary,#2563eb)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--tiger-primary,#2563eb)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--tiger-surface,#ffffff)]" : "";
|
|
@@ -6918,29 +6924,29 @@ var imagePreviewToolbarBtnClasses = "flex items-center justify-center w-8 h-8 ro
|
|
|
6918
6924
|
var imagePreviewNavBtnClasses = "absolute top-1/2 -translate-y-1/2 flex items-center justify-center w-10 h-10 rounded-full bg-[var(--tiger-image-toolbar-bg,rgba(0,0,0,0.6))] text-white hover:bg-white/20 transition-colors focus:outline-none focus:ring-2 focus:ring-white/50 disabled:opacity-40 disabled:cursor-not-allowed";
|
|
6919
6925
|
var imagePreviewCloseBtnClasses = "absolute top-4 right-4 flex items-center justify-center w-10 h-10 rounded-full bg-[var(--tiger-image-toolbar-bg,rgba(0,0,0,0.6))] text-white hover:bg-white/20 transition-colors focus:outline-none focus:ring-2 focus:ring-white/50";
|
|
6920
6926
|
var imagePreviewCounterClasses = "text-sm text-white/80 mx-2 tabular-nums";
|
|
6921
|
-
var imageCropperContainerClasses = "relative overflow-hidden bg-[var(--tiger-image-cropper-bg,#
|
|
6927
|
+
var imageCropperContainerClasses = "relative overflow-hidden bg-[var(--tiger-image-cropper-bg,#0f172a)] rounded-[var(--tiger-radius-lg,0.75rem)] select-none touch-none shadow-inner border border-white/10 tiger-image-cropper-checkerboard";
|
|
6922
6928
|
var imageCropperImgClasses = "absolute top-0 left-0 max-w-none pointer-events-none";
|
|
6923
6929
|
var imageCropperMaskClasses = "absolute inset-0 pointer-events-none";
|
|
6924
|
-
var imageCropperSelectionClasses = "absolute border-2 border-[var(--tiger-image-cropper-border,#ffffff)] pointer-events-none";
|
|
6925
|
-
var imageCropperGuideClasses = "absolute border-[var(--tiger-image-cropper-border,rgba(255,255,255,0.
|
|
6930
|
+
var imageCropperSelectionClasses = "absolute border-2 border-[var(--tiger-image-cropper-border,#ffffff)] pointer-events-none shadow-[0_0_0_9999px_rgba(0,0,0,0.65),0_0_15px_rgba(255,255,255,0.4)] transition-shadow duration-300";
|
|
6931
|
+
var imageCropperGuideClasses = "absolute border-[var(--tiger-image-cropper-border,rgba(255,255,255,0.25))] pointer-events-none opacity-40 transition-opacity duration-300";
|
|
6926
6932
|
var imageCropperDragAreaClasses = "absolute cursor-move";
|
|
6927
6933
|
function getCropperHandleClasses(handle) {
|
|
6928
|
-
const base = "absolute w-3 h-3 bg-[var(--tiger-
|
|
6934
|
+
const base = "absolute w-3.5 h-3.5 rounded-full bg-white border-2 border-[var(--tiger-primary,#2563eb)] shadow-md hover:scale-125 hover:bg-[var(--tiger-primary,#2563eb)] hover:border-white transition-all duration-200 cursor-pointer focus:outline-none focus:ring-2 focus:ring-[var(--tiger-primary,#2563eb)]";
|
|
6929
6935
|
const positionMap = {
|
|
6930
|
-
nw: "-top-1.
|
|
6931
|
-
n: "-top-1.
|
|
6932
|
-
ne: "-top-1.
|
|
6933
|
-
e: "top-1/2 -right-1.
|
|
6934
|
-
se: "-bottom-1.
|
|
6935
|
-
s: "-bottom-1.
|
|
6936
|
-
sw: "-bottom-1.
|
|
6937
|
-
w: "top-1/2 -left-1.
|
|
6936
|
+
nw: "-top-1.75 -left-1.75 cursor-nw-resize",
|
|
6937
|
+
n: "-top-1.75 left-1/2 -translate-x-1/2 cursor-n-resize",
|
|
6938
|
+
ne: "-top-1.75 -right-1.75 cursor-ne-resize",
|
|
6939
|
+
e: "top-1/2 -right-1.75 -translate-y-1/2 cursor-e-resize",
|
|
6940
|
+
se: "-bottom-1.75 -right-1.75 cursor-se-resize",
|
|
6941
|
+
s: "-bottom-1.75 left-1/2 -translate-x-1/2 cursor-s-resize",
|
|
6942
|
+
sw: "-bottom-1.75 -left-1.75 cursor-sw-resize",
|
|
6943
|
+
w: "top-1/2 -left-1.75 -translate-y-1/2 cursor-w-resize"
|
|
6938
6944
|
};
|
|
6939
6945
|
return classNames(base, positionMap[handle]);
|
|
6940
6946
|
}
|
|
6941
6947
|
var CROP_HANDLES = ["nw", "n", "ne", "e", "se", "s", "sw", "w"];
|
|
6942
|
-
var cropUploadTriggerClasses = "inline-flex items-center justify-center gap-2 px-
|
|
6943
|
-
var cropUploadTriggerDisabledClasses = "inline-flex items-center justify-center gap-2 px-
|
|
6948
|
+
var cropUploadTriggerClasses = "inline-flex items-center justify-center gap-2.5 px-5 py-2.5 border-2 border-dashed border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-lg,0.75rem)] text-[var(--tiger-text-secondary,#4b5563)] bg-[var(--tiger-surface-muted,#f9fafb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:scale-[1.02] active:scale-[0.98] hover:shadow-md transition-all duration-300 ease-out cursor-pointer focus:outline-none focus:ring-2 focus:ring-[var(--tiger-primary,#2563eb)] focus:ring-offset-2 dark:bg-neutral-900 dark:hover:bg-neutral-800";
|
|
6949
|
+
var cropUploadTriggerDisabledClasses = "inline-flex items-center justify-center gap-2.5 px-5 py-2.5 border-2 border-dashed border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-lg,0.75rem)] text-[var(--tiger-text-disabled,#9ca3af)] bg-[var(--tiger-surface-muted,#f9fafb)] cursor-not-allowed opacity-60 dark:bg-neutral-900/50";
|
|
6944
6950
|
var uploadPlusIconPath = "M12 4v16m8-8H4";
|
|
6945
6951
|
function clampScale(scale, min, max) {
|
|
6946
6952
|
return Math.min(Math.max(scale, min), max);
|
|
@@ -10009,18 +10015,18 @@ function createCountdownPayload(remaining, format = COUNTDOWN_DEFAULT_FORMAT) {
|
|
|
10009
10015
|
}
|
|
10010
10016
|
|
|
10011
10017
|
// src/utils/task-board-utils.ts
|
|
10012
|
-
var taskBoardBaseClasses = "tiger-task-board flex gap-
|
|
10013
|
-
var taskBoardColumnClasses = "tiger-task-board-column flex flex-col shrink-0 w-
|
|
10014
|
-
var taskBoardColumnHeaderClasses = "flex items-center justify-between px-
|
|
10015
|
-
var taskBoardColumnBodyClasses = "flex-1 overflow-y-auto p-
|
|
10016
|
-
var taskBoardCardClasses = "tiger-task-board-card rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface,#ffffff)] p-
|
|
10017
|
-
var taskBoardCardDraggingClasses = "opacity-
|
|
10018
|
-
var taskBoardDropIndicatorClasses = "h-1 rounded-full bg-[var(--tiger-primary,#2563eb)] my-
|
|
10019
|
-
var taskBoardColumnDropTargetClasses = "ring-2 ring-[var(--tiger-primary,#2563eb)]
|
|
10018
|
+
var taskBoardBaseClasses = "tiger-task-board flex gap-5 overflow-x-auto p-6 min-h-[450px] scroll-smooth antialiased";
|
|
10019
|
+
var taskBoardColumnClasses = "tiger-task-board-column flex flex-col shrink-0 w-76 rounded-[var(--tiger-radius-lg,0.75rem)] border border-[var(--tiger-border,#e5e7eb)]/80 bg-[var(--tiger-surface-muted,#f9fafb)] shadow-xs transition-all duration-300 hover:shadow-md";
|
|
10020
|
+
var taskBoardColumnHeaderClasses = "flex items-center justify-between px-4 py-3.5 border-b border-[var(--tiger-border,#e5e7eb)]/60 text-sm font-semibold text-[var(--tiger-text,#1f2937)] select-none transition-colors";
|
|
10021
|
+
var taskBoardColumnBodyClasses = "flex-1 overflow-y-auto p-3 space-y-3 min-h-[100px] transition-colors";
|
|
10022
|
+
var taskBoardCardClasses = "tiger-task-board-card rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)]/80 bg-[var(--tiger-surface,#ffffff)] p-4 shadow-[0_1px_3px_rgba(0,0,0,0.04),_0_1px_2px_rgba(0,0,0,0.02)] cursor-grab select-none transition-all duration-200 hover:-translate-y-0.5 hover:shadow-md hover:border-[var(--tiger-primary,#2563eb)]/30 active:cursor-grabbing";
|
|
10023
|
+
var taskBoardCardDraggingClasses = "opacity-40 shadow-xl scale-[0.98] rotate-1";
|
|
10024
|
+
var taskBoardDropIndicatorClasses = "h-1.5 rounded-full bg-[var(--tiger-primary,#2563eb)] my-2 shadow-[0_0_8px_var(--tiger-primary,#2563eb)] transition-all duration-200";
|
|
10025
|
+
var taskBoardColumnDropTargetClasses = "ring-2 ring-[var(--tiger-primary,#2563eb)]/60 bg-[color-mix(in_srgb,var(--tiger-primary,#2563eb)_4%,transparent)]";
|
|
10020
10026
|
var taskBoardColumnDraggingClasses = "opacity-50";
|
|
10021
10027
|
var taskBoardEmptyClasses = "flex items-center justify-center text-[var(--tiger-text-muted,#6b7280)] text-sm py-8";
|
|
10022
10028
|
var taskBoardWipExceededClasses = "text-[var(--tiger-error,#ef4444)]";
|
|
10023
|
-
var taskBoardAddCardClasses = "flex items-center justify-center gap-1 w-
|
|
10029
|
+
var taskBoardAddCardClasses = "flex items-center justify-center gap-1.5 w-[calc(100%-16px)] mx-2 my-2 py-2.5 text-xs font-semibold text-[var(--tiger-text-muted,#6b7280)] border border-dashed border-[var(--tiger-border,#e5e7eb)] hover:border-[var(--tiger-primary,#2563eb)] hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-xs rounded-[var(--tiger-radius-md,0.5rem)] transition-all duration-200 cursor-pointer active:scale-98";
|
|
10024
10030
|
var MIME = "text/plain";
|
|
10025
10031
|
function createCardDragData(cardId, columnId, index) {
|
|
10026
10032
|
const data = { type: "card", cardId, columnId, index };
|
|
@@ -13727,13 +13733,13 @@ function createBuiltinRichTextEngine() {
|
|
|
13727
13733
|
var builtinRichTextEngine = createBuiltinRichTextEngine();
|
|
13728
13734
|
|
|
13729
13735
|
// src/utils/kanban-utils.ts
|
|
13730
|
-
var kanbanCardCountClasses = "inline-flex items-center justify-center h-5 min-w-[
|
|
13736
|
+
var kanbanCardCountClasses = "inline-flex items-center justify-center h-5 min-w-[22px] px-2 rounded-full text-xs font-semibold bg-[var(--tiger-border,#e5e7eb)]/60 text-[var(--tiger-text-secondary,#6b7280)]/90 backdrop-blur-xs shadow-inner";
|
|
13731
13737
|
var kanbanSwimlaneClasses = "border-b border-[var(--tiger-border,#e5e7eb)] last:border-b-0";
|
|
13732
13738
|
var kanbanSwimlaneHeaderClasses = "flex items-center gap-2 px-4 py-2 text-sm font-medium text-[var(--tiger-text,#1f2937)] cursor-pointer select-none hover:bg-[var(--tiger-bg-hover,#f9fafb)]";
|
|
13733
13739
|
var kanbanSwimlaneDotClasses = "w-2.5 h-2.5 rounded-full shrink-0";
|
|
13734
13740
|
var kanbanSwimlaneCollapsedClasses = "hidden";
|
|
13735
13741
|
var kanbanFilterHighlightClasses = "bg-[var(--tiger-warning,#fbbf24)]/20";
|
|
13736
|
-
var kanbanAddColumnClasses = "flex items-center justify-center shrink-0 w-
|
|
13742
|
+
var kanbanAddColumnClasses = "flex items-center justify-center shrink-0 w-76 min-h-[120px] rounded-[var(--tiger-radius-lg,0.75rem)] border-2 border-dashed border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface-muted,#f9fafb)]/40 text-sm font-medium text-[var(--tiger-text-muted,#6b7280)] hover:border-[var(--tiger-primary,#2563eb)]/80 hover:text-[var(--tiger-primary,#2563eb)] hover:bg-[var(--tiger-surface,#ffffff)] hover:shadow-sm cursor-pointer transition-all duration-300 active:scale-98";
|
|
13737
13743
|
var kanbanAddCardClasses = taskBoardAddCardClasses;
|
|
13738
13744
|
function filterCards(cards, filterText) {
|
|
13739
13745
|
if (!filterText.trim()) return cards;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import { a as TigerLocaleInput } from './locale-Bc3zz2b0.js';
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* Table component types and interfaces
|
|
3
5
|
*/
|
|
6
|
+
|
|
4
7
|
/**
|
|
5
8
|
* Table size types
|
|
6
9
|
*/
|
|
@@ -184,6 +187,26 @@ interface PaginationConfig {
|
|
|
184
187
|
* Custom total text render function
|
|
185
188
|
*/
|
|
186
189
|
totalText?: (total: number, range: [number, number]) => string;
|
|
190
|
+
/**
|
|
191
|
+
* Locale configuration for pagination text. Set to false to ignore i18n.
|
|
192
|
+
*/
|
|
193
|
+
locale?: TigerLocaleInput | false;
|
|
194
|
+
/**
|
|
195
|
+
* Custom text for 'Previous' button
|
|
196
|
+
*/
|
|
197
|
+
prevText?: string;
|
|
198
|
+
/**
|
|
199
|
+
* Custom text for 'Next' button
|
|
200
|
+
*/
|
|
201
|
+
nextText?: string;
|
|
202
|
+
/**
|
|
203
|
+
* Custom text template for page indicator
|
|
204
|
+
*/
|
|
205
|
+
pageIndicatorText?: (current: number, total: number) => string;
|
|
206
|
+
/**
|
|
207
|
+
* Custom text template for page size option
|
|
208
|
+
*/
|
|
209
|
+
pageSizeText?: (size: number) => string;
|
|
187
210
|
}
|
|
188
211
|
/**
|
|
189
212
|
* Table row selection configuration
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
import { a as TigerLocaleInput } from './locale-9-B-d0mp.cjs';
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* Table component types and interfaces
|
|
3
5
|
*/
|
|
6
|
+
|
|
4
7
|
/**
|
|
5
8
|
* Table size types
|
|
6
9
|
*/
|
|
@@ -184,6 +187,26 @@ interface PaginationConfig {
|
|
|
184
187
|
* Custom total text render function
|
|
185
188
|
*/
|
|
186
189
|
totalText?: (total: number, range: [number, number]) => string;
|
|
190
|
+
/**
|
|
191
|
+
* Locale configuration for pagination text. Set to false to ignore i18n.
|
|
192
|
+
*/
|
|
193
|
+
locale?: TigerLocaleInput | false;
|
|
194
|
+
/**
|
|
195
|
+
* Custom text for 'Previous' button
|
|
196
|
+
*/
|
|
197
|
+
prevText?: string;
|
|
198
|
+
/**
|
|
199
|
+
* Custom text for 'Next' button
|
|
200
|
+
*/
|
|
201
|
+
nextText?: string;
|
|
202
|
+
/**
|
|
203
|
+
* Custom text template for page indicator
|
|
204
|
+
*/
|
|
205
|
+
pageIndicatorText?: (current: number, total: number) => string;
|
|
206
|
+
/**
|
|
207
|
+
* Custom text template for page size option
|
|
208
|
+
*/
|
|
209
|
+
pageSizeText?: (size: number) => string;
|
|
187
210
|
}
|
|
188
211
|
/**
|
|
189
212
|
* Table row selection configuration
|
|
@@ -1 +1,3 @@
|
|
|
1
|
-
export { i as downloadCsv, j as downloadExcel, l as downloadTableExport, k as exportTableData, g as exportTableToCsv, h as exportTableToExcel, t as tableExportButtonClasses } from '../table-export-
|
|
1
|
+
export { i as downloadCsv, j as downloadExcel, l as downloadTableExport, k as exportTableData, g as exportTableToCsv, h as exportTableToExcel, t as tableExportButtonClasses } from '../table-export-D7_CDqY7.cjs';
|
|
2
|
+
import '../locale-9-B-d0mp.cjs';
|
|
3
|
+
import '../datepicker-DXzS_8l8.cjs';
|
|
@@ -1 +1,3 @@
|
|
|
1
|
-
export { i as downloadCsv, j as downloadExcel, l as downloadTableExport, k as exportTableData, g as exportTableToCsv, h as exportTableToExcel, t as tableExportButtonClasses } from '../table-export-
|
|
1
|
+
export { i as downloadCsv, j as downloadExcel, l as downloadTableExport, k as exportTableData, g as exportTableToCsv, h as exportTableToExcel, t as tableExportButtonClasses } from '../table-export-C-BAknOZ.js';
|
|
2
|
+
import '../locale-Bc3zz2b0.js';
|
|
3
|
+
import '../datepicker-DXzS_8l8.js';
|