@milaboratories/pl-client 2.4.21 → 2.5.1

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.
@@ -0,0 +1,9 @@
1
+ import { BasicResourceData, ResourceData } from './types';
2
+ export type ResourceDataCacheRecord = {
3
+ /** There is a slight chance of inconsistent data retrieval from tx if we allow later transactions to leak resource data into earlier transactions.
4
+ * This field allows to prevent this. */
5
+ cacheTxOpenTimestamp: number;
6
+ data: ResourceData | undefined;
7
+ readonly basicData: BasicResourceData;
8
+ };
9
+ //# sourceMappingURL=cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/core/cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,MAAM,uBAAuB,GAAG;IACpC;4CACwC;IACxC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,YAAY,GAAG,SAAS,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;CACvC,CAAC"}
@@ -6,6 +6,7 @@ import { RetryOptions } from '@milaboratories/ts-helpers';
6
6
  import { PlDriver, PlDriverDefinition } from './driver';
7
7
  import { MaintenanceAPI_Ping_Response } from '../proto/github.com/milaboratory/pl/plapi/plapiproto/api';
8
8
  import { Dispatcher } from 'undici';
9
+ import { FinalResourceDataPredicate } from './final';
9
10
  export type TxOps = PlCallOps & {
10
11
  sync?: boolean;
11
12
  retryOptions?: RetryOptions;
@@ -24,6 +25,10 @@ export declare class PlClient {
24
25
  /** Stores client root (this abstraction is intended for future implementation of the security model)*/
25
26
  private _clientRoot;
26
27
  private _serverInfo;
28
+ /** This function determines whether resource data can be cached */
29
+ readonly finalPredicate: FinalResourceDataPredicate;
30
+ /** Resource data cache, to minimize redundant data rereading from remote db */
31
+ private readonly resourceDataCache;
27
32
  private constructor();
28
33
  ping(): Promise<MaintenanceAPI_Ping_Response>;
29
34
  get conf(): PlClientConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAC/E,OAAO,EAAc,SAAS,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAkB,aAAa,EAAwC,MAAM,eAAe,CAAC;AAEpG,OAAO,EAKL,UAAU,EACX,MAAM,SAAS,CAAC;AAEjB,OAAO,EAIL,YAAY,EACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,0DAA0D,CAAC;AAExG,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,MAAM,MAAM,KAAK,GAAG,SAAS,GAAG;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAYF,oCAAoC;AACpC,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAa;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IAEvD;sFACkF;IAClF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC,sEAAsE;IACtE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IAEpC,sEAAsE;IACtE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAe;IAEnD,uGAAuG;IACvG,OAAO,CAAC,WAAW,CAAsC;IAEzD,OAAO,CAAC,WAAW,CAAuD;IAE1E,OAAO;IAmCM,IAAI,IAAI,OAAO,CAAC,4BAA4B,CAAC;IAI1D,IAAW,IAAI,IAAI,cAAc,CAEhC;IAED,IAAW,cAAc,IAAI,UAAU,CAEtC;IAED,OAAO,KAAK,WAAW,GAEtB;IAED,OAAO,CAAC,gBAAgB;IAIxB,IAAW,UAAU,IAAI,UAAU,CAGlC;IAED,IAAW,UAAU,IAAI,4BAA4B,CAGpD;IAED,sFAAsF;IACzE,IAAI;IA8CjB,oCAAoC;IACvB,qBAAqB,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAgBnE,OAAO;YAgEP,MAAM;IAUP,WAAW,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EACvC,GAAG,GAAE,OAAO,CAAC,KAAK,CAAM,GACvB,OAAO,CAAC,CAAC,CAAC;IAIA,UAAU,CAAC,CAAC,EACvB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EACvC,GAAG,GAAE,OAAO,CAAC,KAAK,CAAM,GACvB,OAAO,CAAC,CAAC,CAAC;IAIN,SAAS,CAAC,GAAG,SAAS,QAAQ,EAAE,UAAU,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,GAAG;IAQhF,kCAAkC;IACrB,KAAK;WAIE,IAAI,CACtB,eAAe,EAAE,cAAc,GAAG,MAAM,EACxC,IAAI,EAAE,OAAO,EACb,GAAG,GAAE;QACH,cAAc,CAAC,EAAE,0BAA0B,CAAC;KACxC;CAMT"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/core/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAC/E,OAAO,EAAc,SAAS,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAkB,aAAa,EAAwC,MAAM,eAAe,CAAC;AAEpG,OAAO,EAKL,UAAU,EACX,MAAM,SAAS,CAAC;AAEjB,OAAO,EAIL,YAAY,EACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,0DAA0D,CAAC;AAExG,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAGpC,OAAO,EAAqC,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAExF,MAAM,MAAM,KAAK,GAAG,SAAS,GAAG;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B,CAAC;AAYF,oCAAoC;AACpC,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAa;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IAEvD;sFACkF;IAClF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC,sEAAsE;IACtE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IAEpC,sEAAsE;IACtE,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAe;IAEnD,uGAAuG;IACvG,OAAO,CAAC,WAAW,CAAsC;IAEzD,OAAO,CAAC,WAAW,CAAuD;IAM1E,mEAAmE;IACnE,SAAgB,cAAc,EAAE,0BAA0B,CAAC;IAE3D,+EAA+E;IAC/E,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAgD;IAElF,OAAO;IAyCM,IAAI,IAAI,OAAO,CAAC,4BAA4B,CAAC;IAI1D,IAAW,IAAI,IAAI,cAAc,CAEhC;IAED,IAAW,cAAc,IAAI,UAAU,CAEtC;IAED,OAAO,KAAK,WAAW,GAEtB;IAED,OAAO,CAAC,gBAAgB;IAIxB,IAAW,UAAU,IAAI,UAAU,CAGlC;IAED,IAAW,UAAU,IAAI,4BAA4B,CAGpD;IAED,sFAAsF;IACzE,IAAI;IA8CjB,oCAAoC;IACvB,qBAAqB,CAAC,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAgBnE,OAAO;YAuEP,MAAM;IAUP,WAAW,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EACvC,GAAG,GAAE,OAAO,CAAC,KAAK,CAAM,GACvB,OAAO,CAAC,CAAC,CAAC;IAIA,UAAU,CAAC,CAAC,EACvB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,EACvC,GAAG,GAAE,OAAO,CAAC,KAAK,CAAM,GACvB,OAAO,CAAC,CAAC,CAAC;IAIN,SAAS,CAAC,GAAG,SAAS,QAAQ,EAAE,UAAU,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,GAAG;IAQhF,kCAAkC;IACrB,KAAK;WAIE,IAAI,CACtB,eAAe,EAAE,cAAc,GAAG,MAAM,EACxC,IAAI,EAAE,OAAO,EACb,GAAG,GAAE;QACH,cAAc,CAAC,EAAE,0BAA0B,CAAC;KACxC;CAMT"}
@@ -33,6 +33,8 @@ export interface PlClientConfig {
33
33
  txDelay: number;
34
34
  /** Last resort measure to solve complicated race conditions in pl. */
35
35
  forceSync: boolean;
36
+ /** Maximal number of bytes of resource state to cache */
37
+ maxCacheBytes: number;
36
38
  /**
37
39
  * What type of backoff strategy to use in transaction retries
38
40
  * (pl uses optimistic transaction model with regular retries in write transactions)
@@ -53,6 +55,7 @@ export declare const DEFAULT_REQUEST_TIMEOUT = 2000;
53
55
  export declare const DEFAULT_TX_TIMEOUT = 30000;
54
56
  export declare const DEFAULT_TOKEN_TTL_SECONDS: number;
55
57
  export declare const DEFAULT_AUTH_MAX_REFRESH: number;
58
+ export declare const DEFAULT_MAX_CACHE_BYTES = 35000000;
56
59
  export declare const DEFAULT_RETRY_BACKOFF_ALGORITHM = "exponential";
57
60
  export declare const DEFAULT_RETRY_MAX_ATTEMPTS = 10;
58
61
  export declare const DEFAULT_RETRY_INITIAL_DELAY = 4;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,MAAM,WAAW,cAAc;IAC7B,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IAEpB;sBACkB;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;8BAC0B;IAI1B,GAAG,EAAE,OAAO,CAAC;IAEb,4EAA4E;IAC5E,qBAAqB,EAAE,MAAM,CAAC;IAC9B;sCACkC;IAClC,yBAAyB,EAAE,MAAM,CAAC;IAElC;uBACmB;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB;0BACsB;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAE9B,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;sBACkB;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,yGAAyG;IACzG,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yGAAyG;IACzG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;sFACkF;IAClF,OAAO,EAAE,MAAM,CAAC;IAEhB,sEAAsE;IACtE,SAAS,EAAE,OAAO,CAAC;IAMnB;;;SAGK;IACL,qBAAqB,EAAE,aAAa,GAAG,QAAQ,CAAC;IAChD,oCAAoC;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,6FAA6F;IAC7F,iCAAiC,EAAE,MAAM,CAAC;IAC1C,2FAA2F;IAC3F,sBAAsB,EAAE,MAAM,CAAC;IAC/B,8HAA8H;IAC9H,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAC5C,eAAO,MAAM,kBAAkB,QAAS,CAAC;AACzC,eAAO,MAAM,yBAAyB,QAAoB,CAAC;AAC3D,eAAO,MAAM,wBAAwB,QAAoB,CAAC;AAE1D,eAAO,MAAM,+BAA+B,gBAAgB,CAAC;AAC7D,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,4CAA4C,IAAI,CAAC;AAC9D,eAAO,MAAM,iCAAiC,KAAK,CAAC;AACpD,eAAO,MAAM,oBAAoB,MAAM,CAAC;AAExC,KAAK,iBAAiB,GAAG,OAAO,CAC9B,IAAI,CACF,cAAc,EACd,KAAK,GAAG,uBAAuB,GAAG,2BAA2B,GAAG,WAAW,GAAG,WAAW,CAC1F,CACF,CAAC;AASF;0DAC0D;AAC1D,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,iBAAsB,GAChC,cAAc,CAoEhB;AAED;;;KAGK;AACL,MAAM,WAAW,eAAe;IAC9B,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,wBAAwB,EAAE,eAAoB,CAAC;AAE5D,kEAAkE;AAClE,MAAM,WAAW,OAAO;IACtB,wCAAwC;IACxC,eAAe,EAAE,eAAe,CAAC;IACjC,0EAA0E;IAC1E,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IACvD,oFAAoF;IACpF,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,gEAAgE;IAChE,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD;AAED,yBAAyB;AACzB,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAE3E,wEAAwE;AACxE,MAAM,MAAM,0BAA0B,GAAG,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { Optional } from 'utility-types';
2
+ import { ResourceData } from './types';
3
+ /**
4
+ * Function is used to guide multiple layers of caching in pl-client and derived pl-tree.
5
+ *
6
+ * This function defines expected resource-specific state mutation behaviour,
7
+ * if it returns true, system will expect that this data will never change as long as resource exist.
8
+ *
9
+ * If resource data contain information about fields, if should be taken into account, fields are undefined,
10
+ * "final" state should be calculated for "basic" part of resource data only.
11
+ */
12
+ export type FinalResourceDataPredicate = (resourceData: Optional<ResourceData, 'fields'>) => boolean;
13
+ /** Default implementation, defining behaviour for built-in resource types. */
14
+ export declare const DefaultFinalResourceDataPredicate: FinalResourceDataPredicate;
15
+ //# sourceMappingURL=final.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"final.d.ts","sourceRoot":"","sources":["../../src/core/final.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAA4D,YAAY,EAAE,MAAM,SAAS,CAAC;AAEjG;;;;;;;;GAQG;AACH,MAAM,MAAM,0BAA0B,GAAG,CACvC,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,KAC3C,OAAO,CAAC;AAoBb,8EAA8E;AAC9E,eAAO,MAAM,iCAAiC,EAAE,0BAgD/C,CAAC"}
@@ -1,5 +1,8 @@
1
1
  import { AnyResourceId, LocalResourceId, OptionalResourceId, BasicResourceData, FieldData, FieldType, ResourceData, ResourceId, ResourceType, FutureFieldType } from './types';
2
2
  import { LLPlTransaction } from './ll_transaction';
3
+ import { FinalResourceDataPredicate } from './final';
4
+ import { LRUCache } from 'lru-cache';
5
+ import { ResourceDataCacheRecord } from './cache';
3
6
  /** Reference to resource, used only within transaction */
4
7
  export interface ResourceRef {
5
8
  /** Global resource id of newly created resources, become available only
@@ -57,8 +60,12 @@ export declare class PlTransaction {
57
60
  readonly name: string;
58
61
  readonly writable: boolean;
59
62
  private readonly _clientRoot;
63
+ private readonly finalPredicate;
64
+ private readonly sharedResourceDataCache;
60
65
  private readonly globalTxId;
61
66
  private readonly localTxId;
67
+ /** Used in caching */
68
+ private readonly txOpenTimestamp;
62
69
  private localResourceIdCounter;
63
70
  /** Store logical tx open / closed state to prevent invalid sequence of requests.
64
71
  * True means output stream was completed.
@@ -68,7 +75,7 @@ export declare class PlTransaction {
68
75
  * This is done to save number of round-trips. Next operation producing result will also await those
69
76
  * pending ops, to throw any pending errors. */
70
77
  private pendingVoidOps;
71
- constructor(ll: LLPlTransaction, name: string, writable: boolean, _clientRoot: OptionalResourceId);
78
+ constructor(ll: LLPlTransaction, name: string, writable: boolean, _clientRoot: OptionalResourceId, finalPredicate: FinalResourceDataPredicate, sharedResourceDataCache: LRUCache<ResourceId, ResourceDataCacheRecord>);
72
79
  private drainAndAwaitPendingOps;
73
80
  private sendSingleAndParse;
74
81
  private sendMultiAndParse;
@@ -96,9 +103,18 @@ export declare class PlTransaction {
96
103
  checkResourceNameExists(name: string): Promise<boolean>;
97
104
  removeResource(rId: ResourceId): void;
98
105
  resourceExists(rId: ResourceId): Promise<boolean>;
106
+ /** This method may return stale resource state from cache if resource was removed */
99
107
  getResourceData(rId: AnyResourceRef, loadFields: true): Promise<ResourceData>;
108
+ /** This method may return stale resource state from cache if resource was removed */
100
109
  getResourceData(rId: AnyResourceRef, loadFields: false): Promise<BasicResourceData>;
110
+ /** This method may return stale resource state from cache if resource was removed */
101
111
  getResourceData(rId: AnyResourceRef, loadFields: boolean): Promise<BasicResourceData | ResourceData>;
112
+ /** This method may return stale resource state from cache if ignoreCache == false if resource was removed */
113
+ getResourceData(rId: AnyResourceRef, loadFields: true, ignoreCache: boolean): Promise<ResourceData>;
114
+ /** This method may return stale resource state from cache if ignoreCache == false if resource was removed */
115
+ getResourceData(rId: AnyResourceRef, loadFields: false, ignoreCache: boolean): Promise<BasicResourceData>;
116
+ /** This method may return stale resource state from cache if ignoreCache == false if resource was removed */
117
+ getResourceData(rId: AnyResourceRef, loadFields: boolean, ignoreCache: boolean): Promise<BasicResourceData | ResourceData>;
102
118
  getResourceDataIfExists(rId: AnyResourceRef, loadFields: true): Promise<ResourceData | undefined>;
103
119
  getResourceDataIfExists(rId: AnyResourceRef, loadFields: false): Promise<BasicResourceData | undefined>;
104
120
  getResourceDataIfExists(rId: AnyResourceRef, loadFields: boolean): Promise<BasicResourceData | ResourceData | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/core/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/core/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAGb,eAAe,EAEf,kBAAkB,EAClB,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,eAAe,EAGhB,MAAM,SAAS,CAAC;AACjB,OAAO,EAEL,eAAe,EAGhB,MAAM,kBAAkB,CAAC;AAO1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAElD,0DAA0D;AAC1D,MAAM,WAAW,WAAW;IAC1B;4EACwE;IACxE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvC;qDACiD;IACjD,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;CACnC;AAED,uDAAuD;AACvD,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,QAAQ,CAAC,GAAG;IACpB,yBAAyB;IACzB,UAAU,EAAE,GAAG,CAAC;IAChB,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC3C,MAAM,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC7C,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;AACrD,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,YAAY,CAAC;AAEhD,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,UAAU,CAAC;AACtD,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;AACnD,MAAM,MAAM,MAAM,GAAG,cAAc,GAAG,WAAW,CAAC;AAElD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,WAAW,CAEvD;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,cAAc,CAI7D;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,GAAG,IAAI,QAAQ,CAE5D;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,cAAc,GAAG,GAAG,IAAI,WAAW,CAErE;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,WAAW,GAAG,UAAU,CAGtD;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAIxE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,cAAc,GAAG,aAAa,CAG/D;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAGjF;AAED,wBAAgB,KAAK,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,CAEhF;AAED,0DAA0D;AAC1D,qBAAa,gBAAiB,SAAQ,KAAK;CAAG;AAW9C;;;;;;;KAOK;AACL,qBAAa,aAAa;IAoBtB,OAAO,CAAC,QAAQ,CAAC,EAAE;aACH,IAAI,EAAE,MAAM;aACZ,QAAQ,EAAE,OAAO;IACjC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IAxB1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAyC;IAEnE,sBAAsB;IACtB,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAc;IAE9C,OAAO,CAAC,sBAAsB,CAAK;IAEnC;;8HAE0H;IAC1H,OAAO,CAAC,UAAU,CAAS;IAE3B;;mDAE+C;IAC/C,OAAO,CAAC,cAAc,CAAuB;gBAG1B,EAAE,EAAE,eAAe,EACpB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,EAChB,WAAW,EAAE,kBAAkB,EAC/B,cAAc,EAAE,0BAA0B,EAC1C,uBAAuB,EAAE,QAAQ,CAAC,UAAU,EAAE,uBAAuB,CAAC;YAiB3E,uBAAuB;YAUvB,kBAAkB;YAalB,iBAAiB;YAajB,YAAY;IAM1B,6EAA6E;IAC7E,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,WAAW;IAInB,IAAW,SAAS,YAEnB;IAED;2BACuB;IACV,MAAM;IAkCN,OAAO;IAuBpB,IAAW,UAAU,IAAI,UAAU,CAElC;IAMM,eAAe,CACpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,YAAY,EAClB,aAAa,GAAE,OAAe,GAC7B,WAAW;IAmBD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IACnE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAiBtF,OAAO,CAAC,cAAc;IAYf,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,WAAW;IAQ3C,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,WAAW;IAezE,eAAe,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,WAAW;IAe5E,WAAW,CAChB,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,UAAU,GAAG,MAAM,EACzB,aAAa,GAAE,OAAe,GAC7B,WAAW;IAgBP,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI;IAOxD,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIhC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAOpD,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAO7D,cAAc,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI;IAI/B,cAAc,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAO9D,qFAAqF;IACxE,eAAe,CAAC,GAAG,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAC1F,qFAAqF;IACxE,eAAe,CAAC,GAAG,EAAE,cAAc,EAAE,UAAU,EAAE,KAAK,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAChG,qFAAqF;IACxE,eAAe,CAC1B,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,iBAAiB,GAAG,YAAY,CAAC;IAC5C,6GAA6G;IAChG,eAAe,CAC1B,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,IAAI,EAChB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,YAAY,CAAC;IACxB,6GAA6G;IAChG,eAAe,CAC1B,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,KAAK,EACjB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,iBAAiB,CAAC;IAC7B,6GAA6G;IAChG,eAAe,CAC1B,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,OAAO,GACnB,OAAO,CAAC,iBAAiB,GAAG,YAAY,CAAC;IAoD/B,uBAAuB,CAClC,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,IAAI,GACf,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IACvB,uBAAuB,CAClC,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,KAAK,GAChB,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAC5B,uBAAuB,CAClC,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,iBAAiB,GAAG,YAAY,GAAG,SAAS,CAAC;IAkBxD;;;;;;OAMG;IACI,UAAU,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAO5C;;;OAGG;IACI,WAAW,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAOtC,IAAI,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI;IAS/B,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAQnE,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;IAUrD,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAsB7C,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI;IAOpD,QAAQ,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;IAO9C,gBAAgB,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAIxE,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAIlC,WAAW,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAQ7B,aAAa,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAUvD,mBAAmB,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAOnE,6BAA6B,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC;IAInF,mCAAmC,CAC9C,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC;IAIjC,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;IAW7E,YAAY,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAU9C,SAAS,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAUhE,eAAe,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIlE,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAI9D,iBAAiB,CAC5B,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAWrB,uBAAuB,CAClC,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAKjB,qBAAqB,CAAC,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAe/F,4DAA4D;IACrD,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,GAAG,QAAQ;IAWnF,aAAa;IAI1B,iCAAiC;IACpB,QAAQ;IAQrB;oDACgD;IACnC,KAAK;IAQlB,OAAO,CAAC,mBAAmB;IAI3B,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAK;IAEpC,OAAO,CAAC,MAAM,CAAC,aAAa;CAK7B"}
@@ -31,7 +31,7 @@ export declare function resourceType(name: string, version: string): ResourceTyp
31
31
  export declare function resourceTypeToString(rt: ResourceType): string;
32
32
  export declare function resourceTypesEqual(type1: ResourceType, type2: ResourceType): boolean;
33
33
  /** Readonly fields here marks properties of resource that can't change according to pl's state machine. */
34
- export interface BasicResourceData {
34
+ export type BasicResourceData = {
35
35
  readonly id: ResourceId;
36
36
  readonly originalResourceId: OptionalResourceId;
37
37
  readonly kind: ResourceKind;
@@ -44,22 +44,23 @@ export interface BasicResourceData {
44
44
  /** This value is derived from resource state by the server and can be used as
45
45
  * a robust criteria to determine resource is in final state. */
46
46
  readonly final: boolean;
47
- }
47
+ };
48
+ export declare function extractBasicResourceData(rd: ResourceData): BasicResourceData;
48
49
  export declare const jsonToData: (data: unknown) => Buffer;
49
50
  export declare const resDataToJson: (res: ResourceData) => any;
50
- export interface ResourceData extends BasicResourceData {
51
- fields: FieldData[];
52
- }
51
+ export type ResourceData = BasicResourceData & {
52
+ readonly fields: FieldData[];
53
+ };
53
54
  export declare function getField(r: ResourceData, name: string): FieldData;
54
- export interface FieldData {
55
- name: string;
56
- type: FieldType;
57
- status: FieldStatus;
58
- value: OptionalResourceId;
59
- error: OptionalResourceId;
55
+ export type FieldData = {
56
+ readonly name: string;
57
+ readonly type: FieldType;
58
+ readonly status: FieldStatus;
59
+ readonly value: OptionalResourceId;
60
+ readonly error: OptionalResourceId;
60
61
  /** True if value the fields points to is in final state. */
61
- valueIsFinal: boolean;
62
- }
62
+ readonly valueIsFinal: boolean;
63
+ };
63
64
  export declare const MaxLocalId = 16777215;
64
65
  export declare const MaxTxId = 4294967295;
65
66
  export declare function isRootResourceId(id: bigint): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}