sveltekit-ui 1.1.16 → 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.
Files changed (156) hide show
  1. package/package.json +1 -1
  2. package/dist/Components/ArrowToggle/index.svelte +0 -62
  3. package/dist/Components/Attachment/index.svelte +0 -77
  4. package/dist/Components/Attachment/index.svelte.js +0 -119
  5. package/dist/Components/AudioEditor/index.svelte +0 -252
  6. package/dist/Components/AudioEditor/index.svelte.js +0 -977
  7. package/dist/Components/AudioEditor/samples/alloy-voice-sample.mp3 +0 -0
  8. package/dist/Components/AudioEditor/samples/echo-voice-sample.mp3 +0 -0
  9. package/dist/Components/AudioEditor/samples/fable-voice-sample.mp3 +0 -0
  10. package/dist/Components/AudioEditor/samples/nova-voice-sample.mp3 +0 -0
  11. package/dist/Components/AudioEditor/samples/onyx-voice-sample.mp3 +0 -0
  12. package/dist/Components/AudioEditor/samples/shimmer-voice-sample.mp3 +0 -0
  13. package/dist/Components/Breadcrumbs/index.svelte +0 -27
  14. package/dist/Components/Breadcrumbs/index.svelte.js +0 -88
  15. package/dist/Components/Chart/Klines/index.svelte +0 -87
  16. package/dist/Components/Chart/index.svelte +0 -226
  17. package/dist/Components/Chart/index.svelte.js +0 -1090
  18. package/dist/Components/ChartInput/DisplayNav/Klines/index.svelte +0 -150
  19. package/dist/Components/ChartInput/DisplayNav/Lines/index.svelte +0 -45
  20. package/dist/Components/ChartInput/DisplayNav/index.svelte +0 -297
  21. package/dist/Components/ChartInput/EditPanel/index.svelte +0 -155
  22. package/dist/Components/ChartInput/index.svelte +0 -21
  23. package/dist/Components/ChartInput/index.svelte.js +0 -671
  24. package/dist/Components/Color/index.svelte +0 -51
  25. package/dist/Components/Color/index.svelte.js +0 -31
  26. package/dist/Components/ColorInput/ChromaPicker/index.svelte +0 -50
  27. package/dist/Components/ColorInput/ColorPalette/index.svelte +0 -62
  28. package/dist/Components/ColorInput/OpacityPicker/index.svelte +0 -68
  29. package/dist/Components/ColorInput/ShowcasePicker/index.svelte +0 -136
  30. package/dist/Components/ColorInput/index.svelte +0 -70
  31. package/dist/Components/ColorInput/index.svelte.js +0 -386
  32. package/dist/Components/ConditionsInput/index.svelte +0 -46
  33. package/dist/Components/ConditionsInput/index.svelte.js +0 -201
  34. package/dist/Components/Confetti/index.svelte +0 -98
  35. package/dist/Components/Confetti/index.svelte.js +0 -94
  36. package/dist/Components/Content/index.svelte +0 -500
  37. package/dist/Components/Content/index.svelte.js +0 -910
  38. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte +0 -31
  39. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte.js +0 -258
  40. package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte +0 -31
  41. package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte.js +0 -258
  42. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte +0 -58
  43. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte.js +0 -206
  44. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte +0 -28
  45. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte.js +0 -224
  46. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte +0 -44
  47. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte.js +0 -272
  48. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte +0 -41
  49. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte.js +0 -202
  50. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte +0 -19
  51. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte.js +0 -117
  52. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte +0 -60
  53. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte.js +0 -542
  54. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte +0 -47
  55. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte.js +0 -185
  56. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte +0 -35
  57. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte.js +0 -222
  58. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte +0 -20
  59. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte.js +0 -84
  60. package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte +0 -25
  61. package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte.js +0 -91
  62. package/dist/Components/ContentInput/AttributesInput/index.svelte +0 -352
  63. package/dist/Components/ContentInput/AttributesInput/index.svelte.js +0 -1436
  64. package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte +0 -64
  65. package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte.js +0 -97
  66. package/dist/Components/ContentInput/ContentPanelBuilder/ElementList/index.svelte +0 -184
  67. package/dist/Components/ContentInput/ContentPanelBuilder/index.svelte +0 -41
  68. package/dist/Components/ContentInput/index.svelte +0 -78
  69. package/dist/Components/ContentInput/index.svelte.js +0 -1197
  70. package/dist/Components/CronInput/index.svelte +0 -78
  71. package/dist/Components/CronInput/index.svelte.js +0 -198
  72. package/dist/Components/DataTypeInput/index.svelte +0 -174
  73. package/dist/Components/DataTypeInput/index.svelte.js +0 -565
  74. package/dist/Components/Dropdown/index.svelte +0 -116
  75. package/dist/Components/Dropdown/index.svelte.js +0 -403
  76. package/dist/Components/ErrorX/index.svelte +0 -58
  77. package/dist/Components/FileInput/index.svelte +0 -146
  78. package/dist/Components/FileInput/index.svelte.js +0 -225
  79. package/dist/Components/Hamburger/index.svelte +0 -99
  80. package/dist/Components/HorizScrollBox/index.svelte +0 -145
  81. package/dist/Components/IconInput/index.svelte +0 -77
  82. package/dist/Components/IconInput/index.svelte.js +0 -259
  83. package/dist/Components/Image/index.svelte +0 -126
  84. package/dist/Components/Image/index.svelte.js +0 -116
  85. package/dist/Components/ImageEditor/Image/CropBox/index.svelte +0 -165
  86. package/dist/Components/ImageEditor/Image/index.svelte +0 -104
  87. package/dist/Components/ImageEditor/Panels/AI/index.svelte +0 -44
  88. package/dist/Components/ImageEditor/Panels/Crop/index.svelte +0 -96
  89. package/dist/Components/ImageEditor/Panels/File/QualityPicker/index.svelte +0 -124
  90. package/dist/Components/ImageEditor/Panels/File/index.svelte +0 -74
  91. package/dist/Components/ImageEditor/Panels/Filters/index.svelte +0 -46
  92. package/dist/Components/ImageEditor/Panels/Resize/index.svelte +0 -58
  93. package/dist/Components/ImageEditor/index.svelte +0 -93
  94. package/dist/Components/ImageEditor/index.svelte.js +0 -1961
  95. package/dist/Components/ImageSlider/index.svelte +0 -124
  96. package/dist/Components/ImageSlider/index.svelte.js +0 -99
  97. package/dist/Components/Json/Nested/index.svelte +0 -157
  98. package/dist/Components/LabeledItem/index.svelte +0 -102
  99. package/dist/Components/Layout/NavBar/FullNav/index.svelte +0 -52
  100. package/dist/Components/Layout/NavBar/NavGuts/index.svelte +0 -87
  101. package/dist/Components/Layout/NavBar/index.svelte +0 -72
  102. package/dist/Components/Layout/index.svelte +0 -149
  103. package/dist/Components/Layout/index.svelte.js +0 -360
  104. package/dist/Components/LoadingWheel/index.svelte +0 -38
  105. package/dist/Components/LocationInput/index.svelte +0 -197
  106. package/dist/Components/LocationInput/index.svelte.js +0 -965
  107. package/dist/Components/Number/index.svelte +0 -47
  108. package/dist/Components/Number/index.svelte.js +0 -151
  109. package/dist/Components/PhoneCountryCode/index.svelte +0 -7
  110. package/dist/Components/PhoneCountryCode/index.svelte.js +0 -260
  111. package/dist/Components/Popover/index.svelte +0 -396
  112. package/dist/Components/Popover/index.svelte.js +0 -319
  113. package/dist/Components/Spacer/index.svelte +0 -41
  114. package/dist/Components/StoragePicker/DisplayFile/index.svelte +0 -15
  115. package/dist/Components/StoragePicker/index.svelte +0 -187
  116. package/dist/Components/StoragePicker/index.svelte.js +0 -592
  117. package/dist/Components/TableAdvanced/ColumnInput/index.svelte +0 -117
  118. package/dist/Components/TableAdvanced/ColumnInput/index.svelte.js +0 -456
  119. package/dist/Components/TableAdvanced/FilterInput/index.svelte +0 -54
  120. package/dist/Components/TableAdvanced/FilterInput/index.svelte.js +0 -247
  121. package/dist/Components/TableAdvanced/Pagination/index.svelte +0 -43
  122. package/dist/Components/TableAdvanced/Pagination/index.svelte.js +0 -97
  123. package/dist/Components/TableAdvanced/SortByInput/index.svelte +0 -72
  124. package/dist/Components/TableAdvanced/SortByInput/index.svelte.js +0 -176
  125. package/dist/Components/Tag/index.svelte +0 -45
  126. package/dist/Components/Tag/index.svelte.js +0 -76
  127. package/dist/Components/TextArrayInput/index.svelte +0 -108
  128. package/dist/Components/TextArrayInput/index.svelte.js +0 -239
  129. package/dist/Components/TextInput/PasswordTooltip/index.svelte +0 -89
  130. package/dist/Components/TimeInput/NumberToggler/index.svelte +0 -34
  131. package/dist/Components/TimeInput/NumberToggler/index.svelte.js +0 -79
  132. package/dist/Components/TimeInput/index.js +0 -702
  133. package/dist/Components/TimeInput/index.svelte +0 -211
  134. package/dist/Components/TimeInput/index.svelte.js +0 -638
  135. package/dist/Components/Tooltip/index.svelte +0 -143
  136. package/dist/Components/TransparentBackground/index.svelte +0 -153
  137. package/dist/Components/TypingDots/index.svelte +0 -84
  138. package/dist/Components/VariablePathInput/index.svelte +0 -63
  139. package/dist/Components/VariablePathInput/index.svelte.js +0 -273
  140. package/dist/Components/XFollow/index.svelte +0 -42
  141. package/dist/Components/YoutubeChannelButton/index.svelte +0 -82
  142. package/dist/Components/YoutubeVideo/index.svelte +0 -73
  143. package/dist/Components/YoutubeVideo/index.svelte.js +0 -54
  144. package/dist/actions/draggable.js +0 -49
  145. package/dist/actions/index.js +0 -24
  146. package/dist/actions/no_spaces.js +0 -33
  147. package/dist/actions/numbers_only.js +0 -26
  148. package/dist/actions/scroll_y.js +0 -28
  149. package/dist/actions/stop_scroll_propagation_y.js +0 -42
  150. package/dist/actions/swipe_handler.js +0 -295
  151. package/dist/client/astc_formatting/index.js +0 -1128
  152. package/dist/client/docs/index.js +0 -7622
  153. package/dist/client/index.js +0 -735
  154. package/dist/client/types/index.js +0 -2812
  155. package/dist/index.js +0 -180
  156. package/dist/style.css +0 -682
@@ -1,78 +0,0 @@
1
- <script>
2
- import Popover from "../Popover/index.svelte"
3
- import Button from "../Button/index.svelte"
4
- import TextInput from "../TextInput/index.svelte"
5
-
6
- let { manager } = $props()
7
-
8
- </script>
9
-
10
- <div>
11
- {#if manager?.label || manager?.error_message}
12
- <div style="display: inline-flex;">
13
- {#if manager?.label}
14
- <p class="label">{manager?.label}:</p>
15
- {/if}
16
- {#if !manager?.is_valid}
17
- <p class="error_text">Cron val invalid</p>
18
- {/if}
19
- </div>
20
- {/if}
21
-
22
- <Button manager={manager?.popover_toggle_button_manager} />
23
- <Popover manager={manager?.popover_manager} >
24
- {#snippet content()}
25
- <div id={manager?.id}>
26
- <TextInput manager={manager?.cron_text_input_manager} />
27
- <p>{manager?.val ?? "Null"}</p>
28
- <p>{manager?.description ?? ""}</p>
29
- <details>
30
- <summary>Cron Guide</summary>
31
- <div class="cron_guide">
32
- <p>Cron expressions run on UTC time</p>
33
- <ul>
34
- <li>Minute (0 - 59)</li>
35
- <li>Hour (0 - 23)</li>
36
- <li>Day of the month (1 - 31)</li>
37
- <li>Month (1 - 12)</li>
38
- <li>Day of the week (0 - 6)</li>
39
- </ul>
40
- <p>Special characters:</p>
41
- <ul>
42
- <li>Asterisk (*): Represents "every" value (e.g., every hour, every day).</li>
43
- <li>Comma (,): Specifies a list of values (e.g., 1,3,5 in the day-of-week field means Monday, Wednesday, and Friday).</li>
44
- <li>Dash (-): Specifies a range of values (e.g., 1-5 in the day-of-week field means Monday through Friday).</li>
45
- <li>Slash (/): Specifies increments (e.g., */10 in the minute field means "every 10 minutes").</li>
46
- </ul>
47
- </div>
48
- </details>
49
- </div>
50
- {/snippet}
51
- {#snippet footer()}
52
- <Button manager={manager?.finish_button_manager} />
53
- {/snippet}
54
- </Popover>
55
- </div>
56
-
57
- <style>
58
- p {
59
- font-size: 1.4rem;
60
- }
61
- .cron_guide {
62
- text-align: left;
63
- font-size: 0.8rem;
64
- line-height: 1.2;
65
- }
66
- .cron_guide ul {
67
- padding-left: 1.2rem;
68
- margin-bottom: 0.5rem;
69
- }
70
- .cron_guide ul li {
71
- margin-bottom: 0.2rem;
72
- font-size: 1.2rem;
73
- }
74
- .cron_guide p {
75
- margin: 0.2rem;
76
- font-size: 1.2rem;
77
- }
78
- </style>
@@ -1,198 +0,0 @@
1
- import { create_popover_manager } from "../Popover/index.svelte.js"
2
- import { create_button_manager } from "../Button/index.svelte.js"
3
- import { create_text_input_manager } from "../TextInput/index.svelte.js"
4
- import { create_unique_id, set_closurable, cron_to_english } from "../../client/index.js"
5
-
6
- export function create_cron_input_manager(config) {
7
- const id = create_unique_id(null, 20)
8
- let label = $state(null)
9
- let is_disabled = $state(null)
10
- let is_nullable = $state(null)
11
- let is_compressed = $state(null)
12
- let is_popover = $state(null)
13
- let ml = $state(null)
14
- let mr = $state(null)
15
- let mt = $state(null)
16
- let mb = $state(null)
17
-
18
- let popover_manager = $state(null)
19
- let popover_toggle_button_manager = $state(null)
20
- let finish_button_manager = $state(null)
21
- let cron_text_input_manager = $state(null)
22
-
23
- let description = $derived(cron_to_english(cron_text_input_manager?.val))
24
-
25
- let val = $derived(clean_val(cron_text_input_manager?.val))
26
-
27
- let is_valid = $derived.by(() => {
28
- if (cron_text_input_manager?.val == null) {
29
- return true
30
- }
31
- const cron_parts = (cron_text_input_manager?.val || "* * * * *").split(" ")
32
- const [minute, hour, day_of_month, month, day_of_week] = [
33
- cron_parts[0] || "*",
34
- cron_parts[1] || "*",
35
- cron_parts[2] || "*",
36
- cron_parts[3] || "*",
37
- cron_parts[4] || "*",
38
- ]
39
- return (
40
- cron_text_input_manager?.val == null ||
41
- (is_valid_field(minute, 0, 59) &&
42
- is_valid_field(hour, 0, 23) &&
43
- is_valid_field(day_of_month, 1, 31) &&
44
- is_valid_field(month, 1, 12) &&
45
- is_valid_field(day_of_week, 0, 7))
46
- )
47
- })
48
-
49
- function clean_val(input) {
50
- if (!input) {
51
- return null
52
- }
53
- let [minute, hour, day_of_month, month, day_of_week] = (input || "* * * * *").split(" ")
54
- minute = minute || "*"
55
- hour = hour || "*"
56
- day_of_month = day_of_month || "*"
57
- month = month || "*"
58
- day_of_week = day_of_week || "*"
59
- const cron_loc = `${minute} ${hour} ${day_of_month} ${month} ${day_of_week}`
60
- return cron_loc
61
- }
62
-
63
- function is_valid_field(field, min, max) {
64
- if (field === "*") return true
65
- const parts = field.split(",")
66
- for (const part of parts) {
67
- if (part.includes("/")) {
68
- const [start, step] = part.split("/").map((val) => (val === "*" ? val : Number(val)))
69
- const step_num = Number(step)
70
- if (isNaN(step_num) || step_num < 1 || (start !== "*" && (isNaN(start) || start < min || start > max))) {
71
- return false
72
- }
73
- } else if (part.includes("-")) {
74
- const [start, end] = part.split("-").map(Number)
75
- if (isNaN(start) || isNaN(end) || start < min || end > max || start > end) {
76
- return false
77
- }
78
- } else {
79
- const num = Number(part)
80
- if (isNaN(num) || num < min || num > max) {
81
- return false
82
- }
83
- }
84
- }
85
- return true
86
- }
87
-
88
- function finish_cron() {
89
- if (typeof config?.on_finish == "function") {
90
- config?.on_finish(val)
91
- }
92
- popover_manager.close()
93
- }
94
-
95
- function set_attributes(input) {
96
- label = set_closurable(input?.label, label ?? null)
97
- is_disabled = set_closurable(input?.is_disabled, is_disabled ?? false)
98
- is_nullable = set_closurable(input?.is_nullable, is_nullable ?? true)
99
- is_compressed = set_closurable(input?.is_compressed, is_compressed ?? true)
100
- is_popover = set_closurable(input?.is_popover, is_popover ?? true)
101
- ml = set_closurable(input?.ml, ml ?? 0)
102
- mr = set_closurable(input?.mr, mr ?? 0)
103
- mt = set_closurable(input?.mt, mt ?? 0)
104
- mb = set_closurable(input?.mb, mb ?? 0)
105
- cron_text_input_manager.set_val(set_closurable(input?.val))
106
- }
107
-
108
- function init(config) {
109
- cron_text_input_manager = create_text_input_manager({
110
- label: "Cron Expression",
111
- placeholder: "* * * * *",
112
- is_nullable: true,
113
- })
114
- set_attributes(config)
115
- popover_manager = create_popover_manager({
116
- target_width: 300,
117
- target_height: 300,
118
- is_show_x: true,
119
- type: "dropdown",
120
- is_disabled: () => is_disabled,
121
- header: "Cron Expression",
122
- anchor_id: () => `button_${popover_toggle_button_manager?.id}`,
123
- })
124
- popover_toggle_button_manager = create_button_manager({
125
- type: "outlined",
126
- text: () => val ?? "Set Cron",
127
- is_disabled: () => is_disabled,
128
- is_compressed: () => is_compressed,
129
- h: 10,
130
- l: 3,
131
- c: 1,
132
- ml: () => ml,
133
- mr: () => mr,
134
- mt: () => mt,
135
- mb: () => mb,
136
- popover_target: () => `popover_${popover_manager?.id}`,
137
- })
138
- finish_button_manager = create_button_manager({
139
- text: "Finish",
140
- mt: 0.5,
141
- on_click: () => finish_cron(),
142
- })
143
- }
144
-
145
- init(config)
146
-
147
- return {
148
- id,
149
- get label() {
150
- return label
151
- },
152
- get val() {
153
- return val
154
- },
155
- get is_nullable() {
156
- return is_nullable
157
- },
158
- get description() {
159
- return description
160
- },
161
- get is_disabled() {
162
- return is_disabled
163
- },
164
- get is_compressed() {
165
- return is_compressed
166
- },
167
- get is_valid() {
168
- return is_valid
169
- },
170
- get is_popover() {
171
- return is_popover
172
- },
173
- get ml() {
174
- return ml
175
- },
176
- get mr() {
177
- return mr
178
- },
179
- get mt() {
180
- return mt
181
- },
182
- get mb() {
183
- return mb
184
- },
185
- get popover_manager() {
186
- return popover_manager
187
- },
188
- get popover_toggle_button_manager() {
189
- return popover_toggle_button_manager
190
- },
191
- get finish_button_manager() {
192
- return finish_button_manager
193
- },
194
- get cron_text_input_manager() {
195
- return cron_text_input_manager
196
- },
197
- }
198
- }
@@ -1,174 +0,0 @@
1
- <script>
2
- import Popover from "../Popover/index.svelte"
3
- import Button from "../Button/index.svelte"
4
- import Breadcrumbs from "../Breadcrumbs/index.svelte"
5
- import TextInput from "../TextInput/index.svelte"
6
- import Dropdown from "../Dropdown/index.svelte"
7
-
8
- let { manager } = $props()
9
-
10
- </script>
11
-
12
- <Popover manager={manager?.popover_manager}>
13
- {#snippet content()}
14
- <div>
15
- {#if !manager?.val?.type}
16
- <div style="display: flex; flex: 1; width: 100%; flex-wrap: wrap; padding: 0 .5rem; gap: 1rem;">
17
- {#if manager?.type_options.length > 6 || manager?.search_text_input_manager?.val}
18
- <div style="display: flex; flex: 1; flex-direction: column;">
19
- <TextInput manager={manager?.search_text_input_manager} />
20
- </div>
21
- {/if}
22
- {#if manager?.variables}
23
- <Button manager={manager?.guess_from_variables_button_manager} />
24
- {/if}
25
- </div>
26
- <div class="elements_container">
27
- {#if Array.isArray(manager?.type_option_buttons) && manager?.type_option_buttons.length > 0}
28
- {#each manager?.type_option_buttons as type_option_button}
29
- {#if manager?.type_options.some(h => h?.key == type_option_button?.key)}
30
- <Button manager={type_option_button?.button_manager}>
31
- {#snippet content()}
32
- <div class="button_internal_container">
33
- <h5 class="button_header">{type_option_button?.name}</h5>
34
- <p class="button_sub_text">{type_option_button?.key}</p>
35
- </div>
36
- {/snippet}
37
- </Button>
38
- {/if}
39
- {/each}
40
- {/if}
41
- </div>
42
- {:else}
43
- <Breadcrumbs manager={manager?.breadcrumbs_manager} />
44
- <p class="label">Data Type</p>
45
- <div style="display: flex; align-items: center; gap: 1rem;">
46
- <Button manager={manager?.clear_breadcrumbs_button_manager} />
47
- <Dropdown manager={manager?.type_options_dropdown_manager} />
48
- </div>
49
- {#if manager?.val_at_path?.type == "array_literal"}
50
- array_literal_tbd
51
- {:else if manager?.val_at_path?.type == "array_uniform_literal"}
52
- <p>Array of Uniform Type</p>
53
- <div style="display: flex; gap: 1rem;">
54
- <Dropdown manager={manager?.items_type_options_dropdown_manager} />
55
- {#if ["array_literal","array_uniform_literal", "object_literal","object_uniform_literal"].includes(manager?.val_at_path?.items?.type)}
56
- <Button manager={manager?.edit_items_type_button_manager} />
57
- {/if}
58
- </div>
59
- {:else if manager?.val_at_path?.type == "object_uniform_literal"}
60
- <p>Object Uniform Value Type</p>
61
- <div style="display: flex; gap: 1rem;">
62
- <Dropdown manager={manager?.items_type_options_dropdown_manager} />
63
- {#if ["array_literal", "object_literal", "object_uniform_literal"].includes(manager?.val_at_path?.items?.type)}
64
- <Button manager={manager?.edit_items_type_button_manager} />
65
- {/if}
66
- </div>
67
- <div>
68
- {#if Array.isArray(manager?.table_options) && manager?.table_options.length > 0}
69
- <Dropdown manager={manager?.property_key_table_id_for_foreign_row_text_input_manager} />
70
- {:else}
71
- <p>No Table Options Found</p>
72
- {/if}
73
- </div>
74
- {:else if manager?.val_at_path?.type == "object_literal"}
75
- <h4>Properties</h4>
76
- <div class="property_table_container">
77
- <table class="property_table">
78
- <thead>
79
- <tr>
80
- <th>Key</th>
81
- <th>Type</th>
82
- <th>Edit</th>
83
- </tr>
84
- </thead>
85
- <tbody>
86
- {#if Object.keys(manager?.property_type_options || {})?.length > 0}
87
- {#each Object.keys(manager?.property_type_options || {}).sort((a, b) => manager?.property_type_options?.[a]?.display_order - manager?.property_type_options?.[b]?.display_order) as property_key}
88
- <tr>
89
- <td>{property_key}</td>
90
- <td>
91
- <Dropdown manager={manager?.property_type_options?.[property_key]?.type_options_dropdown_manager} />
92
- </td>
93
- <td>
94
- <div id={`toggle_el_${manager?.property_type_options?.[property_key]?.edit_popover_trigger_button_manager?.id}`}>
95
- <Button manager={manager?.property_type_options?.[property_key]?.edit_popover_trigger_button_manager} />
96
- </div>
97
- <Popover manager={manager?.property_type_options?.[property_key]?.edit_popover_manager} >
98
- {#snippet content()}
99
- <div>
100
- {#if ["array_literal", "array_uniform_literal", "object_literal","object_uniform_literal", "table_id_for_foreign_row_literal"].includes(manager?.val_at_path?.properties?.[property_key]?.type)}
101
- <Button manager={manager?.property_type_options?.[property_key]?.to_breadcrumbs_button_manager} />
102
- {/if}
103
- {#if manager?.val_at_path?.properties.length > 0 && (manager?.val_at_path?.properties?.[property_key]?.display_order == null || manager?.val_at_path.properties?.[property_key]?.display_order > 0)}
104
- <Button manager={manager?.property_type_options?.[property_key]?.shift_up_button_manager} />
105
- {/if}
106
- {#if manager?.val_at_path?.properties?.[property_key]?.display_order != null && manager?.val_at_path?.properties?.[property_key]?.display_order < Object.keys(manager?.val_at_path?.properties || {}).length - 1}
107
- <Button manager={manager?.property_type_options?.[property_key]?.shift_down_button_manager} />
108
- {/if}
109
- <Button manager={manager?.property_type_options?.[property_key]?.delete_button_manager} />
110
- </div>
111
- {/snippet}
112
- </Popover>
113
- </td>
114
- </tr>
115
- {/each}
116
- {/if}
117
- </tbody>
118
- </table>
119
- </div>
120
- <div class="cardns" style="padding: 1rem; margin-top: 1rem;">
121
- <h5>Add property</h5>
122
- <div style="display: flex; flex-wrap: wrap; gap: 1rem; align-items: end;">
123
- <TextInput manager={manager?.property_key_to_add_text_manager} />
124
- <Button manager={manager?.property_key_to_add_finish_button_manager} />
125
- </div>
126
- </div>
127
- {:else if manager?.val_at_path?.type == "table_id_for_foreign_row_literal"}
128
- <div style="margin-top: .5rem;">
129
- <h3 class="label">Attributes</h3>
130
- {#if Array.isArray(manager?.table_options) && manager?.table_options.length > 0}
131
- <Dropdown manager={manager?.table_id_for_foreign_row_text_input_manager} />
132
- {:else}
133
- <p>No Table Options Found</p>
134
- {/if}
135
- </div>
136
- {/if}
137
- {/if}
138
- </div>
139
- {/snippet}
140
- {#snippet footer()}
141
- <Button manager={manager?.finish_button_manager} />
142
- {/snippet}
143
- </Popover>
144
-
145
- <style>
146
- .property_table_container {
147
- display: flex;
148
- flex-direction: column;
149
- max-width: 100% !important;
150
- overflow: scroll;
151
- }
152
- .property_table {
153
- margin: 0;
154
- }
155
- .property_table th {
156
- font-size: 1.2rem;
157
- }
158
- h4 {
159
- margin: 0;
160
- }
161
- .elements_container {
162
- display: grid;
163
- grid-template-columns: repeat(auto-fit, minmax(clamp(20%, 14rem, 100%), 1fr));
164
- }
165
- .button_internal_container {
166
- word-break: break-word;
167
- }
168
- .button_header {
169
- font-size: 1.6rem;
170
- }
171
- .button_sub_text{
172
- font-size: 1.2rem;
173
- }
174
- </style>