@dxos/plugin-pipeline 0.8.4-main.2244d791bb → 0.8.4-main.4a85c3132b

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 (66) hide show
  1. package/dist/lib/browser/{PipelineContainer-2BRZPECS.mjs → PipelineContainer-2ZYSZATA.mjs} +146 -115
  2. package/dist/lib/browser/PipelineContainer-2ZYSZATA.mjs.map +7 -0
  3. package/dist/lib/browser/{PipelineSettings-R54RTVWZ.mjs → PipelineObjectSettings-D36OYVHW.mjs} +36 -33
  4. package/dist/lib/browser/PipelineObjectSettings-D36OYVHW.mjs.map +7 -0
  5. package/dist/lib/browser/{chunk-7GVESVYR.mjs → chunk-N6FZHYWT.mjs} +2 -2
  6. package/dist/lib/browser/chunk-N6FZHYWT.mjs.map +7 -0
  7. package/dist/lib/browser/index.mjs +4 -4
  8. package/dist/lib/browser/index.mjs.map +3 -3
  9. package/dist/lib/browser/meta.json +1 -1
  10. package/dist/lib/browser/{react-surface-CMTEEE6F.mjs → react-surface-ZGQVH4VX.mjs} +11 -8
  11. package/dist/lib/browser/react-surface-ZGQVH4VX.mjs.map +7 -0
  12. package/dist/lib/browser/types/index.mjs +1 -1
  13. package/dist/types/src/capabilities/app-graph-builder/app-graph-builder.d.ts +1 -1
  14. package/dist/types/src/capabilities/operation-resolver/operation-resolver.d.ts +1 -1
  15. package/dist/types/src/capabilities/react-surface/react-surface.d.ts +1 -1
  16. package/dist/types/src/capabilities/react-surface/react-surface.d.ts.map +1 -1
  17. package/dist/types/src/components/PipelineColumn.d.ts.map +1 -1
  18. package/dist/types/src/components/PipelineComponent.d.ts +15 -12
  19. package/dist/types/src/components/PipelineComponent.d.ts.map +1 -1
  20. package/dist/types/src/components/PipelineComponent.stories.d.ts.map +1 -1
  21. package/dist/types/src/components/index.d.ts +2 -4
  22. package/dist/types/src/components/index.d.ts.map +1 -1
  23. package/dist/types/src/{components → containers/PipelineContainer}/PipelineContainer.d.ts +2 -3
  24. package/dist/types/src/containers/PipelineContainer/PipelineContainer.d.ts.map +1 -0
  25. package/dist/types/src/containers/PipelineContainer/PipelineContainer.stories.d.ts.map +1 -0
  26. package/dist/types/src/containers/PipelineContainer/index.d.ts +3 -0
  27. package/dist/types/src/containers/PipelineContainer/index.d.ts.map +1 -0
  28. package/dist/types/src/{components/PipelineSettings.d.ts → containers/PipelineObjectSettings/PipelineObjectSettings.d.ts} +1 -2
  29. package/dist/types/src/containers/PipelineObjectSettings/PipelineObjectSettings.d.ts.map +1 -0
  30. package/dist/types/src/containers/PipelineObjectSettings/index.d.ts +3 -0
  31. package/dist/types/src/containers/PipelineObjectSettings/index.d.ts.map +1 -0
  32. package/dist/types/src/containers/index.d.ts +4 -0
  33. package/dist/types/src/containers/index.d.ts.map +1 -0
  34. package/dist/types/src/hooks/index.d.ts +2 -0
  35. package/dist/types/src/hooks/index.d.ts.map +1 -0
  36. package/dist/types/src/hooks/usePipelineBoardModel.d.ts +6 -0
  37. package/dist/types/src/hooks/usePipelineBoardModel.d.ts.map +1 -0
  38. package/dist/types/src/templates/research.d.ts.map +1 -1
  39. package/dist/types/src/types/PipelineAction.d.ts +1 -1
  40. package/dist/types/tsconfig.tsbuildinfo +1 -1
  41. package/package.json +42 -40
  42. package/src/capabilities/operation-resolver/operation-resolver.ts +2 -2
  43. package/src/capabilities/react-surface/react-surface.tsx +7 -5
  44. package/src/components/PipelineColumn.tsx +11 -23
  45. package/src/components/PipelineComponent.stories.tsx +21 -15
  46. package/src/components/PipelineComponent.tsx +38 -93
  47. package/src/components/index.ts +2 -7
  48. package/src/{components → containers/PipelineContainer}/PipelineContainer.stories.tsx +91 -88
  49. package/src/containers/PipelineContainer/PipelineContainer.tsx +87 -0
  50. package/src/containers/PipelineContainer/index.ts +7 -0
  51. package/src/{components/PipelineSettings.tsx → containers/PipelineObjectSettings/PipelineObjectSettings.tsx} +38 -31
  52. package/src/containers/PipelineObjectSettings/index.ts +7 -0
  53. package/src/containers/index.ts +8 -0
  54. package/src/hooks/index.ts +5 -0
  55. package/src/hooks/usePipelineBoardModel.ts +79 -0
  56. package/src/templates/research.ts +14 -16
  57. package/src/types/PipelineAction.ts +1 -1
  58. package/dist/lib/browser/PipelineContainer-2BRZPECS.mjs.map +0 -7
  59. package/dist/lib/browser/PipelineSettings-R54RTVWZ.mjs.map +0 -7
  60. package/dist/lib/browser/chunk-7GVESVYR.mjs.map +0 -7
  61. package/dist/lib/browser/react-surface-CMTEEE6F.mjs.map +0 -7
  62. package/dist/types/src/components/PipelineContainer.d.ts.map +0 -1
  63. package/dist/types/src/components/PipelineContainer.stories.d.ts.map +0 -1
  64. package/dist/types/src/components/PipelineSettings.d.ts.map +0 -1
  65. package/src/components/PipelineContainer.tsx +0 -61
  66. /package/dist/types/src/{components → containers/PipelineContainer}/PipelineContainer.stories.d.ts +0 -0
@@ -2,46 +2,96 @@ import {
2
2
  meta
3
3
  } from "./chunk-QWNKLHBY.mjs";
4
4
 
5
- // src/components/PipelineContainer.tsx
6
- import React3, { useCallback } from "react";
5
+ // src/containers/PipelineContainer/PipelineContainer.tsx
6
+ import React3, { useCallback, useEffect } from "react";
7
7
  import { Capabilities } from "@dxos/app-framework";
8
8
  import { useCapability } from "@dxos/app-framework/ui";
9
9
  import { useOperationInvoker } from "@dxos/app-framework/ui";
10
10
  import { Surface } from "@dxos/app-framework/ui";
11
- import { Obj as Obj3 } from "@dxos/echo";
11
+ import { OBJECT_ACTIONS_CONTRIBUTION_ID, OBJECT_ACTIONS_CONTRIBUTION_PRIORITY, useObjectMenuItems } from "@dxos/app-toolkit/ui";
12
+ import { Obj as Obj4 } from "@dxos/echo";
12
13
  import { ATTENDABLE_PATH_SEPARATOR, DeckOperation } from "@dxos/plugin-deck/types";
13
- import { Layout } from "@dxos/react-ui";
14
+ import { Panel } from "@dxos/react-ui";
14
15
  import { useAttention } from "@dxos/react-ui-attention";
15
-
16
- // src/components/PipelineComponent.tsx
17
- import { Atom, useAtomValue as useAtomValue2 } from "@effect-atom/atom-react";
18
- import { createContext } from "@radix-ui/react-context";
19
- import * as Schema from "effect/Schema";
20
- import React2, { useMemo as useMemo2 } from "react";
21
- import { Obj as Obj2, Query as Query2 } from "@dxos/echo";
22
- import { AtomObj, AtomQuery } from "@dxos/echo-atom";
23
- import { getQueryTarget } from "@dxos/plugin-space";
24
- import { getSpace as getSpace2, isSpace } from "@dxos/react-client/echo";
25
- import { Toolbar, useTranslation as useTranslation2 } from "@dxos/react-ui";
26
- import { Board as Board2, useBoard as useBoard2, useEventHandlerAdapter } from "@dxos/react-ui-mosaic";
27
- import { Pipeline } from "@dxos/types";
16
+ import { useMenu } from "@dxos/react-ui-menu";
28
17
 
29
18
  // src/components/PipelineColumn.tsx
30
- import { useAtomValue } from "@effect-atom/atom-react";
31
19
  import { useComposedRefs } from "@radix-ui/react-compose-refs";
32
- import React, { forwardRef, useMemo, useRef, useState } from "react";
33
- import { Obj, Query, Type } from "@dxos/echo";
20
+ import React2, { forwardRef, useMemo, useRef, useState } from "react";
21
+ import { useObjectNavigate } from "@dxos/app-toolkit/ui";
22
+ import { JsonSchema, Obj as Obj2, Query, Type } from "@dxos/echo";
34
23
  import { resolveSchemaWithRegistry } from "@dxos/plugin-space";
35
24
  import { Filter, getSpace, useObject } from "@dxos/react-client/echo";
36
- import { useAsyncEffect, useTranslation } from "@dxos/react-ui";
37
- import { Board, Card, Focus, Mosaic, useBoard } from "@dxos/react-ui-mosaic";
25
+ import { useAsyncEffect, useTranslation as useTranslation2 } from "@dxos/react-ui";
26
+ import { Card } from "@dxos/react-ui";
27
+ import { Board as Board2, Focus, Mosaic } from "@dxos/react-ui-mosaic";
38
28
  import { ProjectionModel, createEchoChangeCallback } from "@dxos/schema";
39
- import { mx } from "@dxos/ui-theme";
29
+
30
+ // src/components/PipelineComponent.tsx
31
+ import { useAtomValue } from "@effect-atom/atom-react";
32
+ import { createContext } from "@radix-ui/react-context";
33
+ import React from "react";
34
+ import { Obj } from "@dxos/echo";
35
+ import { Toolbar, useTranslation } from "@dxos/react-ui";
36
+ import { Board, useBoard, useEventHandlerAdapter } from "@dxos/react-ui-mosaic";
37
+ var itemNoOp = ({ item }) => /* @__PURE__ */ React.createElement("span", null, item.id);
38
+ var PIPELINE_ROOT = "Pipeline.Root";
39
+ var [PipelineRootContext, usePipeline] = createContext(PIPELINE_ROOT, {
40
+ Item: itemNoOp
41
+ });
42
+ var PipelineRoot = ({ children, ...contextValue }) => /* @__PURE__ */ React.createElement(PipelineRootContext, contextValue, children);
43
+ PipelineRoot.displayName = PIPELINE_ROOT;
44
+ var PIPELINE_CONTENT_NAME = "Pipeline.Content";
45
+ var PipelineContent = ({ model, children, ...props }) => /* @__PURE__ */ React.createElement(Board.Root, {
46
+ ...props,
47
+ model
48
+ }, children);
49
+ PipelineContent.displayName = PIPELINE_CONTENT_NAME;
50
+ var PIPELINE_COLUMNS_NAME = "Pipeline.Columns";
51
+ var PipelineColumns = ({ pipeline }) => {
52
+ const { model } = useBoard(PIPELINE_COLUMNS_NAME);
53
+ const columns = useAtomValue(model.columns);
54
+ const eventHandler = useEventHandlerAdapter({
55
+ id: pipeline.id,
56
+ // TODO(wittjosiah): Cast because columns array is readonly.
57
+ items: columns,
58
+ getId: model.getColumnId,
59
+ get: (data) => data,
60
+ make: (object) => object,
61
+ canDrop: ({ source }) => model.isColumn(source.data),
62
+ onChange: (mutate) => Obj.change(pipeline, (p) => mutate(p.columns))
63
+ });
64
+ return /* @__PURE__ */ React.createElement(Board.Content, {
65
+ id: "pipeline",
66
+ eventHandler,
67
+ Tile: PipelineColumn
68
+ });
69
+ };
70
+ PipelineColumns.displayName = PIPELINE_COLUMNS_NAME;
71
+ var PIPELINE_TOOLBAR_NAME = "Pipeline.Toolbar";
72
+ var PipelineToolbar = (props) => {
73
+ const { t } = useTranslation(meta.id);
74
+ const { onAddColumn } = usePipeline(PIPELINE_TOOLBAR_NAME);
75
+ return /* @__PURE__ */ React.createElement(Toolbar.Root, props, /* @__PURE__ */ React.createElement(Toolbar.IconButton, {
76
+ icon: "ph--plus--regular",
77
+ iconOnly: true,
78
+ label: t("add column label"),
79
+ onClick: onAddColumn
80
+ }));
81
+ };
82
+ PipelineToolbar.displayName = PIPELINE_TOOLBAR_NAME;
83
+ var PipelineComponent = {
84
+ Root: PipelineRoot,
85
+ Content: PipelineContent,
86
+ Columns: PipelineColumns,
87
+ Toolbar: PipelineToolbar
88
+ };
89
+
90
+ // src/components/PipelineColumn.tsx
40
91
  var PIPELINE_COLUMN_NAME = "PipelineColumn";
41
92
  var PipelineColumn = ({ data: column, location, classNames, debug }) => {
42
- const { t } = useTranslation(meta.id);
43
- const { model } = useBoard(PIPELINE_COLUMN_NAME);
44
- const items = useAtomValue(model.items(column));
93
+ const { t } = useTranslation2(meta.id);
94
+ const dragHandleRef = useRef(null);
45
95
  const [viewSnapshot] = useObject(column.view);
46
96
  const view = column.view.target;
47
97
  const space = getSpace(view);
@@ -70,7 +120,7 @@ var PipelineColumn = ({ data: column, location, classNames, debug }) => {
70
120
  if (!schema || !view) {
71
121
  return void 0;
72
122
  }
73
- const jsonSchema = Type.isMutable(schema) ? schema.jsonSchema : Type.toJsonSchema(schema);
123
+ const jsonSchema = Type.isMutable(schema) ? schema.jsonSchema : JsonSchema.toJsonSchema(schema);
74
124
  const change = createEchoChangeCallback(view, Type.isMutable(schema) ? schema : void 0);
75
125
  return new ProjectionModel({
76
126
  view,
@@ -82,7 +132,7 @@ var PipelineColumn = ({ data: column, location, classNames, debug }) => {
82
132
  view
83
133
  ]);
84
134
  const Tile = useMemo(() => {
85
- return /* @__PURE__ */ forwardRef((props, ref) => /* @__PURE__ */ React.createElement(ItemTile, {
135
+ return /* @__PURE__ */ forwardRef((props, ref) => /* @__PURE__ */ React2.createElement(ItemTile, {
86
136
  ...props,
87
137
  ref,
88
138
  itemProps: {
@@ -97,25 +147,22 @@ var PipelineColumn = ({ data: column, location, classNames, debug }) => {
97
147
  if (!view) {
98
148
  return null;
99
149
  }
100
- const dragHandleRef = useRef(null);
101
- return /* @__PURE__ */ React.createElement(Board.Column.Root, {
150
+ return /* @__PURE__ */ React2.createElement(Board2.Column.Root, {
102
151
  data: column,
103
152
  location,
104
- classNames,
153
+ classNames: [
154
+ "group/column grid h-full overflow-hidden grid-rows-[var(--dx-rail-action)_1fr]",
155
+ classNames
156
+ ],
105
157
  debug,
106
158
  dragHandleRef
107
- }, /* @__PURE__ */ React.createElement("div", {
108
- role: "none",
109
- "data-testid": "board-column",
110
- className: mx("group/column grid bs-full overflow-hidden grid-rows-[var(--rail-action)_1fr]", classNames)
111
- }, /* @__PURE__ */ React.createElement(Board.Column.Header, {
112
- classNames: "border-be border-separator",
159
+ }, /* @__PURE__ */ React2.createElement(Board2.Column.Header, {
113
160
  label: column.name ?? t("untitled view title"),
114
161
  dragHandleRef
115
- }), /* @__PURE__ */ React.createElement(Board.Column.Body, {
162
+ }), /* @__PURE__ */ React2.createElement(Board2.Column.Body, {
116
163
  data: column,
117
164
  Tile
118
- })));
165
+ }));
119
166
  };
120
167
  PipelineColumn.displayName = PIPELINE_COLUMN_NAME;
121
168
  var ITEM_TILE_NAME = "ItemTile";
@@ -123,43 +170,33 @@ var ItemTile = /* @__PURE__ */ forwardRef(({ classNames, data, location, debug,
123
170
  const rootRef = useRef(null);
124
171
  const composedRef = useComposedRefs(rootRef, forwardedRef);
125
172
  const { Item } = usePipeline(ITEM_TILE_NAME);
126
- return /* @__PURE__ */ React.createElement(Mosaic.Tile, {
173
+ const handleNavigate = useObjectNavigate(data);
174
+ return /* @__PURE__ */ React2.createElement(Mosaic.Tile, {
127
175
  asChild: true,
128
176
  id: data.id,
129
177
  data,
130
178
  location,
131
179
  debug
132
- }, /* @__PURE__ */ React.createElement(Focus.Group, {
180
+ }, /* @__PURE__ */ React2.createElement(Focus.Group, {
133
181
  asChild: true
134
- }, /* @__PURE__ */ React.createElement(Card.Root, {
182
+ }, /* @__PURE__ */ React2.createElement(Card.Root, {
135
183
  classNames,
136
184
  ref: composedRef
137
- }, /* @__PURE__ */ React.createElement(Card.Toolbar, null, /* @__PURE__ */ React.createElement(Card.DragHandle, null), /* @__PURE__ */ React.createElement(Card.Title, null, Obj.getLabel(data)), /* @__PURE__ */ React.createElement(Card.Menu, null)), /* @__PURE__ */ React.createElement(Card.Content, null, /* @__PURE__ */ React.createElement(Item, itemProps)))));
185
+ }, /* @__PURE__ */ React2.createElement(Card.Toolbar, null, /* @__PURE__ */ React2.createElement(Card.DragHandle, null), /* @__PURE__ */ React2.createElement(Card.Title, {
186
+ onClick: handleNavigate
187
+ }, Obj2.getLabel(data)), /* @__PURE__ */ React2.createElement(Card.Menu, null)), /* @__PURE__ */ React2.createElement(Card.Content, null, /* @__PURE__ */ React2.createElement(Item, itemProps)))));
138
188
  });
139
189
  ItemTile.displayName = ITEM_TILE_NAME;
140
190
 
141
- // src/components/PipelineComponent.tsx
142
- var itemNoOp = ({ item }) => /* @__PURE__ */ React2.createElement("span", null, item.id);
143
- var PIPELINE_ROOT = "Pipeline.Root";
144
- var [PipelineRootContext, usePipeline] = createContext(PIPELINE_ROOT, {
145
- Item: itemNoOp
146
- });
147
- var PipelineRoot = ({ model, children, ...contextValue }) => /* @__PURE__ */ React2.createElement(PipelineRootContext, contextValue, /* @__PURE__ */ React2.createElement(Board2.Root, {
148
- model
149
- }, children));
150
- PipelineRoot.displayName = PIPELINE_ROOT;
151
- var emptyColumnsAtom = Atom.make(() => []);
152
- var emptyItemsAtom = Atom.make(() => []);
153
- var emptyPipelineModel = {
154
- getColumnId: (data) => data.view.dxn.toString(),
155
- getItemId: (data) => data.id,
156
- isColumn: (obj) => Schema.is(Pipeline.Column)(obj),
157
- isItem: (obj) => Obj2.isObject(obj),
158
- columns: emptyColumnsAtom,
159
- items: () => emptyItemsAtom,
160
- getColumns: () => [],
161
- getItems: () => []
162
- };
191
+ // src/hooks/usePipelineBoardModel.ts
192
+ import { Atom } from "@effect-atom/atom-react";
193
+ import * as Schema from "effect/Schema";
194
+ import { useMemo as useMemo2 } from "react";
195
+ import { Obj as Obj3, Query as Query2 } from "@dxos/echo";
196
+ import { AtomObj, AtomQuery } from "@dxos/echo-atom";
197
+ import { getQueryTarget } from "@dxos/plugin-space";
198
+ import { getSpace as getSpace2, isSpace } from "@dxos/react-client/echo";
199
+ import { Pipeline } from "@dxos/types";
163
200
  var usePipelineBoardModel = (pipeline, registry) => useMemo2(() => {
164
201
  if (pipeline == null) {
165
202
  return emptyPipelineModel;
@@ -193,7 +230,7 @@ var usePipelineBoardModel = (pipeline, registry) => useMemo2(() => {
193
230
  getColumnId: (data) => data.view.dxn.toString(),
194
231
  getItemId: (data) => data.id,
195
232
  isColumn: (obj) => Schema.is(Pipeline.Column)(obj),
196
- isItem: (obj) => Obj2.isObject(obj),
233
+ isItem: (obj) => Obj3.isObject(obj),
197
234
  columns: columnsAtom,
198
235
  items: (column) => itemsAtomFamily(column.view.dxn.toString()),
199
236
  getColumns: () => [
@@ -205,73 +242,66 @@ var usePipelineBoardModel = (pipeline, registry) => useMemo2(() => {
205
242
  pipeline,
206
243
  registry
207
244
  ]);
208
- var PIPELINE_CONTENT_NAME = "Pipeline.Content";
209
- var PipelineContent = ({ pipeline }) => {
210
- const { model } = useBoard2(PIPELINE_CONTENT_NAME);
211
- const columns = useAtomValue2(model.columns);
212
- const eventHandler = useEventHandlerAdapter({
213
- id: pipeline.id,
214
- // TODO(wittjosiah): Cast because columns array is readonly.
215
- items: columns,
216
- getId: model.getColumnId,
217
- get: (data) => data,
218
- make: (object) => object,
219
- canDrop: ({ source }) => model.isColumn(source.data),
220
- onChange: (mutate) => Obj2.change(pipeline, (p) => mutate(p.columns))
221
- });
222
- return /* @__PURE__ */ React2.createElement(Board2.Content, {
223
- id: "pipeline",
224
- eventHandler,
225
- Tile: PipelineColumn
226
- });
227
- };
228
- PipelineContent.displayName = PIPELINE_CONTENT_NAME;
229
- var PIPELINE_TOOLBAR_NAME = "Pipeline.Toolbar";
230
- var PipelineToolbar = (props) => {
231
- const { t } = useTranslation2(meta.id);
232
- const { onAddColumn } = usePipeline(PIPELINE_TOOLBAR_NAME);
233
- return /* @__PURE__ */ React2.createElement(Toolbar.Root, props, /* @__PURE__ */ React2.createElement(Toolbar.IconButton, {
234
- icon: "ph--plus--regular",
235
- iconOnly: true,
236
- label: t("add column label"),
237
- onClick: onAddColumn
238
- }));
239
- };
240
- PipelineToolbar.displayName = PIPELINE_TOOLBAR_NAME;
241
- var PipelineComponent = {
242
- Root: PipelineRoot,
243
- Content: PipelineContent,
244
- Toolbar: PipelineToolbar
245
+ var emptyColumnsAtom = Atom.make(() => []);
246
+ var emptyItemsAtom = Atom.make(() => []);
247
+ var emptyPipelineModel = {
248
+ getColumnId: (data) => data.view.dxn.toString(),
249
+ getItemId: (data) => data.id,
250
+ isColumn: (obj) => Schema.is(Pipeline.Column)(obj),
251
+ isItem: (obj) => Obj3.isObject(obj),
252
+ columns: emptyColumnsAtom,
253
+ items: () => emptyItemsAtom,
254
+ getColumns: () => [],
255
+ getItems: () => []
245
256
  };
246
257
 
247
- // src/components/PipelineContainer.tsx
258
+ // src/containers/PipelineContainer/PipelineContainer.tsx
259
+ var PIPELINE_ITEM = "PipelineItem";
248
260
  var PipelineContainer = ({ role, subject: pipeline }) => {
249
261
  const registry = useCapability(Capabilities.AtomRegistry);
250
262
  const model = usePipelineBoardModel(pipeline, registry);
251
263
  const { invokePromise } = useOperationInvoker();
252
- const attendableId = Obj3.getDXN(pipeline).toString();
264
+ const attendableId = Obj4.getDXN(pipeline).toString();
253
265
  const { hasAttention } = useAttention(attendableId);
254
266
  const handleColumnAdd = useCallback(() => invokePromise(DeckOperation.ChangeCompanion, {
255
- primary: attendableId,
256
267
  companion: `${attendableId}${ATTENDABLE_PATH_SEPARATOR}settings`
257
268
  }), [
258
269
  invokePromise,
259
270
  attendableId
260
271
  ]);
261
- return /* @__PURE__ */ React3.createElement(Layout.Main, {
262
- role,
263
- toolbar: true
264
- }, /* @__PURE__ */ React3.createElement(PipelineComponent.Root, {
272
+ return /* @__PURE__ */ React3.createElement(PipelineComponent.Root, {
265
273
  Item: PipelineItem,
266
- model,
267
274
  onAddColumn: handleColumnAdd
275
+ }, /* @__PURE__ */ React3.createElement(Panel.Root, {
276
+ role,
277
+ className: "dx-article"
278
+ }, /* @__PURE__ */ React3.createElement(Panel.Toolbar, {
279
+ asChild: true
268
280
  }, /* @__PURE__ */ React3.createElement(PipelineComponent.Toolbar, {
269
281
  disabled: !hasAttention
270
- }), /* @__PURE__ */ React3.createElement(PipelineComponent.Content, {
282
+ })), /* @__PURE__ */ React3.createElement(Panel.Content, {
283
+ asChild: true
284
+ }, /* @__PURE__ */ React3.createElement(PipelineComponent.Content, {
285
+ model
286
+ }, /* @__PURE__ */ React3.createElement(PipelineComponent.Columns, {
271
287
  pipeline
272
- })));
288
+ })))));
273
289
  };
274
290
  var PipelineItem = ({ item, projectionModel }) => {
291
+ const menu = useMenu(PIPELINE_ITEM);
292
+ const items = useObjectMenuItems(item);
293
+ useEffect(() => {
294
+ menu.addMenuItems({
295
+ id: OBJECT_ACTIONS_CONTRIBUTION_ID,
296
+ mode: "additive",
297
+ priority: OBJECT_ACTIONS_CONTRIBUTION_PRIORITY,
298
+ items
299
+ });
300
+ return () => menu.removeMenuItems(OBJECT_ACTIONS_CONTRIBUTION_ID);
301
+ }, [
302
+ menu,
303
+ items
304
+ ]);
275
305
  return /* @__PURE__ */ React3.createElement(Surface.Surface, {
276
306
  role: "card--content",
277
307
  data: {
@@ -281,9 +311,10 @@ var PipelineItem = ({ item, projectionModel }) => {
281
311
  limit: 1
282
312
  });
283
313
  };
314
+
315
+ // src/containers/PipelineContainer/index.ts
284
316
  var PipelineContainer_default = PipelineContainer;
285
317
  export {
286
- PipelineContainer,
287
318
  PipelineContainer_default as default
288
319
  };
289
- //# sourceMappingURL=PipelineContainer-2BRZPECS.mjs.map
320
+ //# sourceMappingURL=PipelineContainer-2ZYSZATA.mjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/containers/PipelineContainer/PipelineContainer.tsx", "../../../src/components/PipelineColumn.tsx", "../../../src/components/PipelineComponent.tsx", "../../../src/hooks/usePipelineBoardModel.ts", "../../../src/containers/PipelineContainer/index.ts"],
4
+ "sourcesContent": ["//\n// Copyright 2023 DXOS.org\n//\n\nimport React, { useCallback, useEffect } from 'react';\n\nimport { Capabilities } from '@dxos/app-framework';\nimport { useCapability } from '@dxos/app-framework/ui';\nimport { useOperationInvoker } from '@dxos/app-framework/ui';\nimport { Surface } from '@dxos/app-framework/ui';\nimport {\n OBJECT_ACTIONS_CONTRIBUTION_ID,\n OBJECT_ACTIONS_CONTRIBUTION_PRIORITY,\n type SurfaceComponentProps,\n useObjectMenuItems,\n} from '@dxos/app-toolkit/ui';\nimport { Obj } from '@dxos/echo';\nimport { ATTENDABLE_PATH_SEPARATOR, DeckOperation } from '@dxos/plugin-deck/types';\nimport { Panel } from '@dxos/react-ui';\nimport { useAttention } from '@dxos/react-ui-attention';\nimport { useMenu } from '@dxos/react-ui-menu';\nimport { type Pipeline } from '@dxos/types';\n\nimport { type ItemProps, PipelineComponent } from '../../components';\nimport { usePipelineBoardModel } from '../../hooks';\n\nconst PIPELINE_ITEM = 'PipelineItem';\n\nexport type PipelineContainerProps = SurfaceComponentProps<Pipeline.Pipeline>;\n\nexport const PipelineContainer = ({ role, subject: pipeline }: PipelineContainerProps) => {\n const registry = useCapability(Capabilities.AtomRegistry);\n const model = usePipelineBoardModel(pipeline, registry);\n const { invokePromise } = useOperationInvoker();\n const attendableId = Obj.getDXN(pipeline).toString();\n const { hasAttention } = useAttention(attendableId);\n\n const handleColumnAdd = useCallback(\n () =>\n invokePromise(DeckOperation.ChangeCompanion, {\n companion: `${attendableId}${ATTENDABLE_PATH_SEPARATOR}settings`,\n }),\n [invokePromise, attendableId],\n );\n\n return (\n <PipelineComponent.Root Item={PipelineItem} onAddColumn={handleColumnAdd}>\n <Panel.Root role={role} className='dx-article'>\n <Panel.Toolbar asChild>\n <PipelineComponent.Toolbar disabled={!hasAttention} />\n </Panel.Toolbar>\n <Panel.Content asChild>\n <PipelineComponent.Content model={model}>\n <PipelineComponent.Columns pipeline={pipeline} />\n </PipelineComponent.Content>\n </Panel.Content>\n </Panel.Root>\n </PipelineComponent.Root>\n );\n};\n\nconst PipelineItem = ({ item, projectionModel }: ItemProps) => {\n const menu = useMenu(PIPELINE_ITEM);\n const items = useObjectMenuItems(item);\n\n useEffect(() => {\n menu.addMenuItems({\n id: OBJECT_ACTIONS_CONTRIBUTION_ID,\n mode: 'additive',\n priority: OBJECT_ACTIONS_CONTRIBUTION_PRIORITY,\n items,\n });\n\n return () => menu.removeMenuItems(OBJECT_ACTIONS_CONTRIBUTION_ID);\n }, [menu, items]);\n\n return (\n <Surface.Surface\n role='card--content'\n data={{\n subject: item,\n projection: projectionModel,\n }}\n limit={1}\n />\n );\n};\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport type * as Schema from 'effect/Schema';\nimport React, { forwardRef, useMemo, useRef, useState } from 'react';\n\nimport { useObjectNavigate } from '@dxos/app-toolkit/ui';\nimport { JsonSchema, Obj, Query, Type } from '@dxos/echo';\nimport { resolveSchemaWithRegistry } from '@dxos/plugin-space';\nimport { Filter, getSpace, useObject } from '@dxos/react-client/echo';\nimport { useAsyncEffect, useTranslation } from '@dxos/react-ui';\nimport { Card } from '@dxos/react-ui';\nimport { Board, Focus, Mosaic, type MosaicTileProps } from '@dxos/react-ui-mosaic';\nimport { ProjectionModel, createEchoChangeCallback } from '@dxos/schema';\nimport { type Pipeline } from '@dxos/types';\n\nimport { meta } from '../meta';\n\nimport { type ItemProps, usePipeline } from './PipelineComponent';\n\n//\n// PipelineColumn\n//\n\nconst PIPELINE_COLUMN_NAME = 'PipelineColumn';\n\nexport type PipelineColumnProps = Pick<MosaicTileProps<Pipeline.Column>, 'classNames' | 'location' | 'data' | 'debug'>;\n\n// TODO(wittjosiah): Support item DnD reordering (ordering needs to be stored on the view presentation collection).\nexport const PipelineColumn = ({ data: column, location, classNames, debug }: PipelineColumnProps) => {\n const { t } = useTranslation(meta.id);\n const dragHandleRef = useRef<HTMLButtonElement>(null);\n // Subscribe to the view target for reactivity.\n const [viewSnapshot] = useObject(column.view);\n const view = column.view.target;\n const space = getSpace(view);\n const { Item } = usePipeline(PIPELINE_COLUMN_NAME);\n const [schema, setSchema] = useState<Schema.Schema.AnyNoContext>();\n const query = useMemo(() => {\n if (!view) {\n return Query.select(Filter.nothing());\n } else {\n // NOTE: Snapshot is required to prevent signal read in prohibited scope.\n // TODO(wittjosiah): Without stringify, filter.filters remains a proxied array.\n return Query.fromAst(JSON.parse(JSON.stringify(viewSnapshot?.query.ast)));\n }\n }, [JSON.stringify(viewSnapshot?.query.ast)]);\n\n useAsyncEffect(async () => {\n if (!query || !space?.db) {\n return;\n }\n\n const schema = await resolveSchemaWithRegistry(space.db.schemaRegistry, query.ast);\n setSchema(() => schema);\n }, [space, query]);\n\n const projectionModel = useMemo(() => {\n if (!schema || !view) {\n return undefined;\n }\n\n // For mutable schemas (EchoSchema), use the live jsonSchema reference for reactivity.\n const jsonSchema = Type.isMutable(schema) ? schema.jsonSchema : JsonSchema.toJsonSchema(schema);\n const change = createEchoChangeCallback(view, Type.isMutable(schema) ? schema : undefined);\n return new ProjectionModel({ view, baseSchema: jsonSchema, change });\n }, [schema, view]);\n\n const Tile = useMemo(() => {\n return forwardRef<HTMLDivElement, Pick<MosaicTileProps<Obj.Unknown>, 'classNames' | 'location' | 'data' | 'debug'>>(\n (props, ref) => <ItemTile {...props} ref={ref} itemProps={{ item: props.data, projectionModel }} />,\n );\n }, [Item, projectionModel]);\n\n if (!view) {\n return null;\n }\n\n return (\n <Board.Column.Root\n data={column}\n location={location}\n classNames={['group/column grid h-full overflow-hidden grid-rows-[var(--dx-rail-action)_1fr]', classNames]}\n debug={debug}\n dragHandleRef={dragHandleRef}\n >\n <Board.Column.Header label={column.name ?? t('untitled view title')} dragHandleRef={dragHandleRef} />\n <Board.Column.Body data={column} Tile={Tile} />\n </Board.Column.Root>\n );\n};\n\nPipelineColumn.displayName = PIPELINE_COLUMN_NAME;\n\n//\n// ItemTile\n//\n\nconst ITEM_TILE_NAME = 'ItemTile';\n\ntype ItemTileProps = Pick<MosaicTileProps<Obj.Unknown>, 'classNames' | 'location' | 'data' | 'debug'> & {\n itemProps: ItemProps;\n};\n\nconst ItemTile = forwardRef<HTMLDivElement, ItemTileProps>(\n ({ classNames, data, location, debug, itemProps }, forwardedRef) => {\n const rootRef = useRef<HTMLDivElement>(null);\n const composedRef = useComposedRefs<HTMLDivElement>(rootRef, forwardedRef);\n const { Item } = usePipeline(ITEM_TILE_NAME);\n const handleNavigate = useObjectNavigate(data);\n\n return (\n <Mosaic.Tile asChild id={data.id} data={data} location={location} debug={debug}>\n <Focus.Group asChild>\n <Card.Root classNames={classNames} ref={composedRef}>\n <Card.Toolbar>\n <Card.DragHandle />\n <Card.Title onClick={handleNavigate}>{Obj.getLabel(data)}</Card.Title>\n <Card.Menu />\n </Card.Toolbar>\n <Card.Content>\n <Item {...itemProps} />\n </Card.Content>\n </Card.Root>\n </Focus.Group>\n </Mosaic.Tile>\n );\n },\n);\n\nItemTile.displayName = ITEM_TILE_NAME;\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { useAtomValue } from '@effect-atom/atom-react';\nimport { createContext } from '@radix-ui/react-context';\nimport React, { type FC, type PropsWithChildren } from 'react';\n\nimport { Obj } from '@dxos/echo';\nimport { Toolbar, type ToolbarRootProps, useTranslation } from '@dxos/react-ui';\nimport { Board, type BoardModel, useBoard, useEventHandlerAdapter } from '@dxos/react-ui-mosaic';\nimport { type ProjectionModel } from '@dxos/schema';\nimport { type Pipeline } from '@dxos/types';\n\nimport { meta } from '../meta';\n\nimport { PipelineColumn } from './PipelineColumn';\n\ntype ItemProps = {\n item: Obj.Unknown;\n projectionModel?: ProjectionModel;\n};\n\nconst itemNoOp = ({ item }: ItemProps) => <span>{item.id}</span>;\n\n//\n// Root\n//\n\ntype PipelineContextValue = {\n Item: FC<ItemProps>;\n // TODO(wittjosiah): Support adding items.\n // If the created item doesn't match the current query, it will not be visible.\n // TODO(wittjosiah): onAddItem?: (schema: Schema.Schema.AnyNoContext) => void;\n onAddColumn?: () => void;\n};\n\ntype PipelineRootProps = PropsWithChildren<PipelineContextValue>;\n\nconst PIPELINE_ROOT = 'Pipeline.Root';\n\nconst [PipelineRootContext, usePipeline] = createContext<PipelineContextValue>(PIPELINE_ROOT, {\n Item: itemNoOp,\n});\n\nconst PipelineRoot = ({ children, ...contextValue }: PipelineRootProps) => (\n <PipelineRootContext {...contextValue}>{children}</PipelineRootContext>\n);\n\nPipelineRoot.displayName = PIPELINE_ROOT;\n\n//\n// Content\n//\n\nconst PIPELINE_CONTENT_NAME = 'Pipeline.Content';\n\ntype PipelineContentProps = PropsWithChildren<{\n model: BoardModel<Pipeline.Column, Obj.Unknown>;\n}>;\n\nconst PipelineContent = ({ model, children, ...props }: PipelineContentProps) => (\n <Board.Root {...props} model={model}>\n {children}\n </Board.Root>\n);\n\nPipelineContent.displayName = PIPELINE_CONTENT_NAME;\n\n//\n// Columns\n//\n\nconst PIPELINE_COLUMNS_NAME = 'Pipeline.Columns';\n\ntype PipelineColumnsProps = {\n pipeline: Pipeline.Pipeline;\n};\n\nconst PipelineColumns = ({ pipeline }: PipelineColumnsProps) => {\n const { model } = useBoard(PIPELINE_COLUMNS_NAME);\n const columns = useAtomValue(model.columns);\n const eventHandler = useEventHandlerAdapter<Pipeline.Column, Obj.Unknown>({\n id: pipeline.id,\n // TODO(wittjosiah): Cast because columns array is readonly.\n items: columns as any,\n getId: model.getColumnId,\n get: (data) => data as unknown as Obj.Unknown,\n make: (object) => object as unknown as Pipeline.Column,\n canDrop: ({ source }) => model.isColumn(source.data),\n onChange: (mutate) => Obj.change(pipeline, (p) => mutate(p.columns)),\n });\n\n return <Board.Content id='pipeline' eventHandler={eventHandler} Tile={PipelineColumn} />;\n};\n\nPipelineColumns.displayName = PIPELINE_COLUMNS_NAME;\n\n//\n// Toolbar\n//\n\nconst PIPELINE_TOOLBAR_NAME = 'Pipeline.Toolbar';\n\nexport const PipelineToolbar = (props: ToolbarRootProps) => {\n const { t } = useTranslation(meta.id);\n const { onAddColumn } = usePipeline(PIPELINE_TOOLBAR_NAME);\n\n return (\n <Toolbar.Root {...props}>\n <Toolbar.IconButton icon='ph--plus--regular' iconOnly label={t('add column label')} onClick={onAddColumn} />\n </Toolbar.Root>\n );\n};\n\nPipelineToolbar.displayName = PIPELINE_TOOLBAR_NAME;\n\n//\n// Project\n//\n\nexport const PipelineComponent = {\n Root: PipelineRoot,\n Content: PipelineContent,\n Columns: PipelineColumns,\n Toolbar: PipelineToolbar,\n};\n\nexport { usePipeline };\n\nexport type { ItemProps, PipelineContextValue, PipelineRootProps, PipelineContentProps, PipelineColumnsProps };\n", "//\n// Copyright 2025 DXOS.org\n//\n\nimport { Atom, type Registry } from '@effect-atom/atom-react';\nimport * as Schema from 'effect/Schema';\nimport { useMemo } from 'react';\n\nimport { Obj, Query } from '@dxos/echo';\nimport { AtomObj, AtomQuery } from '@dxos/echo-atom';\nimport { getQueryTarget } from '@dxos/plugin-space';\nimport { getSpace, isSpace } from '@dxos/react-client/echo';\nimport { type BoardModel } from '@dxos/react-ui-mosaic';\nimport { Pipeline } from '@dxos/types';\n\nexport const usePipelineBoardModel = (\n pipeline: Pipeline.Pipeline | undefined,\n registry: Registry.Registry,\n): BoardModel<Pipeline.Column, Obj.Unknown> =>\n useMemo<BoardModel<Pipeline.Column, Obj.Unknown>>(() => {\n if (pipeline == null) {\n return emptyPipelineModel;\n }\n\n const space = getSpace(pipeline);\n const columnsAtom = AtomObj.makeProperty(pipeline, 'columns');\n const columnAtomFamily = Atom.family<string, Atom.Atom<Pipeline.Column | undefined>>((viewKey: string) =>\n Atom.make((get) => {\n const columns = get(columnsAtom);\n return columns.find((c) => c.view.dxn.toString() === viewKey);\n }),\n );\n\n const itemsAtomFamily = Atom.family<string, Atom.Atom<Obj.Unknown[]>>((viewKey: string) =>\n Atom.make((get) => {\n const column = get(columnAtomFamily(viewKey));\n if (column == null) {\n return [];\n }\n const viewSnapshot = get(AtomObj.make(column.view));\n if (!viewSnapshot?.query?.ast) {\n return [];\n }\n const query = Query.fromAst(JSON.parse(JSON.stringify(viewSnapshot.query.ast)));\n const queryTarget = space ? getQueryTarget(query.ast, space) : undefined;\n if (!queryTarget) {\n return [];\n }\n const raw = get(AtomQuery.make(queryTarget, query));\n return isSpace(queryTarget) ? raw : [...raw].reverse();\n }),\n );\n\n return {\n getColumnId: (data) => (data as Pipeline.Column).view.dxn.toString(),\n getItemId: (data) => (data as Obj.Unknown).id,\n isColumn: (obj: unknown): obj is Pipeline.Column => Schema.is(Pipeline.Column)(obj),\n isItem: (obj: unknown): obj is Obj.Unknown => Obj.isObject(obj),\n columns: columnsAtom,\n items: (column) => itemsAtomFamily(column.view.dxn.toString()),\n getColumns: () => [...registry.get(columnsAtom)],\n getItems: (column) => registry.get(itemsAtomFamily(column.view.dxn.toString())) ?? [],\n };\n }, [pipeline, registry]);\n\nconst emptyColumnsAtom = Atom.make(() => [] as Pipeline.Column[]);\n\nconst emptyItemsAtom = Atom.make(() => [] as Obj.Unknown[]);\n\nconst emptyPipelineModel: BoardModel<Pipeline.Column, Obj.Unknown> = {\n getColumnId: (data) => (data as Pipeline.Column).view.dxn.toString(),\n getItemId: (data) => (data as Obj.Unknown).id,\n isColumn: (obj: unknown): obj is Pipeline.Column => Schema.is(Pipeline.Column)(obj),\n isItem: (obj): obj is Obj.Unknown => Obj.isObject(obj),\n columns: emptyColumnsAtom,\n items: () => emptyItemsAtom,\n getColumns: () => [],\n getItems: () => [],\n};\n", "//\n// Copyright 2023 DXOS.org\n//\n\nimport { PipelineContainer } from './PipelineContainer';\n\nexport default PipelineContainer;\n"],
5
+ "mappings": ";;;;;AAIA,OAAOA,UAASC,aAAaC,iBAAiB;AAE9C,SAASC,oBAAoB;AAC7B,SAASC,qBAAqB;AAC9B,SAASC,2BAA2B;AACpC,SAASC,eAAe;AACxB,SACEC,gCACAC,sCAEAC,0BACK;AACP,SAASC,OAAAA,YAAW;AACpB,SAASC,2BAA2BC,qBAAqB;AACzD,SAASC,aAAa;AACtB,SAASC,oBAAoB;AAC7B,SAASC,eAAe;;;AChBxB,SAASC,uBAAuB;AAEhC,OAAOC,UAASC,YAAYC,SAASC,QAAQC,gBAAgB;AAE7D,SAASC,yBAAyB;AAClC,SAASC,YAAYC,OAAAA,MAAKC,OAAOC,YAAY;AAC7C,SAASC,iCAAiC;AAC1C,SAASC,QAAQC,UAAUC,iBAAiB;AAC5C,SAASC,gBAAgBC,kBAAAA,uBAAsB;AAC/C,SAASC,YAAY;AACrB,SAASC,SAAAA,QAAOC,OAAOC,cAAoC;AAC3D,SAASC,iBAAiBC,gCAAgC;;;ACX1D,SAASC,oBAAoB;AAC7B,SAASC,qBAAqB;AAC9B,OAAOC,WAAgD;AAEvD,SAASC,WAAW;AACpB,SAASC,SAAgCC,sBAAsB;AAC/D,SAASC,OAAwBC,UAAUC,8BAA8B;AAazE,IAAMC,WAAW,CAAC,EAAEC,KAAI,MAAkB,sBAAA,cAACC,QAAAA,MAAMD,KAAKE,EAAE;AAgBxD,IAAMC,gBAAgB;AAEtB,IAAM,CAACC,qBAAqBC,WAAAA,IAAeC,cAAoCH,eAAe;EAC5FI,MAAMR;AACR,CAAA;AAEA,IAAMS,eAAe,CAAC,EAAEC,UAAU,GAAGC,aAAAA,MACnC,sBAAA,cAACN,qBAAwBM,cAAeD,QAAAA;AAG1CD,aAAaG,cAAcR;AAM3B,IAAMS,wBAAwB;AAM9B,IAAMC,kBAAkB,CAAC,EAAEC,OAAOL,UAAU,GAAGM,MAAAA,MAC7C,sBAAA,cAACC,MAAMC,MAAI;EAAE,GAAGF;EAAOD;GACpBL,QAAAA;AAILI,gBAAgBF,cAAcC;AAM9B,IAAMM,wBAAwB;AAM9B,IAAMC,kBAAkB,CAAC,EAAEC,SAAQ,MAAwB;AACzD,QAAM,EAAEN,MAAK,IAAKO,SAASH,qBAAAA;AAC3B,QAAMI,UAAUC,aAAaT,MAAMQ,OAAO;AAC1C,QAAME,eAAeC,uBAAqD;IACxEvB,IAAIkB,SAASlB;;IAEbwB,OAAOJ;IACPK,OAAOb,MAAMc;IACbC,KAAK,CAACC,SAASA;IACfC,MAAM,CAACC,WAAWA;IAClBC,SAAS,CAAC,EAAEC,OAAM,MAAOpB,MAAMqB,SAASD,OAAOJ,IAAI;IACnDM,UAAU,CAACC,WAAWC,IAAIC,OAAOnB,UAAU,CAACoB,MAAMH,OAAOG,EAAElB,OAAO,CAAA;EACpE,CAAA;AAEA,SAAO,sBAAA,cAACN,MAAMyB,SAAO;IAACvC,IAAG;IAAWsB;IAA4BkB,MAAMC;;AACxE;AAEAxB,gBAAgBR,cAAcO;AAM9B,IAAM0B,wBAAwB;AAEvB,IAAMC,kBAAkB,CAAC9B,UAAAA;AAC9B,QAAM,EAAE+B,EAAC,IAAKC,eAAeC,KAAK9C,EAAE;AACpC,QAAM,EAAE+C,YAAW,IAAK5C,YAAYuC,qBAAAA;AAEpC,SACE,sBAAA,cAACM,QAAQjC,MAASF,OAChB,sBAAA,cAACmC,QAAQC,YAAU;IAACC,MAAK;IAAoBC,UAAAA;IAASC,OAAOR,EAAE,kBAAA;IAAqBS,SAASN;;AAGnG;AAEAJ,gBAAgBlC,cAAciC;AAMvB,IAAMY,oBAAoB;EAC/BvC,MAAMT;EACNiC,SAAS5B;EACT4C,SAAStC;EACT+B,SAASL;AACX;;;ADpGA,IAAMa,uBAAuB;AAKtB,IAAMC,iBAAiB,CAAC,EAAEC,MAAMC,QAAQC,UAAUC,YAAYC,MAAK,MAAuB;AAC/F,QAAM,EAAEC,EAAC,IAAKC,gBAAeC,KAAKC,EAAE;AACpC,QAAMC,gBAAgBC,OAA0B,IAAA;AAEhD,QAAM,CAACC,YAAAA,IAAgBC,UAAUX,OAAOY,IAAI;AAC5C,QAAMA,OAAOZ,OAAOY,KAAKC;AACzB,QAAMC,QAAQC,SAASH,IAAAA;AACvB,QAAM,EAAEI,KAAI,IAAKC,YAAYpB,oBAAAA;AAC7B,QAAM,CAACqB,QAAQC,SAAAA,IAAaC,SAAAA;AAC5B,QAAMC,QAAQC,QAAQ,MAAA;AACpB,QAAI,CAACV,MAAM;AACT,aAAOW,MAAMC,OAAOC,OAAOC,QAAO,CAAA;IACpC,OAAO;AAGL,aAAOH,MAAMI,QAAQC,KAAKC,MAAMD,KAAKE,UAAUpB,cAAcW,MAAMU,GAAAA,CAAAA,CAAAA;IACrE;EACF,GAAG;IAACH,KAAKE,UAAUpB,cAAcW,MAAMU,GAAAA;GAAK;AAE5CC,iBAAe,YAAA;AACb,QAAI,CAACX,SAAS,CAACP,OAAOmB,IAAI;AACxB;IACF;AAEA,UAAMf,UAAS,MAAMgB,0BAA0BpB,MAAMmB,GAAGE,gBAAgBd,MAAMU,GAAG;AACjFZ,cAAU,MAAMD,OAAAA;EAClB,GAAG;IAACJ;IAAOO;GAAM;AAEjB,QAAMe,kBAAkBd,QAAQ,MAAA;AAC9B,QAAI,CAACJ,UAAU,CAACN,MAAM;AACpB,aAAOyB;IACT;AAGA,UAAMC,aAAaC,KAAKC,UAAUtB,MAAAA,IAAUA,OAAOoB,aAAaG,WAAWC,aAAaxB,MAAAA;AACxF,UAAMyB,SAASC,yBAAyBhC,MAAM2B,KAAKC,UAAUtB,MAAAA,IAAUA,SAASmB,MAAAA;AAChF,WAAO,IAAIQ,gBAAgB;MAAEjC;MAAMkC,YAAYR;MAAYK;IAAO,CAAA;EACpE,GAAG;IAACzB;IAAQN;GAAK;AAEjB,QAAMmC,OAAOzB,QAAQ,MAAA;AACnB,WAAO0B,2BACL,CAACC,OAAOC,QAAQ,gBAAAC,OAAA,cAACC,UAAAA;MAAU,GAAGH;MAAOC;MAAUG,WAAW;QAAEC,MAAML,MAAMlD;QAAMqC;MAAgB;;EAElG,GAAG;IAACpB;IAAMoB;GAAgB;AAE1B,MAAI,CAACxB,MAAM;AACT,WAAO;EACT;AAEA,SACE,gBAAAuC,OAAA,cAACI,OAAMC,OAAOC,MAAI;IAChB1D,MAAMC;IACNC;IACAC,YAAY;MAAC;MAAkFA;;IAC/FC;IACAK;KAEA,gBAAA2C,OAAA,cAACI,OAAMC,OAAOE,QAAM;IAACC,OAAO3D,OAAO4D,QAAQxD,EAAE,qBAAA;IAAwBI;MACrE,gBAAA2C,OAAA,cAACI,OAAMC,OAAOK,MAAI;IAAC9D,MAAMC;IAAQ+C;;AAGvC;AAEAjD,eAAegE,cAAcjE;AAM7B,IAAMkE,iBAAiB;AAMvB,IAAMX,WAAWJ,2BACf,CAAC,EAAE9C,YAAYH,MAAME,UAAUE,OAAOkD,UAAS,GAAIW,iBAAAA;AACjD,QAAMC,UAAUxD,OAAuB,IAAA;AACvC,QAAMyD,cAAcC,gBAAgCF,SAASD,YAAAA;AAC7D,QAAM,EAAEhD,KAAI,IAAKC,YAAY8C,cAAAA;AAC7B,QAAMK,iBAAiBC,kBAAkBtE,IAAAA;AAEzC,SACE,gBAAAoD,OAAA,cAACmB,OAAOvB,MAAI;IAACwB,SAAAA;IAAQhE,IAAIR,KAAKQ;IAAIR;IAAYE;IAAoBE;KAChE,gBAAAgD,OAAA,cAACqB,MAAMC,OAAK;IAACF,SAAAA;KACX,gBAAApB,OAAA,cAACuB,KAAKjB,MAAI;IAACvD;IAAwBgD,KAAKgB;KACtC,gBAAAf,OAAA,cAACuB,KAAKC,SAAO,MACX,gBAAAxB,OAAA,cAACuB,KAAKE,YAAU,IAAA,GAChB,gBAAAzB,OAAA,cAACuB,KAAKG,OAAK;IAACC,SAASV;KAAiBW,KAAIC,SAASjF,IAAAA,CAAAA,GACnD,gBAAAoD,OAAA,cAACuB,KAAKO,MAAI,IAAA,CAAA,GAEZ,gBAAA9B,OAAA,cAACuB,KAAKQ,SAAO,MACX,gBAAA/B,OAAA,cAACnC,MAASqC,SAAAA,CAAAA,CAAAA,CAAAA,CAAAA;AAMtB,CAAA;AAGFD,SAASU,cAAcC;;;AEhIvB,SAASoB,YAA2B;AACpC,YAAYC,YAAY;AACxB,SAASC,WAAAA,gBAAe;AAExB,SAASC,OAAAA,MAAKC,SAAAA,cAAa;AAC3B,SAASC,SAASC,iBAAiB;AACnC,SAASC,sBAAsB;AAC/B,SAASC,YAAAA,WAAUC,eAAe;AAElC,SAASC,gBAAgB;AAElB,IAAMC,wBAAwB,CACnCC,UACAC,aAEAC,SAAkD,MAAA;AAChD,MAAIF,YAAY,MAAM;AACpB,WAAOG;EACT;AAEA,QAAMC,QAAQC,UAASL,QAAAA;AACvB,QAAMM,cAAcC,QAAQC,aAAaR,UAAU,SAAA;AACnD,QAAMS,mBAAmBC,KAAKC,OAAuD,CAACC,YACpFF,KAAKG,KAAK,CAACC,QAAAA;AACT,UAAMC,UAAUD,IAAIR,WAAAA;AACpB,WAAOS,QAAQC,KAAK,CAACC,MAAMA,EAAEC,KAAKC,IAAIC,SAAQ,MAAOR,OAAAA;EACvD,CAAA,CAAA;AAGF,QAAMS,kBAAkBX,KAAKC,OAAyC,CAACC,YACrEF,KAAKG,KAAK,CAACC,QAAAA;AACT,UAAMQ,SAASR,IAAIL,iBAAiBG,OAAAA,CAAAA;AACpC,QAAIU,UAAU,MAAM;AAClB,aAAO,CAAA;IACT;AACA,UAAMC,eAAeT,IAAIP,QAAQM,KAAKS,OAAOJ,IAAI,CAAA;AACjD,QAAI,CAACK,cAAcC,OAAOC,KAAK;AAC7B,aAAO,CAAA;IACT;AACA,UAAMD,QAAQE,OAAMC,QAAQC,KAAKC,MAAMD,KAAKE,UAAUP,aAAaC,MAAMC,GAAG,CAAA,CAAA;AAC5E,UAAMM,cAAc3B,QAAQ4B,eAAeR,MAAMC,KAAKrB,KAAAA,IAAS6B;AAC/D,QAAI,CAACF,aAAa;AAChB,aAAO,CAAA;IACT;AACA,UAAMG,MAAMpB,IAAIqB,UAAUtB,KAAKkB,aAAaP,KAAAA,CAAAA;AAC5C,WAAOY,QAAQL,WAAAA,IAAeG,MAAM;SAAIA;MAAKG,QAAO;EACtD,CAAA,CAAA;AAGF,SAAO;IACLC,aAAa,CAACC,SAAUA,KAAyBrB,KAAKC,IAAIC,SAAQ;IAClEoB,WAAW,CAACD,SAAUA,KAAqBE;IAC3CC,UAAU,CAACC,QAAgDC,UAAGC,SAASC,MAAM,EAAEH,GAAAA;IAC/EI,QAAQ,CAACJ,QAAqCK,KAAIC,SAASN,GAAAA;IAC3D5B,SAAST;IACT4C,OAAO,CAAC5B,WAAWD,gBAAgBC,OAAOJ,KAAKC,IAAIC,SAAQ,CAAA;IAC3D+B,YAAY,MAAM;SAAIlD,SAASa,IAAIR,WAAAA;;IACnC8C,UAAU,CAAC9B,WAAWrB,SAASa,IAAIO,gBAAgBC,OAAOJ,KAAKC,IAAIC,SAAQ,CAAA,CAAA,KAAQ,CAAA;EACrF;AACF,GAAG;EAACpB;EAAUC;CAAS;AAEzB,IAAMoD,mBAAmB3C,KAAKG,KAAK,MAAM,CAAA,CAAE;AAE3C,IAAMyC,iBAAiB5C,KAAKG,KAAK,MAAM,CAAA,CAAE;AAEzC,IAAMV,qBAA+D;EACnEmC,aAAa,CAACC,SAAUA,KAAyBrB,KAAKC,IAAIC,SAAQ;EAClEoB,WAAW,CAACD,SAAUA,KAAqBE;EAC3CC,UAAU,CAACC,QAAgDC,UAAGC,SAASC,MAAM,EAAEH,GAAAA;EAC/EI,QAAQ,CAACJ,QAA4BK,KAAIC,SAASN,GAAAA;EAClD5B,SAASsC;EACTH,OAAO,MAAMI;EACbH,YAAY,MAAM,CAAA;EAClBC,UAAU,MAAM,CAAA;AAClB;;;AHpDA,IAAMG,gBAAgB;AAIf,IAAMC,oBAAoB,CAAC,EAAEC,MAAMC,SAASC,SAAQ,MAA0B;AACnF,QAAMC,WAAWC,cAAcC,aAAaC,YAAY;AACxD,QAAMC,QAAQC,sBAAsBN,UAAUC,QAAAA;AAC9C,QAAM,EAAEM,cAAa,IAAKC,oBAAAA;AAC1B,QAAMC,eAAeC,KAAIC,OAAOX,QAAAA,EAAUY,SAAQ;AAClD,QAAM,EAAEC,aAAY,IAAKC,aAAaL,YAAAA;AAEtC,QAAMM,kBAAkBC,YACtB,MACET,cAAcU,cAAcC,iBAAiB;IAC3CC,WAAW,GAAGV,YAAAA,GAAeW,yBAAAA;EAC/B,CAAA,GACF;IAACb;IAAeE;GAAa;AAG/B,SACE,gBAAAY,OAAA,cAACC,kBAAkBC,MAAI;IAACC,MAAMC;IAAcC,aAAaX;KACvD,gBAAAM,OAAA,cAACM,MAAMJ,MAAI;IAACzB;IAAY8B,WAAU;KAChC,gBAAAP,OAAA,cAACM,MAAME,SAAO;IAACC,SAAAA;KACb,gBAAAT,OAAA,cAACC,kBAAkBO,SAAO;IAACE,UAAU,CAAClB;OAExC,gBAAAQ,OAAA,cAACM,MAAMK,SAAO;IAACF,SAAAA;KACb,gBAAAT,OAAA,cAACC,kBAAkBU,SAAO;IAAC3B;KACzB,gBAAAgB,OAAA,cAACC,kBAAkBW,SAAO;IAACjC;;AAMvC;AAEA,IAAMyB,eAAe,CAAC,EAAES,MAAMC,gBAAe,MAAa;AACxD,QAAMC,OAAOC,QAAQzC,aAAAA;AACrB,QAAM0C,QAAQC,mBAAmBL,IAAAA;AAEjCM,YAAU,MAAA;AACRJ,SAAKK,aAAa;MAChBC,IAAIC;MACJC,MAAM;MACNC,UAAUC;MACVR;IACF,CAAA;AAEA,WAAO,MAAMF,KAAKW,gBAAgBJ,8BAAAA;EACpC,GAAG;IAACP;IAAME;GAAM;AAEhB,SACE,gBAAAjB,OAAA,cAAC2B,QAAQA,SAAO;IACdlD,MAAK;IACLmD,MAAM;MACJlD,SAASmC;MACTgB,YAAYf;IACd;IACAgB,OAAO;;AAGb;;;AIhFA,IAAA,4BAAeC;",
6
+ "names": ["React", "useCallback", "useEffect", "Capabilities", "useCapability", "useOperationInvoker", "Surface", "OBJECT_ACTIONS_CONTRIBUTION_ID", "OBJECT_ACTIONS_CONTRIBUTION_PRIORITY", "useObjectMenuItems", "Obj", "ATTENDABLE_PATH_SEPARATOR", "DeckOperation", "Panel", "useAttention", "useMenu", "useComposedRefs", "React", "forwardRef", "useMemo", "useRef", "useState", "useObjectNavigate", "JsonSchema", "Obj", "Query", "Type", "resolveSchemaWithRegistry", "Filter", "getSpace", "useObject", "useAsyncEffect", "useTranslation", "Card", "Board", "Focus", "Mosaic", "ProjectionModel", "createEchoChangeCallback", "useAtomValue", "createContext", "React", "Obj", "Toolbar", "useTranslation", "Board", "useBoard", "useEventHandlerAdapter", "itemNoOp", "item", "span", "id", "PIPELINE_ROOT", "PipelineRootContext", "usePipeline", "createContext", "Item", "PipelineRoot", "children", "contextValue", "displayName", "PIPELINE_CONTENT_NAME", "PipelineContent", "model", "props", "Board", "Root", "PIPELINE_COLUMNS_NAME", "PipelineColumns", "pipeline", "useBoard", "columns", "useAtomValue", "eventHandler", "useEventHandlerAdapter", "items", "getId", "getColumnId", "get", "data", "make", "object", "canDrop", "source", "isColumn", "onChange", "mutate", "Obj", "change", "p", "Content", "Tile", "PipelineColumn", "PIPELINE_TOOLBAR_NAME", "PipelineToolbar", "t", "useTranslation", "meta", "onAddColumn", "Toolbar", "IconButton", "icon", "iconOnly", "label", "onClick", "PipelineComponent", "Columns", "PIPELINE_COLUMN_NAME", "PipelineColumn", "data", "column", "location", "classNames", "debug", "t", "useTranslation", "meta", "id", "dragHandleRef", "useRef", "viewSnapshot", "useObject", "view", "target", "space", "getSpace", "Item", "usePipeline", "schema", "setSchema", "useState", "query", "useMemo", "Query", "select", "Filter", "nothing", "fromAst", "JSON", "parse", "stringify", "ast", "useAsyncEffect", "db", "resolveSchemaWithRegistry", "schemaRegistry", "projectionModel", "undefined", "jsonSchema", "Type", "isMutable", "JsonSchema", "toJsonSchema", "change", "createEchoChangeCallback", "ProjectionModel", "baseSchema", "Tile", "forwardRef", "props", "ref", "React", "ItemTile", "itemProps", "item", "Board", "Column", "Root", "Header", "label", "name", "Body", "displayName", "ITEM_TILE_NAME", "forwardedRef", "rootRef", "composedRef", "useComposedRefs", "handleNavigate", "useObjectNavigate", "Mosaic", "asChild", "Focus", "Group", "Card", "Toolbar", "DragHandle", "Title", "onClick", "Obj", "getLabel", "Menu", "Content", "Atom", "Schema", "useMemo", "Obj", "Query", "AtomObj", "AtomQuery", "getQueryTarget", "getSpace", "isSpace", "Pipeline", "usePipelineBoardModel", "pipeline", "registry", "useMemo", "emptyPipelineModel", "space", "getSpace", "columnsAtom", "AtomObj", "makeProperty", "columnAtomFamily", "Atom", "family", "viewKey", "make", "get", "columns", "find", "c", "view", "dxn", "toString", "itemsAtomFamily", "column", "viewSnapshot", "query", "ast", "Query", "fromAst", "JSON", "parse", "stringify", "queryTarget", "getQueryTarget", "undefined", "raw", "AtomQuery", "isSpace", "reverse", "getColumnId", "data", "getItemId", "id", "isColumn", "obj", "is", "Pipeline", "Column", "isItem", "Obj", "isObject", "items", "getColumns", "getItems", "emptyColumnsAtom", "emptyItemsAtom", "PIPELINE_ITEM", "PipelineContainer", "role", "subject", "pipeline", "registry", "useCapability", "Capabilities", "AtomRegistry", "model", "usePipelineBoardModel", "invokePromise", "useOperationInvoker", "attendableId", "Obj", "getDXN", "toString", "hasAttention", "useAttention", "handleColumnAdd", "useCallback", "DeckOperation", "ChangeCompanion", "companion", "ATTENDABLE_PATH_SEPARATOR", "React", "PipelineComponent", "Root", "Item", "PipelineItem", "onAddColumn", "Panel", "className", "Toolbar", "asChild", "disabled", "Content", "Columns", "item", "projectionModel", "menu", "useMenu", "items", "useObjectMenuItems", "useEffect", "addMenuItems", "id", "OBJECT_ACTIONS_CONTRIBUTION_ID", "mode", "priority", "OBJECT_ACTIONS_CONTRIBUTION_PRIORITY", "removeMenuItems", "Surface", "data", "projection", "limit", "PipelineContainer"]
7
+ }
@@ -2,17 +2,17 @@ import {
2
2
  meta
3
3
  } from "./chunk-QWNKLHBY.mjs";
4
4
 
5
- // src/components/PipelineSettings.tsx
5
+ // src/containers/PipelineObjectSettings/PipelineObjectSettings.tsx
6
6
  import * as Schema from "effect/Schema";
7
7
  import React, { useCallback, useMemo, useRef, useState } from "react";
8
- import { DXN, Filter, Query, Ref, Tag, Type } from "@dxos/echo";
8
+ import { DXN, Filter, JsonSchema, Obj, Query, Ref, Tag } from "@dxos/echo";
9
9
  import { useTypeOptions } from "@dxos/plugin-space";
10
10
  import { resolveSchemaWithRegistry } from "@dxos/plugin-space";
11
11
  import { getSpace, useObject, useQuery } from "@dxos/react-client/echo";
12
12
  import { IconButton, useAsyncEffect, useTranslation } from "@dxos/react-ui";
13
13
  import { Form, ViewEditor } from "@dxos/react-ui-form";
14
14
  import { List } from "@dxos/react-ui-list";
15
- import { View } from "@dxos/schema";
15
+ import { ViewModel } from "@dxos/schema";
16
16
  import { Pipeline, Task } from "@dxos/types";
17
17
  import { mx, osTranslations, subtleHover } from "@dxos/ui-theme";
18
18
  import { arrayMove } from "@dxos/util";
@@ -71,7 +71,7 @@ var PipelineObjectSettings = ({ classNames, pipeline }) => {
71
71
  return;
72
72
  }
73
73
  const queue = target && DXN.tryParse(target) ? target : void 0;
74
- const query = queue ? Query.fromAst(newQuery).options({
74
+ const query = queue ? Query.fromAst(newQuery).from({
75
75
  queues: [
76
76
  queue
77
77
  ]
@@ -83,12 +83,12 @@ var PipelineObjectSettings = ({ classNames, pipeline }) => {
83
83
  if (!newSchema) {
84
84
  return;
85
85
  }
86
- const newView = View.make({
86
+ const newView = ViewModel.make({
87
87
  query,
88
- jsonSchema: Type.toJsonSchema(newSchema)
88
+ jsonSchema: JsonSchema.toJsonSchema(newSchema)
89
89
  });
90
90
  updateView((view2) => {
91
- view2.projection = newView.projection;
91
+ view2.projection = Obj.getSnapshot(newView).projection;
92
92
  });
93
93
  setSchema(() => newSchema);
94
94
  }, [
@@ -96,6 +96,20 @@ var PipelineObjectSettings = ({ classNames, pipeline }) => {
96
96
  updateView,
97
97
  schema
98
98
  ]);
99
+ const handleColumnValuesChanged = useCallback((column2) => (newValues, { changed }) => {
100
+ if (changed["name"]) {
101
+ const columnIndex = columns.findIndex((c) => c === column2);
102
+ if (columnIndex === -1) {
103
+ return;
104
+ }
105
+ updateColumns((cols) => {
106
+ cols[columnIndex].name = newValues.name ?? "";
107
+ });
108
+ }
109
+ }, [
110
+ columns,
111
+ updateColumns
112
+ ]);
99
113
  const handleToggleField = useCallback((column2) => {
100
114
  setExpandedId((prevExpandedId) => prevExpandedId === column2.view.dxn.toString() ? void 0 : column2.view.dxn.toString());
101
115
  }, []);
@@ -119,9 +133,9 @@ var PipelineObjectSettings = ({ classNames, pipeline }) => {
119
133
  if (!space) {
120
134
  return;
121
135
  }
122
- const newView = View.make({
136
+ const newView = ViewModel.make({
123
137
  query: Query.select(Filter.type(Task.Task)),
124
- jsonSchema: Type.toJsonSchema(Task.Task)
138
+ jsonSchema: JsonSchema.toJsonSchema(Task.Task)
125
139
  });
126
140
  space.db.add(newView);
127
141
  updateColumns((columns2) => {
@@ -137,23 +151,11 @@ var PipelineObjectSettings = ({ classNames, pipeline }) => {
137
151
  space,
138
152
  updateColumns
139
153
  ]);
140
- const handleColumnSave = useCallback((values) => {
141
- if (column) {
142
- const columnIndex = columns.findIndex((c) => c === column);
143
- updateColumns((columns2) => {
144
- columns2[columnIndex].name = values.name;
145
- });
146
- }
147
- }, [
148
- column,
149
- columns,
150
- updateColumns
151
- ]);
152
154
  return /* @__PURE__ */ React.createElement("div", {
153
155
  role: "none",
154
- className: mx("plb-cardSpacingBlock overflow-y-auto", classNames)
156
+ className: mx("py-form-padding overflow-y-auto", classNames)
155
157
  }, /* @__PURE__ */ React.createElement("h2", {
156
- className: "text-sm text-description plb-1"
158
+ className: "text-sm text-description py-1"
157
159
  }, t("views label")), /* @__PURE__ */ React.createElement(List.Root, {
158
160
  items: columns,
159
161
  isItem: Schema.is(Pipeline.Column),
@@ -169,7 +171,7 @@ var PipelineObjectSettings = ({ classNames, pipeline }) => {
169
171
  "aria-expanded": expandedId === column2.view.dxn.toString()
170
172
  }, /* @__PURE__ */ React.createElement("div", {
171
173
  role: "none",
172
- className: mx(subtleHover, listItemGrid, "rounded-sm cursor-pointer min-bs-10")
174
+ className: mx(subtleHover, listItemGrid, "rounded-xs cursor-pointer min-h-10")
173
175
  }, /* @__PURE__ */ React.createElement(List.ItemDragHandle, null), /* @__PURE__ */ React.createElement(List.ItemTitle, {
174
176
  onClick: () => handleToggleField(column2)
175
177
  }, column2.name), /* @__PURE__ */ React.createElement(List.ItemDeleteButton, {
@@ -187,12 +189,11 @@ var PipelineObjectSettings = ({ classNames, pipeline }) => {
187
189
  onClick: () => handleToggleField(column2)
188
190
  })), expandedId === column2.view.dxn.toString() && column2?.view.target && /* @__PURE__ */ React.createElement("div", {
189
191
  role: "none",
190
- className: "col-span-5 mlb-2 border border-separator rounded-md"
192
+ className: "col-span-5 my-2 border border-separator rounded-md"
191
193
  }, /* @__PURE__ */ React.createElement(Form.Root, {
192
194
  schema: ColumnFormSchema,
193
195
  values: column2,
194
- autoSave: true,
195
- onSave: handleColumnSave
196
+ onValuesChanged: handleColumnValuesChanged(column2)
196
197
  }, /* @__PURE__ */ React.createElement(Form.Content, null, /* @__PURE__ */ React.createElement(Form.FieldSet, null))), /* @__PURE__ */ React.createElement(ViewEditor, {
197
198
  ref: projectionRef,
198
199
  mode: "tag",
@@ -200,22 +201,24 @@ var PipelineObjectSettings = ({ classNames, pipeline }) => {
200
201
  schema,
201
202
  view: column2.view.target,
202
203
  registry: space?.db.schemaRegistry,
204
+ db: space?.db,
203
205
  tags,
204
206
  types,
205
207
  onQueryChanged: handleQueryChanged
206
208
  }))))))), /* @__PURE__ */ React.createElement("div", {
207
209
  role: "none",
208
- className: "mlb-cardSpacingBlock"
210
+ className: "my-form-padding"
209
211
  }, /* @__PURE__ */ React.createElement(IconButton, {
210
212
  icon: "ph--plus--regular",
211
213
  label: t("add view label"),
212
214
  onClick: handleAdd,
213
- classNames: "is-full"
215
+ classNames: "w-full"
214
216
  })));
215
217
  };
216
- var PipelineSettings_default = PipelineObjectSettings;
218
+
219
+ // src/containers/PipelineObjectSettings/index.ts
220
+ var PipelineObjectSettings_default = PipelineObjectSettings;
217
221
  export {
218
- PipelineObjectSettings,
219
- PipelineSettings_default as default
222
+ PipelineObjectSettings_default as default
220
223
  };
221
- //# sourceMappingURL=PipelineSettings-R54RTVWZ.mjs.map
224
+ //# sourceMappingURL=PipelineObjectSettings-D36OYVHW.mjs.map