@treenity/react 3.0.3 → 3.0.6
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/App.d.ts.map +1 -1
- package/dist/App.js +3 -2
- package/dist/App.js.map +1 -1
- package/dist/Inspector.css +54 -0
- package/dist/Tree.css +91 -0
- package/dist/Treenity.d.ts +0 -1
- package/dist/Treenity.d.ts.map +1 -1
- package/dist/Treenity.js +1 -1
- package/dist/Treenity.js.map +1 -1
- package/dist/lib/minimd.css +28 -0
- package/dist/mods/editor-ui/editor-ui.css +174 -0
- package/dist/root.css +117 -0
- package/dist/trpc.d.ts +8 -0
- package/dist/trpc.d.ts.map +1 -1
- package/package.json +4 -2
- package/src/App.tsx +3 -2
- package/src/Treenity.tsx +1 -1
- package/vite-plugin-treenity.ts +230 -0
package/dist/App.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAmCA,wBAAgB,GAAG,
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"AAmCA,wBAAgB,GAAG,mDA2kBlB"}
|
package/dist/App.js
CHANGED
|
@@ -30,7 +30,8 @@ export function App() {
|
|
|
30
30
|
const token = getToken();
|
|
31
31
|
if (!token) {
|
|
32
32
|
try {
|
|
33
|
-
const
|
|
33
|
+
const login = import.meta.env.VITE_DEV_LOGIN ? trpc.devLogin : trpc.anonLogin;
|
|
34
|
+
const { token: anonToken, userId } = await login.mutate();
|
|
34
35
|
setToken(anonToken);
|
|
35
36
|
setAuthed(userId);
|
|
36
37
|
setAuthChecked(true);
|
|
@@ -412,7 +413,7 @@ export function App() {
|
|
|
412
413
|
if (!authed)
|
|
413
414
|
return _jsx(LoginScreen, { onLogin: (uid) => setAuthed(uid) });
|
|
414
415
|
const isAnon = authed.startsWith('anon:');
|
|
415
|
-
const needsLogin =
|
|
416
|
+
const needsLogin = showLoginModal;
|
|
416
417
|
if (mode === 'view')
|
|
417
418
|
return _jsx(NavigateProvider, { value: navigate, children: _jsx(ViewPage, { path: viewPath }) });
|
|
418
419
|
if (mode === 'preview')
|
package/dist/App.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/* Editor shell */
|
|
2
|
+
.editor {
|
|
3
|
+
flex: 1;
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
overflow: hidden;
|
|
7
|
+
background: var(--bg);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
/* Edit panel — slides from right */
|
|
11
|
+
.edit-panel {
|
|
12
|
+
position: fixed;
|
|
13
|
+
top: 0;
|
|
14
|
+
right: 0;
|
|
15
|
+
height: 100vh;
|
|
16
|
+
width: 380px;
|
|
17
|
+
background: var(--surface);
|
|
18
|
+
border-left: 1px solid var(--border);
|
|
19
|
+
transform: translateX(100%);
|
|
20
|
+
transition: transform 0.25s ease;
|
|
21
|
+
display: flex;
|
|
22
|
+
flex-direction: column;
|
|
23
|
+
z-index: 100;
|
|
24
|
+
box-shadow: -8px 0 24px rgba(0, 0, 0, 0.3);
|
|
25
|
+
}
|
|
26
|
+
.edit-panel.open {
|
|
27
|
+
transform: translateX(0);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
.edit-panel-header {
|
|
31
|
+
display: flex;
|
|
32
|
+
align-items: center;
|
|
33
|
+
justify-content: space-between;
|
|
34
|
+
padding: 14px 16px;
|
|
35
|
+
border-bottom: 1px solid var(--border);
|
|
36
|
+
font-weight: 600;
|
|
37
|
+
font-size: 14px;
|
|
38
|
+
flex-shrink: 0;
|
|
39
|
+
}
|
|
40
|
+
.edit-panel-actions {
|
|
41
|
+
display: flex;
|
|
42
|
+
gap: 8px;
|
|
43
|
+
padding: 12px 16px;
|
|
44
|
+
border-top: 1px solid var(--border);
|
|
45
|
+
flex-shrink: 0;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/* Node view */
|
|
49
|
+
.node-view {
|
|
50
|
+
/* max-width: 680px; */
|
|
51
|
+
}
|
|
52
|
+
.node-view:has(> .view-full) {
|
|
53
|
+
max-width: none;
|
|
54
|
+
}
|
package/dist/Tree.css
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/* Tree sidebar */
|
|
2
|
+
.tree-node {
|
|
3
|
+
position: relative;
|
|
4
|
+
}
|
|
5
|
+
.tree-children {
|
|
6
|
+
position: relative;
|
|
7
|
+
padding-left: 12px;
|
|
8
|
+
}
|
|
9
|
+
.tree-children::before {
|
|
10
|
+
content: '';
|
|
11
|
+
position: absolute;
|
|
12
|
+
left: 15px;
|
|
13
|
+
top: 0;
|
|
14
|
+
bottom: 8px;
|
|
15
|
+
width: 1px;
|
|
16
|
+
background: var(--border-subtle);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.tree-row {
|
|
20
|
+
display: flex;
|
|
21
|
+
align-items: center;
|
|
22
|
+
padding: 1px 8px 1px 0;
|
|
23
|
+
cursor: pointer;
|
|
24
|
+
color: var(--text);
|
|
25
|
+
font-size: 14px;
|
|
26
|
+
height: 28px;
|
|
27
|
+
position: relative;
|
|
28
|
+
user-select: none;
|
|
29
|
+
transition: background var(--transition);
|
|
30
|
+
}
|
|
31
|
+
.tree-row:hover {
|
|
32
|
+
background: var(--surface-2);
|
|
33
|
+
}
|
|
34
|
+
.tree-row.selected {
|
|
35
|
+
background: var(--accent-subtle);
|
|
36
|
+
}
|
|
37
|
+
.tree-row.selected::before {
|
|
38
|
+
content: '';
|
|
39
|
+
position: absolute;
|
|
40
|
+
left: 0;
|
|
41
|
+
top: 2px;
|
|
42
|
+
bottom: 2px;
|
|
43
|
+
width: 2px;
|
|
44
|
+
background: var(--accent);
|
|
45
|
+
border-radius: 1px;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.tree-toggle {
|
|
49
|
+
width: 20px;
|
|
50
|
+
height: 28px;
|
|
51
|
+
display: flex;
|
|
52
|
+
align-items: center;
|
|
53
|
+
justify-content: center;
|
|
54
|
+
color: var(--text-3);
|
|
55
|
+
font-size: 14px;
|
|
56
|
+
flex-shrink: 0;
|
|
57
|
+
transition: color var(--transition);
|
|
58
|
+
}
|
|
59
|
+
.tree-toggle:hover {
|
|
60
|
+
color: var(--text-2);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.tree-label {
|
|
64
|
+
flex: 1;
|
|
65
|
+
overflow: hidden;
|
|
66
|
+
text-overflow: ellipsis;
|
|
67
|
+
white-space: nowrap;
|
|
68
|
+
}
|
|
69
|
+
.tree-badge {
|
|
70
|
+
font-size: 10px;
|
|
71
|
+
color: var(--text-3);
|
|
72
|
+
padding: 1px 6px;
|
|
73
|
+
background: var(--surface-3);
|
|
74
|
+
border-radius: 10px;
|
|
75
|
+
flex-shrink: 0;
|
|
76
|
+
font-family: var(--mono);
|
|
77
|
+
cursor: pointer;
|
|
78
|
+
transition: all var(--transition);
|
|
79
|
+
}
|
|
80
|
+
.tree-badge:hover {
|
|
81
|
+
color: var(--text-2);
|
|
82
|
+
background: var(--surface-2);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/* Drag */
|
|
86
|
+
.tree-drop-above {
|
|
87
|
+
box-shadow: inset 0 2px 0 var(--accent);
|
|
88
|
+
}
|
|
89
|
+
.tree-drop-below {
|
|
90
|
+
box-shadow: inset 0 -2px 0 var(--accent);
|
|
91
|
+
}
|
package/dist/Treenity.d.ts
CHANGED
package/dist/Treenity.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Treenity.d.ts","sourceRoot":"","sources":["../src/Treenity.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"Treenity.d.ts","sourceRoot":"","sources":["../src/Treenity.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,eAAe,CAAA;AAQtB,MAAM,WAAW,aAAa;IAC5B,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,iCAAiC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,aAAa,2CAQnD"}
|
package/dist/Treenity.js
CHANGED
|
@@ -4,7 +4,7 @@ import { enablePatches } from 'immer';
|
|
|
4
4
|
import { App } from './App';
|
|
5
5
|
import './load-client';
|
|
6
6
|
import { Toaster } from './components/ui/sonner';
|
|
7
|
-
import '
|
|
7
|
+
// CSS must be imported by the consumer: import '@treenity/react/root.css'
|
|
8
8
|
enablePatches();
|
|
9
9
|
const queryClient = new QueryClient();
|
|
10
10
|
/**
|
package/dist/Treenity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Treenity.js","sourceRoot":"","sources":["../src/Treenity.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,eAAe,CAAA;AACtB,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,
|
|
1
|
+
{"version":3,"file":"Treenity.js","sourceRoot":"","sources":["../src/Treenity.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,eAAe,CAAA;AACtB,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,0EAA0E;AAE1E,aAAa,EAAE,CAAA;AAEf,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAA;AASrC;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,EAAE,QAAQ,EAAiB;IAClD,OAAO,CACL,MAAC,mBAAmB,IAAC,MAAM,EAAE,WAAW,aACtC,KAAC,GAAG,KAAG,EACP,KAAC,OAAO,KAAG,EACV,QAAQ,IACW,CACvB,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/* minimd — lightweight markdown rendering */
|
|
2
|
+
.minimd *:first-child { margin-top: 0; }
|
|
3
|
+
.minimd h1, .minimd h2, .minimd h3 { font-weight: 600; margin: 14px 0 6px; color: var(--text); }
|
|
4
|
+
.minimd h1 { font-size: 1.3em; border-bottom: 1px solid var(--border); padding-bottom: 4px; }
|
|
5
|
+
.minimd h2 { font-size: 1.15em; }
|
|
6
|
+
.minimd h3 { font-size: 1.05em; color: var(--text-2); }
|
|
7
|
+
.minimd p { margin: 4px 0; }
|
|
8
|
+
.minimd ul, .minimd ol { padding-left: 20px; margin: 4px 0; }
|
|
9
|
+
.minimd li { margin: 2px 0; }
|
|
10
|
+
.minimd li::marker { color: var(--text-3); }
|
|
11
|
+
.minimd code {
|
|
12
|
+
font-family: var(--mono); font-size: 0.88em;
|
|
13
|
+
background: var(--surface-3); padding: 1px 5px; border-radius: 4px; color: #f0abfc;
|
|
14
|
+
}
|
|
15
|
+
.minimd pre {
|
|
16
|
+
background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius);
|
|
17
|
+
padding: 10px 12px; margin: 8px 0; overflow-x: auto; font-size: 12px; line-height: 1.5;
|
|
18
|
+
}
|
|
19
|
+
.minimd pre code { background: none; padding: 0; color: var(--text); font-size: inherit; }
|
|
20
|
+
.minimd strong { font-weight: 600; }
|
|
21
|
+
.minimd em { color: var(--text-2); }
|
|
22
|
+
.minimd a { color: #58a6ff; text-decoration: none; }
|
|
23
|
+
.minimd a:hover { text-decoration: underline; }
|
|
24
|
+
.minimd blockquote { border-left: 3px solid var(--border); padding-left: 12px; color: var(--text-2); margin: 6px 0; }
|
|
25
|
+
.minimd hr { border: none; border-top: 1px solid var(--border); margin: 10px 0; }
|
|
26
|
+
.minimd table { border-collapse: collapse; margin: 8px 0; font-size: 12px; width: 100%; }
|
|
27
|
+
.minimd th, .minimd td { border: 1px solid var(--border); padding: 6px 12px; }
|
|
28
|
+
.minimd th { background: var(--surface-3); font-weight: 600; color: var(--text); text-align: left; }
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
/* Form fields */
|
|
2
|
+
.field {
|
|
3
|
+
display: flex;
|
|
4
|
+
align-items: center;
|
|
5
|
+
gap: 8px;
|
|
6
|
+
margin-bottom: 4px;
|
|
7
|
+
}
|
|
8
|
+
.field:last-child {
|
|
9
|
+
margin-bottom: 0;
|
|
10
|
+
}
|
|
11
|
+
.field label {
|
|
12
|
+
font-size: 11px;
|
|
13
|
+
font-weight: 500;
|
|
14
|
+
color: var(--text-2);
|
|
15
|
+
width: 60px;
|
|
16
|
+
flex-shrink: 0;
|
|
17
|
+
white-space: nowrap;
|
|
18
|
+
position: relative;
|
|
19
|
+
}
|
|
20
|
+
.field:has(textarea),
|
|
21
|
+
.field.stack {
|
|
22
|
+
flex-direction: column;
|
|
23
|
+
align-items: stretch;
|
|
24
|
+
}
|
|
25
|
+
.field:has(textarea) label,
|
|
26
|
+
.field.stack label {
|
|
27
|
+
min-width: unset;
|
|
28
|
+
margin-bottom: 3px;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* Component data view — shows field values in default view */
|
|
32
|
+
.comp-view-card {
|
|
33
|
+
background: var(--surface);
|
|
34
|
+
border: 1px solid var(--border);
|
|
35
|
+
border-radius: var(--radius-lg);
|
|
36
|
+
padding: 14px 16px;
|
|
37
|
+
margin-bottom: 12px;
|
|
38
|
+
}
|
|
39
|
+
.comp-view-header {
|
|
40
|
+
font-size: 11px;
|
|
41
|
+
font-weight: 600;
|
|
42
|
+
color: var(--text-3);
|
|
43
|
+
text-transform: uppercase;
|
|
44
|
+
letter-spacing: 0.5px;
|
|
45
|
+
margin-bottom: 10px;
|
|
46
|
+
display: flex;
|
|
47
|
+
align-items: center;
|
|
48
|
+
gap: 8px;
|
|
49
|
+
}
|
|
50
|
+
.comp-view-header .comp-type {
|
|
51
|
+
font-family: var(--mono);
|
|
52
|
+
color: var(--accent);
|
|
53
|
+
background: var(--accent-subtle);
|
|
54
|
+
padding: 1px 6px;
|
|
55
|
+
border-radius: 10px;
|
|
56
|
+
font-size: 10px;
|
|
57
|
+
text-transform: none;
|
|
58
|
+
}
|
|
59
|
+
.comp-view-row {
|
|
60
|
+
display: flex;
|
|
61
|
+
gap: 8px;
|
|
62
|
+
font-size: 13px;
|
|
63
|
+
padding: 3px 0;
|
|
64
|
+
}
|
|
65
|
+
.comp-view-label {
|
|
66
|
+
color: var(--text-3);
|
|
67
|
+
min-width: 80px;
|
|
68
|
+
flex-shrink: 0;
|
|
69
|
+
}
|
|
70
|
+
.comp-view-value {
|
|
71
|
+
color: var(--text);
|
|
72
|
+
word-break: break-word;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/* Info bar — compact chips for components and fields */
|
|
76
|
+
.node-info-bar {
|
|
77
|
+
display: flex;
|
|
78
|
+
flex-wrap: wrap;
|
|
79
|
+
gap: 8px;
|
|
80
|
+
margin-bottom: 20px;
|
|
81
|
+
}
|
|
82
|
+
.node-info-chip {
|
|
83
|
+
display: inline-flex;
|
|
84
|
+
align-items: center;
|
|
85
|
+
gap: 6px;
|
|
86
|
+
padding: 4px 10px;
|
|
87
|
+
border-radius: 16px;
|
|
88
|
+
background: var(--surface);
|
|
89
|
+
border: 1px solid var(--border);
|
|
90
|
+
font-size: 12px;
|
|
91
|
+
}
|
|
92
|
+
.node-info-chip-label {
|
|
93
|
+
color: var(--text-2);
|
|
94
|
+
font-weight: 500;
|
|
95
|
+
}
|
|
96
|
+
.node-info-chip.data .node-info-chip-val {
|
|
97
|
+
color: var(--text);
|
|
98
|
+
max-width: 120px;
|
|
99
|
+
overflow: hidden;
|
|
100
|
+
text-overflow: ellipsis;
|
|
101
|
+
white-space: nowrap;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* Children grid — file explorer cards with staggered reveal */
|
|
105
|
+
.children-grid {
|
|
106
|
+
display: flex;
|
|
107
|
+
flex-direction: column;
|
|
108
|
+
gap: 2px;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.child-card {
|
|
112
|
+
display: flex;
|
|
113
|
+
align-items: center;
|
|
114
|
+
gap: 12px;
|
|
115
|
+
padding: 10px 14px;
|
|
116
|
+
border-radius: var(--radius);
|
|
117
|
+
cursor: pointer;
|
|
118
|
+
transition: all var(--transition);
|
|
119
|
+
}
|
|
120
|
+
.child-card:hover {
|
|
121
|
+
background: var(--surface);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.child-icon {
|
|
125
|
+
width: 32px;
|
|
126
|
+
height: 32px;
|
|
127
|
+
border-radius: 8px;
|
|
128
|
+
background: var(--surface-2);
|
|
129
|
+
border: 1px solid var(--border);
|
|
130
|
+
display: flex;
|
|
131
|
+
align-items: center;
|
|
132
|
+
justify-content: center;
|
|
133
|
+
font-size: 13px;
|
|
134
|
+
font-weight: 600;
|
|
135
|
+
color: var(--text-2);
|
|
136
|
+
flex-shrink: 0;
|
|
137
|
+
}
|
|
138
|
+
.child-info {
|
|
139
|
+
flex: 1;
|
|
140
|
+
min-width: 0;
|
|
141
|
+
}
|
|
142
|
+
.child-name {
|
|
143
|
+
display: block;
|
|
144
|
+
font-size: 13px;
|
|
145
|
+
font-weight: 500;
|
|
146
|
+
color: var(--text);
|
|
147
|
+
overflow: hidden;
|
|
148
|
+
text-overflow: ellipsis;
|
|
149
|
+
white-space: nowrap;
|
|
150
|
+
}
|
|
151
|
+
.child-type {
|
|
152
|
+
display: block;
|
|
153
|
+
font-size: 11px;
|
|
154
|
+
color: var(--text-3);
|
|
155
|
+
font-family: var(--mono);
|
|
156
|
+
margin-top: 1px;
|
|
157
|
+
}
|
|
158
|
+
.child-chevron {
|
|
159
|
+
color: var(--text-3);
|
|
160
|
+
font-size: 18px;
|
|
161
|
+
flex-shrink: 0;
|
|
162
|
+
transition: transform var(--transition);
|
|
163
|
+
}
|
|
164
|
+
.child-card:hover .child-chevron {
|
|
165
|
+
transform: translateX(2px);
|
|
166
|
+
color: var(--text-2);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.node-empty {
|
|
170
|
+
color: var(--text-3);
|
|
171
|
+
font-size: 13px;
|
|
172
|
+
padding: 40px;
|
|
173
|
+
text-align: center;
|
|
174
|
+
}
|
package/dist/root.css
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/* Tailwind disabled — using CDN in index.html to avoid cross-package conflict */
|
|
2
|
+
/* @import 'tailwindcss'; */
|
|
3
|
+
/* @source "."; */
|
|
4
|
+
/* @source "../../src/mods"; */
|
|
5
|
+
|
|
6
|
+
/* Local fonts */
|
|
7
|
+
@font-face { font-family: 'Manrope'; src: url('/fonts/Manrope-Light.ttf'); font-weight: 300; font-display: swap; }
|
|
8
|
+
@font-face { font-family: 'Manrope'; src: url('/fonts/Manrope-Regular.ttf'); font-weight: 400; font-display: swap; }
|
|
9
|
+
@font-face { font-family: 'Manrope'; src: url('/fonts/Manrope-Medium.ttf'); font-weight: 500; font-display: swap; }
|
|
10
|
+
@font-face { font-family: 'Manrope'; src: url('/fonts/Manrope-SemiBold.ttf'); font-weight: 600; font-display: swap; }
|
|
11
|
+
|
|
12
|
+
/* shadcn/ui theme tokens — now in CDN (index.html), kept here for reference */
|
|
13
|
+
/* @theme inline extend { ... } — see index.html <style type="text/tailwindcss"> */
|
|
14
|
+
|
|
15
|
+
/* Tailwind theme tokens — unlayered :root beats CDN's layered output */
|
|
16
|
+
:root {
|
|
17
|
+
--color-background: #0d1117;
|
|
18
|
+
--color-foreground: #e6edf3;
|
|
19
|
+
--color-card: #161b22;
|
|
20
|
+
--color-card-foreground: #e6edf3;
|
|
21
|
+
--color-popover: #161b22;
|
|
22
|
+
--color-popover-foreground: #e6edf3;
|
|
23
|
+
--color-primary: #2ecc71;
|
|
24
|
+
--color-primary-foreground: #ffffff;
|
|
25
|
+
--color-secondary: #21262d;
|
|
26
|
+
--color-secondary-foreground: #e6edf3;
|
|
27
|
+
--color-muted: #161b22;
|
|
28
|
+
--color-muted-foreground: #7d8590;
|
|
29
|
+
--color-accent: rgba(46, 204, 113, 0.15);
|
|
30
|
+
--color-accent-foreground: #2ecc71;
|
|
31
|
+
--color-destructive: #f85149;
|
|
32
|
+
--color-destructive-foreground: #e6edf3;
|
|
33
|
+
--color-border: #30363d;
|
|
34
|
+
--color-input: #30363d;
|
|
35
|
+
--color-ring: #2ecc71;
|
|
36
|
+
--radius-sm: 4px;
|
|
37
|
+
--radius-md: 6px;
|
|
38
|
+
--radius-lg: 8px;
|
|
39
|
+
|
|
40
|
+
/* Legacy aliases */
|
|
41
|
+
--bg: var(--color-background);
|
|
42
|
+
--surface: var(--color-card);
|
|
43
|
+
--surface-2: var(--color-secondary);
|
|
44
|
+
--surface-3: var(--color-border);
|
|
45
|
+
--border: var(--color-border);
|
|
46
|
+
--border-subtle: var(--color-border);
|
|
47
|
+
--text: var(--color-foreground);
|
|
48
|
+
--text-2: var(--color-muted-foreground);
|
|
49
|
+
--text-3: color-mix(in srgb, var(--color-muted-foreground) 60%, transparent);
|
|
50
|
+
--accent: var(--color-primary);
|
|
51
|
+
--accent-subtle: var(--color-accent);
|
|
52
|
+
--danger: var(--color-destructive);
|
|
53
|
+
--danger-subtle: color-mix(in srgb, var(--color-destructive) 15%, transparent);
|
|
54
|
+
--success: #3fb950;
|
|
55
|
+
--success-subtle: rgba(63, 185, 80, 0.15);
|
|
56
|
+
--warning: #d29922;
|
|
57
|
+
--radius: var(--radius-md);
|
|
58
|
+
--radius-lg: var(--radius-lg);
|
|
59
|
+
--font: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
|
|
60
|
+
--mono: 'SF Mono', SFMono-Regular, 'Cascadia Code', 'Fira Code', Consolas, monospace;
|
|
61
|
+
--transition: 0.15s ease;
|
|
62
|
+
}
|
|
63
|
+
@layer base {
|
|
64
|
+
*,
|
|
65
|
+
::before,
|
|
66
|
+
::after {
|
|
67
|
+
margin: 0;
|
|
68
|
+
padding: 0;
|
|
69
|
+
box-sizing: border-box;
|
|
70
|
+
border-color: var(--color-border);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
html,
|
|
74
|
+
body {
|
|
75
|
+
height: 100%;
|
|
76
|
+
font-family: var(--font);
|
|
77
|
+
}
|
|
78
|
+
body {
|
|
79
|
+
background: var(--bg);
|
|
80
|
+
color: var(--text);
|
|
81
|
+
font-size: 14px;
|
|
82
|
+
line-height: 1.5;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@layer base {
|
|
86
|
+
input,
|
|
87
|
+
textarea,
|
|
88
|
+
select {
|
|
89
|
+
width: 100%;
|
|
90
|
+
padding: 4px 8px;
|
|
91
|
+
background: var(--bg);
|
|
92
|
+
border: 1px solid var(--border);
|
|
93
|
+
border-radius: var(--radius);
|
|
94
|
+
color: var(--text);
|
|
95
|
+
font-size: 12px;
|
|
96
|
+
font-family: var(--mono);
|
|
97
|
+
outline: none;
|
|
98
|
+
transition: border-color var(--transition);
|
|
99
|
+
}
|
|
100
|
+
input:focus,
|
|
101
|
+
textarea:focus,
|
|
102
|
+
select:focus {
|
|
103
|
+
border-color: var(--accent);
|
|
104
|
+
}
|
|
105
|
+
input:read-only {
|
|
106
|
+
color: var(--text-2);
|
|
107
|
+
cursor: default;
|
|
108
|
+
}
|
|
109
|
+
input:read-only:focus {
|
|
110
|
+
border-color: var(--border);
|
|
111
|
+
}
|
|
112
|
+
textarea {
|
|
113
|
+
min-height: 80px;
|
|
114
|
+
resize: vertical;
|
|
115
|
+
line-height: 1.5;
|
|
116
|
+
}
|
|
117
|
+
}
|
package/dist/trpc.d.ts
CHANGED
|
@@ -174,6 +174,14 @@ export declare const trpc: import("@trpc/client").TRPCClient<import("@trpc/serve
|
|
|
174
174
|
};
|
|
175
175
|
meta: object;
|
|
176
176
|
}>;
|
|
177
|
+
devLogin: import("@trpc/server").TRPCMutationProcedure<{
|
|
178
|
+
input: void;
|
|
179
|
+
output: {
|
|
180
|
+
token: string;
|
|
181
|
+
userId: string;
|
|
182
|
+
};
|
|
183
|
+
meta: object;
|
|
184
|
+
}>;
|
|
177
185
|
streamAction: import("@trpc/server/unstable-core-do-not-import").LegacyObservableSubscriptionProcedure<{
|
|
178
186
|
input: {
|
|
179
187
|
path: string;
|
package/dist/trpc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trpc.d.ts","sourceRoot":"","sources":["../src/trpc.ts"],"names":[],"mappings":"AAIA,wBAAgB,QAAQ,IAAI,MAAM,GAAG,IAAI,CAExC;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,QAErC;AAED,wBAAgB,UAAU,SAEzB;AAED,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AAUtD,eAAO,MAAQ,IAAI
|
|
1
|
+
{"version":3,"file":"trpc.d.ts","sourceRoot":"","sources":["../src/trpc.ts"],"names":[],"mappings":"AAIA,wBAAgB,QAAQ,IAAI,MAAM,GAAG,IAAI,CAExC;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,QAErC;AAED,wBAAgB,UAAU,SAEzB;AAED,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AAUtD,eAAO,MAAQ,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAiE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@treenity/react",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.6",
|
|
4
4
|
"description": "React binding for Treenity — reactive hooks, admin UI, and context-based component rendering.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"publishConfig": {
|
|
@@ -73,13 +73,14 @@
|
|
|
73
73
|
"files": [
|
|
74
74
|
"dist",
|
|
75
75
|
"src",
|
|
76
|
+
"vite-plugin-treenity.ts",
|
|
76
77
|
"!src/**/*.test.ts",
|
|
77
78
|
"!src/**/*.test.tsx",
|
|
78
79
|
"LICENSE",
|
|
79
80
|
"README.md"
|
|
80
81
|
],
|
|
81
82
|
"scripts": {
|
|
82
|
-
"build": "tsc -p tsconfig.build.json",
|
|
83
|
+
"build": "tsc -p tsconfig.build.json && cd src && find . -name '*.css' | while read f; do mkdir -p \"../dist/$(dirname \"$f\")\" && cp \"$f\" \"../dist/$f\"; done",
|
|
83
84
|
"prepack": "npm run build",
|
|
84
85
|
"test": "tsx --conditions development --test src/**/*.test.ts",
|
|
85
86
|
"dev": "vite"
|
|
@@ -106,6 +107,7 @@
|
|
|
106
107
|
"@tiptap/react": "^3.20.0",
|
|
107
108
|
"@tiptap/starter-kit": "^3.20.0",
|
|
108
109
|
"@tiptap/suggestion": "^3.20.0",
|
|
110
|
+
"@treenity/react": "^3.0.3",
|
|
109
111
|
"@trpc/client": "^11.9.0",
|
|
110
112
|
"class-variance-authority": "^0.7.1",
|
|
111
113
|
"clsx": "^2.1.1",
|
package/src/App.tsx
CHANGED
|
@@ -42,7 +42,8 @@ export function App() {
|
|
|
42
42
|
const token = getToken();
|
|
43
43
|
if (!token) {
|
|
44
44
|
try {
|
|
45
|
-
const
|
|
45
|
+
const login = import.meta.env.VITE_DEV_LOGIN ? trpc.devLogin : trpc.anonLogin;
|
|
46
|
+
const { token: anonToken, userId } = await login.mutate();
|
|
46
47
|
setToken(anonToken);
|
|
47
48
|
setAuthed(userId);
|
|
48
49
|
setAuthChecked(true);
|
|
@@ -439,7 +440,7 @@ export function App() {
|
|
|
439
440
|
if (!authed) return <LoginScreen onLogin={(uid) => setAuthed(uid)} />;
|
|
440
441
|
|
|
441
442
|
const isAnon = authed.startsWith('anon:');
|
|
442
|
-
const needsLogin =
|
|
443
|
+
const needsLogin = showLoginModal;
|
|
443
444
|
if (mode === 'view') return <NavigateProvider value={navigate}><ViewPage path={viewPath} /></NavigateProvider>;
|
|
444
445
|
if (mode === 'preview') return <NavigateProvider value={navigate}><ViewPage path={viewPath} editorLink /></NavigateProvider>;
|
|
445
446
|
|
package/src/Treenity.tsx
CHANGED
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
// Treenity vite plugin:
|
|
2
|
+
// 1. Resolve #subpath imports via nearest package.json (Vite doesn't support them)
|
|
3
|
+
// 2. Resolve @treenity/* exports with array conditions (Vite bug #16153)
|
|
4
|
+
// 3. Auto-discover mod client.ts → virtual:mod-clients
|
|
5
|
+
// 4. Block server.ts from frontend bundle
|
|
6
|
+
|
|
7
|
+
import { existsSync, readFileSync, readdirSync, realpathSync, statSync } from 'node:fs';
|
|
8
|
+
import { dirname, join, resolve } from 'node:path';
|
|
9
|
+
import type { Plugin } from 'vite';
|
|
10
|
+
|
|
11
|
+
// ── Package.json resolution ──
|
|
12
|
+
|
|
13
|
+
type SpecValue = string | string[] | Record<string, string | string[]>;
|
|
14
|
+
type FieldMap = Record<string, SpecValue>;
|
|
15
|
+
|
|
16
|
+
const pkgCache = new Map<string, { dir: string; imports?: FieldMap; exports?: FieldMap } | null>();
|
|
17
|
+
|
|
18
|
+
function readPkg(startDir: string) {
|
|
19
|
+
if (pkgCache.has(startDir)) return pkgCache.get(startDir)!;
|
|
20
|
+
|
|
21
|
+
let current = startDir;
|
|
22
|
+
while (current !== dirname(current)) {
|
|
23
|
+
const pkgPath = join(current, 'package.json');
|
|
24
|
+
if (existsSync(pkgPath)) {
|
|
25
|
+
const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
|
26
|
+
if (pkg.imports || pkg.exports) {
|
|
27
|
+
const result = { dir: current, imports: pkg.imports as FieldMap, exports: pkg.exports as FieldMap };
|
|
28
|
+
pkgCache.set(startDir, result);
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
current = dirname(current);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
pkgCache.set(startDir, null);
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// Cache for @treenity/* package dirs
|
|
40
|
+
const treenityPkgCache = new Map<string, { dir: string; exports: FieldMap } | null>();
|
|
41
|
+
|
|
42
|
+
function findTreenityPkg(name: string): { dir: string; exports: FieldMap } | null {
|
|
43
|
+
if (treenityPkgCache.has(name)) return treenityPkgCache.get(name)!;
|
|
44
|
+
|
|
45
|
+
// Walk up from CWD to find node_modules/@treenity/<name>
|
|
46
|
+
let current = process.cwd();
|
|
47
|
+
while (current !== dirname(current)) {
|
|
48
|
+
const pkgDir = join(current, 'node_modules', name);
|
|
49
|
+
const pkgPath = join(pkgDir, 'package.json');
|
|
50
|
+
if (existsSync(pkgPath)) {
|
|
51
|
+
const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
|
52
|
+
// Follow symlink to real path for resolution
|
|
53
|
+
const realDir = realpathSync(pkgDir);
|
|
54
|
+
const result = pkg.exports ? { dir: realDir, exports: pkg.exports as FieldMap } : null;
|
|
55
|
+
treenityPkgCache.set(name, result);
|
|
56
|
+
return result;
|
|
57
|
+
}
|
|
58
|
+
current = dirname(current);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
treenityPkgCache.set(name, null);
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
function resolveConditions(pkgDir: string, spec: SpecValue, conditions: string[]): string[] {
|
|
66
|
+
if (typeof spec === 'string') return [resolve(pkgDir, spec)];
|
|
67
|
+
if (Array.isArray(spec)) return spec.map(s => resolve(pkgDir, s));
|
|
68
|
+
|
|
69
|
+
for (const cond of conditions) {
|
|
70
|
+
if (spec[cond]) return resolveConditions(pkgDir, spec[cond], conditions);
|
|
71
|
+
}
|
|
72
|
+
if (spec.default) return resolveConditions(pkgDir, spec.default, conditions);
|
|
73
|
+
return [];
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
function isFile(p: string): boolean {
|
|
77
|
+
return existsSync(p) && statSync(p).isFile();
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
const EXT = ['.ts', '.tsx', '.js', '.jsx'];
|
|
81
|
+
const IDX = ['/index.ts', '/index.tsx', '/index.js', '/index.jsx'];
|
|
82
|
+
|
|
83
|
+
function tryResolve(candidates: string[]): string | undefined {
|
|
84
|
+
for (const c of candidates) {
|
|
85
|
+
if (isFile(c)) return c;
|
|
86
|
+
for (const ext of EXT) { if (isFile(c + ext)) return c + ext; }
|
|
87
|
+
for (const idx of IDX) { if (isFile(c + idx)) return c + idx; }
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
function expandWildcard(spec: SpecValue, matched: string): SpecValue {
|
|
92
|
+
if (typeof spec === 'string') return spec.replace('*', matched);
|
|
93
|
+
if (Array.isArray(spec)) return spec.map(s => s.replace('*', matched));
|
|
94
|
+
return Object.fromEntries(
|
|
95
|
+
Object.entries(spec).map(([k, v]) => [k, expandWildcard(v, matched)])
|
|
96
|
+
) as SpecValue;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
function matchPattern(id: string, map: FieldMap, pkgDir: string, conditions: string[]): string | undefined {
|
|
100
|
+
for (const [pattern, spec] of Object.entries(map)) {
|
|
101
|
+
if (pattern === id) {
|
|
102
|
+
return tryResolve(resolveConditions(pkgDir, spec, conditions));
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
if (pattern.includes('*')) {
|
|
106
|
+
const [prefix, suffix] = pattern.split('*');
|
|
107
|
+
if (id.startsWith(prefix) && (!suffix || id.endsWith(suffix))) {
|
|
108
|
+
const matched = id.slice(prefix.length, suffix ? -suffix.length || undefined : undefined);
|
|
109
|
+
return tryResolve(resolveConditions(pkgDir, expandWildcard(spec, matched), conditions));
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// ── Mod discovery ──
|
|
116
|
+
|
|
117
|
+
const VIRTUAL_ID = 'virtual:mod-clients';
|
|
118
|
+
const RESOLVED_ID = '\0' + VIRTUAL_ID;
|
|
119
|
+
const SERVER_RE = /\/mods\/[^/]+\/server(\.ts)?$/;
|
|
120
|
+
|
|
121
|
+
function scanClients(dir: string): string[] {
|
|
122
|
+
if (!existsSync(dir)) return [];
|
|
123
|
+
const clients: string[] = [];
|
|
124
|
+
for (const entry of readdirSync(dir, { withFileTypes: true })) {
|
|
125
|
+
if (!entry.isDirectory()) continue;
|
|
126
|
+
const client = resolve(dir, entry.name, 'client.ts');
|
|
127
|
+
if (existsSync(client)) clients.push(client);
|
|
128
|
+
}
|
|
129
|
+
return clients;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
// Scan node_modules for @treenity/* packages with treenity.clients field
|
|
133
|
+
function discoverPackageClients(): string[] {
|
|
134
|
+
const imports: string[] = [];
|
|
135
|
+
let current = process.cwd();
|
|
136
|
+
|
|
137
|
+
while (current !== dirname(current)) {
|
|
138
|
+
const nmDir = join(current, 'node_modules', '@treenity');
|
|
139
|
+
if (existsSync(nmDir)) {
|
|
140
|
+
for (const entry of readdirSync(nmDir, { withFileTypes: true })) {
|
|
141
|
+
if (!entry.isDirectory() && !entry.isSymbolicLink()) continue;
|
|
142
|
+
const pkgPath = join(nmDir, entry.name, 'package.json');
|
|
143
|
+
if (!existsSync(pkgPath)) continue;
|
|
144
|
+
const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
|
145
|
+
if (pkg.treenity?.clients) {
|
|
146
|
+
const realDir = realpathSync(join(nmDir, entry.name));
|
|
147
|
+
const clientsPath = resolve(realDir, pkg.treenity.clients);
|
|
148
|
+
if (existsSync(clientsPath)) imports.push(clientsPath);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
break; // found node_modules, stop walking up
|
|
152
|
+
}
|
|
153
|
+
current = dirname(current);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
return imports;
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
// ── Plugin ──
|
|
160
|
+
|
|
161
|
+
export default function treenityPlugin(opts?: { modsDirs?: string[] }): Plugin {
|
|
162
|
+
const engineRoot = resolve(import.meta.dirname, '../..');
|
|
163
|
+
let conditions: string[] = [];
|
|
164
|
+
|
|
165
|
+
return {
|
|
166
|
+
name: 'treenity',
|
|
167
|
+
enforce: 'pre',
|
|
168
|
+
|
|
169
|
+
configResolved(config) {
|
|
170
|
+
conditions = (config.resolve.conditions ?? []).concat('default');
|
|
171
|
+
},
|
|
172
|
+
|
|
173
|
+
resolveId(id, importer) {
|
|
174
|
+
if (id === VIRTUAL_ID) return RESOLVED_ID;
|
|
175
|
+
if (!importer) return;
|
|
176
|
+
|
|
177
|
+
// Block server.ts from frontend
|
|
178
|
+
if (id.startsWith('.')) {
|
|
179
|
+
const resolved = resolve(importer, '..', id).replace(/\\/g, '/');
|
|
180
|
+
if (SERVER_RE.test(resolved)) {
|
|
181
|
+
this.error(
|
|
182
|
+
`Server module imported in frontend build: "${id}"\n` +
|
|
183
|
+
` from: ${importer}\n` +
|
|
184
|
+
` Mods must not import server.ts from client code`
|
|
185
|
+
);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
// Resolve # imports via nearest package.json imports field
|
|
190
|
+
if (id.startsWith('#')) {
|
|
191
|
+
const pkg = readPkg(dirname(importer));
|
|
192
|
+
if (pkg?.imports) return matchPattern(id, pkg.imports, pkg.dir, conditions);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
// Resolve @treenity/* exports (Vite doesn't handle array conditions)
|
|
196
|
+
if (id.startsWith('@treenity/')) {
|
|
197
|
+
const parts = id.split('/');
|
|
198
|
+
const pkgName = parts.slice(0, 2).join('/');
|
|
199
|
+
const subpath = './' + parts.slice(2).join('/');
|
|
200
|
+
const pkg = findTreenityPkg(pkgName);
|
|
201
|
+
if (pkg?.exports) {
|
|
202
|
+
return matchPattern(parts.length > 2 ? subpath : '.', pkg.exports, pkg.dir, conditions);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
|
|
207
|
+
load(id) {
|
|
208
|
+
if (id !== RESOLVED_ID) return;
|
|
209
|
+
|
|
210
|
+
// 1. Auto-discover @treenity/* packages with treenity.clients
|
|
211
|
+
const pkgClients = discoverPackageClients();
|
|
212
|
+
|
|
213
|
+
// 2. Engine mods (sibling to this plugin's package)
|
|
214
|
+
const engineMods = scanClients(resolve(engineRoot, 'mods'));
|
|
215
|
+
|
|
216
|
+
// 3. Extra mods dirs (passed explicitly from project vite config)
|
|
217
|
+
const extraMods = (opts?.modsDirs ?? []).flatMap(d => scanClients(resolve(d)));
|
|
218
|
+
|
|
219
|
+
// Dedupe by realpath
|
|
220
|
+
const seen = new Set<string>();
|
|
221
|
+
const imports: string[] = [];
|
|
222
|
+
for (const p of [...pkgClients, ...engineMods, ...extraMods]) {
|
|
223
|
+
const real = realpathSync(p);
|
|
224
|
+
if (!seen.has(real)) { seen.add(real); imports.push(p); }
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
return imports.map(p => `import '${p}';`).join('\n') + '\n';
|
|
228
|
+
},
|
|
229
|
+
};
|
|
230
|
+
}
|