@callcium/sdk 0.8.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +74 -48
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +411 -330
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/bytes.ts +9 -9
- package/src/constants.ts +37 -175
- package/src/constraint.ts +24 -31
- package/src/descriptor-coder.ts +18 -20
- package/src/descriptor.ts +12 -11
- package/src/errors.ts +0 -3
- package/src/index.ts +8 -17
- package/src/operators.ts +114 -9
- package/src/path.ts +71 -0
- package/src/policy-builder.ts +17 -16
- package/src/policy-coder.ts +22 -41
- package/src/policy-enforcer.ts +90 -35
- package/src/policy-validator.ts +58 -25
- package/src/type-desc.ts +10 -10
- package/src/types.ts +79 -5
- package/src/validation-issue.ts +18 -4
package/dist/index.d.ts
CHANGED
|
@@ -44,8 +44,8 @@ type SelectorMismatchViolation = {
|
|
|
44
44
|
resolvedValue: Hex;
|
|
45
45
|
};
|
|
46
46
|
/**
|
|
47
|
-
* A
|
|
48
|
-
|
|
47
|
+
* A rule referenced a context property not supplied in the execution context — a context-scoped
|
|
48
|
+
* subject, or an `EQ_CTX` operand on either scope.
|
|
49
49
|
*/
|
|
50
50
|
type MissingContextViolation = {
|
|
51
51
|
code: "MISSING_CONTEXT";
|
|
@@ -53,8 +53,8 @@ type MissingContextViolation = {
|
|
|
53
53
|
rule: number;
|
|
54
54
|
scope: number;
|
|
55
55
|
path: Hex; /** Declared type of the missing context property. */
|
|
56
|
-
typeCode: number;
|
|
57
|
-
opCode?: number;
|
|
56
|
+
typeCode: number; /** Operator code with the `Op.NOT` bit intact; absent for a context-scoped subject. */
|
|
57
|
+
opCode?: number; /** Operator payload; absent for a context-scoped subject. */
|
|
58
58
|
operandData?: Hex;
|
|
59
59
|
};
|
|
60
60
|
/**
|
|
@@ -79,6 +79,11 @@ type ValueMismatchViolation = {
|
|
|
79
79
|
operandData: Hex; /** Type code of the failing value's leaf. */
|
|
80
80
|
typeCode: number;
|
|
81
81
|
resolvedValue?: Hex;
|
|
82
|
+
/**
|
|
83
|
+
* Resolved runtime value of a reference operand as a 32-byte word; present when the
|
|
84
|
+
* operator's operand names a reference resolved at enforcement, not a literal.
|
|
85
|
+
*/
|
|
86
|
+
resolvedOperand?: Hex;
|
|
82
87
|
elementIndex?: number;
|
|
83
88
|
};
|
|
84
89
|
/**
|
|
@@ -105,7 +110,7 @@ type CalldataNavigationVariant<C extends NavigationViolationCode> = {
|
|
|
105
110
|
* A union of per-code variants, narrowable with `Extract<Violation, { code: "..." }>`.
|
|
106
111
|
*/
|
|
107
112
|
type CalldataNavigationViolation = CalldataNavigationVariant<"CALLDATA_OUT_OF_BOUNDS"> | CalldataNavigationVariant<"ARRAY_INDEX_OUT_OF_BOUNDS">;
|
|
108
|
-
/** A quantified array exceeded `
|
|
113
|
+
/** A quantified array exceeded `PolicyFormat.MAX_QUANTIFIED_ARRAY_LENGTH`. */
|
|
109
114
|
type QuantifierLimitExceededViolation = {
|
|
110
115
|
code: "QUANTIFIER_LIMIT_EXCEEDED";
|
|
111
116
|
group: number;
|
|
@@ -115,7 +120,7 @@ type QuantifierLimitExceededViolation = {
|
|
|
115
120
|
resolvedValue: Hex;
|
|
116
121
|
};
|
|
117
122
|
/**
|
|
118
|
-
* A resolved word is not the canonical encoding of its declared type
|
|
123
|
+
* A resolved word is not the canonical encoding of its declared type.
|
|
119
124
|
*
|
|
120
125
|
* `resolvedValue` is the raw 32-byte word as it appeared in calldata, before any masking.
|
|
121
126
|
*/
|
|
@@ -221,13 +226,20 @@ type DecodedPolicy = {
|
|
|
221
226
|
type IssueSeverity = "info" | "warning" | "error";
|
|
222
227
|
/** Category of a validation issue. */
|
|
223
228
|
type IssueCategory = "typeMismatch" | "contradiction" | "redundancy" | "vacuity" | "compatibility";
|
|
229
|
+
/**
|
|
230
|
+
* Machine-readable code for a policy validation issue.
|
|
231
|
+
*
|
|
232
|
+
* Each code names one finding of the semantic validator and matches the constant of the same
|
|
233
|
+
* name in the Solidity `IssueCode` library.
|
|
234
|
+
*/
|
|
235
|
+
type IssueCode = "VALUE_OP_ON_DYNAMIC" | "VALUE_OP_ON_COMPOSITE" | "NUMERIC_OP_ON_NON_NUMERIC" | "BITMASK_ON_INVALID" | "IN_ON_BOOL" | "LENGTH_ON_STATIC" | "CONTEXT_TYPE_MISMATCH" | "UNKNOWN_OPERATOR" | "NON_CANONICAL_OPERAND" | "UNNAVIGABLE_PATH" | "NESTED_QUANTIFIER" | "HINT_MISMATCH" | "EQ_NEQ_CONTRADICTION" | "CONFLICTING_EQUALITY" | "OUT_OF_PHYSICAL_BOUNDS" | "IMPOSSIBLE_GT" | "IMPOSSIBLE_LT" | "BOUNDS_EXCLUDE_EQUALITY" | "IMPOSSIBLE_RANGE" | "SET_EXCLUDES_EQUALITY" | "EMPTY_SET_INTERSECTION" | "SET_FULLY_EXCLUDED" | "LENGTH_EQ_NEQ_CONTRADICTION" | "CONFLICTING_LENGTH" | "BOUNDS_EXCLUDE_LENGTH" | "IMPOSSIBLE_LENGTH_RANGE" | "OUT_OF_PHYSICAL_LENGTH_BOUNDS" | "IMPOSSIBLE_LENGTH_GT" | "IMPOSSIBLE_LENGTH_LT" | "BITMASK_CONTRADICTION" | "BITMASK_ANY_IMPOSSIBLE" | "UNSORTED_IN_SET" | "EMPTY_GROUP" | "DOMINATED_BOUND" | "REDUNDANT_BOUND" | "SET_REDUCTION" | "SET_REDUNDANCY" | "SET_PARTIALLY_EXCLUDED" | "DOMINATED_LENGTH_BOUND" | "REDUNDANT_LENGTH_BOUND" | "REDUNDANT_BITMASK" | "DUPLICATE_CONSTRAINT" | "FUSIBLE_RANGE" | "FUSIBLE_LENGTH_RANGE" | "VACUOUS_GTE" | "VACUOUS_LTE" | "VACUOUS_LENGTH_GTE" | "VACUOUS_LENGTH_LTE" | "VACUOUS_NEGATED_RANGE" | "VACUOUS_NEGATED_LENGTH_RANGE" | "PATH_DEPTH_EXCEEDED" | "QUANTIFIER_OVER_STATIC_LIMIT" | "UNKNOWN_CONTEXT_PROPERTY" | "NEGATION_UNDER_ANY";
|
|
224
236
|
/** A single validation issue found during policy analysis. */
|
|
225
237
|
type Issue = {
|
|
226
238
|
severity: IssueSeverity;
|
|
227
239
|
category: IssueCategory;
|
|
228
240
|
groupIndex: number;
|
|
229
241
|
constraintIndex: number;
|
|
230
|
-
code:
|
|
242
|
+
code: IssueCode;
|
|
231
243
|
value1: Hex;
|
|
232
244
|
value2: Hex;
|
|
233
245
|
message: string;
|
|
@@ -252,6 +264,10 @@ declare class ConstraintBuilder implements Constraint {
|
|
|
252
264
|
eq(value: ScalarValue): this;
|
|
253
265
|
/** Assert the value does not equal `value`. */
|
|
254
266
|
neq(value: ScalarValue): this;
|
|
267
|
+
/** Assert the value equals the context property `contextPropertyId`. */
|
|
268
|
+
eqCtx(contextPropertyId: number): this;
|
|
269
|
+
/** Assert the value does not equal the context property `contextPropertyId`. */
|
|
270
|
+
neqCtx(contextPropertyId: number): this;
|
|
255
271
|
/** Assert the value is greater than `bound`. */
|
|
256
272
|
gt(bound: bigint | number): this;
|
|
257
273
|
/** Assert the value is less than `bound`. */
|
|
@@ -371,12 +387,6 @@ declare class PolicyBuilder {
|
|
|
371
387
|
}
|
|
372
388
|
//#endregion
|
|
373
389
|
//#region src/policy-coder.d.ts
|
|
374
|
-
/**
|
|
375
|
-
* Parse a BE16-encoded hex path into an array of step values.
|
|
376
|
-
* @param path - 0x-prefixed hex string containing BE16-encoded path steps.
|
|
377
|
-
* @returns Array of numeric step values.
|
|
378
|
-
*/
|
|
379
|
-
declare function parsePathSteps(path: Hex): number[];
|
|
380
390
|
/**
|
|
381
391
|
* Encode a PolicyData structure into the canonical binary format.
|
|
382
392
|
* @param data - The policy data to encode.
|
|
@@ -404,6 +414,32 @@ declare const PolicyCoder: {
|
|
|
404
414
|
inspect: typeof inspect$1;
|
|
405
415
|
};
|
|
406
416
|
//#endregion
|
|
417
|
+
//#region src/path.d.ts
|
|
418
|
+
/** Reserved path step values that trigger quantified evaluation over array elements. */
|
|
419
|
+
declare const Quantifier: {
|
|
420
|
+
readonly ALL: 65535;
|
|
421
|
+
readonly ANY: 65534;
|
|
422
|
+
};
|
|
423
|
+
/** Display metadata for a quantifier step. */
|
|
424
|
+
type QuantifierInfo = {
|
|
425
|
+
label: string;
|
|
426
|
+
};
|
|
427
|
+
/** Check whether a path step is a quantifier (ALL or ANY). */
|
|
428
|
+
declare function isQuantifier(step: number): boolean;
|
|
429
|
+
/**
|
|
430
|
+
* Map a quantifier path step to its display label.
|
|
431
|
+
* @param code - Quantifier step value.
|
|
432
|
+
* @returns Display metadata for the quantifier.
|
|
433
|
+
* @throws {CallciumError} If the code is not a recognised quantifier.
|
|
434
|
+
*/
|
|
435
|
+
declare function lookupQuantifier(code: number): QuantifierInfo;
|
|
436
|
+
/**
|
|
437
|
+
* Parse a BE16-encoded hex path into an array of step values.
|
|
438
|
+
* @param path - 0x-prefixed hex string containing BE16-encoded path steps.
|
|
439
|
+
* @returns Array of numeric step values.
|
|
440
|
+
*/
|
|
441
|
+
declare function parsePathSteps(path: Hex): number[];
|
|
442
|
+
//#endregion
|
|
407
443
|
//#region src/descriptor.d.ts
|
|
408
444
|
/** Structural type information extracted from a descriptor node. */
|
|
409
445
|
type TypeInfo = {
|
|
@@ -580,7 +616,7 @@ declare const DescriptorCoder: {
|
|
|
580
616
|
};
|
|
581
617
|
//#endregion
|
|
582
618
|
//#region src/constants.d.ts
|
|
583
|
-
/** Binary layout constants for the Callcium policy format. */
|
|
619
|
+
/** Binary layout constants and normative limits for the Callcium policy format. */
|
|
584
620
|
declare const PolicyFormat: {
|
|
585
621
|
readonly VERSION: 2;
|
|
586
622
|
readonly VERSION_MASK: 15;
|
|
@@ -628,6 +664,9 @@ declare const PolicyFormat: {
|
|
|
628
664
|
readonly HINT_META_DYNAMIC_ARRAY: 16384;
|
|
629
665
|
readonly HINT_META_RESERVED_MASK: 12288;
|
|
630
666
|
readonly HINT_META_STRIDE_MASK: 4095;
|
|
667
|
+
readonly MAX_PATH_DEPTH: 32;
|
|
668
|
+
readonly MAX_QUANTIFIED_ARRAY_LENGTH: 256;
|
|
669
|
+
readonly MAX_SET_MEMBERS: number;
|
|
631
670
|
};
|
|
632
671
|
/**
|
|
633
672
|
* Extract a `{ KEY: code }` map from a table with `key` and `code` fields.
|
|
@@ -637,6 +676,7 @@ type CodeMap<T extends readonly {
|
|
|
637
676
|
readonly key: string;
|
|
638
677
|
readonly code: number;
|
|
639
678
|
}[]> = { readonly [E in T[number] as E["key"]]: E["code"] };
|
|
679
|
+
/** Build a plain `{ KEY: code }` object from a table at runtime. */
|
|
640
680
|
/** Rule scope discriminant: context (EVM environment) vs. calldata (ABI payload). */
|
|
641
681
|
declare const Scope: CodeMap<readonly [{
|
|
642
682
|
readonly key: "CONTEXT";
|
|
@@ -680,43 +720,53 @@ declare const ContextProperty: CodeMap<readonly [{
|
|
|
680
720
|
readonly key: "MSG_SENDER";
|
|
681
721
|
readonly code: 0;
|
|
682
722
|
readonly label: "msg.sender";
|
|
723
|
+
readonly contextKey: "msgSender";
|
|
683
724
|
readonly typeCode: 65;
|
|
684
725
|
}, {
|
|
685
726
|
readonly key: "MSG_VALUE";
|
|
686
727
|
readonly code: 1;
|
|
687
728
|
readonly label: "msg.value";
|
|
729
|
+
readonly contextKey: "msgValue";
|
|
688
730
|
readonly typeCode: 32;
|
|
689
731
|
}, {
|
|
690
732
|
readonly key: "BLOCK_TIMESTAMP";
|
|
691
733
|
readonly code: 2;
|
|
692
734
|
readonly label: "block.timestamp";
|
|
735
|
+
readonly contextKey: "blockTimestamp";
|
|
693
736
|
readonly typeCode: 32;
|
|
694
737
|
}, {
|
|
695
738
|
readonly key: "BLOCK_NUMBER";
|
|
696
739
|
readonly code: 3;
|
|
697
740
|
readonly label: "block.number";
|
|
741
|
+
readonly contextKey: "blockNumber";
|
|
698
742
|
readonly typeCode: 32;
|
|
699
743
|
}, {
|
|
700
744
|
readonly key: "CHAIN_ID";
|
|
701
745
|
readonly code: 4;
|
|
702
746
|
readonly label: "block.chainid";
|
|
747
|
+
readonly contextKey: "chainId";
|
|
703
748
|
readonly typeCode: 32;
|
|
704
749
|
}, {
|
|
705
750
|
readonly key: "TX_ORIGIN";
|
|
706
751
|
readonly code: 5;
|
|
707
752
|
readonly label: "tx.origin";
|
|
753
|
+
readonly contextKey: "txOrigin";
|
|
708
754
|
readonly typeCode: 65;
|
|
709
755
|
}, {
|
|
710
756
|
readonly key: "BASE_FEE";
|
|
711
757
|
readonly code: 6;
|
|
712
758
|
readonly label: "block.basefee";
|
|
759
|
+
readonly contextKey: "baseFee";
|
|
713
760
|
readonly typeCode: 32;
|
|
714
761
|
}, {
|
|
715
762
|
readonly key: "GAS_PRICE";
|
|
716
763
|
readonly code: 7;
|
|
717
764
|
readonly label: "tx.gasprice";
|
|
765
|
+
readonly contextKey: "gasPrice";
|
|
718
766
|
readonly typeCode: 32;
|
|
719
767
|
}]>;
|
|
768
|
+
/** Maximum valid context property ID. */
|
|
769
|
+
declare const MAX_CONTEXT_PROPERTY_ID: number;
|
|
720
770
|
/** Display metadata for a context property code. */
|
|
721
771
|
type ContextPropertyInfo = {
|
|
722
772
|
label: string;
|
|
@@ -730,12 +780,6 @@ type ContextPropertyInfo = {
|
|
|
730
780
|
* @throws {CallciumError} If the code is not a recognised context property.
|
|
731
781
|
*/
|
|
732
782
|
declare function lookupContextProperty(code: number): ContextPropertyInfo;
|
|
733
|
-
/** Protocol-imposed safety limits for path depth and quantifier array size. */
|
|
734
|
-
declare const Limits: {
|
|
735
|
-
readonly MAX_PATH_DEPTH: 32;
|
|
736
|
-
readonly MAX_QUANTIFIED_ARRAY_LENGTH: 256;
|
|
737
|
-
readonly MAX_SET_MEMBERS: number;
|
|
738
|
-
};
|
|
739
783
|
/** Operand count category for operator data validation. */
|
|
740
784
|
type Operands = "single" | "range" | "variadic";
|
|
741
785
|
/** @internal */
|
|
@@ -774,6 +818,11 @@ declare const OP_TABLE: readonly [{
|
|
|
774
818
|
readonly code: 7;
|
|
775
819
|
readonly label: "in";
|
|
776
820
|
readonly operands: "variadic";
|
|
821
|
+
}, {
|
|
822
|
+
readonly key: "EQ_CTX";
|
|
823
|
+
readonly code: 8;
|
|
824
|
+
readonly label: "== ctx";
|
|
825
|
+
readonly operands: "single";
|
|
777
826
|
}, {
|
|
778
827
|
readonly key: "BITMASK_ALL";
|
|
779
828
|
readonly code: 16;
|
|
@@ -836,29 +885,10 @@ type OpInfo = {
|
|
|
836
885
|
* @throws {CallciumError} If the base code is not a recognised operator.
|
|
837
886
|
*/
|
|
838
887
|
declare function lookupOp(code: number): OpInfo;
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
readonly label: "all";
|
|
844
|
-
}, {
|
|
845
|
-
readonly key: "ANY";
|
|
846
|
-
readonly code: 65534;
|
|
847
|
-
readonly label: "any";
|
|
848
|
-
}]>;
|
|
849
|
-
/** Display metadata for a quantifier step. */
|
|
850
|
-
type QuantifierInfo = {
|
|
851
|
-
label: string;
|
|
852
|
-
};
|
|
853
|
-
/** Check whether a path step is a quantifier (ALL or ANY). */
|
|
854
|
-
declare function isQuantifier(step: number): boolean;
|
|
855
|
-
/**
|
|
856
|
-
* Map a quantifier path step to its display label.
|
|
857
|
-
* @param code - Quantifier step value.
|
|
858
|
-
* @returns Display metadata for the quantifier.
|
|
859
|
-
* @throws {CallciumError} If the code is not a recognised quantifier.
|
|
860
|
-
*/
|
|
861
|
-
declare function lookupQuantifier(code: number): QuantifierInfo;
|
|
888
|
+
//#endregion
|
|
889
|
+
//#region src/operators.d.ts
|
|
890
|
+
/** Return true when the operator code (with or without NOT flag) is a LENGTH_* variant. */
|
|
891
|
+
declare function isLengthOp(opCode: number): boolean;
|
|
862
892
|
/** Structural category for a descriptor type code. */
|
|
863
893
|
type TypeClass = "elementary" | "tuple" | "staticArray" | "dynamicArray";
|
|
864
894
|
/** Structural classification without label. */
|
|
@@ -878,10 +908,6 @@ type TypeCodeInfo = TypeClassInfo & {
|
|
|
878
908
|
*/
|
|
879
909
|
declare function lookupTypeCode(code: number): TypeCodeInfo;
|
|
880
910
|
//#endregion
|
|
881
|
-
//#region src/operators.d.ts
|
|
882
|
-
/** Return true when the operator code (with or without NOT flag) is a LENGTH_* variant. */
|
|
883
|
-
declare function isLengthOp(opCode: number): boolean;
|
|
884
|
-
//#endregion
|
|
885
911
|
//#region src/errors.d.ts
|
|
886
912
|
/**
|
|
887
913
|
* Machine-readable error code for structural decoding and validation failures.
|
|
@@ -925,5 +951,5 @@ declare class PolicyViolationError extends Error {
|
|
|
925
951
|
constructor(violations: Violation[]);
|
|
926
952
|
}
|
|
927
953
|
//#endregion
|
|
928
|
-
export { type Address, CallciumError, type CallciumErrorCode, type CalldataNavigationViolation, type Constraint, type ConstraintBuilder, type Context, ContextProperty, type ContextPropertyInfo, type DecodedGroup, type DecodedParam, type DecodedPolicy, type DecodedRule, Descriptor, DescriptorCoder, type EnforceResult, type Field, type Hex, type Issue, type IssueCategory, type IssueSeverity,
|
|
954
|
+
export { type Address, CallciumError, type CallciumErrorCode, type CalldataNavigationViolation, type Constraint, type ConstraintBuilder, type Context, ContextProperty, type ContextPropertyInfo, type DecodedGroup, type DecodedParam, type DecodedPolicy, type DecodedRule, Descriptor, DescriptorCoder, type EnforceResult, type Field, type Hex, type Issue, type IssueCategory, type IssueCode, type IssueSeverity, MAX_CONTEXT_PROPERTY_ID, type MissingContextViolation, type MissingSelectorViolation, type NavigationViolationCode, type NonCanonicalValueViolation, Op, type OpInfo, type Operands, PolicyBuilder, PolicyCoder, type PolicyData, PolicyEnforcer, PolicyFormat, PolicyValidator, PolicyViolationError, Quantifier, type QuantifierEmptyArrayViolation, type QuantifierInfo, type QuantifierLimitExceededViolation, type ScalarValue, Scope, type ScopeInfo, type SelectorMismatchViolation, type Span, type TypeClass, type TypeClassInfo, TypeCode, type TypeCodeInfo, type TypeInfo, ValidationError, type ValueMismatchViolation, type Violation, type ViolationCode, arg, baseFee, blockNumber, blockTimestamp, bytesToHex, chainId, gasPrice, hexToBytes, isLengthOp, isOpAllowed, isQuantifier, lookupContextProperty, lookupOp, lookupQuantifier, lookupScope, lookupTypeCode, msgSender, msgValue, parsePathSteps, toAddress, txOrigin };
|
|
929
955
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/constraint.ts","../src/policy-builder.ts","../src/policy-coder.ts","../src/descriptor.ts","../src/policy-validator.ts","../src/policy-enforcer.ts","../src/bytes.ts","../src/descriptor-coder.ts","../src/constants.ts","../src/operators.ts","../src/errors.ts"],"mappings":";;KAKY,GAAA;;KAGA,OAAA;;KAGA,IAAA;EAAS,KAAA;EAAe,GAAA;AAAA;;;AAApC;;;KAWY,OAAA;EACV,SAAA,GAAY,OAAA;EACZ,QAAA;EACA,cAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA,GAAW,OAAA;EACX,OAAA;EACA,QAAA;AAAA;;KAIU,aAAA;EAAkB,EAAA;EAAU,YAAA;AAAA;EAA2B,EAAA;EAAW,UAAA,EAAY,SAAA;AAAA;AAA1F;AAAA,KAGY,uBAAA;;KAGA,wBAAA;EACV,IAAA;AAAA;;KAIU,yBAAA;EACV,IAAA,uBAZiG;EAcjG,aAAA,EAAe,GAAA,EAXL;EAaV,aAAA,EAAe,GAAA;AAAA;;;AAVjB;;KAiBY,uBAAA;EACV,IAAA;EACA,KAAA;EACA,IAAA;EACA,KAAA;EACA,IAAA,EAAM,GAAA,EAZY;EAclB,QAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/constraint.ts","../src/policy-builder.ts","../src/policy-coder.ts","../src/path.ts","../src/descriptor.ts","../src/policy-validator.ts","../src/policy-enforcer.ts","../src/bytes.ts","../src/descriptor-coder.ts","../src/constants.ts","../src/operators.ts","../src/errors.ts"],"mappings":";;KAKY,GAAA;;KAGA,OAAA;;KAGA,IAAA;EAAS,KAAA;EAAe,GAAA;AAAA;;;AAApC;;;KAWY,OAAA;EACV,SAAA,GAAY,OAAA;EACZ,QAAA;EACA,cAAA;EACA,WAAA;EACA,OAAA;EACA,QAAA,GAAW,OAAA;EACX,OAAA;EACA,QAAA;AAAA;;KAIU,aAAA;EAAkB,EAAA;EAAU,YAAA;AAAA;EAA2B,EAAA;EAAW,UAAA,EAAY,SAAA;AAAA;AAA1F;AAAA,KAGY,uBAAA;;KAGA,wBAAA;EACV,IAAA;AAAA;;KAIU,yBAAA;EACV,IAAA,uBAZiG;EAcjG,aAAA,EAAe,GAAA,EAXL;EAaV,aAAA,EAAe,GAAA;AAAA;;;AAVjB;;KAiBY,uBAAA;EACV,IAAA;EACA,KAAA;EACA,IAAA;EACA,KAAA;EACA,IAAA,EAAM,GAAA,EAZY;EAclB,QAAA,UAhBA;EAkBA,MAAA,WAhBA;EAkBA,WAAA,GAAc,GAAA;AAAA;;AAXhB;;;;;;;;;;;KA0BY,sBAAA;EACV,IAAA;EACA,KAAA;EACA,IAAA;EACA,KAAA;EACA,IAAA,EAAM,GAAA,EAL0B;EAOhC,MAAA,UAFM;EAIN,WAAA,EAAa,GAAA,EAGG;EADhB,QAAA;EACA,aAAA,GAAgB,GAAA;EAKK;;;;EAArB,eAAA,GAAkB,GAAA;EAClB,YAAA;AAAA;;;;;KAOG,yBAAA,WAAoC,uBAAA;EACvC,IAAA,EAAM,CAAA;EACN,KAAA;EACA,IAAA;EACA,KAAA;EACA,IAAA,EAAM,GAAA;EACN,MAAA;EACA,WAAA,GAAc,GAAA;EACd,QAAA;EACA,YAAA;AAAA;;;;;;;;;KAWU,2BAAA,GACR,yBAAA,6BACA,yBAAA;;KAGQ,gCAAA;EACV,IAAA;EACA,KAAA;EACA,IAAA;EACA,KAAA;EACA,IAAA,EAAM,GAAA,EAvBQ;EAyBd,aAAA,EAAe,GAAA;AAAA;;;AAZjB;;;KAoBY,0BAAA;EACV,IAAA;EACA,KAAA;EACA,IAAA;EACA,KAAA;EACA,IAAA,EAAM,GAAA,EAnBN;EAqBA,QAAA,UAnBA;EAqBA,aAAA,EAAe,GAAA;EACf,MAAA;EACA,WAAA,GAAc,GAAA;EACd,YAAA;AAAA;;KAIU,6BAAA;EACV,IAAA;EACA,KAAA;EACA,IAAA;EACA,KAAA;EACA,IAAA,EAAM,GAAA;AAAA;;;;;;;KASI,SAAA,GACR,wBAAA,GACA,yBAAA,GACA,uBAAA,GACA,sBAAA,GACA,2BAAA,GACA,0BAAA,GACA,gCAAA,GACA,6BAAA;;KAGQ,aAAA,GAAgB,SAAA;;KAOhB,UAAA;EACV,cAAA;EACA,QAAA,EAAU,GAAA;EACV,UAAA,EAAY,GAAA;EACZ,MAAA,EAAQ,UAAA;EACR,IAAA,GAAO,IAAA;AAAA;AArCT;AAAA,KAyCY,UAAA;EACV,KAAA;EACA,IAAA,EAAM,GAAA;EACN,SAAA,EAAW,GAAA,IA1CX;EA4CA,IAAA,GAAO,GAAA;EACP,IAAA,GAAO,IAAA;AAAA;;KAQG,KAAA;EAAa,KAAA,EAAO,CAAA;EAAG,IAAA,EAAM,IAAA;AAAA;;KAG7B,YAAA;EACV,KAAA;EACA,QAAA;EACA,SAAA;EACA,UAAA;EACA,IAAA,EAAM,GAAA;EACN,IAAA,EAAM,IAAA;AAAA;;KAII,WAAA;EACV,QAAA,EAAU,KAAA;EACV,KAAA,EAAO,KAAA;EACP,SAAA,EAAW,KAAA;EACX,IAAA,EAAM,KAAA,CAAM,GAAA,GArDV;EAuDF,IAAA,GAAO,KAAA,CAAM,GAAA;EACb,MAAA,EAAQ,KAAA;EACR,UAAA,EAAY,KAAA;EACZ,IAAA,EAAM,KAAA,CAAM,GAAA;EACZ,IAAA,EAAM,IAAA;AAAA;;KAII,YAAA;EACV,SAAA,EAAW,KAAA;EACX,SAAA,EAAW,KAAA;EACX,KAAA,EAAO,WAAA;EACP,IAAA,EAAM,IAAA;AAAA;;KAII,aAAA;EACV,MAAA,EAAQ,KAAA;EACR,QAAA,EAAU,KAAA,CAAM,GAAA;EAChB,UAAA,EAAY,KAAA;EACZ,UAAA;IAAc,GAAA,EAAK,GAAA;IAAK,MAAA,EAAQ,KAAA;MAAQ,OAAA;MAAiB,UAAA;IAAA;IAAuB,MAAA,EAAQ,YAAA;IAAgB,IAAA,EAAM,IAAA;EAAA;EAC9G,UAAA,EAAY,KAAA;EACZ,MAAA,EAAQ,YAAA;EACR,IAAA,EAAM,IAAA;EACN,OAAA;EACA,cAAA;AAAA;;KAQU,aAAA;;KAGA,aAAA;;;;;;;KAQA,SAAA;;KA8DA,KAAA;EACV,QAAA,EAAU,aAAA;EACV,QAAA,EAAU,aAAA;EACV,UAAA;EACA,eAAA;EACA,IAAA,EAAM,SAAA;EACN,MAAA,EAAQ,GAAA;EACR,MAAA,EAAQ,GAAA;EACR,OAAA;AAAA;;;AA3VF;AAAA,KCOY,WAAA;;;;ADJZ;cCkGa,iBAAA,YAA6B,UAAA;EAAA,SAC/B,KAAA;EAAA,SACA,IAAA,EAAM,GAAA;EAAA,SACN,SAAA,EAAW,GAAA;EDlGV;cCqGE,KAAA,UAAe,IAAA,EAAM,GAAA;;UAOzB,IAAA;ED5G6B;ECsHrC,EAAA,CAAG,KAAA,EAAO,WAAA;ED3GO;ECgHjB,GAAA,CAAI,KAAA,EAAO,WAAA;ED1GO;EC+GlB,KAAA,CAAM,iBAAA;EDpHM;ECyHZ,MAAA,CAAO,iBAAA;EDvHP;EC4HA,EAAA,CAAG,KAAA;ED1HH;EC+HA,EAAA,CAAG,KAAA;ED9HQ;ECmIX,GAAA,CAAI,KAAA;EDjIJ;ECsIA,GAAA,CAAI,KAAA;EDtII;AAIV;;;EC0IE,OAAA,CAAQ,GAAA,mBAAsB,GAAA;ED1IF;;;;;ECuJ5B,IAAA,CAAK,MAAA,WAAiB,WAAA;EDvJ2E;AAGnG;;;EC4JE,KAAA,CAAM,MAAA,WAAiB,WAAA;ED5JU;ECqKjC,UAAA,CAAW,IAAA;EDlKuB;ECuKlC,UAAA,CAAW,IAAA;EDtKX;EC2KA,WAAA,CAAY,IAAA;EDvKF;ECgLV,QAAA,CAAS,CAAA;;EAKT,QAAA,CAAS,CAAA;EDpLT;ECyLA,QAAA,CAAS,CAAA;EDvLM;EC4Lf,SAAA,CAAU,CAAA;ED1LK;EC+Lf,SAAA,CAAU,CAAA;ED/LQ;AAOpB;;;ECgME,aAAA,CAAc,GAAA,mBAAsB,GAAA;AAAA;;;;;iBAatB,GAAA,CAAI,EAAA,aAAe,IAAA,aAAiB,iBAAA;;iBAMpC,SAAA,CAAA,GAAa,iBAAA;;iBAKb,QAAA,CAAA,GAAY,iBAAA;;iBAKZ,cAAA,CAAA,GAAkB,iBAAA;ADnMlC;AAAA,iBCwMgB,WAAA,CAAA,GAAe,iBAAA;;iBAKf,OAAA,CAAA,GAAW,iBAAA;;iBAKX,QAAA,CAAA,GAAY,iBAAA;;iBAKZ,OAAA,CAAA,GAAW,iBAAA;;iBAKX,QAAA,CAAA,GAAY,iBAAA;;;;cCxMf,aAAA;EAAA,QACH,KAAA;EAAA,QAED,WAAA,CAAA;EFlGG;;;;EAAA,OE0GH,MAAA,CAAO,SAAA,WAAoB,aAAA;EFvGxB;;;;EAAA,OEuHH,SAAA,CAAU,QAAA,WAAmB,aAAA;EF5G1B;;;;EE2HV,GAAA,CAAI,UAAA,EAAY,UAAA,GAAa,iBAAA;EF1HjB;EE+JZ,EAAA,CAAA;EF7JA;;;;;;;;EE+KA,KAAA,CAAA,GAAS,GAAA;EFtKC;;;;;;;EEuLV,WAAA,CAAA,GAAe,GAAA;EFvLyE;;;AAG1F;EE6LE,QAAA,CAAA,GAAY,KAAA;;UAOJ,WAAA;EFpMyB;EAAA,QE6MzB,YAAA;AAAA;;;AF1OV;;;;;AAAA,iBGmfS,MAAA,CAAO,IAAA,EAAM,UAAA,GAAa,GAAA;;;;;AHrenC;;iBG+jBS,MAAA,CAAO,IAAA,EAAM,GAAA,GAAM,UAAA;;;;;;;iBA8CnB,SAAA,CAAQ,IAAA,EAAM,GAAA,GAAM,aAAA;;cAKhB,WAAA;;;;;;;AHnoBb;AAAA,cIWa,UAAA;EAAA,SAA2C,GAAA;EAAA,SAAA,GAAA;AAAA;AJRxD;AAAA,KIWY,cAAA;EAAmB,KAAA;AAAA;;iBAOf,YAAA,CAAa,IAAA;;;;;AJJ7B;;iBIcgB,gBAAA,CAAiB,IAAA,WAAe,cAAA;;;;;;iBAwBhC,cAAA,CAAe,IAAA,EAAM,GAAA;;;;KClDzB,QAAA;EACV,QAAA;EACA,SAAA;EACA,UAAA;AAAA;ALLF;;;;;AAAA,iBKwCS,UAAA,CAAW,IAAA,EAAM,UAAA,EAAY,MAAA;;;;;iBAU7B,gBAAA,CAAiB,IAAA,EAAM,UAAA,EAAY,WAAA,UAAqB,UAAA;;iBAaxD,UAAA,CAAW,IAAA,EAAM,UAAA;;iBAKjB,WAAA,CAAY,IAAA,EAAM,UAAA,EAAY,KAAA;;;;;;;iBAkB9B,OAAA,CAAQ,IAAA,EAAM,UAAA,EAAY,MAAA,WAAiB,QAAA;;;;;AL5DpD;;;;;;;;iBKoFS,MAAA,CAAO,IAAA,EAAM,UAAA,EAAY,KAAA,aAAkB,QAAA;;;ALjFpD;;;;;AAGA;;iBK2FS,QAAA,CAAS,IAAA,EAAM,UAAA,EAAY,KAAA;EAAoB,QAAA,EAAU,QAAA;EAAU,sBAAA;AAAA;;;;;;iBA4DnE,eAAA,CAAgB,IAAA,EAAM,UAAA,EAAY,MAAA;;;;;ALtI3C;iBK+IS,iBAAA,CAAkB,IAAA,EAAM,UAAA,EAAY,MAAA;;;;;iBAWpC,kBAAA,CAAmB,MAAA;;;;;;;;;;iBA+InB,WAAA,CAAY,IAAA,EAAM,UAAA,EAAY,KAAA,aAAkB,UAAA;;cAiC5C,UAAA;;;;;;;;;;;;;;;;;;;iBC3LG,WAAA,CAAY,MAAA,UAAgB,QAAA,EAAU,QAAA;;;;;AN7LtD;;;iBM4lCS,QAAA,CAAS,IAAA,EAAM,UAAA,GAAa,KAAA;;cAiBxB,eAAA;mBAA8B,QAAA;AAAA;;;ANnnC3C;;;;;AAGA;;;AAHA,iBO2CS,KAAA,CAAM,MAAA,EAAQ,GAAA,EAAK,QAAA,EAAU,GAAA,EAAK,OAAA,GAAU,OAAA,GAAU,aAAA;;APrC/D;;;;;AAWA;;iBO6FS,OAAA,CAAQ,MAAA,EAAQ,GAAA,EAAK,QAAA,EAAU,GAAA,EAAK,OAAA,GAAU,OAAA;;cA2hB1C,cAAA;gBAAmC,KAAA;kBAAA,OAAA;AAAA;;;APzoBhD;AAAA,iBQWgB,UAAA,CAAW,GAAA,WAAc,UAAA;;iBAqBzB,UAAA,CAAW,KAAA,EAAO,UAAA,GAAa,GAAA;;iBAqD/B,SAAA,CAAU,GAAA,WAAc,OAAA;;;ARrFxC;;;;;AAGA;;;AAHA,iBSwMS,SAAA,CAAU,QAAA,WAAmB,UAAA;;ATlMtC;;;;;AAWA;;;iBSgQS,OAAA,CAAQ,IAAA,EAAM,UAAA;;cAoLV,eAAA;oBAAwC,SAAA;kBAAA,OAAA;AAAA;;;;cCxaxC,YAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6DR,OAAA;EAAA,SAAsC,GAAA;EAAA,SAAsB,IAAA;AAAA,wBAChD,CAAA,YAAa,CAAA,UAAW,CAAA;;;cAqB5B,KAAA,EAAK,OAAA;EAAA;;;;;;;;;KAGN,SAAA;EAAc,KAAA;AAAA;;;;;;;iBAYV,WAAA,CAAY,IAAA,WAAe,SAAA;;cAW9B,QAAA;EAAA;;;;;;;;;;;;;;;;cAkCA,eAAA,EAAe,OAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAGf,uBAAA;;KAGD,mBAAA;EAAwB,KAAA;EAAe,UAAA,QAApB,OAAA;EAAiE,QAAA;AAAA;;;;AVLhG;;;iBUiBgB,qBAAA,CAAsB,IAAA,WAAe,mBAAA;;KAWzC,QAAA;;cAGN,QAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AVuBN;AAAA,cUFa,EAAA,EAAI,OAAA,QAAe,QAAA;EAAA,SAAuB,GAAA;AAAA;;KAG3C,MAAA;EAAW,KAAA;EAAe,QAAA,EAAU,QAAA;AAAA;;;;;;;iBAYhC,QAAA,CAAS,IAAA,WAAe,MAAA;;;;iBC7KxB,UAAA,CAAW,MAAA;;KAwJf,SAAA;AX3LZ;AAAA,KW8LY,aAAA;EAAkB,SAAA,EAAW,SAAA;EAAW,SAAA;AAAA;AX3LpD;AAAA,KW8LY,YAAA,GAAe,aAAA;EAAkB,KAAA;AAAA;;;;;;;iBA4E7B,cAAA,CAAe,IAAA,WAAe,YAAA;;;;AX7S9C;;;;;KYCY,iBAAA;;;;;cA0EC,aAAA,SAAsB,KAAA;EAAA,SACjB,IAAA,EAAM,iBAAA;;WAEN,MAAA;cAEJ,IAAA,EAAM,iBAAA,EAAmB,OAAA,UAAiB,MAAA;AAAA;;;;;;;;cAe3C,eAAA,SAAwB,aAAA;EAAA,SACnB,MAAA,EADW,KAAA;cAGf,MAAA,EAFmC,KAAA;AAAA;;;;;AZnEjD;;;;;cYqFa,oBAAA,SAA6B,KAAA;EAAA,SACxB,UAAA,EADgB,SAAA;cAGpB,UAAA,EAF2C,SAAA;AAAA"}
|