@adonisjs/lock 1.0.0-0 → 1.0.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.
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ import type Configure from '@adonisjs/core/commands/configure';
2
+ export declare function configure(command: Configure): Promise<void>;
package/build/index.d.ts CHANGED
@@ -1,47 +1,4 @@
1
- import { ConfigProvider } from '@adonisjs/core/types';
2
- import { RedisConnections } from '@adonisjs/redis/types';
3
- import { StoreFactory, DynamoDbOptions } from '@verrou/core/types';
4
- import { E_LOCK_ALREADY_ACQUIRED, E_LOCK_NOT_OWNED, E_LOCK_STORAGE_ERROR, E_LOCK_TIMEOUT } from '@verrou/core';
5
- import Configure from '@adonisjs/core/commands/configure';
6
-
7
- /**
8
- * Different stores supported by the lock module
9
- */
10
- declare const stores: {
11
- memory: () => ConfigProvider<StoreFactory>;
12
- redis: (config: {
13
- connectionName?: keyof RedisConnections;
14
- }) => ConfigProvider<StoreFactory>;
15
- database: (config?: {
16
- connectionName?: string;
17
- tableName?: string;
18
- }) => ConfigProvider<StoreFactory>;
19
- dynamodb: (config: DynamoDbOptions) => ConfigProvider<StoreFactory>;
20
- };
21
-
22
- /**
23
- * Re-exporting verrou errors
24
- */
25
-
26
- declare const errors_E_LOCK_ALREADY_ACQUIRED: typeof E_LOCK_ALREADY_ACQUIRED;
27
- declare const errors_E_LOCK_NOT_OWNED: typeof E_LOCK_NOT_OWNED;
28
- declare const errors_E_LOCK_STORAGE_ERROR: typeof E_LOCK_STORAGE_ERROR;
29
- declare const errors_E_LOCK_TIMEOUT: typeof E_LOCK_TIMEOUT;
30
- declare namespace errors {
31
- export { errors_E_LOCK_ALREADY_ACQUIRED as E_LOCK_ALREADY_ACQUIRED, errors_E_LOCK_NOT_OWNED as E_LOCK_NOT_OWNED, errors_E_LOCK_STORAGE_ERROR as E_LOCK_STORAGE_ERROR, errors_E_LOCK_TIMEOUT as E_LOCK_TIMEOUT };
32
- }
33
-
34
- declare function configure(command: Configure): Promise<void>;
35
-
36
- /**
37
- * Define lock configuration
38
- */
39
- declare function defineConfig<KnownStores extends Record<string, ConfigProvider<StoreFactory>>>(config: {
40
- default: keyof KnownStores;
41
- stores: KnownStores;
42
- }): {
43
- default: keyof KnownStores;
44
- stores: KnownStores;
45
- };
46
-
47
- export { configure, defineConfig, errors, stores };
1
+ export { stores } from './src/stores.js';
2
+ export * as errors from './src/errors.js';
3
+ export { configure } from './configure.js';
4
+ export { defineConfig } from './src/define_config.js';
@@ -1,17 +1,14 @@
1
- import { Verrou } from '@verrou/core';
2
- import { ApplicationService } from '@adonisjs/core/types';
3
- import { LockStoresList } from '../src/types.js';
4
- import '@verrou/core/types';
5
-
1
+ import type { ApplicationService } from '@adonisjs/core/types';
2
+ import type { LockService } from '../src/types.js';
6
3
  /**
7
4
  * Add lock manager type to the container bindings
8
5
  */
9
6
  declare module '@adonisjs/core/types' {
10
7
  interface ContainerBindings {
11
- 'lock.manager': Verrou<LockStoresList>;
8
+ 'lock.manager': LockService;
12
9
  }
13
10
  }
14
- declare class LockProvider {
11
+ export default class LockProvider {
15
12
  protected app: ApplicationService;
16
13
  constructor(app: ApplicationService);
17
14
  /**
@@ -19,5 +16,3 @@ declare class LockProvider {
19
16
  */
20
17
  register(): void;
21
18
  }
22
-
23
- export { LockProvider as default };
@@ -1,8 +1,3 @@
1
- import { LockService } from '../src/types.js';
2
- import '@verrou/core';
3
- import '@verrou/core/types';
4
- import '@adonisjs/core/types';
5
-
1
+ import type { LockService } from '../src/types.js';
6
2
  declare let lock: LockService;
7
-
8
3
  export { lock as default };
@@ -0,0 +1,12 @@
1
+ import type { StoreFactory } from '@verrou/core/types';
2
+ import type { ConfigProvider } from '@adonisjs/core/types';
3
+ /**
4
+ * Define lock configuration
5
+ */
6
+ export declare function defineConfig<KnownStores extends Record<string, ConfigProvider<StoreFactory>>>(config: {
7
+ default: keyof KnownStores;
8
+ stores: KnownStores;
9
+ }): {
10
+ default: keyof KnownStores;
11
+ stores: KnownStores;
12
+ };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Re-exporting verrou errors
3
+ */
4
+ export { E_LOCK_TIMEOUT, E_LOCK_NOT_OWNED, E_LOCK_STORAGE_ERROR, E_LOCK_ALREADY_ACQUIRED, } from '@verrou/core';
@@ -0,0 +1,17 @@
1
+ import type { ConfigProvider } from '@adonisjs/core/types';
2
+ import type { RedisConnections } from '@adonisjs/redis/types';
3
+ import type { DynamoDbOptions, StoreFactory } from '@verrou/core/types';
4
+ /**
5
+ * Different stores supported by the lock module
6
+ */
7
+ export declare const stores: {
8
+ memory: () => ConfigProvider<StoreFactory>;
9
+ redis: (config: {
10
+ connectionName?: keyof RedisConnections;
11
+ }) => ConfigProvider<StoreFactory>;
12
+ database: (config?: {
13
+ connectionName?: string;
14
+ tableName?: string;
15
+ }) => ConfigProvider<StoreFactory>;
16
+ dynamodb: (config: DynamoDbOptions) => ConfigProvider<StoreFactory>;
17
+ };
@@ -1,18 +1,16 @@
1
- import { Verrou } from '@verrou/core';
2
- import { StoreFactory } from '@verrou/core/types';
3
- export * from '@verrou/core/types';
4
- import { ConfigProvider } from '@adonisjs/core/types';
5
-
1
+ import type { Verrou } from '@verrou/core';
2
+ import type { StoreFactory } from '@verrou/core/types';
3
+ import type { ConfigProvider } from '@adonisjs/core/types';
6
4
  /**
7
5
  * A list of known lock stores inferred from the user config
8
6
  */
9
- interface LockStoresList extends Record<string, StoreFactory> {
7
+ export interface LockStoresList {
10
8
  }
11
9
  /**
12
10
  * Helper method to resolve configured lock stores
13
11
  * inside user app
14
12
  */
15
- type InferLockStores<T extends {
13
+ export type InferLockStores<T extends {
16
14
  stores: Record<string, ConfigProvider<StoreFactory>>;
17
15
  }> = {
18
16
  [K in keyof T['stores']]: Awaited<ReturnType<T['stores'][K]['resolver']>>;
@@ -21,7 +19,9 @@ type InferLockStores<T extends {
21
19
  * Lock service is a singleton instance of Verrou
22
20
  * configured using user app's config
23
21
  */
24
- interface LockService extends Verrou<LockStoresList> {
22
+ export interface LockService extends Verrou<LockStoresList extends Record<string, StoreFactory> ? LockStoresList : never> {
25
23
  }
26
-
27
- export type { InferLockStores, LockService, LockStoresList };
24
+ /**
25
+ * Re-exporting types from Verrou
26
+ */
27
+ export * from '@verrou/core/types';
@@ -0,0 +1 @@
1
+ export declare const stubsRoot: string;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,37 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ import { Database } from '@adonisjs/lucid/database';
3
+ import { RedisConnection, RedisManager } from '@adonisjs/redis';
4
+ import { IgnitorFactory } from '@adonisjs/core/factories/core/ignitor';
5
+ export declare const BASE_URL: import("url").URL;
6
+ export declare const IMPORTER: (filePath: string) => Promise<any>;
7
+ /**
8
+ * Setup an AdonisJS app for testing
9
+ */
10
+ export declare function setupApp(parameters?: Parameters<IgnitorFactory['merge']>[0]): Promise<{
11
+ app: import("@adonisjs/core/types").ApplicationService;
12
+ }>;
13
+ declare module '@adonisjs/redis/types' {
14
+ interface RedisConnections {
15
+ main: RedisConnection;
16
+ }
17
+ }
18
+ /**
19
+ * Creates an instance of the database class for making queries
20
+ */
21
+ export declare function createDatabase({ autoClose }?: {
22
+ autoClose?: boolean;
23
+ }): Database;
24
+ /**
25
+ * Creates redis manager instance to execute redis
26
+ * commands
27
+ */
28
+ export declare function createRedis(keysToClear?: string[]): RedisManager<{
29
+ main: {
30
+ host: string;
31
+ port: string | number;
32
+ };
33
+ }>;
34
+ /**
35
+ * Creates needed database tables
36
+ */
37
+ export declare function createTables(db: Database): Promise<void>;
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@adonisjs/lock",
3
3
  "description": "Atomic locks (mutex) for AdonisJS applications",
4
- "version": "1.0.0-0",
4
+ "version": "1.0.0-1",
5
5
  "engines": {
6
6
  "node": ">=20.6.0"
7
7
  },
@@ -25,7 +25,8 @@
25
25
  "pretest": "npm run lint",
26
26
  "test": "c8 npm run quick:test",
27
27
  "prebuild": "npm run lint && npm run clean",
28
- "build": "tsup-node && npm run copy:templates",
28
+ "compile": "tsup-node && tsc --emitDeclarationOnly --declaration",
29
+ "build": "tsup-node && tsc --emitDeclarationOnly --declaration && npm run copy:templates",
29
30
  "release": "np",
30
31
  "version": "npm run build",
31
32
  "prepublishOnly": "npm run build"
@@ -125,7 +126,7 @@
125
126
  "outDir": "./build",
126
127
  "clean": true,
127
128
  "format": "esm",
128
- "dts": true,
129
+ "dts": false,
129
130
  "target": "esnext"
130
131
  }
131
132
  }