@industry-theme/backlogmd-kanban-panel 0.2.1 → 0.2.3
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.
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/panels/KanbanPanel.stories.d.ts +2 -2
- package/dist/panels/KanbanPanel.stories.d.ts.map +1 -1
- package/dist/panels/kanban/components/KanbanColumn.d.ts.map +1 -1
- package/dist/panels.bundle.js +130 -3
- package/dist/panels.bundle.js.map +1 -1
- package/dist/tools/index.d.ts +36 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools.bundle.js +130 -0
- package/package.json +27 -15
package/dist/index.d.ts
CHANGED
|
@@ -14,4 +14,9 @@ export declare const onPackageLoad: () => Promise<void>;
|
|
|
14
14
|
* Use this for package-level cleanup.
|
|
15
15
|
*/
|
|
16
16
|
export declare const onPackageUnload: () => Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Export tools for server-safe imports.
|
|
19
|
+
* Use '@industry-theme/backlogmd-kanban-panel/tools' to import without React dependencies.
|
|
20
|
+
*/
|
|
21
|
+
export { kanbanPanelTools, kanbanPanelToolsMetadata, moveTaskTool, selectTaskTool, refreshBoardTool, filterTasksTool, } from './tools';
|
|
17
22
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAqB,MAAM,SAAS,CAAC;AAGlE;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,eAAe,EA6BnC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,qBAGzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,qBAG3B,CAAC;AAEF;;;GAGG;AACH,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,eAAe,GAChB,MAAM,SAAS,CAAC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { StoryObj } from '@storybook/react';
|
|
2
|
+
import type { StoryObj } from '@storybook/react-vite';
|
|
3
3
|
declare const meta: {
|
|
4
4
|
title: string;
|
|
5
5
|
component: React.FC<import("@principal-ade/panel-framework-core").PanelComponentProps>;
|
|
6
6
|
parameters: {
|
|
7
7
|
layout: string;
|
|
8
8
|
};
|
|
9
|
-
decorators: ((Story: import("
|
|
9
|
+
decorators: ((Story: import("storybook/internal/csf").PartialStoryFn<import("@storybook/react").ReactRenderer, {
|
|
10
10
|
context: import("@principal-ade/panel-framework-core").PanelContextValue;
|
|
11
11
|
actions: import("@principal-ade/panel-framework-core").PanelActions;
|
|
12
12
|
events: import("@principal-ade/panel-framework-core").PanelEventEmitter;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KanbanPanel.stories.d.ts","sourceRoot":"","sources":["../../src/panels/KanbanPanel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"KanbanPanel.stories.d.ts","sourceRoot":"","sources":["../../src/panels/KanbanPanel.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAM5D,QAAA,MAAM,IAAI;;;;;;;;;;;;CAc0B,CAAC;AAErC,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AA0HnC,eAAO,MAAM,UAAU,EAAE,KAyBxB,CAAC;AAKF,eAAO,MAAM,YAAY,EAAE,KAa1B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KanbanColumn.d.ts","sourceRoot":"","sources":["../../../../src/panels/kanban/components/KanbanColumn.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C,UAAU,iBAAiB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACpC;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"KanbanColumn.d.ts","sourceRoot":"","sources":["../../../../src/panels/kanban/components/KanbanColumn.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C,UAAU,iBAAiB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACpC;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAkMpD,CAAC"}
|
package/dist/panels.bundle.js
CHANGED
|
@@ -7401,7 +7401,6 @@ const KanbanColumn = ({
|
|
|
7401
7401
|
flex: "1",
|
|
7402
7402
|
minWidth: "min(280px, 85vw)",
|
|
7403
7403
|
// Responsive width for mobile
|
|
7404
|
-
maxWidth: "400px",
|
|
7405
7404
|
display: "flex",
|
|
7406
7405
|
flexDirection: "column",
|
|
7407
7406
|
gap: "12px",
|
|
@@ -7824,6 +7823,127 @@ const KanbanPanelContent = ({
|
|
|
7824
7823
|
const KanbanPanel = (props) => {
|
|
7825
7824
|
return /* @__PURE__ */ jsx(ThemeProvider, { children: /* @__PURE__ */ jsx(KanbanPanelContent, { ...props }) });
|
|
7826
7825
|
};
|
|
7826
|
+
const moveTaskTool = {
|
|
7827
|
+
name: "move_task",
|
|
7828
|
+
description: "Moves a task to a different status column on the kanban board",
|
|
7829
|
+
inputs: {
|
|
7830
|
+
type: "object",
|
|
7831
|
+
properties: {
|
|
7832
|
+
taskId: {
|
|
7833
|
+
type: "string",
|
|
7834
|
+
description: "The ID of the task to move"
|
|
7835
|
+
},
|
|
7836
|
+
targetStatus: {
|
|
7837
|
+
type: "string",
|
|
7838
|
+
description: 'The target status column (e.g., "To Do", "In Progress", "Done")'
|
|
7839
|
+
}
|
|
7840
|
+
},
|
|
7841
|
+
required: ["taskId", "targetStatus"]
|
|
7842
|
+
},
|
|
7843
|
+
outputs: {
|
|
7844
|
+
type: "object",
|
|
7845
|
+
properties: {
|
|
7846
|
+
success: { type: "boolean" },
|
|
7847
|
+
message: { type: "string" }
|
|
7848
|
+
}
|
|
7849
|
+
},
|
|
7850
|
+
tags: ["kanban", "task", "move", "status"],
|
|
7851
|
+
tool_call_template: {
|
|
7852
|
+
call_template_type: "panel_event",
|
|
7853
|
+
event_type: "industry-theme.kanban-panel:move-task"
|
|
7854
|
+
}
|
|
7855
|
+
};
|
|
7856
|
+
const selectTaskTool = {
|
|
7857
|
+
name: "select_task",
|
|
7858
|
+
description: "Selects a task to view its details",
|
|
7859
|
+
inputs: {
|
|
7860
|
+
type: "object",
|
|
7861
|
+
properties: {
|
|
7862
|
+
taskId: {
|
|
7863
|
+
type: "string",
|
|
7864
|
+
description: "The ID of the task to select"
|
|
7865
|
+
}
|
|
7866
|
+
},
|
|
7867
|
+
required: ["taskId"]
|
|
7868
|
+
},
|
|
7869
|
+
outputs: {
|
|
7870
|
+
type: "object",
|
|
7871
|
+
properties: {
|
|
7872
|
+
success: { type: "boolean" },
|
|
7873
|
+
task: { type: "object" }
|
|
7874
|
+
}
|
|
7875
|
+
},
|
|
7876
|
+
tags: ["kanban", "task", "select", "view"],
|
|
7877
|
+
tool_call_template: {
|
|
7878
|
+
call_template_type: "panel_event",
|
|
7879
|
+
event_type: "industry-theme.kanban-panel:select-task"
|
|
7880
|
+
}
|
|
7881
|
+
};
|
|
7882
|
+
const refreshBoardTool = {
|
|
7883
|
+
name: "refresh_board",
|
|
7884
|
+
description: "Refreshes the kanban board to reload tasks from the backlog",
|
|
7885
|
+
inputs: {
|
|
7886
|
+
type: "object",
|
|
7887
|
+
properties: {}
|
|
7888
|
+
},
|
|
7889
|
+
outputs: {
|
|
7890
|
+
type: "object",
|
|
7891
|
+
properties: {
|
|
7892
|
+
success: { type: "boolean" }
|
|
7893
|
+
}
|
|
7894
|
+
},
|
|
7895
|
+
tags: ["kanban", "board", "refresh"],
|
|
7896
|
+
tool_call_template: {
|
|
7897
|
+
call_template_type: "panel_event",
|
|
7898
|
+
event_type: "industry-theme.kanban-panel:refresh-board"
|
|
7899
|
+
}
|
|
7900
|
+
};
|
|
7901
|
+
const filterTasksTool = {
|
|
7902
|
+
name: "filter_tasks",
|
|
7903
|
+
description: "Filters tasks on the kanban board by labels, assignee, or priority",
|
|
7904
|
+
inputs: {
|
|
7905
|
+
type: "object",
|
|
7906
|
+
properties: {
|
|
7907
|
+
labels: {
|
|
7908
|
+
type: "array",
|
|
7909
|
+
items: { type: "string" },
|
|
7910
|
+
description: "Filter by task labels"
|
|
7911
|
+
},
|
|
7912
|
+
assignee: {
|
|
7913
|
+
type: "string",
|
|
7914
|
+
description: "Filter by assignee name"
|
|
7915
|
+
},
|
|
7916
|
+
priority: {
|
|
7917
|
+
type: "string",
|
|
7918
|
+
description: "Filter by priority level"
|
|
7919
|
+
}
|
|
7920
|
+
}
|
|
7921
|
+
},
|
|
7922
|
+
outputs: {
|
|
7923
|
+
type: "object",
|
|
7924
|
+
properties: {
|
|
7925
|
+
success: { type: "boolean" },
|
|
7926
|
+
count: { type: "number" }
|
|
7927
|
+
}
|
|
7928
|
+
},
|
|
7929
|
+
tags: ["kanban", "task", "filter", "search"],
|
|
7930
|
+
tool_call_template: {
|
|
7931
|
+
call_template_type: "panel_event",
|
|
7932
|
+
event_type: "industry-theme.kanban-panel:filter-tasks"
|
|
7933
|
+
}
|
|
7934
|
+
};
|
|
7935
|
+
const kanbanPanelTools = [
|
|
7936
|
+
moveTaskTool,
|
|
7937
|
+
selectTaskTool,
|
|
7938
|
+
refreshBoardTool,
|
|
7939
|
+
filterTasksTool
|
|
7940
|
+
];
|
|
7941
|
+
const kanbanPanelToolsMetadata = {
|
|
7942
|
+
id: "industry-theme.kanban-panel",
|
|
7943
|
+
name: "Kanban Panel",
|
|
7944
|
+
description: "Tools provided by the backlogmd kanban panel extension",
|
|
7945
|
+
tools: kanbanPanelTools
|
|
7946
|
+
};
|
|
7827
7947
|
const panels = [
|
|
7828
7948
|
{
|
|
7829
7949
|
metadata: {
|
|
@@ -7833,8 +7953,9 @@ const panels = [
|
|
|
7833
7953
|
version: "0.1.0",
|
|
7834
7954
|
author: "Principal ADE",
|
|
7835
7955
|
description: "Kanban board for visualizing Backlog.md tasks",
|
|
7836
|
-
slices: ["fileTree"]
|
|
7956
|
+
slices: ["fileTree"],
|
|
7837
7957
|
// Data slices this panel depends on
|
|
7958
|
+
tools: kanbanPanelTools
|
|
7838
7959
|
},
|
|
7839
7960
|
component: KanbanPanel,
|
|
7840
7961
|
// Optional: Called when this specific panel is mounted
|
|
@@ -7858,8 +7979,14 @@ const onPackageUnload = async () => {
|
|
|
7858
7979
|
console.log("Panel package unloading - Kanban Panel Extension");
|
|
7859
7980
|
};
|
|
7860
7981
|
export {
|
|
7982
|
+
filterTasksTool,
|
|
7983
|
+
kanbanPanelTools,
|
|
7984
|
+
kanbanPanelToolsMetadata,
|
|
7985
|
+
moveTaskTool,
|
|
7861
7986
|
onPackageLoad,
|
|
7862
7987
|
onPackageUnload,
|
|
7863
|
-
panels
|
|
7988
|
+
panels,
|
|
7989
|
+
refreshBoardTool,
|
|
7990
|
+
selectTaskTool
|
|
7864
7991
|
};
|
|
7865
7992
|
//# sourceMappingURL=panels.bundle.js.map
|