@expcat/tigercat-core 2.1.0 → 2.1.2
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/{data-export-CJUETRjV.d.ts → data-export-CLWdsrRn.d.ts} +1 -1
- package/dist/index.d.ts +474 -101
- package/dist/index.js +1388 -304
- package/dist/{locale-CEDXoKX7.d.ts → locale-KMGxL6bT.d.ts} +101 -1
- package/dist/locales/ar-SA.d.ts +1 -1
- package/dist/locales/ar-SA.js +140 -4
- package/dist/locales/de-DE.d.ts +1 -1
- package/dist/locales/de-DE.js +140 -4
- package/dist/locales/en-US.d.ts +1 -1
- package/dist/locales/en-US.js +86 -3
- package/dist/locales/es-ES.d.ts +1 -1
- package/dist/locales/es-ES.js +140 -4
- package/dist/locales/fr-FR.d.ts +1 -1
- package/dist/locales/fr-FR.js +140 -4
- package/dist/locales/id-ID.d.ts +1 -1
- package/dist/locales/id-ID.js +140 -4
- package/dist/locales/ja-JP.d.ts +1 -1
- package/dist/locales/ja-JP.js +140 -4
- package/dist/locales/ko-KR.d.ts +1 -1
- package/dist/locales/ko-KR.js +140 -4
- package/dist/locales/pt-BR.d.ts +1 -1
- package/dist/locales/pt-BR.js +140 -4
- package/dist/locales/th-TH.d.ts +1 -1
- package/dist/locales/th-TH.js +140 -4
- package/dist/locales/vi-VN.d.ts +1 -1
- package/dist/locales/vi-VN.js +140 -4
- package/dist/locales/zh-CN.d.ts +1 -1
- package/dist/locales/zh-CN.js +86 -3
- package/dist/locales/zh-TW.d.ts +1 -1
- package/dist/locales/zh-TW.js +140 -4
- package/dist/{table-CbPOY5bp.d.ts → table-CHeBgM_2.d.ts} +1 -1
- package/dist/tailwind/modern.js +25 -14
- package/dist/{tailwind-entry-CNBAH7iv.d.ts → tailwind-entry-nnuviNxx.d.ts} +1 -1
- package/dist/tailwind.d.ts +1 -1
- package/dist/tailwind.js +23 -12
- package/dist/utils/data-export.d.ts +3 -3
- package/dist/utils/table-export.d.ts +2 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1496,7 +1496,13 @@ var TIGER_LOCALE_KEYS = [
|
|
|
1496
1496
|
"imageEditor",
|
|
1497
1497
|
"status",
|
|
1498
1498
|
"taskBoard",
|
|
1499
|
+
"chatWindow",
|
|
1500
|
+
"code",
|
|
1501
|
+
"commentThread",
|
|
1502
|
+
"activityFeed",
|
|
1503
|
+
"notificationCenter",
|
|
1499
1504
|
"select",
|
|
1505
|
+
"colorPicker",
|
|
1500
1506
|
"tabs",
|
|
1501
1507
|
"rate",
|
|
1502
1508
|
"carousel",
|
|
@@ -1565,7 +1571,13 @@ function mergeTigerLocale(base, override) {
|
|
|
1565
1571
|
imageEditor: { ...base?.imageEditor, ...override?.imageEditor },
|
|
1566
1572
|
status: { ...base?.status, ...override?.status },
|
|
1567
1573
|
taskBoard: { ...base?.taskBoard, ...override?.taskBoard },
|
|
1574
|
+
chatWindow: { ...base?.chatWindow, ...override?.chatWindow },
|
|
1575
|
+
code: { ...base?.code, ...override?.code },
|
|
1576
|
+
commentThread: { ...base?.commentThread, ...override?.commentThread },
|
|
1577
|
+
activityFeed: { ...base?.activityFeed, ...override?.activityFeed },
|
|
1578
|
+
notificationCenter: { ...base?.notificationCenter, ...override?.notificationCenter },
|
|
1568
1579
|
select: { ...base?.select, ...override?.select },
|
|
1580
|
+
colorPicker: { ...base?.colorPicker, ...override?.colorPicker },
|
|
1569
1581
|
tabs: { ...base?.tabs, ...override?.tabs },
|
|
1570
1582
|
rate: { ...base?.rate, ...override?.rate },
|
|
1571
1583
|
avatarGroup: { ...base?.avatarGroup, ...override?.avatarGroup },
|
|
@@ -1868,19 +1880,205 @@ function getTaskBoardLabels(locale, overrides) {
|
|
|
1868
1880
|
boardAriaLabel: overrides?.boardAriaLabel ?? locale?.taskBoard?.boardAriaLabel ?? defaultLabels.boardAriaLabel
|
|
1869
1881
|
};
|
|
1870
1882
|
}
|
|
1883
|
+
var DEFAULT_CHAT_WINDOW_LABELS = {
|
|
1884
|
+
emptyText: "No messages",
|
|
1885
|
+
sendText: "Send",
|
|
1886
|
+
placeholder: "Type a message",
|
|
1887
|
+
sendingText: "Sending",
|
|
1888
|
+
sentText: "Delivered",
|
|
1889
|
+
failedText: "Failed to send"
|
|
1890
|
+
};
|
|
1891
|
+
var ZH_CN_CHAT_WINDOW_LABELS = {
|
|
1892
|
+
emptyText: "\u6682\u65E0\u6D88\u606F",
|
|
1893
|
+
sendText: "\u53D1\u9001",
|
|
1894
|
+
placeholder: "\u8BF7\u8F93\u5165\u6D88\u606F",
|
|
1895
|
+
sendingText: "\u53D1\u9001\u4E2D",
|
|
1896
|
+
sentText: "\u5DF2\u9001\u8FBE",
|
|
1897
|
+
failedText: "\u53D1\u9001\u5931\u8D25"
|
|
1898
|
+
};
|
|
1899
|
+
function getChatWindowLabels(locale, overrides) {
|
|
1900
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
1901
|
+
const defaultLabels = isZh ? ZH_CN_CHAT_WINDOW_LABELS : DEFAULT_CHAT_WINDOW_LABELS;
|
|
1902
|
+
return {
|
|
1903
|
+
emptyText: overrides?.emptyText ?? locale?.chatWindow?.emptyText ?? defaultLabels.emptyText,
|
|
1904
|
+
sendText: overrides?.sendText ?? locale?.chatWindow?.sendText ?? defaultLabels.sendText,
|
|
1905
|
+
placeholder: overrides?.placeholder ?? locale?.chatWindow?.placeholder ?? defaultLabels.placeholder,
|
|
1906
|
+
sendingText: overrides?.sendingText ?? locale?.chatWindow?.sendingText ?? defaultLabels.sendingText,
|
|
1907
|
+
sentText: overrides?.sentText ?? locale?.chatWindow?.sentText ?? defaultLabels.sentText,
|
|
1908
|
+
failedText: overrides?.failedText ?? locale?.chatWindow?.failedText ?? defaultLabels.failedText
|
|
1909
|
+
};
|
|
1910
|
+
}
|
|
1911
|
+
var DEFAULT_CODE_LABELS = {
|
|
1912
|
+
copyLabel: "Copy",
|
|
1913
|
+
copiedLabel: "Copied",
|
|
1914
|
+
copyFailedLabel: "Copy failed"
|
|
1915
|
+
};
|
|
1916
|
+
var ZH_CN_CODE_LABELS = {
|
|
1917
|
+
copyLabel: "\u590D\u5236",
|
|
1918
|
+
copiedLabel: "\u5DF2\u590D\u5236",
|
|
1919
|
+
copyFailedLabel: "\u590D\u5236\u5931\u8D25"
|
|
1920
|
+
};
|
|
1921
|
+
function getCodeLabels(locale, overrides) {
|
|
1922
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
1923
|
+
const defaultLabels = isZh ? ZH_CN_CODE_LABELS : DEFAULT_CODE_LABELS;
|
|
1924
|
+
return {
|
|
1925
|
+
copyLabel: overrides?.copyLabel ?? locale?.code?.copyLabel ?? defaultLabels.copyLabel,
|
|
1926
|
+
copiedLabel: overrides?.copiedLabel ?? locale?.code?.copiedLabel ?? defaultLabels.copiedLabel,
|
|
1927
|
+
copyFailedLabel: overrides?.copyFailedLabel ?? locale?.code?.copyFailedLabel ?? defaultLabels.copyFailedLabel
|
|
1928
|
+
};
|
|
1929
|
+
}
|
|
1930
|
+
var DEFAULT_COMMENT_THREAD_LABELS = {
|
|
1931
|
+
emptyText: "No comments",
|
|
1932
|
+
replyPlaceholder: "Write a reply...",
|
|
1933
|
+
replyButtonText: "Reply",
|
|
1934
|
+
cancelReplyText: "Cancel",
|
|
1935
|
+
likeText: "Like",
|
|
1936
|
+
likedText: "Liked",
|
|
1937
|
+
replyText: "Reply",
|
|
1938
|
+
moreText: "More",
|
|
1939
|
+
loadMoreText: "Load more",
|
|
1940
|
+
collapseRepliesText: "\u25BE Collapse replies",
|
|
1941
|
+
expandRepliesText: "\u25B8 Expand {count} replies"
|
|
1942
|
+
};
|
|
1943
|
+
var ZH_CN_COMMENT_THREAD_LABELS = {
|
|
1944
|
+
emptyText: "\u6682\u65E0\u8BC4\u8BBA",
|
|
1945
|
+
replyPlaceholder: "\u5199\u4E0B\u56DE\u590D...",
|
|
1946
|
+
replyButtonText: "\u56DE\u590D",
|
|
1947
|
+
cancelReplyText: "\u53D6\u6D88",
|
|
1948
|
+
likeText: "\u70B9\u8D5E",
|
|
1949
|
+
likedText: "\u5DF2\u8D5E",
|
|
1950
|
+
replyText: "\u56DE\u590D",
|
|
1951
|
+
moreText: "\u66F4\u591A",
|
|
1952
|
+
loadMoreText: "\u52A0\u8F7D\u66F4\u591A",
|
|
1953
|
+
collapseRepliesText: "\u25BE \u6536\u8D77\u56DE\u590D",
|
|
1954
|
+
expandRepliesText: "\u25B8 \u5C55\u5F00 {count} \u6761\u56DE\u590D"
|
|
1955
|
+
};
|
|
1956
|
+
function getCommentThreadLabels(locale, overrides) {
|
|
1957
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
1958
|
+
const defaultLabels = isZh ? ZH_CN_COMMENT_THREAD_LABELS : DEFAULT_COMMENT_THREAD_LABELS;
|
|
1959
|
+
return {
|
|
1960
|
+
emptyText: overrides?.emptyText ?? locale?.commentThread?.emptyText ?? defaultLabels.emptyText,
|
|
1961
|
+
replyPlaceholder: overrides?.replyPlaceholder ?? locale?.commentThread?.replyPlaceholder ?? defaultLabels.replyPlaceholder,
|
|
1962
|
+
replyButtonText: overrides?.replyButtonText ?? locale?.commentThread?.replyButtonText ?? defaultLabels.replyButtonText,
|
|
1963
|
+
cancelReplyText: overrides?.cancelReplyText ?? locale?.commentThread?.cancelReplyText ?? defaultLabels.cancelReplyText,
|
|
1964
|
+
likeText: overrides?.likeText ?? locale?.commentThread?.likeText ?? defaultLabels.likeText,
|
|
1965
|
+
likedText: overrides?.likedText ?? locale?.commentThread?.likedText ?? defaultLabels.likedText,
|
|
1966
|
+
replyText: overrides?.replyText ?? locale?.commentThread?.replyText ?? defaultLabels.replyText,
|
|
1967
|
+
moreText: overrides?.moreText ?? locale?.commentThread?.moreText ?? defaultLabels.moreText,
|
|
1968
|
+
loadMoreText: overrides?.loadMoreText ?? locale?.commentThread?.loadMoreText ?? defaultLabels.loadMoreText,
|
|
1969
|
+
collapseRepliesText: overrides?.collapseRepliesText ?? locale?.commentThread?.collapseRepliesText ?? defaultLabels.collapseRepliesText,
|
|
1970
|
+
expandRepliesText: overrides?.expandRepliesText ?? locale?.commentThread?.expandRepliesText ?? defaultLabels.expandRepliesText
|
|
1971
|
+
};
|
|
1972
|
+
}
|
|
1973
|
+
var DEFAULT_ACTIVITY_FEED_LABELS = {
|
|
1974
|
+
emptyText: "No activity",
|
|
1975
|
+
loadingText: "Loading..."
|
|
1976
|
+
};
|
|
1977
|
+
var ZH_CN_ACTIVITY_FEED_LABELS = {
|
|
1978
|
+
emptyText: "\u6682\u65E0\u52A8\u6001",
|
|
1979
|
+
loadingText: "\u52A0\u8F7D\u4E2D..."
|
|
1980
|
+
};
|
|
1981
|
+
function getActivityFeedLabels(locale, overrides) {
|
|
1982
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
1983
|
+
const defaultLabels = isZh ? ZH_CN_ACTIVITY_FEED_LABELS : DEFAULT_ACTIVITY_FEED_LABELS;
|
|
1984
|
+
return {
|
|
1985
|
+
emptyText: overrides?.emptyText ?? locale?.activityFeed?.emptyText ?? defaultLabels.emptyText,
|
|
1986
|
+
loadingText: overrides?.loadingText ?? locale?.activityFeed?.loadingText ?? defaultLabels.loadingText
|
|
1987
|
+
};
|
|
1988
|
+
}
|
|
1989
|
+
var DEFAULT_NOTIFICATION_CENTER_LABELS = {
|
|
1990
|
+
title: "Notifications",
|
|
1991
|
+
emptyText: "No notifications",
|
|
1992
|
+
loadingText: "Loading...",
|
|
1993
|
+
allLabel: "All",
|
|
1994
|
+
unreadLabel: "Unread",
|
|
1995
|
+
readLabel: "Read",
|
|
1996
|
+
markAllReadText: "Mark all as read",
|
|
1997
|
+
markReadText: "Mark as read",
|
|
1998
|
+
markUnreadText: "Mark as unread"
|
|
1999
|
+
};
|
|
2000
|
+
var ZH_CN_NOTIFICATION_CENTER_LABELS = {
|
|
2001
|
+
title: "\u901A\u77E5\u4E2D\u5FC3",
|
|
2002
|
+
emptyText: "\u6682\u65E0\u901A\u77E5",
|
|
2003
|
+
loadingText: "\u52A0\u8F7D\u4E2D...",
|
|
2004
|
+
allLabel: "\u5168\u90E8",
|
|
2005
|
+
unreadLabel: "\u672A\u8BFB",
|
|
2006
|
+
readLabel: "\u5DF2\u8BFB",
|
|
2007
|
+
markAllReadText: "\u5168\u90E8\u6807\u8BB0\u5DF2\u8BFB",
|
|
2008
|
+
markReadText: "\u6807\u8BB0\u5DF2\u8BFB",
|
|
2009
|
+
markUnreadText: "\u6807\u8BB0\u672A\u8BFB"
|
|
2010
|
+
};
|
|
2011
|
+
function getNotificationCenterLabels(locale, overrides) {
|
|
2012
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
2013
|
+
const defaultLabels = isZh ? ZH_CN_NOTIFICATION_CENTER_LABELS : DEFAULT_NOTIFICATION_CENTER_LABELS;
|
|
2014
|
+
return {
|
|
2015
|
+
title: overrides?.title ?? locale?.notificationCenter?.title ?? defaultLabels.title,
|
|
2016
|
+
emptyText: overrides?.emptyText ?? locale?.notificationCenter?.emptyText ?? defaultLabels.emptyText,
|
|
2017
|
+
loadingText: overrides?.loadingText ?? locale?.notificationCenter?.loadingText ?? defaultLabels.loadingText,
|
|
2018
|
+
allLabel: overrides?.allLabel ?? locale?.notificationCenter?.allLabel ?? defaultLabels.allLabel,
|
|
2019
|
+
unreadLabel: overrides?.unreadLabel ?? locale?.notificationCenter?.unreadLabel ?? defaultLabels.unreadLabel,
|
|
2020
|
+
readLabel: overrides?.readLabel ?? locale?.notificationCenter?.readLabel ?? defaultLabels.readLabel,
|
|
2021
|
+
markAllReadText: overrides?.markAllReadText ?? locale?.notificationCenter?.markAllReadText ?? defaultLabels.markAllReadText,
|
|
2022
|
+
markReadText: overrides?.markReadText ?? locale?.notificationCenter?.markReadText ?? defaultLabels.markReadText,
|
|
2023
|
+
markUnreadText: overrides?.markUnreadText ?? locale?.notificationCenter?.markUnreadText ?? defaultLabels.markUnreadText
|
|
2024
|
+
};
|
|
2025
|
+
}
|
|
1871
2026
|
var DEFAULT_SELECT_LABELS = {
|
|
1872
|
-
doneText: "Done"
|
|
2027
|
+
doneText: "Done",
|
|
2028
|
+
placeholder: "Select an option",
|
|
2029
|
+
emptyText: "No options found"
|
|
1873
2030
|
};
|
|
1874
2031
|
var ZH_CN_SELECT_LABELS = {
|
|
1875
|
-
doneText: "\u5B8C\u6210"
|
|
2032
|
+
doneText: "\u5B8C\u6210",
|
|
2033
|
+
placeholder: "\u8BF7\u9009\u62E9",
|
|
2034
|
+
emptyText: "\u6682\u65E0\u9009\u9879"
|
|
1876
2035
|
};
|
|
1877
2036
|
function getSelectLabels(locale, overrides) {
|
|
1878
2037
|
const isZh = !!locale?.locale?.startsWith("zh") || locale?.formWizard?.finishText === "\u5B8C\u6210";
|
|
1879
2038
|
const defaultLabels = isZh ? ZH_CN_SELECT_LABELS : DEFAULT_SELECT_LABELS;
|
|
1880
2039
|
return {
|
|
1881
|
-
doneText: overrides?.doneText ?? locale?.select?.doneText ?? locale?.common?.okText ?? defaultLabels.doneText
|
|
2040
|
+
doneText: overrides?.doneText ?? locale?.select?.doneText ?? locale?.common?.okText ?? defaultLabels.doneText,
|
|
2041
|
+
placeholder: overrides?.placeholder ?? locale?.select?.placeholder ?? defaultLabels.placeholder,
|
|
2042
|
+
emptyText: overrides?.emptyText ?? locale?.select?.emptyText ?? locale?.common?.emptyText ?? defaultLabels.emptyText
|
|
2043
|
+
};
|
|
2044
|
+
}
|
|
2045
|
+
var DEFAULT_COLOR_PICKER_LABELS = {
|
|
2046
|
+
trigger: "Pick color",
|
|
2047
|
+
panelTitle: "Color",
|
|
2048
|
+
clear: "Clear",
|
|
2049
|
+
hue: "Hue",
|
|
2050
|
+
alpha: "Alpha",
|
|
2051
|
+
value: "Color value",
|
|
2052
|
+
preview: "Color preview",
|
|
2053
|
+
selectPreset: "Select {color}"
|
|
2054
|
+
};
|
|
2055
|
+
var ZH_CN_COLOR_PICKER_LABELS = {
|
|
2056
|
+
trigger: "\u9009\u62E9\u989C\u8272",
|
|
2057
|
+
panelTitle: "\u989C\u8272",
|
|
2058
|
+
clear: "\u6E05\u7A7A",
|
|
2059
|
+
hue: "\u8272\u76F8",
|
|
2060
|
+
alpha: "\u900F\u660E\u5EA6",
|
|
2061
|
+
value: "\u989C\u8272\u503C",
|
|
2062
|
+
preview: "\u989C\u8272\u9884\u89C8",
|
|
2063
|
+
selectPreset: "\u9009\u62E9 {color}"
|
|
2064
|
+
};
|
|
2065
|
+
function getColorPickerLabels(locale, overrides) {
|
|
2066
|
+
const isZh = locale?.locale?.startsWith("zh");
|
|
2067
|
+
const defaultLabels = isZh ? ZH_CN_COLOR_PICKER_LABELS : DEFAULT_COLOR_PICKER_LABELS;
|
|
2068
|
+
return {
|
|
2069
|
+
trigger: overrides?.trigger ?? locale?.colorPicker?.trigger ?? defaultLabels.trigger,
|
|
2070
|
+
panelTitle: overrides?.panelTitle ?? locale?.colorPicker?.panelTitle ?? defaultLabels.panelTitle,
|
|
2071
|
+
clear: overrides?.clear ?? locale?.colorPicker?.clear ?? defaultLabels.clear,
|
|
2072
|
+
hue: overrides?.hue ?? locale?.colorPicker?.hue ?? defaultLabels.hue,
|
|
2073
|
+
alpha: overrides?.alpha ?? locale?.colorPicker?.alpha ?? defaultLabels.alpha,
|
|
2074
|
+
value: overrides?.value ?? locale?.colorPicker?.value ?? defaultLabels.value,
|
|
2075
|
+
preview: overrides?.preview ?? locale?.colorPicker?.preview ?? defaultLabels.preview,
|
|
2076
|
+
selectPreset: overrides?.selectPreset ?? locale?.colorPicker?.selectPreset ?? defaultLabels.selectPreset
|
|
1882
2077
|
};
|
|
1883
2078
|
}
|
|
2079
|
+
function formatColorPickerSelectPreset(template, color) {
|
|
2080
|
+
return template.replace("{color}", color);
|
|
2081
|
+
}
|
|
1884
2082
|
var DEFAULT_TABS_LABELS = {
|
|
1885
2083
|
addTabAriaLabel: "Add tab",
|
|
1886
2084
|
closeTabAriaLabel: "Close {label}"
|
|
@@ -2002,7 +2200,20 @@ var DEFAULT_MARKDOWN_EDITOR_LABELS = {
|
|
|
2002
2200
|
previewAriaLabel: "Markdown preview",
|
|
2003
2201
|
editModeLabel: "Edit",
|
|
2004
2202
|
splitModeLabel: "Split",
|
|
2005
|
-
previewModeLabel: "Preview"
|
|
2203
|
+
previewModeLabel: "Preview",
|
|
2204
|
+
bold: "Bold",
|
|
2205
|
+
italic: "Italic",
|
|
2206
|
+
strikethrough: "Strikethrough",
|
|
2207
|
+
heading: "Heading",
|
|
2208
|
+
blockquote: "Blockquote",
|
|
2209
|
+
unorderedList: "Bulleted list",
|
|
2210
|
+
orderedList: "Numbered list",
|
|
2211
|
+
inlineCode: "Inline code",
|
|
2212
|
+
codeBlock: "Code block",
|
|
2213
|
+
link: "Link",
|
|
2214
|
+
image: "Image",
|
|
2215
|
+
table: "Table",
|
|
2216
|
+
horizontalRule: "Horizontal rule"
|
|
2006
2217
|
};
|
|
2007
2218
|
var ZH_CN_MARKDOWN_EDITOR_LABELS = {
|
|
2008
2219
|
formattingToolbarAriaLabel: "Markdown \u683C\u5F0F\u5DE5\u5177\u680F",
|
|
@@ -2011,33 +2222,77 @@ var ZH_CN_MARKDOWN_EDITOR_LABELS = {
|
|
|
2011
2222
|
previewAriaLabel: "Markdown \u9884\u89C8",
|
|
2012
2223
|
editModeLabel: "\u7F16\u8F91",
|
|
2013
2224
|
splitModeLabel: "\u5206\u680F",
|
|
2014
|
-
previewModeLabel: "\u9884\u89C8"
|
|
2225
|
+
previewModeLabel: "\u9884\u89C8",
|
|
2226
|
+
bold: "\u52A0\u7C97",
|
|
2227
|
+
italic: "\u659C\u4F53",
|
|
2228
|
+
strikethrough: "\u5220\u9664\u7EBF",
|
|
2229
|
+
heading: "\u6807\u9898",
|
|
2230
|
+
blockquote: "\u5F15\u7528",
|
|
2231
|
+
unorderedList: "\u65E0\u5E8F\u5217\u8868",
|
|
2232
|
+
orderedList: "\u6709\u5E8F\u5217\u8868",
|
|
2233
|
+
inlineCode: "\u884C\u5185\u4EE3\u7801",
|
|
2234
|
+
codeBlock: "\u4EE3\u7801\u5757",
|
|
2235
|
+
link: "\u94FE\u63A5",
|
|
2236
|
+
image: "\u56FE\u7247",
|
|
2237
|
+
table: "\u8868\u683C",
|
|
2238
|
+
horizontalRule: "\u5206\u9694\u7EBF"
|
|
2015
2239
|
};
|
|
2016
2240
|
function getMarkdownEditorLabels(locale, overrides) {
|
|
2017
2241
|
const defaultLabels = locale?.locale?.toLowerCase().startsWith("zh") ? ZH_CN_MARKDOWN_EDITOR_LABELS : DEFAULT_MARKDOWN_EDITOR_LABELS;
|
|
2018
2242
|
return {
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
previewAriaLabel: overrides?.previewAriaLabel ?? locale?.markdownEditor?.previewAriaLabel ?? defaultLabels.previewAriaLabel,
|
|
2023
|
-
editModeLabel: overrides?.editModeLabel ?? locale?.markdownEditor?.editModeLabel ?? defaultLabels.editModeLabel,
|
|
2024
|
-
splitModeLabel: overrides?.splitModeLabel ?? locale?.markdownEditor?.splitModeLabel ?? defaultLabels.splitModeLabel,
|
|
2025
|
-
previewModeLabel: overrides?.previewModeLabel ?? locale?.markdownEditor?.previewModeLabel ?? defaultLabels.previewModeLabel
|
|
2243
|
+
...defaultLabels,
|
|
2244
|
+
...locale?.markdownEditor,
|
|
2245
|
+
...overrides
|
|
2026
2246
|
};
|
|
2027
2247
|
}
|
|
2028
2248
|
var DEFAULT_RICH_TEXT_EDITOR_LABELS = {
|
|
2029
2249
|
formattingToolbarAriaLabel: "Text formatting",
|
|
2030
|
-
editorAriaLabel: "Rich text editor"
|
|
2250
|
+
editorAriaLabel: "Rich text editor",
|
|
2251
|
+
bold: "Bold",
|
|
2252
|
+
italic: "Italic",
|
|
2253
|
+
underline: "Underline",
|
|
2254
|
+
strikethrough: "Strikethrough",
|
|
2255
|
+
heading1: "H1",
|
|
2256
|
+
heading2: "H2",
|
|
2257
|
+
heading3: "H3",
|
|
2258
|
+
bulletList: "Bullet List",
|
|
2259
|
+
orderedList: "Ordered List",
|
|
2260
|
+
blockquote: "Blockquote",
|
|
2261
|
+
codeBlock: "Code",
|
|
2262
|
+
link: "Link",
|
|
2263
|
+
image: "Image",
|
|
2264
|
+
horizontalRule: "HR",
|
|
2265
|
+
undo: "Undo",
|
|
2266
|
+
redo: "Redo",
|
|
2267
|
+
clear: "Clear"
|
|
2031
2268
|
};
|
|
2032
2269
|
var ZH_CN_RICH_TEXT_EDITOR_LABELS = {
|
|
2033
2270
|
formattingToolbarAriaLabel: "\u5BCC\u6587\u672C\u683C\u5F0F\u5DE5\u5177\u680F",
|
|
2034
|
-
editorAriaLabel: "\u5BCC\u6587\u672C\u7F16\u8F91\u5668"
|
|
2271
|
+
editorAriaLabel: "\u5BCC\u6587\u672C\u7F16\u8F91\u5668",
|
|
2272
|
+
bold: "\u52A0\u7C97",
|
|
2273
|
+
italic: "\u659C\u4F53",
|
|
2274
|
+
underline: "\u4E0B\u5212\u7EBF",
|
|
2275
|
+
strikethrough: "\u5220\u9664\u7EBF",
|
|
2276
|
+
heading1: "\u6807\u98981",
|
|
2277
|
+
heading2: "\u6807\u98982",
|
|
2278
|
+
heading3: "\u6807\u98983",
|
|
2279
|
+
bulletList: "\u65E0\u5E8F\u5217\u8868",
|
|
2280
|
+
orderedList: "\u6709\u5E8F\u5217\u8868",
|
|
2281
|
+
blockquote: "\u5F15\u7528",
|
|
2282
|
+
codeBlock: "\u4EE3\u7801",
|
|
2283
|
+
link: "\u94FE\u63A5",
|
|
2284
|
+
image: "\u56FE\u7247",
|
|
2285
|
+
horizontalRule: "\u5206\u9694\u7EBF",
|
|
2286
|
+
undo: "\u64A4\u9500",
|
|
2287
|
+
redo: "\u91CD\u505A",
|
|
2288
|
+
clear: "\u6E05\u9664\u683C\u5F0F"
|
|
2035
2289
|
};
|
|
2036
2290
|
function getRichTextEditorLabels(locale, overrides) {
|
|
2037
2291
|
const defaultLabels = locale?.locale?.toLowerCase().startsWith("zh") ? ZH_CN_RICH_TEXT_EDITOR_LABELS : DEFAULT_RICH_TEXT_EDITOR_LABELS;
|
|
2038
2292
|
return {
|
|
2039
|
-
|
|
2040
|
-
|
|
2293
|
+
...defaultLabels,
|
|
2294
|
+
...locale?.richTextEditor,
|
|
2295
|
+
...overrides
|
|
2041
2296
|
};
|
|
2042
2297
|
}
|
|
2043
2298
|
var DEFAULT_CRON_EDITOR_LABELS = {
|
|
@@ -3066,8 +3321,61 @@ var enUS = {
|
|
|
3066
3321
|
dragHintText: "Drag to move",
|
|
3067
3322
|
boardAriaLabel: "Task Board"
|
|
3068
3323
|
},
|
|
3324
|
+
chatWindow: {
|
|
3325
|
+
emptyText: "No messages",
|
|
3326
|
+
sendText: "Send",
|
|
3327
|
+
placeholder: "Type a message",
|
|
3328
|
+
sendingText: "Sending",
|
|
3329
|
+
sentText: "Delivered",
|
|
3330
|
+
failedText: "Failed to send"
|
|
3331
|
+
},
|
|
3332
|
+
code: {
|
|
3333
|
+
copyLabel: "Copy",
|
|
3334
|
+
copiedLabel: "Copied",
|
|
3335
|
+
copyFailedLabel: "Copy failed"
|
|
3336
|
+
},
|
|
3337
|
+
commentThread: {
|
|
3338
|
+
emptyText: "No comments",
|
|
3339
|
+
replyPlaceholder: "Write a reply...",
|
|
3340
|
+
replyButtonText: "Reply",
|
|
3341
|
+
cancelReplyText: "Cancel",
|
|
3342
|
+
likeText: "Like",
|
|
3343
|
+
likedText: "Liked",
|
|
3344
|
+
replyText: "Reply",
|
|
3345
|
+
moreText: "More",
|
|
3346
|
+
loadMoreText: "Load more",
|
|
3347
|
+
collapseRepliesText: "\u25BE Collapse replies",
|
|
3348
|
+
expandRepliesText: "\u25B8 Expand {count} replies"
|
|
3349
|
+
},
|
|
3350
|
+
activityFeed: {
|
|
3351
|
+
emptyText: "No activity",
|
|
3352
|
+
loadingText: "Loading..."
|
|
3353
|
+
},
|
|
3354
|
+
notificationCenter: {
|
|
3355
|
+
title: "Notifications",
|
|
3356
|
+
emptyText: "No notifications",
|
|
3357
|
+
loadingText: "Loading...",
|
|
3358
|
+
allLabel: "All",
|
|
3359
|
+
unreadLabel: "Unread",
|
|
3360
|
+
readLabel: "Read",
|
|
3361
|
+
markAllReadText: "Mark all as read",
|
|
3362
|
+
markReadText: "Mark as read",
|
|
3363
|
+
markUnreadText: "Mark as unread"
|
|
3364
|
+
},
|
|
3069
3365
|
select: {
|
|
3070
|
-
doneText: "Done"
|
|
3366
|
+
doneText: "Done",
|
|
3367
|
+
placeholder: "Select an option",
|
|
3368
|
+
emptyText: "No options found"
|
|
3369
|
+
},
|
|
3370
|
+
colorPicker: {
|
|
3371
|
+
trigger: "Pick color",
|
|
3372
|
+
panelTitle: "Color",
|
|
3373
|
+
clear: "Clear",
|
|
3374
|
+
hue: "Hue",
|
|
3375
|
+
alpha: "Alpha",
|
|
3376
|
+
value: "Color value",
|
|
3377
|
+
preview: "Color preview",
|
|
3378
|
+
selectPreset: "Select {color}"
|
|
3071
3379
|
},
|
|
3072
3380
|
tabs: {
|
|
3073
3381
|
addTabAriaLabel: "Add tab",
|
|
@@ -3108,11 +3416,41 @@ var enUS = {
|
|
|
3108
3416
|
previewAriaLabel: "Markdown preview",
|
|
3109
3417
|
editModeLabel: "Edit",
|
|
3110
3418
|
splitModeLabel: "Split",
|
|
3111
|
-
previewModeLabel: "Preview"
|
|
3419
|
+
previewModeLabel: "Preview",
|
|
3420
|
+
bold: "Bold",
|
|
3421
|
+
italic: "Italic",
|
|
3422
|
+
strikethrough: "Strikethrough",
|
|
3423
|
+
heading: "Heading",
|
|
3424
|
+
blockquote: "Blockquote",
|
|
3425
|
+
unorderedList: "Bulleted list",
|
|
3426
|
+
orderedList: "Numbered list",
|
|
3427
|
+
inlineCode: "Inline code",
|
|
3428
|
+
codeBlock: "Code block",
|
|
3429
|
+
link: "Link",
|
|
3430
|
+
image: "Image",
|
|
3431
|
+
table: "Table",
|
|
3432
|
+
horizontalRule: "Horizontal rule"
|
|
3112
3433
|
},
|
|
3113
3434
|
richTextEditor: {
|
|
3114
3435
|
formattingToolbarAriaLabel: "Text formatting",
|
|
3115
|
-
editorAriaLabel: "Rich text editor"
|
|
3436
|
+
editorAriaLabel: "Rich text editor",
|
|
3437
|
+
bold: "Bold",
|
|
3438
|
+
italic: "Italic",
|
|
3439
|
+
underline: "Underline",
|
|
3440
|
+
strikethrough: "Strikethrough",
|
|
3441
|
+
heading1: "H1",
|
|
3442
|
+
heading2: "H2",
|
|
3443
|
+
heading3: "H3",
|
|
3444
|
+
bulletList: "Bullet List",
|
|
3445
|
+
orderedList: "Ordered List",
|
|
3446
|
+
blockquote: "Blockquote",
|
|
3447
|
+
codeBlock: "Code",
|
|
3448
|
+
link: "Link",
|
|
3449
|
+
image: "Image",
|
|
3450
|
+
horizontalRule: "HR",
|
|
3451
|
+
undo: "Undo",
|
|
3452
|
+
redo: "Redo",
|
|
3453
|
+
clear: "Clear"
|
|
3116
3454
|
},
|
|
3117
3455
|
cronEditor: {
|
|
3118
3456
|
ariaLabel: "Cron editor",
|
|
@@ -3253,53 +3591,128 @@ var buttonDangerClasses = {
|
|
|
3253
3591
|
var buttonGroupBaseClasses = "inline-flex";
|
|
3254
3592
|
var buttonGroupVerticalClasses = "flex-col";
|
|
3255
3593
|
var buttonGroupHorizontalClasses = "flex-row";
|
|
3256
|
-
var buttonGroupItemClasses = "[
|
|
3257
|
-
var buttonGroupItemVerticalClasses = "[
|
|
3594
|
+
var buttonGroupItemClasses = "[&>*:not(:first-child):not(:last-child)]:!rounded-none [&>*:first-child]:!rounded-r-none [&>*:last-child]:!rounded-l-none [&>*:not(:first-child)]:-ml-px [&>*:focus]:z-10 [&>*:focus]:relative";
|
|
3595
|
+
var buttonGroupItemVerticalClasses = "[&>*:not(:first-child):not(:last-child)]:!rounded-none [&>*:first-child]:!rounded-b-none [&>*:last-child]:!rounded-t-none [&>*:not(:first-child)]:-mt-px [&>*:focus]:z-10 [&>*:focus]:relative";
|
|
3258
3596
|
|
|
3259
3597
|
// src/utils/input-styles.ts
|
|
3260
|
-
var
|
|
3598
|
+
var INPUT_FIELD_BASE_CLASSES = [
|
|
3261
3599
|
"w-full",
|
|
3262
|
-
"
|
|
3263
|
-
"rounded-[var(--tiger-radius-md,0.5rem)]",
|
|
3264
|
-
"bg-[var(--tiger-surface,#ffffff)]",
|
|
3600
|
+
"bg-transparent",
|
|
3265
3601
|
"text-[var(--tiger-text,#111827)]",
|
|
3266
3602
|
"focus:outline-none",
|
|
3267
|
-
"focus:ring-2",
|
|
3268
|
-
"transition-colors",
|
|
3269
|
-
"disabled:bg-[var(--tiger-surface-muted,#f3f4f6)]",
|
|
3270
3603
|
"disabled:text-[var(--tiger-text-muted,#6b7280)]",
|
|
3271
3604
|
"disabled:cursor-not-allowed",
|
|
3272
3605
|
"placeholder:text-[var(--tiger-text-muted,#6b7280)]"
|
|
3273
3606
|
];
|
|
3274
|
-
var
|
|
3607
|
+
var INPUT_CHROME_BASE_CLASSES = [
|
|
3608
|
+
"border",
|
|
3609
|
+
"rounded-[var(--tiger-radius-md,0.5rem)]",
|
|
3610
|
+
"bg-[var(--tiger-surface,#ffffff)]",
|
|
3611
|
+
"transition-colors"
|
|
3612
|
+
];
|
|
3613
|
+
var NATIVE_CHROME_FOCUS_CLASSES = [
|
|
3614
|
+
"focus:ring-2",
|
|
3615
|
+
"disabled:bg-[var(--tiger-surface-muted,#f3f4f6)]"
|
|
3616
|
+
];
|
|
3617
|
+
var WRAPPER_CHROME_FOCUS_CLASSES = [
|
|
3618
|
+
"focus-within:ring-2",
|
|
3619
|
+
"has-[:disabled]:bg-[var(--tiger-surface-muted,#f3f4f6)]"
|
|
3620
|
+
];
|
|
3621
|
+
var NATIVE_STATUS_CLASSES = {
|
|
3275
3622
|
default: "border-[var(--tiger-border,#e5e7eb)] focus:ring-[var(--tiger-primary,#2563eb)]/40 focus:border-transparent",
|
|
3276
3623
|
error: "border-red-500 focus:ring-red-500 focus:border-red-500 text-red-900 placeholder-red-300",
|
|
3277
3624
|
success: "border-green-500 focus:ring-green-500 focus:border-green-500 text-green-900 placeholder-green-300",
|
|
3278
3625
|
warning: "border-yellow-500 focus:ring-yellow-500 focus:border-yellow-500 text-yellow-900 placeholder-yellow-300"
|
|
3279
3626
|
};
|
|
3627
|
+
var WRAPPER_STATUS_CLASSES = {
|
|
3628
|
+
default: "border-[var(--tiger-border,#e5e7eb)] focus-within:ring-[var(--tiger-primary,#2563eb)]/40 focus-within:border-transparent",
|
|
3629
|
+
error: "border-red-500 focus-within:ring-red-500 focus-within:border-red-500",
|
|
3630
|
+
success: "border-green-500 focus-within:ring-green-500 focus-within:border-green-500",
|
|
3631
|
+
warning: "border-yellow-500 focus-within:ring-yellow-500 focus-within:border-yellow-500"
|
|
3632
|
+
};
|
|
3633
|
+
var FIELD_STATUS_CLASSES = {
|
|
3634
|
+
default: "",
|
|
3635
|
+
error: "text-red-900 placeholder-red-300",
|
|
3636
|
+
success: "text-green-900 placeholder-green-300",
|
|
3637
|
+
warning: "text-yellow-900 placeholder-yellow-300"
|
|
3638
|
+
};
|
|
3280
3639
|
var INPUT_SIZE_CLASSES = {
|
|
3281
3640
|
sm: "py-1 text-sm",
|
|
3282
3641
|
md: "py-2 text-base",
|
|
3283
3642
|
lg: "py-3 text-lg"
|
|
3284
3643
|
};
|
|
3285
3644
|
var INPUT_PADDING = {
|
|
3286
|
-
sm: {
|
|
3287
|
-
|
|
3288
|
-
|
|
3645
|
+
sm: {
|
|
3646
|
+
left: "pl-2",
|
|
3647
|
+
right: "pr-2",
|
|
3648
|
+
prefixLeft: "pl-8",
|
|
3649
|
+
suffixRight: "pr-8",
|
|
3650
|
+
dualSuffixRight: "pr-16"
|
|
3651
|
+
},
|
|
3652
|
+
md: {
|
|
3653
|
+
left: "pl-3",
|
|
3654
|
+
right: "pr-3",
|
|
3655
|
+
prefixLeft: "pl-10",
|
|
3656
|
+
suffixRight: "pr-10",
|
|
3657
|
+
dualSuffixRight: "pr-20"
|
|
3658
|
+
},
|
|
3659
|
+
lg: {
|
|
3660
|
+
left: "pl-4",
|
|
3661
|
+
right: "pr-4",
|
|
3662
|
+
prefixLeft: "pl-12",
|
|
3663
|
+
suffixRight: "pr-12",
|
|
3664
|
+
dualSuffixRight: "pr-24"
|
|
3665
|
+
}
|
|
3289
3666
|
};
|
|
3290
|
-
|
|
3291
|
-
|
|
3667
|
+
var INPUT_SUFFIX_SLOT_INSET = {
|
|
3668
|
+
sm: "right-8",
|
|
3669
|
+
md: "right-10",
|
|
3670
|
+
lg: "right-12"
|
|
3671
|
+
};
|
|
3672
|
+
function getInputLayoutClasses(options = {}) {
|
|
3673
|
+
const { size: size2 = "md", hasPrefix, hasSuffix, hasDualSuffix } = options;
|
|
3292
3674
|
const pad = INPUT_PADDING[size2];
|
|
3293
3675
|
return classNames(
|
|
3294
|
-
...BASE_INPUT_CLASSES,
|
|
3295
3676
|
INPUT_SIZE_CLASSES[size2],
|
|
3296
|
-
STATUS_CLASSES[status],
|
|
3297
3677
|
hasPrefix ? pad.prefixLeft : pad.left,
|
|
3298
|
-
hasSuffix ? pad.suffixRight : pad.right
|
|
3678
|
+
hasDualSuffix ? pad.dualSuffixRight : hasSuffix ? pad.suffixRight : pad.right
|
|
3679
|
+
);
|
|
3680
|
+
}
|
|
3681
|
+
function getInputChromeClasses(status = "default") {
|
|
3682
|
+
return classNames(
|
|
3683
|
+
...INPUT_CHROME_BASE_CLASSES,
|
|
3684
|
+
...WRAPPER_CHROME_FOCUS_CLASSES,
|
|
3685
|
+
WRAPPER_STATUS_CLASSES[status]
|
|
3686
|
+
);
|
|
3687
|
+
}
|
|
3688
|
+
function getInputFieldClasses(options = {}) {
|
|
3689
|
+
const { status = "default" } = options;
|
|
3690
|
+
return classNames(
|
|
3691
|
+
...INPUT_FIELD_BASE_CLASSES,
|
|
3692
|
+
FIELD_STATUS_CLASSES[status],
|
|
3693
|
+
getInputLayoutClasses(options)
|
|
3694
|
+
);
|
|
3695
|
+
}
|
|
3696
|
+
function getInputClasses(options = {}) {
|
|
3697
|
+
const { status = "default" } = options;
|
|
3698
|
+
return classNames(
|
|
3699
|
+
"w-full",
|
|
3700
|
+
...INPUT_CHROME_BASE_CLASSES,
|
|
3701
|
+
"text-[var(--tiger-text,#111827)]",
|
|
3702
|
+
"focus:outline-none",
|
|
3703
|
+
...NATIVE_CHROME_FOCUS_CLASSES,
|
|
3704
|
+
"disabled:text-[var(--tiger-text-muted,#6b7280)]",
|
|
3705
|
+
"disabled:cursor-not-allowed",
|
|
3706
|
+
"placeholder:text-[var(--tiger-text-muted,#6b7280)]",
|
|
3707
|
+
NATIVE_STATUS_CLASSES[status],
|
|
3708
|
+
getInputLayoutClasses(options)
|
|
3299
3709
|
);
|
|
3300
3710
|
}
|
|
3301
|
-
function getInputWrapperClasses() {
|
|
3302
|
-
return
|
|
3711
|
+
function getInputWrapperClasses(status) {
|
|
3712
|
+
return classNames(
|
|
3713
|
+
"relative w-full",
|
|
3714
|
+
status !== void 0 ? getInputChromeClasses(status) : void 0
|
|
3715
|
+
);
|
|
3303
3716
|
}
|
|
3304
3717
|
function getInputAffixClasses(position, size2 = "md") {
|
|
3305
3718
|
const base = "absolute top-0 bottom-0 flex items-center justify-center text-gray-500";
|
|
@@ -3311,26 +3724,23 @@ function getInputAffixClasses(position, size2 = "md") {
|
|
|
3311
3724
|
}[size2];
|
|
3312
3725
|
return classNames(base, posClass, widthClass);
|
|
3313
3726
|
}
|
|
3314
|
-
function getInputErrorClasses(
|
|
3315
|
-
return classNames(
|
|
3316
|
-
"absolute inset-y-0 right-0 flex items-center pointer-events-none",
|
|
3317
|
-
INPUT_PADDING[size2].right,
|
|
3318
|
-
"text-red-500 text-sm"
|
|
3319
|
-
);
|
|
3727
|
+
function getInputErrorClasses(_size = "md") {
|
|
3728
|
+
return classNames("text-red-500 text-sm mt-1 text-left break-words");
|
|
3320
3729
|
}
|
|
3321
|
-
function
|
|
3730
|
+
function getInputTrailingButtonClasses(size2, rightClass) {
|
|
3322
3731
|
return classNames(
|
|
3323
|
-
"absolute inset-y-0
|
|
3732
|
+
"absolute inset-y-0 flex items-center cursor-pointer",
|
|
3733
|
+
rightClass,
|
|
3324
3734
|
"text-[var(--tiger-text-muted,#6b7280)] hover:text-[var(--tiger-text,#111827)]",
|
|
3325
3735
|
INPUT_PADDING[size2].right
|
|
3326
3736
|
);
|
|
3327
3737
|
}
|
|
3738
|
+
function getInputClearButtonClasses(size2 = "md", options = {}) {
|
|
3739
|
+
const rightClass = options.offset ? INPUT_SUFFIX_SLOT_INSET[size2] : "right-0";
|
|
3740
|
+
return getInputTrailingButtonClasses(size2, rightClass);
|
|
3741
|
+
}
|
|
3328
3742
|
function getInputPasswordToggleClasses(size2 = "md") {
|
|
3329
|
-
return
|
|
3330
|
-
"absolute inset-y-0 right-0 flex items-center cursor-pointer",
|
|
3331
|
-
"text-[var(--tiger-text-muted,#6b7280)] hover:text-[var(--tiger-text,#111827)]",
|
|
3332
|
-
INPUT_PADDING[size2].right
|
|
3333
|
-
);
|
|
3743
|
+
return getInputTrailingButtonClasses(size2, "right-0");
|
|
3334
3744
|
}
|
|
3335
3745
|
function getInputCountClasses(isOverLimit = false) {
|
|
3336
3746
|
return classNames(
|
|
@@ -3355,7 +3765,7 @@ function getInputNumberWrapperClasses(disabled) {
|
|
|
3355
3765
|
disabled ? "bg-[var(--tiger-surface-muted,#f3f4f6)] cursor-not-allowed opacity-60" : "hover:border-[var(--tiger-primary,#2563eb)]"
|
|
3356
3766
|
);
|
|
3357
3767
|
}
|
|
3358
|
-
var
|
|
3768
|
+
var WRAPPER_STATUS_CLASSES2 = {
|
|
3359
3769
|
default: "border-[var(--tiger-border,#e5e7eb)]",
|
|
3360
3770
|
error: "border-red-500",
|
|
3361
3771
|
success: "border-green-500",
|
|
@@ -3368,7 +3778,7 @@ var WRAPPER_FOCUS_STATUS_CLASSES = {
|
|
|
3368
3778
|
warning: "ring-yellow-500"
|
|
3369
3779
|
};
|
|
3370
3780
|
function getInputNumberStatusClasses(status = "default") {
|
|
3371
|
-
return
|
|
3781
|
+
return WRAPPER_STATUS_CLASSES2[status];
|
|
3372
3782
|
}
|
|
3373
3783
|
function getInputNumberFocusRingColor(status = "default") {
|
|
3374
3784
|
return WRAPPER_FOCUS_STATUS_CLASSES[status];
|
|
@@ -4115,11 +4525,26 @@ var radioGroupDefaultClasses = "space-y-2";
|
|
|
4115
4525
|
var getRadioGroupClasses = ({ className } = {}) => classNames(className, !className && radioGroupDefaultClasses);
|
|
4116
4526
|
|
|
4117
4527
|
// src/utils/date-utils.ts
|
|
4528
|
+
var DATE_ONLY_ISO_RE = /^\s*(\d{4})-(\d{2})-(\d{2})\s*$/;
|
|
4529
|
+
function parseDateOnlyLocal(value) {
|
|
4530
|
+
const match = DATE_ONLY_ISO_RE.exec(value);
|
|
4531
|
+
if (!match) return void 0;
|
|
4532
|
+
const year = Number(match[1]);
|
|
4533
|
+
const month = Number(match[2]);
|
|
4534
|
+
const day = Number(match[3]);
|
|
4535
|
+
const local = new Date(year, month - 1, day);
|
|
4536
|
+
if (local.getFullYear() !== year || local.getMonth() !== month - 1 || local.getDate() !== day) {
|
|
4537
|
+
return null;
|
|
4538
|
+
}
|
|
4539
|
+
return local;
|
|
4540
|
+
}
|
|
4118
4541
|
function parseDate(value) {
|
|
4119
4542
|
if (!value) return null;
|
|
4120
4543
|
if (value instanceof Date) {
|
|
4121
4544
|
return isNaN(value.getTime()) ? null : value;
|
|
4122
4545
|
}
|
|
4546
|
+
const dateOnly = parseDateOnlyLocal(value);
|
|
4547
|
+
if (dateOnly !== void 0) return dateOnly;
|
|
4123
4548
|
const parsed = new Date(value);
|
|
4124
4549
|
return isNaN(parsed.getTime()) ? null : parsed;
|
|
4125
4550
|
}
|
|
@@ -4908,7 +5333,7 @@ function getUploadButtonClasses(disabled) {
|
|
|
4908
5333
|
"px-4",
|
|
4909
5334
|
"py-2",
|
|
4910
5335
|
"border",
|
|
4911
|
-
"border-
|
|
5336
|
+
"border-[var(--tiger-border,#d1d5db)]",
|
|
4912
5337
|
"rounded-[var(--tiger-radius-md,0.5rem)]",
|
|
4913
5338
|
"text-sm",
|
|
4914
5339
|
"font-medium",
|
|
@@ -4916,7 +5341,7 @@ function getUploadButtonClasses(disabled) {
|
|
|
4916
5341
|
"duration-200"
|
|
4917
5342
|
];
|
|
4918
5343
|
const stateClasses = disabled ? ["bg-gray-100", "text-gray-400", "cursor-not-allowed"] : [
|
|
4919
|
-
"bg-
|
|
5344
|
+
"bg-[var(--tiger-surface,#ffffff)]",
|
|
4920
5345
|
"text-gray-700",
|
|
4921
5346
|
"hover:bg-gray-50",
|
|
4922
5347
|
"focus:outline-none",
|
|
@@ -4960,7 +5385,7 @@ function getDragAreaClasses(isDragging, disabled) {
|
|
|
4960
5385
|
];
|
|
4961
5386
|
} else {
|
|
4962
5387
|
stateClasses = [
|
|
4963
|
-
"border-
|
|
5388
|
+
"border-[var(--tiger-border,#d1d5db)]",
|
|
4964
5389
|
"hover:border-[var(--tiger-primary,#2563eb)]",
|
|
4965
5390
|
"hover:bg-gray-50",
|
|
4966
5391
|
"cursor-pointer",
|
|
@@ -4976,9 +5401,9 @@ var FILE_LIST_STATUS_CLASSES = {
|
|
|
4976
5401
|
error: ["bg-red-50", "text-red-700", "hover:bg-red-100"]
|
|
4977
5402
|
};
|
|
4978
5403
|
var PICTURE_CARD_STATUS_CLASSES = {
|
|
4979
|
-
ready: ["border-
|
|
5404
|
+
ready: ["border-[var(--tiger-border,#d1d5db)]"],
|
|
4980
5405
|
uploading: ["border-blue-400", "bg-blue-50"],
|
|
4981
|
-
success: ["border-
|
|
5406
|
+
success: ["border-[var(--tiger-border,#d1d5db)]", "hover:border-blue-400"],
|
|
4982
5407
|
error: ["border-red-400", "bg-red-50"]
|
|
4983
5408
|
};
|
|
4984
5409
|
function getFileListItemClasses(status) {
|
|
@@ -5250,7 +5675,7 @@ function getSidebarStyle(collapsed, width = "256px", collapsedWidth = "64px") {
|
|
|
5250
5675
|
const w = collapsed ? collapsedWidth : width;
|
|
5251
5676
|
return { width: w, minWidth: w };
|
|
5252
5677
|
}
|
|
5253
|
-
var layoutContentClasses = "tiger-content flex-1 bg-[var(--tiger-layout-content-bg,#f9fafb)]";
|
|
5678
|
+
var layoutContentClasses = "tiger-content flex-1 bg-[var(--tiger-layout-content-bg,var(--tiger-surface-muted,#f9fafb))]";
|
|
5254
5679
|
function getLayoutContentClasses(padding = true) {
|
|
5255
5680
|
return classNames(
|
|
5256
5681
|
layoutContentClasses,
|
|
@@ -5665,6 +6090,7 @@ function getSortIconClasses(active) {
|
|
|
5665
6090
|
active ? "text-[var(--tiger-primary,#2563eb)]" : "text-gray-400"
|
|
5666
6091
|
);
|
|
5667
6092
|
}
|
|
6093
|
+
var tableSortButtonClasses = "inline-flex items-center appearance-none border-0 bg-transparent p-0 font-[inherit] text-inherit cursor-pointer";
|
|
5668
6094
|
var tableEmptyStateClasses = "text-center py-12 text-[var(--tiger-text-muted,#6b7280)]";
|
|
5669
6095
|
var tableLoadingOverlayClasses = classNames(
|
|
5670
6096
|
"absolute inset-0 bg-[var(--tiger-surface,#ffffff)]/80 flex items-center justify-center z-20"
|
|
@@ -5688,13 +6114,18 @@ function defaultSortFn(a, b) {
|
|
|
5688
6114
|
}
|
|
5689
6115
|
return String(a).localeCompare(String(b));
|
|
5690
6116
|
}
|
|
5691
|
-
function
|
|
6117
|
+
function getTableColumnDataKey(column) {
|
|
6118
|
+
return column.dataKey || column.key;
|
|
6119
|
+
}
|
|
6120
|
+
function sortData(data, key, direction, sortFn, columns) {
|
|
5692
6121
|
if (!direction || !key) {
|
|
5693
6122
|
return data;
|
|
5694
6123
|
}
|
|
6124
|
+
const column = columns?.find((col) => col.key === key);
|
|
6125
|
+
const fieldKey = column ? getTableColumnDataKey(column) : key;
|
|
5695
6126
|
const sortedData = [...data].sort((a, b) => {
|
|
5696
|
-
const aValue = a[
|
|
5697
|
-
const bValue = b[
|
|
6127
|
+
const aValue = a[fieldKey];
|
|
6128
|
+
const bValue = b[fieldKey];
|
|
5698
6129
|
const compareResult = sortFn ? sortFn(aValue, bValue) : defaultSortFn(aValue, bValue);
|
|
5699
6130
|
return direction === "asc" ? compareResult : -compareResult;
|
|
5700
6131
|
});
|
|
@@ -5721,8 +6152,10 @@ function filterTableData(data, columns, filters) {
|
|
|
5721
6152
|
if (!filters || Object.keys(filters).length === 0) {
|
|
5722
6153
|
return data;
|
|
5723
6154
|
}
|
|
6155
|
+
const columnByKey = /* @__PURE__ */ new Map();
|
|
5724
6156
|
const filterFnByKey = /* @__PURE__ */ new Map();
|
|
5725
6157
|
for (const column of columns) {
|
|
6158
|
+
columnByKey.set(column.key, column);
|
|
5726
6159
|
if (column.filter?.filterFn) {
|
|
5727
6160
|
filterFnByKey.set(column.key, column.filter.filterFn);
|
|
5728
6161
|
}
|
|
@@ -5732,7 +6165,9 @@ function filterTableData(data, columns, filters) {
|
|
|
5732
6165
|
if (filterValue === "" || filterValue === null || filterValue === void 0) {
|
|
5733
6166
|
return true;
|
|
5734
6167
|
}
|
|
5735
|
-
const
|
|
6168
|
+
const column = columnByKey.get(key);
|
|
6169
|
+
const fieldKey = column ? getTableColumnDataKey(column) : key;
|
|
6170
|
+
const cellValue = record[fieldKey];
|
|
5736
6171
|
const customFn = filterFnByKey.get(key);
|
|
5737
6172
|
if (customFn) {
|
|
5738
6173
|
return customFn(cellValue, filterValue);
|
|
@@ -5991,6 +6426,9 @@ function getInitials(name) {
|
|
|
5991
6426
|
const words = trimmed.split(/\s+/).filter(Boolean);
|
|
5992
6427
|
if (words.length === 1) {
|
|
5993
6428
|
const firstWord = words[0];
|
|
6429
|
+
if (firstWord.length <= 2) {
|
|
6430
|
+
return firstWord.toUpperCase();
|
|
6431
|
+
}
|
|
5994
6432
|
const hasNonASCII = /[^\x20-\x7E]/.test(firstWord);
|
|
5995
6433
|
return hasNonASCII ? firstWord.slice(0, 2).toUpperCase() : firstWord.charAt(0).toUpperCase();
|
|
5996
6434
|
}
|
|
@@ -6411,10 +6849,10 @@ function getTreeKeyboardAction(ctx) {
|
|
|
6411
6849
|
return null;
|
|
6412
6850
|
}
|
|
6413
6851
|
}
|
|
6414
|
-
var treeBaseClasses = "w-full bg-
|
|
6852
|
+
var treeBaseClasses = "w-full bg-[var(--tiger-tree-bg,var(--tiger-surface,#ffffff))] text-[var(--tiger-text,#111827)] rounded-[var(--tiger-radius-md,0.5rem)]";
|
|
6415
6853
|
var treeNodeWrapperClasses = "select-none";
|
|
6416
6854
|
var treeNodeContentClasses = "flex items-center px-2 py-1.5 cursor-pointer rounded transition-colors duration-200";
|
|
6417
|
-
var treeNodeHoverClasses = "hover:bg-
|
|
6855
|
+
var treeNodeHoverClasses = "hover:bg-[var(--tiger-tree-node-hover,var(--tiger-surface-muted,#f9fafb))]";
|
|
6418
6856
|
var treeNodeSelectedClasses = "bg-[color-mix(in_srgb,var(--tiger-primary,#2563eb)_10%,transparent)] text-[var(--tiger-primary,#2563eb)]";
|
|
6419
6857
|
var treeNodeDisabledClasses = "opacity-50 cursor-not-allowed";
|
|
6420
6858
|
var treeNodeIndentClasses = "inline-block w-6";
|
|
@@ -6425,8 +6863,8 @@ var treeNodeIconClasses = "mr-2 flex-shrink-0";
|
|
|
6425
6863
|
var treeNodeLabelClasses = "flex-1 truncate";
|
|
6426
6864
|
var treeNodeChildrenClasses = "ml-6";
|
|
6427
6865
|
var treeLoadingClasses = "inline-block ml-2 animate-spin h-4 w-4";
|
|
6428
|
-
var treeEmptyStateClasses = "py-8 text-center text-
|
|
6429
|
-
var treeLineClasses = "border-l border-
|
|
6866
|
+
var treeEmptyStateClasses = "py-8 text-center text-[var(--tiger-text-secondary,#6b7280)]";
|
|
6867
|
+
var treeLineClasses = "border-l border-[var(--tiger-border,#e5e7eb)]";
|
|
6430
6868
|
function getTreeNodeClasses(selected, disabled, blockNode = false) {
|
|
6431
6869
|
return classNames(
|
|
6432
6870
|
treeNodeContentClasses,
|
|
@@ -6667,10 +7105,10 @@ function checkedSetsFromState(state) {
|
|
|
6667
7105
|
}
|
|
6668
7106
|
|
|
6669
7107
|
// src/utils/skeleton-utils.ts
|
|
6670
|
-
var skeletonBaseClasses = "bg-[var(--tiger-skeleton-bg,#
|
|
7108
|
+
var skeletonBaseClasses = "bg-[var(--tiger-skeleton-bg,var(--tiger-surface-muted,#f9fafb))] rounded-[var(--tiger-radius-sm,0.375rem)]";
|
|
6671
7109
|
var skeletonAnimationClasses = {
|
|
6672
7110
|
pulse: "animate-pulse",
|
|
6673
|
-
wave: "animate-pulse bg-gradient-to-r from-[var(--tiger-skeleton-bg,#
|
|
7111
|
+
wave: "animate-pulse bg-gradient-to-r from-[var(--tiger-skeleton-bg,var(--tiger-surface-muted,#f9fafb))] via-[var(--tiger-skeleton-bg-alt,var(--tiger-border,#e5e7eb))] to-[var(--tiger-skeleton-bg,var(--tiger-surface-muted,#f9fafb))] bg-[length:200%_100%]",
|
|
6674
7112
|
none: ""
|
|
6675
7113
|
};
|
|
6676
7114
|
var skeletonVariantDefaults = {
|
|
@@ -6965,7 +7403,7 @@ var menuCollapsedModeClasses = {
|
|
|
6965
7403
|
vertical: "flex-col border-r",
|
|
6966
7404
|
inline: "flex-col"
|
|
6967
7405
|
};
|
|
6968
|
-
var menuLightThemeClasses = "
|
|
7406
|
+
var menuLightThemeClasses = "";
|
|
6969
7407
|
var menuDarkThemeClasses = "[--tiger-surface:#111827] [--tiger-text:#f9fafb] [--tiger-text-muted:#9ca3af] [--tiger-border:#374151] [--tiger-surface-muted:#1f2937] [--tiger-outline-bg-hover:#2563eb1a] [--tiger-ghost-bg-hover:#2563eb1a]";
|
|
6970
7408
|
var menuItemBaseClasses = "flex w-full items-center px-4 py-2 text-left bg-transparent border-0 cursor-pointer transition-colors duration-200 select-none appearance-none focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--tiger-focus-ring,var(--tiger-primary,#2563eb))]/40 focus-visible:ring-inset active:opacity-90";
|
|
6971
7409
|
var menuItemHoverLightClasses = "hover:bg-[var(--tiger-surface-muted,#f9fafb)]";
|
|
@@ -6996,7 +7434,10 @@ function themeClass(theme, light, dark) {
|
|
|
6996
7434
|
function getMenuClasses(mode, theme, collapsed) {
|
|
6997
7435
|
const modeClasses = collapsed && (mode === "vertical" || mode === "inline") ? menuCollapsedModeClasses[mode] : menuModeClasses[mode];
|
|
6998
7436
|
const classes = [menuBaseClasses, modeClasses];
|
|
6999
|
-
|
|
7437
|
+
const themeClasses = themeClass(theme, menuLightThemeClasses, menuDarkThemeClasses);
|
|
7438
|
+
if (themeClasses) {
|
|
7439
|
+
classes.push(themeClasses);
|
|
7440
|
+
}
|
|
7000
7441
|
if (collapsed && (mode === "vertical" || mode === "inline")) {
|
|
7001
7442
|
classes.push(menuCollapsedClasses);
|
|
7002
7443
|
}
|
|
@@ -7622,8 +8063,8 @@ function getPageNumbers(current, totalPages, showLessItems = false) {
|
|
|
7622
8063
|
}
|
|
7623
8064
|
return pages;
|
|
7624
8065
|
}
|
|
7625
|
-
function defaultTotalText(total,
|
|
7626
|
-
return
|
|
8066
|
+
function defaultTotalText(total, range) {
|
|
8067
|
+
return formatPaginationTotal(DEFAULT_PAGINATION_LABELS.totalText, total, range);
|
|
7627
8068
|
}
|
|
7628
8069
|
var PAGINATION_FULL_MODE_PAGE_THRESHOLD = 3;
|
|
7629
8070
|
function resolvePaginationDisplayMode(totalPages, config) {
|
|
@@ -8229,31 +8670,31 @@ var messagePositionClasses = {
|
|
|
8229
8670
|
var messageBaseClasses = "flex items-center gap-3 px-4 py-3 rounded-[var(--tiger-radius-lg,0.75rem)] shadow-lg border pointer-events-auto transition-all duration-300 ease-in-out";
|
|
8230
8671
|
var defaultMessageThemeColors = {
|
|
8231
8672
|
info: {
|
|
8232
|
-
bg: "bg-[var(--tiger-message-info-bg,#
|
|
8233
|
-
border: "border-[var(--tiger-message-info-border,#
|
|
8234
|
-
text: "text-[var(--tiger-message-info-text,#
|
|
8235
|
-
icon: "text-[var(--tiger-message-info-icon,#3b82f6)]"
|
|
8673
|
+
bg: "bg-[var(--tiger-message-info-bg,var(--tiger-surface,#ffffff))]",
|
|
8674
|
+
border: "border-[var(--tiger-message-info-border,var(--tiger-border,#e5e7eb))]",
|
|
8675
|
+
text: "text-[var(--tiger-message-info-text,var(--tiger-info,#3b82f6))]",
|
|
8676
|
+
icon: "text-[var(--tiger-message-info-icon,var(--tiger-info,#3b82f6))]"
|
|
8236
8677
|
},
|
|
8237
8678
|
success: {
|
|
8238
|
-
bg: "bg-[var(--tiger-message-success-bg,#
|
|
8239
|
-
border: "border-[var(--tiger-message-success-border,#
|
|
8240
|
-
text: "text-[var(--tiger-message-success-text,#
|
|
8241
|
-
icon: "text-[var(--tiger-message-success-icon,#
|
|
8679
|
+
bg: "bg-[var(--tiger-message-success-bg,var(--tiger-surface,#ffffff))]",
|
|
8680
|
+
border: "border-[var(--tiger-message-success-border,var(--tiger-border,#e5e7eb))]",
|
|
8681
|
+
text: "text-[var(--tiger-message-success-text,var(--tiger-success,#16a34a))]",
|
|
8682
|
+
icon: "text-[var(--tiger-message-success-icon,var(--tiger-success,#16a34a))]"
|
|
8242
8683
|
},
|
|
8243
8684
|
warning: {
|
|
8244
|
-
bg: "bg-[var(--tiger-message-warning-bg,#
|
|
8245
|
-
border: "border-[var(--tiger-message-warning-border,#
|
|
8246
|
-
text: "text-[var(--tiger-message-warning-text,#
|
|
8247
|
-
icon: "text-[var(--tiger-message-warning-icon,#
|
|
8685
|
+
bg: "bg-[var(--tiger-message-warning-bg,var(--tiger-surface,#ffffff))]",
|
|
8686
|
+
border: "border-[var(--tiger-message-warning-border,var(--tiger-border,#e5e7eb))]",
|
|
8687
|
+
text: "text-[var(--tiger-message-warning-text,var(--tiger-warning,#d97706))]",
|
|
8688
|
+
icon: "text-[var(--tiger-message-warning-icon,var(--tiger-warning,#d97706))]"
|
|
8248
8689
|
},
|
|
8249
8690
|
error: {
|
|
8250
|
-
bg: "bg-[var(--tiger-message-error-bg,#
|
|
8251
|
-
border: "border-[var(--tiger-message-error-border,#
|
|
8252
|
-
text: "text-[var(--tiger-message-error-text,#
|
|
8253
|
-
icon: "text-[var(--tiger-message-error-icon,#
|
|
8691
|
+
bg: "bg-[var(--tiger-message-error-bg,var(--tiger-surface,#ffffff))]",
|
|
8692
|
+
border: "border-[var(--tiger-message-error-border,var(--tiger-border,#e5e7eb))]",
|
|
8693
|
+
text: "text-[var(--tiger-message-error-text,var(--tiger-error,#dc2626))]",
|
|
8694
|
+
icon: "text-[var(--tiger-message-error-icon,var(--tiger-error,#dc2626))]"
|
|
8254
8695
|
},
|
|
8255
8696
|
loading: {
|
|
8256
|
-
bg: "bg-[var(--tiger-message-loading-bg,var(--tiger-surface-muted,#
|
|
8697
|
+
bg: "bg-[var(--tiger-message-loading-bg,var(--tiger-surface-muted,#f9fafb))]",
|
|
8257
8698
|
border: "border-[var(--tiger-message-loading-border,var(--tiger-border,#e5e7eb))]",
|
|
8258
8699
|
text: "text-[var(--tiger-message-loading-text,var(--tiger-text,#111827))]",
|
|
8259
8700
|
icon: "text-[var(--tiger-message-loading-icon,var(--tiger-text-muted,#6b7280))]"
|
|
@@ -8420,6 +8861,7 @@ var loadingColorClasses = {
|
|
|
8420
8861
|
};
|
|
8421
8862
|
var loadingContainerBaseClasses = "inline-flex flex-col items-center justify-center gap-2";
|
|
8422
8863
|
var loadingFullscreenBaseClasses = "fixed inset-0 z-50 flex items-center justify-center";
|
|
8864
|
+
var DEFAULT_LOADING_BACKGROUND = "var(--tiger-loading-mask, color-mix(in srgb, var(--tiger-surface, #ffffff) 90%, transparent))";
|
|
8423
8865
|
var loadingSpinnerBaseClasses = "animate-spin";
|
|
8424
8866
|
var loadingOverlaySpinnerBaseClasses = "animate-spin h-8 w-8 text-[var(--tiger-primary,#2563eb)]";
|
|
8425
8867
|
function getLoadingOverlaySpinnerClasses(customClassName) {
|
|
@@ -8863,6 +9305,59 @@ function createLoadingBarController(hooks = {}) {
|
|
|
8863
9305
|
}
|
|
8864
9306
|
|
|
8865
9307
|
// src/utils/floating-popup-utils.ts
|
|
9308
|
+
var DEFAULT_FLOATING_HOVER_HIDE_DELAY_MS = 100;
|
|
9309
|
+
var DEFAULT_FLOATING_HOVER_SHOW_DELAY_MS = 0;
|
|
9310
|
+
function createFloatingHoverDelayController(options) {
|
|
9311
|
+
const hideDelay = options.hideDelay ?? DEFAULT_FLOATING_HOVER_HIDE_DELAY_MS;
|
|
9312
|
+
const showDelay = options.showDelay ?? DEFAULT_FLOATING_HOVER_SHOW_DELAY_MS;
|
|
9313
|
+
let showTimer = null;
|
|
9314
|
+
let hideTimer = null;
|
|
9315
|
+
const clearShowTimer = () => {
|
|
9316
|
+
if (showTimer === null) return;
|
|
9317
|
+
clearTimeout(showTimer);
|
|
9318
|
+
showTimer = null;
|
|
9319
|
+
};
|
|
9320
|
+
const clearHideTimer = () => {
|
|
9321
|
+
if (hideTimer === null) return;
|
|
9322
|
+
clearTimeout(hideTimer);
|
|
9323
|
+
hideTimer = null;
|
|
9324
|
+
};
|
|
9325
|
+
const cancel = () => {
|
|
9326
|
+
clearShowTimer();
|
|
9327
|
+
clearHideTimer();
|
|
9328
|
+
};
|
|
9329
|
+
const enter = () => {
|
|
9330
|
+
clearHideTimer();
|
|
9331
|
+
if (showDelay <= 0) {
|
|
9332
|
+
clearShowTimer();
|
|
9333
|
+
options.show();
|
|
9334
|
+
return;
|
|
9335
|
+
}
|
|
9336
|
+
if (showTimer !== null) return;
|
|
9337
|
+
showTimer = setTimeout(() => {
|
|
9338
|
+
showTimer = null;
|
|
9339
|
+
options.show();
|
|
9340
|
+
}, showDelay);
|
|
9341
|
+
};
|
|
9342
|
+
const leave = () => {
|
|
9343
|
+
clearShowTimer();
|
|
9344
|
+
if (hideDelay <= 0) {
|
|
9345
|
+
clearHideTimer();
|
|
9346
|
+
options.hide();
|
|
9347
|
+
return;
|
|
9348
|
+
}
|
|
9349
|
+
if (hideTimer !== null) return;
|
|
9350
|
+
hideTimer = setTimeout(() => {
|
|
9351
|
+
hideTimer = null;
|
|
9352
|
+
options.hide();
|
|
9353
|
+
}, hideDelay);
|
|
9354
|
+
};
|
|
9355
|
+
const closeNow = () => {
|
|
9356
|
+
cancel();
|
|
9357
|
+
options.hide();
|
|
9358
|
+
};
|
|
9359
|
+
return { enter, leave, cancel, dispose: cancel, closeNow };
|
|
9360
|
+
}
|
|
8866
9361
|
function createFloatingIdFactory(prefix) {
|
|
8867
9362
|
let counter = 0;
|
|
8868
9363
|
return () => `tiger-${prefix}-${++counter}`;
|
|
@@ -9136,13 +9631,15 @@ var codeBlockContainerClasses = "relative rounded-[var(--tiger-radius-md,0.5rem)
|
|
|
9136
9631
|
var codeBlockPreClasses = "m-0 overflow-auto p-4 text-sm leading-relaxed font-mono whitespace-pre";
|
|
9137
9632
|
var codeBlockCopyButtonBaseClasses = "absolute right-3 top-0 -translate-y-1/2 inline-flex items-center rounded-[var(--tiger-radius-md,0.5rem)] border border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface,#fff)] px-1.5 py-0.5 text-[10px] text-[var(--tiger-text-muted,#6b7280)] shadow-sm transition-colors hover:text-[var(--tiger-text,#111827)] motion-reduce:transition-none";
|
|
9138
9633
|
var codeBlockCopyButtonCopiedClasses = "border-[var(--tiger-primary,#2563eb)] text-[var(--tiger-primary,#2563eb)]";
|
|
9634
|
+
var codeBlockCopyButtonFailedClasses = "border-[var(--tiger-error,#ef4444)] text-[var(--tiger-error,#ef4444)]";
|
|
9139
9635
|
function getCodeBlockContainerClasses(...classes) {
|
|
9140
9636
|
return classNames(codeBlockContainerClasses, ...classes);
|
|
9141
9637
|
}
|
|
9142
|
-
function getCodeBlockCopyButtonClasses(
|
|
9638
|
+
function getCodeBlockCopyButtonClasses(status = "idle", ...classes) {
|
|
9143
9639
|
return classNames(
|
|
9144
9640
|
codeBlockCopyButtonBaseClasses,
|
|
9145
|
-
|
|
9641
|
+
status === "copied" && codeBlockCopyButtonCopiedClasses,
|
|
9642
|
+
status === "failed" && codeBlockCopyButtonFailedClasses,
|
|
9146
9643
|
...classes
|
|
9147
9644
|
);
|
|
9148
9645
|
}
|
|
@@ -9279,7 +9776,7 @@ var textDecorationClasses = {
|
|
|
9279
9776
|
};
|
|
9280
9777
|
var defaultTagThemeColors = {
|
|
9281
9778
|
default: {
|
|
9282
|
-
bg: "bg-[var(--tiger-tag-default-bg,#
|
|
9779
|
+
bg: "bg-[var(--tiger-tag-default-bg,var(--tiger-surface-muted,#f9fafb))]",
|
|
9283
9780
|
text: "text-[var(--tiger-text,#111827)]",
|
|
9284
9781
|
border: "border-[var(--tiger-border,#e5e7eb)]",
|
|
9285
9782
|
closeBgHover: "hover:bg-[var(--tiger-tag-default-close-hover,#e5e7eb)]"
|
|
@@ -9386,44 +9883,44 @@ function getProgressTextColorClasses(variant, colors = defaultProgressThemeColor
|
|
|
9386
9883
|
}
|
|
9387
9884
|
var defaultAlertThemeColors = {
|
|
9388
9885
|
success: {
|
|
9389
|
-
bg: "bg-[var(--tiger-alert-success-bg,#
|
|
9390
|
-
border: "border-[var(--tiger-alert-success-border,#
|
|
9391
|
-
icon: "text-[var(--tiger-alert-success-icon,#
|
|
9392
|
-
title: "text-[var(--tiger-alert-success-title,#
|
|
9393
|
-
description: "text-[var(--tiger-alert-success-description,#
|
|
9394
|
-
closeButton: "text-[var(--tiger-alert-success-close,#
|
|
9395
|
-
closeButtonHover: "hover:bg-[var(--tiger-alert-success-close-hover-bg,#
|
|
9396
|
-
focus: "focus:ring-[color:var(--tiger-alert-success-ring,#
|
|
9886
|
+
bg: "bg-[var(--tiger-alert-success-bg,var(--tiger-surface,#ffffff))]",
|
|
9887
|
+
border: "border-[var(--tiger-alert-success-border,var(--tiger-border,#e5e7eb))]",
|
|
9888
|
+
icon: "text-[var(--tiger-alert-success-icon,var(--tiger-success,#16a34a))]",
|
|
9889
|
+
title: "text-[var(--tiger-alert-success-title,var(--tiger-success,#16a34a))]",
|
|
9890
|
+
description: "text-[var(--tiger-alert-success-description,var(--tiger-text-secondary,#6b7280))]",
|
|
9891
|
+
closeButton: "text-[var(--tiger-alert-success-close,var(--tiger-success,#16a34a))]",
|
|
9892
|
+
closeButtonHover: "hover:bg-[var(--tiger-alert-success-close-hover-bg,var(--tiger-surface-muted,#f9fafb))]",
|
|
9893
|
+
focus: "focus:ring-[color:var(--tiger-alert-success-ring,var(--tiger-success,#16a34a))]"
|
|
9397
9894
|
},
|
|
9398
9895
|
warning: {
|
|
9399
|
-
bg: "bg-[var(--tiger-alert-warning-bg,#
|
|
9400
|
-
border: "border-[var(--tiger-alert-warning-border,#
|
|
9401
|
-
icon: "text-[var(--tiger-alert-warning-icon,#
|
|
9402
|
-
title: "text-[var(--tiger-alert-warning-title,#
|
|
9403
|
-
description: "text-[var(--tiger-alert-warning-description,#
|
|
9404
|
-
closeButton: "text-[var(--tiger-alert-warning-close,#
|
|
9405
|
-
closeButtonHover: "hover:bg-[var(--tiger-alert-warning-close-hover-bg,#
|
|
9406
|
-
focus: "focus:ring-[color:var(--tiger-alert-warning-ring,#
|
|
9896
|
+
bg: "bg-[var(--tiger-alert-warning-bg,var(--tiger-surface,#ffffff))]",
|
|
9897
|
+
border: "border-[var(--tiger-alert-warning-border,var(--tiger-border,#e5e7eb))]",
|
|
9898
|
+
icon: "text-[var(--tiger-alert-warning-icon,var(--tiger-warning,#d97706))]",
|
|
9899
|
+
title: "text-[var(--tiger-alert-warning-title,var(--tiger-warning,#d97706))]",
|
|
9900
|
+
description: "text-[var(--tiger-alert-warning-description,var(--tiger-text-secondary,#6b7280))]",
|
|
9901
|
+
closeButton: "text-[var(--tiger-alert-warning-close,var(--tiger-warning,#d97706))]",
|
|
9902
|
+
closeButtonHover: "hover:bg-[var(--tiger-alert-warning-close-hover-bg,var(--tiger-surface-muted,#f9fafb))]",
|
|
9903
|
+
focus: "focus:ring-[color:var(--tiger-alert-warning-ring,var(--tiger-warning,#d97706))]"
|
|
9407
9904
|
},
|
|
9408
9905
|
error: {
|
|
9409
|
-
bg: "bg-[var(--tiger-alert-error-bg,#
|
|
9410
|
-
border: "border-[var(--tiger-alert-error-border,#
|
|
9411
|
-
icon: "text-[var(--tiger-alert-error-icon,#
|
|
9412
|
-
title: "text-[var(--tiger-alert-error-title,#
|
|
9413
|
-
description: "text-[var(--tiger-alert-error-description,#
|
|
9414
|
-
closeButton: "text-[var(--tiger-alert-error-close,#
|
|
9415
|
-
closeButtonHover: "hover:bg-[var(--tiger-alert-error-close-hover-bg,#
|
|
9416
|
-
focus: "focus:ring-[color:var(--tiger-alert-error-ring,#
|
|
9906
|
+
bg: "bg-[var(--tiger-alert-error-bg,var(--tiger-surface,#ffffff))]",
|
|
9907
|
+
border: "border-[var(--tiger-alert-error-border,var(--tiger-border,#e5e7eb))]",
|
|
9908
|
+
icon: "text-[var(--tiger-alert-error-icon,var(--tiger-error,#dc2626))]",
|
|
9909
|
+
title: "text-[var(--tiger-alert-error-title,var(--tiger-error,#dc2626))]",
|
|
9910
|
+
description: "text-[var(--tiger-alert-error-description,var(--tiger-text-secondary,#6b7280))]",
|
|
9911
|
+
closeButton: "text-[var(--tiger-alert-error-close,var(--tiger-error,#dc2626))]",
|
|
9912
|
+
closeButtonHover: "hover:bg-[var(--tiger-alert-error-close-hover-bg,var(--tiger-surface-muted,#f9fafb))]",
|
|
9913
|
+
focus: "focus:ring-[color:var(--tiger-alert-error-ring,var(--tiger-error,#dc2626))]"
|
|
9417
9914
|
},
|
|
9418
9915
|
info: {
|
|
9419
|
-
bg: "bg-[var(--tiger-alert-info-bg,#
|
|
9420
|
-
border: "border-[var(--tiger-alert-info-border,#
|
|
9421
|
-
icon: "text-[var(--tiger-alert-info-icon,#3b82f6)]",
|
|
9422
|
-
title: "text-[var(--tiger-alert-info-title,#
|
|
9423
|
-
description: "text-[var(--tiger-alert-info-description,#
|
|
9424
|
-
closeButton: "text-[var(--tiger-alert-info-close,#3b82f6)]",
|
|
9425
|
-
closeButtonHover: "hover:bg-[var(--tiger-alert-info-close-hover-bg,#
|
|
9426
|
-
focus: "focus:ring-[color:var(--tiger-alert-info-ring,#3b82f6)]"
|
|
9916
|
+
bg: "bg-[var(--tiger-alert-info-bg,var(--tiger-surface,#ffffff))]",
|
|
9917
|
+
border: "border-[var(--tiger-alert-info-border,var(--tiger-border,#e5e7eb))]",
|
|
9918
|
+
icon: "text-[var(--tiger-alert-info-icon,var(--tiger-info,#3b82f6))]",
|
|
9919
|
+
title: "text-[var(--tiger-alert-info-title,var(--tiger-info,#3b82f6))]",
|
|
9920
|
+
description: "text-[var(--tiger-alert-info-description,var(--tiger-text-secondary,#6b7280))]",
|
|
9921
|
+
closeButton: "text-[var(--tiger-alert-info-close,var(--tiger-info,#3b82f6))]",
|
|
9922
|
+
closeButtonHover: "hover:bg-[var(--tiger-alert-info-close-hover-bg,var(--tiger-surface-muted,#f9fafb))]",
|
|
9923
|
+
focus: "focus:ring-[color:var(--tiger-alert-info-ring,var(--tiger-info,#3b82f6))]"
|
|
9427
9924
|
}
|
|
9428
9925
|
};
|
|
9429
9926
|
function getAlertTypeClasses(type, colors = defaultAlertThemeColors) {
|
|
@@ -9975,7 +10472,7 @@ var nextIconPath = "M9 5l7 7-7 7";
|
|
|
9975
10472
|
var previewCloseIconPath = "M6 18L18 6M6 6l12 12";
|
|
9976
10473
|
var imagePreviewMaskClasses = "fixed inset-0 bg-[var(--tiger-image-mask,rgba(0,0,0,0.85))] transition-opacity";
|
|
9977
10474
|
var imagePreviewWrapperClasses = "fixed inset-0 flex items-center justify-center select-none";
|
|
9978
|
-
var imagePreviewImgClasses = "max-w-none transition-transform duration-150 ease-out cursor-grab active:cursor-grabbing touch-none";
|
|
10475
|
+
var imagePreviewImgClasses = "max-h-[90vh] max-w-[90vw] select-none transition-transform duration-150 ease-out cursor-grab active:cursor-grabbing touch-none";
|
|
9979
10476
|
var imagePreviewToolbarClasses = "absolute bottom-6 left-1/2 -translate-x-1/2 flex items-center gap-2 px-4 py-2 rounded-full bg-[var(--tiger-image-toolbar-bg,rgba(0,0,0,0.6))] text-white";
|
|
9980
10477
|
var imagePreviewToolbarBtnClasses = "flex items-center justify-center w-8 h-8 rounded-full hover:bg-white/20 transition-colors focus:outline-none focus:ring-2 focus:ring-white/50 disabled:opacity-40 disabled:cursor-not-allowed";
|
|
9981
10478
|
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";
|
|
@@ -10676,6 +11173,19 @@ function scrollToAnchor(href, container, targetOffset = 0) {
|
|
|
10676
11173
|
const scrollTarget = container === window ? window : container;
|
|
10677
11174
|
scrollTarget.scrollTo({ top, behavior: "smooth" });
|
|
10678
11175
|
}
|
|
11176
|
+
function findActiveAnchorAtOffsetLine(links, getSectionTop, offsetLine) {
|
|
11177
|
+
if (links.length === 0) {
|
|
11178
|
+
return "";
|
|
11179
|
+
}
|
|
11180
|
+
for (let i = links.length - 1; i >= 0; i--) {
|
|
11181
|
+
const href = links[i];
|
|
11182
|
+
const top = getSectionTop(href);
|
|
11183
|
+
if (top !== null && top <= offsetLine) {
|
|
11184
|
+
return href;
|
|
11185
|
+
}
|
|
11186
|
+
}
|
|
11187
|
+
return links[0] || "";
|
|
11188
|
+
}
|
|
10679
11189
|
function findActiveAnchor(links, container, bounds = 5, targetOffset = 0) {
|
|
10680
11190
|
if (links.length === 0) {
|
|
10681
11191
|
return "";
|
|
@@ -10684,24 +11194,103 @@ function findActiveAnchor(links, container, bounds = 5, targetOffset = 0) {
|
|
|
10684
11194
|
return links[0] || "";
|
|
10685
11195
|
}
|
|
10686
11196
|
const scrollTop = getContainerScrollTop(container);
|
|
10687
|
-
|
|
10688
|
-
|
|
10689
|
-
|
|
10690
|
-
|
|
10691
|
-
const
|
|
10692
|
-
if (
|
|
10693
|
-
return
|
|
11197
|
+
const offsetLine = scrollTop + targetOffset + bounds;
|
|
11198
|
+
return findActiveAnchorAtOffsetLine(
|
|
11199
|
+
links,
|
|
11200
|
+
(href) => {
|
|
11201
|
+
const element = getAnchorTargetElement(href);
|
|
11202
|
+
if (!element) {
|
|
11203
|
+
return null;
|
|
10694
11204
|
}
|
|
11205
|
+
return getElementOffsetTop(element, container);
|
|
11206
|
+
},
|
|
11207
|
+
offsetLine
|
|
11208
|
+
);
|
|
11209
|
+
}
|
|
11210
|
+
var DEFAULT_SCROLL_LOCK_IDLE_MS = 150;
|
|
11211
|
+
var DEFAULT_SCROLL_LOCK_TIMEOUT_MS = 2e3;
|
|
11212
|
+
function createProgrammaticScrollLock(getTarget, options = {}) {
|
|
11213
|
+
const idleMs = options.idleMs ?? DEFAULT_SCROLL_LOCK_IDLE_MS;
|
|
11214
|
+
const timeoutMs = options.timeoutMs ?? DEFAULT_SCROLL_LOCK_TIMEOUT_MS;
|
|
11215
|
+
let locked = false;
|
|
11216
|
+
let idleTimer = null;
|
|
11217
|
+
let safetyTimer = null;
|
|
11218
|
+
let attachedTarget = null;
|
|
11219
|
+
let listeningScrollEnd = false;
|
|
11220
|
+
const clearTimers = () => {
|
|
11221
|
+
if (idleTimer !== null) {
|
|
11222
|
+
clearTimeout(idleTimer);
|
|
11223
|
+
idleTimer = null;
|
|
11224
|
+
}
|
|
11225
|
+
if (safetyTimer !== null) {
|
|
11226
|
+
clearTimeout(safetyTimer);
|
|
11227
|
+
safetyTimer = null;
|
|
11228
|
+
}
|
|
11229
|
+
};
|
|
11230
|
+
const onScroll = () => {
|
|
11231
|
+
scheduleIdle();
|
|
11232
|
+
};
|
|
11233
|
+
const onScrollEnd = () => {
|
|
11234
|
+
unlock();
|
|
11235
|
+
};
|
|
11236
|
+
const detach = () => {
|
|
11237
|
+
if (!attachedTarget) {
|
|
11238
|
+
return;
|
|
10695
11239
|
}
|
|
10696
|
-
|
|
10697
|
-
|
|
11240
|
+
attachedTarget.removeEventListener("scroll", onScroll);
|
|
11241
|
+
if (listeningScrollEnd) {
|
|
11242
|
+
attachedTarget.removeEventListener("scrollend", onScrollEnd);
|
|
11243
|
+
}
|
|
11244
|
+
attachedTarget = null;
|
|
11245
|
+
listeningScrollEnd = false;
|
|
11246
|
+
};
|
|
11247
|
+
const unlock = () => {
|
|
11248
|
+
locked = false;
|
|
11249
|
+
clearTimers();
|
|
11250
|
+
detach();
|
|
11251
|
+
};
|
|
11252
|
+
const scheduleIdle = () => {
|
|
11253
|
+
if (idleTimer !== null) {
|
|
11254
|
+
clearTimeout(idleTimer);
|
|
11255
|
+
}
|
|
11256
|
+
idleTimer = setTimeout(() => {
|
|
11257
|
+
idleTimer = null;
|
|
11258
|
+
unlock();
|
|
11259
|
+
}, idleMs);
|
|
11260
|
+
};
|
|
11261
|
+
const lock = () => {
|
|
11262
|
+
clearTimers();
|
|
11263
|
+
detach();
|
|
11264
|
+
locked = true;
|
|
11265
|
+
if (isBrowser()) {
|
|
11266
|
+
const container = getTarget();
|
|
11267
|
+
const target = container === window ? window : container;
|
|
11268
|
+
attachedTarget = target;
|
|
11269
|
+
listeningScrollEnd = "onscrollend" in window;
|
|
11270
|
+
target.addEventListener("scroll", onScroll, { passive: true });
|
|
11271
|
+
if (listeningScrollEnd) {
|
|
11272
|
+
target.addEventListener("scrollend", onScrollEnd);
|
|
11273
|
+
}
|
|
11274
|
+
}
|
|
11275
|
+
scheduleIdle();
|
|
11276
|
+
safetyTimer = setTimeout(() => {
|
|
11277
|
+
safetyTimer = null;
|
|
11278
|
+
unlock();
|
|
11279
|
+
}, timeoutMs);
|
|
11280
|
+
};
|
|
11281
|
+
return {
|
|
11282
|
+
isLocked: () => locked,
|
|
11283
|
+
lock,
|
|
11284
|
+
unlock,
|
|
11285
|
+
dispose: unlock
|
|
11286
|
+
};
|
|
10698
11287
|
}
|
|
10699
11288
|
function createAnchorObserver(links, options) {
|
|
10700
11289
|
if (!isBrowser()) return () => {
|
|
10701
11290
|
};
|
|
10702
11291
|
if (typeof IntersectionObserver === "undefined") return () => {
|
|
10703
11292
|
};
|
|
10704
|
-
const { offsetTop = 0, root = null, onChange } = options;
|
|
11293
|
+
const { offsetTop = 0, bounds = 5, root = null, onChange } = options;
|
|
10705
11294
|
const targets = /* @__PURE__ */ new Map();
|
|
10706
11295
|
for (const href of links) {
|
|
10707
11296
|
const el = getAnchorTargetElement(href);
|
|
@@ -10709,30 +11298,24 @@ function createAnchorObserver(links, options) {
|
|
|
10709
11298
|
}
|
|
10710
11299
|
if (targets.size === 0) return () => {
|
|
10711
11300
|
};
|
|
10712
|
-
const visible = /* @__PURE__ */ new Set();
|
|
10713
11301
|
const computeActive = () => {
|
|
10714
|
-
for (const href of links) {
|
|
10715
|
-
if (visible.has(href)) return href;
|
|
10716
|
-
}
|
|
10717
11302
|
const rootTop = root ? root.getBoundingClientRect().top : 0;
|
|
10718
|
-
|
|
10719
|
-
|
|
10720
|
-
|
|
10721
|
-
|
|
10722
|
-
|
|
10723
|
-
|
|
10724
|
-
|
|
10725
|
-
|
|
11303
|
+
const offsetLine = rootTop + offsetTop + bounds;
|
|
11304
|
+
return findActiveAnchorAtOffsetLine(
|
|
11305
|
+
links,
|
|
11306
|
+
(href) => {
|
|
11307
|
+
const el = getAnchorTargetElement(href);
|
|
11308
|
+
if (!el) {
|
|
11309
|
+
return null;
|
|
11310
|
+
}
|
|
11311
|
+
return el.getBoundingClientRect().top;
|
|
11312
|
+
},
|
|
11313
|
+
offsetLine
|
|
11314
|
+
);
|
|
10726
11315
|
};
|
|
10727
11316
|
let last = "";
|
|
10728
11317
|
const observer = new IntersectionObserver(
|
|
10729
|
-
(
|
|
10730
|
-
for (const entry of entries) {
|
|
10731
|
-
const href = targets.get(entry.target);
|
|
10732
|
-
if (!href) continue;
|
|
10733
|
-
if (entry.isIntersecting) visible.add(href);
|
|
10734
|
-
else visible.delete(href);
|
|
10735
|
-
}
|
|
11318
|
+
() => {
|
|
10736
11319
|
const next = computeActive();
|
|
10737
11320
|
if (next !== last) {
|
|
10738
11321
|
last = next;
|
|
@@ -10741,9 +11324,8 @@ function createAnchorObserver(links, options) {
|
|
|
10741
11324
|
},
|
|
10742
11325
|
{
|
|
10743
11326
|
root,
|
|
10744
|
-
//
|
|
10745
|
-
|
|
10746
|
-
rootMargin: `-${offsetTop}px 0px -60% 0px`,
|
|
11327
|
+
// Top inset at the offset line; 0 bottom so last sections still notify.
|
|
11328
|
+
rootMargin: `-${offsetTop}px 0px 0px 0px`,
|
|
10747
11329
|
threshold: [0, 1]
|
|
10748
11330
|
}
|
|
10749
11331
|
);
|
|
@@ -10772,8 +11354,8 @@ var DEFAULT_CHART_COLORS = [
|
|
|
10772
11354
|
"var(--tiger-chart-6,#ef4444)"
|
|
10773
11355
|
];
|
|
10774
11356
|
var RADAR_SPLIT_AREA_COLORS = [
|
|
10775
|
-
"var(--tiger-chart-split-1,
|
|
10776
|
-
"var(--tiger-chart-split-2,
|
|
11357
|
+
"var(--tiger-chart-split-1,color-mix(in oklab, var(--tiger-text) 4%, transparent))",
|
|
11358
|
+
"var(--tiger-chart-split-2,color-mix(in oklab, var(--tiger-text) 10%, transparent))"
|
|
10777
11359
|
];
|
|
10778
11360
|
var PIE_EMPHASIS_SHADOW = "drop-shadow(0 4px 8px rgba(0,0,0,0.2))";
|
|
10779
11361
|
var PIE_BASE_SHADOW = "drop-shadow(0 1px 2px rgba(0,0,0,0.06))";
|
|
@@ -10790,7 +11372,7 @@ function getScatterHoverShadow(color) {
|
|
|
10790
11372
|
function getScatterHoverSize(baseSize) {
|
|
10791
11373
|
return baseSize + 2;
|
|
10792
11374
|
}
|
|
10793
|
-
var SCATTER_ENTRANCE_KEYFRAMES = `@keyframes tiger-scatter-entrance{from{opacity:0;transform:scale(0)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.tiger-scatter-entrance{animation-duration:0ms;animation-delay:0ms}}`;
|
|
11375
|
+
var SCATTER_ENTRANCE_KEYFRAMES = `@keyframes tiger-scatter-entrance{from{opacity:0;transform:scale(0)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.tiger-scatter-entrance{transform-box:fill-box;transform-origin:center}@media (prefers-reduced-motion: reduce){.tiger-scatter-entrance{animation-duration:0ms;animation-delay:0ms}}`;
|
|
10794
11376
|
var SCATTER_ENTRANCE_CLASS = "tiger-scatter-entrance";
|
|
10795
11377
|
var DONUT_ENTRANCE_KEYFRAMES = `@keyframes tiger-donut-entrance{from{opacity:0;transform:scale(0.9)}to{opacity:1;transform:scale(1)}}.tiger-donut-entrance{transform-origin:center;animation:tiger-donut-entrance var(--tiger-motion-duration-slow,500ms) var(--tiger-motion-ease-spring,cubic-bezier(.34,1.56,.64,1)) both}@media (prefers-reduced-motion: reduce){.tiger-donut-entrance{animation-duration:0ms}}`;
|
|
10796
11378
|
var DONUT_ENTRANCE_CLASS = "tiger-donut-entrance";
|
|
@@ -11139,6 +11721,31 @@ function createPolygonPath(points) {
|
|
|
11139
11721
|
" "
|
|
11140
11722
|
);
|
|
11141
11723
|
}
|
|
11724
|
+
function createPolygonRingPath(outerPoints, innerPoints = []) {
|
|
11725
|
+
const outer = createPolygonPath(outerPoints);
|
|
11726
|
+
if (!outer) return "";
|
|
11727
|
+
if (innerPoints.length === 0) return outer;
|
|
11728
|
+
const inner = createPolygonPath(innerPoints.slice().reverse());
|
|
11729
|
+
if (!inner) return outer;
|
|
11730
|
+
return `${outer} ${inner}`;
|
|
11731
|
+
}
|
|
11732
|
+
function createCircleRingPath(cx, cy, outerRadius, innerRadius = 0) {
|
|
11733
|
+
if (outerRadius <= 0) return "";
|
|
11734
|
+
const outer = [
|
|
11735
|
+
`M ${cx} ${cy - outerRadius}`,
|
|
11736
|
+
`A ${outerRadius} ${outerRadius} 0 1 1 ${cx} ${cy + outerRadius}`,
|
|
11737
|
+
`A ${outerRadius} ${outerRadius} 0 1 1 ${cx} ${cy - outerRadius}`,
|
|
11738
|
+
"Z"
|
|
11739
|
+
].join(" ");
|
|
11740
|
+
if (innerRadius <= 0) return outer;
|
|
11741
|
+
const inner = [
|
|
11742
|
+
`M ${cx} ${cy - innerRadius}`,
|
|
11743
|
+
`A ${innerRadius} ${innerRadius} 0 1 0 ${cx} ${cy + innerRadius}`,
|
|
11744
|
+
`A ${innerRadius} ${innerRadius} 0 1 0 ${cx} ${cy - innerRadius}`,
|
|
11745
|
+
"Z"
|
|
11746
|
+
].join(" ");
|
|
11747
|
+
return `${outer} ${inner}`;
|
|
11748
|
+
}
|
|
11142
11749
|
function getRadarLabelAlign(angle) {
|
|
11143
11750
|
const TWO_PI = Math.PI * 2;
|
|
11144
11751
|
const a = (angle % TWO_PI + TWO_PI) % TWO_PI;
|
|
@@ -12111,6 +12718,10 @@ function layoutRect(items, x, y, w, h, gap, palette, out) {
|
|
|
12111
12718
|
}
|
|
12112
12719
|
|
|
12113
12720
|
// src/utils/sunburst-chart-utils.ts
|
|
12721
|
+
function getSunburstLabelPoint(arc, cx, cy) {
|
|
12722
|
+
const midRadius = (arc.innerRadius + arc.outerRadius) / 2;
|
|
12723
|
+
return polarToCartesian(cx, cy, midRadius, arc.midAngle);
|
|
12724
|
+
}
|
|
12114
12725
|
function sumValue(d) {
|
|
12115
12726
|
let v;
|
|
12116
12727
|
if (d.children && d.children.length > 0) {
|
|
@@ -12170,7 +12781,9 @@ function computeSunburstArcs(data, opts) {
|
|
|
12170
12781
|
endAngle: ea,
|
|
12171
12782
|
color,
|
|
12172
12783
|
path,
|
|
12173
|
-
midAngle: (sa + ea) / 2
|
|
12784
|
+
midAngle: (sa + ea) / 2,
|
|
12785
|
+
innerRadius: iR,
|
|
12786
|
+
outerRadius: oR
|
|
12174
12787
|
});
|
|
12175
12788
|
if (item.children && item.children.length > 0) {
|
|
12176
12789
|
layoutLevel(item.children, sa, ea, level + 1, colorIdx);
|
|
@@ -12510,6 +13123,45 @@ function getWatermarkOverlayStyle(opts) {
|
|
|
12510
13123
|
};
|
|
12511
13124
|
}
|
|
12512
13125
|
|
|
13126
|
+
// src/utils/viewport-floating-utils.ts
|
|
13127
|
+
var viewportFloatingBaseClasses = "fixed z-50";
|
|
13128
|
+
var viewportPlacementClasses = {
|
|
13129
|
+
"top-left": "top-0 left-0",
|
|
13130
|
+
"top-right": "top-0 right-0",
|
|
13131
|
+
"bottom-left": "bottom-0 left-0",
|
|
13132
|
+
"bottom-right": "bottom-0 right-0"
|
|
13133
|
+
};
|
|
13134
|
+
function toCssLength(value) {
|
|
13135
|
+
return typeof value === "number" ? `${value}px` : value;
|
|
13136
|
+
}
|
|
13137
|
+
function resolveAxisOffset(offset2) {
|
|
13138
|
+
if (offset2 === void 0) {
|
|
13139
|
+
return { x: 24, y: 24 };
|
|
13140
|
+
}
|
|
13141
|
+
if (typeof offset2 === "number" || typeof offset2 === "string") {
|
|
13142
|
+
return { x: offset2, y: offset2 };
|
|
13143
|
+
}
|
|
13144
|
+
return {
|
|
13145
|
+
x: offset2.x ?? 24,
|
|
13146
|
+
y: offset2.y ?? 24
|
|
13147
|
+
};
|
|
13148
|
+
}
|
|
13149
|
+
function getViewportOffsetStyle(placement, offset2) {
|
|
13150
|
+
const { x, y } = resolveAxisOffset(offset2);
|
|
13151
|
+
const style = {};
|
|
13152
|
+
if (placement.startsWith("top")) {
|
|
13153
|
+
style.top = toCssLength(y);
|
|
13154
|
+
} else {
|
|
13155
|
+
style.bottom = toCssLength(y);
|
|
13156
|
+
}
|
|
13157
|
+
if (placement.endsWith("left")) {
|
|
13158
|
+
style.left = toCssLength(x);
|
|
13159
|
+
} else {
|
|
13160
|
+
style.right = toCssLength(x);
|
|
13161
|
+
}
|
|
13162
|
+
return style;
|
|
13163
|
+
}
|
|
13164
|
+
|
|
12513
13165
|
// src/utils/float-button-utils.ts
|
|
12514
13166
|
var floatButtonBaseClasses = "inline-flex items-center justify-center shadow-lg transition-all duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-[var(--tiger-focus-ring,#3b82f6)]";
|
|
12515
13167
|
var floatButtonShapeClasses = {
|
|
@@ -12526,13 +13178,23 @@ var floatButtonTypeClasses = {
|
|
|
12526
13178
|
default: "bg-[var(--tiger-surface-raised,#ffffff)] text-[var(--tiger-text,#111827)] border border-[var(--tiger-border,#e5e7eb)] hover:border-[var(--tiger-border-strong,#d1d5db)] hover:shadow-xl"
|
|
12527
13179
|
};
|
|
12528
13180
|
var floatButtonDisabledClasses = "opacity-50 cursor-not-allowed pointer-events-none";
|
|
12529
|
-
var floatButtonGroupClasses = "
|
|
13181
|
+
var floatButtonGroupClasses = "z-50 flex flex-col-reverse items-center gap-3";
|
|
12530
13182
|
var floatButtonGroupExpandClasses = "transition-all duration-200 ease-in-out";
|
|
13183
|
+
function getFloatButtonGroupClasses(options = {}) {
|
|
13184
|
+
const placement = options.placement ?? "bottom-right";
|
|
13185
|
+
const portal = options.portal ?? true;
|
|
13186
|
+
return classNames(
|
|
13187
|
+
portal ? viewportFloatingBaseClasses : "absolute z-50",
|
|
13188
|
+
viewportPlacementClasses[placement],
|
|
13189
|
+
floatButtonGroupClasses
|
|
13190
|
+
);
|
|
13191
|
+
}
|
|
12531
13192
|
var floatButtonIconSizeClasses = {
|
|
12532
13193
|
sm: "h-4 w-4",
|
|
12533
13194
|
md: "h-5 w-5",
|
|
12534
13195
|
lg: "h-6 w-6"
|
|
12535
13196
|
};
|
|
13197
|
+
var floatButtonPlusIconPath = "M12 5v14M5 12h14";
|
|
12536
13198
|
|
|
12537
13199
|
// src/utils/tour-utils.ts
|
|
12538
13200
|
var tourMaskClasses = "fixed inset-0 z-[1000] bg-black/45 transition-opacity duration-200";
|
|
@@ -12630,13 +13292,35 @@ function getTourTargetRect(selector) {
|
|
|
12630
13292
|
height: r.height
|
|
12631
13293
|
};
|
|
12632
13294
|
}
|
|
12633
|
-
|
|
13295
|
+
var TOUR_MASK_HOLE_PADDING = 4;
|
|
13296
|
+
function getTourMaskHoleRect(rect, padding) {
|
|
13297
|
+
const scrollX = isBrowser() ? window.scrollX : 0;
|
|
13298
|
+
const scrollY = isBrowser() ? window.scrollY : 0;
|
|
13299
|
+
return {
|
|
13300
|
+
top: rect.top - scrollY - padding,
|
|
13301
|
+
left: rect.left - scrollX - padding,
|
|
13302
|
+
width: rect.width + padding * 2,
|
|
13303
|
+
height: rect.height + padding * 2
|
|
13304
|
+
};
|
|
13305
|
+
}
|
|
13306
|
+
function getTourMaskHoleStyle(rect, padding = TOUR_MASK_HOLE_PADDING) {
|
|
13307
|
+
const hole = getTourMaskHoleRect(rect, padding);
|
|
13308
|
+
const left = hole.left;
|
|
13309
|
+
const top = hole.top;
|
|
13310
|
+
const right = hole.left + hole.width;
|
|
13311
|
+
const bottom = hole.top + hole.height;
|
|
13312
|
+
return {
|
|
13313
|
+
clipPath: `polygon(evenodd, 0% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 0%, ${left}px ${top}px, ${right}px ${top}px, ${right}px ${bottom}px, ${left}px ${bottom}px, ${left}px ${top}px)`
|
|
13314
|
+
};
|
|
13315
|
+
}
|
|
13316
|
+
function getTourSpotlightStyle(rect, padding = TOUR_MASK_HOLE_PADDING) {
|
|
13317
|
+
const hole = getTourMaskHoleRect(rect, padding);
|
|
12634
13318
|
return {
|
|
12635
13319
|
position: "fixed",
|
|
12636
|
-
top: `${
|
|
12637
|
-
left: `${
|
|
12638
|
-
width: `${
|
|
12639
|
-
height: `${
|
|
13320
|
+
top: `${hole.top}px`,
|
|
13321
|
+
left: `${hole.left}px`,
|
|
13322
|
+
width: `${hole.width}px`,
|
|
13323
|
+
height: `${hole.height}px`,
|
|
12640
13324
|
borderRadius: "4px",
|
|
12641
13325
|
boxShadow: "0 0 0 9999px rgba(0,0,0,0.45)",
|
|
12642
13326
|
zIndex: "1000",
|
|
@@ -12647,17 +13331,18 @@ function getTourSpotlightStyle(rect, padding = 4) {
|
|
|
12647
13331
|
|
|
12648
13332
|
// src/utils/affix-utils.ts
|
|
12649
13333
|
var affixWrapperClasses = "relative";
|
|
12650
|
-
function calculateAffixState(elementRect, containerRect, offsetTop, offsetBottom, zIndex) {
|
|
13334
|
+
function calculateAffixState(elementRect, containerRect, offsetTop, offsetBottom, zIndex, viewportHeight) {
|
|
12651
13335
|
const useBottom = offsetBottom !== void 0;
|
|
12652
13336
|
const offset2 = useBottom ? offsetBottom : offsetTop ?? 0;
|
|
12653
13337
|
if (useBottom) {
|
|
12654
13338
|
const shouldAffix = elementRect.top + elementRect.height > containerRect.bottom - offset2;
|
|
12655
13339
|
if (shouldAffix) {
|
|
13340
|
+
const innerHeight = viewportHeight ?? (isBrowser() ? window.innerHeight : containerRect.bottom);
|
|
12656
13341
|
return {
|
|
12657
13342
|
affixed: true,
|
|
12658
13343
|
style: {
|
|
12659
13344
|
position: "fixed",
|
|
12660
|
-
bottom: `${offset2}px`,
|
|
13345
|
+
bottom: `${innerHeight - containerRect.bottom + offset2}px`,
|
|
12661
13346
|
left: `${elementRect.left}px`,
|
|
12662
13347
|
width: `${elementRect.width}px`,
|
|
12663
13348
|
zIndex
|
|
@@ -13095,10 +13780,35 @@ function resetDevWarnCache() {
|
|
|
13095
13780
|
|
|
13096
13781
|
// src/utils/chat-window-utils.ts
|
|
13097
13782
|
var defaultChatMessageStatusInfo = {
|
|
13098
|
-
sending: {
|
|
13099
|
-
|
|
13100
|
-
|
|
13783
|
+
sending: {
|
|
13784
|
+
text: DEFAULT_CHAT_WINDOW_LABELS.sendingText,
|
|
13785
|
+
className: "text-[var(--tiger-text-muted,#6b7280)]"
|
|
13786
|
+
},
|
|
13787
|
+
sent: {
|
|
13788
|
+
text: DEFAULT_CHAT_WINDOW_LABELS.sentText,
|
|
13789
|
+
className: "text-[var(--tiger-text-muted,#6b7280)]"
|
|
13790
|
+
},
|
|
13791
|
+
failed: {
|
|
13792
|
+
text: DEFAULT_CHAT_WINDOW_LABELS.failedText,
|
|
13793
|
+
className: "text-[var(--tiger-danger,#ef4444)]"
|
|
13794
|
+
}
|
|
13101
13795
|
};
|
|
13796
|
+
function buildChatMessageStatusInfo(labels) {
|
|
13797
|
+
return {
|
|
13798
|
+
sending: {
|
|
13799
|
+
text: labels.sendingText ?? defaultChatMessageStatusInfo.sending.text,
|
|
13800
|
+
className: defaultChatMessageStatusInfo.sending.className
|
|
13801
|
+
},
|
|
13802
|
+
sent: {
|
|
13803
|
+
text: labels.sentText ?? defaultChatMessageStatusInfo.sent.text,
|
|
13804
|
+
className: defaultChatMessageStatusInfo.sent.className
|
|
13805
|
+
},
|
|
13806
|
+
failed: {
|
|
13807
|
+
text: labels.failedText ?? defaultChatMessageStatusInfo.failed.text,
|
|
13808
|
+
className: defaultChatMessageStatusInfo.failed.className
|
|
13809
|
+
}
|
|
13810
|
+
};
|
|
13811
|
+
}
|
|
13102
13812
|
function getChatMessageStatusInfo(status, statusMap = defaultChatMessageStatusInfo) {
|
|
13103
13813
|
return statusMap[status] || defaultChatMessageStatusInfo[status];
|
|
13104
13814
|
}
|
|
@@ -13215,6 +13925,21 @@ var buildNotificationGroups = (items = [], groups, groupBy, groupOrder) => {
|
|
|
13215
13925
|
};
|
|
13216
13926
|
|
|
13217
13927
|
// src/utils/comment-thread-utils.ts
|
|
13928
|
+
var resolveCommentLikeState = (node, overlay) => {
|
|
13929
|
+
const entry = overlay?.get(node.id);
|
|
13930
|
+
if (entry) return { liked: entry.liked, likes: entry.likes };
|
|
13931
|
+
return { liked: !!node.liked, likes: node.likes ?? 0 };
|
|
13932
|
+
};
|
|
13933
|
+
var nextCommentLikeState = (node, overlay) => {
|
|
13934
|
+
const current = resolveCommentLikeState(node, overlay);
|
|
13935
|
+
const liked = !current.liked;
|
|
13936
|
+
return { liked, likes: Math.max(0, current.likes + (liked ? 1 : -1)) };
|
|
13937
|
+
};
|
|
13938
|
+
var writeCommentLikeOverlay = (overlay, id, state) => {
|
|
13939
|
+
const next = new Map(overlay ?? void 0);
|
|
13940
|
+
next.set(id, { liked: state.liked, likes: state.likes });
|
|
13941
|
+
return next;
|
|
13942
|
+
};
|
|
13218
13943
|
var buildCommentTree = (items = []) => {
|
|
13219
13944
|
if (!items || items.length === 0) return [];
|
|
13220
13945
|
const nodeMap = /* @__PURE__ */ new Map();
|
|
@@ -13471,6 +14196,30 @@ function isWipExceeded(column) {
|
|
|
13471
14196
|
if (column.wipLimit == null || column.wipLimit <= 0) return false;
|
|
13472
14197
|
return column.cards.length > column.wipLimit;
|
|
13473
14198
|
}
|
|
14199
|
+
var DEFAULT_TASK_BOARD_NEW_CARD_TITLE = "New task";
|
|
14200
|
+
function nextDefaultTaskBoardCardId(columns) {
|
|
14201
|
+
const used = /* @__PURE__ */ new Set();
|
|
14202
|
+
for (const column of columns) {
|
|
14203
|
+
for (const card of column.cards) {
|
|
14204
|
+
used.add(String(card.id));
|
|
14205
|
+
}
|
|
14206
|
+
}
|
|
14207
|
+
let n = 1;
|
|
14208
|
+
let id = `card-${n}`;
|
|
14209
|
+
while (used.has(id)) {
|
|
14210
|
+
n += 1;
|
|
14211
|
+
id = `card-${n}`;
|
|
14212
|
+
}
|
|
14213
|
+
return id;
|
|
14214
|
+
}
|
|
14215
|
+
function appendDefaultTaskBoardCard(columns, columnId, title = DEFAULT_TASK_BOARD_NEW_CARD_TITLE) {
|
|
14216
|
+
const colIdx = columns.findIndex((c) => c.id === columnId);
|
|
14217
|
+
if (colIdx === -1) return columns;
|
|
14218
|
+
const card = { id: nextDefaultTaskBoardCardId(columns), title };
|
|
14219
|
+
return columns.map(
|
|
14220
|
+
(column, i) => i === colIdx ? { ...column, cards: [...column.cards, card] } : column
|
|
14221
|
+
);
|
|
14222
|
+
}
|
|
13474
14223
|
function getDropIndex(pointerY, cardRects) {
|
|
13475
14224
|
for (let i = 0; i < cardRects.length; i++) {
|
|
13476
14225
|
const mid = cardRects[i].top + cardRects[i].height / 2;
|
|
@@ -13478,6 +14227,22 @@ function getDropIndex(pointerY, cardRects) {
|
|
|
13478
14227
|
}
|
|
13479
14228
|
return cardRects.length;
|
|
13480
14229
|
}
|
|
14230
|
+
function mapVisibleCardIndexToSource(sourceCards, visibleCards, visibleIndex) {
|
|
14231
|
+
if (visibleCards.length === 0) {
|
|
14232
|
+
return visibleIndex <= 0 ? 0 : sourceCards.length;
|
|
14233
|
+
}
|
|
14234
|
+
if (visibleIndex <= 0) {
|
|
14235
|
+
const idx2 = sourceCards.findIndex((card) => card.id === visibleCards[0].id);
|
|
14236
|
+
return idx2 === -1 ? 0 : idx2;
|
|
14237
|
+
}
|
|
14238
|
+
if (visibleIndex >= visibleCards.length) {
|
|
14239
|
+
const last = visibleCards[visibleCards.length - 1];
|
|
14240
|
+
const idx2 = sourceCards.findIndex((card) => card.id === last.id);
|
|
14241
|
+
return idx2 === -1 ? sourceCards.length : idx2 + 1;
|
|
14242
|
+
}
|
|
14243
|
+
const idx = sourceCards.findIndex((card) => card.id === visibleCards[visibleIndex].id);
|
|
14244
|
+
return idx === -1 ? visibleIndex : idx;
|
|
14245
|
+
}
|
|
13481
14246
|
function getColumnDropIndex(pointerX, columnRects) {
|
|
13482
14247
|
for (let i = 0; i < columnRects.length; i++) {
|
|
13483
14248
|
const mid = columnRects[i].left + columnRects[i].width / 2;
|
|
@@ -14091,6 +14856,16 @@ function filterAutoCompleteOptions(options, inputValue, filterOption) {
|
|
|
14091
14856
|
const filterFn = typeof filterOption === "function" ? filterOption : defaultAutoCompleteFilter;
|
|
14092
14857
|
return options.filter((opt) => filterFn(inputValue, opt));
|
|
14093
14858
|
}
|
|
14859
|
+
function resolveAutoCompleteDisplayValue(value, options = [], fallback = "") {
|
|
14860
|
+
if (value === void 0 || value === null) {
|
|
14861
|
+
return String(fallback ?? "");
|
|
14862
|
+
}
|
|
14863
|
+
const match = (options ?? []).find((option) => String(option.value) === String(value));
|
|
14864
|
+
if (match) {
|
|
14865
|
+
return match.label;
|
|
14866
|
+
}
|
|
14867
|
+
return String(value);
|
|
14868
|
+
}
|
|
14094
14869
|
|
|
14095
14870
|
// src/utils/signature-utils.ts
|
|
14096
14871
|
var signatureRootClasses = "inline-flex w-full flex-col gap-2";
|
|
@@ -14989,6 +15764,7 @@ function createScrollSpyObserver(items = [], options) {
|
|
|
14989
15764
|
const root = options.container === window ? null : options.container;
|
|
14990
15765
|
return createAnchorObserver(hrefs, {
|
|
14991
15766
|
offsetTop: offset2,
|
|
15767
|
+
bounds: options.bounds ?? 5,
|
|
14992
15768
|
root,
|
|
14993
15769
|
onChange: notify
|
|
14994
15770
|
});
|
|
@@ -15221,6 +15997,7 @@ function getRateStarClasses(size2, isCharacter, disabled) {
|
|
|
15221
15997
|
disabled ? "cursor-default" : "cursor-pointer"
|
|
15222
15998
|
);
|
|
15223
15999
|
}
|
|
16000
|
+
var rateHalfStarInnerClasses = "w-[200%] h-full";
|
|
15224
16001
|
var rateActiveColor = "text-[var(--tiger-rate-active,var(--tiger-warning,#f59e0b))]";
|
|
15225
16002
|
var rateInactiveColor = "text-[var(--tiger-rate-inactive,var(--tiger-border,#d1d5db))]";
|
|
15226
16003
|
var rateHoverColor = "text-[var(--tiger-rate-hover,var(--tiger-warning,#fbbf24))]";
|
|
@@ -15236,7 +16013,7 @@ function getSegmentedContainerClasses(size2, block) {
|
|
|
15236
16013
|
};
|
|
15237
16014
|
return classNames(
|
|
15238
16015
|
"relative inline-grid overflow-hidden rounded-[var(--tiger-radius-md,0.5rem)]",
|
|
15239
|
-
"bg-[var(--tiger-segmented-bg,var(--tiger-
|
|
16016
|
+
"bg-[var(--tiger-segmented-bg,var(--tiger-surface-muted,#f9fafb))]",
|
|
15240
16017
|
sizeClasses3[size2],
|
|
15241
16018
|
block ? "w-full" : ""
|
|
15242
16019
|
);
|
|
@@ -15254,7 +16031,7 @@ function getSegmentedIndicatorClasses(size2) {
|
|
|
15254
16031
|
};
|
|
15255
16032
|
return classNames(
|
|
15256
16033
|
"pointer-events-none absolute z-0 rounded-[var(--tiger-radius-md,0.5rem)]",
|
|
15257
|
-
"bg-[var(--tiger-segmented-active-bg,var(--tiger-surface,#ffffff))] shadow-sm",
|
|
16034
|
+
"bg-[var(--tiger-segmented-active-bg,var(--tiger-surface-raised,#ffffff))] shadow-sm",
|
|
15258
16035
|
"transition-transform duration-200 ease-out will-change-transform",
|
|
15259
16036
|
insetClasses[size2]
|
|
15260
16037
|
);
|
|
@@ -15488,16 +16265,103 @@ function formatColorString(r, g, b, format, alpha) {
|
|
|
15488
16265
|
function isValidHex(value) {
|
|
15489
16266
|
return /^#?([0-9A-Fa-f]{3}|[0-9A-Fa-f]{6})$/.test(value);
|
|
15490
16267
|
}
|
|
16268
|
+
function clampByte(n) {
|
|
16269
|
+
return Math.max(0, Math.min(255, Math.round(n)));
|
|
16270
|
+
}
|
|
16271
|
+
function clampUnit(n) {
|
|
16272
|
+
return Math.max(0, Math.min(1, n));
|
|
16273
|
+
}
|
|
16274
|
+
function parseOptionalAlpha(raw) {
|
|
16275
|
+
if (raw === void 0 || raw === "") return 1;
|
|
16276
|
+
const n = Number(raw);
|
|
16277
|
+
if (!Number.isFinite(n)) return 1;
|
|
16278
|
+
return clampUnit(n);
|
|
16279
|
+
}
|
|
16280
|
+
function hslToRgb(h, s, l) {
|
|
16281
|
+
const hue = (h % 360 + 360) % 360;
|
|
16282
|
+
const ss = Math.max(0, Math.min(100, s)) / 100;
|
|
16283
|
+
const ll = Math.max(0, Math.min(100, l)) / 100;
|
|
16284
|
+
const c = (1 - Math.abs(2 * ll - 1)) * ss;
|
|
16285
|
+
const x = c * (1 - Math.abs(hue / 60 % 2 - 1));
|
|
16286
|
+
const m = ll - c / 2;
|
|
16287
|
+
let r = 0;
|
|
16288
|
+
let g = 0;
|
|
16289
|
+
let b = 0;
|
|
16290
|
+
if (hue < 60) {
|
|
16291
|
+
r = c;
|
|
16292
|
+
g = x;
|
|
16293
|
+
b = 0;
|
|
16294
|
+
} else if (hue < 120) {
|
|
16295
|
+
r = x;
|
|
16296
|
+
g = c;
|
|
16297
|
+
b = 0;
|
|
16298
|
+
} else if (hue < 180) {
|
|
16299
|
+
r = 0;
|
|
16300
|
+
g = c;
|
|
16301
|
+
b = x;
|
|
16302
|
+
} else if (hue < 240) {
|
|
16303
|
+
r = 0;
|
|
16304
|
+
g = x;
|
|
16305
|
+
b = c;
|
|
16306
|
+
} else if (hue < 300) {
|
|
16307
|
+
r = x;
|
|
16308
|
+
g = 0;
|
|
16309
|
+
b = c;
|
|
16310
|
+
} else {
|
|
16311
|
+
r = c;
|
|
16312
|
+
g = 0;
|
|
16313
|
+
b = x;
|
|
16314
|
+
}
|
|
16315
|
+
return {
|
|
16316
|
+
r: Math.round((r + m) * 255),
|
|
16317
|
+
g: Math.round((g + m) * 255),
|
|
16318
|
+
b: Math.round((b + m) * 255)
|
|
16319
|
+
};
|
|
16320
|
+
}
|
|
16321
|
+
function parseColorParts(raw) {
|
|
16322
|
+
const value = raw.trim();
|
|
16323
|
+
if (!value) return null;
|
|
16324
|
+
if (isValidHex(value)) {
|
|
16325
|
+
const rgb = hexToRgb2(value);
|
|
16326
|
+
return { r: rgb.r, g: rgb.g, b: rgb.b, a: 1 };
|
|
16327
|
+
}
|
|
16328
|
+
const rgbMatch = value.match(
|
|
16329
|
+
/^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)(?:\s*,\s*([\d.]+))?\s*\)?\s*$/i
|
|
16330
|
+
);
|
|
16331
|
+
if (rgbMatch) {
|
|
16332
|
+
return {
|
|
16333
|
+
r: clampByte(Number(rgbMatch[1])),
|
|
16334
|
+
g: clampByte(Number(rgbMatch[2])),
|
|
16335
|
+
b: clampByte(Number(rgbMatch[3])),
|
|
16336
|
+
a: parseOptionalAlpha(rgbMatch[4])
|
|
16337
|
+
};
|
|
16338
|
+
}
|
|
16339
|
+
const hslMatch = value.match(
|
|
16340
|
+
/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)?\s*$/i
|
|
16341
|
+
);
|
|
16342
|
+
if (hslMatch) {
|
|
16343
|
+
const rgb = hslToRgb(Number(hslMatch[1]), Number(hslMatch[2]), Number(hslMatch[3]));
|
|
16344
|
+
return {
|
|
16345
|
+
r: rgb.r,
|
|
16346
|
+
g: rgb.g,
|
|
16347
|
+
b: rgb.b,
|
|
16348
|
+
a: parseOptionalAlpha(hslMatch[4])
|
|
16349
|
+
};
|
|
16350
|
+
}
|
|
16351
|
+
return null;
|
|
16352
|
+
}
|
|
15491
16353
|
function parseColorInput(raw) {
|
|
15492
16354
|
const value = raw.trim();
|
|
15493
16355
|
if (isValidHex(value)) {
|
|
15494
16356
|
return value.startsWith("#") ? value : `#${value}`;
|
|
15495
16357
|
}
|
|
15496
|
-
const
|
|
15497
|
-
if (!
|
|
15498
|
-
|
|
16358
|
+
const parts = parseColorParts(value);
|
|
16359
|
+
if (!parts) return null;
|
|
16360
|
+
if (parts.a < 1) {
|
|
16361
|
+
const format = /^hsla?\(/i.test(value) ? "hsl" : "rgb";
|
|
16362
|
+
return formatColorString(parts.r, parts.g, parts.b, format, parts.a);
|
|
15499
16363
|
}
|
|
15500
|
-
return rgbToHex2(
|
|
16364
|
+
return rgbToHex2(parts.r, parts.g, parts.b);
|
|
15501
16365
|
}
|
|
15502
16366
|
|
|
15503
16367
|
// src/utils/color-swatch-utils.ts
|
|
@@ -15665,12 +16529,21 @@ function getCalendarDayClasses(isSelected, isToday2, isCurrentMonth, isDisabled)
|
|
|
15665
16529
|
isSelected ? "bg-[var(--tiger-calendar-selected-bg,var(--tiger-primary,#2563eb))] text-white" : isToday2 ? "bg-[var(--tiger-calendar-today-bg,var(--tiger-primary,#2563eb))]/10 text-[var(--tiger-calendar-today-text,var(--tiger-primary,#2563eb))]" : isCurrentMonth ? "text-[var(--tiger-calendar-day,var(--tiger-text,#111827))] hover:bg-[var(--tiger-calendar-day-hover,var(--tiger-fill-hover,#e5e7eb))]" : "text-[var(--tiger-calendar-day-outside,var(--tiger-text-muted,#9ca3af))]"
|
|
15666
16530
|
);
|
|
15667
16531
|
}
|
|
15668
|
-
function getCalendarMonthClasses(isSelected) {
|
|
16532
|
+
function getCalendarMonthClasses(isSelected, isDisabled) {
|
|
15669
16533
|
return classNames(
|
|
15670
|
-
"inline-flex items-center justify-center rounded-[var(--tiger-radius-md,0.5rem)] py-2 px-3 text-sm transition-colors
|
|
16534
|
+
"inline-flex items-center justify-center rounded-[var(--tiger-radius-md,0.5rem)] py-2 px-3 text-sm transition-colors",
|
|
16535
|
+
isDisabled ? "opacity-30 cursor-not-allowed" : "cursor-pointer",
|
|
15671
16536
|
isSelected ? "bg-[var(--tiger-calendar-selected-bg,var(--tiger-primary,#2563eb))] text-white" : "text-[var(--tiger-calendar-day,var(--tiger-text,#111827))] hover:bg-[var(--tiger-calendar-day-hover,var(--tiger-fill-hover,#e5e7eb))]"
|
|
15672
16537
|
);
|
|
15673
16538
|
}
|
|
16539
|
+
function isCalendarMonthDisabled(year, month, disabledDate) {
|
|
16540
|
+
if (!disabledDate) return false;
|
|
16541
|
+
const lastDay = new Date(year, month + 1, 0).getDate();
|
|
16542
|
+
for (let day = 1; day <= lastDay; day++) {
|
|
16543
|
+
if (!disabledDate(new Date(year, month, day))) return false;
|
|
16544
|
+
}
|
|
16545
|
+
return true;
|
|
16546
|
+
}
|
|
15674
16547
|
var WEEKDAYS = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"];
|
|
15675
16548
|
var MONTHS = [
|
|
15676
16549
|
"Jan",
|
|
@@ -16354,45 +17227,6 @@ function isTablet(options = {}) {
|
|
|
16354
17227
|
return width !== void 0 && width >= TIGER_VIEWPORT_BREAKPOINTS.md && width < TIGER_VIEWPORT_BREAKPOINTS.lg;
|
|
16355
17228
|
}
|
|
16356
17229
|
|
|
16357
|
-
// src/utils/viewport-floating-utils.ts
|
|
16358
|
-
var viewportFloatingBaseClasses = "fixed z-50";
|
|
16359
|
-
var viewportPlacementClasses = {
|
|
16360
|
-
"top-left": "top-0 left-0",
|
|
16361
|
-
"top-right": "top-0 right-0",
|
|
16362
|
-
"bottom-left": "bottom-0 left-0",
|
|
16363
|
-
"bottom-right": "bottom-0 right-0"
|
|
16364
|
-
};
|
|
16365
|
-
function toCssLength(value) {
|
|
16366
|
-
return typeof value === "number" ? `${value}px` : value;
|
|
16367
|
-
}
|
|
16368
|
-
function resolveAxisOffset(offset2) {
|
|
16369
|
-
if (offset2 === void 0) {
|
|
16370
|
-
return { x: 24, y: 24 };
|
|
16371
|
-
}
|
|
16372
|
-
if (typeof offset2 === "number" || typeof offset2 === "string") {
|
|
16373
|
-
return { x: offset2, y: offset2 };
|
|
16374
|
-
}
|
|
16375
|
-
return {
|
|
16376
|
-
x: offset2.x ?? 24,
|
|
16377
|
-
y: offset2.y ?? 24
|
|
16378
|
-
};
|
|
16379
|
-
}
|
|
16380
|
-
function getViewportOffsetStyle(placement, offset2) {
|
|
16381
|
-
const { x, y } = resolveAxisOffset(offset2);
|
|
16382
|
-
const style = {};
|
|
16383
|
-
if (placement.startsWith("top")) {
|
|
16384
|
-
style.top = toCssLength(y);
|
|
16385
|
-
} else {
|
|
16386
|
-
style.bottom = toCssLength(y);
|
|
16387
|
-
}
|
|
16388
|
-
if (placement.endsWith("left")) {
|
|
16389
|
-
style.left = toCssLength(x);
|
|
16390
|
-
} else {
|
|
16391
|
-
style.right = toCssLength(x);
|
|
16392
|
-
}
|
|
16393
|
-
return style;
|
|
16394
|
-
}
|
|
16395
|
-
|
|
16396
17230
|
// src/utils/drag.ts
|
|
16397
17231
|
function createDragState() {
|
|
16398
17232
|
return {
|
|
@@ -16584,12 +17418,12 @@ var splitterBaseClasses = "relative flex w-full h-full overflow-hidden";
|
|
|
16584
17418
|
var splitterHorizontalClasses = "flex-row";
|
|
16585
17419
|
var splitterVerticalClasses = "flex-col";
|
|
16586
17420
|
var splitterPaneBaseClasses = "relative overflow-auto";
|
|
16587
|
-
var splitterGutterBaseClasses = "relative flex-shrink-0 bg-
|
|
17421
|
+
var splitterGutterBaseClasses = "relative flex-shrink-0 bg-[var(--tiger-border,#e5e7eb)] transition-colors duration-150 hover:bg-[var(--tiger-primary,#2563eb)] z-10";
|
|
16588
17422
|
var splitterGutterHorizontalClasses = "cursor-col-resize w-[var(--tiger-splitter-gutter,4px)] h-full";
|
|
16589
17423
|
var splitterGutterVerticalClasses = "cursor-row-resize h-[var(--tiger-splitter-gutter,4px)] w-full";
|
|
16590
17424
|
var splitterGutterDraggingClasses = "bg-[var(--tiger-primary,#2563eb)]";
|
|
16591
17425
|
var splitterGutterDisabledClasses = "cursor-default opacity-50 pointer-events-none";
|
|
16592
|
-
var splitterGutterHandleClasses = "absolute rounded bg-
|
|
17426
|
+
var splitterGutterHandleClasses = "absolute rounded bg-[var(--tiger-text-muted,#9ca3af)] transition-colors duration-150";
|
|
16593
17427
|
var splitterGutterHandleHorizontalClasses = "w-0.5 h-6 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2";
|
|
16594
17428
|
var splitterGutterHandleVerticalClasses = "h-0.5 w-6 top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2";
|
|
16595
17429
|
function getSplitterContainerClasses(direction, className) {
|
|
@@ -16615,6 +17449,11 @@ function getSplitterGutterHandleClasses(direction) {
|
|
|
16615
17449
|
direction === "horizontal" ? splitterGutterHandleHorizontalClasses : splitterGutterHandleVerticalClasses
|
|
16616
17450
|
].join(" ");
|
|
16617
17451
|
}
|
|
17452
|
+
function getSplitterGutterCssVars(gutterSize = 4) {
|
|
17453
|
+
return {
|
|
17454
|
+
"--tiger-splitter-gutter": `${gutterSize}px`
|
|
17455
|
+
};
|
|
17456
|
+
}
|
|
16618
17457
|
function parsePaneSize(size2, totalSize) {
|
|
16619
17458
|
if (typeof size2 === "number") return size2;
|
|
16620
17459
|
const trimmed = size2.trim();
|
|
@@ -16646,6 +17485,23 @@ function clampPaneSize(size2, min, max) {
|
|
|
16646
17485
|
}
|
|
16647
17486
|
return result;
|
|
16648
17487
|
}
|
|
17488
|
+
function isPercentagePaneSize(size2) {
|
|
17489
|
+
return typeof size2 === "string" && size2.trim().endsWith("%");
|
|
17490
|
+
}
|
|
17491
|
+
function resolveInitialPaneSizes(paneCount, containerSize, gutterSize, sizes, min = 0, max) {
|
|
17492
|
+
if (paneCount <= 0) return null;
|
|
17493
|
+
const provided = sizes && sizes.length === paneCount ? sizes : void 0;
|
|
17494
|
+
const hasPercent = provided != null && provided.some(isPercentagePaneSize);
|
|
17495
|
+
if (containerSize <= 0) {
|
|
17496
|
+
if (hasPercent || !provided) return null;
|
|
17497
|
+
return calculateInitialSizes(paneCount, 0, gutterSize, provided).map(
|
|
17498
|
+
(s) => clampPaneSize(s, min, max)
|
|
17499
|
+
);
|
|
17500
|
+
}
|
|
17501
|
+
return calculateInitialSizes(paneCount, containerSize, gutterSize, provided).map(
|
|
17502
|
+
(s) => clampPaneSize(s, min, max)
|
|
17503
|
+
);
|
|
17504
|
+
}
|
|
16649
17505
|
function resizePanes(sizes, gutterIndex, delta, mins, maxes) {
|
|
16650
17506
|
if (gutterIndex < 0 || gutterIndex >= sizes.length - 1) return null;
|
|
16651
17507
|
const leftIdx = gutterIndex;
|
|
@@ -17299,27 +18155,60 @@ function isToolbarSeparator(item) {
|
|
|
17299
18155
|
function getToolbarButtons(items) {
|
|
17300
18156
|
return items.filter((item) => !isToolbarSeparator(item));
|
|
17301
18157
|
}
|
|
17302
|
-
|
|
17303
|
-
|
|
17304
|
-
|
|
17305
|
-
|
|
17306
|
-
|
|
17307
|
-
|
|
17308
|
-
|
|
17309
|
-
|
|
17310
|
-
|
|
17311
|
-
|
|
17312
|
-
|
|
17313
|
-
|
|
17314
|
-
|
|
17315
|
-
|
|
17316
|
-
|
|
17317
|
-
|
|
17318
|
-
|
|
17319
|
-
|
|
17320
|
-
|
|
18158
|
+
function toolbarTooltip(label, hotkey) {
|
|
18159
|
+
return hotkey ? `${label} (${hotkey})` : label;
|
|
18160
|
+
}
|
|
18161
|
+
function createDefaultRichTextToolbar(labels) {
|
|
18162
|
+
return [
|
|
18163
|
+
{
|
|
18164
|
+
name: "bold",
|
|
18165
|
+
label: labels.bold,
|
|
18166
|
+
tooltip: toolbarTooltip(labels.bold, "Ctrl+B"),
|
|
18167
|
+
hotkey: "Ctrl+B"
|
|
18168
|
+
},
|
|
18169
|
+
{
|
|
18170
|
+
name: "italic",
|
|
18171
|
+
label: labels.italic,
|
|
18172
|
+
tooltip: toolbarTooltip(labels.italic, "Ctrl+I"),
|
|
18173
|
+
hotkey: "Ctrl+I"
|
|
18174
|
+
},
|
|
18175
|
+
{
|
|
18176
|
+
name: "underline",
|
|
18177
|
+
label: labels.underline,
|
|
18178
|
+
tooltip: toolbarTooltip(labels.underline, "Ctrl+U"),
|
|
18179
|
+
hotkey: "Ctrl+U"
|
|
18180
|
+
},
|
|
18181
|
+
{ name: "strikethrough", label: labels.strikethrough, tooltip: labels.strikethrough },
|
|
18182
|
+
{ name: "heading1", label: labels.heading1, tooltip: labels.heading1 },
|
|
18183
|
+
{ name: "heading2", label: labels.heading2, tooltip: labels.heading2 },
|
|
18184
|
+
{ name: "heading3", label: labels.heading3, tooltip: labels.heading3 },
|
|
18185
|
+
{ name: "bulletList", label: labels.bulletList, tooltip: labels.bulletList },
|
|
18186
|
+
{ name: "orderedList", label: labels.orderedList, tooltip: labels.orderedList },
|
|
18187
|
+
{ name: "blockquote", label: labels.blockquote, tooltip: labels.blockquote },
|
|
18188
|
+
{ name: "codeBlock", label: labels.codeBlock, tooltip: labels.codeBlock },
|
|
18189
|
+
{ name: "link", label: labels.link, tooltip: labels.link },
|
|
18190
|
+
{ name: "horizontalRule", label: labels.horizontalRule, tooltip: labels.horizontalRule },
|
|
18191
|
+
{
|
|
18192
|
+
name: "undo",
|
|
18193
|
+
label: labels.undo,
|
|
18194
|
+
tooltip: toolbarTooltip(labels.undo, "Ctrl+Z"),
|
|
18195
|
+
hotkey: "Ctrl+Z"
|
|
18196
|
+
},
|
|
18197
|
+
{
|
|
18198
|
+
name: "redo",
|
|
18199
|
+
label: labels.redo,
|
|
18200
|
+
tooltip: toolbarTooltip(labels.redo, "Ctrl+Y"),
|
|
18201
|
+
hotkey: "Ctrl+Y"
|
|
18202
|
+
},
|
|
18203
|
+
{ name: "clear", label: labels.clear, tooltip: labels.clear }
|
|
18204
|
+
];
|
|
18205
|
+
}
|
|
18206
|
+
var defaultToolbar = createDefaultRichTextToolbar(
|
|
18207
|
+
DEFAULT_RICH_TEXT_EDITOR_LABELS
|
|
18208
|
+
);
|
|
18209
|
+
var richTextContainerBase = "flex flex-col border border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-md,0.5rem)] overflow-hidden bg-[var(--tiger-rte-bg,var(--tiger-surface,#ffffff))]";
|
|
17321
18210
|
var richTextContainerDisabled = "opacity-50 cursor-not-allowed pointer-events-none";
|
|
17322
|
-
var richTextToolbarClasses = "flex flex-wrap items-center gap-1 px-2 py-1.5 border-b border-[var(--tiger-border,#d1d5db)] bg-[var(--tiger-bg-
|
|
18211
|
+
var richTextToolbarClasses = "flex flex-wrap items-center gap-1 px-2 py-1.5 border-b border-[var(--tiger-border,#d1d5db)] bg-[var(--tiger-rte-toolbar-bg,var(--tiger-surface-muted,#f9fafb))]";
|
|
17323
18212
|
var richTextToolbarButtonBase = "inline-flex items-center justify-center min-w-8 h-8 px-2 rounded text-sm font-medium transition-colors duration-150 text-[var(--tiger-text-secondary,#6b7280)] hover:bg-[var(--tiger-bg-hover,#e5e7eb)] hover:text-[var(--tiger-text,#111827)]";
|
|
17324
18213
|
var richTextToolbarButtonActive = "bg-[var(--tiger-primary,#2563eb)]/10 text-[var(--tiger-primary,#2563eb)]";
|
|
17325
18214
|
var richTextToolbarSeparatorClasses = "w-px h-5 mx-1 bg-[var(--tiger-border,#d1d5db)]";
|
|
@@ -17462,35 +18351,58 @@ function parseHeight(height) {
|
|
|
17462
18351
|
}
|
|
17463
18352
|
|
|
17464
18353
|
// src/utils/markdown-editor-utils.ts
|
|
17465
|
-
var markdownEditorContainerBase = "flex flex-col border border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-md,0.5rem)] overflow-hidden bg-[var(--tiger-bg,#ffffff)] text-[var(--tiger-text,#111827)]";
|
|
18354
|
+
var markdownEditorContainerBase = "flex flex-col border border-[var(--tiger-border,#d1d5db)] rounded-[var(--tiger-radius-md,0.5rem)] overflow-hidden bg-[var(--tiger-md-bg,var(--tiger-surface,#ffffff))] text-[var(--tiger-text,#111827)]";
|
|
17466
18355
|
var markdownEditorContainerDisabled = "opacity-50 cursor-not-allowed";
|
|
17467
|
-
var markdownEditorToolbarClasses = "flex flex-wrap items-center justify-between gap-2 px-2 py-1.5 border-b border-[var(--tiger-border,#d1d5db)] bg-[var(--tiger-bg-
|
|
18356
|
+
var markdownEditorToolbarClasses = "flex flex-wrap items-center justify-between gap-2 px-2 py-1.5 border-b border-[var(--tiger-border,#d1d5db)] bg-[var(--tiger-md-toolbar-bg,var(--tiger-surface-muted,#f9fafb))]";
|
|
17468
18357
|
var markdownEditorToolbarGroupClasses = "flex flex-wrap items-center gap-1";
|
|
17469
18358
|
var markdownEditorToolbarButtonBase = "inline-flex items-center justify-center min-w-8 h-8 px-2 rounded text-sm font-medium transition-colors duration-150 text-[var(--tiger-text-secondary,#6b7280)] hover:bg-[var(--tiger-bg-hover,#e5e7eb)] hover:text-[var(--tiger-text,#111827)] disabled:cursor-not-allowed disabled:opacity-50";
|
|
17470
18359
|
var markdownEditorToolbarButtonActive = "bg-[var(--tiger-primary,#2563eb)]/10 text-[var(--tiger-primary,#2563eb)]";
|
|
17471
18360
|
var markdownEditorToolbarSeparatorClasses = "w-px h-5 mx-1 bg-[var(--tiger-border,#d1d5db)]";
|
|
17472
|
-
var markdownEditorBodyClasses = "grid flex-1 min-h-0 bg-[var(--tiger-bg,#ffffff)]";
|
|
18361
|
+
var markdownEditorBodyClasses = "grid flex-1 min-h-0 bg-[var(--tiger-md-bg,var(--tiger-surface,#ffffff))]";
|
|
17473
18362
|
var markdownEditorTextareaClasses = "w-full h-full min-h-0 resize-none border-0 outline-none bg-transparent p-4 font-mono text-sm leading-7 text-[var(--tiger-text,#111827)] placeholder:text-[var(--tiger-text-tertiary,#9ca3af)] disabled:cursor-not-allowed";
|
|
17474
18363
|
var markdownEditorPreviewClasses = "h-full min-h-0 overflow-auto p-4 text-sm leading-7 text-[var(--tiger-text,#111827)] [&_a]:text-[var(--tiger-primary,#2563eb)] [&_a]:underline [&_blockquote]:border-l-4 [&_blockquote]:border-[var(--tiger-border,#d1d5db)] [&_blockquote]:pl-3 [&_blockquote]:text-[var(--tiger-text-secondary,#6b7280)] [&_code]:rounded [&_code]:bg-[var(--tiger-bg-secondary,#f3f4f6)] [&_code]:px-1 [&_code]:py-0.5 [&_code]:font-mono [&_code]:text-[0.9em] [&_h1]:mb-3 [&_h1]:text-2xl [&_h1]:font-semibold [&_h2]:mb-2 [&_h2]:text-xl [&_h2]:font-semibold [&_h3]:mb-2 [&_h3]:text-lg [&_h3]:font-semibold [&_hr]:my-4 [&_hr]:border-[var(--tiger-border,#d1d5db)] [&_img]:max-w-full [&_li]:my-1 [&_ol]:my-2 [&_ol]:list-decimal [&_ol]:pl-6 [&_p]:my-2 [&_pre]:my-3 [&_pre]:overflow-auto [&_pre]:rounded [&_pre]:bg-[var(--tiger-bg-secondary,#f3f4f6)] [&_pre]:p-3 [&_pre_code]:bg-transparent [&_pre_code]:p-0 [&_table]:my-3 [&_table]:w-full [&_table]:border-collapse [&_td]:border [&_td]:border-[var(--tiger-border,#d1d5db)] [&_td]:px-2 [&_td]:py-1 [&_th]:border [&_th]:border-[var(--tiger-border,#d1d5db)] [&_th]:bg-[var(--tiger-bg-secondary,#f9fafb)] [&_th]:px-2 [&_th]:py-1 [&_th]:text-left [&_ul]:my-2 [&_ul]:list-disc [&_ul]:pl-6";
|
|
17475
18364
|
var markdownEditorEmptyPreviewClasses = "text-[var(--tiger-text-tertiary,#9ca3af)]";
|
|
17476
18365
|
var markdownEditorSplitDividerClasses = "border-l border-[var(--tiger-border,#d1d5db)]";
|
|
17477
|
-
|
|
17478
|
-
|
|
17479
|
-
|
|
17480
|
-
|
|
17481
|
-
|
|
17482
|
-
|
|
17483
|
-
|
|
17484
|
-
|
|
17485
|
-
|
|
17486
|
-
|
|
17487
|
-
|
|
17488
|
-
|
|
17489
|
-
|
|
17490
|
-
|
|
17491
|
-
|
|
17492
|
-
|
|
17493
|
-
|
|
18366
|
+
function markdownToolbarTooltip(label, hotkey) {
|
|
18367
|
+
return hotkey ? `${label} (${hotkey})` : label;
|
|
18368
|
+
}
|
|
18369
|
+
function createDefaultMarkdownToolbar(labels) {
|
|
18370
|
+
return [
|
|
18371
|
+
{
|
|
18372
|
+
name: "bold",
|
|
18373
|
+
label: "B",
|
|
18374
|
+
tooltip: markdownToolbarTooltip(labels.bold, "Ctrl+B"),
|
|
18375
|
+
hotkey: "Ctrl+B"
|
|
18376
|
+
},
|
|
18377
|
+
{
|
|
18378
|
+
name: "italic",
|
|
18379
|
+
label: "I",
|
|
18380
|
+
tooltip: markdownToolbarTooltip(labels.italic, "Ctrl+I"),
|
|
18381
|
+
hotkey: "Ctrl+I"
|
|
18382
|
+
},
|
|
18383
|
+
{ name: "strikethrough", label: "S", tooltip: labels.strikethrough },
|
|
18384
|
+
{ type: "separator" },
|
|
18385
|
+
{ name: "heading", label: "H", tooltip: labels.heading },
|
|
18386
|
+
{ name: "blockquote", label: labels.blockquote, tooltip: labels.blockquote },
|
|
18387
|
+
{ name: "unorderedList", label: labels.unorderedList, tooltip: labels.unorderedList },
|
|
18388
|
+
{ name: "orderedList", label: "1.", tooltip: labels.orderedList },
|
|
18389
|
+
{ type: "separator" },
|
|
18390
|
+
{ name: "inlineCode", label: "`", tooltip: labels.inlineCode },
|
|
18391
|
+
{ name: "codeBlock", label: "{}", tooltip: labels.codeBlock },
|
|
18392
|
+
{
|
|
18393
|
+
name: "link",
|
|
18394
|
+
label: labels.link,
|
|
18395
|
+
tooltip: markdownToolbarTooltip(labels.link, "Ctrl+K"),
|
|
18396
|
+
hotkey: "Ctrl+K"
|
|
18397
|
+
},
|
|
18398
|
+
{ name: "image", label: labels.image, tooltip: labels.image },
|
|
18399
|
+
{ name: "table", label: labels.table, tooltip: labels.table },
|
|
18400
|
+
{ name: "horizontalRule", label: "HR", tooltip: labels.horizontalRule }
|
|
18401
|
+
];
|
|
18402
|
+
}
|
|
18403
|
+
var defaultMarkdownToolbar = createDefaultMarkdownToolbar(
|
|
18404
|
+
DEFAULT_MARKDOWN_EDITOR_LABELS
|
|
18405
|
+
);
|
|
17494
18406
|
var markdownModeLabels = {
|
|
17495
18407
|
edit: "Edit",
|
|
17496
18408
|
split: "Split",
|
|
@@ -18098,8 +19010,8 @@ function getInfiniteScrollContainerClasses(direction, className) {
|
|
|
18098
19010
|
}
|
|
18099
19011
|
|
|
18100
19012
|
// src/utils/file-manager-utils.ts
|
|
18101
|
-
var fileManagerContainerClasses = "tiger-file-manager relative flex flex-col border border-[var(--tiger-border,#e5e7eb)] rounded-[var(--tiger-radius-md,0.5rem)] bg-[var(--tiger-bg,#ffffff)] overflow-hidden";
|
|
18102
|
-
var fileManagerToolbarClasses = "flex items-center gap-2 px-3 py-2 border-b border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-bg-
|
|
19013
|
+
var fileManagerContainerClasses = "tiger-file-manager relative flex flex-col border border-[var(--tiger-border,#e5e7eb)] rounded-[var(--tiger-radius-md,0.5rem)] bg-[var(--tiger-file-manager-bg,var(--tiger-surface,#ffffff))] overflow-hidden";
|
|
19014
|
+
var fileManagerToolbarClasses = "flex items-center gap-2 px-3 py-2 border-b border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-file-manager-toolbar-bg,var(--tiger-surface-muted,#f9fafb))]";
|
|
18103
19015
|
var fileManagerBreadcrumbClasses = "flex items-center gap-1 text-sm text-[var(--tiger-text-secondary,#6b7280)]";
|
|
18104
19016
|
var fileManagerBreadcrumbItemClasses = "cursor-pointer hover:text-[var(--tiger-primary,#2563eb)] transition-colors";
|
|
18105
19017
|
var fileManagerBreadcrumbSeparatorClasses = "text-[var(--tiger-text-muted,#9ca3af)]";
|
|
@@ -18112,8 +19024,8 @@ var fileManagerItemIconClasses = "text-[var(--tiger-text-muted,#9ca3af)] flex-sh
|
|
|
18112
19024
|
var fileManagerItemNameClasses = "text-sm font-medium text-[var(--tiger-text,#1f2937)] truncate";
|
|
18113
19025
|
var fileManagerItemMetaClasses = "text-xs text-[var(--tiger-text-muted,#9ca3af)]";
|
|
18114
19026
|
var fileManagerEmptyClasses = "flex items-center justify-center py-12 text-sm text-[var(--tiger-text-muted,#9ca3af)]";
|
|
18115
|
-
var fileManagerLoadingClasses = "absolute inset-0 flex items-center justify-center bg-[var(--tiger-bg,#ffffff)]/60 z-10";
|
|
18116
|
-
var fileManagerSearchClasses = "px-3 py-1.5 text-sm border border-[var(--tiger-border,#e5e7eb)] rounded-[var(--tiger-radius-md,0.5rem)] bg-[var(--tiger-bg,#ffffff)] focus:outline-none focus:ring-2 focus:ring-[var(--tiger-primary,#2563eb)]/30";
|
|
19027
|
+
var fileManagerLoadingClasses = "absolute inset-0 flex items-center justify-center bg-[var(--tiger-file-manager-bg,var(--tiger-surface,#ffffff))]/60 z-10";
|
|
19028
|
+
var fileManagerSearchClasses = "px-3 py-1.5 text-sm border border-[var(--tiger-border,#e5e7eb)] rounded-[var(--tiger-radius-md,0.5rem)] bg-[var(--tiger-file-manager-bg,var(--tiger-surface,#ffffff))] focus:outline-none focus:ring-2 focus:ring-[var(--tiger-primary,#2563eb)]/30";
|
|
18117
19029
|
function sortFileItems(items, field = "name", order = "asc") {
|
|
18118
19030
|
const sorted = [...items].sort((a, b) => {
|
|
18119
19031
|
if (a.type !== b.type) {
|
|
@@ -18249,7 +19161,7 @@ function getImageAnnotationToolLabel(tool) {
|
|
|
18249
19161
|
function getImageAnnotationToolButtonClasses(active) {
|
|
18250
19162
|
return classNames(
|
|
18251
19163
|
imageAnnotationToolButtonClasses,
|
|
18252
|
-
active ? "border-[var(--tiger-primary,#2563eb)] bg-[var(--tiger-primary,#2563eb)] text-white" : "border-[var(--tiger-border,#d1d5db)] bg-[var(--tiger-bg,#ffffff)] text-[var(--tiger-text,#111827)] hover:bg-[var(--tiger-
|
|
19164
|
+
active ? "border-[var(--tiger-primary,#2563eb)] bg-[var(--tiger-primary,#2563eb)] text-white" : "border-[var(--tiger-border,#d1d5db)] bg-[var(--tiger-annotation-tool-bg,var(--tiger-surface,#ffffff))] text-[var(--tiger-annotation-tool-text,var(--tiger-text,#111827))] hover:bg-[var(--tiger-surface-muted,#f3f4f6)]"
|
|
18253
19165
|
);
|
|
18254
19166
|
}
|
|
18255
19167
|
function getImageAnnotationStrokeColor(annotation) {
|
|
@@ -18349,10 +19261,10 @@ function isImageAnnotationShapeTool(tool) {
|
|
|
18349
19261
|
|
|
18350
19262
|
// src/utils/org-chart-utils.ts
|
|
18351
19263
|
var orgChartNodeClasses = "transition-[filter,opacity,stroke] duration-150 ease-out focus:outline-none";
|
|
18352
|
-
var orgChartNodeRectClasses = "stroke-[var(--tiger-border,#d1d5db)] fill-[var(--tiger-bg,#ffffff)] drop-shadow-sm";
|
|
18353
|
-
var orgChartNodeLabelClasses = "pointer-events-none select-none fill-[var(--tiger-text,#111827)] text-sm font-semibold";
|
|
18354
|
-
var orgChartNodeTitleClasses = "pointer-events-none select-none fill-[var(--tiger-text-
|
|
18355
|
-
var orgChartNodeSubtitleClasses = "pointer-events-none select-none fill-[var(--tiger-text-
|
|
19264
|
+
var orgChartNodeRectClasses = "stroke-[var(--tiger-border,#d1d5db)] fill-[var(--tiger-org-node-bg,var(--tiger-surface,#ffffff))] drop-shadow-sm";
|
|
19265
|
+
var orgChartNodeLabelClasses = "pointer-events-none select-none fill-[var(--tiger-org-label,var(--tiger-text,#111827))] text-sm font-semibold";
|
|
19266
|
+
var orgChartNodeTitleClasses = "pointer-events-none select-none fill-[var(--tiger-org-title,var(--tiger-text-secondary,#6b7280))] text-xs";
|
|
19267
|
+
var orgChartNodeSubtitleClasses = "pointer-events-none select-none fill-[var(--tiger-org-subtitle,var(--tiger-text-secondary,#6b7280))] text-[11px]";
|
|
18356
19268
|
var orgChartLinkClasses = "fill-none stroke-[var(--tiger-border,#d1d5db)] stroke-2";
|
|
18357
19269
|
function normalizeOrgChartData(data) {
|
|
18358
19270
|
return Array.isArray(data) ? data : [data];
|
|
@@ -18467,9 +19379,7 @@ function flipLayoutNode(node) {
|
|
|
18467
19379
|
return {
|
|
18468
19380
|
...node,
|
|
18469
19381
|
x: node.y,
|
|
18470
|
-
y: node.x
|
|
18471
|
-
width: node.height,
|
|
18472
|
-
height: node.width
|
|
19382
|
+
y: node.x
|
|
18473
19383
|
};
|
|
18474
19384
|
}
|
|
18475
19385
|
function flipLayoutLink(link) {
|
|
@@ -18510,8 +19420,95 @@ function getGanttTaskAriaLabel(task) {
|
|
|
18510
19420
|
const progress = typeof task.progress === "number" ? `, ${clampProgress(task.progress)}%` : "";
|
|
18511
19421
|
return `${task.label}, ${start} to ${end}${progress}`;
|
|
18512
19422
|
}
|
|
18513
|
-
function getGanttTaskClasses(interactive, selected) {
|
|
18514
|
-
return classNames(
|
|
19423
|
+
function getGanttTaskClasses(interactive, selected, movable = false, grabbing = false) {
|
|
19424
|
+
return classNames(
|
|
19425
|
+
ganttBarClasses,
|
|
19426
|
+
grabbing ? "cursor-grabbing" : movable ? "cursor-grab" : interactive && "cursor-pointer",
|
|
19427
|
+
selected && "drop-shadow-md"
|
|
19428
|
+
);
|
|
19429
|
+
}
|
|
19430
|
+
function ganttPxToMs(deltaX, minMs, maxMs, timelineWidth) {
|
|
19431
|
+
if (!(timelineWidth > 0) || !Number.isFinite(timelineWidth) || !Number.isFinite(deltaX)) return 0;
|
|
19432
|
+
const rangeMs = maxMs - minMs;
|
|
19433
|
+
if (!Number.isFinite(rangeMs) || rangeMs <= 0) return 0;
|
|
19434
|
+
return deltaX * (rangeMs / timelineWidth);
|
|
19435
|
+
}
|
|
19436
|
+
function ganttDateValuesEqual(a, b) {
|
|
19437
|
+
if (Object.is(a, b)) return true;
|
|
19438
|
+
const aMs = normalizeGanttDate(a);
|
|
19439
|
+
const bMs = normalizeGanttDate(b);
|
|
19440
|
+
return Number.isFinite(aMs) && Number.isFinite(bMs) && aMs === bMs;
|
|
19441
|
+
}
|
|
19442
|
+
function clampGanttDragDeltaX(deltaX, barX, barWidth, taskLabelWidth, layoutWidth) {
|
|
19443
|
+
if (!Number.isFinite(deltaX)) return 0;
|
|
19444
|
+
const minDelta = taskLabelWidth - barX;
|
|
19445
|
+
const maxDelta = layoutWidth - barX - barWidth;
|
|
19446
|
+
if (!Number.isFinite(minDelta) || !Number.isFinite(maxDelta) || minDelta > maxDelta) {
|
|
19447
|
+
return 0;
|
|
19448
|
+
}
|
|
19449
|
+
return Math.min(maxDelta, Math.max(minDelta, deltaX));
|
|
19450
|
+
}
|
|
19451
|
+
function shiftGanttTaskDates(task, deltaMs, options = {}) {
|
|
19452
|
+
const startMs = normalizeGanttDate(task.start);
|
|
19453
|
+
const endMs = normalizeGanttDate(task.end);
|
|
19454
|
+
if (!Number.isFinite(startMs) || !Number.isFinite(endMs)) return { ...task };
|
|
19455
|
+
const dayDelta = Math.round((Number.isFinite(deltaMs) ? deltaMs : 0) / DAY_MS);
|
|
19456
|
+
if (dayDelta === 0) {
|
|
19457
|
+
return {
|
|
19458
|
+
...task,
|
|
19459
|
+
start: cloneGanttDateValue(task.start),
|
|
19460
|
+
end: cloneGanttDateValue(task.end)
|
|
19461
|
+
};
|
|
19462
|
+
}
|
|
19463
|
+
let nextStart = addLocalDays(startMs, dayDelta);
|
|
19464
|
+
let nextEnd = addLocalDays(endMs, dayDelta);
|
|
19465
|
+
if (nextEnd.getTime() < nextStart.getTime()) {
|
|
19466
|
+
const swapped = nextStart;
|
|
19467
|
+
nextStart = nextEnd;
|
|
19468
|
+
nextEnd = swapped;
|
|
19469
|
+
}
|
|
19470
|
+
const durationMs = nextEnd.getTime() - nextStart.getTime();
|
|
19471
|
+
const minMs = options.minMs;
|
|
19472
|
+
const maxMs = options.maxMs;
|
|
19473
|
+
const hasMin = minMs !== void 0 && Number.isFinite(minMs);
|
|
19474
|
+
const hasMax = maxMs !== void 0 && Number.isFinite(maxMs);
|
|
19475
|
+
if (hasMin && hasMax && durationMs > maxMs - minMs) {
|
|
19476
|
+
nextStart = new Date(minMs);
|
|
19477
|
+
nextEnd = new Date(minMs + durationMs);
|
|
19478
|
+
} else {
|
|
19479
|
+
if (hasMin && nextStart.getTime() < minMs) {
|
|
19480
|
+
nextStart = new Date(minMs);
|
|
19481
|
+
nextEnd = new Date(minMs + durationMs);
|
|
19482
|
+
}
|
|
19483
|
+
if (hasMax && nextEnd.getTime() > maxMs) {
|
|
19484
|
+
nextEnd = new Date(maxMs);
|
|
19485
|
+
nextStart = new Date(maxMs - durationMs);
|
|
19486
|
+
}
|
|
19487
|
+
if (hasMin && nextStart.getTime() < minMs) {
|
|
19488
|
+
nextStart = new Date(minMs);
|
|
19489
|
+
nextEnd = new Date(minMs + durationMs);
|
|
19490
|
+
}
|
|
19491
|
+
}
|
|
19492
|
+
return {
|
|
19493
|
+
...task,
|
|
19494
|
+
start: preserveGanttDateValue(task.start, nextStart),
|
|
19495
|
+
end: preserveGanttDateValue(task.end, nextEnd)
|
|
19496
|
+
};
|
|
19497
|
+
}
|
|
19498
|
+
function moveGanttTaskByPx(task, deltaX, range) {
|
|
19499
|
+
const deltaMs = ganttPxToMs(deltaX, range.minMs, range.maxMs, range.timelineWidth);
|
|
19500
|
+
return shiftGanttTaskDates(task, deltaMs, { minMs: range.minMs, maxMs: range.maxMs });
|
|
19501
|
+
}
|
|
19502
|
+
function applyGanttTaskDateOverlay(data, overlay) {
|
|
19503
|
+
if (!overlay || overlay.size === 0) return data;
|
|
19504
|
+
return data.map((task) => {
|
|
19505
|
+
const entry = overlay.get(task.id);
|
|
19506
|
+
if (!entry) return task;
|
|
19507
|
+
if (entry.baseStart !== void 0 && entry.baseEnd !== void 0 && (!ganttDateValuesEqual(task.start, entry.baseStart) || !ganttDateValuesEqual(task.end, entry.baseEnd))) {
|
|
19508
|
+
return task;
|
|
19509
|
+
}
|
|
19510
|
+
return { ...task, start: entry.start, end: entry.end };
|
|
19511
|
+
});
|
|
18515
19512
|
}
|
|
18516
19513
|
function getGanttDependencyPath(dependency) {
|
|
18517
19514
|
const midX = dependency.sourceX + Math.max(16, (dependency.targetX - dependency.sourceX) / 2);
|
|
@@ -18686,10 +19683,33 @@ function addTick(date, scale) {
|
|
|
18686
19683
|
else next.setDate(next.getDate() + 1);
|
|
18687
19684
|
return next;
|
|
18688
19685
|
}
|
|
19686
|
+
function isYearMonthDayString(value) {
|
|
19687
|
+
return typeof value === "string" && /^\d{4}-\d{2}-\d{2}$/.test(value);
|
|
19688
|
+
}
|
|
19689
|
+
function toYearMonthDayString(date) {
|
|
19690
|
+
const year = date.getFullYear();
|
|
19691
|
+
const month = `${date.getMonth() + 1}`.padStart(2, "0");
|
|
19692
|
+
const day = `${date.getDate()}`.padStart(2, "0");
|
|
19693
|
+
return `${year}-${month}-${day}`;
|
|
19694
|
+
}
|
|
19695
|
+
function cloneGanttDateValue(value) {
|
|
19696
|
+
return value instanceof Date ? new Date(value.getTime()) : value;
|
|
19697
|
+
}
|
|
19698
|
+
function addLocalDays(ms, days) {
|
|
19699
|
+
const date = new Date(ms);
|
|
19700
|
+
date.setDate(date.getDate() + days);
|
|
19701
|
+
return date;
|
|
19702
|
+
}
|
|
19703
|
+
function preserveGanttDateValue(original, next) {
|
|
19704
|
+
if (isYearMonthDayString(original)) return toYearMonthDayString(next);
|
|
19705
|
+
if (original instanceof Date) return next;
|
|
19706
|
+
if (typeof original === "number") return next.getTime();
|
|
19707
|
+
return toYearMonthDayString(next);
|
|
19708
|
+
}
|
|
18689
19709
|
|
|
18690
19710
|
// src/utils/input-group-utils.ts
|
|
18691
19711
|
var inputGroupBaseClasses = "inline-flex items-stretch w-full";
|
|
18692
|
-
var inputGroupCompactClasses = "[&>*:not(:first-child):not(:last-child)]
|
|
19712
|
+
var inputGroupCompactClasses = "[&>*:not(:first-child):not(:last-child)]:!rounded-none [&>*:first-child]:!rounded-r-none [&>*:last-child]:!rounded-l-none [&>*:not(:first-child)]:-ml-px [&>*:focus-within]:z-10 [&>*:focus-within]:relative";
|
|
18693
19713
|
var inputGroupSpacedClasses = "gap-2";
|
|
18694
19714
|
var inputGroupAddonBaseClasses = "inline-flex items-center justify-center border border-[var(--tiger-border,#e5e7eb)] bg-[var(--tiger-surface-muted,#f9fafb)] text-[var(--tiger-text-muted,#6b7280)] whitespace-nowrap";
|
|
18695
19715
|
var inputGroupAddonSizeClasses = {
|
|
@@ -19010,7 +20030,7 @@ function loadImage(src) {
|
|
|
19010
20030
|
}
|
|
19011
20031
|
|
|
19012
20032
|
// src/utils/print-layout-utils.ts
|
|
19013
|
-
var printLayoutBaseClasses = "tiger-print-layout relative bg-white shadow-sm border border-[var(--tiger-border,#e5e7eb)] mx-auto";
|
|
20033
|
+
var printLayoutBaseClasses = "tiger-print-layout relative bg-white text-[var(--tiger-print-ink,#111827)] shadow-sm border border-[var(--tiger-border,#e5e7eb)] mx-auto";
|
|
19014
20034
|
var printLayoutHeaderClasses = "hidden print:block text-center text-sm text-[var(--tiger-text-muted,#6b7280)] border-b border-[var(--tiger-border,#e5e7eb)] py-2 mb-4";
|
|
19015
20035
|
var printLayoutFooterClasses = "hidden print:block text-center text-xs text-[var(--tiger-text-muted,#6b7280)] border-t border-[var(--tiger-border,#e5e7eb)] pt-2 mt-4";
|
|
19016
20036
|
var printLayoutPageBreakClasses = 'border-t-2 border-dashed border-[var(--tiger-border,#e5e7eb)] my-4 print:hidden relative before:content-["Page_Break"] before:absolute before:left-1/2 before:-translate-x-1/2 before:-translate-y-1/2 before:bg-white before:px-2 before:text-xs before:text-[var(--tiger-text-muted,#6b7280)]';
|
|
@@ -19043,11 +20063,11 @@ var printLayoutPrintStyles = `
|
|
|
19043
20063
|
// src/utils/image-viewer-utils.ts
|
|
19044
20064
|
var imageViewerBackdropClasses = "fixed inset-0 bg-[var(--tiger-image-mask,rgba(0,0,0,0.85))] z-50 flex items-center justify-center";
|
|
19045
20065
|
var imageViewerImgClasses = "max-h-[90vh] max-w-[90vw] select-none transition-transform duration-200 ease-out cursor-grab active:cursor-grabbing touch-none";
|
|
19046
|
-
var imageViewerToolbarClasses = "fixed bottom-6 left-1/2 -translate-x-1/2 z-50 flex items-center gap-2 bg-[var(--tiger-
|
|
20066
|
+
var imageViewerToolbarClasses = "fixed bottom-6 left-1/2 -translate-x-1/2 z-50 flex items-center gap-2 bg-[var(--tiger-image-toolbar-bg,rgba(0,0,0,0.6))] backdrop-blur-sm rounded-[var(--tiger-radius-md,0.5rem)] px-4 py-2";
|
|
19047
20067
|
var imageViewerToolbarBtnClasses = "p-2 text-white hover:bg-white/20 rounded-[var(--tiger-radius-md,0.5rem)] transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-white";
|
|
19048
|
-
var imageViewerNavBtnClasses = "fixed top-1/2 -translate-y-1/2 z-50 p-3 text-white bg-[var(--tiger-
|
|
20068
|
+
var imageViewerNavBtnClasses = "fixed top-1/2 -translate-y-1/2 z-50 p-3 text-white bg-[var(--tiger-image-toolbar-bg,rgba(0,0,0,0.6))] hover:bg-white/20 rounded-full transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-white";
|
|
19049
20069
|
var imageViewerCloseBtnClasses = "fixed top-4 right-4 z-50 p-2 text-white hover:bg-white/20 rounded-[var(--tiger-radius-md,0.5rem)] transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-white";
|
|
19050
|
-
var imageViewerCounterClasses = "fixed top-4 left-1/2 -translate-x-1/2 z-50 text-white text-sm bg-[var(--tiger-
|
|
20070
|
+
var imageViewerCounterClasses = "fixed top-4 left-1/2 -translate-x-1/2 z-50 text-white text-sm bg-[var(--tiger-image-toolbar-bg,rgba(0,0,0,0.6))] rounded-full px-3 py-1";
|
|
19051
20071
|
var imageViewerIcons = {
|
|
19052
20072
|
zoomIn: zoomInIconPath,
|
|
19053
20073
|
zoomOut: zoomOutIconPath,
|
|
@@ -19427,6 +20447,10 @@ var THEME_CSS_VARS = {
|
|
|
19427
20447
|
chart4: "--tiger-chart-4",
|
|
19428
20448
|
chart5: "--tiger-chart-5",
|
|
19429
20449
|
chart6: "--tiger-chart-6",
|
|
20450
|
+
// Aliases of existing semantic tokens (not a third color system)
|
|
20451
|
+
textMuted: "--tiger-text-muted",
|
|
20452
|
+
fill: "--tiger-fill",
|
|
20453
|
+
bg: "--tiger-bg",
|
|
19430
20454
|
// Breakpoints
|
|
19431
20455
|
breakpointXs: "--tiger-breakpoint-xs",
|
|
19432
20456
|
breakpointSm: "--tiger-breakpoint-sm",
|
|
@@ -19434,6 +20458,23 @@ var THEME_CSS_VARS = {
|
|
|
19434
20458
|
breakpointLg: "--tiger-breakpoint-lg",
|
|
19435
20459
|
breakpointXl: "--tiger-breakpoint-xl"
|
|
19436
20460
|
};
|
|
20461
|
+
var THEME_CSS_VAR_ALIAS_SOURCES = {
|
|
20462
|
+
textMuted: "textSecondary",
|
|
20463
|
+
fill: "surfaceMuted",
|
|
20464
|
+
bg: "surface"
|
|
20465
|
+
};
|
|
20466
|
+
function semanticColorsToCssVars(colors = {}) {
|
|
20467
|
+
const vars = {};
|
|
20468
|
+
for (const [key, value] of Object.entries(colors)) {
|
|
20469
|
+
const varName = THEME_CSS_VARS[key];
|
|
20470
|
+
if (varName && value) vars[varName] = value;
|
|
20471
|
+
}
|
|
20472
|
+
for (const aliasKey of Object.keys(THEME_CSS_VAR_ALIAS_SOURCES)) {
|
|
20473
|
+
const sourceKey = THEME_CSS_VAR_ALIAS_SOURCES[aliasKey];
|
|
20474
|
+
vars[THEME_CSS_VARS[aliasKey]] = `var(${THEME_CSS_VARS[sourceKey]})`;
|
|
20475
|
+
}
|
|
20476
|
+
return vars;
|
|
20477
|
+
}
|
|
19437
20478
|
var cssVarCache = /* @__PURE__ */ new WeakMap();
|
|
19438
20479
|
function setCssVarsCached(element, vars) {
|
|
19439
20480
|
let cache = cssVarCache.get(element);
|
|
@@ -19715,18 +20756,8 @@ var defaultTheme = {
|
|
|
19715
20756
|
};
|
|
19716
20757
|
|
|
19717
20758
|
// src/tailwind-plugin.ts
|
|
19718
|
-
|
|
19719
|
-
|
|
19720
|
-
for (const [key, value] of Object.entries(colors)) {
|
|
19721
|
-
const varName = THEME_CSS_VARS[key];
|
|
19722
|
-
if (varName && value) {
|
|
19723
|
-
vars[varName] = value;
|
|
19724
|
-
}
|
|
19725
|
-
}
|
|
19726
|
-
return vars;
|
|
19727
|
-
}
|
|
19728
|
-
var tigercatTheme = presetToVars(defaultThemeLightColors);
|
|
19729
|
-
var tigercatDarkTheme = presetToVars(defaultThemeDarkColors);
|
|
20759
|
+
var tigercatTheme = semanticColorsToCssVars(defaultThemeLightColors);
|
|
20760
|
+
var tigercatDarkTheme = semanticColorsToCssVars(defaultThemeDarkColors);
|
|
19730
20761
|
var tigercatDirectionBase = {
|
|
19731
20762
|
'[dir="rtl"] .tiger-rtl-mirror, [data-tiger-dir="rtl"] .tiger-rtl-mirror': {
|
|
19732
20763
|
transform: "scaleX(-1)"
|
|
@@ -19768,8 +20799,8 @@ var tigercatPlugin = plugin(function({ addBase }) {
|
|
|
19768
20799
|
function createTigercatPlugin(options = {}) {
|
|
19769
20800
|
return plugin(function({ addBase }) {
|
|
19770
20801
|
const preset = options.preset;
|
|
19771
|
-
const lightVars = preset?.light?.colors ?
|
|
19772
|
-
const darkVars = preset?.dark?.colors ?
|
|
20802
|
+
const lightVars = preset?.light?.colors ? semanticColorsToCssVars(preset.light.colors) : tigercatTheme;
|
|
20803
|
+
const darkVars = preset?.dark?.colors ? semanticColorsToCssVars(preset.dark.colors) : tigercatDarkTheme;
|
|
19773
20804
|
addBase({
|
|
19774
20805
|
":root": { ...lightVars, ...MODERN_BASE_TOKENS_LIGHT },
|
|
19775
20806
|
".dark": { ...darkVars, ...MODERN_BASE_TOKENS_DARK },
|
|
@@ -19833,13 +20864,9 @@ var THEME_CONFIG_CSS_VARS = {
|
|
|
19833
20864
|
}
|
|
19834
20865
|
};
|
|
19835
20866
|
function themeConfigToCssVars(config) {
|
|
19836
|
-
const vars = {
|
|
19837
|
-
|
|
19838
|
-
|
|
19839
|
-
const varName = THEME_CSS_VARS[key];
|
|
19840
|
-
if (varName && value) vars[varName] = value;
|
|
19841
|
-
}
|
|
19842
|
-
}
|
|
20867
|
+
const vars = {
|
|
20868
|
+
...semanticColorsToCssVars(config.colors)
|
|
20869
|
+
};
|
|
19843
20870
|
for (const section of ["typography", "radius", "shadows", "spacing", "motion"]) {
|
|
19844
20871
|
const values = config[section];
|
|
19845
20872
|
if (!values) continue;
|
|
@@ -20932,7 +21959,7 @@ var designTokens = {
|
|
|
20932
21959
|
};
|
|
20933
21960
|
|
|
20934
21961
|
// src/index.ts
|
|
20935
|
-
var version = "2.1.
|
|
21962
|
+
var version = "2.1.2";
|
|
20936
21963
|
export {
|
|
20937
21964
|
ANIMATION_DURATION_FAST_MS,
|
|
20938
21965
|
ANIMATION_DURATION_MS,
|
|
@@ -20946,14 +21973,21 @@ export {
|
|
|
20946
21973
|
COUNTDOWN_DEFAULT_FORMAT,
|
|
20947
21974
|
COUNTDOWN_DEFAULT_INTERVAL_MS,
|
|
20948
21975
|
CROP_HANDLES,
|
|
21976
|
+
DEFAULT_ACTIVITY_FEED_LABELS,
|
|
20949
21977
|
DEFAULT_AVATAR_GROUP_LABELS,
|
|
20950
21978
|
DEFAULT_CALENDAR_LABELS,
|
|
20951
21979
|
DEFAULT_CAROUSEL_LABELS,
|
|
20952
21980
|
DEFAULT_CHART_COLORS,
|
|
20953
21981
|
DEFAULT_CHART_LABELS,
|
|
21982
|
+
DEFAULT_CHAT_WINDOW_LABELS,
|
|
21983
|
+
DEFAULT_CODE_LABELS,
|
|
21984
|
+
DEFAULT_COLOR_PICKER_LABELS,
|
|
21985
|
+
DEFAULT_COMMENT_THREAD_LABELS,
|
|
20954
21986
|
DEFAULT_CRON_EDITOR_LABELS,
|
|
20955
21987
|
DEFAULT_DATA_EXPORT_LABELS,
|
|
20956
21988
|
DEFAULT_FILE_MANAGER_LABELS,
|
|
21989
|
+
DEFAULT_FLOATING_HOVER_HIDE_DELAY_MS,
|
|
21990
|
+
DEFAULT_FLOATING_HOVER_SHOW_DELAY_MS,
|
|
20957
21991
|
DEFAULT_FORM_VALIDATION_LABELS,
|
|
20958
21992
|
DEFAULT_FORM_WIZARD_LABELS,
|
|
20959
21993
|
DEFAULT_HEATMAP_CANVAS_THRESHOLD,
|
|
@@ -20970,6 +22004,7 @@ export {
|
|
|
20970
22004
|
DEFAULT_KBD_SEPARATOR,
|
|
20971
22005
|
DEFAULT_KBD_SIZE,
|
|
20972
22006
|
DEFAULT_KBD_VARIANT,
|
|
22007
|
+
DEFAULT_LOADING_BACKGROUND,
|
|
20973
22008
|
DEFAULT_LOADING_BAR_ARIA_LABEL,
|
|
20974
22009
|
DEFAULT_LOADING_BAR_COLOR,
|
|
20975
22010
|
DEFAULT_LOADING_BAR_HEIGHT,
|
|
@@ -20981,6 +22016,7 @@ export {
|
|
|
20981
22016
|
DEFAULT_MARQUEE_PAUSE_ON_HOVER,
|
|
20982
22017
|
DEFAULT_MARQUEE_REPEAT,
|
|
20983
22018
|
DEFAULT_MASK_TOKENS,
|
|
22019
|
+
DEFAULT_NOTIFICATION_CENTER_LABELS,
|
|
20984
22020
|
DEFAULT_PAGINATION_LABELS,
|
|
20985
22021
|
DEFAULT_RATE_LABELS,
|
|
20986
22022
|
DEFAULT_RICH_TEXT_EDITOR_LABELS,
|
|
@@ -21082,10 +22118,15 @@ export {
|
|
|
21082
22118
|
ThemeManager,
|
|
21083
22119
|
VIEW_TRANSITION_CSS,
|
|
21084
22120
|
WEEKDAYS,
|
|
22121
|
+
ZH_CN_ACTIVITY_FEED_LABELS,
|
|
21085
22122
|
ZH_CN_AVATAR_GROUP_LABELS,
|
|
21086
22123
|
ZH_CN_CALENDAR_LABELS,
|
|
21087
22124
|
ZH_CN_CAROUSEL_LABELS,
|
|
21088
22125
|
ZH_CN_CHART_LABELS,
|
|
22126
|
+
ZH_CN_CHAT_WINDOW_LABELS,
|
|
22127
|
+
ZH_CN_CODE_LABELS,
|
|
22128
|
+
ZH_CN_COLOR_PICKER_LABELS,
|
|
22129
|
+
ZH_CN_COMMENT_THREAD_LABELS,
|
|
21089
22130
|
ZH_CN_CRON_EDITOR_LABELS,
|
|
21090
22131
|
ZH_CN_DATA_EXPORT_LABELS,
|
|
21091
22132
|
ZH_CN_FILE_MANAGER_LABELS,
|
|
@@ -21095,6 +22136,7 @@ export {
|
|
|
21095
22136
|
ZH_CN_IMAGE_VIEWER_LABELS,
|
|
21096
22137
|
ZH_CN_INPUT_OTP_LABELS,
|
|
21097
22138
|
ZH_CN_MARKDOWN_EDITOR_LABELS,
|
|
22139
|
+
ZH_CN_NOTIFICATION_CENTER_LABELS,
|
|
21098
22140
|
ZH_CN_PAGINATION_LABELS,
|
|
21099
22141
|
ZH_CN_RATE_LABELS,
|
|
21100
22142
|
ZH_CN_RICH_TEXT_EDITOR_LABELS,
|
|
@@ -21149,10 +22191,12 @@ export {
|
|
|
21149
22191
|
animationDelayClasses,
|
|
21150
22192
|
animationDelayStyles,
|
|
21151
22193
|
announceToScreenReader,
|
|
22194
|
+
appendDefaultTaskBoardCard,
|
|
21152
22195
|
applyAspectRatio,
|
|
21153
22196
|
applyChartBrush,
|
|
21154
22197
|
applyFileDragReorder,
|
|
21155
22198
|
applyFloatingStyles,
|
|
22199
|
+
applyGanttTaskDateOverlay,
|
|
21156
22200
|
applyMarkdownToolbarAction,
|
|
21157
22201
|
applyMaskInput,
|
|
21158
22202
|
applyNumberKeyboardInput,
|
|
@@ -21207,6 +22251,7 @@ export {
|
|
|
21207
22251
|
buildActivityGroups,
|
|
21208
22252
|
buildChartLegendItems,
|
|
21209
22253
|
buildChartSeriesKeys,
|
|
22254
|
+
buildChatMessageStatusInfo,
|
|
21210
22255
|
buildCommentTree,
|
|
21211
22256
|
buildCronFieldValue,
|
|
21212
22257
|
buildNotificationGroups,
|
|
@@ -21298,6 +22343,7 @@ export {
|
|
|
21298
22343
|
chevronRightSolidIcon20PathD,
|
|
21299
22344
|
clampBarWidth,
|
|
21300
22345
|
clampDimensions,
|
|
22346
|
+
clampGanttDragDeltaX,
|
|
21301
22347
|
clampImageAnnotationPoint,
|
|
21302
22348
|
clampImageAnnotationUnit,
|
|
21303
22349
|
clampLoadingBarPercentage,
|
|
@@ -21332,6 +22378,7 @@ export {
|
|
|
21332
22378
|
codeBlockContainerClasses,
|
|
21333
22379
|
codeBlockCopyButtonBaseClasses,
|
|
21334
22380
|
codeBlockCopyButtonCopiedClasses,
|
|
22381
|
+
codeBlockCopyButtonFailedClasses,
|
|
21335
22382
|
codeBlockPreClasses,
|
|
21336
22383
|
codeEditorActiveLineDarkClasses,
|
|
21337
22384
|
codeEditorActiveLineLightClasses,
|
|
@@ -21416,14 +22463,18 @@ export {
|
|
|
21416
22463
|
createChartLinkController,
|
|
21417
22464
|
createChartPointerMoveScheduler,
|
|
21418
22465
|
createChartResizeObserverController,
|
|
22466
|
+
createCircleRingPath,
|
|
21419
22467
|
createCollapseTransitionController,
|
|
21420
22468
|
createColumnDragData,
|
|
21421
22469
|
createCountdownPayload,
|
|
21422
22470
|
createDefaultDragSnapshot,
|
|
22471
|
+
createDefaultMarkdownToolbar,
|
|
22472
|
+
createDefaultRichTextToolbar,
|
|
21423
22473
|
createDefaultTransform,
|
|
21424
22474
|
createDocumentDragSession,
|
|
21425
22475
|
createDragState,
|
|
21426
22476
|
createEmptyScrollAreaState,
|
|
22477
|
+
createFloatingHoverDelayController,
|
|
21427
22478
|
createFloatingIdFactory,
|
|
21428
22479
|
createFocusTrap,
|
|
21429
22480
|
createFormConditionDependencies,
|
|
@@ -21452,6 +22503,8 @@ export {
|
|
|
21452
22503
|
createPinchState,
|
|
21453
22504
|
createPointScale,
|
|
21454
22505
|
createPolygonPath,
|
|
22506
|
+
createPolygonRingPath,
|
|
22507
|
+
createProgrammaticScrollLock,
|
|
21455
22508
|
createRafRepeatActionController,
|
|
21456
22509
|
createScrollSpyObserver,
|
|
21457
22510
|
createScrollSpyPayload,
|
|
@@ -21617,6 +22670,7 @@ export {
|
|
|
21617
22670
|
filterTreeNodes,
|
|
21618
22671
|
filterTreeSelectNodes,
|
|
21619
22672
|
findActiveAnchor,
|
|
22673
|
+
findActiveAnchorAtOffsetLine,
|
|
21620
22674
|
findCascaderOption,
|
|
21621
22675
|
findColumnFromPoint,
|
|
21622
22676
|
findFirstEnabledIndex,
|
|
@@ -21640,6 +22694,7 @@ export {
|
|
|
21640
22694
|
floatButtonGroupClasses,
|
|
21641
22695
|
floatButtonGroupExpandClasses,
|
|
21642
22696
|
floatButtonIconSizeClasses,
|
|
22697
|
+
floatButtonPlusIconPath,
|
|
21643
22698
|
floatButtonShapeClasses,
|
|
21644
22699
|
floatButtonSizeClasses,
|
|
21645
22700
|
floatButtonTypeClasses,
|
|
@@ -21655,6 +22710,7 @@ export {
|
|
|
21655
22710
|
formatBadgeContent,
|
|
21656
22711
|
formatBytes,
|
|
21657
22712
|
formatChatTime,
|
|
22713
|
+
formatColorPickerSelectPreset,
|
|
21658
22714
|
formatColorString,
|
|
21659
22715
|
formatCommentTime,
|
|
21660
22716
|
formatCountdown,
|
|
@@ -21687,9 +22743,11 @@ export {
|
|
|
21687
22743
|
fullscreenIcon,
|
|
21688
22744
|
ganttAxisTextClasses,
|
|
21689
22745
|
ganttBarClasses,
|
|
22746
|
+
ganttDateValuesEqual,
|
|
21690
22747
|
ganttDependencyClasses,
|
|
21691
22748
|
ganttLabelClasses,
|
|
21692
22749
|
ganttProgressClasses,
|
|
22750
|
+
ganttPxToMs,
|
|
21693
22751
|
ganttRowClasses,
|
|
21694
22752
|
ganttTodayLineClasses,
|
|
21695
22753
|
generateAvatarColor,
|
|
@@ -21705,6 +22763,7 @@ export {
|
|
|
21705
22763
|
getActiveLineIndex,
|
|
21706
22764
|
getActiveTourStepPosition,
|
|
21707
22765
|
getActiveTourSteps,
|
|
22766
|
+
getActivityFeedLabels,
|
|
21708
22767
|
getAlertIconPath,
|
|
21709
22768
|
getAlertTypeClasses,
|
|
21710
22769
|
getAlignClasses,
|
|
@@ -21780,6 +22839,7 @@ export {
|
|
|
21780
22839
|
getChartTooltipTransform,
|
|
21781
22840
|
getChatMessageStatusInfo,
|
|
21782
22841
|
getChatStatusBarClasses,
|
|
22842
|
+
getChatWindowLabels,
|
|
21783
22843
|
getCheckboxCellClasses,
|
|
21784
22844
|
getCheckboxClasses,
|
|
21785
22845
|
getCheckboxLabelClasses,
|
|
@@ -21790,6 +22850,7 @@ export {
|
|
|
21790
22850
|
getCodeEditorActiveLineClasses,
|
|
21791
22851
|
getCodeEditorCaretClasses,
|
|
21792
22852
|
getCodeEditorContainerClasses,
|
|
22853
|
+
getCodeLabels,
|
|
21793
22854
|
getColGutterClasses,
|
|
21794
22855
|
getColMergedStyleVars,
|
|
21795
22856
|
getColOrderStyleVars,
|
|
@@ -21798,12 +22859,14 @@ export {
|
|
|
21798
22859
|
getCollapseIconClasses,
|
|
21799
22860
|
getCollapsePanelClasses,
|
|
21800
22861
|
getCollapsePanelHeaderClasses,
|
|
22862
|
+
getColorPickerLabels,
|
|
21801
22863
|
getColorPickerTriggerClasses,
|
|
21802
22864
|
getColorSwatchButtonClasses,
|
|
21803
22865
|
getColorSwatchCheckClasses,
|
|
21804
22866
|
getColorSwatchOptionKey,
|
|
21805
22867
|
getColumnCardCount,
|
|
21806
22868
|
getColumnDropIndex,
|
|
22869
|
+
getCommentThreadLabels,
|
|
21807
22870
|
getComponentMotionStyle,
|
|
21808
22871
|
getComponentMotionTransition,
|
|
21809
22872
|
getComponentTransition,
|
|
@@ -21896,6 +22959,7 @@ export {
|
|
|
21896
22959
|
getFixedColumnStyle,
|
|
21897
22960
|
getFixedVirtualRange,
|
|
21898
22961
|
getFlexClasses,
|
|
22962
|
+
getFloatButtonGroupClasses,
|
|
21899
22963
|
getFloatingMiddleware,
|
|
21900
22964
|
getFocusTrapNavigation,
|
|
21901
22965
|
getFocusableElements2 as getFocusableElements,
|
|
@@ -21957,10 +23021,12 @@ export {
|
|
|
21957
23021
|
getInitialSubmenuHeightTransitionStyle,
|
|
21958
23022
|
getInitials,
|
|
21959
23023
|
getInputAffixClasses,
|
|
23024
|
+
getInputChromeClasses,
|
|
21960
23025
|
getInputClasses,
|
|
21961
23026
|
getInputClearButtonClasses,
|
|
21962
23027
|
getInputCountClasses,
|
|
21963
23028
|
getInputErrorClasses,
|
|
23029
|
+
getInputFieldClasses,
|
|
21964
23030
|
getInputGroupAddonClasses,
|
|
21965
23031
|
getInputGroupClasses,
|
|
21966
23032
|
getInputNumberFocusRingColor,
|
|
@@ -22043,6 +23109,7 @@ export {
|
|
|
22043
23109
|
getNextImageAnnotationTool,
|
|
22044
23110
|
getNextSlideIndex,
|
|
22045
23111
|
getNextTableSelectAllKeys,
|
|
23112
|
+
getNotificationCenterLabels,
|
|
22046
23113
|
getNotificationIconPath,
|
|
22047
23114
|
getNotificationTypeClasses,
|
|
22048
23115
|
getNumberExtent,
|
|
@@ -22187,6 +23254,7 @@ export {
|
|
|
22187
23254
|
getSplitButtonTriggerClasses,
|
|
22188
23255
|
getSplitterContainerClasses,
|
|
22189
23256
|
getSplitterGutterClasses,
|
|
23257
|
+
getSplitterGutterCssVars,
|
|
22190
23258
|
getSplitterGutterHandleClasses,
|
|
22191
23259
|
getSpotlightFuzzyScore,
|
|
22192
23260
|
getSpotlightOptionClasses,
|
|
@@ -22212,6 +23280,7 @@ export {
|
|
|
22212
23280
|
getSubMenuExpandIconClasses,
|
|
22213
23281
|
getSubMenuTitleClasses,
|
|
22214
23282
|
getSunburstGradientPrefix,
|
|
23283
|
+
getSunburstLabelPoint,
|
|
22215
23284
|
getSvgDefaultAttrs,
|
|
22216
23285
|
getSwitchClasses,
|
|
22217
23286
|
getSwitchThumbClasses,
|
|
@@ -22224,6 +23293,7 @@ export {
|
|
|
22224
23293
|
getTabPaneClasses,
|
|
22225
23294
|
getTableCellClasses,
|
|
22226
23295
|
getTableColgroup,
|
|
23296
|
+
getTableColumnDataKey,
|
|
22227
23297
|
getTableFixedCellClasses,
|
|
22228
23298
|
getTableFixedHeaderCellClasses,
|
|
22229
23299
|
getTableHeaderCellClasses,
|
|
@@ -22273,6 +23343,7 @@ export {
|
|
|
22273
23343
|
getTotalTextClasses,
|
|
22274
23344
|
getTouchDistance,
|
|
22275
23345
|
getTourLabels,
|
|
23346
|
+
getTourMaskHoleStyle,
|
|
22276
23347
|
getTourPopoverPosition,
|
|
22277
23348
|
getTourSpotlightStyle,
|
|
22278
23349
|
getTourTargetRect,
|
|
@@ -22441,6 +23512,7 @@ export {
|
|
|
22441
23512
|
isAtMax,
|
|
22442
23513
|
isAtMin,
|
|
22443
23514
|
isBrowser,
|
|
23515
|
+
isCalendarMonthDisabled,
|
|
22444
23516
|
isCascaderOptionExpandable,
|
|
22445
23517
|
isColorSwatchSelected,
|
|
22446
23518
|
isContentEmpty,
|
|
@@ -22557,6 +23629,7 @@ export {
|
|
|
22557
23629
|
lockOpenIcon24PathD,
|
|
22558
23630
|
manageLiveRegion,
|
|
22559
23631
|
mapToolbarAction,
|
|
23632
|
+
mapVisibleCardIndexToSource,
|
|
22560
23633
|
markdownEditorBodyClasses,
|
|
22561
23634
|
markdownEditorContainerBase,
|
|
22562
23635
|
markdownEditorContainerDisabled,
|
|
@@ -22640,6 +23713,7 @@ export {
|
|
|
22640
23713
|
moveCard,
|
|
22641
23714
|
moveCropRect,
|
|
22642
23715
|
moveFocusInMenu,
|
|
23716
|
+
moveGanttTaskByPx,
|
|
22643
23717
|
moveItemBetweenContainers,
|
|
22644
23718
|
movePan,
|
|
22645
23719
|
movePinch,
|
|
@@ -22647,6 +23721,7 @@ export {
|
|
|
22647
23721
|
musicIcon,
|
|
22648
23722
|
naturalTheme,
|
|
22649
23723
|
navigateToFolder,
|
|
23724
|
+
nextCommentLikeState,
|
|
22650
23725
|
nextIconPath,
|
|
22651
23726
|
nextLoadingBarTricklePercentage,
|
|
22652
23727
|
normalizeActiveKeys,
|
|
@@ -22713,6 +23788,7 @@ export {
|
|
|
22713
23788
|
paperclipIcon,
|
|
22714
23789
|
parseAspectRatio,
|
|
22715
23790
|
parseColorInput,
|
|
23791
|
+
parseColorParts,
|
|
22716
23792
|
parseCountdownTimestamp,
|
|
22717
23793
|
parseCronFieldControl,
|
|
22718
23794
|
parseDate,
|
|
@@ -22787,6 +23863,7 @@ export {
|
|
|
22787
23863
|
radioVisualBaseClasses,
|
|
22788
23864
|
rateActiveColor,
|
|
22789
23865
|
rateBaseClasses,
|
|
23866
|
+
rateHalfStarInnerClasses,
|
|
22790
23867
|
rateHoverColor,
|
|
22791
23868
|
rateInactiveColor,
|
|
22792
23869
|
readFileAsDataUrl,
|
|
@@ -22827,11 +23904,13 @@ export {
|
|
|
22827
23904
|
resizePanes,
|
|
22828
23905
|
resolveAffixTarget,
|
|
22829
23906
|
resolveAnchoredOverlayTarget,
|
|
23907
|
+
resolveAutoCompleteDisplayValue,
|
|
22830
23908
|
resolveCardPadding,
|
|
22831
23909
|
resolveCarouselSwipeDirection,
|
|
22832
23910
|
resolveChartPalette,
|
|
22833
23911
|
resolveChartTooltipContent,
|
|
22834
23912
|
resolveChartTooltipPosition,
|
|
23913
|
+
resolveCommentLikeState,
|
|
22835
23914
|
resolveConditionalFormRules,
|
|
22836
23915
|
resolveCreatableSelectOption,
|
|
22837
23916
|
resolveDragConfig,
|
|
@@ -22847,6 +23926,7 @@ export {
|
|
|
22847
23926
|
resolveImageCompareOrientation,
|
|
22848
23927
|
resolveImageComparePosition,
|
|
22849
23928
|
resolveImageCompareStep,
|
|
23929
|
+
resolveInitialPaneSizes,
|
|
22850
23930
|
resolveKbdSeparator,
|
|
22851
23931
|
resolveKbdSize,
|
|
22852
23932
|
resolveKbdVariant,
|
|
@@ -22940,6 +24020,7 @@ export {
|
|
|
22940
24020
|
selectOptionDisabledClasses,
|
|
22941
24021
|
selectOptionSelectedClasses,
|
|
22942
24022
|
selectSearchInputClasses,
|
|
24023
|
+
semanticColorsToCssVars,
|
|
22943
24024
|
semanticTokens,
|
|
22944
24025
|
sendIcon,
|
|
22945
24026
|
serializeChartSvg,
|
|
@@ -22949,6 +24030,7 @@ export {
|
|
|
22949
24030
|
setThemeColors,
|
|
22950
24031
|
shareIcon,
|
|
22951
24032
|
shieldCheckIcon,
|
|
24033
|
+
shiftGanttTaskDates,
|
|
22952
24034
|
shouldCloseOnMaskClick,
|
|
22953
24035
|
shouldCommitImageAnnotationBox,
|
|
22954
24036
|
shouldHideBadge,
|
|
@@ -23106,6 +24188,7 @@ export {
|
|
|
23106
24188
|
tableRowGroupHoverClasses,
|
|
23107
24189
|
tableRowHoverClasses,
|
|
23108
24190
|
tableRowStripedClasses,
|
|
24191
|
+
tableSortButtonClasses,
|
|
23109
24192
|
tableSummaryRowClasses,
|
|
23110
24193
|
tabsBaseClasses,
|
|
23111
24194
|
tagBaseClasses,
|
|
@@ -23260,6 +24343,7 @@ export {
|
|
|
23260
24343
|
watermarkFontDefaults,
|
|
23261
24344
|
watermarkWrapperClasses,
|
|
23262
24345
|
wifiIcon,
|
|
24346
|
+
writeCommentLikeOverlay,
|
|
23263
24347
|
zoomInIcon,
|
|
23264
24348
|
zoomInIconPath,
|
|
23265
24349
|
zoomOutIcon,
|