@dxos/plugin-chess 0.8.4-main.4a85c3132b → 0.8.4-main.51f1e5ca51

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 (199) hide show
  1. package/dist/lib/browser/blueprints/index.mjs +37 -5
  2. package/dist/lib/browser/blueprints/index.mjs.map +4 -4
  3. package/dist/lib/browser/chunk-2DFOUJBD.mjs +28 -0
  4. package/dist/lib/browser/chunk-2DFOUJBD.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-66H3V2YV.mjs → chunk-IN3LZ2OO.mjs} +9 -11
  6. package/dist/lib/browser/chunk-IN3LZ2OO.mjs.map +7 -0
  7. package/dist/lib/browser/chunk-OBKYFOJA.mjs +110 -0
  8. package/dist/lib/browser/chunk-OBKYFOJA.mjs.map +7 -0
  9. package/dist/lib/browser/cli/index.mjs +15 -10
  10. package/dist/lib/browser/cli/index.mjs.map +3 -3
  11. package/dist/lib/browser/create-2ME3FNBX.mjs +24 -0
  12. package/dist/lib/browser/create-2ME3FNBX.mjs.map +7 -0
  13. package/dist/lib/browser/index.mjs +312 -64
  14. package/dist/lib/browser/index.mjs.map +4 -4
  15. package/dist/lib/browser/meta.json +1 -1
  16. package/dist/lib/browser/move-TTMIPD5J.mjs +36 -0
  17. package/dist/lib/browser/move-TTMIPD5J.mjs.map +7 -0
  18. package/dist/lib/browser/operations/index.mjs +19 -0
  19. package/dist/lib/browser/play-GHXPV2T2.mjs +45 -0
  20. package/dist/lib/browser/play-GHXPV2T2.mjs.map +7 -0
  21. package/dist/lib/browser/print-RNAGAOM7.mjs +30 -0
  22. package/dist/lib/browser/print-RNAGAOM7.mjs.map +7 -0
  23. package/dist/lib/browser/translations.mjs +38 -0
  24. package/dist/lib/browser/translations.mjs.map +7 -0
  25. package/dist/lib/browser/types/index.mjs +1 -1
  26. package/dist/lib/node-esm/blueprints/index.mjs +37 -5
  27. package/dist/lib/node-esm/blueprints/index.mjs.map +4 -4
  28. package/dist/lib/node-esm/chunk-G2EHRXHX.mjs +111 -0
  29. package/dist/lib/node-esm/chunk-G2EHRXHX.mjs.map +7 -0
  30. package/dist/lib/node-esm/{chunk-OUNGNJFP.mjs → chunk-OHBKSL2Q.mjs} +9 -11
  31. package/dist/lib/node-esm/chunk-OHBKSL2Q.mjs.map +7 -0
  32. package/dist/lib/node-esm/chunk-V4FN2DZR.mjs +29 -0
  33. package/dist/lib/node-esm/chunk-V4FN2DZR.mjs.map +7 -0
  34. package/dist/lib/node-esm/cli/index.mjs +15 -10
  35. package/dist/lib/node-esm/cli/index.mjs.map +3 -3
  36. package/dist/lib/node-esm/create-CC2P7GPT.mjs +25 -0
  37. package/dist/lib/node-esm/create-CC2P7GPT.mjs.map +7 -0
  38. package/dist/lib/node-esm/index.mjs +312 -64
  39. package/dist/lib/node-esm/index.mjs.map +4 -4
  40. package/dist/lib/node-esm/meta.json +1 -1
  41. package/dist/lib/node-esm/move-CYHXWHHM.mjs +37 -0
  42. package/dist/lib/node-esm/move-CYHXWHHM.mjs.map +7 -0
  43. package/dist/lib/node-esm/operations/index.mjs +20 -0
  44. package/dist/lib/node-esm/play-KTNK2PBL.mjs +46 -0
  45. package/dist/lib/node-esm/play-KTNK2PBL.mjs.map +7 -0
  46. package/dist/lib/node-esm/print-P23VKVNU.mjs +31 -0
  47. package/dist/lib/node-esm/print-P23VKVNU.mjs.map +7 -0
  48. package/dist/lib/node-esm/translations.mjs +39 -0
  49. package/dist/lib/node-esm/translations.mjs.map +7 -0
  50. package/dist/lib/node-esm/types/index.mjs +1 -1
  51. package/dist/types/src/ChessPlugin.d.ts.map +1 -1
  52. package/dist/types/src/ChessPlugin.test.d.ts +2 -0
  53. package/dist/types/src/ChessPlugin.test.d.ts.map +1 -0
  54. package/dist/types/src/blueprints/chess-blueprint.d.ts +2 -2
  55. package/dist/types/src/blueprints/chess-blueprint.d.ts.map +1 -1
  56. package/dist/types/src/blueprints/index.d.ts +1 -1
  57. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  58. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -0
  59. package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -0
  60. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  61. package/dist/types/src/capabilities/index.d.ts +5 -2
  62. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  63. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  64. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  65. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  66. package/dist/types/src/cli/plugin.d.ts.map +1 -1
  67. package/dist/types/src/components/Chessboard/Chessboard.d.ts +6 -2
  68. package/dist/types/src/components/Chessboard/Chessboard.d.ts.map +1 -1
  69. package/dist/types/src/components/Chessboard/Chessboard.stories.d.ts +65 -0
  70. package/dist/types/src/components/Chessboard/Chessboard.stories.d.ts.map +1 -0
  71. package/dist/types/src/components/Chessboard/Info.d.ts +4 -5
  72. package/dist/types/src/components/Chessboard/Info.d.ts.map +1 -1
  73. package/dist/types/src/components/Chessboard/types.d.ts +1 -1
  74. package/dist/types/src/components/Chessboard/types.d.ts.map +1 -1
  75. package/dist/types/src/containers/ChessArticle/ChessArticle.d.ts +4 -4
  76. package/dist/types/src/containers/ChessArticle/ChessArticle.d.ts.map +1 -1
  77. package/dist/types/src/containers/ChessArticle/ChessArticle.stories.d.ts +42 -24
  78. package/dist/types/src/containers/ChessArticle/ChessArticle.stories.d.ts.map +1 -1
  79. package/dist/types/src/containers/ChessArticle/index.d.ts +1 -2
  80. package/dist/types/src/containers/ChessArticle/index.d.ts.map +1 -1
  81. package/dist/types/src/containers/ChessCard/ChessCard.d.ts +3 -3
  82. package/dist/types/src/containers/ChessCard/ChessCard.d.ts.map +1 -1
  83. package/dist/types/src/containers/ChessCard/ChessCard.stories.d.ts.map +1 -1
  84. package/dist/types/src/containers/ChessCard/index.d.ts +1 -2
  85. package/dist/types/src/containers/ChessCard/index.d.ts.map +1 -1
  86. package/dist/types/src/index.d.ts +0 -3
  87. package/dist/types/src/index.d.ts.map +1 -1
  88. package/dist/types/src/operations/create.d.ts +5 -0
  89. package/dist/types/src/operations/create.d.ts.map +1 -0
  90. package/dist/types/src/operations/definitions.d.ts +51 -0
  91. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  92. package/dist/types/src/operations/index.d.ts +4 -0
  93. package/dist/types/src/operations/index.d.ts.map +1 -0
  94. package/dist/types/src/operations/move.d.ts +5 -0
  95. package/dist/types/src/operations/move.d.ts.map +1 -0
  96. package/dist/types/src/operations/play.d.ts +5 -0
  97. package/dist/types/src/operations/play.d.ts.map +1 -0
  98. package/dist/types/src/operations/print.d.ts +5 -0
  99. package/dist/types/src/operations/print.d.ts.map +1 -0
  100. package/dist/types/src/translations.d.ts +40 -23
  101. package/dist/types/src/translations.d.ts.map +1 -1
  102. package/dist/types/src/types/Chess.d.ts.map +1 -1
  103. package/dist/types/tsconfig.tsbuildinfo +1 -1
  104. package/package.json +56 -42
  105. package/src/ChessPlugin.test.ts +51 -0
  106. package/src/ChessPlugin.tsx +22 -9
  107. package/src/blueprints/chess-blueprint.ts +6 -8
  108. package/src/blueprints/index.ts +1 -1
  109. package/src/capabilities/{artifact-definition/artifact-definition.ts → artifact-definition.ts} +6 -6
  110. package/src/capabilities/{blueprint-definition/blueprint-definition.ts → blueprint-definition.ts} +1 -1
  111. package/src/capabilities/index.ts +9 -2
  112. package/src/capabilities/operation-handler.ts +14 -0
  113. package/src/capabilities/react-surface.tsx +35 -0
  114. package/src/cli/plugin.ts +14 -4
  115. package/src/components/Chessboard/Chessboard.stories.tsx +94 -0
  116. package/src/components/Chessboard/Chessboard.tsx +3 -9
  117. package/src/components/Chessboard/Info.tsx +21 -14
  118. package/src/components/Chessboard/types.ts +1 -1
  119. package/src/containers/ChessArticle/ChessArticle.stories.tsx +5 -5
  120. package/src/containers/ChessArticle/ChessArticle.tsx +18 -17
  121. package/src/containers/ChessArticle/index.ts +1 -3
  122. package/src/containers/ChessCard/ChessCard.stories.tsx +4 -4
  123. package/src/containers/ChessCard/ChessCard.tsx +4 -4
  124. package/src/containers/ChessCard/index.ts +1 -3
  125. package/src/index.ts +0 -3
  126. package/src/meta.ts +1 -1
  127. package/src/operations/create.ts +21 -0
  128. package/src/operations/definitions.ts +109 -0
  129. package/src/operations/index.ts +16 -0
  130. package/src/operations/move.ts +36 -0
  131. package/src/operations/play.ts +45 -0
  132. package/src/operations/print.ts +28 -0
  133. package/src/translations.ts +21 -20
  134. package/src/types/Chess.ts +7 -3
  135. package/dist/lib/browser/ChessArticle-RI2DYAO4.mjs +0 -59
  136. package/dist/lib/browser/ChessArticle-RI2DYAO4.mjs.map +0 -7
  137. package/dist/lib/browser/ChessCard-AUMESHHE.mjs +0 -21
  138. package/dist/lib/browser/ChessCard-AUMESHHE.mjs.map +0 -7
  139. package/dist/lib/browser/blueprint-definition-RLA7PQBB.mjs +0 -18
  140. package/dist/lib/browser/blueprint-definition-RLA7PQBB.mjs.map +0 -7
  141. package/dist/lib/browser/chunk-66H3V2YV.mjs.map +0 -7
  142. package/dist/lib/browser/chunk-AWDLDU43.mjs +0 -231
  143. package/dist/lib/browser/chunk-AWDLDU43.mjs.map +0 -7
  144. package/dist/lib/browser/chunk-H3NUMCQ6.mjs +0 -21
  145. package/dist/lib/browser/chunk-H3NUMCQ6.mjs.map +0 -7
  146. package/dist/lib/browser/chunk-KE4FN77G.mjs +0 -276
  147. package/dist/lib/browser/chunk-KE4FN77G.mjs.map +0 -7
  148. package/dist/lib/browser/chunk-WYUTI2K4.mjs +0 -1
  149. package/dist/lib/browser/react-surface-7KUFGD7C.mjs +0 -50
  150. package/dist/lib/browser/react-surface-7KUFGD7C.mjs.map +0 -7
  151. package/dist/lib/node-esm/ChessArticle-6QNVYEZV.mjs +0 -60
  152. package/dist/lib/node-esm/ChessArticle-6QNVYEZV.mjs.map +0 -7
  153. package/dist/lib/node-esm/ChessCard-QK3ZMYLT.mjs +0 -22
  154. package/dist/lib/node-esm/ChessCard-QK3ZMYLT.mjs.map +0 -7
  155. package/dist/lib/node-esm/blueprint-definition-A2FFH3Z2.mjs +0 -19
  156. package/dist/lib/node-esm/blueprint-definition-A2FFH3Z2.mjs.map +0 -7
  157. package/dist/lib/node-esm/chunk-7XDEO6IJ.mjs +0 -2
  158. package/dist/lib/node-esm/chunk-F5OMIM4F.mjs +0 -23
  159. package/dist/lib/node-esm/chunk-F5OMIM4F.mjs.map +0 -7
  160. package/dist/lib/node-esm/chunk-OUNGNJFP.mjs.map +0 -7
  161. package/dist/lib/node-esm/chunk-R7FXSQ2P.mjs +0 -232
  162. package/dist/lib/node-esm/chunk-R7FXSQ2P.mjs.map +0 -7
  163. package/dist/lib/node-esm/chunk-RNPP75JE.mjs +0 -277
  164. package/dist/lib/node-esm/chunk-RNPP75JE.mjs.map +0 -7
  165. package/dist/lib/node-esm/react-surface-U3HGYR5T.mjs +0 -51
  166. package/dist/lib/node-esm/react-surface-U3HGYR5T.mjs.map +0 -7
  167. package/dist/types/src/blueprints/functions/create.d.ts +0 -15
  168. package/dist/types/src/blueprints/functions/create.d.ts.map +0 -1
  169. package/dist/types/src/blueprints/functions/index.d.ts +0 -56
  170. package/dist/types/src/blueprints/functions/index.d.ts.map +0 -1
  171. package/dist/types/src/blueprints/functions/move.d.ts +0 -16
  172. package/dist/types/src/blueprints/functions/move.d.ts.map +0 -1
  173. package/dist/types/src/blueprints/functions/play.d.ts +0 -17
  174. package/dist/types/src/blueprints/functions/play.d.ts.map +0 -1
  175. package/dist/types/src/blueprints/functions/print.d.ts +0 -8
  176. package/dist/types/src/blueprints/functions/print.d.ts.map +0 -1
  177. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +0 -1
  178. package/dist/types/src/capabilities/artifact-definition/index.d.ts +0 -3
  179. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +0 -1
  180. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +0 -6
  181. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +0 -1
  182. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +0 -3
  183. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +0 -1
  184. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  185. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  186. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  187. package/src/blueprints/functions/create.ts +0 -38
  188. package/src/blueprints/functions/index.ts +0 -17
  189. package/src/blueprints/functions/move.ts +0 -48
  190. package/src/blueprints/functions/play.ts +0 -58
  191. package/src/blueprints/functions/print.ts +0 -42
  192. package/src/capabilities/artifact-definition/index.ts +0 -7
  193. package/src/capabilities/blueprint-definition/index.ts +0 -7
  194. package/src/capabilities/react-surface/index.ts +0 -7
  195. package/src/capabilities/react-surface/react-surface.tsx +0 -33
  196. /package/dist/lib/browser/{chunk-WYUTI2K4.mjs.map → operations/index.mjs.map} +0 -0
  197. /package/dist/lib/node-esm/{chunk-7XDEO6IJ.mjs.map → operations/index.mjs.map} +0 -0
  198. /package/dist/types/src/capabilities/{artifact-definition/artifact-definition.d.ts → artifact-definition.d.ts} +0 -0
  199. /package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +0 -0
@@ -1,11 +1,43 @@
1
1
  import {
2
- chess_blueprint_default,
3
- functions_exports
4
- } from "../chunk-AWDLDU43.mjs";
5
- import "../chunk-66H3V2YV.mjs";
2
+ operations_exports
3
+ } from "../chunk-2DFOUJBD.mjs";
4
+ import "../chunk-OBKYFOJA.mjs";
5
+ import "../chunk-IN3LZ2OO.mjs";
6
6
  import "../chunk-J5LGTIGS.mjs";
7
+
8
+ // src/blueprints/chess-blueprint.ts
9
+ import { Blueprint, Template } from "@dxos/compute";
10
+ import { trim } from "@dxos/util";
11
+ import { Create, Move, Play, Print } from "#operations";
12
+ var BLUEPRINT_KEY = "org.dxos.blueprint.chess";
13
+ var operations = [
14
+ Create,
15
+ Move,
16
+ Play,
17
+ Print
18
+ ];
19
+ var make = () => Blueprint.make({
20
+ key: BLUEPRINT_KEY,
21
+ name: "Chess",
22
+ tools: Blueprint.toolDefinitions({
23
+ operations
24
+ }),
25
+ instructions: Template.make({
26
+ source: trim`
27
+ You are an expert chess player.
28
+ To analyze a game you can access the "pgn" property by loading the context object that represents the current game.
29
+ You could suggest a good next move or offer to play a move.
30
+ Don't actually make a move unless you are asked to.
31
+ `
32
+ })
33
+ });
34
+ var blueprint = {
35
+ key: BLUEPRINT_KEY,
36
+ make
37
+ };
38
+ var chess_blueprint_default = blueprint;
7
39
  export {
8
40
  chess_blueprint_default as ChessBlueprint,
9
- functions_exports as ChessFunctions
41
+ operations_exports as ChessFunctions
10
42
  };
11
43
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
3
+ "sources": ["../../../../src/blueprints/chess-blueprint.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Blueprint, Template } from '@dxos/compute';\nimport { trim } from '@dxos/util';\n\nimport { Create, Move, Play, Print } from '#operations';\n\nconst BLUEPRINT_KEY = 'org.dxos.blueprint.chess';\n\nconst operations = [Create, Move, Play, Print];\n\nconst make = () =>\n Blueprint.make({\n key: BLUEPRINT_KEY,\n name: 'Chess',\n tools: Blueprint.toolDefinitions({ operations }),\n instructions: Template.make({\n source: trim`\n You are an expert chess player.\n To analyze a game you can access the \"pgn\" property by loading the context object that represents the current game.\n You could suggest a good next move or offer to play a move.\n Don't actually make a move unless you are asked to.\n `,\n }),\n });\n\nconst blueprint: Blueprint.Definition = {\n key: BLUEPRINT_KEY,\n make,\n};\n\nexport default blueprint;\n"],
5
+ "mappings": ";;;;;;;;AAIA,SAASA,WAAWC,gBAAgB;AACpC,SAASC,YAAY;AAErB,SAASC,QAAQC,MAAMC,MAAMC,aAAa;AAE1C,IAAMC,gBAAgB;AAEtB,IAAMC,aAAa;EAACL;EAAQC;EAAMC;EAAMC;;AAExC,IAAMG,OAAO,MACXT,UAAUS,KAAK;EACbC,KAAKH;EACLI,MAAM;EACNC,OAAOZ,UAAUa,gBAAgB;IAAEL;EAAW,CAAA;EAC9CM,cAAcb,SAASQ,KAAK;IAC1BM,QAAQb;;;;;;EAMV,CAAA;AACF,CAAA;AAEF,IAAMc,YAAkC;EACtCN,KAAKH;EACLE;AACF;AAEA,IAAA,0BAAeO;",
6
+ "names": ["Blueprint", "Template", "trim", "Create", "Move", "Play", "Print", "BLUEPRINT_KEY", "operations", "make", "key", "name", "tools", "toolDefinitions", "instructions", "source", "blueprint"]
7
7
  }
@@ -0,0 +1,28 @@
1
+ import {
2
+ Create,
3
+ Move,
4
+ Play,
5
+ Print
6
+ } from "./chunk-OBKYFOJA.mjs";
7
+ import {
8
+ __export
9
+ } from "./chunk-J5LGTIGS.mjs";
10
+
11
+ // src/operations/index.ts
12
+ var operations_exports = {};
13
+ __export(operations_exports, {
14
+ ChessHandlers: () => ChessHandlers,
15
+ Create: () => Create,
16
+ Move: () => Move,
17
+ Play: () => Play,
18
+ Print: () => Print
19
+ });
20
+ import { OperationHandlerSet } from "@dxos/compute";
21
+ var Handlers = OperationHandlerSet.lazy(() => import("./create-2ME3FNBX.mjs"), () => import("./move-TTMIPD5J.mjs"), () => import("./play-GHXPV2T2.mjs"), () => import("./print-RNAGAOM7.mjs"));
22
+ var ChessHandlers = Handlers;
23
+
24
+ export {
25
+ ChessHandlers,
26
+ operations_exports
27
+ };
28
+ //# sourceMappingURL=chunk-2DFOUJBD.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { OperationHandlerSet } from '@dxos/compute';\n\nconst Handlers = OperationHandlerSet.lazy(\n () => import('./create'),\n () => import('./move'),\n () => import('./play'),\n () => import('./print'),\n);\n\nexport { Create, Move, Play, Print } from './definitions';\n\nexport const ChessHandlers = Handlers;\n"],
5
+ "mappings": ";;;;;;;;;;;AAAA;;;;;;;;AAIA,SAASA,2BAA2B;AAEpC,IAAMC,WAAWD,oBAAoBE,KACnC,MAAM,OAAO,uBAAA,GACb,MAAM,OAAO,qBAAA,GACb,MAAM,OAAO,qBAAA,GACb,MAAM,OAAO,sBAAA,CAAA;AAKR,IAAMC,gBAAgBF;",
6
+ "names": ["OperationHandlerSet", "Handlers", "lazy", "ChessHandlers"]
7
+ }
@@ -10,7 +10,7 @@ __export(Chess_exports, {
10
10
  });
11
11
  import { Chess as ChessJS } from "chess.js";
12
12
  import * as Schema from "effect/Schema";
13
- import { Obj, Type } from "@dxos/echo";
13
+ import { Annotation, Obj, Type } from "@dxos/echo";
14
14
  import { FormInputAnnotation, LabelAnnotation } from "@dxos/echo/internal";
15
15
  import { log } from "@dxos/log";
16
16
  var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-chess/src/types/Chess.ts";
@@ -31,23 +31,21 @@ var Game = Schema.Struct({
31
31
  description: "Forsyth-Edwards Notation."
32
32
  }).pipe(FormInputAnnotation.set(false), Schema.optional)
33
33
  }).pipe(Type.object({
34
- typename: "dxos.org/type/Chess",
35
- version: "0.2.0"
34
+ typename: "org.dxos.type.chess",
35
+ version: "0.1.0"
36
36
  }), LabelAnnotation.set([
37
37
  "name"
38
- ]));
38
+ ]), Annotation.IconAnnotation.set({
39
+ icon: "ph--shield-chevron--regular",
40
+ hue: "amber"
41
+ }));
39
42
  var make = ({ name, pgn, fen } = {}) => {
40
43
  const chess = new ChessJS();
41
44
  if (pgn) {
42
45
  try {
43
46
  chess.loadPgn(pgn);
44
47
  } catch {
45
- log.warn(pgn, void 0, {
46
- F: __dxlog_file,
47
- L: 48,
48
- S: void 0,
49
- C: (f, a) => f(...a)
50
- });
48
+ log.warn(pgn, void 0, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 40, S: void 0 });
51
49
  }
52
50
  }
53
51
  return Obj.make(Game, {
@@ -61,4 +59,4 @@ var make = ({ name, pgn, fen } = {}) => {
61
59
  export {
62
60
  Chess_exports
63
61
  };
64
- //# sourceMappingURL=chunk-66H3V2YV.mjs.map
62
+ //# sourceMappingURL=chunk-IN3LZ2OO.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types/Chess.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Chess as ChessJS } from 'chess.js';\nimport * as Schema from 'effect/Schema';\n\nimport { Annotation, Obj, Type } from '@dxos/echo';\nimport { FormInputAnnotation, LabelAnnotation } from '@dxos/echo/internal';\nimport { log } from '@dxos/log';\n\nexport const Game = Schema.Struct({\n name: Schema.optional(Schema.String),\n players: Schema.Struct({\n white: Schema.optional(\n Schema.String.annotations({\n description: 'DID of white player',\n }),\n ),\n black: Schema.optional(\n Schema.String.annotations({\n description: 'DID of black player',\n }),\n ),\n }).pipe(FormInputAnnotation.set(false), Schema.optional),\n pgn: Schema.String.annotations({\n description: 'Portable Game Notation.',\n }).pipe(FormInputAnnotation.set(false), Schema.optional),\n fen: Schema.String.annotations({\n description: 'Forsyth-Edwards Notation.',\n }).pipe(FormInputAnnotation.set(false), Schema.optional),\n}).pipe(\n Type.object({\n typename: 'org.dxos.type.chess',\n version: '0.1.0',\n }),\n LabelAnnotation.set(['name']),\n Annotation.IconAnnotation.set({\n icon: 'ph--shield-chevron--regular',\n hue: 'amber',\n }),\n);\n\nexport interface Game extends Schema.Schema.Type<typeof Game> {}\n\nexport const make = ({ name, pgn, fen }: { name?: string; pgn?: string; fen?: string } = {}) => {\n const chess = new ChessJS();\n if (pgn) {\n try {\n chess.loadPgn(pgn);\n } catch {\n log.warn(pgn);\n }\n }\n\n return Obj.make(Game, {\n name,\n pgn,\n fen,\n players: {},\n });\n};\n"],
5
+ "mappings": ";;;;;AAAA;;;;;AAIA,SAASA,SAASC,eAAe;AACjC,YAAYC,YAAY;AAExB,SAASC,YAAYC,KAAKC,YAAY;AACtC,SAASC,qBAAqBC,uBAAuB;AACrD,SAASC,WAAW;AAEpB,IAAA,eAAaC;AAEXC,IAASR,OAAc,cAAA;QACdA,gBACLA,aAAOS;WACLC,cAAa;IACf,OAAA,gBAAA,cAAA,YAAA;MAEFC,aAAcC;;IAGZ,OAAA,gBAAA,cAAA,YAAA;MAEIR,aAAAA;IACRS,CAAKb,CAAAA;UACHU,oBAAa,IAAA,KAAA,GAAA,eAAA;EACf,KAAQN,cAAAA,YAAuB;IAC/BU,aAAYL;UACVC,oBAAa,IAAA,KAAA,GAAA,eAAA;EACf,KAAQN,cAAAA,YAAuB;IAE/BD,aAAY;EACVY,CAAAA,EAAAA,KAAAA,oBAAU,IAAA,KAAA,GAAA,eAAA;QACVC,KAAS,OAAA;EAEXX,UAAAA;EAAqB,SAAA;CAAO,GAC5BJ,gBAAWgB,IAAAA;EACTC;IACAC,WAAK,eAAA,IAAA;EAEP,MAAA;EAIF,KAAO;;AAEL,IAAS,OAAA,CAAA,EAAA,MAAA,KAAA,IAAA,IAAA,CAAA,MAAA;QACP,QAAI,IAAA,QAAA;WACFC;AACF,QAAE;AACAd,YAAIe,QAAKR,GAAAA;IACX,QAAA;AACF,UAAA,KAAA,KAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,IAAA,GAAA,OAAA,CAAA;IAEA;;SAEEA,IAAAA,KAAAA,MAAAA;IACAC;IACAN;IACF;IACA,SAAA,CAAA;;;",
6
+ "names": ["Chess", "ChessJS", "Schema", "Annotation", "Obj", "Type", "FormInputAnnotation", "LabelAnnotation", "log", "Game", "players", "String", "description", "black", "optional", "pgn", "fen", "typename", "version", "IconAnnotation", "icon", "hue", "chess", "warn"]
7
+ }
@@ -0,0 +1,110 @@
1
+ import {
2
+ Chess_exports
3
+ } from "./chunk-IN3LZ2OO.mjs";
4
+
5
+ // src/operations/definitions.ts
6
+ import * as Schema from "effect/Schema";
7
+ import { Operation } from "@dxos/compute";
8
+ import { Database, Ref } from "@dxos/echo";
9
+ var Create = Operation.make({
10
+ meta: {
11
+ key: "org.dxos.function.chess.create",
12
+ name: "Create Chess",
13
+ description: "Creates a new chess game."
14
+ },
15
+ input: Schema.Struct({
16
+ name: Schema.optional(Schema.String.annotations({
17
+ description: "Name of the game."
18
+ })),
19
+ pgn: Schema.optional(Schema.String.annotations({
20
+ description: "Portable Game Notation."
21
+ })),
22
+ fen: Schema.optional(Schema.String.annotations({
23
+ description: "Forsyth-Edwards Notation."
24
+ }))
25
+ }),
26
+ output: Chess_exports.Game,
27
+ services: [
28
+ Database.Service
29
+ ]
30
+ });
31
+ var Move = Operation.make({
32
+ meta: {
33
+ key: "org.dxos.function.chess.move",
34
+ name: "Move",
35
+ description: "Makes a move in the given chess game."
36
+ },
37
+ input: Schema.Struct({
38
+ game: Ref.Ref(Chess_exports.Game).annotations({
39
+ description: "The ID of the chess object."
40
+ }),
41
+ move: Schema.String.annotations({
42
+ description: "The move to make in the chess game.",
43
+ examples: [
44
+ "e4",
45
+ "Bf3"
46
+ ]
47
+ })
48
+ }),
49
+ output: Schema.Struct({
50
+ pgn: Schema.String.annotations({
51
+ description: "The PGN of the game after the move was played."
52
+ })
53
+ }),
54
+ services: [
55
+ Database.Service
56
+ ]
57
+ });
58
+ var Play = Operation.make({
59
+ meta: {
60
+ key: "org.dxos.function.chess.play",
61
+ name: "Play",
62
+ description: "Uses the chess engine to play the next move."
63
+ },
64
+ input: Schema.Struct({
65
+ game: Ref.Ref(Chess_exports.Game).annotations({
66
+ description: "The ID of the chess object."
67
+ }),
68
+ side: Schema.optional(Schema.Literal("white", "black", "any")).annotations({
69
+ description: "The side to play.",
70
+ defaultValue: "any"
71
+ })
72
+ }),
73
+ output: Schema.Struct({
74
+ pgn: Schema.String.annotations({
75
+ description: "The PGN of the game after the move was played."
76
+ }),
77
+ move: Schema.optional(Schema.String).annotations({
78
+ description: "The move that was played."
79
+ })
80
+ }),
81
+ services: [
82
+ Database.Service
83
+ ]
84
+ });
85
+ var Print = Operation.make({
86
+ meta: {
87
+ key: "org.dxos.function.chess.print",
88
+ name: "Print game",
89
+ description: "Prints the chess game to ASCII."
90
+ },
91
+ input: Schema.Struct({
92
+ pgn: Schema.optional(Schema.String.annotations({
93
+ description: "Portable Game Notation."
94
+ })),
95
+ fen: Schema.optional(Schema.String.annotations({
96
+ description: "Forsyth-Edwards Notation."
97
+ }))
98
+ }),
99
+ output: Schema.Struct({
100
+ ascii: Schema.String
101
+ })
102
+ });
103
+
104
+ export {
105
+ Create,
106
+ Move,
107
+ Play,
108
+ Print
109
+ };
110
+ //# sourceMappingURL=chunk-OBKYFOJA.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/definitions.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Schema from 'effect/Schema';\n\nimport { Operation } from '@dxos/compute';\nimport { Database, Ref } from '@dxos/echo';\n\nimport { Chess } from '../types';\n\nexport const Create = Operation.make({\n meta: {\n key: 'org.dxos.function.chess.create',\n name: 'Create Chess',\n description: 'Creates a new chess game.',\n },\n input: Schema.Struct({\n name: Schema.optional(\n Schema.String.annotations({\n description: 'Name of the game.',\n }),\n ),\n pgn: Schema.optional(\n Schema.String.annotations({\n description: 'Portable Game Notation.',\n }),\n ),\n fen: Schema.optional(\n Schema.String.annotations({\n description: 'Forsyth-Edwards Notation.',\n }),\n ),\n }),\n output: Chess.Game,\n services: [Database.Service],\n});\n\nexport const Move = Operation.make({\n meta: {\n key: 'org.dxos.function.chess.move',\n name: 'Move',\n description: 'Makes a move in the given chess game.',\n },\n input: Schema.Struct({\n game: Ref.Ref(Chess.Game).annotations({\n description: 'The ID of the chess object.',\n }),\n move: Schema.String.annotations({\n description: 'The move to make in the chess game.',\n examples: ['e4', 'Bf3'],\n }),\n }),\n output: Schema.Struct({\n pgn: Schema.String.annotations({\n description: 'The PGN of the game after the move was played.',\n }),\n }),\n services: [Database.Service],\n});\n\nexport const Play = Operation.make({\n meta: {\n key: 'org.dxos.function.chess.play',\n name: 'Play',\n description: 'Uses the chess engine to play the next move.',\n },\n input: Schema.Struct({\n game: Ref.Ref(Chess.Game).annotations({\n description: 'The ID of the chess object.',\n }),\n side: Schema.optional(Schema.Literal('white', 'black', 'any')).annotations({\n description: 'The side to play.',\n defaultValue: 'any',\n }),\n }),\n output: Schema.Struct({\n pgn: Schema.String.annotations({\n description: 'The PGN of the game after the move was played.',\n }),\n move: Schema.optional(Schema.String).annotations({\n description: 'The move that was played.',\n }),\n }),\n services: [Database.Service],\n});\n\nexport const Print = Operation.make({\n meta: {\n key: 'org.dxos.function.chess.print',\n name: 'Print game',\n description: 'Prints the chess game to ASCII.',\n },\n input: Schema.Struct({\n pgn: Schema.optional(\n Schema.String.annotations({\n description: 'Portable Game Notation.',\n }),\n ),\n fen: Schema.optional(\n Schema.String.annotations({\n description: 'Forsyth-Edwards Notation.',\n }),\n ),\n }),\n output: Schema.Struct({\n ascii: Schema.String,\n }),\n});\n"],
5
+ "mappings": ";;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAC1B,SAASC,UAAUC,WAAW;AAIvB,IAAMC,SAASC,UAAUC,KAAK;EACnCC,MAAM;IACJC,KAAK;IACLC,MAAM;IACNC,aAAa;EACf;EACAC,OAAcC,cAAO;IACnBH,MAAaI,gBACJC,cAAOC,YAAY;MACxBL,aAAa;IACf,CAAA,CAAA;IAEFM,KAAYH,gBACHC,cAAOC,YAAY;MACxBL,aAAa;IACf,CAAA,CAAA;IAEFO,KAAYJ,gBACHC,cAAOC,YAAY;MACxBL,aAAa;IACf,CAAA,CAAA;EAEJ,CAAA;EACAQ,QAAQC,cAAMC;EACdC,UAAU;IAACC,SAASC;;AACtB,CAAA;AAEO,IAAMC,OAAOnB,UAAUC,KAAK;EACjCC,MAAM;IACJC,KAAK;IACLC,MAAM;IACNC,aAAa;EACf;EACAC,OAAcC,cAAO;IACnBa,MAAMC,IAAIA,IAAIP,cAAMC,IAAI,EAAEL,YAAY;MACpCL,aAAa;IACf,CAAA;IACAiB,MAAab,cAAOC,YAAY;MAC9BL,aAAa;MACbkB,UAAU;QAAC;QAAM;;IACnB,CAAA;EACF,CAAA;EACAV,QAAeN,cAAO;IACpBI,KAAYF,cAAOC,YAAY;MAC7BL,aAAa;IACf,CAAA;EACF,CAAA;EACAW,UAAU;IAACC,SAASC;;AACtB,CAAA;AAEO,IAAMM,OAAOxB,UAAUC,KAAK;EACjCC,MAAM;IACJC,KAAK;IACLC,MAAM;IACNC,aAAa;EACf;EACAC,OAAcC,cAAO;IACnBa,MAAMC,IAAIA,IAAIP,cAAMC,IAAI,EAAEL,YAAY;MACpCL,aAAa;IACf,CAAA;IACAoB,MAAajB,gBAAgBkB,eAAQ,SAAS,SAAS,KAAA,CAAA,EAAQhB,YAAY;MACzEL,aAAa;MACbsB,cAAc;IAChB,CAAA;EACF,CAAA;EACAd,QAAeN,cAAO;IACpBI,KAAYF,cAAOC,YAAY;MAC7BL,aAAa;IACf,CAAA;IACAiB,MAAad,gBAAgBC,aAAM,EAAEC,YAAY;MAC/CL,aAAa;IACf,CAAA;EACF,CAAA;EACAW,UAAU;IAACC,SAASC;;AACtB,CAAA;AAEO,IAAMU,QAAQ5B,UAAUC,KAAK;EAClCC,MAAM;IACJC,KAAK;IACLC,MAAM;IACNC,aAAa;EACf;EACAC,OAAcC,cAAO;IACnBI,KAAYH,gBACHC,cAAOC,YAAY;MACxBL,aAAa;IACf,CAAA,CAAA;IAEFO,KAAYJ,gBACHC,cAAOC,YAAY;MACxBL,aAAa;IACf,CAAA,CAAA;EAEJ,CAAA;EACAQ,QAAeN,cAAO;IACpBsB,OAAcpB;EAChB,CAAA;AACF,CAAA;",
6
+ "names": ["Schema", "Operation", "Database", "Ref", "Create", "Operation", "make", "meta", "key", "name", "description", "input", "Struct", "optional", "String", "annotations", "pgn", "fen", "output", "Chess", "Game", "services", "Database", "Service", "Move", "game", "Ref", "move", "examples", "Play", "side", "Literal", "defaultValue", "Print", "ascii"]
7
+ }
@@ -1,26 +1,31 @@
1
- import {
2
- Chess_exports
3
- } from "../chunk-66H3V2YV.mjs";
4
- import {
5
- meta
6
- } from "../chunk-H3NUMCQ6.mjs";
7
1
  import "../chunk-J5LGTIGS.mjs";
8
2
 
9
3
  // src/cli/plugin.ts
10
4
  import * as Effect from "effect/Effect";
11
5
  import { Plugin } from "@dxos/app-framework";
12
6
  import { AppPlugin } from "@dxos/app-toolkit";
7
+ import { Operation } from "@dxos/compute";
8
+ import { SpaceOperation } from "@dxos/plugin-space/operations";
9
+ import { meta } from "#meta";
10
+ import { Chess } from "#types";
13
11
  var ChessPlugin = Plugin.define(meta).pipe(AppPlugin.addMetadataModule({
14
12
  metadata: {
15
- id: Chess_exports.Game.typename,
13
+ id: Chess.Game.typename,
16
14
  metadata: {
17
- createObject: (props) => Effect.sync(() => Chess_exports.make(props)),
18
- addToCollectionOnCreate: true
15
+ createObject: (props, options) => Effect.gen(function* () {
16
+ const object = Chess.make(props);
17
+ return yield* Operation.invoke(SpaceOperation.AddObject, {
18
+ object,
19
+ target: options.target,
20
+ hidden: true,
21
+ targetNodeId: options.targetNodeId
22
+ });
23
+ })
19
24
  }
20
25
  }
21
26
  }), AppPlugin.addSchemaModule({
22
27
  schema: [
23
- Chess_exports.Game
28
+ Chess.Game
24
29
  ]
25
30
  }), Plugin.make);
26
31
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/cli/plugin.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\nimport { type CreateObject } from '@dxos/plugin-space/types';\n\nimport { meta } from '../meta';\nimport { Chess } from '../types';\n\n// TODO(wittjosiah): Factor out shared modules.\nexport const ChessPlugin = Plugin.define(meta).pipe(\n AppPlugin.addMetadataModule({\n metadata: {\n id: Chess.Game.typename,\n metadata: {\n createObject: ((props) => Effect.sync(() => Chess.make(props))) satisfies CreateObject,\n addToCollectionOnCreate: true,\n },\n },\n }),\n AppPlugin.addSchemaModule({ schema: [Chess.Game] }),\n Plugin.make,\n);\n"],
5
- "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAc;AACvB,SAASC,iBAAiB;AAOnB,IAAMC,cAAcC,OAAOC,OAAOC,IAAAA,EAAMC,KAC7CC,UAAUC,kBAAkB;EAC1BC,UAAU;IACRC,IAAIC,cAAMC,KAAKC;IACfJ,UAAU;MACRK,cAAe,CAACC,UAAiBC,YAAK,MAAML,cAAMM,KAAKF,KAAAA,CAAAA;MACvDG,yBAAyB;IAC3B;EACF;AACF,CAAA,GACAX,UAAUY,gBAAgB;EAAEC,QAAQ;IAACT,cAAMC;;AAAM,CAAA,GACjDT,OAAOc,IAAI;",
6
- "names": ["Effect", "Plugin", "AppPlugin", "ChessPlugin", "Plugin", "define", "meta", "pipe", "AppPlugin", "addMetadataModule", "metadata", "id", "Chess", "Game", "typename", "createObject", "props", "sync", "make", "addToCollectionOnCreate", "addSchemaModule", "schema"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\nimport { Operation } from '@dxos/compute';\nimport { SpaceOperation } from '@dxos/plugin-space/operations';\nimport { type CreateObject } from '@dxos/plugin-space/types';\n\nimport { meta } from '#meta';\nimport { Chess } from '#types';\n\n// TODO(wittjosiah): Factor out shared modules.\nexport const ChessPlugin = Plugin.define(meta).pipe(\n AppPlugin.addMetadataModule({\n metadata: {\n id: Chess.Game.typename,\n metadata: {\n createObject: ((props, options) =>\n Effect.gen(function* () {\n const object = Chess.make(props);\n return yield* Operation.invoke(SpaceOperation.AddObject, {\n object,\n target: options.target,\n hidden: true,\n targetNodeId: options.targetNodeId,\n });\n })) satisfies CreateObject,\n },\n },\n }),\n AppPlugin.addSchemaModule({ schema: [Chess.Game] }),\n Plugin.make,\n);\n"],
5
+ "mappings": ";;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAc;AACvB,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,sBAAsB;AAG/B,SAASC,YAAY;AACrB,SAASC,aAAa;AAGf,IAAMC,cAAcN,OAAOO,OAAOH,IAAAA,EAAMI,KAC7CP,UAAUQ,kBAAkB;EAC1BC,UAAU;IACRC,IAAIN,MAAMO,KAAKC;IACfH,UAAU;MACRI,cAAe,CAACC,OAAOC,YACdC,WAAI,aAAA;AACT,cAAMC,SAASb,MAAMc,KAAKJ,KAAAA;AAC1B,eAAO,OAAOb,UAAUkB,OAAOjB,eAAekB,WAAW;UACvDH;UACAI,QAAQN,QAAQM;UAChBC,QAAQ;UACRC,cAAcR,QAAQQ;QACxB,CAAA;MACF,CAAA;IACJ;EACF;AACF,CAAA,GACAvB,UAAUwB,gBAAgB;EAAEC,QAAQ;IAACrB,MAAMO;;AAAM,CAAA,GACjDZ,OAAOmB,IAAI;",
6
+ "names": ["Effect", "Plugin", "AppPlugin", "Operation", "SpaceOperation", "meta", "Chess", "ChessPlugin", "define", "pipe", "addMetadataModule", "metadata", "id", "Game", "typename", "createObject", "props", "options", "gen", "object", "make", "invoke", "AddObject", "target", "hidden", "targetNodeId", "addSchemaModule", "schema"]
7
7
  }
@@ -0,0 +1,24 @@
1
+ import {
2
+ Create
3
+ } from "./chunk-OBKYFOJA.mjs";
4
+ import {
5
+ Chess_exports
6
+ } from "./chunk-IN3LZ2OO.mjs";
7
+ import "./chunk-J5LGTIGS.mjs";
8
+
9
+ // src/operations/create.ts
10
+ import * as Effect from "effect/Effect";
11
+ import { Operation } from "@dxos/compute";
12
+ import { Database } from "@dxos/echo";
13
+ var handler = Create.pipe(Operation.withHandler(Effect.fn(function* ({ name, pgn, fen }) {
14
+ return yield* Database.add(Chess_exports.make({
15
+ name,
16
+ pgn,
17
+ fen
18
+ }));
19
+ })));
20
+ var create_default = handler;
21
+ export {
22
+ create_default as default
23
+ };
24
+ //# sourceMappingURL=create-2ME3FNBX.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/create.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Operation } from '@dxos/compute';\nimport { Database } from '@dxos/echo';\n\nimport { Chess } from '../types';\nimport { Create } from './definitions';\n\nconst handler: Operation.WithHandler<typeof Create> = Create.pipe(\n Operation.withHandler(\n Effect.fn(function* ({ name, pgn, fen }) {\n return yield* Database.add(Chess.make({ name, pgn, fen }));\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,iBAAiB;AAC1B,SAASC,gBAAgB;AAKzB,IAAMC,UAAgDC,OAAOC,KAC3DC,UAAUC,YACDC,UAAG,WAAW,EAAEC,MAAMC,KAAKC,IAAG,GAAE;AACrC,SAAO,OAAOC,SAASC,IAAIC,cAAMC,KAAK;IAAEN;IAAMC;IAAKC;EAAI,CAAA,CAAA;AACzD,CAAA,CAAA,CAAA;AAIJ,IAAA,iBAAeR;",
6
+ "names": ["Effect", "Operation", "Database", "handler", "Create", "pipe", "Operation", "withHandler", "fn", "name", "pgn", "fen", "Database", "add", "Chess", "make"]
7
+ }