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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/dist/lib/browser/blueprints/index.mjs +22 -3
  2. package/dist/lib/browser/blueprints/index.mjs.map +4 -4
  3. package/dist/lib/browser/chunk-T32TEM55.mjs +105 -0
  4. package/dist/lib/browser/chunk-T32TEM55.mjs.map +7 -0
  5. package/dist/lib/browser/delete-card-7OSCNCW2.mjs +24 -0
  6. package/dist/lib/browser/delete-card-7OSCNCW2.mjs.map +7 -0
  7. package/dist/lib/browser/delete-card-field-NSB2RE3Z.mjs +42 -0
  8. package/dist/lib/browser/delete-card-field-NSB2RE3Z.mjs.map +7 -0
  9. package/dist/lib/browser/index.mjs +55 -71
  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-FO3WERIE.mjs +21 -0
  15. package/dist/lib/browser/restore-card-FO3WERIE.mjs.map +7 -0
  16. package/dist/lib/browser/restore-card-field-U5XYEEOW.mjs +40 -0
  17. package/dist/lib/browser/restore-card-field-U5XYEEOW.mjs.map +7 -0
  18. package/dist/lib/browser/translations.mjs +44 -0
  19. package/dist/lib/browser/translations.mjs.map +7 -0
  20. package/dist/lib/browser/types/index.mjs +151 -11
  21. package/dist/lib/browser/types/index.mjs.map +4 -4
  22. package/dist/lib/node-esm/blueprints/index.mjs +22 -3
  23. package/dist/lib/node-esm/blueprints/index.mjs.map +4 -4
  24. package/dist/lib/node-esm/chunk-W2RNFBMZ.mjs +106 -0
  25. package/dist/lib/node-esm/chunk-W2RNFBMZ.mjs.map +7 -0
  26. package/dist/lib/node-esm/delete-card-ZIREL6HN.mjs +25 -0
  27. package/dist/lib/node-esm/delete-card-ZIREL6HN.mjs.map +7 -0
  28. package/dist/lib/node-esm/delete-card-field-IPTEGVPP.mjs +43 -0
  29. package/dist/lib/node-esm/delete-card-field-IPTEGVPP.mjs.map +7 -0
  30. package/dist/lib/node-esm/index.mjs +55 -71
  31. package/dist/lib/node-esm/index.mjs.map +4 -4
  32. package/dist/lib/node-esm/meta.json +1 -1
  33. package/dist/lib/node-esm/operations/index.mjs +14 -0
  34. package/dist/lib/node-esm/operations/index.mjs.map +7 -0
  35. package/dist/lib/node-esm/restore-card-WJJ4YB7K.mjs +22 -0
  36. package/dist/lib/node-esm/restore-card-WJJ4YB7K.mjs.map +7 -0
  37. package/dist/lib/node-esm/restore-card-field-L24WJXAW.mjs +41 -0
  38. package/dist/lib/node-esm/restore-card-field-L24WJXAW.mjs.map +7 -0
  39. package/dist/lib/node-esm/translations.mjs +45 -0
  40. package/dist/lib/node-esm/translations.mjs.map +7 -0
  41. package/dist/lib/node-esm/types/index.mjs +151 -11
  42. package/dist/lib/node-esm/types/index.mjs.map +4 -4
  43. package/dist/types/src/KanbanPlugin.d.ts.map +1 -1
  44. package/dist/types/src/blueprints/kanban-blueprint.d.ts +2 -2
  45. package/dist/types/src/blueprints/kanban-blueprint.d.ts.map +1 -1
  46. package/dist/types/src/capabilities/artifact-definition.d.ts.map +1 -0
  47. package/dist/types/src/capabilities/blueprint-definition.d.ts +5 -0
  48. package/dist/types/src/capabilities/blueprint-definition.d.ts.map +1 -0
  49. package/dist/types/src/capabilities/index.d.ts +7 -3
  50. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  51. package/dist/types/src/capabilities/migrations.d.ts +5 -0
  52. package/dist/types/src/capabilities/migrations.d.ts.map +1 -0
  53. package/dist/types/src/capabilities/operation-handler.d.ts +6 -0
  54. package/dist/types/src/capabilities/operation-handler.d.ts.map +1 -0
  55. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -0
  56. package/dist/types/src/capabilities/undo-mappings.d.ts +5 -0
  57. package/dist/types/src/capabilities/undo-mappings.d.ts.map +1 -0
  58. package/dist/types/src/components/KanbanBoard/KanbanBoard.d.ts +15 -16
  59. package/dist/types/src/components/KanbanBoard/KanbanBoard.d.ts.map +1 -1
  60. package/dist/types/src/components/KanbanBoard/KanbanBoard.stories.d.ts +48 -46
  61. package/dist/types/src/components/KanbanBoard/KanbanBoard.stories.d.ts.map +1 -1
  62. package/dist/types/src/components/KanbanBoard/KanbanCard.d.ts.map +1 -1
  63. package/dist/types/src/components/KanbanBoard/KanbanColumn.d.ts +1 -1
  64. package/dist/types/src/components/KanbanBoard/KanbanColumn.d.ts.map +1 -1
  65. package/dist/types/src/containers/KanbanContainer/KanbanContainer.d.ts +4 -4
  66. package/dist/types/src/containers/KanbanContainer/KanbanContainer.d.ts.map +1 -1
  67. package/dist/types/src/containers/KanbanContainer/KanbanContainer.stories.d.ts +48 -46
  68. package/dist/types/src/containers/KanbanContainer/KanbanContainer.stories.d.ts.map +1 -1
  69. package/dist/types/src/containers/KanbanContainer/index.d.ts +1 -2
  70. package/dist/types/src/containers/KanbanContainer/index.d.ts.map +1 -1
  71. package/dist/types/src/containers/KanbanSettings/KanbanSettings.d.ts +13 -0
  72. package/dist/types/src/containers/KanbanSettings/KanbanSettings.d.ts.map +1 -0
  73. package/dist/types/src/containers/KanbanSettings/index.d.ts +2 -0
  74. package/dist/types/src/containers/KanbanSettings/index.d.ts.map +1 -0
  75. package/dist/types/src/containers/index.d.ts +1 -1
  76. package/dist/types/src/containers/index.d.ts.map +1 -1
  77. package/dist/types/src/hooks/index.d.ts +1 -0
  78. package/dist/types/src/hooks/index.d.ts.map +1 -1
  79. package/dist/types/src/hooks/useEchoChangeCallback.d.ts +1 -1
  80. package/dist/types/src/hooks/useEchoChangeCallback.d.ts.map +1 -1
  81. package/dist/types/src/hooks/useItemsProjection.d.ts +10 -0
  82. package/dist/types/src/hooks/useItemsProjection.d.ts.map +1 -0
  83. package/dist/types/src/hooks/useKanbanBoardModel.browser.test.d.ts +2 -0
  84. package/dist/types/src/hooks/useKanbanBoardModel.browser.test.d.ts.map +1 -0
  85. package/dist/types/src/hooks/useKanbanBoardModel.d.ts +1 -1
  86. package/dist/types/src/hooks/useKanbanBoardModel.d.ts.map +1 -1
  87. package/dist/types/src/hooks/useKanbanColumnEventHandler.d.ts +2 -2
  88. package/dist/types/src/hooks/useKanbanColumnEventHandler.d.ts.map +1 -1
  89. package/dist/types/src/hooks/useKanbanItemEventHandler.d.ts +2 -2
  90. package/dist/types/src/hooks/useKanbanItemEventHandler.d.ts.map +1 -1
  91. package/dist/types/src/hooks/useProjectionModel.d.ts +1 -1
  92. package/dist/types/src/hooks/useProjectionModel.d.ts.map +1 -1
  93. package/dist/types/src/operations/definitions.d.ts +52 -0
  94. package/dist/types/src/operations/definitions.d.ts.map +1 -0
  95. package/dist/types/src/operations/delete-card-field.d.ts +5 -0
  96. package/dist/types/src/operations/delete-card-field.d.ts.map +1 -0
  97. package/dist/types/src/operations/delete-card.d.ts +5 -0
  98. package/dist/types/src/operations/delete-card.d.ts.map +1 -0
  99. package/dist/types/src/operations/index.d.ts +4 -0
  100. package/dist/types/src/operations/index.d.ts.map +1 -0
  101. package/dist/types/src/operations/restore-card-field.d.ts +5 -0
  102. package/dist/types/src/operations/restore-card-field.d.ts.map +1 -0
  103. package/dist/types/src/operations/restore-card.d.ts +5 -0
  104. package/dist/types/src/operations/restore-card.d.ts.map +1 -0
  105. package/dist/types/src/playwright/board-manager.d.ts.map +1 -1
  106. package/dist/types/src/playwright/playwright.config.d.ts.map +1 -1
  107. package/dist/types/src/testing/KanbanCardTileSimple.d.ts +4 -2
  108. package/dist/types/src/testing/KanbanCardTileSimple.d.ts.map +1 -1
  109. package/dist/types/src/translations.d.ts +48 -46
  110. package/dist/types/src/translations.d.ts.map +1 -1
  111. package/dist/types/src/types/Kanban.d.ts +78 -6
  112. package/dist/types/src/types/Kanban.d.ts.map +1 -1
  113. package/dist/types/src/types/constants.d.ts +3 -3
  114. package/dist/types/src/types/constants.d.ts.map +1 -1
  115. package/dist/types/src/types/migrations.test.d.ts +2 -0
  116. package/dist/types/src/types/migrations.test.d.ts.map +1 -0
  117. package/dist/types/src/types/schema.d.ts +15 -104
  118. package/dist/types/src/types/schema.d.ts.map +1 -1
  119. package/dist/types/src/types/types.d.ts +2 -2
  120. package/dist/types/src/util/arrangement.d.ts +8 -4
  121. package/dist/types/src/util/arrangement.d.ts.map +1 -1
  122. package/dist/types/tsconfig.tsbuildinfo +1 -1
  123. package/package.json +64 -52
  124. package/src/KanbanPlugin.tsx +32 -15
  125. package/src/blueprints/kanban-blueprint.ts +4 -8
  126. package/src/capabilities/{artifact-definition/artifact-definition.ts → artifact-definition.ts} +4 -4
  127. package/src/capabilities/{blueprint-definition/blueprint-definition.ts → blueprint-definition.ts} +1 -1
  128. package/src/capabilities/index.ts +11 -3
  129. package/src/capabilities/migrations.ts +35 -0
  130. package/src/capabilities/operation-handler.ts +14 -0
  131. package/src/capabilities/{react-surface/react-surface.tsx → react-surface.tsx} +22 -13
  132. package/src/capabilities/undo-mappings.ts +34 -0
  133. package/src/components/KanbanBoard/KanbanBoard.stories.tsx +20 -16
  134. package/src/components/KanbanBoard/KanbanBoard.tsx +32 -18
  135. package/src/components/KanbanBoard/KanbanCard.tsx +33 -22
  136. package/src/components/KanbanBoard/KanbanColumn.tsx +12 -10
  137. package/src/containers/KanbanContainer/KanbanContainer.stories.tsx +39 -27
  138. package/src/containers/KanbanContainer/KanbanContainer.tsx +118 -27
  139. package/src/containers/KanbanContainer/index.ts +1 -3
  140. package/src/containers/KanbanSettings/KanbanSettings.tsx +94 -0
  141. package/src/containers/KanbanSettings/index.ts +5 -0
  142. package/src/containers/index.ts +1 -1
  143. package/src/hooks/index.ts +1 -0
  144. package/src/hooks/useEchoChangeCallback.ts +3 -3
  145. package/src/hooks/useItemsProjection.ts +44 -0
  146. package/src/hooks/{useKanbanBoardModel.test.ts → useKanbanBoardModel.browser.test.ts} +5 -5
  147. package/src/hooks/useKanbanBoardModel.ts +20 -6
  148. package/src/hooks/useKanbanColumnEventHandler.ts +1 -1
  149. package/src/hooks/useKanbanItemEventHandler.ts +1 -1
  150. package/src/hooks/useProjectionModel.ts +3 -3
  151. package/src/meta.ts +1 -1
  152. package/src/operations/definitions.ts +63 -0
  153. package/src/operations/delete-card-field.ts +47 -0
  154. package/src/operations/delete-card.ts +23 -0
  155. package/src/operations/index.ts +12 -0
  156. package/src/operations/restore-card-field.ts +41 -0
  157. package/src/operations/restore-card.ts +21 -0
  158. package/src/testing/KanbanCardTileSimple.tsx +25 -19
  159. package/src/translations.ts +26 -25
  160. package/src/types/Kanban.ts +98 -14
  161. package/src/types/migrations.test.ts +83 -0
  162. package/src/types/schema.ts +19 -77
  163. package/src/types/types.ts +2 -2
  164. package/src/util/arrangement.test.ts +11 -1
  165. package/src/util/arrangement.ts +25 -15
  166. package/dist/lib/browser/KanbanContainer-BCXSJ6KS.mjs +0 -304
  167. package/dist/lib/browser/KanbanContainer-BCXSJ6KS.mjs.map +0 -7
  168. package/dist/lib/browser/KanbanViewEditor-IH5CJ6BW.mjs +0 -66
  169. package/dist/lib/browser/KanbanViewEditor-IH5CJ6BW.mjs.map +0 -7
  170. package/dist/lib/browser/blueprint-definition-HFEKGFJK.mjs +0 -17
  171. package/dist/lib/browser/blueprint-definition-HFEKGFJK.mjs.map +0 -7
  172. package/dist/lib/browser/chunk-QSWCFMEB.mjs +0 -385
  173. package/dist/lib/browser/chunk-QSWCFMEB.mjs.map +0 -7
  174. package/dist/lib/browser/chunk-RNFIFE2P.mjs +0 -213
  175. package/dist/lib/browser/chunk-RNFIFE2P.mjs.map +0 -7
  176. package/dist/lib/browser/chunk-TLYZSC7O.mjs +0 -29
  177. package/dist/lib/browser/chunk-TLYZSC7O.mjs.map +0 -7
  178. package/dist/lib/browser/operation-resolver-BRA2OHUE.mjs +0 -162
  179. package/dist/lib/browser/operation-resolver-BRA2OHUE.mjs.map +0 -7
  180. package/dist/lib/browser/react-surface-FOMOGFVW.mjs +0 -99
  181. package/dist/lib/browser/react-surface-FOMOGFVW.mjs.map +0 -7
  182. package/dist/lib/node-esm/KanbanContainer-EHRTLE7M.mjs +0 -305
  183. package/dist/lib/node-esm/KanbanContainer-EHRTLE7M.mjs.map +0 -7
  184. package/dist/lib/node-esm/KanbanViewEditor-WDACFC35.mjs +0 -67
  185. package/dist/lib/node-esm/KanbanViewEditor-WDACFC35.mjs.map +0 -7
  186. package/dist/lib/node-esm/blueprint-definition-NARBX32U.mjs +0 -18
  187. package/dist/lib/node-esm/blueprint-definition-NARBX32U.mjs.map +0 -7
  188. package/dist/lib/node-esm/chunk-4AWDHQVY.mjs +0 -214
  189. package/dist/lib/node-esm/chunk-4AWDHQVY.mjs.map +0 -7
  190. package/dist/lib/node-esm/chunk-CSL3HF2X.mjs +0 -386
  191. package/dist/lib/node-esm/chunk-CSL3HF2X.mjs.map +0 -7
  192. package/dist/lib/node-esm/chunk-X3UJUQIV.mjs +0 -31
  193. package/dist/lib/node-esm/chunk-X3UJUQIV.mjs.map +0 -7
  194. package/dist/lib/node-esm/operation-resolver-UEQ64LCN.mjs +0 -163
  195. package/dist/lib/node-esm/operation-resolver-UEQ64LCN.mjs.map +0 -7
  196. package/dist/lib/node-esm/react-surface-AITKFRBE.mjs +0 -100
  197. package/dist/lib/node-esm/react-surface-AITKFRBE.mjs.map +0 -7
  198. package/dist/types/src/capabilities/artifact-definition/artifact-definition.d.ts.map +0 -1
  199. package/dist/types/src/capabilities/artifact-definition/index.d.ts +0 -3
  200. package/dist/types/src/capabilities/artifact-definition/index.d.ts.map +0 -1
  201. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts +0 -6
  202. package/dist/types/src/capabilities/blueprint-definition/blueprint-definition.d.ts.map +0 -1
  203. package/dist/types/src/capabilities/blueprint-definition/index.d.ts +0 -3
  204. package/dist/types/src/capabilities/blueprint-definition/index.d.ts.map +0 -1
  205. package/dist/types/src/capabilities/operation-resolver/index.d.ts +0 -3
  206. package/dist/types/src/capabilities/operation-resolver/index.d.ts.map +0 -1
  207. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +0 -5
  208. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts.map +0 -1
  209. package/dist/types/src/capabilities/react-surface/index.d.ts +0 -3
  210. package/dist/types/src/capabilities/react-surface/index.d.ts.map +0 -1
  211. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +0 -1
  212. package/dist/types/src/containers/KanbanViewEditor/KanbanViewEditor.d.ts +0 -6
  213. package/dist/types/src/containers/KanbanViewEditor/KanbanViewEditor.d.ts.map +0 -1
  214. package/dist/types/src/containers/KanbanViewEditor/index.d.ts +0 -3
  215. package/dist/types/src/containers/KanbanViewEditor/index.d.ts.map +0 -1
  216. package/dist/types/src/hooks/useKanbanBoardModel.test.d.ts +0 -2
  217. package/dist/types/src/hooks/useKanbanBoardModel.test.d.ts.map +0 -1
  218. package/src/capabilities/artifact-definition/index.ts +0 -7
  219. package/src/capabilities/blueprint-definition/index.ts +0 -7
  220. package/src/capabilities/operation-resolver/index.ts +0 -7
  221. package/src/capabilities/operation-resolver/operation-resolver.ts +0 -133
  222. package/src/capabilities/react-surface/index.ts +0 -7
  223. package/src/containers/KanbanViewEditor/KanbanViewEditor.tsx +0 -63
  224. package/src/containers/KanbanViewEditor/index.ts +0 -7
  225. /package/dist/types/src/capabilities/{artifact-definition/artifact-definition.d.ts → artifact-definition.d.ts} +0 -0
  226. /package/dist/types/src/capabilities/{react-surface/react-surface.d.ts → react-surface.d.ts} +0 -0
@@ -1,7 +1,26 @@
1
- import {
2
- kanban_blueprint_default
3
- } from "../chunk-TLYZSC7O.mjs";
4
1
  import "../chunk-J5LGTIGS.mjs";
2
+
3
+ // src/blueprints/kanban-blueprint.ts
4
+ import { Blueprint, Template } from "@dxos/compute";
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
25
  kanban_blueprint_default as KanbanBlueprint
7
26
  };
@@ -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 { Blueprint, Template } from '@dxos/compute';\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: Blueprint.Definition = {\n key: BLUEPRINT_KEY,\n make,\n};\n\nexport default blueprint;\n"],
5
+ "mappings": ";;;AAIA,SAASA,WAAWC,gBAAgB;AACpC,SAASC,YAAY;AAErB,IAAMC,gBAAgB;AAEtB,IAAMC,OAAO,MACXJ,UAAUI,KAAK;EACbC,KAAKF;EACLG,MAAM;EACNC,OAAOP,UAAUQ,gBAAgB;IAAED,OAAO,CAAA;EAAG,CAAA;EAC7CE,cAAcR,SAASG,KAAK;IAC1BM,QAAQR;;;EAGV,CAAA;AACF,CAAA;AAEF,IAAMS,YAAkC;EACtCN,KAAKF;EACLC;AACF;AAEA,IAAA,2BAAeO;",
6
+ "names": ["Blueprint", "Template", "trim", "BLUEPRINT_KEY", "make", "key", "name", "tools", "toolDefinitions", "instructions", "source", "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 { Operation } from "@dxos/compute";
18
+ import { View } from "@dxos/echo";
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-T32TEM55.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 { Operation } from '@dxos/compute';\nimport { View } from '@dxos/echo';\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,iBAAiB;AAC1B,SAASC,YAAY;AAErB,SAASC,YAAY;AAErB,IAAMC,mBAAmB,GAAGD,KAAKE,EAAE;AAE5B,IAAMC,wBAA+BC,cAAO;EACjDC,OAAON,KAAKO,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,kBAAkBf,UAAUgB,KAAK;EAC5Cd,MAAM;IAAEe,KAAK,GAAGd,gBAAAA;IAAsCe,MAAM;EAAoB;EAChFC,UAAU;IAACpB,WAAWqB;;EACtBC,OAAcf,cAAO;IACnBgB,MAAMrB,KAAKA;IACXsB,SAAgBC;EAClB,CAAA;EACAC,QAAQpB;AACV,CAAA;AAEO,IAAMqB,mBAA0BpB,cAAO;EAC5CqB,MAAaf,WAAIH,YAAY;IAAEC,aAAa;EAAoB,CAAA;AAClE,CAAA;AAIO,IAAMkB,aAAa5B,UAAUgB,KAAK;EACvCd,MAAM;IAAEe,KAAK,GAAGd,gBAAAA;IAAgCe,MAAM;EAAc;EACpEG,OAAcf,cAAO;IACnBqB,MAAaf;EACf,CAAA;EACAa,QAAQC;AACV,CAAA;AAEO,IAAMG,mBAAmB7B,UAAUgB,KAAK;EAC7Cd,MAAM;IAAEe,KAAK,GAAGd,gBAAAA;IAAuCe,MAAM;EAAqB;EAClFC,UAAU;IAACpB,WAAWqB;;EACtBC,OAAcf,cAAO;IACnBgB,MAAMrB,KAAKA,KAAKQ,YAAY;MAAEC,aAAa;IAAoC,CAAA;IAC/EH,OAAON,KAAKO,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;EACAe,QAAeK;AACjB,CAAA;AAEO,IAAMC,cAAc/B,UAAUgB,KAAK;EACxCd,MAAM;IAAEe,KAAK,GAAGd,gBAAAA;IAAiCe,MAAM;EAAe;EACtEG,OAAcf,cAAO;IACnBqB,MAAaf,WAAIH,YAAY;MAAEC,aAAa;IAAuB,CAAA;EACrE,CAAA;EACAe,QAAeK;AACjB,CAAA;",
6
+ "names": ["Schema", "Capability", "Operation", "View", "meta", "KANBAN_OPERATION", "id", "DeleteCardFieldOutput", "Struct", "field", "FieldSchema", "annotations", "description", "props", "Any", "index", "Number", "DeleteCardField", "make", "key", "name", "services", "Service", "input", "view", "fieldId", "String", "output", "DeleteCardOutput", "card", "DeleteCard", "RestoreCardField", "Void", "RestoreCard"]
7
+ }
@@ -0,0 +1,24 @@
1
+ import {
2
+ DeleteCard
3
+ } from "./chunk-T32TEM55.mjs";
4
+ import "./chunk-J5LGTIGS.mjs";
5
+
6
+ // src/operations/delete-card.ts
7
+ import * as Effect from "effect/Effect";
8
+ import { Operation } from "@dxos/compute";
9
+ import { Obj } from "@dxos/echo";
10
+ import { invariant } from "@dxos/invariant";
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, { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 9, S: void 0, A: ["db", ""] });
15
+ db.remove(card);
16
+ return {
17
+ card
18
+ };
19
+ })));
20
+ var delete_card_default = handler;
21
+ export {
22
+ delete_card_default as default
23
+ };
24
+ //# sourceMappingURL=delete-card-7OSCNCW2.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 { Operation } from '@dxos/compute';\nimport { Obj } from '@dxos/echo';\nimport { invariant } from '@dxos/invariant';\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,iBAAiB;AAC1B,SAASC,WAAW;AACpB,SAASC,iBAAiB;AAI1B,IAAA,eAA0DC;cAIpDC,WAAUC,KAAAA,UAAAA,YAAAA,CAAAA,EAAAA,KAAAA,MAAAA,YAAAA,MAAAA;AACVA,QAAGC,KAAOC,IAAAA,YAAAA,IAAAA;AAEV,YAAO,IAAA,QAAA,EAAA,YAAA,YAAA,GAAA,cAAA,GAAA,GAAA,GAAA,QAAA,GAAA,CAAA,MAAA,EAAA,EAAA,CAAA;YAAEA,IAAAA;AAAK,SAAA;IAChB;EAIJ;;;",
6
+ "names": ["Effect", "Operation", "Obj", "invariant", "DeleteCard", "invariant", "db", "remove", "card"]
7
+ }
@@ -0,0 +1,42 @@
1
+ import {
2
+ DeleteCardField
3
+ } from "./chunk-T32TEM55.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 { Operation } from "@dxos/compute";
10
+ import { JsonSchema, Obj } from "@dxos/echo";
11
+ import { invariant } from "@dxos/invariant";
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", { "~LogMeta": "~LogMeta", F: __dxlog_file, L: 12, S: this, A: ["db", "'Database not found'"] });
18
+ const schema = yield* Effect.promise(() => db.schemaRegistry.query({
19
+ typename: getTypenameFromQuery(view.query.ast),
20
+ location: [
21
+ "database",
22
+ "runtime"
23
+ ]
24
+ }).first());
25
+ const projection = new ProjectionModel({
26
+ registry,
27
+ view,
28
+ baseSchema: JsonSchema.toJsonSchema(schema),
29
+ change: createEchoChangeCallback(view, schema)
30
+ });
31
+ const result = projection.deleteFieldProjection(fieldId);
32
+ return {
33
+ field: result.deleted.field,
34
+ props: result.deleted.props,
35
+ index: result.index
36
+ };
37
+ })));
38
+ var delete_card_field_default = handler;
39
+ export {
40
+ delete_card_field_default as default
41
+ };
42
+ //# sourceMappingURL=delete-card-field-NSB2RE3Z.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 { Operation } from '@dxos/compute';\nimport { JsonSchema, Obj } from '@dxos/echo';\nimport { type EchoSchema } from '@dxos/echo/internal';\nimport { invariant } from '@dxos/invariant';\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,iBAAiB;AAC1B,SAASC,YAAYC,WAAW;AAEhC,SAASC,iBAAiB;AAC1B,SAASC,iBAAiBC,0BAA0BC,4BAA4B;AAIhF,IAAA,eAA+DC;IAIzD,UAAWC,gBAAgBC,KAAAA,UAAAA,YAAAA,kBAAAA,WAAAA,EAAAA,MAAAA,QAAAA,GAAAA;AAC3BC,QAAAA,WAAc,OAAA,WAAA,IAAA,aAAA,YAAA;AACd,QAAMC,KAAAA,IAAS,YAAOC,IAAOC;YAGvBC,IAAAA,sBAAUC,EAAAA,YAA0BC,YAAS,GAAA,cAAA,GAAA,IAAA,GAAA,MAAA,GAAA,CAAA,MAAA,sBAAA,EAAA,CAAA;iBAC7CC,OAAU,eAAA,MAAA,GAAA,eAAA,MAAA;cAAC,qBAAA,KAAA,MAAA,GAAA;cAAY;MAAU;MAE7B;IAGJC;EACJC,CAAAA,EAAAA,MAAAA,CAAAA;QACAV,aAAAA,IAAAA,gBAAAA;IACAW;IACAC;IACF,YAAA,WAAA,aAAA,MAAA;IAEA,QAAMC,yBAAoBC,MAAAA,MAAsBC;EAEhD,CAAA;QACEC,SAAOH,WAAeG,sBAAK,OAAA;SAC3BC;IACAC,OAAOL,OAAOK,QAAK;IACrB,OAAA,OAAA,QAAA;IACF,OAAA,OAAA;EAIJ;;;",
6
+ "names": ["Effect", "Capabilities", "Capability", "Operation", "JsonSchema", "Obj", "invariant", "ProjectionModel", "createEchoChangeCallback", "getTypenameFromQuery", "DeleteCardField", "Obj", "view", "invariant", "schema", "Effect", "promise", "typename", "getTypenameFromQuery", "query", "location", "projection", "registry", "baseSchema", "change", "result", "deleteFieldProjection", "fieldId", "field", "props", "index"]
7
+ }
@@ -1,98 +1,82 @@
1
- import {
2
- CreateKanbanSchema,
3
- Kanban_exports,
4
- meta
5
- } from "./chunk-RNFIFE2P.mjs";
6
1
  import "./chunk-J5LGTIGS.mjs";
7
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
+
8
20
  // src/KanbanPlugin.tsx
9
21
  import * as Effect from "effect/Effect";
22
+ import * as Option from "effect/Option";
10
23
  import { Plugin } from "@dxos/app-framework";
11
24
  import { AppPlugin } from "@dxos/app-toolkit";
12
- import { Type as Type2 } from "@dxos/echo";
25
+ import { Operation } from "@dxos/compute";
26
+ import { Annotation, Type } from "@dxos/echo";
27
+ import { ClientEvents } from "@dxos/plugin-client/types";
28
+ import { SpaceOperation } from "@dxos/plugin-space/operations";
13
29
  import { ViewModel } 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-HFEKGFJK.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-BRA2OHUE.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-FOMOGFVW.mjs"));
26
-
27
- // src/translations.ts
28
- import { Type } from "@dxos/echo";
29
- var translations = [
30
- {
31
- "en-US": {
32
- [Type.getTypename(Kanban_exports.Kanban)]: {
33
- "typename label": "Kanban",
34
- "typename label_zero": "Kanbans",
35
- "typename label_one": "Kanban",
36
- "typename label_other": "Kanbans",
37
- "object name placeholder": "New kanban",
38
- "rename object label": "Rename kanban",
39
- "delete object label": "Delete kanban",
40
- "object deleted label": "Kanban deleted"
41
- },
42
- [meta.id]: {
43
- "action menu label": "Actions",
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
- "add card label": "Add card",
50
- "new column name label": "New column name",
51
- "remove card label": "Remove card",
52
- "remove empty column label": "Remove empty column",
53
- "column drag handle label": "Drag to rearrange",
54
- "delete column label": "Delete column",
55
- "card field deleted label": "Card field deleted",
56
- "card deleted label": "Card deleted",
57
- "select pivot placeholder": "Select a pivot column in board settings to display columns."
58
- }
59
- }
60
- }
61
- ];
62
-
63
- // src/KanbanPlugin.tsx
64
- var KanbanPlugin = Plugin.define(meta).pipe(AppPlugin.addBlueprintDefinitionModule({
30
+ import { BlueprintDefinition, Migrations, OperationHandler, UndoMappings, ReactSurface } from "#capabilities";
31
+ import { meta as meta2 } from "#meta";
32
+ import { translations } from "#translations";
33
+ import { CreateKanbanSchema, Kanban } from "#types";
34
+ var KanbanPlugin = Plugin.define(meta2).pipe(AppPlugin.addBlueprintDefinitionModule({
65
35
  activate: BlueprintDefinition
66
36
  }), AppPlugin.addMetadataModule({
67
37
  metadata: {
68
- id: Type2.getTypename(Kanban_exports.Kanban),
38
+ id: Type.getTypename(Kanban.Kanban),
69
39
  metadata: {
70
- icon: "ph--kanban--regular",
71
- iconHue: "green",
40
+ icon: Annotation.IconAnnotation.get(Kanban.Kanban).pipe(Option.getOrThrow).icon,
41
+ iconHue: Annotation.IconAnnotation.get(Kanban.Kanban).pipe(Option.getOrThrow).hue ?? "white",
72
42
  inputSchema: CreateKanbanSchema,
73
- createObject: (props, { db }) => Effect.promise(async () => {
74
- const { view } = await ViewModel.makeFromDatabase({
75
- db,
76
- typename: props.typename,
77
- pivotFieldName: props.initialPivotColumn
43
+ createObject: (props, options) => Effect.gen(function* () {
44
+ const object = yield* Effect.promise(async () => {
45
+ const { view } = await ViewModel.makeFromDatabase({
46
+ db: options.db,
47
+ typename: props.typename,
48
+ pivotFieldName: props.initialPivotColumn
49
+ });
50
+ return Kanban.make({
51
+ name: props.name,
52
+ view
53
+ });
78
54
  });
79
- return Kanban_exports.make({
80
- name: props.name,
81
- view
55
+ return yield* Operation.invoke(SpaceOperation.AddObject, {
56
+ object,
57
+ target: options.target,
58
+ hidden: true,
59
+ targetNodeId: options.targetNodeId
82
60
  });
83
61
  })
84
62
  }
85
63
  }
86
- }), AppPlugin.addOperationResolverModule({
87
- activate: OperationResolver
64
+ }), AppPlugin.addOperationHandlerModule({
65
+ activate: OperationHandler
66
+ }), AppPlugin.addOperationHandlerModule({
67
+ id: "undo-mappings",
68
+ activate: UndoMappings
88
69
  }), AppPlugin.addSchemaModule({
89
70
  schema: [
90
- Kanban_exports.Kanban
71
+ Kanban.Kanban
91
72
  ]
92
73
  }), AppPlugin.addSurfaceModule({
93
74
  activate: ReactSurface
94
75
  }), AppPlugin.addTranslationsModule({
95
76
  translations
77
+ }), Plugin.addModule({
78
+ activatesOn: ClientEvents.SetupMigration,
79
+ activate: Migrations
96
80
  }), Plugin.make);
97
81
  export {
98
82
  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 { Plugin } from '@dxos/app-framework';\nimport { AppPlugin } from '@dxos/app-toolkit';\nimport { Type } from '@dxos/echo';\nimport { type CreateObject } from '@dxos/plugin-space/types';\nimport { ViewModel } from '@dxos/schema';\n\nimport { BlueprintDefinition, OperationResolver, ReactSurface } from './capabilities';\nimport { meta } from './meta';\nimport { translations } from './translations';\nimport { CreateKanbanSchema, Kanban } from './types';\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: 'ph--kanban--regular',\n iconHue: 'green',\n inputSchema: CreateKanbanSchema,\n createObject: ((props, { db }) =>\n Effect.promise(async () => {\n const { view } = await ViewModel.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 AppPlugin.addOperationResolverModule({ activate: OperationResolver }),\n AppPlugin.addSchemaModule({ schema: [Kanban.Kanban] }),\n AppPlugin.addSurfaceModule({ activate: ReactSurface }),\n AppPlugin.addTranslationsModule({ translations }),\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';\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 '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": ";;;;;;;;AAIA,YAAYA,YAAY;AAExB,SAASC,cAAc;AACvB,SAASC,iBAAiB;AAC1B,SAASC,QAAAA,aAAY;AAErB,SAASC,iBAAiB;;;ACN1B,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;AAMd,IAAMC,eAAe;EAC1B;IACE,SAAS;MACP,CAACC,KAAKC,YAAYC,eAAOA,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,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;;;;AJxBK,IAAMC,eAAeC,OAAOC,OAAOC,IAAAA,EAAMC,KAC9CC,UAAUC,6BAA6B;EAAEC,UAAUC;AAAoB,CAAA,GACvEH,UAAUI,kBAAkB;EAC1BC,UAAU;IACRC,IAAIC,MAAKC,YAAYC,eAAOA,MAAM;IAClCJ,UAAU;MACRK,MAAM;MACNC,SAAS;MACTC,aAAaC;MACbC,cAAe,CAACC,OAAO,EAAEC,GAAE,MAClBC,eAAQ,YAAA;AACb,cAAM,EAAEC,KAAI,IAAK,MAAMC,UAAUC,iBAAiB;UAChDJ;UACAK,UAAUN,MAAMM;UAChBC,gBAAgBP,MAAMQ;QACxB,CAAA;AACA,eAAOd,eAAOe,KAAK;UAAEC,MAAMV,MAAMU;UAAMP;QAAK,CAAA;MAC9C,CAAA;IACJ;EACF;AACF,CAAA,GACAlB,UAAU0B,2BAA2B;EAAExB,UAAUyB;AAAkB,CAAA,GACnE3B,UAAU4B,gBAAgB;EAAEC,QAAQ;IAACpB,eAAOA;;AAAQ,CAAA,GACpDT,UAAU8B,iBAAiB;EAAE5B,UAAU6B;AAAa,CAAA,GACpD/B,UAAUgC,sBAAsB;EAAEC;AAAa,CAAA,GAC/CrC,OAAO4B,IAAI;",
6
- "names": ["Effect", "Plugin", "AppPlugin", "Type", "ViewModel", "Capability", "BlueprintDefinition", "Capability", "lazy", "Capability", "OperationResolver", "Capability", "lazy", "Capability", "ReactSurface", "Capability", "lazy", "Type", "translations", "Type", "getTypename", "Kanban", "meta", "id", "KanbanPlugin", "Plugin", "define", "meta", "pipe", "AppPlugin", "addBlueprintDefinitionModule", "activate", "BlueprintDefinition", "addMetadataModule", "metadata", "id", "Type", "getTypename", "Kanban", "icon", "iconHue", "inputSchema", "CreateKanbanSchema", "createObject", "props", "db", "promise", "view", "ViewModel", "makeFromDatabase", "typename", "pivotFieldName", "initialPivotColumn", "make", "name", "addOperationResolverModule", "OperationResolver", "addSchemaModule", "schema", "addSurfaceModule", "ReactSurface", "addTranslationsModule", "translations"]
3
+ "sources": ["../../../src/meta.ts", "../../../src/KanbanPlugin.tsx"],
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 { Operation } from '@dxos/compute';\nimport { Annotation, Type } from '@dxos/echo';\nimport { ClientEvents } from '@dxos/plugin-client/types';\nimport { SpaceOperation } from '@dxos/plugin-space/operations';\nimport { type CreateObject } from '@dxos/plugin-space/types';\nimport { ViewModel } from '@dxos/schema';\n\nimport { BlueprintDefinition, Migrations, OperationHandler, UndoMappings, ReactSurface } from '#capabilities';\nimport { meta } from '#meta';\nimport { translations } from '#translations';\nimport { CreateKanbanSchema, Kanban } from '#types';\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.addModule({\n activatesOn: ClientEvents.SetupMigration,\n activate: Migrations,\n }),\n Plugin.make,\n);\n"],
5
+ "mappings": ";;;AAKA,SAASA,YAAY;AAEd,IAAMC,OAAoB;EAC/BC,IAAI;EACJC,MAAM;EACNC,aAAaJ;;;;EAIbK,MAAM;EACNC,SAAS;EACTC,QAAQ;EACRC,aAAa;IAAC;;AAChB;;;ACdA,YAAYC,YAAY;AACxB,YAAYC,YAAY;AAExB,SAASC,cAAc;AACvB,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,YAAYC,YAAY;AACjC,SAASC,oBAAoB;AAC7B,SAASC,sBAAsB;AAE/B,SAASC,iBAAiB;AAE1B,SAASC,qBAAqBC,YAAYC,kBAAkBC,cAAcC,oBAAoB;AAC9F,SAASC,QAAAA,aAAY;AACrB,SAASC,oBAAoB;AAC7B,SAASC,oBAAoBC,cAAc;AAEpC,IAAMC,eAAejB,OAAOkB,OAAOL,KAAAA,EAAMM,KAC9ClB,UAAUmB,6BAA6B;EAAEC,UAAUb;AAAoB,CAAA,GACvEP,UAAUqB,kBAAkB;EAC1BC,UAAU;IACRC,IAAIpB,KAAKqB,YAAYT,OAAOA,MAAM;IAClCO,UAAU;MACRG,MAAMvB,WAAWwB,eAAeC,IAAIZ,OAAOA,MAAM,EAAEG,KAAYU,iBAAU,EAAEH;MAC3EI,SAAS3B,WAAWwB,eAAeC,IAAIZ,OAAOA,MAAM,EAAEG,KAAYU,iBAAU,EAAEE,OAAO;MACrFC,aAAajB;MACbkB,cAAe,CAACC,OAAOC,YACdC,WAAI,aAAA;AACT,cAAMC,SAAS,OAAcC,eAAQ,YAAA;AACnC,gBAAM,EAAEC,KAAI,IAAK,MAAMhC,UAAUiC,iBAAiB;YAChDC,IAAIN,QAAQM;YACZC,UAAUR,MAAMQ;YAChBC,gBAAgBT,MAAMU;UACxB,CAAA;AACA,iBAAO5B,OAAO6B,KAAK;YAAEC,MAAMZ,MAAMY;YAAMP;UAAK,CAAA;QAC9C,CAAA;AACA,eAAO,OAAOrC,UAAU6C,OAAOzC,eAAe0C,WAAW;UACvDX;UACAY,QAAQd,QAAQc;UAChBC,QAAQ;UACRC,cAAchB,QAAQgB;QACxB,CAAA;MACF,CAAA;IACJ;EACF;AACF,CAAA,GACAlD,UAAUmD,0BAA0B;EAAE/B,UAAUX;AAAiB,CAAA,GACjET,UAAUmD,0BAA0B;EAAE5B,IAAI;EAAiBH,UAAUV;AAAa,CAAA,GAClFV,UAAUoD,gBAAgB;EAAEC,QAAQ;IAACtC,OAAOA;;AAAQ,CAAA,GACpDf,UAAUsD,iBAAiB;EAAElC,UAAUT;AAAa,CAAA,GACpDX,UAAUuD,sBAAsB;EAAE1C;AAAa,CAAA,GAC/Cd,OAAOyD,UAAU;EACfC,aAAarD,aAAasD;EAC1BtC,UAAUZ;AACZ,CAAA,GACAT,OAAO6C,IAAI;",
6
+ "names": ["trim", "meta", "id", "name", "description", "icon", "iconHue", "source", "screenshots", "Effect", "Option", "Plugin", "AppPlugin", "Operation", "Annotation", "Type", "ClientEvents", "SpaceOperation", "ViewModel", "BlueprintDefinition", "Migrations", "OperationHandler", "UndoMappings", "ReactSurface", "meta", "translations", "CreateKanbanSchema", "Kanban", "KanbanPlugin", "define", "pipe", "addBlueprintDefinitionModule", "activate", "addMetadataModule", "metadata", "id", "getTypename", "icon", "IconAnnotation", "get", "getOrThrow", "iconHue", "hue", "inputSchema", "createObject", "props", "options", "gen", "object", "promise", "view", "makeFromDatabase", "db", "typename", "pivotFieldName", "initialPivotColumn", "make", "name", "invoke", "AddObject", "target", "hidden", "targetNodeId", "addOperationHandlerModule", "addSchemaModule", "schema", "addSurfaceModule", "addTranslationsModule", "addModule", "activatesOn", "SetupMigration"]
7
7
  }