@anby/platform-sdk 0.7.1 → 0.8.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.
- package/dist/cjs/apps/publish.d.ts.map +1 -1
- package/dist/cjs/apps/publish.js +36 -8
- package/dist/cjs/apps/publish.js.map +1 -1
- package/dist/cjs/entities/client.d.ts.map +1 -1
- package/dist/cjs/entities/client.js +7 -0
- package/dist/cjs/entities/client.js.map +1 -1
- package/dist/cjs/entities/resolver.d.ts.map +1 -1
- package/dist/cjs/entities/resolver.js +6 -0
- package/dist/cjs/entities/resolver.js.map +1 -1
- package/dist/cjs/vite/index.d.ts +5 -10
- package/dist/cjs/vite/index.d.ts.map +1 -1
- package/dist/cjs/vite/index.js +217 -39
- package/dist/cjs/vite/index.js.map +1 -1
- package/dist/esm/apps/publish.js +36 -8
- package/dist/esm/apps/publish.js.map +1 -1
- package/dist/esm/entities/client.js +7 -0
- package/dist/esm/entities/client.js.map +1 -1
- package/dist/esm/entities/resolver.js +6 -0
- package/dist/esm/entities/resolver.js.map +1 -1
- package/dist/esm/vite/index.js +219 -41
- package/dist/esm/vite/index.js.map +1 -1
- package/package.json +1 -1
- package/src/apps/publish.ts +40 -12
- package/src/entities/client.ts +5 -0
- package/src/entities/resolver.ts +8 -0
- package/src/vite/index.ts +245 -53
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../src/apps/publish.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../src/apps/publish.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAAoB,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAK3E,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE;QACH,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C;;;;;;;;OAQG;IACH,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAcD;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,GAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAO,GACnC,OAAO,CAAC,WAAW,CAAC,CAMtB;AA6ED,wBAAsB,sBAAsB,CAC1C,IAAI,GAAE,iBAAsB,GAC3B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAkHlC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,GAAE,iBAAsB,GAAG,IAAI,CAMpE"}
|
package/dist/cjs/apps/publish.js
CHANGED
|
@@ -53,6 +53,7 @@ const node_path_1 = require("node:path");
|
|
|
53
53
|
const manifest_schema_1 = require("@anby/manifest-schema");
|
|
54
54
|
const index_js_1 = require("../auth/index.js");
|
|
55
55
|
const schema_js_1 = require("../entities/schema.js");
|
|
56
|
+
const identity_js_1 = require("../entities/identity.js");
|
|
56
57
|
async function loadManifest(path) {
|
|
57
58
|
const raw = await (0, promises_1.readFile)(path, 'utf-8');
|
|
58
59
|
const parsed = JSON.parse(raw);
|
|
@@ -168,12 +169,7 @@ async function publishAppFromManifest(opts = {}) {
|
|
|
168
169
|
registryUrl = 'http://localhost:3003';
|
|
169
170
|
}
|
|
170
171
|
}
|
|
171
|
-
const internalApiSecret = opts.internalApiSecret ?? process.env.INTERNAL_API_SECRET ?? '';
|
|
172
|
-
if (!internalApiSecret) {
|
|
173
|
-
throw new Error('INTERNAL_API_SECRET is not set — cannot sign publish request');
|
|
174
|
-
}
|
|
175
172
|
const submittedBy = opts.submittedBy ?? manifest.id;
|
|
176
|
-
const signature = (0, index_js_1.signHmac)(submittedBy, internalApiSecret);
|
|
177
173
|
const body = {
|
|
178
174
|
id: manifest.id,
|
|
179
175
|
name: manifest.name,
|
|
@@ -188,14 +184,46 @@ async function publishAppFromManifest(opts = {}) {
|
|
|
188
184
|
changelog: opts.changelog,
|
|
189
185
|
manifest,
|
|
190
186
|
};
|
|
187
|
+
const bodyJson = JSON.stringify(body);
|
|
188
|
+
// Prefer Ed25519 app identity signing (no INTERNAL_API_SECRET needed).
|
|
189
|
+
// Falls back to HMAC for first-time publish (before app has an identity).
|
|
190
|
+
let authHeaders;
|
|
191
|
+
let identity = null;
|
|
192
|
+
try {
|
|
193
|
+
identity = (0, identity_js_1.getAppIdentity)();
|
|
194
|
+
}
|
|
195
|
+
catch {
|
|
196
|
+
// Not configured — fall back to HMAC
|
|
197
|
+
}
|
|
198
|
+
if (identity && identity.appId === manifest.id) {
|
|
199
|
+
// Ed25519 path — re-publishing own app
|
|
200
|
+
const signed = (0, identity_js_1.signAppRequest)({
|
|
201
|
+
identity,
|
|
202
|
+
tenantId: '',
|
|
203
|
+
body: bodyJson,
|
|
204
|
+
});
|
|
205
|
+
authHeaders = { ...signed };
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
// HMAC path — first-time publish or cross-app publish
|
|
209
|
+
const internalApiSecret = opts.internalApiSecret ?? process.env.INTERNAL_API_SECRET ?? '';
|
|
210
|
+
if (!internalApiSecret) {
|
|
211
|
+
throw new Error('INTERNAL_API_SECRET is not set and no app identity configured — cannot sign publish request. ' +
|
|
212
|
+
'Run `anby login && anby init` to register the app first.');
|
|
213
|
+
}
|
|
214
|
+
const signature = (0, index_js_1.signHmac)(submittedBy, internalApiSecret);
|
|
215
|
+
authHeaders = {
|
|
216
|
+
'x-internal-user': submittedBy,
|
|
217
|
+
'x-internal-signature': signature,
|
|
218
|
+
};
|
|
219
|
+
}
|
|
191
220
|
const res = await fetch(`${registryUrl}/registry/apps`, {
|
|
192
221
|
method: 'POST',
|
|
193
222
|
headers: {
|
|
194
223
|
'Content-Type': 'application/json',
|
|
195
|
-
|
|
196
|
-
'x-internal-signature': signature,
|
|
224
|
+
...authHeaders,
|
|
197
225
|
},
|
|
198
|
-
body:
|
|
226
|
+
body: bodyJson,
|
|
199
227
|
});
|
|
200
228
|
if (!res.ok) {
|
|
201
229
|
const errBody = await res.text();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../src/apps/publish.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../src/apps/publish.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4FH,gDAQC;AA6ED,wDAoHC;AAOD,8CAMC;AAhTD,+CAA4C;AAC5C,yCAA+D;AAC/D,2DAA2E;AAC3E,+CAA4C;AAC5C,qDAAuD;AACvD,yDAAyE;AAgEzE,KAAK,UAAU,YAAY,CAAC,IAAY;IACtC,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAQ,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAgB,CAAC;IAC9C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAA,kCAAgB,EAAC,MAAM,CAAC,CAAC;IACnD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,eAAe,IAAI,qBAAqB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAChE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,kBAAkB,CACtC,OAAkC,EAAE;IAEpC,MAAM,YAAY,GAAG,IAAA,mBAAO,EAC1B,IAAI,CAAC,YAAY,IAAI,IAAA,gBAAI,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,wBAAwB,CAAC,CACnE,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,CAAC;IAC7C,OAAO,mBAAmB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,mBAAmB,CAChC,QAAqB,EACrB,YAAoB;IAEpB,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IAExD,MAAM,WAAW,GAAG,IAAA,mBAAO,EAAC,YAAY,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC3B,yDAAyD;QACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACxC,CAAC;QACD,0DAA0D;QAC1D,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAChC,kEAAkE;QAClE,yCAAyC;QACzC,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO;gBACL,GAAG,KAAK;gBACR,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,IAAA,0BAAc,EAAC,KAAK,CAAC,MAAM,CAAC;aACrE,CAAC;QACJ,CAAC;QACD,8DAA8D;QAC9D,uBAAuB;QACvB,MAAM,UAAU,GAAG,IAAA,sBAAU,EAAC,KAAK,CAAC,MAAM,CAAC;YACzC,CAAC,CAAC,KAAK,CAAC,MAAM;YACd,CAAC,CAAC,IAAA,mBAAO,EAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,SAAiB,CAAC;QACtB,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,IAAA,mBAAQ,EAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACb,WAAW,KAAK,CAAC,IAAI,oCAAoC,UAAU,GAAG;gBACpE,IAAK,GAAa,CAAC,OAAO,GAAG,CAChC,CAAC;QACJ,CAAC;QACD,IAAI,MAA+B,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACb,WAAW,KAAK,CAAC,IAAI,qBAAqB,UAAU,uBAAwB,GAAa,CAAC,OAAO,EAAE,CACpG,CAAC;QACJ,CAAC;QACD,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,MAAM,EAAE,MAAM;YACd,cAAc,EAAE,IAAA,0BAAc,EAAC,MAAM,CAAC;SACvC,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,OAAO;QACL,GAAG,QAAQ;QACX,QAAQ,EAAE;YACR,GAAG,QAAQ,CAAC,QAAQ;YACpB,QAAQ,EAAE,QAAQ;SACnB;KACF,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,sBAAsB,CAC1C,OAA0B,EAAE;IAE5B,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,IAAA,mBAAO,EAC1B,IAAI,CAAC,YAAY,IAAI,IAAA,gBAAI,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,wBAAwB,CAAC,CACnE,CAAC;QACF,oEAAoE;QACpE,mEAAmE;QACnE,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC;QAE5D,MAAM,SAAS,GACb,IAAI,CAAC,SAAS;YACd,OAAO,CAAC,GAAG,CAAC,cAAc;YAC1B,oBAAoB,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAE9C,oEAAoE;QACpE,sEAAsE;QACtE,iEAAiE;QACjE,uEAAuE;QACvE,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QAC/D,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,+DAA+D;gBAC/D,MAAM,EAAE,4BAA4B,EAAE,GAAG,wDAAa,uBAAuB,GAAC,CAAC;gBAC/E,WAAW,GAAG,MAAM,4BAA4B,EAAE,CAAC;YACrD,CAAC;YAAC,MAAM,CAAC;gBACP,kEAAkE;gBAClE,WAAW,GAAG,uBAAuB,CAAC;YACxC,CAAC;QACH,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC,EAAE,CAAC;QAEpD,MAAM,IAAI,GAAG;YACX,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACzD,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,SAAS;YACT,WAAW;YACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ;SACT,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEtC,uEAAuE;QACvE,0EAA0E;QAC1E,IAAI,WAAmC,CAAC;QACxC,IAAI,QAAQ,GAAoD,IAAI,CAAC;QACrE,IAAI,CAAC;YACH,QAAQ,GAAG,IAAA,4BAAc,GAAE,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;QAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,EAAE,EAAE,CAAC;YAC/C,uCAAuC;YACvC,MAAM,MAAM,GAAG,IAAA,4BAAc,EAAC;gBAC5B,QAAQ;gBACR,QAAQ,EAAE,EAAE;gBACZ,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;YACH,WAAW,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,sDAAsD;YACtD,MAAM,iBAAiB,GACrB,IAAI,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC;YAClE,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CACb,+FAA+F;oBAC7F,0DAA0D,CAC7D,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,IAAA,mBAAQ,EAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;YAC3D,WAAW,GAAG;gBACZ,iBAAiB,EAAE,WAAW;gBAC9B,sBAAsB,EAAE,SAAS;aAClC,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,WAAW,gBAAgB,EAAE;YACtD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,GAAG,WAAW;aACf;YACD,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CACb,8BAA8B,GAAG,CAAC,MAAM,MAAM,OAAO,EAAE,CACxD,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAqB,CAAC;QACtD,OAAO,CAAC,GAAG,CACT,4BAA4B,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,OAAO,OAAO,WAAW,eAAe,SAAS,GAAG,CACzG,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CACV,0DAA2D,GAAa,CAAC,OAAO,EAAE,CACnF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,OAA0B,EAAE;IAC5D,sBAAsB,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QAC9D,OAAO,CAAC,IAAI,CACV,sDAAuD,GAAa,CAAC,OAAO,EAAE,CAC/E,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/entities/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAcH,MAAM,WAAW,mBAAmB;IAClC,4CAA4C;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,YAAY,CAAC,IAAI,GAAG,OAAO;IAC1C,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACnF,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACtE,8DAA8D;IAC9D,GAAG,CAAC,CAAC,GAAG,OAAO,EACb,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,WAAW,GAAG,mBAAmB,GACvC,OAAO,CAAC,CAAC,CAAC,CAAC;CACf;AAED,wBAAsB,eAAe,CAAC,IAAI,GAAG,OAAO,EAClD,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,MAAa,GACrB,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/entities/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAcH,MAAM,WAAW,mBAAmB;IAClC,4CAA4C;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,YAAY,CAAC,IAAI,GAAG,OAAO;IAC1C,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACnF,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACtE,8DAA8D;IAC9D,GAAG,CAAC,CAAC,GAAG,OAAO,EACb,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,WAAW,GAAG,mBAAmB,GACvC,OAAO,CAAC,CAAC,CAAC,CAAC;CACf;AAED,wBAAsB,eAAe,CAAC,IAAI,GAAG,OAAO,EAClD,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,MAAa,GACrB,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAuH7B"}
|
|
@@ -55,6 +55,11 @@ async function getEntityClient(tenantId, entityName, version = 'v1') {
|
|
|
55
55
|
res = await doRequest();
|
|
56
56
|
}
|
|
57
57
|
catch (err) {
|
|
58
|
+
// Auth failures from getScopedToken propagate as ScopedTokenError —
|
|
59
|
+
// those are NOT unreachability and must surface their real cause so
|
|
60
|
+
// operators don't spend hours chasing a phantom network problem.
|
|
61
|
+
if (err instanceof errors_js_1.ScopedTokenError)
|
|
62
|
+
throw err;
|
|
58
63
|
throw new errors_js_1.EntityProviderUnreachableError(`${entityName}@${version}`, provider.baseUrl, err);
|
|
59
64
|
}
|
|
60
65
|
if (res.status === 401) {
|
|
@@ -64,6 +69,8 @@ async function getEntityClient(tenantId, entityName, version = 'v1') {
|
|
|
64
69
|
res = await doRequest();
|
|
65
70
|
}
|
|
66
71
|
catch (err) {
|
|
72
|
+
if (err instanceof errors_js_1.ScopedTokenError)
|
|
73
|
+
throw err;
|
|
67
74
|
throw new errors_js_1.EntityProviderUnreachableError(`${entityName}@${version}`, provider.baseUrl, err);
|
|
68
75
|
}
|
|
69
76
|
if (res.status === 401) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/entities/client.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;AAiCH,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/entities/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/entities/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAEV,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAKpB,UAAU,SAAS;IACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAQD,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,CAAC,CAepB;
|
|
1
|
+
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/entities/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAEV,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAKpB,UAAU,SAAS;IACjB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAQD,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,SAAS,CAAC,CAepB;AAkED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,MAAa,GACrB,mBAAmB,CAiBrB;AAED,+CAA+C;AAC/C,wBAAsB,8BAA8B,CAClD,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,MAAa,GACrB,OAAO,CAAC,mBAAmB,CAAC,CAK9B;AAMD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAC3C,IAAI,CAMN;AAED,wBAAgB,cAAc,IAAI,IAAI,CAKrC"}
|
|
@@ -50,6 +50,12 @@ async function doFetch(tenantId, ifNoneMatch) {
|
|
|
50
50
|
const cur = _tenantMaps.get(tenantId);
|
|
51
51
|
if (cur)
|
|
52
52
|
return { ...cur, fetchedAt: Date.now() };
|
|
53
|
+
// 304 with no cached map is a contract violation: we only send
|
|
54
|
+
// if-none-match when we already have a map, so the server should
|
|
55
|
+
// never reply 304 to a cold caller. Surface a clear message instead
|
|
56
|
+
// of falling through to the generic !res.ok branch which would say
|
|
57
|
+
// "fetch failed (304)" and look like a real failure.
|
|
58
|
+
throw new Error(`registry returned 304 Not Modified for tenant ${tenantId} but no cached entity-map exists — likely a stale ETag was sent or the cache was cleared mid-flight`);
|
|
53
59
|
}
|
|
54
60
|
if (!res.ok) {
|
|
55
61
|
throw new Error(`registry entity-map fetch failed (${res.status}) for tenant ${tenantId}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/entities/resolver.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;AAsBH,gDAiBC;
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/entities/resolver.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/vite/index.d.ts
CHANGED
|
@@ -4,17 +4,12 @@ export interface AnbyVitePluginOptions {
|
|
|
4
4
|
manifestPath?: string;
|
|
5
5
|
/** Output path for generated types relative to vite root. Default: `./.anby/types.d.ts`. */
|
|
6
6
|
outFile?: string;
|
|
7
|
-
/**
|
|
8
|
-
* Output path for the wire-format manifest static asset, relative to
|
|
9
|
-
* vite root. Default: `./public/_anby/manifest.json`.
|
|
10
|
-
*
|
|
11
|
-
* The Marketplace Submit-app form fetches this file from
|
|
12
|
-
* `${publicUrl}/_anby/manifest.json` to publish a running app without
|
|
13
|
-
* the operator pasting any JSON. Vite (dev) and Remix (prod) both
|
|
14
|
-
* serve files in `public/` as static assets, so the same artifact
|
|
15
|
-
* works in every runtime — no middleware, no Remix route file.
|
|
16
|
-
*/
|
|
7
|
+
/** Output path for the wire-format manifest static asset. Default: `./public/_anby/manifest.json`. */
|
|
17
8
|
manifestArtifactPath?: string;
|
|
9
|
+
/** Source directories to scan for entity/event usage. Default: `['./app']`. */
|
|
10
|
+
scanDirs?: string[];
|
|
11
|
+
/** Disable auto-scan (only codegen from manifest). Default: false. */
|
|
12
|
+
disableAutoScan?: boolean;
|
|
18
13
|
}
|
|
19
14
|
export declare function anbyVitePlugin(opts?: AnbyVitePluginOptions): Plugin;
|
|
20
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vite/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vite/index.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,MAAM,WAAW,qBAAqB;IACpC,4FAA4F;IAC5F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sGAAsG;IACtG,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,sEAAsE;IACtE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAoPD,wBAAgB,cAAc,CAAC,IAAI,GAAE,qBAA0B,GAAG,MAAM,CAyGvE"}
|
package/dist/cjs/vite/index.js
CHANGED
|
@@ -2,36 +2,196 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.anbyVitePlugin = anbyVitePlugin;
|
|
4
4
|
/**
|
|
5
|
-
* @anby/platform-sdk/vite — Vite plugin for
|
|
5
|
+
* @anby/platform-sdk/vite — Vite plugin for Anby app integration.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* Two responsibilities:
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* 1. **Auto-scan** source code to discover entity/event declarations and
|
|
10
|
+
* keep `anby-app.manifest.json` in sync — developer never edits
|
|
11
|
+
* provides/requires by hand.
|
|
10
12
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
+
* 2. **Codegen** typed module augmentations (`.anby/types.d.ts`) so
|
|
14
|
+
* `publishEvent` gets compile-time type checking.
|
|
13
15
|
*
|
|
14
|
-
*
|
|
15
|
-
* plugins: [
|
|
16
|
-
* anbyVitePlugin(),
|
|
17
|
-
* remix({...}),
|
|
18
|
-
* ],
|
|
19
|
-
* });
|
|
20
|
-
* ```
|
|
21
|
-
*
|
|
22
|
-
* On every dev start (and on every change to `anby-app.manifest.json`),
|
|
23
|
-
* the plugin reads the manifest's `provides.events` and `requires.events`
|
|
24
|
-
* arrays and writes typed module augmentations to `.anby/types.d.ts`. The
|
|
25
|
-
* SDK's `publishEvent` overload picks up the merged `AppProvidedEvents`
|
|
26
|
-
* interface and gives the dev compile-time errors on unknown event names.
|
|
27
|
-
*
|
|
28
|
-
* The plugin imports `vite` only as a TYPE — `import type { Plugin }` is
|
|
29
|
-
* erased at compile time, so the SDK package does NOT need to ship vite
|
|
30
|
-
* as a runtime dependency. Apps that use this plugin already have vite.
|
|
16
|
+
* Runs on every dev start and on source/manifest file changes.
|
|
31
17
|
*/
|
|
32
18
|
const node_fs_1 = require("node:fs");
|
|
33
19
|
const node_path_1 = require("node:path");
|
|
34
20
|
const publish_js_1 = require("../apps/publish.js");
|
|
21
|
+
/**
|
|
22
|
+
* Scan source files for SDK API usage patterns:
|
|
23
|
+
* - getEntityClient('org.period@v1') → requires entity
|
|
24
|
+
* - publishEvent({ type: 'org.node.created' ... }) → provides event
|
|
25
|
+
* - app/schemas/*.v*.json files → provides entities
|
|
26
|
+
*/
|
|
27
|
+
function scanSourceCode(root, scanDirs) {
|
|
28
|
+
const providesEvents = new Set();
|
|
29
|
+
const requiresEntities = new Set();
|
|
30
|
+
const providesEntities = [];
|
|
31
|
+
// 1. Scan for entity schema files: app/schemas/{name}.{version}.json
|
|
32
|
+
const schemasDir = (0, node_path_1.resolve)(root, 'app/schemas');
|
|
33
|
+
if ((0, node_fs_1.existsSync)(schemasDir)) {
|
|
34
|
+
try {
|
|
35
|
+
const files = (0, node_fs_1.readdirSync)(schemasDir);
|
|
36
|
+
for (const file of files) {
|
|
37
|
+
// Match: org-period.v1.json → name=org.period, version=v1
|
|
38
|
+
const match = file.match(/^(.+)\.(v\d+)\.json$/);
|
|
39
|
+
if (match) {
|
|
40
|
+
const rawName = match[1]; // "org-period"
|
|
41
|
+
const version = match[2]; // "v1"
|
|
42
|
+
// Convert filename to entity name: "org-period" → "org.period"
|
|
43
|
+
const entityName = rawName.replace(/-/g, '.');
|
|
44
|
+
const schemaPath = `./app/schemas/${file}`;
|
|
45
|
+
providesEntities.push({ name: entityName, version, schema: schemaPath });
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
// schemas dir unreadable — skip
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
// 2. Scan source files for API usage patterns
|
|
54
|
+
for (const dir of scanDirs) {
|
|
55
|
+
const absDir = (0, node_path_1.isAbsolute)(dir) ? dir : (0, node_path_1.resolve)(root, dir);
|
|
56
|
+
if (!(0, node_fs_1.existsSync)(absDir))
|
|
57
|
+
continue;
|
|
58
|
+
walkFiles(absDir, (filePath) => {
|
|
59
|
+
if (!filePath.match(/\.(ts|tsx|js|jsx)$/))
|
|
60
|
+
return;
|
|
61
|
+
// Skip node_modules and generated files
|
|
62
|
+
if (filePath.includes('node_modules') || filePath.includes('.anby/'))
|
|
63
|
+
return;
|
|
64
|
+
let content;
|
|
65
|
+
try {
|
|
66
|
+
content = (0, node_fs_1.readFileSync)(filePath, 'utf-8');
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
// Pattern 1: getEntityClient('org.period@v1')
|
|
72
|
+
const entityClientRegex1 = /getEntityClient\s*\(\s*['"]([^'"]+@[^'"]+)['"]/g;
|
|
73
|
+
for (const match of content.matchAll(entityClientRegex1)) {
|
|
74
|
+
requiresEntities.add(match[1]); // e.g. "org.period@v1"
|
|
75
|
+
}
|
|
76
|
+
// Pattern 2: getEntityClient(tenantId, 'org.period', 'v1') or getEntityClient<T>(tenantId, 'org.period', 'v1')
|
|
77
|
+
const entityClientRegex2 = /getEntityClient\s*(?:<[^>]+>)?\s*\([^,]+,\s*['"]([^'"]+)['"]\s*,\s*['"]([^'"]+)['"]/g;
|
|
78
|
+
for (const match of content.matchAll(entityClientRegex2)) {
|
|
79
|
+
requiresEntities.add(`${match[1]}@${match[2]}`); // e.g. "org.period@v1"
|
|
80
|
+
}
|
|
81
|
+
// publishEvent({ type: 'org.node.created' ... })
|
|
82
|
+
const publishEventRegex = /publishEvent\s*\(\s*\{[^}]*?type\s*:\s*['"]([^'"]+)['"]/g;
|
|
83
|
+
for (const match of content.matchAll(publishEventRegex)) {
|
|
84
|
+
providesEvents.add(match[1]);
|
|
85
|
+
}
|
|
86
|
+
// createEvent({ type: 'org.node.created' ... })
|
|
87
|
+
const createEventRegex = /createEvent\s*\(\s*\{[^}]*?type\s*:\s*['"]([^'"]+)['"]/g;
|
|
88
|
+
for (const match of content.matchAll(createEventRegex)) {
|
|
89
|
+
providesEvents.add(match[1]);
|
|
90
|
+
}
|
|
91
|
+
// Type union declarations near publishEvent context:
|
|
92
|
+
// type: 'org.node.created' | 'org.node.updated' | 'org.node.deleted'
|
|
93
|
+
// Matches dotted string literals in union type annotations
|
|
94
|
+
const typeUnionRegex = /type\s*:\s*((?:['"][a-z][a-z0-9.]*[a-z0-9]['"](?:\s*\|\s*)?)+)/g;
|
|
95
|
+
for (const unionMatch of content.matchAll(typeUnionRegex)) {
|
|
96
|
+
const unionStr = unionMatch[1];
|
|
97
|
+
const literalRegex = /['"]([a-z][a-z0-9]*(?:\.[a-z][a-z0-9]*)+)['"]/g;
|
|
98
|
+
for (const litMatch of unionStr.matchAll(literalRegex)) {
|
|
99
|
+
providesEvents.add(litMatch[1]);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
return {
|
|
105
|
+
providesEntities,
|
|
106
|
+
providesEvents: [...providesEvents].sort(),
|
|
107
|
+
requiresEntities: [...requiresEntities].sort(),
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
function walkFiles(dir, callback) {
|
|
111
|
+
let entries;
|
|
112
|
+
try {
|
|
113
|
+
entries = (0, node_fs_1.readdirSync)(dir);
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
for (const entry of entries) {
|
|
119
|
+
const full = (0, node_path_1.join)(dir, entry);
|
|
120
|
+
try {
|
|
121
|
+
const stat = (0, node_fs_1.statSync)(full);
|
|
122
|
+
if (stat.isDirectory()) {
|
|
123
|
+
if (entry === 'node_modules' || entry === '.anby' || entry === 'build')
|
|
124
|
+
continue;
|
|
125
|
+
walkFiles(full, callback);
|
|
126
|
+
}
|
|
127
|
+
else if (stat.isFile()) {
|
|
128
|
+
callback(full);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
catch {
|
|
132
|
+
// skip unreadable
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
// ── Manifest sync: merge scan results into manifest ───────────────────
|
|
137
|
+
function syncManifest(manifestPath, scan) {
|
|
138
|
+
if (!(0, node_fs_1.existsSync)(manifestPath))
|
|
139
|
+
return false;
|
|
140
|
+
let raw;
|
|
141
|
+
try {
|
|
142
|
+
raw = (0, node_fs_1.readFileSync)(manifestPath, 'utf-8');
|
|
143
|
+
}
|
|
144
|
+
catch {
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
147
|
+
const manifest = JSON.parse(raw);
|
|
148
|
+
let changed = false;
|
|
149
|
+
// Sync provides.entities
|
|
150
|
+
if (scan.providesEntities.length > 0) {
|
|
151
|
+
const current = JSON.stringify(manifest.provides?.entities ?? []);
|
|
152
|
+
const scanned = JSON.stringify(scan.providesEntities);
|
|
153
|
+
if (current !== scanned) {
|
|
154
|
+
manifest.provides = manifest.provides || {};
|
|
155
|
+
manifest.provides.entities = scan.providesEntities;
|
|
156
|
+
changed = true;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
// Sync provides.events
|
|
160
|
+
if (scan.providesEvents.length > 0) {
|
|
161
|
+
const current = JSON.stringify((manifest.provides?.events ?? []).slice().sort());
|
|
162
|
+
const scanned = JSON.stringify(scan.providesEvents);
|
|
163
|
+
if (current !== scanned) {
|
|
164
|
+
manifest.provides = manifest.provides || {};
|
|
165
|
+
manifest.provides.events = scan.providesEvents;
|
|
166
|
+
changed = true;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
// Sync requires.entities
|
|
170
|
+
if (scan.requiresEntities.length > 0) {
|
|
171
|
+
const current = JSON.stringify((manifest.requires?.entities ?? []).slice().sort());
|
|
172
|
+
const scanned = JSON.stringify(scan.requiresEntities);
|
|
173
|
+
if (current !== scanned) {
|
|
174
|
+
manifest.requires = manifest.requires || {};
|
|
175
|
+
manifest.requires.entities = scan.requiresEntities;
|
|
176
|
+
changed = true;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
if (changed) {
|
|
180
|
+
(0, node_fs_1.writeFileSync)(manifestPath, JSON.stringify(manifest, null, 2) + '\n');
|
|
181
|
+
console.log('[anby-vite] ✔ Auto-updated manifest from source code scan');
|
|
182
|
+
const parts = [];
|
|
183
|
+
if (scan.providesEntities.length)
|
|
184
|
+
parts.push(`provides ${scan.providesEntities.length} entities`);
|
|
185
|
+
if (scan.providesEvents.length)
|
|
186
|
+
parts.push(`provides ${scan.providesEvents.length} events`);
|
|
187
|
+
if (scan.requiresEntities.length)
|
|
188
|
+
parts.push(`requires ${scan.requiresEntities.length} entities`);
|
|
189
|
+
if (parts.length)
|
|
190
|
+
console.log(`[anby-vite] ${parts.join(', ')}`);
|
|
191
|
+
}
|
|
192
|
+
return changed;
|
|
193
|
+
}
|
|
194
|
+
// ── Codegen: typed module augmentations ───────────────────────────────
|
|
35
195
|
function renderTypes(provides, requires) {
|
|
36
196
|
const sections = [];
|
|
37
197
|
sections.push('// Generated by @anby/platform-sdk/vite — DO NOT EDIT.');
|
|
@@ -60,7 +220,6 @@ function renderTypes(provides, requires) {
|
|
|
60
220
|
}
|
|
61
221
|
sections.push('}');
|
|
62
222
|
sections.push('');
|
|
63
|
-
// Pure declaration file marker
|
|
64
223
|
sections.push('export {};');
|
|
65
224
|
sections.push('');
|
|
66
225
|
return sections.join('\n');
|
|
@@ -72,13 +231,30 @@ function readManifestEvents(manifestAbsPath) {
|
|
|
72
231
|
const requires = Array.isArray(parsed.requires?.events) ? parsed.requires.events : [];
|
|
73
232
|
return { provides, requires };
|
|
74
233
|
}
|
|
234
|
+
// ── Plugin ────────────────────────────────────────────────────────────
|
|
75
235
|
function anbyVitePlugin(opts = {}) {
|
|
76
236
|
const manifestRelative = opts.manifestPath ?? './anby-app.manifest.json';
|
|
77
237
|
const outRelative = opts.outFile ?? './.anby/types.d.ts';
|
|
78
238
|
const artifactRelative = opts.manifestArtifactPath ?? './public/_anby/manifest.json';
|
|
239
|
+
const scanDirsRelative = opts.scanDirs ?? ['./app'];
|
|
240
|
+
const autoScan = opts.disableAutoScan !== true;
|
|
241
|
+
let root = '';
|
|
79
242
|
let resolvedManifest = '';
|
|
80
243
|
let resolvedOut = '';
|
|
81
244
|
let resolvedArtifact = '';
|
|
245
|
+
function runAutoScan() {
|
|
246
|
+
if (!autoScan)
|
|
247
|
+
return;
|
|
248
|
+
if (!(0, node_fs_1.existsSync)(resolvedManifest))
|
|
249
|
+
return;
|
|
250
|
+
try {
|
|
251
|
+
const scan = scanSourceCode(root, scanDirsRelative);
|
|
252
|
+
syncManifest(resolvedManifest, scan);
|
|
253
|
+
}
|
|
254
|
+
catch (err) {
|
|
255
|
+
console.warn(`[anby-vite] auto-scan failed: ${err.message}`);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
82
258
|
function generateTypes() {
|
|
83
259
|
if (!(0, node_fs_1.existsSync)(resolvedManifest)) {
|
|
84
260
|
console.warn(`[anby-vite] manifest not found at ${resolvedManifest} — skipping codegen`);
|
|
@@ -94,13 +270,6 @@ function anbyVitePlugin(opts = {}) {
|
|
|
94
270
|
console.warn(`[anby-vite] codegen failed: ${err.message}`);
|
|
95
271
|
}
|
|
96
272
|
}
|
|
97
|
-
/**
|
|
98
|
-
* Generate `public/_anby/manifest.json` — the wire-format manifest
|
|
99
|
-
* with all `provides.entities[].schema` paths resolved to inline JSON
|
|
100
|
-
* content. Vite/Remix serve `public/` as static assets in both dev
|
|
101
|
-
* and production, so this single artifact powers the Marketplace
|
|
102
|
-
* Submit-app form everywhere.
|
|
103
|
-
*/
|
|
104
273
|
async function generateManifestArtifact() {
|
|
105
274
|
if (!(0, node_fs_1.existsSync)(resolvedManifest))
|
|
106
275
|
return;
|
|
@@ -116,15 +285,14 @@ function anbyVitePlugin(opts = {}) {
|
|
|
116
285
|
}
|
|
117
286
|
}
|
|
118
287
|
function regenerateAll() {
|
|
119
|
-
|
|
120
|
-
|
|
288
|
+
runAutoScan(); // 1. Scan code → update manifest
|
|
289
|
+
generateTypes(); // 2. Read manifest → generate types
|
|
290
|
+
void generateManifestArtifact(); // 3. Read manifest → generate wire artifact
|
|
121
291
|
}
|
|
122
292
|
return {
|
|
123
293
|
name: '@anby/platform-sdk/vite',
|
|
124
294
|
configResolved(config) {
|
|
125
|
-
|
|
126
|
-
// This is robust against pnpm workspaces / symlinks / monorepos.
|
|
127
|
-
const root = config.root;
|
|
295
|
+
root = config.root;
|
|
128
296
|
resolvedManifest = (0, node_path_1.isAbsolute)(manifestRelative)
|
|
129
297
|
? manifestRelative
|
|
130
298
|
: (0, node_path_1.resolve)(root, manifestRelative);
|
|
@@ -139,12 +307,22 @@ function anbyVitePlugin(opts = {}) {
|
|
|
139
307
|
regenerateAll();
|
|
140
308
|
},
|
|
141
309
|
configureServer(server) {
|
|
142
|
-
// Watch
|
|
143
|
-
// against the resolved path so we don't false-trigger on other
|
|
144
|
-
// manifest.json files in the workspace (e.g., node_modules).
|
|
310
|
+
// Watch manifest + source dirs
|
|
145
311
|
server.watcher.add(resolvedManifest);
|
|
312
|
+
for (const dir of scanDirsRelative) {
|
|
313
|
+
const absDir = (0, node_path_1.isAbsolute)(dir) ? dir : (0, node_path_1.resolve)(root, dir);
|
|
314
|
+
if ((0, node_fs_1.existsSync)(absDir))
|
|
315
|
+
server.watcher.add(absDir);
|
|
316
|
+
}
|
|
146
317
|
server.watcher.on('change', (changedPath) => {
|
|
147
|
-
|
|
318
|
+
const abs = (0, node_path_1.resolve)(changedPath);
|
|
319
|
+
if (abs === resolvedManifest) {
|
|
320
|
+
// Manifest changed directly — regenerate types + artifact (no re-scan)
|
|
321
|
+
generateTypes();
|
|
322
|
+
void generateManifestArtifact();
|
|
323
|
+
}
|
|
324
|
+
else if (changedPath.match(/\.(ts|tsx|js|jsx)$/)) {
|
|
325
|
+
// Source file changed — re-scan → update manifest → regenerate
|
|
148
326
|
regenerateAll();
|
|
149
327
|
}
|
|
150
328
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/vite/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/vite/index.ts"],"names":[],"mappings":"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"}
|