@poveste/shared 0.6.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.
Files changed (52) hide show
  1. package/dist/codegen/const.d.ts +0 -1
  2. package/dist/codegen/index.d.ts +0 -1
  3. package/dist/codegen/serialize-js.d.ts +0 -1
  4. package/dist/codegen/util.d.ts +0 -1
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.js +1 -0
  7. package/dist/setup.d.ts +0 -1
  8. package/dist/state.d.ts +0 -1
  9. package/dist/story-error.d.ts +13 -0
  10. package/dist/story-error.js +30 -0
  11. package/dist/story.d.ts +0 -1
  12. package/dist/type-utils.d.ts +0 -1
  13. package/dist/types/command.d.ts +0 -1
  14. package/dist/types/config.d.ts +0 -1
  15. package/dist/types/index.d.ts +0 -1
  16. package/dist/types/plugin.d.ts +0 -1
  17. package/dist/types/prompt.d.ts +0 -1
  18. package/dist/types/story.d.ts +0 -1
  19. package/package.json +14 -4
  20. package/dist/codegen/const.d.ts.map +0 -1
  21. package/dist/codegen/index.d.ts.map +0 -1
  22. package/dist/codegen/serialize-js.d.ts.map +0 -1
  23. package/dist/codegen/util.d.ts.map +0 -1
  24. package/dist/index.d.ts.map +0 -1
  25. package/dist/setup.d.ts.map +0 -1
  26. package/dist/state.d.ts.map +0 -1
  27. package/dist/story.d.ts.map +0 -1
  28. package/dist/type-utils.d.ts.map +0 -1
  29. package/dist/types/command.d.ts.map +0 -1
  30. package/dist/types/config.d.ts.map +0 -1
  31. package/dist/types/index.d.ts.map +0 -1
  32. package/dist/types/plugin.d.ts.map +0 -1
  33. package/dist/types/prompt.d.ts.map +0 -1
  34. package/dist/types/story.d.ts.map +0 -1
  35. package/src/__tests__/setup.spec.ts +0 -60
  36. package/src/__tests__/state.spec.ts +0 -353
  37. package/src/codegen/const.ts +0 -17
  38. package/src/codegen/index.ts +0 -3
  39. package/src/codegen/serialize-js.ts +0 -143
  40. package/src/codegen/util.ts +0 -77
  41. package/src/index.ts +0 -6
  42. package/src/setup.ts +0 -29
  43. package/src/state.ts +0 -374
  44. package/src/story.ts +0 -10
  45. package/src/type-utils.ts +0 -1
  46. package/src/types/command.ts +0 -38
  47. package/src/types/config.ts +0 -288
  48. package/src/types/index.ts +0 -5
  49. package/src/types/plugin.ts +0 -135
  50. package/src/types/prompt.ts +0 -25
  51. package/src/types/story.ts +0 -221
  52. package/tsconfig.json +0 -51
@@ -1,2 +1 @@
1
1
  export declare const voidElements: string[];
2
- //# sourceMappingURL=const.d.ts.map
@@ -1,4 +1,3 @@
1
1
  export * from './const.js';
2
2
  export * from './serialize-js.js';
3
3
  export * from './util.js';
4
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export declare function serializeJs(value: any): string;
2
- //# sourceMappingURL=serialize-js.d.ts.map
@@ -8,4 +8,3 @@ interface AutoBuildingOject {
8
8
  }
9
9
  export declare function createAutoBuildingObject(format?: (key: string) => string, specialKeysHandler?: (target: any, p: string | symbol) => (() => unknown) | null, key?: string, depth?: number): AutoBuildingOject;
10
10
  export {};
11
- //# sourceMappingURL=util.d.ts.map
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export * from './codegen/index.js';
2
2
  export * from './setup.js';
3
3
  export * from './state.js';
4
+ export * from './story-error.js';
4
5
  export * from './story.js';
5
6
  export * from './type-utils.js';
6
7
  export * from './types/index.js';
7
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './codegen/index.js';
2
2
  export * from './setup.js';
3
3
  export * from './state.js';
4
+ export * from './story-error.js';
4
5
  export * from './story.js';
5
6
  export * from './type-utils.js';
6
7
  export * from './types/index.js';
package/dist/setup.d.ts CHANGED
@@ -10,4 +10,3 @@ export type SetupModule = Record<string, unknown> | undefined;
10
10
  * materialized, so the lookup happens at runtime where it belongs.
11
11
  */
12
12
  export declare function getSetupHook<T>(mod: SetupModule, name: string | string[]): T | undefined;
13
- //# sourceMappingURL=setup.d.ts.map
package/dist/state.d.ts CHANGED
@@ -81,4 +81,3 @@ export declare function createStateBaseline(): {
81
81
  */
82
82
  record(changes: any): void;
83
83
  };
84
- //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1,13 @@
1
+ export declare const SANDBOX_ERROR = "__poveste:sandbox-error";
2
+ export interface StoryError {
3
+ message: string;
4
+ stack?: string;
5
+ /**
6
+ * Which occupant threw. A warm realm is retargeted rather than reloaded
7
+ * (#240), so the host has to reject a report from the previous one.
8
+ */
9
+ storyId?: string;
10
+ variantId?: string;
11
+ }
12
+ export declare function toStoryError(error: unknown): Pick<StoryError, 'message' | 'stack'>;
13
+ export declare function reportStoryError(error: unknown, occupant?: Pick<StoryError, 'storyId' | 'variantId'>): void;
@@ -0,0 +1,30 @@
1
+ // A story whose component throws still renders — Vue routes the error to
2
+ // `console.error` and leaves the template on screen, so the book shows a broken
3
+ // component as if it worked (#323). Nothing in the app can observe that on its
4
+ // own: the throw never reaches `window.onerror`, so it has to be reported from
5
+ // inside the framework that swallowed it.
6
+ //
7
+ // This lives in `shared` because both the app and every plugin can import it,
8
+ // which keeps the sandbox-to-host contract in one place.
9
+ export const SANDBOX_ERROR = '__poveste:sandbox-error';
10
+ export function toStoryError(error) {
11
+ if (error instanceof Error) {
12
+ return { message: error.message || String(error), stack: error.stack };
13
+ }
14
+ return { message: typeof error === 'string' ? error : String(error) };
15
+ }
16
+ // Reports from inside the sandbox to the host. A no-op outside one, so a plugin
17
+ // can call it unconditionally — stories also render in the host document
18
+ // itself, where there is no parent to tell.
19
+ export function reportStoryError(error, occupant = {}) {
20
+ if (typeof window === 'undefined' || !window.parent || window.parent === window) {
21
+ return;
22
+ }
23
+ const payload = { ...toStoryError(error), ...occupant };
24
+ try {
25
+ window.parent.postMessage({ type: SANDBOX_ERROR, ...payload }, window.location.origin);
26
+ }
27
+ catch {
28
+ // Reporting a failure must not become one.
29
+ }
30
+ }
package/dist/story.d.ts CHANGED
@@ -1,2 +1 @@
1
1
  export declare const omitInheritStoryProps: string[];
2
- //# sourceMappingURL=story.d.ts.map
@@ -1,2 +1 @@
1
1
  export type Awaitable<T> = Promise<T> | T;
2
- //# sourceMappingURL=type-utils.d.ts.map
@@ -33,4 +33,3 @@ export interface PluginCommand<TParams = Record<string, any>> extends Command {
33
33
  importName: string;
34
34
  };
35
35
  }
36
- //# sourceMappingURL=command.d.ts.map
@@ -275,4 +275,3 @@ export interface PovesteConfig {
275
275
  };
276
276
  }
277
277
  export type ConfigMode = 'build' | 'dev';
278
- //# sourceMappingURL=config.d.ts.map
@@ -3,4 +3,3 @@ export * from './config.js';
3
3
  export * from './plugin.js';
4
4
  export * from './prompt.js';
5
5
  export * from './story.js';
6
- //# sourceMappingURL=index.d.ts.map
@@ -114,4 +114,3 @@ export interface Plugin {
114
114
  */
115
115
  vitePlugins?: (plugins: VitePlugin[]) => Awaitable<void>;
116
116
  }
117
- //# sourceMappingURL=plugin.d.ts.map
@@ -17,4 +17,3 @@ export interface SelectPrompt extends PromptBase<string> {
17
17
  options: SelectPromptOption[] | ((search: string, answers: Record<string, any>) => Awaitable<SelectPromptOption[]>);
18
18
  }
19
19
  export type Prompt = TextPrompt | SelectPrompt;
20
- //# sourceMappingURL=prompt.d.ts.map
@@ -202,4 +202,3 @@ export interface ServerRunPayload {
202
202
  storyData: ServerStory[];
203
203
  el: HTMLElement;
204
204
  }
205
- //# sourceMappingURL=story.d.ts.map
package/package.json CHANGED
@@ -1,29 +1,39 @@
1
1
  {
2
2
  "name": "@poveste/shared",
3
3
  "type": "module",
4
- "version": "0.6.1",
4
+ "version": "0.8.0",
5
5
  "description": "Shared utilities for Poveste",
6
6
  "author": {
7
7
  "name": "Sorin Gitlan"
8
8
  },
9
9
  "license": "MIT",
10
+ "homepage": "https://poveste.dev",
10
11
  "repository": {
11
12
  "url": "https://github.com/poveste-dev/poveste.git",
12
13
  "type": "git",
13
14
  "directory": "packages/poveste-shared"
14
15
  },
16
+ "bugs": "https://github.com/poveste-dev/poveste/issues",
17
+ "keywords": [
18
+ "poveste"
19
+ ],
15
20
  "publishConfig": {
16
21
  "access": "public"
17
22
  },
18
23
  "sideEffects": false,
19
24
  "exports": {
20
25
  ".": "./dist/index.js",
21
- "./*": "./*",
22
- "./client-node": "./dist/client/server/run.js"
26
+ "./*": "./*"
23
27
  },
24
28
  "main": "./dist/index.js",
25
29
  "module": "./dist/index.js",
26
30
  "types": "./dist/index.d.ts",
31
+ "files": [
32
+ "dist"
33
+ ],
34
+ "engines": {
35
+ "node": "^22.22.2 || ^24.15.0 || >=26.0.0"
36
+ },
27
37
  "peerDependencies": {
28
38
  "vite": "^8.0.0"
29
39
  },
@@ -34,7 +44,7 @@
34
44
  "pathe": "^1.1.2",
35
45
  "picocolors": "^1.1.1",
36
46
  "unhead": "^3.1.0",
37
- "@poveste/vendors": "^0.6.1"
47
+ "@poveste/vendors": "^0.8.0"
38
48
  },
39
49
  "devDependencies": {
40
50
  "typescript": "5.6.3",
@@ -1 +0,0 @@
1
- {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../src/codegen/const.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,UAgBxB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codegen/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,WAAW,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"serialize-js.d.ts","sourceRoot":"","sources":["../../src/codegen/serialize-js.ts"],"names":[],"mappings":"AAQA,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CA4B9C"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/codegen/util.ts"],"names":[],"mappings":"AAAA,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,SAAI,YAEhD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,UAiBpC;AAED,UAAU,iBAAiB;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,iBAAiB,CAAC,CAAA;IACjD,MAAM,EAAE,GAAG,CAAA;IACX,KAAK,EAAE,GAAG,CAAA;CACX;AAED,wBAAgB,wBAAwB,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,EAAE,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,OAAO,CAAC,GAAG,IAAI,EAAE,GAAG,SAAK,EAAE,KAAK,SAAI,GAAG,iBAAiB,CA8CnM"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;AAE7D;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAgBxF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAAA,wBAAgB,KAAK,CAAC,IAAI,KAAA,OAczB;AAED,wBAAgB,IAAI,CAAC,IAAI,KAAA,EAAE,IAAI,EAAE,MAAM,EAAE,MAQxC;AAWD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,OAAO,CAsC7F;AA4BD;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,UAAQ,WAiEnE;AA2BD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CA4B9E;AA4DD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB;IAI/B;;;;OAIG;eACQ,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAU3C;;;;;;;;;;OAUG;oBACa,GAAG;EAItB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../src/story.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,UASjC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"type-utils.d.ts","sourceRoot":"","sources":["../src/type-utils.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/types/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAA;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEhD,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,MAAM,WAAW,OAAQ,SAAQ,oBAAoB;IACnD,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,oBAAoB,KAAK,OAAO,CAAA;IAC/C,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,oBAAoB,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAClG,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,oBAAoB,KAAK,OAAO,CAAA;CACnF;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,oBAAoB,CAAA;AAE1D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,6BAA6B,CAAA;IACpC,YAAY,EAAE,KAAK,CAAA;IACnB,cAAc,EAAE,OAAO,CAAA;CACxB;AAED,MAAM,WAAW,aAAa,CAC5B,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAC7B,SAAQ,OAAO;IACf,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAA;IAC3C,eAAe,CAAC,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAA;CAChE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/types/plugin.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/types/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,WAAW,UAAU,CAAC,MAAM;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,MAAM,CAAC,CAAA;CACnE;AAED,MAAM,WAAW,UAAW,SAAQ,UAAU,CAAC,MAAM,CAAC;IACpD,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAE1E,MAAM,WAAW,YAAa,SAAQ,UAAU,CAAC,MAAM,CAAC;IACtD,IAAI,EAAE,QAAQ,CAAA;IACd,OAAO,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,SAAS,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAA;CACpH;AAKD,MAAM,MAAM,MAAM,GAAG,UAAU,GAC3B,YAAY,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"story.d.ts","sourceRoot":"","sources":["../../src/types/story.ts"],"names":[],"mappings":"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"}
@@ -1,60 +0,0 @@
1
- import { afterEach, describe, expect, it, vi } from 'vitest'
2
- import { getSetupHook } from '../setup.js'
3
-
4
- afterEach(() => {
5
- vi.restoreAllMocks()
6
- })
7
-
8
- describe('getSetupHook', () => {
9
- it('reads a hook by a single name', () => {
10
- const hook = () => {}
11
- expect(getSetupHook({ setupVanilla: hook }, 'setupVanilla')).toBe(hook)
12
- })
13
-
14
- it('ignores a non-function export of the right name', () => {
15
- expect(getSetupHook({ setupVanilla: 'not a function' }, 'setupVanilla')).toBeUndefined()
16
- expect(getSetupHook({ setupVanilla: undefined }, 'setupVanilla')).toBeUndefined()
17
- })
18
-
19
- it('tolerates a missing module', () => {
20
- expect(getSetupHook(undefined, 'setupVanilla')).toBeUndefined()
21
- })
22
-
23
- it.each([
24
- ['the established name', 'setupVue3'],
25
- ['the unnumbered alias', 'setupVue'],
26
- ])('finds a hook exported under %s', (_label, name) => {
27
- const hook = () => {}
28
- expect(getSetupHook({ [name]: hook }, ['setupVue3', 'setupVue'])).toBe(hook)
29
- })
30
-
31
- it('returns undefined when none of the names are exported', () => {
32
- expect(getSetupHook({ setupSvelte5: () => {} }, ['setupVue3', 'setupVue'])).toBeUndefined()
33
- })
34
-
35
- describe('when a setup file exports more than one alias', () => {
36
- // The whole point of the alias is that existing files keep working, so the
37
- // established name has to win regardless of the order they are declared in.
38
- it('runs the earlier name in the list, not the first declared', () => {
39
- const legacy = () => {}
40
- const renamed = () => {}
41
- expect(getSetupHook({ setupVue: renamed, setupVue3: legacy }, ['setupVue3', 'setupVue'])).toBe(legacy)
42
- })
43
-
44
- it('warns, naming which one actually runs', () => {
45
- const warn = vi.spyOn(console, 'warn').mockImplementation(() => {})
46
- getSetupHook({ setupVue3: () => {}, setupVue: () => {} }, ['setupVue3', 'setupVue'])
47
-
48
- expect(warn).toHaveBeenCalledOnce()
49
- const message = warn.mock.calls[0][0] as string
50
- expect(message).toContain('setupVue3, setupVue')
51
- expect(message).toContain('Only setupVue3 runs')
52
- })
53
-
54
- it('stays quiet when only one is exported', () => {
55
- const warn = vi.spyOn(console, 'warn').mockImplementation(() => {})
56
- getSetupHook({ setupVue: () => {} }, ['setupVue3', 'setupVue'])
57
- expect(warn).not.toHaveBeenCalled()
58
- })
59
- })
60
- })