@e-llm-studio/instant-learning 1.3.0-alpha.4 → 1.3.0-alpha.41
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/README.md +195 -5
- package/dist/cjs/features/IL-OTJ/ILOTJTest.js +1 -1
- package/dist/cjs/features/IL-OTJ/ValueTypeWrappers/TeachMePlugin.js +1 -1
- package/dist/cjs/features/IL-OTJ/ValueTypeWrappers/TeachMeWrapper.js +1 -1
- package/dist/cjs/features/IL-OTJ/_components/CitationLink.js +1 -1
- package/dist/cjs/features/IL-OTJ/_components/MarkdownRenderer.js +2 -0
- package/dist/cjs/features/IL-OTJ/_components/MarkdownRenderer.js.map +1 -0
- package/dist/cjs/features/IL-OTJ/_components/MarkdownRenderer.module.css.js +2 -0
- package/dist/cjs/features/IL-OTJ/_components/MarkdownRenderer.module.css.js.map +1 -0
- package/dist/cjs/features/IL-OTJ/_components/MessageRendering/ClickableChatComponents.js +1 -1
- package/dist/cjs/features/IL-OTJ/_components/MessageRendering/RuleValidationCard.js +1 -1
- package/dist/cjs/features/IL-OTJ/_components/templates/RuleComparison/AgentComposerRuleComparison.js +1 -1
- package/dist/cjs/features/IL-OTJ/_components/templates/RuleComparison/RuleComparison.js +1 -1
- package/dist/cjs/features/IL-OTJ/_components/templates/RuleComparison/RuleComparisonNew.js +1 -1
- package/dist/cjs/features/IL-OTJ/_components/templates/TrafficManager/CreateRule.js +1 -1
- package/dist/cjs/features/LearningManagement/AuditLog/AuditLog.js +1 -1
- package/dist/cjs/features/LearningManagement/AuditLog/ChangeLogDiff.js +2 -0
- package/dist/cjs/features/LearningManagement/AuditLog/ChangeLogDiff.js.map +1 -0
- package/dist/cjs/features/LearningManagement/LearningManagement.js +1 -1
- package/dist/cjs/features/LearningManagement/LearningTemplateLayout.js +1 -1
- package/dist/cjs/features/LearningManagement/RBAC/AccessManagementPanel.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/AddScopeApprovalSearchComponent.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/AddScopeModal.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/ApprovalLearningDialog.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/ContentLogic.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/RuleAccordionHeader.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/RuleContent.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/RuleHeader.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/RuleTierList.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/TierCard.js +1 -1
- package/dist/cjs/features/LearningManagement/RuleContent/VariantCard.js +1 -1
- package/dist/cjs/features/LearningManagement/Sidebar.js +1 -1
- package/dist/cjs/features/LearningManagement/apis/apiConfig.js +1 -1
- package/dist/cjs/features/LearningManagement/apis/scopeApis.js +1 -1
- package/dist/cjs/features/LearningManagement/components/ConfirmationModal.js +1 -1
- package/dist/cjs/features/LearningManagement/components/CreateRuleSetLegacyModal.js +1 -1
- package/dist/cjs/features/LearningManagement/components/InstantLearningModal.js +1 -1
- package/dist/cjs/features/LearningManagement/components/ScopeTree/TreeNode.js +1 -1
- package/dist/cjs/features/LearningManagement/components/StationOnboarding/StationOnboardModal.js +1 -1
- package/dist/cjs/features/LearningManagement/config.js +1 -1
- package/dist/cjs/features/LearningManagement/constants.js +2 -0
- package/dist/cjs/features/LearningManagement/constants.js.map +1 -0
- package/dist/cjs/features/LearningManagement/hooks/useLearningTemplateQueryParams.js +1 -1
- package/dist/cjs/features/LearningManagement/queries/useLMSConfigQuery.js +2 -0
- package/dist/cjs/features/LearningManagement/queries/useLMSConfigQuery.js.map +1 -0
- package/dist/cjs/features/LearningManagement/store/useLMSConfigStore.js +2 -0
- package/dist/cjs/features/LearningManagement/store/useLMSConfigStore.js.map +1 -0
- package/dist/cjs/features/LearningManagement/store/useLearningTemplateStore.js +1 -1
- package/dist/cjs/features/LearningManagement/store/usePermissionsStore.js +1 -1
- package/dist/cjs/features/LearningManagement/styles/TierCard.module.css.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/plugins/ValueTypes/Default/DefaultTeachMeRenderer.js +1 -1
- package/dist/cjs/plugins/ValueTypes/Guidelines/GuidelinesTeachMeRenderer.js +1 -1
- package/dist/features/IL-OTJ/ILOTJTest.js +1 -1
- package/dist/features/IL-OTJ/ValueTypeWrappers/TeachMePlugin.js +1 -1
- package/dist/features/IL-OTJ/ValueTypeWrappers/TeachMeWrapper.js +1 -1
- package/dist/features/IL-OTJ/_components/CitationLink.js +1 -1
- package/dist/features/IL-OTJ/_components/MarkdownRenderer.js +2 -0
- package/dist/features/IL-OTJ/_components/MarkdownRenderer.js.map +1 -0
- package/dist/features/IL-OTJ/_components/MarkdownRenderer.module.css.js +2 -0
- package/dist/features/IL-OTJ/_components/MarkdownRenderer.module.css.js.map +1 -0
- package/dist/features/IL-OTJ/_components/MessageRendering/ClickableChatComponents.js +1 -1
- package/dist/features/IL-OTJ/_components/MessageRendering/RuleValidationCard.js +1 -1
- package/dist/features/IL-OTJ/_components/templates/RuleComparison/AgentComposerRuleComparison.js +1 -1
- package/dist/features/IL-OTJ/_components/templates/RuleComparison/RuleComparison.js +1 -1
- package/dist/features/IL-OTJ/_components/templates/RuleComparison/RuleComparisonNew.js +1 -1
- package/dist/features/IL-OTJ/_components/templates/TrafficManager/CreateRule.js +1 -1
- package/dist/features/LearningManagement/AuditLog/AuditLog.js +1 -1
- package/dist/features/LearningManagement/AuditLog/ChangeLogDiff.js +2 -0
- package/dist/features/LearningManagement/AuditLog/ChangeLogDiff.js.map +1 -0
- package/dist/features/LearningManagement/LearningManagement.js +1 -1
- package/dist/features/LearningManagement/LearningTemplateLayout.js +1 -1
- package/dist/features/LearningManagement/RBAC/AccessManagementPanel.js +1 -1
- package/dist/features/LearningManagement/RuleContent/AddScopeApprovalSearchComponent.js +1 -1
- package/dist/features/LearningManagement/RuleContent/AddScopeModal.js +1 -1
- package/dist/features/LearningManagement/RuleContent/ApprovalLearningDialog.js +1 -1
- package/dist/features/LearningManagement/RuleContent/ContentLogic.js +1 -1
- package/dist/features/LearningManagement/RuleContent/RuleAccordionHeader.js +1 -1
- package/dist/features/LearningManagement/RuleContent/RuleContent.js +1 -1
- package/dist/features/LearningManagement/RuleContent/RuleHeader.js +1 -1
- package/dist/features/LearningManagement/RuleContent/RuleTierList.js +1 -1
- package/dist/features/LearningManagement/RuleContent/TierCard.js +1 -1
- package/dist/features/LearningManagement/RuleContent/VariantCard.js +1 -1
- package/dist/features/LearningManagement/Sidebar.js +1 -1
- package/dist/features/LearningManagement/apis/apiConfig.js +1 -1
- package/dist/features/LearningManagement/apis/scopeApis.js +1 -1
- package/dist/features/LearningManagement/components/ConfirmationModal.js +1 -1
- package/dist/features/LearningManagement/components/CreateRuleSetLegacyModal.js +1 -1
- package/dist/features/LearningManagement/components/InstantLearningModal.js +1 -1
- package/dist/features/LearningManagement/components/ScopeTree/TreeNode.js +1 -1
- package/dist/features/LearningManagement/components/StationOnboarding/StationOnboardModal.js +1 -1
- package/dist/features/LearningManagement/config.js +1 -1
- package/dist/features/LearningManagement/constants.js +2 -0
- package/dist/features/LearningManagement/constants.js.map +1 -0
- package/dist/features/LearningManagement/hooks/useLearningTemplateQueryParams.js +1 -1
- package/dist/features/LearningManagement/queries/useLMSConfigQuery.js +2 -0
- package/dist/features/LearningManagement/queries/useLMSConfigQuery.js.map +1 -0
- package/dist/features/LearningManagement/store/useLMSConfigStore.js +2 -0
- package/dist/features/LearningManagement/store/useLMSConfigStore.js.map +1 -0
- package/dist/features/LearningManagement/store/useLearningTemplateStore.js +1 -1
- package/dist/features/LearningManagement/store/usePermissionsStore.js +1 -1
- package/dist/features/LearningManagement/styles/TierCard.module.css.js +1 -1
- package/dist/index.js +1 -1
- package/dist/plugins/ValueTypes/Default/DefaultTeachMeRenderer.js +1 -1
- package/dist/plugins/ValueTypes/Guidelines/GuidelinesTeachMeRenderer.js +1 -1
- package/dist/types/src/features/IL-OTJ/ILOTJTest.d.ts +597 -0
- package/dist/types/src/features/IL-OTJ/ILOTJTest.d.ts.map +1 -1
- package/dist/types/src/features/IL-OTJ/ValueTypeWrappers/TeachMePlugin.d.ts.map +1 -1
- package/dist/types/src/features/IL-OTJ/ValueTypeWrappers/TeachMeWrapper.d.ts.map +1 -1
- package/dist/types/src/features/IL-OTJ/_components/CitationLink.d.ts.map +1 -1
- package/dist/types/src/features/IL-OTJ/_components/MarkdownRenderer.d.ts +25 -0
- package/dist/types/src/features/IL-OTJ/_components/MarkdownRenderer.d.ts.map +1 -0
- package/dist/types/src/features/IL-OTJ/_components/MessageRendering/ClickableChatComponents.d.ts.map +1 -1
- package/dist/types/src/features/IL-OTJ/_components/MessageRendering/RuleValidationCard.d.ts.map +1 -1
- package/dist/types/src/features/IL-OTJ/_components/index.d.ts +2 -0
- package/dist/types/src/features/IL-OTJ/_components/index.d.ts.map +1 -1
- package/dist/types/src/features/IL-OTJ/_components/templates/RuleComparison/RuleComparison.d.ts.map +1 -1
- package/dist/types/src/features/IL-OTJ/_components/templates/TrafficManager/CreateRule.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/AuditLog/AuditLog.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/AuditLog/ChangeLogDiff.d.ts +15 -0
- package/dist/types/src/features/LearningManagement/AuditLog/ChangeLogDiff.d.ts.map +1 -0
- package/dist/types/src/features/LearningManagement/LearningManagement.d.ts +2 -1
- package/dist/types/src/features/LearningManagement/LearningManagement.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/LearningManagementTest.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/LearningTemplateLayout.d.ts +1 -0
- package/dist/types/src/features/LearningManagement/LearningTemplateLayout.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RBAC/AccessManagementPanel.d.ts +1 -0
- package/dist/types/src/features/LearningManagement/RBAC/AccessManagementPanel.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/AddScopeModal.d.ts +1 -0
- package/dist/types/src/features/LearningManagement/RuleContent/AddScopeModal.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/ApprovalLearningDialog.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/ContentLogic.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/RuleAccordionHeader.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/RuleContent.d.ts +1 -0
- package/dist/types/src/features/LearningManagement/RuleContent/RuleContent.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/RuleHeader.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/RuleTierList.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/TierCard.d.ts +1 -0
- package/dist/types/src/features/LearningManagement/RuleContent/TierCard.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/VariantCard.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/Sidebar.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/apis/apiConfig.d.ts +4 -0
- package/dist/types/src/features/LearningManagement/apis/apiConfig.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/apis/scopeApis.d.ts +25 -3
- package/dist/types/src/features/LearningManagement/apis/scopeApis.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/components/ConfirmationModal.d.ts +2 -1
- package/dist/types/src/features/LearningManagement/components/ConfirmationModal.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/components/CreateRuleSetLegacyModal.d.ts +1 -0
- package/dist/types/src/features/LearningManagement/components/CreateRuleSetLegacyModal.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/components/InstantLearningModal.d.ts +1 -0
- package/dist/types/src/features/LearningManagement/components/InstantLearningModal.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/components/ScopeTree/TreeNode.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/components/StationOnboarding/StationOnboardModal.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/constants.d.ts +9 -0
- package/dist/types/src/features/LearningManagement/constants.d.ts.map +1 -0
- package/dist/types/src/features/LearningManagement/hooks/useLearningTemplateQueryParams.d.ts +2 -0
- package/dist/types/src/features/LearningManagement/hooks/useLearningTemplateQueryParams.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/queries/useLMSConfigQuery.d.ts +2 -0
- package/dist/types/src/features/LearningManagement/queries/useLMSConfigQuery.d.ts.map +1 -0
- package/dist/types/src/features/LearningManagement/store/useLMSConfigStore.d.ts +188 -0
- package/dist/types/src/features/LearningManagement/store/useLMSConfigStore.d.ts.map +1 -0
- package/dist/types/src/features/LearningManagement/store/useLearningTemplateStore.d.ts +2 -0
- package/dist/types/src/features/LearningManagement/store/useLearningTemplateStore.d.ts.map +1 -1
- package/dist/types/src/features/LearningManagement/store/usePermissionsStore.d.ts +2 -1
- package/dist/types/src/features/LearningManagement/store/usePermissionsStore.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/plugins/ValueTypes/Default/DefaultTeachMeRenderer.d.ts +2 -8
- package/dist/types/src/plugins/ValueTypes/Default/DefaultTeachMeRenderer.d.ts.map +1 -1
- package/dist/types/src/plugins/ValueTypes/Default/DefaultTeachMeRendererOld.d.ts +28 -0
- package/dist/types/src/plugins/ValueTypes/Default/DefaultTeachMeRendererOld.d.ts.map +1 -0
- package/package.json +9 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{__assign as e}from"tslib";import{jsxs as t,jsx as o}from"react/jsx-runtime";import{useState as i,useMemo as n,useEffect as a}from"react";import{AuditLog as r}from"@e-llm-studio/audit-log";import"@e-llm-studio/audit-log/dist/styles.css";import{User as l,ExternalLink as c}from"lucide-react";import s from"./ChangeLogDiff.js";import{dt as d}from"../store/useLMSConfigStore.js";import p from"../RBAC/AccessPanel.module.css.js";import{usePermissionsStore as h}from"../store/usePermissionsStore.js";import g from"../store/useEnvStore.js";var u=function(u){var m=u.configId,f=u.ruleData,b=u.scopeId,y=u.scopeName,x=(null==y?void 0:y.trim())||"Selected",v=i("scope"),w=v[0],C=v[1],S=h(function(e){return e.hasPermission}),T=g(function(e){var t;return(null===(t=e.rbacConfig)||void 0===t?void 0:t.applicationResourceId)||""}),L=Boolean(b&&S("ilotj.scope.changeLog.view",b)),A=Boolean(T&&S("ilotj.application.changeLog.view",T)),k=n(function(){var e=[];return b&&e.push(b),e},[f,b]);a(function(){console.log("Flattened External Resource IDs:",k)},[k]);var D={configId:m,getData:{baseUrl:"https://dev.appmod.ai",endpoint:"/changelog/audit-log/fetch"},distinctValuesApi:{baseUrl:"https://dev.appmod.ai",endpoint:"/changelog/audit-log/distinct-values"},sidebar:{config:{showAnalystFilter:!0,showDateFilter:!0,showChangeTitleFilter:!0,showImpactPercentage:!1},labels:{title:"Filters",multiSelectLabel:"Modified By",multiSelectHint:"Filter by the user who made the change",changeTitleLabel:"Change Action",changeTitleHint:"Filter by Actions"}},table:{tableProps:{scrollable:!0,scrollHeight:"80vh",showGridlines:!0,size:"small",rowClassName:function(){return"custom-compact-row"},pt:{bodyCell:{style:{paddingTop:"4px",paddingBottom:"4px"}}}},hiddenColumns:["actions","changeSummary","changeDateTime","logId"],extraColumns:[{key:"modifiedBy",header:"Modified By",body:function(i){return t("div",e({style:{display:"flex",alignItems:"center",gap:"8px"}},{children:[o(l,{size:16,color:"#64748b",style:{flexShrink:0}}),o("span",e({style:{fontWeight:500}},{children:i.modifiedBy}))]}))},style:{width:"15%",minWidth:"140px"}},{key:"changeAction",header:"Action",body:function(t){var i,n,a=(i=t.changeTitle,(n=(i||"").toUpperCase()).includes("CREATE")?{color:"#2e7d32",backgroundColor:"#edf7ed",borderColor:"#c8e6c9",boxShadow:"0 1px 2px rgba(46, 125, 50, 0.08)"}:n.includes("UPDATE")||n.includes("TOGGLE")?{color:"#1565c0",backgroundColor:"#e3f2fd",borderColor:"#bbdefb",boxShadow:"0 1px 2px rgba(21, 101, 192, 0.08)"}:n.includes("DELETE")?{color:"#c62828",backgroundColor:"#fdeeed",borderColor:"#ffcdd2",boxShadow:"0 1px 2px rgba(198, 40, 40, 0.08)"}:{color:"#475569",backgroundColor:"#f8fafc",borderColor:"#cbd5e1",boxShadow:"0 1px 2px rgba(15, 23, 42, 0.06)"}),r=t.changeTitle?t.changeTitle.replace(/_/g," "):"—";return o("span",e({style:{color:a.color,backgroundColor:a.backgroundColor,border:"1px solid ".concat(a.borderColor),boxShadow:a.boxShadow,padding:"6px 12px",borderRadius:"999px",fontSize:"12px",lineHeight:1,fontWeight:600,display:"inline-block",minWidth:"76px",textAlign:"center",textTransform:"capitalize"}},{children:r}))},style:{width:"15%",textAlign:"center"}},{key:"customChangeSummary",header:"Change Summary",body:function(e){var t;return o(s,{change:null!==(t=e.actionText)&&void 0!==t?t:"-"})},style:{width:"30%",minWidth:"200px"}},{key:"redirectLink",header:"Link",body:function(i){var n,a=(null===(n=i.metadata)||void 0===n?void 0:n.redirect_url)||i.redirect_url;return a?o("div",e({style:{display:"flex",justifyContent:"center",alignItems:"center"}},{children:t("a",e({href:a,target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",gap:"6px",color:"#2563eb",textDecoration:"none",fontWeight:500,fontSize:"13px"}},{children:["View ",o(c,{size:14})]}))})):o("span",e({style:{color:"#94a3b8",display:"flex",justifyContent:"center"}},{children:"—"}))},style:{width:"10%",minWidth:"90px",textAlign:"center"}},{key:"customChangeDateTime",header:"Change Time and Date",body:function(i){if(!i.actionDate)return o("span",e({style:{color:"#94a3b8"}},{children:"—"}));var n=new Date(i.actionDate),a=n.toLocaleDateString("en-US",{month:"short",day:"2-digit",year:"numeric"}),r=n.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"});return t("div",e({style:{display:"flex",flexDirection:"column",alignItems:"center",gap:"4px",fontSize:"13px",color:"#475569"}},{children:[o("span",e({style:{fontWeight:500}},{children:a})),o("span",{children:r})]}))},style:{width:"15%",minWidth:"150px",textAlign:"center"}}]},filters:{config:{showFilterButton:!0,showSort:!0,showDate:!0,showSearch:!0,sortOptions:{latest:!0,oldest:!0,impactHighToLow:!1,impactLowToHigh:!1}}}};return t("div",e({style:{padding:"24px",fontFamily:"Arial, sans-serif"}},{children:[t("div",e({style:{marginBottom:"16px",paddingBottom:"4px"}},{children:[o("h1",e({style:{margin:0,color:"#334155",fontSize:"20px",fontWeight:700,lineHeight:1.25}},{children:d("history.title","".concat(x," - Audit Log"),{scope_name:x})})),o("p",e({style:{margin:"8px 0 0",color:"#667085",fontSize:"16px",fontWeight:500,lineHeight:1}},{children:d("history.subtitle","Track all learning updates and modifications with the ".concat(x," scope."),{scope_name:x})}))]})),t("div",e({className:p.accessTabs,role:"tablist","aria-label":"Audit log level"},{children:[o("button",e({type:"button",role:"tab","aria-selected":"scope"===w,className:"".concat(p.accessTab," ").concat("scope"===w?p.accessTabActive:""),onClick:function(){return C("scope")},disabled:!L,title:L?"":"You do not have permission to view scope level change log"},{children:d("history.scopeLevel","Scope Level")})),o("button",e({type:"button",role:"tab","aria-selected":"application"===w,className:"".concat(p.accessTab," ").concat("application"===w?p.accessTabActive:""),onClick:function(){return C("application")},disabled:!A,title:A?"":"You do not have permission to view application level change log"},{children:d("history.applicationLevel","Application Level")}))]})),"scope"===w?o(r,e({},D,{query:{externalResourceId:k.length>0?k:[""],paginationLimit:10}}),"scope-audit-log"):o(r,e({},D,{query:{externalResourceId:[],paginationLimit:10}}),"application-audit-log")]}))};export{u as default};
|
|
2
2
|
//# sourceMappingURL=AuditLog.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{__assign as e,__spreadArray as r}from"tslib";import{jsx as n,jsxs as t,Fragment as a}from"react/jsx-runtime";import{useState as i}from"react";import{Layers as o,BookOpen as l,GitBranch as d,ChevronUp as c,ChevronDown as p}from"lucide-react";var f={scope:{label:"Scope",icon:n(o,{size:11}),accent:"#6d28d9",accentBg:"#f5f3ff",accentBorder:"#ddd6fe"},learning:{label:"Learning",icon:n(l,{size:11}),accent:"#1d4ed8",accentBg:"#eff6ff",accentBorder:"#bfdbfe"},variant:{label:"Variant",icon:n(d,{size:11}),accent:"#b45309",accentBg:"#fffbeb",accentBorder:"#fde68a"}},s={label:"Change",icon:null,accent:"#475569",accentBg:"#f8fafc",accentBorder:"#e2e8f0"},u={created:{label:"Created",color:"#15803d",bg:"#f0fdf4",border:"#bbf7d0"},updated:{label:"Updated",color:"#92400e",bg:"#fffbeb",border:"#fde68a"},deleted:{label:"Deleted",color:"#b91c1c",bg:"#fef2f2",border:"#fecaca"}},g=function(e,n){var t=new Set(r(r([],Object.keys(e),!0),Object.keys(n),!0));return Array.from(t).filter(function(r){var t,a;return String(null!==(t=e[r])&&void 0!==t?t:"")!==String(null!==(a=n[r])&&void 0!==a?a:"")})},b=function(e,r){void 0===r&&(r=28);var n=Array.isArray(e)?e.join(", "):String(null!=e?e:"—");return n.length>r?n.slice(0,r)+"…":n||"—"},x=function(r){var t=r.cols;return n("div",e({style:{display:"grid",gridTemplateColumns:t.map(function(){return"1fr"}).join(" "),gap:"6px",padding:"2px 6px 4px",fontSize:"9px",fontWeight:700,color:"#94a3b8",textTransform:"uppercase",letterSpacing:"0.07em",borderBottom:"1px solid #e2e8f0",marginBottom:"2px"}},{children:t.map(function(e){return n("span",{children:e},e)})}))},h=function(r){var a=r.label,i=r.value,o=r.mode;return t("div",e({style:{display:"grid",gridTemplateColumns:"1fr 1.4fr",gap:"6px",alignItems:"start",padding:"3px 6px",borderRadius:"5px",fontSize:"11px",lineHeight:1.4}},{children:[n("span",e({style:{color:"#64748b",fontWeight:500}},{children:a})),n("span",e({style:{color:"created"===o?"#15803d":"#b91c1c",background:"created"===o?"#f0fdf4":"#fef2f2",border:"1px solid ".concat("created"===o?"#bbf7d0":"#fecaca"),borderRadius:"4px",padding:"1px 5px",wordBreak:"break-word",fontWeight:500},title:Array.isArray(i)?i.join(", "):String(null!=i?i:"—")},{children:b(i)}))]}))},y=function(r){var a=r.label,i=r.before,o=r.after,l=r.changed;return t("div",e({style:{display:"grid",gridTemplateColumns:"1fr 1fr 1fr",gap:"6px",alignItems:"start",padding:"3px 6px",borderRadius:"5px",background:l?"rgba(255,251,235,0.7)":"transparent",fontSize:"11px",lineHeight:1.4}},{children:[n("span",e({style:{color:"#64748b",fontWeight:500}},{children:a})),n("span",e({style:{color:l?"#b91c1c":"#94a3b8",background:l?"#fff1f0":"transparent",border:l?"1px solid #fecaca":"none",borderRadius:"4px",padding:l?"1px 5px":"0",textDecoration:l?"line-through":"none",wordBreak:"break-word",opacity:l?1:.6},title:Array.isArray(i)?i.join(", "):String(null!=i?i:"—")},{children:b(i)})),n("span",e({style:{color:l?"#15803d":"#475569",background:l?"#f0fdf4":"transparent",border:l?"1px solid #bbf7d0":"none",borderRadius:"4px",padding:l?"1px 5px":"0",fontWeight:l?600:400,wordBreak:"break-word"},title:Array.isArray(o)?o.join(", "):String(null!=o?o:"—")},{children:b(o)}))]}))},v=function(i){var o=i.mode,l=i.before,d=i.after,c=Array.from(new Set(r(r([],Object.keys(l),!0),Object.keys(d),!0))),p=g(l,d);if(0===c.length)return n("span",e({style:{fontSize:"11px",color:"#94a3b8",padding:"4px 6px"}},{children:"No details available"}));var f=c;return t(a,{children:[n(x,"updated"===o?{cols:["Field","Before","After"]}:{cols:["Field","created"===o?"Value":"Was"]}),f.map(function(e){return"updated"===o?n(y,{label:e,before:l[e],after:d[e],changed:p.includes(e)},e):n(h,{label:e,value:"created"===o?d[e]:l[e],mode:o},e)})]})},m=function(r){return n(v,e({},r))},S=function(r){return n(v,e({},r))},k=function(r){return n(v,e({},r))},w=function(a){var o,l,d,b,x,h=a.change,y=i(!1),w=y[0],B=y[1],j=function(e){if(!e)return null;if("object"==typeof e&&e.data)return e;if("string"==typeof e)try{var r=JSON.parse(e);if(null==r?void 0:r.data)return r}catch(e){return null}return null}(h);if(!j)return n("span",e({style:{color:"#334155",fontSize:"13px",lineHeight:1.5}},{children:"string"==typeof h?h:"—"}));var T=j.action,z=j.data,W=null!==(o=null==z?void 0:z.before)&&void 0!==o?o:{},A=null!==(l=null==z?void 0:z.after)&&void 0!==l?l:{},D=function(e,r){var n=e&&Object.keys(e).length>0,t=r&&Object.keys(r).length>0;return n&&t?"updated":t?"created":"deleted"}(W,A),O=null!==(b=null===(d=null==z?void 0:z.type)||void 0===d?void 0:d.toLowerCase())&&void 0!==b?b:"",R=null!==(x=f[O])&&void 0!==x?x:s,C=u[D],H=g(W,A),I=Array.from(new Set(r(r([],Object.keys(W),!0),Object.keys(A),!0))),L=I.length>0,V=function(e,r,n,t){var a="deleted"===r?n:t;switch(e){case"scope":return"Name: ".concat((null==a?void 0:a.name)||"—",", Description: ").concat((null==a?void 0:a.description)||"—",", Type: ").concat((null==a?void 0:a.scopeType)||"—");case"learning":return"Title: ".concat((null==a?void 0:a.LearningTitle)||"—",", Tier: ").concat((null==a?void 0:a.Tier)||"—");case"variant":return"Title: ".concat((null==a?void 0:a.Learning)||"—",", Description: ").concat((null==a?void 0:a["Variant Description"])||(null==a?void 0:a.VariantDescription)||(null==a?void 0:a.Description)||"—",", Tier: ").concat((null==a?void 0:a.Tier)||"—");default:return"Details available in table below."}}(O,D,W,A),N={mode:D,before:W,after:A};return t("div",e({style:{display:"flex",flexDirection:"column",gap:"8px",minWidth:0,padding:"4px 0"}},{children:[t("div",e({style:{display:"flex",alignItems:"center",gap:"6px",flexWrap:"wrap"}},{children:[t("span",e({style:{display:"inline-flex",alignItems:"center",gap:"3px",fontSize:"11px",fontWeight:600,color:R.accent,background:R.accentBg,border:"1px solid ".concat(R.accentBorder),borderRadius:"999px",padding:"2px 8px"}},{children:[R.icon,R.label]})),n("span",e({style:{fontSize:"11px",fontWeight:700,color:R.accent,background:R.accentBg,border:"1px solid ".concat(R.accentBorder),borderRadius:"999px",padding:"2px 8px",whiteSpace:"nowrap"}},{children:T})),t("span",e({style:{fontSize:"11px",fontWeight:600,color:C.color,background:C.bg,border:"1px solid ".concat(C.border),borderRadius:"999px",padding:"2px 8px",whiteSpace:"nowrap"}},{children:[C.label,"updated"===D&&H.length>0&&" · ".concat(H.length," field").concat(1!==H.length?"s":"")]}))]})),n("div",e({style:{fontSize:"13px",color:"#1e293b",fontWeight:400,lineHeight:1.5,marginLeft:"2px"}},{children:V})),L&&t("button",e({onClick:function(){return B(function(e){return!e})},style:{display:"inline-flex",alignItems:"center",gap:"4px",background:"none",border:"none",cursor:"pointer",color:R.accent,fontSize:"11px",fontWeight:600,padding:"2px",alignSelf:"flex-start",marginTop:"-2px"}},{children:[n(w?c:p,{size:13}),w?"Hide diff table":"Show details (".concat(I.length," fields)")]})),w&&L&&n("div",e({style:{display:"flex",flexDirection:"column",gap:"2px",background:"#f8fafc",border:"1px solid #e2e8f0",borderRadius:"8px",padding:"6px 4px 4px",overflow:"hidden",marginTop:"4px"}},{children:function(){switch(O){case"scope":return n(m,e({},N));case"learning":return n(S,e({},N));case"variant":return n(k,e({},N));default:return n(v,e({},N))}}()}))]}))};export{w as default};
|
|
2
|
+
//# sourceMappingURL=ChangeLogDiff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChangeLogDiff.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__spreadArray as e,__assign as t,__awaiter as n,__generator as r}from"tslib";import{jsx as o,jsxs as s,Fragment as i}from"react/jsx-runtime";import{useState as a,useRef as l,useEffect as c}from"react";import{BookOpen as u,Users as d,History as p}from"lucide-react";import{useLearningTemplateStore as m}from"./store/useLearningTemplateStore.js";import{Toast as f}from"primereact/toast";import v from"./styles/LearningTemplateManagement.module.css.js";import g from"./LearningTemplateLayout.js";import h from"./components/EmptyLearningState.js";import y from"./store/useAuthStore.js";import{fetchTiers as S,fetchScopes as b,inheritScope as C,inheritScopeBackwardCompatible as T,createRuleSet as E,renameScope as L,deleteRuleSet as A,requestAccess as O}from"./apis/scopeApis.js";import{QUERY_PARAM_KEYS as w,setQueryParams as I}from"./hooks/useLearningTemplateQueryParams.js";import R from"./components/ConfirmationModal.js";import j from"./components/LearningTemplateManagementSkeleton.js";import{findNodePathById as N}from"./utils/treeUtils.js";import k from"./store/useEnvStore.js";import{useConfigStore as D}from"./store/useConfigStore.js";import{TooltipProvider as _}from"./components/ToolTip.js";import P from"./components/CreateRuleSetLegacyModal.js";import{usePermissionsStore as U}from"./store/usePermissionsStore.js";import{useAppSecRolesStore as G}from"./store/useAppSecRolesStore.js";import{useGetAppSecRolesQuery as M}from"./queries/useApprovalQueries.js";import B from"./RuleContent/AddScopeModal.js";import{useLocation as F}from"react-router-dom";import q from"./shared/SuccessToastContent.js";import x from"./shared/ErrorToastContent.js";import H from"./RuleContent/RenameScopeModal.js";var Q=[{id:"learnings",label:"Learnings",icon:u,badgeKey:"learningsCount"},{id:"access",label:"Access",icon:d},{id:"history",label:"Change History",icon:p}],z=new Set(Q.map(function(e){return e.id}));function K(u){var d,p=this,K=u.userDetails,V=u.llmStudioUrl,W=u.audacyBackendUrl,Y=u.ilLabels,J=u.config,X=u.rbacConfig,Z=u.auditLogConfig,$=u.app_integration_id,ee=u.backwardCompatibility,te=void 0!==ee&&ee,ne=m(function(e){return e.selectedRuleSetId}),re=m(function(e){return e.setSelectedRuleSetId}),oe=m(function(e){return e.error}),se=m(function(e){return e.setError}),ie=m(function(e){return e.setStations}),ae=m(function(e){return e.scopeTreeData}),le=m(function(e){return e.setScopeTreeData}),ce=a({isOpen:!1,type:"GLOBAL"}),ue=ce[0],de=ce[1],pe=a(!1),me=pe[0],fe=pe[1],ve=a(!1),ge=ve[0],he=ve[1],ye=a("learnings"),Se=ye[0],be=ye[1],Ce=a(null),Te=Ce[0],Ee=Ce[1],Le=a(null),Ae=Le[0],Oe=Le[1],we=l(null),Ie=l(null),Re=l(null),je=y();je.user;var Ne=je.setUser,ke=D(),De=ke.setConfig,_e=ke.setIlLabels,Pe=e([{type:"GLOBAL",label:"Global",addChildLabel:"Add Scope",addChildType:"SCOPE"},t({type:"SCOPE",label:"Scope"},!te&&{addChildLabel:"Add Subscope",addChildType:"SUBSCOPE"})],te?[]:[{type:"SUBSCOPE",label:"Subscope"}],!0),Ue=function(){try{return F()}catch(e){return{search:""}}}();c(function(){var e=new URLSearchParams(window.location.search),t=e.get(w.RULESET_ID),n=e.get(w.SECTION),r=n&&z.has(n)?n:"learnings";(null==t?void 0:t.length)&&re&&be&&(re(t),be(r))},[null==Ue?void 0:Ue.search,be,re]);var Ge=U(function(e){return e.fetchPermissions}),Me=U(function(e){return e.hasPermission}),Be=G(function(e){return e.setRoles}),Fe=k(function(e){return e.appsecRbacUrl})===X.appsecRbacUrl,qe=M(X.applicationId,Fe).data;c(function(){qe&&Be(qe.map(function(e){return{_id:e._id,name:e.name}}))},[qe,Be]),c(function(){var e;console.log("userDetails",K),Ne(K),console.log("llmStudioUrl",V),console.log("audacyBackendUrl",W),k.getState().setLlmStudioUrl(V),k.getState().setAudacyBackendUrl(W),k.getState().setRbacConfig(X),k.getState().setAuditLogConfig(Z),De(J),_e(Y),m.getState().setAppIntegrationId(null!=$?$:null),m.getState().setBackwardCompatibility(te),m.getState().setToken(null!==(e=K.accessToken)&&void 0!==e?e:null)},[K,Ne,V,W,X,Z,J,De,Y,_e,$,te]),c(function(){(null==K?void 0:K.accessToken)&&V&&S()},[$,null==K?void 0:K.accessToken,V]);var xe=function(e){return void 0===e&&(e=!0),n(p,void 0,void 0,function(){var n,o,s,i,a,l;return r(this,function(r){switch(r.label){case 0:e&&fe(!0),se(null),r.label=1;case 1:return r.trys.push([1,4,5,6]),[4,Ge(X.applicationId)];case 2:return r.sent(),n=function(e){if(!U.getState().hasPermission("ilotj.scope.view",e.id))return null;var r=e.children?e.children.map(function(e){return n(e)}).filter(function(e){return null!==e}):[];return t(t({},e),{children:r})},[4,b($,K.accessToken)];case 3:return(o=r.sent())&&o.data&&o.data.data&&(s=o.data.data,Array.isArray(s)&&(s=s.length>0?s[0]:null),s?(i=n(s))?(Ee(null),le({data:i}),Ie.current?(re(Ie.current),be("learnings"),Ie.current=null):m.getState().selectedRuleSetId||re(i.id)):(Ee(null!==(l=s.id)&&void 0!==l?l:null),le(null)):(Ee(null),le(null))),[3,6];case 4:return a=r.sent(),console.error("Failed to fetch rule sets or permissions",a),se("Failed to load data. Please try again later."),[3,6];case 5:return fe(!1),[7];case 6:return[2]}})})};c(function(){var e;(null===(e=null==K?void 0:K.accessToken)||void 0===e?void 0:e.length)&&Fe?xe(!0):console.warn("Error: Trying to fetch rules without access token",K)},[null==K?void 0:K.accessToken,se,ie,X.applicationId,Fe]);var He=function(e){return n(p,void 0,void 0,function(){var n,s,i,a;return r(this,function(r){switch(r.label){case 0:he(!0),r.label=1;case 1:return r.trys.push([1,4,5,6]),ue.scopeId?[4,L({scope_id:ue.scopeId,scope_name:e})]:[2];case 2:return r.sent(),[4,xe(!0)];case 3:return r.sent(),de(function(e){return t(t({},e),{isOpen:!1})}),[3,6];case 4:throw n=r.sent(),console.error("An error occurred during scope rename.",n),null===(s=Re.current)||void 0===s||s.show({severity:"error",sticky:!1,className:v.errorToast,content:o(x,{message:(null===(a=null===(i=null==n?void 0:n.response)||void 0===i?void 0:i.data)||void 0===a?void 0:a.message)||"There was an error renaming the scope. Please try again."})}),n;case 5:return he(!1),[7];case 6:return[2]}})})},Qe=function(e,o,s){return n(p,void 0,void 0,function(){var n,o,s,i,a,l,c,u;return r(this,function(r){switch(r.label){case 0:he(!0),r.label=1;case 1:return r.trys.push([1,4,5,6]),[4,A(e,K.accessToken)];case 2:return r.sent(),m.getState().selectedRuleSetId===e&&(n=m.getState().scopeTreeData,(o=N((null==n?void 0:n.data)||null,e))&&o.length>1&&(s=o[o.length-2],re(s),be("learnings"))),[4,xe(!0)];case 3:return r.sent(),de(function(e){return t(t({},e),{isOpen:!1})}),null===(a=Re.current)||void 0===a||a.show({severity:"success",summary:"Deleted Successfully",detail:"The scope was permanently removed."}),[3,6];case 4:return i=r.sent(),console.error("An error occurred during scope deletion.",i),null===(l=Re.current)||void 0===l||l.show({severity:"error",summary:"Delete Failed",detail:(null===(u=null===(c=null==i?void 0:i.response)||void 0===c?void 0:c.data)||void 0===u?void 0:u.message)||"There was an error deleting the scope. Please try again."}),[3,6];case 5:return he(!1),[7];case 6:return[2]}})})},ze=ae,Ke=Ae?{data:{id:Ae.stationId,name:Ae.stationName,type:"STATION",metrics:{learningsCount:Ae.learningsCount,stationsCount:0},children:[]}}:ze,Ve=!!(null==Ke?void 0:Ke.data);null===(d=null==Ke?void 0:Ke.data)||void 0===d||d.type;var We=U(function(e){return e.hasGlobalPermission})("ilotj.scope.global.create",X.applicationResourceId||""),Ye=(Ae?Q.filter(function(e){return"stations"!==e.id}):Q).filter(function(e){return!(!te&&"access"===e.id)});return o(_,{children:s("div",t({className:v.learningManagementContainer},{children:[o("div",t({className:v.mainWrapper},{children:me?o(j,{}):oe?s("div",t({className:v.errorContainer},{children:[o("div",t({className:v.errorTitle},{children:"Error Loading Data"})),o("p",t({className:v.errorDesc},{children:oe})),o("button",t({onClick:function(){return xe(!0)},className:v.tryAgainBtn},{children:"Try Again"}))]})):Ve?o(g,{onOpenCreateModal:function(){return de({isOpen:!0,type:"GLOBAL"})},onAddChild:function(e,t,n){return de({isOpen:!0,type:t,parentId:e,parentName:n})},onRenameChild:function(e,t){return de({isOpen:!0,type:"RENAME",scopeId:e,initialName:t})},onDeleteChild:function(e,t,o){return n(p,void 0,void 0,function(){var n,s,i;return r(this,function(r){switch(r.label){case 0:return n=m.getState().scopeTreeData,s=N((null==n?void 0:n.data)||null,e),i=!!s&&3===s.length,0!==o?[3,2]:[4,Qe(e)];case 1:return r.sent(),[3,3];case 2:de({isOpen:!0,type:"DELETE",scopeId:e,initialName:t,isSubscope:i}),r.label=3;case 3:return[2]}})})},canDeleteScope:function(e){return Me("ilotj.scope.delete",e)},canEditScope:function(e){return Me("ilotj.scope.edit",e)},canCreateScope:function(e){return Me("ilotj.scope.create",e)},onSectionSelect:function(e,t){var n;console.log("Section Selected:",{scopeId:e,sectionId:t}),I(((n={})[w.SECTION]="learnings"===t?null:t,n)),be(t),re(e)},activeSectionId:Se,scopeTreeData:Ke,sectionsConfig:Ye,onViewStation:function(e){we.current=ne,Oe(e),be("learnings"),re(e.stationId)},onRefreshRuleSets:function(e,t){void 0===e&&(e=!0),t&&(Ie.current=t),xe(e)},nodeTypesConfig:Pe,app_integration_id:$,token:K.accessToken}):o(h,{onCreate:function(){return de({isOpen:!0,type:"GLOBAL"})},title:"No Global Scope has been added!",desc:"Start by creating a Global scope to define base learnings that apply across all stations.",button:"Create Global Scope",canCreateRule:We,noAccessTitle:"Access Restricted",noAccessDesc:"You do not have access to create a Global scope for this application.",onRequestAccess:function(){return n(p,void 0,void 0,function(){var e,t,n,s,i,a,l,c,u;return r(this,function(r){switch(r.label){case 0:if(!(e=(null===(s=null===(n=m.getState().scopeTreeData)||void 0===n?void 0:n.data)||void 0===s?void 0:s.id)||Te))return null===(i=Re.current)||void 0===i||i.show({severity:"error",sticky:!1,className:v.errorToast,content:o(x,{message:"Unable to identify the global scope for this access request."})}),[2];r.label=1;case 1:return r.trys.push([1,3,,4]),[4,O(e)];case 2:return r.sent(),null===(a=Re.current)||void 0===a||a.show({severity:"success",sticky:!1,life:3e3,className:v.successToast,content:o(q,{message:"Access request submitted successfully!"})}),[3,4];case 3:return t=r.sent(),null===(l=Re.current)||void 0===l||l.show({severity:"error",sticky:!1,className:v.errorToast,content:o(x,{message:(null===(u=null===(c=null==t?void 0:t.response)||void 0===c?void 0:c.data)||void 0===u?void 0:u.detail)||"Failed to request access. Please try again."})}),[3,4];case 4:return[2]}})})}})})),o(f,{ref:Re,pt:{root:{style:{zIndex:9999}}}}),te&&ue.isOpen&&"DELETE"!==ue.type&&"RENAME"!==ue.type?o(P,{isOpen:!0,onClose:function(){return de(t(t({},ue),{isOpen:!1}))},onSubmit:function(e){return n(p,void 0,void 0,function(){var n,o,s,i,a,l,c,u,d,p,f,v,g,h,y,S,b,L,A,O;return r(this,function(r){switch(r.label){case 0:he(!0),n=m.getState().backwardCompatibility,r.label=1;case 1:return r.trys.push([1,12,13,14]),o=void 0,n&&"object"==typeof e?o=e:(s=e,i="SCOPE"===ue.type&&ue.parentId,a=i?"genreRuleSet":ue.type,o={topic:a,scope_reference_id:null,scopeDescription:"demo",parentScopeId:ue.parentId||null,scopeName:s,scopeReferenceMetadata:{},applicationMappingId:$}),[4,E(o,K.accessToken)];case 2:if(l=r.sent(),!(c=null===(h=null==l?void 0:l.data)||void 0===h?void 0:h.scopeId))return[3,10];if(Ie.current=c,u=n&&(null===(y=o.topic)||void 0===y?void 0:y.toLowerCase().includes("genre")),d=!n&&"GLOBAL"!==ue.type&&ue.parentId,!u&&!d)return[3,10];if(!(p=n?null===(b=null===(S=m.getState().scopeTreeData)||void 0===S?void 0:S.data)||void 0===b?void 0:b.id:ue.parentId))return[3,10];if(!te)return[3,7];r.label=3;case 3:return r.trys.push([3,5,,6]),[4,T({source_scope_id:p,target_scope_id:c})];case 4:return r.sent(),[3,6];case 5:return f=r.sent(),console.error("Failed to inherit rules for the new scope:",f),[3,6];case 6:return[3,10];case 7:return r.trys.push([7,9,,10]),[4,C({source_scope_id:p,target_scope_id:c,application_mapping_id:$||"",is_copy_parent_variant_id:!1})];case 8:return r.sent(),[3,10];case 9:return v=r.sent(),console.error("Failed to inherit rules for the new scope:",v),[3,10];case 10:return[4,xe(!0)];case 11:return r.sent(),de(function(e){return t(t({},e),{isOpen:!1})}),[3,14];case 12:throw g=r.sent(),console.error("An error occurred during scope creation.",g),null===(L=Re.current)||void 0===L||L.show({severity:"error",summary:"Creation Failed",detail:(null===(O=null===(A=null==g?void 0:g.response)||void 0===A?void 0:A.data)||void 0===O?void 0:O.message)||"There was an error creating the scope. Please try again."}),g;case 13:return he(!1),[7];case 14:return[2]}})})},hasGlobalRuleSet:Ve,canCreateGlobal:We}):s(i,{children:[o(B,{isOpen:ue.isOpen&&"DELETE"!==ue.type&&"RENAME"!==ue.type,onClose:function(){return de(t(t({},ue),{isOpen:!1}))},onCreate:function(e){return He(null!=e?e:"")},hasGlobalRuleSet:Ve}),o(H,{isOpen:ue.isOpen&&"RENAME"===ue.type,onClose:function(){return de(t(t({},ue),{isOpen:!1}))},onSave:He,initialName:ue.initialName})]}),o(R,{isOpen:ue.isOpen&&"DELETE"===ue.type,onCancel:function(){return de(t(t({},ue),{isOpen:!1}))},onConfirm:function(){return Qe(ue.scopeId,ue.initialName,ue.isSubscope)},title:"Delete Scope",description:s(i,{children:["Deleting ",o("span",t({className:v.highlight},{children:ue.initialName||"this scope"}))," will permanently remove all Learnings, Access rules, and Change History inside it. This cannot be undone."]}),confirmText:"Delete",confirmBgColor:"#EF4444",isLoading:ge})]}))})}export{K as default};
|
|
1
|
+
import{__assign as e,__spreadArray as n,__awaiter as t,__generator as r}from"tslib";import{jsx as o,jsxs as s,Fragment as i}from"react/jsx-runtime";import{useState as a,useRef as c,useEffect as l}from"react";import{BookOpen as u,Users as d,History as p}from"lucide-react";import{useLearningTemplateStore as m}from"./store/useLearningTemplateStore.js";import{Toast as f}from"primereact/toast";import v from"./styles/LearningTemplateManagement.module.css.js";import g from"./LearningTemplateLayout.js";import h from"./components/EmptyLearningState.js";import y from"./store/useAuthStore.js";import{fetchTiers as S,getILInstance as b,fetchScopes as C,inheritScope as T,inheritScopeBackwardCompatible as L,createRuleSet as A,renameScope as E,deleteRuleSet as I,requestAccess as w}from"./apis/scopeApis.js";import{QUERY_PARAM_KEYS as O,setQueryParams as R}from"./hooks/useLearningTemplateQueryParams.js";import j from"./components/ConfirmationModal.js";import _ from"./components/LearningTemplateManagementSkeleton.js";import{findNodePathById as N}from"./utils/treeUtils.js";import k from"./store/useEnvStore.js";import{useConfigStore as D}from"./store/useConfigStore.js";import{TooltipProvider as M}from"./components/ToolTip.js";import P from"./components/CreateRuleSetLegacyModal.js";import{usePermissionsStore as U}from"./store/usePermissionsStore.js";import{useAppSecRolesStore as B}from"./store/useAppSecRolesStore.js";import{useGetAppSecRolesQuery as G}from"./queries/useApprovalQueries.js";import{useLMSConfigQuery as F}from"./queries/useLMSConfigQuery.js";import q from"./RuleContent/AddScopeModal.js";import x from"./components/RuleContentSkeleton.js";import H from"./components/ErrorStateDisplay.js";import{useLocation as Q}from"react-router-dom";import z from"./shared/SuccessToastContent.js";import K from"./shared/ErrorToastContent.js";import V from"./RuleContent/RenameScopeModal.js";import{dt as W}from"./store/useLMSConfigStore.js";import{MIDDLE_DRAWER_DT_PATH as Y,MIDDLE_DRAWER_CONTEXT_MENU_DT_PATH as J,EMPTY_STATE_DT_PATH as X}from"./constants.js";function Z(Z){var $,ee,ne,te=this,re=Z.userDetails,oe=Z.llmStudioUrl,se=Z.audacyBackendUrl,ie=Z.ilLabels,ae=Z.config,ce=Z.rbacConfig,le=Z.auditLogConfig,ue=Z.app_integration_id,de=Z.backwardCompatibility,pe=void 0!==de&&de,me=Z.modeId,fe=m(function(e){return e.selectedRuleSetId}),ve=m(function(e){return e.setSelectedRuleSetId}),ge=m(function(e){return e.error}),he=m(function(e){return e.setError}),ye=m(function(e){return e.setStations}),Se=m(function(e){return e.scopeTreeData}),be=m(function(e){return e.setScopeTreeData}),Ce=a({isOpen:!1,type:"GLOBAL"}),Te=Ce[0],Le=Ce[1],Ae=a(!1),Ee=Ae[0],Ie=Ae[1],we=a(!1),Oe=we[0],Re=we[1],je=a("learnings"),_e=je[0],Ne=je[1],ke=a(null),De=ke[0],Me=ke[1],Pe=a(null),Ue=Pe[0],Be=Pe[1],Ge=c(null),Fe=c(null),qe=c(!1),xe=c(null),He=y();He.user;var Qe=He.setUser,ze=D(),Ke=ze.setConfig,Ve=ze.setIlLabels,We=function(){try{return Q()}catch(e){return{search:""}}}();l(function(){if(!qe.current){var e=new URLSearchParams(window.location.search),n=e.get(O.RULESET_ID),t=e.get(O.SECTION),r=t&&gn.has(t)?t:"learnings";(null==n?void 0:n.length)&&ve&&Ne&&(ve(n),Ne(r),qe.current=!0)}},[null==We?void 0:We.search,Ne,ve]);var Ye=U(function(e){return e.fetchPermissions}),Je=U(function(e){return e.hasPermission}),Xe=B(function(e){return e.setRoles}),Ze=k(function(e){return e.appsecRbacUrl})===ce.appsecRbacUrl,$e=G(ce.applicationId,Ze).data,en=F(null!=ue?ue:"",pe),nn=en.isLoading,tn=en.isError,rn=en.refetch;en.isSuccess;var on=a(0),sn=on[0],an=on[1];l(function(){if(!pe&&ue&&oe){t(te,void 0,void 0,function(){var e,n,t,o,s,i;return r(this,function(r){switch(r.label){case 0:return r.trys.push([0,2,,3]),[4,b(ue)];case 1:return e=r.sent(),"number"==typeof(n=null===(i=null===(s=null===(o=null==e?void 0:e.data)||void 0===o?void 0:o.learningManagement)||void 0===s?void 0:s.scopeAndHierarchy)||void 0===i?void 0:i.maxHierarchyLevels)&&n>0&&an(n-1),[3,3];case 2:return t=r.sent(),console.error("Failed to fetch IL instance for hierarchy levels:",t),[3,3];case 3:return[2]}})})}},[ue,oe]),l(function(){$e&&Xe($e.map(function(e){return{_id:e._id,name:e.name}}))},[$e,Xe]),l(function(){var e;console.log("userDetails",re),Qe(re),console.log("llmStudioUrl",oe),console.log("audacyBackendUrl",se),k.getState().setLlmStudioUrl(oe),k.getState().setAudacyBackendUrl(se),k.getState().setRbacConfig(ce),k.getState().setAuditLogConfig(le),Ke(ae),Ve(ie),m.getState().setAppIntegrationId(null!=ue?ue:null),m.getState().setBackwardCompatibility(pe),m.getState().setToken(null!==(e=null==re?void 0:re.accessToken)&&void 0!==e?e:null)},[re,Qe,oe,se,ce,le,ae,Ke,ie,Ve,ue,pe]),l(function(){(null==re?void 0:re.accessToken)&&oe&&S()},[ue,null==re?void 0:re.accessToken,oe]);var cn=function(n){return void 0===n&&(n=!0),t(te,void 0,void 0,function(){var t,o,s,i,a,c;return r(this,function(r){switch(r.label){case 0:n&&Ie(!0),he(null),r.label=1;case 1:return r.trys.push([1,4,5,6]),[4,Ye(ce.applicationId)];case 2:return r.sent(),t=function(n){if(!U.getState().hasPermission("ilotj.scope.view",n.id))return null;var r=n.children?n.children.map(function(e){return t(e)}).filter(function(e){return null!==e}):[];return e(e({},n),{children:r})},[4,C(ue,re.accessToken)];case 3:return(o=r.sent())&&o.data&&o.data.data&&(s=o.data.data,Array.isArray(s)&&(s=s.length>0?s[0]:null),s?(i=t(s))?(Me(null),be({data:i}),Fe.current?(ve(Fe.current),Ne("learnings"),Fe.current=null):m.getState().selectedRuleSetId||ve(i.id)):(Me(null!==(c=s.id)&&void 0!==c?c:null),be(null)):(Me(null),be(null))),[3,6];case 4:return a=r.sent(),console.error("Failed to fetch rule sets or permissions",a),he("Failed to load data. Please try again later."),[3,6];case 5:return Ie(!1),[7];case 6:return[2]}})})};l(function(){var e;(null===(e=null==re?void 0:re.accessToken)||void 0===e?void 0:e.length)&&Ze?cn(!0):console.warn("Error: Trying to fetch rules without access token",re)},[null==re?void 0:re.accessToken,he,ye,ce.applicationId,Ze]);var ln=function(n,o,s){return t(te,void 0,void 0,function(){var t,o,s,i,a,c,l,u;return r(this,function(r){switch(r.label){case 0:Re(!0),r.label=1;case 1:return r.trys.push([1,4,5,6]),[4,I(n,re.accessToken)];case 2:return r.sent(),m.getState().selectedRuleSetId===n&&(t=m.getState().scopeTreeData,(o=N((null==t?void 0:t.data)||null,n))&&o.length>1&&(s=o[o.length-2],ve(s),Ne("learnings"))),[4,cn(!0)];case 3:return r.sent(),Le(function(n){return e(e({},n),{isOpen:!1})}),null===(a=xe.current)||void 0===a||a.show({severity:"success",summary:"Deleted Successfully",detail:"The scope was permanently removed."}),[3,6];case 4:return i=r.sent(),console.error("An error occurred during scope deletion.",i),null===(c=xe.current)||void 0===c||c.show({severity:"error",summary:"Delete Failed",detail:(null===(u=null===(l=null==i?void 0:i.response)||void 0===l?void 0:l.data)||void 0===u?void 0:u.message)||"There was an error deleting the scope. Please try again."}),[3,6];case 5:return Re(!1),[7];case 6:return[2]}})})},un=Se,dn=Ue?{data:{id:Ue.stationId,name:Ue.stationName,type:"STATION",metrics:{learningsCount:Ue.learningsCount,stationsCount:0},children:[]}}:un,pn=!!(null==dn?void 0:dn.data);null===($=null==dn?void 0:dn.data)||void 0===$||$.type;var mn=U(function(e){return e.hasGlobalPermission})("ilotj.scope.global.create",ce.applicationResourceId||"");if(nn)return o("div",e({className:v.learningManagementContainer},{children:o(x,{})}));if(tn)return o("div",e({className:v.learningManagementContainer},{children:o(H,{errorMessage:"Failed to load configuration. Please try again.",onRetry:function(){return rn()},title:"Error Loading Configuration"})}));var fn=n(n([{type:"GLOBAL",label:"Global",addChildLabel:"".concat(W("".concat(Y,".addScope"),"Add Scope")),addChildType:"SCOPE"}],Array.from({length:sn},function(){return e({type:"SCOPE",label:W("".concat(Y,".scope"),"Scope")},!pe&&{addChildLabel:W("".concat(J,".addSubScope"),"Add Subscope"),addChildType:"SUBSCOPE"})}),!0),pe?[]:[{type:"SUBSCOPE",label:W("".concat(Y,".subScope"),"Subscope")}],!0),vn=[{id:"learnings",label:W("".concat(Y,".treeMenu.submenu.learnings"),"Learnings"),icon:u,badgeKey:"learningsCount"},{id:"access",label:W("".concat(Y,".treeMenu.submenu.access"),"Access"),icon:d},{id:"history",label:W("".concat(Y,".treeMenu.submenu.changeHistory"),"Change History"),icon:p}],gn=new Set(vn.map(function(e){return e.id})),hn=Ue?vn.filter(function(e){return"stations"!==e.id}):vn;return o(M,{children:s("div",e({className:v.learningManagementContainer},{children:[o("div",e({className:v.mainWrapper},{children:Ee?o(_,{}):ge?s("div",e({className:v.errorContainer},{children:[o("div",e({className:v.errorTitle},{children:"Error Loading Data"})),o("p",e({className:v.errorDesc},{children:ge})),o("button",e({onClick:function(){return cn(!0)},className:v.tryAgainBtn},{children:"Try Again"}))]})):pn?o(g,{onOpenCreateModal:function(){return Le({isOpen:!0,type:"GLOBAL"})},onAddChild:function(e,n,t){return Le({isOpen:!0,type:n,parentId:e,parentName:t})},onRenameChild:function(e,n){return Le({isOpen:!0,type:"RENAME",scopeId:e,initialName:n})},onDeleteChild:function(e,n,o){return t(te,void 0,void 0,function(){var t,s,i;return r(this,function(r){switch(r.label){case 0:return t=m.getState().scopeTreeData,s=N((null==t?void 0:t.data)||null,e),i=!!s&&3===s.length,0!==o?[3,2]:[4,ln(e)];case 1:return r.sent(),[3,3];case 2:Le({isOpen:!0,type:"DELETE",scopeId:e,initialName:n,isSubscope:i}),r.label=3;case 3:return[2]}})})},canDeleteScope:function(e){return Je("ilotj.scope.delete",e)},canEditScope:function(e){return Je("ilotj.scope.edit",e)},canCreateScope:function(e){return Je("ilotj.scope.create",e)},onSectionSelect:function(e,n){var t;console.log("Section Selected:",{scopeId:e,sectionId:n}),R(((t={})[O.SECTION]="learnings"===n?null:n,t[O.RULESET_ID]=e,t)),Ne(n),ve(e)},activeSectionId:_e,scopeTreeData:dn,sectionsConfig:hn,onViewStation:function(e){Ge.current=fe,Be(e),Ne("learnings"),ve(e.stationId)},onRefreshRuleSets:function(e,n){void 0===e&&(e=!0),n&&(Fe.current=n),cn(e)},nodeTypesConfig:fn,app_integration_id:ue,token:re.accessToken,modeId:me}):o(h,{onCreate:function(){return Le({isOpen:!0,type:"GLOBAL"})},title:W("".concat(X,".title"),"No Global Scope has been added!"),desc:W("".concat(X,".desc"),"Start by creating a Global scope to define base learnings that apply across all stations."),button:W("".concat(X,".createGlobalScope"),"Create Global Scope"),canCreateRule:mn,noAccessTitle:W("".concat(X,".noAccessTitle"),"Access Restricted"),noAccessDesc:W("".concat(X,".noAccessDesc"),"You do not have access for this application."),requestAccessButton:W("".concat(X,".requestAccessButton"),"Request Access"),onRequestAccess:function(){return t(te,void 0,void 0,function(){var e,n,t,s,i,a,c,l,u;return r(this,function(r){switch(r.label){case 0:if(!(e=(null===(s=null===(t=m.getState().scopeTreeData)||void 0===t?void 0:t.data)||void 0===s?void 0:s.id)||De))return null===(i=xe.current)||void 0===i||i.show({severity:"error",sticky:!1,className:v.errorToast,content:o(K,{message:"Unable to identify the global scope for this access request."})}),[2];r.label=1;case 1:return r.trys.push([1,3,,4]),[4,w(e)];case 2:return r.sent(),null===(a=xe.current)||void 0===a||a.show({severity:"success",sticky:!1,life:3e3,className:v.successToast,content:o(z,{message:"Access request submitted successfully!"})}),[3,4];case 3:return n=r.sent(),null===(c=xe.current)||void 0===c||c.show({severity:"error",sticky:!1,className:v.errorToast,content:o(K,{message:(null===(u=null===(l=null==n?void 0:n.response)||void 0===l?void 0:l.data)||void 0===u?void 0:u.detail)||"Failed to request access. Please try again."})}),[3,4];case 4:return[2]}})})}})})),o(f,{ref:xe,pt:{root:{style:{zIndex:9999}}}}),pe&&Te.isOpen&&"DELETE"!==Te.type&&"RENAME"!==Te.type?o(P,{isOpen:!0,onClose:function(){return Le(e(e({},Te),{isOpen:!1}))},onSubmit:function(n){return t(te,void 0,void 0,function(){var t,o,s,i,a,c,l,u,d,p,f,v,g,h,y,S,b,C,E,I;return r(this,function(r){switch(r.label){case 0:Re(!0),t=m.getState().backwardCompatibility,r.label=1;case 1:return r.trys.push([1,12,13,14]),o=void 0,t&&"object"==typeof n?o=n:(s=n,i="SCOPE"===Te.type&&Te.parentId,a=i?"genreRuleSet":Te.type,o={topic:a,scope_reference_id:null,scopeDescription:"demo",parentScopeId:Te.parentId||null,scopeName:s,scopeReferenceMetadata:{},applicationMappingId:ue}),[4,A(o,re.accessToken)];case 2:if(c=r.sent(),!(l=null===(h=null==c?void 0:c.data)||void 0===h?void 0:h.scopeId))return[3,10];if(Fe.current=l,u=t&&(null===(y=o.topic)||void 0===y?void 0:y.toLowerCase().includes("genre")),d=!t&&"GLOBAL"!==Te.type&&Te.parentId,!u&&!d)return[3,10];if(!(p=t?null===(b=null===(S=m.getState().scopeTreeData)||void 0===S?void 0:S.data)||void 0===b?void 0:b.id:Te.parentId))return[3,10];if(!pe)return[3,7];r.label=3;case 3:return r.trys.push([3,5,,6]),[4,L({source_scope_id:p,target_scope_id:l})];case 4:return r.sent(),[3,6];case 5:return f=r.sent(),console.error("Failed to inherit rules for the new scope:",f),[3,6];case 6:return[3,10];case 7:return r.trys.push([7,9,,10]),[4,T({source_scope_id:p,target_scope_id:l,application_mapping_id:ue||"",is_copy_parent_variant_id:!1})];case 8:return r.sent(),[3,10];case 9:return v=r.sent(),console.error("Failed to inherit rules for the new scope:",v),[3,10];case 10:return[4,cn(!0)];case 11:return r.sent(),Le(function(n){return e(e({},n),{isOpen:!1})}),[3,14];case 12:throw g=r.sent(),console.error("An error occurred during scope creation.",g),null===(C=xe.current)||void 0===C||C.show({severity:"error",summary:"Creation Failed",detail:(null===(I=null===(E=null==g?void 0:g.response)||void 0===E?void 0:E.data)||void 0===I?void 0:I.message)||"There was an error creating the scope. Please try again."}),g;case 13:return Re(!1),[7];case 14:return[2]}})})},hasGlobalRuleSet:pn,canCreateGlobal:mn,globalScopeId:null!==(ne=null===(ee=null==Se?void 0:Se.data)||void 0===ee?void 0:ee.id)&&void 0!==ne?ne:null}):s(i,{children:[o(q,{isOpen:Te.isOpen&&"DELETE"!==Te.type&&"RENAME"!==Te.type,onClose:function(){return Le(e(e({},Te),{isOpen:!1}))},onCreate:function(e){e&&(Fe.current=e),cn(!0)},hasGlobalRuleSet:pn,parentId:Te.parentId}),o(V,{isOpen:Te.isOpen&&"RENAME"===Te.type,onClose:function(){return Le(e(e({},Te),{isOpen:!1}))},onSave:function(n){return t(te,void 0,void 0,function(){var t,s,i,a,c,l;return r(this,function(r){switch(r.label){case 0:Re(!0),r.label=1;case 1:return r.trys.push([1,4,5,6]),Te.scopeId?(t=m.getState().backwardCompatibility,s=t?{scope_id:Te.scopeId,scope_name:n}:{scope_id:Te.scopeId,scope_type:"Custom",scope_name:n,description:"demo",application_mapping_id:ue},[4,E(s,re.accessToken)]):[2];case 2:return r.sent(),[4,cn(!0)];case 3:return r.sent(),Le(function(n){return e(e({},n),{isOpen:!1})}),[3,6];case 4:throw i=r.sent(),console.error("An error occurred during scope rename.",i),null===(a=xe.current)||void 0===a||a.show({severity:"error",sticky:!1,className:v.errorToast,content:o(K,{message:(null===(l=null===(c=null==i?void 0:i.response)||void 0===c?void 0:c.data)||void 0===l?void 0:l.message)||"There was an error renaming the scope. Please try again."})}),i;case 5:return Re(!1),[7];case 6:return[2]}})})},initialName:Te.initialName})]}),o(j,{isOpen:Te.isOpen&&"DELETE"===Te.type,onCancel:function(){return Le(e(e({},Te),{isOpen:!1}))},onConfirm:function(){return ln(Te.scopeId,Te.initialName,Te.isSubscope)},title:"Delete Scope",description:s(i,{children:["Deleting ",o("span",e({className:v.highlight},{children:Te.initialName||"this scope"}))," will permanently remove all Learnings, Access rules, and Change History inside it. This cannot be undone."]}),confirmText:"Delete",confirmBgColor:"#EF4444",isLoading:Oe})]}))})}export{Z as default};
|
|
2
2
|
//# sourceMappingURL=LearningManagement.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e}from"tslib";import{jsxs as o,jsx as n}from"react/jsx-runtime";import t from"./RuleContent/RuleContent.js";import
|
|
1
|
+
import{__assign as e}from"tslib";import{jsxs as o,jsx as n}from"react/jsx-runtime";import{useEffect as t}from"react";import i from"./RuleContent/RuleContent.js";import r from"./StationsContent/StationsContent.js";import a from"./RBAC/AccessManagementPanel.js";import"appsec-ui";import"./store/useAuthStore.js";import"./store/usePermissionsStore.js";import s from"./store/useEnvStore.js";import d from"./styles/LearningTemplateLayout.module.css.js";import{findNodeById as l}from"./utils/treeUtils.js";import c from"./SidebarWrapper.js";import{useLearningTemplateStore as u}from"./store/useLearningTemplateStore.js";import p from"./components/StationOnboarding/StationOnboardModal.js";import m from"./AuditLog/AuditLog.js";var f=function(f){var S,g,v=f.onOpenCreateModal,C=f.onRefreshRuleSets,h=f.scopeTreeData,R=f.onAddChild,j=f.onRenameChild,I=f.onDeleteChild,A=f.canDeleteScope,D=f.canEditScope,M=f.canCreateScope,O=f.onSectionSelect,T=f.onViewStation,w=f.activeSectionId,b=void 0===w?"learnings":w,k=f.sectionsConfig,y=f.nodeTypesConfig,L=f.app_integration_id,_=f.token,N=f.modeId,U=u(function(e){return e.isStationModalOpen}),x=u(function(e){return e.setStationModalOpen}),B=u(function(e){return e.isStationOnboardModalTriggered}),E=u(function(e){return e.setIsStationOnboardModalTriggered}),P=u(function(e){return e.selectedRuleSetId}),V=u(function(e){return e.rawAuditRuleData}),F=s(function(e){return e.auditLogConfig});u(function(e){return e.ruleData});var W=P?l((null==h?void 0:h.data)||null,P):null;return Boolean((null===(S=null==h?void 0:h.data)||void 0===S?void 0:S.id)&&P===h.data.id),t(function(){B&&x(!0)},[B,x,E]),o("div",e({className:d.container},{children:[n(c,{onOpenCreateModal:v,onRefreshRuleSets:C,scopeTreeData:h,onAddChild:R,onRenameChild:j,onDeleteChild:I,canDeleteScope:A,canEditScope:D,canCreateScope:M,onSectionSelect:O,activeSectionId:b,sectionsConfig:k,nodeTypesConfig:y}),n("div",e({id:"rule-template-layout-content",className:"".concat(d.content," relative flex-1 overflow-hidden")},{children:"stations"===b?n(r,{scopeId:P||"",scopeName:(null==W?void 0:W.name)||"Unknown Scope",stationsCount:null===(g=null==W?void 0:W.metrics)||void 0===g?void 0:g.stationsCount,onViewStation:T}):"access"===b?n(a,{selectedRuleSetId:P,scopeName:(null==W?void 0:W.name)||"Unknown Scope",useApplicationModuleForScopeAccess:!1}):"history"===b?(null==F?void 0:F.configId)?n(m,{configId:F.configId,scopeId:P||void 0,scopeName:(null==W?void 0:W.name)||"Unknown Scope",ruleData:V}):null:n(i,{onRefreshRuleSets:C,app_integration_id:L,token:_,modeId:N})})),n(p,{isOpen:U,onClose:function(){x(!1),E(!1)},onBoardStation:function(e){C(!0,e)},app_integration_id:L,token:_})]}))};export{f as default};
|
|
2
2
|
//# sourceMappingURL=LearningTemplateLayout.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e}from"tslib";import{jsxs as c,jsx as
|
|
1
|
+
import{__assign as e}from"tslib";import{jsxs as c,jsx as s}from"react/jsx-runtime";import{useState as o}from"react";import a from"./AccessPanel.js";import t from"../store/useEnvStore.js";import{usePermissionsStore as i}from"../store/usePermissionsStore.js";import l from"./AccessPanel.module.css.js";import{dt as n}from"../store/useLMSConfigStore.js";var r=function(r){var p=r.selectedRuleSetId,d=r.useApplicationModuleForScopeAccess,m=void 0!==d&&d,u=r.scopeName,v=(null==u?void 0:u.trim())||"Selected",f=o("scope"),b=f[0],h=f[1],g=t(function(e){return e.rbacConfig}),A=i(function(e){return e.hasPermission}),S=null==g?void 0:g.applicationResourceId,x=(null==g?void 0:g.applicationModuleId)||(null==g?void 0:g.moduleId),I=m?x:null==g?void 0:g.moduleId,j=Boolean(S&&A("ilotj.scope.access.application.view",S));return c("div",e({className:l.accessManagement},{children:[s("div",e({style:{padding:"24px 24px 0",fontFamily:"Arial, sans-serif"}},{children:c("div",e({style:{marginBottom:"16px",paddingBottom:"4px"}},{children:[s("h1",e({style:{margin:0,color:"#334155",fontSize:"20px",fontWeight:700,lineHeight:1.25}},{children:n("access.title","".concat(v," - Access Management"),{scope_name:v})})),s("p",e({style:{margin:"8px 0 0",color:"#667085",fontSize:"16px",fontWeight:500,lineHeight:1}},{children:n("access.subtitle","Manage users and groups within the ".concat(v," scope."),{scope_name:v})}))]}))})),c("div",e({className:l.accessTabs,role:"tablist","aria-label":"Access level"},{children:[s("button",e({type:"button",role:"tab","aria-selected":"scope"===b,className:"".concat(l.accessTab," ").concat("scope"===b?l.accessTabActive:""),onClick:function(){return h("scope")}},{children:n("access.scopeLevelAccess","Scope Level Access")})),s("button",e({type:"button",role:"tab","aria-selected":"application"===b,className:"".concat(l.accessTab," ").concat("application"===b?l.accessTabActive:""),onClick:function(){return h("application")},disabled:!j,title:j?"":"You don't have permission to view application access"},{children:n("access.appLevelAccess","Application Level Access")}))]})),s("div",e({className:l.accessTabPanel,role:"tabpanel"},{children:s(a,"application"===b?{resourceId:S,moduleId:x,accessLevel:"application"}:{ruleSetId:p,moduleId:I,accessLevel:"scope"})}))]}))};export{r as default};
|
|
2
2
|
//# sourceMappingURL=AccessManagementPanel.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e,__spreadArray as n}from"tslib";import{jsxs as r,jsx as t}from"react/jsx-runtime";import{useState as o,useRef as i,useEffect as l}from"react";import{Search as u,X as a}from"lucide-react";import{useApproverSearchQuery as c,useGroupSearchQuery as d}from"../queries/useApprovalQueries.js";var p={root:{marginLeft:"1.5rem"},sectionLabel:{fontSize:"0.875rem",fontWeight:500,color:"#19213D"},requiredMark:{marginRight:"0.25rem",fontSize:"1rem",fontWeight:600,color:"#8F2C23"},dropdownWrapper:{position:"relative",marginTop:"0.375rem"},inputShell:{display:"flex",minHeight:"38px",width:"100%",cursor:"text",flexWrap:"wrap",alignItems:"center",gap:"0.375rem",borderRadius:"0.375rem",border:"1px solid #E2E8F0",padding:"0.375rem 0.5rem",boxSizing:"border-box",transition:"border-color 150ms ease-in-out, box-shadow 150ms ease-in-out"},searchIcon:{flexShrink:0,color:"#9CA3AF"},chip:{display:"flex",alignItems:"center",gap:"0.25rem",borderRadius:"9999px",backgroundColor:"#EFF6FF",padding:"0.125rem 0.625rem",fontSize:"0.75rem",fontWeight:500,color:"#1D4ED8"},chipRemoveButton:{marginLeft:"0.125rem",border:"none",borderRadius:"9999px",background:"transparent",padding:0,cursor:"pointer",outline:"none"},input:{minWidth:"120px",flex:1,border:"none",backgroundColor:"transparent",fontSize:"0.875rem",color:"#19213D",outline:"none"},dropdown:{position:"absolute",zIndex:50,marginTop:"0.25rem",maxHeight:"12rem",width:"100%",overflowY:"auto",borderRadius:"0.375rem",border:"1px solid #E2E8F0",backgroundColor:"#FFFFFF",padding:"0.25rem 0",listStyle:"none",boxShadow:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",boxSizing:"border-box"},skeletonItem:{padding:"0.5rem 0.75rem"},skeletonLinePrimary:{height:"1rem",width:"75%",borderRadius:"0.25rem",backgroundColor:"#E5E7EB"},skeletonLineSecondary:{height:"0.75rem",width:"50%",borderRadius:"0.25rem",backgroundColor:"#E5E7EB",marginTop:"0.375rem"},checkboxOption:{display:"flex",alignItems:"center",gap:"0.625rem",width:"100%",padding:"0.5rem 0.75rem",cursor:"pointer",boxSizing:"border-box"},checkboxInput:{width:"14px",height:"14px",flexShrink:0,cursor:"pointer",accentColor:"#2563EB",margin:0},optionTitle:{fontSize:"0.875rem",fontWeight:500,color:"#19213D",margin:0},optionSubtitle:{fontSize:"0.75rem",color:"#666F8D",margin:0}},s=function(s){var m=s.selectedApprovers,h=s.selectedGroupOfApprovers,f=s.onApproversChange,g=s.onGroupsChange,b=o(""),v=b[0],y=b[1],x=o(""),k=x[0],F=x[1],E=o(!1),S=E[0],w=E[1],C=i(null),L=i(null),D=o(""),M=D[0],z=D[1],B=o(""),I=B[0],_=B[1],T=o(!1),
|
|
1
|
+
import{__assign as e,__spreadArray as n}from"tslib";import{jsxs as r,jsx as t}from"react/jsx-runtime";import{useState as o,useRef as i,useEffect as l}from"react";import{Search as u,X as a}from"lucide-react";import{useApproverSearchQuery as c,useGroupSearchQuery as d}from"../queries/useApprovalQueries.js";var p={root:{marginLeft:"1.5rem"},sectionLabel:{fontSize:"0.875rem",fontWeight:500,color:"#19213D"},requiredMark:{marginRight:"0.25rem",fontSize:"1rem",fontWeight:600,color:"#8F2C23"},dropdownWrapper:{position:"relative",marginTop:"0.375rem"},inputShell:{display:"flex",minHeight:"38px",width:"100%",cursor:"text",flexWrap:"wrap",alignItems:"center",gap:"0.375rem",borderRadius:"0.375rem",border:"1px solid #E2E8F0",padding:"0.375rem 0.5rem",boxSizing:"border-box",transition:"border-color 150ms ease-in-out, box-shadow 150ms ease-in-out"},searchIcon:{flexShrink:0,color:"#9CA3AF"},chip:{display:"flex",alignItems:"center",gap:"0.25rem",borderRadius:"9999px",backgroundColor:"#EFF6FF",padding:"0.125rem 0.625rem",fontSize:"0.75rem",fontWeight:500,color:"#1D4ED8"},chipRemoveButton:{marginLeft:"0.125rem",border:"none",borderRadius:"9999px",background:"transparent",padding:0,cursor:"pointer",outline:"none"},input:{minWidth:"120px",flex:1,border:"none",backgroundColor:"transparent",fontSize:"0.875rem",color:"#19213D",outline:"none"},dropdown:{position:"absolute",zIndex:50,marginTop:"0.25rem",maxHeight:"12rem",width:"100%",overflowY:"auto",borderRadius:"0.375rem",border:"1px solid #E2E8F0",backgroundColor:"#FFFFFF",padding:"0.25rem 0",listStyle:"none",boxShadow:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",boxSizing:"border-box"},skeletonItem:{padding:"0.5rem 0.75rem"},skeletonLinePrimary:{height:"1rem",width:"75%",borderRadius:"0.25rem",backgroundColor:"#E5E7EB"},skeletonLineSecondary:{height:"0.75rem",width:"50%",borderRadius:"0.25rem",backgroundColor:"#E5E7EB",marginTop:"0.375rem"},checkboxOption:{display:"flex",alignItems:"center",gap:"0.625rem",width:"100%",padding:"0.5rem 0.75rem",cursor:"pointer",boxSizing:"border-box"},checkboxInput:{width:"14px",height:"14px",flexShrink:0,cursor:"pointer",accentColor:"#2563EB",margin:0},optionTitle:{fontSize:"0.875rem",fontWeight:500,color:"#19213D",margin:0},optionSubtitle:{fontSize:"0.75rem",color:"#666F8D",margin:0}},s=function(s){var m=s.selectedApprovers,h=s.selectedGroupOfApprovers,f=s.onApproversChange,g=s.onGroupsChange,b=o(""),v=b[0],y=b[1],x=o(""),k=x[0],F=x[1],E=o(!1),S=E[0],w=E[1],C=i(null),L=i(null),D=o(""),M=D[0],z=D[1],B=o(""),I=B[0],_=B[1],T=o(!1),R=T[0],W=T[1],A=i(null),q=i(null),O=o(!1),P=O[0],j=O[1],G=o(!1),H=G[0],Q=G[1],Y=o(null),J=Y[0],K=Y[1],N=o(null),U=N[0],V=N[1],X=o(null),Z=X[0],$=X[1],ee=o(null),ne=ee[0],re=ee[1];l(function(){if(!v.trim())return F(""),void w(!1);var e=setTimeout(function(){return F(v)},500);return function(){return clearTimeout(e)}},[v]),l(function(){var e=setTimeout(function(){return _(M)},300);return function(){return clearTimeout(e)}},[M]);var te=c(k),oe=te.data,ie=te.isFetching,le=(oe||[]).filter(function(e){return!m.some(function(n){return n.id===e._id})}).slice(0,10).map(function(e){var n,r,t,o;return{id:e._id,email:null!==(n=e.email)&&void 0!==n?n:"",name:(null===(r=e.firstname)||void 0===r?void 0:r.trim())?"".concat(e.firstname," ").concat(null!==(t=e.lastname)&&void 0!==t?t:"").trim():null!==(o=e.email)&&void 0!==o?o:""}});l(function(){k.trim()&&(ie||le.length>0)&&w(!0)},[ie,le.length,k]);var ue=d(I),ae=ue.data,ce=ue.isFetching,de=(ae||[]).filter(function(e){return!h.some(function(n){return n._id===e._id})}).slice(0,10);l(function(){H&&(ce||de.length>0)&&W(!0)},[ce,de.length,H]),l(function(){var e=function(e){C.current&&!C.current.contains(e.target)&&w(!1),A.current&&!A.current.contains(e.target)&&W(!1)};return document.addEventListener("mousedown",e),function(){return document.removeEventListener("mousedown",e)}},[]);return r("div",e({style:p.root},{children:[r("label",e({htmlFor:"approver-search-input",style:p.sectionLabel},{children:[t("span",e({style:p.requiredMark},{children:"*"})),"Select who can approve"]})),r("div",e({ref:C,style:p.dropdownWrapper},{children:[r("label",e({htmlFor:"approver-search-input",style:e(e({},p.inputShell),{borderColor:P?"#2563EB":"#E2E8F0",boxShadow:P?"0 0 0 1px #2563EB":"none"})},{children:[t(u,{size:14,style:p.searchIcon}),m.map(function(n){return r("span",e({style:p.chip},{children:[n.email,t("button",e({type:"button",onMouseDown:function(e){var r;e.preventDefault(),r=n.id,f(m.filter(function(e){return e.id!==r}))},onMouseEnter:function(){return $(n.id)},onMouseLeave:function(){return $(null)},style:e(e({},p.chipRemoveButton),{backgroundColor:Z===n.id?"#DBEAFE":"transparent"})},{children:t(a,{size:12})}))]}),n.id)}),t("input",{ref:L,id:"approver-search-input",type:"text",value:v,onChange:function(e){return y(e.target.value)},onFocus:function(){j(!0),(le.length>0||ie)&&w(!0)},onBlur:function(){return j(!1)},placeholder:0===m.length?"Search by name or email...":"",style:p.input})]})),S&&(ie||le.length>0)&&t("ul",e({style:p.dropdown},{children:ie?[1,2,3,4].map(function(n){return r("li",e({style:p.skeletonItem},{children:[t("div",{style:p.skeletonLinePrimary}),t("div",{style:p.skeletonLineSecondary})]}),n)}):le.map(function(o){return t("li",{children:r("div",e({onMouseDown:function(e){e.preventDefault(),function(e){var r;f(n(n([],m,!0),[e],!1)),y(""),w(!1),null===(r=L.current)||void 0===r||r.focus()}(o)},onMouseEnter:function(){return K(o.id)},onMouseLeave:function(){return K(null)},style:e(e({},p.checkboxOption),{backgroundColor:J===o.id?"#F1F5F9":"transparent"})},{children:[t("input",{type:"checkbox",checked:!1,onChange:function(){},style:p.checkboxInput}),r("div",{children:[t("p",e({style:p.optionTitle},{children:o.name})),t("p",e({style:p.optionSubtitle},{children:o.email}))]})]}))},o.id)})}))]})),r("label",e({htmlFor:"group-search-input",style:e(e({},p.sectionLabel),{display:"inline-block",marginTop:"0.375rem"})},{children:[t("span",e({style:p.requiredMark},{children:"*"})),"Select user group who can approve"]})),r("div",e({ref:A,style:p.dropdownWrapper},{children:[r("label",e({htmlFor:"group-search-input",style:e(e({},p.inputShell),{borderColor:H?"#2563EB":"#E2E8F0",boxShadow:H?"0 0 0 1px #2563EB":"none"})},{children:[t(u,{size:14,style:p.searchIcon}),h.map(function(n){return r("span",e({style:p.chip},{children:[n.name,t("button",e({type:"button",onMouseDown:function(e){var r;e.preventDefault(),r=n._id,g(h.filter(function(e){return e._id!==r}))},onMouseEnter:function(){return re(n._id)},onMouseLeave:function(){return re(null)},style:e(e({},p.chipRemoveButton),{backgroundColor:ne===n._id?"#DBEAFE":"transparent"})},{children:t(a,{size:12})}))]}),n._id)}),t("input",{ref:q,id:"group-search-input",type:"text",value:M,onChange:function(e){return z(e.target.value)},onFocus:function(){Q(!0)},onBlur:function(){return Q(!1)},placeholder:0===h.length?"Search by group name...":"",style:p.input})]})),R&&(ce||de.length>0)&&t("ul",e({style:p.dropdown},{children:ce?[1,2,3,4].map(function(n){return r("li",e({style:p.skeletonItem},{children:[t("div",{style:p.skeletonLinePrimary}),t("div",{style:p.skeletonLineSecondary})]}),n)}):de.map(function(o){return t("li",{children:r("div",e({onMouseDown:function(e){e.preventDefault(),function(e){var r;g(n(n([],h,!0),[e],!1)),z(""),W(!1),null===(r=q.current)||void 0===r||r.focus()}(o)},onMouseEnter:function(){return V(o._id)},onMouseLeave:function(){return V(null)},style:e(e({},p.checkboxOption),{backgroundColor:U===o._id?"#F1F5F9":"transparent"})},{children:[t("input",{type:"checkbox",checked:!1,onChange:function(){},style:p.checkboxInput}),r("div",{children:[t("p",e({style:p.optionTitle},{children:o.name})),t("p",e({style:p.optionSubtitle},{children:o.description}))]})]}))},o._id)})}))]}))]}))};export{s as default};
|
|
2
2
|
//# sourceMappingURL=AddScopeApprovalSearchComponent.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as o,__assign as r,__spreadArray as i}from"tslib";import{jsx as n,jsxs as t,Fragment as l}from"react/jsx-runtime";import{useState as a,useRef as d,useEffect as c}from"react";import{useMutation as s}from"@tanstack/react-query";import{X as p,Loader2 as u}from"lucide-react";import{Toast as m}from"primereact/toast";import{v4 as f}from"uuid";import h from"../components/StationOnboarding/StationAutocomplete.js";import g from"./AddScopeApprovalSearchComponent.js";import v from"../components/ScopeSkeletonLoader.js";import{Input as y}from"@mui/material";import b from"../store/useAuthStore.js";import{useAppSecRolesStore as S}from"../store/useAppSecRolesStore.js";import C from"../store/useEnvStore.js";import{createRuleSet as x}from"../apis/scopeApis.js";import{useLearningTemplateStore as w}from"../store/useLearningTemplateStore.js";import{IL_CONFIG_CONSTANTS as _}from"../config.js";var k=function(k){var A=k.isOpen,R=k.onClose,D=k.onCreate,I=k.hasGlobalRuleSet,q=a(""),z=q[0],F=q[1],j=a(""),E=j[0],L=j[1],B=a({}),N=B[0],W=B[1],G=d(null),P=b().user,O=S(function(e){return e.roles}),T=C(function(e){return e.rbacConfig}),M=a(null),K=M[0],U=M[1],H=a("approval_required"),J=H[0],Q=H[1],V=a([]),X=V[0],Y=V[1],Z=a([]),$=Z[0],ee=Z[1],oe=a(""),re=oe[0],ie=oe[1],ne=s({mutationFn:function(r){return e(void 0,void 0,void 0,function(){var e;return o(this,function(o){switch(o.label){case 0:return[4,x(r,null!==(e=null==P?void 0:P.accessToken)&&void 0!==e?e:"")];case 1:return[2,o.sent()]}})})},onSuccess:function(r){return e(void 0,void 0,void 0,function(){return o(this,function(e){return console.log("Rule Set Created Successfully",r),[2]})})}}),te=ne.data,le=ne.isPending,ae=ne.mutateAsync;return c(function(){A&&(F(""),L(""),W({}),U(null),Q("approval_required"),Y([]),ee([]),ie(""))},[A]),A?le?n(v,{isLoading:le}):t("div",r({style:{position:"absolute",inset:0,zIndex:50,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(0,0,0,0.3)"}},{children:[n(m,{ref:G}),t("div",r({style:{position:"relative",width:600,borderRadius:12,backgroundColor:"white",padding:24,boxShadow:"0 25px 50px -12px rgba(0,0,0,0.25)"}},{children:[t("div",r({style:{marginBottom:24,display:"flex",alignItems:"flex-start",justifyContent:"space-between"}},{children:[t("div",{children:[n("h2",r({style:{margin:0,fontSize:18,fontWeight:500,color:"#19213D"}},{children:"Add Scope"})),n("p",r({style:{margin:"4px 0 0 0",fontSize:14,fontWeight:400,color:"#666F8D"}},{children:"This scope will be created under Global and will inherit its Learnings by default."}))]}),n("button",r({onClick:R,style:{background:"none",border:"none",padding:0,cursor:"pointer",color:"#9CA3AF"}},{children:n(p,{size:24})}))]})),t("div",r({style:{display:"flex",flexDirection:"column",gap:20}},{children:[t("div",r({style:{position:"relative",display:"flex",flexDirection:"column",gap:6}},{children:[t("label",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:[n("span",r({style:{marginRight:4,fontSize:16,fontWeight:600,color:"#8F2C23"}},{children:"*"})),"Scope Name"]})),"Custom"===z?n(h,{value:E,onChange:function(e){if(e.length>50)return L(e.slice(0,50)),void W(function(e){return r(r({},e),{name:"Scope Name must be 50 characters or fewer"})});L(e),W(function(e){return r(r({},e),{name:void 0})})},onStationSelect:function(e){U(e)},style:{border:N.name?"1px solid #8F2C23":void 0}}):n(y,{value:E,onChange:function(e){var o=e.target.value;if(o.length>50)return L(o.slice(0,50)),void W(function(e){return r(r({},e),{name:"Scope Name must be 50 characters or fewer"})});L(o),W(function(e){return r(r({},e),{name:void 0})})},style:{border:"1px solid ".concat(N.name?"#8F2C23":"#F0F2F5")},placeholder:"e.g. Global Learnings"}),N.name&&n("p",r({style:{margin:"4px 0 0 0",fontSize:12,color:"#8F2C23"}},{children:N.name}))]})),t("div",r({style:{display:"flex",flexDirection:"column",gap:12}},{children:[t("label",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:[n("span",r({style:{marginRight:4,fontSize:16,fontWeight:600,color:"#8F2C23"}},{children:"*"})),"Learning Approval Settings"]})),t("div",r({role:"radio","aria-checked":"approval_required"===J,tabIndex:0,style:{cursor:"pointer",display:"flex",flexDirection:"column",gap:4},onClick:function(){return Q("approval_required")},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||Q("approval_required")}},{children:[t("div",r({style:{display:"flex",alignItems:"center",gap:8}},{children:[n("div",r({style:{display:"flex",height:16,width:16,flexShrink:0,alignItems:"center",justifyContent:"center",borderRadius:"50%",border:"2px solid ".concat("approval_required"===J?"#2563EB":"#CBD5E1")}},{children:"approval_required"===J&&n("div",{style:{height:8,width:8,borderRadius:"50%",backgroundColor:"#2563EB"}})})),n("span",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:"Approval Required Before Publishing"}))]})),n("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#666F8D"}},{children:"Learnings require approval before publishing."}))]})),"approval_required"===J&&n(g,{selectedApprovers:X,selectedGroupOfApprovers:$,onApproversChange:Y,onGroupsChange:ee}),re&&n("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#8F2C23"}},{children:re})),t("div",r({role:"radio","aria-checked":"publish_without"===J,tabIndex:0,style:{cursor:"pointer",display:"flex",flexDirection:"column",gap:4},onClick:function(){Q("publish_without"),ie("")},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(Q("publish_without"),ie(""))}},{children:[t("div",r({style:{display:"flex",alignItems:"center",gap:8}},{children:[n("div",r({style:{display:"flex",height:16,width:16,flexShrink:0,alignItems:"center",justifyContent:"center",borderRadius:"50%",border:"2px solid ".concat("publish_without"===J?"#2563EB":"#CBD5E1")}},{children:"publish_without"===J&&n("div",{style:{height:8,width:8,borderRadius:"50%",backgroundColor:"#2563EB"}})})),n("span",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:"Publish Without Approval"}))]})),n("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#666F8D"}},{children:"Learnings can be published directly."}))]}))]})),t("div",r({style:{marginTop:32,display:"flex",justifyContent:"flex-end",gap:12}},{children:[n("button",r({onClick:R,style:{borderRadius:6,border:"1px solid #E2E8F0",padding:"8px 16px",fontSize:14,fontWeight:500,color:"#64748B",backgroundColor:"white",cursor:"pointer",opacity:le?.5:1},disabled:le},{children:"Cancel"})),n("button",r({onClick:function(){return e(void 0,void 0,void 0,function(){var e,r,n,t,l,a,d,c,s,p,u,m;return o(this,function(o){if(e={},E.trim()?E.length>50&&(e.name="Scope Name must be 50 characters or fewer"):e.name="Scope Name is required","approval_required"===J&&0===X.length&&0===$.length&&ie("Please select at least one approver or approver group."),e.name)return W(e),[2];if("approval_required"===J&&0===X.length&&0===$.length)return[2];ie("");try{r="approval_required"===J,n=w.getState().backwardCompatibility,t=n?{topic:I?"genreRuleSet":"globalRuleSet",customScopeGroupName:_.CUSTOM_SCOPE_GROUP_NAME,scopeDescription:E,parentScopeId:null,customScopeName:E,customScopeId:f(),createByName:(null==P?void 0:P.firstname)||"System",createdBy:(null==P?void 0:P.email)||"system@audacy.com",approvalRequired:r,appsecData:{application:null==T?void 0:T.applicationId,module:null==T?void 0:T.moduleId,roles:i(i([],r?[{users:X.map(function(e){return e.email}),groups:$.map(function(e){return e._id}),role:null!==(a=null===(l=O.find(function(e){return"Learning Manager"===e.name}))||void 0===l?void 0:l._id)&&void 0!==a?a:""}]:[],!0),[{users:[null==P?void 0:P.email],groups:[],role:null!==(c=null===(d=O.find(function(e){return"Instant Learning Admin"===e.name}))||void 0===d?void 0:d._id)&&void 0!==c?c:""}],!1)}}:{topic:I?"genreRuleSet":"globalRuleSet",scope_reference_id:null,scopeDescription:E,parentScopeId:null,scopeName:E,scopeReferenceMetadata:{},applicationMappingId:w.getState().app_integration_id},console.log("Add Scope payload:",t),ae(t),D(null===(s=null==te?void 0:te.data)||void 0===s?void 0:s.scopeId),R()}catch(e){console.error("An error occurred during scope creation.",e),null===(p=G.current)||void 0===p||p.show({severity:"error",summary:"Adding Scope Failed",detail:(null===(m=null===(u=null==e?void 0:e.response)||void 0===u?void 0:u.data)||void 0===m?void 0:m.message)||"There was an error creating the scope. Please try again."})}return[2]})})},style:{display:"flex",alignItems:"center",borderRadius:6,backgroundColor:"#2563EB",padding:"8px 16px",fontSize:14,fontWeight:500,color:"white",border:"none",cursor:"pointer",opacity:le||"Custom"===z&&!K?.5:1},disabled:le||"Custom"===z&&!K},{children:le?t(l,{children:[n(u,{className:"animate-spin",style:{marginRight:8,height:16,width:16,color:"white"}}),"Creating..."]}):"Create Scope"}))]}))]}))]}))]})):null};export{k as default};
|
|
1
|
+
import{__awaiter as e,__generator as o,__assign as r,__spreadArray as n}from"tslib";import{jsx as t,jsxs as i,Fragment as l}from"react/jsx-runtime";import{useState as a,useRef as s,useEffect as c}from"react";import{useMutation as d}from"@tanstack/react-query";import{X as u,Loader2 as p}from"lucide-react";import{Toast as m}from"primereact/toast";import{v4 as f}from"uuid";import h from"../components/StationOnboarding/StationAutocomplete.js";import g from"./AddScopeApprovalSearchComponent.js";import v from"../components/ScopeSkeletonLoader.js";import{Input as b}from"@mui/material";import y from"../store/useAuthStore.js";import{useAppSecRolesStore as S}from"../store/useAppSecRolesStore.js";import C from"../store/useEnvStore.js";import{createRuleSet as x,inheritScope as _}from"../apis/scopeApis.js";import{useLearningTemplateStore as w}from"../store/useLearningTemplateStore.js";import{IL_CONFIG_CONSTANTS as k}from"../config.js";import{dt as A}from"../store/useLMSConfigStore.js";import{MIDDLE_DRAWER_ADD_SCOPE_DT_PATH as R,MIDDLE_DRAWER_APPROVAL_SETTINGS_DT_PATH as I}from"../constants.js";var D=function(D){var q=D.isOpen,j=D.onClose,F=D.onCreate,z=D.hasGlobalRuleSet,L=D.parentId,E=a(""),B=E[0],W=E[1],N=a(""),G=N[0],T=N[1],M=a({}),P=M[0],O=M[1],K=s(null),U=y().user,H=S(function(e){return e.roles}),J=C(function(e){return e.rbacConfig}),Q=a(null),V=Q[0],X=Q[1],Y=a("approval_required"),Z=Y[0],$=Y[1],ee=a([]),oe=ee[0],re=ee[1],ne=a([]),te=ne[0],ie=ne[1],le=a(""),ae=le[0],se=le[1],ce=d({mutationFn:function(r){return e(void 0,void 0,void 0,function(){var e;return o(this,function(o){switch(o.label){case 0:return[4,x(r,null!==(e=null==U?void 0:U.accessToken)&&void 0!==e?e:"")];case 1:return[2,o.sent()]}})})},onSuccess:function(r){return e(void 0,void 0,void 0,function(){return o(this,function(e){return console.log("Rule Set Created Successfully",r),[2]})})}});ce.data;var de=ce.isPending,ue=ce.mutateAsync;return c(function(){q&&(W(""),T(""),O({}),X(null),$("approval_required"),re([]),ie([]),se(""))},[q]),q?de?t(v,{isLoading:de}):i("div",r({style:{position:"absolute",inset:0,zIndex:50,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"rgba(0,0,0,0.3)"}},{children:[t(m,{ref:K}),i("div",r({style:{position:"relative",width:600,borderRadius:12,backgroundColor:"white",padding:24,boxShadow:"0 25px 50px -12px rgba(0,0,0,0.25)"}},{children:[i("div",r({style:{marginBottom:24,display:"flex",alignItems:"flex-start",justifyContent:"space-between"}},{children:[i("div",{children:[t("h2",r({style:{margin:0,fontSize:18,fontWeight:500,color:"#19213D"}},{children:z?A("".concat(R,".title"),"Add Scope"):A("".concat(R,".globalTitle"),"Create Global Scope")})),t("p",r({style:{margin:"4px 0 0 0",fontSize:14,fontWeight:400,color:"#666F8D"}},{children:z?A("".concat(R,".subtitle"),"This scope will be created under Global scope and will inherit its learnings by default.",{parent:"Global"}):A("".concat(R,".globalSubtitle"),"This will be your Global scope that defines the base learnings shared across all stations.")}))]}),t("button",r({onClick:j,style:{background:"none",border:"none",padding:0,cursor:"pointer",color:"#9CA3AF"}},{children:t(u,{size:24})}))]})),i("div",r({style:{display:"flex",flexDirection:"column",gap:20}},{children:[i("div",r({style:{position:"relative",display:"flex",flexDirection:"column",gap:6}},{children:[i("label",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:[t("span",r({style:{marginRight:4,fontSize:16,fontWeight:600,color:"#8F2C23"}},{children:"*"})),A("".concat(R,".scopeName"),"Scope Name")]})),"Custom"===B?t(h,{value:G,onChange:function(e){if(e.length>50)return T(e.slice(0,50)),void O(function(e){return r(r({},e),{name:"Scope Name must be 50 characters or fewer"})});T(e),O(function(e){return r(r({},e),{name:void 0})})},onStationSelect:function(e){X(e)},style:{border:P.name?"1px solid #8F2C23":void 0}}):t(b,{value:G,onChange:function(e){var o=e.target.value;if(o.length>50)return T(o.slice(0,50)),void O(function(e){return r(r({},e),{name:"Scope Name must be 50 characters or fewer"})});T(o),O(function(e){return r(r({},e),{name:void 0})})},style:{border:"1px solid ".concat(P.name?"#8F2C23":"#F0F2F5")},placeholder:"e.g. Global Learnings"}),P.name&&t("p",r({style:{margin:"4px 0 0 0",fontSize:12,color:"#8F2C23"}},{children:P.name}))]})),i("div",r({style:{display:"flex",flexDirection:"column",gap:12}},{children:[i("label",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:[t("span",r({style:{marginRight:4,fontSize:16,fontWeight:600,color:"#8F2C23"}},{children:"*"})),A("".concat(I,".title"),"Learning Approval Settings")]})),i("div",r({role:"radio","aria-checked":"approval_required"===Z,tabIndex:0,style:{cursor:"pointer",display:"flex",flexDirection:"column",gap:4},onClick:function(){return $("approval_required")},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||$("approval_required")}},{children:[i("div",r({style:{display:"flex",alignItems:"center",gap:8}},{children:[t("div",r({style:{display:"flex",height:16,width:16,flexShrink:0,alignItems:"center",justifyContent:"center",borderRadius:"50%",border:"2px solid ".concat("approval_required"===Z?"#2563EB":"#CBD5E1")}},{children:"approval_required"===Z&&t("div",{style:{height:8,width:8,borderRadius:"50%",backgroundColor:"#2563EB"}})})),t("span",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:A("".concat(I,".approvalRequired.title"),"Approval Required Before Publishing")}))]})),t("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#666F8D"}},{children:A("".concat(I,".approvalRequired.subtitle"),"Learnings require approval before publishing.")}))]})),"approval_required"===Z&&t(g,{selectedApprovers:oe,selectedGroupOfApprovers:te,onApproversChange:re,onGroupsChange:ie}),ae&&t("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#8F2C23"}},{children:ae})),i("div",r({role:"radio","aria-checked":"publish_without"===Z,tabIndex:0,style:{cursor:"pointer",display:"flex",flexDirection:"column",gap:4},onClick:function(){$("publish_without"),se("")},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||($("publish_without"),se(""))}},{children:[i("div",r({style:{display:"flex",alignItems:"center",gap:8}},{children:[t("div",r({style:{display:"flex",height:16,width:16,flexShrink:0,alignItems:"center",justifyContent:"center",borderRadius:"50%",border:"2px solid ".concat("publish_without"===Z?"#2563EB":"#CBD5E1")}},{children:"publish_without"===Z&&t("div",{style:{height:8,width:8,borderRadius:"50%",backgroundColor:"#2563EB"}})})),t("span",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:A("".concat(I,".publishWithoutApproval.title"),"Publish Without Approval")}))]})),t("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#666F8D"}},{children:A("".concat(I,".publishWithoutApproval.subtitle"),"Learnings can be published directly.")}))]}))]})),i("div",r({style:{marginTop:32,display:"flex",justifyContent:"flex-end",gap:12}},{children:[t("button",r({onClick:j,style:{borderRadius:6,border:"1px solid #E2E8F0",padding:"8px 16px",fontSize:14,fontWeight:500,color:"#64748B",backgroundColor:"white",cursor:"pointer",opacity:de?.5:1},disabled:de},{children:A("".concat(R,".cancel"),"Cancel")})),t("button",r({onClick:function(){return e(void 0,void 0,void 0,function(){var e,r,t,i,l,a,s,c,d,u,p,m,h,g,v,b,y,S,C,x;return o(this,function(o){switch(o.label){case 0:if(e={},G.trim()?G.length>50&&(e.name="Scope Name must be 50 characters or fewer"):e.name="Scope Name is required","approval_required"===Z&&0===oe.length&&0===te.length&&se("Please select at least one approver or approver group."),e.name)return O(e),[2];if("approval_required"===Z&&0===oe.length&&0===te.length)return[2];se(""),o.label=1;case 1:return o.trys.push([1,7,,8]),r="approval_required"===Z,t=w.getState().backwardCompatibility,i=t?{topic:z?"genreRuleSet":"globalRuleSet",customScopeGroupName:k.CUSTOM_SCOPE_GROUP_NAME,scopeDescription:G,parentScopeId:null,customScopeName:G,customScopeId:f(),createByName:(null==U?void 0:U.firstname)||"System",createdBy:(null==U?void 0:U.email)||"system@audacy.com",approvalRequired:r,appsecData:{application:null==J?void 0:J.applicationId,module:null==J?void 0:J.moduleId,roles:n(n([],r?[{users:oe.map(function(e){return e.email}),groups:te.map(function(e){return e._id}),role:null!==(u=null===(d=H.find(function(e){return"Learning Manager"===e.name}))||void 0===d?void 0:d._id)&&void 0!==u?u:""}]:[],!0),[{users:[null==U?void 0:U.email],groups:[],role:null!==(m=null===(p=H.find(function(e){return"Instant Learning Admin"===e.name}))||void 0===p?void 0:p._id)&&void 0!==m?m:""}],!1)}}:{topic:z?"genreRuleSet":"globalRuleSet",scope_reference_id:null,scopeDescription:G,parentScopeId:null!=L?L:null,scopeName:G,scopeReferenceMetadata:{},scopeType:"Custom",applicationMappingId:w.getState().app_integration_id,approvalRequired:r,appsecData:{application:null==J?void 0:J.applicationId,module:null==J?void 0:J.moduleId,roles:n(n([],r?[{users:oe.map(function(e){return e.email}),groups:te.map(function(e){return e._id}),role:null!==(g=null===(h=H.find(function(e){return"Learning Manager"===e.name}))||void 0===h?void 0:h._id)&&void 0!==g?g:""}]:[],!0),[{users:[null==U?void 0:U.email],groups:[],role:null!==(b=null===(v=H.find(function(e){return"Instant Learning Admin"===e.name}))||void 0===v?void 0:v._id)&&void 0!==b?b:""}],!1)}},console.log("Add Scope payload:",i),[4,ue(i)];case 2:if(l=o.sent(),a=null===(y=null==l?void 0:l.data)||void 0===y?void 0:y.scopeId,t||!a||!L)return[3,6];o.label=3;case 3:return o.trys.push([3,5,,6]),[4,_({source_scope_id:L,target_scope_id:a,application_mapping_id:w.getState().app_integration_id||"",is_copy_parent_variant_id:!1})];case 4:return o.sent(),[3,6];case 5:return s=o.sent(),console.error("Failed to inherit rules for the new scope:",s),[3,6];case 6:return F(a),j(),[3,8];case 7:return c=o.sent(),console.error("An error occurred during scope creation.",c),null===(S=K.current)||void 0===S||S.show({severity:"error",summary:"Adding Scope Failed",detail:(null===(x=null===(C=null==c?void 0:c.response)||void 0===C?void 0:C.data)||void 0===x?void 0:x.message)||"There was an error creating the scope. Please try again."}),[3,8];case 8:return[2]}})})},style:{display:"flex",alignItems:"center",borderRadius:6,backgroundColor:"#2563EB",padding:"8px 16px",fontSize:14,fontWeight:500,color:"white",border:"none",cursor:"pointer",opacity:de||"Custom"===B&&!V?.5:1},disabled:de||"Custom"===B&&!V},{children:de?i(l,{children:[t(p,{className:"animate-spin",style:{marginRight:8,height:16,width:16,color:"white"}}),"Creating..."]}):A("".concat(R,".submitButton"),"Create Scope")}))]}))]}))]}))]})):null};export{D as default};
|
|
2
2
|
//# sourceMappingURL=AddScopeModal.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e}from"tslib";import{jsxs as o,jsx as n}from"react/jsx-runtime";import{useState as
|
|
1
|
+
import{__assign as e}from"tslib";import{jsxs as o,jsx as n}from"react/jsx-runtime";import{useState as t}from"react";import{Dialog as r,DialogContent as i,DialogContentText as a,DialogActions as c}from"@mui/material";import l from"@mui/icons-material/Check";import d from"@mui/icons-material/CloseRounded";import{X as s,Loader2 as p}from"lucide-react";import{dt as u}from"../store/useLMSConfigStore.js";import{LEARNING_DT_PATH as m}from"../constants.js";var g={header:{padding:"16px 16px 0",display:"flex",justifyContent:"space-between",alignItems:"center"},title:{color:"#334155",fontSize:"1rem"},closeButton:{border:"none",background:"transparent",padding:0,color:"#9CA3AF",cursor:"pointer",outline:"none",transition:"color 150ms ease-in-out"},dialogContent:{padding:"8px 16px"},description:{color:"#475569",fontSize:"0.875rem",lineHeight:1.625},descriptionStrong:{fontWeight:700,color:"#1E293B"},secondaryDescription:{color:"#475569",fontSize:"0.875rem",marginTop:"8px"},rejectSection:{marginTop:"20px"},feedbackLabel:{display:"block",fontSize:"0.875rem",fontWeight:600,color:"#334155",marginBottom:"6px"},textarea:{width:"100%",fontSize:"0.875rem",color:"#1E293B",padding:"10px",border:"1px solid #E2E8F0",borderRadius:"0.5rem",outline:"none",resize:"none",transition:"border-color 150ms ease-in-out, box-shadow 150ms ease-in-out",boxSizing:"border-box",fontFamily:"inherit"},checkboxLabel:{display:"flex",justifyContent:"flex-end",alignItems:"center",gap:"8px",cursor:"pointer",userSelect:"none",marginTop:"16px"},checkbox:{margin:0,height:"1.125rem",width:"1.125rem",borderRadius:"0.25rem",border:"1px solid #CBD5E1",accentColor:"#DC2626",cursor:"pointer"},checkboxTextWrap:{display:"flex",alignItems:"center"},checkboxText:{fontSize:"0.875rem",fontWeight:500,color:"#1E293B",transition:"color 150ms ease-in-out"},actions:{padding:"24px",gap:"8px"},secondaryButton:{padding:"8px 20px",fontSize:"0.875rem",fontWeight:500,color:"#475569",border:"1px solid #E2E8F0",borderRadius:"0.5rem",backgroundColor:"#FFFFFF",transition:"background-color 150ms ease-in-out, border-color 150ms ease-in-out",cursor:"pointer"},primaryButton:{display:"inline-flex",alignItems:"center",gap:"0.375rem",padding:"8px 20px",fontSize:"0.875rem",fontWeight:500,color:"#FFFFFF",border:"none",borderRadius:"0.5rem",transition:"background-color 150ms ease-in-out",boxShadow:"none",cursor:"pointer"},actionIcon:{width:"1rem",height:"1rem",fontSize:"1rem"},variantCard:{backgroundColor:"#f9fafb",border:"1px solid #e5e7eb",borderRadius:"10px",padding:"16px 20px",marginTop:"12px"},variantCardTitle:{fontSize:"0.9375rem",fontWeight:700,color:"#111111",marginBottom:"4px"},variantCardDescription:{fontSize:"0.8125rem",color:"#374151",marginBottom:"12px",lineHeight:1.5},variantCardMono:{fontSize:"0.75rem",color:"#4b5563",fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",lineHeight:1.6}},h=function(h){var b=h.open,f=h.mode,x=h.onClose,y=h.onSubmit,v=h.variantInformation,C=h.ruleTitle,k=h.pendingVariants,F=void 0===k?[]:k,E=h.isPending,S=void 0!==E&&E,D=t(""),j=D[0],w=D[1],T=t(!0),B=T[0],M=T[1],z=t(!1),A=z[0],L=z[1],W=t(!1),I=W[0],R=W[1],P=t(!1),H=P[0],N=P[1],V=t(!1),Y=V[0],q=V[1],G=t(!1),J=G[0],K=G[1],O="undefined"!=typeof document?document.getElementById("rule-template-layout-content"):null,Q="reject"===f,U=function(){y(Q?{feedback:j,deleteLearning:B}:{}),w(""),M(!1)},X=function(){w(""),M(!1),x()};return o(r,e({open:b,onClose:X,container:O,maxWidth:!1,fullWidth:!0,sx:{position:"absolute",inset:0,zIndex:999,"& .MuiBackdrop-root":{position:"absolute"},"& .MuiDialog-container":{alignItems:"center",justifyContent:"center",padding:"24px 16px"},"& .MuiDialog-paper":{width:"100%",maxWidth:"640px",margin:0,borderRadius:"16px"}}},{children:[o("div",e({style:g.header},{children:[n("div",e({style:g.title},{children:"".concat(Q?u("".concat(m,".rejectDialog.title"),"Reject Learning"):u("".concat(m,".approveDialog.title"),"Approve Learning"))})),n("button",e({onClick:x,onMouseEnter:function(){return L(!0)},onMouseLeave:function(){return L(!1)},style:e(e({},g.closeButton),{color:A?"#4B5563":"#9CA3AF"})},{children:n(s,{size:24})}))]})),o(i,e({sx:g.dialogContent},{children:[o(a,e({sx:g.description},{children:[n("span",e({style:g.descriptionStrong},{children:v}))," ","".concat(Q?u("".concat(m,".rejectDialog.desc"),"will not be published or applied within the selected scope. You can provide feedback before rejecting"):u("".concat(m,".approveDialog.desc"),"will be published and become active within the selected scope after approval."))]})),F.length>0&&n("div",{children:F.map(function(t,r){return o("div",e({style:g.variantCard},{children:[o("div",e({style:g.variantCardTitle},{children:[C,F.length>1?" — Variant ".concat(r+1):""]})),t.description&&n("div",e({style:g.variantCardDescription},{children:t.description})),o("div",e({style:g.variantCardMono},{children:[t.whenToApply&&o("div",{children:["WTA — ",t.whenToApply]}),t.whenNotToApply&&o("div",{children:["WNTA — ",t.whenNotToApply]})]}))]}),t.variantId)})}),n(a,e({sx:g.secondaryDescription},{children:Q?"":u("".concat(m,".approveDialog.footer"),"Take a moment to check the configuration before moving forward.")})),Q&&o("div",e({style:g.rejectSection},{children:[o("div",{children:[n("label",e({htmlFor:"feedback",style:g.feedbackLabel},{children:u("".concat(m,".rejectDialog.feedbackTitle"),"Feedback")})),n("textarea",{id:"feedback",rows:4,value:j,onChange:function(e){return w(e.target.value)},onFocus:function(){return R(!0)},onBlur:function(){return R(!1)},placeholder:"".concat(u("".concat(m,".rejectDialog.feedbackPlaceholder"),"Add feedback or reason for rejection")),style:e(e({},g.textarea),{borderColor:I?"#EF4444":"#E2E8F0",boxShadow:I?"0 0 0 2px rgba(239, 68, 68, 0.2)":"none"})})]}),o("label",e({style:g.checkboxLabel,onMouseEnter:function(){return N(!0)},onMouseLeave:function(){return N(!1)}},{children:[n("input",{type:"checkbox",checked:B,disabled:!1,onChange:function(e){return M(e.target.checked)},style:g.checkbox}),n("div",e({style:g.checkboxTextWrap},{children:n("span",e({style:e(e({},g.checkboxText),{color:H?"#0F172A":"#1E293B"})},{children:u("".concat(m,".rejectDialog.deleteCheckboxLabel"),"Also delete this learning")}))}))]}))]}))]})),o(c,e({sx:g.actions},{children:[n("button",e({onClick:X,type:"button",disabled:S,onMouseEnter:function(){return q(!0)},onMouseLeave:function(){return q(!1)},style:e(e({},g.secondaryButton),{backgroundColor:Y&&!S?"#F8FAFC":"#FFFFFF",borderColor:Y&&!S?"#CBD5E1":"#E2E8F0",opacity:S?.5:1,cursor:S?"not-allowed":"pointer"})},{children:u("".concat(m,".approveDialog.cancel"),"Cancel")})),o("button",Q?e({onClick:U,type:"button",disabled:S,onMouseEnter:function(){return K(!0)},onMouseLeave:function(){return K(!1)},style:e(e({},g.primaryButton),{backgroundColor:S?"#EF4444":J?"#DC2626":"#EF4444",opacity:S?.7:1,cursor:S?"not-allowed":"pointer"})},{children:[S?n(p,{size:16,style:{animation:"spin 1s linear infinite"}}):n(d,{sx:g.actionIcon}),S?u("".concat(m,".rejectDialog.loadingText"),"Processing..."):u("".concat(m,".rejectDialog.rejectLearning"),"Reject Learning")]}):e({onClick:U,type:"button",disabled:S,onMouseEnter:function(){return K(!0)},onMouseLeave:function(){return K(!1)},style:e(e({},g.primaryButton),{backgroundColor:S?"#22C55E":J?"#16A34A":"#22C55E",opacity:S?.7:1,cursor:S?"not-allowed":"pointer"})},{children:[S?n(p,{size:16,style:{animation:"spin 1s linear infinite"}}):n(l,{sx:g.actionIcon}),S?u("".concat(m,".approveDialog.loadingText"),"Processing..."):u("".concat(m,".approveDialog.approveLearning"),"Approve Learning")]}))]})),n("style",{children:"@keyframes spin { to { transform: rotate(360deg); } }"})]}))};export{h as default};
|
|
2
2
|
//# sourceMappingURL=ApprovalLearningDialog.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as t,__assign as r}from"tslib";import{jsx as i,jsxs as n,Fragment as o}from"react/jsx-runtime";import{useMemo as l,useCallback as a}from"react";import{Loader2 as s,Lock as u}from"lucide-react";import{useLearningTemplateStore as d}from"../store/useLearningTemplateStore.js";import{findNodeById as c}from"../utils/treeUtils.js";import m from"./RuleHeader.js";import f from"../components/EmptyLearningState.js";import p from"./RuleTierList.js";import{getRuleOverrideHistory as
|
|
1
|
+
import{__awaiter as e,__generator as t,__assign as r}from"tslib";import{jsx as i,jsxs as n,Fragment as o}from"react/jsx-runtime";import{useMemo as l,useCallback as a}from"react";import{Loader2 as s,Lock as u}from"lucide-react";import{useLearningTemplateStore as d}from"../store/useLearningTemplateStore.js";import{findNodeById as c}from"../utils/treeUtils.js";import m from"./RuleHeader.js";import f from"../components/EmptyLearningState.js";import p from"./RuleTierList.js";import{getRuleOverrideHistory as g}from"../apis/scopeApis.js";import{usePermissionsStore as h}from"../store/usePermissionsStore.js";import{dt as v}from"../store/useLMSConfigStore.js";var S=function(S){var y,x=S.onAddRule,R=S.onDeleteRule,b=S.onEditRule,D=S.onEditVariant,E=S.onDeleteVariant,j=S.onExportRule,C=S.isExporting,T=S.emptyStateTitle,L=void 0===T?v("emptyStateLearning.title","No learnings have been added !"):T,w=S.emptyStateDesc,I=void 0===w?v("emptyStateLearning.desc","Start by adding learnings that should apply across all stations."):w,N=S.emptyStateButtonText,A=void 0===N?v("emptyStateLearning.createNewLearning","Create New Learning"):N,V=S.onToggleSuccess,B=S.onReorderRules,F=S.onRefreshRuleSets,G=S.setDeleteConfirmationUsedFor,H=S.onCopyToTier,z=d(function(e){return e.currentRules}),k=d(function(e){return e.toggleRuleTier}),U=d(function(e){return e.scopeTreeData}),W=d(function(e){return e.selectedRuleSetId}),M=d(function(e){return e.createdVariantInfo}),O=d(function(e){return e.urlVariantId}),P=h(function(e){return e.isLoading}),_=h(function(e){return e.hasPermission}),Y=W?c((null==U?void 0:U.data)||null,W):null,q=null==Y?void 0:Y.id,J="GLOBAL"===(null==Y?void 0:Y.type)||"Global"===(null==Y?void 0:Y.name),K=Y?{ruleSetId:Y.id,ruleSetName:Y.name,ruleSetDesc:"",ruleCount:null===(y=null==Y?void 0:Y.metrics)||void 0===y?void 0:y.learningsCount}:void 0,Q=_("ilotj.rule.create",q)||_("ilotj.rule.variant.create",q),X=_("ilotj.rule.view",q),Z=l(function(){var e=new Map;return M&&M.forEach(function(t){t.variants.forEach(function(t){return e.set(t.id,t.action)})}),O&&e.set(O,"existing"),e.size>0?e:void 0},[M,O]),$=l(function(){if(M&&z){var e={tier1:"1",tier2:"2",tier_1:"1",tier_2:"2"},t={};return z.forEach(function(e){t[e.id]=e.name}),M.map(function(r){return t[e[r.tierName]]}).filter(Boolean)}},[M,z]),ee=a(function(r,i){return e(void 0,void 0,void 0,function(){var e,r;return t(this,function(t){switch(t.label){case 0:return t.trys.push([0,2,,3]),[4,g(i||"")];case 1:return(e=t.sent())&&e.data?[2,e.data]:[2,null];case 2:throw r=t.sent(),console.error("Failed to fetch override history",r),r;case 3:return[2]}})})},[]);return P?i("div",r({style:{display:"flex",height:"100vh",alignItems:"center",justifyContent:"center",backgroundColor:"#f9fafb",fontFamily:"Helvetica, Arial, sans-serif"}},{children:n("div",r({style:{display:"flex",flexDirection:"column",alignItems:"center",color:"#4b5563"}},{children:[i(s,{style:{marginBottom:"1rem",height:"3rem",width:"3rem",color:"#007aff",animation:"spin 1s linear infinite"}}),i("p",r({style:{fontSize:"1rem",fontWeight:500,color:"#4b5563"}},{children:"Loading your permissions…"}))]}))})):X?z&&0!==(null==z?void 0:z.length)?n(o,{children:[i(m,{onAddRule:x,onExport:j,isExporting:C,ruleSetName:null==K?void 0:K.ruleSetName,ruleSetDescription:null==K?void 0:K.ruleSetDesc,isGlobal:J,ruleSetId:q}),i(p,{tiers:z,ruleSetId:(null==K?void 0:K.ruleSetId)||"",onToggleTier:k,onDeleteRule:R,isGlobalScope:J,onFetchOverrideHistory:ee,onEditRule:b,onEditVariant:D,onDeleteVariant:E,highlightedVariants:Z,highlightedTierNames:$,onToggleSuccess:V,onReorderRules:B,onRefreshRuleSets:F,setDeleteConfirmationUsedFor:G,onCopyToTier:H})]}):n(o,{children:[i(m,{onAddRule:x,onExport:j,isExporting:C,ruleSetName:null==K?void 0:K.ruleSetName,ruleSetDescription:null==K?void 0:K.ruleSetDesc,isGlobal:J}),i(f,{onCreate:x,title:L,desc:I,button:A,canCreateRule:Q})]}):n(o,{children:[i(m,{onAddRule:x,onExport:j,isExporting:C,ruleSetName:null==K?void 0:K.ruleSetName,ruleSetDescription:null==K?void 0:K.ruleSetDesc,isGlobal:J,ruleSetId:q}),n("div",r({style:{display:"flex",height:"80vh",width:"100%",flexDirection:"column",alignItems:"center",justifyContent:"center",padding:"2rem",textAlign:"center",backgroundColor:"#f0f2f5",fontFamily:"Helvetica, Arial, sans-serif"}},{children:[i("div",r({style:{marginBottom:"1.5rem",height:"4rem",width:"4rem",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:"50%",background:"linear-gradient(145deg, #e0e0e0, #ffffff)",boxShadow:"4px 4px 12px rgba(0,0,0,0.05), -4px -4px 12px rgba(255,255,255,0.7)"}},{children:i(u,{style:{height:"2rem",width:"2rem",color:"#8e8e93"}})})),i("h3",r({style:{fontSize:"1.25rem",fontWeight:600,color:"#1c1c1e"}},{children:"Access Denied"})),i("p",r({style:{maxWidth:"22rem",fontSize:"1rem",color:"#636366",lineHeight:1.6,marginBottom:"1rem"}},{children:"You do not have permission to view learnings for this scope."}))]}))]})};export{S as default};
|
|
2
2
|
//# sourceMappingURL=ContentLogic.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e,__awaiter as n,__generator as
|
|
1
|
+
import{__assign as e,__awaiter as n,__generator as o}from"tslib";import{jsxs as i,Fragment as r,jsx as t}from"react/jsx-runtime";import{useRef as a,useState as l,useEffect as c}from"react";import{GripVertical as s,ChevronUp as u,ChevronDown as d}from"lucide-react";import{toggleVariant as p}from"../apis/scopeApis.js";import v from"../styles/RuleAccordion.module.css.js";import m from"../styles/CustomTooltip.module.css.js";import g from"./InheritanceBreadcrumb.js";import f from"../components/ConfirmationModal.js";import h from"../components/CustomTooltip.js";import b from"../store/useAuthStore.js";import{usePermissionsStore as j}from"../store/usePermissionsStore.js";import{useLearningTemplateStore as T}from"../store/useLearningTemplateStore.js";import A from"./ApprovalLearningDialog.js";import D from"./ApprovalActionButton.js";import S from"./PendingApprovalChip.js";import{useApproveOrRejectVariantsMutation as C}from"../queries/useApprovalQueries.js";import I from"../store/useEnvStore.js";import{Toast as w}from"primereact/toast";import{dt as y}from"../store/useLMSConfigStore.js";import{LEARNING_DT_PATH as L}from"../constants.js";var N=function(N){var x,P,O,R,B,_,k,E,M,H,V,z,F,G=N.rule,q=N.idx,Q=N.ruleSetId,U=N.isOpen,Y=N.onToggle,J=N.onDelete;N.onEdit,N.isGlobalScope;var K=N.deleteButtonLabel,W=void 0===K?"Delete":K;N.editButtonLabel;var X=N.enableLearningRuleLabel,Z=void 0===X?"Enable":X,$=N.disableLearningRuleLabel,ee=void 0===$?"Disable":$,ne=N.onToggleSuccess,oe=N.dragControls,ie=b.getState().user,re=j(function(e){return e.hasPermission}),te=re("ilotj.rule.delete",Q),ae=re("ilotj.rule.enable",Q),le=re("ilotj.rule.disable",Q),ce=re("ilotj.rule.selfApprove",Q),se=re("ilotj.rule.approve",Q),ue=re("ilotj.scope.approve",Q),de=re("ilotj.rule.pendingApproval.view",Q),pe=re("ilotj.rule.variant.pendingApproval.edit",Q),ve=ce||se||ue||pe,me=de||ve,ge=C(),fe=I(function(e){return e.rbacConfig}),he=fe?{application:null==fe?void 0:fe.applicationId,scopeLevelModuleId:null!==(x=null==fe?void 0:fe.moduleId)&&void 0!==x?x:"",applicationLevelModuleId:null!==(P=null==fe?void 0:fe.applicationModuleId)&&void 0!==P?P:"",applicationLevelResourceId:null!==(O=null==fe?void 0:fe.applicationResourceId)&&void 0!==O?O:""}:void 0,be=a(null),je=l(!1),Te=je[0],Ae=je[1],De=G.variants&&G.variants.length>0?!G.variants.every(function(e){return!1===e.is_enabled}):!1!==G.is_enabled,Se=l(!1),Ce=Se[0],Ie=Se[1],we=null===(R=G.variants)||void 0===R?void 0:R.map(function(e){return e.inheritance||[]}).reduce(function(e,n){return n.length>e.length?n:e},[]),ye=null===(B=G.variants)||void 0===B?void 0:B.some(function(e){return null==e?void 0:e.isOverridden}),Le=De?le:ae;G.inheritance&&G.inheritance.length>0&&(null===(_=G.inheritance)||void 0===_||_.length);var Ne=null!==(E=null===(k=G.variants)||void 0===k?void 0:k.length)&&void 0!==E?E:0,xe=l({isOpen:!1,mode:"approve"}),Pe=xe[0],Oe=xe[1],Re=null!==(H=null===(M=G.variants)||void 0===M?void 0:M.filter(function(e){return"pending_approval"===e.approvalStatus}).length)&&void 0!==H?H:0,Be=T(function(e){return e.urlVariantId}),_e=T(function(e){return e.urlApprovalAction}),ke=T(function(e){return e.clearUrlApprovalParams});c(function(){var e;if(Be&&_e){var n=null===(e=G.variants)||void 0===e?void 0:e.find(function(e){return e.variantId===Be});n&&"pending_approval"===(null==n?void 0:n.approvalStatus)&&ve&&(Oe({isOpen:!0,mode:_e}),ke())}},[Be,_e,G.variants,ke,ve]);var Ee=function(e,n){e.stopPropagation(),Oe({isOpen:!0,mode:n})},Me=U?"".concat(v.accordionHeader," ").concat(v.accordionHeaderOpen):v.accordionHeader;return i(r,{children:[t(w,{ref:be}),t("div",e({className:Me,onClick:Y},{children:i("div",e({className:v.headerContent},{children:[i("div",e({className:v.headerTopRow},{children:[t("div",e({className:v.titleSection},{children:i("div",e({className:v.titleRow},{children:[t("div",e({className:v.dragHandle,title:"Drag to reorder",style:{touchAction:"none"},onPointerDown:function(e){e.stopPropagation(),null==oe||oe.start(e)}},{children:t(s,{size:18})})),i("span",e({className:v.ruleTitle},{children:[q+1,". ",G.ruleTitle]})),G.dataSource&&t("span",e({className:v.dataSourceTag},{children:null===(V=G.dataSource)||void 0===V?void 0:V.tag})),me&&t(S,{count:Re}),ye&&t(h,e({content:"Inherited from the ".concat((null==we?void 0:we.length)>=2?we[we.length-2]:"parent"," scope and overridden in this scope."),placement:"top",withArrow:!0,contentClassName:m.customTooltip,sideOffset:5},{children:t("span",e({className:v.overriddenTag},{children:"Overridden"}))})),!De&&t("span",e({className:v.learningDisabledPill},{children:"Disabled"}))]}))})),t("div",e({className:v.headerActions},{children:t("div",e({className:v.chevronIcon},{children:t(U?u:d,{size:20})}))}))]})),i("div",e({className:v.footerRow},{children:[t(g,{inheritance:we||[]}),i("div",e({className:v.headerButtonGroup},{children:[Le&&t("button",e({onClick:function(e){return n(void 0,void 0,void 0,function(){return o(this,function(n){return e.stopPropagation(),Ae(!0),[2]})})},disabled:Ce,className:v.toggleLearningButton},{children:De?ee:Z})),ve&&Re>1&&i(r,{children:[t(D,{variant:"approve",text:Re>1?"Approve All":"Approve",onClick:function(e){return Ee(e,"approve")}}),t(D,{variant:"reject",text:Re>1?"Reject All":"Reject",onClick:function(e){return Ee(e,"reject")}})]}),te&&J&&t("button",e({className:v.deleteButton,onClick:function(e){e.stopPropagation(),null==J||J()}},{children:W}))]}))]}))]}))})),t(f,{isOpen:Te,title:De?y("".concat(L,".disableDialog.title"),"Disable Learning?"):y("".concat(L,".enableDialog.title"),"Enable Learning?"),description:De?y("".concat(L,".disableDialog.desc"),"Are you sure you want to disable this learning for ".concat(G.ruleTitle,"?"),{rule_title:G.ruleTitle}):y("".concat(L,".enableDialog.desc"),"Are you sure you want to enable this learning for ".concat(G.ruleTitle,"?"),{rule_title:G.ruleTitle}),warning:De?y("".concat(L,".disableDialog.warningText"),"This learning will no longer influence upcoming schedules. You can enable it again anytime."):y("".concat(L,".enableDialog.warningText"),"This learning will start influencing upcoming schedules again."),confirmText:De?y("".concat(L,".disableDialog.deleteText"),"Disable"):y("".concat(L,".enableDialog.deleteText"),"Enable"),cancelText:y("".concat(L,De?".disableDialog.cancelText":".enableDialog.cancelText"),"Cancel"),loadingText:y("".concat(L,De?".disableDialog.loadingText":".enableDialog.loadingText"),"Processing..."),confirmBgColor:De?"#DC2626":"#16A34A",onConfirm:function(){return n(void 0,void 0,void 0,function(){var e,n,i;return o(this,function(o){switch(o.label){case 0:Ie(!0),o.label=1;case 1:return o.trys.push([1,3,4,5]),0===(e=(null===(i=G.variants)||void 0===i?void 0:i.map(function(e){return e.variantId}))||[]).length&&G.ruleId&&e.push(G.ruleId),null==ie?void 0:ie.email,[4,p(e,!De)];case 2:return o.sent(),null==ne||ne(),[3,5];case 3:return n=o.sent(),console.error("Failed to toggle rule variants",n),[3,5];case 4:return Ie(!1),Ae(!1),[7];case 5:return[2]}})})},onCancel:function(){return Ae(!1)},isLoading:Ce}),t(A,{open:Pe.isOpen,mode:Pe.mode,onClose:function(){return Oe(function(n){return e(e({},n),{isOpen:!1})})},onSubmit:function(n){return function(n){var o,i,r=null!==(i=null===(o=G.variants)||void 0===o?void 0:o.filter(function(e){return"pending_approval"===e.approvalStatus}).map(function(e){return e.variantId}))&&void 0!==i?i:[];r.length&&Q&&ge.mutate({variantIds:r,status:"approve"===Pe.mode?"approved":"rejected",feedback:n.feedback,scopeId:Q,appsecData:he},{onSuccess:function(){var n;Oe(function(n){return e(e({},n),{isOpen:!1})}),null==ne||ne(),null===(n=be.current)||void 0===n||n.show({severity:"success",summary:"".concat(Pe.mode," Successfully"),detail:"approve"===Pe.mode?"Learning approved successfully":"Learning rejected successfully"})},onError:function(e){var n;console.error("An error occurred during rejecting.",e),null===(n=be.current)||void 0===n||n.show({severity:"error",summary:"".concat(Pe.mode," Failed"),detail:"There was an error ".concat("approve"===Pe.mode?"approving":"rejecting"," the learning. Please try again.")})}})}(n)},variantInformation:"".concat(G.ruleTitle,"-").concat(Ne>1?"Variants":"Variant 1"),ruleTitle:G.ruleTitle,pendingVariants:null!==(F=null===(z=G.variants)||void 0===z?void 0:z.filter(function(e){return"pending_approval"===e.approvalStatus}))&&void 0!==F?F:[],isPending:ge.isPending})]})};export{N as default};
|
|
2
2
|
//# sourceMappingURL=RuleAccordionHeader.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as n,__spreadArray as t,__assign as r}from"tslib";import{jsx as o,jsxs as i,Fragment as l}from"react/jsx-runtime";import{useRef as a,useState as s,useEffect as u}from"react";import{useLearningTemplateStore as c}from"../store/useLearningTemplateStore.js";import d from"../components/EmptyLearningState.js";import{getRulesInRuleSetById as p,exportRuleSet as m,deleteRule as f,deleteQuestion as v,alterQuestionPriority as g}from"../apis/scopeApis.js";import h from"../components/RuleContentSkeleton.js";import{Toast as y}from"primereact/toast";import T from"./ContentLogic.js";import w from"../components/ErrorStateDisplay.js";import b from"../shared/SuccessToastContent.js";import C from"../shared/ErrorToastContent.js";import{findNodeById as R}from"../utils/treeUtils.js";import S from"../styles/LearningContent.module.css.js";import I from"../components/ConfirmationModal.js";import"../../IL-OTJ/_components/atoms/Textarea/Textarea.js";import"lucide-react";import"../../IL-OTJ/_components/InputDataReasoningCard.js";import"../../IL-OTJ/_components/TooltipComponent.js";import"../../IL-OTJ/_components/templates/TemplatesMap/templatesMap.js";import{CitationProvider as _}from"../../IL-OTJ/store/CitationsContext.js";import"@mui/material";import"uuid";import"@mui/material/Tooltip";import"react-markdown";import"rehype-raw";import"axios";import"@e-llm-studio/streaming-response";import"@e-llm-studio/watch-me-work";import"../../IL-OTJ/_components/ChatComponents/ChatHeader.js";import"remark-gfm";import"../../IL-OTJ/_components/MarkdownComponents/MarkdownElements.js";import"../../IL-OTJ/_components/CitationLink.js";import"@e-llm-studio/citation";import"@viswa-test/test-citation";import"../LearningManagement.js";import j from"../../IL-OTJ/ValueTypeWrappers/TeachMePlugin.js";var k=function(k){var L,O=k.noRulesTitle,D=void 0===O?"No rules have been added !":O,M=k.noRulesDesc,x=void 0===M?"Start by adding rules that should apply across all stations.":M,N=k.noRulesButtonText,A=void 0===N?"Create New Rule":N,E=k.deleteRuleSuccessMessage,F=void 0===E?"Rule deleted successfully!":E,V=k.deleteVariantSuccessMessage,P=void 0===V?"Variant deleted successfully!":V,B=k.deleteRuleErrorMessage,J=void 0===B?"Failed to delete rule. Please try again.":B,U=k.deleteVariantErrorMessage,W=void 0===U?"Failed to delete variant. Please try again.":U,G=k.deleteModalTitle,q=void 0===G?"Delete":G,H=k.deleteRuleModalWarning,$=void 0===H?"This will permanently delete the rule configuration.":H,z=k.deleteVariantModalWarning,K=void 0===z?"This will permanently delete the variant configuration.":z,Q=k.deleteConfirmText,X=void 0===Q?"Delete":Q,Y=k.onRefreshRuleSets,Z=k.app_integration_id,ee=k.token,ne=c(function(e){return e.selectedRuleSetId}),te=c(function(e){return e.scopeTreeData}),re=c(function(e){return e.sidebarTab}),oe=c(function(e){return e.setInitialRules}),ie=c(function(e){return e.currentRules}),le=c(function(e){return e.setRawAuditRuleData});c(function(e){return e.createdVariantInfo});var ae=c(function(e){return e.resetCreatedVariantInfo}),se=c(function(e){return e.isILModalTriggered}),ue=c(function(e){return e.setIsILModalTriggered}),ce=a(null),de=s(!1),pe=de[0],me=de[1],fe=s(null),ve=fe[0],ge=fe[1],he=s(null),ye=he[0],Te=he[1],we=s(null),be=we[0],Ce=we[1],Re=s(null),Se=Re[0],Ie=Re[1],_e=s(!1),je=_e[0],ke=_e[1],Le=s(null),Oe=Le[0],De=Le[1],Me=s(!1),xe=Me[0],Ne=Me[1],Ae=s(""),Ee=Ae[0],Fe=Ae[1],Ve=s(null),Pe=Ve[0],Be=Ve[1],Je=s(!1),Ue=Je[0],We=Je[1],Ge=s(!1),qe=Ge[0],He=Ge[1],$e=s("ruleDeletion"),ze=$e[0],Ke=$e[1],Qe=s(null),Xe=Qe[0],Ye=Qe[1],Ze=s(!1),en=Ze[0],nn=Ze[1],tn=s(!1),rn=tn[0],on=tn[1],ln=c.getState().tiers,an=s(null),sn=an[0],un=an[1],cn=s(null),dn=cn[0],pn=cn[1],mn=s(null),fn=mn[0],vn=mn[1],gn=function(){ge(null),Te(null),me(!0),Ie(0)},hn=function(){me(!1),ue(!1),ge(null),Te(null),Ce(null),Ie(null),He(!1),on(!1),yn(),un(null),pn(null),vn(null),Y&&Y(!1,ne||void 0)};u(function(){yn()},[ne,oe]),u(function(){se&&me(!0)},[se]);var yn=function(o){return void 0===o&&(o=!1),e(void 0,void 0,void 0,function(){var e,i,l,a,s,u,d,m,f,v,g,h,y,T,w,b,C,R,S;return n(this,function(n){switch(n.label){case 0:if(!ne)return oe([]),[2];o||ke(!0),De(null),n.label=1;case 1:return n.trys.push([1,3,4,5]),[4,p(ne,ee)];case 2:return e=n.sent(),console.log("response==",e),(null==e?void 0:e.data)&&0!==Object.keys(e.data).length?(le(e),i=e.data,console.log("rulesData==",i),l=new Set(["ruleSetName","ruleSetDesc","created_at","updated_at","created_by","updated_by"]),a=Array.isArray(i.tiers)?t([],i.tiers,!0).sort(function(e,n){var t,r;return(null!==(t=e.tier_priority)&&void 0!==t?t:0)-(null!==(r=n.tier_priority)&&void 0!==r?r:0)}).map(function(e){return[e.name,e.value]}):Object.entries(i).filter(function(e){var n=e[0],t=e[1];return!l.has(n)&&Array.isArray(t)}),s=a.map(function(e){var n=e[1];return new Set(n.flatMap(function(e){var n,t;return null!==(t=null===(n=e.variants)||void 0===n?void 0:n.map(function(e){return e.link_id}).filter(Boolean))&&void 0!==t?t:[]}))}),u=s.flatMap(function(e){return Array.from(e)}),d=u.reduce(function(e,n){var t;return e[n]=(null!==(t=e[n])&&void 0!==t?t:0)+1,e},{}),m=new Set(Object.entries(d).filter(function(e){return e[1]>1}).map(function(e){return e[0]})),f=function(e){return e.map(function(e){var n;return r(r({},e),{variants:null===(n=e.variants)||void 0===n?void 0:n.map(function(e){return r(r({},e),{isLinked:!!e.link_id&&m.has(e.link_id)})})})})},v=a.map(function(e,n){var t,r=e[0],o=e[1],i=ln.find(function(e){return e.tier_name===r}),l=r.replace(/tier(\d+)/i,"tier_$1");return{id:null!==(t=null==i?void 0:i.tier_id)&&void 0!==t?t:String(n+1),name:l.replace(/_/g," ").replace(/\b\w/g,function(e){return e.toUpperCase()}),ruleCount:o.length,description:0===n?"These are the system-wide learnings applied across all stations.":"These learnings apply after higher-priority tiers and may refine or relax default behavior.",isOpen:0===n,rules:f(o)}}),(g=c.getState().createdVariantInfo)&&g.length>0?(h=Object.fromEntries(a.map(function(e,n){return[e[0],String(n+1)]})),y=new Set(g.map(function(e){return h[e.tierName]}).filter(Boolean)),T=v.map(function(e){return r(r({},e),{isOpen:e.isOpen||y.has(e.id)})}),oe(T),(w=null===(S=null===(R=null===(C=g[0])||void 0===C?void 0:C.variants)||void 0===R?void 0:R[0])||void 0===S?void 0:S.id)?setTimeout(function(){var e=document.querySelector('[data-variant-id="'.concat(w,'"]'));e&&e.scrollIntoView({behavior:"smooth",block:"center"}),setTimeout(function(){return ae()},1e4)},500):ae()):oe(v),[3,5]):(oe([]),[2]);case 3:return b=n.sent(),console.error("Failed to fetch rule details",b),404!==(null==b?void 0:b.status)&&De((null==b?void 0:b.message)||"Failed to load rules. Please try again."),oe([]),[3,5];case 4:return o||ke(!1),[7];case 5:return[2]}})})},Tn=ne?R((null==te?void 0:te.data)||null,ne):null,wn=Tn?{ruleSetId:Tn.id,ruleSetName:Tn.name,ruleSetDesc:"",ruleCount:null===(L=null==Tn?void 0:Tn.metrics)||void 0===L?void 0:L.learningsCount}:void 0,bn=Boolean(null==te?void 0:te.data),Cn=Boolean(ne&&!Tn&&bn),Rn=function(){if("stations"===re)return"custom";if(!Tn)return"global";switch(Tn.type){case"GLOBAL":default:return"global";case"SCOPE":return"genre";case"SUBSCOPE":case"Custom":return"custom"}},Sn=function(e){if(!e)return o("p",{children:"Are you sure you want to delete this rule? This action cannot be undone."});var n=null==ie?void 0:ie.flatMap(function(e){var n;return null!==(n=e.rules)&&void 0!==n?n:[]}).find(function(n){return n.ruleId===e});return i("p",{children:["Are you sure you want to delete"," ",o("span",r({className:S.semibold},{children:null==n?void 0:n.ruleTitle}))," rule? This action cannot be undone."]})},In={editingRule:ve,editingTier:ye,editingVariants:be,focusedVariantIndex:Se,setFocusedVariantIndex:Ie,triggerAddVariant:qe,triggerFixGaps:rn,copiedRule:sn,copiedSourceTier:dn,copiedTargetTier:fn,initialDraftMessage:Ee,app_integration_id:Z,modeId:"019dde79-0494-78d7-ba5b-54a35d20f0fc"};return wn?i(l,{children:[o(y,{ref:ce}),o("div",r({className:S.container},{children:je?o(h,{}):Oe?o(w,{errorMessage:Oe,onRetry:yn}):o(T,{onAddRule:gn,onDeleteRule:function(e){Be(e)},onEditRule:function(e,n){ge(e),Te(n||null),Ce(e.variants||null),Ie(null),He(!0),me(!0)},onEditVariant:function(e,n,t,r){var o,i,l,a,s=null!==(l=null===(i=null===(o=null==ie?void 0:ie.find(function(e){return e.name===t}))||void 0===o?void 0:o.rules)||void 0===i?void 0:i.find(function(e){return e.ruleId===n}))&&void 0!==l?l:null==ie?void 0:ie.flatMap(function(e){return e.rules}).find(function(e){return e.ruleId===n});if(s){var u=null===(a=s.variants)||void 0===a?void 0:a.findIndex(function(n){return n.variantId===e.variantId}),c=void 0!==u&&-1!==u?u:0;ge(s),Te(t||null),Ce(s.variants||null),Ie(c),me(!0),"resolve_gaps"===r&&on(!0)}},onDeleteVariant:function(e,n){Ye({variantId:e,ruleId:n})},onExportRule:function(){return e(void 0,void 0,void 0,function(){var e,t,r,i,l,a,s;return n(this,function(n){switch(n.label){case 0:if(!ne)return[2];Ne(!0),n.label=1;case 1:return n.trys.push([1,3,4,5]),[4,m(ne)];case 2:return e=n.sent(),t=window.URL.createObjectURL(e),(r=document.createElement("a")).href=t,i=(null==wn?void 0:wn.ruleSetName)?"".concat(wn.ruleSetName.replace(/\s+/g,"_"),"_rules.csv"):"ruleset_".concat(ne,".csv"),r.download=i,document.body.appendChild(r),r.click(),document.body.removeChild(r),window.URL.revokeObjectURL(t),null===(a=ce.current)||void 0===a||a.show({severity:"success",sticky:!1,life:3e3,className:S.successToast,content:o(b,{message:"Ruleset exported successfully!"})}),[3,5];case 3:return l=n.sent(),console.error("Export error:",l),null===(s=ce.current)||void 0===s||s.show({severity:"error",sticky:!1,className:S.errorToast,content:o(C,{message:l.message||"Failed to export ruleset. Please try again."})}),[3,5];case 4:return Ne(!1),[7];case 5:return[2]}})})},isExporting:xe,onToggleSuccess:function(){return yn(!0)},onReorderRules:function(t,r,i,l,a){return e(void 0,void 0,void 0,function(){var e,s,u;return n(this,function(n){switch(n.label){case 0:return n.trys.push([0,2,,3]),[4,g(t,r,i,l,a)];case 1:return n.sent(),yn(!0),null===(s=ce.current)||void 0===s||s.show({severity:"success",sticky:!1,life:3e3,className:S.successToast,content:o(b,{message:"Rule order changed successfully. Future rule applications will follow the updated order."})}),[3,3];case 2:return e=n.sent(),console.error("Failed to reorder rules:",e),yn(!0),null===(u=ce.current)||void 0===u||u.show({severity:"error",sticky:!1,className:S.errorToast,content:o(C,{message:"Failed to update rule order. Please try again."})}),[3,3];case 3:return[2]}})})},onRefreshRuleSets:Y,setDeleteConfirmationUsedFor:Ke,onCopyToTier:function(e,n,t,r,o){var i,l,a=null===(l=null===(i=null==ie?void 0:ie.find(function(e){return e.name===r}))||void 0===i?void 0:i.rules)||void 0===l?void 0:l.find(function(e){return e.ruleId===n});if(a){var s=["Add a new learning with the following details:","- Rule Title: ".concat(t),"- Description: ".concat(e.description),"- When to apply: ".concat(e.whenToApply),"- When NOT to apply: ".concat(e.whenNotToApply),"- Tier information: ".concat(o)].join("\n");Fe(s),un(a),pn(r),vn(o),ge(null),Te(null),Ce(null),Ie(null),me(!0)}}})})),pe&&o(_,{children:o(j,{isOpen:pe,onClose:hn,app_integration_id:Z,token:ee,mode:"ADD",pluginPayload:r(r({},In),{initialScope:Rn(),ruleSet:wn})})}),o(I,{isOpen:!!Pe,title:q,description:Sn(Pe),warning:$,confirmText:X,confirmBgColor:"#EF4444",onConfirm:function(){return e(void 0,void 0,void 0,function(){var e,t,r,i,l;return n(this,function(n){switch(n.label){case 0:if(!Pe)return[2];We(!0),n.label=1;case 1:return n.trys.push([1,3,4,5]),[4,f(Pe)];case 2:return n.sent(),Be(null),null===(t=ce.current)||void 0===t||t.show({severity:"success",sticky:!1,life:3e3,className:S.successToast,content:o(b,{message:F})}),yn(),Y&&Y(!1,ne||void 0),[3,5];case 3:return e=n.sent(),console.error("Failed to delete rule",e),null===(r=ce.current)||void 0===r||r.show({severity:"error",sticky:!1,className:S.errorToast,content:o(C,{message:(null===(l=null===(i=null==e?void 0:e.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.detail)||J})}),[3,5];case 4:return We(!1),[7];case 5:return[2]}})})},onCancel:function(){return Be(null)},isLoading:Ue}),o(I,{isOpen:!!Xe,title:q,description:"variantDeletion"===ze?o("span",{children:"Are you sure you want to delete this variant? This action cannot be undone."}):Sn((null==Xe?void 0:Xe.ruleId)||null),warning:"ruleDeletion"===ze?$:K,confirmText:X,confirmBgColor:"#EF4444",onConfirm:function(){return e(void 0,void 0,void 0,function(){var e,t,r,i,l;return n(this,function(n){switch(n.label){case 0:if(!Xe)return[2];nn(!0),n.label=1;case 1:return n.trys.push([1,6,7,8]),"ruleDeletion"!==ze?[3,3]:[4,v(Xe.ruleId)];case 2:return n.sent(),[3,5];case 3:return[4,f(Xe.variantId)];case 4:n.sent(),n.label=5;case 5:return Ye(null),null===(t=ce.current)||void 0===t||t.show({severity:"success",sticky:!1,life:3e3,className:S.successToast,content:o(b,{message:"ruleDeletion"===ze?F:P})}),yn(),Y&&Y(!1,ne||void 0),[3,8];case 6:return e=n.sent(),console.error("Failed to delete variant",e),null===(r=ce.current)||void 0===r||r.show({severity:"error",sticky:!1,className:S.errorToast,content:o(C,{message:(null===(l=null===(i=null==e?void 0:e.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.detail)||("ruleDeletion"===ze?J:W)})}),[3,8];case 7:return nn(!1),[7];case 8:return[2]}})})},onCancel:function(){return Ye(null)},isLoading:en})]}):Cn?o(w,{title:"Scope Not Found",errorMessage:"The selected scope does not exist. Please refresh the page or choose a valid scope.",onRetry:function(){return null==Y?void 0:Y(!0)},retryButtonText:"Refresh"}):i(l,{children:[o(d,{onCreate:gn,title:D,desc:x,button:A}),pe&&o(_,{children:o(j,{isOpen:pe,onClose:hn,app_integration_id:Z,token:ee,mode:"ADD",pluginPayload:r(r({},In),{initialScope:Rn(),ruleSet:wn})})})]})};export{k as default};
|
|
1
|
+
import{__awaiter as e,__generator as t,__spreadArray as n,__assign as r}from"tslib";import{jsx as o,jsxs as i,Fragment as l}from"react/jsx-runtime";import{useRef as a,useState as s,useEffect as u}from"react";import{useLearningTemplateStore as c}from"../store/useLearningTemplateStore.js";import d from"../components/EmptyLearningState.js";import{getRulesInRuleSetById as p,exportRuleSet as m,deleteRule as f,deleteQuestion as v,alterQuestionPriority as g}from"../apis/scopeApis.js";import h from"../components/RuleContentSkeleton.js";import{Toast as T}from"primereact/toast";import y from"./ContentLogic.js";import w from"../components/ErrorStateDisplay.js";import S from"../shared/SuccessToastContent.js";import C from"../shared/ErrorToastContent.js";import{findNodeById as j}from"../utils/treeUtils.js";import R from"../styles/LearningContent.module.css.js";import b from"../components/ConfirmationModal.js";import{dt as I}from"../store/useLMSConfigStore.js";import"../../IL-OTJ/_components/atoms/Textarea/Textarea.js";import"lucide-react";import"../../IL-OTJ/_components/InputDataReasoningCard.js";import"../../IL-OTJ/_components/TooltipComponent.js";import"../../IL-OTJ/_components/templates/TemplatesMap/templatesMap.js";import{CitationProvider as D}from"../../IL-OTJ/store/CitationsContext.js";import"@mui/material";import"uuid";import"@mui/material/Tooltip";import"react-markdown";import"rehype-raw";import"axios";import"@e-llm-studio/streaming-response";import"@e-llm-studio/watch-me-work";import"../../IL-OTJ/_components/ChatComponents/ChatHeader.js";import"remark-gfm";import"../../IL-OTJ/_components/MarkdownComponents/MarkdownElements.js";import"../../IL-OTJ/_components/CitationLink.js";import"@e-llm-studio/citation";import"@viswa-test/test-citation";import x from"../../IL-OTJ/ValueTypeWrappers/TeachMePlugin.js";import{LEARNING_DT_PATH as _,VARIANT_DT_PATH as L,TIER_DT_PATH as k}from"../constants.js";import"../store/usePermissionsStore.js";import"appsec-ui";import"../store/useAuthStore.js";import"../store/useEnvStore.js";import"@radix-ui/react-tooltip";import"../components/StationOnboarding/InputField.js";import"../store/useConfigStore.js";import"../config.js";import"../store/useAppSecRolesStore.js";import"@tanstack/react-query";import"@e-llm-studio/audit-log";import"@e-llm-studio/audit-log/dist/styles.css";import"../AuditLog/ChangeLogDiff.js";import"../components/ToolTip.js";import"react-router-dom";var O=function(O){var M,A=O.noRulesTitle,N=void 0===A?"No rules have been added !":A,E=O.noRulesDesc,V=void 0===E?"Start by adding rules that should apply across all stations.":E,F=O.noRulesButtonText,P=void 0===F?"Create New Rule":F,B=O.deleteRuleSuccessMessage,J=void 0===B?"Rule deleted successfully!":B,U=O.deleteVariantSuccessMessage,W=void 0===U?"Variant deleted successfully!":U,q=O.deleteRuleErrorMessage,G=void 0===q?"Failed to delete rule. Please try again.":q,H=O.deleteVariantErrorMessage,$=void 0===H?"Failed to delete variant. Please try again.":H,z=O.deleteModalTitle,K=void 0===z?"Delete":z,Q=O.deleteRuleModalWarning,X=void 0===Q?"This will permanently delete the rule configuration.":Q,Y=O.deleteVariantModalWarning,Z=void 0===Y?"This will permanently delete the variant configuration.":Y,ee=O.deleteConfirmText,te=void 0===ee?"Delete":ee,ne=O.onRefreshRuleSets,re=O.app_integration_id,oe=O.token,ie=O.modeId,le=c(function(e){return e.selectedRuleSetId}),ae=c(function(e){return e.scopeTreeData}),se=c(function(e){return e.sidebarTab}),ue=c(function(e){return e.setInitialRules}),ce=c(function(e){return e.currentRules}),de=c(function(e){return e.setRawAuditRuleData});c(function(e){return e.createdVariantInfo});var pe=c(function(e){return e.resetCreatedVariantInfo}),me=c(function(e){return e.isILModalTriggered}),fe=c(function(e){return e.setIsILModalTriggered}),ve=a(null),ge=s(!1),he=ge[0],Te=ge[1],ye=s(null),we=ye[0],Se=ye[1],Ce=s(null),je=Ce[0],Re=Ce[1],be=s(null),Ie=be[0],De=be[1],xe=s(null),_e=xe[0],Le=xe[1],ke=s(!1),Oe=ke[0],Me=ke[1],Ae=s(null),Ne=Ae[0],Ee=Ae[1],Ve=s(!1),Fe=Ve[0],Pe=Ve[1],Be=s(""),Je=Be[0],Ue=Be[1],We=s(null),qe=We[0],Ge=We[1],He=s(!1),$e=He[0],ze=He[1],Ke=s(!1),Qe=Ke[0],Xe=Ke[1],Ye=s("ruleDeletion"),Ze=Ye[0],et=Ye[1],tt=s(null),nt=tt[0],rt=tt[1],ot=s(!1),it=ot[0],lt=ot[1],at=s(!1),st=at[0],ut=at[1],ct=c.getState().tiers,dt=s(null),pt=dt[0],mt=dt[1],ft=s(null),vt=ft[0],gt=ft[1],ht=s(null),Tt=ht[0],yt=ht[1],wt=function(){Se(null),Re(null),Te(!0),Le(0)},St=function(){Te(!1),fe(!1),Se(null),Re(null),De(null),Le(null),Xe(!1),ut(!1),Ct(),mt(null),gt(null),yt(null),ne&&ne(!1,le||void 0)};u(function(){Ct()},[le,ue]),u(function(){me&&Te(!0)},[me]);var Ct=function(o){return void 0===o&&(o=!1),e(void 0,void 0,void 0,function(){var e,i,l,a,s,u,d,m,f,v,g,h,T,y,w,S,C,j,R;return t(this,function(t){switch(t.label){case 0:if(!le)return ue([]),[2];o||Me(!0),Ee(null),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,p(le,oe)];case 2:return e=t.sent(),console.log("response==",e),(null==e?void 0:e.data)&&0!==Object.keys(e.data).length?(de(e),i=e.data,console.log("rulesData==",i),l=new Set(["ruleSetName","ruleSetDesc","created_at","updated_at","created_by","updated_by"]),a=Array.isArray(i.tiers)?n([],i.tiers,!0).sort(function(e,t){var n,r;return(null!==(n=e.tier_priority)&&void 0!==n?n:0)-(null!==(r=t.tier_priority)&&void 0!==r?r:0)}).map(function(e){return[e.name,e.value]}):Object.entries(i).filter(function(e){var t=e[0],n=e[1];return!l.has(t)&&Array.isArray(n)}),s=a.map(function(e){var t=e[1];return new Set(t.flatMap(function(e){var t,n;return null!==(n=null===(t=e.variants)||void 0===t?void 0:t.map(function(e){return e.link_id}).filter(Boolean))&&void 0!==n?n:[]}))}),u=s.flatMap(function(e){return Array.from(e)}),d=u.reduce(function(e,t){var n;return e[t]=(null!==(n=e[t])&&void 0!==n?n:0)+1,e},{}),m=new Set(Object.entries(d).filter(function(e){return e[1]>1}).map(function(e){return e[0]})),f=function(e){return e.map(function(e){var t;return r(r({},e),{variants:null===(t=e.variants)||void 0===t?void 0:t.map(function(e){return r(r({},e),{isLinked:!!e.link_id&&m.has(e.link_id)})})})})},v=a.map(function(e,t){var n,r=e[0],o=e[1],i=ct.find(function(e){return e.tier_name===r}),l=r.replace(/tier(\d+)/i,"tier_$1");return{id:null!==(n=null==i?void 0:i.tier_id)&&void 0!==n?n:String(t+1),name:l.replace(/_/g," ").replace(/\b\w/g,function(e){return e.toUpperCase()}),ruleCount:o.length,description:0===t?"".concat(I("tier.subtitle","These are the system-wide learnings applied across all stations.")):"These learnings apply after higher-priority tiers and may refine or relax default behavior.",isOpen:0===t,rules:f(o)}}),(g=c.getState().createdVariantInfo)&&g.length>0?(h=Object.fromEntries(a.map(function(e,t){return[e[0],String(t+1)]})),T=new Set(g.map(function(e){return h[e.tierName]}).filter(Boolean)),y=v.map(function(e){return r(r({},e),{isOpen:e.isOpen||T.has(e.id)})}),ue(y),(w=null===(R=null===(j=null===(C=g[0])||void 0===C?void 0:C.variants)||void 0===j?void 0:j[0])||void 0===R?void 0:R.id)?setTimeout(function(){var e=document.querySelector('[data-variant-id="'.concat(w,'"]'));e&&e.scrollIntoView({behavior:"smooth",block:"center"}),setTimeout(function(){return pe()},1e4)},500):pe()):ue(v),[3,5]):(ue([]),[2]);case 3:return S=t.sent(),console.error("Failed to fetch rule details",S),404!==(null==S?void 0:S.status)&&Ee((null==S?void 0:S.message)||"Failed to load rules. Please try again."),ue([]),[3,5];case 4:return o||Me(!1),[7];case 5:return[2]}})})},jt=le?j((null==ae?void 0:ae.data)||null,le):null,Rt=jt?{ruleSetId:jt.id,ruleSetName:jt.name,ruleSetDesc:"",ruleCount:null===(M=null==jt?void 0:jt.metrics)||void 0===M?void 0:M.learningsCount}:void 0,bt=Boolean(null==ae?void 0:ae.data),It=Boolean(le&&!jt&&bt),Dt=function(){if("stations"===se)return"custom";if(!jt)return"global";switch(jt.type){case"GLOBAL":default:return"global";case"SCOPE":return"genre";case"SUBSCOPE":case"Custom":return"custom"}},xt=function(e){var t;if(!e)return o("p",{children:I("".concat(k,".deleteDialog.description"),"Are you sure you want to delete this rule? This action cannot be undone.")});var n=null==ce?void 0:ce.flatMap(function(e){var t;return null!==(t=e.rules)&&void 0!==t?t:[]}).find(function(t){return t.ruleId===e});return o("p",{children:I("".concat(k,".deleteDialog.description"),"Are you sure you want to delete ".concat(null==n?void 0:n.ruleTitle," rule? This action cannot be undone."),{rule_title:null!==(t=null==n?void 0:n.ruleTitle)&&void 0!==t?t:""})})},_t={editingRule:we,editingTier:je,editingVariants:Ie,focusedVariantIndex:_e,setFocusedVariantIndex:Le,triggerAddVariant:Qe,triggerFixGaps:st,copiedRule:pt,copiedSourceTier:vt,copiedTargetTier:Tt,initialDraftMessage:Je,app_integration_id:re,modeId:ie};return Rt?i(l,{children:[o(T,{ref:ve}),o("div",r({className:R.container},{children:Oe?o(h,{}):Ne?o(w,{errorMessage:Ne,onRetry:Ct}):o(y,{onAddRule:wt,onDeleteRule:function(e){Ge(e)},onEditRule:function(e,t){Se(e),Re(t||null),De(e.variants||null),Le(null),Xe(!0),Te(!0)},onEditVariant:function(e,t,n,r){var o,i,l,a,s=null!==(l=null===(i=null===(o=null==ce?void 0:ce.find(function(e){return e.name===n}))||void 0===o?void 0:o.rules)||void 0===i?void 0:i.find(function(e){return e.ruleId===t}))&&void 0!==l?l:null==ce?void 0:ce.flatMap(function(e){return e.rules}).find(function(e){return e.ruleId===t});if(s){var u=null===(a=s.variants)||void 0===a?void 0:a.findIndex(function(t){return t.variantId===e.variantId}),c=void 0!==u&&-1!==u?u:0;Se(s),Re(n||null),De(s.variants||null),Le(c),Te(!0),"resolve_gaps"===r&&ut(!0)}},onDeleteVariant:function(e,t){rt({variantId:e,ruleId:t})},onExportRule:function(){return e(void 0,void 0,void 0,function(){var e,n,r,i,l,a,s;return t(this,function(t){switch(t.label){case 0:if(!le)return[2];Pe(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,m(le)];case 2:return e=t.sent(),n=window.URL.createObjectURL(e),(r=document.createElement("a")).href=n,i=(null==Rt?void 0:Rt.ruleSetName)?"".concat(Rt.ruleSetName.replace(/\s+/g,"_"),"_rules.csv"):"ruleset_".concat(le,".csv"),r.download=i,document.body.appendChild(r),r.click(),document.body.removeChild(r),window.URL.revokeObjectURL(n),null===(a=ve.current)||void 0===a||a.show({severity:"success",sticky:!1,life:3e3,className:R.successToast,content:o(S,{message:"Ruleset exported successfully!"})}),[3,5];case 3:return l=t.sent(),console.error("Export error:",l),null===(s=ve.current)||void 0===s||s.show({severity:"error",sticky:!1,className:R.errorToast,content:o(C,{message:l.message||"Failed to export ruleset. Please try again."})}),[3,5];case 4:return Pe(!1),[7];case 5:return[2]}})})},isExporting:Fe,onToggleSuccess:function(){return Ct(!0)},onReorderRules:function(n,r,i,l,a){return e(void 0,void 0,void 0,function(){var e,s,u;return t(this,function(t){switch(t.label){case 0:return t.trys.push([0,2,,3]),[4,g(n,r,i,l,a)];case 1:return t.sent(),Ct(!0),null===(s=ve.current)||void 0===s||s.show({severity:"success",sticky:!1,life:3e3,className:R.successToast,content:o(S,{message:"Rule order changed successfully. Future rule applications will follow the updated order."})}),[3,3];case 2:return e=t.sent(),console.error("Failed to reorder rules:",e),Ct(!0),null===(u=ve.current)||void 0===u||u.show({severity:"error",sticky:!1,className:R.errorToast,content:o(C,{message:"Failed to update rule order. Please try again."})}),[3,3];case 3:return[2]}})})},onRefreshRuleSets:ne,setDeleteConfirmationUsedFor:et,onCopyToTier:function(e,t,n,r,o){var i,l,a=null===(l=null===(i=null==ce?void 0:ce.find(function(e){return e.name===r}))||void 0===i?void 0:i.rules)||void 0===l?void 0:l.find(function(e){return e.ruleId===t});if(a){var s=["Add a new learning with the following details:","- Rule Title: ".concat(n),"- Description: ".concat(e.description),"- When to apply: ".concat(e.whenToApply),"- When NOT to apply: ".concat(e.whenNotToApply),"- Tier information: ".concat(o)].join("\n");Ue(s),mt(a),gt(r),yt(o),Se(null),Re(null),De(null),Le(null),Te(!0)}}})})),he&&o(D,{children:o(x,{isOpen:he,onClose:St,app_integration_id:re,token:oe,mode:"ADD",pluginPayload:r(r({},_t),{initialScope:Dt(),ruleSet:Rt})})}),o(b,{isOpen:!!qe,title:I("".concat(_,".deleteDialog.title"),K),description:xt(qe),warning:I("".concat(_,".deleteDialog.warningText"),X),confirmText:I("".concat(_,".deleteDialog.deleteText"),te),cancelText:I("".concat(_,".deleteDialog.cancelText"),"Cancel"),loadingText:I("".concat(_,".deleteDialog.loadingText"),"Deleting..."),confirmBgColor:"#EF4444",onConfirm:function(){return e(void 0,void 0,void 0,function(){var e,n,r,i,l;return t(this,function(t){switch(t.label){case 0:if(!qe)return[2];ze(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,f(qe)];case 2:return t.sent(),Ge(null),null===(n=ve.current)||void 0===n||n.show({severity:"success",sticky:!1,life:3e3,className:R.successToast,content:o(S,{message:J})}),Ct(),ne&&ne(!1,le||void 0),[3,5];case 3:return e=t.sent(),console.error("Failed to delete rule",e),null===(r=ve.current)||void 0===r||r.show({severity:"error",sticky:!1,className:R.errorToast,content:o(C,{message:(null===(l=null===(i=null==e?void 0:e.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.detail)||G})}),[3,5];case 4:return ze(!1),[7];case 5:return[2]}})})},onCancel:function(){return Ge(null)},isLoading:$e}),o(b,{isOpen:!!nt,title:I("".concat(L,".deleteVariant.title"),K),description:"variantDeletion"===Ze?o("span",{children:I("".concat(L,".deleteVariant.desc"),"Are you sure you want to delete this variant? This action cannot be undone.")}):xt((null==nt?void 0:nt.ruleId)||null),warning:I("".concat(L,".deleteVariant.warningText"),"ruleDeletion"===Ze?X:Z),confirmText:I("".concat(L,".deleteDialog.deleteText"),te),cancelText:I("".concat(L,".cancelText"),"Cancel"),loadingText:I("".concat(L,".loadingText"),"Deleting..."),confirmBgColor:"#EF4444",onConfirm:function(){return e(void 0,void 0,void 0,function(){var e,n,r,i,l;return t(this,function(t){switch(t.label){case 0:if(!nt)return[2];lt(!0),t.label=1;case 1:return t.trys.push([1,6,7,8]),"ruleDeletion"!==Ze?[3,3]:[4,v(nt.ruleId)];case 2:return t.sent(),[3,5];case 3:return[4,f(nt.variantId)];case 4:t.sent(),t.label=5;case 5:return rt(null),null===(n=ve.current)||void 0===n||n.show({severity:"success",sticky:!1,life:3e3,className:R.successToast,content:o(S,{message:"ruleDeletion"===Ze?J:W})}),Ct(),ne&&ne(!1,le||void 0),[3,8];case 6:return e=t.sent(),console.error("Failed to delete variant",e),null===(r=ve.current)||void 0===r||r.show({severity:"error",sticky:!1,className:R.errorToast,content:o(C,{message:(null===(l=null===(i=null==e?void 0:e.response)||void 0===i?void 0:i.data)||void 0===l?void 0:l.detail)||("ruleDeletion"===Ze?G:$)})}),[3,8];case 7:return lt(!1),[7];case 8:return[2]}})})},onCancel:function(){return rt(null)},isLoading:it})]}):It?o(w,{title:"Scope Not Found",errorMessage:"The selected scope does not exist. Please refresh the page or choose a valid scope.",onRetry:function(){return null==ne?void 0:ne(!0)},retryButtonText:"Refresh"}):i(l,{children:[o(d,{onCreate:wt,title:N,desc:V,button:P}),he&&o(D,{children:o(x,{isOpen:he,onClose:St,app_integration_id:re,token:oe,mode:"ADD",pluginPayload:r(r({},_t),{initialScope:Dt(),ruleSet:Rt})})})]})};export{O as default};
|
|
2
2
|
//# sourceMappingURL=RuleContent.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e}from"tslib";import{jsxs as
|
|
1
|
+
import{__assign as e}from"tslib";import{jsxs as r,jsx as i}from"react/jsx-runtime";import{Download as o,Plus as a}from"lucide-react";import t from"../styles/RuleHeader.module.css.js";import{usePermissionsStore as n}from"../store/usePermissionsStore.js";import{dt as l}from"../store/useLMSConfigStore.js";var s=function(s){var d=s.onAddRule,u=s.onOnboardStation,c=s.onExport,m=s.isExporting,p=void 0!==m&&m,b=s.ruleSetId,f=s.ruleSetName,g=s.ruleSetDescription,v=s.isGlobal,h=void 0!==v&&v,x=s.globalLabel,N=void 0===x?l("learnings.globalLearning.globalLabel","Global Learnings ( Default )"):x;s.addExemptionLabel;var L=s.addNewRuleLabel,S=void 0===L?l("learnings.header.addNewLearningButton","Add New Learning"):L,j=n(function(e){return e.hasPermission});if(!f&&!h)return null;var B=h?N:f,E=j("ilotj.rule.create",b||void 0),R=j("ilotj.rule.variant.create",b||void 0),C=E||R;return r("div",e({className:t.container},{children:[r("div",e({className:t.info},{children:[i("h1",{children:B}),g&&i("p",e({className:t.description},{children:g}))]})),r("div",e({className:t.actions,style:{display:"flex",gap:"8px"}},{children:[c&&r("button",e({onClick:c,disabled:p,className:t.exportButton},{children:[i(o,{size:14}),p?"Exporting...":l("learnings.header.exportButton","Export")]})),C&&d&&r("button",e({onClick:d,className:t.addRuleButton},{children:[i(a,{size:14}),S]})),u&&r("button",e({onClick:u,className:t.addRuleButton},{children:[i(a,{size:14}),"Onboard a station"]}))]}))]}))};export{s as default};
|
|
2
2
|
//# sourceMappingURL=RuleHeader.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e}from"tslib";import{jsx as
|
|
1
|
+
import{__assign as e}from"tslib";import{jsx as i}from"react/jsx-runtime";import o from"./TierCard.js";import r from"../styles/RuleTierList.module.css.js";var t=function(t){var n=t.tiers,s=t.onToggleTier,l=t.onDeleteRule,a=t.isGlobalScope,d=void 0!==a&&a,u=t.onFetchOverrideHistory,c=t.onEditRule,h=t.onEditVariant,g=t.onDeleteVariant,m=t.highlightedVariants,T=t.highlightedTierNames,R=t.onToggleSuccess,f=t.onReorderRules,p=t.ruleSetId,v=t.onRefreshRuleSets,S=t.setDeleteConfirmationUsedFor,C=t.onCopyToTier;return i("div",e({className:r.container},{children:i("div",e({className:r.tiersList},{children:n.map(function(e){return e.ruleCount>0&&i(o,{tier:e,allTiers:n,onToggle:function(){return s(e.id)},onDeleteRule:l,isGlobalScope:d,onFetchOverrideHistory:u,onEditRule:c,onEditVariant:h,onDeleteVariant:g,highlightedVariants:m,highlightedTierNames:T,onToggleSuccess:R,onReorderRules:f,scopeId:p,onRefreshRuleSets:v,setDeleteConfirmationUsedFor:S,onCopyToTier:C,singleTier:1==n.length},e.id)})}))}))};export{t as default};
|
|
2
2
|
//# sourceMappingURL=RuleTierList.js.map
|