@karmaniverous/entity-manager 6.12.0 → 6.13.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.
@@ -3,6 +3,7 @@
3
3
  var tslib = require('tslib');
4
4
  var radash = require('radash');
5
5
  var addKeys = require('./addKeys.js');
6
+ var encodeGeneratedProperty = require('./encodeGeneratedProperty.js');
6
7
  var findIndexToken = require('./findIndexToken.js');
7
8
  var ParsedConfig = require('./ParsedConfig.js');
8
9
  var query = require('./query.js');
@@ -48,6 +49,19 @@ class EntityManager {
48
49
  set config(value) {
49
50
  tslib.__classPrivateFieldSet(this, _EntityManager_config, ParsedConfig.configSchema.parse(value), "f");
50
51
  }
52
+ /**
53
+ * Encode a generated property value. Returns a string or undefined if atomicity requirement of sharded properties not met.
54
+ *
55
+ * @param property - {@link Config.generatedProperties | Generated property} key.
56
+ * @param item - Partial {@link ItemMap | `ItemMap`} object.
57
+ *
58
+ * @returns Encoded generated property value.
59
+ *
60
+ * @throws `Error` if `property` is not a {@link Config.generatedProperties | generated property}.
61
+ */
62
+ encodeGeneratedProperty(property, item) {
63
+ return encodeGeneratedProperty.encodeGeneratedProperty(this, property, item);
64
+ }
51
65
  /**
52
66
  * Update generated properties, hash key, and range key on an {@link EntityItem | `EntityItem`} object.
53
67
  *
package/dist/index.d.ts CHANGED
@@ -541,6 +541,17 @@ declare class EntityManager<C extends BaseConfigMap> {
541
541
  * @param value - {@link Config | `Config`} object.
542
542
  */
543
543
  set config(value: ParsedConfig);
544
+ /**
545
+ * Encode a generated property value. Returns a string or undefined if atomicity requirement of sharded properties not met.
546
+ *
547
+ * @param property - {@link Config.generatedProperties | Generated property} key.
548
+ * @param item - Partial {@link ItemMap | `ItemMap`} object.
549
+ *
550
+ * @returns Encoded generated property value.
551
+ *
552
+ * @throws `Error` if `property` is not a {@link Config.generatedProperties | generated property}.
553
+ */
554
+ encodeGeneratedProperty<C extends BaseConfigMap>(property: C['ShardedKeys'] | C['UnshardedKeys'], item: EntityItem<C>): string | undefined;
544
555
  /**
545
556
  * Update generated properties, hash key, and range key on an {@link EntityItem | `EntityItem`} object.
546
557
  *
@@ -584,7 +595,7 @@ declare class EntityManager<C extends BaseConfigMap> {
584
595
  *
585
596
  * @returns Index token if found.
586
597
  */
587
- findIndexToken(hashKeyToken: C['HashKey'] | C['ShardedKeys'], rangeKeyToken: C['RangeKey'] | C['UnshardedKeys'] | C['TranscodedProperties']): string | undefined;
598
+ findIndexToken(hashKeyToken: string, rangeKeyToken: string): string | undefined;
588
599
  /**
589
600
  * Query a database entity across shards in a provider-generic fashion.
590
601
  *
@@ -1,6 +1,7 @@
1
1
  import { __classPrivateFieldSet, __classPrivateFieldGet } from 'tslib';
2
2
  import { pick } from 'radash';
3
3
  import { addKeys } from './addKeys.js';
4
+ import { encodeGeneratedProperty } from './encodeGeneratedProperty.js';
4
5
  import { findIndexToken } from './findIndexToken.js';
5
6
  import { configSchema } from './ParsedConfig.js';
6
7
  import { query } from './query.js';
@@ -46,6 +47,19 @@ class EntityManager {
46
47
  set config(value) {
47
48
  __classPrivateFieldSet(this, _EntityManager_config, configSchema.parse(value), "f");
48
49
  }
50
+ /**
51
+ * Encode a generated property value. Returns a string or undefined if atomicity requirement of sharded properties not met.
52
+ *
53
+ * @param property - {@link Config.generatedProperties | Generated property} key.
54
+ * @param item - Partial {@link ItemMap | `ItemMap`} object.
55
+ *
56
+ * @returns Encoded generated property value.
57
+ *
58
+ * @throws `Error` if `property` is not a {@link Config.generatedProperties | generated property}.
59
+ */
60
+ encodeGeneratedProperty(property, item) {
61
+ return encodeGeneratedProperty(this, property, item);
62
+ }
49
63
  /**
50
64
  * Update generated properties, hash key, and range key on an {@link EntityItem | `EntityItem`} object.
51
65
  *
package/package.json CHANGED
@@ -132,5 +132,5 @@
132
132
  },
133
133
  "type": "module",
134
134
  "types": "dist/index.d.ts",
135
- "version": "6.12.0"
135
+ "version": "6.13.0"
136
136
  }