dynamo-document-builder 0.3.0 → 0.5.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.
@@ -0,0 +1,59 @@
1
+ 'use strict';
2
+
3
+ var tslib_es6 = require('../node_modules/tslib/tslib.es6.cjs');
4
+ var internalConstants = require('../internal-constants.cjs');
5
+ var libDynamodb = require('@aws-sdk/lib-dynamodb');
6
+ var projections_projectionParser = require('../projections/projection-parser.cjs');
7
+ var pMap = require('p-map');
8
+
9
+ var _BatchProjectedGet_config;
10
+ class BatchProjectedGet {
11
+ constructor(config) {
12
+ _BatchProjectedGet_config.set(this, void 0);
13
+ tslib_es6.__classPrivateFieldSet(this, _BatchProjectedGet_config, config, "f");
14
+ }
15
+ execute(entity) {
16
+ return tslib_es6.__awaiter(this, void 0, void 0, function* () {
17
+ var _a, _b, _c, _d, _e, _f, _g, _h;
18
+ const { projectionExpression, attributeExpressionMap } = projections_projectionParser.parseProjection(tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").projection);
19
+ const batchGet = new libDynamodb.BatchGetCommand({
20
+ RequestItems: {
21
+ [entity.table.tableName]: {
22
+ Keys: tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").keys.map(key => entity.buildPrimaryKey(key)),
23
+ ConsistentRead: (_a = tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").consistent) !== null && _a !== void 0 ? _a : false,
24
+ ProjectionExpression: projectionExpression,
25
+ ExpressionAttributeNames: attributeExpressionMap.toDynamoAttributeNames(),
26
+ },
27
+ },
28
+ ReturnConsumedCapacity: tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").returnConsumedCapacity,
29
+ });
30
+ const batchGetResult = yield entity.table.documentClient.send(batchGet, {
31
+ abortSignal: (_b = tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").abortController) === null || _b === void 0 ? void 0 : _b.signal,
32
+ requestTimeout: tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").timeoutMs,
33
+ });
34
+ const rawItems = (_d = (_c = batchGetResult.Responses) === null || _c === void 0 ? void 0 : _c[entity.table.tableName]) !== null && _d !== void 0 ? _d : [];
35
+ let items = [];
36
+ if (rawItems.length > 0) {
37
+ if (tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").skipValidation) {
38
+ items = rawItems;
39
+ }
40
+ else {
41
+ items = yield pMap(rawItems, item => tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").projectionSchema.parseAsync(item), {
42
+ concurrency: internalConstants.BATCH_GET_VALIDATION_CONCURRENCY,
43
+ signal: (_e = tslib_es6.__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").abortController) === null || _e === void 0 ? void 0 : _e.signal,
44
+ });
45
+ }
46
+ }
47
+ return {
48
+ items,
49
+ unprocessedKeys: (_g = (_f = batchGetResult.UnprocessedKeys) === null || _f === void 0 ? void 0 : _f[entity.table.tableName]) === null || _g === void 0 ? void 0 : _g.Keys,
50
+ responseMetadata: batchGetResult.$metadata,
51
+ consumedCapacity: (_h = batchGetResult.ConsumedCapacity) === null || _h === void 0 ? void 0 : _h[0],
52
+ };
53
+ });
54
+ }
55
+ }
56
+ _BatchProjectedGet_config = new WeakMap();
57
+
58
+ exports.BatchProjectedGet = BatchProjectedGet;
59
+ //# sourceMappingURL=batch-projected-get.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batch-projected-get.cjs","sources":["../../src/commands/batch-projected-get.ts"],"sourcesContent":[null],"names":["__classPrivateFieldSet","parseProjection","__classPrivateFieldGet","BatchGetCommand","BATCH_GET_VALIDATION_CONCURRENCY"],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { BaseConfig, BaseResult, BaseCommand } from './base-command.js';
2
+ import { DynamoEntity } from '../core/entity.js';
3
+ import { EntitySchema } from '../core/core-types.js';
4
+ import { Projection } from '../projections/projection-types.js';
5
+ import { ZodObject } from 'zod/v4';
6
+
7
+ type BatchProjectedGetConfig<Schema extends ZodObject, ProjectionSchema extends ZodObject> = BaseConfig & {
8
+ keys: Array<Partial<EntitySchema<Schema>>>;
9
+ consistent?: boolean;
10
+ projection: Projection;
11
+ projectionSchema: ProjectionSchema;
12
+ };
13
+ type BatchProjectedGetResult<ProjectionSchema extends ZodObject> = BaseResult & {
14
+ items: Array<EntitySchema<ProjectionSchema>>;
15
+ unprocessedKeys?: Array<Partial<EntitySchema<ProjectionSchema>>>;
16
+ };
17
+ declare class BatchProjectedGet<Schema extends ZodObject, ProjectionSchema extends ZodObject> implements BaseCommand<BatchProjectedGetResult<ProjectionSchema>, Schema> {
18
+ #private;
19
+ constructor(config: BatchProjectedGetConfig<Schema, ProjectionSchema>);
20
+ execute(entity: DynamoEntity<Schema>): Promise<BatchProjectedGetResult<ProjectionSchema>>;
21
+ }
22
+
23
+ export { BatchProjectedGet };
24
+ export type { BatchProjectedGetConfig, BatchProjectedGetResult };
@@ -0,0 +1,57 @@
1
+ import { __classPrivateFieldSet, __awaiter, __classPrivateFieldGet } from '../node_modules/tslib/tslib.es6.mjs';
2
+ import { BATCH_GET_VALIDATION_CONCURRENCY } from '../internal-constants.mjs';
3
+ import { BatchGetCommand } from '@aws-sdk/lib-dynamodb';
4
+ import { parseProjection } from '../projections/projection-parser.mjs';
5
+ import pMap from 'p-map';
6
+
7
+ var _BatchProjectedGet_config;
8
+ class BatchProjectedGet {
9
+ constructor(config) {
10
+ _BatchProjectedGet_config.set(this, void 0);
11
+ __classPrivateFieldSet(this, _BatchProjectedGet_config, config, "f");
12
+ }
13
+ execute(entity) {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ var _a, _b, _c, _d, _e, _f, _g, _h;
16
+ const { projectionExpression, attributeExpressionMap } = parseProjection(__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").projection);
17
+ const batchGet = new BatchGetCommand({
18
+ RequestItems: {
19
+ [entity.table.tableName]: {
20
+ Keys: __classPrivateFieldGet(this, _BatchProjectedGet_config, "f").keys.map(key => entity.buildPrimaryKey(key)),
21
+ ConsistentRead: (_a = __classPrivateFieldGet(this, _BatchProjectedGet_config, "f").consistent) !== null && _a !== void 0 ? _a : false,
22
+ ProjectionExpression: projectionExpression,
23
+ ExpressionAttributeNames: attributeExpressionMap.toDynamoAttributeNames(),
24
+ },
25
+ },
26
+ ReturnConsumedCapacity: __classPrivateFieldGet(this, _BatchProjectedGet_config, "f").returnConsumedCapacity,
27
+ });
28
+ const batchGetResult = yield entity.table.documentClient.send(batchGet, {
29
+ abortSignal: (_b = __classPrivateFieldGet(this, _BatchProjectedGet_config, "f").abortController) === null || _b === void 0 ? void 0 : _b.signal,
30
+ requestTimeout: __classPrivateFieldGet(this, _BatchProjectedGet_config, "f").timeoutMs,
31
+ });
32
+ const rawItems = (_d = (_c = batchGetResult.Responses) === null || _c === void 0 ? void 0 : _c[entity.table.tableName]) !== null && _d !== void 0 ? _d : [];
33
+ let items = [];
34
+ if (rawItems.length > 0) {
35
+ if (__classPrivateFieldGet(this, _BatchProjectedGet_config, "f").skipValidation) {
36
+ items = rawItems;
37
+ }
38
+ else {
39
+ items = yield pMap(rawItems, item => __classPrivateFieldGet(this, _BatchProjectedGet_config, "f").projectionSchema.parseAsync(item), {
40
+ concurrency: BATCH_GET_VALIDATION_CONCURRENCY,
41
+ signal: (_e = __classPrivateFieldGet(this, _BatchProjectedGet_config, "f").abortController) === null || _e === void 0 ? void 0 : _e.signal,
42
+ });
43
+ }
44
+ }
45
+ return {
46
+ items,
47
+ unprocessedKeys: (_g = (_f = batchGetResult.UnprocessedKeys) === null || _f === void 0 ? void 0 : _f[entity.table.tableName]) === null || _g === void 0 ? void 0 : _g.Keys,
48
+ responseMetadata: batchGetResult.$metadata,
49
+ consumedCapacity: (_h = batchGetResult.ConsumedCapacity) === null || _h === void 0 ? void 0 : _h[0],
50
+ };
51
+ });
52
+ }
53
+ }
54
+ _BatchProjectedGet_config = new WeakMap();
55
+
56
+ export { BatchProjectedGet };
57
+ //# sourceMappingURL=batch-projected-get.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batch-projected-get.mjs","sources":["../../src/commands/batch-projected-get.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ var commands_projectedGet = require('./projected-get.cjs');
7
7
  var commands_projectedQuery = require('./projected-query.cjs');
8
8
  var commands_projectedScan = require('./projected-scan.cjs');
9
9
  var commands_batchGet = require('./batch-get.cjs');
10
+ var commands_batchProjectedGet = require('./batch-projected-get.cjs');
10
11
  var commands_transactGet = require('./transact-get.cjs');
11
12
  var commands_put = require('./put.cjs');
12
13
  var commands_update = require('./update.cjs');
@@ -27,6 +28,7 @@ exports.ProjectedGet = commands_projectedGet.ProjectedGet;
27
28
  exports.ProjectedQuery = commands_projectedQuery.ProjectedQuery;
28
29
  exports.ProjectedScan = commands_projectedScan.ProjectedScan;
29
30
  exports.BatchGet = commands_batchGet.BatchGet;
31
+ exports.BatchProjectedGet = commands_batchProjectedGet.BatchProjectedGet;
30
32
  exports.TransactGet = commands_transactGet.TransactGet;
31
33
  exports.Put = commands_put.Put;
32
34
  exports.Update = commands_update.Update;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,6 +6,7 @@ export { ProjectedGet, ProjectedGetConfig, ProjectedGetResult } from './projecte
6
6
  export { ProjectedQuery, ProjectedQueryConfig, ProjectedQueryResult } from './projected-query.js';
7
7
  export { ProjectedScan, ProjectedScanConfig, ProjectedScanResult } from './projected-scan.js';
8
8
  export { BatchGet, BatchGetConfig, BatchGetResult } from './batch-get.js';
9
+ export { BatchProjectedGet, BatchProjectedGetConfig, BatchProjectedGetResult } from './batch-projected-get.js';
9
10
  export { TransactGet, TransactGetConfig, TransactGetResult } from './transact-get.js';
10
11
  export { Put, PutConfig, PutResult } from './put.js';
11
12
  export { Update, UpdateConfig, UpdateResult } from './update.js';
@@ -5,6 +5,7 @@ export { ProjectedGet } from './projected-get.mjs';
5
5
  export { ProjectedQuery } from './projected-query.mjs';
6
6
  export { ProjectedScan } from './projected-scan.mjs';
7
7
  export { BatchGet } from './batch-get.mjs';
8
+ export { BatchProjectedGet } from './batch-projected-get.mjs';
8
9
  export { TransactGet } from './transact-get.mjs';
9
10
  export { Put } from './put.mjs';
10
11
  export { Update } from './update.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
@@ -102,6 +102,11 @@ function parseContainsExpression(map, expr) {
102
102
  const value = parseValueExpression(map, expr.substringOrElement);
103
103
  return `contains(${operand}, ${value})`;
104
104
  }
105
+ function parseSizeConditionExpression(map, expr) {
106
+ const operand = parseAttributePath(map, expr.operand);
107
+ const value = map.addValue(expr.value);
108
+ return `size(${operand}) ${expr.operator} ${value}`;
109
+ }
105
110
  function parseConditionExpression(map, expr) {
106
111
  if (!('type' in expr)) {
107
112
  throw new errors.DocumentBuilderError('Unknown condition expression');
@@ -125,6 +130,8 @@ function parseConditionExpression(map, expr) {
125
130
  return parseBeginsWithExpression(map, expr);
126
131
  case conditions_conditionSymbols.$contains:
127
132
  return parseContainsExpression(map, expr);
133
+ case conditions_conditionSymbols.$size:
134
+ return parseSizeConditionExpression(map, expr);
128
135
  default:
129
136
  throw new errors.DocumentBuilderError('Unknown expression type');
130
137
  }
@@ -1 +1 @@
1
- {"version":3,"file":"condition-parser.cjs","sources":["../../src/conditions/condition-parser.ts"],"sourcesContent":[null],"names":["$size","DocumentBuilderError","$logical","$comparison","$between","$in","$not","$exists","$type","$beginsWith","$contains","isConditionSymbol","AttributeExpressionMap"],"mappings":"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"}
1
+ {"version":3,"file":"condition-parser.cjs","sources":["../../src/conditions/condition-parser.ts"],"sourcesContent":[null],"names":["$size","DocumentBuilderError","$logical","$comparison","$between","$in","$not","$exists","$type","$beginsWith","$contains","isConditionSymbol","AttributeExpressionMap"],"mappings":";;;;;;AAkCA,SAAS,gBAAgB,CAAC,KAAc,EAAA;AACtC,IAAA,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAKA,iCAAK;AAC/F;AAEA,SAAS,mBAAmB,CAAC,GAA2B,EAAE,IAAoB,EAAA;IAC5E,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC;IACxD,OAAO,CAAA,KAAA,EAAQ,QAAQ,CAAA,CAAA,CAAG;AAC5B;AAEA,SAAS,kBAAkB,CAAC,GAA2B,EAAE,IAAY,EAAA;IACnE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IAC7B,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AACvD;AAEA,SAAS,oBAAoB,CAAC,GAA2B,EAAE,KAAsB,EAAA;AAC/E,IAAA,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE;AAC3B,QAAA,OAAO,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC;IACxC;AACA,IAAA,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;AAC5B;AAEA,SAAS,yBAAyB,CAChC,GAA2B,EAC3B,IAA0B,EAAA;IAE1B,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;IACrD,MAAM,KAAK,GAAW,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC;IAC3D,OAAO,CAAA,EAAG,OAAO,CAAA,CAAA,EAAI,IAAI,CAAC,QAAQ,CAAA,CAAA,EAAI,KAAK,CAAA,CAAE;AAC/C;AAEA,SAAS,sBAAsB,CAAC,GAA2B,EAAE,IAAuB,EAAA;IAClF,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;AACjC,QAAA,MAAM,IAAIC,2BAAoB,CAC5B,4EAA4E,CAC7E;IACH;IACA,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAG;AAC5C,QAAA,IAAI,MAAc;AAClB,QAAA,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC1B,YAAA,MAAM,GAAG,sBAAsB,CAAC,GAAG,EAAE,CAAsB,CAAC;;YAE5D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,CAAsB,CAAC;AACxD,YAAA,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,OAAO,CAAA,CAAA,EAAI,MAAM,CAAA,CAAA,CAAG;YACtB;AACA,YAAA,OAAO,MAAM;QACf;aAAO;AACL,YAAA,MAAM,GAAG,wBAAwB,CAAC,GAAG,EAAE,CAAwB,CAAC;;AAEhE,YAAA,IAAK,CAAyB,CAAC,IAAI,KAAKC,oCAAQ,EAAE;gBAChD,OAAO,CAAA,CAAA,EAAI,MAAM,CAAA,CAAA,CAAG;YACtB;AACA,YAAA,OAAO,MAAM;QACf;AACF,IAAA,CAAC,CAAC;IACF,OAAO,UAAU,CAAC,IAAI,CAAC,CAAA,CAAA,EAAI,IAAI,CAAC,QAAQ,CAAA,CAAA,CAAG,CAAC;AAC9C;AAEA,SAAS,sBAAsB,CAAC,GAA2B,EAAE,IAAuB,EAAA;IAClF,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;AAErD,IAAA,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,UAAU;UAC1C,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU;UACxC,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC;AAE9C,IAAA,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,UAAU;UAC1C,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU;UACxC,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC;AAE9C,IAAA,OAAO,GAAG,OAAO,CAAA,SAAA,EAAY,KAAK,CAAA,KAAA,EAAQ,KAAK,EAAE;AACnD;AAEA,SAAS,iBAAiB,CAAC,GAA2B,EAAE,IAAkB,EAAA;IACxE,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AAC1B,QAAA,MAAM,IAAID,2BAAoB,CAAC,8DAA8D,CAAC;IAChG;IACA,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;IAErD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,oBAAoB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AAE5E,IAAA,OAAO,CAAA,EAAG,OAAO,CAAA,KAAA,EAAQ,MAAM,GAAG;AACpC;AAEA,SAAS,kBAAkB,CAAC,GAA2B,EAAE,IAAmB,EAAA;AAC1E,IAAA,IAAI,SAAiB;AACrB,IAAA,IAAI,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;QACvC,SAAS,GAAG,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,SAA8B,CAAC;IAC9E;SAAO;QACL,SAAS,GAAG,wBAAwB,CAAC,GAAG,EAAE,IAAI,CAAC,SAAgC,CAAC;IAClF;IACA,OAAO,CAAA,KAAA,EAAQ,SAAS,CAAA,CAAA,CAAG;AAC7B;AAEA,SAAS,qBAAqB,CAAC,GAA2B,EAAE,IAAsB,EAAA;IAChF,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;AACrD,IAAA,IAAI,IAAI,CAAC,GAAG,EAAE;QACZ,OAAO,CAAA,qBAAA,EAAwB,OAAO,CAAA,CAAA,CAAG;IAC3C;IACA,OAAO,CAAA,iBAAA,EAAoB,OAAO,CAAA,CAAA,CAAG;AACvC;AAEA,SAAS,wBAAwB,CAAC,GAA2B,EAAE,IAAyB,EAAA;IACtF,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;IACrD,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC;AAC/D,IAAA,OAAO,CAAA,eAAA,EAAkB,OAAO,CAAA,EAAA,EAAK,SAAS,GAAG;AACnD;AAEA,SAAS,yBAAyB,CAChC,GAA2B,EAC3B,IAA0B,EAAA;IAE1B,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;IACrD,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC;AACrD,IAAA,OAAO,CAAA,YAAA,EAAe,OAAO,CAAA,EAAA,EAAK,MAAM,GAAG;AAC7C;AAEA,SAAS,uBAAuB,CAAC,GAA2B,EAAE,IAAwB,EAAA;IACpF,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;IACrD,MAAM,KAAK,GAAG,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,kBAAkB,CAAC;AAChE,IAAA,OAAO,CAAA,SAAA,EAAY,OAAO,CAAA,EAAA,EAAK,KAAK,GAAG;AACzC;AAEA,SAAS,4BAA4B,CACnC,GAA2B,EAC3B,IAA6B,EAAA;IAE7B,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC;IACrD,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;IACtC,OAAO,CAAA,KAAA,EAAQ,OAAO,CAAA,EAAA,EAAK,IAAI,CAAC,QAAQ,CAAA,CAAA,EAAI,KAAK,CAAA,CAAE;AACrD;AAEA,SAAS,wBAAwB,CAAC,GAA2B,EAAE,IAAyB,EAAA;AACtF,IAAA,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,EAAE;AACrB,QAAA,MAAM,IAAIA,2BAAoB,CAAC,8BAA8B,CAAC;IAChE;AAEA,IAAA,QAAQ,IAAI,CAAC,IAAI;AACf,QAAA,KAAKE,uCAAW;AACd,YAAA,OAAO,yBAAyB,CAAC,GAAG,EAAE,IAA4B,CAAC;AACrE,QAAA,KAAKD,oCAAQ;AACX,YAAA,OAAO,sBAAsB,CAAC,GAAG,EAAE,IAAyB,CAAC;AAC/D,QAAA,KAAKE,oCAAQ;AACX,YAAA,OAAO,sBAAsB,CAAC,GAAG,EAAE,IAAyB,CAAC;AAC/D,QAAA,KAAKC,+BAAG;AACN,YAAA,OAAO,iBAAiB,CAAC,GAAG,EAAE,IAAoB,CAAC;AACrD,QAAA,KAAKC,gCAAI;AACP,YAAA,OAAO,kBAAkB,CAAC,GAAG,EAAE,IAAqB,CAAC;AACvD,QAAA,KAAKC,mCAAO;AACV,YAAA,OAAO,qBAAqB,CAAC,GAAG,EAAE,IAAwB,CAAC;AAC7D,QAAA,KAAKC,iCAAK;AACR,YAAA,OAAO,wBAAwB,CAAC,GAAG,EAAE,IAA2B,CAAC;AACnE,QAAA,KAAKC,uCAAW;AACd,YAAA,OAAO,yBAAyB,CAAC,GAAG,EAAE,IAA4B,CAAC;AACrE,QAAA,KAAKC,qCAAS;AACZ,YAAA,OAAO,uBAAuB,CAAC,GAAG,EAAE,IAA0B,CAAC;AACjE,QAAA,KAAKV,iCAAK;AACR,YAAA,OAAO,4BAA4B,CAAC,GAAG,EAAE,IAA+B,CAAC;AAC3E,QAAA;AACE,YAAA,MAAM,IAAIC,2BAAoB,CAAC,yBAAyB,CAAC;;AAE/D;AAEA,SAAS,mBAAmB,CAAC,KAAc,EAAA;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;AAC/C,QAAA,OAAO,KAAK;IACd;IACA,IAAI,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;AACrD,QAAA,OAAO,CAACU,6CAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;IACvC;AACA,IAAA,OAAO,IAAI;AACb;AAEA,SAAS,qBAAqB,CAAC,KAAc,EAAA;IAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;AAC/C,QAAA,OAAO,KAAK;IACd;AACA,IAAA,OAAO,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAIA,6CAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;AAC3F;AAEA,SAAS,sBAAsB,CAAC,GAA2B,EAAE,QAA2B,EAAA;IACtF,MAAM,UAAU,GAAa,EAAE;AAE/B,IAAA,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AACvD,QAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK,EAAE;AAClE,YAAA,MAAM,IAAI,GAAG,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,KAAK,CAAA,EAAA,EAAE,OAAO,GAAyB;YACzD,UAAU,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACtD;aAAO;YACL,MAAM,eAAe,GAAG,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC;AACxD,YAAA,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,KAAK;AAC7C,kBAAE,oBAAoB,CAAC,GAAG,EAAE,KAAwB;AACpD,kBAAE,oBAAoB,CAAC,GAAG,EAAE,KAA6B,CAAC;YAC5D,UAAU,CAAC,IAAI,CAAC,CAAA,EAAG,eAAe,CAAA,GAAA,EAAM,gBAAgB,CAAA,CAAE,CAAC;QAC7D;IACF;AAEA,IAAA,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC;AACjC;AAOM,SAAU,cAAc,CAC5B,SAAoB,EACpB,sBAAA,GAAiD,IAAIC,8CAAsB,EAAE,EAAA;AAE7E,IAAA,IAAI,mBAA2B;AAE/B,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QAC5B,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAG;AACpC,YAAA,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC1B,gBAAA,OAAO,sBAAsB,CAAC,sBAAsB,EAAE,CAAC,CAAC;YAC1D;AAAO,iBAAA,IAAI,qBAAqB,CAAC,CAAC,CAAC,EAAE;AACnC,gBAAA,OAAO,wBAAwB,CAAC,sBAAsB,EAAE,CAAC,CAAC;YAC5D;AACA,YAAA,MAAM,IAAIX,2BAAoB,CAAC,mBAAmB,CAAC;AACrD,QAAA,CAAC,CAAC;AACF,QAAA,mBAAmB,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;IACjD;AAAO,SAAA,IAAI,mBAAmB,CAAC,SAAS,CAAC,EAAE;AACzC,QAAA,mBAAmB,GAAG,sBAAsB,CAAC,sBAAsB,EAAE,SAAS,CAAC;IACjF;AAAO,SAAA,IAAI,qBAAqB,CAAC,SAAS,CAAC,EAAE;AAC3C,QAAA,mBAAmB,GAAG,wBAAwB,CAAC,sBAAsB,EAAE,SAAS,CAAC;IACnF;SAAO;AACL,QAAA,MAAM,IAAIA,2BAAoB,CAAC,mBAAmB,CAAC;IACrD;IAEA,OAAO;QACL,mBAAmB;QACnB,sBAAsB;KACvB;AACH;;;;"}
@@ -1,4 +1,4 @@
1
- import { isConditionSymbol, $contains, $beginsWith, $type, $exists, $not, $in, $between, $logical, $comparison, $size } from './condition-symbols.mjs';
1
+ import { isConditionSymbol, $size, $contains, $beginsWith, $type, $exists, $not, $in, $between, $logical, $comparison } from './condition-symbols.mjs';
2
2
  import { AttributeExpressionMap } from '../attributes/attribute-map.mjs';
3
3
  import { DocumentBuilderError } from '../errors.mjs';
4
4
 
@@ -100,6 +100,11 @@ function parseContainsExpression(map, expr) {
100
100
  const value = parseValueExpression(map, expr.substringOrElement);
101
101
  return `contains(${operand}, ${value})`;
102
102
  }
103
+ function parseSizeConditionExpression(map, expr) {
104
+ const operand = parseAttributePath(map, expr.operand);
105
+ const value = map.addValue(expr.value);
106
+ return `size(${operand}) ${expr.operator} ${value}`;
107
+ }
103
108
  function parseConditionExpression(map, expr) {
104
109
  if (!('type' in expr)) {
105
110
  throw new DocumentBuilderError('Unknown condition expression');
@@ -123,6 +128,8 @@ function parseConditionExpression(map, expr) {
123
128
  return parseBeginsWithExpression(map, expr);
124
129
  case $contains:
125
130
  return parseContainsExpression(map, expr);
131
+ case $size:
132
+ return parseSizeConditionExpression(map, expr);
126
133
  default:
127
134
  throw new DocumentBuilderError('Unknown expression type');
128
135
  }
@@ -1 +1 @@
1
- {"version":3,"file":"condition-parser.mjs","sources":["../../src/conditions/condition-parser.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"condition-parser.mjs","sources":["../../src/conditions/condition-parser.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -73,16 +73,23 @@ type SizeExpression = {
73
73
  type: typeof $size;
74
74
  attribute: Operand;
75
75
  };
76
+ type SizeConditionExpression = {
77
+ type: typeof $size;
78
+ operand: Operand;
79
+ operator: ComparisonOperator;
80
+ value: NativeAttributeValue;
81
+ };
82
+ type SizeConditionExpressionTemplate = Omit<SizeConditionExpression, 'operand'>;
76
83
  type BooleanExpression = ExistsExpression | TypeCheckExpression | BeginsWithExpression | ContainsExpression;
77
84
  type FunctionExpression = BooleanExpression | SizeExpression;
78
- type TemplateExpression = Omit<ComparisonExpression | BetweenExpression | InExpression | BooleanExpression, 'operand'>;
85
+ type TemplateExpression = Omit<ComparisonExpression | BetweenExpression | InExpression | BooleanExpression | SizeConditionExpression, 'operand'>;
79
86
  /**
80
87
  * Implicit AND between all attributes in the template
81
88
  * This is an object where keys are operands and values are either values or template expressions
82
89
  */
83
90
  type ConditionTemplate = Record<Operand, ValueExpression | TemplateExpression>;
84
- type ConditionExpression = ComparisonExpression | LogicalExpression | BetweenExpression | InExpression | NotExpression | BooleanExpression;
91
+ type ConditionExpression = ComparisonExpression | LogicalExpression | BetweenExpression | InExpression | NotExpression | BooleanExpression | SizeConditionExpression;
85
92
  type ConditionExpressionTemplate = ConditionExpression | ConditionTemplate;
86
93
  type Condition = ConditionExpressionTemplate | ConditionExpressionTemplate[];
87
94
 
88
- export type { BeginsWithExpression, BeginsWithExpressionTemplate, BetweenExpression, BetweenExpressionTemplate, BooleanExpression, ComparisonExpression, ComparisonExpressionTemplate, ComparisonOperator, Condition, ConditionExpression, ConditionExpressionTemplate, ConditionTemplate, ContainsExpression, ContainsExpressionTemplate, DynamoAttributeType, ExistsExpression, ExistsExpressionTemplate, FunctionExpression, InExpression, InExpressionTemplate, LogicalExpression, LogicalOperator, NotExpression, Operand, SizeExpression, TemplateExpression, TypeCheckExpression, TypeCheckExpressionTemplate, ValueExpression };
95
+ export type { BeginsWithExpression, BeginsWithExpressionTemplate, BetweenExpression, BetweenExpressionTemplate, BooleanExpression, ComparisonExpression, ComparisonExpressionTemplate, ComparisonOperator, Condition, ConditionExpression, ConditionExpressionTemplate, ConditionTemplate, ContainsExpression, ContainsExpressionTemplate, DynamoAttributeType, ExistsExpression, ExistsExpressionTemplate, FunctionExpression, InExpression, InExpressionTemplate, LogicalExpression, LogicalOperator, NotExpression, Operand, SizeConditionExpression, SizeConditionExpressionTemplate, SizeExpression, TemplateExpression, TypeCheckExpression, TypeCheckExpressionTemplate, ValueExpression };
@@ -2,7 +2,7 @@ export { and } from './and.js';
2
2
  export { beginsWith } from './begins-with.js';
3
3
  export { between } from './between.js';
4
4
  export { ConditionParserResult, parseCondition } from './condition-parser.js';
5
- export { BeginsWithExpression, BeginsWithExpressionTemplate, BetweenExpression, BetweenExpressionTemplate, BooleanExpression, ComparisonExpression, ComparisonExpressionTemplate, ComparisonOperator, Condition, ConditionExpression, ConditionExpressionTemplate, ConditionTemplate, ContainsExpression, ContainsExpressionTemplate, DynamoAttributeType, ExistsExpression, ExistsExpressionTemplate, FunctionExpression, InExpression, InExpressionTemplate, LogicalExpression, LogicalOperator, NotExpression, Operand, SizeExpression, TemplateExpression, TypeCheckExpression, TypeCheckExpressionTemplate, ValueExpression } from './condition-types.js';
5
+ export { BeginsWithExpression, BeginsWithExpressionTemplate, BetweenExpression, BetweenExpressionTemplate, BooleanExpression, ComparisonExpression, ComparisonExpressionTemplate, ComparisonOperator, Condition, ConditionExpression, ConditionExpressionTemplate, ConditionTemplate, ContainsExpression, ContainsExpressionTemplate, DynamoAttributeType, ExistsExpression, ExistsExpressionTemplate, FunctionExpression, InExpression, InExpressionTemplate, LogicalExpression, LogicalOperator, NotExpression, Operand, SizeConditionExpression, SizeConditionExpressionTemplate, SizeExpression, TemplateExpression, TypeCheckExpression, TypeCheckExpressionTemplate, ValueExpression } from './condition-types.js';
6
6
  export { contains } from './contains.js';
7
7
  export { equals } from './equals.js';
8
8
  export { exists } from './exists.js';
@@ -2,10 +2,18 @@
2
2
 
3
3
  var conditions_conditionSymbols = require('./condition-symbols.cjs');
4
4
 
5
- function size(attributeNameOrPath) {
5
+ function size(valueOrComparison) {
6
+ if (typeof valueOrComparison === 'number') {
7
+ return {
8
+ type: conditions_conditionSymbols.$size,
9
+ operator: '=',
10
+ value: valueOrComparison,
11
+ };
12
+ }
6
13
  return {
7
14
  type: conditions_conditionSymbols.$size,
8
- attribute: attributeNameOrPath,
15
+ operator: valueOrComparison.operator,
16
+ value: valueOrComparison.value,
9
17
  };
10
18
  }
11
19
 
@@ -1 +1 @@
1
- {"version":3,"file":"size.cjs","sources":["../../src/conditions/size.ts"],"sourcesContent":[null],"names":["$size"],"mappings":";;;;AAGM,SAAU,IAAI,CAAC,mBAA2B,EAAA;IAC9C,OAAO;AACL,QAAA,IAAI,EAAEA,iCAAK;AACX,QAAA,SAAS,EAAE,mBAAmB;KAC/B;AACH;;;;"}
1
+ {"version":3,"file":"size.cjs","sources":["../../src/conditions/size.ts"],"sourcesContent":[null],"names":["$size"],"mappings":";;;;AAMM,SAAU,IAAI,CAClB,iBAAwD,EAAA;AAExD,IAAA,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,OAAO;AACL,YAAA,IAAI,EAAEA,iCAAK;AACX,YAAA,QAAQ,EAAE,GAAG;AACb,YAAA,KAAK,EAAE,iBAAiB;SACzB;IACH;IAEA,OAAO;AACL,QAAA,IAAI,EAAEA,iCAAK;QACX,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;QACpC,KAAK,EAAE,iBAAiB,CAAC,KAAK;KAC/B;AACH;;;;"}
@@ -1,5 +1,5 @@
1
- import { SizeExpression } from './condition-types.js';
1
+ import { ComparisonExpressionTemplate, SizeConditionExpressionTemplate } from './condition-types.js';
2
2
 
3
- declare function size(attributeNameOrPath: string): SizeExpression;
3
+ declare function size(valueOrComparison: number | ComparisonExpressionTemplate): SizeConditionExpressionTemplate;
4
4
 
5
5
  export { size };
@@ -1,9 +1,17 @@
1
1
  import { $size } from './condition-symbols.mjs';
2
2
 
3
- function size(attributeNameOrPath) {
3
+ function size(valueOrComparison) {
4
+ if (typeof valueOrComparison === 'number') {
5
+ return {
6
+ type: $size,
7
+ operator: '=',
8
+ value: valueOrComparison,
9
+ };
10
+ }
4
11
  return {
5
12
  type: $size,
6
- attribute: attributeNameOrPath,
13
+ operator: valueOrComparison.operator,
14
+ value: valueOrComparison.value,
7
15
  };
8
16
  }
9
17
 
@@ -1 +1 @@
1
- {"version":3,"file":"size.mjs","sources":["../../src/conditions/size.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGM,SAAU,IAAI,CAAC,mBAA2B,EAAA;IAC9C,OAAO;AACL,QAAA,IAAI,EAAE,KAAK;AACX,QAAA,SAAS,EAAE,mBAAmB;KAC/B;AACH;;;;"}
1
+ {"version":3,"file":"size.mjs","sources":["../../src/conditions/size.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAMM,SAAU,IAAI,CAClB,iBAAwD,EAAA;AAExD,IAAA,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,OAAO;AACL,YAAA,IAAI,EAAE,KAAK;AACX,YAAA,QAAQ,EAAE,GAAG;AACb,YAAA,KAAK,EAAE,iBAAiB;SACzB;IACH;IAEA,OAAO;AACL,QAAA,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;QACpC,KAAK,EAAE,iBAAiB,CAAC,KAAK;KAC/B;AACH;;;;"}
package/dist/index.cjs CHANGED
@@ -8,6 +8,7 @@ var commands_projectedGet = require('./commands/projected-get.cjs');
8
8
  var commands_projectedQuery = require('./commands/projected-query.cjs');
9
9
  var commands_projectedScan = require('./commands/projected-scan.cjs');
10
10
  var commands_batchGet = require('./commands/batch-get.cjs');
11
+ var commands_batchProjectedGet = require('./commands/batch-projected-get.cjs');
11
12
  var commands_transactGet = require('./commands/transact-get.cjs');
12
13
  var commands_put = require('./commands/put.cjs');
13
14
  var commands_update = require('./commands/update.cjs');
@@ -61,6 +62,7 @@ exports.ProjectedGet = commands_projectedGet.ProjectedGet;
61
62
  exports.ProjectedQuery = commands_projectedQuery.ProjectedQuery;
62
63
  exports.ProjectedScan = commands_projectedScan.ProjectedScan;
63
64
  exports.BatchGet = commands_batchGet.BatchGet;
65
+ exports.BatchProjectedGet = commands_batchProjectedGet.BatchProjectedGet;
64
66
  exports.TransactGet = commands_transactGet.TransactGet;
65
67
  exports.Put = commands_put.Put;
66
68
  exports.Update = commands_update.Update;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.d.ts CHANGED
@@ -7,6 +7,7 @@ export { ProjectedGet, ProjectedGetConfig, ProjectedGetResult } from './commands
7
7
  export { ProjectedQuery, ProjectedQueryConfig, ProjectedQueryResult } from './commands/projected-query.js';
8
8
  export { ProjectedScan, ProjectedScanConfig, ProjectedScanResult } from './commands/projected-scan.js';
9
9
  export { BatchGet, BatchGetConfig, BatchGetResult } from './commands/batch-get.js';
10
+ export { BatchProjectedGet, BatchProjectedGetConfig, BatchProjectedGetResult } from './commands/batch-projected-get.js';
10
11
  export { TransactGet, TransactGetConfig, TransactGetResult } from './commands/transact-get.js';
11
12
  export { Put, PutConfig, PutResult } from './commands/put.js';
12
13
  export { Update, UpdateConfig, UpdateResult } from './commands/update.js';
@@ -21,7 +22,7 @@ export { and } from './conditions/and.js';
21
22
  export { beginsWith } from './conditions/begins-with.js';
22
23
  export { between } from './conditions/between.js';
23
24
  export { ConditionParserResult, parseCondition } from './conditions/condition-parser.js';
24
- export { BeginsWithExpression, BeginsWithExpressionTemplate, BetweenExpression, BetweenExpressionTemplate, BooleanExpression, ComparisonExpression, ComparisonExpressionTemplate, ComparisonOperator, Condition, ConditionExpression, ConditionExpressionTemplate, ConditionTemplate, ContainsExpression, ContainsExpressionTemplate, DynamoAttributeType, ExistsExpression, ExistsExpressionTemplate, FunctionExpression, InExpression, InExpressionTemplate, LogicalExpression, LogicalOperator, NotExpression, Operand, SizeExpression, TemplateExpression, TypeCheckExpression, TypeCheckExpressionTemplate, ValueExpression } from './conditions/condition-types.js';
25
+ export { BeginsWithExpression, BeginsWithExpressionTemplate, BetweenExpression, BetweenExpressionTemplate, BooleanExpression, ComparisonExpression, ComparisonExpressionTemplate, ComparisonOperator, Condition, ConditionExpression, ConditionExpressionTemplate, ConditionTemplate, ContainsExpression, ContainsExpressionTemplate, DynamoAttributeType, ExistsExpression, ExistsExpressionTemplate, FunctionExpression, InExpression, InExpressionTemplate, LogicalExpression, LogicalOperator, NotExpression, Operand, SizeConditionExpression, SizeConditionExpressionTemplate, SizeExpression, TemplateExpression, TypeCheckExpression, TypeCheckExpressionTemplate, ValueExpression } from './conditions/condition-types.js';
25
26
  export { contains } from './conditions/contains.js';
26
27
  export { equals } from './conditions/equals.js';
27
28
  export { exists } from './conditions/exists.js';
package/dist/index.mjs CHANGED
@@ -6,6 +6,7 @@ export { ProjectedGet } from './commands/projected-get.mjs';
6
6
  export { ProjectedQuery } from './commands/projected-query.mjs';
7
7
  export { ProjectedScan } from './commands/projected-scan.mjs';
8
8
  export { BatchGet } from './commands/batch-get.mjs';
9
+ export { BatchProjectedGet } from './commands/batch-projected-get.mjs';
9
10
  export { TransactGet } from './commands/transact-get.mjs';
10
11
  export { Put } from './commands/put.mjs';
11
12
  export { Update } from './commands/update.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dynamo-document-builder",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "DynamoDB single table design and data validation made easy using TypeScript and Zod ⚡️",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",