sveltekit-ui 1.1.15 → 1.1.17
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/package.json +3 -3
- package/src/routes/+page.svelte +24 -0
- package/dist/Components/Alert/index.svelte +0 -88
- package/dist/Components/Alert/index.svelte.js +0 -101
- package/dist/Components/ArrowToggle/index.svelte +0 -62
- package/dist/Components/Attachment/index.svelte +0 -77
- package/dist/Components/Attachment/index.svelte.js +0 -119
- package/dist/Components/Audio/index.svelte +0 -193
- package/dist/Components/Audio/index.svelte.js +0 -463
- package/dist/Components/AudioEditor/index.svelte +0 -252
- package/dist/Components/AudioEditor/index.svelte.js +0 -977
- package/dist/Components/AudioEditor/samples/alloy-voice-sample.mp3 +0 -0
- package/dist/Components/AudioEditor/samples/echo-voice-sample.mp3 +0 -0
- package/dist/Components/AudioEditor/samples/fable-voice-sample.mp3 +0 -0
- package/dist/Components/AudioEditor/samples/nova-voice-sample.mp3 +0 -0
- package/dist/Components/AudioEditor/samples/onyx-voice-sample.mp3 +0 -0
- package/dist/Components/AudioEditor/samples/shimmer-voice-sample.mp3 +0 -0
- package/dist/Components/AuthCodeInput/index.svelte +0 -85
- package/dist/Components/AuthCodeInput/index.svelte.js +0 -95
- package/dist/Components/Breadcrumbs/index.svelte +0 -27
- package/dist/Components/Breadcrumbs/index.svelte.js +0 -88
- package/dist/Components/Button/index.svelte +0 -721
- package/dist/Components/Button/index.svelte.js +0 -375
- package/dist/Components/Chart/Klines/index.svelte +0 -87
- package/dist/Components/Chart/index.svelte +0 -226
- package/dist/Components/Chart/index.svelte.js +0 -1090
- package/dist/Components/ChartInput/DisplayNav/Klines/index.svelte +0 -150
- package/dist/Components/ChartInput/DisplayNav/Lines/index.svelte +0 -45
- package/dist/Components/ChartInput/DisplayNav/index.svelte +0 -297
- package/dist/Components/ChartInput/EditPanel/index.svelte +0 -155
- package/dist/Components/ChartInput/index.svelte +0 -21
- package/dist/Components/ChartInput/index.svelte.js +0 -671
- package/dist/Components/Checkbox/index.svelte +0 -411
- package/dist/Components/Checkbox/index.svelte.js +0 -178
- package/dist/Components/Code/index.svelte +0 -23
- package/dist/Components/Code/index.svelte.js +0 -33
- package/dist/Components/Color/index.svelte +0 -51
- package/dist/Components/Color/index.svelte.js +0 -31
- package/dist/Components/ColorInput/ChromaPicker/index.svelte +0 -50
- package/dist/Components/ColorInput/ColorPalette/index.svelte +0 -62
- package/dist/Components/ColorInput/OpacityPicker/index.svelte +0 -68
- package/dist/Components/ColorInput/ShowcasePicker/index.svelte +0 -136
- package/dist/Components/ColorInput/index.svelte +0 -70
- package/dist/Components/ColorInput/index.svelte.js +0 -386
- package/dist/Components/ConditionsInput/index.svelte +0 -46
- package/dist/Components/ConditionsInput/index.svelte.js +0 -201
- package/dist/Components/Confetti/index.svelte +0 -98
- package/dist/Components/Confetti/index.svelte.js +0 -94
- package/dist/Components/Content/index.svelte +0 -500
- package/dist/Components/Content/index.svelte.js +0 -910
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte +0 -31
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte.js +0 -258
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte +0 -31
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte.js +0 -258
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte +0 -58
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte.js +0 -206
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte +0 -28
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte.js +0 -224
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte +0 -44
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte.js +0 -272
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte +0 -41
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte.js +0 -202
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte +0 -19
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte.js +0 -117
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte +0 -60
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte.js +0 -542
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte +0 -47
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte.js +0 -185
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte +0 -35
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte.js +0 -222
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte +0 -20
- package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte.js +0 -84
- package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte +0 -25
- package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte.js +0 -91
- package/dist/Components/ContentInput/AttributesInput/index.svelte +0 -352
- package/dist/Components/ContentInput/AttributesInput/index.svelte.js +0 -1436
- package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte +0 -64
- package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte.js +0 -97
- package/dist/Components/ContentInput/ContentPanelBuilder/ElementList/index.svelte +0 -184
- package/dist/Components/ContentInput/ContentPanelBuilder/index.svelte +0 -41
- package/dist/Components/ContentInput/index.svelte +0 -78
- package/dist/Components/ContentInput/index.svelte.js +0 -1197
- package/dist/Components/CronInput/index.svelte +0 -78
- package/dist/Components/CronInput/index.svelte.js +0 -198
- package/dist/Components/DataTypeInput/index.svelte +0 -174
- package/dist/Components/DataTypeInput/index.svelte.js +0 -565
- package/dist/Components/Dropdown/index.svelte +0 -116
- package/dist/Components/Dropdown/index.svelte.js +0 -403
- package/dist/Components/EmailAddress/index.svelte +0 -22
- package/dist/Components/EmailAddress/index.svelte.js +0 -45
- package/dist/Components/ErrorX/index.svelte +0 -58
- package/dist/Components/Eye/index.svelte +0 -57
- package/dist/Components/FileInput/index.svelte +0 -146
- package/dist/Components/FileInput/index.svelte.js +0 -225
- package/dist/Components/Hamburger/index.svelte +0 -99
- package/dist/Components/HorizScrollBox/index.svelte +0 -145
- package/dist/Components/Icon/index.svelte +0 -412
- package/dist/Components/Icon/index.svelte.js +0 -116
- package/dist/Components/IconInput/index.svelte +0 -77
- package/dist/Components/IconInput/index.svelte.js +0 -259
- package/dist/Components/Image/index.svelte +0 -126
- package/dist/Components/Image/index.svelte.js +0 -116
- package/dist/Components/ImageEditor/Image/CropBox/index.svelte +0 -165
- package/dist/Components/ImageEditor/Image/index.svelte +0 -104
- package/dist/Components/ImageEditor/Panels/AI/index.svelte +0 -44
- package/dist/Components/ImageEditor/Panels/Crop/index.svelte +0 -96
- package/dist/Components/ImageEditor/Panels/File/QualityPicker/index.svelte +0 -124
- package/dist/Components/ImageEditor/Panels/File/index.svelte +0 -74
- package/dist/Components/ImageEditor/Panels/Filters/index.svelte +0 -46
- package/dist/Components/ImageEditor/Panels/Resize/index.svelte +0 -58
- package/dist/Components/ImageEditor/index.svelte +0 -93
- package/dist/Components/ImageEditor/index.svelte.js +0 -1961
- package/dist/Components/ImageSlider/index.svelte +0 -124
- package/dist/Components/ImageSlider/index.svelte.js +0 -99
- package/dist/Components/InfoBox/index.svelte +0 -89
- package/dist/Components/Json/Nested/index.svelte +0 -157
- package/dist/Components/Json/index.svelte +0 -60
- package/dist/Components/Json/index.svelte.js +0 -594
- package/dist/Components/LabeledItem/index.svelte +0 -102
- package/dist/Components/Layout/NavBar/FullNav/index.svelte +0 -52
- package/dist/Components/Layout/NavBar/NavGuts/index.svelte +0 -87
- package/dist/Components/Layout/NavBar/index.svelte +0 -72
- package/dist/Components/Layout/index.svelte +0 -149
- package/dist/Components/Layout/index.svelte.js +0 -360
- package/dist/Components/Link/index.svelte +0 -47
- package/dist/Components/Link/index.svelte.js +0 -136
- package/dist/Components/LoadingSuccessDiv/index.svelte +0 -51
- package/dist/Components/LoadingWheel/index.svelte +0 -38
- package/dist/Components/Location/index.svelte +0 -79
- package/dist/Components/Location/index.svelte.js +0 -288
- package/dist/Components/LocationInput/index.svelte +0 -197
- package/dist/Components/LocationInput/index.svelte.js +0 -965
- package/dist/Components/Number/index.svelte +0 -47
- package/dist/Components/Number/index.svelte.js +0 -151
- package/dist/Components/PhoneCountryCode/index.svelte +0 -7
- package/dist/Components/PhoneCountryCode/index.svelte.js +0 -260
- package/dist/Components/PhoneNumber/index.svelte +0 -22
- package/dist/Components/PhoneNumber/index.svelte.js +0 -41
- package/dist/Components/Popover/index.svelte +0 -396
- package/dist/Components/Popover/index.svelte.js +0 -319
- package/dist/Components/Qr/index.svelte +0 -85
- package/dist/Components/Qr/index.svelte.js +0 -301
- package/dist/Components/QrInput/index.svelte +0 -47
- package/dist/Components/QrInput/index.svelte.js +0 -218
- package/dist/Components/Slider/index.svelte +0 -239
- package/dist/Components/Slider/index.svelte.js +0 -469
- package/dist/Components/Spacer/index.svelte +0 -41
- package/dist/Components/StoragePicker/DisplayFile/index.svelte +0 -15
- package/dist/Components/StoragePicker/index.svelte +0 -187
- package/dist/Components/StoragePicker/index.svelte.js +0 -592
- package/dist/Components/SuccessCheck/index.svelte +0 -56
- package/dist/Components/TableAdvanced/ColumnInput/index.svelte +0 -117
- package/dist/Components/TableAdvanced/ColumnInput/index.svelte.js +0 -456
- package/dist/Components/TableAdvanced/FilterInput/index.svelte +0 -54
- package/dist/Components/TableAdvanced/FilterInput/index.svelte.js +0 -247
- package/dist/Components/TableAdvanced/Pagination/index.svelte +0 -43
- package/dist/Components/TableAdvanced/Pagination/index.svelte.js +0 -97
- package/dist/Components/TableAdvanced/SortByInput/index.svelte +0 -72
- package/dist/Components/TableAdvanced/SortByInput/index.svelte.js +0 -176
- package/dist/Components/TableAdvanced/index.svelte +0 -275
- package/dist/Components/TableAdvanced/index.svelte.js +0 -1565
- package/dist/Components/Tag/index.svelte +0 -45
- package/dist/Components/Tag/index.svelte.js +0 -76
- package/dist/Components/TextArrayInput/index.svelte +0 -108
- package/dist/Components/TextArrayInput/index.svelte.js +0 -239
- package/dist/Components/TextInput/PasswordTooltip/index.svelte +0 -89
- package/dist/Components/TextInput/index.svelte +0 -223
- package/dist/Components/TextInput/index.svelte.js +0 -447
- package/dist/Components/Time/index.svelte +0 -7
- package/dist/Components/Time/index.svelte.js +0 -38
- package/dist/Components/TimeInput/NumberToggler/index.svelte +0 -34
- package/dist/Components/TimeInput/NumberToggler/index.svelte.js +0 -79
- package/dist/Components/TimeInput/index.js +0 -702
- package/dist/Components/TimeInput/index.svelte +0 -211
- package/dist/Components/TimeInput/index.svelte.js +0 -638
- package/dist/Components/Tooltip/index.svelte +0 -143
- package/dist/Components/TransparentBackground/index.svelte +0 -153
- package/dist/Components/TypingDots/index.svelte +0 -84
- package/dist/Components/VariablePathInput/index.svelte +0 -63
- package/dist/Components/VariablePathInput/index.svelte.js +0 -273
- package/dist/Components/VideoTBD/index.svelte +0 -100
- package/dist/Components/XFollow/index.svelte +0 -42
- package/dist/Components/XPost/index.svelte +0 -52
- package/dist/Components/XPost/index.svelte.js +0 -64
- package/dist/Components/YoutubeChannelButton/index.svelte +0 -82
- package/dist/Components/YoutubeVideo/index.svelte +0 -73
- package/dist/Components/YoutubeVideo/index.svelte.js +0 -54
- package/dist/actions/draggable.js +0 -49
- package/dist/actions/index.js +0 -24
- package/dist/actions/no_spaces.js +0 -33
- package/dist/actions/numbers_only.js +0 -26
- package/dist/actions/scroll_y.js +0 -28
- package/dist/actions/stop_scroll_propagation_y.js +0 -42
- package/dist/actions/swipe_handler.js +0 -295
- package/dist/client/astc_formatting/index.js +0 -1128
- package/dist/client/docs/index.js +0 -7622
- package/dist/client/index.js +0 -735
- package/dist/client/types/index.js +0 -2812
- package/dist/index.js +0 -180
- package/dist/style.css +0 -682
|
@@ -1,565 +0,0 @@
|
|
|
1
|
-
import { node_types, json_to_data_type, deep_copy } from "../../client/index.js"
|
|
2
|
-
import { create_popover_manager } from "../Popover/index.svelte.js"
|
|
3
|
-
import { create_button_manager } from "../Button/index.svelte.js"
|
|
4
|
-
import { create_text_input_manager } from "../TextInput/index.svelte.js"
|
|
5
|
-
import { create_breadcrumbs_manager } from "../Breadcrumbs/index.svelte.js"
|
|
6
|
-
import { create_dropdown_manager } from "../Dropdown/index.svelte.js"
|
|
7
|
-
import { create_unique_id, set_closurable } from "../../client/index.js"
|
|
8
|
-
|
|
9
|
-
export function create_data_type_input_manager(config) {
|
|
10
|
-
const id = create_unique_id(null, 20)
|
|
11
|
-
|
|
12
|
-
let label = $state(null)
|
|
13
|
-
let initial_val = $state(null)
|
|
14
|
-
let val = $state(null)
|
|
15
|
-
let property_type_options = $state(null)
|
|
16
|
-
let type_option_buttons = $state(null)
|
|
17
|
-
let breadcrumbs_manager = $state(null)
|
|
18
|
-
let popover_manager = $state(null)
|
|
19
|
-
let search_text_input_manager = $state(null)
|
|
20
|
-
let type_options_dropdown_manager = $state(null)
|
|
21
|
-
let items_type_options_dropdown_manager = $state(null)
|
|
22
|
-
let property_key_to_add_text_manager = $state(null)
|
|
23
|
-
let property_key_to_add_finish_button_manager = $state(null)
|
|
24
|
-
let edit_items_type_button_manager = $state(null)
|
|
25
|
-
let clear_breadcrumbs_button_manager = $state(null)
|
|
26
|
-
let guess_from_variables_button_manager = $state(null)
|
|
27
|
-
let finish_button_manager = $state(null)
|
|
28
|
-
let table_id_for_foreign_row_text_input_manager = $state(null)
|
|
29
|
-
let property_key_table_id_for_foreign_row_text_input_manager = $state(null)
|
|
30
|
-
let table_options = $state(null)
|
|
31
|
-
|
|
32
|
-
let data_sample = $derived(set_closurable(config?.data_sample, null))
|
|
33
|
-
|
|
34
|
-
let val_at_path = $derived(get_val_at_path())
|
|
35
|
-
let type_options = $derived(
|
|
36
|
-
Object.entries(node_types)
|
|
37
|
-
.filter(([key, value]) => {
|
|
38
|
-
if (search_text_input_manager?.val && typeof search_text_input_manager?.val === "string") {
|
|
39
|
-
return (
|
|
40
|
-
value?.kind === "literal" &&
|
|
41
|
-
value?.name?.toLowerCase().includes(search_text_input_manager?.val?.toLowerCase())
|
|
42
|
-
)
|
|
43
|
-
}
|
|
44
|
-
return value?.kind === "literal"
|
|
45
|
-
})
|
|
46
|
-
.map(([key, value]) => ({ key, name: value?.name }))
|
|
47
|
-
)
|
|
48
|
-
let type_display_name = $derived(get_type_display_name(val ?? null))
|
|
49
|
-
|
|
50
|
-
function set_type_option_buttons() {
|
|
51
|
-
let type_option_buttons_loc = []
|
|
52
|
-
if (Array.isArray(type_options) && type_options?.length > 0) {
|
|
53
|
-
for (let type_option of type_options) {
|
|
54
|
-
let button_manager = create_button_manager({
|
|
55
|
-
min_height: 14,
|
|
56
|
-
mt: 0.5,
|
|
57
|
-
mb: 0.5,
|
|
58
|
-
ml: 0.5,
|
|
59
|
-
mr: 0.5,
|
|
60
|
-
type: "outlined",
|
|
61
|
-
on_click: () => {
|
|
62
|
-
set_data_type(type_option?.key)
|
|
63
|
-
search_text_input_manager?.set_val(null)
|
|
64
|
-
},
|
|
65
|
-
})
|
|
66
|
-
type_option_buttons_loc.push({
|
|
67
|
-
key: type_option?.key,
|
|
68
|
-
name: type_option?.name,
|
|
69
|
-
button_manager: button_manager,
|
|
70
|
-
})
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
type_option_buttons = type_option_buttons_loc
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
function get_val_at_path() {
|
|
77
|
-
let val_at_path_loc = deep_copy(val)
|
|
78
|
-
if (Array.isArray(breadcrumbs_manager?.val) && breadcrumbs_manager?.val?.length > 0) {
|
|
79
|
-
for (let i = 0; i < breadcrumbs_manager?.val?.length; i++) {
|
|
80
|
-
if (["array_uniform_literal", "object_uniform_literal"].includes(val_at_path_loc?.type)) {
|
|
81
|
-
val_at_path_loc = val_at_path_loc.items
|
|
82
|
-
} else {
|
|
83
|
-
val_at_path_loc = val_at_path_loc.properties[breadcrumbs_manager?.val?.[i]]
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return val_at_path_loc
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
function set_property_type_options() {
|
|
91
|
-
let property_type_options_loc = {}
|
|
92
|
-
for (let property_key of Object.keys(val_at_path?.properties || {}).sort(
|
|
93
|
-
(a, b) => val_at_path?.properties?.[a]?.display_order - val_at_path.properties?.[b]?.display_order
|
|
94
|
-
)) {
|
|
95
|
-
let edit_popover_manager = $state(null)
|
|
96
|
-
let edit_popover_trigger_button_manager = $state(null)
|
|
97
|
-
edit_popover_manager = create_popover_manager({
|
|
98
|
-
min_width: 200,
|
|
99
|
-
target_width: 200,
|
|
100
|
-
min_height: 180,
|
|
101
|
-
target_height: 200,
|
|
102
|
-
type: "dropdown",
|
|
103
|
-
header: "Edit Property",
|
|
104
|
-
anchor_id: () => `button_${edit_popover_trigger_button_manager?.id}`,
|
|
105
|
-
})
|
|
106
|
-
edit_popover_trigger_button_manager = create_button_manager({
|
|
107
|
-
type: "soft",
|
|
108
|
-
support_icon: "edit",
|
|
109
|
-
min_height: 2.4,
|
|
110
|
-
border_radius: 0.5,
|
|
111
|
-
is_icon_shimmyable: true,
|
|
112
|
-
is_uniform: true,
|
|
113
|
-
popover_target: () => `popover_${edit_popover_manager?.id}`,
|
|
114
|
-
})
|
|
115
|
-
property_type_options_loc[property_key] = {
|
|
116
|
-
key: property_key,
|
|
117
|
-
type_options_dropdown_manager: create_dropdown_manager({
|
|
118
|
-
button_type: "outlined",
|
|
119
|
-
is_button_compressed: true,
|
|
120
|
-
is_set_null_button: true,
|
|
121
|
-
val: val_at_path?.properties?.[property_key]?.type,
|
|
122
|
-
options: type_options,
|
|
123
|
-
on_item_click: (input) => set_key_data_type(input?.key, null, property_key),
|
|
124
|
-
}),
|
|
125
|
-
edit_popover_manager: edit_popover_manager,
|
|
126
|
-
edit_popover_trigger_button_manager: edit_popover_trigger_button_manager,
|
|
127
|
-
to_breadcrumbs_button_manager: create_button_manager({
|
|
128
|
-
type: "soft",
|
|
129
|
-
text: "Edit",
|
|
130
|
-
text_align: "left",
|
|
131
|
-
support_icon: "arrow_tailed",
|
|
132
|
-
on_click: () => {
|
|
133
|
-
edit_popover_manager.close()
|
|
134
|
-
breadcrumbs_manager?.set_val([...breadcrumbs_manager?.val, property_key])
|
|
135
|
-
handle_path_change()
|
|
136
|
-
},
|
|
137
|
-
}),
|
|
138
|
-
shift_up_button_manager: create_button_manager({
|
|
139
|
-
type: "soft",
|
|
140
|
-
text: "Shift Up",
|
|
141
|
-
text_align: "left",
|
|
142
|
-
support_icon: "arrow_tailed",
|
|
143
|
-
icon_deg: 270,
|
|
144
|
-
on_click: () => shift_object_property(property_key, -1),
|
|
145
|
-
}),
|
|
146
|
-
shift_down_button_manager: create_button_manager({
|
|
147
|
-
type: "soft",
|
|
148
|
-
text: "Shift Down",
|
|
149
|
-
text_align: "left",
|
|
150
|
-
support_icon: "arrow_tailed",
|
|
151
|
-
icon_deg: 90,
|
|
152
|
-
on_click: () => shift_object_property(property_key, 1),
|
|
153
|
-
}),
|
|
154
|
-
delete_button_manager: create_button_manager({
|
|
155
|
-
type: "soft",
|
|
156
|
-
text: "Delete",
|
|
157
|
-
text_align: "left",
|
|
158
|
-
support_icon: "trashcan",
|
|
159
|
-
on_click: () => delete_object_property(property_key),
|
|
160
|
-
}),
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
property_type_options = property_type_options_loc
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
function get_type_display_name(val) {
|
|
167
|
-
if (!val?.type) {
|
|
168
|
-
return null
|
|
169
|
-
} else {
|
|
170
|
-
let display_name = ""
|
|
171
|
-
if (val?.type == "array_literal") {
|
|
172
|
-
display_name = "Array"
|
|
173
|
-
if (val?.items?.type) {
|
|
174
|
-
let items_name = ""
|
|
175
|
-
if (Array.isArray(val?.items)) {
|
|
176
|
-
for (let item of val?.items) {
|
|
177
|
-
items_name += get_type_display_name(item)
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
display_name = `[${items_name}]`
|
|
181
|
-
}
|
|
182
|
-
} else if (val?.type == "array_uniform_literal") {
|
|
183
|
-
display_name = "Array Uniform"
|
|
184
|
-
if (val?.items?.type) {
|
|
185
|
-
display_name = "[" + get_type_display_name(val?.items) + "]"
|
|
186
|
-
}
|
|
187
|
-
} else if (val?.type == "object_literal") {
|
|
188
|
-
display_name = "Object"
|
|
189
|
-
if (Object.keys(val?.properties || {})?.length > 0) {
|
|
190
|
-
let property_types = []
|
|
191
|
-
for (let key of Object.keys(val?.properties || {})) {
|
|
192
|
-
property_types.push(`${key}: ${get_type_display_name(val?.properties?.[key])}`)
|
|
193
|
-
}
|
|
194
|
-
display_name = `{${property_types.join(", ")}}`
|
|
195
|
-
}
|
|
196
|
-
} else if (val?.type == "object_uniform_literal") {
|
|
197
|
-
display_name = "Object Uniform"
|
|
198
|
-
if (val?.items?.type) {
|
|
199
|
-
display_name = "{[key]:" + get_type_display_name(val?.items) + "}"
|
|
200
|
-
}
|
|
201
|
-
} else {
|
|
202
|
-
display_name = node_types?.[val?.type]?.name
|
|
203
|
-
}
|
|
204
|
-
return display_name
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
function set_items_data_type(type_key, breadcrumbs_input = null) {
|
|
209
|
-
const breadcrumbs_to_use = Array.isArray(breadcrumbs_input)
|
|
210
|
-
? breadcrumbs_input
|
|
211
|
-
: [...(Array.isArray(breadcrumbs_manager?.val) ? breadcrumbs_manager?.val : []), "items"]
|
|
212
|
-
items_type_options_dropdown_manager?.set_val(type_key)
|
|
213
|
-
let val_at_path_loc = {
|
|
214
|
-
type: type_key,
|
|
215
|
-
attributes: {},
|
|
216
|
-
...(type_key === "object_literal" ? { properties: {} } : {}),
|
|
217
|
-
...(type_key === "array_literal" ? { items: [] } : {}),
|
|
218
|
-
...(["array_uniform_literal", "object_uniform_literal"].includes(type_key) ? { items: {} } : {}),
|
|
219
|
-
}
|
|
220
|
-
val = set_structure_at_path(val, val_at_path_loc, breadcrumbs_to_use)
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
function set_key_data_type(type_key, breadcrumbs_input = null, key) {
|
|
224
|
-
const breadcrumbs_to_use = Array.isArray(breadcrumbs_input)
|
|
225
|
-
? breadcrumbs_input
|
|
226
|
-
: [...(Array.isArray(breadcrumbs_manager?.val) ? breadcrumbs_manager?.val : []), key]
|
|
227
|
-
items_type_options_dropdown_manager?.set_val(type_key)
|
|
228
|
-
let val_at_path_loc = {
|
|
229
|
-
type: type_key,
|
|
230
|
-
attributes: {},
|
|
231
|
-
...(type_key === "object_literal" ? { properties: {} } : {}),
|
|
232
|
-
...(type_key === "array_literal" ? { items: [] } : {}),
|
|
233
|
-
...(["array_uniform_literal", "object_uniform_literal"].includes(type_key) ? { items: {} } : {}),
|
|
234
|
-
}
|
|
235
|
-
val = set_structure_at_path(val, val_at_path_loc, breadcrumbs_to_use)
|
|
236
|
-
property_type_options?.[key]?.type_options_dropdown_manager?.set_val(type_key)
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
function set_data_type(type_key, breadcrumbs_input = null) {
|
|
240
|
-
const breadcrumbs_to_use = Array.isArray(breadcrumbs_input)
|
|
241
|
-
? breadcrumbs_input
|
|
242
|
-
: Array.isArray(breadcrumbs_manager?.val)
|
|
243
|
-
? breadcrumbs_manager?.val
|
|
244
|
-
: []
|
|
245
|
-
type_options_dropdown_manager?.set_val(type_key)
|
|
246
|
-
items_type_options_dropdown_manager?.set_val(null)
|
|
247
|
-
let val_at_path_loc = {
|
|
248
|
-
type: type_key,
|
|
249
|
-
attributes: {},
|
|
250
|
-
...(type_key === "object_literal" ? { properties: {} } : {}),
|
|
251
|
-
...(type_key === "array_literal" ? { items: [] } : {}),
|
|
252
|
-
...(["array_uniform_literal", "object_uniform_literal"].includes(type_key) ? { items: {} } : {}),
|
|
253
|
-
}
|
|
254
|
-
if (type_key == "object_literal") {
|
|
255
|
-
set_property_type_options()
|
|
256
|
-
}
|
|
257
|
-
val = set_structure_at_path(val, val_at_path_loc, breadcrumbs_to_use)
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
function set_structure_at_path(iter_structure, value, remaining_path) {
|
|
261
|
-
if (!Array.isArray(remaining_path) || remaining_path?.length == 0) {
|
|
262
|
-
return value
|
|
263
|
-
}
|
|
264
|
-
const [first, ...rest_of_path] = remaining_path
|
|
265
|
-
if (["array_uniform_literal", "object_uniform_literal"].includes(iter_structure?.type)) {
|
|
266
|
-
if (remaining_path?.length == 1) {
|
|
267
|
-
iter_structure.items = value
|
|
268
|
-
} else {
|
|
269
|
-
iter_structure.items = set_structure_at_path(iter_structure.items, value, rest_of_path)
|
|
270
|
-
}
|
|
271
|
-
} else {
|
|
272
|
-
if (remaining_path?.length == 1) {
|
|
273
|
-
iter_structure.properties[first] = value
|
|
274
|
-
} else {
|
|
275
|
-
iter_structure.properties[first] = set_structure_at_path(
|
|
276
|
-
iter_structure?.properties?.[first],
|
|
277
|
-
value,
|
|
278
|
-
rest_of_path
|
|
279
|
-
)
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
items_type_options_dropdown_manager?.set_val(val_at_path?.items?.type)
|
|
283
|
-
return iter_structure
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
function add_object_property(key = null) {
|
|
287
|
-
if (key == null) {
|
|
288
|
-
key = property_key_to_add_text_manager?.val
|
|
289
|
-
}
|
|
290
|
-
if (!key) {
|
|
291
|
-
return
|
|
292
|
-
}
|
|
293
|
-
const clean_key_to_add = key
|
|
294
|
-
.toLowerCase()
|
|
295
|
-
.replace(/[^a-z0-9]/g, "_")
|
|
296
|
-
.replace(/_+/g, "_")
|
|
297
|
-
.replace(/^_+|_+$/g, "")
|
|
298
|
-
let val_at_path_loc = val_at_path
|
|
299
|
-
val_at_path_loc.properties[clean_key_to_add] = {
|
|
300
|
-
display_order: Object.keys(val_at_path_loc.properties || {})?.length,
|
|
301
|
-
}
|
|
302
|
-
const new_val = set_structure_at_path(val, val_at_path_loc, breadcrumbs_manager?.val)
|
|
303
|
-
val = new_val
|
|
304
|
-
property_key_to_add_text_manager?.set_val(null)
|
|
305
|
-
set_property_type_options()
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
function delete_object_property(property_key) {
|
|
309
|
-
let val_at_path_loc = val_at_path
|
|
310
|
-
const { [property_key]: _, ...new_properties } = val_at_path_loc.properties
|
|
311
|
-
val_at_path_loc.properties = new_properties
|
|
312
|
-
property_type_options[property_key].edit_popover_manager.close()
|
|
313
|
-
val = set_structure_at_path(val, val_at_path_loc, breadcrumbs_manager?.val)
|
|
314
|
-
set_property_type_options()
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
function shift_object_property(property_key, direction) {
|
|
318
|
-
function reset_display_order(properties) {
|
|
319
|
-
const keys = Object.keys(properties).sort((a, b) => {
|
|
320
|
-
const order_a = properties[a].display_order || 0
|
|
321
|
-
const order_b = properties[b].display_order || 0
|
|
322
|
-
return order_a - order_b
|
|
323
|
-
})
|
|
324
|
-
keys.forEach((key, index) => {
|
|
325
|
-
properties[key].display_order = index
|
|
326
|
-
})
|
|
327
|
-
}
|
|
328
|
-
const properties = val_at_path?.properties
|
|
329
|
-
let display_order = properties?.[property_key]?.display_order
|
|
330
|
-
if (display_order == null) {
|
|
331
|
-
reset_display_order(properties)
|
|
332
|
-
display_order = properties?.[property_key]?.display_order
|
|
333
|
-
}
|
|
334
|
-
for (let key in properties) {
|
|
335
|
-
if (properties?.[key]?.display_order === display_order + direction) {
|
|
336
|
-
properties[key].display_order = display_order
|
|
337
|
-
properties[property_key].display_order += direction
|
|
338
|
-
break
|
|
339
|
-
}
|
|
340
|
-
}
|
|
341
|
-
reset_display_order(properties)
|
|
342
|
-
let val_at_path_loc = val_at_path
|
|
343
|
-
val_at_path_loc.properties = properties
|
|
344
|
-
val = set_structure_at_path(val, val_at_path_loc, breadcrumbs_manager?.val)
|
|
345
|
-
property_type_options[property_key].edit_popover_manager.close()
|
|
346
|
-
set_property_type_options()
|
|
347
|
-
}
|
|
348
|
-
|
|
349
|
-
function finish() {
|
|
350
|
-
popover_manager.close()
|
|
351
|
-
if (typeof config?.on_finish == "function") {
|
|
352
|
-
config?.on_finish(val)
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
|
|
356
|
-
function guess_from_data(data) {
|
|
357
|
-
val = json_to_data_type(data)
|
|
358
|
-
set_property_type_options()
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
function handle_path_change() {
|
|
362
|
-
type_options_dropdown_manager?.set_val(val_at_path?.type)
|
|
363
|
-
items_type_options_dropdown_manager?.set_val(val_at_path?.items?.type)
|
|
364
|
-
table_id_for_foreign_row_text_input_manager.set_val(val_at_path?.attributes?.table_id ?? null)
|
|
365
|
-
property_key_table_id_for_foreign_row_text_input_manager.set_val(
|
|
366
|
-
val_at_path?.attributes?.property_key_table_id ?? null
|
|
367
|
-
)
|
|
368
|
-
set_property_type_options()
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
function guess_from_variables() {
|
|
372
|
-
guess_from_data(data_sample)
|
|
373
|
-
}
|
|
374
|
-
|
|
375
|
-
function init(config) {
|
|
376
|
-
label = config?.label ?? "Data Type"
|
|
377
|
-
initial_val = config?.val ?? null
|
|
378
|
-
val = config?.val
|
|
379
|
-
popover_manager = create_popover_manager({
|
|
380
|
-
type: "center",
|
|
381
|
-
min_width: 280,
|
|
382
|
-
target_width: 600,
|
|
383
|
-
min_height: 280,
|
|
384
|
-
target_height: 600,
|
|
385
|
-
header: "Data Type Builder",
|
|
386
|
-
})
|
|
387
|
-
search_text_input_manager = create_text_input_manager({
|
|
388
|
-
type: "search",
|
|
389
|
-
autocomplete: "off",
|
|
390
|
-
placeholder: "search",
|
|
391
|
-
mb: 0.5,
|
|
392
|
-
})
|
|
393
|
-
type_options_dropdown_manager = create_dropdown_manager({
|
|
394
|
-
button_type: "outlined",
|
|
395
|
-
is_botton_compressed: true,
|
|
396
|
-
is_set_null_button: true,
|
|
397
|
-
val: val_at_path?.type,
|
|
398
|
-
options: type_options,
|
|
399
|
-
on_item_click: (input) => set_data_type(input?.key),
|
|
400
|
-
})
|
|
401
|
-
items_type_options_dropdown_manager = create_dropdown_manager({
|
|
402
|
-
button_type: "outlined",
|
|
403
|
-
is_botton_compressed: true,
|
|
404
|
-
is_set_null_button: true,
|
|
405
|
-
val: val_at_path?.items?.type,
|
|
406
|
-
options: type_options,
|
|
407
|
-
on_item_click: (input) => set_items_data_type(input?.key),
|
|
408
|
-
})
|
|
409
|
-
breadcrumbs_manager = create_breadcrumbs_manager({
|
|
410
|
-
val: config?.breadcrumbs ?? [],
|
|
411
|
-
on_change: () => handle_path_change(),
|
|
412
|
-
})
|
|
413
|
-
property_key_to_add_text_manager = create_text_input_manager({
|
|
414
|
-
label: "Property Key",
|
|
415
|
-
placeholder: "some_identifier",
|
|
416
|
-
})
|
|
417
|
-
property_key_to_add_finish_button_manager = create_button_manager({
|
|
418
|
-
is_compressed: true,
|
|
419
|
-
text: "Add Property",
|
|
420
|
-
is_disabled: () => !property_key_to_add_text_manager?.val,
|
|
421
|
-
on_click: () => add_object_property(),
|
|
422
|
-
})
|
|
423
|
-
edit_items_type_button_manager = create_button_manager({
|
|
424
|
-
type: "outlined",
|
|
425
|
-
text: "Edit Items Type",
|
|
426
|
-
text_align: "left",
|
|
427
|
-
support_icon: "arrow_tailed",
|
|
428
|
-
on_click: () => {
|
|
429
|
-
breadcrumbs_manager?.set_val([
|
|
430
|
-
...(Array.isArray(breadcrumbs_manager?.val) ? breadcrumbs_manager?.val : []),
|
|
431
|
-
"items",
|
|
432
|
-
])
|
|
433
|
-
handle_path_change()
|
|
434
|
-
},
|
|
435
|
-
})
|
|
436
|
-
clear_breadcrumbs_button_manager = create_button_manager({
|
|
437
|
-
type: "outlined",
|
|
438
|
-
h: 11,
|
|
439
|
-
l: 3,
|
|
440
|
-
c: 1,
|
|
441
|
-
is_uniform: true,
|
|
442
|
-
support_icon: "x",
|
|
443
|
-
on_click: () => set_data_type(null),
|
|
444
|
-
})
|
|
445
|
-
finish_button_manager = create_button_manager({
|
|
446
|
-
text: "Finish",
|
|
447
|
-
on_click: () => finish(),
|
|
448
|
-
})
|
|
449
|
-
guess_from_variables_button_manager = create_button_manager({
|
|
450
|
-
type: "outlined",
|
|
451
|
-
text: "Guess from Data Sample",
|
|
452
|
-
is_compressed: true,
|
|
453
|
-
on_click: () => guess_from_variables(),
|
|
454
|
-
})
|
|
455
|
-
table_options = config?.table_options
|
|
456
|
-
table_id_for_foreign_row_text_input_manager = create_dropdown_manager({
|
|
457
|
-
label: "Table ID for Foreign Row",
|
|
458
|
-
is_button_compressed: true,
|
|
459
|
-
options: table_options,
|
|
460
|
-
on_item_click: (input) => {
|
|
461
|
-
let val_at_path_loc = deep_copy(val_at_path)
|
|
462
|
-
val_at_path_loc.attributes.table_id = input?.key
|
|
463
|
-
val = set_structure_at_path(val, val_at_path_loc, breadcrumbs_manager?.val)
|
|
464
|
-
},
|
|
465
|
-
})
|
|
466
|
-
property_key_table_id_for_foreign_row_text_input_manager = create_dropdown_manager({
|
|
467
|
-
label: "Property Key Table ID for Foreign Row",
|
|
468
|
-
is_button_compressed: true,
|
|
469
|
-
options: table_options,
|
|
470
|
-
on_item_click: (input) => {
|
|
471
|
-
let val_at_path_loc = deep_copy(val_at_path)
|
|
472
|
-
val_at_path_loc.attributes.property_key_table_id = input?.key
|
|
473
|
-
val = set_structure_at_path(val, val_at_path_loc, breadcrumbs_manager?.val)
|
|
474
|
-
},
|
|
475
|
-
})
|
|
476
|
-
|
|
477
|
-
set_type_option_buttons()
|
|
478
|
-
set_property_type_options()
|
|
479
|
-
}
|
|
480
|
-
|
|
481
|
-
init(config)
|
|
482
|
-
|
|
483
|
-
return {
|
|
484
|
-
id,
|
|
485
|
-
get label() {
|
|
486
|
-
return label
|
|
487
|
-
},
|
|
488
|
-
get initial_val() {
|
|
489
|
-
return initial_val
|
|
490
|
-
},
|
|
491
|
-
get val() {
|
|
492
|
-
return val
|
|
493
|
-
},
|
|
494
|
-
get val() {
|
|
495
|
-
return val
|
|
496
|
-
},
|
|
497
|
-
get popover_manager() {
|
|
498
|
-
return popover_manager
|
|
499
|
-
},
|
|
500
|
-
get search_text_input_manager() {
|
|
501
|
-
return search_text_input_manager
|
|
502
|
-
},
|
|
503
|
-
get type_option_buttons() {
|
|
504
|
-
return type_option_buttons
|
|
505
|
-
},
|
|
506
|
-
get breadcrumbs_manager() {
|
|
507
|
-
return breadcrumbs_manager
|
|
508
|
-
},
|
|
509
|
-
get items_type_options_dropdown_manager() {
|
|
510
|
-
return items_type_options_dropdown_manager
|
|
511
|
-
},
|
|
512
|
-
get property_type_options() {
|
|
513
|
-
return property_type_options
|
|
514
|
-
},
|
|
515
|
-
get type_options_dropdown_manager() {
|
|
516
|
-
return type_options_dropdown_manager
|
|
517
|
-
},
|
|
518
|
-
get property_key_to_add_text_manager() {
|
|
519
|
-
return property_key_to_add_text_manager
|
|
520
|
-
},
|
|
521
|
-
get property_key_to_add_finish_button_manager() {
|
|
522
|
-
return property_key_to_add_finish_button_manager
|
|
523
|
-
},
|
|
524
|
-
get edit_items_type_button_manager() {
|
|
525
|
-
return edit_items_type_button_manager
|
|
526
|
-
},
|
|
527
|
-
get finish_button_manager() {
|
|
528
|
-
return finish_button_manager
|
|
529
|
-
},
|
|
530
|
-
get table_id_for_foreign_row_text_input_manager() {
|
|
531
|
-
return table_id_for_foreign_row_text_input_manager
|
|
532
|
-
},
|
|
533
|
-
get property_key_table_id_for_foreign_row_text_input_manager() {
|
|
534
|
-
return property_key_table_id_for_foreign_row_text_input_manager
|
|
535
|
-
},
|
|
536
|
-
get table_options() {
|
|
537
|
-
return table_options
|
|
538
|
-
},
|
|
539
|
-
get clear_breadcrumbs_button_manager() {
|
|
540
|
-
return clear_breadcrumbs_button_manager
|
|
541
|
-
},
|
|
542
|
-
get guess_from_variables_button_manager() {
|
|
543
|
-
return guess_from_variables_button_manager
|
|
544
|
-
},
|
|
545
|
-
get type_options() {
|
|
546
|
-
return type_options
|
|
547
|
-
},
|
|
548
|
-
get type_display_name() {
|
|
549
|
-
return type_display_name
|
|
550
|
-
},
|
|
551
|
-
get val_at_path() {
|
|
552
|
-
return val_at_path
|
|
553
|
-
},
|
|
554
|
-
get val() {
|
|
555
|
-
return val
|
|
556
|
-
},
|
|
557
|
-
set_data_type,
|
|
558
|
-
add_object_property,
|
|
559
|
-
delete_object_property,
|
|
560
|
-
shift_object_property,
|
|
561
|
-
finish,
|
|
562
|
-
guess_from_data,
|
|
563
|
-
guess_from_variables,
|
|
564
|
-
}
|
|
565
|
-
}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
import Popover from "../Popover/index.svelte"
|
|
3
|
-
import Icon from "../Icon/index.svelte"
|
|
4
|
-
import Button from "../Button/index.svelte"
|
|
5
|
-
import TextInput from "../TextInput/index.svelte"
|
|
6
|
-
import Spacer from "../Spacer/index.svelte"
|
|
7
|
-
import HorizScrollBox from "../HorizScrollBox/index.svelte"
|
|
8
|
-
import ArrowToggle from "../ArrowToggle/index.svelte"
|
|
9
|
-
import LoadingWheel from "../LoadingWheel/index.svelte"
|
|
10
|
-
|
|
11
|
-
let { manager } = $props()
|
|
12
|
-
|
|
13
|
-
</script>
|
|
14
|
-
|
|
15
|
-
{#if manager?.type == 'dropdown' || manager?.is_collapsed}
|
|
16
|
-
<div>
|
|
17
|
-
{#if manager?.label || manager?.error_message}
|
|
18
|
-
<div>
|
|
19
|
-
{#if manager?.label}
|
|
20
|
-
<p class="label">{manager?.label}:</p>
|
|
21
|
-
{/if}
|
|
22
|
-
{#if manager?.error_message}
|
|
23
|
-
<p class="error_text">{manager?.error_message}</p>
|
|
24
|
-
{/if}
|
|
25
|
-
</div>
|
|
26
|
-
{/if}
|
|
27
|
-
{#if !manager?.is_hide_button}
|
|
28
|
-
<Button manager={manager?.toggle_button_manager}>
|
|
29
|
-
{#snippet content()}
|
|
30
|
-
<div style="display: flex; align-items: center; gap: .2rem; justify-content: space-between;">
|
|
31
|
-
<p style="{manager?.selected_font_size ? `font-size: ${manager?.selected_font_size}rem;` : ""}">{manager?.toggle_button_text}</p>
|
|
32
|
-
{#if manager?.is_show_arrow}
|
|
33
|
-
<ArrowToggle is_open={manager?.popover_manager?.is_show} />
|
|
34
|
-
{/if}
|
|
35
|
-
</div>
|
|
36
|
-
{/snippet}
|
|
37
|
-
</Button>
|
|
38
|
-
{/if}
|
|
39
|
-
<Popover manager={manager?.popover_manager}>
|
|
40
|
-
{#snippet content(toggle_popover)}
|
|
41
|
-
<div id={`dropdown_popover_container_${manager?.id}`}>
|
|
42
|
-
{#if manager?.is_searchable}
|
|
43
|
-
<div style="position: relative; display: inline-block; width: 100%;">
|
|
44
|
-
<div>
|
|
45
|
-
<TextInput manager={manager?.search_text_input_manager} />
|
|
46
|
-
</div>
|
|
47
|
-
{#if Array.isArray(manager?.search_requests_is_loading) && manager?.search_requests_is_loading.length}
|
|
48
|
-
<div style="position: absolute; top: 50%; right: 0.5rem; transform: translateY(-50%); pointer-events: none; width: 2rem; aspect-ratio: 1;">
|
|
49
|
-
<LoadingWheel />
|
|
50
|
-
</div>
|
|
51
|
-
{/if}
|
|
52
|
-
</div>
|
|
53
|
-
{/if}
|
|
54
|
-
{#if manager?.is_set_null_button}
|
|
55
|
-
<Button manager={manager?.clear_button_manager} />
|
|
56
|
-
{/if}
|
|
57
|
-
{#if Array.isArray(manager?.filtered_button_managers) && manager?.filtered_button_managers.length > 0}
|
|
58
|
-
{#each manager?.filtered_button_managers as filtered_button_manager}
|
|
59
|
-
<Button manager={filtered_button_manager} />
|
|
60
|
-
{/each}
|
|
61
|
-
{/if}
|
|
62
|
-
</div>
|
|
63
|
-
{/snippet}
|
|
64
|
-
</Popover>
|
|
65
|
-
</div>
|
|
66
|
-
{:else if manager?.type == "horiz_selector"}
|
|
67
|
-
<div class="horiz_container">
|
|
68
|
-
{#if manager?.header || manager?.header_icon}
|
|
69
|
-
<div class="horiz_header_container" style="min-width: {manager?.min_header_width}rem;">
|
|
70
|
-
{#if manager?.header_icon}
|
|
71
|
-
<Icon manager={manager?.header_icon_manager} />
|
|
72
|
-
{/if}
|
|
73
|
-
{#if manager?.header}
|
|
74
|
-
<h3 class="horiz_header" style="color: {manager?.is_disabled ? 'var(--g12-t)' : 'var(--g4-t)'}">
|
|
75
|
-
{manager?.header}
|
|
76
|
-
</h3>
|
|
77
|
-
{/if}
|
|
78
|
-
</div>
|
|
79
|
-
<Spacer is_vert={true} mr={0.5} color={manager?.spacer_color} />
|
|
80
|
-
{/if}
|
|
81
|
-
<HorizScrollBox>
|
|
82
|
-
{#if manager?.is_set_null_button}
|
|
83
|
-
<Button manager={manager?.clear_button_manager} />
|
|
84
|
-
{/if}
|
|
85
|
-
{#if Array.isArray(manager?.filtered_button_managers) && manager?.filtered_button_managers.length > 0}
|
|
86
|
-
{#each manager?.filtered_button_managers as filtered_button_manager}
|
|
87
|
-
<Button manager={filtered_button_manager} />
|
|
88
|
-
{/each}
|
|
89
|
-
{/if}
|
|
90
|
-
</HorizScrollBox>
|
|
91
|
-
</div>
|
|
92
|
-
{/if}
|
|
93
|
-
|
|
94
|
-
<style>
|
|
95
|
-
.error_text {
|
|
96
|
-
font-size: 1.2rem;
|
|
97
|
-
color: oklch(var(--l5-t) var(--c7) var(--h1));
|
|
98
|
-
line-height: 1.2rem;
|
|
99
|
-
line-height: 1.2rem;
|
|
100
|
-
}
|
|
101
|
-
.horiz_container {
|
|
102
|
-
display: flex;
|
|
103
|
-
flex: 1;
|
|
104
|
-
align-items: center;
|
|
105
|
-
margin: 0 0.5rem;
|
|
106
|
-
}
|
|
107
|
-
.horiz_header_container {
|
|
108
|
-
display: flex;
|
|
109
|
-
align-items: center;
|
|
110
|
-
}
|
|
111
|
-
.horiz_header {
|
|
112
|
-
font-size: 1.6rem;
|
|
113
|
-
margin: 0;
|
|
114
|
-
margin-right: 1rem;
|
|
115
|
-
}
|
|
116
|
-
</style>
|