@furystack/core 11.3.1 → 12.0.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.
Files changed (82) hide show
  1. package/README.md +1 -1
  2. package/{dist → esm}/create-physical-store-tests.js +85 -90
  3. package/esm/create-physical-store-tests.js.map +1 -0
  4. package/esm/errors/aggregated-error.js +11 -0
  5. package/esm/errors/aggregated-error.js.map +1 -0
  6. package/esm/errors/authorization-error.js +3 -0
  7. package/{dist → esm}/errors/authorization-error.js.map +1 -1
  8. package/esm/errors/index.js +3 -0
  9. package/esm/errors/index.js.map +1 -0
  10. package/esm/global-disposables.js +26 -0
  11. package/esm/global-disposables.js.map +1 -0
  12. package/esm/helpers.js +38 -0
  13. package/esm/helpers.js.map +1 -0
  14. package/{dist → esm}/identity-context.js +3 -6
  15. package/esm/identity-context.js.map +1 -0
  16. package/{dist → esm}/in-memory-store.js +6 -11
  17. package/esm/in-memory-store.js.map +1 -0
  18. package/esm/index.js +9 -0
  19. package/esm/index.js.map +1 -0
  20. package/esm/models/physical-store.js +30 -0
  21. package/esm/models/physical-store.js.map +1 -0
  22. package/esm/models/user.js +6 -0
  23. package/esm/models/user.js.map +1 -0
  24. package/{dist → esm}/store-manager.js +5 -10
  25. package/esm/store-manager.js.map +1 -0
  26. package/package.json +29 -9
  27. package/src/create-physical-store-tests.ts +1 -0
  28. package/src/global-disposable.spec.ts +2 -1
  29. package/src/helpers.ts +1 -2
  30. package/src/identity-context.spec.ts +4 -3
  31. package/src/in-memory-store.spec.ts +1 -0
  32. package/src/in-memory-store.ts +0 -1
  33. package/src/index.ts +0 -1
  34. package/src/models/physical-store.ts +0 -5
  35. package/src/store-manager.spec.ts +1 -0
  36. package/src/store-manager.ts +0 -2
  37. package/types/create-physical-store-tests.d.ts.map +1 -1
  38. package/types/helpers.d.ts +1 -2
  39. package/types/helpers.d.ts.map +1 -1
  40. package/types/in-memory-store.d.ts +0 -1
  41. package/types/in-memory-store.d.ts.map +1 -1
  42. package/types/index.d.ts +0 -1
  43. package/types/index.d.ts.map +1 -1
  44. package/types/models/physical-store.d.ts +0 -5
  45. package/types/models/physical-store.d.ts.map +1 -1
  46. package/types/store-manager.d.ts +0 -2
  47. package/types/store-manager.d.ts.map +1 -1
  48. package/dist/create-physical-store-tests.js.map +0 -1
  49. package/dist/errors/aggregated-error.js +0 -15
  50. package/dist/errors/aggregated-error.js.map +0 -1
  51. package/dist/errors/authorization-error.js +0 -7
  52. package/dist/errors/index.js +0 -19
  53. package/dist/errors/index.js.map +0 -1
  54. package/dist/global-disposable.spec.js +0 -33
  55. package/dist/global-disposable.spec.js.map +0 -1
  56. package/dist/global-disposables.js +0 -29
  57. package/dist/global-disposables.js.map +0 -1
  58. package/dist/helpers.js +0 -48
  59. package/dist/helpers.js.map +0 -1
  60. package/dist/identity-context.js.map +0 -1
  61. package/dist/identity-context.spec.js +0 -41
  62. package/dist/identity-context.spec.js.map +0 -1
  63. package/dist/in-memory-store.js.map +0 -1
  64. package/dist/in-memory-store.spec.js +0 -20
  65. package/dist/in-memory-store.spec.js.map +0 -1
  66. package/dist/index.js +0 -26
  67. package/dist/index.js.map +0 -1
  68. package/dist/models/physical-store.js +0 -36
  69. package/dist/models/physical-store.js.map +0 -1
  70. package/dist/models/user.js +0 -10
  71. package/dist/models/user.js.map +0 -1
  72. package/dist/store-manager.js.map +0 -1
  73. package/dist/store-manager.spec.js +0 -64
  74. package/dist/store-manager.spec.js.map +0 -1
  75. package/types/global-disposable.spec.d.ts +0 -2
  76. package/types/global-disposable.spec.d.ts.map +0 -1
  77. package/types/identity-context.spec.d.ts +0 -2
  78. package/types/identity-context.spec.d.ts.map +0 -1
  79. package/types/in-memory-store.spec.d.ts +0 -2
  80. package/types/in-memory-store.spec.d.ts.map +0 -1
  81. package/types/store-manager.spec.d.ts +0 -2
  82. package/types/store-manager.spec.d.ts.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-disposables.js","sourceRoot":"","sources":["../src/global-disposables.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAoB,IAAI,GAAG,EAAE,CAAA;AAE3D;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;IACrC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IACvF,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAA;IAC3D,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE;QACzB,OAAO,CAAC,IAAI,CAAC,wCAAwC,KAAK,CAAC,MAAM,6BAA6B,EAAE,KAAK,CAAC,CAAA;KACvG;AACH,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEb,mCAAmC;AACnC,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;AAE7C,uBAAuB;AACvB,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;AAE/C,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAA;AAEtD,oDAAoD;AACpD,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;AAChD,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;AAEhD,8BAA8B;AAC9B,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAGzD;AAAC,UAAkB,CAAC,MAAM,EAAE,gBAAgB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAA"}
package/esm/helpers.js ADDED
@@ -0,0 +1,38 @@
1
+ import { globalDisposables } from './global-disposables';
2
+ import { IdentityContext } from './identity-context';
3
+ import { StoreManager } from './store-manager';
4
+ /**
5
+ * The disposable will be disposed on process exit
6
+ * @param disposable The Disposable object to dispose on process exit
7
+ * @returns A set of global disposables
8
+ */
9
+ export const disposeOnProcessExit = (disposable) => globalDisposables.add(disposable);
10
+ /**
11
+ * @param injector The Injector instance
12
+ * @returns the current authentication status from the identity context
13
+ */
14
+ export const isAuthenticated = async (injector) => injector.getInstance(IdentityContext).isAuthenticated();
15
+ /**
16
+ * @param injector The Injector instance
17
+ * @param {...any} roles A list of roles
18
+ * @returns if the current authorization status from the identity context
19
+ */
20
+ export const isAuthorized = async (injector, ...roles) => injector.getInstance(IdentityContext).isAuthorized(...roles);
21
+ /**
22
+ * @param injector The Injector instance
23
+ * @returns The current user from the identity context
24
+ */
25
+ export const getCurrentUser = async (injector) => injector.getInstance(IdentityContext).getCurrentUser();
26
+ /**
27
+ * @param injector The Injector instance
28
+ * @returns A Store Manager instance to setup stores
29
+ */
30
+ export const getStoreManager = (injector) => injector.getInstance(StoreManager);
31
+ /**
32
+ *
33
+ * @param injector The Injector instance
34
+ * @param store The store to add
35
+ * @returns The Store Manager instance for chaining
36
+ */
37
+ export const addStore = (injector, store) => getStoreManager(injector).addStore(store);
38
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAG9C;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,UAAsB,EAAE,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;AAEjG;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,QAAkB,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,eAAe,EAAE,CAAA;AAEpH;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,QAAkB,EAAE,GAAG,KAAe,EAAE,EAAE,CAC3E,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAA;AAE9D;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,QAAkB,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,cAAc,EAAE,CAAA;AAElH;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAkB,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;AAEzF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAiC,QAAkB,EAAE,KAAoC,EAAE,EAAE,CACnH,eAAe,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA"}
@@ -1,13 +1,10 @@
1
- "use strict";
2
1
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
2
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
3
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
6
  };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.IdentityContext = void 0;
10
- const inject_1 = require("@furystack/inject");
7
+ import { Injectable } from '@furystack/inject';
11
8
  let IdentityContext = class IdentityContext {
12
9
  async isAuthenticated() {
13
10
  return false;
@@ -20,7 +17,7 @@ let IdentityContext = class IdentityContext {
20
17
  }
21
18
  };
22
19
  IdentityContext = __decorate([
23
- (0, inject_1.Injectable)({ lifetime: 'scoped' })
20
+ Injectable({ lifetime: 'scoped' })
24
21
  ], IdentityContext);
25
- exports.IdentityContext = IdentityContext;
22
+ export { IdentityContext };
26
23
  //# sourceMappingURL=identity-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity-context.js","sourceRoot":"","sources":["../src/identity-context.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAI9C,IAAa,eAAe,GAA5B,MAAa,eAAe;IACnB,KAAK,CAAC,eAAe;QAC1B,OAAO,KAAK,CAAA;IACd,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,GAAG,MAAgB;QAC3C,OAAO,KAAK,CAAA;IACd,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACnC,CAAC;CACF,CAAA;AAZY,eAAe;IAD3B,UAAU,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;GACtB,eAAe,CAY3B;SAZY,eAAe"}
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InMemoryStore = void 0;
4
- const physical_store_1 = require("./models/physical-store");
5
- class InMemoryStore {
1
+ import { selectFields, isOperator, isLogicalOperator } from './models/physical-store';
2
+ export class InMemoryStore {
6
3
  /**
7
4
  *
8
5
  * @param keys The keys to remove from the store
@@ -27,7 +24,7 @@ class InMemoryStore {
27
24
  }
28
25
  return values.filter((item) => {
29
26
  for (const key in filter) {
30
- if ((0, physical_store_1.isLogicalOperator)(key)) {
27
+ if (isLogicalOperator(key)) {
31
28
  const filterValue = filter[key];
32
29
  switch (key) {
33
30
  case '$and':
@@ -46,7 +43,7 @@ class InMemoryStore {
46
43
  }
47
44
  else if (typeof filter[key] === 'object') {
48
45
  for (const filterKey in filter[key]) {
49
- if ((0, physical_store_1.isOperator)(filterKey)) {
46
+ if (isOperator(filterKey)) {
50
47
  const itemValue = item[key];
51
48
  const filterValue = filter[key][filterKey];
52
49
  switch (filterKey) {
@@ -145,7 +142,7 @@ class InMemoryStore {
145
142
  }
146
143
  if (searchOptions.select) {
147
144
  value = value.map((item) => {
148
- return (0, physical_store_1.selectFields)(item, ...searchOptions.select);
145
+ return selectFields(item, ...searchOptions.select);
149
146
  });
150
147
  }
151
148
  return value;
@@ -167,7 +164,6 @@ class InMemoryStore {
167
164
  }
168
165
  /**
169
166
  * Creates an InMemoryStore that can be used for testing purposes.
170
- *
171
167
  * @param options Options for the In Memory Store
172
168
  * @param options.primaryKey The name of the primary key field
173
169
  * @param options.model The Entity Model
@@ -176,7 +172,7 @@ class InMemoryStore {
176
172
  this.cache = new Map();
177
173
  this.get = async (key, select) => {
178
174
  const item = this.cache.get(key);
179
- return item && select ? (0, physical_store_1.selectFields)(item, ...select) : item;
175
+ return item && select ? selectFields(item, ...select) : item;
180
176
  };
181
177
  this.evaluateLike = (value, likeString) => {
182
178
  const likeRegex = `^${likeString.replace(/%/g, '.*')}$`;
@@ -186,5 +182,4 @@ class InMemoryStore {
186
182
  this.model = options.model;
187
183
  }
188
184
  }
189
- exports.InMemoryStore = InMemoryStore;
190
185
  //# sourceMappingURL=in-memory-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory-store.js","sourceRoot":"","sources":["../src/in-memory-store.ts"],"names":[],"mappings":"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"}
package/esm/index.js ADDED
@@ -0,0 +1,9 @@
1
+ export * from './errors';
2
+ export * from './models/physical-store';
3
+ export * from './models/user';
4
+ export * from './in-memory-store';
5
+ export * from './store-manager';
6
+ export * from './global-disposables';
7
+ export * from './identity-context';
8
+ export * from './helpers';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA"}
@@ -0,0 +1,30 @@
1
+ export const NumberComparisonOperators = ['$gt', '$gte', '$lt', '$lte'];
2
+ export const StringComparisonOperators = ['$startsWith', '$endsWith', '$like', '$regex'];
3
+ export const SingleComparisonOperators = ['$eq', '$ne'];
4
+ export const ArrayComparisonOperators = ['$in', '$nin'];
5
+ export const LogicalOperators = ['$and', '$not', '$nor', '$or'];
6
+ export const allOperators = [
7
+ ...SingleComparisonOperators,
8
+ ...NumberComparisonOperators,
9
+ ...ArrayComparisonOperators,
10
+ ...LogicalOperators,
11
+ ...StringComparisonOperators,
12
+ ];
13
+ export const isLogicalOperator = (propertyString) => LogicalOperators.includes(propertyString);
14
+ export const isOperator = (propertyString) => allOperators.includes(propertyString);
15
+ export const t = {
16
+ a: { $eq: 3 },
17
+ b: { $in: ['a', 'b', 'c'] },
18
+ $and: [{ a: { $eq: 2 } }],
19
+ };
20
+ export const selectFields = (entry, ...fields) => {
21
+ const returnValue = {};
22
+ Object.keys(entry).map((key) => {
23
+ const field = key;
24
+ if (fields.includes(field)) {
25
+ returnValue[field] = entry[field];
26
+ }
27
+ });
28
+ return returnValue;
29
+ };
30
+ //# sourceMappingURL=physical-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"physical-store.js","sourceRoot":"","sources":["../../src/models/physical-store.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAU,CAAA;AAEhF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAA;AACjG,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,KAAK,EAAE,KAAK,CAAU,CAAA;AAEhE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KAAK,EAAE,MAAM,CAAU,CAAA;AAChE,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAU,CAAA;AAExE,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,GAAG,yBAAyB;IAC5B,GAAG,yBAAyB;IAC5B,GAAG,wBAAwB;IAC3B,GAAG,gBAAgB;IACnB,GAAG,yBAAyB;CACpB,CAAA;AAUV,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,cAAsB,EAAuD,EAAE,CAC/G,gBAAgB,CAAC,QAAQ,CAAC,cAAmD,CAAC,CAAA;AAEhF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,cAAsB,EAAmD,EAAE,CACpG,YAAY,CAAC,QAAQ,CAAC,cAA+C,CAAC,CAAA;AAExE,MAAM,CAAC,MAAM,CAAC,GAAqD;IACjE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;IACb,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;IAC3B,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;CAC1B,CAAA;AAuCD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAkD,KAAQ,EAAE,GAAG,MAAc,EAAE,EAAE;IAC3G,MAAM,WAAW,GAAG,EAA8B,CAAA;IAClD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAmB,GAAqB,CAAA;QACnD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;YAC1B,WAAW,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;SAClC;IACH,CAAC,CAAC,CAAA;IACF,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Class model that represents an application user
3
+ */
4
+ export class User {
5
+ }
6
+ //# sourceMappingURL=user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,IAAI;CAUhB"}
@@ -1,14 +1,11 @@
1
- "use strict";
2
1
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
2
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
3
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
6
  };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.StoreManager = void 0;
10
- const inject_1 = require("@furystack/inject");
11
- const errors_1 = require("./errors");
7
+ import { Injectable } from '@furystack/inject';
8
+ import { AggregatedError } from './errors';
12
9
  /**
13
10
  * Manager class for store instances
14
11
  */
@@ -23,14 +20,13 @@ let StoreManager = class StoreManager {
23
20
  const result = await Promise.allSettled([...this.stores.entries()].map(async ([_model, store]) => store.dispose()));
24
21
  const fails = result.filter((r) => r.status === 'rejected');
25
22
  if (fails && fails.length) {
26
- const error = new errors_1.AggregatedError(`There was an error during disposing ${fails.length} stores: ${fails.map((f) => f.reason)}`, fails);
23
+ const error = new AggregatedError(`There was an error during disposing ${fails.length} stores: ${fails.map((f) => f.reason)}`, fails);
27
24
  throw error;
28
25
  }
29
26
  }
30
27
  /**
31
28
  * Returns a store model for a constructable object.
32
29
  * Throws error if no store is registered
33
- *
34
30
  * @param model The Constructable object
35
31
  * @param primaryKey The Primary Key field
36
32
  * @throws if the Store is not registered
@@ -48,7 +44,6 @@ let StoreManager = class StoreManager {
48
44
  }
49
45
  /**
50
46
  * Adds a store instance to the StoreManager class
51
- *
52
47
  * @param store The store to add
53
48
  * @returns the StoreManager instance for chaining
54
49
  */
@@ -58,7 +53,7 @@ let StoreManager = class StoreManager {
58
53
  }
59
54
  };
60
55
  StoreManager = __decorate([
61
- (0, inject_1.Injectable)({ lifetime: 'singleton' })
56
+ Injectable({ lifetime: 'singleton' })
62
57
  ], StoreManager);
63
- exports.StoreManager = StoreManager;
58
+ export { StoreManager };
64
59
  //# sourceMappingURL=store-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store-manager.js","sourceRoot":"","sources":["../src/store-manager.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAG1C;;GAEG;AAEH,IAAa,YAAY,GAAzB,MAAa,YAAY;IAAzB;QAeU,WAAM,GAAyD,IAAI,GAAG,EAAE,CAAA;IAkClF,CAAC;IAhDC;;OAEG;IACI,KAAK,CAAC,OAAO;QAClB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;QACnH,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAA4B,CAAA;QACtF,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE;YACzB,MAAM,KAAK,GAAG,IAAI,eAAe,CAC/B,uCAAuC,KAAK,CAAC,MAAM,YAAY,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAC3F,KAAK,CACN,CAAA;YACD,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAGD;;;;;;;OAOG;IACI,WAAW,CAIhB,KAAuB,EAAE,UAAuB;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACvC,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,KAAK,CAAC,wBAAwB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;SACnD;QACD,IAAI,UAAU,KAAK,QAAQ,CAAC,UAAU,EAAE;YACtC,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAA;SACtC;QACD,OAAO,QAAiB,CAAA;IAC1B,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAiC,KAAoC;QAClF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAgC,CAAC,CAAA;QAC9D,OAAO,IAAI,CAAA;IACb,CAAC;CACF,CAAA;AAjDY,YAAY;IADxB,UAAU,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;GACzB,YAAY,CAiDxB;SAjDY,YAAY"}
package/package.json CHANGED
@@ -1,10 +1,31 @@
1
1
  {
2
2
  "name": "@furystack/core",
3
- "version": "11.3.1",
3
+ "version": "12.0.1",
4
4
  "description": "Core FuryStack package",
5
- "main": "dist/index.js",
5
+ "type": "module",
6
+ "scripts": {
7
+ "build:es6": "tsc --outDir ./esm"
8
+ },
9
+ "exports": {
10
+ ".": {
11
+ "import": "./esm/index.js",
12
+ "types": "./types/index.d.ts"
13
+ },
14
+ "./create-physical-store-tests": {
15
+ "import": "./esm/create-physical-store-tests.js",
16
+ "types": "./types/create-physical-store-tests.d.ts"
17
+ },
18
+ "./package.json": "./package.json"
19
+ },
20
+ "typesVersions": {
21
+ "*": {
22
+ "*": [
23
+ "types/*"
24
+ ]
25
+ }
26
+ },
6
27
  "files": [
7
- "dist",
28
+ "esm",
8
29
  "types",
9
30
  "src"
10
31
  ],
@@ -26,14 +47,13 @@
26
47
  },
27
48
  "homepage": "https://github.com/furystack/furystack",
28
49
  "devDependencies": {
29
- "@types/jest": "^29.5.0",
30
- "@types/node": "^18.15.11"
50
+ "@types/node": "^18.15.11",
51
+ "typescript": "^5.0.4",
52
+ "vitest": "^0.30.1"
31
53
  },
32
54
  "dependencies": {
33
- "@furystack/inject": "^7.1.9",
34
- "@furystack/utils": "^3.1.8",
35
- "semaphore-async-await": "^1.5.1"
55
+ "@furystack/inject": "^8.0.1",
56
+ "@furystack/utils": "^4.0.1"
36
57
  },
37
- "typings": "./types/index.d.ts",
38
58
  "gitHead": "1045d854bfd8c475b7035471d130d401417a2321"
39
59
  }
@@ -1,6 +1,7 @@
1
1
  import type { PhysicalStore } from './models/physical-store'
2
2
  import { usingAsync } from '@furystack/utils'
3
3
  import { Injector } from '@furystack/inject'
4
+ import { describe, it, expect } from 'vitest'
4
5
 
5
6
  export class TestClass {
6
7
  id!: number
@@ -2,6 +2,7 @@ import { Injector } from '@furystack/inject'
2
2
  import { using, usingAsync } from '@furystack/utils'
3
3
  import { globalDisposables, exitHandler } from './global-disposables'
4
4
  import { disposeOnProcessExit } from './helpers'
5
+ import { describe, it, expect, vi } from 'vitest'
5
6
 
6
7
  describe('Global Disposables', () => {
7
8
  it('Should be empty by default', () => {
@@ -24,7 +25,7 @@ describe('Global Disposables', () => {
24
25
  })
25
26
  it('Should dispose the injector on exit', async () => {
26
27
  usingAsync(new Injector(), async (i) => {
27
- i.dispose = jest.fn(i.dispose)
28
+ i.dispose = vi.fn(i.dispose)
28
29
  disposeOnProcessExit(i)
29
30
  await exitHandler()
30
31
  expect(i.dispose).toBeCalled()
package/src/helpers.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Injector } from '@furystack/inject/types/injector'
1
+ import type { Injector } from '@furystack/inject'
2
2
  import { globalDisposables } from './global-disposables'
3
3
  import { IdentityContext } from './identity-context'
4
4
  import type { Disposable } from '@furystack/utils'
@@ -7,7 +7,6 @@ import type { PhysicalStore } from './models/physical-store'
7
7
 
8
8
  /**
9
9
  * The disposable will be disposed on process exit
10
- *
11
10
  * @param disposable The Disposable object to dispose on process exit
12
11
  * @returns A set of global disposables
13
12
  */
@@ -2,6 +2,7 @@ import { Injector } from '@furystack/inject'
2
2
  import { using, usingAsync } from '@furystack/utils'
3
3
  import { IdentityContext } from './identity-context'
4
4
  import { isAuthorized, isAuthenticated, getCurrentUser } from './helpers'
5
+ import { describe, it, expect, vi } from 'vitest'
5
6
 
6
7
  describe('IdentityContext', () => {
7
8
  it('Should be retrieved from an Injector', () => {
@@ -14,7 +15,7 @@ describe('IdentityContext', () => {
14
15
  it('isAuthenticated should be called from helper', async () => {
15
16
  await usingAsync(new Injector(), async (i) => {
16
17
  const ctx = i.getInstance(IdentityContext)
17
- const spy = jest.spyOn(ctx, 'isAuthenticated')
18
+ const spy = vi.spyOn(ctx, 'isAuthenticated')
18
19
  const isAuth = await isAuthenticated(i)
19
20
  expect(isAuth).toBeFalsy()
20
21
  expect(spy).toBeCalledTimes(1)
@@ -24,7 +25,7 @@ describe('IdentityContext', () => {
24
25
  it('isAuthorized should be called from helper', async () => {
25
26
  await usingAsync(new Injector(), async (i) => {
26
27
  const ctx = i.getInstance(IdentityContext)
27
- const spy = jest.spyOn(ctx, 'isAuthorized')
28
+ const spy = vi.spyOn(ctx, 'isAuthorized')
28
29
  const isAuth = await isAuthorized(i)
29
30
  expect(isAuth).toBeFalsy()
30
31
  expect(spy).toBeCalledTimes(1)
@@ -34,7 +35,7 @@ describe('IdentityContext', () => {
34
35
  it('getCurrentUser should be called from helper', async () => {
35
36
  await usingAsync(new Injector(), async (i) => {
36
37
  const ctx = i.getInstance(IdentityContext)
37
- const spy = jest.spyOn(ctx, 'getCurrentUser')
38
+ const spy = vi.spyOn(ctx, 'getCurrentUser')
38
39
  await expect(getCurrentUser(i)).rejects.toThrowError('')
39
40
  expect(spy).toBeCalledTimes(1)
40
41
  })
@@ -1,5 +1,6 @@
1
1
  import { InMemoryStore } from './in-memory-store'
2
2
  import { TestClass, createStoreTest, createMockEntity } from './create-physical-store-tests'
3
+ import { describe, it, expect } from 'vitest'
3
4
 
4
5
  describe('InMemoryStore', () => {
5
6
  const createStore = () => new InMemoryStore({ model: TestClass, primaryKey: 'id' })
@@ -188,7 +188,6 @@ export class InMemoryStore<T, TPrimaryKey extends keyof T> implements PhysicalSt
188
188
 
189
189
  /**
190
190
  * Creates an InMemoryStore that can be used for testing purposes.
191
- *
192
191
  * @param options Options for the In Memory Store
193
192
  * @param options.primaryKey The name of the primary key field
194
193
  * @param options.model The Entity Model
package/src/index.ts CHANGED
@@ -5,5 +5,4 @@ export * from './in-memory-store'
5
5
  export * from './store-manager'
6
6
  export * from './global-disposables'
7
7
  export * from './identity-context'
8
- export * from './create-physical-store-tests'
9
8
  export * from './helpers'
@@ -102,14 +102,12 @@ export interface PhysicalStore<T, TPrimaryKey extends keyof T, TWriteableData =
102
102
 
103
103
  /**
104
104
  * Adds an entry to the store, returns a promise that will be resolved with the added data
105
- *
106
105
  * @param entries The data to be added
107
106
  */
108
107
  add(...entries: TWriteableData[]): Promise<CreateResult<T>>
109
108
 
110
109
  /**
111
110
  * Updates an entry in the store, returns a promise that will be resolved once the update is done
112
- *
113
111
  * @param id The primary key of the entry
114
112
  * @param data The data to be updated
115
113
  */
@@ -122,14 +120,12 @@ export interface PhysicalStore<T, TPrimaryKey extends keyof T, TWriteableData =
122
120
 
123
121
  /**
124
122
  * Returns a promise that will be resolved with an array of elements that matches the filter
125
- *
126
123
  * @param searchOptions An options object for the Search expression
127
124
  */
128
125
  find<TSelect extends Array<keyof T>>(findOptions: FindOptions<T, TSelect>): Promise<Array<PartialResult<T, TSelect>>>
129
126
 
130
127
  /**
131
128
  * Returns a promise that will be resolved with an entry with the defined primary key or undefined
132
- *
133
129
  * @param key The primary key of the entry
134
130
  */
135
131
  get<TSelect extends Array<keyof T>>(
@@ -139,7 +135,6 @@ export interface PhysicalStore<T, TPrimaryKey extends keyof T, TWriteableData =
139
135
 
140
136
  /**
141
137
  * Removes an entry with the defined primary key. Returns a promise that will be resolved once the operation is completed
142
- *
143
138
  * @param key The primary key of the entry to remove
144
139
  */
145
140
  remove(...keys: Array<T[TPrimaryKey]>): Promise<void>
@@ -4,6 +4,7 @@ import { StoreManager } from './store-manager'
4
4
  import { InMemoryStore } from './in-memory-store'
5
5
  import { AggregatedError } from './errors'
6
6
  import { TestClass } from './create-physical-store-tests'
7
+ import { describe, it, expect } from 'vitest'
7
8
 
8
9
  class Test {
9
10
  id!: number
@@ -28,7 +28,6 @@ export class StoreManager implements Disposable {
28
28
  /**
29
29
  * Returns a store model for a constructable object.
30
30
  * Throws error if no store is registered
31
- *
32
31
  * @param model The Constructable object
33
32
  * @param primaryKey The Primary Key field
34
33
  * @throws if the Store is not registered
@@ -51,7 +50,6 @@ export class StoreManager implements Disposable {
51
50
 
52
51
  /**
53
52
  * Adds a store instance to the StoreManager class
54
- *
55
53
  * @param store The store to add
56
54
  * @returns the StoreManager instance for chaining
57
55
  */
@@ -1 +1 @@
1
- {"version":3,"file":"create-physical-store-tests.d.ts","sourceRoot":"","sources":["../src/create-physical-store-tests.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,qBAAa,SAAS;IACpB,EAAE,EAAG,MAAM,CAAA;IACX,YAAY,EAAG,MAAM,CAAA;IACrB,YAAY,EAAG,MAAM,CAAA;IACrB,YAAY,EAAG,MAAM,CAAA;IACrB,YAAY,EAAG,MAAM,CAAA;IACrB,YAAY,EAAG,OAAO,CAAA;IACtB,SAAS,EAAG,IAAI,CAAA;CACjB;AAGD,eAAO,MAAM,gBAAgB,UAAW,QAAQ,SAAS,CAAC,cAUzC,CAAA;AAEjB,MAAM,WAAW,gBAAgB,CAAC,CAAC,EAAE,WAAW,SAAS,MAAM,CAAC;IAC9D,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC,CAAA;IAC3D,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,eAAO,MAAM,eAAe,YAAa,iBAAiB,SAAS,EAAE,IAAI,CAAC,SAikBzE,CAAA"}
1
+ {"version":3,"file":"create-physical-store-tests.d.ts","sourceRoot":"","sources":["../src/create-physical-store-tests.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAG5C,qBAAa,SAAS;IACpB,EAAE,EAAG,MAAM,CAAA;IACX,YAAY,EAAG,MAAM,CAAA;IACrB,YAAY,EAAG,MAAM,CAAA;IACrB,YAAY,EAAG,MAAM,CAAA;IACrB,YAAY,EAAG,MAAM,CAAA;IACrB,YAAY,EAAG,OAAO,CAAA;IACtB,SAAS,EAAG,IAAI,CAAA;CACjB;AAGD,eAAO,MAAM,gBAAgB,UAAW,QAAQ,SAAS,CAAC,cAUzC,CAAA;AAEjB,MAAM,WAAW,gBAAgB,CAAC,CAAC,EAAE,WAAW,SAAS,MAAM,CAAC;IAC9D,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC,CAAA;IAC3D,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED,eAAO,MAAM,eAAe,YAAa,iBAAiB,SAAS,EAAE,IAAI,CAAC,SAikBzE,CAAA"}
@@ -1,10 +1,9 @@
1
- import type { Injector } from '@furystack/inject/types/injector';
1
+ import type { Injector } from '@furystack/inject';
2
2
  import type { Disposable } from '@furystack/utils';
3
3
  import { StoreManager } from './store-manager';
4
4
  import type { PhysicalStore } from './models/physical-store';
5
5
  /**
6
6
  * The disposable will be disposed on process exit
7
- *
8
7
  * @param disposable The Disposable object to dispose on process exit
9
8
  * @returns A set of global disposables
10
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAA;AAGhE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAE5D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,eAAgB,UAAU,oBAAsC,CAAA;AAEjG;;;GAGG;AACH,eAAO,MAAM,eAAe,aAAoB,QAAQ,qBAA4D,CAAA;AAEpH;;;;GAIG;AACH,eAAO,MAAM,YAAY,aAAoB,QAAQ,YAAY,MAAM,EAAE,qBACX,CAAA;AAE9D;;;GAGG;AACH,eAAO,MAAM,cAAc,aAAoB,QAAQ,8BAA2D,CAAA;AAElH;;;GAGG;AACH,eAAO,MAAM,eAAe,aAAc,QAAQ,iBAAuC,CAAA;AAEzF;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,6CAA8C,QAAQ,yHAChC,CAAA"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAGjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAE5D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,eAAgB,UAAU,oBAAsC,CAAA;AAEjG;;;GAGG;AACH,eAAO,MAAM,eAAe,aAAoB,QAAQ,qBAA4D,CAAA;AAEpH;;;;GAIG;AACH,eAAO,MAAM,YAAY,aAAoB,QAAQ,YAAY,MAAM,EAAE,qBACX,CAAA;AAE9D;;;GAGG;AACH,eAAO,MAAM,cAAc,aAAoB,QAAQ,8BAA2D,CAAA;AAElH;;;GAGG;AACH,eAAO,MAAM,eAAe,aAAc,QAAQ,iBAAuC,CAAA;AAEzF;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,6CAA8C,QAAQ,yHAChC,CAAA"}
@@ -19,7 +19,6 @@ export declare class InMemoryStore<T, TPrimaryKey extends keyof T> implements Ph
19
19
  readonly model: Constructable<T>;
20
20
  /**
21
21
  * Creates an InMemoryStore that can be used for testing purposes.
22
- *
23
22
  * @param options Options for the In Memory Store
24
23
  * @param options.primaryKey The name of the primary key field
25
24
  * @param options.model The Entity Model
@@ -1 +1 @@
1
- {"version":3,"file":"in-memory-store.d.ts","sourceRoot":"","sources":["../src/in-memory-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAGlH,qBAAa,aAAa,CAAC,CAAC,EAAE,WAAW,SAAS,MAAM,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACpG;;;OAGG;IACU,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD,GAAG,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAYpD,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAY;IACzC,GAAG,QAAe,CAAC,CAAC,WAAW,CAAC,WAAW,MAAM,MAAM,CAAC,CAAC,4BAG/D;IAED,OAAO,CAAC,YAAY,CAGnB;IAED,OAAO,CAAC,cAAc;IAwGT,IAAI,CAAC,OAAO,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC;IA2B3E,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;IAI5B,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC;IAUxC,OAAO;IAId,SAAgB,UAAU,EAAE,WAAW,CAAA;IACvC,SAAgB,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IAEvC;;;;;;OAMG;gBACS,OAAO,EAAE;QACnB;;WAEG;QACH,UAAU,EAAE,WAAW,CAAA;QACvB;;WAEG;QACH,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;KACxB;CAIF"}
1
+ {"version":3,"file":"in-memory-store.d.ts","sourceRoot":"","sources":["../src/in-memory-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAGlH,qBAAa,aAAa,CAAC,CAAC,EAAE,WAAW,SAAS,MAAM,CAAC,CAAE,YAAW,aAAa,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC;IACpG;;;OAGG;IACU,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD,GAAG,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAYpD,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAY;IACzC,GAAG,QAAe,CAAC,CAAC,WAAW,CAAC,WAAW,MAAM,MAAM,CAAC,CAAC,4BAG/D;IAED,OAAO,CAAC,YAAY,CAGnB;IAED,OAAO,CAAC,cAAc;IAwGT,IAAI,CAAC,OAAO,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC;IA2B3E,KAAK,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;IAI5B,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC;IAUxC,OAAO;IAId,SAAgB,UAAU,EAAE,WAAW,CAAA;IACvC,SAAgB,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;IAEvC;;;;;OAKG;gBACS,OAAO,EAAE;QACnB;;WAEG;QACH,UAAU,EAAE,WAAW,CAAA;QACvB;;WAEG;QACH,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;KACxB;CAIF"}
package/types/index.d.ts CHANGED
@@ -5,6 +5,5 @@ export * from './in-memory-store';
5
5
  export * from './store-manager';
6
6
  export * from './global-disposables';
7
7
  export * from './identity-context';
8
- export * from './create-physical-store-tests';
9
8
  export * from './helpers';
10
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,WAAW,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,yBAAyB,CAAA;AACvC,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,sBAAsB,CAAA;AACpC,cAAc,oBAAoB,CAAA;AAClC,cAAc,WAAW,CAAA"}
@@ -75,13 +75,11 @@ export interface PhysicalStore<T, TPrimaryKey extends keyof T, TWriteableData =
75
75
  readonly model: Constructable<T>;
76
76
  /**
77
77
  * Adds an entry to the store, returns a promise that will be resolved with the added data
78
- *
79
78
  * @param entries The data to be added
80
79
  */
81
80
  add(...entries: TWriteableData[]): Promise<CreateResult<T>>;
82
81
  /**
83
82
  * Updates an entry in the store, returns a promise that will be resolved once the update is done
84
- *
85
83
  * @param id The primary key of the entry
86
84
  * @param data The data to be updated
87
85
  */
@@ -92,19 +90,16 @@ export interface PhysicalStore<T, TPrimaryKey extends keyof T, TWriteableData =
92
90
  count(filter?: FilterType<T>): Promise<number>;
93
91
  /**
94
92
  * Returns a promise that will be resolved with an array of elements that matches the filter
95
- *
96
93
  * @param searchOptions An options object for the Search expression
97
94
  */
98
95
  find<TSelect extends Array<keyof T>>(findOptions: FindOptions<T, TSelect>): Promise<Array<PartialResult<T, TSelect>>>;
99
96
  /**
100
97
  * Returns a promise that will be resolved with an entry with the defined primary key or undefined
101
- *
102
98
  * @param key The primary key of the entry
103
99
  */
104
100
  get<TSelect extends Array<keyof T>>(key: T[TPrimaryKey], select?: TSelect): Promise<PartialResult<T, TSelect> | undefined>;
105
101
  /**
106
102
  * Removes an entry with the defined primary key. Returns a promise that will be resolved once the operation is completed
107
- *
108
103
  * @param key The primary key of the entry to remove
109
104
  */
110
105
  remove(...keys: Array<T[TPrimaryKey]>): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"physical-store.d.ts","sourceRoot":"","sources":["../../src/models/physical-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"physical-store.d.ts","sourceRoot":"","sources":["../../src/models/physical-store.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,6 @@ export declare class StoreManager implements Disposable {
13
13
  /**
14
14
  * Returns a store model for a constructable object.
15
15
  * Throws error if no store is registered
16
- *
17
16
  * @param model The Constructable object
18
17
  * @param primaryKey The Primary Key field
19
18
  * @throws if the Store is not registered
@@ -22,7 +21,6 @@ export declare class StoreManager implements Disposable {
22
21
  getStoreFor<T, TPrimaryKey extends keyof T, TType extends PhysicalStore<T, TPrimaryKey> = PhysicalStore<T, TPrimaryKey>>(model: Constructable<T>, primaryKey: TPrimaryKey): TType;
23
22
  /**
24
23
  * Adds a store instance to the StoreManager class
25
- *
26
24
  * @param store The store to add
27
25
  * @returns the StoreManager instance for chaining
28
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"store-manager.d.ts","sourceRoot":"","sources":["../src/store-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAE5D;;GAEG;AACH,qBACa,YAAa,YAAW,UAAU;IAC7C;;OAEG;IACU,OAAO;IAWpB,OAAO,CAAC,MAAM,CAAkE;IAEhF;;;;;;;;OAQG;IACI,WAAW,CAChB,CAAC,EACD,WAAW,SAAS,MAAM,CAAC,EAC3B,KAAK,SAAS,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC,EAC3E,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW;IAWlD;;;;;OAKG;IACI,QAAQ,CAAC,CAAC,EAAE,WAAW,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC;CAIrF"}
1
+ {"version":3,"file":"store-manager.d.ts","sourceRoot":"","sources":["../src/store-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAE5D;;GAEG;AACH,qBACa,YAAa,YAAW,UAAU;IAC7C;;OAEG;IACU,OAAO;IAWpB,OAAO,CAAC,MAAM,CAAkE;IAEhF;;;;;;;OAOG;IACI,WAAW,CAChB,CAAC,EACD,WAAW,SAAS,MAAM,CAAC,EAC3B,KAAK,SAAS,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC,EAC3E,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,WAAW;IAWlD;;;;OAIG;IACI,QAAQ,CAAC,CAAC,EAAE,WAAW,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,WAAW,CAAC;CAIrF"}