@api-client/core 0.20.2 → 0.20.4
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/build/src/modeling/Semantics.d.ts +0 -252
- package/build/src/modeling/Semantics.d.ts.map +1 -1
- package/build/src/modeling/Semantics.js +0 -356
- package/build/src/modeling/Semantics.js.map +1 -1
- package/build/src/modeling/ai/tools/Semantic.tools.d.ts +0 -3
- package/build/src/modeling/ai/tools/Semantic.tools.d.ts.map +1 -1
- package/build/src/modeling/types.d.ts +50 -0
- package/build/src/modeling/types.d.ts.map +1 -1
- package/build/src/modeling/types.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -4
- package/src/modeling/Semantics.ts +40 -520
- package/src/modeling/types.ts +52 -0
- package/tests/unit/modeling/client_ip_address_semantic.spec.ts +0 -22
- package/tests/unit/modeling/semantics.spec.ts +0 -65
- package/tests/unit/modeling/username_semantic.spec.ts +0 -32
- package/build/src/runtime/modeling/Semantics.d.ts +0 -84
- package/build/src/runtime/modeling/Semantics.d.ts.map +0 -1
- package/build/src/runtime/modeling/Semantics.js +0 -124
- package/build/src/runtime/modeling/Semantics.js.map +0 -1
- package/src/runtime/modeling/Semantics.ts +0 -196
- package/tests/unit/modeling/semantic_runtime.spec.ts +0 -113
|
@@ -289,246 +289,6 @@ export declare enum SemanticCategory {
|
|
|
289
289
|
*/
|
|
290
290
|
Computed = "Computed Values"
|
|
291
291
|
}
|
|
292
|
-
/**
|
|
293
|
-
* Defines when a semantic should execute in relation to database operations.
|
|
294
|
-
*/
|
|
295
|
-
export declare enum SemanticTiming {
|
|
296
|
-
/**
|
|
297
|
-
* Execute before the database operation (validation, preprocessing)
|
|
298
|
-
*/
|
|
299
|
-
Before = "Before",
|
|
300
|
-
/**
|
|
301
|
-
* Execute after the database operation (cleanup, notifications, derived values)
|
|
302
|
-
*/
|
|
303
|
-
After = "After",
|
|
304
|
-
/**
|
|
305
|
-
* Execute both before and after the operation
|
|
306
|
-
*/
|
|
307
|
-
Both = "Both",
|
|
308
|
-
/**
|
|
309
|
-
* No automatic execution (manual/on-demand only)
|
|
310
|
-
*/
|
|
311
|
-
None = "None"
|
|
312
|
-
}
|
|
313
|
-
/**
|
|
314
|
-
* Defines which database operations can trigger a semantic.
|
|
315
|
-
*/
|
|
316
|
-
export declare enum SemanticOperation {
|
|
317
|
-
Create = "Create",
|
|
318
|
-
Read = "Read",
|
|
319
|
-
Update = "Update",
|
|
320
|
-
Delete = "Delete",
|
|
321
|
-
/**
|
|
322
|
-
* Special operation for list operations
|
|
323
|
-
*/
|
|
324
|
-
List = "List",
|
|
325
|
-
/**
|
|
326
|
-
* Special operation for search operations
|
|
327
|
-
*/
|
|
328
|
-
Search = "Search"
|
|
329
|
-
}
|
|
330
|
-
/**
|
|
331
|
-
* Defines the execution mode for a semantic.
|
|
332
|
-
*/
|
|
333
|
-
export declare enum SemanticExecutionMode {
|
|
334
|
-
/**
|
|
335
|
-
* Execute synchronously as part of the main operation
|
|
336
|
-
*/
|
|
337
|
-
Synchronous = "Synchronous",
|
|
338
|
-
/**
|
|
339
|
-
* Execute asynchronously after the main operation
|
|
340
|
-
*/
|
|
341
|
-
Asynchronous = "Asynchronous",
|
|
342
|
-
/**
|
|
343
|
-
* Execute in background/queue (fire and forget)
|
|
344
|
-
*/
|
|
345
|
-
Background = "Background"
|
|
346
|
-
}
|
|
347
|
-
/**
|
|
348
|
-
* Defines validation strategies for semantics.
|
|
349
|
-
*/
|
|
350
|
-
export declare enum SemanticValidationStrategy {
|
|
351
|
-
/**
|
|
352
|
-
* Fail the operation if semantic validation fails
|
|
353
|
-
*/
|
|
354
|
-
Strict = "Strict",
|
|
355
|
-
/**
|
|
356
|
-
* Log warnings but continue operation
|
|
357
|
-
*/
|
|
358
|
-
Warning = "Warning",
|
|
359
|
-
/**
|
|
360
|
-
* Skip validation entirely
|
|
361
|
-
*/
|
|
362
|
-
Skip = "Skip"
|
|
363
|
-
}
|
|
364
|
-
/**
|
|
365
|
-
* Defines caching strategies for computed semantics.
|
|
366
|
-
*/
|
|
367
|
-
export declare enum SemanticCacheStrategy {
|
|
368
|
-
/**
|
|
369
|
-
* No caching - always compute
|
|
370
|
-
*/
|
|
371
|
-
None = "None",
|
|
372
|
-
/**
|
|
373
|
-
* Cache until dependent fields change
|
|
374
|
-
*/
|
|
375
|
-
Dependency = "Dependency",
|
|
376
|
-
/**
|
|
377
|
-
* Cache with TTL expiration
|
|
378
|
-
*/
|
|
379
|
-
TimeToLive = "TimeToLive",
|
|
380
|
-
/**
|
|
381
|
-
* Cache until manually invalidated
|
|
382
|
-
*/
|
|
383
|
-
Manual = "Manual"
|
|
384
|
-
}
|
|
385
|
-
/**
|
|
386
|
-
* Configuration for when and how a semantic should execute at runtime.
|
|
387
|
-
*/
|
|
388
|
-
export interface SemanticRuntimeConfig {
|
|
389
|
-
/**
|
|
390
|
-
* When the semantic should execute relative to the database operation.
|
|
391
|
-
*/
|
|
392
|
-
timing: SemanticTiming;
|
|
393
|
-
/**
|
|
394
|
-
* Which database operations should trigger this semantic.
|
|
395
|
-
*/
|
|
396
|
-
operations: SemanticOperation[];
|
|
397
|
-
/**
|
|
398
|
-
* Priority order for execution when multiple semantics apply.
|
|
399
|
-
* Lower numbers execute first. Default is 100.
|
|
400
|
-
*/
|
|
401
|
-
priority?: number;
|
|
402
|
-
/**
|
|
403
|
-
* Whether this semantic can be disabled at the entity/property level.
|
|
404
|
-
*/
|
|
405
|
-
canDisable?: boolean;
|
|
406
|
-
/**
|
|
407
|
-
* How the semantic should execute (sync/async/background).
|
|
408
|
-
* Default is Synchronous.
|
|
409
|
-
* @default Synchronous
|
|
410
|
-
*/
|
|
411
|
-
executionMode?: SemanticExecutionMode;
|
|
412
|
-
/**
|
|
413
|
-
* Validation strategy when semantic processing fails.
|
|
414
|
-
* Default is Strict.
|
|
415
|
-
* @default Strict
|
|
416
|
-
*/
|
|
417
|
-
validationStrategy?: SemanticValidationStrategy;
|
|
418
|
-
/**
|
|
419
|
-
* Maximum execution time in milliseconds before timeout.
|
|
420
|
-
* Default is 5000ms for sync, 30000ms for async.
|
|
421
|
-
* @default 5000 for sync, 30000 for async
|
|
422
|
-
*/
|
|
423
|
-
timeoutMs?: number;
|
|
424
|
-
/**
|
|
425
|
-
* Number of retry attempts on failure.
|
|
426
|
-
* Default is 0 (no retries).
|
|
427
|
-
* @default 0
|
|
428
|
-
*/
|
|
429
|
-
retryAttempts?: number;
|
|
430
|
-
/**
|
|
431
|
-
* Dependencies on other semantics that must execute first.
|
|
432
|
-
* Uses semantic IDs.
|
|
433
|
-
*/
|
|
434
|
-
dependencies?: SemanticType[];
|
|
435
|
-
/**
|
|
436
|
-
* Fields that this semantic depends on for computation.
|
|
437
|
-
* Used for cache invalidation and optimization.
|
|
438
|
-
*/
|
|
439
|
-
dependentFields?: string[];
|
|
440
|
-
/**
|
|
441
|
-
* Caching strategy for computed/derived values.
|
|
442
|
-
*/
|
|
443
|
-
cacheStrategy?: SemanticCacheStrategy;
|
|
444
|
-
/**
|
|
445
|
-
* Cache TTL in seconds (only used with TimeToLive strategy).
|
|
446
|
-
*/
|
|
447
|
-
cacheTtlSeconds?: number;
|
|
448
|
-
/**
|
|
449
|
-
* Whether this semantic should run in transactions.
|
|
450
|
-
* Default is true.
|
|
451
|
-
*/
|
|
452
|
-
transactional?: boolean;
|
|
453
|
-
/**
|
|
454
|
-
* Rate limiting configuration for expensive operations.
|
|
455
|
-
*/
|
|
456
|
-
rateLimit?: SemanticRateLimit;
|
|
457
|
-
/**
|
|
458
|
-
* Conditional execution based on data or context.
|
|
459
|
-
*/
|
|
460
|
-
conditions?: SemanticCondition[];
|
|
461
|
-
/**
|
|
462
|
-
* Audit and logging configuration.
|
|
463
|
-
*/
|
|
464
|
-
audit?: SemanticAudit;
|
|
465
|
-
}
|
|
466
|
-
export interface SemanticRateLimit {
|
|
467
|
-
/**
|
|
468
|
-
* Maximum executions per time window.
|
|
469
|
-
*/
|
|
470
|
-
maxExecutions: number;
|
|
471
|
-
/**
|
|
472
|
-
* Time window in seconds.
|
|
473
|
-
*/
|
|
474
|
-
windowSeconds: number;
|
|
475
|
-
/**
|
|
476
|
-
* Strategy when rate limit is exceeded.
|
|
477
|
-
*/
|
|
478
|
-
strategy: 'queue' | 'drop' | 'error';
|
|
479
|
-
}
|
|
480
|
-
export interface SemanticCondition {
|
|
481
|
-
/**
|
|
482
|
-
* JEXL expression that must evaluate to true for execution.
|
|
483
|
-
* Has access to entity data, user context, and semantic field references.
|
|
484
|
-
*
|
|
485
|
-
* Available context variables:
|
|
486
|
-
* - `entity`: The entity data being processed
|
|
487
|
-
* - `user`: Current user context (if authenticated)
|
|
488
|
-
* - `operation`: The current operation (Create, Update, etc.)
|
|
489
|
-
* - `semantics`: Object with semantic field accessors
|
|
490
|
-
*
|
|
491
|
-
* Semantic field references use dot notation:
|
|
492
|
-
* - `semantics.CreatedTimestamp` - field with CreatedTimestamp semantic
|
|
493
|
-
* - `semantics.Password` - field with Password semantic
|
|
494
|
-
* - `semantics.User` - entity with User semantic (for associations)
|
|
495
|
-
*
|
|
496
|
-
* @example
|
|
497
|
-
* // Only set timestamp if not already provided
|
|
498
|
-
* "semantics.CreatedTimestamp == null"
|
|
499
|
-
*
|
|
500
|
-
* @example
|
|
501
|
-
* // Only apply to authenticated users
|
|
502
|
-
* "user != null && user.authenticated == true"
|
|
503
|
-
*
|
|
504
|
-
* @example
|
|
505
|
-
* // Only hash password if it's a plain text (not already hashed)
|
|
506
|
-
* "entity[semantics.Password] != null && !entity[semantics.Password].startsWith('$')"
|
|
507
|
-
*
|
|
508
|
-
* @example
|
|
509
|
-
* // Only generate slug if title exists
|
|
510
|
-
* "entity[semantics.Title] != null && entity[semantics.Title].length > 0"
|
|
511
|
-
*/
|
|
512
|
-
expression: string;
|
|
513
|
-
/**
|
|
514
|
-
* Description of when this semantic should run.
|
|
515
|
-
*/
|
|
516
|
-
description: string;
|
|
517
|
-
}
|
|
518
|
-
export interface SemanticAudit {
|
|
519
|
-
/**
|
|
520
|
-
* Whether to log semantic execution.
|
|
521
|
-
*/
|
|
522
|
-
logExecution: boolean;
|
|
523
|
-
/**
|
|
524
|
-
* Whether to log input/output data.
|
|
525
|
-
*/
|
|
526
|
-
logData: boolean;
|
|
527
|
-
/**
|
|
528
|
-
* Retention period for audit logs in days.
|
|
529
|
-
*/
|
|
530
|
-
retentionDays: number;
|
|
531
|
-
}
|
|
532
292
|
/**
|
|
533
293
|
* A base interface for all Data Semantics, containing common properties.
|
|
534
294
|
* A semantic is an annotation applied to a Data Entity, Property, or Association
|
|
@@ -561,10 +321,6 @@ interface BaseDataSemantic {
|
|
|
561
321
|
* This is used to determine if the semantic requires additional setup or configuration.
|
|
562
322
|
*/
|
|
563
323
|
hasConfig: boolean;
|
|
564
|
-
/**
|
|
565
|
-
* Runtime execution configuration for this semantic.
|
|
566
|
-
*/
|
|
567
|
-
runtime: SemanticRuntimeConfig;
|
|
568
324
|
}
|
|
569
325
|
/**
|
|
570
326
|
* Represents a semantic that can be applied to an entire Data Entity.
|
|
@@ -610,14 +366,6 @@ export type DataSemantic = EntitySemantic | PropertySemantic | AssociationSemant
|
|
|
610
366
|
* This acts as a central registry for the application.
|
|
611
367
|
*/
|
|
612
368
|
export declare const DataSemantics: Record<SemanticType, DataSemantic>;
|
|
613
|
-
/**
|
|
614
|
-
* Get all semantics that should run for a specific operation and timing
|
|
615
|
-
*/
|
|
616
|
-
export declare function getSemanticsForOperation(semantics: AppliedDataSemantic[], operation: SemanticOperation, timing: SemanticTiming): AppliedDataSemantic[];
|
|
617
|
-
/**
|
|
618
|
-
* Check if a specific semantic can be disabled at runtime
|
|
619
|
-
*/
|
|
620
|
-
export declare function canSemanticBeDisabled(semanticType: SemanticType): boolean;
|
|
621
369
|
export declare function getSemanticsByCategory(): Record<SemanticCategory, DataSemantic[]>;
|
|
622
370
|
export declare function getSemanticsByCategory(scope: SemanticScope.Entity): Record<SemanticCategory, EntitySemantic[]>;
|
|
623
371
|
export declare function getSemanticsByCategory(scope: SemanticScope.Property): Record<SemanticCategory, PropertySemantic[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Semantics.d.ts","sourceRoot":"","sources":["../../../src/modeling/Semantics.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEzD;;;GAGG;AACH,oBAAY,YAAY;IAKtB;;OAEG;IACH,IAAI,kBAAkB;IACtB;;OAEG;IACH,OAAO,qBAAqB;IAM5B;;;;OAIG;IACH,QAAQ,sBAAsB;IAC9B;;;;;OAKG;IACH,QAAQ,sBAAsB;IAC9B;;;OAGG;IACH,gBAAgB,8BAA8B;IAC9C;;;OAGG;IACH,gBAAgB,8BAA8B;IAC9C;;;;;OAKG;IACH,gBAAgB,8BAA8B;IAC9C;;;;OAIG;IACH,WAAW,yBAAyB;IACpC;;;;;;;OAOG;IACH,gBAAgB,8BAA8B;IAC9C;;;;OAIG;IACH,KAAK,mBAAmB;IACxB;;;;OAIG;IACH,IAAI,kBAAkB;IACtB;;;;;;OAMG;IACH,QAAQ,sBAAsB;IAC9B;;;;;;;;;OASG;IACH,MAAM,oBAAoB;IAE1B;;;;OAIG;IACH,OAAO,qBAAqB;IAE5B;;;OAGG;IACH,QAAQ,sBAAsB;IAE9B;;;OAGG;IACH,OAAO,qBAAqB;IAE5B;;;;;;OAMG;IACH,QAAQ,sBAAsB;IAE9B;;;;;;OAMG;IACH,IAAI,kBAAkB;IAEtB;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,mCAAmC;IAExD;;OAEG;IACH,KAAK,mBAAmB;IACxB;;OAEG;IACH,KAAK,mBAAmB;IACxB;;;;;;;OAOG;IACH,QAAQ,sBAAsB;IAC9B;;OAEG;IACH,GAAG,iBAAiB;IACpB;;;;OAIG;IACH,GAAG,iBAAiB;IACpB;;OAEG;IACH,WAAW,yBAAyB;IACpC;;OAEG;IACH,OAAO,qBAAqB;IAC5B;;OAEG;IACH,UAAU,wBAAwB;IAClC;;OAEG;IACH,OAAO,qBAAqB;IAC5B;;;OAGG;IACH,eAAe,6BAA6B;IAC5C;;OAEG;IACH,aAAa,2BAA2B;IACxC;;OAEG;IACH,yBAAyB,uCAAuC;IAChE;;OAEG;IACH,IAAI,kBAAkB;IACtB;;OAEG;IACH,UAAU,wBAAwB;IAClC;;OAEG;IACH,OAAO,qBAAqB;IAC5B;;OAEG;IACH,MAAM,oBAAoB;IAM1B;;;;;;;;OAQG;IACH,uBAAuB,qCAAqC;IAC5D;;;;OAIG;IACH,IAAI,kBAAkB;IACtB;;;;OAIG;IACH,UAAU,wBAAwB;CACnC;AAED;;GAEG;AACH,oBAAY,aAAa;IACvB;;;OAGG;IACH,MAAM,WAAW;IACjB;;;OAGG;IACH,QAAQ,aAAa;IACrB;;;OAGG;IACH,WAAW,gBAAgB;CAC5B;AAED;;GAEG;AACH,oBAAY,gBAAgB;IAC1B;;OAEG;IACH,QAAQ,8BAA8B;IACtC;;OAEG;IACH,SAAS,4BAA4B;IACrC;;OAEG;IACH,OAAO,oBAAoB;IAC3B;;OAEG;IACH,QAAQ,kBAAkB;IAC1B;;OAEG;IACH,YAAY,kCAAkC;IAC9C;;OAEG;IACH,QAAQ,yBAAyB;IACjC;;OAEG;IACH,OAAO,wBAAwB;IAC/B;;OAEG;IACH,QAAQ,oBAAoB;CAC7B;AAED
|
|
1
|
+
{"version":3,"file":"Semantics.d.ts","sourceRoot":"","sources":["../../../src/modeling/Semantics.ts"],"names":[],"mappings":"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"}
|