@e-llm-studio/instant-learning 1.3.0-alpha.2 → 1.3.0-alpha.21
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 +188 -5
- package/dist/cjs/features/IL-OTJ/ILOTJTest.js +1 -1
- package/dist/cjs/features/IL-OTJ/ValueTypeWrappers/TeachMeWrapper.js +1 -1
- 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/RBAC/AccessManagementPanel.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/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/assets/Search-result(add new).svg.js +2 -0
- package/dist/cjs/features/LearningManagement/assets/Search-result(add new).svg.js.map +1 -0
- package/dist/cjs/features/LearningManagement/components/ConfirmationModal.js +1 -1
- package/dist/cjs/features/LearningManagement/components/CreateLearningSetModal.js +2 -0
- package/dist/cjs/features/LearningManagement/components/CreateLearningSetModal.js.map +1 -0
- 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/BackwardStationOnboardModal.js +2 -0
- package/dist/cjs/features/LearningManagement/components/StationOnboarding/BackwardStationOnboardModal.js.map +1 -0
- 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/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/usePermissionsStore.js +1 -1
- package/dist/cjs/features/LearningManagement/styles/CreateLearningSetModal.module.css.js +2 -0
- package/dist/cjs/features/LearningManagement/styles/CreateLearningSetModal.module.css.js.map +1 -0
- 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/TeachMeWrapper.js +1 -1
- 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/RBAC/AccessManagementPanel.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/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/assets/Search-result(add new).svg.js +2 -0
- package/dist/features/LearningManagement/assets/Search-result(add new).svg.js.map +1 -0
- package/dist/features/LearningManagement/components/ConfirmationModal.js +1 -1
- package/dist/features/LearningManagement/components/CreateLearningSetModal.js +2 -0
- package/dist/features/LearningManagement/components/CreateLearningSetModal.js.map +1 -0
- 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/BackwardStationOnboardModal.js +2 -0
- package/dist/features/LearningManagement/components/StationOnboarding/BackwardStationOnboardModal.js.map +1 -0
- 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/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/usePermissionsStore.js +1 -1
- package/dist/features/LearningManagement/styles/CreateLearningSetModal.module.css.js +2 -0
- package/dist/features/LearningManagement/styles/CreateLearningSetModal.module.css.js.map +1 -0
- 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/TeachMeWrapper.d.ts.map +1 -1
- 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 +1 -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.map +1 -1
- package/dist/types/src/features/LearningManagement/LearningManagementTest.d.ts.map +1 -1
- 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.map +1 -1
- package/dist/types/src/features/LearningManagement/RuleContent/RuleHeader.d.ts.map +1 -1
- 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/scopeApis.d.ts +7 -0
- 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/BackwardStationOnboardModal.d.ts +12 -0
- package/dist/types/src/features/LearningManagement/components/StationOnboarding/BackwardStationOnboardModal.d.ts.map +1 -0
- package/dist/types/src/features/LearningManagement/constants.d.ts +8 -0
- package/dist/types/src/features/LearningManagement/constants.d.ts.map +1 -0
- 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 +172 -0
- package/dist/types/src/features/LearningManagement/store/useLMSConfigStore.d.ts.map +1 -0
- 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/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 +2 -2
|
@@ -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 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 g from"./styles/LearningTemplateManagement.module.css.js";import v from"./LearningTemplateLayout.js";import h from"./components/EmptyLearningState.js";import S from"./store/useAuthStore.js";import{fetchTiers as y,fetchScopes as b,inheritScope as C,inheritScopeBackwardCompatible as T,createRuleSet as E,renameScope as L,deleteRuleSet as I,requestAccess as A}from"./apis/scopeApis.js";import{QUERY_PARAM_KEYS as O,setQueryParams as w}from"./hooks/useLearningTemplateQueryParams.js";import j from"./components/ConfirmationModal.js";import R from"./components/LearningTemplateManagementSkeleton.js";import{findNodePathById as N}from"./utils/treeUtils.js";import D from"./store/useEnvStore.js";import{useConfigStore as k}from"./store/useConfigStore.js";import{TooltipProvider as _}from"./components/ToolTip.js";import M from"./components/CreateRuleSetLegacyModal.js";import{usePermissionsStore as P}from"./store/usePermissionsStore.js";import{useAppSecRolesStore as U}from"./store/useAppSecRolesStore.js";import{useGetAppSecRolesQuery as G}from"./queries/useApprovalQueries.js";import{useLMSConfigQuery as B}from"./queries/useLMSConfigQuery.js";import F from"./RuleContent/AddScopeModal.js";import q from"./components/RuleContentSkeleton.js";import x from"./components/ErrorStateDisplay.js";import{useLocation as H}from"react-router-dom";import Q from"./shared/SuccessToastContent.js";import z from"./shared/ErrorToastContent.js";import K from"./RuleContent/RenameScopeModal.js";import{dt as V}from"./store/useLMSConfigStore.js";import{MIDDLE_DRAWER_DT_PATH as W,MIDDLE_DRAWER_CONTEXT_MENU_DT_PATH as Y}from"./constants.js";function J(J){var X,Z,$,ee=this,ne=J.userDetails,te=J.llmStudioUrl,re=J.audacyBackendUrl,oe=J.ilLabels,se=J.config,ie=J.rbacConfig,ae=J.auditLogConfig,le=J.app_integration_id,ce=J.backwardCompatibility,ue=void 0!==ce&&ce,de=m(function(e){return e.selectedRuleSetId}),pe=m(function(e){return e.setSelectedRuleSetId}),me=m(function(e){return e.error}),fe=m(function(e){return e.setError}),ge=m(function(e){return e.setStations}),ve=m(function(e){return e.scopeTreeData}),he=m(function(e){return e.setScopeTreeData}),Se=a({isOpen:!1,type:"GLOBAL"}),ye=Se[0],be=Se[1],Ce=a(!1),Te=Ce[0],Ee=Ce[1],Le=a(!1),Ie=Le[0],Ae=Le[1],Oe=a("learnings"),we=Oe[0],je=Oe[1],Re=a(null),Ne=Re[0],De=Re[1],ke=a(null),_e=ke[0],Me=ke[1],Pe=l(null),Ue=l(null),Ge=l(!1),Be=l(null),Fe=S();Fe.user;var qe=Fe.setUser,xe=k(),He=xe.setConfig,Qe=xe.setIlLabels,ze=function(){try{return H()}catch(e){return{search:""}}}();c(function(){if(!Ge.current){var e=new URLSearchParams(window.location.search),n=e.get(O.RULESET_ID),t=e.get(O.SECTION),r=t&&un.has(t)?t:"learnings";(null==n?void 0:n.length)&&pe&&je&&(pe(n),je(r),Ge.current=!0)}},[null==ze?void 0:ze.search,je,pe]);var Ke=P(function(e){return e.fetchPermissions}),Ve=P(function(e){return e.hasPermission}),We=U(function(e){return e.setRoles}),Ye=D(function(e){return e.appsecRbacUrl})===ie.appsecRbacUrl,Je=G(ie.applicationId,Ye).data,Xe=B(null!=le?le:"",ue),Ze=Xe.isLoading,$e=Xe.isError,en=Xe.refetch;Xe.isSuccess,c(function(){Je&&We(Je.map(function(e){return{_id:e._id,name:e.name}}))},[Je,We]),c(function(){var e;console.log("userDetails",ne),qe(ne),console.log("llmStudioUrl",te),console.log("audacyBackendUrl",re),D.getState().setLlmStudioUrl(te),D.getState().setAudacyBackendUrl(re),D.getState().setRbacConfig(ie),D.getState().setAuditLogConfig(ae),He(se),Qe(oe),m.getState().setAppIntegrationId(null!=le?le:null),m.getState().setBackwardCompatibility(ue),m.getState().setToken(null!==(e=null==ne?void 0:ne.accessToken)&&void 0!==e?e:null)},[ne,qe,te,re,ie,ae,se,He,oe,Qe,le,ue]),c(function(){(null==ne?void 0:ne.accessToken)&&te&&y()},[le,null==ne?void 0:ne.accessToken,te]);var nn=function(n){return void 0===n&&(n=!0),t(ee,void 0,void 0,function(){var t,o,s,i,a,l;return r(this,function(r){switch(r.label){case 0:n&&Ee(!0),fe(null),r.label=1;case 1:return r.trys.push([1,4,5,6]),[4,Ke(ie.applicationId)];case 2:return r.sent(),t=function(n){if(!P.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,b(le,ne.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))?(De(null),he({data:i}),Ue.current?(pe(Ue.current),je("learnings"),Ue.current=null):m.getState().selectedRuleSetId||pe(i.id)):(De(null!==(l=s.id)&&void 0!==l?l:null),he(null)):(De(null),he(null))),[3,6];case 4:return a=r.sent(),console.error("Failed to fetch rule sets or permissions",a),fe("Failed to load data. Please try again later."),[3,6];case 5:return Ee(!1),[7];case 6:return[2]}})})};c(function(){var e;(null===(e=null==ne?void 0:ne.accessToken)||void 0===e?void 0:e.length)&&Ye?nn(!0):console.warn("Error: Trying to fetch rules without access token",ne)},[null==ne?void 0:ne.accessToken,fe,ge,ie.applicationId,Ye]);var tn=function(n,o,s){return t(ee,void 0,void 0,function(){var t,o,s,i,a,l,c,u;return r(this,function(r){switch(r.label){case 0:Ae(!0),r.label=1;case 1:return r.trys.push([1,4,5,6]),[4,I(n,ne.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],pe(s),je("learnings"))),[4,nn(!0)];case 3:return r.sent(),be(function(n){return e(e({},n),{isOpen:!1})}),null===(a=Be.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=Be.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 Ae(!1),[7];case 6:return[2]}})})},rn=ve,on=_e?{data:{id:_e.stationId,name:_e.stationName,type:"STATION",metrics:{learningsCount:_e.learningsCount,stationsCount:0},children:[]}}:rn,sn=!!(null==on?void 0:on.data);null===(X=null==on?void 0:on.data)||void 0===X||X.type;var an=P(function(e){return e.hasGlobalPermission})("ilotj.scope.global.create",ie.applicationResourceId||"");if(Ze)return o("div",e({className:g.learningManagementContainer},{children:o(q,{})}));if($e)return o("div",e({className:g.learningManagementContainer},{children:o(x,{errorMessage:"Failed to load configuration. Please try again.",onRetry:function(){return en()},title:"Error Loading Configuration"})}));var ln=n([{type:"GLOBAL",label:"Global",addChildLabel:"".concat(V("".concat(W,".addScope"),"Add Scope")),addChildType:"SCOPE"},e({type:"SCOPE",label:V("".concat(W,".scope"),"Scope")},!ue&&{addChildLabel:V("".concat(Y,".addSubScope"),"Add Subscope"),addChildType:"SUBSCOPE"})],ue?[]:[{type:"SUBSCOPE",label:V("".concat(W,".subScope"),"Subscope")}],!0),cn=[{id:"learnings",label:V("".concat(W,".treeMenu.submenu.learnings"),"Learnings"),icon:u,badgeKey:"learningsCount"},{id:"access",label:V("".concat(W,".treeMenu.submenu.access"),"Access"),icon:d},{id:"history",label:V("".concat(W,".treeMenu.submenu.changeHistory"),"Change History"),icon:p}],un=new Set(cn.map(function(e){return e.id})),dn=_e?cn.filter(function(e){return"stations"!==e.id}):cn;return o(_,{children:s("div",e({className:g.learningManagementContainer},{children:[o("div",e({className:g.mainWrapper},{children:Te?o(R,{}):me?s("div",e({className:g.errorContainer},{children:[o("div",e({className:g.errorTitle},{children:"Error Loading Data"})),o("p",e({className:g.errorDesc},{children:me})),o("button",e({onClick:function(){return nn(!0)},className:g.tryAgainBtn},{children:"Try Again"}))]})):sn?o(v,{onOpenCreateModal:function(){return be({isOpen:!0,type:"GLOBAL"})},onAddChild:function(e,n,t){return be({isOpen:!0,type:n,parentId:e,parentName:t})},onRenameChild:function(e,n){return be({isOpen:!0,type:"RENAME",scopeId:e,initialName:n})},onDeleteChild:function(e,n,o){return t(ee,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,tn(e)];case 1:return r.sent(),[3,3];case 2:be({isOpen:!0,type:"DELETE",scopeId:e,initialName:n,isSubscope:i}),r.label=3;case 3:return[2]}})})},canDeleteScope:function(e){return Ve("ilotj.scope.delete",e)},canEditScope:function(e){return Ve("ilotj.scope.edit",e)},canCreateScope:function(e){return Ve("ilotj.scope.create",e)},onSectionSelect:function(e,n){var t;console.log("Section Selected:",{scopeId:e,sectionId:n}),w(((t={})[O.SECTION]="learnings"===n?null:n,t[O.RULESET_ID]=e,t)),je(n),pe(e)},activeSectionId:we,scopeTreeData:on,sectionsConfig:dn,onViewStation:function(e){Pe.current=de,Me(e),je("learnings"),pe(e.stationId)},onRefreshRuleSets:function(e,n){void 0===e&&(e=!0),n&&(Ue.current=n),nn(e)},nodeTypesConfig:ln,app_integration_id:le,token:ne.accessToken}):o(h,{onCreate:function(){return be({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:an,noAccessTitle:"Access Restricted",noAccessDesc:"You do not have access to create a Global scope for this application.",onRequestAccess:function(){return t(ee,void 0,void 0,function(){var e,n,t,s,i,a,l,c,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)||Ne))return null===(i=Be.current)||void 0===i||i.show({severity:"error",sticky:!1,className:g.errorToast,content:o(z,{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,A(e)];case 2:return r.sent(),null===(a=Be.current)||void 0===a||a.show({severity:"success",sticky:!1,life:3e3,className:g.successToast,content:o(Q,{message:"Access request submitted successfully!"})}),[3,4];case 3:return n=r.sent(),null===(l=Be.current)||void 0===l||l.show({severity:"error",sticky:!1,className:g.errorToast,content:o(z,{message:(null===(u=null===(c=null==n?void 0:n.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:Be,pt:{root:{style:{zIndex:9999}}}}),ue&&ye.isOpen&&"DELETE"!==ye.type&&"RENAME"!==ye.type?o(M,{isOpen:!0,onClose:function(){return be(e(e({},ye),{isOpen:!1}))},onSubmit:function(n){return t(ee,void 0,void 0,function(){var t,o,s,i,a,l,c,u,d,p,f,g,v,h,S,y,b,L,I,A;return r(this,function(r){switch(r.label){case 0:Ae(!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"===ye.type&&ye.parentId,a=i?"genreRuleSet":ye.type,o={topic:a,scope_reference_id:null,scopeDescription:"demo",parentScopeId:ye.parentId||null,scopeName:s,scopeReferenceMetadata:{},applicationMappingId:le}),[4,E(o,ne.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(Ue.current=c,u=t&&(null===(S=o.topic)||void 0===S?void 0:S.toLowerCase().includes("genre")),d=!t&&"GLOBAL"!==ye.type&&ye.parentId,!u&&!d)return[3,10];if(!(p=t?null===(b=null===(y=m.getState().scopeTreeData)||void 0===y?void 0:y.data)||void 0===b?void 0:b.id:ye.parentId))return[3,10];if(!ue)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:le||"",is_copy_parent_variant_id:!1})];case 8:return r.sent(),[3,10];case 9:return g=r.sent(),console.error("Failed to inherit rules for the new scope:",g),[3,10];case 10:return[4,nn(!0)];case 11:return r.sent(),be(function(n){return e(e({},n),{isOpen:!1})}),[3,14];case 12:throw v=r.sent(),console.error("An error occurred during scope creation.",v),null===(L=Be.current)||void 0===L||L.show({severity:"error",summary:"Creation Failed",detail:(null===(A=null===(I=null==v?void 0:v.response)||void 0===I?void 0:I.data)||void 0===A?void 0:A.message)||"There was an error creating the scope. Please try again."}),v;case 13:return Ae(!1),[7];case 14:return[2]}})})},hasGlobalRuleSet:sn,canCreateGlobal:an,globalScopeId:null!==($=null===(Z=null==ve?void 0:ve.data)||void 0===Z?void 0:Z.id)&&void 0!==$?$:null}):s(i,{children:[o(F,{isOpen:ye.isOpen&&"DELETE"!==ye.type&&"RENAME"!==ye.type,onClose:function(){return be(e(e({},ye),{isOpen:!1}))},onCreate:function(e){e&&(Ue.current=e),nn(!0)},hasGlobalRuleSet:sn,parentId:ye.parentId}),o(K,{isOpen:ye.isOpen&&"RENAME"===ye.type,onClose:function(){return be(e(e({},ye),{isOpen:!1}))},onSave:function(n){return t(ee,void 0,void 0,function(){var t,s,i,a;return r(this,function(r){switch(r.label){case 0:Ae(!0),r.label=1;case 1:return r.trys.push([1,4,5,6]),ye.scopeId?[4,L({scope_id:ye.scopeId,scope_name:n})]:[2];case 2:return r.sent(),[4,nn(!0)];case 3:return r.sent(),be(function(n){return e(e({},n),{isOpen:!1})}),[3,6];case 4:throw t=r.sent(),console.error("An error occurred during scope rename.",t),null===(s=Be.current)||void 0===s||s.show({severity:"error",sticky:!1,className:g.errorToast,content:o(z,{message:(null===(a=null===(i=null==t?void 0:t.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."})}),t;case 5:return Ae(!1),[7];case 6:return[2]}})})},initialName:ye.initialName})]}),o(j,{isOpen:ye.isOpen&&"DELETE"===ye.type,onCancel:function(){return be(e(e({},ye),{isOpen:!1}))},onConfirm:function(){return tn(ye.scopeId,ye.initialName,ye.isSubscope)},title:"Delete Scope",description:s(i,{children:["Deleting ",o("span",e({className:g.highlight},{children:ye.initialName||"this scope"}))," will permanently remove all Learnings, Access rules, and Change History inside it. This cannot be undone."]}),confirmText:"Delete",confirmBgColor:"#EF4444",isLoading:Ie})]}))})}export{J as default};
|
|
2
2
|
//# sourceMappingURL=LearningManagement.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,u=void 0!==d&&d,m=o("scope"),v=m[0],b=m[1],f=t(function(e){return e.rbacConfig}),A=i(function(e){return e.hasPermission}),I=null==f?void 0:f.applicationResourceId,S=(null==f?void 0:f.applicationModuleId)||(null==f?void 0:f.moduleId),h=u?S:null==f?void 0:f.moduleId,j=Boolean(I&&A("ilotj.scope.access.application.view",I));return c("div",e({className:l.accessManagement},{children:[c("div",e({className:l.accessTabs,role:"tablist","aria-label":"Access level"},{children:[s("button",e({type:"button",role:"tab","aria-selected":"scope"===v,className:"".concat(l.accessTab," ").concat("scope"===v?l.accessTabActive:""),onClick:function(){return b("scope")}},{children:n("access.scopeLevelAccess","Scope Level Access")})),s("button",e({type:"button",role:"tab","aria-selected":"application"===v,className:"".concat(l.accessTab," ").concat("application"===v?l.accessTabActive:""),onClick:function(){return b("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"===v?{resourceId:I,moduleId:S,accessLevel:"application"}:{ruleSetId:p,moduleId:h,accessLevel:"scope"})}))]}))};export{r as default};
|
|
2
2
|
//# sourceMappingURL=AccessManagementPanel.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__awaiter as e,__generator as o,__assign as r,__spreadArray as
|
|
1
|
+
import{__awaiter as e,__generator as o,__assign as r,__spreadArray as t}from"tslib";import{jsx as n,jsxs as i,Fragment as l}from"react/jsx-runtime";import{useState as a,useRef as c,useEffect as s}from"react";import{useMutation as d}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";import{dt as k}from"../store/useLMSConfigStore.js";import{MIDDLE_DRAWER_ADD_SCOPE_DT_PATH as A,MIDDLE_DRAWER_APPROVAL_SETTINGS_DT_PATH as R}from"../constants.js";var D=function(D){var I=D.isOpen,q=D.onClose,j=D.onCreate,z=D.hasGlobalRuleSet,F=D.parentId,E=a(""),L=E[0],B=E[1],W=a(""),N=W[0],G=W[1],P=a({}),T=P[0],M=P[1],O=c(null),K=b().user,U=S(function(e){return e.roles}),H=C(function(e){return e.rbacConfig}),J=a(null),Q=J[0],V=J[1],X=a("approval_required"),Y=X[0],Z=X[1],$=a([]),ee=$[0],oe=$[1],re=a([]),te=re[0],ne=re[1],ie=a(""),le=ie[0],ae=ie[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==K?void 0:K.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 se=ce.isPending,de=ce.mutateAsync;return s(function(){I&&(B(""),G(""),M({}),V(null),Z("approval_required"),oe([]),ne([]),ae(""))},[I]),I?se?n(v,{isLoading:se}):i("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:O}),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:[n("h2",r({style:{margin:0,fontSize:18,fontWeight:500,color:"#19213D"}},{children:k("".concat(A,".title"),"Add Scope")})),n("p",r({style:{margin:"4px 0 0 0",fontSize:14,fontWeight:400,color:"#666F8D"}},{children:k("".concat(A,".subtitle"),"This scope will be created under Global and will inherit its Learnings by default.",{parent:"Global"})}))]}),n("button",r({onClick:q,style:{background:"none",border:"none",padding:0,cursor:"pointer",color:"#9CA3AF"}},{children:n(p,{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:[n("span",r({style:{marginRight:4,fontSize:16,fontWeight:600,color:"#8F2C23"}},{children:"*"})),k("".concat(A,".scopeName"),"Scope Name")]})),"Custom"===L?n(h,{value:N,onChange:function(e){if(e.length>50)return G(e.slice(0,50)),void M(function(e){return r(r({},e),{name:"Scope Name must be 50 characters or fewer"})});G(e),M(function(e){return r(r({},e),{name:void 0})})},onStationSelect:function(e){V(e)},style:{border:T.name?"1px solid #8F2C23":void 0}}):n(y,{value:N,onChange:function(e){var o=e.target.value;if(o.length>50)return G(o.slice(0,50)),void M(function(e){return r(r({},e),{name:"Scope Name must be 50 characters or fewer"})});G(o),M(function(e){return r(r({},e),{name:void 0})})},style:{border:"1px solid ".concat(T.name?"#8F2C23":"#F0F2F5")},placeholder:"e.g. Global Learnings"}),T.name&&n("p",r({style:{margin:"4px 0 0 0",fontSize:12,color:"#8F2C23"}},{children:T.name}))]})),i("div",r({style:{display:"flex",flexDirection:"column",gap:12}},{children:[i("label",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:[n("span",r({style:{marginRight:4,fontSize:16,fontWeight:600,color:"#8F2C23"}},{children:"*"})),k("".concat(R,".title"),"Learning Approval Settings")]})),i("div",r({role:"radio","aria-checked":"approval_required"===Y,tabIndex:0,style:{cursor:"pointer",display:"flex",flexDirection:"column",gap:4},onClick:function(){return Z("approval_required")},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||Z("approval_required")}},{children:[i("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"===Y?"#2563EB":"#CBD5E1")}},{children:"approval_required"===Y&&n("div",{style:{height:8,width:8,borderRadius:"50%",backgroundColor:"#2563EB"}})})),n("span",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:k("".concat(R,".approvalRequired.title"),"Approval Required Before Publishing")}))]})),n("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#666F8D"}},{children:k("".concat(R,".approvalRequired.subtitle"),"Learnings require approval before publishing.")}))]})),"approval_required"===Y&&n(g,{selectedApprovers:ee,selectedGroupOfApprovers:te,onApproversChange:oe,onGroupsChange:ne}),le&&n("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#8F2C23"}},{children:le})),i("div",r({role:"radio","aria-checked":"publish_without"===Y,tabIndex:0,style:{cursor:"pointer",display:"flex",flexDirection:"column",gap:4},onClick:function(){Z("publish_without"),ae("")},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(Z("publish_without"),ae(""))}},{children:[i("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"===Y?"#2563EB":"#CBD5E1")}},{children:"publish_without"===Y&&n("div",{style:{height:8,width:8,borderRadius:"50%",backgroundColor:"#2563EB"}})})),n("span",r({style:{fontSize:14,fontWeight:500,color:"#19213D"}},{children:k("".concat(R,".publishWithoutApproval.title"),"Publish Without Approval")}))]})),n("p",r({style:{margin:0,marginLeft:24,fontSize:12,color:"#666F8D"}},{children:k("".concat(R,".publishWithoutApproval.subtitle"),"Learnings can be published directly.")}))]}))]})),i("div",r({style:{marginTop:32,display:"flex",justifyContent:"flex-end",gap:12}},{children:[n("button",r({onClick:q,style:{borderRadius:6,border:"1px solid #E2E8F0",padding:"8px 16px",fontSize:14,fontWeight:500,color:"#64748B",backgroundColor:"white",cursor:"pointer",opacity:se?.5:1},disabled:se},{children:k("".concat(A,".cancel"),"Cancel")})),n("button",r({onClick:function(){return e(void 0,void 0,void 0,function(){var e,r,n,i,l,a,c,s,d,p,u,m,h,g;return o(this,function(o){switch(o.label){case 0:if(e={},N.trim()?N.length>50&&(e.name="Scope Name must be 50 characters or fewer"):e.name="Scope Name is required","approval_required"===Y&&0===ee.length&&0===te.length&&ae("Please select at least one approver or approver group."),e.name)return M(e),[2];if("approval_required"===Y&&0===ee.length&&0===te.length)return[2];ae(""),o.label=1;case 1:return o.trys.push([1,3,,4]),r="approval_required"===Y,n=w.getState().backwardCompatibility,i=n?{topic:z?"genreRuleSet":"globalRuleSet",customScopeGroupName:_.CUSTOM_SCOPE_GROUP_NAME,scopeDescription:N,parentScopeId:null,customScopeName:N,customScopeId:f(),createByName:(null==K?void 0:K.firstname)||"System",createdBy:(null==K?void 0:K.email)||"system@audacy.com",approvalRequired:r,appsecData:{application:null==H?void 0:H.applicationId,module:null==H?void 0:H.moduleId,roles:t(t([],r?[{users:ee.map(function(e){return e.email}),groups:te.map(function(e){return e._id}),role:null!==(s=null===(c=U.find(function(e){return"Learning Manager"===e.name}))||void 0===c?void 0:c._id)&&void 0!==s?s:""}]:[],!0),[{users:[null==K?void 0:K.email],groups:[],role:null!==(p=null===(d=U.find(function(e){return"Instant Learning Admin"===e.name}))||void 0===d?void 0:d._id)&&void 0!==p?p:""}],!1)}}:{topic:z?"genreRuleSet":"globalRuleSet",scope_reference_id:null,scopeDescription:N,parentScopeId:null!=F?F:null,scopeName:N,scopeReferenceMetadata:{},scopeType:"Custom",applicationMappingId:w.getState().app_integration_id},console.log("Add Scope payload:",i),[4,de(i)];case 2:return l=o.sent(),j(null===(u=null==l?void 0:l.data)||void 0===u?void 0:u.scopeId),q(),[3,4];case 3:return a=o.sent(),console.error("An error occurred during scope creation.",a),null===(m=O.current)||void 0===m||m.show({severity:"error",summary:"Adding Scope Failed",detail:(null===(g=null===(h=null==a?void 0:a.response)||void 0===h?void 0:h.data)||void 0===g?void 0:g.message)||"There was an error creating the scope. Please try again."}),[3,4];case 4: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:se||"Custom"===L&&!Q?.5:1},disabled:se||"Custom"===L&&!Q},{children:se?i(l,{children:[n(u,{className:"animate-spin",style:{marginRight:8,height:16,width:16,color:"white"}}),"Creating..."]}):k("".concat(A,".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{jsxs as o,Fragment as i,jsx 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 S}from"../utils/treeUtils.js";import I from"../styles/LearningContent.module.css.js";import R 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,J=k.deleteRuleErrorMessage,U=void 0===J?"Failed to delete rule. Please try again.":J,B=k.deleteVariantErrorMessage,W=void 0===B?"Failed to delete variant. Please try again.":B,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],Se=s(null),Ie=Se[0],Re=Se[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],Je=Ve[1],Ue=s(!1),Be=Ue[0],We=Ue[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),Re(0)},hn=function(){me(!1),ue(!1),ge(null),Te(null),Ce(null),Re(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,S,I;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===(I=null===(S=null===(C=g[0])||void 0===C?void 0:C.variants)||void 0===S?void 0:S[0])||void 0===I?void 0:I.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?S((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=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"}},Cn=function(e){if(!e)return l("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 o("p",{children:["Are you sure you want to delete"," ",l("span",r({className:I.semibold},{children:null==n?void 0:n.ruleTitle}))," rule? This action cannot be undone."]})},Sn={editingRule:ve,editingTier:ye,editingVariants:be,focusedVariantIndex:Ie,setFocusedVariantIndex:Re,triggerAddVariant:qe,triggerFixGaps:rn,copiedRule:sn,copiedSourceTier:dn,copiedTargetTier:fn,initialDraftMessage:Ee,app_integration_id:Z,modeId:"019dde79-0494-78d7-ba5b-54a35d20f0fc"};return o(i,wn?{children:[l(y,{ref:ce}),l("div",r({className:I.container},{children:je?l(h,{}):Oe?l(w,{errorMessage:Oe,onRetry:yn}):l(T,{onAddRule:gn,onDeleteRule:function(e){Je(e)},onEditRule:function(e,n){ge(e),Te(n||null),Ce(e.variants||null),Re(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),Re(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,o,i,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,o=(null==wn?void 0:wn.ruleSetName)?"".concat(wn.ruleSetName.replace(/\s+/g,"_"),"_rules.csv"):"ruleset_".concat(ne,".csv"),r.download=o,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:I.successToast,content:l(b,{message:"Ruleset exported successfully!"})}),[3,5];case 3:return i=n.sent(),console.error("Export error:",i),null===(s=ce.current)||void 0===s||s.show({severity:"error",sticky:!1,className:I.errorToast,content:l(C,{message:i.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,o,i,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,o,i,a)];case 1:return n.sent(),yn(!0),null===(s=ce.current)||void 0===s||s.show({severity:"success",sticky:!1,life:3e3,className:I.successToast,content:l(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:I.errorToast,content:l(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),Re(null),me(!0)}}})})),pe&&l(_,{children:l(j,{isOpen:pe,onClose:hn,app_integration_id:Z,token:ee,mode:"ADD",pluginPayload:r(r({},Sn),{initialScope:bn(),ruleSet:wn})})}),l(R,{isOpen:!!Pe,title:q,description:Cn(Pe),warning:$,confirmText:X,confirmBgColor:"#EF4444",onConfirm:function(){return e(void 0,void 0,void 0,function(){var e,t,r,o,i;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(),Je(null),null===(t=ce.current)||void 0===t||t.show({severity:"success",sticky:!1,life:3e3,className:I.successToast,content:l(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:I.errorToast,content:l(C,{message:(null===(i=null===(o=null==e?void 0:e.response)||void 0===o?void 0:o.data)||void 0===i?void 0:i.detail)||U})}),[3,5];case 4:return We(!1),[7];case 5:return[2]}})})},onCancel:function(){return Je(null)},isLoading:Be}),l(R,{isOpen:!!Xe,title:q,description:"variantDeletion"===ze?l("span",{children:"Are you sure you want to delete this variant? This action cannot be undone."}):Cn((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,o,i;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:I.successToast,content:l(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:I.errorToast,content:l(C,{message:(null===(i=null===(o=null==e?void 0:e.response)||void 0===o?void 0:o.data)||void 0===i?void 0:i.detail)||("ruleDeletion"===ze?U:W)})}),[3,8];case 7:return nn(!1),[7];case 8:return[2]}})})},onCancel:function(){return Ye(null)},isLoading:en})]}:{children:[l(d,{onCreate:gn,title:D,desc:x,button:A}),pe&&l(_,{children:l(j,{isOpen:pe,onClose:hn,app_integration_id:Z,token:ee,mode:"ADD",pluginPayload:r(r({},Sn),{initialScope:bn(),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 b}from"../utils/treeUtils.js";import j from"../styles/LearningContent.module.css.js";import R from"../components/ConfirmationModal.js";import{dt as D}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 I}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=c(function(e){return e.selectedRuleSetId}),le=c(function(e){return e.scopeTreeData}),ae=c(function(e){return e.sidebarTab}),se=c(function(e){return e.setInitialRules}),ue=c(function(e){return e.currentRules}),ce=c(function(e){return e.setRawAuditRuleData});c(function(e){return e.createdVariantInfo});var de=c(function(e){return e.resetCreatedVariantInfo}),pe=c(function(e){return e.isILModalTriggered}),me=c(function(e){return e.setIsILModalTriggered}),fe=a(null),ve=s(!1),ge=ve[0],he=ve[1],Te=s(null),ye=Te[0],we=Te[1],Se=s(null),Ce=Se[0],be=Se[1],je=s(null),Re=je[0],De=je[1],Ie=s(null),xe=Ie[0],_e=Ie[1],Le=s(!1),ke=Le[0],Oe=Le[1],Me=s(null),Ae=Me[0],Ne=Me[1],Ee=s(!1),Ve=Ee[0],Fe=Ee[1],Pe=s(""),Be=Pe[0],Je=Pe[1],Ue=s(null),We=Ue[0],qe=Ue[1],Ge=s(!1),He=Ge[0],$e=Ge[1],ze=s(!1),Ke=ze[0],Qe=ze[1],Xe=s("ruleDeletion"),Ye=Xe[0],Ze=Xe[1],et=s(null),tt=et[0],nt=et[1],rt=s(!1),ot=rt[0],it=rt[1],lt=s(!1),at=lt[0],st=lt[1],ut=c.getState().tiers,ct=s(null),dt=ct[0],pt=ct[1],mt=s(null),ft=mt[0],vt=mt[1],gt=s(null),ht=gt[0],Tt=gt[1],yt=function(){we(null),be(null),he(!0),_e(0)},wt=function(){he(!1),me(!1),we(null),be(null),De(null),_e(null),Qe(!1),st(!1),St(),pt(null),vt(null),Tt(null),ne&&ne(!1,ie||void 0)};u(function(){St()},[ie,se]),u(function(){pe&&he(!0)},[pe]);var St=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,b,j;return t(this,function(t){switch(t.label){case 0:if(!ie)return se([]),[2];o||Oe(!0),Ne(null),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,p(ie,oe)];case 2:return e=t.sent(),console.log("response==",e),(null==e?void 0:e.data)&&0!==Object.keys(e.data).length?(ce(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=ut.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(D("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)})}),se(y),(w=null===(j=null===(b=null===(C=g[0])||void 0===C?void 0:C.variants)||void 0===b?void 0:b[0])||void 0===j?void 0:j.id)?setTimeout(function(){var e=document.querySelector('[data-variant-id="'.concat(w,'"]'));e&&e.scrollIntoView({behavior:"smooth",block:"center"}),setTimeout(function(){return de()},1e4)},500):de()):se(v),[3,5]):(se([]),[2]);case 3:return S=t.sent(),console.error("Failed to fetch rule details",S),404!==(null==S?void 0:S.status)&&Ne((null==S?void 0:S.message)||"Failed to load rules. Please try again."),se([]),[3,5];case 4:return o||Oe(!1),[7];case 5:return[2]}})})},Ct=ie?b((null==le?void 0:le.data)||null,ie):null,bt=Ct?{ruleSetId:Ct.id,ruleSetName:Ct.name,ruleSetDesc:"",ruleCount:null===(M=null==Ct?void 0:Ct.metrics)||void 0===M?void 0:M.learningsCount}:void 0,jt=Boolean(null==le?void 0:le.data),Rt=Boolean(ie&&!Ct&&jt),Dt=function(){if("stations"===ae)return"custom";if(!Ct)return"global";switch(Ct.type){case"GLOBAL":default:return"global";case"SCOPE":return"genre";case"SUBSCOPE":case"Custom":return"custom"}},It=function(e){var t;if(!e)return o("p",{children:D("".concat(k,".deleteDialog.description"),"Are you sure you want to delete this rule? This action cannot be undone.")});var n=null==ue?void 0:ue.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:D("".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:""})})},xt={editingRule:ye,editingTier:Ce,editingVariants:Re,focusedVariantIndex:xe,setFocusedVariantIndex:_e,triggerAddVariant:Ke,triggerFixGaps:at,copiedRule:dt,copiedSourceTier:ft,copiedTargetTier:ht,initialDraftMessage:Be,app_integration_id:re,modeId:"019dde79-0494-78d7-ba5b-54a35d20f0fc"};return bt?i(l,{children:[o(T,{ref:fe}),o("div",r({className:j.container},{children:ke?o(h,{}):Ae?o(w,{errorMessage:Ae,onRetry:St}):o(y,{onAddRule:yt,onDeleteRule:function(e){qe(e)},onEditRule:function(e,t){we(e),be(t||null),De(e.variants||null),_e(null),Qe(!0),he(!0)},onEditVariant:function(e,t,n,r){var o,i,l,a,s=null!==(l=null===(i=null===(o=null==ue?void 0:ue.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==ue?void 0:ue.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;we(s),be(n||null),De(s.variants||null),_e(c),he(!0),"resolve_gaps"===r&&st(!0)}},onDeleteVariant:function(e,t){nt({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(!ie)return[2];Fe(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,m(ie)];case 2:return e=t.sent(),n=window.URL.createObjectURL(e),(r=document.createElement("a")).href=n,i=(null==bt?void 0:bt.ruleSetName)?"".concat(bt.ruleSetName.replace(/\s+/g,"_"),"_rules.csv"):"ruleset_".concat(ie,".csv"),r.download=i,document.body.appendChild(r),r.click(),document.body.removeChild(r),window.URL.revokeObjectURL(n),null===(a=fe.current)||void 0===a||a.show({severity:"success",sticky:!1,life:3e3,className:j.successToast,content:o(S,{message:"Ruleset exported successfully!"})}),[3,5];case 3:return l=t.sent(),console.error("Export error:",l),null===(s=fe.current)||void 0===s||s.show({severity:"error",sticky:!1,className:j.errorToast,content:o(C,{message:l.message||"Failed to export ruleset. Please try again."})}),[3,5];case 4:return Fe(!1),[7];case 5:return[2]}})})},isExporting:Ve,onToggleSuccess:function(){return St(!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(),St(!0),null===(s=fe.current)||void 0===s||s.show({severity:"success",sticky:!1,life:3e3,className:j.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),St(!0),null===(u=fe.current)||void 0===u||u.show({severity:"error",sticky:!1,className:j.errorToast,content:o(C,{message:"Failed to update rule order. Please try again."})}),[3,3];case 3:return[2]}})})},onRefreshRuleSets:ne,setDeleteConfirmationUsedFor:Ze,onCopyToTier:function(e,t,n,r,o){var i,l,a=null===(l=null===(i=null==ue?void 0:ue.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");Je(s),pt(a),vt(r),Tt(o),we(null),be(null),De(null),_e(null),he(!0)}}})})),ge&&o(I,{children:o(x,{isOpen:ge,onClose:wt,app_integration_id:re,token:oe,mode:"ADD",pluginPayload:r(r({},xt),{initialScope:Dt(),ruleSet:bt})})}),o(R,{isOpen:!!We,title:D("".concat(_,".deleteDialog.title"),K),description:It(We),warning:D("".concat(_,".deleteDialog.warningText"),X),confirmText:D("".concat(_,".deleteDialog.deleteText"),te),cancelText:D("".concat(_,".deleteDialog.cancelText"),"Cancel"),loadingText:D("".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(!We)return[2];$e(!0),t.label=1;case 1:return t.trys.push([1,3,4,5]),[4,f(We)];case 2:return t.sent(),qe(null),null===(n=fe.current)||void 0===n||n.show({severity:"success",sticky:!1,life:3e3,className:j.successToast,content:o(S,{message:J})}),St(),ne&&ne(!1,ie||void 0),[3,5];case 3:return e=t.sent(),console.error("Failed to delete rule",e),null===(r=fe.current)||void 0===r||r.show({severity:"error",sticky:!1,className:j.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 $e(!1),[7];case 5:return[2]}})})},onCancel:function(){return qe(null)},isLoading:He}),o(R,{isOpen:!!tt,title:D("".concat(L,".deleteVariant.title"),K),description:"variantDeletion"===Ye?o("span",{children:D("".concat(L,".deleteVariant.desc"),"Are you sure you want to delete this variant? This action cannot be undone.")}):It((null==tt?void 0:tt.ruleId)||null),warning:D("".concat(L,".deleteVariant.warningText"),"ruleDeletion"===Ye?X:Z),confirmText:D("".concat(L,".deleteDialog.deleteText"),te),cancelText:D("".concat(L,".cancelText"),"Cancel"),loadingText:D("".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(!tt)return[2];it(!0),t.label=1;case 1:return t.trys.push([1,6,7,8]),"ruleDeletion"!==Ye?[3,3]:[4,v(tt.ruleId)];case 2:return t.sent(),[3,5];case 3:return[4,f(tt.variantId)];case 4:t.sent(),t.label=5;case 5:return nt(null),null===(n=fe.current)||void 0===n||n.show({severity:"success",sticky:!1,life:3e3,className:j.successToast,content:o(S,{message:"ruleDeletion"===Ye?J:W})}),St(),ne&&ne(!1,ie||void 0),[3,8];case 6:return e=t.sent(),console.error("Failed to delete variant",e),null===(r=fe.current)||void 0===r||r.show({severity:"error",sticky:!1,className:j.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"===Ye?G:$)})}),[3,8];case 7:return it(!1),[7];case 8:return[2]}})})},onCancel:function(){return nt(null)},isLoading:ot})]}):Rt?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:yt,title:N,desc:V,button:P}),ge&&o(I,{children:o(x,{isOpen:ge,onClose:wt,app_integration_id:re,token:oe,mode:"ADD",pluginPayload:r(r({},xt),{initialScope:Dt(),ruleSet:bt})})})]})};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,__awaiter as r,__generator as o}from"tslib";import{jsxs as n,Fragment as
|
|
1
|
+
import{__assign as e,__awaiter as r,__generator as o}from"tslib";import{jsxs as n,Fragment as t,jsx as i}from"react/jsx-runtime";import{useState as l,useRef as s,useEffect as a}from"react";import{ChevronUp as d}from"lucide-react";import u from"./RuleAccordion.js";import c from"../styles/TierCard.module.css.js";import{Reorder as m,useDragControls as h}from"framer-motion";import{Dialog as p,Box as g}from"@mui/material";import{deleteTier as f}from"../apis/scopeApis.js";import{Toast as v}from"primereact/toast";import y from"../shared/SuccessToastContent.js";import x from"../shared/ErrorToastContent.js";import{dt as C}from"../store/useLMSConfigStore.js";import{TIER_DT_PATH as T}from"../constants.js";var b=function(r){var o,n=r.rule,t=r.idx,l=r.tier,s=r.localRules,a=r.allTiers,d=r.isGlobalScope,c=r.scopeId,p=r.onFetchOverrideHistory,g=r.onEditRule,f=r.onEditVariant,v=r.onDeleteVariant,y=r.onDeleteRule,x=r.onReorderRules,C=r.highlightedVariants,T=r.highlightedTierNames,b=r.onToggleSuccess,F=r.setDeleteConfirmationUsedFor,R=r.onCopyToTier,D=h();return i(m.Item,e({value:n,dragListener:!1,dragControls:D,onDragEnd:function(){var e,r;if(x&&n.ruleId&&c){var o=l.rules.findIndex(function(e){return e.ruleId===n.ruleId}),t=s.findIndex(function(e){return e.ruleId===n.ruleId});if(-1!==o&&o!==t){var i=t>0&&null!==(e=s[t-1].ruleId)&&void 0!==e?e:null,a=t<s.length-1&&null!==(r=s[t+1].ruleId)&&void 0!==r?r:null;x(c,l.id,n.ruleId,i,a)}}}},{children:i(u,{idx:t,rule:n,ruleSetId:c,allTiers:a,currentTierId:l.id,isGlobalScope:d,onFetchOverrideHistory:p,onEdit:g,onEditVariant:f,onDeleteVariant:v,tierName:l.name,onRemove:function(){null!=n.ruleId&&y(n.ruleId)},highlightedVariants:C,highlightedTierNames:T,onToggleSuccess:b,dragControls:D,setDeleteConfirmationUsedFor:F,onCopyToTier:R},null!==(o=n.id)&&void 0!==o?o:"new-rule-".concat(t))}),n.ruleId)},F=function(u){var h,F=u.tier,R=u.allTiers,D=u.onToggle,I=u.onDeleteRule,S=u.isGlobalScope,N=void 0!==S&&S,E=u.onFetchOverrideHistory,k=u.onEditRule,w=u.onEditVariant,O=u.onDeleteVariant,V=u.emptyRulesText,j=void 0===V?C("tier.emptyRulesText","No learnings found"):V,H=u.singleRuleSuffix,A=void 0===H?C("tier.tierHeaderNoOfLearning","Learning"):H,L=u.multipleRulesSuffix,B=void 0===L?C("tier.tierHeaderNoOfLearnings","Learnings"):L,G=u.highlightedVariants,z=u.highlightedTierNames,M=u.onToggleSuccess,P=u.onReorderRules,U=u.scopeId,W=u.onRefreshRuleSets,J=u.setDeleteConfirmationUsedFor,Y=u.onCopyToTier,q=l(F.rules),K=q[0],Q=q[1],X=l(!1),Z=X[0],$=X[1],_=l(!1),ee=_[0],re=_[1],oe=s(null);a(function(){Q(F.rules)},[F.rules]);var ne=function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];return e.filter(Boolean).join(" ")};return n(t,{children:[i(v,{ref:oe,position:"top-right"}),n("div",e({className:ne(c.tierCard,F.isOpen&&c.tierCardOpen)},{children:[n("div",e({className:c.tierHeader,onClick:D},{children:[n("div",e({className:c.tierInfo},{children:[n("h3",{children:[F.name," ",n("span",{children:["(",F.ruleCount," ",1===F.ruleCount?A:B,")"]})]}),i("p",e({className:c.tierDescription},{children:F.description}))]})),n("div",e({className:c.tierButtonGroup},{children:[i("button",e({onClick:function(){return $(!0)},className:c.deleteButton},{children:"Delete"})),i(p,e({open:Z,onClose:function(){return $(!1)},PaperProps:{sx:{borderRadius:"12px",padding:"8px",maxWidth:"400px"}}},{children:n(g,e({sx:{p:3,textAlign:"center",fontFamily:"'Plus Jakarta Sans', sans-serif"}},{children:[i("h3",e({style:{fontSize:"18px",fontWeight:600,color:"#0F172A",marginBottom:"6px"}},{children:C("".concat(T,".deleteDialog.title"),"Delete ".concat(F.name),{N:null===(h=null==F?void 0:F.name)||void 0===h?void 0:h.split(" ")[1]})})),i("p",e({style:{fontSize:"14px",color:"#64748B",lineHeight:"1.5",marginBottom:"10px"}},{children:C("".concat(T,".deleteDialog.description"),"This will permanently delete all rules and variants under this tier, including any rules inherited. This action cannot be undone")})),n(g,e({sx:{display:"flex",gap:2,justifyContent:"center"}},{children:[i("button",e({onClick:function(){return $(!1)},disabled:ee,style:{flex:1,padding:"10px 16px",cursor:"pointer",backgroundColor:"white",border:"1px solid #E2E8F0",borderRadius:"8px",fontSize:"14px",fontWeight:500,color:"#475569",transition:"all 0.2s"},onMouseOver:function(e){return e.currentTarget.style.backgroundColor="#F8FAFC"},onMouseOut:function(e){return e.currentTarget.style.backgroundColor="white"}},{children:C("".concat(T,".deleteDialog.cancel"),"Cancel")})),i("button",e({onClick:function(){return function(e,n){return r(void 0,void 0,void 0,function(){var r,t,l,s,a,d;return o(this,function(o){switch(o.label){case 0:re(!0),o.label=1;case 1:return o.trys.push([1,3,4,5]),[4,f(e,n)];case 2:return o.sent(),e||null===(t=oe.current)||void 0===t||t.show({severity:"error",summary:"Error",detail:"Failed to delete tier. Scope ID is missing."}),n&&"1"!==n&&"2"!==n||null===(l=oe.current)||void 0===l||l.show({severity:"error",summary:"Error",detail:"Failed to delete tier. Tier ID is missing."}),$(!1),null===(s=oe.current)||void 0===s||s.show({severity:"success",sticky:!1,life:3e3,className:"rounded border border-green-300 bg-[#F0FDF4] shadow-none",content:i(y,{message:"Successfully Deleted Tier"})}),M(),W&&W(!1,e||void 0),[3,5];case 3:return r=o.sent(),null===(a=oe.current)||void 0===a||a.show({severity:"error",summary:"Error",detail:"Failed to delete tier. Please try again."}),null===(d=oe.current)||void 0===d||d.show({severity:"error",sticky:!1,className:"rounded border border-red-300 bg-[#FEF2F2] shadow-none",content:i(x,{message:r.message||"Failed to delete tier. Please try again."})}),console.error("Failed to delete tier:",r),[3,5];case 4:return re(!1),[7];case 5:return[2]}})})}(null!=U?U:"",F.id)},disabled:ee,style:{flex:1,padding:"10px 16px",backgroundColor:ee?"#FCA5A5":"#EF4444",color:"white",border:"none",borderRadius:"8px",fontSize:"14px",fontWeight:500,cursor:ee?"not-allowed":"pointer",transition:"background-color 0.2s"},onMouseOver:function(e){ee||(e.currentTarget.style.backgroundColor="#DC2626")},onMouseOut:function(e){ee||(e.currentTarget.style.backgroundColor="#EF4444")}},{children:ee?"Deleting...":"".concat(C("".concat(T,".deleteDialog.submit"),"Yes, Delete"))}))]}))]}))})),i(d,{size:20,className:ne(c.chevronIcon,!F.isOpen&&c.chevronIconClosed)})]}))]})),F.isOpen&&i("div",e({className:c.tierContent},{children:0===F.rules.length?i("p",e({className:c.emptyRules},{children:j})):i(m.Group,e({axis:"y",values:K,onReorder:Q,className:c.rulesList},{children:K.map(function(e,r){return i(b,{idx:r,rule:e,tier:F,localRules:K,allTiers:R,isGlobalScope:N,scopeId:U,onFetchOverrideHistory:E,onEditRule:k,onEditVariant:w,onDeleteVariant:O,onDeleteRule:I,onReorderRules:P,highlightedVariants:G,highlightedTierNames:z,onToggleSuccess:M,setDeleteConfirmationUsedFor:J,onCopyToTier:Y},e.ruleId)})}))}))]}))]})};export{F as default};
|
|
2
2
|
//# sourceMappingURL=TierCard.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e,__awaiter as n,__generator as t}from"tslib";import{jsxs as i,jsx as r,Fragment as o}from"react/jsx-runtime";import{useState as a,useRef as l,useEffect as s}from"react";import{parseISO as c,isValid as d,format as u}from"date-fns";import{MoreVertical as p,Pause as v,Play as m,Copy as h,Eye as f,Info as g,TriangleAlert as y}from"lucide-react";import{toggleVariant as b}from"../apis/scopeApis.js";import{HistorySkeleton as T}from"./HistorySkeleton.js";import N from"./InheritanceBreadcrumb.js";import A from"./RuleConditionBlock.js";import C from"../styles/VariantCard.module.css.js";import j from"../styles/CustomTooltip.module.css.js";import w from"../components/CustomTooltip.js";import I from"../components/ConfirmationModal.js";import L from"./OverrideTimeline.js";import x from"../store/useAuthStore.js";import{usePermissionsStore as B}from"../store/usePermissionsStore.js";import D from"./PendingApprovalChip.js";import O from"./ApprovalActionButton.js";import k from"./ApprovalLearningDialog.js";import{useApproveOrRejectVariantsMutation as S}from"../queries/useApprovalQueries.js";import F from"../store/useEnvStore.js";var E=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return e.filter(Boolean).join(" ")},H=function(H){var M,P,R,V,W,_,z,U,G,q=H.ruleTitle,Z=H.variant,K=H.variantIndex,Q=H.totalVariants,Y=H.ruleId;H.pendingApprovalCount;var $=H.ruleSetId,J=H.tierName,X=H.displayLabel,ee=H.onEdit,ne=H.onDelete,te=H.onFetchOverrideHistory,ie=H.editButtonLabel,re=void 0===ie?"Edit":ie,oe=H.deleteButtonLabel,ae=void 0===oe?"Delete":oe,le=H.whenToApplyLabel,se=void 0===le?"When to Apply":le,ce=H.whenNotToApplyLabel,de=void 0===ce?"When Not to Apply":ce,ue=H.noConditionsText,pe=void 0===ue?"No conditions":ue,ve=H.viewOverrideLabel,me=void 0===ve?"View Override History":ve,he=H.hideOverrideLabel,fe=void 0===he?"Hide Override History":he,ge=H.enableLearningVariantLabel,ye=void 0===ge?"Enable":ge,be=H.disableLearningVariantLabel,Te=void 0===be?"Disable":be,Ne=H.historyErrorMessage,Ae=void 0===Ne?"Failed to load override history.":Ne,Ce=H.resolveGapsLabel,je=void 0===Ce?"This learning has some gaps":Ce,we=H.showActionsBar,Ie=void 0===we||we,Le=H.showDescriptionBox,xe=void 0===Le||Le,Be=H.showConditions,De=void 0===Be||Be,Oe=H.showInheritance,ke=void 0===Oe||Oe,Se=H.defaultApplyOpen,Fe=void 0===Se||Se,Ee=H.defaultNotApplyOpen,He=void 0===Ee||Ee,Me=H.className,Pe=H.isHighlighted,Re=void 0!==Pe&&Pe,Ve=H.highlightAction,We=H.highlightedTierNames,_e=H.highlightedVariantIds,ze=H.headerContent,Ue=H.footerContent,Ge=H.onToggleSuccess,qe=H.setDeleteConfirmationUsedFor,Ze=H.onCopyToTier,Ke=H.onSetInitialDraftMessage,Qe=x.getState().user,Ye=a(Fe),$e=Ye[0],Je=Ye[1],Xe=a(He),en=Xe[0],nn=Xe[1],tn=a(!1),rn=tn[0],on=tn[1],an=a(!1),ln=an[0],sn=an[1],cn=a(null),dn=cn[0],un=cn[1],pn=a(null),vn=pn[0],mn=pn[1],hn=a(!1),fn=hn[0],gn=hn[1],yn=a(!1),bn=yn[0],Tn=yn[1],Nn=l(null),An=!1!==Z.is_enabled,Cn=a(!1),jn=Cn[0],wn=Cn[1],In=l(null),Ln=a({isOpen:!1,mode:"approve"}),xn=Ln[0],Bn=Ln[1],Dn=S(),On=F(function(e){return e.rbacConfig}),kn=On?{application:On.applicationId,scopeLevelModuleId:null!==(M=null==On?void 0:On.moduleId)&&void 0!==M?M:"",applicationLevelModuleId:null!==(P=null==On?void 0:On.applicationModuleId)&&void 0!==P?P:"",applicationLevelResourceId:null!==(R=null==On?void 0:On.applicationResourceId)&&void 0!==R?R:""}:void 0,Sn=B(function(e){return e.hasPermission}),Fn=$,En=Z.inheritance&&Z.inheritance.length>1,Hn=Sn("ilotj.rule.variant.edit",Fn)||Sn(En?"ilotj.rule.variant.inherited.edit":"ilotj.rule.variant.nonInherited.edit",Fn),Mn=Sn("ilotj.rule.variant.enable",Fn)||Sn(En?"ilotj.rule.variant.inherited.enable":"ilotj.rule.variant.nonInherited.enable",Fn),Pn=Sn("ilotj.rule.variant.disable",Fn)||Sn(En?"ilotj.rule.variant.inherited.disable":"ilotj.rule.variant.nonInherited.disable",Fn),Rn=Sn("ilotj.rule.variant.delete",Fn),Vn=Sn("ilotj.rule.selfApprove",Fn),Wn=Sn("ilotj.rule.approve",Fn),_n=Sn("ilotj.scope.approve",Fn),zn=Sn("ilotj.rule.pendingApproval.view",Fn),Un=Sn("ilotj.rule.variant.pendingApproval.edit",Fn),Gn=Vn||Wn||_n||Un,qn=zn||Gn,Zn="pending_approval"===(null==Z?void 0:Z.approvalStatus),Kn="rejected"===(null==Z?void 0:Z.approvalStatus),Qn=Gn&&Zn;s(function(){var e=function(e){Nn.current&&!Nn.current.contains(e.target)&&gn(!1)};return document.addEventListener("mousedown",e),function(){return document.removeEventListener("mousedown",e)}},[]);var Yn=(null===(V=null==dn?void 0:dn.wta)||void 0===V?void 0:V.changeLog)||[],$n=(null===(W=null==dn?void 0:dn.wnta)||void 0===W?void 0:W.changeLog)||[],Jn=Re&&We&&J?We.filter(function(e){return e!==J}):[],Xn=Jn.length>0&&J?Jn.every(function(e){return e>J})?"↓":"↑":"↓",et=function(){if(_e)for(var e=Array.from(_e),n=0;n<e.length;n++)if(e[n]!==Z.variantId){var t=document.querySelector('[data-variant-id="'.concat(e[n],'"]'));if(t){t.scrollIntoView({behavior:"smooth",block:"center"});break}}},nt=function(e,n){e.stopPropagation(),Bn({isOpen:!0,mode:n})},tt=function(e){if(!e)return"";try{var n=e.endsWith("Z")||/[+-]\d{2}:\d{2}$/.test(e)?e:"".concat(e,"Z"),t=c(n);return d(t)?u(t,"MMM d, yyyy 'at' h:mm a"):e}catch(n){return e}},it=function(e){return e?e.includes("@")?e.split("@")[0].split(".").map(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}).join(" "):e:""};return i("div",e({className:E(C.variantCard,Re&&C.variantHighlight,Me),"data-variant-id":Z.variantId},{children:[i("div",e({className:C.variantHeader,style:{alignItems:"flex-start",gap:"0.75rem"}},{children:[i("div",e({className:C.variantLabelSection,style:{display:"flex",flexWrap:"wrap"}},{children:[r("span",e({className:C.variantLabel},{children:"Default"===Z.variantType&&"Default"!==X?"Default | ".concat(X):X})),Re&&Ve&&r("span",e({className:E(C.actionChip,"new"===Ve?C.actionChipNew:C.actionChipUpdated)},{children:"new"===Ve?"Created":"Updated"})),(null==Z?void 0:Z.isOverridden)&&r(w,e({content:"Inherited from the ".concat((null===(_=Z.inheritance)||void 0===_?void 0:_[(null===(z=Z.inheritance)||void 0===z?void 0:z.length)-2])||"parent"," scope and overridden in this scope."),placement:"top",withArrow:!0,contentClassName:j.customTooltip,sideOffset:5},{children:r("span",e({className:C.overriddenTag},{children:"Overridden"}))})),qn&&Zn&&r(D,{}),Kn&&r("span",e({style:{backgroundColor:"#FEF2F2",color:"#EF4444",border:"1px solid #FECACA",padding:"2px 8px",borderRadius:"9999px",fontSize:"0.75rem",fontWeight:500,display:"inline-flex",alignItems:"center"}},{children:"Rejected"})),!An&&r("span",e({className:C.learningDisabledPill},{children:"Disabled"})),ke&&1!==Q&&0!==K&&r("div",e({className:C.inheritanceSection},{children:r(N,{inheritance:Z.inheritance||[]})}))]})),Ie&&i("div",e({className:C.variantActions},{children:[Qn&&i(o,{children:[r(O,{variant:"approve",text:"Approve",onClick:function(e){return nt(e,"approve")}}),r(O,{variant:"reject",text:"Reject",onClick:function(e){return nt(e,"reject")}})]}),ee&&Hn&&r("button",e({className:C.editButton,onClick:function(){null==ee||ee(Z,Y,J,"edit")}},{children:re})),ne&&Rn&&"Default"!==Z.variantType&&r("button",e({className:C.deleteButton,onClick:function(){null==qe||qe("variantDeletion"),null==ne||ne(Z.variantId,Y)}},{children:ae})),i("div",e({className:C.menuWrapper,ref:Nn},{children:[r("button",e({onClick:function(){return gn(!fn)},className:"".concat(C.menuTrigger," ").concat(fn?C.menuTriggerActive:"")},{children:r(p,{size:16})})),fn&&i("div",e({className:C.menuDropdown},{children:[(An&&Pn||!An&&Mn)&&i("button",e({onClick:function(){return n(void 0,void 0,void 0,function(){return t(this,function(e){return gn(!1),wn(!0),[2]})})},disabled:bn,className:"".concat(C.menuItem," ").concat(bn?C.menuItemDisabled:"")},{children:[r(An?v:m,{size:14}),An?Te:ye]})),J&&i("button",e({onClick:function(){var e="Tier 1"===J?"Tier 2":"Tier 1",n="Add a new learning in ".concat(e," with the following details:\nLearning Title: ").concat(q,"\nLearning Description: ").concat(Z.description,"\nWhen to apply: ").concat(Z.whenToApply,"\nWhen not to apply: ").concat(Z.whenNotToApply);null==Ke||Ke(n),gn(!1),null==Ze||Ze(Z,Y,q||"",J,e)},className:C.menuItem},{children:[r(h,{size:14}),"Copy to ","Tier 1"===J?"Tier 2":"Tier 1"]})),te&&(null!==(G=null===(U=Z.inheritance)||void 0===U?void 0:U.length)&&void 0!==G?G:0)>1&&i("button",e({onClick:function(){gn(!1),n(void 0,void 0,void 0,function(){var e;return t(this,function(n){switch(n.label){case 0:if(rn)return on(!1),[2];if(on(!0),!te)return[2];sn(!0),mn(null),n.label=1;case 1:return n.trys.push([1,3,4,5]),[4,te(Y,Z.variantId)];case 2:return e=n.sent(),un(e),[3,5];case 3:return n.sent(),mn(Ae),[3,5];case 4:return sn(!1),[7];case 5:return[2]}})})},className:C.menuItem},{children:[r(f,{size:14}),rn?fe:me]}))]}))]}))]}))]})),ze,xe&&Z.description&&i("div",e({className:C.descriptionBox},{children:[r("p",e({className:C.descriptionText},{children:Z.description})),rn&&(ln?r(T,{}):vn?r("p",e({className:C.errorText},{children:vn})):(null==dn?void 0:dn.ruleDescription)?r(L,{changeLog:dn.ruleDescription.changeLog}):r("p",e({className:C.noHistoryText},{children:"No override history found"})))]})),De&&i("div",e({className:C.conditionsContainer},{children:[r(A,{type:"apply",conditions:Z.whenToApply||"",isOpen:$e,onToggle:function(){return Je(!$e)},labelText:se,noConditionsText:pe,showOverrideHistory:rn,isLoadingHistory:ln,historyError:vn,overrideHistoryData:Yn}),r(A,{type:"notApply",conditions:Z.whenNotToApply||"",isOpen:en,onToggle:function(){return nn(!en)},labelText:de,noConditionsText:pe,showOverrideHistory:rn,isLoadingHistory:ln,historyError:vn,overrideHistoryData:$n})]})),Re&&Jn.length>0&&i("div",e({className:C.crossTierBanner},{children:[r(g,{className:C.crossTierBannerIcon}),i("span",e({className:C.crossTierBannerText},{children:["Also created in ",Jn.join(", "),"."]})),i("span",e({className:C.crossTierBannerLink,onClick:et,role:"button",tabIndex:0,onKeyDown:function(e){return"Enter"===e.key&&et()}},{children:["Scroll to view ",Xn]}))]})),Ue,(Z.createdBy||Z.createdAt)&&i("div",e({className:C.variantFooter},{children:[!0===Z.is_user_accepted_risk&&i("div",e({className:C.resolveGaps},{children:[r(y,{size:14,color:"#EF4444"}),r("span",e({className:C.resolveGapsText},{children:je})),Hn&&r("button",e({onClick:function(){null==ee||ee(Z,Y,J,"resolve_gaps")},className:C.resolveButton},{children:"Resolve"}))]})),r("div",e({className:C.variantFooterContent},{children:Z.updatedBy||Z.updatedAt?i(o,{children:[Z.updatedBy&&r(w,e({content:Z.createdBy?"Created by ".concat(it(Z.createdBy)):"",contentClassName:j.customTooltip,sideOffset:5,placement:"top"},{children:i("span",e({className:C.variantFooterItem},{children:["Updated by ",it(Z.updatedBy)]}))})),Z.updatedBy&&Z.updatedAt&&r("span",e({className:C.variantFooterSeparator},{children:"•"})),Z.updatedAt&&r(w,e({content:Z.createdAt?"Created at ".concat(tt(Z.createdAt)):"",contentClassName:j.customTooltip,sideOffset:5,placement:"top"},{children:r("span",e({className:C.variantFooterItem},{children:tt(Z.updatedAt)}))}))]}):i(o,{children:[Z.createdBy&&i("span",e({className:C.variantFooterItem},{children:["Created by ",it(Z.createdBy)]})),Z.createdBy&&Z.createdAt&&r("span",e({className:C.variantFooterSeparator},{children:"•"})),Z.createdAt&&r("span",e({className:C.variantFooterItem},{children:tt(Z.createdAt)}))]})}))]})),r(I,{isOpen:jn,title:An?"Disable Learning":"Enable Learning",description:"Are you sure you want to ".concat(An?"disable":"enable"," learning for this variant in ").concat(q,"?"),warning:An?"This variant will no longer influence upcoming schedules. You can enable it again anytime.":"This variant will start influencing upcoming schedules again.",confirmText:An?"Disable":"Enable",cancelText:"Cancel",confirmBgColor:An?"#DC2626":"#16A34A",onConfirm:function(){return n(void 0,void 0,void 0,function(){var e;return t(this,function(n){switch(n.label){case 0:Tn(!0),n.label=1;case 1:return n.trys.push([1,3,4,5]),null==Qe?void 0:Qe.email,[4,b([Z.variantId],!An)];case 2:return n.sent(),null==Ge||Ge(),[3,5];case 3:return e=n.sent(),console.error("Failed to toggle variant",e),[3,5];case 4:return Tn(!1),gn(!1),wn(!1),[7];case 5:return[2]}})})},onCancel:function(){return wn(!1)},isLoading:bn,position:"fixed"}),r(k,{open:xn.isOpen,mode:xn.mode,onClose:function(){return Bn(function(n){return e(e({},n),{isOpen:!1})})},onSubmit:function(n){$&&Dn.mutate({variantIds:[Z.variantId],status:"approve"===xn.mode?"approved":"rejected",feedback:n.feedback,is_deleted:n.deleteLearning,scopeId:$,appsecData:kn},{onSuccess:function(){var n;Bn(function(n){return e(e({},n),{isOpen:!1})}),null==Ge||Ge(),null===(n=In.current)||void 0===n||n.show({severity:"success",summary:"".concat("approve"===xn.mode?"Approved":"Rejected"," Successfully"),detail:"Learning ".concat("approve"===xn.mode?"approved":"rejected"," successfully.")})},onError:function(e){var n;console.error("An error occurred.",e),null===(n=In.current)||void 0===n||n.show({severity:"error",summary:"Action Failed",detail:"There was an error processing the learning. Please try again."})}})},variantInformation:"".concat(q," — ").concat(X),ruleTitle:q,pendingVariants:[Z],isPending:Dn.isPending})]}))};export{H as default};
|
|
1
|
+
import{__assign as e,__awaiter as n,__generator as t}from"tslib";import{jsxs as i,jsx as o,Fragment as r}from"react/jsx-runtime";import{useState as a,useRef as l,useEffect as s}from"react";import{parseISO as c,isValid as d,format as u}from"date-fns";import{MoreVertical as p,Pause as v,Play as m,Copy as h,Eye as f,Info as g,TriangleAlert as y}from"lucide-react";import{toggleVariant as b}from"../apis/scopeApis.js";import{HistorySkeleton as T}from"./HistorySkeleton.js";import A from"./InheritanceBreadcrumb.js";import N from"./RuleConditionBlock.js";import C from"../styles/VariantCard.module.css.js";import w from"../styles/CustomTooltip.module.css.js";import j from"../components/CustomTooltip.js";import I from"../components/ConfirmationModal.js";import x from"./OverrideTimeline.js";import D from"../store/useAuthStore.js";import{usePermissionsStore as L}from"../store/usePermissionsStore.js";import B from"./PendingApprovalChip.js";import O from"./ApprovalActionButton.js";import S from"./ApprovalLearningDialog.js";import{useApproveOrRejectVariantsMutation as k}from"../queries/useApprovalQueries.js";import F from"../store/useEnvStore.js";import{dt as E}from"../store/useLMSConfigStore.js";import{VARIANT_DT_PATH as H}from"../constants.js";var _=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return e.filter(Boolean).join(" ")},M=function(M){var P,R,V,W,z,U,G,q,Z,K=M.ruleTitle,Q=M.variant,Y=M.variantIndex,$=M.totalVariants,J=M.ruleId;M.pendingApprovalCount;var X=M.ruleSetId,ee=M.tierName,ne=M.displayLabel,te=M.onEdit,ie=M.onDelete,oe=M.onFetchOverrideHistory,re=M.editButtonLabel,ae=void 0===re?E("".concat(H,".actions.edit"),"Edit"):re,le=M.deleteButtonLabel,se=void 0===le?E("".concat(H,".actions.delete"),"Delete"):le,ce=M.whenToApplyLabel,de=void 0===ce?E("".concat(H,".whenToApply"),"When to Apply"):ce,ue=M.whenNotToApplyLabel,pe=void 0===ue?E("".concat(H,".whenNotToApply"),"When Not to Apply"):ue,ve=M.noConditionsText,me=void 0===ve?"No conditions":ve,he=M.viewOverrideLabel,fe=void 0===he?"View Override History":he,ge=M.hideOverrideLabel,ye=void 0===ge?"Hide Override History":ge,be=M.enableLearningVariantLabel,Te=void 0===be?E("".concat(H,".actions.enable"),"Enable"):be,Ae=M.disableLearningVariantLabel,Ne=void 0===Ae?E("".concat(H,".actions.disable"),"Disable"):Ae,Ce=M.historyErrorMessage,we=void 0===Ce?"Failed to load override history.":Ce,je=M.resolveGapsLabel,Ie=void 0===je?"This learning has some gaps":je,xe=M.showActionsBar,De=void 0===xe||xe,Le=M.showDescriptionBox,Be=void 0===Le||Le,Oe=M.showConditions,Se=void 0===Oe||Oe,ke=M.showInheritance,Fe=void 0===ke||ke,Ee=M.defaultApplyOpen,He=void 0===Ee||Ee,_e=M.defaultNotApplyOpen,Me=void 0===_e||_e,Pe=M.className,Re=M.isHighlighted,Ve=void 0!==Re&&Re,We=M.highlightAction,ze=M.highlightedTierNames,Ue=M.highlightedVariantIds,Ge=M.headerContent,qe=M.footerContent,Ze=M.onToggleSuccess,Ke=M.setDeleteConfirmationUsedFor,Qe=M.onCopyToTier,Ye=M.onSetInitialDraftMessage,$e=D.getState().user,Je=a(He),Xe=Je[0],en=Je[1],nn=a(Me),tn=nn[0],on=nn[1],rn=a(!1),an=rn[0],ln=rn[1],sn=a(!1),cn=sn[0],dn=sn[1],un=a(null),pn=un[0],vn=un[1],mn=a(null),hn=mn[0],fn=mn[1],gn=a(!1),yn=gn[0],bn=gn[1],Tn=a(!1),An=Tn[0],Nn=Tn[1],Cn=l(null),wn=!1!==Q.is_enabled,jn=a(!1),In=jn[0],xn=jn[1],Dn=l(null),Ln=a({isOpen:!1,mode:"approve"}),Bn=Ln[0],On=Ln[1],Sn=k(),kn=F(function(e){return e.rbacConfig}),Fn=kn?{application:kn.applicationId,scopeLevelModuleId:null!==(P=null==kn?void 0:kn.moduleId)&&void 0!==P?P:"",applicationLevelModuleId:null!==(R=null==kn?void 0:kn.applicationModuleId)&&void 0!==R?R:"",applicationLevelResourceId:null!==(V=null==kn?void 0:kn.applicationResourceId)&&void 0!==V?V:""}:void 0,En=L(function(e){return e.hasPermission}),Hn=X,_n=Q.inheritance&&Q.inheritance.length>1,Mn=En("ilotj.rule.variant.edit",Hn)||En(_n?"ilotj.rule.variant.inherited.edit":"ilotj.rule.variant.nonInherited.edit",Hn),Pn=En("ilotj.rule.variant.enable",Hn)||En(_n?"ilotj.rule.variant.inherited.enable":"ilotj.rule.variant.nonInherited.enable",Hn),Rn=En("ilotj.rule.variant.disable",Hn)||En(_n?"ilotj.rule.variant.inherited.disable":"ilotj.rule.variant.nonInherited.disable",Hn),Vn=En("ilotj.rule.variant.delete",Hn),Wn=En("ilotj.rule.selfApprove",Hn),zn=En("ilotj.rule.approve",Hn),Un=En("ilotj.scope.approve",Hn),Gn=En("ilotj.rule.pendingApproval.view",Hn),qn=En("ilotj.rule.variant.pendingApproval.edit",Hn),Zn=Wn||zn||Un||qn,Kn=Gn||Zn,Qn="pending_approval"===(null==Q?void 0:Q.approvalStatus),Yn="rejected"===(null==Q?void 0:Q.approvalStatus),$n=Zn&&Qn;s(function(){var e=function(e){Cn.current&&!Cn.current.contains(e.target)&&bn(!1)};return document.addEventListener("mousedown",e),function(){return document.removeEventListener("mousedown",e)}},[]);var Jn=(null===(W=null==pn?void 0:pn.wta)||void 0===W?void 0:W.changeLog)||[],Xn=(null===(z=null==pn?void 0:pn.wnta)||void 0===z?void 0:z.changeLog)||[],et=Ve&&ze&&ee?ze.filter(function(e){return e!==ee}):[],nt=et.length>0&&ee?et.every(function(e){return e>ee})?"↓":"↑":"↓",tt=function(){if(Ue)for(var e=Array.from(Ue),n=0;n<e.length;n++)if(e[n]!==Q.variantId){var t=document.querySelector('[data-variant-id="'.concat(e[n],'"]'));if(t){t.scrollIntoView({behavior:"smooth",block:"center"});break}}},it=function(e,n){e.stopPropagation(),On({isOpen:!0,mode:n})},ot=function(e){if(!e)return"";try{var n=e.endsWith("Z")||/[+-]\d{2}:\d{2}$/.test(e)?e:"".concat(e,"Z"),t=c(n);return d(t)?u(t,"MMM d, yyyy 'at' h:mm a"):e}catch(n){return e}},rt=function(e){return e?e.includes("@")?e.split("@")[0].split(".").map(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}).join(" "):e:""};return i("div",e({className:_(C.variantCard,Ve&&C.variantHighlight,Pe),"data-variant-id":Q.variantId},{children:[i("div",e({className:C.variantHeader,style:{alignItems:"flex-start",gap:"0.75rem"}},{children:[i("div",e({className:C.variantLabelSection,style:{display:"flex",flexWrap:"wrap"}},{children:[o("span",e({className:C.variantLabel},{children:"Default"===Q.variantType&&"Default"!==ne?"Default | ".concat(ne):ne})),Ve&&We&&o("span",e({className:_(C.actionChip,"new"===We?C.actionChipNew:C.actionChipUpdated)},{children:"new"===We?"Created":"Updated"})),(null==Q?void 0:Q.isOverridden)&&o(j,e({content:"Inherited from the ".concat((null===(U=Q.inheritance)||void 0===U?void 0:U[(null===(G=Q.inheritance)||void 0===G?void 0:G.length)-2])||"parent"," scope and overridden in this scope."),placement:"top",withArrow:!0,contentClassName:w.customTooltip,sideOffset:5},{children:o("span",e({className:C.overriddenTag},{children:"Overridden"}))})),Kn&&Qn&&o(B,{}),Yn&&o("span",e({style:{backgroundColor:"#FEF2F2",color:"#EF4444",border:"1px solid #FECACA",padding:"2px 8px",borderRadius:"9999px",fontSize:"0.75rem",fontWeight:500,display:"inline-flex",alignItems:"center"}},{children:"Rejected"})),!wn&&o("span",e({className:C.learningDisabledPill},{children:"Disabled"})),Fe&&1!==$&&0!==Y&&o("div",e({className:C.inheritanceSection},{children:o(A,{inheritance:Q.inheritance||[]})}))]})),De&&i("div",e({className:C.variantActions},{children:[$n&&i(r,{children:[o(O,{variant:"approve",text:"Approve",onClick:function(e){return it(e,"approve")}}),o(O,{variant:"reject",text:"Reject",onClick:function(e){return it(e,"reject")}})]}),te&&Mn&&o("button",e({className:C.editButton,onClick:function(){null==te||te(Q,J,ee,"edit")}},{children:ae})),ie&&Vn&&"Default"!==Q.variantType&&o("button",e({className:C.deleteButton,onClick:function(){null==Ke||Ke("variantDeletion"),null==ie||ie(Q.variantId,J)}},{children:se})),i("div",e({className:C.menuWrapper,ref:Cn},{children:[o("button",e({onClick:function(){return bn(!yn)},className:"".concat(C.menuTrigger," ").concat(yn?C.menuTriggerActive:"")},{children:o(p,{size:16})})),yn&&i("div",e({className:C.menuDropdown},{children:[(wn&&Rn||!wn&&Pn)&&i("button",e({onClick:function(){return n(void 0,void 0,void 0,function(){return t(this,function(e){return bn(!1),xn(!0),[2]})})},disabled:An,className:"".concat(C.menuItem," ").concat(An?C.menuItemDisabled:"")},{children:[o(wn?v:m,{size:14}),wn?Ne:Te]})),ee&&i("button",e({onClick:function(){var e="Tier 1"===ee?"Tier 2":"Tier 1",n="Add a new learning in ".concat(e," with the following details:\nLearning Title: ").concat(K,"\nLearning Description: ").concat(Q.description,"\nWhen to apply: ").concat(Q.whenToApply,"\nWhen not to apply: ").concat(Q.whenNotToApply);null==Ye||Ye(n),bn(!1),null==Qe||Qe(Q,J,K||"",ee,e)},className:C.menuItem},{children:[o(h,{size:14}),"Copy to ","Tier 1"===ee?"Tier 2":"Tier 1"]})),oe&&(null!==(Z=null===(q=Q.inheritance)||void 0===q?void 0:q.length)&&void 0!==Z?Z:0)>1&&i("button",e({onClick:function(){bn(!1),n(void 0,void 0,void 0,function(){var e;return t(this,function(n){switch(n.label){case 0:if(an)return ln(!1),[2];if(ln(!0),!oe)return[2];dn(!0),fn(null),n.label=1;case 1:return n.trys.push([1,3,4,5]),[4,oe(J,Q.variantId)];case 2:return e=n.sent(),vn(e),[3,5];case 3:return n.sent(),fn(we),[3,5];case 4:return dn(!1),[7];case 5:return[2]}})})},className:C.menuItem},{children:[o(f,{size:14}),an?ye:fe]}))]}))]}))]}))]})),Ge,Be&&Q.description&&i("div",e({className:C.descriptionBox},{children:[o("p",e({className:C.descriptionText},{children:Q.description})),an&&(cn?o(T,{}):hn?o("p",e({className:C.errorText},{children:hn})):(null==pn?void 0:pn.ruleDescription)?o(x,{changeLog:pn.ruleDescription.changeLog}):o("p",e({className:C.noHistoryText},{children:"No override history found"})))]})),Se&&i("div",e({className:C.conditionsContainer},{children:[o(N,{type:"apply",conditions:Q.whenToApply||"",isOpen:Xe,onToggle:function(){return en(!Xe)},labelText:de,noConditionsText:me,showOverrideHistory:an,isLoadingHistory:cn,historyError:hn,overrideHistoryData:Jn}),o(N,{type:"notApply",conditions:Q.whenNotToApply||"",isOpen:tn,onToggle:function(){return on(!tn)},labelText:pe,noConditionsText:me,showOverrideHistory:an,isLoadingHistory:cn,historyError:hn,overrideHistoryData:Xn})]})),Ve&&et.length>0&&i("div",e({className:C.crossTierBanner},{children:[o(g,{className:C.crossTierBannerIcon}),i("span",e({className:C.crossTierBannerText},{children:["Also created in ",et.join(", "),"."]})),i("span",e({className:C.crossTierBannerLink,onClick:tt,role:"button",tabIndex:0,onKeyDown:function(e){return"Enter"===e.key&&tt()}},{children:["Scroll to view ",nt]}))]})),qe,(Q.createdBy||Q.createdAt)&&i("div",e({className:C.variantFooter},{children:[!0===Q.is_user_accepted_risk&&i("div",e({className:C.resolveGaps},{children:[o(y,{size:14,color:"#EF4444"}),o("span",e({className:C.resolveGapsText},{children:Ie})),Mn&&o("button",e({onClick:function(){null==te||te(Q,J,ee,"resolve_gaps")},className:C.resolveButton},{children:"Resolve"}))]})),o("div",e({className:C.variantFooterContent},{children:Q.updatedBy||Q.updatedAt?i(r,{children:[Q.updatedBy&&o(j,e({content:Q.createdBy?"Created by ".concat(rt(Q.createdBy)):"",contentClassName:w.customTooltip,sideOffset:5,placement:"top"},{children:i("span",e({className:C.variantFooterItem},{children:["Updated by ",rt(Q.updatedBy)]}))})),Q.updatedBy&&Q.updatedAt&&o("span",e({className:C.variantFooterSeparator},{children:"•"})),Q.updatedAt&&o(j,e({content:Q.createdAt?"Created at ".concat(ot(Q.createdAt)):"",contentClassName:w.customTooltip,sideOffset:5,placement:"top"},{children:o("span",e({className:C.variantFooterItem},{children:ot(Q.updatedAt)}))}))]}):i(r,{children:[Q.createdBy&&i("span",e({className:C.variantFooterItem},{children:["Created by ",rt(Q.createdBy)]})),Q.createdBy&&Q.createdAt&&o("span",e({className:C.variantFooterSeparator},{children:"•"})),Q.createdAt&&o("span",e({className:C.variantFooterItem},{children:ot(Q.createdAt)}))]})}))]})),o(I,{isOpen:In,title:wn?E("".concat(H,".disableDialog.title"),"Disable Learning?"):E("".concat(H,".enableDialog.title"),"Enable Learning?"),description:wn?E("".concat(H,".disableDialog.desc"),"Are you sure you want to disable learning for this variant in {rule_title}?",{rule_title:null!=K?K:""}):E("".concat(H,".enableDialog.desc"),"Are you sure you want to enable learning for this variant in {rule_title}?",{rule_title:null!=K?K:""}),warning:wn?E("".concat(H,".disableDialog.warningText"),"This learning will no longer influence upcoming schedules. You can enable it again anytime."):E("".concat(H,".enableDialog.warningText"),"This learning will start influencing upcoming schedules again."),confirmText:wn?E("".concat(H,".disableDialog.deleteText"),"Disable"):E("".concat(H,".enableDialog.deleteText"),"Enable"),cancelText:E("".concat(H,wn?".disableDialog.cancelText":".enableDialog.cancelText"),"Cancel"),loadingText:E("".concat(H,wn?".disableDialog.loadingText":".enableDialog.loadingText"),"Processing..."),confirmBgColor:wn?"#DC2626":"#16A34A",onConfirm:function(){return n(void 0,void 0,void 0,function(){var e;return t(this,function(n){switch(n.label){case 0:Nn(!0),n.label=1;case 1:return n.trys.push([1,3,4,5]),null==$e?void 0:$e.email,[4,b([Q.variantId],!wn)];case 2:return n.sent(),null==Ze||Ze(),[3,5];case 3:return e=n.sent(),console.error("Failed to toggle variant",e),[3,5];case 4:return Nn(!1),bn(!1),xn(!1),[7];case 5:return[2]}})})},onCancel:function(){return xn(!1)},isLoading:An,position:"fixed"}),o(S,{open:Bn.isOpen,mode:Bn.mode,onClose:function(){return On(function(n){return e(e({},n),{isOpen:!1})})},onSubmit:function(n){X&&Sn.mutate({variantIds:[Q.variantId],status:"approve"===Bn.mode?"approved":"rejected",feedback:n.feedback,is_deleted:n.deleteLearning,scopeId:X,appsecData:Fn},{onSuccess:function(){var n;On(function(n){return e(e({},n),{isOpen:!1})}),null==Ze||Ze(),null===(n=Dn.current)||void 0===n||n.show({severity:"success",summary:"".concat("approve"===Bn.mode?"Approved":"Rejected"," Successfully"),detail:"Learning ".concat("approve"===Bn.mode?"approved":"rejected"," successfully.")})},onError:function(e){var n;console.error("An error occurred.",e),null===(n=Dn.current)||void 0===n||n.show({severity:"error",summary:"Action Failed",detail:"There was an error processing the learning. Please try again."})}})},variantInformation:"".concat(K," — ").concat(ne),ruleTitle:K,pendingVariants:[Q],isPending:Sn.isPending})]}))};export{M as default};
|
|
2
2
|
//# sourceMappingURL=VariantCard.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e}from"tslib";import{jsxs as o,Fragment as t,jsx as
|
|
1
|
+
import{__assign as e}from"tslib";import{jsxs as o,Fragment as t,jsx as a}from"react/jsx-runtime";import{useState as n}from"react";import{Plus as r}from"lucide-react";import c from"./styles/Sidebar.module.css.js";import i from"./components/SidebarSearch.js";import{TreeSidebar as s}from"./components/ScopeTree/TreeSidebar.js";import{dt as d}from"./store/useLMSConfigStore.js";import{MIDDLE_DRAWER_DT_PATH as l}from"./constants.js";import{useLearningTemplateStore as m}from"./store/useLearningTemplateStore.js";var p=function(p){var S=p.scopeTreeData,h=p.selectedRuleSetId,C=p.onAddChild,f=p.onRenameChild,u=p.onDeleteChild,v=p.canDeleteScope,b=p.canEditScope,g=p.canCreateScope,j=p.onSectionSelect,T=p.activeSectionId,y=p.onOnboardStation,D=p.sectionsConfig,N=p.nodeTypesConfig,I=p.searchPlaceholder,R=void 0===I?d("".concat(l,".treeMenu.search"),"Search for Scopes.."):I,k=n(""),x=k[0],A=k[1],B=n(0),E=B[0],L=B[1],M=m.getState().backwardCompatibility;return o("div",e({className:c.sidebar},{children:[o(t,{children:[a(i,{value:x,onChange:A,placeholder:R,searchCount:E}),a("div",{className:c.divider}),a("div",e({className:c.content},{children:S&&a(s,{data:S.data,onAddChild:C,onRenameChild:f,onDeleteChild:u,canDeleteScope:v,canEditScope:b,canCreateScope:g,onSectionSelect:j,selectedRuleSetId:h,activeSectionId:T,searchQuery:x,onSearchCountChange:L,sectionsConfig:D,nodeTypesConfig:N})}))]}),y&&M&&a("div",e({className:c.createButtonContainer},{children:o("button",e({className:c.createButton,onClick:y},{children:[a(r,{size:16}),"Onboard a station"]}))}))]}))};export{p as default};
|
|
2
2
|
//# sourceMappingURL=Sidebar.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e={publishFeedback:"/instant_learning/ilotj/variants",submitChatFeedback:"/instant_learning/feedback/teachme_otj",saveInstantLearningQuestion:"/instant_learning/getLearningQuestionId",fetchScopes:"/instant_learning/ilotj/scope",renameScope:"/instant_learning/scope",getRulesInRuleSetById:"/instant_learning/ilotj/rules/scope",createRuleSet:"/instant_learning/ilotj/scope",fetchStationsByKeyword:"/backend/traffic-manager/station/search/{keyword}",saveRuleSet:"/backend/traffic-manager/station/ruleset",getRuleOverrideHistory:"/instant_learning/learnings/inheritance/change_log",deleteRuleSet:"/instant_learning/ilotj/scope/{ruleSetId}",deleteRule:"/instant_learning/ilotj/variant/{ruleId}/{appIntegrationId}",deleteQuestion:"/instant_learning/ilotj/question/{questionId}/{appIntegrationId}",deleteTier:"/instant_learning/ilotj/scope/{scopeId}/tier/{tierId}/{appIntegrationId}",updateVariant:"/instant_learning/v2/update/rule",inheritScope:"/instant_learning/ilotj/inherit-scope",updateStation:"/backend/traffic-manager/station/update",exportRuleSet:"/instant_learning/export-ruleset",toggleVariant:"/instant_learning/ilotj/toggle_variant",alterRulePriority:"/instant_learning/v2/alterPriority",fetchRulesByQuestionId:"/instant_learning/ilotj/rules/fetch_by_rule_id/{questionId}/{scopeId}/{appIntegrationId}?include_config=False",retrieveGenreScopes:"/instant_learning/learnings/retrieve_genre_scopes",searchScopes:"/instant_learning/learnings/search_scopes",sessionValidation:"/instant_learning/session-validation",getTiers:"/instant_learning/ilotj/tier/{appIntegrationId}",requestAccess:"/instant_learning/ilotj/request-access"},n={fetchScopes:"/instant_learning/learning/fetch_by_scope/v2?custom_scope_group_name=Audacy-Traffic-Manager",createRuleSet:"/instant_learning/create-scope",deleteRuleSet:"/instant_learning/scope/{ruleSetId}/delete",getRulesInRuleSetById:"/instant_learning/learnings/rules/fetch_by_scope",publishFeedback:"/instant_learning/save",inheritScope:"/instant_learning/learnings/rules/inherit-scope",toggleVariant:"/instant_learning/toggle_variant",getTiers:"/instant_learning/retrieve_tiers",requestAccess:"/instant_learning/request-access",deleteQuestion:"/instant_learning/question/{questionId}",deleteRule:"/instant_learning/learning/{ruleId}/delete",deleteTier:"instant_learning/scopes/{scopeId}/tiers/{tierId}",fetchRulesByQuestionId:"/instant_learning/learnings/rules/fetch_by_rule_id/{questionId}/{scopeId}?include_config=True"};export{e as API_ENDPOINTS,n as LEGACY_API_ENDPOINTS};
|
|
1
|
+
var e={publishFeedback:"/instant_learning/ilotj/variants",submitChatFeedback:"/instant_learning/feedback/teachme_otj",saveInstantLearningQuestion:"/instant_learning/getLearningQuestionId",fetchScopes:"/instant_learning/ilotj/scope",renameScope:"/instant_learning/scope",getRulesInRuleSetById:"/instant_learning/ilotj/rules/scope",createRuleSet:"/instant_learning/ilotj/scope",fetchStationsByKeyword:"/backend/traffic-manager/station/search/{keyword}",saveRuleSet:"/backend/traffic-manager/station/ruleset",getRuleOverrideHistory:"/instant_learning/learnings/inheritance/change_log",deleteRuleSet:"/instant_learning/ilotj/scope/{ruleSetId}/{appIntegrationId}",deleteRule:"/instant_learning/ilotj/variant/{ruleId}/{appIntegrationId}",deleteQuestion:"/instant_learning/ilotj/question/{questionId}/{appIntegrationId}",deleteTier:"/instant_learning/ilotj/scope/{scopeId}/tier/{tierId}/{appIntegrationId}",updateVariant:"/instant_learning/v2/update/rule",inheritScope:"/instant_learning/ilotj/inherit-scope",updateStation:"/backend/traffic-manager/station/update",exportRuleSet:"/instant_learning/export-ruleset",toggleVariant:"/instant_learning/ilotj/toggle_variant",alterRulePriority:"/instant_learning/v2/alterPriority",fetchRulesByQuestionId:"/instant_learning/ilotj/rules/fetch_by_rule_id/{questionId}/{scopeId}/{appIntegrationId}?include_config=False",retrieveGenreScopes:"/instant_learning/learnings/retrieve_genre_scopes",searchScopes:"/instant_learning/learnings/search_scopes",sessionValidation:"/instant_learning/session-validation",getTiers:"/instant_learning/ilotj/tier/{appIntegrationId}",requestAccess:"/instant_learning/ilotj/request-access"},n={fetchScopes:"/instant_learning/learning/fetch_by_scope/v2?custom_scope_group_name=Audacy-Traffic-Manager",createRuleSet:"/instant_learning/create-scope",deleteRuleSet:"/instant_learning/scope/{ruleSetId}/delete",getRulesInRuleSetById:"/instant_learning/learnings/rules/fetch_by_scope",publishFeedback:"/instant_learning/save",inheritScope:"/instant_learning/learnings/rules/inherit-scope",toggleVariant:"/instant_learning/toggle_variant",getTiers:"/instant_learning/retrieve_tiers",requestAccess:"/instant_learning/request-access",deleteQuestion:"/instant_learning/question/{questionId}",deleteRule:"/instant_learning/learning/{ruleId}/delete",deleteTier:"instant_learning/scopes/{scopeId}/tiers/{tierId}",fetchRulesByQuestionId:"/instant_learning/learnings/rules/fetch_by_rule_id/{questionId}/{scopeId}?include_config=True"};export{e as API_ENDPOINTS,n as LEGACY_API_ENDPOINTS};
|
|
2
2
|
//# sourceMappingURL=apiConfig.js.map
|