@ngxviewbuilder/runtime 0.7.0 → 0.9.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.
- package/fesm2022/ngxviewbuilder-runtime-avatar-element-DOAhncQb.mjs +1 -0
- package/fesm2022/ngxviewbuilder-runtime-breadcrumbs-element-CWY2MbVi.mjs +1 -0
- package/fesm2022/ngxviewbuilder-runtime-icon-element-B3yBJTc7.mjs +1 -0
- package/fesm2022/ngxviewbuilder-runtime-ngxviewbuilder-runtime-tTXeAqU9.mjs +49 -0
- package/fesm2022/ngxviewbuilder-runtime-toast-element-2K4S2cgr.mjs +1 -0
- package/fesm2022/ngxviewbuilder-runtime.mjs +1 -1
- package/package.json +1 -1
- package/styles/tokens.css +49 -25
- package/types/ngxviewbuilder-runtime.d.ts +214 -10
- package/fesm2022/ngxviewbuilder-runtime-avatar-element-DdlzDtsP.mjs +0 -1
- package/fesm2022/ngxviewbuilder-runtime-breadcrumbs-element-DUicA66q.mjs +0 -1
- package/fesm2022/ngxviewbuilder-runtime-icon-element-fkPDYkf0.mjs +0 -1
- package/fesm2022/ngxviewbuilder-runtime-ngxviewbuilder-runtime-CY_sp0Pm.mjs +0 -49
- package/fesm2022/ngxviewbuilder-runtime-toast-element-CNuDVfas.mjs +0 -1
|
@@ -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;
|
|
@@ -475,6 +488,7 @@ declare enum ElementTypesEnum {
|
|
|
475
488
|
DATE_RANGE = "dateRange",
|
|
476
489
|
PAGE = "page",
|
|
477
490
|
PANEL = "panel",
|
|
491
|
+
OBJECT_PANEL = "objectPanel",
|
|
478
492
|
SPLITTER = "splitter",
|
|
479
493
|
EMPTY_BLOCK = "emptyBlock",
|
|
480
494
|
TEXTAREA = "textarea",
|
|
@@ -2556,9 +2570,14 @@ interface INgxViewBuilderBuilderSettings {
|
|
|
2556
2570
|
mcp?: {
|
|
2557
2571
|
/** Bridge endpoint, e.g. `wss://mcp.example.com/bridge`. An http(s) URL is upgraded. */
|
|
2558
2572
|
url: string;
|
|
2559
|
-
/** Key issued by the host's own backend. Left out, the
|
|
2560
|
-
*
|
|
2573
|
+
/** Key issued by the host's own backend. Left out, the builder generates one and shows
|
|
2574
|
+
* it, and a person gives it to their AI client when the client asks for it. */
|
|
2561
2575
|
sessionKey?: string;
|
|
2576
|
+
/** App and page labels the AI client sees after pairing, to tell builder tabs apart. */
|
|
2577
|
+
client?: {
|
|
2578
|
+
app?: string;
|
|
2579
|
+
page?: string;
|
|
2580
|
+
};
|
|
2562
2581
|
};
|
|
2563
2582
|
preview?: INgxViewBuilderPreviewSettings;
|
|
2564
2583
|
dataSources?: INgxViewBuilderDataSourceTypeSettings;
|
|
@@ -3178,6 +3197,13 @@ declare class AccordionModel extends ElementBaseModel {
|
|
|
3178
3197
|
}
|
|
3179
3198
|
|
|
3180
3199
|
declare class DataService {
|
|
3200
|
+
/**
|
|
3201
|
+
* Read for `__language`, never written here. `UiTranslationService` is the one
|
|
3202
|
+
* place the active language lives - `api.setLanguage()`, the `language` input
|
|
3203
|
+
* and `settings.language` all end up there - and it depends on nothing, so
|
|
3204
|
+
* reading it from here cannot cycle.
|
|
3205
|
+
*/
|
|
3206
|
+
private uiTranslationService;
|
|
3181
3207
|
private _data;
|
|
3182
3208
|
private dirtyState;
|
|
3183
3209
|
private baselineSnapshot;
|
|
@@ -3190,6 +3216,8 @@ declare class DataService {
|
|
|
3190
3216
|
getData(): Record<string, unknown>;
|
|
3191
3217
|
getRawData(): Record<string, unknown>;
|
|
3192
3218
|
buildRuntimeContext(additionalContext?: Record<string, unknown> | null, baseData?: Record<string, unknown> | null): Record<string, unknown>;
|
|
3219
|
+
/** The language the view is rendered in, as `api.getLanguage()` reports it. */
|
|
3220
|
+
getActiveLanguage(): string;
|
|
3193
3221
|
setData(data: Record<string, unknown>): void;
|
|
3194
3222
|
setValue(path: string, value: unknown, options?: {
|
|
3195
3223
|
sender?: unknown;
|
|
@@ -3247,6 +3275,24 @@ declare class SelectInputModel extends ElementBaseModel {
|
|
|
3247
3275
|
|
|
3248
3276
|
declare class AutocompleteModel extends SelectInputModel {
|
|
3249
3277
|
lazyLoad: boolean;
|
|
3278
|
+
/**
|
|
3279
|
+
* Data source queried while the user types. Kept apart from `dataSource`, which fills
|
|
3280
|
+
* the static option list: a search endpoint answers one query at a time and has no
|
|
3281
|
+
* business being loaded up front.
|
|
3282
|
+
*/
|
|
3283
|
+
searchDataSourceName?: string;
|
|
3284
|
+
/** Path to the array inside the response, for endpoints that wrap their results. */
|
|
3285
|
+
searchItemsPath?: string;
|
|
3286
|
+
/** Path inside each result object that is shown in the dropdown. */
|
|
3287
|
+
searchLabelKey?: string;
|
|
3288
|
+
/** Path inside each result object stored as the value. Empty stores the whole object. */
|
|
3289
|
+
searchValueKey?: string;
|
|
3290
|
+
/**
|
|
3291
|
+
* How many records the search endpoint returns at most. A response shorter than this
|
|
3292
|
+
* holds every match, so typing further filters it locally instead of asking again.
|
|
3293
|
+
* Empty means the endpoint is asked on every (debounced) change.
|
|
3294
|
+
*/
|
|
3295
|
+
searchResultLimit?: number | null;
|
|
3250
3296
|
minSearchLength: number;
|
|
3251
3297
|
debounceMs: number;
|
|
3252
3298
|
forceSelection: boolean;
|
|
@@ -3833,6 +3879,19 @@ declare class PanelModel extends ElementBaseModel {
|
|
|
3833
3879
|
private normalizeOptionalText;
|
|
3834
3880
|
}
|
|
3835
3881
|
|
|
3882
|
+
/**
|
|
3883
|
+
* A panel whose children answer into one object.
|
|
3884
|
+
*
|
|
3885
|
+
* Laid out exactly like a panel. The difference is where the values go: every element
|
|
3886
|
+
* inside it, however deeply nested in other layout containers, stores its value at
|
|
3887
|
+
* `<objectPanelName>.<elementName>` instead of at its own top-level name, so the panel's
|
|
3888
|
+
* data is `{ city: ..., street: ... }` under its own name. Nesting object panels nests
|
|
3889
|
+
* the objects. The paths themselves are worked out from the layout by the renderer, see
|
|
3890
|
+
* `resolveObjectDataPaths`.
|
|
3891
|
+
*/
|
|
3892
|
+
declare class ObjectPanelModel extends PanelModel {
|
|
3893
|
+
}
|
|
3894
|
+
|
|
3836
3895
|
interface IPhoneInputValue {
|
|
3837
3896
|
countryIso: string;
|
|
3838
3897
|
countryCode: string;
|
|
@@ -4263,6 +4322,11 @@ declare class TableModel extends ElementBaseModel {
|
|
|
4263
4322
|
tableStyle: 'default' | 'grid' | 'striped';
|
|
4264
4323
|
showHeaderControls: boolean;
|
|
4265
4324
|
showQuickSearch: boolean;
|
|
4325
|
+
/**
|
|
4326
|
+
* Searches on every keystroke (debounced) instead of waiting for the search button or
|
|
4327
|
+
* Enter. Off by default: a table backed by a real query should not run one per letter.
|
|
4328
|
+
*/
|
|
4329
|
+
quickSearchOnType: boolean;
|
|
4266
4330
|
showDetailedSearch: boolean;
|
|
4267
4331
|
showExport: boolean;
|
|
4268
4332
|
showColumnSettings: boolean;
|
|
@@ -4634,6 +4698,13 @@ declare class ElementActionService {
|
|
|
4634
4698
|
private normalizeConditionExpression;
|
|
4635
4699
|
private isInteractionLocked;
|
|
4636
4700
|
private executeNavigate;
|
|
4701
|
+
/**
|
|
4702
|
+
* Turns the before-navigate data source's response into `NavigationExtras.state`,
|
|
4703
|
+
* Angular's built-in way to carry a value into the next route without round-tripping
|
|
4704
|
+
* it through the URL. The target page reads it back via `__route.state`
|
|
4705
|
+
* (see `RuntimeVariablesService`).
|
|
4706
|
+
*/
|
|
4707
|
+
private buildNavigationStateExtras;
|
|
4637
4708
|
private executeBeforeNavigateDataSource;
|
|
4638
4709
|
/**
|
|
4639
4710
|
* Pushes a message into a websocket source that is already connected. The socket stays
|
|
@@ -5460,16 +5531,32 @@ declare class NgxViewBuilderAiApiService {
|
|
|
5460
5531
|
interface INgxViewBuilderMcpSettings {
|
|
5461
5532
|
/** Bridge endpoint, e.g. `wss://mcp.example.com/bridge`. http(s) is upgraded to ws(s). */
|
|
5462
5533
|
url: string;
|
|
5463
|
-
/** Key issued by the host's backend. Left out, the
|
|
5534
|
+
/** Key issued by the host's backend. Left out, the builder generates one. */
|
|
5464
5535
|
sessionKey?: string;
|
|
5536
|
+
/** Labels the server repeats back to the AI client, so a person with several builder
|
|
5537
|
+
* tabs open can tell which one it is driving. */
|
|
5538
|
+
client?: {
|
|
5539
|
+
app?: string;
|
|
5540
|
+
page?: string;
|
|
5541
|
+
};
|
|
5465
5542
|
}
|
|
5466
5543
|
type NgxViewBuilderMcpStatus = 'off' | 'connecting' | 'connected' | 'error';
|
|
5544
|
+
/** An AI client paired with this tab, as the server described it. */
|
|
5545
|
+
interface INgxViewBuilderMcpClient {
|
|
5546
|
+
id: string;
|
|
5547
|
+
name: string;
|
|
5548
|
+
version: string | null;
|
|
5549
|
+
}
|
|
5467
5550
|
/**
|
|
5468
5551
|
* Connects the builder to an MCP server and answers the calls it forwards.
|
|
5469
5552
|
*
|
|
5470
5553
|
* The browser dials out: an AI client talks to the MCP server, the server talks down this
|
|
5471
5554
|
* socket, and the user's machine never accepts an inbound connection. Nothing here knows
|
|
5472
5555
|
* what a command means, every call goes straight to the AI API service.
|
|
5556
|
+
*
|
|
5557
|
+
* Access works by pairing. This tab holds a session key and shows it; an AI client that
|
|
5558
|
+
* connects to the server asks the person for it and pairs with it. Until then the client
|
|
5559
|
+
* can call nothing. The key survives reloads of this tab, so a pairing does too.
|
|
5473
5560
|
*/
|
|
5474
5561
|
declare class NgxViewBuilderMcpBridgeService {
|
|
5475
5562
|
private readonly aiApi;
|
|
@@ -5477,28 +5564,58 @@ declare class NgxViewBuilderMcpBridgeService {
|
|
|
5477
5564
|
private readonly statusSignal;
|
|
5478
5565
|
private readonly keySignal;
|
|
5479
5566
|
private readonly errorSignal;
|
|
5567
|
+
private readonly pairedClientsSignal;
|
|
5568
|
+
private readonly bridgeUrlSignal;
|
|
5480
5569
|
/** For a host that wants to show its own indicator. */
|
|
5481
5570
|
readonly status: _angular_core.Signal<NgxViewBuilderMcpStatus>;
|
|
5482
|
-
/** What
|
|
5571
|
+
/** What a person gives their AI client when it asks. Known before the socket opens. */
|
|
5483
5572
|
readonly sessionKey: _angular_core.Signal<string>;
|
|
5484
5573
|
readonly lastError: _angular_core.Signal<string>;
|
|
5485
|
-
/**
|
|
5486
|
-
|
|
5574
|
+
/** The AI clients currently paired with this tab. */
|
|
5575
|
+
readonly pairedClients: _angular_core.Signal<INgxViewBuilderMcpClient[]>;
|
|
5576
|
+
readonly isPaired: _angular_core.Signal<boolean>;
|
|
5577
|
+
private readonly keyIssuedByHostSignal;
|
|
5578
|
+
/** A key from the host's backend cannot be rotated from here: the backend handed that
|
|
5579
|
+
* same key to whatever AI client it wired up. */
|
|
5580
|
+
readonly keyIssuedByHost: _angular_core.Signal<boolean>;
|
|
5581
|
+
/**
|
|
5582
|
+
* The endpoint a person adds to their AI client. No key in it: the client asks for the
|
|
5583
|
+
* key in the conversation, which is what lets one connector serve every builder tab.
|
|
5487
5584
|
*
|
|
5488
5585
|
* Derived from the bridge url rather than configured separately: the two always live
|
|
5489
5586
|
* on the same server, and asking a host to keep two urls in step is asking for one of
|
|
5490
5587
|
* them to be wrong.
|
|
5491
5588
|
*/
|
|
5492
5589
|
readonly clientUrl: _angular_core.Signal<string>;
|
|
5493
|
-
private readonly bridgeUrlSignal;
|
|
5494
5590
|
private socket;
|
|
5591
|
+
private settings;
|
|
5592
|
+
private reconnectTimer;
|
|
5593
|
+
private reconnectAttempt;
|
|
5495
5594
|
connect(settings: INgxViewBuilderMcpSettings): void;
|
|
5496
5595
|
/**
|
|
5497
5596
|
* Closes the API first, then the socket. The order matters: closing the socket alone
|
|
5498
5597
|
* would leave the surface open to anything that had captured it.
|
|
5499
5598
|
*/
|
|
5500
5599
|
disconnect(): void;
|
|
5600
|
+
/**
|
|
5601
|
+
* Cuts every paired AI client off and starts over with a new key. The server drops the
|
|
5602
|
+
* pairings before the socket goes, so nothing paired to the old key gets another call
|
|
5603
|
+
* through.
|
|
5604
|
+
*/
|
|
5605
|
+
regenerateKey(): void;
|
|
5606
|
+
private openSocket;
|
|
5607
|
+
private onClose;
|
|
5608
|
+
/** Backs off to 30 s between attempts. The key does not change, so neither does the
|
|
5609
|
+
* pairing: once the server is back, the AI client carries on where it stopped. */
|
|
5610
|
+
private scheduleReconnect;
|
|
5611
|
+
private clearReconnectTimer;
|
|
5501
5612
|
private onMessage;
|
|
5613
|
+
/**
|
|
5614
|
+
* Keeps the list of who is driving this tab, and says so out loud when it changes: a
|
|
5615
|
+
* person should never find out from the canvas moving that an AI got access.
|
|
5616
|
+
*/
|
|
5617
|
+
private onPairingChange;
|
|
5618
|
+
private generateKey;
|
|
5502
5619
|
/** Storage can throw in a sandboxed iframe or with cookies blocked, and a builder that
|
|
5503
5620
|
* refused to open because of that would be a poor trade for a convenience. */
|
|
5504
5621
|
private readStoredKey;
|
|
@@ -5527,6 +5644,25 @@ declare function resolveElementRowScope(element: ElementBaseModel | null | undef
|
|
|
5527
5644
|
declare function resolveElementRowScopedPath(element: ElementBaseModel | null | undefined, path: unknown, getValue?: (path: string) => unknown): string;
|
|
5528
5645
|
declare function buildElementRowRuntimeContext(element: ElementBaseModel | null | undefined, getValue?: (path: string) => unknown, additionalContext?: Record<string, unknown> | null): Record<string, unknown> | null;
|
|
5529
5646
|
|
|
5647
|
+
/** Container types whose descendants store their values inside the container's object. */
|
|
5648
|
+
declare const OBJECT_CONTAINER_TYPES: ReadonlySet<string>;
|
|
5649
|
+
declare function isObjectContainerType(type: unknown): boolean;
|
|
5650
|
+
/**
|
|
5651
|
+
* Data paths for the elements whose value does not live at their own name.
|
|
5652
|
+
*
|
|
5653
|
+
* Elements are stored flat, keyed by name, and nesting is expressed only by the layout.
|
|
5654
|
+
* So whether an element sits inside an object panel, and how deep, can only be read off
|
|
5655
|
+
* the pages: walk them, and everything under an object panel gets that panel's path as
|
|
5656
|
+
* a prefix. Plain layout containers in between (a panel, tabs, a splitter) add nothing,
|
|
5657
|
+
* a nested object panel adds its own name.
|
|
5658
|
+
*
|
|
5659
|
+
* Returns only the elements that need a prefix; anything missing keeps its name as its
|
|
5660
|
+
* data path.
|
|
5661
|
+
*/
|
|
5662
|
+
declare function resolveObjectDataPaths(pages: IPage[] | null | undefined, elements: Record<string, {
|
|
5663
|
+
type?: string;
|
|
5664
|
+
} | null | undefined> | null | undefined): Record<string, string>;
|
|
5665
|
+
|
|
5530
5666
|
/**
|
|
5531
5667
|
* Row context carried by element models that live inside a data row - today the
|
|
5532
5668
|
* cells of a `table` column whose type is `element`.
|
|
@@ -5873,6 +6009,36 @@ declare class ModelService {
|
|
|
5873
6009
|
registerModel(type: string, modelClass: Type<ElementBaseModel>): void;
|
|
5874
6010
|
registerModels(map: Record<string, Type<ElementBaseModel>>): void;
|
|
5875
6011
|
createModel(type: string, data?: Partial<unknown>, options?: ICreateModelOptions): ElementBaseModel;
|
|
6012
|
+
/**
|
|
6013
|
+
* Strips the live, per-instance members out of a payload that was spread off
|
|
6014
|
+
* another model.
|
|
6015
|
+
*
|
|
6016
|
+
* Every repeater builds its row models by spreading the template model -
|
|
6017
|
+
* `createModel(column.type, { ...column, dataPath, ... })` - and every model
|
|
6018
|
+
* constructor runs `Object.assign(this, data)` *after* its own field
|
|
6019
|
+
* initializers. Whatever the spread carries therefore overwrites the fresh
|
|
6020
|
+
* members the class just made, and the row silently ends up pointing at the
|
|
6021
|
+
* template's:
|
|
6022
|
+
*
|
|
6023
|
+
* - `EventEmitter`s, so `onDataSourceChanged.fire()` for row 2 also runs the
|
|
6024
|
+
* handler every other row registered on that same emitter. One row's option
|
|
6025
|
+
* response then lands in all of them, which is exactly the classifier
|
|
6026
|
+
* bleeding between `dynamicTable` / `dynamicPanel` rows.
|
|
6027
|
+
* - `dataSource` config object, so editing one row's source edits them all.
|
|
6028
|
+
*
|
|
6029
|
+
* Dropping the emitters lets each model keep the one its own field
|
|
6030
|
+
* initializer made; the config objects are copied so a row owns its own.
|
|
6031
|
+
* Keys that are meant to be shared - `parentElement`, `dataService`, the
|
|
6032
|
+
* resolved `dataSource.source` - are passed through untouched.
|
|
6033
|
+
*/
|
|
6034
|
+
private detachFromSourceModel;
|
|
6035
|
+
private isLiveEmitter;
|
|
6036
|
+
/**
|
|
6037
|
+
* A copy the row owns, except for `source`: that one is the resolved
|
|
6038
|
+
* `DataSourceModel` the renderer hangs off the config, and it is shared on
|
|
6039
|
+
* purpose - one definition, many readers.
|
|
6040
|
+
*/
|
|
6041
|
+
private copyElementDataSource;
|
|
5876
6042
|
/**
|
|
5877
6043
|
* The values a type carries straight out of its model class, with no host
|
|
5878
6044
|
* defaults and no structure data mixed in. Cached per type: building one means
|
|
@@ -7744,6 +7910,8 @@ declare class AccordionElement implements OnInit, OnDestroy {
|
|
|
7744
7910
|
readonly itemTemplateScopeId: string;
|
|
7745
7911
|
readonly itemTemplateScopeSelector: string;
|
|
7746
7912
|
model: _angular_core.InputSignal<AccordionModel>;
|
|
7913
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
7914
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
7747
7915
|
column: _angular_core.InputSignal<ColumnModel>;
|
|
7748
7916
|
rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
7749
7917
|
templateContext: _angular_core.InputSignal<Record<string, unknown>>;
|
|
@@ -7813,6 +7981,8 @@ declare class DialogElement implements OnInit, OnDestroy {
|
|
|
7813
7981
|
readonly templateScopeId: string;
|
|
7814
7982
|
readonly templateScopeSelector: string;
|
|
7815
7983
|
model: _angular_core.InputSignal<DialogModel>;
|
|
7984
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
7985
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
7816
7986
|
column: _angular_core.InputSignal<ColumnModel>;
|
|
7817
7987
|
rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
7818
7988
|
templateContext: _angular_core.InputSignal<Record<string, unknown>>;
|
|
@@ -7921,6 +8091,8 @@ declare class DynamicPanel implements OnInit, OnDestroy {
|
|
|
7921
8091
|
readonly templateScopeId: string;
|
|
7922
8092
|
readonly templateScopeSelector: string;
|
|
7923
8093
|
model: _angular_core.InputSignal<ElementBaseModel>;
|
|
8094
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
8095
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
7924
8096
|
column: _angular_core.InputSignal<ColumnModel>;
|
|
7925
8097
|
private dragAutoScrollService;
|
|
7926
8098
|
recursiveData: _angular_core.InputSignal<Record<string, unknown>[]>;
|
|
@@ -8046,6 +8218,8 @@ declare class EmptyBlockElement implements OnInit, OnDestroy {
|
|
|
8046
8218
|
private eventService;
|
|
8047
8219
|
private dragAndDropService;
|
|
8048
8220
|
model: _angular_core.InputSignal<EmptyBlockModel>;
|
|
8221
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
8222
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
8049
8223
|
column: _angular_core.InputSignal<ColumnModel>;
|
|
8050
8224
|
isMobileView: _angular_core.InputSignal<boolean>;
|
|
8051
8225
|
rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
@@ -8125,6 +8299,8 @@ declare class PageElement implements OnInit, OnDestroy {
|
|
|
8125
8299
|
private dragAndDropService;
|
|
8126
8300
|
private readonly elementHoverService;
|
|
8127
8301
|
model: _angular_core.InputSignal<PageElementModel>;
|
|
8302
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
8303
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
8128
8304
|
pageRows: _angular_core.InputSignal<RowModel[]>;
|
|
8129
8305
|
pageIsEmpty: _angular_core.InputSignal<boolean>;
|
|
8130
8306
|
isEditor: _angular_core.InputSignal<boolean>;
|
|
@@ -8157,6 +8333,8 @@ declare class PanelElement implements OnInit, OnDestroy {
|
|
|
8157
8333
|
readonly templateScopeId: string;
|
|
8158
8334
|
readonly templateScopeSelector: string;
|
|
8159
8335
|
model: _angular_core.InputSignal<ElementBaseModel | PanelModel>;
|
|
8336
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
8337
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
8160
8338
|
column: _angular_core.InputSignal<ColumnModel>;
|
|
8161
8339
|
isMobileView: _angular_core.InputSignal<boolean>;
|
|
8162
8340
|
isEmpty: _angular_core.WritableSignal<boolean>;
|
|
@@ -8218,6 +8396,8 @@ declare class ProgressFlowElement implements OnInit, OnDestroy {
|
|
|
8218
8396
|
readonly stepTemplateScopeId: string;
|
|
8219
8397
|
readonly stepTemplateScopeSelector: string;
|
|
8220
8398
|
model: _angular_core.InputSignal<ProgressFlowModel>;
|
|
8399
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
8400
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
8221
8401
|
column: _angular_core.InputSignal<ColumnModel>;
|
|
8222
8402
|
rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
8223
8403
|
templateContext: _angular_core.InputSignal<Record<string, unknown>>;
|
|
@@ -8306,6 +8486,8 @@ declare class ProgressFlowElement implements OnInit, OnDestroy {
|
|
|
8306
8486
|
|
|
8307
8487
|
declare class SplitterElement implements OnInit, OnDestroy {
|
|
8308
8488
|
model: _angular_core.InputSignal<SplitterModel>;
|
|
8489
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
8490
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
8309
8491
|
column: _angular_core.InputSignal<ColumnModel>;
|
|
8310
8492
|
isMobileView: _angular_core.InputSignal<boolean>;
|
|
8311
8493
|
rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
@@ -8368,6 +8550,8 @@ declare class TabsElement implements OnInit, OnDestroy {
|
|
|
8368
8550
|
readonly tabTemplateScopeId: string;
|
|
8369
8551
|
readonly tabTemplateScopeSelector: string;
|
|
8370
8552
|
model: _angular_core.InputSignal<TabsModel>;
|
|
8553
|
+
/** Test ids for this element, namespaced by its data path or name. */
|
|
8554
|
+
protected readonly tid: (part: string, ...segments: Array<string | number | null | undefined>) => string;
|
|
8371
8555
|
column: _angular_core.InputSignal<ColumnModel>;
|
|
8372
8556
|
rowsTemplate: _angular_core.InputSignal<TemplateRef<unknown>>;
|
|
8373
8557
|
templateContext: _angular_core.InputSignal<Record<string, unknown>>;
|
|
@@ -8907,7 +9091,12 @@ declare class RendererService {
|
|
|
8907
9091
|
mapRow(row: any, parentIndex: number): RowModel;
|
|
8908
9092
|
mapColumn(column: any, parentIndex: number): ColumnModel;
|
|
8909
9093
|
getDataSource(name: string): DataSourceModel | undefined;
|
|
8910
|
-
|
|
9094
|
+
/**
|
|
9095
|
+
* Builds one model per element. Pass the pages whenever there are any: an element laid
|
|
9096
|
+
* out inside an object panel stores its value under that panel, and only the layout
|
|
9097
|
+
* says which elements those are.
|
|
9098
|
+
*/
|
|
9099
|
+
mapToModel(elements: Record<string, any>, pages?: IStructure['pages']): Record<string, ElementBaseModel>;
|
|
8911
9100
|
convertTemplateToModels(templateObj: any, parentInstance: any, parentPath: string, templateElementParentDataPath?: string): void;
|
|
8912
9101
|
convertColumnsToModels(columns: IBaseElement[], parentInstance: any, parentPath: string, isTemplateElement?: boolean, templateElementParentDataPath?: string): void;
|
|
8913
9102
|
applyExpressions(): void;
|
|
@@ -8939,6 +9128,7 @@ declare class RendererService {
|
|
|
8939
9128
|
}
|
|
8940
9129
|
|
|
8941
9130
|
declare class PreviewRendererService extends RendererService {
|
|
9131
|
+
private readonly uiTranslationService;
|
|
8942
9132
|
private isDataSourceValueWatcherBound;
|
|
8943
9133
|
private elementDataSourceSubscriptions;
|
|
8944
9134
|
stopPreviewDataSources(): void;
|
|
@@ -8947,6 +9137,7 @@ declare class PreviewRendererService extends RendererService {
|
|
|
8947
9137
|
getDataSource(name: string): DataSourceModel | undefined;
|
|
8948
9138
|
private loadElementDataSource;
|
|
8949
9139
|
private bindDataSourceValueWatcher;
|
|
9140
|
+
private reloadElementsWatching;
|
|
8950
9141
|
private isElementUsingDataPath;
|
|
8951
9142
|
private isDataPathMaterialized;
|
|
8952
9143
|
private extractDependenciesFromUnknown;
|
|
@@ -8970,6 +9161,13 @@ interface IRuntimeRouteVariables {
|
|
|
8970
9161
|
queryParams: Record<string, unknown>;
|
|
8971
9162
|
data: Record<string, unknown>;
|
|
8972
9163
|
fragment: string | null;
|
|
9164
|
+
/**
|
|
9165
|
+
* Value passed via Angular Router's `NavigationExtras.state` by the navigation that
|
|
9166
|
+
* landed on this route (e.g. a `navigate` action's `passResponseAsNavigationState`).
|
|
9167
|
+
* Angular stores this in `history.state`, so it survives only for the in-app
|
|
9168
|
+
* navigation that set it - a hard refresh or a direct URL open leaves it empty.
|
|
9169
|
+
*/
|
|
9170
|
+
state: Record<string, unknown>;
|
|
8973
9171
|
}
|
|
8974
9172
|
|
|
8975
9173
|
declare class RuntimeVariablesService {
|
|
@@ -9024,6 +9222,12 @@ declare class RuntimeVariablesService {
|
|
|
9024
9222
|
private isProjectedDataPath;
|
|
9025
9223
|
private buildRouteVariables;
|
|
9026
9224
|
private createEmptyVariables;
|
|
9225
|
+
/**
|
|
9226
|
+
* Reads the state the current navigation was given via Angular Router's
|
|
9227
|
+
* `NavigationExtras.state` (Angular mirrors it into `history.state`). Filters out
|
|
9228
|
+
* Angular's own `navigationId` bookkeeping key so only the caller's payload remains.
|
|
9229
|
+
*/
|
|
9230
|
+
private readNavigationState;
|
|
9027
9231
|
private normalizeMappings;
|
|
9028
9232
|
private normalizeSourceType;
|
|
9029
9233
|
private resolveDataSourceRefreshPaths;
|
|
@@ -9278,5 +9482,5 @@ declare function isMobileViewport(): boolean;
|
|
|
9278
9482
|
declare function isTabletViewport(): boolean;
|
|
9279
9483
|
declare function normalizeBreakpoint(value: unknown, fallback: number): number;
|
|
9280
9484
|
|
|
9281
|
-
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 };
|
|
9282
|
-
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 };
|
|
9485
|
+
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, OBJECT_CONTAINER_TYPES, ObjectPanelModel, 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, isObjectContainerType, 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, resolveObjectDataPaths, resolvePhoneCountry, resolveResponsiveDisplayWidth, resolveResponsiveWidth, resolveRuntimeTextContextValue, resolveStructureSettings, setElementRowContext, setViewportContentWidth };
|
|
9486
|
+
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, INgxViewBuilderMcpClient, 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 };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{NgStyle as o}from"@angular/common";import*as n from"@angular/core";import{input as d,signal as s,inject as v,computed as l,ChangeDetectionStrategy as m,Component as u}from"@angular/core";import{E as g,a as p,D as c}from"./ngxviewbuilder-runtime-ngxviewbuilder-runtime-CY_sp0Pm.mjs";class i{model=d.required(...ngDevMode?[{debugName:"model"}]:[]);previewOpen=s(false,...ngDevMode?[{debugName:"previewOpen"}]:[]);previewSrc=s("",...ngDevMode?[{debugName:"previewSrc"}]:[]);elementActionService=v(g);avatarStyle=l(()=>{const e=Number(this.model()?.size);const a=Number.isFinite(e)&&e>0?Math.floor(e):48;const t=String(this.model()?.shape??"circle").trim().toLowerCase();return{width:`${a}px`,height:`${a}px`,"border-radius":t==="square"?"10px":"999px","background-color":String(this.model()?.backgroundColor??"#dfe6ff").trim()||"#dfe6ff",color:String(this.model()?.textColor??"#1b2d6b").trim()||"#1b2d6b",border:this.model().showBorder?"1px solid var(--nvb-color-neutral-300)":"none"}},...ngDevMode?[{debugName:"avatarStyle"}]:[]);initials=l(()=>{const e=String(this.model()?.nameText??"").trim();if(!e){return"U"}const a=e.split(/\s+/).map(t=>t.trim()).filter(t=>t.length>0);if(!a.length){return"U"}return a.slice(0,2).map(t=>t[0].toUpperCase()).join("")},...ngDevMode?[{debugName:"initials"}]:[]);onAvatarClick(e,a){a.preventDefault();a.stopPropagation();const t={value:e||this.initials(),item:null,row:null};const r=String(this.model().name??"").trim();if(r){t[r]=t["value"]}void this.elementActionService.runActions(this.model(),this.model().events??[],"click",t);if(!this.model().showPreview||!e){return}this.previewSrc.set(e);this.previewOpen.set(true)}closePreview(e){e?.preventDefault();e?.stopPropagation();this.previewOpen.set(false);this.previewSrc.set("")}static ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"22.1.4",ngImport:n,type:i,deps:[],target:n.ɵɵFactoryTarget.Component});static ɵcmp=n.ɵɵngDeclareComponent({minVersion:"17.0.0",version:"22.1.4",type:i,isStandalone:true,selector:"avatar-element",inputs:{model:{classPropertyName:"model",publicName:"model",isSignal:true,isRequired:true,transformFunction:null}},ngImport:n,template:'<element-wrapper [model]="model()">\n @let avatarSrc = model().src | dynamicText: model();\n @let avatarName = model().nameText | dynamicText: model();\n\n <div class="nvb-avatar-wrap" data-testid="avatar-root">\n <button\n type="button"\n class="nvb-avatar"\n [ngStyle]="avatarStyle()"\n (click)="onAvatarClick(avatarSrc, $event)"\n >\n @if (avatarSrc) {\n <img [src]="avatarSrc" [alt]="avatarName" />\n } @else {\n <span>{{ initials() }}</span>\n }\n </button>\n </div>\n\n @if (previewOpen()) {\n <div class="nvb-avatar-preview" (click)="closePreview()">\n <button type="button" class="nvb-avatar-preview__close" (click)="closePreview($event)">\n <span class="material-symbols-outlined">close</span>\n </button>\n <img [src]="previewSrc()" [alt]="avatarName" />\n </div>\n }\n</element-wrapper>\n',styles:[":host{display:block;width:100%}.nvb-avatar-wrap{width:100%;display:flex;justify-content:flex-start;align-items:center}.nvb-avatar{border:none;padding:0;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;font-size:14px;line-height:1}.nvb-avatar img{width:100%;height:100%;object-fit:cover;display:block}.nvb-avatar-preview{position:fixed;inset:0;background:#000000b8;z-index:1300;display:grid;place-items:center;padding:20px}.nvb-avatar-preview img{width:min(300px,100vw - 40px);height:min(300px,100vw - 40px);object-fit:cover;border-radius:14px;box-shadow:0 16px 32px #0000004d;background:#fff}.nvb-avatar-preview__close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:8px;background:#ffffff2e;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.nvb-avatar-preview__close span{font-size:20px}\n"],dependencies:[{kind:"component",type:p,selector:"element-wrapper",inputs:["model","controlIdInput","labelForInput","groupRole","showTextWrapperInput"],exportAs:["elementWrapper"]},{kind:"directive",type:o,selector:"[ngStyle]",inputs:["ngStyle"]},{kind:"pipe",type:c,name:"dynamicText"}],changeDetection:n.ChangeDetectionStrategy.OnPush})}n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"22.1.4",ngImport:n,type:i,decorators:[{type:u,args:[{selector:"avatar-element",changeDetection:m.OnPush,imports:[p,o,c],template:'<element-wrapper [model]="model()">\n @let avatarSrc = model().src | dynamicText: model();\n @let avatarName = model().nameText | dynamicText: model();\n\n <div class="nvb-avatar-wrap" data-testid="avatar-root">\n <button\n type="button"\n class="nvb-avatar"\n [ngStyle]="avatarStyle()"\n (click)="onAvatarClick(avatarSrc, $event)"\n >\n @if (avatarSrc) {\n <img [src]="avatarSrc" [alt]="avatarName" />\n } @else {\n <span>{{ initials() }}</span>\n }\n </button>\n </div>\n\n @if (previewOpen()) {\n <div class="nvb-avatar-preview" (click)="closePreview()">\n <button type="button" class="nvb-avatar-preview__close" (click)="closePreview($event)">\n <span class="material-symbols-outlined">close</span>\n </button>\n <img [src]="previewSrc()" [alt]="avatarName" />\n </div>\n }\n</element-wrapper>\n',styles:[":host{display:block;width:100%}.nvb-avatar-wrap{width:100%;display:flex;justify-content:flex-start;align-items:center}.nvb-avatar{border:none;padding:0;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;font-size:14px;line-height:1}.nvb-avatar img{width:100%;height:100%;object-fit:cover;display:block}.nvb-avatar-preview{position:fixed;inset:0;background:#000000b8;z-index:1300;display:grid;place-items:center;padding:20px}.nvb-avatar-preview img{width:min(300px,100vw - 40px);height:min(300px,100vw - 40px);object-fit:cover;border-radius:14px;box-shadow:0 16px 32px #0000004d;background:#fff}.nvb-avatar-preview__close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:8px;background:#ffffff2e;color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.nvb-avatar-preview__close span{font-size:20px}\n"]}]}],propDecorators:{model:[{type:n.Input,args:[{isSignal:true,alias:"model",required:true}]}]}});export{i as AvatarElement};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import*as s from"@angular/core";import{input as y,inject as p,signal as S,computed as v,ChangeDetectionStrategy as x,Component as w}from"@angular/core";import{Router as I,NavigationEnd as _}from"@angular/router";import{get as k}from"lodash-es";import{filter as C}from"rxjs";import{E as T,M as R,U as D,a as f,N as h,D as g}from"./ngxviewbuilder-runtime-ngxviewbuilder-runtime-CY_sp0Pm.mjs";class d{model=y.required(...ngDevMode?[{debugName:"model"}]:[]);elementActionService=p(T);markupSecurityService=p(R);uiTranslationService=p(D);router=p(I,{optional:true});routeRefresh=S(0,...ngDevMode?[{debugName:"routeRefresh"}]:[]);navigationSubscription=null;ngOnInit(){if(!this.router){return}this.navigationSubscription=this.router.events.pipe(C(r=>r instanceof _)).subscribe(()=>{this.routeRefresh.update(r=>r+1)})}ngOnDestroy(){this.navigationSubscription?.unsubscribe();this.navigationSubscription=null}renderedItems=v(()=>{this.routeRefresh();const r=this.resolveSourceItems();const e=[];if(this.model().showHome){const n=String(this.model()?.homeLabel??"").trim();e.push({label:n||this.uiTranslationService.translate("breadcrumbs.home","Home"),value:String(this.model()?.homeUrl??"/").trim()||"/"})}e.push(...r);const t=Number(this.model()?.maxItems??0);const i=Number.isFinite(t)&&t>0?Math.floor(t):0;if(i>0&&e.length>i&&i>=2){const n=e[0];const a=e.slice(e.length-(i-1));return[n,{label:"...",value:"",ellipsis:true},...a]}return e},...ngDevMode?[{debugName:"renderedItems"}]:[]);separatorIcon=v(()=>{const r=String(this.model()?.separator??"").trim();return r||"chevron_right"},...ngDevMode?[{debugName:"separatorIcon"}]:[]);resolveItemHref(r){return this.markupSecurityService.sanitizeNavigationUrl(String(r??""))}onItemClick(r,e,t){if(r.ellipsis){t.preventDefault();return}const i=Array.isArray(this.model().events)&&this.model().events.length>0;if(i){t.preventDefault()}else{const o=t.currentTarget instanceof HTMLAnchorElement?String(t.currentTarget.getAttribute("href")??"").trim():"";if(o.startsWith("/")&&this.router){t.preventDefault();this.router.navigateByUrl(o).catch(()=>{if(typeof window!=="undefined"&&typeof window.location?.assign==="function"){window.location.assign(o)}});return}}const n={item:r,row:r,index:e,value:r.value};const a=String(this.model().name??"").trim();if(a){n[a]=r.value}void this.elementActionService.runActions(this.model(),this.model().events??[],"click",n)}resolveSourceItems(){if(this.model()?.itemsSource==="route"){return this.buildRouteItems()}return Array.isArray(this.model()?.items)?[...this.model().items]:[]}buildRouteItems(){const r=this.router?.routerState?.snapshot?.root??null;if(!r){return[]}const e=String(this.model()?.routeLabelDataKey??"breadcrumb").trim()||"breadcrumb";const t=this.model()?.routeUsePathFallback!==false;const i=this.model()?.routeIncludeCurrent!==false;const n=this.resolveLeafSnapshot(r);const a=[];const o=[];for(const m of n.pathFromRoot){const c=m.url.map(l=>String(l?.path??"").trim()).filter(Boolean);if(c.length>0){a.push(...c)}const u=this.resolveRouteItem(m,a,e,t);if(u){o.push(u)}}if(!i&&o.length>0){o.pop()}return o}resolveLeafSnapshot(r){let e=r;while(e.firstChild){e=e.firstChild}return e}resolveRouteItem(r,e,t,i){const n=this.resolveRouteBreadcrumbConfig(r,t);if(n?.skip){return null}const a=i?this.resolveFallbackRouteLabel(r):"";const o=this.resolveRouteTemplate(String(n?.label??a??"").trim(),r,e);if(!o){return null}const m=this.resolveRouteTemplate(String(n?.value??"").trim(),r,e);const c=e.length>0?`/${e.join("/")}`:"/";return{label:o,value:m||c}}resolveRouteBreadcrumbConfig(r,e){const t=r.data?.[e];if(t===false||t===null){return{skip:true}}if(typeof t==="string"){const n=t.trim();return n?{label:n}:null}if(!t||typeof t!=="object"||Array.isArray(t)){return null}const i=t;return{label:String(i["label"]??"").trim()||void 0,value:String(i["value"]??"").trim()||void 0,skip:Boolean(i["skip"])}}resolveFallbackRouteLabel(r){const e=String(r.data?.["title"]??"").trim();if(e){return e}const t=r.url.map(n=>this.humanizeSegment(String(n?.path??"").trim())).filter(Boolean).join(" / ");if(t){return t}const i=String(r.routeConfig?.path??"").trim();if(i.startsWith(":")){const n=i.slice(1).split("/")[0];const a=String(r.params?.[n]??"").trim();if(a){return a}}return""}humanizeSegment(r){const e=decodeURIComponent(String(r??"").trim());if(!e){return""}return e.replace(/[-_]+/g," ").replace(/\s+/g," ").trim().replace(/\b\w/g,t=>t.toUpperCase())}resolveRouteTemplate(r,e,t){const i=String(r??"").trim();if(!i){return""}const n=t.length>0?`/${t.join("/")}`:"/";const a=String(e.params?.["id"]??e.paramMap.get("id")??"").trim()||void 0;const o={route:{id:a,url:n,params:e.params??{},queryParams:e.queryParams??{},data:e.data??{},fragment:e.fragment??"",path:String(e.routeConfig?.path??"").trim()},id:a,url:n,params:e.params??{},queryParams:e.queryParams??{},data:e.data??{}};const m=u=>{const l=String(u??"").trim();if(!l){return""}const b=k(o,l);if(b===null||b===void 0){return""}return String(b)};const c=i.replace(/\{\{([^}]+)\}\}/g,(u,l)=>m(l));return c.replace(/\{([^}]+)\}/g,(u,l)=>m(l))}static ɵfac=s.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"22.1.4",ngImport:s,type:d,deps:[],target:s.ɵɵFactoryTarget.Component});static ɵcmp=s.ɵɵngDeclareComponent({minVersion:"17.0.0",version:"22.1.4",type:d,isStandalone:true,selector:"breadcrumbs-element",inputs:{model:{classPropertyName:"model",publicName:"model",isSignal:true,isRequired:true,transformFunction:null}},ngImport:s,template:'<element-wrapper [model]="model()">\n <nav class="nvb-breadcrumbs" aria-label="Breadcrumbs" data-testid="breadcrumbs-root">\n <ol>\n @for (item of renderedItems(); track $index; let itemIndex = $index; let isLast = $last) {\n <li>\n @if (item.ellipsis) {\n <span class="nvb-breadcrumbs__ellipsis">...</span>\n } @else if (!isLast && item.value) {\n <a\n [attr.href]="resolveItemHref(item.value | dynamicText: model())"\n (click)="onItemClick(item, itemIndex, $event)"\n >\n {{ item.label | dynamicText: model() }}\n </a>\n } @else {\n <span class="nvb-breadcrumbs__current">{{ item.label | dynamicText: model() }}</span>\n }\n\n @if (!isLast) {\n <nvb-icon class="nvb-breadcrumbs__separator" [name]="separatorIcon()"></nvb-icon>\n }\n </li>\n }\n </ol>\n </nav>\n</element-wrapper>\n',styles:[":host{display:block;width:100%}.nvb-breadcrumbs{width:100%}.nvb-breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}.nvb-breadcrumbs li{display:inline-flex;align-items:center;gap:6px;min-width:0}.nvb-breadcrumbs a,.nvb-breadcrumbs__current,.nvb-breadcrumbs__ellipsis{font-size:12px;line-height:1.3;text-decoration:none;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nvb-breadcrumbs a{color:var(--nvb-color-primary-700);cursor:pointer}.nvb-breadcrumbs a:hover{text-decoration:underline}.nvb-breadcrumbs__current{color:var(--nvb-color-neutral-700);font-weight:600}.nvb-breadcrumbs__ellipsis{color:var(--nvb-color-neutral-500)}.nvb-breadcrumbs__separator{font-size:14px;color:var(--nvb-color-neutral-500)}\n"],dependencies:[{kind:"component",type:f,selector:"element-wrapper",inputs:["model","controlIdInput","labelForInput","groupRole","showTextWrapperInput"],exportAs:["elementWrapper"]},{kind:"component",type:h,selector:"nvb-icon",inputs:["name","svg","ariaLabel"]},{kind:"pipe",type:g,name:"dynamicText"}],changeDetection:s.ChangeDetectionStrategy.OnPush})}s.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"22.1.4",ngImport:s,type:d,decorators:[{type:w,args:[{selector:"breadcrumbs-element",changeDetection:x.OnPush,imports:[f,g,h],template:'<element-wrapper [model]="model()">\n <nav class="nvb-breadcrumbs" aria-label="Breadcrumbs" data-testid="breadcrumbs-root">\n <ol>\n @for (item of renderedItems(); track $index; let itemIndex = $index; let isLast = $last) {\n <li>\n @if (item.ellipsis) {\n <span class="nvb-breadcrumbs__ellipsis">...</span>\n } @else if (!isLast && item.value) {\n <a\n [attr.href]="resolveItemHref(item.value | dynamicText: model())"\n (click)="onItemClick(item, itemIndex, $event)"\n >\n {{ item.label | dynamicText: model() }}\n </a>\n } @else {\n <span class="nvb-breadcrumbs__current">{{ item.label | dynamicText: model() }}</span>\n }\n\n @if (!isLast) {\n <nvb-icon class="nvb-breadcrumbs__separator" [name]="separatorIcon()"></nvb-icon>\n }\n </li>\n }\n </ol>\n </nav>\n</element-wrapper>\n',styles:[":host{display:block;width:100%}.nvb-breadcrumbs{width:100%}.nvb-breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-width:0}.nvb-breadcrumbs li{display:inline-flex;align-items:center;gap:6px;min-width:0}.nvb-breadcrumbs a,.nvb-breadcrumbs__current,.nvb-breadcrumbs__ellipsis{font-size:12px;line-height:1.3;text-decoration:none;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nvb-breadcrumbs a{color:var(--nvb-color-primary-700);cursor:pointer}.nvb-breadcrumbs a:hover{text-decoration:underline}.nvb-breadcrumbs__current{color:var(--nvb-color-neutral-700);font-weight:600}.nvb-breadcrumbs__ellipsis{color:var(--nvb-color-neutral-500)}.nvb-breadcrumbs__separator{font-size:14px;color:var(--nvb-color-neutral-500)}\n"]}]}],propDecorators:{model:[{type:s.Input,args:[{isSignal:true,alias:"model",required:true}]}]}});export{d as BreadcrumbsElement};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{NgClass as l,NgStyle as s}from"@angular/common";import*as n from"@angular/core";import{input as p,inject as m,computed as r,ChangeDetectionStrategy as d,Component as v}from"@angular/core";import{E as g,a as c,N as a}from"./ngxviewbuilder-runtime-ngxviewbuilder-runtime-CY_sp0Pm.mjs";class o{model=p.required(...ngDevMode?[{debugName:"model"}]:[]);elementActionService=m(g);iconName=r(()=>{const e=String(this.model()?.iconName??"").trim();return e||"star"},...ngDevMode?[{debugName:"iconName"}]:[]);iconStyle=r(()=>{const e=this.resolveSize(this.model()?.iconSize,24);const i=String(this.model()?.iconColor??"").trim();return{width:`${e+18}px`,height:`${e+18}px`,color:i||"var(--nvb-color-neutral-700)","font-size":`${e}px`}},...ngDevMode?[{debugName:"iconStyle"}]:[]);previewStyle=r(()=>{const e=this.resolveSize(this.model()?.previewSize,64);const i=String(this.model()?.iconColor??"").trim();return{width:`${e+20}px`,height:`${e+20}px`,color:i||"var(--nvb-color-neutral-700)","font-size":`${e}px`}},...ngDevMode?[{debugName:"previewStyle"}]:[]);onIconClick(e){e.preventDefault();e.stopPropagation();const i={value:this.iconName(),item:null,row:null};const t=String(this.model().name??"").trim();if(t){i[t]=this.iconName()}void this.elementActionService.runActions(this.model(),this.model().events??[],"click",i)}resolveSize(e,i){const t=Number(e);if(!Number.isFinite(t)||t<=0){return i}return Math.floor(t)}static ɵfac=n.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"22.1.4",ngImport:n,type:o,deps:[],target:n.ɵɵFactoryTarget.Component});static ɵcmp=n.ɵɵngDeclareComponent({minVersion:"17.0.0",version:"22.1.4",type:o,isStandalone:true,selector:"icon-element",inputs:{model:{classPropertyName:"model",publicName:"model",isSignal:true,isRequired:true,transformFunction:null}},ngImport:n,template:"<element-wrapper [model]=\"model()\">\n <section class=\"nvb-icon-wrap\" data-testid=\"icon-root\">\n <button\n type=\"button\"\n class=\"nvb-icon\"\n [ngClass]=\"{ 'nvb-icon--filled': model().filled }\"\n [ngStyle]=\"iconStyle()\"\n (click)=\"onIconClick($event)\"\n >\n <nvb-icon [name]=\"iconName()\"></nvb-icon>\n </button>\n\n @if (model().showPreview) {\n <div class=\"nvb-icon__preview\" [ngStyle]=\"previewStyle()\">\n <nvb-icon [name]=\"iconName()\"></nvb-icon>\n </div>\n }\n </section>\n</element-wrapper>\n",styles:[':host{display:block;width:100%}.nvb-icon-wrap{width:100%;display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.nvb-icon,.nvb-icon__preview{border:1px solid var(--nvb-color-neutral-300);background:var(--nvb-color-neutral-000);border-radius:10px;display:inline-flex;align-items:center;justify-content:center}.nvb-icon{cursor:pointer;min-width:42px;min-height:42px;padding:0}.nvb-icon span,.nvb-icon__preview span{line-height:1}.nvb-icon--filled span{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}\n'],dependencies:[{kind:"component",type:c,selector:"element-wrapper",inputs:["model","controlIdInput","labelForInput","groupRole","showTextWrapperInput"],exportAs:["elementWrapper"]},{kind:"directive",type:l,selector:"[ngClass]",inputs:["class","ngClass"]},{kind:"directive",type:s,selector:"[ngStyle]",inputs:["ngStyle"]},{kind:"component",type:a,selector:"nvb-icon",inputs:["name","svg","ariaLabel"]}],changeDetection:n.ChangeDetectionStrategy.OnPush})}n.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"22.1.4",ngImport:n,type:o,decorators:[{type:v,args:[{selector:"icon-element",changeDetection:d.OnPush,imports:[c,l,s,a],template:"<element-wrapper [model]=\"model()\">\n <section class=\"nvb-icon-wrap\" data-testid=\"icon-root\">\n <button\n type=\"button\"\n class=\"nvb-icon\"\n [ngClass]=\"{ 'nvb-icon--filled': model().filled }\"\n [ngStyle]=\"iconStyle()\"\n (click)=\"onIconClick($event)\"\n >\n <nvb-icon [name]=\"iconName()\"></nvb-icon>\n </button>\n\n @if (model().showPreview) {\n <div class=\"nvb-icon__preview\" [ngStyle]=\"previewStyle()\">\n <nvb-icon [name]=\"iconName()\"></nvb-icon>\n </div>\n }\n </section>\n</element-wrapper>\n",styles:[':host{display:block;width:100%}.nvb-icon-wrap{width:100%;display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.nvb-icon,.nvb-icon__preview{border:1px solid var(--nvb-color-neutral-300);background:var(--nvb-color-neutral-000);border-radius:10px;display:inline-flex;align-items:center;justify-content:center}.nvb-icon{cursor:pointer;min-width:42px;min-height:42px;padding:0}.nvb-icon span,.nvb-icon__preview span{line-height:1}.nvb-icon--filled span{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}\n']}]}],propDecorators:{model:[{type:n.Input,args:[{isSignal:true,alias:"model",required:true}]}]}});export{o as IconElement};
|