sveltekit-ui 1.0.0

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 (487) hide show
  1. package/README.md +23 -0
  2. package/dist/Components/Alert/index.svelte +88 -0
  3. package/dist/Components/Alert/index.svelte.js +101 -0
  4. package/dist/Components/ArrowToggle/index.svelte +62 -0
  5. package/dist/Components/Attachment/index.svelte +69 -0
  6. package/dist/Components/Attachment/index.svelte.js +119 -0
  7. package/dist/Components/Audio/index.svelte +193 -0
  8. package/dist/Components/Audio/index.svelte.js +463 -0
  9. package/dist/Components/AudioEditor/index.svelte +253 -0
  10. package/dist/Components/AudioEditor/index.svelte.js +973 -0
  11. package/dist/Components/AudioEditor/samples/alloy-voice-sample.mp3 +0 -0
  12. package/dist/Components/AudioEditor/samples/echo-voice-sample.mp3 +0 -0
  13. package/dist/Components/AudioEditor/samples/fable-voice-sample.mp3 +0 -0
  14. package/dist/Components/AudioEditor/samples/nova-voice-sample.mp3 +0 -0
  15. package/dist/Components/AudioEditor/samples/onyx-voice-sample.mp3 +0 -0
  16. package/dist/Components/AudioEditor/samples/shimmer-voice-sample.mp3 +0 -0
  17. package/dist/Components/AuthCodeInput/index.svelte +85 -0
  18. package/dist/Components/AuthCodeInput/index.svelte.js +95 -0
  19. package/dist/Components/Breadcrumbs/index.svelte +27 -0
  20. package/dist/Components/Breadcrumbs/index.svelte.js +88 -0
  21. package/dist/Components/Button/index.svelte +721 -0
  22. package/dist/Components/Button/index.svelte.js +375 -0
  23. package/dist/Components/Chart/Klines/index.svelte +87 -0
  24. package/dist/Components/Chart/index.svelte +226 -0
  25. package/dist/Components/Chart/index.svelte.js +1084 -0
  26. package/dist/Components/ChartInput/DisplayNav/Klines/index.svelte +150 -0
  27. package/dist/Components/ChartInput/DisplayNav/Lines/index.svelte +45 -0
  28. package/dist/Components/ChartInput/DisplayNav/index.svelte +297 -0
  29. package/dist/Components/ChartInput/EditPanel/index.svelte +155 -0
  30. package/dist/Components/ChartInput/index.svelte +21 -0
  31. package/dist/Components/ChartInput/index.svelte.js +671 -0
  32. package/dist/Components/Checkbox/index.svelte +411 -0
  33. package/dist/Components/Checkbox/index.svelte.js +178 -0
  34. package/dist/Components/Code/index.svelte +23 -0
  35. package/dist/Components/Code/index.svelte.js +34 -0
  36. package/dist/Components/Color/index.svelte +51 -0
  37. package/dist/Components/Color/index.svelte.js +31 -0
  38. package/dist/Components/ColorInput/ChromaPicker/index.svelte +50 -0
  39. package/dist/Components/ColorInput/ColorPalette/index.svelte +62 -0
  40. package/dist/Components/ColorInput/OpacityPicker/index.svelte +68 -0
  41. package/dist/Components/ColorInput/ShowcasePicker/index.svelte +136 -0
  42. package/dist/Components/ColorInput/index.svelte +70 -0
  43. package/dist/Components/ColorInput/index.svelte.js +383 -0
  44. package/dist/Components/ConditionsInput/index.svelte +46 -0
  45. package/dist/Components/ConditionsInput/index.svelte.js +201 -0
  46. package/dist/Components/Confetti/index.svelte +98 -0
  47. package/dist/Components/Confetti/index.svelte.js +94 -0
  48. package/dist/Components/Content/index.svelte +471 -0
  49. package/dist/Components/Content/index.svelte.js +903 -0
  50. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte +31 -0
  51. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte.js +258 -0
  52. package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte +31 -0
  53. package/dist/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte.js +258 -0
  54. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte +58 -0
  55. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte.js +210 -0
  56. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte +28 -0
  57. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte.js +224 -0
  58. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte +44 -0
  59. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte.js +273 -0
  60. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte +41 -0
  61. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte.js +203 -0
  62. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte +19 -0
  63. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte.js +119 -0
  64. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte +60 -0
  65. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte.js +546 -0
  66. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte +47 -0
  67. package/dist/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte.js +185 -0
  68. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte +35 -0
  69. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte.js +224 -0
  70. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte +20 -0
  71. package/dist/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte.js +87 -0
  72. package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte +25 -0
  73. package/dist/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte.js +101 -0
  74. package/dist/Components/ContentInput/AttributesInput/index.svelte +338 -0
  75. package/dist/Components/ContentInput/AttributesInput/index.svelte.js +1446 -0
  76. package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte +64 -0
  77. package/dist/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte.js +97 -0
  78. package/dist/Components/ContentInput/ContentPanelBuilder/ElementList/index.svelte +122 -0
  79. package/dist/Components/ContentInput/ContentPanelBuilder/index.svelte +41 -0
  80. package/dist/Components/ContentInput/index.svelte +50 -0
  81. package/dist/Components/ContentInput/index.svelte.js +1066 -0
  82. package/dist/Components/CronInput/index.svelte +78 -0
  83. package/dist/Components/CronInput/index.svelte.js +199 -0
  84. package/dist/Components/DataTypeInput/index.svelte +174 -0
  85. package/dist/Components/DataTypeInput/index.svelte.js +568 -0
  86. package/dist/Components/Dropdown/index.svelte +116 -0
  87. package/dist/Components/Dropdown/index.svelte.js +403 -0
  88. package/dist/Components/EmailAddress/index.svelte +22 -0
  89. package/dist/Components/EmailAddress/index.svelte.js +45 -0
  90. package/dist/Components/ErrorX/index.svelte +58 -0
  91. package/dist/Components/Eye/index.svelte +57 -0
  92. package/dist/Components/FileInput/index.svelte +146 -0
  93. package/dist/Components/FileInput/index.svelte.js +226 -0
  94. package/dist/Components/FunctionInput/Node/helpers/DefinedTargetInput/index.svelte +110 -0
  95. package/dist/Components/FunctionInput/Node/helpers/Field/index.svelte +109 -0
  96. package/dist/Components/FunctionInput/Node/helpers/Field/index.svelte.js +208 -0
  97. package/dist/Components/FunctionInput/Node/helpers/InlineDropArea/index.svelte +97 -0
  98. package/dist/Components/FunctionInput/Node/helpers/InlineDropArea/index.svelte.js +105 -0
  99. package/dist/Components/FunctionInput/Node/helpers/ObjectInput/index.svelte +198 -0
  100. package/dist/Components/FunctionInput/Node/helpers/StackArea/index.svelte +169 -0
  101. package/dist/Components/FunctionInput/Node/helpers/StackArea/index.svelte.js +152 -0
  102. package/dist/Components/FunctionInput/Node/index.svelte +144 -0
  103. package/dist/Components/FunctionInput/Node/index.svelte.js +130 -0
  104. package/dist/Components/FunctionInput/index.svelte +356 -0
  105. package/dist/Components/FunctionInput/index.svelte.js +1215 -0
  106. package/dist/Components/Hamburger/index.svelte +99 -0
  107. package/dist/Components/HorizScrollBox/index.svelte +145 -0
  108. package/dist/Components/Icon/index.svelte +412 -0
  109. package/dist/Components/Icon/index.svelte.js +117 -0
  110. package/dist/Components/IconInput/index.svelte +77 -0
  111. package/dist/Components/IconInput/index.svelte.js +260 -0
  112. package/dist/Components/Image/index.svelte +121 -0
  113. package/dist/Components/Image/index.svelte.js +114 -0
  114. package/dist/Components/ImageEditor/Image/CropBox/index.svelte +165 -0
  115. package/dist/Components/ImageEditor/Image/index.svelte +104 -0
  116. package/dist/Components/ImageEditor/Panels/AI/index.svelte +36 -0
  117. package/dist/Components/ImageEditor/Panels/Crop/index.svelte +96 -0
  118. package/dist/Components/ImageEditor/Panels/File/QualityPicker/index.svelte +124 -0
  119. package/dist/Components/ImageEditor/Panels/File/index.svelte +74 -0
  120. package/dist/Components/ImageEditor/Panels/Filters/index.svelte +46 -0
  121. package/dist/Components/ImageEditor/Panels/Resize/index.svelte +58 -0
  122. package/dist/Components/ImageEditor/index.svelte +91 -0
  123. package/dist/Components/ImageEditor/index.svelte.js +1907 -0
  124. package/dist/Components/ImageSlider/index.svelte +124 -0
  125. package/dist/Components/ImageSlider/index.svelte.js +99 -0
  126. package/dist/Components/InfoBox/index.svelte +89 -0
  127. package/dist/Components/Json/Nested/index.svelte +157 -0
  128. package/dist/Components/Json/index.svelte +60 -0
  129. package/dist/Components/Json/index.svelte.js +594 -0
  130. package/dist/Components/LabeledItem/index.svelte +102 -0
  131. package/dist/Components/Layout/NavBar/FullNav/index.svelte +53 -0
  132. package/dist/Components/Layout/NavBar/NavGuts/index.svelte +87 -0
  133. package/dist/Components/Layout/NavBar/index.svelte +72 -0
  134. package/dist/Components/Layout/index.svelte +149 -0
  135. package/dist/Components/Layout/index.svelte.js +362 -0
  136. package/dist/Components/Link/index.svelte +46 -0
  137. package/dist/Components/Link/index.svelte.js +126 -0
  138. package/dist/Components/LoadingSuccessDiv/index.svelte +51 -0
  139. package/dist/Components/LoadingWheel/index.svelte +38 -0
  140. package/dist/Components/Location/index.svelte +85 -0
  141. package/dist/Components/Location/index.svelte.js +292 -0
  142. package/dist/Components/LocationInput/index.svelte +200 -0
  143. package/dist/Components/LocationInput/index.svelte.js +950 -0
  144. package/dist/Components/Number/index.svelte +47 -0
  145. package/dist/Components/Number/index.svelte.js +151 -0
  146. package/dist/Components/PhoneCountryCode/index.svelte +7 -0
  147. package/dist/Components/PhoneCountryCode/index.svelte.js +260 -0
  148. package/dist/Components/PhoneNumber/index.svelte +22 -0
  149. package/dist/Components/PhoneNumber/index.svelte.js +41 -0
  150. package/dist/Components/Popover/index.svelte +396 -0
  151. package/dist/Components/Popover/index.svelte.js +319 -0
  152. package/dist/Components/Qr/index.svelte +60 -0
  153. package/dist/Components/Qr/index.svelte.js +295 -0
  154. package/dist/Components/Slider/index.svelte +231 -0
  155. package/dist/Components/Slider/index.svelte.js +468 -0
  156. package/dist/Components/Spacer/index.svelte +41 -0
  157. package/dist/Components/StoragePicker/DisplayFile/index.svelte +15 -0
  158. package/dist/Components/StoragePicker/index.svelte +192 -0
  159. package/dist/Components/StoragePicker/index.svelte.js +593 -0
  160. package/dist/Components/SuccessCheck/index.svelte +56 -0
  161. package/dist/Components/TableAdvanced/ColumnInput/index.svelte +110 -0
  162. package/dist/Components/TableAdvanced/ColumnInput/index.svelte.js +494 -0
  163. package/dist/Components/TableAdvanced/FilterInput/index.svelte +54 -0
  164. package/dist/Components/TableAdvanced/FilterInput/index.svelte.js +247 -0
  165. package/dist/Components/TableAdvanced/Pagination/index.svelte +43 -0
  166. package/dist/Components/TableAdvanced/Pagination/index.svelte.js +97 -0
  167. package/dist/Components/TableAdvanced/SortByInput/index.svelte +79 -0
  168. package/dist/Components/TableAdvanced/SortByInput/index.svelte.js +191 -0
  169. package/dist/Components/TableAdvanced/index.svelte +268 -0
  170. package/dist/Components/TableAdvanced/index.svelte.js +1422 -0
  171. package/dist/Components/Tag/index.svelte +45 -0
  172. package/dist/Components/Tag/index.svelte.js +76 -0
  173. package/dist/Components/TextArrayInput/index.svelte +108 -0
  174. package/dist/Components/TextArrayInput/index.svelte.js +239 -0
  175. package/dist/Components/TextInput/PasswordTooltip/index.svelte +89 -0
  176. package/dist/Components/TextInput/index.svelte +223 -0
  177. package/dist/Components/TextInput/index.svelte.js +434 -0
  178. package/dist/Components/Time/index.svelte +7 -0
  179. package/dist/Components/Time/index.svelte.js +38 -0
  180. package/dist/Components/TimeInput/NumberToggler/index.svelte +34 -0
  181. package/dist/Components/TimeInput/NumberToggler/index.svelte.js +79 -0
  182. package/dist/Components/TimeInput/index.js +699 -0
  183. package/dist/Components/TimeInput/index.svelte +211 -0
  184. package/dist/Components/TimeInput/index.svelte.js +638 -0
  185. package/dist/Components/Tooltip/index.svelte +143 -0
  186. package/dist/Components/TransparentBackground/index.svelte +153 -0
  187. package/dist/Components/TypingDots/index.svelte +84 -0
  188. package/dist/Components/VariablePathInput/index.svelte +109 -0
  189. package/dist/Components/VariablePathInput/index.svelte.js +250 -0
  190. package/dist/Components/VideoTBD/index.svelte +100 -0
  191. package/dist/Components/XFollow/index.svelte +42 -0
  192. package/dist/Components/XPost/index.svelte +52 -0
  193. package/dist/Components/XPost/index.svelte.js +64 -0
  194. package/dist/Components/YoutubeVideo/index.svelte +73 -0
  195. package/dist/Components/YoutubeVideo/index.svelte.js +54 -0
  196. package/dist/actions/draggable.js +49 -0
  197. package/dist/actions/intersection_observer.js +24 -0
  198. package/dist/actions/no_spaces.js +33 -0
  199. package/dist/actions/numbers_only.js +26 -0
  200. package/dist/actions/scroll_y.js +28 -0
  201. package/dist/actions/stop_scroll_propagation_y.js +42 -0
  202. package/dist/actions/swipe_handler.js +295 -0
  203. package/dist/client/astc_formatting/index.js +1167 -0
  204. package/dist/client/docs/index.js +7612 -0
  205. package/dist/client/index.js +729 -0
  206. package/dist/client/types/index.js +4681 -0
  207. package/dist/index.js +161 -0
  208. package/dist/style.css +682 -0
  209. package/package.json +44 -0
  210. package/src/app.html +17 -0
  211. package/src/hooks.server.js +7 -0
  212. package/src/lib/Components/Alert/index.svelte +88 -0
  213. package/src/lib/Components/Alert/index.svelte.js +101 -0
  214. package/src/lib/Components/ArrowToggle/index.svelte +62 -0
  215. package/src/lib/Components/Attachment/index.svelte +69 -0
  216. package/src/lib/Components/Attachment/index.svelte.js +119 -0
  217. package/src/lib/Components/Audio/index.svelte +193 -0
  218. package/src/lib/Components/Audio/index.svelte.js +463 -0
  219. package/src/lib/Components/AudioEditor/index.svelte +253 -0
  220. package/src/lib/Components/AudioEditor/index.svelte.js +973 -0
  221. package/src/lib/Components/AudioEditor/samples/alloy-voice-sample.mp3 +0 -0
  222. package/src/lib/Components/AudioEditor/samples/echo-voice-sample.mp3 +0 -0
  223. package/src/lib/Components/AudioEditor/samples/fable-voice-sample.mp3 +0 -0
  224. package/src/lib/Components/AudioEditor/samples/nova-voice-sample.mp3 +0 -0
  225. package/src/lib/Components/AudioEditor/samples/onyx-voice-sample.mp3 +0 -0
  226. package/src/lib/Components/AudioEditor/samples/shimmer-voice-sample.mp3 +0 -0
  227. package/src/lib/Components/AuthCodeInput/index.svelte +85 -0
  228. package/src/lib/Components/AuthCodeInput/index.svelte.js +95 -0
  229. package/src/lib/Components/Breadcrumbs/index.svelte +27 -0
  230. package/src/lib/Components/Breadcrumbs/index.svelte.js +88 -0
  231. package/src/lib/Components/Button/index.svelte +721 -0
  232. package/src/lib/Components/Button/index.svelte.js +375 -0
  233. package/src/lib/Components/Chart/Klines/index.svelte +87 -0
  234. package/src/lib/Components/Chart/index.svelte +226 -0
  235. package/src/lib/Components/Chart/index.svelte.js +1084 -0
  236. package/src/lib/Components/ChartInput/DisplayNav/Klines/index.svelte +150 -0
  237. package/src/lib/Components/ChartInput/DisplayNav/Lines/index.svelte +45 -0
  238. package/src/lib/Components/ChartInput/DisplayNav/index.svelte +297 -0
  239. package/src/lib/Components/ChartInput/EditPanel/index.svelte +155 -0
  240. package/src/lib/Components/ChartInput/index.svelte +21 -0
  241. package/src/lib/Components/ChartInput/index.svelte.js +671 -0
  242. package/src/lib/Components/Checkbox/index.svelte +411 -0
  243. package/src/lib/Components/Checkbox/index.svelte.js +178 -0
  244. package/src/lib/Components/Code/index.svelte +23 -0
  245. package/src/lib/Components/Code/index.svelte.js +34 -0
  246. package/src/lib/Components/Color/index.svelte +51 -0
  247. package/src/lib/Components/Color/index.svelte.js +31 -0
  248. package/src/lib/Components/ColorInput/ChromaPicker/index.svelte +50 -0
  249. package/src/lib/Components/ColorInput/ColorPalette/index.svelte +62 -0
  250. package/src/lib/Components/ColorInput/OpacityPicker/index.svelte +68 -0
  251. package/src/lib/Components/ColorInput/ShowcasePicker/index.svelte +136 -0
  252. package/src/lib/Components/ColorInput/index.svelte +70 -0
  253. package/src/lib/Components/ColorInput/index.svelte.js +383 -0
  254. package/src/lib/Components/ConditionsInput/index.svelte +46 -0
  255. package/src/lib/Components/ConditionsInput/index.svelte.js +201 -0
  256. package/src/lib/Components/Confetti/index.svelte +98 -0
  257. package/src/lib/Components/Confetti/index.svelte.js +94 -0
  258. package/src/lib/Components/Content/index.svelte +471 -0
  259. package/src/lib/Components/Content/index.svelte.js +903 -0
  260. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte +31 -0
  261. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Audio/index.svelte.js +258 -0
  262. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte +31 -0
  263. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/AudioAdvanced/index.svelte.js +258 -0
  264. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte +58 -0
  265. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Dropdown/index.svelte.js +210 -0
  266. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte +28 -0
  267. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Image/index.svelte.js +224 -0
  268. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte +44 -0
  269. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Number/index.svelte.js +273 -0
  270. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte +41 -0
  271. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Qr/index.svelte.js +203 -0
  272. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte +19 -0
  273. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Slider/index.svelte.js +119 -0
  274. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte +60 -0
  275. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TableAdvanced/index.svelte.js +546 -0
  276. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte +47 -0
  277. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/Tag/index.svelte.js +185 -0
  278. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte +35 -0
  279. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TextInput/index.svelte.js +224 -0
  280. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte +20 -0
  281. package/src/lib/Components/ContentInput/AttributesInput/CustomConfig/TimeInput/index.svelte.js +87 -0
  282. package/src/lib/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte +25 -0
  283. package/src/lib/Components/ContentInput/AttributesInput/DefinedTypeInput/index.svelte.js +101 -0
  284. package/src/lib/Components/ContentInput/AttributesInput/index.svelte +338 -0
  285. package/src/lib/Components/ContentInput/AttributesInput/index.svelte.js +1446 -0
  286. package/src/lib/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte +64 -0
  287. package/src/lib/Components/ContentInput/ContentPanelBuilder/AddElement/index.svelte.js +97 -0
  288. package/src/lib/Components/ContentInput/ContentPanelBuilder/ElementList/index.svelte +122 -0
  289. package/src/lib/Components/ContentInput/ContentPanelBuilder/index.svelte +41 -0
  290. package/src/lib/Components/ContentInput/index.svelte +50 -0
  291. package/src/lib/Components/ContentInput/index.svelte.js +1066 -0
  292. package/src/lib/Components/CronInput/index.svelte +78 -0
  293. package/src/lib/Components/CronInput/index.svelte.js +199 -0
  294. package/src/lib/Components/DataTypeInput/index.svelte +174 -0
  295. package/src/lib/Components/DataTypeInput/index.svelte.js +568 -0
  296. package/src/lib/Components/Dropdown/index.svelte +116 -0
  297. package/src/lib/Components/Dropdown/index.svelte.js +403 -0
  298. package/src/lib/Components/EmailAddress/index.svelte +22 -0
  299. package/src/lib/Components/EmailAddress/index.svelte.js +45 -0
  300. package/src/lib/Components/ErrorX/index.svelte +58 -0
  301. package/src/lib/Components/Eye/index.svelte +57 -0
  302. package/src/lib/Components/FileInput/index.svelte +146 -0
  303. package/src/lib/Components/FileInput/index.svelte.js +226 -0
  304. package/src/lib/Components/FunctionInput/Node/helpers/DefinedTargetInput/index.svelte +110 -0
  305. package/src/lib/Components/FunctionInput/Node/helpers/Field/index.svelte +109 -0
  306. package/src/lib/Components/FunctionInput/Node/helpers/Field/index.svelte.js +208 -0
  307. package/src/lib/Components/FunctionInput/Node/helpers/InlineDropArea/index.svelte +97 -0
  308. package/src/lib/Components/FunctionInput/Node/helpers/InlineDropArea/index.svelte.js +105 -0
  309. package/src/lib/Components/FunctionInput/Node/helpers/ObjectInput/index.svelte +198 -0
  310. package/src/lib/Components/FunctionInput/Node/helpers/StackArea/index.svelte +169 -0
  311. package/src/lib/Components/FunctionInput/Node/helpers/StackArea/index.svelte.js +152 -0
  312. package/src/lib/Components/FunctionInput/Node/index.svelte +144 -0
  313. package/src/lib/Components/FunctionInput/Node/index.svelte.js +130 -0
  314. package/src/lib/Components/FunctionInput/index.svelte +356 -0
  315. package/src/lib/Components/FunctionInput/index.svelte.js +1215 -0
  316. package/src/lib/Components/Hamburger/index.svelte +99 -0
  317. package/src/lib/Components/HorizScrollBox/index.svelte +145 -0
  318. package/src/lib/Components/Icon/index.svelte +412 -0
  319. package/src/lib/Components/Icon/index.svelte.js +117 -0
  320. package/src/lib/Components/IconInput/index.svelte +77 -0
  321. package/src/lib/Components/IconInput/index.svelte.js +260 -0
  322. package/src/lib/Components/Image/index.svelte +121 -0
  323. package/src/lib/Components/Image/index.svelte.js +114 -0
  324. package/src/lib/Components/ImageEditor/Image/CropBox/index.svelte +165 -0
  325. package/src/lib/Components/ImageEditor/Image/index.svelte +104 -0
  326. package/src/lib/Components/ImageEditor/Panels/AI/index.svelte +36 -0
  327. package/src/lib/Components/ImageEditor/Panels/Crop/index.svelte +96 -0
  328. package/src/lib/Components/ImageEditor/Panels/File/QualityPicker/index.svelte +124 -0
  329. package/src/lib/Components/ImageEditor/Panels/File/index.svelte +74 -0
  330. package/src/lib/Components/ImageEditor/Panels/Filters/index.svelte +46 -0
  331. package/src/lib/Components/ImageEditor/Panels/Resize/index.svelte +58 -0
  332. package/src/lib/Components/ImageEditor/index.svelte +91 -0
  333. package/src/lib/Components/ImageEditor/index.svelte.js +1907 -0
  334. package/src/lib/Components/ImageSlider/index.svelte +124 -0
  335. package/src/lib/Components/ImageSlider/index.svelte.js +99 -0
  336. package/src/lib/Components/InfoBox/index.svelte +89 -0
  337. package/src/lib/Components/Json/Nested/index.svelte +157 -0
  338. package/src/lib/Components/Json/index.svelte +60 -0
  339. package/src/lib/Components/Json/index.svelte.js +594 -0
  340. package/src/lib/Components/LabeledItem/index.svelte +102 -0
  341. package/src/lib/Components/Layout/NavBar/FullNav/index.svelte +53 -0
  342. package/src/lib/Components/Layout/NavBar/NavGuts/index.svelte +87 -0
  343. package/src/lib/Components/Layout/NavBar/index.svelte +72 -0
  344. package/src/lib/Components/Layout/index.svelte +149 -0
  345. package/src/lib/Components/Layout/index.svelte.js +362 -0
  346. package/src/lib/Components/Link/index.svelte +46 -0
  347. package/src/lib/Components/Link/index.svelte.js +126 -0
  348. package/src/lib/Components/LoadingSuccessDiv/index.svelte +51 -0
  349. package/src/lib/Components/LoadingWheel/index.svelte +38 -0
  350. package/src/lib/Components/Location/index.svelte +85 -0
  351. package/src/lib/Components/Location/index.svelte.js +292 -0
  352. package/src/lib/Components/LocationInput/index.svelte +200 -0
  353. package/src/lib/Components/LocationInput/index.svelte.js +950 -0
  354. package/src/lib/Components/Number/index.svelte +47 -0
  355. package/src/lib/Components/Number/index.svelte.js +151 -0
  356. package/src/lib/Components/PhoneCountryCode/index.svelte +7 -0
  357. package/src/lib/Components/PhoneCountryCode/index.svelte.js +260 -0
  358. package/src/lib/Components/PhoneNumber/index.svelte +22 -0
  359. package/src/lib/Components/PhoneNumber/index.svelte.js +41 -0
  360. package/src/lib/Components/Popover/index.svelte +396 -0
  361. package/src/lib/Components/Popover/index.svelte.js +319 -0
  362. package/src/lib/Components/Qr/index.svelte +60 -0
  363. package/src/lib/Components/Qr/index.svelte.js +295 -0
  364. package/src/lib/Components/Slider/index.svelte +231 -0
  365. package/src/lib/Components/Slider/index.svelte.js +468 -0
  366. package/src/lib/Components/Spacer/index.svelte +41 -0
  367. package/src/lib/Components/StoragePicker/DisplayFile/index.svelte +15 -0
  368. package/src/lib/Components/StoragePicker/index.svelte +192 -0
  369. package/src/lib/Components/StoragePicker/index.svelte.js +593 -0
  370. package/src/lib/Components/SuccessCheck/index.svelte +56 -0
  371. package/src/lib/Components/TableAdvanced/ColumnInput/index.svelte +110 -0
  372. package/src/lib/Components/TableAdvanced/ColumnInput/index.svelte.js +494 -0
  373. package/src/lib/Components/TableAdvanced/FilterInput/index.svelte +54 -0
  374. package/src/lib/Components/TableAdvanced/FilterInput/index.svelte.js +247 -0
  375. package/src/lib/Components/TableAdvanced/Pagination/index.svelte +43 -0
  376. package/src/lib/Components/TableAdvanced/Pagination/index.svelte.js +97 -0
  377. package/src/lib/Components/TableAdvanced/SortByInput/index.svelte +79 -0
  378. package/src/lib/Components/TableAdvanced/SortByInput/index.svelte.js +191 -0
  379. package/src/lib/Components/TableAdvanced/index.svelte +268 -0
  380. package/src/lib/Components/TableAdvanced/index.svelte.js +1422 -0
  381. package/src/lib/Components/Tag/index.svelte +45 -0
  382. package/src/lib/Components/Tag/index.svelte.js +76 -0
  383. package/src/lib/Components/TextArrayInput/index.svelte +108 -0
  384. package/src/lib/Components/TextArrayInput/index.svelte.js +239 -0
  385. package/src/lib/Components/TextInput/PasswordTooltip/index.svelte +89 -0
  386. package/src/lib/Components/TextInput/index.svelte +223 -0
  387. package/src/lib/Components/TextInput/index.svelte.js +434 -0
  388. package/src/lib/Components/Time/index.svelte +7 -0
  389. package/src/lib/Components/Time/index.svelte.js +38 -0
  390. package/src/lib/Components/TimeInput/NumberToggler/index.svelte +34 -0
  391. package/src/lib/Components/TimeInput/NumberToggler/index.svelte.js +79 -0
  392. package/src/lib/Components/TimeInput/index.js +699 -0
  393. package/src/lib/Components/TimeInput/index.svelte +211 -0
  394. package/src/lib/Components/TimeInput/index.svelte.js +638 -0
  395. package/src/lib/Components/Tooltip/index.svelte +143 -0
  396. package/src/lib/Components/TransparentBackground/index.svelte +153 -0
  397. package/src/lib/Components/TypingDots/index.svelte +84 -0
  398. package/src/lib/Components/VariablePathInput/index.svelte +109 -0
  399. package/src/lib/Components/VariablePathInput/index.svelte.js +250 -0
  400. package/src/lib/Components/VideoTBD/index.svelte +100 -0
  401. package/src/lib/Components/XFollow/index.svelte +42 -0
  402. package/src/lib/Components/XPost/index.svelte +52 -0
  403. package/src/lib/Components/XPost/index.svelte.js +64 -0
  404. package/src/lib/Components/YoutubeVideo/index.svelte +73 -0
  405. package/src/lib/Components/YoutubeVideo/index.svelte.js +54 -0
  406. package/src/lib/actions/draggable.js +49 -0
  407. package/src/lib/actions/intersection_observer.js +24 -0
  408. package/src/lib/actions/no_spaces.js +33 -0
  409. package/src/lib/actions/numbers_only.js +26 -0
  410. package/src/lib/actions/scroll_y.js +28 -0
  411. package/src/lib/actions/stop_scroll_propagation_y.js +42 -0
  412. package/src/lib/actions/swipe_handler.js +295 -0
  413. package/src/lib/client/astc_formatting/index.js +1167 -0
  414. package/src/lib/client/docs/index.js +7612 -0
  415. package/src/lib/client/index.js +729 -0
  416. package/src/lib/client/types/index.js +4681 -0
  417. package/src/lib/index.js +161 -0
  418. package/src/lib/style.css +682 -0
  419. package/src/notlib/assets/static/Logo/index.svelte +27 -0
  420. package/src/routes/+layout.js +8 -0
  421. package/src/routes/+layout.svelte +176 -0
  422. package/src/routes/+page.svelte +83 -0
  423. package/src/routes/[component]/+page.svelte +167 -0
  424. package/src/routes/[component]/Showcase/Alert/index.svelte +26 -0
  425. package/src/routes/[component]/Showcase/Audio/index.svelte +86 -0
  426. package/src/routes/[component]/Showcase/AudioEditor/index.svelte +93 -0
  427. package/src/routes/[component]/Showcase/AuthCodeInput/index.svelte +13 -0
  428. package/src/routes/[component]/Showcase/Breadcrumbs/index.svelte +44 -0
  429. package/src/routes/[component]/Showcase/Button/index.svelte +350 -0
  430. package/src/routes/[component]/Showcase/Chart/index.svelte +11117 -0
  431. package/src/routes/[component]/Showcase/Checkbox/index.svelte +52 -0
  432. package/src/routes/[component]/Showcase/Code/index.svelte +13 -0
  433. package/src/routes/[component]/Showcase/Color/index.svelte +28 -0
  434. package/src/routes/[component]/Showcase/ColorInput/index.svelte +35 -0
  435. package/src/routes/[component]/Showcase/ConditionsInput/index.svelte +18 -0
  436. package/src/routes/[component]/Showcase/Confetti/index.svelte +22 -0
  437. package/src/routes/[component]/Showcase/Content/index.svelte +144 -0
  438. package/src/routes/[component]/Showcase/ContentInput/index.svelte +358 -0
  439. package/src/routes/[component]/Showcase/CronInput/index.svelte +30 -0
  440. package/src/routes/[component]/Showcase/DocsDefinition/index.svelte +155 -0
  441. package/src/routes/[component]/Showcase/Dropdown/index.svelte +88 -0
  442. package/src/routes/[component]/Showcase/FileInput/index.svelte +40 -0
  443. package/src/routes/[component]/Showcase/FunctionInput/index.svelte +77 -0
  444. package/src/routes/[component]/Showcase/Icon/index.svelte +120 -0
  445. package/src/routes/[component]/Showcase/IconInput/index.svelte +15 -0
  446. package/src/routes/[component]/Showcase/Image/index.svelte +119 -0
  447. package/src/routes/[component]/Showcase/ImageEditor/index.svelte +89 -0
  448. package/src/routes/[component]/Showcase/ImageSlider/index.svelte +26 -0
  449. package/src/routes/[component]/Showcase/InfoBox/index.svelte +44 -0
  450. package/src/routes/[component]/Showcase/Json/index.svelte +80 -0
  451. package/src/routes/[component]/Showcase/LabeledItem/index.svelte +18 -0
  452. package/src/routes/[component]/Showcase/Link/index.svelte +15 -0
  453. package/src/routes/[component]/Showcase/LoadingWheel/index.svelte +10 -0
  454. package/src/routes/[component]/Showcase/Location/index.svelte +422 -0
  455. package/src/routes/[component]/Showcase/LocationInput/index.svelte +121 -0
  456. package/src/routes/[component]/Showcase/Number/index.svelte +55 -0
  457. package/src/routes/[component]/Showcase/Popover/index.svelte +225 -0
  458. package/src/routes/[component]/Showcase/Qr/index.svelte +77 -0
  459. package/src/routes/[component]/Showcase/Slider/index.svelte +92 -0
  460. package/src/routes/[component]/Showcase/Spacer/index.svelte +27 -0
  461. package/src/routes/[component]/Showcase/StoragePicker/index.svelte +139 -0
  462. package/src/routes/[component]/Showcase/TableAdvanced/index.svelte +888 -0
  463. package/src/routes/[component]/Showcase/Tag/index.svelte +27 -0
  464. package/src/routes/[component]/Showcase/TextArrayInput/index.svelte +23 -0
  465. package/src/routes/[component]/Showcase/TextInput/index.svelte +95 -0
  466. package/src/routes/[component]/Showcase/Time/index.svelte +43 -0
  467. package/src/routes/[component]/Showcase/TimeInput/index.svelte +100 -0
  468. package/src/routes/[component]/Showcase/Tooltip/index.svelte +37 -0
  469. package/src/routes/[component]/Showcase/TransparentBackground/index.svelte +26 -0
  470. package/src/routes/[component]/Showcase/XFollow/index.svelte +7 -0
  471. package/src/routes/[component]/Showcase/XPost/index.svelte +24 -0
  472. package/src/routes/[component]/Showcase/YoutubeVideo/index.svelte +17 -0
  473. package/src/routes/test/+page.svelte +53 -0
  474. package/static/apple-touch-icon.png +0 -0
  475. package/static/browserconfig.xml +9 -0
  476. package/static/favicon-96x96.png +0 -0
  477. package/static/favicon-inactive.svg +4 -0
  478. package/static/favicon.svg +14 -0
  479. package/static/fonts/ProximaVara.woff2 +0 -0
  480. package/static/fonts/Quicksand-VariableFont.woff2 +0 -0
  481. package/static/fonts/RobotoSerif-VariableFont.woff2 +0 -0
  482. package/static/icon.png +0 -0
  483. package/static/site.webmanifest +21 -0
  484. package/static/web-app-manifest-192x192.png +0 -0
  485. package/static/web-app-manifest-512x512.png +0 -0
  486. package/svelte.config.js +12 -0
  487. package/vite.config.js +6 -0
@@ -0,0 +1,568 @@
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 data_sample() {
546
+ return data_sample
547
+ },
548
+ get type_options() {
549
+ return type_options
550
+ },
551
+ get type_display_name() {
552
+ return type_display_name
553
+ },
554
+ get val_at_path() {
555
+ return val_at_path
556
+ },
557
+ get val() {
558
+ return val
559
+ },
560
+ set_data_type,
561
+ add_object_property,
562
+ delete_object_property,
563
+ shift_object_property,
564
+ finish,
565
+ guess_from_data,
566
+ guess_from_variables,
567
+ }
568
+ }
@@ -0,0 +1,116 @@
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>