@fjell/cache 4.6.7 → 4.6.10

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,27 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ const logger$1 = require('./logger.cjs.js');
6
+ const registry = require('@fjell/registry');
7
+
8
+ const logger = logger$1.default.get("Instance");
9
+ const createInstance = (registry$1, coordinate, cache)=>{
10
+ logger.debug("createInstance", {
11
+ coordinate,
12
+ cache,
13
+ registry: registry$1
14
+ });
15
+ const baseInstance = registry.createInstance(registry$1, coordinate);
16
+ return {
17
+ ...baseInstance,
18
+ cache
19
+ };
20
+ };
21
+ const isInstance = (instance)=>{
22
+ return instance !== null && instance !== undefined && instance.coordinate !== undefined && instance.cache !== undefined && instance.registry !== undefined;
23
+ };
24
+
25
+ exports.createInstance = createInstance;
26
+ exports.isInstance = isInstance;
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5zdGFuY2UuY2pzLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9
@@ -0,0 +1,20 @@
1
+ import { Item } from '@fjell/core';
2
+ import { Instance as BaseInstance, Coordinate, Registry } from '@fjell/registry';
3
+ import { Cache } from './Cache';
4
+ /**
5
+ * The Cache Instance interface represents a cache model instance that extends the base Instance
6
+ * from @fjell/registry and adds cache operations for interacting with cached data.
7
+ *
8
+ * The interface extends the base Instance (which provides coordinate and registry) with:
9
+ * - cache: Provides methods for interacting with cached data (get, set, all, etc.)
10
+ *
11
+ * @template V - The type of the data model item, extending Item
12
+ * @template S - The string literal type representing the model's key type
13
+ * @template L1-L5 - Optional string literal types for location hierarchy levels
14
+ */
15
+ export interface Instance<V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never> extends BaseInstance<S, L1, L2, L3, L4, L5> {
16
+ /** The cache object that provides methods for interacting with cached data */
17
+ cache: Cache<V, S, L1, L2, L3, L4, L5>;
18
+ }
19
+ export declare const createInstance: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(registry: Registry, coordinate: Coordinate<S, L1, L2, L3, L4, L5>, cache: Cache<V, S, L1, L2, L3, L4, L5>) => Instance<V, S, L1, L2, L3, L4, L5>;
20
+ export declare const isInstance: (instance: any) => instance is Instance<any, any, any, any, any, any, any>;
@@ -0,0 +1,22 @@
1
+ import LibLogger from './logger.es.js';
2
+ import { createInstance as createInstance$1 } from '@fjell/registry';
3
+
4
+ const logger = LibLogger.get("Instance");
5
+ const createInstance = (registry, coordinate, cache)=>{
6
+ logger.debug("createInstance", {
7
+ coordinate,
8
+ cache,
9
+ registry
10
+ });
11
+ const baseInstance = createInstance$1(registry, coordinate);
12
+ return {
13
+ ...baseInstance,
14
+ cache
15
+ };
16
+ };
17
+ const isInstance = (instance)=>{
18
+ return instance !== null && instance !== undefined && instance.coordinate !== undefined && instance.cache !== undefined && instance.registry !== undefined;
19
+ };
20
+
21
+ export { createInstance, isInstance };
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5zdGFuY2UuZXMuanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9
@@ -0,0 +1,23 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ const Instance = require('./Instance.cjs.js');
6
+ const logger$1 = require('./logger.cjs.js');
7
+
8
+ const logger = logger$1.default.get("InstanceFactory");
9
+ /**
10
+ * Factory function for creating cache instances
11
+ */ const createInstanceFactory = (cache)=>{
12
+ return (coordinate, context)=>{
13
+ logger.debug("Creating cache instance", {
14
+ coordinate,
15
+ registry: context.registry,
16
+ cache
17
+ });
18
+ return Instance.createInstance(context.registry, coordinate, cache);
19
+ };
20
+ };
21
+
22
+ exports.createInstanceFactory = createInstanceFactory;
23
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5zdGFuY2VGYWN0b3J5LmNqcy5qcyIsInNvdXJjZXMiOltdLCJzb3VyY2VzQ29udGVudCI6W10sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9
@@ -0,0 +1,8 @@
1
+ import { Item } from '@fjell/core';
2
+ import { Cache } from './Cache';
3
+ import { InstanceFactory as BaseInstanceFactory } from '@fjell/registry';
4
+ export type InstanceFactory<V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never> = (cache: Cache<V, S, L1, L2, L3, L4, L5>) => BaseInstanceFactory<S, L1, L2, L3, L4, L5>;
5
+ /**
6
+ * Factory function for creating cache instances
7
+ */
8
+ export declare const createInstanceFactory: <V extends Item<S, L1, L2, L3, L4, L5>, S extends string, L1 extends string = never, L2 extends string = never, L3 extends string = never, L4 extends string = never, L5 extends string = never>(cache: Cache<V, S, L1, L2, L3, L4, L5>) => BaseInstanceFactory<S, L1, L2, L3, L4, L5>;
@@ -0,0 +1,19 @@
1
+ import { createInstance } from './Instance.es.js';
2
+ import LibLogger from './logger.es.js';
3
+
4
+ const logger = LibLogger.get("InstanceFactory");
5
+ /**
6
+ * Factory function for creating cache instances
7
+ */ const createInstanceFactory = (cache)=>{
8
+ return (coordinate, context)=>{
9
+ logger.debug("Creating cache instance", {
10
+ coordinate,
11
+ registry: context.registry,
12
+ cache
13
+ });
14
+ return createInstance(context.registry, coordinate, cache);
15
+ };
16
+ };
17
+
18
+ export { createInstanceFactory };
19
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW5zdGFuY2VGYWN0b3J5LmVzLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsifQ==
@@ -0,0 +1,36 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ const logger$1 = require('./logger.cjs.js');
6
+ const registry = require('@fjell/registry');
7
+
8
+ const logger = logger$1.default.get("Registry");
9
+ /**
10
+ * Factory function for creating cache registries
11
+ */ const createRegistryFactory = ()=>{
12
+ return (type, registryHub)=>{
13
+ if (type !== 'cache') {
14
+ throw new Error(`Cache registry factory can only create 'cache' type registries, got: ${type}`);
15
+ }
16
+ logger.debug("Creating cache registry", {
17
+ type,
18
+ registryHub
19
+ });
20
+ const baseRegistry = registry.createRegistry(type, registryHub);
21
+ // Cast to Registry for type safety
22
+ return baseRegistry;
23
+ };
24
+ };
25
+ /**
26
+ * Creates a new cache registry instance
27
+ */ const createRegistry = (registryHub)=>{
28
+ const baseRegistry = registry.createRegistry('cache', registryHub);
29
+ return {
30
+ ...baseRegistry
31
+ };
32
+ };
33
+
34
+ exports.createRegistry = createRegistry;
35
+ exports.createRegistryFactory = createRegistryFactory;
36
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVnaXN0cnkuY2pzLmpzIiwic291cmNlcyI6W10sInNvdXJjZXNDb250ZW50IjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9
@@ -0,0 +1,15 @@
1
+ import { Registry as BaseRegistry, RegistryFactory, RegistryHub } from '@fjell/registry';
2
+ /**
3
+ * Extended Registry interface for cache-specific functionality
4
+ */
5
+ export interface Registry extends BaseRegistry {
6
+ type: 'cache';
7
+ }
8
+ /**
9
+ * Factory function for creating cache registries
10
+ */
11
+ export declare const createRegistryFactory: () => RegistryFactory;
12
+ /**
13
+ * Creates a new cache registry instance
14
+ */
15
+ export declare const createRegistry: (registryHub?: RegistryHub) => Registry;
@@ -0,0 +1,31 @@
1
+ import LibLogger from './logger.es.js';
2
+ import { createRegistry as createRegistry$1 } from '@fjell/registry';
3
+
4
+ const logger = LibLogger.get("Registry");
5
+ /**
6
+ * Factory function for creating cache registries
7
+ */ const createRegistryFactory = ()=>{
8
+ return (type, registryHub)=>{
9
+ if (type !== 'cache') {
10
+ throw new Error(`Cache registry factory can only create 'cache' type registries, got: ${type}`);
11
+ }
12
+ logger.debug("Creating cache registry", {
13
+ type,
14
+ registryHub
15
+ });
16
+ const baseRegistry = createRegistry$1(type, registryHub);
17
+ // Cast to Registry for type safety
18
+ return baseRegistry;
19
+ };
20
+ };
21
+ /**
22
+ * Creates a new cache registry instance
23
+ */ const createRegistry = (registryHub)=>{
24
+ const baseRegistry = createRegistry$1('cache', registryHub);
25
+ return {
26
+ ...baseRegistry
27
+ };
28
+ };
29
+
30
+ export { createRegistry, createRegistryFactory };
31
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVnaXN0cnkuZXMuanMiLCJzb3VyY2VzIjpbXSwic291cmNlc0NvbnRlbnQiOltdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9