sveltekit-ui 1.0.7 → 1.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/Components/ContentInput/index.svelte.js +1 -0
  2. package/dist/Components/Location/index.svelte +5 -11
  3. package/dist/Components/Location/index.svelte.js +9 -13
  4. package/dist/Components/LocationInput/index.svelte +5 -10
  5. package/dist/Components/LocationInput/index.svelte.js +16 -6
  6. package/dist/Components/TextInput/index.svelte.js +1 -0
  7. package/dist/client/types/index.js +78 -2238
  8. package/package.json +11 -8
  9. package/src/app.html +1 -0
  10. package/src/lib/Components/ContentInput/index.svelte.js +1 -0
  11. package/src/lib/Components/Location/index.svelte +5 -11
  12. package/src/lib/Components/Location/index.svelte.js +9 -13
  13. package/src/lib/Components/LocationInput/index.svelte +5 -10
  14. package/src/lib/Components/LocationInput/index.svelte.js +16 -6
  15. package/src/lib/Components/TextInput/index.svelte.js +1 -0
  16. package/src/lib/client/types/index.js +78 -2238
  17. package/src/routes/[component]/+page.svelte +3 -3
  18. package/svelte.config.js +1 -1
  19. package/dist/Components/FunctionInput/Node/helpers/DefinedTargetInput/index.svelte +0 -110
  20. package/dist/Components/FunctionInput/Node/helpers/Field/index.svelte +0 -109
  21. package/dist/Components/FunctionInput/Node/helpers/Field/index.svelte.js +0 -207
  22. package/dist/Components/FunctionInput/Node/helpers/InlineDropArea/index.svelte +0 -97
  23. package/dist/Components/FunctionInput/Node/helpers/InlineDropArea/index.svelte.js +0 -105
  24. package/dist/Components/FunctionInput/Node/helpers/ObjectInput/index.svelte +0 -198
  25. package/dist/Components/FunctionInput/Node/helpers/StackArea/index.svelte +0 -169
  26. package/dist/Components/FunctionInput/Node/helpers/StackArea/index.svelte.js +0 -152
  27. package/dist/Components/FunctionInput/Node/index.svelte +0 -144
  28. package/dist/Components/FunctionInput/Node/index.svelte.js +0 -134
  29. package/dist/Components/FunctionInput/index.svelte +0 -356
  30. package/dist/Components/FunctionInput/index.svelte.js +0 -1215
  31. package/src/lib/Components/FunctionInput/Node/helpers/DefinedTargetInput/index.svelte +0 -110
  32. package/src/lib/Components/FunctionInput/Node/helpers/Field/index.svelte +0 -109
  33. package/src/lib/Components/FunctionInput/Node/helpers/Field/index.svelte.js +0 -207
  34. package/src/lib/Components/FunctionInput/Node/helpers/InlineDropArea/index.svelte +0 -97
  35. package/src/lib/Components/FunctionInput/Node/helpers/InlineDropArea/index.svelte.js +0 -105
  36. package/src/lib/Components/FunctionInput/Node/helpers/ObjectInput/index.svelte +0 -198
  37. package/src/lib/Components/FunctionInput/Node/helpers/StackArea/index.svelte +0 -169
  38. package/src/lib/Components/FunctionInput/Node/helpers/StackArea/index.svelte.js +0 -152
  39. package/src/lib/Components/FunctionInput/Node/index.svelte +0 -144
  40. package/src/lib/Components/FunctionInput/Node/index.svelte.js +0 -134
  41. package/src/lib/Components/FunctionInput/index.svelte +0 -356
  42. package/src/lib/Components/FunctionInput/index.svelte.js +0 -1215
  43. package/src/routes/[component]/Showcase/FunctionInput/index.svelte +0 -77
@@ -1,134 +0,0 @@
1
- // import Field from "./helpers/Field/index.svelte"
2
- // import StackArea from "./helpers/StackArea/index.svelte"
3
- import { deep_copy } from "../../../client/index.js"
4
- import { create_stack_area_manager } from "./helpers/StackArea/index.svelte.js"
5
- import { create_field_manager } from "./helpers/Field/index.svelte.js"
6
-
7
- export function create_node_manager(config) {
8
- console.log("create_node_man", config)
9
- let node_structure = $state(null)
10
- let is_clickable_only = $state(false)
11
- let node_path = $state(null)
12
- let node_types = $state(null)
13
- let node_type = $state(null)
14
- let node_value = $state(null)
15
- let node_categories = $state(null)
16
-
17
- let preview_text = $derived(
18
- `${node_type}(${node_types?.[node_type]?.input?.type})→(${node_types?.[node_type]?.output?.type ?? "void"})`
19
- )
20
-
21
- let full_node_type = $derived(node_types?.[node_type])
22
- let h = $derived(node_categories?.[node_types?.[node_type]?.category]?.h || 4)
23
-
24
- function handle_drag_start(e) {
25
- if (is_clickable_only || node_path == "main") {
26
- e.preventDefault()
27
- } else if (typeof config?.handle_node_drag_start == "function") {
28
- config?.handle_node_drag_start()
29
- }
30
- }
31
-
32
- function handle_drag_end(e) {
33
- if (is_clickable_only) {
34
- e.preventDefault()
35
- } else if (typeof config?.handle_node_drag_start == "function") {
36
- config?.handle_node_drag_end()
37
- }
38
- }
39
-
40
- function init(config) {
41
- node_categories = config?.node_categories
42
- node_path = config?.node_path
43
- node_types = config?.node_types
44
- node_type = config?.node_type
45
- node_value = config?.node_value
46
- is_clickable_only = !!config?.is_clickable_only
47
- let node_structure_loc = []
48
- if (Array.isArray(full_node_type?.node_structure)) {
49
- for (let i = 0; i < full_node_type?.node_structure.length; i++) {
50
- let node_item = deep_copy(full_node_type.node_structure?.[i])
51
- if (node_item?.ui_type == "stack") {
52
- node_item.stack_area_manager = create_stack_area_manager({
53
- parent_node_type: node_type,
54
- node_path: [...(Array.isArray(node_path) ? node_path : []), node_item?.field].filter(
55
- (item) => item !== null && item !== undefined
56
- ),
57
- node_type: node_value?.[node_item?.field]?.type,
58
- node_value: node_value?.[node_item?.field]?.value,
59
- node_types: node_types,
60
- is_preview: false,
61
- drag_or_select_node: config?.drag_or_select_node,
62
- handle_node_drag_start: config?.handle_node_drag_start,
63
- handle_node_drag_end: config?.handle_node_drag_end,
64
- })
65
- } else {
66
- if (Array.isArray(node_item) && node_item.length > 0) {
67
- for (let j = 0; j < node_item.length; j++) {
68
- if (node_item[j]?.ui_type == "input") {
69
- node_item[j].field_manager = create_field_manager({
70
- bar_item: node_item[j],
71
- node_path: node_path,
72
- node_type: node_type,
73
- node_value: node_value,
74
- is_preview: !!config?.is_preview,
75
- on_set_node_value: (input) => config?.on_set_node_value(input),
76
- get_selected_version_node_at_path: (input) => config?.get_selected_version_node_at_path(input),
77
- })
78
- } else {
79
- node_item[j].field_manager = create_field_manager({
80
- bar_item: node_item?.[j],
81
- parent_node_type: node_type,
82
- node_path: [...(Array.isArray(node_path) ? node_path : []), node_item[j]?.field].filter(
83
- (item) => item !== null && item !== undefined
84
- ),
85
- node_type: node_value?.[node_item[j]?.field]?.type,
86
- node_value: node_value?.[node_item[j]?.field]?.value,
87
- is_preview: !!config?.is_preview,
88
- on_set_node_value: (input) => config?.on_set_node_value(input),
89
- get_selected_version_node_at_path: (input) => config?.get_selected_version_node_at_path(input),
90
- })
91
- }
92
- }
93
- }
94
- }
95
- node_structure_loc.push(node_item)
96
- }
97
- }
98
- node_structure = node_structure_loc
99
- }
100
-
101
- init(config)
102
-
103
- return {
104
- get node_path() {
105
- return node_path
106
- },
107
- get node_type() {
108
- return node_type
109
- },
110
- get is_preview() {
111
- return !!config?.is_preview
112
- },
113
- get is_clickable_only() {
114
- return !!config?.is_clickable_only
115
- },
116
- get full_node_type() {
117
- return full_node_type
118
- },
119
- get h() {
120
- return h
121
- },
122
- get c() {
123
- return config?.c
124
- },
125
- get preview_text() {
126
- return preview_text
127
- },
128
- get node_structure() {
129
- return node_structure
130
- },
131
- handle_drag_start,
132
- handle_drag_end,
133
- }
134
- }
@@ -1,356 +0,0 @@
1
- <script>
2
- import Button from "../Button/index.svelte"
3
- import Popover from "../Popover/index.svelte"
4
- import TextInput from "../TextInput/index.svelte"
5
- import InfoBox from "../InfoBox/index.svelte"
6
- import { goto } from "$app/navigation"
7
- import Node from "./Node/index.svelte"
8
- import Icon from "../Icon/index.svelte"
9
-
10
- let { manager } = $props()
11
- </script>
12
-
13
- <div class="container" style="max-height: 100%;">
14
- <div class="head_panel">
15
- <div style="display: flex; flex: 1; gap: 1rem; flex-wrap: wrap; align-items: center;">
16
- <!-- {@render header_pre()} -->
17
- <div style="display: flex;">
18
- <Button manager={manager?.undo_version_button_manager} />
19
- <Button manager={manager?.redo_version_button_manager} />
20
- </div>
21
- <!-- {@render header_post()} -->
22
- <!-- <Popover
23
- type="center"
24
- min_width={280}
25
- target_width={380}
26
- min_height={280}
27
- target_height={380}
28
- header="Edit Function Name"
29
- >
30
- <div slot="toggle_button">
31
- <Button
32
- type="plain"
33
- support_icon="edit"
34
- ml={0.5}
35
- icon_sw={40}
36
- icon_size={1.6}
37
- font_size={1.2}
38
- is_uniform={true}
39
- min_height={2}
40
- border_radius={0.5}
41
- onclick={() => (name_loc = $name)}
42
- />
43
- </div>
44
- <div slot="popover_content" let:toggle_popover>
45
- <TextInput label="Function Name" placeholder="name" bind:val={name_loc} is_bind_val={true} />
46
- </div>
47
- <div slot="footer" let:toggle_popover>
48
- <Button text="Set Name" mb={1} onclick={() => set_name(toggle_popover)} />
49
- </div>
50
- </Popover> -->
51
- <!-- <p>{manager?.description}</p> -->
52
- <!-- <Popover
53
- type="center"
54
- min_width={280}
55
- target_width={380}
56
- min_height={280}
57
- target_height={380}
58
- header="Edit Function Description"
59
- >
60
- <div slot="toggle_button">
61
- <Button
62
- type="plain"
63
- support_icon="edit"
64
- ml={0.5}
65
- icon_sw={40}
66
- icon_size={1.6}
67
- font_size={1.2}
68
- is_uniform={true}
69
- min_height={2}
70
- border_radius={0.5}
71
- onclick={() => (description_loc = $description)}
72
- />
73
- </div>
74
- <div slot="popover_content" let:toggle_popover>
75
- <TextInput
76
- label="Function Description"
77
- placeholder="description"
78
- bind:val={description_loc}
79
- is_bind_val={true}
80
- />
81
- </div>
82
- <div slot="footer" let:toggle_popover>
83
- <Button text="Set Description" mb={1} onclick={() => set_description(toggle_popover)} />
84
- </div>
85
- </Popover> -->
86
- <!-- <p>{format_date(manager?.db_epoch_updated)}</p>
87
- <p>{format_date(manager?.db_epoch_created)}</p> -->
88
- </div>
89
- <InfoBox message={manager?.update_function_error_message} />
90
- </div>
91
- <div class="builder_container">
92
- <div class="support_container">
93
- <div class="toolbox">
94
- <div class="node_categories">
95
- {#if Array.isArray(manager?.node_category_buttons)}
96
- {#each manager?.node_category_buttons as node_category_button}
97
- <div class:is_category_selected={node_category_button?.selected_type == "selected"}>
98
- <Button manager={node_category_button?.button_manager} />
99
- </div>
100
- {/each}
101
- {/if}
102
- </div>
103
- <div class="node_types_container">
104
- {#if Array.isArray(manager?.node_toolbox_items_prepped)}
105
- {#each manager?.node_toolbox_items_prepped as node_toolbox_item_prepped}
106
- <!-- aaa|{node_toolbox_item} -->
107
- <!-- <pre>{JSON.stringify(node_toolbox_item, null, 2)}</pre> -->
108
- <Node manager={node_toolbox_item_prepped?.node_manager} />
109
- {/each}
110
- {/if}
111
- </div>
112
- </div>
113
- <div class="consolelog_container" style="height: {manager?.is_console_large ? 'calc(100% - 1rem)' : '20rem'}">
114
- <div class="console_header">
115
- <p class="label" style="font-size: 1.4rem ">Console</p>
116
- <div style="display: flex; gap: .5rem">
117
- <!-- <Button
118
- type="outlined"
119
- onclick={() => (manager?.is_console_large = !manager?.is_console_large)}
120
- support_icon="arrow"
121
- border_radius={0.5}
122
- icon_deg={manager?.is_console_large ? 180 : 0}
123
- is_uniform={true}
124
- min_height={2.5}
125
- icon_size={1.4}
126
- icon_sw={50}
127
- h={14}
128
- c={1}
129
- l={6}
130
- icon_movement_damping={1}
131
- pt={0.3}
132
- pb={0.3}
133
- pl={0.8}
134
- pr={0.8}
135
- /> -->
136
- <!-- <Button
137
- onclick={() => run_selected_function_structure()}
138
- support_icon="play"
139
- text="Run Function"
140
- border_radius={0.5}
141
- is_compressed={true}
142
- min_height={2}
143
- icon_size={1.4}
144
- icon_sw={50}
145
- pt={0.3}
146
- pb={0.3}
147
- pl={0.8}
148
- pr={0.8}
149
- /> -->
150
- </div>
151
- </div>
152
- <div class="console_body">
153
- {#if manager?.console_logs && Array.isArray(manager?.console_logs)}
154
- <p class="label">Logs:</p>
155
- {#each manager?.console_logs as log}
156
- <div style="display: flex; flex: 1; gap: 1rem; margin: .5rem;">
157
- <div
158
- class="log_frame"
159
- style="--color: {log?.kind == 'error'
160
- ? 'var(--error-t)'
161
- : log?.kind == 'warning'
162
- ? 'var(--warning-t)'
163
- : 'var(--g14-t)'};"
164
- ></div>
165
- <div style="padding-bottom: .5rem;">
166
- {#if log?.label}
167
- <p class="label">{log?.label}</p>
168
- {/if}
169
- {#if typeof log?.value == "object"}
170
- <pre style="margin-top: 0;">{JSON.stringify(log?.value, null, 2)}</pre>
171
- {:else}
172
- <p style="margin-top: 0;">{log?.value}</p>
173
- {/if}
174
- </div>
175
- </div>
176
- {/each}
177
- {/if}
178
- <div>
179
- <p class="label">Result:</p>
180
- {#if typeof manager?.console_result == "object"}
181
- <pre style="margin-top: 0;">{JSON.stringify(manager?.console_result, null, 2)}</pre>
182
- {:else}
183
- <p style="margin-top: 0;">{manager?.console_result}</p>
184
- {/if}
185
- </div>
186
- </div>
187
- </div>
188
- </div>
189
- <div class="workspace_container">
190
- <div class="workspace_bg">
191
- <div class="main_function_container">
192
- <Node manager={manager?.root_node_manager} />
193
- </div>
194
- <pre>{JSON.stringify(manager?.dragging_node, null, 2)}</pre>
195
- {#if manager?.dragging_node?.node_path}
196
- <div
197
- class="node_trash"
198
- class:draggedover={manager?.is_drag_enter}
199
- role="button"
200
- tabindex="0"
201
- aria-label="Drop area"
202
- ondragenter={() => manager?.handle_drag_enter()}
203
- ondragleave={() => manager?.handle_drag_leave()}
204
- ondragover={(e) => e.preventDefault()}
205
- ondrop={() => manager?.drag_or_select_node(null, null, false, null, true)}
206
- >
207
- <div>
208
- <Icon manager={manager?.trashcan_icon_manager} />
209
- <p class="trash_text">Trash</p>
210
- </div>
211
- </div>
212
- {/if}
213
- <div class="node_trash_tbd">
214
- <!-- <InfoBox message={$error_message} /> -->
215
- </div>
216
- </div>
217
- </div>
218
- </div>
219
- </div>
220
-
221
- <style>
222
- .container {
223
- display: flex;
224
- flex-direction: column;
225
- flex: 1;
226
- overflow: hidden;
227
- }
228
- .builder_container {
229
- display: flex;
230
- flex: 1;
231
- overflow: hidden;
232
- }
233
- .support_container {
234
- position: relative;
235
- width: 50rem;
236
- }
237
- .toolbox {
238
- display: flex;
239
- max-height: 100%;
240
- margin: 0.5rem;
241
- }
242
- .node_categories {
243
- display: flex;
244
- flex-direction: column;
245
- gap: 1rem;
246
- padding: 0.5rem;
247
- }
248
- .is_category_selected {
249
- box-shadow:
250
- 0 0.1rem 1rem 0.3rem var(--shadow8-t),
251
- 0 0 0 0.1rem var(--g5-t);
252
- border-radius: 1rem;
253
- }
254
- .node_types_container {
255
- display: flex;
256
- flex-direction: column;
257
- gap: 1rem;
258
- padding-bottom: 30rem;
259
- overflow: scroll;
260
- }
261
- .consolelog_container {
262
- position: absolute;
263
- left: 0.5rem;
264
- right: 0.5rem;
265
- bottom: 0.5rem;
266
- display: flex;
267
- flex-direction: column;
268
- flex: 1;
269
- background-color: var(--bg);
270
- box-shadow: 0 0 1rem var(--shadow8);
271
- border: 1px solid var(--shadow5-t);
272
- border-radius: 1rem;
273
- z-index: 5;
274
- transition: height 1s;
275
- }
276
- .log_frame {
277
- width: 0.5rem;
278
- border-top-left-radius: 2px;
279
- border-bottom-left-radius: 2px;
280
- border-left: 1px solid var(--color);
281
- border-top: 1px solid var(--color);
282
- border-bottom: 1px solid var(--color);
283
- }
284
- .console_header {
285
- background-color: var(--shadow1-t);
286
- border-bottom: 1px solid var(--shadow3-t);
287
- padding: 0.5rem;
288
- margin-bottom: 0.5rem;
289
- display: flex;
290
- align-items: center;
291
- justify-content: space-between;
292
- }
293
- .console_body {
294
- padding: 0.5rem;
295
- overflow: scroll;
296
- }
297
- .workspace_container {
298
- display: flex;
299
- flex: 1;
300
- max-width: 100%;
301
- margin: 0.5rem;
302
- overflow: scroll;
303
- }
304
- .workspace_bg {
305
- position: relative;
306
- margin: 1px;
307
- padding: 1rem;
308
- display: flex;
309
- flex-direction: column;
310
- flex: 1;
311
- overflow: scroll;
312
- max-width: 100%;
313
- max-height: 100%;
314
- box-shadow: 0 0 1px var(--g9-t);
315
- border-radius: 1rem;
316
- background-image: linear-gradient(to right, var(--g20-t) 1px, transparent 1px),
317
- linear-gradient(to bottom, var(--g20-t) 1px, transparent 1px);
318
- background-size: 10px 10px;
319
- background-position: -1px -1px;
320
- }
321
- .main_function_container {
322
- display: flex;
323
- flex: 1;
324
- flex-direction: column;
325
- overflow: scroll;
326
- max-width: 100%;
327
- max-height: 100%;
328
- }
329
- .node_trash_tbd {
330
- position: absolute;
331
- top: 1rem;
332
- right: 1rem;
333
- }
334
- .node_trash {
335
- position: absolute;
336
- bottom: 1rem;
337
- right: 1rem;
338
- min-height: 15rem;
339
- min-width: 15rem;
340
- border-radius: 1rem;
341
- background-color: oklch(var(--l5-t) var(--c7) var(--h1) / var(--o8));
342
- border: 1px solid oklch(var(--l7-t) var(--c14) var(--h1));
343
- display: grid;
344
- place-items: center;
345
- z-index: 2;
346
- }
347
- .draggedover {
348
- background-color: oklch(var(--l5-t) var(--c7) var(--h1) / var(--o10));
349
- border: 1px solid oklch(var(--l5-t) var(--c14) var(--h1));
350
- }
351
- .trash_text {
352
- color: oklch(var(--l10-t) var(--c11) var(--h1));
353
- font-size: 2.4rem;
354
- text-align: center;
355
- }
356
- </style>