@univerjs/drawing-ui 1.0.0-beta.0 → 1.0.0-beta.1
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/lib/cjs/index.js +110 -58
- package/lib/cjs/locale/ar-SA.js +1 -19
- package/lib/cjs/locale/ca-ES.js +1 -19
- package/lib/cjs/locale/de-DE.js +1 -19
- package/lib/cjs/locale/en-US.js +1 -19
- package/lib/cjs/locale/es-ES.js +1 -19
- package/lib/cjs/locale/fa-IR.js +1 -19
- package/lib/cjs/locale/fr-FR.js +1 -19
- package/lib/cjs/locale/id-ID.js +1 -19
- package/lib/cjs/locale/it-IT.js +1 -19
- package/lib/cjs/locale/ja-JP.js +1 -19
- package/lib/cjs/locale/ko-KR.js +1 -19
- package/lib/cjs/locale/pl-PL.js +1 -19
- package/lib/cjs/locale/pt-BR.js +1 -19
- package/lib/cjs/locale/ru-RU.js +1 -19
- package/lib/cjs/locale/sk-SK.js +1 -19
- package/lib/cjs/locale/vi-VN.js +1 -19
- package/lib/cjs/locale/zh-CN.js +1 -19
- package/lib/cjs/locale/zh-HK.js +1 -19
- package/lib/cjs/locale/zh-TW.js +1 -19
- package/lib/es/index.js +113 -61
- package/lib/es/locale/ar-SA.js +1 -19
- package/lib/es/locale/ca-ES.js +1 -19
- package/lib/es/locale/de-DE.js +1 -19
- package/lib/es/locale/en-US.js +1 -19
- package/lib/es/locale/es-ES.js +1 -19
- package/lib/es/locale/fa-IR.js +1 -19
- package/lib/es/locale/fr-FR.js +1 -19
- package/lib/es/locale/id-ID.js +1 -19
- package/lib/es/locale/it-IT.js +1 -19
- package/lib/es/locale/ja-JP.js +1 -19
- package/lib/es/locale/ko-KR.js +1 -19
- package/lib/es/locale/pl-PL.js +1 -19
- package/lib/es/locale/pt-BR.js +1 -19
- package/lib/es/locale/ru-RU.js +1 -19
- package/lib/es/locale/sk-SK.js +1 -19
- package/lib/es/locale/vi-VN.js +1 -19
- package/lib/es/locale/zh-CN.js +1 -19
- package/lib/es/locale/zh-HK.js +1 -19
- package/lib/es/locale/zh-TW.js +1 -19
- package/lib/index.css +28 -10
- package/lib/index.js +113 -61
- package/lib/locale/ar-SA.js +1 -19
- package/lib/locale/ca-ES.js +1 -19
- package/lib/locale/de-DE.js +1 -19
- package/lib/locale/en-US.js +1 -19
- package/lib/locale/es-ES.js +1 -19
- package/lib/locale/fa-IR.js +1 -19
- package/lib/locale/fr-FR.js +1 -19
- package/lib/locale/id-ID.js +1 -19
- package/lib/locale/it-IT.js +1 -19
- package/lib/locale/ja-JP.js +1 -19
- package/lib/locale/ko-KR.js +1 -19
- package/lib/locale/pl-PL.js +1 -19
- package/lib/locale/pt-BR.js +1 -19
- package/lib/locale/ru-RU.js +1 -19
- package/lib/locale/sk-SK.js +1 -19
- package/lib/locale/vi-VN.js +1 -19
- package/lib/locale/zh-CN.js +1 -19
- package/lib/locale/zh-HK.js +1 -19
- package/lib/locale/zh-TW.js +1 -19
- package/lib/types/commands/operations/image-crop.operation.d.ts +4 -2
- package/lib/types/controllers/image-cropper.controller.d.ts +10 -2
- package/lib/types/locale/en-US.d.ts +0 -18
- package/lib/types/views/image-popup-menu/ImagePopupMenu.d.ts +1 -0
- package/lib/umd/index.js +2 -2
- package/lib/umd/locale/ar-SA.js +1 -1
- package/lib/umd/locale/ca-ES.js +1 -1
- package/lib/umd/locale/de-DE.js +1 -1
- package/lib/umd/locale/en-US.js +1 -1
- package/lib/umd/locale/es-ES.js +1 -1
- package/lib/umd/locale/fa-IR.js +1 -1
- package/lib/umd/locale/fr-FR.js +1 -1
- package/lib/umd/locale/id-ID.js +1 -1
- package/lib/umd/locale/it-IT.js +1 -1
- package/lib/umd/locale/ja-JP.js +1 -1
- package/lib/umd/locale/ko-KR.js +1 -1
- package/lib/umd/locale/pl-PL.js +1 -1
- package/lib/umd/locale/pt-BR.js +1 -1
- package/lib/umd/locale/ru-RU.js +1 -1
- package/lib/umd/locale/sk-SK.js +1 -1
- package/lib/umd/locale/vi-VN.js +1 -1
- package/lib/umd/locale/zh-CN.js +1 -1
- package/lib/umd/locale/zh-HK.js +1 -1
- package/lib/umd/locale/zh-TW.js +1 -1
- package/package.json +7 -7
package/lib/index.css
CHANGED
|
@@ -110,6 +110,18 @@
|
|
|
110
110
|
flex-shrink: 0;
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
+
.-univer-rotate-90 {
|
|
114
|
+
--univer-tw-rotate: -90deg;
|
|
115
|
+
transform: translate(var(--univer-tw-translate-x), var(--univer-tw-translate-y)) rotate(-90deg) skewX(var(--univer-tw-skew-x)) skewY(var(--univer-tw-skew-y)) scaleX(var(--univer-tw-scale-x)) scaleY(var(--univer-tw-scale-y));
|
|
116
|
+
transform: translate(var(--univer-tw-translate-x), var(--univer-tw-translate-y)) rotate(var(--univer-tw-rotate)) skewX(var(--univer-tw-skew-x)) skewY(var(--univer-tw-skew-y)) scaleX(var(--univer-tw-scale-x)) scaleY(var(--univer-tw-scale-y));
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.univer-rotate-90 {
|
|
120
|
+
--univer-tw-rotate: 90deg;
|
|
121
|
+
transform: translate(var(--univer-tw-translate-x), var(--univer-tw-translate-y)) rotate(90deg) skewX(var(--univer-tw-skew-x)) skewY(var(--univer-tw-skew-y)) scaleX(var(--univer-tw-scale-x)) scaleY(var(--univer-tw-scale-y));
|
|
122
|
+
transform: translate(var(--univer-tw-translate-x), var(--univer-tw-translate-y)) rotate(var(--univer-tw-rotate)) skewX(var(--univer-tw-skew-x)) skewY(var(--univer-tw-skew-y)) scaleX(var(--univer-tw-scale-x)) scaleY(var(--univer-tw-scale-y));
|
|
123
|
+
}
|
|
124
|
+
|
|
113
125
|
.univer-cursor-not-allowed {
|
|
114
126
|
cursor: not-allowed;
|
|
115
127
|
}
|
|
@@ -248,6 +260,10 @@
|
|
|
248
260
|
background-color: #0000 !important;
|
|
249
261
|
}
|
|
250
262
|
|
|
263
|
+
.univer-bg-gray-0 {
|
|
264
|
+
background-color: var(--univer-gray-0);
|
|
265
|
+
}
|
|
266
|
+
|
|
251
267
|
.univer-bg-gray-100 {
|
|
252
268
|
background-color: var(--univer-gray-100);
|
|
253
269
|
}
|
|
@@ -260,10 +276,6 @@
|
|
|
260
276
|
background-color: #0000;
|
|
261
277
|
}
|
|
262
278
|
|
|
263
|
-
.univer-bg-white {
|
|
264
|
-
background-color: var(--univer-white);
|
|
265
|
-
}
|
|
266
|
-
|
|
267
279
|
.univer-fill-primary-600 {
|
|
268
280
|
fill: var(--univer-primary-600);
|
|
269
281
|
}
|
|
@@ -459,8 +471,8 @@
|
|
|
459
471
|
border-color: var(--univer-primary-500);
|
|
460
472
|
}
|
|
461
473
|
|
|
462
|
-
.focus\:\!univer-bg-
|
|
463
|
-
background-color: var(--univer-
|
|
474
|
+
.focus\:\!univer-bg-gray-0:focus {
|
|
475
|
+
background-color: var(--univer-gray-0) !important;
|
|
464
476
|
}
|
|
465
477
|
|
|
466
478
|
.focus\:\!univer-ring-1:focus {
|
|
@@ -513,6 +525,12 @@
|
|
|
513
525
|
background-color: #0000;
|
|
514
526
|
}
|
|
515
527
|
|
|
528
|
+
.rtl\:univer-rotate-90:where([dir="rtl"], [dir="rtl"] *) {
|
|
529
|
+
--univer-tw-rotate: 90deg;
|
|
530
|
+
transform: translate(var(--univer-tw-translate-x), var(--univer-tw-translate-y)) rotate(90deg) skewX(var(--univer-tw-skew-x)) skewY(var(--univer-tw-skew-y)) scaleX(var(--univer-tw-scale-x)) scaleY(var(--univer-tw-scale-y));
|
|
531
|
+
transform: translate(var(--univer-tw-translate-x), var(--univer-tw-translate-y)) rotate(var(--univer-tw-rotate)) skewX(var(--univer-tw-skew-x)) skewY(var(--univer-tw-skew-y)) scaleX(var(--univer-tw-scale-x)) scaleY(var(--univer-tw-scale-y));
|
|
532
|
+
}
|
|
533
|
+
|
|
516
534
|
.dark\:\!univer-border-gray-700:where(.univer-dark, .univer-dark *) {
|
|
517
535
|
border-color: var(--univer-gray-700) !important;
|
|
518
536
|
}
|
|
@@ -529,6 +547,10 @@
|
|
|
529
547
|
background-color: var(--univer-gray-900) !important;
|
|
530
548
|
}
|
|
531
549
|
|
|
550
|
+
.dark\:\!univer-text-gray-0:where(.univer-dark, .univer-dark *) {
|
|
551
|
+
color: var(--univer-gray-0) !important;
|
|
552
|
+
}
|
|
553
|
+
|
|
532
554
|
.dark\:\!univer-text-gray-100:where(.univer-dark, .univer-dark *) {
|
|
533
555
|
color: var(--univer-gray-100) !important;
|
|
534
556
|
}
|
|
@@ -557,10 +579,6 @@
|
|
|
557
579
|
color: var(--univer-primary-300) !important;
|
|
558
580
|
}
|
|
559
581
|
|
|
560
|
-
.dark\:\!univer-text-white:where(.univer-dark, .univer-dark *) {
|
|
561
|
-
color: var(--univer-white) !important;
|
|
562
|
-
}
|
|
563
|
-
|
|
564
582
|
.dark\:hover\:\!univer-bg-gray-700:hover:where(.univer-dark, .univer-dark *) {
|
|
565
583
|
background-color: var(--univer-gray-700) !important;
|
|
566
584
|
}
|
package/lib/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { ArrangeTypeEnum, BooleanNumber, CommandType, DependentOn, Disposable, DrawingTypeEnum, ICommandService, IConfigService, IImageIoService, IURLImageService, IUniverInstanceService, ImageSourceType, Inject, Injector, LocaleService, Plugin, PositionedObjectLayoutType, UniverInstanceType, checkIfMove, debounce, generateRandomId, merge, toDisposable } from "@univerjs/core";
|
|
1
|
+
import { ArrangeTypeEnum, BooleanNumber, CommandType, DependentOn, Disposable, DisposableCollection, DrawingTypeEnum, ICommandService, IConfigService, IImageIoService, IURLImageService, IUniverInstanceService, ImageSourceType, Inject, Injector, LocaleService, Plugin, PositionedObjectLayoutType, UniverInstanceType, checkIfMove, debounce, generateRandomId, merge, toDisposable } from "@univerjs/core";
|
|
2
2
|
import { DRAWING_GROUPABLE_TYPES, IDrawingManagerService, SetDrawingSelectedOperation, UniverDrawingPlugin, getDrawingShapeKeyByDrawingSearch, isGroupableDrawingType, resolveDrawingRotateEnabled } from "@univerjs/drawing";
|
|
3
3
|
import { CURSOR_TYPE, Canvas, DRAWING_OBJECT_LAYER_INDEX, DrawingGroupObject, Group, IRenderManagerService, Image, RENDER_CLASS_TYPE, Rect, Shape, UniverRenderEnginePlugin, Vector2, degToRad, getGroupState, precisionTo, transformObjectOutOfGroup } from "@univerjs/engine-render";
|
|
4
|
-
import { ComponentManager, ContextMenuGroup, ContextMenuPosition, IDialogService, IGalleryService, IMenuManagerService, IMessageService, IconManager, MenuItemType, useDependency, useObservable } from "@univerjs/ui";
|
|
4
|
+
import { ComponentManager, ContextMenuGroup, ContextMenuPosition, IDialogService, IGalleryService, IMenuManagerService, IMessageService, IShortcutService, IconManager, KeyCode, MenuItemType, useDependency, useObservable } from "@univerjs/ui";
|
|
5
5
|
import { BehaviorSubject, Observable, bufferTime, filter, map, merge as merge$1, of, startWith, switchMap } from "rxjs";
|
|
6
|
-
import { ArrowDownIcon, ArrowUpIcon, AutofillDoubleIcon, BottomIcon, ChartIcon, CreateCopyIcon, CropIcon, DeleteIcon, DocSettingIcon, EyeIcon, EyelashIcon, GroupIcon, LocateFixedIcon, LockIcon, MoreDownIcon,
|
|
6
|
+
import { ArrowDownIcon, ArrowUpIcon, AutofillDoubleIcon, BottomIcon, ChartIcon, CreateCopyIcon, CropIcon, DeleteIcon, DocSettingIcon, EyeIcon, EyelashIcon, GroupIcon, LocateFixedIcon, LockIcon, MoreDownIcon, MoveDownIcon, MoveUpIcon, TextWrapShapeIcon, TopmostIcon, UngroupIcon, UnlockIcon } from "@univerjs/icons";
|
|
7
7
|
import { Button, Checkbox, Dropdown, DropdownMenu, Input, InputNumber, MessageType, Select, Separator, Tooltip, borderClassName, clsx } from "@univerjs/design";
|
|
8
8
|
import { useEffect, useMemo, useRef, useState } from "react";
|
|
9
9
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -236,21 +236,21 @@ const CancelDrawingGroupOperation = {
|
|
|
236
236
|
const OpenImageCropOperation = {
|
|
237
237
|
id: "sheet.operation.open-image-crop",
|
|
238
238
|
type: CommandType.OPERATION,
|
|
239
|
-
handler: (
|
|
239
|
+
handler: (_accessor, _params) => {
|
|
240
240
|
return true;
|
|
241
241
|
}
|
|
242
242
|
};
|
|
243
243
|
const CloseImageCropOperation = {
|
|
244
244
|
id: "sheet.operation.close-image-crop",
|
|
245
245
|
type: CommandType.OPERATION,
|
|
246
|
-
handler: (
|
|
246
|
+
handler: (_accessor, _params) => {
|
|
247
247
|
return true;
|
|
248
248
|
}
|
|
249
249
|
};
|
|
250
250
|
const AutoImageCropOperation = {
|
|
251
251
|
id: "sheet.operation.Auto-image-crop",
|
|
252
252
|
type: CommandType.OPERATION,
|
|
253
|
-
handler: (
|
|
253
|
+
handler: (_accessor, _params) => {
|
|
254
254
|
return true;
|
|
255
255
|
}
|
|
256
256
|
};
|
|
@@ -624,7 +624,7 @@ const menuSchema = { [ContextMenuPosition.DRAWING]: { [ContextMenuGroup.OTHERS]:
|
|
|
624
624
|
//#endregion
|
|
625
625
|
//#region package.json
|
|
626
626
|
var name = "@univerjs/drawing-ui";
|
|
627
|
-
var version = "1.0.0-beta.
|
|
627
|
+
var version = "1.0.0-beta.1";
|
|
628
628
|
|
|
629
629
|
//#endregion
|
|
630
630
|
//#region src/config/config.ts
|
|
@@ -697,11 +697,11 @@ function ImagePopupMenu(props) {
|
|
|
697
697
|
open: visible,
|
|
698
698
|
onOpenChange: onVisibleChange,
|
|
699
699
|
children: /* @__PURE__ */ jsxs("div", {
|
|
700
|
-
className: clsx("univer-flex univer-items-center univer-gap-2 univer-rounded univer-p-1 hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-800", borderClassName, {
|
|
700
|
+
className: clsx("univer-flex univer-items-center univer-gap-2 univer-rounded univer-p-1 univer-text-gray-900 hover:univer-bg-gray-100 dark:hover:!univer-bg-gray-800", borderClassName, {
|
|
701
701
|
"univer-bg-gray-100 dark:!univer-bg-gray-800": visible,
|
|
702
|
-
"univer-bg-
|
|
702
|
+
"univer-bg-gray-0 dark:!univer-bg-gray-900": !visible
|
|
703
703
|
}),
|
|
704
|
-
children: [/* @__PURE__ */ jsx(AutofillDoubleIcon, { className: "univer-fill-primary-600 univer-text-gray-900 dark:!univer-text-
|
|
704
|
+
children: [/* @__PURE__ */ jsx(AutofillDoubleIcon, { className: "univer-fill-primary-600 univer-text-gray-900 dark:!univer-text-gray-0" }), showMore && /* @__PURE__ */ jsx(MoreDownIcon, { className: "dark:!univer-text-gray-0" })]
|
|
705
705
|
})
|
|
706
706
|
})
|
|
707
707
|
});
|
|
@@ -742,7 +742,7 @@ function ToolbarDropdownButton(props) {
|
|
|
742
742
|
open,
|
|
743
743
|
onOpenChange: setOpen,
|
|
744
744
|
overlay: /* @__PURE__ */ jsx("div", {
|
|
745
|
-
className: "univer-min-w-32 univer-rounded-lg univer-border univer-border-solid univer-border-gray-200 univer-bg-
|
|
745
|
+
className: "univer-min-w-32 univer-rounded-lg univer-border univer-border-solid univer-border-gray-200 univer-bg-gray-0 univer-p-1 univer-shadow-lg dark:!univer-border-gray-700 dark:!univer-bg-gray-900",
|
|
746
746
|
children: props.options.map((option) => /* @__PURE__ */ jsxs("button", {
|
|
747
747
|
type: "button",
|
|
748
748
|
onClick: () => {
|
|
@@ -831,7 +831,7 @@ function DocImageFloatingToolbar(props) {
|
|
|
831
831
|
event.stopPropagation();
|
|
832
832
|
event.preventDefault();
|
|
833
833
|
},
|
|
834
|
-
className: clsx("univer-box-border univer-flex univer-items-center univer-rounded univer-bg-
|
|
834
|
+
className: clsx("univer-box-border univer-flex univer-items-center univer-rounded univer-bg-gray-0 univer-px-1 univer-py-1 univer-shadow-sm dark:!univer-border-gray-700 dark:!univer-bg-gray-900", borderClassName),
|
|
835
835
|
children: [/* @__PURE__ */ jsx(ToolbarGroup, { children: /* @__PURE__ */ jsx(ToolbarDropdownButton, {
|
|
836
836
|
title: ((_wrappingStyleOptions = wrappingStyleOptions.find((option) => option.value === wrappingStyle)) === null || _wrappingStyleOptions === void 0 ? void 0 : _wrappingStyleOptions.label) ?? localeService.t("drawing-ui.image-text-wrap.inline"),
|
|
837
837
|
value: wrappingStyle,
|
|
@@ -856,11 +856,14 @@ function DocChartFloatingToolbar(props) {
|
|
|
856
856
|
const [hidden, setHidden] = useState(false);
|
|
857
857
|
const chartTypeItem = props.menuItems.find((item) => item.type === "select");
|
|
858
858
|
const actionItems = props.menuItems.filter((item) => item.type !== "select" && item.icon).sort((a, b) => a.index - b.index);
|
|
859
|
-
const chartTypeOptions = ((chartTypeItem === null || chartTypeItem === void 0 ? void 0 : chartTypeItem.options) ?? []).map((option) =>
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
859
|
+
const chartTypeOptions = ((chartTypeItem === null || chartTypeItem === void 0 ? void 0 : chartTypeItem.options) ?? []).map((option) => {
|
|
860
|
+
const Icon = option.icon ? iconManager.get(option.icon) : ChartIcon;
|
|
861
|
+
return {
|
|
862
|
+
label: String(option.label),
|
|
863
|
+
value: option.value,
|
|
864
|
+
icon: /* @__PURE__ */ jsx(Icon, {})
|
|
865
|
+
};
|
|
866
|
+
});
|
|
864
867
|
const executeMenuItem = (item) => {
|
|
865
868
|
if (!item || item.disable) return;
|
|
866
869
|
if (item.hideOnClick) setHidden(true);
|
|
@@ -873,7 +876,7 @@ function DocChartFloatingToolbar(props) {
|
|
|
873
876
|
event.stopPropagation();
|
|
874
877
|
event.preventDefault();
|
|
875
878
|
},
|
|
876
|
-
className: clsx("univer-box-border univer-flex univer-items-center univer-rounded univer-bg-
|
|
879
|
+
className: clsx("univer-box-border univer-flex univer-items-center univer-rounded univer-bg-gray-0 univer-px-1 univer-py-1 univer-shadow-sm dark:!univer-border-gray-700 dark:!univer-bg-gray-900", borderClassName),
|
|
877
880
|
children: [chartTypeItem && /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx(ToolbarGroup, { children: /* @__PURE__ */ jsx(ToolbarDropdownButton, {
|
|
878
881
|
title: localeService.t(chartTypeItem.label),
|
|
879
882
|
value: chartTypeItem.value ?? ((_chartTypeOptions$ = chartTypeOptions[0]) === null || _chartTypeOptions$ === void 0 ? void 0 : _chartTypeOptions$.value) ?? "",
|
|
@@ -1953,7 +1956,7 @@ var ImageCropperObject = class extends Shape {
|
|
|
1953
1956
|
//#endregion
|
|
1954
1957
|
//#region src/controllers/image-cropper.controller.ts
|
|
1955
1958
|
let ImageCropperController = class ImageCropperController extends Disposable {
|
|
1956
|
-
constructor(_commandService, _drawingManagerService, _renderManagerService, _univerInstanceService, _messageService, _localeService) {
|
|
1959
|
+
constructor(_commandService, _drawingManagerService, _renderManagerService, _univerInstanceService, _messageService, _localeService, _shortcutService) {
|
|
1957
1960
|
super();
|
|
1958
1961
|
this._commandService = _commandService;
|
|
1959
1962
|
this._drawingManagerService = _drawingManagerService;
|
|
@@ -1961,7 +1964,13 @@ let ImageCropperController = class ImageCropperController extends Disposable {
|
|
|
1961
1964
|
this._univerInstanceService = _univerInstanceService;
|
|
1962
1965
|
this._messageService = _messageService;
|
|
1963
1966
|
this._localeService = _localeService;
|
|
1967
|
+
this._shortcutService = _shortcutService;
|
|
1964
1968
|
_defineProperty(this, "_sceneListenerOnImageMap", /* @__PURE__ */ new WeakSet());
|
|
1969
|
+
_defineProperty(this, "_cropShortcutDisposables", new DisposableCollection());
|
|
1970
|
+
_defineProperty(this, "_cropSnapshots", /* @__PURE__ */ new WeakMap());
|
|
1971
|
+
_defineProperty(this, "_pendingCropSnapshot", null);
|
|
1972
|
+
_defineProperty(this, "_activeCropSession", null);
|
|
1973
|
+
this.disposeWithMe(this._cropShortcutDisposables);
|
|
1965
1974
|
this._init();
|
|
1966
1975
|
}
|
|
1967
1976
|
_init() {
|
|
@@ -1996,12 +2005,17 @@ let ImageCropperController = class ImageCropperController extends Disposable {
|
|
|
1996
2005
|
return;
|
|
1997
2006
|
}
|
|
1998
2007
|
if (imageShape == null) return;
|
|
1999
|
-
this.
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2008
|
+
this._pendingCropSnapshot = this._captureCropSnapshot(imageShape);
|
|
2009
|
+
try {
|
|
2010
|
+
this._updateCropperObject(cropType, imageShape);
|
|
2011
|
+
this._commandService.syncExecuteCommand(OpenImageCropOperation.id, {
|
|
2012
|
+
unitId,
|
|
2013
|
+
subUnitId,
|
|
2014
|
+
drawingId
|
|
2015
|
+
});
|
|
2016
|
+
} finally {
|
|
2017
|
+
this._pendingCropSnapshot = null;
|
|
2018
|
+
}
|
|
2005
2019
|
}));
|
|
2006
2020
|
}
|
|
2007
2021
|
_calculateSrcRectByRatio(left, top, width, height, numerator, denominator) {
|
|
@@ -2069,6 +2083,7 @@ let ImageCropperController = class ImageCropperController extends Disposable {
|
|
|
2069
2083
|
if (command.id !== OpenImageCropOperation.id) return;
|
|
2070
2084
|
const params = command.params;
|
|
2071
2085
|
if (params == null) return;
|
|
2086
|
+
if (this._activeCropSession != null) this._commandService.syncExecuteCommand(CloseImageCropOperation.id, { isAuto: true });
|
|
2072
2087
|
const { unitId, subUnitId, drawingId } = params;
|
|
2073
2088
|
const renderObject = this._renderManagerService.getRenderUnitById(unitId);
|
|
2074
2089
|
const scene = renderObject === null || renderObject === void 0 ? void 0 : renderObject.scene;
|
|
@@ -2103,12 +2118,20 @@ let ImageCropperController = class ImageCropperController extends Disposable {
|
|
|
2103
2118
|
prstGeom: imageShape.prstGeom,
|
|
2104
2119
|
applyTransform: imageShape.calculateTransformWithSrcRect()
|
|
2105
2120
|
});
|
|
2121
|
+
this._cropSnapshots.set(imageCropperObject, this._pendingCropSnapshot ?? this._captureCropSnapshot(imageShape));
|
|
2122
|
+
this._pendingCropSnapshot = null;
|
|
2106
2123
|
scene.addObject(imageCropperObject, imageShape.getLayerIndex() + 1).attachTransformerTo(imageCropperObject);
|
|
2124
|
+
this._activeCropSession = {
|
|
2125
|
+
scene,
|
|
2126
|
+
imageShape,
|
|
2127
|
+
imageCropperObject
|
|
2128
|
+
};
|
|
2107
2129
|
transformer === null || transformer === void 0 || transformer.createControlForCopper(imageCropperObject);
|
|
2108
2130
|
this._addHoverForImageCopper(imageCropperObject);
|
|
2109
2131
|
imageShape.openRenderByCropper();
|
|
2110
2132
|
transformer === null || transformer === void 0 || transformer.refreshControls();
|
|
2111
2133
|
imageCropperObject.makeDirty(true);
|
|
2134
|
+
this._registerCropShortcuts();
|
|
2112
2135
|
this._commandService.syncExecuteCommand(SetDrawingSelectedOperation.id, [{
|
|
2113
2136
|
unitId,
|
|
2114
2137
|
subUnitId,
|
|
@@ -2123,39 +2146,40 @@ let ImageCropperController = class ImageCropperController extends Disposable {
|
|
|
2123
2146
|
_initCloseCrop() {
|
|
2124
2147
|
this.disposeWithMe(this._commandService.onCommandExecuted((command) => {
|
|
2125
2148
|
if (command.id !== CloseImageCropOperation.id) return;
|
|
2126
|
-
const
|
|
2127
|
-
if (
|
|
2128
|
-
const
|
|
2129
|
-
const renderObject = this._renderManagerService.getRenderUnitById(unitId);
|
|
2130
|
-
const scene = renderObject === null || renderObject === void 0 ? void 0 : renderObject.scene;
|
|
2131
|
-
if (scene == null) return true;
|
|
2132
|
-
const imageCropperObject = this._searchCropObject(scene);
|
|
2133
|
-
if (imageCropperObject == null) return;
|
|
2134
|
-
const imageShape = this._getApplyObjectByCropObject(imageCropperObject);
|
|
2135
|
-
if (imageShape == null) return;
|
|
2149
|
+
const cropSession = this._activeCropSession;
|
|
2150
|
+
if (cropSession == null) return;
|
|
2151
|
+
const { scene, imageShape, imageCropperObject } = cropSession;
|
|
2136
2152
|
const transformer = scene.getTransformerByCreate();
|
|
2137
2153
|
transformer.detachFrom(imageCropperObject);
|
|
2138
2154
|
transformer.clearCopperControl();
|
|
2139
|
-
const
|
|
2140
|
-
|
|
2141
|
-
|
|
2142
|
-
const
|
|
2143
|
-
this._drawingManagerService.
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2155
|
+
const params = command.params;
|
|
2156
|
+
if (params === null || params === void 0 ? void 0 : params.isCancel) this._restoreCropSnapshot(imageShape, imageCropperObject);
|
|
2157
|
+
else {
|
|
2158
|
+
const srcRect = this._getSrcRectByTransformState(imageShape, imageCropperObject);
|
|
2159
|
+
const drawingParam = this._drawingManagerService.getDrawingOKey(imageShape.oKey);
|
|
2160
|
+
if (drawingParam != null) {
|
|
2161
|
+
const { left, top, height, width } = imageCropperObject;
|
|
2162
|
+
this._drawingManagerService.featurePluginUpdateNotification([{
|
|
2163
|
+
...drawingParam,
|
|
2164
|
+
transform: {
|
|
2165
|
+
...drawingParam.transform,
|
|
2166
|
+
left,
|
|
2167
|
+
top,
|
|
2168
|
+
height,
|
|
2169
|
+
width
|
|
2170
|
+
},
|
|
2171
|
+
srcRect: srcRect.srcRectAngle
|
|
2172
|
+
}]);
|
|
2173
|
+
}
|
|
2174
|
+
imageShape.setSrcRect({ ...srcRect.srcRectAngle });
|
|
2154
2175
|
}
|
|
2155
|
-
imageShape.setSrcRect({ ...srcRect.srcRectAngle });
|
|
2156
2176
|
imageShape.closeRenderByCropper();
|
|
2157
2177
|
imageShape.makeDirty(true);
|
|
2158
|
-
|
|
2178
|
+
transformer.refreshControls();
|
|
2179
|
+
this._cropSnapshots.delete(imageCropperObject);
|
|
2180
|
+
imageCropperObject.dispose();
|
|
2181
|
+
this._activeCropSession = null;
|
|
2182
|
+
this._cropShortcutDisposables.dispose();
|
|
2159
2183
|
}));
|
|
2160
2184
|
const sheetUnit$ = this._univerInstanceService.getCurrentTypeOfUnit$(UniverInstanceType.UNIVER_SHEET).pipe(switchMap((workbook) => workbook ? workbook.activeSheet$ : of(null)));
|
|
2161
2185
|
this.disposeWithMe(sheetUnit$.subscribe(() => {
|
|
@@ -2171,6 +2195,33 @@ let ImageCropperController = class ImageCropperController extends Disposable {
|
|
|
2171
2195
|
if (applyObject == null) return null;
|
|
2172
2196
|
return applyObject;
|
|
2173
2197
|
}
|
|
2198
|
+
_captureCropSnapshot(imageShape) {
|
|
2199
|
+
return {
|
|
2200
|
+
transform: imageShape.getState(),
|
|
2201
|
+
srcRect: imageShape.srcRect == null ? imageShape.srcRect : { ...imageShape.srcRect }
|
|
2202
|
+
};
|
|
2203
|
+
}
|
|
2204
|
+
_restoreCropSnapshot(imageShape, imageCropperObject) {
|
|
2205
|
+
const snapshot = this._cropSnapshots.get(imageCropperObject);
|
|
2206
|
+
if (snapshot) {
|
|
2207
|
+
imageShape.transformByStateCloseCropper(snapshot.transform);
|
|
2208
|
+
imageShape.setSrcRect(snapshot.srcRect);
|
|
2209
|
+
}
|
|
2210
|
+
}
|
|
2211
|
+
_registerCropShortcuts() {
|
|
2212
|
+
this._cropShortcutDisposables.dispose();
|
|
2213
|
+
this._cropShortcutDisposables.add(this._shortcutService.registerShortcut({
|
|
2214
|
+
id: CloseImageCropOperation.id,
|
|
2215
|
+
binding: KeyCode.ENTER,
|
|
2216
|
+
priority: 1e3
|
|
2217
|
+
}));
|
|
2218
|
+
this._cropShortcutDisposables.add(this._shortcutService.registerShortcut({
|
|
2219
|
+
id: CloseImageCropOperation.id,
|
|
2220
|
+
binding: KeyCode.ESC,
|
|
2221
|
+
priority: 1e3,
|
|
2222
|
+
staticParameters: { isCancel: true }
|
|
2223
|
+
}));
|
|
2224
|
+
}
|
|
2174
2225
|
_addListenerOnImage(scene) {
|
|
2175
2226
|
const transformer = scene.getTransformerByCreate();
|
|
2176
2227
|
let startTransform = null;
|
|
@@ -2223,8 +2274,8 @@ let ImageCropperController = class ImageCropperController extends Disposable {
|
|
|
2223
2274
|
}));
|
|
2224
2275
|
}
|
|
2225
2276
|
_getSrcRectByTransformState(applyObject, imageCropperObject) {
|
|
2226
|
-
const { left, top, height, width
|
|
2227
|
-
const { left: applyLeft, top: applyTop, width: applyWidth, height: applyHeight, angle: applyAngle
|
|
2277
|
+
const { left, top, height, width } = imageCropperObject;
|
|
2278
|
+
const { left: applyLeft, top: applyTop, width: applyWidth, height: applyHeight, angle: applyAngle } = applyObject;
|
|
2228
2279
|
const newLeft = left - applyLeft;
|
|
2229
2280
|
const newTop = top - applyTop;
|
|
2230
2281
|
const srcRect = {
|
|
@@ -2260,7 +2311,8 @@ ImageCropperController = __decorate([
|
|
|
2260
2311
|
__decorateParam(2, IRenderManagerService),
|
|
2261
2312
|
__decorateParam(3, IUniverInstanceService),
|
|
2262
2313
|
__decorateParam(4, IMessageService),
|
|
2263
|
-
__decorateParam(5, Inject(LocaleService))
|
|
2314
|
+
__decorateParam(5, Inject(LocaleService)),
|
|
2315
|
+
__decorateParam(6, IShortcutService)
|
|
2264
2316
|
], ImageCropperController);
|
|
2265
2317
|
|
|
2266
2318
|
//#endregion
|
|
@@ -2746,7 +2798,7 @@ function ObjectListPanelBase(props) {
|
|
|
2746
2798
|
["locked", labels.filterLocked]
|
|
2747
2799
|
].map(([mode, label]) => /* @__PURE__ */ jsx("button", {
|
|
2748
2800
|
type: "button",
|
|
2749
|
-
className: clsx("univer-h-7 univer-min-w-0 univer-flex-1 univer-rounded-md univer-border univer-border-solid univer-px-2 univer-text-xs univer-outline-none univer-transition-colors dark:!univer-border-gray-700", filterMode === mode ? "dark:!univer-bg-primary-900/30 univer-border-primary-500 univer-bg-primary-50 univer-text-primary-600 dark:!univer-text-primary-200" : "univer-border-gray-200 univer-bg-
|
|
2801
|
+
className: clsx("univer-h-7 univer-min-w-0 univer-flex-1 univer-rounded-md univer-border univer-border-solid univer-px-2 univer-text-xs univer-outline-none univer-transition-colors dark:!univer-border-gray-700", filterMode === mode ? "dark:!univer-bg-primary-900/30 univer-border-primary-500 univer-bg-primary-50 univer-text-primary-600 dark:!univer-text-primary-200" : "univer-border-gray-200 univer-bg-gray-0 univer-text-gray-600 hover:univer-bg-gray-50 dark:!univer-bg-gray-900 dark:!univer-text-gray-300 dark:hover:!univer-bg-gray-800"),
|
|
2750
2802
|
"aria-pressed": filterMode === mode,
|
|
2751
2803
|
onClick: () => setFilterMode(mode),
|
|
2752
2804
|
children: /* @__PURE__ */ jsx("span", {
|
|
@@ -2776,7 +2828,7 @@ function ObjectListPanelBase(props) {
|
|
|
2776
2828
|
children: [
|
|
2777
2829
|
section.id ? /* @__PURE__ */ jsx("span", {
|
|
2778
2830
|
className: "univer-flex univer-size-4 univer-shrink-0 univer-items-center univer-justify-center",
|
|
2779
|
-
children:
|
|
2831
|
+
children: /* @__PURE__ */ jsx(MoreDownIcon, { className: clsx({ "-univer-rotate-90 rtl:univer-rotate-90": sectionCollapsed }) })
|
|
2780
2832
|
}) : /* @__PURE__ */ jsx("span", { className: "univer-size-4 univer-shrink-0" }),
|
|
2781
2833
|
/* @__PURE__ */ jsx("span", {
|
|
2782
2834
|
className: "univer-min-w-0 univer-flex-1 univer-truncate univer-text-left",
|
|
@@ -2885,11 +2937,11 @@ function ObjectListRow(props) {
|
|
|
2885
2937
|
event.stopPropagation();
|
|
2886
2938
|
onToggleExpanded();
|
|
2887
2939
|
},
|
|
2888
|
-
children:
|
|
2940
|
+
children: /* @__PURE__ */ jsx(MoreDownIcon, { className: clsx({ "-univer-rotate-90 rtl:univer-rotate-90": !item.expanded }) })
|
|
2889
2941
|
}) : /* @__PURE__ */ jsx("span", { className: "univer-size-5 univer-shrink-0" }),
|
|
2890
2942
|
showName ? /* @__PURE__ */ jsx(Input, {
|
|
2891
2943
|
className: clsx("univer-h-7 univer-w-0 univer-min-w-0 univer-flex-1", disabled && "univer-cursor-not-allowed"),
|
|
2892
|
-
inputClass: clsx("!univer-h-7 univer-min-w-0 univer-overflow-hidden univer-text-ellipsis univer-whitespace-nowrap !univer-rounded !univer-border-transparent !univer-bg-transparent !univer-px-1 univer-text-sm univer-text-gray-900 !univer-shadow-none focus:!univer-border-primary-500 focus:!univer-bg-
|
|
2944
|
+
inputClass: clsx("!univer-h-7 univer-min-w-0 univer-overflow-hidden univer-text-ellipsis univer-whitespace-nowrap !univer-rounded !univer-border-transparent !univer-bg-transparent !univer-px-1 univer-text-sm univer-text-gray-900 !univer-shadow-none focus:!univer-border-primary-500 focus:!univer-bg-gray-0 focus:!univer-ring-1 focus:!univer-ring-primary-100 disabled:!univer-bg-transparent disabled:univer-opacity-100 dark:!univer-text-gray-100 dark:focus:!univer-bg-gray-900 dark:focus:!univer-ring-primary-900", disabled && "univer-text-gray-400 dark:!univer-text-gray-500"),
|
|
2893
2945
|
inputStyle: {
|
|
2894
2946
|
maxWidth: "100%",
|
|
2895
2947
|
boxSizing: "border-box"
|
|
@@ -2983,7 +3035,7 @@ function ObjectDetailsEditor(props) {
|
|
|
2983
3035
|
className: "univer-text-xs univer-text-gray-500 dark:!univer-text-gray-400",
|
|
2984
3036
|
children: labels.description
|
|
2985
3037
|
}), /* @__PURE__ */ jsx("textarea", {
|
|
2986
|
-
className: "univer-box-border univer-min-h-16 univer-w-full univer-resize-none univer-rounded-md univer-border univer-border-solid univer-border-gray-200 univer-bg-
|
|
3038
|
+
className: "univer-box-border univer-min-h-16 univer-w-full univer-resize-none univer-rounded-md univer-border univer-border-solid univer-border-gray-200 univer-bg-gray-0 univer-p-2 univer-text-sm univer-text-gray-900 univer-outline-none focus:univer-border-primary-500 focus:univer-ring-1 focus:univer-ring-primary-100 disabled:univer-cursor-not-allowed disabled:univer-opacity-70 dark:!univer-border-gray-700 dark:!univer-bg-gray-900 dark:!univer-text-gray-100 dark:focus:!univer-ring-primary-900",
|
|
2987
3039
|
value: draftDescription,
|
|
2988
3040
|
disabled,
|
|
2989
3041
|
placeholder: labels.descriptionPlaceholder,
|
|
@@ -3061,7 +3113,7 @@ const DrawingAlign = (props) => {
|
|
|
3061
3113
|
}), /* @__PURE__ */ jsx("div", {
|
|
3062
3114
|
className: "univer-relative univer-mt-2.5 univer-flex univer-h-full",
|
|
3063
3115
|
children: /* @__PURE__ */ jsx("div", {
|
|
3064
|
-
className: "univer-w-full univer-text-gray-900 dark:!univer-text-
|
|
3116
|
+
className: "univer-w-full univer-text-gray-900 dark:!univer-text-gray-0",
|
|
3065
3117
|
children: /* @__PURE__ */ jsx(Select, {
|
|
3066
3118
|
value: alignValue,
|
|
3067
3119
|
options: alignOptions,
|
package/lib/locale/ar-SA.js
CHANGED
|
@@ -88,29 +88,11 @@ const locale = { "drawing-ui": {
|
|
|
88
88
|
null: "لا يوجد تحديد للكائن"
|
|
89
89
|
},
|
|
90
90
|
"image-text-wrap": {
|
|
91
|
-
title: "التفاف النص",
|
|
92
|
-
wrappingStyle: "نمط التفاف",
|
|
93
91
|
square: "مربع",
|
|
94
92
|
topAndBottom: "أعلى وأسفل",
|
|
95
93
|
inline: "في نفس السطر مع النص",
|
|
96
94
|
behindText: "خلف النص",
|
|
97
|
-
inFrontText: "أمام النص"
|
|
98
|
-
wrapText: "تفاف النص",
|
|
99
|
-
bothSide: "كلا الجانبين",
|
|
100
|
-
leftOnly: "يسار فقط",
|
|
101
|
-
rightOnly: "يمين فقط",
|
|
102
|
-
distanceFromText: "المسافة من النص",
|
|
103
|
-
top: "أعلى(بكسل)",
|
|
104
|
-
left: "يسار(بكسل)",
|
|
105
|
-
bottom: "أسفل(بكسل)",
|
|
106
|
-
right: "يمين(بكسل)"
|
|
107
|
-
},
|
|
108
|
-
"image-popup": {
|
|
109
|
-
replace: "استبدال",
|
|
110
|
-
delete: "حذف",
|
|
111
|
-
edit: "تحرير",
|
|
112
|
-
crop: "قص",
|
|
113
|
-
reset: "إعادة تعيين الحجم"
|
|
95
|
+
inFrontText: "أمام النص"
|
|
114
96
|
}
|
|
115
97
|
} };
|
|
116
98
|
|
package/lib/locale/ca-ES.js
CHANGED
|
@@ -88,29 +88,11 @@ const locale = { "drawing-ui": {
|
|
|
88
88
|
null: "Cap objecte seleccionat"
|
|
89
89
|
},
|
|
90
90
|
"image-text-wrap": {
|
|
91
|
-
title: "Ajust del text",
|
|
92
|
-
wrappingStyle: "Estil d'ajust",
|
|
93
91
|
square: "Quadrat",
|
|
94
92
|
topAndBottom: "A dalt i a baix",
|
|
95
93
|
inline: "En línia amb el text",
|
|
96
94
|
behindText: "Darrere del text",
|
|
97
|
-
inFrontText: "Davant del text"
|
|
98
|
-
wrapText: "Ajusta el text",
|
|
99
|
-
bothSide: "Ambdós costats",
|
|
100
|
-
leftOnly: "Només esquerra",
|
|
101
|
-
rightOnly: "Només dreta",
|
|
102
|
-
distanceFromText: "Distància del text",
|
|
103
|
-
top: "A dalt(px)",
|
|
104
|
-
left: "Esquerra(px)",
|
|
105
|
-
bottom: "A baix(px)",
|
|
106
|
-
right: "Dreta(px)"
|
|
107
|
-
},
|
|
108
|
-
"image-popup": {
|
|
109
|
-
replace: "Reemplaça",
|
|
110
|
-
delete: "Elimina",
|
|
111
|
-
edit: "Edita",
|
|
112
|
-
crop: "Retalla",
|
|
113
|
-
reset: "Restableix la mida"
|
|
95
|
+
inFrontText: "Davant del text"
|
|
114
96
|
}
|
|
115
97
|
} };
|
|
116
98
|
|
package/lib/locale/de-DE.js
CHANGED
|
@@ -88,29 +88,11 @@ const locale = { "drawing-ui": {
|
|
|
88
88
|
null: "Keine Objektauswahl"
|
|
89
89
|
},
|
|
90
90
|
"image-text-wrap": {
|
|
91
|
-
title: "Textumbruch",
|
|
92
|
-
wrappingStyle: "Umbruchstil",
|
|
93
91
|
square: "Quadratisch",
|
|
94
92
|
topAndBottom: "Oben und unten",
|
|
95
93
|
inline: "Im Textfluss",
|
|
96
94
|
behindText: "Hinter dem Text",
|
|
97
|
-
inFrontText: "Vor dem Text"
|
|
98
|
-
wrapText: "Text umbrechen",
|
|
99
|
-
bothSide: "Beide Seiten",
|
|
100
|
-
leftOnly: "Nur links",
|
|
101
|
-
rightOnly: "Nur rechts",
|
|
102
|
-
distanceFromText: "Abstand vom Text",
|
|
103
|
-
top: "Oben(px)",
|
|
104
|
-
left: "Links(px)",
|
|
105
|
-
bottom: "Unten(px)",
|
|
106
|
-
right: "Rechts(px)"
|
|
107
|
-
},
|
|
108
|
-
"image-popup": {
|
|
109
|
-
replace: "Ersetzen",
|
|
110
|
-
delete: "Löschen",
|
|
111
|
-
edit: "Bearbeiten",
|
|
112
|
-
crop: "Zuschneiden",
|
|
113
|
-
reset: "Größe zurücksetzen"
|
|
95
|
+
inFrontText: "Vor dem Text"
|
|
114
96
|
}
|
|
115
97
|
} };
|
|
116
98
|
|
package/lib/locale/en-US.js
CHANGED
|
@@ -102,30 +102,12 @@ const locale = { "drawing-ui": {
|
|
|
102
102
|
},
|
|
103
103
|
null: "No Object Selection"
|
|
104
104
|
},
|
|
105
|
-
"image-popup": {
|
|
106
|
-
replace: "Replace",
|
|
107
|
-
delete: "Delete",
|
|
108
|
-
edit: "Edit",
|
|
109
|
-
crop: "Crop",
|
|
110
|
-
reset: "Reset Size"
|
|
111
|
-
},
|
|
112
105
|
"image-text-wrap": {
|
|
113
|
-
title: "Text Wrapping",
|
|
114
|
-
wrappingStyle: "Wrapping Style",
|
|
115
106
|
square: "Square",
|
|
116
107
|
topAndBottom: "Top and Bottom",
|
|
117
108
|
inline: "In line with text",
|
|
118
109
|
behindText: "Behind text",
|
|
119
|
-
inFrontText: "In front of text"
|
|
120
|
-
wrapText: "Wrap text",
|
|
121
|
-
bothSide: "Both sides",
|
|
122
|
-
leftOnly: "Left only",
|
|
123
|
-
rightOnly: "Right only",
|
|
124
|
-
distanceFromText: "Distance from text",
|
|
125
|
-
top: "Top(px)",
|
|
126
|
-
left: "Left(px)",
|
|
127
|
-
bottom: "Bottom(px)",
|
|
128
|
-
right: "Right(px)"
|
|
110
|
+
inFrontText: "In front of text"
|
|
129
111
|
}
|
|
130
112
|
} };
|
|
131
113
|
|
package/lib/locale/es-ES.js
CHANGED
|
@@ -88,29 +88,11 @@ const locale = { "drawing-ui": {
|
|
|
88
88
|
null: "Ningún objeto seleccionado"
|
|
89
89
|
},
|
|
90
90
|
"image-text-wrap": {
|
|
91
|
-
title: "Ajuste de texto",
|
|
92
|
-
wrappingStyle: "Estilo de ajuste",
|
|
93
91
|
square: "Cuadrado",
|
|
94
92
|
topAndBottom: "Arriba y abajo",
|
|
95
93
|
inline: "En línea con el texto",
|
|
96
94
|
behindText: "Detrás del texto",
|
|
97
|
-
inFrontText: "Delante del texto"
|
|
98
|
-
wrapText: "Ajustar texto",
|
|
99
|
-
bothSide: "Ambos lados",
|
|
100
|
-
leftOnly: "Solo izquierda",
|
|
101
|
-
rightOnly: "Solo derecha",
|
|
102
|
-
distanceFromText: "Distancia del texto",
|
|
103
|
-
top: "Arriba(px)",
|
|
104
|
-
left: "Izquierda(px)",
|
|
105
|
-
bottom: "Abajo(px)",
|
|
106
|
-
right: "Derecha(px)"
|
|
107
|
-
},
|
|
108
|
-
"image-popup": {
|
|
109
|
-
replace: "Reemplazar",
|
|
110
|
-
delete: "Eliminar",
|
|
111
|
-
edit: "Editar",
|
|
112
|
-
crop: "Recortar",
|
|
113
|
-
reset: "Restablecer tamaño"
|
|
95
|
+
inFrontText: "Delante del texto"
|
|
114
96
|
}
|
|
115
97
|
} };
|
|
116
98
|
|
package/lib/locale/fa-IR.js
CHANGED
|
@@ -88,29 +88,11 @@ const locale = { "drawing-ui": {
|
|
|
88
88
|
null: "هیچ شیئی انتخاب نشده است"
|
|
89
89
|
},
|
|
90
90
|
"image-text-wrap": {
|
|
91
|
-
title: "پیچش متن",
|
|
92
|
-
wrappingStyle: "سبک پیچش",
|
|
93
91
|
square: "مربع",
|
|
94
92
|
topAndBottom: "بالا و پایین",
|
|
95
93
|
inline: "در یک خط با متن",
|
|
96
94
|
behindText: "پشت متن",
|
|
97
|
-
inFrontText: "جلوی متن"
|
|
98
|
-
wrapText: "پیچش متن",
|
|
99
|
-
bothSide: "هر دو طرف",
|
|
100
|
-
leftOnly: "فقط سمت چپ",
|
|
101
|
-
rightOnly: "فقط سمت راست",
|
|
102
|
-
distanceFromText: "فاصله از متن",
|
|
103
|
-
top: "بالا(px)",
|
|
104
|
-
left: "چپ(px)",
|
|
105
|
-
bottom: "پایین(px)",
|
|
106
|
-
right: "راست(px)"
|
|
107
|
-
},
|
|
108
|
-
"image-popup": {
|
|
109
|
-
replace: "تعویض",
|
|
110
|
-
delete: "حذف",
|
|
111
|
-
edit: "ویرایش",
|
|
112
|
-
crop: "کراپ",
|
|
113
|
-
reset: "بازنشانی اندازه"
|
|
95
|
+
inFrontText: "جلوی متن"
|
|
114
96
|
}
|
|
115
97
|
} };
|
|
116
98
|
|
package/lib/locale/fr-FR.js
CHANGED
|
@@ -88,29 +88,11 @@ const locale = { "drawing-ui": {
|
|
|
88
88
|
null: "Aucune sélection d'objet"
|
|
89
89
|
},
|
|
90
90
|
"image-text-wrap": {
|
|
91
|
-
title: "Habillage du texte",
|
|
92
|
-
wrappingStyle: "Style d'habillage",
|
|
93
91
|
square: "Carré",
|
|
94
92
|
topAndBottom: "Haut et bas",
|
|
95
93
|
inline: "Aligné avec le texte",
|
|
96
94
|
behindText: "Derrière le texte",
|
|
97
|
-
inFrontText: "Devant le texte"
|
|
98
|
-
wrapText: "Habiller le texte",
|
|
99
|
-
bothSide: "Des deux côtés",
|
|
100
|
-
leftOnly: "Seulement à gauche",
|
|
101
|
-
rightOnly: "Seulement à droite",
|
|
102
|
-
distanceFromText: "Distance du texte",
|
|
103
|
-
top: "Haut(px)",
|
|
104
|
-
left: "Gauche(px)",
|
|
105
|
-
bottom: "Bas(px)",
|
|
106
|
-
right: "Droite(px)"
|
|
107
|
-
},
|
|
108
|
-
"image-popup": {
|
|
109
|
-
replace: "Remplacer",
|
|
110
|
-
delete: "Supprimer",
|
|
111
|
-
edit: "Modifier",
|
|
112
|
-
crop: "Rogner",
|
|
113
|
-
reset: "Réinitialiser la taille"
|
|
95
|
+
inFrontText: "Devant le texte"
|
|
114
96
|
}
|
|
115
97
|
} };
|
|
116
98
|
|