@praxisui/core 9.0.62 → 9.0.64
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/README.md +2 -0
- package/ai/component-registry.json +486 -88
- package/fesm2022/praxisui-core.mjs +414 -137
- package/package.json +1 -1
- package/types/praxisui-core.d.ts +111 -8
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, InjectionToken, Injectable, inject, Inject, Optional, SkipSelf, makeEnvironmentProviders, APP_INITIALIZER, signal, computed, DestroyRef, ENVIRONMENT_INITIALIZER, ErrorHandler, Input, Directive, input, booleanAttribute, ChangeDetectionStrategy, EventEmitter, Output, SecurityContext, ViewContainerRef, isSignal, SimpleChange,
|
|
2
|
+
import { Component, InjectionToken, Injectable, inject, Inject, Optional, SkipSelf, makeEnvironmentProviders, APP_INITIALIZER, signal, computed, DestroyRef, ENVIRONMENT_INITIALIZER, ErrorHandler, Input, Directive, input, booleanAttribute, ChangeDetectionStrategy, EventEmitter, Output, SecurityContext, ViewContainerRef, Injector, isSignal, effect, SimpleChange, contentChild, HostBinding, output, ElementRef, ChangeDetectorRef, afterNextRender, HostListener, ViewChildren, ViewChild } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common/http';
|
|
4
4
|
import { HttpHeaders, HttpClient, HttpParams, HttpResponse, HttpContextToken, HTTP_INTERCEPTORS, withInterceptors } from '@angular/common/http';
|
|
5
5
|
import { of, defer, throwError, from, EMPTY, BehaviorSubject, firstValueFrom, Subject, finalize as finalize$1, shareReplay as shareReplay$1, map as map$1, switchMap as switchMap$1, catchError as catchError$1, forkJoin } from 'rxjs';
|
|
6
|
-
import { switchMap,
|
|
6
|
+
import { switchMap, map, take, catchError, concatMap, tap, shareReplay, takeUntil, toArray, finalize } from 'rxjs/operators';
|
|
7
7
|
import * as i1$3 from '@angular/common';
|
|
8
8
|
import { Location, DOCUMENT, CommonModule } from '@angular/common';
|
|
9
9
|
import { Router, ActivatedRoute } from '@angular/router';
|
|
@@ -3012,6 +3012,9 @@ class SchemaNormalizerService {
|
|
|
3012
3012
|
return [];
|
|
3013
3013
|
}
|
|
3014
3014
|
const properties = schema.properties ?? {};
|
|
3015
|
+
const requiredNames = new Set(Array.isArray(schema.required)
|
|
3016
|
+
? schema.required.filter((name) => typeof name === 'string')
|
|
3017
|
+
: []);
|
|
3015
3018
|
const fields = [];
|
|
3016
3019
|
for (const [name, prop] of Object.entries(properties)) {
|
|
3017
3020
|
const ui = prop &&
|
|
@@ -3128,6 +3131,11 @@ class SchemaNormalizerService {
|
|
|
3128
3131
|
field.viewOnlyStyle = String(ui.viewOnlyStyle);
|
|
3129
3132
|
}
|
|
3130
3133
|
Object.assign(field, this.parseValidators(ui, name));
|
|
3134
|
+
// Required membership belongs to the canonical object schema. UI hints
|
|
3135
|
+
// can add validation but cannot make a required request field optional.
|
|
3136
|
+
if (requiredNames.has(name)) {
|
|
3137
|
+
field.required = true;
|
|
3138
|
+
}
|
|
3131
3139
|
const condDisplay = this.parseJsonLogicExpression(ui.conditionalDisplay, name, 'x-ui.conditionalDisplay');
|
|
3132
3140
|
if (condDisplay !== undefined) {
|
|
3133
3141
|
field.conditionalDisplay = condDisplay;
|
|
@@ -3419,6 +3427,9 @@ function provideGlobalConfig(partial) {
|
|
|
3419
3427
|
return { provide: GLOBAL_CONFIG, useValue: partial, multi: true };
|
|
3420
3428
|
}
|
|
3421
3429
|
|
|
3430
|
+
function supportsConfigDocuments(storage) {
|
|
3431
|
+
return typeof storage.loadConfigDocument === 'function';
|
|
3432
|
+
}
|
|
3422
3433
|
class LocalStorageConfigService {
|
|
3423
3434
|
loadConfig(key) {
|
|
3424
3435
|
try {
|
|
@@ -3522,6 +3533,14 @@ class DeferredAsyncConfigStorage {
|
|
|
3522
3533
|
return this.delegate.clearConfig(key);
|
|
3523
3534
|
return defer(() => from(this.gate()).pipe(switchMap(() => this.delegate.clearConfig(key))));
|
|
3524
3535
|
}
|
|
3536
|
+
loadConfigDocument(key) {
|
|
3537
|
+
const load = () => supportsConfigDocuments(this.delegate)
|
|
3538
|
+
? this.delegate.loadConfigDocument(key)
|
|
3539
|
+
: this.delegate.loadConfig(key).pipe(map((payload) => payload == null ? null : { payload }));
|
|
3540
|
+
if (!this.gate)
|
|
3541
|
+
return load();
|
|
3542
|
+
return defer(() => from(this.gate()).pipe(switchMap(load)));
|
|
3543
|
+
}
|
|
3525
3544
|
}
|
|
3526
3545
|
const ASYNC_CONFIG_STORAGE = new InjectionToken('ASYNC_CONFIG_STORAGE', {
|
|
3527
3546
|
providedIn: 'root',
|
|
@@ -3670,6 +3689,29 @@ class ApiConfigStorage {
|
|
|
3670
3689
|
}
|
|
3671
3690
|
return this.executeLoadConfigRequest(key, true);
|
|
3672
3691
|
}
|
|
3692
|
+
loadConfigDocument(key) {
|
|
3693
|
+
const cached = this.cache.get(key);
|
|
3694
|
+
const etag = cached?.readEtag ?? cached?.writeEtag;
|
|
3695
|
+
const { type, id } = this.resolveKey(key);
|
|
3696
|
+
const params = this.buildParams(type, id, cached?.scope);
|
|
3697
|
+
const headers = this.buildHeaders(etag ? { 'If-None-Match': this.formatEtag(etag) } : {});
|
|
3698
|
+
return this.http
|
|
3699
|
+
.get(this.baseUrl, { observe: 'response', headers, params })
|
|
3700
|
+
.pipe(map((resp) => this.cacheResponseDocument(key, resp.body, resp.headers.get('ETag'))), catchError((err) => {
|
|
3701
|
+
if (err.status === 304 && cached?.document) {
|
|
3702
|
+
return of(cached.document);
|
|
3703
|
+
}
|
|
3704
|
+
if (err.status === 404) {
|
|
3705
|
+
return of(null);
|
|
3706
|
+
}
|
|
3707
|
+
if (this.shouldLogLoadError(key, err)) {
|
|
3708
|
+
console.warn('[ApiConfigStorage] document load error', err);
|
|
3709
|
+
}
|
|
3710
|
+
return this.shouldPropagateLoadError(key, err)
|
|
3711
|
+
? throwError(() => err)
|
|
3712
|
+
: of(null);
|
|
3713
|
+
}));
|
|
3714
|
+
}
|
|
3673
3715
|
executeLoadConfigRequest(key, establishAvailability) {
|
|
3674
3716
|
const cached = this.cache.get(key);
|
|
3675
3717
|
const etag = cached?.readEtag ?? cached?.writeEtag;
|
|
@@ -3700,11 +3742,13 @@ class ApiConfigStorage {
|
|
|
3700
3742
|
const readEtag = this.resolveReadEtag(responseEtag, body?.etag);
|
|
3701
3743
|
const writeEtag = this.resolveWriteEtag(responseEtag, body?.etag);
|
|
3702
3744
|
if (readEtag || writeEtag) {
|
|
3745
|
+
const document = this.toConfigDocument(body, responseEtag);
|
|
3703
3746
|
this.cache.set(key, {
|
|
3704
3747
|
readEtag,
|
|
3705
3748
|
writeEtag,
|
|
3706
3749
|
payload: body?.payload,
|
|
3707
3750
|
scope: this.resolveResponseScope(body?.scope),
|
|
3751
|
+
document,
|
|
3708
3752
|
});
|
|
3709
3753
|
}
|
|
3710
3754
|
releaseProbe?.();
|
|
@@ -3735,11 +3779,13 @@ class ApiConfigStorage {
|
|
|
3735
3779
|
const readEtag = this.resolveReadEtag(responseEtag, body?.etag);
|
|
3736
3780
|
const writeEtag = this.resolveWriteEtag(responseEtag, body?.etag);
|
|
3737
3781
|
if (readEtag || writeEtag) {
|
|
3782
|
+
const document = this.toConfigDocument(body, responseEtag);
|
|
3738
3783
|
this.cache.set(key, {
|
|
3739
3784
|
readEtag,
|
|
3740
3785
|
writeEtag,
|
|
3741
3786
|
payload: body?.payload,
|
|
3742
3787
|
scope: this.resolveResponseScope(body?.scope),
|
|
3788
|
+
document,
|
|
3743
3789
|
});
|
|
3744
3790
|
}
|
|
3745
3791
|
return body?.payload ?? null;
|
|
@@ -3778,6 +3824,7 @@ class ApiConfigStorage {
|
|
|
3778
3824
|
writeEtag: this.resolveWriteEtag(responseEtag, body?.etag),
|
|
3779
3825
|
payload,
|
|
3780
3826
|
scope: this.resolveResponseScope(body?.scope) ?? cached?.scope,
|
|
3827
|
+
document: this.toConfigDocument({ ...body, payload }, responseEtag),
|
|
3781
3828
|
});
|
|
3782
3829
|
}), catchError((err) => {
|
|
3783
3830
|
if (this.shouldLogSaveError(key, err)) {
|
|
@@ -3859,6 +3906,36 @@ class ApiConfigStorage {
|
|
|
3859
3906
|
}
|
|
3860
3907
|
return new HttpHeaders(merged);
|
|
3861
3908
|
}
|
|
3909
|
+
cacheResponseDocument(key, body, responseEtag) {
|
|
3910
|
+
const document = this.toConfigDocument(body, responseEtag);
|
|
3911
|
+
this.cache.set(key, {
|
|
3912
|
+
readEtag: this.resolveReadEtag(responseEtag, body?.etag),
|
|
3913
|
+
writeEtag: this.resolveWriteEtag(responseEtag, body?.etag),
|
|
3914
|
+
payload: document.payload,
|
|
3915
|
+
scope: this.resolveResponseScope(document.scope),
|
|
3916
|
+
document,
|
|
3917
|
+
});
|
|
3918
|
+
return document;
|
|
3919
|
+
}
|
|
3920
|
+
toConfigDocument(body, responseEtag) {
|
|
3921
|
+
const strongEtag = this.resolveWriteEtag(responseEtag, body?.etag);
|
|
3922
|
+
return {
|
|
3923
|
+
...(typeof body?.componentType === 'string' ? { componentType: body.componentType } : {}),
|
|
3924
|
+
...(typeof body?.componentId === 'string' ? { componentId: body.componentId } : {}),
|
|
3925
|
+
...(typeof body?.environment === 'string' ? { environment: body.environment } : {}),
|
|
3926
|
+
...(typeof body?.scope === 'string' ? { scope: body.scope } : {}),
|
|
3927
|
+
...(typeof body?.version === 'number' ? { version: body.version } : {}),
|
|
3928
|
+
...(strongEtag ? { etag: strongEtag } : {}),
|
|
3929
|
+
payload: body?.payload,
|
|
3930
|
+
authoringSource: this.isRecord(body?.authoringSource)
|
|
3931
|
+
? body.authoringSource
|
|
3932
|
+
: null,
|
|
3933
|
+
tags: this.isRecord(body?.tags) ? body.tags : null,
|
|
3934
|
+
};
|
|
3935
|
+
}
|
|
3936
|
+
isRecord(value) {
|
|
3937
|
+
return !!value && typeof value === 'object' && !Array.isArray(value);
|
|
3938
|
+
}
|
|
3862
3939
|
buildParams(componentType, componentId, resolvedScope) {
|
|
3863
3940
|
const params = {
|
|
3864
3941
|
componentType,
|
|
@@ -6239,6 +6316,19 @@ function createDefaultTableConfig() {
|
|
|
6239
6316
|
// enabled: false
|
|
6240
6317
|
// } // Property doesn't exist in InteractionConfig
|
|
6241
6318
|
},
|
|
6319
|
+
loading: {
|
|
6320
|
+
type: 'skeleton',
|
|
6321
|
+
position: 'replace',
|
|
6322
|
+
text: 'Carregando dados...',
|
|
6323
|
+
showForQuickOperations: false,
|
|
6324
|
+
delay: 0,
|
|
6325
|
+
requestTimeoutMs: 30000,
|
|
6326
|
+
allowCancel: true,
|
|
6327
|
+
skeleton: {
|
|
6328
|
+
rows: 3,
|
|
6329
|
+
animated: true,
|
|
6330
|
+
},
|
|
6331
|
+
},
|
|
6242
6332
|
resizing: {
|
|
6243
6333
|
enabled: false,
|
|
6244
6334
|
autoFit: true,
|
|
@@ -7159,6 +7249,152 @@ function isTextualControlType(value) {
|
|
|
7159
7249
|
].includes(value);
|
|
7160
7250
|
}
|
|
7161
7251
|
|
|
7252
|
+
/**
|
|
7253
|
+
* Produces the same structural canonical form used by praxis-config-starter:
|
|
7254
|
+
* object keys are sorted, object properties with null/undefined values are
|
|
7255
|
+
* omitted, and array order is preserved.
|
|
7256
|
+
*/
|
|
7257
|
+
function canonicalJsonStringify(value) {
|
|
7258
|
+
return JSON.stringify(canonicalizeJson(value));
|
|
7259
|
+
}
|
|
7260
|
+
function canonicalJsonSha256(value) {
|
|
7261
|
+
return textSha256(canonicalJsonStringify(value));
|
|
7262
|
+
}
|
|
7263
|
+
function textSha256(value) {
|
|
7264
|
+
return sha256Hex(encodeUtf8(value));
|
|
7265
|
+
}
|
|
7266
|
+
function canonicalizeJson(value) {
|
|
7267
|
+
if (Array.isArray(value)) {
|
|
7268
|
+
return value.map((item) => item === undefined ? null : canonicalizeJson(item));
|
|
7269
|
+
}
|
|
7270
|
+
if (value && typeof value === 'object') {
|
|
7271
|
+
return Object.keys(value)
|
|
7272
|
+
.sort()
|
|
7273
|
+
.reduce((result, key) => {
|
|
7274
|
+
const item = value[key];
|
|
7275
|
+
if (item !== null && item !== undefined) {
|
|
7276
|
+
result[key] = canonicalizeJson(item);
|
|
7277
|
+
}
|
|
7278
|
+
return result;
|
|
7279
|
+
}, {});
|
|
7280
|
+
}
|
|
7281
|
+
if (typeof value === 'number' && !Number.isFinite(value)) {
|
|
7282
|
+
throw new TypeError('Canonical JSON does not support non-finite numbers.');
|
|
7283
|
+
}
|
|
7284
|
+
return value;
|
|
7285
|
+
}
|
|
7286
|
+
function encodeUtf8(value) {
|
|
7287
|
+
if (typeof TextEncoder !== 'undefined') {
|
|
7288
|
+
return new TextEncoder().encode(value);
|
|
7289
|
+
}
|
|
7290
|
+
const bytes = [];
|
|
7291
|
+
for (const symbol of value) {
|
|
7292
|
+
const codePoint = symbol.codePointAt(0);
|
|
7293
|
+
if (codePoint <= 0x7f)
|
|
7294
|
+
bytes.push(codePoint);
|
|
7295
|
+
else if (codePoint <= 0x7ff) {
|
|
7296
|
+
bytes.push(0xc0 | (codePoint >> 6), 0x80 | (codePoint & 0x3f));
|
|
7297
|
+
}
|
|
7298
|
+
else if (codePoint <= 0xffff) {
|
|
7299
|
+
bytes.push(0xe0 | (codePoint >> 12), 0x80 | ((codePoint >> 6) & 0x3f), 0x80 | (codePoint & 0x3f));
|
|
7300
|
+
}
|
|
7301
|
+
else {
|
|
7302
|
+
bytes.push(0xf0 | (codePoint >> 18), 0x80 | ((codePoint >> 12) & 0x3f), 0x80 | ((codePoint >> 6) & 0x3f), 0x80 | (codePoint & 0x3f));
|
|
7303
|
+
}
|
|
7304
|
+
}
|
|
7305
|
+
return Uint8Array.from(bytes);
|
|
7306
|
+
}
|
|
7307
|
+
function sha256Hex(message) {
|
|
7308
|
+
const constants = [
|
|
7309
|
+
0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,
|
|
7310
|
+
0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
|
|
7311
|
+
0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,
|
|
7312
|
+
0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,
|
|
7313
|
+
0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,
|
|
7314
|
+
0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,
|
|
7315
|
+
0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,
|
|
7316
|
+
0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,
|
|
7317
|
+
0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,
|
|
7318
|
+
0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,
|
|
7319
|
+
0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,
|
|
7320
|
+
0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,
|
|
7321
|
+
0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,
|
|
7322
|
+
0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,
|
|
7323
|
+
0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,
|
|
7324
|
+
0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2,
|
|
7325
|
+
];
|
|
7326
|
+
const hash = [
|
|
7327
|
+
0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,
|
|
7328
|
+
0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19,
|
|
7329
|
+
];
|
|
7330
|
+
const length = message.length;
|
|
7331
|
+
const bitLenHi = Math.floor((length * 8) / 0x100000000);
|
|
7332
|
+
const bitLenLo = (length * 8) >>> 0;
|
|
7333
|
+
const withOne = length + 1;
|
|
7334
|
+
const mod = withOne % 64;
|
|
7335
|
+
const padLen = mod <= 56 ? 56 - mod : 56 + 64 - mod;
|
|
7336
|
+
const total = length + 1 + padLen + 8;
|
|
7337
|
+
const padded = new Uint8Array(total);
|
|
7338
|
+
padded.set(message);
|
|
7339
|
+
padded[length] = 0x80;
|
|
7340
|
+
padded[total - 8] = (bitLenHi >>> 24) & 0xff;
|
|
7341
|
+
padded[total - 7] = (bitLenHi >>> 16) & 0xff;
|
|
7342
|
+
padded[total - 6] = (bitLenHi >>> 8) & 0xff;
|
|
7343
|
+
padded[total - 5] = bitLenHi & 0xff;
|
|
7344
|
+
padded[total - 4] = (bitLenLo >>> 24) & 0xff;
|
|
7345
|
+
padded[total - 3] = (bitLenLo >>> 16) & 0xff;
|
|
7346
|
+
padded[total - 2] = (bitLenLo >>> 8) & 0xff;
|
|
7347
|
+
padded[total - 1] = bitLenLo & 0xff;
|
|
7348
|
+
const words = new Array(64);
|
|
7349
|
+
for (let offset = 0; offset < total; offset += 64) {
|
|
7350
|
+
for (let i = 0; i < 16; i += 1) {
|
|
7351
|
+
const index = offset + i * 4;
|
|
7352
|
+
words[i] = ((padded[index] << 24)
|
|
7353
|
+
| (padded[index + 1] << 16)
|
|
7354
|
+
| (padded[index + 2] << 8)
|
|
7355
|
+
| padded[index + 3]) >>> 0;
|
|
7356
|
+
}
|
|
7357
|
+
for (let i = 16; i < 64; i += 1) {
|
|
7358
|
+
const s0 = rotateRight(words[i - 15], 7)
|
|
7359
|
+
^ rotateRight(words[i - 15], 18)
|
|
7360
|
+
^ (words[i - 15] >>> 3);
|
|
7361
|
+
const s1 = rotateRight(words[i - 2], 17)
|
|
7362
|
+
^ rotateRight(words[i - 2], 19)
|
|
7363
|
+
^ (words[i - 2] >>> 10);
|
|
7364
|
+
words[i] = (words[i - 16] + s0 + words[i - 7] + s1) >>> 0;
|
|
7365
|
+
}
|
|
7366
|
+
let [a, b, c, d, e, f, g, h] = hash;
|
|
7367
|
+
for (let i = 0; i < 64; i += 1) {
|
|
7368
|
+
const s1 = rotateRight(e, 6) ^ rotateRight(e, 11) ^ rotateRight(e, 25);
|
|
7369
|
+
const choice = (e & f) ^ (~e & g);
|
|
7370
|
+
const temp1 = (h + s1 + choice + constants[i] + words[i]) >>> 0;
|
|
7371
|
+
const s0 = rotateRight(a, 2) ^ rotateRight(a, 13) ^ rotateRight(a, 22);
|
|
7372
|
+
const majority = (a & b) ^ (a & c) ^ (b & c);
|
|
7373
|
+
const temp2 = (s0 + majority) >>> 0;
|
|
7374
|
+
h = g;
|
|
7375
|
+
g = f;
|
|
7376
|
+
f = e;
|
|
7377
|
+
e = (d + temp1) >>> 0;
|
|
7378
|
+
d = c;
|
|
7379
|
+
c = b;
|
|
7380
|
+
b = a;
|
|
7381
|
+
a = (temp1 + temp2) >>> 0;
|
|
7382
|
+
}
|
|
7383
|
+
hash[0] = (hash[0] + a) >>> 0;
|
|
7384
|
+
hash[1] = (hash[1] + b) >>> 0;
|
|
7385
|
+
hash[2] = (hash[2] + c) >>> 0;
|
|
7386
|
+
hash[3] = (hash[3] + d) >>> 0;
|
|
7387
|
+
hash[4] = (hash[4] + e) >>> 0;
|
|
7388
|
+
hash[5] = (hash[5] + f) >>> 0;
|
|
7389
|
+
hash[6] = (hash[6] + g) >>> 0;
|
|
7390
|
+
hash[7] = (hash[7] + h) >>> 0;
|
|
7391
|
+
}
|
|
7392
|
+
return hash.map((part) => part.toString(16).padStart(8, '0')).join('');
|
|
7393
|
+
}
|
|
7394
|
+
function rotateRight(value, amount) {
|
|
7395
|
+
return (value >>> amount) | (value << (32 - amount));
|
|
7396
|
+
}
|
|
7397
|
+
|
|
7162
7398
|
const PRAXIS_I18N_CONFIG = new InjectionToken('PRAXIS_I18N_CONFIG', {
|
|
7163
7399
|
factory: () => ({}),
|
|
7164
7400
|
});
|
|
@@ -12753,7 +12989,7 @@ class ComponentKeyService {
|
|
|
12753
12989
|
hashIfNeeded(base, readable) {
|
|
12754
12990
|
if (base.length <= 255)
|
|
12755
12991
|
return base;
|
|
12756
|
-
const hash =
|
|
12992
|
+
const hash = textSha256(base);
|
|
12757
12993
|
const rk = this.shortSegment(readable.routeKey);
|
|
12758
12994
|
const ct = this.shortSegment(readable.componentType);
|
|
12759
12995
|
const id = this.shortSegment(readable.componentId);
|
|
@@ -12778,111 +13014,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
12778
13014
|
type: Injectable,
|
|
12779
13015
|
args: [{ providedIn: 'root' }]
|
|
12780
13016
|
}] });
|
|
12781
|
-
function encodeUtf8(value) {
|
|
12782
|
-
if (typeof TextEncoder !== 'undefined') {
|
|
12783
|
-
return new TextEncoder().encode(value);
|
|
12784
|
-
}
|
|
12785
|
-
const out = new Uint8Array(value.length);
|
|
12786
|
-
for (let i = 0; i < value.length; i += 1) {
|
|
12787
|
-
out[i] = value.charCodeAt(i) & 0xff;
|
|
12788
|
-
}
|
|
12789
|
-
return out;
|
|
12790
|
-
}
|
|
12791
|
-
function sha256Hex(message) {
|
|
12792
|
-
const K = [
|
|
12793
|
-
0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,
|
|
12794
|
-
0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
|
|
12795
|
-
0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,
|
|
12796
|
-
0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,
|
|
12797
|
-
0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,
|
|
12798
|
-
0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,
|
|
12799
|
-
0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,
|
|
12800
|
-
0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,
|
|
12801
|
-
0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,
|
|
12802
|
-
0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,
|
|
12803
|
-
0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,
|
|
12804
|
-
0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,
|
|
12805
|
-
0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,
|
|
12806
|
-
0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,
|
|
12807
|
-
0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,
|
|
12808
|
-
0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2,
|
|
12809
|
-
];
|
|
12810
|
-
const H = [
|
|
12811
|
-
0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,
|
|
12812
|
-
0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19,
|
|
12813
|
-
];
|
|
12814
|
-
const length = message.length;
|
|
12815
|
-
const bitLenHi = Math.floor((length * 8) / 0x100000000);
|
|
12816
|
-
const bitLenLo = (length * 8) >>> 0;
|
|
12817
|
-
const withOne = length + 1;
|
|
12818
|
-
const mod = withOne % 64;
|
|
12819
|
-
const padLen = mod <= 56 ? 56 - mod : 56 + 64 - mod;
|
|
12820
|
-
const total = length + 1 + padLen + 8;
|
|
12821
|
-
const padded = new Uint8Array(total);
|
|
12822
|
-
padded.set(message);
|
|
12823
|
-
padded[length] = 0x80;
|
|
12824
|
-
padded[total - 8] = (bitLenHi >>> 24) & 0xff;
|
|
12825
|
-
padded[total - 7] = (bitLenHi >>> 16) & 0xff;
|
|
12826
|
-
padded[total - 6] = (bitLenHi >>> 8) & 0xff;
|
|
12827
|
-
padded[total - 5] = bitLenHi & 0xff;
|
|
12828
|
-
padded[total - 4] = (bitLenLo >>> 24) & 0xff;
|
|
12829
|
-
padded[total - 3] = (bitLenLo >>> 16) & 0xff;
|
|
12830
|
-
padded[total - 2] = (bitLenLo >>> 8) & 0xff;
|
|
12831
|
-
padded[total - 1] = bitLenLo & 0xff;
|
|
12832
|
-
const w = new Array(64);
|
|
12833
|
-
for (let offset = 0; offset < total; offset += 64) {
|
|
12834
|
-
for (let i = 0; i < 16; i += 1) {
|
|
12835
|
-
const j = offset + i * 4;
|
|
12836
|
-
w[i] =
|
|
12837
|
-
((padded[j] << 24) | (padded[j + 1] << 16) | (padded[j + 2] << 8) | padded[j + 3]) >>> 0;
|
|
12838
|
-
}
|
|
12839
|
-
for (let i = 16; i < 64; i += 1) {
|
|
12840
|
-
const s0 = rotr(w[i - 15], 7) ^ rotr(w[i - 15], 18) ^ (w[i - 15] >>> 3);
|
|
12841
|
-
const s1 = rotr(w[i - 2], 17) ^ rotr(w[i - 2], 19) ^ (w[i - 2] >>> 10);
|
|
12842
|
-
w[i] = (w[i - 16] + s0 + w[i - 7] + s1) >>> 0;
|
|
12843
|
-
}
|
|
12844
|
-
let a = H[0];
|
|
12845
|
-
let b = H[1];
|
|
12846
|
-
let c = H[2];
|
|
12847
|
-
let d = H[3];
|
|
12848
|
-
let e = H[4];
|
|
12849
|
-
let f = H[5];
|
|
12850
|
-
let g = H[6];
|
|
12851
|
-
let h = H[7];
|
|
12852
|
-
for (let i = 0; i < 64; i += 1) {
|
|
12853
|
-
const s1 = rotr(e, 6) ^ rotr(e, 11) ^ rotr(e, 25);
|
|
12854
|
-
const ch = (e & f) ^ (~e & g);
|
|
12855
|
-
const temp1 = (h + s1 + ch + K[i] + w[i]) >>> 0;
|
|
12856
|
-
const s0 = rotr(a, 2) ^ rotr(a, 13) ^ rotr(a, 22);
|
|
12857
|
-
const maj = (a & b) ^ (a & c) ^ (b & c);
|
|
12858
|
-
const temp2 = (s0 + maj) >>> 0;
|
|
12859
|
-
h = g;
|
|
12860
|
-
g = f;
|
|
12861
|
-
f = e;
|
|
12862
|
-
e = (d + temp1) >>> 0;
|
|
12863
|
-
d = c;
|
|
12864
|
-
c = b;
|
|
12865
|
-
b = a;
|
|
12866
|
-
a = (temp1 + temp2) >>> 0;
|
|
12867
|
-
}
|
|
12868
|
-
H[0] = (H[0] + a) >>> 0;
|
|
12869
|
-
H[1] = (H[1] + b) >>> 0;
|
|
12870
|
-
H[2] = (H[2] + c) >>> 0;
|
|
12871
|
-
H[3] = (H[3] + d) >>> 0;
|
|
12872
|
-
H[4] = (H[4] + e) >>> 0;
|
|
12873
|
-
H[5] = (H[5] + f) >>> 0;
|
|
12874
|
-
H[6] = (H[6] + g) >>> 0;
|
|
12875
|
-
H[7] = (H[7] + h) >>> 0;
|
|
12876
|
-
}
|
|
12877
|
-
let hex = '';
|
|
12878
|
-
for (const h of H) {
|
|
12879
|
-
hex += h.toString(16).padStart(8, '0');
|
|
12880
|
-
}
|
|
12881
|
-
return hex;
|
|
12882
|
-
}
|
|
12883
|
-
function rotr(value, amount) {
|
|
12884
|
-
return (value >>> amount) | (value << (32 - amount));
|
|
12885
|
-
}
|
|
12886
13017
|
|
|
12887
13018
|
function defaultTelemetryTransport() {
|
|
12888
13019
|
return {
|
|
@@ -14617,8 +14748,8 @@ const RELATED_RESOURCE_OUTLET_I18N_CONFIG = {
|
|
|
14617
14748
|
namespaces: {
|
|
14618
14749
|
[RELATED_RESOURCE_OUTLET_I18N_NAMESPACE]: {
|
|
14619
14750
|
'pt-BR': {
|
|
14620
|
-
'state.idle.title': '
|
|
14621
|
-
'state.idle.description': '
|
|
14751
|
+
'state.idle.title': 'Selecione um registro',
|
|
14752
|
+
'state.idle.description': 'Escolha um registro principal para carregar os dados relacionados.',
|
|
14622
14753
|
'state.resolving.title': 'Resolvendo recurso relacionado',
|
|
14623
14754
|
'state.resolving.description': 'Validando metadados e permissões da relação.',
|
|
14624
14755
|
'state.loading.title': 'Carregando recurso relacionado',
|
|
@@ -14688,8 +14819,8 @@ const RELATED_RESOURCE_OUTLET_I18N_CONFIG = {
|
|
|
14688
14819
|
'editor.boundary.description': 'Paths de recursos, vínculos com o pai, operações, filtros e a configuração da tabela filha permanecem com seus donos canônicos.',
|
|
14689
14820
|
},
|
|
14690
14821
|
'en-US': {
|
|
14691
|
-
'state.idle.title': '
|
|
14692
|
-
'state.idle.description': '
|
|
14822
|
+
'state.idle.title': 'Select a record',
|
|
14823
|
+
'state.idle.description': 'Choose a primary record to load its related data.',
|
|
14693
14824
|
'state.resolving.title': 'Resolving related resource',
|
|
14694
14825
|
'state.resolving.description': 'Validating relation metadata and permissions.',
|
|
14695
14826
|
'state.loading.title': 'Loading related resource',
|
|
@@ -14798,7 +14929,7 @@ class RelatedResourceSurfaceResolverService {
|
|
|
14798
14929
|
const parentResourceId = this.resolveParentResourceId(request, relatedResource);
|
|
14799
14930
|
if (parentResourceId == null || parentResourceId === '') {
|
|
14800
14931
|
return {
|
|
14801
|
-
state: 'not-found',
|
|
14932
|
+
state: request.parentRecord ? 'not-found' : 'idle',
|
|
14802
14933
|
reason: 'parent-resource-id-not-resolved',
|
|
14803
14934
|
surface,
|
|
14804
14935
|
relatedResource,
|
|
@@ -16300,6 +16431,7 @@ class ResourceActionOpenAdapterService {
|
|
|
16300
16431
|
payload.widget.inputs['initialValue'] = this.clone(options.initialValue);
|
|
16301
16432
|
}
|
|
16302
16433
|
this.applyInteractionPresentation(payload, action);
|
|
16434
|
+
this.applyActionPresentation(payload, action);
|
|
16303
16435
|
if (action.scope === 'ITEM') {
|
|
16304
16436
|
if (options.resourceId != null) {
|
|
16305
16437
|
payload.widget.inputs['resourceId'] = options.resourceId;
|
|
@@ -16317,6 +16449,28 @@ class ResourceActionOpenAdapterService {
|
|
|
16317
16449
|
this.applyExecutionInputs(payload, action, options);
|
|
16318
16450
|
return payload;
|
|
16319
16451
|
}
|
|
16452
|
+
applyActionPresentation(payload, action) {
|
|
16453
|
+
const submitLabel = String(action.title ?? '').trim();
|
|
16454
|
+
if (!submitLabel) {
|
|
16455
|
+
return;
|
|
16456
|
+
}
|
|
16457
|
+
const inputs = payload.widget.inputs || (payload.widget.inputs = {});
|
|
16458
|
+
inputs['actions'] = {
|
|
16459
|
+
showSaveButton: true,
|
|
16460
|
+
showCancelButton: false,
|
|
16461
|
+
showResetButton: false,
|
|
16462
|
+
submit: {
|
|
16463
|
+
id: 'submit',
|
|
16464
|
+
type: 'submit',
|
|
16465
|
+
visible: true,
|
|
16466
|
+
label: submitLabel,
|
|
16467
|
+
},
|
|
16468
|
+
};
|
|
16469
|
+
const bindingOrder = Array.isArray(payload.widget.bindingOrder)
|
|
16470
|
+
? payload.widget.bindingOrder.filter((input) => input !== 'actions')
|
|
16471
|
+
: [];
|
|
16472
|
+
payload.widget.bindingOrder = [...bindingOrder, 'actions'];
|
|
16473
|
+
}
|
|
16320
16474
|
applyInteractionPresentation(payload, action) {
|
|
16321
16475
|
const requiresFormConfirmation = action.execution?.interaction.mode === 'FORM'
|
|
16322
16476
|
&& action.execution.interaction.confirmationRequired;
|
|
@@ -16915,6 +17069,7 @@ class SurfaceOpenMaterializerService {
|
|
|
16915
17069
|
return Object.fromEntries(Object.entries(inputs).filter(([key]) => supported.has(key)));
|
|
16916
17070
|
}
|
|
16917
17071
|
buildLocalTableConfig(fields, data, payload, childOperations = this.resolveRelatedChildOperations(payload)) {
|
|
17072
|
+
const previousConfig = this.objectRecord(payload.widget?.inputs?.['config']);
|
|
16918
17073
|
const schemaColumns = fields
|
|
16919
17074
|
.filter((field) => !field.hidden && !field.tableHidden && !!field.name)
|
|
16920
17075
|
.map((field) => ({
|
|
@@ -16924,11 +17079,11 @@ class SurfaceOpenMaterializerService {
|
|
|
16924
17079
|
sortable: field.sortable !== false,
|
|
16925
17080
|
type: field.type,
|
|
16926
17081
|
}));
|
|
17082
|
+
const projectedSchemaColumns = this.materializeSchemaColumnProjection(schemaColumns, previousConfig['columnProjection']);
|
|
16927
17083
|
const fallbackColumns = schemaColumns.length
|
|
16928
17084
|
? []
|
|
16929
17085
|
: this.inferColumnsFromData(data);
|
|
16930
17086
|
const relatedActions = this.buildRelatedCrudActions(payload, childOperations);
|
|
16931
|
-
const previousConfig = this.objectRecord(payload.widget?.inputs?.['config']);
|
|
16932
17087
|
const previousToolbar = this.objectRecord(previousConfig['toolbar']);
|
|
16933
17088
|
const relatedActionIds = new Set(relatedActions.map((action) => String(action['id'])));
|
|
16934
17089
|
const previousToolbarActions = Array.isArray(previousToolbar['actions'])
|
|
@@ -16951,11 +17106,13 @@ class SurfaceOpenMaterializerService {
|
|
|
16951
17106
|
const previousColumns = Array.isArray(previousConfig['columns'])
|
|
16952
17107
|
? previousConfig['columns']
|
|
16953
17108
|
: [];
|
|
17109
|
+
const materializedBaseConfig = { ...previousConfig };
|
|
17110
|
+
delete materializedBaseConfig['columnProjection'];
|
|
16954
17111
|
const generatedConfig = {
|
|
16955
17112
|
columns: previousColumns.length
|
|
16956
17113
|
? previousColumns
|
|
16957
|
-
:
|
|
16958
|
-
?
|
|
17114
|
+
: projectedSchemaColumns.length
|
|
17115
|
+
? projectedSchemaColumns
|
|
16959
17116
|
: fallbackColumns,
|
|
16960
17117
|
toolbar: toolbarActions.length
|
|
16961
17118
|
? {
|
|
@@ -16982,7 +17139,7 @@ class SurfaceOpenMaterializerService {
|
|
|
16982
17139
|
},
|
|
16983
17140
|
};
|
|
16984
17141
|
return {
|
|
16985
|
-
...
|
|
17142
|
+
...materializedBaseConfig,
|
|
16986
17143
|
...generatedConfig,
|
|
16987
17144
|
behavior: {
|
|
16988
17145
|
...generatedConfig.behavior,
|
|
@@ -16999,6 +17156,36 @@ class SurfaceOpenMaterializerService {
|
|
|
16999
17156
|
},
|
|
17000
17157
|
};
|
|
17001
17158
|
}
|
|
17159
|
+
/**
|
|
17160
|
+
* Consumes the remote schema projection before an item surface becomes a local-data table.
|
|
17161
|
+
* The transient materialized table must not retain `columnProjection`: that contract belongs to
|
|
17162
|
+
* remote schema resolution and has already been reduced here to concrete columns.
|
|
17163
|
+
*/
|
|
17164
|
+
materializeSchemaColumnProjection(schemaColumns, rawProjection) {
|
|
17165
|
+
const projection = this.objectRecord(rawProjection);
|
|
17166
|
+
if (projection['source'] !== 'schema') {
|
|
17167
|
+
return schemaColumns;
|
|
17168
|
+
}
|
|
17169
|
+
const byField = new Map(schemaColumns.map((column) => [String(column['field'] || ''), column]));
|
|
17170
|
+
const include = Array.isArray(projection['include'])
|
|
17171
|
+
? projection['include'].filter((field) => (typeof field === 'string' && byField.has(field)))
|
|
17172
|
+
: schemaColumns.map((column) => String(column['field'] || ''));
|
|
17173
|
+
const overrides = this.objectRecord(projection['overrides']);
|
|
17174
|
+
const projected = include.map((field) => ({
|
|
17175
|
+
...byField.get(field),
|
|
17176
|
+
...this.objectRecord(overrides[field]),
|
|
17177
|
+
field,
|
|
17178
|
+
}));
|
|
17179
|
+
const additions = Array.isArray(projection['additions'])
|
|
17180
|
+
? projection['additions']
|
|
17181
|
+
.filter((column) => {
|
|
17182
|
+
const candidate = this.objectRecord(column);
|
|
17183
|
+
return typeof candidate['field'] === 'string' && !!candidate['field'];
|
|
17184
|
+
})
|
|
17185
|
+
.map((column) => ({ ...this.objectRecord(column) }))
|
|
17186
|
+
: [];
|
|
17187
|
+
return [...projected, ...additions];
|
|
17188
|
+
}
|
|
17002
17189
|
objectRecord(value) {
|
|
17003
17190
|
return value && typeof value === 'object' && !Array.isArray(value)
|
|
17004
17191
|
? value
|
|
@@ -25472,7 +25659,8 @@ function groupFields(fields) {
|
|
|
25472
25659
|
}
|
|
25473
25660
|
function createSection(groupKey, groupFields, sectionIndex, policy, options) {
|
|
25474
25661
|
const title = groupKey === 'default'
|
|
25475
|
-
? options.defaultSectionTitle
|
|
25662
|
+
? options.defaultSectionTitle
|
|
25663
|
+
?? (policy.preset === 'groupedCommand' ? '' : 'Informacoes')
|
|
25476
25664
|
: groupKey;
|
|
25477
25665
|
const sectionId = stableSectionId(groupKey);
|
|
25478
25666
|
const presentationRole = resolvePresentationRole(groupKey, groupFields, options.presentationRoleMap);
|
|
@@ -32186,6 +32374,7 @@ const MUTABLE_INITIAL_BINDING_INPUTS = new Set(['enableCustomization']);
|
|
|
32186
32374
|
class DynamicWidgetLoaderDirective {
|
|
32187
32375
|
vcRef = inject(ViewContainerRef);
|
|
32188
32376
|
registry = inject(ComponentMetadataRegistry);
|
|
32377
|
+
injector = inject(Injector);
|
|
32189
32378
|
widget;
|
|
32190
32379
|
ownerWidgetKey = null;
|
|
32191
32380
|
context = null;
|
|
@@ -32195,12 +32384,16 @@ class DynamicWidgetLoaderDirective {
|
|
|
32195
32384
|
autoWireOutputs = false;
|
|
32196
32385
|
widgetEvent = new EventEmitter();
|
|
32197
32386
|
widgetDiagnostic = new EventEmitter();
|
|
32387
|
+
/** Transient actions contributed by the live child component to its shell. */
|
|
32388
|
+
contributedShellActions = signal([], ...(ngDevMode ? [{ debugName: "contributedShellActions" }] : /* istanbul ignore next */ []));
|
|
32198
32389
|
compRef;
|
|
32199
32390
|
currentId;
|
|
32200
32391
|
currentUsesInitialBindings = false;
|
|
32201
32392
|
currentInitialBindingSignature = null;
|
|
32202
32393
|
boundInputValues = {};
|
|
32203
32394
|
outputSubs = [];
|
|
32395
|
+
shellActionContributionEffect;
|
|
32396
|
+
shellActionContributor;
|
|
32204
32397
|
destroyed = false;
|
|
32205
32398
|
/** Dispatch a shell action to the inner widget instance when supported. */
|
|
32206
32399
|
dispatchAction(action) {
|
|
@@ -32371,6 +32564,7 @@ class DynamicWidgetLoaderDirective {
|
|
|
32371
32564
|
this.vcRef.clear();
|
|
32372
32565
|
try {
|
|
32373
32566
|
this.compRef = this.vcRef.createComponent(cmp);
|
|
32567
|
+
this.bindShellActionContributor(this.compRef.instance);
|
|
32374
32568
|
if (useInitialBindings) {
|
|
32375
32569
|
this.bindInputs(this.compRef, id, inputs, bindingOrder, metaForInputs);
|
|
32376
32570
|
}
|
|
@@ -32388,6 +32582,7 @@ class DynamicWidgetLoaderDirective {
|
|
|
32388
32582
|
}
|
|
32389
32583
|
}
|
|
32390
32584
|
destroyCurrent() {
|
|
32585
|
+
this.releaseShellActionContributor();
|
|
32391
32586
|
this.outputSubs.forEach((u) => u());
|
|
32392
32587
|
this.outputSubs = [];
|
|
32393
32588
|
if (this.compRef) {
|
|
@@ -32400,6 +32595,27 @@ class DynamicWidgetLoaderDirective {
|
|
|
32400
32595
|
}
|
|
32401
32596
|
this.vcRef.clear();
|
|
32402
32597
|
}
|
|
32598
|
+
bindShellActionContributor(instance) {
|
|
32599
|
+
const candidate = instance;
|
|
32600
|
+
if (!candidate || typeof candidate.widgetShellActions !== 'function') {
|
|
32601
|
+
this.contributedShellActions.set([]);
|
|
32602
|
+
return;
|
|
32603
|
+
}
|
|
32604
|
+
const contributor = candidate;
|
|
32605
|
+
this.shellActionContributor = contributor;
|
|
32606
|
+
contributor.setWidgetShellActionHostActive?.(true);
|
|
32607
|
+
this.shellActionContributionEffect = effect(() => {
|
|
32608
|
+
const actions = contributor.widgetShellActions();
|
|
32609
|
+
this.contributedShellActions.set(Array.isArray(actions) ? actions.map((action) => ({ ...action })) : []);
|
|
32610
|
+
}, { ...(ngDevMode ? { debugName: "shellActionContributionEffect" } : /* istanbul ignore next */ {}), injector: this.injector });
|
|
32611
|
+
}
|
|
32612
|
+
releaseShellActionContributor() {
|
|
32613
|
+
this.shellActionContributionEffect?.destroy();
|
|
32614
|
+
this.shellActionContributionEffect = undefined;
|
|
32615
|
+
this.shellActionContributor?.setWidgetShellActionHostActive?.(false);
|
|
32616
|
+
this.shellActionContributor = undefined;
|
|
32617
|
+
this.contributedShellActions.set([]);
|
|
32618
|
+
}
|
|
32403
32619
|
cloneValue(value) {
|
|
32404
32620
|
if (value == null || typeof value !== 'object') {
|
|
32405
32621
|
return value;
|
|
@@ -33131,7 +33347,7 @@ class WidgetShellComponent {
|
|
|
33131
33347
|
action = new EventEmitter();
|
|
33132
33348
|
dragSurfacePointerDown = new EventEmitter();
|
|
33133
33349
|
dragSurfaceKeydown = new EventEmitter();
|
|
33134
|
-
loader;
|
|
33350
|
+
loader = contentChild(DynamicWidgetLoaderDirective, ...(ngDevMode ? [{ debugName: "loader" }] : /* istanbul ignore next */ []));
|
|
33135
33351
|
shellText(value, fallback = '') {
|
|
33136
33352
|
return this.i18n.resolve(value, fallback);
|
|
33137
33353
|
}
|
|
@@ -33180,7 +33396,7 @@ class WidgetShellComponent {
|
|
|
33180
33396
|
this.windowActions.length);
|
|
33181
33397
|
}
|
|
33182
33398
|
get headerActions() {
|
|
33183
|
-
return
|
|
33399
|
+
return this.mergedActions.filter((a) => this.isVisible(a) && (a.placement || 'header') === 'header');
|
|
33184
33400
|
}
|
|
33185
33401
|
get visibleHeaderActions() {
|
|
33186
33402
|
const max = this.maxHeaderActions;
|
|
@@ -33194,7 +33410,7 @@ class WidgetShellComponent {
|
|
|
33194
33410
|
return 3;
|
|
33195
33411
|
}
|
|
33196
33412
|
get windowActions() {
|
|
33197
|
-
const custom =
|
|
33413
|
+
const custom = this.mergedActions.filter((a) => this.isVisible(a) && (a.placement || 'header') === 'window');
|
|
33198
33414
|
const builtins = this.buildWindowActions(custom);
|
|
33199
33415
|
return [...builtins, ...custom];
|
|
33200
33416
|
}
|
|
@@ -33221,8 +33437,34 @@ class WidgetShellComponent {
|
|
|
33221
33437
|
pressed: action.pressed,
|
|
33222
33438
|
action,
|
|
33223
33439
|
};
|
|
33224
|
-
this.loader
|
|
33225
|
-
|
|
33440
|
+
const loader = this.loader();
|
|
33441
|
+
const runtimeContributed = loader
|
|
33442
|
+
?.contributedShellActions()
|
|
33443
|
+
.some((candidate) => candidate.id === action.id) ?? false;
|
|
33444
|
+
const handledByWidget = loader?.dispatchAction(event) ?? false;
|
|
33445
|
+
// Runtime-contributed controls are presentation affordances owned by the
|
|
33446
|
+
// live widget. Once handled there, they must not escape as authored page
|
|
33447
|
+
// actions or enter the composition event/persistence pipeline.
|
|
33448
|
+
if (!runtimeContributed || !handledByWidget) {
|
|
33449
|
+
this.action.emit(event);
|
|
33450
|
+
}
|
|
33451
|
+
}
|
|
33452
|
+
get mergedActions() {
|
|
33453
|
+
const authored = this.shell?.actions || [];
|
|
33454
|
+
const contributed = this.loader()?.contributedShellActions() || [];
|
|
33455
|
+
if (!contributed.length) {
|
|
33456
|
+
return authored;
|
|
33457
|
+
}
|
|
33458
|
+
const contributedById = new Map(contributed.map((action) => [action.id, action]));
|
|
33459
|
+
const merged = authored.map((action) => {
|
|
33460
|
+
const runtimeAction = contributedById.get(action.id);
|
|
33461
|
+
if (!runtimeAction) {
|
|
33462
|
+
return action;
|
|
33463
|
+
}
|
|
33464
|
+
contributedById.delete(action.id);
|
|
33465
|
+
return { ...action, ...runtimeAction };
|
|
33466
|
+
});
|
|
33467
|
+
return [...merged, ...contributedById.values()];
|
|
33226
33468
|
}
|
|
33227
33469
|
onHeaderPointerDown(event) {
|
|
33228
33470
|
if (!this.dragSurfaceInteractive ||
|
|
@@ -33356,7 +33598,7 @@ class WidgetShellComponent {
|
|
|
33356
33598
|
return this.i18n.t(key, undefined, fallback, WIDGET_SHELL_I18N_NAMESPACE);
|
|
33357
33599
|
}
|
|
33358
33600
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: WidgetShellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
33359
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: WidgetShellComponent, isStandalone: true, selector: "praxis-widget-shell", inputs: { shell: "shell", context: "context", dragSurfaceEnabled: "dragSurfaceEnabled", dragSurfaceLabel: "dragSurfaceLabel" }, outputs: { action: "action", dragSurfacePointerDown: "dragSurfacePointerDown", dragSurfaceKeydown: "dragSurfaceKeydown" }, host: { properties: { "class.pdx-widget-shell-collapsed": "this.hostCollapsed" } }, providers: [providePraxisI18nConfig(WIDGET_SHELL_I18N_CONFIG)], queries: [{ propertyName: "loader", first: true, predicate: DynamicWidgetLoaderDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
33601
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.14", type: WidgetShellComponent, isStandalone: true, selector: "praxis-widget-shell", inputs: { shell: "shell", context: "context", dragSurfaceEnabled: "dragSurfaceEnabled", dragSurfaceLabel: "dragSurfaceLabel" }, outputs: { action: "action", dragSurfacePointerDown: "dragSurfacePointerDown", dragSurfaceKeydown: "dragSurfaceKeydown" }, host: { properties: { "class.pdx-widget-shell-collapsed": "this.hostCollapsed" } }, providers: [providePraxisI18nConfig(WIDGET_SHELL_I18N_CONFIG)], queries: [{ propertyName: "loader", first: true, predicate: DynamicWidgetLoaderDirective, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
33360
33602
|
<section
|
|
33361
33603
|
class="pdx-shell"
|
|
33362
33604
|
[class.no-shell]="!shellEnabled"
|
|
@@ -33416,7 +33658,7 @@ class WidgetShellComponent {
|
|
|
33416
33658
|
</div>
|
|
33417
33659
|
</div>
|
|
33418
33660
|
<div class="pdx-shell-actions">
|
|
33419
|
-
@if (!expanded
|
|
33661
|
+
@if (!collapsed || expanded || fullscreen) {
|
|
33420
33662
|
@for (action of visibleHeaderActions; track action.id) {
|
|
33421
33663
|
<ng-container>
|
|
33422
33664
|
@if (action.variant !== 'icon') {
|
|
@@ -33437,6 +33679,10 @@ class WidgetShellComponent {
|
|
|
33437
33679
|
[attr.aria-pressed]="
|
|
33438
33680
|
action.pressed == null ? null : action.pressed
|
|
33439
33681
|
"
|
|
33682
|
+
[attr.aria-controls]="action.ariaControls || null"
|
|
33683
|
+
[attr.aria-expanded]="
|
|
33684
|
+
action.ariaExpanded == null ? null : action.ariaExpanded
|
|
33685
|
+
"
|
|
33440
33686
|
(click)="onAction(action, $event)"
|
|
33441
33687
|
>
|
|
33442
33688
|
@if (displayActionIcon(action); as actionIcon) {
|
|
@@ -33464,6 +33710,10 @@ class WidgetShellComponent {
|
|
|
33464
33710
|
actionText(action.tooltip, action.id)
|
|
33465
33711
|
)
|
|
33466
33712
|
"
|
|
33713
|
+
[attr.aria-controls]="action.ariaControls || null"
|
|
33714
|
+
[attr.aria-expanded]="
|
|
33715
|
+
action.ariaExpanded == null ? null : action.ariaExpanded
|
|
33716
|
+
"
|
|
33467
33717
|
type="button"
|
|
33468
33718
|
(click)="onAction(action, $event)"
|
|
33469
33719
|
></button>
|
|
@@ -33518,6 +33768,10 @@ class WidgetShellComponent {
|
|
|
33518
33768
|
[attr.aria-pressed]="
|
|
33519
33769
|
action.pressed == null ? null : action.pressed
|
|
33520
33770
|
"
|
|
33771
|
+
[attr.aria-controls]="action.ariaControls || null"
|
|
33772
|
+
[attr.aria-expanded]="
|
|
33773
|
+
action.ariaExpanded == null ? null : action.ariaExpanded
|
|
33774
|
+
"
|
|
33521
33775
|
(click)="onAction(action, $event)"
|
|
33522
33776
|
>
|
|
33523
33777
|
@if (displayActionIcon(action); as actionIcon) {
|
|
@@ -33608,7 +33862,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
33608
33862
|
</div>
|
|
33609
33863
|
</div>
|
|
33610
33864
|
<div class="pdx-shell-actions">
|
|
33611
|
-
@if (!expanded
|
|
33865
|
+
@if (!collapsed || expanded || fullscreen) {
|
|
33612
33866
|
@for (action of visibleHeaderActions; track action.id) {
|
|
33613
33867
|
<ng-container>
|
|
33614
33868
|
@if (action.variant !== 'icon') {
|
|
@@ -33629,6 +33883,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
33629
33883
|
[attr.aria-pressed]="
|
|
33630
33884
|
action.pressed == null ? null : action.pressed
|
|
33631
33885
|
"
|
|
33886
|
+
[attr.aria-controls]="action.ariaControls || null"
|
|
33887
|
+
[attr.aria-expanded]="
|
|
33888
|
+
action.ariaExpanded == null ? null : action.ariaExpanded
|
|
33889
|
+
"
|
|
33632
33890
|
(click)="onAction(action, $event)"
|
|
33633
33891
|
>
|
|
33634
33892
|
@if (displayActionIcon(action); as actionIcon) {
|
|
@@ -33656,6 +33914,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
33656
33914
|
actionText(action.tooltip, action.id)
|
|
33657
33915
|
)
|
|
33658
33916
|
"
|
|
33917
|
+
[attr.aria-controls]="action.ariaControls || null"
|
|
33918
|
+
[attr.aria-expanded]="
|
|
33919
|
+
action.ariaExpanded == null ? null : action.ariaExpanded
|
|
33920
|
+
"
|
|
33659
33921
|
type="button"
|
|
33660
33922
|
(click)="onAction(action, $event)"
|
|
33661
33923
|
></button>
|
|
@@ -33710,6 +33972,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
33710
33972
|
[attr.aria-pressed]="
|
|
33711
33973
|
action.pressed == null ? null : action.pressed
|
|
33712
33974
|
"
|
|
33975
|
+
[attr.aria-controls]="action.ariaControls || null"
|
|
33976
|
+
[attr.aria-expanded]="
|
|
33977
|
+
action.ariaExpanded == null ? null : action.ariaExpanded
|
|
33978
|
+
"
|
|
33713
33979
|
(click)="onAction(action, $event)"
|
|
33714
33980
|
>
|
|
33715
33981
|
@if (displayActionIcon(action); as actionIcon) {
|
|
@@ -33746,10 +34012,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
33746
34012
|
type: Output
|
|
33747
34013
|
}], dragSurfaceKeydown: [{
|
|
33748
34014
|
type: Output
|
|
33749
|
-
}], loader: [{
|
|
33750
|
-
type: ContentChild,
|
|
33751
|
-
args: [DynamicWidgetLoaderDirective]
|
|
33752
|
-
}] } });
|
|
34015
|
+
}], loader: [{ type: i0.ContentChild, args: [i0.forwardRef(() => DynamicWidgetLoaderDirective), { isSignal: true }] }] } });
|
|
33753
34016
|
|
|
33754
34017
|
class PraxisResourceIdentityComponent {
|
|
33755
34018
|
identity = null;
|
|
@@ -44171,6 +44434,7 @@ class PraxisRelatedResourceOutletComponent {
|
|
|
44171
44434
|
const surfaceId = this.surfaceId();
|
|
44172
44435
|
const catalog = this.surfaceCatalog();
|
|
44173
44436
|
const discoverySource = this.discoverySource() || this.parentLinks();
|
|
44437
|
+
const parentRecord = this.parentRecord();
|
|
44174
44438
|
const parentResourcePath = this.parentResourcePath();
|
|
44175
44439
|
const parentResourceId = this.parentResourceId();
|
|
44176
44440
|
const apiEndpointKey = this.apiEndpointKey();
|
|
@@ -44181,6 +44445,14 @@ class PraxisRelatedResourceOutletComponent {
|
|
|
44181
44445
|
this.resetDiscoveryState();
|
|
44182
44446
|
return;
|
|
44183
44447
|
}
|
|
44448
|
+
if (this.trim(parentResourcePath)
|
|
44449
|
+
&& (parentResourceId == null || parentResourceId === '')
|
|
44450
|
+
&& !parentRecord) {
|
|
44451
|
+
this.discoveredSurface.set(null);
|
|
44452
|
+
this.discoveryState.set('idle');
|
|
44453
|
+
this.discoveryStateReason.set('parent-resource-id-not-resolved');
|
|
44454
|
+
return;
|
|
44455
|
+
}
|
|
44184
44456
|
if (catalog) {
|
|
44185
44457
|
this.applyCatalogSurface(surfaceId, catalog);
|
|
44186
44458
|
return;
|
|
@@ -44229,6 +44501,14 @@ class PraxisRelatedResourceOutletComponent {
|
|
|
44229
44501
|
const resolution = this.resolution();
|
|
44230
44502
|
const payload = resolution.state === 'ready' ? resolution.payload : null;
|
|
44231
44503
|
const requestKey = this.buildMaterializationRequestKey(resolution);
|
|
44504
|
+
// Composition state updates can re-create structurally equal input objects.
|
|
44505
|
+
// Keep the mounted child widget when its effective materialization contract
|
|
44506
|
+
// did not change; destroying it here also destroys transient table state such
|
|
44507
|
+
// as the selection that may have triggered the composition update itself.
|
|
44508
|
+
if (requestKey === this.materializationRequestKey
|
|
44509
|
+
&& this.materializedPayload() != null) {
|
|
44510
|
+
return;
|
|
44511
|
+
}
|
|
44232
44512
|
this.materializationRequestKey = requestKey;
|
|
44233
44513
|
this.materializedPayload.set(null);
|
|
44234
44514
|
if (!payload) {
|
|
@@ -44357,10 +44637,7 @@ class PraxisRelatedResourceOutletComponent {
|
|
|
44357
44637
|
buildMaterializationRequestKey(resolution) {
|
|
44358
44638
|
return JSON.stringify({
|
|
44359
44639
|
state: resolution.state,
|
|
44360
|
-
|
|
44361
|
-
parentResourceId: resolution.parentResourceId ?? null,
|
|
44362
|
-
childResourcePath: resolution.childResourcePath ?? null,
|
|
44363
|
-
queryContext: resolution.queryContext ?? null,
|
|
44640
|
+
payload: resolution.payload ?? null,
|
|
44364
44641
|
mode: this.mode(),
|
|
44365
44642
|
});
|
|
44366
44643
|
}
|
|
@@ -46119,7 +46396,7 @@ class EmptyStateCardComponent {
|
|
|
46119
46396
|
</div>
|
|
46120
46397
|
</mat-card-content>
|
|
46121
46398
|
</mat-card>
|
|
46122
|
-
`, isInline: true, styles: [".empty-card{display:block;margin:var(--pdx-empty-state-margin, 12px);border-color:var(--pdx-empty-state-border-color, var(--md-sys-color-outline-variant));border-radius:var(--pdx-empty-state-radius, 8px);background:var(--pdx-empty-state-bg, var(--md-sys-color-surface));color:var(--pdx-empty-state-fg, var(--md-sys-color-on-surface));--empty-icon-color: var(--pdx-empty-state-icon-color, var(--md-sys-color-on-surface-variant))}.empty-card.empty-inline,.empty-card.variant-inline{margin:var(--pdx-empty-state-inline-margin, 8px 0)}.empty-card.variant-panel{margin:var(--pdx-empty-state-panel-margin, 0)}.empty-card.variant-transparent{margin:var(--pdx-empty-state-transparent-margin, 0);border-color:transparent;background:transparent;box-shadow:none}.content{display:flex;align-items:center;gap:var(--pdx-empty-state-gap, 12px)}.align-center .content{flex-direction:column;justify-content:center;text-align:center}.icon{display:inline-grid;place-items:center;flex:0 0 auto;font-size:var(--pdx-empty-state-icon-size, 32px);width:var(--pdx-empty-state-icon-box-size, 32px);height:var(--pdx-empty-state-icon-box-size, 32px);color:var(--empty-icon-color)}.icon-circle .icon,.icon-soft .icon{width:var(--pdx-empty-state-icon-container-size, 44px);height:var(--pdx-empty-state-icon-container-size, 44px);border-radius:var(--pdx-empty-state-icon-container-radius, 999px);font-size:var(--pdx-empty-state-icon-container-icon-size, 22px)}.icon-circle .icon{border:1px solid var(--pdx-empty-state-icon-container-border-color, color-mix(in srgb, var(--empty-icon-color) 24%, transparent));background:var(--pdx-empty-state-icon-container-bg, color-mix(in srgb, var(--empty-icon-color) 10%, transparent))}.icon-soft .icon{background:var(--pdx-empty-state-icon-container-bg, color-mix(in srgb, var(--empty-icon-color) 10%, transparent))}.texts{display:grid;gap:var(--pdx-empty-state-text-gap, 4px)}.align-center .texts{justify-items:center}.title{margin:0;font-family:var(--pdx-empty-state-title-font-family, var(--md-sys-typescale-title-small-font-family, inherit));font-size:var(--pdx-empty-state-title-font-size, 16px);font-weight:var(--pdx-empty-state-title-font-weight, 600);line-height:var(--pdx-empty-state-title-line-height, 1.3);color:var(--pdx-empty-state-title-color, var(--md-sys-color-on-surface))}.desc{margin:0;max-width:var(--pdx-empty-state-description-max-width, none);font-family:var(--pdx-empty-state-description-font-family, var(--md-sys-typescale-body-medium-font-family, inherit));font-size:var(--pdx-empty-state-description-font-size, inherit);line-height:var(--pdx-empty-state-description-line-height, 1.4);color:var(--pdx-empty-state-description-color, var(--md-sys-color-on-surface-variant))}.actions{display:flex;justify-content:var(--pdx-empty-state-actions-justify, flex-start);gap:var(--pdx-empty-state-actions-gap, 8px);margin-top:var(--pdx-empty-state-actions-margin-top, 12px);flex-wrap:wrap}.actions .mat-mdc-button-base{width:fit-content;max-width:100%;height:var(--pdx-empty-state-action-height, var(--praxis-action-control-height, 40px));min-height:var(--pdx-empty-state-action-height, var(--praxis-action-control-height, 40px));padding-inline:var(--pdx-empty-state-action-padding-inline, var(--praxis-action-control-padding-inline, 12px));border-radius:var(--pdx-empty-state-action-radius, var(--praxis-action-control-radius, 8px));gap:var(--pdx-empty-state-action-gap, var(--praxis-action-control-gap, 8px));font-size:var(--pdx-empty-state-action-font-size, var(--praxis-action-control-font-size, .875rem));font-weight:var(--pdx-empty-state-action-font-weight, var(--praxis-action-control-font-weight, 500));line-height:var(--pdx-empty-state-action-line-height, var(--praxis-action-control-line-height, 1.25rem));white-space:nowrap}.actions .mat-mdc-button-base mat-icon{width:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));height:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));margin:0;font-size:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));line-height:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px))}.actions .mat-mdc-button-base:focus-visible{outline:2px solid var(--pdx-empty-state-action-focus-ring, var(--praxis-action-control-focus-ring, var(--md-sys-color-primary)));outline-offset:2px}.actions .mat-mdc-button-base:disabled{opacity:var(--pdx-empty-state-action-disabled-opacity, var(--praxis-action-control-disabled-opacity, .62))}.align-center .actions{justify-content:var(--pdx-empty-state-actions-justify, center)}.density-compact .content{gap:var(--pdx-empty-state-compact-gap, 8px)}.density-compact .actions .mat-mdc-button-base{height:var(--pdx-empty-state-action-height, var(--praxis-action-control-compact-height, 36px));min-height:var(--pdx-empty-state-action-height, var(--praxis-action-control-compact-height, 36px))}.density-compact .icon{font-size:var(--pdx-empty-state-compact-icon-size, 24px);width:var(--pdx-empty-state-compact-icon-box-size, 24px);height:var(--pdx-empty-state-compact-icon-box-size, 24px)}.density-compact.icon-circle .icon,.density-compact.icon-soft .icon{width:var(--pdx-empty-state-compact-icon-container-size, 36px);height:var(--pdx-empty-state-compact-icon-container-size, 36px);font-size:var(--pdx-empty-state-compact-icon-container-icon-size, 20px)}.empty-card.tone-primary{--empty-icon-color: var(--md-sys-color-primary)}.empty-card.tone-secondary{--empty-icon-color: var(--md-sys-color-secondary)}\n"], dependencies: [{ kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
|
|
46399
|
+
`, isInline: true, styles: [".empty-card{display:block;margin:var(--pdx-empty-state-margin, 12px);border-color:var(--pdx-empty-state-border-color, var(--md-sys-color-outline-variant));border-radius:var(--pdx-empty-state-radius, 8px);background:var(--pdx-empty-state-bg, var(--md-sys-color-surface));color:var(--pdx-empty-state-fg, var(--md-sys-color-on-surface));--empty-icon-color: var(--pdx-empty-state-icon-color, var(--md-sys-color-on-surface-variant))}.empty-card.empty-inline,.empty-card.variant-inline{margin:var(--pdx-empty-state-inline-margin, 8px 0)}.empty-card.variant-panel{margin:var(--pdx-empty-state-panel-margin, 0)}.empty-card.variant-transparent{margin:var(--pdx-empty-state-transparent-margin, 0);border-color:transparent;background:transparent;--mat-card-elevated-container-elevation: none;--mat-card-outlined-container-elevation: none;box-shadow:none!important}.content{display:flex;align-items:center;gap:var(--pdx-empty-state-gap, 12px)}.align-center .content{flex-direction:column;justify-content:center;text-align:center}.icon{display:inline-grid;place-items:center;flex:0 0 auto;font-size:var(--pdx-empty-state-icon-size, 32px);width:var(--pdx-empty-state-icon-box-size, 32px);height:var(--pdx-empty-state-icon-box-size, 32px);color:var(--empty-icon-color)}.icon-circle .icon,.icon-soft .icon{width:var(--pdx-empty-state-icon-container-size, 44px);height:var(--pdx-empty-state-icon-container-size, 44px);border-radius:var(--pdx-empty-state-icon-container-radius, 999px);font-size:var(--pdx-empty-state-icon-container-icon-size, 22px)}.icon-circle .icon{border:1px solid var(--pdx-empty-state-icon-container-border-color, color-mix(in srgb, var(--empty-icon-color) 24%, transparent));background:var(--pdx-empty-state-icon-container-bg, color-mix(in srgb, var(--empty-icon-color) 10%, transparent))}.icon-soft .icon{background:var(--pdx-empty-state-icon-container-bg, color-mix(in srgb, var(--empty-icon-color) 10%, transparent))}.texts{display:grid;gap:var(--pdx-empty-state-text-gap, 4px)}.align-center .texts{justify-items:center}.title{margin:0;font-family:var(--pdx-empty-state-title-font-family, var(--md-sys-typescale-title-small-font-family, inherit));font-size:var(--pdx-empty-state-title-font-size, 16px);font-weight:var(--pdx-empty-state-title-font-weight, 600);line-height:var(--pdx-empty-state-title-line-height, 1.3);color:var(--pdx-empty-state-title-color, var(--md-sys-color-on-surface))}.desc{margin:0;max-width:var(--pdx-empty-state-description-max-width, none);font-family:var(--pdx-empty-state-description-font-family, var(--md-sys-typescale-body-medium-font-family, inherit));font-size:var(--pdx-empty-state-description-font-size, inherit);line-height:var(--pdx-empty-state-description-line-height, 1.4);color:var(--pdx-empty-state-description-color, var(--md-sys-color-on-surface-variant))}.actions{display:flex;justify-content:var(--pdx-empty-state-actions-justify, flex-start);gap:var(--pdx-empty-state-actions-gap, 8px);margin-top:var(--pdx-empty-state-actions-margin-top, 12px);flex-wrap:wrap}.actions .mat-mdc-button-base{width:fit-content;max-width:100%;height:var(--pdx-empty-state-action-height, var(--praxis-action-control-height, 40px));min-height:var(--pdx-empty-state-action-height, var(--praxis-action-control-height, 40px));padding-inline:var(--pdx-empty-state-action-padding-inline, var(--praxis-action-control-padding-inline, 12px));border-radius:var(--pdx-empty-state-action-radius, var(--praxis-action-control-radius, 8px));gap:var(--pdx-empty-state-action-gap, var(--praxis-action-control-gap, 8px));font-size:var(--pdx-empty-state-action-font-size, var(--praxis-action-control-font-size, .875rem));font-weight:var(--pdx-empty-state-action-font-weight, var(--praxis-action-control-font-weight, 500));line-height:var(--pdx-empty-state-action-line-height, var(--praxis-action-control-line-height, 1.25rem));white-space:nowrap}.actions .mat-mdc-button-base mat-icon{width:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));height:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));margin:0;font-size:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));line-height:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px))}.actions .mat-mdc-button-base:focus-visible{outline:2px solid var(--pdx-empty-state-action-focus-ring, var(--praxis-action-control-focus-ring, var(--md-sys-color-primary)));outline-offset:2px}.actions .mat-mdc-button-base:disabled{opacity:var(--pdx-empty-state-action-disabled-opacity, var(--praxis-action-control-disabled-opacity, .62))}.align-center .actions{justify-content:var(--pdx-empty-state-actions-justify, center)}.density-compact .content{gap:var(--pdx-empty-state-compact-gap, 8px)}.density-compact .actions .mat-mdc-button-base{height:var(--pdx-empty-state-action-height, var(--praxis-action-control-compact-height, 36px));min-height:var(--pdx-empty-state-action-height, var(--praxis-action-control-compact-height, 36px))}.density-compact .icon{font-size:var(--pdx-empty-state-compact-icon-size, 24px);width:var(--pdx-empty-state-compact-icon-box-size, 24px);height:var(--pdx-empty-state-compact-icon-box-size, 24px)}.density-compact.icon-circle .icon,.density-compact.icon-soft .icon{width:var(--pdx-empty-state-compact-icon-container-size, 36px);height:var(--pdx-empty-state-compact-icon-container-size, 36px);font-size:var(--pdx-empty-state-compact-icon-container-icon-size, 20px)}.empty-card.tone-primary{--empty-icon-color: var(--md-sys-color-primary)}.empty-card.tone-secondary{--empty-icon-color: var(--md-sys-color-secondary)}\n"], dependencies: [{ kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i2.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i1$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
|
|
46123
46400
|
}
|
|
46124
46401
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImport: i0, type: EmptyStateCardComponent, decorators: [{
|
|
46125
46402
|
type: Component,
|
|
@@ -46170,7 +46447,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
46170
46447
|
</div>
|
|
46171
46448
|
</mat-card-content>
|
|
46172
46449
|
</mat-card>
|
|
46173
|
-
`, styles: [".empty-card{display:block;margin:var(--pdx-empty-state-margin, 12px);border-color:var(--pdx-empty-state-border-color, var(--md-sys-color-outline-variant));border-radius:var(--pdx-empty-state-radius, 8px);background:var(--pdx-empty-state-bg, var(--md-sys-color-surface));color:var(--pdx-empty-state-fg, var(--md-sys-color-on-surface));--empty-icon-color: var(--pdx-empty-state-icon-color, var(--md-sys-color-on-surface-variant))}.empty-card.empty-inline,.empty-card.variant-inline{margin:var(--pdx-empty-state-inline-margin, 8px 0)}.empty-card.variant-panel{margin:var(--pdx-empty-state-panel-margin, 0)}.empty-card.variant-transparent{margin:var(--pdx-empty-state-transparent-margin, 0);border-color:transparent;background:transparent;box-shadow:none}.content{display:flex;align-items:center;gap:var(--pdx-empty-state-gap, 12px)}.align-center .content{flex-direction:column;justify-content:center;text-align:center}.icon{display:inline-grid;place-items:center;flex:0 0 auto;font-size:var(--pdx-empty-state-icon-size, 32px);width:var(--pdx-empty-state-icon-box-size, 32px);height:var(--pdx-empty-state-icon-box-size, 32px);color:var(--empty-icon-color)}.icon-circle .icon,.icon-soft .icon{width:var(--pdx-empty-state-icon-container-size, 44px);height:var(--pdx-empty-state-icon-container-size, 44px);border-radius:var(--pdx-empty-state-icon-container-radius, 999px);font-size:var(--pdx-empty-state-icon-container-icon-size, 22px)}.icon-circle .icon{border:1px solid var(--pdx-empty-state-icon-container-border-color, color-mix(in srgb, var(--empty-icon-color) 24%, transparent));background:var(--pdx-empty-state-icon-container-bg, color-mix(in srgb, var(--empty-icon-color) 10%, transparent))}.icon-soft .icon{background:var(--pdx-empty-state-icon-container-bg, color-mix(in srgb, var(--empty-icon-color) 10%, transparent))}.texts{display:grid;gap:var(--pdx-empty-state-text-gap, 4px)}.align-center .texts{justify-items:center}.title{margin:0;font-family:var(--pdx-empty-state-title-font-family, var(--md-sys-typescale-title-small-font-family, inherit));font-size:var(--pdx-empty-state-title-font-size, 16px);font-weight:var(--pdx-empty-state-title-font-weight, 600);line-height:var(--pdx-empty-state-title-line-height, 1.3);color:var(--pdx-empty-state-title-color, var(--md-sys-color-on-surface))}.desc{margin:0;max-width:var(--pdx-empty-state-description-max-width, none);font-family:var(--pdx-empty-state-description-font-family, var(--md-sys-typescale-body-medium-font-family, inherit));font-size:var(--pdx-empty-state-description-font-size, inherit);line-height:var(--pdx-empty-state-description-line-height, 1.4);color:var(--pdx-empty-state-description-color, var(--md-sys-color-on-surface-variant))}.actions{display:flex;justify-content:var(--pdx-empty-state-actions-justify, flex-start);gap:var(--pdx-empty-state-actions-gap, 8px);margin-top:var(--pdx-empty-state-actions-margin-top, 12px);flex-wrap:wrap}.actions .mat-mdc-button-base{width:fit-content;max-width:100%;height:var(--pdx-empty-state-action-height, var(--praxis-action-control-height, 40px));min-height:var(--pdx-empty-state-action-height, var(--praxis-action-control-height, 40px));padding-inline:var(--pdx-empty-state-action-padding-inline, var(--praxis-action-control-padding-inline, 12px));border-radius:var(--pdx-empty-state-action-radius, var(--praxis-action-control-radius, 8px));gap:var(--pdx-empty-state-action-gap, var(--praxis-action-control-gap, 8px));font-size:var(--pdx-empty-state-action-font-size, var(--praxis-action-control-font-size, .875rem));font-weight:var(--pdx-empty-state-action-font-weight, var(--praxis-action-control-font-weight, 500));line-height:var(--pdx-empty-state-action-line-height, var(--praxis-action-control-line-height, 1.25rem));white-space:nowrap}.actions .mat-mdc-button-base mat-icon{width:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));height:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));margin:0;font-size:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));line-height:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px))}.actions .mat-mdc-button-base:focus-visible{outline:2px solid var(--pdx-empty-state-action-focus-ring, var(--praxis-action-control-focus-ring, var(--md-sys-color-primary)));outline-offset:2px}.actions .mat-mdc-button-base:disabled{opacity:var(--pdx-empty-state-action-disabled-opacity, var(--praxis-action-control-disabled-opacity, .62))}.align-center .actions{justify-content:var(--pdx-empty-state-actions-justify, center)}.density-compact .content{gap:var(--pdx-empty-state-compact-gap, 8px)}.density-compact .actions .mat-mdc-button-base{height:var(--pdx-empty-state-action-height, var(--praxis-action-control-compact-height, 36px));min-height:var(--pdx-empty-state-action-height, var(--praxis-action-control-compact-height, 36px))}.density-compact .icon{font-size:var(--pdx-empty-state-compact-icon-size, 24px);width:var(--pdx-empty-state-compact-icon-box-size, 24px);height:var(--pdx-empty-state-compact-icon-box-size, 24px)}.density-compact.icon-circle .icon,.density-compact.icon-soft .icon{width:var(--pdx-empty-state-compact-icon-container-size, 36px);height:var(--pdx-empty-state-compact-icon-container-size, 36px);font-size:var(--pdx-empty-state-compact-icon-container-icon-size, 20px)}.empty-card.tone-primary{--empty-icon-color: var(--md-sys-color-primary)}.empty-card.tone-secondary{--empty-icon-color: var(--md-sys-color-secondary)}\n"] }]
|
|
46450
|
+
`, styles: [".empty-card{display:block;margin:var(--pdx-empty-state-margin, 12px);border-color:var(--pdx-empty-state-border-color, var(--md-sys-color-outline-variant));border-radius:var(--pdx-empty-state-radius, 8px);background:var(--pdx-empty-state-bg, var(--md-sys-color-surface));color:var(--pdx-empty-state-fg, var(--md-sys-color-on-surface));--empty-icon-color: var(--pdx-empty-state-icon-color, var(--md-sys-color-on-surface-variant))}.empty-card.empty-inline,.empty-card.variant-inline{margin:var(--pdx-empty-state-inline-margin, 8px 0)}.empty-card.variant-panel{margin:var(--pdx-empty-state-panel-margin, 0)}.empty-card.variant-transparent{margin:var(--pdx-empty-state-transparent-margin, 0);border-color:transparent;background:transparent;--mat-card-elevated-container-elevation: none;--mat-card-outlined-container-elevation: none;box-shadow:none!important}.content{display:flex;align-items:center;gap:var(--pdx-empty-state-gap, 12px)}.align-center .content{flex-direction:column;justify-content:center;text-align:center}.icon{display:inline-grid;place-items:center;flex:0 0 auto;font-size:var(--pdx-empty-state-icon-size, 32px);width:var(--pdx-empty-state-icon-box-size, 32px);height:var(--pdx-empty-state-icon-box-size, 32px);color:var(--empty-icon-color)}.icon-circle .icon,.icon-soft .icon{width:var(--pdx-empty-state-icon-container-size, 44px);height:var(--pdx-empty-state-icon-container-size, 44px);border-radius:var(--pdx-empty-state-icon-container-radius, 999px);font-size:var(--pdx-empty-state-icon-container-icon-size, 22px)}.icon-circle .icon{border:1px solid var(--pdx-empty-state-icon-container-border-color, color-mix(in srgb, var(--empty-icon-color) 24%, transparent));background:var(--pdx-empty-state-icon-container-bg, color-mix(in srgb, var(--empty-icon-color) 10%, transparent))}.icon-soft .icon{background:var(--pdx-empty-state-icon-container-bg, color-mix(in srgb, var(--empty-icon-color) 10%, transparent))}.texts{display:grid;gap:var(--pdx-empty-state-text-gap, 4px)}.align-center .texts{justify-items:center}.title{margin:0;font-family:var(--pdx-empty-state-title-font-family, var(--md-sys-typescale-title-small-font-family, inherit));font-size:var(--pdx-empty-state-title-font-size, 16px);font-weight:var(--pdx-empty-state-title-font-weight, 600);line-height:var(--pdx-empty-state-title-line-height, 1.3);color:var(--pdx-empty-state-title-color, var(--md-sys-color-on-surface))}.desc{margin:0;max-width:var(--pdx-empty-state-description-max-width, none);font-family:var(--pdx-empty-state-description-font-family, var(--md-sys-typescale-body-medium-font-family, inherit));font-size:var(--pdx-empty-state-description-font-size, inherit);line-height:var(--pdx-empty-state-description-line-height, 1.4);color:var(--pdx-empty-state-description-color, var(--md-sys-color-on-surface-variant))}.actions{display:flex;justify-content:var(--pdx-empty-state-actions-justify, flex-start);gap:var(--pdx-empty-state-actions-gap, 8px);margin-top:var(--pdx-empty-state-actions-margin-top, 12px);flex-wrap:wrap}.actions .mat-mdc-button-base{width:fit-content;max-width:100%;height:var(--pdx-empty-state-action-height, var(--praxis-action-control-height, 40px));min-height:var(--pdx-empty-state-action-height, var(--praxis-action-control-height, 40px));padding-inline:var(--pdx-empty-state-action-padding-inline, var(--praxis-action-control-padding-inline, 12px));border-radius:var(--pdx-empty-state-action-radius, var(--praxis-action-control-radius, 8px));gap:var(--pdx-empty-state-action-gap, var(--praxis-action-control-gap, 8px));font-size:var(--pdx-empty-state-action-font-size, var(--praxis-action-control-font-size, .875rem));font-weight:var(--pdx-empty-state-action-font-weight, var(--praxis-action-control-font-weight, 500));line-height:var(--pdx-empty-state-action-line-height, var(--praxis-action-control-line-height, 1.25rem));white-space:nowrap}.actions .mat-mdc-button-base mat-icon{width:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));height:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));margin:0;font-size:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px));line-height:var(--pdx-empty-state-action-icon-size, var(--praxis-action-control-icon-size, 18px))}.actions .mat-mdc-button-base:focus-visible{outline:2px solid var(--pdx-empty-state-action-focus-ring, var(--praxis-action-control-focus-ring, var(--md-sys-color-primary)));outline-offset:2px}.actions .mat-mdc-button-base:disabled{opacity:var(--pdx-empty-state-action-disabled-opacity, var(--praxis-action-control-disabled-opacity, .62))}.align-center .actions{justify-content:var(--pdx-empty-state-actions-justify, center)}.density-compact .content{gap:var(--pdx-empty-state-compact-gap, 8px)}.density-compact .actions .mat-mdc-button-base{height:var(--pdx-empty-state-action-height, var(--praxis-action-control-compact-height, 36px));min-height:var(--pdx-empty-state-action-height, var(--praxis-action-control-compact-height, 36px))}.density-compact .icon{font-size:var(--pdx-empty-state-compact-icon-size, 24px);width:var(--pdx-empty-state-compact-icon-box-size, 24px);height:var(--pdx-empty-state-compact-icon-box-size, 24px)}.density-compact.icon-circle .icon,.density-compact.icon-soft .icon{width:var(--pdx-empty-state-compact-icon-container-size, 36px);height:var(--pdx-empty-state-compact-icon-container-size, 36px);font-size:var(--pdx-empty-state-compact-icon-container-icon-size, 20px)}.empty-card.tone-primary{--empty-icon-color: var(--md-sys-color-primary)}.empty-card.tone-secondary{--empty-icon-color: var(--md-sys-color-secondary)}\n"] }]
|
|
46174
46451
|
}], propDecorators: { icon: [{
|
|
46175
46452
|
type: Input
|
|
46176
46453
|
}], title: [{
|
|
@@ -47209,4 +47486,4 @@ function provideHookWhitelist(allowed) {
|
|
|
47209
47486
|
* Generated bundle index. Do not edit.
|
|
47210
47487
|
*/
|
|
47211
47488
|
|
|
47212
|
-
export { API_CONFIG_STORAGE_OPTIONS, API_URL, ASYNC_CONFIG_STORAGE, AllowedFileTypes, AnalyticsPresentationResolver, AnalyticsSchemaContractService, AnalyticsStatsRequestBuilderService, ApiConfigStorage, ApiEndpoint, BUILTIN_PAGE_LAYOUT_PRESETS, BUILTIN_PAGE_THEME_PRESETS, BUILTIN_SHELL_PRESETS, COMPONENT_METADATA_REGISTRY_I18N_CONFIG, COMPONENT_METADATA_REGISTRY_I18N_NAMESPACE, CONFIG_STORAGE, CONNECTION_STORAGE, ComponentAuthoringManifestProjectionError, ComponentKeyService, ComponentMetadataRegistry, ComponentRuntimeProfileService, CompositionRuntimeFacade, CompositionValidatorService, ConsoleLoggerSink, CrudOperationResolutionService, DEFAULT_FIELD_SELECTOR_CONTROL_TYPE_MAP, DEFAULT_JSON_LOGIC_OPERATORS, DEFAULT_TABLE_CONFIG, DOMAIN_CATALOG_COMPONENT_CONTEXT_PACK, DOMAIN_CATALOG_CONTEXT_HINT_SCHEMA_VERSION, DYNAMIC_PAGE_AI_CAPABILITIES, DYNAMIC_PAGE_COMPONENT_CONTEXT_PACK, DYNAMIC_PAGE_CONFIG_EDITOR, DYNAMIC_PAGE_SHELL_EDITOR, DefaultLoadingRenderer, DeferredAsyncConfigStorage, DomainCatalogService, DomainKnowledgeService, DomainRuleService, DynamicFormService, DynamicWidgetLoaderDirective, DynamicWidgetPageComponent, EDITORIAL_ALLOWED_CONTENT_FORMATS, EDITORIAL_COMPLIANCE_PRESETS, EDITORIAL_EXTERNAL_LINK_REL, EDITORIAL_FORM_TEMPLATE_CATALOG, EDITORIAL_HTML_ENABLED, EDITORIAL_MARKDOWN_IMAGES_ENABLED, EDITORIAL_SOLUTION_CATALOG, EDITORIAL_SOLUTION_PRESETS, EDITORIAL_THEME_PRESETS, EDITORIAL_WIDGET_CONVENTION_INPUTS, EDITORIAL_WIDGET_TAG, EMPLOYEE_ONBOARDING_EDITORIAL_SOLUTION, EMPLOYEE_ONBOARDING_EDITORIAL_TEMPLATE, EMPLOYEE_ONBOARDING_GUIDED_EDITORIAL_SOLUTION, EMPLOYEE_ONBOARDING_GUIDED_EDITORIAL_TEMPLATE, EVENT_REGISTRATION_EDITORIAL_SOLUTION, EVENT_REGISTRATION_EDITORIAL_TEMPLATE, EmptyStateCardComponent, EnterpriseRuntimeContextService, ErrorMessageService, FIELD_METADATA_CAPABILITIES, FIELD_SELECTOR_REGISTRY_BASE, FIELD_SELECTOR_REGISTRY_DISABLE_DEFAULTS, FIELD_SELECTOR_REGISTRY_OVERRIDES, FORM_HOOKS, FORM_HOOKS_PRESETS, FORM_HOOKS_WHITELIST, FORM_HOOK_RESOLVERS, FieldControlType, FieldDataType, FieldSelectorRegistry, FormHooksRegistry, GLOBAL_ACTION_CATALOG, GLOBAL_ACTION_HANDLERS, GLOBAL_ACTION_UI_SCHEMAS, GLOBAL_ANALYTICS_SERVICE, GLOBAL_API_CLIENT, GLOBAL_CONFIG, GLOBAL_DIALOG_SERVICE, GLOBAL_ROUTE_GUARD_RESOLVER, GLOBAL_SURFACE_SERVICE, GLOBAL_TOAST_SERVICE, GenericCrudService, GlobalActionService, GlobalConfigService, INLINE_FILTER_ALIAS_TOKENS, INLINE_FILTER_CONTROL_TYPES, INLINE_FILTER_CONTROL_TYPE_SET, INLINE_FILTER_CONTROL_TYPE_VALUES, INLINE_FILTER_TOKEN_TO_BASE_CONTROL_TYPE, INLINE_FILTER_TOKEN_TO_CONTROL_TYPE, IconPickerService, IconPosition, IconSize, LOGGER_LEVEL_BY_ENV, LOGGER_LEVEL_PRIORITY, LoadingOrchestrator, LocalConnectionStorage, LocalStorageAsyncAdapter, LocalStorageCacheAdapter, LocalStorageConfigService, LoggerService, LoggerThrottleTracker, LoggerWarnOnceTracker, MemoryCacheAdapter, NestedPortCatalogService, NestedWidgetConfigAccessor, NumericFormat, OVERLAY_DECIDER_DEBUG, OVERLAY_DECISION_MATRIX, ObservabilityDashboardService, OverlayDeciderService, PRAXIS_ACTION_CONTROL_DEFAULTS, PRAXIS_ACTION_CONTROL_VARS, PRAXIS_COLLECTION_EXPORT_HTTP_OPTIONS, PRAXIS_COLLECTION_EXPORT_PROVIDER, PRAXIS_COLLECTION_SEARCH_DEFAULTS, PRAXIS_COLLECTION_SEARCH_VARS, PRAXIS_CORPORATE_SENSITIVE_KEYS, PRAXIS_DEFAULT_EXPORT_SECURITY_POLICY, PRAXIS_DEFAULT_OBSERVABILITY_ALERT_RULES, PRAXIS_DYNAMIC_PAGE_COMPONENT_METADATA, PRAXIS_ENTERPRISE_RUNTIME_CONTEXT_OPTIONS, PRAXIS_ENTERPRISE_RUNTIME_CONTEXT_READY, PRAXIS_EXPORT_FORMULA_PREFIXES, PRAXIS_EXPORT_SECURITY_POLICY, PRAXIS_FOOTER_LINKS_METADATA, PRAXIS_GLOBAL_ACTION_CATALOG, PRAXIS_GLOBAL_CONFIG_BOOTSTRAP_OPTIONS, PRAXIS_GLOBAL_CONFIG_BOOTSTRAP_READY, PRAXIS_GLOBAL_CONFIG_TENANT_RESOLVER, PRAXIS_HERO_BANNER_METADATA, PRAXIS_I18N_CONFIG, PRAXIS_I18N_TRANSLATOR, PRAXIS_JSON_LOGIC_OPERATORS, PRAXIS_LAYER_SCALE_DEFAULTS, PRAXIS_LAYER_SCALE_VARS, PRAXIS_LEGAL_NOTICE_METADATA, PRAXIS_LOADING_CTX, PRAXIS_LOADING_RENDERER, PRAXIS_LOGGER_CONFIG, PRAXIS_LOGGER_SINKS, PRAXIS_OBSERVABILITY_DASHBOARD_OPTIONS, PRAXIS_QUERY_FILTER_EXPRESSION_SCHEMA_VERSION, PRAXIS_RELATED_RESOURCE_OUTLET_AUTHORING_MANIFEST, PRAXIS_RELATED_RESOURCE_OUTLET_COMPONENT_METADATA, PRAXIS_RELATED_RESOURCE_OUTLET_PORTS, PRAXIS_RICH_TEXT_BLOCK_METADATA, PRAXIS_TABLE_DETAIL_INLINE_NODE_RESOLVERS, PRAXIS_TABLE_DETAIL_INLINE_RENDERERS, PRAXIS_TABLE_DETAIL_RESOURCE_RESOLVER, PRAXIS_TELEMETRY_TRANSPORT, PRAXIS_THEME_SURFACE_DEFAULTS, PRAXIS_THEME_SURFACE_VARS, PRAXIS_USER_CONTEXT_SUMMARY_METADATA, PRIVACY_CONSENT_EDITORIAL_SOLUTION, PRIVACY_CONSENT_EDITORIAL_TEMPLATE, PraxisCollectionExportService, PraxisCore, PraxisFooterLinksComponent, PraxisGlobalErrorHandler, PraxisHeroBannerComponent, PraxisHttpCollectionExportProvider, PraxisI18nService, PraxisIconButtonComponent, PraxisIconDirective, PraxisIconPickerComponent, PraxisJsonLogicError, PraxisJsonLogicService, PraxisLayerScaleStyleService, PraxisLegalNoticeComponent, PraxisLoadingInterceptor, PraxisRelatedResourceOutletComponent, PraxisRelatedResourceOutletConfigEditorComponent, PraxisResourceIdentityComponent, PraxisRichTextBlockComponent, PraxisRuntimeComponentObservationRegistryService, PraxisSurfaceHostComponent, PraxisUserContextSummaryComponent, RESOURCE_DISCOVERY_I18N_CONFIG, RESOURCE_DISCOVERY_I18N_NAMESPACE, RULE_PROPERTY_SCHEMA, RelatedResourceSurfaceResolverService, RemoteConfigStorage, ResourceActionOpenAdapterService, ResourceDiscoveryService, ResourceQuickConnectComponent, ResourceRecordOpenError, ResourceRecordOpenService, ResourceSurfaceOpenAdapterService, SCHEMA_VIEWER_CONTEXT, SETTINGS_PANEL_BRIDGE, SETTINGS_PANEL_DATA, STEPPER_CONFIG_EDITOR, SURFACE_DRAWER_BRIDGE, SURFACE_DRAWER_CONTENT_DATA, SURFACE_DRAWER_REF, SURFACE_NAVIGATION_I18N_CONFIG, SURFACE_NAVIGATION_I18N_NAMESPACE, SURFACE_OPEN_I18N_CONFIG, SURFACE_OPEN_I18N_NAMESPACE, SURFACE_OPEN_PRESETS, SchemaMetadataClient, SchemaNormalizerService, SchemaViewerComponent, SurfaceBindingRuntimeService, SurfaceNavigationError, SurfaceOpenActionEditorComponent, SurfaceOpenMaterializerService, SurfaceOutletRegistryService, TABLE_CONFIG_EDITOR, TableConfigService, TelemetryLoggerSink, TelemetryService, ValidationPattern, WidgetPageCompositionFactory, WidgetPageStateRuntimeService, WidgetShellComponent, applyLocalCustomizations$2 as applyLocalCustomizations, applyLocalCustomizations$1 as applyLocalFormCustomizations, assertPraxisCollectionExportArtifact, assertPraxisRuntimeComponentObservationSerializable, buildAngularValidators, buildApiUrl, buildBaseColumnFromDef, buildBaseFormField, buildFormConfigFromEditorialTemplate, buildHeaders, buildPageKey, buildPraxisActionControlCss, buildPraxisCollectionSearchCss, buildPraxisEffectDistinctKey, buildPraxisLayerScaleCss, buildPraxisThemeSurfaceCss, buildSchemaId, buildSchemaIdStorageKeySegment, buildValidatorsFromValidatorOptions, cancelIfCpfInvalidHook, clampRange, classifyEntityLookupResult, clonePraxisRuntimeComponentObservation, cloneTableConfig, cnpjAlphaValidator, collapseWhitespace, composeHeadersWithVersion, conditionalAsyncValidator, convertFormLayoutToConfig, createCorporateLoggerConfig, createCorporateObservabilityOptions, createCpfCnpjValidator, createDefaultFormConfig, createDefaultTableConfig, createEmptyFormConfig, createEmptyRichContentDocument, createFieldLayoutItem, createPersistedPage, customAsyncValidatorFn, customValidatorFn, debounceAsyncValidator, deepMerge, domainKnowledgeTimelineToRichContentDocument, domainRuleTimelineToRichContentDocument, ensureIds, ensureNoConflictsHookFactory, ensurePageIds, escapePraxisExportCell, evaluateFieldAccess, extractNormalizedError, fetchWithETag, fileTypeValidator, fillUndefined, generateId, getDefaultFormHints, getEditorialCompliancePresetById, getEditorialFormTemplateById, getEditorialFormTemplateCatalog, getEditorialSolutionById, getEditorialSolutionCatalog, getEditorialSolutionPresetById, getEditorialThemePresetById, getEssentialConfig, getFieldMetadataCapabilities, getFormColumnFieldNames, getFormLayoutFieldNames, getGlobalActionCatalog, getGlobalActionPayloadActualType, getGlobalActionPayloadTypeIssue, getGlobalActionProviderEvidence, getGlobalActionUiSchema, getMissingGlobalActionPayloadKeys, getPraxisTableCellVisualizationConstraint, getPraxisTableCellVisualizationGuidance, getReferencedFieldMetadata, getRequiredGlobalActionPayloadKeys, getTextTransformer, hasMeaningfulGlobalActionPayloadValue, hasPraxisCollectionExportArtifact, interpolatePraxisTranslation, isAllowedEditorialContentFormat, isAllowedEditorialHref, isCssTextTransform, isDomainRuleSnapshotProblemResponse, isEditorialComponentMeta, isEntityLookupMultiplePayloadMode, isEntityLookupPayloadMode, isEntityLookupPayloadModeCompatible, isEntityLookupResultSelectable, isEntityLookupSinglePayloadMode, isFormLayoutItem, isGlobalActionProviderOperational, isGlobalActionRef, isInlineFilterControlType, isLookupDialogSize, isLookupFilterFieldType, isLookupFilterOperator, isPraxisI18nMessageDescriptor, isPraxisPresentationVisualizationTableSafe, isPraxisRuntimeGlobalActionEffect, isProgrammaticDateRangePreset, isRangeValidForFilter, isRequiredGlobalActionParamPayloadMissing, isRequiredGlobalActionPayloadMissing, isStaticDateRangePreset, isSurfaceNavigationError, isTableConfigV2, isValidFormConfig, isValidTableConfig, legacyCnpjValidator, legacyCpfValidator, logOnErrorHook, mapFieldDefinitionToMetadata, mapFieldDefinitionsToMetadata, markGlobalActionProviderOperational, matchFieldValidator, materializeFormLayoutFromMetadata, materializeResourceIdentity, maxFileSizeValidator, mergeFieldMetadata, mergePraxisI18nConfigs, mergeTableConfigs, migrateFormLayoutRule, migrateLegacyCompositionLink, migrateLegacyCompositionLinks, minWordsValidator, nestedPortPathIdentity, normalizeControlTypeKey, normalizeControlTypeToken, normalizeEditorialLink, normalizeEnd, normalizeFieldAccessMetadata, normalizeFieldConstraints, normalizeFieldPresentation, normalizeFormConfig, normalizeFormLayoutItems, normalizeFormMetadata, normalizeGlobalActionRef$1 as normalizeGlobalActionRef, normalizeLayoutPolicy, normalizeLookupFilterRequest, normalizePath, normalizePraxisDataQueryContext, normalizePraxisEffectPolicy, normalizePraxisPresentationVisualization, normalizePraxisQueryFilterExpression, normalizePraxisQueryFilterNode, normalizeReactiveDeterminations, normalizeResourceAvailabilityReasonCode, normalizeResourceIdentityContract, normalizeStart, normalizeSurfaceOperationContext, normalizeUnknownError, normalizeWidgetEventPath, notifySuccessHook, parseJsonResponseOrEmpty, praxisLoadingInterceptorFn, prefillFromContextHook, projectComponentAuthoringManifest, projectGroupedCommandPartialRows, provideDefaultFormHooks, provideFieldSelectorRegistryBase, provideFieldSelectorRegistryOverride, provideFieldSelectorRegistryRuntime, provideFormHookPresets, provideFormHooks, provideGlobalActionCatalog, provideGlobalActionHandler, provideGlobalConfig, provideGlobalConfigReady, provideGlobalConfigSeed, provideGlobalConfigTenant, provideHookResolvers, provideHookWhitelist, provideOverlayDecisionMatrix, providePraxisAnalyticsGlobalActions, providePraxisCollectionExportProvider, providePraxisDynamicPageMetadata, providePraxisEnterpriseRuntimeContext, providePraxisFooterLinksMetadata, providePraxisGlobalActionCatalog, providePraxisGlobalActions, providePraxisGlobalConfigBootstrap, providePraxisHeroBannerMetadata, providePraxisHttpCollectionExportProvider, providePraxisHttpLoading, providePraxisI18n, providePraxisI18nConfig, providePraxisI18nTranslator, providePraxisIconDefaults, providePraxisJsonLogicOperator, providePraxisJsonLogicOperatorOverride, providePraxisLegalNoticeMetadata, providePraxisLoadingDefaults, providePraxisLogging, providePraxisRelatedResourceOutletMetadata, providePraxisRichTextBlockMetadata, providePraxisTelemetry, providePraxisToastGlobalActions, providePraxisUserContextSummaryMetadata, provideRemoteGlobalConfig, readPraxisExportValue, reconcileFilterConfig, reconcileFormConfig, reconcileTableConfig, registerPraxisRuntimeComponentObservation, removeDiacritics, renderPraxisPresentationVisualizationHtml, reportTelemetryHookFactory, requiredCheckedValidator, requiredPresenceValidator, resolveBuiltinPresets, resolveColumnTypeFromFieldDefinition, resolveControlTypeAlias, resolveDateRangeShortcutPreset, resolveDateRangeShortcutPresets, resolveDefaultValuePresentationFormat, resolveEntityLookupPayloadMode, resolveFieldPresentation, resolveGroupedCommandPartialRowSpans, resolveHidden, resolveInlineFilterControlType, resolveInlineFilterControlTypeToBaseControlType, resolveLoggerConfig, resolveObservabilityOptions, resolveOffset, resolveOrder, resolvePraxisCollectionExportItems, resolvePraxisExportFields, resolvePraxisExportScope, resolvePraxisFilterCriteria, resolvePraxisI18nDocument, resolveResourceAvailabilityReasonKey, resolveResourceIdentityContract, resolveSpan, resolveTextMaskFormat, resolveTextMaskFormatFromFieldDefinition, resolveValuePresentation, resolveValuePresentationLocale, serializeEntityLookupValueForPayload, serializeOptionSourceFilterRequest, serializePraxisCollectionToCsv, serializePraxisCollectionToExcel, serializePraxisCollectionToJson, slugify, staticDateRangePresetToPreset, stripMasksHook, supportsImplicitValuePresentation, syncWithServerMetadata, toCamel, toCapitalize, toKebab, toPascal, toSentenceCase, toSnake, toTitleCase, translateResourceAvailabilityReason, translateResourceDiscoveryText, translateSurfaceNavigationRejected, translateUnavailableWorkflowMessage, trim, uniqueAsyncValidator, urlValidator, validateGlobalActionRef, validateGlobalActionRefs, withFormConfigSections, withMessage, withPraxisHttpLoading };
|
|
47489
|
+
export { API_CONFIG_STORAGE_OPTIONS, API_URL, ASYNC_CONFIG_STORAGE, AllowedFileTypes, AnalyticsPresentationResolver, AnalyticsSchemaContractService, AnalyticsStatsRequestBuilderService, ApiConfigStorage, ApiEndpoint, BUILTIN_PAGE_LAYOUT_PRESETS, BUILTIN_PAGE_THEME_PRESETS, BUILTIN_SHELL_PRESETS, COMPONENT_METADATA_REGISTRY_I18N_CONFIG, COMPONENT_METADATA_REGISTRY_I18N_NAMESPACE, CONFIG_STORAGE, CONNECTION_STORAGE, ComponentAuthoringManifestProjectionError, ComponentKeyService, ComponentMetadataRegistry, ComponentRuntimeProfileService, CompositionRuntimeFacade, CompositionValidatorService, ConsoleLoggerSink, CrudOperationResolutionService, DEFAULT_FIELD_SELECTOR_CONTROL_TYPE_MAP, DEFAULT_JSON_LOGIC_OPERATORS, DEFAULT_TABLE_CONFIG, DOMAIN_CATALOG_COMPONENT_CONTEXT_PACK, DOMAIN_CATALOG_CONTEXT_HINT_SCHEMA_VERSION, DYNAMIC_PAGE_AI_CAPABILITIES, DYNAMIC_PAGE_COMPONENT_CONTEXT_PACK, DYNAMIC_PAGE_CONFIG_EDITOR, DYNAMIC_PAGE_SHELL_EDITOR, DefaultLoadingRenderer, DeferredAsyncConfigStorage, DomainCatalogService, DomainKnowledgeService, DomainRuleService, DynamicFormService, DynamicWidgetLoaderDirective, DynamicWidgetPageComponent, EDITORIAL_ALLOWED_CONTENT_FORMATS, EDITORIAL_COMPLIANCE_PRESETS, EDITORIAL_EXTERNAL_LINK_REL, EDITORIAL_FORM_TEMPLATE_CATALOG, EDITORIAL_HTML_ENABLED, EDITORIAL_MARKDOWN_IMAGES_ENABLED, EDITORIAL_SOLUTION_CATALOG, EDITORIAL_SOLUTION_PRESETS, EDITORIAL_THEME_PRESETS, EDITORIAL_WIDGET_CONVENTION_INPUTS, EDITORIAL_WIDGET_TAG, EMPLOYEE_ONBOARDING_EDITORIAL_SOLUTION, EMPLOYEE_ONBOARDING_EDITORIAL_TEMPLATE, EMPLOYEE_ONBOARDING_GUIDED_EDITORIAL_SOLUTION, EMPLOYEE_ONBOARDING_GUIDED_EDITORIAL_TEMPLATE, EVENT_REGISTRATION_EDITORIAL_SOLUTION, EVENT_REGISTRATION_EDITORIAL_TEMPLATE, EmptyStateCardComponent, EnterpriseRuntimeContextService, ErrorMessageService, FIELD_METADATA_CAPABILITIES, FIELD_SELECTOR_REGISTRY_BASE, FIELD_SELECTOR_REGISTRY_DISABLE_DEFAULTS, FIELD_SELECTOR_REGISTRY_OVERRIDES, FORM_HOOKS, FORM_HOOKS_PRESETS, FORM_HOOKS_WHITELIST, FORM_HOOK_RESOLVERS, FieldControlType, FieldDataType, FieldSelectorRegistry, FormHooksRegistry, GLOBAL_ACTION_CATALOG, GLOBAL_ACTION_HANDLERS, GLOBAL_ACTION_UI_SCHEMAS, GLOBAL_ANALYTICS_SERVICE, GLOBAL_API_CLIENT, GLOBAL_CONFIG, GLOBAL_DIALOG_SERVICE, GLOBAL_ROUTE_GUARD_RESOLVER, GLOBAL_SURFACE_SERVICE, GLOBAL_TOAST_SERVICE, GenericCrudService, GlobalActionService, GlobalConfigService, INLINE_FILTER_ALIAS_TOKENS, INLINE_FILTER_CONTROL_TYPES, INLINE_FILTER_CONTROL_TYPE_SET, INLINE_FILTER_CONTROL_TYPE_VALUES, INLINE_FILTER_TOKEN_TO_BASE_CONTROL_TYPE, INLINE_FILTER_TOKEN_TO_CONTROL_TYPE, IconPickerService, IconPosition, IconSize, LOGGER_LEVEL_BY_ENV, LOGGER_LEVEL_PRIORITY, LoadingOrchestrator, LocalConnectionStorage, LocalStorageAsyncAdapter, LocalStorageCacheAdapter, LocalStorageConfigService, LoggerService, LoggerThrottleTracker, LoggerWarnOnceTracker, MemoryCacheAdapter, NestedPortCatalogService, NestedWidgetConfigAccessor, NumericFormat, OVERLAY_DECIDER_DEBUG, OVERLAY_DECISION_MATRIX, ObservabilityDashboardService, OverlayDeciderService, PRAXIS_ACTION_CONTROL_DEFAULTS, PRAXIS_ACTION_CONTROL_VARS, PRAXIS_COLLECTION_EXPORT_HTTP_OPTIONS, PRAXIS_COLLECTION_EXPORT_PROVIDER, PRAXIS_COLLECTION_SEARCH_DEFAULTS, PRAXIS_COLLECTION_SEARCH_VARS, PRAXIS_CORPORATE_SENSITIVE_KEYS, PRAXIS_DEFAULT_EXPORT_SECURITY_POLICY, PRAXIS_DEFAULT_OBSERVABILITY_ALERT_RULES, PRAXIS_DYNAMIC_PAGE_COMPONENT_METADATA, PRAXIS_ENTERPRISE_RUNTIME_CONTEXT_OPTIONS, PRAXIS_ENTERPRISE_RUNTIME_CONTEXT_READY, PRAXIS_EXPORT_FORMULA_PREFIXES, PRAXIS_EXPORT_SECURITY_POLICY, PRAXIS_FOOTER_LINKS_METADATA, PRAXIS_GLOBAL_ACTION_CATALOG, PRAXIS_GLOBAL_CONFIG_BOOTSTRAP_OPTIONS, PRAXIS_GLOBAL_CONFIG_BOOTSTRAP_READY, PRAXIS_GLOBAL_CONFIG_TENANT_RESOLVER, PRAXIS_HERO_BANNER_METADATA, PRAXIS_I18N_CONFIG, PRAXIS_I18N_TRANSLATOR, PRAXIS_JSON_LOGIC_OPERATORS, PRAXIS_LAYER_SCALE_DEFAULTS, PRAXIS_LAYER_SCALE_VARS, PRAXIS_LEGAL_NOTICE_METADATA, PRAXIS_LOADING_CTX, PRAXIS_LOADING_RENDERER, PRAXIS_LOGGER_CONFIG, PRAXIS_LOGGER_SINKS, PRAXIS_OBSERVABILITY_DASHBOARD_OPTIONS, PRAXIS_QUERY_FILTER_EXPRESSION_SCHEMA_VERSION, PRAXIS_RELATED_RESOURCE_OUTLET_AUTHORING_MANIFEST, PRAXIS_RELATED_RESOURCE_OUTLET_COMPONENT_METADATA, PRAXIS_RELATED_RESOURCE_OUTLET_PORTS, PRAXIS_RICH_TEXT_BLOCK_METADATA, PRAXIS_TABLE_DETAIL_INLINE_NODE_RESOLVERS, PRAXIS_TABLE_DETAIL_INLINE_RENDERERS, PRAXIS_TABLE_DETAIL_RESOURCE_RESOLVER, PRAXIS_TELEMETRY_TRANSPORT, PRAXIS_THEME_SURFACE_DEFAULTS, PRAXIS_THEME_SURFACE_VARS, PRAXIS_USER_CONTEXT_SUMMARY_METADATA, PRIVACY_CONSENT_EDITORIAL_SOLUTION, PRIVACY_CONSENT_EDITORIAL_TEMPLATE, PraxisCollectionExportService, PraxisCore, PraxisFooterLinksComponent, PraxisGlobalErrorHandler, PraxisHeroBannerComponent, PraxisHttpCollectionExportProvider, PraxisI18nService, PraxisIconButtonComponent, PraxisIconDirective, PraxisIconPickerComponent, PraxisJsonLogicError, PraxisJsonLogicService, PraxisLayerScaleStyleService, PraxisLegalNoticeComponent, PraxisLoadingInterceptor, PraxisRelatedResourceOutletComponent, PraxisRelatedResourceOutletConfigEditorComponent, PraxisResourceIdentityComponent, PraxisRichTextBlockComponent, PraxisRuntimeComponentObservationRegistryService, PraxisSurfaceHostComponent, PraxisUserContextSummaryComponent, RESOURCE_DISCOVERY_I18N_CONFIG, RESOURCE_DISCOVERY_I18N_NAMESPACE, RULE_PROPERTY_SCHEMA, RelatedResourceSurfaceResolverService, RemoteConfigStorage, ResourceActionOpenAdapterService, ResourceDiscoveryService, ResourceQuickConnectComponent, ResourceRecordOpenError, ResourceRecordOpenService, ResourceSurfaceOpenAdapterService, SCHEMA_VIEWER_CONTEXT, SETTINGS_PANEL_BRIDGE, SETTINGS_PANEL_DATA, STEPPER_CONFIG_EDITOR, SURFACE_DRAWER_BRIDGE, SURFACE_DRAWER_CONTENT_DATA, SURFACE_DRAWER_REF, SURFACE_NAVIGATION_I18N_CONFIG, SURFACE_NAVIGATION_I18N_NAMESPACE, SURFACE_OPEN_I18N_CONFIG, SURFACE_OPEN_I18N_NAMESPACE, SURFACE_OPEN_PRESETS, SchemaMetadataClient, SchemaNormalizerService, SchemaViewerComponent, SurfaceBindingRuntimeService, SurfaceNavigationError, SurfaceOpenActionEditorComponent, SurfaceOpenMaterializerService, SurfaceOutletRegistryService, TABLE_CONFIG_EDITOR, TableConfigService, TelemetryLoggerSink, TelemetryService, ValidationPattern, WidgetPageCompositionFactory, WidgetPageStateRuntimeService, WidgetShellComponent, applyLocalCustomizations$2 as applyLocalCustomizations, applyLocalCustomizations$1 as applyLocalFormCustomizations, assertPraxisCollectionExportArtifact, assertPraxisRuntimeComponentObservationSerializable, buildAngularValidators, buildApiUrl, buildBaseColumnFromDef, buildBaseFormField, buildFormConfigFromEditorialTemplate, buildHeaders, buildPageKey, buildPraxisActionControlCss, buildPraxisCollectionSearchCss, buildPraxisEffectDistinctKey, buildPraxisLayerScaleCss, buildPraxisThemeSurfaceCss, buildSchemaId, buildSchemaIdStorageKeySegment, buildValidatorsFromValidatorOptions, cancelIfCpfInvalidHook, canonicalJsonSha256, canonicalJsonStringify, clampRange, classifyEntityLookupResult, clonePraxisRuntimeComponentObservation, cloneTableConfig, cnpjAlphaValidator, collapseWhitespace, composeHeadersWithVersion, conditionalAsyncValidator, convertFormLayoutToConfig, createCorporateLoggerConfig, createCorporateObservabilityOptions, createCpfCnpjValidator, createDefaultFormConfig, createDefaultTableConfig, createEmptyFormConfig, createEmptyRichContentDocument, createFieldLayoutItem, createPersistedPage, customAsyncValidatorFn, customValidatorFn, debounceAsyncValidator, deepMerge, domainKnowledgeTimelineToRichContentDocument, domainRuleTimelineToRichContentDocument, ensureIds, ensureNoConflictsHookFactory, ensurePageIds, escapePraxisExportCell, evaluateFieldAccess, extractNormalizedError, fetchWithETag, fileTypeValidator, fillUndefined, generateId, getDefaultFormHints, getEditorialCompliancePresetById, getEditorialFormTemplateById, getEditorialFormTemplateCatalog, getEditorialSolutionById, getEditorialSolutionCatalog, getEditorialSolutionPresetById, getEditorialThemePresetById, getEssentialConfig, getFieldMetadataCapabilities, getFormColumnFieldNames, getFormLayoutFieldNames, getGlobalActionCatalog, getGlobalActionPayloadActualType, getGlobalActionPayloadTypeIssue, getGlobalActionProviderEvidence, getGlobalActionUiSchema, getMissingGlobalActionPayloadKeys, getPraxisTableCellVisualizationConstraint, getPraxisTableCellVisualizationGuidance, getReferencedFieldMetadata, getRequiredGlobalActionPayloadKeys, getTextTransformer, hasMeaningfulGlobalActionPayloadValue, hasPraxisCollectionExportArtifact, interpolatePraxisTranslation, isAllowedEditorialContentFormat, isAllowedEditorialHref, isCssTextTransform, isDomainRuleSnapshotProblemResponse, isEditorialComponentMeta, isEntityLookupMultiplePayloadMode, isEntityLookupPayloadMode, isEntityLookupPayloadModeCompatible, isEntityLookupResultSelectable, isEntityLookupSinglePayloadMode, isFormLayoutItem, isGlobalActionProviderOperational, isGlobalActionRef, isInlineFilterControlType, isLookupDialogSize, isLookupFilterFieldType, isLookupFilterOperator, isPraxisI18nMessageDescriptor, isPraxisPresentationVisualizationTableSafe, isPraxisRuntimeGlobalActionEffect, isProgrammaticDateRangePreset, isRangeValidForFilter, isRequiredGlobalActionParamPayloadMissing, isRequiredGlobalActionPayloadMissing, isStaticDateRangePreset, isSurfaceNavigationError, isTableConfigV2, isValidFormConfig, isValidTableConfig, legacyCnpjValidator, legacyCpfValidator, logOnErrorHook, mapFieldDefinitionToMetadata, mapFieldDefinitionsToMetadata, markGlobalActionProviderOperational, matchFieldValidator, materializeFormLayoutFromMetadata, materializeResourceIdentity, maxFileSizeValidator, mergeFieldMetadata, mergePraxisI18nConfigs, mergeTableConfigs, migrateFormLayoutRule, migrateLegacyCompositionLink, migrateLegacyCompositionLinks, minWordsValidator, nestedPortPathIdentity, normalizeControlTypeKey, normalizeControlTypeToken, normalizeEditorialLink, normalizeEnd, normalizeFieldAccessMetadata, normalizeFieldConstraints, normalizeFieldPresentation, normalizeFormConfig, normalizeFormLayoutItems, normalizeFormMetadata, normalizeGlobalActionRef$1 as normalizeGlobalActionRef, normalizeLayoutPolicy, normalizeLookupFilterRequest, normalizePath, normalizePraxisDataQueryContext, normalizePraxisEffectPolicy, normalizePraxisPresentationVisualization, normalizePraxisQueryFilterExpression, normalizePraxisQueryFilterNode, normalizeReactiveDeterminations, normalizeResourceAvailabilityReasonCode, normalizeResourceIdentityContract, normalizeStart, normalizeSurfaceOperationContext, normalizeUnknownError, normalizeWidgetEventPath, notifySuccessHook, parseJsonResponseOrEmpty, praxisLoadingInterceptorFn, prefillFromContextHook, projectComponentAuthoringManifest, projectGroupedCommandPartialRows, provideDefaultFormHooks, provideFieldSelectorRegistryBase, provideFieldSelectorRegistryOverride, provideFieldSelectorRegistryRuntime, provideFormHookPresets, provideFormHooks, provideGlobalActionCatalog, provideGlobalActionHandler, provideGlobalConfig, provideGlobalConfigReady, provideGlobalConfigSeed, provideGlobalConfigTenant, provideHookResolvers, provideHookWhitelist, provideOverlayDecisionMatrix, providePraxisAnalyticsGlobalActions, providePraxisCollectionExportProvider, providePraxisDynamicPageMetadata, providePraxisEnterpriseRuntimeContext, providePraxisFooterLinksMetadata, providePraxisGlobalActionCatalog, providePraxisGlobalActions, providePraxisGlobalConfigBootstrap, providePraxisHeroBannerMetadata, providePraxisHttpCollectionExportProvider, providePraxisHttpLoading, providePraxisI18n, providePraxisI18nConfig, providePraxisI18nTranslator, providePraxisIconDefaults, providePraxisJsonLogicOperator, providePraxisJsonLogicOperatorOverride, providePraxisLegalNoticeMetadata, providePraxisLoadingDefaults, providePraxisLogging, providePraxisRelatedResourceOutletMetadata, providePraxisRichTextBlockMetadata, providePraxisTelemetry, providePraxisToastGlobalActions, providePraxisUserContextSummaryMetadata, provideRemoteGlobalConfig, readPraxisExportValue, reconcileFilterConfig, reconcileFormConfig, reconcileTableConfig, registerPraxisRuntimeComponentObservation, removeDiacritics, renderPraxisPresentationVisualizationHtml, reportTelemetryHookFactory, requiredCheckedValidator, requiredPresenceValidator, resolveBuiltinPresets, resolveColumnTypeFromFieldDefinition, resolveControlTypeAlias, resolveDateRangeShortcutPreset, resolveDateRangeShortcutPresets, resolveDefaultValuePresentationFormat, resolveEntityLookupPayloadMode, resolveFieldPresentation, resolveGroupedCommandPartialRowSpans, resolveHidden, resolveInlineFilterControlType, resolveInlineFilterControlTypeToBaseControlType, resolveLoggerConfig, resolveObservabilityOptions, resolveOffset, resolveOrder, resolvePraxisCollectionExportItems, resolvePraxisExportFields, resolvePraxisExportScope, resolvePraxisFilterCriteria, resolvePraxisI18nDocument, resolveResourceAvailabilityReasonKey, resolveResourceIdentityContract, resolveSpan, resolveTextMaskFormat, resolveTextMaskFormatFromFieldDefinition, resolveValuePresentation, resolveValuePresentationLocale, serializeEntityLookupValueForPayload, serializeOptionSourceFilterRequest, serializePraxisCollectionToCsv, serializePraxisCollectionToExcel, serializePraxisCollectionToJson, slugify, staticDateRangePresetToPreset, stripMasksHook, supportsConfigDocuments, supportsImplicitValuePresentation, syncWithServerMetadata, textSha256, toCamel, toCapitalize, toKebab, toPascal, toSentenceCase, toSnake, toTitleCase, translateResourceAvailabilityReason, translateResourceDiscoveryText, translateSurfaceNavigationRejected, translateUnavailableWorkflowMessage, trim, uniqueAsyncValidator, urlValidator, validateGlobalActionRef, validateGlobalActionRefs, withFormConfigSections, withMessage, withPraxisHttpLoading };
|