uiconfig-blueprint 0.0.2 → 0.1.0-dev.1

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 (406) hide show
  1. package/README.md +15 -3
  2. package/dist/ConfigObject.d.ts +5 -3
  3. package/dist/allPaths-EYaH0Usv.js +23 -0
  4. package/dist/{allPaths-gmYjuI3J.js.map → allPaths-EYaH0Usv.js.map} +1 -1
  5. package/dist/{allPathsLoader-drlBWMqQ.js → allPathsLoader-UVZ15qNf.js} +5 -5
  6. package/dist/{allPathsLoader-drlBWMqQ.js.map → allPathsLoader-UVZ15qNf.js.map} +1 -1
  7. package/dist/bpComponents/BPButtonComponent.d.ts +1 -1
  8. package/dist/bpComponents/BPColorInputComponent.d.ts +1 -2
  9. package/dist/bpComponents/BPComponent.d.ts +7 -3
  10. package/dist/bpComponents/BPDropdownInputComponent.d.ts +1 -2
  11. package/dist/bpComponents/BPFileComponent.d.ts +1 -2
  12. package/dist/bpComponents/BPFolderComponent.d.ts +1 -1
  13. package/dist/bpComponents/BPInputComponent.d.ts +2 -2
  14. package/dist/bpComponents/BPNumberInputComponent.d.ts +1 -2
  15. package/dist/bpComponents/BPPanelComponent.d.ts +1 -2
  16. package/dist/bpComponents/BPSliderInputComponent.d.ts +1 -2
  17. package/dist/bpComponents/BPTextInputComponent.d.ts +1 -2
  18. package/dist/bpComponents/BPToggleInputComponent.d.ts +2 -3
  19. package/dist/bpComponents/BPTreeComponent.d.ts +15 -11
  20. package/dist/bpComponents/BPTreeFolderComponent.d.ts +2 -2
  21. package/dist/bpComponents/BPVectorInputComponent.d.ts +1 -2
  22. package/dist/components/AppToaster.d.ts +6 -0
  23. package/dist/components/ConfigurationPanelComponent.d.ts +4 -0
  24. package/dist/components/DialogContext.d.ts +52 -0
  25. package/dist/components/DraggableIcon.d.ts +1 -1
  26. package/dist/components/ExtendedNumericInput.d.ts +1 -1
  27. package/dist/components/FormGroupComponent.d.ts +2 -2
  28. package/dist/components/InspectorStackComponent.d.ts +1 -2
  29. package/dist/components/VisualStyleContext.d.ts +10 -1
  30. package/dist/components/bpIconWrapper.d.ts +2 -2
  31. package/dist/components/loadingState.d.ts +4 -0
  32. package/dist/components/variableIcons.d.ts +40 -41
  33. package/dist/{index-tqa0R-I0.js → index-0vU2D25U.js} +3 -3
  34. package/dist/{index-tqa0R-I0.js.map → index-0vU2D25U.js.map} +1 -1
  35. package/dist/{index-iM9IChdK.js → index-JBvBPdy9.js} +3 -3
  36. package/dist/{index-iM9IChdK.js.map → index-JBvBPdy9.js.map} +1 -1
  37. package/dist/{index-fkZWUkpO.js → index-OyL-zObJ.js} +10219 -26737
  38. package/dist/index-OyL-zObJ.js.map +1 -0
  39. package/dist/index.js +20 -233
  40. package/dist/index.js.map +1 -1
  41. package/dist/index.mjs +3 -3
  42. package/dist/lib.d.ts +33 -0
  43. package/dist/{splitPathsBySizeLoader-WyKl5Fxr.js → splitPathsBySizeLoader-GhF5umHk.js} +6 -6
  44. package/dist/{splitPathsBySizeLoader-WyKl5Fxr.js.map → splitPathsBySizeLoader-GhF5umHk.js.map} +1 -1
  45. package/docs/assets/main.js +4 -3
  46. package/docs/assets/navigation.js +1 -0
  47. package/docs/assets/search.js +1 -1
  48. package/docs/assets/style.css +484 -369
  49. package/docs/classes/UI.html +22 -403
  50. package/docs/classes/UiConfigRendererBlueprint.html +22 -404
  51. package/docs/index.html +26 -103
  52. package/docs/modules.html +3 -50
  53. package/lib/cjs/ConfigObject.d.ts +18 -0
  54. package/lib/cjs/ConfigObject.js +82 -0
  55. package/lib/cjs/ConfigObject.js.map +1 -0
  56. package/lib/cjs/UiConfigRendererBlueprint.d.ts +13 -0
  57. package/lib/cjs/UiConfigRendererBlueprint.js +56 -0
  58. package/lib/cjs/UiConfigRendererBlueprint.js.map +1 -0
  59. package/lib/cjs/bpComponents/BPButtonComponent.d.ts +8 -0
  60. package/lib/cjs/bpComponents/BPButtonComponent.js +19 -0
  61. package/lib/cjs/bpComponents/BPButtonComponent.js.map +1 -0
  62. package/lib/cjs/bpComponents/BPColorInputComponent.d.ts +24 -0
  63. package/lib/cjs/bpComponents/BPColorInputComponent.js +127 -0
  64. package/lib/cjs/bpComponents/BPColorInputComponent.js.map +1 -0
  65. package/lib/cjs/bpComponents/BPComponent.d.ts +29 -0
  66. package/lib/cjs/bpComponents/BPComponent.js +59 -0
  67. package/lib/cjs/bpComponents/BPComponent.js.map +1 -0
  68. package/lib/cjs/bpComponents/BPContainerComponent.d.ts +21 -0
  69. package/lib/cjs/bpComponents/BPContainerComponent.js +54 -0
  70. package/lib/cjs/bpComponents/BPContainerComponent.js.map +1 -0
  71. package/lib/cjs/bpComponents/BPDropdownInputComponent.d.ts +15 -0
  72. package/lib/cjs/bpComponents/BPDropdownInputComponent.js +43 -0
  73. package/lib/cjs/bpComponents/BPDropdownInputComponent.js.map +1 -0
  74. package/lib/cjs/bpComponents/BPFileComponent.d.ts +25 -0
  75. package/lib/cjs/bpComponents/BPFileComponent.js +69 -0
  76. package/lib/cjs/bpComponents/BPFileComponent.js.map +1 -0
  77. package/lib/cjs/bpComponents/BPFolderComponent.d.ts +16 -0
  78. package/lib/cjs/bpComponents/BPFolderComponent.js +39 -0
  79. package/lib/cjs/bpComponents/BPFolderComponent.js.map +1 -0
  80. package/lib/cjs/bpComponents/BPInputComponent.d.ts +11 -0
  81. package/lib/cjs/bpComponents/BPInputComponent.js +34 -0
  82. package/lib/cjs/bpComponents/BPInputComponent.js.map +1 -0
  83. package/lib/cjs/bpComponents/BPLabelledComponent.d.ts +8 -0
  84. package/lib/cjs/bpComponents/BPLabelledComponent.js +14 -0
  85. package/lib/cjs/bpComponents/BPLabelledComponent.js.map +1 -0
  86. package/lib/cjs/bpComponents/BPNumberInputComponent.d.ts +10 -0
  87. package/lib/cjs/bpComponents/BPNumberInputComponent.js +40 -0
  88. package/lib/cjs/bpComponents/BPNumberInputComponent.js.map +1 -0
  89. package/lib/cjs/bpComponents/BPPanelComponent.d.ts +16 -0
  90. package/lib/cjs/bpComponents/BPPanelComponent.js +35 -0
  91. package/lib/cjs/bpComponents/BPPanelComponent.js.map +1 -0
  92. package/lib/cjs/bpComponents/BPSliderInputComponent.d.ts +14 -0
  93. package/lib/cjs/bpComponents/BPSliderInputComponent.js +41 -0
  94. package/lib/cjs/bpComponents/BPSliderInputComponent.js.map +1 -0
  95. package/lib/cjs/bpComponents/BPTextInputComponent.d.ts +7 -0
  96. package/lib/cjs/bpComponents/BPTextInputComponent.js +19 -0
  97. package/lib/cjs/bpComponents/BPTextInputComponent.js.map +1 -0
  98. package/lib/cjs/bpComponents/BPToggleInputComponent.d.ts +8 -0
  99. package/lib/cjs/bpComponents/BPToggleInputComponent.js +22 -0
  100. package/lib/cjs/bpComponents/BPToggleInputComponent.js.map +1 -0
  101. package/lib/cjs/bpComponents/BPTreeComponent.d.ts +36 -0
  102. package/lib/cjs/bpComponents/BPTreeComponent.js +131 -0
  103. package/lib/cjs/bpComponents/BPTreeComponent.js.map +1 -0
  104. package/lib/cjs/bpComponents/BPTreeFolderComponent.d.ts +10 -0
  105. package/lib/cjs/bpComponents/BPTreeFolderComponent.js +40 -0
  106. package/lib/cjs/bpComponents/BPTreeFolderComponent.js.map +1 -0
  107. package/lib/cjs/bpComponents/BPValueComponent.d.ts +16 -0
  108. package/lib/cjs/bpComponents/BPValueComponent.js +46 -0
  109. package/lib/cjs/bpComponents/BPValueComponent.js.map +1 -0
  110. package/lib/cjs/bpComponents/BPVectorInputComponent.d.ts +19 -0
  111. package/lib/cjs/bpComponents/BPVectorInputComponent.js +110 -0
  112. package/lib/cjs/bpComponents/BPVectorInputComponent.js.map +1 -0
  113. package/lib/cjs/components/ConfigurationPanelComponent.d.ts +4 -0
  114. package/lib/cjs/components/ConfigurationPanelComponent.js +30 -0
  115. package/lib/cjs/components/ConfigurationPanelComponent.js.map +1 -0
  116. package/lib/cjs/components/DialogContext.d.ts +48 -0
  117. package/lib/cjs/components/DialogContext.js +79 -0
  118. package/lib/cjs/components/DialogContext.js.map +1 -0
  119. package/lib/cjs/components/DraggableIcon.d.ts +19 -0
  120. package/lib/cjs/components/DraggableIcon.js +70 -0
  121. package/lib/cjs/components/DraggableIcon.js.map +1 -0
  122. package/lib/cjs/components/ExtendedNumericInput.d.ts +25 -0
  123. package/lib/cjs/components/ExtendedNumericInput.js +174 -0
  124. package/lib/cjs/components/ExtendedNumericInput.js.map +1 -0
  125. package/lib/cjs/components/FileComponent.d.ts +7 -0
  126. package/lib/cjs/components/FileComponent.js +49 -0
  127. package/lib/cjs/components/FileComponent.js.map +1 -0
  128. package/lib/cjs/components/FormGroupComponent.d.ts +6 -0
  129. package/lib/cjs/components/FormGroupComponent.js +16 -0
  130. package/lib/cjs/components/FormGroupComponent.js.map +1 -0
  131. package/lib/cjs/components/InspectorStackComponent.d.ts +4 -0
  132. package/lib/cjs/components/InspectorStackComponent.js +27 -0
  133. package/lib/cjs/components/InspectorStackComponent.js.map +1 -0
  134. package/lib/cjs/components/VisualStyleContext.d.ts +119 -0
  135. package/lib/cjs/components/VisualStyleContext.js +60 -0
  136. package/lib/cjs/components/VisualStyleContext.js.map +1 -0
  137. package/lib/cjs/components/bpIconWrapper.d.ts +2 -0
  138. package/lib/cjs/components/bpIconWrapper.js +9 -0
  139. package/lib/cjs/components/bpIconWrapper.js.map +1 -0
  140. package/lib/cjs/components/loadingState.d.ts +4 -0
  141. package/lib/cjs/components/loadingState.js +16 -0
  142. package/lib/cjs/components/loadingState.js.map +1 -0
  143. package/lib/cjs/components/variableIcons.d.ts +40 -0
  144. package/lib/cjs/components/variableIcons.js +46 -0
  145. package/lib/cjs/components/variableIcons.js.map +1 -0
  146. package/lib/cjs/contexts.d.ts +1 -0
  147. package/lib/cjs/contexts.js +3 -0
  148. package/lib/cjs/contexts.js.map +1 -0
  149. package/lib/cjs/index.d.ts +4 -0
  150. package/lib/cjs/index.js +9 -0
  151. package/lib/cjs/index.js.map +1 -0
  152. package/lib/cjs/lib.d.ts +32 -0
  153. package/lib/cjs/lib.js +49 -0
  154. package/lib/cjs/lib.js.map +1 -0
  155. package/lib/cjs/threejs.d.ts +2 -0
  156. package/lib/cjs/threejs.js +3 -0
  157. package/lib/cjs/threejs.js.map +1 -0
  158. package/lib/css/renderer.css +13110 -0
  159. package/lib/css/renderer.css.map +1 -0
  160. package/lib/esm/ConfigObject.d.ts +18 -0
  161. package/lib/esm/ConfigObject.js +78 -0
  162. package/lib/esm/ConfigObject.js.map +1 -0
  163. package/lib/esm/UiConfigRendererBlueprint.d.ts +13 -0
  164. package/lib/esm/UiConfigRendererBlueprint.js +52 -0
  165. package/lib/esm/UiConfigRendererBlueprint.js.map +1 -0
  166. package/lib/esm/bpComponents/BPButtonComponent.d.ts +8 -0
  167. package/lib/esm/bpComponents/BPButtonComponent.js +15 -0
  168. package/lib/esm/bpComponents/BPButtonComponent.js.map +1 -0
  169. package/lib/esm/bpComponents/BPColorInputComponent.d.ts +24 -0
  170. package/lib/esm/bpComponents/BPColorInputComponent.js +123 -0
  171. package/lib/esm/bpComponents/BPColorInputComponent.js.map +1 -0
  172. package/lib/esm/bpComponents/BPComponent.d.ts +29 -0
  173. package/lib/esm/bpComponents/BPComponent.js +55 -0
  174. package/lib/esm/bpComponents/BPComponent.js.map +1 -0
  175. package/lib/esm/bpComponents/BPContainerComponent.d.ts +21 -0
  176. package/lib/esm/bpComponents/BPContainerComponent.js +50 -0
  177. package/lib/esm/bpComponents/BPContainerComponent.js.map +1 -0
  178. package/lib/esm/bpComponents/BPDropdownInputComponent.d.ts +15 -0
  179. package/lib/esm/bpComponents/BPDropdownInputComponent.js +39 -0
  180. package/lib/esm/bpComponents/BPDropdownInputComponent.js.map +1 -0
  181. package/lib/esm/bpComponents/BPFileComponent.d.ts +25 -0
  182. package/lib/esm/bpComponents/BPFileComponent.js +65 -0
  183. package/lib/esm/bpComponents/BPFileComponent.js.map +1 -0
  184. package/lib/esm/bpComponents/BPFolderComponent.d.ts +16 -0
  185. package/lib/esm/bpComponents/BPFolderComponent.js +34 -0
  186. package/lib/esm/bpComponents/BPFolderComponent.js.map +1 -0
  187. package/lib/esm/bpComponents/BPInputComponent.d.ts +11 -0
  188. package/lib/esm/bpComponents/BPInputComponent.js +30 -0
  189. package/lib/esm/bpComponents/BPInputComponent.js.map +1 -0
  190. package/lib/esm/bpComponents/BPLabelledComponent.d.ts +8 -0
  191. package/lib/esm/bpComponents/BPLabelledComponent.js +10 -0
  192. package/lib/esm/bpComponents/BPLabelledComponent.js.map +1 -0
  193. package/lib/esm/bpComponents/BPNumberInputComponent.d.ts +10 -0
  194. package/lib/esm/bpComponents/BPNumberInputComponent.js +36 -0
  195. package/lib/esm/bpComponents/BPNumberInputComponent.js.map +1 -0
  196. package/lib/esm/bpComponents/BPPanelComponent.d.ts +16 -0
  197. package/lib/esm/bpComponents/BPPanelComponent.js +31 -0
  198. package/lib/esm/bpComponents/BPPanelComponent.js.map +1 -0
  199. package/lib/esm/bpComponents/BPSliderInputComponent.d.ts +14 -0
  200. package/lib/esm/bpComponents/BPSliderInputComponent.js +37 -0
  201. package/lib/esm/bpComponents/BPSliderInputComponent.js.map +1 -0
  202. package/lib/esm/bpComponents/BPTextInputComponent.d.ts +7 -0
  203. package/lib/esm/bpComponents/BPTextInputComponent.js +15 -0
  204. package/lib/esm/bpComponents/BPTextInputComponent.js.map +1 -0
  205. package/lib/esm/bpComponents/BPToggleInputComponent.d.ts +8 -0
  206. package/lib/esm/bpComponents/BPToggleInputComponent.js +18 -0
  207. package/lib/esm/bpComponents/BPToggleInputComponent.js.map +1 -0
  208. package/lib/esm/bpComponents/BPTreeComponent.d.ts +36 -0
  209. package/lib/esm/bpComponents/BPTreeComponent.js +127 -0
  210. package/lib/esm/bpComponents/BPTreeComponent.js.map +1 -0
  211. package/lib/esm/bpComponents/BPTreeFolderComponent.d.ts +10 -0
  212. package/lib/esm/bpComponents/BPTreeFolderComponent.js +36 -0
  213. package/lib/esm/bpComponents/BPTreeFolderComponent.js.map +1 -0
  214. package/lib/esm/bpComponents/BPValueComponent.d.ts +16 -0
  215. package/lib/esm/bpComponents/BPValueComponent.js +42 -0
  216. package/lib/esm/bpComponents/BPValueComponent.js.map +1 -0
  217. package/lib/esm/bpComponents/BPVectorInputComponent.d.ts +19 -0
  218. package/lib/esm/bpComponents/BPVectorInputComponent.js +106 -0
  219. package/lib/esm/bpComponents/BPVectorInputComponent.js.map +1 -0
  220. package/lib/esm/components/AppToaster.d.ts +6 -0
  221. package/lib/esm/components/AppToaster.js +8 -0
  222. package/lib/esm/components/AppToaster.js.map +1 -0
  223. package/lib/esm/components/ConfigurationPanelComponent.d.ts +4 -0
  224. package/lib/esm/components/ConfigurationPanelComponent.js +26 -0
  225. package/lib/esm/components/ConfigurationPanelComponent.js.map +1 -0
  226. package/lib/esm/components/DialogContext.d.ts +52 -0
  227. package/lib/esm/components/DialogContext.js +89 -0
  228. package/lib/esm/components/DialogContext.js.map +1 -0
  229. package/lib/esm/components/DraggableIcon.d.ts +19 -0
  230. package/lib/esm/components/DraggableIcon.js +66 -0
  231. package/lib/esm/components/DraggableIcon.js.map +1 -0
  232. package/lib/esm/components/ExtendedNumericInput.d.ts +25 -0
  233. package/lib/esm/components/ExtendedNumericInput.js +170 -0
  234. package/lib/esm/components/ExtendedNumericInput.js.map +1 -0
  235. package/lib/esm/components/FileComponent.d.ts +7 -0
  236. package/lib/esm/components/FileComponent.js +45 -0
  237. package/lib/esm/components/FileComponent.js.map +1 -0
  238. package/lib/esm/components/FormGroupComponent.d.ts +6 -0
  239. package/lib/esm/components/FormGroupComponent.js +12 -0
  240. package/lib/esm/components/FormGroupComponent.js.map +1 -0
  241. package/lib/esm/components/InspectorStackComponent.d.ts +4 -0
  242. package/lib/esm/components/InspectorStackComponent.js +23 -0
  243. package/lib/esm/components/InspectorStackComponent.js.map +1 -0
  244. package/lib/esm/components/VisualStyleContext.d.ts +119 -0
  245. package/lib/esm/components/VisualStyleContext.js +53 -0
  246. package/lib/esm/components/VisualStyleContext.js.map +1 -0
  247. package/lib/esm/components/bpIconWrapper.d.ts +2 -0
  248. package/lib/esm/components/bpIconWrapper.js +5 -0
  249. package/lib/esm/components/bpIconWrapper.js.map +1 -0
  250. package/lib/esm/components/loadingState.d.ts +4 -0
  251. package/lib/esm/components/loadingState.js +21 -0
  252. package/lib/esm/components/loadingState.js.map +1 -0
  253. package/lib/esm/components/variableIcons.d.ts +40 -0
  254. package/lib/esm/components/variableIcons.js +43 -0
  255. package/lib/esm/components/variableIcons.js.map +1 -0
  256. package/lib/esm/contexts.d.ts +1 -0
  257. package/lib/esm/contexts.js +2 -0
  258. package/lib/esm/contexts.js.map +1 -0
  259. package/lib/esm/index.d.ts +4 -0
  260. package/lib/esm/index.js +5 -0
  261. package/lib/esm/index.js.map +1 -0
  262. package/lib/esm/lib.d.ts +33 -0
  263. package/lib/esm/lib.js +34 -0
  264. package/lib/esm/lib.js.map +1 -0
  265. package/lib/esm/threejs.d.ts +2 -0
  266. package/lib/esm/threejs.js +2 -0
  267. package/lib/esm/threejs.js.map +1 -0
  268. package/lib/esnext/ConfigObject.d.ts +18 -0
  269. package/lib/esnext/ConfigObject.js +75 -0
  270. package/lib/esnext/ConfigObject.js.map +1 -0
  271. package/lib/esnext/UiConfigRendererBlueprint.d.ts +13 -0
  272. package/lib/esnext/UiConfigRendererBlueprint.js +52 -0
  273. package/lib/esnext/UiConfigRendererBlueprint.js.map +1 -0
  274. package/lib/esnext/bpComponents/BPButtonComponent.d.ts +8 -0
  275. package/lib/esnext/bpComponents/BPButtonComponent.js +15 -0
  276. package/lib/esnext/bpComponents/BPButtonComponent.js.map +1 -0
  277. package/lib/esnext/bpComponents/BPColorInputComponent.d.ts +24 -0
  278. package/lib/esnext/bpComponents/BPColorInputComponent.js +110 -0
  279. package/lib/esnext/bpComponents/BPColorInputComponent.js.map +1 -0
  280. package/lib/esnext/bpComponents/BPComponent.d.ts +29 -0
  281. package/lib/esnext/bpComponents/BPComponent.js +46 -0
  282. package/lib/esnext/bpComponents/BPComponent.js.map +1 -0
  283. package/lib/esnext/bpComponents/BPContainerComponent.d.ts +21 -0
  284. package/lib/esnext/bpComponents/BPContainerComponent.js +51 -0
  285. package/lib/esnext/bpComponents/BPContainerComponent.js.map +1 -0
  286. package/lib/esnext/bpComponents/BPDropdownInputComponent.d.ts +15 -0
  287. package/lib/esnext/bpComponents/BPDropdownInputComponent.js +40 -0
  288. package/lib/esnext/bpComponents/BPDropdownInputComponent.js.map +1 -0
  289. package/lib/esnext/bpComponents/BPFileComponent.d.ts +25 -0
  290. package/lib/esnext/bpComponents/BPFileComponent.js +52 -0
  291. package/lib/esnext/bpComponents/BPFileComponent.js.map +1 -0
  292. package/lib/esnext/bpComponents/BPFolderComponent.d.ts +16 -0
  293. package/lib/esnext/bpComponents/BPFolderComponent.js +30 -0
  294. package/lib/esnext/bpComponents/BPFolderComponent.js.map +1 -0
  295. package/lib/esnext/bpComponents/BPInputComponent.d.ts +11 -0
  296. package/lib/esnext/bpComponents/BPInputComponent.js +19 -0
  297. package/lib/esnext/bpComponents/BPInputComponent.js.map +1 -0
  298. package/lib/esnext/bpComponents/BPLabelledComponent.d.ts +8 -0
  299. package/lib/esnext/bpComponents/BPLabelledComponent.js +13 -0
  300. package/lib/esnext/bpComponents/BPLabelledComponent.js.map +1 -0
  301. package/lib/esnext/bpComponents/BPNumberInputComponent.d.ts +10 -0
  302. package/lib/esnext/bpComponents/BPNumberInputComponent.js +21 -0
  303. package/lib/esnext/bpComponents/BPNumberInputComponent.js.map +1 -0
  304. package/lib/esnext/bpComponents/BPPanelComponent.d.ts +16 -0
  305. package/lib/esnext/bpComponents/BPPanelComponent.js +31 -0
  306. package/lib/esnext/bpComponents/BPPanelComponent.js.map +1 -0
  307. package/lib/esnext/bpComponents/BPSliderInputComponent.d.ts +14 -0
  308. package/lib/esnext/bpComponents/BPSliderInputComponent.js +39 -0
  309. package/lib/esnext/bpComponents/BPSliderInputComponent.js.map +1 -0
  310. package/lib/esnext/bpComponents/BPTextInputComponent.d.ts +7 -0
  311. package/lib/esnext/bpComponents/BPTextInputComponent.js +15 -0
  312. package/lib/esnext/bpComponents/BPTextInputComponent.js.map +1 -0
  313. package/lib/esnext/bpComponents/BPToggleInputComponent.d.ts +8 -0
  314. package/lib/esnext/bpComponents/BPToggleInputComponent.js +18 -0
  315. package/lib/esnext/bpComponents/BPToggleInputComponent.js.map +1 -0
  316. package/lib/esnext/bpComponents/BPTreeComponent.d.ts +36 -0
  317. package/lib/esnext/bpComponents/BPTreeComponent.js +111 -0
  318. package/lib/esnext/bpComponents/BPTreeComponent.js.map +1 -0
  319. package/lib/esnext/bpComponents/BPTreeFolderComponent.d.ts +10 -0
  320. package/lib/esnext/bpComponents/BPTreeFolderComponent.js +23 -0
  321. package/lib/esnext/bpComponents/BPTreeFolderComponent.js.map +1 -0
  322. package/lib/esnext/bpComponents/BPValueComponent.d.ts +16 -0
  323. package/lib/esnext/bpComponents/BPValueComponent.js +29 -0
  324. package/lib/esnext/bpComponents/BPValueComponent.js.map +1 -0
  325. package/lib/esnext/bpComponents/BPVectorInputComponent.d.ts +19 -0
  326. package/lib/esnext/bpComponents/BPVectorInputComponent.js +93 -0
  327. package/lib/esnext/bpComponents/BPVectorInputComponent.js.map +1 -0
  328. package/lib/esnext/components/ConfigurationPanelComponent.d.ts +4 -0
  329. package/lib/esnext/components/ConfigurationPanelComponent.js +26 -0
  330. package/lib/esnext/components/ConfigurationPanelComponent.js.map +1 -0
  331. package/lib/esnext/components/DialogContext.d.ts +48 -0
  332. package/lib/esnext/components/DialogContext.js +55 -0
  333. package/lib/esnext/components/DialogContext.js.map +1 -0
  334. package/lib/esnext/components/DraggableIcon.d.ts +19 -0
  335. package/lib/esnext/components/DraggableIcon.js +62 -0
  336. package/lib/esnext/components/DraggableIcon.js.map +1 -0
  337. package/lib/esnext/components/ExtendedNumericInput.d.ts +25 -0
  338. package/lib/esnext/components/ExtendedNumericInput.js +151 -0
  339. package/lib/esnext/components/ExtendedNumericInput.js.map +1 -0
  340. package/lib/esnext/components/FileComponent.d.ts +7 -0
  341. package/lib/esnext/components/FileComponent.js +42 -0
  342. package/lib/esnext/components/FileComponent.js.map +1 -0
  343. package/lib/esnext/components/FormGroupComponent.d.ts +6 -0
  344. package/lib/esnext/components/FormGroupComponent.js +11 -0
  345. package/lib/esnext/components/FormGroupComponent.js.map +1 -0
  346. package/lib/esnext/components/InspectorStackComponent.d.ts +4 -0
  347. package/lib/esnext/components/InspectorStackComponent.js +23 -0
  348. package/lib/esnext/components/InspectorStackComponent.js.map +1 -0
  349. package/lib/esnext/components/VisualStyleContext.d.ts +119 -0
  350. package/lib/esnext/components/VisualStyleContext.js +53 -0
  351. package/lib/esnext/components/VisualStyleContext.js.map +1 -0
  352. package/lib/esnext/components/bpIconWrapper.d.ts +2 -0
  353. package/lib/esnext/components/bpIconWrapper.js +5 -0
  354. package/lib/esnext/components/bpIconWrapper.js.map +1 -0
  355. package/lib/esnext/components/loadingState.d.ts +4 -0
  356. package/lib/esnext/components/loadingState.js +12 -0
  357. package/lib/esnext/components/loadingState.js.map +1 -0
  358. package/lib/esnext/components/variableIcons.d.ts +40 -0
  359. package/lib/esnext/components/variableIcons.js +43 -0
  360. package/lib/esnext/components/variableIcons.js.map +1 -0
  361. package/lib/esnext/contexts.d.ts +1 -0
  362. package/lib/esnext/contexts.js +2 -0
  363. package/lib/esnext/contexts.js.map +1 -0
  364. package/lib/esnext/index.d.ts +4 -0
  365. package/lib/esnext/index.js +5 -0
  366. package/lib/esnext/index.js.map +1 -0
  367. package/lib/esnext/lib.d.ts +32 -0
  368. package/lib/esnext/lib.js +33 -0
  369. package/lib/esnext/lib.js.map +1 -0
  370. package/lib/esnext/threejs.d.ts +2 -0
  371. package/lib/esnext/threejs.js +2 -0
  372. package/lib/esnext/threejs.js.map +1 -0
  373. package/package.json +15 -11
  374. package/src/ConfigObject.tsx +4 -4
  375. package/src/UiConfigRendererBlueprint.tsx +2 -15
  376. package/src/bpComponents/BPButtonComponent.scss +1 -0
  377. package/src/bpComponents/BPColorInputComponent.tsx +1 -1
  378. package/src/bpComponents/BPComponent.tsx +9 -3
  379. package/src/bpComponents/BPDropdownInputComponent.tsx +0 -1
  380. package/src/bpComponents/BPFileComponent.tsx +2 -3
  381. package/src/bpComponents/BPFolderComponent.scss +2 -2
  382. package/src/bpComponents/BPInputComponent.tsx +1 -1
  383. package/src/bpComponents/BPPanelComponent.tsx +0 -1
  384. package/src/bpComponents/BPSliderInputComponent.tsx +0 -1
  385. package/src/bpComponents/BPTextInputComponent.tsx +1 -1
  386. package/src/bpComponents/BPToggleInputComponent.tsx +1 -1
  387. package/src/bpComponents/BPTreeComponent.tsx +48 -31
  388. package/src/bpComponents/BPTreeFolderComponent.tsx +2 -2
  389. package/src/components/AppToaster.tsx +18 -0
  390. package/src/components/ConfigurationPanelComponent.tsx +63 -0
  391. package/src/components/DialogContext.tsx +150 -0
  392. package/src/components/DraggableIcon.tsx +1 -0
  393. package/src/components/ExtendedNumericInput.tsx +2 -2
  394. package/src/components/FormGroupComponent.tsx +1 -1
  395. package/src/components/InspectorStackComponent.tsx +3 -33
  396. package/src/components/VisualStyleContext.tsx +33 -1
  397. package/src/components/bpIconWrapper.tsx +1 -1
  398. package/src/components/common.scss +6 -0
  399. package/src/components/loadingState.tsx +11 -0
  400. package/src/components/variableIcons.tsx +0 -1
  401. package/src/lib.ts +33 -0
  402. package/src/renderer.scss +59 -56
  403. package/src/tsconfig.json +6 -0
  404. package/tsconfig.json +1 -1
  405. package/dist/allPaths-gmYjuI3J.js +0 -23
  406. package/dist/index-fkZWUkpO.js.map +0 -1
@@ -0,0 +1,19 @@
1
+ import { BPComponentProps, UiConfigRendererContextType } from "./BPComponent";
2
+ import { BPInputComponent } from "./BPInputComponent";
3
+ import { BPValueComponentState } from "./BPValueComponent";
4
+ import type { Vector2, Vector3, Vector4 } from "three";
5
+ export type BPVectorComponentState = BPValueComponentState<Vector2 | Vector3 | Vector4> & {
6
+ min: number;
7
+ max: number;
8
+ step: number;
9
+ components: 1 | 2 | 3 | 4;
10
+ };
11
+ export declare class BPVectorInputComponent extends BPInputComponent<Vector2 | Vector3 | Vector4, BPVectorComponentState> {
12
+ constructor(props: BPComponentProps<Vector2 | Vector3 | Vector4>, context: UiConfigRendererContextType);
13
+ forceOnChange: boolean;
14
+ doesNeedRefresh(_: BPVectorComponentState): boolean;
15
+ getUpdatedState(state: BPVectorComponentState): BPVectorComponentState;
16
+ private _inputs;
17
+ refreshConfigState(state?: BPVectorComponentState): Promise<void>;
18
+ renderInput(): import("react/jsx-runtime").JSX.Element | import("react/jsx-runtime").JSX.Element[];
19
+ }
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BPVectorInputComponent = void 0;
13
+ const jsx_runtime_1 = require("react/jsx-runtime");
14
+ const react_1 = require("react");
15
+ const BPInputComponent_1 = require("./BPInputComponent");
16
+ const ExtendedNumericInput_1 = require("../components/ExtendedNumericInput");
17
+ const variableIcons_1 = require("../components/variableIcons");
18
+ const ts_browser_helpers_1 = require("ts-browser-helpers");
19
+ class BPVectorInputComponent extends BPInputComponent_1.BPInputComponent {
20
+ constructor(props, context) {
21
+ super(props, context, {
22
+ value: new context.THREE.Vector2(),
23
+ label: 'Vector',
24
+ min: -Infinity,
25
+ max: Infinity,
26
+ step: 0.01,
27
+ components: 2,
28
+ });
29
+ this.forceOnChange = true;
30
+ this._inputs = [react_1.default.createRef(), react_1.default.createRef(), react_1.default.createRef(), react_1.default.createRef()];
31
+ }
32
+ doesNeedRefresh(_) {
33
+ return true;
34
+ }
35
+ getUpdatedState(state) {
36
+ var _a, _b;
37
+ const bounds = (0, ts_browser_helpers_1.getOrCall)(this.props.config.bounds);
38
+ const max = ((_a = bounds === null || bounds === void 0 ? void 0 : bounds.length) !== null && _a !== void 0 ? _a : 0) >= 2 ? bounds[1] : Infinity;
39
+ const min = ((_b = bounds === null || bounds === void 0 ? void 0 : bounds.length) !== null && _b !== void 0 ? _b : 0) >= 1 ? bounds[0] : -Infinity;
40
+ const step = (0, ts_browser_helpers_1.getOrCall)(this.props.config.stepSize) || (isFinite(max) && isFinite(min) ? (Math.pow(10, Math.floor(Math.log10((max - min) / 100)))) : 0.01);
41
+ state = super.getUpdatedState(Object.assign(Object.assign({}, state), { min, max, step }));
42
+ let com = this.props.config.type.replace('vector', '').replace('vec', '');
43
+ let components = 0;
44
+ if (!com.length) {
45
+ let v = state.value;
46
+ if (typeof v.w === "number")
47
+ components = 4;
48
+ else if (typeof v.z === "number")
49
+ components = 3;
50
+ else if (typeof v.y === "number")
51
+ components = 2;
52
+ else if (typeof v.x === "number")
53
+ components = 1;
54
+ }
55
+ else {
56
+ components = Math.min(4, Math.max(1, parseInt(com)));
57
+ }
58
+ state.components = components;
59
+ return state;
60
+ }
61
+ refreshConfigState(state) {
62
+ const _super = Object.create(null, {
63
+ refreshConfigState: { get: () => super.refreshConfigState }
64
+ });
65
+ var _a, _b, _c, _d;
66
+ return __awaiter(this, void 0, void 0, function* () {
67
+ yield _super.refreshConfigState.call(this, state);
68
+ yield ((_a = this._inputs[0].current) === null || _a === void 0 ? void 0 : _a.setValue(this.state.value.x));
69
+ yield ((_b = this._inputs[1].current) === null || _b === void 0 ? void 0 : _b.setValue(this.state.value.y));
70
+ yield ((_c = this._inputs[2].current) === null || _c === void 0 ? void 0 : _c.setValue(this.state.value.z));
71
+ yield ((_d = this._inputs[3].current) === null || _d === void 0 ? void 0 : _d.setValue(this.state.value.w));
72
+ });
73
+ }
74
+ renderInput() {
75
+ let ret = [];
76
+ if (!this.state.value)
77
+ return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
78
+ if (this.state.components > 0) {
79
+ const x = ((0, jsx_runtime_1.jsx)(ExtendedNumericInput_1.ExtendedNumericInput, { style: { maxWidth: "8rem", minWidth: "2rem" }, disabled: this.state.disabled, readOnly: this.state.readOnly, leftIcon: variableIcons_1.xIcon3, value: this.state.value.x, ref: this._inputs[0], min: this.state.min, max: this.state.max, stepSize: this.state.step, minorStepSize: this.state.step / 10, majorStepSize: this.state.step * 10, buttonPosition: "none", onChange2: (v, last) => {
80
+ this.state.value.x = v;
81
+ this.setValue(this.state.value, last);
82
+ } }, this.props.config.uuid + '_x'));
83
+ ret.push(x);
84
+ }
85
+ if (this.state.components > 1) {
86
+ const y = ((0, jsx_runtime_1.jsx)(ExtendedNumericInput_1.ExtendedNumericInput, { style: { maxWidth: "8rem", minWidth: "2rem" }, disabled: this.state.disabled, readOnly: this.state.readOnly, value: this.state.value.y, leftIcon: variableIcons_1.yIcon3, ref: this._inputs[1], min: this.state.min, max: this.state.max, stepSize: this.state.step, minorStepSize: this.state.step / 10, majorStepSize: this.state.step * 10, buttonPosition: "none", onChange2: (v, last) => {
87
+ this.state.value.y = v;
88
+ this.setValue(this.state.value, last);
89
+ } }, this.props.config.uuid + '_y'));
90
+ ret.push(y);
91
+ }
92
+ if (this.state.components > 2) {
93
+ const z = ((0, jsx_runtime_1.jsx)(ExtendedNumericInput_1.ExtendedNumericInput, { style: { maxWidth: "8rem", minWidth: "2rem" }, disabled: this.state.disabled, readOnly: this.state.readOnly, value: this.state.value.z, leftIcon: variableIcons_1.zIcon3, min: this.state.min, max: this.state.max, stepSize: this.state.step, ref: this._inputs[2], minorStepSize: this.state.step / 10, majorStepSize: this.state.step * 10, buttonPosition: "none", onChange2: (v, last) => {
94
+ this.state.value.z = v;
95
+ this.setValue(this.state.value, last);
96
+ } }, this.props.config.uuid + '_z'));
97
+ ret.push(z);
98
+ }
99
+ if (this.state.components > 3) {
100
+ const z = ((0, jsx_runtime_1.jsx)(ExtendedNumericInput_1.ExtendedNumericInput, { style: { maxWidth: "8rem", minWidth: "2rem" }, disabled: this.state.disabled, readOnly: this.state.readOnly, value: this.state.value.w, leftIcon: variableIcons_1.wIcon3, ref: this._inputs[3], min: this.state.min, max: this.state.max, stepSize: this.state.step, minorStepSize: this.state.step / 10, majorStepSize: this.state.step * 10, buttonPosition: "none", onChange2: (v, last) => {
101
+ this.state.value.w = v;
102
+ this.setValue(this.state.value, last);
103
+ } }, this.props.config.uuid + '_w'));
104
+ ret.push(z);
105
+ }
106
+ return ret;
107
+ }
108
+ }
109
+ exports.BPVectorInputComponent = BPVectorInputComponent;
110
+ //# sourceMappingURL=BPVectorInputComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BPVectorInputComponent.js","sourceRoot":"","sources":["../../../src/bpComponents/BPVectorInputComponent.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { UiObjectConfig } from 'uiconfig.js';
2
+ export declare function ConfigurationPanelComponent({ config }: {
3
+ config: UiObjectConfig<any, 'panel'>;
4
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConfigurationPanelComponent = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const core_1 = require("@blueprintjs/core");
7
+ const ConfigObject_1 = require("../ConfigObject");
8
+ const BPComponent_1 = require("../bpComponents/BPComponent");
9
+ const common_1 = require("@blueprintjs/core/src/common");
10
+ const VisualStyleContext_1 = require("./VisualStyleContext");
11
+ function ConfigurationPanelComponent({ config }) {
12
+ const renderer = react_1.default.useContext(BPComponent_1.UiConfigRendererContext);
13
+ const stackItem = react_1.default.useCallback(() => {
14
+ return {
15
+ props: { config: config },
16
+ renderPanel(props) {
17
+ return ((0, jsx_runtime_1.jsx)("ul", { style: { listStyleType: "none", paddingLeft: "0", margin: "0" }, children: config && ((0, jsx_runtime_1.jsx)(ConfigObject_1.ConfigObject, Object.assign({}, props, { isPanel: true }))) }));
18
+ },
19
+ title: renderer.methods.getLabel(config)
20
+ };
21
+ }, [config]);
22
+ const [currentPanelStack, setCurrentPanelStack] = react_1.default.useState([stackItem()]);
23
+ react_1.default.useEffect(() => {
24
+ setCurrentPanelStack([stackItem()]);
25
+ }, [config]);
26
+ const style = (0, VisualStyleContext_1.setupVisualStyle)();
27
+ return ((0, jsx_runtime_1.jsx)(VisualStyleContext_1.VisualStyleContext.Provider, { value: Object.assign(Object.assign({}, VisualStyleContext_1.defaultVisualStyle), style), children: (0, jsx_runtime_1.jsxs)(core_1.Card, { id: "bpInspectorCard", className: style.darkMode ? common_1.Classes.DARK : "", style: { height: "100%", flexGrow: "1", position: "relative" }, children: [(0, jsx_runtime_1.jsx)(core_1.PanelStack2, { className: "inspectorPanelStack", showPanelHeader: true, renderActivePanelOnly: true, onOpen: (p) => setCurrentPanelStack([...currentPanelStack, p]), onClose: () => setCurrentPanelStack(currentPanelStack.slice(0, -1)), stack: currentPanelStack }), (0, jsx_runtime_1.jsx)("div", { className: "bpPanelStackHeaderOverlay " + common_1.Classes.PANEL_STACK2_HEADER, children: (0, jsx_runtime_1.jsx)(core_1.Popover, { targetProps: { style: { position: "absolute", right: "5px" } }, minimal: true, targetTagName: "div", content: (0, jsx_runtime_1.jsx)(VisualStyleContext_1.ThemeSettingsMenuComponent, {}), placement: "bottom", children: (0, jsx_runtime_1.jsx)(core_1.Button, { icon: "cog", small: true, minimal: true, text: "" }) }) })] }) }));
28
+ }
29
+ exports.ConfigurationPanelComponent = ConfigurationPanelComponent;
30
+ //# sourceMappingURL=ConfigurationPanelComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigurationPanelComponent.js","sourceRoot":"","sources":["../../../src/components/ConfigurationPanelComponent.tsx"],"names":[],"mappings":";;;;AAAA,iCAA0B;AAC1B,4CAA4E;AAC5E,kDAA0D;AAE1D,6DAAmE;AACnE,yDAAoD;AACpD,6DAK6B;AAI7B,SAAgB,2BAA2B,CAAC,EAAC,MAAM,EAA2C;IAC1F,MAAM,QAAQ,GAAG,eAAK,CAAC,UAAU,CAAC,qCAAuB,CAAC,CAAA;IAC1D,MAAM,SAAS,GAAG,eAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACrC,OAAO;YACH,KAAK,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC;YACvB,WAAW,CAAC,KAAkB;gBAE1B,OAAO,CACH,+BAAI,KAAK,EAAE,EAAC,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAC,YAE5D,MAAM,IAAI,CAAC,uBAAC,2BAAY,oBAAK,KAAK,IAAE,OAAO,EAAE,IAAI,IAAG,CAAC,GACrD,CACR,CAAA;YACL,CAAC;YACD,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;SACN,CAAA;IAC1C,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IACZ,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,eAAK,CAAC,QAAQ,CAA2C,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAC1H,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QAEjB,oBAAoB,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IACvC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAEZ,MAAM,KAAK,GAAG,IAAA,qCAAgB,GAAE,CAAA;IAEhC,OAAO,CACH,uBAAC,uCAAkB,CAAC,QAAQ,IAAC,KAAK,kCAAM,uCAAkB,GAAK,KAAK,aACpE,wBAAC,WAAI,IAAC,EAAE,EAAC,iBAAiB,EAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAA,CAAC,CAAA,gBAAO,CAAC,IAAI,CAAA,CAAC,CAAA,EAAE,EAAE,KAAK,EAAE,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,EAAC,aAC9H,uBAAC,kBAAW,IAAC,SAAS,EAAC,qBAAqB,EAC/B,eAAe,EAAE,IAAI,EACrB,qBAAqB,EAAE,IAAI,EAC3B,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,GAAG,iBAAiB,EAAE,CAAC,CAAQ,CAAC,EACrE,OAAO,EAAE,GAAG,EAAE,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EACnE,KAAK,EAAE,iBAAiB,GAAG,EACxC,gCAAK,SAAS,EAAE,4BAA4B,GAAG,gBAAO,CAAC,mBAAmB,YACtE,uBAAC,cAAO,IAAC,WAAW,EAAE,EAAC,KAAK,EAAE,EAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAC,EAAC,EAC1D,OAAO,EAAE,IAAI,EACb,aAAa,EAAE,KAAK,EACzB,OAAO,EACP,uBAAC,+CAA0B,KAAE,EAC/B,SAAS,EAAC,QAAQ,YAChB,uBAAC,aAAM,IAAC,IAAI,EAAC,KAAK,EAAC,KAAK,QAAC,OAAO,QAAC,IAAI,EAAC,EAAE,GAAG,GACrC,GACR,IACH,GACuB,CACjC,CAAA;AACL,CAAC;AA/CD,kEA+CC"}
@@ -0,0 +1,48 @@
1
+ import { ReactNode } from 'react';
2
+ export type DialogStateType = {
3
+ isOpen: boolean;
4
+ title: string;
5
+ content: ReactNode;
6
+ actions: ReactNode;
7
+ state: any;
8
+ canClose: boolean;
9
+ };
10
+ export declare const defaultDialogContext: {
11
+ isOpen: boolean;
12
+ title: string;
13
+ content: ReactNode;
14
+ actions: ReactNode;
15
+ state: any;
16
+ canClose: boolean;
17
+ };
18
+ export declare function setupDialog(): {
19
+ dialog: DialogStateType;
20
+ open: (d: Partial<DialogStateType>) => void;
21
+ close: () => void;
22
+ };
23
+ export declare const DialogContext: import("react").Context<{
24
+ dialog: DialogStateType;
25
+ open: (d: Partial<DialogStateType>) => void;
26
+ close: () => void;
27
+ }>;
28
+ export declare const useDialog: () => {
29
+ dialog: DialogStateType;
30
+ open: (d: Partial<DialogStateType>) => void;
31
+ close: () => void;
32
+ };
33
+ export declare function DialogProvider({ children }: {
34
+ children: ReactNode;
35
+ }): import("react/jsx-runtime").JSX.Element;
36
+ export declare function DialogComponent(): import("react/jsx-runtime").JSX.Element;
37
+ export declare function useDialogPrompt(): {
38
+ prompt: ({ closeButtonText, submitButtonText, message, placeholder, value, onClose, onSubmit, ...props }: Partial<DialogStateType> & {
39
+ closeButtonText?: string | undefined;
40
+ submitButtonText?: string | undefined;
41
+ message?: string | undefined;
42
+ placeholder?: string | undefined;
43
+ value?: string | undefined;
44
+ onClose?: ((value: string) => boolean | undefined | Promise<boolean | undefined>) | undefined;
45
+ onSubmit?: ((value: string) => boolean | undefined | Promise<boolean | undefined>) | undefined;
46
+ }) => Promise<string | null>;
47
+ close: () => void;
48
+ };
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __rest = (this && this.__rest) || function (s, e) {
12
+ var t = {};
13
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
+ t[p] = s[p];
15
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
+ t[p[i]] = s[p[i]];
19
+ }
20
+ return t;
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.useDialogPrompt = exports.DialogComponent = exports.DialogProvider = exports.useDialog = exports.DialogContext = exports.setupDialog = exports.defaultDialogContext = void 0;
24
+ const jsx_runtime_1 = require("react/jsx-runtime");
25
+ const react_1 = require("react");
26
+ const core_1 = require("@blueprintjs/core");
27
+ const loadingState_1 = require("./loadingState");
28
+ exports.defaultDialogContext = {
29
+ isOpen: false, title: '',
30
+ content: null,
31
+ actions: null,
32
+ state: {}, canClose: true,
33
+ };
34
+ function setupDialog() {
35
+ const [dialog, setDialog] = (0, react_1.useState)(exports.defaultDialogContext);
36
+ const open = (0, react_1.useCallback)((d) => {
37
+ setDialog(Object.assign(Object.assign(Object.assign({}, dialog), { isOpen: true }), d));
38
+ }, [dialog, setDialog]);
39
+ const close = (0, react_1.useCallback)(() => setDialog(Object.assign(Object.assign({}, dialog), { isOpen: false })), [dialog, setDialog]);
40
+ return { dialog, open, close };
41
+ }
42
+ exports.setupDialog = setupDialog;
43
+ exports.DialogContext = (0, react_1.createContext)({ dialog: exports.defaultDialogContext, open: () => { }, close: () => { } });
44
+ const useDialog = () => (0, react_1.useContext)(exports.DialogContext);
45
+ exports.useDialog = useDialog;
46
+ function DialogProvider({ children }) {
47
+ const dialog = setupDialog();
48
+ return (0, jsx_runtime_1.jsx)(exports.DialogContext.Provider, { value: Object.assign({}, dialog), children: children });
49
+ }
50
+ exports.DialogProvider = DialogProvider;
51
+ function DialogComponent() {
52
+ const { dialog, close } = (0, exports.useDialog)();
53
+ return ((0, jsx_runtime_1.jsxs)(core_1.Dialog, { title: dialog.title, isOpen: dialog.isOpen, isCloseButtonShown: true, onClose: () => { dialog.canClose && close(); }, children: [(0, jsx_runtime_1.jsx)(core_1.DialogBody, { children: dialog.content }), (0, jsx_runtime_1.jsx)(core_1.DialogFooter, { actions: dialog.actions })] }));
54
+ }
55
+ exports.DialogComponent = DialogComponent;
56
+ function useDialogPrompt() {
57
+ const { open, close } = (0, exports.useDialog)();
58
+ const { loadingState, updateLoading } = (0, loadingState_1.useLoadingState)();
59
+ const prompt = (0, react_1.useCallback)((_a) => {
60
+ var { closeButtonText = 'Close', submitButtonText = 'Okay', message = 'Enter some text: ', placeholder = '', value = '', onClose, onSubmit } = _a, props = __rest(_a, ["closeButtonText", "submitButtonText", "message", "placeholder", "value", "onClose", "onSubmit"]);
61
+ return new Promise((resolve) => {
62
+ const state = { value };
63
+ open(Object.assign(Object.assign({}, props), { state, content: ((0, jsx_runtime_1.jsxs)(core_1.Label, { children: [message, (0, jsx_runtime_1.jsx)(core_1.InputGroup, { placeholder: placeholder, defaultValue: state.value, onChange: (e) => state.value = e.target.value })] })), actions: ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(core_1.Button, { text: closeButtonText, loading: loadingState['popup-close'], onClick: () => updateLoading('popup-close', (() => __awaiter(this, void 0, void 0, function* () {
64
+ if (!(onClose && (yield onClose(state.value)) !== false)) {
65
+ close();
66
+ resolve(null);
67
+ }
68
+ }))()) }), (0, jsx_runtime_1.jsx)(core_1.Button, { text: submitButtonText, intent: "primary", loading: loadingState['popup-submit'], onClick: () => updateLoading('popup-submit', (() => __awaiter(this, void 0, void 0, function* () {
69
+ if (!(onSubmit && (yield onSubmit(state.value)) !== false)) {
70
+ close();
71
+ resolve(state.value);
72
+ }
73
+ }))()) })] })) }));
74
+ });
75
+ }, [open, close, loadingState, updateLoading]);
76
+ return { prompt, close };
77
+ }
78
+ exports.useDialogPrompt = useDialogPrompt;
79
+ //# sourceMappingURL=DialogContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DialogContext.js","sourceRoot":"","sources":["../../../src/components/DialogContext.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import * as React from "react";
2
+ import { IconName, MaybeElement } from "@blueprintjs/core";
3
+ export declare class DraggableIcon extends React.Component<{
4
+ icon: IconName | MaybeElement;
5
+ size?: number;
6
+ value: number;
7
+ stepSize?: number;
8
+ small?: boolean;
9
+ onChange: (v: number, last?: boolean) => void;
10
+ }> {
11
+ private cursor;
12
+ private dragStartOffset;
13
+ private dragStartValue;
14
+ private lastValue;
15
+ private removeEvents;
16
+ private mouseUpEvent;
17
+ private mouseMoveEvent;
18
+ render(): import("react/jsx-runtime").JSX.Element;
19
+ }
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DraggableIcon = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const React = require("react");
6
+ const core_1 = require("@blueprintjs/core");
7
+ class DraggableIcon extends React.Component {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.cursor = 'auto';
11
+ this.dragStartOffset = -Infinity;
12
+ this.dragStartValue = -Infinity;
13
+ this.lastValue = -Infinity;
14
+ this.removeEvents = () => {
15
+ if (isFinite(this.lastValue))
16
+ this.props.onChange(this.lastValue);
17
+ this.lastValue = -Infinity;
18
+ this.dragStartOffset = -Infinity;
19
+ this.dragStartValue = -Infinity;
20
+ document.removeEventListener('mousemove', this.mouseMoveEvent);
21
+ document.removeEventListener('mouseup', this.mouseUpEvent);
22
+ document.documentElement.style.cursor = this.cursor;
23
+ };
24
+ this.mouseUpEvent = (ev) => {
25
+ ev.stopPropagation();
26
+ ev.preventDefault();
27
+ this.removeEvents();
28
+ };
29
+ this.mouseMoveEvent = (ev) => {
30
+ var _a;
31
+ ev.stopPropagation();
32
+ ev.preventDefault();
33
+ if (ev.buttons > 0) {
34
+ if (isFinite(this.dragStartValue) && isFinite(this.dragStartOffset)) {
35
+ let stepSize = ((_a = this.props.stepSize) !== null && _a !== void 0 ? _a : 1) / 10;
36
+ let curr = ev.clientX;
37
+ let mm = 100;
38
+ let off = this.dragStartOffset - curr;
39
+ off = off / mm;
40
+ off *= ((stepSize) * 100) / 2;
41
+ if (ev.shiftKey)
42
+ off *= 10;
43
+ if (ev.altKey)
44
+ off *= 0.1;
45
+ let val = this.dragStartValue - off;
46
+ val = Number(val.toFixed(Math.max(1, -Math.log10(stepSize / 10))));
47
+ this.props.onChange(val, false);
48
+ this.lastValue = val;
49
+ }
50
+ }
51
+ else {
52
+ this.removeEvents();
53
+ }
54
+ };
55
+ }
56
+ render() {
57
+ return ((0, jsx_runtime_1.jsx)("div", { style: { cursor: 'ew-resize', marginLeft: "6px", marginRight: "6px", marginTop: this.props.small ? "3px" : "6px", marginBottom: this.props.small ? "3px" : "6px" }, onMouseDown: (ev) => {
58
+ this.dragStartOffset = ev.clientX;
59
+ this.dragStartValue = this.props.value;
60
+ ev.stopPropagation();
61
+ ev.preventDefault();
62
+ this.cursor = document.documentElement.style.cursor;
63
+ document.documentElement.style.cursor = "ew-resize";
64
+ document.addEventListener('mousemove', this.mouseMoveEvent);
65
+ document.addEventListener('mouseup', this.mouseUpEvent);
66
+ }, children: (0, jsx_runtime_1.jsx)(core_1.Icon, { icon: this.props.icon, size: this.props.size }) }));
67
+ }
68
+ }
69
+ exports.DraggableIcon = DraggableIcon;
70
+ //# sourceMappingURL=DraggableIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DraggableIcon.js","sourceRoot":"","sources":["../../../src/components/DraggableIcon.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import React from "react";
2
+ import type { HTMLInputProps, NumericInputProps } from "@blueprintjs/core";
3
+ export interface IExtendedNumericInputState {
4
+ value?: string;
5
+ }
6
+ export declare class ExtendedNumericInput extends React.PureComponent<HTMLInputProps & NumericInputProps & {
7
+ onChange2: (v: number, last?: boolean) => void;
8
+ }, IExtendedNumericInputState> {
9
+ state: IExtendedNumericInputState;
10
+ setValue(val?: number): Promise<void>;
11
+ render(): import("react/jsx-runtime").JSX.Element;
12
+ private handleBlur;
13
+ private _lastChangedValue;
14
+ private handleKeyDown;
15
+ private handleValueChange;
16
+ private handleButtonClick;
17
+ private handleConfirm;
18
+ private expandScientificNotationTerms;
19
+ private expandNumberAbbreviationTerms;
20
+ private evaluateSimpleMathExpression;
21
+ private nanStringToEmptyString;
22
+ private expandAbbreviatedNumber;
23
+ private expandScientificNotationNumber;
24
+ private roundValue;
25
+ }
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ExtendedNumericInput = void 0;
13
+ const jsx_runtime_1 = require("react/jsx-runtime");
14
+ const react_1 = require("react");
15
+ const core_1 = require("@blueprintjs/core");
16
+ const DraggableIcon_1 = require("./DraggableIcon");
17
+ const NumberAbbreviation = {
18
+ BILLION: "b",
19
+ MILLION: "m",
20
+ THOUSAND: "k",
21
+ };
22
+ const NUMBER_ABBREVIATION_REGEX = /((\.\d+)|(\d+(\.\d+)?))(k|m|b)\b/gi;
23
+ const SCIENTIFIC_NOTATION_REGEX = /((\.\d+)|(\d+(\.\d+)?))(e\d+)\b/gi;
24
+ class ExtendedNumericInput extends react_1.default.PureComponent {
25
+ constructor() {
26
+ var _a, _b;
27
+ super(...arguments);
28
+ this.state = {
29
+ value: ((_b = (_a = this.props.value) !== null && _a !== void 0 ? _a : this.props.defaultValue) !== null && _b !== void 0 ? _b : '').toString(),
30
+ };
31
+ this.handleBlur = (e) => {
32
+ this.handleConfirm(e.target.value);
33
+ };
34
+ this._lastChangedValue = null;
35
+ this.handleKeyDown = (e) => {
36
+ if (e.code === 'Enter') {
37
+ this.handleConfirm(e.target.value);
38
+ }
39
+ else if (e.code === 'ArrowUp' || e.code === 'ArrowDown') {
40
+ if (this._lastChangedValue) {
41
+ if (!this._lastChangedValue[1].length && e.target.value.length) {
42
+ this.handleConfirm(e.target.value);
43
+ }
44
+ else
45
+ this.handleValueChange(this._lastChangedValue[0], this._lastChangedValue[1], e.target, true, true);
46
+ }
47
+ else {
48
+ this.handleConfirm(e.target.value);
49
+ }
50
+ }
51
+ this._lastChangedValue = null;
52
+ };
53
+ this.handleValueChange = (_valueAsNumber, valueAsString, inputElement, last, dispatchOnChange2 = false) => {
54
+ this._lastChangedValue = [_valueAsNumber, valueAsString];
55
+ this.setState({ value: valueAsString }, () => {
56
+ var _a, _b, _c, _d;
57
+ (_b = (_a = this.props).onValueChange) === null || _b === void 0 ? void 0 : _b.call(_a, _valueAsNumber, valueAsString, inputElement);
58
+ if (dispatchOnChange2)
59
+ (_d = (_c = this.props).onChange2) === null || _d === void 0 ? void 0 : _d.call(_c, _valueAsNumber, last);
60
+ });
61
+ };
62
+ this.handleButtonClick = (_valueAsNumber, valueAsString) => {
63
+ this.handleValueChange(_valueAsNumber, valueAsString, null, true, true);
64
+ };
65
+ this.handleConfirm = (value) => {
66
+ let result = value;
67
+ result = this.expandScientificNotationTerms(result);
68
+ result = this.expandNumberAbbreviationTerms(result);
69
+ result = this.evaluateSimpleMathExpression(result);
70
+ result = this.nanStringToEmptyString(result);
71
+ this.setState({ value: result }, () => {
72
+ var _a, _b, _c, _d;
73
+ (_b = (_a = this.props).onValueChange) === null || _b === void 0 ? void 0 : _b.call(_a, parseFloat(result) || 0, result, null);
74
+ (_d = (_c = this.props).onChange2) === null || _d === void 0 ? void 0 : _d.call(_c, parseFloat(result) || 0);
75
+ });
76
+ this.forceUpdate();
77
+ };
78
+ this.expandScientificNotationTerms = (value) => {
79
+ if (!value) {
80
+ return value;
81
+ }
82
+ return value.replace(SCIENTIFIC_NOTATION_REGEX, this.expandScientificNotationNumber);
83
+ };
84
+ this.expandNumberAbbreviationTerms = (value) => {
85
+ if (!value) {
86
+ return value;
87
+ }
88
+ return value.replace(NUMBER_ABBREVIATION_REGEX, this.expandAbbreviatedNumber);
89
+ };
90
+ this.evaluateSimpleMathExpression = (value) => {
91
+ if (!value) {
92
+ return value;
93
+ }
94
+ const terms = value.split(/[+\-*\/^]/);
95
+ const trimmedTerms = terms.map((term) => term.trim());
96
+ const numericTerms = trimmedTerms.map((term) => +term);
97
+ const illegalTerms = numericTerms.filter(isNaN);
98
+ if (illegalTerms.length > 0) {
99
+ return "";
100
+ }
101
+ let total = 0;
102
+ const matches = value.match(/[+\-*\/^]*\s*(\.\d+|\d+(\.\d+)?)/gi) || [];
103
+ for (const match of matches) {
104
+ const compactedMatch = match.replace(/\s/g, "");
105
+ const compactedMatchNum = compactedMatch.replace(/[*\/^]/g, "");
106
+ const num = parseFloat(compactedMatchNum);
107
+ if (compactedMatch.startsWith("*"))
108
+ total *= num;
109
+ else if (compactedMatch.startsWith("/"))
110
+ total /= num;
111
+ else if (compactedMatch.startsWith("^"))
112
+ total = Math.pow(total, num);
113
+ else
114
+ total += num;
115
+ }
116
+ const roundedTotal = this.roundValue(total);
117
+ return roundedTotal.toString();
118
+ };
119
+ this.nanStringToEmptyString = (value) => {
120
+ return value === "NaN" ? "" : value;
121
+ };
122
+ this.expandAbbreviatedNumber = (value) => {
123
+ if (!value) {
124
+ return value;
125
+ }
126
+ const num = +value.substring(0, value.length - 1);
127
+ const lastChar = value.charAt(value.length - 1).toLowerCase();
128
+ let result = null;
129
+ if (lastChar === NumberAbbreviation.THOUSAND) {
130
+ result = num * 1e3;
131
+ }
132
+ else if (lastChar === NumberAbbreviation.MILLION) {
133
+ result = num * 1e6;
134
+ }
135
+ else if (lastChar === NumberAbbreviation.BILLION) {
136
+ result = num * 1e9;
137
+ }
138
+ const isValid = result != null && !isNaN(result);
139
+ if (isValid) {
140
+ result = this.roundValue(result);
141
+ }
142
+ return isValid ? result.toString() : "";
143
+ };
144
+ this.expandScientificNotationNumber = (value) => {
145
+ if (!value) {
146
+ return value;
147
+ }
148
+ return (+value).toString();
149
+ };
150
+ this.roundValue = (value, precision = 1) => {
151
+ return Math.round(value * Math.pow(10, precision)) / Math.pow(10, precision);
152
+ };
153
+ }
154
+ setValue(val) {
155
+ return __awaiter(this, void 0, void 0, function* () {
156
+ return new Promise((resolve) => {
157
+ var _a, _b;
158
+ this.setState({ value: ((_b = (_a = val !== null && val !== void 0 ? val : this.props.value) !== null && _a !== void 0 ? _a : this.props.defaultValue) !== null && _b !== void 0 ? _b : '').toString() }, resolve);
159
+ });
160
+ });
161
+ }
162
+ render() {
163
+ var _a, _b;
164
+ const { value } = this.state;
165
+ const props2 = Object.assign({}, this.props);
166
+ if (props2.onChange2)
167
+ delete props2.onChange2;
168
+ return ((0, jsx_runtime_1.jsx)(core_1.NumericInput, Object.assign({}, props2, { leftElement: ((0, jsx_runtime_1.jsx)(DraggableIcon_1.DraggableIcon, { icon: (_a = this.props.leftIcon) !== null && _a !== void 0 ? _a : "variable", size: 16, small: this.props.small, value: parseFloat(value !== null && value !== void 0 ? value : '0'), stepSize: this.props.stepSize, onChange: (v, last) => {
169
+ this.handleValueChange(v, v.toString(), null, last, true);
170
+ } })), buttonPosition: (_b = this.props.buttonPosition) !== null && _b !== void 0 ? _b : (this.props.disabled ? "none" : "right"), allowNumericCharactersOnly: false, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, onButtonClick: this.handleButtonClick, onValueChange: this.handleValueChange, placeholder: "Enter a number or expression...", value: value })));
171
+ }
172
+ }
173
+ exports.ExtendedNumericInput = ExtendedNumericInput;
174
+ //# sourceMappingURL=ExtendedNumericInput.js.map