@babylonjs/shared-ui-components 5.28.0 → 5.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/colorPicker/colorComponentEntry.d.ts +18 -18
  2. package/colorPicker/colorComponentEntry.js +36 -36
  3. package/colorPicker/colorPicker.d.ts +43 -43
  4. package/colorPicker/colorPicker.js +136 -136
  5. package/colorPicker/hexColor.d.ts +20 -20
  6. package/colorPicker/hexColor.js +42 -42
  7. package/components/Button.d.ts +10 -10
  8. package/components/Button.js +6 -6
  9. package/components/Icon.d.ts +6 -6
  10. package/components/Icon.js +6 -6
  11. package/components/Label.d.ts +7 -7
  12. package/components/Label.js +6 -6
  13. package/components/MessageDialog.d.ts +7 -7
  14. package/components/MessageDialog.js +22 -22
  15. package/components/Toggle.d.ts +8 -8
  16. package/components/Toggle.js +15 -15
  17. package/components/bars/CommandBarComponent.d.ts +16 -16
  18. package/components/bars/CommandBarComponent.js +68 -68
  19. package/components/bars/CommandButtonComponent.d.ts +11 -11
  20. package/components/bars/CommandButtonComponent.js +6 -6
  21. package/components/bars/CommandDropdownComponent.d.ts +26 -26
  22. package/components/bars/CommandDropdownComponent.js +48 -48
  23. package/components/classNames.d.ts +2 -2
  24. package/components/classNames.js +18 -18
  25. package/components/colorPicker/ColorComponentEntry.d.ts +18 -18
  26. package/components/colorPicker/ColorComponentEntry.js +37 -37
  27. package/components/colorPicker/ColorPicker.d.ts +43 -43
  28. package/components/colorPicker/ColorPicker.js +137 -137
  29. package/components/colorPicker/HexColor.d.ts +20 -20
  30. package/components/colorPicker/HexColor.js +45 -45
  31. package/components/layout/DraggableIcon.d.ts +23 -0
  32. package/components/layout/DraggableIcon.js +18 -0
  33. package/components/layout/DraggableIcon.js.map +1 -0
  34. package/components/layout/FlexibleColumn.d.ts +17 -0
  35. package/components/layout/FlexibleColumn.js +12 -0
  36. package/components/layout/FlexibleColumn.js.map +1 -0
  37. package/components/layout/FlexibleDragHandler.d.ts +18 -0
  38. package/components/layout/FlexibleDragHandler.js +88 -0
  39. package/components/layout/FlexibleDragHandler.js.map +1 -0
  40. package/components/layout/FlexibleDropZone.d.ts +19 -0
  41. package/components/layout/FlexibleDropZone.js +12 -0
  42. package/components/layout/FlexibleDropZone.js.map +1 -0
  43. package/components/layout/FlexibleGridContainer.d.ts +10 -0
  44. package/components/layout/FlexibleGridContainer.js +23 -0
  45. package/components/layout/FlexibleGridContainer.js.map +1 -0
  46. package/components/layout/FlexibleGridLayout.d.ts +16 -0
  47. package/components/layout/FlexibleGridLayout.js +24 -0
  48. package/components/layout/FlexibleGridLayout.js.map +1 -0
  49. package/components/layout/FlexibleResizeBar.d.ts +40 -0
  50. package/components/layout/FlexibleResizeBar.js +21 -0
  51. package/components/layout/FlexibleResizeBar.js.map +1 -0
  52. package/components/layout/FlexibleTab.d.ts +34 -0
  53. package/components/layout/FlexibleTab.js +36 -0
  54. package/components/layout/FlexibleTab.js.map +1 -0
  55. package/components/layout/FlexibleTabsContainer.d.ts +28 -0
  56. package/components/layout/FlexibleTabsContainer.js +54 -0
  57. package/components/layout/FlexibleTabsContainer.js.map +1 -0
  58. package/components/layout/LayoutContext.d.ts +12 -0
  59. package/components/layout/LayoutContext.js +3 -0
  60. package/components/layout/LayoutContext.js.map +1 -0
  61. package/components/layout/types.d.ts +78 -0
  62. package/components/layout/types.js +13 -0
  63. package/components/layout/types.js.map +1 -0
  64. package/components/layout/utils.d.ts +25 -0
  65. package/components/layout/utils.js +68 -0
  66. package/components/layout/utils.js.map +1 -0
  67. package/components/lines/ColorLineComponent.d.ts +40 -40
  68. package/components/lines/ColorLineComponent.js +145 -145
  69. package/components/lines/ColorPickerLineComponent.d.ts +33 -33
  70. package/components/lines/ColorPickerLineComponent.js +61 -61
  71. package/components/lines/FileButtonLineComponent.d.ts +16 -16
  72. package/components/lines/FileButtonLineComponent.js +21 -21
  73. package/components/lines/NumericInputComponent.d.ts +31 -31
  74. package/components/lines/NumericInputComponent.js +86 -86
  75. package/lines/booleanLineComponent.d.ts +11 -11
  76. package/lines/booleanLineComponent.js +14 -14
  77. package/lines/buttonLineComponent.d.ts +12 -12
  78. package/lines/buttonLineComponent.js +10 -10
  79. package/lines/checkBoxLineComponent.d.ts +36 -36
  80. package/lines/checkBoxLineComponent.js +88 -88
  81. package/lines/color3LineComponent.d.ts +18 -18
  82. package/lines/color3LineComponent.js +9 -9
  83. package/lines/color4LineComponent.d.ts +18 -18
  84. package/lines/color4LineComponent.js +9 -9
  85. package/lines/colorLineComponent.d.ts +40 -40
  86. package/lines/colorLineComponent.js +144 -144
  87. package/lines/colorPickerComponent.d.ts +31 -31
  88. package/lines/colorPickerComponent.js +60 -60
  89. package/lines/draggableLineComponent.d.ts +9 -9
  90. package/lines/draggableLineComponent.js +12 -12
  91. package/lines/fileButtonLineComponent.d.ts +17 -17
  92. package/lines/fileButtonLineComponent.js +20 -20
  93. package/lines/fileMultipleButtonLineComponent.d.ts +17 -17
  94. package/lines/fileMultipleButtonLineComponent.js +20 -20
  95. package/lines/floatLineComponent.d.ts +50 -50
  96. package/lines/floatLineComponent.js +175 -175
  97. package/lines/hexLineComponent.d.ts +40 -40
  98. package/lines/hexLineComponent.js +121 -121
  99. package/lines/iSelectedLineContainer.d.ts +4 -4
  100. package/lines/iSelectedLineContainer.js +1 -1
  101. package/lines/iconButtonLineComponent.d.ts +11 -11
  102. package/lines/iconButtonLineComponent.js +10 -10
  103. package/lines/iconComponent.d.ts +9 -9
  104. package/lines/iconComponent.js +7 -7
  105. package/lines/indentedTextLineComponent.d.ts +16 -16
  106. package/lines/indentedTextLineComponent.js +26 -26
  107. package/lines/inputArrowsComponent.d.ts +13 -13
  108. package/lines/inputArrowsComponent.js +37 -37
  109. package/lines/lineContainerComponent.d.ts +19 -19
  110. package/lines/lineContainerComponent.js +49 -49
  111. package/lines/linkButtonComponent.d.ts +16 -16
  112. package/lines/linkButtonComponent.js +20 -20
  113. package/lines/matrixLineComponent.d.ts +36 -36
  114. package/lines/matrixLineComponent.js +102 -102
  115. package/lines/messageLineComponent.d.ts +12 -12
  116. package/lines/messageLineComponent.js +14 -14
  117. package/lines/numericInputComponent.d.ts +31 -31
  118. package/lines/numericInputComponent.js +85 -85
  119. package/lines/optionsLineComponent.d.ts +48 -48
  120. package/lines/optionsLineComponent.js +118 -118
  121. package/lines/popup.d.ts +4 -4
  122. package/lines/popup.js +67 -67
  123. package/lines/radioLineComponent.d.ts +21 -21
  124. package/lines/radioLineComponent.js +26 -26
  125. package/lines/sliderLineComponent.d.ts +37 -37
  126. package/lines/sliderLineComponent.js +89 -89
  127. package/lines/targetsProxy.d.ts +11 -11
  128. package/lines/targetsProxy.js +42 -42
  129. package/lines/textInputLineComponent.d.ts +47 -47
  130. package/lines/textInputLineComponent.js +154 -154
  131. package/lines/textLineComponent.d.ts +21 -21
  132. package/lines/textLineComponent.js +30 -30
  133. package/lines/unitButton.d.ts +8 -8
  134. package/lines/unitButton.js +7 -7
  135. package/lines/valueLineComponent.d.ts +15 -15
  136. package/lines/valueLineComponent.js +12 -12
  137. package/lines/vector2LineComponent.d.ts +36 -36
  138. package/lines/vector2LineComponent.js +63 -63
  139. package/lines/vector3LineComponent.d.ts +41 -41
  140. package/lines/vector3LineComponent.js +74 -74
  141. package/lines/vector4LineComponent.d.ts +42 -42
  142. package/lines/vector4LineComponent.js +81 -81
  143. package/nodeGraphSystem/displayLedger.d.ts +5 -5
  144. package/nodeGraphSystem/displayLedger.js +3 -3
  145. package/nodeGraphSystem/frameNodePort.d.ts +25 -25
  146. package/nodeGraphSystem/frameNodePort.js +59 -59
  147. package/nodeGraphSystem/graphCanvas.d.ts +111 -111
  148. package/nodeGraphSystem/graphCanvas.js +1131 -1131
  149. package/nodeGraphSystem/graphFrame.d.ts +153 -153
  150. package/nodeGraphSystem/graphFrame.js +1328 -1328
  151. package/nodeGraphSystem/graphNode.d.ts +79 -79
  152. package/nodeGraphSystem/graphNode.js +459 -459
  153. package/nodeGraphSystem/interfaces/displayManager.d.ts +13 -13
  154. package/nodeGraphSystem/interfaces/displayManager.js +1 -1
  155. package/nodeGraphSystem/interfaces/nodeContainer.d.ts +6 -6
  156. package/nodeGraphSystem/interfaces/nodeContainer.js +1 -1
  157. package/nodeGraphSystem/interfaces/nodeData.d.ts +15 -15
  158. package/nodeGraphSystem/interfaces/nodeData.js +1 -1
  159. package/nodeGraphSystem/interfaces/nodeLocationInfo.d.ts +26 -26
  160. package/nodeGraphSystem/interfaces/nodeLocationInfo.js +1 -1
  161. package/nodeGraphSystem/interfaces/portData.d.ts +28 -28
  162. package/nodeGraphSystem/interfaces/portData.js +7 -7
  163. package/nodeGraphSystem/interfaces/propertyComponentProps.d.ts +6 -6
  164. package/nodeGraphSystem/interfaces/propertyComponentProps.js +1 -1
  165. package/nodeGraphSystem/interfaces/selectionChangedOptions.d.ts +11 -11
  166. package/nodeGraphSystem/interfaces/selectionChangedOptions.js +1 -1
  167. package/nodeGraphSystem/nodeLink.d.ts +31 -31
  168. package/nodeGraphSystem/nodeLink.js +182 -182
  169. package/nodeGraphSystem/nodePort.d.ts +35 -35
  170. package/nodeGraphSystem/nodePort.js +128 -128
  171. package/nodeGraphSystem/propertyLedger.d.ts +8 -8
  172. package/nodeGraphSystem/propertyLedger.js +3 -3
  173. package/nodeGraphSystem/stateManager.d.ts +45 -45
  174. package/nodeGraphSystem/stateManager.js +18 -18
  175. package/nodeGraphSystem/tools.d.ts +5 -5
  176. package/nodeGraphSystem/tools.js +36 -36
  177. package/nodeGraphSystem/typeLedger.d.ts +8 -8
  178. package/nodeGraphSystem/typeLedger.js +2 -2
  179. package/nodeGraphSystem/types/framePortData.d.ts +7 -7
  180. package/nodeGraphSystem/types/framePortData.js +1 -1
  181. package/package.json +4 -3
  182. package/propertyChangedEvent.d.ts +7 -7
  183. package/propertyChangedEvent.js +2 -2
  184. package/stories/Button.stories.d.ts +10 -10
  185. package/stories/Button.stories.js +19 -19
  186. package/stories/Icon.stories.d.ts +9 -9
  187. package/stories/Icon.stories.js +16 -16
  188. package/stories/Label.stories.d.ts +8 -8
  189. package/stories/Label.stories.js +10 -10
  190. package/stories/MessageDialog.stories.d.ts +9 -9
  191. package/stories/MessageDialog.stories.js +19 -19
  192. package/stories/Toggle.stories.d.ts +9 -9
  193. package/stories/Toggle.stories.js +17 -17
  194. package/stories/bars/CommandBarComponent.stories.d.ts +11 -11
  195. package/stories/bars/CommandBarComponent.stories.js +12 -12
  196. package/stories/bars/CommandButtonComponent.stories.d.ts +6 -6
  197. package/stories/bars/CommandButtonComponent.stories.js +6 -6
  198. package/stories/colorPicker/ColorPicker.stories.d.ts +11 -11
  199. package/stories/colorPicker/ColorPicker.stories.js +4 -4
  200. package/stories/layout/FlexibleGridLayout.stories.d.ts +46 -0
  201. package/stories/layout/FlexibleGridLayout.stories.js +48 -0
  202. package/stories/layout/FlexibleGridLayout.stories.js.map +1 -0
  203. package/stories/lines/ColorLineComponent.stories.d.ts +21 -21
  204. package/stories/lines/ColorLineComponent.stories.js +9 -9
  205. package/stories/lines/ColorPickerLineComponent.stories.d.ts +14 -14
  206. package/stories/lines/ColorPickerLineComponent.stories.js +10 -10
  207. package/stories/lines/FileButtonLineComponent.stories.d.ts +6 -6
  208. package/stories/lines/FileButtonLineComponent.stories.js +5 -5
  209. package/stories/lines/NumericInputComponent.stories.d.ts +11 -11
  210. package/stories/lines/NumericInputComponent.stories.js +5 -5
  211. package/stringTools.d.ts +11 -11
  212. package/stringTools.js +88 -88
  213. package/tabs/propertyGrids/gui/checkboxPropertyGridComponent.d.ts +15 -15
  214. package/tabs/propertyGrids/gui/checkboxPropertyGridComponent.js +15 -15
  215. package/tabs/propertyGrids/gui/colorPickerPropertyGridComponent.d.ts +15 -15
  216. package/tabs/propertyGrids/gui/colorPickerPropertyGridComponent.js +14 -14
  217. package/tabs/propertyGrids/gui/commonControlPropertyGridComponent.d.ts +17 -17
  218. package/tabs/propertyGrids/gui/commonControlPropertyGridComponent.js +55 -55
  219. package/tabs/propertyGrids/gui/controlPropertyGridComponent.d.ts +15 -15
  220. package/tabs/propertyGrids/gui/controlPropertyGridComponent.js +12 -12
  221. package/tabs/propertyGrids/gui/ellipsePropertyGridComponent.d.ts +15 -15
  222. package/tabs/propertyGrids/gui/ellipsePropertyGridComponent.js +15 -15
  223. package/tabs/propertyGrids/gui/gridPropertyGridComponent.d.ts +17 -17
  224. package/tabs/propertyGrids/gui/gridPropertyGridComponent.js +38 -38
  225. package/tabs/propertyGrids/gui/imageBasedSliderPropertyGridComponent.d.ts +15 -15
  226. package/tabs/propertyGrids/gui/imageBasedSliderPropertyGridComponent.js +16 -16
  227. package/tabs/propertyGrids/gui/imagePropertyGridComponent.d.ts +15 -15
  228. package/tabs/propertyGrids/gui/imagePropertyGridComponent.js +25 -25
  229. package/tabs/propertyGrids/gui/inputTextPropertyGridComponent.d.ts +15 -15
  230. package/tabs/propertyGrids/gui/inputTextPropertyGridComponent.js +17 -17
  231. package/tabs/propertyGrids/gui/linePropertyGridComponent.d.ts +16 -16
  232. package/tabs/propertyGrids/gui/linePropertyGridComponent.js +27 -27
  233. package/tabs/propertyGrids/gui/radioButtonPropertyGridComponent.d.ts +15 -15
  234. package/tabs/propertyGrids/gui/radioButtonPropertyGridComponent.js +17 -17
  235. package/tabs/propertyGrids/gui/rectanglePropertyGridComponent.d.ts +15 -15
  236. package/tabs/propertyGrids/gui/rectanglePropertyGridComponent.js +15 -15
  237. package/tabs/propertyGrids/gui/scrollViewerPropertyGridComponent.d.ts +15 -15
  238. package/tabs/propertyGrids/gui/scrollViewerPropertyGridComponent.js +15 -15
  239. package/tabs/propertyGrids/gui/sliderPropertyGridComponent.d.ts +15 -15
  240. package/tabs/propertyGrids/gui/sliderPropertyGridComponent.js +16 -16
  241. package/tabs/propertyGrids/gui/stackPanelPropertyGridComponent.d.ts +15 -15
  242. package/tabs/propertyGrids/gui/stackPanelPropertyGridComponent.js +14 -14
  243. package/tabs/propertyGrids/gui/textBlockPropertyGridComponent.d.ts +15 -15
  244. package/tabs/propertyGrids/gui/textBlockPropertyGridComponent.js +34 -34
  245. package/tabs/propertyGrids/lockObject.d.ts +9 -9
  246. package/tabs/propertyGrids/lockObject.js +11 -11
@@ -1,50 +1,50 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as React from "react";
3
- import { DataStorage } from "@babylonjs/core/Misc/dataStorage.js";
4
- import downArrow from "./downArrow.svg";
5
- export class LineContainerComponent extends React.Component {
6
- constructor(props) {
7
- super(props);
8
- const initialState = DataStorage.ReadBoolean(this.props.title, !this.props.closed);
9
- this.state = { isExpanded: initialState, isHighlighted: false };
10
- }
11
- switchExpandedState() {
12
- const newState = !this.state.isExpanded;
13
- DataStorage.WriteBoolean(this.props.title, newState);
14
- this.setState({ isExpanded: newState });
15
- }
16
- renderHeader() {
17
- const className = this.state.isExpanded ? "collapse" : "collapse closed";
18
- return (_jsxs("div", { className: "header", onClick: () => this.switchExpandedState(), children: [_jsx("div", { className: "title", children: this.props.title }), _jsx("div", { className: className, children: _jsx("img", { className: "img", title: this.props.title, src: downArrow }) })] }));
19
- }
20
- componentDidMount() {
21
- if (!this.props.selection) {
22
- return;
23
- }
24
- if (this.props.selection.selectedLineContainerTitles.length === 0 && this.props.selection.selectedLineContainerTitlesNoFocus.length === 0) {
25
- return;
26
- }
27
- if (this.props.selection.selectedLineContainerTitles.indexOf(this.props.title) > -1) {
28
- setTimeout(() => {
29
- this.props.selection.selectedLineContainerTitles = [];
30
- });
31
- this.setState({ isExpanded: true, isHighlighted: true });
32
- window.setTimeout(() => {
33
- this.setState({ isHighlighted: false });
34
- }, 5000);
35
- }
36
- else if (this.props.selection.selectedLineContainerTitlesNoFocus.indexOf(this.props.title) > -1) {
37
- this.setState({ isExpanded: true, isHighlighted: false });
38
- }
39
- else {
40
- this.setState({ isExpanded: false });
41
- }
42
- }
43
- render() {
44
- if (!this.state.isExpanded) {
45
- return (_jsx("div", { className: "paneContainer", children: _jsx("div", { className: "paneContainer-content", children: this.renderHeader() }) }));
46
- }
47
- return (_jsxs("div", { className: "paneContainer", children: [_jsxs("div", { className: "paneContainer-content", children: [this.renderHeader(), _jsx("div", { className: "paneList", children: this.props.children })] }), _jsx("div", { className: "paneContainer-highlight-border" + (!this.state.isHighlighted ? " transparent" : "") })] }));
48
- }
49
- }
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { DataStorage } from "@babylonjs/core/Misc/dataStorage.js";
4
+ import downArrow from "./downArrow.svg";
5
+ export class LineContainerComponent extends React.Component {
6
+ constructor(props) {
7
+ super(props);
8
+ const initialState = DataStorage.ReadBoolean(this.props.title, !this.props.closed);
9
+ this.state = { isExpanded: initialState, isHighlighted: false };
10
+ }
11
+ switchExpandedState() {
12
+ const newState = !this.state.isExpanded;
13
+ DataStorage.WriteBoolean(this.props.title, newState);
14
+ this.setState({ isExpanded: newState });
15
+ }
16
+ renderHeader() {
17
+ const className = this.state.isExpanded ? "collapse" : "collapse closed";
18
+ return (_jsxs("div", { className: "header", onClick: () => this.switchExpandedState(), children: [_jsx("div", { className: "title", children: this.props.title }), _jsx("div", { className: className, children: _jsx("img", { className: "img", title: this.props.title, src: downArrow }) })] }));
19
+ }
20
+ componentDidMount() {
21
+ if (!this.props.selection) {
22
+ return;
23
+ }
24
+ if (this.props.selection.selectedLineContainerTitles.length === 0 && this.props.selection.selectedLineContainerTitlesNoFocus.length === 0) {
25
+ return;
26
+ }
27
+ if (this.props.selection.selectedLineContainerTitles.indexOf(this.props.title) > -1) {
28
+ setTimeout(() => {
29
+ this.props.selection.selectedLineContainerTitles = [];
30
+ });
31
+ this.setState({ isExpanded: true, isHighlighted: true });
32
+ window.setTimeout(() => {
33
+ this.setState({ isHighlighted: false });
34
+ }, 5000);
35
+ }
36
+ else if (this.props.selection.selectedLineContainerTitlesNoFocus.indexOf(this.props.title) > -1) {
37
+ this.setState({ isExpanded: true, isHighlighted: false });
38
+ }
39
+ else {
40
+ this.setState({ isExpanded: false });
41
+ }
42
+ }
43
+ render() {
44
+ if (!this.state.isExpanded) {
45
+ return (_jsx("div", { className: "paneContainer", children: _jsx("div", { className: "paneContainer-content", children: this.renderHeader() }) }));
46
+ }
47
+ return (_jsxs("div", { className: "paneContainer", children: [_jsxs("div", { className: "paneContainer-content", children: [this.renderHeader(), _jsx("div", { className: "paneList", children: this.props.children })] }), _jsx("div", { className: "paneContainer-highlight-border" + (!this.state.isHighlighted ? " transparent" : "") })] }));
48
+ }
49
+ }
50
50
  //# sourceMappingURL=lineContainerComponent.js.map
@@ -1,16 +1,16 @@
1
- import * as React from "react";
2
- import type { IconProp } from "@fortawesome/fontawesome-svg-core";
3
- interface ILinkButtonComponentProps {
4
- label: string;
5
- buttonLabel: string;
6
- url?: string;
7
- onClick: () => void;
8
- icon?: IconProp;
9
- onIconClick?: () => void;
10
- }
11
- export declare class LinkButtonComponent extends React.Component<ILinkButtonComponentProps> {
12
- constructor(props: ILinkButtonComponentProps);
13
- onLink(): void;
14
- render(): JSX.Element;
15
- }
16
- export {};
1
+ import * as React from "react";
2
+ import type { IconProp } from "@fortawesome/fontawesome-svg-core";
3
+ interface ILinkButtonComponentProps {
4
+ label: string;
5
+ buttonLabel: string;
6
+ url?: string;
7
+ onClick: () => void;
8
+ icon?: IconProp;
9
+ onIconClick?: () => void;
10
+ }
11
+ export declare class LinkButtonComponent extends React.Component<ILinkButtonComponentProps> {
12
+ constructor(props: ILinkButtonComponentProps);
13
+ onLink(): void;
14
+ render(): JSX.Element;
15
+ }
16
+ export {};
@@ -1,21 +1,21 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as React from "react";
3
- import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
4
- export class LinkButtonComponent extends React.Component {
5
- constructor(props) {
6
- super(props);
7
- }
8
- onLink() {
9
- if (this.props.url) {
10
- window.open(this.props.url, "_blank");
11
- }
12
- }
13
- render() {
14
- return (_jsxs("div", { className: "linkButtonLine", children: [_jsx("div", { className: "link", title: this.props.label, onClick: () => this.onLink(), children: this.props.label }), _jsx("div", { className: "link-button", children: _jsx("button", { onClick: () => this.props.onClick(), children: this.props.buttonLabel }) }), this.props.icon && (_jsx("div", { className: "link-icon hoverIcon", onClick: () => {
15
- if (this.props.onIconClick) {
16
- this.props.onIconClick();
17
- }
18
- }, children: _jsx(FontAwesomeIcon, { icon: this.props.icon }) }))] }));
19
- }
20
- }
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
4
+ export class LinkButtonComponent extends React.Component {
5
+ constructor(props) {
6
+ super(props);
7
+ }
8
+ onLink() {
9
+ if (this.props.url) {
10
+ window.open(this.props.url, "_blank");
11
+ }
12
+ }
13
+ render() {
14
+ return (_jsxs("div", { className: "linkButtonLine", children: [_jsx("div", { className: "link", title: this.props.label, onClick: () => this.onLink(), children: this.props.label }), _jsx("div", { className: "link-button", children: _jsx("button", { onClick: () => this.props.onClick(), children: this.props.buttonLabel }) }), this.props.icon && (_jsx("div", { className: "link-icon hoverIcon", onClick: () => {
15
+ if (this.props.onIconClick) {
16
+ this.props.onIconClick();
17
+ }
18
+ }, children: _jsx(FontAwesomeIcon, { icon: this.props.icon }) }))] }));
19
+ }
20
+ }
21
21
  //# sourceMappingURL=linkButtonComponent.js.map
@@ -1,36 +1,36 @@
1
- import * as React from "react";
2
- import type { Vector3, Vector4 } from "@babylonjs/core/Maths/math.vector.js";
3
- import { Matrix } from "@babylonjs/core/Maths/math.vector.js";
4
- import type { Observable } from "@babylonjs/core/Misc/observable.js";
5
- import type { PropertyChangedEvent } from "../propertyChangedEvent";
6
- import type { LockObject } from "../tabs/propertyGrids/lockObject";
7
- interface IMatrixLineComponentProps {
8
- label: string;
9
- target: any;
10
- propertyName: string;
11
- step?: number;
12
- onChange?: (newValue: Matrix) => void;
13
- onModeChange?: (mode: number) => void;
14
- onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
15
- mode?: number;
16
- lockObject: LockObject;
17
- }
18
- export declare class MatrixLineComponent extends React.Component<IMatrixLineComponentProps, {
19
- value: Matrix;
20
- mode: number;
21
- angle: number;
22
- }> {
23
- private _localChange;
24
- constructor(props: IMatrixLineComponentProps);
25
- shouldComponentUpdate(nextProps: IMatrixLineComponentProps, nextState: {
26
- value: Matrix;
27
- mode: number;
28
- angle: number;
29
- }): boolean;
30
- raiseOnPropertyChanged(previousValue: Vector3): void;
31
- updateMatrix(): void;
32
- updateRow(value: Vector4, row: number): void;
33
- updateBasedOnMode(value: number): void;
34
- render(): JSX.Element;
35
- }
36
- export {};
1
+ import * as React from "react";
2
+ import type { Vector3, Vector4 } from "@babylonjs/core/Maths/math.vector.js";
3
+ import { Matrix } from "@babylonjs/core/Maths/math.vector.js";
4
+ import type { Observable } from "@babylonjs/core/Misc/observable.js";
5
+ import type { PropertyChangedEvent } from "../propertyChangedEvent";
6
+ import type { LockObject } from "../tabs/propertyGrids/lockObject";
7
+ interface IMatrixLineComponentProps {
8
+ label: string;
9
+ target: any;
10
+ propertyName: string;
11
+ step?: number;
12
+ onChange?: (newValue: Matrix) => void;
13
+ onModeChange?: (mode: number) => void;
14
+ onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
15
+ mode?: number;
16
+ lockObject: LockObject;
17
+ }
18
+ export declare class MatrixLineComponent extends React.Component<IMatrixLineComponentProps, {
19
+ value: Matrix;
20
+ mode: number;
21
+ angle: number;
22
+ }> {
23
+ private _localChange;
24
+ constructor(props: IMatrixLineComponentProps);
25
+ shouldComponentUpdate(nextProps: IMatrixLineComponentProps, nextState: {
26
+ value: Matrix;
27
+ mode: number;
28
+ angle: number;
29
+ }): boolean;
30
+ raiseOnPropertyChanged(previousValue: Vector3): void;
31
+ updateMatrix(): void;
32
+ updateRow(value: Vector4, row: number): void;
33
+ updateBasedOnMode(value: number): void;
34
+ render(): JSX.Element;
35
+ }
36
+ export {};
@@ -1,103 +1,103 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as React from "react";
3
- import { Matrix, Quaternion } from "@babylonjs/core/Maths/math.vector.js";
4
- import { Vector4LineComponent } from "./vector4LineComponent.js";
5
- import { OptionsLineComponent } from "./optionsLineComponent.js";
6
- import { SliderLineComponent } from "./sliderLineComponent.js";
7
- export class MatrixLineComponent extends React.Component {
8
- constructor(props) {
9
- super(props);
10
- this._localChange = false;
11
- const matrix = this.props.target[this.props.propertyName].clone();
12
- let angle = 0;
13
- if (this.props.mode) {
14
- const quat = new Quaternion();
15
- matrix.decompose(undefined, quat);
16
- const euler = quat.toEulerAngles();
17
- switch (this.props.mode) {
18
- case 1:
19
- angle = euler.x;
20
- break;
21
- case 2:
22
- angle = euler.y;
23
- break;
24
- case 3:
25
- angle = euler.z;
26
- break;
27
- }
28
- }
29
- this.state = { value: matrix, mode: this.props.mode || 0, angle: angle };
30
- }
31
- shouldComponentUpdate(nextProps, nextState) {
32
- const nextPropsValue = nextProps.target[nextProps.propertyName];
33
- if (!nextPropsValue.equals(nextState.value) || this._localChange) {
34
- nextState.value = nextPropsValue.clone();
35
- this._localChange = false;
36
- return true;
37
- }
38
- return nextState.mode !== this.state.mode || nextState.angle !== this.state.angle;
39
- }
40
- raiseOnPropertyChanged(previousValue) {
41
- if (this.props.onChange) {
42
- this.props.onChange(this.state.value);
43
- }
44
- if (!this.props.onPropertyChangedObservable) {
45
- return;
46
- }
47
- this.props.onPropertyChangedObservable.notifyObservers({
48
- object: this.props.target,
49
- property: this.props.propertyName,
50
- value: this.state.value,
51
- initialValue: previousValue,
52
- });
53
- }
54
- updateMatrix() {
55
- const store = this.props.target[this.props.propertyName].clone();
56
- this.props.target[this.props.propertyName] = this.state.value;
57
- this.setState({ value: store });
58
- this.raiseOnPropertyChanged(store);
59
- }
60
- updateRow(value, row) {
61
- this._localChange = true;
62
- this.state.value.setRow(row, value);
63
- this.updateMatrix();
64
- }
65
- updateBasedOnMode(value) {
66
- switch (this.state.mode) {
67
- case 1: {
68
- Matrix.RotationXToRef(this.state.angle, this.state.value);
69
- break;
70
- }
71
- case 2: {
72
- Matrix.RotationYToRef(this.state.angle, this.state.value);
73
- break;
74
- }
75
- case 3: {
76
- Matrix.RotationZToRef(this.state.angle, this.state.value);
77
- break;
78
- }
79
- }
80
- this.updateMatrix();
81
- this.setState({ angle: value });
82
- }
83
- render() {
84
- const modeOptions = [
85
- { label: "User-defined", value: 0 },
86
- { label: "Rotation over X axis", value: 1 },
87
- { label: "Rotation over Y axis", value: 2 },
88
- { label: "Rotation over Z axis", value: 3 },
89
- ];
90
- return (_jsxs("div", { className: "vector3Line", children: [_jsx("div", { className: "firstLine", children: _jsx("div", { className: "label", title: this.props.label, children: this.props.label }) }), _jsx("div", { className: "secondLine", children: _jsx(OptionsLineComponent, { label: "Mode", className: "no-right-margin", options: modeOptions, target: this, noDirectUpdate: true, propertyName: "", extractValue: () => {
91
- return this.state.mode;
92
- }, onSelect: (value) => {
93
- this.props.target[this.props.propertyName] = Matrix.Identity();
94
- Matrix.IdentityToRef(this.state.value);
95
- this.setState({ mode: value, angle: 0 });
96
- this.updateMatrix();
97
- if (this.props.onModeChange) {
98
- this.props.onModeChange(value);
99
- }
100
- } }) }), this.state.mode === 0 && (_jsxs("div", { className: "secondLine", children: [_jsx(Vector4LineComponent, { lockObject: this.props.lockObject, label: "Row #0", value: this.state.value.getRow(0), onChange: (value) => this.updateRow(value, 0) }), _jsx(Vector4LineComponent, { lockObject: this.props.lockObject, label: "Row #1", value: this.state.value.getRow(1), onChange: (value) => this.updateRow(value, 1) }), _jsx(Vector4LineComponent, { lockObject: this.props.lockObject, label: "Row #2", value: this.state.value.getRow(2), onChange: (value) => this.updateRow(value, 2) }), _jsx(Vector4LineComponent, { lockObject: this.props.lockObject, label: "Row #3", value: this.state.value.getRow(3), onChange: (value) => this.updateRow(value, 3) })] })), this.state.mode !== 0 && (_jsx("div", { className: "secondLine", children: _jsx(SliderLineComponent, { label: "Angle", lockObject: this.props.lockObject, minimum: 0, maximum: 2 * Math.PI, useEuler: true, step: 0.1, directValue: this.state.angle, onChange: (value) => this.updateBasedOnMode(value) }) }))] }));
101
- }
102
- }
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { Matrix, Quaternion } from "@babylonjs/core/Maths/math.vector.js";
4
+ import { Vector4LineComponent } from "./vector4LineComponent.js";
5
+ import { OptionsLineComponent } from "./optionsLineComponent.js";
6
+ import { SliderLineComponent } from "./sliderLineComponent.js";
7
+ export class MatrixLineComponent extends React.Component {
8
+ constructor(props) {
9
+ super(props);
10
+ this._localChange = false;
11
+ const matrix = this.props.target[this.props.propertyName].clone();
12
+ let angle = 0;
13
+ if (this.props.mode) {
14
+ const quat = new Quaternion();
15
+ matrix.decompose(undefined, quat);
16
+ const euler = quat.toEulerAngles();
17
+ switch (this.props.mode) {
18
+ case 1:
19
+ angle = euler.x;
20
+ break;
21
+ case 2:
22
+ angle = euler.y;
23
+ break;
24
+ case 3:
25
+ angle = euler.z;
26
+ break;
27
+ }
28
+ }
29
+ this.state = { value: matrix, mode: this.props.mode || 0, angle: angle };
30
+ }
31
+ shouldComponentUpdate(nextProps, nextState) {
32
+ const nextPropsValue = nextProps.target[nextProps.propertyName];
33
+ if (!nextPropsValue.equals(nextState.value) || this._localChange) {
34
+ nextState.value = nextPropsValue.clone();
35
+ this._localChange = false;
36
+ return true;
37
+ }
38
+ return nextState.mode !== this.state.mode || nextState.angle !== this.state.angle;
39
+ }
40
+ raiseOnPropertyChanged(previousValue) {
41
+ if (this.props.onChange) {
42
+ this.props.onChange(this.state.value);
43
+ }
44
+ if (!this.props.onPropertyChangedObservable) {
45
+ return;
46
+ }
47
+ this.props.onPropertyChangedObservable.notifyObservers({
48
+ object: this.props.target,
49
+ property: this.props.propertyName,
50
+ value: this.state.value,
51
+ initialValue: previousValue,
52
+ });
53
+ }
54
+ updateMatrix() {
55
+ const store = this.props.target[this.props.propertyName].clone();
56
+ this.props.target[this.props.propertyName] = this.state.value;
57
+ this.setState({ value: store });
58
+ this.raiseOnPropertyChanged(store);
59
+ }
60
+ updateRow(value, row) {
61
+ this._localChange = true;
62
+ this.state.value.setRow(row, value);
63
+ this.updateMatrix();
64
+ }
65
+ updateBasedOnMode(value) {
66
+ switch (this.state.mode) {
67
+ case 1: {
68
+ Matrix.RotationXToRef(this.state.angle, this.state.value);
69
+ break;
70
+ }
71
+ case 2: {
72
+ Matrix.RotationYToRef(this.state.angle, this.state.value);
73
+ break;
74
+ }
75
+ case 3: {
76
+ Matrix.RotationZToRef(this.state.angle, this.state.value);
77
+ break;
78
+ }
79
+ }
80
+ this.updateMatrix();
81
+ this.setState({ angle: value });
82
+ }
83
+ render() {
84
+ const modeOptions = [
85
+ { label: "User-defined", value: 0 },
86
+ { label: "Rotation over X axis", value: 1 },
87
+ { label: "Rotation over Y axis", value: 2 },
88
+ { label: "Rotation over Z axis", value: 3 },
89
+ ];
90
+ return (_jsxs("div", { className: "vector3Line", children: [_jsx("div", { className: "firstLine", children: _jsx("div", { className: "label", title: this.props.label, children: this.props.label }) }), _jsx("div", { className: "secondLine", children: _jsx(OptionsLineComponent, { label: "Mode", className: "no-right-margin", options: modeOptions, target: this, noDirectUpdate: true, propertyName: "", extractValue: () => {
91
+ return this.state.mode;
92
+ }, onSelect: (value) => {
93
+ this.props.target[this.props.propertyName] = Matrix.Identity();
94
+ Matrix.IdentityToRef(this.state.value);
95
+ this.setState({ mode: value, angle: 0 });
96
+ this.updateMatrix();
97
+ if (this.props.onModeChange) {
98
+ this.props.onModeChange(value);
99
+ }
100
+ } }) }), this.state.mode === 0 && (_jsxs("div", { className: "secondLine", children: [_jsx(Vector4LineComponent, { lockObject: this.props.lockObject, label: "Row #0", value: this.state.value.getRow(0), onChange: (value) => this.updateRow(value, 0) }), _jsx(Vector4LineComponent, { lockObject: this.props.lockObject, label: "Row #1", value: this.state.value.getRow(1), onChange: (value) => this.updateRow(value, 1) }), _jsx(Vector4LineComponent, { lockObject: this.props.lockObject, label: "Row #2", value: this.state.value.getRow(2), onChange: (value) => this.updateRow(value, 2) }), _jsx(Vector4LineComponent, { lockObject: this.props.lockObject, label: "Row #3", value: this.state.value.getRow(3), onChange: (value) => this.updateRow(value, 3) })] })), this.state.mode !== 0 && (_jsx("div", { className: "secondLine", children: _jsx(SliderLineComponent, { label: "Angle", lockObject: this.props.lockObject, minimum: 0, maximum: 2 * Math.PI, useEuler: true, step: 0.1, directValue: this.state.angle, onChange: (value) => this.updateBasedOnMode(value) }) }))] }));
101
+ }
102
+ }
103
103
  //# sourceMappingURL=matrixLineComponent.js.map
@@ -1,12 +1,12 @@
1
- import * as React from "react";
2
- import type { IconProp } from "@fortawesome/fontawesome-svg-core";
3
- interface IMessageLineComponentProps {
4
- text: string;
5
- color?: string;
6
- icon?: IconProp;
7
- }
8
- export declare class MessageLineComponent extends React.Component<IMessageLineComponentProps> {
9
- constructor(props: IMessageLineComponentProps);
10
- render(): JSX.Element;
11
- }
12
- export {};
1
+ import * as React from "react";
2
+ import type { IconProp } from "@fortawesome/fontawesome-svg-core";
3
+ interface IMessageLineComponentProps {
4
+ text: string;
5
+ color?: string;
6
+ icon?: IconProp;
7
+ }
8
+ export declare class MessageLineComponent extends React.Component<IMessageLineComponentProps> {
9
+ constructor(props: IMessageLineComponentProps);
10
+ render(): JSX.Element;
11
+ }
12
+ export {};
@@ -1,15 +1,15 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import * as React from "react";
3
- import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
4
- export class MessageLineComponent extends React.Component {
5
- constructor(props) {
6
- super(props);
7
- }
8
- render() {
9
- if (this.props.icon) {
10
- return (_jsxs("div", { className: "iconMessageLine", children: [_jsx("div", { className: "icon", style: { color: this.props.color ? this.props.color : "" }, children: _jsx(FontAwesomeIcon, { icon: this.props.icon }) }), _jsx("div", { className: "value", title: this.props.text, children: this.props.text })] }));
11
- }
12
- return (_jsx("div", { className: "messageLine", children: _jsx("div", { className: "value", title: this.props.text, style: { color: this.props.color ? this.props.color : "" }, children: this.props.text }) }));
13
- }
14
- }
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import * as React from "react";
3
+ import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
4
+ export class MessageLineComponent extends React.Component {
5
+ constructor(props) {
6
+ super(props);
7
+ }
8
+ render() {
9
+ if (this.props.icon) {
10
+ return (_jsxs("div", { className: "iconMessageLine", children: [_jsx("div", { className: "icon", style: { color: this.props.color ? this.props.color : "" }, children: _jsx(FontAwesomeIcon, { icon: this.props.icon }) }), _jsx("div", { className: "value", title: this.props.text, children: this.props.text })] }));
11
+ }
12
+ return (_jsx("div", { className: "messageLine", children: _jsx("div", { className: "value", title: this.props.text, style: { color: this.props.color ? this.props.color : "" }, children: this.props.text }) }));
13
+ }
14
+ }
15
15
  //# sourceMappingURL=messageLineComponent.js.map
@@ -1,31 +1,31 @@
1
- import * as React from "react";
2
- import type { LockObject } from "../tabs/propertyGrids/lockObject";
3
- interface INumericInputComponentProps {
4
- label: string;
5
- value: number;
6
- step?: number;
7
- onChange: (value: number) => void;
8
- precision?: number;
9
- icon?: string;
10
- iconLabel?: string;
11
- lockObject: LockObject;
12
- }
13
- export declare class NumericInputComponent extends React.Component<INumericInputComponentProps, {
14
- value: string;
15
- }> {
16
- static defaultProps: {
17
- step: number;
18
- };
19
- private _localChange;
20
- constructor(props: INumericInputComponentProps);
21
- componentWillUnmount(): void;
22
- shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
23
- value: string;
24
- }): boolean;
25
- updateValue(valueString: string): void;
26
- onBlur(): void;
27
- incrementValue(amount: number): void;
28
- onKeyDown(evt: React.KeyboardEvent<HTMLInputElement>): void;
29
- render(): JSX.Element;
30
- }
31
- export {};
1
+ import * as React from "react";
2
+ import type { LockObject } from "../tabs/propertyGrids/lockObject";
3
+ interface INumericInputComponentProps {
4
+ label: string;
5
+ value: number;
6
+ step?: number;
7
+ onChange: (value: number) => void;
8
+ precision?: number;
9
+ icon?: string;
10
+ iconLabel?: string;
11
+ lockObject: LockObject;
12
+ }
13
+ export declare class NumericInputComponent extends React.Component<INumericInputComponentProps, {
14
+ value: string;
15
+ }> {
16
+ static defaultProps: {
17
+ step: number;
18
+ };
19
+ private _localChange;
20
+ constructor(props: INumericInputComponentProps);
21
+ componentWillUnmount(): void;
22
+ shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
23
+ value: string;
24
+ }): boolean;
25
+ updateValue(valueString: string): void;
26
+ onBlur(): void;
27
+ incrementValue(amount: number): void;
28
+ onKeyDown(evt: React.KeyboardEvent<HTMLInputElement>): void;
29
+ render(): JSX.Element;
30
+ }
31
+ export {};