@underverse-ui/underverse 1.0.187 → 1.0.189
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/api-reference.json +1 -1
- package/dist/index.cjs +212 -14
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +42 -0
- package/dist/index.d.ts +42 -0
- package/dist/index.js +225 -21
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -808,6 +808,8 @@ var en_default = {
|
|
|
808
808
|
fileCardDesc: "Upload a file card attachment",
|
|
809
809
|
formCheckbox: "Form Checkbox",
|
|
810
810
|
formCheckboxDesc: "Insert an interactive checkbox field",
|
|
811
|
+
roundCheckbox: "Round Checkbox",
|
|
812
|
+
roundCheckboxDesc: "Insert a circular interactive checkbox",
|
|
811
813
|
formRadio: "Form Radio Button",
|
|
812
814
|
formRadioDesc: "Insert an interactive radio button field"
|
|
813
815
|
},
|
|
@@ -907,7 +909,10 @@ var en_default = {
|
|
|
907
909
|
alignVertical: "Vertical Alignment",
|
|
908
910
|
alignVerticalTop: "Top Align",
|
|
909
911
|
alignVerticalMiddle: "Middle Align",
|
|
910
|
-
alignVerticalBottom: "Bottom Align"
|
|
912
|
+
alignVerticalBottom: "Bottom Align",
|
|
913
|
+
textDirection: "Text Direction",
|
|
914
|
+
horizontalText: "Horizontal Text",
|
|
915
|
+
verticalText: "Vertical Text"
|
|
911
916
|
},
|
|
912
917
|
callout: {
|
|
913
918
|
selectEmoji: "Select Emoji",
|
|
@@ -1236,6 +1241,8 @@ var vi_default = {
|
|
|
1236
1241
|
fileCardDesc: "T\u1EA3i l\xEAn t\u1EC7p tin \u0111\xEDnh k\xE8m",
|
|
1237
1242
|
formCheckbox: "Checkbox bi\u1EC3u m\u1EABu",
|
|
1238
1243
|
formCheckboxDesc: "Th\xEAm \xF4 checkbox bi\u1EC3u m\u1EABu",
|
|
1244
|
+
roundCheckbox: "Checkbox tr\xF2n",
|
|
1245
|
+
roundCheckboxDesc: "Th\xEAm checkbox t\u01B0\u01A1ng t\xE1c h\xECnh tr\xF2n",
|
|
1239
1246
|
formRadio: "Radio bi\u1EC3u m\u1EABu",
|
|
1240
1247
|
formRadioDesc: "Th\xEAm n\xFAt ch\u1ECDn m\u1ED9t (Radio) bi\u1EC3u m\u1EABu"
|
|
1241
1248
|
},
|
|
@@ -1335,7 +1342,10 @@ var vi_default = {
|
|
|
1335
1342
|
alignVertical: "C\u0103n l\u1EC1 d\u1ECDc",
|
|
1336
1343
|
alignVerticalTop: "C\u0103n tr\xEAn",
|
|
1337
1344
|
alignVerticalMiddle: "C\u0103n gi\u1EEFa",
|
|
1338
|
-
alignVerticalBottom: "C\u0103n d\u01B0\u1EDBi"
|
|
1345
|
+
alignVerticalBottom: "C\u0103n d\u01B0\u1EDBi",
|
|
1346
|
+
textDirection: "H\u01B0\u1EDBng ch\u1EEF",
|
|
1347
|
+
horizontalText: "Ch\u1EEF ngang",
|
|
1348
|
+
verticalText: "Ch\u1EEF d\u1ECDc"
|
|
1339
1349
|
},
|
|
1340
1350
|
callout: {
|
|
1341
1351
|
selectEmoji: "Ch\u1ECDn Bi\u1EC3u t\u01B0\u1EE3ng",
|
|
@@ -1664,6 +1674,8 @@ var ko_default = {
|
|
|
1664
1674
|
fileCardDesc: "\uD30C\uC77C \uCE74\uB4DC \uCCA8\uBD80 \uD30C\uC77C\uC744 \uC5C5\uB85C\uB4DC\uD569\uB2C8\uB2E4",
|
|
1665
1675
|
formCheckbox: "\uC591\uC2DD \uCCB4\uD06C\uBC15\uC2A4",
|
|
1666
1676
|
formCheckboxDesc: "\uB300\uD654\uD615 \uCCB4\uD06C\uBC15\uC2A4 \uD544\uB4DC \uC0BD\uC785",
|
|
1677
|
+
roundCheckbox: "\uC6D0\uD615 \uCCB4\uD06C\uBC15\uC2A4",
|
|
1678
|
+
roundCheckboxDesc: "\uC6D0\uD615 \uB300\uD654\uD615 \uCCB4\uD06C\uBC15\uC2A4 \uC0BD\uC785",
|
|
1667
1679
|
formRadio: "\uC591\uC2DD \uB77C\uB514\uC624 \uBC84\uD2BC",
|
|
1668
1680
|
formRadioDesc: "\uB300\uD654\uD615 \uB77C\uB514\uC624 \uBC84\uD2BC \uD544\uB4DC \uC0BD\uC785"
|
|
1669
1681
|
},
|
|
@@ -1763,7 +1775,10 @@ var ko_default = {
|
|
|
1763
1775
|
alignVertical: "\uC138\uB85C \uB9DE\uCDA4",
|
|
1764
1776
|
alignVerticalTop: "\uC704\uCABD \uB9DE\uCDA4",
|
|
1765
1777
|
alignVerticalMiddle: "\uAC00\uC6B4\uB370 \uB9DE\uCDA4",
|
|
1766
|
-
alignVerticalBottom: "\uC544\uB798\uCABD \uB9DE\uCDA4"
|
|
1778
|
+
alignVerticalBottom: "\uC544\uB798\uCABD \uB9DE\uCDA4",
|
|
1779
|
+
textDirection: "\uD14D\uC2A4\uD2B8 \uBC29\uD5A5",
|
|
1780
|
+
horizontalText: "\uAC00\uB85C\uC4F0\uAE30",
|
|
1781
|
+
verticalText: "\uC138\uB85C\uC4F0\uAE30"
|
|
1767
1782
|
},
|
|
1768
1783
|
callout: {
|
|
1769
1784
|
selectEmoji: "\uC774\uBAA8\uC9C0 \uC120\uD0DD",
|
|
@@ -2092,6 +2107,8 @@ var ja_default = {
|
|
|
2092
2107
|
fileCardDesc: "\u30D5\u30A1\u30A4\u30EB\u30AB\u30FC\u30C9\u306E\u6DFB\u4ED8\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u307E\u3059",
|
|
2093
2108
|
formCheckbox: "\u30D5\u30A9\u30FC\u30E0\u30C1\u30A7\u30C3\u30AF\u30DC\u30C3\u30AF\u30B9",
|
|
2094
2109
|
formCheckboxDesc: "\u30A4\u30F3\u30BF\u30E9\u30AF\u30C6\u30A3\u30D6\u306A\u30C1\u30A7\u30C3\u30AF\u30DC\u30C3\u30AF\u30B9\u3092\u633F\u5165\u3057\u307E\u3059",
|
|
2110
|
+
roundCheckbox: "\u4E38\u578B\u30C1\u30A7\u30C3\u30AF\u30DC\u30C3\u30AF\u30B9",
|
|
2111
|
+
roundCheckboxDesc: "\u4E38\u578B\u306E\u30A4\u30F3\u30BF\u30E9\u30AF\u30C6\u30A3\u30D6\u306A\u30C1\u30A7\u30C3\u30AF\u30DC\u30C3\u30AF\u30B9\u3092\u633F\u5165\u3057\u307E\u3059",
|
|
2095
2112
|
formRadio: "\u30D5\u30A9\u30FC\u30E0\u30E9\u30B8\u30AA\u30DC\u30BF\u30F3",
|
|
2096
2113
|
formRadioDesc: "\u30A4\u30F3\u30BF\u30E9\u30AF\u30C6\u30A3\u30D6\u306A\u30E9\u30B8\u30AA\u30DC\u30BF\u30F3\u3092\u633F\u5165\u3057\u307E\u3059"
|
|
2097
2114
|
},
|
|
@@ -2191,7 +2208,10 @@ var ja_default = {
|
|
|
2191
2208
|
alignVertical: "\u5782\u76F4\u63C3\u3048",
|
|
2192
2209
|
alignVerticalTop: "\u4E0A\u63C3\u3048",
|
|
2193
2210
|
alignVerticalMiddle: "\u4E0A\u4E0B\u4E2D\u592E\u63C3\u3048",
|
|
2194
|
-
alignVerticalBottom: "\u4E0B\u63C3\u3048"
|
|
2211
|
+
alignVerticalBottom: "\u4E0B\u63C3\u3048",
|
|
2212
|
+
textDirection: "\u6587\u5B57\u65B9\u5411",
|
|
2213
|
+
horizontalText: "\u6A2A\u66F8\u304D",
|
|
2214
|
+
verticalText: "\u7E26\u66F8\u304D"
|
|
2195
2215
|
},
|
|
2196
2216
|
callout: {
|
|
2197
2217
|
selectEmoji: "\u7D75\u6587\u5B57\u3092\u9078\u629E",
|
|
@@ -25660,7 +25680,8 @@ function DataTableHeader({
|
|
|
25660
25680
|
const columnLabel = getColumnLabel(col.title) || col.key;
|
|
25661
25681
|
const sortByText = sortByLabel ?? gi18n.sortBy ?? "Sort by";
|
|
25662
25682
|
const sortLabel = `${sortByText} ${columnLabel}`;
|
|
25663
|
-
const
|
|
25683
|
+
const useEndIcon = col.iconPosition === "end";
|
|
25684
|
+
const titleContent = /* @__PURE__ */ jsxs55("div", { className: cn("flex items-center gap-1", useEndIcon && "flex-1 justify-between"), children: [
|
|
25664
25685
|
/* @__PURE__ */ jsx68("span", { className: cn("font-medium whitespace-nowrap select-text", headerTitleClass), children: col.title }),
|
|
25665
25686
|
col.sortable && /* @__PURE__ */ jsx68(
|
|
25666
25687
|
Tooltip,
|
|
@@ -25673,8 +25694,8 @@ function DataTableHeader({
|
|
|
25673
25694
|
type: "button",
|
|
25674
25695
|
title: sortLabel,
|
|
25675
25696
|
className: cn(
|
|
25676
|
-
"p-1 rounded-lg transition-all duration-200 hover:bg-
|
|
25677
|
-
sort?.key === col.key ? "opacity-100 bg-
|
|
25697
|
+
"p-1 rounded-lg transition-all duration-200 hover:bg-foreground/10",
|
|
25698
|
+
sort?.key === col.key ? "opacity-100 bg-foreground/10" : "opacity-60 hover:opacity-100"
|
|
25678
25699
|
),
|
|
25679
25700
|
onClick: () => {
|
|
25680
25701
|
setCurPage(1);
|
|
@@ -25689,7 +25710,7 @@ function DataTableHeader({
|
|
|
25689
25710
|
/* @__PURE__ */ jsx68(
|
|
25690
25711
|
"path",
|
|
25691
25712
|
{
|
|
25692
|
-
d: "
|
|
25713
|
+
d: "M5 7.5l5-5 5 5",
|
|
25693
25714
|
stroke: "currentColor",
|
|
25694
25715
|
strokeWidth: "1.5",
|
|
25695
25716
|
strokeLinecap: "round",
|
|
@@ -25700,7 +25721,7 @@ function DataTableHeader({
|
|
|
25700
25721
|
/* @__PURE__ */ jsx68(
|
|
25701
25722
|
"path",
|
|
25702
25723
|
{
|
|
25703
|
-
d: "
|
|
25724
|
+
d: "M5 12.5l5 5 5-5",
|
|
25704
25725
|
stroke: "currentColor",
|
|
25705
25726
|
strokeWidth: "1.5",
|
|
25706
25727
|
strokeLinecap: "round",
|
|
@@ -25729,8 +25750,8 @@ function DataTableHeader({
|
|
|
25729
25750
|
type: "button",
|
|
25730
25751
|
title: gi18n.filterByColumn ? gi18n.filterByColumn(columnLabel) : `Filter by ${columnLabel}`,
|
|
25731
25752
|
className: cn(
|
|
25732
|
-
"p-1.5 rounded-lg transition-all duration-200 hover:bg-
|
|
25733
|
-
filters[col.key] ? "bg-
|
|
25753
|
+
"p-1.5 rounded-lg transition-all duration-200 hover:bg-foreground/10",
|
|
25754
|
+
filters[col.key] ? "bg-foreground/10 opacity-100" : "opacity-60 hover:opacity-100"
|
|
25734
25755
|
),
|
|
25735
25756
|
"aria-label": gi18n.filterByColumn ? gi18n.filterByColumn(columnLabel) : `Filter by ${columnLabel}`,
|
|
25736
25757
|
children: /* @__PURE__ */ jsx68(FilterIcon, { className: "w-4 h-4" })
|
|
@@ -25765,7 +25786,8 @@ function DataTableHeader({
|
|
|
25765
25786
|
headerMinHeightClass,
|
|
25766
25787
|
isRightAlign && "justify-end",
|
|
25767
25788
|
isCenterAlign && "justify-center",
|
|
25768
|
-
!isRightAlign && !isCenterAlign && "justify-start"
|
|
25789
|
+
!isRightAlign && !isCenterAlign && "justify-start",
|
|
25790
|
+
useEndIcon && "w-full"
|
|
25769
25791
|
),
|
|
25770
25792
|
children: isRightAlign ? /* @__PURE__ */ jsxs55(Fragment25, { children: [
|
|
25771
25793
|
filterContent,
|
|
@@ -28200,6 +28222,7 @@ import { Check as Check10 } from "lucide-react";
|
|
|
28200
28222
|
import { jsx as jsx82 } from "react/jsx-runtime";
|
|
28201
28223
|
var FormCheckboxView = ({ node, updateAttributes, editor, selected }) => {
|
|
28202
28224
|
const isChecked = !!node.attrs.checked;
|
|
28225
|
+
const isCircle = node.attrs.variant === "circle";
|
|
28203
28226
|
const isEditable = editor.isEditable;
|
|
28204
28227
|
const handleToggle = (e) => {
|
|
28205
28228
|
if (!isEditable) return;
|
|
@@ -28229,7 +28252,8 @@ var FormCheckboxView = ({ node, updateAttributes, editor, selected }) => {
|
|
|
28229
28252
|
onClick: handleToggle,
|
|
28230
28253
|
onKeyDown: handleKeyDown2,
|
|
28231
28254
|
className: cn(
|
|
28232
|
-
"flex items-center justify-center w-5 h-5
|
|
28255
|
+
"flex items-center justify-center w-5 h-5 border text-primary-foreground transition-all duration-200 outline-none",
|
|
28256
|
+
isCircle ? "rounded-full" : "rounded-md",
|
|
28233
28257
|
isChecked ? "bg-primary border-primary scale-100" : "bg-background border-border/70 hover:border-primary/50",
|
|
28234
28258
|
selected && "ring-2 ring-primary/30 ring-offset-1",
|
|
28235
28259
|
isEditable && "focus-visible:ring-2 focus-visible:ring-primary/45 focus-visible:ring-offset-1 focus-visible:border-primary"
|
|
@@ -28301,6 +28325,11 @@ var FormCheckbox2 = Node5.create({
|
|
|
28301
28325
|
name: attributes.name
|
|
28302
28326
|
};
|
|
28303
28327
|
}
|
|
28328
|
+
},
|
|
28329
|
+
variant: {
|
|
28330
|
+
default: "square",
|
|
28331
|
+
parseHTML: (element) => element.getAttribute("data-variant") === "circle" ? "circle" : "square",
|
|
28332
|
+
renderHTML: (attributes) => attributes.variant === "circle" ? { "data-variant": "circle" } : {}
|
|
28304
28333
|
}
|
|
28305
28334
|
};
|
|
28306
28335
|
},
|
|
@@ -28593,6 +28622,7 @@ import {
|
|
|
28593
28622
|
Bookmark as BookmarkIcon,
|
|
28594
28623
|
Paperclip,
|
|
28595
28624
|
CheckSquare,
|
|
28625
|
+
CircleCheckBig,
|
|
28596
28626
|
CircleDot
|
|
28597
28627
|
} from "lucide-react";
|
|
28598
28628
|
|
|
@@ -28654,6 +28684,8 @@ var DEFAULT_MESSAGES = {
|
|
|
28654
28684
|
fileCardDesc: "Upload a file card attachment",
|
|
28655
28685
|
formCheckbox: "Form Checkbox",
|
|
28656
28686
|
formCheckboxDesc: "Insert an interactive checkbox field",
|
|
28687
|
+
roundCheckbox: "Round Checkbox",
|
|
28688
|
+
roundCheckboxDesc: "Insert a circular interactive checkbox",
|
|
28657
28689
|
formRadio: "Form Radio Button",
|
|
28658
28690
|
formRadioDesc: "Insert an interactive radio button field"
|
|
28659
28691
|
};
|
|
@@ -28709,6 +28741,8 @@ function buildSlashCommandMessages(translate) {
|
|
|
28709
28741
|
fileCardDesc: translate("slashCommand.fileCardDesc") || "Upload a file card attachment",
|
|
28710
28742
|
formCheckbox: translate("slashCommand.formCheckbox") || "Form Checkbox",
|
|
28711
28743
|
formCheckboxDesc: translate("slashCommand.formCheckboxDesc") || "Insert an interactive checkbox field",
|
|
28744
|
+
roundCheckbox: translate("slashCommand.roundCheckbox") || "Round Checkbox",
|
|
28745
|
+
roundCheckboxDesc: translate("slashCommand.roundCheckboxDesc") || "Insert a circular interactive checkbox",
|
|
28712
28746
|
formRadio: translate("slashCommand.formRadio") || "Form Radio Button",
|
|
28713
28747
|
formRadioDesc: translate("slashCommand.formRadioDesc") || "Insert an interactive radio button field"
|
|
28714
28748
|
};
|
|
@@ -28855,10 +28889,20 @@ function buildSlashCommandItems({
|
|
|
28855
28889
|
icon: CheckSquare,
|
|
28856
28890
|
title: messages.formCheckbox,
|
|
28857
28891
|
description: messages.formCheckboxDesc,
|
|
28892
|
+
searchTerms: ["checkbox", "square checkbox"],
|
|
28858
28893
|
command: run(({ editor, range }) => {
|
|
28859
28894
|
getCommandChain(editor, range).setFormCheckbox().run();
|
|
28860
28895
|
})
|
|
28861
28896
|
},
|
|
28897
|
+
{
|
|
28898
|
+
icon: CircleCheckBig,
|
|
28899
|
+
title: messages.roundCheckbox,
|
|
28900
|
+
description: messages.roundCheckboxDesc,
|
|
28901
|
+
searchTerms: ["roundcheckbox", "round checkbox", "circle checkbox"],
|
|
28902
|
+
command: run(({ editor, range }) => {
|
|
28903
|
+
getCommandChain(editor, range).setFormCheckbox({ variant: "circle" }).run();
|
|
28904
|
+
})
|
|
28905
|
+
},
|
|
28862
28906
|
{
|
|
28863
28907
|
icon: CircleDot,
|
|
28864
28908
|
title: messages.formRadio,
|
|
@@ -28867,7 +28911,11 @@ function buildSlashCommandItems({
|
|
|
28867
28911
|
getCommandChain(editor, range).setFormRadio({ name: `radio-group-${Math.random().toString(36).substring(2, 6)}` }).run();
|
|
28868
28912
|
})
|
|
28869
28913
|
}
|
|
28870
|
-
].filter((item) =>
|
|
28914
|
+
].filter((item) => {
|
|
28915
|
+
const normalizedQuery = query.trim().toLowerCase();
|
|
28916
|
+
if (!normalizedQuery) return true;
|
|
28917
|
+
return [item.title, item.description, ...item.searchTerms ?? []].some((value) => value.toLowerCase().includes(normalizedQuery));
|
|
28918
|
+
});
|
|
28871
28919
|
}
|
|
28872
28920
|
var SlashCommandList = forwardRef14((props, ref) => {
|
|
28873
28921
|
const [selectedIndex, setSelectedIndex] = useResettingIndex2(props.items);
|
|
@@ -31674,6 +31722,11 @@ var CustomTableCell = TableCell2.extend({
|
|
|
31674
31722
|
"data-vertical-align": attributes.verticalAlign
|
|
31675
31723
|
};
|
|
31676
31724
|
}
|
|
31725
|
+
},
|
|
31726
|
+
textDirection: {
|
|
31727
|
+
default: null,
|
|
31728
|
+
parseHTML: (element) => element.getAttribute("data-text-direction") === "vertical" || element.style.writingMode === "vertical-rl" ? "vertical" : null,
|
|
31729
|
+
renderHTML: (attributes) => attributes.textDirection === "vertical" ? { "data-text-direction": "vertical" } : {}
|
|
31677
31730
|
}
|
|
31678
31731
|
};
|
|
31679
31732
|
},
|
|
@@ -31684,12 +31737,14 @@ var CustomTableCell = TableCell2.extend({
|
|
|
31684
31737
|
const borderStyle = HTMLAttributes["data-border-style"];
|
|
31685
31738
|
const borderWidth = HTMLAttributes["data-border-width"];
|
|
31686
31739
|
const verticalAlign = HTMLAttributes["data-vertical-align"];
|
|
31740
|
+
const textDirection = HTMLAttributes["data-text-direction"];
|
|
31687
31741
|
let mergedStyle = style;
|
|
31688
31742
|
if (bg) mergedStyle += `; background-color: ${bg}`;
|
|
31689
31743
|
if (borderColor) mergedStyle += `; border-color: ${borderColor}`;
|
|
31690
31744
|
if (borderStyle) mergedStyle += `; border-style: ${borderStyle}`;
|
|
31691
31745
|
if (borderWidth) mergedStyle += `; border-width: ${borderWidth}`;
|
|
31692
31746
|
if (verticalAlign) mergedStyle += `; vertical-align: ${verticalAlign}`;
|
|
31747
|
+
if (textDirection === "vertical") mergedStyle += "; writing-mode: vertical-rl; text-orientation: mixed";
|
|
31693
31748
|
mergedStyle = mergedStyle.replace(/^;/, "").trim();
|
|
31694
31749
|
return [
|
|
31695
31750
|
"td",
|
|
@@ -31793,6 +31848,11 @@ var CustomTableHeader = TableHeader2.extend({
|
|
|
31793
31848
|
"data-vertical-align": attributes.verticalAlign
|
|
31794
31849
|
};
|
|
31795
31850
|
}
|
|
31851
|
+
},
|
|
31852
|
+
textDirection: {
|
|
31853
|
+
default: null,
|
|
31854
|
+
parseHTML: (element) => element.getAttribute("data-text-direction") === "vertical" || element.style.writingMode === "vertical-rl" ? "vertical" : null,
|
|
31855
|
+
renderHTML: (attributes) => attributes.textDirection === "vertical" ? { "data-text-direction": "vertical" } : {}
|
|
31796
31856
|
}
|
|
31797
31857
|
};
|
|
31798
31858
|
},
|
|
@@ -31803,12 +31863,14 @@ var CustomTableHeader = TableHeader2.extend({
|
|
|
31803
31863
|
const borderStyle = HTMLAttributes["data-border-style"];
|
|
31804
31864
|
const borderWidth = HTMLAttributes["data-border-width"];
|
|
31805
31865
|
const verticalAlign = HTMLAttributes["data-vertical-align"];
|
|
31866
|
+
const textDirection = HTMLAttributes["data-text-direction"];
|
|
31806
31867
|
let mergedStyle = style;
|
|
31807
31868
|
if (bg) mergedStyle += `; background-color: ${bg}`;
|
|
31808
31869
|
if (borderColor) mergedStyle += `; border-color: ${borderColor}`;
|
|
31809
31870
|
if (borderStyle) mergedStyle += `; border-style: ${borderStyle}`;
|
|
31810
31871
|
if (borderWidth) mergedStyle += `; border-width: ${borderWidth}`;
|
|
31811
31872
|
if (verticalAlign) mergedStyle += `; vertical-align: ${verticalAlign}`;
|
|
31873
|
+
if (textDirection === "vertical") mergedStyle += "; writing-mode: vertical-rl; text-orientation: mixed";
|
|
31812
31874
|
mergedStyle = mergedStyle.replace(/^;/, "").trim();
|
|
31813
31875
|
return [
|
|
31814
31876
|
"th",
|
|
@@ -32002,6 +32064,7 @@ import {
|
|
|
32002
32064
|
Bold as BoldIcon,
|
|
32003
32065
|
ChevronDown as ChevronDown8,
|
|
32004
32066
|
ChevronsUpDown,
|
|
32067
|
+
CircleCheckBig as CircleCheckBig2,
|
|
32005
32068
|
Code as CodeIcon,
|
|
32006
32069
|
FileCode as FileCode3,
|
|
32007
32070
|
Heading1 as Heading1Icon,
|
|
@@ -32017,6 +32080,7 @@ import {
|
|
|
32017
32080
|
Redo as RedoIcon,
|
|
32018
32081
|
RotateCcw as RotateCcw2,
|
|
32019
32082
|
Smile as Smile3,
|
|
32083
|
+
SquareCheckBig,
|
|
32020
32084
|
Strikethrough as StrikethroughIcon,
|
|
32021
32085
|
Subscript as SubscriptIcon,
|
|
32022
32086
|
Superscript as SuperscriptIcon,
|
|
@@ -33051,6 +33115,7 @@ var EditorToolbar = ({
|
|
|
33051
33115
|
const canMergeCells = hasTableContext && editor.can().mergeCells();
|
|
33052
33116
|
const canSplitCell = hasTableContext && editor.can().splitCell();
|
|
33053
33117
|
const currentCellVerticalAlign = normalizeStyleValue(editor.getAttributes("tableCell").verticalAlign || editor.getAttributes("tableHeader").verticalAlign) || "";
|
|
33118
|
+
const currentCellTextDirection = normalizeStyleValue(editor.getAttributes("tableCell").textDirection || editor.getAttributes("tableHeader").textDirection) || "horizontal";
|
|
33054
33119
|
const currentFontFamily = normalizeStyleValue(textStyleAttrs.fontFamily);
|
|
33055
33120
|
const currentFontSize = normalizeStyleValue(textStyleAttrs.fontSize);
|
|
33056
33121
|
const currentTextColor = normalizeStyleValue(textStyleAttrs.color) || "inherit";
|
|
@@ -33112,6 +33177,34 @@ var EditorToolbar = ({
|
|
|
33112
33177
|
children: /* @__PURE__ */ jsx91(ListIcon, { className: "w-4 h-4" })
|
|
33113
33178
|
}
|
|
33114
33179
|
),
|
|
33180
|
+
/* @__PURE__ */ jsxs75(
|
|
33181
|
+
DropdownMenu,
|
|
33182
|
+
{
|
|
33183
|
+
trigger: /* @__PURE__ */ jsxs75(ToolbarButton, { onClick: () => {
|
|
33184
|
+
}, active: editor.isActive("formCheckbox"), title: t("slashCommand.formCheckbox"), children: [
|
|
33185
|
+
/* @__PURE__ */ jsx91(SquareCheckBig, { className: "w-4 h-4" }),
|
|
33186
|
+
/* @__PURE__ */ jsx91(ChevronDown8, { className: "w-3 h-3" })
|
|
33187
|
+
] }),
|
|
33188
|
+
children: [
|
|
33189
|
+
/* @__PURE__ */ jsx91(
|
|
33190
|
+
DropdownMenuItem,
|
|
33191
|
+
{
|
|
33192
|
+
icon: SquareCheckBig,
|
|
33193
|
+
label: t("slashCommand.formCheckbox"),
|
|
33194
|
+
onClick: () => editor.chain().focus().setFormCheckbox().run()
|
|
33195
|
+
}
|
|
33196
|
+
),
|
|
33197
|
+
/* @__PURE__ */ jsx91(
|
|
33198
|
+
DropdownMenuItem,
|
|
33199
|
+
{
|
|
33200
|
+
icon: CircleCheckBig2,
|
|
33201
|
+
label: t("slashCommand.roundCheckbox"),
|
|
33202
|
+
onClick: () => editor.chain().focus().setFormCheckbox({ variant: "circle" }).run()
|
|
33203
|
+
}
|
|
33204
|
+
)
|
|
33205
|
+
]
|
|
33206
|
+
}
|
|
33207
|
+
),
|
|
33115
33208
|
/* @__PURE__ */ jsx91(
|
|
33116
33209
|
DropdownMenu,
|
|
33117
33210
|
{
|
|
@@ -33537,6 +33630,36 @@ var EditorToolbar = ({
|
|
|
33537
33630
|
] })
|
|
33538
33631
|
]
|
|
33539
33632
|
}
|
|
33633
|
+
),
|
|
33634
|
+
hasTableContext && /* @__PURE__ */ jsxs75(
|
|
33635
|
+
DropdownMenu,
|
|
33636
|
+
{
|
|
33637
|
+
trigger: /* @__PURE__ */ jsxs75(ToolbarButton, { onClick: () => {
|
|
33638
|
+
}, title: t("tableMenu.textDirection"), children: [
|
|
33639
|
+
currentCellTextDirection === "vertical" ? /* @__PURE__ */ jsx91(ArrowDown, { className: "w-4 h-4" }) : /* @__PURE__ */ jsx91(ArrowRight, { className: "w-4 h-4" }),
|
|
33640
|
+
/* @__PURE__ */ jsx91(ChevronDown8, { className: "w-3 h-3" })
|
|
33641
|
+
] }),
|
|
33642
|
+
children: [
|
|
33643
|
+
/* @__PURE__ */ jsx91(
|
|
33644
|
+
DropdownMenuItem,
|
|
33645
|
+
{
|
|
33646
|
+
icon: ArrowRight,
|
|
33647
|
+
label: t("tableMenu.horizontalText"),
|
|
33648
|
+
onClick: () => applyTableCellAttribute(editor, "textDirection", null),
|
|
33649
|
+
active: currentCellTextDirection === "horizontal"
|
|
33650
|
+
}
|
|
33651
|
+
),
|
|
33652
|
+
/* @__PURE__ */ jsx91(
|
|
33653
|
+
DropdownMenuItem,
|
|
33654
|
+
{
|
|
33655
|
+
icon: ArrowDown,
|
|
33656
|
+
label: t("tableMenu.verticalText"),
|
|
33657
|
+
onClick: () => applyTableCellAttribute(editor, "textDirection", "vertical"),
|
|
33658
|
+
active: currentCellTextDirection === "vertical"
|
|
33659
|
+
}
|
|
33660
|
+
)
|
|
33661
|
+
]
|
|
33662
|
+
}
|
|
33540
33663
|
)
|
|
33541
33664
|
] }),
|
|
33542
33665
|
/* @__PURE__ */ jsx91(ToolbarDivider, {}),
|
|
@@ -33582,6 +33705,34 @@ var EditorToolbar = ({
|
|
|
33582
33705
|
]
|
|
33583
33706
|
}
|
|
33584
33707
|
),
|
|
33708
|
+
/* @__PURE__ */ jsxs75(
|
|
33709
|
+
DropdownMenu,
|
|
33710
|
+
{
|
|
33711
|
+
trigger: /* @__PURE__ */ jsxs75(ToolbarButton, { onClick: () => {
|
|
33712
|
+
}, active: editor.isActive("formCheckbox"), title: t("slashCommand.formCheckbox"), children: [
|
|
33713
|
+
/* @__PURE__ */ jsx91(SquareCheckBig, { className: "w-4 h-4" }),
|
|
33714
|
+
/* @__PURE__ */ jsx91(ChevronDown8, { className: "w-3 h-3" })
|
|
33715
|
+
] }),
|
|
33716
|
+
children: [
|
|
33717
|
+
/* @__PURE__ */ jsx91(
|
|
33718
|
+
DropdownMenuItem,
|
|
33719
|
+
{
|
|
33720
|
+
icon: SquareCheckBig,
|
|
33721
|
+
label: t("slashCommand.formCheckbox"),
|
|
33722
|
+
onClick: () => editor.chain().focus().setFormCheckbox().run()
|
|
33723
|
+
}
|
|
33724
|
+
),
|
|
33725
|
+
/* @__PURE__ */ jsx91(
|
|
33726
|
+
DropdownMenuItem,
|
|
33727
|
+
{
|
|
33728
|
+
icon: CircleCheckBig2,
|
|
33729
|
+
label: t("slashCommand.roundCheckbox"),
|
|
33730
|
+
onClick: () => editor.chain().focus().setFormCheckbox({ variant: "circle" }).run()
|
|
33731
|
+
}
|
|
33732
|
+
)
|
|
33733
|
+
]
|
|
33734
|
+
}
|
|
33735
|
+
),
|
|
33585
33736
|
isMediumFull && /* @__PURE__ */ jsx91(ToolbarButton, { onClick: () => editor.chain().focus().toggleBlockquote().run(), active: editor.isActive("blockquote"), title: t("toolbar.quote"), children: /* @__PURE__ */ jsx91(QuoteIcon, { className: "w-4 h-4" }) }),
|
|
33586
33737
|
isFull && /* @__PURE__ */ jsxs75(
|
|
33587
33738
|
DropdownMenu,
|
|
@@ -33977,7 +34128,9 @@ import {
|
|
|
33977
34128
|
Sigma as Sigma2,
|
|
33978
34129
|
AlignStartVertical as AlignStartVertical2,
|
|
33979
34130
|
AlignCenterVertical as AlignCenterVertical2,
|
|
33980
|
-
AlignEndVertical as AlignEndVertical2
|
|
34131
|
+
AlignEndVertical as AlignEndVertical2,
|
|
34132
|
+
ArrowDown as ArrowDown2,
|
|
34133
|
+
ArrowRight as ArrowRight2
|
|
33981
34134
|
} from "lucide-react";
|
|
33982
34135
|
|
|
33983
34136
|
// src/components/UEditor/table-formula-commands.ts
|
|
@@ -35053,6 +35206,7 @@ var BubbleMenuContent = ({
|
|
|
35053
35206
|
const currentCellBorderStyle = editor.getAttributes("tableCell").borderStyle || editor.getAttributes("tableHeader").borderStyle || "solid";
|
|
35054
35207
|
const currentCellBorderWidth = editor.getAttributes("tableCell").borderWidth || editor.getAttributes("tableHeader").borderWidth || "1px";
|
|
35055
35208
|
const currentCellVerticalAlign = normalizeStyleValue(editor.getAttributes("tableCell").verticalAlign || editor.getAttributes("tableHeader").verticalAlign) || "";
|
|
35209
|
+
const currentCellTextDirection = normalizeStyleValue(editor.getAttributes("tableCell").textDirection || editor.getAttributes("tableHeader").textDirection) || "horizontal";
|
|
35056
35210
|
const isInTable2 = isSelectionInTable(editor.state);
|
|
35057
35211
|
const canMergeCells = isInTable2 && editor.can().mergeCells();
|
|
35058
35212
|
const canSplitCell = isInTable2 && editor.can().splitCell();
|
|
@@ -35696,6 +35850,49 @@ var BubbleMenuContent = ({
|
|
|
35696
35850
|
)
|
|
35697
35851
|
]
|
|
35698
35852
|
}
|
|
35853
|
+
),
|
|
35854
|
+
/* @__PURE__ */ jsxs76(
|
|
35855
|
+
DropdownMenu,
|
|
35856
|
+
{
|
|
35857
|
+
onOpenChange: (open) => {
|
|
35858
|
+
onKeepOpenChange?.(open);
|
|
35859
|
+
},
|
|
35860
|
+
trigger: /* @__PURE__ */ jsxs76(
|
|
35861
|
+
ToolbarButton,
|
|
35862
|
+
{
|
|
35863
|
+
onMouseDown: () => {
|
|
35864
|
+
onKeepOpenChange?.(true);
|
|
35865
|
+
},
|
|
35866
|
+
onClick: () => {
|
|
35867
|
+
},
|
|
35868
|
+
title: t("tableMenu.textDirection"),
|
|
35869
|
+
children: [
|
|
35870
|
+
currentCellTextDirection === "vertical" ? /* @__PURE__ */ jsx92(ArrowDown2, { className: "w-4 h-4" }) : /* @__PURE__ */ jsx92(ArrowRight2, { className: "w-4 h-4" }),
|
|
35871
|
+
/* @__PURE__ */ jsx92(ChevronDown9, { className: "w-3 h-3" })
|
|
35872
|
+
]
|
|
35873
|
+
}
|
|
35874
|
+
),
|
|
35875
|
+
children: [
|
|
35876
|
+
/* @__PURE__ */ jsx92(
|
|
35877
|
+
DropdownMenuItem,
|
|
35878
|
+
{
|
|
35879
|
+
icon: ArrowRight2,
|
|
35880
|
+
label: t("tableMenu.horizontalText"),
|
|
35881
|
+
onClick: () => applyTableCellAttribute2(editor, "textDirection", null, { focus: false }),
|
|
35882
|
+
active: currentCellTextDirection === "horizontal"
|
|
35883
|
+
}
|
|
35884
|
+
),
|
|
35885
|
+
/* @__PURE__ */ jsx92(
|
|
35886
|
+
DropdownMenuItem,
|
|
35887
|
+
{
|
|
35888
|
+
icon: ArrowDown2,
|
|
35889
|
+
label: t("tableMenu.verticalText"),
|
|
35890
|
+
onClick: () => applyTableCellAttribute2(editor, "textDirection", "vertical", { focus: false }),
|
|
35891
|
+
active: currentCellTextDirection === "vertical"
|
|
35892
|
+
}
|
|
35893
|
+
)
|
|
35894
|
+
]
|
|
35895
|
+
}
|
|
35699
35896
|
)
|
|
35700
35897
|
] }),
|
|
35701
35898
|
/* @__PURE__ */ jsx92(
|
|
@@ -40548,9 +40745,9 @@ import {
|
|
|
40548
40745
|
AlignCenter as AlignCenter3,
|
|
40549
40746
|
AlignLeft as AlignLeft3,
|
|
40550
40747
|
AlignRight as AlignRight3,
|
|
40551
|
-
ArrowDown as
|
|
40748
|
+
ArrowDown as ArrowDown3,
|
|
40552
40749
|
ArrowLeft as ArrowLeft2,
|
|
40553
|
-
ArrowRight as
|
|
40750
|
+
ArrowRight as ArrowRight3,
|
|
40554
40751
|
ArrowUp as ArrowUp2,
|
|
40555
40752
|
Copy as Copy3,
|
|
40556
40753
|
Table as TableIcon2,
|
|
@@ -41617,7 +41814,7 @@ function TableControls({ editor, containerRef }) {
|
|
|
41617
41814
|
},
|
|
41618
41815
|
{
|
|
41619
41816
|
label: t("tableMenu.addColumnAfter"),
|
|
41620
|
-
icon:
|
|
41817
|
+
icon: ArrowRight3,
|
|
41621
41818
|
onClick: () => runAtActiveCell((chain) => chain.addColumnAfter())
|
|
41622
41819
|
},
|
|
41623
41820
|
{
|
|
@@ -41627,7 +41824,7 @@ function TableControls({ editor, containerRef }) {
|
|
|
41627
41824
|
},
|
|
41628
41825
|
{
|
|
41629
41826
|
label: t("tableMenu.addRowAfter"),
|
|
41630
|
-
icon:
|
|
41827
|
+
icon: ArrowDown3,
|
|
41631
41828
|
onClick: () => runAtActiveCell((chain) => chain.addRowAfter())
|
|
41632
41829
|
},
|
|
41633
41830
|
{
|
|
@@ -41668,7 +41865,7 @@ function TableControls({ editor, containerRef }) {
|
|
|
41668
41865
|
},
|
|
41669
41866
|
{
|
|
41670
41867
|
label: t("tableMenu.addRowAfter"),
|
|
41671
|
-
icon:
|
|
41868
|
+
icon: ArrowDown3,
|
|
41672
41869
|
onClick: () => runAtCellPos(rowHandle.cellPos, (chain) => chain.addRowAfter())
|
|
41673
41870
|
},
|
|
41674
41871
|
{
|
|
@@ -41696,7 +41893,7 @@ function TableControls({ editor, containerRef }) {
|
|
|
41696
41893
|
},
|
|
41697
41894
|
{
|
|
41698
41895
|
label: t("tableMenu.addColumnAfter"),
|
|
41699
|
-
icon:
|
|
41896
|
+
icon: ArrowRight3,
|
|
41700
41897
|
onClick: () => runAtCellPos(columnHandle.cellPos, (chain) => chain.addColumnAfter())
|
|
41701
41898
|
},
|
|
41702
41899
|
{
|
|
@@ -42935,6 +43132,7 @@ import {
|
|
|
42935
43132
|
Undo as UndoIcon2,
|
|
42936
43133
|
Square,
|
|
42937
43134
|
CircleDot as CircleDot2,
|
|
43135
|
+
CircleCheckBig as CircleCheckBig3,
|
|
42938
43136
|
Upload as Upload4
|
|
42939
43137
|
} from "lucide-react";
|
|
42940
43138
|
|
|
@@ -43656,6 +43854,12 @@ var MenuBar = ({
|
|
|
43656
43854
|
icon: Square,
|
|
43657
43855
|
onClick: () => editor.chain().focus().setFormCheckbox().run()
|
|
43658
43856
|
},
|
|
43857
|
+
{
|
|
43858
|
+
type: "action",
|
|
43859
|
+
label: t("slashCommand.roundCheckbox") || "Round Checkbox",
|
|
43860
|
+
icon: CircleCheckBig3,
|
|
43861
|
+
onClick: () => editor.chain().focus().setFormCheckbox({ variant: "circle" }).run()
|
|
43862
|
+
},
|
|
43659
43863
|
{
|
|
43660
43864
|
type: "action",
|
|
43661
43865
|
label: t("menubar.formRadio") || "Form Radio Button",
|