@murumets-ee/settings 0.1.1 → 0.1.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.
- package/dist/plugin.cjs +24 -1
- package/dist/plugin.js +24 -1
- package/package.json +4 -4
- package/dist/index.d.cts +0 -291
- package/dist/index.d.ts +0 -291
- package/dist/plugin.d.cts +0 -22
- package/dist/plugin.d.ts +0 -22
- package/dist/schema.d.cts +0 -316
- package/dist/schema.d.ts +0 -316
- package/dist/view-state.d.cts +0 -68
- package/dist/view-state.d.ts +0 -68
package/dist/view-state.d.cts
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@murumets-ee/core';
|
|
2
|
-
import { PostgresJsDatabase } from 'drizzle-orm/postgres-js';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* ViewStateClient — schemaless user-scoped state persistence.
|
|
6
|
-
*
|
|
7
|
-
* Used by admin UI for table filters, column order, panel state, etc.
|
|
8
|
-
* Optional TTL for auto-cleanup of stale state.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```typescript
|
|
12
|
-
* import { createViewStateClient } from '@murumets-ee/settings/view-state'
|
|
13
|
-
*
|
|
14
|
-
* const viewState = createViewStateClient({ db, userId: currentUser.id })
|
|
15
|
-
*
|
|
16
|
-
* await viewState.save('articles-table', {
|
|
17
|
-
* filters: { status: 'published' },
|
|
18
|
-
* columnOrder: ['title', 'status', 'date'],
|
|
19
|
-
* sortBy: 'date',
|
|
20
|
-
* })
|
|
21
|
-
*
|
|
22
|
-
* const state = await viewState.load('articles-table')
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
|
|
26
|
-
interface ViewStateClientConfig {
|
|
27
|
-
/** Database client (read-write) */
|
|
28
|
-
db: PostgresJsDatabase;
|
|
29
|
-
/** User ID for scoping */
|
|
30
|
-
userId: string;
|
|
31
|
-
/** Logger instance */
|
|
32
|
-
logger?: Logger;
|
|
33
|
-
/** Default TTL in seconds for view state entries. Defaults to 30 days. */
|
|
34
|
-
defaultTtl?: number;
|
|
35
|
-
}
|
|
36
|
-
declare class ViewStateClient {
|
|
37
|
-
private db;
|
|
38
|
-
private userId;
|
|
39
|
-
private logger?;
|
|
40
|
-
private defaultTtl;
|
|
41
|
-
constructor(config: ViewStateClientConfig);
|
|
42
|
-
/**
|
|
43
|
-
* Save view state (upsert).
|
|
44
|
-
*/
|
|
45
|
-
save<T extends Record<string, unknown>>(viewKey: string, state: T, options?: {
|
|
46
|
-
ttl?: number;
|
|
47
|
-
}): Promise<void>;
|
|
48
|
-
/**
|
|
49
|
-
* Load view state. Returns null if not found or expired.
|
|
50
|
-
*/
|
|
51
|
-
load<T extends Record<string, unknown> = Record<string, unknown>>(viewKey: string): Promise<T | null>;
|
|
52
|
-
/**
|
|
53
|
-
* Clear a specific view state entry.
|
|
54
|
-
*/
|
|
55
|
-
clear(viewKey: string): Promise<void>;
|
|
56
|
-
/**
|
|
57
|
-
* Clear all expired view state entries (maintenance task).
|
|
58
|
-
* Call periodically (e.g., from a cron job or queue task).
|
|
59
|
-
* Returns the number of entries removed.
|
|
60
|
-
*/
|
|
61
|
-
clearExpired(): Promise<number>;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Factory function following toolkit conventions.
|
|
65
|
-
*/
|
|
66
|
-
declare function createViewStateClient(config: ViewStateClientConfig): ViewStateClient;
|
|
67
|
-
|
|
68
|
-
export { ViewStateClient, type ViewStateClientConfig, createViewStateClient };
|
package/dist/view-state.d.ts
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@murumets-ee/core';
|
|
2
|
-
import { PostgresJsDatabase } from 'drizzle-orm/postgres-js';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* ViewStateClient — schemaless user-scoped state persistence.
|
|
6
|
-
*
|
|
7
|
-
* Used by admin UI for table filters, column order, panel state, etc.
|
|
8
|
-
* Optional TTL for auto-cleanup of stale state.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```typescript
|
|
12
|
-
* import { createViewStateClient } from '@murumets-ee/settings/view-state'
|
|
13
|
-
*
|
|
14
|
-
* const viewState = createViewStateClient({ db, userId: currentUser.id })
|
|
15
|
-
*
|
|
16
|
-
* await viewState.save('articles-table', {
|
|
17
|
-
* filters: { status: 'published' },
|
|
18
|
-
* columnOrder: ['title', 'status', 'date'],
|
|
19
|
-
* sortBy: 'date',
|
|
20
|
-
* })
|
|
21
|
-
*
|
|
22
|
-
* const state = await viewState.load('articles-table')
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
|
|
26
|
-
interface ViewStateClientConfig {
|
|
27
|
-
/** Database client (read-write) */
|
|
28
|
-
db: PostgresJsDatabase;
|
|
29
|
-
/** User ID for scoping */
|
|
30
|
-
userId: string;
|
|
31
|
-
/** Logger instance */
|
|
32
|
-
logger?: Logger;
|
|
33
|
-
/** Default TTL in seconds for view state entries. Defaults to 30 days. */
|
|
34
|
-
defaultTtl?: number;
|
|
35
|
-
}
|
|
36
|
-
declare class ViewStateClient {
|
|
37
|
-
private db;
|
|
38
|
-
private userId;
|
|
39
|
-
private logger?;
|
|
40
|
-
private defaultTtl;
|
|
41
|
-
constructor(config: ViewStateClientConfig);
|
|
42
|
-
/**
|
|
43
|
-
* Save view state (upsert).
|
|
44
|
-
*/
|
|
45
|
-
save<T extends Record<string, unknown>>(viewKey: string, state: T, options?: {
|
|
46
|
-
ttl?: number;
|
|
47
|
-
}): Promise<void>;
|
|
48
|
-
/**
|
|
49
|
-
* Load view state. Returns null if not found or expired.
|
|
50
|
-
*/
|
|
51
|
-
load<T extends Record<string, unknown> = Record<string, unknown>>(viewKey: string): Promise<T | null>;
|
|
52
|
-
/**
|
|
53
|
-
* Clear a specific view state entry.
|
|
54
|
-
*/
|
|
55
|
-
clear(viewKey: string): Promise<void>;
|
|
56
|
-
/**
|
|
57
|
-
* Clear all expired view state entries (maintenance task).
|
|
58
|
-
* Call periodically (e.g., from a cron job or queue task).
|
|
59
|
-
* Returns the number of entries removed.
|
|
60
|
-
*/
|
|
61
|
-
clearExpired(): Promise<number>;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Factory function following toolkit conventions.
|
|
65
|
-
*/
|
|
66
|
-
declare function createViewStateClient(config: ViewStateClientConfig): ViewStateClient;
|
|
67
|
-
|
|
68
|
-
export { ViewStateClient, type ViewStateClientConfig, createViewStateClient };
|