@critical-path/svelte 0.11.0 → 0.12.0
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/CHANGELOG.md +8 -0
- package/README.md +34 -2
- package/dist/deliverable-summary-state.svelte.d.ts +14 -0
- package/dist/deliverable-summary-state.svelte.d.ts.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +622 -455
- package/dist/kanban-state.svelte.d.ts +24 -0
- package/dist/kanban-state.svelte.d.ts.map +1 -0
- package/dist/task-transitions-state.svelte.d.ts +12 -0
- package/dist/task-transitions-state.svelte.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/deliverable-summary-state.svelte.ts +41 -0
- package/src/index.test.ts +114 -0
- package/src/index.ts +4 -0
- package/src/kanban-state.svelte.ts +112 -0
- package/src/task-transitions-state.svelte.ts +36 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @critical-path/svelte
|
|
2
2
|
|
|
3
|
+
## 0.12.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 105f3d3: Synchronize feature parity between `@critical-path/react` and `@critical-path/svelte`:
|
|
8
|
+
- `@critical-path/react`: Added `updateTask` with optimistic updates and rollback to `useTasks`, and introduced `useTaskActivity` hook for unified threaded discussions and attachments.
|
|
9
|
+
- `@critical-path/svelte`: Added `KanbanState` (`createKanbanState`), `TaskTransitionsState` (`createTaskTransitionsState`), and `DeliverableSummaryState` (`createDeliverableSummaryState`) using native Svelte 5 runes.
|
|
10
|
+
|
|
3
11
|
## 0.11.0
|
|
4
12
|
|
|
5
13
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> **Svelte 5 Runes Reactive Integrations for Critical Path.**
|
|
4
4
|
|
|
5
|
-
`@critical-path/svelte` provides Svelte 5 Runes reactive state classes and factories (`ProjectState`, `TaskState`, `WorkflowState`, `CommentState`, `AttachmentState`, `TaskActivityState`) for building project management UIs in Svelte 5 and SvelteKit applications.
|
|
5
|
+
`@critical-path/svelte` provides Svelte 5 Runes reactive state classes and factories (`ProjectState`, `TaskState`, `KanbanState`, `TaskTransitionsState`, `WorkflowState`, `CommentState`, `AttachmentState`, `TaskActivityState`, `DeliverableState`, `DeliverableSummaryState`, `WebMcpState`) for building project management UIs in Svelte 5 and SvelteKit applications.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -52,7 +52,39 @@ pnpm add @critical-path/svelte svelte@^5.0.0
|
|
|
52
52
|
{/if}
|
|
53
53
|
```
|
|
54
54
|
|
|
55
|
-
### 2.
|
|
55
|
+
### 2. Reactive Kanban Board (`KanbanState`)
|
|
56
|
+
|
|
57
|
+
Buckets tasks reactively into workflow columns (`backlog`, `todo`, `in_progress`, etc.) or semantic columns (`not_started`, `in_progress`, `completed`, `canceled`):
|
|
58
|
+
|
|
59
|
+
```svelte
|
|
60
|
+
<script lang="ts">
|
|
61
|
+
import { onMount } from 'svelte';
|
|
62
|
+
import { createCriticalPathClient, createKanbanState } from '@critical-path/svelte';
|
|
63
|
+
|
|
64
|
+
const client = createCriticalPathClient({ baseUrl: '/api/critical-path' });
|
|
65
|
+
const kanban = createKanbanState(client, 'proj_1');
|
|
66
|
+
|
|
67
|
+
onMount(() => {
|
|
68
|
+
kanban.fetch();
|
|
69
|
+
});
|
|
70
|
+
</script>
|
|
71
|
+
|
|
72
|
+
<div class="board" style="display: flex; gap: 16px;">
|
|
73
|
+
{#each Object.entries(kanban.columns) as [status, tasks]}
|
|
74
|
+
<div class="column">
|
|
75
|
+
<h3>{status} ({tasks.length})</h3>
|
|
76
|
+
{#each tasks as task}
|
|
77
|
+
<div class="card">
|
|
78
|
+
<h4>{task.title}</h4>
|
|
79
|
+
<button on:click={() => kanban.moveTask(task.id, 'done')}>Mark Done</button>
|
|
80
|
+
</div>
|
|
81
|
+
{/each}
|
|
82
|
+
</div>
|
|
83
|
+
{/each}
|
|
84
|
+
</div>
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### 3. Unified Task Activity & Threaded Discussions (`TaskActivityState`)
|
|
56
88
|
|
|
57
89
|
Combines threaded comments with inline attachments (`attachment.commentId === comment.id`) and standalone attachments in a single reactive store:
|
|
58
90
|
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { CriticalPathClient } from '@critical-path/client';
|
|
2
|
+
import type { DeliverableSummary } from '@critical-path/core';
|
|
3
|
+
export declare class DeliverableSummaryState {
|
|
4
|
+
private client;
|
|
5
|
+
deliverableId?: string | undefined;
|
|
6
|
+
summary: DeliverableSummary | null;
|
|
7
|
+
loading: boolean;
|
|
8
|
+
error: Error | null;
|
|
9
|
+
get data(): DeliverableSummary | null;
|
|
10
|
+
constructor(client: CriticalPathClient, deliverableId?: string | undefined);
|
|
11
|
+
fetch(deliverableId?: string): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
export declare function createDeliverableSummaryState(client: CriticalPathClient, deliverableId?: string): DeliverableSummaryState;
|
|
14
|
+
//# sourceMappingURL=deliverable-summary-state.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deliverable-summary-state.svelte.d.ts","sourceRoot":"","sources":["../src/deliverable-summary-state.svelte.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,qBAAa,uBAAuB;IAStB,OAAO,CAAC,MAAM;IAA6B,aAAa,CAAC,EAAE,MAAM;IAR7E,OAAO,4BAA2C;IAClD,OAAO,UAA0B;IACjC,KAAK,eAA8B;IAEnC,IAAI,IAAI,IAAI,kBAAkB,GAAG,IAAI,CAEpC;gBAEmB,MAAM,EAAE,kBAAkB,EAAS,aAAa,CAAC,EAAE,MAAM,YAAA;IAEvE,KAAK,CAAC,aAAa,CAAC,EAAE,MAAM;CAkBnC;AAED,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,kBAAkB,EAC1B,aAAa,CAAC,EAAE,MAAM,GACrB,uBAAuB,CAEzB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,5 +7,8 @@ export * from './comment-state.svelte.js';
|
|
|
7
7
|
export * from './attachment-state.svelte.js';
|
|
8
8
|
export * from './activity-state.svelte.js';
|
|
9
9
|
export * from './deliverable-state.svelte.js';
|
|
10
|
+
export * from './deliverable-summary-state.svelte.js';
|
|
11
|
+
export * from './kanban-state.svelte.js';
|
|
12
|
+
export * from './task-transitions-state.svelte.js';
|
|
10
13
|
export * from './webmcp-state.svelte.js';
|
|
11
14
|
//# 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.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE/E,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,aAAa,GAAG,kBAAkB,CAEnF;AAED,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE/E,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,aAAa,GAAG,kBAAkB,CAEnF;AAED,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uCAAuC,CAAC;AACtD,cAAc,0BAA0B,CAAC;AACzC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0BAA0B,CAAC"}
|