@dxos/plugin-chess 0.7.5-labs.a279d8c → 0.7.5-labs.a8b535d

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 (139) hide show
  1. package/dist/lib/browser/ChessContainer-XERPODLK.mjs +86 -0
  2. package/dist/lib/browser/ChessContainer-XERPODLK.mjs.map +7 -0
  3. package/dist/lib/browser/{artifact-YWAB5JJL.mjs → artifact-definition-D2SD45UX.mjs} +34 -28
  4. package/dist/lib/browser/artifact-definition-D2SD45UX.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-VYBCAEUF.mjs → chunk-NNA3W3LX.mjs} +8 -5
  6. package/dist/lib/browser/{chunk-VYBCAEUF.mjs.map → chunk-NNA3W3LX.mjs.map} +3 -3
  7. package/dist/lib/browser/chunk-R26FYVUS.mjs +8 -0
  8. package/dist/lib/browser/chunk-R26FYVUS.mjs.map +7 -0
  9. package/dist/lib/browser/chunk-VRWXC5L2.mjs +42 -0
  10. package/dist/lib/browser/chunk-VRWXC5L2.mjs.map +7 -0
  11. package/dist/lib/browser/index.mjs +25 -31
  12. package/dist/lib/browser/index.mjs.map +3 -3
  13. package/dist/lib/browser/{intent-resolver-UZRNSQFI.mjs → intent-resolver-KBIH2KYC.mjs} +16 -13
  14. package/dist/lib/browser/intent-resolver-KBIH2KYC.mjs.map +7 -0
  15. package/dist/lib/browser/meta.json +1 -1
  16. package/dist/lib/browser/{react-surface-EP4LXPH7.mjs → react-surface-2PI2KNSU.mjs} +7 -15
  17. package/dist/lib/browser/react-surface-2PI2KNSU.mjs.map +7 -0
  18. package/dist/lib/browser/types/index.mjs +1 -1
  19. package/dist/lib/node/ChessContainer-LEPLNICP.cjs +108 -0
  20. package/dist/lib/node/ChessContainer-LEPLNICP.cjs.map +7 -0
  21. package/dist/lib/node/{artifact-YWL3LBIO.cjs → artifact-definition-YDPYM4NV.cjs} +41 -36
  22. package/dist/lib/node/artifact-definition-YDPYM4NV.cjs.map +7 -0
  23. package/dist/lib/node/{ChessContainer-P4BZ62FN.cjs → chunk-CSRNUKOH.cjs} +38 -16
  24. package/dist/lib/node/chunk-CSRNUKOH.cjs.map +7 -0
  25. package/dist/lib/node/{chunk-6F6WTM5L.cjs → chunk-ITDMCBQQ.cjs} +5 -5
  26. package/dist/lib/node/chunk-ITDMCBQQ.cjs.map +7 -0
  27. package/dist/lib/node/{chunk-J5YKJRP3.cjs → chunk-VXYRI6VA.cjs} +9 -6
  28. package/dist/lib/node/{chunk-J5YKJRP3.cjs.map → chunk-VXYRI6VA.cjs.map} +3 -3
  29. package/dist/lib/node/index.cjs +36 -42
  30. package/dist/lib/node/index.cjs.map +3 -3
  31. package/dist/lib/node/{intent-resolver-AENA6D5K.cjs → intent-resolver-TZFKPQOV.cjs} +19 -16
  32. package/dist/lib/node/intent-resolver-TZFKPQOV.cjs.map +7 -0
  33. package/dist/lib/node/meta.json +1 -1
  34. package/dist/lib/node/{react-surface-JMOSMAIC.cjs → react-surface-OHQIPHSN.cjs} +13 -21
  35. package/dist/lib/node/react-surface-OHQIPHSN.cjs.map +7 -0
  36. package/dist/lib/node/types/index.cjs +5 -5
  37. package/dist/lib/node/types/index.cjs.map +1 -1
  38. package/dist/lib/node-esm/ChessContainer-S76WNBWN.mjs +87 -0
  39. package/dist/lib/node-esm/ChessContainer-S76WNBWN.mjs.map +7 -0
  40. package/dist/lib/node-esm/{artifact-B6IEF7U5.mjs → artifact-definition-LHQK5BBZ.mjs} +34 -28
  41. package/dist/lib/node-esm/artifact-definition-LHQK5BBZ.mjs.map +7 -0
  42. package/dist/lib/node-esm/chunk-6SEDGO5G.mjs +44 -0
  43. package/dist/lib/node-esm/chunk-6SEDGO5G.mjs.map +7 -0
  44. package/dist/lib/node-esm/{chunk-QXDXLFXD.mjs → chunk-B72CIN6T.mjs} +2 -2
  45. package/dist/lib/node-esm/chunk-B72CIN6T.mjs.map +7 -0
  46. package/dist/lib/node-esm/{chunk-TXUWVQWY.mjs → chunk-IP66EHSW.mjs} +8 -5
  47. package/dist/lib/node-esm/{chunk-TXUWVQWY.mjs.map → chunk-IP66EHSW.mjs.map} +3 -3
  48. package/dist/lib/node-esm/index.mjs +25 -31
  49. package/dist/lib/node-esm/index.mjs.map +3 -3
  50. package/dist/lib/node-esm/{intent-resolver-T7NNHOYR.mjs → intent-resolver-WBUS64KC.mjs} +16 -13
  51. package/dist/lib/node-esm/intent-resolver-WBUS64KC.mjs.map +7 -0
  52. package/dist/lib/node-esm/meta.json +1 -1
  53. package/dist/lib/node-esm/{react-surface-ENB7VY45.mjs → react-surface-XX4VFNRS.mjs} +7 -15
  54. package/dist/lib/node-esm/react-surface-XX4VFNRS.mjs.map +7 -0
  55. package/dist/lib/node-esm/types/index.mjs +1 -1
  56. package/dist/types/src/ChessPlugin.d.ts.map +1 -1
  57. package/dist/types/src/capabilities/{artifact.d.ts → artifact-definition.d.ts} +1 -1
  58. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -0
  59. package/dist/types/src/capabilities/index.d.ts +3 -3
  60. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  61. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  62. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  63. package/dist/types/src/components/ChessComponent.d.ts +5 -0
  64. package/dist/types/src/components/ChessComponent.d.ts.map +1 -0
  65. package/dist/types/src/components/ChessContainer.d.ts +4 -4
  66. package/dist/types/src/components/ChessContainer.d.ts.map +1 -1
  67. package/dist/types/src/components/ChessPanel.d.ts +11 -0
  68. package/dist/types/src/components/ChessPanel.d.ts.map +1 -0
  69. package/dist/types/src/components/Chessboard.stories.d.ts +8 -0
  70. package/dist/types/src/components/Chessboard.stories.d.ts.map +1 -0
  71. package/dist/types/src/components/PlayerSelector.d.ts +7 -0
  72. package/dist/types/src/components/PlayerSelector.d.ts.map +1 -0
  73. package/dist/types/src/components/index.d.ts +4 -4
  74. package/dist/types/src/components/index.d.ts.map +1 -1
  75. package/dist/types/src/meta.d.ts +1 -0
  76. package/dist/types/src/meta.d.ts.map +1 -1
  77. package/dist/types/src/types/schema.d.ts +1 -1
  78. package/dist/types/tsconfig.tsbuildinfo +1 -1
  79. package/package.json +22 -24
  80. package/src/ChessPlugin.tsx +21 -21
  81. package/src/capabilities/{artifact.ts → artifact-definition.ts} +19 -13
  82. package/src/capabilities/index.ts +1 -1
  83. package/src/capabilities/intent-resolver.ts +10 -8
  84. package/src/capabilities/react-surface.tsx +3 -12
  85. package/src/components/ChessComponent.tsx +49 -0
  86. package/src/components/ChessContainer.tsx +14 -4
  87. package/src/components/ChessPanel.tsx +67 -0
  88. package/src/components/Chessboard.stories.tsx +39 -0
  89. package/src/components/{Chess.tsx → PlayerSelector.tsx} +2 -50
  90. package/src/components/index.ts +1 -2
  91. package/src/meta.ts +3 -1
  92. package/dist/lib/browser/ChessContainer-G736GS2V.mjs +0 -26
  93. package/dist/lib/browser/ChessContainer-G736GS2V.mjs.map +0 -7
  94. package/dist/lib/browser/artifact-YWAB5JJL.mjs.map +0 -7
  95. package/dist/lib/browser/chunk-JUAC2NNR.mjs +0 -548
  96. package/dist/lib/browser/chunk-JUAC2NNR.mjs.map +0 -7
  97. package/dist/lib/browser/chunk-LAYER2WV.mjs +0 -8
  98. package/dist/lib/browser/chunk-LAYER2WV.mjs.map +0 -7
  99. package/dist/lib/browser/intent-resolver-UZRNSQFI.mjs.map +0 -7
  100. package/dist/lib/browser/react-surface-EP4LXPH7.mjs.map +0 -7
  101. package/dist/lib/node/ChessContainer-P4BZ62FN.cjs.map +0 -7
  102. package/dist/lib/node/artifact-YWL3LBIO.cjs.map +0 -7
  103. package/dist/lib/node/chunk-6F6WTM5L.cjs.map +0 -7
  104. package/dist/lib/node/chunk-HPYER4GF.cjs +0 -574
  105. package/dist/lib/node/chunk-HPYER4GF.cjs.map +0 -7
  106. package/dist/lib/node/intent-resolver-AENA6D5K.cjs.map +0 -7
  107. package/dist/lib/node/react-surface-JMOSMAIC.cjs.map +0 -7
  108. package/dist/lib/node-esm/ChessContainer-2LFJ6RHB.mjs +0 -27
  109. package/dist/lib/node-esm/ChessContainer-2LFJ6RHB.mjs.map +0 -7
  110. package/dist/lib/node-esm/artifact-B6IEF7U5.mjs.map +0 -7
  111. package/dist/lib/node-esm/chunk-OMGVSBVI.mjs +0 -550
  112. package/dist/lib/node-esm/chunk-OMGVSBVI.mjs.map +0 -7
  113. package/dist/lib/node-esm/chunk-QXDXLFXD.mjs.map +0 -7
  114. package/dist/lib/node-esm/intent-resolver-T7NNHOYR.mjs.map +0 -7
  115. package/dist/lib/node-esm/react-surface-ENB7VY45.mjs.map +0 -7
  116. package/dist/types/src/capabilities/artifact.d.ts.map +0 -1
  117. package/dist/types/src/components/Chess.d.ts +0 -9
  118. package/dist/types/src/components/Chess.d.ts.map +0 -1
  119. package/dist/types/src/components/Chessboard/Chessboard.d.ts +0 -37
  120. package/dist/types/src/components/Chessboard/Chessboard.d.ts.map +0 -1
  121. package/dist/types/src/components/Chessboard/Chessboard.stories.d.ts +0 -24
  122. package/dist/types/src/components/Chessboard/Chessboard.stories.d.ts.map +0 -1
  123. package/dist/types/src/components/Chessboard/index.d.ts +0 -2
  124. package/dist/types/src/components/Chessboard/index.d.ts.map +0 -1
  125. package/dist/types/src/components/Chessboard/pieces/custom.d.ts +0 -3
  126. package/dist/types/src/components/Chessboard/pieces/custom.d.ts.map +0 -1
  127. package/dist/types/src/components/Chessboard/pieces/index.d.ts +0 -4
  128. package/dist/types/src/components/Chessboard/pieces/index.d.ts.map +0 -1
  129. package/dist/types/src/components/Chessboard/pieces/phosphor.d.ts +0 -3
  130. package/dist/types/src/components/Chessboard/pieces/phosphor.d.ts.map +0 -1
  131. package/dist/types/src/components/Chessboard/pieces/riohacha.d.ts +0 -3
  132. package/dist/types/src/components/Chessboard/pieces/riohacha.d.ts.map +0 -1
  133. package/src/components/Chessboard/Chessboard.stories.tsx +0 -56
  134. package/src/components/Chessboard/Chessboard.tsx +0 -182
  135. package/src/components/Chessboard/index.ts +0 -5
  136. package/src/components/Chessboard/pieces/custom.tsx +0 -82
  137. package/src/components/Chessboard/pieces/index.ts +0 -7
  138. package/src/components/Chessboard/pieces/phosphor.tsx +0 -71
  139. package/src/components/Chessboard/pieces/riohacha.tsx +0 -166
@@ -0,0 +1,87 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+ import {
3
+ ChessComponent
4
+ } from "./chunk-6SEDGO5G.mjs";
5
+
6
+ // packages/plugins/plugin-chess/src/components/ChessContainer.tsx
7
+ import React2 from "react";
8
+ import { getSpace } from "@dxos/react-client/echo";
9
+ import { StackItem } from "@dxos/react-ui-stack";
10
+
11
+ // packages/plugins/plugin-chess/src/components/PlayerSelector.tsx
12
+ import { CrownCross } from "@phosphor-icons/react";
13
+ import React from "react";
14
+ import { generateName } from "@dxos/display-name";
15
+ import { useMembers } from "@dxos/react-client/echo";
16
+ import { Input, Select, useThemeContext } from "@dxos/react-ui";
17
+ import { getSize, mx } from "@dxos/react-ui-theme";
18
+ var PlayerSelector = ({ space, game }) => {
19
+ const members = useMembers(space.key);
20
+ return /* @__PURE__ */ React.createElement("div", {
21
+ role: "none",
22
+ className: "grid grid-cols-2 gap-8"
23
+ }, /* @__PURE__ */ React.createElement("div", {
24
+ role: "none",
25
+ className: "flex flex-row-reverse items-center gap-2"
26
+ }, /* @__PURE__ */ React.createElement(PlayerSelect, {
27
+ side: "white",
28
+ value: game.playerWhite,
29
+ onValueChange: (player) => game.playerWhite = player,
30
+ members
31
+ })), /* @__PURE__ */ React.createElement("div", {
32
+ role: "none",
33
+ className: "flex flex-row items-center gap-2"
34
+ }, /* @__PURE__ */ React.createElement(PlayerSelect, {
35
+ side: "black",
36
+ value: game.playerBlack,
37
+ onValueChange: (player) => game.playerBlack = player,
38
+ members
39
+ })));
40
+ };
41
+ var PlayerSelect = ({ side, value, onValueChange, members }) => {
42
+ const { themeMode } = useThemeContext();
43
+ const iconFillMode = side === "black" && themeMode === "light" || side === "white" && themeMode === "dark" ? "fill" : void 0;
44
+ return /* @__PURE__ */ React.createElement(Input.Root, null, /* @__PURE__ */ React.createElement(Input.Label, null, /* @__PURE__ */ React.createElement(CrownCross, {
45
+ className: mx(getSize(6)),
46
+ weight: iconFillMode,
47
+ "aria-label": `Chess icon for side ${side}`
48
+ })), /* @__PURE__ */ React.createElement(Select.Root, {
49
+ value,
50
+ onValueChange
51
+ }, /* @__PURE__ */ React.createElement(Select.TriggerButton, {
52
+ placeholder: "Select player"
53
+ }), /* @__PURE__ */ React.createElement(Select.Portal, null, /* @__PURE__ */ React.createElement(Select.Content, null, /* @__PURE__ */ React.createElement(Select.Viewport, null, members.map((member) => {
54
+ const memberKey = member.identity.identityKey.toHex();
55
+ const displayName = member.identity?.profile?.displayName || generateName(memberKey);
56
+ return /* @__PURE__ */ React.createElement(Select.Option, {
57
+ key: memberKey,
58
+ value: memberKey
59
+ }, displayName);
60
+ }))))));
61
+ };
62
+
63
+ // packages/plugins/plugin-chess/src/components/ChessContainer.tsx
64
+ var ChessContainer = ({ game }) => {
65
+ const space = getSpace(game);
66
+ if (!space) {
67
+ return null;
68
+ }
69
+ return /* @__PURE__ */ React2.createElement(StackItem.Content, {
70
+ toolbar: false
71
+ }, /* @__PURE__ */ React2.createElement("div", {
72
+ role: "none",
73
+ className: "grid grid-rows-[60px_1fr_60px] grow overflow-hidden"
74
+ }, /* @__PURE__ */ React2.createElement("div", null), /* @__PURE__ */ React2.createElement("div", {
75
+ className: "flex m-4 overflow-hidden"
76
+ }, /* @__PURE__ */ React2.createElement(ChessComponent, {
77
+ game
78
+ })), /* @__PURE__ */ React2.createElement(PlayerSelector, {
79
+ space,
80
+ game
81
+ })));
82
+ };
83
+ var ChessContainer_default = ChessContainer;
84
+ export {
85
+ ChessContainer_default as default
86
+ };
87
+ //# sourceMappingURL=ChessContainer-S76WNBWN.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/ChessContainer.tsx", "../../../src/components/PlayerSelector.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport React from 'react';\n\nimport { getSpace } from '@dxos/react-client/echo';\nimport { StackItem } from '@dxos/react-ui-stack';\n\nimport { ChessComponent } from './ChessComponent';\nimport { PlayerSelector } from './PlayerSelector';\nimport { type ChessType } from '../types';\n\nconst ChessContainer = ({ game }: { game: ChessType; role?: string }) => {\n const space = getSpace(game);\n if (!space) {\n return null;\n }\n\n return (\n <StackItem.Content toolbar={false}>\n <div role='none' className='grid grid-rows-[60px_1fr_60px] grow overflow-hidden'>\n <div />\n\n <div className='flex m-4 overflow-hidden'>\n <ChessComponent game={game} />\n </div>\n\n <PlayerSelector space={space} game={game} />\n </div>\n </StackItem.Content>\n );\n};\n\nexport default ChessContainer;\n", "//\n// Copyright 2024 DXOS.org\n//\n\nimport { CrownCross } from '@phosphor-icons/react';\nimport React from 'react';\n\nimport { generateName } from '@dxos/display-name';\nimport { useMembers, type Space, type SpaceMember } from '@dxos/react-client/echo';\nimport { Input, Select, useThemeContext } from '@dxos/react-ui';\nimport { getSize, mx } from '@dxos/react-ui-theme';\n\nimport { type ChessType } from '../types';\n\nexport const PlayerSelector = ({ space, game }: { space: Space; game: ChessType }) => {\n const members = useMembers(space.key);\n\n return (\n <div role='none' className='grid grid-cols-2 gap-8'>\n <div role='none' className='flex flex-row-reverse items-center gap-2'>\n <PlayerSelect\n side='white'\n value={game.playerWhite}\n onValueChange={(player) => (game.playerWhite = player)}\n members={members}\n />\n </div>\n <div role='none' className='flex flex-row items-center gap-2'>\n <PlayerSelect\n side='black'\n value={game.playerBlack}\n onValueChange={(player) => (game.playerBlack = player)}\n members={members}\n />\n </div>\n </div>\n );\n};\n\nconst PlayerSelect = ({\n side,\n value,\n onValueChange,\n members,\n}: {\n side: 'white' | 'black';\n value: string | undefined;\n onValueChange: (player: string) => void;\n members: SpaceMember[];\n}) => {\n const { themeMode } = useThemeContext();\n const iconFillMode =\n (side === 'black' && themeMode === 'light') || (side === 'white' && themeMode === 'dark') ? 'fill' : undefined;\n\n return (\n <Input.Root>\n <Input.Label>\n <CrownCross className={mx(getSize(6))} weight={iconFillMode} aria-label={`Chess icon for side ${side}`} />\n </Input.Label>\n <Select.Root value={value} onValueChange={onValueChange}>\n <Select.TriggerButton placeholder={'Select player'} />\n <Select.Portal>\n <Select.Content>\n <Select.Viewport>\n {members.map((member) => {\n const memberKey = member.identity.identityKey.toHex();\n const displayName = member.identity?.profile?.displayName || generateName(memberKey);\n return (\n <Select.Option key={memberKey} value={memberKey}>\n {displayName}\n </Select.Option>\n );\n })}\n </Select.Viewport>\n </Select.Content>\n </Select.Portal>\n </Select.Root>\n </Input.Root>\n );\n};\n"],
5
+ "mappings": ";;;;;;AAIA,OAAOA,YAAW;AAElB,SAASC,gBAAgB;AACzB,SAASC,iBAAiB;;;ACH1B,SAASC,kBAAkB;AAC3B,OAAOC,WAAW;AAElB,SAASC,oBAAoB;AAC7B,SAASC,kBAAgD;AACzD,SAASC,OAAOC,QAAQC,uBAAuB;AAC/C,SAASC,SAASC,UAAU;AAIrB,IAAMC,iBAAiB,CAAC,EAAEC,OAAOC,KAAI,MAAqC;AAC/E,QAAMC,UAAUC,WAAWH,MAAMI,GAAG;AAEpC,SACE,sBAAA,cAACC,OAAAA;IAAIC,MAAK;IAAOC,WAAU;KACzB,sBAAA,cAACF,OAAAA;IAAIC,MAAK;IAAOC,WAAU;KACzB,sBAAA,cAACC,cAAAA;IACCC,MAAK;IACLC,OAAOT,KAAKU;IACZC,eAAe,CAACC,WAAYZ,KAAKU,cAAcE;IAC/CX;OAGJ,sBAAA,cAACG,OAAAA;IAAIC,MAAK;IAAOC,WAAU;KACzB,sBAAA,cAACC,cAAAA;IACCC,MAAK;IACLC,OAAOT,KAAKa;IACZF,eAAe,CAACC,WAAYZ,KAAKa,cAAcD;IAC/CX;;AAKV;AAEA,IAAMM,eAAe,CAAC,EACpBC,MACAC,OACAE,eACAV,QAAO,MAMR;AACC,QAAM,EAAEa,UAAS,IAAKC,gBAAAA;AACtB,QAAMC,eACHR,SAAS,WAAWM,cAAc,WAAaN,SAAS,WAAWM,cAAc,SAAU,SAASG;AAEvG,SACE,sBAAA,cAACC,MAAMC,MAAI,MACT,sBAAA,cAACD,MAAME,OAAK,MACV,sBAAA,cAACC,YAAAA;IAAWf,WAAWgB,GAAGC,QAAQ,CAAA,CAAA;IAAKC,QAAQR;IAAcS,cAAY,uBAAuBjB,IAAAA;OAElG,sBAAA,cAACkB,OAAOP,MAAI;IAACV;IAAcE;KACzB,sBAAA,cAACe,OAAOC,eAAa;IAACC,aAAa;MACnC,sBAAA,cAACF,OAAOG,QAAM,MACZ,sBAAA,cAACH,OAAOI,SAAO,MACb,sBAAA,cAACJ,OAAOK,UAAQ,MACb9B,QAAQ+B,IAAI,CAACC,WAAAA;AACZ,UAAMC,YAAYD,OAAOE,SAASC,YAAYC,MAAK;AACnD,UAAMC,cAAcL,OAAOE,UAAUI,SAASD,eAAeE,aAAaN,SAAAA;AAC1E,WACE,sBAAA,cAACR,OAAOe,QAAM;MAACtC,KAAK+B;MAAWzB,OAAOyB;OACnCI,WAAAA;EAGP,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAOd;;;ADlEA,IAAMI,iBAAiB,CAAC,EAAEC,KAAI,MAAsC;AAClE,QAAMC,QAAQC,SAASF,IAAAA;AACvB,MAAI,CAACC,OAAO;AACV,WAAO;EACT;AAEA,SACE,gBAAAE,OAAA,cAACC,UAAUC,SAAO;IAACC,SAAS;KAC1B,gBAAAH,OAAA,cAACI,OAAAA;IAAIC,MAAK;IAAOC,WAAU;KACzB,gBAAAN,OAAA,cAACI,OAAAA,IAAAA,GAED,gBAAAJ,OAAA,cAACI,OAAAA;IAAIE,WAAU;KACb,gBAAAN,OAAA,cAACO,gBAAAA;IAAeV;OAGlB,gBAAAG,OAAA,cAACQ,gBAAAA;IAAeV;IAAcD;;AAItC;AAEA,IAAA,yBAAeD;",
6
+ "names": ["React", "getSpace", "StackItem", "CrownCross", "React", "generateName", "useMembers", "Input", "Select", "useThemeContext", "getSize", "mx", "PlayerSelector", "space", "game", "members", "useMembers", "key", "div", "role", "className", "PlayerSelect", "side", "value", "playerWhite", "onValueChange", "player", "playerBlack", "themeMode", "useThemeContext", "iconFillMode", "undefined", "Input", "Root", "Label", "CrownCross", "mx", "getSize", "weight", "aria-label", "Select", "TriggerButton", "placeholder", "Portal", "Content", "Viewport", "map", "member", "memberKey", "identity", "identityKey", "toHex", "displayName", "profile", "generateName", "Option", "ChessContainer", "game", "space", "getSpace", "React", "StackItem", "Content", "toolbar", "div", "role", "className", "ChessComponent", "PlayerSelector"]
7
+ }
@@ -1,10 +1,11 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  ChessAction,
4
- ChessType
5
- } from "./chunk-TXUWVQWY.mjs";
4
+ ChessType,
5
+ meta
6
+ } from "./chunk-IP66EHSW.mjs";
6
7
 
7
- // packages/plugins/plugin-chess/src/capabilities/artifact.ts
8
+ // packages/plugins/plugin-chess/src/capabilities/artifact-definition.ts
8
9
  import { Chess } from "chess.js";
9
10
  import { pipe } from "effect";
10
11
  import { Capabilities, chain, contributes, createIntent } from "@dxos/app-framework";
@@ -14,19 +15,21 @@ import { isInstanceOf, ObjectId, S } from "@dxos/echo-schema";
14
15
  import { invariant } from "@dxos/invariant";
15
16
  import { SpaceAction } from "@dxos/plugin-space/types";
16
17
  import { Filter } from "@dxos/react-client/echo";
17
- var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-chess/src/capabilities/artifact.ts";
18
- var artifact_default = () => {
18
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-chess/src/capabilities/artifact-definition.ts";
19
+ var artifact_definition_default = () => {
19
20
  const definition = defineArtifact({
20
- id: "plugin-chess",
21
+ id: meta.id,
22
+ name: meta.name,
23
+ description: "Provides a simple chess engine.",
21
24
  instructions: `
22
- Chess:
23
- - If the user's message relates to a chess game, you must return the chess game inside the artifact tag as a valid FEN string with no additional text.
24
- `,
25
+ - If the user's message relates to a chess game, you must return the chess game inside the artifact tag as a valid FEN string with no additional text.
26
+ `,
25
27
  schema: ChessType,
26
28
  tools: [
27
- defineTool({
28
- name: "chess_new",
29
- description: "Create a new chess game. Returns the artifact definition for the game",
29
+ defineTool(meta.id, {
30
+ name: "create",
31
+ description: "Create a new chess game. Returns the artifact definition for the game.",
32
+ caption: "Creating chess game...",
30
33
  schema: S.Struct({
31
34
  fen: S.String.annotations({
32
35
  description: "The state of the chess game in the FEN format."
@@ -35,7 +38,7 @@ var artifact_default = () => {
35
38
  execute: async ({ fen }, { extensions }) => {
36
39
  invariant(extensions?.space, "No space", {
37
40
  F: __dxlog_file,
38
- L: 42,
41
+ L: 45,
39
42
  S: void 0,
40
43
  A: [
41
44
  "extensions?.space",
@@ -44,7 +47,7 @@ var artifact_default = () => {
44
47
  });
45
48
  invariant(extensions?.dispatch, "No intent dispatcher", {
46
49
  F: __dxlog_file,
47
- L: 43,
50
+ L: 46,
48
51
  S: void 0,
49
52
  A: [
50
53
  "extensions?.dispatch",
@@ -63,14 +66,15 @@ var artifact_default = () => {
63
66
  return ToolResult.Success(createArtifactElement(data.id));
64
67
  }
65
68
  }),
66
- defineTool({
67
- name: "chess_query",
69
+ defineTool(meta.id, {
70
+ name: "list",
68
71
  description: "Query all active chess games.",
72
+ caption: "Getting games...",
69
73
  schema: S.Struct({}),
70
74
  execute: async (_, { extensions }) => {
71
75
  invariant(extensions?.space, "No space", {
72
76
  F: __dxlog_file,
73
- L: 61,
77
+ L: 65,
74
78
  S: void 0,
75
79
  A: [
76
80
  "extensions?.space",
@@ -80,7 +84,7 @@ var artifact_default = () => {
80
84
  const { objects: games } = await extensions.space.db.query(Filter.schema(ChessType)).run();
81
85
  invariant(games.length > 0, "No chess games found", {
82
86
  F: __dxlog_file,
83
- L: 63,
87
+ L: 67,
84
88
  S: void 0,
85
89
  A: [
86
90
  "games.length > 0",
@@ -90,16 +94,17 @@ var artifact_default = () => {
90
94
  return ToolResult.Success(games);
91
95
  }
92
96
  }),
93
- defineTool({
94
- name: "chess_inspect",
97
+ defineTool(meta.id, {
98
+ name: "inspect",
95
99
  description: "Get the current state of the chess game.",
100
+ caption: "Inspecting game...",
96
101
  schema: S.Struct({
97
102
  id: ObjectId
98
103
  }),
99
104
  execute: async ({ id }, { extensions }) => {
100
105
  invariant(extensions?.space, "No space", {
101
106
  F: __dxlog_file,
102
- L: 72,
107
+ L: 77,
103
108
  S: void 0,
104
109
  A: [
105
110
  "extensions?.space",
@@ -110,7 +115,7 @@ var artifact_default = () => {
110
115
  const game = games.find((game2) => game2.id === id);
111
116
  invariant(isInstanceOf(ChessType, game), void 0, {
112
117
  F: __dxlog_file,
113
- L: 75,
118
+ L: 80,
114
119
  S: void 0,
115
120
  A: [
116
121
  "isInstanceOf(ChessType, game)",
@@ -120,9 +125,10 @@ var artifact_default = () => {
120
125
  return ToolResult.Success(game.fen);
121
126
  }
122
127
  }),
123
- defineTool({
124
- name: "chess_move",
128
+ defineTool(meta.id, {
129
+ name: "move",
125
130
  description: "Make a move in the chess game.",
131
+ caption: "Making chess move...",
126
132
  schema: S.Struct({
127
133
  id: ObjectId,
128
134
  move: S.String.annotations({
@@ -136,7 +142,7 @@ var artifact_default = () => {
136
142
  execute: async ({ id, move }, { extensions }) => {
137
143
  invariant(extensions?.space, "No space", {
138
144
  F: __dxlog_file,
139
- L: 90,
145
+ L: 96,
140
146
  S: void 0,
141
147
  A: [
142
148
  "extensions?.space",
@@ -147,7 +153,7 @@ var artifact_default = () => {
147
153
  const game = games.find((game2) => game2.id === id);
148
154
  invariant(isInstanceOf(ChessType, game), void 0, {
149
155
  F: __dxlog_file,
150
- L: 93,
156
+ L: 99,
151
157
  S: void 0,
152
158
  A: [
153
159
  "isInstanceOf(ChessType, game)",
@@ -170,6 +176,6 @@ var artifact_default = () => {
170
176
  return contributes(Capabilities.ArtifactDefinition, definition);
171
177
  };
172
178
  export {
173
- artifact_default as default
179
+ artifact_definition_default as default
174
180
  };
175
- //# sourceMappingURL=artifact-B6IEF7U5.mjs.map
181
+ //# sourceMappingURL=artifact-definition-LHQK5BBZ.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/artifact-definition.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Chess } from 'chess.js';\nimport { pipe } from 'effect';\n\nimport { Capabilities, chain, contributes, createIntent, type PromiseIntentDispatcher } from '@dxos/app-framework';\nimport { defineArtifact, defineTool, ToolResult } from '@dxos/artifact';\nimport { createArtifactElement } from '@dxos/assistant';\nimport { isInstanceOf, ObjectId, S } from '@dxos/echo-schema';\nimport { invariant } from '@dxos/invariant';\nimport { SpaceAction } from '@dxos/plugin-space/types';\nimport { Filter, type Space } from '@dxos/react-client/echo';\n\nimport { meta } from '../meta';\nimport { ChessAction, ChessType } from '../types';\n\n// TODO(burdon): Factor out.\ndeclare global {\n interface ToolContextExtensions {\n space?: Space;\n dispatch?: PromiseIntentDispatcher;\n }\n}\n\nexport default () => {\n const definition = defineArtifact({\n id: meta.id,\n name: meta.name,\n description: 'Provides a simple chess engine.',\n instructions: `\n - If the user's message relates to a chess game, you must return the chess game inside the artifact tag as a valid FEN string with no additional text.\n `,\n schema: ChessType,\n tools: [\n defineTool(meta.id, {\n name: 'create',\n description: 'Create a new chess game. Returns the artifact definition for the game.',\n caption: 'Creating chess game...',\n schema: S.Struct({\n fen: S.String.annotations({ description: 'The state of the chess game in the FEN format.' }),\n }),\n execute: async ({ fen }, { extensions }) => {\n invariant(extensions?.space, 'No space');\n invariant(extensions?.dispatch, 'No intent dispatcher');\n const intent = pipe(\n createIntent(ChessAction.Create, { fen }),\n chain(SpaceAction.AddObject, { target: extensions.space }),\n );\n const { data, error } = await extensions.dispatch(intent);\n if (!data || error) {\n return ToolResult.Error(error?.message ?? 'Failed to create chess game');\n }\n\n return ToolResult.Success(createArtifactElement(data.id));\n },\n }),\n defineTool(meta.id, {\n name: 'list',\n description: 'Query all active chess games.',\n caption: 'Getting games...',\n schema: S.Struct({}),\n execute: async (_, { extensions }) => {\n invariant(extensions?.space, 'No space');\n const { objects: games } = await extensions.space.db.query(Filter.schema(ChessType)).run();\n invariant(games.length > 0, 'No chess games found');\n return ToolResult.Success(games);\n },\n }),\n defineTool(meta.id, {\n name: 'inspect',\n description: 'Get the current state of the chess game.',\n caption: 'Inspecting game...',\n schema: S.Struct({ id: ObjectId }),\n execute: async ({ id }, { extensions }) => {\n invariant(extensions?.space, 'No space');\n const { objects: games } = await extensions.space.db.query(Filter.schema(ChessType)).run();\n const game = games.find((game) => game.id === id);\n invariant(isInstanceOf(ChessType, game));\n return ToolResult.Success(game.fen);\n },\n }),\n defineTool(meta.id, {\n name: 'move',\n description: 'Make a move in the chess game.',\n caption: 'Making chess move...',\n schema: S.Struct({\n id: ObjectId,\n move: S.String.annotations({\n description: 'The move to make in the chess game.',\n examples: ['e4', 'Bf3'],\n }),\n }),\n execute: async ({ id, move }, { extensions }) => {\n invariant(extensions?.space, 'No space');\n const { objects: games } = await extensions.space.db.query(Filter.schema(ChessType)).run();\n const game = games.find((game) => game.id === id);\n invariant(isInstanceOf(ChessType, game));\n const board = new Chess(game.fen);\n try {\n board.move(move);\n } catch (error: any) {\n return ToolResult.Error(error.message);\n }\n game.pgn = board.pgn();\n game.fen = board.fen();\n return ToolResult.Success(game.fen);\n },\n }),\n ],\n });\n\n return contributes(Capabilities.ArtifactDefinition, definition);\n};\n"],
5
+ "mappings": ";;;;;;;;AAIA,SAASA,aAAa;AACtB,SAASC,YAAY;AAErB,SAASC,cAAcC,OAAOC,aAAaC,oBAAkD;AAC7F,SAASC,gBAAgBC,YAAYC,kBAAkB;AACvD,SAASC,6BAA6B;AACtC,SAASC,cAAcC,UAAUC,SAAS;AAC1C,SAASC,iBAAiB;AAC1B,SAASC,mBAAmB;AAC5B,SAASC,cAA0B;;AAanC,IAAA,8BAAe,MAAA;AACb,QAAMC,aAAaC,eAAe;IAChCC,IAAIC,KAAKD;IACTE,MAAMD,KAAKC;IACXC,aAAa;IACbC,cAAc;;;IAGdC,QAAQC;IACRC,OAAO;MACLC,WAAWP,KAAKD,IAAI;QAClBE,MAAM;QACNC,aAAa;QACbM,SAAS;QACTJ,QAAQK,EAAEC,OAAO;UACfC,KAAKF,EAAEG,OAAOC,YAAY;YAAEX,aAAa;UAAiD,CAAA;QAC5F,CAAA;QACAY,SAAS,OAAO,EAAEH,IAAG,GAAI,EAAEI,WAAU,MAAE;AACrCC,oBAAUD,YAAYE,OAAO,YAAA;;;;;;;;;AAC7BD,oBAAUD,YAAYG,UAAU,wBAAA;;;;;;;;;AAChC,gBAAMC,SAASC,KACbC,aAAaC,YAAYC,QAAQ;YAAEZ;UAAI,CAAA,GACvCa,MAAMC,YAAYC,WAAW;YAAEC,QAAQZ,WAAWE;UAAM,CAAA,CAAA;AAE1D,gBAAM,EAAEW,MAAMC,MAAK,IAAK,MAAMd,WAAWG,SAASC,MAAAA;AAClD,cAAI,CAACS,QAAQC,OAAO;AAClB,mBAAOC,WAAWC,MAAMF,OAAOG,WAAW,6BAAA;UAC5C;AAEA,iBAAOF,WAAWG,QAAQC,sBAAsBN,KAAK7B,EAAE,CAAA;QACzD;MACF,CAAA;MACAQ,WAAWP,KAAKD,IAAI;QAClBE,MAAM;QACNC,aAAa;QACbM,SAAS;QACTJ,QAAQK,EAAEC,OAAO,CAAC,CAAA;QAClBI,SAAS,OAAOqB,GAAG,EAAEpB,WAAU,MAAE;AAC/BC,oBAAUD,YAAYE,OAAO,YAAA;;;;;;;;;AAC7B,gBAAM,EAAEmB,SAASC,MAAK,IAAK,MAAMtB,WAAWE,MAAMqB,GAAGC,MAAMC,OAAOpC,OAAOC,SAAAA,CAAAA,EAAYoC,IAAG;AACxFzB,oBAAUqB,MAAMK,SAAS,GAAG,wBAAA;;;;;;;;;AAC5B,iBAAOZ,WAAWG,QAAQI,KAAAA;QAC5B;MACF,CAAA;MACA9B,WAAWP,KAAKD,IAAI;QAClBE,MAAM;QACNC,aAAa;QACbM,SAAS;QACTJ,QAAQK,EAAEC,OAAO;UAAEX,IAAI4C;QAAS,CAAA;QAChC7B,SAAS,OAAO,EAAEf,GAAE,GAAI,EAAEgB,WAAU,MAAE;AACpCC,oBAAUD,YAAYE,OAAO,YAAA;;;;;;;;;AAC7B,gBAAM,EAAEmB,SAASC,MAAK,IAAK,MAAMtB,WAAWE,MAAMqB,GAAGC,MAAMC,OAAOpC,OAAOC,SAAAA,CAAAA,EAAYoC,IAAG;AACxF,gBAAMG,OAAOP,MAAMQ,KAAK,CAACD,UAASA,MAAK7C,OAAOA,EAAAA;AAC9CiB,oBAAU8B,aAAazC,WAAWuC,IAAAA,GAAAA,QAAAA;;;;;;;;;AAClC,iBAAOd,WAAWG,QAAQW,KAAKjC,GAAG;QACpC;MACF,CAAA;MACAJ,WAAWP,KAAKD,IAAI;QAClBE,MAAM;QACNC,aAAa;QACbM,SAAS;QACTJ,QAAQK,EAAEC,OAAO;UACfX,IAAI4C;UACJI,MAAMtC,EAAEG,OAAOC,YAAY;YACzBX,aAAa;YACb8C,UAAU;cAAC;cAAM;;UACnB,CAAA;QACF,CAAA;QACAlC,SAAS,OAAO,EAAEf,IAAIgD,KAAI,GAAI,EAAEhC,WAAU,MAAE;AAC1CC,oBAAUD,YAAYE,OAAO,YAAA;;;;;;;;;AAC7B,gBAAM,EAAEmB,SAASC,MAAK,IAAK,MAAMtB,WAAWE,MAAMqB,GAAGC,MAAMC,OAAOpC,OAAOC,SAAAA,CAAAA,EAAYoC,IAAG;AACxF,gBAAMG,OAAOP,MAAMQ,KAAK,CAACD,UAASA,MAAK7C,OAAOA,EAAAA;AAC9CiB,oBAAU8B,aAAazC,WAAWuC,IAAAA,GAAAA,QAAAA;;;;;;;;;AAClC,gBAAMK,QAAQ,IAAIC,MAAMN,KAAKjC,GAAG;AAChC,cAAI;AACFsC,kBAAMF,KAAKA,IAAAA;UACb,SAASlB,OAAY;AACnB,mBAAOC,WAAWC,MAAMF,MAAMG,OAAO;UACvC;AACAY,eAAKO,MAAMF,MAAME,IAAG;AACpBP,eAAKjC,MAAMsC,MAAMtC,IAAG;AACpB,iBAAOmB,WAAWG,QAAQW,KAAKjC,GAAG;QACpC;MACF,CAAA;;EAEJ,CAAA;AAEA,SAAOyC,YAAYC,aAAaC,oBAAoBzD,UAAAA;AACtD;",
6
+ "names": ["Chess", "pipe", "Capabilities", "chain", "contributes", "createIntent", "defineArtifact", "defineTool", "ToolResult", "createArtifactElement", "isInstanceOf", "ObjectId", "S", "invariant", "SpaceAction", "Filter", "definition", "defineArtifact", "id", "meta", "name", "description", "instructions", "schema", "ChessType", "tools", "defineTool", "caption", "S", "Struct", "fen", "String", "annotations", "execute", "extensions", "invariant", "space", "dispatch", "intent", "pipe", "createIntent", "ChessAction", "Create", "chain", "SpaceAction", "AddObject", "target", "data", "error", "ToolResult", "Error", "message", "Success", "createArtifactElement", "_", "objects", "games", "db", "query", "Filter", "run", "length", "ObjectId", "game", "find", "isInstanceOf", "move", "examples", "board", "Chess", "pgn", "contributes", "Capabilities", "ArtifactDefinition"]
7
+ }
@@ -0,0 +1,44 @@
1
+ import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
+
3
+ // packages/plugins/plugin-chess/src/components/ChessComponent.tsx
4
+ import { Chess } from "chess.js";
5
+ import React, { useCallback, useEffect, useMemo } from "react";
6
+ import { getSpace } from "@dxos/react-client/echo";
7
+ import { ChessModel, Board, Chessboard } from "@dxos/react-ui-gameboard";
8
+ var ChessComponent = ({ game }) => {
9
+ const model = useMemo(() => new ChessModel(), []);
10
+ useEffect(() => {
11
+ if (!model || game.pgn !== model?.game.pgn()) {
12
+ const chess = new Chess();
13
+ if (game.pgn) {
14
+ chess.loadPgn(game.pgn);
15
+ }
16
+ model.initialize(chess.fen());
17
+ }
18
+ }, [
19
+ game.pgn
20
+ ]);
21
+ const space = getSpace(game);
22
+ if (!space) {
23
+ return null;
24
+ }
25
+ const handleDrop = useCallback((move) => {
26
+ if (model.makeMove(move)) {
27
+ game.pgn = model.game.pgn();
28
+ game.fen = model.game.fen();
29
+ return true;
30
+ }
31
+ return false;
32
+ }, [
33
+ model
34
+ ]);
35
+ return /* @__PURE__ */ React.createElement(Board.Root, {
36
+ model,
37
+ onDrop: handleDrop
38
+ }, /* @__PURE__ */ React.createElement(Chessboard, null));
39
+ };
40
+
41
+ export {
42
+ ChessComponent
43
+ };
44
+ //# sourceMappingURL=chunk-6SEDGO5G.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/ChessComponent.tsx"],
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { Chess } from 'chess.js';\nimport React, { useCallback, useEffect, useMemo } from 'react';\n\nimport { getSpace } from '@dxos/react-client/echo';\nimport { ChessModel, Board, Chessboard, type BoardRootProps } from '@dxos/react-ui-gameboard';\n\nimport { type ChessType } from '../types';\n\nexport const ChessComponent = ({ game }: { game: ChessType }) => {\n const model = useMemo(() => new ChessModel(), []);\n useEffect(() => {\n if (!model || game.pgn !== model?.game.pgn()) {\n const chess = new Chess();\n if (game.pgn) {\n chess.loadPgn(game.pgn);\n }\n\n model.initialize(chess.fen());\n }\n }, [game.pgn]);\n\n const space = getSpace(game);\n if (!space) {\n return null;\n }\n\n const handleDrop = useCallback<NonNullable<BoardRootProps['onDrop']>>(\n (move) => {\n if (model.makeMove(move)) {\n game.pgn = model.game.pgn();\n game.fen = model.game.fen();\n return true;\n }\n\n return false;\n },\n [model],\n );\n\n return (\n <Board.Root model={model} onDrop={handleDrop}>\n <Chessboard />\n </Board.Root>\n );\n};\n"],
5
+ "mappings": ";;;AAIA,SAASA,aAAa;AACtB,OAAOC,SAASC,aAAaC,WAAWC,eAAe;AAEvD,SAASC,gBAAgB;AACzB,SAASC,YAAYC,OAAOC,kBAAuC;AAI5D,IAAMC,iBAAiB,CAAC,EAAEC,KAAI,MAAuB;AAC1D,QAAMC,QAAQC,QAAQ,MAAM,IAAIC,WAAAA,GAAc,CAAA,CAAE;AAChDC,YAAU,MAAA;AACR,QAAI,CAACH,SAASD,KAAKK,QAAQJ,OAAOD,KAAKK,IAAAA,GAAO;AAC5C,YAAMC,QAAQ,IAAIC,MAAAA;AAClB,UAAIP,KAAKK,KAAK;AACZC,cAAME,QAAQR,KAAKK,GAAG;MACxB;AAEAJ,YAAMQ,WAAWH,MAAMI,IAAG,CAAA;IAC5B;EACF,GAAG;IAACV,KAAKK;GAAI;AAEb,QAAMM,QAAQC,SAASZ,IAAAA;AACvB,MAAI,CAACW,OAAO;AACV,WAAO;EACT;AAEA,QAAME,aAAaC,YACjB,CAACC,SAAAA;AACC,QAAId,MAAMe,SAASD,IAAAA,GAAO;AACxBf,WAAKK,MAAMJ,MAAMD,KAAKK,IAAG;AACzBL,WAAKU,MAAMT,MAAMD,KAAKU,IAAG;AACzB,aAAO;IACT;AAEA,WAAO;EACT,GACA;IAACT;GAAM;AAGT,SACE,sBAAA,cAACgB,MAAMC,MAAI;IAACjB;IAAckB,QAAQN;KAChC,sBAAA,cAACO,YAAAA,IAAAA,CAAAA;AAGP;",
6
+ "names": ["Chess", "React", "useCallback", "useEffect", "useMemo", "getSpace", "ChessModel", "Board", "Chessboard", "ChessComponent", "game", "model", "useMemo", "ChessModel", "useEffect", "pgn", "chess", "Chess", "loadPgn", "initialize", "fen", "space", "getSpace", "handleDrop", "useCallback", "move", "makeMove", "Board", "Root", "onDrop", "Chessboard"]
7
+ }
@@ -2,9 +2,9 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
 
3
3
  // packages/plugins/plugin-chess/src/components/index.ts
4
4
  import { lazy } from "react";
5
- var ChessContainer = lazy(() => import("./ChessContainer-2LFJ6RHB.mjs"));
5
+ var ChessContainer = lazy(() => import("./ChessContainer-S76WNBWN.mjs"));
6
6
 
7
7
  export {
8
8
  ChessContainer
9
9
  };
10
- //# sourceMappingURL=chunk-QXDXLFXD.mjs.map
10
+ //# sourceMappingURL=chunk-B72CIN6T.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { lazy } from 'react';\n\nexport * from './ChessComponent';\n\nexport const ChessContainer = lazy(() => import('./ChessContainer'));\n"],
5
+ "mappings": ";;;AAIA,SAASA,YAAY;AAId,IAAMC,iBAAiBC,KAAK,MAAM,OAAO,+BAAA,CAAA;",
6
+ "names": ["lazy", "ChessContainer", "lazy"]
7
+ }
@@ -32,9 +32,12 @@ var CHESS_PLUGIN = "dxos.org/plugin/chess";
32
32
  var meta = {
33
33
  id: CHESS_PLUGIN,
34
34
  name: "Chess",
35
- description: "Play chess.",
35
+ description: "Chess is a simple plugin which allows you to render an interactive chessboard inside of a plank. This chessboard can be used for collaborative chess games, or for practice experiments with the LLM. ",
36
36
  icon: "ph--shield-chevron--regular",
37
- source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-chess"
37
+ source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-chess",
38
+ screenshots: [
39
+ "https://dxos.network/plugin-details-chess-dark.png"
40
+ ]
38
41
  };
39
42
 
40
43
  // packages/plugins/plugin-chess/src/types/types.ts
@@ -58,11 +61,11 @@ var isObject = (object) => {
58
61
  };
59
62
 
60
63
  export {
61
- MoveSchema,
62
- ChessType,
63
64
  CHESS_PLUGIN,
64
65
  meta,
66
+ MoveSchema,
67
+ ChessType,
65
68
  ChessAction,
66
69
  isObject
67
70
  };
68
- //# sourceMappingURL=chunk-TXUWVQWY.mjs.map
71
+ //# sourceMappingURL=chunk-IP66EHSW.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/types/schema.ts", "../../../src/types/types.ts", "../../../src/meta.ts"],
4
- "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { S, TypedObject } from '@dxos/echo-schema';\n\nexport const MoveSchema = S.mutable(\n S.partial(\n S.Struct({\n source: S.String,\n target: S.String,\n piece: S.String,\n }),\n ),\n);\n\nexport class ChessType extends TypedObject({ typename: 'dxos.org/type/Chess', version: '0.1.0' })(\n {\n name: S.optional(S.String),\n playerWhite: S.String,\n playerBlack: S.String,\n moves: S.mutable(S.Array(S.String)),\n // TODO(wittjosiah): Remove. Redundant with moves.\n pgn: S.String,\n fen: S.String,\n },\n { partial: true },\n) {}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { isInstanceOf, S } from '@dxos/echo-schema';\nimport { isReactiveObject } from '@dxos/live-object';\n\nimport { ChessType } from './schema';\nimport { CHESS_PLUGIN } from '../meta';\n\nexport namespace ChessAction {\n const CHESS_ACTION = `${CHESS_PLUGIN}/action`;\n\n export class Create extends S.TaggedClass<Create>()(`${CHESS_ACTION}/create`, {\n input: S.Struct({\n name: S.optional(S.String),\n fen: S.optional(S.String),\n }),\n output: S.Struct({\n object: ChessType,\n }),\n }) {}\n}\n\nexport const isObject = (object: unknown): object is typeof ChessType => {\n return isReactiveObject(object) && isInstanceOf(ChessType, object);\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const CHESS_PLUGIN = 'dxos.org/plugin/chess';\n\nexport const meta = {\n id: CHESS_PLUGIN,\n name: 'Chess',\n description: 'Play chess.',\n icon: 'ph--shield-chevron--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-chess',\n} satisfies PluginMeta;\n"],
5
- "mappings": ";;;AAIA,SAASA,GAAGC,mBAAmB;AAExB,IAAMC,aAAaC,EAAEC,QAC1BD,EAAEE,QACAF,EAAEG,OAAO;EACPC,QAAQJ,EAAEK;EACVC,QAAQN,EAAEK;EACVE,OAAOP,EAAEK;AACX,CAAA,CAAA,CAAA;AAIG,IAAMG,YAAN,cAAwBC,YAAY;EAAEC,UAAU;EAAuBC,SAAS;AAAQ,CAAA,EAC7F;EACEC,MAAMZ,EAAEa,SAASb,EAAEK,MAAM;EACzBS,aAAad,EAAEK;EACfU,aAAaf,EAAEK;EACfW,OAAOhB,EAAEC,QAAQD,EAAEiB,MAAMjB,EAAEK,MAAM,CAAA;;EAEjCa,KAAKlB,EAAEK;EACPc,KAAKnB,EAAEK;AACT,GACA;EAAEH,SAAS;AAAK,CAAA,EAAA;AACf;;;ACvBH,SAASkB,cAAcC,KAAAA,UAAS;AAChC,SAASC,wBAAwB;;;ACC1B,IAAMC,eAAe;AAErB,IAAMC,OAAO;EAClBC,IAAIF;EACJG,MAAM;EACNC,aAAa;EACbC,MAAM;EACNC,QAAQ;AACV;;;;UDJiBC,cAAAA;AACf,QAAMC,eAAe,GAAGC,YAAAA;EAEjB,MAAMC,eAAeC,GAAEC,YAAW,EAAW,GAAGJ,YAAAA,WAAuB;IAC5EK,OAAOF,GAAEG,OAAO;MACdC,MAAMJ,GAAEK,SAASL,GAAEM,MAAM;MACzBC,KAAKP,GAAEK,SAASL,GAAEM,MAAM;IAC1B,CAAA;IACAE,QAAQR,GAAEG,OAAO;MACfM,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;eARSX,SAAAA;AASf,GAZiBH,gBAAAA,cAAAA,CAAAA,EAAAA;AAcV,IAAMe,WAAW,CAACF,WAAAA;AACvB,SAAOG,iBAAiBH,MAAAA,KAAWI,aAAaH,WAAWD,MAAAA;AAC7D;",
6
- "names": ["S", "TypedObject", "MoveSchema", "S", "mutable", "partial", "Struct", "source", "String", "target", "piece", "ChessType", "TypedObject", "typename", "version", "name", "optional", "playerWhite", "playerBlack", "moves", "Array", "pgn", "fen", "isInstanceOf", "S", "isReactiveObject", "CHESS_PLUGIN", "meta", "id", "name", "description", "icon", "source", "ChessAction", "CHESS_ACTION", "CHESS_PLUGIN", "Create", "S", "TaggedClass", "input", "Struct", "name", "optional", "String", "fen", "output", "object", "ChessType", "isObject", "isReactiveObject", "isInstanceOf"]
4
+ "sourcesContent": ["//\n// Copyright 2024 DXOS.org\n//\n\nimport { S, TypedObject } from '@dxos/echo-schema';\n\nexport const MoveSchema = S.mutable(\n S.partial(\n S.Struct({\n source: S.String,\n target: S.String,\n piece: S.String,\n }),\n ),\n);\n\nexport class ChessType extends TypedObject({ typename: 'dxos.org/type/Chess', version: '0.1.0' })(\n {\n name: S.optional(S.String),\n playerWhite: S.String,\n playerBlack: S.String,\n moves: S.mutable(S.Array(S.String)),\n // TODO(wittjosiah): Remove. Redundant with moves.\n pgn: S.String,\n fen: S.String,\n },\n { partial: true },\n) {}\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { isInstanceOf, S } from '@dxos/echo-schema';\nimport { isReactiveObject } from '@dxos/live-object';\n\nimport { ChessType } from './schema';\nimport { CHESS_PLUGIN } from '../meta';\n\nexport namespace ChessAction {\n const CHESS_ACTION = `${CHESS_PLUGIN}/action`;\n\n export class Create extends S.TaggedClass<Create>()(`${CHESS_ACTION}/create`, {\n input: S.Struct({\n name: S.optional(S.String),\n fen: S.optional(S.String),\n }),\n output: S.Struct({\n object: ChessType,\n }),\n }) {}\n}\n\nexport const isObject = (object: unknown): object is typeof ChessType => {\n return isReactiveObject(object) && isInstanceOf(ChessType, object);\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const CHESS_PLUGIN = 'dxos.org/plugin/chess';\n\nexport const meta = {\n id: CHESS_PLUGIN,\n name: 'Chess',\n description:\n 'Chess is a simple plugin which allows you to render an interactive chessboard inside of a plank. This chessboard can be used for collaborative chess games, or for practice experiments with the LLM. ',\n icon: 'ph--shield-chevron--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-chess',\n screenshots: ['https://dxos.network/plugin-details-chess-dark.png'],\n} satisfies PluginMeta;\n"],
5
+ "mappings": ";;;AAIA,SAASA,GAAGC,mBAAmB;AAExB,IAAMC,aAAaC,EAAEC,QAC1BD,EAAEE,QACAF,EAAEG,OAAO;EACPC,QAAQJ,EAAEK;EACVC,QAAQN,EAAEK;EACVE,OAAOP,EAAEK;AACX,CAAA,CAAA,CAAA;AAIG,IAAMG,YAAN,cAAwBC,YAAY;EAAEC,UAAU;EAAuBC,SAAS;AAAQ,CAAA,EAC7F;EACEC,MAAMZ,EAAEa,SAASb,EAAEK,MAAM;EACzBS,aAAad,EAAEK;EACfU,aAAaf,EAAEK;EACfW,OAAOhB,EAAEC,QAAQD,EAAEiB,MAAMjB,EAAEK,MAAM,CAAA;;EAEjCa,KAAKlB,EAAEK;EACPc,KAAKnB,EAAEK;AACT,GACA;EAAEH,SAAS;AAAK,CAAA,EAAA;AACf;;;ACvBH,SAASkB,cAAcC,KAAAA,UAAS;AAChC,SAASC,wBAAwB;;;ACC1B,IAAMC,eAAe;AAErB,IAAMC,OAAO;EAClBC,IAAIF;EACJG,MAAM;EACNC,aACE;EACFC,MAAM;EACNC,QAAQ;EACRC,aAAa;IAAC;;AAChB;;;;UDNiBC,cAAAA;AACf,QAAMC,eAAe,GAAGC,YAAAA;EAEjB,MAAMC,eAAeC,GAAEC,YAAW,EAAW,GAAGJ,YAAAA,WAAuB;IAC5EK,OAAOF,GAAEG,OAAO;MACdC,MAAMJ,GAAEK,SAASL,GAAEM,MAAM;MACzBC,KAAKP,GAAEK,SAASL,GAAEM,MAAM;IAC1B,CAAA;IACAE,QAAQR,GAAEG,OAAO;MACfM,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;eARSX,SAAAA;AASf,GAZiBH,gBAAAA,cAAAA,CAAAA,EAAAA;AAcV,IAAMe,WAAW,CAACF,WAAAA;AACvB,SAAOG,iBAAiBH,MAAAA,KAAWI,aAAaH,WAAWD,MAAAA;AAC7D;",
6
+ "names": ["S", "TypedObject", "MoveSchema", "S", "mutable", "partial", "Struct", "source", "String", "target", "piece", "ChessType", "TypedObject", "typename", "version", "name", "optional", "playerWhite", "playerBlack", "moves", "Array", "pgn", "fen", "isInstanceOf", "S", "isReactiveObject", "CHESS_PLUGIN", "meta", "id", "name", "description", "icon", "source", "screenshots", "ChessAction", "CHESS_ACTION", "CHESS_PLUGIN", "Create", "S", "TaggedClass", "input", "Struct", "name", "optional", "String", "fen", "output", "object", "ChessType", "isObject", "isReactiveObject", "isInstanceOf"]
7
7
  }
@@ -1,30 +1,28 @@
1
1
  import { createRequire } from 'node:module';const require = createRequire(import.meta.url);
2
2
  import {
3
3
  ChessContainer
4
- } from "./chunk-QXDXLFXD.mjs";
4
+ } from "./chunk-B72CIN6T.mjs";
5
5
  import {
6
6
  CHESS_PLUGIN,
7
7
  ChessAction,
8
8
  ChessType,
9
9
  meta
10
- } from "./chunk-TXUWVQWY.mjs";
10
+ } from "./chunk-IP66EHSW.mjs";
11
11
  import {
12
- Chess,
13
- ChessPanel,
14
- ChessPieces,
15
- Chessboard,
16
- boardStyles
17
- } from "./chunk-OMGVSBVI.mjs";
12
+ ChessComponent
13
+ } from "./chunk-6SEDGO5G.mjs";
18
14
 
19
15
  // packages/plugins/plugin-chess/src/capabilities/index.ts
20
16
  import { lazy } from "@dxos/app-framework";
21
- var Artifact = lazy(() => import("./artifact-B6IEF7U5.mjs"));
22
- var IntentResolver = lazy(() => import("./intent-resolver-T7NNHOYR.mjs"));
23
- var ReactSurface = lazy(() => import("./react-surface-ENB7VY45.mjs"));
17
+ var ArtifactDefinition = lazy(() => import("./artifact-definition-LHQK5BBZ.mjs"));
18
+ var IntentResolver = lazy(() => import("./intent-resolver-WBUS64KC.mjs"));
19
+ var ReactSurface = lazy(() => import("./react-surface-XX4VFNRS.mjs"));
24
20
 
25
21
  // packages/plugins/plugin-chess/src/ChessPlugin.tsx
26
- import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events, oneOf } from "@dxos/app-framework";
27
- import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
22
+ import { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from "@dxos/app-framework";
23
+ import { ClientEvents } from "@dxos/plugin-client";
24
+ import { SpaceCapabilities } from "@dxos/plugin-space";
25
+ import { defineObjectForm } from "@dxos/plugin-space/types";
28
26
 
29
27
  // packages/plugins/plugin-chess/src/translations.ts
30
28
  var translations_default = [
@@ -52,11 +50,10 @@ var ChessPlugin = () => definePlugin(meta, [
52
50
  }),
53
51
  defineModule({
54
52
  id: `${meta.id}/module/metadata`,
55
- activatesOn: oneOf(Events.Startup, Events.SetupAppGraph),
53
+ activatesOn: Events.SetupMetadata,
56
54
  activate: () => contributes(Capabilities.Metadata, {
57
55
  id: ChessType.typename,
58
56
  metadata: {
59
- createObject: (props) => createIntent(ChessAction.Create, props),
60
57
  placeholder: [
61
58
  "game title placeholder",
62
59
  {
@@ -68,40 +65,37 @@ var ChessPlugin = () => definePlugin(meta, [
68
65
  })
69
66
  }),
70
67
  defineModule({
71
- id: `${meta.id}/module/schema`,
72
- activatesOn: ClientEvents.SetupClient,
73
- activate: () => contributes(ClientCapabilities.Schema, [
74
- ChessType
75
- ])
68
+ id: `${meta.id}/module/object-form`,
69
+ activatesOn: ClientEvents.SetupSchema,
70
+ activate: () => contributes(SpaceCapabilities.ObjectForm, defineObjectForm({
71
+ objectSchema: ChessType,
72
+ getIntent: () => createIntent(ChessAction.Create)
73
+ }))
76
74
  }),
77
75
  defineModule({
78
76
  id: `${meta.id}/module/react-surface`,
79
- activatesOn: Events.Startup,
77
+ activatesOn: Events.SetupReactSurface,
80
78
  activate: ReactSurface
81
79
  }),
82
80
  defineModule({
83
81
  id: `${meta.id}/module/intent-resolver`,
84
- activatesOn: Events.Startup,
82
+ activatesOn: Events.SetupIntentResolver,
85
83
  activate: IntentResolver
86
84
  }),
87
85
  defineModule({
88
- id: `${meta.id}/module/artifact`,
89
- activatesOn: Events.Startup,
90
- activate: Artifact
86
+ id: `${meta.id}/module/artifact-definition`,
87
+ activatesOn: Events.SetupArtifactDefinition,
88
+ activate: ArtifactDefinition
91
89
  })
92
90
  ]);
93
91
  export {
94
- Artifact,
92
+ ArtifactDefinition,
95
93
  CHESS_PLUGIN,
96
- Chess,
94
+ ChessComponent,
97
95
  ChessContainer,
98
- ChessPanel,
99
- ChessPieces,
100
96
  ChessPlugin,
101
- Chessboard,
102
97
  IntentResolver,
103
98
  ReactSurface,
104
- boardStyles,
105
99
  meta
106
100
  };
107
101
  //# sourceMappingURL=index.mjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/capabilities/index.ts", "../../../src/ChessPlugin.tsx", "../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const Artifact = lazy(() => import('./artifact'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n Capabilities,\n contributes,\n createIntent,\n defineModule,\n definePlugin,\n Events,\n oneOf,\n} from '@dxos/app-framework';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\n\nimport { Artifact, IntentResolver, ReactSurface } from './capabilities';\nimport { CHESS_PLUGIN, meta } from './meta';\nimport translations from './translations';\nimport { ChessAction, ChessType } from './types';\n\nexport const ChessPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: oneOf(Events.Startup, Events.SetupAppGraph),\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: ChessType.typename,\n metadata: {\n createObject: (props: { name?: string }) => createIntent(ChessAction.Create, props),\n placeholder: ['game title placeholder', { ns: CHESS_PLUGIN }],\n icon: 'ph--shield-chevron--regular',\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupClient,\n activate: () => contributes(ClientCapabilities.Schema, [ChessType]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.Startup,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.Startup,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/artifact`,\n activatesOn: Events.Startup,\n activate: Artifact,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { CHESS_PLUGIN } from './meta';\nimport { ChessType } from './types';\n\nexport default [\n {\n 'en-US': {\n [ChessType.typename]: {\n 'typename label': 'Game',\n },\n [CHESS_PLUGIN]: {\n 'plugin name': 'Chess',\n 'game title placeholder': 'New game',\n 'create game label': 'Create game',\n 'delete game label': 'Delete',\n },\n },\n },\n];\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAIA,SAASA,YAAY;AAEd,IAAMC,WAAWC,KAAK,MAAM,OAAO,yBAAA,CAAA;AACnC,IAAMC,iBAAiBD,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAME,eAAeF,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ACJ9C,SACEG,cACAC,aACAC,cACAC,cACAC,cACAC,QACAC,aACK;AACP,SAASC,oBAAoBC,oBAAoB;;;ACNjD,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACC,UAAUC,QAAQ,GAAG;QACpB,kBAAkB;MACpB;MACA,CAACC,YAAAA,GAAe;QACd,eAAe;QACf,0BAA0B;QAC1B,qBAAqB;QACrB,qBAAqB;MACvB;IACF;EACF;;;;ADAK,IAAMC,cAAc,MACzBC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAcC,oBAAAA;EACzD,CAAA;EACAT,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaQ,MAAMP,OAAOQ,SAASR,OAAOS,aAAa;IACvDP,UAAU,MACRC,YAAYC,aAAaM,UAAU;MACjCZ,IAAIa,UAAUC;MACdC,UAAU;QACRC,cAAc,CAACC,UAA6BC,aAAaC,YAAYC,QAAQH,KAAAA;QAC7EI,aAAa;UAAC;UAA0B;YAAEC,IAAIC;UAAa;;QAC3DC,MAAM;MACR;IACF,CAAA;EACJ,CAAA;EACAzB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAawB,aAAaC;IAC1BtB,UAAU,MAAMC,YAAYsB,mBAAmBC,QAAQ;MAACf;KAAU;EACpE,CAAA;EACAd,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOQ;IACpBN,UAAUyB;EACZ,CAAA;EACA9B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOQ;IACpBN,UAAU0B;EACZ,CAAA;EACA/B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOQ;IACpBN,UAAU2B;EACZ,CAAA;CACD;",
6
- "names": ["lazy", "Artifact", "lazy", "IntentResolver", "ReactSurface", "Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "oneOf", "ClientCapabilities", "ClientEvents", "ChessType", "typename", "CHESS_PLUGIN", "ChessPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "oneOf", "Startup", "SetupAppGraph", "Metadata", "ChessType", "typename", "metadata", "createObject", "props", "createIntent", "ChessAction", "Create", "placeholder", "ns", "CHESS_PLUGIN", "icon", "ClientEvents", "SetupClient", "ClientCapabilities", "Schema", "ReactSurface", "IntentResolver", "Artifact"]
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const ArtifactDefinition = lazy(() => import('./artifact-definition'));\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Capabilities, contributes, createIntent, defineModule, definePlugin, Events } from '@dxos/app-framework';\nimport { ClientEvents } from '@dxos/plugin-client';\nimport { SpaceCapabilities } from '@dxos/plugin-space';\nimport { defineObjectForm } from '@dxos/plugin-space/types';\n\nimport { ArtifactDefinition, IntentResolver, ReactSurface } from './capabilities';\nimport { CHESS_PLUGIN, meta } from './meta';\nimport translations from './translations';\nimport { ChessAction, ChessType } from './types';\n\nexport const ChessPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, translations),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: ChessType.typename,\n metadata: {\n placeholder: ['game title placeholder', { ns: CHESS_PLUGIN }],\n icon: 'ph--shield-chevron--regular',\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/object-form`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () =>\n contributes(\n SpaceCapabilities.ObjectForm,\n defineObjectForm({\n objectSchema: ChessType,\n getIntent: () => createIntent(ChessAction.Create),\n }),\n ),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupReactSurface,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntentResolver,\n activate: IntentResolver,\n }),\n defineModule({\n id: `${meta.id}/module/artifact-definition`,\n activatesOn: Events.SetupArtifactDefinition,\n activate: ArtifactDefinition,\n }),\n ]);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { CHESS_PLUGIN } from './meta';\nimport { ChessType } from './types';\n\nexport default [\n {\n 'en-US': {\n [ChessType.typename]: {\n 'typename label': 'Game',\n },\n [CHESS_PLUGIN]: {\n 'plugin name': 'Chess',\n 'game title placeholder': 'New game',\n 'create game label': 'Create game',\n 'delete game label': 'Delete',\n },\n },\n },\n];\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;AAIA,SAASA,YAAY;AAEd,IAAMC,qBAAqBC,KAAK,MAAM,OAAO,oCAAA,CAAA;AAC7C,IAAMC,iBAAiBD,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAME,eAAeF,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ACJ9C,SAASG,cAAcC,aAAaC,cAAcC,cAAcC,cAAcC,cAAc;AAC5F,SAASC,oBAAoB;AAC7B,SAASC,yBAAyB;AAClC,SAASC,wBAAwB;;;ACAjC,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACC,UAAUC,QAAQ,GAAG;QACpB,kBAAkB;MACpB;MACA,CAACC,YAAAA,GAAe;QACd,eAAe;QACf,0BAA0B;QAC1B,qBAAqB;QACrB,qBAAqB;MACvB;IACF;EACF;;;;ADNK,IAAMC,cAAc,MACzBC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAcC,oBAAAA;EACzD,CAAA;EACAT,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOO;IACpBL,UAAU,MACRC,YAAYC,aAAaI,UAAU;MACjCV,IAAIW,UAAUC;MACdC,UAAU;QACRC,aAAa;UAAC;UAA0B;YAAEC,IAAIC;UAAa;;QAC3DC,MAAM;MACR;IACF,CAAA;EACJ,CAAA;EACAlB,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaiB,aAAaC;IAC1Bf,UAAU,MACRC,YACEe,kBAAkBC,YAClBC,iBAAiB;MACfC,cAAcZ;MACda,WAAW,MAAMC,aAAaC,YAAYC,MAAM;IAClD,CAAA,CAAA;EAEN,CAAA;EACA5B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO0B;IACpBxB,UAAUyB;EACZ,CAAA;EACA9B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO4B;IACpB1B,UAAU2B;EACZ,CAAA;EACAhC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO8B;IACpB5B,UAAU6B;EACZ,CAAA;CACD;",
6
+ "names": ["lazy", "ArtifactDefinition", "lazy", "IntentResolver", "ReactSurface", "Capabilities", "contributes", "createIntent", "defineModule", "definePlugin", "Events", "ClientEvents", "SpaceCapabilities", "defineObjectForm", "ChessType", "typename", "CHESS_PLUGIN", "ChessPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "SetupMetadata", "Metadata", "ChessType", "typename", "metadata", "placeholder", "ns", "CHESS_PLUGIN", "icon", "ClientEvents", "SetupSchema", "SpaceCapabilities", "ObjectForm", "defineObjectForm", "objectSchema", "getIntent", "createIntent", "ChessAction", "Create", "SetupReactSurface", "ReactSurface", "SetupIntentResolver", "IntentResolver", "SetupArtifactDefinition", "ArtifactDefinition"]
7
7
  }
@@ -2,25 +2,28 @@ import { createRequire } from 'node:module';const require = createRequire(import
2
2
  import {
3
3
  ChessAction,
4
4
  ChessType
5
- } from "./chunk-TXUWVQWY.mjs";
5
+ } from "./chunk-IP66EHSW.mjs";
6
6
 
7
7
  // packages/plugins/plugin-chess/src/capabilities/intent-resolver.ts
8
8
  import { Chess } from "chess.js";
9
9
  import { Capabilities, contributes, createResolver } from "@dxos/app-framework";
10
10
  import { create } from "@dxos/live-object";
11
- var intent_resolver_default = () => contributes(Capabilities.IntentResolver, createResolver(ChessAction.Create, ({ name, fen }) => {
12
- const pgn = fen ? new Chess(fen).pgn() : void 0;
13
- return {
14
- data: {
15
- object: create(ChessType, {
16
- name,
17
- fen,
18
- pgn
19
- })
20
- }
21
- };
11
+ var intent_resolver_default = () => contributes(Capabilities.IntentResolver, createResolver({
12
+ intent: ChessAction.Create,
13
+ resolve: ({ name, fen }) => {
14
+ const pgn = fen ? new Chess(fen).pgn() : void 0;
15
+ return {
16
+ data: {
17
+ object: create(ChessType, {
18
+ name,
19
+ fen,
20
+ pgn
21
+ })
22
+ }
23
+ };
24
+ }
22
25
  }));
23
26
  export {
24
27
  intent_resolver_default as default
25
28
  };
26
- //# sourceMappingURL=intent-resolver-T7NNHOYR.mjs.map
29
+ //# sourceMappingURL=intent-resolver-WBUS64KC.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { Chess } from 'chess.js';\n\nimport { Capabilities, contributes, createResolver } from '@dxos/app-framework';\nimport { create } from '@dxos/live-object';\n\nimport { ChessAction, ChessType } from '../types';\n\nexport default () =>\n contributes(\n Capabilities.IntentResolver,\n createResolver({\n intent: ChessAction.Create,\n resolve: ({ name, fen }) => {\n const pgn = fen ? new Chess(fen).pgn() : undefined;\n return {\n data: {\n object: create(ChessType, { name, fen, pgn }),\n },\n };\n },\n }),\n );\n"],
5
+ "mappings": ";;;;;;;AAIA,SAASA,aAAa;AAEtB,SAASC,cAAcC,aAAaC,sBAAsB;AAC1D,SAASC,cAAc;AAIvB,IAAA,0BAAe,MACbC,YACEC,aAAaC,gBACbC,eAAe;EACbC,QAAQC,YAAYC;EACpBC,SAAS,CAAC,EAAEC,MAAMC,IAAG,MAAE;AACrB,UAAMC,MAAMD,MAAM,IAAIE,MAAMF,GAAAA,EAAKC,IAAG,IAAKE;AACzC,WAAO;MACLC,MAAM;QACJC,QAAQC,OAAOC,WAAW;UAAER;UAAMC;UAAKC;QAAI,CAAA;MAC7C;IACF;EACF;AACF,CAAA,CAAA;",
6
+ "names": ["Chess", "Capabilities", "contributes", "createResolver", "create", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "ChessAction", "Create", "resolve", "name", "fen", "pgn", "Chess", "undefined", "data", "object", "create", "ChessType"]
7
+ }