@talrace/ngx-noder 0.0.13 → 0.0.15
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/esm2022/lib/apart-components/editor-toolbar/components/toolbar-actions/toolbar-actions.component.mjs +3 -3
- package/esm2022/lib/editor/components/image/components/image.component.mjs +2 -2
- package/esm2022/lib/editor/components/image/input-handler/image-input.handler.mjs +9 -18
- package/esm2022/lib/editor/components/shared/abstract/base.component.mjs +2 -1
- package/esm2022/lib/editor/display/layers/cursor.layer.mjs +2 -2
- package/esm2022/lib/editor/execution/edit.session.mjs +18 -1
- package/esm2022/lib/editor/execution/editor.mjs +36 -50
- package/esm2022/lib/editor/execution/regulator.service.mjs +2 -2
- package/esm2022/lib/editor/interaction/editor.service.mjs +18 -11
- package/esm2022/lib/editor/operations/helpers/link-operations.helper.mjs +5 -2
- package/esm2022/lib/editor/positioning/selection.mjs +35 -1
- package/fesm2022/talrace-ngx-noder.mjs +120 -81
- package/fesm2022/talrace-ngx-noder.mjs.map +1 -1
- package/lib/editor/components/image/input-handler/image-input.handler.d.ts +1 -6
- package/lib/editor/components/shared/abstract/base.component.d.ts +2 -0
- package/lib/editor/execution/edit.session.d.ts +1 -0
- package/lib/editor/execution/editor.d.ts +5 -5
- package/lib/editor/interaction/editor.service.d.ts +10 -8
- package/lib/editor/positioning/selection.d.ts +7 -0
- package/package.json +1 -1
- package/src/_ngx-noder.theme.scss +0 -7
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
import { EditorService } from '../../../interaction/editor.service';
|
|
2
|
-
import { NoderImageComponent } from '../components/image.component';
|
|
3
2
|
export declare class ImageInputHandler {
|
|
4
3
|
private readonly editorService;
|
|
5
|
-
private readonly image;
|
|
6
|
-
readonly imageComponentTagName = "APP-NOD-IMAGE";
|
|
7
4
|
private readonly undoRedoActions;
|
|
8
5
|
private readonly imageKeyDownSubscription;
|
|
9
|
-
|
|
10
|
-
constructor(editorService: EditorService, image: NoderImageComponent);
|
|
6
|
+
constructor(editorService: EditorService);
|
|
11
7
|
destroy(): void;
|
|
12
8
|
private onKeyDown;
|
|
13
9
|
private getKeyCombination;
|
|
14
10
|
private fillUndoRedoActions;
|
|
15
|
-
private onClick;
|
|
16
11
|
}
|
|
@@ -2,6 +2,7 @@ import { ChangeDetectorRef } from '@angular/core';
|
|
|
2
2
|
import { CustomContent } from '../custom-content';
|
|
3
3
|
import { DestroyComponent } from './destroy.component';
|
|
4
4
|
import { GeneralPropertiesModel } from '../../../content/display-data/general-properties.model';
|
|
5
|
+
import { TextStyleModel } from '../../../../models/generated/text-style.model';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
export declare abstract class BaseNoderComponent extends DestroyComponent {
|
|
7
8
|
get focused(): boolean;
|
|
@@ -21,6 +22,7 @@ export declare abstract class BaseNoderComponent extends DestroyComponent {
|
|
|
21
22
|
abstract initialize(): void;
|
|
22
23
|
focus(): void;
|
|
23
24
|
blur(): void;
|
|
25
|
+
receiveStyle(_textStyle: TextStyleModel): void;
|
|
24
26
|
static ɵfac: i0.ɵɵFactoryDeclaration<BaseNoderComponent, never>;
|
|
25
27
|
static ɵdir: i0.ɵɵDirectiveDeclaration<BaseNoderComponent, never, never, { "content": { "alias": "content"; "required": false; }; "sessionId": { "alias": "sessionId"; "required": false; }; "contentWidth": { "alias": "contentWidth"; "required": false; }; "generalProperties": { "alias": "generalProperties"; "required": false; }; }, {}, never, never, false, never>;
|
|
26
28
|
}
|
|
@@ -70,6 +70,7 @@ export declare class EditSession {
|
|
|
70
70
|
isEdge(): boolean;
|
|
71
71
|
isWithinEdge(): boolean;
|
|
72
72
|
onRendered(): void;
|
|
73
|
+
provideTextStyle(start: number, end: number): void;
|
|
73
74
|
removeByDocumentIndexes(startIndex: number, endIndex: number): void;
|
|
74
75
|
insertTextByDocumentIndex(index: number, text: string, style?: TextStyleModel): CursorParagraph;
|
|
75
76
|
insertElementByDocumentIndex(insertElement: InsertElementModel): CursorParagraph;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Clipboard } from '@angular/cdk/clipboard';
|
|
2
2
|
import { ElementRef } from '@angular/core';
|
|
3
3
|
import { Subscription } from 'rxjs';
|
|
4
|
+
import { BaseNoderComponent } from '../components/shared/abstract/base.component';
|
|
4
5
|
import { BreakTypes } from '../gadgets/page-break/break-types.enum';
|
|
5
6
|
import { CommandsService } from '../operations/commands.service';
|
|
6
7
|
import { DocumentHandler } from '../interaction/document.handler';
|
|
@@ -66,7 +67,6 @@ export declare class Editor {
|
|
|
66
67
|
subscriptions: Subscription[];
|
|
67
68
|
private search;
|
|
68
69
|
private textInput;
|
|
69
|
-
private focusedComponent;
|
|
70
70
|
private clipboardData;
|
|
71
71
|
constructor(model: DocxModel, container: ElementRef<HTMLElement>, editorService: EditorService, regulatorService: RegulatorService, commandsService: CommandsService, clipboard: Clipboard, externalElementTagNames: string[], customPageWidth?: number);
|
|
72
72
|
destroy(): void;
|
|
@@ -165,7 +165,6 @@ export declare class Editor {
|
|
|
165
165
|
onPrint(): void;
|
|
166
166
|
private onDocumentChange;
|
|
167
167
|
private focusCustomComponent;
|
|
168
|
-
private blurCustomComponent;
|
|
169
168
|
private isEmptyNumberingParagraph;
|
|
170
169
|
scrollCursorIntoMainView(offset?: number): void;
|
|
171
170
|
changedTableSize(insertIndex: number, sessionId: number): void;
|
|
@@ -173,9 +172,10 @@ export declare class Editor {
|
|
|
173
172
|
insertTableColumns(insertIndex: number, columnsCount: number, targetIndex: number, inheritIndex: number, sessionId: number): void;
|
|
174
173
|
removeTableRows(insertIndex: number, startIndex: number, endIndex: number, sessionId: number): void;
|
|
175
174
|
removeTableColumns(insertIndex: number, startIndex: number, endIndex: number, sessionId: number): void;
|
|
176
|
-
removeImage(insertIndex: number): void;
|
|
177
175
|
resizeTableColumns(resizeTableColumns: ResizeTableColumnsModel, sessionId: number): void;
|
|
178
176
|
onMousePressedMove(event: MouseEvent): void;
|
|
177
|
+
provideTextStyle(component: BaseNoderComponent): void;
|
|
178
|
+
receiveTextStyleSubscription(): Subscription;
|
|
179
179
|
searchOptionSubscription(): Subscription;
|
|
180
180
|
replaceSubscription(): Subscription;
|
|
181
181
|
setTextStylesSubscription(): Subscription;
|
|
@@ -198,13 +198,13 @@ export declare class Editor {
|
|
|
198
198
|
insertTableColumnsSubscription(): Subscription;
|
|
199
199
|
removeTableRowsSubscription(): Subscription;
|
|
200
200
|
removeTableColumnsSubscription(): Subscription;
|
|
201
|
-
|
|
201
|
+
removeRightSubscription(): Subscription;
|
|
202
202
|
resizeTableColumnsSubscription(): Subscription;
|
|
203
203
|
insertTableSubscription(): Subscription;
|
|
204
204
|
insertTextSubscription(): Subscription;
|
|
205
205
|
undoSubscription(): Subscription;
|
|
206
206
|
redoSubscription(): Subscription;
|
|
207
|
-
|
|
207
|
+
removeLeftSubscription(): Subscription;
|
|
208
208
|
private printSubscription;
|
|
209
209
|
private cutSelectedSubscription;
|
|
210
210
|
private copySelectedSubscription;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { Type } from '@angular/core';
|
|
3
|
+
import { BaseNoderComponent } from '../components/shared/abstract/base.component';
|
|
3
4
|
import { BreakTypes } from '../gadgets/page-break/break-types.enum';
|
|
4
5
|
import { EdgeType } from '../components/edges/edge-type.enum';
|
|
5
6
|
import { ElementDataModel } from '../components/external-element/models/element-data.model';
|
|
@@ -23,6 +24,8 @@ export declare class EditorService {
|
|
|
23
24
|
get styles(): IToolbarStyles;
|
|
24
25
|
get styles$(): Observable<IToolbarStyles>;
|
|
25
26
|
private _styles$;
|
|
27
|
+
get receiveTextStyle$(): Observable<BaseNoderComponent>;
|
|
28
|
+
private _receiveTextStyle$;
|
|
26
29
|
get isViewOnly$(): Observable<boolean>;
|
|
27
30
|
get isViewOnly(): boolean;
|
|
28
31
|
private _isViewOnly$;
|
|
@@ -123,10 +126,8 @@ export declare class EditorService {
|
|
|
123
126
|
sessionId: number;
|
|
124
127
|
}>;
|
|
125
128
|
private _removeTableColumns$;
|
|
126
|
-
get
|
|
127
|
-
|
|
128
|
-
}>;
|
|
129
|
-
private _removeImage$;
|
|
129
|
+
get removeRight$(): Observable<void>;
|
|
130
|
+
private _removeRight$;
|
|
130
131
|
get resizeTableColumns$(): Observable<{
|
|
131
132
|
resizeTableColumns: ResizeTableColumnsModel;
|
|
132
133
|
sessionId: number;
|
|
@@ -159,10 +160,11 @@ export declare class EditorService {
|
|
|
159
160
|
private _updateEdges$;
|
|
160
161
|
get insertText$(): Observable<string>;
|
|
161
162
|
private _insertText$;
|
|
162
|
-
get
|
|
163
|
-
private
|
|
163
|
+
get removeLeft$(): Observable<void>;
|
|
164
|
+
private _removeLeft$;
|
|
164
165
|
get removeCustomElementsData$(): Observable<ElementModel[]>;
|
|
165
166
|
private _removeCustomElementsData$;
|
|
167
|
+
receiveTextStyle(component: BaseNoderComponent): void;
|
|
166
168
|
setIsViewOnly(value: boolean): void;
|
|
167
169
|
setHasSelection(value: boolean): void;
|
|
168
170
|
setClipboardData(value: string): void;
|
|
@@ -189,7 +191,7 @@ export declare class EditorService {
|
|
|
189
191
|
insertTableColumns(insertIndex: number, columnsCount: number, targetIndex: number, inheritIndex: number, sessionId: number): void;
|
|
190
192
|
removeTableRows(insertIndex: number, startIndex: number, endIndex: number, sessionId: number): void;
|
|
191
193
|
removeTableColumns(insertIndex: number, startIndex: number, endIndex: number, sessionId: number): void;
|
|
192
|
-
|
|
194
|
+
removeRight(): void;
|
|
193
195
|
resizeTableColumns(resizeTableColumns: ResizeTableColumnsModel, sessionId: number): void;
|
|
194
196
|
insertTable(tableData: {
|
|
195
197
|
rows: number;
|
|
@@ -206,7 +208,7 @@ export declare class EditorService {
|
|
|
206
208
|
keyDown(event: KeyboardEvent): void;
|
|
207
209
|
updateEdges(sessionId: number): void;
|
|
208
210
|
insertText(text: string): void;
|
|
209
|
-
|
|
211
|
+
removeLeft(): void;
|
|
210
212
|
removeCustomElementsData(elements: ElementModel[]): void;
|
|
211
213
|
static ɵfac: i0.ɵɵFactoryDeclaration<EditorService, never>;
|
|
212
214
|
static ɵprov: i0.ɵɵInjectableDeclaration<EditorService>;
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { ComponentRef } from '@angular/core';
|
|
2
|
+
import { BaseNoderComponent } from '../components/shared/abstract/base.component';
|
|
1
3
|
import { ContentsInterface } from '../content/contents.interface';
|
|
2
4
|
import { CursorParagraph } from './cursor-paragraph';
|
|
3
5
|
import { EditSession } from '../execution/edit.session';
|
|
@@ -6,10 +8,15 @@ export declare class Selection {
|
|
|
6
8
|
anchor: CursorParagraph | null;
|
|
7
9
|
cursor: CursorParagraph;
|
|
8
10
|
isDisabled: boolean;
|
|
11
|
+
private focusedComponent;
|
|
9
12
|
private keepLinePositionX;
|
|
13
|
+
get isFocused(): boolean;
|
|
10
14
|
get isEmpty(): boolean;
|
|
11
15
|
get isBackwards(): boolean;
|
|
16
|
+
get selectedRange(): Range;
|
|
12
17
|
get range(): Range;
|
|
18
|
+
focus(component: ComponentRef<BaseNoderComponent>, position: CursorParagraph): void;
|
|
19
|
+
blur(): void;
|
|
13
20
|
placeCursor(cursor: CursorParagraph): void;
|
|
14
21
|
moveCursor(cursor: CursorParagraph): void;
|
|
15
22
|
placeSelection(cursor: CursorParagraph, anchor: CursorParagraph): void;
|
package/package.json
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
@use '@angular/material' as mat;
|
|
2
1
|
@import 'lib/apart-components/add-link-dialog/add-link-dialog.theme';
|
|
3
2
|
@import 'lib/apart-components/add-link-mobile/add-link-mobile.theme';
|
|
4
3
|
@import 'lib/apart-components/confirm-dialog/theme';
|
|
@@ -22,12 +21,6 @@
|
|
|
22
21
|
|
|
23
22
|
@mixin ngx-noder-editor-theme($theme) {
|
|
24
23
|
@include editor-theme($theme);
|
|
25
|
-
|
|
26
|
-
$font-family: roboto, helvetica, neue, 'Helvetica', Arial, sans-serif;
|
|
27
|
-
$custom-typography: mat.define-typography-config(
|
|
28
|
-
$font-family: $font-family
|
|
29
|
-
);
|
|
30
|
-
@include mat.all-component-typographies($custom-typography);
|
|
31
24
|
}
|
|
32
25
|
|
|
33
26
|
@mixin ngx-noder-add-link-theme($theme) {
|