@imfusion/web-ui 0.11.1-dev.48.g0fcb0d30 → 0.11.1-dev.49.gcda1589f
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/icon-button-roSB497o.js +171 -0
- package/dist/index.js +1730 -1889
- package/dist/integrations/image-display-options.js +58 -57
- package/dist/integrations/view-tools/index.d.ts +4 -0
- package/dist/integrations/view-tools/use-view-interaction.d.ts +21 -0
- package/dist/integrations/view-tools/view-tools-view.d.ts +23 -0
- package/dist/integrations/view-tools/view-tools.d.ts +14 -0
- package/dist/integrations/view-tools/view-tools.meta.d.ts +2 -0
- package/dist/integrations/view-tools.js +133 -0
- package/dist/row-CImu8yXV.js +136 -0
- package/dist/style.css +1 -1
- package/dist/tabs-BqgyMmo6.js +173 -0
- package/package.json +3 -3
- package/src/docgen/doc.gen.json +23 -0
- package/src/llms/llms.gen.txt +6 -0
- package/dist/tabs-EMQSqOk5.js +0 -305
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { t as e } from "../meta-V_KyLeGn.js";
|
|
2
2
|
import { n as t, t as n } from "../toggle-group-eGr6_hgQ.js";
|
|
3
|
-
import {
|
|
4
|
-
import { t as
|
|
5
|
-
import { a as
|
|
3
|
+
import { n as r, t as i } from "../row-CImu8yXV.js";
|
|
4
|
+
import { t as a } from "../scroll-area-CXQ_SxPX.js";
|
|
5
|
+
import { a as o, i as s, n as c, o as l, r as u, s as d, t as f } from "../slider-CpIZMAFl.js";
|
|
6
|
+
import { a as p, d as m, i as h, n as g, o as _, r as v, t as y, u as b } from "../tabs-BqgyMmo6.js";
|
|
6
7
|
import { cva as x } from "class-variance-authority";
|
|
7
8
|
import { Fragment as S, jsx as C, jsxs as w } from "react/jsx-runtime";
|
|
8
9
|
import { useId as T, useMemo as E, useState as D } from "react";
|
|
@@ -76,7 +77,7 @@ function I(e, t) {
|
|
|
76
77
|
//#region src/integrations/image-display-options/image-display-options-view.tsx
|
|
77
78
|
var L = x(A.root);
|
|
78
79
|
function R({ spec: e, value: t, row: n, onChange: r }) {
|
|
79
|
-
let
|
|
80
|
+
let a = /* @__PURE__ */ w(s, {
|
|
80
81
|
value: t,
|
|
81
82
|
min: e.min,
|
|
82
83
|
max: e.max,
|
|
@@ -85,19 +86,19 @@ function R({ spec: e, value: t, row: n, onChange: r }) {
|
|
|
85
86
|
onValueChange: (e) => {
|
|
86
87
|
r(typeof e == "number" ? e : e[0]);
|
|
87
88
|
},
|
|
88
|
-
children: [/* @__PURE__ */ w(
|
|
89
|
+
children: [/* @__PURE__ */ w(i, {
|
|
89
90
|
justify: "between",
|
|
90
|
-
children: [/* @__PURE__ */ C(
|
|
91
|
-
}), /* @__PURE__ */ C(
|
|
91
|
+
children: [/* @__PURE__ */ C(u, { children: e.label }), /* @__PURE__ */ C(d, {})]
|
|
92
|
+
}), /* @__PURE__ */ C(f, { children: /* @__PURE__ */ w(l, { children: [/* @__PURE__ */ C(c, {}), /* @__PURE__ */ C(o, { "aria-label": e.label })] }) })]
|
|
92
93
|
});
|
|
93
94
|
return n ? /* @__PURE__ */ C("div", {
|
|
94
95
|
className: A.rowField,
|
|
95
|
-
children:
|
|
96
|
-
}) :
|
|
96
|
+
children: a
|
|
97
|
+
}) : a;
|
|
97
98
|
}
|
|
98
99
|
function z({ checked: e, row: t, onChange: n }) {
|
|
99
100
|
let r = T();
|
|
100
|
-
return /* @__PURE__ */ w(
|
|
101
|
+
return /* @__PURE__ */ w(i, {
|
|
101
102
|
align: "center",
|
|
102
103
|
justify: t ? "start" : "between",
|
|
103
104
|
gap: "2",
|
|
@@ -106,13 +107,13 @@ function z({ checked: e, row: t, onChange: n }) {
|
|
|
106
107
|
id: r,
|
|
107
108
|
className: A.invertLabel,
|
|
108
109
|
children: "Invert"
|
|
109
|
-
}), /* @__PURE__ */ C(
|
|
110
|
+
}), /* @__PURE__ */ C(b, {
|
|
110
111
|
"aria-labelledby": r,
|
|
111
112
|
checked: e,
|
|
112
113
|
onCheckedChange: (e) => {
|
|
113
114
|
n(e);
|
|
114
115
|
},
|
|
115
|
-
children: /* @__PURE__ */ C(
|
|
116
|
+
children: /* @__PURE__ */ C(m, {})
|
|
116
117
|
})]
|
|
117
118
|
});
|
|
118
119
|
}
|
|
@@ -151,123 +152,123 @@ function V({ dimension: e, fields: t, options: n, row: r, onChange: i }) {
|
|
|
151
152
|
}
|
|
152
153
|
})] });
|
|
153
154
|
}
|
|
154
|
-
function H({ variant: e = "default", options: t, intensityRange: n, ranges:
|
|
155
|
-
let [
|
|
156
|
-
|
|
155
|
+
function H({ variant: e = "default", options: t, intensityRange: n, ranges: o, onOptionsChange: s, className: c, ...l }) {
|
|
156
|
+
let [u, d] = D("2d"), f = P(n, o), m = (e) => {
|
|
157
|
+
d(e === "3d" ? "3d" : "2d");
|
|
157
158
|
};
|
|
158
159
|
return /* @__PURE__ */ C("div", {
|
|
159
|
-
...
|
|
160
|
+
...l,
|
|
160
161
|
"data-imf-ui-component": "ImageDisplayOptions",
|
|
161
|
-
className: L({ className:
|
|
162
|
-
children: e === "default" ? /* @__PURE__ */ w(
|
|
163
|
-
value:
|
|
164
|
-
onValueChange:
|
|
165
|
-
children: [/* @__PURE__ */ w(
|
|
166
|
-
/* @__PURE__ */ C(
|
|
162
|
+
className: L({ className: c }),
|
|
163
|
+
children: e === "default" ? /* @__PURE__ */ w(p, {
|
|
164
|
+
value: u,
|
|
165
|
+
onValueChange: m,
|
|
166
|
+
children: [/* @__PURE__ */ w(g, { children: [
|
|
167
|
+
/* @__PURE__ */ C(_, {
|
|
167
168
|
value: "2d",
|
|
168
169
|
children: "2D Slices"
|
|
169
170
|
}),
|
|
170
|
-
/* @__PURE__ */ C(
|
|
171
|
+
/* @__PURE__ */ C(_, {
|
|
171
172
|
value: "3d",
|
|
172
173
|
children: "3D Volume"
|
|
173
174
|
}),
|
|
174
|
-
/* @__PURE__ */ C(
|
|
175
|
-
] }), /* @__PURE__ */ w(
|
|
175
|
+
/* @__PURE__ */ C(y, {})
|
|
176
|
+
] }), /* @__PURE__ */ w(h, { children: [/* @__PURE__ */ C(v, {
|
|
176
177
|
value: "2d",
|
|
177
|
-
children: /* @__PURE__ */ C(
|
|
178
|
+
children: /* @__PURE__ */ C(r, {
|
|
178
179
|
gap: "3",
|
|
179
180
|
children: /* @__PURE__ */ C(V, {
|
|
180
181
|
dimension: "2d",
|
|
181
|
-
fields:
|
|
182
|
+
fields: f["2d"],
|
|
182
183
|
options: t,
|
|
183
184
|
row: !1,
|
|
184
|
-
onChange:
|
|
185
|
+
onChange: s
|
|
185
186
|
})
|
|
186
187
|
})
|
|
187
|
-
}), /* @__PURE__ */ C(
|
|
188
|
+
}), /* @__PURE__ */ C(v, {
|
|
188
189
|
value: "3d",
|
|
189
|
-
children: /* @__PURE__ */ C(
|
|
190
|
+
children: /* @__PURE__ */ C(r, {
|
|
190
191
|
gap: "3",
|
|
191
192
|
children: /* @__PURE__ */ C(V, {
|
|
192
193
|
dimension: "3d",
|
|
193
|
-
fields:
|
|
194
|
+
fields: f["3d"],
|
|
194
195
|
options: t,
|
|
195
196
|
row: !1,
|
|
196
|
-
onChange:
|
|
197
|
+
onChange: s
|
|
197
198
|
})
|
|
198
199
|
})
|
|
199
200
|
})] })]
|
|
200
|
-
}) : e === "horizontal" ? /* @__PURE__ */ w(
|
|
201
|
+
}) : e === "horizontal" ? /* @__PURE__ */ w(p, {
|
|
201
202
|
className: A.horizontalTabs,
|
|
202
203
|
orientation: "vertical",
|
|
203
|
-
value:
|
|
204
|
-
onValueChange:
|
|
205
|
-
children: [/* @__PURE__ */ w(
|
|
204
|
+
value: u,
|
|
205
|
+
onValueChange: m,
|
|
206
|
+
children: [/* @__PURE__ */ w(g, {
|
|
206
207
|
fill: !0,
|
|
207
208
|
children: [
|
|
208
|
-
/* @__PURE__ */ C(
|
|
209
|
+
/* @__PURE__ */ C(_, {
|
|
209
210
|
value: "2d",
|
|
210
211
|
children: "2D"
|
|
211
212
|
}),
|
|
212
|
-
/* @__PURE__ */ C(
|
|
213
|
+
/* @__PURE__ */ C(_, {
|
|
213
214
|
value: "3d",
|
|
214
215
|
children: "3D"
|
|
215
216
|
}),
|
|
216
|
-
/* @__PURE__ */ C(
|
|
217
|
+
/* @__PURE__ */ C(y, {})
|
|
217
218
|
]
|
|
218
|
-
}), /* @__PURE__ */ w(
|
|
219
|
+
}), /* @__PURE__ */ w(h, {
|
|
219
220
|
className: A.horizontalPanel,
|
|
220
|
-
children: [/* @__PURE__ */ C(
|
|
221
|
+
children: [/* @__PURE__ */ C(v, {
|
|
221
222
|
value: "2d",
|
|
222
|
-
children: /* @__PURE__ */ C(
|
|
223
|
+
children: /* @__PURE__ */ C(a, {
|
|
223
224
|
orientation: "horizontal",
|
|
224
225
|
className: A.strip,
|
|
225
|
-
children: /* @__PURE__ */ C(
|
|
226
|
+
children: /* @__PURE__ */ C(i, {
|
|
226
227
|
align: "center",
|
|
227
228
|
gap: "3",
|
|
228
229
|
children: /* @__PURE__ */ C(V, {
|
|
229
230
|
dimension: "2d",
|
|
230
|
-
fields:
|
|
231
|
+
fields: f["2d"],
|
|
231
232
|
options: t,
|
|
232
233
|
row: !0,
|
|
233
|
-
onChange:
|
|
234
|
+
onChange: s
|
|
234
235
|
})
|
|
235
236
|
})
|
|
236
237
|
})
|
|
237
|
-
}), /* @__PURE__ */ C(
|
|
238
|
+
}), /* @__PURE__ */ C(v, {
|
|
238
239
|
value: "3d",
|
|
239
|
-
children: /* @__PURE__ */ C(
|
|
240
|
+
children: /* @__PURE__ */ C(a, {
|
|
240
241
|
orientation: "horizontal",
|
|
241
242
|
className: A.strip,
|
|
242
|
-
children: /* @__PURE__ */ C(
|
|
243
|
+
children: /* @__PURE__ */ C(i, {
|
|
243
244
|
align: "center",
|
|
244
245
|
gap: "3",
|
|
245
246
|
children: /* @__PURE__ */ C(V, {
|
|
246
247
|
dimension: "3d",
|
|
247
|
-
fields:
|
|
248
|
+
fields: f["3d"],
|
|
248
249
|
options: t,
|
|
249
250
|
row: !0,
|
|
250
|
-
onChange:
|
|
251
|
+
onChange: s
|
|
251
252
|
})
|
|
252
253
|
})
|
|
253
254
|
})
|
|
254
255
|
})]
|
|
255
256
|
})]
|
|
256
|
-
}) : /* @__PURE__ */ C(
|
|
257
|
+
}) : /* @__PURE__ */ C(a, {
|
|
257
258
|
orientation: "horizontal",
|
|
258
259
|
className: A.strip,
|
|
259
|
-
children: /* @__PURE__ */ w(
|
|
260
|
+
children: /* @__PURE__ */ w(i, {
|
|
260
261
|
align: "center",
|
|
261
262
|
gap: "3",
|
|
262
263
|
children: [/* @__PURE__ */ C(B, {
|
|
263
|
-
active:
|
|
264
|
-
onChange:
|
|
264
|
+
active: u,
|
|
265
|
+
onChange: d
|
|
265
266
|
}), /* @__PURE__ */ C(V, {
|
|
266
|
-
dimension:
|
|
267
|
-
fields:
|
|
267
|
+
dimension: u,
|
|
268
|
+
fields: f[u],
|
|
268
269
|
options: t,
|
|
269
270
|
row: !0,
|
|
270
|
-
onChange:
|
|
271
|
+
onChange: s
|
|
271
272
|
})]
|
|
272
273
|
})
|
|
273
274
|
})
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SliceViewDefaultEventHandler } from '@imfusion/sdk';
|
|
2
|
+
import { ViewToolAction } from './view-tools-view';
|
|
3
|
+
type InteractiveView = {
|
|
4
|
+
defaultEventHandler(): Pick<SliceViewDefaultEventHandler, "limitViewInteractionTo" | "restoreDefaultInputMapping"> | null;
|
|
5
|
+
};
|
|
6
|
+
export declare function createViewInteractionStore(views: () => InteractiveView[]): {
|
|
7
|
+
getViewInteraction: () => ViewToolAction;
|
|
8
|
+
subscribe: (listener: () => void) => () => boolean;
|
|
9
|
+
setViewInteraction: (next: ViewToolAction) => void;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* useViewInteraction - the tool that limits the left mouse button in the main 2D and MPR views, shared by every caller
|
|
13
|
+
* and by `ViewTools`. `setViewInteraction("Default")` restores the default input mapping.
|
|
14
|
+
*
|
|
15
|
+
* Must run inside `ImFusionReady`, within an `ImFusionProvider`. Needs `@imfusion/sdk` 1.3.0 or later.
|
|
16
|
+
*/
|
|
17
|
+
export declare function useViewInteraction(): {
|
|
18
|
+
viewInteraction: ViewToolAction;
|
|
19
|
+
setViewInteraction: (next: ViewToolAction) => void;
|
|
20
|
+
};
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { SliceViewAction } from '@imfusion/sdk';
|
|
2
|
+
type ViewTool = Extract<SliceViewAction, "Pan" | "Zoom" | "Windowing">;
|
|
3
|
+
/** `Default` restores the SDK's full input mapping; every other value limits the left mouse button to that action. */
|
|
4
|
+
export type ViewToolAction = "Default" | ViewTool;
|
|
5
|
+
type ViewToolsViewProps = React.ComponentProps<"div"> & {
|
|
6
|
+
/** The active tool, or `"Default"` when none is pressed. */
|
|
7
|
+
viewInteraction: ViewToolAction;
|
|
8
|
+
/** Called with the pressed tool, or `"Default"` when the active tool is pressed again. */
|
|
9
|
+
onViewInteractionChange: (viewInteraction: ViewToolAction) => void;
|
|
10
|
+
/** Called when the reset button is pressed. */
|
|
11
|
+
onReset: () => void;
|
|
12
|
+
/** Lays the tools out in a row or a column. */
|
|
13
|
+
orientation?: "horizontal" | "vertical";
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* ViewToolsView - the SDK-free presentational surface behind `ViewTools`:
|
|
17
|
+
* the same toggles and reset button, driven by plain props instead of the SDK views.
|
|
18
|
+
*/
|
|
19
|
+
export declare function ViewToolsView({ viewInteraction, onViewInteractionChange, onReset, orientation, "aria-label": ariaLabel, className, ...props }: ViewToolsViewProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare namespace ViewToolsView {
|
|
21
|
+
var displayName: string;
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ViewToolsView } from './view-tools-view';
|
|
2
|
+
type Props = Omit<React.ComponentProps<typeof ViewToolsView>, "viewInteraction" | "onViewInteractionChange" | "onReset">;
|
|
3
|
+
/**
|
|
4
|
+
* ViewTools - Pan, Zoom, and Windowing toggles that limit the left mouse button in the main 2D and MPR views to one
|
|
5
|
+
* action, and a button that resets the view group. Releasing the active toggle restores the default input mapping.
|
|
6
|
+
* The active tool is the one `useViewInteraction` reads and sets.
|
|
7
|
+
*
|
|
8
|
+
* Must render inside `ImFusionReady`, within an `ImFusionProvider`. Needs `@imfusion/sdk` 1.3.0 or later.
|
|
9
|
+
*/
|
|
10
|
+
export declare function ViewTools(props: Props): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export declare namespace ViewTools {
|
|
12
|
+
var displayName: string;
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { _M as e, ek as t, fM as n, hl as r, vC as i } from "../icons-vc1WZCxX.js";
|
|
2
|
+
import { t as a } from "../meta-V_KyLeGn.js";
|
|
3
|
+
import { n as o, t as s } from "../toggle-group-eGr6_hgQ.js";
|
|
4
|
+
import { n as c } from "../icon-button-roSB497o.js";
|
|
5
|
+
import { n as l, t as u } from "../row-CImu8yXV.js";
|
|
6
|
+
import { cva as d } from "class-variance-authority";
|
|
7
|
+
import { jsx as f, jsxs as p } from "react/jsx-runtime";
|
|
8
|
+
import { useSyncExternalStore as m } from "react";
|
|
9
|
+
import { useImFusion as h } from "@imfusion/sdk-react";
|
|
10
|
+
//#region src/integrations/view-tools/use-view-interaction.ts
|
|
11
|
+
function g(e) {
|
|
12
|
+
return [
|
|
13
|
+
e.display.main2dView(),
|
|
14
|
+
e.display.mainAxialView(),
|
|
15
|
+
e.display.mainCoronalView(),
|
|
16
|
+
e.display.mainSagittalView()
|
|
17
|
+
];
|
|
18
|
+
}
|
|
19
|
+
function _(e) {
|
|
20
|
+
let t = "Default", n = /* @__PURE__ */ new Set();
|
|
21
|
+
return {
|
|
22
|
+
getViewInteraction: () => t,
|
|
23
|
+
subscribe: (e) => (n.add(e), () => n.delete(e)),
|
|
24
|
+
setViewInteraction: (r) => {
|
|
25
|
+
if (r !== t) {
|
|
26
|
+
t = r;
|
|
27
|
+
for (let t of e()) {
|
|
28
|
+
let e = t.defaultEventHandler();
|
|
29
|
+
r === "Default" ? e?.restoreDefaultInputMapping() : e?.limitViewInteractionTo(r);
|
|
30
|
+
}
|
|
31
|
+
for (let e of n) e();
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
var v = /* @__PURE__ */ new WeakMap();
|
|
37
|
+
function y(e) {
|
|
38
|
+
let t = v.get(e);
|
|
39
|
+
return t || (t = _(() => g(e)), v.set(e, t)), t;
|
|
40
|
+
}
|
|
41
|
+
function b() {
|
|
42
|
+
let { getViewInteraction: e, subscribe: t, setViewInteraction: n } = y(h());
|
|
43
|
+
return {
|
|
44
|
+
viewInteraction: m(t, e),
|
|
45
|
+
setViewInteraction: n
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
//#endregion
|
|
49
|
+
//#region src/integrations/view-tools/view-tools-view.tsx
|
|
50
|
+
var x = d({ root: "imf-ui-view-tools-module-root" }.root), S = {
|
|
51
|
+
Pan: r,
|
|
52
|
+
Zoom: n,
|
|
53
|
+
Windowing: t
|
|
54
|
+
};
|
|
55
|
+
function C(e) {
|
|
56
|
+
return typeof e == "string" && Object.hasOwn(S, e);
|
|
57
|
+
}
|
|
58
|
+
function w({ viewInteraction: t, onViewInteractionChange: n, onReset: r, orientation: a = "horizontal", "aria-label": d = "View tools", className: m, ...h }) {
|
|
59
|
+
let g = a === "vertical" ? l : u;
|
|
60
|
+
return /* @__PURE__ */ f("div", {
|
|
61
|
+
role: "group",
|
|
62
|
+
"aria-label": d,
|
|
63
|
+
...h,
|
|
64
|
+
"data-imf-ui-component": "ViewTools",
|
|
65
|
+
"data-orientation": a,
|
|
66
|
+
className: x({ className: m }),
|
|
67
|
+
children: /* @__PURE__ */ p(g, {
|
|
68
|
+
gap: "2",
|
|
69
|
+
align: "center",
|
|
70
|
+
children: [/* @__PURE__ */ f(s, {
|
|
71
|
+
orientation: a,
|
|
72
|
+
value: t === "Default" ? [] : [t],
|
|
73
|
+
onValueChange: (e) => {
|
|
74
|
+
n(C(e[0]) ? e[0] : "Default");
|
|
75
|
+
},
|
|
76
|
+
children: Object.entries(S).map(([t, n]) => /* @__PURE__ */ f(o, {
|
|
77
|
+
value: t,
|
|
78
|
+
"aria-label": t,
|
|
79
|
+
children: /* @__PURE__ */ f(e, {
|
|
80
|
+
glyph: n,
|
|
81
|
+
"aria-hidden": !0
|
|
82
|
+
})
|
|
83
|
+
}, t))
|
|
84
|
+
}), /* @__PURE__ */ f(c, {
|
|
85
|
+
glyph: i,
|
|
86
|
+
label: "Reset view",
|
|
87
|
+
variant: "ghost",
|
|
88
|
+
onClick: r
|
|
89
|
+
})]
|
|
90
|
+
})
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
w.displayName = "ViewToolsView";
|
|
94
|
+
//#endregion
|
|
95
|
+
//#region src/integrations/view-tools/view-tools.tsx
|
|
96
|
+
function T(e) {
|
|
97
|
+
let t = h(), { viewInteraction: n, setViewInteraction: r } = b();
|
|
98
|
+
return /* @__PURE__ */ f(w, {
|
|
99
|
+
...e,
|
|
100
|
+
viewInteraction: n,
|
|
101
|
+
onViewInteractionChange: r,
|
|
102
|
+
onReset: () => {
|
|
103
|
+
t.display.viewGroup().reset();
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
T.displayName = "ViewTools";
|
|
108
|
+
//#endregion
|
|
109
|
+
//#region src/integrations/view-tools/view-tools.meta.ts
|
|
110
|
+
var E = {
|
|
111
|
+
name: "ViewTools",
|
|
112
|
+
category: a.inputs,
|
|
113
|
+
status: "experimental",
|
|
114
|
+
description: "Toolbar that limits mouse interaction in the ImFusion main 2D and MPR views to pan, zoom, or windowing, with a reset button for the view group. For a segmented control not tied to the SDK, use ToggleGroup.",
|
|
115
|
+
origin: "adapted",
|
|
116
|
+
internalDependencies: [
|
|
117
|
+
"ToggleGroup",
|
|
118
|
+
"Toggle",
|
|
119
|
+
"Icon",
|
|
120
|
+
"IconButton",
|
|
121
|
+
"Row",
|
|
122
|
+
"Stack"
|
|
123
|
+
],
|
|
124
|
+
upstream: {
|
|
125
|
+
name: "ImFusion Web SDK",
|
|
126
|
+
websiteLink: "https://www.imfusion.com/",
|
|
127
|
+
docLink: "https://docs.imfusion.com/",
|
|
128
|
+
llmDocLink: "https://docs.imfusion.com/",
|
|
129
|
+
runtimeDependencies: ["@imfusion/sdk", "@imfusion/sdk-react"]
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
//#endregion
|
|
133
|
+
export { T as ViewTools, b as useViewInteraction, E as viewToolsMeta };
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { cva as e } from "class-variance-authority";
|
|
2
|
+
import { jsx as t } from "react/jsx-runtime";
|
|
3
|
+
var n = {
|
|
4
|
+
alignCenter: "imf-ui-stack-module-alignCenter",
|
|
5
|
+
alignEnd: "imf-ui-stack-module-alignEnd",
|
|
6
|
+
alignStart: "imf-ui-stack-module-alignStart",
|
|
7
|
+
alignStretch: "imf-ui-stack-module-alignStretch",
|
|
8
|
+
gap0: "imf-ui-stack-module-gap0",
|
|
9
|
+
gap1: "imf-ui-stack-module-gap1",
|
|
10
|
+
gap10: "imf-ui-stack-module-gap10",
|
|
11
|
+
gap2: "imf-ui-stack-module-gap2",
|
|
12
|
+
gap3: "imf-ui-stack-module-gap3",
|
|
13
|
+
gap4: "imf-ui-stack-module-gap4",
|
|
14
|
+
gap5: "imf-ui-stack-module-gap5",
|
|
15
|
+
gap6: "imf-ui-stack-module-gap6",
|
|
16
|
+
gap7: "imf-ui-stack-module-gap7",
|
|
17
|
+
gap8: "imf-ui-stack-module-gap8",
|
|
18
|
+
gap9: "imf-ui-stack-module-gap9",
|
|
19
|
+
justifyAround: "imf-ui-stack-module-justifyAround",
|
|
20
|
+
justifyBetween: "imf-ui-stack-module-justifyBetween",
|
|
21
|
+
justifyCenter: "imf-ui-stack-module-justifyCenter",
|
|
22
|
+
justifyEnd: "imf-ui-stack-module-justifyEnd",
|
|
23
|
+
justifyEvenly: "imf-ui-stack-module-justifyEvenly",
|
|
24
|
+
justifyStart: "imf-ui-stack-module-justifyStart",
|
|
25
|
+
root: "imf-ui-stack-module-root"
|
|
26
|
+
}, r = e(n.root, { variants: {
|
|
27
|
+
gap: {
|
|
28
|
+
0: n.gap0,
|
|
29
|
+
1: n.gap1,
|
|
30
|
+
2: n.gap2,
|
|
31
|
+
3: n.gap3,
|
|
32
|
+
4: n.gap4,
|
|
33
|
+
5: n.gap5,
|
|
34
|
+
6: n.gap6,
|
|
35
|
+
7: n.gap7,
|
|
36
|
+
8: n.gap8,
|
|
37
|
+
9: n.gap9,
|
|
38
|
+
10: n.gap10
|
|
39
|
+
},
|
|
40
|
+
align: {
|
|
41
|
+
start: n.alignStart,
|
|
42
|
+
center: n.alignCenter,
|
|
43
|
+
end: n.alignEnd,
|
|
44
|
+
stretch: n.alignStretch
|
|
45
|
+
},
|
|
46
|
+
justify: {
|
|
47
|
+
start: n.justifyStart,
|
|
48
|
+
center: n.justifyCenter,
|
|
49
|
+
end: n.justifyEnd,
|
|
50
|
+
between: n.justifyBetween,
|
|
51
|
+
around: n.justifyAround,
|
|
52
|
+
evenly: n.justifyEvenly
|
|
53
|
+
}
|
|
54
|
+
} });
|
|
55
|
+
function i({ gap: e = "4", align: n = "stretch", justify: i = "start", ...a }) {
|
|
56
|
+
return /* @__PURE__ */ t("div", {
|
|
57
|
+
...a,
|
|
58
|
+
"data-imf-ui-component": "Stack",
|
|
59
|
+
className: r({
|
|
60
|
+
gap: e,
|
|
61
|
+
align: n,
|
|
62
|
+
justify: i,
|
|
63
|
+
className: a.className
|
|
64
|
+
})
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
var a = {
|
|
68
|
+
alignCenter: "imf-ui-row-module-alignCenter",
|
|
69
|
+
alignEnd: "imf-ui-row-module-alignEnd",
|
|
70
|
+
alignStart: "imf-ui-row-module-alignStart",
|
|
71
|
+
alignStretch: "imf-ui-row-module-alignStretch",
|
|
72
|
+
gap1: "imf-ui-row-module-gap1",
|
|
73
|
+
gap10: "imf-ui-row-module-gap10",
|
|
74
|
+
gap2: "imf-ui-row-module-gap2",
|
|
75
|
+
gap3: "imf-ui-row-module-gap3",
|
|
76
|
+
gap4: "imf-ui-row-module-gap4",
|
|
77
|
+
gap5: "imf-ui-row-module-gap5",
|
|
78
|
+
gap6: "imf-ui-row-module-gap6",
|
|
79
|
+
gap7: "imf-ui-row-module-gap7",
|
|
80
|
+
gap8: "imf-ui-row-module-gap8",
|
|
81
|
+
gap9: "imf-ui-row-module-gap9",
|
|
82
|
+
justifyAround: "imf-ui-row-module-justifyAround",
|
|
83
|
+
justifyBetween: "imf-ui-row-module-justifyBetween",
|
|
84
|
+
justifyCenter: "imf-ui-row-module-justifyCenter",
|
|
85
|
+
justifyEnd: "imf-ui-row-module-justifyEnd",
|
|
86
|
+
justifyEvenly: "imf-ui-row-module-justifyEvenly",
|
|
87
|
+
justifyStart: "imf-ui-row-module-justifyStart",
|
|
88
|
+
root: "imf-ui-row-module-root",
|
|
89
|
+
wrap: "imf-ui-row-module-wrap"
|
|
90
|
+
}, o = e(a.root, { variants: {
|
|
91
|
+
gap: {
|
|
92
|
+
1: a.gap1,
|
|
93
|
+
2: a.gap2,
|
|
94
|
+
3: a.gap3,
|
|
95
|
+
4: a.gap4,
|
|
96
|
+
5: a.gap5,
|
|
97
|
+
6: a.gap6,
|
|
98
|
+
7: a.gap7,
|
|
99
|
+
8: a.gap8,
|
|
100
|
+
9: a.gap9,
|
|
101
|
+
10: a.gap10
|
|
102
|
+
},
|
|
103
|
+
align: {
|
|
104
|
+
start: a.alignStart,
|
|
105
|
+
center: a.alignCenter,
|
|
106
|
+
end: a.alignEnd,
|
|
107
|
+
stretch: a.alignStretch
|
|
108
|
+
},
|
|
109
|
+
justify: {
|
|
110
|
+
start: a.justifyStart,
|
|
111
|
+
center: a.justifyCenter,
|
|
112
|
+
end: a.justifyEnd,
|
|
113
|
+
between: a.justifyBetween,
|
|
114
|
+
around: a.justifyAround,
|
|
115
|
+
evenly: a.justifyEvenly
|
|
116
|
+
},
|
|
117
|
+
wrap: {
|
|
118
|
+
true: a.wrap,
|
|
119
|
+
false: null
|
|
120
|
+
}
|
|
121
|
+
} });
|
|
122
|
+
function s({ gap: e = "2", align: n = "stretch", justify: r = "start", wrap: i = !1, ...a }) {
|
|
123
|
+
return /* @__PURE__ */ t("div", {
|
|
124
|
+
...a,
|
|
125
|
+
"data-imf-ui-component": "Row",
|
|
126
|
+
className: o({
|
|
127
|
+
gap: e,
|
|
128
|
+
align: n,
|
|
129
|
+
justify: r,
|
|
130
|
+
wrap: i,
|
|
131
|
+
className: a.className
|
|
132
|
+
})
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
//#endregion
|
|
136
|
+
export { i as n, s as t };
|