@fps-games/editor 0.1.4-beta.2 → 0.1.4-beta.4

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 (64) hide show
  1. package/dist/local-editor-harness.d.ts +46 -6
  2. package/dist/local-editor-harness.d.ts.map +1 -1
  3. package/dist/local-editor-harness.js +254 -23
  4. package/dist/local-editor-harness.js.map +1 -1
  5. package/dist/playable-babylon-facade.d.ts +1 -1
  6. package/dist/playable-babylon-facade.d.ts.map +1 -1
  7. package/dist/playable-babylon-facade.js.map +1 -1
  8. package/dist/playable-babylon-rendering.d.ts +57 -1
  9. package/dist/playable-babylon-rendering.d.ts.map +1 -1
  10. package/dist/playable-babylon-rendering.js +211 -9
  11. package/dist/playable-babylon-rendering.js.map +1 -1
  12. package/dist/playable-local-editor-host.d.ts +15 -1
  13. package/dist/playable-local-editor-host.d.ts.map +1 -1
  14. package/dist/playable-local-editor-host.js +5 -2
  15. package/dist/playable-local-editor-host.js.map +1 -1
  16. package/dist/playable-sdk.d.ts +5 -4
  17. package/dist/playable-sdk.d.ts.map +1 -1
  18. package/dist/playable-sdk.js +1 -1
  19. package/dist/playable-sdk.js.map +1 -1
  20. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js +2 -0
  21. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js.map +1 -1
  22. package/node_modules/@fps-games/babylon-renderer/package.json +1 -1
  23. package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts +25 -2
  24. package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts.map +1 -1
  25. package/node_modules/@fps-games/editor-babylon/dist/projection.js +89 -9
  26. package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
  27. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js +2 -2
  28. package/node_modules/@fps-games/editor-babylon/package.json +5 -5
  29. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts.map +1 -1
  30. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js +36 -3
  31. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -1
  32. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -1
  33. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +148 -0
  34. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
  35. package/node_modules/@fps-games/editor-browser/package.json +3 -3
  36. package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts +14 -0
  37. package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts.map +1 -1
  38. package/node_modules/@fps-games/editor-core/dist/editor-session.js +54 -0
  39. package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -1
  40. package/node_modules/@fps-games/editor-core/package.json +2 -2
  41. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.d.ts +25 -0
  42. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.d.ts.map +1 -1
  43. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js +56 -9
  44. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js.map +1 -1
  45. package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
  46. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.d.ts +2 -0
  47. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.d.ts.map +1 -1
  48. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.d.ts +33 -0
  49. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.d.ts.map +1 -1
  50. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts +8 -1
  51. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts.map +1 -1
  52. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js +85 -0
  53. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js.map +1 -1
  54. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts +2 -2
  55. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts.map +1 -1
  56. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js +1 -1
  57. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js.map +1 -1
  58. package/node_modules/@fps-games/editor-playable-sdk/package.json +3 -3
  59. package/node_modules/@fps-games/editor-protocol/dist/index.d.ts +2 -0
  60. package/node_modules/@fps-games/editor-protocol/dist/index.d.ts.map +1 -1
  61. package/node_modules/@fps-games/editor-protocol/dist/index.js +2 -0
  62. package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
  63. package/node_modules/@fps-games/editor-protocol/package.json +1 -1
  64. package/package.json +8 -8
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fps-games/editor-browser",
3
- "version": "0.1.4-beta.2",
3
+ "version": "0.1.4-beta.4",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "description": "Browser host adapters for fps-game-editor.",
@@ -14,7 +14,7 @@
14
14
  }
15
15
  },
16
16
  "dependencies": {
17
- "@fps-games/editor-core": "0.1.4-beta.2",
18
- "@fps-games/editor-playable-sdk": "0.1.4-beta.2"
17
+ "@fps-games/editor-core": "0.1.4-beta.4",
18
+ "@fps-games/editor-playable-sdk": "0.1.4-beta.4"
19
19
  }
20
20
  }
@@ -7,6 +7,7 @@ export interface EditorSelectionState {
7
7
  export interface EditorCommandBase {
8
8
  type: string;
9
9
  label?: string;
10
+ projectionImpact?: EditorProjectionImpact;
10
11
  }
11
12
  export interface DocumentPatchCommand<TPatch = unknown> extends EditorCommandBase {
12
13
  type: 'document.patch';
@@ -82,8 +83,21 @@ export interface UndoTransaction<TDocument> {
82
83
  commandType: string;
83
84
  beforeDocument: TDocument;
84
85
  afterDocument: TDocument;
86
+ projectionImpact?: EditorProjectionImpact;
85
87
  createdAt: number;
86
88
  }
89
+ export type EditorProjectionImpact = EditorProjectionIncrementalImpact | EditorProjectionRebuildImpact;
90
+ export interface EditorProjectionIncrementalImpact {
91
+ type: 'incremental';
92
+ syncTransformIds?: string[];
93
+ reprojectIds?: string[];
94
+ createdNodeIds?: string[];
95
+ deletedNodeIds?: string[];
96
+ }
97
+ export interface EditorProjectionRebuildImpact {
98
+ type: 'rebuild';
99
+ reason?: string;
100
+ }
87
101
  export interface EditorSessionHistoryEntry {
88
102
  id: string;
89
103
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"editor-session.d.ts","sourceRoot":"","sources":["../src/editor-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-session.d.ts","sourceRoot":"","sources":["../src/editor-session.ts"],"names":[],"mappings":"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"}
@@ -214,11 +214,13 @@ export class EditorSession {
214
214
  const previous = options.mergeWithPrevious ? this.undoStack[this.undoStack.length - 1] : undefined;
215
215
  if (previous) {
216
216
  previous.afterDocument = this.cloneDocument(afterDocument);
217
+ previous.projectionImpact = mergeProjectionImpact(previous.projectionImpact, command.projectionImpact);
217
218
  this.redoStack = [];
218
219
  return {
219
220
  ...previous,
220
221
  beforeDocument: this.cloneDocument(previous.beforeDocument),
221
222
  afterDocument: this.cloneDocument(previous.afterDocument),
223
+ projectionImpact: cloneProjectionImpact(previous.projectionImpact),
222
224
  };
223
225
  }
224
226
  const transaction = {
@@ -227,6 +229,7 @@ export class EditorSession {
227
229
  commandType: command.type,
228
230
  beforeDocument: this.cloneDocument(beforeDocument),
229
231
  afterDocument: this.cloneDocument(afterDocument),
232
+ ...(command.projectionImpact ? { projectionImpact: cloneProjectionImpact(command.projectionImpact) } : {}),
230
233
  createdAt: Date.now(),
231
234
  };
232
235
  this.undoStack.push(transaction);
@@ -241,6 +244,57 @@ export class EditorSession {
241
244
  };
242
245
  }
243
246
  }
247
+ function cloneProjectionImpact(impact) {
248
+ if (!impact)
249
+ return undefined;
250
+ if (impact.type === 'rebuild') {
251
+ return {
252
+ type: 'rebuild',
253
+ ...(impact.reason ? { reason: impact.reason } : {}),
254
+ };
255
+ }
256
+ return {
257
+ type: 'incremental',
258
+ ...(impact.syncTransformIds ? { syncTransformIds: [...impact.syncTransformIds] } : {}),
259
+ ...(impact.reprojectIds ? { reprojectIds: [...impact.reprojectIds] } : {}),
260
+ ...(impact.createdNodeIds ? { createdNodeIds: [...impact.createdNodeIds] } : {}),
261
+ ...(impact.deletedNodeIds ? { deletedNodeIds: [...impact.deletedNodeIds] } : {}),
262
+ };
263
+ }
264
+ function mergeProjectionImpact(previous, next) {
265
+ if (!previous || !next)
266
+ return undefined;
267
+ if (previous.type === 'rebuild' || next.type === 'rebuild') {
268
+ const reason = previous.type === 'rebuild'
269
+ ? previous.reason
270
+ : next.type === 'rebuild'
271
+ ? next.reason
272
+ : undefined;
273
+ return {
274
+ type: 'rebuild',
275
+ ...(reason ? { reason } : {}),
276
+ };
277
+ }
278
+ return {
279
+ type: 'incremental',
280
+ syncTransformIds: uniqueIds([
281
+ ...(previous.syncTransformIds ?? []),
282
+ ...(next.syncTransformIds ?? []),
283
+ ]),
284
+ reprojectIds: uniqueIds([
285
+ ...(previous.reprojectIds ?? []),
286
+ ...(next.reprojectIds ?? []),
287
+ ]),
288
+ createdNodeIds: uniqueIds([
289
+ ...(previous.createdNodeIds ?? []),
290
+ ...(next.createdNodeIds ?? []),
291
+ ]),
292
+ deletedNodeIds: uniqueIds([
293
+ ...(previous.deletedNodeIds ?? []),
294
+ ...(next.deletedNodeIds ?? []),
295
+ ]),
296
+ };
297
+ }
244
298
  function toHistoryEntry(transaction) {
245
299
  return {
246
300
  id: transaction.id,
@@ -1 +1 @@
1
- {"version":3,"file":"editor-session.js","sourceRoot":"","sources":["../src/editor-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-session.js","sourceRoot":"","sources":["../src/editor-session.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fps-games/editor-core",
3
- "version": "0.1.4-beta.2",
3
+ "version": "0.1.4-beta.4",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "description": "Core runtime shell and adapter contracts for fps-game-editor.",
@@ -14,6 +14,6 @@
14
14
  }
15
15
  },
16
16
  "dependencies": {
17
- "@fps-games/editor-protocol": "0.1.4-beta.2"
17
+ "@fps-games/editor-protocol": "0.1.4-beta.4"
18
18
  }
19
19
  }
@@ -1,16 +1,28 @@
1
1
  import { type EditorAgentContext } from '@fps-games/editor-protocol';
2
2
  export declare const FORGE_PLAY_AGENT_BRIDGE_SOURCE: "forge-play-game-bridge";
3
3
  export declare const FORGE_PLAY_AGENT_POST_MESSAGE_EVENT: "event";
4
+ export declare const FORGE_PLAY_AGENT_DEFAULT_LEGACY_EVENT: "context:selection";
5
+ /**
6
+ * Controls how editor Agent Context reaches Forge Play.
7
+ * Use `dual` only for rollout/debugging; hosts that accept both protocols should dedupe by context id.
8
+ */
9
+ export type ForgePlayAgentContextDeliveryMode = 'legacy-mention' | 'agent-context-v1' | 'dual';
10
+ export type ForgePlayAgentContextLegacyEvent = 'context:selection' | 'selection:changed';
4
11
  export interface ForgePlayAgentTransportParentLike {
5
12
  postMessage(message: unknown, targetOrigin: string): void;
6
13
  }
7
14
  export interface ForgePlayAgentTransportWindowLike {
8
15
  parent?: ForgePlayAgentTransportParentLike | null;
9
16
  }
17
+ export interface ForgePlayAgentContextDeliveryOptions {
18
+ mode?: ForgePlayAgentContextDeliveryMode;
19
+ legacyEvent?: ForgePlayAgentContextLegacyEvent;
20
+ }
10
21
  export interface ForgePlayAgentTransportOptions {
11
22
  window?: ForgePlayAgentTransportWindowLike | null;
12
23
  targetOrigin?: string;
13
24
  now?: () => number;
25
+ agentContextDelivery?: ForgePlayAgentContextDeliveryOptions | null;
14
26
  }
15
27
  export interface ForgePlayAgentTransportResult {
16
28
  sent: boolean;
@@ -19,5 +31,18 @@ export interface ForgePlayAgentTransportResult {
19
31
  export interface ForgePlayAgentTransport {
20
32
  sendContext(context: EditorAgentContext): ForgePlayAgentTransportResult;
21
33
  }
34
+ export interface ForgePlayLegacyAgentMentionPayload {
35
+ id: string;
36
+ type: 'object';
37
+ name: string;
38
+ label: string;
39
+ summary: string;
40
+ agentContextId: string;
41
+ agentContextKind: EditorAgentContext['kind'];
42
+ schemaVersion: EditorAgentContext['schemaVersion'];
43
+ dedupeKey: string;
44
+ context: EditorAgentContext;
45
+ }
46
+ export declare function createLegacyMentionPayload(context: EditorAgentContext): ForgePlayLegacyAgentMentionPayload;
22
47
  export declare function createForgePlayAgentTransport(options?: ForgePlayAgentTransportOptions): ForgePlayAgentTransport;
23
48
  //# sourceMappingURL=agent-transport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-transport.d.ts","sourceRoot":"","sources":["../src/agent-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAM,8BAA8B,EAAG,wBAAiC,CAAC;AAChF,eAAO,MAAM,mCAAmC,EAAG,OAAgB,CAAC;AAEpE,MAAM,WAAW,iCAAiC;IAChD,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3D;AAED,MAAM,WAAW,iCAAiC;IAChD,MAAM,CAAC,EAAE,iCAAiC,GAAG,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,8BAA8B;IAC7C,MAAM,CAAC,EAAE,iCAAiC,GAAG,IAAI,CAAC;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,6BAA6B,CAAC;CACzE;AAiBD,wBAAgB,6BAA6B,CAC3C,OAAO,GAAE,8BAAmC,GAC3C,uBAAuB,CAoBzB"}
1
+ {"version":3,"file":"agent-transport.d.ts","sourceRoot":"","sources":["../src/agent-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAM,8BAA8B,EAAG,wBAAiC,CAAC;AAChF,eAAO,MAAM,mCAAmC,EAAG,OAAgB,CAAC;AACpE,eAAO,MAAM,qCAAqC,EAAG,mBAA4B,CAAC;AAElF;;;GAGG;AACH,MAAM,MAAM,iCAAiC,GACzC,gBAAgB,GAChB,kBAAkB,GAClB,MAAM,CAAC;AAEX,MAAM,MAAM,gCAAgC,GACxC,mBAAmB,GACnB,mBAAmB,CAAC;AAExB,MAAM,WAAW,iCAAiC;IAChD,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3D;AAED,MAAM,WAAW,iCAAiC;IAChD,MAAM,CAAC,EAAE,iCAAiC,GAAG,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,oCAAoC;IACnD,IAAI,CAAC,EAAE,iCAAiC,CAAC;IACzC,WAAW,CAAC,EAAE,gCAAgC,CAAC;CAChD;AAED,MAAM,WAAW,8BAA8B;IAC7C,MAAM,CAAC,EAAE,iCAAiC,GAAG,IAAI,CAAC;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,oCAAoC,GAAG,IAAI,CAAC;CACpE;AAED,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,6BAA6B,CAAC;CACzE;AAED,MAAM,WAAW,kCAAkC;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC7C,aAAa,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,kBAAkB,CAAC;CAC7B;AAiBD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,kBAAkB,GAC1B,kCAAkC,CAapC;AAED,wBAAgB,6BAA6B,CAC3C,OAAO,GAAE,8BAAmC,GAC3C,uBAAuB,CAmBzB"}
@@ -1,6 +1,7 @@
1
1
  import { EDITOR_AGENT_EVENT_NAME, } from '@fps-games/editor-protocol';
2
2
  export const FORGE_PLAY_AGENT_BRIDGE_SOURCE = 'forge-play-game-bridge';
3
3
  export const FORGE_PLAY_AGENT_POST_MESSAGE_EVENT = 'event';
4
+ export const FORGE_PLAY_AGENT_DEFAULT_LEGACY_EVENT = 'context:selection';
4
5
  function getDefaultWindow() {
5
6
  if (typeof window === 'undefined')
6
7
  return null;
@@ -18,26 +19,72 @@ function resolveParent(win) {
18
19
  }
19
20
  return win.parent;
20
21
  }
22
+ export function createLegacyMentionPayload(context) {
23
+ return {
24
+ id: context.id,
25
+ type: 'object',
26
+ name: context.label,
27
+ label: context.label,
28
+ summary: context.summary,
29
+ agentContextId: context.id,
30
+ agentContextKind: context.kind,
31
+ schemaVersion: context.schemaVersion,
32
+ dedupeKey: context.id,
33
+ context,
34
+ };
35
+ }
21
36
  export function createForgePlayAgentTransport(options = {}) {
22
37
  const win = options.window ?? getDefaultWindow();
23
38
  const targetOrigin = options.targetOrigin ?? '*';
24
39
  const now = options.now ?? Date.now;
40
+ const delivery = normalizeAgentContextDeliveryOptions(options.agentContextDelivery);
25
41
  return {
26
42
  sendContext(context) {
27
43
  const parent = resolveParent(win);
28
44
  if (!parent)
29
45
  return { sent: false, reason: 'No Forge Play parent window is available.' };
30
- parent.postMessage({
31
- source: FORGE_PLAY_AGENT_BRIDGE_SOURCE,
32
- type: FORGE_PLAY_AGENT_POST_MESSAGE_EVENT,
33
- payload: {
34
- name: EDITOR_AGENT_EVENT_NAME.CONTEXT_ADD,
35
- context,
36
- },
37
- timestamp: now(),
38
- }, targetOrigin);
46
+ const timestamp = now();
47
+ if (delivery.mode === 'agent-context-v1' || delivery.mode === 'dual') {
48
+ postAgentContextV1(parent, context, targetOrigin, timestamp);
49
+ }
50
+ if (delivery.mode === 'legacy-mention' || delivery.mode === 'dual') {
51
+ postLegacyAgentMention(parent, context, targetOrigin, timestamp, delivery.legacyEvent);
52
+ }
39
53
  return { sent: true };
40
54
  },
41
55
  };
42
56
  }
57
+ function normalizeAgentContextDeliveryOptions(options) {
58
+ return {
59
+ mode: isAgentContextDeliveryMode(options?.mode) ? options.mode : 'legacy-mention',
60
+ legacyEvent: isAgentContextLegacyEvent(options?.legacyEvent)
61
+ ? options.legacyEvent
62
+ : FORGE_PLAY_AGENT_DEFAULT_LEGACY_EVENT,
63
+ };
64
+ }
65
+ function isAgentContextDeliveryMode(value) {
66
+ return value === 'legacy-mention' || value === 'agent-context-v1' || value === 'dual';
67
+ }
68
+ function isAgentContextLegacyEvent(value) {
69
+ return value === 'context:selection' || value === 'selection:changed';
70
+ }
71
+ function postAgentContextV1(parent, context, targetOrigin, timestamp) {
72
+ parent.postMessage({
73
+ source: FORGE_PLAY_AGENT_BRIDGE_SOURCE,
74
+ type: FORGE_PLAY_AGENT_POST_MESSAGE_EVENT,
75
+ payload: {
76
+ name: EDITOR_AGENT_EVENT_NAME.CONTEXT_ADD,
77
+ context,
78
+ },
79
+ timestamp,
80
+ }, targetOrigin);
81
+ }
82
+ function postLegacyAgentMention(parent, context, targetOrigin, timestamp, legacyEvent) {
83
+ parent.postMessage({
84
+ source: FORGE_PLAY_AGENT_BRIDGE_SOURCE,
85
+ type: legacyEvent,
86
+ payload: createLegacyMentionPayload(context),
87
+ timestamp,
88
+ }, targetOrigin);
89
+ }
43
90
  //# sourceMappingURL=agent-transport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-transport.js","sourceRoot":"","sources":["../src/agent-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,GAExB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,CAAC,MAAM,8BAA8B,GAAG,wBAAiC,CAAC;AAChF,MAAM,CAAC,MAAM,mCAAmC,GAAG,OAAgB,CAAC;AAyBpE,SAAS,gBAAgB;IACvB,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAC/C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,GAA6C;IAClE,IAAI,CAAC,GAAG,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,UAA0C,EAAE;IAE5C,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;IACjD,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,GAAG,CAAC;IACjD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;IACpC,OAAO;QACL,WAAW,CAAC,OAAO;YACjB,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM;gBAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,2CAA2C,EAAE,CAAC;YACzF,MAAM,CAAC,WAAW,CAAC;gBACjB,MAAM,EAAE,8BAA8B;gBACtC,IAAI,EAAE,mCAAmC;gBACzC,OAAO,EAAE;oBACP,IAAI,EAAE,uBAAuB,CAAC,WAAW;oBACzC,OAAO;iBACR;gBACD,SAAS,EAAE,GAAG,EAAE;aACjB,EAAE,YAAY,CAAC,CAAC;YACjB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACxB,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"agent-transport.js","sourceRoot":"","sources":["../src/agent-transport.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fps-games/editor-forge-play",
3
- "version": "0.1.4-beta.2",
3
+ "version": "0.1.4-beta.4",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "description": "Forge Play bridge adapter for fps-game-editor.",
@@ -14,6 +14,6 @@
14
14
  }
15
15
  },
16
16
  "dependencies": {
17
- "@fps-games/editor-protocol": "0.1.4-beta.2"
17
+ "@fps-games/editor-protocol": "0.1.4-beta.4"
18
18
  }
19
19
  }
@@ -19,6 +19,8 @@ export declare const PLAYABLE_EDITOR_COMMAND_NAME: {
19
19
  };
20
20
  export declare const PLAYABLE_EDITOR_EVENT_NAME: {
21
21
  readonly DOCUMENT_EXPORTED: "document.exported";
22
+ readonly UNDO_RESULT: "history.undo.result";
23
+ readonly REDO_RESULT: "history.redo.result";
22
24
  readonly INSPECTOR_FLUSHED: "inspector.flushed";
23
25
  readonly ASSET_REGISTRATION_PLANNED: "asset.registration.planned";
24
26
  readonly ASSET_REGISTRATION_FAILED: "asset.registration.failed";
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/bridge-command/protocol.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;CAAsB,CAAC;AAChE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;CAAoB,CAAC;AAC5D,eAAO,MAAM,4BAA4B;;CAAsB,CAAC;AAEhE,MAAM,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;AAC1D,MAAM,MAAM,uBAAuB,GAAG,eAAe,CAAC;AACtD,MAAM,MAAM,6BAA6B,GAAG,qBAAqB,CAAC"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/bridge-command/protocol.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;CAAsB,CAAC;AAChE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;CAAoB,CAAC;AAC5D,eAAO,MAAM,4BAA4B;;CAAsB,CAAC;AAEhE,MAAM,MAAM,yBAAyB,GAAG,iBAAiB,CAAC;AAC1D,MAAM,MAAM,uBAAuB,GAAG,eAAe,CAAC;AACtD,MAAM,MAAM,6BAA6B,GAAG,qBAAqB,CAAC"}
@@ -19,12 +19,45 @@ export interface PlayableForgePlayWindowLike {
19
19
  clearTimeout(id: unknown): void;
20
20
  queueMicrotask?(handler: () => void): void;
21
21
  }
22
+ export type PlayableForgePlayOperationOrigin = 'user' | 'agent' | 'system';
23
+ export type PlayableForgePlayProjectionWaitPolicy = 'none' | 'settled';
24
+ export type PlayableForgePlayHistoryOperation = 'undo' | 'redo';
25
+ export interface PlayableForgePlayHistoryOperationOptions {
26
+ origin?: PlayableForgePlayOperationOrigin;
27
+ waitForProjection?: PlayableForgePlayProjectionWaitPolicy;
28
+ }
29
+ export interface PlayableForgePlayHistoryProjectionResult {
30
+ waitPolicy: PlayableForgePlayProjectionWaitPolicy;
31
+ idle: boolean;
32
+ activeBatchIds: number[];
33
+ lastBatch: unknown | null;
34
+ }
35
+ export interface PlayableForgePlayHistoryStateResult {
36
+ canUndo: boolean;
37
+ canRedo: boolean;
38
+ }
39
+ export interface PlayableForgePlayHistoryOperationResult<TDocument = unknown> {
40
+ ok: boolean;
41
+ operation: PlayableForgePlayHistoryOperation;
42
+ origin: PlayableForgePlayOperationOrigin;
43
+ waitForProjection: PlayableForgePlayProjectionWaitPolicy;
44
+ documentChanged: boolean;
45
+ transactionLabel: string | null;
46
+ workingDocument: TDocument | null;
47
+ dirty: boolean;
48
+ history: PlayableForgePlayHistoryStateResult;
49
+ status: string;
50
+ projection: PlayableForgePlayHistoryProjectionResult;
51
+ error?: string;
52
+ }
22
53
  export interface PlayableForgePlayBridgeHarness {
23
54
  enterEditor(): Promise<void>;
24
55
  saveScene(): Promise<boolean>;
25
56
  discardAndRunGame(): Promise<void>;
26
57
  render(): void;
27
58
  getWorkingDocument(): unknown | null;
59
+ undo?(options?: PlayableForgePlayHistoryOperationOptions): Promise<PlayableForgePlayHistoryOperationResult>;
60
+ redo?(options?: PlayableForgePlayHistoryOperationOptions): Promise<PlayableForgePlayHistoryOperationResult>;
28
61
  }
29
62
  export interface PlayableForgePlayBridgeLoadingOverlay {
30
63
  show(content: PlayableLocalEditorLoadingOverlayContent): void;
@@ -1 +1 @@
1
- {"version":3,"file":"forge-play-types.d.ts","sourceRoot":"","sources":["../../src/local-harness/forge-play-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"forge-play-types.d.ts","sourceRoot":"","sources":["../../src/local-harness/forge-play-types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { PlayableForgePlayBridgeInstallOptions, PlayableForgePlayModeBridge, PlayableForgePlaySaveState, PlayableForgePlayWindowLike, PlayableLegacyAssetCommandBypassOptions } from './forge-play-types';
1
+ import type { PlayableForgePlayBridgeInstallOptions, PlayableForgePlayHistoryOperation, PlayableForgePlayHistoryOperationOptions, PlayableForgePlayModeBridge, PlayableForgePlaySaveState, PlayableForgePlayWindowLike, PlayableLegacyAssetCommandBypassOptions } from './forge-play-types';
2
2
  export declare const PLAYABLE_FORGE_PLAY_BRIDGE_SOURCE = "forge-play-game-bridge";
3
3
  export declare const PLAYABLE_FORGE_PLAY_POST_MESSAGE: {
4
4
  readonly EVENT: "event";
@@ -6,6 +6,8 @@ export declare const PLAYABLE_FORGE_PLAY_POST_MESSAGE: {
6
6
  };
7
7
  export declare const PLAYABLE_FORGE_PLAY_COMMAND: {
8
8
  readonly MODE_CHANGE: "mode.change";
9
+ readonly UNDO: "history.undo";
10
+ readonly REDO: "history.redo";
9
11
  readonly DOCUMENT_EXPORT: "document.export";
10
12
  readonly DOCUMENT_COMMIT: "document.commit";
11
13
  readonly ASSET_IMPORT: "asset.import";
@@ -18,6 +20,8 @@ export declare const PLAYABLE_FORGE_PLAY_EVENT: {
18
20
  readonly SCENE_READY: "scene.ready";
19
21
  readonly FIRST_FRAME: "scene.first_frame";
20
22
  readonly MODE_CHANGE: "mode.change";
23
+ readonly HISTORY_UNDO_RESULT: "history.undo.result";
24
+ readonly HISTORY_REDO_RESULT: "history.redo.result";
21
25
  readonly DOCUMENT_EXPORTED: "document.exported";
22
26
  readonly ASSET_IMPORT_RESULT: "asset.import.result";
23
27
  readonly ASSET_LIBRARY_REFRESHED: "asset.library.refreshed";
@@ -27,12 +31,15 @@ export declare const PLAYABLE_FORGE_PLAY_EVENT: {
27
31
  export declare const PLAYABLE_FORGE_PLAY_EVENT_ALIASES: Record<string, readonly string[]>;
28
32
  export declare const PLAYABLE_FORGE_PLAY_COMMAND_ALIASES: Record<string, string>;
29
33
  export declare const PLAYABLE_FORGE_PLAY_PROJECT_ASSET_COMMANDS: Set<string>;
34
+ export declare const PLAYABLE_FORGE_PLAY_HISTORY_COMMANDS: Set<string>;
30
35
  export declare const PLAYABLE_LEGACY_ASSET_COMMAND_BYPASS_FLAG = "__projectLegacyAssetBypass";
31
36
  export declare const PLAYABLE_ORIGINAL_LEGACY_ASSET_RUNTIME = "__projectOriginalLegacyAssetRuntime";
32
37
  export declare const PLAYABLE_LEGACY_REGISTER_PATCH_FLAG = "__projectLegacyRegisterPatch";
33
38
  export declare function createPlayableForgePlaySaveState(): PlayableForgePlaySaveState;
34
39
  export declare function normalizePlayableForgePlayCommandName(value: unknown): string | null;
35
40
  export declare function readPlayableForgePlayRequestId(payload: Record<string, unknown>): string | undefined;
41
+ export declare function readPlayableForgePlayHistoryOperationOptions(payload: Record<string, unknown>): PlayableForgePlayHistoryOperationOptions;
42
+ export declare function getPlayableForgePlayHistoryResultEventName(operation: PlayableForgePlayHistoryOperation): string;
36
43
  export declare function postPlayableForgePlayEvent(windowLike: Pick<PlayableForgePlayWindowLike, 'parent'>, name: string, payload?: Record<string, unknown>): void;
37
44
  export declare function installPlayableLegacyAssetCommandBypass(options: PlayableLegacyAssetCommandBypassOptions): () => void;
38
45
  export declare function installPlayableForgePlayModeBridge(options: PlayableForgePlayBridgeInstallOptions): PlayableForgePlayModeBridge;
@@ -1 +1 @@
1
- {"version":3,"file":"forge-play.d.ts","sourceRoot":"","sources":["../../src/local-harness/forge-play.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qCAAqC,EAGrC,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,uCAAuC,EACxC,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,iCAAiC,2BAA2B,CAAC;AAE1E,eAAO,MAAM,gCAAgC;;;CAGnC,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;;;;;;;CAS9B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;CAS5B,CAAC;AAEX,eAAO,MAAM,iCAAiC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAS/E,CAAC;AAEF,eAAO,MAAM,mCAAmC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAStE,CAAC;AAEF,eAAO,MAAM,0CAA0C,aAKrD,CAAC;AAEH,eAAO,MAAM,yCAAyC,+BAA+B,CAAC;AACtF,eAAO,MAAM,sCAAsC,wCAAwC,CAAC;AAC5F,eAAO,MAAM,mCAAmC,iCAAiC,CAAC;AAElF,wBAAgB,gCAAgC,IAAI,0BAA0B,CAK7E;AAED,wBAAgB,qCAAqC,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGnF;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAInG;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,IAAI,CAAC,2BAA2B,EAAE,QAAQ,CAAC,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACpC,IAAI,CAcN;AAED,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,uCAAuC,GAC/C,MAAM,IAAI,CAkEZ;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,qCAAqC,GAC7C,2BAA2B,CAqN7B"}
1
+ {"version":3,"file":"forge-play.d.ts","sourceRoot":"","sources":["../../src/local-harness/forge-play.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,qCAAqC,EACrC,iCAAiC,EACjC,wCAAwC,EAIxC,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,uCAAuC,EACxC,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,iCAAiC,2BAA2B,CAAC;AAE1E,eAAO,MAAM,gCAAgC;;;CAGnC,CAAC;AAEX,eAAO,MAAM,2BAA2B;;;;;;;;;;;CAW9B,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;;;;;;CAW5B,CAAC;AAEX,eAAO,MAAM,iCAAiC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAW/E,CAAC;AAEF,eAAO,MAAM,mCAAmC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAWtE,CAAC;AAEF,eAAO,MAAM,0CAA0C,aAKrD,CAAC;AAEH,eAAO,MAAM,oCAAoC,aAG/C,CAAC;AAEH,eAAO,MAAM,yCAAyC,+BAA+B,CAAC;AACtF,eAAO,MAAM,sCAAsC,wCAAwC,CAAC;AAC5F,eAAO,MAAM,mCAAmC,iCAAiC,CAAC;AAElF,wBAAgB,gCAAgC,IAAI,0BAA0B,CAK7E;AAED,wBAAgB,qCAAqC,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAGnF;AAED,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAInG;AAED,wBAAgB,4CAA4C,CAC1D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,wCAAwC,CAK1C;AAED,wBAAgB,0CAA0C,CACxD,SAAS,EAAE,iCAAiC,GAC3C,MAAM,CAIR;AAED,wBAAgB,0BAA0B,CACxC,UAAU,EAAE,IAAI,CAAC,2BAA2B,EAAE,QAAQ,CAAC,EACvD,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACpC,IAAI,CAcN;AAQD,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,uCAAuC,GAC/C,MAAM,IAAI,CAkEZ;AAED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,qCAAqC,GAC7C,2BAA2B,CAsQ7B"}