@worktile/theia 18.0.0-next.0 → 18.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/text/text.component.d.ts +1 -4
- package/esm2022/components/text/text.component.mjs +7 -8
- package/esm2022/interfaces/image.mjs +2 -2
- package/esm2022/plugins/blockquote/blockquote.component.mjs +3 -8
- package/esm2022/plugins/code/code.component.mjs +24 -26
- package/esm2022/plugins/hr/hr.component.mjs +3 -8
- package/esm2022/plugins/image/image.component.mjs +27 -21
- package/esm2022/plugins/image/image.editor.mjs +6 -3
- package/esm2022/plugins/link/link.component.mjs +16 -18
- package/esm2022/plugins/link/link.plugin.mjs +5 -5
- package/esm2022/plugins/list/components/bulleted-list.component.mjs +3 -8
- package/esm2022/plugins/list/components/list-item.component.mjs +3 -8
- package/esm2022/plugins/list/components/numbered-list.component.mjs +5 -7
- package/esm2022/plugins/table/components/row/row.component.mjs +7 -9
- package/esm2022/plugins/table/components/table.component.mjs +5 -5
- package/esm2022/plugins/table/components/td/td.component.mjs +20 -23
- package/esm2022/plugins/todo-item/todo-item.component.mjs +10 -12
- package/fesm2022/worktile-theia.mjs +127 -150
- package/fesm2022/worktile-theia.mjs.map +1 -1
- package/interfaces/editor.d.ts +7 -7
- package/interfaces/image.d.ts +7 -4
- package/package.json +2 -2
- package/plugins/blockquote/blockquote.component.d.ts +0 -4
- package/plugins/code/code.component.d.ts +7 -13
- package/plugins/hr/hr.component.d.ts +1 -4
- package/plugins/image/image.component.d.ts +4 -4
- package/plugins/link/link.component.d.ts +4 -8
- package/plugins/list/components/bulleted-list.component.d.ts +1 -4
- package/plugins/list/components/list-item.component.d.ts +1 -4
- package/plugins/list/components/numbered-list.component.d.ts +2 -4
- package/plugins/table/components/row/row.component.d.ts +2 -5
- package/plugins/table/components/table.component.d.ts +1 -1
- package/plugins/table/components/td/td.component.d.ts +7 -10
- package/plugins/todo-item/todo-item.component.d.ts +1 -4
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { NgIf, NgFor, NgStyle, NgTemplateOutlet, NgClass, DOCUMENT } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { InjectionToken, Component, Directive, Input, HostBinding, ViewChild, HostListener, ViewContainerRef, Inject, TemplateRef, ChangeDetectionStrategy, Optional, SkipSelf, ContentChildren, forwardRef, EventEmitter, inject, NgZone, ElementRef, DestroyRef, Output, Pipe, Injectable, ChangeDetectorRef, Renderer2, viewChild, ViewChildren, NgModule } from '@angular/core';
|
|
3
|
+
import { InjectionToken, Component, Directive, Input, HostBinding, ViewChild, HostListener, ViewContainerRef, Inject, TemplateRef, ChangeDetectionStrategy, Optional, SkipSelf, ContentChildren, forwardRef, EventEmitter, inject, NgZone, ElementRef, DestroyRef, Output, Pipe, Injectable, ChangeDetectorRef, Renderer2, viewChild, ViewChildren, Injector, NgModule } from '@angular/core';
|
|
4
4
|
import { ThyDivider } from 'ngx-tethys/divider';
|
|
5
5
|
import { ThyAction, ThyActions } from 'ngx-tethys/action';
|
|
6
6
|
import { ThyDropdownMenuItemDirective, ThyDropdownMenuDivider, ThyDropdownMenuItemNameDirective, ThyDropdownMenuItemIconDirective, ThyDropdownMenuItemActiveDirective, ThyDropdownDirective, ThyDropdownMenuComponent, ThyDropdownMenuGroup, ThyDropdownMenuItemExtendIconDirective } from 'ngx-tethys/dropdown';
|
|
7
|
-
import * as i2$
|
|
7
|
+
import * as i2$5 from 'ngx-tethys/icon';
|
|
8
8
|
import { ThyIcon, ThyIconRegistry } from 'ngx-tethys/icon';
|
|
9
9
|
import { cloneDeep, map, assign, defaults, groupBy, uniq, isEqual } from 'lodash';
|
|
10
10
|
export { assign, cloneDeep, debounce, defaults, groupBy, isEqual, map, uniq } from 'lodash';
|
|
@@ -17,7 +17,7 @@ import { isObject, isArray, isString, isUndefined } from 'ngx-tethys/util';
|
|
|
17
17
|
import * as i1 from 'ngx-tethys/popover';
|
|
18
18
|
import { ThyPopover, ThyPopoverRef, ThyPopoverDirective, ThyPopoverModule } from 'ngx-tethys/popover';
|
|
19
19
|
import * as i2 from '@angular/cdk/overlay';
|
|
20
|
-
import { Overlay } from '@angular/cdk/overlay';
|
|
20
|
+
import { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';
|
|
21
21
|
import { ThyTooltipDirective, THY_TOOLTIP_DEFAULT_CONFIG_PROVIDER, ThyTooltipModule } from 'ngx-tethys/tooltip';
|
|
22
22
|
import { DOWN_ARROW, UP_ARROW, RIGHT_ARROW, LEFT_ARROW, ENTER } from '@angular/cdk/keycodes';
|
|
23
23
|
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
@@ -37,21 +37,22 @@ import { ThyColorPickerDirective } from 'ngx-tethys/color-picker';
|
|
|
37
37
|
import { ThyInputNumber } from 'ngx-tethys/input-number';
|
|
38
38
|
import { ThyEnterDirective, ThyStopPropagationDirective, ThyAutofocusDirective } from 'ngx-tethys/shared';
|
|
39
39
|
import { coerceCssPixelValue } from '@angular/cdk/coercion';
|
|
40
|
-
import * as i1$
|
|
40
|
+
import * as i1$1 from 'ngx-tethys/image';
|
|
41
41
|
import { ThyImageService, ThyImageDirective, ThyImageGroup } from 'ngx-tethys/image';
|
|
42
|
-
import * as
|
|
42
|
+
import * as i2$3 from 'ng-codemirror';
|
|
43
43
|
import { CodeMirrorComponent, CodemirrorModule } from 'ng-codemirror';
|
|
44
|
+
import * as i2$4 from 'ngx-tethys/notify';
|
|
45
|
+
import { ThyNotifyService } from 'ngx-tethys/notify';
|
|
44
46
|
import { ThyResizableDirective, ThyResizeHandle } from 'ngx-tethys/resizable';
|
|
45
47
|
import { ThySwitch } from 'ngx-tethys/switch';
|
|
46
|
-
import * as i1$1 from 'ngx-tethys/notify';
|
|
47
48
|
import { ThyProgress } from 'ngx-tethys/progress';
|
|
48
49
|
import { ThyUploadStatus } from 'ngx-tethys/upload';
|
|
49
50
|
import getUrls from 'get-urls';
|
|
50
51
|
import { ThyButton } from 'ngx-tethys/button';
|
|
51
52
|
import { ThyFormDirective, ThyFormGroup, ThyFormSubmitDirective, ThyFormGroupFooter } from 'ngx-tethys/form';
|
|
52
53
|
import { PortalInjector, ComponentPortal } from '@angular/cdk/portal';
|
|
53
|
-
import * as i1$
|
|
54
|
-
import * as i2$
|
|
54
|
+
import * as i1$2 from '@angular/platform-browser';
|
|
55
|
+
import * as i2$6 from '@angular/common/http';
|
|
55
56
|
|
|
56
57
|
const PICTURE_ACCEPTED_UPLOAD_MIME = ['image/png', 'image/jpeg', 'image/gif', 'image/bmp', 'image/svg+xml'];
|
|
57
58
|
const PICTURE_ACCEPTED_UPLOAD_SIZE = 50;
|
|
@@ -1796,7 +1797,7 @@ const THE_MODE_PROVIDER = {
|
|
|
1796
1797
|
}
|
|
1797
1798
|
};
|
|
1798
1799
|
|
|
1799
|
-
const
|
|
1800
|
+
const THE_IMAGE_SERVICE_TOKEN = new InjectionToken('THE_IMAGE_SERVICE_TOKEN');
|
|
1800
1801
|
|
|
1801
1802
|
const ThePluginMenu = {
|
|
1802
1803
|
isMenuGroup(value) {
|
|
@@ -5950,9 +5951,12 @@ const ImageEditor = {
|
|
|
5950
5951
|
file: new File([blob], `${new Date().getTime()}.${ext}`, { type: contentType })
|
|
5951
5952
|
});
|
|
5952
5953
|
},
|
|
5954
|
+
// TODO: 需要考虑如何处理
|
|
5955
|
+
// 1. 从 HTML 粘贴识别数据时走这个处理流程,但是会被判定为是 PingCode 自己的资源,不会走重新上传流程
|
|
5956
|
+
// 2. 直接粘贴 json 时不走这个流程无法重新上传,跨团队图片会无法识别
|
|
5953
5957
|
handleExternalImageElement(editor, image) {
|
|
5954
5958
|
const contextService = editor.injector.get(TheContextService);
|
|
5955
|
-
const imageUploaderService = editor.injector.get(
|
|
5959
|
+
const imageUploaderService = editor.injector.get(THE_IMAGE_SERVICE_TOKEN);
|
|
5956
5960
|
const isExternalUrl = image?.hasOwnProperty('externalUrl')
|
|
5957
5961
|
? image?.externalUrl
|
|
5958
5962
|
: imageUploaderService.isExternalUrl?.(image.thumbUrl);
|
|
@@ -7404,12 +7408,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
7404
7408
|
}] } });
|
|
7405
7409
|
|
|
7406
7410
|
class TheText extends BaseTextComponent {
|
|
7407
|
-
constructor(
|
|
7408
|
-
super(
|
|
7409
|
-
this.elementRef = elementRef;
|
|
7410
|
-
this.renderer2 = renderer2;
|
|
7411
|
+
constructor() {
|
|
7412
|
+
super(...arguments);
|
|
7411
7413
|
this.excludes = ['color', 'font-size', 'background-color', 'text'];
|
|
7412
7414
|
this.attributes = [];
|
|
7415
|
+
this.renderer2 = inject(Renderer2);
|
|
7413
7416
|
}
|
|
7414
7417
|
onContextChange() {
|
|
7415
7418
|
super.onContextChange();
|
|
@@ -7442,7 +7445,7 @@ class TheText extends BaseTextComponent {
|
|
|
7442
7445
|
this.renderer2.removeStyle(this.elementRef.nativeElement, 'background-color');
|
|
7443
7446
|
}
|
|
7444
7447
|
}
|
|
7445
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheText, deps:
|
|
7448
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheText, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
7446
7449
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheText, isStandalone: true, selector: "span[theText]", host: { attributes: { "data-slate-node": "text" } }, usesInheritance: true, ngImport: i0, template: ``, isInline: true }); }
|
|
7447
7450
|
}
|
|
7448
7451
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheText, decorators: [{
|
|
@@ -7455,7 +7458,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
7455
7458
|
},
|
|
7456
7459
|
standalone: true
|
|
7457
7460
|
}]
|
|
7458
|
-
}]
|
|
7461
|
+
}] });
|
|
7459
7462
|
|
|
7460
7463
|
class TheInlineToolbar {
|
|
7461
7464
|
constructor(elementRef, scrollDispatcher, cdr, ngZone, contextService) {
|
|
@@ -8618,12 +8621,7 @@ const createAutoFormatPlugin = createPluginFactory({
|
|
|
8618
8621
|
});
|
|
8619
8622
|
|
|
8620
8623
|
class TheBlockquote extends TheBaseElement {
|
|
8621
|
-
|
|
8622
|
-
super(elementRef, cdr);
|
|
8623
|
-
this.elementRef = elementRef;
|
|
8624
|
-
this.cdr = cdr;
|
|
8625
|
-
}
|
|
8626
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBlockquote, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8624
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBlockquote, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
8627
8625
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheBlockquote, isStandalone: true, selector: "blockquote[theBlockquote]", usesInheritance: true, ngImport: i0, template: ``, isInline: true }); }
|
|
8628
8626
|
}
|
|
8629
8627
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBlockquote, decorators: [{
|
|
@@ -8633,7 +8631,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
8633
8631
|
template: ``,
|
|
8634
8632
|
standalone: true
|
|
8635
8633
|
}]
|
|
8636
|
-
}]
|
|
8634
|
+
}] });
|
|
8637
8635
|
|
|
8638
8636
|
const withBlockquote = (editor) => {
|
|
8639
8637
|
const { renderElement, deleteBackward, insertBreak, isContainer } = editor;
|
|
@@ -8711,21 +8709,8 @@ const createBlockquotePlugin = createPluginFactory({
|
|
|
8711
8709
|
});
|
|
8712
8710
|
|
|
8713
8711
|
class TheCode extends TheBaseElement {
|
|
8714
|
-
|
|
8715
|
-
|
|
8716
|
-
}
|
|
8717
|
-
get isToolbarOpen() {
|
|
8718
|
-
return this.toolbarPopoverRef && this.toolbarPopoverRef.getOverlayRef() && this.toolbarPopoverRef.getOverlayRef().hasAttached();
|
|
8719
|
-
}
|
|
8720
|
-
constructor(elementRef, cdr, thyNotifyService, contextService, ngZone, thyPopover, overlay) {
|
|
8721
|
-
super(elementRef, cdr);
|
|
8722
|
-
this.elementRef = elementRef;
|
|
8723
|
-
this.cdr = cdr;
|
|
8724
|
-
this.thyNotifyService = thyNotifyService;
|
|
8725
|
-
this.contextService = contextService;
|
|
8726
|
-
this.ngZone = ngZone;
|
|
8727
|
-
this.thyPopover = thyPopover;
|
|
8728
|
-
this.overlay = overlay;
|
|
8712
|
+
constructor() {
|
|
8713
|
+
super(...arguments);
|
|
8729
8714
|
this.startRenderCodemirror = false;
|
|
8730
8715
|
this.dropdownMode = DropdownMode;
|
|
8731
8716
|
this.maxHeight = 0;
|
|
@@ -8746,12 +8731,23 @@ class TheCode extends TheBaseElement {
|
|
|
8746
8731
|
};
|
|
8747
8732
|
this.activeLanguage = this.menus[0];
|
|
8748
8733
|
this.resizeBounds = null;
|
|
8734
|
+
this.thyNotifyService = inject(ThyNotifyService);
|
|
8735
|
+
this.contextService = inject(TheContextService);
|
|
8736
|
+
this.ngZone = inject(NgZone);
|
|
8737
|
+
this.thyPopover = inject(ThyPopover);
|
|
8738
|
+
this.overlay = inject(Overlay);
|
|
8749
8739
|
this.onChangeLanguage = item => {
|
|
8750
8740
|
this.options = { ...this.options, mode: item.key };
|
|
8751
8741
|
this.activeLanguage = item;
|
|
8752
8742
|
CodeEditor.setCodeAttribute(this.editor, { language: item.key }, this.element);
|
|
8753
8743
|
};
|
|
8754
8744
|
}
|
|
8745
|
+
get code() {
|
|
8746
|
+
return this.element.content;
|
|
8747
|
+
}
|
|
8748
|
+
get isToolbarOpen() {
|
|
8749
|
+
return this.toolbarPopoverRef && this.toolbarPopoverRef.getOverlayRef() && this.toolbarPopoverRef.getOverlayRef().hasAttached();
|
|
8750
|
+
}
|
|
8755
8751
|
onContextChange() {
|
|
8756
8752
|
super.onContextChange();
|
|
8757
8753
|
if (this.isCollapsedAndNonReadonly && !isMobileMode(this.editor)) {
|
|
@@ -8916,8 +8912,8 @@ class TheCode extends TheBaseElement {
|
|
|
8916
8912
|
this.destroy$.next();
|
|
8917
8913
|
this.destroy$.complete();
|
|
8918
8914
|
}
|
|
8919
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheCode, deps:
|
|
8920
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheCode, isStandalone: true, selector: "div[theCode]", host: { classAttribute: "the-code-container" }, viewQueries: [{ propertyName: "toolbar", first: true, predicate: ["toolbar"], descendants: true, read: TemplateRef, static: true }, { propertyName: "codemirror", first: true, predicate: ["codemirror"], descendants: true, read: CodeMirrorComponent }, { propertyName: "toolbarDropdown", first: true, predicate: TheToolbarDropdown, descendants: true, read: TheToolbarDropdown }], usesInheritance: true, ngImport: i0, template: "<!-- \u53EA\u8BFB\u6A21\u5F0F\u4E0BCodeMirror-sizer\u9AD8\u5EA6\u6BD4\u7F16\u8F91\u6A21\u5F0F\u4E0B\u591A2px\uFF0C\u8BBE\u7F6EthyMinHeight\u4E3A46px\u9632\u6B62\u62D6\u62FD\u5230\u6700\u5C0F\u9AD8\u5EA6\u65F6\u53EA\u8BFB\u6A21\u5F0F\u4E0B\u51FA\u73B0\u6EDA\u52A8\u6761 -->\n<div\n thyResizable\n [thyMinHeight]=\"46\"\n [thyBounds]=\"resizeBounds\"\n [style.height.px]=\"resizeHeight\"\n (thyResize)=\"onResize($event)\"\n (thyResizeEnd)=\"onEndResize()\"\n class=\"resize-code-container\"\n [ngClass]=\"{ focus: isCollapsedAndNonReadonly, readonly: options.readOnly, active: isHightLight && isCollapsedAndNonReadonly }\"\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=\"isCollapsedAndNonReadonly\"></thy-resize-handle>\n</div>\n\n<ng-template #toolbar>\n <thy-actions thySize=\"xxs\" thePreventDefault>\n <the-toolbar-dropdown\n [menus]=\"menus\"\n [toolbarItem]=\"activeLanguage\"\n [dropdownItemKey]=\"activeLanguage?.key\"\n [itemMousedownHandle]=\"onChangeLanguage\"\n >\n </the-toolbar-dropdown>\n <span class=\"auto-wrap d-flex align-items-center px-2 text-secondary\">\n <span>\u81EA\u52A8\u6362\u884C</span>\n <thy-switch\n class=\"auto-wrap-btn d-flex ml-1\"\n [(ngModel)]=\"options.lineWrapping\"\n (ngModelChange)=\"onChangeWrap($event)\"\n thySize=\"sm\"\n ></thy-switch>\n </span>\n <a href=\"javascript:;\" thyAction thyActionIcon=\"copy\" thyTooltip=\"\u590D\u5236\" thyTooltipPlacement=\"top\" (click)=\"onCopy($event)\"></a>\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyType=\"danger\"\n thyActionIcon=\"trash\"\n thyTooltip=\"\u5220\u9664\"\n thyTooltipPlacement=\"top\"\n (click)=\"onDelete($event)\"\n ></a>\n </thy-actions>\n</ng-template>\n", dependencies: [{ kind: "directive", type: ThyResizableDirective, selector: "[thyResizable]", inputs: ["thyBounds", "thyMaxHeight", "thyMaxWidth", "thyMinHeight", "thyMinWidth", "thyGridColumnCount", "thyMaxColumn", "thyMinColumn", "thyLockAspectRatio", "thyPreview", "thyDisabled"], outputs: ["thyResize", "thyResizeStart", "thyResizeEnd"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SlateModule }, { kind: "ngmodule", type: CodemirrorModule }, { kind: "component", type:
|
|
8915
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheCode, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
8916
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheCode, isStandalone: true, selector: "div[theCode]", host: { classAttribute: "the-code-container" }, viewQueries: [{ propertyName: "toolbar", first: true, predicate: ["toolbar"], descendants: true, read: TemplateRef, static: true }, { propertyName: "codemirror", first: true, predicate: ["codemirror"], descendants: true, read: CodeMirrorComponent }, { propertyName: "toolbarDropdown", first: true, predicate: TheToolbarDropdown, descendants: true, read: TheToolbarDropdown }], usesInheritance: true, ngImport: i0, template: "<!-- \u53EA\u8BFB\u6A21\u5F0F\u4E0BCodeMirror-sizer\u9AD8\u5EA6\u6BD4\u7F16\u8F91\u6A21\u5F0F\u4E0B\u591A2px\uFF0C\u8BBE\u7F6EthyMinHeight\u4E3A46px\u9632\u6B62\u62D6\u62FD\u5230\u6700\u5C0F\u9AD8\u5EA6\u65F6\u53EA\u8BFB\u6A21\u5F0F\u4E0B\u51FA\u73B0\u6EDA\u52A8\u6761 -->\n<div\n thyResizable\n [thyMinHeight]=\"46\"\n [thyBounds]=\"resizeBounds\"\n [style.height.px]=\"resizeHeight\"\n (thyResize)=\"onResize($event)\"\n (thyResizeEnd)=\"onEndResize()\"\n class=\"resize-code-container\"\n [ngClass]=\"{ focus: isCollapsedAndNonReadonly, readonly: options.readOnly, active: isHightLight && isCollapsedAndNonReadonly }\"\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=\"isCollapsedAndNonReadonly\"></thy-resize-handle>\n</div>\n\n<ng-template #toolbar>\n <thy-actions thySize=\"xxs\" thePreventDefault>\n <the-toolbar-dropdown\n [menus]=\"menus\"\n [toolbarItem]=\"activeLanguage\"\n [dropdownItemKey]=\"activeLanguage?.key\"\n [itemMousedownHandle]=\"onChangeLanguage\"\n >\n </the-toolbar-dropdown>\n <span class=\"auto-wrap d-flex align-items-center px-2 text-secondary\">\n <span>\u81EA\u52A8\u6362\u884C</span>\n <thy-switch\n class=\"auto-wrap-btn d-flex ml-1\"\n [(ngModel)]=\"options.lineWrapping\"\n (ngModelChange)=\"onChangeWrap($event)\"\n thySize=\"sm\"\n ></thy-switch>\n </span>\n <a href=\"javascript:;\" thyAction thyActionIcon=\"copy\" thyTooltip=\"\u590D\u5236\" thyTooltipPlacement=\"top\" (click)=\"onCopy($event)\"></a>\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyType=\"danger\"\n thyActionIcon=\"trash\"\n thyTooltip=\"\u5220\u9664\"\n thyTooltipPlacement=\"top\"\n (click)=\"onDelete($event)\"\n ></a>\n </thy-actions>\n</ng-template>\n", dependencies: [{ kind: "directive", type: ThyResizableDirective, selector: "[thyResizable]", inputs: ["thyBounds", "thyMaxHeight", "thyMaxWidth", "thyMinHeight", "thyMinWidth", "thyGridColumnCount", "thyMaxColumn", "thyMinColumn", "thyLockAspectRatio", "thyPreview", "thyDisabled"], outputs: ["thyResize", "thyResizeStart", "thyResizeEnd"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: SlateModule }, { kind: "ngmodule", type: CodemirrorModule }, { kind: "component", type: i2$3.CodeMirrorComponent, selector: "ng-codemirror, [ngCodeMirror]", inputs: ["autoMaxHeight", "options", "delayRefreshTime"], outputs: ["focusChange"] }, { kind: "component", type: ThySwitch, selector: "thy-switch", inputs: ["thyType", "thySize", "thyDisabled", "thyLoading"], outputs: ["thyChange"] }, { kind: "component", type: ThyAction, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "component", type: ThyDivider, selector: "thy-divider", inputs: ["thyVertical", "thyStyle", "thyColor", "thyText", "thyTextDirection", "thyDeeper"] }, { kind: "component", type: ThyActions, selector: "thy-actions", inputs: ["thySize"] }, { kind: "directive", type: ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { kind: "component", type: ThyResizeHandle, selector: "thy-resize-handle, [thy-resize-handle]", inputs: ["thyDirection", "thyLine"], outputs: ["thyMouseDown"], exportAs: ["thyResizeHandle"] }, { kind: "component", type: TheToolbarDropdown, selector: "the-toolbar-dropdown" }, { kind: "directive", type: ThePreventDefaultDirective, selector: "[thePreventDefault]", exportAs: ["thePreventDefault"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
8921
8917
|
}
|
|
8922
8918
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheCode, decorators: [{
|
|
8923
8919
|
type: Component,
|
|
@@ -8942,7 +8938,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
8942
8938
|
TheToolbarDropdown,
|
|
8943
8939
|
ThePreventDefaultDirective
|
|
8944
8940
|
], template: "<!-- \u53EA\u8BFB\u6A21\u5F0F\u4E0BCodeMirror-sizer\u9AD8\u5EA6\u6BD4\u7F16\u8F91\u6A21\u5F0F\u4E0B\u591A2px\uFF0C\u8BBE\u7F6EthyMinHeight\u4E3A46px\u9632\u6B62\u62D6\u62FD\u5230\u6700\u5C0F\u9AD8\u5EA6\u65F6\u53EA\u8BFB\u6A21\u5F0F\u4E0B\u51FA\u73B0\u6EDA\u52A8\u6761 -->\n<div\n thyResizable\n [thyMinHeight]=\"46\"\n [thyBounds]=\"resizeBounds\"\n [style.height.px]=\"resizeHeight\"\n (thyResize)=\"onResize($event)\"\n (thyResizeEnd)=\"onEndResize()\"\n class=\"resize-code-container\"\n [ngClass]=\"{ focus: isCollapsedAndNonReadonly, readonly: options.readOnly, active: isHightLight && isCollapsedAndNonReadonly }\"\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=\"isCollapsedAndNonReadonly\"></thy-resize-handle>\n</div>\n\n<ng-template #toolbar>\n <thy-actions thySize=\"xxs\" thePreventDefault>\n <the-toolbar-dropdown\n [menus]=\"menus\"\n [toolbarItem]=\"activeLanguage\"\n [dropdownItemKey]=\"activeLanguage?.key\"\n [itemMousedownHandle]=\"onChangeLanguage\"\n >\n </the-toolbar-dropdown>\n <span class=\"auto-wrap d-flex align-items-center px-2 text-secondary\">\n <span>\u81EA\u52A8\u6362\u884C</span>\n <thy-switch\n class=\"auto-wrap-btn d-flex ml-1\"\n [(ngModel)]=\"options.lineWrapping\"\n (ngModelChange)=\"onChangeWrap($event)\"\n thySize=\"sm\"\n ></thy-switch>\n </span>\n <a href=\"javascript:;\" thyAction thyActionIcon=\"copy\" thyTooltip=\"\u590D\u5236\" thyTooltipPlacement=\"top\" (click)=\"onCopy($event)\"></a>\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyType=\"danger\"\n thyActionIcon=\"trash\"\n thyTooltip=\"\u5220\u9664\"\n thyTooltipPlacement=\"top\"\n (click)=\"onDelete($event)\"\n ></a>\n </thy-actions>\n</ng-template>\n" }]
|
|
8945
|
-
}],
|
|
8941
|
+
}], propDecorators: { toolbar: [{
|
|
8946
8942
|
type: ViewChild,
|
|
8947
8943
|
args: ['toolbar', { read: TemplateRef, static: true }]
|
|
8948
8944
|
}], codemirror: [{
|
|
@@ -10067,11 +10063,6 @@ const createHeadingPlugin = createPluginFactory({
|
|
|
10067
10063
|
});
|
|
10068
10064
|
|
|
10069
10065
|
class TheHr extends TheBaseElement {
|
|
10070
|
-
constructor(elementRef, cdr) {
|
|
10071
|
-
super(elementRef, cdr);
|
|
10072
|
-
this.elementRef = elementRef;
|
|
10073
|
-
this.cdr = cdr;
|
|
10074
|
-
}
|
|
10075
10066
|
ngAfterViewInit() {
|
|
10076
10067
|
setTimeout(() => {
|
|
10077
10068
|
const blockCardElement = this.nativeElement.closest('slate-block-card');
|
|
@@ -10080,7 +10071,7 @@ class TheHr extends TheBaseElement {
|
|
|
10080
10071
|
}
|
|
10081
10072
|
});
|
|
10082
10073
|
}
|
|
10083
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheHr, deps:
|
|
10074
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheHr, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
10084
10075
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheHr, isStandalone: true, selector: "the-hr, [theHr]", usesInheritance: true, ngImport: i0, template: `
|
|
10085
10076
|
<div class="the-hr" contenteditable="false" [ngClass]="{ active: isCollapsedAndNonReadonly }">
|
|
10086
10077
|
<hr class="the-hr" />
|
|
@@ -10101,7 +10092,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
10101
10092
|
standalone: true,
|
|
10102
10093
|
imports: [NgClass, SlateChildrenOutlet]
|
|
10103
10094
|
}]
|
|
10104
|
-
}]
|
|
10095
|
+
}] });
|
|
10105
10096
|
|
|
10106
10097
|
const withHr = (editor) => {
|
|
10107
10098
|
const { isVoid, isBlockCard, renderElement } = editor;
|
|
@@ -10162,12 +10153,11 @@ class TheImage extends TheBaseElement {
|
|
|
10162
10153
|
? this.layoutDefaultWidth
|
|
10163
10154
|
: currentWidth;
|
|
10164
10155
|
}
|
|
10165
|
-
constructor(
|
|
10166
|
-
super(
|
|
10167
|
-
this.elementRef = elementRef;
|
|
10156
|
+
constructor(cdr, imageGroup, imageService, theContextService, thyPopover, overlay, destroyRef) {
|
|
10157
|
+
super();
|
|
10168
10158
|
this.cdr = cdr;
|
|
10169
10159
|
this.imageGroup = imageGroup;
|
|
10170
|
-
this.
|
|
10160
|
+
this.imageService = imageService;
|
|
10171
10161
|
this.theContextService = theContextService;
|
|
10172
10162
|
this.thyPopover = thyPopover;
|
|
10173
10163
|
this.overlay = overlay;
|
|
@@ -10226,21 +10216,28 @@ class TheImage extends TheBaseElement {
|
|
|
10226
10216
|
if (value.element !== this.element && value.element.thumbUrl) {
|
|
10227
10217
|
let thumbUrl = value.element.thumbUrl;
|
|
10228
10218
|
let originUrl = value.element.originUrl;
|
|
10229
|
-
if (this.
|
|
10230
|
-
|
|
10231
|
-
|
|
10219
|
+
if (this.imageService.getImageUrl) {
|
|
10220
|
+
this.imageService.getImageUrl(value.element).subscribe(({ thumbUrl, originUrl }) => {
|
|
10221
|
+
this.buildImageEntry(value.element, thumbUrl, originUrl);
|
|
10222
|
+
this.cdr.markForCheck();
|
|
10223
|
+
});
|
|
10224
|
+
}
|
|
10225
|
+
else {
|
|
10226
|
+
this.buildImageEntry(value.element, thumbUrl, originUrl);
|
|
10232
10227
|
}
|
|
10233
|
-
this.imageEntry = {
|
|
10234
|
-
...value.element,
|
|
10235
|
-
thumbUrl,
|
|
10236
|
-
originUrl,
|
|
10237
|
-
align: value.element.align || Alignment.left,
|
|
10238
|
-
reSized: value.element.reSized || false
|
|
10239
|
-
};
|
|
10240
10228
|
this.setBlockCardLayoutAttr();
|
|
10241
10229
|
}
|
|
10242
10230
|
};
|
|
10243
10231
|
}
|
|
10232
|
+
buildImageEntry(newElement, thumbUrl, originUrl) {
|
|
10233
|
+
this.imageEntry = {
|
|
10234
|
+
...newElement,
|
|
10235
|
+
thumbUrl,
|
|
10236
|
+
originUrl,
|
|
10237
|
+
align: newElement.align || Alignment.left,
|
|
10238
|
+
reSized: newElement.reSized || false
|
|
10239
|
+
};
|
|
10240
|
+
}
|
|
10244
10241
|
ngOnInit() {
|
|
10245
10242
|
super.ngOnInit();
|
|
10246
10243
|
this.setImageFileItem();
|
|
@@ -10292,7 +10289,7 @@ class TheImage extends TheBaseElement {
|
|
|
10292
10289
|
this.theContextService.onMouseUp$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(e => this.endDrag(e));
|
|
10293
10290
|
}
|
|
10294
10291
|
subscribeImageUploadingState() {
|
|
10295
|
-
this.uploadingSubscription = this.
|
|
10292
|
+
this.uploadingSubscription = this.imageService
|
|
10296
10293
|
.getUploadingItems$()
|
|
10297
10294
|
.pipe(map$1(fileUploadingItem => this.fileItem?.file &&
|
|
10298
10295
|
fileUploadingItem.find(item => item.file === this.fileItem?.file || item?.url === this.fileItem?.file)))
|
|
@@ -10327,7 +10324,7 @@ class TheImage extends TheBaseElement {
|
|
|
10327
10324
|
};
|
|
10328
10325
|
}
|
|
10329
10326
|
this.theContextService.uploadingStatus$.next(true);
|
|
10330
|
-
const [fileEntity] = await firstValueFrom(this.
|
|
10327
|
+
const [fileEntity] = await firstValueFrom(this.imageService.uploadFileHandle(file));
|
|
10331
10328
|
const { name, size, thumbUrl, originUrl } = fileEntity;
|
|
10332
10329
|
const imageInfo = {
|
|
10333
10330
|
name,
|
|
@@ -10554,7 +10551,7 @@ class TheImage extends TheBaseElement {
|
|
|
10554
10551
|
});
|
|
10555
10552
|
}
|
|
10556
10553
|
}
|
|
10557
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheImage, deps: [{ token: i0.
|
|
10554
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheImage, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.ThyImageGroup }, { token: THE_IMAGE_SERVICE_TOKEN }, { token: TheContextService }, { token: i1.ThyPopover }, { token: i2.Overlay }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10558
10555
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheImage, isStandalone: true, selector: "the-image, [theImage]", providers: [ThyImageService], viewQueries: [{ propertyName: "imageContent", first: true, predicate: ["imageContent"], descendants: true }, { propertyName: "img", first: true, predicate: ["img"], descendants: true }, { propertyName: "layoutToolbar", first: true, predicate: ["layoutToolbar"], descendants: true, static: true }, { propertyName: "imageDirective", first: true, predicate: ThyImageDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"the-image-container\" contenteditable=\"false\" [style.textAlign]=\"imageEntry.align\">\n <div\n #imageContent\n *ngIf=\"imageEntry.thumbUrl; else imageLoading\"\n class=\"image-content\"\n contenteditable=\"false\"\n [class.cursor-pointer]=\"!selection\"\n >\n <img\n #img\n thyImage\n class=\"main-image\"\n [class.image-collapsed]=\"selection && !uploading\"\n [ngStyle]=\"{ 'width.px': imageBindingWidth }\"\n [alt]=\"imageEntry.name\"\n [thySrc]=\"imageEntry.thumbUrl\"\n [thyPreviewSrc]=\"imageEntry.thumbUrl\"\n [thyOriginSrc]=\"imageEntry.originUrl\"\n [thyDisablePreview]=\"disablePreview\"\n [thyImageMeta]=\"{ name: imageEntry.name, size: imageEntry.size }\"\n (load)=\"imageLoaded($event)\"\n (mousedown)=\"preventDefault($event)\"\n (error)=\"imageError($event)\"\n (click)=\"imageClick($event)\"\n />\n <div *ngIf=\"isCollapsedAndNonReadonly\" class=\"image-profile\" [class.outline]=\"selection\">\n <ng-container *ngIf=\"!loadImageError\">\n <span (mousedown)=\"startDrag($event, '-xl')\" class=\"image-pointer left top\"></span>\n <span (mousedown)=\"startDrag($event, 'xl')\" class=\"image-pointer right top\"></span>\n <span (mousedown)=\"startDrag($event, 'xl')\" class=\"image-pointer right bottom\"></span>\n <span (mousedown)=\"startDrag($event, '-xl')\" class=\"image-pointer left bottom\"></span>\n </ng-container>\n </div>\n <ng-template [ngTemplateOutlet]=\"imageUploading\"></ng-template>\n <div *ngIf=\"!uploading\" class=\"layer\" [class.readonly]=\"readonly\"></div>\n </div>\n</div>\n\n<ng-template #imageLoading>\n <div *ngIf=\"!imageEntry.thumbUrl\" class=\"image-loading cursor-pointer\" contenteditable=\"false\">\n <thy-icon thyIconName=\"image\"></thy-icon>\n </div>\n <ng-template [ngTemplateOutlet]=\"imageUploading\"></ng-template>\n</ng-template>\n\n<ng-template #layoutToolbar>\n <thy-actions thySize=\"xxs\">\n <ng-container *ngFor=\"let item of layoutOptions\">\n <a\n *ngIf=\"item.key !== 'split'\"\n href=\"javascript:;\"\n thyAction\n [thyType]=\"item.key === 'remove' ? 'danger' : 'primary'\"\n [thyActionIcon]=\"item.icon\"\n [thyActionActive]=\"layoutActive(item.key)\"\n [thyTooltip]=\"item.name\"\n thyTooltipPlacement=\"top\"\n (mousedown)=\"item?.handle($event, item.key)\"\n ></a>\n <thy-divider *ngIf=\"item.key === 'split'\" class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n </ng-container>\n </thy-actions>\n</ng-template>\n\n<ng-template #imageUploading>\n <div *ngIf=\"uploading\" class=\"uploading\">\n <div class=\"uploading-percentage\">\n <thy-progress thyType=\"primary\" [thyValue]=\"percentage\" thySize=\"sm\"></thy-progress>\n <thy-icon (click)=\"cancelUpload($event)\" thyIconName=\"close-circle-bold-fill\" thyIconLegging=\"true\"> </thy-icon>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: ThyImageDirective, selector: "img[thyImage]", inputs: ["thySrc", "thyPreviewSrc", "thyOriginSrc", "thyImageMeta", "thyDisablePreview", "thyResolveSize"], exportAs: ["thyImage"] }, { kind: "component", type: ThyAction, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "component", type: ThyDivider, selector: "thy-divider", inputs: ["thyVertical", "thyStyle", "thyColor", "thyText", "thyTextDirection", "thyDeeper"] }, { kind: "component", type: ThyActions, selector: "thy-actions", inputs: ["thySize"] }, { kind: "directive", type: ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { kind: "component", type: ThyProgress, selector: "thy-progress", inputs: ["thyType", "thySize", "thyValue", "thyMax", "thyTips", "thyShape", "thyGapDegree", "thyGapPosition", "thyStrokeWidth"] }] }); }
|
|
10559
10556
|
}
|
|
10560
10557
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheImage, decorators: [{
|
|
@@ -10572,9 +10569,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
10572
10569
|
ThyTooltipDirective,
|
|
10573
10570
|
ThyProgress
|
|
10574
10571
|
], providers: [ThyImageService], template: "<div class=\"the-image-container\" contenteditable=\"false\" [style.textAlign]=\"imageEntry.align\">\n <div\n #imageContent\n *ngIf=\"imageEntry.thumbUrl; else imageLoading\"\n class=\"image-content\"\n contenteditable=\"false\"\n [class.cursor-pointer]=\"!selection\"\n >\n <img\n #img\n thyImage\n class=\"main-image\"\n [class.image-collapsed]=\"selection && !uploading\"\n [ngStyle]=\"{ 'width.px': imageBindingWidth }\"\n [alt]=\"imageEntry.name\"\n [thySrc]=\"imageEntry.thumbUrl\"\n [thyPreviewSrc]=\"imageEntry.thumbUrl\"\n [thyOriginSrc]=\"imageEntry.originUrl\"\n [thyDisablePreview]=\"disablePreview\"\n [thyImageMeta]=\"{ name: imageEntry.name, size: imageEntry.size }\"\n (load)=\"imageLoaded($event)\"\n (mousedown)=\"preventDefault($event)\"\n (error)=\"imageError($event)\"\n (click)=\"imageClick($event)\"\n />\n <div *ngIf=\"isCollapsedAndNonReadonly\" class=\"image-profile\" [class.outline]=\"selection\">\n <ng-container *ngIf=\"!loadImageError\">\n <span (mousedown)=\"startDrag($event, '-xl')\" class=\"image-pointer left top\"></span>\n <span (mousedown)=\"startDrag($event, 'xl')\" class=\"image-pointer right top\"></span>\n <span (mousedown)=\"startDrag($event, 'xl')\" class=\"image-pointer right bottom\"></span>\n <span (mousedown)=\"startDrag($event, '-xl')\" class=\"image-pointer left bottom\"></span>\n </ng-container>\n </div>\n <ng-template [ngTemplateOutlet]=\"imageUploading\"></ng-template>\n <div *ngIf=\"!uploading\" class=\"layer\" [class.readonly]=\"readonly\"></div>\n </div>\n</div>\n\n<ng-template #imageLoading>\n <div *ngIf=\"!imageEntry.thumbUrl\" class=\"image-loading cursor-pointer\" contenteditable=\"false\">\n <thy-icon thyIconName=\"image\"></thy-icon>\n </div>\n <ng-template [ngTemplateOutlet]=\"imageUploading\"></ng-template>\n</ng-template>\n\n<ng-template #layoutToolbar>\n <thy-actions thySize=\"xxs\">\n <ng-container *ngFor=\"let item of layoutOptions\">\n <a\n *ngIf=\"item.key !== 'split'\"\n href=\"javascript:;\"\n thyAction\n [thyType]=\"item.key === 'remove' ? 'danger' : 'primary'\"\n [thyActionIcon]=\"item.icon\"\n [thyActionActive]=\"layoutActive(item.key)\"\n [thyTooltip]=\"item.name\"\n thyTooltipPlacement=\"top\"\n (mousedown)=\"item?.handle($event, item.key)\"\n ></a>\n <thy-divider *ngIf=\"item.key === 'split'\" class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n </ng-container>\n </thy-actions>\n</ng-template>\n\n<ng-template #imageUploading>\n <div *ngIf=\"uploading\" class=\"uploading\">\n <div class=\"uploading-percentage\">\n <thy-progress thyType=\"primary\" [thyValue]=\"percentage\" thySize=\"sm\"></thy-progress>\n <thy-icon (click)=\"cancelUpload($event)\" thyIconName=\"close-circle-bold-fill\" thyIconLegging=\"true\"> </thy-icon>\n </div>\n </div>\n</ng-template>\n" }]
|
|
10575
|
-
}], ctorParameters: () => [{ type: i0.
|
|
10572
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1$1.ThyImageGroup }, { type: undefined, decorators: [{
|
|
10576
10573
|
type: Inject,
|
|
10577
|
-
args: [
|
|
10574
|
+
args: [THE_IMAGE_SERVICE_TOKEN]
|
|
10578
10575
|
}] }, { type: TheContextService }, { type: i1.ThyPopover }, { type: i2.Overlay }, { type: i0.DestroyRef }], propDecorators: { imageContent: [{
|
|
10579
10576
|
type: ViewChild,
|
|
10580
10577
|
args: ['imageContent']
|
|
@@ -10998,18 +10995,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
10998
10995
|
}] } });
|
|
10999
10996
|
|
|
11000
10997
|
class TheBaseLink extends TheBaseElement {
|
|
11001
|
-
|
|
11002
|
-
|
|
11003
|
-
|
|
11004
|
-
|
|
11005
|
-
return this.thyPopoverEditRef && this.thyPopoverEditRef.componentInstance;
|
|
11006
|
-
}
|
|
11007
|
-
constructor(elementRef, cdr, thyPopover, overlay) {
|
|
11008
|
-
super(elementRef, cdr);
|
|
11009
|
-
this.elementRef = elementRef;
|
|
11010
|
-
this.cdr = cdr;
|
|
11011
|
-
this.thyPopover = thyPopover;
|
|
11012
|
-
this.overlay = overlay;
|
|
10998
|
+
constructor() {
|
|
10999
|
+
super(...arguments);
|
|
11000
|
+
this.thyPopover = inject(ThyPopover);
|
|
11001
|
+
this.overlay = inject(Overlay);
|
|
11013
11002
|
this.beforeContextChange = (value) => {
|
|
11014
11003
|
if (this.thyPopoverEditRef && this.thyPopoverEditRef.componentInstance) {
|
|
11015
11004
|
let { originText } = this.thyPopoverEditRef.componentInstance;
|
|
@@ -11019,6 +11008,12 @@ class TheBaseLink extends TheBaseElement {
|
|
|
11019
11008
|
}
|
|
11020
11009
|
};
|
|
11021
11010
|
}
|
|
11011
|
+
get linkHoverOpened() {
|
|
11012
|
+
return this.thyPopoverHoverRef && this.thyPopoverHoverRef.componentInstance;
|
|
11013
|
+
}
|
|
11014
|
+
get linkEditOpened() {
|
|
11015
|
+
return this.thyPopoverEditRef && this.thyPopoverEditRef.componentInstance;
|
|
11016
|
+
}
|
|
11022
11017
|
ngOnInit() {
|
|
11023
11018
|
super.ngOnInit();
|
|
11024
11019
|
}
|
|
@@ -11113,7 +11108,7 @@ class TheBaseLink extends TheBaseElement {
|
|
|
11113
11108
|
super.ngOnDestroy();
|
|
11114
11109
|
this.close(LinkCloseTypes.destroy);
|
|
11115
11110
|
}
|
|
11116
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBaseLink, deps:
|
|
11111
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBaseLink, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11117
11112
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheBaseLink, selector: "ng-component", host: { listeners: { "click": "mousedownHandle($event)" } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
11118
11113
|
}
|
|
11119
11114
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBaseLink, decorators: [{
|
|
@@ -11121,7 +11116,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
11121
11116
|
args: [{
|
|
11122
11117
|
template: ''
|
|
11123
11118
|
}]
|
|
11124
|
-
}],
|
|
11119
|
+
}], propDecorators: { mousedownHandle: [{
|
|
11125
11120
|
type: HostListener,
|
|
11126
11121
|
args: ['click', ['$event']]
|
|
11127
11122
|
}] } });
|
|
@@ -11176,7 +11171,7 @@ const withLink = (editor) => {
|
|
|
11176
11171
|
const clipboardData = await getClipboardData(data);
|
|
11177
11172
|
const text = clipboardData?.text;
|
|
11178
11173
|
if (!clipboardData?.elements && text && isUrl(text)) {
|
|
11179
|
-
const urls = Array.from(getUrls(text, { stripWWW: false }));
|
|
11174
|
+
const urls = Array.from(getUrls(text, { stripWWW: false, sortQueryParameters: false }));
|
|
11180
11175
|
if (urls.length) {
|
|
11181
11176
|
let str = cloneDeep(text);
|
|
11182
11177
|
urls.forEach((url, index) => {
|
|
@@ -11240,18 +11235,13 @@ class TheBulletedList extends TheBaseElement {
|
|
|
11240
11235
|
get level() {
|
|
11241
11236
|
return this.element?.indent || null;
|
|
11242
11237
|
}
|
|
11243
|
-
constructor(elementRef, cdr) {
|
|
11244
|
-
super(elementRef, cdr);
|
|
11245
|
-
this.elementRef = elementRef;
|
|
11246
|
-
this.cdr = cdr;
|
|
11247
|
-
}
|
|
11248
11238
|
ngOnInit() {
|
|
11249
11239
|
super.ngOnInit();
|
|
11250
11240
|
}
|
|
11251
11241
|
ngOnDestroy() {
|
|
11252
11242
|
super.ngOnDestroy();
|
|
11253
11243
|
}
|
|
11254
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBulletedList, deps:
|
|
11244
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBulletedList, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11255
11245
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheBulletedList, isStandalone: true, selector: "ul[theUl]", host: { properties: { "attr.the-level": "this.level" } }, usesInheritance: true, ngImport: i0, template: ``, isInline: true }); }
|
|
11256
11246
|
}
|
|
11257
11247
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheBulletedList, decorators: [{
|
|
@@ -11261,17 +11251,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
11261
11251
|
template: ``,
|
|
11262
11252
|
standalone: true
|
|
11263
11253
|
}]
|
|
11264
|
-
}],
|
|
11254
|
+
}], propDecorators: { level: [{
|
|
11265
11255
|
type: HostBinding,
|
|
11266
11256
|
args: ['attr.the-level']
|
|
11267
11257
|
}] } });
|
|
11268
11258
|
|
|
11269
11259
|
class TheListItem extends TheBaseElement {
|
|
11270
|
-
constructor(elementRef, cdr) {
|
|
11271
|
-
super(elementRef, cdr);
|
|
11272
|
-
this.elementRef = elementRef;
|
|
11273
|
-
this.cdr = cdr;
|
|
11274
|
-
}
|
|
11275
11260
|
ngOnInit() {
|
|
11276
11261
|
super.ngOnInit();
|
|
11277
11262
|
}
|
|
@@ -11341,7 +11326,7 @@ class TheListItem extends TheBaseElement {
|
|
|
11341
11326
|
this.elementRef.nativeElement.removeAttribute(multiDigit);
|
|
11342
11327
|
}
|
|
11343
11328
|
}
|
|
11344
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheListItem, deps:
|
|
11329
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheListItem, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
11345
11330
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheListItem, isStandalone: true, selector: "li[theLi]", usesInheritance: true, ngImport: i0, template: ``, isInline: true }); }
|
|
11346
11331
|
}
|
|
11347
11332
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheListItem, decorators: [{
|
|
@@ -11351,7 +11336,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
11351
11336
|
template: ``,
|
|
11352
11337
|
standalone: true
|
|
11353
11338
|
}]
|
|
11354
|
-
}]
|
|
11339
|
+
}] });
|
|
11355
11340
|
|
|
11356
11341
|
class TheNumberedList extends TheBaseElement {
|
|
11357
11342
|
get start() {
|
|
@@ -11360,10 +11345,8 @@ class TheNumberedList extends TheBaseElement {
|
|
|
11360
11345
|
get level() {
|
|
11361
11346
|
return this.element?.indent || null;
|
|
11362
11347
|
}
|
|
11363
|
-
constructor(
|
|
11364
|
-
super(
|
|
11365
|
-
this.elementRef = elementRef;
|
|
11366
|
-
this.cdr = cdr;
|
|
11348
|
+
constructor() {
|
|
11349
|
+
super();
|
|
11367
11350
|
}
|
|
11368
11351
|
ngOnInit() {
|
|
11369
11352
|
super.ngOnInit();
|
|
@@ -11371,7 +11354,7 @@ class TheNumberedList extends TheBaseElement {
|
|
|
11371
11354
|
ngOnDestroy() {
|
|
11372
11355
|
super.ngOnDestroy();
|
|
11373
11356
|
}
|
|
11374
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheNumberedList, deps: [
|
|
11357
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheNumberedList, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11375
11358
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheNumberedList, isStandalone: true, selector: "ol[theOl]", host: { properties: { "attr.start": "this.start", "attr.the-level": "this.level" } }, usesInheritance: true, ngImport: i0, template: ``, isInline: true }); }
|
|
11376
11359
|
}
|
|
11377
11360
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheNumberedList, decorators: [{
|
|
@@ -11381,7 +11364,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
11381
11364
|
template: ``,
|
|
11382
11365
|
standalone: true
|
|
11383
11366
|
}]
|
|
11384
|
-
}], ctorParameters: () => [
|
|
11367
|
+
}], ctorParameters: () => [], propDecorators: { start: [{
|
|
11385
11368
|
type: HostBinding,
|
|
11386
11369
|
args: ['attr.start']
|
|
11387
11370
|
}], level: [{
|
|
@@ -12699,13 +12682,11 @@ const createSoftBreakPlugin = createPluginFactory({
|
|
|
12699
12682
|
});
|
|
12700
12683
|
|
|
12701
12684
|
class TheTableRow extends TheBaseElement {
|
|
12702
|
-
constructor(
|
|
12703
|
-
super(
|
|
12704
|
-
this.elementRef = elementRef;
|
|
12705
|
-
this.cdr = cdr;
|
|
12706
|
-
this.renderer = renderer;
|
|
12685
|
+
constructor() {
|
|
12686
|
+
super(...arguments);
|
|
12707
12687
|
this.numberedColumn = false;
|
|
12708
12688
|
this.rowNumber = '';
|
|
12689
|
+
this.renderer = inject(Renderer2);
|
|
12709
12690
|
}
|
|
12710
12691
|
onContextChange() {
|
|
12711
12692
|
super.onContextChange();
|
|
@@ -12758,7 +12739,7 @@ class TheTableRow extends TheBaseElement {
|
|
|
12758
12739
|
}
|
|
12759
12740
|
}
|
|
12760
12741
|
}
|
|
12761
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTableRow, deps:
|
|
12742
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTableRow, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
12762
12743
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheTableRow, isStandalone: true, selector: "tr[theTableRow]", host: { properties: { "style.height": "this.height" } }, viewQueries: [{ propertyName: "numberedColumnRef", first: true, predicate: ["numberedColumn"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
12763
12744
|
<td #numberedColumn *ngIf="readonly && numberedColumn" class="the-table-number-column align-middle" thePreventDefault>
|
|
12764
12745
|
{{ rowNumber }}
|
|
@@ -12777,7 +12758,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
12777
12758
|
standalone: true,
|
|
12778
12759
|
imports: [NgIf, ThePreventDefaultDirective]
|
|
12779
12760
|
}]
|
|
12780
|
-
}],
|
|
12761
|
+
}], propDecorators: { height: [{
|
|
12781
12762
|
type: HostBinding,
|
|
12782
12763
|
args: ['style.height']
|
|
12783
12764
|
}], numberedColumnRef: [{
|
|
@@ -13901,13 +13882,13 @@ class TheTableToolbar {
|
|
|
13901
13882
|
viewContainerRef: this.viewContainerRef
|
|
13902
13883
|
});
|
|
13903
13884
|
}
|
|
13904
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTableToolbar, deps: [{ token: i1.ThyPopover }, { token: i1.ThyPopoverRef }, { token:
|
|
13885
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTableToolbar, deps: [{ token: i1.ThyPopover }, { token: i1.ThyPopoverRef }, { token: i2$4.ThyNotifyService }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
13905
13886
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheTableToolbar, isStandalone: true, selector: "the-table-toolbar", inputs: { tableStore: "tableStore", tableElement: "tableElement" }, ngImport: i0, template: "<thy-actions thySize=\"xxs\" (mousedown)=\"preventDefault($event)\">\n <ng-container *ngFor=\"let item of cellMenuList\">\n <a\n *ngIf=\"item.visibility\"\n href=\"javascript:;\"\n thyAction\n [thyActionIcon]=\"item.icon\"\n [thyTooltip]=\"item.name\"\n (click)=\"item.actionHandle()\"\n ></a>\n </ng-container>\n <thy-divider *ngIf=\"hasDivider\" class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"> </thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyTooltip=\"\u5355\u5143\u683C\u80CC\u666F\"\n thyColorPicker\n [(ngModel)]=\"selectedColor\"\n (ngModelChange)=\"changeColor($event)\"\n (click)=\"openColorPanel($event)\"\n thyPlacement=\"bottomLeft\"\n [thyHasBackdrop]=\"false\"\n >\n <thy-icon thyIconName=\"background-tt\" thyIconType=\"twotone\" [thyTwotoneColor]=\"selectedColor\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && !isColumnEqual\"\n thyAction\n thyTooltip=\"\u5217\u7B49\u5BBD\"\n (click)=\"setEquallyColumnHandle($event)\"\n >\n <thy-icon thyIconName=\"table-column-equal-width\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && tableOptions?.showFullscreen\"\n thyAction\n thyTooltip=\"\u5168\u5C4F\"\n (click)=\"setFullscreen($event)\"\n >\n <thy-icon thyIconName=\"arrows-alt\"></thy-icon>\n </a>\n <a\n *ngIf=\"tableStore.isSelectedTable && !tableStore?.isFullscreen\"\n class=\"fullscreen-hidden\"\n href=\"javascript:;\"\n thyAction\n thyActionIcon=\"copy\"\n thyTooltip=\"\u590D\u5236\"\n (click)=\"onCopy($event)\"\n ></a>\n <ng-container *ngIf=\"tableStore.isSelectedTable\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n <a href=\"javascript:;\" class=\"link-with-down\" thyAction (mousedown)=\"preventDefault($event)\" (click)=\"openTableOptionMenu($event)\">\n <span>\u8868\u683C\u9009\u9879</span>\n <thy-icon class=\"font-size-sm text-desc ml-1\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n </ng-container>\n <ng-container *ngIf=\"tableStore?.isFullscreen ? deleteIcon && !tableStore.isSelectedTable : deleteIcon\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyType=\"danger\"\n [thyActionIcon]=\"deleteIcon\"\n [thyTooltip]=\"iconName\"\n (click)=\"onDelete($event)\"\n (mouseenter)=\"onEnterDelete($event)\"\n (mouseleave)=\"onLeaveDelete($event)\"\n ></a>\n </ng-container>\n</thy-actions>\n", dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "component", type: ThyAction, selector: "thy-action, [thyAction]", inputs: ["thyType", "thyIcon", "thyActionIcon", "thyActive", "thyActionActive", "thyTheme", "thyHoverIcon", "thyDisabled"] }, { kind: "component", type: ThyActions, selector: "thy-actions", inputs: ["thySize"] }, { kind: "directive", type: ThyTooltipDirective, selector: "[thyTooltip],[thy-tooltip]", inputs: ["thyTooltip", "thyTooltipPlacement", "thyTooltipClass", "thyTooltipShowDelay", "thyTooltipHideDelay", "thyTooltipTrigger", "thyTooltipDisabled", "thyTooltipTemplateContext", "thyTooltipOffset", "thyTooltipPin"], exportAs: ["thyTooltip"] }, { kind: "component", type: ThyDivider, selector: "thy-divider", inputs: ["thyVertical", "thyStyle", "thyColor", "thyText", "thyTextDirection", "thyDeeper"] }, { kind: "directive", type: ThyColorPickerDirective, selector: "[thyColorPicker]", inputs: ["thyOffset", "thyHasBackdrop", "thyDefaultColor", "thyTransparentColorSelectable", "thyPresetColors", "thyPlacement", "thyTrigger", "thyShowDelay", "thyHideDelay", "thyDisabled"], outputs: ["thyPanelOpen", "thyPanelClose"] }] }); }
|
|
13906
13887
|
}
|
|
13907
13888
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTableToolbar, decorators: [{
|
|
13908
13889
|
type: Component,
|
|
13909
13890
|
args: [{ selector: 'the-table-toolbar', standalone: true, imports: [NgFor, NgIf, FormsModule, ThyIcon, ThyAction, ThyActions, ThyTooltipDirective, ThyDivider, ThyColorPickerDirective], template: "<thy-actions thySize=\"xxs\" (mousedown)=\"preventDefault($event)\">\n <ng-container *ngFor=\"let item of cellMenuList\">\n <a\n *ngIf=\"item.visibility\"\n href=\"javascript:;\"\n thyAction\n [thyActionIcon]=\"item.icon\"\n [thyTooltip]=\"item.name\"\n (click)=\"item.actionHandle()\"\n ></a>\n </ng-container>\n <thy-divider *ngIf=\"hasDivider\" class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"> </thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyTooltip=\"\u5355\u5143\u683C\u80CC\u666F\"\n thyColorPicker\n [(ngModel)]=\"selectedColor\"\n (ngModelChange)=\"changeColor($event)\"\n (click)=\"openColorPanel($event)\"\n thyPlacement=\"bottomLeft\"\n [thyHasBackdrop]=\"false\"\n >\n <thy-icon thyIconName=\"background-tt\" thyIconType=\"twotone\" [thyTwotoneColor]=\"selectedColor\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && !isColumnEqual\"\n thyAction\n thyTooltip=\"\u5217\u7B49\u5BBD\"\n (click)=\"setEquallyColumnHandle($event)\"\n >\n <thy-icon thyIconName=\"table-column-equal-width\"></thy-icon>\n </a>\n <a\n href=\"javascript:;\"\n *ngIf=\"tableStore.isSelectedTable && tableOptions?.showFullscreen\"\n thyAction\n thyTooltip=\"\u5168\u5C4F\"\n (click)=\"setFullscreen($event)\"\n >\n <thy-icon thyIconName=\"arrows-alt\"></thy-icon>\n </a>\n <a\n *ngIf=\"tableStore.isSelectedTable && !tableStore?.isFullscreen\"\n class=\"fullscreen-hidden\"\n href=\"javascript:;\"\n thyAction\n thyActionIcon=\"copy\"\n thyTooltip=\"\u590D\u5236\"\n (click)=\"onCopy($event)\"\n ></a>\n <ng-container *ngIf=\"tableStore.isSelectedTable\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n <a href=\"javascript:;\" class=\"link-with-down\" thyAction (mousedown)=\"preventDefault($event)\" (click)=\"openTableOptionMenu($event)\">\n <span>\u8868\u683C\u9009\u9879</span>\n <thy-icon class=\"font-size-sm text-desc ml-1\" thyIconName=\"caret-down\"></thy-icon>\n </a>\n </ng-container>\n <ng-container *ngIf=\"tableStore?.isFullscreen ? deleteIcon && !tableStore.isSelectedTable : deleteIcon\">\n <thy-divider class=\"mr-2 ml-1 align-self-center\" [thyVertical]=\"true\" thyColor=\"light\"></thy-divider>\n <a\n href=\"javascript:;\"\n thyAction\n thyType=\"danger\"\n [thyActionIcon]=\"deleteIcon\"\n [thyTooltip]=\"iconName\"\n (click)=\"onDelete($event)\"\n (mouseenter)=\"onEnterDelete($event)\"\n (mouseleave)=\"onLeaveDelete($event)\"\n ></a>\n </ng-container>\n</thy-actions>\n" }]
|
|
13910
|
-
}], ctorParameters: () => [{ type: i1.ThyPopover }, { type: i1.ThyPopoverRef }, { type:
|
|
13891
|
+
}], ctorParameters: () => [{ type: i1.ThyPopover }, { type: i1.ThyPopoverRef }, { type: i2$4.ThyNotifyService }, { type: i0.ViewContainerRef }], propDecorators: { tableStore: [{
|
|
13911
13892
|
type: Input
|
|
13912
13893
|
}], tableElement: [{
|
|
13913
13894
|
type: Input
|
|
@@ -14330,8 +14311,8 @@ class TheTable extends TheBaseElement {
|
|
|
14330
14311
|
afterRowControlsUpdate() {
|
|
14331
14312
|
this.setTableHeaderStyle();
|
|
14332
14313
|
}
|
|
14333
|
-
constructor(
|
|
14334
|
-
super(
|
|
14314
|
+
constructor(eventDispatcher, resizeNotifier, tableStore, cdr, ngZone, tableService, theTableContextMenuService, freezeColumnPipe, freezeRowPipe, renderer, contextService, config) {
|
|
14315
|
+
super();
|
|
14335
14316
|
this.eventDispatcher = eventDispatcher;
|
|
14336
14317
|
this.resizeNotifier = resizeNotifier;
|
|
14337
14318
|
this.tableStore = tableStore;
|
|
@@ -15070,7 +15051,7 @@ class TheTable extends TheBaseElement {
|
|
|
15070
15051
|
this.destroy$.next();
|
|
15071
15052
|
this.destroy$.complete();
|
|
15072
15053
|
}
|
|
15073
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTable, deps: [{ token:
|
|
15054
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTable, deps: [{ token: TableCellEventDispatcher }, { token: ColumnResizeNotifierSource }, { token: TableStore }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: TableService }, { token: TheTableContextMenuService }, { token: TableFreezeColumnPipe }, { token: TableFreezeRowPipe }, { token: i0.Renderer2 }, { token: TheContextService }, { token: THE_MODE_TOKEN }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15074
15055
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheTable, isStandalone: true, selector: "ng-component", host: { properties: { "class.the-table-with-controls": "isInTable || tableStore.isRightClicking || tableStore.isFocusedInput", "class.the-table-with-sticky-column": "isFreezeColumn", "class.the-numbered-table": "element?.options?.numberedColumn", "class.the-table-selection-hide": "tableStore.isCellSelecting || tableStore.isRightClicking || tableStore.isFocusedInput" } }, providers: [
|
|
15075
15056
|
TableStore,
|
|
15076
15057
|
TableService,
|
|
@@ -15105,7 +15086,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
15105
15086
|
'[class.the-numbered-table]': 'element?.options?.numberedColumn',
|
|
15106
15087
|
'[class.the-table-selection-hide]': 'tableStore.isCellSelecting || tableStore.isRightClicking || tableStore.isFocusedInput'
|
|
15107
15088
|
}, standalone: true, imports: [NgClass, NgIf, NgFor, NgStyle, TheInsertMark, TheColumnResizeDirective, TableHasHeaderRowPipe], template: "<div class=\"the-table-container\" theColumnResize>\n <div #tableRowControlsWrapper class=\"the-table-row-controls-wrapper\">\n <div\n class=\"the-table-corner-controls\"\n #cornerControl\n contenteditable=\"false\"\n [ngClass]=\"{\n visible: !readonly && (isInTable || tableStore.isRightClicking || tableStore.isFocusedInput),\n 'control-active': isSelectedAllCell,\n dangerous: tableStore.isSelectedTable && tableStore.dangerousCells.length > 0\n }\"\n >\n <div class=\"the-table-corner-button\" (pointerdown)=\"onSelectTable($event)\"></div>\n <div class=\"the-table-corner-controls-insert-row-marker\" *ngIf=\"!(element | hasHeaderRow) && !isMobileMode\">\n <the-table-insert-mark type=\"row\" [at]=\"0\" [tableStore]=\"tableStore\"></the-table-insert-mark>\n </div>\n <div class=\"the-table-corner-controls-insert-column-marker\" *ngIf=\"!element?.options?.headerColumn && !isMobileMode\">\n <the-table-insert-mark type=\"column\" [at]=\"0\" [tableStore]=\"tableStore\"></the-table-insert-mark>\n </div>\n </div>\n <div class=\"the-table-row-controls\">\n <div class=\"the-table-row-controls-inner\" #rowControlsInner>\n <div\n class=\"the-table-row-control-button-wrap\"\n #rowControlsButtonWrapper\n contenteditable=\"false\"\n *ngFor=\"let control of rowControls; let i = index; trackBy: trackByFnRowControls\"\n [ngClass]=\"{\n 'control-active': tableStore.selectedRowsIndex.includes(control.rowIndex),\n dangerous: tableStore.dangerousRowsIndex.includes(control.rowIndex) && tableStore.dangerousCells.length > 0\n }\"\n >\n <ng-container\n *ngIf=\"!readonly && (isInTable || tableStore.isRightClicking || tableStore.isFocusedInput) && !element?.options?.numberedColumn\"\n >\n <button\n (pointerdown)=\"onRowMousedown($event, control.rowIndex)\"\n type=\"button\"\n contenteditable=\"false\"\n [ngStyle]=\"{ height: control.height + 1 + 'px' }\"\n class=\"the-table-row-controls-button the-table-controls-button\"\n ></button>\n </ng-container>\n <ng-container *ngIf=\"element?.options?.numberedColumn\">\n <div\n contenteditable=\"false\"\n (pointerdown)=\"onRowMousedown($event, control.rowIndex)\"\n class=\"the-table-numbered-controls-button\"\n [ngStyle]=\"{ height: control.height + 1 + 'px' }\"\n >\n <p class=\"row-number d-flex align-items-center\">\n {{ (element | hasHeaderRow) && i === 0 ? '' : (element | hasHeaderRow) ? i : i + 1 }}\n </p>\n </div>\n </ng-container>\n <the-table-insert-mark *ngIf=\"!isMobileMode\" type=\"row\" [at]=\"control.rowIndex + 1\" [tableStore]=\"tableStore\">\n </the-table-insert-mark>\n </div>\n </div>\n </div>\n </div>\n <div class=\"the-table-wrapper\" #tableWrapper [ngClass]=\"{ 'the-table-numbered': element?.options?.numberedColumn }\">\n <table class=\"the-table\" #theTable>\n <colgroup #colgroup>\n <!--\u63A7\u5236\u5E8F\u53F7\u5217\u5BBD\u5EA6-->\n <col *ngIf=\"readonly && element?.options?.numberedColumn\" class=\"the-table-number-col\" />\n <col *ngFor=\"let col of columns\" [ngStyle]=\"{ width: col.width + 'px' }\" />\n </colgroup>\n <thead>\n <tr class=\"the-table-col-controls-wrapper the-sticky-row\" #columnControlsWrapper>\n <th *ngIf=\"readonly && element?.options?.numberedColumn\" class=\"the-table-number-col\"></th>\n <th\n #colControl\n class=\"the-table-col-control\"\n contenteditable=\"false\"\n *ngFor=\"let control of colControls; let i = index; trackBy: trackByFnColControls\"\n [ngClass]=\"{\n 'control-active': tableStore.selectedColumnsIndex.includes(i),\n dangerous: tableStore.dangerousColumnsIndex.includes(i) && tableStore.dangerousCells.length > 0,\n 'the-sticky-cell': i === 0 && isFreezeColumn\n }\"\n (pointerdown)=\"onColMousedown($event, i)\"\n >\n <the-table-insert-mark\n *ngIf=\"(isInTable || tableStore.isRightClicking || tableStore.isFocusedInput) && !isMobileMode\"\n type=\"column\"\n [at]=\"i + 1\"\n [tableStore]=\"tableStore\"\n [parentElement]=\"colControl\"\n >\n </the-table-insert-mark>\n </th>\n </tr>\n </thead>\n <tbody #tbody></tbody>\n <div\n *ngIf=\"!element?.options?.headerColumn\"\n #headerRowLeftShadow\n class=\"header-row-shadow header-row-left-shadow\"\n contenteditable=\"false\"\n ></div>\n <div class=\"header-row-shadow header-row-right-shadow\" #headerRowRightShadow contenteditable=\"false\"></div>\n </table>\n </div>\n</div>\n" }]
|
|
15108
|
-
}], ctorParameters: () => [{ type:
|
|
15089
|
+
}], ctorParameters: () => [{ type: TableCellEventDispatcher }, { type: ColumnResizeNotifierSource }, { type: TableStore }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: TableService }, { type: TheTableContextMenuService }, { type: TableFreezeColumnPipe }, { type: TableFreezeRowPipe }, { type: i0.Renderer2 }, { type: TheContextService }, { type: TheModeConfig, decorators: [{
|
|
15109
15090
|
type: Inject,
|
|
15110
15091
|
args: [THE_MODE_TOKEN]
|
|
15111
15092
|
}] }], propDecorators: { tableWrapper: [{
|
|
@@ -15175,6 +15156,21 @@ const POSITION_MAP = {
|
|
|
15175
15156
|
}
|
|
15176
15157
|
};
|
|
15177
15158
|
class TheTd extends TheBaseElement {
|
|
15159
|
+
constructor() {
|
|
15160
|
+
super(...arguments);
|
|
15161
|
+
this.destroy$ = new Subject();
|
|
15162
|
+
this.tableOptions = new TableOptions();
|
|
15163
|
+
this.cellInnerMinHeight = null;
|
|
15164
|
+
this.getOutletParent = () => {
|
|
15165
|
+
return this.cellInner.nativeElement;
|
|
15166
|
+
};
|
|
15167
|
+
this.renderer = inject(Renderer2);
|
|
15168
|
+
this.ngZone = inject(NgZone);
|
|
15169
|
+
this.injector = inject(Injector);
|
|
15170
|
+
this.overlay = inject(Overlay);
|
|
15171
|
+
this.resizingStore = inject(ColumnResizingStore);
|
|
15172
|
+
this.scrollDispatcher = inject(ScrollDispatcher);
|
|
15173
|
+
}
|
|
15178
15174
|
get tableStore() {
|
|
15179
15175
|
return this.tableComponent?.tableStore;
|
|
15180
15176
|
}
|
|
@@ -15215,23 +15211,6 @@ class TheTd extends TheBaseElement {
|
|
|
15215
15211
|
this.useState();
|
|
15216
15212
|
}
|
|
15217
15213
|
}
|
|
15218
|
-
constructor(elementRef, cdr, renderer, ngZone, injector, overlay, resizingStore, scrollDispatcher) {
|
|
15219
|
-
super(elementRef, cdr);
|
|
15220
|
-
this.elementRef = elementRef;
|
|
15221
|
-
this.cdr = cdr;
|
|
15222
|
-
this.renderer = renderer;
|
|
15223
|
-
this.ngZone = ngZone;
|
|
15224
|
-
this.injector = injector;
|
|
15225
|
-
this.overlay = overlay;
|
|
15226
|
-
this.resizingStore = resizingStore;
|
|
15227
|
-
this.scrollDispatcher = scrollDispatcher;
|
|
15228
|
-
this.destroy$ = new Subject();
|
|
15229
|
-
this.tableOptions = new TableOptions();
|
|
15230
|
-
this.cellInnerMinHeight = null;
|
|
15231
|
-
this.getOutletParent = () => {
|
|
15232
|
-
return this.cellInner.nativeElement;
|
|
15233
|
-
};
|
|
15234
|
-
}
|
|
15235
15214
|
ngOnInit() {
|
|
15236
15215
|
super.ngOnInit();
|
|
15237
15216
|
this.isMobileMode = isMobileMode(this.editor);
|
|
@@ -15709,13 +15688,13 @@ class TheTd extends TheBaseElement {
|
|
|
15709
15688
|
this.destroy$.next();
|
|
15710
15689
|
this.destroy$.complete();
|
|
15711
15690
|
}
|
|
15712
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTd, deps:
|
|
15691
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTd, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
15713
15692
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheTd, isStandalone: true, 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, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<div #cellInner></div>\n" }); }
|
|
15714
15693
|
}
|
|
15715
15694
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTd, decorators: [{
|
|
15716
15695
|
type: Component,
|
|
15717
15696
|
args: [{ selector: 'td[theTd]', standalone: true, providers: [ColumnResizingStore], template: "<div #cellInner></div>\n" }]
|
|
15718
|
-
}],
|
|
15697
|
+
}], propDecorators: { cellInner: [{
|
|
15719
15698
|
type: ViewChild,
|
|
15720
15699
|
args: ['cellInner', { read: ElementRef, static: true }]
|
|
15721
15700
|
}], backgroundColor: [{
|
|
@@ -16412,6 +16391,13 @@ const createTablePlugin = createPluginFactory({
|
|
|
16412
16391
|
});
|
|
16413
16392
|
|
|
16414
16393
|
class TheTodoItem extends TheBaseElement {
|
|
16394
|
+
constructor() {
|
|
16395
|
+
super(...arguments);
|
|
16396
|
+
this.checkItemClass = true;
|
|
16397
|
+
this.getOutletParent = () => {
|
|
16398
|
+
return this.childrenOutlet.nativeElement;
|
|
16399
|
+
};
|
|
16400
|
+
}
|
|
16415
16401
|
get checkItemSelectable() {
|
|
16416
16402
|
return this.editableWithReadonly && this.readonly;
|
|
16417
16403
|
}
|
|
@@ -16421,15 +16407,6 @@ class TheTodoItem extends TheBaseElement {
|
|
|
16421
16407
|
get editableWithReadonly() {
|
|
16422
16408
|
return getPluginOptions(this.editor, PluginKeys.checkItem)?.editableWithReadonly;
|
|
16423
16409
|
}
|
|
16424
|
-
constructor(elementRef, cdr) {
|
|
16425
|
-
super(elementRef, cdr);
|
|
16426
|
-
this.elementRef = elementRef;
|
|
16427
|
-
this.cdr = cdr;
|
|
16428
|
-
this.checkItemClass = true;
|
|
16429
|
-
this.getOutletParent = () => {
|
|
16430
|
-
return this.childrenOutlet.nativeElement;
|
|
16431
|
-
};
|
|
16432
|
-
}
|
|
16433
16410
|
ngOnInit() {
|
|
16434
16411
|
super.ngOnInit();
|
|
16435
16412
|
}
|
|
@@ -16439,7 +16416,7 @@ class TheTodoItem extends TheBaseElement {
|
|
|
16439
16416
|
}
|
|
16440
16417
|
setNode(this.editor, { checked }, this.element);
|
|
16441
16418
|
}
|
|
16442
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTodoItem, deps:
|
|
16419
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheTodoItem, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
16443
16420
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheTodoItem, isStandalone: true, selector: "div[theTodoItem]", host: { properties: { "class.the-check-item": "this.checkItemClass", "class.the-todo-item-selectable": "this.checkItemSelectable", "attr.the-level": "this.level" } }, viewQueries: [{ propertyName: "childrenOutlet", first: true, predicate: ["childrenOutlet"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: `
|
|
16444
16421
|
<span contenteditable="false" class="todo-item-status">
|
|
16445
16422
|
<input #checkbox type="checkbox" [checked]="element.checked" (click)="onCheck(checkbox.checked)" />
|
|
@@ -16459,7 +16436,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
16459
16436
|
`,
|
|
16460
16437
|
standalone: true
|
|
16461
16438
|
}]
|
|
16462
|
-
}],
|
|
16439
|
+
}], propDecorators: { checkItemClass: [{
|
|
16463
16440
|
type: HostBinding,
|
|
16464
16441
|
args: ['class.the-check-item']
|
|
16465
16442
|
}], checkItemSelectable: [{
|
|
@@ -17005,7 +16982,7 @@ class TheEditorComponent {
|
|
|
17005
16982
|
event.preventDefault();
|
|
17006
16983
|
return;
|
|
17007
16984
|
}
|
|
17008
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheEditorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.DestroyRef }, { token: i0.ElementRef }, { token: i0.Injector }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: TheContextService }, { token: i2$
|
|
16985
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: TheEditorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.DestroyRef }, { token: i0.ElementRef }, { token: i0.Injector }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: TheContextService }, { token: i2$5.ThyIconRegistry }, { token: THE_PRESET_CONFIG_TOKEN, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17009
16986
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: TheEditorComponent, isStandalone: true, selector: "the-editor, theEditor", inputs: { theOptions: "theOptions", thePlugins: "thePlugins", theGlobalToolbar: "theGlobalToolbar", theDecorate: "theDecorate", theOnError: "theOnError" }, outputs: { theOnSave: "theOnSave", theOnDOMEvent: "theOnDOMEvent", theEditorCreated: "theEditorCreated", theUploadingStatus: "theUploadingStatus" }, host: { properties: { "class.the-editor-readonly": "editor.options?.readonly", "class.the-mobile-editor": "isMobileMode" }, classAttribute: "the-editor" }, providers: [
|
|
17010
16987
|
TheContextService,
|
|
17011
16988
|
{
|
|
@@ -17048,7 +17025,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
17048
17025
|
multi: true
|
|
17049
17026
|
}
|
|
17050
17027
|
], template: "<the-toolbar\n *ngIf=\"!options?.readonly && !theGlobalToolbar && !isMobileMode\"\n [ngClass]=\"{\n 'the-toolbar-disabled': options?.disabled\n }\"\n #globalToolbar\n [editor]=\"editor\"\n [toolbarItems]=\"toolbarEntity.global\"\n [containerClass]=\"globalToolbarClass\"\n [align]=\"options?.toolbar?.align\"\n></the-toolbar>\n\n<div\n #theEditableContainer\n class=\"the-editable-container\"\n thyImageGroup\n [ngClass]=\"{\n 'the-editor-disabled': options?.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 [renderElement]=\"renderElement\"\n [renderText]=\"renderText\"\n [renderLeaf]=\"renderLeaf\"\n [isStrictDecorate]=\"false\"\n [decorate]=\"decorate\"\n [placeholder]=\"options?.placeholder\"\n [placeholderDecorate]=\"options?.placeholderDecorate ? options?.placeholderDecorate : null\"\n [readonly]=\"options?.readonly || options?.disabled\"\n [keydown]=\"onKeyDown\"\n [click]=\"onClick\"\n [paste]=\"onSlaPaste\"\n [blur]=\"onSlaBlur\"\n [focus]=\"onSlaFocus\"\n [copy]=\"onSlaCopy\"\n [cut]=\"onSlaCut\"\n [beforeInput]=\"onSlaBeforeInput\"\n [compositionStart]=\"onSlaCompositionStart\"\n [compositionEnd]=\"onSlaCompositionEnd\"\n [dragStart]=\"onSlaDragStart\"\n [dragOver]=\"onSlaDragOver\"\n [drop]=\"onDrop\"\n [scrollSelectionIntoView]=\"scrollSelectionIntoView\"\n (ngModelChange)=\"valueChange($event)\"\n (mousedown)=\"mousedown($event)\"\n ></slate-editable>\n\n <ng-container *ngIf=\"!isMobileMode\">\n <the-inline-toolbar\n *ngIf=\"!options?.readonly && options?.inlineToolbarVisible\"\n [editor]=\"editor\"\n [toolbarItems]=\"toolbarEntity.inline\"\n ></the-inline-toolbar>\n <div *ngIf=\"!options?.readonly\" theQuickInsert [editor]=\"editor\" [isVisible]=\"visibleQuickInsertPlus\"></div>\n </ng-container>\n\n <the-template #templateInstance></the-template>\n</div>\n" }]
|
|
17051
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.DestroyRef }, { type: i0.ElementRef }, { type: i0.Injector }, { type: i0.NgZone }, { type: i0.ViewContainerRef }, { type: TheContextService }, { type: i2$
|
|
17028
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.DestroyRef }, { type: i0.ElementRef }, { type: i0.Injector }, { type: i0.NgZone }, { type: i0.ViewContainerRef }, { type: TheContextService }, { type: i2$5.ThyIconRegistry }, { type: undefined, decorators: [{
|
|
17052
17029
|
type: Optional
|
|
17053
17030
|
}, {
|
|
17054
17031
|
type: Inject,
|
|
@@ -17153,13 +17130,13 @@ class theTethysIconRegistryFaker extends ThyIconRegistry {
|
|
|
17153
17130
|
splitIconName(iconName) {
|
|
17154
17131
|
return ['', ''];
|
|
17155
17132
|
}
|
|
17156
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: theTethysIconRegistryFaker, deps: [{ token: i1$
|
|
17133
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: theTethysIconRegistryFaker, deps: [{ token: i1$2.DomSanitizer }, { token: i2$6.HttpClient }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
17157
17134
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: theTethysIconRegistryFaker, providedIn: 'root' }); }
|
|
17158
17135
|
}
|
|
17159
17136
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: theTethysIconRegistryFaker, decorators: [{
|
|
17160
17137
|
type: Injectable,
|
|
17161
17138
|
args: [{ providedIn: 'root' }]
|
|
17162
|
-
}], ctorParameters: () => [{ type: i1$
|
|
17139
|
+
}], ctorParameters: () => [{ type: i1$2.DomSanitizer }, { type: i2$6.HttpClient }, { type: undefined, decorators: [{
|
|
17163
17140
|
type: Inject,
|
|
17164
17141
|
args: [DOCUMENT]
|
|
17165
17142
|
}] }] });
|
|
@@ -17354,5 +17331,5 @@ const withTestPlugin = (plugins, initValue) => {
|
|
|
17354
17331
|
* Generated bundle index. Do not edit.
|
|
17355
17332
|
*/
|
|
17356
17333
|
|
|
17357
|
-
export { ALIGN_BLOCK_TYPES, A_TAG_REL_ATTR, AlignEditor, Alignment, BLOCK_DELETE_BACKWARD_TYPES, BasicTest, BlockquoteEditor, CLIPBOARD_FORMAT_KEY, CODEMIRROR_PADDING_TOP, CODE_MODES, CONTAINER_BLOCKS, CONTROL_KEY, CodeEditor, ColorEditor, ColumnResizeNotifierSource, ColumnResizingStore, DEFAULT_LANGUAGE, DEFAULT_SCROLL_CONTAINER, DISABLED_OPERATE_TYPES, DataTransferFaker, DefaultElementOptions, DefaultGlobalToolbarDefinition, DefaultInlineToolbarDefinition, DefaultPluginMenu, DropdownMode, ELEMENT_UNIQUE_ID, EditorPresetConfigFactoryMock, ElementKinds, ErrorCodes, FontSizeTypes, FontSizes, HEADING_TYPES, HeadingEditor, HoveredCellInfo, HrEditor, IS_MAC, ImageEditor, IndentEditor, Indents, InlineCodeEditor, LINK_DEFAULT_TEXT, LIST_BLOCK_TYPES, LayoutTypes, LinkEditor, ListEditor, MarkEditor, MarkProps, MarkTypes, MentionEditor, PICTURE_ACCEPTED_UPLOAD_MIME, PICTURE_ACCEPTED_UPLOAD_SIZE, PluginKeys, PluginMenuIcons, PluginMenuSvgs, Position, QUICK_INSERT_HOTKEY, QuickInsertEditor, ResizeRef, SLA_TABLE_CELL_SELECTOR, SLA_TABLE_SELECTOR, STANDARD_HEADING_TYPES, ScrollDirection, SpecialBackgroundColor, TAB_SPACE, THE_EDITOR_BG_COLOR, THE_EDITOR_COLOR, THE_EDITOR_CONVERSION_HINT_REF, THE_EDITOR_ORIGIN_ANCHOR, THE_EDITOR_POPOVER_REF, THE_EDITOR_PREVIOUS_SELECTION, THE_EDITOR_UUID, THE_LISTBOX_PARENT_GROUP_TOKEN, THE_LISTBOX_PARENT_OPTION_TOKEN, THE_LISTBOX_TOKEN, THE_MODE_PROVIDER, THE_MODE_TOKEN, THE_PLUGIN_MENU_REF, THE_PRESET_CONFIG_TOKEN,
|
|
17334
|
+
export { ALIGN_BLOCK_TYPES, A_TAG_REL_ATTR, AlignEditor, Alignment, BLOCK_DELETE_BACKWARD_TYPES, BasicTest, BlockquoteEditor, CLIPBOARD_FORMAT_KEY, CODEMIRROR_PADDING_TOP, CODE_MODES, CONTAINER_BLOCKS, CONTROL_KEY, CodeEditor, ColorEditor, ColumnResizeNotifierSource, ColumnResizingStore, DEFAULT_LANGUAGE, DEFAULT_SCROLL_CONTAINER, DISABLED_OPERATE_TYPES, DataTransferFaker, DefaultElementOptions, DefaultGlobalToolbarDefinition, DefaultInlineToolbarDefinition, DefaultPluginMenu, DropdownMode, ELEMENT_UNIQUE_ID, EditorPresetConfigFactoryMock, ElementKinds, ErrorCodes, FontSizeTypes, FontSizes, HEADING_TYPES, HeadingEditor, HoveredCellInfo, HrEditor, IS_MAC, ImageEditor, IndentEditor, Indents, InlineCodeEditor, LINK_DEFAULT_TEXT, LIST_BLOCK_TYPES, LayoutTypes, LinkEditor, ListEditor, MarkEditor, MarkProps, MarkTypes, MentionEditor, PICTURE_ACCEPTED_UPLOAD_MIME, PICTURE_ACCEPTED_UPLOAD_SIZE, PluginKeys, PluginMenuIcons, PluginMenuSvgs, Position, QUICK_INSERT_HOTKEY, QuickInsertEditor, ResizeRef, SLA_TABLE_CELL_SELECTOR, SLA_TABLE_SELECTOR, STANDARD_HEADING_TYPES, ScrollDirection, SpecialBackgroundColor, TAB_SPACE, THE_EDITOR_BG_COLOR, THE_EDITOR_COLOR, THE_EDITOR_CONVERSION_HINT_REF, THE_EDITOR_ORIGIN_ANCHOR, THE_EDITOR_POPOVER_REF, THE_EDITOR_PREVIOUS_SELECTION, THE_EDITOR_UUID, THE_IMAGE_SERVICE_TOKEN, THE_LISTBOX_PARENT_GROUP_TOKEN, THE_LISTBOX_PARENT_OPTION_TOKEN, THE_LISTBOX_TOKEN, THE_MODE_PROVIDER, THE_MODE_TOKEN, THE_PLUGIN_MENU_REF, THE_PRESET_CONFIG_TOKEN, TableCellEventDispatcher, TableEditor, TableHeaderBackgroundColor, TablePosition, TheBaseElement, TheBaseSuggestion, TheBaseToolbarDropdown, TheBaseToolbarItem, TheColumnResizeDirective, TheColumnResizeOverlayHandle, TheContextMenu, TheContextService, TheConversionHint, TheDataMode, TheDefaultElement, TheEditor, TheEditorComponent, TheEditorModule, TheImage, TheInlineToolbar, TheListboxDirective, TheListboxGroupDirective, TheListboxOptionDirective, TheMode, TheModeConfig, ThePluginMenu, ThePluginMenuComponent, ThePluginMenuItemType, ThePreventDefaultDirective, index$1 as TheQueries, TheQuickInsert, TheTableSelect, TheTemplate, TheText, TheToolbarComponent, TheToolbarDropdown, TheToolbarGroup, TheToolbarGroupToken, TheToolbarItem, TheToolbarService, index as TheTransforms, TodoItemEditor, ToolbarActionTypes, ToolbarAlignment, ToolbarItemType, ToolbarMoreGroup, VOID_BLOCK_TYPES, VerticalAlignEditor, VerticalAlignment, ZERO_WIDTH_CHAR, autoFocus, base64toBlob, bottomLeftPosition, buildPluginMenu, buildPluginMenuItemMap, buildQuickInsertMenus, calcPrintColumnWidth, calcSpanForColumn, calcSpanForRow, calculateHeaderRowHeight, calculateRowControls, coercePixelsFromCssValue, combinePlugins, copyNode, createCell, createEmptyContent, createEmptyParagraph, createMentionPlugin, createPluginFactory, createRow, createTable, createTablePosition, createTest1Plugin, createTestPlugin, createToolbar, createVerticalAlignPlugin, customPluginMock, customPluginMockKey, dataDeserialize, dataSerializing, deleteElementKey, errorImageUrlMock, extractFragment, filterTextFormat, fixBlockWithoutParagraph, fixBlockWithoutText, flattenDeepPlugins, getCellPositionsFromRange, getColsTotalWidth, getColumnsWidth, getDirtyElements, getEditorScrollContainer, getEditorUUID, getElementClassByPrefix, getElementHeight, getElementWidth, getEndBlock, getGridColumns, getMode, getNextCell, getOriginCell, getPlugin, getPluginOptions, getPlugins, getRowsTotalHeight, getSelectCellNode, getSelectedCellPositions, getStartBlock, getTableByCell, getTableByRow, getToolbarClass, hasHeaderRow, headingOptions, htmlToTheia, idCreator, inValidTypes, initializeDefaultMenuIcons, insertDataByInvalidType, internalPlugins, isCleanEmptyParagraph, isColorIndicator, isColorInput, isColorPanel, isDirectionKeydown, isInside, isMobileMode, isPrintMode, isPureEmptyParagraph, isRangeInTable, isRectangularInTableCells, isSelectedAllCell, isSelectionInTable, isVirtualKey, matchOptions, mergeArray, mergeDeepPlugins, mergeElementOptions, mergeOptions, nestedStructureByKey, normalizeValue, originOptions, plainToTheia, pluginKey, pluginKey1, pluginsByKey, reSelection, recursionNodes, refocus, scrollIntoView, setClipboardDataByDom, setEditorUUID, theTethysIconRegistryFaker, topLeftPosition, uniqueCellPosition, updatePopoverPosition, useElementStyle, withMention, withTestPlugin, withTheia };
|
|
17358
17335
|
//# sourceMappingURL=worktile-theia.mjs.map
|