rivet-design 0.21.1 → 0.21.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.
Files changed (107) hide show
  1. package/dist/agent-variants/contracts.d.ts +410 -410
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +25 -9
  5. package/dist/index.js.map +1 -1
  6. package/dist/library/BrowserSessions.d.ts +24 -8
  7. package/dist/library/BrowserSessions.d.ts.map +1 -1
  8. package/dist/library/BrowserSessions.js +67 -45
  9. package/dist/library/BrowserSessions.js.map +1 -1
  10. package/dist/library/HubServer.js +1 -1
  11. package/dist/library/HubServer.js.map +1 -1
  12. package/dist/routes/account.d.ts.map +1 -1
  13. package/dist/routes/account.js +7 -2
  14. package/dist/routes/account.js.map +1 -1
  15. package/dist/routes/installRef.d.ts +3 -0
  16. package/dist/routes/installRef.d.ts.map +1 -0
  17. package/dist/routes/installRef.js +18 -0
  18. package/dist/routes/installRef.js.map +1 -0
  19. package/dist/routes/library/app.d.ts.map +1 -1
  20. package/dist/routes/library/app.js +3 -8
  21. package/dist/routes/library/app.js.map +1 -1
  22. package/dist/routes/library/browserAccess.d.ts +0 -1
  23. package/dist/routes/library/browserAccess.d.ts.map +1 -1
  24. package/dist/routes/library/browserAccess.js +27 -20
  25. package/dist/routes/library/browserAccess.js.map +1 -1
  26. package/dist/routes/library/index.d.ts.map +1 -1
  27. package/dist/routes/library/index.js +2 -4
  28. package/dist/routes/library/index.js.map +1 -1
  29. package/dist/routes/library/middleware.d.ts +1 -1
  30. package/dist/routes/library/middleware.d.ts.map +1 -1
  31. package/dist/routes/library/middleware.js +15 -3
  32. package/dist/routes/library/middleware.js.map +1 -1
  33. package/dist/routes/variantRequestSchema.d.ts +7 -7
  34. package/dist/server.d.ts.map +1 -1
  35. package/dist/server.js +2 -0
  36. package/dist/server.js.map +1 -1
  37. package/dist/services/AuthService.d.ts.map +1 -1
  38. package/dist/services/AuthService.js +41 -15
  39. package/dist/services/AuthService.js.map +1 -1
  40. package/dist/services/BrowserAgentClient.d.ts.map +1 -1
  41. package/dist/services/BrowserAgentClient.js +13 -3
  42. package/dist/services/BrowserAgentClient.js.map +1 -1
  43. package/dist/services/ConfigManager.d.ts +23 -3
  44. package/dist/services/ConfigManager.d.ts.map +1 -1
  45. package/dist/services/ConfigManager.js +117 -24
  46. package/dist/services/ConfigManager.js.map +1 -1
  47. package/dist/services/GatewayClient.d.ts.map +1 -1
  48. package/dist/services/GatewayClient.js +3 -2
  49. package/dist/services/GatewayClient.js.map +1 -1
  50. package/dist/services/IntegrationsClient.d.ts +3 -3
  51. package/dist/services/IntegrationsClient.d.ts.map +1 -1
  52. package/dist/services/IntegrationsClient.js +5 -11
  53. package/dist/services/IntegrationsClient.js.map +1 -1
  54. package/dist/services/ProjectRegistry.d.ts +2 -2
  55. package/dist/services/PrototypeDeployService.d.ts.map +1 -1
  56. package/dist/services/PrototypeDeployService.js +3 -2
  57. package/dist/services/PrototypeDeployService.js.map +1 -1
  58. package/dist/services/authUpdate.d.ts +8 -0
  59. package/dist/services/authUpdate.d.ts.map +1 -0
  60. package/dist/services/authUpdate.js +21 -0
  61. package/dist/services/authUpdate.js.map +1 -0
  62. package/dist/services/pendingLogin.d.ts +2 -0
  63. package/dist/services/pendingLogin.d.ts.map +1 -1
  64. package/dist/services/pendingLogin.js +4 -2
  65. package/dist/services/pendingLogin.js.map +1 -1
  66. package/dist/services/profiles/DesignProfiles.d.ts +6 -6
  67. package/dist/services/profiles/ProfilePlanning.d.ts +4 -4
  68. package/dist/services/profiles/ReferenceReader.d.ts +3 -3
  69. package/dist/services/profiles/profileContext.d.ts +1 -1
  70. package/dist/storage/library/BrowserAuthorizationRecords.d.ts +54 -0
  71. package/dist/storage/library/BrowserAuthorizationRecords.d.ts.map +1 -0
  72. package/dist/storage/library/BrowserAuthorizationRecords.js +175 -0
  73. package/dist/storage/library/BrowserAuthorizationRecords.js.map +1 -0
  74. package/dist/storage/library/database.d.ts +2 -1
  75. package/dist/storage/library/database.d.ts.map +1 -1
  76. package/dist/storage/library/database.js +5 -36
  77. package/dist/storage/library/database.js.map +1 -1
  78. package/dist/storage/library/migrations.d.ts +1 -0
  79. package/dist/storage/library/migrations.d.ts.map +1 -1
  80. package/dist/storage/library/migrations.js +14 -1
  81. package/dist/storage/library/migrations.js.map +1 -1
  82. package/dist/storage/library/schema/browserAuthorization.d.ts +191 -0
  83. package/dist/storage/library/schema/browserAuthorization.d.ts.map +1 -0
  84. package/dist/storage/library/schema/browserAuthorization.js +20 -0
  85. package/dist/storage/library/schema/browserAuthorization.js.map +1 -0
  86. package/dist/storage/profiles/ProfilePlans.d.ts +15 -15
  87. package/dist/storage/profiles/ProfileRecords.d.ts +3 -3
  88. package/dist/storage/profiles/planSchema.d.ts +4 -4
  89. package/dist/storage/profiles/schema.d.ts +2 -2
  90. package/dist/types/cosmos-profile.d.ts +6 -6
  91. package/dist/types/cosmos.d.ts +20 -20
  92. package/dist/types/design-library.d.ts +2 -2
  93. package/dist/types/design-profile.d.ts +14 -14
  94. package/dist/types/guidance.d.ts +4 -4
  95. package/dist/types/reference-connectors.d.ts +10 -10
  96. package/dist/types/reference-onboarding.d.ts +43 -43
  97. package/dist/types/reference-pages.d.ts +6 -6
  98. package/dist/types/variant-reference.d.ts +4 -4
  99. package/dist/utils/installRef.d.ts +8 -0
  100. package/dist/utils/installRef.d.ts.map +1 -0
  101. package/dist/utils/installRef.js +34 -0
  102. package/dist/utils/installRef.js.map +1 -0
  103. package/package.json +2 -2
  104. package/src/ui/dist/assets/LibraryEntry-B5kPF3Ey.js +36 -0
  105. package/src/ui/dist/assets/{main-CEV9QrPk.js → main-Er_TRZTd.js} +85 -85
  106. package/src/ui/dist/index.html +1 -1
  107. package/src/ui/dist/assets/LibraryEntry-D962AMoc.js +0 -36
@@ -8,11 +8,11 @@ export declare const recordProfileRequest: (request: ChangeRequest) => Promise<P
8
8
  export declare const profileReferences: (comment: CommentChangeItem, dataUrl?: string) => {
9
9
  id: string;
10
10
  title: string;
11
+ url?: string | undefined;
11
12
  image?: {
12
13
  hash: string;
13
14
  mimeType: "image/png" | "image/jpeg" | "image/webp" | "image/gif" | "image/avif";
14
15
  } | undefined;
15
- url?: string | undefined;
16
16
  reason?: string | undefined;
17
17
  }[] | undefined;
18
18
  //# sourceMappingURL=profileContext.d.ts.map
@@ -0,0 +1,54 @@
1
+ export interface AuthorizationSnapshot {
2
+ accountId: string | null;
3
+ generation: string;
4
+ }
5
+ interface AccountMutation {
6
+ read: () => string | null;
7
+ next: () => string | null;
8
+ write: () => void;
9
+ isLogout?: boolean;
10
+ expectedGeneration?: string;
11
+ isRecovery?: boolean;
12
+ isIdentityEnrichment?: () => boolean;
13
+ }
14
+ interface CredentialInput {
15
+ scope: string;
16
+ digest: string;
17
+ kind: 'session' | 'launch';
18
+ expiresAt: number;
19
+ now: number;
20
+ readIdentity: () => string | null;
21
+ expectedGeneration?: string;
22
+ }
23
+ interface CredentialLookup {
24
+ scope: string;
25
+ digest: string;
26
+ now: number;
27
+ readIdentity: () => string | null;
28
+ }
29
+ export declare class AuthorizationUnavailable extends Error {
30
+ constructor();
31
+ }
32
+ export declare class AuthorizationChanged extends Error {
33
+ constructor();
34
+ }
35
+ export declare class BrowserAuthorizationRecords {
36
+ private readonly db;
37
+ constructor(databasePath: string);
38
+ private authority;
39
+ private requireAccount;
40
+ snapshot(readIdentity: () => string | null): AuthorizationSnapshot;
41
+ signInGeneration(readIdentity: () => string | null): string;
42
+ mutateAccount(input: AccountMutation): AuthorizationSnapshot;
43
+ saveSettings(write: () => void): void;
44
+ create(input: CredentialInput): void;
45
+ isValid(input: CredentialLookup): boolean;
46
+ exchange(input: CredentialLookup & {
47
+ sessionDigest: string;
48
+ expiresAt: number;
49
+ }): boolean;
50
+ revoke(scope: string, digest: string): void;
51
+ close(): void;
52
+ }
53
+ export {};
54
+ //# sourceMappingURL=BrowserAuthorizationRecords.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserAuthorizationRecords.d.ts","sourceRoot":"","sources":["../../../src/storage/library/BrowserAuthorizationRecords.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAC1B,IAAI,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,OAAO,CAAC;CACtC;AAED,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CACnC;AAID,qBAAa,wBAAyB,SAAQ,KAAK;;CAMlD;AAED,qBAAa,oBAAqB,SAAQ,KAAK;;CAI9C;AAED,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAA6C;gBAEpD,YAAY,EAAE,MAAM;IAOhC,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,cAAc;IAOtB,QAAQ,CAAC,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,qBAAqB;IAIlE,gBAAgB,CAAC,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,MAAM;IAO3D,aAAa,CAAC,KAAK,EAAE,eAAe,GAAG,qBAAqB;IA2C5D,YAAY,CAAC,KAAK,EAAE,MAAM,IAAI,GAAG,IAAI;IAIrC,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAyBpC,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;IAuBzC,QAAQ,CACN,KAAK,EAAE,gBAAgB,GAAG;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GACrE,OAAO;IAuCV,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAY3C,KAAK,IAAI,IAAI;CAGd"}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BrowserAuthorizationRecords = exports.AuthorizationChanged = exports.AuthorizationUnavailable = void 0;
4
+ const crypto_1 = require("crypto");
5
+ const drizzle_orm_1 = require("drizzle-orm");
6
+ const database_1 = require("./database");
7
+ const migrations_1 = require("./migrations");
8
+ const browserAuthorization_1 = require("./schema/browserAuthorization");
9
+ const AUTHORITY_SINGLETON = 1;
10
+ class AuthorizationUnavailable extends Error {
11
+ constructor() {
12
+ super('Browser authorization is temporarily unavailable. Sign in again or retry.');
13
+ }
14
+ }
15
+ exports.AuthorizationUnavailable = AuthorizationUnavailable;
16
+ class AuthorizationChanged extends Error {
17
+ constructor() {
18
+ super('Rivet account changed during sign-in. Please try again.');
19
+ }
20
+ }
21
+ exports.AuthorizationChanged = AuthorizationChanged;
22
+ class BrowserAuthorizationRecords {
23
+ db;
24
+ constructor(databasePath) {
25
+ this.db = (0, database_1.openDurableDatabaseSync)({
26
+ databasePath,
27
+ schema: migrations_1.BROWSER_AUTHORIZATION_SCHEMA,
28
+ });
29
+ }
30
+ authority(accountId) {
31
+ const record = this.db.select().from(browserAuthorization_1.browserAuthority).get();
32
+ if (record)
33
+ return record;
34
+ const initial = {
35
+ singleton: AUTHORITY_SINGLETON,
36
+ accountId,
37
+ generation: (0, crypto_1.randomUUID)(),
38
+ operationId: null,
39
+ phase: 'ready',
40
+ };
41
+ this.db.insert(browserAuthorization_1.browserAuthority).values(initial).run();
42
+ return initial;
43
+ }
44
+ requireAccount(accountId) {
45
+ const authority = this.authority(accountId);
46
+ if (authority.phase !== 'ready' || authority.accountId !== accountId)
47
+ throw new AuthorizationUnavailable();
48
+ return { accountId, generation: authority.generation };
49
+ }
50
+ snapshot(readIdentity) {
51
+ return (0, database_1.transaction)(this.db, () => this.requireAccount(readIdentity()));
52
+ }
53
+ signInGeneration(readIdentity) {
54
+ return (0, database_1.transaction)(this.db, () => this.authority(readIdentity()).generation);
55
+ }
56
+ mutateAccount(input) {
57
+ const reserved = (0, database_1.transaction)(this.db, () => {
58
+ const accountId = input.read();
59
+ const authority = this.authority(accountId);
60
+ if (input.expectedGeneration !== undefined &&
61
+ ((!input.isRecovery &&
62
+ (authority.phase !== 'ready' || authority.accountId !== accountId)) ||
63
+ authority.generation !== input.expectedGeneration))
64
+ throw new AuthorizationChanged();
65
+ const nextAccountId = input.next();
66
+ const mustRevoke = input.isLogout ||
67
+ authority.accountId !== accountId ||
68
+ (accountId !== nextAccountId && !input.isIdentityEnrichment?.());
69
+ const reservation = {
70
+ accountId: nextAccountId,
71
+ generation: mustRevoke ? (0, crypto_1.randomUUID)() : authority.generation,
72
+ operationId: (0, crypto_1.randomUUID)(),
73
+ phase: 'changing',
74
+ };
75
+ this.db.update(browserAuthorization_1.browserAuthority).set(reservation).run();
76
+ return reservation;
77
+ });
78
+ return (0, database_1.transaction)(this.db, () => {
79
+ const authority = this.db.select().from(browserAuthorization_1.browserAuthority).get();
80
+ if (authority?.operationId !== reserved.operationId)
81
+ throw new AuthorizationChanged();
82
+ input.write();
83
+ this.db
84
+ .update(browserAuthorization_1.browserCredentials)
85
+ .set({ accountId: reserved.accountId })
86
+ .where((0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.generation, reserved.generation))
87
+ .run();
88
+ this.db
89
+ .update(browserAuthorization_1.browserAuthority)
90
+ .set({ phase: 'ready', operationId: null })
91
+ .run();
92
+ return { accountId: reserved.accountId, generation: reserved.generation };
93
+ });
94
+ }
95
+ saveSettings(write) {
96
+ (0, database_1.transaction)(this.db, write);
97
+ }
98
+ create(input) {
99
+ (0, database_1.transaction)(this.db, () => {
100
+ const snapshot = this.requireAccount(input.readIdentity());
101
+ if (input.expectedGeneration !== undefined &&
102
+ input.expectedGeneration !== snapshot.generation)
103
+ throw new AuthorizationChanged();
104
+ this.db
105
+ .delete(browserAuthorization_1.browserCredentials)
106
+ .where((0, drizzle_orm_1.lte)(browserAuthorization_1.browserCredentials.expiresAt, input.now))
107
+ .run();
108
+ this.db
109
+ .insert(browserAuthorization_1.browserCredentials)
110
+ .values({
111
+ ...snapshot,
112
+ scope: input.scope,
113
+ digest: input.digest,
114
+ kind: input.kind,
115
+ expiresAt: input.expiresAt,
116
+ })
117
+ .run();
118
+ });
119
+ }
120
+ isValid(input) {
121
+ return (0, database_1.transaction)(this.db, () => {
122
+ const snapshot = this.requireAccount(input.readIdentity());
123
+ const credential = this.db
124
+ .select()
125
+ .from(browserAuthorization_1.browserCredentials)
126
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.digest, input.digest), (0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.scope, input.scope), (0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.kind, 'session')))
127
+ .get();
128
+ return Boolean(credential &&
129
+ credential.expiresAt > input.now &&
130
+ credential.generation === snapshot.generation &&
131
+ credential.accountId === snapshot.accountId);
132
+ });
133
+ }
134
+ exchange(input) {
135
+ return (0, database_1.transaction)(this.db, () => {
136
+ const snapshot = this.requireAccount(input.readIdentity());
137
+ const credential = this.db
138
+ .select()
139
+ .from(browserAuthorization_1.browserCredentials)
140
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.digest, input.digest), (0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.scope, input.scope), (0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.kind, 'launch')))
141
+ .get();
142
+ if (!credential ||
143
+ credential.expiresAt <= input.now ||
144
+ credential.generation !== snapshot.generation ||
145
+ credential.accountId !== snapshot.accountId)
146
+ return false;
147
+ this.db
148
+ .delete(browserAuthorization_1.browserCredentials)
149
+ .where((0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.digest, input.digest))
150
+ .run();
151
+ this.db
152
+ .insert(browserAuthorization_1.browserCredentials)
153
+ .values({
154
+ ...snapshot,
155
+ digest: input.sessionDigest,
156
+ scope: input.scope,
157
+ kind: 'session',
158
+ expiresAt: input.expiresAt,
159
+ })
160
+ .run();
161
+ return true;
162
+ });
163
+ }
164
+ revoke(scope, digest) {
165
+ this.db
166
+ .delete(browserAuthorization_1.browserCredentials)
167
+ .where((0, drizzle_orm_1.and)((0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.scope, scope), (0, drizzle_orm_1.eq)(browserAuthorization_1.browserCredentials.digest, digest)))
168
+ .run();
169
+ }
170
+ close() {
171
+ (0, database_1.closeDatabase)(this.db);
172
+ }
173
+ }
174
+ exports.BrowserAuthorizationRecords = BrowserAuthorizationRecords;
175
+ //# sourceMappingURL=BrowserAuthorizationRecords.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrowserAuthorizationRecords.js","sourceRoot":"","sources":["../../../src/storage/library/BrowserAuthorizationRecords.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,8 @@ interface OpenDatabaseOptions {
5
5
  migrations?: readonly string[];
6
6
  }
7
7
  export declare const closeDatabase: (db: ReturnType<typeof drizzle>) => void;
8
- export declare const openDurableDatabase: ({ databasePath, schema, migrations, }: OpenDatabaseOptions) => Promise<ReturnType<typeof drizzle>>;
8
+ export declare const openDurableDatabaseSync: ({ databasePath, schema, migrations, }: OpenDatabaseOptions) => ReturnType<typeof drizzle>;
9
+ export declare const openDurableDatabase: (options: OpenDatabaseOptions) => Promise<ReturnType<typeof drizzle>>;
9
10
  export declare const transaction: <T>(db: ReturnType<typeof drizzle>, operation: () => T) => T;
10
11
  export {};
11
12
  //# sourceMappingURL=database.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../../src/storage/library/database.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,UAAU,mBAAmB;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAKD,eAAO,MAAM,aAAa,GAAI,IAAI,UAAU,CAAC,OAAO,OAAO,CAAC,KAAG,IAE9D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAU,uCAIvC,mBAAmB,KAAG,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CA4C1D,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,CAAC,EAC3B,IAAI,UAAU,CAAC,OAAO,OAAO,CAAC,EAC9B,WAAW,MAAM,CAAC,KACjB,CAYF,CAAC"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../../src/storage/library/database.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGlD,UAAU,mBAAmB;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAKD,eAAO,MAAM,aAAa,GAAI,IAAI,UAAU,CAAC,OAAO,OAAO,CAAC,KAAG,IAE9D,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,uCAIrC,mBAAmB,KAAG,UAAU,CAAC,OAAO,OAAO,CA8CjD,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,SAAS,mBAAmB,KAC3B,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CAAqC,CAAC;AAE3E,eAAO,MAAM,WAAW,GAAI,CAAC,EAC3B,IAAI,UAAU,CAAC,OAAO,OAAO,CAAC,EAC9B,WAAW,MAAM,CAAC,KACjB,CAYF,CAAC"}
@@ -1,42 +1,9 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
36
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
4
  };
38
5
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.transaction = exports.openDurableDatabase = exports.closeDatabase = void 0;
6
+ exports.transaction = exports.openDurableDatabase = exports.openDurableDatabaseSync = exports.closeDatabase = void 0;
40
7
  const drizzle_orm_1 = require("drizzle-orm");
41
8
  const fs_1 = __importDefault(require("fs"));
42
9
  const node_sqlite_1 = require("drizzle-orm/node-sqlite");
@@ -47,9 +14,9 @@ const closeDatabase = (db) => {
47
14
  db.$client.close();
48
15
  };
49
16
  exports.closeDatabase = closeDatabase;
50
- const openDurableDatabase = async ({ databasePath, schema, migrations = [], }) => {
17
+ const openDurableDatabaseSync = ({ databasePath, schema, migrations = [], }) => {
18
+ const { DatabaseSync } = process.getBuiltinModule('node:sqlite');
51
19
  const supportedVersion = INITIAL_SCHEMA_VERSION + migrations.length;
52
- const { DatabaseSync } = await Promise.resolve().then(() => __importStar(require('node:sqlite')));
53
20
  fs_1.default.mkdirSync(path_1.default.dirname(databasePath), { recursive: true, mode: 0o700 });
54
21
  const db = new DatabaseSync(databasePath);
55
22
  try {
@@ -92,6 +59,8 @@ const openDurableDatabase = async ({ databasePath, schema, migrations = [], }) =
92
59
  throw error;
93
60
  }
94
61
  };
62
+ exports.openDurableDatabaseSync = openDurableDatabaseSync;
63
+ const openDurableDatabase = async (options) => (0, exports.openDurableDatabaseSync)(options);
95
64
  exports.openDurableDatabase = openDurableDatabase;
96
65
  const transaction = (db, operation) => {
97
66
  db.$client.exec('BEGIN IMMEDIATE');
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../../src/storage/library/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../../src/storage/library/database.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ export declare const REGISTRY_SCHEMA = "\n CREATE TABLE projects (\n id TEXT
3
3
  export declare const COORDINATOR_SCHEMA = "CREATE TABLE coordinator(singleton INTEGER PRIMARY KEY CHECK(singleton=1), pid INTEGER NOT NULL, token TEXT NOT NULL, port INTEGER)";
4
4
  export declare const REGISTRY_MIGRATIONS: readonly ["ALTER TABLE projects ADD COLUMN removed_at TEXT", "ALTER TABLE projects ADD COLUMN pinned_at TEXT"];
5
5
  export declare const PROJECT_RUNTIME_SCHEMA = "\n CREATE TABLE project_runtime (\n singleton INTEGER PRIMARY KEY CHECK(singleton = 1),\n pid INTEGER NOT NULL CHECK(pid > 0),\n token TEXT NOT NULL,\n phase TEXT NOT NULL CHECK(phase IN ('active', 'starting', 'retiring'))\n );\n";
6
+ export declare const BROWSER_AUTHORIZATION_SCHEMA = "\n CREATE TABLE browser_authority (\n singleton INTEGER PRIMARY KEY CHECK(singleton = 1),\n account_id TEXT, generation TEXT NOT NULL,\n operation_id TEXT, phase TEXT NOT NULL CHECK(phase IN ('ready', 'changing'))\n );\n CREATE TABLE browser_credentials (\n digest TEXT PRIMARY KEY, scope TEXT NOT NULL,\n account_id TEXT, generation TEXT NOT NULL,\n kind TEXT NOT NULL CHECK(kind IN ('session', 'launch')),\n expires_at INTEGER NOT NULL\n );\n";
6
7
  //# sourceMappingURL=migrations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/storage/library/migrations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,osDAoCzB,CAAC;AAEF,eAAO,MAAM,eAAe,smBAmB3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,wIACwG,CAAC;AAExI,eAAO,MAAM,mBAAmB,gHAGtB,CAAC;AAEX,eAAO,MAAM,sBAAsB,wPAOlC,CAAC"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../../src/storage/library/migrations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,osDAoCzB,CAAC;AAEF,eAAO,MAAM,eAAe,smBAmB3B,CAAC;AAEF,eAAO,MAAM,kBAAkB,wIACwG,CAAC;AAExI,eAAO,MAAM,mBAAmB,gHAGtB,CAAC;AAEX,eAAO,MAAM,sBAAsB,wPAOlC,CAAC;AAEF,eAAO,MAAM,4BAA4B,0dAYxC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PROJECT_RUNTIME_SCHEMA = exports.REGISTRY_MIGRATIONS = exports.COORDINATOR_SCHEMA = exports.REGISTRY_SCHEMA = exports.BUNDLE_SCHEMA = void 0;
3
+ exports.BROWSER_AUTHORIZATION_SCHEMA = exports.PROJECT_RUNTIME_SCHEMA = exports.REGISTRY_MIGRATIONS = exports.COORDINATOR_SCHEMA = exports.REGISTRY_SCHEMA = exports.BUNDLE_SCHEMA = void 0;
4
4
  exports.BUNDLE_SCHEMA = `
5
5
  CREATE TABLE project (
6
6
  singleton INTEGER PRIMARY KEY CHECK(singleton = 1),
@@ -71,4 +71,17 @@ exports.PROJECT_RUNTIME_SCHEMA = `
71
71
  phase TEXT NOT NULL CHECK(phase IN ('active', 'starting', 'retiring'))
72
72
  );
73
73
  `;
74
+ exports.BROWSER_AUTHORIZATION_SCHEMA = `
75
+ CREATE TABLE browser_authority (
76
+ singleton INTEGER PRIMARY KEY CHECK(singleton = 1),
77
+ account_id TEXT, generation TEXT NOT NULL,
78
+ operation_id TEXT, phase TEXT NOT NULL CHECK(phase IN ('ready', 'changing'))
79
+ );
80
+ CREATE TABLE browser_credentials (
81
+ digest TEXT PRIMARY KEY, scope TEXT NOT NULL,
82
+ account_id TEXT, generation TEXT NOT NULL,
83
+ kind TEXT NOT NULL CHECK(kind IN ('session', 'launch')),
84
+ expires_at INTEGER NOT NULL
85
+ );
86
+ `;
74
87
  //# sourceMappingURL=migrations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/storage/library/migrations.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoC5B,CAAC;AAEW,QAAA,eAAe,GAAG;;;;;;;;;;;;;;;;;;;CAmB9B,CAAC;AAEW,QAAA,kBAAkB,GAC7B,qIAAqI,CAAC;AAE3H,QAAA,mBAAmB,GAAG;IACjC,iDAAiD;IACjD,gDAAgD;CACxC,CAAC;AAEE,QAAA,sBAAsB,GAAG;;;;;;;CAOrC,CAAC"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../../../src/storage/library/migrations.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoC5B,CAAC;AAEW,QAAA,eAAe,GAAG;;;;;;;;;;;;;;;;;;;CAmB9B,CAAC;AAEW,QAAA,kBAAkB,GAC7B,qIAAqI,CAAC;AAE3H,QAAA,mBAAmB,GAAG;IACjC,iDAAiD;IACjD,gDAAgD;CACxC,CAAC;AAEE,QAAA,sBAAsB,GAAG;;;;;;;CAOrC,CAAC;AAEW,QAAA,4BAA4B,GAAG;;;;;;;;;;;;CAY3C,CAAC"}
@@ -0,0 +1,191 @@
1
+ export declare const browserAuthority: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
2
+ name: "browser_authority";
3
+ schema: undefined;
4
+ columns: {
5
+ singleton: import("drizzle-orm/sqlite-core").SQLiteColumn<{
6
+ name: string;
7
+ tableName: "browser_authority";
8
+ dataType: "number int53";
9
+ data: number;
10
+ driverParam: number;
11
+ notNull: true;
12
+ hasDefault: true;
13
+ isPrimaryKey: true;
14
+ isAutoincrement: false;
15
+ hasRuntimeDefault: false;
16
+ enumValues: undefined;
17
+ baseColumn: never;
18
+ identity: undefined;
19
+ generated: undefined;
20
+ }, {}>;
21
+ accountId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
22
+ name: string;
23
+ tableName: "browser_authority";
24
+ dataType: "string";
25
+ data: string;
26
+ driverParam: string;
27
+ notNull: false;
28
+ hasDefault: false;
29
+ isPrimaryKey: false;
30
+ isAutoincrement: false;
31
+ hasRuntimeDefault: false;
32
+ enumValues: [string, ...string[]];
33
+ baseColumn: never;
34
+ identity: undefined;
35
+ generated: undefined;
36
+ }, {}>;
37
+ generation: import("drizzle-orm/sqlite-core").SQLiteColumn<{
38
+ name: string;
39
+ tableName: "browser_authority";
40
+ dataType: "string";
41
+ data: string;
42
+ driverParam: string;
43
+ notNull: true;
44
+ hasDefault: false;
45
+ isPrimaryKey: false;
46
+ isAutoincrement: false;
47
+ hasRuntimeDefault: false;
48
+ enumValues: [string, ...string[]];
49
+ baseColumn: never;
50
+ identity: undefined;
51
+ generated: undefined;
52
+ }, {}>;
53
+ operationId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
54
+ name: string;
55
+ tableName: "browser_authority";
56
+ dataType: "string";
57
+ data: string;
58
+ driverParam: string;
59
+ notNull: false;
60
+ hasDefault: false;
61
+ isPrimaryKey: false;
62
+ isAutoincrement: false;
63
+ hasRuntimeDefault: false;
64
+ enumValues: [string, ...string[]];
65
+ baseColumn: never;
66
+ identity: undefined;
67
+ generated: undefined;
68
+ }, {}>;
69
+ phase: import("drizzle-orm/sqlite-core").SQLiteColumn<{
70
+ name: string;
71
+ tableName: "browser_authority";
72
+ dataType: "string enum";
73
+ data: "ready" | "changing";
74
+ driverParam: string;
75
+ notNull: true;
76
+ hasDefault: false;
77
+ isPrimaryKey: false;
78
+ isAutoincrement: false;
79
+ hasRuntimeDefault: false;
80
+ enumValues: ["ready", "changing"];
81
+ baseColumn: never;
82
+ identity: undefined;
83
+ generated: undefined;
84
+ }, {}>;
85
+ };
86
+ dialect: "sqlite";
87
+ }>;
88
+ export declare const browserCredentials: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
89
+ name: "browser_credentials";
90
+ schema: undefined;
91
+ columns: {
92
+ digest: import("drizzle-orm/sqlite-core").SQLiteColumn<{
93
+ name: string;
94
+ tableName: "browser_credentials";
95
+ dataType: "string";
96
+ data: string;
97
+ driverParam: string;
98
+ notNull: true;
99
+ hasDefault: false;
100
+ isPrimaryKey: true;
101
+ isAutoincrement: false;
102
+ hasRuntimeDefault: false;
103
+ enumValues: [string, ...string[]];
104
+ baseColumn: never;
105
+ identity: undefined;
106
+ generated: undefined;
107
+ }, {}>;
108
+ scope: import("drizzle-orm/sqlite-core").SQLiteColumn<{
109
+ name: string;
110
+ tableName: "browser_credentials";
111
+ dataType: "string";
112
+ data: string;
113
+ driverParam: string;
114
+ notNull: true;
115
+ hasDefault: false;
116
+ isPrimaryKey: false;
117
+ isAutoincrement: false;
118
+ hasRuntimeDefault: false;
119
+ enumValues: [string, ...string[]];
120
+ baseColumn: never;
121
+ identity: undefined;
122
+ generated: undefined;
123
+ }, {}>;
124
+ accountId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
125
+ name: string;
126
+ tableName: "browser_credentials";
127
+ dataType: "string";
128
+ data: string;
129
+ driverParam: string;
130
+ notNull: false;
131
+ hasDefault: false;
132
+ isPrimaryKey: false;
133
+ isAutoincrement: false;
134
+ hasRuntimeDefault: false;
135
+ enumValues: [string, ...string[]];
136
+ baseColumn: never;
137
+ identity: undefined;
138
+ generated: undefined;
139
+ }, {}>;
140
+ generation: import("drizzle-orm/sqlite-core").SQLiteColumn<{
141
+ name: string;
142
+ tableName: "browser_credentials";
143
+ dataType: "string";
144
+ data: string;
145
+ driverParam: string;
146
+ notNull: true;
147
+ hasDefault: false;
148
+ isPrimaryKey: false;
149
+ isAutoincrement: false;
150
+ hasRuntimeDefault: false;
151
+ enumValues: [string, ...string[]];
152
+ baseColumn: never;
153
+ identity: undefined;
154
+ generated: undefined;
155
+ }, {}>;
156
+ kind: import("drizzle-orm/sqlite-core").SQLiteColumn<{
157
+ name: string;
158
+ tableName: "browser_credentials";
159
+ dataType: "string enum";
160
+ data: "session" | "launch";
161
+ driverParam: string;
162
+ notNull: true;
163
+ hasDefault: false;
164
+ isPrimaryKey: false;
165
+ isAutoincrement: false;
166
+ hasRuntimeDefault: false;
167
+ enumValues: ["session", "launch"];
168
+ baseColumn: never;
169
+ identity: undefined;
170
+ generated: undefined;
171
+ }, {}>;
172
+ expiresAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
173
+ name: string;
174
+ tableName: "browser_credentials";
175
+ dataType: "number int53";
176
+ data: number;
177
+ driverParam: number;
178
+ notNull: true;
179
+ hasDefault: false;
180
+ isPrimaryKey: false;
181
+ isAutoincrement: false;
182
+ hasRuntimeDefault: false;
183
+ enumValues: undefined;
184
+ baseColumn: never;
185
+ identity: undefined;
186
+ generated: undefined;
187
+ }, {}>;
188
+ };
189
+ dialect: "sqlite";
190
+ }>;
191
+ //# sourceMappingURL=browserAuthorization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browserAuthorization.d.ts","sourceRoot":"","sources":["../../../../src/storage/library/schema/browserAuthorization.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM3B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO7B,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.browserCredentials = exports.browserAuthority = void 0;
4
+ const sqlite_core_1 = require("drizzle-orm/sqlite-core");
5
+ exports.browserAuthority = (0, sqlite_core_1.sqliteTable)('browser_authority', {
6
+ singleton: (0, sqlite_core_1.integer)().primaryKey(),
7
+ accountId: (0, sqlite_core_1.text)('account_id'),
8
+ generation: (0, sqlite_core_1.text)().notNull(),
9
+ operationId: (0, sqlite_core_1.text)('operation_id'),
10
+ phase: (0, sqlite_core_1.text)({ enum: ['ready', 'changing'] }).notNull(),
11
+ });
12
+ exports.browserCredentials = (0, sqlite_core_1.sqliteTable)('browser_credentials', {
13
+ digest: (0, sqlite_core_1.text)().primaryKey(),
14
+ scope: (0, sqlite_core_1.text)().notNull(),
15
+ accountId: (0, sqlite_core_1.text)('account_id'),
16
+ generation: (0, sqlite_core_1.text)().notNull(),
17
+ kind: (0, sqlite_core_1.text)({ enum: ['session', 'launch'] }).notNull(),
18
+ expiresAt: (0, sqlite_core_1.integer)('expires_at').notNull(),
19
+ });
20
+ //# sourceMappingURL=browserAuthorization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browserAuthorization.js","sourceRoot":"","sources":["../../../../src/storage/library/schema/browserAuthorization.ts"],"names":[],"mappings":";;;AAAA,yDAAqE;AAExD,QAAA,gBAAgB,GAAG,IAAA,yBAAW,EAAC,mBAAmB,EAAE;IAC/D,SAAS,EAAE,IAAA,qBAAO,GAAE,CAAC,UAAU,EAAE;IACjC,SAAS,EAAE,IAAA,kBAAI,EAAC,YAAY,CAAC;IAC7B,UAAU,EAAE,IAAA,kBAAI,GAAE,CAAC,OAAO,EAAE;IAC5B,WAAW,EAAE,IAAA,kBAAI,EAAC,cAAc,CAAC;IACjC,KAAK,EAAE,IAAA,kBAAI,EAAC,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;CACvD,CAAC,CAAC;AAEU,QAAA,kBAAkB,GAAG,IAAA,yBAAW,EAAC,qBAAqB,EAAE;IACnE,MAAM,EAAE,IAAA,kBAAI,GAAE,CAAC,UAAU,EAAE;IAC3B,KAAK,EAAE,IAAA,kBAAI,GAAE,CAAC,OAAO,EAAE;IACvB,SAAS,EAAE,IAAA,kBAAI,EAAC,YAAY,CAAC;IAC7B,UAAU,EAAE,IAAA,kBAAI,GAAE,CAAC,OAAO,EAAE;IAC5B,IAAI,EAAE,IAAA,kBAAI,EAAC,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;IACrD,SAAS,EAAE,IAAA,qBAAO,EAAC,YAAY,CAAC,CAAC,OAAO,EAAE;CAC3C,CAAC,CAAC"}