bkper 4.6.2 → 4.7.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 (40) hide show
  1. package/README.md +42 -10
  2. package/lib/commands/apps/build.d.ts +8 -5
  3. package/lib/commands/apps/build.d.ts.map +1 -1
  4. package/lib/commands/apps/build.js +17 -46
  5. package/lib/commands/apps/build.js.map +1 -1
  6. package/lib/commands/apps/deploy.d.ts.map +1 -1
  7. package/lib/commands/apps/deploy.js +4 -19
  8. package/lib/commands/apps/deploy.js.map +1 -1
  9. package/lib/commands/apps/dev.d.ts +4 -8
  10. package/lib/commands/apps/dev.d.ts.map +1 -1
  11. package/lib/commands/apps/dev.js +109 -134
  12. package/lib/commands/apps/dev.js.map +1 -1
  13. package/lib/commands/apps/register.d.ts.map +1 -1
  14. package/lib/commands/apps/register.js +2 -6
  15. package/lib/commands/apps/register.js.map +1 -1
  16. package/lib/dev/auth-middleware.d.ts +5 -4
  17. package/lib/dev/auth-middleware.d.ts.map +1 -1
  18. package/lib/dev/auth-middleware.js +5 -4
  19. package/lib/dev/auth-middleware.js.map +1 -1
  20. package/lib/dev/esbuild.d.ts +20 -0
  21. package/lib/dev/esbuild.d.ts.map +1 -1
  22. package/lib/dev/esbuild.js +33 -0
  23. package/lib/dev/esbuild.js.map +1 -1
  24. package/lib/dev/logger.d.ts +1 -6
  25. package/lib/dev/logger.d.ts.map +1 -1
  26. package/lib/dev/logger.js +1 -7
  27. package/lib/dev/logger.js.map +1 -1
  28. package/lib/dev/miniflare.d.ts +11 -3
  29. package/lib/dev/miniflare.d.ts.map +1 -1
  30. package/lib/dev/miniflare.js +34 -7
  31. package/lib/dev/miniflare.js.map +1 -1
  32. package/lib/dev/preflight.d.ts +7 -1
  33. package/lib/dev/preflight.d.ts.map +1 -1
  34. package/lib/dev/preflight.js +10 -31
  35. package/lib/dev/preflight.js.map +1 -1
  36. package/package.json +14 -5
  37. package/lib/dev/vite.d.ts +0 -50
  38. package/lib/dev/vite.d.ts.map +0 -1
  39. package/lib/dev/vite.js +0 -114
  40. package/lib/dev/vite.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/dev/logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtF,MAAM,WAAW,MAAM;IACnB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAiBD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAuBtD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYhD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAgB5F;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE;IACrC,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C,GAAG,IAAI,CAgCP"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/dev/logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtF,MAAM,WAAW,MAAM;IACnB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAiBD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM,CAuBtD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAYhD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAYxE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE;IACrC,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3C,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C,GAAG,IAAI,CAwBP"}
package/lib/dev/logger.js CHANGED
@@ -62,15 +62,12 @@ export function formatSize(bytes) {
62
62
  }
63
63
  /**
64
64
  * Logs startup banner for the dev server
65
- * @param options - URLs for client, server, and events endpoints
65
+ * @param options - URLs for tunnel endpoint
66
66
  */
67
67
  export function logDevServerBanner(options) {
68
68
  console.log('');
69
69
  console.log(`${icons.rocket} Bkper App Development Server`);
70
70
  console.log('');
71
- if (options.clientUrl) {
72
- console.log(` ${options.clientUrl}`);
73
- }
74
71
  if (options.tunnelUrl) {
75
72
  console.log(` Events: ${options.tunnelUrl} (tunneled)`);
76
73
  }
@@ -86,9 +83,6 @@ export function logBuildResults(results) {
86
83
  console.log('');
87
84
  console.log(`${icons.package} Building Bkper App...`);
88
85
  console.log('');
89
- if (results.webClient) {
90
- console.log(` \u2713 Web client \u2192 ${results.webClient.path.padEnd(20)} (${formatSize(results.webClient.size)})`);
91
- }
92
86
  if (results.webServer) {
93
87
  console.log(` \u2713 Web server \u2192 ${results.webServer.path.padEnd(20)} (${formatSize(results.webServer.size)})`);
94
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/dev/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/dev/logger.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Miniflare } from 'miniflare';
1
+ import type { Miniflare } from 'miniflare';
2
2
  export interface WorkerServerOptions {
3
3
  port: number;
4
4
  kvNamespaces?: string[];
@@ -16,13 +16,21 @@ export interface WorkerServerOptions {
16
16
  */
17
17
  export declare function createWorkerServer(entryPoint: string, options: WorkerServerOptions): Promise<Miniflare>;
18
18
  /**
19
- * Reloads a Worker with new code (hot reload)
20
- * Rebuilds the entry point and updates Miniflare
19
+ * Reloads a Worker with new code (hot reload).
20
+ * Rebuilds the entry point and updates Miniflare.
21
21
  *
22
22
  * @param mf - Existing Miniflare instance
23
23
  * @param entryPoint - Path to TypeScript Worker entry file
24
24
  */
25
25
  export declare function reloadWorker(mf: Miniflare, entryPoint: string): Promise<void>;
26
+ /**
27
+ * Updates a Worker with pre-built code (used by esbuild watch mode).
28
+ * Skips the build step — expects code that's already bundled.
29
+ *
30
+ * @param mf - Existing Miniflare instance
31
+ * @param code - Pre-built JavaScript code string
32
+ */
33
+ export declare function updateWorkerCode(mf: Miniflare, code: string): Promise<void>;
26
34
  /**
27
35
  * Gracefully stops a Miniflare instance
28
36
  *
@@ -1 +1 @@
1
- {"version":3,"file":"miniflare.d.ts","sourceRoot":"","sources":["../../src/dev/miniflare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,WAAW,CAAC;AAGrD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAuBD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACpC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC7B,OAAO,CAAC,SAAS,CAAC,CAqDpB;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BnF;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE"}
1
+ {"version":3,"file":"miniflare.d.ts","sourceRoot":"","sources":["../../src/dev/miniflare.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAO,MAAM,WAAW,CAAC;AAGhD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAoCD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACpC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC7B,OAAO,CAAC,SAAS,CAAC,CAuDpB;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGnF;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BjF;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE"}
@@ -7,13 +7,27 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { Miniflare, Log, LogLevel } from 'miniflare';
11
10
  import { buildWorker } from './esbuild.js';
12
11
  /**
13
12
  * Store the base configuration for each Miniflare instance to support hot reload.
14
13
  * Maps Miniflare instance to its base configuration (without modules).
15
14
  */
16
15
  const instanceConfigs = new WeakMap();
16
+ /**
17
+ * Dynamically imports miniflare, exiting with a helpful message if not installed.
18
+ */
19
+ function loadMiniflare() {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ try {
22
+ return yield import('miniflare');
23
+ }
24
+ catch (_a) {
25
+ console.error('miniflare is required for local development.');
26
+ console.error('Install it as a devDependency (e.g. npm install -D miniflare).');
27
+ process.exit(1);
28
+ }
29
+ });
30
+ }
17
31
  /**
18
32
  * Creates and starts a Miniflare instance for local Worker development
19
33
  *
@@ -24,6 +38,7 @@ const instanceConfigs = new WeakMap();
24
38
  export function createWorkerServer(entryPoint, options) {
25
39
  return __awaiter(this, void 0, void 0, function* () {
26
40
  var _a, _b;
41
+ const { Miniflare: MiniflareClass, Log: LogClass, LogLevel } = yield loadMiniflare();
27
42
  // Build the Worker code from TypeScript
28
43
  const script = yield buildWorker(entryPoint);
29
44
  // Build the base configuration (without modules) for hot reload support
@@ -34,7 +49,7 @@ export function createWorkerServer(entryPoint, options) {
34
49
  compatibilityDate: options.compatibilityDate || '2026-01-29',
35
50
  compatibilityFlags: ['nodejs_compat'],
36
51
  // Logging
37
- log: new Log(LogLevel.INFO),
52
+ log: new LogClass(LogLevel.INFO),
38
53
  // Live reload (inject script into HTML responses)
39
54
  liveReload: true,
40
55
  // KV namespaces - convert array to object format
@@ -45,7 +60,7 @@ export function createWorkerServer(entryPoint, options) {
45
60
  // Environment variables and secrets
46
61
  bindings: options.vars,
47
62
  };
48
- const mf = new Miniflare(Object.assign(Object.assign({}, baseConfig), {
63
+ const mf = new MiniflareClass(Object.assign(Object.assign({}, baseConfig), {
49
64
  // Use modules array format instead of script string
50
65
  // This allows Miniflare to properly handle dynamic imports of external modules
51
66
  // like cloudflare:workers that are used by libraries (e.g., Hono)
@@ -64,8 +79,8 @@ export function createWorkerServer(entryPoint, options) {
64
79
  });
65
80
  }
66
81
  /**
67
- * Reloads a Worker with new code (hot reload)
68
- * Rebuilds the entry point and updates Miniflare
82
+ * Reloads a Worker with new code (hot reload).
83
+ * Rebuilds the entry point and updates Miniflare.
69
84
  *
70
85
  * @param mf - Existing Miniflare instance
71
86
  * @param entryPoint - Path to TypeScript Worker entry file
@@ -73,6 +88,18 @@ export function createWorkerServer(entryPoint, options) {
73
88
  export function reloadWorker(mf, entryPoint) {
74
89
  return __awaiter(this, void 0, void 0, function* () {
75
90
  const script = yield buildWorker(entryPoint);
91
+ yield updateWorkerCode(mf, script);
92
+ });
93
+ }
94
+ /**
95
+ * Updates a Worker with pre-built code (used by esbuild watch mode).
96
+ * Skips the build step — expects code that's already bundled.
97
+ *
98
+ * @param mf - Existing Miniflare instance
99
+ * @param code - Pre-built JavaScript code string
100
+ */
101
+ export function updateWorkerCode(mf, code) {
102
+ return __awaiter(this, void 0, void 0, function* () {
76
103
  // Retrieve the stored base config
77
104
  const baseConfig = instanceConfigs.get(mf);
78
105
  if (!baseConfig) {
@@ -82,7 +109,7 @@ export function reloadWorker(mf, entryPoint) {
82
109
  {
83
110
  type: 'ESModule',
84
111
  path: 'index.js',
85
- contents: script,
112
+ contents: code,
86
113
  },
87
114
  ],
88
115
  });
@@ -93,7 +120,7 @@ export function reloadWorker(mf, entryPoint) {
93
120
  {
94
121
  type: 'ESModule',
95
122
  path: 'index.js',
96
- contents: script,
123
+ contents: code,
97
124
  },
98
125
  ] }));
99
126
  });
@@ -1 +1 @@
1
- {"version":3,"file":"miniflare.js","sourceRoot":"","sources":["../../src/dev/miniflare.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AA0B3C;;;GAGG;AACH,MAAM,eAAe,GAAG,IAAI,OAAO,EAAyB,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,UAAgB,kBAAkB,CACpC,UAAkB,EAClB,OAA4B;;;QAE5B,wCAAwC;QACxC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC;QAE7C,wEAAwE;QACxE,MAAM,UAAU,GAAe;YAC3B,cAAc;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAElB,4CAA4C;YAC5C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,IAAI,YAAY;YAC5D,kBAAkB,EAAE,CAAC,eAAe,CAAC;YAErC,UAAU;YACV,GAAG,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;YAE3B,kDAAkD;YAClD,UAAU,EAAE,IAAI;YAEhB,iDAAiD;YACjD,+BAA+B;YAC/B,YAAY,EAAE,MAAA,OAAO,CAAC,YAAY,0CAAE,MAAM,CACtC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,iCAAM,GAAG,KAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,WAAW,EAAE,QAAQ,IAAG,EAC5D,EAA4B,CAC/B;YAED,kCAAkC;YAClC,SAAS,EAAE,OAAO,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,MAAA,OAAO,CAAC,WAAW,mCAAI,UAAU,CAAC,CAAC,CAAC,SAAS;YAEpF,oCAAoC;YACpC,QAAQ,EAAE,OAAO,CAAC,IAAI;SACzB,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,SAAS,iCACjB,UAAU;YACb,oDAAoD;YACpD,+EAA+E;YAC/E,kEAAkE;YAClE,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,UAAU,EAAE,sCAAsC;oBACxD,QAAQ,EAAE,MAAM;iBACnB;aACJ,IACH,CAAC;QAEH,uCAAuC;QACvC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAEpC,iCAAiC;QACjC,MAAM,EAAE,CAAC,KAAK,CAAC;QACf,OAAO,EAAE,CAAC;IACd,CAAC;CAAA;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,YAAY,CAAC,EAAa,EAAE,UAAkB;;QAChE,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,CAAC;QAE7C,kCAAkC;QAClC,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,+EAA+E;YAC/E,MAAM,EAAE,CAAC,UAAU,CAAC;gBAChB,OAAO,EAAE;oBACL;wBACI,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,MAAM;qBACnB;iBACJ;aACJ,CAAC,CAAC;YACH,OAAO;QACX,CAAC;QAED,yCAAyC;QACzC,MAAM,EAAE,CAAC,UAAU,iCACZ,UAAU,KACb,OAAO,EAAE;gBACL;oBACI,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE,MAAM;iBACnB;aACJ,IACH,CAAC;IACP,CAAC;CAAA;AAED;;;;GAIG;AACH,MAAM,UAAgB,gBAAgB,CAAC,EAAa;;QAChD,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;CAAA"}
1
+ {"version":3,"file":"miniflare.js","sourceRoot":"","sources":["../../src/dev/miniflare.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,12 @@ interface PreflightResult {
2
2
  ok: boolean;
3
3
  message?: string;
4
4
  }
5
- export declare function preflightDependencies(projectRoot: string, clientRoot?: string): PreflightResult;
5
+ /**
6
+ * Pre-flight dependency checks for dev and build commands.
7
+ * Verifies: package.json exists, node_modules installed, TypeScript for shared package.
8
+ *
9
+ * Client framework checks are the template's concern — handled by Vite/npm install.
10
+ */
11
+ export declare function preflightDependencies(projectRoot: string): PreflightResult;
6
12
  export {};
7
13
  //# sourceMappingURL=preflight.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"preflight.d.ts","sourceRoot":"","sources":["../../src/dev/preflight.ts"],"names":[],"mappings":"AAGA,UAAU,eAAe;IACrB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAiCD,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,eAAe,CAuC/F"}
1
+ {"version":3,"file":"preflight.d.ts","sourceRoot":"","sources":["../../src/dev/preflight.ts"],"names":[],"mappings":"AAGA,UAAU,eAAe;IACrB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAWD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CA6B1E"}
@@ -1,23 +1,5 @@
1
1
  import fs from 'fs';
2
2
  import path from 'path';
3
- function getClientDependencyName(clientRoot) {
4
- const pkgPath = path.join(clientRoot, 'package.json');
5
- if (!fs.existsSync(pkgPath))
6
- return undefined;
7
- try {
8
- const content = fs.readFileSync(pkgPath, 'utf8');
9
- const pkg = JSON.parse(content);
10
- const deps = pkg.dependencies || {};
11
- const devDeps = pkg.devDependencies || {};
12
- const depNames = Object.keys(deps).concat(Object.keys(devDeps));
13
- if (depNames.includes('lit'))
14
- return 'lit';
15
- return depNames[0];
16
- }
17
- catch (_a) {
18
- return undefined;
19
- }
20
- }
21
3
  function isDependencyInstalled(projectRoot, depName) {
22
4
  const depPath = path.join(projectRoot, 'node_modules', depName, 'package.json');
23
5
  return fs.existsSync(depPath);
@@ -25,37 +7,34 @@ function isDependencyInstalled(projectRoot, depName) {
25
7
  function hasSharedPackage(projectRoot) {
26
8
  return fs.existsSync(path.join(projectRoot, 'packages/shared'));
27
9
  }
28
- export function preflightDependencies(projectRoot, clientRoot) {
10
+ /**
11
+ * Pre-flight dependency checks for dev and build commands.
12
+ * Verifies: package.json exists, node_modules installed, TypeScript for shared package.
13
+ *
14
+ * Client framework checks are the template's concern — handled by Vite/npm install.
15
+ */
16
+ export function preflightDependencies(projectRoot) {
29
17
  const rootPkgPath = path.join(projectRoot, 'package.json');
30
18
  if (!fs.existsSync(rootPkgPath)) {
31
19
  return {
32
20
  ok: false,
33
- message: 'Missing dependencies. Run bun install at the app root (no package.json found).',
21
+ message: 'Missing dependencies. Install dependencies at the app root (no package.json found).',
34
22
  };
35
23
  }
36
24
  const nodeModulesPath = path.join(projectRoot, 'node_modules');
37
25
  if (!fs.existsSync(nodeModulesPath)) {
38
26
  return {
39
27
  ok: false,
40
- message: 'Missing dependencies. Run bun install at the app root (node_modules not found).',
28
+ message: 'Missing dependencies. Install dependencies at the app root (node_modules not found).',
41
29
  };
42
30
  }
43
31
  // Check for TypeScript if shared package exists
44
32
  if (hasSharedPackage(projectRoot) && !isDependencyInstalled(projectRoot, 'typescript')) {
45
33
  return {
46
34
  ok: false,
47
- message: 'Missing TypeScript. Run bun install at the app root (required for shared package build).',
35
+ message: 'Missing TypeScript. Install dependencies at the app root (required for shared package build).',
48
36
  };
49
37
  }
50
- if (clientRoot) {
51
- const depName = getClientDependencyName(clientRoot);
52
- if (depName && !isDependencyInstalled(projectRoot, depName)) {
53
- return {
54
- ok: false,
55
- message: `Missing client dependencies. Run bun install at the app root (cannot resolve ${depName}).`,
56
- };
57
- }
58
- }
59
38
  return { ok: true };
60
39
  }
61
40
  //# sourceMappingURL=preflight.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../src/dev/preflight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAOxB,SAAS,uBAAuB,CAAC,UAAkB;IAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACtD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IAE9C,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAG7B,CAAC;QAEF,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAEhE,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC3C,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAAC,WAAM,CAAC;QACL,OAAO,SAAS,CAAC;IACrB,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAmB,EAAE,OAAe;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAChF,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,gBAAgB,CAAC,WAAmB;IACzC,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,WAAmB,EAAE,UAAmB;IAC1E,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9B,OAAO;YACH,EAAE,EAAE,KAAK;YACT,OAAO,EACH,gFAAgF;SACvF,CAAC;IACN,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC/D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QAClC,OAAO;YACH,EAAE,EAAE,KAAK;YACT,OAAO,EACH,iFAAiF;SACxF,CAAC;IACN,CAAC;IAED,gDAAgD;IAChD,IAAI,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,CAAC;QACrF,OAAO;YACH,EAAE,EAAE,KAAK;YACT,OAAO,EACH,0FAA0F;SACjG,CAAC;IACN,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;YAC1D,OAAO;gBACH,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,gFAAgF,OAAO,IAAI;aACvG,CAAC;QACN,CAAC;IACL,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../src/dev/preflight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAOxB,SAAS,qBAAqB,CAAC,WAAmB,EAAE,OAAe;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAChF,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,gBAAgB,CAAC,WAAmB;IACzC,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,WAAmB;IACrD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9B,OAAO;YACH,EAAE,EAAE,KAAK;YACT,OAAO,EACH,qFAAqF;SAC5F,CAAC;IACN,CAAC;IAED,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC/D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QAClC,OAAO;YACH,EAAE,EAAE,KAAK;YACT,OAAO,EACH,sFAAsF;SAC7F,CAAC;IACN,CAAC;IAED,gDAAgD;IAChD,IAAI,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,YAAY,CAAC,EAAE,CAAC;QACrF,OAAO;YACH,EAAE,EAAE,KAAK;YACT,OAAO,EACH,+FAA+F;SACtG,CAAC;IACN,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bkper",
3
- "version": "4.6.2",
3
+ "version": "4.7.0",
4
4
  "description": "Command line client for Bkper",
5
5
  "bin": {
6
6
  "bkper": "./lib/cli.js"
@@ -13,6 +13,10 @@
13
13
  "main": "./lib/index.js",
14
14
  "module": "./lib/index.js",
15
15
  "types": "./lib/index.d.ts",
16
+ "exports": {
17
+ ".": "./lib/index.js",
18
+ "./dev": "./lib/dev/auth-middleware.js"
19
+ },
16
20
  "type": "module",
17
21
  "engines": {
18
22
  "node": ">=18"
@@ -45,19 +49,24 @@
45
49
  "postversion": "git push --tags && yarn publish --new-version $npm_package_version && git push && echo \"Successfully released version $npm_package_version!\""
46
50
  },
47
51
  "dependencies": {
48
- "bkper-js": "^2.29.2",
49
- "chokidar": "^5.0.0",
52
+ "bkper-js": "^2.29.4",
50
53
  "commander": "^13.1.0",
51
54
  "dotenv": "^8.2.0",
52
55
  "esbuild": "^0.27.2",
53
56
  "google-auth-library": "^10.5.0",
54
- "miniflare": "^4",
55
57
  "open": "^10.1.0",
56
58
  "openapi-fetch": "^0.15.0",
57
59
  "tar": "^7.0.0",
58
- "vite": "^7.3.1",
59
60
  "yaml": "^2.5.1"
60
61
  },
62
+ "peerDependencies": {
63
+ "miniflare": "^4"
64
+ },
65
+ "peerDependenciesMeta": {
66
+ "miniflare": {
67
+ "optional": true
68
+ }
69
+ },
61
70
  "devDependencies": {
62
71
  "@bkper/bkper-api-types": "^5.36.0",
63
72
  "@types/chai": "^4.3.0",
package/lib/dev/vite.d.ts DELETED
@@ -1,50 +0,0 @@
1
- import { ViteDevServer } from 'vite';
2
- /**
3
- * Options for creating a Vite client dev server
4
- */
5
- export interface ClientServerOptions {
6
- /** Port for the Vite dev server */
7
- port: number;
8
- /** Miniflare port for API proxy */
9
- serverPort: number;
10
- /** Whether to open browser on startup */
11
- open?: boolean;
12
- }
13
- /**
14
- * Options for building the client
15
- */
16
- export interface ClientBuildOptions {
17
- /** Output directory (absolute path recommended) */
18
- outDir: string;
19
- }
20
- /**
21
- * Creates and starts a Vite dev server for the client.
22
- * Configures proxy to forward /api requests to Miniflare.
23
- * Adds middleware to handle /auth/refresh for local development auth.
24
- *
25
- * @param root - Path to Vite project root (client directory)
26
- * @param options - Server configuration options
27
- * @returns Running Vite dev server instance
28
- */
29
- export declare function createClientServer(root: string, options: ClientServerOptions): Promise<ViteDevServer>;
30
- /**
31
- * Builds the client for production.
32
- *
33
- * @param root - Path to Vite project root (client directory)
34
- * @param options - Build configuration options
35
- */
36
- export declare function buildClient(root: string, options: ClientBuildOptions): Promise<void>;
37
- /**
38
- * Stops a Vite dev server.
39
- *
40
- * @param server - Vite dev server instance to stop
41
- */
42
- export declare function stopClientServer(server: ViteDevServer): Promise<void>;
43
- /**
44
- * Gets the resolved URL of a running Vite dev server.
45
- *
46
- * @param server - Running Vite dev server instance
47
- * @returns The server URL (e.g., "http://localhost:5173")
48
- */
49
- export declare function getServerUrl(server: ViteDevServer): string | undefined;
50
- //# sourceMappingURL=vite.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../../src/dev/vite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,aAAa,EAAU,MAAM,MAAM,CAAC;AAK/E;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAC/B,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACpC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,mBAAmB,GAC7B,OAAO,CAAC,aAAa,CAAC,CAiDxB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAe1F;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAGtE"}
package/lib/dev/vite.js DELETED
@@ -1,114 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import { createServer, build as viteBuild } from 'vite';
11
- import path from 'path';
12
- import { exec } from 'child_process';
13
- import { createAuthMiddleware } from './auth-middleware.js';
14
- /**
15
- * Creates and starts a Vite dev server for the client.
16
- * Configures proxy to forward /api requests to Miniflare.
17
- * Adds middleware to handle /auth/refresh for local development auth.
18
- *
19
- * @param root - Path to Vite project root (client directory)
20
- * @param options - Server configuration options
21
- * @returns Running Vite dev server instance
22
- */
23
- export function createClientServer(root, options) {
24
- return __awaiter(this, void 0, void 0, function* () {
25
- // Plugin to add auth middleware for local development
26
- const authPlugin = {
27
- name: 'bkper-dev-auth',
28
- configureServer(server) {
29
- // Add middleware before other handlers
30
- server.middlewares.use(createAuthMiddleware());
31
- },
32
- };
33
- const server = yield createServer({
34
- root,
35
- server: {
36
- port: options.port,
37
- host: '127.0.0.1',
38
- strictPort: false, // Allow fallback to next available port
39
- proxy: {
40
- // Proxy API requests to Miniflare
41
- '/api': {
42
- target: `http://localhost:${options.serverPort}`,
43
- changeOrigin: true,
44
- },
45
- },
46
- },
47
- plugins: [authPlugin],
48
- // Disable config file to ensure CLI controls everything
49
- configFile: false,
50
- // Suppress Vite's own logging (we use our own logger)
51
- logLevel: 'warn',
52
- });
53
- yield server.listen();
54
- if (options.open) {
55
- const url = getServerUrl(server);
56
- const cmd = process.platform === 'darwin'
57
- ? 'open'
58
- : process.platform === 'win32'
59
- ? 'start'
60
- : 'xdg-open';
61
- exec(`${cmd} ${url}`, err => {
62
- if (err) {
63
- console.log(`\n Open your browser at ${url}\n`);
64
- }
65
- });
66
- }
67
- return server;
68
- });
69
- }
70
- /**
71
- * Builds the client for production.
72
- *
73
- * @param root - Path to Vite project root (client directory)
74
- * @param options - Build configuration options
75
- */
76
- export function buildClient(root, options) {
77
- return __awaiter(this, void 0, void 0, function* () {
78
- yield viteBuild({
79
- root,
80
- build: {
81
- // IMPORTANT: Use absolute path to ensure output goes to project root
82
- outDir: path.isAbsolute(options.outDir)
83
- ? options.outDir
84
- : path.resolve(process.cwd(), options.outDir),
85
- emptyOutDir: true,
86
- },
87
- // Disable config file
88
- configFile: false,
89
- // Silent logging for clean CLI output
90
- logLevel: 'silent',
91
- });
92
- });
93
- }
94
- /**
95
- * Stops a Vite dev server.
96
- *
97
- * @param server - Vite dev server instance to stop
98
- */
99
- export function stopClientServer(server) {
100
- return __awaiter(this, void 0, void 0, function* () {
101
- yield server.close();
102
- });
103
- }
104
- /**
105
- * Gets the resolved URL of a running Vite dev server.
106
- *
107
- * @param server - Running Vite dev server instance
108
- * @returns The server URL (e.g., "http://localhost:5173")
109
- */
110
- export function getServerUrl(server) {
111
- const info = server.resolvedUrls;
112
- return info === null || info === void 0 ? void 0 : info.local[0];
113
- }
114
- //# sourceMappingURL=vite.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vite.js","sourceRoot":"","sources":["../../src/dev/vite.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,IAAI,SAAS,EAAyB,MAAM,MAAM,CAAC;AAC/E,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAsB5D;;;;;;;;GAQG;AACH,MAAM,UAAgB,kBAAkB,CACpC,IAAY,EACZ,OAA4B;;QAE5B,sDAAsD;QACtD,MAAM,UAAU,GAAW;YACvB,IAAI,EAAE,gBAAgB;YACtB,eAAe,CAAC,MAAM;gBAClB,uCAAuC;gBACvC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC,CAAC;YACnD,CAAC;SACJ,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;YAC9B,IAAI;YACJ,MAAM,EAAE;gBACJ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,WAAW;gBACjB,UAAU,EAAE,KAAK,EAAE,wCAAwC;gBAC3D,KAAK,EAAE;oBACH,kCAAkC;oBAClC,MAAM,EAAE;wBACJ,MAAM,EAAE,oBAAoB,OAAO,CAAC,UAAU,EAAE;wBAChD,YAAY,EAAE,IAAI;qBACrB;iBACJ;aACJ;YACD,OAAO,EAAE,CAAC,UAAU,CAAC;YACrB,wDAAwD;YACxD,UAAU,EAAE,KAAK;YACjB,sDAAsD;YACtD,QAAQ,EAAE,MAAM;SACnB,CAAC,CAAC;QAEH,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QAEtB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,GAAG,GACL,OAAO,CAAC,QAAQ,KAAK,QAAQ;gBACzB,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO;oBAC5B,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,UAAU,CAAC;YACvB,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE;gBACxB,IAAI,GAAG,EAAE,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAAC;gBACrD,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAgB,WAAW,CAAC,IAAY,EAAE,OAA2B;;QACvE,MAAM,SAAS,CAAC;YACZ,IAAI;YACJ,KAAK,EAAE;gBACH,qEAAqE;gBACrE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;oBACnC,CAAC,CAAC,OAAO,CAAC,MAAM;oBAChB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC;gBACjD,WAAW,EAAE,IAAI;aACpB;YACD,sBAAsB;YACtB,UAAU,EAAE,KAAK;YACjB,sCAAsC;YACtC,QAAQ,EAAE,QAAQ;SACrB,CAAC,CAAC;IACP,CAAC;CAAA;AAED;;;;GAIG;AACH,MAAM,UAAgB,gBAAgB,CAAC,MAAqB;;QACxD,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,MAAqB;IAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC;IACjC,OAAO,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AAC1B,CAAC"}