@dxos/plugin-kanban 0.7.5-labs.a279d8c → 0.7.5-labs.ea4b4c2

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 (66) hide show
  1. package/dist/lib/browser/{chunk-FAA5WRZY.mjs → chunk-LM23M5YY.mjs} +26 -9
  2. package/dist/lib/browser/chunk-LM23M5YY.mjs.map +7 -0
  3. package/dist/lib/browser/index.mjs +9 -7
  4. package/dist/lib/browser/index.mjs.map +3 -3
  5. package/dist/lib/browser/intent-resolver-HGOXP6M3.mjs +80 -0
  6. package/dist/lib/browser/intent-resolver-HGOXP6M3.mjs.map +7 -0
  7. package/dist/lib/browser/meta.json +1 -1
  8. package/dist/lib/browser/react-surface-MNZFIIM2.mjs +290 -0
  9. package/dist/lib/browser/react-surface-MNZFIIM2.mjs.map +7 -0
  10. package/dist/lib/browser/types.mjs +7 -1
  11. package/dist/lib/node/{chunk-PLKK6ZJE.cjs → chunk-CRATKLIX.cjs} +32 -12
  12. package/dist/lib/node/chunk-CRATKLIX.cjs.map +7 -0
  13. package/dist/lib/node/index.cjs +18 -17
  14. package/dist/lib/node/index.cjs.map +3 -3
  15. package/dist/lib/node/intent-resolver-6TF2SNKG.cjs +94 -0
  16. package/dist/lib/node/intent-resolver-6TF2SNKG.cjs.map +7 -0
  17. package/dist/lib/node/meta.json +1 -1
  18. package/dist/lib/node/react-surface-BJ3LTXIE.cjs +306 -0
  19. package/dist/lib/node/react-surface-BJ3LTXIE.cjs.map +7 -0
  20. package/dist/lib/node/types.cjs +10 -4
  21. package/dist/lib/node/types.cjs.map +2 -2
  22. package/dist/lib/node-esm/{chunk-3753HLJC.mjs → chunk-VHIH5KA2.mjs} +26 -9
  23. package/dist/lib/node-esm/chunk-VHIH5KA2.mjs.map +7 -0
  24. package/dist/lib/node-esm/index.mjs +9 -7
  25. package/dist/lib/node-esm/index.mjs.map +3 -3
  26. package/dist/lib/node-esm/intent-resolver-PS5JDFZ6.mjs +81 -0
  27. package/dist/lib/node-esm/intent-resolver-PS5JDFZ6.mjs.map +7 -0
  28. package/dist/lib/node-esm/meta.json +1 -1
  29. package/dist/lib/node-esm/react-surface-RGWXTQPZ.mjs +291 -0
  30. package/dist/lib/node-esm/react-surface-RGWXTQPZ.mjs.map +7 -0
  31. package/dist/lib/node-esm/types.mjs +7 -1
  32. package/dist/types/src/KanbanPlugin.d.ts.map +1 -1
  33. package/dist/types/src/capabilities/index.d.ts +2 -2
  34. package/dist/types/src/capabilities/index.d.ts.map +1 -1
  35. package/dist/types/src/capabilities/intent-resolver.d.ts.map +1 -1
  36. package/dist/types/src/capabilities/react-surface.d.ts.map +1 -1
  37. package/dist/types/src/components/KanbanContainer.d.ts.map +1 -1
  38. package/dist/types/src/components/KanbanViewEditor.d.ts.map +1 -1
  39. package/dist/types/src/meta.d.ts +1 -0
  40. package/dist/types/src/meta.d.ts.map +1 -1
  41. package/dist/types/src/types.d.ts +20 -14
  42. package/dist/types/src/types.d.ts.map +1 -1
  43. package/dist/types/tsconfig.tsbuildinfo +1 -1
  44. package/package.json +22 -21
  45. package/src/KanbanPlugin.tsx +7 -14
  46. package/src/capabilities/intent-resolver.ts +27 -21
  47. package/src/capabilities/react-surface.tsx +63 -2
  48. package/src/components/KanbanContainer.tsx +28 -30
  49. package/src/components/KanbanViewEditor.tsx +43 -42
  50. package/src/meta.ts +3 -1
  51. package/src/types.ts +27 -7
  52. package/dist/lib/browser/chunk-FAA5WRZY.mjs.map +0 -7
  53. package/dist/lib/browser/intent-resolver-EWY2KVLT.mjs +0 -70
  54. package/dist/lib/browser/intent-resolver-EWY2KVLT.mjs.map +0 -7
  55. package/dist/lib/browser/react-surface-47DT36V2.mjs +0 -185
  56. package/dist/lib/browser/react-surface-47DT36V2.mjs.map +0 -7
  57. package/dist/lib/node/chunk-PLKK6ZJE.cjs.map +0 -7
  58. package/dist/lib/node/intent-resolver-74D63LYS.cjs +0 -84
  59. package/dist/lib/node/intent-resolver-74D63LYS.cjs.map +0 -7
  60. package/dist/lib/node/react-surface-V4HKW7LY.cjs +0 -203
  61. package/dist/lib/node/react-surface-V4HKW7LY.cjs.map +0 -7
  62. package/dist/lib/node-esm/chunk-3753HLJC.mjs.map +0 -7
  63. package/dist/lib/node-esm/intent-resolver-UAORS6YK.mjs +0 -71
  64. package/dist/lib/node-esm/intent-resolver-UAORS6YK.mjs.map +0 -7
  65. package/dist/lib/node-esm/react-surface-O5OUSQDL.mjs +0 -186
  66. package/dist/lib/node-esm/react-surface-O5OUSQDL.mjs.map +0 -7
@@ -1,4 +1,5 @@
1
1
  // packages/plugins/plugin-kanban/src/types.ts
2
+ import { TitleAnnotationId } from "@effect/schema/AST";
2
3
  import { S } from "@dxos/echo-schema";
3
4
  import { SpaceSchema } from "@dxos/react-client/echo";
4
5
  import { KanbanType } from "@dxos/react-ui-kanban";
@@ -10,23 +11,38 @@ var KANBAN_PLUGIN = "dxos.org/plugin/kanban";
10
11
  var meta = {
11
12
  id: KANBAN_PLUGIN,
12
13
  name: "Kanban",
13
- description: "Kanban board for managing tasks.",
14
+ description: "Kanban allows you to explore Table data in sorted columns defined by your custom schema. You can use Kanbans to track progress or trigger custom automations when cards are moved from one state to another.",
14
15
  icon: "ph--kanban--regular",
15
16
  source: "https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-kanban",
16
17
  tags: [
17
18
  "experimental"
19
+ ],
20
+ screenshots: [
21
+ "https://dxos.network/plugin-details-kanban-dark.png"
18
22
  ]
19
23
  };
20
24
 
21
25
  // packages/plugins/plugin-kanban/src/types.ts
26
+ var InitialSchemaAnnotationId = Symbol.for("@dxos/plugin-kanban/annotation/InitialSchema");
27
+ var InitialPivotColumnAnnotationId = Symbol.for("@dxos/plugin-kanban/annotation/InitialPivotColumn");
28
+ var CreateKanbanSchema = S.Struct({
29
+ name: S.optional(S.String),
30
+ initialSchema: S.optional(S.String.annotations({
31
+ [InitialSchemaAnnotationId]: true,
32
+ [TitleAnnotationId]: "Select card schema (leave empty to start fresh)"
33
+ })),
34
+ initialPivotColumn: S.optional(S.String.annotations({
35
+ [InitialPivotColumnAnnotationId]: true,
36
+ [TitleAnnotationId]: "Pivot column"
37
+ }))
38
+ });
22
39
  var KanbanAction;
23
40
  (function(KanbanAction2) {
24
41
  const KANBAN_ACTION = `${KANBAN_PLUGIN}/action`;
25
42
  class Create extends S.TaggedClass()(`${KANBAN_ACTION}/create`, {
26
- input: S.Struct({
27
- name: S.optional(S.String),
43
+ input: S.extend(S.Struct({
28
44
  space: SpaceSchema
29
- }),
45
+ }), CreateKanbanSchema),
30
46
  output: S.Struct({
31
47
  object: KanbanType
32
48
  })
@@ -52,18 +68,19 @@ var KanbanAction;
52
68
  KanbanAction2.DeleteCardField = DeleteCardField;
53
69
  })(KanbanAction || (KanbanAction = {}));
54
70
  var isKanban = (object) => object != null && object instanceof KanbanType;
55
- var createKanban = async (space) => {
56
- const { kanban } = await initializeKanban({
57
- space
58
- });
71
+ var createKanban = async (props) => {
72
+ const { kanban } = await initializeKanban(props);
59
73
  return kanban;
60
74
  };
61
75
 
62
76
  export {
63
77
  KANBAN_PLUGIN,
64
78
  meta,
79
+ InitialSchemaAnnotationId,
80
+ InitialPivotColumnAnnotationId,
81
+ CreateKanbanSchema,
65
82
  KanbanAction,
66
83
  isKanban,
67
84
  createKanban
68
85
  };
69
- //# sourceMappingURL=chunk-FAA5WRZY.mjs.map
86
+ //# sourceMappingURL=chunk-LM23M5YY.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/types.ts", "../../../src/meta.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { TitleAnnotationId } from '@effect/schema/AST';\n\nimport { S } from '@dxos/echo-schema';\nimport { type Space, SpaceSchema } from '@dxos/react-client/echo';\nimport { KanbanType } from '@dxos/react-ui-kanban';\nimport { initializeKanban } from '@dxos/react-ui-kanban/testing';\nimport { FieldSchema } from '@dxos/schema';\n\nimport { KANBAN_PLUGIN } from './meta';\n\n/**\n * Kanban data model.\n * A Kanban board is a collection of columns, each of which contains a collection of items.\n * The layout of columns and items is controlled by models.\n * The underlying data model may be represented by direct object relationships\n * (e.g., a column object containing an array of ordered items) or projections constructed\n * by the model (e.g., a query of items based on metadata within a column object).\n */\n\nexport const InitialSchemaAnnotationId = Symbol.for('@dxos/plugin-kanban/annotation/InitialSchema');\nexport const InitialPivotColumnAnnotationId = Symbol.for('@dxos/plugin-kanban/annotation/InitialPivotColumn');\n\nexport const CreateKanbanSchema = S.Struct({\n name: S.optional(S.String),\n initialSchema: S.optional(\n S.String.annotations({\n [InitialSchemaAnnotationId]: true,\n [TitleAnnotationId]: 'Select card schema (leave empty to start fresh)',\n }),\n ),\n initialPivotColumn: S.optional(\n S.String.annotations({\n [InitialPivotColumnAnnotationId]: true,\n [TitleAnnotationId]: 'Pivot column',\n }),\n ),\n});\n\nexport type CreateKanbanType = S.Schema.Type<typeof CreateKanbanSchema>;\n\nexport namespace KanbanAction {\n const KANBAN_ACTION = `${KANBAN_PLUGIN}/action`;\n\n export class Create extends S.TaggedClass<Create>()(`${KANBAN_ACTION}/create`, {\n input: S.extend(S.Struct({ space: SpaceSchema }), CreateKanbanSchema),\n output: S.Struct({\n object: KanbanType,\n }),\n }) {}\n\n export class DeleteCardField extends S.TaggedClass<DeleteCardField>()(`${KANBAN_ACTION}/delete-card-field`, {\n input: S.Struct({\n kanban: KanbanType,\n fieldId: S.String,\n // TODO(wittjosiah): Separate fields for undo data?\n deletionData: S.optional(\n S.Struct({\n field: FieldSchema,\n // TODO(wittjosiah): This creates a type error.\n // props: PropertySchema,\n props: S.Any,\n index: S.Number,\n }),\n ),\n }),\n output: S.Void,\n }) {}\n}\n\n// TODO(burdon): Undo?\n// TODO(burdon): Typescript types (replace proto with annotations?)\n// TODO(burdon): Should pure components depend on ECHO? Relationship between ECHO object/array and Observable.\n// TODO(burdon): Can the plugin configure the object based on the data? E.g., how are the models constructed?\n// TODO(burdon): Create models. Simple first based on actual data.\n// Model is always a projection since the dragging state is tentative.\n\n// TODO(burdon): Extend model for moving items (in and across columns).\nexport interface KanbanModel {\n root: KanbanType;\n}\n\nexport type Location = {\n idx?: number;\n};\n\nexport const isKanban = (object: unknown): object is KanbanType => object != null && object instanceof KanbanType;\n\nexport const createKanban = async (props: { space: Space; initialSchema?: string; initialPivotColumn?: string }) => {\n const { kanban } = await initializeKanban(props);\n return kanban;\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { type PluginMeta } from '@dxos/app-framework';\n\nexport const KANBAN_PLUGIN = 'dxos.org/plugin/kanban';\n\nexport const meta = {\n id: KANBAN_PLUGIN,\n name: 'Kanban',\n description:\n 'Kanban allows you to explore Table data in sorted columns defined by your custom schema. You can use Kanbans to track progress or trigger custom automations when cards are moved from one state to another.',\n icon: 'ph--kanban--regular',\n source: 'https://github.com/dxos/dxos/tree/main/packages/plugins/experimental/plugin-kanban',\n tags: ['experimental'],\n screenshots: ['https://dxos.network/plugin-details-kanban-dark.png'],\n} satisfies PluginMeta;\n"],
5
+ "mappings": ";AAIA,SAASA,yBAAyB;AAElC,SAASC,SAAS;AAClB,SAAqBC,mBAAmB;AACxC,SAASC,kBAAkB;AAC3B,SAASC,wBAAwB;AACjC,SAASC,mBAAmB;;;ACJrB,IAAMC,gBAAgB;AAEtB,IAAMC,OAAO;EAClBC,IAAIF;EACJG,MAAM;EACNC,aACE;EACFC,MAAM;EACNC,QAAQ;EACRC,MAAM;IAAC;;EACPC,aAAa;IAAC;;AAChB;;;ADMO,IAAMC,4BAA4BC,OAAOC,IAAI,8CAAA;AAC7C,IAAMC,iCAAiCF,OAAOC,IAAI,mDAAA;AAElD,IAAME,qBAAqBC,EAAEC,OAAO;EACzCC,MAAMF,EAAEG,SAASH,EAAEI,MAAM;EACzBC,eAAeL,EAAEG,SACfH,EAAEI,OAAOE,YAAY;IACnB,CAACX,yBAAAA,GAA4B;IAC7B,CAACY,iBAAAA,GAAoB;EACvB,CAAA,CAAA;EAEFC,oBAAoBR,EAAEG,SACpBH,EAAEI,OAAOE,YAAY;IACnB,CAACR,8BAAAA,GAAiC;IAClC,CAACS,iBAAAA,GAAoB;EACvB,CAAA,CAAA;AAEJ,CAAA;;UAIiBE,eAAAA;AACf,QAAMC,gBAAgB,GAAGC,aAAAA;EAElB,MAAMC,eAAeZ,EAAEa,YAAW,EAAW,GAAGH,aAAAA,WAAwB;IAC7EI,OAAOd,EAAEe,OAAOf,EAAEC,OAAO;MAAEe,OAAOC;IAAY,CAAA,GAAIlB,kBAAAA;IAClDmB,QAAQlB,EAAEC,OAAO;MACfkB,QAAQC;IACV,CAAA;EACF,CAAA,EAAA;EAAI;gBALSR,SAAAA;EAON,MAAMS,wBAAwBrB,EAAEa,YAAW,EAAoB,GAAGH,aAAAA,sBAAmC;IAC1GI,OAAOd,EAAEC,OAAO;MACdqB,QAAQF;MACRG,SAASvB,EAAEI;;MAEXoB,cAAcxB,EAAEG,SACdH,EAAEC,OAAO;QACPwB,OAAOC;;;QAGPC,OAAO3B,EAAE4B;QACTC,OAAO7B,EAAE8B;MACX,CAAA,CAAA;IAEJ,CAAA;IACAZ,QAAQlB,EAAE+B;EACZ,CAAA,EAAA;EAAI;gBAhBSV,kBAAAA;AAiBf,GA3BiBZ,iBAAAA,eAAAA,CAAAA,EAAAA;AA6CV,IAAMuB,WAAW,CAACb,WAA0CA,UAAU,QAAQA,kBAAkBC;AAEhG,IAAMa,eAAe,OAAON,UAAAA;AACjC,QAAM,EAAEL,OAAM,IAAK,MAAMY,iBAAiBP,KAAAA;AAC1C,SAAOL;AACT;",
6
+ "names": ["TitleAnnotationId", "S", "SpaceSchema", "KanbanType", "initializeKanban", "FieldSchema", "KANBAN_PLUGIN", "meta", "id", "name", "description", "icon", "source", "tags", "screenshots", "InitialSchemaAnnotationId", "Symbol", "for", "InitialPivotColumnAnnotationId", "CreateKanbanSchema", "S", "Struct", "name", "optional", "String", "initialSchema", "annotations", "TitleAnnotationId", "initialPivotColumn", "KanbanAction", "KANBAN_ACTION", "KANBAN_PLUGIN", "Create", "TaggedClass", "input", "extend", "space", "SpaceSchema", "output", "object", "KanbanType", "DeleteCardField", "kanban", "fieldId", "deletionData", "field", "FieldSchema", "props", "Any", "index", "Number", "Void", "isKanban", "createKanban", "initializeKanban"]
7
+ }
@@ -1,18 +1,19 @@
1
1
  import {
2
+ CreateKanbanSchema,
2
3
  KANBAN_PLUGIN,
3
4
  KanbanAction,
4
5
  meta
5
- } from "./chunk-FAA5WRZY.mjs";
6
+ } from "./chunk-LM23M5YY.mjs";
6
7
 
7
8
  // packages/plugins/plugin-kanban/src/KanbanPlugin.tsx
8
- import { createIntent, defineModule, contributes, Capabilities, Events, definePlugin, oneOf } from "@dxos/app-framework";
9
+ import { createIntent, defineModule, contributes, Capabilities, Events, definePlugin } from "@dxos/app-framework";
9
10
  import { ClientCapabilities, ClientEvents } from "@dxos/plugin-client";
10
11
  import { KanbanType as KanbanType2, translations as kanbanTranslations } from "@dxos/react-ui-kanban";
11
12
 
12
13
  // packages/plugins/plugin-kanban/src/capabilities/index.ts
13
14
  import { lazy } from "@dxos/app-framework";
14
- var IntentResolver = lazy(() => import("./intent-resolver-EWY2KVLT.mjs"));
15
- var ReactSurface = lazy(() => import("./react-surface-47DT36V2.mjs"));
15
+ var IntentResolver = lazy(() => import("./intent-resolver-HGOXP6M3.mjs"));
16
+ var ReactSurface = lazy(() => import("./react-surface-MNZFIIM2.mjs"));
16
17
 
17
18
  // packages/plugins/plugin-kanban/src/translations.ts
18
19
  import { KanbanType } from "@dxos/react-ui-kanban";
@@ -53,10 +54,11 @@ var KanbanPlugin = () => definePlugin(meta, [
53
54
  }),
54
55
  defineModule({
55
56
  id: `${meta.id}/module/metadata`,
56
- activatesOn: oneOf(Events.Startup, Events.SetupAppGraph),
57
+ activatesOn: Events.SetupMetadata,
57
58
  activate: () => contributes(Capabilities.Metadata, {
58
59
  id: KanbanType2.typename,
59
60
  metadata: {
61
+ creationSchema: CreateKanbanSchema,
60
62
  createObject: (props, options) => createIntent(KanbanAction.Create, {
61
63
  ...props,
62
64
  space: options.space
@@ -73,14 +75,14 @@ var KanbanPlugin = () => definePlugin(meta, [
73
75
  }),
74
76
  defineModule({
75
77
  id: `${meta.id}/module/schema`,
76
- activatesOn: ClientEvents.SetupClient,
78
+ activatesOn: ClientEvents.SetupSchema,
77
79
  activate: () => contributes(ClientCapabilities.Schema, [
78
80
  KanbanType2
79
81
  ])
80
82
  }),
81
83
  defineModule({
82
84
  id: `${meta.id}/module/react-surface`,
83
- activatesOn: Events.Startup,
85
+ activatesOn: Events.SetupSurfaces,
84
86
  activate: ReactSurface
85
87
  }),
86
88
  defineModule({
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/KanbanPlugin.tsx", "../../../src/capabilities/index.ts", "../../../src/translations.ts"],
4
- "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport {\n createIntent,\n defineModule,\n contributes,\n Capabilities,\n Events,\n definePlugin,\n oneOf,\n} from '@dxos/app-framework';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { type Space } from '@dxos/react-client/echo';\nimport { KanbanType, translations as kanbanTranslations } from '@dxos/react-ui-kanban';\n\nimport { IntentResolver, ReactSurface } from './capabilities';\nimport { KANBAN_PLUGIN, meta } from './meta';\nimport translations from './translations';\nimport { KanbanAction } from './types';\n\nexport const KanbanPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, ...kanbanTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: oneOf(Events.Startup, Events.SetupAppGraph),\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: KanbanType.typename,\n metadata: {\n createObject: (props: { name?: string }, options: { space: Space }) =>\n createIntent(KanbanAction.Create, { ...props, space: options.space }),\n placeholder: ['kanban title placeholder', { ns: KANBAN_PLUGIN }],\n icon: 'ph--kanban--regular',\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupClient,\n activate: () => contributes(ClientCapabilities.Schema, [KanbanType]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.Startup,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntents,\n activate: IntentResolver,\n }),\n ]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { KanbanType } from '@dxos/react-ui-kanban';\n\nimport { KANBAN_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [KanbanType.typename]: {\n 'typename label': 'Kanban',\n },\n [KANBAN_PLUGIN]: {\n 'plugin name': 'Kanban',\n 'kanban title label': 'Title',\n 'kanban title placeholder': 'New kanban',\n 'column title label': 'Column title',\n 'column title placeholder': 'New column',\n 'item title label': 'Item title',\n 'item title placeholder': 'New item',\n 'add column label': 'Add column',\n 'add item label': 'Add card',\n 'delete column label': 'Delete column',\n 'delete item label': 'Delete card',\n 'create kanban label': 'Create kanban',\n 'card field deleted label': 'Card field deleted',\n },\n },\n },\n];\n"],
5
- "mappings": ";;;;;;;AAIA,SACEA,cACAC,cACAC,aACAC,cACAC,QACAC,cACAC,aACK;AACP,SAASC,oBAAoBC,oBAAoB;AAEjD,SAASC,cAAAA,aAAYC,gBAAgBC,0BAA0B;;;ACX/D,SAASC,YAAY;AAEd,IAAMC,iBAAiBC,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMC,eAAeD,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ACH9C,SAASE,kBAAkB;AAI3B,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACC,WAAWC,QAAQ,GAAG;QACrB,kBAAkB;MACpB;MACA,CAACC,aAAAA,GAAgB;QACf,eAAe;QACf,sBAAsB;QACtB,4BAA4B;QAC5B,sBAAsB;QACtB,4BAA4B;QAC5B,oBAAoB;QACpB,0BAA0B;QAC1B,oBAAoB;QACpB,kBAAkB;QAClB,uBAAuB;QACvB,qBAAqB;QACrB,uBAAuB;QACvB,4BAA4B;MAC9B;IACF;EACF;;;;AFRK,IAAMC,eAAe,MAC1BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAc;SAAIC;SAAiBC;KAAmB;EACjG,CAAA;EACAV,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaS,MAAMR,OAAOS,SAAST,OAAOU,aAAa;IACvDR,UAAU,MACRC,YAAYC,aAAaO,UAAU;MACjCb,IAAIc,YAAWC;MACfC,UAAU;QACRC,cAAc,CAACC,OAA0BC,YACvCC,aAAaC,aAAaC,QAAQ;UAAE,GAAGJ;UAAOK,OAAOJ,QAAQI;QAAM,CAAA;QACrEC,aAAa;UAAC;UAA4B;YAAEC,IAAIC;UAAc;;QAC9DC,MAAM;MACR;IACF,CAAA;EACJ,CAAA;EACA5B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAa2B,aAAaC;IAC1BzB,UAAU,MAAMC,YAAYyB,mBAAmBC,QAAQ;MAACjB;KAAW;EACrE,CAAA;EACAf,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOS;IACpBP,UAAU4B;EACZ,CAAA;EACAjC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO+B;IACpB7B,UAAU8B;EACZ,CAAA;CACD;",
6
- "names": ["createIntent", "defineModule", "contributes", "Capabilities", "Events", "definePlugin", "oneOf", "ClientCapabilities", "ClientEvents", "KanbanType", "translations", "kanbanTranslations", "lazy", "IntentResolver", "lazy", "ReactSurface", "KanbanType", "KanbanType", "typename", "KANBAN_PLUGIN", "KanbanPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "kanbanTranslations", "oneOf", "Startup", "SetupAppGraph", "Metadata", "KanbanType", "typename", "metadata", "createObject", "props", "options", "createIntent", "KanbanAction", "Create", "space", "placeholder", "ns", "KANBAN_PLUGIN", "icon", "ClientEvents", "SetupClient", "ClientCapabilities", "Schema", "ReactSurface", "SetupIntents", "IntentResolver"]
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport { createIntent, defineModule, contributes, Capabilities, Events, definePlugin } from '@dxos/app-framework';\nimport { ClientCapabilities, ClientEvents } from '@dxos/plugin-client';\nimport { type Space } from '@dxos/react-client/echo';\nimport { KanbanType, translations as kanbanTranslations } from '@dxos/react-ui-kanban';\n\nimport { IntentResolver, ReactSurface } from './capabilities';\nimport { KANBAN_PLUGIN, meta } from './meta';\nimport translations from './translations';\nimport { CreateKanbanSchema, type CreateKanbanType, KanbanAction } from './types';\n\nexport const KanbanPlugin = () =>\n definePlugin(meta, [\n defineModule({\n id: `${meta.id}/module/translations`,\n activatesOn: Events.SetupTranslations,\n activate: () => contributes(Capabilities.Translations, [...translations, ...kanbanTranslations]),\n }),\n defineModule({\n id: `${meta.id}/module/metadata`,\n activatesOn: Events.SetupMetadata,\n activate: () =>\n contributes(Capabilities.Metadata, {\n id: KanbanType.typename,\n metadata: {\n creationSchema: CreateKanbanSchema,\n createObject: (props: CreateKanbanType, options: { space: Space }) =>\n createIntent(KanbanAction.Create, { ...props, space: options.space }),\n placeholder: ['kanban title placeholder', { ns: KANBAN_PLUGIN }],\n icon: 'ph--kanban--regular',\n },\n }),\n }),\n defineModule({\n id: `${meta.id}/module/schema`,\n activatesOn: ClientEvents.SetupSchema,\n activate: () => contributes(ClientCapabilities.Schema, [KanbanType]),\n }),\n defineModule({\n id: `${meta.id}/module/react-surface`,\n activatesOn: Events.SetupSurfaces,\n activate: ReactSurface,\n }),\n defineModule({\n id: `${meta.id}/module/intent-resolver`,\n activatesOn: Events.SetupIntents,\n activate: IntentResolver,\n }),\n ]);\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { lazy } from '@dxos/app-framework';\n\nexport const IntentResolver = lazy(() => import('./intent-resolver'));\nexport const ReactSurface = lazy(() => import('./react-surface'));\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { KanbanType } from '@dxos/react-ui-kanban';\n\nimport { KANBAN_PLUGIN } from './meta';\n\nexport default [\n {\n 'en-US': {\n [KanbanType.typename]: {\n 'typename label': 'Kanban',\n },\n [KANBAN_PLUGIN]: {\n 'plugin name': 'Kanban',\n 'kanban title label': 'Title',\n 'kanban title placeholder': 'New kanban',\n 'column title label': 'Column title',\n 'column title placeholder': 'New column',\n 'item title label': 'Item title',\n 'item title placeholder': 'New item',\n 'add column label': 'Add column',\n 'add item label': 'Add card',\n 'delete column label': 'Delete column',\n 'delete item label': 'Delete card',\n 'create kanban label': 'Create kanban',\n 'card field deleted label': 'Card field deleted',\n },\n },\n },\n];\n"],
5
+ "mappings": ";;;;;;;;AAIA,SAASA,cAAcC,cAAcC,aAAaC,cAAcC,QAAQC,oBAAoB;AAC5F,SAASC,oBAAoBC,oBAAoB;AAEjD,SAASC,cAAAA,aAAYC,gBAAgBC,0BAA0B;;;ACH/D,SAASC,YAAY;AAEd,IAAMC,iBAAiBC,KAAK,MAAM,OAAO,gCAAA,CAAA;AACzC,IAAMC,eAAeD,KAAK,MAAM,OAAO,8BAAA,CAAA;;;ACH9C,SAASE,kBAAkB;AAI3B,IAAA,uBAAe;EACb;IACE,SAAS;MACP,CAACC,WAAWC,QAAQ,GAAG;QACrB,kBAAkB;MACpB;MACA,CAACC,aAAAA,GAAgB;QACf,eAAe;QACf,sBAAsB;QACtB,4BAA4B;QAC5B,sBAAsB;QACtB,4BAA4B;QAC5B,oBAAoB;QACpB,0BAA0B;QAC1B,oBAAoB;QACpB,kBAAkB;QAClB,uBAAuB;QACvB,qBAAqB;QACrB,uBAAuB;QACvB,4BAA4B;MAC9B;IACF;EACF;;;;AFhBK,IAAMC,eAAe,MAC1BC,aAAaC,MAAM;EACjBC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOC;IACpBC,UAAU,MAAMC,YAAYC,aAAaC,cAAc;SAAIC;SAAiBC;KAAmB;EACjG,CAAA;EACAV,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOQ;IACpBN,UAAU,MACRC,YAAYC,aAAaK,UAAU;MACjCX,IAAIY,YAAWC;MACfC,UAAU;QACRC,gBAAgBC;QAChBC,cAAc,CAACC,OAAyBC,YACtCC,aAAaC,aAAaC,QAAQ;UAAE,GAAGJ;UAAOK,OAAOJ,QAAQI;QAAM,CAAA;QACrEC,aAAa;UAAC;UAA4B;YAAEC,IAAIC;UAAc;;QAC9DC,MAAM;MACR;IACF,CAAA;EACJ,CAAA;EACA5B,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAa2B,aAAaC;IAC1BzB,UAAU,MAAMC,YAAYyB,mBAAmBC,QAAQ;MAACnB;KAAW;EACrE,CAAA;EACAb,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAO8B;IACpB5B,UAAU6B;EACZ,CAAA;EACAlC,aAAa;IACXC,IAAI,GAAGF,KAAKE,EAAE;IACdC,aAAaC,OAAOgC;IACpB9B,UAAU+B;EACZ,CAAA;CACD;",
6
+ "names": ["createIntent", "defineModule", "contributes", "Capabilities", "Events", "definePlugin", "ClientCapabilities", "ClientEvents", "KanbanType", "translations", "kanbanTranslations", "lazy", "IntentResolver", "lazy", "ReactSurface", "KanbanType", "KanbanType", "typename", "KANBAN_PLUGIN", "KanbanPlugin", "definePlugin", "meta", "defineModule", "id", "activatesOn", "Events", "SetupTranslations", "activate", "contributes", "Capabilities", "Translations", "translations", "kanbanTranslations", "SetupMetadata", "Metadata", "KanbanType", "typename", "metadata", "creationSchema", "CreateKanbanSchema", "createObject", "props", "options", "createIntent", "KanbanAction", "Create", "space", "placeholder", "ns", "KANBAN_PLUGIN", "icon", "ClientEvents", "SetupSchema", "ClientCapabilities", "Schema", "SetupSurfaces", "ReactSurface", "SetupIntents", "IntentResolver"]
7
7
  }
@@ -0,0 +1,80 @@
1
+ import {
2
+ KANBAN_PLUGIN,
3
+ KanbanAction,
4
+ createKanban
5
+ } from "./chunk-LM23M5YY.mjs";
6
+
7
+ // packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts
8
+ import { contributes, Capabilities, createResolver } from "@dxos/app-framework";
9
+ import { invariant } from "@dxos/invariant";
10
+ import { getSpace } from "@dxos/react-client/echo";
11
+ import { ViewProjection } from "@dxos/schema";
12
+ var __dxlog_file = "/home/runner/work/dxos/dxos/packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts";
13
+ var intent_resolver_default = () => contributes(Capabilities.IntentResolver, [
14
+ createResolver({
15
+ intent: KanbanAction.Create,
16
+ resolve: async ({ space, initialSchema, initialPivotColumn }) => ({
17
+ data: {
18
+ object: await createKanban({
19
+ space,
20
+ initialSchema,
21
+ initialPivotColumn
22
+ })
23
+ }
24
+ })
25
+ }),
26
+ createResolver({
27
+ intent: KanbanAction.DeleteCardField,
28
+ resolve: ({ kanban, fieldId, deletionData }, undo) => {
29
+ invariant(kanban.cardView, void 0, {
30
+ F: __dxlog_file,
31
+ L: 24,
32
+ S: void 0,
33
+ A: [
34
+ "kanban.cardView",
35
+ ""
36
+ ]
37
+ });
38
+ const schema = kanban.cardView.target && getSpace(kanban)?.db.schemaRegistry.getSchema(kanban.cardView.target.query.type);
39
+ invariant(schema, void 0, {
40
+ F: __dxlog_file,
41
+ L: 28,
42
+ S: void 0,
43
+ A: [
44
+ "schema",
45
+ ""
46
+ ]
47
+ });
48
+ const projection = new ViewProjection(schema, kanban.cardView.target);
49
+ if (!undo) {
50
+ const { deleted, index } = projection.deleteFieldProjection(fieldId);
51
+ return {
52
+ undoable: {
53
+ message: [
54
+ "card field deleted label",
55
+ {
56
+ ns: KANBAN_PLUGIN
57
+ }
58
+ ],
59
+ data: {
60
+ deletionData: {
61
+ ...deleted,
62
+ index
63
+ }
64
+ }
65
+ }
66
+ };
67
+ } else if (undo && deletionData) {
68
+ const { field, props, index } = deletionData;
69
+ projection.setFieldProjection({
70
+ field,
71
+ props
72
+ }, index);
73
+ }
74
+ }
75
+ })
76
+ ]);
77
+ export {
78
+ intent_resolver_default as default
79
+ };
80
+ //# sourceMappingURL=intent-resolver-HGOXP6M3.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/capabilities/intent-resolver.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2025 DXOS.org\n//\n\nimport { contributes, Capabilities, createResolver } from '@dxos/app-framework';\nimport { invariant } from '@dxos/invariant';\nimport { getSpace } from '@dxos/react-client/echo';\nimport { ViewProjection } from '@dxos/schema';\n\nimport { KANBAN_PLUGIN } from '../meta';\nimport { createKanban, KanbanAction } from '../types';\n\nexport default () =>\n contributes(Capabilities.IntentResolver, [\n createResolver({\n intent: KanbanAction.Create,\n resolve: async ({ space, initialSchema, initialPivotColumn }) => ({\n data: { object: await createKanban({ space, initialSchema, initialPivotColumn }) },\n }),\n }),\n createResolver({\n intent: KanbanAction.DeleteCardField,\n resolve: ({ kanban, fieldId, deletionData }, undo) => {\n invariant(kanban.cardView);\n\n const schema =\n kanban.cardView.target && getSpace(kanban)?.db.schemaRegistry.getSchema(kanban.cardView.target.query.type);\n invariant(schema);\n const projection = new ViewProjection(schema, kanban.cardView.target!);\n\n if (!undo) {\n const { deleted, index } = projection.deleteFieldProjection(fieldId);\n return {\n undoable: {\n message: ['card field deleted label', { ns: KANBAN_PLUGIN }],\n data: { deletionData: { ...deleted, index } },\n },\n };\n } else if (undo && deletionData) {\n const { field, props, index } = deletionData;\n projection.setFieldProjection({ field, props }, index);\n }\n },\n }),\n ]);\n"],
5
+ "mappings": ";;;;;;;AAIA,SAASA,aAAaC,cAAcC,sBAAsB;AAC1D,SAASC,iBAAiB;AAC1B,SAASC,gBAAgB;AACzB,SAASC,sBAAsB;;AAK/B,IAAA,0BAAe,MACbC,YAAYC,aAAaC,gBAAgB;EACvCC,eAAe;IACbC,QAAQC,aAAaC;IACrBC,SAAS,OAAO,EAAEC,OAAOC,eAAeC,mBAAkB,OAAQ;MAChEC,MAAM;QAAEC,QAAQ,MAAMC,aAAa;UAAEL;UAAOC;UAAeC;QAAmB,CAAA;MAAG;IACnF;EACF,CAAA;EACAP,eAAe;IACbC,QAAQC,aAAaS;IACrBP,SAAS,CAAC,EAAEQ,QAAQC,SAASC,aAAY,GAAIC,SAAAA;AAC3CC,gBAAUJ,OAAOK,UAAQ,QAAA;;;;;;;;;AAEzB,YAAMC,SACJN,OAAOK,SAASE,UAAUC,SAASR,MAAAA,GAASS,GAAGC,eAAeC,UAAUX,OAAOK,SAASE,OAAOK,MAAMC,IAAI;AAC3GT,gBAAUE,QAAAA,QAAAA;;;;;;;;;AACV,YAAMQ,aAAa,IAAIC,eAAeT,QAAQN,OAAOK,SAASE,MAAM;AAEpE,UAAI,CAACJ,MAAM;AACT,cAAM,EAAEa,SAASC,MAAK,IAAKH,WAAWI,sBAAsBjB,OAAAA;AAC5D,eAAO;UACLkB,UAAU;YACRC,SAAS;cAAC;cAA4B;gBAAEC,IAAIC;cAAc;;YAC1D1B,MAAM;cAAEM,cAAc;gBAAE,GAAGc;gBAASC;cAAM;YAAE;UAC9C;QACF;MACF,WAAWd,QAAQD,cAAc;AAC/B,cAAM,EAAEqB,OAAOC,OAAOP,MAAK,IAAKf;AAChCY,mBAAWW,mBAAmB;UAAEF;UAAOC;QAAM,GAAGP,KAAAA;MAClD;IACF;EACF,CAAA;CACD;",
6
+ "names": ["contributes", "Capabilities", "createResolver", "invariant", "getSpace", "ViewProjection", "contributes", "Capabilities", "IntentResolver", "createResolver", "intent", "KanbanAction", "Create", "resolve", "space", "initialSchema", "initialPivotColumn", "data", "object", "createKanban", "DeleteCardField", "kanban", "fieldId", "deletionData", "undo", "invariant", "cardView", "schema", "target", "getSpace", "db", "schemaRegistry", "getSchema", "query", "type", "projection", "ViewProjection", "deleted", "index", "deleteFieldProjection", "undoable", "message", "ns", "KANBAN_PLUGIN", "field", "props", "setFieldProjection"]
7
+ }
@@ -1 +1 @@
1
- {"inputs":{"packages/plugins/plugin-kanban/src/meta.ts":{"bytes":1609,"imports":[],"format":"esm"},"packages/plugins/plugin-kanban/src/types.ts":{"bytes":7184,"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban/testing","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts":{"bytes":6666,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-kanban/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-kanban/src/components/KanbanContainer.tsx":{"bytes":8867,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-kanban/src/components/KanbanViewEditor.tsx":{"bytes":10559,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-kanban/src/components/index.ts":{"bytes":644,"imports":[{"path":"packages/plugins/plugin-kanban/src/components/KanbanContainer.tsx","kind":"import-statement","original":"./KanbanContainer"},{"path":"packages/plugins/plugin-kanban/src/components/KanbanViewEditor.tsx","kind":"import-statement","original":"./KanbanViewEditor"}],"format":"esm"},"packages/plugins/plugin-kanban/src/capabilities/react-surface.tsx":{"bytes":3885,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-kanban/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-kanban/src/capabilities/index.ts":{"bytes":1081,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-kanban/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"packages/plugins/plugin-kanban/src/translations.ts":{"bytes":3129,"imports":[{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-kanban/src/KanbanPlugin.tsx":{"bytes":7668,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-kanban/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-kanban/src/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-kanban/src/index.ts":{"bytes":594,"imports":[{"path":"packages/plugins/plugin-kanban/src/KanbanPlugin.tsx","kind":"import-statement","original":"./KanbanPlugin"},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-kanban/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5418},"packages/plugins/plugin-kanban/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-kanban/dist/lib/browser/chunk-FAA5WRZY.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/dist/lib/browser/intent-resolver-EWY2KVLT.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-kanban/dist/lib/browser/react-surface-47DT36V2.mjs","kind":"dynamic-import"},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true}],"exports":["KANBAN_PLUGIN","KanbanPlugin","meta"],"entryPoint":"packages/plugins/plugin-kanban/src/index.ts","inputs":{"packages/plugins/plugin-kanban/src/KanbanPlugin.tsx":{"bytesInOutput":1578},"packages/plugins/plugin-kanban/src/capabilities/index.ts":{"bytesInOutput":190},"packages/plugins/plugin-kanban/src/translations.ts":{"bytesInOutput":804},"packages/plugins/plugin-kanban/src/index.ts":{"bytesInOutput":0}},"bytes":2967},"packages/plugins/plugin-kanban/dist/lib/browser/types.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-kanban/dist/lib/browser/types.mjs":{"imports":[{"path":"packages/plugins/plugin-kanban/dist/lib/browser/chunk-FAA5WRZY.mjs","kind":"import-statement"}],"exports":["KanbanAction","createKanban","isKanban"],"entryPoint":"packages/plugins/plugin-kanban/src/types.ts","inputs":{},"bytes":173},"packages/plugins/plugin-kanban/dist/lib/browser/intent-resolver-EWY2KVLT.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":2998},"packages/plugins/plugin-kanban/dist/lib/browser/intent-resolver-EWY2KVLT.mjs":{"imports":[{"path":"packages/plugins/plugin-kanban/dist/lib/browser/chunk-FAA5WRZY.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts":{"bytesInOutput":1733}},"bytes":1995},"packages/plugins/plugin-kanban/dist/lib/browser/react-surface-47DT36V2.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":11909},"packages/plugins/plugin-kanban/dist/lib/browser/react-surface-47DT36V2.mjs":{"imports":[{"path":"packages/plugins/plugin-kanban/dist/lib/browser/chunk-FAA5WRZY.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-kanban/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-kanban/src/capabilities/react-surface.tsx":{"bytesInOutput":744},"packages/plugins/plugin-kanban/src/components/KanbanContainer.tsx":{"bytesInOutput":2303},"packages/plugins/plugin-kanban/src/components/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-kanban/src/components/KanbanViewEditor.tsx":{"bytesInOutput":2520}},"bytes":6031},"packages/plugins/plugin-kanban/dist/lib/browser/chunk-FAA5WRZY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":4619},"packages/plugins/plugin-kanban/dist/lib/browser/chunk-FAA5WRZY.mjs":{"imports":[{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban/testing","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["KANBAN_PLUGIN","KanbanAction","createKanban","isKanban","meta"],"inputs":{"packages/plugins/plugin-kanban/src/types.ts":{"bytesInOutput":1368},"packages/plugins/plugin-kanban/src/meta.ts":{"bytesInOutput":312}},"bytes":1947}}}
1
+ {"inputs":{"packages/plugins/plugin-kanban/src/meta.ts":{"bytes":2257,"imports":[],"format":"esm"},"packages/plugins/plugin-kanban/src/types.ts":{"bytes":10264,"imports":[{"path":"@effect/schema/AST","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban/testing","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts":{"bytes":7646,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-kanban/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-kanban/src/components/KanbanContainer.tsx":{"bytes":9755,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"format":"esm"},"packages/plugins/plugin-kanban/src/components/KanbanViewEditor.tsx":{"bytes":11797,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-kanban/src/components/index.ts":{"bytes":644,"imports":[{"path":"packages/plugins/plugin-kanban/src/components/KanbanContainer.tsx","kind":"import-statement","original":"./KanbanContainer"},{"path":"packages/plugins/plugin-kanban/src/components/KanbanViewEditor.tsx","kind":"import-statement","original":"./KanbanViewEditor"}],"format":"esm"},"packages/plugins/plugin-kanban/src/capabilities/react-surface.tsx":{"bytes":13335,"imports":[{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/components/index.ts","kind":"import-statement","original":"../components"},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"../meta"},{"path":"packages/plugins/plugin-kanban/src/types.ts","kind":"import-statement","original":"../types"}],"format":"esm"},"packages/plugins/plugin-kanban/src/capabilities/index.ts":{"bytes":1081,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts","kind":"dynamic-import","original":"./intent-resolver"},{"path":"packages/plugins/plugin-kanban/src/capabilities/react-surface.tsx","kind":"dynamic-import","original":"./react-surface"}],"format":"esm"},"packages/plugins/plugin-kanban/src/translations.ts":{"bytes":3129,"imports":[{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"},"packages/plugins/plugin-kanban/src/KanbanPlugin.tsx":{"bytes":7824,"imports":[{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/src/capabilities/index.ts","kind":"import-statement","original":"./capabilities"},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"./meta"},{"path":"packages/plugins/plugin-kanban/src/translations.ts","kind":"import-statement","original":"./translations"},{"path":"packages/plugins/plugin-kanban/src/types.ts","kind":"import-statement","original":"./types"}],"format":"esm"},"packages/plugins/plugin-kanban/src/index.ts":{"bytes":594,"imports":[{"path":"packages/plugins/plugin-kanban/src/KanbanPlugin.tsx","kind":"import-statement","original":"./KanbanPlugin"},{"path":"packages/plugins/plugin-kanban/src/meta.ts","kind":"import-statement","original":"./meta"}],"format":"esm"}},"outputs":{"packages/plugins/plugin-kanban/dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":5483},"packages/plugins/plugin-kanban/dist/lib/browser/index.mjs":{"imports":[{"path":"packages/plugins/plugin-kanban/dist/lib/browser/chunk-LM23M5YY.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/plugin-client","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"packages/plugins/plugin-kanban/dist/lib/browser/intent-resolver-HGOXP6M3.mjs","kind":"dynamic-import"},{"path":"packages/plugins/plugin-kanban/dist/lib/browser/react-surface-MNZFIIM2.mjs","kind":"dynamic-import"},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true}],"exports":["KANBAN_PLUGIN","KanbanPlugin","meta"],"entryPoint":"packages/plugins/plugin-kanban/src/index.ts","inputs":{"packages/plugins/plugin-kanban/src/KanbanPlugin.tsx":{"bytesInOutput":1598},"packages/plugins/plugin-kanban/src/capabilities/index.ts":{"bytesInOutput":190},"packages/plugins/plugin-kanban/src/translations.ts":{"bytesInOutput":804},"packages/plugins/plugin-kanban/src/index.ts":{"bytesInOutput":0}},"bytes":3009},"packages/plugins/plugin-kanban/dist/lib/browser/types.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":93},"packages/plugins/plugin-kanban/dist/lib/browser/types.mjs":{"imports":[{"path":"packages/plugins/plugin-kanban/dist/lib/browser/chunk-LM23M5YY.mjs","kind":"import-statement"}],"exports":["CreateKanbanSchema","InitialPivotColumnAnnotationId","InitialSchemaAnnotationId","KanbanAction","createKanban","isKanban"],"entryPoint":"packages/plugins/plugin-kanban/src/types.ts","inputs":{},"bytes":343},"packages/plugins/plugin-kanban/dist/lib/browser/intent-resolver-HGOXP6M3.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":3339},"packages/plugins/plugin-kanban/dist/lib/browser/intent-resolver-HGOXP6M3.mjs":{"imports":[{"path":"packages/plugins/plugin-kanban/dist/lib/browser/chunk-LM23M5YY.mjs","kind":"import-statement"},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts","inputs":{"packages/plugins/plugin-kanban/src/capabilities/intent-resolver.ts":{"bytesInOutput":2007}},"bytes":2269},"packages/plugins/plugin-kanban/dist/lib/browser/react-surface-MNZFIIM2.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":17724},"packages/plugins/plugin-kanban/dist/lib/browser/react-surface-MNZFIIM2.mjs":{"imports":[{"path":"packages/plugins/plugin-kanban/dist/lib/browser/chunk-LM23M5YY.mjs","kind":"import-statement"},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/effect","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/plugin-search","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/react-ui-stack","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true},{"path":"react","kind":"import-statement","external":true},{"path":"@dxos/app-framework","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-form","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["default"],"entryPoint":"packages/plugins/plugin-kanban/src/capabilities/react-surface.tsx","inputs":{"packages/plugins/plugin-kanban/src/capabilities/react-surface.tsx":{"bytesInOutput":3057},"packages/plugins/plugin-kanban/src/components/KanbanContainer.tsx":{"bytesInOutput":2501},"packages/plugins/plugin-kanban/src/components/index.ts":{"bytesInOutput":0},"packages/plugins/plugin-kanban/src/components/KanbanViewEditor.tsx":{"bytesInOutput":3174}},"bytes":9259},"packages/plugins/plugin-kanban/dist/lib/browser/chunk-LM23M5YY.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":6326},"packages/plugins/plugin-kanban/dist/lib/browser/chunk-LM23M5YY.mjs":{"imports":[{"path":"@effect/schema/AST","kind":"import-statement","external":true},{"path":"@dxos/echo-schema","kind":"import-statement","external":true},{"path":"@dxos/react-client/echo","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban","kind":"import-statement","external":true},{"path":"@dxos/react-ui-kanban/testing","kind":"import-statement","external":true},{"path":"@dxos/schema","kind":"import-statement","external":true}],"exports":["CreateKanbanSchema","InitialPivotColumnAnnotationId","InitialSchemaAnnotationId","KANBAN_PLUGIN","KanbanAction","createKanban","isKanban","meta"],"inputs":{"packages/plugins/plugin-kanban/src/types.ts":{"bytesInOutput":1992},"packages/plugins/plugin-kanban/src/meta.ts":{"bytesInOutput":564}},"bytes":2908}}}