@infinitetoken/lumber-kit 0.3.0 → 0.3.3
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/cjs/constants/index.d.ts +11 -1
- package/dist/cjs/constants/index.d.ts.map +1 -1
- package/dist/cjs/constants/index.js +22 -2
- package/dist/cjs/types/index.d.ts +22 -3
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.d.ts +5 -1
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +11 -3
- package/dist/esm/constants/index.d.ts +11 -1
- package/dist/esm/constants/index.d.ts.map +1 -1
- package/dist/esm/constants/index.js +21 -1
- package/dist/esm/types/index.d.ts +22 -3
- package/dist/esm/types/index.d.ts.map +1 -1
- package/dist/esm/utils/index.d.ts +5 -1
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +7 -2
- package/package.json +1 -1
|
@@ -6,6 +6,14 @@ export declare const enum LogLevel {
|
|
|
6
6
|
Error = 3,
|
|
7
7
|
Fatal = 4
|
|
8
8
|
}
|
|
9
|
+
/** String name for each log level. */
|
|
10
|
+
export type LogLevelName = 'debug' | 'info' | 'warn' | 'error' | 'fatal';
|
|
11
|
+
/** Maps numeric log level to its lowercase string name. */
|
|
12
|
+
export declare const logLevelToName: Record<number, LogLevelName>;
|
|
13
|
+
/** Maps lowercase log level name to its numeric value. */
|
|
14
|
+
export declare const logLevelNameToLevel: Record<LogLevelName, LogLevel>;
|
|
15
|
+
/** All valid log levels, ordered from least to most severe. */
|
|
16
|
+
export declare const logLevels: readonly LogLevel[];
|
|
9
17
|
/** User subscription level. Mirrors User.subscriptionLevel in Lumber-API. */
|
|
10
18
|
export declare const enum SubscriptionLevel {
|
|
11
19
|
Hobby = 0,
|
|
@@ -16,7 +24,9 @@ export declare const enum SubscriptionLevel {
|
|
|
16
24
|
/** String name for each subscription level, suitable for display and Redux state. */
|
|
17
25
|
export type SubscriptionLevelName = 'hobby' | 'dev' | 'pro' | 'enterprise';
|
|
18
26
|
/** Maps numeric subscription level to its string level name. */
|
|
19
|
-
export declare const
|
|
27
|
+
export declare const subscriptionLevelToName: Record<SubscriptionLevel, SubscriptionLevelName>;
|
|
28
|
+
/** All valid subscription levels, ordered from least to most severe. */
|
|
29
|
+
export declare const subscriptionLevels: readonly SubscriptionLevel[];
|
|
20
30
|
export type SubscriptionLimits = {
|
|
21
31
|
apps: number;
|
|
22
32
|
memberships: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAEA,oFAAoF;AACpF,0BAAkB,QAAQ;IACxB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;IACT,KAAK,IAAI;CACV;AAED,6EAA6E;AAC7E,0BAAkB,iBAAiB;IACjC,KAAK,IAAI;IACT,GAAG,IAAI;IACP,GAAG,IAAI;IACP,UAAU,IAAI;CACf;AAED,qFAAqF;AACrF,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,YAAY,CAAA;AAE1E,gEAAgE;AAChE,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAEA,oFAAoF;AACpF,0BAAkB,QAAQ;IACxB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;IACT,KAAK,IAAI;CACV;AAED,sCAAsC;AACtC,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AAExE,2DAA2D;AAC3D,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAMvD,CAAA;AAED,0DAA0D;AAC1D,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,YAAY,EAAE,QAAQ,CAM9D,CAAA;AAED,+DAA+D;AAC/D,eAAO,MAAM,SAAS,EAAE,SAAS,QAAQ,EAAmF,CAAA;AAE5H,6EAA6E;AAC7E,0BAAkB,iBAAiB;IACjC,KAAK,IAAI;IACT,GAAG,IAAI;IACP,GAAG,IAAI;IACP,UAAU,IAAI;CACf;AAED,qFAAqF;AACrF,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,YAAY,CAAA;AAE1E,gEAAgE;AAChE,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,iBAAiB,EAAE,qBAAqB,CAKpF,CAAA;AAED,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,EAAE,SAAS,iBAAiB,EAA0G,CAAA;AAErK,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAK5E,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Source: D-01, D-02 (locked decisions — do not change numeric values without a semver major bump)
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.subscriptionLimits = exports.
|
|
4
|
+
exports.subscriptionLimits = exports.subscriptionLevels = exports.subscriptionLevelToName = exports.SubscriptionLevel = exports.logLevels = exports.logLevelNameToLevel = exports.logLevelToName = exports.LogLevel = void 0;
|
|
5
5
|
/** Log severity level. Numeric values match the existing Lumber-API level field. */
|
|
6
6
|
var LogLevel;
|
|
7
7
|
(function (LogLevel) {
|
|
@@ -11,6 +11,24 @@ var LogLevel;
|
|
|
11
11
|
LogLevel[LogLevel["Error"] = 3] = "Error";
|
|
12
12
|
LogLevel[LogLevel["Fatal"] = 4] = "Fatal";
|
|
13
13
|
})(LogLevel || (exports.LogLevel = LogLevel = {}));
|
|
14
|
+
/** Maps numeric log level to its lowercase string name. */
|
|
15
|
+
exports.logLevelToName = {
|
|
16
|
+
[0 /* LogLevel.Debug */]: 'debug',
|
|
17
|
+
[1 /* LogLevel.Info */]: 'info',
|
|
18
|
+
[2 /* LogLevel.Warn */]: 'warn',
|
|
19
|
+
[3 /* LogLevel.Error */]: 'error',
|
|
20
|
+
[4 /* LogLevel.Fatal */]: 'fatal'
|
|
21
|
+
};
|
|
22
|
+
/** Maps lowercase log level name to its numeric value. */
|
|
23
|
+
exports.logLevelNameToLevel = {
|
|
24
|
+
debug: 0 /* LogLevel.Debug */,
|
|
25
|
+
info: 1 /* LogLevel.Info */,
|
|
26
|
+
warn: 2 /* LogLevel.Warn */,
|
|
27
|
+
error: 3 /* LogLevel.Error */,
|
|
28
|
+
fatal: 4 /* LogLevel.Fatal */
|
|
29
|
+
};
|
|
30
|
+
/** All valid log levels, ordered from least to most severe. */
|
|
31
|
+
exports.logLevels = [0 /* LogLevel.Debug */, 1 /* LogLevel.Info */, 2 /* LogLevel.Warn */, 3 /* LogLevel.Error */, 4 /* LogLevel.Fatal */];
|
|
14
32
|
/** User subscription level. Mirrors User.subscriptionLevel in Lumber-API. */
|
|
15
33
|
var SubscriptionLevel;
|
|
16
34
|
(function (SubscriptionLevel) {
|
|
@@ -20,12 +38,14 @@ var SubscriptionLevel;
|
|
|
20
38
|
SubscriptionLevel[SubscriptionLevel["Enterprise"] = 3] = "Enterprise";
|
|
21
39
|
})(SubscriptionLevel || (exports.SubscriptionLevel = SubscriptionLevel = {}));
|
|
22
40
|
/** Maps numeric subscription level to its string level name. */
|
|
23
|
-
exports.
|
|
41
|
+
exports.subscriptionLevelToName = {
|
|
24
42
|
[0 /* SubscriptionLevel.Hobby */]: 'hobby',
|
|
25
43
|
[1 /* SubscriptionLevel.Dev */]: 'dev',
|
|
26
44
|
[2 /* SubscriptionLevel.Pro */]: 'pro',
|
|
27
45
|
[3 /* SubscriptionLevel.Enterprise */]: 'enterprise'
|
|
28
46
|
};
|
|
47
|
+
/** All valid subscription levels, ordered from least to most severe. */
|
|
48
|
+
exports.subscriptionLevels = [0 /* SubscriptionLevel.Hobby */, 1 /* SubscriptionLevel.Dev */, 2 /* SubscriptionLevel.Pro */, 3 /* SubscriptionLevel.Enterprise */];
|
|
29
49
|
/** Per-level resource limits. Use Infinity to mean unlimited. */
|
|
30
50
|
exports.subscriptionLimits = {
|
|
31
51
|
[0 /* SubscriptionLevel.Hobby */]: { apps: 1, memberships: 1, apiKeys: 1, logRetentionDays: 7, monthlyLogs: 10000 },
|
|
@@ -15,8 +15,8 @@ export interface LogContext {
|
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* Encrypted private container.
|
|
18
|
-
* payload = base64(ciphertext)
|
|
19
|
-
* nonce = base64(random
|
|
18
|
+
* payload = base64(authTag + ciphertext)
|
|
19
|
+
* nonce = base64(random IV)
|
|
20
20
|
* keyVersion enables future rotation support.
|
|
21
21
|
*/
|
|
22
22
|
export interface LogPrivate {
|
|
@@ -51,6 +51,7 @@ export interface AppEncryptedKey {
|
|
|
51
51
|
}
|
|
52
52
|
/**
|
|
53
53
|
* API response shape for a listed or fetched app.
|
|
54
|
+
* encryptedKey is the requesting user's wrapped copy of the app key, or null if none exists.
|
|
54
55
|
*/
|
|
55
56
|
export interface AppRecord {
|
|
56
57
|
id: string;
|
|
@@ -59,7 +60,7 @@ export interface AppRecord {
|
|
|
59
60
|
name: string;
|
|
60
61
|
color?: string;
|
|
61
62
|
logoUrl?: string;
|
|
62
|
-
|
|
63
|
+
encryptedKey: string | null;
|
|
63
64
|
}
|
|
64
65
|
/**
|
|
65
66
|
* App creation response.
|
|
@@ -154,4 +155,22 @@ export interface AppsQuery {
|
|
|
154
155
|
from?: string;
|
|
155
156
|
to?: string;
|
|
156
157
|
}
|
|
158
|
+
export type DeviceLinkStatus = 'pending' | 'approved' | 'denied';
|
|
159
|
+
/**
|
|
160
|
+
* Response from POST /device-links.
|
|
161
|
+
*/
|
|
162
|
+
export interface DeviceLinkCreatedRecord {
|
|
163
|
+
id: string;
|
|
164
|
+
expiresAt: string;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Response from GET /device-links/:id.
|
|
168
|
+
* encryptedKey is present only when status is 'approved'.
|
|
169
|
+
*/
|
|
170
|
+
export interface DeviceLinkRecord {
|
|
171
|
+
id: string;
|
|
172
|
+
status: DeviceLinkStatus;
|
|
173
|
+
encryptedKey?: string;
|
|
174
|
+
expiresAt: string;
|
|
175
|
+
}
|
|
157
176
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAE1D,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;AAEpD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IAEjB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,KAAK,EAAE,QAAQ,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IAEf,OAAO,EAAE,OAAO,CAAA;IAEhB,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAElC,OAAO,CAAC,EAAE,UAAU,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LogLevel, SubscriptionLevel } from '../constants';
|
|
2
|
+
import { Appearance, DeviceLinkStatus } from '../types';
|
|
2
3
|
export declare const isValidAppearance: (value: unknown) => value is Appearance;
|
|
3
4
|
/** Accepts 3- and 6-digit hex color strings (#rgb, #rrggbb). */
|
|
4
5
|
export declare const isValidColor: (value: string) => boolean;
|
|
6
|
+
export declare const isValidLogLevel: (value: unknown) => value is LogLevel;
|
|
7
|
+
export declare const isValidSubscriptionLevel: (value: unknown) => value is SubscriptionLevel;
|
|
8
|
+
export declare const isValidDeviceLinkStatus: (value: unknown) => value is DeviceLinkStatus;
|
|
5
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAa,iBAAiB,EAAsB,MAAM,cAAc,CAAA;AACzF,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAIvD,eAAO,MAAM,iBAAiB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,UAA4D,CAAA;AAExH,gEAAgE;AAChE,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,KAAG,OAA2D,CAAA;AAExG,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,QAA6D,CAAA;AAEvH,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,iBAAyF,CAAA;AAI5J,eAAO,MAAM,uBAAuB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,gBAA0E,CAAA"}
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isValidColor = exports.isValidAppearance = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
3
|
+
exports.isValidDeviceLinkStatus = exports.isValidSubscriptionLevel = exports.isValidLogLevel = exports.isValidColor = exports.isValidAppearance = void 0;
|
|
4
|
+
const constants_1 = require("../constants");
|
|
5
|
+
const appearanceValues = ['system', 'dark', 'light'];
|
|
6
|
+
const isValidAppearance = (value) => appearanceValues.includes(value);
|
|
6
7
|
exports.isValidAppearance = isValidAppearance;
|
|
7
8
|
/** Accepts 3- and 6-digit hex color strings (#rgb, #rrggbb). */
|
|
8
9
|
const isValidColor = (value) => /^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/.test(value);
|
|
9
10
|
exports.isValidColor = isValidColor;
|
|
11
|
+
const isValidLogLevel = (value) => constants_1.logLevels.includes(value);
|
|
12
|
+
exports.isValidLogLevel = isValidLogLevel;
|
|
13
|
+
const isValidSubscriptionLevel = (value) => constants_1.subscriptionLevels.includes(value);
|
|
14
|
+
exports.isValidSubscriptionLevel = isValidSubscriptionLevel;
|
|
15
|
+
const deviceLinkStatuses = ['pending', 'approved', 'denied'];
|
|
16
|
+
const isValidDeviceLinkStatus = (value) => deviceLinkStatuses.includes(value);
|
|
17
|
+
exports.isValidDeviceLinkStatus = isValidDeviceLinkStatus;
|
|
@@ -6,6 +6,14 @@ export declare const enum LogLevel {
|
|
|
6
6
|
Error = 3,
|
|
7
7
|
Fatal = 4
|
|
8
8
|
}
|
|
9
|
+
/** String name for each log level. */
|
|
10
|
+
export type LogLevelName = 'debug' | 'info' | 'warn' | 'error' | 'fatal';
|
|
11
|
+
/** Maps numeric log level to its lowercase string name. */
|
|
12
|
+
export declare const logLevelToName: Record<number, LogLevelName>;
|
|
13
|
+
/** Maps lowercase log level name to its numeric value. */
|
|
14
|
+
export declare const logLevelNameToLevel: Record<LogLevelName, LogLevel>;
|
|
15
|
+
/** All valid log levels, ordered from least to most severe. */
|
|
16
|
+
export declare const logLevels: readonly LogLevel[];
|
|
9
17
|
/** User subscription level. Mirrors User.subscriptionLevel in Lumber-API. */
|
|
10
18
|
export declare const enum SubscriptionLevel {
|
|
11
19
|
Hobby = 0,
|
|
@@ -16,7 +24,9 @@ export declare const enum SubscriptionLevel {
|
|
|
16
24
|
/** String name for each subscription level, suitable for display and Redux state. */
|
|
17
25
|
export type SubscriptionLevelName = 'hobby' | 'dev' | 'pro' | 'enterprise';
|
|
18
26
|
/** Maps numeric subscription level to its string level name. */
|
|
19
|
-
export declare const
|
|
27
|
+
export declare const subscriptionLevelToName: Record<SubscriptionLevel, SubscriptionLevelName>;
|
|
28
|
+
/** All valid subscription levels, ordered from least to most severe. */
|
|
29
|
+
export declare const subscriptionLevels: readonly SubscriptionLevel[];
|
|
20
30
|
export type SubscriptionLimits = {
|
|
21
31
|
apps: number;
|
|
22
32
|
memberships: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAEA,oFAAoF;AACpF,0BAAkB,QAAQ;IACxB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;IACT,KAAK,IAAI;CACV;AAED,6EAA6E;AAC7E,0BAAkB,iBAAiB;IACjC,KAAK,IAAI;IACT,GAAG,IAAI;IACP,GAAG,IAAI;IACP,UAAU,IAAI;CACf;AAED,qFAAqF;AACrF,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,YAAY,CAAA;AAE1E,gEAAgE;AAChE,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAEA,oFAAoF;AACpF,0BAAkB,QAAQ;IACxB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;IACT,KAAK,IAAI;CACV;AAED,sCAAsC;AACtC,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AAExE,2DAA2D;AAC3D,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAMvD,CAAA;AAED,0DAA0D;AAC1D,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,YAAY,EAAE,QAAQ,CAM9D,CAAA;AAED,+DAA+D;AAC/D,eAAO,MAAM,SAAS,EAAE,SAAS,QAAQ,EAAmF,CAAA;AAE5H,6EAA6E;AAC7E,0BAAkB,iBAAiB;IACjC,KAAK,IAAI;IACT,GAAG,IAAI;IACP,GAAG,IAAI;IACP,UAAU,IAAI;CACf;AAED,qFAAqF;AACrF,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,YAAY,CAAA;AAE1E,gEAAgE;AAChE,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,iBAAiB,EAAE,qBAAqB,CAKpF,CAAA;AAED,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,EAAE,SAAS,iBAAiB,EAA0G,CAAA;AAErK,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,iEAAiE;AACjE,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAK5E,CAAA"}
|
|
@@ -8,6 +8,24 @@ export var LogLevel;
|
|
|
8
8
|
LogLevel[LogLevel["Error"] = 3] = "Error";
|
|
9
9
|
LogLevel[LogLevel["Fatal"] = 4] = "Fatal";
|
|
10
10
|
})(LogLevel || (LogLevel = {}));
|
|
11
|
+
/** Maps numeric log level to its lowercase string name. */
|
|
12
|
+
export const logLevelToName = {
|
|
13
|
+
[0 /* LogLevel.Debug */]: 'debug',
|
|
14
|
+
[1 /* LogLevel.Info */]: 'info',
|
|
15
|
+
[2 /* LogLevel.Warn */]: 'warn',
|
|
16
|
+
[3 /* LogLevel.Error */]: 'error',
|
|
17
|
+
[4 /* LogLevel.Fatal */]: 'fatal'
|
|
18
|
+
};
|
|
19
|
+
/** Maps lowercase log level name to its numeric value. */
|
|
20
|
+
export const logLevelNameToLevel = {
|
|
21
|
+
debug: 0 /* LogLevel.Debug */,
|
|
22
|
+
info: 1 /* LogLevel.Info */,
|
|
23
|
+
warn: 2 /* LogLevel.Warn */,
|
|
24
|
+
error: 3 /* LogLevel.Error */,
|
|
25
|
+
fatal: 4 /* LogLevel.Fatal */
|
|
26
|
+
};
|
|
27
|
+
/** All valid log levels, ordered from least to most severe. */
|
|
28
|
+
export const logLevels = [0 /* LogLevel.Debug */, 1 /* LogLevel.Info */, 2 /* LogLevel.Warn */, 3 /* LogLevel.Error */, 4 /* LogLevel.Fatal */];
|
|
11
29
|
/** User subscription level. Mirrors User.subscriptionLevel in Lumber-API. */
|
|
12
30
|
export var SubscriptionLevel;
|
|
13
31
|
(function (SubscriptionLevel) {
|
|
@@ -17,12 +35,14 @@ export var SubscriptionLevel;
|
|
|
17
35
|
SubscriptionLevel[SubscriptionLevel["Enterprise"] = 3] = "Enterprise";
|
|
18
36
|
})(SubscriptionLevel || (SubscriptionLevel = {}));
|
|
19
37
|
/** Maps numeric subscription level to its string level name. */
|
|
20
|
-
export const
|
|
38
|
+
export const subscriptionLevelToName = {
|
|
21
39
|
[0 /* SubscriptionLevel.Hobby */]: 'hobby',
|
|
22
40
|
[1 /* SubscriptionLevel.Dev */]: 'dev',
|
|
23
41
|
[2 /* SubscriptionLevel.Pro */]: 'pro',
|
|
24
42
|
[3 /* SubscriptionLevel.Enterprise */]: 'enterprise'
|
|
25
43
|
};
|
|
44
|
+
/** All valid subscription levels, ordered from least to most severe. */
|
|
45
|
+
export const subscriptionLevels = [0 /* SubscriptionLevel.Hobby */, 1 /* SubscriptionLevel.Dev */, 2 /* SubscriptionLevel.Pro */, 3 /* SubscriptionLevel.Enterprise */];
|
|
26
46
|
/** Per-level resource limits. Use Infinity to mean unlimited. */
|
|
27
47
|
export const subscriptionLimits = {
|
|
28
48
|
[0 /* SubscriptionLevel.Hobby */]: { apps: 1, memberships: 1, apiKeys: 1, logRetentionDays: 7, monthlyLogs: 10000 },
|
|
@@ -15,8 +15,8 @@ export interface LogContext {
|
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* Encrypted private container.
|
|
18
|
-
* payload = base64(ciphertext)
|
|
19
|
-
* nonce = base64(random
|
|
18
|
+
* payload = base64(authTag + ciphertext)
|
|
19
|
+
* nonce = base64(random IV)
|
|
20
20
|
* keyVersion enables future rotation support.
|
|
21
21
|
*/
|
|
22
22
|
export interface LogPrivate {
|
|
@@ -51,6 +51,7 @@ export interface AppEncryptedKey {
|
|
|
51
51
|
}
|
|
52
52
|
/**
|
|
53
53
|
* API response shape for a listed or fetched app.
|
|
54
|
+
* encryptedKey is the requesting user's wrapped copy of the app key, or null if none exists.
|
|
54
55
|
*/
|
|
55
56
|
export interface AppRecord {
|
|
56
57
|
id: string;
|
|
@@ -59,7 +60,7 @@ export interface AppRecord {
|
|
|
59
60
|
name: string;
|
|
60
61
|
color?: string;
|
|
61
62
|
logoUrl?: string;
|
|
62
|
-
|
|
63
|
+
encryptedKey: string | null;
|
|
63
64
|
}
|
|
64
65
|
/**
|
|
65
66
|
* App creation response.
|
|
@@ -154,4 +155,22 @@ export interface AppsQuery {
|
|
|
154
155
|
from?: string;
|
|
155
156
|
to?: string;
|
|
156
157
|
}
|
|
158
|
+
export type DeviceLinkStatus = 'pending' | 'approved' | 'denied';
|
|
159
|
+
/**
|
|
160
|
+
* Response from POST /device-links.
|
|
161
|
+
*/
|
|
162
|
+
export interface DeviceLinkCreatedRecord {
|
|
163
|
+
id: string;
|
|
164
|
+
expiresAt: string;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Response from GET /device-links/:id.
|
|
168
|
+
* encryptedKey is present only when status is 'approved'.
|
|
169
|
+
*/
|
|
170
|
+
export interface DeviceLinkRecord {
|
|
171
|
+
id: string;
|
|
172
|
+
status: DeviceLinkStatus;
|
|
173
|
+
encryptedKey?: string;
|
|
174
|
+
expiresAt: string;
|
|
175
|
+
}
|
|
157
176
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAE1D,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;AAEpD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IAEjB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,KAAK,EAAE,QAAQ,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IAEf,OAAO,EAAE,OAAO,CAAA;IAEhB,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAElC,OAAO,CAAC,EAAE,UAAU,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LogLevel, SubscriptionLevel } from '../constants';
|
|
2
|
+
import { Appearance, DeviceLinkStatus } from '../types';
|
|
2
3
|
export declare const isValidAppearance: (value: unknown) => value is Appearance;
|
|
3
4
|
/** Accepts 3- and 6-digit hex color strings (#rgb, #rrggbb). */
|
|
4
5
|
export declare const isValidColor: (value: string) => boolean;
|
|
6
|
+
export declare const isValidLogLevel: (value: unknown) => value is LogLevel;
|
|
7
|
+
export declare const isValidSubscriptionLevel: (value: unknown) => value is SubscriptionLevel;
|
|
8
|
+
export declare const isValidDeviceLinkStatus: (value: unknown) => value is DeviceLinkStatus;
|
|
5
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAa,iBAAiB,EAAsB,MAAM,cAAc,CAAA;AACzF,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAIvD,eAAO,MAAM,iBAAiB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,UAA4D,CAAA;AAExH,gEAAgE;AAChE,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,KAAG,OAA2D,CAAA;AAExG,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,QAA6D,CAAA;AAEvH,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,iBAAyF,CAAA;AAI5J,eAAO,MAAM,uBAAuB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,gBAA0E,CAAA"}
|
package/dist/esm/utils/index.js
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { logLevels, subscriptionLevels } from '../constants';
|
|
2
|
+
const appearanceValues = ['system', 'dark', 'light'];
|
|
3
|
+
export const isValidAppearance = (value) => appearanceValues.includes(value);
|
|
3
4
|
/** Accepts 3- and 6-digit hex color strings (#rgb, #rrggbb). */
|
|
4
5
|
export const isValidColor = (value) => /^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/.test(value);
|
|
6
|
+
export const isValidLogLevel = (value) => logLevels.includes(value);
|
|
7
|
+
export const isValidSubscriptionLevel = (value) => subscriptionLevels.includes(value);
|
|
8
|
+
const deviceLinkStatuses = ['pending', 'approved', 'denied'];
|
|
9
|
+
export const isValidDeviceLinkStatus = (value) => deviceLinkStatuses.includes(value);
|
package/package.json
CHANGED