process-graph 1.1.1 → 1.3.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.
Files changed (50) hide show
  1. package/README.md +22 -19
  2. package/dist/bin.js +4 -3
  3. package/dist/cli.d.ts +100 -14
  4. package/dist/cli.js +3 -2
  5. package/dist/{control-aDk9560d.js → control-DiygoEhm.js} +163 -1
  6. package/dist/data-file-BVMxkTug.js +95 -0
  7. package/dist/dist-81kTKnMq.js +3 -0
  8. package/dist/{dist-HLlW8vgT.js → dist-BI01yxFA.js} +256 -103
  9. package/dist/{dist-BpCBmnMl.js → dist-arkejVz2.js} +2 -112
  10. package/dist/{graphql-C1j5wQFz.d.ts → graphql-BE7xm5dB.d.ts} +3 -2
  11. package/dist/{index-DricKcyl.d.ts → index-9Au8pAmP.d.ts} +4 -4
  12. package/dist/{index-CrM5qWUA.d.ts → index-BC4tmAuQ.d.ts} +2 -2
  13. package/dist/{index-DhbvDgK4.d.ts → index-CR8xUK3S.d.ts} +388 -580
  14. package/dist/{index-CoA6vXqe.d.ts → index-D06bcdfw.d.ts} +1 -1
  15. package/dist/{index-CCfe0csl.d.ts → index-D4CnOhNf.d.ts} +34 -3
  16. package/dist/{index-CmZOswkx.d.ts → index-Dvz_I_uQ.d.ts} +17 -8
  17. package/dist/{index-CptUHq6F.d.ts → index-hri2a13-.d.ts} +1 -1
  18. package/dist/index.d.ts +4 -4
  19. package/dist/index.js +5 -5
  20. package/dist/layout.d.ts +1 -1
  21. package/dist/{parse-CuipC_2K.js → parse-C1Q1zsGt.js} +1 -1
  22. package/dist/{queries-CCexJAE2.js → queries-C8kIDRiY.js} +2 -93
  23. package/dist/react-flow.d.ts +5 -5
  24. package/dist/react-flow.js +3 -3
  25. package/dist/react.d.ts +1 -1
  26. package/dist/react.js +2 -2
  27. package/dist/{router-D4gtTlXm.js → router-Dk91O_9p.js} +27 -2
  28. package/dist/{schema-CVnS6HiX.js → schema-BPT8fmfa.js} +2 -2
  29. package/dist/{selection-BW_xXWOy.js → selection-iet5RAlP.js} +1 -1
  30. package/dist/source/github/node.d.ts +1 -1
  31. package/dist/source/github.d.ts +2 -2
  32. package/dist/source/github.js +1 -1
  33. package/dist/{source-DRDpEA8Q.js → source-D51N7K3A.js} +23 -3
  34. package/dist/store/node.d.ts +27 -2
  35. package/dist/store/node.js +2 -2
  36. package/dist/store/wasm/worker.js +2 -2
  37. package/dist/store/wasm.d.ts +1 -1
  38. package/dist/{store-BcR70CaO.js → store-DKzvLGgl.js} +252 -37
  39. package/dist/store.d.ts +115 -3
  40. package/dist/store.js +43 -9
  41. package/dist/theme-values-BJJhAkUn-ORyRUrPf.js +114 -0
  42. package/dist/theme-values-BybZ-cle.d.ts +116 -0
  43. package/dist/ui/theme.d.ts +2 -0
  44. package/dist/ui/theme.js +2 -0
  45. package/dist/ui.d.ts +6 -120
  46. package/dist/ui.js +2 -1
  47. package/dist/version-Dagrkvwt.js +5 -0
  48. package/package.json +28 -23
  49. package/dist/dist-IjrgWhHQ.js +0 -3
  50. package/dist/open-CyRXJ4bt.js +0 -29
package/dist/store.js CHANGED
@@ -1,6 +1,6 @@
1
- import { r as loopTransitions } from "./control-aDk9560d.js";
2
- import { C as modelSummarySchema, D as revisionSchema, E as relationSchema, O as storeChangeSchema, S as modelIdSchema, T as relationKinds, _ as GraphStoreError, a as ancestorsOf, b as changeKinds, c as mergeRelations, d as checkStored, f as emptyModel, g as defaultSubscriptionCapacity, h as ChangeFeed, i as serialised, k as storedModelSchema, l as relationIssues, m as overlayWithin, n as tables_exports, o as childrenOf, p as mergeBoundItems, r as migrate, s as descendantsOf, t as createSqliteGraphStore, u as relationsWithin, v as boundActivitySchema, w as reachSchema, x as issueSchema, y as boundItemsSchema } from "./store-BcR70CaO.js";
3
- import { n as graphStoreContract, t as createGraphStoreRouter } from "./router-D4gtTlXm.js";
1
+ import { r as loopTransitions, s as emptyFactRecord } from "./control-DiygoEhm.js";
2
+ import { A as modelIdSchema, C as boundItemsSchema, D as factNameSchema, E as factClearingSchema, F as revisionSchema, I as storeChangeSchema, L as storedFactsSchema, M as reachSchema, N as relationKinds, O as factRecordSchema, P as relationSchema, R as storedModelSchema, S as boundActivitySchema, T as factChangeSchema, _ as mergeBoundItems, a as ancestorsOf, b as defaultSubscriptionCapacity, c as mergeRelations, d as factIssues, f as factsWithin, g as emptyModel, h as checkStored, i as serialised, j as modelSummarySchema, k as issueSchema, l as relationIssues, m as withoutFacts, n as tables_exports, o as childrenOf, p as mergeFacts, r as migrate, s as descendantsOf, t as createSqliteGraphStore, u as relationsWithin, v as overlayWithin, w as changeKinds, x as GraphStoreError, y as ChangeFeed } from "./store-DKzvLGgl.js";
3
+ import { n as graphStoreContract, t as createGraphStoreRouter } from "./router-Dk91O_9p.js";
4
4
  //#region ../../core/graph/store-contract/dist/structure.js
5
5
  /**
6
6
  * Whether an element is a pure control element: a `decision` or a pseudo-state. Control elements have no work of their own, so the structural queries pass through them and never report them.
@@ -118,9 +118,9 @@ const createFakeGraphStore = () => {
118
118
  });
119
119
  return entry;
120
120
  };
121
- const write = ({ modelId, kind, model, overlay, relations, signal }) => {
121
+ const write = ({ modelId, kind, model, overlay, relations, facts, signal }) => {
122
122
  checkStored(model, overlay);
123
- const issues = relationIssues(model, relations);
123
+ const issues = [...relationIssues(model, relations), ...factIssues(model, facts)];
124
124
  if (issues.length > 0) throw new GraphStoreError({
125
125
  kind: "invalid",
126
126
  issues
@@ -131,6 +131,7 @@ const createFakeGraphStore = () => {
131
131
  model,
132
132
  overlay,
133
133
  relations,
134
+ facts,
134
135
  revision: sequence
135
136
  });
136
137
  feed.publish({
@@ -154,16 +155,18 @@ const createFakeGraphStore = () => {
154
155
  model,
155
156
  overlay: overlayWithin(model, existing?.overlay ?? {}),
156
157
  relations: relationsWithin(model, existing?.relations ?? []),
158
+ facts: factsWithin(model, existing?.facts ?? emptyFactRecord),
157
159
  signal
158
160
  });
159
161
  }),
160
162
  loadModel: later(({ modelId }) => {
161
- const { model, overlay, revision } = entryOf(modelId);
163
+ const { model, overlay, facts, revision } = entryOf(modelId);
162
164
  return {
163
165
  modelId,
164
166
  revision,
165
167
  model,
166
- overlay
168
+ overlay,
169
+ facts
167
170
  };
168
171
  }),
169
172
  deleteModel: later(({ modelId, signal }) => {
@@ -189,6 +192,35 @@ const createFakeGraphStore = () => {
189
192
  ...overlay
190
193
  },
191
194
  relations: entry.relations,
195
+ facts: entry.facts,
196
+ signal
197
+ });
198
+ }),
199
+ readFacts: later(({ modelId }) => {
200
+ const { facts, revision } = entryOf(modelId);
201
+ return {
202
+ modelId,
203
+ revision,
204
+ facts
205
+ };
206
+ }),
207
+ setFacts: later(({ modelId, facts, signal }) => {
208
+ const entry = entryOf(modelId);
209
+ return write({
210
+ ...entry,
211
+ modelId,
212
+ kind: "facts",
213
+ facts: mergeFacts(entry.facts, facts),
214
+ signal
215
+ });
216
+ }),
217
+ clearFacts: later(({ modelId, facts, signal }) => {
218
+ const entry = entryOf(modelId);
219
+ return write({
220
+ ...entry,
221
+ modelId,
222
+ kind: "facts",
223
+ facts: withoutFacts(entry.facts, facts),
192
224
  signal
193
225
  });
194
226
  }),
@@ -196,13 +228,15 @@ const createFakeGraphStore = () => {
196
228
  const entry = entries.get(modelId) ?? {
197
229
  model: emptyModel,
198
230
  overlay: {},
199
- relations: []
231
+ relations: [],
232
+ facts: emptyFactRecord
200
233
  };
201
234
  return write({
202
235
  modelId,
203
236
  kind: "items",
204
237
  ...mergeBoundItems(entry.model, entry.overlay, items),
205
238
  relations: mergeRelations(entry.relations, items.relations ?? []),
239
+ facts: entry.facts,
206
240
  signal
207
241
  });
208
242
  }),
@@ -235,4 +269,4 @@ const createFakeGraphStore = () => {
235
269
  };
236
270
  };
237
271
  //#endregion
238
- export { ChangeFeed, GraphStoreError, ancestorsOf, blockedChainOf, boundActivitySchema, boundItemsSchema, changeKinds, checkStored, childrenOf, createFakeGraphStore, createGraphStoreRouter, createSqliteGraphStore, defaultSubscriptionCapacity, descendantsOf, emptyModel, graphStoreContract, impactOf, issueSchema, mergeBoundItems, mergeRelations, migrate, modelIdSchema, modelSummarySchema, overlayWithin, reachSchema, readyOf, relationIssues, relationKinds, relationSchema, relationsWithin, revisionSchema, serialised, storeChangeSchema, storedModelSchema, structureOf, tables_exports as tables };
272
+ export { ChangeFeed, GraphStoreError, ancestorsOf, blockedChainOf, boundActivitySchema, boundItemsSchema, changeKinds, checkStored, childrenOf, createFakeGraphStore, createGraphStoreRouter, createSqliteGraphStore, defaultSubscriptionCapacity, descendantsOf, emptyModel, factChangeSchema, factClearingSchema, factIssues, factNameSchema, factRecordSchema, factsWithin, graphStoreContract, impactOf, issueSchema, mergeBoundItems, mergeFacts, mergeRelations, migrate, modelIdSchema, modelSummarySchema, overlayWithin, reachSchema, readyOf, relationIssues, relationKinds, relationSchema, relationsWithin, revisionSchema, serialised, storeChangeSchema, storedFactsSchema, storedModelSchema, structureOf, tables_exports as tables, withoutFacts };
@@ -0,0 +1,114 @@
1
+ //#region ../../ui/graph/ui/dist/theme-values-BJJhAkUn.js
2
+ var vars = {
3
+ colour: {
4
+ background: "var(--_1pqhw580)",
5
+ surface: "var(--_1pqhw581)",
6
+ text: "var(--_1pqhw582)",
7
+ muted: "var(--_1pqhw583)",
8
+ border: "var(--_1pqhw584)",
9
+ accent: "var(--_1pqhw585)",
10
+ focus: "var(--_1pqhw586)",
11
+ critical: "var(--_1pqhw587)",
12
+ handoff: "var(--_1pqhw588)",
13
+ status: {
14
+ done: "var(--_1pqhw589)",
15
+ ready: "var(--_1pqhw58a)",
16
+ blocked: "var(--_1pqhw58b)",
17
+ skipped: "var(--_1pqhw58c)",
18
+ unknown: "var(--_1pqhw58d)"
19
+ }
20
+ },
21
+ space: {
22
+ small: "var(--_1pqhw58e)",
23
+ medium: "var(--_1pqhw58f)",
24
+ large: "var(--_1pqhw58g)"
25
+ },
26
+ radius: {
27
+ small: "var(--_1pqhw58h)",
28
+ medium: "var(--_1pqhw58i)"
29
+ },
30
+ font: {
31
+ body: "var(--_1pqhw58j)",
32
+ mono: "var(--_1pqhw58k)",
33
+ sizeSmall: "var(--_1pqhw58l)",
34
+ sizeBody: "var(--_1pqhw58m)",
35
+ sizeHeading: "var(--_1pqhw58n)",
36
+ weightStrong: "var(--_1pqhw58o)"
37
+ },
38
+ stroke: {
39
+ thin: "var(--_1pqhw58p)",
40
+ thick: "var(--_1pqhw58q)"
41
+ }
42
+ };
43
+ var lightTheme = "_1pqhw58r";
44
+ var darkTheme = "_1pqhw58s";
45
+ /** What both themes share: everything but colour. */
46
+ var shared = {
47
+ space: {
48
+ small: "0.25rem",
49
+ medium: "0.5rem",
50
+ large: "1rem"
51
+ },
52
+ radius: {
53
+ small: "0.25rem",
54
+ medium: "0.5rem"
55
+ },
56
+ font: {
57
+ body: "system-ui, -apple-system, \"Segoe UI\", sans-serif",
58
+ mono: "ui-monospace, \"SFMono-Regular\", Menlo, monospace",
59
+ sizeSmall: "0.75rem",
60
+ sizeBody: "0.875rem",
61
+ sizeHeading: "1rem",
62
+ weightStrong: "600"
63
+ },
64
+ stroke: {
65
+ thin: "1px",
66
+ thick: "3px"
67
+ }
68
+ };
69
+ /** The light theme's values. Each status colour reads as text on both `surface` and `background`. */
70
+ var lightValues = {
71
+ ...shared,
72
+ colour: {
73
+ background: "#ffffff",
74
+ surface: "#f6f8fa",
75
+ text: "#1f2328",
76
+ muted: "#59636e",
77
+ border: "#d1d9e0",
78
+ accent: "#0969da",
79
+ focus: "#0969da",
80
+ critical: "#9a6700",
81
+ handoff: "#6639ba",
82
+ status: {
83
+ done: "#1a7f37",
84
+ ready: "#0550ae",
85
+ blocked: "#cf222e",
86
+ skipped: "#59636e",
87
+ unknown: "#6639ba"
88
+ }
89
+ }
90
+ };
91
+ /** The dark theme's values. Each status colour reads as text on both `surface` and `background`. */
92
+ var darkValues = {
93
+ ...shared,
94
+ colour: {
95
+ background: "#0d1117",
96
+ surface: "#161b22",
97
+ text: "#e6edf3",
98
+ muted: "#9198a1",
99
+ border: "#3d444d",
100
+ accent: "#4493f8",
101
+ focus: "#4493f8",
102
+ critical: "#d29922",
103
+ handoff: "#ab7df8",
104
+ status: {
105
+ done: "#3fb950",
106
+ ready: "#58a6ff",
107
+ blocked: "#f85149",
108
+ skipped: "#9198a1",
109
+ unknown: "#ab7df8"
110
+ }
111
+ }
112
+ };
113
+ //#endregion
114
+ export { vars as a, lightValues as i, darkValues as n, lightTheme as r, darkTheme as t };
@@ -0,0 +1,116 @@
1
+ //#region ../../ui/graph/ui/dist/theme.css.d.ts
2
+ /**
3
+ * The theme contract: one CSS custom property per value of `ThemeValues`, read by every style in this package. A consumer restyles the components by assigning these properties, with its own `createTheme(vars, values)` class or `assignVars`, without forking them.
4
+ */
5
+ declare const vars: {
6
+ colour: {
7
+ background: `var(--${string})`;
8
+ surface: `var(--${string})`;
9
+ text: `var(--${string})`;
10
+ muted: `var(--${string})`;
11
+ border: `var(--${string})`;
12
+ accent: `var(--${string})`;
13
+ focus: `var(--${string})`;
14
+ critical: `var(--${string})`;
15
+ handoff: `var(--${string})`;
16
+ status: {
17
+ done: `var(--${string})`;
18
+ ready: `var(--${string})`;
19
+ blocked: `var(--${string})`;
20
+ skipped: `var(--${string})`;
21
+ unknown: `var(--${string})`;
22
+ };
23
+ };
24
+ space: {
25
+ small: `var(--${string})`;
26
+ medium: `var(--${string})`;
27
+ large: `var(--${string})`;
28
+ };
29
+ radius: {
30
+ small: `var(--${string})`;
31
+ medium: `var(--${string})`;
32
+ };
33
+ font: {
34
+ body: `var(--${string})`;
35
+ mono: `var(--${string})`;
36
+ sizeSmall: `var(--${string})`;
37
+ sizeBody: `var(--${string})`;
38
+ sizeHeading: `var(--${string})`;
39
+ weightStrong: `var(--${string})`;
40
+ };
41
+ stroke: {
42
+ thin: `var(--${string})`;
43
+ thick: `var(--${string})`;
44
+ };
45
+ };
46
+ /** The class that assigns the light theme's values. */
47
+ declare const lightTheme: string;
48
+ /** The class that assigns the dark theme's values. */
49
+ declare const darkTheme: string;
50
+ //#endregion
51
+ //#region ../../ui/graph/ui/dist/theme-values.d.ts
52
+ /**
53
+ * The shape of every theme: each leaf is a value a theme assigns. The theme contract is created from it, and `ThemeValues` derived from it, so the contract and the themes cannot disagree.
54
+ */
55
+ declare const themeShape: {
56
+ colour: {
57
+ /** Behind everything. */
58
+ background: null;
59
+ /** Behind a card, a lane or a panel. */
60
+ surface: null;
61
+ text: null;
62
+ /** Secondary text: lane headings, edge labels. */
63
+ muted: null;
64
+ border: null;
65
+ /** Selection and links. */
66
+ accent: null;
67
+ /** The focus ring. */
68
+ focus: null;
69
+ /** The critical path. */
70
+ critical: null;
71
+ /** A transition that passes work between actors. */
72
+ handoff: null;
73
+ /** Each status, used as text and as a mark on `surface` and `background`. */
74
+ status: {
75
+ done: null;
76
+ ready: null;
77
+ blocked: null;
78
+ skipped: null;
79
+ unknown: null;
80
+ };
81
+ };
82
+ space: {
83
+ small: null;
84
+ medium: null;
85
+ large: null;
86
+ };
87
+ radius: {
88
+ small: null;
89
+ medium: null;
90
+ };
91
+ font: {
92
+ body: null;
93
+ mono: null;
94
+ sizeSmall: null;
95
+ sizeBody: null;
96
+ sizeHeading: null;
97
+ /** The weight of labels and headings that stand out from body text. */
98
+ weightStrong: null;
99
+ };
100
+ stroke: {
101
+ /** Borders and ordinary edges. */
102
+ thin: null;
103
+ /** The critical path and the selection. */
104
+ thick: null;
105
+ };
106
+ };
107
+ /** A tree of the shape's keys with a CSS value at every leaf. */
108
+ type Assigned<Shape> = { readonly [Key in keyof Shape]: Shape[Key] extends null ? string : Assigned<Shape[Key]>; };
109
+ /** Every value a theme assigns, as CSS values: one per leaf of `themeShape`, so a theme that leaves one out does not compile. */
110
+ type ThemeValues = Assigned<typeof themeShape>;
111
+ /** The light theme's values. Each status colour reads as text on both `surface` and `background`. */
112
+ declare const lightValues: ThemeValues;
113
+ /** The dark theme's values. Each status colour reads as text on both `surface` and `background`. */
114
+ declare const darkValues: ThemeValues;
115
+ //#endregion
116
+ export { lightTheme as a, darkTheme as i, darkValues as n, vars as o, lightValues as r, ThemeValues as t };
@@ -0,0 +1,2 @@
1
+ import { a as lightTheme, i as darkTheme, n as darkValues, o as vars, r as lightValues, t as ThemeValues } from "../theme-values-BybZ-cle.js";
2
+ export { type ThemeValues, darkTheme, darkValues, lightTheme, lightValues, vars };
@@ -0,0 +1,2 @@
1
+ import { a as vars, i as lightValues, n as darkValues, r as lightTheme, t as darkTheme } from "../theme-values-BJJhAkUn-ORyRUrPf.js";
2
+ export { darkTheme, darkValues, lightTheme, lightValues, vars };
package/dist/ui.d.ts CHANGED
@@ -1,123 +1,9 @@
1
- import { F as Status } from "./index-CCfe0csl.js";
2
- import { G as IdSpace } from "./index-CmZOswkx.js";
3
- import { g as SequenceDiagram$1 } from "./index-CoA6vXqe.js";
4
- import { f as LaneProps, h as TransitionItemProps, l as LegendProps, o as FilterPanelProps, r as DetailPanelProps, v as ElementCardProps } from "./index-DricKcyl.js";
1
+ import { B as Status } from "./index-D4CnOhNf.js";
2
+ import { K as IdSpace } from "./index-Dvz_I_uQ.js";
3
+ import { g as SequenceDiagram$1 } from "./index-D06bcdfw.js";
4
+ import { f as LaneProps, h as TransitionItemProps, l as LegendProps, o as FilterPanelProps, r as DetailPanelProps, v as ElementCardProps } from "./index-9Au8pAmP.js";
5
+ import { a as lightTheme, i as darkTheme, n as darkValues, o as vars, r as lightValues, t as ThemeValues } from "./theme-values-BybZ-cle.js";
5
6
  import { ReactElement, ReactNode } from "react";
6
- //#region ../../ui/graph/ui/dist/theme.css.d.ts
7
- /**
8
- * The theme contract: one CSS custom property per value of `ThemeValues`, read by every style in this package. A consumer restyles the components by assigning these properties, with its own `createTheme(vars, values)` class or `assignVars`, without forking them.
9
- */
10
- export declare const vars: {
11
- colour: {
12
- background: `var(--${string})`;
13
- surface: `var(--${string})`;
14
- text: `var(--${string})`;
15
- muted: `var(--${string})`;
16
- border: `var(--${string})`;
17
- accent: `var(--${string})`;
18
- focus: `var(--${string})`;
19
- critical: `var(--${string})`;
20
- handoff: `var(--${string})`;
21
- status: {
22
- done: `var(--${string})`;
23
- ready: `var(--${string})`;
24
- blocked: `var(--${string})`;
25
- skipped: `var(--${string})`;
26
- unknown: `var(--${string})`;
27
- };
28
- };
29
- space: {
30
- small: `var(--${string})`;
31
- medium: `var(--${string})`;
32
- large: `var(--${string})`;
33
- };
34
- radius: {
35
- small: `var(--${string})`;
36
- medium: `var(--${string})`;
37
- };
38
- font: {
39
- body: `var(--${string})`;
40
- mono: `var(--${string})`;
41
- sizeSmall: `var(--${string})`;
42
- sizeBody: `var(--${string})`;
43
- sizeHeading: `var(--${string})`;
44
- weightStrong: `var(--${string})`;
45
- };
46
- stroke: {
47
- thin: `var(--${string})`;
48
- thick: `var(--${string})`;
49
- };
50
- };
51
- /** The class that assigns the light theme's values. */
52
- export declare const lightTheme: string;
53
- /** The class that assigns the dark theme's values. */
54
- export declare const darkTheme: string;
55
- //#endregion
56
- //#region ../../ui/graph/ui/dist/theme-values.d.ts
57
- /**
58
- * The shape of every theme: each leaf is a value a theme assigns. The theme contract is created from it, and `ThemeValues` derived from it, so the contract and the themes cannot disagree.
59
- */
60
- declare const themeShape: {
61
- colour: {
62
- /** Behind everything. */
63
- background: null;
64
- /** Behind a card, a lane or a panel. */
65
- surface: null;
66
- text: null;
67
- /** Secondary text: lane headings, edge labels. */
68
- muted: null;
69
- border: null;
70
- /** Selection and links. */
71
- accent: null;
72
- /** The focus ring. */
73
- focus: null;
74
- /** The critical path. */
75
- critical: null;
76
- /** A transition that passes work between actors. */
77
- handoff: null;
78
- /** Each status, used as text and as a mark on `surface` and `background`. */
79
- status: {
80
- done: null;
81
- ready: null;
82
- blocked: null;
83
- skipped: null;
84
- unknown: null;
85
- };
86
- };
87
- space: {
88
- small: null;
89
- medium: null;
90
- large: null;
91
- };
92
- radius: {
93
- small: null;
94
- medium: null;
95
- };
96
- font: {
97
- body: null;
98
- mono: null;
99
- sizeSmall: null;
100
- sizeBody: null;
101
- sizeHeading: null;
102
- /** The weight of labels and headings that stand out from body text. */
103
- weightStrong: null;
104
- };
105
- stroke: {
106
- /** Borders and ordinary edges. */
107
- thin: null;
108
- /** The critical path and the selection. */
109
- thick: null;
110
- };
111
- };
112
- /** A tree of the shape's keys with a CSS value at every leaf. */
113
- type Assigned<Shape> = { readonly [Key in keyof Shape]: Shape[Key] extends null ? string : Assigned<Shape[Key]>; };
114
- /** Every value a theme assigns, as CSS values: one per leaf of `themeShape`, so a theme that leaves one out does not compile. */
115
- type ThemeValues = Assigned<typeof themeShape>;
116
- /** The light theme's values. Each status colour reads as text on both `surface` and `background`. */
117
- export declare const lightValues: ThemeValues;
118
- /** The dark theme's values. Each status colour reads as text on both `surface` and `background`. */
119
- export declare const darkValues: ThemeValues;
120
- //#endregion
121
7
  //#region ../../ui/graph/ui/dist/base.css.d.ts
122
8
  /** The element a theme class goes on: the page colours and type every component inherits. */
123
9
  export declare const surfaceRoot: string;
@@ -232,4 +118,4 @@ interface SequenceDiagramProps<I extends IdSpace> {
232
118
  */
233
119
  export declare const SequenceDiagram: <I extends IdSpace>(props: SequenceDiagramProps<I>) => ReactElement;
234
120
  //#endregion
235
- export type { GraphThemeProps, SequenceDiagramProps, StatusBadgeProps, ThemeName, ThemeValues };
121
+ export { type GraphThemeProps, type SequenceDiagramProps, type StatusBadgeProps, type ThemeName, type ThemeValues, darkTheme, darkValues, lightTheme, lightValues, vars };
package/dist/ui.js CHANGED
@@ -1,2 +1,3 @@
1
- import { _ as surfaceRoot, a as Lane, b as visuallyHidden, c as StatusBadge, d as card, f as darkTheme, g as lightValues, h as lightTheme, i as GraphTheme, l as TransitionItem, m as focusRing, n as ElementCard, o as Legend, p as darkValues, r as FilterPanel, s as SequenceDiagram, t as DetailPanel, u as badge, v as themes, y as vars } from "./dist-BpCBmnMl.js";
1
+ import { a as vars, i as lightValues, n as darkValues, r as lightTheme, t as darkTheme } from "./theme-values-BJJhAkUn-ORyRUrPf.js";
2
+ import { a as Lane, c as StatusBadge, d as card, f as focusRing, h as visuallyHidden, i as GraphTheme, l as TransitionItem, m as themes, n as ElementCard, o as Legend, p as surfaceRoot, r as FilterPanel, s as SequenceDiagram, t as DetailPanel, u as badge } from "./dist-arkejVz2.js";
2
3
  export { DetailPanel, ElementCard, FilterPanel, GraphTheme, Lane, Legend, SequenceDiagram, StatusBadge, TransitionItem, badge, card, darkTheme, darkValues, focusRing, lightTheme, lightValues, surfaceRoot, themes, vars, visuallyHidden };
@@ -0,0 +1,5 @@
1
+ //#region src/version.ts
2
+ /** The version of the installed `process-graph` package, as its manifest names it. The bundler writes it in when the package is built, so reading it touches no file. */
3
+ const version = "1.3.0";
4
+ //#endregion
5
+ export { version as t };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "process-graph",
3
- "version": "1.1.1",
3
+ "version": "1.3.0",
4
4
  "description": "A process and dependency graph model with projections into flowcharts, swimlanes, state machines and sequence diagrams, reasoning over a run, layout, the GitHub issues source, the SQLite store for Node and the browser, and the process-graph command line, each behind its own subpath.",
5
5
  "type": "module",
6
6
  "repository": {
@@ -56,6 +56,10 @@
56
56
  "types": "./dist/ui.d.ts",
57
57
  "import": "./dist/ui.js"
58
58
  },
59
+ "./ui/theme": {
60
+ "types": "./dist/ui/theme.d.ts",
61
+ "import": "./dist/ui/theme.js"
62
+ },
59
63
  "./react-flow": {
60
64
  "types": "./dist/react-flow.d.ts",
61
65
  "import": "./dist/react-flow.js"
@@ -65,7 +69,8 @@
65
69
  "./cli": {
66
70
  "types": "./dist/cli.d.ts",
67
71
  "import": "./dist/cli.js"
68
- }
72
+ },
73
+ "./package.json": "./package.json"
69
74
  },
70
75
  "types": "./dist/index.d.ts",
71
76
  "files": [
@@ -112,21 +117,21 @@
112
117
  ],
113
118
  "devDependencies": {
114
119
  "@arethetypeswrong/cli": "0.18.5",
115
- "@exadev/process-graph-cli": "1.0.0",
120
+ "@exadev/process-graph-cli": "1.2.0",
116
121
  "@exadev/process-graph-dag": "1.1.1",
117
- "@exadev/process-graph-domain": "1.1.2",
118
- "@exadev/process-graph-layout": "1.0.4",
119
- "@exadev/process-graph-projection": "1.1.1",
120
- "@exadev/process-graph-react": "1.1.0",
121
- "@exadev/process-graph-react-flow": "1.1.0",
122
- "@exadev/process-graph-schema": "1.1.1",
123
- "@exadev/process-graph-source-contract": "1.1.1",
124
- "@exadev/process-graph-source-github-issues": "1.1.1",
125
- "@exadev/process-graph-sqlite-node": "1.0.5",
126
- "@exadev/process-graph-sqlite-wasm": "1.0.4",
127
- "@exadev/process-graph-store-contract": "1.1.1",
128
- "@exadev/process-graph-store-sqlite": "1.1.1",
129
- "@exadev/process-graph-ui": "1.0.2",
122
+ "@exadev/process-graph-domain": "1.2.1",
123
+ "@exadev/process-graph-layout": "1.0.5",
124
+ "@exadev/process-graph-projection": "1.1.2",
125
+ "@exadev/process-graph-react": "1.1.2",
126
+ "@exadev/process-graph-react-flow": "1.1.2",
127
+ "@exadev/process-graph-schema": "1.1.2",
128
+ "@exadev/process-graph-source-contract": "1.1.2",
129
+ "@exadev/process-graph-source-github-issues": "1.1.2",
130
+ "@exadev/process-graph-sqlite-node": "1.1.0",
131
+ "@exadev/process-graph-sqlite-wasm": "1.0.6",
132
+ "@exadev/process-graph-store-contract": "1.2.1",
133
+ "@exadev/process-graph-store-sqlite": "1.2.1",
134
+ "@exadev/process-graph-ui": "1.1.0",
130
135
  "@orpc/client": "2.0.0-beta.41",
131
136
  "@orpc/contract": "2.0.0-beta.41",
132
137
  "@orpc/server": "2.0.0-beta.41",
@@ -162,14 +167,14 @@
162
167
  "@orpc/contract": "2.0.0-beta.41",
163
168
  "@orpc/server": "2.0.0-beta.41",
164
169
  "@sqlite.org/sqlite-wasm": "3.53.4-build2",
165
- "@vanilla-extract/css": "1.21.2",
166
- "@vanilla-extract/recipes": "0.5.7",
167
- "@xyflow/react": "12.12.0",
168
- "commander": "15.0.0",
170
+ "@vanilla-extract/css": "^1.21.2",
171
+ "@vanilla-extract/recipes": "^0.5.7",
172
+ "@xyflow/react": "^12.12.0",
173
+ "commander": "^15.0.0",
169
174
  "drizzle-orm": "1.0.0-rc.4",
170
- "elkjs": "0.12.0",
171
- "react": "19.3.0",
172
- "react-dom": "19.3.0"
175
+ "elkjs": "^0.12.0",
176
+ "react": "^19.3.0",
177
+ "react-dom": "^19.3.0"
173
178
  },
174
179
  "peerDependenciesMeta": {
175
180
  "@orpc/client": {
@@ -1,3 +0,0 @@
1
- import "./exit-codes-0ultCqdS.js";
2
- import { i as runProcess, r as packageVersion } from "./dist-HLlW8vgT.js";
3
- export { packageVersion, runProcess };
@@ -1,29 +0,0 @@
1
- import { t as createSqliteGraphStore } from "./store-BcR70CaO.js";
2
- import { sql } from "drizzle-orm";
3
- import { DatabaseSync } from "node:sqlite";
4
- import { drizzle } from "drizzle-orm/node-sqlite";
5
- //#region ../../adapters/graph/sqlite-node/dist/open.js
6
- /** The path `node:sqlite` reads as a private database in memory rather than a file. */
7
- const inMemory = ":memory:";
8
- /**
9
- * Opens a graph store on a SQLite database file, creating the file when it does not exist. The schema is migrated on the store's first operation.
10
- *
11
- * A file database is switched to write-ahead logging, so readers in other processes (a command line beside a server) are not blocked by a writer. Each process's change feed sees only its own writes.
12
- * @param path - The database file, or `":memory:"` for a private database that lives as long as the store.
13
- * @param options - `node:sqlite` options passed through unchanged, such as `timeout` for how long a write waits for another process's lock.
14
- * @returns The store, its database and a way to close it.
15
- */
16
- const openNodeGraphStore = (path, options = {}) => {
17
- const client = new DatabaseSync(path, options);
18
- const db = drizzle({ client });
19
- if (path !== inMemory) db.run(sql`PRAGMA journal_mode = WAL`);
20
- return {
21
- store: createSqliteGraphStore({ db }),
22
- db,
23
- close: () => {
24
- client.close();
25
- }
26
- };
27
- };
28
- //#endregion
29
- export { openNodeGraphStore as t };