@lv-x-software-house/x_view 1.2.7-dev.2 → 1.2.7-dev.4
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 +94 -38
- package/dist/index.mjs +94 -38
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3989,6 +3989,7 @@ function XViewSidebar({
|
|
|
3989
3989
|
const [questFilterStatus, setQuestFilterStatus] = (0, import_react3.useState)("");
|
|
3990
3990
|
const [questFilterMilestone, setQuestFilterMilestone] = (0, import_react3.useState)("");
|
|
3991
3991
|
const [isQuestLensLoading, setIsQuestLensLoading] = (0, import_react3.useState)(false);
|
|
3992
|
+
const [isQuestLensMenuOpen, setIsQuestLensMenuOpen] = (0, import_react3.useState)(false);
|
|
3992
3993
|
const [reshapeLayoutType, setReshapeLayoutType] = (0, import_react3.useState)("Star");
|
|
3993
3994
|
const [reshapeColumnCount, setReshapeColumnCount] = (0, import_react3.useState)(4);
|
|
3994
3995
|
const [reshapeCenterNodeId, setReshapeCenterNodeId] = (0, import_react3.useState)("");
|
|
@@ -4010,6 +4011,7 @@ function XViewSidebar({
|
|
|
4010
4011
|
const filterMenuRef = (0, import_react3.useRef)(null);
|
|
4011
4012
|
const typeDropdownRef = (0, import_react3.useRef)(null);
|
|
4012
4013
|
const annexedPanelRef = (0, import_react3.useRef)(null);
|
|
4014
|
+
const questLensRef = (0, import_react3.useRef)(null);
|
|
4013
4015
|
const ability = (0, import_react3.useMemo)(() => {
|
|
4014
4016
|
return defineAbilityFor(userRole);
|
|
4015
4017
|
}, [userRole]);
|
|
@@ -4126,6 +4128,18 @@ function XViewSidebar({
|
|
|
4126
4128
|
}
|
|
4127
4129
|
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
4128
4130
|
}, [isFilterMenuOpen, isTypeDropdownOpen]);
|
|
4131
|
+
(0, import_react3.useEffect)(() => {
|
|
4132
|
+
const handleClickOutsideQuest = (event) => {
|
|
4133
|
+
if (questLensRef.current && !questLensRef.current.contains(event.target)) {
|
|
4134
|
+
if (event.target.tagName.toLowerCase() === "select" || event.target.tagName.toLowerCase() === "option") return;
|
|
4135
|
+
setIsQuestLensMenuOpen(false);
|
|
4136
|
+
}
|
|
4137
|
+
};
|
|
4138
|
+
if (isQuestLensMenuOpen) {
|
|
4139
|
+
document.addEventListener("mousedown", handleClickOutsideQuest);
|
|
4140
|
+
}
|
|
4141
|
+
return () => document.removeEventListener("mousedown", handleClickOutsideQuest);
|
|
4142
|
+
}, [isQuestLensMenuOpen]);
|
|
4129
4143
|
(0, import_react3.useEffect)(() => {
|
|
4130
4144
|
const handleClickOutsideAnnexed = (event) => {
|
|
4131
4145
|
if (annexedPanelRef.current && !annexedPanelRef.current.contains(event.target)) {
|
|
@@ -4284,7 +4298,7 @@ function XViewSidebar({
|
|
|
4284
4298
|
}
|
|
4285
4299
|
)
|
|
4286
4300
|
)
|
|
4287
|
-
), /* @__PURE__ */ import_react3.default.createElement("h3", { className: "text-sm font-semibold text-indigo-100 uppercase tracking-wider" }, activeSubMenu === "
|
|
4301
|
+
), /* @__PURE__ */ import_react3.default.createElement("h3", { className: "text-sm font-semibold text-indigo-100 uppercase tracking-wider" }, activeSubMenu === "reshape" ? "Reshape Lens" : "Integra\xE7\xF5es"), /* @__PURE__ */ import_react3.default.createElement(
|
|
4288
4302
|
"button",
|
|
4289
4303
|
{
|
|
4290
4304
|
className: "ml-auto p-1.5 rounded-md text-slate-400 hover:text-white hover:bg-white/10 transition-colors hidden md:block",
|
|
@@ -4666,30 +4680,72 @@ function XViewSidebar({
|
|
|
4666
4680
|
className: "w-full py-1.5 bg-indigo-600 hover:bg-indigo-500 disabled:opacity-50 text-white text-xs font-medium rounded transition-colors"
|
|
4667
4681
|
},
|
|
4668
4682
|
"Aplicar Filtro"
|
|
4669
|
-
))))), /* @__PURE__ */ import_react3.default.createElement("div", { className: "h-px bg-white/10" }), /* @__PURE__ */ import_react3.default.createElement("section", { className: "space-y-2" }, /* @__PURE__ */ import_react3.default.createElement("p", { className: "text-[11px] uppercase tracking-wider text-slate-400" }, "Lentes"), /* @__PURE__ */ import_react3.default.createElement("div", { className: "relative" }, /* @__PURE__ */ import_react3.default.createElement(
|
|
4683
|
+
))))), /* @__PURE__ */ import_react3.default.createElement("div", { className: "h-px bg-white/10" }), /* @__PURE__ */ import_react3.default.createElement("section", { className: "space-y-2" }, /* @__PURE__ */ import_react3.default.createElement("p", { className: "text-[11px] uppercase tracking-wider text-slate-400" }, "Lentes"), /* @__PURE__ */ import_react3.default.createElement("div", { className: "relative", ref: questLensRef }, /* @__PURE__ */ import_react3.default.createElement(
|
|
4670
4684
|
"button",
|
|
4671
4685
|
{
|
|
4672
|
-
onClick: () =>
|
|
4673
|
-
className: `${buttonBaseClass}
|
|
4686
|
+
onClick: () => setIsQuestLensMenuOpen(!isQuestLensMenuOpen),
|
|
4687
|
+
className: `${buttonBaseClass} ${isQuestLensMenuOpen || questFilterAssignee || questFilterStatus || questFilterMilestone ? "bg-indigo-500/30 border-indigo-400" : ""}`,
|
|
4688
|
+
title: "Abrir filtros da Lente de Quests"
|
|
4674
4689
|
},
|
|
4675
|
-
/* @__PURE__ */ import_react3.default.createElement(
|
|
4676
|
-
|
|
4677
|
-
|
|
4678
|
-
|
|
4679
|
-
|
|
4680
|
-
|
|
4681
|
-
|
|
4682
|
-
|
|
4683
|
-
|
|
4684
|
-
|
|
4685
|
-
|
|
4686
|
-
|
|
4690
|
+
/* @__PURE__ */ import_react3.default.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, /* @__PURE__ */ import_react3.default.createElement("path", { d: "M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" }), /* @__PURE__ */ import_react3.default.createElement("path", { d: "M9 12l2 2 4-4" })),
|
|
4691
|
+
"Quest Lens",
|
|
4692
|
+
(questFilterAssignee || questFilterStatus || questFilterMilestone) && /* @__PURE__ */ import_react3.default.createElement("span", { className: "ml-1 px-1.5 py-0.5 rounded-full bg-indigo-500 text-[9px] font-bold" }, "!")
|
|
4693
|
+
), isQuestLensMenuOpen && /* @__PURE__ */ import_react3.default.createElement("div", { className: "absolute left-0 bottom-full mb-2 w-full p-4 rounded-xl bg-slate-900 border border-white/10 shadow-2xl z-50 flex flex-col gap-4 animate-in fade-in slide-in-from-bottom-2 duration-200" }, /* @__PURE__ */ import_react3.default.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ import_react3.default.createElement("label", { className: "text-[10px] uppercase text-slate-400 font-bold tracking-widest" }, "Respons\xE1vel"), /* @__PURE__ */ import_react3.default.createElement(
|
|
4694
|
+
"select",
|
|
4695
|
+
{
|
|
4696
|
+
value: questFilterAssignee,
|
|
4697
|
+
onChange: (e) => setQuestFilterAssignee(e.target.value),
|
|
4698
|
+
className: "w-full bg-slate-800 p-2 text-xs rounded border border-white/10 focus:outline-none focus:border-indigo-500/50 text-white appearance-none cursor-pointer"
|
|
4699
|
+
},
|
|
4700
|
+
/* @__PURE__ */ import_react3.default.createElement("option", { value: "" }, "Todos os Respons\xE1veis"),
|
|
4701
|
+
viewMembers.map((m) => /* @__PURE__ */ import_react3.default.createElement("option", { key: m.id, value: m.id }, m.name || m.email))
|
|
4702
|
+
)), /* @__PURE__ */ import_react3.default.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ import_react3.default.createElement("label", { className: "text-[10px] uppercase text-slate-400 font-bold tracking-widest" }, "Status"), /* @__PURE__ */ import_react3.default.createElement(
|
|
4703
|
+
"select",
|
|
4704
|
+
{
|
|
4705
|
+
value: questFilterStatus,
|
|
4706
|
+
onChange: (e) => setQuestFilterStatus(e.target.value),
|
|
4707
|
+
className: "w-full bg-slate-800 p-2 text-xs rounded border border-white/10 focus:outline-none focus:border-indigo-500/50 text-white appearance-none cursor-pointer"
|
|
4708
|
+
},
|
|
4709
|
+
/* @__PURE__ */ import_react3.default.createElement("option", { value: "" }, "Todos (Exclui Done)"),
|
|
4710
|
+
/* @__PURE__ */ import_react3.default.createElement("option", { value: "Backlog" }, "Backlog"),
|
|
4711
|
+
/* @__PURE__ */ import_react3.default.createElement("option", { value: "In Progress" }, "In Progress"),
|
|
4712
|
+
/* @__PURE__ */ import_react3.default.createElement("option", { value: "Review" }, "Review"),
|
|
4713
|
+
/* @__PURE__ */ import_react3.default.createElement("option", { value: "Done" }, "Done")
|
|
4714
|
+
)), /* @__PURE__ */ import_react3.default.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ import_react3.default.createElement("label", { className: "text-[10px] uppercase text-slate-400 font-bold tracking-widest" }, "Milestone"), /* @__PURE__ */ import_react3.default.createElement(
|
|
4715
|
+
"select",
|
|
4716
|
+
{
|
|
4717
|
+
value: questFilterMilestone,
|
|
4718
|
+
onChange: (e) => setQuestFilterMilestone(e.target.value),
|
|
4719
|
+
className: "w-full bg-slate-800 p-2 text-xs rounded border border-white/10 focus:outline-none focus:border-indigo-500/50 text-white appearance-none cursor-pointer"
|
|
4720
|
+
},
|
|
4721
|
+
/* @__PURE__ */ import_react3.default.createElement("option", { value: "" }, "Todos os Milestones"),
|
|
4722
|
+
(milestones || []).map((ms) => /* @__PURE__ */ import_react3.default.createElement("option", { key: ms.id, value: ms.id }, ms.name, " ", ms.status === "inactive" ? "(Inativo)" : ""))
|
|
4723
|
+
)), /* @__PURE__ */ import_react3.default.createElement("div", { className: "flex gap-2 pt-1 border-t border-white/10 mt-2" }, /* @__PURE__ */ import_react3.default.createElement(
|
|
4724
|
+
"button",
|
|
4725
|
+
{
|
|
4726
|
+
onClick: () => {
|
|
4727
|
+
setQuestFilterAssignee("");
|
|
4728
|
+
setQuestFilterStatus("");
|
|
4729
|
+
setQuestFilterMilestone("");
|
|
4687
4730
|
},
|
|
4688
|
-
|
|
4689
|
-
|
|
4690
|
-
|
|
4691
|
-
|
|
4692
|
-
|
|
4731
|
+
className: "flex-1 py-2 bg-white/5 hover:bg-white/10 text-slate-300 text-[11px] font-medium rounded-lg transition-colors border border-white/5 mt-3"
|
|
4732
|
+
},
|
|
4733
|
+
"Limpar"
|
|
4734
|
+
), /* @__PURE__ */ import_react3.default.createElement(
|
|
4735
|
+
"button",
|
|
4736
|
+
{
|
|
4737
|
+
onClick: () => {
|
|
4738
|
+
onActivateQuestLens({
|
|
4739
|
+
assigneeId: questFilterAssignee,
|
|
4740
|
+
status: questFilterStatus,
|
|
4741
|
+
milestoneId: questFilterMilestone
|
|
4742
|
+
});
|
|
4743
|
+
setIsQuestLensMenuOpen(false);
|
|
4744
|
+
},
|
|
4745
|
+
className: "flex-[2] py-2 bg-indigo-600 hover:bg-indigo-500 text-white text-[11px] font-bold rounded-lg shadow-lg shadow-indigo-500/20 transition-all hover:scale-[1.02] active:scale-95 mt-3"
|
|
4746
|
+
},
|
|
4747
|
+
"Aplicar Lente"
|
|
4748
|
+
)))), /* @__PURE__ */ import_react3.default.createElement("div", { className: "relative" }, /* @__PURE__ */ import_react3.default.createElement(
|
|
4693
4749
|
"button",
|
|
4694
4750
|
{
|
|
4695
4751
|
onClick: () => setActiveSubMenu(
|
|
@@ -15358,7 +15414,7 @@ function XViewScene({
|
|
|
15358
15414
|
create_google_doc_action,
|
|
15359
15415
|
open_google_picker_action
|
|
15360
15416
|
}) {
|
|
15361
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
|
|
15417
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r;
|
|
15362
15418
|
const { data: session, status } = (0, import_react34.useSession)();
|
|
15363
15419
|
const router = (0, import_navigation.useRouter)();
|
|
15364
15420
|
const searchParams = (0, import_navigation.useSearchParams)();
|
|
@@ -20391,10 +20447,10 @@ function XViewScene({
|
|
|
20391
20447
|
onOpenBoards: handleOpenBoards,
|
|
20392
20448
|
viewType: viewParams == null ? void 0 : viewParams.type,
|
|
20393
20449
|
viewName: viewParams == null ? void 0 : viewParams.name,
|
|
20394
|
-
milestones: (viewParams == null ? void 0 : viewParams.milestones) || [],
|
|
20450
|
+
milestones: ((_c = sceneDataRef.current) == null ? void 0 : _c.milestones) || (viewParams == null ? void 0 : viewParams.milestones) || [],
|
|
20395
20451
|
onOpenMilestoneManager: () => setIsMilestoneManagerOpen(true),
|
|
20396
|
-
view_google_folder_id: (
|
|
20397
|
-
view_google_folder_name: (
|
|
20452
|
+
view_google_folder_id: (_d = sceneDataRef.current) == null ? void 0 : _d.view_google_folder_id,
|
|
20453
|
+
view_google_folder_name: (_e = sceneDataRef.current) == null ? void 0 : _e.view_google_folder_name,
|
|
20398
20454
|
open_google_picker_action,
|
|
20399
20455
|
onSaveConfig: handleSaveConfig,
|
|
20400
20456
|
onNavigateBack: handleNavigateBack,
|
|
@@ -20426,8 +20482,8 @@ function XViewScene({
|
|
|
20426
20482
|
},
|
|
20427
20483
|
refEl: formRef,
|
|
20428
20484
|
existingTypes: existingNodeTypes,
|
|
20429
|
-
initialColor: (
|
|
20430
|
-
sourceTypes: (
|
|
20485
|
+
initialColor: (_f = creationMode.sourceNodeData) == null ? void 0 : _f.color,
|
|
20486
|
+
sourceTypes: (_g = creationMode.sourceNodeData) == null ? void 0 : _g.type,
|
|
20431
20487
|
onIntensityChange: handleGhostNodeIntensityChange,
|
|
20432
20488
|
onUploadFile: upload_file_action,
|
|
20433
20489
|
availableDatasets,
|
|
@@ -20436,7 +20492,7 @@ function XViewScene({
|
|
|
20436
20492
|
availableNodes: allAvailableNodes,
|
|
20437
20493
|
availableAncestries: allAvailableAncestries,
|
|
20438
20494
|
create_google_doc_action,
|
|
20439
|
-
view_google_folder_id: (
|
|
20495
|
+
view_google_folder_id: (_h = sceneDataRef.current) == null ? void 0 : _h.view_google_folder_id
|
|
20440
20496
|
}
|
|
20441
20497
|
),
|
|
20442
20498
|
versionMode.isActive && /* @__PURE__ */ import_react33.default.createElement(
|
|
@@ -20459,8 +20515,8 @@ function XViewScene({
|
|
|
20459
20515
|
...overlayHiddenStyle
|
|
20460
20516
|
},
|
|
20461
20517
|
refEl: formRef,
|
|
20462
|
-
fixedType: (
|
|
20463
|
-
fixedColor: (
|
|
20518
|
+
fixedType: (_i = versionMode.sourceNodeData) == null ? void 0 : _i.type,
|
|
20519
|
+
fixedColor: (_j = versionMode.sourceNodeData) == null ? void 0 : _j.color,
|
|
20464
20520
|
onUploadFile: upload_file_action,
|
|
20465
20521
|
availableNodes: allAvailableNodes,
|
|
20466
20522
|
availableAncestries: allAvailableAncestries
|
|
@@ -20498,12 +20554,12 @@ function XViewScene({
|
|
|
20498
20554
|
availableNodes: allAvailableNodes,
|
|
20499
20555
|
availableAncestries: allAvailableAncestries,
|
|
20500
20556
|
viewName: viewParams == null ? void 0 : viewParams.name,
|
|
20501
|
-
questCounter: ((
|
|
20557
|
+
questCounter: ((_k = sceneDataRef.current) == null ? void 0 : _k.quest_counter) || 1,
|
|
20502
20558
|
viewMembers,
|
|
20503
|
-
milestones: ((
|
|
20559
|
+
milestones: ((_l = sceneDataRef.current) == null ? void 0 : _l.milestones) || [],
|
|
20504
20560
|
onUpdateMilestones: handleUpdateMilestones,
|
|
20505
20561
|
create_google_doc_action,
|
|
20506
|
-
view_google_folder_id: (
|
|
20562
|
+
view_google_folder_id: (_m = sceneDataRef.current) == null ? void 0 : _m.view_google_folder_id
|
|
20507
20563
|
}
|
|
20508
20564
|
),
|
|
20509
20565
|
readingMode.isActive && readingMode.ancestry && /* @__PURE__ */ import_react33.default.createElement(
|
|
@@ -20637,10 +20693,10 @@ function XViewScene({
|
|
|
20637
20693
|
currentDatasetName: detailsNodeDatasetInfo == null ? void 0 : detailsNodeDatasetInfo.datasetName,
|
|
20638
20694
|
viewMembers,
|
|
20639
20695
|
currentUser: session == null ? void 0 : session.user,
|
|
20640
|
-
milestones: ((
|
|
20696
|
+
milestones: ((_n = sceneDataRef.current) == null ? void 0 : _n.milestones) || [],
|
|
20641
20697
|
onUpdateMilestones: handleUpdateMilestones,
|
|
20642
20698
|
create_google_doc_action,
|
|
20643
|
-
view_google_folder_id: (
|
|
20699
|
+
view_google_folder_id: (_o = sceneDataRef.current) == null ? void 0 : _o.view_google_folder_id,
|
|
20644
20700
|
setQuestTreeMode,
|
|
20645
20701
|
handleRenderQuestTree,
|
|
20646
20702
|
handleRenderQuestAbstractionTree,
|
|
@@ -20678,7 +20734,7 @@ function XViewScene({
|
|
|
20678
20734
|
userRole: userPermissionRole,
|
|
20679
20735
|
currentDatasetName: detailsNodeDatasetInfo == null ? void 0 : detailsNodeDatasetInfo.datasetName,
|
|
20680
20736
|
create_google_doc_action,
|
|
20681
|
-
view_google_folder_id: (
|
|
20737
|
+
view_google_folder_id: (_p = sceneDataRef.current) == null ? void 0 : _p.view_google_folder_id,
|
|
20682
20738
|
style: overlayHiddenStyle
|
|
20683
20739
|
}
|
|
20684
20740
|
),
|
|
@@ -20831,7 +20887,7 @@ function XViewScene({
|
|
|
20831
20887
|
{
|
|
20832
20888
|
isOpen: isMilestoneManagerOpen,
|
|
20833
20889
|
onClose: () => setIsMilestoneManagerOpen(false),
|
|
20834
|
-
milestones: ((
|
|
20890
|
+
milestones: ((_q = sceneDataRef.current) == null ? void 0 : _q.milestones) || [],
|
|
20835
20891
|
onUpdateMilestones: handleUpdateMilestones
|
|
20836
20892
|
}
|
|
20837
20893
|
),
|
|
@@ -20842,7 +20898,7 @@ function XViewScene({
|
|
|
20842
20898
|
onClose: () => setIsImportModalOpen(false),
|
|
20843
20899
|
onConfirm: handleConfirmImport,
|
|
20844
20900
|
session,
|
|
20845
|
-
parentDbs: ((
|
|
20901
|
+
parentDbs: ((_r = sceneDataRef.current) == null ? void 0 : _r.parent_dbs) || [],
|
|
20846
20902
|
onFetchAvailableFiles: import_parent_file_modal_get,
|
|
20847
20903
|
currentViewName: viewParams == null ? void 0 : viewParams.name,
|
|
20848
20904
|
currentAncestries: ancestryDataRef.current || []
|
package/dist/index.mjs
CHANGED
|
@@ -3950,6 +3950,7 @@ function XViewSidebar({
|
|
|
3950
3950
|
const [questFilterStatus, setQuestFilterStatus] = useState3("");
|
|
3951
3951
|
const [questFilterMilestone, setQuestFilterMilestone] = useState3("");
|
|
3952
3952
|
const [isQuestLensLoading, setIsQuestLensLoading] = useState3(false);
|
|
3953
|
+
const [isQuestLensMenuOpen, setIsQuestLensMenuOpen] = useState3(false);
|
|
3953
3954
|
const [reshapeLayoutType, setReshapeLayoutType] = useState3("Star");
|
|
3954
3955
|
const [reshapeColumnCount, setReshapeColumnCount] = useState3(4);
|
|
3955
3956
|
const [reshapeCenterNodeId, setReshapeCenterNodeId] = useState3("");
|
|
@@ -3971,6 +3972,7 @@ function XViewSidebar({
|
|
|
3971
3972
|
const filterMenuRef = useRef2(null);
|
|
3972
3973
|
const typeDropdownRef = useRef2(null);
|
|
3973
3974
|
const annexedPanelRef = useRef2(null);
|
|
3975
|
+
const questLensRef = useRef2(null);
|
|
3974
3976
|
const ability = useMemo2(() => {
|
|
3975
3977
|
return defineAbilityFor(userRole);
|
|
3976
3978
|
}, [userRole]);
|
|
@@ -4087,6 +4089,18 @@ function XViewSidebar({
|
|
|
4087
4089
|
}
|
|
4088
4090
|
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
4089
4091
|
}, [isFilterMenuOpen, isTypeDropdownOpen]);
|
|
4092
|
+
useEffect2(() => {
|
|
4093
|
+
const handleClickOutsideQuest = (event) => {
|
|
4094
|
+
if (questLensRef.current && !questLensRef.current.contains(event.target)) {
|
|
4095
|
+
if (event.target.tagName.toLowerCase() === "select" || event.target.tagName.toLowerCase() === "option") return;
|
|
4096
|
+
setIsQuestLensMenuOpen(false);
|
|
4097
|
+
}
|
|
4098
|
+
};
|
|
4099
|
+
if (isQuestLensMenuOpen) {
|
|
4100
|
+
document.addEventListener("mousedown", handleClickOutsideQuest);
|
|
4101
|
+
}
|
|
4102
|
+
return () => document.removeEventListener("mousedown", handleClickOutsideQuest);
|
|
4103
|
+
}, [isQuestLensMenuOpen]);
|
|
4090
4104
|
useEffect2(() => {
|
|
4091
4105
|
const handleClickOutsideAnnexed = (event) => {
|
|
4092
4106
|
if (annexedPanelRef.current && !annexedPanelRef.current.contains(event.target)) {
|
|
@@ -4245,7 +4259,7 @@ function XViewSidebar({
|
|
|
4245
4259
|
}
|
|
4246
4260
|
)
|
|
4247
4261
|
)
|
|
4248
|
-
), /* @__PURE__ */ React2.createElement("h3", { className: "text-sm font-semibold text-indigo-100 uppercase tracking-wider" }, activeSubMenu === "
|
|
4262
|
+
), /* @__PURE__ */ React2.createElement("h3", { className: "text-sm font-semibold text-indigo-100 uppercase tracking-wider" }, activeSubMenu === "reshape" ? "Reshape Lens" : "Integra\xE7\xF5es"), /* @__PURE__ */ React2.createElement(
|
|
4249
4263
|
"button",
|
|
4250
4264
|
{
|
|
4251
4265
|
className: "ml-auto p-1.5 rounded-md text-slate-400 hover:text-white hover:bg-white/10 transition-colors hidden md:block",
|
|
@@ -4627,30 +4641,72 @@ function XViewSidebar({
|
|
|
4627
4641
|
className: "w-full py-1.5 bg-indigo-600 hover:bg-indigo-500 disabled:opacity-50 text-white text-xs font-medium rounded transition-colors"
|
|
4628
4642
|
},
|
|
4629
4643
|
"Aplicar Filtro"
|
|
4630
|
-
))))), /* @__PURE__ */ React2.createElement("div", { className: "h-px bg-white/10" }), /* @__PURE__ */ React2.createElement("section", { className: "space-y-2" }, /* @__PURE__ */ React2.createElement("p", { className: "text-[11px] uppercase tracking-wider text-slate-400" }, "Lentes"), /* @__PURE__ */ React2.createElement("div", { className: "relative" }, /* @__PURE__ */ React2.createElement(
|
|
4644
|
+
))))), /* @__PURE__ */ React2.createElement("div", { className: "h-px bg-white/10" }), /* @__PURE__ */ React2.createElement("section", { className: "space-y-2" }, /* @__PURE__ */ React2.createElement("p", { className: "text-[11px] uppercase tracking-wider text-slate-400" }, "Lentes"), /* @__PURE__ */ React2.createElement("div", { className: "relative", ref: questLensRef }, /* @__PURE__ */ React2.createElement(
|
|
4631
4645
|
"button",
|
|
4632
4646
|
{
|
|
4633
|
-
onClick: () =>
|
|
4634
|
-
className: `${buttonBaseClass}
|
|
4647
|
+
onClick: () => setIsQuestLensMenuOpen(!isQuestLensMenuOpen),
|
|
4648
|
+
className: `${buttonBaseClass} ${isQuestLensMenuOpen || questFilterAssignee || questFilterStatus || questFilterMilestone ? "bg-indigo-500/30 border-indigo-400" : ""}`,
|
|
4649
|
+
title: "Abrir filtros da Lente de Quests"
|
|
4635
4650
|
},
|
|
4636
|
-
/* @__PURE__ */ React2.createElement(
|
|
4637
|
-
|
|
4638
|
-
|
|
4639
|
-
|
|
4640
|
-
|
|
4641
|
-
|
|
4642
|
-
|
|
4643
|
-
|
|
4644
|
-
|
|
4645
|
-
|
|
4646
|
-
|
|
4647
|
-
|
|
4651
|
+
/* @__PURE__ */ React2.createElement("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, /* @__PURE__ */ React2.createElement("path", { d: "M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" }), /* @__PURE__ */ React2.createElement("path", { d: "M9 12l2 2 4-4" })),
|
|
4652
|
+
"Quest Lens",
|
|
4653
|
+
(questFilterAssignee || questFilterStatus || questFilterMilestone) && /* @__PURE__ */ React2.createElement("span", { className: "ml-1 px-1.5 py-0.5 rounded-full bg-indigo-500 text-[9px] font-bold" }, "!")
|
|
4654
|
+
), isQuestLensMenuOpen && /* @__PURE__ */ React2.createElement("div", { className: "absolute left-0 bottom-full mb-2 w-full p-4 rounded-xl bg-slate-900 border border-white/10 shadow-2xl z-50 flex flex-col gap-4 animate-in fade-in slide-in-from-bottom-2 duration-200" }, /* @__PURE__ */ React2.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ React2.createElement("label", { className: "text-[10px] uppercase text-slate-400 font-bold tracking-widest" }, "Respons\xE1vel"), /* @__PURE__ */ React2.createElement(
|
|
4655
|
+
"select",
|
|
4656
|
+
{
|
|
4657
|
+
value: questFilterAssignee,
|
|
4658
|
+
onChange: (e) => setQuestFilterAssignee(e.target.value),
|
|
4659
|
+
className: "w-full bg-slate-800 p-2 text-xs rounded border border-white/10 focus:outline-none focus:border-indigo-500/50 text-white appearance-none cursor-pointer"
|
|
4660
|
+
},
|
|
4661
|
+
/* @__PURE__ */ React2.createElement("option", { value: "" }, "Todos os Respons\xE1veis"),
|
|
4662
|
+
viewMembers.map((m) => /* @__PURE__ */ React2.createElement("option", { key: m.id, value: m.id }, m.name || m.email))
|
|
4663
|
+
)), /* @__PURE__ */ React2.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ React2.createElement("label", { className: "text-[10px] uppercase text-slate-400 font-bold tracking-widest" }, "Status"), /* @__PURE__ */ React2.createElement(
|
|
4664
|
+
"select",
|
|
4665
|
+
{
|
|
4666
|
+
value: questFilterStatus,
|
|
4667
|
+
onChange: (e) => setQuestFilterStatus(e.target.value),
|
|
4668
|
+
className: "w-full bg-slate-800 p-2 text-xs rounded border border-white/10 focus:outline-none focus:border-indigo-500/50 text-white appearance-none cursor-pointer"
|
|
4669
|
+
},
|
|
4670
|
+
/* @__PURE__ */ React2.createElement("option", { value: "" }, "Todos (Exclui Done)"),
|
|
4671
|
+
/* @__PURE__ */ React2.createElement("option", { value: "Backlog" }, "Backlog"),
|
|
4672
|
+
/* @__PURE__ */ React2.createElement("option", { value: "In Progress" }, "In Progress"),
|
|
4673
|
+
/* @__PURE__ */ React2.createElement("option", { value: "Review" }, "Review"),
|
|
4674
|
+
/* @__PURE__ */ React2.createElement("option", { value: "Done" }, "Done")
|
|
4675
|
+
)), /* @__PURE__ */ React2.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ React2.createElement("label", { className: "text-[10px] uppercase text-slate-400 font-bold tracking-widest" }, "Milestone"), /* @__PURE__ */ React2.createElement(
|
|
4676
|
+
"select",
|
|
4677
|
+
{
|
|
4678
|
+
value: questFilterMilestone,
|
|
4679
|
+
onChange: (e) => setQuestFilterMilestone(e.target.value),
|
|
4680
|
+
className: "w-full bg-slate-800 p-2 text-xs rounded border border-white/10 focus:outline-none focus:border-indigo-500/50 text-white appearance-none cursor-pointer"
|
|
4681
|
+
},
|
|
4682
|
+
/* @__PURE__ */ React2.createElement("option", { value: "" }, "Todos os Milestones"),
|
|
4683
|
+
(milestones || []).map((ms) => /* @__PURE__ */ React2.createElement("option", { key: ms.id, value: ms.id }, ms.name, " ", ms.status === "inactive" ? "(Inativo)" : ""))
|
|
4684
|
+
)), /* @__PURE__ */ React2.createElement("div", { className: "flex gap-2 pt-1 border-t border-white/10 mt-2" }, /* @__PURE__ */ React2.createElement(
|
|
4685
|
+
"button",
|
|
4686
|
+
{
|
|
4687
|
+
onClick: () => {
|
|
4688
|
+
setQuestFilterAssignee("");
|
|
4689
|
+
setQuestFilterStatus("");
|
|
4690
|
+
setQuestFilterMilestone("");
|
|
4648
4691
|
},
|
|
4649
|
-
|
|
4650
|
-
|
|
4651
|
-
|
|
4652
|
-
|
|
4653
|
-
|
|
4692
|
+
className: "flex-1 py-2 bg-white/5 hover:bg-white/10 text-slate-300 text-[11px] font-medium rounded-lg transition-colors border border-white/5 mt-3"
|
|
4693
|
+
},
|
|
4694
|
+
"Limpar"
|
|
4695
|
+
), /* @__PURE__ */ React2.createElement(
|
|
4696
|
+
"button",
|
|
4697
|
+
{
|
|
4698
|
+
onClick: () => {
|
|
4699
|
+
onActivateQuestLens({
|
|
4700
|
+
assigneeId: questFilterAssignee,
|
|
4701
|
+
status: questFilterStatus,
|
|
4702
|
+
milestoneId: questFilterMilestone
|
|
4703
|
+
});
|
|
4704
|
+
setIsQuestLensMenuOpen(false);
|
|
4705
|
+
},
|
|
4706
|
+
className: "flex-[2] py-2 bg-indigo-600 hover:bg-indigo-500 text-white text-[11px] font-bold rounded-lg shadow-lg shadow-indigo-500/20 transition-all hover:scale-[1.02] active:scale-95 mt-3"
|
|
4707
|
+
},
|
|
4708
|
+
"Aplicar Lente"
|
|
4709
|
+
)))), /* @__PURE__ */ React2.createElement("div", { className: "relative" }, /* @__PURE__ */ React2.createElement(
|
|
4654
4710
|
"button",
|
|
4655
4711
|
{
|
|
4656
4712
|
onClick: () => setActiveSubMenu(
|
|
@@ -15421,7 +15477,7 @@ function XViewScene({
|
|
|
15421
15477
|
create_google_doc_action,
|
|
15422
15478
|
open_google_picker_action
|
|
15423
15479
|
}) {
|
|
15424
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
|
|
15480
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r;
|
|
15425
15481
|
const { data: session, status } = useSession();
|
|
15426
15482
|
const router = useRouter();
|
|
15427
15483
|
const searchParams = useSearchParams();
|
|
@@ -20454,10 +20510,10 @@ function XViewScene({
|
|
|
20454
20510
|
onOpenBoards: handleOpenBoards,
|
|
20455
20511
|
viewType: viewParams == null ? void 0 : viewParams.type,
|
|
20456
20512
|
viewName: viewParams == null ? void 0 : viewParams.name,
|
|
20457
|
-
milestones: (viewParams == null ? void 0 : viewParams.milestones) || [],
|
|
20513
|
+
milestones: ((_c = sceneDataRef.current) == null ? void 0 : _c.milestones) || (viewParams == null ? void 0 : viewParams.milestones) || [],
|
|
20458
20514
|
onOpenMilestoneManager: () => setIsMilestoneManagerOpen(true),
|
|
20459
|
-
view_google_folder_id: (
|
|
20460
|
-
view_google_folder_name: (
|
|
20515
|
+
view_google_folder_id: (_d = sceneDataRef.current) == null ? void 0 : _d.view_google_folder_id,
|
|
20516
|
+
view_google_folder_name: (_e = sceneDataRef.current) == null ? void 0 : _e.view_google_folder_name,
|
|
20461
20517
|
open_google_picker_action,
|
|
20462
20518
|
onSaveConfig: handleSaveConfig,
|
|
20463
20519
|
onNavigateBack: handleNavigateBack,
|
|
@@ -20489,8 +20545,8 @@ function XViewScene({
|
|
|
20489
20545
|
},
|
|
20490
20546
|
refEl: formRef,
|
|
20491
20547
|
existingTypes: existingNodeTypes,
|
|
20492
|
-
initialColor: (
|
|
20493
|
-
sourceTypes: (
|
|
20548
|
+
initialColor: (_f = creationMode.sourceNodeData) == null ? void 0 : _f.color,
|
|
20549
|
+
sourceTypes: (_g = creationMode.sourceNodeData) == null ? void 0 : _g.type,
|
|
20494
20550
|
onIntensityChange: handleGhostNodeIntensityChange,
|
|
20495
20551
|
onUploadFile: upload_file_action,
|
|
20496
20552
|
availableDatasets,
|
|
@@ -20499,7 +20555,7 @@ function XViewScene({
|
|
|
20499
20555
|
availableNodes: allAvailableNodes,
|
|
20500
20556
|
availableAncestries: allAvailableAncestries,
|
|
20501
20557
|
create_google_doc_action,
|
|
20502
|
-
view_google_folder_id: (
|
|
20558
|
+
view_google_folder_id: (_h = sceneDataRef.current) == null ? void 0 : _h.view_google_folder_id
|
|
20503
20559
|
}
|
|
20504
20560
|
),
|
|
20505
20561
|
versionMode.isActive && /* @__PURE__ */ React32.createElement(
|
|
@@ -20522,8 +20578,8 @@ function XViewScene({
|
|
|
20522
20578
|
...overlayHiddenStyle
|
|
20523
20579
|
},
|
|
20524
20580
|
refEl: formRef,
|
|
20525
|
-
fixedType: (
|
|
20526
|
-
fixedColor: (
|
|
20581
|
+
fixedType: (_i = versionMode.sourceNodeData) == null ? void 0 : _i.type,
|
|
20582
|
+
fixedColor: (_j = versionMode.sourceNodeData) == null ? void 0 : _j.color,
|
|
20527
20583
|
onUploadFile: upload_file_action,
|
|
20528
20584
|
availableNodes: allAvailableNodes,
|
|
20529
20585
|
availableAncestries: allAvailableAncestries
|
|
@@ -20561,12 +20617,12 @@ function XViewScene({
|
|
|
20561
20617
|
availableNodes: allAvailableNodes,
|
|
20562
20618
|
availableAncestries: allAvailableAncestries,
|
|
20563
20619
|
viewName: viewParams == null ? void 0 : viewParams.name,
|
|
20564
|
-
questCounter: ((
|
|
20620
|
+
questCounter: ((_k = sceneDataRef.current) == null ? void 0 : _k.quest_counter) || 1,
|
|
20565
20621
|
viewMembers,
|
|
20566
|
-
milestones: ((
|
|
20622
|
+
milestones: ((_l = sceneDataRef.current) == null ? void 0 : _l.milestones) || [],
|
|
20567
20623
|
onUpdateMilestones: handleUpdateMilestones,
|
|
20568
20624
|
create_google_doc_action,
|
|
20569
|
-
view_google_folder_id: (
|
|
20625
|
+
view_google_folder_id: (_m = sceneDataRef.current) == null ? void 0 : _m.view_google_folder_id
|
|
20570
20626
|
}
|
|
20571
20627
|
),
|
|
20572
20628
|
readingMode.isActive && readingMode.ancestry && /* @__PURE__ */ React32.createElement(
|
|
@@ -20700,10 +20756,10 @@ function XViewScene({
|
|
|
20700
20756
|
currentDatasetName: detailsNodeDatasetInfo == null ? void 0 : detailsNodeDatasetInfo.datasetName,
|
|
20701
20757
|
viewMembers,
|
|
20702
20758
|
currentUser: session == null ? void 0 : session.user,
|
|
20703
|
-
milestones: ((
|
|
20759
|
+
milestones: ((_n = sceneDataRef.current) == null ? void 0 : _n.milestones) || [],
|
|
20704
20760
|
onUpdateMilestones: handleUpdateMilestones,
|
|
20705
20761
|
create_google_doc_action,
|
|
20706
|
-
view_google_folder_id: (
|
|
20762
|
+
view_google_folder_id: (_o = sceneDataRef.current) == null ? void 0 : _o.view_google_folder_id,
|
|
20707
20763
|
setQuestTreeMode,
|
|
20708
20764
|
handleRenderQuestTree,
|
|
20709
20765
|
handleRenderQuestAbstractionTree,
|
|
@@ -20741,7 +20797,7 @@ function XViewScene({
|
|
|
20741
20797
|
userRole: userPermissionRole,
|
|
20742
20798
|
currentDatasetName: detailsNodeDatasetInfo == null ? void 0 : detailsNodeDatasetInfo.datasetName,
|
|
20743
20799
|
create_google_doc_action,
|
|
20744
|
-
view_google_folder_id: (
|
|
20800
|
+
view_google_folder_id: (_p = sceneDataRef.current) == null ? void 0 : _p.view_google_folder_id,
|
|
20745
20801
|
style: overlayHiddenStyle
|
|
20746
20802
|
}
|
|
20747
20803
|
),
|
|
@@ -20894,7 +20950,7 @@ function XViewScene({
|
|
|
20894
20950
|
{
|
|
20895
20951
|
isOpen: isMilestoneManagerOpen,
|
|
20896
20952
|
onClose: () => setIsMilestoneManagerOpen(false),
|
|
20897
|
-
milestones: ((
|
|
20953
|
+
milestones: ((_q = sceneDataRef.current) == null ? void 0 : _q.milestones) || [],
|
|
20898
20954
|
onUpdateMilestones: handleUpdateMilestones
|
|
20899
20955
|
}
|
|
20900
20956
|
),
|
|
@@ -20905,7 +20961,7 @@ function XViewScene({
|
|
|
20905
20961
|
onClose: () => setIsImportModalOpen(false),
|
|
20906
20962
|
onConfirm: handleConfirmImport,
|
|
20907
20963
|
session,
|
|
20908
|
-
parentDbs: ((
|
|
20964
|
+
parentDbs: ((_r = sceneDataRef.current) == null ? void 0 : _r.parent_dbs) || [],
|
|
20909
20965
|
onFetchAvailableFiles: import_parent_file_modal_get,
|
|
20910
20966
|
currentViewName: viewParams == null ? void 0 : viewParams.name,
|
|
20911
20967
|
currentAncestries: ancestryDataRef.current || []
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lv-x-software-house/x_view",
|
|
3
|
-
"version": "1.2.7-dev.
|
|
3
|
+
"version": "1.2.7-dev.4",
|
|
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",
|