@talrace/ngx-noder 19.0.36 → 19.0.37

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.
Files changed (26) hide show
  1. package/fesm2022/talrace-ngx-noder.mjs +705 -1278
  2. package/fesm2022/talrace-ngx-noder.mjs.map +1 -1
  3. package/lib/editor/components/external-element/external.component.d.ts +2 -0
  4. package/lib/editor/components/shared/services/custom-content.service.d.ts +1 -8
  5. package/lib/editor/content/constants/display-values.const.d.ts +6 -2
  6. package/lib/editor/content/display-data/display-data.d.ts +10 -29
  7. package/lib/editor/content/display-data/display-token.model.d.ts +8 -17
  8. package/lib/editor/content/display-data/general-properties.model.d.ts +3 -2
  9. package/lib/editor/content/display-data/indent.model.d.ts +2 -1
  10. package/lib/editor/content/display-data/line-info.model.d.ts +3 -3
  11. package/lib/editor/content/display-data/paragraph-info.interface.d.ts +1 -1
  12. package/lib/editor/content/display-data/text-line-info.d.ts +1 -14
  13. package/lib/editor/content/helpers/display-token.helper.d.ts +9 -3
  14. package/lib/editor/content/helpers/line-info.helper.d.ts +10 -0
  15. package/lib/editor/display/layers/text.layer.d.ts +2 -4
  16. package/lib/editor/display/rendering.helper.d.ts +4 -13
  17. package/lib/editor/gadgets/font-metrics/font-metric-size.interface.d.ts +0 -4
  18. package/lib/editor/gadgets/numbering/numbering.helper.d.ts +16 -7
  19. package/lib/editor/gadgets/page-break/break.helper.d.ts +1 -2
  20. package/lib/editor/positioning/cursor-position.interface.d.ts +3 -7
  21. package/lib/editor/positioning/position.helper.d.ts +0 -3
  22. package/package.json +1 -1
  23. package/lib/editor/components/tab/tab.helper.d.ts +0 -4
  24. package/lib/editor/content/display-data/format-ext.model.d.ts +0 -5
  25. package/lib/editor/display/print/print.rendering.helper.d.ts +0 -6
  26. package/lib/editor/positioning/line-width.helper.d.ts +0 -5
@@ -7,6 +7,8 @@ export declare abstract class ExternalComponent extends BaseNoderComponent {
7
7
  content: ElementModel;
8
8
  protected abstract sidenavComponent: Type<ExternalSidenavInterface>;
9
9
  protected focusSidenav: boolean;
10
+ isText: boolean;
11
+ getText(): string;
10
12
  protected skipSidenav(): boolean;
11
13
  focus(): void;
12
14
  blur(): void;
@@ -2,13 +2,9 @@ import { ComponentRef, Injector, Type } from '@angular/core';
2
2
  import { BaseNoderComponent } from '../abstract/base.component';
3
3
  import { ComponentService } from './component.service';
4
4
  import { ContentType } from '../../../content/contents.interface';
5
- import { DisplayToken } from '../../../content/display-data/display-token.model';
6
- import { DistanceModel } from '../../../execution/distance.model';
7
5
  import { ExternalElementModel } from '../../external-element/models/external-element.model';
8
6
  import { GeneralPropertiesModel } from '../../../content/display-data/general-properties.model';
9
7
  import { ICustomComponents } from '../custom-components.interface';
10
- import { IFontMetricSize } from '../../../gadgets/font-metrics/font-metric-size.interface';
11
- import { LineInfoModel } from '../../../content/display-data/line-info.model';
12
8
  import * as i0 from "@angular/core";
13
9
  export declare class CustomContentService {
14
10
  componentService: ComponentService;
@@ -16,13 +12,10 @@ export declare class CustomContentService {
16
12
  elements: ExternalElementModel[];
17
13
  constructor(componentService: ComponentService, injector: Injector);
18
14
  generateComponent(model: ContentType, components: ICustomComponents, sessionId: number, generalProperties: GeneralPropertiesModel, contentWidth: number, charIndex: number): ComponentRef<BaseNoderComponent> | null;
19
- isFragmentContainComponent(components: ICustomComponents, textFragment: string, fragmentDistance: DistanceModel): boolean;
20
- getComponents(components: ICustomComponents, distance: DistanceModel): ComponentRef<BaseNoderComponent>[];
15
+ getComponents(components: ICustomComponents, start: number, end: number): ComponentRef<BaseNoderComponent>[];
21
16
  getComponent(components: ICustomComponents, char: string, charIndex: number): ComponentRef<BaseNoderComponent>;
22
- getTokenFromComponent(component: ComponentRef<BaseNoderComponent>, lineInfo: LineInfoModel, displayValue: number, isFirst: boolean, size: IFontMetricSize): DisplayToken;
23
17
  findComponentType(type: number): Type<BaseNoderComponent>;
24
18
  findComponent<T>(components: ComponentRef<T>[], insertIndex: number): ComponentRef<T>;
25
- private isFragmentContainComponents;
26
19
  isSpecialMarker(char: string): boolean;
27
20
  static ɵfac: i0.ɵɵFactoryDeclaration<CustomContentService, never>;
28
21
  static ɵprov: i0.ɵɵInjectableDeclaration<CustomContentService>;
@@ -1,8 +1,12 @@
1
1
  export declare const DisplayValue: {
2
2
  char: number;
3
3
  customContent: number;
4
+ table: number;
5
+ pageBreak: number;
6
+ lineBreak: number;
4
7
  punctuation: number;
5
8
  space: number;
6
- trailingSpace: number;
7
- emptyLine: number;
9
+ tab: number;
10
+ paragraph: number;
11
+ hyphen: number;
8
12
  };
@@ -1,4 +1,3 @@
1
- import { ComponentRef } from '@angular/core';
2
1
  import { BreakTypes } from '../../gadgets/page-break/break-types.enum';
3
2
  import { ContentType } from '../contents.interface';
4
3
  import { CursorParagraph } from '../../positioning/cursor-paragraph';
@@ -9,7 +8,6 @@ import { EventEmitting } from '../../core/event-emitting';
9
8
  import { GeneralPropertiesModel } from './general-properties.model';
10
9
  import { ICustomComponents } from '../../components/shared/custom-components.interface';
11
10
  import { LineInfoModel } from './line-info.model';
12
- import { NoderTableComponent } from '../../components/table/components/table.component';
13
11
  import { NumberingDataModel } from '../../gadgets/numbering/numbering-data.model';
14
12
  import { PageFormat } from './page-format';
15
13
  import { PageFormatModel } from '../../../models/generated/page-format.model';
@@ -33,7 +31,6 @@ export declare class DisplayData extends EventEmitting {
33
31
  paragraphs: ParagraphInfoModel[];
34
32
  pagesFormat: PageFormat[];
35
33
  allPagesHeight: number;
36
- tabTokens: DisplayToken[];
37
34
  get maxPageWidth(): number;
38
35
  private readonly ParagraphInfoChanges;
39
36
  get ParagraphInfoChanges$(): import("rxjs").Observable<ParagraphInfoAdded | ParagraphInfoContentChanged | ParagraphInfoContentInserted | ParagraphInfosRemoved>;
@@ -67,38 +64,22 @@ export declare class DisplayData extends EventEmitting {
67
64
  updateParagraphStartIndex(first: number): void;
68
65
  updateParagraphSettingsNumberingData(index: number): void;
69
66
  updateNextLineIndexes(firstParagraph: number, lastParagraph: number): void;
70
- updateNumberingsDataOnChange(index: number): void;
71
- resetAllNumberingInfo(paragraphIndex: number): void;
72
- resetNumberingInfoByTableCell(table: ComponentRef<NoderTableComponent>): void;
73
- private updateParagraphTabs;
74
- private getSplits;
75
- /**
76
- * Given a string, returns an array of the display characters, including tabs and spaces and custom components.
77
- */
78
- getDisplayTokens(model: ContentType, str: string, startIndex: number): DisplayToken[];
79
- private fillLineTokens;
67
+ isSameNumberingId(paragraphIndex: number, numberingId: number): boolean;
68
+ private updateNumberingsDataOnChange;
69
+ private splitParagraphByLines;
70
+ private getParagraphTokens;
71
+ getParagraphLineTokens(paragraphIndex: number, lineIndex: number): DisplayToken[];
72
+ getTokens(contentIndex: number, content: string, paragraphSymbolIndex: number): {
73
+ tokens: DisplayToken[];
74
+ paragraphToken: DisplayToken;
75
+ };
80
76
  private getOrGenerateComponent;
81
- private processCharSizes;
82
77
  private getPageFormatParagraphs;
83
78
  getPageFormatByPageNumber(pageNumber: number): PageFormat;
84
79
  getPageFormatAtPosition(startParagraphIndex: number): PageFormat | undefined;
85
80
  getPageFormatIndexAtPosition(startParagraphIndex: number): number;
86
- getLineTokens(model: ContentType, line: string, startIndex: number): DisplayToken[];
87
- private findSameNumberingIndex;
88
- private getEmptyDisplayTokens;
89
- private getEmptyLineTokens;
90
- private getLineInfoByBreakModifier;
91
- private getParagraphIndentLeft;
92
- private getLineInfoFromTextLine;
93
- private getLineInfoModel;
94
- private getIndentLeftFromTextLine;
95
- private computeWrapSplit;
96
- private calculateSplit;
97
- private isWhiteSpace;
98
- /**
99
- * Computes wrap index based on max row width
100
- */
101
81
  private computeWrapIndex;
82
+ private adjustLastTab;
102
83
  private getPreviousParagraphInfo;
103
84
  private getVisiblePages;
104
85
  private calculateVisiblePageCount;
@@ -2,28 +2,19 @@ import { IFontMetricSize } from '../../gadgets/font-metrics/font-metric-size.int
2
2
  export declare class DisplayToken implements IFontMetricSize {
3
3
  width: number;
4
4
  height: number;
5
- baseline: number;
6
- content: number;
7
5
  font: number;
8
- line: number;
9
6
  lineSpacing: number;
10
- multiplier: number;
11
7
  ascent: number;
12
8
  descent: number;
13
9
  displayValue: number;
14
- align: number;
15
- indentFirstLine: number;
16
- indentHanging: number;
17
- indentLeft: number;
18
- indentRight: number;
19
- indentBefore: number;
20
- indentAfter: number;
21
- markerWidth: number;
22
- isPageBreak: boolean;
23
- isLineBreak: boolean;
24
- isTab: boolean;
25
- isTable: boolean;
26
- isNumbering: boolean;
10
+ get isSpace(): boolean;
11
+ get isParagraph(): boolean;
12
+ get isPageBreak(): boolean;
13
+ get isLineBreak(): boolean;
14
+ get isTab(): boolean;
15
+ get isTable(): boolean;
16
+ get isWhiteSpace(): boolean;
27
17
  get breaksLine(): boolean;
18
+ get breakable(): boolean;
28
19
  constructor(fields?: Partial<DisplayToken>);
29
20
  }
@@ -1,8 +1,9 @@
1
1
  import { NumberingModel } from '../../../models/generated/numbering.model';
2
2
  export type NumberingInfo = Record<string, {
3
3
  markerIndex: number;
4
- markerLevel: number;
5
- visited: boolean;
4
+ start: number;
5
+ needToRecalculate: boolean;
6
+ needToCalculateFirstMarker: boolean;
6
7
  }[]>;
7
8
  export declare class GeneralPropertiesModel {
8
9
  defaultTabWidth: number;
@@ -3,5 +3,6 @@ export declare class IndentModel {
3
3
  hanging: number;
4
4
  left: number;
5
5
  right: number;
6
- constructor(firstLine: number, hanging: number, left: number, right: number);
6
+ markerWidth: number;
7
+ constructor(firstLine: number, hanging: number, left: number, right: number, markerWidth: number);
7
8
  }
@@ -2,7 +2,7 @@ import { IndentModel } from './indent.model';
2
2
  export declare class LineInfoModel {
3
3
  height: number;
4
4
  width: number;
5
- maxAscent: number;
5
+ ascent: number;
6
6
  align: number;
7
7
  indent: IndentModel;
8
8
  offsetBefore: number;
@@ -13,8 +13,8 @@ export declare class LineInfoModel {
13
13
  backgroundColor: string;
14
14
  hasTable: boolean;
15
15
  isNumbering: boolean;
16
- markerWidth?: number;
17
16
  wordSpacing?: number;
18
- wordSpacingWidth?: number;
17
+ wordSpacingStart?: number;
18
+ wordSpacingEnd?: number;
19
19
  constructor(fields?: Partial<LineInfoModel>);
20
20
  }
@@ -2,6 +2,6 @@ export interface ParagraphInfo {
2
2
  paragraphIndex: number;
3
3
  lineIndex: number;
4
4
  lineTopOffset: number;
5
- indentBefore: number;
6
5
  lineHeight: number;
6
+ lineAscent: number;
7
7
  }
@@ -1,27 +1,14 @@
1
1
  import { IndentModel } from './indent.model';
2
2
  import { LineInfoModel } from './line-info.model';
3
- export declare class TextLineInfo {
4
- width: number;
5
- height: number;
6
- maxAscent: number;
3
+ export declare class TextLineInfo extends LineInfoModel {
7
4
  page?: number;
8
5
  paddingLeft: number;
9
6
  offsetMargin: number;
10
- offsetBefore: number;
11
- offsetAfter: number;
12
7
  firstLinePageOffset: number;
13
8
  endPageOffset: number;
14
9
  screenLine: number;
15
- isAfterPageBreak: boolean;
16
- isEndedByPageBreak: boolean;
17
- backgroundColor: string;
18
- hasTable: boolean;
19
10
  splitOffset: number;
20
11
  indentLeft: number;
21
12
  indentFirstLine: number;
22
- wordSpacing?: number;
23
- wordSpacingWidth?: number;
24
- isNumbering: boolean;
25
- markerWidth?: number;
26
13
  constructor(offsetMargin: number, contentWidth: number, align: number, indent: IndentModel, fields?: Partial<LineInfoModel>);
27
14
  }
@@ -1,6 +1,12 @@
1
+ import { ComponentRef } from '@angular/core';
2
+ import { BaseNoderComponent } from '../../components/shared/abstract/base.component';
3
+ import { BreakTypes } from '../../gadgets/page-break/break-types.enum';
1
4
  import { DisplayToken } from '../display-data/display-token.model';
2
- import { LineInfoModel } from '../display-data/line-info.model';
5
+ import { IFontMetricSize } from '../../gadgets/font-metrics/font-metric-size.interface';
6
+ import { TextStyleModel } from '../../../models/generated/text-style.model';
3
7
  export declare class DisplayTokenHelper {
4
- static getDisplayValue(charCode: number): number;
5
- static getLineInfoFromToken(prevToken: DisplayToken, firstWrapToken: DisplayToken, wrapTokens: DisplayToken[], isAfterPageBreak: boolean): LineInfoModel;
8
+ static getDisplayValue(charCode: number, breakType: BreakTypes | null): number;
9
+ static getParagraphToken(paragraphSymbolStyle: TextStyleModel): DisplayToken;
10
+ static getSymbolToken(code: number, size: IFontMetricSize, breakType: BreakTypes | null): DisplayToken;
11
+ static getComponentToken(component: ComponentRef<BaseNoderComponent>, size: IFontMetricSize): DisplayToken;
6
12
  }
@@ -0,0 +1,10 @@
1
+ import { ContentType } from '../contents.interface';
2
+ import { DisplayToken } from '../display-data/display-token.model';
3
+ import { GeneralPropertiesModel } from '../display-data/general-properties.model';
4
+ import { IndentModel } from '../display-data/indent.model';
5
+ import { LineInfoModel } from '../display-data/line-info.model';
6
+ import { ParagraphStyleModel } from '../../../models/generated/paragraph-style.model';
7
+ export declare class LineInfoHelper {
8
+ static get(tokens: DisplayToken[], isAfterPageBreak: boolean, isLastLine: boolean, style: ParagraphStyleModel, indent: IndentModel, isNumbering: boolean, width: number, defaultHeight: number, defaultAscent: number): LineInfoModel;
9
+ static getFirstLineIndent(model: ContentType, paragraphIndex: number, generalProperties: GeneralPropertiesModel): IndentModel;
10
+ }
@@ -1,20 +1,18 @@
1
1
  import { EditSession } from '../../execution/edit.session';
2
2
  import { ILayerConfig } from './layer.config';
3
3
  import { Lines } from '../../content/display-data/lines';
4
- import { RenderingHelper } from '../rendering.helper';
5
4
  export declare class TextLayer {
6
5
  private parentElement;
7
6
  protected session: EditSession;
8
- private renderingHelper;
9
7
  element: HTMLElement;
10
8
  lines: Lines;
11
9
  config: ILayerConfig;
12
- constructor(parentElement: HTMLElement, session: EditSession, renderingHelper?: typeof RenderingHelper);
10
+ constructor(parentElement: HTMLElement, session: EditSession);
13
11
  destroy(): void;
14
12
  updateLines(config: ILayerConfig): void;
15
13
  scrollLines(config: ILayerConfig): void;
16
14
  protected getParagraphTop(row: number): number;
17
15
  private renderTextParagraph;
18
- private renderTextLines;
16
+ private renderParagraph;
19
17
  private readonly pagesCountChangedHandler;
20
18
  }
@@ -1,27 +1,18 @@
1
- import { ComponentRef } from '@angular/core';
2
1
  import { BreakModel } from '../../models/generated/break.model';
3
2
  import { CustomContentService } from '../components/shared/services/custom-content.service';
4
- import { DistanceModel } from '../execution/distance.model';
5
- import { FormatExtModel } from '../content/display-data/format-ext.model';
3
+ import { FormatModel } from '../../models/generated/format.model';
6
4
  import { ICustomComponents } from '../components/shared/custom-components.interface';
7
5
  import { Paragraph } from '../content/display-data/paragraph';
6
+ import { ParagraphInfoModel } from '../content/display-data/models/paragraph-info.model';
8
7
  import { TextLineInfo } from '../content/display-data/text-line-info';
9
8
  export declare class RenderingHelper {
10
9
  static createLineElement(lineInfo: TextLineInfo, numberingOffsetLeft: number, scalingRatio: number): HTMLElement;
11
- static renderContentSimpleLine(domContent: {
10
+ static renderParagraph(domContent: {
12
11
  currentElement: HTMLElement;
13
12
  parentNode: Node;
14
- }, formatsExt: FormatExtModel[], rowDistance: DistanceModel, customContentService: CustomContentService, customComponents: ICustomComponents, lineInfo: TextLineInfo, breaks?: BreakModel[]): void;
15
- static renderContentWrappedLine(domContent: {
16
- currentElement: HTMLElement;
17
- parentNode: Node;
18
- }, splits: number[], currentParagraph: Paragraph, formatsExt: FormatExtModel[], distance: DistanceModel, customContentService: CustomContentService, customComponents: ICustomComponents, scalingRatio: number, breaks?: BreakModel[]): void;
13
+ }, paragraph: ParagraphInfoModel, formats: FormatModel[], customContentService: CustomContentService, customComponents: ICustomComponents, scalingRatio: number, breaks?: BreakModel[]): void;
19
14
  static renderNumberingMarker(paragraph: Paragraph, layerElement: HTMLElement, scalingRatio: number): HTMLElement;
20
15
  static createDivContainer(className: string): HTMLDivElement;
21
16
  private static renderFormatContent;
22
- private static renderTextWithCustomContent;
23
- private static renderTextWithSpacingHandling;
24
17
  private static renderText;
25
- private static getTextIndexLengthForInsert;
26
- protected static attachComponent(fragment: DocumentFragment, component: ComponentRef<unknown>, customContentService: CustomContentService): void;
27
18
  }
@@ -1,11 +1,7 @@
1
1
  export interface IFontMetricSize {
2
2
  width: number;
3
3
  height: number;
4
- baseline: number;
5
- content: number;
6
4
  font: number;
7
- line: number;
8
- multiplier: number;
9
5
  ascent: number;
10
6
  descent: number;
11
7
  }
@@ -1,26 +1,35 @@
1
- import { GeneralPropertiesModel, NumberingInfo } from '../../content/display-data/general-properties.model';
2
1
  import { NumberingDataModel } from './numbering-data.model';
2
+ import { NumberingInfo } from '../../content/display-data/general-properties.model';
3
3
  import { NumberingLevelModel } from '../../../models/generated/numbering-level.model';
4
4
  import { NumberingModel } from '../../../models/generated/numbering.model';
5
5
  import { NumberingParagraphStyleModel } from './numbering-paragraph-style.model';
6
6
  import { Paragraph } from '../../content/display-data/paragraph';
7
7
  import { ParagraphModel } from '../../../models/generated/paragraph.model';
8
8
  import { ParagraphStyleModel } from '../../../models/generated/paragraph-style.model';
9
+ import { TextLineInfo } from '../../content/display-data/text-line-info';
9
10
  import { TextStyleModel } from '../../../models/generated/text-style.model';
10
11
  export declare class NumberingHelper {
12
+ static addValueToNumberingInfo(numberingId: number, numberingInfo: NumberingInfo, numberingLevels: NumberingLevelModel[]): void;
13
+ static setNumberingNeedToRecalculate(numberingInfo: NumberingInfo, numberingId: number): void;
14
+ static setAllNumberingIsCalculated(numberingInfo: NumberingInfo): void;
11
15
  static getStyles(paragraphStyle: ParagraphStyleModel, numberings: NumberingModel[]): NumberingParagraphStyleModel;
12
- static find(numberings: NumberingModel[], id: number, level: number): NumberingLevelModel;
13
- static calculateNumberingInfo(numberingId: number | null, level: number | null, marker: string, numberingInfo: NumberingInfo, numberings: NumberingModel[]): void;
16
+ static findNumberingLevel(numberings: NumberingModel[], id: number, level: number): NumberingLevelModel;
17
+ static findNumberingLevels(numberings: NumberingModel[], id: number): NumberingLevelModel[];
18
+ static calculateNumberingInfo(numberingId: number | null, level: number | null, numberingInfo: NumberingInfo, numberings: NumberingModel[]): void;
14
19
  private static calculateMarkerIndexes;
15
- static getMarker(levelModel: NumberingLevelModel, numberingId: number, paragraphs: ParagraphModel[], paragraphIndex: number, numberingInfo: NumberingInfo): string;
20
+ static getMarker(levelModels: NumberingLevelModel[], level: number, numberingId: number, numberingInfo: NumberingInfo): string;
16
21
  static createDataModel(numberings: NumberingModel[], paragraphs: ParagraphModel[], paragraphIndex: number, numberingInfo: NumberingInfo): NumberingDataModel;
17
- static updateMarkerData(properties: GeneralPropertiesModel, paragraph: Paragraph, paragraphTextStyle: TextStyleModel, paragraphStyle: ParagraphStyleModel): void;
22
+ static updateMarkerData(numberings: NumberingModel[], paragraph: Paragraph, paragraphTextStyle: TextStyleModel, paragraphStyle: ParagraphStyleModel): void;
18
23
  static getMarkerSizes(marker: string, markerStyle: TextStyleModel): {
19
24
  height: number;
20
25
  width: number;
21
26
  };
22
27
  static updateNumberingInfo(numberingInfo: NumberingInfo, marker: string, numberingId: number, level: number): void;
23
- private static getLevelIndex;
24
28
  private static getLevelInfo;
25
- static createMarkerString(numberingInfo: NumberingInfo, numberingId: number, level: number): string;
29
+ static createMarkerString(numberingInfo: NumberingInfo, numberingId: number, splittedMarker: string[]): string;
30
+ static getMarkerOffset(paragraphSettings: Paragraph): {
31
+ offset: number;
32
+ markerWidth: number;
33
+ };
34
+ static getOffsetCausedByMarker(numberingData: NumberingDataModel, info: TextLineInfo): number;
26
35
  }
@@ -1,7 +1,6 @@
1
1
  import { BreakModel } from '../../../models/generated/break.model';
2
2
  import { BreakTypes } from './break-types.enum';
3
- import { ContentType } from '../../content/contents.interface';
4
3
  export declare class BreakHelper {
5
- static getBreakType(model: ContentType, char: string, insertIndex: number): BreakTypes | null;
4
+ static getBreakType(breaks: BreakModel[], char: string, insertIndex: number): BreakTypes | null;
6
5
  static removeBreakMarker(breaks: BreakModel[], text: string, fragmentStartIndex: number): string;
7
6
  }
@@ -1,11 +1,7 @@
1
- import { IFontMetricSize } from '../gadgets/font-metrics/font-metric-size.interface';
2
1
  export interface CursorPosition {
3
2
  pageX: number;
4
3
  pageY: number;
5
- lineHeight?: number;
6
- sizeCurrent?: IFontMetricSize;
7
- sizeMax?: IFontMetricSize;
8
- sizeNext?: IFontMetricSize;
9
- firstChar?: boolean;
10
- lastChar?: boolean;
4
+ width: number;
5
+ height: number;
6
+ ascent: number;
11
7
  }
@@ -1,10 +1,8 @@
1
1
  import { CursorParagraph } from './cursor-paragraph';
2
2
  import { CursorPosition } from './cursor-position.interface';
3
3
  import { EditSession } from '../execution/edit.session';
4
- import { Paragraph } from '../content/display-data/paragraph';
5
4
  import { ParagraphInfo } from '../content/display-data/paragraph-info.interface';
6
5
  import { ParagraphInfoModel } from '../content/display-data/models/paragraph-info.model';
7
- import { TextLineInfo } from '../content/display-data/text-line-info';
8
6
  export declare class PositionHelper {
9
7
  /**
10
8
  * Returns an object containing the `pageX` and `pageY` coordinates of the document position.
@@ -46,5 +44,4 @@ export declare class PositionHelper {
46
44
  lineIndex: number;
47
45
  };
48
46
  static getApproximatePosition(session: EditSession, documentLine: number, positionWidth: number): number;
49
- static getMarkerWidth(paragraphSettings: Paragraph, textLineInfo: TextLineInfo, lineIndex: number): number;
50
47
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@talrace/ngx-noder",
3
- "version": "19.0.36",
3
+ "version": "19.0.37",
4
4
  "license": "MIT",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^19.0.5",
@@ -1,4 +0,0 @@
1
- import { TabSettingModel } from '../../../models/generated/tab-setting.model';
2
- export declare class TabHelper {
3
- static calculateTabWidth(rowWidth: number, defaultTabWidth: number, tabSettings: TabSettingModel[] | null): number;
4
- }
@@ -1,5 +0,0 @@
1
- import { FormatModel } from '../../../models/generated/format.model';
2
- export declare class FormatExtModel extends FormatModel {
3
- content: string;
4
- constructor(fields?: Partial<FormatExtModel>);
5
- }
@@ -1,6 +0,0 @@
1
- import { ComponentRef } from '@angular/core';
2
- import { CustomContentService } from '../../components/shared/services/custom-content.service';
3
- import { RenderingHelper } from '../rendering.helper';
4
- export declare class PrintRenderingHelper extends RenderingHelper {
5
- static attachComponent(fragment: DocumentFragment, component: ComponentRef<unknown>, customContentService: CustomContentService): void;
6
- }
@@ -1,5 +0,0 @@
1
- import { DisplayToken } from '../content/display-data/display-token.model';
2
- import { EditSession } from '../execution/edit.session';
3
- export declare class LineWidthHelper {
4
- static getParagraphLineDisplayTokens(session: EditSession, paragraphIndex: number, lineIndex: number): DisplayToken[];
5
- }