@bessemer/cornerstone 0.5.23 → 0.5.25

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.
@@ -1 +1 @@
1
- {"version":3,"file":"expression-parser.d.ts","sourceRoot":"","sources":["../../src/expression/expression-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AAMnF,KAAK,kBAAkB,CAAC,cAAc,EAAE,WAAW,EAAE,WAAW,IAAI,CAClE,UAAU,EAAE,cAAc,EAC1B,GAAG,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,WAAW,EACrD,OAAO,EAAE,WAAW,KACjB,WAAW,CAAA;AAEhB,qBAAa,gBAAgB,CAAC,WAAW,EAAE,WAAW;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoE;IAEhG,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,WAAW;IAiBvE,QAAQ,CAAC,cAAc,EACrB,UAAU,EAAE,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,EAC1D,QAAQ,EAAE,kBAAkB,CAAC,cAAc,EAAE,WAAW,EAAE,WAAW,CAAC,GACrE,IAAI;CAGR"}
1
+ {"version":3,"file":"expression-parser.d.ts","sourceRoot":"","sources":["../../src/expression/expression-parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAA;AAMnF,KAAK,kBAAkB,CAAC,cAAc,EAAE,WAAW,EAAE,WAAW,IAAI,CAClE,UAAU,EAAE,cAAc,EAC1B,GAAG,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,WAAW,EACrD,OAAO,EAAE,WAAW,KACjB,WAAW,CAAA;AAEhB,qBAAa,gBAAgB,CAAC,WAAW,EAAE,WAAW;IACpD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoE;IAEhG,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,WAAW;IAoBvE,QAAQ,CAAC,cAAc,EACrB,UAAU,EAAE,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,EAC1D,QAAQ,EAAE,kBAAkB,CAAC,cAAc,EAAE,WAAW,EAAE,WAAW,CAAC,GACrE,IAAI;CAGR"}
@@ -1,22 +1,25 @@
1
1
  // src/expression/expression-parser.ts
2
2
  import { isExpression } from "@bessemer/cornerstone/expression/internal";
3
- import { ValueExpression } from "@bessemer/cornerstone/expression/expression";
4
3
  import { Preconditions } from "@bessemer/cornerstone";
4
+ import { value, ValueExpression } from "@bessemer/cornerstone/expression/expression";
5
5
  var ExpressionMapper = class {
6
6
  resolverMap = {};
7
7
  map(expression, context) {
8
- let expressionKey;
9
8
  if (isExpression(expression)) {
10
- expressionKey = expression.expressionKey;
9
+ const resolver = this.resolverMap[expression.expressionKey];
10
+ Preconditions.isPresent(
11
+ resolver,
12
+ `Illegal Argument - Attempted to map unknown expression: ${expression.expressionKey}. You must register(...) a handler for this expression type.`
13
+ );
14
+ return resolver(expression, (expression2) => this.map(expression2, context), context);
11
15
  } else {
12
- expressionKey = ValueExpression.expressionKey;
16
+ const resolver = this.resolverMap[ValueExpression.expressionKey];
17
+ Preconditions.isPresent(
18
+ resolver,
19
+ `Illegal Argument - Attempted to map unknown expression: ${ValueExpression.expressionKey}. You must register(...) a handler for this expression type.`
20
+ );
21
+ return resolver(expression, (expression2) => this.map(value(expression2), context), context);
13
22
  }
14
- const resolver = this.resolverMap[expressionKey];
15
- Preconditions.isPresent(
16
- resolver,
17
- `Illegal Argument - Attempted to map unknown expression: ${expressionKey}. You must register(...) a handler for this expression type.`
18
- );
19
- return resolver(expression, (expression2) => this.map(expression2, context), context);
20
23
  }
21
24
  register(definition, resolver) {
22
25
  this.resolverMap[definition.expressionKey] = resolver;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/expression-parser.ts"],"sourcesContent":["import { Expression, ExpressionDefinition } from '@bessemer/cornerstone/expression'\nimport { Dictionary } from '@bessemer/cornerstone/types'\nimport { isExpression } from '@bessemer/cornerstone/expression/internal'\nimport { ValueExpression } from '@bessemer/cornerstone/expression/expression'\nimport { Preconditions } from '@bessemer/cornerstone'\n\ntype ExpressionResolver<ExpressionType, MappingType, ContextType> = (\n expression: ExpressionType,\n map: (expression: Expression<unknown>) => MappingType,\n context: ContextType\n) => MappingType\n\nexport class ExpressionMapper<MappingType, ContextType> {\n private readonly resolverMap: Dictionary<ExpressionResolver<any, MappingType, ContextType>> = {}\n\n map(expression: Expression<unknown>, context: ContextType): MappingType {\n let expressionKey: string\n if (isExpression(expression)) {\n expressionKey = expression.expressionKey\n } else {\n expressionKey = ValueExpression.expressionKey\n }\n\n const resolver = this.resolverMap[expressionKey]\n Preconditions.isPresent(\n resolver,\n `Illegal Argument - Attempted to map unknown expression: ${expressionKey}. You must register(...) a handler for this expression type.`\n )\n\n return resolver(expression, (expression) => this.map(expression, context), context)\n }\n\n register<ExpressionType>(\n definition: ExpressionDefinition<any, any, ExpressionType>,\n resolver: ExpressionResolver<ExpressionType, MappingType, ContextType>\n ): void {\n this.resolverMap[definition.expressionKey] = resolver\n }\n}\n"],"mappings":";AAEA,SAAS,oBAAoB;AAC7B,SAAS,uBAAuB;AAChC,SAAS,qBAAqB;AAQvB,IAAM,mBAAN,MAAiD;AAAA,EACrC,cAA6E,CAAC;AAAA,EAE/F,IAAI,YAAiC,SAAmC;AACtE,QAAI;AACJ,QAAI,aAAa,UAAU,GAAG;AAC5B,sBAAgB,WAAW;AAAA,IAC7B,OAAO;AACL,sBAAgB,gBAAgB;AAAA,IAClC;AAEA,UAAM,WAAW,KAAK,YAAY,aAAa;AAC/C,kBAAc;AAAA,MACZ;AAAA,MACA,2DAA2D,aAAa;AAAA,IAC1E;AAEA,WAAO,SAAS,YAAY,CAACA,gBAAe,KAAK,IAAIA,aAAY,OAAO,GAAG,OAAO;AAAA,EACpF;AAAA,EAEA,SACE,YACA,UACM;AACN,SAAK,YAAY,WAAW,aAAa,IAAI;AAAA,EAC/C;AACF;","names":["expression"]}
1
+ {"version":3,"sources":["../../src/expression/expression-parser.ts"],"sourcesContent":["import { Expression, ExpressionDefinition } from '@bessemer/cornerstone/expression'\nimport { Dictionary } from '@bessemer/cornerstone/types'\nimport { isExpression } from '@bessemer/cornerstone/expression/internal'\nimport { Preconditions } from '@bessemer/cornerstone'\nimport { value, ValueExpression } from '@bessemer/cornerstone/expression/expression'\n\ntype ExpressionResolver<ExpressionType, MappingType, ContextType> = (\n expression: ExpressionType,\n map: (expression: Expression<unknown>) => MappingType,\n context: ContextType\n) => MappingType\n\nexport class ExpressionMapper<MappingType, ContextType> {\n private readonly resolverMap: Dictionary<ExpressionResolver<any, MappingType, ContextType>> = {}\n\n map(expression: Expression<unknown>, context: ContextType): MappingType {\n if (isExpression(expression)) {\n const resolver = this.resolverMap[expression.expressionKey]\n Preconditions.isPresent(\n resolver,\n `Illegal Argument - Attempted to map unknown expression: ${expression.expressionKey}. You must register(...) a handler for this expression type.`\n )\n\n return resolver(expression, (expression) => this.map(expression, context), context)\n } else {\n const resolver = this.resolverMap[ValueExpression.expressionKey]\n Preconditions.isPresent(\n resolver,\n `Illegal Argument - Attempted to map unknown expression: ${ValueExpression.expressionKey}. You must register(...) a handler for this expression type.`\n )\n\n return resolver(expression, (expression) => this.map(value(expression), context), context)\n }\n }\n\n register<ExpressionType>(\n definition: ExpressionDefinition<any, any, ExpressionType>,\n resolver: ExpressionResolver<ExpressionType, MappingType, ContextType>\n ): void {\n this.resolverMap[definition.expressionKey] = resolver\n }\n}\n"],"mappings":";AAEA,SAAS,oBAAoB;AAC7B,SAAS,qBAAqB;AAC9B,SAAS,OAAO,uBAAuB;AAQhC,IAAM,mBAAN,MAAiD;AAAA,EACrC,cAA6E,CAAC;AAAA,EAE/F,IAAI,YAAiC,SAAmC;AACtE,QAAI,aAAa,UAAU,GAAG;AAC5B,YAAM,WAAW,KAAK,YAAY,WAAW,aAAa;AAC1D,oBAAc;AAAA,QACZ;AAAA,QACA,2DAA2D,WAAW,aAAa;AAAA,MACrF;AAEA,aAAO,SAAS,YAAY,CAACA,gBAAe,KAAK,IAAIA,aAAY,OAAO,GAAG,OAAO;AAAA,IACpF,OAAO;AACL,YAAM,WAAW,KAAK,YAAY,gBAAgB,aAAa;AAC/D,oBAAc;AAAA,QACZ;AAAA,QACA,2DAA2D,gBAAgB,aAAa;AAAA,MAC1F;AAEA,aAAO,SAAS,YAAY,CAACA,gBAAe,KAAK,IAAI,MAAMA,WAAU,GAAG,OAAO,GAAG,OAAO;AAAA,IAC3F;AAAA,EACF;AAAA,EAEA,SACE,YACA,UACM;AACN,SAAK,YAAY,WAAW,aAAa,IAAI;AAAA,EAC/C;AACF;","names":["expression"]}
package/dist/range.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { ZodType } from 'zod';
2
- import { NominalType } from '@bessemer/cornerstone/types';
3
- export declare const boundsSchema: <T extends ZodType>(type: T) => import("zod").ZodTuple<[import("zod").ZodNullable<T>, import("zod").ZodNullable<T>], null>;
4
- export type Bounds<T> = NominalType<[T | null, T | null], 'Bounds'>;
2
+ import { TaggedType } from '@bessemer/cornerstone/types';
3
+ export declare const boundsSchema: <T extends ZodType>(type: T) => import("zod").ZodBranded<import("zod").ZodTuple<[import("zod").ZodNullable<T>, import("zod").ZodNullable<T>], null>, "Bounds">;
4
+ export type Bounds<T> = TaggedType<[T | null, T | null], 'Bounds'>;
5
5
  export declare const bounds: <T>(bounds: [lower: T | null, upper?: T | null]) => Bounds<T>;
6
6
  //# sourceMappingURL=range.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"range.d.ts","sourceRoot":"","sources":["../src/range.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAEzD,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,OAAO,EAAE,MAAM,CAAC,+FAEtD,CAAA;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAA;AAEnE,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAG,MAAM,CAAC,CAAC,CAM/E,CAAA"}
1
+ {"version":3,"file":"range.d.ts","sourceRoot":"","sources":["../src/range.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAExD,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,OAAO,EAAE,MAAM,CAAC,mIAEtD,CAAA;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAA;AAElE,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAG,MAAM,CAAC,CAAC,CAM/E,CAAA"}
package/dist/range.js CHANGED
@@ -1,7 +1,7 @@
1
1
  // src/range.ts
2
2
  import { Objects, Zod } from "@bessemer/cornerstone";
3
3
  var boundsSchema = (type) => {
4
- return Zod.tuple([type.nullable(), type.nullable()]);
4
+ return Zod.tuple([type.nullable(), type.nullable()]).brand("Bounds");
5
5
  };
6
6
  var bounds = (bounds2) => {
7
7
  if (Objects.isUndefined(bounds2[1])) {
package/dist/range.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/range.ts"],"sourcesContent":["import { Objects, Zod } from '@bessemer/cornerstone'\nimport { ZodType } from 'zod'\nimport { NominalType } from '@bessemer/cornerstone/types'\n\nexport const boundsSchema = <T extends ZodType>(type: T) => {\n return Zod.tuple([type.nullable(), type.nullable()])\n}\n\nexport type Bounds<T> = NominalType<[T | null, T | null], 'Bounds'>\n\nexport const bounds = <T>(bounds: [lower: T | null, upper?: T | null]): Bounds<T> => {\n if (Objects.isUndefined(bounds[1])) {\n return [bounds[0], null] as Bounds<T>\n }\n\n return bounds as Bounds<T>\n}\n"],"mappings":";AAAA,SAAS,SAAS,WAAW;AAItB,IAAM,eAAe,CAAoB,SAAY;AAC1D,SAAO,IAAI,MAAM,CAAC,KAAK,SAAS,GAAG,KAAK,SAAS,CAAC,CAAC;AACrD;AAIO,IAAM,SAAS,CAAIA,YAA2D;AACnF,MAAI,QAAQ,YAAYA,QAAO,CAAC,CAAC,GAAG;AAClC,WAAO,CAACA,QAAO,CAAC,GAAG,IAAI;AAAA,EACzB;AAEA,SAAOA;AACT;","names":["bounds"]}
1
+ {"version":3,"sources":["../src/range.ts"],"sourcesContent":["import { Objects, Zod } from '@bessemer/cornerstone'\nimport { ZodType } from 'zod'\nimport { TaggedType } from '@bessemer/cornerstone/types'\n\nexport const boundsSchema = <T extends ZodType>(type: T) => {\n return Zod.tuple([type.nullable(), type.nullable()]).brand('Bounds')\n}\n\nexport type Bounds<T> = TaggedType<[T | null, T | null], 'Bounds'>\n\nexport const bounds = <T>(bounds: [lower: T | null, upper?: T | null]): Bounds<T> => {\n if(Objects.isUndefined(bounds[1])) {\n return [bounds[0], null] as Bounds<T>\n }\n\n return bounds as Bounds<T>\n}"],"mappings":";AAAA,SAAS,SAAS,WAAW;AAItB,IAAM,eAAe,CAAoB,SAAY;AAC1D,SAAO,IAAI,MAAM,CAAC,KAAK,SAAS,GAAG,KAAK,SAAS,CAAC,CAAC,EAAE,MAAM,QAAQ;AACrE;AAIO,IAAM,SAAS,CAAIA,YAA2D;AACnF,MAAG,QAAQ,YAAYA,QAAO,CAAC,CAAC,GAAG;AACjC,WAAO,CAACA,QAAO,CAAC,GAAG,IAAI;AAAA,EACzB;AAEA,SAAOA;AACT;","names":["bounds"]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bessemer/cornerstone",
3
3
  "type": "module",
4
- "version": "0.5.23",
4
+ "version": "0.5.25",
5
5
  "module": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
7
7
  "sideEffects": false,