@dxos/plugin-kanban 0.8.4-main.bc674ce → 0.8.4-main.bcb3aa67d6

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 (232) hide show
  1. package/dist/lib/browser/blueprints/index.mjs +23 -4
  2. package/dist/lib/browser/blueprints/index.mjs.map +4 -4
  3. package/dist/lib/browser/chunk-A3PBV3S5.mjs +105 -0
  4. package/dist/lib/browser/chunk-A3PBV3S5.mjs.map +7 -0
  5. package/dist/lib/browser/delete-card-VPNVIWOA.mjs +32 -0
  6. package/dist/lib/browser/delete-card-VPNVIWOA.mjs.map +7 -0
  7. package/dist/lib/browser/delete-card-field-4HHF2GYX.mjs +50 -0
  8. package/dist/lib/browser/delete-card-field-4HHF2GYX.mjs.map +7 -0
  9. package/dist/lib/browser/index.mjs +84 -61
  10. package/dist/lib/browser/index.mjs.map +4 -4
  11. package/dist/lib/browser/meta.json +1 -1
  12. package/dist/lib/browser/operations/index.mjs +13 -0
  13. package/dist/lib/browser/operations/index.mjs.map +7 -0
  14. package/dist/lib/browser/restore-card-4GG2RYKR.mjs +29 -0
  15. package/dist/lib/browser/restore-card-4GG2RYKR.mjs.map +7 -0
  16. package/dist/lib/browser/restore-card-field-3T26ACYX.mjs +48 -0
  17. package/dist/lib/browser/restore-card-field-3T26ACYX.mjs.map +7 -0
  18. package/dist/lib/browser/types/index.mjs +94 -8
  19. package/dist/lib/browser/types/index.mjs.map +4 -4
  20. package/dist/lib/node-esm/blueprints/index.mjs +23 -4
  21. package/dist/lib/node-esm/blueprints/index.mjs.map +4 -4
  22. package/dist/lib/node-esm/chunk-6LELYA2G.mjs +106 -0
  23. package/dist/lib/node-esm/chunk-6LELYA2G.mjs.map +7 -0
  24. package/dist/lib/node-esm/delete-card-5PW5OMFN.mjs +33 -0
  25. package/dist/lib/node-esm/delete-card-5PW5OMFN.mjs.map +7 -0
  26. package/dist/lib/node-esm/delete-card-field-KPJU2AQ3.mjs +51 -0
  27. package/dist/lib/node-esm/delete-card-field-KPJU2AQ3.mjs.map +7 -0
  28. package/dist/lib/node-esm/index.mjs +84 -61
  29. package/dist/lib/node-esm/index.mjs.map +4 -4
  30. package/dist/lib/node-esm/meta.json +1 -1
  31. package/dist/lib/node-esm/operations/index.mjs +14 -0
  32. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  33. package/dist/lib/node-esm/restore-card-X2TKMU5A.mjs +30 -0
  34. package/dist/lib/node-esm/restore-card-X2TKMU5A.mjs.map +7 -0
  35. package/dist/lib/node-esm/restore-card-field-IUTL4RTR.mjs +49 -0
  36. package/dist/lib/node-esm/restore-card-field-IUTL4RTR.mjs.map +7 -0
  37. package/dist/lib/node-esm/types/index.mjs +94 -8
  38. package/dist/lib/node-esm/types/index.mjs.map +4 -4
  39. package/dist/types/src/KanbanPlugin.d.ts.map +1 -1
  40. package/dist/types/src/blueprints/index.d.ts +1 -1
  41. package/dist/types/src/blueprints/index.d.ts.map +1 -1
  42. package/dist/types/src/blueprints/kanban-blueprint.d.ts +3 -21
  43. package/dist/types/src/blueprints/kanban-blueprint.d.ts.map +1 -1
  44. package/dist/types/src/capabilities/{artifact-definition/artifact-definition.d.ts → artifact-definition.d.ts} +1 -1
  45. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -0
  46. package/dist/types/src/capabilities/blueprint-definition.d.ts +6 -0
  47. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  48. package/dist/types/src/capabilities/index.d.ts +6 -3
  49. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  50. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  51. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  52. package/dist/types/src/capabilities/react-surface.d.ts +5 -0
  53. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  54. package/dist/types/src/capabilities/undo-mappings.d.ts +5 -0
  55. package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -0
  56. package/dist/types/src/components/KanbanBoard/KanbanBoard.d.ts +65 -0
  57. package/dist/types/src/components/KanbanBoard/KanbanBoard.d.ts.map +1 -0
  58. package/dist/types/src/components/KanbanBoard/KanbanBoard.stories.d.ts +72 -0
  59. package/dist/types/src/components/KanbanBoard/KanbanBoard.stories.d.ts.map +1 -0
  60. package/dist/types/src/components/KanbanBoard/KanbanCard.d.ts +10 -0
  61. package/dist/types/src/components/KanbanBoard/KanbanCard.d.ts.map +1 -0
  62. package/dist/types/src/components/KanbanBoard/KanbanColumn.d.ts +9 -0
  63. package/dist/types/src/components/KanbanBoard/KanbanColumn.d.ts.map +1 -0
  64. package/dist/types/src/components/KanbanBoard/index.d.ts +2 -0
  65. package/dist/types/src/components/KanbanBoard/index.d.ts.map +1 -0
  66. package/dist/types/src/components/index.d.ts +1 -2
  67. package/dist/types/src/components/index.d.ts.map +1 -1
  68. package/dist/types/src/containers/KanbanContainer/KanbanContainer.d.ts +6 -0
  69. package/dist/types/src/containers/KanbanContainer/KanbanContainer.d.ts.map +1 -0
  70. package/dist/types/src/containers/KanbanContainer/KanbanContainer.stories.d.ts +79 -0
  71. package/dist/types/src/containers/KanbanContainer/KanbanContainer.stories.d.ts.map +1 -0
  72. package/dist/types/src/containers/KanbanContainer/index.d.ts +3 -0
  73. package/dist/types/src/containers/KanbanContainer/index.d.ts.map +1 -0
  74. package/dist/types/src/containers/KanbanViewEditor/KanbanViewEditor.d.ts +6 -0
  75. package/dist/types/src/containers/KanbanViewEditor/KanbanViewEditor.d.ts.map +1 -0
  76. package/dist/types/src/containers/KanbanViewEditor/index.d.ts +3 -0
  77. package/dist/types/src/containers/KanbanViewEditor/index.d.ts.map +1 -0
  78. package/dist/types/src/containers/index.d.ts +4 -0
  79. package/dist/types/src/containers/index.d.ts.map +1 -0
  80. package/dist/types/src/hooks/index.d.ts +6 -0
  81. package/dist/types/src/hooks/index.d.ts.map +1 -0
  82. package/dist/types/src/hooks/useEchoChangeCallback.d.ts +13 -0
  83. package/dist/types/src/hooks/useEchoChangeCallback.d.ts.map +1 -0
  84. package/dist/types/src/hooks/useKanbanBoardModel.d.ts +16 -0
  85. package/dist/types/src/hooks/useKanbanBoardModel.d.ts.map +1 -0
  86. package/dist/types/src/hooks/useKanbanBoardModel.test.d.ts +2 -0
  87. package/dist/types/src/hooks/useKanbanBoardModel.test.d.ts.map +1 -0
  88. package/dist/types/src/hooks/useKanbanColumnEventHandler.d.ts +22 -0
  89. package/dist/types/src/hooks/useKanbanColumnEventHandler.d.ts.map +1 -0
  90. package/dist/types/src/hooks/useKanbanItemEventHandler.d.ts +19 -0
  91. package/dist/types/src/hooks/useKanbanItemEventHandler.d.ts.map +1 -0
  92. package/dist/types/src/hooks/useProjectionModel.d.ts +15 -0
  93. package/dist/types/src/hooks/useProjectionModel.d.ts.map +1 -0
  94. package/dist/types/src/operations/definitions.d.ts +52 -0
  95. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  96. package/dist/types/src/operations/delete-card-field.d.ts +5 -0
  97. package/dist/types/src/operations/delete-card-field.d.ts.map +1 -0
  98. package/dist/types/src/operations/delete-card.d.ts +5 -0
  99. package/dist/types/src/operations/delete-card.d.ts.map +1 -0
  100. package/dist/types/src/operations/index.d.ts +4 -0
  101. package/dist/types/src/operations/index.d.ts.map +1 -0
  102. package/dist/types/src/operations/restore-card-field.d.ts +5 -0
  103. package/dist/types/src/operations/restore-card-field.d.ts.map +1 -0
  104. package/dist/types/src/operations/restore-card.d.ts +5 -0
  105. package/dist/types/src/operations/restore-card.d.ts.map +1 -0
  106. package/dist/types/src/playwright/board-manager.d.ts +5 -0
  107. package/dist/types/src/playwright/board-manager.d.ts.map +1 -0
  108. package/dist/types/src/playwright/playwright.config.d.ts +3 -0
  109. package/dist/types/src/playwright/playwright.config.d.ts.map +1 -0
  110. package/dist/types/src/playwright/smoke.spec.d.ts +2 -0
  111. package/dist/types/src/playwright/smoke.spec.d.ts.map +1 -0
  112. package/dist/types/src/testing/KanbanCardTileSimple.d.ts +7 -0
  113. package/dist/types/src/testing/KanbanCardTileSimple.d.ts.map +1 -0
  114. package/dist/types/src/testing/index.d.ts +2 -0
  115. package/dist/types/src/testing/index.d.ts.map +1 -0
  116. package/dist/types/src/translations.d.ts +48 -32
  117. package/dist/types/src/translations.d.ts.map +1 -1
  118. package/dist/types/src/types/Kanban.d.ts +37 -0
  119. package/dist/types/src/types/Kanban.d.ts.map +1 -0
  120. package/dist/types/src/types/constants.d.ts +6 -0
  121. package/dist/types/src/types/constants.d.ts.map +1 -0
  122. package/dist/types/src/types/index.d.ts +2 -0
  123. package/dist/types/src/types/index.d.ts.map +1 -1
  124. package/dist/types/src/types/schema.d.ts +0 -103
  125. package/dist/types/src/types/schema.d.ts.map +1 -1
  126. package/dist/types/src/types/types.d.ts +28 -0
  127. package/dist/types/src/types/types.d.ts.map +1 -1
  128. package/dist/types/src/util/arrangement.d.ts +68 -0
  129. package/dist/types/src/util/arrangement.d.ts.map +1 -0
  130. package/dist/types/src/util/arrangement.test.d.ts +2 -0
  131. package/dist/types/src/util/arrangement.test.d.ts.map +1 -0
  132. package/dist/types/src/util/index.d.ts +2 -0
  133. package/dist/types/src/util/index.d.ts.map +1 -0
  134. package/dist/types/tsconfig.tsbuildinfo +1 -1
  135. package/package.json +64 -42
  136. package/src/KanbanPlugin.tsx +35 -23
  137. package/src/blueprints/index.ts +1 -1
  138. package/src/blueprints/kanban-blueprint.ts +12 -8
  139. package/src/capabilities/{artifact-definition/artifact-definition.ts → artifact-definition.ts} +10 -9
  140. package/src/capabilities/blueprint-definition.ts +17 -0
  141. package/src/capabilities/index.ts +10 -3
  142. package/src/capabilities/operation-handler.ts +14 -0
  143. package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +15 -15
  144. package/src/capabilities/undo-mappings.ts +34 -0
  145. package/src/components/KanbanBoard/KanbanBoard.stories.tsx +142 -0
  146. package/src/components/KanbanBoard/KanbanBoard.tsx +193 -0
  147. package/src/components/KanbanBoard/KanbanCard.tsx +86 -0
  148. package/src/components/KanbanBoard/KanbanColumn.tsx +69 -0
  149. package/src/components/KanbanBoard/index.ts +5 -0
  150. package/src/components/index.ts +1 -2
  151. package/src/{components → containers/KanbanContainer}/KanbanContainer.stories.tsx +70 -87
  152. package/src/containers/KanbanContainer/KanbanContainer.tsx +96 -0
  153. package/src/containers/KanbanContainer/index.ts +7 -0
  154. package/src/{components → containers/KanbanViewEditor}/KanbanViewEditor.tsx +23 -19
  155. package/src/containers/KanbanViewEditor/index.ts +7 -0
  156. package/src/containers/index.ts +8 -0
  157. package/src/hooks/index.ts +9 -0
  158. package/src/hooks/useEchoChangeCallback.ts +30 -0
  159. package/src/hooks/useKanbanBoardModel.test.ts +235 -0
  160. package/src/hooks/useKanbanBoardModel.ts +143 -0
  161. package/src/hooks/useKanbanColumnEventHandler.ts +106 -0
  162. package/src/hooks/useKanbanItemEventHandler.ts +133 -0
  163. package/src/hooks/useProjectionModel.ts +58 -0
  164. package/src/meta.ts +1 -1
  165. package/src/operations/definitions.ts +63 -0
  166. package/src/operations/delete-card-field.ts +47 -0
  167. package/src/operations/delete-card.ts +23 -0
  168. package/src/operations/index.ts +12 -0
  169. package/src/operations/restore-card-field.ts +41 -0
  170. package/src/operations/restore-card.ts +21 -0
  171. package/src/playwright/board-manager.ts +13 -0
  172. package/src/playwright/playwright.config.ts +19 -0
  173. package/src/playwright/smoke.spec.ts +107 -0
  174. package/src/testing/KanbanCardTileSimple.tsx +82 -0
  175. package/src/testing/index.ts +5 -0
  176. package/src/translations.ts +26 -18
  177. package/src/types/Kanban.ts +71 -0
  178. package/src/types/constants.ts +9 -0
  179. package/src/types/index.ts +2 -0
  180. package/src/types/schema.ts +0 -76
  181. package/src/types/types.ts +35 -0
  182. package/src/util/arrangement.test.ts +208 -0
  183. package/src/util/arrangement.ts +167 -0
  184. package/src/util/index.ts +5 -0
  185. package/dist/lib/browser/blueprint-definition-T2544VMJ.mjs +0 -17
  186. package/dist/lib/browser/blueprint-definition-T2544VMJ.mjs.map +0 -7
  187. package/dist/lib/browser/chunk-L6N4ZDZ7.mjs +0 -35
  188. package/dist/lib/browser/chunk-L6N4ZDZ7.mjs.map +0 -7
  189. package/dist/lib/browser/chunk-XYQO4VL7.mjs +0 -150
  190. package/dist/lib/browser/chunk-XYQO4VL7.mjs.map +0 -7
  191. package/dist/lib/browser/operation-resolver-UEJHX42A.mjs +0 -162
  192. package/dist/lib/browser/operation-resolver-UEJHX42A.mjs.map +0 -7
  193. package/dist/lib/browser/react-surface-LFUJAPRL.mjs +0 -236
  194. package/dist/lib/browser/react-surface-LFUJAPRL.mjs.map +0 -7
  195. package/dist/lib/node-esm/blueprint-definition-APJQFSHJ.mjs +0 -18
  196. package/dist/lib/node-esm/blueprint-definition-APJQFSHJ.mjs.map +0 -7
  197. package/dist/lib/node-esm/chunk-NN6JMKIT.mjs +0 -152
  198. package/dist/lib/node-esm/chunk-NN6JMKIT.mjs.map +0 -7
  199. package/dist/lib/node-esm/chunk-ZHRMUKTF.mjs +0 -36
  200. package/dist/lib/node-esm/chunk-ZHRMUKTF.mjs.map +0 -7
  201. package/dist/lib/node-esm/operation-resolver-5RPWHZCF.mjs +0 -163
  202. package/dist/lib/node-esm/operation-resolver-5RPWHZCF.mjs.map +0 -7
  203. package/dist/lib/node-esm/react-surface-7TSGBRJL.mjs +0 -237
  204. package/dist/lib/node-esm/react-surface-7TSGBRJL.mjs.map +0 -7
  205. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +0 -1
  206. package/dist/types/src/capabilities/artifact-definition/index.d.ts +0 -3
  207. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +0 -1
  208. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +0 -9
  209. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +0 -1
  210. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +0 -3
  211. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +0 -1
  212. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  213. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  214. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  215. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  216. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  217. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  218. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +0 -5
  219. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  220. package/dist/types/src/components/KanbanContainer.d.ts +0 -6
  221. package/dist/types/src/components/KanbanContainer.d.ts.map +0 -1
  222. package/dist/types/src/components/KanbanContainer.stories.d.ts +0 -75
  223. package/dist/types/src/components/KanbanContainer.stories.d.ts.map +0 -1
  224. package/dist/types/src/components/KanbanViewEditor.d.ts +0 -8
  225. package/dist/types/src/components/KanbanViewEditor.d.ts.map +0 -1
  226. package/src/capabilities/artifact-definition/index.ts +0 -7
  227. package/src/capabilities/blueprint-definition/blueprint-definition.ts +0 -23
  228. package/src/capabilities/blueprint-definition/index.ts +0 -7
  229. package/src/capabilities/operation-resolver/index.ts +0 -7
  230. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -133
  231. package/src/capabilities/react-surface/index.ts +0 -7
  232. package/src/components/KanbanContainer.tsx +0 -86
@@ -1,8 +1,27 @@
1
- import {
2
- kanban_blueprint_exports
3
- } from "../chunk-L6N4ZDZ7.mjs";
4
1
  import "../chunk-J5LGTIGS.mjs";
2
+
3
+ // src/blueprints/kanban-blueprint.ts
4
+ import { Blueprint, Template } from "@dxos/blueprints";
5
+ import { trim } from "@dxos/util";
6
+ var BLUEPRINT_KEY = "org.dxos.blueprint.kanban";
7
+ var make = () => Blueprint.make({
8
+ key: BLUEPRINT_KEY,
9
+ name: "Kanban",
10
+ tools: Blueprint.toolDefinitions({
11
+ tools: []
12
+ }),
13
+ instructions: Template.make({
14
+ source: trim`
15
+ You can create and update kanban boards to show data in sorted columns defined by schema.
16
+ `
17
+ })
18
+ });
19
+ var blueprint = {
20
+ key: BLUEPRINT_KEY,
21
+ make
22
+ };
23
+ var kanban_blueprint_default = blueprint;
5
24
  export {
6
- kanban_blueprint_exports as KanbanBlueprint
25
+ kanban_blueprint_default as KanbanBlueprint
7
26
  };
8
27
  //# 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/kanban-blueprint.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { type AppCapabilities } from '@dxos/app-toolkit';\nimport { Blueprint, Template } from '@dxos/blueprints';\nimport { trim } from '@dxos/util';\n\nconst BLUEPRINT_KEY = 'org.dxos.blueprint.kanban';\n\nconst make = () =>\n Blueprint.make({\n key: BLUEPRINT_KEY,\n name: 'Kanban',\n tools: Blueprint.toolDefinitions({ tools: [] }),\n instructions: Template.make({\n source: trim`\n You can create and update kanban boards to show data in sorted columns defined by schema.\n `,\n }),\n });\n\nconst blueprint: AppCapabilities.BlueprintDefinition = {\n key: BLUEPRINT_KEY,\n make,\n};\n\nexport default blueprint;\n"],
5
+ "mappings": ";;;AAKA,SAASA,WAAWC,gBAAgB;AACpC,SAASC,YAAY;AAErB,IAAMC,gBAAgB;AAEtB,IAAMC,OAAO,MACXC,UAAUD,KAAK;EACbE,KAAKH;EACLI,MAAM;EACNC,OAAOH,UAAUI,gBAAgB;IAAED,OAAO,CAAA;EAAG,CAAA;EAC7CE,cAAcC,SAASP,KAAK;IAC1BQ,QAAQC;;;EAGV,CAAA;AACF,CAAA;AAEF,IAAMC,YAAiD;EACrDR,KAAKH;EACLC;AACF;AAEA,IAAA,2BAAeU;",
6
+ "names": ["Blueprint", "Template", "trim", "BLUEPRINT_KEY", "make", "Blueprint", "key", "name", "tools", "toolDefinitions", "instructions", "Template", "source", "trim", "blueprint"]
7
7
  }
@@ -0,0 +1,105 @@
1
+ import {
2
+ __export
3
+ } from "./chunk-J5LGTIGS.mjs";
4
+
5
+ // src/operations/definitions.ts
6
+ var definitions_exports = {};
7
+ __export(definitions_exports, {
8
+ DeleteCard: () => DeleteCard,
9
+ DeleteCardField: () => DeleteCardField,
10
+ DeleteCardFieldOutput: () => DeleteCardFieldOutput,
11
+ DeleteCardOutput: () => DeleteCardOutput,
12
+ RestoreCard: () => RestoreCard,
13
+ RestoreCardField: () => RestoreCardField
14
+ });
15
+ import * as Schema from "effect/Schema";
16
+ import { Capability } from "@dxos/app-framework";
17
+ import { View } from "@dxos/echo";
18
+ import { Operation } from "@dxos/operation";
19
+ import { meta } from "#meta";
20
+ var KANBAN_OPERATION = `${meta.id}.operation`;
21
+ var DeleteCardFieldOutput = Schema.Struct({
22
+ field: View.FieldSchema.annotations({
23
+ description: "The deleted field schema."
24
+ }),
25
+ props: Schema.Any.annotations({
26
+ description: "The deleted field properties."
27
+ }),
28
+ index: Schema.Number.annotations({
29
+ description: "The index the field was at."
30
+ })
31
+ });
32
+ var DeleteCardField = Operation.make({
33
+ meta: {
34
+ key: `${KANBAN_OPERATION}.delete-card-field`,
35
+ name: "Delete Card Field"
36
+ },
37
+ services: [
38
+ Capability.Service
39
+ ],
40
+ input: Schema.Struct({
41
+ view: View.View,
42
+ fieldId: Schema.String
43
+ }),
44
+ output: DeleteCardFieldOutput
45
+ });
46
+ var DeleteCardOutput = Schema.Struct({
47
+ card: Schema.Any.annotations({
48
+ description: "The deleted card."
49
+ })
50
+ });
51
+ var DeleteCard = Operation.make({
52
+ meta: {
53
+ key: `${KANBAN_OPERATION}.delete-card`,
54
+ name: "Delete Card"
55
+ },
56
+ input: Schema.Struct({
57
+ card: Schema.Any
58
+ }),
59
+ output: DeleteCardOutput
60
+ });
61
+ var RestoreCardField = Operation.make({
62
+ meta: {
63
+ key: `${KANBAN_OPERATION}.restore-card-field`,
64
+ name: "Restore Card Field"
65
+ },
66
+ services: [
67
+ Capability.Service
68
+ ],
69
+ input: Schema.Struct({
70
+ view: View.View.annotations({
71
+ description: "The view to restore the field to."
72
+ }),
73
+ field: View.FieldSchema.annotations({
74
+ description: "The field schema to restore."
75
+ }),
76
+ props: Schema.Any.annotations({
77
+ description: "The field properties to restore."
78
+ }),
79
+ index: Schema.Number.annotations({
80
+ description: "The index to restore the field at."
81
+ })
82
+ }),
83
+ output: Schema.Void
84
+ });
85
+ var RestoreCard = Operation.make({
86
+ meta: {
87
+ key: `${KANBAN_OPERATION}.restore-card`,
88
+ name: "Restore Card"
89
+ },
90
+ input: Schema.Struct({
91
+ card: Schema.Any.annotations({
92
+ description: "The card to restore."
93
+ })
94
+ }),
95
+ output: Schema.Void
96
+ });
97
+
98
+ export {
99
+ DeleteCardField,
100
+ DeleteCard,
101
+ RestoreCardField,
102
+ RestoreCard,
103
+ definitions_exports
104
+ };
105
+ //# sourceMappingURL=chunk-A3PBV3S5.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/definitions.ts"],
4
+ "sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Schema from 'effect/Schema';\n\nimport { Capability } from '@dxos/app-framework';\nimport { View } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\n\nimport { meta } from '#meta';\n\nconst KANBAN_OPERATION = `${meta.id}.operation`;\n\nexport const DeleteCardFieldOutput = Schema.Struct({\n field: View.FieldSchema.annotations({ description: 'The deleted field schema.' }),\n props: Schema.Any.annotations({ description: 'The deleted field properties.' }),\n index: Schema.Number.annotations({ description: 'The index the field was at.' }),\n});\n\nexport type DeleteCardFieldOutput = Schema.Schema.Type<typeof DeleteCardFieldOutput>;\n\nexport const DeleteCardField = Operation.make({\n meta: { key: `${KANBAN_OPERATION}.delete-card-field`, name: 'Delete Card Field' },\n services: [Capability.Service],\n input: Schema.Struct({\n view: View.View,\n fieldId: Schema.String,\n }),\n output: DeleteCardFieldOutput,\n});\n\nexport const DeleteCardOutput = Schema.Struct({\n card: Schema.Any.annotations({ description: 'The deleted card.' }),\n});\n\nexport type DeleteCardOutput = Schema.Schema.Type<typeof DeleteCardOutput>;\n\nexport const DeleteCard = Operation.make({\n meta: { key: `${KANBAN_OPERATION}.delete-card`, name: 'Delete Card' },\n input: Schema.Struct({\n card: Schema.Any,\n }),\n output: DeleteCardOutput,\n});\n\nexport const RestoreCardField = Operation.make({\n meta: { key: `${KANBAN_OPERATION}.restore-card-field`, name: 'Restore Card Field' },\n services: [Capability.Service],\n input: Schema.Struct({\n view: View.View.annotations({ description: 'The view to restore the field to.' }),\n field: View.FieldSchema.annotations({ description: 'The field schema to restore.' }),\n props: Schema.Any.annotations({ description: 'The field properties to restore.' }),\n index: Schema.Number.annotations({ description: 'The index to restore the field at.' }),\n }),\n output: Schema.Void,\n});\n\nexport const RestoreCard = Operation.make({\n meta: { key: `${KANBAN_OPERATION}.restore-card`, name: 'Restore Card' },\n input: Schema.Struct({\n card: Schema.Any.annotations({ description: 'The card to restore.' }),\n }),\n output: Schema.Void,\n});\n"],
5
+ "mappings": ";;;;;AAAA;;;;;;;;;AAEA,YAAYA,YAAY;AAExB,SAASC,kBAAkB;AAC3B,SAASC,YAAY;AACrB,SAASC,iBAAiB;AAE1B,SAASC,YAAY;AAErB,IAAMC,mBAAmB,GAAGC,KAAKC,EAAE;AAE5B,IAAMC,wBAA+BC,cAAO;EACjDC,OAAOC,KAAKC,YAAYC,YAAY;IAAEC,aAAa;EAA4B,CAAA;EAC/EC,OAAcC,WAAIH,YAAY;IAAEC,aAAa;EAAgC,CAAA;EAC7EG,OAAcC,cAAOL,YAAY;IAAEC,aAAa;EAA8B,CAAA;AAChF,CAAA;AAIO,IAAMK,kBAAkBC,UAAUC,KAAK;EAC5Cf,MAAM;IAAEgB,KAAK,GAAGjB,gBAAAA;IAAsCkB,MAAM;EAAoB;EAChFC,UAAU;IAACC,WAAWC;;EACtBC,OAAclB,cAAO;IACnBmB,MAAMjB,KAAKA;IACXkB,SAAgBC;EAClB,CAAA;EACAC,QAAQvB;AACV,CAAA;AAEO,IAAMwB,mBAA0BvB,cAAO;EAC5CwB,MAAajB,WAAIH,YAAY;IAAEC,aAAa;EAAoB,CAAA;AAClE,CAAA;AAIO,IAAMoB,aAAad,UAAUC,KAAK;EACvCf,MAAM;IAAEgB,KAAK,GAAGjB,gBAAAA;IAAgCkB,MAAM;EAAc;EACpEI,OAAclB,cAAO;IACnBwB,MAAajB;EACf,CAAA;EACAe,QAAQC;AACV,CAAA;AAEO,IAAMG,mBAAmBf,UAAUC,KAAK;EAC7Cf,MAAM;IAAEgB,KAAK,GAAGjB,gBAAAA;IAAuCkB,MAAM;EAAqB;EAClFC,UAAU;IAACC,WAAWC;;EACtBC,OAAclB,cAAO;IACnBmB,MAAMjB,KAAKA,KAAKE,YAAY;MAAEC,aAAa;IAAoC,CAAA;IAC/EJ,OAAOC,KAAKC,YAAYC,YAAY;MAAEC,aAAa;IAA+B,CAAA;IAClFC,OAAcC,WAAIH,YAAY;MAAEC,aAAa;IAAmC,CAAA;IAChFG,OAAcC,cAAOL,YAAY;MAAEC,aAAa;IAAqC,CAAA;EACvF,CAAA;EACAiB,QAAeK;AACjB,CAAA;AAEO,IAAMC,cAAcjB,UAAUC,KAAK;EACxCf,MAAM;IAAEgB,KAAK,GAAGjB,gBAAAA;IAAiCkB,MAAM;EAAe;EACtEI,OAAclB,cAAO;IACnBwB,MAAajB,WAAIH,YAAY;MAAEC,aAAa;IAAuB,CAAA;EACrE,CAAA;EACAiB,QAAeK;AACjB,CAAA;",
6
+ "names": ["Schema", "Capability", "View", "Operation", "meta", "KANBAN_OPERATION", "meta", "id", "DeleteCardFieldOutput", "Struct", "field", "View", "FieldSchema", "annotations", "description", "props", "Any", "index", "Number", "DeleteCardField", "Operation", "make", "key", "name", "services", "Capability", "Service", "input", "view", "fieldId", "String", "output", "DeleteCardOutput", "card", "DeleteCard", "RestoreCardField", "Void", "RestoreCard"]
7
+ }
@@ -0,0 +1,32 @@
1
+ import {
2
+ DeleteCard
3
+ } from "./chunk-A3PBV3S5.mjs";
4
+ import "./chunk-J5LGTIGS.mjs";
5
+
6
+ // src/operations/delete-card.ts
7
+ import * as Effect from "effect/Effect";
8
+ import { Obj } from "@dxos/echo";
9
+ import { invariant } from "@dxos/invariant";
10
+ import { Operation } from "@dxos/operation";
11
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-kanban/src/operations/delete-card.ts";
12
+ var handler = DeleteCard.pipe(Operation.withHandler(({ card }) => Effect.sync(() => {
13
+ const db = Obj.getDatabase(card);
14
+ invariant(db, void 0, {
15
+ F: __dxlog_file,
16
+ L: 15,
17
+ S: void 0,
18
+ A: [
19
+ "db",
20
+ ""
21
+ ]
22
+ });
23
+ db.remove(card);
24
+ return {
25
+ card
26
+ };
27
+ })));
28
+ var delete_card_default = handler;
29
+ export {
30
+ delete_card_default as default
31
+ };
32
+ //# sourceMappingURL=delete-card-VPNVIWOA.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/delete-card.ts"],
4
+ "sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Effect from 'effect/Effect';\n\nimport { Obj } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\nimport { Operation } from '@dxos/operation';\n\nimport { DeleteCard } from './definitions';\n\nconst handler: Operation.WithHandler<typeof DeleteCard> = DeleteCard.pipe(\n Operation.withHandler(({ card }) =>\n Effect.sync(() => {\n const db = Obj.getDatabase(card);\n invariant(db);\n db.remove(card);\n\n return { card };\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;AAEA,YAAYA,YAAY;AAExB,SAASC,WAAW;AACpB,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;;AAI1B,IAAMC,UAAoDC,WAAWC,KACnEC,UAAUC,YAAY,CAAC,EAAEC,KAAI,MACpBC,YAAK,MAAA;AACV,QAAMC,KAAKC,IAAIC,YAAYJ,IAAAA;AAC3BK,YAAUH,IAAAA,QAAAA;;;;;;;;;AACVA,KAAGI,OAAON,IAAAA;AAEV,SAAO;IAAEA;EAAK;AAChB,CAAA,CAAA,CAAA;AAIJ,IAAA,sBAAeL;",
6
+ "names": ["Effect", "Obj", "invariant", "Operation", "handler", "DeleteCard", "pipe", "Operation", "withHandler", "card", "sync", "db", "Obj", "getDatabase", "invariant", "remove"]
7
+ }
@@ -0,0 +1,50 @@
1
+ import {
2
+ DeleteCardField
3
+ } from "./chunk-A3PBV3S5.mjs";
4
+ import "./chunk-J5LGTIGS.mjs";
5
+
6
+ // src/operations/delete-card-field.ts
7
+ import * as Effect from "effect/Effect";
8
+ import { Capabilities, Capability } from "@dxos/app-framework";
9
+ import { JsonSchema, Obj } from "@dxos/echo";
10
+ import { invariant } from "@dxos/invariant";
11
+ import { Operation } from "@dxos/operation";
12
+ import { ProjectionModel, createEchoChangeCallback, getTypenameFromQuery } from "@dxos/schema";
13
+ var __dxlog_file = "/__w/dxos/dxos/packages/plugins/plugin-kanban/src/operations/delete-card-field.ts";
14
+ var handler = DeleteCardField.pipe(Operation.withHandler(Effect.fnUntraced(function* ({ view, fieldId }) {
15
+ const registry = yield* Capability.get(Capabilities.AtomRegistry);
16
+ const db = Obj.getDatabase(view);
17
+ invariant(db, "Database not found", {
18
+ F: __dxlog_file,
19
+ L: 19,
20
+ S: this,
21
+ A: [
22
+ "db",
23
+ "'Database not found'"
24
+ ]
25
+ });
26
+ const schema = yield* Effect.promise(() => db.schemaRegistry.query({
27
+ typename: getTypenameFromQuery(view.query.ast),
28
+ location: [
29
+ "database",
30
+ "runtime"
31
+ ]
32
+ }).first());
33
+ const projection = new ProjectionModel({
34
+ registry,
35
+ view,
36
+ baseSchema: JsonSchema.toJsonSchema(schema),
37
+ change: createEchoChangeCallback(view, schema)
38
+ });
39
+ const result = projection.deleteFieldProjection(fieldId);
40
+ return {
41
+ field: result.deleted.field,
42
+ props: result.deleted.props,
43
+ index: result.index
44
+ };
45
+ })));
46
+ var delete_card_field_default = handler;
47
+ export {
48
+ delete_card_field_default as default
49
+ };
50
+ //# sourceMappingURL=delete-card-field-4HHF2GYX.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/operations/delete-card-field.ts"],
4
+ "sourcesContent": ["// Copyright 2025 DXOS.org\n\nimport * as Effect from 'effect/Effect';\n\nimport { Capabilities, Capability } from '@dxos/app-framework';\nimport { JsonSchema, Obj } from '@dxos/echo';\nimport { type EchoSchema } from '@dxos/echo/internal';\nimport { invariant } from '@dxos/invariant';\nimport { Operation } from '@dxos/operation';\nimport { ProjectionModel, createEchoChangeCallback, getTypenameFromQuery } from '@dxos/schema';\n\nimport { DeleteCardField } from './definitions';\n\nconst handler: Operation.WithHandler<typeof DeleteCardField> = DeleteCardField.pipe(\n Operation.withHandler(\n Effect.fnUntraced(function* ({ view, fieldId }) {\n const registry = yield* Capability.get(Capabilities.AtomRegistry);\n const db = Obj.getDatabase(view);\n invariant(db, 'Database not found');\n const schema = yield* Effect.promise(() =>\n db.schemaRegistry\n .query({\n typename: getTypenameFromQuery(view.query.ast)!,\n location: ['database', 'runtime'],\n })\n .first(),\n );\n\n const projection = new ProjectionModel({\n registry,\n view,\n baseSchema: JsonSchema.toJsonSchema(schema),\n change: createEchoChangeCallback(view, schema as EchoSchema),\n });\n\n const result = projection.deleteFieldProjection(fieldId);\n\n return {\n field: result.deleted.field,\n props: result.deleted.props,\n index: result.index,\n };\n }),\n ),\n);\n\nexport default handler;\n"],
5
+ "mappings": ";;;;;;AAEA,YAAYA,YAAY;AAExB,SAASC,cAAcC,kBAAkB;AACzC,SAASC,YAAYC,WAAW;AAEhC,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,iBAAiBC,0BAA0BC,4BAA4B;;AAIhF,IAAMC,UAAyDC,gBAAgBC,KAC7EC,UAAUC,YACDC,kBAAW,WAAW,EAAEC,MAAMC,QAAO,GAAE;AAC5C,QAAMC,WAAW,OAAOC,WAAWC,IAAIC,aAAaC,YAAY;AAChE,QAAMC,KAAKC,IAAIC,YAAYT,IAAAA;AAC3BU,YAAUH,IAAI,sBAAA;;;;;;;;;AACd,QAAMI,SAAS,OAAcC,eAAQ,MACnCL,GAAGM,eACAC,MAAM;IACLC,UAAUC,qBAAqBhB,KAAKc,MAAMG,GAAG;IAC7CC,UAAU;MAAC;MAAY;;EACzB,CAAA,EACCC,MAAK,CAAA;AAGV,QAAMC,aAAa,IAAIC,gBAAgB;IACrCnB;IACAF;IACAsB,YAAYC,WAAWC,aAAab,MAAAA;IACpCc,QAAQC,yBAAyB1B,MAAMW,MAAAA;EACzC,CAAA;AAEA,QAAMgB,SAASP,WAAWQ,sBAAsB3B,OAAAA;AAEhD,SAAO;IACL4B,OAAOF,OAAOG,QAAQD;IACtBE,OAAOJ,OAAOG,QAAQC;IACtBC,OAAOL,OAAOK;EAChB;AACF,CAAA,CAAA,CAAA;AAIJ,IAAA,4BAAetC;",
6
+ "names": ["Effect", "Capabilities", "Capability", "JsonSchema", "Obj", "invariant", "Operation", "ProjectionModel", "createEchoChangeCallback", "getTypenameFromQuery", "handler", "DeleteCardField", "pipe", "Operation", "withHandler", "fnUntraced", "view", "fieldId", "registry", "Capability", "get", "Capabilities", "AtomRegistry", "db", "Obj", "getDatabase", "invariant", "schema", "promise", "schemaRegistry", "query", "typename", "getTypenameFromQuery", "ast", "location", "first", "projection", "ProjectionModel", "baseSchema", "JsonSchema", "toJsonSchema", "change", "createEchoChangeCallback", "result", "deleteFieldProjection", "field", "deleted", "props", "index"]
7
+ }
@@ -1,95 +1,118 @@
1
- import {
2
- CreateKanbanSchema,
3
- meta
4
- } from "./chunk-XYQO4VL7.mjs";
5
1
  import "./chunk-J5LGTIGS.mjs";
6
2
 
3
+ // src/meta.ts
4
+ import { trim } from "@dxos/util";
5
+ var meta = {
6
+ id: "org.dxos.plugin.kanban",
7
+ name: "Kanban",
8
+ description: trim`
9
+ Visual project management using customizable kanban boards to track workflow progress.
10
+ Organize table data into columns, drag and drop items between stages, and trigger automations based on status changes.
11
+ `,
12
+ icon: "ph--kanban--regular",
13
+ iconHue: "green",
14
+ source: "https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-kanban",
15
+ screenshots: [
16
+ "https://dxos.network/plugin-details-kanban-dark.png"
17
+ ]
18
+ };
19
+
7
20
  // src/KanbanPlugin.tsx
8
21
  import * as Effect from "effect/Effect";
9
- import { Common, Plugin } from "@dxos/app-framework";
10
- import { Type as Type2 } from "@dxos/echo";
11
- import { translations as kanbanTranslations } from "@dxos/react-ui-kanban";
12
- import { Kanban as Kanban2 } from "@dxos/react-ui-kanban/types";
13
- import { View } from "@dxos/schema";
14
-
15
- // src/capabilities/blueprint-definition/index.ts
16
- import { Capability } from "@dxos/app-framework";
17
- var BlueprintDefinition = Capability.lazy("BlueprintDefinition", () => import("./blueprint-definition-T2544VMJ.mjs"));
18
-
19
- // src/capabilities/operation-resolver/index.ts
20
- import { Capability as Capability2 } from "@dxos/app-framework";
21
- var OperationResolver = Capability2.lazy("OperationResolver", () => import("./operation-resolver-UEJHX42A.mjs"));
22
-
23
- // src/capabilities/react-surface/index.ts
24
- import { Capability as Capability3 } from "@dxos/app-framework";
25
- var ReactSurface = Capability3.lazy("ReactSurface", () => import("./react-surface-LFUJAPRL.mjs"));
22
+ import * as Option from "effect/Option";
23
+ import { Plugin } from "@dxos/app-framework";
24
+ import { AppPlugin } from "@dxos/app-toolkit";
25
+ import { Annotation, Type as Type2 } from "@dxos/echo";
26
+ import { Operation } from "@dxos/operation";
27
+ import { SpaceOperation } from "@dxos/plugin-space/operations";
28
+ import { ViewModel } from "@dxos/schema";
29
+ import { meta as meta3 } from "#meta";
26
30
 
27
31
  // src/translations.ts
28
32
  import { Type } from "@dxos/echo";
29
- import { Kanban } from "@dxos/react-ui-kanban/types";
33
+ import { meta as meta2 } from "#meta";
34
+ import { Kanban } from "#types";
30
35
  var translations = [
31
36
  {
32
37
  "en-US": {
33
38
  [Type.getTypename(Kanban.Kanban)]: {
34
- "typename label": "Kanban",
35
- "typename label_zero": "Kanbans",
36
- "typename label_one": "Kanban",
37
- "typename label_other": "Kanbans",
38
- "object name placeholder": "New kanban",
39
- "rename object label": "Rename kanban",
40
- "delete object label": "Delete kanban",
41
- "object deleted label": "Kanban deleted"
39
+ "typename.label": "Kanban",
40
+ "typename.label_zero": "Kanbans",
41
+ "typename.label_one": "Kanban",
42
+ "typename.label_other": "Kanbans",
43
+ "object-name.placeholder": "New kanban",
44
+ "add-object.label": "Add kanban",
45
+ "rename-object.label": "Rename kanban",
46
+ "delete-object.label": "Delete kanban",
47
+ "object-deleted.label": "Kanban deleted"
42
48
  },
43
- [meta.id]: {
44
- "plugin name": "Kanban",
45
- "kanban title label": "Title",
46
- "column title label": "Column title",
47
- "column title placeholder": "New column",
48
- "add column label": "Add column",
49
- "delete column label": "Delete column",
50
- "card field deleted label": "Card field deleted",
51
- "card deleted label": "Card deleted"
49
+ [meta2.id]: {
50
+ "action-menu.label": "Actions",
51
+ "plugin.name": "Kanban",
52
+ "kanban-title.label": "Title",
53
+ "column-title.label": "Column title",
54
+ "column-title.placeholder": "New column",
55
+ "add-column.label": "Add column",
56
+ "add-card.label": "Add card",
57
+ "new-column-name.label": "New column name",
58
+ "remove-card.label": "Remove card",
59
+ "remove-empty-column.label": "Remove empty column",
60
+ "column-drag-handle.label": "Drag to rearrange",
61
+ "delete-column.label": "Delete column",
62
+ "card-field-deleted.label": "Card field deleted",
63
+ "card-deleted.label": "Card deleted",
64
+ "select-pivot.placeholder": "Select a pivot column in board settings to display columns."
52
65
  }
53
66
  }
54
67
  }
55
68
  ];
56
69
 
57
70
  // src/KanbanPlugin.tsx
58
- var KanbanPlugin = Plugin.define(meta).pipe(Common.Plugin.addTranslationsModule({
59
- translations: [
60
- ...translations,
61
- ...kanbanTranslations
62
- ]
63
- }), Common.Plugin.addMetadataModule({
71
+ import { CreateKanbanSchema, Kanban as Kanban2 } from "#types";
72
+ import { BlueprintDefinition, OperationHandler, UndoMappings, ReactSurface } from "#capabilities";
73
+ var KanbanPlugin = Plugin.define(meta3).pipe(AppPlugin.addBlueprintDefinitionModule({
74
+ activate: BlueprintDefinition
75
+ }), AppPlugin.addMetadataModule({
64
76
  metadata: {
65
77
  id: Type2.getTypename(Kanban2.Kanban),
66
78
  metadata: {
67
- icon: "ph--kanban--regular",
68
- iconHue: "green",
79
+ icon: Annotation.IconAnnotation.get(Kanban2.Kanban).pipe(Option.getOrThrow).icon,
80
+ iconHue: Annotation.IconAnnotation.get(Kanban2.Kanban).pipe(Option.getOrThrow).hue ?? "white",
69
81
  inputSchema: CreateKanbanSchema,
70
- createObject: (props, { db }) => Effect.promise(async () => {
71
- const { view } = await View.makeFromDatabase({
72
- db,
73
- typename: props.typename,
74
- pivotFieldName: props.initialPivotColumn
82
+ createObject: (props, options) => Effect.gen(function* () {
83
+ const object = yield* Effect.promise(async () => {
84
+ const { view } = await ViewModel.makeFromDatabase({
85
+ db: options.db,
86
+ typename: props.typename,
87
+ pivotFieldName: props.initialPivotColumn
88
+ });
89
+ return Kanban2.make({
90
+ name: props.name,
91
+ view
92
+ });
75
93
  });
76
- return Kanban2.make({
77
- name: props.name,
78
- view
94
+ return yield* Operation.invoke(SpaceOperation.AddObject, {
95
+ object,
96
+ target: options.target,
97
+ hidden: true,
98
+ targetNodeId: options.targetNodeId
79
99
  });
80
100
  })
81
101
  }
82
102
  }
83
- }), Common.Plugin.addSchemaModule({
103
+ }), AppPlugin.addOperationHandlerModule({
104
+ activate: OperationHandler
105
+ }), AppPlugin.addOperationHandlerModule({
106
+ id: "undo-mappings",
107
+ activate: UndoMappings
108
+ }), AppPlugin.addSchemaModule({
84
109
  schema: [
85
110
  Kanban2.Kanban
86
111
  ]
87
- }), Common.Plugin.addSurfaceModule({
112
+ }), AppPlugin.addSurfaceModule({
88
113
  activate: ReactSurface
89
- }), Common.Plugin.addOperationResolverModule({
90
- activate: OperationResolver
91
- }), Common.Plugin.addBlueprintDefinitionModule({
92
- activate: BlueprintDefinition
114
+ }), AppPlugin.addTranslationsModule({
115
+ translations
93
116
  }), Plugin.make);
94
117
  export {
95
118
  KanbanPlugin,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../src/KanbanPlugin.tsx", "../../../src/capabilities/blueprint-definition/index.ts", "../../../src/capabilities/operation-resolver/index.ts", "../../../src/capabilities/react-surface/index.ts", "../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\n\nimport { Common, Plugin } from '@dxos/app-framework';\nimport { Type } from '@dxos/echo';\nimport { type CreateObject } from '@dxos/plugin-space/types';\nimport { translations as kanbanTranslations } from '@dxos/react-ui-kanban';\nimport { Kanban } from '@dxos/react-ui-kanban/types';\nimport { View } from '@dxos/schema';\n\nimport { BlueprintDefinition, OperationResolver, ReactSurface } from './capabilities';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { CreateKanbanSchema } from './types';\n\nexport const KanbanPlugin = Plugin.define(meta).pipe(\n Common.Plugin.addTranslationsModule({ translations: [...translations, ...kanbanTranslations] }),\n Common.Plugin.addMetadataModule({\n metadata: {\n id: Type.getTypename(Kanban.Kanban),\n metadata: {\n icon: 'ph--kanban--regular',\n iconHue: 'green',\n inputSchema: CreateKanbanSchema,\n createObject: ((props, { db }) =>\n Effect.promise(async () => {\n const { view } = await View.makeFromDatabase({\n db,\n typename: props.typename,\n pivotFieldName: props.initialPivotColumn,\n });\n return Kanban.make({ name: props.name, view });\n })) satisfies CreateObject,\n },\n },\n }),\n Common.Plugin.addSchemaModule({ schema: [Kanban.Kanban] }),\n Common.Plugin.addSurfaceModule({ activate: ReactSurface }),\n Common.Plugin.addOperationResolverModule({ activate: OperationResolver }),\n Common.Plugin.addBlueprintDefinitionModule({ activate: BlueprintDefinition }),\n Plugin.make,\n);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const BlueprintDefinition = Capability.lazy('BlueprintDefinition', () => import('./blueprint-definition'));\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const OperationResolver = Capability.lazy('OperationResolver', () => import('./operation-resolver'));\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Capability } from '@dxos/app-framework';\n\nexport const ReactSurface = Capability.lazy('ReactSurface', () => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Type } from '@dxos/echo';\nimport { type Resource } from '@dxos/react-ui';\nimport { Kanban } from '@dxos/react-ui-kanban/types';\n\nimport { meta } from './meta';\n\nexport const translations = [\n {\n 'en-US': {\n [Type.getTypename(Kanban.Kanban)]: {\n 'typename label': 'Kanban',\n 'typename label_zero': 'Kanbans',\n 'typename label_one': 'Kanban',\n 'typename label_other': 'Kanbans',\n 'object name placeholder': 'New kanban',\n 'rename object label': 'Rename kanban',\n 'delete object label': 'Delete kanban',\n 'object deleted label': 'Kanban deleted',\n },\n [meta.id]: {\n 'plugin name': 'Kanban',\n 'kanban title label': 'Title',\n 'column title label': 'Column title',\n 'column title placeholder': 'New column',\n 'add column label': 'Add column',\n 'delete column label': 'Delete column',\n 'card field deleted label': 'Card field deleted',\n 'card deleted label': 'Card deleted',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
- "mappings": ";;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,QAAQC,cAAc;AAC/B,SAASC,QAAAA,aAAY;AAErB,SAASC,gBAAgBC,0BAA0B;AACnD,SAASC,UAAAA,eAAc;AACvB,SAASC,YAAY;;;ACPrB,SAASC,kBAAkB;AAEpB,IAAMC,sBAAsBC,WAAWC,KAAK,uBAAuB,MAAM,OAAO,qCAAA,CAAA;;;ACFvF,SAASC,cAAAA,mBAAkB;AAEpB,IAAMC,oBAAoBC,YAAWC,KAAK,qBAAqB,MAAM,OAAO,mCAAA,CAAA;;;ACFnF,SAASC,cAAAA,mBAAkB;AAEpB,IAAMC,eAAeC,YAAWC,KAAK,gBAAgB,MAAM,OAAO,8BAAA,CAAA;;;ACFzE,SAASC,YAAY;AAErB,SAASC,cAAc;AAIhB,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,KAAKC,YAAYC,OAAOA,MAAM,CAAA,GAAI;QACjC,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;MAC1B;MACA,CAACC,KAAKC,EAAE,GAAG;QACT,eAAe;QACf,sBAAsB;QACtB,sBAAsB;QACtB,4BAA4B;QAC5B,oBAAoB;QACpB,uBAAuB;QACvB,4BAA4B;QAC5B,sBAAsB;MACxB;IACF;EACF;;;;AJhBK,IAAMC,eAAeC,OAAOC,OAAOC,IAAAA,EAAMC,KAC9CC,OAAOJ,OAAOK,sBAAsB;EAAEC,cAAc;OAAIA;OAAiBC;;AAAoB,CAAA,GAC7FH,OAAOJ,OAAOQ,kBAAkB;EAC9BC,UAAU;IACRC,IAAIC,MAAKC,YAAYC,QAAOA,MAAM;IAClCJ,UAAU;MACRK,MAAM;MACNC,SAAS;MACTC,aAAaC;MACbC,cAAe,CAACC,OAAO,EAAEC,GAAE,MAClBC,eAAQ,YAAA;AACb,cAAM,EAAEC,KAAI,IAAK,MAAMC,KAAKC,iBAAiB;UAC3CJ;UACAK,UAAUN,MAAMM;UAChBC,gBAAgBP,MAAMQ;QACxB,CAAA;AACA,eAAOd,QAAOe,KAAK;UAAEC,MAAMV,MAAMU;UAAMP;QAAK,CAAA;MAC9C,CAAA;IACJ;EACF;AACF,CAAA,GACAlB,OAAOJ,OAAO8B,gBAAgB;EAAEC,QAAQ;IAAClB,QAAOA;;AAAQ,CAAA,GACxDT,OAAOJ,OAAOgC,iBAAiB;EAAEC,UAAUC;AAAa,CAAA,GACxD9B,OAAOJ,OAAOmC,2BAA2B;EAAEF,UAAUG;AAAkB,CAAA,GACvEhC,OAAOJ,OAAOqC,6BAA6B;EAAEJ,UAAUK;AAAoB,CAAA,GAC3EtC,OAAO4B,IAAI;",
6
- "names": ["Effect", "Common", "Plugin", "Type", "translations", "kanbanTranslations", "Kanban", "View", "Capability", "BlueprintDefinition", "Capability", "lazy", "Capability", "OperationResolver", "Capability", "lazy", "Capability", "ReactSurface", "Capability", "lazy", "Type", "Kanban", "translations", "Type", "getTypename", "Kanban", "meta", "id", "KanbanPlugin", "Plugin", "define", "meta", "pipe", "Common", "addTranslationsModule", "translations", "kanbanTranslations", "addMetadataModule", "metadata", "id", "Type", "getTypename", "Kanban", "icon", "iconHue", "inputSchema", "CreateKanbanSchema", "createObject", "props", "db", "promise", "view", "View", "makeFromDatabase", "typename", "pivotFieldName", "initialPivotColumn", "make", "name", "addSchemaModule", "schema", "addSurfaceModule", "activate", "ReactSurface", "addOperationResolverModule", "OperationResolver", "addBlueprintDefinitionModule", "BlueprintDefinition"]
3
+ "sources": ["../../../src/meta.ts", "../../../src/KanbanPlugin.tsx", "../../../src/translations.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { type Plugin } from '@dxos/app-framework';\nimport { trim } from '@dxos/util';\n\nexport const meta: Plugin.Meta = {\n id: 'org.dxos.plugin.kanban',\n name: 'Kanban',\n description: trim`\n Visual project management using customizable kanban boards to track workflow progress.\n Organize table data into columns, drag and drop items between stages, and trigger automations based on status changes.\n `,\n icon: 'ph--kanban--regular',\n iconHue: 'green',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/plugin-kanban',\n screenshots: ['https://dxos.network/plugin-details-kanban-dark.png'],\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport * as Effect from 'effect/Effect';\nimport * as Option from 'effect/Option';\n\nimport { Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\nimport { Annotation, Type } from '@dxos/echo';\nimport { Operation } from '@dxos/operation';\nimport { type CreateObject } from '@dxos/plugin-space/types';\nimport { SpaceOperation } from '@dxos/plugin-space/operations';\nimport { ViewModel } from '@dxos/schema';\n\nimport { meta } from '#meta';\nimport { translations } from './translations';\nimport { CreateKanbanSchema, Kanban } from '#types';\n\nimport { BlueprintDefinition, OperationHandler, UndoMappings, ReactSurface } from '#capabilities';\n\nexport const KanbanPlugin = Plugin.define(meta).pipe(\n AppPlugin.addBlueprintDefinitionModule({ activate: BlueprintDefinition }),\n AppPlugin.addMetadataModule({\n metadata: {\n id: Type.getTypename(Kanban.Kanban),\n metadata: {\n icon: Annotation.IconAnnotation.get(Kanban.Kanban).pipe(Option.getOrThrow).icon,\n iconHue: Annotation.IconAnnotation.get(Kanban.Kanban).pipe(Option.getOrThrow).hue ?? 'white',\n inputSchema: CreateKanbanSchema,\n createObject: ((props, options) =>\n Effect.gen(function* () {\n const object = yield* Effect.promise(async () => {\n const { view } = await ViewModel.makeFromDatabase({\n db: options.db,\n typename: props.typename,\n pivotFieldName: props.initialPivotColumn,\n });\n return Kanban.make({ name: props.name, view });\n });\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.addOperationHandlerModule({ activate: OperationHandler }),\n AppPlugin.addOperationHandlerModule({ id: 'undo-mappings', activate: UndoMappings }),\n AppPlugin.addSchemaModule({ schema: [Kanban.Kanban] }),\n AppPlugin.addSurfaceModule({ activate: ReactSurface }),\n AppPlugin.addTranslationsModule({ translations }),\n Plugin.make,\n);\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { Type } from '@dxos/echo';\nimport { type Resource } from '@dxos/react-ui';\n\nimport { meta } from '#meta';\nimport { Kanban } from '#types';\n\nexport const translations = [\n {\n 'en-US': {\n [Type.getTypename(Kanban.Kanban)]: {\n 'typename.label': 'Kanban',\n 'typename.label_zero': 'Kanbans',\n 'typename.label_one': 'Kanban',\n 'typename.label_other': 'Kanbans',\n 'object-name.placeholder': 'New kanban',\n 'add-object.label': 'Add kanban',\n 'rename-object.label': 'Rename kanban',\n 'delete-object.label': 'Delete kanban',\n 'object-deleted.label': 'Kanban deleted',\n },\n [meta.id]: {\n 'action-menu.label': 'Actions',\n 'plugin.name': 'Kanban',\n 'kanban-title.label': 'Title',\n 'column-title.label': 'Column title',\n 'column-title.placeholder': 'New column',\n 'add-column.label': 'Add column',\n 'add-card.label': 'Add card',\n 'new-column-name.label': 'New column name',\n 'remove-card.label': 'Remove card',\n 'remove-empty-column.label': 'Remove empty column',\n 'column-drag-handle.label': 'Drag to rearrange',\n 'delete-column.label': 'Delete column',\n 'card-field-deleted.label': 'Card field deleted',\n 'card-deleted.label': 'Card deleted',\n 'select-pivot.placeholder': 'Select a pivot column in board settings to display columns.',\n },\n },\n },\n] as const satisfies Resource[];\n"],
5
+ "mappings": ";;;AAKA,SAASA,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaC;;;;EAIbC,MAAM;EACNC,SAAS;EACTC,QAAQ;EACRC,aAAa;IAAC;;AAChB;;;ACdA,YAAYC,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,cAAc;AACvB,SAASC,iBAAiB;AAC1B,SAASC,YAAYC,QAAAA,aAAY;AACjC,SAASC,iBAAiB;AAE1B,SAASC,sBAAsB;AAC/B,SAASC,iBAAiB;AAE1B,SAASC,QAAAA,aAAY;;;ACXrB,SAASC,YAAY;AAGrB,SAASC,QAAAA,aAAY;AACrB,SAASC,cAAc;AAEhB,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,KAAKC,YAAYC,OAAOA,MAAM,CAAA,GAAI;QACjC,kBAAkB;QAClB,uBAAuB;QACvB,sBAAsB;QACtB,wBAAwB;QACxB,2BAA2B;QAC3B,oBAAoB;QACpB,uBAAuB;QACvB,uBAAuB;QACvB,wBAAwB;MAC1B;MACA,CAACC,MAAKC,EAAE,GAAG;QACT,qBAAqB;QACrB,eAAe;QACf,sBAAsB;QACtB,sBAAsB;QACtB,4BAA4B;QAC5B,oBAAoB;QACpB,kBAAkB;QAClB,yBAAyB;QACzB,qBAAqB;QACrB,6BAA6B;QAC7B,4BAA4B;QAC5B,uBAAuB;QACvB,4BAA4B;QAC5B,sBAAsB;QACtB,4BAA4B;MAC9B;IACF;EACF;;;;ADzBF,SAASC,oBAAoBC,UAAAA,eAAc;AAE3C,SAASC,qBAAqBC,kBAAkBC,cAAcC,oBAAoB;AAE3E,IAAMC,eAAeC,OAAOC,OAAOC,KAAAA,EAAMC,KAC9CC,UAAUC,6BAA6B;EAAEC,UAAUC;AAAoB,CAAA,GACvEH,UAAUI,kBAAkB;EAC1BC,UAAU;IACRC,IAAIC,MAAKC,YAAYC,QAAOA,MAAM;IAClCJ,UAAU;MACRK,MAAMC,WAAWC,eAAeC,IAAIJ,QAAOA,MAAM,EAAEV,KAAYe,iBAAU,EAAEJ;MAC3EK,SAASJ,WAAWC,eAAeC,IAAIJ,QAAOA,MAAM,EAAEV,KAAYe,iBAAU,EAAEE,OAAO;MACrFC,aAAaC;MACbC,cAAe,CAACC,OAAOC,YACdC,WAAI,aAAA;AACT,cAAMC,SAAS,OAAcC,eAAQ,YAAA;AACnC,gBAAM,EAAEC,KAAI,IAAK,MAAMC,UAAUC,iBAAiB;YAChDC,IAAIP,QAAQO;YACZC,UAAUT,MAAMS;YAChBC,gBAAgBV,MAAMW;UACxB,CAAA;AACA,iBAAOtB,QAAOuB,KAAK;YAAEC,MAAMb,MAAMa;YAAMR;UAAK,CAAA;QAC9C,CAAA;AACA,eAAO,OAAOS,UAAUC,OAAOC,eAAeC,WAAW;UACvDd;UACAe,QAAQjB,QAAQiB;UAChBC,QAAQ;UACRC,cAAcnB,QAAQmB;QACxB,CAAA;MACF,CAAA;IACJ;EACF;AACF,CAAA,GACAxC,UAAUyC,0BAA0B;EAAEvC,UAAUwC;AAAiB,CAAA,GACjE1C,UAAUyC,0BAA0B;EAAEnC,IAAI;EAAiBJ,UAAUyC;AAAa,CAAA,GAClF3C,UAAU4C,gBAAgB;EAAEC,QAAQ;IAACpC,QAAOA;;AAAQ,CAAA,GACpDT,UAAU8C,iBAAiB;EAAE5C,UAAU6C;AAAa,CAAA,GACpD/C,UAAUgD,sBAAsB;EAAEC;AAAa,CAAA,GAC/CrD,OAAOoC,IAAI;",
6
+ "names": ["trim", "meta", "id", "name", "description", "trim", "icon", "iconHue", "source", "screenshots", "Effect", "Option", "Plugin", "AppPlugin", "Annotation", "Type", "Operation", "SpaceOperation", "ViewModel", "meta", "Type", "meta", "Kanban", "translations", "Type", "getTypename", "Kanban", "meta", "id", "CreateKanbanSchema", "Kanban", "BlueprintDefinition", "OperationHandler", "UndoMappings", "ReactSurface", "KanbanPlugin", "Plugin", "define", "meta", "pipe", "AppPlugin", "addBlueprintDefinitionModule", "activate", "BlueprintDefinition", "addMetadataModule", "metadata", "id", "Type", "getTypename", "Kanban", "icon", "Annotation", "IconAnnotation", "get", "getOrThrow", "iconHue", "hue", "inputSchema", "CreateKanbanSchema", "createObject", "props", "options", "gen", "object", "promise", "view", "ViewModel", "makeFromDatabase", "db", "typename", "pivotFieldName", "initialPivotColumn", "make", "name", "Operation", "invoke", "SpaceOperation", "AddObject", "target", "hidden", "targetNodeId", "addOperationHandlerModule", "OperationHandler", "UndoMappings", "addSchemaModule", "schema", "addSurfaceModule", "ReactSurface", "addTranslationsModule", "translations"]
7
7
  }