@furystack/core 12.0.10 → 12.0.11

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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=global-disposable.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-disposable.spec.d.ts","sourceRoot":"","sources":["../src/global-disposable.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ import { Injector } from '@furystack/inject';
2
+ import { using, usingAsync } from '@furystack/utils';
3
+ import { globalDisposables, exitHandler } from './global-disposables.js';
4
+ import { disposeOnProcessExit } from './helpers.js';
5
+ import { describe, it, expect, vi } from 'vitest';
6
+ describe('Global Disposables', () => {
7
+ it('Should be empty by default', () => {
8
+ expect(globalDisposables.size).toBe(0);
9
+ });
10
+ it('Should attach event listeners', () => {
11
+ expect(process.listeners('exit')).toContain(exitHandler);
12
+ expect(process.listeners('SIGINT')).toContain(exitHandler);
13
+ expect(process.listeners('SIGUSR1')).toContain(exitHandler);
14
+ expect(process.listeners('SIGUSR2')).toContain(exitHandler);
15
+ expect(process.listeners('uncaughtException')).toContain(exitHandler);
16
+ });
17
+ it('Should be filled from an injector extension', () => {
18
+ using(new Injector(), (i) => {
19
+ disposeOnProcessExit(i);
20
+ expect(globalDisposables).toContain(i);
21
+ });
22
+ });
23
+ it('Should dispose the injector on exit', async () => {
24
+ usingAsync(new Injector(), async (i) => {
25
+ i.dispose = vi.fn(i.dispose);
26
+ disposeOnProcessExit(i);
27
+ await exitHandler();
28
+ expect(i.dispose).toBeCalled();
29
+ });
30
+ });
31
+ });
32
+ //# sourceMappingURL=global-disposable.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global-disposable.spec.js","sourceRoot":"","sources":["../src/global-disposable.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEjD,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QACxD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QAC1D,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QAC3D,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;QAC3D,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,KAAK,CAAC,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE;YAC1B,oBAAoB,CAAC,CAAC,CAAC,CAAA;YACvB,MAAM,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QACxC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YACrC,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAC5B,oBAAoB,CAAC,CAAC,CAAC,CAAA;YACvB,MAAM,WAAW,EAAE,CAAA;YACnB,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAA;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=identity-context.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity-context.spec.d.ts","sourceRoot":"","sources":["../src/identity-context.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,40 @@
1
+ import { Injector } from '@furystack/inject';
2
+ import { using, usingAsync } from '@furystack/utils';
3
+ import { IdentityContext } from './identity-context.js';
4
+ import { isAuthorized, isAuthenticated, getCurrentUser } from './helpers.js';
5
+ import { describe, it, expect, vi } from 'vitest';
6
+ describe('IdentityContext', () => {
7
+ it('Should be retrieved from an Injector', () => {
8
+ using(new Injector(), (i) => {
9
+ const ctx = i.getInstance(IdentityContext);
10
+ expect(ctx).toBeInstanceOf(IdentityContext);
11
+ });
12
+ });
13
+ it('isAuthenticated should be called from helper', async () => {
14
+ await usingAsync(new Injector(), async (i) => {
15
+ const ctx = i.getInstance(IdentityContext);
16
+ const spy = vi.spyOn(ctx, 'isAuthenticated');
17
+ const isAuth = await isAuthenticated(i);
18
+ expect(isAuth).toBeFalsy();
19
+ expect(spy).toBeCalledTimes(1);
20
+ });
21
+ });
22
+ it('isAuthorized should be called from helper', async () => {
23
+ await usingAsync(new Injector(), async (i) => {
24
+ const ctx = i.getInstance(IdentityContext);
25
+ const spy = vi.spyOn(ctx, 'isAuthorized');
26
+ const isAuth = await isAuthorized(i);
27
+ expect(isAuth).toBeFalsy();
28
+ expect(spy).toBeCalledTimes(1);
29
+ });
30
+ });
31
+ it('getCurrentUser should be called from helper', async () => {
32
+ await usingAsync(new Injector(), async (i) => {
33
+ const ctx = i.getInstance(IdentityContext);
34
+ const spy = vi.spyOn(ctx, 'getCurrentUser');
35
+ await expect(getCurrentUser(i)).rejects.toThrowError('');
36
+ expect(spy).toBeCalledTimes(1);
37
+ });
38
+ });
39
+ });
40
+ //# sourceMappingURL=identity-context.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity-context.spec.js","sourceRoot":"","sources":["../src/identity-context.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAEjD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,KAAK,CAAC,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE;YAC1B,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;YAC1C,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC3C,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;YAC1C,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAA;YAC5C,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAAA;YAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC3C,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;YAC1C,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;YACzC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,CAAC,CAAC,CAAA;YACpC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,CAAA;YAC1B,MAAM,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,UAAU,CAAC,IAAI,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC3C,MAAM,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,eAAe,CAAC,CAAA;YAC1C,MAAM,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAA;YAC3C,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;YACxD,MAAM,CAAC,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=in-memory-store.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory-store.spec.d.ts","sourceRoot":"","sources":["../src/in-memory-store.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ import { InMemoryStore } from './in-memory-store.js';
2
+ import { TestClass, createStoreTest, createMockEntity } from './create-physical-store-tests.js';
3
+ import { describe, it, expect } from 'vitest';
4
+ describe('InMemoryStore', () => {
5
+ const createStore = () => new InMemoryStore({ model: TestClass, primaryKey: 'id' });
6
+ createStoreTest({
7
+ createStore,
8
+ typeName: 'InMemoryStore',
9
+ // skipAdvancedTests: true, // TODO
10
+ });
11
+ it('dispose should empty the cache', async () => {
12
+ const f = createStore();
13
+ await f.add(createMockEntity());
14
+ f.dispose();
15
+ const count = await f.count();
16
+ expect(count).toBe(0);
17
+ });
18
+ });
19
+ //# sourceMappingURL=in-memory-store.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-memory-store.spec.js","sourceRoot":"","sources":["../src/in-memory-store.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAA;AAC/F,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE7C,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;IAEnF,eAAe,CAAC;QACd,WAAW;QACX,QAAQ,EAAE,eAAe;QACzB,mCAAmC;KACpC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,CAAC,GAAG,WAAW,EAAE,CAAA;QACvB,MAAM,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAA;QAC/B,CAAC,CAAC,OAAO,EAAE,CAAA;QACX,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;QAC7B,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACvB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=store-manager.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store-manager.spec.d.ts","sourceRoot":"","sources":["../src/store-manager.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,63 @@
1
+ import { using, usingAsync } from '@furystack/utils';
2
+ import { Injector } from '@furystack/inject';
3
+ import { StoreManager } from './store-manager.js';
4
+ import { InMemoryStore } from './in-memory-store.js';
5
+ import { AggregatedError } from './errors/aggregated-error.js';
6
+ import { TestClass } from './create-physical-store-tests.js';
7
+ import { describe, it, expect } from 'vitest';
8
+ class Test {
9
+ id;
10
+ value;
11
+ }
12
+ describe('StoreManager', () => {
13
+ it('Can be retrieved from an injector', () => {
14
+ using(new Injector(), (i) => {
15
+ expect(i.getInstance(StoreManager)).toBeInstanceOf(StoreManager);
16
+ });
17
+ });
18
+ it('Should throw if trying to retrieve a non-existing store', () => {
19
+ using(new Injector(), (i) => {
20
+ const sm = i.getInstance(StoreManager);
21
+ expect(() => sm.getStoreFor(class {
22
+ t;
23
+ }, 't')).toThrow();
24
+ });
25
+ });
26
+ it('Should throw if trying to retrieve an existing store with a different primary key', () => {
27
+ using(new Injector(), (i) => {
28
+ const sm = i.getInstance(StoreManager);
29
+ sm.addStore(new InMemoryStore({ model: TestClass, primaryKey: 'id' }));
30
+ expect(() => sm.getStoreFor(TestClass, 'booleanValue')).toThrowError('Primary keys not match');
31
+ });
32
+ });
33
+ it('Can set up stores with an extension method', () => {
34
+ using(new Injector(), (i) => {
35
+ i.getInstance(StoreManager).addStore(new InMemoryStore({
36
+ model: Test,
37
+ primaryKey: 'id',
38
+ }));
39
+ expect(i.getInstance(StoreManager).getStoreFor(Test, 'id')).toBeInstanceOf(InMemoryStore);
40
+ });
41
+ });
42
+ it('Dispose should throw if failed to dispose one or more store', async () => {
43
+ await usingAsync(new Injector(), async (i) => {
44
+ const sm = i.getInstance(StoreManager);
45
+ const MockStore = class extends InMemoryStore {
46
+ dispose = () => Promise.reject(':(');
47
+ };
48
+ sm.addStore(new MockStore({
49
+ model: Test,
50
+ primaryKey: 'id',
51
+ }));
52
+ try {
53
+ await sm.dispose();
54
+ }
55
+ catch (error) {
56
+ expect(error).toBeInstanceOf(AggregatedError);
57
+ expect(error.rejections).toHaveLength(1);
58
+ }
59
+ i.cachedSingletons.clear();
60
+ });
61
+ });
62
+ });
63
+ //# sourceMappingURL=store-manager.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store-manager.spec.js","sourceRoot":"","sources":["../src/store-manager.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@furystack/core",
3
- "version": "12.0.10",
3
+ "version": "12.0.11",
4
4
  "description": "Core FuryStack package",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -37,13 +37,13 @@
37
37
  },
38
38
  "homepage": "https://github.com/furystack/furystack",
39
39
  "devDependencies": {
40
- "@types/node": "^20.5.6",
40
+ "@types/node": "^20.8.10",
41
41
  "typescript": "^5.2.2",
42
- "vitest": "^0.34.3"
42
+ "vitest": "^0.34.6"
43
43
  },
44
44
  "dependencies": {
45
- "@furystack/inject": "^8.1.0",
46
- "@furystack/utils": "^4.0.9"
45
+ "@furystack/inject": "^8.1.1",
46
+ "@furystack/utils": "^4.0.10"
47
47
  },
48
48
  "gitHead": "1045d854bfd8c475b7035471d130d401417a2321"
49
49
  }
@@ -1,7 +1,7 @@
1
1
  import { Injector } from '@furystack/inject'
2
2
  import { using, usingAsync } from '@furystack/utils'
3
- import { globalDisposables, exitHandler } from './global-disposables'
4
- import { disposeOnProcessExit } from './helpers'
3
+ import { globalDisposables, exitHandler } from './global-disposables.js'
4
+ import { disposeOnProcessExit } from './helpers.js'
5
5
  import { describe, it, expect, vi } from 'vitest'
6
6
 
7
7
  describe('Global Disposables', () => {
@@ -1,7 +1,7 @@
1
1
  import { Injector } from '@furystack/inject'
2
2
  import { using, usingAsync } from '@furystack/utils'
3
- import { IdentityContext } from './identity-context'
4
- import { isAuthorized, isAuthenticated, getCurrentUser } from './helpers'
3
+ import { IdentityContext } from './identity-context.js'
4
+ import { isAuthorized, isAuthenticated, getCurrentUser } from './helpers.js'
5
5
  import { describe, it, expect, vi } from 'vitest'
6
6
 
7
7
  describe('IdentityContext', () => {
@@ -1,5 +1,5 @@
1
- import { InMemoryStore } from './in-memory-store'
2
- import { TestClass, createStoreTest, createMockEntity } from './create-physical-store-tests'
1
+ import { InMemoryStore } from './in-memory-store.js'
2
+ import { TestClass, createStoreTest, createMockEntity } from './create-physical-store-tests.js'
3
3
  import { describe, it, expect } from 'vitest'
4
4
 
5
5
  describe('InMemoryStore', () => {
@@ -1,9 +1,9 @@
1
1
  import { using, usingAsync } from '@furystack/utils'
2
2
  import { Injector } from '@furystack/inject'
3
- import { StoreManager } from './store-manager'
4
- import { InMemoryStore } from './in-memory-store'
5
- import { AggregatedError } from './errors'
6
- import { TestClass } from './create-physical-store-tests'
3
+ import { StoreManager } from './store-manager.js'
4
+ import { InMemoryStore } from './in-memory-store.js'
5
+ import { AggregatedError } from './errors/aggregated-error.js'
6
+ import { TestClass } from './create-physical-store-tests.js'
7
7
  import { describe, it, expect } from 'vitest'
8
8
 
9
9
  class Test {