@playdrop/playdrop-cli 0.16.5 → 0.16.12
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.
- package/bin/playdrop +1 -2
- package/config/client-meta.json +4 -4
- package/dist/apiClient.d.ts +2 -2
- package/dist/apiClient.js +16 -20
- package/dist/appUrls.d.ts +2 -2
- package/dist/appUrls.js +31 -33
- package/dist/apps/build.d.ts +2 -2
- package/dist/apps/build.js +83 -83
- package/dist/apps/index.d.ts +7 -7
- package/dist/apps/index.js +8 -8
- package/dist/apps/loadCheck.d.ts +28 -16
- package/dist/apps/loadCheck.js +411 -279
- package/dist/apps/registration.d.ts +3 -3
- package/dist/apps/registration.js +1 -1
- package/dist/apps/staticHtml.d.ts +3 -3
- package/dist/apps/staticHtml.js +90 -91
- package/dist/apps/surfaceProfiles.d.ts +2 -2
- package/dist/apps/surfaceProfiles.js +6 -6
- package/dist/apps/upload.d.ts +5 -5
- package/dist/apps/upload.js +75 -81
- package/dist/apps/validate.d.ts +2 -2
- package/dist/apps/validate.js +18 -22
- package/dist/assetSpecs.d.ts +2 -2
- package/dist/assetSpecs.js +35 -35
- package/dist/assets/model-artifacts.d.ts +1 -1
- package/dist/assets/model-artifacts.js +81 -77
- package/dist/assets/model-worker.d.ts +1 -1
- package/dist/assets/model-worker.js +6 -6
- package/dist/browser.js +9 -9
- package/dist/catalogue-utils.d.ts +1 -1
- package/dist/catalogue-utils.js +26 -26
- package/dist/catalogue.d.ts +21 -16
- package/dist/catalogue.js +509 -413
- package/dist/clientInfo.d.ts +1 -1
- package/dist/clientInfo.js +28 -28
- package/dist/commandContext.d.ts +5 -5
- package/dist/commandContext.js +19 -23
- package/dist/commands/accounts.js +6 -6
- package/dist/commands/ads.js +16 -16
- package/dist/commands/agents.d.ts +2 -2
- package/dist/commands/agents.js +131 -127
- package/dist/commands/boosts.js +41 -31
- package/dist/commands/browse.d.ts +2 -2
- package/dist/commands/browse.js +168 -128
- package/dist/commands/build.js +9 -9
- package/dist/commands/captureListing.d.ts +8 -8
- package/dist/commands/captureListing.js +292 -332
- package/dist/commands/changelog.js +1 -1
- package/dist/commands/chat.js +51 -53
- package/dist/commands/check.d.ts +1 -1
- package/dist/commands/check.js +44 -44
- package/dist/commands/clients.d.ts +3 -3
- package/dist/commands/clients.js +67 -64
- package/dist/commands/comments.js +36 -29
- package/dist/commands/create.js +305 -312
- package/dist/commands/createRemixContent.d.ts +1 -1
- package/dist/commands/createRemixContent.js +65 -60
- package/dist/commands/creations.js +205 -135
- package/dist/commands/credits.js +37 -27
- package/dist/commands/detail.js +40 -34
- package/dist/commands/dev.js +103 -126
- package/dist/commands/devBrowser.js +74 -65
- package/dist/commands/devRuntimeAssets.d.ts +4 -4
- package/dist/commands/devRuntimeAssets.js +38 -40
- package/dist/commands/devServer.d.ts +4 -4
- package/dist/commands/devServer.js +183 -174
- package/dist/commands/devShared.d.ts +3 -3
- package/dist/commands/devShared.js +31 -31
- package/dist/commands/doctor.d.ts +5 -5
- package/dist/commands/doctor.js +63 -57
- package/dist/commands/documentation.js +42 -32
- package/dist/commands/feedback.js +59 -42
- package/dist/commands/format.js +9 -9
- package/dist/commands/generation.d.ts +2 -2
- package/dist/commands/generation.js +344 -326
- package/dist/commands/init.d.ts +4 -4
- package/dist/commands/init.js +64 -61
- package/dist/commands/login.d.ts +2 -2
- package/dist/commands/login.js +42 -62
- package/dist/commands/logout.js +4 -4
- package/dist/commands/marketing.d.ts +8 -8
- package/dist/commands/marketing.js +246 -297
- package/dist/commands/notes.js +19 -19
- package/dist/commands/notifications.js +34 -22
- package/dist/commands/npmProcess.js +3 -3
- package/dist/commands/ownedRuntimeImageValidation.d.ts +1 -1
- package/dist/commands/ownedRuntimeImageValidation.js +19 -17
- package/dist/commands/play.js +12 -21
- package/dist/commands/publicPages.js +8 -4
- package/dist/commands/review.js +123 -110
- package/dist/commands/search.js +107 -88
- package/dist/commands/tags.js +10 -12
- package/dist/commands/taskCaptureSession.d.ts +3 -3
- package/dist/commands/taskCaptureSession.js +3 -3
- package/dist/commands/tweaks.js +25 -23
- package/dist/commands/upgrade.js +40 -31
- package/dist/commands/upload-content.d.ts +5 -5
- package/dist/commands/upload-content.js +130 -122
- package/dist/commands/upload-graph.d.ts +1 -1
- package/dist/commands/upload-graph.js +7 -11
- package/dist/commands/upload.d.ts +7 -7
- package/dist/commands/upload.js +196 -217
- package/dist/commands/validate.js +33 -32
- package/dist/commands/versionsBrowse.js +61 -51
- package/dist/commands/whoami.js +11 -14
- package/dist/commands/worker/archive-staging.d.ts +9 -0
- package/dist/commands/worker/archive-staging.js +257 -0
- package/dist/commands/worker/instrument-evidence.d.ts +1 -1
- package/dist/commands/worker/instrument-evidence.js +41 -43
- package/dist/commands/worker/provider-telemetry.d.ts +2 -1
- package/dist/commands/worker/provider-telemetry.js +181 -64
- package/dist/commands/worker/runtime.d.ts +18 -3
- package/dist/commands/worker/runtime.js +291 -239
- package/dist/commands/worker.d.ts +83 -22
- package/dist/commands/worker.js +1980 -1411
- package/dist/commands/workspaces.d.ts +2 -2
- package/dist/commands/workspaces.js +57 -57
- package/dist/config.js +23 -20
- package/dist/devAuth.d.ts +3 -3
- package/dist/devAuth.js +20 -17
- package/dist/environment.d.ts +1 -1
- package/dist/environment.js +34 -34
- package/dist/errors.d.ts +1 -1
- package/dist/errors.js +7 -7
- package/dist/externalAssetPackValidation.d.ts +1 -1
- package/dist/externalAssetPackValidation.js +9 -9
- package/dist/http.d.ts +1 -1
- package/dist/http.js +9 -9
- package/dist/index.js +657 -664
- package/dist/listingCaptureLease.js +23 -23
- package/dist/listingPreflight.d.ts +2 -2
- package/dist/listingPreflight.js +33 -33
- package/dist/messages.js +6 -14
- package/dist/output.js +9 -9
- package/dist/playwright.d.ts +1 -1
- package/dist/playwright.js +35 -40
- package/dist/proxyFetch.js +30 -27
- package/dist/recorderRelease.js +8 -8
- package/dist/refs.d.ts +5 -5
- package/dist/refs.js +40 -37
- package/dist/sessionCookie.js +15 -21
- package/dist/shellProbe.js +5 -5
- package/dist/taskSelection.d.ts +3 -3
- package/dist/taskSelection.js +67 -62
- package/dist/taskUtils.d.ts +1 -1
- package/dist/taskUtils.js +4 -4
- package/dist/tweakStaleness.d.ts +3 -3
- package/dist/tweakStaleness.js +8 -8
- package/dist/uploadLog.d.ts +3 -3
- package/dist/uploadLog.js +51 -51
- package/dist/versionCompare.js +3 -3
- package/dist/workerAppProject.d.ts +1 -1
- package/dist/workerAppProject.js +10 -17
- package/dist/workspaceAuth.d.ts +1 -1
- package/dist/workspaceAuth.js +28 -22
- package/node_modules/@playdrop/ai-client/dist/index.d.ts +35 -35
- package/node_modules/@playdrop/ai-client/dist/index.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/client.d.ts +34 -33
- package/node_modules/@playdrop/api-client/dist/client.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/core/errors.d.ts +1 -1
- package/node_modules/@playdrop/api-client/dist/core/errors.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/core/request.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/core/request.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/admin.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/admin.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/admin.js +4 -1
- package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.d.ts +4 -3
- package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/agent-tasks.js +12 -0
- package/node_modules/@playdrop/api-client/dist/domains/ai.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/ai.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/apps.d.ts +4 -4
- package/node_modules/@playdrop/api-client/dist/domains/apps.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/asset-packs.d.ts +4 -4
- package/node_modules/@playdrop/api-client/dist/domains/asset-packs.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/assets.d.ts +4 -4
- package/node_modules/@playdrop/api-client/dist/domains/assets.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/auth.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/auth.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/chat.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/chat.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/comments.d.ts +3 -3
- package/node_modules/@playdrop/api-client/dist/domains/comments.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/free-credits.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/free-credits.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/me.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/me.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/payments.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/payments.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/player-meta.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/player-meta.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/playtrade.d.ts +3 -3
- package/node_modules/@playdrop/api-client/dist/domains/playtrade.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/playtrade.js +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/search.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/search.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/domains/tags.d.ts +2 -2
- package/node_modules/@playdrop/api-client/dist/domains/tags.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/index.d.ts +19 -18
- package/node_modules/@playdrop/api-client/dist/index.d.ts.map +1 -1
- package/node_modules/@playdrop/api-client/dist/index.js +7 -2
- package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.js +47 -47
- package/node_modules/@playdrop/boxel-core/dist/src/entity-cleaner.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.d.ts +3 -3
- package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.js +32 -47
- package/node_modules/@playdrop/boxel-core/dist/src/entity-utils.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/format-utils.js +16 -18
- package/node_modules/@playdrop/boxel-core/dist/src/format-utils.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/geometry.d.ts +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/index.d.ts +4 -4
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/common.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/index.d.ts +3 -3
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.d.ts +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.js +44 -45
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/textured-builder.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/types.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.d.ts +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.js +40 -44
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r15/voxel-builder.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.d.ts +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.js +30 -34
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/builder.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.d.ts +4 -4
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/index.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.d.ts +3 -3
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.js +23 -20
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/scanner.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.d.ts +3 -3
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/artifacts.js +3 -3
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.js +21 -21
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/r6/textures/face-map.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/humanoid/templates/index.js +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/index.d.ts +19 -19
- package/node_modules/@playdrop/boxel-core/dist/src/materials.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/materials.js +12 -16
- package/node_modules/@playdrop/boxel-core/dist/src/materials.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.js +38 -41
- package/node_modules/@playdrop/boxel-core/dist/src/palette_tools.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/serialization.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/serialization.js +54 -56
- package/node_modules/@playdrop/boxel-core/dist/src/serialization.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/textures.d.ts +3 -3
- package/node_modules/@playdrop/boxel-core/dist/src/textures.js +39 -45
- package/node_modules/@playdrop/boxel-core/dist/src/textures.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.d.ts +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.js +39 -43
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/infer-face.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.d.ts +3 -3
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.js +35 -35
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/layer-mode.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.js +18 -18
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/merge-overlay.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.d.ts +3 -3
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.js +50 -48
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/textured-boxes/slice.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.js +22 -26
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/upscale.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.d.ts +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.js +8 -8
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/slice.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.d.ts +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.js +23 -28
- package/node_modules/@playdrop/boxel-core/dist/src/transforms/voxels/textured-to-voxel.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/types.d.ts +8 -8
- package/node_modules/@playdrop/boxel-core/dist/src/validation.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/validation.js +93 -95
- package/node_modules/@playdrop/boxel-core/dist/src/validation.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.js +2 -2
- package/node_modules/@playdrop/boxel-core/dist/src/voxels/greedy-mesher.js.map +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/voxels.d.ts +1 -1
- package/node_modules/@playdrop/boxel-core/dist/src/voxels.js +2 -7
- package/node_modules/@playdrop/boxel-core/dist/src/voxels.js.map +1 -1
- package/node_modules/@playdrop/boxel-three/dist/src/animations.d.ts +3 -3
- package/node_modules/@playdrop/boxel-three/dist/src/builders.d.ts +4 -4
- package/node_modules/@playdrop/boxel-three/dist/src/context.d.ts +3 -3
- package/node_modules/@playdrop/boxel-three/dist/src/exporters/glb.d.ts +6 -6
- package/node_modules/@playdrop/boxel-three/dist/src/exporters/glb.js +9 -1
- package/node_modules/@playdrop/boxel-three/dist/src/exporters/image.d.ts +3 -3
- package/node_modules/@playdrop/boxel-three/dist/src/index.d.ts +17 -17
- package/node_modules/@playdrop/boxel-three/dist/src/instantiate.d.ts +9 -9
- package/node_modules/@playdrop/boxel-three/dist/src/nodes.d.ts +3 -3
- package/node_modules/@playdrop/boxel-three/dist/src/nodes.js +1 -1
- package/node_modules/@playdrop/boxel-three/dist/src/overlays.d.ts +2 -2
- package/node_modules/@playdrop/boxel-three/dist/src/primitives.d.ts +1 -1
- package/node_modules/@playdrop/boxel-three/dist/src/scene.d.ts +1 -1
- package/node_modules/@playdrop/boxel-three/dist/src/skinned-mesh.d.ts +2 -2
- package/node_modules/@playdrop/boxel-three/dist/src/texture-atlas.d.ts +1 -1
- package/node_modules/@playdrop/boxel-three/dist/src/textures.d.ts +3 -3
- package/node_modules/@playdrop/boxel-three/dist/src/types.d.ts +4 -4
- package/node_modules/@playdrop/boxel-three/dist/src/voxels/faces.d.ts +2 -2
- package/node_modules/@playdrop/boxel-three/dist/src/voxels/mesher.d.ts +1 -1
- package/node_modules/@playdrop/boxel-three/dist/test/fixtures/render-worker.d.ts +1 -1
- package/node_modules/@playdrop/config/client-meta.json +4 -4
- package/node_modules/@playdrop/config/dist/src/client-meta.d.ts +1 -1
- package/node_modules/@playdrop/config/dist/src/client-meta.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/client-meta.js +10 -10
- package/node_modules/@playdrop/config/dist/src/constants.js +10 -10
- package/node_modules/@playdrop/config/dist/src/creator-plans.d.ts +1 -1
- package/node_modules/@playdrop/config/dist/src/creator-plans.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/creator-plans.js +27 -28
- package/node_modules/@playdrop/config/dist/src/deployment.d.ts +4 -4
- package/node_modules/@playdrop/config/dist/src/deployment.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/deployment.js +42 -41
- package/node_modules/@playdrop/config/dist/src/game-arena.js +12 -12
- package/node_modules/@playdrop/config/dist/src/index.d.ts +9 -9
- package/node_modules/@playdrop/config/dist/src/index.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/index.js +24 -25
- package/node_modules/@playdrop/config/dist/src/public-deployment.d.ts +4 -4
- package/node_modules/@playdrop/config/dist/src/public-deployment.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/public-deployment.js +41 -39
- package/node_modules/@playdrop/config/dist/src/runtime-client-meta.js +1 -3
- package/node_modules/@playdrop/config/dist/src/runtime-service-origins.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/runtime-service-origins.js +23 -25
- package/node_modules/@playdrop/config/dist/src/server/fastify.d.ts +5 -5
- package/node_modules/@playdrop/config/dist/src/server/fastify.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/server/fastify.js +44 -46
- package/node_modules/@playdrop/config/dist/src/server/logging.d.ts +1 -1
- package/node_modules/@playdrop/config/dist/src/server/logging.d.ts.map +1 -1
- package/node_modules/@playdrop/config/dist/src/server/logging.js +6 -8
- package/node_modules/@playdrop/config/dist/src/types.d.ts +2 -2
- package/node_modules/@playdrop/config/dist/test/creator-plans.test.js +12 -12
- package/node_modules/@playdrop/config/dist/test/deployment.test.js +59 -59
- package/node_modules/@playdrop/config/dist/test/fastify.test.js +4 -4
- package/node_modules/@playdrop/config/dist/test/game-arena.test.js +8 -8
- package/node_modules/@playdrop/config/dist/test/logging.test.js +6 -6
- package/node_modules/@playdrop/config/dist/test/validateClientEnvironment.test.js +57 -57
- package/node_modules/@playdrop/config/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@playdrop/types/dist/agent-task-playtest.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/agent-task-terminal.d.ts +2 -2
- package/node_modules/@playdrop/types/dist/agent-task-terminal.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/api.d.ts +314 -250
- package/node_modules/@playdrop/types/dist/api.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/api.js +40 -59
- package/node_modules/@playdrop/types/dist/app-capability-filters.d.ts +2 -2
- package/node_modules/@playdrop/types/dist/app-playtest-tape.d.ts +6 -6
- package/node_modules/@playdrop/types/dist/app-playtest-tape.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/app-review.d.ts +2 -2
- package/node_modules/@playdrop/types/dist/app-review.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/app-review.js +1 -6
- package/node_modules/@playdrop/types/dist/app.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/asset-pack.d.ts +5 -5
- package/node_modules/@playdrop/types/dist/asset-spec.d.ts +4 -4
- package/node_modules/@playdrop/types/dist/asset.d.ts +11 -11
- package/node_modules/@playdrop/types/dist/attachment-policy.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/chat.d.ts +3 -3
- package/node_modules/@playdrop/types/dist/creator-public-image.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/graph.d.ts +4 -4
- package/node_modules/@playdrop/types/dist/index.d.ts +25 -25
- package/node_modules/@playdrop/types/dist/instrument-evidence.d.ts +2 -2
- package/node_modules/@playdrop/types/dist/instrument-evidence.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/instrument-evidence.js +2 -11
- package/node_modules/@playdrop/types/dist/locale.d.ts +2 -2
- package/node_modules/@playdrop/types/dist/locale.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/locale.js +2 -17
- package/node_modules/@playdrop/types/dist/owned-assets.d.ts +2 -2
- package/node_modules/@playdrop/types/dist/owned-assets.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/player-meta.d.ts +3 -3
- package/node_modules/@playdrop/types/dist/player-meta.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/playtest-notes.d.ts +11 -11
- package/node_modules/@playdrop/types/dist/playtest-notes.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/playtrade.d.ts +8 -5
- package/node_modules/@playdrop/types/dist/playtrade.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/realtime.d.ts +1 -1
- package/node_modules/@playdrop/types/dist/tweaks.d.ts +4 -4
- package/node_modules/@playdrop/types/dist/tweaks.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/tweaks.js +12 -2
- package/node_modules/@playdrop/types/dist/version.d.ts +14 -14
- package/node_modules/@playdrop/types/dist/version.d.ts.map +1 -1
- package/node_modules/@playdrop/types/dist/version.js +4 -1
- package/node_modules/@playdrop/vox-three/dist/src/index.d.ts +1 -1
- package/node_modules/@playdrop/vox-three/dist/src/vox.d.ts +2 -2
- package/node_modules/@playdrop/vox-three/dist/src/vox.js +20 -18
- package/node_modules/@playdrop/vox-three/dist/src/vox.js.map +1 -1
- package/node_modules/@playdrop/vox-three/dist/test/vox.test.js +11 -14
- package/node_modules/@playdrop/vox-three/dist/test/vox.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare function createAssetRemix(name: string, remixRef: string): Promise<void>;
|
|
2
2
|
export declare function createPackRemix(name: string, remixRef: string): Promise<void>;
|
|
3
|
-
export declare function createRemixContent(kind:
|
|
3
|
+
export declare function createRemixContent(kind: "asset" | "pack", name: string, remixRef: string): Promise<void>;
|
|
@@ -10,26 +10,26 @@ const commandContext_1 = require("../commandContext");
|
|
|
10
10
|
const http_1 = require("../http");
|
|
11
11
|
const messages_1 = require("../messages");
|
|
12
12
|
const init_1 = require("./init");
|
|
13
|
-
const CATALOGUE_FILENAME =
|
|
14
|
-
const LEGACY_CATALOGUE_VERSION_KEY = [
|
|
15
|
-
const ALLOWED_CATALOGUE_TOP_LEVEL_KEYS = new Set([
|
|
13
|
+
const CATALOGUE_FILENAME = "catalogue.json";
|
|
14
|
+
const LEGACY_CATALOGUE_VERSION_KEY = ["schema", "Version"].join("");
|
|
15
|
+
const ALLOWED_CATALOGUE_TOP_LEVEL_KEYS = new Set(["apps", "assets", "assetPacks"]);
|
|
16
16
|
const MIME_TYPE_TO_EXTENSION = {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
17
|
+
"image/png": ".png",
|
|
18
|
+
"image/jpeg": ".jpg",
|
|
19
|
+
"image/webp": ".webp",
|
|
20
|
+
"image/gif": ".gif",
|
|
21
|
+
"audio/mpeg": ".mp3",
|
|
22
|
+
"audio/wav": ".wav",
|
|
23
|
+
"audio/ogg": ".ogg",
|
|
24
|
+
"video/mp4": ".mp4",
|
|
25
|
+
"video/webm": ".webm",
|
|
26
|
+
"model/gltf+json": ".gltf",
|
|
27
|
+
"model/gltf-binary": ".glb",
|
|
28
|
+
"application/json": ".json",
|
|
29
29
|
};
|
|
30
30
|
function inferExtensionFromCandidate(candidate) {
|
|
31
31
|
try {
|
|
32
|
-
if (candidate.startsWith(
|
|
32
|
+
if (candidate.startsWith("http://") || candidate.startsWith("https://")) {
|
|
33
33
|
return (0, node_path_1.extname)(new URL(candidate).pathname);
|
|
34
34
|
}
|
|
35
35
|
}
|
|
@@ -43,27 +43,27 @@ async function ensureWorkspaceCataloguePath() {
|
|
|
43
43
|
if ((0, node_fs_1.existsSync)(path) && (0, node_fs_1.statSync)(path).isFile()) {
|
|
44
44
|
return path;
|
|
45
45
|
}
|
|
46
|
-
const initSummary = await (0, init_1.init)(
|
|
46
|
+
const initSummary = await (0, init_1.init)(".", { quiet: true });
|
|
47
47
|
if (!initSummary) {
|
|
48
48
|
process.exitCode = process.exitCode || 1;
|
|
49
|
-
throw new Error(
|
|
49
|
+
throw new Error("workspace_init_failed");
|
|
50
50
|
}
|
|
51
51
|
if (!(0, node_fs_1.existsSync)(path) || !(0, node_fs_1.statSync)(path).isFile()) {
|
|
52
|
-
(0, messages_1.printErrorWithHelp)(
|
|
52
|
+
(0, messages_1.printErrorWithHelp)("Project bootstrap did not create catalogue.json.", ['Run "playdrop project init ." and confirm the workspace files were created before retrying.'], { command: "project create", includeGeneralHelp: false });
|
|
53
53
|
process.exitCode = 1;
|
|
54
|
-
throw new Error(
|
|
54
|
+
throw new Error("workspace_init_failed");
|
|
55
55
|
}
|
|
56
56
|
return path;
|
|
57
57
|
}
|
|
58
58
|
function readWorkspaceCatalogue(path) {
|
|
59
59
|
let parsed;
|
|
60
60
|
try {
|
|
61
|
-
parsed = JSON.parse((0, node_fs_1.readFileSync)(path,
|
|
61
|
+
parsed = JSON.parse((0, node_fs_1.readFileSync)(path, "utf8"));
|
|
62
62
|
}
|
|
63
63
|
catch {
|
|
64
64
|
throw new Error(`Invalid catalogue.json at ${path}.`);
|
|
65
65
|
}
|
|
66
|
-
if (!parsed || typeof parsed !==
|
|
66
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
67
67
|
throw new Error(`Invalid catalogue.json at ${path}.`);
|
|
68
68
|
}
|
|
69
69
|
const catalogue = parsed;
|
|
@@ -80,14 +80,14 @@ function writeWorkspaceCatalogue(path, catalogue) {
|
|
|
80
80
|
(0, node_fs_1.writeFileSync)(path, `${JSON.stringify(catalogue, null, 2)}\n`);
|
|
81
81
|
}
|
|
82
82
|
function assertWorkspaceRootCanOwnEntries(cataloguePath) {
|
|
83
|
-
const rootDir = (0, node_path_1.resolve)(cataloguePath,
|
|
83
|
+
const rootDir = (0, node_path_1.resolve)(cataloguePath, "..");
|
|
84
84
|
const rootCataloguePath = (0, node_path_1.join)(rootDir, CATALOGUE_FILENAME);
|
|
85
85
|
const stack = [rootDir];
|
|
86
86
|
while (stack.length > 0) {
|
|
87
87
|
const current = stack.pop();
|
|
88
88
|
const entries = (0, node_fs_1.readdirSync)(current, { withFileTypes: true });
|
|
89
89
|
for (const entry of entries) {
|
|
90
|
-
if (entry.name.startsWith(
|
|
90
|
+
if (entry.name.startsWith(".") || entry.name === "node_modules") {
|
|
91
91
|
continue;
|
|
92
92
|
}
|
|
93
93
|
const absolutePath = (0, node_path_1.join)(current, entry.name);
|
|
@@ -102,52 +102,53 @@ function assertWorkspaceRootCanOwnEntries(cataloguePath) {
|
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
async function createAuthenticatedClient(commandLabel) {
|
|
105
|
-
const ctx = await (0, commandContext_1.resolveAuthenticatedEnvironmentContext)(commandLabel, commandLabel, {
|
|
105
|
+
const ctx = await (0, commandContext_1.resolveAuthenticatedEnvironmentContext)(commandLabel, commandLabel, {
|
|
106
|
+
workspacePath: process.cwd(),
|
|
107
|
+
});
|
|
106
108
|
if (!ctx) {
|
|
107
|
-
throw new Error(
|
|
109
|
+
throw new Error("missing_token");
|
|
108
110
|
}
|
|
109
111
|
return ctx.client;
|
|
110
112
|
}
|
|
111
113
|
function ensureUniqueEntryName(catalogue, kind, name) {
|
|
112
|
-
const entries = kind ===
|
|
113
|
-
const exists = Array.isArray(entries)
|
|
114
|
-
&& entries.some((entry) => typeof entry?.name === 'string' && entry.name.trim() === name);
|
|
114
|
+
const entries = kind === "asset" ? catalogue.assets : catalogue.assetPacks;
|
|
115
|
+
const exists = Array.isArray(entries) && entries.some((entry) => typeof entry?.name === "string" && entry.name.trim() === name);
|
|
115
116
|
if (exists) {
|
|
116
117
|
throw new Error(`catalogue.json already contains ${kind} "${name}".`);
|
|
117
118
|
}
|
|
118
119
|
}
|
|
119
120
|
function parseAssetManifestFiles(value) {
|
|
120
|
-
if (!value || typeof value !==
|
|
121
|
-
throw new Error(
|
|
121
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
122
|
+
throw new Error("Asset version is missing fileManifest.");
|
|
122
123
|
}
|
|
123
124
|
const manifest = value;
|
|
124
125
|
if (!Array.isArray(manifest.files) || manifest.files.length === 0) {
|
|
125
|
-
throw new Error(
|
|
126
|
+
throw new Error("Asset version is missing fileManifest.files.");
|
|
126
127
|
}
|
|
127
128
|
return manifest.files.filter((entry) => {
|
|
128
|
-
return Boolean(entry && typeof entry.role ===
|
|
129
|
+
return Boolean(entry && typeof entry.role === "string" && entry.role.trim().length > 0);
|
|
129
130
|
});
|
|
130
131
|
}
|
|
131
132
|
function inferExtensionFromManifestEntry(entry) {
|
|
132
|
-
const candidates = [entry.key, entry.url].filter((value) => typeof value ===
|
|
133
|
+
const candidates = [entry.key, entry.url].filter((value) => typeof value === "string" && value.length > 0);
|
|
133
134
|
for (const candidate of candidates) {
|
|
134
135
|
const extension = inferExtensionFromCandidate(candidate);
|
|
135
136
|
if (extension) {
|
|
136
137
|
return extension;
|
|
137
138
|
}
|
|
138
139
|
}
|
|
139
|
-
const mimeType = typeof entry.contentType ===
|
|
140
|
-
return MIME_TYPE_TO_EXTENSION[mimeType] ??
|
|
140
|
+
const mimeType = typeof entry.contentType === "string" ? entry.contentType.trim().toLowerCase() : "";
|
|
141
|
+
return MIME_TYPE_TO_EXTENSION[mimeType] ?? "";
|
|
141
142
|
}
|
|
142
143
|
function buildLocalFilename(entry, usedNames) {
|
|
143
|
-
const sourceName = typeof entry.key ===
|
|
144
|
+
const sourceName = typeof entry.key === "string" && entry.key.length > 0
|
|
144
145
|
? (0, node_path_1.basename)(entry.key)
|
|
145
|
-
: typeof entry.url ===
|
|
146
|
+
: typeof entry.url === "string" && entry.url.length > 0
|
|
146
147
|
? (0, node_path_1.basename)(entry.url)
|
|
147
|
-
:
|
|
148
|
-
const baseName = sourceName && sourceName !==
|
|
149
|
-
? sourceName.replace(/[^A-Za-z0-9._-]+/g,
|
|
150
|
-
: `${entry.role.replace(/[^A-Za-z0-9._-]+/g,
|
|
148
|
+
: "";
|
|
149
|
+
const baseName = sourceName && sourceName !== "/"
|
|
150
|
+
? sourceName.replace(/[^A-Za-z0-9._-]+/g, "-")
|
|
151
|
+
: `${entry.role.replace(/[^A-Za-z0-9._-]+/g, "-").toLowerCase()}${inferExtensionFromManifestEntry(entry)}`;
|
|
151
152
|
let candidate = baseName || `${entry.role.toLowerCase()}${inferExtensionFromManifestEntry(entry)}`;
|
|
152
153
|
let counter = 2;
|
|
153
154
|
while (usedNames.has(candidate)) {
|
|
@@ -175,24 +176,24 @@ async function downloadAssetFilesForRemix(client, targetDir, creatorUsername, as
|
|
|
175
176
|
}
|
|
176
177
|
async function createAssetRemix(name, remixRef) {
|
|
177
178
|
const parsedRef = (0, types_1.parseContentVersionRef)(remixRef);
|
|
178
|
-
if (!parsedRef || parsedRef.kind !==
|
|
179
|
-
(0, messages_1.printErrorWithHelp)('The --remix value must be an asset version ref like "asset:creator/name@r4".', [
|
|
179
|
+
if (!parsedRef || parsedRef.kind !== "asset") {
|
|
180
|
+
(0, messages_1.printErrorWithHelp)('The --remix value must be an asset version ref like "asset:creator/name@r4".', ["Use the exact public asset version ref you want to remix."], { command: "project create asset" });
|
|
180
181
|
process.exitCode = 1;
|
|
181
182
|
return;
|
|
182
183
|
}
|
|
183
184
|
const canonicalRef = (0, types_1.formatContentVersionRef)(parsedRef);
|
|
184
|
-
const client = await createAuthenticatedClient(
|
|
185
|
+
const client = await createAuthenticatedClient("project create asset");
|
|
185
186
|
const cataloguePath = await ensureWorkspaceCataloguePath();
|
|
186
187
|
const catalogue = readWorkspaceCatalogue(cataloguePath);
|
|
187
188
|
assertWorkspaceRootCanOwnEntries(cataloguePath);
|
|
188
|
-
ensureUniqueEntryName(catalogue,
|
|
189
|
+
ensureUniqueEntryName(catalogue, "asset", name);
|
|
189
190
|
const detail = await client.fetchAssetBySlug(parsedRef.creatorUsername, parsedRef.name);
|
|
190
191
|
const versions = await client.listAssetVersions(parsedRef.creatorUsername, parsedRef.name, { limit: 200, offset: 0 });
|
|
191
192
|
const version = versions.versions.find((entry) => entry.revision === parsedRef.revision);
|
|
192
193
|
if (!version) {
|
|
193
194
|
throw new Error(`Could not find public version ${canonicalRef}.`);
|
|
194
195
|
}
|
|
195
|
-
if (version.visibility !==
|
|
196
|
+
if (version.visibility !== "PUBLIC") {
|
|
196
197
|
throw new Error(`Remix source ${canonicalRef} must be public.`);
|
|
197
198
|
}
|
|
198
199
|
const manifestEntries = parseAssetManifestFiles(version.fileManifest);
|
|
@@ -215,36 +216,39 @@ async function createAssetRemix(name, remixRef) {
|
|
|
215
216
|
writeWorkspaceCatalogue(cataloguePath, catalogue);
|
|
216
217
|
console.log(`Created asset remix "${name}" from ${canonicalRef}.`);
|
|
217
218
|
console.log(`Downloaded ${manifestEntries.length} file(s) into ${(0, node_path_1.basename)(targetDir)}/ and added the asset entry to ${CATALOGUE_FILENAME}.`);
|
|
218
|
-
console.log(
|
|
219
|
+
console.log("Next steps:");
|
|
219
220
|
console.log(` - Review ${CATALOGUE_FILENAME} and update displayName, description, or pricing as needed.`);
|
|
220
221
|
console.log(` - Edit files inside ${(0, node_path_1.basename)(targetDir)}/ or replace them before running "playdrop project publish ${name}".`);
|
|
221
222
|
}
|
|
222
223
|
async function createPackRemix(name, remixRef) {
|
|
223
224
|
const parsedRef = (0, types_1.parseContentVersionRef)(remixRef);
|
|
224
|
-
if (!parsedRef || parsedRef.kind !==
|
|
225
|
-
(0, messages_1.printErrorWithHelp)('The --remix value must be a pack version ref like "pack:creator/name@1.2.3".', [
|
|
225
|
+
if (!parsedRef || parsedRef.kind !== "pack") {
|
|
226
|
+
(0, messages_1.printErrorWithHelp)('The --remix value must be a pack version ref like "pack:creator/name@1.2.3".', ["Use the exact public asset pack version ref you want to remix."], { command: "project create pack" });
|
|
226
227
|
process.exitCode = 1;
|
|
227
228
|
return;
|
|
228
229
|
}
|
|
229
230
|
const canonicalRef = (0, types_1.formatContentVersionRef)(parsedRef);
|
|
230
|
-
const client = await createAuthenticatedClient(
|
|
231
|
+
const client = await createAuthenticatedClient("project create pack");
|
|
231
232
|
const cataloguePath = await ensureWorkspaceCataloguePath();
|
|
232
233
|
const catalogue = readWorkspaceCatalogue(cataloguePath);
|
|
233
234
|
assertWorkspaceRootCanOwnEntries(cataloguePath);
|
|
234
|
-
ensureUniqueEntryName(catalogue,
|
|
235
|
+
ensureUniqueEntryName(catalogue, "pack", name);
|
|
235
236
|
await client.fetchAssetPackBySlug(parsedRef.creatorUsername, parsedRef.name);
|
|
236
|
-
const versions = await client.listAssetPackVersions(parsedRef.creatorUsername, parsedRef.name, {
|
|
237
|
+
const versions = await client.listAssetPackVersions(parsedRef.creatorUsername, parsedRef.name, {
|
|
238
|
+
limit: 200,
|
|
239
|
+
offset: 0,
|
|
240
|
+
});
|
|
237
241
|
const version = versions.versions.find((entry) => entry.version === parsedRef.version);
|
|
238
242
|
if (!version) {
|
|
239
243
|
throw new Error(`Could not find public version ${canonicalRef}.`);
|
|
240
244
|
}
|
|
241
|
-
if (version.visibility !==
|
|
245
|
+
if (version.visibility !== "PUBLIC") {
|
|
242
246
|
throw new Error(`Remix source ${canonicalRef} must be public.`);
|
|
243
247
|
}
|
|
244
248
|
const assetPacks = Array.isArray(catalogue.assetPacks) ? [...catalogue.assetPacks] : [];
|
|
245
249
|
assetPacks.push({
|
|
246
250
|
name,
|
|
247
|
-
version:
|
|
251
|
+
version: "1.0.0",
|
|
248
252
|
remix: canonicalRef,
|
|
249
253
|
assets: version.assets.map((assetRef) => `asset:${assetRef.creatorUsername}/${assetRef.name}@r${assetRef.revision}`),
|
|
250
254
|
});
|
|
@@ -252,7 +256,7 @@ async function createPackRemix(name, remixRef) {
|
|
|
252
256
|
writeWorkspaceCatalogue(cataloguePath, catalogue);
|
|
253
257
|
console.log(`Created asset pack remix "${name}" from ${canonicalRef}.`);
|
|
254
258
|
console.log(`Added the asset pack entry to ${CATALOGUE_FILENAME} with ${version.assets.length} referenced asset(s).`);
|
|
255
|
-
console.log(
|
|
259
|
+
console.log("Next steps:");
|
|
256
260
|
console.log(` - Review ${CATALOGUE_FILENAME} and edit the assets list before running "playdrop project publish ${name}".`);
|
|
257
261
|
console.log(` - Add listing art or releaseNotes in ${CATALOGUE_FILENAME} if you want to publish the pack.`);
|
|
258
262
|
if (version.downloadUrl) {
|
|
@@ -261,7 +265,7 @@ async function createPackRemix(name, remixRef) {
|
|
|
261
265
|
}
|
|
262
266
|
async function createRemixContent(kind, name, remixRef) {
|
|
263
267
|
try {
|
|
264
|
-
if (kind ===
|
|
268
|
+
if (kind === "asset") {
|
|
265
269
|
await createAssetRemix(name, remixRef);
|
|
266
270
|
return;
|
|
267
271
|
}
|
|
@@ -278,7 +282,7 @@ async function createRemixContent(kind, name, remixRef) {
|
|
|
278
282
|
return;
|
|
279
283
|
}
|
|
280
284
|
if (error instanceof types_1.ApiError) {
|
|
281
|
-
(0, messages_1.printErrorWithHelp)(`Failed to fetch remix source (status ${error.status}).`, [
|
|
285
|
+
(0, messages_1.printErrorWithHelp)(`Failed to fetch remix source (status ${error.status}).`, ["Confirm the remix ref is correct and publicly accessible, then retry."], { command: `project create ${kind}` });
|
|
282
286
|
process.exitCode = 1;
|
|
283
287
|
return;
|
|
284
288
|
}
|
|
@@ -287,11 +291,12 @@ async function createRemixContent(kind, name, remixRef) {
|
|
|
287
291
|
process.exitCode = 1;
|
|
288
292
|
return;
|
|
289
293
|
}
|
|
290
|
-
if (error instanceof Error &&
|
|
294
|
+
if (error instanceof Error &&
|
|
295
|
+
["workspace_init_failed", "missing_env", "unsupported_env", "missing_token"].includes(error.message)) {
|
|
291
296
|
return;
|
|
292
297
|
}
|
|
293
298
|
if (error instanceof Error) {
|
|
294
|
-
(0, messages_1.printErrorWithHelp)(error.message, [
|
|
299
|
+
(0, messages_1.printErrorWithHelp)(error.message, ["Fix the issue above, then retry the command."], {
|
|
295
300
|
command: `project create ${kind}`,
|
|
296
301
|
includeGeneralHelp: false,
|
|
297
302
|
});
|