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.
- package/README.md +15 -3
- package/dist/ConfigObject.d.ts +5 -3
- package/dist/allPaths-EYaH0Usv.js +23 -0
- package/dist/{allPaths-gmYjuI3J.js.map → allPaths-EYaH0Usv.js.map} +1 -1
- package/dist/{allPathsLoader-drlBWMqQ.js → allPathsLoader-UVZ15qNf.js} +5 -5
- package/dist/{allPathsLoader-drlBWMqQ.js.map → allPathsLoader-UVZ15qNf.js.map} +1 -1
- package/dist/bpComponents/BPButtonComponent.d.ts +1 -1
- package/dist/bpComponents/BPColorInputComponent.d.ts +1 -2
- package/dist/bpComponents/BPComponent.d.ts +7 -3
- package/dist/bpComponents/BPDropdownInputComponent.d.ts +1 -2
- package/dist/bpComponents/BPFileComponent.d.ts +1 -2
- package/dist/bpComponents/BPFolderComponent.d.ts +1 -1
- package/dist/bpComponents/BPInputComponent.d.ts +2 -2
- package/dist/bpComponents/BPNumberInputComponent.d.ts +1 -2
- package/dist/bpComponents/BPPanelComponent.d.ts +1 -2
- package/dist/bpComponents/BPSliderInputComponent.d.ts +1 -2
- package/dist/bpComponents/BPTextInputComponent.d.ts +1 -2
- package/dist/bpComponents/BPToggleInputComponent.d.ts +2 -3
- package/dist/bpComponents/BPTreeComponent.d.ts +15 -11
- package/dist/bpComponents/BPTreeFolderComponent.d.ts +2 -2
- package/dist/bpComponents/BPVectorInputComponent.d.ts +1 -2
- package/dist/components/AppToaster.d.ts +6 -0
- package/dist/components/ConfigurationPanelComponent.d.ts +4 -0
- package/dist/components/DialogContext.d.ts +52 -0
- package/dist/components/DraggableIcon.d.ts +1 -1
- package/dist/components/ExtendedNumericInput.d.ts +1 -1
- package/dist/components/FormGroupComponent.d.ts +2 -2
- package/dist/components/InspectorStackComponent.d.ts +1 -2
- package/dist/components/VisualStyleContext.d.ts +10 -1
- package/dist/components/bpIconWrapper.d.ts +2 -2
- package/dist/components/loadingState.d.ts +4 -0
- package/dist/components/variableIcons.d.ts +40 -41
- package/dist/{index-tqa0R-I0.js → index-0vU2D25U.js} +3 -3
- package/dist/{index-tqa0R-I0.js.map → index-0vU2D25U.js.map} +1 -1
- package/dist/{index-iM9IChdK.js → index-JBvBPdy9.js} +3 -3
- package/dist/{index-iM9IChdK.js.map → index-JBvBPdy9.js.map} +1 -1
- package/dist/{index-fkZWUkpO.js → index-OyL-zObJ.js} +10219 -26737
- package/dist/index-OyL-zObJ.js.map +1 -0
- package/dist/index.js +20 -233
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3 -3
- package/dist/lib.d.ts +33 -0
- package/dist/{splitPathsBySizeLoader-WyKl5Fxr.js → splitPathsBySizeLoader-GhF5umHk.js} +6 -6
- package/dist/{splitPathsBySizeLoader-WyKl5Fxr.js.map → splitPathsBySizeLoader-GhF5umHk.js.map} +1 -1
- package/docs/assets/main.js +4 -3
- package/docs/assets/navigation.js +1 -0
- package/docs/assets/search.js +1 -1
- package/docs/assets/style.css +484 -369
- package/docs/classes/UI.html +22 -403
- package/docs/classes/UiConfigRendererBlueprint.html +22 -404
- package/docs/index.html +26 -103
- package/docs/modules.html +3 -50
- package/lib/cjs/ConfigObject.d.ts +18 -0
- package/lib/cjs/ConfigObject.js +82 -0
- package/lib/cjs/ConfigObject.js.map +1 -0
- package/lib/cjs/UiConfigRendererBlueprint.d.ts +13 -0
- package/lib/cjs/UiConfigRendererBlueprint.js +56 -0
- package/lib/cjs/UiConfigRendererBlueprint.js.map +1 -0
- package/lib/cjs/bpComponents/BPButtonComponent.d.ts +8 -0
- package/lib/cjs/bpComponents/BPButtonComponent.js +19 -0
- package/lib/cjs/bpComponents/BPButtonComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPColorInputComponent.d.ts +24 -0
- package/lib/cjs/bpComponents/BPColorInputComponent.js +127 -0
- package/lib/cjs/bpComponents/BPColorInputComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPComponent.d.ts +29 -0
- package/lib/cjs/bpComponents/BPComponent.js +59 -0
- package/lib/cjs/bpComponents/BPComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPContainerComponent.d.ts +21 -0
- package/lib/cjs/bpComponents/BPContainerComponent.js +54 -0
- package/lib/cjs/bpComponents/BPContainerComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPDropdownInputComponent.d.ts +15 -0
- package/lib/cjs/bpComponents/BPDropdownInputComponent.js +43 -0
- package/lib/cjs/bpComponents/BPDropdownInputComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPFileComponent.d.ts +25 -0
- package/lib/cjs/bpComponents/BPFileComponent.js +69 -0
- package/lib/cjs/bpComponents/BPFileComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPFolderComponent.d.ts +16 -0
- package/lib/cjs/bpComponents/BPFolderComponent.js +39 -0
- package/lib/cjs/bpComponents/BPFolderComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPInputComponent.d.ts +11 -0
- package/lib/cjs/bpComponents/BPInputComponent.js +34 -0
- package/lib/cjs/bpComponents/BPInputComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPLabelledComponent.d.ts +8 -0
- package/lib/cjs/bpComponents/BPLabelledComponent.js +14 -0
- package/lib/cjs/bpComponents/BPLabelledComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPNumberInputComponent.d.ts +10 -0
- package/lib/cjs/bpComponents/BPNumberInputComponent.js +40 -0
- package/lib/cjs/bpComponents/BPNumberInputComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPPanelComponent.d.ts +16 -0
- package/lib/cjs/bpComponents/BPPanelComponent.js +35 -0
- package/lib/cjs/bpComponents/BPPanelComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPSliderInputComponent.d.ts +14 -0
- package/lib/cjs/bpComponents/BPSliderInputComponent.js +41 -0
- package/lib/cjs/bpComponents/BPSliderInputComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPTextInputComponent.d.ts +7 -0
- package/lib/cjs/bpComponents/BPTextInputComponent.js +19 -0
- package/lib/cjs/bpComponents/BPTextInputComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPToggleInputComponent.d.ts +8 -0
- package/lib/cjs/bpComponents/BPToggleInputComponent.js +22 -0
- package/lib/cjs/bpComponents/BPToggleInputComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPTreeComponent.d.ts +36 -0
- package/lib/cjs/bpComponents/BPTreeComponent.js +131 -0
- package/lib/cjs/bpComponents/BPTreeComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPTreeFolderComponent.d.ts +10 -0
- package/lib/cjs/bpComponents/BPTreeFolderComponent.js +40 -0
- package/lib/cjs/bpComponents/BPTreeFolderComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPValueComponent.d.ts +16 -0
- package/lib/cjs/bpComponents/BPValueComponent.js +46 -0
- package/lib/cjs/bpComponents/BPValueComponent.js.map +1 -0
- package/lib/cjs/bpComponents/BPVectorInputComponent.d.ts +19 -0
- package/lib/cjs/bpComponents/BPVectorInputComponent.js +110 -0
- package/lib/cjs/bpComponents/BPVectorInputComponent.js.map +1 -0
- package/lib/cjs/components/ConfigurationPanelComponent.d.ts +4 -0
- package/lib/cjs/components/ConfigurationPanelComponent.js +30 -0
- package/lib/cjs/components/ConfigurationPanelComponent.js.map +1 -0
- package/lib/cjs/components/DialogContext.d.ts +48 -0
- package/lib/cjs/components/DialogContext.js +79 -0
- package/lib/cjs/components/DialogContext.js.map +1 -0
- package/lib/cjs/components/DraggableIcon.d.ts +19 -0
- package/lib/cjs/components/DraggableIcon.js +70 -0
- package/lib/cjs/components/DraggableIcon.js.map +1 -0
- package/lib/cjs/components/ExtendedNumericInput.d.ts +25 -0
- package/lib/cjs/components/ExtendedNumericInput.js +174 -0
- package/lib/cjs/components/ExtendedNumericInput.js.map +1 -0
- package/lib/cjs/components/FileComponent.d.ts +7 -0
- package/lib/cjs/components/FileComponent.js +49 -0
- package/lib/cjs/components/FileComponent.js.map +1 -0
- package/lib/cjs/components/FormGroupComponent.d.ts +6 -0
- package/lib/cjs/components/FormGroupComponent.js +16 -0
- package/lib/cjs/components/FormGroupComponent.js.map +1 -0
- package/lib/cjs/components/InspectorStackComponent.d.ts +4 -0
- package/lib/cjs/components/InspectorStackComponent.js +27 -0
- package/lib/cjs/components/InspectorStackComponent.js.map +1 -0
- package/lib/cjs/components/VisualStyleContext.d.ts +119 -0
- package/lib/cjs/components/VisualStyleContext.js +60 -0
- package/lib/cjs/components/VisualStyleContext.js.map +1 -0
- package/lib/cjs/components/bpIconWrapper.d.ts +2 -0
- package/lib/cjs/components/bpIconWrapper.js +9 -0
- package/lib/cjs/components/bpIconWrapper.js.map +1 -0
- package/lib/cjs/components/loadingState.d.ts +4 -0
- package/lib/cjs/components/loadingState.js +16 -0
- package/lib/cjs/components/loadingState.js.map +1 -0
- package/lib/cjs/components/variableIcons.d.ts +40 -0
- package/lib/cjs/components/variableIcons.js +46 -0
- package/lib/cjs/components/variableIcons.js.map +1 -0
- package/lib/cjs/contexts.d.ts +1 -0
- package/lib/cjs/contexts.js +3 -0
- package/lib/cjs/contexts.js.map +1 -0
- package/lib/cjs/index.d.ts +4 -0
- package/lib/cjs/index.js +9 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/lib.d.ts +32 -0
- package/lib/cjs/lib.js +49 -0
- package/lib/cjs/lib.js.map +1 -0
- package/lib/cjs/threejs.d.ts +2 -0
- package/lib/cjs/threejs.js +3 -0
- package/lib/cjs/threejs.js.map +1 -0
- package/lib/css/renderer.css +13110 -0
- package/lib/css/renderer.css.map +1 -0
- package/lib/esm/ConfigObject.d.ts +18 -0
- package/lib/esm/ConfigObject.js +78 -0
- package/lib/esm/ConfigObject.js.map +1 -0
- package/lib/esm/UiConfigRendererBlueprint.d.ts +13 -0
- package/lib/esm/UiConfigRendererBlueprint.js +52 -0
- package/lib/esm/UiConfigRendererBlueprint.js.map +1 -0
- package/lib/esm/bpComponents/BPButtonComponent.d.ts +8 -0
- package/lib/esm/bpComponents/BPButtonComponent.js +15 -0
- package/lib/esm/bpComponents/BPButtonComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPColorInputComponent.d.ts +24 -0
- package/lib/esm/bpComponents/BPColorInputComponent.js +123 -0
- package/lib/esm/bpComponents/BPColorInputComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPComponent.d.ts +29 -0
- package/lib/esm/bpComponents/BPComponent.js +55 -0
- package/lib/esm/bpComponents/BPComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPContainerComponent.d.ts +21 -0
- package/lib/esm/bpComponents/BPContainerComponent.js +50 -0
- package/lib/esm/bpComponents/BPContainerComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPDropdownInputComponent.d.ts +15 -0
- package/lib/esm/bpComponents/BPDropdownInputComponent.js +39 -0
- package/lib/esm/bpComponents/BPDropdownInputComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPFileComponent.d.ts +25 -0
- package/lib/esm/bpComponents/BPFileComponent.js +65 -0
- package/lib/esm/bpComponents/BPFileComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPFolderComponent.d.ts +16 -0
- package/lib/esm/bpComponents/BPFolderComponent.js +34 -0
- package/lib/esm/bpComponents/BPFolderComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPInputComponent.d.ts +11 -0
- package/lib/esm/bpComponents/BPInputComponent.js +30 -0
- package/lib/esm/bpComponents/BPInputComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPLabelledComponent.d.ts +8 -0
- package/lib/esm/bpComponents/BPLabelledComponent.js +10 -0
- package/lib/esm/bpComponents/BPLabelledComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPNumberInputComponent.d.ts +10 -0
- package/lib/esm/bpComponents/BPNumberInputComponent.js +36 -0
- package/lib/esm/bpComponents/BPNumberInputComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPPanelComponent.d.ts +16 -0
- package/lib/esm/bpComponents/BPPanelComponent.js +31 -0
- package/lib/esm/bpComponents/BPPanelComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPSliderInputComponent.d.ts +14 -0
- package/lib/esm/bpComponents/BPSliderInputComponent.js +37 -0
- package/lib/esm/bpComponents/BPSliderInputComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPTextInputComponent.d.ts +7 -0
- package/lib/esm/bpComponents/BPTextInputComponent.js +15 -0
- package/lib/esm/bpComponents/BPTextInputComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPToggleInputComponent.d.ts +8 -0
- package/lib/esm/bpComponents/BPToggleInputComponent.js +18 -0
- package/lib/esm/bpComponents/BPToggleInputComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPTreeComponent.d.ts +36 -0
- package/lib/esm/bpComponents/BPTreeComponent.js +127 -0
- package/lib/esm/bpComponents/BPTreeComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPTreeFolderComponent.d.ts +10 -0
- package/lib/esm/bpComponents/BPTreeFolderComponent.js +36 -0
- package/lib/esm/bpComponents/BPTreeFolderComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPValueComponent.d.ts +16 -0
- package/lib/esm/bpComponents/BPValueComponent.js +42 -0
- package/lib/esm/bpComponents/BPValueComponent.js.map +1 -0
- package/lib/esm/bpComponents/BPVectorInputComponent.d.ts +19 -0
- package/lib/esm/bpComponents/BPVectorInputComponent.js +106 -0
- package/lib/esm/bpComponents/BPVectorInputComponent.js.map +1 -0
- package/lib/esm/components/AppToaster.d.ts +6 -0
- package/lib/esm/components/AppToaster.js +8 -0
- package/lib/esm/components/AppToaster.js.map +1 -0
- package/lib/esm/components/ConfigurationPanelComponent.d.ts +4 -0
- package/lib/esm/components/ConfigurationPanelComponent.js +26 -0
- package/lib/esm/components/ConfigurationPanelComponent.js.map +1 -0
- package/lib/esm/components/DialogContext.d.ts +52 -0
- package/lib/esm/components/DialogContext.js +89 -0
- package/lib/esm/components/DialogContext.js.map +1 -0
- package/lib/esm/components/DraggableIcon.d.ts +19 -0
- package/lib/esm/components/DraggableIcon.js +66 -0
- package/lib/esm/components/DraggableIcon.js.map +1 -0
- package/lib/esm/components/ExtendedNumericInput.d.ts +25 -0
- package/lib/esm/components/ExtendedNumericInput.js +170 -0
- package/lib/esm/components/ExtendedNumericInput.js.map +1 -0
- package/lib/esm/components/FileComponent.d.ts +7 -0
- package/lib/esm/components/FileComponent.js +45 -0
- package/lib/esm/components/FileComponent.js.map +1 -0
- package/lib/esm/components/FormGroupComponent.d.ts +6 -0
- package/lib/esm/components/FormGroupComponent.js +12 -0
- package/lib/esm/components/FormGroupComponent.js.map +1 -0
- package/lib/esm/components/InspectorStackComponent.d.ts +4 -0
- package/lib/esm/components/InspectorStackComponent.js +23 -0
- package/lib/esm/components/InspectorStackComponent.js.map +1 -0
- package/lib/esm/components/VisualStyleContext.d.ts +119 -0
- package/lib/esm/components/VisualStyleContext.js +53 -0
- package/lib/esm/components/VisualStyleContext.js.map +1 -0
- package/lib/esm/components/bpIconWrapper.d.ts +2 -0
- package/lib/esm/components/bpIconWrapper.js +5 -0
- package/lib/esm/components/bpIconWrapper.js.map +1 -0
- package/lib/esm/components/loadingState.d.ts +4 -0
- package/lib/esm/components/loadingState.js +21 -0
- package/lib/esm/components/loadingState.js.map +1 -0
- package/lib/esm/components/variableIcons.d.ts +40 -0
- package/lib/esm/components/variableIcons.js +43 -0
- package/lib/esm/components/variableIcons.js.map +1 -0
- package/lib/esm/contexts.d.ts +1 -0
- package/lib/esm/contexts.js +2 -0
- package/lib/esm/contexts.js.map +1 -0
- package/lib/esm/index.d.ts +4 -0
- package/lib/esm/index.js +5 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/lib.d.ts +33 -0
- package/lib/esm/lib.js +34 -0
- package/lib/esm/lib.js.map +1 -0
- package/lib/esm/threejs.d.ts +2 -0
- package/lib/esm/threejs.js +2 -0
- package/lib/esm/threejs.js.map +1 -0
- package/lib/esnext/ConfigObject.d.ts +18 -0
- package/lib/esnext/ConfigObject.js +75 -0
- package/lib/esnext/ConfigObject.js.map +1 -0
- package/lib/esnext/UiConfigRendererBlueprint.d.ts +13 -0
- package/lib/esnext/UiConfigRendererBlueprint.js +52 -0
- package/lib/esnext/UiConfigRendererBlueprint.js.map +1 -0
- package/lib/esnext/bpComponents/BPButtonComponent.d.ts +8 -0
- package/lib/esnext/bpComponents/BPButtonComponent.js +15 -0
- package/lib/esnext/bpComponents/BPButtonComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPColorInputComponent.d.ts +24 -0
- package/lib/esnext/bpComponents/BPColorInputComponent.js +110 -0
- package/lib/esnext/bpComponents/BPColorInputComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPComponent.d.ts +29 -0
- package/lib/esnext/bpComponents/BPComponent.js +46 -0
- package/lib/esnext/bpComponents/BPComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPContainerComponent.d.ts +21 -0
- package/lib/esnext/bpComponents/BPContainerComponent.js +51 -0
- package/lib/esnext/bpComponents/BPContainerComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPDropdownInputComponent.d.ts +15 -0
- package/lib/esnext/bpComponents/BPDropdownInputComponent.js +40 -0
- package/lib/esnext/bpComponents/BPDropdownInputComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPFileComponent.d.ts +25 -0
- package/lib/esnext/bpComponents/BPFileComponent.js +52 -0
- package/lib/esnext/bpComponents/BPFileComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPFolderComponent.d.ts +16 -0
- package/lib/esnext/bpComponents/BPFolderComponent.js +30 -0
- package/lib/esnext/bpComponents/BPFolderComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPInputComponent.d.ts +11 -0
- package/lib/esnext/bpComponents/BPInputComponent.js +19 -0
- package/lib/esnext/bpComponents/BPInputComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPLabelledComponent.d.ts +8 -0
- package/lib/esnext/bpComponents/BPLabelledComponent.js +13 -0
- package/lib/esnext/bpComponents/BPLabelledComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPNumberInputComponent.d.ts +10 -0
- package/lib/esnext/bpComponents/BPNumberInputComponent.js +21 -0
- package/lib/esnext/bpComponents/BPNumberInputComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPPanelComponent.d.ts +16 -0
- package/lib/esnext/bpComponents/BPPanelComponent.js +31 -0
- package/lib/esnext/bpComponents/BPPanelComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPSliderInputComponent.d.ts +14 -0
- package/lib/esnext/bpComponents/BPSliderInputComponent.js +39 -0
- package/lib/esnext/bpComponents/BPSliderInputComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPTextInputComponent.d.ts +7 -0
- package/lib/esnext/bpComponents/BPTextInputComponent.js +15 -0
- package/lib/esnext/bpComponents/BPTextInputComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPToggleInputComponent.d.ts +8 -0
- package/lib/esnext/bpComponents/BPToggleInputComponent.js +18 -0
- package/lib/esnext/bpComponents/BPToggleInputComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPTreeComponent.d.ts +36 -0
- package/lib/esnext/bpComponents/BPTreeComponent.js +111 -0
- package/lib/esnext/bpComponents/BPTreeComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPTreeFolderComponent.d.ts +10 -0
- package/lib/esnext/bpComponents/BPTreeFolderComponent.js +23 -0
- package/lib/esnext/bpComponents/BPTreeFolderComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPValueComponent.d.ts +16 -0
- package/lib/esnext/bpComponents/BPValueComponent.js +29 -0
- package/lib/esnext/bpComponents/BPValueComponent.js.map +1 -0
- package/lib/esnext/bpComponents/BPVectorInputComponent.d.ts +19 -0
- package/lib/esnext/bpComponents/BPVectorInputComponent.js +93 -0
- package/lib/esnext/bpComponents/BPVectorInputComponent.js.map +1 -0
- package/lib/esnext/components/ConfigurationPanelComponent.d.ts +4 -0
- package/lib/esnext/components/ConfigurationPanelComponent.js +26 -0
- package/lib/esnext/components/ConfigurationPanelComponent.js.map +1 -0
- package/lib/esnext/components/DialogContext.d.ts +48 -0
- package/lib/esnext/components/DialogContext.js +55 -0
- package/lib/esnext/components/DialogContext.js.map +1 -0
- package/lib/esnext/components/DraggableIcon.d.ts +19 -0
- package/lib/esnext/components/DraggableIcon.js +62 -0
- package/lib/esnext/components/DraggableIcon.js.map +1 -0
- package/lib/esnext/components/ExtendedNumericInput.d.ts +25 -0
- package/lib/esnext/components/ExtendedNumericInput.js +151 -0
- package/lib/esnext/components/ExtendedNumericInput.js.map +1 -0
- package/lib/esnext/components/FileComponent.d.ts +7 -0
- package/lib/esnext/components/FileComponent.js +42 -0
- package/lib/esnext/components/FileComponent.js.map +1 -0
- package/lib/esnext/components/FormGroupComponent.d.ts +6 -0
- package/lib/esnext/components/FormGroupComponent.js +11 -0
- package/lib/esnext/components/FormGroupComponent.js.map +1 -0
- package/lib/esnext/components/InspectorStackComponent.d.ts +4 -0
- package/lib/esnext/components/InspectorStackComponent.js +23 -0
- package/lib/esnext/components/InspectorStackComponent.js.map +1 -0
- package/lib/esnext/components/VisualStyleContext.d.ts +119 -0
- package/lib/esnext/components/VisualStyleContext.js +53 -0
- package/lib/esnext/components/VisualStyleContext.js.map +1 -0
- package/lib/esnext/components/bpIconWrapper.d.ts +2 -0
- package/lib/esnext/components/bpIconWrapper.js +5 -0
- package/lib/esnext/components/bpIconWrapper.js.map +1 -0
- package/lib/esnext/components/loadingState.d.ts +4 -0
- package/lib/esnext/components/loadingState.js +12 -0
- package/lib/esnext/components/loadingState.js.map +1 -0
- package/lib/esnext/components/variableIcons.d.ts +40 -0
- package/lib/esnext/components/variableIcons.js +43 -0
- package/lib/esnext/components/variableIcons.js.map +1 -0
- package/lib/esnext/contexts.d.ts +1 -0
- package/lib/esnext/contexts.js +2 -0
- package/lib/esnext/contexts.js.map +1 -0
- package/lib/esnext/index.d.ts +4 -0
- package/lib/esnext/index.js +5 -0
- package/lib/esnext/index.js.map +1 -0
- package/lib/esnext/lib.d.ts +32 -0
- package/lib/esnext/lib.js +33 -0
- package/lib/esnext/lib.js.map +1 -0
- package/lib/esnext/threejs.d.ts +2 -0
- package/lib/esnext/threejs.js +2 -0
- package/lib/esnext/threejs.js.map +1 -0
- package/package.json +15 -11
- package/src/ConfigObject.tsx +4 -4
- package/src/UiConfigRendererBlueprint.tsx +2 -15
- package/src/bpComponents/BPButtonComponent.scss +1 -0
- package/src/bpComponents/BPColorInputComponent.tsx +1 -1
- package/src/bpComponents/BPComponent.tsx +9 -3
- package/src/bpComponents/BPDropdownInputComponent.tsx +0 -1
- package/src/bpComponents/BPFileComponent.tsx +2 -3
- package/src/bpComponents/BPFolderComponent.scss +2 -2
- package/src/bpComponents/BPInputComponent.tsx +1 -1
- package/src/bpComponents/BPPanelComponent.tsx +0 -1
- package/src/bpComponents/BPSliderInputComponent.tsx +0 -1
- package/src/bpComponents/BPTextInputComponent.tsx +1 -1
- package/src/bpComponents/BPToggleInputComponent.tsx +1 -1
- package/src/bpComponents/BPTreeComponent.tsx +48 -31
- package/src/bpComponents/BPTreeFolderComponent.tsx +2 -2
- package/src/components/AppToaster.tsx +18 -0
- package/src/components/ConfigurationPanelComponent.tsx +63 -0
- package/src/components/DialogContext.tsx +150 -0
- package/src/components/DraggableIcon.tsx +1 -0
- package/src/components/ExtendedNumericInput.tsx +2 -2
- package/src/components/FormGroupComponent.tsx +1 -1
- package/src/components/InspectorStackComponent.tsx +3 -33
- package/src/components/VisualStyleContext.tsx +33 -1
- package/src/components/bpIconWrapper.tsx +1 -1
- package/src/components/common.scss +6 -0
- package/src/components/loadingState.tsx +11 -0
- package/src/components/variableIcons.tsx +0 -1
- package/src/lib.ts +33 -0
- package/src/renderer.scss +59 -56
- package/src/tsconfig.json +6 -0
- package/tsconfig.json +1 -1
- package/dist/allPaths-gmYjuI3J.js +0 -23
- package/dist/index-fkZWUkpO.js.map +0 -1
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export * from './threejs';
|
|
2
|
+
export * from './contexts';
|
|
3
|
+
export * from './ConfigObject';
|
|
4
|
+
export * from './components/bpIconWrapper';
|
|
5
|
+
export * from './components/ConfigurationPanelComponent';
|
|
6
|
+
export * from './components/DraggableIcon';
|
|
7
|
+
export * from './components/ExtendedNumericInput';
|
|
8
|
+
export * from './components/FileComponent';
|
|
9
|
+
export * from './components/FormGroupComponent';
|
|
10
|
+
export * from './components/InspectorStackComponent';
|
|
11
|
+
export * from './components/variableIcons';
|
|
12
|
+
export * from './components/VisualStyleContext';
|
|
13
|
+
export * from './components/DialogContext';
|
|
14
|
+
export * from './components/loadingState';
|
|
15
|
+
export * from './bpComponents/BPButtonComponent';
|
|
16
|
+
export * from './bpComponents/BPColorInputComponent';
|
|
17
|
+
export * from './bpComponents/BPComponent';
|
|
18
|
+
export * from './bpComponents/BPContainerComponent';
|
|
19
|
+
export * from './bpComponents/BPDropdownInputComponent';
|
|
20
|
+
export * from './bpComponents/BPFileComponent';
|
|
21
|
+
export * from './bpComponents/BPFolderComponent';
|
|
22
|
+
export * from './bpComponents/BPInputComponent';
|
|
23
|
+
export * from './bpComponents/BPLabelledComponent';
|
|
24
|
+
export * from './bpComponents/BPNumberInputComponent';
|
|
25
|
+
export * from './bpComponents/BPPanelComponent';
|
|
26
|
+
export * from './bpComponents/BPSliderInputComponent';
|
|
27
|
+
export * from './bpComponents/BPTextInputComponent';
|
|
28
|
+
export * from './bpComponents/BPToggleInputComponent';
|
|
29
|
+
export * from './bpComponents/BPTreeComponent';
|
|
30
|
+
export * from './bpComponents/BPTreeFolderComponent';
|
|
31
|
+
export * from './bpComponents/BPValueComponent';
|
|
32
|
+
export * from './bpComponents/BPVectorInputComponent';
|
|
33
|
+
//# sourceMappingURL=lib.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0CAA0C,CAAA;AACxD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mCAAmC,CAAA;AACjD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,sCAAsC,CAAA;AACpD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,2BAA2B,CAAA;AACzC,cAAc,kCAAkC,CAAA;AAChD,cAAc,sCAAsC,CAAA;AACpD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,qCAAqC,CAAA;AACnD,cAAc,yCAAyC,CAAA;AACvD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,kCAAkC,CAAA;AAChD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,oCAAoC,CAAA;AAClD,cAAc,uCAAuC,CAAA;AACrD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,uCAAuC,CAAA;AACrD,cAAc,qCAAqC,CAAA;AACnD,cAAc,uCAAuC,CAAA;AACrD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,sCAAsC,CAAA;AACpD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,uCAAuC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"threejs.js","sourceRoot":"","sources":["../../src/threejs.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "uiconfig-blueprint",
|
|
3
3
|
"name:umd": "bpui",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.1.0-dev.1",
|
|
5
5
|
"description": "Blueprint.js wrapper and custom components for web controls UI. To be used with uiconfig.",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"module": "dist/index.mjs",
|
|
8
|
-
"exports": {
|
|
9
|
-
".": {
|
|
10
|
-
"import": "./dist/index.mjs",
|
|
11
|
-
"require": "./dist/index.js"
|
|
12
|
-
}
|
|
13
|
-
},
|
|
14
|
-
"types": "dist/index.d.ts",
|
|
15
8
|
"source": "src/index.ts",
|
|
16
9
|
"sideEffects": false,
|
|
17
10
|
"files": [
|
|
11
|
+
"lib",
|
|
18
12
|
"dist",
|
|
19
13
|
"src",
|
|
20
14
|
"docs",
|
|
@@ -41,9 +35,14 @@
|
|
|
41
35
|
},
|
|
42
36
|
"homepage": "https://github.com/repalash/uiconfig-blueprint#readme",
|
|
43
37
|
"dependencies": {
|
|
38
|
+
"@blueprintjs/core": "^5.7.2",
|
|
44
39
|
"@types/three": "^0.152.1",
|
|
40
|
+
"ts-browser-helpers": "^0.8.0",
|
|
45
41
|
"@types/webxr": "^0.5.10",
|
|
46
|
-
"uiconfig.js": "^0.0.
|
|
42
|
+
"uiconfig.js": "^0.0.9",
|
|
43
|
+
"@blueprintjs/icons": "^5.5.0",
|
|
44
|
+
"@blueprintjs/select": "^5.0.20",
|
|
45
|
+
"blueprint-styler": "^5.0.2",
|
|
47
46
|
"@types/react": "^18.0.28",
|
|
48
47
|
"@types/react-dom": "^18.0.11",
|
|
49
48
|
"react": "^18.2.0",
|
|
@@ -51,15 +50,20 @@
|
|
|
51
50
|
},
|
|
52
51
|
"//": {
|
|
53
52
|
"dependencies": {
|
|
54
|
-
"uiconfig.js": "^0.0.
|
|
53
|
+
"uiconfig.js": "^0.0.9"
|
|
55
54
|
},
|
|
56
55
|
"local_dependencies": {
|
|
57
56
|
"uiconfig.js": "file:./../uiconfig/"
|
|
57
|
+
},
|
|
58
|
+
"scripts": {
|
|
59
|
+
"compile:cjs": "tsc -p ./src -m commonjs --verbatimModuleSyntax false --outDir lib/cjs",
|
|
60
|
+
"compile:esnext": "tsc -p ./src -t esnext --outDir lib/esnext"
|
|
58
61
|
}
|
|
59
62
|
},
|
|
60
63
|
"browserslist": [
|
|
61
64
|
"defaults"
|
|
62
65
|
],
|
|
63
66
|
"type": "module",
|
|
64
|
-
"browser": "dist/index.js"
|
|
67
|
+
"browser": "dist/index.js",
|
|
68
|
+
"types": "dist/index.d.ts"
|
|
65
69
|
}
|
package/src/ConfigObject.tsx
CHANGED
|
@@ -30,7 +30,7 @@ export interface ConfigProps extends PanelActions {
|
|
|
30
30
|
level?: number,
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
const
|
|
33
|
+
export const ConfigObjectGenerators: PartialRecord<UiConfigTypes, Class<React.Component<BPComponentProps<any>, BPComponentState>>> = {
|
|
34
34
|
input: BPTextInputComponent,
|
|
35
35
|
number: BPNumberInputComponent,
|
|
36
36
|
button: BPButtonComponent,
|
|
@@ -54,7 +54,7 @@ const generators: PartialRecord<UiConfigTypes, Class<React.Component<BPComponent
|
|
|
54
54
|
|
|
55
55
|
export class ConfigObject extends React.Component<ConfigProps, {}> {
|
|
56
56
|
static contextType = UiConfigRendererContext
|
|
57
|
-
context
|
|
57
|
+
declare context: React.ContextType<typeof UiConfigRendererContext>
|
|
58
58
|
state = {}
|
|
59
59
|
|
|
60
60
|
render() {
|
|
@@ -72,7 +72,7 @@ export class ConfigObject extends React.Component<ConfigProps, {}> {
|
|
|
72
72
|
}
|
|
73
73
|
if (val && type === 'input' && typeof (val as any).x === 'number') this.props.config.type = type = 'vec'
|
|
74
74
|
|
|
75
|
-
let BPComp =
|
|
75
|
+
let BPComp = ConfigObjectGenerators[type]
|
|
76
76
|
if (type === 'panel' && !this.props.isPanel) {
|
|
77
77
|
const label = this.context.methods.getLabel(this.props.config)
|
|
78
78
|
return (
|
|
@@ -107,7 +107,7 @@ export class ConfigObject extends React.Component<ConfigProps, {}> {
|
|
|
107
107
|
// }
|
|
108
108
|
// if (!this.props.uiConfig.type) return (<li key={v4()}></li>)
|
|
109
109
|
// if (!this.props.uiConfig.uuid) this.props.uiConfig.uuid = v4()
|
|
110
|
-
// const g =
|
|
110
|
+
// const g = ConfigObjectGenerators[this.props.uiConfig.type as any as UiConfigTypes]
|
|
111
111
|
// // console.log(props.uiConfig)
|
|
112
112
|
// if (!g) return <li key={this.props.uiConfig.uuid}></li>
|
|
113
113
|
// this.props.uiConfig.uiRefresh = (mode, deep, delay) => {
|
|
@@ -2,7 +2,7 @@ import {createDiv, createStyles, css} from "ts-browser-helpers";
|
|
|
2
2
|
import {UiConfigRendererBase, UiObjectConfig} from "uiconfig.js";
|
|
3
3
|
import React from 'react'
|
|
4
4
|
import {createRoot, Root} from 'react-dom/client'
|
|
5
|
-
import {
|
|
5
|
+
import {ConfigurationPanelComponent} from './components/ConfigurationPanelComponent'
|
|
6
6
|
import {BPComponent, UiConfigRendererContext} from './bpComponents/BPComponent'
|
|
7
7
|
// @ts-ignore
|
|
8
8
|
import rendererCss from './renderer.scss?inline' // for rollup build remove ?inline
|
|
@@ -47,7 +47,7 @@ export class UiConfigRendererBlueprint extends UiConfigRendererBase<Root> {
|
|
|
47
47
|
this._root.render(
|
|
48
48
|
<React.StrictMode>
|
|
49
49
|
<UiConfigRendererContext.Provider value={this}>
|
|
50
|
-
<
|
|
50
|
+
<ConfigurationPanelComponent config={this.config}/>
|
|
51
51
|
</UiConfigRendererContext.Provider>
|
|
52
52
|
</React.StrictMode>
|
|
53
53
|
)
|
|
@@ -69,17 +69,4 @@ export class UiConfigRendererBlueprint extends UiConfigRendererBase<Root> {
|
|
|
69
69
|
// todo
|
|
70
70
|
}
|
|
71
71
|
|
|
72
|
-
// todo: hidden and disabled
|
|
73
|
-
|
|
74
|
-
// protected _renderUiConfig(uiConfig: UiObjectConfig<any, string>, parent: any): any {
|
|
75
|
-
// const ui = uiConfig.type ? this._typeGenerators[uiConfig.type]?.(parent, uiConfig, this) as BladeApi<BladeController<View>> | undefined : undefined
|
|
76
|
-
// if (ui) {
|
|
77
|
-
// ui.hidden = getOrCall(uiConfig.hidden) ?? false
|
|
78
|
-
// ui.disabled = getOrCall(uiConfig.disabled) ?? false // todo: also see if property is writable?
|
|
79
|
-
// }
|
|
80
|
-
//
|
|
81
|
-
// return ui
|
|
82
|
-
//
|
|
83
|
-
// }
|
|
84
|
-
|
|
85
72
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {createRef} from "react";
|
|
2
2
|
import {BPComponentProps, UiConfigRendererContextType} from "./BPComponent";
|
|
3
3
|
import {Button, Icon, InputGroup, Popover} from "@blueprintjs/core";
|
|
4
4
|
import {BPValueComponent, BPValueComponentState} from "./BPValueComponent";
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import React, {createContext} from "react";
|
|
2
|
-
import type {
|
|
2
|
+
import type {UiConfigRendererBase} from 'uiconfig.js'
|
|
3
3
|
import {UiObjectConfig} from 'uiconfig.js'
|
|
4
4
|
import {getOrCall} from 'ts-browser-helpers'
|
|
5
|
+
import {THREE} from "../threejs";
|
|
5
6
|
|
|
6
7
|
export type BPComponentProps<T> = {
|
|
7
8
|
config: UiObjectConfig<T>,
|
|
@@ -12,11 +13,16 @@ export type BPComponentState = {
|
|
|
12
13
|
disabled?: boolean
|
|
13
14
|
readOnly?: boolean // same as disabled(for most inputs)
|
|
14
15
|
}
|
|
15
|
-
export
|
|
16
|
+
export interface UiConfigRendererBaseBp extends UiConfigRendererBase{
|
|
17
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
18
|
+
THREE: THREE|undefined
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export const UiConfigRendererContext = createContext<UiConfigRendererBaseBp>(null as any)
|
|
16
22
|
export type UiConfigRendererContextType = React.ContextType<typeof UiConfigRendererContext>
|
|
17
23
|
export abstract class BPComponent<TValue, TState, TProps extends BPComponentProps<TValue> = BPComponentProps<TValue>> extends React.Component<TProps, TState> {
|
|
18
24
|
static contextType = UiConfigRendererContext
|
|
19
|
-
context
|
|
25
|
+
declare context: UiConfigRendererContextType
|
|
20
26
|
|
|
21
27
|
protected constructor(props: TProps, context: UiConfigRendererContextType, state: TState) {
|
|
22
28
|
super(props, context);
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
import {FileComponent} from "../components/FileComponent";
|
|
3
2
|
import {BPComponentProps, UiConfigRendererContextType} from "./BPComponent";
|
|
4
3
|
import {BPValueComponent, BPValueComponentState} from "./BPValueComponent";
|
|
@@ -14,8 +13,8 @@ type BPFileComponentExtras = {fileLoader?: {load: (v: string|File|{path: string,
|
|
|
14
13
|
type BPFileComponentContextType = UiConfigRendererContextType & BPFileComponentExtras
|
|
15
14
|
|
|
16
15
|
export class BPFileComponent extends BPValueComponent<FileImportType | null, BPFileComponentState, StateValue> {
|
|
17
|
-
context
|
|
18
|
-
props
|
|
16
|
+
declare context: BPFileComponentContextType
|
|
17
|
+
declare props: BPComponentProps<FileImportType | null> & BPFileComponentExtras
|
|
19
18
|
constructor(props: BPComponentProps<FileImportType | null> & BPFileComponentExtras, context: BPFileComponentContextType) {
|
|
20
19
|
super(props, context, {
|
|
21
20
|
mode: 'file',
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@import "
|
|
1
|
+
@import "@blueprintjs/core/lib/scss/variables.scss";
|
|
2
2
|
|
|
3
3
|
// todo: style for bp5-disabled
|
|
4
4
|
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
justify-content: space-between;
|
|
94
94
|
flex-direction: row;
|
|
95
95
|
box-shadow: 0 1px $pt-divider-black;
|
|
96
|
-
z-index: 1;
|
|
96
|
+
//z-index: 1;
|
|
97
97
|
|
|
98
98
|
> button {
|
|
99
99
|
border-radius: 0;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {BPValueComponent, BPValueComponentState} from "./BPValueComponent";
|
|
2
2
|
import {BPComponentProps, UiConfigRendererContextType} from "./BPComponent";
|
|
3
|
-
import
|
|
3
|
+
import {ReactNode} from "react";
|
|
4
4
|
import {FormGroupComponent} from "../components/FormGroupComponent";
|
|
5
5
|
|
|
6
6
|
export abstract class BPInputComponent<
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {ChangeEventHandler} from "react";
|
|
2
2
|
import {BPComponentProps, UiConfigRendererContextType} from "./BPComponent";
|
|
3
3
|
import {InputGroup} from "@blueprintjs/core";
|
|
4
4
|
import {BPInputComponent} from "./BPInputComponent";
|
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
import {BPComponent, BPComponentProps, BPComponentState, UiConfigRendererContextType} from "./BPComponent";
|
|
2
2
|
import {Tree, TreeNodeInfo} from "@blueprintjs/core";
|
|
3
|
-
import React from "react";
|
|
4
3
|
|
|
5
4
|
export type BPTreeComponentState<T = {}> = BPComponentState & {
|
|
6
5
|
nodes: TreeNodeInfo<T>[]
|
|
7
6
|
}
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
for (const node of nodes) {
|
|
12
|
-
callback(node);
|
|
13
|
-
forEachTreeNode(node.childNodes, callback);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
8
|
+
// https://github.com/palantir/blueprint/blob/develop/packages/docs-app/src/examples/core-examples/treeExample.tsx
|
|
9
|
+
type NodePath = number[];
|
|
16
10
|
|
|
17
11
|
export abstract class BPTreeComponent<T = {}, TConfigVal = void> extends BPComponent<TConfigVal, BPTreeComponentState<T>> {
|
|
18
12
|
constructor(props: BPComponentProps<TConfigVal>, context: UiConfigRendererContextType) {
|
|
19
13
|
super(props, context, {nodes: []});
|
|
20
14
|
}
|
|
21
15
|
|
|
22
|
-
protected _infoMap = new Map<string, TreeNodeInfo<T>>()
|
|
16
|
+
protected _infoMap = new Map<string | number, TreeNodeInfo<T>>()
|
|
23
17
|
|
|
24
18
|
protected _createNodeInfo(id: string, obj: T) {
|
|
25
19
|
return {
|
|
@@ -27,6 +21,8 @@ export abstract class BPTreeComponent<T = {}, TConfigVal = void> extends BPCompo
|
|
|
27
21
|
label: 'unnamed',
|
|
28
22
|
nodeData: obj,
|
|
29
23
|
childNodes: [],
|
|
24
|
+
isExpanded: false,
|
|
25
|
+
isSelected: false,
|
|
30
26
|
}
|
|
31
27
|
}
|
|
32
28
|
|
|
@@ -36,23 +32,48 @@ export abstract class BPTreeComponent<T = {}, TConfigVal = void> extends BPCompo
|
|
|
36
32
|
|
|
37
33
|
protected abstract _getRootNodes(): T[]
|
|
38
34
|
|
|
39
|
-
protected async _onNodeClick(
|
|
35
|
+
protected async _onNodeClick(_id: string | number, _path: number[]) {
|
|
40
36
|
}
|
|
41
37
|
|
|
42
|
-
protected async _onNodeDoubleClick(
|
|
38
|
+
protected async _onNodeDoubleClick(_id: string | number, _path: number[]) {
|
|
43
39
|
}
|
|
44
40
|
|
|
45
|
-
protected
|
|
46
|
-
|
|
47
|
-
|
|
41
|
+
protected _cloneNodes(callback?: (t:TreeNodeInfo<T>)=>void, state?: TreeNodeInfo<T>[]): TreeNodeInfo<T>[] {
|
|
42
|
+
return (state ?? this.state.nodes).map(n => {
|
|
43
|
+
let res: TreeNodeInfo<T> = {
|
|
44
|
+
...n,
|
|
45
|
+
childNodes: n.childNodes ? this._cloneNodes(callback, n.childNodes) : undefined
|
|
46
|
+
}
|
|
47
|
+
if(callback) callback(res)
|
|
48
|
+
this._infoMap.set(n.id, res)
|
|
49
|
+
return res
|
|
50
|
+
})
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
protected _forEachNode<T>(nodes: TreeNodeInfo<T>[] | undefined, callback: (node: TreeNodeInfo<T>) => void) {
|
|
54
|
+
if (nodes === undefined) {
|
|
55
|
+
return nodes;
|
|
56
|
+
}
|
|
57
|
+
for (const node of nodes) {
|
|
58
|
+
callback(node);
|
|
59
|
+
this._forEachNode(node.childNodes, callback);
|
|
60
|
+
}
|
|
61
|
+
return nodes
|
|
62
|
+
}
|
|
63
|
+
protected _forNodeAtPath<T>(nodes: TreeNodeInfo<T>[], path: NodePath, callback: (node: TreeNodeInfo<T>) => void) {
|
|
64
|
+
callback(Tree.nodeFromPath(path, nodes));
|
|
48
65
|
}
|
|
49
66
|
|
|
50
|
-
protected async
|
|
67
|
+
protected async _onNodeExpandCollapse(_id: string | number, _path: number[]) {
|
|
68
|
+
const nodes = this._cloneNodes()
|
|
69
|
+
const node = this._infoMap.get(_id)
|
|
70
|
+
if (!node) return
|
|
51
71
|
node.isExpanded = !node.isExpanded
|
|
52
|
-
|
|
72
|
+
// forNodeAtPath(nodes, _path, node => (node.isExpanded = !node.isExpanded));
|
|
73
|
+
await this.setStatePromise({...this.state, nodes})
|
|
53
74
|
}
|
|
54
75
|
|
|
55
|
-
protected async _onNodeContextMenu(
|
|
76
|
+
protected async _onNodeContextMenu(_id: string | number, _path: number[]) {
|
|
56
77
|
}
|
|
57
78
|
|
|
58
79
|
protected buildData(data: TreeNodeInfo<T>[], obj: T, _?: any, _2?: any) {
|
|
@@ -72,22 +93,19 @@ export abstract class BPTreeComponent<T = {}, TConfigVal = void> extends BPCompo
|
|
|
72
93
|
const nodes = children.map(c => {
|
|
73
94
|
return this.buildData([], c)[0]
|
|
74
95
|
}).filter(v => v)
|
|
75
|
-
console.log('update', nodes, children)
|
|
76
96
|
return super.getUpdatedState({
|
|
77
97
|
nodes
|
|
78
98
|
})
|
|
79
99
|
}
|
|
80
100
|
|
|
81
101
|
deselectAll() {
|
|
82
|
-
|
|
102
|
+
const nodes = this._cloneNodes(n => n.isSelected = false)
|
|
103
|
+
return this.setStatePromise({...this.state, nodes})
|
|
83
104
|
}
|
|
84
105
|
|
|
85
|
-
async setSelected(
|
|
86
|
-
this.
|
|
87
|
-
|
|
88
|
-
node.isSelected = true
|
|
89
|
-
await this.setStatePromise(this.state)
|
|
90
|
-
}
|
|
106
|
+
async setSelected(id?: string) {
|
|
107
|
+
const nodes = this._cloneNodes(n => n.isSelected = n.id === id)
|
|
108
|
+
return this.setStatePromise({...this.state, nodes})
|
|
91
109
|
}
|
|
92
110
|
|
|
93
111
|
componentDidMount() {
|
|
@@ -99,26 +117,25 @@ export abstract class BPTreeComponent<T = {}, TConfigVal = void> extends BPCompo
|
|
|
99
117
|
}
|
|
100
118
|
|
|
101
119
|
render() {
|
|
102
|
-
console.log('render tree', this.state.nodes)
|
|
103
120
|
const TreeT = Tree.ofType<T>()
|
|
104
121
|
return !this.state.hidden ? (
|
|
105
122
|
<TreeT
|
|
106
123
|
contents={this.state.nodes}
|
|
107
124
|
className="folderContent"
|
|
108
125
|
onNodeExpand={(node, _path, _e) => {
|
|
109
|
-
this.
|
|
126
|
+
this._onNodeExpandCollapse(node.id, _path)
|
|
110
127
|
}}
|
|
111
128
|
onNodeCollapse={(node, _path, _e) => {
|
|
112
|
-
this.
|
|
129
|
+
this._onNodeExpandCollapse(node.id, _path)
|
|
113
130
|
}}
|
|
114
131
|
onNodeClick={(node, _path, _e) => {
|
|
115
|
-
this._onNodeClick(node)
|
|
132
|
+
this._onNodeClick(node.id, _path)
|
|
116
133
|
}}
|
|
117
134
|
onNodeDoubleClick={(node, _path, _e) => {
|
|
118
|
-
this._onNodeDoubleClick(node)
|
|
135
|
+
this._onNodeDoubleClick(node.id, _path)
|
|
119
136
|
}}
|
|
120
137
|
onNodeContextMenu={(node, _path, _e) => {
|
|
121
|
-
this._onNodeContextMenu(node)
|
|
138
|
+
this._onNodeContextMenu(node.id, _path)
|
|
122
139
|
}}
|
|
123
140
|
/>
|
|
124
141
|
) : null
|
|
@@ -20,11 +20,11 @@ export class BPTreeFolderComponent extends BPTreeComponent<UiObjectConfig> {
|
|
|
20
20
|
return (this.props.config.children || []).map(c => getOrCall(c) || {}).flat(2) as UiObjectConfig[]
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
protected async _onNodeClick(
|
|
23
|
+
protected async _onNodeClick(_id: string|number) {
|
|
24
24
|
console.log("TODO: Tree node clicked")
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
protected async _onNodeDoubleClick(
|
|
27
|
+
protected async _onNodeDoubleClick(_id: string|number) {
|
|
28
28
|
console.log("TODO: Tree node double clicked")
|
|
29
29
|
}
|
|
30
30
|
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {OverlayToaster, Toaster} from "@blueprintjs/core";
|
|
2
|
+
|
|
3
|
+
// /** Singleton toaster instance. Create separate instances for different options. */
|
|
4
|
+
// export const AppToaster = OverlayToaster.create({
|
|
5
|
+
// // className: "recipe-toaster",
|
|
6
|
+
// position: Position.TOP,
|
|
7
|
+
// });
|
|
8
|
+
|
|
9
|
+
// hack for blueprint 5, remove in blueprint 6
|
|
10
|
+
export const AppToasterRef = {ref: null as Toaster | null}
|
|
11
|
+
export const AppToaster = ()=>AppToasterRef.ref ?? {show: ()=>{}, dismiss: ()=>{}} as any as Toaster
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Use this component in the App.tsx or other root component to create the AppToaster singleton
|
|
15
|
+
*/
|
|
16
|
+
export function AppToasterOverlay(){
|
|
17
|
+
return <OverlayToaster ref={(ref: Toaster|null) => (AppToasterRef.ref = ref)} />
|
|
18
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import {Button, Card, Panel, PanelStack2, Popover} from "@blueprintjs/core";
|
|
3
|
+
import {ConfigObject, ConfigProps} from "../ConfigObject";
|
|
4
|
+
import {UiObjectConfig} from 'uiconfig.js'
|
|
5
|
+
import {UiConfigRendererContext} from '../bpComponents/BPComponent'
|
|
6
|
+
import {Classes} from '@blueprintjs/core/src/common'
|
|
7
|
+
import {
|
|
8
|
+
defaultVisualStyle,
|
|
9
|
+
setupVisualStyle,
|
|
10
|
+
ThemeSettingsMenuComponent,
|
|
11
|
+
VisualStyleContext
|
|
12
|
+
} from './VisualStyleContext'
|
|
13
|
+
|
|
14
|
+
// import {ViewerAppContext} from "./ViewerAppComponent";
|
|
15
|
+
|
|
16
|
+
export function ConfigurationPanelComponent({config}: { config: UiObjectConfig<any, 'panel'> }) {
|
|
17
|
+
const renderer = React.useContext(UiConfigRendererContext)
|
|
18
|
+
const stackItem = React.useCallback(() => {
|
|
19
|
+
return {
|
|
20
|
+
props: {config: config},
|
|
21
|
+
renderPanel(props: ConfigProps) {
|
|
22
|
+
// console.log(props.config === config)
|
|
23
|
+
return (
|
|
24
|
+
<ul style={{listStyleType: "none", paddingLeft: "0", margin: "0"}}>
|
|
25
|
+
{/*{v && (<ConfigObject {...props}/>)}*/}
|
|
26
|
+
{config && (<ConfigObject {...props} isPanel={true}/>)}
|
|
27
|
+
</ul>
|
|
28
|
+
)
|
|
29
|
+
},
|
|
30
|
+
title: renderer.methods.getLabel(config)
|
|
31
|
+
} as Panel<{ config: UiObjectConfig }>
|
|
32
|
+
}, [config])
|
|
33
|
+
const [currentPanelStack, setCurrentPanelStack] = React.useState<Array<Panel<{ config: UiObjectConfig }>>>([stackItem()]);
|
|
34
|
+
|
|
35
|
+
React.useEffect(() => {
|
|
36
|
+
setCurrentPanelStack([stackItem()])
|
|
37
|
+
}, [stackItem, setCurrentPanelStack])
|
|
38
|
+
|
|
39
|
+
const style = setupVisualStyle()
|
|
40
|
+
|
|
41
|
+
return (
|
|
42
|
+
<VisualStyleContext.Provider value={{...defaultVisualStyle, ...style}}>
|
|
43
|
+
<Card id="bpInspectorCard" className={style.darkMode?Classes.DARK:""} style={{height: "100%", flexGrow: "1", position: "relative"}}>
|
|
44
|
+
<PanelStack2 className="inspectorPanelStack"
|
|
45
|
+
showPanelHeader={true}
|
|
46
|
+
renderActivePanelOnly={true}
|
|
47
|
+
onOpen={(p) => setCurrentPanelStack([...currentPanelStack, p] as any)}
|
|
48
|
+
onClose={() => setCurrentPanelStack(currentPanelStack.slice(0, -1))}
|
|
49
|
+
stack={currentPanelStack}/>
|
|
50
|
+
<div className={"bpPanelStackHeaderOverlay " + Classes.PANEL_STACK2_HEADER}>
|
|
51
|
+
<Popover targetProps={{style: {position: "absolute", right: "5px"}}}
|
|
52
|
+
minimal={true}
|
|
53
|
+
targetTagName={"div"}
|
|
54
|
+
content={
|
|
55
|
+
<ThemeSettingsMenuComponent/>
|
|
56
|
+
} placement="bottom">
|
|
57
|
+
<Button icon="cog" small minimal text="" />
|
|
58
|
+
</Popover>
|
|
59
|
+
</div>
|
|
60
|
+
</Card>
|
|
61
|
+
</VisualStyleContext.Provider>
|
|
62
|
+
)
|
|
63
|
+
}
|