@bitbitpress/client 1.0.4 → 1.1.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/react/index.d.ts +41 -0
- package/dist/react/index.d.ts.map +1 -0
- package/dist/react/index.js +68 -0
- package/dist/react/index.js.map +1 -0
- package/dist/react/primitives.d.ts +54 -0
- package/dist/react/primitives.d.ts.map +1 -0
- package/dist/react/primitives.js +223 -0
- package/dist/react/primitives.js.map +1 -0
- package/dist/react-native-expo/index.d.ts +42 -0
- package/dist/react-native-expo/index.d.ts.map +1 -0
- package/dist/react-native-expo/index.js +78 -0
- package/dist/react-native-expo/index.js.map +1 -0
- package/dist/react-native-expo/primitives.d.ts +58 -0
- package/dist/react-native-expo/primitives.d.ts.map +1 -0
- package/dist/react-native-expo/primitives.js +218 -0
- package/dist/react-native-expo/primitives.js.map +1 -0
- package/dist/synthesisView/context.d.ts +18 -0
- package/dist/synthesisView/context.d.ts.map +1 -0
- package/dist/synthesisView/context.js +15 -0
- package/dist/synthesisView/context.js.map +1 -0
- package/dist/synthesisView/createComponentMap.d.ts +18 -0
- package/dist/synthesisView/createComponentMap.d.ts.map +1 -0
- package/dist/synthesisView/createComponentMap.js +40 -0
- package/dist/synthesisView/createComponentMap.js.map +1 -0
- package/dist/synthesisView/engine.d.ts +35 -0
- package/dist/synthesisView/engine.d.ts.map +1 -0
- package/dist/synthesisView/engine.js +113 -0
- package/dist/synthesisView/engine.js.map +1 -0
- package/dist/synthesisView/primitives.d.ts +180 -0
- package/dist/synthesisView/primitives.d.ts.map +1 -0
- package/dist/synthesisView/primitives.js +29 -0
- package/dist/synthesisView/primitives.js.map +1 -0
- package/dist/synthesisView/resolve.d.ts +17 -0
- package/dist/synthesisView/resolve.d.ts.map +1 -0
- package/dist/synthesisView/resolve.js +42 -0
- package/dist/synthesisView/resolve.js.map +1 -0
- package/dist/synthesisView/types.d.ts +72 -0
- package/dist/synthesisView/types.d.ts.map +1 -0
- package/dist/synthesisView/types.js +2 -0
- package/dist/synthesisView/types.js.map +1 -0
- package/dist/synthesisView/useSynthesisView.d.ts +13 -0
- package/dist/synthesisView/useSynthesisView.d.ts.map +1 -0
- package/dist/synthesisView/useSynthesisView.js +49 -0
- package/dist/synthesisView/useSynthesisView.js.map +1 -0
- package/dist/user/index.d.ts +14 -1
- package/dist/user/index.d.ts.map +1 -1
- package/dist/user/index.js +6 -1
- package/dist/user/index.js.map +1 -1
- package/dist/user/synthesize-view-batch-manager.d.ts +17 -0
- package/dist/user/synthesize-view-batch-manager.d.ts.map +1 -0
- package/dist/user/synthesize-view-batch-manager.js +52 -0
- package/dist/user/synthesize-view-batch-manager.js.map +1 -0
- package/dist/user/synthesizeView.d.ts +41 -0
- package/dist/user/synthesizeView.d.ts.map +1 -0
- package/dist/user/synthesizeView.js +26 -0
- package/dist/user/synthesizeView.js.map +1 -0
- package/package.json +29 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../src/react-native-expo/primitives.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,SAAS,EACT,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,qBAAqB,EACrB,SAAS,EACT,UAAU,EACV,SAAS,EACT,UAAU,EACV,cAAc,EACd,QAAQ,EACR,WAAW,EACX,aAAa,EACb,SAAS,EACT,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,UAAU,EACX,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAqB9D,wBAAgB,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,2CAE1D;AAID,wBAAgB,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,UAAU,2CAEtD;AAID,wBAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,WAAW,2CAMlF;AAID,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,2CAMjF;AAID,wBAAgB,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,2CAEhD;AAuBD,wBAAgB,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,UAAU,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAE9E;AAED,wBAAgB,KAAK,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,UAAU,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAE9E;AAID,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,WAAW,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAMrF;AAED,wBAAgB,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,QAAQ,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAM/E;AAED,wBAAgB,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAMjF;AAED,wBAAgB,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAkBjF;AAED,wBAAgB,OAAO,CAAC,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,YAAY,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAO7E;AAID,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,KAAK,EACL,GAAG,IAAI,EACR,EAAE,mBAAmB,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAM3C;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,GAAG,IAAI,EACR,EAAE,qBAAqB,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAM7C;AAID;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,2CAM3F;AAUD,wBAAgB,IAAI,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,2CA6BlE;AAED,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,aAAa,2CAEnD;AAID,wBAAgB,KAAK,CAAC,EACpB,IAAW,EACX,QAAQ,EACR,OAAO,EACP,KAAK,EACL,GAAG,IAAI,EACR,EAAE,UAAU,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,2CAoClC;AAID,wBAAgB,SAAS,CAAC,EACxB,YAAY,EACZ,WAAW,EACX,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,cAAc,2CAgBhB;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,2CAY7F;AAED,wBAAgB,YAAY,CAAC,EAC3B,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,iBAAiB,2CAwCnB;AAED,wBAAgB,MAAM,CAAC,EACrB,YAAY,EACZ,GAAO,EACP,GAAS,EACT,IAAQ,EACR,QAAQ,EACR,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,WAAW,2CAqBb;AAED,wBAAgB,aAAa,CAAC,EAC5B,YAAY,EACZ,IAAa,EACb,QAAQ,EACR,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,kBAAkB,2CAoBpB;AAID;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,YAwB5B,CAAC"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { LinearGradient } from 'expo-linear-gradient';
|
|
3
|
+
import { Children, isValidElement, useState } from 'react';
|
|
4
|
+
import { Image as RNImage, Modal as RNModal, Pressable as RNPressable, Text as RNText, ScrollView, Switch, TextInput, View, } from 'react-native';
|
|
5
|
+
function mergeStyle(base, extra) {
|
|
6
|
+
if (!extra)
|
|
7
|
+
return base;
|
|
8
|
+
return [base, extra];
|
|
9
|
+
}
|
|
10
|
+
// --- Text -------------------------------------------------------------------
|
|
11
|
+
export function Text({ text, children, ...rest }) {
|
|
12
|
+
return _jsx(RNText, { ...rest, children: text ?? children });
|
|
13
|
+
}
|
|
14
|
+
// --- Image ------------------------------------------------------------------
|
|
15
|
+
export function Image({ src, alt, ...rest }) {
|
|
16
|
+
return _jsx(RNImage, { source: { uri: src }, accessibilityLabel: alt, ...rest });
|
|
17
|
+
}
|
|
18
|
+
// --- Button -----------------------------------------------------------------
|
|
19
|
+
export function Button({ title, children, disabled, onPress, ...rest }) {
|
|
20
|
+
return (_jsx(RNPressable, { disabled: disabled, onPress: () => onPress?.(), ...rest, children: title !== undefined ? _jsx(RNText, { children: title }) : children }));
|
|
21
|
+
}
|
|
22
|
+
// --- Pressable --------------------------------------------------------------
|
|
23
|
+
export function Pressable({ children, disabled, onPress, ...rest }) {
|
|
24
|
+
return (_jsx(RNPressable, { disabled: disabled, onPress: () => onPress?.(), ...rest, children: children }));
|
|
25
|
+
}
|
|
26
|
+
// --- Icon -------------------------------------------------------------------
|
|
27
|
+
export function Icon({ name, ...rest }) {
|
|
28
|
+
return _jsx(RNText, { ...rest, children: name });
|
|
29
|
+
}
|
|
30
|
+
// --- Video / Audio (placeholders) -------------------------------------------
|
|
31
|
+
function MediaPlaceholder({ label, src, style }) {
|
|
32
|
+
return (_jsxs(View, { style: mergeStyle({
|
|
33
|
+
backgroundColor: '#f3f4f6',
|
|
34
|
+
borderRadius: 8,
|
|
35
|
+
padding: 16,
|
|
36
|
+
alignItems: 'center',
|
|
37
|
+
}, style), children: [_jsx(RNText, { children: label }), _jsx(RNText, { numberOfLines: 1, children: src })] }));
|
|
38
|
+
}
|
|
39
|
+
export function Video({ src, style, ...rest }) {
|
|
40
|
+
return _jsx(MediaPlaceholder, { label: "Video", src: src, style: style, ...rest });
|
|
41
|
+
}
|
|
42
|
+
export function Audio({ src, style, ...rest }) {
|
|
43
|
+
return _jsx(MediaPlaceholder, { label: "Audio", src: src, style: style, ...rest });
|
|
44
|
+
}
|
|
45
|
+
// --- Row / Column / List / Card / Divider -----------------------------------
|
|
46
|
+
export function Column({ children, style, ...rest }) {
|
|
47
|
+
return (_jsx(View, { style: mergeStyle({ flexDirection: 'column' }, style), ...rest, children: children }));
|
|
48
|
+
}
|
|
49
|
+
export function Row({ children, style, ...rest }) {
|
|
50
|
+
return (_jsx(View, { style: mergeStyle({ flexDirection: 'row' }, style), ...rest, children: children }));
|
|
51
|
+
}
|
|
52
|
+
export function List({ children, style, ...rest }) {
|
|
53
|
+
return (_jsx(View, { style: mergeStyle({ flexDirection: 'column' }, style), ...rest, children: Children.toArray(children) }));
|
|
54
|
+
}
|
|
55
|
+
export function Card({ children, style, ...rest }) {
|
|
56
|
+
return (_jsx(View, { style: mergeStyle({
|
|
57
|
+
borderWidth: 1,
|
|
58
|
+
borderColor: '#e5e7eb',
|
|
59
|
+
borderRadius: 8,
|
|
60
|
+
padding: 12,
|
|
61
|
+
backgroundColor: '#ffffff',
|
|
62
|
+
}, style), ...rest, children: children }));
|
|
63
|
+
}
|
|
64
|
+
export function Divider({ style, ...rest }) {
|
|
65
|
+
return (_jsx(View, { style: mergeStyle({ height: 1, alignSelf: 'stretch', backgroundColor: '#e5e7eb' }, style), ...rest }));
|
|
66
|
+
}
|
|
67
|
+
// --- Scroll: VerticalScroll / HorizontalScroll -----------------------------
|
|
68
|
+
export function VerticalScroll({ children, style, ...rest }) {
|
|
69
|
+
return (_jsx(ScrollView, { style: style, ...rest, children: children }));
|
|
70
|
+
}
|
|
71
|
+
export function HorizontalScroll({ children, style, ...rest }) {
|
|
72
|
+
return (_jsx(ScrollView, { horizontal: true, style: style, ...rest, children: children }));
|
|
73
|
+
}
|
|
74
|
+
// --- Gradient ---------------------------------------------------------------
|
|
75
|
+
/**
|
|
76
|
+
* Linear gradient backdrop via `expo-linear-gradient`. We forward `colors`,
|
|
77
|
+
* `start`, `end`, and `locations` straight through — the contract intentionally
|
|
78
|
+
* mirrors expo-linear-gradient's shape so the prop set is one-to-one on RN.
|
|
79
|
+
* The web impl converts the same fields to a CSS `linear-gradient(...)`.
|
|
80
|
+
*/
|
|
81
|
+
export function Gradient({ colors, start, end, locations, children, ...rest }) {
|
|
82
|
+
return (_jsx(LinearGradient, { colors: colors, start: start, end: end, locations: locations, ...rest, children: children }));
|
|
83
|
+
}
|
|
84
|
+
function isTabsItem(node) {
|
|
85
|
+
return isValidElement(node) && node.props?.value !== undefined;
|
|
86
|
+
}
|
|
87
|
+
export function Tabs({ defaultValue, children, ...rest }) {
|
|
88
|
+
const items = Children.toArray(children).filter(isTabsItem);
|
|
89
|
+
const firstValue = items[0]?.props.value;
|
|
90
|
+
const [active, setActive] = useState(defaultValue ?? firstValue);
|
|
91
|
+
const activeItem = items.find((item) => item.props.value === active) ?? items[0];
|
|
92
|
+
return (_jsxs(View, { ...rest, children: [_jsx(ScrollView, { horizontal: true, style: { borderBottomWidth: 1, borderBottomColor: '#e5e7eb' }, children: items.map((item) => {
|
|
93
|
+
const isActive = item.props.value === active;
|
|
94
|
+
return (_jsx(RNPressable, { onPress: () => setActive(item.props.value), style: {
|
|
95
|
+
paddingBlock: 8,
|
|
96
|
+
paddingInline: 12,
|
|
97
|
+
borderBottomWidth: 2,
|
|
98
|
+
borderBottomColor: isActive ? '#111827' : 'transparent',
|
|
99
|
+
}, children: _jsx(RNText, { children: item.props.label }) }, item.props.value));
|
|
100
|
+
}) }), _jsx(View, { children: activeItem?.props.children })] }));
|
|
101
|
+
}
|
|
102
|
+
export function TabsItem({ children }) {
|
|
103
|
+
return _jsx(_Fragment, { children: children });
|
|
104
|
+
}
|
|
105
|
+
// --- Modal ------------------------------------------------------------------
|
|
106
|
+
export function Modal({ open = true, children, onClose, style, ...rest }) {
|
|
107
|
+
const [visible, setVisible] = useState(open);
|
|
108
|
+
const dismiss = () => {
|
|
109
|
+
setVisible(false);
|
|
110
|
+
onClose?.();
|
|
111
|
+
};
|
|
112
|
+
return (_jsx(RNModal, { visible: visible && open, transparent: true, animationType: "fade", onRequestClose: dismiss, children: _jsx(RNPressable, { onPress: dismiss, style: {
|
|
113
|
+
flex: 1,
|
|
114
|
+
backgroundColor: 'rgba(0,0,0,0.4)',
|
|
115
|
+
justifyContent: 'center',
|
|
116
|
+
alignItems: 'center',
|
|
117
|
+
padding: 20,
|
|
118
|
+
}, children: _jsx(View, { style: mergeStyle({
|
|
119
|
+
backgroundColor: '#ffffff',
|
|
120
|
+
borderRadius: 8,
|
|
121
|
+
padding: 16,
|
|
122
|
+
width: '100%',
|
|
123
|
+
maxWidth: 480,
|
|
124
|
+
}, style), ...rest, children: children }) }) }));
|
|
125
|
+
}
|
|
126
|
+
// --- Form -------------------------------------------------------------------
|
|
127
|
+
export function TextField({ defaultValue, placeholder, multiline, disabled, onChange, ...rest }) {
|
|
128
|
+
const [value, setValue] = useState(defaultValue ?? '');
|
|
129
|
+
const handle = (v) => {
|
|
130
|
+
setValue(v);
|
|
131
|
+
onChange?.({ value: v });
|
|
132
|
+
};
|
|
133
|
+
return (_jsx(TextInput, { value: value, placeholder: placeholder, editable: !disabled, multiline: multiline, onChangeText: handle, ...rest }));
|
|
134
|
+
}
|
|
135
|
+
export function Checkbox({ label, defaultChecked, disabled, onChange, ...rest }) {
|
|
136
|
+
const [checked, setChecked] = useState(defaultChecked ?? false);
|
|
137
|
+
const handle = (v) => {
|
|
138
|
+
setChecked(v);
|
|
139
|
+
onChange?.({ value: v });
|
|
140
|
+
};
|
|
141
|
+
return (_jsxs(View, { style: { flexDirection: 'row', alignItems: 'center', gap: 6 }, ...rest, children: [_jsx(Switch, { value: checked, disabled: disabled, onValueChange: handle }), label && _jsx(RNText, { children: label })] }));
|
|
142
|
+
}
|
|
143
|
+
export function ChoicePicker({ defaultValue, options, disabled, onChange, ...rest }) {
|
|
144
|
+
const [value, setValue] = useState(defaultValue ?? options[0]?.value ?? '');
|
|
145
|
+
const handle = (v) => {
|
|
146
|
+
setValue(v);
|
|
147
|
+
onChange?.({ value: v });
|
|
148
|
+
};
|
|
149
|
+
return (_jsx(View, { ...rest, children: options.map((opt) => {
|
|
150
|
+
const selected = value === opt.value;
|
|
151
|
+
return (_jsxs(RNPressable, { disabled: disabled, onPress: () => handle(opt.value), style: { flexDirection: 'row', alignItems: 'center', gap: 6 }, children: [_jsx(View, { style: {
|
|
152
|
+
width: 16,
|
|
153
|
+
height: 16,
|
|
154
|
+
borderRadius: 8,
|
|
155
|
+
borderWidth: 1,
|
|
156
|
+
borderColor: selected ? '#111827' : '#d1d5db',
|
|
157
|
+
alignItems: 'center',
|
|
158
|
+
justifyContent: 'center',
|
|
159
|
+
}, children: selected && (_jsx(View, { style: { width: 8, height: 8, borderRadius: 4, backgroundColor: '#111827' } })) }), _jsx(RNText, { children: opt.label })] }, opt.value));
|
|
160
|
+
}) }));
|
|
161
|
+
}
|
|
162
|
+
export function Slider({ defaultValue, min = 0, max = 100, step = 1, disabled, onChange, ...rest }) {
|
|
163
|
+
// RN has no built-in slider; numeric text input is the no-extra-dep fallback.
|
|
164
|
+
// Customers swap with `@react-native-community/slider` by overriding `Slider`.
|
|
165
|
+
const [value, setValue] = useState(defaultValue ?? min);
|
|
166
|
+
const handle = (raw) => {
|
|
167
|
+
const n = Number(raw);
|
|
168
|
+
if (Number.isFinite(n)) {
|
|
169
|
+
setValue(n);
|
|
170
|
+
onChange?.({ value: n });
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
return (_jsx(TextInput, { value: String(value), editable: !disabled, keyboardType: "numeric", placeholder: `${min}–${max} step ${step}`, onChangeText: handle, ...rest }));
|
|
174
|
+
}
|
|
175
|
+
export function DateTimeInput({ defaultValue, mode = 'date', disabled, onChange, ...rest }) {
|
|
176
|
+
// RN's DateTimePicker isn't shipped with core; a plain text input keeps the
|
|
177
|
+
// primitive usable without a third-party dep. Customers can override with
|
|
178
|
+
// `@react-native-community/datetimepicker` when they need the native picker.
|
|
179
|
+
const [value, setValue] = useState(defaultValue ?? '');
|
|
180
|
+
const handle = (v) => {
|
|
181
|
+
setValue(v);
|
|
182
|
+
onChange?.({ value: v });
|
|
183
|
+
};
|
|
184
|
+
const placeholder = mode === 'time' ? 'HH:MM' : mode === 'datetime' ? 'YYYY-MM-DDTHH:MM' : 'YYYY-MM-DD';
|
|
185
|
+
return (_jsx(TextInput, { value: value, editable: !disabled, placeholder: placeholder, onChangeText: handle, ...rest }));
|
|
186
|
+
}
|
|
187
|
+
// --- Registry ---------------------------------------------------------------
|
|
188
|
+
/**
|
|
189
|
+
* Default component map for React Native; mirrors the web `bitBitBuiltins`
|
|
190
|
+
* name-for-name. Used as the fallback registry by `<BitBitView>` so a
|
|
191
|
+
* customer renders a view with zero registration. Spread to override.
|
|
192
|
+
*/
|
|
193
|
+
export const bitBitBuiltins = {
|
|
194
|
+
Text: Text,
|
|
195
|
+
Image: Image,
|
|
196
|
+
Button: Button,
|
|
197
|
+
Pressable: Pressable,
|
|
198
|
+
Icon: Icon,
|
|
199
|
+
Video: Video,
|
|
200
|
+
Audio: Audio,
|
|
201
|
+
Column: Column,
|
|
202
|
+
Row: Row,
|
|
203
|
+
List: List,
|
|
204
|
+
Card: Card,
|
|
205
|
+
VerticalScroll: VerticalScroll,
|
|
206
|
+
HorizontalScroll: HorizontalScroll,
|
|
207
|
+
Tabs: Tabs,
|
|
208
|
+
TabsItem: TabsItem,
|
|
209
|
+
Modal: Modal,
|
|
210
|
+
Divider: Divider,
|
|
211
|
+
Gradient: Gradient,
|
|
212
|
+
TextField: TextField,
|
|
213
|
+
Checkbox: Checkbox,
|
|
214
|
+
ChoicePicker: ChoicePicker,
|
|
215
|
+
Slider: Slider,
|
|
216
|
+
DateTimeInput: DateTimeInput,
|
|
217
|
+
};
|
|
218
|
+
//# sourceMappingURL=primitives.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"primitives.js","sourceRoot":"","sources":["../../src/react-native-expo/primitives.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { ComponentMap, SynthesisViewEvent } from './types.js';
|
|
3
|
+
export type BitBitContextValue = {
|
|
4
|
+
components: ComponentMap;
|
|
5
|
+
onEvent?: (event: SynthesisViewEvent) => void;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Registers the component map (and optional event handler) the renderer
|
|
9
|
+
* resolves node names against. The components are the host app's own code —
|
|
10
|
+
* platform-agnostic, so this provider is shared by the web and native entries.
|
|
11
|
+
*/
|
|
12
|
+
export declare function BitBitProvider({ components, onEvent, children, }: {
|
|
13
|
+
components: ComponentMap;
|
|
14
|
+
onEvent?: (event: SynthesisViewEvent) => void;
|
|
15
|
+
children: ReactNode;
|
|
16
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare function useBitBitContext(): BitBitContextValue | null;
|
|
18
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/synthesisView/context.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAc,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEnE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,EAAE,YAAY,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAC/C,CAAC;AAIF;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAC7B,UAAU,EACV,OAAO,EACP,QAAQ,GACT,EAAE;IACD,UAAU,EAAE,YAAY,CAAC;IACzB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9C,QAAQ,EAAE,SAAS,CAAC;CACrB,2CAIA;AAED,wBAAgB,gBAAgB,IAAI,kBAAkB,GAAG,IAAI,CAE5D"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createContext, useContext } from 'react';
|
|
3
|
+
const BitBitContext = createContext(null);
|
|
4
|
+
/**
|
|
5
|
+
* Registers the component map (and optional event handler) the renderer
|
|
6
|
+
* resolves node names against. The components are the host app's own code —
|
|
7
|
+
* platform-agnostic, so this provider is shared by the web and native entries.
|
|
8
|
+
*/
|
|
9
|
+
export function BitBitProvider({ components, onEvent, children, }) {
|
|
10
|
+
return (_jsx(BitBitContext.Provider, { value: { components, onEvent }, children: children }));
|
|
11
|
+
}
|
|
12
|
+
export function useBitBitContext() {
|
|
13
|
+
return useContext(BitBitContext);
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/synthesisView/context.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAkB,UAAU,EAAE,MAAM,OAAO,CAAC;AAQlE,MAAM,aAAa,GAAG,aAAa,CAA4B,IAAI,CAAC,CAAC;AAErE;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,EAC7B,UAAU,EACV,OAAO,EACP,QAAQ,GAKT;IACC,OAAO,CACL,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,YAAG,QAAQ,GAA0B,CAC5F,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,UAAU,CAAC,aAAa,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ComponentMap } from './types.js';
|
|
2
|
+
/** A module record as produced by Vite's `import.meta.glob(p, { eager: true })`. */
|
|
3
|
+
export type GlobModules = Record<string, Record<string, unknown>>;
|
|
4
|
+
/** A webpack / Metro `require.context(...)` — a require function carrying `keys()`. */
|
|
5
|
+
export type RequireContext = {
|
|
6
|
+
keys(): string[];
|
|
7
|
+
(id: string): Record<string, unknown>;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Build a `<BitBitProvider components>` map from a build-time module glob, so the
|
|
11
|
+
* host never hand-maintains a list — the folder is the list. Accepts either:
|
|
12
|
+
* - Vite: `import.meta.glob('./components/**\/*.{tsx,jsx}', { eager: true })`
|
|
13
|
+
* - Webpack / React Native (Metro): `require.context('./components', true, /\.[tj]sx?$/)`
|
|
14
|
+
* (Metro needs `transformer.unstable_allowRequireContext = true` in metro.config.js)
|
|
15
|
+
* Every PascalCase component export (named or default) is registered under its name.
|
|
16
|
+
*/
|
|
17
|
+
export declare function createComponentMap(source: GlobModules | RequireContext): ComponentMap;
|
|
18
|
+
//# sourceMappingURL=createComponentMap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createComponentMap.d.ts","sourceRoot":"","sources":["../../src/synthesisView/createComponentMap.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,oFAAoF;AACpF,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAElE,uFAAuF;AACvF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,IAAI,MAAM,EAAE,CAAC;IACjB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC,CAAC;AAwBF;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,cAAc,GAAG,YAAY,CAUrF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
function toModules(source) {
|
|
2
|
+
if (typeof source === 'function') {
|
|
3
|
+
const ctx = source;
|
|
4
|
+
return Object.fromEntries(ctx.keys().map((key) => [key, ctx(key)]));
|
|
5
|
+
}
|
|
6
|
+
return source;
|
|
7
|
+
}
|
|
8
|
+
const isPascalCase = (name) => /^[A-Z]/.test(name);
|
|
9
|
+
const isComponentLike = (value) => typeof value === 'function' || (typeof value === 'object' && value !== null);
|
|
10
|
+
/** Pick a component's registration name: its export name, or for a default
|
|
11
|
+
* export the function/displayName (since the glob key is just "default"). */
|
|
12
|
+
function componentName(exportName, value) {
|
|
13
|
+
if (exportName !== 'default')
|
|
14
|
+
return isPascalCase(exportName) ? exportName : null;
|
|
15
|
+
const fnName = value.displayName ??
|
|
16
|
+
value.name;
|
|
17
|
+
return fnName && isPascalCase(fnName) ? fnName : null;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Build a `<BitBitProvider components>` map from a build-time module glob, so the
|
|
21
|
+
* host never hand-maintains a list — the folder is the list. Accepts either:
|
|
22
|
+
* - Vite: `import.meta.glob('./components/**\/*.{tsx,jsx}', { eager: true })`
|
|
23
|
+
* - Webpack / React Native (Metro): `require.context('./components', true, /\.[tj]sx?$/)`
|
|
24
|
+
* (Metro needs `transformer.unstable_allowRequireContext = true` in metro.config.js)
|
|
25
|
+
* Every PascalCase component export (named or default) is registered under its name.
|
|
26
|
+
*/
|
|
27
|
+
export function createComponentMap(source) {
|
|
28
|
+
const map = {};
|
|
29
|
+
for (const mod of Object.values(toModules(source))) {
|
|
30
|
+
for (const [exportName, value] of Object.entries(mod)) {
|
|
31
|
+
if (!isComponentLike(value))
|
|
32
|
+
continue;
|
|
33
|
+
const name = componentName(exportName, value);
|
|
34
|
+
if (name)
|
|
35
|
+
map[name] = value;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return map;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=createComponentMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createComponentMap.js","sourceRoot":"","sources":["../../src/synthesisView/createComponentMap.ts"],"names":[],"mappings":"AAYA,SAAS,SAAS,CAAC,MAAoC;IACrD,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,MAAwB,CAAC;QACrC,OAAO,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3D,MAAM,eAAe,GAAG,CAAC,KAAc,EAAE,EAAE,CACzC,OAAO,KAAK,KAAK,UAAU,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC;AAE/E;8EAC8E;AAC9E,SAAS,aAAa,CAAC,UAAkB,EAAE,KAAc;IACvD,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAClF,MAAM,MAAM,GACT,KAAiD,CAAC,WAAW;QAC7D,KAA2B,CAAC,IAAI,CAAC;IACpC,OAAO,MAAM,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAoC;IACrE,MAAM,GAAG,GAAiB,EAAE,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACnD,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;gBAAE,SAAS;YACtC,MAAM,IAAI,GAAG,aAAa,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC9C,IAAI,IAAI;gBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,KAA+C,CAAC;QACxE,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { ComponentMap, FlatUiNode, SynthesisViewEvent } from './types.js';
|
|
3
|
+
/** Renders a node whose `component` doesn't resolve to any React impl. The
|
|
4
|
+
* web entry uses a DOM element; native must not, so it's host-supplied. */
|
|
5
|
+
export type RenderUnknown = (componentName: string) => ReactNode;
|
|
6
|
+
export type SynthesisViewTreeProps = {
|
|
7
|
+
/** Flat, fully-resolved array of nodes. First entry is the root. Empty
|
|
8
|
+
* array (or null) renders nothing. */
|
|
9
|
+
uiData: FlatUiNode[] | null | undefined;
|
|
10
|
+
/** Customer component map (overrides SDK primitives and serves `KEY_NAME`
|
|
11
|
+
* nodes). */
|
|
12
|
+
components?: ComponentMap;
|
|
13
|
+
/** Platform-supplied baseline (the BB built-in primitives). */
|
|
14
|
+
defaultComponents?: ComponentMap;
|
|
15
|
+
/** Per-node style normalization hook (e.g. RN's lineHeight conversion). */
|
|
16
|
+
normalizeStyle?: (style: unknown) => unknown;
|
|
17
|
+
onEvent?: (event: SynthesisViewEvent) => void;
|
|
18
|
+
renderUnknown: RenderUnknown;
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Walks the flat `uiData` array and renders. Resolution order for each
|
|
22
|
+
* node's `component` name:
|
|
23
|
+
* 1. Customer-passed `components` map (overrides).
|
|
24
|
+
* 2. SDK `defaultComponents` (BB primitives).
|
|
25
|
+
* 3. `renderUnknown` fallback.
|
|
26
|
+
*
|
|
27
|
+
* `KEY_NAME` nodes pass their `props` straight through to the resolved
|
|
28
|
+
* component plus a rendered `children` slot. `PRIMITIVE` nodes spread their
|
|
29
|
+
* flat-prop fields (`text`, `src`, `style`, …) onto the rendered component
|
|
30
|
+
* directly.
|
|
31
|
+
*/
|
|
32
|
+
export declare function SynthesisViewTree({ uiData, components, defaultComponents, normalizeStyle, onEvent, renderUnknown, }: SynthesisViewTreeProps): import("react").FunctionComponentElement<{
|
|
33
|
+
children?: ReactNode | undefined;
|
|
34
|
+
}> | null;
|
|
35
|
+
//# sourceMappingURL=engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/synthesisView/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEhE,OAAO,KAAK,EACV,YAAY,EAEZ,UAAU,EAEV,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB;4EAC4E;AAC5E,MAAM,MAAM,aAAa,GAAG,CAAC,aAAa,EAAE,MAAM,KAAK,SAAS,CAAC;AA6CjE,MAAM,MAAM,sBAAsB,GAAG;IACnC;2CACuC;IACvC,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC;kBACc;IACd,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,YAAY,CAAC;IACjC,2EAA2E;IAC3E,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IAC7C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9C,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,OAAO,EACP,aAAa,GACd,EAAE,sBAAsB;;UAcxB"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { createElement, Fragment } from 'react';
|
|
2
|
+
import { useBitBitContext } from './context.js';
|
|
3
|
+
function buildNodeMap(nodes) {
|
|
4
|
+
const map = new Map();
|
|
5
|
+
if (!nodes)
|
|
6
|
+
return map;
|
|
7
|
+
for (const n of nodes)
|
|
8
|
+
if (n && typeof n.id === 'string')
|
|
9
|
+
map.set(n.id, n);
|
|
10
|
+
return map;
|
|
11
|
+
}
|
|
12
|
+
function nodeChildIds(node) {
|
|
13
|
+
if (Array.isArray(node.children))
|
|
14
|
+
return node.children;
|
|
15
|
+
if (typeof node.child === 'string')
|
|
16
|
+
return [node.child];
|
|
17
|
+
return undefined;
|
|
18
|
+
}
|
|
19
|
+
const PRIMITIVE_NODE_RESERVED = new Set([
|
|
20
|
+
'id',
|
|
21
|
+
'kind',
|
|
22
|
+
'component',
|
|
23
|
+
'children',
|
|
24
|
+
'child',
|
|
25
|
+
'events',
|
|
26
|
+
]);
|
|
27
|
+
function collectPrimitiveProps(node) {
|
|
28
|
+
const out = {};
|
|
29
|
+
for (const [k, v] of Object.entries(node)) {
|
|
30
|
+
if (PRIMITIVE_NODE_RESERVED.has(k))
|
|
31
|
+
continue;
|
|
32
|
+
out[k] = v;
|
|
33
|
+
}
|
|
34
|
+
return out;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Walks the flat `uiData` array and renders. Resolution order for each
|
|
38
|
+
* node's `component` name:
|
|
39
|
+
* 1. Customer-passed `components` map (overrides).
|
|
40
|
+
* 2. SDK `defaultComponents` (BB primitives).
|
|
41
|
+
* 3. `renderUnknown` fallback.
|
|
42
|
+
*
|
|
43
|
+
* `KEY_NAME` nodes pass their `props` straight through to the resolved
|
|
44
|
+
* component plus a rendered `children` slot. `PRIMITIVE` nodes spread their
|
|
45
|
+
* flat-prop fields (`text`, `src`, `style`, …) onto the rendered component
|
|
46
|
+
* directly.
|
|
47
|
+
*/
|
|
48
|
+
export function SynthesisViewTree({ uiData, components, defaultComponents, normalizeStyle, onEvent, renderUnknown, }) {
|
|
49
|
+
const provided = useBitBitContext();
|
|
50
|
+
if (!uiData || uiData.length === 0)
|
|
51
|
+
return null;
|
|
52
|
+
const nodes = buildNodeMap(uiData);
|
|
53
|
+
const rootId = uiData[0]?.id;
|
|
54
|
+
if (!rootId)
|
|
55
|
+
return null;
|
|
56
|
+
const context = {
|
|
57
|
+
nodes,
|
|
58
|
+
components: { ...defaultComponents, ...provided?.components, ...components },
|
|
59
|
+
normalizeStyle,
|
|
60
|
+
onEvent: onEvent ?? provided?.onEvent,
|
|
61
|
+
renderUnknown,
|
|
62
|
+
};
|
|
63
|
+
return createElement(Fragment, null, renderNode(rootId, context));
|
|
64
|
+
}
|
|
65
|
+
function renderNode(id, context) {
|
|
66
|
+
const node = context.nodes.get(id);
|
|
67
|
+
if (!node)
|
|
68
|
+
return null;
|
|
69
|
+
if (node.kind === 'KEY_NAME') {
|
|
70
|
+
return renderKeyNameNode(node, context);
|
|
71
|
+
}
|
|
72
|
+
return renderPrimitiveNode(node, context);
|
|
73
|
+
}
|
|
74
|
+
function renderPrimitiveNode(node, context) {
|
|
75
|
+
const props = collectPrimitiveProps(node);
|
|
76
|
+
if (node.events && context.onEvent) {
|
|
77
|
+
const emit = context.onEvent;
|
|
78
|
+
for (const [slot, event] of Object.entries(node.events)) {
|
|
79
|
+
props[slot] = (componentPayload) => {
|
|
80
|
+
const payload = { ...(event.payload ?? {}) };
|
|
81
|
+
if (componentPayload && typeof componentPayload === 'object') {
|
|
82
|
+
Object.assign(payload, componentPayload);
|
|
83
|
+
}
|
|
84
|
+
emit({ name: event.name, payload, nodeId: node.id });
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
if (props.style !== undefined && context.normalizeStyle) {
|
|
89
|
+
props.style = context.normalizeStyle(props.style);
|
|
90
|
+
}
|
|
91
|
+
const childIds = nodeChildIds(node);
|
|
92
|
+
if (childIds) {
|
|
93
|
+
props.children = childIds.map((childId) => renderNode(childId, context));
|
|
94
|
+
}
|
|
95
|
+
const Component = context.components[node.component];
|
|
96
|
+
if (Component) {
|
|
97
|
+
return createElement(Component, { key: node.id, ...props });
|
|
98
|
+
}
|
|
99
|
+
return createElement(Fragment, { key: node.id }, context.renderUnknown(node.component));
|
|
100
|
+
}
|
|
101
|
+
function renderKeyNameNode(node, context) {
|
|
102
|
+
const Component = context.components[node.component];
|
|
103
|
+
const props = { ...(node.props ?? {}) };
|
|
104
|
+
const childIds = nodeChildIds(node);
|
|
105
|
+
if (childIds) {
|
|
106
|
+
props.children = childIds.map((childId) => renderNode(childId, context));
|
|
107
|
+
}
|
|
108
|
+
if (Component) {
|
|
109
|
+
return createElement(Component, { key: node.id, ...props });
|
|
110
|
+
}
|
|
111
|
+
return createElement(Fragment, { key: node.id }, context.renderUnknown(node.component));
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/synthesisView/engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAyBhD,SAAS,YAAY,CAAC,KAA+B;IACnD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC1C,IAAI,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC;IACvB,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3E,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,YAAY,CAAC,IAAgB;IACpC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAS;IAC9C,IAAI;IACJ,MAAM;IACN,WAAW;IACX,UAAU;IACV,OAAO;IACP,QAAQ;CACT,CAAC,CAAC;AAEH,SAAS,qBAAqB,CAAC,IAAyB;IACtD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,IAAI,uBAAuB,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,SAAS;QAC7C,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAiBD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,MAAM,EACN,UAAU,EACV,iBAAiB,EACjB,cAAc,EACd,OAAO,EACP,aAAa,GACU;IACvB,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACpC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC7B,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,OAAO,GAAkB;QAC7B,KAAK;QACL,UAAU,EAAE,EAAE,GAAG,iBAAiB,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE;QAC5E,cAAc;QACd,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,OAAO;QACrC,aAAa;KACd,CAAC;IACF,OAAO,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,UAAU,CAAC,EAAU,EAAE,OAAsB;IACpD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACnC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC7B,OAAO,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAyB,EAAE,OAAsB;IAC5E,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE1C,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gBAA0B,EAAE,EAAE;gBAC3C,MAAM,OAAO,GAA4B,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;gBACtE,IAAI,gBAAgB,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE,CAAC;oBAC7D,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,gBAA2C,CAAC,CAAC;gBACtE,CAAC;gBACD,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YACvD,CAAC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QACxD,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,aAAa,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,aAAa,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAuB,EAAE,OAAsB;IACxE,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,KAAK,GAA4B,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;IACjE,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,aAAa,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,aAAa,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AAC1F,CAAC"}
|