sveltekit-ui 1.1.17 → 1.1.19

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 (200) hide show
  1. package/dist/Components/Alert/index.svelte +88 -0
  2. package/dist/Components/Alert/index.svelte.js +101 -0
  3. package/dist/Components/ArrowToggle/index.svelte +62 -0
  4. package/dist/Components/Attachment/index.svelte +77 -0
  5. package/dist/Components/Attachment/index.svelte.js +119 -0
  6. package/dist/Components/Audio/index.svelte +193 -0
  7. package/dist/Components/Audio/index.svelte.js +463 -0
  8. package/dist/Components/AudioEditor/index.svelte +252 -0
  9. package/dist/Components/AudioEditor/index.svelte.js +977 -0
  10. package/dist/Components/AudioEditor/samples/alloy-voice-sample.mp3 +0 -0
  11. package/dist/Components/AudioEditor/samples/echo-voice-sample.mp3 +0 -0
  12. package/dist/Components/AudioEditor/samples/fable-voice-sample.mp3 +0 -0
  13. package/dist/Components/AudioEditor/samples/nova-voice-sample.mp3 +0 -0
  14. package/dist/Components/AudioEditor/samples/onyx-voice-sample.mp3 +0 -0
  15. package/dist/Components/AudioEditor/samples/shimmer-voice-sample.mp3 +0 -0
  16. package/dist/Components/AuthCodeInput/index.svelte +85 -0
  17. package/dist/Components/AuthCodeInput/index.svelte.js +95 -0
  18. package/dist/Components/Breadcrumbs/index.svelte +27 -0
  19. package/dist/Components/Breadcrumbs/index.svelte.js +88 -0
  20. package/dist/Components/Button/index.svelte +721 -0
  21. package/dist/Components/Button/index.svelte.js +375 -0
  22. package/dist/Components/Chart/Klines/index.svelte +87 -0
  23. package/dist/Components/Chart/index.svelte +226 -0
  24. package/dist/Components/Chart/index.svelte.js +1099 -0
  25. package/dist/Components/ChartInput/DisplayNav/Klines/index.svelte +150 -0
  26. package/dist/Components/ChartInput/DisplayNav/Lines/index.svelte +45 -0
  27. package/dist/Components/ChartInput/DisplayNav/index.svelte +297 -0
  28. package/dist/Components/ChartInput/EditPanel/index.svelte +155 -0
  29. package/dist/Components/ChartInput/index.svelte +21 -0
  30. package/dist/Components/ChartInput/index.svelte.js +671 -0
  31. package/dist/Components/Checkbox/index.svelte +411 -0
  32. package/dist/Components/Checkbox/index.svelte.js +178 -0
  33. package/dist/Components/Code/index.svelte +23 -0
  34. package/dist/Components/Code/index.svelte.js +33 -0
  35. package/dist/Components/Color/index.svelte +51 -0
  36. package/dist/Components/Color/index.svelte.js +31 -0
  37. package/dist/Components/ColorInput/ChromaPicker/index.svelte +50 -0
  38. package/dist/Components/ColorInput/ColorPalette/index.svelte +62 -0
  39. package/dist/Components/ColorInput/OpacityPicker/index.svelte +68 -0
  40. package/dist/Components/ColorInput/ShowcasePicker/index.svelte +136 -0
  41. package/dist/Components/ColorInput/index.svelte +70 -0
  42. package/dist/Components/ColorInput/index.svelte.js +386 -0
  43. package/dist/Components/ConditionsInput/index.svelte +46 -0
  44. package/dist/Components/ConditionsInput/index.svelte.js +201 -0
  45. package/dist/Components/Confetti/index.svelte +98 -0
  46. package/dist/Components/Confetti/index.svelte.js +94 -0
  47. package/dist/Components/Content/index.svelte +500 -0
  48. package/dist/Components/Content/index.svelte.js +910 -0
  49. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte +31 -0
  50. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte.js +258 -0
  51. package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte +31 -0
  52. package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte.js +258 -0
  53. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte +58 -0
  54. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte.js +206 -0
  55. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte +28 -0
  56. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte.js +224 -0
  57. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte +44 -0
  58. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte.js +272 -0
  59. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte +41 -0
  60. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte.js +202 -0
  61. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte +19 -0
  62. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte.js +117 -0
  63. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte +60 -0
  64. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte.js +542 -0
  65. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte +47 -0
  66. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte.js +185 -0
  67. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte +35 -0
  68. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte.js +222 -0
  69. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte +20 -0
  70. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte.js +84 -0
  71. package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte +25 -0
  72. package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte.js +91 -0
  73. package/dist/Components/ContentInput/AttributesInput/index.svelte +352 -0
  74. package/dist/Components/ContentInput/AttributesInput/index.svelte.js +1436 -0
  75. package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte +64 -0
  76. package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte.js +97 -0
  77. package/dist/Components/ContentInput/ContentPanelBuilder/ElementList/index.svelte +184 -0
  78. package/dist/Components/ContentInput/ContentPanelBuilder/index.svelte +41 -0
  79. package/dist/Components/ContentInput/index.svelte +78 -0
  80. package/dist/Components/ContentInput/index.svelte.js +1197 -0
  81. package/dist/Components/CronInput/index.svelte +78 -0
  82. package/dist/Components/CronInput/index.svelte.js +198 -0
  83. package/dist/Components/DataTypeInput/index.svelte +174 -0
  84. package/dist/Components/DataTypeInput/index.svelte.js +565 -0
  85. package/dist/Components/Dropdown/index.svelte +116 -0
  86. package/dist/Components/Dropdown/index.svelte.js +403 -0
  87. package/dist/Components/EmailAddress/index.svelte +22 -0
  88. package/dist/Components/EmailAddress/index.svelte.js +45 -0
  89. package/dist/Components/ErrorX/index.svelte +58 -0
  90. package/dist/Components/Eye/index.svelte +57 -0
  91. package/dist/Components/FileInput/index.svelte +146 -0
  92. package/dist/Components/FileInput/index.svelte.js +225 -0
  93. package/dist/Components/Hamburger/index.svelte +99 -0
  94. package/dist/Components/HorizScrollBox/index.svelte +145 -0
  95. package/dist/Components/Icon/index.svelte +412 -0
  96. package/dist/Components/Icon/index.svelte.js +116 -0
  97. package/dist/Components/IconInput/index.svelte +77 -0
  98. package/dist/Components/IconInput/index.svelte.js +259 -0
  99. package/dist/Components/Image/index.svelte +126 -0
  100. package/dist/Components/Image/index.svelte.js +116 -0
  101. package/dist/Components/ImageEditor/Image/CropBox/index.svelte +165 -0
  102. package/dist/Components/ImageEditor/Image/index.svelte +104 -0
  103. package/dist/Components/ImageEditor/Panels/AI/index.svelte +44 -0
  104. package/dist/Components/ImageEditor/Panels/Crop/index.svelte +96 -0
  105. package/dist/Components/ImageEditor/Panels/File/QualityPicker/index.svelte +124 -0
  106. package/dist/Components/ImageEditor/Panels/File/index.svelte +74 -0
  107. package/dist/Components/ImageEditor/Panels/Filters/index.svelte +46 -0
  108. package/dist/Components/ImageEditor/Panels/Resize/index.svelte +58 -0
  109. package/dist/Components/ImageEditor/index.svelte +93 -0
  110. package/dist/Components/ImageEditor/index.svelte.js +1961 -0
  111. package/dist/Components/ImageSlider/index.svelte +124 -0
  112. package/dist/Components/ImageSlider/index.svelte.js +99 -0
  113. package/dist/Components/InfoBox/index.svelte +89 -0
  114. package/dist/Components/Json/Nested/index.svelte +157 -0
  115. package/dist/Components/Json/index.svelte +60 -0
  116. package/dist/Components/Json/index.svelte.js +594 -0
  117. package/dist/Components/LabeledItem/index.svelte +102 -0
  118. package/dist/Components/Layout/NavBar/FullNav/index.svelte +52 -0
  119. package/dist/Components/Layout/NavBar/NavGuts/index.svelte +87 -0
  120. package/dist/Components/Layout/NavBar/index.svelte +72 -0
  121. package/dist/Components/Layout/index.svelte +149 -0
  122. package/dist/Components/Layout/index.svelte.js +360 -0
  123. package/dist/Components/Link/index.svelte +47 -0
  124. package/dist/Components/Link/index.svelte.js +136 -0
  125. package/dist/Components/LoadingSuccessDiv/index.svelte +51 -0
  126. package/dist/Components/LoadingWheel/index.svelte +38 -0
  127. package/dist/Components/Location/index.svelte +79 -0
  128. package/dist/Components/Location/index.svelte.js +288 -0
  129. package/dist/Components/LocationInput/index.svelte +197 -0
  130. package/dist/Components/LocationInput/index.svelte.js +965 -0
  131. package/dist/Components/Number/index.svelte +47 -0
  132. package/dist/Components/Number/index.svelte.js +151 -0
  133. package/dist/Components/PhoneCountryCode/index.svelte +7 -0
  134. package/dist/Components/PhoneCountryCode/index.svelte.js +260 -0
  135. package/dist/Components/PhoneNumber/index.svelte +22 -0
  136. package/dist/Components/PhoneNumber/index.svelte.js +41 -0
  137. package/dist/Components/Popover/index.svelte +396 -0
  138. package/dist/Components/Popover/index.svelte.js +319 -0
  139. package/dist/Components/Qr/index.svelte +85 -0
  140. package/dist/Components/Qr/index.svelte.js +301 -0
  141. package/dist/Components/QrInput/index.svelte +47 -0
  142. package/dist/Components/QrInput/index.svelte.js +218 -0
  143. package/dist/Components/Slider/index.svelte +239 -0
  144. package/dist/Components/Slider/index.svelte.js +469 -0
  145. package/dist/Components/Spacer/index.svelte +41 -0
  146. package/dist/Components/StoragePicker/DisplayFile/index.svelte +15 -0
  147. package/dist/Components/StoragePicker/index.svelte +187 -0
  148. package/dist/Components/StoragePicker/index.svelte.js +592 -0
  149. package/dist/Components/SuccessCheck/index.svelte +56 -0
  150. package/dist/Components/TableAdvanced/ColumnInput/index.svelte +117 -0
  151. package/dist/Components/TableAdvanced/ColumnInput/index.svelte.js +456 -0
  152. package/dist/Components/TableAdvanced/FilterInput/index.svelte +54 -0
  153. package/dist/Components/TableAdvanced/FilterInput/index.svelte.js +247 -0
  154. package/dist/Components/TableAdvanced/Pagination/index.svelte +43 -0
  155. package/dist/Components/TableAdvanced/Pagination/index.svelte.js +97 -0
  156. package/dist/Components/TableAdvanced/SortByInput/index.svelte +72 -0
  157. package/dist/Components/TableAdvanced/SortByInput/index.svelte.js +176 -0
  158. package/dist/Components/TableAdvanced/index.svelte +275 -0
  159. package/dist/Components/TableAdvanced/index.svelte.js +1565 -0
  160. package/dist/Components/Tag/index.svelte +45 -0
  161. package/dist/Components/Tag/index.svelte.js +76 -0
  162. package/dist/Components/TextArrayInput/index.svelte +108 -0
  163. package/dist/Components/TextArrayInput/index.svelte.js +239 -0
  164. package/dist/Components/TextInput/PasswordTooltip/index.svelte +89 -0
  165. package/dist/Components/TextInput/index.svelte +223 -0
  166. package/dist/Components/TextInput/index.svelte.js +447 -0
  167. package/dist/Components/Time/index.svelte +7 -0
  168. package/dist/Components/Time/index.svelte.js +38 -0
  169. package/dist/Components/TimeInput/NumberToggler/index.svelte +34 -0
  170. package/dist/Components/TimeInput/NumberToggler/index.svelte.js +79 -0
  171. package/dist/Components/TimeInput/index.js +702 -0
  172. package/dist/Components/TimeInput/index.svelte +211 -0
  173. package/dist/Components/TimeInput/index.svelte.js +638 -0
  174. package/dist/Components/Tooltip/index.svelte +143 -0
  175. package/dist/Components/TransparentBackground/index.svelte +153 -0
  176. package/dist/Components/TypingDots/index.svelte +84 -0
  177. package/dist/Components/VariablePathInput/index.svelte +63 -0
  178. package/dist/Components/VariablePathInput/index.svelte.js +273 -0
  179. package/dist/Components/VideoTBD/index.svelte +100 -0
  180. package/dist/Components/XFollow/index.svelte +42 -0
  181. package/dist/Components/XPost/index.svelte +52 -0
  182. package/dist/Components/XPost/index.svelte.js +64 -0
  183. package/dist/Components/YoutubeChannelButton/index.svelte +82 -0
  184. package/dist/Components/YoutubeVideo/index.svelte +73 -0
  185. package/dist/Components/YoutubeVideo/index.svelte.js +54 -0
  186. package/dist/actions/draggable.js +49 -0
  187. package/dist/actions/index.js +24 -0
  188. package/dist/actions/no_spaces.js +33 -0
  189. package/dist/actions/numbers_only.js +26 -0
  190. package/dist/actions/scroll_y.js +28 -0
  191. package/dist/actions/stop_scroll_propagation_y.js +42 -0
  192. package/dist/actions/swipe_handler.js +295 -0
  193. package/dist/client/astc_formatting/index.js +1128 -0
  194. package/dist/client/docs/index.js +7622 -0
  195. package/dist/client/index.js +735 -0
  196. package/dist/client/types/index.js +2812 -0
  197. package/dist/index.js +180 -0
  198. package/dist/style.css +682 -0
  199. package/package.json +2 -2
  200. package/src/lib/Components/Chart/index.svelte.js +11 -2
@@ -0,0 +1,98 @@
1
+ <script>
2
+ let { manager } = $props()
3
+ </script>
4
+
5
+ {#if manager?.is_show}
6
+ <div
7
+ class="container"
8
+ class:full={manager?.type == "full"}
9
+ style="
10
+ --border_radius: {manager?.border_radius}rem;
11
+ --fall_distance: {manager?.fall_distance};
12
+ --size: {manager?.size}rem;
13
+ --transition_duration: {manager?.transition_duration}ms;
14
+ --x_spread: {manager?.x_spread}"
15
+ >
16
+ {#each manager?.confetti_prepped as item}
17
+ <div
18
+ class="item"
19
+ style="
20
+ --item_bg: {item?.item_bg};
21
+ --skew: {item?.skew};
22
+ --rotation_xyz: {item?.rotation_xyz};
23
+ --rotation_deg: {item?.rotation_deg};
24
+ --translate_x: {item?.translate_x};
25
+ --translate_y: {item?.translate_y};
26
+ --scale: {item?.scale};
27
+ --transition_delay: {item?.transition_time_range};"
28
+ ></div>
29
+ {/each}
30
+ </div>
31
+ {/if}
32
+
33
+ <style>
34
+ .container {
35
+ position: relative;
36
+ z-index: 100;
37
+ }
38
+ .full {
39
+ position: fixed;
40
+ top: -2rem;
41
+ left: 0;
42
+ height: 100vh;
43
+ width: 100vw;
44
+ display: flex;
45
+ justify-content: center;
46
+ overflow: hidden;
47
+ }
48
+ @keyframes rotate {
49
+ 0% {
50
+ transform: skew(var(--skew)) rotate3d(var(--full_rotation));
51
+ }
52
+ 100% {
53
+ transform: skew(var(--skew)) rotate3d(var(--rotation_xyz), calc(var(--rotation_deg) + 360deg));
54
+ }
55
+ }
56
+ @keyframes translate {
57
+ 0% {
58
+ opacity: 1;
59
+ }
60
+ 8% {
61
+ transform: translateY(calc(var(--translate_y) * 0.95))
62
+ translateX(calc(var(--translate_x) * (var(--x_spread) * 0.9)));
63
+ opacity: 1;
64
+ }
65
+ 12% {
66
+ transform: translateY(var(--translate_y)) translateX(calc(var(--translate_x) * (var(--x_spread) * 0.95)));
67
+ opacity: 1;
68
+ }
69
+ 16% {
70
+ transform: translateY(var(--translate_y)) translateX(calc(var(--translate_x) * var(--x_spread)));
71
+ opacity: 1;
72
+ }
73
+ 100% {
74
+ transform: translateY(calc(var(--translate_y) + var(--fall_distance))) translateX(var(--translate_x));
75
+ opacity: 0;
76
+ }
77
+ }
78
+ .item {
79
+ position: absolute;
80
+ height: calc(var(--size) * var(--scale));
81
+ width: calc(var(--size) * var(--scale));
82
+ animation: translate var(--transition_duration) var(--transition_delay) 1 linear;
83
+ opacity: 0;
84
+ pointer-events: none;
85
+ }
86
+ .item::before {
87
+ --full_rotation: var(--rotation_xyz), var(--rotation_deg);
88
+ content: "";
89
+ display: block;
90
+ width: 100%;
91
+ height: 100%;
92
+ background: var(--item_bg);
93
+ background-size: contain;
94
+ transform: skew(var(--skew)) rotate3d(var(--full_rotation));
95
+ animation: rotate var(--transition_duration) var(--transition_delay) 1 linear;
96
+ border-radius: var(--border_radius);
97
+ }
98
+ </style>
@@ -0,0 +1,94 @@
1
+ import { tick } from "svelte"
2
+ import { set_closurable } from "../../client/index.js"
3
+
4
+ export function create_confetti_manager(config) {
5
+ let type = $derived(set_closurable(config?.type, null))
6
+ let amount = $derived(set_closurable(config?.amount, 50))
7
+ let size = $derived(set_closurable(config?.size, 1.2))
8
+ let x_range = $derived(set_closurable(config?.x_range, [-10, 10]))
9
+ let x_spread = $derived(set_closurable(config?.x_spread, 0.9))
10
+ let y_range = $derived(set_closurable(config?.y_range, [-3, -10]))
11
+ let time_range = $derived(set_closurable(config?.time_range, 50))
12
+ let duration = $derived(set_closurable(config?.duration, 2000))
13
+ let item_bg = $derived(set_closurable(config?.item_bg, null)) // ["var(--primary)", "blue", "url(https://svelte.dev/favicon.png)"]
14
+ let fall_distance = $derived(set_closurable(config?.fall_distance, "10rem"))
15
+ let border_radius = $derived(set_closurable(config?.border_radius, 0.1))
16
+
17
+ let is_show = $state(false)
18
+ let confetti_prepped = $state(null)
19
+
20
+ function random_between(min, max) {
21
+ return (Math.random() * (max - min) + min).toPrecision(4)
22
+ }
23
+
24
+ function get_item_bg() {
25
+ if (Array.isArray(item_bg) && item_bg.length) {
26
+ return item_bg[Math.round(Math.random() * (item_bg.length - 1))]
27
+ } else if (item_bg == "rainbow") {
28
+ return `oklch(var(--l6-t) var(--c10) var(--h${Math.round(random_between(0, 24))}))`
29
+ }
30
+ return `oklch(var(--l6-t) var(--c${Math.round(random_between(1, 14))}) var(--primary-h))`
31
+ }
32
+
33
+ function prep_confetti() {
34
+ let confetti_prepped_loc = []
35
+ for (let i = 0; i < amount; i++) {
36
+ const item_bg = get_item_bg()
37
+ confetti_prepped_loc.push({
38
+ item_bg: item_bg,
39
+ skew: `${random_between(-45, 45)}deg,${random_between(-45, 45)}deg`,
40
+ rotation_xyz: `${random_between(-10, 10)}, ${random_between(-10, 10)}, ${random_between(-10, 10)}`,
41
+ rotation_deg: `${random_between(0, 360)}deg`,
42
+ translate_x: `${Math.floor(random_between(x_range?.[0], x_range?.[1]))}rem`,
43
+ translate_y: `${Math.floor(random_between(y_range?.[0], y_range?.[1]))}rem`,
44
+ scale: 0.1 * random_between(2, 10),
45
+ transition_time_range: `${random_between(0, time_range)}ms`,
46
+ })
47
+ }
48
+ confetti_prepped = confetti_prepped_loc
49
+ }
50
+
51
+ async function show_confetti() {
52
+ is_show = false
53
+ prep_confetti()
54
+ await tick()
55
+ is_show = true
56
+ setTimeout(() => {
57
+ is_show = false
58
+ }, duration + time_range)
59
+ }
60
+
61
+ function init(config) {
62
+ // show_confetti()
63
+ }
64
+
65
+ init(config)
66
+
67
+ return {
68
+ get type() {
69
+ return type
70
+ },
71
+ get confetti_prepped() {
72
+ return confetti_prepped
73
+ },
74
+ get is_show() {
75
+ return is_show
76
+ },
77
+ get border_radius() {
78
+ return border_radius
79
+ },
80
+ get fall_distance() {
81
+ return fall_distance
82
+ },
83
+ get size() {
84
+ return size
85
+ },
86
+ get transition_duration() {
87
+ return duration
88
+ },
89
+ get x_spread() {
90
+ return x_spread
91
+ },
92
+ show_confetti,
93
+ }
94
+ }
@@ -0,0 +1,500 @@
1
+ <script>
2
+ import { goto } from "$app/navigation"
3
+ import LoadingWheel from "../LoadingWheel/index.svelte"
4
+ import Audio from "../Audio/index.svelte"
5
+ import Code from "../Code/index.svelte"
6
+ import Color from "../Color/index.svelte"
7
+ import Image from "../Image/index.svelte"
8
+ import Number from "../Number/index.svelte"
9
+ import XPost from "../XPost/index.svelte"
10
+ import YoutubeVideo from "../YoutubeVideo/index.svelte"
11
+ import PhoneNumber from "../PhoneNumber/index.svelte"
12
+ import EmailAddress from "../EmailAddress/index.svelte"
13
+ import Slider from "../Slider/index.svelte"
14
+ import Checkbox from "../Checkbox/index.svelte"
15
+ import Json from "../Json/index.svelte"
16
+ import CronInput from "../CronInput/index.svelte"
17
+ import TextInput from "../TextInput/index.svelte"
18
+ import ColorInput from "../ColorInput/index.svelte"
19
+ import Dropdown from "../Dropdown/index.svelte"
20
+ import TimeInput from "../TimeInput/index.svelte"
21
+ import Time from "../Time/index.svelte"
22
+ import LocationInput from "../LocationInput/index.svelte"
23
+ import Location from "../Location/index.svelte"
24
+ import Qr from "../Qr/index.svelte"
25
+ import Link from "../Link/index.svelte"
26
+ import IconInput from "../IconInput/index.svelte"
27
+ import Icon from "../Icon/index.svelte"
28
+ import TableAdvanced from "../TableAdvanced/index.svelte"
29
+ import FileInput from "../FileInput/index.svelte"
30
+ import Button from "../Button/index.svelte"
31
+ import Spacer from "../Spacer/index.svelte"
32
+ import Self from "./index.svelte"
33
+ import { format_date, set_closurable_color, set_closurable, cron_to_english } from "../../client/index.js"
34
+
35
+ let { manager } = $props()
36
+
37
+ function handle_anchor_click(event) {
38
+ event.preventDefault()
39
+ const link = event.currentTarget
40
+ const anchor_id = new URL(link.href).hash
41
+ const anchor = document?.querySelector(anchor_id)
42
+ window.scrollTo({
43
+ top: anchor.offsetTop - 100,
44
+ behavior: "smooth",
45
+ })
46
+ }
47
+ </script>
48
+
49
+ {#snippet children()}
50
+ {#if manager?.val_prepped?.is_children && Array.isArray(manager?.val_prepped?.children)}
51
+ {#each manager?.val_prepped?.children as child}
52
+ <Self manager={child} />
53
+ {/each}
54
+ {/if}
55
+ {/snippet}
56
+
57
+ {#if !manager?.val_prepped?.type_id}
58
+ <p>Missing type</p>
59
+ {:else if manager?.val_prepped?.type_id === "show_conditions"}
60
+ {#if Array.isArray(manager?.val_prepped?.children) && manager?.val_prepped?.children.some( (h) => set_closurable(h?.val_prepped?.attributes?.is_show) )}
61
+ {#if Array.isArray(manager?.val_prepped?.children.find( (h) => set_closurable(h?.val_prepped?.attributes?.is_show) )?.val_prepped?.children)}
62
+ {#each manager?.val_prepped?.children.find( (h) => set_closurable(h?.val_prepped?.attributes?.is_show) )?.val_prepped?.children as child (child?.selector_id)}
63
+ <Self manager={child} />
64
+ {/each}
65
+ {/if}
66
+ {:else if Array.isArray(manager?.val_prepped?.children) && manager?.val_prepped?.children.some((h) => h?.val_prepped?.type_id == "show_conditions_item_else")}
67
+ {#if Array.isArray(manager?.val_prepped?.children.find((h) => h?.val_prepped?.type_id == "show_conditions_item_else")?.val_prepped?.children)}
68
+ {#each manager?.val_prepped?.children.find((h) => h?.val_prepped?.type_id == "show_conditions_item_else")?.val_prepped?.children as child (child?.selector_id)}
69
+ <Self manager={child} />
70
+ {/each}
71
+ {/if}
72
+ {/if}
73
+ {:else if manager?.val_prepped?.type_id === "children"}
74
+ {@render children()}
75
+ {:else if manager?.val_prepped?.type_id == "loop"}
76
+ {#if manager?.val_prepped?.is_children}
77
+ {#each manager?.val_prepped?.children as child_loops, i}
78
+ {#if Array.isArray(child_loops) && child_loops.length > 0}
79
+ {#each child_loops as child, i (child?.val_prepped?.selector_id)}
80
+ <Self manager={child} />
81
+ {/each}
82
+ {/if}
83
+ {#if i < manager?.val_prepped?.children.length - 1 && manager?.val_prepped?.attributes?.join_text}{manager
84
+ ?.val_prepped?.attributes?.join_text}{/if}
85
+ {/each}
86
+ {/if}
87
+ {:else if manager?.val_prepped?.type_id == "array_uniform_input"}
88
+ {#if manager?.val_prepped?.attributes?.label}
89
+ <p class="label">{manager?.val_prepped?.attributes?.label}</p>
90
+ {/if}
91
+ {#if manager?.val_prepped?.is_children}
92
+ {#each manager?.val_prepped?.children as child_loops}
93
+ <div style="display: flex; gap: .5rem;">
94
+ <Button manager={child_loops?.remove_item_button_manager} />
95
+ {#if Array.isArray(child_loops?.children)}
96
+ {#each child_loops?.children as child (child?.selector_id)}
97
+ <Self manager={child} />
98
+ {/each}
99
+ {/if}
100
+ </div>
101
+ {/each}
102
+ <Button manager={manager?.val_prepped?.add_item_button_manager} />
103
+ {/if}
104
+ {:else if manager?.val_prepped?.type_id == "object_uniform_input"}
105
+ {#if manager?.val_prepped?.attributes?.label}
106
+ <p class="label">{manager?.val_prepped?.attributes?.label}</p>
107
+ {/if}
108
+ {#if manager?.val_prepped?.is_children}
109
+ <div class="table_container">
110
+ <table style="margin: 0;">
111
+ <thead>
112
+ <tr>
113
+ <th>Delete</th>
114
+ <th>Key</th>
115
+ <th>Value</th>
116
+ </tr>
117
+ </thead>
118
+ <tbody>
119
+ {#each manager?.val_prepped?.children as child_loops}
120
+ <tr>
121
+ <td><Button manager={child_loops?.remove_item_button_manager} /></td>
122
+ <td>
123
+ {#if manager?.val_prepped?.attributes?.property_key_table_id}
124
+ <Dropdown manager={child_loops?.item_key_table_row_dropdown_manager} />
125
+ {:else}
126
+ <TextInput manager={child_loops?.item_key_text_input_manager} />
127
+ {/if}
128
+ </td>
129
+ <td>
130
+ {#if Array.isArray(child_loops?.children)}
131
+ {#each child_loops?.children as child (child?.selector_id)}
132
+ <Self manager={child} />
133
+ {/each}
134
+ {/if}
135
+ </td>
136
+ </tr>
137
+ {/each}
138
+ </tbody>
139
+ </table>
140
+ </div>
141
+ <Button manager={manager?.val_prepped?.add_item_button_manager} />
142
+ {/if}
143
+ {:else if manager?.val_prepped?.type_id == "table_row_id_input"}
144
+ <Dropdown manager={manager?.val_prepped?.manager} />
145
+ {:else if manager?.val_prepped?.type_id == "div"}
146
+ <div
147
+ id={manager?.val_prepped?.selector_id}
148
+ style="{manager?.val_prepped?.attributes?.background_color
149
+ ? `background-color: ${set_closurable_color(manager?.val_prepped?.attributes?.background_color)};`
150
+ : ''} {manager?.val_prepped?.attributes?.border_color
151
+ ? `border: 1px solid ${set_closurable_color(manager?.val_prepped?.attributes?.border_color)};`
152
+ : ''} {manager?.val_prepped?.attributes?.padding
153
+ ? `padding: ${set_closurable(manager?.val_prepped?.attributes?.padding)}rem;`
154
+ : ''} {manager?.val_prepped?.attributes?.border_radius
155
+ ? `border-radius: ${set_closurable(manager?.val_prepped?.attributes?.border_radius)}rem;`
156
+ : ''} {manager?.val_prepped?.attributes?.gap
157
+ ? `gap: ${set_closurable(manager?.val_prepped?.attributes?.gap)}rem;`
158
+ : ''} {manager?.val_prepped?.attributes?.padding
159
+ ? `padding: ${set_closurable(manager?.val_prepped?.attributes?.padding)}rem;`
160
+ : ''} {manager?.val_prepped?.attributes?.align_content || manager?.val_prepped?.attributes?.justify_content
161
+ ? `display: grid; place-content: ${set_closurable(manager?.val_prepped?.attributes?.align_content, 'stretch')} ${set_closurable(manager?.val_prepped?.attributes?.justify_content, 'stretch')};`
162
+ : ''}"
163
+ >
164
+ {@render children()}
165
+ </div>
166
+ {:else if manager?.val_prepped?.type_id == "article"}
167
+ <article id={manager?.val_prepped?.selector_id}>
168
+ {@render children()}
169
+ </article>
170
+ {:else if manager?.val_prepped?.type_id == "section"}
171
+ <section
172
+ id={manager?.val_prepped?.selector_id}
173
+ style="{manager?.val_prepped?.attributes?.background_color
174
+ ? `background-color: ${set_closurable_color(manager?.val_prepped?.attributes?.background_color)};`
175
+ : ''} {manager?.val_prepped?.attributes?.border_color
176
+ ? `border: 1px solid ${set_closurable_color(manager?.val_prepped?.attributes?.border_color)};`
177
+ : ''} {manager?.val_prepped?.attributes?.padding
178
+ ? `padding: ${set_closurable(manager?.val_prepped?.attributes?.padding)}rem;`
179
+ : ''} {manager?.val_prepped?.attributes?.border_radius
180
+ ? `border-radius: ${set_closurable(manager?.val_prepped?.attributes?.border_radius)}rem;`
181
+ : ''}"
182
+ >
183
+ {@render children()}
184
+ </section>
185
+ {:else if manager?.val_prepped?.type_id == "figure"}
186
+ <figure id={manager?.val_prepped?.selector_id}>
187
+ {@render children()}
188
+ {#if set_closurable(manager?.val_prepped?.attributes?.caption)}
189
+ <figcaption>
190
+ {set_closurable(manager?.val_prepped?.attributes?.caption)}
191
+ </figcaption>
192
+ {/if}
193
+ </figure>
194
+ {:else if manager?.val_prepped?.type_id == "p"}
195
+ <p id={manager?.val_prepped?.selector_id}>
196
+ {@render children()}
197
+ </p>
198
+ {:else if manager?.val_prepped?.type_id == "nav"}
199
+ <nav id={manager?.val_prepped?.selector_id}>
200
+ {@render children()}
201
+ </nav>
202
+ {:else if manager?.val_prepped?.type_id == "ol"}
203
+ <ol id={manager?.val_prepped?.selector_id}>
204
+ {@render children()}
205
+ </ol>
206
+ {:else if manager?.val_prepped?.type_id == "ul"}
207
+ <ul id={manager?.val_prepped?.selector_id}>
208
+ {@render children()}
209
+ </ul>
210
+ {:else if manager?.val_prepped?.type_id == "li"}
211
+ <li id={manager?.val_prepped?.selector_id}>
212
+ {@render children()}
213
+ </li>
214
+ {:else if manager?.val_prepped?.type_id == "header"}
215
+ <header id={manager?.val_prepped?.selector_id}>
216
+ {@render children()}
217
+ </header>
218
+ {:else if manager?.val_prepped?.type_id === "h1"}
219
+ <h1 id={manager?.val_prepped?.selector_id}>
220
+ {@render children()}
221
+ </h1>
222
+ {:else if manager?.val_prepped?.type_id === "h2"}
223
+ <h2 id={manager?.val_prepped?.selector_id}>
224
+ {@render children()}
225
+ </h2>
226
+ {:else if manager?.val_prepped?.type_id === "h3"}
227
+ <h3 id={manager?.val_prepped?.selector_id}>
228
+ {@render children()}
229
+ </h3>
230
+ {:else if manager?.val_prepped?.type_id === "h4"}
231
+ <h4 id={manager?.val_prepped?.selector_id}>
232
+ {@render children()}
233
+ </h4>
234
+ {:else if manager?.val_prepped?.type_id === "h5"}
235
+ <h5 id={manager?.val_prepped?.selector_id}>
236
+ {@render children()}
237
+ </h5>
238
+ {:else if manager?.val_prepped?.type_id === "h6"}
239
+ <h6 id={manager?.val_prepped?.selector_id}>
240
+ {@render children()}
241
+ </h6>
242
+ {:else if manager?.val_prepped?.type_id === "strong"}
243
+ <strong id={manager?.val_prepped?.selector_id}>{set_closurable(manager?.val_prepped?.attributes?.content)}</strong>
244
+ {:else if manager?.val_prepped?.type_id === "em"}
245
+ <em
246
+ id={manager?.val_prepped?.selector_id}
247
+ style={set_closurable(manager?.val_prepped?.attributes?.font_size) > 0
248
+ ? `font-size: ${set_closurable(manager?.val_prepped?.attributes?.font_size)}rem;`
249
+ : ""}>{set_closurable(manager?.val_prepped?.attributes?.content)}</em
250
+ >
251
+ {:else if manager?.val_prepped?.type_id === "strong_em"}
252
+ <em
253
+ ><strong id={manager?.val_prepped?.selector_id}>{set_closurable(manager?.val_prepped?.attributes?.content)}</strong
254
+ ></em
255
+ >
256
+ {:else if manager?.val_prepped?.type_id === "pre"}
257
+ <pre
258
+ style="{manager?.val_prepped?.attributes?.text_color
259
+ ? `color: ${set_closurable_color(manager?.val_prepped?.attributes?.text_color)};`
260
+ : ''} {manager?.val_prepped?.attributes?.font_size
261
+ ? `font-size: ${manager?.val_prepped?.attributes?.font_size}rem`
262
+ : ''}">
263
+ {JSON.stringify(set_closurable(manager?.val_prepped?.attributes?.content), null, 2)}
264
+ </pre>
265
+ {:else if manager?.val_prepped?.type_id === "mark"}
266
+ <mark id={manager?.val_prepped?.selector_id}>
267
+ {@render children()}
268
+ </mark>
269
+ {:else if manager?.val_prepped?.type_id === "span"}
270
+ <span id={manager?.val_prepped?.selector_id}>
271
+ {@render children()}
272
+ </span>
273
+ {:else if manager?.val_prepped?.type_id === "sub"}
274
+ <sub id={manager?.val_prepped?.selector_id}>
275
+ {@render children()}
276
+ </sub>
277
+ {:else if manager?.val_prepped?.type_id === "sup"}
278
+ <sup id={manager?.val_prepped?.selector_id}>
279
+ {@render children()}
280
+ </sup>
281
+ {:else if manager?.val_prepped?.type_id === "s"}
282
+ <s id={manager?.val_prepped?.selector_id}>
283
+ {@render children()}
284
+ </s>
285
+ {:else if manager?.val_prepped?.type_id === "q"}
286
+ <q id={manager?.val_prepped?.selector_id}>{set_closurable(manager?.val_prepped?.attributes?.content)}</q>
287
+ {:else if manager?.val_prepped?.type_id === "blockquote"}
288
+ <blockquote id={manager?.val_prepped?.selector_id}>
289
+ {@render children()}
290
+ </blockquote>
291
+ {:else if manager?.val_prepped?.type_id === "table_advanced"}
292
+ <TableAdvanced manager={manager?.val_prepped?.manager} />
293
+ {:else if manager?.val_prepped?.type_id === "table"}
294
+ <table id={manager?.val_prepped?.selector_id}>
295
+ {#if set_closurable(manager?.val_prepped?.attributes?.caption)}
296
+ <caption>
297
+ {set_closurable(manager?.val_prepped?.attributes?.caption)}
298
+ </caption>
299
+ {/if}
300
+ {@render children()}
301
+ </table>
302
+ {:else if manager?.val_prepped?.type_id === "thead"}
303
+ <thead id={manager?.val_prepped?.selector_id}>
304
+ {@render children()}
305
+ </thead>
306
+ {:else if manager?.val_prepped?.type_id === "tbody"}
307
+ <tbody id={manager?.val_prepped?.selector_id}>
308
+ {@render children()}
309
+ </tbody>
310
+ {:else if manager?.val_prepped?.type_id === "tfoot"}
311
+ <tfoot id={manager?.val_prepped?.selector_id}>
312
+ {@render children()}
313
+ </tfoot>
314
+ {:else if manager?.val_prepped?.type_id === "tr"}
315
+ <tr id={manager?.val_prepped?.selector_id}>
316
+ {@render children()}
317
+ </tr>
318
+ {:else if manager?.val_prepped?.type_id === "th"}
319
+ <th id={manager?.val_prepped?.selector_id}>
320
+ {@render children()}
321
+ </th>
322
+ {:else if manager?.val_prepped?.type_id === "td"}
323
+ <td id={manager?.val_prepped?.selector_id}>
324
+ {@render children()}
325
+ </td>
326
+ {:else if manager?.val_prepped?.type_id === "footer"}
327
+ <footer class="footnotes" id={manager?.val_prepped?.selector_id}>
328
+ <h2 class="visually_hidden" id="footnote-label">Footnotes</h2>
329
+ {@render children()}
330
+ </footer>
331
+ {:else if manager?.val_prepped?.type_id === "image"}
332
+ <Image manager={manager?.val_prepped?.manager} />
333
+ {:else if manager?.val_prepped?.type_id === "audio"}
334
+ <Audio manager={manager?.val_prepped?.manager} />
335
+ {:else if manager?.val_prepped?.type_id === "source"}
336
+ source_tbd
337
+ <!-- <source
338
+ id={manager?.val_prepped?.selector_id}
339
+ media={manager?.val_prepped?.attributes?.is_for_sm_screen ? "(max-width: 465px)" : "(min-width: 464px)"}
340
+ srcset={src}
341
+ type={manager?.val_prepped?.attributes?.file_type}
342
+ /> -->
343
+ {:else if manager?.val_prepped?.type_id === "picture"}
344
+ picture_tbd
345
+ <!-- {#if is_image_loading}
346
+ <div class="img" style="height: 43.5rem; display: grid; place-items: center; max-width: min(100%,50rem);">
347
+ <LoadingWheel size={8} />
348
+ </div>
349
+ {:else if !src}
350
+ <p>No Image Src</p>
351
+ {/if}
352
+ <picture id={manager?.val_prepped?.selector_id} class:is_hidden={is_image_loading}>
353
+ {@render children()}
354
+ <img
355
+ alt={manager?.val_prepped.children.length > 0 ? manager?.val_prepped?.children?.[0]?.attributes?.alt : null}
356
+ {src}
357
+ style="aspect-ratio: auto 1.5; width: 100%; max-width: 65rem; height: auto;"
358
+ />
359
+ </picture> -->
360
+ {:else if manager?.val_prepped?.type_id === "ref"}
361
+ <sup>
362
+ <a
363
+ id={manager?.val_prepped?.selector_id}
364
+ onclick={handle_anchor_click}
365
+ href={set_closurable(manager?.val_prepped?.attributes?.href)}
366
+ >{set_closurable(manager?.val_prepped?.attributes?.content)}</a
367
+ ></sup
368
+ >
369
+ {:else if manager?.val_prepped?.type_id == "tag"}
370
+ tag_tbd
371
+ {:else if manager?.val_prepped?.type_id == "code"}
372
+ <div style="margin-top: .5rem;">
373
+ <Code manager={manager?.val_prepped?.manager} />
374
+ </div>
375
+ {:else if manager?.val_prepped?.type_id == "json"}
376
+ <Json manager={manager?.val_prepped?.manager} />
377
+ {:else if manager?.val_prepped?.type_id === "code_inline"}
378
+ {#if set_closurable(manager?.val_prepped?.attributes?.content)}
379
+ <div style="display: inline-flex; align-items: center;">
380
+ <code id={manager?.val_prepped?.selector_id} class="inline_code"
381
+ >{set_closurable(manager?.val_prepped?.attributes?.content)}</code
382
+ ><Button manager={manager?.val_prepped?.copy_button_manager} />
383
+ </div>
384
+ {/if}
385
+ {:else if manager?.val_prepped?.type_id === "youtube_video"}
386
+ <YoutubeVideo manager={manager?.val_prepped?.manager} />
387
+ {:else if manager?.val_prepped?.type_id === "x_post"}
388
+ <XPost manager={manager?.val_prepped?.manager} />
389
+ {:else if manager?.val_prepped?.type_id === "link"}
390
+ <Link manager={manager?.val_prepped?.manager}>
391
+ {@render children()}
392
+ </Link>
393
+ {:else if manager?.val_prepped?.type_id === "qr"}
394
+ <Qr manager={manager?.val_prepped?.manager} />
395
+ {:else if manager?.val_prepped?.type_id === "dropdown"}
396
+ <Dropdown manager={manager?.val_prepped?.manager} />
397
+ {:else if manager?.val_prepped?.type_id === "text_input"}
398
+ <TextInput manager={manager?.val_prepped?.manager} />
399
+ {:else if manager?.val_prepped?.type_id === "slider"}
400
+ <Slider manager={manager?.val_prepped?.manager} />
401
+ {:else if manager?.val_prepped?.type_id === "number_input"}
402
+ <TextInput manager={manager?.val_prepped?.manager} />
403
+ {:else if manager?.val_prepped?.type_id === "number"}
404
+ <Number manager={manager?.val_prepped?.manager} />
405
+ {:else if manager?.val_prepped?.type_id === "icon_input"}
406
+ <IconInput manager={manager?.val_prepped?.manager} />
407
+ {:else if manager?.val_prepped?.type_id === "icon"}
408
+ <Icon manager={manager?.val_prepped?.manager} />
409
+ {:else if manager?.val_prepped?.type_id === "email_address"}
410
+ <EmailAddress manager={manager?.val_prepped?.manager} />
411
+ {:else if manager?.val_prepped?.type_id === "phone_number"}
412
+ <PhoneNumber manager={manager?.val_prepped?.manager} />
413
+ {:else if manager?.val_prepped?.type_id === "location_input"}
414
+ <LocationInput manager={manager?.val_prepped?.manager} />
415
+ {:else if manager?.val_prepped?.type_id === "location"}
416
+ <Location manager={manager?.val_prepped?.manager} />
417
+ {:else if manager?.val_prepped?.type_id === "variable"}
418
+ {set_closurable(manager?.val_prepped?.attributes?.content)}
419
+ {:else if manager?.val_prepped?.type_id === "checkbox"}
420
+ <div style="display: inline-flex;">
421
+ <Checkbox manager={manager?.val_prepped?.manager} />
422
+ </div>
423
+ {:else if manager?.val_prepped?.type_id === "file_input"}
424
+ <FileInput manager={manager?.val_prepped?.manager} />
425
+ {:else if manager?.val_prepped?.type_id === "color_input"}
426
+ <ColorInput manager={manager?.val_prepped?.manager} />
427
+ {:else if manager?.val_prepped?.type_id === "color"}
428
+ <div style="display: inline-flex;">
429
+ <Color manager={manager?.val_prepped?.manager} />
430
+ </div>
431
+ {:else if manager?.val_prepped?.type_id === "time_input"}
432
+ <TimeInput manager={manager?.val_prepped?.manager} />
433
+ {:else if manager?.val_prepped?.type_id === "time"}
434
+ <Time manager={manager?.val_prepped?.manager} />
435
+ {:else if manager?.val_prepped?.type_id === "cron_input"}
436
+ <CronInput manager={manager?.val_prepped?.manager} />
437
+ {:else if manager?.val_prepped?.type_id === "cron"}
438
+ <abbr title={cron_to_english(set_closurable(manager?.val_prepped?.attributes?.val))}>
439
+ {set_closurable(manager?.val_prepped?.attributes?.val)}
440
+ </abbr>
441
+ {:else if manager?.val_prepped?.type_id === "base_text"}
442
+ <span
443
+ role="button"
444
+ tabindex="0"
445
+ style="{manager?.val_prepped?.attributes?.text_color
446
+ ? `color: ${set_closurable_color(manager?.val_prepped?.attributes?.text_color)};`
447
+ : ''} {manager?.val_prepped?.attributes?.font_size
448
+ ? `font-size: ${manager?.val_prepped?.attributes?.font_size}rem`
449
+ : ''}"
450
+ onclick={() => manager?.open_edit_element_attributes_popover(manager?.val_prepped?.selector_id)}
451
+ onkeydown={() => manager?.open_edit_element_attributes_popover(manager?.val_prepped?.selector_id)}
452
+ onpointerenter={() => manager?.set_focused_selector_id(manager?.val_prepped?.selector_id)}
453
+ onpointercancel={() => manager?.set_focused_selector_id(null)}
454
+ onpointerleave={() => manager?.set_focused_selector_id(null)}
455
+ >
456
+ {set_closurable(manager?.val_prepped?.attributes?.content)}
457
+ </span>
458
+ {:else if manager?.val_prepped?.type_id === "br"}
459
+ <br />
460
+ {:else if manager?.val_prepped?.type_id === "spacer"}
461
+ <Spacer
462
+ mt={manager?.val_prepped?.attributes?.mt}
463
+ mb={manager?.val_prepped?.attributes?.mb}
464
+ ml={manager?.val_prepped?.attributes?.ml}
465
+ mr={manager?.val_prepped?.attributes?.mr}
466
+ is_vert={manager?.val_prepped?.attributes?.is_vert}
467
+ color={manager?.val_prepped?.attributes?.color}
468
+ />
469
+ {:else if manager?.val_prepped?.type_id === "hr"}
470
+ <hr id={manager?.val_prepped?.selector_id} />
471
+ {:else if manager?.val_prepped?.type_id === "slot"}
472
+ <div style="border-radius: 1rem; border: 1px dashed var(--shadow8-t); padding: 1rem;">
473
+ <h4 class="label">Slot</h4>
474
+ {#if manager?.val_prepped?.attributes?.val}
475
+ <p style="margin-top: 0;">{manager?.val_prepped?.attributes?.val}</p>
476
+ {:else}
477
+ <p style="margin-top: 0; color: var(--warning-t)">Val attribute not set</p>
478
+ {/if}
479
+ </div>
480
+ {:else}
481
+ <p id={manager?.val_prepped?.selector_id}>{manager?.val_prepped?.type_id} type_not_found</p>
482
+ {/if}
483
+
484
+ <style>
485
+ p:not(:first-child) {
486
+ margin-top: 1rem;
487
+ }
488
+ a,
489
+ p,
490
+ li,
491
+ td,
492
+ th,
493
+ code,
494
+ pre,
495
+ span {
496
+ overflow-wrap: break-word;
497
+ word-break: break-word;
498
+ white-space: normal;
499
+ }
500
+ </style>