@fayz-ai/plugin-tasks 0.1.1

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 (75) hide show
  1. package/dist/TasksContext.d.ts +20 -0
  2. package/dist/TasksContext.d.ts.map +1 -0
  3. package/dist/components/TaskCard.d.ts +10 -0
  4. package/dist/components/TaskCard.d.ts.map +1 -0
  5. package/dist/components/TaskDetail.d.ts +5 -0
  6. package/dist/components/TaskDetail.d.ts.map +1 -0
  7. package/dist/components/TaskLabelBadge.d.ts +9 -0
  8. package/dist/components/TaskLabelBadge.d.ts.map +1 -0
  9. package/dist/components/TaskPriorityBadge.d.ts +7 -0
  10. package/dist/components/TaskPriorityBadge.d.ts.map +1 -0
  11. package/dist/components/TaskQuickAdd.d.ts +5 -0
  12. package/dist/components/TaskQuickAdd.d.ts.map +1 -0
  13. package/dist/components/TaskStatusGroup.d.ts +7 -0
  14. package/dist/components/TaskStatusGroup.d.ts.map +1 -0
  15. package/dist/components/TasksDrawer.d.ts +3 -0
  16. package/dist/components/TasksDrawer.d.ts.map +1 -0
  17. package/dist/components/TasksFilterBar.d.ts +3 -0
  18. package/dist/components/TasksFilterBar.d.ts.map +1 -0
  19. package/dist/components/TasksGeneralSettings.d.ts +3 -0
  20. package/dist/components/TasksGeneralSettings.d.ts.map +1 -0
  21. package/dist/components/TasksTopbarButton.d.ts +15 -0
  22. package/dist/components/TasksTopbarButton.d.ts.map +1 -0
  23. package/dist/data/capability.test.d.ts +2 -0
  24. package/dist/data/capability.test.d.ts.map +1 -0
  25. package/dist/data/mock.d.ts +3 -0
  26. package/dist/data/mock.d.ts.map +1 -0
  27. package/dist/data/supabase.d.ts +3 -0
  28. package/dist/data/supabase.d.ts.map +1 -0
  29. package/dist/data/types.d.ts +13 -0
  30. package/dist/data/types.d.ts.map +1 -0
  31. package/dist/index.cjs +1108 -0
  32. package/dist/index.cjs.map +1 -0
  33. package/dist/index.d.ts +21 -0
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/index.js +1102 -0
  36. package/dist/index.js.map +1 -0
  37. package/dist/lib/tenant.d.ts +3 -0
  38. package/dist/lib/tenant.d.ts.map +1 -0
  39. package/dist/locales/en.d.ts +2 -0
  40. package/dist/locales/en.d.ts.map +1 -0
  41. package/dist/locales/index.d.ts +2 -0
  42. package/dist/locales/index.d.ts.map +1 -0
  43. package/dist/locales/pt-BR.d.ts +2 -0
  44. package/dist/locales/pt-BR.d.ts.map +1 -0
  45. package/dist/registries.d.ts +3 -0
  46. package/dist/registries.d.ts.map +1 -0
  47. package/dist/store.d.ts +27 -0
  48. package/dist/store.d.ts.map +1 -0
  49. package/dist/types.d.ts +68 -0
  50. package/dist/types.d.ts.map +1 -0
  51. package/package.json +55 -0
  52. package/src/TasksContext.tsx +24 -0
  53. package/src/components/TaskCard.tsx +81 -0
  54. package/src/components/TaskDetail.tsx +184 -0
  55. package/src/components/TaskLabelBadge.tsx +37 -0
  56. package/src/components/TaskPriorityBadge.tsx +21 -0
  57. package/src/components/TaskQuickAdd.tsx +42 -0
  58. package/src/components/TaskStatusGroup.tsx +44 -0
  59. package/src/components/TasksDrawer.tsx +94 -0
  60. package/src/components/TasksFilterBar.tsx +57 -0
  61. package/src/components/TasksGeneralSettings.tsx +29 -0
  62. package/src/components/TasksTopbarButton.tsx +64 -0
  63. package/src/data/capability.test.ts +43 -0
  64. package/src/data/mock.ts +143 -0
  65. package/src/data/supabase.ts +193 -0
  66. package/src/data/types.ts +16 -0
  67. package/src/index.ts +217 -0
  68. package/src/lib/tenant.ts +13 -0
  69. package/src/locales/en.ts +40 -0
  70. package/src/locales/index.ts +7 -0
  71. package/src/locales/pt-BR.ts +40 -0
  72. package/src/migrations/001_tasks_base.sql +57 -0
  73. package/src/registries.ts +32 -0
  74. package/src/store.ts +148 -0
  75. package/src/types.ts +94 -0
@@ -0,0 +1,20 @@
1
+ import type { TasksDataProvider } from './data/types';
2
+ import type { TasksUIState } from './store';
3
+ export interface TasksPluginLabels {
4
+ drawerTitle: string;
5
+ settingsTitle: string;
6
+ quickAddPlaceholder: string;
7
+ }
8
+ export interface ResolvedTasksConfig {
9
+ labels: TasksPluginLabels;
10
+ }
11
+ export declare const TasksContextProvider: import("react").FC<{
12
+ config: ResolvedTasksConfig;
13
+ provider: TasksDataProvider;
14
+ store: import("zustand").StoreApi<TasksUIState>;
15
+ children?: React.ReactNode;
16
+ }>;
17
+ export declare const useTasksConfig: () => ResolvedTasksConfig;
18
+ export declare const useTasksProvider: () => TasksDataProvider;
19
+ export declare const useTasksStore: <T>(selector: (state: TasksUIState) => T) => T;
20
+ //# sourceMappingURL=TasksContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksContext.d.ts","sourceRoot":"","sources":["../src/TasksContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAM3C,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,mBAAmB,EAAE,MAAM,CAAA;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,iBAAiB,CAAA;CAC1B;AAID,eAAO,MAAM,oBAAoB;;;;;EAAsB,CAAA;AACvD,eAAO,MAAM,cAAc,2BAAgB,CAAA;AAC3C,eAAO,MAAM,gBAAgB,yBAAkB,CAAA;AAC/C,eAAO,MAAM,aAAa,gDAAe,CAAA"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { Task } from '../types';
3
+ export declare function TaskCard({ task, subtaskCount }: {
4
+ task: Task;
5
+ subtaskCount?: {
6
+ done: number;
7
+ total: number;
8
+ };
9
+ }): React.JSX.Element;
10
+ //# sourceMappingURL=TaskCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskCard.d.ts","sourceRoot":"","sources":["../../src/components/TaskCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAiBpC,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,qBAyD9G"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ export declare function TaskDetail({ taskId }: {
3
+ taskId: string;
4
+ }): React.JSX.Element;
5
+ //# sourceMappingURL=TaskDetail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskDetail.d.ts","sourceRoot":"","sources":["../../src/components/TaskDetail.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAsB/D,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,qBAiKxD"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export declare function TaskLabelBadge({ labelId }: {
3
+ labelId: string;
4
+ }): React.JSX.Element | null;
5
+ export declare function TaskLabelBadges({ labelIds, max }: {
6
+ labelIds: string[];
7
+ max?: number;
8
+ }): React.JSX.Element | null;
9
+ //# sourceMappingURL=TaskLabelBadge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskLabelBadge.d.ts","sourceRoot":"","sources":["../../src/components/TaskLabelBadge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,wBAAgB,cAAc,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,4BAgB9D;AAED,wBAAgB,eAAe,CAAC,EAAE,QAAQ,EAAE,GAAO,EAAE,EAAE;IAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,4BAe1F"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { TaskPriority } from '../types';
3
+ export declare function TaskPriorityBadge({ priority, showLabel }: {
4
+ priority: TaskPriority;
5
+ showLabel?: boolean;
6
+ }): React.JSX.Element;
7
+ //# sourceMappingURL=TaskPriorityBadge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskPriorityBadge.d.ts","sourceRoot":"","sources":["../../src/components/TaskPriorityBadge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAS5C,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,qBASzG"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ export declare function TaskQuickAdd({ parentId }: {
3
+ parentId?: string | null;
4
+ }): React.JSX.Element;
5
+ //# sourceMappingURL=TaskQuickAdd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskQuickAdd.d.ts","sourceRoot":"","sources":["../../src/components/TaskQuickAdd.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAA;AAMpD,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,qBAmCtE"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { Task, TaskStatus } from '../types';
3
+ export declare function TaskStatusGroup({ status, tasks }: {
4
+ status: TaskStatus;
5
+ tasks: Task[];
6
+ }): React.JSX.Element | null;
7
+ //# sourceMappingURL=TaskStatusGroup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TaskStatusGroup.d.ts","sourceRoot":"","sources":["../../src/components/TaskStatusGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAShD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,4BA8BvF"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare function TasksDrawer(): React.JSX.Element;
3
+ //# sourceMappingURL=TasksDrawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksDrawer.d.ts","sourceRoot":"","sources":["../../src/components/TasksDrawer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAgBzB,wBAAgB,WAAW,sBA6E1B"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare function TasksFilterBar(): React.JSX.Element;
3
+ //# sourceMappingURL=TasksFilterBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksFilterBar.d.ts","sourceRoot":"","sources":["../../src/components/TasksFilterBar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAYzB,wBAAgB,cAAc,sBA4C7B"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare function TasksGeneralSettings(): React.JSX.Element;
3
+ //# sourceMappingURL=TasksGeneralSettings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksGeneralSettings.d.ts","sourceRoot":"","sources":["../../src/components/TasksGeneralSettings.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,wBAAgB,oBAAoB,sBAyBnC"}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { type ResolvedTasksConfig } from '../TasksContext';
3
+ import type { TasksDataProvider } from '../data/types';
4
+ import type { TasksUIState } from '../store';
5
+ import { type StoreApi } from 'zustand';
6
+ interface TasksTopbarWidgetProps {
7
+ config: {
8
+ tasksConfig: ResolvedTasksConfig;
9
+ tasksProvider: TasksDataProvider;
10
+ tasksStore: StoreApi<TasksUIState>;
11
+ };
12
+ }
13
+ export declare function TasksTopbarButton({ config }: TasksTopbarWidgetProps): React.JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=TasksTopbarButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksTopbarButton.d.ts","sourceRoot":"","sources":["../../src/components/TasksTopbarButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAIxC,OAAO,EAAwB,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAEhF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC5C,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEjD,UAAU,sBAAsB;IAC9B,MAAM,EAAE;QACN,WAAW,EAAE,mBAAmB,CAAA;QAChC,aAAa,EAAE,iBAAiB,CAAA;QAChC,UAAU,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAA;KACnC,CAAA;CACF;AAED,wBAAgB,iBAAiB,CAAC,EAAE,MAAM,EAAE,EAAE,sBAAsB,qBASnE"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=capability.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capability.test.d.ts","sourceRoot":"","sources":["../../src/data/capability.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { TasksDataProvider } from './types';
2
+ export declare function createMockTasksProvider(): TasksDataProvider;
3
+ //# sourceMappingURL=mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../src/data/mock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AA+DhD,wBAAgB,uBAAuB,IAAI,iBAAiB,CA+E3D"}
@@ -0,0 +1,3 @@
1
+ import type { TasksDataProvider } from './types';
2
+ export declare function createSupabaseTasksProvider(): TasksDataProvider;
3
+ //# sourceMappingURL=supabase.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supabase.d.ts","sourceRoot":"","sources":["../../src/data/supabase.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AA+BhD,wBAAgB,2BAA2B,IAAI,iBAAiB,CAiK/D"}
@@ -0,0 +1,13 @@
1
+ import type { Task, TaskLabel, CreateTaskInput, UpdateTaskInput, TaskQuery, TasksSummary, TaskStatus } from '../types';
2
+ export interface TasksDataProvider {
3
+ getTasks(query: TaskQuery): Promise<Task[]>;
4
+ getTaskById(id: string): Promise<Task | null>;
5
+ getSubtasks(parentId: string): Promise<Task[]>;
6
+ createTask(input: CreateTaskInput): Promise<Task>;
7
+ updateTask(id: string, input: UpdateTaskInput): Promise<Task>;
8
+ deleteTask(id: string): Promise<void>;
9
+ reorderTask(id: string, newPosition: number, status: TaskStatus): Promise<void>;
10
+ getLabels(): Promise<TaskLabel[]>;
11
+ getSummary(): Promise<TasksSummary>;
12
+ }
13
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/data/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EACjD,SAAS,EAAE,YAAY,EAAE,UAAU,EACpC,MAAM,UAAU,CAAA;AAEjB,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IAC3C,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAA;IAC7C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;IAC9C,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/E,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;IACjC,UAAU,IAAI,OAAO,CAAC,YAAY,CAAC,CAAA;CACpC"}