@playdrop/playdrop-cli 0.18.0 → 0.18.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/config/client-meta.json +2 -2
  2. package/dist/commands/devServer.d.ts +2 -1
  3. package/dist/commands/devServer.js +48 -1
  4. package/dist/commands/worker/game-source-git.d.ts +1 -0
  5. package/dist/commands/worker/game-source-git.js +32 -0
  6. package/dist/commands/worker/instrument-evidence.d.ts +1 -0
  7. package/dist/commands/worker/instrument-evidence.js +5 -4
  8. package/dist/commands/worker.js +26 -9
  9. package/node_modules/@playdrop/api-client/dist/acquisition.d.ts +56 -0
  10. package/node_modules/@playdrop/api-client/dist/acquisition.d.ts.map +1 -0
  11. package/node_modules/@playdrop/api-client/dist/acquisition.js +319 -0
  12. package/node_modules/@playdrop/api-client/dist/attribution.d.ts +3 -0
  13. package/node_modules/@playdrop/api-client/dist/attribution.d.ts.map +1 -0
  14. package/node_modules/@playdrop/api-client/dist/attribution.js +30 -0
  15. package/node_modules/@playdrop/api-client/dist/browser-request.d.ts +23 -0
  16. package/node_modules/@playdrop/api-client/dist/browser-request.d.ts.map +1 -0
  17. package/node_modules/@playdrop/api-client/dist/browser-request.js +127 -0
  18. package/node_modules/@playdrop/api-client/dist/chat.d.ts +25 -0
  19. package/node_modules/@playdrop/api-client/dist/chat.d.ts.map +1 -0
  20. package/node_modules/@playdrop/api-client/dist/chat.js +60 -0
  21. package/node_modules/@playdrop/api-client/dist/creator-studio-assets.d.ts +9 -0
  22. package/node_modules/@playdrop/api-client/dist/creator-studio-assets.d.ts.map +1 -0
  23. package/node_modules/@playdrop/api-client/dist/creator-studio-assets.js +68 -0
  24. package/node_modules/@playdrop/api-client/dist/creator-studio-marketing.d.ts +5 -0
  25. package/node_modules/@playdrop/api-client/dist/creator-studio-marketing.d.ts.map +1 -0
  26. package/node_modules/@playdrop/api-client/dist/creator-studio-marketing.js +81 -0
  27. package/node_modules/@playdrop/api-client/dist/creator-studio-shell.d.ts +23 -0
  28. package/node_modules/@playdrop/api-client/dist/creator-studio-shell.d.ts.map +1 -0
  29. package/node_modules/@playdrop/api-client/dist/creator-studio-shell.js +100 -0
  30. package/node_modules/@playdrop/api-client/dist/creator-studio.d.ts +21 -0
  31. package/node_modules/@playdrop/api-client/dist/creator-studio.d.ts.map +1 -0
  32. package/node_modules/@playdrop/api-client/dist/creator-studio.js +191 -0
  33. package/node_modules/@playdrop/api-client/dist/index.d.ts +1 -1
  34. package/node_modules/@playdrop/api-client/dist/index.d.ts.map +1 -1
  35. package/node_modules/@playdrop/api-client/dist/web-push.d.ts +6 -0
  36. package/node_modules/@playdrop/api-client/dist/web-push.d.ts.map +1 -0
  37. package/node_modules/@playdrop/api-client/dist/web-push.js +66 -0
  38. package/node_modules/@playdrop/api-client/package.json +49 -0
  39. package/node_modules/@playdrop/config/client-meta.json +2 -2
  40. package/node_modules/@playdrop/config/dist/test/validateClientEnvironment.test.js +2 -2
  41. package/node_modules/@playdrop/config/dist/tsconfig.tsbuildinfo +1 -1
  42. package/node_modules/@playdrop/game-source-git/dist/src/git.d.ts +1 -0
  43. package/node_modules/@playdrop/game-source-git/dist/src/git.d.ts.map +1 -1
  44. package/node_modules/@playdrop/game-source-git/dist/src/git.js +12 -2
  45. package/node_modules/@playdrop/game-source-git/dist/src/repository.js +2 -2
  46. package/node_modules/@playdrop/game-source-git/dist/test/core.test.js +16 -0
  47. package/node_modules/@playdrop/game-source-git/dist/tsconfig.tsbuildinfo +1 -1
  48. package/node_modules/@playdrop/types/dist/agent-task-classification.d.ts +47 -113
  49. package/node_modules/@playdrop/types/dist/agent-task-classification.d.ts.map +1 -1
  50. package/node_modules/@playdrop/types/dist/agent-task-classification.js +25 -43
  51. package/node_modules/@playdrop/types/dist/api.d.ts +2 -2
  52. package/node_modules/@playdrop/types/dist/api.d.ts.map +1 -1
  53. package/node_modules/@playdrop/types/dist/api.js +0 -1
  54. package/node_modules/@playdrop/types/dist/instrument-evidence.d.ts.map +1 -1
  55. package/node_modules/@playdrop/types/dist/instrument-evidence.js +14 -1
  56. package/node_modules/@playdrop/types/dist/version.d.ts +10 -0
  57. package/node_modules/@playdrop/types/dist/version.d.ts.map +1 -1
  58. package/node_modules/@playdrop/types/dist/version.js +18 -0
  59. package/package.json +1 -1
@@ -0,0 +1,68 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var creator_studio_assets_exports = {};
19
+ __export(creator_studio_assets_exports, {
20
+ fetchAppRuntimeAssets: () => fetchAppRuntimeAssets,
21
+ fetchAssetBySlug: () => fetchAssetBySlug,
22
+ listAssetVersions: () => listAssetVersions
23
+ });
24
+ module.exports = __toCommonJS(creator_studio_assets_exports);
25
+ var import_browser_request = require("./browser-request.js");
26
+ function normalizeRouteValue(value, errorCode) {
27
+ const normalized = typeof value === "string" ? value.trim() : "";
28
+ if (!normalized)
29
+ throw new Error(errorCode);
30
+ return normalized;
31
+ }
32
+ function normalizeVersion(value) {
33
+ const normalized = normalizeRouteValue(value, "invalid_version");
34
+ if (!/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/u.test(normalized)) {
35
+ throw new Error("invalid_version_format");
36
+ }
37
+ return normalized;
38
+ }
39
+ async function fetchAppRuntimeAssets(creatorUsername, appName, version) {
40
+ const creator = normalizeRouteValue(creatorUsername, "invalid_creator_username");
41
+ const app = normalizeRouteValue(appName, "invalid_app_name");
42
+ const semver = normalizeVersion(version);
43
+ return await (0, import_browser_request.browserRequestOk)("GET", `/apps/${encodeURIComponent(creator)}/${encodeURIComponent(app)}/versions/${encodeURIComponent(semver)}/runtime-assets`, "fetch_app_runtime_assets");
44
+ }
45
+ async function fetchAssetBySlug(creatorUsername, assetName) {
46
+ const creator = normalizeRouteValue(creatorUsername, "invalid_creator_username");
47
+ const asset = normalizeRouteValue(assetName, "invalid_asset_name");
48
+ const response = await (0, import_browser_request.browserRequestOk)("GET", `/assets/${encodeURIComponent(creator)}/${encodeURIComponent(asset)}`, "fetch_asset_by_slug");
49
+ return response.asset;
50
+ }
51
+ async function listAssetVersions(creatorUsername, assetName, options = {}) {
52
+ const creator = normalizeRouteValue(creatorUsername, "invalid_creator_username");
53
+ const asset = normalizeRouteValue(assetName, "invalid_asset_name");
54
+ const params = new URLSearchParams();
55
+ if (typeof options.limit === "number")
56
+ params.set("limit", String(options.limit));
57
+ if (typeof options.offset === "number")
58
+ params.set("offset", String(options.offset));
59
+ const query = params.toString();
60
+ const response = await (0, import_browser_request.browserRequestOk)("GET", `/assets/${encodeURIComponent(creator)}/${encodeURIComponent(asset)}/versions${query ? `?${query}` : ""}`, "list_asset_versions");
61
+ return response.versions;
62
+ }
63
+ // Annotate the CommonJS export names for ESM import in node:
64
+ 0 && (module.exports = {
65
+ fetchAppRuntimeAssets,
66
+ fetchAssetBySlug,
67
+ listAssetVersions
68
+ });
@@ -0,0 +1,5 @@
1
+ import type { AppListingDraftMediaSlot, AppListingDraftResponse, PublishAppListingDraftResponse, UpdateAppListingDraftRequest } from "@playdrop/types";
2
+ export declare function updateAppListingDraft(creatorUsername: string, appName: string, body: UpdateAppListingDraftRequest): Promise<AppListingDraftResponse>;
3
+ export declare function publishAppListingDraft(creatorUsername: string, appName: string): Promise<PublishAppListingDraftResponse>;
4
+ export declare function uploadAppListingDraftMedia(creatorUsername: string, appName: string, slot: AppListingDraftMediaSlot, file: Blob, filename: string): Promise<AppListingDraftResponse>;
5
+ //# sourceMappingURL=creator-studio-marketing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creator-studio-marketing.d.ts","sourceRoot":"","sources":["../src/creator-studio-marketing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,uBAAuB,EACvB,8BAA8B,EAC9B,4BAA4B,EAC7B,MAAM,iBAAiB,CAAC;AAoBzB,wBAAsB,qBAAqB,CACzC,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,4BAA4B,GACjC,OAAO,CAAC,uBAAuB,CAAC,CAOlC;AAED,wBAAsB,sBAAsB,CAC1C,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,8BAA8B,CAAC,CAMzC;AAED,wBAAsB,0BAA0B,CAC9C,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,wBAAwB,EAC9B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,uBAAuB,CAAC,CAyClC"}
@@ -0,0 +1,81 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var creator_studio_marketing_exports = {};
19
+ __export(creator_studio_marketing_exports, {
20
+ publishAppListingDraft: () => publishAppListingDraft,
21
+ updateAppListingDraft: () => updateAppListingDraft,
22
+ uploadAppListingDraftMedia: () => uploadAppListingDraftMedia
23
+ });
24
+ module.exports = __toCommonJS(creator_studio_marketing_exports);
25
+ var import_browser_request = require("./browser-request.js");
26
+ var import_apps = require("./domains/apps.js");
27
+ function normalizeRouteValue(value, errorCode) {
28
+ const normalized = typeof value === "string" ? value.trim() : "";
29
+ if (!normalized)
30
+ throw new Error(errorCode);
31
+ return normalized;
32
+ }
33
+ function creatorAppPath(creatorUsername, appName, suffix) {
34
+ const creator = normalizeRouteValue(creatorUsername, "invalid_creator_username");
35
+ const app = normalizeRouteValue(appName, "invalid_app_name");
36
+ return `/creators/${encodeURIComponent(creator)}/apps/${encodeURIComponent(app)}${suffix}`;
37
+ }
38
+ async function updateAppListingDraft(creatorUsername, appName, body) {
39
+ return await (0, import_browser_request.browserRequestOk)("PATCH", creatorAppPath(creatorUsername, appName, "/listing-draft"), "update_app_listing_draft", body);
40
+ }
41
+ async function publishAppListingDraft(creatorUsername, appName) {
42
+ return await (0, import_browser_request.browserRequestOk)("POST", creatorAppPath(creatorUsername, appName, "/listing-draft/publish"), "publish_app_listing_draft");
43
+ }
44
+ async function uploadAppListingDraftMedia(creatorUsername, appName, slot, file, filename) {
45
+ const path = creatorAppPath(creatorUsername, appName, `/listing-draft/media/${encodeURIComponent(slot)}`);
46
+ const hashes = await (0, import_apps.hashVerifiedUploadBlob)(file);
47
+ const contentType = file.type || "application/octet-stream";
48
+ const descriptor = await (0, import_browser_request.browserRequestOk)("POST", path, "prepare_app_listing_draft_media", {
49
+ action: "prepare",
50
+ filename,
51
+ contentType,
52
+ sizeBytes: file.size,
53
+ ...hashes
54
+ });
55
+ const uploaded = await import_browser_request.browserDomainClientInput.fetchImpl(descriptor.upload.url, {
56
+ method: "PUT",
57
+ headers: descriptor.upload.headers,
58
+ body: file
59
+ });
60
+ if (!uploaded.ok) {
61
+ import_browser_request.browserDomainClientInput.handleApiError({
62
+ status: uploaded.status,
63
+ body: await import_browser_request.browserDomainClientInput.parseResponseBody(uploaded),
64
+ headers: uploaded.headers
65
+ }, "upload_app_listing_draft_media_object");
66
+ }
67
+ return await (0, import_browser_request.browserRequestOk)("POST", path, "complete_app_listing_draft_media", {
68
+ action: "complete",
69
+ storageKey: descriptor.storageKey,
70
+ filename,
71
+ contentType,
72
+ sizeBytes: file.size,
73
+ ...hashes
74
+ });
75
+ }
76
+ // Annotate the CommonJS export names for ESM import in node:
77
+ 0 && (module.exports = {
78
+ publishAppListingDraft,
79
+ updateAppListingDraft,
80
+ uploadAppListingDraftMedia
81
+ });
@@ -0,0 +1,23 @@
1
+ import type { AgentTaskCreatorFeedbackStatus, AppAuthMode, AppVersionVisibility, ContentLicense, CreateAppAgentTaskRequest, CreateAppAgentTaskResponse, CreatePlayTradeSessionRequest, CreatePlayTradeSessionResponse, CreationGamesResponse, CreatorGameCreatorFeedbackStatusResponse, CreatorGameShareResponse, CreatorPlanState, DeleteAppResponse, PlayTradeOverviewResponse, UpdateVersionResponse } from "@playdrop/types";
2
+ export declare function createAppAgentTask(appName: string, body: CreateAppAgentTaskRequest): Promise<CreateAppAgentTaskResponse>;
3
+ export declare function listCreationGames(): Promise<{
4
+ data: CreationGamesResponse;
5
+ etag: null;
6
+ eventVersion: string;
7
+ notModified: false;
8
+ }>;
9
+ export declare function recordCreatorGameShare(gameRef: string): Promise<CreatorGameShareResponse>;
10
+ export declare function updateAppVersion(creatorUsername: string, appName: string, version: string, updates: {
11
+ releaseNotes?: string | null;
12
+ visibility?: AppVersionVisibility;
13
+ authMode?: AppAuthMode;
14
+ license?: ContentLicense;
15
+ setAsCurrent?: boolean;
16
+ }): Promise<UpdateVersionResponse>;
17
+ export declare function deleteApp(creatorUsername: string, appName: string): Promise<DeleteAppResponse>;
18
+ export declare function createPlayTradeSession(body: CreatePlayTradeSessionRequest): Promise<CreatePlayTradeSessionResponse>;
19
+ export declare function getPlayTradeOverview(): Promise<PlayTradeOverviewResponse>;
20
+ export declare function updateCreatorGameFeedbackStatus(gameRef: string, appVersionId: number, creatorFeedbackStatus: AgentTaskCreatorFeedbackStatus, comment?: string): Promise<CreatorGameCreatorFeedbackStatusResponse>;
21
+ export declare function updateCreatorPlanCreditUsage(enabled: boolean): Promise<CreatorPlanState>;
22
+ export declare function updateCreatorPlanAutoPublish(enabled: boolean): Promise<CreatorPlanState>;
23
+ //# sourceMappingURL=creator-studio-shell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creator-studio-shell.d.ts","sourceRoot":"","sources":["../src/creator-studio-shell.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,8BAA8B,EAC9B,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAC1B,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,wCAAwC,EACxC,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,iBAAiB,CAAC;AAsBzB,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,yBAAyB,GAC9B,OAAO,CAAC,0BAA0B,CAAC,CAQrC;AAED,wBAAsB,iBAAiB,IAAI,OAAO,CAAC;IACjD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,IAAI,EAAE,IAAI,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,KAAK,CAAC;CACpB,CAAC,CAOD;AAED,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAM/F;AAED,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;IACP,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,GACA,OAAO,CAAC,qBAAqB,CAAC,CAWhC;AAED,wBAAsB,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAMpG;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,8BAA8B,CAAC,CAQzC;AAED,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAE/E;AAED,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,qBAAqB,EAAE,8BAA8B,EACrD,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,wCAAwC,CAAC,CAcnD;AAED,wBAAsB,4BAA4B,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAO9F;AAED,wBAAsB,4BAA4B,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAO9F"}
@@ -0,0 +1,100 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+ var creator_studio_shell_exports = {};
19
+ __export(creator_studio_shell_exports, {
20
+ createAppAgentTask: () => createAppAgentTask,
21
+ createPlayTradeSession: () => createPlayTradeSession,
22
+ deleteApp: () => deleteApp,
23
+ getPlayTradeOverview: () => getPlayTradeOverview,
24
+ listCreationGames: () => listCreationGames,
25
+ recordCreatorGameShare: () => recordCreatorGameShare,
26
+ updateAppVersion: () => updateAppVersion,
27
+ updateCreatorGameFeedbackStatus: () => updateCreatorGameFeedbackStatus,
28
+ updateCreatorPlanAutoPublish: () => updateCreatorPlanAutoPublish,
29
+ updateCreatorPlanCreditUsage: () => updateCreatorPlanCreditUsage
30
+ });
31
+ module.exports = __toCommonJS(creator_studio_shell_exports);
32
+ var import_browser_request = require("./browser-request.js");
33
+ function normalizeCreatorGameRef(value) {
34
+ const normalized = typeof value === "string" ? value.trim() : "";
35
+ if (!normalized)
36
+ throw new Error("invalid_creator_game_ref");
37
+ return normalized;
38
+ }
39
+ function normalizeRouteValue(value, errorCode) {
40
+ const normalized = typeof value === "string" ? value.trim() : "";
41
+ if (!normalized)
42
+ throw new Error(errorCode);
43
+ return normalized;
44
+ }
45
+ function creatorAppPath(creatorUsername, appName, suffix = "") {
46
+ const creator = normalizeRouteValue(creatorUsername, "invalid_creator_username");
47
+ const app = normalizeRouteValue(appName, "invalid_app_name");
48
+ return `/creators/${encodeURIComponent(creator)}/apps/${encodeURIComponent(app)}${suffix}`;
49
+ }
50
+ async function createAppAgentTask(appName, body) {
51
+ return await (0, import_browser_request.browserRequestAccepted)("POST", `/me/games/${encodeURIComponent(normalizeRouteValue(appName, "invalid_app_name"))}/agent-tasks`, "create_app_agent_task", [200, 201, 202], body);
52
+ }
53
+ async function listCreationGames() {
54
+ const data = await (0, import_browser_request.browserRequestOk)("GET", "/me/creation/games", "list_creation_games");
55
+ return { data, etag: null, eventVersion: data.eventVersion, notModified: false };
56
+ }
57
+ async function recordCreatorGameShare(gameRef) {
58
+ return await (0, import_browser_request.browserRequestOk)("POST", `/me/creator-games/${encodeURIComponent(normalizeCreatorGameRef(gameRef))}/share`, "record_creator_game_share");
59
+ }
60
+ async function updateAppVersion(creatorUsername, appName, version, updates) {
61
+ return await (0, import_browser_request.browserRequestOk)("PATCH", creatorAppPath(creatorUsername, appName, `/versions/${encodeURIComponent(normalizeRouteValue(version, "invalid_version"))}`), "update_app_version", updates);
62
+ }
63
+ async function deleteApp(creatorUsername, appName) {
64
+ return await (0, import_browser_request.browserRequestOk)("DELETE", creatorAppPath(creatorUsername, appName), "delete_app");
65
+ }
66
+ async function createPlayTradeSession(body) {
67
+ return await (0, import_browser_request.browserRequestAccepted)("POST", "/playtrade/v2/sessions", "create_playtrade_session", [200, 201], body);
68
+ }
69
+ async function getPlayTradeOverview() {
70
+ return await (0, import_browser_request.browserRequestOk)("GET", "/playtrade/overview", "get_playtrade_overview");
71
+ }
72
+ async function updateCreatorGameFeedbackStatus(gameRef, appVersionId, creatorFeedbackStatus, comment) {
73
+ if (!Number.isInteger(appVersionId) || appVersionId <= 0) {
74
+ throw new Error("invalid_app_version_id");
75
+ }
76
+ return await (0, import_browser_request.browserRequestOk)("POST", `/me/creator-games/${encodeURIComponent(normalizeCreatorGameRef(gameRef))}/creator-feedback-status`, "update_creator_game_feedback_status", {
77
+ appVersionId,
78
+ creatorFeedbackStatus,
79
+ ...comment?.trim() ? { comment: comment.trim() } : {}
80
+ });
81
+ }
82
+ async function updateCreatorPlanCreditUsage(enabled) {
83
+ return await (0, import_browser_request.browserRequestOk)("PATCH", "/me/creator-plan/credit-usage", "update_creator_plan_credit_usage", { enabled });
84
+ }
85
+ async function updateCreatorPlanAutoPublish(enabled) {
86
+ return await (0, import_browser_request.browserRequestOk)("PATCH", "/me/creator-plan/auto-publish", "update_creator_plan_auto_publish", { enabled });
87
+ }
88
+ // Annotate the CommonJS export names for ESM import in node:
89
+ 0 && (module.exports = {
90
+ createAppAgentTask,
91
+ createPlayTradeSession,
92
+ deleteApp,
93
+ getPlayTradeOverview,
94
+ listCreationGames,
95
+ recordCreatorGameShare,
96
+ updateAppVersion,
97
+ updateCreatorGameFeedbackStatus,
98
+ updateCreatorPlanAutoPublish,
99
+ updateCreatorPlanCreditUsage
100
+ });
@@ -0,0 +1,21 @@
1
+ import type { AgentTaskAvailabilityResponse, AgentTaskKind, AppListingDraftMediaSlot, AppListingDraftResponse, CancelAgentTaskResponse, ClearAgentTaskResponse, CreateNewGameAgentTaskRequest, CreateNewGameAgentTaskResponse, CreationConversationResponse, CreatorNotesClearResponse, CreatorNotesResponse, DeleteVersionResponse, PublishAppListingDraftResponse, RetryAgentTaskResponse, UpdateAppListingDraftRequest } from "@playdrop/types";
2
+ import type { GetCreationConversationOptions } from "./domains/agent-tasks.js";
3
+ export { createAppAgentTask, createPlayTradeSession, deleteApp, getPlayTradeOverview, listCreationGames, recordCreatorGameShare, updateAppVersion, updateCreatorGameFeedbackStatus, updateCreatorPlanAutoPublish, updateCreatorPlanCreditUsage, } from "./creator-studio-shell.js";
4
+ export declare function createNewGameAgentTask(body: CreateNewGameAgentTaskRequest): Promise<CreateNewGameAgentTaskResponse>;
5
+ export declare function cancelAgentTask(taskId: number): Promise<CancelAgentTaskResponse>;
6
+ export declare function clearAgentTask(taskId: number): Promise<ClearAgentTaskResponse>;
7
+ export declare function retryAgentTask(taskId: number): Promise<RetryAgentTaskResponse>;
8
+ export declare function getAppAgentTaskAvailability(appName: string, options?: {
9
+ signal?: AbortSignal;
10
+ }): Promise<AgentTaskAvailabilityResponse>;
11
+ export declare function getAgentTaskAvailability(kind: AgentTaskKind, options?: {
12
+ signal?: AbortSignal;
13
+ }): Promise<AgentTaskAvailabilityResponse>;
14
+ export declare function getCreationConversation(gameRef: string, options?: GetCreationConversationOptions): Promise<CreationConversationResponse>;
15
+ export declare function listPlaytestNotes(creatorUsername: string, appName: string, version: string): Promise<CreatorNotesResponse>;
16
+ export declare function clearPlaytestNotes(creatorUsername: string, appName: string, version: string, ids: number[]): Promise<CreatorNotesClearResponse>;
17
+ export declare function deleteAppVersion(creatorUsername: string, appName: string, version: string): Promise<DeleteVersionResponse>;
18
+ export declare function updateAppListingDraft(creatorUsername: string, appName: string, body: UpdateAppListingDraftRequest): Promise<AppListingDraftResponse>;
19
+ export declare function publishAppListingDraft(creatorUsername: string, appName: string): Promise<PublishAppListingDraftResponse>;
20
+ export declare function uploadAppListingDraftMedia(creatorUsername: string, appName: string, slot: AppListingDraftMediaSlot, file: Blob, filename: string): Promise<AppListingDraftResponse>;
21
+ //# sourceMappingURL=creator-studio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creator-studio.d.ts","sourceRoot":"","sources":["../src/creator-studio.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAC7B,aAAa,EACb,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,6BAA6B,EAC7B,8BAA8B,EAC9B,4BAA4B,EAC5B,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,EACrB,8BAA8B,EAC9B,sBAAsB,EACtB,4BAA4B,EAC7B,MAAM,iBAAiB,CAAC;AAOzB,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAE/E,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,SAAS,EACT,oBAAoB,EACpB,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,+BAA+B,EAC/B,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC;AA+BnC,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,8BAA8B,CAAC,CAQzC;AAED,wBAAsB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAMtF;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAMpF;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAQpF;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GACrC,OAAO,CAAC,6BAA6B,CAAC,CAQxC;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,aAAa,EACnB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GACrC,OAAO,CAAC,6BAA6B,CAAC,CASxC;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,4BAA4B,CAAC,CAgDvC;AAED,wBAAsB,iBAAiB,CACrC,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,oBAAoB,CAAC,CAQ/B;AAED,wBAAsB,kBAAkB,CACtC,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EAAE,GACZ,OAAO,CAAC,yBAAyB,CAAC,CAWpC;AAED,wBAAsB,gBAAgB,CACpC,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,qBAAqB,CAAC,CAUhC;AAED,wBAAsB,qBAAqB,CACzC,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,4BAA4B,GACjC,OAAO,CAAC,uBAAuB,CAAC,CAGlC;AAED,wBAAsB,sBAAsB,CAC1C,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,8BAA8B,CAAC,CAGzC;AAED,wBAAsB,0BAA0B,CAC9C,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,wBAAwB,EAC9B,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,uBAAuB,CAAC,CAGlC"}
@@ -0,0 +1,191 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+ var creator_studio_exports = {};
29
+ __export(creator_studio_exports, {
30
+ cancelAgentTask: () => cancelAgentTask,
31
+ clearAgentTask: () => clearAgentTask,
32
+ clearPlaytestNotes: () => clearPlaytestNotes,
33
+ createAppAgentTask: () => import_creator_studio_shell.createAppAgentTask,
34
+ createNewGameAgentTask: () => createNewGameAgentTask,
35
+ createPlayTradeSession: () => import_creator_studio_shell.createPlayTradeSession,
36
+ deleteApp: () => import_creator_studio_shell.deleteApp,
37
+ deleteAppVersion: () => deleteAppVersion,
38
+ getAgentTaskAvailability: () => getAgentTaskAvailability,
39
+ getAppAgentTaskAvailability: () => getAppAgentTaskAvailability,
40
+ getCreationConversation: () => getCreationConversation,
41
+ getPlayTradeOverview: () => import_creator_studio_shell.getPlayTradeOverview,
42
+ listCreationGames: () => import_creator_studio_shell.listCreationGames,
43
+ listPlaytestNotes: () => listPlaytestNotes,
44
+ publishAppListingDraft: () => publishAppListingDraft,
45
+ recordCreatorGameShare: () => import_creator_studio_shell.recordCreatorGameShare,
46
+ retryAgentTask: () => retryAgentTask,
47
+ updateAppListingDraft: () => updateAppListingDraft,
48
+ updateAppVersion: () => import_creator_studio_shell.updateAppVersion,
49
+ updateCreatorGameFeedbackStatus: () => import_creator_studio_shell.updateCreatorGameFeedbackStatus,
50
+ updateCreatorPlanAutoPublish: () => import_creator_studio_shell.updateCreatorPlanAutoPublish,
51
+ updateCreatorPlanCreditUsage: () => import_creator_studio_shell.updateCreatorPlanCreditUsage,
52
+ uploadAppListingDraftMedia: () => uploadAppListingDraftMedia
53
+ });
54
+ module.exports = __toCommonJS(creator_studio_exports);
55
+ var import_browser_request = require("./browser-request.js");
56
+ var import_creator_studio_shell = require("./creator-studio-shell.js");
57
+ function normalizeCreatorGameRef(value) {
58
+ const normalized = typeof value === "string" ? value.trim() : "";
59
+ if (!normalized)
60
+ throw new Error("invalid_creator_game_ref");
61
+ return normalized;
62
+ }
63
+ function normalizeRouteValue(value, errorCode) {
64
+ const normalized = typeof value === "string" ? value.trim() : "";
65
+ if (!normalized)
66
+ throw new Error(errorCode);
67
+ return normalized;
68
+ }
69
+ function normalizeAgentTaskId(value) {
70
+ if (!Number.isInteger(value) || value <= 0)
71
+ throw new Error("invalid_agent_task_id");
72
+ return value;
73
+ }
74
+ function creatorAppPath(creatorUsername, appName, suffix = "") {
75
+ const creator = normalizeRouteValue(creatorUsername, "invalid_creator_username");
76
+ const app = normalizeRouteValue(appName, "invalid_app_name");
77
+ return `/creators/${encodeURIComponent(creator)}/apps/${encodeURIComponent(app)}${suffix}`;
78
+ }
79
+ function publicAppPath(creatorUsername, appName, suffix = "") {
80
+ const creator = normalizeRouteValue(creatorUsername, "invalid_creator_username");
81
+ const app = normalizeRouteValue(appName, "invalid_app_name");
82
+ return `/apps/${encodeURIComponent(creator)}/${encodeURIComponent(app)}${suffix}`;
83
+ }
84
+ async function createNewGameAgentTask(body) {
85
+ return await (0, import_browser_request.browserRequestAccepted)("POST", "/me/agent-tasks", "create_new_game_agent_task", [200, 201, 202], body);
86
+ }
87
+ async function cancelAgentTask(taskId) {
88
+ return await (0, import_browser_request.browserRequestOk)("POST", `/me/agent-tasks/${normalizeAgentTaskId(taskId)}/cancel`, "cancel_agent_task");
89
+ }
90
+ async function clearAgentTask(taskId) {
91
+ return await (0, import_browser_request.browserRequestOk)("DELETE", `/me/agent-tasks/${normalizeAgentTaskId(taskId)}`, "clear_agent_task");
92
+ }
93
+ async function retryAgentTask(taskId) {
94
+ return await (0, import_browser_request.browserRequestAccepted)("POST", `/me/agent-tasks/${normalizeAgentTaskId(taskId)}/retry`, "retry_agent_task", [200, 201], {});
95
+ }
96
+ async function getAppAgentTaskAvailability(appName, options = {}) {
97
+ return await (0, import_browser_request.browserRequestOk)("GET", `/me/games/${encodeURIComponent(normalizeRouteValue(appName, "invalid_app_name"))}/agent-tasks/availability`, "get_app_agent_task_availability", void 0, options);
98
+ }
99
+ async function getAgentTaskAvailability(kind, options = {}) {
100
+ const params = new URLSearchParams({ kind });
101
+ return await (0, import_browser_request.browserRequestOk)("GET", `/me/agent-tasks/availability?${params.toString()}`, "get_agent_task_availability", void 0, options);
102
+ }
103
+ async function getCreationConversation(gameRef, options = {}) {
104
+ const params = new URLSearchParams();
105
+ if (typeof options.before === "string" && options.before.trim()) {
106
+ params.set("before", options.before.trim());
107
+ } else if (typeof options.sync === "string" && options.sync.trim()) {
108
+ params.set("sync", options.sync.trim());
109
+ } else {
110
+ const limit = typeof options.limit === "number" ? Math.trunc(options.limit) : 50;
111
+ params.set("limit", String(limit));
112
+ }
113
+ const response = await (0, import_browser_request.browserRequestOk)("GET", `/me/creation/games/${encodeURIComponent(normalizeCreatorGameRef(gameRef))}/conversation?${params.toString()}`, "get_creation_conversation", void 0, options.signal ? { signal: options.signal } : void 0);
114
+ return {
115
+ ...response,
116
+ items: response.items.map((item) => {
117
+ if (item.kind === "creator_prompt") {
118
+ return {
119
+ ...item,
120
+ attachments: item.attachments.map((attachment) => ({
121
+ ...attachment,
122
+ url: (0, import_browser_request.resolveBrowserApiUrl)(attachment.url)
123
+ }))
124
+ };
125
+ }
126
+ if (item.kind !== "task")
127
+ return item;
128
+ return {
129
+ ...item,
130
+ ...item.gamePreview ? {
131
+ gamePreview: {
132
+ ...item.gamePreview,
133
+ iconUrl: item.gamePreview.iconUrl ? (0, import_browser_request.resolveBrowserApiUrl)(item.gamePreview.iconUrl) : null
134
+ }
135
+ } : {},
136
+ materials: item.materials.map((material) => ({
137
+ ...material,
138
+ url: (0, import_browser_request.resolveBrowserApiUrl)(material.url),
139
+ posterUrl: material.posterUrl ? (0, import_browser_request.resolveBrowserApiUrl)(material.posterUrl) : null
140
+ }))
141
+ };
142
+ })
143
+ };
144
+ }
145
+ async function listPlaytestNotes(creatorUsername, appName, version) {
146
+ return await (0, import_browser_request.browserRequestOk)("GET", `/apps/${encodeURIComponent(normalizeRouteValue(creatorUsername, "invalid_creator_username"))}/${encodeURIComponent(normalizeRouteValue(appName, "invalid_app_name"))}/versions/${encodeURIComponent(normalizeRouteValue(version, "invalid_version"))}/notes`, "list_playtest_notes");
147
+ }
148
+ async function clearPlaytestNotes(creatorUsername, appName, version, ids) {
149
+ return await (0, import_browser_request.browserRequestOk)("POST", publicAppPath(creatorUsername, appName, `/versions/${encodeURIComponent(normalizeRouteValue(version, "invalid_version"))}/notes/clear`), "clear_playtest_notes", { ids });
150
+ }
151
+ async function deleteAppVersion(creatorUsername, appName, version) {
152
+ return await (0, import_browser_request.browserRequestOk)("DELETE", creatorAppPath(creatorUsername, appName, `/versions/${encodeURIComponent(normalizeRouteValue(version, "invalid_version"))}`), "delete_app_version");
153
+ }
154
+ async function updateAppListingDraft(creatorUsername, appName, body) {
155
+ const { updateAppListingDraft: update } = await import("./creator-studio-marketing.js");
156
+ return await update(creatorUsername, appName, body);
157
+ }
158
+ async function publishAppListingDraft(creatorUsername, appName) {
159
+ const { publishAppListingDraft: publish } = await import("./creator-studio-marketing.js");
160
+ return await publish(creatorUsername, appName);
161
+ }
162
+ async function uploadAppListingDraftMedia(creatorUsername, appName, slot, file, filename) {
163
+ const { uploadAppListingDraftMedia: upload } = await import("./creator-studio-marketing.js");
164
+ return await upload(creatorUsername, appName, slot, file, filename);
165
+ }
166
+ // Annotate the CommonJS export names for ESM import in node:
167
+ 0 && (module.exports = {
168
+ cancelAgentTask,
169
+ clearAgentTask,
170
+ clearPlaytestNotes,
171
+ createAppAgentTask,
172
+ createNewGameAgentTask,
173
+ createPlayTradeSession,
174
+ deleteApp,
175
+ deleteAppVersion,
176
+ getAgentTaskAvailability,
177
+ getAppAgentTaskAvailability,
178
+ getCreationConversation,
179
+ getPlayTradeOverview,
180
+ listCreationGames,
181
+ listPlaytestNotes,
182
+ publishAppListingDraft,
183
+ recordCreatorGameShare,
184
+ retryAgentTask,
185
+ updateAppListingDraft,
186
+ updateAppVersion,
187
+ updateCreatorGameFeedbackStatus,
188
+ updateCreatorPlanAutoPublish,
189
+ updateCreatorPlanCreditUsage,
190
+ uploadAppListingDraftMedia
191
+ });
@@ -298,7 +298,7 @@ export declare function createChatAttachmentUploadSession(conversationId: string
298
298
  export declare function uploadChatAttachment(session: ChatAttachmentUploadSession, file: Blob): Promise<void>;
299
299
  export declare function completeChatAttachmentUploadSession(sessionId: string): Promise<void>;
300
300
  export declare function abortChatAttachmentUploadSession(sessionId: string): Promise<void>;
301
- export declare function connectChatRealtime(options: ChatRealtimeConnectionOptions): import("./index.js").ChatRealtimeConnection;
301
+ export declare function connectChatRealtime(options: ChatRealtimeConnectionOptions): import("./chat.js").ChatRealtimeConnection;
302
302
  export declare function fetchFollowingCreators(options?: {
303
303
  sort?: FollowingSort;
304
304
  }): Promise<import("@playdrop/types").FollowingCreatorsResponse>;