@ebay-dt/bonfire-cli 0.2.0-alpha.0 → 0.2.0-alpha.11

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 (44) hide show
  1. package/README.md +16 -10
  2. package/dist/branch-prepare.d.ts +6 -2
  3. package/dist/branch-prepare.d.ts.map +1 -1
  4. package/dist/branch-prepare.js +69 -11
  5. package/dist/branch-prepare.js.map +1 -1
  6. package/dist/command.d.ts +5 -1
  7. package/dist/command.d.ts.map +1 -1
  8. package/dist/command.js +62 -12
  9. package/dist/command.js.map +1 -1
  10. package/dist/convert.d.ts.map +1 -1
  11. package/dist/convert.js +2 -2
  12. package/dist/convert.js.map +1 -1
  13. package/dist/release-versions.d.ts +1 -1
  14. package/dist/release-versions.d.ts.map +1 -1
  15. package/dist/release-versions.js +1 -1
  16. package/dist/release-versions.js.map +1 -1
  17. package/package.json +4 -4
  18. package/templates/instance/context/PROTOTYPE.md +2 -2
  19. package/templates/instance/context/skills/color-scheme/SKILL.md +4 -4
  20. package/templates/instance/context/skills/item-data/SKILL.md +21 -21
  21. package/templates/instance/next.config.ts +4 -4
  22. package/templates/instance/src/actions/agents.ts +5 -5
  23. package/templates/instance/src/actions/prototypes.ts +22 -10
  24. package/templates/instance/src/actions/repository.ts +12 -2
  25. package/templates/instance/src/app/(prototypes)/layout.tsx +11 -11
  26. package/templates/instance/src/app/(system)/api/prototype-dirty/route.ts +3 -3
  27. package/templates/instance/src/app/(system)/api/repository/check/route.ts +2 -2
  28. package/templates/instance/src/app/(system)/api/repository/preparation/retry/route.ts +3 -0
  29. package/templates/instance/src/app/(system)/api/repository/retry/route.ts +2 -2
  30. package/templates/instance/src/app/(system)/api/repository/summary/route.ts +2 -2
  31. package/templates/instance/src/app/(system)/api/repository/update/route.ts +2 -2
  32. package/templates/instance/src/app/(system)/auth/login/route.ts +3 -3
  33. package/templates/instance/src/app/(system)/auth/logout/route.ts +3 -3
  34. package/templates/instance/src/app/(system)/auth/status/route.ts +3 -3
  35. package/templates/instance/src/app/(system)/layout.tsx +6 -6
  36. package/templates/instance/src/app/(system)/login/page.tsx +8 -8
  37. package/templates/instance/src/app/(system)/page.tsx +9 -9
  38. package/templates/instance/src/app/api/items/[itemId]/route.ts +7 -7
  39. package/templates/instance/src/app/api/items/route.ts +4 -4
  40. package/templates/instance/src/app/layout.tsx +29 -17
  41. package/templates/instance/src/bonfire.ts +19 -11
  42. package/templates/instance/src/lib/items/gateway-schemas.ts +12 -12
  43. package/templates/instance/src/lib/items/server.ts +52 -52
  44. package/templates/instance/src/proxy.ts +4 -4
@@ -1,10 +1,10 @@
1
- import type { NextConfig } from 'next'
1
+ import type { NextConfig } from "next";
2
2
 
3
3
  const nextConfig: NextConfig = {
4
4
  /* Bonfire discovers prototype metadata from the filesystem at request time. */
5
5
  outputFileTracingIncludes: {
6
- '/*': ['./src/app/(prototypes)/**/metadata.json'],
6
+ "/*": ["./src/app/(prototypes)/**/metadata.json"],
7
7
  },
8
- }
8
+ };
9
9
 
10
- export default nextConfig
10
+ export default nextConfig;
@@ -1,15 +1,15 @@
1
- 'use server'
1
+ "use server";
2
2
 
3
3
  import type {
4
4
  OpenInAgentInput,
5
5
  OpenInClaudeCodeInput,
6
- } from '@ebay-dt/bonfire-core'
7
- import { bonfire } from '@/bonfire'
6
+ } from "@ebay-dt/bonfire-core";
7
+ import { bonfire } from "@/bonfire";
8
8
 
9
9
  export async function openInCursor(input: OpenInAgentInput) {
10
- return bonfire.prototypes.agents.openInCursor(input)
10
+ return bonfire.prototypes.agents.openInCursor(input);
11
11
  }
12
12
 
13
13
  export async function openInClaudeCode(input: OpenInClaudeCodeInput) {
14
- return bonfire.prototypes.agents.openInClaudeCode(input)
14
+ return bonfire.prototypes.agents.openInClaudeCode(input);
15
15
  }
@@ -1,37 +1,49 @@
1
- 'use server'
1
+ "use server";
2
2
 
3
3
  import type {
4
4
  CreatePrototypeInput,
5
5
  DuplicatePrototypeInput,
6
6
  EditPrototypeInput,
7
7
  PrototypeCommandInput,
8
- } from '@ebay-dt/bonfire-core'
9
- import { bonfire } from '@/bonfire'
8
+ } from "@ebay-dt/bonfire-core";
9
+ import { bonfire } from "@/bonfire";
10
10
 
11
11
  export async function createPrototype(input: CreatePrototypeInput) {
12
- return bonfire.prototypes.actions.create(input)
12
+ return bonfire.prototypes.actions.create(input);
13
13
  }
14
14
 
15
15
  export async function duplicatePrototype(input: DuplicatePrototypeInput) {
16
- return bonfire.prototypes.actions.duplicate(input)
16
+ return bonfire.prototypes.actions.duplicate(input);
17
17
  }
18
18
 
19
19
  export async function editPrototype(input: EditPrototypeInput) {
20
- return bonfire.prototypes.actions.edit(input)
20
+ return bonfire.prototypes.actions.edit(input);
21
21
  }
22
22
 
23
23
  export async function deletePrototype(input: PrototypeCommandInput) {
24
- return bonfire.prototypes.actions.delete(input)
24
+ return bonfire.prototypes.actions.delete(input);
25
25
  }
26
26
 
27
27
  export async function savePrototype(input: PrototypeCommandInput) {
28
- return bonfire.prototypes.actions.save(input)
28
+ return bonfire.prototypes.actions.save(input);
29
29
  }
30
30
 
31
31
  export async function discardPrototype(input: PrototypeCommandInput) {
32
- return bonfire.prototypes.actions.discard(input)
32
+ return bonfire.prototypes.actions.discard(input);
33
33
  }
34
34
 
35
35
  export async function deployPrototype(input: PrototypeCommandInput) {
36
- return bonfire.prototypes.actions.deploy(input)
36
+ return bonfire.prototypes.actions.deploy(input);
37
+ }
38
+
39
+ export async function retryPublishPrototype(input: PrototypeCommandInput) {
40
+ return bonfire.prototypes.actions.retryPublish!(input);
41
+ }
42
+
43
+ export async function getPendingPrototypeRecovery() {
44
+ return bonfire.prototypes.actions.getPendingRecovery();
45
+ }
46
+
47
+ export async function retryPendingPrototypePublication(recoveryId: string) {
48
+ return bonfire.prototypes.actions.retryPendingPublication(recoveryId);
37
49
  }
@@ -18,10 +18,20 @@ export async function retryRepositoryUpdate() {
18
18
  return bonfire.prototypes.repository.retry();
19
19
  }
20
20
 
21
- export async function saveRepositoryPrototype(ref: { login: string; slug: string }) {
21
+ export async function retryRepositoryPreparation() {
22
+ return bonfire.prototypes.repository.retryPreparation!();
23
+ }
24
+
25
+ export async function saveRepositoryPrototype(ref: {
26
+ login: string;
27
+ slug: string;
28
+ }) {
22
29
  return bonfire.prototypes.repository.save!({ ref });
23
30
  }
24
31
 
25
- export async function discardRepositoryPrototype(ref: { login: string; slug: string }) {
32
+ export async function discardRepositoryPrototype(ref: {
33
+ login: string;
34
+ slug: string;
35
+ }) {
26
36
  return bonfire.prototypes.repository.discard!({ ref });
27
37
  }
@@ -1,8 +1,8 @@
1
- import type { ReactNode } from 'react'
2
- import { notFound } from 'next/navigation'
3
- import { AppHeader, PrototypeEnvironment } from '@ebay-dt/bonfire-react'
4
- import { bonfire } from '@/bonfire'
5
- import { openInClaudeCode, openInCursor } from '@/actions/agents'
1
+ import type { ReactNode } from "react";
2
+ import { notFound } from "next/navigation";
3
+ import { AppHeader, PrototypeEnvironment } from "@ebay-dt/bonfire-react";
4
+ import { bonfire } from "@/bonfire";
5
+ import { openInClaudeCode, openInCursor } from "@/actions/agents";
6
6
 
7
7
  export default async function PrototypesLayout({
8
8
  children,
@@ -10,12 +10,12 @@ export default async function PrototypesLayout({
10
10
  const [{ headerProps }, prototype] = await Promise.all([
11
11
  bonfire.auth.getAppLayoutModel(),
12
12
  bonfire.prototypes.getCurrentRouteModel(),
13
- ])
13
+ ]);
14
14
 
15
- if (prototype === null) notFound()
15
+ if (prototype === null) notFound();
16
16
 
17
- const agentActions = { openInClaudeCode, openInCursor }
18
- const header = <AppHeader {...headerProps} agentActions={agentActions} />
17
+ const agentActions = { openInClaudeCode, openInCursor };
18
+ const header = <AppHeader {...headerProps} agentActions={agentActions} />;
19
19
 
20
20
  if (prototype.theme === undefined) {
21
21
  return (
@@ -23,7 +23,7 @@ export default async function PrototypesLayout({
23
23
  {header}
24
24
  {children}
25
25
  </>
26
- )
26
+ );
27
27
  }
28
28
 
29
29
  return (
@@ -36,5 +36,5 @@ export default async function PrototypesLayout({
36
36
  {header}
37
37
  {children}
38
38
  </PrototypeEnvironment>
39
- )
39
+ );
40
40
  }
@@ -1,4 +1,4 @@
1
- import { bonfire } from '@/bonfire'
1
+ import { bonfire } from "@/bonfire";
2
2
 
3
- export const runtime = 'nodejs'
4
- export const GET = bonfire.prototypes.routes.dirty
3
+ export const runtime = "nodejs";
4
+ export const GET = bonfire.prototypes.routes.dirty;
@@ -1,3 +1,3 @@
1
- import { bonfire } from '@/bonfire'
1
+ import { bonfire } from "@/bonfire";
2
2
 
3
- export const GET = bonfire.prototypes.routes.repository.check
3
+ export const GET = bonfire.prototypes.routes.repository.check;
@@ -0,0 +1,3 @@
1
+ import { bonfire } from "@/bonfire";
2
+
3
+ export const POST = bonfire.prototypes.routes.repository.retryPreparation;
@@ -1,3 +1,3 @@
1
- import { bonfire } from '@/bonfire'
1
+ import { bonfire } from "@/bonfire";
2
2
 
3
- export const POST = bonfire.prototypes.routes.repository.retry
3
+ export const POST = bonfire.prototypes.routes.repository.retry;
@@ -1,3 +1,3 @@
1
- import { bonfire } from '@/bonfire'
1
+ import { bonfire } from "@/bonfire";
2
2
 
3
- export const GET = bonfire.prototypes.routes.repository.summary
3
+ export const GET = bonfire.prototypes.routes.repository.summary;
@@ -1,3 +1,3 @@
1
- import { bonfire } from '@/bonfire'
1
+ import { bonfire } from "@/bonfire";
2
2
 
3
- export const POST = bonfire.prototypes.routes.repository.update
3
+ export const POST = bonfire.prototypes.routes.repository.update;
@@ -1,4 +1,4 @@
1
- import { bonfire } from '@/bonfire'
1
+ import { bonfire } from "@/bonfire";
2
2
 
3
- export const runtime = 'nodejs'
4
- export const GET = bonfire.auth.routes.login
3
+ export const runtime = "nodejs";
4
+ export const GET = bonfire.auth.routes.login;
@@ -1,4 +1,4 @@
1
- import { bonfire } from '@/bonfire'
1
+ import { bonfire } from "@/bonfire";
2
2
 
3
- export const runtime = 'nodejs'
4
- export const POST = bonfire.auth.routes.logout
3
+ export const runtime = "nodejs";
4
+ export const POST = bonfire.auth.routes.logout;
@@ -1,4 +1,4 @@
1
- import { bonfire } from '@/bonfire'
1
+ import { bonfire } from "@/bonfire";
2
2
 
3
- export const runtime = 'nodejs'
4
- export const GET = bonfire.auth.routes.status
3
+ export const runtime = "nodejs";
4
+ export const GET = bonfire.auth.routes.status;
@@ -1,12 +1,12 @@
1
- import type { ReactNode } from 'react'
2
- import { AppHeader } from '@ebay-dt/bonfire-react'
3
- import { bonfire } from '@/bonfire'
4
- import { openInClaudeCode, openInCursor } from '@/actions/agents'
1
+ import type { ReactNode } from "react";
2
+ import { AppHeader } from "@ebay-dt/bonfire-react";
3
+ import { bonfire } from "@/bonfire";
4
+ import { openInClaudeCode, openInCursor } from "@/actions/agents";
5
5
 
6
6
  export default async function SystemLayout({
7
7
  children,
8
8
  }: Readonly<{ children: ReactNode }>) {
9
- const { headerProps } = await bonfire.auth.getAppLayoutModel()
9
+ const { headerProps } = await bonfire.auth.getAppLayoutModel();
10
10
 
11
11
  return (
12
12
  <>
@@ -16,5 +16,5 @@ export default async function SystemLayout({
16
16
  />
17
17
  {children}
18
18
  </>
19
- )
19
+ );
20
20
  }
@@ -1,14 +1,14 @@
1
- import { GitHubCliLoginPage } from '@ebay-dt/bonfire-react'
2
- import { bonfire } from '@/bonfire'
3
- import type { Metadata } from 'next'
1
+ import { GitHubCliLoginPage } from "@ebay-dt/bonfire-react";
2
+ import { bonfire } from "@/bonfire";
3
+ import type { Metadata } from "next";
4
4
 
5
- export const metadata: Metadata = { title: 'Sign in — Design Sandbox' }
5
+ export const metadata: Metadata = { title: "Sign in — Design Sandbox" };
6
6
 
7
7
  type LoginPageProps = {
8
- searchParams?: Promise<Record<string, string | string[] | undefined>>
9
- }
8
+ searchParams?: Promise<Record<string, string | string[] | undefined>>;
9
+ };
10
10
 
11
11
  export default async function LoginPage({ searchParams }: LoginPageProps) {
12
- const model = await bonfire.auth.getLoginPageModel(searchParams)
13
- return <GitHubCliLoginPage {...model} />
12
+ const model = await bonfire.auth.getLoginPageModel(searchParams);
13
+ return <GitHubCliLoginPage {...model} />;
14
14
  }
@@ -1,20 +1,20 @@
1
- import { PrototypeDashboard } from '@ebay-dt/bonfire-react'
2
- import { bonfire } from '@/bonfire'
3
- import { openInClaudeCode, openInCursor } from '@/actions/agents'
4
- import type { Metadata } from 'next'
1
+ import { PrototypeDashboard } from "@ebay-dt/bonfire-react";
2
+ import { bonfire } from "@/bonfire";
3
+ import { openInClaudeCode, openInCursor } from "@/actions/agents";
4
+ import type { Metadata } from "next";
5
5
 
6
6
  interface PageProps {
7
- searchParams: Promise<Record<string, string | string[] | undefined>>
7
+ searchParams: Promise<Record<string, string | string[] | undefined>>;
8
8
  }
9
9
 
10
- export const metadata: Metadata = { title: 'Dashboard — Design Sandbox' }
10
+ export const metadata: Metadata = { title: "Dashboard — Design Sandbox" };
11
11
 
12
12
  export default async function DashboardPage({ searchParams }: PageProps) {
13
13
  const [dashboard, user] = await Promise.all([
14
14
  bonfire.prototypes.getDashboardModel(searchParams),
15
15
  bonfire.auth.getCurrentUser(),
16
- ])
17
- const lifecycleEnabled = process.env.NODE_ENV !== 'production'
16
+ ]);
17
+ const lifecycleEnabled = process.env.NODE_ENV !== "production";
18
18
 
19
19
  return (
20
20
  <PrototypeDashboard
@@ -29,5 +29,5 @@ export default async function DashboardPage({ searchParams }: PageProps) {
29
29
  }
30
30
  : {})}
31
31
  />
32
- )
32
+ );
33
33
  }
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  createItemDetailRoute,
3
3
  type ItemRouteDiagnostic,
4
- } from '@ebay-dt/bonfire-preset-ebay/data/items/server'
5
- import { getItemById } from '@/lib/items/server'
4
+ } from "@ebay-dt/bonfire-preset-ebay/data/items/server";
5
+ import { getItemById } from "@/lib/items/server";
6
6
 
7
7
  function onDiagnostic({ operation, code }: ItemRouteDiagnostic) {
8
- console.error(`Item ${operation} failed (${code}).`)
8
+ console.error(`Item ${operation} failed (${code}).`);
9
9
  }
10
10
 
11
11
  const handleItemDetail = createItemDetailRoute(
12
12
  { getItemById },
13
- { onDiagnostic }
14
- )
13
+ { onDiagnostic },
14
+ );
15
15
 
16
16
  export async function GET(
17
17
  request: Request,
18
- context: RouteContext<'/api/items/[itemId]'>
18
+ context: RouteContext<"/api/items/[itemId]">,
19
19
  ) {
20
- return handleItemDetail(request, context)
20
+ return handleItemDetail(request, context);
21
21
  }
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  createItemSearchRoute,
3
3
  type ItemRouteDiagnostic,
4
- } from '@ebay-dt/bonfire-preset-ebay/data/items/server'
5
- import { searchItems } from '@/lib/items/server'
4
+ } from "@ebay-dt/bonfire-preset-ebay/data/items/server";
5
+ import { searchItems } from "@/lib/items/server";
6
6
 
7
7
  function onDiagnostic({ operation, code }: ItemRouteDiagnostic) {
8
- console.error(`Item ${operation} failed (${code}).`)
8
+ console.error(`Item ${operation} failed (${code}).`);
9
9
  }
10
10
 
11
- export const GET = createItemSearchRoute({ searchItems }, { onDiagnostic })
11
+ export const GET = createItemSearchRoute({ searchItems }, { onDiagnostic });
@@ -1,7 +1,7 @@
1
- import type { Metadata } from 'next'
2
- import { NextLifecycleProvider } from '@ebay-dt/bonfire-next/client'
3
- import { EbayDesignSystemProvider } from '@ebay-dt/bonfire-preset-ebay'
4
- import { bonfire } from '@/bonfire'
1
+ import type { Metadata } from "next";
2
+ import { NextLifecycleProvider } from "@ebay-dt/bonfire-next/client";
3
+ import { EbayDesignSystemProvider } from "@ebay-dt/bonfire-preset-ebay";
4
+ import { bonfire } from "@/bonfire";
5
5
  import {
6
6
  createPrototype,
7
7
  deletePrototype,
@@ -9,32 +9,36 @@ import {
9
9
  duplicatePrototype,
10
10
  editPrototype,
11
11
  deployPrototype,
12
+ getPendingPrototypeRecovery,
13
+ retryPendingPrototypePublication,
14
+ retryPublishPrototype,
12
15
  savePrototype,
13
- } from '@/actions/prototypes'
16
+ } from "@/actions/prototypes";
14
17
  import {
15
18
  applyRepositoryUpdates,
16
19
  checkRepository,
17
20
  getRepositorySummary,
18
21
  retryRepositoryUpdate,
22
+ retryRepositoryPreparation,
19
23
  saveRepositoryPrototype,
20
24
  discardRepositoryPrototype,
21
- } from '@/actions/repository'
22
- import '@ebay-dt/bonfire-react/styles/defaults.css'
23
- import '@ebay-dt/bonfire-preset-ebay/styles.css'
25
+ } from "@/actions/repository";
26
+ import "@ebay-dt/bonfire-react/styles/defaults.css";
27
+ import "@ebay-dt/bonfire-preset-ebay/styles.css";
24
28
 
25
29
  export const metadata: Metadata = {
26
- title: 'Design Sandbox',
27
- description: 'eBay Design Technology prototype sandbox',
28
- icons: { icon: 'https://fav.farm/🤙' },
29
- }
30
+ title: "Design Sandbox",
31
+ description: "eBay Design Technology prototype sandbox",
32
+ icons: { icon: "https://fav.farm/🤙" },
33
+ };
30
34
 
31
35
  export default async function RootLayout({
32
36
  children,
33
37
  }: Readonly<{
34
- children: React.ReactNode
38
+ children: React.ReactNode;
35
39
  }>) {
36
- const lifecycleEnabled = process.env.NODE_ENV !== 'production'
37
- const { htmlProps, headerProps } = await bonfire.auth.getAppLayoutModel()
40
+ const lifecycleEnabled = process.env.NODE_ENV !== "production";
41
+ const { htmlProps, headerProps } = await bonfire.auth.getAppLayoutModel();
38
42
 
39
43
  return (
40
44
  <html lang="en" {...htmlProps}>
@@ -50,6 +54,7 @@ export default async function RootLayout({
50
54
  check: checkRepository,
51
55
  applyUpdates: applyRepositoryUpdates,
52
56
  retry: retryRepositoryUpdate,
57
+ retryPreparation: retryRepositoryPreparation,
53
58
  save: saveRepositoryPrototype,
54
59
  discard: discardRepositoryPrototype,
55
60
  }}
@@ -60,7 +65,14 @@ export default async function RootLayout({
60
65
  delete: deletePrototype,
61
66
  save: savePrototype,
62
67
  discard: discardPrototype,
63
- ...(lifecycleEnabled ? { deploy: deployPrototype } : {}),
68
+ getPendingRecovery: getPendingPrototypeRecovery,
69
+ retryPendingPublication: retryPendingPrototypePublication,
70
+ ...(lifecycleEnabled
71
+ ? {
72
+ deploy: deployPrototype,
73
+ retryPublish: retryPublishPrototype,
74
+ }
75
+ : {}),
64
76
  }}
65
77
  >
66
78
  {children}
@@ -68,5 +80,5 @@ export default async function RootLayout({
68
80
  </EbayDesignSystemProvider>
69
81
  </body>
70
82
  </html>
71
- )
83
+ );
72
84
  }
@@ -1,25 +1,33 @@
1
- import 'server-only'
2
- import { themes } from '@ebay-dt/bonfire-preset-ebay'
3
- import { projectPrototypeContext } from '@ebay-dt/bonfire-context'
1
+ import "server-only";
2
+ import { themes } from "@ebay-dt/bonfire-preset-ebay";
3
+ import { projectPrototypeContext } from "@ebay-dt/bonfire-context";
4
4
  import {
5
5
  createBonfireNext,
6
6
  createDeploymentProvider,
7
- } from '@ebay-dt/bonfire-next/server'
7
+ } from "@ebay-dt/bonfire-next/server";
8
8
  const deploymentProvider = createDeploymentProvider({
9
- endpoint: 'https://dtsvc.vip.qa.ebay.com/dt/v1/bonfire-deploy',
10
- })
9
+ endpoint: "https://dtsvc.vip.qa.ebay.com/dt/v1/bonfire-deploy",
10
+ });
11
11
 
12
12
  export const bonfire = createBonfireNext({
13
- appId: 'design-sandbox-next',
14
- name: 'Design Sandbox',
15
- auth: { github: { hostname: 'github.corp.ebay.com' } },
13
+ appId: "design-sandbox-next",
14
+ name: "Design Sandbox",
15
+ auth: {
16
+ github: {
17
+ // BF_GITHUB_HOSTNAME is loaded by Next from .env.local before this config.
18
+ hostname: process.env.BF_GITHUB_HOSTNAME ?? "github.corp.ebay.com",
19
+ },
20
+ },
16
21
  themes,
17
22
  repositoryRoot: process.cwd(),
23
+ prototypeRoot: process.env.BF_PROTOTYPE_ROOT,
24
+ remote: process.env.BF_GIT_REMOTE,
25
+ gitMode: process.env.BF_GIT_MODE as "managed" | "manual" | undefined,
18
26
  primaryBranch: process.env.BF_PROTOTYPE_BASE_BRANCH,
19
27
  sessionSecret: process.env.BF_SESSION_SECRET,
20
28
  disableAutoBranchSwitch: process.env.BF_DISABLE_AUTO_BRANCH_SWITCH,
21
29
  deploymentProvider,
22
30
  preparePrototypeFiles: async ({ prototypePath, repositoryRoot }) => {
23
- await projectPrototypeContext({ repositoryRoot, prototypePath })
31
+ await projectPrototypeContext({ repositoryRoot, prototypePath });
24
32
  },
25
- })
33
+ });
@@ -1,19 +1,19 @@
1
- import { z } from 'zod'
1
+ import { z } from "zod";
2
2
 
3
- const nullableString = z.string().nullable().optional()
4
- const nullableNumber = z.number().nullable().optional()
5
- const gatewayImageSchema = z.object({ imageUrl: nullableString }).nullable()
3
+ const nullableString = z.string().nullable().optional();
4
+ const nullableNumber = z.number().nullable().optional();
5
+ const gatewayImageSchema = z.object({ imageUrl: nullableString }).nullable();
6
6
  const gatewayPriceSchema = z
7
7
  .object({
8
8
  value: z.union([z.string(), z.number()]).nullable().optional(),
9
9
  currency: nullableString,
10
10
  convertedFromValue: z.union([z.string(), z.number()]).nullable().optional(),
11
11
  })
12
- .nullable()
12
+ .nullable();
13
13
 
14
14
  export const gatewayErrorsSchema = z
15
15
  .array(z.object({ message: nullableString }).passthrough())
16
- .optional()
16
+ .optional();
17
17
 
18
18
  const gatewaySearchItemSchema = z
19
19
  .object({
@@ -28,7 +28,7 @@ const gatewaySearchItemSchema = z
28
28
  .nullable()
29
29
  .optional(),
30
30
  })
31
- .nullable()
31
+ .nullable();
32
32
 
33
33
  export const gatewaySearchResponseSchema = z.object({
34
34
  data: z
@@ -45,7 +45,7 @@ export const gatewaySearchResponseSchema = z.object({
45
45
  })
46
46
  .optional(),
47
47
  errors: gatewayErrorsSchema,
48
- })
48
+ });
49
49
 
50
50
  const gatewayItemSchema = z.object({
51
51
  itemId: nullableString,
@@ -74,7 +74,7 @@ const gatewayItemSchema = z.object({
74
74
  name: nullableString,
75
75
  value: nullableString,
76
76
  })
77
- .nullable()
77
+ .nullable(),
78
78
  )
79
79
  .nullable()
80
80
  .optional(),
@@ -88,13 +88,13 @@ const gatewayItemSchema = z.object({
88
88
  trademarkSymbol: nullableString,
89
89
  type: nullableString,
90
90
  })
91
- .nullable()
91
+ .nullable(),
92
92
  )
93
93
  .nullable()
94
94
  .optional(),
95
- })
95
+ });
96
96
 
97
97
  export const gatewayItemResponseSchema = z.object({
98
98
  data: z.object({ item: gatewayItemSchema.nullable().optional() }).optional(),
99
99
  errors: gatewayErrorsSchema,
100
- })
100
+ });