@mesadev/sdk 0.42.1 → 0.44.0

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 (54) hide show
  1. package/dist/api/access-token.d.ts +57 -24
  2. package/dist/api/access-token.d.ts.map +1 -1
  3. package/dist/api/access-token.js +137 -19
  4. package/dist/api/access-token.js.map +1 -1
  5. package/dist/api/client.d.ts +3 -5
  6. package/dist/api/client.d.ts.map +1 -1
  7. package/dist/api/client.js +4 -19
  8. package/dist/api/client.js.map +1 -1
  9. package/dist/api/credentials.d.ts +4 -0
  10. package/dist/api/credentials.d.ts.map +1 -0
  11. package/dist/api/credentials.js +8 -0
  12. package/dist/api/credentials.js.map +1 -0
  13. package/dist/api/index.d.ts +1 -1
  14. package/dist/api/index.d.ts.map +1 -1
  15. package/dist/api/index.js.map +1 -1
  16. package/dist/api/resources.d.ts +61 -29
  17. package/dist/api/resources.d.ts.map +1 -1
  18. package/dist/api/resources.js +47 -14
  19. package/dist/api/resources.js.map +1 -1
  20. package/dist/api/signing-key.d.ts +15 -0
  21. package/dist/api/signing-key.d.ts.map +1 -0
  22. package/dist/api/signing-key.js +38 -0
  23. package/dist/api/signing-key.js.map +1 -0
  24. package/dist/fs/index.d.ts +2 -1
  25. package/dist/fs/index.d.ts.map +1 -1
  26. package/dist/fs/index.js +1 -0
  27. package/dist/fs/index.js.map +1 -1
  28. package/dist/fs/layout.d.ts +87 -0
  29. package/dist/fs/layout.d.ts.map +1 -0
  30. package/dist/fs/layout.js +78 -0
  31. package/dist/fs/layout.js.map +1 -0
  32. package/dist/fs/mesa-file-system.d.ts +41 -2
  33. package/dist/fs/mesa-file-system.d.ts.map +1 -1
  34. package/dist/fs/mesa-file-system.js +23 -5
  35. package/dist/fs/mesa-file-system.js.map +1 -1
  36. package/dist/fs/native-loader.d.ts +8 -1
  37. package/dist/fs/native-loader.d.ts.map +1 -1
  38. package/dist/fs/native-loader.js +26 -4
  39. package/dist/fs/native-loader.js.map +1 -1
  40. package/dist/index.d.ts +3 -3
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +1 -1
  43. package/dist/index.js.map +1 -1
  44. package/dist/lib/errors.d.ts +1 -1
  45. package/dist/lib/errors.d.ts.map +1 -1
  46. package/dist/lib/errors.js +5 -2
  47. package/dist/lib/errors.js.map +1 -1
  48. package/dist/mesa.d.ts +163 -23
  49. package/dist/mesa.d.ts.map +1 -1
  50. package/dist/mesa.js +302 -45
  51. package/dist/mesa.js.map +1 -1
  52. package/dist/version.d.ts +1 -1
  53. package/dist/version.js +1 -1
  54. package/package.json +5 -3
@@ -1,19 +1,27 @@
1
1
  import { type CreateApiKeyData, type CreateApiKeyResponse, type CreateBookmarkData, type CreateBookmarkResponse, type CreateChangeData, type CreateChangeResponse, type CreateRepoData, type CreateRepoResponse, type CreateWebhookTargetData, type CreateWebhookTargetResponse, type DeleteBookmarkData, type DeleteBookmarkResponse, type DeleteRepoData, type DeleteRepoResponse, type DeleteWebhookTargetData, type DeleteWebhookTargetResponse, type GetBookmarkData, type GetBookmarkResponse, type GetChangeData, type GetChangeResponse, type GetContentData, type GetContentResponse, type GetDiffData, type GetDiffResponse, type GetOrgResponse, type GetRepoData, type GetRepoResponse, type GetRepoUpstreamSyncData, type GetRepoUpstreamSyncResponse, type ListApiKeysResponse, type ListBookmarksData, type ListBookmarksResponse, type ListChangesData, type ListChangesResponse, type ListReposData, type ListReposResponse, type ListRepoUpstreamSyncsData, type ListRepoUpstreamSyncsResponse, type ListWebhookTargetsData, type ListWebhookTargetsResponse, type MergeBookmarkData, type MergeBookmarkResponse, type MoveBookmarkData, type MoveBookmarkResponse, type RevokeApiKeyData, type RevokeApiKeyResponse, type SyncUpstreamData, type SyncUpstreamResponse, type UpdateChangeData, type UpdateChangeResponse, type UpdateRepoData, type UpdateRepoResponse, type UpdateWebhookTargetData, type UpdateWebhookTargetResponse } from '@mesadev/rest';
2
2
  import { type WebhookEventName, type WebhookHandler } from '../webhooks/schemas.js';
3
+ import { type ApiRepositoryRestriction, normalizeSigningKeyAuthors, type RepositoryRestriction, type SigningKeyAuthorInput } from './access-token.js';
3
4
  import type { RestClient } from './client.js';
4
5
  import { type RepoTagFilter, type RepoTagValueFilter } from './repo-tag-filter.js';
5
6
  export declare const SIGNATURE_HEADER = "x-mesa-signature";
6
7
  export declare function sign(secret: string, timestamp: number, rawBody: string): string;
7
8
  type ResolveOrg = (org?: string) => Promise<string>;
9
+ type NormalizedSigningKeyAuthors = ReturnType<typeof normalizeSigningKeyAuthors>;
10
+ type RequestAttribution = {
11
+ kind: 'request';
12
+ } | {
13
+ kind: 'fixed-token';
14
+ } | {
15
+ kind: 'private-key';
16
+ sign: (authors: NormalizedSigningKeyAuthors) => string;
17
+ };
8
18
  type OrgRequestContext = {
9
19
  restClient: RestClient;
10
20
  resolveOrg: ResolveOrg;
11
21
  webhookSecret?: string;
12
- /**
13
- * Sign an access token locally (HS256, secret derived from the client's raw
14
- * API key).
15
- */
22
+ /** Sign an access token locally with the configured API key or private key. */
16
23
  signToken: (input: TokensCreateInput) => Promise<TokensCreateResponse>;
24
+ requestAttribution: RequestAttribution;
17
25
  };
18
26
  export type ApiKeysListInput = {
19
27
  org?: string;
@@ -24,32 +32,35 @@ export type ApiKeysCreateInput = CreateApiKeyData['body'] & {
24
32
  export type ApiKeysRevokeInput = Omit<RevokeApiKeyData['path'], 'org'> & {
25
33
  org?: string;
26
34
  };
27
- /**
28
- * Input for `tokens.create()`. The token is signed locally, so `org` is no
29
- * longer needed for signing (the server resolves it from the API key row), but
30
- * it is accepted and ignored for source compatibility with prior versions.
31
- */
32
- export type TokensCreateInput = {
33
- /** Requested scopes; clamped to the key's current scopes at verify time. Defaults to all of the key's scopes. */
35
+ type NonEmptyReadonlyArray<T> = readonly [T, ...T[]];
36
+ /** Commit attribution carried by a private-key access token. */
37
+ export type TokensCreateAuthor = SigningKeyAuthorInput;
38
+ type TokensCreateBase = ApiRepositoryRestriction & {
39
+ /** Requested scopes. Defaults to read and write. */
34
40
  scopes?: string[];
35
- /**
36
- * Requested repo restriction as full `org/repo` names; resolved and clamped
37
- * to the key's at verify time. null/omitted = no extra restriction.
38
- */
39
- repos?: string[] | null;
41
+ /** @deprecated Ignored for locally signed tokens; retained for source compatibility. */
42
+ org?: string;
43
+ };
44
+ /** Existing `tokens.create()` input for API-key clients. */
45
+ export type TokensCreateLegacyInput = TokensCreateBase & {
40
46
  /** Token lifetime in seconds (1..86400). Defaults to 3600. */
41
47
  ttl_seconds?: number;
42
- /** @deprecated No longer used: the token is signed locally and carries no org. */
43
- org?: string;
48
+ authors?: never;
49
+ };
50
+ /** `tokens.create()` input for private-key clients. */
51
+ export type TokensCreatePrivateKeyInput = TokensCreateBase & {
52
+ /** Ordered, nonempty commit attribution encoded into the token. */
53
+ authors: NonEmptyReadonlyArray<TokensCreateAuthor>;
54
+ /** Token lifetime in seconds (1..14400). Defaults to 900. */
55
+ ttl_seconds?: number;
44
56
  };
57
+ export type TokensCreateInput = TokensCreateLegacyInput | TokensCreatePrivateKeyInput;
45
58
  /** Result of `tokens.create()`. */
46
- export type TokensCreateResponse = {
59
+ export type TokensCreateResponse = RepositoryRestriction<'repos', 'repo_ids'> & {
47
60
  token: string;
48
61
  /** Exact expiry as an ISO 8601 string. */
49
62
  expires_at: string;
50
63
  scopes: string[];
51
- /** Effective repo restriction (full `org/repo` names). */
52
- repos: string[] | null;
53
64
  };
54
65
  export type { RepoTagFilter, RepoTagValueFilter };
55
66
  export type ReposListInput = Omit<NonNullable<ListReposData['query']>, 'tags'> & {
@@ -111,6 +122,21 @@ export type BookmarksMoveInput = Omit<MoveBookmarkData['path'], 'org'> & MoveBoo
111
122
  export type BookmarksMergeInput = Omit<MergeBookmarkData['path'], 'org'> & MergeBookmarkData['body'] & {
112
123
  org?: string;
113
124
  };
125
+ type SigningKeyCommitAttribution = {
126
+ /** @deprecated Use `authors` for ordered commit attribution. */
127
+ author: SigningKeyAuthorInput;
128
+ authors?: never;
129
+ } | {
130
+ author?: never;
131
+ /** Ordered, nonempty commit attribution signed into this request's token. */
132
+ authors: NonEmptyReadonlyArray<SigningKeyAuthorInput>;
133
+ };
134
+ type NoCommitAttribution = {
135
+ author?: never;
136
+ authors?: never;
137
+ };
138
+ export type PrivateKeyBookmarksMergeInput = BookmarksMergeInput & SigningKeyCommitAttribution;
139
+ export type FixedTokenBookmarksMergeInput = BookmarksMergeInput & NoCommitAttribution;
114
140
  export type ChangesListInput = Omit<ListChangesData['path'], 'org'> & NonNullable<ListChangesData['query']> & {
115
141
  org?: string;
116
142
  };
@@ -149,6 +175,18 @@ export type ChangesGetInput = Omit<GetChangeData['path'], 'org'> & {
149
175
  export type ChangesPatchInput = Omit<UpdateChangeData['path'], 'org'> & UpdateChangeData['body'] & {
150
176
  org?: string;
151
177
  };
178
+ type DistributiveOmit<T, TKey extends PropertyKey> = T extends unknown ? Omit<T, TKey> : never;
179
+ export type PrivateKeyChangesCreateInput = DistributiveOmit<ChangesCreateInput, 'author'> & SigningKeyCommitAttribution;
180
+ export type FixedTokenChangesCreateInput = DistributiveOmit<ChangesCreateInput, 'author'> & NoCommitAttribution;
181
+ type ChangesPatchWithoutAttribution = Omit<ChangesPatchInput, 'author' | 'resolutions'>;
182
+ export type PrivateKeyChangesPatchInput = (ChangesPatchWithoutAttribution & {
183
+ resolutions?: never;
184
+ } & SigningKeyCommitAttribution) | (ChangesPatchWithoutAttribution & {
185
+ resolutions: NonEmptyReadonlyArray<NonNullable<ChangesPatchInput['resolutions']>[number]>;
186
+ author?: never;
187
+ authors?: never;
188
+ });
189
+ export type FixedTokenChangesPatchInput = Omit<ChangesPatchInput, 'author'> & NoCommitAttribution;
152
190
  export type DiffsGetInput = Omit<GetDiffData['path'], 'org'> & NonNullable<GetDiffData['query']> & {
153
191
  org?: string;
154
192
  };
@@ -168,18 +206,12 @@ export type OrgGetInput = {
168
206
  org?: string;
169
207
  };
170
208
  export type WhoAmIInput = Record<never, never>;
171
- export declare function createApiResources({ restClient, resolveOrg, webhookSecret, signToken }: OrgRequestContext): {
209
+ export declare function createApiResources({ restClient, resolveOrg, webhookSecret, signToken, requestAttribution, }: OrgRequestContext): {
172
210
  org: {
173
211
  get: (input?: OrgGetInput) => Promise<GetOrgResponse>;
174
212
  };
175
213
  tokens: {
176
- /**
177
- * Sign a short-lived access token (JWT) carrying at most this client's
178
- * scopes and repository restrictions. Signing is entirely local (HS256,
179
- * secret derived from the raw API key) — no network round-trip. Tokens
180
- * expire on their own and cannot be revoked or refreshed — sign a new one
181
- * instead.
182
- */
214
+ /** Sign locally with an API key or private key. Static access-token clients cannot mint another token. */
183
215
  create: (input?: TokensCreateInput) => Promise<TokensCreateResponse>;
184
216
  };
185
217
  apiKeys: {
@@ -1 +1 @@
1
- {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../src/api/resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../src/api/resources.ts"],"names":[],"mappings":"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"}
@@ -2,15 +2,50 @@ import { createHmac, timingSafeEqual } from 'node:crypto';
2
2
  import { parse as parseQueryString } from 'node:querystring';
3
3
  import { createApiKey, createBookmark, createChange, createRepo, createWebhookTarget, deleteBookmark, deleteRepo, deleteWebhookTarget, getBookmark, getChange, getContent, getDiff, getOrg, getRepo, getRepoUpstreamSync, listApiKeys, listBookmarks, listChanges, listRepos, listRepoUpstreamSyncs, listWebhookTargets, mergeBookmark, moveBookmark, revokeApiKey, syncUpstream, updateChange, updateRepo, updateWebhookTarget, } from '@mesadev/rest';
4
4
  import { prettifyError } from 'zod';
5
- import { MesaWebhookVerificationError, MissingWebhookSecretError } from '../lib/errors.js';
5
+ import { InvalidOptionsError, MesaWebhookVerificationError, MissingWebhookSecretError } from '../lib/errors.js';
6
6
  import { WebhookEventSchema } from '../webhooks/schemas.js';
7
+ import { normalizeSigningKeyAuthors, } from './access-token.js';
7
8
  import { serializeRepoTagsFilter } from './repo-tag-filter.js';
8
9
  export const SIGNATURE_HEADER = 'x-mesa-signature';
9
10
  const WEBHOOK_TOLERANCE_SECONDS = 300;
10
11
  export function sign(secret, timestamp, rawBody) {
11
12
  return createHmac('sha256', secret).update(`${timestamp}.${rawBody}`).digest('hex');
12
13
  }
13
- export function createApiResources({ restClient, resolveOrg, webhookSecret, signToken }) {
14
+ function prepareCommitRequest(input, requestAttribution, preserveExistingAuthors = false) {
15
+ const { author, authors } = input;
16
+ const hasAuthor = author !== undefined;
17
+ const hasAuthors = authors !== undefined;
18
+ if (hasAuthor && hasAuthors) {
19
+ throw new InvalidOptionsError('Pass exactly one of `author` or `authors`.');
20
+ }
21
+ if (requestAttribution.kind === 'request') {
22
+ if (hasAuthors) {
23
+ throw new InvalidOptionsError('Ordered `authors` require a private-key client.');
24
+ }
25
+ return { body: input };
26
+ }
27
+ if (requestAttribution.kind === 'fixed-token') {
28
+ if (hasAuthor || hasAuthors) {
29
+ throw new InvalidOptionsError('Access-token authors are fixed when the token is minted.');
30
+ }
31
+ return { body: input };
32
+ }
33
+ const { author: _author, authors: _authors, ...body } = input;
34
+ if (preserveExistingAuthors) {
35
+ if (hasAuthor || hasAuthors) {
36
+ throw new InvalidOptionsError('Conflict-resolution patches preserve the existing commit authors.');
37
+ }
38
+ return { body };
39
+ }
40
+ if (!hasAuthor && !hasAuthors) {
41
+ throw new InvalidOptionsError('Private-key commit operations require exactly one of `author` or `authors`.');
42
+ }
43
+ const normalizedAuthors = hasAuthors
44
+ ? normalizeSigningKeyAuthors(authors)
45
+ : normalizeSigningKeyAuthors([author]);
46
+ return { body, credential: requestAttribution.sign(normalizedAuthors) };
47
+ }
48
+ export function createApiResources({ restClient, resolveOrg, webhookSecret, signToken, requestAttribution, }) {
14
49
  const webhookListeners = {
15
50
  'repo.created': [],
16
51
  'repo.updated': [],
@@ -35,13 +70,7 @@ export function createApiResources({ restClient, resolveOrg, webhookSecret, sign
35
70
  },
36
71
  },
37
72
  tokens: {
38
- /**
39
- * Sign a short-lived access token (JWT) carrying at most this client's
40
- * scopes and repository restrictions. Signing is entirely local (HS256,
41
- * secret derived from the raw API key) — no network round-trip. Tokens
42
- * expire on their own and cannot be revoked or refreshed — sign a new one
43
- * instead.
44
- */
73
+ /** Sign locally with an API key or private key. Static access-token clients cannot mint another token. */
45
74
  create: (input = {}) => signToken(input),
46
75
  },
47
76
  apiKeys: {
@@ -138,11 +167,12 @@ export function createApiResources({ restClient, resolveOrg, webhookSecret, sign
138
167
  },
139
168
  merge: async (input) => {
140
169
  const { org: overrideOrg, repo, ...body } = input;
170
+ const prepared = prepareCommitRequest(body, requestAttribution);
141
171
  const org = await resolveOrg(overrideOrg);
142
172
  return restClient.request(mergeBookmark, {
143
173
  path: { org, repo },
144
- body,
145
- });
174
+ body: prepared.body,
175
+ }, prepared.credential);
146
176
  },
147
177
  },
148
178
  changes: {
@@ -153,8 +183,9 @@ export function createApiResources({ restClient, resolveOrg, webhookSecret, sign
153
183
  },
154
184
  create: async (input) => {
155
185
  const { org: overrideOrg, repo, ...body } = input;
186
+ const prepared = prepareCommitRequest(body, requestAttribution);
156
187
  const org = await resolveOrg(overrideOrg);
157
- return restClient.request(createChange, { path: { org, repo }, body });
188
+ return restClient.request(createChange, { path: { org, repo }, body: prepared.body }, prepared.credential);
158
189
  },
159
190
  get: async (input) => {
160
191
  const { org: overrideOrg, repo, change_id: changeId } = input;
@@ -163,11 +194,13 @@ export function createApiResources({ restClient, resolveOrg, webhookSecret, sign
163
194
  },
164
195
  patch: async (input) => {
165
196
  const { org: overrideOrg, repo, change_id: changeId, ...body } = input;
197
+ const preserveExistingAuthors = Array.isArray(body.resolutions) && body.resolutions.length > 0;
198
+ const prepared = prepareCommitRequest(body, requestAttribution, preserveExistingAuthors);
166
199
  const org = await resolveOrg(overrideOrg);
167
200
  return restClient.request(updateChange, {
168
201
  path: { org, repo, change_id: changeId },
169
- body,
170
- });
202
+ body: prepared.body,
203
+ }, prepared.credential);
171
204
  },
172
205
  },
173
206
  diffs: {
@@ -1 +1 @@
1
- {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/api/resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,KAAK,IAAI,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAWL,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,UAAU,EACV,mBAAmB,EAOnB,cAAc,EACd,UAAU,EACV,mBAAmB,EAcnB,WAAW,EACX,SAAS,EACT,UAAU,EACV,OAAO,EACP,MAAM,EACN,OAAO,EACP,mBAAmB,EAYnB,WAAW,EACX,aAAa,EACb,WAAW,EACX,SAAS,EACT,qBAAqB,EACrB,kBAAkB,EAKlB,aAAa,EACb,YAAY,EAGZ,YAAY,EAGZ,YAAY,EAOZ,YAAY,EACZ,UAAU,EACV,mBAAmB,GACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAyB,kBAAkB,EAAuB,MAAM,wBAAwB,CAAC;AAExG,OAAO,EAAE,uBAAuB,EAA+C,MAAM,sBAAsB,CAAC;AAE5G,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AACnD,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAEtC,MAAM,UAAU,IAAI,CAAC,MAAc,EAAE,SAAiB,EAAE,OAAe;IACrE,OAAO,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,SAAS,IAAI,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACtF,CAAC;AAqJD,MAAM,UAAU,kBAAkB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAqB;IACxG,MAAM,gBAAgB,GAAqD;QACzE,cAAc,EAAE,EAAE;QAClB,cAAc,EAAE,EAAE;QAClB,cAAc,EAAE,EAAE;QAClB,kBAAkB,EAAE,EAAE;QACtB,kBAAkB,EAAE,EAAE;QACtB,gBAAgB,EAAE,EAAE;QACpB,iBAAiB,EAAE,EAAE;QACrB,gBAAgB,EAAE,EAAE;QACpB,gBAAgB,EAAE,EAAE;QACpB,IAAI,EAAE,EAAE;QACR,aAAa,EAAE,EAAE;QACjB,kBAAkB,EAAE,EAAE;QACtB,gBAAgB,EAAE,EAAE;QACpB,aAAa,EAAE,EAAE;KAClB,CAAC;IAEF,OAAO;QACL,GAAG,EAAE;YACH,GAAG,EAAE,KAAK,EAAE,QAAqB,EAAE,EAA2B,EAAE;gBAC9D,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACxC,OAAO,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACvD,CAAC;SACF;QACD,MAAM,EAAE;YACN;;;;;;eAMG;YACH,MAAM,EAAE,CAAC,QAA2B,EAAE,EAAiC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC;SAC3F;QACD,OAAO,EAAE;YACP,IAAI,EAAE,KAAK,EAAE,QAA0B,EAAE,EAAgC,EAAE;gBACzE,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACxC,OAAO,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAyB,EAAiC,EAAE;gBACzE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAC5C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAyB,EAAiC,EAAE;gBACzE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;gBACvC,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACjE,CAAC;SACF;QACD,KAAK,EAAE;YACL,IAAI,EAAE,KAAK,EAAE,QAAwB,EAAE,EAA8B,EAAE;gBACrE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;gBACxD,MAAM,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,EAAE,IAAI,EAAE,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvG,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAuB,EAA+B,EAAE;gBACrE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAC5C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,GAAG,EAAE,KAAK,EAAE,KAAoB,EAA4B,EAAE;gBAC5D,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;gBACzC,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAuB,EAA+B,EAAE;gBACrE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAClD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAuB,EAA+B,EAAE;gBACrE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;gBACzC,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,YAAY,EAAE,KAAK,EAAE,KAA6B,EAAiC,EAAE;gBACnF,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAClD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,eAAe,EAAE,KAAK,EAAE,KAAgC,EAAwC,EAAE;gBAChG,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;gBACjD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YAClF,CAAC;YACD,iBAAiB,EAAE,KAAK,EAAE,KAAkC,EAA0C,EAAE;gBACtG,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACnF,CAAC;SACF;QACD,OAAO,EAAE;YACP,GAAG,EAAE,KAAK,EAAE,KAAsB,EAA+B,EAAE;gBACjE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACxE,CAAC;SACF;QACD,SAAS,EAAE;YACT,IAAI,EAAE,KAAK,EAAE,KAAyB,EAAkC,EAAE;gBACxE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC3E,CAAC;YACD,GAAG,EAAE,KAAK,EAAE,KAAwB,EAAgC,EAAE;gBACpE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC5E,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAA2B,EAAmC,EAAE;gBAC7E,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAClD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAA2B,EAAmC,EAAE;gBAC7E,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,EAAE,KAAK,EAAE,KAAyB,EAAiC,EAAE;gBACvE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAC5D,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,KAAK,EAAE,KAAK,EAAE,KAA0B,EAAkC,EAAE;gBAC1E,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAClD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE;oBACvC,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE;oBACnB,IAAI;iBACL,CAAC,CAAC;YACL,CAAC;SACF;QACD,OAAO,EAAE;YACP,IAAI,EAAE,KAAK,EAAE,KAAuB,EAAgC,EAAE;gBACpE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAyB,EAAiC,EAAE;gBACzE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAClD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,GAAG,EAAE,KAAK,EAAE,KAAsB,EAA8B,EAAE;gBAChE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;gBAC9D,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YACrF,CAAC;YACD,KAAK,EAAE,KAAK,EAAE,KAAwB,EAAiC,EAAE;gBACvE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBACvE,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE;oBACtC,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE;oBACxC,IAAI;iBACL,CAAC,CAAC;YACL,CAAC;SACF;QACD,KAAK,EAAE;YACL,GAAG,EAAE,KAAK,EAAE,KAAoB,EAA4B,EAAE;gBAC5D,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;gBACnD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACrE,CAAC;SACF;QACD,cAAc,EAAE;YACd,IAAI,EAAE,KAAK,EAAE,QAAiC,EAAE,EAAuC,EAAE;gBACvF,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC;gBAC7C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAgC,EAAwC,EAAE;gBACvF,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAC5C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAgC,EAAwC,EAAE;gBACvF,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;gBAC7D,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3F,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,KAAgC,EAAwC,EAAE;gBACvF,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC;gBACpD,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,OAAO,UAAU,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;YACrF,CAAC;SACF;QACD,QAAQ,EAAE;YACR,EAAE,CAA6B,IAAa,EAAE,EAAqB;gBACjE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;oBACtB,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,OAAgB;gBAC5B,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,IAAI,yBAAyB,EAAE,CAAC;gBACxC,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrC,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;gBAC9D,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,MAAM,IAAI,4BAA4B,CAAC,0BAA0B,CAAC,CAAC;gBACrE,CAAC;gBAED,MAAM,KAAK,GAAG,gBAAgB,CAAC,eAAe,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC1D,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClC,MAAM,SAAS,GAAG,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC9E,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,CAAC;oBAC7B,MAAM,IAAI,4BAA4B,CAAC,4BAA4B,CAAC,CAAC;gBACvE,CAAC;gBAED,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,SAAS,GAAG,yBAAyB,EAAE,CAAC;oBAC1E,MAAM,IAAI,4BAA4B,CAAC,4CAA4C,CAAC,CAAC;gBACvF,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;gBACzD,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBACtD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACpD,IAAI,eAAe,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,cAAc,CAAC,EAAE,CAAC;oBAC1G,MAAM,IAAI,4BAA4B,CAAC,2BAA2B,CAAC,CAAC;gBACtE,CAAC;gBAED,IAAI,UAAmB,CAAC;gBACxB,IAAI,CAAC;oBACH,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACnC,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,4BAA4B,CAAC,yCAAyC,CAAC,CAAC;gBACpF,CAAC;gBACD,MAAM,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBACxD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,IAAI,4BAA4B,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC/F,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;gBAE1B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAE,CAAoB,CAAC,KAAK,CAAC,CAAC,CAC5E,CAAC;gBACF,MAAM,aAAa,GAAG,OAAO;qBAC1B,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC;qBAClE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACxB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,MAAM,IAAI,cAAc,CAAC,aAAa,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/api/resources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { type KeyObject } from 'node:crypto';
2
+ type MesaPublicJwk = {
3
+ kty: 'OKP';
4
+ crv: 'Ed25519';
5
+ x: string;
6
+ };
7
+ export type PrivateKeyCredential = {
8
+ org: string;
9
+ privateKey: KeyObject;
10
+ publicJwk: MesaPublicJwk;
11
+ };
12
+ /** Parse and validate a Mesa Ed25519 private key once for repeated local signing. */
13
+ export declare function parsePrivateKey(privateKey: string): PrivateKeyCredential;
14
+ export {};
15
+ //# sourceMappingURL=signing-key.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signing-key.d.ts","sourceRoot":"","sources":["../../src/api/signing-key.ts"],"names":[],"mappings":"AACA,OAAO,EAAqC,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAMhF,KAAK,aAAa,GAAG;IACnB,GAAG,EAAE,KAAK,CAAC;IACX,GAAG,EAAE,SAAS,CAAC;IACf,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,SAAS,CAAC;IACtB,SAAS,EAAE,aAAa,CAAC;CAC1B,CAAC;AAEF,qFAAqF;AACrF,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,oBAAoB,CAiCxE"}
@@ -0,0 +1,38 @@
1
+ import { Buffer } from 'node:buffer';
2
+ import { createPrivateKey, createPublicKey } from 'node:crypto';
3
+ import { InvalidOptionsError } from '../lib/errors.js';
4
+ import { MESA_PRIVATE_KEY_PREFIX } from './credentials.js';
5
+ const MESA_PRIVATE_KEY_BODY_PATTERN = /^([a-z0-9](?:[a-z0-9-]*[a-z0-9])?)_([A-Za-z0-9_-]+)$/;
6
+ /** Parse and validate a Mesa Ed25519 private key once for repeated local signing. */
7
+ export function parsePrivateKey(privateKey) {
8
+ const input = privateKey.trim();
9
+ if (!input.startsWith(MESA_PRIVATE_KEY_PREFIX)) {
10
+ throw new InvalidOptionsError('Expected a private key beginning with `mesa_private_key_`.');
11
+ }
12
+ const match = MESA_PRIVATE_KEY_BODY_PATTERN.exec(input.slice(MESA_PRIVATE_KEY_PREFIX.length));
13
+ if (!match) {
14
+ throw new InvalidOptionsError('Expected `mesa_private_key_<organization>_<key>`.');
15
+ }
16
+ const [, org, encodedKey] = match;
17
+ const keyBytes = Buffer.from(encodedKey, 'base64url');
18
+ let parsedPrivateKey;
19
+ try {
20
+ parsedPrivateKey = createPrivateKey({ key: keyBytes, format: 'der', type: 'pkcs8' });
21
+ }
22
+ catch {
23
+ throw new InvalidOptionsError('The private key is not a valid Ed25519 key.');
24
+ }
25
+ if (parsedPrivateKey.asymmetricKeyType !== 'ed25519') {
26
+ throw new InvalidOptionsError('The private key must use Ed25519.');
27
+ }
28
+ if (!parsedPrivateKey.export({ format: 'der', type: 'pkcs8' }).equals(keyBytes)) {
29
+ throw new InvalidOptionsError('The private key must use canonical Ed25519 PKCS#8 DER encoding.');
30
+ }
31
+ const { x } = createPublicKey(parsedPrivateKey).export({ format: 'jwk' });
32
+ return {
33
+ org,
34
+ privateKey: parsedPrivateKey,
35
+ publicJwk: { kty: 'OKP', crv: 'Ed25519', x: x },
36
+ };
37
+ }
38
+ //# sourceMappingURL=signing-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signing-key.js","sourceRoot":"","sources":["../../src/api/signing-key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAkB,MAAM,aAAa,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,6BAA6B,GAAG,sDAAsD,CAAC;AAc7F,qFAAqF;AACrF,MAAM,UAAU,eAAe,CAAC,UAAkB;IAChD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,mBAAmB,CAAC,4DAA4D,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,KAAK,GAAG,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9F,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,mBAAmB,CAAC,mDAAmD,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC;IAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAEtD,IAAI,gBAA2B,CAAC;IAChC,IAAI,CAAC;QACH,gBAAgB,GAAG,gBAAgB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACvF,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,mBAAmB,CAAC,6CAA6C,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,gBAAgB,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACrD,MAAM,IAAI,mBAAmB,CAAC,mCAAmC,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChF,MAAM,IAAI,mBAAmB,CAAC,iEAAiE,CAAC,CAAC;IACnG,CAAC;IAED,MAAM,EAAE,CAAC,EAAE,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAE1E,OAAO;QACL,GAAG;QACH,UAAU,EAAE,gBAAgB;QAC5B,SAAS,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,CAAE,EAAE;KACjD,CAAC;AACJ,CAAC"}
@@ -1,2 +1,3 @@
1
- export { type BookmarkCreateArgs, type BookmarkListArgs, type BookmarkOps, type ChangeEditArgs, type ChangeInfo, type ChangeListArgs, type ChangeNewArgs, type ChangeOps, type ChangeResult, type ChangeRevArgs, type FromRevision, type LogRecord, type MesaBashOptions, MesaFileSystem, type MesaFileSystemConfig, MesaFileSystemSubscription, type RepoConfig, type TelemetryConfig, type WatchEvent, type WatchEventHandler, } from './mesa-file-system.js';
1
+ export { type Layout, type LayoutSpec, type MountMode, repo, type Repo, type RepoOptions, type RepoSelectorInput, } from './layout.js';
2
+ export { type BookmarkCreateArgs, type BookmarkListArgs, type BookmarkOps, type ChangeEditArgs, type ChangeInfo, type ChangeListArgs, type ChangeNewArgs, type ChangeOps, type ChangeResult, type CheckpointResult, type ChangeRevArgs, type FromRevision, type LogRecord, type MesaBashOptions, MesaFileSystem, type MesaFileSystemConfig, MesaFileSystemSubscription, type RepoConfig, type TelemetryConfig, type WatchEvent, type WatchEventHandler, } from './mesa-file-system.js';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,cAAc,EACd,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,iBAAiB,GACvB,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,SAAS,EACd,IAAI,EACJ,KAAK,IAAI,EACT,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,cAAc,EACd,KAAK,oBAAoB,EACzB,0BAA0B,EAC1B,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,iBAAiB,GACvB,MAAM,uBAAuB,CAAC"}
package/dist/fs/index.js CHANGED
@@ -1,2 +1,3 @@
1
+ export { repo, } from './layout.js';
1
2
  export { MesaFileSystem, MesaFileSystemSubscription, } from './mesa-file-system.js';
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAcL,cAAc,EAEd,0BAA0B,GAK3B,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,IAAI,GAIL,MAAM,aAAa,CAAC;AACrB,OAAO,EAeL,cAAc,EAEd,0BAA0B,GAK3B,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Mount-layout constructors.
3
+ *
4
+ * `repo()` and `createLayout()` build the serializable layout schema
5
+ * (`LayoutSpec`) shared with the CLI and the Python SDK. The authoritative
6
+ * normalization — path expansion, collision, organization scope, and
7
+ * repository-uniqueness semantics — lives in core Rust
8
+ * (`mesafs-core::layout`); this module only performs cheap, early checks
9
+ * that produce friendlier errors without defining semantics.
10
+ */
11
+ /** Whether a mount accepts mutations. There is no default. */
12
+ export type MountMode = 'ro' | 'rw';
13
+ /**
14
+ * How a layout entry selects its repository, by repository name (a bare
15
+ * string or `{ name }`). Names are resolved to their canonical repository
16
+ * at the service boundary.
17
+ */
18
+ export type RepoSelectorInput = string | {
19
+ name: string;
20
+ };
21
+ /** Options for one repository declaration. */
22
+ export interface RepoOptions {
23
+ /** Read-only or read-write presentation. Always explicit. */
24
+ mode: MountMode;
25
+ /** Bookmark revision. Mutually exclusive with `changeId`. */
26
+ bookmark?: string;
27
+ /** Change revision (reverse-hex). Mutually exclusive with `bookmark`. */
28
+ changeId?: string;
29
+ /** Child-directory name override. Only valid on array elements. */
30
+ alias?: string;
31
+ /** Nested mounts declared beneath this repository's path. */
32
+ subPaths?: Record<string, Repo | Repo[]>;
33
+ }
34
+ /**
35
+ * One repository declaration in serialized `LayoutSpec` form. Produced by
36
+ * {@link repo}; do not construct by hand.
37
+ */
38
+ export interface Repo {
39
+ /** What this entry mounts; always `'repo'` today. */
40
+ readonly kind: 'repo';
41
+ /** Repository name within the mount's organization. */
42
+ readonly name: string;
43
+ readonly mode: MountMode;
44
+ readonly bookmark?: string;
45
+ readonly changeId?: string;
46
+ readonly alias?: string;
47
+ readonly subPaths?: Record<string, Repo | Repo[]>;
48
+ }
49
+ /**
50
+ * The mount-layout schema: a pure path map. Every key is an absolute
51
+ * (`/`-prefixed) namespace path — the compiler rejects non-absolute keys in
52
+ * object literals, and pre-typed records with a stray non-absolute key fail
53
+ * the early runtime check. The organization is not part of the document —
54
+ * it comes from mount context (the client, or `MESA_ORG` for a CLI mount)
55
+ * — so a layout file is portable shape.
56
+ */
57
+ export type LayoutSpec = {
58
+ [path: `/${string}`]: Repo | Repo[];
59
+ };
60
+ /** A serializable layout value for `mesa mount --layout` and future mounts. */
61
+ export interface Layout {
62
+ /** The layout in canonical `LayoutSpec` form. */
63
+ readonly spec: LayoutSpec;
64
+ /** Serialize as deterministic, pretty-printed JSON (for `layout.json`). */
65
+ toString(): string;
66
+ /** The canonical `LayoutSpec`, for `JSON.stringify` interoperability. */
67
+ toJSON(): LayoutSpec;
68
+ }
69
+ /**
70
+ * Declare one repository mount.
71
+ *
72
+ * @param selector - Repository name, as a bare string or `{ name }`.
73
+ * @param options - Mount options; `mode` is required.
74
+ */
75
+ export declare function repo(selector: RepoSelectorInput, options: RepoOptions): Repo;
76
+ /**
77
+ * Build a serializable mount layout.
78
+ *
79
+ * The returned value is local; it does not create a server-stored resource.
80
+ * Its string form deserializes as the core `LayoutSpec` consumed by
81
+ * `mesa mount --layout`. The document carries no organization: the mount
82
+ * that consumes it resolves every selector within the organization its
83
+ * mount context provides — the client's organization, or `MESA_ORG` for
84
+ * the CLI.
85
+ */
86
+ export declare function createLayout(paths: LayoutSpec): Layout;
87
+ //# sourceMappingURL=layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/fs/layout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,8DAA8D;AAC9D,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC;AAEpC;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1D,8CAA8C;AAC9C,MAAM,WAAW,WAAW;IAC1B,6DAA6D;IAC7D,IAAI,EAAE,SAAS,CAAC;IAChB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,CAAC,CAAC;CAC1C;AAED;;;GAGG;AACH,MAAM,WAAW,IAAI;IACnB,qDAAqD;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,CAAC,CAAC;CACnD;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,CAAC,IAAI,EAAE,IAAI,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;CACrC,CAAC;AAEF,+EAA+E;AAC/E,MAAM,WAAW,MAAM;IACrB,iDAAiD;IACjD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,2EAA2E;IAC3E,QAAQ,IAAI,MAAM,CAAC;IACnB,yEAAyE;IACzE,MAAM,IAAI,UAAU,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CAoB5E;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CActD"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Mount-layout constructors.
3
+ *
4
+ * `repo()` and `createLayout()` build the serializable layout schema
5
+ * (`LayoutSpec`) shared with the CLI and the Python SDK. The authoritative
6
+ * normalization — path expansion, collision, organization scope, and
7
+ * repository-uniqueness semantics — lives in core Rust
8
+ * (`mesafs-core::layout`); this module only performs cheap, early checks
9
+ * that produce friendlier errors without defining semantics.
10
+ */
11
+ /**
12
+ * Declare one repository mount.
13
+ *
14
+ * @param selector - Repository name, as a bare string or `{ name }`.
15
+ * @param options - Mount options; `mode` is required.
16
+ */
17
+ export function repo(selector, options) {
18
+ const name = typeof selector === 'string' ? selector : selector.name;
19
+ if (name.length === 0) {
20
+ throw new Error('repo(): repository name must not be empty');
21
+ }
22
+ if (options.mode !== 'ro' && options.mode !== 'rw') {
23
+ throw new Error(`repo(): mode must be 'ro' or 'rw'`);
24
+ }
25
+ if (options.bookmark !== undefined && options.changeId !== undefined) {
26
+ throw new Error('repo(): bookmark and changeId are mutually exclusive');
27
+ }
28
+ return {
29
+ kind: 'repo',
30
+ name,
31
+ mode: options.mode,
32
+ ...(options.bookmark !== undefined && { bookmark: options.bookmark }),
33
+ ...(options.changeId !== undefined && { changeId: options.changeId }),
34
+ ...(options.alias !== undefined && { alias: options.alias }),
35
+ ...(options.subPaths !== undefined && { subPaths: options.subPaths }),
36
+ };
37
+ }
38
+ /**
39
+ * Build a serializable mount layout.
40
+ *
41
+ * The returned value is local; it does not create a server-stored resource.
42
+ * Its string form deserializes as the core `LayoutSpec` consumed by
43
+ * `mesa mount --layout`. The document carries no organization: the mount
44
+ * that consumes it resolves every selector within the organization its
45
+ * mount context provides — the client's organization, or `MESA_ORG` for
46
+ * the CLI.
47
+ */
48
+ export function createLayout(paths) {
49
+ // Pre-typed `Record<string, Repo | Repo[]>` values still assign to
50
+ // `LayoutSpec`, so keep the runtime absolute-path check for them.
51
+ for (const path of Object.keys(paths)) {
52
+ if (!path.startsWith('/')) {
53
+ throw new Error(`createLayout(): top-level path '${path}' must be absolute`);
54
+ }
55
+ }
56
+ const spec = { ...paths };
57
+ return {
58
+ spec,
59
+ toString: () => stableStringify(spec),
60
+ toJSON: () => spec,
61
+ };
62
+ }
63
+ /** Pretty-print with recursively sorted object keys for deterministic output. */
64
+ function stableStringify(value) {
65
+ return `${JSON.stringify(sortKeys(value), null, 2)}\n`;
66
+ }
67
+ function sortKeys(value) {
68
+ if (Array.isArray(value)) {
69
+ return value.map(sortKeys);
70
+ }
71
+ if (value !== null && typeof value === 'object') {
72
+ return Object.fromEntries(Object.entries(value)
73
+ .sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0))
74
+ .map(([key, entry]) => [key, sortKeys(entry)]));
75
+ }
76
+ return value;
77
+ }
78
+ //# sourceMappingURL=layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/fs/layout.ts"],"names":[],"mappings":"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"}