@ngxviewbuilder/runtime 0.6.0 → 0.8.0

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.
@@ -402,6 +402,19 @@ interface IElementActionConfig {
402
402
  navigateTo?: string;
403
403
  openInNewTab?: boolean;
404
404
  beforeNavigateDataSourceName?: string;
405
+ /**
406
+ * `navigate`: carries the before-navigate data source's response over as Angular
407
+ * Router navigation state instead of (or in addition to) `responseTargetPath`.
408
+ * The target page reads it back via `__route.state` / `{__route.state...}`, with
409
+ * no need for the value to round-trip through the URL.
410
+ */
411
+ passResponseAsNavigationState?: boolean;
412
+ /**
413
+ * `navigate`: key to nest the response under in navigation state, e.g. `order`
414
+ * exposes it as `__route.state.order`. Leave empty to spread the response object
415
+ * at the state root (`__route.state.<field>`).
416
+ */
417
+ navigationStateKey?: string;
405
418
  dataSourceName?: string;
406
419
  /** `sendMessage`: what to push over the websocket source named in `dataSourceName`. */
407
420
  messagePayload?: string;
@@ -996,6 +1009,71 @@ declare class UiTranslationService {
996
1009
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<UiTranslationService>;
997
1010
  }
998
1011
 
1012
+ interface IDescribeElementOptions {
1013
+ /** How deep to walk nested `template` / `columns` children. Default 1. */
1014
+ depth?: number;
1015
+ /** Keep `@IgnoreInJson()` runtime fields such as `errors`, `index`, `uuid`. Default true. */
1016
+ includeRuntimeFields?: boolean;
1017
+ /**
1018
+ * Keep the library's own bookkeeping keys (`__pfInteractionLocked`,
1019
+ * `__nvbTextContext`, ...). Default false - they are noise in a log.
1020
+ */
1021
+ includeInternalFields?: boolean;
1022
+ }
1023
+ /**
1024
+ * A log-friendly view of an element model.
1025
+ *
1026
+ * Model classes declare their fields without initialisers, and with
1027
+ * `useDefineForClassFields` every one of them becomes a real own property set to
1028
+ * `undefined`. A plain `console.log(model)` therefore buries the handful of keys
1029
+ * that carry data under ~30 empty ones. This returns only the keys that actually
1030
+ * hold something, identity keys first.
1031
+ */
1032
+ declare function describeElementModel(element: unknown, options?: IDescribeElementOptions): Record<string, unknown> | null;
1033
+
1034
+ /**
1035
+ * Wildcard key: a patch stored under it applies to every element type, and is
1036
+ * merged *under* the type specific patch, so a type entry always wins.
1037
+ */
1038
+ declare const NGX_VIEW_BUILDER_ANY_ELEMENT_TYPE = "*";
1039
+ /**
1040
+ * Host supplied defaults for freshly created element models, keyed by element
1041
+ * type (`select`, `text`, ...) or by `*` for every type.
1042
+ *
1043
+ * They are applied in ModelService.createModel and only fill in keys the saved
1044
+ * structure does not carry itself, so an author edited value always wins over a
1045
+ * host default, and a host default always wins over the model class field
1046
+ * default it replaces.
1047
+ */
1048
+ type INgxViewBuilderElementDefaults = Record<string, Record<string, unknown>>;
1049
+ declare class ElementDefaultsService {
1050
+ private defaultsByType;
1051
+ private revision;
1052
+ /**
1053
+ * Stores the defaults and returns the element types the call actually changed
1054
+ * (empty when the payload matched what was already stored).
1055
+ */
1056
+ set(defaults: INgxViewBuilderElementDefaults | null | undefined, merge?: boolean): string[];
1057
+ setForType(type: string, patch: Record<string, unknown> | null | undefined, merge?: boolean): boolean;
1058
+ /** Every stored patch, cloned - safe for the host to keep or mutate. */
1059
+ getAll(): INgxViewBuilderElementDefaults;
1060
+ /**
1061
+ * The patch that applies to `type`: the wildcard entry with the type entry
1062
+ * layered on top. Always cloned, so two models never share one options array.
1063
+ */
1064
+ getForType(type: string): Record<string, unknown> | null;
1065
+ /** Removes one type's defaults, or all of them when no type is given. */
1066
+ clear(type?: string | null): string[];
1067
+ hasAny(): boolean;
1068
+ /** Bumped on every effective change - lets consumers cache derived state. */
1069
+ getRevision(): number;
1070
+ private applyTypePatch;
1071
+ private normalizeDefaults;
1072
+ private normalizeType;
1073
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ElementDefaultsService, never>;
1074
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ElementDefaultsService>;
1075
+ }
1076
+
999
1077
  /** An element type offered for a table column of type `element`. */
1000
1078
  interface ITableCellElementType {
1001
1079
  /** Element type code, e.g. `select` or a custom `myRatingWidget`. */
@@ -1534,21 +1612,194 @@ interface INgxViewBuilderTableSavedFilterSaveRequestedEvent {
1534
1612
  filter: INgxViewBuilderTableSavedFilter;
1535
1613
  currentFilters: INgxViewBuilderTableSavedFilter[];
1536
1614
  }
1615
+ /** Drops a subscription created through one of the element handle's `on*` methods. */
1616
+ type NgxViewBuilderUnsubscribe = () => void;
1617
+ /**
1618
+ * One repeater hop on the way to a nested element: which repeater, which of its
1619
+ * rows, and the data path of that row.
1620
+ *
1621
+ * For `el1[1].el6[0].el8` the chain is
1622
+ * `[{ name: 'el1', index: 1, dataPath: 'el1[1]' },
1623
+ * { name: 'el6', index: 0, dataPath: 'el1[1].el6[0]' }]`.
1624
+ */
1625
+ interface INgxViewBuilderRowPathEntry {
1626
+ name: string;
1627
+ index: number;
1628
+ dataPath: string;
1629
+ }
1630
+ /**
1631
+ * Payload handed to `element(...).onValueChanged()`. Deliberately flat: it is
1632
+ * what a host most often wants to log or forward, with the models reachable
1633
+ * through `element` / `api` when more is needed.
1634
+ */
1635
+ interface INgxViewBuilderElementValueEvent {
1636
+ name: string | null;
1637
+ dataPath: string;
1638
+ value: unknown;
1639
+ oldValue: unknown;
1640
+ trigger?: ValueChangeTrigger;
1641
+ /**
1642
+ * Row index inside the subscribed element, or the element's own row index when
1643
+ * subscribing to something that lives in a row. `indexPath` carries the rest.
1644
+ */
1645
+ rowIndex: number | null;
1646
+ /** Every array index in the data path, outermost first: `el1[1].el6[0].el8` -> `[1, 0]`. */
1647
+ indexPath: number[];
1648
+ /** The repeater / row chain the change happened in, outermost first. */
1649
+ rowPath: INgxViewBuilderRowPathEntry[];
1650
+ element: ElementBaseModel | null;
1651
+ api: INgxViewBuilderElementApi;
1652
+ }
1653
+ interface INgxViewBuilderElementPropertyEvent {
1654
+ name: string | null;
1655
+ dataPath: string;
1656
+ propertyKey: string;
1657
+ value: unknown;
1658
+ oldValue: unknown;
1659
+ element: ElementBaseModel | null;
1660
+ }
1661
+ interface INgxViewBuilderElementSubscriptionOptions {
1662
+ /**
1663
+ * Also fire for changes inside the element's own rows (`table1[2].price`).
1664
+ * Defaults to true for repeaters and is meaningless for plain inputs.
1665
+ */
1666
+ includeChildren?: boolean;
1667
+ }
1668
+ interface INgxViewBuilderClearValueOptions {
1669
+ /**
1670
+ * Also drop the validation errors currently shown on the element. Default true.
1671
+ */
1672
+ clearErrors?: boolean;
1673
+ }
1674
+ /** One row of a dynamicTable / dynamicPanel, addressed by its current index. */
1675
+ interface INgxViewBuilderRepeaterRowApi {
1676
+ readonly index: number;
1677
+ get(): Record<string, unknown> | null;
1678
+ set(values: Record<string, unknown>): Promise<boolean>;
1679
+ patch(values: Record<string, unknown>): Promise<boolean>;
1680
+ remove(): Promise<boolean>;
1681
+ /** Handle for one cell of this row, with the full element API on it. */
1682
+ cell(columnName: string): INgxViewBuilderElementApi;
1683
+ }
1684
+ /**
1685
+ * Row level control for `dynamicTable` and `dynamicPanel`. Every mutation writes
1686
+ * through DataService, so the rendered element picks it up the same way it picks
1687
+ * up a click on its own add / delete controls, and fires the matching
1688
+ * `onDynamicTableRow*` / `onDynamicPanelItem*` event.
1689
+ */
1690
+ interface INgxViewBuilderRepeaterApi {
1691
+ readonly supported: boolean;
1692
+ count(): number;
1693
+ get(): Record<string, unknown>[];
1694
+ set(rows: Record<string, unknown>[]): Promise<boolean>;
1695
+ /** Appends a row seeded with the columns' `defaultValue`s. Returns its index. */
1696
+ add(values?: Record<string, unknown>): Promise<number>;
1697
+ insert(index: number, values?: Record<string, unknown>): Promise<number>;
1698
+ remove(index: number): Promise<boolean>;
1699
+ move(fromIndex: number, toIndex: number): Promise<boolean>;
1700
+ clear(): Promise<boolean>;
1701
+ at(index: number): INgxViewBuilderRepeaterRowApi;
1702
+ /** Every row's handle, in current order. */
1703
+ all(): INgxViewBuilderRepeaterRowApi[];
1704
+ }
1705
+ /**
1706
+ * A repeater column / template element. Property writes land on the column
1707
+ * definition *and* on every row model already created from it, which a plain
1708
+ * `setElementProperty` on the column cannot do.
1709
+ */
1710
+ interface INgxViewBuilderElementColumnApi {
1711
+ readonly name: string;
1712
+ readonly exists: boolean;
1713
+ readonly model: ElementBaseModel | null;
1714
+ /**
1715
+ * The chain of template names this handle stands for, e.g. `['el6', 'el8']`
1716
+ * for `element('el1').column('el6').column('el8')`.
1717
+ */
1718
+ readonly templatePath: string[];
1719
+ /**
1720
+ * Steps into a nested repeater's own template / columns, as deep as the
1721
+ * structure nests: a dynamicPanel inside a dynamicPanel inside a dynamicTable.
1722
+ */
1723
+ column(columnName: string): INgxViewBuilderElementColumnApi;
1724
+ getProperty(propertyKey: string): unknown;
1725
+ setProperty(propertyKey: string, value: unknown): boolean;
1726
+ setProperties(propertyPatch: Record<string, unknown>): boolean;
1727
+ removeProperty(propertyKey: string): boolean;
1728
+ resetProperty(propertyKey: string): boolean;
1729
+ setOptions(options: unknown): boolean;
1730
+ setRequired(required?: boolean): boolean;
1731
+ setDisabled(disabled?: boolean): boolean;
1732
+ setReadOnly(readOnly?: boolean): boolean;
1733
+ setHidden(hidden?: boolean): boolean;
1734
+ setLabel(label: string): boolean;
1735
+ /**
1736
+ * Every live model built from this template, across every ancestor row:
1737
+ * for `el1 > el6 > el8` that is `el1[i].el6[j].el8` for all i and j.
1738
+ */
1739
+ cells(): INgxViewBuilderElementApi[];
1740
+ /** Same as `cells()`, named for nested panels where "cell" reads wrong. */
1741
+ instances(): INgxViewBuilderElementApi[];
1742
+ describe(options?: IDescribeElementOptions): Record<string, unknown> | null;
1743
+ }
1537
1744
  interface INgxViewBuilderElementApi {
1538
1745
  readonly name: string | null;
1539
1746
  readonly dataPath: string;
1540
1747
  readonly model: ElementBaseModel | null;
1748
+ /** False once the element is gone from the structure (deleted, page unloaded). */
1749
+ readonly exists: boolean;
1750
+ readonly type: string | null;
1541
1751
  getProperty(propertyKey: string): unknown;
1542
1752
  setProperty(propertyKey: string, value: unknown): boolean;
1543
1753
  setProperties(propertyPatch: Record<string, unknown>): boolean;
1754
+ /** Deletes the key from the model - the property becomes `undefined`. */
1755
+ removeProperty(propertyKey: string): boolean;
1756
+ removeProperties(propertyKeys: readonly string[]): boolean;
1757
+ /** Puts the key back to the element type's built-in default. */
1758
+ resetProperty(propertyKey: string): boolean;
1759
+ resetProperties(propertyKeys?: readonly string[]): boolean;
1544
1760
  setLabel(label: string): boolean;
1761
+ setRequired(required?: boolean): boolean;
1762
+ setDisabled(disabled?: boolean): boolean;
1763
+ setReadOnly(readOnly?: boolean): boolean;
1764
+ setHidden(hidden?: boolean): boolean;
1765
+ setOptions(options: unknown): boolean;
1545
1766
  update(updater: (element: ElementBaseModel) => void): boolean;
1546
1767
  refresh(): boolean;
1547
1768
  getValue(): unknown;
1548
1769
  setValue(value: unknown): Promise<void>;
1770
+ /**
1771
+ * Removes the value from the data object entirely - the key disappears from
1772
+ * `getData()` instead of being left as `null`.
1773
+ */
1774
+ clearValue(options?: INgxViewBuilderClearValueOptions): boolean;
1775
+ /** Back to `defaultValue`, or cleared when the element has none. */
1776
+ reset(): Promise<boolean>;
1549
1777
  setErrors(errors: string | readonly string[] | null | undefined): boolean;
1550
1778
  clearErrors(): boolean;
1551
1779
  getErrors(): string[];
1780
+ onValueChanged(callback: (event: INgxViewBuilderElementValueEvent) => void, options?: INgxViewBuilderElementSubscriptionOptions): NgxViewBuilderUnsubscribe;
1781
+ onValueChanging(callback: (event: INgxViewBuilderElementValueEvent) => void, options?: INgxViewBuilderElementSubscriptionOptions): NgxViewBuilderUnsubscribe;
1782
+ onPropertyChanged(callback: (event: INgxViewBuilderElementPropertyEvent) => void): NgxViewBuilderUnsubscribe;
1783
+ /** Row control for `dynamicTable` / `dynamicPanel`; `supported` is false otherwise. */
1784
+ readonly rows: INgxViewBuilderRepeaterApi;
1785
+ column(columnName: string): INgxViewBuilderElementColumnApi;
1786
+ cell(rowIndex: number, columnName: string): INgxViewBuilderElementApi;
1787
+ /** Only the properties that actually hold a value - readable in a console log. */
1788
+ describe(options?: IDescribeElementOptions): Record<string, unknown> | null;
1789
+ }
1790
+ interface INgxViewBuilderElementDefaultsOptions {
1791
+ /** Merge into what is already registered (default) or replace it. */
1792
+ merge?: boolean;
1793
+ /**
1794
+ * Push the new defaults onto elements that already exist, but only where the
1795
+ * element still carries the type's built-in default, i.e. nothing the author
1796
+ * or the host set explicitly is overwritten. Default true.
1797
+ */
1798
+ applyToExisting?: boolean;
1799
+ }
1800
+ interface INgxViewBuilderElementDefaultsEvent {
1801
+ defaults: INgxViewBuilderElementDefaults;
1802
+ changedTypes: string[];
1552
1803
  }
1553
1804
  interface IElementValueChangingEvent {
1554
1805
  elementDataPath: string;
@@ -1724,6 +1975,8 @@ declare class NgxViewBuilderApiService {
1724
1975
  private expressionService;
1725
1976
  private structureService;
1726
1977
  private validatorService;
1978
+ private modelService;
1979
+ private elementDefaultsService;
1727
1980
  private uiTranslationService;
1728
1981
  private localizationService;
1729
1982
  private eventService;
@@ -1822,6 +2075,7 @@ declare class NgxViewBuilderApiService {
1822
2075
  onTableSavedFiltersChanged: EventEmitter<INgxViewBuilderTableSavedFiltersEvent>;
1823
2076
  onTableSavedFiltersRequested: EventEmitter<INgxViewBuilderTableSavedFiltersRequestEvent>;
1824
2077
  onTableSavedFilterSaveRequested: EventEmitter<INgxViewBuilderTableSavedFilterSaveRequestedEvent>;
2078
+ onElementDefaultsChanged: EventEmitter<INgxViewBuilderElementDefaultsEvent>;
1825
2079
  constructor();
1826
2080
  attachBuilderAdapter(adapter: INgxViewBuilderBuilderAdapter | null | undefined): void;
1827
2081
  /**
@@ -2064,6 +2318,125 @@ declare class NgxViewBuilderApiService {
2064
2318
  setElementProperties(nameOrPath: string, propertyPatch: Record<string, unknown> | null | undefined): boolean;
2065
2319
  updateElement(nameOrPath: string, updater: (element: ElementBaseModel) => void): boolean;
2066
2320
  refreshElement(nameOrPath: string): boolean;
2321
+ /**
2322
+ * Live handle for one element: values, properties, per element subscriptions
2323
+ * and - for a dynamicTable / dynamicPanel - row and column control.
2324
+ *
2325
+ * The handle resolves the model on every call, so it keeps working across
2326
+ * re-renders and across repeater rows being added or removed.
2327
+ */
2328
+ element(nameOrPath: string): INgxViewBuilderElementApi;
2329
+ /** Alias of `element()` for hosts that prefer the longer name. */
2330
+ getElementApi(nameOrPath: string): INgxViewBuilderElementApi;
2331
+ /**
2332
+ * Only the properties that actually hold a value. Model classes materialise
2333
+ * every declared field as an own `undefined` property, so logging a raw model
2334
+ * buries the useful keys - this is the version meant for `console.log`.
2335
+ */
2336
+ describeElement(nameOrPath: string, options?: IDescribeElementOptions): Record<string, unknown> | null;
2337
+ /**
2338
+ * Removes the value at `dataPath` from the data object instead of writing
2339
+ * `null` over it: the key is gone from `getData()` and from the submitted JSON.
2340
+ */
2341
+ clearValue(dataPath: string, options?: INgxViewBuilderClearValueOptions): boolean;
2342
+ clearValues(dataPaths: readonly string[], options?: INgxViewBuilderClearValueOptions): number;
2343
+ /** Same as `clearValue()` but addressed by element name. */
2344
+ clearElementValue(elementNameOrPath: string, options?: INgxViewBuilderClearValueOptions): boolean;
2345
+ /** Back to the element's `defaultValue`, or cleared when it has none. */
2346
+ resetElementValue(elementNameOrPath: string): Promise<boolean>;
2347
+ /** Empties the whole data object. */
2348
+ clearData(): boolean;
2349
+ /**
2350
+ * Deletes the property from the element model, so it reads back as `undefined`
2351
+ * rather than as `null`. The counterpart of `setElementProperty`.
2352
+ */
2353
+ removeElementProperty(nameOrPath: string, propertyKey: string): boolean;
2354
+ removeElementProperties(nameOrPath: string, propertyKeys: readonly string[]): boolean;
2355
+ /**
2356
+ * Puts the property back to the value the element type ships with, ignoring
2357
+ * any host defaults registered through `defaults()`.
2358
+ */
2359
+ resetElementProperty(nameOrPath: string, propertyKey: string): boolean;
2360
+ /** Resets the listed properties, or every built-in one when none are listed. */
2361
+ resetElementProperties(nameOrPath: string, propertyKeys?: readonly string[]): boolean;
2362
+ /**
2363
+ * Host defaults for newly created elements, keyed by element type, with `*`
2364
+ * standing for every type:
2365
+ *
2366
+ * ```ts
2367
+ * api.defaults({
2368
+ * select: { options: [...], showSearch: false },
2369
+ * '*': { width: '50%' },
2370
+ * });
2371
+ * ```
2372
+ *
2373
+ * A default only fills a property the saved structure does not carry itself,
2374
+ * so an author edited value always wins. Called without an argument it just
2375
+ * returns what is registered.
2376
+ */
2377
+ defaults(defaults?: INgxViewBuilderElementDefaults | null, options?: INgxViewBuilderElementDefaultsOptions): INgxViewBuilderElementDefaults;
2378
+ setElementDefaults(defaults: INgxViewBuilderElementDefaults | null | undefined, options?: INgxViewBuilderElementDefaultsOptions): boolean;
2379
+ setElementTypeDefaults(type: string, patch: Record<string, unknown>, options?: INgxViewBuilderElementDefaultsOptions): boolean;
2380
+ setElementTypeDefault(type: string, propertyKey: string, value: unknown, options?: INgxViewBuilderElementDefaultsOptions): boolean;
2381
+ getElementDefaults(type?: string): INgxViewBuilderElementDefaults | Record<string, unknown>;
2382
+ /** The values a type ships with, before any host default is layered on. */
2383
+ getElementTypeBuiltInDefaults(type: string): Record<string, unknown>;
2384
+ clearElementDefaults(type?: string): boolean;
2385
+ private applyElementDefaultsToStructures;
2386
+ private emitElementDefaultsChanged;
2387
+ private clearValueInternal;
2388
+ private applyElementPropertyRemoval;
2389
+ private applyElementPropertyReset;
2390
+ /**
2391
+ * Pushes freshly registered defaults onto elements that already exist, but only
2392
+ * where the element still carries the type's built-in value for that key -
2393
+ * anything the author or the host set explicitly is left alone.
2394
+ */
2395
+ private applyElementDefaultsToExistingElements;
2396
+ /** Every live element model, including repeater columns and panel templates. */
2397
+ private forEachElementModelDeep;
2398
+ private isRepeaterElement;
2399
+ private resolveRepeaterPath;
2400
+ private getRepeaterRows;
2401
+ /** The column definitions of a dynamicTable, or the template of a dynamicPanel. */
2402
+ private resolveRepeaterColumns;
2403
+ private resolveRepeaterColumn;
2404
+ /**
2405
+ * Matches every live instance of a nested template element. `el1` plus
2406
+ * `['el6', 'el8']` becomes `/^el1\[(\d+)\]\.el6\[(\d+)\]\.el8$/`, which is
2407
+ * what the flat model map is keyed by - one entry per combination of rows.
2408
+ */
2409
+ private buildTemplateInstanceMatcher;
2410
+ /**
2411
+ * Every model already built from one template element, across every ancestor
2412
+ * row, ordered by row index (outermost first).
2413
+ */
2414
+ private collectTemplateInstanceModels;
2415
+ private compareDataPathIndexes;
2416
+ private extractDataPathIndexes;
2417
+ /**
2418
+ * Splits `el1[1].el6[0].el8` into the repeater hops that led to it, so a value
2419
+ * event can say which row of which repeater the change happened in.
2420
+ */
2421
+ private buildRowPath;
2422
+ private buildRepeaterRowSeed;
2423
+ private writeRepeaterRows;
2424
+ private notifyRepeaterRowChange;
2425
+ private createRepeaterApi;
2426
+ private createRepeaterRowApi;
2427
+ private createRepeaterCellApi;
2428
+ private createElementColumnApi;
2429
+ /**
2430
+ * Feeds options to whatever the element accepts: the models that own a data
2431
+ * source expose `setOptions()` and normalise label / value mapping there, the
2432
+ * rest just carry an `options` array.
2433
+ */
2434
+ private applyElementOptions;
2435
+ private subscribeToElementValueEvent;
2436
+ private resolveSubscriptionTargetPath;
2437
+ private matchesElementSubscription;
2438
+ private createElementValueEventPayload;
2439
+ private extractRowIndex;
2067
2440
  private createElementApi;
2068
2441
  getElementDom(nameOrPath: string): HTMLElement | null;
2069
2442
  getElementDomById(id: string): HTMLElement | null;
@@ -2072,6 +2445,20 @@ declare class NgxViewBuilderApiService {
2072
2445
  queryRenderDomAll(selector: string): HTMLElement[];
2073
2446
  private ensureStructureSettingsModel;
2074
2447
  private applyElementPropertyMutation;
2448
+ /**
2449
+ * Makes a property write visible on screen.
2450
+ *
2451
+ * Mutating the model is not enough for an element rendered inside a repeater
2452
+ * row: the row holds its model by reference, so it needs a fresh reference to
2453
+ * notice. This is the same two step ExpressionService performs after it writes
2454
+ * visibleIf / disableIf results - swap the reference, then announce the keys -
2455
+ * and it is run once per element, after every key has been written, so a multi
2456
+ * key patch never writes half of itself into a reference that was already
2457
+ * replaced.
2458
+ */
2459
+ private flushElementPropertyChanges;
2460
+ /** True for a model that a dynamicTable / dynamicPanel built for one of its rows. */
2461
+ private isRepeaterRowInstanceModel;
2075
2462
  private getElementPropertyChangeCacheKey;
2076
2463
  private resolveElementLookup;
2077
2464
  private resolveElementFromDom;
@@ -2804,6 +3191,13 @@ declare class AccordionModel extends ElementBaseModel {
2804
3191
  }
2805
3192
 
2806
3193
  declare class DataService {
3194
+ /**
3195
+ * Read for `__language`, never written here. `UiTranslationService` is the one
3196
+ * place the active language lives - `api.setLanguage()`, the `language` input
3197
+ * and `settings.language` all end up there - and it depends on nothing, so
3198
+ * reading it from here cannot cycle.
3199
+ */
3200
+ private uiTranslationService;
2807
3201
  private _data;
2808
3202
  private dirtyState;
2809
3203
  private baselineSnapshot;
@@ -2816,6 +3210,8 @@ declare class DataService {
2816
3210
  getData(): Record<string, unknown>;
2817
3211
  getRawData(): Record<string, unknown>;
2818
3212
  buildRuntimeContext(additionalContext?: Record<string, unknown> | null, baseData?: Record<string, unknown> | null): Record<string, unknown>;
3213
+ /** The language the view is rendered in, as `api.getLanguage()` reports it. */
3214
+ getActiveLanguage(): string;
2819
3215
  setData(data: Record<string, unknown>): void;
2820
3216
  setValue(path: string, value: unknown, options?: {
2821
3217
  sender?: unknown;
@@ -3599,6 +3995,7 @@ declare class RichTextModel extends ElementBaseModel {
3599
3995
  htmlContent: string;
3600
3996
  htmlCss: string;
3601
3997
  toolbarTools?: string[];
3998
+ showWordCount: boolean;
3602
3999
  dataService?: DataService;
3603
4000
  constructor(data?: Partial<RichTextModel>, dataService?: DataService);
3604
4001
  private normalizeOptionalText;
@@ -4259,6 +4656,13 @@ declare class ElementActionService {
4259
4656
  private normalizeConditionExpression;
4260
4657
  private isInteractionLocked;
4261
4658
  private executeNavigate;
4659
+ /**
4660
+ * Turns the before-navigate data source's response into `NavigationExtras.state`,
4661
+ * Angular's built-in way to carry a value into the next route without round-tripping
4662
+ * it through the URL. The target page reads it back via `__route.state`
4663
+ * (see `RuntimeVariablesService`).
4664
+ */
4665
+ private buildNavigationStateExtras;
4262
4666
  private executeBeforeNavigateDataSource;
4263
4667
  /**
4264
4668
  * Pushes a message into a websocket source that is already connected. The socket stays
@@ -5481,12 +5885,68 @@ declare class StructureModel implements IStructure {
5481
5885
  constructor(data?: Partial<StructureModel>);
5482
5886
  }
5483
5887
 
5888
+ interface ICreateModelOptions {
5889
+ /**
5890
+ * Skips the host defaults registered through `api.defaults()`. Used wherever
5891
+ * the *built-in* shape of a type is what matters - the export diff in
5892
+ * RendererService.toObject, and `resetProperty` in the public API - so those
5893
+ * stay independent of whatever the host configured.
5894
+ */
5895
+ skipTypeDefaults?: boolean;
5896
+ }
5484
5897
  declare class ModelService {
5485
5898
  dataService: DataService;
5899
+ private elementDefaultsService;
5900
+ private builtInDefaultsCache;
5486
5901
  private modelMap;
5487
5902
  registerModel(type: string, modelClass: Type<ElementBaseModel>): void;
5488
5903
  registerModels(map: Record<string, Type<ElementBaseModel>>): void;
5489
- createModel(type: string, data?: Partial<unknown>): ElementBaseModel;
5904
+ createModel(type: string, data?: Partial<unknown>, options?: ICreateModelOptions): ElementBaseModel;
5905
+ /**
5906
+ * Strips the live, per-instance members out of a payload that was spread off
5907
+ * another model.
5908
+ *
5909
+ * Every repeater builds its row models by spreading the template model -
5910
+ * `createModel(column.type, { ...column, dataPath, ... })` - and every model
5911
+ * constructor runs `Object.assign(this, data)` *after* its own field
5912
+ * initializers. Whatever the spread carries therefore overwrites the fresh
5913
+ * members the class just made, and the row silently ends up pointing at the
5914
+ * template's:
5915
+ *
5916
+ * - `EventEmitter`s, so `onDataSourceChanged.fire()` for row 2 also runs the
5917
+ * handler every other row registered on that same emitter. One row's option
5918
+ * response then lands in all of them, which is exactly the classifier
5919
+ * bleeding between `dynamicTable` / `dynamicPanel` rows.
5920
+ * - `dataSource` config object, so editing one row's source edits them all.
5921
+ *
5922
+ * Dropping the emitters lets each model keep the one its own field
5923
+ * initializer made; the config objects are copied so a row owns its own.
5924
+ * Keys that are meant to be shared - `parentElement`, `dataService`, the
5925
+ * resolved `dataSource.source` - are passed through untouched.
5926
+ */
5927
+ private detachFromSourceModel;
5928
+ private isLiveEmitter;
5929
+ /**
5930
+ * A copy the row owns, except for `source`: that one is the resolved
5931
+ * `DataSourceModel` the renderer hangs off the config, and it is shared on
5932
+ * purpose - one definition, many readers.
5933
+ */
5934
+ private copyElementDataSource;
5935
+ /**
5936
+ * The values a type carries straight out of its model class, with no host
5937
+ * defaults and no structure data mixed in. Cached per type: building one means
5938
+ * instantiating the model, and `resetProperty` / export diffing ask often.
5939
+ */
5940
+ getBuiltInDefaults(type: string): Record<string, unknown>;
5941
+ hasModel(type: string): boolean;
5942
+ getRegisteredTypes(): string[];
5943
+ /**
5944
+ * Host defaults only fill keys the incoming data leaves `undefined`, so a value
5945
+ * the author saved in the structure always wins. Because the merged payload is
5946
+ * handed to the model constructor, a host default does override the class field
5947
+ * default it replaces - which is the point of the defaults layer.
5948
+ */
5949
+ private applyTypeDefaults;
5490
5950
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModelService, never>;
5491
5951
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<ModelService>;
5492
5952
  }
@@ -6962,24 +7422,72 @@ declare class ConfirmDialog implements OnDestroy {
6962
7422
 
6963
7423
  type AlignCommand = 'left' | 'center' | 'right' | 'justify';
6964
7424
  type InlineCommand = 'bold' | 'italic' | 'underline' | 'strikeThrough';
6965
- type LineHeightOption = 'tight' | 'normal' | 'relaxed';
6966
7425
  type RichTextMarkTag = 'strong' | 'em' | 'u' | 's' | 'mark' | 'code' | 'sub' | 'sup';
7426
+ type RichTextCellVerticalAlign = 'top' | 'middle' | 'bottom';
6967
7427
 
6968
7428
  declare const DEFAULT_FONT = "\"Segoe UI\", Tahoma, Geneva, Verdana, sans-serif";
6969
7429
  declare const DEFAULT_TEXT_COLOR = "#1f2937";
6970
7430
  declare const DEFAULT_FONT_CLASS = "nvb-rt-font-system";
6971
- declare const DEFAULT_SIZE_CLASS = "nvb-rt-size-normal";
7431
+ declare const DEFAULT_SIZE_VALUE = "14";
7432
+ declare const DEFAULT_SIZE_CLASS = "nvb-rt-size-14";
7433
+ declare const DEFAULT_LINE_HEIGHT_VALUE = "1.6";
6972
7434
  declare const COLOR_CLASS_PREFIX = "nvb-rt-color-";
6973
7435
  declare const FONT_CLASS_PREFIX = "nvb-rt-font-";
6974
7436
  declare const SIZE_CLASS_PREFIX = "nvb-rt-size-";
6975
7437
  declare const ALIGN_CLASS_PREFIX = "nvb-rt-align-";
6976
7438
  declare const LINE_HEIGHT_CLASS_PREFIX = "nvb-rt-leading-";
7439
+ declare const HIGHLIGHT_CLASS_PREFIX = "nvb-rt-bg-";
7440
+ declare const INDENT_CLASS_PREFIX = "nvb-rt-indent-";
7441
+ declare const DEFAULT_HIGHLIGHT_COLOR = "#fff3a3";
7442
+ declare const MAX_INDENT_LEVEL = 8;
7443
+ declare const TABLE_CLASS = "nvb-rt-table";
7444
+ declare const TABLE_BORDER_CLASS_PREFIX = "nvb-rt-table-border-";
7445
+ declare const TABLE_CELL_VALIGN_CLASS_PREFIX = "nvb-rt-valign-";
7446
+ declare const TASK_LIST_CLASS = "nvb-rt-task-list";
7447
+ declare const TASK_ITEM_CLASS = "nvb-rt-task-item";
7448
+ declare const TASK_ITEM_CHECKED_CLASS = "nvb-rt-task-checked";
7449
+ /** Width of the clickable checkbox strip in front of a task item, in pixels. */
7450
+ declare const TASK_ITEM_MARKER_WIDTH = 26;
7451
+ declare const MAX_HISTORY_ENTRIES = 120;
7452
+ /** Keystrokes closer together than this land in one undo step. */
7453
+ declare const HISTORY_COALESCE_MS = 600;
7454
+ declare const TABLE_CELL_VALIGN_CLASS_MAP: Record<RichTextCellVerticalAlign, string>;
7455
+ declare const DEFAULT_TABLE_ROWS = 3;
7456
+ declare const DEFAULT_TABLE_COLUMNS = 3;
7457
+ /** Size of the hover grid the table button drops down. */
7458
+ declare const TABLE_PICKER_ROWS = 8;
7459
+ declare const TABLE_PICKER_COLUMNS = 10;
7460
+ declare const TABLE_CELL_BACKGROUND_SWATCHES: string[];
7461
+ declare const HIGHLIGHT_SWATCHES: string[];
7462
+ /**
7463
+ * Characters the special-character picker offers. Kept short on purpose: the picker
7464
+ * is a quick way to reach a degree sign or an arrow, not a full Unicode browser.
7465
+ */
7466
+ declare const SPECIAL_CHARACTERS: string[];
6977
7467
  declare const BLOCK_TAGS: Set<string>;
6978
7468
  declare const INLINE_TAGS: Set<string>;
7469
+ /**
7470
+ * Tags that stand on their own directly under the editor root. Anything else that
7471
+ * turns up there gets folded into a paragraph, so a table or a rule has to be named
7472
+ * here or it would be swallowed by the paragraph before it.
7473
+ */
7474
+ declare const ROOT_BLOCK_TAGS: Set<string>;
6979
7475
  declare const FONT_CLASS_MAP: Record<string, string>;
7476
+ /** Font sizes the dropdown offers, in px - the same ladder a word processor shows. */
7477
+ declare const SIZE_OPTION_VALUES: string[];
6980
7478
  declare const SIZE_CLASS_MAP: Record<string, string>;
7479
+ /**
7480
+ * Sizes were named rather than measured before this. Content saved back then still
7481
+ * carries those class names, so they keep their stylesheet rules and resolve to the
7482
+ * px value the dropdown would show for them.
7483
+ */
7484
+ declare const LEGACY_SIZE_CLASS_MAP: Record<string, string>;
7485
+ /** Line spacing the dropdown offers, as multipliers of the font size. */
7486
+ declare const LINE_HEIGHT_OPTION_VALUES: string[];
6981
7487
  declare const ALIGN_CLASS_MAP: Record<AlignCommand, string>;
6982
- declare const LINE_HEIGHT_CLASS_MAP: Record<LineHeightOption, string>;
7488
+ declare const LINE_HEIGHT_CLASS_MAP: Record<string, string>;
7489
+ /** Same story as the sizes: the three named spacings that came before the numbers. */
7490
+ declare const LEGACY_LINE_HEIGHT_CLASS_MAP: Record<string, string>;
6983
7491
  declare const MARK_TAG_MAP: Record<InlineCommand, RichTextMarkTag>;
6984
7492
  declare const RICH_TEXT_TOOLBAR_TOOLS: Array<{
6985
7493
  value: string;
@@ -7006,7 +7514,36 @@ declare const RICH_TEXT_TOOLBAR_ICONS: {
7006
7514
  readonly subscript: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"m5.41 5 4.09 5.16L13.59 5H16l-5.29 6.6L16.3 19H13.8l-4.3-5.46L5.2 19H2.7l5.59-7.4L3 5h2.41Zm12.64 10.6c1.26 0 2.05.62 2.05 1.68 0 .47-.16.88-.48 1.25l-1.29 1.47H20V21h-4.1v-.9l1.94-2.21c.18-.2.26-.38.26-.57 0-.32-.23-.5-.63-.5-.38 0-.73.16-1.05.49l-.79-.9c.47-.54 1.16-.81 2.06-.81Z\"/></svg>";
7007
7515
  readonly superscript: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"m5.41 5 4.09 5.16L13.59 5H16l-5.29 6.6L16.3 19H13.8l-4.3-5.46L5.2 19H2.7l5.59-7.4L3 5h2.41Zm12.64.4c1.26 0 2.05.62 2.05 1.68 0 .47-.16.88-.48 1.25L18.33 9.8H20V11h-4.1v-.9l1.94-2.21c.18-.2.26-.38.26-.57 0-.32-.23-.5-.63-.5-.38 0-.73.16-1.05.49l-.79-.9c.47-.54 1.16-.81 2.06-.81Z\"/></svg>";
7008
7516
  readonly image: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M5 4h14a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2Zm0 2v12h14V6H5Zm2 10 3-4 2.5 3 2-2.5L17 16H7Zm2-7.5A1.5 1.5 0 1 1 9 11a1.5 1.5 0 0 1 0-3Z\"/></svg>";
7517
+ readonly video: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 5h11a2 2 0 0 1 2 2v2.4l4-2.4v10l-4-2.4V17a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2Zm0 2v10h11V7H4Z\"/></svg>";
7518
+ readonly embed: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 3h16a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2Zm0 2v3h16V5H4Zm0 5v9h16v-9H4Zm4.4 2.2 1.3 1.3L8.1 15l1.6 1.5-1.3 1.3L5.5 15l2.9-2.8Zm7.2 0L18.5 15l-2.9 2.8-1.3-1.3L15.9 15l-1.6-1.5 1.3-1.3Z\"/></svg>";
7519
+ readonly highlight: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 19h16v3H4v-3Zm3.9-4.3 7.8-7.8 2.4 2.4-7.8 7.8H7.9v-2.4Zm9.2-9.2 1.4-1.4a1 1 0 0 1 1.4 0l1 1a1 1 0 0 1 0 1.4l-1.4 1.4-2.4-2.4ZM5.5 13.1h2.4v2.4l-2.4 2.4v-4.8Z\"/></svg>";
7520
+ readonly indent: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M3 3h18v2H3V3Zm8 4h10v2H11V7Zm0 4h10v2H11v-2Zm0 4h10v2H11v-2ZM3 19h18v2H3v-2ZM3 8l4 4-4 4V8Z\"/></svg>";
7521
+ readonly outdent: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M3 3h18v2H3V3Zm8 4h10v2H11V7Zm0 4h10v2H11v-2Zm0 4h10v2H11v-2ZM3 19h18v2H3v-2ZM7 8v8l-4-4 4-4Z\"/></svg>";
7522
+ readonly taskList: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M11 5h10v2H11V5Zm0 6h10v2H11v-2Zm0 6h10v2H11v-2ZM4.5 8.6 2.3 6.4l1.4-1.4 0.8 0.8 2.2-2.2 1.4 1.4-3.6 3.6Zm0 6L2.3 12.4l1.4-1.4 0.8 0.8 2.2-2.2 1.4 1.4-3.6 3.6Zm0 6-2.2-2.2 1.4-1.4 0.8 0.8 2.2-2.2 1.4 1.4-3.6 3.6Z\"/></svg>";
7523
+ readonly specialCharacter: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M12 3a7 7 0 0 1 5.1 11.8c-1 1.1-1.6 2-1.8 2.7h3.9V21H13v-2.8c0-1.6.7-3 2.1-4.5A5 5 0 1 0 6.9 13.7C8.3 15.2 9 16.6 9 18.2V21H4.8v-3.5h3.9c-.2-.7-.8-1.6-1.8-2.7A7 7 0 0 1 12 3Z\"/></svg>";
7524
+ readonly findReplace: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M10 3a7 7 0 0 1 5.5 11.3l5.1 5.1-1.4 1.4-5.1-5.1A7 7 0 1 1 10 3Zm0 2a5 5 0 1 0 0 10 5 5 0 0 0 0-10Zm-1 2.2h2v2.3h2.3v2H11v2.3H9v-2.3H6.7v-2H9V7.2Z\"/></svg>";
7525
+ readonly sourceCode: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M8.6 16.6 4 12l4.6-4.6L10 8.8 6.8 12 10 15.2l-1.4 1.4Zm6.8 0L14 15.2 17.2 12 14 8.8l1.4-1.4L20 12l-4.6 4.6Z\"/></svg>";
7526
+ readonly table: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 3h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Zm1 2v3h4V5H5Zm6 0v3h3V5h-3Zm5 0v3h3V5h-3ZM5 10v3h4v-3H5Zm6 0v3h3v-3h-3Zm5 0v3h3v-3h-3ZM5 15v4h4v-4H5Zm6 0v4h3v-4h-3Zm5 0v4h3v-4h-3Z\"/></svg>";
7527
+ readonly tableRowAbove: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M3 14h18v6H3v-6Zm8-12h2v3h3v2h-3v3h-2V7H8V5h3V2Z\"/></svg>";
7528
+ readonly tableRowBelow: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M3 4h18v6H3V4Zm8 8h2v3h3v2h-3v3h-2v-3H8v-2h3v-3Z\"/></svg>";
7529
+ readonly tableColumnLeft: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M14 3h6v18h-6V3ZM5 11V8h2v3h3v2H7v3H5v-3H2v-2h3Z\"/></svg>";
7530
+ readonly tableColumnRight: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 3h6v18H4V3Zm13 8V8h2v3h3v2h-3v3h-2v-3h-3v-2h3Z\"/></svg>";
7531
+ readonly tableDeleteRow: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M3 4h18v5H3V4Zm0 11h18v5H3v-5Zm5-4h8v2H8v-2Z\"/></svg>";
7532
+ readonly tableDeleteColumn: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 3h5v18H4V3Zm11 0h5v18h-5V3Zm-4.5 8h4v2h-4v-2Z\"/></svg>";
7533
+ readonly tableMergeCells: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 4h16a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1Zm1 2v12h14V6H5Zm2.5 5h3.2L9.3 9.6l1.4-1.4L14.5 12l-3.8 3.8-1.4-1.4L10.7 13H7.5v-2Z\"/></svg>";
7534
+ readonly tableSplitCell: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 4h16a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1Zm1 2v12h14V6H5Zm6 1h2v10h-2V7Z\"/></svg>";
7535
+ readonly tableHeaderRow: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 4h16a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1Zm1 2v3h14V6H5Zm0 5v7h14v-7H5Z\"/></svg>";
7536
+ readonly tableHeaderColumn: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 4h16a1 1 0 0 1 1 1v14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1Zm1 2v12h4V6H5Zm6 0v12h8V6h-8Z\"/></svg>";
7537
+ readonly tableCellBackground: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M16.6 12.6 7.4 3.4 6 4.8l2 2-4.6 4.6a1 1 0 0 0 0 1.4l6.4 6.4a1 1 0 0 0 1.4 0l5.4-5.4a1 1 0 0 0 0-1.2ZM6.6 12.8 10.4 9l3.8 3.8H6.6ZM19 14s-2 2.2-2 3.5a2 2 0 1 0 4 0c0-1.3-2-3.5-2-3.5Z\"/></svg>";
7538
+ readonly tableDelete: "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M4 3h16a1 1 0 0 1 1 1v7h-2V9h-5v2h-2V9H9v3h3v2H9v5h3v2H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Zm1 2v2h2V5H5Zm4 0v2h4V5H9Zm6 0v2h4V5h-4ZM5 9v3h2V9H5Zm0 5v5h2v-5H5Zm11.2 1.4 2.1-2.1 1.4 1.4-2.1 2.1 2.1 2.1-1.4 1.4-2.1-2.1-2.1 2.1-1.4-1.4 2.1-2.1-2.1-2.1 1.4-1.4 2.1 2.1Z\"/></svg>";
7009
7539
  };
7540
+ /**
7541
+ * What a `richText` element shows when nobody has picked a toolbar: the tools most
7542
+ * documents actually need. Everything else is a tick away in the element's
7543
+ * `toolbarTools` property. The HTML property editor ignores this and shows the lot,
7544
+ * because that is where content gets authored rather than filled in.
7545
+ */
7546
+ declare const RICH_TEXT_DEFAULT_TOOLBAR_TOOLS: string[];
7010
7547
 
7011
7548
  declare class NvbRichTextEditor {
7012
7549
  html: _angular_core.InputSignal<string>;
@@ -7017,6 +7554,7 @@ declare class NvbRichTextEditor {
7017
7554
  emitOnInput: _angular_core.InputSignal<boolean>;
7018
7555
  placeholder: _angular_core.InputSignal<string>;
7019
7556
  minimalViewer: _angular_core.InputSignal<boolean>;
7557
+ showWordCount: _angular_core.InputSignal<boolean>;
7020
7558
  enabledTools: _angular_core.InputSignal<string[]>;
7021
7559
  htmlChange: EventEmitter$1<string>;
7022
7560
  htmlCssChange: EventEmitter$1<string>;
@@ -7053,7 +7591,7 @@ declare class NvbRichTextEditor {
7053
7591
  onCoreBlur(html: string): void;
7054
7592
  private splitStyleBlocks;
7055
7593
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<NvbRichTextEditor, never>;
7056
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<NvbRichTextEditor, "nvb-rich-text-editor", never, { "html": { "alias": "html"; "required": false; "isSignal": true; }; "viewerHtml": { "alias": "viewerHtml"; "required": false; "isSignal": true; }; "htmlCss": { "alias": "htmlCss"; "required": false; "isSignal": true; }; "readOnly": { "alias": "readOnly"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "emitOnInput": { "alias": "emitOnInput"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "minimalViewer": { "alias": "minimalViewer"; "required": false; "isSignal": true; }; "enabledTools": { "alias": "enabledTools"; "required": false; "isSignal": true; }; }, { "htmlChange": "htmlChange"; "htmlCssChange": "htmlCssChange"; "editorFocus": "editorFocus"; "editorBlur": "editorBlur"; }, never, never, true, never>;
7594
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NvbRichTextEditor, "nvb-rich-text-editor", never, { "html": { "alias": "html"; "required": false; "isSignal": true; }; "viewerHtml": { "alias": "viewerHtml"; "required": false; "isSignal": true; }; "htmlCss": { "alias": "htmlCss"; "required": false; "isSignal": true; }; "readOnly": { "alias": "readOnly"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "emitOnInput": { "alias": "emitOnInput"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "minimalViewer": { "alias": "minimalViewer"; "required": false; "isSignal": true; }; "showWordCount": { "alias": "showWordCount"; "required": false; "isSignal": true; }; "enabledTools": { "alias": "enabledTools"; "required": false; "isSignal": true; }; }, { "htmlChange": "htmlChange"; "htmlCssChange": "htmlCssChange"; "editorFocus": "editorFocus"; "editorBlur": "editorBlur"; }, never, never, true, never>;
7057
7595
  }
7058
7596
 
7059
7597
  interface INvbSelectOption {
@@ -7067,16 +7605,35 @@ declare class NvbSelect implements ControlValueAccessor, AfterViewInit, OnDestro
7067
7605
  nativeSelectRef: ElementRef<HTMLSelectElement>;
7068
7606
  triggerButtonRef: ElementRef<HTMLButtonElement>;
7069
7607
  menuRef?: ElementRef<HTMLDivElement>;
7608
+ filterInputRef?: ElementRef<HTMLInputElement>;
7070
7609
  optionButtonRefs?: QueryList<ElementRef<HTMLButtonElement>>;
7071
7610
  set value(value: unknown);
7072
7611
  get value(): string;
7073
7612
  set disabled(value: boolean | string | null | undefined);
7074
7613
  set required(value: boolean | string | null | undefined);
7614
+ /**
7615
+ * Whether the menu carries a filter box. `'auto'` shows one once the list is long
7616
+ * enough to be worth searching, which is the point of it - a three-option menu reads
7617
+ * faster than a search field does.
7618
+ */
7619
+ set filterable(value: boolean | string | null | undefined);
7620
+ set filterThreshold(value: number | string | null | undefined);
7621
+ /**
7622
+ * Turns the control into a combo box: the options are suggestions rather than the only
7623
+ * answers, and whatever is typed into the filter box can be committed as the value.
7624
+ * This is what replaces the native `<datalist>` inputs.
7625
+ */
7626
+ set allowCustomValue(value: boolean | string | null | undefined);
7627
+ get allowCustomValue(): boolean;
7628
+ placeholder: string;
7075
7629
  valueChange: EventEmitter$1<string>;
7076
7630
  change: EventEmitter$1<Event>;
7077
7631
  focus: EventEmitter$1<FocusEvent>;
7078
7632
  blur: EventEmitter$1<FocusEvent>;
7079
7633
  options: _angular_core.WritableSignal<INvbSelectOption[]>;
7634
+ filterQuery: _angular_core.WritableSignal<string>;
7635
+ /** A combo box opens with its own value in the box; that text must not filter yet. */
7636
+ filterTouched: _angular_core.WritableSignal<boolean>;
7080
7637
  selectedLabel: _angular_core.WritableSignal<string>;
7081
7638
  isPlaceholder: _angular_core.WritableSignal<boolean>;
7082
7639
  isOpen: _angular_core.WritableSignal<boolean>;
@@ -7093,6 +7650,11 @@ declare class NvbSelect implements ControlValueAccessor, AfterViewInit, OnDestro
7093
7650
  private removeGlobalListeners;
7094
7651
  private forwardedHostClasses;
7095
7652
  private internalValue;
7653
+ private filterMode;
7654
+ private filterThresholdValue;
7655
+ private customValueAllowed;
7656
+ /** Enter takes the highlighted option only once the arrows have been used. */
7657
+ private hasNavigatedMenu;
7096
7658
  private inputDisabled;
7097
7659
  private controlDisabled;
7098
7660
  private inputRequired;
@@ -7121,6 +7683,12 @@ declare class NvbSelect implements ControlValueAccessor, AfterViewInit, OnDestro
7121
7683
  onTriggerKeydown(event: KeyboardEvent): void;
7122
7684
  onOptionMouseDown(index: number, event: MouseEvent): void;
7123
7685
  onOptionClick(index: number, event: MouseEvent): void;
7686
+ /** The options the menu is currently showing, after the filter box has had its say. */
7687
+ visibleOptions(): INvbSelectOption[];
7688
+ isFilterVisible(): boolean;
7689
+ onFilterInput(event: Event): void;
7690
+ onFilterKeydown(event: KeyboardEvent): void;
7691
+ onFilterBlur(): void;
7124
7692
  optionId(index: number): string;
7125
7693
  activeDescendantId(): string | null;
7126
7694
  onDocumentMouseDown(event: MouseEvent): void;
@@ -7137,6 +7705,8 @@ declare class NvbSelect implements ControlValueAccessor, AfterViewInit, OnDestro
7137
7705
  private syncFromNativeOptions;
7138
7706
  private openMenu;
7139
7707
  private closeMenu;
7708
+ /** Stores text that matches no option, which only a combo box is allowed to do. */
7709
+ private commitCustomValue;
7140
7710
  private setupGlobalListeners;
7141
7711
  private updateMenuPosition;
7142
7712
  private measureFitContentMenuWidth;
@@ -7154,7 +7724,7 @@ declare class NvbSelect implements ControlValueAccessor, AfterViewInit, OnDestro
7154
7724
  private coerceBoolean;
7155
7725
  private runInZone;
7156
7726
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<NvbSelect, never>;
7157
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<NvbSelect, "nvb-select", never, { "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "required": { "alias": "required"; "required": false; }; }, { "valueChange": "valueChange"; "change": "change"; "focus": "focus"; "blur": "blur"; }, never, ["*"], true, never>;
7727
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NvbSelect, "nvb-select", never, { "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "required": { "alias": "required"; "required": false; }; "filterable": { "alias": "filterable"; "required": false; }; "filterThreshold": { "alias": "filterThreshold"; "required": false; }; "allowCustomValue": { "alias": "allowCustomValue"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; }, { "valueChange": "valueChange"; "change": "change"; "focus": "focus"; "blur": "blur"; }, never, ["*"], true, never>;
7158
7728
  }
7159
7729
 
7160
7730
  declare class ElementContentRow implements OnInit, OnDestroy {
@@ -7233,6 +7803,8 @@ declare class AccordionElement implements OnInit, OnDestroy {
7233
7803
  readonly itemTemplateScopeId: string;
7234
7804
  readonly itemTemplateScopeSelector: string;
7235
7805
  model: _angular_core.InputSignal<AccordionModel>;
7806
+ /** Test ids for this element, namespaced by its data path or name. */
7807
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7236
7808
  column: _angular_core.InputSignal<ColumnModel>;
7237
7809
  rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
7238
7810
  templateContext: _angular_core.InputSignal<Record<string, unknown>>;
@@ -7302,6 +7874,8 @@ declare class DialogElement implements OnInit, OnDestroy {
7302
7874
  readonly templateScopeId: string;
7303
7875
  readonly templateScopeSelector: string;
7304
7876
  model: _angular_core.InputSignal<DialogModel>;
7877
+ /** Test ids for this element, namespaced by its data path or name. */
7878
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7305
7879
  column: _angular_core.InputSignal<ColumnModel>;
7306
7880
  rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
7307
7881
  templateContext: _angular_core.InputSignal<Record<string, unknown>>;
@@ -7410,6 +7984,8 @@ declare class DynamicPanel implements OnInit, OnDestroy {
7410
7984
  readonly templateScopeId: string;
7411
7985
  readonly templateScopeSelector: string;
7412
7986
  model: _angular_core.InputSignal<ElementBaseModel>;
7987
+ /** Test ids for this element, namespaced by its data path or name. */
7988
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7413
7989
  column: _angular_core.InputSignal<ColumnModel>;
7414
7990
  private dragAutoScrollService;
7415
7991
  recursiveData: _angular_core.InputSignal<Record<string, unknown>[]>;
@@ -7535,6 +8111,8 @@ declare class EmptyBlockElement implements OnInit, OnDestroy {
7535
8111
  private eventService;
7536
8112
  private dragAndDropService;
7537
8113
  model: _angular_core.InputSignal<EmptyBlockModel>;
8114
+ /** Test ids for this element, namespaced by its data path or name. */
8115
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7538
8116
  column: _angular_core.InputSignal<ColumnModel>;
7539
8117
  isMobileView: _angular_core.InputSignal<boolean>;
7540
8118
  rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
@@ -7614,6 +8192,8 @@ declare class PageElement implements OnInit, OnDestroy {
7614
8192
  private dragAndDropService;
7615
8193
  private readonly elementHoverService;
7616
8194
  model: _angular_core.InputSignal<PageElementModel>;
8195
+ /** Test ids for this element, namespaced by its data path or name. */
8196
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7617
8197
  pageRows: _angular_core.InputSignal<RowModel[]>;
7618
8198
  pageIsEmpty: _angular_core.InputSignal<boolean>;
7619
8199
  isEditor: _angular_core.InputSignal<boolean>;
@@ -7646,6 +8226,8 @@ declare class PanelElement implements OnInit, OnDestroy {
7646
8226
  readonly templateScopeId: string;
7647
8227
  readonly templateScopeSelector: string;
7648
8228
  model: _angular_core.InputSignal<ElementBaseModel | PanelModel>;
8229
+ /** Test ids for this element, namespaced by its data path or name. */
8230
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7649
8231
  column: _angular_core.InputSignal<ColumnModel>;
7650
8232
  isMobileView: _angular_core.InputSignal<boolean>;
7651
8233
  isEmpty: _angular_core.WritableSignal<boolean>;
@@ -7707,6 +8289,8 @@ declare class ProgressFlowElement implements OnInit, OnDestroy {
7707
8289
  readonly stepTemplateScopeId: string;
7708
8290
  readonly stepTemplateScopeSelector: string;
7709
8291
  model: _angular_core.InputSignal<ProgressFlowModel>;
8292
+ /** Test ids for this element, namespaced by its data path or name. */
8293
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7710
8294
  column: _angular_core.InputSignal<ColumnModel>;
7711
8295
  rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
7712
8296
  templateContext: _angular_core.InputSignal<Record<string, unknown>>;
@@ -7795,6 +8379,8 @@ declare class ProgressFlowElement implements OnInit, OnDestroy {
7795
8379
 
7796
8380
  declare class SplitterElement implements OnInit, OnDestroy {
7797
8381
  model: _angular_core.InputSignal<SplitterModel>;
8382
+ /** Test ids for this element, namespaced by its data path or name. */
8383
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7798
8384
  column: _angular_core.InputSignal<ColumnModel>;
7799
8385
  isMobileView: _angular_core.InputSignal<boolean>;
7800
8386
  rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
@@ -7857,6 +8443,8 @@ declare class TabsElement implements OnInit, OnDestroy {
7857
8443
  readonly tabTemplateScopeId: string;
7858
8444
  readonly tabTemplateScopeSelector: string;
7859
8445
  model: _angular_core.InputSignal<TabsModel>;
8446
+ /** Test ids for this element, namespaced by its data path or name. */
8447
+ protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
7860
8448
  column: _angular_core.InputSignal<ColumnModel>;
7861
8449
  rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
7862
8450
  templateContext: _angular_core.InputSignal<Record<string, unknown>>;
@@ -8428,6 +9016,7 @@ declare class RendererService {
8428
9016
  }
8429
9017
 
8430
9018
  declare class PreviewRendererService extends RendererService {
9019
+ private readonly uiTranslationService;
8431
9020
  private isDataSourceValueWatcherBound;
8432
9021
  private elementDataSourceSubscriptions;
8433
9022
  stopPreviewDataSources(): void;
@@ -8436,6 +9025,7 @@ declare class PreviewRendererService extends RendererService {
8436
9025
  getDataSource(name: string): DataSourceModel | undefined;
8437
9026
  private loadElementDataSource;
8438
9027
  private bindDataSourceValueWatcher;
9028
+ private reloadElementsWatching;
8439
9029
  private isElementUsingDataPath;
8440
9030
  private isDataPathMaterialized;
8441
9031
  private extractDependenciesFromUnknown;
@@ -8459,6 +9049,13 @@ interface IRuntimeRouteVariables {
8459
9049
  queryParams: Record<string, unknown>;
8460
9050
  data: Record<string, unknown>;
8461
9051
  fragment: string | null;
9052
+ /**
9053
+ * Value passed via Angular Router's `NavigationExtras.state` by the navigation that
9054
+ * landed on this route (e.g. a `navigate` action's `passResponseAsNavigationState`).
9055
+ * Angular stores this in `history.state`, so it survives only for the in-app
9056
+ * navigation that set it - a hard refresh or a direct URL open leaves it empty.
9057
+ */
9058
+ state: Record<string, unknown>;
8462
9059
  }
8463
9060
 
8464
9061
  declare class RuntimeVariablesService {
@@ -8513,6 +9110,12 @@ declare class RuntimeVariablesService {
8513
9110
  private isProjectedDataPath;
8514
9111
  private buildRouteVariables;
8515
9112
  private createEmptyVariables;
9113
+ /**
9114
+ * Reads the state the current navigation was given via Angular Router's
9115
+ * `NavigationExtras.state` (Angular mirrors it into `history.state`). Filters out
9116
+ * Angular's own `navigationId` bookkeeping key so only the caller's payload remains.
9117
+ */
9118
+ private readNavigationState;
8516
9119
  private normalizeMappings;
8517
9120
  private normalizeSourceType;
8518
9121
  private resolveDataSourceRefreshPaths;
@@ -8767,5 +9370,5 @@ declare function isMobileViewport(): boolean;
8767
9370
  declare function isTabletViewport(): boolean;
8768
9371
  declare function normalizeBreakpoint(value: unknown, fallback: number): number;
8769
9372
 
8770
- export { ALIGN_CLASS_MAP, ALIGN_CLASS_PREFIX, APPLICATION_LOCALE_VALUE, AccordionElement, AccordionModel, ApplicationLocaleService, AutocompleteModel, AvatarModel, BLOCK_TAGS, BUILT_IN_STRUCTURE_MIGRATIONS, BUILT_IN_TABLE_CELL_ELEMENT_TYPES, BadgeModel, BreadcrumbsModel, BuilderModel, BuilderPageDisplayModeEnum, BuilderTabRegistryService, ButtonModel, COLOR_CLASS_PREFIX, CURRENT_SCHEMA_VERSION, ChartModel, CheckboxInputModel, ChoiceModel, ColumnFragmentModeEnum, ColumnModel, ComponentRegistryService, ConfirmDialog, CreatorStructureService, CustomHtmlModel, DATA_JSON_CAPABLE_ELEMENT_TYPES, DEFAULT_FONT, DEFAULT_FONT_CLASS, DEFAULT_MOBILE_BREAKPOINT, DEFAULT_SIZE_CLASS, DEFAULT_TABLET_BREAKPOINT, DEFAULT_TEXT_COLOR, DataService, DataSourceModel, DataSourceService, DatePickerModel, DateRangeModel, DialogDragController, DialogElement, DialogModel, DividerModel, DomInstrumentationService, DragAndDropService, DragAutoScrollService, DynamicPanel, DynamicPanelModel, DynamicTableColumnModel, DynamicTableModel, DynamicTableRowColumnModel, DynamicTextPipe, ELEMENT_ROW_CONTEXT_KEY, ELEMENT_ROW_SCOPE_PATH_KEY, EN_UI_DICTIONARY, EXCLUDE_FROM_DATA_JSON_KEY, ElementActionButtonToneEnum, ElementActionButtonVariantEnum, ElementActionDialogOperationEnum, ElementActionResponseModeEnum, ElementActionService, ElementActionSetValueModeEnum, ElementActionToastPositionEnum, ElementActionToastVariantEnum, ElementActionTriggerEnum, ElementActionTypeEnum, ElementBaseModel, ElementContentBox, ElementContentRow, ElementDataSourceUseForEnum, ElementExecutionModeEnum, ElementFocusService, ElementTypesEnum, ElementsService, EmptyBlockElement, EmptyBlockModel, EventService, ExpressionService, FONT_CLASS_MAP, FONT_CLASS_PREFIX, FeaturePackRegistryService, FileUploadModel, ForgeInitializerService, HeaderModel, HeaderTabEnum, INLINE_TAGS, IconModel, IconSvgService, IframeModel, ImageModel, LEGACY_SCHEMA_VERSION, LINE_HEIGHT_CLASS_MAP, LINE_HEIGHT_CLASS_PREFIX, LOCALE_CHOICES, ListBoxModel, ListGridModel, LocalizationService, MANAGED_STRUCTURE_SETTING_KEYS, MARK_TAG_MAP, MarkupSecurityService, MessageCardModel, ModelService, MultiSelectInputModel, NGX_VIEW_BUILDER_AI_ACTION_TYPES, NGX_VIEW_BUILDER_AI_API_VERSION, NGX_VIEW_BUILDER_AI_AUTOMATION_ACTION_TYPES, NGX_VIEW_BUILDER_AI_ROW_CONTAINERS, NGX_VIEW_BUILDER_AI_TAB_CONTAINERS, NGX_VIEW_BUILDER_AI_TEMPLATES_CAPABILITY, NGX_VIEW_BUILDER_AI_VALIDATOR_TYPES, NGX_VIEW_BUILDER_BRIDGE_PROTOCOL_VERSION, NGX_VIEW_BUILDER_PROJECT_LAYER, NGX_VIEW_BUILDER_UI_TRANSLATIONS, NVB_TEXT_CONTEXT_KEY, NgxViewBuilder, NgxViewBuilderActionExecutorService, NgxViewBuilderAiApiService, NgxViewBuilderAlignEnum, NgxViewBuilderApiService, NgxViewBuilderAutomationActionTypeEnum, NgxViewBuilderAutomationService, NgxViewBuilderBuilderTabRenderModeEnum, NgxViewBuilderChromePositionEnum, NgxViewBuilderDataSourceTypeEnum, NgxViewBuilderDialogCloseReasonEnum, NgxViewBuilderExecutionReasonEnum, NgxViewBuilderHeadlessService, NgxViewBuilderInteractionStatusEnum, NgxViewBuilderMcpBridgeService, NgxViewBuilderPageNavigationModeEnum, NgxViewBuilderPreviewModeEnum, NgxViewBuilderProcessService, NgxViewBuilderRenderModeEnum, NgxViewBuilderRenderPhaseEnum, NgxViewBuilderRenderer, NgxViewBuilderRuleExecutedBranchEnum, NgxViewBuilderRuleRunModeEnum, NgxViewBuilderRulesEngineService, NgxViewBuilderRuntime, NgxViewBuilderSaveRequestedSourceEnum, NgxViewBuilderTableSettingsSourceEnum, NgxViewBuilderThemeModeEnum, NgxViewBuilderTriggerEngineService, NgxViewBuilderTriggerEventEnum, NgxViewBuilderValidator, NgxViewBuilderWebsocketMessageModeEnum, NumberInputModel, NumberStepperModel, NvbElement, NvbElementContextService, NvbIcon, NvbRichTextEditor, NvbRows, NvbScope, NvbSelect, NvbStyleOutlet, NvbTab, PHONE_COUNTRY_OPTIONS, PHONE_COUNTRY_PROPERTY_CHOICES, PageElement, PageTitleModel, PanelElement, PanelModel, PhoneInputModel, PreviewRendererService, ProgressBarModel, ProgressFlowElement, ProgressFlowModel, PropertyModel, RICH_TEXT_TOOLBAR_ICONS, RICH_TEXT_TOOLBAR_TOOLS, RadioInputModel, RendererService, RichTextModel, RouterOutletModel, RowModel, RuntimeDynamicPanel, RuntimeVariableSourceTypeEnum, RuntimeVariablesService, SIZE_CLASS_MAP, SIZE_CLASS_PREFIX, SelectButtonModel, SelectInputModel, SettingsModel, SignaturePadModel, SingleCheckboxModel, SliderModel, SpacerModel, SplitterElement, SplitterModel, StateService, StatsCardModel, StructureMigrationService, StructureModel, StructureService, TableCellElementRegistryService, TableColumnAlignEnum, TableColumnCellActionsDisplayModeEnum, TableColumnTypeEnum, TableFilterControlTypeEnum, TableFilterOptionsSourceTypeEnum, TableInlineEditStartModeEnum, TableInlineEditorTypeEnum, TableModel, TableRowActionsDropdownButtonStyleEnum, TableStatusToneEnum, TabsElement, TabsModel, TabsProModel, TemplateEngineService, TemplateStorageModeEnum, TextAreaModel, TextInputModel, TimePickerModel, ToastModel, ToggleSwitchModel, TooltipComponent, UiTranslatePipe, UiTranslationService, ValidatorService, ValueChangeTriggerEnum, VideoModel, applyDynamicPanelRowNumberingContext, applyElementRowContext, applyRuntimeNumberingContext, applyStructureMigrations, applyViewportBreakpoints, bridgeNgxViewBuilderApiEvents, buildElementRowRuntimeContext, buildFocusKey, buildResponsiveColumnStyle, clearStructureMigrationNotice, cloneRecord, cloneValue, composeCssSize, configureStructureMigrations, createUuid, describeDragEvent, describeEventTarget, describeMouseEvent, elements, getMobileBreakpoint, getRuntimeTextContext, getStructureMigrationConfig, getTabletBreakpoint, getViewportContentWidth, isDataJsonCapableElementType, isDragDebugEnabled, isMobileViewport, isMobileWidth, isPlainRecord, isRelativeResponsiveWidth, isTabletViewport, isTabletWidth, lastStructureMigration, logDragDebug, logDragDebugThrottled, migrateStructure, normalizeBreakpoint, normalizeCssSizeUnit, normalizeResponsiveCssSize, normalizeStringList, provideNgxViewBuilderExtensions, provideNgxViewBuilderMigrations, provideNgxViewBuilderProjectLayer, provideNgxViewBuilderProjectLayers, provideNgxViewBuilderRuntime, provideNgxViewBuilderUiTranslations, pruneStructureSettings, readSchemaVersion, recordStructureMigration, resetStructureMigrationConfig, resolveAllowedPhoneCountries, resolveCssSizeSetting, resolveElementRowContext, resolveElementRowScope, resolveElementRowScopedPath, resolveFixedViewport, resolvePhoneCountry, resolveResponsiveDisplayWidth, resolveResponsiveWidth, resolveRuntimeTextContextValue, resolveStructureSettings, setElementRowContext, setViewportContentWidth };
8771
- export type { BreadcrumbsItemsSource, BuilderPageDisplayMode, ChartLegendLayout, ChartType, ColumnFragmentMode, DatePickerMode, DialogHeadingLevel, DialogMode, DialogTriggerAlign, DialogTriggerIconPosition, DialogTriggerVariant, ElementActionButtonTone, ElementActionButtonVariant, ElementActionDialogOperation, ElementActionResponseMode, ElementActionSetValueMode, ElementActionToastPosition, ElementActionToastVariant, ElementActionTrigger, ElementActionType, ElementDataSourceUseFor, ElementExecutionMode, ElementGroup, ElementRowScope, EmptyBlockFormStatus, EmptyBlockType, IAccordionItem, IBaseElement, IBreadcrumbItem, IBuilderAfterPropertyChangedEvent, IBuilderDragEndEvent, IBuilderDragStartEvent, IBuilderDropEvent, IBuilderElementContextMenuPayload, IBuilderElementContextMenuRequestedEvent, IBuilderElementFocusEvent, IBuilderPageFocusEvent, IBuilderPropertyMutationPayload, IBuilderRelocateDragStartEvent, IBuilderSaveRequestedEvent, IBuilderSidebarGroupDeleteRequestedEvent, IBuilderSidebarGroupDeletedEvent, IBuilderSidebarGroupDeletedPayload, IBuilderSidebarGroupsSetRequestedEvent, IBuilderSidebarSaveFocusedCopyRequestedEvent, IBuilderSidebarSaveFocusedGroupRequestedEvent, IBuilderSidebarTemplateSavedEvent, IBuilderSidebarTemplatesSetRequestedEvent, IBuilderSidebarTemplatesSetRequestedPayload, IChartPoint, IColumn, IDataSource, IDataSourceChangedEvent, IDataSourceParamMapping, IDateRangeValue, IDynamicTableColumn, IDynamicTableRowColumn, IElementActionConfig, IElementActionRunEvent, IElementChangedEvent, IElementChangingEvent, IElementDataSource, IElementRef, IElementRowContext, IElementValidateEvent, IElementValueChangedEvent, IElementValueChangingEvent, IEvent, IFixedViewport, IForgeInitializerOptions, IHeader, IJexlFunctionDescriptor, IJexlFunctionRegistration, ILegacyTabsProItem, ILocaleChoice, ILocalization, INgxViewBuilderAccordionItemToggledEvent, INgxViewBuilderAiAddElementCommand, INgxViewBuilderAiAddPageCommand, INgxViewBuilderAiAddRowCommand, INgxViewBuilderAiAssistantConfig, INgxViewBuilderAiAssistantConfigEvent, INgxViewBuilderAiAuditEntry, INgxViewBuilderAiCommand, INgxViewBuilderAiCommandDoc, INgxViewBuilderAiDeleteDataSourceCommand, INgxViewBuilderAiDeleteElementCommand, INgxViewBuilderAiDeleteFragmentCommand, INgxViewBuilderAiDeletePageCommand, INgxViewBuilderAiDeleteRowCommand, INgxViewBuilderAiDeleteRuleCommand, INgxViewBuilderAiDeleteSidebarGroupCommand, INgxViewBuilderAiDeleteTemplateCommand, INgxViewBuilderAiDeleteTriggerCommand, INgxViewBuilderAiDeleteVariableCommand, INgxViewBuilderAiDuplicateElementCommand, INgxViewBuilderAiElementTypeDescriptor, INgxViewBuilderAiError, INgxViewBuilderAiExecuteOptions, INgxViewBuilderAiFeaturePack, INgxViewBuilderAiFocusElementCommand, INgxViewBuilderAiHelp, INgxViewBuilderAiInsertJsonCommand, INgxViewBuilderAiMoveElementCommand, INgxViewBuilderAiPropertyDescriptor, INgxViewBuilderAiRedoCommand, INgxViewBuilderAiReloadDataSourceCommand, INgxViewBuilderAiRenameElementCommand, INgxViewBuilderAiRenamePageCommand, INgxViewBuilderAiReplaceStructureCommand, INgxViewBuilderAiResult, INgxViewBuilderAiSaveSidebarGroupCommand, INgxViewBuilderAiSaveTemplateCommand, INgxViewBuilderAiSetDataCommand, INgxViewBuilderAiSetHeaderCommand, INgxViewBuilderAiSetLanguageCommand, INgxViewBuilderAiSetLocalizationCommand, INgxViewBuilderAiSetProcessCommand, INgxViewBuilderAiSetRuntimeVariableContextCommand, INgxViewBuilderAiSetSettingsCommand, INgxViewBuilderAiSetTableFiltersCommand, INgxViewBuilderAiSetTableSettingsCommand, INgxViewBuilderAiSetThemeCommand, INgxViewBuilderAiSetUiTranslationsCommand, INgxViewBuilderAiSurface, INgxViewBuilderAiSwitchTabCommand, INgxViewBuilderAiTarget, INgxViewBuilderAiTemplateCatalog, INgxViewBuilderAiTemplateDescriptor, INgxViewBuilderAiTemplateHost, INgxViewBuilderAiTree, INgxViewBuilderAiTreeNode, INgxViewBuilderAiTreePage, INgxViewBuilderAiUndoCommand, INgxViewBuilderAiUpdateElementCommand, INgxViewBuilderAiUpdatePageCommand, INgxViewBuilderAiUpsertDataSourceCommand, INgxViewBuilderAiUpsertFragmentCommand, INgxViewBuilderAiUpsertRuleCommand, INgxViewBuilderAiUpsertTemplateCommand, INgxViewBuilderAiUpsertTriggerCommand, INgxViewBuilderAiUpsertVariableCommand, INgxViewBuilderAiUseTemplateCommand, INgxViewBuilderAiValidateCommand, INgxViewBuilderAiValidationIssue, INgxViewBuilderAutomationAction, INgxViewBuilderAutomationDefaults, INgxViewBuilderAutomationExportOptions, INgxViewBuilderAutomationExportResponse, INgxViewBuilderAutomationValidateOptions, INgxViewBuilderAutomationValidateResponse, INgxViewBuilderBuilderAdapter, INgxViewBuilderBuilderSettings, INgxViewBuilderBuilderTabDefinition, INgxViewBuilderCompleteEvent, INgxViewBuilderCssVariablesEvent, INgxViewBuilderCurrentPageEvent, INgxViewBuilderCustomCssEvent, INgxViewBuilderCustomCssUrlsEvent, INgxViewBuilderCustomElementDefinition, INgxViewBuilderCustomElementGroup, INgxViewBuilderCustomThemeDefinition, INgxViewBuilderCustomThemeEvent, INgxViewBuilderDataSourceEventBase, INgxViewBuilderDataSourceLoadFailedEvent, INgxViewBuilderDataSourceLoadedEvent, INgxViewBuilderDataSourceLoadingEvent, INgxViewBuilderDataSourceReloadedEvent, INgxViewBuilderDataSourceTypeSettings, INgxViewBuilderDataSourceTypeSettingsEvent, INgxViewBuilderDialogClosedEvent, INgxViewBuilderElementApi, INgxViewBuilderElementLookupResult, INgxViewBuilderElementPropertyChangedEvent, INgxViewBuilderElementPropertyChangingEvent, INgxViewBuilderElementTabChangedEvent, INgxViewBuilderExtensionsConfig, INgxViewBuilderExternalConfig, INgxViewBuilderFeaturePack, INgxViewBuilderFeaturePackSummary, INgxViewBuilderFileUploadFilesEvent, INgxViewBuilderFragmentDefinition, INgxViewBuilderHeaderAction, INgxViewBuilderHeaderActionClickEvent, INgxViewBuilderHeadlessApi, INgxViewBuilderHeadlessOptions, INgxViewBuilderHeadlessValidateRequest, INgxViewBuilderLanguageEvent, INgxViewBuilderLanguageResolveOptions, INgxViewBuilderLanguageSyncHandle, INgxViewBuilderLanguageSyncOptions, INgxViewBuilderMcpSettings, INgxViewBuilderMigrationConfig, INgxViewBuilderPreviewSettings, INgxViewBuilderProcessDefinition, INgxViewBuilderProcessStateDefinition, INgxViewBuilderProcessTransitionDefinition, INgxViewBuilderProjectLayer, INgxViewBuilderProjectLayerContext, INgxViewBuilderRenderEvent, INgxViewBuilderRepeaterRowEvent, INgxViewBuilderResolvedLanguage, INgxViewBuilderRuleDefinition, INgxViewBuilderRuleEvaluatedEvent, INgxViewBuilderRuleEvaluatingEvent, INgxViewBuilderRuntimeVariablesConfig, INgxViewBuilderSaveRequestedEvent, INgxViewBuilderSidebarGroupDefinition, INgxViewBuilderSidebarGroupDeletedEvent, INgxViewBuilderSidebarGroupInput, INgxViewBuilderSidebarGroupSavedEvent, INgxViewBuilderSidebarGroupsLoadedEvent, INgxViewBuilderSidebarLibraryItem, INgxViewBuilderSidebarTemplateSavedEvent, INgxViewBuilderStructureEvent, INgxViewBuilderSvgIconDirectoryConfig$1 as INgxViewBuilderSvgIconDirectoryConfig, INgxViewBuilderSvgIconDirectoryLoadResult$1 as INgxViewBuilderSvgIconDirectoryLoadResult, INgxViewBuilderTabEvent, INgxViewBuilderTableColumnSetting, INgxViewBuilderTableFiltersAppliedEvent, INgxViewBuilderTableFiltersEvent, INgxViewBuilderTableSavedFilter, INgxViewBuilderTableSavedFilterSaveRequestedEvent, INgxViewBuilderTableSavedFiltersEvent, INgxViewBuilderTableSavedFiltersRequestEvent, INgxViewBuilderTableSettingsAppliedEvent, INgxViewBuilderTableSettingsEvent, INgxViewBuilderTableSettingsRequestEvent, INgxViewBuilderTableSettingsSaveRequestedEvent, INgxViewBuilderTemplateDefinition, INgxViewBuilderTemplateDeletedEvent, INgxViewBuilderTemplateInput, INgxViewBuilderTemplateSavedEvent, INgxViewBuilderTemplatesLoadedEvent, INgxViewBuilderThemeModeEvent, INgxViewBuilderToastPayload, INgxViewBuilderTriggerDefinition, INgxViewBuilderTriggerHandledEvent, INgxViewBuilderTriggerHandlingEvent, INgxViewBuilderUiTranslationsProviderConfig, INgxViewBuilderUiTranslationsProviderOptions, INgxViewBuilderValidateDataOptions, INgxViewBuilderValidationEvent, INgxViewBuilderValidationIssue, INgxViewBuilderValidationToastOptions, INgxViewBuilderValidatorContext, INgxViewBuilderValidatorError, INgxViewBuilderValidatorIssue, INgxViewBuilderValidatorResponse, INgxViewBuilderValidatorTypeDescriptor, INgxViewBuilderValidatorTypeRegistration, INgxViewBuilderValidatorValidateOptions, INgxViewBuilderWebsocketConnection, INgxViewBuilderWebsocketConnectionContext, INumberingContextEntry, INumberingTextContext, INvbElementEntry, INvbElementValueChange, IOption, IPage, IPhoneCountryOption, IPhoneInputValue, IProgressFlowItem, IResolvedCssSizeSetting, IResolvedStructureSettings, IResponsiveColumnStyleOptions, IResponsiveViewportState, IRouteBreadcrumbConfig, IRow, IRuntimeRouteVariables, IRuntimeVariableDefinition, ISettings, ISplitterPanel, IStructure, IStructureMigration, IStructureMigrationOutput, IStructureMigrationResult, ITabDefinition, ITableCellElementType, ITableColumnConfig, ITableColumnElementConfig, ITableCustomParam, ITableDataSourceConfig, ITableExtendedParam, ITableExtendedParamValue, ITablePagingParams, ITableRequestParamTuple, ITableRequestPayload, ITableRowActionConfig, ITableStatusRule, ITabsProItem, ITemplateDefinition, ITranslationEntry, IUploadedFileMeta, IValidator, IValueChangedEvent, IValueChangingEvent, IValueClearEvent, IValueMutationEvent, ListBoxSelectionMode, ListGridLayout, ListGridSortDirection, NgxViewBuilderAiActionOp, NgxViewBuilderAiErrorCode, NgxViewBuilderAiMutationOp, NgxViewBuilderAiOp, NgxViewBuilderAlign, NgxViewBuilderAutomationActionType, NgxViewBuilderBuilderTabCode, NgxViewBuilderBuilderTabRenderMode, NgxViewBuilderChromePosition, NgxViewBuilderDataSourceType, NgxViewBuilderDialogCloseReason, NgxViewBuilderExecutionReason, NgxViewBuilderExtensionsFactory, NgxViewBuilderFeaturePackCapability, NgxViewBuilderInteractionStatus, NgxViewBuilderMcpStatus, NgxViewBuilderPageNavigationMode, NgxViewBuilderPreviewMode, NgxViewBuilderProjectLayerExtensionsFactory, NgxViewBuilderRenderMode, NgxViewBuilderRenderPhase, NgxViewBuilderRuleExecutedBranch, NgxViewBuilderRuleRunMode, NgxViewBuilderSaveRequestedSource, NgxViewBuilderSizeUnit, NgxViewBuilderTableSettingsSource, NgxViewBuilderThemeMode, NgxViewBuilderTriggerEvent, NgxViewBuilderUnsupportedSchemaAction, NgxViewBuilderWebsocketAuthorizer, NgxViewBuilderWebsocketMessageMode, NumberStepperOrientation, OnDragStartEvent, OnElementFocusEvent, ProgressBarDisplayType, ProgressBarStyleType, ProgressBarValueLabelMode, ProgressBarVariant, ProgressFlowItemSourceMode, ProgressFlowMode, ProgressFlowVariant, RuntimeVariableSourceType, SelectGroup, SignaturePadExportFormat, SplitterOrientation, TableColumnAlign, TableColumnCellActionsDisplayMode, TableColumnType, TableFilterControlType, TableFilterOptionsSourceType, TableInlineEditStartMode, TableInlineEditorType, TableRowActionsDropdownButtonStyle, TableStatusTone, TabsItemSourceMode, TabsPosition, TabsVariant, TemplateStorageMode, TimePickerFormat, ToggleSwitchMode, ToggleSwitchShape, UiDictionaries, UiDictionary, ValueChangeTrigger };
9373
+ export { ALIGN_CLASS_MAP, ALIGN_CLASS_PREFIX, APPLICATION_LOCALE_VALUE, AccordionElement, AccordionModel, ApplicationLocaleService, AutocompleteModel, AvatarModel, BLOCK_TAGS, BUILT_IN_STRUCTURE_MIGRATIONS, BUILT_IN_TABLE_CELL_ELEMENT_TYPES, BadgeModel, BreadcrumbsModel, BuilderModel, BuilderPageDisplayModeEnum, BuilderTabRegistryService, ButtonModel, COLOR_CLASS_PREFIX, CURRENT_SCHEMA_VERSION, ChartModel, CheckboxInputModel, ChoiceModel, ColumnFragmentModeEnum, ColumnModel, ComponentRegistryService, ConfirmDialog, CreatorStructureService, CustomHtmlModel, DATA_JSON_CAPABLE_ELEMENT_TYPES, DEFAULT_FONT, DEFAULT_FONT_CLASS, DEFAULT_HIGHLIGHT_COLOR, DEFAULT_LINE_HEIGHT_VALUE, DEFAULT_MOBILE_BREAKPOINT, DEFAULT_SIZE_CLASS, DEFAULT_SIZE_VALUE, DEFAULT_TABLET_BREAKPOINT, DEFAULT_TABLE_COLUMNS, DEFAULT_TABLE_ROWS, DEFAULT_TEXT_COLOR, DataService, DataSourceModel, DataSourceService, DatePickerModel, DateRangeModel, DialogDragController, DialogElement, DialogModel, DividerModel, DomInstrumentationService, DragAndDropService, DragAutoScrollService, DynamicPanel, DynamicPanelModel, DynamicTableColumnModel, DynamicTableModel, DynamicTableRowColumnModel, DynamicTextPipe, ELEMENT_ROW_CONTEXT_KEY, ELEMENT_ROW_SCOPE_PATH_KEY, EN_UI_DICTIONARY, EXCLUDE_FROM_DATA_JSON_KEY, ElementActionButtonToneEnum, ElementActionButtonVariantEnum, ElementActionDialogOperationEnum, ElementActionResponseModeEnum, ElementActionService, ElementActionSetValueModeEnum, ElementActionToastPositionEnum, ElementActionToastVariantEnum, ElementActionTriggerEnum, ElementActionTypeEnum, ElementBaseModel, ElementContentBox, ElementContentRow, ElementDataSourceUseForEnum, ElementDefaultsService, ElementExecutionModeEnum, ElementFocusService, ElementTypesEnum, ElementsService, EmptyBlockElement, EmptyBlockModel, EventService, ExpressionService, FONT_CLASS_MAP, FONT_CLASS_PREFIX, FeaturePackRegistryService, FileUploadModel, ForgeInitializerService, HIGHLIGHT_CLASS_PREFIX, HIGHLIGHT_SWATCHES, HISTORY_COALESCE_MS, HeaderModel, HeaderTabEnum, INDENT_CLASS_PREFIX, INLINE_TAGS, IconModel, IconSvgService, IframeModel, ImageModel, LEGACY_LINE_HEIGHT_CLASS_MAP, LEGACY_SCHEMA_VERSION, LEGACY_SIZE_CLASS_MAP, LINE_HEIGHT_CLASS_MAP, LINE_HEIGHT_CLASS_PREFIX, LINE_HEIGHT_OPTION_VALUES, LOCALE_CHOICES, ListBoxModel, ListGridModel, LocalizationService, MANAGED_STRUCTURE_SETTING_KEYS, MARK_TAG_MAP, MAX_HISTORY_ENTRIES, MAX_INDENT_LEVEL, MarkupSecurityService, MessageCardModel, ModelService, MultiSelectInputModel, NGX_VIEW_BUILDER_AI_ACTION_TYPES, NGX_VIEW_BUILDER_AI_API_VERSION, NGX_VIEW_BUILDER_AI_AUTOMATION_ACTION_TYPES, NGX_VIEW_BUILDER_AI_ROW_CONTAINERS, NGX_VIEW_BUILDER_AI_TAB_CONTAINERS, NGX_VIEW_BUILDER_AI_TEMPLATES_CAPABILITY, NGX_VIEW_BUILDER_AI_VALIDATOR_TYPES, NGX_VIEW_BUILDER_ANY_ELEMENT_TYPE, NGX_VIEW_BUILDER_BRIDGE_PROTOCOL_VERSION, NGX_VIEW_BUILDER_PROJECT_LAYER, NGX_VIEW_BUILDER_UI_TRANSLATIONS, NVB_TEXT_CONTEXT_KEY, NgxViewBuilder, NgxViewBuilderActionExecutorService, NgxViewBuilderAiApiService, NgxViewBuilderAlignEnum, NgxViewBuilderApiService, NgxViewBuilderAutomationActionTypeEnum, NgxViewBuilderAutomationService, NgxViewBuilderBuilderTabRenderModeEnum, NgxViewBuilderChromePositionEnum, NgxViewBuilderDataSourceTypeEnum, NgxViewBuilderDialogCloseReasonEnum, NgxViewBuilderExecutionReasonEnum, NgxViewBuilderHeadlessService, NgxViewBuilderInteractionStatusEnum, NgxViewBuilderMcpBridgeService, NgxViewBuilderPageNavigationModeEnum, NgxViewBuilderPreviewModeEnum, NgxViewBuilderProcessService, NgxViewBuilderRenderModeEnum, NgxViewBuilderRenderPhaseEnum, NgxViewBuilderRenderer, NgxViewBuilderRuleExecutedBranchEnum, NgxViewBuilderRuleRunModeEnum, NgxViewBuilderRulesEngineService, NgxViewBuilderRuntime, NgxViewBuilderSaveRequestedSourceEnum, NgxViewBuilderTableSettingsSourceEnum, NgxViewBuilderThemeModeEnum, NgxViewBuilderTriggerEngineService, NgxViewBuilderTriggerEventEnum, NgxViewBuilderValidator, NgxViewBuilderWebsocketMessageModeEnum, NumberInputModel, NumberStepperModel, NvbElement, NvbElementContextService, NvbIcon, NvbRichTextEditor, NvbRows, NvbScope, NvbSelect, NvbStyleOutlet, NvbTab, PHONE_COUNTRY_OPTIONS, PHONE_COUNTRY_PROPERTY_CHOICES, PageElement, PageTitleModel, PanelElement, PanelModel, PhoneInputModel, PreviewRendererService, ProgressBarModel, ProgressFlowElement, ProgressFlowModel, PropertyModel, RICH_TEXT_DEFAULT_TOOLBAR_TOOLS, RICH_TEXT_TOOLBAR_ICONS, RICH_TEXT_TOOLBAR_TOOLS, ROOT_BLOCK_TAGS, RadioInputModel, RendererService, RichTextModel, RouterOutletModel, RowModel, RuntimeDynamicPanel, RuntimeVariableSourceTypeEnum, RuntimeVariablesService, SIZE_CLASS_MAP, SIZE_CLASS_PREFIX, SIZE_OPTION_VALUES, SPECIAL_CHARACTERS, SelectButtonModel, SelectInputModel, SettingsModel, SignaturePadModel, SingleCheckboxModel, SliderModel, SpacerModel, SplitterElement, SplitterModel, StateService, StatsCardModel, StructureMigrationService, StructureModel, StructureService, TABLE_BORDER_CLASS_PREFIX, TABLE_CELL_BACKGROUND_SWATCHES, TABLE_CELL_VALIGN_CLASS_MAP, TABLE_CELL_VALIGN_CLASS_PREFIX, TABLE_CLASS, TABLE_PICKER_COLUMNS, TABLE_PICKER_ROWS, TASK_ITEM_CHECKED_CLASS, TASK_ITEM_CLASS, TASK_ITEM_MARKER_WIDTH, TASK_LIST_CLASS, TableCellElementRegistryService, TableColumnAlignEnum, TableColumnCellActionsDisplayModeEnum, TableColumnTypeEnum, TableFilterControlTypeEnum, TableFilterOptionsSourceTypeEnum, TableInlineEditStartModeEnum, TableInlineEditorTypeEnum, TableModel, TableRowActionsDropdownButtonStyleEnum, TableStatusToneEnum, TabsElement, TabsModel, TabsProModel, TemplateEngineService, TemplateStorageModeEnum, TextAreaModel, TextInputModel, TimePickerModel, ToastModel, ToggleSwitchModel, TooltipComponent, UiTranslatePipe, UiTranslationService, ValidatorService, ValueChangeTriggerEnum, VideoModel, applyDynamicPanelRowNumberingContext, applyElementRowContext, applyRuntimeNumberingContext, applyStructureMigrations, applyViewportBreakpoints, bridgeNgxViewBuilderApiEvents, buildElementRowRuntimeContext, buildFocusKey, buildResponsiveColumnStyle, clearStructureMigrationNotice, cloneRecord, cloneValue, composeCssSize, configureStructureMigrations, createUuid, describeDragEvent, describeElementModel, describeEventTarget, describeMouseEvent, elements, getMobileBreakpoint, getRuntimeTextContext, getStructureMigrationConfig, getTabletBreakpoint, getViewportContentWidth, isDataJsonCapableElementType, isDragDebugEnabled, isMobileViewport, isMobileWidth, isPlainRecord, isRelativeResponsiveWidth, isTabletViewport, isTabletWidth, lastStructureMigration, logDragDebug, logDragDebugThrottled, migrateStructure, normalizeBreakpoint, normalizeCssSizeUnit, normalizeResponsiveCssSize, normalizeStringList, provideNgxViewBuilderExtensions, provideNgxViewBuilderMigrations, provideNgxViewBuilderProjectLayer, provideNgxViewBuilderProjectLayers, provideNgxViewBuilderRuntime, provideNgxViewBuilderUiTranslations, pruneStructureSettings, readSchemaVersion, recordStructureMigration, resetStructureMigrationConfig, resolveAllowedPhoneCountries, resolveCssSizeSetting, resolveElementRowContext, resolveElementRowScope, resolveElementRowScopedPath, resolveFixedViewport, resolvePhoneCountry, resolveResponsiveDisplayWidth, resolveResponsiveWidth, resolveRuntimeTextContextValue, resolveStructureSettings, setElementRowContext, setViewportContentWidth };
9374
+ export type { BreadcrumbsItemsSource, BuilderPageDisplayMode, ChartLegendLayout, ChartType, ColumnFragmentMode, DatePickerMode, DialogHeadingLevel, DialogMode, DialogTriggerAlign, DialogTriggerIconPosition, DialogTriggerVariant, ElementActionButtonTone, ElementActionButtonVariant, ElementActionDialogOperation, ElementActionResponseMode, ElementActionSetValueMode, ElementActionToastPosition, ElementActionToastVariant, ElementActionTrigger, ElementActionType, ElementDataSourceUseFor, ElementExecutionMode, ElementGroup, ElementRowScope, EmptyBlockFormStatus, EmptyBlockType, IAccordionItem, IBaseElement, IBreadcrumbItem, IBuilderAfterPropertyChangedEvent, IBuilderDragEndEvent, IBuilderDragStartEvent, IBuilderDropEvent, IBuilderElementContextMenuPayload, IBuilderElementContextMenuRequestedEvent, IBuilderElementFocusEvent, IBuilderPageFocusEvent, IBuilderPropertyMutationPayload, IBuilderRelocateDragStartEvent, IBuilderSaveRequestedEvent, IBuilderSidebarGroupDeleteRequestedEvent, IBuilderSidebarGroupDeletedEvent, IBuilderSidebarGroupDeletedPayload, IBuilderSidebarGroupsSetRequestedEvent, IBuilderSidebarSaveFocusedCopyRequestedEvent, IBuilderSidebarSaveFocusedGroupRequestedEvent, IBuilderSidebarTemplateSavedEvent, IBuilderSidebarTemplatesSetRequestedEvent, IBuilderSidebarTemplatesSetRequestedPayload, IChartPoint, IColumn, ICreateModelOptions, IDataSource, IDataSourceChangedEvent, IDataSourceParamMapping, IDateRangeValue, IDescribeElementOptions, IDynamicTableColumn, IDynamicTableRowColumn, IElementActionConfig, IElementActionRunEvent, IElementChangedEvent, IElementChangingEvent, IElementDataSource, IElementRef, IElementRowContext, IElementValidateEvent, IElementValueChangedEvent, IElementValueChangingEvent, IEvent, IFixedViewport, IForgeInitializerOptions, IHeader, IJexlFunctionDescriptor, IJexlFunctionRegistration, ILegacyTabsProItem, ILocaleChoice, ILocalization, INgxViewBuilderAccordionItemToggledEvent, INgxViewBuilderAiAddElementCommand, INgxViewBuilderAiAddPageCommand, INgxViewBuilderAiAddRowCommand, INgxViewBuilderAiAssistantConfig, INgxViewBuilderAiAssistantConfigEvent, INgxViewBuilderAiAuditEntry, INgxViewBuilderAiCommand, INgxViewBuilderAiCommandDoc, INgxViewBuilderAiDeleteDataSourceCommand, INgxViewBuilderAiDeleteElementCommand, INgxViewBuilderAiDeleteFragmentCommand, INgxViewBuilderAiDeletePageCommand, INgxViewBuilderAiDeleteRowCommand, INgxViewBuilderAiDeleteRuleCommand, INgxViewBuilderAiDeleteSidebarGroupCommand, INgxViewBuilderAiDeleteTemplateCommand, INgxViewBuilderAiDeleteTriggerCommand, INgxViewBuilderAiDeleteVariableCommand, INgxViewBuilderAiDuplicateElementCommand, INgxViewBuilderAiElementTypeDescriptor, INgxViewBuilderAiError, INgxViewBuilderAiExecuteOptions, INgxViewBuilderAiFeaturePack, INgxViewBuilderAiFocusElementCommand, INgxViewBuilderAiHelp, INgxViewBuilderAiInsertJsonCommand, INgxViewBuilderAiMoveElementCommand, INgxViewBuilderAiPropertyDescriptor, INgxViewBuilderAiRedoCommand, INgxViewBuilderAiReloadDataSourceCommand, INgxViewBuilderAiRenameElementCommand, INgxViewBuilderAiRenamePageCommand, INgxViewBuilderAiReplaceStructureCommand, INgxViewBuilderAiResult, INgxViewBuilderAiSaveSidebarGroupCommand, INgxViewBuilderAiSaveTemplateCommand, INgxViewBuilderAiSetDataCommand, INgxViewBuilderAiSetHeaderCommand, INgxViewBuilderAiSetLanguageCommand, INgxViewBuilderAiSetLocalizationCommand, INgxViewBuilderAiSetProcessCommand, INgxViewBuilderAiSetRuntimeVariableContextCommand, INgxViewBuilderAiSetSettingsCommand, INgxViewBuilderAiSetTableFiltersCommand, INgxViewBuilderAiSetTableSettingsCommand, INgxViewBuilderAiSetThemeCommand, INgxViewBuilderAiSetUiTranslationsCommand, INgxViewBuilderAiSurface, INgxViewBuilderAiSwitchTabCommand, INgxViewBuilderAiTarget, INgxViewBuilderAiTemplateCatalog, INgxViewBuilderAiTemplateDescriptor, INgxViewBuilderAiTemplateHost, INgxViewBuilderAiTree, INgxViewBuilderAiTreeNode, INgxViewBuilderAiTreePage, INgxViewBuilderAiUndoCommand, INgxViewBuilderAiUpdateElementCommand, INgxViewBuilderAiUpdatePageCommand, INgxViewBuilderAiUpsertDataSourceCommand, INgxViewBuilderAiUpsertFragmentCommand, INgxViewBuilderAiUpsertRuleCommand, INgxViewBuilderAiUpsertTemplateCommand, INgxViewBuilderAiUpsertTriggerCommand, INgxViewBuilderAiUpsertVariableCommand, INgxViewBuilderAiUseTemplateCommand, INgxViewBuilderAiValidateCommand, INgxViewBuilderAiValidationIssue, INgxViewBuilderAutomationAction, INgxViewBuilderAutomationDefaults, INgxViewBuilderAutomationExportOptions, INgxViewBuilderAutomationExportResponse, INgxViewBuilderAutomationValidateOptions, INgxViewBuilderAutomationValidateResponse, INgxViewBuilderBuilderAdapter, INgxViewBuilderBuilderSettings, INgxViewBuilderBuilderTabDefinition, INgxViewBuilderClearValueOptions, INgxViewBuilderCompleteEvent, INgxViewBuilderCssVariablesEvent, INgxViewBuilderCurrentPageEvent, INgxViewBuilderCustomCssEvent, INgxViewBuilderCustomCssUrlsEvent, INgxViewBuilderCustomElementDefinition, INgxViewBuilderCustomElementGroup, INgxViewBuilderCustomThemeDefinition, INgxViewBuilderCustomThemeEvent, INgxViewBuilderDataSourceEventBase, INgxViewBuilderDataSourceLoadFailedEvent, INgxViewBuilderDataSourceLoadedEvent, INgxViewBuilderDataSourceLoadingEvent, INgxViewBuilderDataSourceReloadedEvent, INgxViewBuilderDataSourceTypeSettings, INgxViewBuilderDataSourceTypeSettingsEvent, INgxViewBuilderDialogClosedEvent, INgxViewBuilderElementApi, INgxViewBuilderElementColumnApi, INgxViewBuilderElementDefaults, INgxViewBuilderElementDefaultsEvent, INgxViewBuilderElementDefaultsOptions, INgxViewBuilderElementLookupResult, INgxViewBuilderElementPropertyChangedEvent, INgxViewBuilderElementPropertyChangingEvent, INgxViewBuilderElementPropertyEvent, INgxViewBuilderElementSubscriptionOptions, INgxViewBuilderElementTabChangedEvent, INgxViewBuilderElementValueEvent, INgxViewBuilderExtensionsConfig, INgxViewBuilderExternalConfig, INgxViewBuilderFeaturePack, INgxViewBuilderFeaturePackSummary, INgxViewBuilderFileUploadFilesEvent, INgxViewBuilderFragmentDefinition, INgxViewBuilderHeaderAction, INgxViewBuilderHeaderActionClickEvent, INgxViewBuilderHeadlessApi, INgxViewBuilderHeadlessOptions, INgxViewBuilderHeadlessValidateRequest, INgxViewBuilderLanguageEvent, INgxViewBuilderLanguageResolveOptions, INgxViewBuilderLanguageSyncHandle, INgxViewBuilderLanguageSyncOptions, INgxViewBuilderMcpSettings, INgxViewBuilderMigrationConfig, INgxViewBuilderPreviewSettings, INgxViewBuilderProcessDefinition, INgxViewBuilderProcessStateDefinition, INgxViewBuilderProcessTransitionDefinition, INgxViewBuilderProjectLayer, INgxViewBuilderProjectLayerContext, INgxViewBuilderRenderEvent, INgxViewBuilderRepeaterApi, INgxViewBuilderRepeaterRowApi, INgxViewBuilderRepeaterRowEvent, INgxViewBuilderResolvedLanguage, INgxViewBuilderRowPathEntry, INgxViewBuilderRuleDefinition, INgxViewBuilderRuleEvaluatedEvent, INgxViewBuilderRuleEvaluatingEvent, INgxViewBuilderRuntimeVariablesConfig, INgxViewBuilderSaveRequestedEvent, INgxViewBuilderSidebarGroupDefinition, INgxViewBuilderSidebarGroupDeletedEvent, INgxViewBuilderSidebarGroupInput, INgxViewBuilderSidebarGroupSavedEvent, INgxViewBuilderSidebarGroupsLoadedEvent, INgxViewBuilderSidebarLibraryItem, INgxViewBuilderSidebarTemplateSavedEvent, INgxViewBuilderStructureEvent, INgxViewBuilderSvgIconDirectoryConfig$1 as INgxViewBuilderSvgIconDirectoryConfig, INgxViewBuilderSvgIconDirectoryLoadResult$1 as INgxViewBuilderSvgIconDirectoryLoadResult, INgxViewBuilderTabEvent, INgxViewBuilderTableColumnSetting, INgxViewBuilderTableFiltersAppliedEvent, INgxViewBuilderTableFiltersEvent, INgxViewBuilderTableSavedFilter, INgxViewBuilderTableSavedFilterSaveRequestedEvent, INgxViewBuilderTableSavedFiltersEvent, INgxViewBuilderTableSavedFiltersRequestEvent, INgxViewBuilderTableSettingsAppliedEvent, INgxViewBuilderTableSettingsEvent, INgxViewBuilderTableSettingsRequestEvent, INgxViewBuilderTableSettingsSaveRequestedEvent, INgxViewBuilderTemplateDefinition, INgxViewBuilderTemplateDeletedEvent, INgxViewBuilderTemplateInput, INgxViewBuilderTemplateSavedEvent, INgxViewBuilderTemplatesLoadedEvent, INgxViewBuilderThemeModeEvent, INgxViewBuilderToastPayload, INgxViewBuilderTriggerDefinition, INgxViewBuilderTriggerHandledEvent, INgxViewBuilderTriggerHandlingEvent, INgxViewBuilderUiTranslationsProviderConfig, INgxViewBuilderUiTranslationsProviderOptions, INgxViewBuilderValidateDataOptions, INgxViewBuilderValidationEvent, INgxViewBuilderValidationIssue, INgxViewBuilderValidationToastOptions, INgxViewBuilderValidatorContext, INgxViewBuilderValidatorError, INgxViewBuilderValidatorIssue, INgxViewBuilderValidatorResponse, INgxViewBuilderValidatorTypeDescriptor, INgxViewBuilderValidatorTypeRegistration, INgxViewBuilderValidatorValidateOptions, INgxViewBuilderWebsocketConnection, INgxViewBuilderWebsocketConnectionContext, INumberingContextEntry, INumberingTextContext, INvbElementEntry, INvbElementValueChange, IOption, IPage, IPhoneCountryOption, IPhoneInputValue, IProgressFlowItem, IResolvedCssSizeSetting, IResolvedStructureSettings, IResponsiveColumnStyleOptions, IResponsiveViewportState, IRouteBreadcrumbConfig, IRow, IRuntimeRouteVariables, IRuntimeVariableDefinition, ISettings, ISplitterPanel, IStructure, IStructureMigration, IStructureMigrationOutput, IStructureMigrationResult, ITabDefinition, ITableCellElementType, ITableColumnConfig, ITableColumnElementConfig, ITableCustomParam, ITableDataSourceConfig, ITableExtendedParam, ITableExtendedParamValue, ITablePagingParams, ITableRequestParamTuple, ITableRequestPayload, ITableRowActionConfig, ITableStatusRule, ITabsProItem, ITemplateDefinition, ITranslationEntry, IUploadedFileMeta, IValidator, IValueChangedEvent, IValueChangingEvent, IValueClearEvent, IValueMutationEvent, ListBoxSelectionMode, ListGridLayout, ListGridSortDirection, NgxViewBuilderAiActionOp, NgxViewBuilderAiErrorCode, NgxViewBuilderAiMutationOp, NgxViewBuilderAiOp, NgxViewBuilderAlign, NgxViewBuilderAutomationActionType, NgxViewBuilderBuilderTabCode, NgxViewBuilderBuilderTabRenderMode, NgxViewBuilderChromePosition, NgxViewBuilderDataSourceType, NgxViewBuilderDialogCloseReason, NgxViewBuilderExecutionReason, NgxViewBuilderExtensionsFactory, NgxViewBuilderFeaturePackCapability, NgxViewBuilderInteractionStatus, NgxViewBuilderMcpStatus, NgxViewBuilderPageNavigationMode, NgxViewBuilderPreviewMode, NgxViewBuilderProjectLayerExtensionsFactory, NgxViewBuilderRenderMode, NgxViewBuilderRenderPhase, NgxViewBuilderRuleExecutedBranch, NgxViewBuilderRuleRunMode, NgxViewBuilderSaveRequestedSource, NgxViewBuilderSizeUnit, NgxViewBuilderTableSettingsSource, NgxViewBuilderThemeMode, NgxViewBuilderTriggerEvent, NgxViewBuilderUnsubscribe, NgxViewBuilderUnsupportedSchemaAction, NgxViewBuilderWebsocketAuthorizer, NgxViewBuilderWebsocketMessageMode, NumberStepperOrientation, OnDragStartEvent, OnElementFocusEvent, ProgressBarDisplayType, ProgressBarStyleType, ProgressBarValueLabelMode, ProgressBarVariant, ProgressFlowItemSourceMode, ProgressFlowMode, ProgressFlowVariant, RuntimeVariableSourceType, SelectGroup, SignaturePadExportFormat, SplitterOrientation, TableColumnAlign, TableColumnCellActionsDisplayMode, TableColumnType, TableFilterControlType, TableFilterOptionsSourceType, TableInlineEditStartMode, TableInlineEditorType, TableRowActionsDropdownButtonStyle, TableStatusTone, TabsItemSourceMode, TabsPosition, TabsVariant, TemplateStorageMode, TimePickerFormat, ToggleSwitchMode, ToggleSwitchShape, UiDictionaries, UiDictionary, ValueChangeTrigger };