@lv-x-software-house/x_view 1.2.2-dev.8 → 1.2.2-dev.9
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/dist/index.js +41 -15
- package/dist/index.mjs +42 -16
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -6803,11 +6803,11 @@ function InSceneCreationForm({
|
|
|
6803
6803
|
onMentionClick,
|
|
6804
6804
|
sourceTypes,
|
|
6805
6805
|
onUploadFile,
|
|
6806
|
-
// Props do Dataset adicionadas
|
|
6807
6806
|
availableDatasets = [],
|
|
6808
6807
|
sourceNodeDatasetId,
|
|
6809
6808
|
viewType
|
|
6810
6809
|
}) {
|
|
6810
|
+
var _a;
|
|
6811
6811
|
const [name, setName] = (0, import_react13.useState)("");
|
|
6812
6812
|
const [types, setTypes] = (0, import_react13.useState)([]);
|
|
6813
6813
|
const [typeInput, setTypeInput] = (0, import_react13.useState)("");
|
|
@@ -6822,9 +6822,24 @@ function InSceneCreationForm({
|
|
|
6822
6822
|
const [useImageAsTexture, setUseImageAsTexture] = (0, import_react13.useState)(false);
|
|
6823
6823
|
const [selectedImageUrl, setSelectedImageUrl] = (0, import_react13.useState)(null);
|
|
6824
6824
|
const [targetDatasetId, setTargetDatasetId] = (0, import_react13.useState)(sourceNodeDatasetId || "");
|
|
6825
|
+
const [isDatasetDropdownOpen, setIsDatasetDropdownOpen] = (0, import_react13.useState)(false);
|
|
6826
|
+
const datasetDropdownRef = (0, import_react13.useRef)(null);
|
|
6825
6827
|
(0, import_react13.useEffect)(() => {
|
|
6826
6828
|
if (sourceNodeDatasetId) setTargetDatasetId(sourceNodeDatasetId);
|
|
6827
6829
|
}, [sourceNodeDatasetId]);
|
|
6830
|
+
(0, import_react13.useEffect)(() => {
|
|
6831
|
+
function handleClickOutside(event) {
|
|
6832
|
+
if (datasetDropdownRef.current && !datasetDropdownRef.current.contains(event.target)) {
|
|
6833
|
+
setIsDatasetDropdownOpen(false);
|
|
6834
|
+
}
|
|
6835
|
+
}
|
|
6836
|
+
if (isDatasetDropdownOpen) {
|
|
6837
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
6838
|
+
}
|
|
6839
|
+
return () => {
|
|
6840
|
+
document.removeEventListener("mousedown", handleClickOutside);
|
|
6841
|
+
};
|
|
6842
|
+
}, [isDatasetDropdownOpen]);
|
|
6828
6843
|
const propsEndRef = (0, import_react13.useRef)(null);
|
|
6829
6844
|
const hasImages = customProps.some((p) => p.type === "images" && Array.isArray(p.value) && p.value.length > 0 && p.value.some((img) => img.value));
|
|
6830
6845
|
(0, import_react13.useEffect)(() => {
|
|
@@ -6870,8 +6885,8 @@ function InSceneCreationForm({
|
|
|
6870
6885
|
const newProp = createNewCustomProperty(customProps);
|
|
6871
6886
|
setCustomProps([...customProps, newProp]);
|
|
6872
6887
|
setTimeout(() => {
|
|
6873
|
-
var
|
|
6874
|
-
(
|
|
6888
|
+
var _a2;
|
|
6889
|
+
(_a2 = propsEndRef.current) == null ? void 0 : _a2.scrollIntoView({ behavior: "smooth", block: "center" });
|
|
6875
6890
|
}, 100);
|
|
6876
6891
|
};
|
|
6877
6892
|
const handleRemoveProp = (index) => setCustomProps(customProps.filter((_, i) => i !== index));
|
|
@@ -6904,12 +6919,12 @@ function InSceneCreationForm({
|
|
|
6904
6919
|
onSizeChange == null ? void 0 : onSizeChange(newSize);
|
|
6905
6920
|
};
|
|
6906
6921
|
const handleToggleImageMode = () => {
|
|
6907
|
-
var
|
|
6922
|
+
var _a2, _b;
|
|
6908
6923
|
const newValue = !useImageAsTexture;
|
|
6909
6924
|
setUseImageAsTexture(newValue);
|
|
6910
6925
|
if (newValue) {
|
|
6911
6926
|
const firstImageProp = customProps.find((p) => p.type === "images");
|
|
6912
|
-
if (firstImageProp && ((_b = (
|
|
6927
|
+
if (firstImageProp && ((_b = (_a2 = firstImageProp.value) == null ? void 0 : _a2[0]) == null ? void 0 : _b.value)) {
|
|
6913
6928
|
const url = firstImageProp.value[0].value;
|
|
6914
6929
|
setSelectedImageUrl(url);
|
|
6915
6930
|
onImageChange == null ? void 0 : onImageChange(true, url);
|
|
@@ -6943,7 +6958,6 @@ function InSceneCreationForm({
|
|
|
6943
6958
|
useImageAsTexture,
|
|
6944
6959
|
textureImageUrl: useImageAsTexture ? selectedImageUrl : null,
|
|
6945
6960
|
targetDatasetId,
|
|
6946
|
-
// Alvo do Dataset adicionado no onSave
|
|
6947
6961
|
...additionalData
|
|
6948
6962
|
});
|
|
6949
6963
|
};
|
|
@@ -6964,6 +6978,7 @@ function InSceneCreationForm({
|
|
|
6964
6978
|
onOpenImageViewer([{ name: name2 || "Imagem", value: url }], 0);
|
|
6965
6979
|
}
|
|
6966
6980
|
};
|
|
6981
|
+
const selectedDatasetName = ((_a = availableDatasets.find((ds) => ds.id === targetDatasetId)) == null ? void 0 : _a.name) || "Selecione um Dataset...";
|
|
6967
6982
|
return /* @__PURE__ */ import_react13.default.createElement(import_react13.default.Fragment, null, /* @__PURE__ */ import_react13.default.createElement(
|
|
6968
6983
|
"div",
|
|
6969
6984
|
{
|
|
@@ -7021,15 +7036,27 @@ function InSceneCreationForm({
|
|
|
7021
7036
|
}
|
|
7022
7037
|
},
|
|
7023
7038
|
suggestedType
|
|
7024
|
-
))))), /* @__PURE__ */ import_react13.default.createElement("div", { className: "space-y-1.5" }, /* @__PURE__ */ import_react13.default.createElement("label", { className: "text-xs text-slate-300" }, "Nome do Node"), /* @__PURE__ */ import_react13.default.createElement("input", { required: true, type: "text", placeholder: "Ex.: Cliente XPTO", value: name, onChange: handleNameInputChange, className: "w-full bg-slate-800/70 p-2.5 text-sm rounded-lg border border-white/10 focus:outline-none focus:ring-2 focus:ring-indigo-400/60" })), viewType === "view" && availableDatasets.length > 0 && /* @__PURE__ */ import_react13.default.createElement("div", { className: "space-y-1.5" }, /* @__PURE__ */ import_react13.default.createElement("label", { className: "text-xs text-slate-300" }, "Criar Node no Dataset:"), /* @__PURE__ */ import_react13.default.createElement(
|
|
7025
|
-
"
|
|
7039
|
+
))))), /* @__PURE__ */ import_react13.default.createElement("div", { className: "space-y-1.5" }, /* @__PURE__ */ import_react13.default.createElement("label", { className: "text-xs text-slate-300" }, "Nome do Node"), /* @__PURE__ */ import_react13.default.createElement("input", { required: true, type: "text", placeholder: "Ex.: Cliente XPTO", value: name, onChange: handleNameInputChange, className: "w-full bg-slate-800/70 p-2.5 text-sm rounded-lg border border-white/10 focus:outline-none focus:ring-2 focus:ring-indigo-400/60" })), viewType === "view" && availableDatasets.length > 0 && /* @__PURE__ */ import_react13.default.createElement("div", { className: "space-y-1.5 relative", ref: datasetDropdownRef }, /* @__PURE__ */ import_react13.default.createElement("label", { className: "text-xs text-slate-300" }, "Criar Node no Dataset:"), /* @__PURE__ */ import_react13.default.createElement(
|
|
7040
|
+
"button",
|
|
7026
7041
|
{
|
|
7027
|
-
|
|
7028
|
-
|
|
7029
|
-
className: "w-full bg-slate-800/70 p-2.5 text-sm rounded-lg border border-white/10 focus:outline-none focus:ring-2 focus:ring-indigo-400/60 text-slate-200
|
|
7042
|
+
type: "button",
|
|
7043
|
+
onClick: () => setIsDatasetDropdownOpen(!isDatasetDropdownOpen),
|
|
7044
|
+
className: "w-full flex items-center justify-between bg-slate-800/70 p-2.5 text-sm rounded-lg border border-white/10 focus:outline-none focus:ring-2 focus:ring-indigo-400/60 hover:bg-slate-700/70 transition-colors text-slate-200 text-left"
|
|
7045
|
+
},
|
|
7046
|
+
/* @__PURE__ */ import_react13.default.createElement("span", { className: "truncate pr-2" }, selectedDatasetName),
|
|
7047
|
+
/* @__PURE__ */ import_react13.default.createElement(import_fi12.FiChevronDown, { className: `flex-shrink-0 text-slate-400 transition-transform ${isDatasetDropdownOpen ? "rotate-180" : ""}` })
|
|
7048
|
+
), isDatasetDropdownOpen && /* @__PURE__ */ import_react13.default.createElement("ul", { className: "custom-scrollbar absolute top-[66px] left-0 z-20 w-full max-h-48 overflow-y-auto rounded-lg bg-slate-800 border border-white/10 shadow-xl py-1" }, availableDatasets.map((ds) => /* @__PURE__ */ import_react13.default.createElement(
|
|
7049
|
+
"li",
|
|
7050
|
+
{
|
|
7051
|
+
key: ds.id,
|
|
7052
|
+
onClick: () => {
|
|
7053
|
+
setTargetDatasetId(ds.id);
|
|
7054
|
+
setIsDatasetDropdownOpen(false);
|
|
7055
|
+
},
|
|
7056
|
+
className: `px-3 py-2 text-sm cursor-pointer transition-colors ${targetDatasetId === ds.id ? "bg-indigo-600/40 text-indigo-200 font-medium" : "text-slate-300 hover:bg-white/5"}`
|
|
7030
7057
|
},
|
|
7031
|
-
|
|
7032
|
-
)), /* @__PURE__ */ import_react13.default.createElement("div", { className: "space-y-1.5 relative" }, /* @__PURE__ */ import_react13.default.createElement("label", { className: "text-xs text-slate-300" }, "Descri\xE7\xE3o (Opcional)"), /* @__PURE__ */ import_react13.default.createElement("div", { className: "relative group min-h-[80px] bg-slate-800/70 p-2.5 rounded-lg border border-white/10 hover:border-white/20 transition-colors" }, /* @__PURE__ */ import_react13.default.createElement(
|
|
7058
|
+
ds.name
|
|
7059
|
+
)))), /* @__PURE__ */ import_react13.default.createElement("div", { className: "space-y-1.5 relative" }, /* @__PURE__ */ import_react13.default.createElement("label", { className: "text-xs text-slate-300" }, "Descri\xE7\xE3o (Opcional)"), /* @__PURE__ */ import_react13.default.createElement("div", { className: "relative group min-h-[80px] bg-slate-800/70 p-2.5 rounded-lg border border-white/10 hover:border-white/20 transition-colors" }, /* @__PURE__ */ import_react13.default.createElement(
|
|
7033
7060
|
DescriptionDisplay,
|
|
7034
7061
|
{
|
|
7035
7062
|
description,
|
|
@@ -7367,7 +7394,6 @@ function NodeDetailsPanel({
|
|
|
7367
7394
|
onUploadFile,
|
|
7368
7395
|
userRole,
|
|
7369
7396
|
currentDatasetName
|
|
7370
|
-
// Prop currentDatasetName adicionada
|
|
7371
7397
|
}) {
|
|
7372
7398
|
const [name, setName] = (0, import_react15.useState)((node == null ? void 0 : node.name) ?? "");
|
|
7373
7399
|
const [types, setTypes] = (0, import_react15.useState)([]);
|
|
@@ -7778,7 +7804,7 @@ function NodeDetailsPanel({
|
|
|
7778
7804
|
onUploadFile: canEdit ? onUploadFile : void 0,
|
|
7779
7805
|
readOnly: !canEdit
|
|
7780
7806
|
}
|
|
7781
|
-
)), /* @__PURE__ */ import_react15.default.createElement("div", { ref: propsEndRef }))), currentDatasetName && /* @__PURE__ */ import_react15.default.createElement("div", { className: "pt-
|
|
7807
|
+
)), /* @__PURE__ */ import_react15.default.createElement("div", { ref: propsEndRef }))), currentDatasetName && /* @__PURE__ */ import_react15.default.createElement("div", { className: "pt-3 mt-4 border-t border-white/10 flex items-center gap-2 text-xs text-slate-400" }, /* @__PURE__ */ import_react15.default.createElement(import_fi14.FiDatabase, { className: "text-indigo-400 shrink-0", size: 14 }), /* @__PURE__ */ import_react15.default.createElement("span", { className: "truncate" }, "Dataset ", /* @__PURE__ */ import_react15.default.createElement("span", { className: "text-slate-200 font-medium" }, currentDatasetName)))), /* @__PURE__ */ import_react15.default.createElement("div", { className: "sticky bottom-0 z-10 bg-gradient-to-t from-slate-950/80 via-slate-950/50 to-transparent px-6 py-4 border-t border-white/10 flex justify-end gap-3" }, /* @__PURE__ */ import_react15.default.createElement("button", { onClick: handleCancel, disabled: isSaving, className: "px-4 py-2 rounded-lg border border-white/15 bg-transparent hover:bg-white/5 transition-colors text-sm disabled:opacity-50" }, canEdit ? "Cancelar" : "Fechar"), canEdit && /* @__PURE__ */ import_react15.default.createElement(
|
|
7782
7808
|
"button",
|
|
7783
7809
|
{
|
|
7784
7810
|
onClick: () => handleSave(false),
|
package/dist/index.mjs
CHANGED
|
@@ -6770,7 +6770,7 @@ function ColorPicker({ color, onChange, disabled }) {
|
|
|
6770
6770
|
}
|
|
6771
6771
|
|
|
6772
6772
|
// src/components/InSceneCreationForm.jsx
|
|
6773
|
-
import { FiPlus as FiPlus3, FiMaximize2, FiX as FiX3, FiCheck as FiCheck7, FiEdit2 as FiEdit24, FiSun } from "react-icons/fi";
|
|
6773
|
+
import { FiPlus as FiPlus3, FiMaximize2, FiX as FiX3, FiCheck as FiCheck7, FiEdit2 as FiEdit24, FiSun, FiChevronDown as FiChevronDown4 } from "react-icons/fi";
|
|
6774
6774
|
function InSceneCreationForm({
|
|
6775
6775
|
onSave,
|
|
6776
6776
|
onCancel,
|
|
@@ -6789,11 +6789,11 @@ function InSceneCreationForm({
|
|
|
6789
6789
|
onMentionClick,
|
|
6790
6790
|
sourceTypes,
|
|
6791
6791
|
onUploadFile,
|
|
6792
|
-
// Props do Dataset adicionadas
|
|
6793
6792
|
availableDatasets = [],
|
|
6794
6793
|
sourceNodeDatasetId,
|
|
6795
6794
|
viewType
|
|
6796
6795
|
}) {
|
|
6796
|
+
var _a;
|
|
6797
6797
|
const [name, setName] = useState13("");
|
|
6798
6798
|
const [types, setTypes] = useState13([]);
|
|
6799
6799
|
const [typeInput, setTypeInput] = useState13("");
|
|
@@ -6808,9 +6808,24 @@ function InSceneCreationForm({
|
|
|
6808
6808
|
const [useImageAsTexture, setUseImageAsTexture] = useState13(false);
|
|
6809
6809
|
const [selectedImageUrl, setSelectedImageUrl] = useState13(null);
|
|
6810
6810
|
const [targetDatasetId, setTargetDatasetId] = useState13(sourceNodeDatasetId || "");
|
|
6811
|
+
const [isDatasetDropdownOpen, setIsDatasetDropdownOpen] = useState13(false);
|
|
6812
|
+
const datasetDropdownRef = useRef10(null);
|
|
6811
6813
|
useEffect13(() => {
|
|
6812
6814
|
if (sourceNodeDatasetId) setTargetDatasetId(sourceNodeDatasetId);
|
|
6813
6815
|
}, [sourceNodeDatasetId]);
|
|
6816
|
+
useEffect13(() => {
|
|
6817
|
+
function handleClickOutside(event) {
|
|
6818
|
+
if (datasetDropdownRef.current && !datasetDropdownRef.current.contains(event.target)) {
|
|
6819
|
+
setIsDatasetDropdownOpen(false);
|
|
6820
|
+
}
|
|
6821
|
+
}
|
|
6822
|
+
if (isDatasetDropdownOpen) {
|
|
6823
|
+
document.addEventListener("mousedown", handleClickOutside);
|
|
6824
|
+
}
|
|
6825
|
+
return () => {
|
|
6826
|
+
document.removeEventListener("mousedown", handleClickOutside);
|
|
6827
|
+
};
|
|
6828
|
+
}, [isDatasetDropdownOpen]);
|
|
6814
6829
|
const propsEndRef = useRef10(null);
|
|
6815
6830
|
const hasImages = customProps.some((p) => p.type === "images" && Array.isArray(p.value) && p.value.length > 0 && p.value.some((img) => img.value));
|
|
6816
6831
|
useEffect13(() => {
|
|
@@ -6856,8 +6871,8 @@ function InSceneCreationForm({
|
|
|
6856
6871
|
const newProp = createNewCustomProperty(customProps);
|
|
6857
6872
|
setCustomProps([...customProps, newProp]);
|
|
6858
6873
|
setTimeout(() => {
|
|
6859
|
-
var
|
|
6860
|
-
(
|
|
6874
|
+
var _a2;
|
|
6875
|
+
(_a2 = propsEndRef.current) == null ? void 0 : _a2.scrollIntoView({ behavior: "smooth", block: "center" });
|
|
6861
6876
|
}, 100);
|
|
6862
6877
|
};
|
|
6863
6878
|
const handleRemoveProp = (index) => setCustomProps(customProps.filter((_, i) => i !== index));
|
|
@@ -6890,12 +6905,12 @@ function InSceneCreationForm({
|
|
|
6890
6905
|
onSizeChange == null ? void 0 : onSizeChange(newSize);
|
|
6891
6906
|
};
|
|
6892
6907
|
const handleToggleImageMode = () => {
|
|
6893
|
-
var
|
|
6908
|
+
var _a2, _b;
|
|
6894
6909
|
const newValue = !useImageAsTexture;
|
|
6895
6910
|
setUseImageAsTexture(newValue);
|
|
6896
6911
|
if (newValue) {
|
|
6897
6912
|
const firstImageProp = customProps.find((p) => p.type === "images");
|
|
6898
|
-
if (firstImageProp && ((_b = (
|
|
6913
|
+
if (firstImageProp && ((_b = (_a2 = firstImageProp.value) == null ? void 0 : _a2[0]) == null ? void 0 : _b.value)) {
|
|
6899
6914
|
const url = firstImageProp.value[0].value;
|
|
6900
6915
|
setSelectedImageUrl(url);
|
|
6901
6916
|
onImageChange == null ? void 0 : onImageChange(true, url);
|
|
@@ -6929,7 +6944,6 @@ function InSceneCreationForm({
|
|
|
6929
6944
|
useImageAsTexture,
|
|
6930
6945
|
textureImageUrl: useImageAsTexture ? selectedImageUrl : null,
|
|
6931
6946
|
targetDatasetId,
|
|
6932
|
-
// Alvo do Dataset adicionado no onSave
|
|
6933
6947
|
...additionalData
|
|
6934
6948
|
});
|
|
6935
6949
|
};
|
|
@@ -6950,6 +6964,7 @@ function InSceneCreationForm({
|
|
|
6950
6964
|
onOpenImageViewer([{ name: name2 || "Imagem", value: url }], 0);
|
|
6951
6965
|
}
|
|
6952
6966
|
};
|
|
6967
|
+
const selectedDatasetName = ((_a = availableDatasets.find((ds) => ds.id === targetDatasetId)) == null ? void 0 : _a.name) || "Selecione um Dataset...";
|
|
6953
6968
|
return /* @__PURE__ */ React13.createElement(React13.Fragment, null, /* @__PURE__ */ React13.createElement(
|
|
6954
6969
|
"div",
|
|
6955
6970
|
{
|
|
@@ -7007,15 +7022,27 @@ function InSceneCreationForm({
|
|
|
7007
7022
|
}
|
|
7008
7023
|
},
|
|
7009
7024
|
suggestedType
|
|
7010
|
-
))))), /* @__PURE__ */ React13.createElement("div", { className: "space-y-1.5" }, /* @__PURE__ */ React13.createElement("label", { className: "text-xs text-slate-300" }, "Nome do Node"), /* @__PURE__ */ React13.createElement("input", { required: true, type: "text", placeholder: "Ex.: Cliente XPTO", value: name, onChange: handleNameInputChange, className: "w-full bg-slate-800/70 p-2.5 text-sm rounded-lg border border-white/10 focus:outline-none focus:ring-2 focus:ring-indigo-400/60" })), viewType === "view" && availableDatasets.length > 0 && /* @__PURE__ */ React13.createElement("div", { className: "space-y-1.5" }, /* @__PURE__ */ React13.createElement("label", { className: "text-xs text-slate-300" }, "Criar Node no Dataset:"), /* @__PURE__ */ React13.createElement(
|
|
7011
|
-
"
|
|
7025
|
+
))))), /* @__PURE__ */ React13.createElement("div", { className: "space-y-1.5" }, /* @__PURE__ */ React13.createElement("label", { className: "text-xs text-slate-300" }, "Nome do Node"), /* @__PURE__ */ React13.createElement("input", { required: true, type: "text", placeholder: "Ex.: Cliente XPTO", value: name, onChange: handleNameInputChange, className: "w-full bg-slate-800/70 p-2.5 text-sm rounded-lg border border-white/10 focus:outline-none focus:ring-2 focus:ring-indigo-400/60" })), viewType === "view" && availableDatasets.length > 0 && /* @__PURE__ */ React13.createElement("div", { className: "space-y-1.5 relative", ref: datasetDropdownRef }, /* @__PURE__ */ React13.createElement("label", { className: "text-xs text-slate-300" }, "Criar Node no Dataset:"), /* @__PURE__ */ React13.createElement(
|
|
7026
|
+
"button",
|
|
7012
7027
|
{
|
|
7013
|
-
|
|
7014
|
-
|
|
7015
|
-
className: "w-full bg-slate-800/70 p-2.5 text-sm rounded-lg border border-white/10 focus:outline-none focus:ring-2 focus:ring-indigo-400/60 text-slate-200
|
|
7028
|
+
type: "button",
|
|
7029
|
+
onClick: () => setIsDatasetDropdownOpen(!isDatasetDropdownOpen),
|
|
7030
|
+
className: "w-full flex items-center justify-between bg-slate-800/70 p-2.5 text-sm rounded-lg border border-white/10 focus:outline-none focus:ring-2 focus:ring-indigo-400/60 hover:bg-slate-700/70 transition-colors text-slate-200 text-left"
|
|
7031
|
+
},
|
|
7032
|
+
/* @__PURE__ */ React13.createElement("span", { className: "truncate pr-2" }, selectedDatasetName),
|
|
7033
|
+
/* @__PURE__ */ React13.createElement(FiChevronDown4, { className: `flex-shrink-0 text-slate-400 transition-transform ${isDatasetDropdownOpen ? "rotate-180" : ""}` })
|
|
7034
|
+
), isDatasetDropdownOpen && /* @__PURE__ */ React13.createElement("ul", { className: "custom-scrollbar absolute top-[66px] left-0 z-20 w-full max-h-48 overflow-y-auto rounded-lg bg-slate-800 border border-white/10 shadow-xl py-1" }, availableDatasets.map((ds) => /* @__PURE__ */ React13.createElement(
|
|
7035
|
+
"li",
|
|
7036
|
+
{
|
|
7037
|
+
key: ds.id,
|
|
7038
|
+
onClick: () => {
|
|
7039
|
+
setTargetDatasetId(ds.id);
|
|
7040
|
+
setIsDatasetDropdownOpen(false);
|
|
7041
|
+
},
|
|
7042
|
+
className: `px-3 py-2 text-sm cursor-pointer transition-colors ${targetDatasetId === ds.id ? "bg-indigo-600/40 text-indigo-200 font-medium" : "text-slate-300 hover:bg-white/5"}`
|
|
7016
7043
|
},
|
|
7017
|
-
|
|
7018
|
-
)), /* @__PURE__ */ React13.createElement("div", { className: "space-y-1.5 relative" }, /* @__PURE__ */ React13.createElement("label", { className: "text-xs text-slate-300" }, "Descri\xE7\xE3o (Opcional)"), /* @__PURE__ */ React13.createElement("div", { className: "relative group min-h-[80px] bg-slate-800/70 p-2.5 rounded-lg border border-white/10 hover:border-white/20 transition-colors" }, /* @__PURE__ */ React13.createElement(
|
|
7044
|
+
ds.name
|
|
7045
|
+
)))), /* @__PURE__ */ React13.createElement("div", { className: "space-y-1.5 relative" }, /* @__PURE__ */ React13.createElement("label", { className: "text-xs text-slate-300" }, "Descri\xE7\xE3o (Opcional)"), /* @__PURE__ */ React13.createElement("div", { className: "relative group min-h-[80px] bg-slate-800/70 p-2.5 rounded-lg border border-white/10 hover:border-white/20 transition-colors" }, /* @__PURE__ */ React13.createElement(
|
|
7019
7046
|
DescriptionDisplay,
|
|
7020
7047
|
{
|
|
7021
7048
|
description,
|
|
@@ -7353,7 +7380,6 @@ function NodeDetailsPanel({
|
|
|
7353
7380
|
onUploadFile,
|
|
7354
7381
|
userRole,
|
|
7355
7382
|
currentDatasetName
|
|
7356
|
-
// Prop currentDatasetName adicionada
|
|
7357
7383
|
}) {
|
|
7358
7384
|
const [name, setName] = useState15((node == null ? void 0 : node.name) ?? "");
|
|
7359
7385
|
const [types, setTypes] = useState15([]);
|
|
@@ -7764,7 +7790,7 @@ function NodeDetailsPanel({
|
|
|
7764
7790
|
onUploadFile: canEdit ? onUploadFile : void 0,
|
|
7765
7791
|
readOnly: !canEdit
|
|
7766
7792
|
}
|
|
7767
|
-
)), /* @__PURE__ */ React15.createElement("div", { ref: propsEndRef }))), currentDatasetName && /* @__PURE__ */ React15.createElement("div", { className: "pt-
|
|
7793
|
+
)), /* @__PURE__ */ React15.createElement("div", { ref: propsEndRef }))), currentDatasetName && /* @__PURE__ */ React15.createElement("div", { className: "pt-3 mt-4 border-t border-white/10 flex items-center gap-2 text-xs text-slate-400" }, /* @__PURE__ */ React15.createElement(FiDatabase, { className: "text-indigo-400 shrink-0", size: 14 }), /* @__PURE__ */ React15.createElement("span", { className: "truncate" }, "Dataset ", /* @__PURE__ */ React15.createElement("span", { className: "text-slate-200 font-medium" }, currentDatasetName)))), /* @__PURE__ */ React15.createElement("div", { className: "sticky bottom-0 z-10 bg-gradient-to-t from-slate-950/80 via-slate-950/50 to-transparent px-6 py-4 border-t border-white/10 flex justify-end gap-3" }, /* @__PURE__ */ React15.createElement("button", { onClick: handleCancel, disabled: isSaving, className: "px-4 py-2 rounded-lg border border-white/15 bg-transparent hover:bg-white/5 transition-colors text-sm disabled:opacity-50" }, canEdit ? "Cancelar" : "Fechar"), canEdit && /* @__PURE__ */ React15.createElement(
|
|
7768
7794
|
"button",
|
|
7769
7795
|
{
|
|
7770
7796
|
onClick: () => handleSave(false),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lv-x-software-house/x_view",
|
|
3
|
-
"version": "1.2.2-dev.
|
|
3
|
+
"version": "1.2.2-dev.9",
|
|
4
4
|
"description": "Pacote privado contendo os componentes e lógica de renderização 3D do X View.",
|
|
5
5
|
"author": "iv.x - Engenharia de Software - ivxsoftwarehouse@gmail.com",
|
|
6
6
|
"license": "UNLICENSED",
|