@veloqis/core 0.2.1 → 0.2.2

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.
@@ -19,5 +19,5 @@ export interface MutationApi<TInput, TOutput> {
19
19
  reset: () => void;
20
20
  state: MutationState<TInput, TOutput>;
21
21
  }
22
- export declare function createMutation<TInput, TOutput>(mutationFn: (input: TInput) => Promise<TOutput>, options?: MutationOptions<TInput, TOutput>): MutationApi<TInput, TOutput>;
22
+ export declare function createMutation<TInput, TOutput>(mutationFn: (input: TInput) => Promise<TOutput>, options?: MutationOptions<TInput, TOutput>, name?: string): MutationApi<TInput, TOutput>;
23
23
  //# sourceMappingURL=createMutation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createMutation.d.ts","sourceRoot":"","sources":["../src/createMutation.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa,CAAC,MAAM,EAAE,OAAO;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;CACxD;AAED,MAAM,WAAW,eAAe,CAAC,MAAM,EAAE,OAAO;IAC9C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,MAAM,WAAW,WAAW,CAAC,MAAM,EAAE,OAAO;IAC1C,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAC5C,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,EAC/C,OAAO,CAAC,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,GACzC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAoE9B"}
1
+ {"version":3,"file":"createMutation.d.ts","sourceRoot":"","sources":["../src/createMutation.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,aAAa,CAAC,MAAM,EAAE,OAAO;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;CACxD;AAED,MAAM,WAAW,eAAe,CAAC,MAAM,EAAE,OAAO;IAC9C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAChD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,MAAM,WAAW,WAAW,CAAC,MAAM,EAAE,OAAO;IAC1C,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5C,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAID,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAC5C,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,EAC/C,OAAO,CAAC,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1C,IAAI,CAAC,EAAE,MAAM,GACZ,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAsF9B"}
@@ -1,11 +1,17 @@
1
1
  import { cacheStore } from './cacheStore';
2
- export function createMutation(mutationFn, options) {
2
+ import { registerMutation, notifyMutationChange } from './mutationRegistry';
3
+ let mutationCounter = 0;
4
+ export function createMutation(mutationFn, options, name) {
3
5
  const _state = {
4
6
  loading: false,
5
7
  error: null,
6
8
  data: null,
7
9
  input: null,
8
10
  };
11
+ const mutationName = name || `mutation_${++mutationCounter}`;
12
+ function notify() {
13
+ notifyMutationChange();
14
+ }
9
15
  const api = {
10
16
  state: _state,
11
17
  reset: () => {
@@ -13,12 +19,14 @@ export function createMutation(mutationFn, options) {
13
19
  _state.error = null;
14
20
  _state.data = null;
15
21
  _state.input = null;
22
+ notify();
16
23
  },
17
24
  async mutate(input) {
18
25
  _state.loading = true;
19
26
  _state.error = null;
20
27
  _state.data = null;
21
28
  _state.input = input;
29
+ notify();
22
30
  const opt = options?.optimisticUpdate;
23
31
  let rollback = null;
24
32
  if (opt) {
@@ -32,10 +40,12 @@ export function createMutation(mutationFn, options) {
32
40
  }
33
41
  }
34
42
  options?.onMutate?.(input);
43
+ notify();
35
44
  try {
36
45
  const result = await mutationFn(input);
37
46
  _state.data = result;
38
47
  _state.loading = false;
48
+ notify();
39
49
  if (opt) {
40
50
  const pattern = opt.prefix.endsWith('*') ? opt.prefix : `${opt.prefix}*`;
41
51
  for (const [key] of cacheStore.getAllEntries()) {
@@ -45,6 +55,7 @@ export function createMutation(mutationFn, options) {
45
55
  }
46
56
  }
47
57
  options?.onSuccess?.(result, input);
58
+ notify();
48
59
  return result;
49
60
  }
50
61
  catch (err) {
@@ -56,11 +67,18 @@ export function createMutation(mutationFn, options) {
56
67
  const error = err;
57
68
  _state.error = error;
58
69
  _state.loading = false;
70
+ notify();
59
71
  options?.onError?.(error, input);
60
72
  throw error;
61
73
  }
62
74
  },
63
75
  };
76
+ registerMutation({
77
+ name: mutationName,
78
+ state: _state,
79
+ mutate: api.mutate,
80
+ reset: api.reset,
81
+ });
64
82
  return api;
65
83
  }
66
84
  //# sourceMappingURL=createMutation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createMutation.js","sourceRoot":"","sources":["../src/createMutation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createMutation.js","sourceRoot":"","sources":["../src/createMutation.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -8,5 +8,6 @@ export { cacheStore } from './cacheStore';
8
8
  export { deduplicator } from './deduplicator';
9
9
  export { telemetry } from './telemetry';
10
10
  export { getRegisteredQueries } from './queryRegistry';
11
+ export { getRegisteredMutations, subscribeMutations } from './mutationRegistry';
11
12
  export type { CacheKey, CacheEntry, TelemetryEvent, Fetcher, Subscriber, Unsubscribe, QueryRegistration } from './types';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAChF,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -5,4 +5,5 @@ export { cacheStore } from './cacheStore';
5
5
  export { deduplicator } from './deduplicator';
6
6
  export { telemetry } from './telemetry';
7
7
  export { getRegisteredQueries } from './queryRegistry';
8
+ export { getRegisteredMutations, subscribeMutations } from './mutationRegistry';
8
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { MutationState } from './createMutation';
2
+ export interface MutationRegistration {
3
+ name: string;
4
+ state: MutationState<unknown, unknown>;
5
+ mutate: (input: unknown) => Promise<unknown>;
6
+ reset: () => void;
7
+ }
8
+ type Listener = () => void;
9
+ export declare function registerMutation(registration: MutationRegistration): void;
10
+ export declare function unregisterMutation(name: string): void;
11
+ export declare function getRegisteredMutations(): MutationRegistration[];
12
+ export declare function notifyMutationChange(): void;
13
+ export declare function subscribeMutations(listener: Listener): () => void;
14
+ export {};
15
+ //# sourceMappingURL=mutationRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutationRegistry.d.ts","sourceRoot":"","sources":["../src/mutationRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED,KAAK,QAAQ,GAAG,MAAM,IAAI,CAAC;AAK3B,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAGzE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAGrD;AAED,wBAAgB,sBAAsB,IAAI,oBAAoB,EAAE,CAE/D;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,IAAI,CAGjE"}
@@ -0,0 +1,24 @@
1
+ const mutations = new Map();
2
+ const listeners = new Set();
3
+ export function registerMutation(registration) {
4
+ mutations.set(registration.name, registration);
5
+ notify();
6
+ }
7
+ export function unregisterMutation(name) {
8
+ mutations.delete(name);
9
+ notify();
10
+ }
11
+ export function getRegisteredMutations() {
12
+ return [...mutations.values()];
13
+ }
14
+ export function notifyMutationChange() {
15
+ notify();
16
+ }
17
+ export function subscribeMutations(listener) {
18
+ listeners.add(listener);
19
+ return () => listeners.delete(listener);
20
+ }
21
+ function notify() {
22
+ listeners.forEach(l => l());
23
+ }
24
+ //# sourceMappingURL=mutationRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutationRegistry.js","sourceRoot":"","sources":["../src/mutationRegistry.ts"],"names":[],"mappings":"AAWA,MAAM,SAAS,GAAG,IAAI,GAAG,EAAgC,CAAC;AAC1D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAY,CAAC;AAEtC,MAAM,UAAU,gBAAgB,CAAC,YAAkC;IACjE,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC/C,MAAM,EAAE,CAAC;AACX,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,EAAE,CAAC;AACX,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,MAAM,EAAE,CAAC;AACX,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAkB;IACnD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,MAAM;IACb,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AAC9B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veloqis/core",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "private": false,
5
5
  "description": "Framework-agnostic query cache, deduplicator, and telemetry engine",
6
6
  "license": "MIT",