@darajs/core 0.4.8

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 (464) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +101 -0
  3. package/dist/actions/download-variable.d.ts +8 -0
  4. package/dist/actions/download-variable.d.ts.map +1 -0
  5. package/dist/actions/download-variable.js +140 -0
  6. package/dist/actions/download-variable.js.map +1 -0
  7. package/dist/actions/index.d.ts +7 -0
  8. package/dist/actions/index.d.ts.map +1 -0
  9. package/dist/actions/index.js +7 -0
  10. package/dist/actions/index.js.map +1 -0
  11. package/dist/actions/navigate-to.d.ts +8 -0
  12. package/dist/actions/navigate-to.d.ts.map +1 -0
  13. package/dist/actions/navigate-to.js +37 -0
  14. package/dist/actions/navigate-to.js.map +1 -0
  15. package/dist/actions/notify.d.ts +4 -0
  16. package/dist/actions/notify.d.ts.map +1 -0
  17. package/dist/actions/notify.js +11 -0
  18. package/dist/actions/notify.js.map +1 -0
  19. package/dist/actions/reset-variables.d.ts +8 -0
  20. package/dist/actions/reset-variables.d.ts.map +1 -0
  21. package/dist/actions/reset-variables.js +37 -0
  22. package/dist/actions/reset-variables.js.map +1 -0
  23. package/dist/actions/trigger-variable.d.ts +8 -0
  24. package/dist/actions/trigger-variable.d.ts.map +1 -0
  25. package/dist/actions/trigger-variable.js +14 -0
  26. package/dist/actions/trigger-variable.js.map +1 -0
  27. package/dist/actions/update-variable.d.ts +15 -0
  28. package/dist/actions/update-variable.d.ts.map +1 -0
  29. package/dist/actions/update-variable.js +56 -0
  30. package/dist/actions/update-variable.js.map +1 -0
  31. package/dist/api/core.d.ts +35 -0
  32. package/dist/api/core.d.ts.map +1 -0
  33. package/dist/api/core.js +112 -0
  34. package/dist/api/core.js.map +1 -0
  35. package/dist/api/http.d.ts +29 -0
  36. package/dist/api/http.d.ts.map +1 -0
  37. package/dist/api/http.js +126 -0
  38. package/dist/api/http.js.map +1 -0
  39. package/dist/api/index.d.ts +5 -0
  40. package/dist/api/index.d.ts.map +1 -0
  41. package/dist/api/index.js +5 -0
  42. package/dist/api/index.js.map +1 -0
  43. package/dist/api/websocket.d.ts +222 -0
  44. package/dist/api/websocket.d.ts.map +1 -0
  45. package/dist/api/websocket.js +353 -0
  46. package/dist/api/websocket.js.map +1 -0
  47. package/dist/assets/causalens-dark.svg +29 -0
  48. package/dist/assets/causalens-light.svg +29 -0
  49. package/dist/assets/dara-dark.svg +20 -0
  50. package/dist/assets/dara-light.svg +15 -0
  51. package/dist/assets/fonts/Manrope-VariableFont_wght.ttf +0 -0
  52. package/dist/auth/auth-wrapper.d.ts +15 -0
  53. package/dist/auth/auth-wrapper.d.ts.map +1 -0
  54. package/dist/auth/auth-wrapper.js +72 -0
  55. package/dist/auth/auth-wrapper.js.map +1 -0
  56. package/dist/auth/auth.d.ts +61 -0
  57. package/dist/auth/auth.d.ts.map +1 -0
  58. package/dist/auth/auth.js +163 -0
  59. package/dist/auth/auth.js.map +1 -0
  60. package/dist/auth/basic/basic-auth-login.d.ts +6 -0
  61. package/dist/auth/basic/basic-auth-login.d.ts.map +1 -0
  62. package/dist/auth/basic/basic-auth-login.js +171 -0
  63. package/dist/auth/basic/basic-auth-login.js.map +1 -0
  64. package/dist/auth/basic/basic-auth-logout.d.ts +6 -0
  65. package/dist/auth/basic/basic-auth-logout.d.ts.map +1 -0
  66. package/dist/auth/basic/basic-auth-logout.js +18 -0
  67. package/dist/auth/basic/basic-auth-logout.js.map +1 -0
  68. package/dist/auth/default/default-auth-login.d.ts +6 -0
  69. package/dist/auth/default/default-auth-login.d.ts.map +1 -0
  70. package/dist/auth/default/default-auth-login.js +59 -0
  71. package/dist/auth/default/default-auth-login.js.map +1 -0
  72. package/dist/auth/index.d.ts +7 -0
  73. package/dist/auth/index.d.ts.map +1 -0
  74. package/dist/auth/index.js +7 -0
  75. package/dist/auth/index.js.map +1 -0
  76. package/dist/auth/use-session-token.d.ts +19 -0
  77. package/dist/auth/use-session-token.d.ts.map +1 -0
  78. package/dist/auth/use-session-token.js +30 -0
  79. package/dist/auth/use-session-token.js.map +1 -0
  80. package/dist/components/fallback/default.d.ts +5 -0
  81. package/dist/components/fallback/default.d.ts.map +1 -0
  82. package/dist/components/fallback/default.js +10 -0
  83. package/dist/components/fallback/default.js.map +1 -0
  84. package/dist/components/fallback/dots.d.ts +7 -0
  85. package/dist/components/fallback/dots.d.ts.map +1 -0
  86. package/dist/components/fallback/dots.js +78 -0
  87. package/dist/components/fallback/dots.js.map +1 -0
  88. package/dist/components/fallback/row.d.ts +5 -0
  89. package/dist/components/fallback/row.d.ts.map +1 -0
  90. package/dist/components/fallback/row.js +14 -0
  91. package/dist/components/fallback/row.js.map +1 -0
  92. package/dist/components/for/for.d.ts +35 -0
  93. package/dist/components/for/for.d.ts.map +1 -0
  94. package/dist/components/for/for.js +44 -0
  95. package/dist/components/for/for.js.map +1 -0
  96. package/dist/components/index.d.ts +9 -0
  97. package/dist/components/index.d.ts.map +1 -0
  98. package/dist/components/index.js +9 -0
  99. package/dist/components/index.js.map +1 -0
  100. package/dist/components/menu/menu.d.ts +14 -0
  101. package/dist/components/menu/menu.d.ts.map +1 -0
  102. package/dist/components/menu/menu.js +58 -0
  103. package/dist/components/menu/menu.js.map +1 -0
  104. package/dist/components/progress-tracker/progress-tracker.d.ts +18 -0
  105. package/dist/components/progress-tracker/progress-tracker.d.ts.map +1 -0
  106. package/dist/components/progress-tracker/progress-tracker.js +204 -0
  107. package/dist/components/progress-tracker/progress-tracker.js.map +1 -0
  108. package/dist/components/router-content/router-content.d.ts +14 -0
  109. package/dist/components/router-content/router-content.d.ts.map +1 -0
  110. package/dist/components/router-content/router-content.js +17 -0
  111. package/dist/components/router-content/router-content.js.map +1 -0
  112. package/dist/components/side-bar-frame/side-bar-frame.d.ts +21 -0
  113. package/dist/components/side-bar-frame/side-bar-frame.d.ts.map +1 -0
  114. package/dist/components/side-bar-frame/side-bar-frame.js +87 -0
  115. package/dist/components/side-bar-frame/side-bar-frame.js.map +1 -0
  116. package/dist/components/top-bar-frame/top-bar-frame.d.ts +16 -0
  117. package/dist/components/top-bar-frame/top-bar-frame.d.ts.map +1 -0
  118. package/dist/components/top-bar-frame/top-bar-frame.js +89 -0
  119. package/dist/components/top-bar-frame/top-bar-frame.js.map +1 -0
  120. package/dist/dara_core-0.4.8-py3-none-any.whl +0 -0
  121. package/dist/devtools/backend-errors/backend-errors-ctx.d.ts +17 -0
  122. package/dist/devtools/backend-errors/backend-errors-ctx.d.ts.map +1 -0
  123. package/dist/devtools/backend-errors/backend-errors-ctx.js +37 -0
  124. package/dist/devtools/backend-errors/backend-errors-ctx.js.map +1 -0
  125. package/dist/devtools/backend-errors/backend-errors.d.ts +6 -0
  126. package/dist/devtools/backend-errors/backend-errors.d.ts.map +1 -0
  127. package/dist/devtools/backend-errors/backend-errors.js +57 -0
  128. package/dist/devtools/backend-errors/backend-errors.js.map +1 -0
  129. package/dist/devtools/backend-errors/error-display.d.ts +22 -0
  130. package/dist/devtools/backend-errors/error-display.d.ts.map +1 -0
  131. package/dist/devtools/backend-errors/error-display.js +101 -0
  132. package/dist/devtools/backend-errors/error-display.js.map +1 -0
  133. package/dist/devtools/backend-errors/index.d.ts +3 -0
  134. package/dist/devtools/backend-errors/index.d.ts.map +1 -0
  135. package/dist/devtools/backend-errors/index.js +3 -0
  136. package/dist/devtools/backend-errors/index.js.map +1 -0
  137. package/dist/devtools/devtools-content.d.ts +12 -0
  138. package/dist/devtools/devtools-content.d.ts.map +1 -0
  139. package/dist/devtools/devtools-content.js +73 -0
  140. package/dist/devtools/devtools-content.js.map +1 -0
  141. package/dist/devtools/devtools-context.d.ts +7 -0
  142. package/dist/devtools/devtools-context.d.ts.map +1 -0
  143. package/dist/devtools/devtools-context.js +9 -0
  144. package/dist/devtools/devtools-context.js.map +1 -0
  145. package/dist/devtools/devtools-wrapper.d.ts +8 -0
  146. package/dist/devtools/devtools-wrapper.d.ts.map +1 -0
  147. package/dist/devtools/devtools-wrapper.js +64 -0
  148. package/dist/devtools/devtools-wrapper.js.map +1 -0
  149. package/dist/devtools/devtools.d.ts +5 -0
  150. package/dist/devtools/devtools.d.ts.map +1 -0
  151. package/dist/devtools/devtools.js +10 -0
  152. package/dist/devtools/devtools.js.map +1 -0
  153. package/dist/devtools/floating-button.d.ts +23 -0
  154. package/dist/devtools/floating-button.d.ts.map +1 -0
  155. package/dist/devtools/floating-button.js +94 -0
  156. package/dist/devtools/floating-button.js.map +1 -0
  157. package/dist/devtools/index.d.ts +2 -0
  158. package/dist/devtools/index.d.ts.map +1 -0
  159. package/dist/devtools/index.js +2 -0
  160. package/dist/devtools/index.js.map +1 -0
  161. package/dist/devtools/resizer.d.ts +18 -0
  162. package/dist/devtools/resizer.d.ts.map +1 -0
  163. package/dist/devtools/resizer.js +49 -0
  164. package/dist/devtools/resizer.js.map +1 -0
  165. package/dist/devtools/use-move.d.ts +21 -0
  166. package/dist/devtools/use-move.d.ts.map +1 -0
  167. package/dist/devtools/use-move.js +56 -0
  168. package/dist/devtools/use-move.js.map +1 -0
  169. package/dist/index.css +95 -0
  170. package/dist/index.d.ts +17 -0
  171. package/dist/index.d.ts.map +1 -0
  172. package/dist/index.js +14 -0
  173. package/dist/index.js.map +1 -0
  174. package/dist/jest-setup.d.ts +2 -0
  175. package/dist/jest-setup.d.ts.map +1 -0
  176. package/dist/jest-setup.js +18 -0
  177. package/dist/jest-setup.js.map +1 -0
  178. package/dist/pages/error-page.d.ts +3 -0
  179. package/dist/pages/error-page.d.ts.map +1 -0
  180. package/dist/pages/error-page.js +32 -0
  181. package/dist/pages/error-page.js.map +1 -0
  182. package/dist/pages/sso-callback-page.d.ts +6 -0
  183. package/dist/pages/sso-callback-page.d.ts.map +1 -0
  184. package/dist/pages/sso-callback-page.js +8 -0
  185. package/dist/pages/sso-callback-page.js.map +1 -0
  186. package/dist/run.d.ts +22 -0
  187. package/dist/run.d.ts.map +1 -0
  188. package/dist/run.js +40 -0
  189. package/dist/run.js.map +1 -0
  190. package/dist/shared/center/center.d.ts +5 -0
  191. package/dist/shared/center/center.d.ts.map +1 -0
  192. package/dist/shared/center/center.js +15 -0
  193. package/dist/shared/center/center.js.map +1 -0
  194. package/dist/shared/context/direction-context.d.ts +6 -0
  195. package/dist/shared/context/direction-context.d.ts.map +1 -0
  196. package/dist/shared/context/direction-context.js +4 -0
  197. package/dist/shared/context/direction-context.js.map +1 -0
  198. package/dist/shared/context/display-context.d.ts +13 -0
  199. package/dist/shared/context/display-context.d.ts.map +1 -0
  200. package/dist/shared/context/display-context.js +4 -0
  201. package/dist/shared/context/display-context.js.map +1 -0
  202. package/dist/shared/context/fallback-context.d.ts +11 -0
  203. package/dist/shared/context/fallback-context.d.ts.map +1 -0
  204. package/dist/shared/context/fallback-context.js +4 -0
  205. package/dist/shared/context/fallback-context.js.map +1 -0
  206. package/dist/shared/context/global-task-context.d.ts +40 -0
  207. package/dist/shared/context/global-task-context.d.ts.map +1 -0
  208. package/dist/shared/context/global-task-context.js +81 -0
  209. package/dist/shared/context/global-task-context.js.map +1 -0
  210. package/dist/shared/context/importers-context.d.ts +6 -0
  211. package/dist/shared/context/importers-context.d.ts.map +1 -0
  212. package/dist/shared/context/importers-context.js +4 -0
  213. package/dist/shared/context/importers-context.js.map +1 -0
  214. package/dist/shared/context/index.d.ts +10 -0
  215. package/dist/shared/context/index.d.ts.map +1 -0
  216. package/dist/shared/context/index.js +10 -0
  217. package/dist/shared/context/index.js.map +1 -0
  218. package/dist/shared/context/registries-context.d.ts +20 -0
  219. package/dist/shared/context/registries-context.d.ts.map +1 -0
  220. package/dist/shared/context/registries-context.js +8 -0
  221. package/dist/shared/context/registries-context.js.map +1 -0
  222. package/dist/shared/context/request-extras-context.d.ts +33 -0
  223. package/dist/shared/context/request-extras-context.d.ts.map +1 -0
  224. package/dist/shared/context/request-extras-context.js +55 -0
  225. package/dist/shared/context/request-extras-context.js.map +1 -0
  226. package/dist/shared/context/variable-context.d.ts +10 -0
  227. package/dist/shared/context/variable-context.d.ts.map +1 -0
  228. package/dist/shared/context/variable-context.js +4 -0
  229. package/dist/shared/context/variable-context.js.map +1 -0
  230. package/dist/shared/context/websocket-context.d.ts +7 -0
  231. package/dist/shared/context/websocket-context.d.ts.map +1 -0
  232. package/dist/shared/context/websocket-context.js +4 -0
  233. package/dist/shared/context/websocket-context.js.map +1 -0
  234. package/dist/shared/dynamic-component/clean-props.d.ts +6 -0
  235. package/dist/shared/dynamic-component/clean-props.d.ts.map +1 -0
  236. package/dist/shared/dynamic-component/clean-props.js +13 -0
  237. package/dist/shared/dynamic-component/clean-props.js.map +1 -0
  238. package/dist/shared/dynamic-component/dynamic-component.d.ts +16 -0
  239. package/dist/shared/dynamic-component/dynamic-component.d.ts.map +1 -0
  240. package/dist/shared/dynamic-component/dynamic-component.js +252 -0
  241. package/dist/shared/dynamic-component/dynamic-component.js.map +1 -0
  242. package/dist/shared/error-handling/error-display.d.ts +8 -0
  243. package/dist/shared/error-handling/error-display.d.ts.map +1 -0
  244. package/dist/shared/error-handling/error-display.js +94 -0
  245. package/dist/shared/error-handling/error-display.js.map +1 -0
  246. package/dist/shared/error-handling/index.d.ts +3 -0
  247. package/dist/shared/error-handling/index.d.ts.map +1 -0
  248. package/dist/shared/error-handling/index.js +3 -0
  249. package/dist/shared/error-handling/index.js.map +1 -0
  250. package/dist/shared/error-handling/types.d.ts +11 -0
  251. package/dist/shared/error-handling/types.d.ts.map +1 -0
  252. package/dist/shared/error-handling/types.js +9 -0
  253. package/dist/shared/error-handling/types.js.map +1 -0
  254. package/dist/shared/event-bus/event-bus.d.ts +27 -0
  255. package/dist/shared/event-bus/event-bus.d.ts.map +1 -0
  256. package/dist/shared/event-bus/event-bus.js +58 -0
  257. package/dist/shared/event-bus/event-bus.js.map +1 -0
  258. package/dist/shared/global-state-store.d.ts +54 -0
  259. package/dist/shared/global-state-store.d.ts.map +1 -0
  260. package/dist/shared/global-state-store.js +168 -0
  261. package/dist/shared/global-state-store.js.map +1 -0
  262. package/dist/shared/index.d.ts +12 -0
  263. package/dist/shared/index.d.ts.map +1 -0
  264. package/dist/shared/index.js +10 -0
  265. package/dist/shared/index.js.map +1 -0
  266. package/dist/shared/interactivity/data-variable.d.ts +78 -0
  267. package/dist/shared/interactivity/data-variable.d.ts.map +1 -0
  268. package/dist/shared/interactivity/data-variable.js +218 -0
  269. package/dist/shared/interactivity/data-variable.js.map +1 -0
  270. package/dist/shared/interactivity/derived-variable.d.ts +160 -0
  271. package/dist/shared/interactivity/derived-variable.d.ts.map +1 -0
  272. package/dist/shared/interactivity/derived-variable.js +446 -0
  273. package/dist/shared/interactivity/derived-variable.js.map +1 -0
  274. package/dist/shared/interactivity/filtering.d.ts +9 -0
  275. package/dist/shared/interactivity/filtering.d.ts.map +1 -0
  276. package/dist/shared/interactivity/filtering.js +20 -0
  277. package/dist/shared/interactivity/filtering.js.map +1 -0
  278. package/dist/shared/interactivity/index.d.ts +10 -0
  279. package/dist/shared/interactivity/index.d.ts.map +1 -0
  280. package/dist/shared/interactivity/index.js +9 -0
  281. package/dist/shared/interactivity/index.js.map +1 -0
  282. package/dist/shared/interactivity/internal.d.ts +9 -0
  283. package/dist/shared/interactivity/internal.d.ts.map +1 -0
  284. package/dist/shared/interactivity/internal.js +11 -0
  285. package/dist/shared/interactivity/internal.js.map +1 -0
  286. package/dist/shared/interactivity/nested.d.ts +16 -0
  287. package/dist/shared/interactivity/nested.d.ts.map +1 -0
  288. package/dist/shared/interactivity/nested.js +54 -0
  289. package/dist/shared/interactivity/nested.js.map +1 -0
  290. package/dist/shared/interactivity/persistence.d.ts +43 -0
  291. package/dist/shared/interactivity/persistence.d.ts.map +1 -0
  292. package/dist/shared/interactivity/persistence.js +215 -0
  293. package/dist/shared/interactivity/persistence.js.map +1 -0
  294. package/dist/shared/interactivity/plain-variable.d.ts +17 -0
  295. package/dist/shared/interactivity/plain-variable.d.ts.map +1 -0
  296. package/dist/shared/interactivity/plain-variable.js +222 -0
  297. package/dist/shared/interactivity/plain-variable.js.map +1 -0
  298. package/dist/shared/interactivity/resolve-value.d.ts +13 -0
  299. package/dist/shared/interactivity/resolve-value.d.ts.map +1 -0
  300. package/dist/shared/interactivity/resolve-value.js +36 -0
  301. package/dist/shared/interactivity/resolve-value.js.map +1 -0
  302. package/dist/shared/interactivity/resolve-variable.d.ts +18 -0
  303. package/dist/shared/interactivity/resolve-variable.d.ts.map +1 -0
  304. package/dist/shared/interactivity/resolve-variable.js +46 -0
  305. package/dist/shared/interactivity/resolve-variable.js.map +1 -0
  306. package/dist/shared/interactivity/store.d.ts +76 -0
  307. package/dist/shared/interactivity/store.d.ts.map +1 -0
  308. package/dist/shared/interactivity/store.js +99 -0
  309. package/dist/shared/interactivity/store.js.map +1 -0
  310. package/dist/shared/interactivity/triggers.d.ts +31 -0
  311. package/dist/shared/interactivity/triggers.d.ts.map +1 -0
  312. package/dist/shared/interactivity/triggers.js +105 -0
  313. package/dist/shared/interactivity/triggers.js.map +1 -0
  314. package/dist/shared/interactivity/url-variable.d.ts +12 -0
  315. package/dist/shared/interactivity/url-variable.d.ts.map +1 -0
  316. package/dist/shared/interactivity/url-variable.js +27 -0
  317. package/dist/shared/interactivity/url-variable.js.map +1 -0
  318. package/dist/shared/interactivity/use-any-variable.d.ts +8 -0
  319. package/dist/shared/interactivity/use-any-variable.d.ts.map +1 -0
  320. package/dist/shared/interactivity/use-any-variable.js +39 -0
  321. package/dist/shared/interactivity/use-any-variable.js.map +1 -0
  322. package/dist/shared/interactivity/use-data-variable.d.ts +18 -0
  323. package/dist/shared/interactivity/use-data-variable.d.ts.map +1 -0
  324. package/dist/shared/interactivity/use-data-variable.js +58 -0
  325. package/dist/shared/interactivity/use-data-variable.js.map +1 -0
  326. package/dist/shared/interactivity/use-refresh-selector.d.ts +5 -0
  327. package/dist/shared/interactivity/use-refresh-selector.d.ts.map +1 -0
  328. package/dist/shared/interactivity/use-refresh-selector.js +20 -0
  329. package/dist/shared/interactivity/use-refresh-selector.js.map +1 -0
  330. package/dist/shared/interactivity/use-server-component.d.ts +24 -0
  331. package/dist/shared/interactivity/use-server-component.d.ts.map +1 -0
  332. package/dist/shared/interactivity/use-server-component.js +256 -0
  333. package/dist/shared/interactivity/use-server-component.js.map +1 -0
  334. package/dist/shared/interactivity/use-variable-state.d.ts +9 -0
  335. package/dist/shared/interactivity/use-variable-state.d.ts.map +1 -0
  336. package/dist/shared/interactivity/use-variable-state.js +26 -0
  337. package/dist/shared/interactivity/use-variable-state.js.map +1 -0
  338. package/dist/shared/interactivity/use-variable-value.d.ts +33 -0
  339. package/dist/shared/interactivity/use-variable-value.d.ts.map +1 -0
  340. package/dist/shared/interactivity/use-variable-value.js +94 -0
  341. package/dist/shared/interactivity/use-variable-value.js.map +1 -0
  342. package/dist/shared/interactivity/use-variable.d.ts +12 -0
  343. package/dist/shared/interactivity/use-variable.d.ts.map +1 -0
  344. package/dist/shared/interactivity/use-variable.js +84 -0
  345. package/dist/shared/interactivity/use-variable.js.map +1 -0
  346. package/dist/shared/private-route/private-route.d.ts +19 -0
  347. package/dist/shared/private-route/private-route.d.ts.map +1 -0
  348. package/dist/shared/private-route/private-route.js +35 -0
  349. package/dist/shared/private-route/private-route.js.map +1 -0
  350. package/dist/shared/template-root/dynamic-context.d.ts +9 -0
  351. package/dist/shared/template-root/dynamic-context.d.ts.map +1 -0
  352. package/dist/shared/template-root/dynamic-context.js +29 -0
  353. package/dist/shared/template-root/dynamic-context.js.map +1 -0
  354. package/dist/shared/template-root/template-root.d.ts +12 -0
  355. package/dist/shared/template-root/template-root.d.ts.map +1 -0
  356. package/dist/shared/template-root/template-root.js +94 -0
  357. package/dist/shared/template-root/template-root.js.map +1 -0
  358. package/dist/shared/utils/clean-session-cache.d.ts +9 -0
  359. package/dist/shared/utils/clean-session-cache.d.ts.map +1 -0
  360. package/dist/shared/utils/clean-session-cache.js +19 -0
  361. package/dist/shared/utils/clean-session-cache.js.map +1 -0
  362. package/dist/shared/utils/embed.d.ts +22 -0
  363. package/dist/shared/utils/embed.d.ts.map +1 -0
  364. package/dist/shared/utils/embed.js +43 -0
  365. package/dist/shared/utils/embed.js.map +1 -0
  366. package/dist/shared/utils/get-icon.d.ts +9 -0
  367. package/dist/shared/utils/get-icon.d.ts.map +1 -0
  368. package/dist/shared/utils/get-icon.js +30 -0
  369. package/dist/shared/utils/get-icon.js.map +1 -0
  370. package/dist/shared/utils/hashing.d.ts +14 -0
  371. package/dist/shared/utils/hashing.d.ts.map +1 -0
  372. package/dist/shared/utils/hashing.js +26 -0
  373. package/dist/shared/utils/hashing.js.map +1 -0
  374. package/dist/shared/utils/index.d.ts +19 -0
  375. package/dist/shared/utils/index.d.ts.map +1 -0
  376. package/dist/shared/utils/index.js +17 -0
  377. package/dist/shared/utils/index.js.map +1 -0
  378. package/dist/shared/utils/inject-css.d.ts +12 -0
  379. package/dist/shared/utils/inject-css.d.ts.map +1 -0
  380. package/dist/shared/utils/inject-css.js +25 -0
  381. package/dist/shared/utils/inject-css.js.map +1 -0
  382. package/dist/shared/utils/is-js-component.d.ts +9 -0
  383. package/dist/shared/utils/is-js-component.d.ts.map +1 -0
  384. package/dist/shared/utils/is-js-component.js +11 -0
  385. package/dist/shared/utils/is-js-component.js.map +1 -0
  386. package/dist/shared/utils/normalization.d.ts +19 -0
  387. package/dist/shared/utils/normalization.d.ts.map +1 -0
  388. package/dist/shared/utils/normalization.js +121 -0
  389. package/dist/shared/utils/normalization.js.map +1 -0
  390. package/dist/shared/utils/resolve-theme.d.ts +9 -0
  391. package/dist/shared/utils/resolve-theme.d.ts.map +1 -0
  392. package/dist/shared/utils/resolve-theme.js +28 -0
  393. package/dist/shared/utils/resolve-theme.js.map +1 -0
  394. package/dist/shared/utils/templating.d.ts +24 -0
  395. package/dist/shared/utils/templating.d.ts.map +1 -0
  396. package/dist/shared/utils/templating.js +67 -0
  397. package/dist/shared/utils/templating.js.map +1 -0
  398. package/dist/shared/utils/use-action-registry.d.ts +11 -0
  399. package/dist/shared/utils/use-action-registry.d.ts.map +1 -0
  400. package/dist/shared/utils/use-action-registry.js +18 -0
  401. package/dist/shared/utils/use-action-registry.js.map +1 -0
  402. package/dist/shared/utils/use-action.d.ts +34 -0
  403. package/dist/shared/utils/use-action.d.ts.map +1 -0
  404. package/dist/shared/utils/use-action.js +314 -0
  405. package/dist/shared/utils/use-action.js.map +1 -0
  406. package/dist/shared/utils/use-component-registry.d.ts +11 -0
  407. package/dist/shared/utils/use-component-registry.d.ts.map +1 -0
  408. package/dist/shared/utils/use-component-registry.js +57 -0
  409. package/dist/shared/utils/use-component-registry.js.map +1 -0
  410. package/dist/shared/utils/use-component-styles.d.ts +24 -0
  411. package/dist/shared/utils/use-component-styles.d.ts.map +1 -0
  412. package/dist/shared/utils/use-component-styles.js +69 -0
  413. package/dist/shared/utils/use-component-styles.js.map +1 -0
  414. package/dist/shared/utils/use-defer-loadable.d.ts +8 -0
  415. package/dist/shared/utils/use-defer-loadable.d.ts.map +1 -0
  416. package/dist/shared/utils/use-defer-loadable.js +44 -0
  417. package/dist/shared/utils/use-defer-loadable.js.map +1 -0
  418. package/dist/shared/utils/use-interval.d.ts +9 -0
  419. package/dist/shared/utils/use-interval.d.ts.map +1 -0
  420. package/dist/shared/utils/use-interval.js +19 -0
  421. package/dist/shared/utils/use-interval.js.map +1 -0
  422. package/dist/shared/utils/use-previous.d.ts +10 -0
  423. package/dist/shared/utils/use-previous.d.ts.map +1 -0
  424. package/dist/shared/utils/use-previous.js +17 -0
  425. package/dist/shared/utils/use-previous.js.map +1 -0
  426. package/dist/shared/utils/use-url-sync.d.ts +20 -0
  427. package/dist/shared/utils/use-url-sync.d.ts.map +1 -0
  428. package/dist/shared/utils/use-url-sync.js +68 -0
  429. package/dist/shared/utils/use-url-sync.js.map +1 -0
  430. package/dist/shared/utils/use-window-title.d.ts +3 -0
  431. package/dist/shared/utils/use-window-title.d.ts.map +1 -0
  432. package/dist/shared/utils/use-window-title.js +14 -0
  433. package/dist/shared/utils/use-window-title.js.map +1 -0
  434. package/dist/shared/variable-state-provider/variable-state-provider.d.ts +10 -0
  435. package/dist/shared/variable-state-provider/variable-state-provider.d.ts.map +1 -0
  436. package/dist/shared/variable-state-provider/variable-state-provider.js +29 -0
  437. package/dist/shared/variable-state-provider/variable-state-provider.js.map +1 -0
  438. package/dist/shared/wrapper/wrapper.d.ts +7 -0
  439. package/dist/shared/wrapper/wrapper.d.ts.map +1 -0
  440. package/dist/shared/wrapper/wrapper.js +14 -0
  441. package/dist/shared/wrapper/wrapper.js.map +1 -0
  442. package/dist/types/auth.d.ts +15 -0
  443. package/dist/types/auth.d.ts.map +1 -0
  444. package/dist/types/auth.js +6 -0
  445. package/dist/types/auth.js.map +1 -0
  446. package/dist/types/core.d.ts +440 -0
  447. package/dist/types/core.d.ts.map +1 -0
  448. package/dist/types/core.js +22 -0
  449. package/dist/types/core.js.map +1 -0
  450. package/dist/types/index.d.ts +7 -0
  451. package/dist/types/index.d.ts.map +1 -0
  452. package/dist/types/index.js +4 -0
  453. package/dist/types/index.js.map +1 -0
  454. package/dist/types/utils.d.ts +56 -0
  455. package/dist/types/utils.d.ts.map +1 -0
  456. package/dist/types/utils.js +93 -0
  457. package/dist/types/utils.js.map +1 -0
  458. package/dist/umd/dara.core.umd.js +86508 -0
  459. package/dist/umd/style.css +848 -0
  460. package/dist/utils.d.ts +11 -0
  461. package/dist/utils.d.ts.map +1 -0
  462. package/dist/utils.js +20 -0
  463. package/dist/utils.js.map +1 -0
  464. package/package.json +121 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend-errors.js","sourceRoot":"","sources":["../../../js/devtools/backend-errors/backend-errors.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,YAAY,EAAE,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAEtE,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;CAKjC,CAAC;AAEF,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;CAO3B,CAAC;AAEF,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;;aAErB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;;;iBAK/B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;CAGnD,CAAC;AAEF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;2BAUC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;CAC7D,CAAC;AAEF;;GAEG;AACH,SAAS,aAAa;IAClB,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAEnD,MAAM,YAAY,GAAG,qBAAqB,CAAC,MAAM,CAAC;SAC7C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;SAC9E,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAExD,OAAO,CACH,MAAC,eAAe,eACZ,MAAC,OAAO,eACJ,KAAC,WAAW,IAAC,OAAO,EAAE,WAAW,YAC7B,YAAG,SAAS,EAAC,uBAAuB,GAAG,GAC7B,EACd,KAAC,OAAO,IAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,WAAW,EAAC,QAAQ,EAAC,KAAK,EAAE,WAAW,GAAI,IAClF,EACV,KAAC,SAAS,cACL,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACrB,KAAC,YAAY,IAAC,YAAY,EAAE,CAAC,IAAO,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAI,CAC3D,CAAC,GACM,IACE,CACrB,CAAC;AACN,CAAC;AAED,eAAe,aAAa,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { ServerErrorMessage } from '../../api/websocket';
2
+ interface ParsedBackendError {
3
+ description: string;
4
+ time: Date;
5
+ traceback: string;
6
+ tracebackTitle: string;
7
+ }
8
+ /**
9
+ * Parse server error messages for display
10
+ *
11
+ * @param errors error messages to parse
12
+ */
13
+ export declare function parseErrorsForDisplay(errors: ServerErrorMessage['message'][]): ParsedBackendError[];
14
+ interface ErrorDisplayProps {
15
+ errorMessage: ParsedBackendError;
16
+ }
17
+ /**
18
+ * Display a single backend error in an expandable box
19
+ */
20
+ declare function ErrorDisplay(props: ErrorDisplayProps): JSX.Element;
21
+ export default ErrorDisplay;
22
+ //# sourceMappingURL=error-display.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-display.d.ts","sourceRoot":"","sources":["../../../js/devtools/backend-errors/error-display.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AA4ErD,UAAU,kBAAkB;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,kBAAkB,CAAC,SAAS,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAgBnG;AAED,UAAU,iBAAiB;IACvB,YAAY,EAAE,kBAAkB,CAAC;CACpC;AAED;;GAEG;AACH,iBAAS,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,CAAC,OAAO,CA6B3D;AAED,eAAe,YAAY,CAAC"}
@@ -0,0 +1,101 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { format, parseISO } from 'date-fns';
3
+ import { useState } from 'react';
4
+ import { Collapse } from 'react-collapse';
5
+ import styled from '@darajs/styled-components';
6
+ const ErrorWrapper = styled.div `
7
+ display: flex;
8
+ flex-direction: column;
9
+ width: 100%;
10
+
11
+ /* stylelint-disable selector-class-pattern */
12
+ .ReactCollapse--collapse {
13
+ transition: height 0.35s ease;
14
+ }
15
+ /* stylelint-enable selector-class-pattern */
16
+ `;
17
+ const ErrorHeader = styled.div `
18
+ cursor: pointer;
19
+ display: flex;
20
+ flex-direction: column;
21
+ background-color: ${(props) => props.theme.colors.background};
22
+ `;
23
+ const CollapseContent = styled.div `
24
+ display: flex;
25
+ flex-direction: column;
26
+ gap: 0.5rem;
27
+
28
+ width: 100%;
29
+ margin: 0;
30
+ padding-top: 0.5rem;
31
+
32
+ background-color: ${(props) => props.theme.colors.background};
33
+ `;
34
+ const ErrorSign = styled.i `
35
+ color: ${(props) => props.theme.colors.error};
36
+ `;
37
+ const ErrorDescription = styled.div `
38
+ width: 100%;
39
+ padding: 1rem;
40
+
41
+ font-family: monospace;
42
+ color: ${(props) => props.theme.colors.text};
43
+
44
+ background-color: ${(props) => props.theme.colors.grey2};
45
+ `;
46
+ const ErrorTitleRow = styled.div `
47
+ display: flex;
48
+ align-items: center;
49
+ justify-content: space-between;
50
+ padding: 1rem;
51
+ `;
52
+ const ErrorTitle = styled.span `
53
+ display: flex;
54
+ gap: 0.5rem;
55
+ align-items: center;
56
+ color: ${(props) => props.theme.colors.text};
57
+ `;
58
+ const ErrorTraceback = styled.pre `
59
+ overflow-y: auto;
60
+ padding: 0.5rem;
61
+ color: ${(props) => props.theme.colors.text};
62
+ `;
63
+ const Chevron = styled.i `
64
+ cursor: pointer;
65
+ transform: ${(props) => (props.$isOpen ? `rotate(180deg)` : `rotate(0deg)`)};
66
+ color: ${(props) => props.theme.colors.grey5};
67
+ transition: transform 0.1s linear;
68
+ `;
69
+ /**
70
+ * Parse server error messages for display
71
+ *
72
+ * @param errors error messages to parse
73
+ */
74
+ export function parseErrorsForDisplay(errors) {
75
+ return errors.map((e) => {
76
+ const errorContent = e.error.split('\n').filter((l) => l !== '');
77
+ const time = parseISO(e.time);
78
+ const [description] = errorContent.slice(-1);
79
+ const tracebackTitle = errorContent[0];
80
+ const traceback = errorContent.slice(1, -1).join('\n');
81
+ return {
82
+ description,
83
+ time,
84
+ traceback,
85
+ tracebackTitle,
86
+ };
87
+ });
88
+ }
89
+ /**
90
+ * Display a single backend error in an expandable box
91
+ */
92
+ function ErrorDisplay(props) {
93
+ const [isExpanded, setIsExpanded] = useState(false);
94
+ const time = format(props.errorMessage.time, 'HH:mm:ss.SS');
95
+ const onClick = () => {
96
+ setIsExpanded((b) => !b);
97
+ };
98
+ return (_jsxs(ErrorWrapper, { children: [_jsxs(ErrorHeader, { onClick: onClick, children: [_jsxs(ErrorTitleRow, { children: [_jsxs(ErrorTitle, { children: [_jsx(ErrorSign, { className: "fa-solid fa-triangle-exclamation fa-lg" }), time] }), _jsx(Chevron, { "$isOpen": isExpanded, className: "fa-solid fa-chevron-down" })] }), _jsx(ErrorDescription, { children: props.errorMessage.description })] }), _jsx(Collapse, { isOpened: isExpanded, children: _jsxs(CollapseContent, { children: [_jsx(ErrorDescription, { children: props.errorMessage.tracebackTitle }), _jsx(ErrorTraceback, { children: props.errorMessage.traceback })] }) })] }));
99
+ }
100
+ export default ErrorDisplay;
101
+ //# sourceMappingURL=error-display.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-display.js","sourceRoot":"","sources":["../../../js/devtools/backend-errors/error-display.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { BackendErrorsProvider, useBackendErrors } from './backend-errors-ctx';
2
+ export { default as BackendErrors } from './backend-errors';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../js/devtools/backend-errors/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { BackendErrorsProvider, useBackendErrors } from './backend-errors-ctx';
2
+ export { default as BackendErrors } from './backend-errors';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../js/devtools/backend-errors/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { CSSProperties } from 'react';
2
+ interface DevToolsContentProps {
3
+ onCloseDevtools: () => void;
4
+ style?: CSSProperties;
5
+ }
6
+ /**
7
+ * Displays devtools content.
8
+ * Displays a selected devtool based on the selected devtool in the top selection header.
9
+ */
10
+ declare function DevToolsContent(props: DevToolsContentProps): JSX.Element;
11
+ export default DevToolsContent;
12
+ //# sourceMappingURL=devtools-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-content.d.ts","sourceRoot":"","sources":["../../js/devtools/devtools-content.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAY,MAAM,OAAO,CAAC;AAoEhD,UAAU,oBAAoB;IAC1B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,KAAK,CAAC,EAAE,aAAa,CAAC;CACzB;AAMD;;;GAGG;AACH,iBAAS,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,GAAG,CAAC,OAAO,CAsBjE;AAED,eAAe,eAAe,CAAC"}
@@ -0,0 +1,73 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import styled from '@darajs/styled-components';
4
+ import { Button } from '@darajs/ui-components';
5
+ import { BackendErrors } from './backend-errors';
6
+ const DevToolsContentWrapper = styled.div `
7
+ display: flex;
8
+ flex: 1;
9
+ flex-direction: column;
10
+
11
+ width: 100%;
12
+
13
+ color: ${(props) => props.theme.colors.text};
14
+
15
+ background-color: ${(props) => props.theme.colors.blue1};
16
+ border-left: 1px solid ${(props) => props.theme.colors.grey5};
17
+ `;
18
+ const HeaderWrapper = styled.div `
19
+ display: flex;
20
+ align-items: center;
21
+ justify-content: space-between;
22
+
23
+ width: 100%;
24
+ margin: 0 auto;
25
+
26
+ border-bottom: 1px solid;
27
+ border-bottom-color: ${(props) => props.theme.colors.grey5};
28
+ `;
29
+ const DevtoolSelector = styled.div `
30
+ display: flex;
31
+ flex-shrink: 1;
32
+ gap: 0.1rem;
33
+ align-items: center;
34
+
35
+ button {
36
+ gap: 1rem;
37
+ width: 125px;
38
+ }
39
+ `;
40
+ const CloseButton = styled(Button) `
41
+ color: ${(props) => props.theme.colors.grey4};
42
+ background-color: inherit;
43
+ transition: color 100ms ease 0s;
44
+
45
+ :hover:not(:disabled) {
46
+ color: ${(props) => props.theme.colors.grey5};
47
+ background-color: inherit;
48
+ }
49
+ `;
50
+ const SelectionButton = styled(Button) `
51
+ color: ${(props) => props.theme.colors.text};
52
+ border-bottom: 2px solid ${(props) => props.theme.colors.primary};
53
+ border-radius: 0;
54
+
55
+ :hover:not(:disabled) {
56
+ color: ${(props) => props.theme.colors.text};
57
+ background-color: ${(props) => props.theme.colors.blue2};
58
+ }
59
+ `;
60
+ var DevTools;
61
+ (function (DevTools) {
62
+ DevTools["ERRORS"] = "errors";
63
+ })(DevTools || (DevTools = {}));
64
+ /**
65
+ * Displays devtools content.
66
+ * Displays a selected devtool based on the selected devtool in the top selection header.
67
+ */
68
+ function DevToolsContent(props) {
69
+ const [selectedTool, setSelectedTool] = useState(DevTools.ERRORS);
70
+ return (_jsxs(DevToolsContentWrapper, { style: props.style, children: [_jsxs(HeaderWrapper, { children: [_jsx(DevtoolSelector, { children: _jsx(SelectionButton, { "$selected": selectedTool === DevTools.ERRORS, onClick: () => setSelectedTool(DevTools.ERRORS), styling: "ghost", children: "Errors" }) }), _jsx(CloseButton, { onClick: props.onCloseDevtools, children: _jsx("i", { className: "fa-solid fa-x" }) })] }), selectedTool === DevTools.ERRORS && _jsx(BackendErrors, {})] }));
71
+ }
72
+ export default DevToolsContent;
73
+ //# sourceMappingURL=devtools-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-content.js","sourceRoot":"","sources":["../../js/devtools/devtools-content.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAiB,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEhD,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,sBAAsB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;aAO5B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI;;wBAEvB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;6BAC9B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;CAC/D,CAAC;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;2BASL,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;CAC7D,CAAC;AAEF,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;CAUjC,CAAC;AAEF,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;aACrB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;;;iBAK/B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;;CAGnD,CAAC;AAEF,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAEpC;aACW,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI;+BAChB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO;;;;iBAInD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI;4BACvB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;;CAE9D,CAAC;AAOF,IAAK,QAEJ;AAFD,WAAK,QAAQ;IACT,6BAAiB,CAAA;AACrB,CAAC,EAFI,QAAQ,KAAR,QAAQ,QAEZ;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,KAA2B;IAChD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAElE,OAAO,CACH,MAAC,sBAAsB,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,aACtC,MAAC,aAAa,eACV,KAAC,eAAe,cACZ,KAAC,eAAe,iBACD,YAAY,KAAK,QAAQ,CAAC,MAAM,EAC3C,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC/C,OAAO,EAAC,OAAO,uBAGD,GACJ,EAClB,KAAC,WAAW,IAAC,OAAO,EAAE,KAAK,CAAC,eAAe,YACvC,YAAG,SAAS,EAAC,eAAe,GAAG,GACrB,IACF,EACf,YAAY,KAAK,QAAQ,CAAC,MAAM,IAAI,KAAC,aAAa,KAAG,IACjC,CAC5B,CAAC;AACN,CAAC;AAED,eAAe,eAAe,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Context responsible for gathering data necessary for the devtools
3
+ */
4
+ export default function DevtoolsContext(props: {
5
+ children: JSX.Element;
6
+ }): JSX.Element;
7
+ //# sourceMappingURL=devtools-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-context.d.ts","sourceRoot":"","sources":["../../js/devtools/devtools-context.tsx"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAA;CAAE,GAAG,GAAG,CAAC,OAAO,CAErF"}
@@ -0,0 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { BackendErrorsProvider } from './backend-errors';
3
+ /**
4
+ * Context responsible for gathering data necessary for the devtools
5
+ */
6
+ export default function DevtoolsContext(props) {
7
+ return _jsx(BackendErrorsProvider, { children: props.children });
8
+ }
9
+ //# sourceMappingURL=devtools-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-context.js","sourceRoot":"","sources":["../../js/devtools/devtools-context.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAgC;IACpE,OAAO,KAAC,qBAAqB,cAAE,KAAK,CAAC,QAAQ,GAAyB,CAAC;AAC3E,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * DevTools parent display component.
3
+ * Displays an absolutely-positioned floating button to toggle the view of the devtools sidebar,
4
+ * and a sidebar with the devtools content.
5
+ */
6
+ declare function DevToolsWrapper(): JSX.Element;
7
+ export default DevToolsWrapper;
8
+ //# sourceMappingURL=devtools-wrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-wrapper.d.ts","sourceRoot":"","sources":["../../js/devtools/devtools-wrapper.tsx"],"names":[],"mappings":"AA2CA;;;;GAIG;AACH,iBAAS,eAAe,IAAI,GAAG,CAAC,OAAO,CAsCtC;AAED,eAAe,eAAe,CAAC"}
@@ -0,0 +1,64 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useRef, useState } from 'react';
3
+ import styled from '@darajs/styled-components';
4
+ import { useBackendErrors } from './backend-errors';
5
+ import DevToolsContent from './devtools-content';
6
+ import FloatingButton, { BUTTON_SIZE } from './floating-button';
7
+ import Resizer from './resizer';
8
+ import useMove from './use-move';
9
+ const MIN_WIDTH = 350;
10
+ const MAX_WIDTH = 600;
11
+ /**
12
+ * Fit a given width value between the sidebar bounds
13
+ *
14
+ * @param width to fit in bounds
15
+ */
16
+ function fitInBounds(width) {
17
+ if (width > MAX_WIDTH) {
18
+ return MAX_WIDTH;
19
+ }
20
+ if (width < MIN_WIDTH) {
21
+ return MIN_WIDTH;
22
+ }
23
+ return width;
24
+ }
25
+ const SidebarWrapper = styled.div `
26
+ display: flex;
27
+ flex-direction: row;
28
+ flex-grow: 0;
29
+ flex-shrink: 0;
30
+
31
+ min-width: ${MIN_WIDTH}px;
32
+ max-width: ${MAX_WIDTH}px;
33
+ height: 100%;
34
+
35
+ box-shadow: 8px 2px 32px -2px rgb(0 0 0 / 25%);
36
+ `;
37
+ /**
38
+ * DevTools parent display component.
39
+ * Displays an absolutely-positioned floating button to toggle the view of the devtools sidebar,
40
+ * and a sidebar with the devtools content.
41
+ */
42
+ function DevToolsWrapper() {
43
+ const [showDevtools, setShowDevtools] = useState(false);
44
+ const { errors } = useBackendErrors();
45
+ const sidebarRef = useRef(null);
46
+ const [sidebarWidth, setSidebarWidth] = useState(MIN_WIDTH);
47
+ // invoked on resizer move
48
+ const resize = useCallback((mouseMoveEvent) => {
49
+ setSidebarWidth(fitInBounds(sidebarRef.current.getBoundingClientRect().right - mouseMoveEvent.clientX));
50
+ }, []);
51
+ const { startMoving: startResizing } = useMove(resize);
52
+ // Button state lifted out of button component so the position doesn't reset when opening/closing sidebar
53
+ const buttonState = useState([
54
+ window.innerWidth - BUTTON_SIZE * 2,
55
+ window.innerHeight - BUTTON_SIZE * 2,
56
+ ]);
57
+ // If not showing devtools, don't include the sidebar in the dom at all
58
+ if (!showDevtools) {
59
+ return (_jsx(FloatingButton, { buttonState: buttonState, onClick: () => setShowDevtools(true), showErrorBadge: errors.length > 0 }));
60
+ }
61
+ return (_jsxs(SidebarWrapper, { ref: sidebarRef, style: { width: sidebarWidth }, children: [_jsx(Resizer, { onGrab: startResizing, sidebarWidth: sidebarWidth }), _jsx(DevToolsContent, { onCloseDevtools: () => setShowDevtools(false), style: { width: sidebarWidth } })] }));
62
+ }
63
+ export default DevToolsWrapper;
64
+ //# sourceMappingURL=devtools-wrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools-wrapper.js","sourceRoot":"","sources":["../../js/devtools/devtools-wrapper.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,eAAe,MAAM,oBAAoB,CAAC;AACjD,OAAO,cAAc,EAAE,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC,MAAM,SAAS,GAAG,GAAG,CAAC;AACtB,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB;;;;GAIG;AACH,SAAS,WAAW,CAAC,KAAa;IAC9B,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;QACpB,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;iBAMhB,SAAS;iBACT,SAAS;;;;CAIzB,CAAC;AAEF;;;;GAIG;AACH,SAAS,eAAe;IACpB,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,MAAM,EAAE,MAAM,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAEtC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAE5D,0BAA0B;IAC1B,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,cAA0B,EAAE,EAAE;QACtD,eAAe,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5G,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvD,yGAAyG;IACzG,MAAM,WAAW,GAAG,QAAQ,CAAmB;QAC3C,MAAM,CAAC,UAAU,GAAG,WAAW,GAAG,CAAC;QACnC,MAAM,CAAC,WAAW,GAAG,WAAW,GAAG,CAAC;KACvC,CAAC,CAAC;IAEH,uEAAuE;IACvE,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,OAAO,CACH,KAAC,cAAc,IACX,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EACpC,cAAc,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,GACnC,CACL,CAAC;IACN,CAAC;IAED,OAAO,CACH,MAAC,cAAc,IAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,aAC3D,KAAC,OAAO,IAAC,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,GAAI,EAC9D,KAAC,eAAe,IAAC,eAAe,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,GAAI,IACrF,CACpB,CAAC;AACN,CAAC;AAED,eAAe,eAAe,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Display devtools
3
+ */
4
+ export default function DevTools(): JSX.Element;
5
+ //# sourceMappingURL=devtools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools.d.ts","sourceRoot":"","sources":["../../js/devtools/devtools.tsx"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,IAAI,GAAG,CAAC,OAAO,CAM9C"}
@@ -0,0 +1,10 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import DevtoolsContext from './devtools-context';
3
+ import DevToolsWrapper from './devtools-wrapper';
4
+ /**
5
+ * Display devtools
6
+ */
7
+ export default function DevTools() {
8
+ return (_jsx(DevtoolsContext, { children: _jsx(DevToolsWrapper, {}) }));
9
+ }
10
+ //# sourceMappingURL=devtools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"devtools.js","sourceRoot":"","sources":["../../js/devtools/devtools.tsx"],"names":[],"mappings":";AAAA,OAAO,eAAe,MAAM,oBAAoB,CAAC;AACjD,OAAO,eAAe,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ;IAC5B,OAAO,CACH,KAAC,eAAe,cACZ,KAAC,eAAe,KAAG,GACL,CACrB,CAAC;AACN,CAAC"}
@@ -0,0 +1,23 @@
1
+ export declare const BUTTON_SIZE = 50;
2
+ type Position = [number, number];
3
+ interface FloatingButtonProps {
4
+ /**
5
+ * Button state
6
+ */
7
+ buttonState: [Position, React.Dispatch<React.SetStateAction<Position>>];
8
+ /**
9
+ * Handler to invoke on button click
10
+ */
11
+ onClick: () => void;
12
+ /**
13
+ * Whether to show an error badge
14
+ */
15
+ showErrorBadge: boolean;
16
+ }
17
+ /**
18
+ * Floating, draggable button.
19
+ * Can display an error badge in top-right corner.
20
+ */
21
+ export default function FloatingButton(props: FloatingButtonProps): JSX.Element;
22
+ export {};
23
+ //# sourceMappingURL=floating-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"floating-button.d.ts","sourceRoot":"","sources":["../../js/devtools/floating-button.tsx"],"names":[],"mappings":"AAOA,eAAO,MAAM,WAAW,KAAK,CAAC;AAoC9B,KAAK,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjC,UAAU,mBAAmB;IACzB;;OAEG;IACH,WAAW,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxE;;OAEG;IACH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB;;OAEG;IACH,cAAc,EAAE,OAAO,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,GAAG,CAAC,OAAO,CA8E9E"}
@@ -0,0 +1,94 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* eslint-disable react-hooks/exhaustive-deps */
3
+ import { useCallback, useEffect, useRef } from 'react';
4
+ import styled from '@darajs/styled-components';
5
+ import useMove from './use-move';
6
+ export const BUTTON_SIZE = 50;
7
+ const DRAG_OFFSET = BUTTON_SIZE / 2;
8
+ const FloatingDevtoolButton = styled.button `
9
+ cursor: ${(props) => (props.$isDragging ? 'grab' : 'pointer')};
10
+
11
+ position: fixed;
12
+ z-index: 10;
13
+
14
+ display: inline-block;
15
+
16
+ width: ${BUTTON_SIZE}px;
17
+ height: ${BUTTON_SIZE}px;
18
+
19
+ color: ${(props) => props.theme.colors.blue1};
20
+
21
+ background-color: ${(props) => props.theme.colors.secondary};
22
+ border: 1px solid;
23
+ border-color: ${(props) => props.theme.colors.secondary};
24
+ border-radius: 30%;
25
+
26
+ transition: ${(props) => (!props.$isDragging ? 'left top' : 'none')} 150ms ease 0s;
27
+ `;
28
+ const ErrorBadge = styled.i `
29
+ position: absolute;
30
+ top: -0.8rem;
31
+ right: -0.8rem;
32
+
33
+ #badge-circle {
34
+ color: ${(props) => props.theme.colors.error};
35
+ }
36
+ `;
37
+ /**
38
+ * Floating, draggable button.
39
+ * Can display an error badge in top-right corner.
40
+ */
41
+ export default function FloatingButton(props) {
42
+ const buttonRef = useRef(null);
43
+ const [buttonPosition, setButtonPosition] = props.buttonState;
44
+ const moveButton = useCallback((mouseMoveEvent) => {
45
+ // updates button position to mouse position
46
+ // (- drag offset because we want the button's center to be where the mouse is, not it's top-left corner)
47
+ setButtonPosition([mouseMoveEvent.clientX - DRAG_OFFSET, mouseMoveEvent.clientY - DRAG_OFFSET]);
48
+ }, []);
49
+ const { startMoving, isMoving: isButtonMoving } = useMove(moveButton);
50
+ /**
51
+ * Fix button position by moving it to it's correct position
52
+ */
53
+ function fixButtonPosition() {
54
+ if (!buttonRef.current) {
55
+ return;
56
+ }
57
+ const { x, y } = buttonRef.current.getBoundingClientRect();
58
+ setButtonPosition((oldPos) => {
59
+ let [newX, newY] = oldPos;
60
+ // It's X position must be BUTTON_SIZE pixels from the left/right side of the window
61
+ if (x < BUTTON_SIZE || x < window.innerWidth / 2) {
62
+ newX = BUTTON_SIZE;
63
+ }
64
+ else if (x > window.innerWidth / 2 || window.innerWidth - x < BUTTON_SIZE * 2) {
65
+ newX = window.innerWidth - BUTTON_SIZE * 2;
66
+ }
67
+ // It's Y position must be not be less than BUTTON_SIZE from top/bottom of the window
68
+ if (y < BUTTON_SIZE) {
69
+ newY = BUTTON_SIZE;
70
+ }
71
+ else if (window.innerHeight - y < BUTTON_SIZE * 2) {
72
+ newY = window.innerHeight - BUTTON_SIZE * 2;
73
+ }
74
+ return [newX, newY];
75
+ });
76
+ }
77
+ // Fix button position on window resize so it stays in bounds
78
+ useEffect(() => {
79
+ window.addEventListener('resize', fixButtonPosition);
80
+ return () => {
81
+ window.removeEventListener('resize', fixButtonPosition);
82
+ };
83
+ }, []);
84
+ useEffect(() => {
85
+ // Whenever button stops moving fix button position on next animation frame
86
+ if (!isButtonMoving) {
87
+ requestAnimationFrame(() => {
88
+ fixButtonPosition();
89
+ });
90
+ }
91
+ }, [isButtonMoving]);
92
+ return (_jsxs(FloatingDevtoolButton, { "$isDragging": isButtonMoving, className: "fa-stack", onClick: () => !isButtonMoving && props.onClick(), onMouseDown: startMoving, ref: buttonRef, style: { left: `${buttonPosition[0]}px`, top: `${buttonPosition[1]}px` }, children: [props.showErrorBadge && (_jsxs(ErrorBadge, { className: "fa-stack", children: [_jsx("i", { className: "fa-stack-2x fa-solid fa-circle", id: "badge-circle" }), _jsx("i", { className: "fa-stack-1x fa-solid fa-triangle-exclamation", id: "badge-triangle" })] })), _jsx("i", { className: "fa-solid fa-bug fa-lg" })] }));
93
+ }
94
+ //# sourceMappingURL=floating-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"floating-button.js","sourceRoot":"","sources":["../../js/devtools/floating-button.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { default as DevTools } from './devtools';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../js/devtools/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { default as DevTools } from './devtools';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../js/devtools/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { MouseEventHandler } from 'react';
2
+ interface ResizerProps {
3
+ /**
4
+ * Callback to execute when resizer is grabbed
5
+ */
6
+ onGrab: MouseEventHandler;
7
+ /**
8
+ * Current width of the sidebar
9
+ */
10
+ sidebarWidth: number;
11
+ }
12
+ /**
13
+ * Sidebar resizer.
14
+ * Displays a thin resizer bar with a larger grab area for easier resizing.
15
+ */
16
+ export default function Resizer(props: ResizerProps): JSX.Element;
17
+ export {};
18
+ //# sourceMappingURL=resizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resizer.d.ts","sourceRoot":"","sources":["../../js/devtools/resizer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAY,MAAM,OAAO,CAAC;AA8CpD,UAAU,YAAY;IAClB;;OAEG;IACH,MAAM,EAAE,iBAAiB,CAAC;IAE1B;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,GAAG,CAAC,OAAO,CAahE"}
@@ -0,0 +1,49 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import styled from '@darajs/styled-components';
4
+ const ResizerWrapper = styled.div `
5
+ position: absolute;
6
+ top: 0;
7
+ bottom: 0;
8
+
9
+ margin: 0;
10
+ padding: 0;
11
+ `;
12
+ const ResizerDisplay = styled.div `
13
+ pointer-events: none;
14
+
15
+ position: absolute;
16
+ top: 0;
17
+ right: -1px;
18
+ bottom: 0;
19
+
20
+ width: 4px;
21
+
22
+ background-color: ${(props) => (props.$hover ? '#3F9BF8' : 'transparent')};
23
+
24
+ transition: background-color 200ms ease;
25
+ `;
26
+ const ResizerGrabArea = styled.button `
27
+ cursor: col-resize;
28
+ resize: horizontal;
29
+
30
+ /* This means the grab area will have 16px to the left of the sidebar and 8px on the right side */
31
+ position: absolute;
32
+ right: -8px;
33
+
34
+ width: 24px;
35
+ height: 100%;
36
+ padding: 0;
37
+
38
+ background-color: transparent;
39
+ border: 0;
40
+ `;
41
+ /**
42
+ * Sidebar resizer.
43
+ * Displays a thin resizer bar with a larger grab area for easier resizing.
44
+ */
45
+ export default function Resizer(props) {
46
+ const [isHovered, setIsHovered] = useState(false);
47
+ return (_jsxs(ResizerWrapper, { style: { right: props.sidebarWidth }, children: [_jsx(ResizerDisplay, { "$hover": isHovered }), _jsx(ResizerGrabArea, { onMouseDown: props.onGrab, onMouseEnter: () => setIsHovered(true), onMouseLeave: () => setIsHovered(false) })] }));
48
+ }
49
+ //# sourceMappingURL=resizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resizer.js","sourceRoot":"","sources":["../../js/devtools/resizer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAqB,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAE/C,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;CAOhC,CAAC;AAEF,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAE/B;;;;;;;;;;wBAUsB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC;;;CAG5E,CAAC;AAEF,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAA;;;;;;;;;;;;;;CAcpC,CAAC;AAcF;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAAmB;IAC/C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,OAAO,CACH,MAAC,cAAc,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,aAChD,KAAC,cAAc,cAAS,SAAS,GAAI,EACrC,KAAC,eAAe,IACZ,WAAW,EAAE,KAAK,CAAC,MAAM,EACzB,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EACtC,YAAY,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,GACzC,IACW,CACpB,CAAC;AACN,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { MouseEventHandler } from 'react';
2
+ type MoveHandler = (ev: MouseEvent) => void;
3
+ export interface UseMoveInterface {
4
+ /**
5
+ * Whether move is hapenning
6
+ */
7
+ isMoving: boolean;
8
+ /**
9
+ * Callback to call when a move is started.
10
+ * Should be attached to a component's `onMouseDown` attribute.
11
+ */
12
+ startMoving: MouseEventHandler;
13
+ }
14
+ /**
15
+ * Helper hook to support moving an element
16
+ *
17
+ * @param move move handler invoked whenever element is moved
18
+ */
19
+ export default function useMove(move: MoveHandler): UseMoveInterface;
20
+ export {};
21
+ //# sourceMappingURL=use-move.d.ts.map