@worktile/theia 2.0.1 → 2.1.3
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/bundles/worktile-theia.umd.js +366 -172
- package/bundles/worktile-theia.umd.js.map +1 -1
- package/components/toolbar/toolbar.component.d.ts +4 -1
- package/components/toolbar/toolbar.component.scss +2 -0
- package/components/toolbar-dropdown/toolbar-dropdown.component.d.ts +7 -5
- package/components/toolbar-dropdown/toolbar-dropdown.component.scss +2 -0
- package/components/toolbar-item/toolbar-item.component.d.ts +3 -0
- package/constants/code.d.ts +3 -3
- package/constants/default.d.ts +0 -1
- package/constants/node-types.d.ts +17 -1
- package/custom-types.d.ts +3 -1
- package/editor.module.d.ts +5 -3
- package/esm2015/components/inline-toolbar/inline-toolbar.component.js +1 -1
- package/esm2015/components/text/text.component.js +7 -2
- package/esm2015/components/toolbar/toolbar.component.js +18 -6
- package/esm2015/components/toolbar-dropdown/toolbar-dropdown.component.js +14 -5
- package/esm2015/components/toolbar-group/toolbar-group.component.js +1 -1
- package/esm2015/components/toolbar-item/toolbar-item.component.js +20 -6
- package/esm2015/constants/code.js +2 -2
- package/esm2015/constants/default.js +1 -2
- package/esm2015/constants/node-types.js +32 -2
- package/esm2015/constants/toolbar.js +2 -1
- package/esm2015/custom-types.js +1 -1
- package/esm2015/editor.component.js +7 -6
- package/esm2015/editor.module.js +9 -3
- package/esm2015/interfaces/editor.js +1 -1
- package/esm2015/interfaces/toolbar.js +1 -1
- package/esm2015/plugins/align/options.js +2 -1
- package/esm2015/plugins/code/code.component.js +69 -32
- package/esm2015/plugins/code/code.editor.js +3 -9
- package/esm2015/plugins/deserializers/deserialize-md.plugin.js +2 -2
- package/esm2015/plugins/font-size/font-size.editor.js +47 -0
- package/esm2015/plugins/font-size/options.js +25 -0
- package/esm2015/plugins/heading/heading.editor.js +13 -2
- package/esm2015/plugins/heading/options.js +2 -1
- package/esm2015/plugins/index.js +3 -1
- package/esm2015/plugins/mark/mark.plugin.js +15 -10
- package/esm2015/plugins/table/table.editor.js +1 -1
- package/esm2015/services/toolbar.service.js +2 -2
- package/fesm2015/worktile-theia.js +316 -127
- package/fesm2015/worktile-theia.js.map +1 -1
- package/interfaces/editor.d.ts +3 -1
- package/interfaces/toolbar.d.ts +2 -1
- package/package.json +1 -1
- package/plugins/code/code.component.d.ts +15 -4
- package/plugins/code/code.component.scss +46 -7
- package/plugins/code/code.editor.d.ts +3 -2
- package/plugins/font-size/font-size.editor.d.ts +8 -0
- package/plugins/font-size/options.d.ts +2 -0
- package/plugins/font-size/toolbar-item.component.scss +14 -0
- package/plugins/heading/heading.editor.d.ts +1 -1
- package/plugins/table/table.editor.d.ts +1 -1
- package/queries/get-selection-marks.d.ts +1 -0
- package/styles/editor.scss +20 -1
- package/styles/index.scss +1 -0
- package/styles/typo.scss +2 -1
- package/transforms/set-marks.d.ts +1 -0
|
@@ -16,7 +16,7 @@ import marked from 'marked';
|
|
|
16
16
|
import { TheiaConverter } from '@atinc/selene';
|
|
17
17
|
import * as i1$3 from 'ngx-tethys/popover';
|
|
18
18
|
import { ThyPopover } from 'ngx-tethys/popover';
|
|
19
|
-
import * as i2
|
|
19
|
+
import * as i2 from '@angular/cdk/overlay';
|
|
20
20
|
import { Overlay, OverlayModule } from '@angular/cdk/overlay';
|
|
21
21
|
import * as i1$1 from 'ngx-tethys/alert';
|
|
22
22
|
import { ThyAlertModule } from 'ngx-tethys/alert';
|
|
@@ -30,27 +30,31 @@ import * as i4$1 from 'ngx-tethys/icon';
|
|
|
30
30
|
import { ThyIconModule } from 'ngx-tethys/icon';
|
|
31
31
|
import * as i5 from 'ngx-tethys/input';
|
|
32
32
|
import { ThyInputModule } from 'ngx-tethys/input';
|
|
33
|
-
import * as
|
|
33
|
+
import * as i3 from 'ngx-tethys/nav';
|
|
34
34
|
import { ThyNavModule } from 'ngx-tethys/nav';
|
|
35
|
-
import * as
|
|
35
|
+
import * as i5$1 from 'ngx-tethys/tooltip';
|
|
36
36
|
import { ThyTooltipModule } from 'ngx-tethys/tooltip';
|
|
37
|
-
import * as
|
|
37
|
+
import * as i8 from 'ng-codemirror';
|
|
38
38
|
import { CodeMirrorComponent, CodemirrorModule } from 'ng-codemirror';
|
|
39
39
|
import * as i1$4 from 'ngx-tethys/notify';
|
|
40
40
|
import { ThyNotifyModule } from 'ngx-tethys/notify';
|
|
41
|
-
import * as i5$
|
|
41
|
+
import * as i5$2 from 'ngx-tethys/action-menu';
|
|
42
42
|
import { ThyActionMenuModule } from 'ngx-tethys/action-menu';
|
|
43
|
+
import * as i6$1 from 'ngx-tethys/switch';
|
|
44
|
+
import { ThySwitchModule } from 'ngx-tethys/switch';
|
|
45
|
+
import * as i9 from 'ngx-tethys/resizable';
|
|
46
|
+
import { ThyResizableModule } from 'ngx-tethys/resizable';
|
|
43
47
|
import isUrl from 'is-url';
|
|
44
48
|
import * as i1$5 from 'ngx-tethys/button';
|
|
45
49
|
import { ThyButtonModule } from 'ngx-tethys/button';
|
|
46
|
-
import * as i2$
|
|
50
|
+
import * as i2$1 from 'ngx-tethys/form';
|
|
47
51
|
import { ThyFormModule } from 'ngx-tethys/form';
|
|
48
52
|
import * as i5$3 from 'ngx-tethys/shared';
|
|
49
53
|
import { ThySharedModule } from 'ngx-tethys/shared';
|
|
50
54
|
import * as i1$6 from 'ngx-tethys';
|
|
51
55
|
import { coerceCssPixelValue } from '@angular/cdk/coercion';
|
|
52
56
|
import { PortalInjector, ComponentPortal } from '@angular/cdk/portal';
|
|
53
|
-
import * as i2$
|
|
57
|
+
import * as i2$2 from 'ngx-tethys/list';
|
|
54
58
|
import { ThyListModule } from 'ngx-tethys/list';
|
|
55
59
|
import { ThyAutocompleteModule } from 'ngx-tethys/autocomplete';
|
|
56
60
|
import { ThyAvatarModule } from 'ngx-tethys/avatar';
|
|
@@ -61,7 +65,6 @@ const PICTURE_ACCEPTED_UPLOAD_SIZE = 20;
|
|
|
61
65
|
const A_TAG_REL_ATTR = 'noopener noreferrer nofollow external ugc';
|
|
62
66
|
const LINK_DEFAULT_TEXT = '链接';
|
|
63
67
|
const TAB_SPACE = ' ';
|
|
64
|
-
const ZERO_WIDTH_CHAR = '\u200B';
|
|
65
68
|
const CLIPBOARD_FORMAT_KEY = 'x-theia-fragment';
|
|
66
69
|
const DEFAULT_SCROLL_CONTAINER = '.the-editable-container';
|
|
67
70
|
const ELEMENT_UNIQUE_ID = 'key';
|
|
@@ -108,6 +111,34 @@ var VerticalAlignment;
|
|
|
108
111
|
VerticalAlignment["middle"] = "middle";
|
|
109
112
|
VerticalAlignment["bottom"] = "bottom";
|
|
110
113
|
})(VerticalAlignment || (VerticalAlignment = {}));
|
|
114
|
+
var FontSizes;
|
|
115
|
+
(function (FontSizes) {
|
|
116
|
+
FontSizes["fontSize12"] = "12";
|
|
117
|
+
FontSizes["fontSize13"] = "13";
|
|
118
|
+
FontSizes["fontSize14"] = "14";
|
|
119
|
+
FontSizes["fontSize15"] = "15";
|
|
120
|
+
FontSizes["fontSize16"] = "16";
|
|
121
|
+
FontSizes["fontSize18"] = "18";
|
|
122
|
+
FontSizes["fontSize20"] = "20";
|
|
123
|
+
FontSizes["fontSize24"] = "24";
|
|
124
|
+
FontSizes["fontSize28"] = "28";
|
|
125
|
+
FontSizes["fontSize32"] = "32";
|
|
126
|
+
FontSizes["fontSize40"] = "40";
|
|
127
|
+
FontSizes["fontSize48"] = "48";
|
|
128
|
+
})(FontSizes || (FontSizes = {}));
|
|
129
|
+
const FontSizeTypes = [
|
|
130
|
+
FontSizes.fontSize12,
|
|
131
|
+
FontSizes.fontSize13,
|
|
132
|
+
FontSizes.fontSize14,
|
|
133
|
+
FontSizes.fontSize15,
|
|
134
|
+
FontSizes.fontSize16,
|
|
135
|
+
FontSizes.fontSize20,
|
|
136
|
+
FontSizes.fontSize24,
|
|
137
|
+
FontSizes.fontSize28,
|
|
138
|
+
FontSizes.fontSize32,
|
|
139
|
+
FontSizes.fontSize40,
|
|
140
|
+
FontSizes.fontSize48
|
|
141
|
+
];
|
|
111
142
|
var MarkTypes;
|
|
112
143
|
(function (MarkTypes) {
|
|
113
144
|
MarkTypes["bold"] = "bold";
|
|
@@ -117,6 +148,7 @@ var MarkTypes;
|
|
|
117
148
|
MarkTypes["color"] = "color";
|
|
118
149
|
MarkTypes["backgroundColor"] = "background-color";
|
|
119
150
|
MarkTypes["codeLine"] = "code-line";
|
|
151
|
+
MarkTypes["fontSize"] = "font-size";
|
|
120
152
|
})(MarkTypes || (MarkTypes = {}));
|
|
121
153
|
var ToolbarActionTypes;
|
|
122
154
|
(function (ToolbarActionTypes) {
|
|
@@ -145,7 +177,8 @@ const MarkProps = [
|
|
|
145
177
|
MarkTypes.color,
|
|
146
178
|
MarkTypes.italic,
|
|
147
179
|
MarkTypes.strike,
|
|
148
|
-
MarkTypes.underline
|
|
180
|
+
MarkTypes.underline,
|
|
181
|
+
MarkTypes.fontSize
|
|
149
182
|
];
|
|
150
183
|
const THE_INLINE_TOOLBAR_TYPES = [ElementKinds.default, ElementKinds.listItem, ElementKinds.checkItem];
|
|
151
184
|
const STANDARD_HEADING_TYPES = [
|
|
@@ -175,6 +208,7 @@ var ToolbarItemMode;
|
|
|
175
208
|
})(ToolbarItemMode || (ToolbarItemMode = {}));
|
|
176
209
|
const DefaultGlobalToolbarDefinition = [
|
|
177
210
|
ElementKinds.headingList,
|
|
211
|
+
MarkTypes.fontSize,
|
|
178
212
|
ToolbarActionTypes.split,
|
|
179
213
|
MarkTypes.bold,
|
|
180
214
|
MarkTypes.italic,
|
|
@@ -309,7 +343,7 @@ const CodeMode = {
|
|
|
309
343
|
default: 'default',
|
|
310
344
|
print: 'print'
|
|
311
345
|
};
|
|
312
|
-
class
|
|
346
|
+
class TheCodeConfig {
|
|
313
347
|
}
|
|
314
348
|
const THE_CODE_MODE_TOKEN = new InjectionToken('the-code-mode');
|
|
315
349
|
const THE_CODE_MODE_PROVIDER = {
|
|
@@ -325,7 +359,7 @@ class TheTextComponent extends BaseTextComponent {
|
|
|
325
359
|
super(elementRef, cdr);
|
|
326
360
|
this.elementRef = elementRef;
|
|
327
361
|
this.renderer2 = renderer2;
|
|
328
|
-
this.excludes = ['color', 'background-color', 'text'];
|
|
362
|
+
this.excludes = ['color', 'font-size', 'background-color', 'text'];
|
|
329
363
|
this.attributes = [];
|
|
330
364
|
}
|
|
331
365
|
applyTextMark() {
|
|
@@ -340,6 +374,11 @@ class TheTextComponent extends BaseTextComponent {
|
|
|
340
374
|
this.attributes.push(attr);
|
|
341
375
|
}
|
|
342
376
|
}
|
|
377
|
+
const fontSize = this.text[MarkTypes.fontSize];
|
|
378
|
+
if (fontSize) {
|
|
379
|
+
const attr = `the-${MarkTypes.fontSize}`;
|
|
380
|
+
this.renderer2.setAttribute(this.elementRef.nativeElement, attr, fontSize);
|
|
381
|
+
}
|
|
343
382
|
if (this.text[MarkTypes.color]) {
|
|
344
383
|
this.renderer2.setStyle(this.elementRef.nativeElement, 'color', this.text[MarkTypes.color]);
|
|
345
384
|
}
|
|
@@ -1990,7 +2029,7 @@ const withDeserializeMd = (options) => (editor) => {
|
|
|
1990
2029
|
editor,
|
|
1991
2030
|
conversion: () => {
|
|
1992
2031
|
try {
|
|
1993
|
-
const html = marked(plainFragment, { gfm: true });
|
|
2032
|
+
const html = marked(plainFragment.replace(/\n```/g, "\n\n```"), { gfm: true });
|
|
1994
2033
|
const htmlDom = new DOMParser().parseFromString(html, 'text/html');
|
|
1995
2034
|
const fragment = TheiaConverter.convertToTheia(Array.from(htmlDom.body.children));
|
|
1996
2035
|
if (!isUnformatted(fragment)) {
|
|
@@ -3820,11 +3859,14 @@ const withMark = () => (editor) => {
|
|
|
3820
3859
|
delete marks[key];
|
|
3821
3860
|
editor.marks = marks;
|
|
3822
3861
|
const text = Editor.string(e, selection.anchor.path);
|
|
3823
|
-
if (text
|
|
3824
|
-
|
|
3862
|
+
if (text !== '') {
|
|
3863
|
+
Editor.setNormalizing(editor, false);
|
|
3864
|
+
e.insertText('');
|
|
3865
|
+
editor.marks = marks;
|
|
3866
|
+
Editor.setNormalizing(editor, true);
|
|
3825
3867
|
}
|
|
3826
|
-
|
|
3827
|
-
e.
|
|
3868
|
+
else {
|
|
3869
|
+
Transforms.unsetNodes(e, key, { at: selection.anchor.path });
|
|
3828
3870
|
}
|
|
3829
3871
|
if (shouldChange) {
|
|
3830
3872
|
editor.onChange();
|
|
@@ -3842,11 +3884,14 @@ const withMark = () => (editor) => {
|
|
|
3842
3884
|
const marks = Object.assign(Object.assign({}, (Editor.marks(e) || {})), { [key]: value });
|
|
3843
3885
|
editor.marks = marks;
|
|
3844
3886
|
const text = Editor.string(e, selection.anchor.path);
|
|
3845
|
-
if (text
|
|
3846
|
-
|
|
3887
|
+
if (text !== '') {
|
|
3888
|
+
Editor.setNormalizing(editor, false);
|
|
3889
|
+
e.insertText('');
|
|
3890
|
+
editor.marks = marks;
|
|
3891
|
+
Editor.setNormalizing(editor, true);
|
|
3847
3892
|
}
|
|
3848
|
-
|
|
3849
|
-
e.
|
|
3893
|
+
else {
|
|
3894
|
+
Transforms.setNodes(e, { [key]: value }, { at: selection.anchor.path });
|
|
3850
3895
|
}
|
|
3851
3896
|
}
|
|
3852
3897
|
}
|
|
@@ -5438,6 +5483,15 @@ const HeadingEditor = {
|
|
|
5438
5483
|
split: true
|
|
5439
5484
|
});
|
|
5440
5485
|
Transforms.setNodes(editor, { type: heading });
|
|
5486
|
+
const entry = anchorBlockEntry(editor);
|
|
5487
|
+
const unMarks = {
|
|
5488
|
+
[MarkTypes.fontSize]: null
|
|
5489
|
+
};
|
|
5490
|
+
if (entry) {
|
|
5491
|
+
setMarks(editor, unMarks, entry[1]);
|
|
5492
|
+
return;
|
|
5493
|
+
}
|
|
5494
|
+
setMarks(editor, unMarks, editor.selection);
|
|
5441
5495
|
});
|
|
5442
5496
|
},
|
|
5443
5497
|
isHeadingActive(editor, heading) {
|
|
@@ -5454,6 +5508,7 @@ const HeadingOptions = [
|
|
|
5454
5508
|
name: '正文',
|
|
5455
5509
|
key: ElementKinds.headingList,
|
|
5456
5510
|
type: ToolbarItemType.toolDropdown,
|
|
5511
|
+
dropdownItemKey: ElementKinds.paragraph,
|
|
5457
5512
|
includes: [ElementKinds.paragraph, ...STANDARD_HEADING_TYPES]
|
|
5458
5513
|
},
|
|
5459
5514
|
{
|
|
@@ -5548,6 +5603,7 @@ const AlignOptions = [
|
|
|
5548
5603
|
key: ToolbarActionTypes.alignType,
|
|
5549
5604
|
type: ToolbarItemType.toolDropdown,
|
|
5550
5605
|
dropdownMode: DropdownMode.icon,
|
|
5606
|
+
dropdownItemKey: ToolbarActionTypes.alignLeft,
|
|
5551
5607
|
includes: [ToolbarActionTypes.alignLeft, ToolbarActionTypes.alignCenter, ToolbarActionTypes.alignRight],
|
|
5552
5608
|
name: '对齐方式'
|
|
5553
5609
|
},
|
|
@@ -5990,7 +6046,7 @@ TheColorToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
5990
6046
|
thyIconName="caret-down"
|
|
5991
6047
|
></thy-icon>
|
|
5992
6048
|
</a>
|
|
5993
|
-
`, isInline: true, components: [{ type:
|
|
6049
|
+
`, isInline: true, components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4$1.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }], directives: [{ type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
5994
6050
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheColorToolbarItemComponent, decorators: [{
|
|
5995
6051
|
type: Component,
|
|
5996
6052
|
args: [{
|
|
@@ -6092,15 +6148,9 @@ const withRemoveVoid = (editor) => {
|
|
|
6092
6148
|
};
|
|
6093
6149
|
|
|
6094
6150
|
const CodeEditor = {
|
|
6095
|
-
|
|
6096
|
-
const at = AngularEditor.findPath(editor, element);
|
|
6097
|
-
Transforms.setNodes(editor, { language }, {
|
|
6098
|
-
at
|
|
6099
|
-
});
|
|
6100
|
-
},
|
|
6101
|
-
setCodeContent(editor, content, element) {
|
|
6151
|
+
setCodeAttribute(editor, element, value) {
|
|
6102
6152
|
const at = AngularEditor.findPath(editor, element);
|
|
6103
|
-
Transforms.setNodes(editor,
|
|
6153
|
+
Transforms.setNodes(editor, value, {
|
|
6104
6154
|
at
|
|
6105
6155
|
});
|
|
6106
6156
|
},
|
|
@@ -6170,6 +6220,7 @@ class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
|
|
|
6170
6220
|
this.overlay = overlay;
|
|
6171
6221
|
this.mode = DropdownMode.text;
|
|
6172
6222
|
this.dropdownMode = DropdownMode;
|
|
6223
|
+
this.disabled = false;
|
|
6173
6224
|
}
|
|
6174
6225
|
set item(i) {
|
|
6175
6226
|
this._item = i;
|
|
@@ -6184,7 +6235,7 @@ class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
|
|
|
6184
6235
|
toggleDropdown(event) {
|
|
6185
6236
|
var _a;
|
|
6186
6237
|
super.execute(event);
|
|
6187
|
-
if ((_a = this.editor) === null || _a === void 0 ? void 0 : _a.disabled) {
|
|
6238
|
+
if (((_a = this.editor) === null || _a === void 0 ? void 0 : _a.disabled) || this.disabled) {
|
|
6188
6239
|
return;
|
|
6189
6240
|
}
|
|
6190
6241
|
this.openDropdownPopover();
|
|
@@ -6194,6 +6245,9 @@ class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
|
|
|
6194
6245
|
this.closeDropdownPopover();
|
|
6195
6246
|
}
|
|
6196
6247
|
}
|
|
6248
|
+
get disabledState() {
|
|
6249
|
+
return this.disabled;
|
|
6250
|
+
}
|
|
6197
6251
|
ngOnInit() {
|
|
6198
6252
|
var _a;
|
|
6199
6253
|
if (!this.template) {
|
|
@@ -6207,12 +6261,14 @@ class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
|
|
|
6207
6261
|
}
|
|
6208
6262
|
}
|
|
6209
6263
|
statusChange(editor) {
|
|
6264
|
+
var _a, _b;
|
|
6265
|
+
this.disabled = ((_a = this.toolbarItem) === null || _a === void 0 ? void 0 : _a.disable) ? (_b = this.toolbarItem) === null || _b === void 0 ? void 0 : _b.disable(editor) : false;
|
|
6210
6266
|
const activeItem = this.menus.find(i => {
|
|
6211
6267
|
if (i === null || i === void 0 ? void 0 : i.active) {
|
|
6212
6268
|
return i === null || i === void 0 ? void 0 : i.active(editor);
|
|
6213
6269
|
}
|
|
6214
6270
|
});
|
|
6215
|
-
this.activeMenu = activeItem ? activeItem : this.
|
|
6271
|
+
this.activeMenu = activeItem ? activeItem : this.item;
|
|
6216
6272
|
}
|
|
6217
6273
|
itemMousedown(event, item) {
|
|
6218
6274
|
super.execute(event);
|
|
@@ -6265,8 +6321,8 @@ class TheToolbarDropdownComponent extends TheToolbarBaseItemComponent {
|
|
|
6265
6321
|
.withPositions([bottomPosition, topPosition]);
|
|
6266
6322
|
}
|
|
6267
6323
|
}
|
|
6268
|
-
TheToolbarDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarDropdownComponent, deps: [{ token: i0.ElementRef }, { token: i1$3.ThyPopover }, { token: i0.ViewContainerRef }, { token: i2
|
|
6269
|
-
TheToolbarDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheToolbarDropdownComponent, selector: "the-toolbar-dropdown", inputs: { toolbarItem: "toolbarItem", menus: "menus", mode: "mode", item: "item", itemMousedownHandle: "itemMousedownHandle" }, host: { listeners: { "mousedown": "toggleDropdown($event)", "document: mousedown": "handleDocumentMouseDown($event)" }, classAttribute: "the-toolbar-dropdown-container" }, viewQueries: [{ propertyName: "iconModeTemplate", first: true, predicate: ["iconModeTemplate"], descendants: true, static: true }, { propertyName: "textModeTemplate", first: true, predicate: ["textModeTemplate"], descendants: true, static: true }, { propertyName: "dropdownTemplate", first: true, predicate: ["dropdownTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"template\"></ng-template>\n\n<ng-template #iconModeTemplate>\n <a thyIconNavLink class=\"icon-mode link-with-down\" [thyTooltip]=\"activeMenu?.name\" thyTooltipPlacement=\"top\">\n <thy-icon [thyIconName]=\"activeMenu?.icon\"></thy-icon>\n <thy-icon class=\"caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #textModeTemplate>\n <a thyIconNavLink class=\"text-mode\" [thyTooltip]=\"activeMenu?.name\" thyTooltipPlacement=\"top\">\n <span class=\"show-text\">{{ activeMenu?.name }}</span>\n <thy-icon class=\"text-caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #dropdownTemplate>\n <thy-action-menu class=\"dropdown\">\n <ng-container *ngFor=\"let menu of menus\">\n <a\n *ngIf=\"menu.key !== 'split'\"\n thyActionMenuItem\n href=\"javascript:;\"\n [thyActionMenuItemActive]=\"menu.key === activeMenu.key\"\n (mousedown)=\"itemMousedown($event, menu)\"\n [ngStyle]=\"menu?.styles\"\n >\n <span *ngIf=\"menu.icon && mode === dropdownMode.icon\" thyActionMenuItemIcon>\n <thy-icon [thyIconName]=\"menu.icon\"></thy-icon>\n </span>\n <span *ngIf=\"menu.name\" thyActionMenuItemName>{{ menu.name }}</span>\n </a>\n <thy-action-menu-divider *ngIf=\"menu.key === 'split'\"></thy-action-menu-divider>\n </ng-container>\n </thy-action-menu>\n</ng-template>\n", components: [{ type:
|
|
6324
|
+
TheToolbarDropdownComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarDropdownComponent, deps: [{ token: i0.ElementRef }, { token: i1$3.ThyPopover }, { token: i0.ViewContainerRef }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component });
|
|
6325
|
+
TheToolbarDropdownComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheToolbarDropdownComponent, selector: "the-toolbar-dropdown", inputs: { toolbarItem: "toolbarItem", menus: "menus", mode: "mode", item: "item", itemMousedownHandle: "itemMousedownHandle" }, host: { listeners: { "mousedown": "toggleDropdown($event)", "document: mousedown": "handleDocumentMouseDown($event)" }, properties: { "class.disabled": "this.disabledState" }, classAttribute: "the-toolbar-dropdown-container" }, viewQueries: [{ propertyName: "iconModeTemplate", first: true, predicate: ["iconModeTemplate"], descendants: true, static: true }, { propertyName: "textModeTemplate", first: true, predicate: ["textModeTemplate"], descendants: true, static: true }, { propertyName: "dropdownTemplate", first: true, predicate: ["dropdownTemplate"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-template [ngTemplateOutlet]=\"template\"></ng-template>\n\n<ng-template #iconModeTemplate>\n <a thyIconNavLink class=\"icon-mode link-with-down\" [thyTooltip]=\"activeMenu?.name\" thyTooltipPlacement=\"top\">\n <thy-icon [thyIconName]=\"activeMenu?.icon\"></thy-icon>\n <thy-icon class=\"caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #textModeTemplate>\n <a thyIconNavLink class=\"text-mode\" [thyTooltip]=\"activeMenu?.name\" thyTooltipPlacement=\"top\">\n <span class=\"show-text\">{{ activeMenu?.name }}</span>\n <thy-icon class=\"text-caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n</ng-template>\n\n<ng-template #dropdownTemplate>\n <thy-action-menu class=\"dropdown\">\n <ng-container *ngFor=\"let menu of menus\">\n <a\n *ngIf=\"menu.key !== 'split'\"\n thyActionMenuItem\n href=\"javascript:;\"\n [thyActionMenuItemActive]=\"menu.key === activeMenu.key\"\n (mousedown)=\"itemMousedown($event, menu)\"\n [ngStyle]=\"menu?.styles\"\n >\n <span *ngIf=\"menu.icon && mode === dropdownMode.icon\" thyActionMenuItemIcon>\n <thy-icon [thyIconName]=\"menu.icon\"></thy-icon>\n </span>\n <span *ngIf=\"menu.name\" thyActionMenuItemName>{{ menu.name }}</span>\n </a>\n <thy-action-menu-divider *ngIf=\"menu.key === 'split'\"></thy-action-menu-divider>\n </ng-container>\n </thy-action-menu>\n</ng-template>\n", components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4$1.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { type: i5$2.ThyActionMenuComponent, selector: "thy-action-menu", inputs: ["thyTheme", "thyWidth"] }, { type: i5$2.ThyActionMenuDividerComponent, selector: "thy-action-menu-divider", inputs: ["thyTitle", "thyType"] }], directives: [{ type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5$2.ThyActionMenuItemDirective, selector: "[thyActionMenuItem]", inputs: ["thyDisabled", "thyType"] }, { type: i5$2.ThyActionMenuItemActiveDirective, selector: "[thyActionMenuItemActive]", inputs: ["thyActionMenuItemActive"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5$2.ThyActionMenuItemIconDirective, selector: "[thyActionMenuItemIcon]" }, { type: i5$2.ThyActionMenuItemNameDirective, selector: "[thyActionMenuItemName]" }] });
|
|
6270
6326
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarDropdownComponent, decorators: [{
|
|
6271
6327
|
type: Component,
|
|
6272
6328
|
args: [{
|
|
@@ -6276,7 +6332,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
6276
6332
|
class: 'the-toolbar-dropdown-container'
|
|
6277
6333
|
}
|
|
6278
6334
|
}]
|
|
6279
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1$3.ThyPopover }, { type: i0.ViewContainerRef }, { type: i2
|
|
6335
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1$3.ThyPopover }, { type: i0.ViewContainerRef }, { type: i2.Overlay }]; }, propDecorators: { toolbarItem: [{
|
|
6280
6336
|
type: Input
|
|
6281
6337
|
}], menus: [{
|
|
6282
6338
|
type: Input
|
|
@@ -6301,23 +6357,63 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
6301
6357
|
}], handleDocumentMouseDown: [{
|
|
6302
6358
|
type: HostListener,
|
|
6303
6359
|
args: ['document: mousedown', ['$event']]
|
|
6360
|
+
}], disabledState: [{
|
|
6361
|
+
type: HostBinding,
|
|
6362
|
+
args: ['class.disabled']
|
|
6363
|
+
}] } });
|
|
6364
|
+
|
|
6365
|
+
class NavSplitLineComponent {
|
|
6366
|
+
constructor() {
|
|
6367
|
+
this.mode = ToolbarItemMode.vertical;
|
|
6368
|
+
this.theNavSplitLine = true;
|
|
6369
|
+
}
|
|
6370
|
+
get horizontal() {
|
|
6371
|
+
return this.mode === ToolbarItemMode.horizontal;
|
|
6372
|
+
}
|
|
6373
|
+
get vertical() {
|
|
6374
|
+
return this.mode === ToolbarItemMode.vertical;
|
|
6375
|
+
}
|
|
6376
|
+
ngOnInit() { }
|
|
6377
|
+
}
|
|
6378
|
+
NavSplitLineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: NavSplitLineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6379
|
+
NavSplitLineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: NavSplitLineComponent, selector: "nav-split-line", inputs: { mode: "mode" }, host: { properties: { "class.the-nav-split-line": "this.theNavSplitLine", "class.horizontal": "this.horizontal", "class.vertical": "this.vertical" } }, ngImport: i0, template: '', isInline: true });
|
|
6380
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: NavSplitLineComponent, decorators: [{
|
|
6381
|
+
type: Component,
|
|
6382
|
+
args: [{
|
|
6383
|
+
selector: 'nav-split-line',
|
|
6384
|
+
template: ''
|
|
6385
|
+
}]
|
|
6386
|
+
}], ctorParameters: function () { return []; }, propDecorators: { mode: [{
|
|
6387
|
+
type: Input
|
|
6388
|
+
}], theNavSplitLine: [{
|
|
6389
|
+
type: HostBinding,
|
|
6390
|
+
args: ['class.the-nav-split-line']
|
|
6391
|
+
}], horizontal: [{
|
|
6392
|
+
type: HostBinding,
|
|
6393
|
+
args: ['class.horizontal']
|
|
6394
|
+
}], vertical: [{
|
|
6395
|
+
type: HostBinding,
|
|
6396
|
+
args: ['class.vertical']
|
|
6304
6397
|
}] } });
|
|
6305
6398
|
|
|
6306
6399
|
class TheCodeComponent extends TheBaseElementComponent {
|
|
6307
|
-
constructor(elementRef, cdr, thyNotifyService, ngZone, config) {
|
|
6400
|
+
constructor(elementRef, cdr, thyNotifyService, contextService, ngZone, config) {
|
|
6308
6401
|
super(elementRef, cdr);
|
|
6309
6402
|
this.elementRef = elementRef;
|
|
6310
6403
|
this.cdr = cdr;
|
|
6311
6404
|
this.thyNotifyService = thyNotifyService;
|
|
6405
|
+
this.contextService = contextService;
|
|
6312
6406
|
this.ngZone = ngZone;
|
|
6313
6407
|
this.config = config;
|
|
6314
6408
|
this.startRenderCodemirror = false;
|
|
6315
6409
|
this.dropdownMode = DropdownMode;
|
|
6316
6410
|
this.maxHeight = this.config.mode === CodeMode.default ? 350 - CODEMIRROR_PADDING_TOP * 2 : 0;
|
|
6317
|
-
this.codeMirrorFocused = false;
|
|
6318
6411
|
this.menus = CODE_MODES.map(item => {
|
|
6319
6412
|
return { key: item.value, name: item.showName };
|
|
6320
6413
|
});
|
|
6414
|
+
this.ToolbarItemMode = ToolbarItemMode;
|
|
6415
|
+
this.isFocusCode = false;
|
|
6416
|
+
this.resizeHeight = null;
|
|
6321
6417
|
this.options = {
|
|
6322
6418
|
mode: this.menus[0].key,
|
|
6323
6419
|
lineNumbers: false,
|
|
@@ -6328,10 +6424,11 @@ class TheCodeComponent extends TheBaseElementComponent {
|
|
|
6328
6424
|
cursorBlinkRate: 500
|
|
6329
6425
|
};
|
|
6330
6426
|
this.actives = this.menus[0];
|
|
6427
|
+
this.resizeBounds = null;
|
|
6331
6428
|
this.onChangeLangulage = item => {
|
|
6332
6429
|
this.options = Object.assign(Object.assign({}, this.options), { mode: item.key });
|
|
6333
6430
|
this.actives = item;
|
|
6334
|
-
CodeEditor.
|
|
6431
|
+
CodeEditor.setCodeAttribute(this.editor, this.element, { language: item.key });
|
|
6335
6432
|
};
|
|
6336
6433
|
}
|
|
6337
6434
|
get code() {
|
|
@@ -6346,8 +6443,14 @@ class TheCodeComponent extends TheBaseElementComponent {
|
|
|
6346
6443
|
if (this.options.mode !== this.element.language) {
|
|
6347
6444
|
this.useMode();
|
|
6348
6445
|
}
|
|
6349
|
-
if (
|
|
6350
|
-
this.
|
|
6446
|
+
if (this.options.lineWrapping !== this.element.autoWrap) {
|
|
6447
|
+
this.useAutoWrap();
|
|
6448
|
+
}
|
|
6449
|
+
if (this.resizeHeight !== this.element.height) {
|
|
6450
|
+
this.useHeight();
|
|
6451
|
+
}
|
|
6452
|
+
if (!this.isCollapsed) {
|
|
6453
|
+
this.isFocusCode = false;
|
|
6351
6454
|
}
|
|
6352
6455
|
}
|
|
6353
6456
|
}
|
|
@@ -6368,6 +6471,9 @@ class TheCodeComponent extends TheBaseElementComponent {
|
|
|
6368
6471
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => {
|
|
6369
6472
|
this.renderCodemirror();
|
|
6370
6473
|
this.initializeCodemirrorFocus();
|
|
6474
|
+
this.resizeBounds = {
|
|
6475
|
+
nativeElement: this.contextService.getEditableElement()
|
|
6476
|
+
};
|
|
6371
6477
|
});
|
|
6372
6478
|
}
|
|
6373
6479
|
}
|
|
@@ -6375,6 +6481,8 @@ class TheCodeComponent extends TheBaseElementComponent {
|
|
|
6375
6481
|
this.startRenderCodemirror = true;
|
|
6376
6482
|
this.useReadonly();
|
|
6377
6483
|
this.useMode();
|
|
6484
|
+
this.useAutoWrap();
|
|
6485
|
+
this.useHeight();
|
|
6378
6486
|
this.cdr.detectChanges();
|
|
6379
6487
|
}
|
|
6380
6488
|
initializeCodemirrorFocus() {
|
|
@@ -6389,13 +6497,11 @@ class TheCodeComponent extends TheBaseElementComponent {
|
|
|
6389
6497
|
}
|
|
6390
6498
|
}
|
|
6391
6499
|
codeChange($event) {
|
|
6392
|
-
CodeEditor.
|
|
6393
|
-
}
|
|
6394
|
-
focusChange(codeMirrorFocused) {
|
|
6395
|
-
this.codeMirrorFocused = codeMirrorFocused;
|
|
6500
|
+
CodeEditor.setCodeAttribute(this.editor, this.element, { content: $event });
|
|
6396
6501
|
}
|
|
6397
6502
|
onDelete(event) {
|
|
6398
6503
|
event.preventDefault();
|
|
6504
|
+
this.isFocusCode = false;
|
|
6399
6505
|
deleteElement(this.editor, this.element);
|
|
6400
6506
|
}
|
|
6401
6507
|
onCopy(event) {
|
|
@@ -6406,27 +6512,47 @@ class TheCodeComponent extends TheBaseElementComponent {
|
|
|
6406
6512
|
if (selection.rangeCount > 0) {
|
|
6407
6513
|
selection.removeAllRanges();
|
|
6408
6514
|
}
|
|
6409
|
-
|
|
6410
|
-
|
|
6411
|
-
|
|
6412
|
-
|
|
6413
|
-
|
|
6414
|
-
|
|
6415
|
-
|
|
6416
|
-
|
|
6417
|
-
this.
|
|
6418
|
-
}, 200);
|
|
6515
|
+
AngularEditor.focus(this.editor);
|
|
6516
|
+
Transforms.select(this.editor, AngularEditor.findPath(this.editor, this.element));
|
|
6517
|
+
document.execCommand('copy');
|
|
6518
|
+
this.thyNotifyService.success('复制成功');
|
|
6519
|
+
AngularEditor.deselect(this.editor);
|
|
6520
|
+
}
|
|
6521
|
+
focusChange(codeMirrorFocused) {
|
|
6522
|
+
if (codeMirrorFocused)
|
|
6523
|
+
this.isFocusCode = codeMirrorFocused;
|
|
6419
6524
|
}
|
|
6420
6525
|
useMode() {
|
|
6421
6526
|
this.options = Object.assign(Object.assign({}, this.options), { mode: this.element.language });
|
|
6422
6527
|
this.actives = this.menus.find(i => i.key === this.element.language);
|
|
6423
6528
|
}
|
|
6529
|
+
useAutoWrap() {
|
|
6530
|
+
this.options = Object.assign(Object.assign({}, this.options), { lineWrapping: this.element.autoWrap || false });
|
|
6531
|
+
}
|
|
6532
|
+
useHeight() {
|
|
6533
|
+
if (this.element.height) {
|
|
6534
|
+
this.resizeHeight = this.element.height;
|
|
6535
|
+
this.maxHeight = this.element.height;
|
|
6536
|
+
}
|
|
6537
|
+
}
|
|
6424
6538
|
useReadonly() {
|
|
6425
6539
|
this.options = Object.assign(Object.assign({}, this.options), { readOnly: this.readonly, cursorBlinkRate: this.readonly ? -1 : 500 });
|
|
6426
6540
|
}
|
|
6541
|
+
onResize({ height }) {
|
|
6542
|
+
this.resizeHeight = height;
|
|
6543
|
+
this.maxHeight = height;
|
|
6544
|
+
}
|
|
6545
|
+
onEndResize() {
|
|
6546
|
+
Transforms.select(this.editor, AngularEditor.findPath(this.editor, this.element));
|
|
6547
|
+
CodeEditor.setCodeAttribute(this.editor, this.element, { height: this.resizeHeight });
|
|
6548
|
+
}
|
|
6549
|
+
onChangeWrap(value) {
|
|
6550
|
+
this.options = Object.assign(Object.assign({}, this.options), { lineWrapping: value || false });
|
|
6551
|
+
CodeEditor.setCodeAttribute(this.editor, this.element, { autoWrap: value ? value : null });
|
|
6552
|
+
}
|
|
6427
6553
|
}
|
|
6428
|
-
TheCodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheCodeComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$4.ThyNotifyService }, { token: i0.NgZone }, { token: THE_CODE_MODE_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
|
|
6429
|
-
TheCodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheCodeComponent, selector: "div[theCode]", viewQueries: [{ propertyName: "codemirror", first: true, predicate: ["codemirror"], descendants: true, read: CodeMirrorComponent }], usesInheritance: true, ngImport: i0, template: "<div contenteditable=\"false\" class=\"the-block-operation\" *ngIf=\"
|
|
6554
|
+
TheCodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheCodeComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$4.ThyNotifyService }, { token: TheContextService }, { token: i0.NgZone }, { token: THE_CODE_MODE_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
|
|
6555
|
+
TheCodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheCodeComponent, selector: "div[theCode]", viewQueries: [{ propertyName: "codemirror", first: true, predicate: ["codemirror"], descendants: true, read: CodeMirrorComponent }], usesInheritance: true, ngImport: i0, template: "<div contenteditable=\"false\" class=\"the-code-block-operation\" *ngIf=\"isFocusCode && !options.readOnly\">\n <thy-icon-nav>\n <the-toolbar-dropdown [menus]=\"menus\" [item]=\"actives\" [itemMousedownHandle]=\"onChangeLangulage\"> </the-toolbar-dropdown>\n <a\n href=\"javascript:;\"\n thyIconNavLink\n thyIconNavLinkIcon=\"copy\"\n thyTooltip=\"\u590D\u5236\"\n thyTooltipPlacement=\"top\"\n (mousedown)=\"onCopy($event)\"\n ></a>\n <a\n href=\"javascript:;\"\n thyIconNavLink\n thyIconNavLinkIcon=\"trash\"\n thyTooltip=\"\u5220\u9664\"\n class=\"remove-link\"\n thyTooltipPlacement=\"top\"\n (mousedown)=\"onDelete($event)\"\n ></a>\n <nav-split-line [mode]=\"ToolbarItemMode.vertical\"></nav-split-line>\n <span class=\"auto-wrap d-flex align-items-center\">\n <span>\u81EA\u52A8\u6362\u884C</span>\n <thy-switch\n class=\"auto-wrap-btn d-flex\"\n [(ngModel)]=\"options.lineWrapping\"\n (ngModelChange)=\"onChangeWrap($event)\"\n thySize=\"sm\"\n ></thy-switch>\n </span>\n </thy-icon-nav>\n</div>\n\n<slate-children [children]=\"children\" [context]=\"childrenContext\" [viewContext]=\"viewContext\"></slate-children>\n<div\n thyResizable\n [thyMinHeight]=\"44\"\n [thyBounds]=\"resizeBounds\"\n [style.height.px]=\"resizeHeight\"\n (thyResize)=\"onResize($event)\"\n (thyResizeEnd)=\"onEndResize()\"\n class=\"resize-code-container\"\n>\n <ng-codemirror\n *ngIf=\"startRenderCodemirror\"\n #codemirror\n contenteditable=\"false\"\n class=\"ng-codemirror-wrapper\"\n [ngStyle]=\"{ maxHeight: maxHeight > 0 ? maxHeight + 'px' : 'auto' }\"\n [options]=\"options\"\n [ngModel]=\"code\"\n [delayRefreshTime]=\"300\"\n (ngModelChange)=\"codeChange($event)\"\n (focusChange)=\"focusChange($event)\"\n [autoMaxHeight]=\"maxHeight\"\n >\n </ng-codemirror>\n <thy-resize-handle thyDirection=\"bottom\" class=\"code-resize-icon\" *ngIf=\"isFocusCode && !options.readOnly\"></thy-resize-handle>\n</div>\n", components: [{ type: i3.ThyIconNavComponent, selector: "thy-icon-nav", inputs: ["thyType"] }, { type: TheToolbarDropdownComponent, selector: "the-toolbar-dropdown", inputs: ["toolbarItem", "menus", "mode", "item", "itemMousedownHandle"] }, { type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: NavSplitLineComponent, selector: "nav-split-line", inputs: ["mode"] }, { type: i6$1.ThySwitchComponent, selector: "thy-switch", inputs: ["thyType", "thySize", "thyDisabled"], outputs: ["thyChange"] }, { type: i1.SlateChildrenComponent, selector: "slate-children", inputs: ["children", "context", "viewContext"] }, { type: i8.CodeMirrorComponent, selector: "ng-codemirror, [ngCodeMirror]", inputs: ["autoMaxHeight", "delayRefreshTime", "options"], outputs: ["focusChange"] }, { type: i9.ThyResizeHandleComponent, selector: "thy-resize-handle, [thy-resize-handle]", inputs: ["thyDirection"], outputs: ["thyMouseDown"], exportAs: ["thyResizeHandle"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { type: i4$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i9.ThyResizableDirective, selector: "[thyResizable]", inputs: ["thyBounds", "thyMaxHeight", "thyMaxWidth", "thyMinHeight", "thyMinWidth", "thyGridColumnCount", "thyMaxColumn", "thyMinColumn", "thyLockAspectRatio", "thyPreview", "thyDisabled"], outputs: ["thyResize", "thyResizeEnd", "thyResizeStart"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6430
6556
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheCodeComponent, decorators: [{
|
|
6431
6557
|
type: Component,
|
|
6432
6558
|
args: [{
|
|
@@ -6434,7 +6560,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
6434
6560
|
templateUrl: './code.component.html',
|
|
6435
6561
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
6436
6562
|
}]
|
|
6437
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$4.ThyNotifyService }, { type: i0.NgZone }, { type:
|
|
6563
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$4.ThyNotifyService }, { type: TheContextService }, { type: i0.NgZone }, { type: TheCodeConfig, decorators: [{
|
|
6438
6564
|
type: Inject,
|
|
6439
6565
|
args: [THE_CODE_MODE_TOKEN]
|
|
6440
6566
|
}] }]; }, propDecorators: { codemirror: [{
|
|
@@ -6650,7 +6776,7 @@ class TheLinkEditComponent {
|
|
|
6650
6776
|
}
|
|
6651
6777
|
}
|
|
6652
6778
|
TheLinkEditComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheLinkEditComponent, deps: [{ token: i1$3.ThyPopoverRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
6653
|
-
TheLinkEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheLinkEditComponent, selector: "the-link-edit", inputs: { tag: "tag", node: "node", link: "link", text: "text", originSelection: "originSelection" }, host: { listeners: { "document: mousedown": "handleDocumentMouseDown($event)" }, properties: { "class": "this.className" } }, ngImport: i0, template: "<form\n thyForm\n #linkForm=\"thyForm\"\n [thyFormValidatorConfig]=\"validatorConfig\"\n name=\"linkForm\"\n>\n <thy-form-group thyLabelText=\"\u6587\u672C\">\n <input\n thyInput\n placeholder=\"\u8BF7\u8F93\u5165\u6587\u672C\"\n required\n name=\"text\"\n [(ngModel)]=\"text\"\n thyAutofocus\n type=\"text\"\n />\n </thy-form-group>\n <thy-form-group thyLabelText=\"\u94FE\u63A5\">\n <input\n name=\"link\"\n thyInput\n placeholder=\"\u8BF7\u8F93\u5165\u94FE\u63A5\"\n required\n type=\"text\"\n #linkControl=\"ngModel\"\n [(ngModel)]=\"link\"\n />\n </thy-form-group>\n <thy-form-group-footer>\n <div class=\"btn-pair\">\n <button\n thyButton=\"link-secondary\"\n thySize=\"sm\"\n (click)=\"closePopover()\"\n >\u53D6\u6D88</button>\n <button\n thyButton=\"primary-square\"\n thySize=\"sm\"\n (thyFormSubmit)=\"applyLink(linkForm)\"\n >\u5E94\u7528</button>\n </div>\n </thy-form-group-footer>\n</form>\n", components: [{ type: i2$
|
|
6779
|
+
TheLinkEditComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheLinkEditComponent, selector: "the-link-edit", inputs: { tag: "tag", node: "node", link: "link", text: "text", originSelection: "originSelection" }, host: { listeners: { "document: mousedown": "handleDocumentMouseDown($event)" }, properties: { "class": "this.className" } }, ngImport: i0, template: "<form\n thyForm\n #linkForm=\"thyForm\"\n [thyFormValidatorConfig]=\"validatorConfig\"\n name=\"linkForm\"\n>\n <thy-form-group thyLabelText=\"\u6587\u672C\">\n <input\n thyInput\n placeholder=\"\u8BF7\u8F93\u5165\u6587\u672C\"\n required\n name=\"text\"\n [(ngModel)]=\"text\"\n thyAutofocus\n type=\"text\"\n />\n </thy-form-group>\n <thy-form-group thyLabelText=\"\u94FE\u63A5\">\n <input\n name=\"link\"\n thyInput\n placeholder=\"\u8BF7\u8F93\u5165\u94FE\u63A5\"\n required\n type=\"text\"\n #linkControl=\"ngModel\"\n [(ngModel)]=\"link\"\n />\n </thy-form-group>\n <thy-form-group-footer>\n <div class=\"btn-pair\">\n <button\n thyButton=\"link-secondary\"\n thySize=\"sm\"\n (click)=\"closePopover()\"\n >\u53D6\u6D88</button>\n <button\n thyButton=\"primary-square\"\n thySize=\"sm\"\n (thyFormSubmit)=\"applyLink(linkForm)\"\n >\u5E94\u7528</button>\n </div>\n </thy-form-group-footer>\n</form>\n", components: [{ type: i2$1.ThyFormGroupComponent, selector: "thy-form-group", inputs: ["thyLabelText", "thyLabelTextTranslateKey", "thyLabelRequired", "thyLabelPaddingTopClear", "thyFeedbackIcon", "thyTips", "thyTipsTranslateKey", "thyRowFill"] }, { type: i2$1.ThyFormGroupFooterComponent, selector: "thy-form-group-footer", inputs: ["thyAlign"] }, { type: i1$5.ThyButtonComponent, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thySquare", "thyBlock"] }], directives: [{ type: i4$2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i4$2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i4$2.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$1.ThyFormDirective, selector: "[thyForm],[thy-form]", inputs: ["thyLayout", "thyEnterKeyMode", "thyFormValidatorConfig"], exportAs: ["thyForm"] }, { type: i5$3.ThyAutofocusDirective, selector: "input[thyAutofocus],textarea[thyAutofocus]", inputs: ["thyAutoSelect", "thyAutofocus"] }, { type: i4$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.ThyInputDirective, selector: "[thyInput]", inputs: ["thySize", "thyAutocomplete"] }, { type: i4$2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i4$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i2$1.ThyFormSubmitDirective, selector: "[thyFormSubmit],[thy-form-submit]", outputs: ["thyFormSubmit"] }] });
|
|
6654
6780
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheLinkEditComponent, decorators: [{
|
|
6655
6781
|
type: Component,
|
|
6656
6782
|
args: [{
|
|
@@ -6790,7 +6916,7 @@ class TheBaseLinkComponent extends TheBaseElementComponent {
|
|
|
6790
6916
|
this.close(LinkCloseTypes.destroy);
|
|
6791
6917
|
}
|
|
6792
6918
|
}
|
|
6793
|
-
TheBaseLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheBaseLinkComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$3.ThyPopover }, { token: i2
|
|
6919
|
+
TheBaseLinkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheBaseLinkComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1$3.ThyPopover }, { token: i2.Overlay }, { token: i0.ViewContainerRef }, { token: i1$6.ThyClickDispatcher }], target: i0.ɵɵFactoryTarget.Component });
|
|
6794
6920
|
TheBaseLinkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheBaseLinkComponent, selector: "[TheBaseLinkComponent]", host: { listeners: { "click": "mousedownHandle($event)" } }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
6795
6921
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheBaseLinkComponent, decorators: [{
|
|
6796
6922
|
type: Component,
|
|
@@ -6798,7 +6924,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
6798
6924
|
selector: '[TheBaseLinkComponent]',
|
|
6799
6925
|
template: ''
|
|
6800
6926
|
}]
|
|
6801
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$3.ThyPopover }, { type: i2
|
|
6927
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1$3.ThyPopover }, { type: i2.Overlay }, { type: i0.ViewContainerRef }, { type: i1$6.ThyClickDispatcher }]; }, propDecorators: { mousedownHandle: [{
|
|
6802
6928
|
type: HostListener,
|
|
6803
6929
|
args: ['click', ['$event']]
|
|
6804
6930
|
}] } });
|
|
@@ -6971,7 +7097,7 @@ class TheTableToolbarItemComponent extends TheToolbarBaseItemComponent {
|
|
|
6971
7097
|
return this.tableSelectRef;
|
|
6972
7098
|
}
|
|
6973
7099
|
}
|
|
6974
|
-
TheTableToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheTableToolbarItemComponent, deps: [{ token: i1$6.ThyPopover }, { token: i2
|
|
7100
|
+
TheTableToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheTableToolbarItemComponent, deps: [{ token: i1$6.ThyPopover }, { token: i2.Overlay }], target: i0.ɵɵFactoryTarget.Component });
|
|
6975
7101
|
TheTableToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheTableToolbarItemComponent, selector: "the-table-toolbar-item", inputs: { item: "item", editor: "editor" }, host: { classAttribute: "the-toolbar-dropdown-container" }, usesInheritance: true, ngImport: i0, template: `
|
|
6976
7102
|
<a
|
|
6977
7103
|
thyIconNavLink
|
|
@@ -6984,7 +7110,7 @@ TheTableToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
|
|
|
6984
7110
|
<thy-icon [thyIconName]="item.icon"></thy-icon>
|
|
6985
7111
|
<thy-icon class="link-down-icon font-size-sm text-desc table-down-icon" thyIconName="caret-down"> </thy-icon>
|
|
6986
7112
|
</a>
|
|
6987
|
-
`, isInline: true, components: [{ type:
|
|
7113
|
+
`, isInline: true, components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4$1.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }], directives: [{ type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }] });
|
|
6988
7114
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheTableToolbarItemComponent, decorators: [{
|
|
6989
7115
|
type: Component,
|
|
6990
7116
|
args: [{
|
|
@@ -7006,7 +7132,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
7006
7132
|
class: 'the-toolbar-dropdown-container'
|
|
7007
7133
|
}
|
|
7008
7134
|
}]
|
|
7009
|
-
}], ctorParameters: function () { return [{ type: i1$6.ThyPopover }, { type: i2
|
|
7135
|
+
}], ctorParameters: function () { return [{ type: i1$6.ThyPopover }, { type: i2.Overlay }]; }, propDecorators: { item: [{
|
|
7010
7136
|
type: Input
|
|
7011
7137
|
}], editor: [{
|
|
7012
7138
|
type: Input
|
|
@@ -7695,40 +7821,6 @@ function setCellMenuInvisibility(editor, menuList, selectedCells, isActiveSelect
|
|
|
7695
7821
|
});
|
|
7696
7822
|
}
|
|
7697
7823
|
|
|
7698
|
-
class NavSplitLineComponent {
|
|
7699
|
-
constructor() {
|
|
7700
|
-
this.mode = ToolbarItemMode.vertical;
|
|
7701
|
-
this.theNavSplitLine = true;
|
|
7702
|
-
}
|
|
7703
|
-
get horizontal() {
|
|
7704
|
-
return this.mode === ToolbarItemMode.horizontal;
|
|
7705
|
-
}
|
|
7706
|
-
get vertical() {
|
|
7707
|
-
return this.mode === ToolbarItemMode.vertical;
|
|
7708
|
-
}
|
|
7709
|
-
ngOnInit() { }
|
|
7710
|
-
}
|
|
7711
|
-
NavSplitLineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: NavSplitLineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7712
|
-
NavSplitLineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: NavSplitLineComponent, selector: "nav-split-line", inputs: { mode: "mode" }, host: { properties: { "class.the-nav-split-line": "this.theNavSplitLine", "class.horizontal": "this.horizontal", "class.vertical": "this.vertical" } }, ngImport: i0, template: '', isInline: true });
|
|
7713
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: NavSplitLineComponent, decorators: [{
|
|
7714
|
-
type: Component,
|
|
7715
|
-
args: [{
|
|
7716
|
-
selector: 'nav-split-line',
|
|
7717
|
-
template: ''
|
|
7718
|
-
}]
|
|
7719
|
-
}], ctorParameters: function () { return []; }, propDecorators: { mode: [{
|
|
7720
|
-
type: Input
|
|
7721
|
-
}], theNavSplitLine: [{
|
|
7722
|
-
type: HostBinding,
|
|
7723
|
-
args: ['class.the-nav-split-line']
|
|
7724
|
-
}], horizontal: [{
|
|
7725
|
-
type: HostBinding,
|
|
7726
|
-
args: ['class.horizontal']
|
|
7727
|
-
}], vertical: [{
|
|
7728
|
-
type: HostBinding,
|
|
7729
|
-
args: ['class.vertical']
|
|
7730
|
-
}] } });
|
|
7731
|
-
|
|
7732
7824
|
class TheTableToolbarComponent {
|
|
7733
7825
|
constructor(ngZone, colorSelectService, popoverRef) {
|
|
7734
7826
|
this.ngZone = ngZone;
|
|
@@ -7839,7 +7931,7 @@ class TheTableToolbarComponent {
|
|
|
7839
7931
|
}
|
|
7840
7932
|
}
|
|
7841
7933
|
TheTableToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheTableToolbarComponent, deps: [{ token: i0.NgZone }, { token: TheColorSelectService }, { token: i1$3.ThyPopoverRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7842
|
-
TheTableToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheTableToolbarComponent, selector: "the-table-toolbar", inputs: { tableStore: "tableStore", isActiveSelect: "isActiveSelect" }, ngImport: i0, template: "<thy-icon-nav>\n <ng-container *ngFor=\"let item of cellMenuList\">\n <a href=\"javascript:;\" thyIconNavLink *ngIf=\"!item.invisibility\" [thyTooltip]=\"item.name\" (mousedown)=\"item.actionHandle()\">\n <thy-icon [thyIconName]=\"item.icon\"></thy-icon>\n </a>\n </ng-container>\n <nav-split-line *ngIf=\"!isActiveSelect && isShowSplitLine\"></nav-split-line>\n <a href=\"javascript:;\" thyIconNavLink thyTooltip=\"\u5355\u5143\u683C\u80CC\u666F\" (mousedown)=\"openSelectColor($event)\">\n <thy-icon thyIconName=\"background-tt\" thyIconType=\"twotone\" [thyTwotoneColor]=\"selectedColor\"></thy-icon>\n </a>\n <nav-split-line *ngIf=\"deleteIcon\"></nav-split-line>\n <a\n *ngIf=\"deleteIcon\"\n href=\"javascript:;\"\n thyIconNavLink\n [thyTooltip]=\"iconName\"\n class=\"danger\"\n [thyIconNavLinkIcon]=\"deleteIcon\"\n (mousedown)=\"onDelete($event)\"\n (mouseenter)=\"onEnterDelete($event)\"\n (mouseleave)=\"onLeaveDelete($event)\"\n ></a>\n</thy-icon-nav>\n", components: [{ type:
|
|
7934
|
+
TheTableToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheTableToolbarComponent, selector: "the-table-toolbar", inputs: { tableStore: "tableStore", isActiveSelect: "isActiveSelect" }, ngImport: i0, template: "<thy-icon-nav>\n <ng-container *ngFor=\"let item of cellMenuList\">\n <a href=\"javascript:;\" thyIconNavLink *ngIf=\"!item.invisibility\" [thyTooltip]=\"item.name\" (mousedown)=\"item.actionHandle()\">\n <thy-icon [thyIconName]=\"item.icon\"></thy-icon>\n </a>\n </ng-container>\n <nav-split-line *ngIf=\"!isActiveSelect && isShowSplitLine\"></nav-split-line>\n <a href=\"javascript:;\" thyIconNavLink thyTooltip=\"\u5355\u5143\u683C\u80CC\u666F\" (mousedown)=\"openSelectColor($event)\">\n <thy-icon thyIconName=\"background-tt\" thyIconType=\"twotone\" [thyTwotoneColor]=\"selectedColor\"></thy-icon>\n </a>\n <nav-split-line *ngIf=\"deleteIcon\"></nav-split-line>\n <a\n *ngIf=\"deleteIcon\"\n href=\"javascript:;\"\n thyIconNavLink\n [thyTooltip]=\"iconName\"\n class=\"danger\"\n [thyIconNavLinkIcon]=\"deleteIcon\"\n (mousedown)=\"onDelete($event)\"\n (mouseenter)=\"onEnterDelete($event)\"\n (mouseleave)=\"onLeaveDelete($event)\"\n ></a>\n</thy-icon-nav>\n", components: [{ type: i3.ThyIconNavComponent, selector: "thy-icon-nav", inputs: ["thyType"] }, { type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4$1.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { type: NavSplitLineComponent, selector: "nav-split-line", inputs: ["mode"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }] });
|
|
7843
7935
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheTableToolbarComponent, decorators: [{
|
|
7844
7936
|
type: Component,
|
|
7845
7937
|
args: [{
|
|
@@ -7902,7 +7994,7 @@ class TheContextMenuComponent {
|
|
|
7902
7994
|
ngOnInit() { }
|
|
7903
7995
|
}
|
|
7904
7996
|
TheContextMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheContextMenuComponent, deps: [{ token: i0.ElementRef }, { token: i1$3.ThyPopoverRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7905
|
-
TheContextMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheContextMenuComponent, selector: "the-contextmenu", inputs: { menuEntities: "menuEntities", actionHandle: "actionHandle", activeHandle: "activeHandle", deactiveHandle: "deactiveHandle" }, host: { listeners: { "document: mousedown": "handleDocumentMouseDown($event)", "mousedown": "handleMouseDown($event)" }, properties: { "class.the-overlay-menu-wrap": "this.wrap" } }, ngImport: i0, template: "<thy-action-menu>\n <ng-container *ngFor=\"let menuItem of menuEntities\">\n <a\n thyActionMenuItem\n href=\"javascript:;\"\n *ngIf=\"!menuItem.invisibility\"\n (mousedown)=\"itemMousedown($event, menuItem)\"\n (mouseenter)=\"itemMouseenter($event, menuItem)\"\n (mouseleave)=\"itemMouseleave($event, menuItem)\"\n >\n <span thyActionMenuItemIcon>\n <thy-icon\n *ngIf=\"menuItem.backgroundColor; else elseIcon\"\n [thyIconName]=\"menuItem.icon\"\n thyIconType=\"twotone\"\n [thyTwotoneColor]=\"menuItem.backgroundColor\"\n ></thy-icon>\n <ng-template #elseIcon>\n <thy-icon [thyIconName]=\"menuItem.icon\"></thy-icon>\n </ng-template>\n </span>\n <span thyActionMenuItemName>{{ menuItem.name }}</span>\n <span *ngIf=\"menuItem.extendIcon\" thyActionMenuItemExtendIcon>\n <thy-icon thyIconName=\"{{ menuItem.extendIcon }}\"></thy-icon>\n </span>\n </a>\n <thy-action-menu-divider *ngIf=\"menuItem.divider\"></thy-action-menu-divider>\n </ng-container>\n</thy-action-menu>\n", components: [{ type: i5$
|
|
7997
|
+
TheContextMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheContextMenuComponent, selector: "the-contextmenu", inputs: { menuEntities: "menuEntities", actionHandle: "actionHandle", activeHandle: "activeHandle", deactiveHandle: "deactiveHandle" }, host: { listeners: { "document: mousedown": "handleDocumentMouseDown($event)", "mousedown": "handleMouseDown($event)" }, properties: { "class.the-overlay-menu-wrap": "this.wrap" } }, ngImport: i0, template: "<thy-action-menu>\n <ng-container *ngFor=\"let menuItem of menuEntities\">\n <a\n thyActionMenuItem\n href=\"javascript:;\"\n *ngIf=\"!menuItem.invisibility\"\n (mousedown)=\"itemMousedown($event, menuItem)\"\n (mouseenter)=\"itemMouseenter($event, menuItem)\"\n (mouseleave)=\"itemMouseleave($event, menuItem)\"\n >\n <span thyActionMenuItemIcon>\n <thy-icon\n *ngIf=\"menuItem.backgroundColor; else elseIcon\"\n [thyIconName]=\"menuItem.icon\"\n thyIconType=\"twotone\"\n [thyTwotoneColor]=\"menuItem.backgroundColor\"\n ></thy-icon>\n <ng-template #elseIcon>\n <thy-icon [thyIconName]=\"menuItem.icon\"></thy-icon>\n </ng-template>\n </span>\n <span thyActionMenuItemName>{{ menuItem.name }}</span>\n <span *ngIf=\"menuItem.extendIcon\" thyActionMenuItemExtendIcon>\n <thy-icon thyIconName=\"{{ menuItem.extendIcon }}\"></thy-icon>\n </span>\n </a>\n <thy-action-menu-divider *ngIf=\"menuItem.divider\"></thy-action-menu-divider>\n </ng-container>\n</thy-action-menu>\n", components: [{ type: i5$2.ThyActionMenuComponent, selector: "thy-action-menu", inputs: ["thyTheme", "thyWidth"] }, { type: i4$1.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { type: i5$2.ThyActionMenuDividerComponent, selector: "thy-action-menu-divider", inputs: ["thyTitle", "thyType"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5$2.ThyActionMenuItemDirective, selector: "[thyActionMenuItem]", inputs: ["thyDisabled", "thyType"] }, { type: i5$2.ThyActionMenuItemIconDirective, selector: "[thyActionMenuItemIcon]" }, { type: i5$2.ThyActionMenuItemNameDirective, selector: "[thyActionMenuItemName]" }, { type: i5$2.ThyActionMenuItemExtendIconDirective, selector: "[thyActionMenuItemExtendIcon]" }] });
|
|
7906
7998
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheContextMenuComponent, decorators: [{
|
|
7907
7999
|
type: Component,
|
|
7908
8000
|
args: [{
|
|
@@ -8191,11 +8283,11 @@ class TableService {
|
|
|
8191
8283
|
});
|
|
8192
8284
|
}
|
|
8193
8285
|
}
|
|
8194
|
-
TableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TableService, deps: [{ token: i1$3.ThyPopover }, { token: i2
|
|
8286
|
+
TableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TableService, deps: [{ token: i1$3.ThyPopover }, { token: i2.Overlay }, { token: TableStore }, { token: TheTableContextMenuService }, { token: i0.NgZone }, { token: TheContextService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
8195
8287
|
TableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TableService });
|
|
8196
8288
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TableService, decorators: [{
|
|
8197
8289
|
type: Injectable
|
|
8198
|
-
}], ctorParameters: function () { return [{ type: i1$3.ThyPopover }, { type: i2
|
|
8290
|
+
}], ctorParameters: function () { return [{ type: i1$3.ThyPopover }, { type: i2.Overlay }, { type: TableStore }, { type: TheTableContextMenuService }, { type: i0.NgZone }, { type: TheContextService }]; } });
|
|
8199
8291
|
|
|
8200
8292
|
const SLA_TABLE_SELECTOR = '.slate-element-table';
|
|
8201
8293
|
const SLA_TABLE_CELL_SELECTOR = '.slate-element-table-cell';
|
|
@@ -8274,7 +8366,7 @@ class TheInsertMarkComponent {
|
|
|
8274
8366
|
ngOnDestroy() { }
|
|
8275
8367
|
}
|
|
8276
8368
|
TheInsertMarkComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheInsertMarkComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
8277
|
-
TheInsertMarkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheInsertMarkComponent, selector: "the-table-insert-mark", inputs: { type: "type", at: "at", tableStore: "tableStore" }, ngImport: i0, template: "<div\n [thyTooltip]=\"!disabled && tooltipContent\"\n class=\"the-table-controls-insert-wrapper\"\n [ngClass]=\"{ disabled: disabled }\"\n contenteditable=\"false\"\n (mousedown)=\"onMouseDown($event)\"\n (mouseenter)=\"onMouseEnter($event)\"\n (mouseleave)=\"onMouseLeave($event)\"\n>\n <div\n class=\"the-table-controls-insert-line\"\n *ngIf=\"dotWrapperHovered\"\n [attr.data-dot-type]=\"type\"\n [ngStyle]=\"{ height: type === 'column' && insertLength, width: type === 'row' && insertLength }\"\n ></div>\n</div>\n", directives: [{ type:
|
|
8369
|
+
TheInsertMarkComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheInsertMarkComponent, selector: "the-table-insert-mark", inputs: { type: "type", at: "at", tableStore: "tableStore" }, ngImport: i0, template: "<div\n [thyTooltip]=\"!disabled && tooltipContent\"\n class=\"the-table-controls-insert-wrapper\"\n [ngClass]=\"{ disabled: disabled }\"\n contenteditable=\"false\"\n (mousedown)=\"onMouseDown($event)\"\n (mouseenter)=\"onMouseEnter($event)\"\n (mouseleave)=\"onMouseLeave($event)\"\n>\n <div\n class=\"the-table-controls-insert-line\"\n *ngIf=\"dotWrapperHovered\"\n [attr.data-dot-type]=\"type\"\n [ngStyle]=\"{ height: type === 'column' && insertLength, width: type === 'row' && insertLength }\"\n ></div>\n</div>\n", directives: [{ type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
8278
8370
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheInsertMarkComponent, decorators: [{
|
|
8279
8371
|
type: Component,
|
|
8280
8372
|
args: [{
|
|
@@ -9820,7 +9912,7 @@ class TheTdComponent extends TheBaseElementComponent {
|
|
|
9820
9912
|
this.destroy$.complete();
|
|
9821
9913
|
}
|
|
9822
9914
|
}
|
|
9823
|
-
TheTdComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheTdComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.NgZone }, { token: i0.Injector }, { token: i2
|
|
9915
|
+
TheTdComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheTdComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }, { token: i0.NgZone }, { token: i0.Injector }, { token: i2.Overlay }, { token: ColumnResizingStore }, { token: i2.ScrollDispatcher }], target: i0.ɵɵFactoryTarget.Component });
|
|
9824
9916
|
TheTdComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheTdComponent, selector: "td[theTd]", host: { properties: { "style.backgroundColor": "this.backgroundColor", "attr.colspan": "this.colspan", "attr.rowspan": "this.rowspan", "style.display": "this.display" } }, providers: [ColumnResizingStore], viewQueries: [{ propertyName: "cellInner", first: true, predicate: ["cellInner"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div #cellInner>\n <slate-children [children]=\"children\" [context]=\"childrenContext\" [viewContext]=\"viewContext\"></slate-children>\n</div>\n", components: [{ type: i1.SlateChildrenComponent, selector: "slate-children", inputs: ["children", "context", "viewContext"] }] });
|
|
9825
9917
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheTdComponent, decorators: [{
|
|
9826
9918
|
type: Component,
|
|
@@ -9829,7 +9921,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
9829
9921
|
templateUrl: './td.component.html',
|
|
9830
9922
|
providers: [ColumnResizingStore]
|
|
9831
9923
|
}]
|
|
9832
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.NgZone }, { type: i0.Injector }, { type: i2
|
|
9924
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }, { type: i0.NgZone }, { type: i0.Injector }, { type: i2.Overlay }, { type: ColumnResizingStore }, { type: i2.ScrollDispatcher }]; }, propDecorators: { backgroundColor: [{
|
|
9833
9925
|
type: HostBinding,
|
|
9834
9926
|
args: ['style.backgroundColor']
|
|
9835
9927
|
}], colspan: [{
|
|
@@ -10387,7 +10479,7 @@ class TheVerticalToolbarItemComponent extends TheToolbarBaseItemComponent {
|
|
|
10387
10479
|
}
|
|
10388
10480
|
}
|
|
10389
10481
|
TheVerticalToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheVerticalToolbarItemComponent, deps: [{ token: i0.ElementRef }, { token: i1$6.ThyPopover }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
10390
|
-
TheVerticalToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheVerticalToolbarItemComponent, selector: "the-toolbar-vertical-align-item", inputs: { item: "item", menus: "menus", editor: "editor", toolbarItem: "toolbarItem" }, host: { listeners: { "document: mousedown": "handleDocumentMouseDown($event)" }, properties: { "class.hide": "!active" }, classAttribute: "the-toolbar-dropdown-container verticalAlign" }, viewQueries: [{ propertyName: "template", first: true, predicate: ["VerticalAlignItems"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<a\n thyIconNavLink\n class=\"icon-mode link-with-down\"\n [thyTooltip]=\"toolbarItem?.name\"\n [thyIconNavLinkActive]=\"isOpened\"\n thyTooltipPlacement=\"top\"\n (mousedown)=\"execute($event)\"\n>\n <thy-icon [thyIconName]=\"activeMenu?.icon\"></thy-icon>\n <thy-icon class=\"caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n</a>\n\n<ng-template #VerticalAlignItems>\n <thy-action-menu class=\"dropdown\">\n <ng-container *ngFor=\"let menu of toolbarItem?.includes\">\n <a\n thyActionMenuItem\n href=\"javascript:;\"\n [thyActionMenuItemActive]=\"menu.key === activeMenu?.key\"\n [ngStyle]=\"menu?.styles\"\n (mousedown)=\"itemMousedown($event, menu)\"\n >\n <span *ngIf=\"menu.icon\" thyActionMenuItemIcon>\n <thy-icon [thyIconName]=\"menu?.icon\"></thy-icon>\n </span>\n <span thyActionMenuItemName>{{ menu.name }}</span>\n </a>\n </ng-container>\n </thy-action-menu>\n</ng-template>\n", components: [{ type:
|
|
10482
|
+
TheVerticalToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheVerticalToolbarItemComponent, selector: "the-toolbar-vertical-align-item", inputs: { item: "item", menus: "menus", editor: "editor", toolbarItem: "toolbarItem" }, host: { listeners: { "document: mousedown": "handleDocumentMouseDown($event)" }, properties: { "class.hide": "!active" }, classAttribute: "the-toolbar-dropdown-container verticalAlign" }, viewQueries: [{ propertyName: "template", first: true, predicate: ["VerticalAlignItems"], descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<a\n thyIconNavLink\n class=\"icon-mode link-with-down\"\n [thyTooltip]=\"toolbarItem?.name\"\n [thyIconNavLinkActive]=\"isOpened\"\n thyTooltipPlacement=\"top\"\n (mousedown)=\"execute($event)\"\n>\n <thy-icon [thyIconName]=\"activeMenu?.icon\"></thy-icon>\n <thy-icon class=\"caret-down-icon font-size-sm text-desc\" thyIconName=\"caret-down\"></thy-icon>\n</a>\n\n<ng-template #VerticalAlignItems>\n <thy-action-menu class=\"dropdown\">\n <ng-container *ngFor=\"let menu of toolbarItem?.includes\">\n <a\n thyActionMenuItem\n href=\"javascript:;\"\n [thyActionMenuItemActive]=\"menu.key === activeMenu?.key\"\n [ngStyle]=\"menu?.styles\"\n (mousedown)=\"itemMousedown($event, menu)\"\n >\n <span *ngIf=\"menu.icon\" thyActionMenuItemIcon>\n <thy-icon [thyIconName]=\"menu?.icon\"></thy-icon>\n </span>\n <span thyActionMenuItemName>{{ menu.name }}</span>\n </a>\n </ng-container>\n </thy-action-menu>\n</ng-template>\n", components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4$1.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { type: i5$2.ThyActionMenuComponent, selector: "thy-action-menu", inputs: ["thyTheme", "thyWidth"] }], directives: [{ type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5$2.ThyActionMenuItemDirective, selector: "[thyActionMenuItem]", inputs: ["thyDisabled", "thyType"] }, { type: i5$2.ThyActionMenuItemActiveDirective, selector: "[thyActionMenuItemActive]", inputs: ["thyActionMenuItemActive"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5$2.ThyActionMenuItemIconDirective, selector: "[thyActionMenuItemIcon]" }, { type: i5$2.ThyActionMenuItemNameDirective, selector: "[thyActionMenuItemName]" }] });
|
|
10391
10483
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheVerticalToolbarItemComponent, decorators: [{
|
|
10392
10484
|
type: Component,
|
|
10393
10485
|
args: [{
|
|
@@ -10593,6 +10685,13 @@ class TheToolbarItemComponent extends TheToolbarBaseItemComponent {
|
|
|
10593
10685
|
this.itemMode = ToolbarItemMode.horizontal;
|
|
10594
10686
|
this.ToolbarItemMode = ToolbarItemMode;
|
|
10595
10687
|
this.active = false;
|
|
10688
|
+
this.disabled = false;
|
|
10689
|
+
}
|
|
10690
|
+
toggleDropdown(event) {
|
|
10691
|
+
super.execute(event);
|
|
10692
|
+
}
|
|
10693
|
+
get disabledState() {
|
|
10694
|
+
return this.disabled;
|
|
10596
10695
|
}
|
|
10597
10696
|
ngOnInit() {
|
|
10598
10697
|
var _a, _b;
|
|
@@ -10601,13 +10700,14 @@ class TheToolbarItemComponent extends TheToolbarBaseItemComponent {
|
|
|
10601
10700
|
}
|
|
10602
10701
|
}
|
|
10603
10702
|
statusChange(editor) {
|
|
10604
|
-
var _a, _b;
|
|
10605
|
-
this.
|
|
10703
|
+
var _a, _b, _c, _d;
|
|
10704
|
+
this.disabled = ((_a = this.item) === null || _a === void 0 ? void 0 : _a.disable) ? (_b = this.item) === null || _b === void 0 ? void 0 : _b.disable(editor) : false;
|
|
10705
|
+
this.active = ((_c = this.item) === null || _c === void 0 ? void 0 : _c.active) ? (_d = this.item) === null || _d === void 0 ? void 0 : _d.active(editor) : false;
|
|
10606
10706
|
}
|
|
10607
10707
|
execute(event) {
|
|
10608
10708
|
var _a, _b, _c;
|
|
10609
10709
|
super.execute(event);
|
|
10610
|
-
if (
|
|
10710
|
+
if (((_a = this.editor) === null || _a === void 0 ? void 0 : _a.disabled) || this.disabled || !((_b = this.item) === null || _b === void 0 ? void 0 : _b.execute)) {
|
|
10611
10711
|
return;
|
|
10612
10712
|
}
|
|
10613
10713
|
(_c = this.item) === null || _c === void 0 ? void 0 : _c.execute(this.editor);
|
|
@@ -10623,7 +10723,7 @@ class TheToolbarItemComponent extends TheToolbarBaseItemComponent {
|
|
|
10623
10723
|
}
|
|
10624
10724
|
}
|
|
10625
10725
|
TheToolbarItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarItemComponent, deps: [{ token: i0.NgZone }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Component });
|
|
10626
|
-
TheToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheToolbarItemComponent, selector: "the-toolbar-item", inputs: { item: "item", editor: "editor", itemMode: "itemMode" }, host: { classAttribute: "the-toolbar-item" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
10726
|
+
TheToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheToolbarItemComponent, selector: "the-toolbar-item", inputs: { item: "item", editor: "editor", itemMode: "itemMode" }, host: { listeners: { "mousedown": "toggleDropdown($event)" }, properties: { "class.disabled": "this.disabledState" }, classAttribute: "the-toolbar-item" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
10627
10727
|
<ng-container *ngIf="itemMode === ToolbarItemMode.horizontal; else selectionItem">
|
|
10628
10728
|
<a
|
|
10629
10729
|
thyIconNavLink
|
|
@@ -10643,7 +10743,7 @@ TheToolbarItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
|
|
|
10643
10743
|
</ng-template>
|
|
10644
10744
|
<ng-template #tooltip let-data> {{ data.name }} {{ data.shortcutKey }} </ng-template>
|
|
10645
10745
|
<ng-container #toolbarContainer></ng-container>
|
|
10646
|
-
`, isInline: true, components: [{ type:
|
|
10746
|
+
`, isInline: true, components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: i4$1.ThyIconComponent, selector: "thy-icon", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }] });
|
|
10647
10747
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarItemComponent, decorators: [{
|
|
10648
10748
|
type: Component,
|
|
10649
10749
|
args: [{
|
|
@@ -10682,6 +10782,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
10682
10782
|
}], toolbarContainer: [{
|
|
10683
10783
|
type: ViewChild,
|
|
10684
10784
|
args: ['toolbarContainer', { read: ViewContainerRef, static: true }]
|
|
10785
|
+
}], toggleDropdown: [{
|
|
10786
|
+
type: HostListener,
|
|
10787
|
+
args: ['mousedown', ['$event']]
|
|
10788
|
+
}], disabledState: [{
|
|
10789
|
+
type: HostBinding,
|
|
10790
|
+
args: ['class.disabled']
|
|
10685
10791
|
}] } });
|
|
10686
10792
|
|
|
10687
10793
|
class TheQuickToolbarComponent extends mixinUnsubscribe(MixinBase) {
|
|
@@ -10727,7 +10833,7 @@ class TheQuickToolbarComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
10727
10833
|
}
|
|
10728
10834
|
}
|
|
10729
10835
|
TheQuickToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheQuickToolbarComponent, deps: [{ token: i1$3.ThyPopoverRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
10730
|
-
TheQuickToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheQuickToolbarComponent, selector: "the-quick-toolbar", inputs: { editor: "editor", quickToolbarItems: "quickToolbarItems" }, host: { listeners: { "document: mousedown": "handleMouseDown($event)", "document: keydown.enter": "handleEnter()" } }, usesInheritance: true, ngImport: i0, template: "<thy-selection-list\n class=\"the-quick-toolbar\"\n [thyBindKeyEventContainer]=\"editorElement\"\n (thySelectionChange)=\"selectionChange($event)\"\n [thyMultiple]=\"false\"\n>\n <ng-container *ngFor=\"let item of quickToolbarItems\">\n <ng-container *ngIf=\"item.key !== ToolbarActionTypes.split; else splitLine\">\n <thy-list-option [thyValue]=\"item?.key\" (mousedown)=\"stopPropagation($event)\">\n <the-toolbar-item [editor]=\"editor\" [item]=\"item\" [itemMode]=\"ToolbarItemMode.vertical\"></the-toolbar-item>\n </thy-list-option>\n </ng-container>\n </ng-container>\n</thy-selection-list>\n\n<ng-template #splitLine>\n <nav-split-line [mode]=\"ToolbarItemMode.horizontal\"></nav-split-line>\n</ng-template>\n", components: [{ type: i2$
|
|
10836
|
+
TheQuickToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheQuickToolbarComponent, selector: "the-quick-toolbar", inputs: { editor: "editor", quickToolbarItems: "quickToolbarItems" }, host: { listeners: { "document: mousedown": "handleMouseDown($event)", "document: keydown.enter": "handleEnter()" } }, usesInheritance: true, ngImport: i0, template: "<thy-selection-list\n class=\"the-quick-toolbar\"\n [thyBindKeyEventContainer]=\"editorElement\"\n (thySelectionChange)=\"selectionChange($event)\"\n [thyMultiple]=\"false\"\n>\n <ng-container *ngFor=\"let item of quickToolbarItems\">\n <ng-container *ngIf=\"item.key !== ToolbarActionTypes.split; else splitLine\">\n <thy-list-option [thyValue]=\"item?.key\" (mousedown)=\"stopPropagation($event)\">\n <the-toolbar-item [editor]=\"editor\" [item]=\"item\" [itemMode]=\"ToolbarItemMode.vertical\"></the-toolbar-item>\n </thy-list-option>\n </ng-container>\n </ng-container>\n</thy-selection-list>\n\n<ng-template #splitLine>\n <nav-split-line [mode]=\"ToolbarItemMode.horizontal\"></nav-split-line>\n</ng-template>\n", components: [{ type: i2$2.ThySelectionListComponent, selector: "thy-selection-list,[thy-selection-list]", inputs: ["thyMultiple", "thyBindKeyEventContainer", "thyScrollContainer", "thyBeforeKeydown", "thyUniqueKey", "thyCompareWith", "thyLayout", "thyAutoActiveFirstItem", "thySize", "thySpaceKeyEnabled"], outputs: ["thySelectionChange"] }, { type: i5$3.ThyListOptionComponent, selector: "thy-list-option,[thy-list-option]", inputs: ["id", "thyValue", "thyDisabled"] }, { type: TheToolbarItemComponent, selector: "the-toolbar-item", inputs: ["item", "editor", "itemMode"] }, { type: NavSplitLineComponent, selector: "nav-split-line", inputs: ["mode"] }], directives: [{ type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
10731
10837
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheQuickToolbarComponent, decorators: [{
|
|
10732
10838
|
type: Component,
|
|
10733
10839
|
args: [{
|
|
@@ -10846,6 +10952,71 @@ const withSoftBreak = (options = { rules: [{ hotkey: 'shift+enter' }] }) => (edi
|
|
|
10846
10952
|
return editor;
|
|
10847
10953
|
};
|
|
10848
10954
|
|
|
10955
|
+
const FontSizeEditor = {
|
|
10956
|
+
setFontSize(editor, size) {
|
|
10957
|
+
if (TableEditor.toggleMark(editor, false, MarkTypes.fontSize, Number(size))) {
|
|
10958
|
+
return;
|
|
10959
|
+
}
|
|
10960
|
+
Editor.addMark(editor, MarkTypes.fontSize, Number(size));
|
|
10961
|
+
},
|
|
10962
|
+
isFontSizeActive(editor, size) {
|
|
10963
|
+
if (editor.selection) {
|
|
10964
|
+
const anchorBlock$1 = anchorBlock(editor);
|
|
10965
|
+
switch (anchorBlock$1 === null || anchorBlock$1 === void 0 ? void 0 : anchorBlock$1.type) {
|
|
10966
|
+
case ElementKinds.heading_1:
|
|
10967
|
+
return size === FontSizes.fontSize28;
|
|
10968
|
+
case ElementKinds.heading_2:
|
|
10969
|
+
return size === FontSizes.fontSize24;
|
|
10970
|
+
case ElementKinds.heading_3:
|
|
10971
|
+
return size === FontSizes.fontSize20;
|
|
10972
|
+
case ElementKinds.heading_4:
|
|
10973
|
+
return size === FontSizes.fontSize18;
|
|
10974
|
+
case ElementKinds.heading_5:
|
|
10975
|
+
return size === FontSizes.fontSize16;
|
|
10976
|
+
case ElementKinds.heading_6:
|
|
10977
|
+
return size === FontSizes.fontSize14;
|
|
10978
|
+
case ElementKinds.paragraph:
|
|
10979
|
+
const marks = getSelectionMarks(editor);
|
|
10980
|
+
const fontSizeMark = marks[MarkTypes.fontSize];
|
|
10981
|
+
return Number(size) === fontSizeMark;
|
|
10982
|
+
default:
|
|
10983
|
+
return false;
|
|
10984
|
+
}
|
|
10985
|
+
}
|
|
10986
|
+
return false;
|
|
10987
|
+
},
|
|
10988
|
+
isDisabled(editor) {
|
|
10989
|
+
if (editor.selection) {
|
|
10990
|
+
const disableGroup = HEADING_TYPES;
|
|
10991
|
+
const anchorBlock$1 = anchorBlock(editor);
|
|
10992
|
+
return anchorBlock$1 && disableGroup.includes(anchorBlock$1 === null || anchorBlock$1 === void 0 ? void 0 : anchorBlock$1.type);
|
|
10993
|
+
}
|
|
10994
|
+
return false;
|
|
10995
|
+
}
|
|
10996
|
+
};
|
|
10997
|
+
|
|
10998
|
+
const sizeOptions = () => {
|
|
10999
|
+
return FontSizeTypes.map(fontSize => {
|
|
11000
|
+
return {
|
|
11001
|
+
key: fontSize,
|
|
11002
|
+
name: fontSize,
|
|
11003
|
+
execute: editor => FontSizeEditor.setFontSize(editor, fontSize),
|
|
11004
|
+
active: editor => FontSizeEditor.isFontSizeActive(editor, fontSize)
|
|
11005
|
+
};
|
|
11006
|
+
});
|
|
11007
|
+
};
|
|
11008
|
+
const FontSizeOptions = [
|
|
11009
|
+
{
|
|
11010
|
+
key: MarkTypes.fontSize,
|
|
11011
|
+
name: '字号',
|
|
11012
|
+
type: ToolbarItemType.toolDropdown,
|
|
11013
|
+
dropdownItemKey: FontSizes.fontSize14,
|
|
11014
|
+
includes: FontSizeTypes,
|
|
11015
|
+
disable: editor => FontSizeEditor.isDisabled(editor)
|
|
11016
|
+
},
|
|
11017
|
+
...sizeOptions()
|
|
11018
|
+
];
|
|
11019
|
+
|
|
10849
11020
|
const internalPlugins = [
|
|
10850
11021
|
withTheHistory,
|
|
10851
11022
|
withAutoInsertData(),
|
|
@@ -10892,6 +11063,7 @@ const internalToolbarItems = [
|
|
|
10892
11063
|
...MarkOptions,
|
|
10893
11064
|
...ColorOptions,
|
|
10894
11065
|
...HeadingOptions,
|
|
11066
|
+
...FontSizeOptions,
|
|
10895
11067
|
...TodoItemOptions,
|
|
10896
11068
|
...ListOptions,
|
|
10897
11069
|
...ImageOptions,
|
|
@@ -10963,7 +11135,7 @@ class TheToolbarService {
|
|
|
10963
11135
|
return entity;
|
|
10964
11136
|
}
|
|
10965
11137
|
getToolbarItemByKeys(keys, toolbarItems) {
|
|
10966
|
-
return keys.map(key => {
|
|
11138
|
+
return keys.map((key) => {
|
|
10967
11139
|
if (key === `split`) {
|
|
10968
11140
|
return { key: `split` };
|
|
10969
11141
|
}
|
|
@@ -11191,14 +11363,15 @@ class TheToolbarComponent {
|
|
|
11191
11363
|
});
|
|
11192
11364
|
}
|
|
11193
11365
|
createToolbarItem(item) {
|
|
11194
|
-
const { iconComponent, type, dropdownMode } = item, args = __rest(item, ["iconComponent", "type", "dropdownMode"]);
|
|
11366
|
+
const { iconComponent, type, dropdownMode, dropdownItemKey, includes } = item, args = __rest(item, ["iconComponent", "type", "dropdownMode", "dropdownItemKey", "includes"]);
|
|
11195
11367
|
const viewComponent = this.viewComponentType(type);
|
|
11368
|
+
const dropdownItem = this.getDropdownItem(item);
|
|
11196
11369
|
const factory = this.cfr.resolveComponentFactory(iconComponent ? iconComponent : viewComponent);
|
|
11197
11370
|
const compRef = this.toolbarContainer.createComponent(factory);
|
|
11198
11371
|
compRef.instance.editor = this.editor;
|
|
11199
11372
|
compRef.instance.toolbarItem = item;
|
|
11200
|
-
compRef.instance.menus =
|
|
11201
|
-
compRef.instance.item =
|
|
11373
|
+
compRef.instance.menus = includes;
|
|
11374
|
+
compRef.instance.item = includes && dropdownItem ? dropdownItem : args;
|
|
11202
11375
|
compRef.instance.mode = dropdownMode;
|
|
11203
11376
|
this.components.set(item.key, compRef);
|
|
11204
11377
|
}
|
|
@@ -11225,9 +11398,18 @@ class TheToolbarComponent {
|
|
|
11225
11398
|
}
|
|
11226
11399
|
return TheToolbarItemComponent;
|
|
11227
11400
|
}
|
|
11401
|
+
getDropdownItem(item) {
|
|
11402
|
+
var _a;
|
|
11403
|
+
let dropdownKey = item === null || item === void 0 ? void 0 : item.dropdownItemKey;
|
|
11404
|
+
// modify the fontsize option externally
|
|
11405
|
+
if (item.key === MarkTypes.fontSize && this.fontSize) {
|
|
11406
|
+
dropdownKey = this.fontSize;
|
|
11407
|
+
}
|
|
11408
|
+
return (_a = item === null || item === void 0 ? void 0 : item.includes) === null || _a === void 0 ? void 0 : _a.find((item) => item.key === dropdownKey);
|
|
11409
|
+
}
|
|
11228
11410
|
}
|
|
11229
11411
|
TheToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarComponent, deps: [{ token: i0.ComponentFactoryResolver }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: TheToolbarGroupToken }], target: i0.ɵɵFactoryTarget.Component });
|
|
11230
|
-
TheToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheToolbarComponent, selector: "the-toolbar", inputs: { editor: "editor", toolbarItems: "toolbarItems", align: "align", containerClass: "containerClass", isMore: "isMore", afterTemplate: "afterTemplate" }, host: { classAttribute: "the-toolbar-container" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<thy-icon-nav [style.justifyContent]=\"align\">\n <ng-container #toolbarContainer></ng-container>\n <ng-content></ng-content>\n <ng-template *ngIf=\"afterTemplate\" [ngTemplateOutlet]=\"afterTemplate\"></ng-template>\n</thy-icon-nav>\n", components: [{ type:
|
|
11412
|
+
TheToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheToolbarComponent, selector: "the-toolbar", inputs: { editor: "editor", toolbarItems: "toolbarItems", align: "align", fontSize: "fontSize", containerClass: "containerClass", isMore: "isMore", afterTemplate: "afterTemplate" }, host: { classAttribute: "the-toolbar-container" }, viewQueries: [{ propertyName: "toolbarContainer", first: true, predicate: ["toolbarContainer"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<thy-icon-nav [style.justifyContent]=\"align\">\n <ng-container #toolbarContainer></ng-container>\n <ng-content></ng-content>\n <ng-template *ngIf=\"afterTemplate\" [ngTemplateOutlet]=\"afterTemplate\"></ng-template>\n</thy-icon-nav>\n", components: [{ type: i3.ThyIconNavComponent, selector: "thy-icon-nav", inputs: ["thyType"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
|
11231
11413
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarComponent, decorators: [{
|
|
11232
11414
|
type: Component,
|
|
11233
11415
|
args: [{
|
|
@@ -11246,6 +11428,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
11246
11428
|
type: Input
|
|
11247
11429
|
}], align: [{
|
|
11248
11430
|
type: Input
|
|
11431
|
+
}], fontSize: [{
|
|
11432
|
+
type: Input
|
|
11249
11433
|
}], containerClass: [{
|
|
11250
11434
|
type: Input
|
|
11251
11435
|
}], isMore: [{
|
|
@@ -11352,14 +11536,14 @@ class TheInlineToolbarComponent {
|
|
|
11352
11536
|
this.destroy$.complete();
|
|
11353
11537
|
}
|
|
11354
11538
|
}
|
|
11355
|
-
TheInlineToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheInlineToolbarComponent, deps: [{ token: i0.ElementRef }, { token: i2
|
|
11539
|
+
TheInlineToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheInlineToolbarComponent, deps: [{ token: i0.ElementRef }, { token: i2.ScrollDispatcher }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: TheContextService }], target: i0.ɵɵFactoryTarget.Component });
|
|
11356
11540
|
TheInlineToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheInlineToolbarComponent, selector: "the-inline-toolbar", inputs: { editor: "editor", toolbarItems: "toolbarItems" }, host: { properties: { "class.hide": "toolbarItems.length === 0" } }, viewQueries: [{ propertyName: "inlineToolbar", first: true, predicate: ["inlineToolbar"], descendants: true }], ngImport: i0, template: `<the-toolbar
|
|
11357
11541
|
#inlineToolbar
|
|
11358
11542
|
class="the-inline-toolbar"
|
|
11359
11543
|
[editor]="editor"
|
|
11360
11544
|
[toolbarItems]="toolbarItems"
|
|
11361
11545
|
[isMore]="false"
|
|
11362
|
-
></the-toolbar> `, isInline: true, components: [{ type: TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "containerClass", "isMore", "afterTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11546
|
+
></the-toolbar> `, isInline: true, components: [{ type: TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "fontSize", "containerClass", "isMore", "afterTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11363
11547
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheInlineToolbarComponent, decorators: [{
|
|
11364
11548
|
type: Component,
|
|
11365
11549
|
args: [{
|
|
@@ -11376,7 +11560,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
11376
11560
|
},
|
|
11377
11561
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
11378
11562
|
}]
|
|
11379
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i2
|
|
11563
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i2.ScrollDispatcher }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: TheContextService }]; }, propDecorators: { editor: [{
|
|
11380
11564
|
type: Input
|
|
11381
11565
|
}], toolbarItems: [{
|
|
11382
11566
|
type: Input
|
|
@@ -11620,14 +11804,14 @@ class TheEditorComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
11620
11804
|
return leaf ? leaf : null;
|
|
11621
11805
|
};
|
|
11622
11806
|
this.renderText = (text) => {
|
|
11623
|
-
if (text.text.length === 0) {
|
|
11624
|
-
return;
|
|
11625
|
-
}
|
|
11626
11807
|
for (const key in MarkTypes) {
|
|
11627
11808
|
if (text[MarkTypes[key]]) {
|
|
11628
11809
|
return TheTextComponent;
|
|
11629
11810
|
}
|
|
11630
11811
|
}
|
|
11812
|
+
if (text.text.length === 0) {
|
|
11813
|
+
return;
|
|
11814
|
+
}
|
|
11631
11815
|
};
|
|
11632
11816
|
this.onKeyDown = (event) => {
|
|
11633
11817
|
shortcuts(this.editor, event);
|
|
@@ -11769,7 +11953,7 @@ class TheEditorComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
11769
11953
|
}
|
|
11770
11954
|
}
|
|
11771
11955
|
toolbarCalculate() {
|
|
11772
|
-
var _a;
|
|
11956
|
+
var _a, _b;
|
|
11773
11957
|
const toolbar = (_a = this === null || this === void 0 ? void 0 : this.theOptions) === null || _a === void 0 ? void 0 : _a.toolbar;
|
|
11774
11958
|
const toolbarItems = toolbarCompose(toolbar === null || toolbar === void 0 ? void 0 : toolbar.toolbarItems);
|
|
11775
11959
|
const toolbarOption = this.toolbarService.initialize(toolbarItems, toolbar === null || toolbar === void 0 ? void 0 : toolbar.global, toolbar === null || toolbar === void 0 ? void 0 : toolbar.inline, toolbar === null || toolbar === void 0 ? void 0 : toolbar.quick);
|
|
@@ -11780,6 +11964,7 @@ class TheEditorComponent extends mixinUnsubscribe(MixinBase) {
|
|
|
11780
11964
|
this.theGlobalToolbarInstance.toolbarItems = toolbarOption.toolbarEntity.global;
|
|
11781
11965
|
this.theGlobalToolbarInstance.containerClass = this.globalToolbarClass;
|
|
11782
11966
|
this.theGlobalToolbarInstance.align = toolbar === null || toolbar === void 0 ? void 0 : toolbar.align;
|
|
11967
|
+
this.theGlobalToolbarInstance.fontSize = (_b = this.theOptions) === null || _b === void 0 ? void 0 : _b.fontSize;
|
|
11783
11968
|
this.theGlobalToolbarInstance.setToolbarClass();
|
|
11784
11969
|
this.theGlobalToolbarInstance.renderToolbarView();
|
|
11785
11970
|
}
|
|
@@ -11929,7 +12114,7 @@ TheEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
|
|
|
11929
12114
|
useExisting: forwardRef(() => TheEditorComponent),
|
|
11930
12115
|
multi: true
|
|
11931
12116
|
}
|
|
11932
|
-
], viewQueries: [{ propertyName: "templateInstance", first: true, predicate: ["templateInstance"], descendants: true, static: true }, { propertyName: "globalToolbarInstance", first: true, predicate: ["globalToolbar"], descendants: true }, { propertyName: "quickInsertInstance", first: true, predicate: ["quickInsert"], descendants: true, static: true }, { propertyName: "placeholderInstance", first: true, predicate: ["placeholder"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<the-toolbar\n *ngIf=\"!theOptions?.readonly && !theGlobalToolbar\"\n [ngClass]=\"{\n 'the-toolbar-disabled': theOptions?.disabled\n }\"\n #globalToolbar\n [editor]=\"editor\"\n [toolbarItems]=\"toolbarEntity.global\"\n [containerClass]=\"globalToolbarClass\"\n [align]=\"theOptions?.toolbar?.align\"\n></the-toolbar>\n\n<div\n class=\"the-editable-container\"\n [ngClass]=\"{\n 'the-editor-disabled': theOptions?.disabled,\n 'max-height': maxHeight\n }\"\n [ngStyle]=\"{ 'max-height': maxHeight }\"\n>\n <slate-editable\n class=\"the-editor-typo\"\n [editor]=\"editor\"\n [ngModel]=\"editorValue\"\n (ngModelChange)=\"valueChange($event)\"\n [decorate]=\"decorate\"\n [renderElement]=\"renderElement\"\n [renderText]=\"renderText\"\n [renderLeaf]=\"renderLeaf\"\n [readonly]=\"theOptions?.readonly || theOptions?.disabled\"\n [keydown]=\"onKeyDown\"\n [click]=\"onClick\"\n [paste]=\"onSlaPaste\"\n [beforeInput]=\"onSlaBeforeInput\"\n [blur]=\"onSlaBlur\"\n [focus]=\"onSlaFocus\"\n [copy]=\"onSlaCopy\"\n [cut]=\"onSlaCut\"\n [isStrictDecorate]=\"false\"\n [compositionStart]=\"onSlaCompositionStart\"\n [compositionEnd]=\"onSlaCompositionEnd\"\n [dragStart]=\"onSlaDragStart\"\n [dragOver]=\"onSlaDragOver\"\n [drop]=\"onDrop\"\n (mousedown)=\"mousedown($event)\"\n ></slate-editable>\n <the-inline-toolbar *ngIf=\"!theOptions?.readonly\" [editor]=\"editor\" [toolbarItems]=\"toolbarEntity.inline\"></the-inline-toolbar>\n <div #quickInsert theQuickInsert [editor]=\"editor\" [quickToolbarItems]=\"quickToolbarItems\"></div>\n <div #placeholder thePlaceholder [editor]=\"editor\" [options]=\"theOptions\"></div>\n <the-template #templateInstance></the-template>\n</div>\n", components: [{ type: TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "containerClass", "isMore", "afterTemplate"] }, { type: i1.SlateEditableComponent, selector: "slate-editable", inputs: ["editor", "renderElement", "renderLeaf", "renderText", "decorate", "placeholderDecorate", "isStrictDecorate", "trackBy", "readonly", "placeholder", "beforeInput", "blur", "click", "compositionEnd", "compositionStart", "copy", "cut", "dragOver", "dragStart", "dragEnd", "drop", "focus", "keydown", "paste", "spellCheck", "autoCorrect", "autoCapitalize"] }, { type: TheInlineToolbarComponent, selector: "the-inline-toolbar", inputs: ["editor", "toolbarItems"] }, { type: TheQuickInsertComponent, selector: "[theQuickInsert]", inputs: ["editor", "quickToolbarItems"] }, { type: ThePlaceholderComponent, selector: "div[thePlaceholder]", inputs: ["editor", "options"] }, { type: TheTemplateComponent, selector: "the-template,[theTemplate]" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i4$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
12117
|
+
], viewQueries: [{ propertyName: "templateInstance", first: true, predicate: ["templateInstance"], descendants: true, static: true }, { propertyName: "globalToolbarInstance", first: true, predicate: ["globalToolbar"], descendants: true }, { propertyName: "quickInsertInstance", first: true, predicate: ["quickInsert"], descendants: true, static: true }, { propertyName: "placeholderInstance", first: true, predicate: ["placeholder"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<the-toolbar\n *ngIf=\"!theOptions?.readonly && !theGlobalToolbar\"\n [ngClass]=\"{\n 'the-toolbar-disabled': theOptions?.disabled\n }\"\n #globalToolbar\n [editor]=\"editor\"\n [toolbarItems]=\"toolbarEntity.global\"\n [containerClass]=\"globalToolbarClass\"\n [align]=\"theOptions?.toolbar?.align\"\n [fontSize]=\"theOptions?.fontSize\"\n></the-toolbar>\n\n<div\n class=\"the-editable-container\"\n [ngClass]=\"{\n 'the-editor-disabled': theOptions?.disabled,\n 'max-height': maxHeight\n }\"\n [ngStyle]=\"{ 'max-height': maxHeight }\"\n>\n <slate-editable\n class=\"the-editor-typo\"\n [editor]=\"editor\"\n [ngModel]=\"editorValue\"\n (ngModelChange)=\"valueChange($event)\"\n [decorate]=\"decorate\"\n [renderElement]=\"renderElement\"\n [renderText]=\"renderText\"\n [renderLeaf]=\"renderLeaf\"\n [readonly]=\"theOptions?.readonly || theOptions?.disabled\"\n [keydown]=\"onKeyDown\"\n [click]=\"onClick\"\n [paste]=\"onSlaPaste\"\n [beforeInput]=\"onSlaBeforeInput\"\n [blur]=\"onSlaBlur\"\n [focus]=\"onSlaFocus\"\n [copy]=\"onSlaCopy\"\n [cut]=\"onSlaCut\"\n [isStrictDecorate]=\"false\"\n [compositionStart]=\"onSlaCompositionStart\"\n [compositionEnd]=\"onSlaCompositionEnd\"\n [dragStart]=\"onSlaDragStart\"\n [dragOver]=\"onSlaDragOver\"\n [drop]=\"onDrop\"\n (mousedown)=\"mousedown($event)\"\n ></slate-editable>\n <the-inline-toolbar *ngIf=\"!theOptions?.readonly\" [editor]=\"editor\" [toolbarItems]=\"toolbarEntity.inline\"></the-inline-toolbar>\n <div #quickInsert theQuickInsert [editor]=\"editor\" [quickToolbarItems]=\"quickToolbarItems\"></div>\n <div #placeholder thePlaceholder [editor]=\"editor\" [options]=\"theOptions\"></div>\n <the-template #templateInstance></the-template>\n</div>\n", components: [{ type: TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "fontSize", "containerClass", "isMore", "afterTemplate"] }, { type: i1.SlateEditableComponent, selector: "slate-editable", inputs: ["editor", "renderElement", "renderLeaf", "renderText", "decorate", "placeholderDecorate", "isStrictDecorate", "trackBy", "readonly", "placeholder", "beforeInput", "blur", "click", "compositionEnd", "compositionStart", "copy", "cut", "dragOver", "dragStart", "dragEnd", "drop", "focus", "keydown", "paste", "spellCheck", "autoCorrect", "autoCapitalize"] }, { type: TheInlineToolbarComponent, selector: "the-inline-toolbar", inputs: ["editor", "toolbarItems"] }, { type: TheQuickInsertComponent, selector: "[theQuickInsert]", inputs: ["editor", "quickToolbarItems"] }, { type: ThePlaceholderComponent, selector: "div[thePlaceholder]", inputs: ["editor", "options"] }, { type: TheTemplateComponent, selector: "the-template,[theTemplate]" }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i4$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
11933
12118
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheEditorComponent, decorators: [{
|
|
11934
12119
|
type: Component,
|
|
11935
12120
|
args: [{
|
|
@@ -12093,7 +12278,7 @@ class TheToolbarGroupComponent {
|
|
|
12093
12278
|
}
|
|
12094
12279
|
}
|
|
12095
12280
|
TheToolbarGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarGroupComponent, deps: [{ token: i0.ElementRef }, { token: i1$3.ThyPopover }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
12096
|
-
TheToolbarGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheToolbarGroupComponent, selector: "the-toolbar-group", inputs: { menus: "menus", item: "item" }, host: { listeners: { "mousedown": "mousedownHandler($event)", "click": "clickHandle($event)" }, classAttribute: "the-toolbar-group" }, viewQueries: [{ propertyName: "groupTemplate", first: true, predicate: ["groupTemplate"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<a thyIconNavLink [thyIconNavLinkIcon]=\"item.icon\" [thyTooltip]=\"item?.name\" thyTooltipPlacement=\"top\" [thyIconNavLinkActive]=\"active\"></a>\n\n<ng-template #groupTemplate>\n <the-toolbar class=\"group\" [editor]=\"editor\" [toolbarItems]=\"menus\" [isMore]=\"false\"></the-toolbar>\n</ng-template>\n", components: [{ type:
|
|
12281
|
+
TheToolbarGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.7", type: TheToolbarGroupComponent, selector: "the-toolbar-group", inputs: { menus: "menus", item: "item" }, host: { listeners: { "mousedown": "mousedownHandler($event)", "click": "clickHandle($event)" }, classAttribute: "the-toolbar-group" }, viewQueries: [{ propertyName: "groupTemplate", first: true, predicate: ["groupTemplate"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<a thyIconNavLink [thyIconNavLinkIcon]=\"item.icon\" [thyTooltip]=\"item?.name\" thyTooltipPlacement=\"top\" [thyIconNavLinkActive]=\"active\"></a>\n\n<ng-template #groupTemplate>\n <the-toolbar class=\"group\" [editor]=\"editor\" [toolbarItems]=\"menus\" [isMore]=\"false\"></the-toolbar>\n</ng-template>\n", components: [{ type: i3.ThyIconNavLinkComponent, selector: "[thyIconNavLink]", inputs: ["thyIconNavLinkIcon", "thyIconNavLinkActive"] }, { type: TheToolbarComponent, selector: "the-toolbar", inputs: ["editor", "toolbarItems", "align", "fontSize", "containerClass", "isMore", "afterTemplate"] }], directives: [{ type: i5$1.ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }] });
|
|
12097
12282
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheToolbarGroupComponent, decorators: [{
|
|
12098
12283
|
type: Component,
|
|
12099
12284
|
args: [{
|
|
@@ -12133,7 +12318,9 @@ const TETHYS = [
|
|
|
12133
12318
|
ThySelectModule,
|
|
12134
12319
|
ThyButtonModule,
|
|
12135
12320
|
ThyNotifyModule,
|
|
12136
|
-
ThyAlertModule
|
|
12321
|
+
ThyAlertModule,
|
|
12322
|
+
ThyResizableModule,
|
|
12323
|
+
ThySwitchModule
|
|
12137
12324
|
];
|
|
12138
12325
|
const COMPONENTS = [
|
|
12139
12326
|
TheToolbarComponent,
|
|
@@ -12227,7 +12414,9 @@ TheEditorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
|
|
|
12227
12414
|
ThySelectModule,
|
|
12228
12415
|
ThyButtonModule,
|
|
12229
12416
|
ThyNotifyModule,
|
|
12230
|
-
ThyAlertModule,
|
|
12417
|
+
ThyAlertModule,
|
|
12418
|
+
ThyResizableModule,
|
|
12419
|
+
ThySwitchModule, CodemirrorModule, TheColumnSizeModule], exports: [TheEditorComponent, TheToolbarComponent, TheToolbarDropdownComponent, TheToolbarItemComponent, TheDefaultElementComponent] });
|
|
12231
12420
|
TheEditorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.7", ngImport: i0, type: TheEditorModule, providers: [
|
|
12232
12421
|
{
|
|
12233
12422
|
provide: TheToolbarGroupToken,
|
|
@@ -12260,5 +12449,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.7", ngImpor
|
|
|
12260
12449
|
* Generated bundle index. Do not edit.
|
|
12261
12450
|
*/
|
|
12262
12451
|
|
|
12263
|
-
export { ALIGN_BLOCK_TYPES, A_TAG_REL_ATTR, AlignEditor, Alignment, BLOCK_DELETEBACKWARD_TYPES, BlockquoteEditor, CLIPBOARD_FORMAT_KEY, CODEMIRROR_PADDING_TOP, CODE_MODES, COMPONENTS, CONTAINER_BLOCKS, CONTROL_KEY, CodeEditor, CodeMode, ColorEditor, DEFAULT_LANGUAGE, DEFAULT_SCROLL_CONTAINER, DefaultElementOptions, DefaultGlobalToolbarDefinition, DefaultInlineToolbarDefinition, DefaultQuickToolbarDefinition, DropdownMode, ELEMENT_UNIQUE_ID, ElementKinds, ErrorCodes, HEADING_TYPES, HeadingEditor, HrEditor, IS_MAC, ImageEditor, LINK_DEFAULT_TEXT, LIST_BLOCK_TYPES, LinkEditor, ListEditor, MarkEditor, MarkProps, MarkTypes, PICTURE_ACCEPTED_UPLOAD_MIME, PICTURE_ACCEPTED_UPLOAD_SIZE, PLUGIN_COMPONENTS, QUICK_TOOLBAR_HOTKEY, QuickInsertEditor, STANDARD_HEADING_TYPES, TAB_SPACE, THE_CODE_MODE_PROVIDER, THE_CODE_MODE_TOKEN, THE_EDITOR_CONVERSION_HINT_REF, THE_EDITOR_QUICK_TOOLBAR_REF, THE_EDITOR_UUID, THE_INLINE_TOOLBAR_TYPES, THE_UPLOAD_SERVICE_TOKEN, TableEditor, TheBaseElementComponent,
|
|
12452
|
+
export { ALIGN_BLOCK_TYPES, A_TAG_REL_ATTR, AlignEditor, Alignment, BLOCK_DELETEBACKWARD_TYPES, BlockquoteEditor, CLIPBOARD_FORMAT_KEY, CODEMIRROR_PADDING_TOP, CODE_MODES, COMPONENTS, CONTAINER_BLOCKS, CONTROL_KEY, CodeEditor, CodeMode, ColorEditor, DEFAULT_LANGUAGE, DEFAULT_SCROLL_CONTAINER, DefaultElementOptions, DefaultGlobalToolbarDefinition, DefaultInlineToolbarDefinition, DefaultQuickToolbarDefinition, DropdownMode, ELEMENT_UNIQUE_ID, ElementKinds, ErrorCodes, FontSizeTypes, FontSizes, HEADING_TYPES, HeadingEditor, HrEditor, IS_MAC, ImageEditor, LINK_DEFAULT_TEXT, LIST_BLOCK_TYPES, LinkEditor, ListEditor, MarkEditor, MarkProps, MarkTypes, PICTURE_ACCEPTED_UPLOAD_MIME, PICTURE_ACCEPTED_UPLOAD_SIZE, PLUGIN_COMPONENTS, QUICK_TOOLBAR_HOTKEY, QuickInsertEditor, STANDARD_HEADING_TYPES, TAB_SPACE, THE_CODE_MODE_PROVIDER, THE_CODE_MODE_TOKEN, THE_EDITOR_CONVERSION_HINT_REF, THE_EDITOR_QUICK_TOOLBAR_REF, THE_EDITOR_UUID, THE_INLINE_TOOLBAR_TYPES, THE_UPLOAD_SERVICE_TOKEN, TableEditor, TheBaseElementComponent, TheCodeConfig, TheContextService, TheDataMode, TheDefaultElementComponent, TheEditor, TheEditorComponent, TheEditorModule, TheImageComponent, TheMode, index$1 as TheQueries, TheToolbarBaseItemComponent, TheToolbarComponent, TheToolbarDropdownComponent, TheToolbarGroupComponent, TheToolbarGroupToken, TheToolbarItemComponent, TheToolbarService, index as TheTransforms, TodoItemEditor, ToolbarActionTypes, ToolbarAlignment, ToolbarItemMode, ToolbarItemType, ToolbarMoreGroup, VOID_BLOCK_TYPES, VerticalAlignEditor, VerticalAlignment, createEmptyParagraph, dataDeserialize, dataSerializing, getToolbarClass, htmlToTheia, inValidTypes, plainToTheia, toolbarCompose, withTheEditor };
|
|
12264
12453
|
//# sourceMappingURL=worktile-theia.js.map
|