Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: CLI generates a broken Product Configuration Admin UI extension #4117

Closed
2 tasks done
KazuOfficial opened this issue Jun 23, 2024 · 1 comment
Closed
2 tasks done
Assignees
Labels
Area: @shopify/app @shopify/app package issues Type: Bug Something isn't working

Comments

@KazuOfficial
Copy link

Please confirm that you have:

  • Searched existing issues to see if your issue is a duplicate. (If you’ve found a duplicate issue, feel free to add additional information in a comment on it.)
  • Reproduced the issue in the latest CLI version.

In which of these areas are you experiencing a problem?

Extension

Expected behavior

CLI generates a valid Product Configuration Admin UI extension.

Actual behavior

The extension doesn't show up on product details and product variant details pages.

Verbose output

"handle": "product-configuration",
  "context": "",
  "registrationId": "696160288769"
}

With request headers:
 - User-Agent: Shopify CLI; v=3.63.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: darwin
 - Content-Type: application/json

12:55:02 │                     remix │ prisma:engines binaries to download libquery-engine, schema-engine +98ms
12:55:02 │                     remix │ prisma:loadEnv project root found at /Users/jakub/Programming/test-product-extension/package.json +150ms
12:55:02 │                     remix │ prisma:tryLoadEnv Environment variables not found at null +0ms
12:55:02 │                     remix │ prisma:tryLoadEnv Environment variables not found at undefined +0ms
12:55:02 │                     remix │ prisma:tryLoadEnv No Environment variables loaded +0ms
12:55:02 │                     remix │ prisma:getSchema Trying package.json... +0ms
12:55:02 │                     remix │ prisma:getSchema prismaConfig {
12:55:02 │                     remix │   "packagePath": "/Users/jakub/Programming/test-product-extension/package.json"
12:55:02 │                     remix │ } +1ms
12:55:02 │                     remix │ prisma:getSchema package.json resolved to null +0ms
12:55:02 │                     remix │ prisma:getSchema Trying relative... +0ms
12:55:02 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Found schema at prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema relative resolved to prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getConfig Using getConfig Wasm +1ms
12:55:02 │                     remix │ Prisma schema loaded from prisma/schema.prisma
12:55:02 │                     remix │ prisma:getConfig config data retrieved without errors in getConfig Wasm +5ms
12:55:02 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +1ms
12:55:02 │                     remix │ prisma:getConfig Using getConfig Wasm +21ms
12:55:02 │                     remix │ prisma:getConfig config data retrieved without errors in getConfig Wasm +1ms
12:55:02 │                     remix │ prisma:getDMMF Using getDmmf Wasm +0ms
12:55:02 │                     remix │ prisma:getDMMF Using given datamodel +0ms
12:55:02 │                     remix │ prisma:getDMMF dmmf data retrieved without errors in getDmmf Wasm +13ms
12:55:02 │                     remix │ prisma:generator prismaCLIDir /Users/jakub/Programming/test-product-extension/node_modules/prisma +2ms
12:55:02 │                     remix │ prisma:generator prismaClientDir /Users/jakub/Programming/test-product-extension/node_modules/@prisma/client +0ms
12:55:02 │                     remix │ prisma:generator baseDir /Users/jakub/Programming/test-product-extension/prisma +0ms
12:55:02 │                     remix │ prisma:generator typescriptPath /Users/jakub/Programming/test-product-extension/node_modules/typescript +1ms
2024-06-23T11:55:02.775Z: Request to https://partners.shopify.com/api/cli/graphql completed in 480 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"683b4bdc18ace7a1c71d19738935d78f"
 - x-request-id: c31071c2-4c9a-4463-bb48-b2bf23dbb8e1-1719143702

12:55:02 │                     remix │ prisma:GeneratorProcess prisma:client:generator requiredEngine: libqueryEngine +19ms +64ms
12:55:02 │                     remix │ prisma:mergeSchemas Using mergeSchemas Wasm +0ms
12:55:02 │                     remix │ prisma:getGenerators neededVersions {
12:55:02 │                     remix │   "5675a3182f972f1a8f31d16eee6abf4fd54910e3": {
12:55:02 │                     remix │     "engines": [
12:55:02 │                     remix │       "libqueryEngine"
12:55:02 │                     remix │     ],
12:55:02 │                     remix │     "binaryTargets": [
12:55:02 │                     remix │       {
12:55:02 │                     remix │         "fromEnvVar": null,
12:55:02 │                     remix │         "value": "darwin-arm64",
12:55:02 │                     remix │         "native": true
12:55:02 │                     remix │       }
12:55:02 │                     remix │     ]
12:55:02 │                     remix │   }
12:55:02 │                     remix │ } +1ms
12:55:02 │                     remix │ prisma:getGenerators {
12:55:02 │                     remix │   "generatorBinaryPaths": {
12:55:02 │                     remix │     "libqueryEngine": {
12:55:02 │                     remix │       "darwin-arm64": "/Users/jakub/Programming/test-product-extension/node_modules/prisma/libquery_engine-darwin-arm64.dylib.node"
12:55:02 │                     remix │     }
12:55:02 │                     remix │   }
12:55:02 │                     remix │ } +21ms
12:55:02 │                     remix │ prisma:GeneratorProcess prisma:loadEnv project root found at /Users/jakub/Programming/test-product-extension/node_modules/.prisma/client/package.json +28ms +5ms
12:55:02 │                     remix │ prisma:GeneratorProcess prisma:loadEnv project root found at /Users/jakub/Programming/test-product-extension/node_modules/.prisma/client/package.json +10ms +10ms
12:55:02 │                     remix │ prisma:tryLoadEnv Environment variables not found at null +2ms
12:55:02 │                     remix │ prisma:tryLoadEnv Environment variables not found at undefined +1ms
12:55:02 │                     remix │ prisma:tryLoadEnv No Environment variables loaded +0ms
12:55:02 │                     remix │ prisma:cli:bin Execution time for executing "await cli.parse(commandArray)": 224.74500000000003 ms +27ms
12:55:02 │                     remix │ prisma:getSchema Trying package.json... +0ms
12:55:02 │                     remix │ prisma:getSchema Trying package.json... +0ms
12:55:02 │                     remix │
12:55:02 │                     remix │ ✔ Generated Prisma Client (v5.15.1) to ./node_modules/@prisma/client in 30ms
12:55:02 │                     remix │
12:55:02 │                     remix │ Start using Prisma Client in Node.js (See: https://pris.ly/d/client)
12:55:02 │                     remix │ 
12:55:02 │                     remix │ import { PrismaClient } from '@prisma/client'
12:55:02 │                     remix │ const prisma = new PrismaClient()
12:55:02 │                     remix │ ```
12:55:02 │                     remix │ or start using Prisma Client at the edge (See: https://pris.ly/d/accelerate)
12:55:02 │                     remix │ ```
12:55:02 │                     remix │ import { PrismaClient } from '@prisma/client/edge'
12:55:02 │                     remix │ const prisma = new PrismaClient()
12:55:02 │                     remix │ ```
12:55:02 │                     remix │
12:55:02 │                     remix │ See other ways of importing Prisma Client: http://pris.ly/d/importing-client
12:55:02 │                     remix │
12:55:02 │                     remix │ ┌─────────────────────────────────────────────────────────────┐
12:55:02 │                     remix │ │  Deploying your app to serverless or edge functions?
12:55:02 │                     remix │ │  Try Prisma Accelerate for connection pooling and caching.  │
12:55:02 │                     remix │ │  https://pris.ly/cli/--accelerate                           │
12:55:02 │                     remix │ └─────────────────────────────────────────────────────────────┘
12:55:02 │                     remix │
12:55:02 │                     remix │ prisma:GeneratorProcess child exited with code null on signal SIGTERM +1ms
12:55:02 │                     remix │ prisma:getSchema prismaConfig {
12:55:02 │                     remix │   "packagePath": "/Users/jakub/Programming/test-product-extension/package.json"
12:55:02 │                     remix │ } +0ms
12:55:02 │                     remix │ prisma:getSchema package.json resolved to null +0ms
12:55:02 │                     remix │ prisma:getSchema Trying relative... +0ms
12:55:02 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema prismaConfig {
12:55:02 │                     remix │   "packagePath": "/Users/jakub/Programming/test-product-extension/package.json"
12:55:02 │                     remix │ } +0ms
12:55:02 │                     remix │ prisma:getSchema package.json resolved to null +0ms
12:55:02 │                     remix │ prisma:getSchema Trying relative... +0ms
12:55:02 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Found schema at prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema relative resolved to prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Found schema at prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema relative resolved to prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:02 │                     remix │ prisma:getConfig Using getConfig Wasm +0ms
12:55:02 │                     remix │ prisma:getConfig config data retrieved without errors in getConfig Wasm +1ms
12:55:02 │                     remix │ prisma:cli:checkpoint runCheckpointClientCheck(): Execution time for getting info: 1.8555839999999648 ms +0ms
12:55:02 │                     remix │ prisma:cli:checkpoint runCheckpointClientCheck(): Execution time for "await checkpoint.check(data)": 5.9931250000000205 ms +6ms
2024-06-23T11:55:02.919Z: Request to https://partners.shopify.com/api/cli/graphql completed in 472 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"dd0677410b6f7528aaede2e34d449874"
 - x-request-id: 7be201d4-a4f2-4469-adb1-a1564c406655-1719143702

12:55:02 │                app-access │ 2024-06-23T11:55:02.920Z: Watching extension: app-access for:
12:55:02 │                app-access │ Rebuild and Redeploy Paths:
12:55:02 │                app-access │
12:55:02 │                app-access │
12:55:02 │                app-access │ Redeploy Paths:
12:55:02 │                app-access │ /Users/jakub/Programming/test-product-extension/shopify.app.toml
2024-06-23T11:55:03.046Z:
Running system process:
  · Command: npx prisma migrate deploy
  · Working directory: /Users/jakub/Programming/test-product-extension

12:55:03 │                     remix │ prisma:engines binaries to download libquery-engine, schema-engine +97ms
12:55:03 │                     remix │ prisma:getSchema Trying package.json... +146ms
12:55:03 │                     remix │ prisma:getSchema prismaConfig {
12:55:03 │                     remix │   "packagePath": "/Users/jakub/Programming/test-product-extension/package.json"
12:55:03 │                     remix │ } +1ms
12:55:03 │                     remix │ prisma:getSchema package.json resolved to null +0ms
12:55:03 │                     remix │ prisma:getSchema Trying relative... +0ms
12:55:03 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Found schema at prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema relative resolved to prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +1ms
12:55:03 │                     remix │ prisma:loadEnv project root found at /Users/jakub/Programming/test-product-extension/package.json +0ms
12:55:03 │                     remix │ prisma:tryLoadEnv Environment variables not found at null +0ms
12:55:03 │                     remix │ prisma:tryLoadEnv Environment variables not found at undefined +1ms
12:55:03 │                     remix │ prisma:tryLoadEnv No Environment variables loaded +0ms
12:55:03 │                     remix │ prisma:getConfig Using getConfig Wasm +0ms
12:55:03 │                     remix │ prisma:getConfig config data retrieved without errors in getConfig Wasm +5ms
12:55:03 │                     remix │ prisma:loadEnv project root found at /Users/jakub/Programming/test-product-extension/package.json +0ms
12:55:03 │                     remix │ prisma:tryLoadEnv Environment variables not found at null +1ms
12:55:03 │                     remix │ prisma:tryLoadEnv Environment variables not found at undefined +0ms
12:55:03 │                     remix │ prisma:tryLoadEnv No Environment variables loaded +0ms
12:55:03 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getConfig Using getConfig Wasm +0ms
12:55:03 │                     remix │ Prisma schema loaded from prisma/schema.prisma
12:55:03 │                     remix │ Datasource "db": SQLite database "dev.sqlite" at "file:dev.sqlite"
12:55:03 │                     remix │ prisma:getConfig config data retrieved without errors in getConfig Wasm +1ms
12:55:03 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getConfig Using getConfig Wasm +0ms
12:55:03 │                     remix │ prisma:getConfig config data retrieved without errors in getConfig Wasm +0ms
12:55:03 │                     remix │ prisma:schemaEngine:rpc starting Schema engine with binary: /Users/jakub/Programming/test-product-extension/node_modules/@prisma/engines/schema-engine-darwin-arm64 +8ms
12:55:03 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:schemaEngine:rpc SENDING RPC CALL
{"id":1,"jsonrpc":"2.0","method":"listMigrationDirectories","params":{"migrationsDirectoryPath":"/Users/jakub/Programming/test-product-extension/prisma/migrations"}} +1ms
12:55:03 │                     remix │ prisma:schemaEngine:stderr {"timestamp":"2024-06-23T11:55:03.45151Z","level":"INFO","fields":{"message":"Starting schema engine RPC
server","git_hash":"5675a3182f972f1a8f31d16eee6abf4fd54910e3"},"target":"schema_engine"} +3ms
12:55:03 │                     remix │ prisma:migrate:deploy {
12:55:03 │                     remix │   "listMigrationDirectoriesResult": {
12:55:03 │                     remix │     "migrations": [
12:55:03 │                     remix │       "20240530213853_create_session_table"
12:55:03 │                     remix │     ]
12:55:03 │                     remix │   }
12:55:03 │                     remix │ } +1ms
12:55:03 │                     remix │ prisma:schemaEngine:rpc SENDING RPC CALL
{"id":2,"jsonrpc":"2.0","method":"applyMigrations","params":{"migrationsDirectoryPath":"/Users/jakub/Programming/test-product-extension/prisma/migrations"}} +0ms
12:55:03 │                     remix │ prisma:schemaEngine:stderr {"timestamp":"2024-06-23T11:55:03.452613Z","level":"INFO","fields":{"message":"Analysis run in
0ms","analysis_duration_ms":0},"target":"schema_core::commands::apply_migrations","span":{"name":"ApplyMigrations"},"spans":[{"name":"ApplyMigrations"}]} +0ms
12:55:03 │                     remix │ prisma:cli:bin Execution time for executing "await cli.parse(commandArray)": 71.94708299999999 ms +0ms
12:55:03 │                     remix │
12:55:03 │                     remix │ 1 migration found in prisma/migrations
12:55:03 │                     remix │
12:55:03 │                     remix │
12:55:03 │                     remix │ No pending migrations to apply.
12:55:03 │                     remix │ prisma:getSchema Trying package.json... +1ms
12:55:03 │                     remix │ prisma:getSchema Trying package.json... +0ms
12:55:03 │                     remix │ prisma:getSchema prismaConfig {
12:55:03 │                     remix │   "packagePath": "/Users/jakub/Programming/test-product-extension/package.json"
12:55:03 │                     remix │ } +0ms
12:55:03 │                     remix │ prisma:getSchema package.json resolved to null +0ms
12:55:03 │                     remix │ prisma:getSchema Trying relative... +0ms
12:55:03 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema prismaConfig {
12:55:03 │                     remix │   "packagePath": "/Users/jakub/Programming/test-product-extension/package.json"
12:55:03 │                     remix │ } +0ms
12:55:03 │                     remix │ prisma:getSchema package.json resolved to null +0ms
12:55:03 │                     remix │ prisma:getSchema Trying relative... +0ms
12:55:03 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/schema.prisma +1ms
12:55:03 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Checking existence of /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Found schema at prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema relative resolved to prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Found schema at prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema relative resolved to prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getSchema Reading schema from single file /Users/jakub/Programming/test-product-extension/prisma/schema.prisma +0ms
12:55:03 │                     remix │ prisma:getConfig Using getConfig Wasm +0ms
12:55:03 │                     remix │ prisma:getConfig config data retrieved without errors in getConfig Wasm +0ms
12:55:03 │                     remix │ prisma:cli:checkpoint runCheckpointClientCheck(): Execution time for getting info: 1.451166999999998 ms +0ms
12:55:03 │                     remix │ prisma:cli:checkpoint runCheckpointClientCheck(): Execution time for "await checkpoint.check(data)": 6.686709000000008 ms +7ms
2024-06-23T11:55:03.468Z:
Running system process:
  · Command: npm exec remix vite:dev
  · Working directory: /Users/jakub/Programming/test-product-extension

2024-06-23T11:55:03.818Z: Request to https://partners.shopify.com/api/cli/graphql completed in 1203 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"dd0677410b6f7528aaede2e34d449874"
 - x-request-id: 3327af13-11d2-4429-9025-65763ef1b568-1719143702

12:55:03 │     product-configuration │ Draft updated successfully for extension: product-configuration
12:55:03 │     product-configuration │ 2024-06-23T11:55:03.821Z: Watching extension: product-configuration for:
12:55:03 │     product-configuration │ Rebuild and Redeploy Paths:
12:55:03 │     product-configuration │ /Users/jakub/Programming/test-product-extension/extensions/product-configuration/src/**/*.{ts,tsx,js,jsx}
12:55:03 │     product-configuration │
12:55:03 │     product-configuration │ Redeploy Paths:
12:55:03 │     product-configuration │ /Users/jakub/Programming/test-product-extension/extensions/product-configuration/locales/**.json
12:55:03 │     product-configuration │ /Users/jakub/Programming/test-product-extension/extensions/product-configuration/**.toml
12:55:03 │                     remix │ 2024-06-23T11:55:03.982Z vite:config bundled config file loaded in 12.56ms
12:55:03 │                     remix │ 2024-06-23T11:55:03.988Z vite-tsconfig-paths options.root   == undefined
12:55:03 │                     remix │ 2024-06-23T11:55:03.989Z vite-tsconfig-paths project root   == /Users/jakub/Programming/test-product-extension
12:55:03 │                     remix │ 2024-06-23T11:55:03.989Z vite-tsconfig-paths workspace root == /Users/jakub/Programming/test-product-extension
12:55:03 │                     remix │ 2024-06-23T11:55:03.995Z vite-tsconfig-paths projects: [
12:55:03 │                     remix │   '/Users/jakub/Programming/test-product-extension/tsconfig.json',
12:55:03 │                     remix │   '/Users/jakub/Programming/test-product-extension/extensions/product-configuration/tsconfig.json'
12:55:03 │                     remix │ ]
12:55:03 │                     remix │ 2024-06-23T11:55:03.998Z vite-tsconfig-paths config loaded: {
12:55:03 │                     remix │   configPath: '/Users/jakub/Programming/test-product-extension/tsconfig.json',
12:55:03 │                     remix │   config: {
12:55:03 │                     remix │     include: [ 'env.d.ts', '**/*.ts', '**/*.tsx' ],
12:55:03 │                     remix │     compilerOptions: {
12:55:03 │                     remix │       lib: [ 'DOM', 'DOM.Iterable', 'ES2022' ],
12:55:03 │                     remix │       strict: true,
12:55:03 │                     remix │       skipLibCheck: true,
12:55:03 │                     remix │       isolatedModules: true,
12:55:03 │                     remix │       allowSyntheticDefaultImports: true,
12:55:03 │                     remix │       removeComments: false,
12:55:03 │                     remix │       forceConsistentCasingInFileNames: true,
12:55:03 │                     remix │       noEmit: true,
12:55:03 │                     remix │       allowJs: true,
12:55:03 │                     remix │       resolveJsonModule: true,
12:55:03 │                     remix │       jsx: 'react-jsx',
12:55:03 │                     remix │       module: 'ESNext',
12:55:03 │                     remix │       moduleResolution: 'Bundler',
12:55:03 │                     remix │       target: 'ES2022',
12:55:03 │                     remix │       baseUrl: '/Users/jakub/Programming/test-product-extension',
12:55:03 │                     remix │       paths: { '~/*': [ './app/*' ] },
12:55:03 │                     remix │       types: [ 'node' ]
12:55:03 │                     remix │     }
12:55:03 │                     remix │   }
12:55:03 │                     remix │ }
12:55:04 │                     remix │ 2024-06-23T11:55:03.998Z vite-tsconfig-paths compiled globs: {
12:55:04 │                     remix │   includers: [
12:55:04 │                     remix │     /^\.\/env\.d\.ts\/((?:[^/]*(?:\/|$))*)$/,
12:55:04 │                     remix │     /^\.\/env\.d\.ts$/,
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)([^/]*)\.ts$/,
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)([^/]*)\.tsx$/
12:55:04 │                     remix │   ],
12:55:04 │                     remix │   excluders: [
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)node_modules\/((?:[^/]*(?:\/|$))*)$/,
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)bower_components\/((?:[^/]*(?:\/|$))*)$/,
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)jspm_packages\/((?:[^/]*(?:\/|$))*)$/
12:55:04 │                     remix │   ]
12:55:04 │                     remix │ }
12:55:04 │                     remix │ 2024-06-23T11:55:03.999Z vite-tsconfig-paths config loaded: {
12:55:04 │                     remix │   configPath: '/Users/jakub/Programming/test-product-extension/extensions/product-configuration/tsconfig.json',
12:55:04 │                     remix │   config: { compilerOptions: { jsx: 'react-jsx' }, include: [ './src' ] }
12:55:04 │                     remix │ }
12:55:04 │                     remix │ 2024-06-23T11:55:03.999Z vite-tsconfig-paths [!] missing baseUrl and paths: "/Users/jakub/Programming/test-product-extension/extensions/product-configuration/tsconfig.json"
12:55:04 │                     remix │ 2024-06-23T11:55:04.001Z vite:config bundled config file loaded in 12.16ms
12:55:04 │                     remix │ 2024-06-23T11:55:04.002Z vite-tsconfig-paths options.root   == undefined
12:55:04 │                     remix │ 2024-06-23T11:55:04.002Z vite-tsconfig-paths project root   == /Users/jakub/Programming/test-product-extension
12:55:04 │                     remix │ 2024-06-23T11:55:04.002Z vite-tsconfig-paths workspace root == /Users/jakub/Programming/test-product-extension
12:55:04 │                     remix │ 2024-06-23T11:55:04.002Z vite-tsconfig-paths projects: [
12:55:04 │                     remix │   '/Users/jakub/Programming/test-product-extension/tsconfig.json',
12:55:04 │                     remix │   '/Users/jakub/Programming/test-product-extension/extensions/product-configuration/tsconfig.json'
12:55:04 │                     remix │ ]
12:55:04 │                     remix │ 2024-06-23T11:55:04.003Z vite-tsconfig-paths config loaded: {
12:55:04 │                     remix │   configPath: '/Users/jakub/Programming/test-product-extension/tsconfig.json',
12:55:04 │                     remix │   config: {
12:55:04 │                     remix │     include: [ 'env.d.ts', '**/*.ts', '**/*.tsx' ],
12:55:04 │                     remix │     compilerOptions: {
12:55:04 │                     remix │       lib: [ 'DOM', 'DOM.Iterable', 'ES2022' ],
12:55:04 │                     remix │       strict: true,
12:55:04 │                     remix │       skipLibCheck: true,
12:55:04 │                     remix │       isolatedModules: true,
12:55:04 │                     remix │       allowSyntheticDefaultImports: true,
12:55:04 │                     remix │       removeComments: false,
12:55:04 │                     remix │       forceConsistentCasingInFileNames: true,
12:55:04 │                     remix │       noEmit: true,
12:55:04 │                     remix │       allowJs: true,
12:55:04 │                     remix │       resolveJsonModule: true,
12:55:04 │                     remix │       jsx: 'react-jsx',
12:55:04 │                     remix │       module: 'ESNext',
12:55:04 │                     remix │       moduleResolution: 'Bundler',
12:55:04 │                     remix │       target: 'ES2022',
12:55:04 │                     remix │       baseUrl: '/Users/jakub/Programming/test-product-extension',
12:55:04 │                     remix │       paths: { '~/*': [ './app/*' ] },
12:55:04 │                     remix │       types: [ 'node' ]
12:55:04 │                     remix │     }
12:55:04 │                     remix │   }
12:55:04 │                     remix │ }
12:55:04 │                     remix │ 2024-06-23T11:55:04.003Z vite-tsconfig-paths compiled globs: {
12:55:04 │                     remix │   includers: [
12:55:04 │                     remix │     /^\.\/env\.d\.ts\/((?:[^/]*(?:\/|$))*)$/,
12:55:04 │                     remix │     /^\.\/env\.d\.ts$/,
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)([^/]*)\.ts$/,
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)([^/]*)\.tsx$/
12:55:04 │                     remix │   ],
12:55:04 │                     remix │   excluders: [
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)node_modules\/((?:[^/]*(?:\/|$))*)$/,
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)bower_components\/((?:[^/]*(?:\/|$))*)$/,
12:55:04 │                     remix │     /^\.\/((?:[^/]*(?:\/|$))*)jspm_packages\/((?:[^/]*(?:\/|$))*)$/
12:55:04 │                     remix │   ]
12:55:04 │                     remix │ }
12:55:04 │                     remix │ 2024-06-23T11:55:04.003Z vite-tsconfig-paths config loaded: {
12:55:04 │                     remix │   configPath: '/Users/jakub/Programming/test-product-extension/extensions/product-configuration/tsconfig.json',
12:55:04 │                     remix │   config: { compilerOptions: { jsx: 'react-jsx' }, include: [ './src' ] }
12:55:04 │                     remix │ }
12:55:04 │                     remix │ 2024-06-23T11:55:04.003Z vite-tsconfig-paths [!] missing baseUrl and paths: "/Users/jakub/Programming/test-product-extension/extensions/product-configuration/tsconfig.json"
12:55:04 │                     remix │ 2024-06-23T11:55:04.003Z vite:config using resolved config: {
12:55:04 │                     remix │   server: {
12:55:04 │                     remix │     preTransformRequests: false,
12:55:04 │                     remix │     watch: undefined,
12:55:04 │                     remix │     hmr: false,
12:55:04 │                     remix │     sourcemapIgnoreList: [Function: isInNodeModules$1],
12:55:04 │                     remix │     middlewareMode: false,
12:55:04 │                     remix │     fs: {
12:55:04 │                     remix │       strict: true,
12:55:04 │                     remix │       allow: [Array],
12:55:04 │                     remix │       deny: [Array],
12:55:04 │                     remix │       cachedChecks: undefined
12:55:04 │                     remix │     }
12:55:04 │                     remix │   },
12:55:04 │                     remix │   plugins: [
12:55:04 │                     remix │     'vite:optimized-deps',
12:55:04 │                     remix │     'vite:watch-package-data',
12:55:04 │                     remix │     'vite:pre-alias',
12:55:04 │                     remix │     'alias',
12:55:04 │                     remix │     'remix-virtual-modules',
12:55:04 │                     remix │     'remix-dot-server',
12:55:04 │                     remix │     'remix-inject-hmr-runtime',
12:55:04 │                     remix │     'remix-hmr-runtime',
12:55:04 │                     remix │     'vite-tsconfig-paths',
12:55:04 │                     remix │     'vite:modulepreload-polyfill',
12:55:04 │                     remix │     'vite:resolve',
12:55:04 │                     remix │     'vite:html-inline-proxy',
12:55:04 │                     remix │     'vite:css',
12:55:04 │                     remix │     'vite:esbuild',
12:55:04 │                     remix │     'vite:json',
12:55:04 │                     remix │     'vite:wasm-helper',
12:55:04 │                     remix │     'vite:worker',
12:55:04 │                     remix │     'vite:asset',
12:55:04 │                     remix │     'remix-dot-client',
12:55:04 │                     remix │     'remix-route-exports',
12:55:04 │                     remix │     'remix-react-refresh-babel',
12:55:04 │                     remix │     'vite:wasm-fallback',
12:55:04 │                     remix │     'vite:define',
12:55:04 │                     remix │     'vite:css-post',
12:55:04 │                     remix │     'vite:worker-import-meta-url',
12:55:04 │                     remix │     'vite:asset-import-meta-url',
12:55:04 │                     remix │     'vite:dynamic-import-vars',
12:55:04 │                     remix │     'vite:import-glob',
12:55:04 │                     remix │     'vite:client-inject',
12:55:04 │                     remix │     'vite:css-analysis',
12:55:04 │                     remix │     'vite:import-analysis'
12:55:04 │                     remix │   ],
12:55:04 │                     remix │   build: {
12:55:04 │                     remix │     target: [ 'es2020', 'edge88', 'firefox78', 'chrome87', 'safari14' ],
12:55:04 │                     remix │     cssTarget: [ 'es2020', 'edge88', 'firefox78', 'chrome87', 'safari14' ],
12:55:04 │                     remix │     outDir: 'dist',
12:55:04 │                     remix │     assetsDir: 'assets',
12:55:04 │                     remix │     assetsInlineLimit: 0,
12:55:04 │                     remix │     cssCodeSplit: true,
12:55:04 │                     remix │     sourcemap: false,
12:55:04 │                     remix │     rollupOptions: {},
12:55:04 │                     remix │     minify: 'esbuild',
12:55:04 │                     remix │     terserOptions: {},
12:55:04 │                     remix │     write: true,
12:55:04 │                     remix │     emptyOutDir: null,
12:55:04 │                     remix │     copyPublicDir: true,
12:55:04 │                     remix │     manifest: false,
12:55:04 │                     remix │     lib: false,
12:55:04 │                     remix │     ssr: false,
12:55:04 │                     remix │     ssrManifest: false,
12:55:04 │                     remix │     ssrEmitAssets: false,
12:55:04 │                     remix │     reportCompressedSize: true,
12:55:04 │                     remix │     chunkSizeWarningLimit: 500,
12:55:04 │                     remix │     watch: null,
12:55:04 │                     remix │     commonjsOptions: { include: [Array], extensions: [Array] },
12:55:04 │                     remix │     dynamicImportVarsOptions: { warnOnError: true, exclude: [Array] },
12:55:04 │                     remix │     modulePreload: { polyfill: true },
12:55:04 │                     remix │     cssMinify: true
12:55:04 │                     remix │   },
12:55:04 │                     remix │   optimizeDeps: {
12:55:04 │                     remix │     holdUntilCrawlEnd: true,
12:55:04 │                     remix │     force: undefined,
12:55:04 │                     remix │     esbuildOptions: { preserveSymlinks: false }
12:55:04 │                     remix │   },
12:55:04 │                     remix │   mode: 'development',
12:55:04 │                     remix │   configFile: undefined,
12:55:04 │                     remix │   envFile: false,
12:55:04 │                     remix │   configFileDependencies: [],
12:55:04 │                     remix │   inlineConfig: {
12:55:04 │                     remix │     server: { watch: undefined, preTransformRequests: false, hmr: false },
12:55:04 │                     remix │     plugins: [
12:55:04 │                     remix │       [Object], [Object],
12:55:04 │                     remix │       [Object], [Object],
12:55:04 │                     remix │       [Object], [Object],
12:55:04 │                     remix │       [Object], [Object]
12:55:04 │                     remix │     ],
12:55:04 │                     remix │     build: { assetsInlineLimit: 0 },
12:55:04 │                     remix │     optimizeDeps: { force: undefined },
12:55:04 │                     remix │     mode: 'development',
12:55:04 │                     remix │     configFile: false,
12:55:04 │                     remix │     envFile: false
12:55:04 │                     remix │   },
12:55:04 │                     remix │   root: '/Users/jakub/Programming/test-product-extension',
12:55:04 │                     remix │   base: '/',
12:55:04 │                     remix │   rawBase: '/',
12:55:04 │                     remix │   resolve: {
12:55:04 │                     remix │     mainFields: [ 'browser', 'module', 'jsnext:main', 'jsnext' ],
12:55:04 │                     remix │     conditions: [],
12:55:04 │                     remix │     extensions: [
12:55:04 │                     remix │       '.mjs',  '.js',
12:55:04 │                     remix │       '.mts',  '.ts',
12:55:04 │                     remix │       '.jsx',  '.tsx',
12:55:04 │                     remix │       '.json'
12:55:04 │                     remix │     ],
12:55:04 │                     remix │     dedupe: [],
12:55:04 │                     remix │     preserveSymlinks: false,
12:55:04 │                     remix │     alias: [ [Object], [Object] ]
12:55:04 │                     remix │   },
12:55:04 │                     remix │   publicDir: '/Users/jakub/Programming/test-product-extension/public',
12:55:04 │                     remix │   cacheDir: '/Users/jakub/Programming/test-product-extension/node_modules/.vite',
12:55:04 │                     remix │   command: 'serve',
12:55:04 │                     remix │   ssr: {
12:55:04 │                     remix │     target: 'node',
12:55:04 │                     remix │     optimizeDeps: { noDiscovery: true, esbuildOptions: [Object] }
12:55:04 │                     remix │   },
12:55:04 │                     remix │   isWorker: false,
12:55:04 │                     remix │   mainConfig: null,
12:55:04 │                     remix │   bundleChain: [],
12:55:04 │                     remix │   isProduction: false,
12:55:04 │                     remix │   css: { lightningcss: undefined },
12:55:04 │                     remix │   esbuild: { jsxDev: true },
12:55:04 │                     remix │   preview: {
12:55:04 │                     remix │     port: undefined,
12:55:04 │                     remix │     strictPort: undefined,
12:55:04 │                     remix │     host: undefined,
12:55:04 │                     remix │     https: undefined,
12:55:04 │                     remix │     open: undefined,
12:55:04 │                     remix │     proxy: undefined,
12:55:04 │                     remix │     cors: undefined,
12:55:04 │                     remix │     headers: undefined
12:55:04 │                     remix │   },
12:55:04 │                     remix │   envDir: '/Users/jakub/Programming/test-product-extension',
12:55:04 │                     remix │   env: { BASE_URL: '/', MODE: 'development', DEV: true, PROD: false },
12:55:04 │                     remix │   assetsInclude: [Function: assetsInclude],
12:55:04 │                     remix │   logger: {
12:55:04 │                     remix │     hasWarned: false,
12:55:04 │                     remix │     info: [Function: info],
12:55:04 │                     remix │     warn: [Function: warn],
12:55:04 │                     remix │     warnOnce: [Function: warnOnce],
12:55:04 │                     remix │     error: [Function: error],
12:55:04 │                     remix │     clearScreen: [Function: clearScreen],
12:55:04 │                     remix │     hasErrorLogged: [Function: hasErrorLogged]
12:55:04 │                     remix │   },
12:55:04 │                     remix │   packageCache: Map(1) {
12:55:04 │                     remix │     'fnpd_/Users/jakub/Programming/test-product-extension' => {
12:55:04 │                     remix │       dir: '/Users/jakub/Programming/test-product-extension',
12:55:04 │                     remix │       data: [Object],
12:55:04 │                     remix │       hasSideEffects: [Function: hasSideEffects],
12:55:04 │                     remix │       webResolvedImports: {},
12:55:04 │                     remix │       nodeResolvedImports: {},
12:55:04 │                     remix │       setResolvedCache: [Function: setResolvedCache],
12:55:04 │                     remix │       getResolvedCache: [Function: getResolvedCache]
12:55:04 │                     remix │     },
12:55:04 │                     remix │     set: [Function (anonymous)]
12:55:04 │                     remix │   },
12:55:04 │                     remix │   createResolver: [Function: createResolver],
12:55:04 │                     remix │   worker: { format: 'iife', plugins: '() => plugins', rollupOptions: {} },
12:55:04 │                     remix │   appType: 'spa',
12:55:04 │                     remix │   experimental: { importGlobRestoreExtension: false, hmrPartialAccept: false },
12:55:04 │                     remix │   getSortedPlugins: [Function: getSortedPlugins],
12:55:04 │                     remix │   getSortedPluginHooks: [Function: getSortedPluginHooks]
12:55:04 │                     remix │ }
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteTimeMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / corsMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteCachedTransformMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use /__open-in-editor launchEditorMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteHMRPingMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteServePublicMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteTransformMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteServeRawFsMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteServeStaticMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteHtmlFallbackMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteIndexHtmlMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / vite404Middleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteErrorMiddleware
12:55:04 │                     remix │ 2024-06-23T11:55:04.013Z vite:config using resolved config: {
12:55:04 │                     remix │   server: {
12:55:04 │                     remix │     preTransformRequests: true,
12:55:04 │                     remix │     port: 50567,
12:55:04 │                     remix │     hmr: {
12:55:04 │                     remix │       protocol: 'wss',
12:55:04 │                     remix │       host: 'recover-he-mandate-rev.trycloudflare.com',
12:55:04 │                     remix │       port: 50567,
12:55:04 │                     remix │       clientPort: 443
12:55:04 │                     remix │     },
12:55:04 │                     remix │     fs: {
12:55:04 │                     remix │       strict: true,
12:55:04 │                     remix │       allow: [Array],
12:55:04 │                     remix │       deny: [Array],
12:55:04 │                     remix │       cachedChecks: undefined
12:55:04 │                     remix │     },
12:55:04 │                     remix │     sourcemapIgnoreList: [Function: isInNodeModules$1],
12:55:04 │                     remix │     middlewareMode: false
12:55:04 │                     remix │   },
12:55:04 │                     remix │   plugins: [
12:55:04 │                     remix │     'vite:optimized-deps',
12:55:04 │                     remix │     'vite:watch-package-data',
12:55:04 │                     remix │     'vite:pre-alias',
12:55:04 │                     remix │     'alias',
12:55:04 │                     remix │     'remix-virtual-modules',
12:55:04 │                     remix │     'remix-dot-server',
12:55:04 │                     remix │     'remix-inject-hmr-runtime',
12:55:04 │                     remix │     'remix-hmr-runtime',
12:55:04 │                     remix │     'vite-tsconfig-paths',
12:55:04 │                     remix │     'vite:modulepreload-polyfill',
12:55:04 │                     remix │     'vite:resolve',
12:55:04 │                     remix │     'vite:html-inline-proxy',
12:55:04 │                     remix │     'vite:css',
12:55:04 │                     remix │     'vite:esbuild',
12:55:04 │                     remix │     'vite:json',
12:55:04 │                     remix │     'vite:wasm-helper',
12:55:04 │                     remix │     'vite:worker',
12:55:04 │                     remix │     'vite:asset',
12:55:04 │                     remix │     'remix',
12:55:04 │                     remix │     'remix-dot-client',
12:55:04 │                     remix │     'remix-route-exports',
12:55:04 │                     remix │     'remix-react-refresh-babel',
12:55:04 │                     remix │     'remix-hmr-updates',
12:55:04 │                     remix │     'vite:wasm-fallback',
12:55:04 │                     remix │     'vite:define',
12:55:04 │                     remix │     'vite:css-post',
12:55:04 │                     remix │     'vite:worker-import-meta-url',
12:55:04 │                     remix │     'vite:asset-import-meta-url',
12:55:04 │                     remix │     'vite:dynamic-import-vars',
12:55:04 │                     remix │     'vite:import-glob',
12:55:04 │                     remix │     'vite:client-inject',
12:55:04 │                     remix │     'vite:css-analysis',
12:55:04 │                     remix │     'vite:import-analysis'
12:55:04 │                     remix │   ],
12:55:04 │                     remix │   build: {
12:55:04 │                     remix │     target: [ 'es2020', 'edge88', 'firefox78', 'chrome87', 'safari14' ],
12:55:04 │                     remix │     cssTarget: [ 'es2020', 'edge88', 'firefox78', 'chrome87', 'safari14' ],
12:55:04 │                     remix │     outDir: 'dist',
12:55:04 │                     remix │     assetsDir: 'assets',
12:55:04 │                     remix │     assetsInlineLimit: 0,
12:55:04 │                     remix │     cssCodeSplit: true,
12:55:04 │                     remix │     sourcemap: false,
12:55:04 │                     remix │     rollupOptions: {},
12:55:04 │                     remix │     minify: 'esbuild',
12:55:04 │                     remix │     terserOptions: {},
12:55:04 │                     remix │     write: true,
12:55:04 │                     remix │     emptyOutDir: null,
12:55:04 │                     remix │     copyPublicDir: true,
12:55:04 │                     remix │     manifest: false,
12:55:04 │                     remix │     lib: false,
12:55:04 │                     remix │     ssr: false,
12:55:04 │                     remix │     ssrManifest: false,
12:55:04 │                     remix │     ssrEmitAssets: false,
12:55:04 │                     remix │     reportCompressedSize: true,
12:55:04 │                     remix │     chunkSizeWarningLimit: 500,
12:55:04 │                     remix │     watch: null,
12:55:04 │                     remix │     commonjsOptions: { include: [Array], extensions: [Array] },
12:55:04 │                     remix │     dynamicImportVarsOptions: { warnOnError: true, exclude: [Array] },
12:55:04 │                     remix │     modulePreload: { polyfill: true },
12:55:04 │                     remix │     cssMinify: true
12:55:04 │                     remix │   },
12:55:04 │                     remix │   optimizeDeps: {
12:55:04 │                     remix │     holdUntilCrawlEnd: true,
12:55:04 │                     remix │     force: undefined,
12:55:04 │                     remix │     include: [
12:55:04 │                     remix │       'react',
12:55:04 │                     remix │       'react/jsx-runtime',
12:55:04 │                     remix │       'react/jsx-dev-runtime',
12:55:04 │                     remix │       'react-dom/client',
12:55:04 │                     remix │       '@remix-run/react'
12:55:04 │                     remix │     ],
12:55:04 │                     remix │     esbuildOptions: { preserveSymlinks: false }
12:55:04 │                     remix │   },
12:55:04 │                     remix │   __remixPluginContext: {
12:55:04 │                     remix │     remixConfig: {
12:55:04 │                     remix │       appDirectory: '/Users/jakub/Programming/test-product-extension/app',
12:55:04 │                     remix │       basename: '/',
12:55:04 │                     remix │       buildDirectory: '/Users/jakub/Programming/test-product-extension/build',
12:55:04 │                     remix │       buildEnd: undefined,
12:55:04 │                     remix │       future: [Object],
12:55:04 │                     remix │       manifest: false,
12:55:04 │                     remix │       publicPath: '/',
12:55:04 │                     remix │       routes: [Object],
12:55:04 │                     remix │       serverBuildFile: 'index.js',
12:55:04 │                     remix │       serverBundles: undefined,
12:55:04 │                     remix │       serverModuleFormat: 'esm',
12:55:04 │                     remix │       ssr: true
12:55:04 │                     remix │     },
12:55:04 │                     remix │     rootDirectory: '/Users/jakub/Programming/test-product-extension',
12:55:04 │                     remix │     entryClientFilePath: '/Users/jakub/Programming/test-product-extension/node_modules/@remix-run/dev/dist/config/defaults/entry.client.tsx',
12:55:04 │                     remix │     entryServerFilePath: '/Users/jakub/Programming/test-product-extension/app/entry.server.tsx',
12:55:04 │                     remix │     viteManifestEnabled: false,
12:55:04 │                     remix │     isSsrBuild: false
12:55:04 │                     remix │   },
12:55:04 │                     remix │   appType: 'custom',
12:55:04 │                     remix │   ssr: {
12:55:04 │                     remix │     target: 'node',
12:55:04 │                     remix │     external: undefined,
12:55:04 │                     remix │     optimizeDeps: { noDiscovery: true, esbuildOptions: [Object] }
12:55:04 │                     remix │   },
12:55:04 │                     remix │   esbuild: { jsxDev: true, jsx: 'automatic' },
12:55:04 │                     remix │   resolve: {
12:55:04 │                     remix │     mainFields: [ 'browser', 'module', 'jsnext:main', 'jsnext' ],
12:55:04 │                     remix │     conditions: [],
12:55:04 │                     remix │     extensions: [
12:55:04 │                     remix │       '.mjs',  '.js',
12:55:04 │                     remix │       '.mts',  '.ts',
12:55:04 │                     remix │       '.jsx',  '.tsx',
12:55:04 │                     remix │       '.json'
12:55:04 │                     remix │     ],
12:55:04 │                     remix │     dedupe: [ 'react', 'react-dom', '@remix-run/react' ],
12:55:04 │                     remix │     preserveSymlinks: false,
12:55:04 │                     remix │     alias: [ [Object], [Object] ]
12:55:04 │                     remix │   },
12:55:04 │                     remix │   configFile: '/Users/jakub/Programming/test-product-extension/vite.config.ts',
12:55:04 │                     remix │   configFileDependencies: [ '/Users/jakub/Programming/test-product-extension/vite.config.ts' ],
12:55:04 │                     remix │   inlineConfig: {
12:55:04 │                     remix │     root: undefined,
12:55:04 │                     remix │     mode: undefined,
12:55:04 │                     remix │     configFile: undefined,
12:55:04 │                     remix │     server: {
12:55:04 │                     remix │       open: undefined,
12:55:04 │                     remix │       cors: undefined,
12:55:04 │                     remix │       host: undefined,
12:55:04 │                     remix │       port: undefined,
12:55:04 │                     remix │       strictPort: undefined
12:55:04 │                     remix │     },
12:55:04 │                     remix │     optimizeDeps: { force: undefined },
12:55:04 │                     remix │     clearScreen: undefined,
12:55:04 │                     remix │     logLevel: undefined
12:55:04 │                     remix │   },
12:55:04 │                     remix │   root: '/Users/jakub/Programming/test-product-extension',
12:55:04 │                     remix │   base: '/',
12:55:04 │                     remix │   rawBase: '/',
12:55:04 │                     remix │   publicDir: '/Users/jakub/Programming/test-product-extension/public',
12:55:04 │                     remix │   cacheDir: '/Users/jakub/Programming/test-product-extension/node_modules/.vite',
12:55:04 │                     remix │   command: 'serve',
12:55:04 │                     remix │   mode: 'development',
12:55:04 │                     remix │   isWorker: false,
12:55:04 │                     remix │   mainConfig: null,
12:55:04 │                     remix │   bundleChain: [],
12:55:04 │                     remix │   isProduction: false,
12:55:04 │                     remix │   css: { lightningcss: undefined },
12:55:04 │                     remix │   preview: {
12:55:04 │                     remix │     port: undefined,
12:55:04 │                     remix │     strictPort: undefined,
12:55:04 │                     remix │     host: undefined,
12:55:04 │                     remix │     https: undefined,
12:55:04 │                     remix │     open: undefined,
12:55:04 │                     remix │     proxy: undefined,
12:55:04 │                     remix │     cors: undefined,
12:55:04 │                     remix │     headers: undefined
12:55:04 │                     remix │   },
12:55:04 │                     remix │   envDir: '/Users/jakub/Programming/test-product-extension',
12:55:04 │                     remix │   env: { BASE_URL: '/', MODE: 'development', DEV: true, PROD: false },
12:55:04 │                     remix │   assetsInclude: [Function: assetsInclude],
12:55:04 │                     remix │   logger: {
12:55:04 │                     remix │     hasWarned: false,
12:55:04 │                     remix │     info: [Function: info],
12:55:04 │                     remix │     warn: [Function: warn],
12:55:04 │                     remix │     warnOnce: [Function: warnOnce],
12:55:04 │                     remix │     error: [Function: error],
12:55:04 │                     remix │     clearScreen: [Function: clearScreen],
12:55:04 │                     remix │     hasErrorLogged: [Function: hasErrorLogged]
12:55:04 │                     remix │   },
12:55:04 │                     remix │   packageCache: Map(1) {
12:55:04 │                     remix │     'fnpd_/Users/jakub/Programming/test-product-extension' => {
12:55:04 │                     remix │       dir: '/Users/jakub/Programming/test-product-extension',
12:55:04 │                     remix │       data: [Object],
12:55:04 │                     remix │       hasSideEffects: [Function: hasSideEffects],
12:55:04 │                     remix │       webResolvedImports: {},
12:55:04 │                     remix │       nodeResolvedImports: {},
12:55:04 │                     remix │       setResolvedCache: [Function: setResolvedCache],
12:55:04 │                     remix │       getResolvedCache: [Function: getResolvedCache]
12:55:04 │                     remix │     },
12:55:04 │                     remix │     set: [Function (anonymous)]
12:55:04 │                     remix │   },
12:55:04 │                     remix │   createResolver: [Function: createResolver],
12:55:04 │                     remix │   worker: { format: 'iife', plugins: '() => plugins', rollupOptions: {} },
12:55:04 │                     remix │   experimental: { importGlobRestoreExtension: false, hmrPartialAccept: false },
12:55:04 │                     remix │   getSortedPlugins: [Function: getSortedPlugins],
12:55:04 │                     remix │   getSortedPluginHooks: [Function: getSortedPluginHooks]
12:55:04 │                     remix │ }
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteTimeMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / corsMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteCachedTransformMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use /__open-in-editor launchEditorMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteHMRPingMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteServePublicMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteTransformMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteServeRawFsMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteServeStaticMiddleware
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / anonymous
12:55:04 │                     remix │ Sun, 23 Jun 2024 11:55:04 GMT connect:dispatcher use / viteErrorMiddleware
12:55:04 │                     remix │ 2024-06-23T11:55:04.022Z vite:deps Hash is consistent. Skipping. Use --force to override.
12:55:04 │                     remix │   ➜  Local:   http://localhost:50567/
12:55:04 │                     remix │   ➜  Network: use --host to expose
2024-06-23T11:55:07.278Z: Sending "Partners" GraphQL request:
  query FindAppPreviewMode($apiKey: String!) {
    app(apiKey: $apiKey) {
      developmentStorePreviewEnabled
    }
  }

With variables:
{
  "apiKey": "*****"
}

With request headers:
 - User-Agent: Shopify CLI; v=3.63.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: darwin
 - Content-Type: application/json

2024-06-23T11:55:07.637Z: Request to https://partners.shopify.com/api/cli/graphql completed in 355 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"f9e834f7231872722829cb9dec035749"
 - x-request-id: e7309277-1c93-4e3a-ad93-27b2399a6ac3-1719143707

2024-06-23T11:55:12.278Z: Sending "Partners" GraphQL request:
  query FindAppPreviewMode($apiKey: String!) {
    app(apiKey: $apiKey) {
      developmentStorePreviewEnabled
    }
  }

With variables:
{
  "apiKey": "*****"
}

With request headers:
 - User-Agent: Shopify CLI; v=3.63.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: darwin
 - Content-Type: application/json

2024-06-23T11:55:12.897Z: Request to https://partners.shopify.com/api/cli/graphql completed in 617 ms
With response headers:
 - cache-control: max-age=0, private, must-revalidate
 - content-type: application/json; charset=utf-8
 - etag: W/"f9e834f7231872722829cb9dec035749"
 - x-request-id: c5022f55-62b0-4f93-81a7-77823a8c8e8c-1719143712

2024-06-23T11:55:17.279Z: Sending "Partners" GraphQL request:
  query FindAppPreviewMode($apiKey: String!) {
    app(apiKey: $apiKey) {
      developmentStorePreviewEnabled
    }
  }

With variables:
{
  "apiKey": "*****"
}

With request headers:
 - User-Agent: Shopify CLI; v=3.63.0
 - Keep-Alive: timeout=30
 - Sec-CH-UA-PLATFORM: darwin
 - Content-Type: application/json

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

› Press d │ toggle development store preview: ✔ on
› Press g │ open GraphiQL (Admin API) in your browser
› Press p │ preview in your browser
› Press q │ quit

Preview URL: https://recover-he-mandate-rev.trycloudflare.com/extensions/dev-console
GraphiQL URL: http://localhost:3457/graphiql

Reproduction steps

  1. Create a new app using shopify app init
  2. Generate a new extension with shopify app generate extension. Pick Admin -> Product configuration
  3. Run shopify app dev
  4. Click on the preview link
  5. Navigate to product details or variant details and observe your extension not being rendered

Operating System

Mac OS Sonoma 14.4.1

Shopify CLI version (check your project's package.json if you're not sure)

3.63.0

Shell

No response

Node version (run node -v if you're not sure)

No response

What language and version are you using in your application?

No response

@KazuOfficial KazuOfficial added the Type: Bug Something isn't working label Jun 23, 2024
@isaacroldan isaacroldan added the Area: @shopify/app @shopify/app package issues label Jul 2, 2024
@shauns shauns self-assigned this Aug 6, 2024
@shauns
Copy link
Contributor

shauns commented Aug 6, 2024

Hi @KazuOfficial -- the product_configuration extension is focused on managing bundles. The docs cover this: https://shopify.dev/docs/apps/build/product-merchandising/bundles/add-merchant-config-ui

Reading between the lines, an admin_block extension might be what you're after to customise the products page: https://shopify.dev/docs/apps/build/admin#admin-blocks

Best of luck with what you're building!

@shauns shauns closed this as completed Aug 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: @shopify/app @shopify/app package issues Type: Bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants