@lssm/lib.presentation-runtime-react 0.0.0-canary-20251207013726 → 0.0.0-canary-20251207123819

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/README.md CHANGED
@@ -61,5 +61,6 @@ export function WorkflowPage() {
61
61
 
62
62
 
63
63
 
64
+
64
65
 
65
66
 
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lssm/lib.presentation-runtime-react",
3
- "version": "0.0.0-canary-20251207013726",
3
+ "version": "0.0.0-canary-20251207123819",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",
@@ -33,10 +33,10 @@
33
33
  "README.md"
34
34
  ],
35
35
  "exports": {
36
- ".": "./dist/index.js",
37
- "./useWorkflow": "./dist/useWorkflow.js",
38
- "./WorkflowStepper": "./dist/WorkflowStepper.js",
39
- "./WorkflowStepRenderer": "./dist/WorkflowStepRenderer.js",
36
+ ".": "./src/index.ts",
37
+ "./useWorkflow": "./src/useWorkflow.ts",
38
+ "./WorkflowStepper": "./src/WorkflowStepper.tsx",
39
+ "./WorkflowStepRenderer": "./src/WorkflowStepRenderer.tsx",
40
40
  "./*": "./*"
41
41
  },
42
42
  "publishConfig": {
@@ -1,31 +0,0 @@
1
- import * as React from "react";
2
- import * as react_jsx_runtime0 from "react/jsx-runtime";
3
- import { FormRef, Step, StepExecution, WorkflowSpec, WorkflowState } from "@lssm/lib.contracts/workflow";
4
-
5
- //#region src/WorkflowStepRenderer.d.ts
6
- interface WorkflowStepRendererProps {
7
- spec: WorkflowSpec;
8
- state: WorkflowState | null;
9
- className?: string;
10
- renderHumanStep?: (form: FormRef, step: Step) => React.ReactNode;
11
- renderAutomationStep?: (step: Step) => React.ReactNode;
12
- renderDecisionStep?: (step: Step) => React.ReactNode;
13
- loadingFallback?: React.ReactNode;
14
- completedFallback?: React.ReactNode;
15
- cancelledFallback?: React.ReactNode;
16
- failedFallback?: (state: WorkflowState, last: StepExecution | undefined) => React.ReactNode;
17
- }
18
- declare function WorkflowStepRenderer({
19
- spec,
20
- state,
21
- className,
22
- renderHumanStep,
23
- renderAutomationStep,
24
- renderDecisionStep,
25
- loadingFallback,
26
- completedFallback,
27
- cancelledFallback,
28
- failedFallback
29
- }: WorkflowStepRendererProps): react_jsx_runtime0.JSX.Element;
30
- //#endregion
31
- export { WorkflowStepRenderer, WorkflowStepRendererProps };
@@ -1,18 +0,0 @@
1
- import * as react_jsx_runtime0 from "react/jsx-runtime";
2
- import { WorkflowSpec, WorkflowState } from "@lssm/lib.contracts/workflow";
3
-
4
- //#region src/WorkflowStepper.d.ts
5
- interface WorkflowStepperProps {
6
- spec: WorkflowSpec;
7
- state: WorkflowState | null;
8
- className?: string;
9
- showLabels?: boolean;
10
- }
11
- declare function WorkflowStepper({
12
- spec,
13
- state,
14
- className,
15
- showLabels
16
- }: WorkflowStepperProps): react_jsx_runtime0.JSX.Element;
17
- //#endregion
18
- export { WorkflowStepper, WorkflowStepperProps };
package/dist/index.d.ts DELETED
@@ -1,114 +0,0 @@
1
- import { WorkflowStepRenderer } from "./WorkflowStepRenderer.js";
2
- import { WorkflowStepper } from "./WorkflowStepper.js";
3
- import { UseWorkflowOptions, UseWorkflowResult, useWorkflow } from "./useWorkflow.js";
4
- import * as React from "react";
5
- import { DefaultValues, Resolver, UseFormReturn } from "react-hook-form";
6
- import { ListFetcher, ListState } from "@lssm/lib.presentation-runtime-core";
7
-
8
- //#region src/index.d.ts
9
- interface UsePresentationControllerOpts<TFilters extends Record<string, unknown>, TVars, TItem> {
10
- defaults: ListState<TFilters>;
11
- form: {
12
- defaultValues: DefaultValues<TFilters> | TFilters;
13
- resolver?: Resolver<TFilters>;
14
- };
15
- toVariables: (input: ListState<TFilters>) => TVars;
16
- fetcher: ListFetcher<TVars, TItem>;
17
- toChips?: (filters: TFilters, setFilter: (key: keyof TFilters, value: TFilters[keyof TFilters] | null) => void) => {
18
- key: string;
19
- label: React.ReactNode;
20
- onRemove?: () => void;
21
- }[];
22
- useUrlState: (args: {
23
- defaults: ListState<TFilters>;
24
- replace?: boolean;
25
- }) => {
26
- state: ListState<TFilters>;
27
- setState: (next: Partial<ListState<TFilters>>) => void;
28
- setFilter: (key: keyof TFilters, value: TFilters[keyof TFilters] | null) => void;
29
- clearFilters: () => void;
30
- };
31
- replace?: boolean;
32
- }
33
- declare function usePresentationController<TFilters extends Record<string, unknown>, TVars, TItem>({
34
- defaults,
35
- form: formOpts,
36
- toVariables,
37
- fetcher,
38
- toChips,
39
- useUrlState,
40
- replace
41
- }: UsePresentationControllerOpts<TFilters, TVars, TItem>): {
42
- readonly form: UseFormReturn<TFilters>;
43
- readonly url: {
44
- state: ListState<TFilters>;
45
- setState: (next: Partial<ListState<TFilters>>) => void;
46
- setFilter: (key: keyof TFilters, value: TFilters[keyof TFilters] | null) => void;
47
- clearFilters: () => void;
48
- };
49
- readonly variables: TVars;
50
- readonly data: TItem[];
51
- readonly loading: boolean;
52
- readonly error: unknown;
53
- readonly totalItems: number | undefined;
54
- readonly totalPages: number | undefined;
55
- readonly refetch: () => Promise<void>;
56
- readonly chips: {
57
- key: string;
58
- label: React.ReactNode;
59
- onRemove?: () => void;
60
- }[];
61
- readonly setSearch: (q: string) => void;
62
- readonly submitFilters: (e?: React.BaseSyntheticEvent) => Promise<void>;
63
- readonly clearAll: () => void;
64
- };
65
- interface UseListCoordinatorOpts<TFilters extends Record<string, unknown>, TVars> {
66
- defaults: ListState<TFilters>;
67
- form: {
68
- defaultValues: DefaultValues<TFilters>;
69
- resolver?: Resolver<TFilters>;
70
- };
71
- toVariables: (input: ListState<TFilters>) => TVars;
72
- toChips?: (filters: TFilters, setFilter: (key: keyof TFilters, value: TFilters[keyof TFilters] | null) => void) => {
73
- key: string;
74
- label: React.ReactNode;
75
- onRemove?: () => void;
76
- }[];
77
- useUrlState: (args: {
78
- defaults: ListState<TFilters>;
79
- replace?: boolean;
80
- }) => {
81
- state: ListState<TFilters>;
82
- setState: (next: Partial<ListState<TFilters>>) => void;
83
- setFilter: (key: keyof TFilters, value: TFilters[keyof TFilters] | null) => void;
84
- clearFilters: () => void;
85
- };
86
- replace?: boolean;
87
- }
88
- declare function useListCoordinator<TFilters extends Record<string, unknown>, TVars>({
89
- defaults,
90
- form: formOpts,
91
- toVariables,
92
- toChips,
93
- useUrlState,
94
- replace
95
- }: UseListCoordinatorOpts<TFilters, TVars>): {
96
- readonly form: UseFormReturn<TFilters>;
97
- readonly url: {
98
- state: ListState<TFilters>;
99
- setState: (next: Partial<ListState<TFilters>>) => void;
100
- setFilter: (key: keyof TFilters, value: TFilters[keyof TFilters] | null) => void;
101
- clearFilters: () => void;
102
- };
103
- readonly variables: TVars;
104
- readonly chips: {
105
- key: string;
106
- label: React.ReactNode;
107
- onRemove?: () => void;
108
- }[];
109
- readonly setSearch: (q: string) => void;
110
- readonly submitFilters: (e?: React.BaseSyntheticEvent) => Promise<void>;
111
- readonly clearAll: () => void;
112
- };
113
- //#endregion
114
- export { UseListCoordinatorOpts, UsePresentationControllerOpts, type UseWorkflowOptions, type UseWorkflowResult, WorkflowStepRenderer, WorkflowStepper, useListCoordinator, usePresentationController, useWorkflow };
@@ -1 +0,0 @@
1
- export { };
@@ -1,26 +0,0 @@
1
- import { WorkflowRunner, WorkflowState } from "@lssm/lib.contracts/workflow";
2
-
3
- //#region src/useWorkflow.d.ts
4
- interface UseWorkflowOptions {
5
- workflowId: string;
6
- runner: WorkflowRunner;
7
- autoRefresh?: boolean;
8
- refreshIntervalMs?: number;
9
- }
10
- interface UseWorkflowResult {
11
- state: WorkflowState | null;
12
- isLoading: boolean;
13
- error: Error | null;
14
- isExecuting: boolean;
15
- refresh: () => Promise<void>;
16
- executeStep: (input?: unknown) => Promise<void>;
17
- cancel: () => Promise<void>;
18
- }
19
- declare function useWorkflow({
20
- workflowId,
21
- runner,
22
- autoRefresh,
23
- refreshIntervalMs
24
- }: UseWorkflowOptions): UseWorkflowResult;
25
- //#endregion
26
- export { UseWorkflowOptions, UseWorkflowResult, useWorkflow };