@babylonjs/node-editor 5.31.2 → 5.32.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.
|
@@ -63131,13 +63131,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
63131
63131
|
|
|
63132
63132
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
63133
63133
|
const Null_Value = Number.MAX_SAFE_INTEGER;
|
|
63134
|
-
const DEFAULT_FALLBACK_VALUE = -1;
|
|
63135
63134
|
class OptionsLineComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
|
|
63136
63135
|
constructor(props) {
|
|
63137
|
-
// Initialize default props
|
|
63138
63136
|
super(props);
|
|
63139
63137
|
this._localChange = false;
|
|
63140
|
-
this.state = { value: this._remapValueIn(this._getValue(props))
|
|
63138
|
+
this.state = { value: this._remapValueIn(this._getValue(props)) };
|
|
63141
63139
|
}
|
|
63142
63140
|
_remapValueIn(value) {
|
|
63143
63141
|
return this.props.allowNullValue && value === null ? Null_Value : value;
|
|
@@ -63156,14 +63154,11 @@ class OptionsLineComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
|
|
|
63156
63154
|
this._localChange = false;
|
|
63157
63155
|
return true;
|
|
63158
63156
|
}
|
|
63159
|
-
const newValue = this._remapValueIn(nextProps.extractValue ? nextProps.extractValue(
|
|
63157
|
+
const newValue = this._remapValueIn(nextProps.extractValue ? nextProps.extractValue(this.props.target) : nextProps.target[nextProps.propertyName]);
|
|
63160
63158
|
if (newValue != null && newValue !== nextState.value) {
|
|
63161
63159
|
nextState.value = newValue;
|
|
63162
63160
|
return true;
|
|
63163
63161
|
}
|
|
63164
|
-
if (this.props.options !== nextProps.options) {
|
|
63165
|
-
return true;
|
|
63166
|
-
}
|
|
63167
63162
|
return false;
|
|
63168
63163
|
}
|
|
63169
63164
|
raiseOnPropertyChanged(newValue, previousValue) {
|
|
@@ -63182,65 +63177,23 @@ class OptionsLineComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
|
|
|
63182
63177
|
this.setState({ value: value });
|
|
63183
63178
|
}
|
|
63184
63179
|
updateValue(valueString) {
|
|
63185
|
-
|
|
63186
|
-
if (isNaN(Number(value))) {
|
|
63187
|
-
for (let i = 0; i < this.props.options.length; i++) {
|
|
63188
|
-
if (this.props.options.at(i)?.label === valueString) {
|
|
63189
|
-
value = Number(this.props.options.at(i)?.value);
|
|
63190
|
-
}
|
|
63191
|
-
}
|
|
63192
|
-
}
|
|
63193
|
-
if (value === 0 && this.props.fromFontDropdown) {
|
|
63194
|
-
this.setState({ addCustom: true });
|
|
63195
|
-
}
|
|
63180
|
+
const value = this.props.valuesAreStrings ? valueString : parseInt(valueString);
|
|
63196
63181
|
this._localChange = true;
|
|
63197
63182
|
const store = this.props.extractValue ? this.props.extractValue(this.props.target) : this.props.target[this.props.propertyName];
|
|
63198
63183
|
if (!this.props.noDirectUpdate) {
|
|
63199
63184
|
this.props.target[this.props.propertyName] = this._remapValueOut(value);
|
|
63200
63185
|
}
|
|
63201
|
-
|
|
63202
|
-
if (
|
|
63203
|
-
this.
|
|
63204
|
-
if (this.props.onSelect) {
|
|
63205
|
-
this.props.onSelect(value);
|
|
63206
|
-
}
|
|
63207
|
-
//selecting 'custom font' from font dropdown
|
|
63208
|
-
}
|
|
63209
|
-
else if (this.props.fromFontDropdown) {
|
|
63210
|
-
if (this.props.onSelect) {
|
|
63211
|
-
this.props.onSelect(this.state.value);
|
|
63212
|
-
}
|
|
63213
|
-
}
|
|
63214
|
-
//selecting from a dropdown that's not font dropdown
|
|
63215
|
-
else {
|
|
63216
|
-
this.setState({ value: value });
|
|
63217
|
-
if (this.props.onSelect) {
|
|
63218
|
-
this.props.onSelect(value);
|
|
63219
|
-
}
|
|
63186
|
+
this.setState({ value: value });
|
|
63187
|
+
if (this.props.onSelect) {
|
|
63188
|
+
this.props.onSelect(value);
|
|
63220
63189
|
}
|
|
63221
63190
|
const newValue = this.props.extractValue ? this.props.extractValue(this.props.target) : this.props.target[this.props.propertyName];
|
|
63222
63191
|
this.raiseOnPropertyChanged(newValue, store);
|
|
63223
63192
|
}
|
|
63224
|
-
updateCustomValue() {
|
|
63225
|
-
this.setState({ addCustom: false });
|
|
63226
|
-
}
|
|
63227
63193
|
render() {
|
|
63228
|
-
|
|
63229
|
-
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { className: `listLine ${this.props.className ?? ""}`, children: [this.props.icon && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("img", { src: this.props.icon, title: this.props.iconLabel, alt: this.props.iconLabel, color: "black", className: "icon" }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { className: "label", title: this.props.label, children: this.props.label }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { className: "options", children: this.state.addCustom ? ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("input", { type: "text", placeholder: "Enter a custom font here", onKeyDown: (event) => {
|
|
63230
|
-
event.key === "Enter" && this.props.addVal != undefined
|
|
63231
|
-
? (this.props.addVal({ label: event.target.value, value: this.props.options.length + 1 }, Number(this.state.value)),
|
|
63232
|
-
this.updateCustomValue(),
|
|
63233
|
-
this.forceUpdate())
|
|
63234
|
-
: null;
|
|
63235
|
-
}, onBlur: (event) => {
|
|
63236
|
-
this.props.addVal != undefined
|
|
63237
|
-
? (this.props.addVal({ label: event.target.value, value: this.props.options.length + 1 }, Number(this.state.value)),
|
|
63238
|
-
this.updateCustomValue(),
|
|
63239
|
-
this.forceUpdate())
|
|
63240
|
-
: null;
|
|
63241
|
-
} })) : ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("select", { onChange: (evt) => this.updateValue(evt.target.value), value: this.state.value === null || this.state.value === undefined ? fallback : this.state.value, children: this.props.options.map((option, i) => {
|
|
63194
|
+
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { className: "listLine" + (this.props.className ? " " + this.props.className : ""), children: [this.props.icon && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("img", { src: this.props.icon, title: this.props.iconLabel, alt: this.props.iconLabel, color: "black", className: "icon" }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { className: "label", title: this.props.label, children: this.props.label }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("div", { className: "options", children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("select", { onChange: (evt) => this.updateValue(evt.target.value), value: this.state.value ?? "", children: this.props.options.map((option, i) => {
|
|
63242
63195
|
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)("option", { selected: option.selected, value: option.value, title: option.label, children: option.label }, option.label + i));
|
|
63243
|
-
}) })
|
|
63196
|
+
}) }) })] }));
|
|
63244
63197
|
}
|
|
63245
63198
|
}
|
|
63246
63199
|
|
|
@@ -72091,34 +72044,34 @@ class GenericPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Com
|
|
|
72091
72044
|
}
|
|
72092
72045
|
switch (type) {
|
|
72093
72046
|
case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Boolean: {
|
|
72094
|
-
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_3__.CheckBoxLineComponent, { label: displayName, target: block, propertyName: propertyName, onValueChanged: () => this.forceRebuild(options.notifiers) }));
|
|
72047
|
+
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_3__.CheckBoxLineComponent, { label: displayName, target: block, propertyName: propertyName, onValueChanged: () => this.forceRebuild(options.notifiers) }, `checkBox-${propertyName}`));
|
|
72095
72048
|
break;
|
|
72096
72049
|
}
|
|
72097
72050
|
case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Float: {
|
|
72098
72051
|
const cantDisplaySlider = isNaN(options.min) || isNaN(options.max) || options.min === options.max;
|
|
72099
72052
|
if (cantDisplaySlider) {
|
|
72100
|
-
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(options.notifiers) }));
|
|
72053
|
+
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(options.notifiers) }, `float-${propertyName}`));
|
|
72101
72054
|
}
|
|
72102
72055
|
else {
|
|
72103
|
-
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_sliderLineComponent__WEBPACK_IMPORTED_MODULE_10__.SliderLineComponent, { lockObject: this.props.stateManager.lockObject, label: displayName, target: block, propertyName: propertyName, step: Math.abs(options.max - options.min) / 100.0, minimum: Math.min(options.min, options.max), maximum: options.max, onChange: () => this.forceRebuild(options.notifiers) }));
|
|
72056
|
+
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_sliderLineComponent__WEBPACK_IMPORTED_MODULE_10__.SliderLineComponent, { lockObject: this.props.stateManager.lockObject, label: displayName, target: block, propertyName: propertyName, step: Math.abs(options.max - options.min) / 100.0, minimum: Math.min(options.min, options.max), maximum: options.max, onChange: () => this.forceRebuild(options.notifiers) }, `slider-${propertyName}`));
|
|
72104
72057
|
}
|
|
72105
72058
|
break;
|
|
72106
72059
|
}
|
|
72107
72060
|
case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Int: {
|
|
72108
|
-
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, digits: 0, step: "1", isInteger: true, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(options.notifiers) }));
|
|
72061
|
+
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, digits: 0, step: "1", isInteger: true, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(options.notifiers) }, `int-${propertyName}`));
|
|
72109
72062
|
break;
|
|
72110
72063
|
}
|
|
72111
72064
|
case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.Vector2: {
|
|
72112
|
-
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_vector2LineComponent__WEBPACK_IMPORTED_MODULE_6__.Vector2LineComponent, { lockObject: this.props.stateManager.lockObject, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(options.notifiers) }));
|
|
72065
|
+
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_vector2LineComponent__WEBPACK_IMPORTED_MODULE_6__.Vector2LineComponent, { lockObject: this.props.stateManager.lockObject, label: displayName, propertyName: propertyName, target: block, onChange: () => this.forceRebuild(options.notifiers) }, `vector2-${propertyName}`));
|
|
72113
72066
|
break;
|
|
72114
72067
|
}
|
|
72115
72068
|
case core_Materials_Node_nodeMaterialDecorator__WEBPACK_IMPORTED_MODULE_4__.PropertyTypeForEdition.List: {
|
|
72116
|
-
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_7__.OptionsLineComponent, { label: displayName, options: options.options, target: block, propertyName: propertyName, onSelect: () => this.forceRebuild(options.notifiers) }));
|
|
72069
|
+
components.push((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_7__.OptionsLineComponent, { label: displayName, options: options.options, target: block, propertyName: propertyName, onSelect: () => this.forceRebuild(options.notifiers) }, `options-${propertyName}`));
|
|
72117
72070
|
break;
|
|
72118
72071
|
}
|
|
72119
72072
|
}
|
|
72120
72073
|
}
|
|
72121
|
-
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: groups.map((group) => ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: group, children: componentList[group] }))) }));
|
|
72074
|
+
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: groups.map((group) => ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: group, children: componentList[group] }, `group-${group}`))) }));
|
|
72122
72075
|
}
|
|
72123
72076
|
}
|
|
72124
72077
|
|