@lv-x-software-house/x_view 1.2.4-dev.5 → 1.2.4-dev.7

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 CHANGED
@@ -2192,9 +2192,24 @@ var userActionHandlers = {
2192
2192
  const specificParentData = JSON.parse(JSON.stringify(graphDataRef.current[parentFileId]));
2193
2193
  const newLinks = (specificParentData.links || []).filter((l) => String(l.id) !== String(linkIdToDelete));
2194
2194
  specificParentData.links = newLinks;
2195
- const filenameForSpecificParent = `x_view_dbs/${ownerId}/${parentFileId}`;
2195
+ let filenameToSave;
2196
+ let payloadToSave;
2197
+ if (parentFileId === context.sceneConfigId) {
2198
+ filenameToSave = context.sceneSaveUrl;
2199
+ sceneDataRef.current.links = sceneDataRef.current.links.filter((l) => String(l.id) !== String(linkIdToDelete));
2200
+ payloadToSave = {
2201
+ parent_dbs: sceneDataRef.current.parent_dbs,
2202
+ nodes: sceneDataRef.current.nodes,
2203
+ links: sceneDataRef.current.links,
2204
+ quest_nodes: specificParentData.nodes,
2205
+ quest_links: specificParentData.links
2206
+ };
2207
+ } else {
2208
+ filenameToSave = `x_view_dbs/${ownerId}/${parentFileId}`;
2209
+ payloadToSave = specificParentData;
2210
+ }
2196
2211
  try {
2197
- await context.actions.save_view_data(filenameForSpecificParent, specificParentData);
2212
+ await context.actions.save_view_data(filenameToSave, payloadToSave);
2198
2213
  graphDataRef.current[parentFileId] = specificParentData;
2199
2214
  setters.setDetailsLink((prev) => String(prev == null ? void 0 : prev.id) === String(linkIdToDelete) ? null : prev);
2200
2215
  if (stateRef.current.hoveredLink === linkObject) {
@@ -2391,8 +2406,26 @@ var userActionHandlers = {
2391
2406
  originalData.links = (originalData.links || []).filter(
2392
2407
  (l) => !linksToDelete.has(String(l.id))
2393
2408
  );
2394
- const filenameForSpecificParent = `x_view_dbs/${ownerId}/${parentFileId}`;
2395
- savePromises.push(context.actions.save_view_data(filenameForSpecificParent, originalData));
2409
+ let filenameToSave;
2410
+ let payloadToSave;
2411
+ if (parentFileId === context.sceneConfigId) {
2412
+ filenameToSave = context.sceneSaveUrl;
2413
+ const strNodesToDelete = Array.from(nodesToDelete).map(String);
2414
+ const strLinksToDelete = Array.from(linksToDelete).map(String);
2415
+ sceneDataRef.current.nodes = sceneDataRef.current.nodes.filter((n) => !strNodesToDelete.includes(String(n.id)));
2416
+ sceneDataRef.current.links = sceneDataRef.current.links.filter((l) => !strLinksToDelete.includes(String(l.id)));
2417
+ payloadToSave = {
2418
+ parent_dbs: sceneDataRef.current.parent_dbs,
2419
+ nodes: sceneDataRef.current.nodes,
2420
+ links: sceneDataRef.current.links,
2421
+ quest_nodes: originalData.nodes,
2422
+ quest_links: originalData.links
2423
+ };
2424
+ } else {
2425
+ filenameToSave = `x_view_dbs/${ownerId}/${parentFileId}`;
2426
+ payloadToSave = originalData;
2427
+ }
2428
+ savePromises.push(context.actions.save_view_data(filenameToSave, payloadToSave));
2396
2429
  updatedParentDataCache[parentFileId] = originalData;
2397
2430
  }
2398
2431
  }
@@ -2436,9 +2469,27 @@ var userActionHandlers = {
2436
2469
  const newLinks = (specificParentData.links || []).filter((l) => String(l.source) !== strNodeId && String(l.target) !== strNodeId);
2437
2470
  specificParentData.nodes = newNodes;
2438
2471
  specificParentData.links = newLinks;
2439
- const filenameForSpecificParent = `x_view_dbs/${ownerId}/${parentFileId}`;
2472
+ let filenameToSave;
2473
+ let payloadToSave;
2474
+ if (parentFileId === context.sceneConfigId) {
2475
+ filenameToSave = context.sceneSaveUrl;
2476
+ const newVisualNodes = sceneDataRef.current.nodes.filter((n) => String(n.id) !== strNodeId);
2477
+ const newVisualLinks = sceneDataRef.current.links.filter((l) => String(l.source) !== strNodeId && String(l.target) !== strNodeId);
2478
+ sceneDataRef.current.nodes = newVisualNodes;
2479
+ sceneDataRef.current.links = newVisualLinks;
2480
+ payloadToSave = {
2481
+ parent_dbs: sceneDataRef.current.parent_dbs,
2482
+ nodes: newVisualNodes,
2483
+ links: newVisualLinks,
2484
+ quest_nodes: specificParentData.nodes,
2485
+ quest_links: specificParentData.links
2486
+ };
2487
+ } else {
2488
+ filenameToSave = `x_view_dbs/${ownerId}/${parentFileId}`;
2489
+ payloadToSave = specificParentData;
2490
+ }
2440
2491
  try {
2441
- await context.actions.save_view_data(filenameForSpecificParent, specificParentData);
2492
+ await context.actions.save_view_data(filenameToSave, payloadToSave);
2442
2493
  graphDataRef.current[parentFileId] = specificParentData;
2443
2494
  setters.setDetailsNode((prev) => String(prev == null ? void 0 : prev.id) === String(nodeIdToDelete) ? null : prev);
2444
2495
  removeNodeFromScene(stateRef.current, nodeIdToDelete);
@@ -7897,7 +7948,7 @@ function InSceneQuestForm({
7897
7948
  setCustomProps(newProps);
7898
7949
  };
7899
7950
  const handleAddType = (newType) => {
7900
- const trimmed = newType.trim().toLowerCase();
7951
+ const trimmed = newType.trim();
7901
7952
  if (trimmed && !types.includes(trimmed)) {
7902
7953
  setTypes([...types, trimmed]);
7903
7954
  setTypeInput("");
@@ -7980,7 +8031,6 @@ function InSceneQuestForm({
7980
8031
  if (typeInput.trim()) handleAddType(typeInput);
7981
8032
  },
7982
8033
  className: "flex-1 bg-transparent text-sm min-w-[80px] focus:outline-none text-slate-200",
7983
- placeholder: "Ex.: Bugfix",
7984
8034
  autoComplete: "off"
7985
8035
  }
7986
8036
  ))), /* @__PURE__ */ import_react16.default.createElement("div", { className: "space-y-1.5 relative" }, /* @__PURE__ */ import_react16.default.createElement("label", { className: "text-xs text-slate-300" }, "Descri\xE7\xE3o (Opcional)"), /* @__PURE__ */ import_react16.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_react16.default.createElement(
@@ -11536,6 +11586,7 @@ function XViewScene({
11536
11586
  const newNode = {
11537
11587
  id: import_short_uuid2.default.generate(),
11538
11588
  ...newQuestData,
11589
+ is_quest: true,
11539
11590
  type: ["quest", ...newQuestData.type.filter((t) => t !== "quest")]
11540
11591
  };
11541
11592
  if (!graphDataRef.current[sceneConfigId2]) {
package/dist/index.mjs CHANGED
@@ -2148,9 +2148,24 @@ var userActionHandlers = {
2148
2148
  const specificParentData = JSON.parse(JSON.stringify(graphDataRef.current[parentFileId]));
2149
2149
  const newLinks = (specificParentData.links || []).filter((l) => String(l.id) !== String(linkIdToDelete));
2150
2150
  specificParentData.links = newLinks;
2151
- const filenameForSpecificParent = `x_view_dbs/${ownerId}/${parentFileId}`;
2151
+ let filenameToSave;
2152
+ let payloadToSave;
2153
+ if (parentFileId === context.sceneConfigId) {
2154
+ filenameToSave = context.sceneSaveUrl;
2155
+ sceneDataRef.current.links = sceneDataRef.current.links.filter((l) => String(l.id) !== String(linkIdToDelete));
2156
+ payloadToSave = {
2157
+ parent_dbs: sceneDataRef.current.parent_dbs,
2158
+ nodes: sceneDataRef.current.nodes,
2159
+ links: sceneDataRef.current.links,
2160
+ quest_nodes: specificParentData.nodes,
2161
+ quest_links: specificParentData.links
2162
+ };
2163
+ } else {
2164
+ filenameToSave = `x_view_dbs/${ownerId}/${parentFileId}`;
2165
+ payloadToSave = specificParentData;
2166
+ }
2152
2167
  try {
2153
- await context.actions.save_view_data(filenameForSpecificParent, specificParentData);
2168
+ await context.actions.save_view_data(filenameToSave, payloadToSave);
2154
2169
  graphDataRef.current[parentFileId] = specificParentData;
2155
2170
  setters.setDetailsLink((prev) => String(prev == null ? void 0 : prev.id) === String(linkIdToDelete) ? null : prev);
2156
2171
  if (stateRef.current.hoveredLink === linkObject) {
@@ -2347,8 +2362,26 @@ var userActionHandlers = {
2347
2362
  originalData.links = (originalData.links || []).filter(
2348
2363
  (l) => !linksToDelete.has(String(l.id))
2349
2364
  );
2350
- const filenameForSpecificParent = `x_view_dbs/${ownerId}/${parentFileId}`;
2351
- savePromises.push(context.actions.save_view_data(filenameForSpecificParent, originalData));
2365
+ let filenameToSave;
2366
+ let payloadToSave;
2367
+ if (parentFileId === context.sceneConfigId) {
2368
+ filenameToSave = context.sceneSaveUrl;
2369
+ const strNodesToDelete = Array.from(nodesToDelete).map(String);
2370
+ const strLinksToDelete = Array.from(linksToDelete).map(String);
2371
+ sceneDataRef.current.nodes = sceneDataRef.current.nodes.filter((n) => !strNodesToDelete.includes(String(n.id)));
2372
+ sceneDataRef.current.links = sceneDataRef.current.links.filter((l) => !strLinksToDelete.includes(String(l.id)));
2373
+ payloadToSave = {
2374
+ parent_dbs: sceneDataRef.current.parent_dbs,
2375
+ nodes: sceneDataRef.current.nodes,
2376
+ links: sceneDataRef.current.links,
2377
+ quest_nodes: originalData.nodes,
2378
+ quest_links: originalData.links
2379
+ };
2380
+ } else {
2381
+ filenameToSave = `x_view_dbs/${ownerId}/${parentFileId}`;
2382
+ payloadToSave = originalData;
2383
+ }
2384
+ savePromises.push(context.actions.save_view_data(filenameToSave, payloadToSave));
2352
2385
  updatedParentDataCache[parentFileId] = originalData;
2353
2386
  }
2354
2387
  }
@@ -2392,9 +2425,27 @@ var userActionHandlers = {
2392
2425
  const newLinks = (specificParentData.links || []).filter((l) => String(l.source) !== strNodeId && String(l.target) !== strNodeId);
2393
2426
  specificParentData.nodes = newNodes;
2394
2427
  specificParentData.links = newLinks;
2395
- const filenameForSpecificParent = `x_view_dbs/${ownerId}/${parentFileId}`;
2428
+ let filenameToSave;
2429
+ let payloadToSave;
2430
+ if (parentFileId === context.sceneConfigId) {
2431
+ filenameToSave = context.sceneSaveUrl;
2432
+ const newVisualNodes = sceneDataRef.current.nodes.filter((n) => String(n.id) !== strNodeId);
2433
+ const newVisualLinks = sceneDataRef.current.links.filter((l) => String(l.source) !== strNodeId && String(l.target) !== strNodeId);
2434
+ sceneDataRef.current.nodes = newVisualNodes;
2435
+ sceneDataRef.current.links = newVisualLinks;
2436
+ payloadToSave = {
2437
+ parent_dbs: sceneDataRef.current.parent_dbs,
2438
+ nodes: newVisualNodes,
2439
+ links: newVisualLinks,
2440
+ quest_nodes: specificParentData.nodes,
2441
+ quest_links: specificParentData.links
2442
+ };
2443
+ } else {
2444
+ filenameToSave = `x_view_dbs/${ownerId}/${parentFileId}`;
2445
+ payloadToSave = specificParentData;
2446
+ }
2396
2447
  try {
2397
- await context.actions.save_view_data(filenameForSpecificParent, specificParentData);
2448
+ await context.actions.save_view_data(filenameToSave, payloadToSave);
2398
2449
  graphDataRef.current[parentFileId] = specificParentData;
2399
2450
  setters.setDetailsNode((prev) => String(prev == null ? void 0 : prev.id) === String(nodeIdToDelete) ? null : prev);
2400
2451
  removeNodeFromScene(stateRef.current, nodeIdToDelete);
@@ -7884,7 +7935,7 @@ function InSceneQuestForm({
7884
7935
  setCustomProps(newProps);
7885
7936
  };
7886
7937
  const handleAddType = (newType) => {
7887
- const trimmed = newType.trim().toLowerCase();
7938
+ const trimmed = newType.trim();
7888
7939
  if (trimmed && !types.includes(trimmed)) {
7889
7940
  setTypes([...types, trimmed]);
7890
7941
  setTypeInput("");
@@ -7967,7 +8018,6 @@ function InSceneQuestForm({
7967
8018
  if (typeInput.trim()) handleAddType(typeInput);
7968
8019
  },
7969
8020
  className: "flex-1 bg-transparent text-sm min-w-[80px] focus:outline-none text-slate-200",
7970
- placeholder: "Ex.: Bugfix",
7971
8021
  autoComplete: "off"
7972
8022
  }
7973
8023
  ))), /* @__PURE__ */ React15.createElement("div", { className: "space-y-1.5 relative" }, /* @__PURE__ */ React15.createElement("label", { className: "text-xs text-slate-300" }, "Descri\xE7\xE3o (Opcional)"), /* @__PURE__ */ React15.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__ */ React15.createElement(
@@ -11536,6 +11586,7 @@ function XViewScene({
11536
11586
  const newNode = {
11537
11587
  id: short2.generate(),
11538
11588
  ...newQuestData,
11589
+ is_quest: true,
11539
11590
  type: ["quest", ...newQuestData.type.filter((t) => t !== "quest")]
11540
11591
  };
11541
11592
  if (!graphDataRef.current[sceneConfigId2]) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lv-x-software-house/x_view",
3
- "version": "1.2.4-dev.5",
3
+ "version": "1.2.4-dev.7",
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",