@sanity/cli-core 0.0.2-alpha.0 → 0.0.2-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/SanityCommand.d.ts +1 -1
  2. package/dist/SanityCommand.js.map +1 -1
  3. package/dist/config/__tests__/findProjectRootSync.test.js +112 -0
  4. package/dist/config/__tests__/findProjectRootSync.test.js.map +1 -0
  5. package/dist/config/__tests__/getCliConfigSync.test.js +31 -0
  6. package/dist/config/__tests__/getCliConfigSync.test.js.map +1 -0
  7. package/dist/config/cli/getCliConfig.d.ts +1 -1
  8. package/dist/config/cli/getCliConfig.js +9 -8
  9. package/dist/config/cli/getCliConfig.js.map +1 -1
  10. package/dist/config/cli/getCliConfigSync.d.ts +12 -0
  11. package/dist/config/cli/getCliConfigSync.js +51 -0
  12. package/dist/config/cli/getCliConfigSync.js.map +1 -0
  13. package/dist/config/cli/schemas.d.ts +121 -70
  14. package/dist/config/cli/schemas.js +13 -41
  15. package/dist/config/cli/schemas.js.map +1 -1
  16. package/dist/config/cli/types/cliConfig.d.ts +74 -0
  17. package/dist/config/cli/types/cliConfig.js +5 -0
  18. package/dist/config/cli/types/cliConfig.js.map +1 -0
  19. package/dist/config/cli/types/userViteConfig.d.ts +5 -0
  20. package/dist/config/cli/types/userViteConfig.js +5 -0
  21. package/dist/config/cli/types/userViteConfig.js.map +1 -0
  22. package/dist/config/findProjectRootSync.d.ts +27 -0
  23. package/dist/config/findProjectRootSync.js +82 -0
  24. package/dist/config/findProjectRootSync.js.map +1 -0
  25. package/dist/config/studio/readStudioConfig.worker.js +2 -16
  26. package/dist/config/studio/readStudioConfig.worker.js.map +1 -1
  27. package/dist/config/util/configPathsSync.d.ts +17 -0
  28. package/dist/config/util/configPathsSync.js +85 -0
  29. package/dist/config/util/configPathsSync.js.map +1 -0
  30. package/dist/config/util/isSanityV2StudioRoot.js +3 -0
  31. package/dist/config/util/isSanityV2StudioRoot.js.map +1 -1
  32. package/dist/index.d.ts +9 -1
  33. package/dist/index.js +7 -0
  34. package/dist/index.js.map +1 -1
  35. package/dist/loaders/studio/studioWorkerLoader.worker.js +9 -27
  36. package/dist/loaders/studio/studioWorkerLoader.worker.js.map +1 -1
  37. package/dist/services/apiClient.d.ts +19 -5
  38. package/dist/services/apiClient.js +18 -14
  39. package/dist/services/apiClient.js.map +1 -1
  40. package/dist/util/__tests__/createExpiringConfig.test.js +91 -0
  41. package/dist/util/__tests__/createExpiringConfig.test.js.map +1 -1
  42. package/dist/util/createExpiringConfig.d.ts +6 -1
  43. package/dist/util/createExpiringConfig.js +28 -3
  44. package/dist/util/createExpiringConfig.js.map +1 -1
  45. package/dist/util/environment/getStudioEnvironmentVariables.d.ts +12 -0
  46. package/dist/util/environment/getStudioEnvironmentVariables.js +33 -0
  47. package/dist/util/environment/getStudioEnvironmentVariables.js.map +1 -0
  48. package/dist/util/environment/mockBrowserEnvironment.d.ts +17 -0
  49. package/dist/util/environment/mockBrowserEnvironment.js +46 -0
  50. package/dist/util/environment/mockBrowserEnvironment.js.map +1 -0
  51. package/dist/util/environment/setupBrowserStubs.d.ts +10 -0
  52. package/dist/util/environment/setupBrowserStubs.js +43 -0
  53. package/dist/util/environment/setupBrowserStubs.js.map +1 -0
  54. package/dist/{loaders/studio → util/environment}/stubs.d.ts +6 -6
  55. package/dist/util/environment/stubs.js.map +1 -0
  56. package/dist/util/getEmptyAuth.d.ts +5 -0
  57. package/dist/util/getEmptyAuth.js +16 -0
  58. package/dist/util/getEmptyAuth.js.map +1 -0
  59. package/dist/util/readJsonFile.d.ts +7 -1
  60. package/dist/util/readJsonFile.js.map +1 -1
  61. package/dist/util/safeStructuredClone.js +3 -0
  62. package/dist/util/safeStructuredClone.js.map +1 -1
  63. package/dist/util/tryGetDefaultExport.d.ts +5 -0
  64. package/dist/util/tryGetDefaultExport.js +18 -0
  65. package/dist/util/tryGetDefaultExport.js.map +1 -0
  66. package/package.json +10 -9
  67. package/dist/config/cli/types.d.ts +0 -13
  68. package/dist/config/cli/types.js +0 -3
  69. package/dist/config/cli/types.js.map +0 -1
  70. package/dist/loaders/studio/stubs.js.map +0 -1
  71. /package/dist/{loaders/studio → util/environment}/stubs.js +0 -0
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Mocks a browser-like environment for processes in the main thread by:
3
+ * - Injecting browser globals (window, document, ResizeObserver, etc.)
4
+ * - Loading studio environment variables from the project's sanity installation into process.env
5
+ *
6
+ * This is useful for commands like `sanity exec` that have to run user scripts
7
+ * in the main thread of the process (but in a child process).
8
+ *
9
+ * Be cautious when using this, since it will pollute the global namespace with browser globals.
10
+ *
11
+ * If your code can run in a worker thread, you should use the `studioWorkerTask` function instead.
12
+ *
13
+ * @param basePath - The root path of the Sanity Studio project
14
+ * @returns A cleanup function that removes the injected globals and environment variables
15
+ * @internal
16
+ */
17
+ export declare function mockBrowserEnvironment(basePath: string): Promise<() => void>;
@@ -0,0 +1,46 @@
1
+ import { getStudioEnvironmentVariables } from './getStudioEnvironmentVariables.js';
2
+ import { setupBrowserStubs } from './setupBrowserStubs.js';
3
+ /**
4
+ * Mocks a browser-like environment for processes in the main thread by:
5
+ * - Injecting browser globals (window, document, ResizeObserver, etc.)
6
+ * - Loading studio environment variables from the project's sanity installation into process.env
7
+ *
8
+ * This is useful for commands like `sanity exec` that have to run user scripts
9
+ * in the main thread of the process (but in a child process).
10
+ *
11
+ * Be cautious when using this, since it will pollute the global namespace with browser globals.
12
+ *
13
+ * If your code can run in a worker thread, you should use the `studioWorkerTask` function instead.
14
+ *
15
+ * @param basePath - The root path of the Sanity Studio project
16
+ * @returns A cleanup function that removes the injected globals and environment variables
17
+ * @internal
18
+ */ export async function mockBrowserEnvironment(basePath) {
19
+ // 1. Setup browser globals
20
+ const cleanupBrowserStubs = await setupBrowserStubs();
21
+ // 2. Load and set environment variables into process.env
22
+ const envVars = await getStudioEnvironmentVariables(basePath);
23
+ const setEnvKeys = [];
24
+ const originalEnvValues = {};
25
+ for (const [key, value] of Object.entries(envVars)){
26
+ // Store original value (if any) so we can restore it
27
+ originalEnvValues[key] = process.env[key];
28
+ process.env[key] = value;
29
+ setEnvKeys.push(key);
30
+ }
31
+ // Return cleanup function
32
+ return ()=>{
33
+ // Restore or delete environment variables
34
+ for (const key of setEnvKeys){
35
+ if (originalEnvValues[key] === undefined) {
36
+ delete process.env[key];
37
+ } else {
38
+ process.env[key] = originalEnvValues[key];
39
+ }
40
+ }
41
+ // Clean up browser stubs
42
+ cleanupBrowserStubs();
43
+ };
44
+ }
45
+
46
+ //# sourceMappingURL=mockBrowserEnvironment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/util/environment/mockBrowserEnvironment.ts"],"sourcesContent":["import {getStudioEnvironmentVariables} from './getStudioEnvironmentVariables.js'\nimport {setupBrowserStubs} from './setupBrowserStubs.js'\n\n/**\n * Mocks a browser-like environment for processes in the main thread by:\n * - Injecting browser globals (window, document, ResizeObserver, etc.)\n * - Loading studio environment variables from the project's sanity installation into process.env\n *\n * This is useful for commands like `sanity exec` that have to run user scripts\n * in the main thread of the process (but in a child process).\n *\n * Be cautious when using this, since it will pollute the global namespace with browser globals.\n *\n * If your code can run in a worker thread, you should use the `studioWorkerTask` function instead.\n *\n * @param basePath - The root path of the Sanity Studio project\n * @returns A cleanup function that removes the injected globals and environment variables\n * @internal\n */\nexport async function mockBrowserEnvironment(basePath: string): Promise<() => void> {\n // 1. Setup browser globals\n const cleanupBrowserStubs = await setupBrowserStubs()\n\n // 2. Load and set environment variables into process.env\n const envVars = await getStudioEnvironmentVariables(basePath)\n const setEnvKeys: string[] = []\n const originalEnvValues: Record<string, string | undefined> = {}\n\n for (const [key, value] of Object.entries(envVars)) {\n // Store original value (if any) so we can restore it\n originalEnvValues[key] = process.env[key]\n process.env[key] = value\n setEnvKeys.push(key)\n }\n\n // Return cleanup function\n return () => {\n // Restore or delete environment variables\n for (const key of setEnvKeys) {\n if (originalEnvValues[key] === undefined) {\n delete process.env[key]\n } else {\n process.env[key] = originalEnvValues[key]\n }\n }\n\n // Clean up browser stubs\n cleanupBrowserStubs()\n }\n}\n"],"names":["getStudioEnvironmentVariables","setupBrowserStubs","mockBrowserEnvironment","basePath","cleanupBrowserStubs","envVars","setEnvKeys","originalEnvValues","key","value","Object","entries","process","env","push","undefined"],"mappings":"AAAA,SAAQA,6BAA6B,QAAO,qCAAoC;AAChF,SAAQC,iBAAiB,QAAO,yBAAwB;AAExD;;;;;;;;;;;;;;;CAeC,GACD,OAAO,eAAeC,uBAAuBC,QAAgB;IAC3D,2BAA2B;IAC3B,MAAMC,sBAAsB,MAAMH;IAElC,yDAAyD;IACzD,MAAMI,UAAU,MAAML,8BAA8BG;IACpD,MAAMG,aAAuB,EAAE;IAC/B,MAAMC,oBAAwD,CAAC;IAE/D,KAAK,MAAM,CAACC,KAAKC,MAAM,IAAIC,OAAOC,OAAO,CAACN,SAAU;QAClD,qDAAqD;QACrDE,iBAAiB,CAACC,IAAI,GAAGI,QAAQC,GAAG,CAACL,IAAI;QACzCI,QAAQC,GAAG,CAACL,IAAI,GAAGC;QACnBH,WAAWQ,IAAI,CAACN;IAClB;IAEA,0BAA0B;IAC1B,OAAO;QACL,0CAA0C;QAC1C,KAAK,MAAMA,OAAOF,WAAY;YAC5B,IAAIC,iBAAiB,CAACC,IAAI,KAAKO,WAAW;gBACxC,OAAOH,QAAQC,GAAG,CAACL,IAAI;YACzB,OAAO;gBACLI,QAAQC,GAAG,CAACL,IAAI,GAAGD,iBAAiB,CAACC,IAAI;YAC3C;QACF;QAEA,yBAAyB;QACzBJ;IACF;AACF"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Sets up browser globals (window, document, etc.) in the global scope.
3
+ *
4
+ * This is used by both mockBrowserEnvironment (for child processes) and
5
+ * studioWorkerLoader (for worker threads) to provide a browser-like environment.
6
+ *
7
+ * @returns A cleanup function that removes the injected globals
8
+ * @internal
9
+ */
10
+ export declare function setupBrowserStubs(): Promise<() => void>;
@@ -0,0 +1,43 @@
1
+ import * as stubs from './stubs.js';
2
+ /**
3
+ * Sets up browser globals (window, document, etc.) in the global scope.
4
+ *
5
+ * This is used by both mockBrowserEnvironment (for child processes) and
6
+ * studioWorkerLoader (for worker threads) to provide a browser-like environment.
7
+ *
8
+ * @returns A cleanup function that removes the injected globals
9
+ * @internal
10
+ */ export async function setupBrowserStubs() {
11
+ // Guard against double-registering
12
+ if (globalThis.window && '__mockedBySanity' in globalThis.window) {
13
+ return ()=>{
14
+ /* intentional noop - already mocked */ };
15
+ }
16
+ // Inject browser stubs into global scope
17
+ const mockStubs = stubs;
18
+ const mockedGlobalThis = globalThis;
19
+ const stubbedKeys = [];
20
+ for(const key in stubs){
21
+ if (!(key in mockedGlobalThis)) {
22
+ mockedGlobalThis[key] = mockStubs[key];
23
+ stubbedKeys.push(key);
24
+ }
25
+ }
26
+ // Add marker to window to detect double-mocking
27
+ if (globalThis.window) {
28
+ ;
29
+ globalThis.window.__mockedBySanity = true;
30
+ }
31
+ // Return cleanup function
32
+ return ()=>{
33
+ for (const key of stubbedKeys){
34
+ delete mockedGlobalThis[key];
35
+ }
36
+ // Remove marker
37
+ if (globalThis.window) {
38
+ delete globalThis.window.__mockedBySanity;
39
+ }
40
+ };
41
+ }
42
+
43
+ //# sourceMappingURL=setupBrowserStubs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/util/environment/setupBrowserStubs.ts"],"sourcesContent":["import * as stubs from './stubs.js'\n\n/**\n * Sets up browser globals (window, document, etc.) in the global scope.\n *\n * This is used by both mockBrowserEnvironment (for child processes) and\n * studioWorkerLoader (for worker threads) to provide a browser-like environment.\n *\n * @returns A cleanup function that removes the injected globals\n * @internal\n */\nexport async function setupBrowserStubs(): Promise<() => void> {\n // Guard against double-registering\n if (globalThis.window && '__mockedBySanity' in globalThis.window) {\n return () => {\n /* intentional noop - already mocked */\n }\n }\n\n // Inject browser stubs into global scope\n const mockStubs = stubs as unknown as Record<string, unknown>\n const mockedGlobalThis: Record<string, unknown> = globalThis\n const stubbedKeys: string[] = []\n\n for (const key in stubs) {\n if (!(key in mockedGlobalThis)) {\n mockedGlobalThis[key] = mockStubs[key]\n stubbedKeys.push(key)\n }\n }\n\n // Add marker to window to detect double-mocking\n if (globalThis.window) {\n ;(globalThis.window as unknown as Record<string, unknown>).__mockedBySanity = true\n }\n\n // Return cleanup function\n return () => {\n for (const key of stubbedKeys) {\n delete mockedGlobalThis[key]\n }\n\n // Remove marker\n if (globalThis.window) {\n delete (globalThis.window as unknown as Record<string, unknown>).__mockedBySanity\n }\n }\n}\n"],"names":["stubs","setupBrowserStubs","globalThis","window","mockStubs","mockedGlobalThis","stubbedKeys","key","push","__mockedBySanity"],"mappings":"AAAA,YAAYA,WAAW,aAAY;AAEnC;;;;;;;;CAQC,GACD,OAAO,eAAeC;IACpB,mCAAmC;IACnC,IAAIC,WAAWC,MAAM,IAAI,sBAAsBD,WAAWC,MAAM,EAAE;QAChE,OAAO;QACL,qCAAqC,GACvC;IACF;IAEA,yCAAyC;IACzC,MAAMC,YAAYJ;IAClB,MAAMK,mBAA4CH;IAClD,MAAMI,cAAwB,EAAE;IAEhC,IAAK,MAAMC,OAAOP,MAAO;QACvB,IAAI,CAAEO,CAAAA,OAAOF,gBAAe,GAAI;YAC9BA,gBAAgB,CAACE,IAAI,GAAGH,SAAS,CAACG,IAAI;YACtCD,YAAYE,IAAI,CAACD;QACnB;IACF;IAEA,gDAAgD;IAChD,IAAIL,WAAWC,MAAM,EAAE;;QACnBD,WAAWC,MAAM,CAAwCM,gBAAgB,GAAG;IAChF;IAEA,0BAA0B;IAC1B,OAAO;QACL,KAAK,MAAMF,OAAOD,YAAa;YAC7B,OAAOD,gBAAgB,CAACE,IAAI;QAC9B;QAEA,gBAAgB;QAChB,IAAIL,WAAWC,MAAM,EAAE;YACrB,OAAO,AAACD,WAAWC,MAAM,CAAwCM,gBAAgB;QACnF;IACF;AACF"}
@@ -76,21 +76,21 @@ export declare const onabort: ((this: GlobalEventHandlers, ev: UIEvent) => any)
76
76
  export declare const onafterprint: ((this: WindowEventHandlers, ev: Event) => any) | null;
77
77
  export declare const onautocomplete: any;
78
78
  export declare const onautocompleteerror: any;
79
- export declare const onauxclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
79
+ export declare const onauxclick: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
80
80
  export declare const onbeforeinput: ((this: GlobalEventHandlers, ev: InputEvent) => any) | null;
81
- export declare const onbeforematch: any;
81
+ export declare const onbeforematch: ((this: GlobalEventHandlers, ev: Event) => any) | null;
82
82
  export declare const onbeforeprint: ((this: WindowEventHandlers, ev: Event) => any) | null;
83
- export declare const onbeforetoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;
83
+ export declare const onbeforetoggle: ((this: GlobalEventHandlers, ev: ToggleEvent) => any) | null;
84
84
  export declare const onbeforeunload: ((this: WindowEventHandlers, ev: BeforeUnloadEvent) => any) | null;
85
85
  export declare const onblur: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null;
86
86
  export declare const oncancel: ((this: GlobalEventHandlers, ev: Event) => any) | null;
87
87
  export declare const oncanplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
88
88
  export declare const oncanplaythrough: ((this: GlobalEventHandlers, ev: Event) => any) | null;
89
89
  export declare const onchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
90
- export declare const onclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
90
+ export declare const onclick: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
91
91
  export declare const onclose: ((this: GlobalEventHandlers, ev: Event) => any) | null;
92
92
  export declare const oncontextlost: ((this: GlobalEventHandlers, ev: Event) => any) | null;
93
- export declare const oncontextmenu: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
93
+ export declare const oncontextmenu: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
94
94
  export declare const oncontextrestored: ((this: GlobalEventHandlers, ev: Event) => any) | null;
95
95
  export declare const oncopy: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
96
96
  export declare const oncuechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
@@ -156,7 +156,7 @@ export declare const onstorage: ((this: WindowEventHandlers, ev: StorageEvent) =
156
156
  export declare const onsubmit: ((this: GlobalEventHandlers, ev: SubmitEvent) => any) | null;
157
157
  export declare const onsuspend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
158
158
  export declare const ontimeupdate: ((this: GlobalEventHandlers, ev: Event) => any) | null;
159
- export declare const ontoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;
159
+ export declare const ontoggle: ((this: GlobalEventHandlers, ev: ToggleEvent) => any) | null;
160
160
  export declare const ontouchcancel: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
161
161
  export declare const ontouchend: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
162
162
  export declare const ontouchmove: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/util/environment/stubs.ts"],"sourcesContent":["import {JSDOM} from 'jsdom'\n\nconst html = `<!doctype html>\n<html>\n <head><meta charset=\"utf-8\"></head>\n <body></body>\n</html>`\n\nconst dom = new JSDOM(html, {\n pretendToBeVisual: true,\n url: 'http://localhost:3333/',\n})\n\n// Special handling of certain globals\nif (typeof dom.window.document.execCommand !== 'function') {\n // Crashes ace editor without this :/\n dom.window.document.execCommand = function execCommand(\n // Provide the right arity for the function, even if unused\n _commandName: string,\n _showDefaultUI: boolean,\n _valueArgument: unknown,\n ) {\n // Return false to indicate \"unsupported\"\n return false\n }\n}\n\nif (dom.window.requestIdleCallback === undefined) {\n dom.window.requestIdleCallback = (cb: IdleRequestCallback) => setTimeout(cb, 10)\n}\n\nif (dom.window.cancelIdleCallback === undefined) {\n dom.window.cancelIdleCallback = (id: number) => clearTimeout(id)\n}\n\nif (dom.window.ResizeObserver === undefined) {\n dom.window.ResizeObserver = class ResizeObserver {\n // eslint-disable-next-line @typescript-eslint/no-useless-constructor\n constructor(_callback: unknown) {}\n disconnect() {}\n observe(_target: unknown, _options: unknown) {}\n unobserve(_target: unknown) {}\n }\n}\n\nif (dom.window.IntersectionObserver === undefined) {\n dom.window.IntersectionObserver = class IntersectionObserver {\n options: {root?: unknown; rootMargin?: string; threshold?: number}\n constructor(\n _callback: unknown,\n options?: {root?: unknown; rootMargin?: string; threshold?: number},\n ) {\n this.options = options || {}\n }\n get root() {\n return this.options.root || null\n }\n get rootMargin() {\n return this.options.rootMargin || ''\n }\n get thresholds() {\n return Array.isArray(this.options.threshold)\n ? this.options.threshold\n : [this.options.threshold || 0]\n }\n\n disconnect() {}\n observe(_el: unknown) {}\n takeRecords() {\n return []\n }\n unobserve(_el: unknown) {}\n }\n}\n\nif (dom.window.matchMedia === undefined) {\n dom.window.matchMedia = (_qs: unknown) =>\n ({\n matches: false,\n media: '',\n onchange: null,\n }) as MediaQueryList\n}\n\n// Generic jsdom 1:1\nexport const alert = dom.window.alert\nexport const atob = dom.window.atob\nexport const blur = dom.window.blur\nexport const btoa = dom.window.btoa\nexport const cancelAnimationFrame = dom.window.cancelAnimationFrame\nexport const captureEvents = dom.window.captureEvents\nexport const clearInterval = dom.window.clearInterval\nexport const clearTimeout = dom.window.clearTimeout\nexport const close = dom.window.close\nexport const confirm = dom.window.confirm\nexport const console = dom.window.console\nexport const crypto = dom.window.crypto\nexport const CSSImportRule = dom.window.CSSImportRule\nexport const CSSMediaRule = dom.window.CSSMediaRule\nexport const CSSRule = dom.window.CSSRule\nexport const CSSStyleDeclaration = dom.window.CSSStyleDeclaration\nexport const CSSStyleRule = dom.window.CSSStyleRule\nexport const CSSStyleSheet = dom.window.CSSStyleSheet\nexport const customElements = dom.window.customElements\nexport const devicePixelRatio = dom.window.devicePixelRatio\nexport const document = dom.window.document\nexport const event = dom.window.event\nexport const external = dom.window.external\nexport const focus = dom.window.focus\nexport const frameElement = dom.window.frameElement\nexport const frames = dom.window.frames\nexport const getComputedStyle = dom.window.getComputedStyle\nexport const getSelection = dom.window.getSelection\nexport const history = dom.window.history\nexport const innerHeight = dom.window.innerHeight\nexport const innerWidth = dom.window.innerWidth\nexport const length = dom.window.length\nexport const localStorage = dom.window.localStorage\nexport const location = dom.window.location\nexport const locationbar = dom.window.locationbar\nexport const MediaList = dom.window.MediaList\nexport const menubar = dom.window.menubar\nexport const moveBy = dom.window.moveBy\nexport const moveTo = dom.window.moveTo\nexport const name = dom.window.name\nexport const navigator = dom.window.navigator\nexport const onabort = dom.window.onabort\nexport const onafterprint = dom.window.onafterprint\nexport const onautocomplete = dom.window.onautocomplete\nexport const onautocompleteerror = dom.window.onautocompleteerror\nexport const onauxclick = dom.window.onauxclick\nexport const onbeforeinput = dom.window.onbeforeinput\nexport const onbeforematch = dom.window.onbeforematch\nexport const onbeforeprint = dom.window.onbeforeprint\nexport const onbeforetoggle = dom.window.onbeforetoggle\nexport const onbeforeunload = dom.window.onbeforeunload\nexport const onblur = dom.window.onblur\nexport const oncancel = dom.window.oncancel\nexport const oncanplay = dom.window.oncanplay\nexport const oncanplaythrough = dom.window.oncanplaythrough\nexport const onchange = dom.window.onchange\nexport const onclick = dom.window.onclick\nexport const onclose = dom.window.onclose\nexport const oncontextlost = dom.window.oncontextlost\nexport const oncontextmenu = dom.window.oncontextmenu\nexport const oncontextrestored = dom.window.oncontextrestored\nexport const oncopy = dom.window.oncopy\nexport const oncuechange = dom.window.oncuechange\nexport const oncut = dom.window.oncut\nexport const ondblclick = dom.window.ondblclick\nexport const ondrag = dom.window.ondrag\nexport const ondragend = dom.window.ondragend\nexport const ondragenter = dom.window.ondragenter\nexport const ondragleave = dom.window.ondragleave\nexport const ondragover = dom.window.ondragover\nexport const ondragstart = dom.window.ondragstart\nexport const ondrop = dom.window.ondrop\nexport const ondurationchange = dom.window.ondurationchange\nexport const onemptied = dom.window.onemptied\nexport const onended = dom.window.onended\nexport const onerror = dom.window.onerror\nexport const onfocus = dom.window.onfocus\nexport const onformdata = dom.window.onformdata\nexport const onhashchange = dom.window.onhashchange\nexport const oninput = dom.window.oninput\nexport const oninvalid = dom.window.oninvalid\nexport const onkeydown = dom.window.onkeydown\nexport const onkeypress = dom.window.onkeypress\nexport const onkeyup = dom.window.onkeyup\nexport const onlanguagechange = dom.window.onlanguagechange\nexport const onload = dom.window.onload\nexport const onloadeddata = dom.window.onloadeddata\nexport const onloadedmetadata = dom.window.onloadedmetadata\nexport const onloadstart = dom.window.onloadstart\nexport const onmessage = dom.window.onmessage\nexport const onmessageerror = dom.window.onmessageerror\nexport const onmousedown = dom.window.onmousedown\nexport const onmouseenter = dom.window.onmouseenter\nexport const onmouseleave = dom.window.onmouseleave\nexport const onmousemove = dom.window.onmousemove\nexport const onmouseout = dom.window.onmouseout\nexport const onmouseover = dom.window.onmouseover\nexport const onmouseup = dom.window.onmouseup\nexport const onoffline = dom.window.onoffline\nexport const ononline = dom.window.ononline\nexport const onpagehide = dom.window.onpagehide\nexport const onpageshow = dom.window.onpageshow\nexport const onpaste = dom.window.onpaste\nexport const onpause = dom.window.onpause\nexport const onplay = dom.window.onplay\nexport const onplaying = dom.window.onplaying\nexport const onpopstate = dom.window.onpopstate\nexport const onprogress = dom.window.onprogress\nexport const onratechange = dom.window.onratechange\nexport const onrejectionhandled = dom.window.onrejectionhandled\nexport const onreset = dom.window.onreset\nexport const onresize = dom.window.onresize\nexport const onscroll = dom.window.onscroll\nexport const onscrollend = dom.window.onscrollend\nexport const onsecuritypolicyviolation = dom.window.onsecuritypolicyviolation\nexport const onseeked = dom.window.onseeked\nexport const onseeking = dom.window.onseeking\nexport const onselect = dom.window.onselect\nexport const onslotchange = dom.window.onslotchange\nexport const onsort = dom.window.onsort\nexport const onstalled = dom.window.onstalled\nexport const onstorage = dom.window.onstorage\nexport const onsubmit = dom.window.onsubmit\nexport const onsuspend = dom.window.onsuspend\nexport const ontimeupdate = dom.window.ontimeupdate\nexport const ontoggle = dom.window.ontoggle\nexport const ontouchcancel = dom.window.ontouchcancel\nexport const ontouchend = dom.window.ontouchend\nexport const ontouchmove = dom.window.ontouchmove\nexport const ontouchstart = dom.window.ontouchstart\nexport const onunhandledrejection = dom.window.onunhandledrejection\nexport const onunload = dom.window.onunload\nexport const onvolumechange = dom.window.onvolumechange\nexport const onwaiting = dom.window.onwaiting\nexport const onwebkitanimationend = dom.window.onwebkitanimationend\nexport const onwebkitanimationiteration = dom.window.onwebkitanimationiteration\nexport const onwebkitanimationstart = dom.window.onwebkitanimationstart\nexport const onwebkittransitionend = dom.window.onwebkittransitionend\nexport const onwheel = dom.window.onwheel\nexport const open = dom.window.open\nexport const origin = dom.window.origin\nexport const outerHeight = dom.window.outerHeight\nexport const outerWidth = dom.window.outerWidth\nexport const pageXOffset = dom.window.pageXOffset\nexport const pageYOffset = dom.window.pageYOffset\nexport const parent = dom.window.parent\nexport const performance = dom.window.performance\nexport const personalbar = dom.window.personalbar\nexport const postMessage = dom.window.postMessage\nexport const print = dom.window.print\nexport const prompt = dom.window.prompt\nexport const queueMicrotask = dom.window.queueMicrotask\nexport const releaseEvents = dom.window.releaseEvents\nexport const requestAnimationFrame = dom.window.requestAnimationFrame\nexport const resizeBy = dom.window.resizeBy\nexport const resizeTo = dom.window.resizeTo\nexport const screen = dom.window.screen\nexport const screenLeft = dom.window.screenLeft\nexport const screenTop = dom.window.screenTop\nexport const screenX = dom.window.screenX\nexport const screenY = dom.window.screenY\nexport const scroll = dom.window.scroll\nexport const scrollbars = dom.window.scrollbars\nexport const scrollBy = dom.window.scrollBy\nexport const scrollTo = dom.window.scrollTo\nexport const scrollX = dom.window.scrollX\nexport const scrollY = dom.window.scrollY\nexport const self = dom.window.self\nexport const sessionStorage = dom.window.sessionStorage\nexport const setInterval = dom.window.setInterval\nexport const setTimeout = dom.window.setTimeout\nexport const status = dom.window.status\nexport const statusbar = dom.window.statusbar\nexport const stop = dom.window.stop\nexport const StyleSheet = dom.window.StyleSheet\nexport const toolbar = dom.window.toolbar\nexport const top = dom.window.top\nexport const window = dom.window\nexport const XPathEvaluator = dom.window.XPathEvaluator\nexport const XPathException = dom.window.XPathException\nexport const XPathExpression = dom.window.XPathExpression\nexport const XPathResult = dom.window.XPathResult\n\n// Extended properties\nexport const requestIdleCallback = dom.window.requestIdleCallback\nexport const cancelIdleCallback = dom.window.cancelIdleCallback\nexport const ResizeObserver = dom.window.ResizeObserver\nexport const IntersectionObserver = dom.window.IntersectionObserver\nexport const matchMedia = dom.window.matchMedia\n"],"names":["JSDOM","html","dom","pretendToBeVisual","url","window","document","execCommand","_commandName","_showDefaultUI","_valueArgument","requestIdleCallback","undefined","cb","setTimeout","cancelIdleCallback","id","clearTimeout","ResizeObserver","_callback","disconnect","observe","_target","_options","unobserve","IntersectionObserver","options","root","rootMargin","thresholds","Array","isArray","threshold","_el","takeRecords","matchMedia","_qs","matches","media","onchange","alert","atob","blur","btoa","cancelAnimationFrame","captureEvents","clearInterval","close","confirm","console","crypto","CSSImportRule","CSSMediaRule","CSSRule","CSSStyleDeclaration","CSSStyleRule","CSSStyleSheet","customElements","devicePixelRatio","event","external","focus","frameElement","frames","getComputedStyle","getSelection","history","innerHeight","innerWidth","length","localStorage","location","locationbar","MediaList","menubar","moveBy","moveTo","name","navigator","onabort","onafterprint","onautocomplete","onautocompleteerror","onauxclick","onbeforeinput","onbeforematch","onbeforeprint","onbeforetoggle","onbeforeunload","onblur","oncancel","oncanplay","oncanplaythrough","onclick","onclose","oncontextlost","oncontextmenu","oncontextrestored","oncopy","oncuechange","oncut","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","onformdata","onhashchange","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onlanguagechange","onload","onloadeddata","onloadedmetadata","onloadstart","onmessage","onmessageerror","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onoffline","ononline","onpagehide","onpageshow","onpaste","onpause","onplay","onplaying","onpopstate","onprogress","onratechange","onrejectionhandled","onreset","onresize","onscroll","onscrollend","onsecuritypolicyviolation","onseeked","onseeking","onselect","onslotchange","onsort","onstalled","onstorage","onsubmit","onsuspend","ontimeupdate","ontoggle","ontouchcancel","ontouchend","ontouchmove","ontouchstart","onunhandledrejection","onunload","onvolumechange","onwaiting","onwebkitanimationend","onwebkitanimationiteration","onwebkitanimationstart","onwebkittransitionend","onwheel","open","origin","outerHeight","outerWidth","pageXOffset","pageYOffset","parent","performance","personalbar","postMessage","print","prompt","queueMicrotask","releaseEvents","requestAnimationFrame","resizeBy","resizeTo","screen","screenLeft","screenTop","screenX","screenY","scroll","scrollbars","scrollBy","scrollTo","scrollX","scrollY","self","sessionStorage","setInterval","status","statusbar","stop","StyleSheet","toolbar","top","XPathEvaluator","XPathException","XPathExpression","XPathResult"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare function getEmptyAuth(): {
2
+ authenticated: boolean;
3
+ client: import("@sanity/client").SanityClient;
4
+ currentUser: null;
5
+ };
@@ -0,0 +1,16 @@
1
+ import { createClient } from '@sanity/client';
2
+ export function getEmptyAuth() {
3
+ return {
4
+ authenticated: false,
5
+ client: createClient({
6
+ apiHost: 'http://localhost',
7
+ apiVersion: '2025-02-01',
8
+ projectId: 'unused',
9
+ requestTagPrefix: 'sanity.cli',
10
+ useCdn: false
11
+ }),
12
+ currentUser: null
13
+ };
14
+ }
15
+
16
+ //# sourceMappingURL=getEmptyAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/util/getEmptyAuth.ts"],"sourcesContent":["import {createClient} from '@sanity/client'\n\nexport function getEmptyAuth() {\n return {\n authenticated: false,\n client: createClient({\n apiHost: 'http://localhost',\n apiVersion: '2025-02-01',\n projectId: 'unused',\n requestTagPrefix: 'sanity.cli',\n useCdn: false,\n }),\n currentUser: null,\n }\n}\n"],"names":["createClient","getEmptyAuth","authenticated","client","apiHost","apiVersion","projectId","requestTagPrefix","useCdn","currentUser"],"mappings":"AAAA,SAAQA,YAAY,QAAO,iBAAgB;AAE3C,OAAO,SAASC;IACd,OAAO;QACLC,eAAe;QACfC,QAAQH,aAAa;YACnBI,SAAS;YACTC,YAAY;YACZC,WAAW;YACXC,kBAAkB;YAClBC,QAAQ;QACV;QACAC,aAAa;IACf;AACF"}
@@ -1,3 +1,8 @@
1
+ type JSONValue = boolean | JSONArray | JSONObject | number | string | null;
2
+ type JSONObject = {
3
+ [key: string]: JSONValue;
4
+ };
5
+ type JSONArray = Array<JSONValue>;
1
6
  /**
2
7
  * Read the file at the given path and parse it as JSON.
3
8
  *
@@ -5,4 +10,5 @@
5
10
  * @returns The parsed file
6
11
  * @internal
7
12
  */
8
- export declare function readJsonFile(filePath: string): Promise<any>;
13
+ export declare function readJsonFile(filePath: string): Promise<JSONValue>;
14
+ export {};
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/readJsonFile.ts"],"sourcesContent":["import {readFile} from 'node:fs/promises'\n\n/**\n * Read the file at the given path and parse it as JSON.\n *\n * @param filePath - Path to JSON file to read\n * @returns The parsed file\n * @internal\n */\nexport async function readJsonFile(filePath: string): Promise<any> {\n let content: string\n try {\n content = await readFile(filePath, 'utf8')\n } catch (err: unknown) {\n throw new Error(`Failed to read \"${filePath}\"`, {cause: err})\n }\n\n try {\n return JSON.parse(content)\n } catch (err: unknown) {\n throw new Error(`Failed to parse \"${filePath}\" as JSON`, {cause: err})\n }\n}\n"],"names":["readFile","readJsonFile","filePath","content","err","Error","cause","JSON","parse"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,mBAAkB;AAEzC;;;;;;CAMC,GACD,OAAO,eAAeC,aAAaC,QAAgB;IACjD,IAAIC;IACJ,IAAI;QACFA,UAAU,MAAMH,SAASE,UAAU;IACrC,EAAE,OAAOE,KAAc;QACrB,MAAM,IAAIC,MAAM,CAAC,gBAAgB,EAAEH,SAAS,CAAC,CAAC,EAAE;YAACI,OAAOF;QAAG;IAC7D;IAEA,IAAI;QACF,OAAOG,KAAKC,KAAK,CAACL;IACpB,EAAE,OAAOC,KAAc;QACrB,MAAM,IAAIC,MAAM,CAAC,iBAAiB,EAAEH,SAAS,SAAS,CAAC,EAAE;YAACI,OAAOF;QAAG;IACtE;AACF"}
1
+ {"version":3,"sources":["../../src/util/readJsonFile.ts"],"sourcesContent":["import {readFile} from 'node:fs/promises'\n\ntype JSONValue = boolean | JSONArray | JSONObject | number | string | null\n\ntype JSONObject = {[key: string]: JSONValue}\n\ntype JSONArray = Array<JSONValue>\n\n/**\n * Read the file at the given path and parse it as JSON.\n *\n * @param filePath - Path to JSON file to read\n * @returns The parsed file\n * @internal\n */\nexport async function readJsonFile(filePath: string): Promise<JSONValue> {\n let content: string\n try {\n content = await readFile(filePath, 'utf8')\n } catch (err: unknown) {\n throw new Error(`Failed to read \"${filePath}\"`, {cause: err})\n }\n\n try {\n return JSON.parse(content)\n } catch (err: unknown) {\n throw new Error(`Failed to parse \"${filePath}\" as JSON`, {cause: err})\n }\n}\n"],"names":["readFile","readJsonFile","filePath","content","err","Error","cause","JSON","parse"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,mBAAkB;AAQzC;;;;;;CAMC,GACD,OAAO,eAAeC,aAAaC,QAAgB;IACjD,IAAIC;IACJ,IAAI;QACFA,UAAU,MAAMH,SAASE,UAAU;IACrC,EAAE,OAAOE,KAAc;QACrB,MAAM,IAAIC,MAAM,CAAC,gBAAgB,EAAEH,SAAS,CAAC,CAAC,EAAE;YAACI,OAAOF;QAAG;IAC7D;IAEA,IAAI;QACF,OAAOG,KAAKC,KAAK,CAACL;IACpB,EAAE,OAAOC,KAAc;QACrB,MAAM,IAAIC,MAAM,CAAC,iBAAiB,EAAEH,SAAS,SAAS,CAAC,EAAE;YAACI,OAAOF;QAAG;IACtE;AACF"}
@@ -5,6 +5,7 @@
5
5
  * @returns The cloned object.
6
6
  * @internal
7
7
  */ export function safeStructuredClone(obj) {
8
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
8
9
  const seen = new WeakMap();
9
10
  function clone(value) {
10
11
  if (typeof value === 'function' || typeof value === 'symbol') {
@@ -23,7 +24,9 @@
23
24
  clone(k),
24
25
  clone(v)
25
26
  ]));
27
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
26
28
  if (ArrayBuffer.isView(value)) return new value.constructor(value);
29
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
27
30
  const result = Array.isArray(value) ? [] : {};
28
31
  seen.set(value, result);
29
32
  for(const key in value){
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/safeStructuredClone.ts"],"sourcesContent":["/**\n * `structuredClone()`, but doesn't throw on non-clonable values - instead it drops them.\n *\n * @param obj - The object to clone.\n * @returns The cloned object.\n * @internal\n */\nexport function safeStructuredClone<T>(obj: T): T {\n const seen = new WeakMap<object, any>()\n\n function clone<T>(value: T): T {\n if (typeof value === 'function' || typeof value === 'symbol') {\n return undefined as unknown as T // Drop non-clonable values\n }\n if (value !== null && typeof value === 'object') {\n if (seen.has(value)) return seen.get(value)\n\n if (value instanceof Date) return new Date(value) as T\n if (value instanceof RegExp) return new RegExp(value) as T\n if (value instanceof Set) return new Set([...value].map((item) => clone(item))) as T\n if (value instanceof Map)\n return new Map([...value.entries()].map(([k, v]) => [clone(k), clone(v)])) as T\n if (ArrayBuffer.isView(value)) return new (value.constructor as any)(value) as T\n\n const result: any = Array.isArray(value) ? [] : {}\n seen.set(value, result)\n\n for (const key in value) {\n const clonedValue = clone(value[key])\n if (clonedValue !== undefined) result[key] = clonedValue\n }\n return result as T\n }\n return value\n }\n\n return clone(obj)\n}\n"],"names":["safeStructuredClone","obj","seen","WeakMap","clone","value","undefined","has","get","Date","RegExp","Set","map","item","Map","entries","k","v","ArrayBuffer","isView","result","Array","isArray","set","key","clonedValue"],"mappings":"AAAA;;;;;;CAMC,GACD,OAAO,SAASA,oBAAuBC,GAAM;IAC3C,MAAMC,OAAO,IAAIC;IAEjB,SAASC,MAASC,KAAQ;QACxB,IAAI,OAAOA,UAAU,cAAc,OAAOA,UAAU,UAAU;YAC5D,OAAOC,WAA0B,2BAA2B;QAC9D;QACA,IAAID,UAAU,QAAQ,OAAOA,UAAU,UAAU;YAC/C,IAAIH,KAAKK,GAAG,CAACF,QAAQ,OAAOH,KAAKM,GAAG,CAACH;YAErC,IAAIA,iBAAiBI,MAAM,OAAO,IAAIA,KAAKJ;YAC3C,IAAIA,iBAAiBK,QAAQ,OAAO,IAAIA,OAAOL;YAC/C,IAAIA,iBAAiBM,KAAK,OAAO,IAAIA,IAAI;mBAAIN;aAAM,CAACO,GAAG,CAAC,CAACC,OAAST,MAAMS;YACxE,IAAIR,iBAAiBS,KACnB,OAAO,IAAIA,IAAI;mBAAIT,MAAMU,OAAO;aAAG,CAACH,GAAG,CAAC,CAAC,CAACI,GAAGC,EAAE,GAAK;oBAACb,MAAMY;oBAAIZ,MAAMa;iBAAG;YAC1E,IAAIC,YAAYC,MAAM,CAACd,QAAQ,OAAO,IAAKA,MAAM,WAAW,CAASA;YAErE,MAAMe,SAAcC,MAAMC,OAAO,CAACjB,SAAS,EAAE,GAAG,CAAC;YACjDH,KAAKqB,GAAG,CAAClB,OAAOe;YAEhB,IAAK,MAAMI,OAAOnB,MAAO;gBACvB,MAAMoB,cAAcrB,MAAMC,KAAK,CAACmB,IAAI;gBACpC,IAAIC,gBAAgBnB,WAAWc,MAAM,CAACI,IAAI,GAAGC;YAC/C;YACA,OAAOL;QACT;QACA,OAAOf;IACT;IAEA,OAAOD,MAAMH;AACf"}
1
+ {"version":3,"sources":["../../src/util/safeStructuredClone.ts"],"sourcesContent":["/**\n * `structuredClone()`, but doesn't throw on non-clonable values - instead it drops them.\n *\n * @param obj - The object to clone.\n * @returns The cloned object.\n * @internal\n */\nexport function safeStructuredClone<T>(obj: T): T {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const seen = new WeakMap<object, any>()\n\n function clone<T>(value: T): T {\n if (typeof value === 'function' || typeof value === 'symbol') {\n return undefined as unknown as T // Drop non-clonable values\n }\n if (value !== null && typeof value === 'object') {\n if (seen.has(value)) return seen.get(value)\n\n if (value instanceof Date) return new Date(value) as T\n if (value instanceof RegExp) return new RegExp(value) as T\n if (value instanceof Set) return new Set([...value].map((item) => clone(item))) as T\n if (value instanceof Map)\n return new Map([...value.entries()].map(([k, v]) => [clone(k), clone(v)])) as T\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n if (ArrayBuffer.isView(value)) return new (value.constructor as any)(value) as T\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const result: any = Array.isArray(value) ? [] : {}\n seen.set(value, result)\n\n for (const key in value) {\n const clonedValue = clone(value[key])\n if (clonedValue !== undefined) result[key] = clonedValue\n }\n return result as T\n }\n return value\n }\n\n return clone(obj)\n}\n"],"names":["safeStructuredClone","obj","seen","WeakMap","clone","value","undefined","has","get","Date","RegExp","Set","map","item","Map","entries","k","v","ArrayBuffer","isView","result","Array","isArray","set","key","clonedValue"],"mappings":"AAAA;;;;;;CAMC,GACD,OAAO,SAASA,oBAAuBC,GAAM;IAC3C,8DAA8D;IAC9D,MAAMC,OAAO,IAAIC;IAEjB,SAASC,MAASC,KAAQ;QACxB,IAAI,OAAOA,UAAU,cAAc,OAAOA,UAAU,UAAU;YAC5D,OAAOC,WAA0B,2BAA2B;QAC9D;QACA,IAAID,UAAU,QAAQ,OAAOA,UAAU,UAAU;YAC/C,IAAIH,KAAKK,GAAG,CAACF,QAAQ,OAAOH,KAAKM,GAAG,CAACH;YAErC,IAAIA,iBAAiBI,MAAM,OAAO,IAAIA,KAAKJ;YAC3C,IAAIA,iBAAiBK,QAAQ,OAAO,IAAIA,OAAOL;YAC/C,IAAIA,iBAAiBM,KAAK,OAAO,IAAIA,IAAI;mBAAIN;aAAM,CAACO,GAAG,CAAC,CAACC,OAAST,MAAMS;YACxE,IAAIR,iBAAiBS,KACnB,OAAO,IAAIA,IAAI;mBAAIT,MAAMU,OAAO;aAAG,CAACH,GAAG,CAAC,CAAC,CAACI,GAAGC,EAAE,GAAK;oBAACb,MAAMY;oBAAIZ,MAAMa;iBAAG;YAC1E,8DAA8D;YAC9D,IAAIC,YAAYC,MAAM,CAACd,QAAQ,OAAO,IAAKA,MAAM,WAAW,CAASA;YAErE,8DAA8D;YAC9D,MAAMe,SAAcC,MAAMC,OAAO,CAACjB,SAAS,EAAE,GAAG,CAAC;YACjDH,KAAKqB,GAAG,CAAClB,OAAOe;YAEhB,IAAK,MAAMI,OAAOnB,MAAO;gBACvB,MAAMoB,cAAcrB,MAAMC,KAAK,CAACmB,IAAI;gBACpC,IAAIC,gBAAgBnB,WAAWc,MAAM,CAACI,IAAI,GAAGC;YAC/C;YACA,OAAOL;QACT;QACA,OAAOf;IACT;IAEA,OAAOD,MAAMH;AACf"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Try to get the default export of a module of the cli config.
3
+ * This can be either ESM or CJS.
4
+ */
5
+ export declare function tryGetDefaultExport(mod: unknown): unknown;
@@ -0,0 +1,18 @@
1
+ import { isRecord } from './isRecord.js';
2
+ /**
3
+ * Try to get the default export of a module of the cli config.
4
+ * This can be either ESM or CJS.
5
+ */ export function tryGetDefaultExport(mod) {
6
+ // If the module is a record and has a default property, return the default property
7
+ if (isRecord(mod) && 'default' in mod) {
8
+ // If the default property is a record and has a default property, return the default property
9
+ // This is for CJS modules
10
+ if (isRecord(mod.default) && 'default' in mod.default) {
11
+ return mod.default.default;
12
+ }
13
+ return mod.default;
14
+ }
15
+ return null;
16
+ }
17
+
18
+ //# sourceMappingURL=tryGetDefaultExport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/util/tryGetDefaultExport.ts"],"sourcesContent":["import {isRecord} from './isRecord.js'\n\n/**\n * Try to get the default export of a module of the cli config.\n * This can be either ESM or CJS.\n */\nexport function tryGetDefaultExport(mod: unknown) {\n // If the module is a record and has a default property, return the default property\n if (isRecord(mod) && 'default' in mod) {\n // If the default property is a record and has a default property, return the default property\n // This is for CJS modules\n if (isRecord(mod.default) && 'default' in mod.default) {\n return mod.default.default\n }\n\n return mod.default\n }\n\n return null\n}\n"],"names":["isRecord","tryGetDefaultExport","mod","default"],"mappings":"AAAA,SAAQA,QAAQ,QAAO,gBAAe;AAEtC;;;CAGC,GACD,OAAO,SAASC,oBAAoBC,GAAY;IAC9C,oFAAoF;IACpF,IAAIF,SAASE,QAAQ,aAAaA,KAAK;QACrC,8FAA8F;QAC9F,0BAA0B;QAC1B,IAAIF,SAASE,IAAIC,OAAO,KAAK,aAAaD,IAAIC,OAAO,EAAE;YACrD,OAAOD,IAAIC,OAAO,CAACA,OAAO;QAC5B;QAEA,OAAOD,IAAIC,OAAO;IACpB;IAEA,OAAO;AACT"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sanity/cli-core",
3
- "version": "0.0.2-alpha.0",
3
+ "version": "0.0.2-alpha.2",
4
4
  "description": "Sanity CLI core package",
5
5
  "keywords": [
6
6
  "sanity",
@@ -32,10 +32,11 @@
32
32
  ],
33
33
  "dependencies": {
34
34
  "@oclif/core": "^4.5.3",
35
- "@sanity/client": "^7.9.0",
35
+ "@sanity/client": "^7.11.2",
36
+ "babel-plugin-react-compiler": "^1.0.0",
36
37
  "chalk": "^5.4.1",
37
38
  "configstore": "^7.0.0",
38
- "debug": "^4.4.0",
39
+ "debug": "^4.4.3",
39
40
  "get-tsconfig": "^4.10.1",
40
41
  "import-meta-resolve": "^4.1.0",
41
42
  "jsdom": "^26.0.0",
@@ -43,21 +44,21 @@
43
44
  "log-symbols": "^7.0.1",
44
45
  "ora": "^8.2.0",
45
46
  "tsx": "^4.20.3",
46
- "vite": "^6.3.5",
47
+ "vite": "^7.1.6",
47
48
  "vite-node": "^3.0.8",
48
49
  "zod": "^3.24.2"
49
50
  },
50
51
  "devDependencies": {
51
- "@eslint/compat": "^1.3.1",
52
+ "@eslint/compat": "^2.0.0",
52
53
  "@swc/cli": "^0.7.8",
53
- "@swc/core": "^1.13.2",
54
+ "@swc/core": "^1.14.0",
54
55
  "@types/configstore": "^6.0.2",
55
56
  "@types/debug": "^4.1.12",
56
57
  "@types/jsdom": "^21.1.7",
57
- "@types/node": "^20.17.23",
58
- "eslint": "^9.30.1",
58
+ "@types/node": "^20.19.24",
59
+ "eslint": "^9.39.1",
59
60
  "typescript": "^5.8.3",
60
- "vitest": "^3.1.3",
61
+ "vitest": "^3.2.4",
61
62
  "@repo/eslint-config": "0.0.0",
62
63
  "@repo/tsconfig": "3.70.0"
63
64
  },
@@ -1,13 +0,0 @@
1
- import { type ConfigEnv, type InlineConfig } from 'vite';
2
- import { type z } from 'zod';
3
- import { type cliConfigSchema, type reactCompilerSchema } from './schemas.js';
4
- /**
5
- * Until these types are on npm: https://github.com/facebook/react/blob/0bc30748730063e561d87a24a4617526fdd38349/compiler/packages/babel-plugin-react-compiler/src/Entrypoint/Options.ts#L39-L122
6
- *
7
- * @beta
8
- */
9
- export type ReactCompilerConfig = z.infer<typeof reactCompilerSchema>;
10
- export type UserViteConfig = ((config: InlineConfig, env: ConfigEnv) => InlineConfig | Promise<InlineConfig>) | InlineConfig;
11
- export type CliConfig = z.infer<typeof cliConfigSchema> & {
12
- vite?: UserViteConfig;
13
- };
@@ -1,3 +0,0 @@
1
- export { };
2
-
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/config/cli/types.ts"],"sourcesContent":["import {type ConfigEnv, type InlineConfig} from 'vite'\nimport {type z} from 'zod'\n\nimport {type cliConfigSchema, type reactCompilerSchema} from './schemas.js'\n\n/**\n * Until these types are on npm: https://github.com/facebook/react/blob/0bc30748730063e561d87a24a4617526fdd38349/compiler/packages/babel-plugin-react-compiler/src/Entrypoint/Options.ts#L39-L122\n *\n * @beta\n */\nexport type ReactCompilerConfig = z.infer<typeof reactCompilerSchema>\n\nexport type UserViteConfig =\n | ((config: InlineConfig, env: ConfigEnv) => InlineConfig | Promise<InlineConfig>)\n | InlineConfig\n\nexport type CliConfig = z.infer<typeof cliConfigSchema> & {\n vite?: UserViteConfig\n}\n"],"names":[],"mappings":"AAgBA,WAEC"}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/loaders/studio/stubs.ts"],"sourcesContent":["import {JSDOM} from 'jsdom'\n\nconst html = `<!doctype html>\n<html>\n <head><meta charset=\"utf-8\"></head>\n <body></body>\n</html>`\n\nconst dom = new JSDOM(html, {\n pretendToBeVisual: true,\n url: 'http://localhost:3333/',\n})\n\n// Special handling of certain globals\nif (typeof dom.window.document.execCommand !== 'function') {\n // Crashes ace editor without this :/\n dom.window.document.execCommand = function execCommand(\n // Provide the right arity for the function, even if unused\n _commandName: string,\n _showDefaultUI: boolean,\n _valueArgument: unknown,\n ) {\n // Return false to indicate \"unsupported\"\n return false\n }\n}\n\nif (dom.window.requestIdleCallback === undefined) {\n dom.window.requestIdleCallback = (cb: IdleRequestCallback) => setTimeout(cb, 10)\n}\n\nif (dom.window.cancelIdleCallback === undefined) {\n dom.window.cancelIdleCallback = (id: number) => clearTimeout(id)\n}\n\nif (dom.window.ResizeObserver === undefined) {\n dom.window.ResizeObserver = class ResizeObserver {\n // eslint-disable-next-line @typescript-eslint/no-useless-constructor\n constructor(_callback: unknown) {}\n disconnect() {}\n observe(_target: unknown, _options: unknown) {}\n unobserve(_target: unknown) {}\n }\n}\n\nif (dom.window.IntersectionObserver === undefined) {\n dom.window.IntersectionObserver = class IntersectionObserver {\n options: {root?: unknown; rootMargin?: string; threshold?: number}\n constructor(\n _callback: unknown,\n options?: {root?: unknown; rootMargin?: string; threshold?: number},\n ) {\n this.options = options || {}\n }\n get root() {\n return this.options.root || null\n }\n get rootMargin() {\n return this.options.rootMargin || ''\n }\n get thresholds() {\n return Array.isArray(this.options.threshold)\n ? this.options.threshold\n : [this.options.threshold || 0]\n }\n\n disconnect() {}\n observe(_el: unknown) {}\n takeRecords() {\n return []\n }\n unobserve(_el: unknown) {}\n }\n}\n\nif (dom.window.matchMedia === undefined) {\n dom.window.matchMedia = (_qs: unknown) =>\n ({\n matches: false,\n media: '',\n onchange: null,\n }) as any\n}\n\n// Generic jsdom 1:1\nexport const alert = dom.window.alert\nexport const atob = dom.window.atob\nexport const blur = dom.window.blur\nexport const btoa = dom.window.btoa\nexport const cancelAnimationFrame = dom.window.cancelAnimationFrame\nexport const captureEvents = dom.window.captureEvents\nexport const clearInterval = dom.window.clearInterval\nexport const clearTimeout = dom.window.clearTimeout\nexport const close = dom.window.close\nexport const confirm = dom.window.confirm\nexport const console = dom.window.console\nexport const crypto = dom.window.crypto\nexport const CSSImportRule = dom.window.CSSImportRule\nexport const CSSMediaRule = dom.window.CSSMediaRule\nexport const CSSRule = dom.window.CSSRule\nexport const CSSStyleDeclaration = dom.window.CSSStyleDeclaration\nexport const CSSStyleRule = dom.window.CSSStyleRule\nexport const CSSStyleSheet = dom.window.CSSStyleSheet\nexport const customElements = dom.window.customElements\nexport const devicePixelRatio = dom.window.devicePixelRatio\nexport const document = dom.window.document\nexport const event = dom.window.event\nexport const external = dom.window.external\nexport const focus = dom.window.focus\nexport const frameElement = dom.window.frameElement\nexport const frames = dom.window.frames\nexport const getComputedStyle = dom.window.getComputedStyle\nexport const getSelection = dom.window.getSelection\nexport const history = dom.window.history\nexport const innerHeight = dom.window.innerHeight\nexport const innerWidth = dom.window.innerWidth\nexport const length = dom.window.length\nexport const localStorage = dom.window.localStorage\nexport const location = dom.window.location\nexport const locationbar = dom.window.locationbar\nexport const MediaList = dom.window.MediaList\nexport const menubar = dom.window.menubar\nexport const moveBy = dom.window.moveBy\nexport const moveTo = dom.window.moveTo\nexport const name = dom.window.name\nexport const navigator = dom.window.navigator\nexport const onabort = dom.window.onabort\nexport const onafterprint = dom.window.onafterprint\nexport const onautocomplete = dom.window.onautocomplete\nexport const onautocompleteerror = dom.window.onautocompleteerror\nexport const onauxclick = dom.window.onauxclick\nexport const onbeforeinput = dom.window.onbeforeinput\nexport const onbeforematch = dom.window.onbeforematch\nexport const onbeforeprint = dom.window.onbeforeprint\nexport const onbeforetoggle = dom.window.onbeforetoggle\nexport const onbeforeunload = dom.window.onbeforeunload\nexport const onblur = dom.window.onblur\nexport const oncancel = dom.window.oncancel\nexport const oncanplay = dom.window.oncanplay\nexport const oncanplaythrough = dom.window.oncanplaythrough\nexport const onchange = dom.window.onchange\nexport const onclick = dom.window.onclick\nexport const onclose = dom.window.onclose\nexport const oncontextlost = dom.window.oncontextlost\nexport const oncontextmenu = dom.window.oncontextmenu\nexport const oncontextrestored = dom.window.oncontextrestored\nexport const oncopy = dom.window.oncopy\nexport const oncuechange = dom.window.oncuechange\nexport const oncut = dom.window.oncut\nexport const ondblclick = dom.window.ondblclick\nexport const ondrag = dom.window.ondrag\nexport const ondragend = dom.window.ondragend\nexport const ondragenter = dom.window.ondragenter\nexport const ondragleave = dom.window.ondragleave\nexport const ondragover = dom.window.ondragover\nexport const ondragstart = dom.window.ondragstart\nexport const ondrop = dom.window.ondrop\nexport const ondurationchange = dom.window.ondurationchange\nexport const onemptied = dom.window.onemptied\nexport const onended = dom.window.onended\nexport const onerror = dom.window.onerror\nexport const onfocus = dom.window.onfocus\nexport const onformdata = dom.window.onformdata\nexport const onhashchange = dom.window.onhashchange\nexport const oninput = dom.window.oninput\nexport const oninvalid = dom.window.oninvalid\nexport const onkeydown = dom.window.onkeydown\nexport const onkeypress = dom.window.onkeypress\nexport const onkeyup = dom.window.onkeyup\nexport const onlanguagechange = dom.window.onlanguagechange\nexport const onload = dom.window.onload\nexport const onloadeddata = dom.window.onloadeddata\nexport const onloadedmetadata = dom.window.onloadedmetadata\nexport const onloadstart = dom.window.onloadstart\nexport const onmessage = dom.window.onmessage\nexport const onmessageerror = dom.window.onmessageerror\nexport const onmousedown = dom.window.onmousedown\nexport const onmouseenter = dom.window.onmouseenter\nexport const onmouseleave = dom.window.onmouseleave\nexport const onmousemove = dom.window.onmousemove\nexport const onmouseout = dom.window.onmouseout\nexport const onmouseover = dom.window.onmouseover\nexport const onmouseup = dom.window.onmouseup\nexport const onoffline = dom.window.onoffline\nexport const ononline = dom.window.ononline\nexport const onpagehide = dom.window.onpagehide\nexport const onpageshow = dom.window.onpageshow\nexport const onpaste = dom.window.onpaste\nexport const onpause = dom.window.onpause\nexport const onplay = dom.window.onplay\nexport const onplaying = dom.window.onplaying\nexport const onpopstate = dom.window.onpopstate\nexport const onprogress = dom.window.onprogress\nexport const onratechange = dom.window.onratechange\nexport const onrejectionhandled = dom.window.onrejectionhandled\nexport const onreset = dom.window.onreset\nexport const onresize = dom.window.onresize\nexport const onscroll = dom.window.onscroll\nexport const onscrollend = dom.window.onscrollend\nexport const onsecuritypolicyviolation = dom.window.onsecuritypolicyviolation\nexport const onseeked = dom.window.onseeked\nexport const onseeking = dom.window.onseeking\nexport const onselect = dom.window.onselect\nexport const onslotchange = dom.window.onslotchange\nexport const onsort = dom.window.onsort\nexport const onstalled = dom.window.onstalled\nexport const onstorage = dom.window.onstorage\nexport const onsubmit = dom.window.onsubmit\nexport const onsuspend = dom.window.onsuspend\nexport const ontimeupdate = dom.window.ontimeupdate\nexport const ontoggle = dom.window.ontoggle\nexport const ontouchcancel = dom.window.ontouchcancel\nexport const ontouchend = dom.window.ontouchend\nexport const ontouchmove = dom.window.ontouchmove\nexport const ontouchstart = dom.window.ontouchstart\nexport const onunhandledrejection = dom.window.onunhandledrejection\nexport const onunload = dom.window.onunload\nexport const onvolumechange = dom.window.onvolumechange\nexport const onwaiting = dom.window.onwaiting\nexport const onwebkitanimationend = dom.window.onwebkitanimationend\nexport const onwebkitanimationiteration = dom.window.onwebkitanimationiteration\nexport const onwebkitanimationstart = dom.window.onwebkitanimationstart\nexport const onwebkittransitionend = dom.window.onwebkittransitionend\nexport const onwheel = dom.window.onwheel\nexport const open = dom.window.open\nexport const origin = dom.window.origin\nexport const outerHeight = dom.window.outerHeight\nexport const outerWidth = dom.window.outerWidth\nexport const pageXOffset = dom.window.pageXOffset\nexport const pageYOffset = dom.window.pageYOffset\nexport const parent = dom.window.parent\nexport const performance = dom.window.performance\nexport const personalbar = dom.window.personalbar\nexport const postMessage = dom.window.postMessage\nexport const print = dom.window.print\nexport const prompt = dom.window.prompt\nexport const queueMicrotask = dom.window.queueMicrotask\nexport const releaseEvents = dom.window.releaseEvents\nexport const requestAnimationFrame = dom.window.requestAnimationFrame\nexport const resizeBy = dom.window.resizeBy\nexport const resizeTo = dom.window.resizeTo\nexport const screen = dom.window.screen\nexport const screenLeft = dom.window.screenLeft\nexport const screenTop = dom.window.screenTop\nexport const screenX = dom.window.screenX\nexport const screenY = dom.window.screenY\nexport const scroll = dom.window.scroll\nexport const scrollbars = dom.window.scrollbars\nexport const scrollBy = dom.window.scrollBy\nexport const scrollTo = dom.window.scrollTo\nexport const scrollX = dom.window.scrollX\nexport const scrollY = dom.window.scrollY\nexport const self = dom.window.self\nexport const sessionStorage = dom.window.sessionStorage\nexport const setInterval = dom.window.setInterval\nexport const setTimeout = dom.window.setTimeout\nexport const status = dom.window.status\nexport const statusbar = dom.window.statusbar\nexport const stop = dom.window.stop\nexport const StyleSheet = dom.window.StyleSheet\nexport const toolbar = dom.window.toolbar\nexport const top = dom.window.top\nexport const window = dom.window\nexport const XPathEvaluator = dom.window.XPathEvaluator\nexport const XPathException = dom.window.XPathException\nexport const XPathExpression = dom.window.XPathExpression\nexport const XPathResult = dom.window.XPathResult\n\n// Extended properties\nexport const requestIdleCallback = dom.window.requestIdleCallback\nexport const cancelIdleCallback = dom.window.cancelIdleCallback\nexport const ResizeObserver = dom.window.ResizeObserver\nexport const IntersectionObserver = dom.window.IntersectionObserver\nexport const matchMedia = dom.window.matchMedia\n"],"names":["JSDOM","html","dom","pretendToBeVisual","url","window","document","execCommand","_commandName","_showDefaultUI","_valueArgument","requestIdleCallback","undefined","cb","setTimeout","cancelIdleCallback","id","clearTimeout","ResizeObserver","_callback","disconnect","observe","_target","_options","unobserve","IntersectionObserver","options","root","rootMargin","thresholds","Array","isArray","threshold","_el","takeRecords","matchMedia","_qs","matches","media","onchange","alert","atob","blur","btoa","cancelAnimationFrame","captureEvents","clearInterval","close","confirm","console","crypto","CSSImportRule","CSSMediaRule","CSSRule","CSSStyleDeclaration","CSSStyleRule","CSSStyleSheet","customElements","devicePixelRatio","event","external","focus","frameElement","frames","getComputedStyle","getSelection","history","innerHeight","innerWidth","length","localStorage","location","locationbar","MediaList","menubar","moveBy","moveTo","name","navigator","onabort","onafterprint","onautocomplete","onautocompleteerror","onauxclick","onbeforeinput","onbeforematch","onbeforeprint","onbeforetoggle","onbeforeunload","onblur","oncancel","oncanplay","oncanplaythrough","onclick","onclose","oncontextlost","oncontextmenu","oncontextrestored","oncopy","oncuechange","oncut","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","onformdata","onhashchange","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onlanguagechange","onload","onloadeddata","onloadedmetadata","onloadstart","onmessage","onmessageerror","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onoffline","ononline","onpagehide","onpageshow","onpaste","onpause","onplay","onplaying","onpopstate","onprogress","onratechange","onrejectionhandled","onreset","onresize","onscroll","onscrollend","onsecuritypolicyviolation","onseeked","onseeking","onselect","onslotchange","onsort","onstalled","onstorage","onsubmit","onsuspend","ontimeupdate","ontoggle","ontouchcancel","ontouchend","ontouchmove","ontouchstart","onunhandledrejection","onunload","onvolumechange","onwaiting","onwebkitanimationend","onwebkitanimationiteration","onwebkitanimationstart","onwebkittransitionend","onwheel","open","origin","outerHeight","outerWidth","pageXOffset","pageYOffset","parent","performance","personalbar","postMessage","print","prompt","queueMicrotask","releaseEvents","requestAnimationFrame","resizeBy","resizeTo","screen","screenLeft","screenTop","screenX","screenY","scroll","scrollbars","scrollBy","scrollTo","scrollX","scrollY","self","sessionStorage","setInterval","status","statusbar","stop","StyleSheet","toolbar","top","XPathEvaluator","XPathException","XPathExpression","XPathResult"],"mappings":"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"}