@clickview/lite 0.75.0-rc.9 → 0.75.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundles.json +1 -1
- package/dist/css/{7103-lite-fef3024f61.chunk.css → 2878-lite-d8e0bf912a.chunk.css} +1 -1
- package/dist/css/{1243-lite-13eda8f6a0.chunk.css → 3615-lite-240342ff8e.chunk.css} +1 -1
- package/dist/css/{1867-lite-8baa8af02b.chunk.css → 4630-lite-0157b1c437.chunk.css} +1 -1
- package/dist/css/{4203-lite-9ffab89741.chunk.css → 8362-lite-10810fdef2.chunk.css} +1 -1
- package/dist/languages/en.json +1 -1
- package/dist/scripts/{104-7ee25cbbb8-lite.chunk.js → 104-da7394bcfa-lite.chunk.js} +2 -2
- package/dist/scripts/104-da7394bcfa-lite.chunk.js.map +1 -0
- package/dist/scripts/1192-bb27568f21-lite.chunk.js +2 -0
- package/dist/scripts/1192-bb27568f21-lite.chunk.js.map +1 -0
- package/dist/scripts/1199-cf2cb206b5-lite.chunk.js +2 -0
- package/dist/scripts/1199-cf2cb206b5-lite.chunk.js.map +1 -0
- package/dist/scripts/1502-9836df10cd-lite.chunk.js +2 -0
- package/dist/scripts/1502-9836df10cd-lite.chunk.js.map +1 -0
- package/dist/scripts/{1610-9ccecc428a-lite.chunk.js → 1610-0edaa98d40-lite.chunk.js} +2 -2
- package/dist/scripts/{1610-9ccecc428a-lite.chunk.js.map → 1610-0edaa98d40-lite.chunk.js.map} +1 -1
- package/dist/scripts/{7103-3b181ec69b-lite.chunk.js → 2878-487c4a8e1a-lite.chunk.js} +2 -2
- package/dist/scripts/2878-487c4a8e1a-lite.chunk.js.map +1 -0
- package/dist/scripts/{3057-1ae8087b3a-lite.chunk.js → 3057-a5bc753736-lite.chunk.js} +1 -1
- package/dist/scripts/{3057-1ae8087b3a-lite.chunk.js.map → 3057-a5bc753736-lite.chunk.js.map} +1 -1
- package/dist/scripts/3268-7be966dc82-lite.chunk.js +3 -0
- package/dist/scripts/3268-7be966dc82-lite.chunk.js.map +1 -0
- package/dist/scripts/{1243-72f3d31787-lite.chunk.js → 3615-a0da361aa5-lite.chunk.js} +2 -2
- package/dist/scripts/3615-a0da361aa5-lite.chunk.js.map +1 -0
- package/dist/scripts/{3872-6fe7371d39-lite.chunk.js → 3872-cf9a6bdae8-lite.chunk.js} +1 -1
- package/dist/scripts/{3872-6fe7371d39-lite.chunk.js.map → 3872-cf9a6bdae8-lite.chunk.js.map} +1 -1
- package/dist/scripts/4125-6d34b8b8f2-lite.chunk.js +2 -0
- package/dist/scripts/4125-6d34b8b8f2-lite.chunk.js.map +1 -0
- package/dist/scripts/4598-e25e9e03d6-lite.chunk.js +2 -0
- package/dist/scripts/4598-e25e9e03d6-lite.chunk.js.map +1 -0
- package/dist/scripts/{1867-0823a787c3-lite.chunk.js → 4630-4a35ecbf2b-lite.chunk.js} +2 -2
- package/dist/scripts/4630-4a35ecbf2b-lite.chunk.js.map +1 -0
- package/dist/scripts/6475-f019242ec2-lite.chunk.js +2 -0
- package/dist/scripts/6475-f019242ec2-lite.chunk.js.map +1 -0
- package/dist/scripts/{6695-4e01b4a18c-lite.chunk.js → 6695-4ae0acad94-lite.chunk.js} +1 -1
- package/dist/scripts/{6695-4e01b4a18c-lite.chunk.js.map → 6695-4ae0acad94-lite.chunk.js.map} +1 -1
- package/dist/scripts/6756-3c7f911759-lite.chunk.js +3 -0
- package/dist/scripts/6756-3c7f911759-lite.chunk.js.map +1 -0
- package/dist/scripts/6790-1695fcf576-lite.chunk.js +2 -0
- package/dist/scripts/6790-1695fcf576-lite.chunk.js.map +1 -0
- package/dist/scripts/7438-35b887a48e-lite.chunk.js +2 -0
- package/dist/scripts/7438-35b887a48e-lite.chunk.js.map +1 -0
- package/dist/scripts/{8323-d6d1d07ce5-lite.chunk.js → 8323-5694456903-lite.chunk.js} +2 -2
- package/dist/scripts/{8323-d6d1d07ce5-lite.chunk.js.map → 8323-5694456903-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4203-83f90f92f3-lite.chunk.js → 8362-ed5df8f4fc-lite.chunk.js} +3 -3
- package/dist/scripts/8362-ed5df8f4fc-lite.chunk.js.LICENSE.txt +1 -0
- package/dist/scripts/{4203-83f90f92f3-lite.chunk.js.map → 8362-ed5df8f4fc-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8732-3e8332e620-lite.chunk.js → 8732-dc5182fb69-lite.chunk.js} +1 -1
- package/dist/scripts/{8732-3e8332e620-lite.chunk.js.map → 8732-dc5182fb69-lite.chunk.js.map} +1 -1
- package/dist/scripts/8856-08061bbec5-lite.chunk.js +2 -0
- package/dist/scripts/8856-08061bbec5-lite.chunk.js.map +1 -0
- package/dist/scripts/{8957-bc83ea1180-lite.chunk.js → 8957-b3f0dbb85d-lite.chunk.js} +1 -1
- package/dist/scripts/{8957-bc83ea1180-lite.chunk.js.map → 8957-b3f0dbb85d-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9042-544d97a05d-lite.chunk.js → 9042-7c30ffd4f0-lite.chunk.js} +2 -2
- package/dist/scripts/9042-7c30ffd4f0-lite.chunk.js.map +1 -0
- package/dist/scripts/9134-b0ae877597-lite.chunk.js +2 -0
- package/dist/scripts/9134-b0ae877597-lite.chunk.js.map +1 -0
- package/dist/scripts/{bundle-cf4c360278.min.js → bundle-941a464ef0.min.js} +3 -3
- package/dist/scripts/{bundle-cf4c360278.min.js.map → bundle-941a464ef0.min.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/104-7ee25cbbb8-lite.chunk.js.map +0 -1
- package/dist/scripts/1074-6dadbd8187-lite.chunk.js +0 -2
- package/dist/scripts/1074-6dadbd8187-lite.chunk.js.map +0 -1
- package/dist/scripts/1192-6ac54d734b-lite.chunk.js +0 -2
- package/dist/scripts/1192-6ac54d734b-lite.chunk.js.map +0 -1
- package/dist/scripts/1199-dc45a88be8-lite.chunk.js +0 -2
- package/dist/scripts/1199-dc45a88be8-lite.chunk.js.map +0 -1
- package/dist/scripts/1243-72f3d31787-lite.chunk.js.map +0 -1
- package/dist/scripts/1867-0823a787c3-lite.chunk.js.map +0 -1
- package/dist/scripts/3268-aa893d0068-lite.chunk.js +0 -2
- package/dist/scripts/3268-aa893d0068-lite.chunk.js.map +0 -1
- package/dist/scripts/4598-f5120153c2-lite.chunk.js +0 -2
- package/dist/scripts/4598-f5120153c2-lite.chunk.js.map +0 -1
- package/dist/scripts/6475-502e390010-lite.chunk.js +0 -2
- package/dist/scripts/6475-502e390010-lite.chunk.js.map +0 -1
- package/dist/scripts/6756-20c0ab9591-lite.chunk.js +0 -3
- package/dist/scripts/6756-20c0ab9591-lite.chunk.js.map +0 -1
- package/dist/scripts/6790-df00506bec-lite.chunk.js +0 -2
- package/dist/scripts/6790-df00506bec-lite.chunk.js.map +0 -1
- package/dist/scripts/7103-3b181ec69b-lite.chunk.js.map +0 -1
- package/dist/scripts/7438-1162aba8b6-lite.chunk.js +0 -2
- package/dist/scripts/7438-1162aba8b6-lite.chunk.js.map +0 -1
- package/dist/scripts/8856-361fe76b7a-lite.chunk.js +0 -2
- package/dist/scripts/8856-361fe76b7a-lite.chunk.js.map +0 -1
- package/dist/scripts/9003-36ab592cc5-lite.chunk.js +0 -2
- package/dist/scripts/9003-36ab592cc5-lite.chunk.js.map +0 -1
- package/dist/scripts/9042-544d97a05d-lite.chunk.js.map +0 -1
- package/dist/scripts/9134-7037c2c47a-lite.chunk.js +0 -2
- package/dist/scripts/9134-7037c2c47a-lite.chunk.js.map +0 -1
- /package/dist/scripts/{4203-83f90f92f3-lite.chunk.js.LICENSE.txt → 3268-7be966dc82-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6756-20c0ab9591-lite.chunk.js.LICENSE.txt → 6756-3c7f911759-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8323-d6d1d07ce5-lite.chunk.js.LICENSE.txt → 8323-5694456903-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-cf4c360278.min.js.LICENSE.txt → bundle-941a464ef0.min.js.LICENSE.txt} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[104],{33518:(e,t,a)=>{var n;a.d(t,{e:()=>n}),function(e){e.Public="Public",e.PinCode="PinCode",e.PasswordProtected="PasswordProtected",e.ProtectedOverrideRestriction="ProtectedOverrideRestriction",e.JustMySchoolOverrideRestriction="JustMySchoolOverrideRestriction",e.Protected="Protected",e.JustMySchool="JustMySchool",e.Direct="Direct"}(n||(n={}))},2510:(e,t,a)=>{var n;a.d(t,{y:()=>n}),function(e){e.Link="Link",e.Classroom="Classroom",e.Open="Open",e.Live="Live",e.LegacyDirect="LegacyDirect"}(n||(n={}))},18488:(e,t,a)=>{a.d(t,{o:()=>o});var n=a(99940),r=a(97395),i={namespace:"share-v2"},o={createShare:function(e){return{url:"{gateway}/v2/shares",key:"create:share-v2",type:n.k.POST,data:e,normalizeOptions:i,invalidationKeys:["sent:share-v2","get:share-v2:shares:object"]}},updateShare:function(e,t){return{url:"{gateway}/v2/shares/".concat(e),key:"update:share-v2",type:n.k.PUT,data:t,normalizeOptions:i,invalidationKeys:["share-v2:permanent-link:object","share-v2:".concat(e),"get:share-v2:shares:object"]}},deleteShare:function(e){return{type:n.k.DELETE,url:"{gateway}/v2/shares/".concat(e),key:"delete:share-v2",normalizeOptions:i,invalidationKeys:["share-v2:permanent-link:object","sent:share-v2","share-v2:".concat(e),"get:share-v2:shares:object"]}},getShare:function(e){return{url:"{gateway}/v2/shares/".concat(e),key:"share-v2:".concat(e),bootstrapName:"share-v2:".concat(e),type:n.k.GET,normalizeOptions:i}},getSentShares:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.values(e).sort().join(":");return{url:r._.urlBuilder("{gateway}/v2/shares/sent",e),key:"sent:share-v2:".concat(t),type:n.k.GET,normalize:!1}},getShareLink:function(e){return{url:r._.urlBuilder("{gateway}/v2/shares/permanent-link",{objectId:e}),key:"share-v2:permanent-link:object:".concat(e),normalizeOptions:i}},createShareLink:function(e){return{type:n.k.POST,url:r._.urlBuilder("{gateway}/v2/shares/permanent-link",Object.assign({},e)),key:"create:share-v2:permanent-link:object:".concat(e.objectId),invalidationKeys:["share-v2:permanent-link:object:".concat(e.objectId),"sent:share-v2","get:share-v2:shares:object:".concat(e.objectId)],normalizeOptions:i}},getPrivacy:function(e){return{url:"{gateway}/v1/objects/".concat(e,"/access"),key:"privacy:".concat(e),normalize:!1}},getSharesByObjectId:function(e){return{url:"{gateway}/v2/shares/objects/".concat(e),key:"get:share-v2:shares:object:".concat(e),type:n.k.GET,normalizeOptions:i}},createSharePincode:function(e){return{url:"{gateway}/v2/shares/".concat(e,"/pincode"),key:"create:share-v2:".concat(e,":pincode"),type:n.k.POST}},getPincodeByShareId:function(e){return{url:"{gateway}/v2/shares/".concat(e,"/pincode"),key:"get:share-v2:".concat(e,":pincode")}},getPincodeByCode:function(e){return{url:"{gateway}/v2/shares/pincode?code=".concat(e),key:"get:share-v2:pincode:".concat(e)}}}},21789:(e,t,a)=>{a.d(t,{x:()=>o});var n=a(75896),r=a(110),i=a(4594),o={getFlattenedRecipients:function(e){return n.m.flatten(e.map(function(e){var t;return null!==(t=e.recipients)&&void 0!==t?t:[]}))},getFlattenedUniqueScopes:function(e){var t=o.getFlattenedRecipients(e);return n.m.uniq(t.map(function(e){var t;return null===(t=e.scopeId)||void 0===t?void 0:t.toString()})).filter(function(e){return!!e})},getClassroomIdFromShare:function(e){var t,a=null===(t=e.recipients)||void 0===t?void 0:t[0];if(a)return a.scopeId?a.scopeId.toString():a.recipientId&&a.recipientTypeId===i.E.Classroom?a.recipientId.toString():void 0},getClassroomForShare:function(e,t){var a=o.getClassroomIdFromShare(e);if(a)return t.find(function(e){return e.id.toString()===a.toString()})},getRecipientsCount:function(e,t){var a,n,r,i;return t?null!==(i=null===(r=e.recipients)||void 0===r?void 0:r.filter(function(e){return e.recipientTypeId===t}).length)&&void 0!==i?i:0:null!==(n=null===(a=e.recipients)||void 0===a?void 0:a.length)&&void 0!==n?n:0},hasShareExpired:function(e){if(e.expireDate){var t=new Date,a=new Date(e.expireDate);if(r.O.isAfter(t,a))return!0}return!1},calculateDaysToExpiry:function(e){if(e.expireDate){var t=r.O.diffBetween(new Date(e.expireDate),new Date,"day")||1;return 0===t?1:t}},getShareLocalExpiry:function(e,t){if(!e.expireDate)return null;var a=r.O.convertUTCToLocal(e.expireDate);return r.O.format(a,t)}}},2267:(e,t,a)=>{a.d(t,{I:()=>i});var n=a(64249),r=a(40841),i={canEmbed:function(e){return["video","interactive","clip"].includes(e)},canAddPolicies:function(e){return["interactive"].includes(e)},getEnabledIntegrations:function(e,t){return r._.getShareIntegrations(e,t).filter(function(e){return e.enabled}).map(function(e){return e.id})},getShareSettingsInitialValues:function(e,t){var a,n,r,i,o,s;return{preventScrubbing:null!==(r=null!==(n=null===(a=null==e?void 0:e.options)||void 0===a?void 0:a.preventScrubbing)&&void 0!==n?n:null==t?void 0:t.preventScrubbing)&&void 0!==r&&r,immediateFeedback:null!==(s=null!==(o=null===(i=null==e?void 0:e.options)||void 0===i?void 0:i.immediateFeedback)&&void 0!==o?o:null==t?void 0:t.immediateFeedback)&&void 0!==s&&s}},getEnabledSettingsField:function(e){return{showImmediateFeedbackField:"interactive"===e,showPreventScrubbingField:"interactive"===e}},getFetchFunctionByType:function(e){return n.I.getFetchFunctionByType(e)},getAnalyticsEntity:function(e){return n.I.getAnalyticsEntity(e)},getAnalyticsOptions:function(e){return n.I.getAnalyticsOptions(e)}}},83351:(e,t,a)=>{a.d(t,{P:()=>c});var n=a(32735),r=a(23481),i=a(13876),o=a(36532),s=r.T.encloseNamespace("assign.flowControls");function c(e){var t=e.hideBackButton||!e.onClickBack,a=e.hideNextButton||!e.onClickNext,r=e.hideCreateClassroomButton||!e.onClickCreateClassroom;return t&&a&&r?n.createElement(n.Fragment,null):n.createElement(i.u,{className:"justify-content-between"},n.createElement("div",null,!!e.leftComponent&&e.leftComponent,!r&&n.createElement(i.u.Submit,{variant:"link",onClick:e.onClickCreateClassroom,text:s("createClassroom"),className:"text-info p-0"})),n.createElement("div",{className:"d-flex"},!t&&n.createElement(i.u.Cancel,{variant:"link",onClick:e.onClickBack,text:e.backButtonText||s("back")}),!a&&n.createElement(o.u,{title:e.nextButtonTooltip,disable:!e.nextButtonTooltip,placement:"top",spanHack:!0},n.createElement(i.u.Submit,{variant:"dark",onClick:e.onClickNext,text:e.nextButtonText||s("next"),disabled:e.disableNextButton,showSpinner:e.showSpinner}))))}},95890:(e,t,a)=>{a.d(t,{_:()=>u});var n=a(20354),r=a(2267),i=a(4594),o=a(16714),s=a(39151),c=a(20768),l=a(31949),p=a(22902),d=a(45778);function u(e){var t,a=n.a.useBasicFetch(l.N.currentUser()),u=r.I.getFetchFunctionByType(e.entityType)(e.objectId,null===(t=a.data)||void 0===t?void 0:t.id),S=n.a.useBasicFetch(s.L.config()),v=n.a.useBasicFetch(d.G.isType(u.data,i.E.Interactive)&&u.data.interactiveId&&c.b.interactive(u.data.interactiveId)),y=(0,p.T)(),I=y.hasPermissions,h=y.isLoaded,m=I(o.C.StudentExperience),g=I(o.C.CreateClassrooms);return{loaded:!!(a.data&&u.data&&S.data&&h),currentUser:a,entity:u,interactive:v,config:S,hasStudentExp:m,canCreateClassrooms:g}}},86099:(e,t,a)=>{a.d(t,{BR:()=>E,Qh:()=>y,Rv:()=>h,Sj:()=>m,Zm:()=>O,pY:()=>I,rq:()=>g});var n=a(23481),r=a(28400),i=a(2510),o=a(21789),s=a(4594),c=a(31908),l=a(14070),p=a(97291),d=a(40254),u=a(82431),S=n.T.encloseNamespace("shared.utils"),v=[s.E.Video,s.E.Clip,s.E.Interactive];function y(e){return c.M.isInteractive(e)?{application:p.O.INTERACTIVES,action:l.e.Interactives.VIEW_INTERACTIVE,args:[e.id,r.m.slugify(e.name)]}:c.M.isClip(e)?{application:p.O.CLIPS,action:l.e.Clips.PLAY_CLIP,args:[e.id,r.m.slugify(e.name)]}:c.M.isVideo(e)?{application:p.O.VIDEOS,action:l.e.Videos.PLAY_VIDEO,args:[e.id,r.m.slugify(e.name)]}:e.typeId===s.E.Playlist?{application:p.O.PLAYLISTS,action:l.e.Playlists.PLAYLIST,args:[e.id,r.m.slugify(e.name)]}:e.typeId===s.E.Series?u.j.getSeriesAppLink(e):void 0}function I(e,t){if(!e)return null;if(!v.includes(e.objectTypeId))return y({id:e.objectId.toString(),typeId:e.objectTypeId});if(e.type===i.y.Classroom){var a=o.x.getClassroomIdFromShare(e);return{application:p.O.CLASSROOMS,action:l.e.Classrooms.INSIGHTS_OVERVIEW,args:[a,e.shareId],params:t}}return e.type===i.y.Open?{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOM_INSIGHTS_OVERVIEW,args:[e.shareId],params:t}:{application:p.O.MY_SHARES,action:l.e.MyShares.INSIGHTS_OVERVIEW,args:[e.shareId],params:t}}function h(e,t){if(!e)return null;if(!v.includes(e.objectTypeId))return y({id:e.objectId.toString(),typeId:e.objectTypeId});if(e.type===i.y.Classroom){var a=o.x.getClassroomIdFromShare(e);return{application:p.O.CLASSROOMS,action:l.e.Classrooms.INSIGHTS_HEATMAP,args:[a,e.shareId],params:t}}return e.type===i.y.Open?{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOM_INSIGHTS_HEATMAP,args:[e.shareId],params:t}:{application:p.O.MY_SHARES,action:l.e.MyShares.INSIGHTS_HEATMAP,args:[e.shareId],params:t}}function m(e,t){if(!e)return null;if(!v.includes(e.objectTypeId))return y({id:e.objectId.toString(),typeId:e.objectTypeId});if(e.type===i.y.Classroom){var a=o.x.getClassroomIdFromShare(e);return{application:p.O.CLASSROOMS,action:l.e.Classrooms.INSIGHTS_QUESTIONS,args:[a,e.shareId],params:t}}return e.type===i.y.Open?{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOM_INSIGHTS_QUESTIONS,args:[e.shareId],params:t}:{application:p.O.MY_SHARES,action:l.e.MyShares.INSIGHTS_QUESTIONS,args:[e.shareId],params:t}}function g(e,t){if(!e)return null;if(!v.includes(e.objectTypeId))return y({id:e.objectId.toString(),typeId:e.objectTypeId});if(e.type===i.y.Classroom){var a=o.x.getClassroomIdFromShare(e);return{application:p.O.CLASSROOMS,action:l.e.Classrooms.INSIGHTS_STUDENTS,args:[a,e.shareId],params:t}}return e.type===i.y.Open?{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOM_INSIGHTS_STUDENTS,args:[e.shareId],params:t}:{application:p.O.MY_SHARES,action:l.e.MyShares.INSIGHTS_STUDENTS,args:[e.shareId],params:t}}function O(e){if(e){var t=f(e);return e.type===i.y.Link?{application:p.O.SHARE,action:l.e.Share.SHARE,args:[e.objectId],params:{entityType:t}}:d.W.assignDetails({objectId:e.objectId.toString(),shareId:e.shareId,entityType:t,detailsTitle:S("shareOptions")})}}function E(e){if(e){var t=f(e);return e.type===i.y.Link?{application:p.O.SHARE,action:l.e.Share.DELETE_SHARE_LINK,args:[e.objectId],params:{entityType:t,previousAppLink:{application:p.O.MY_SHARES,action:l.e.MyShares.HOME}}}:e.type===i.y.LegacyDirect?{application:p.O.SHARE,action:l.e.Share.DELETE_LEGACY_SHARE,args:[e.shareId],params:{previousAppLink:{application:p.O.MY_SHARES,action:l.e.MyShares.HOME}}}:e.type===i.y.Classroom?{application:p.O.SHARE,action:l.e.Share.DELETE_ASSIGNMENT,args:[e.shareId],params:{previousAppLink:{application:p.O.CLASSROOMS,action:l.e.Classrooms.CLASSROOM_HOME,args:[o.x.getClassroomIdFromShare(e)]}}}:e.type===i.y.Open?{application:p.O.SHARE,action:l.e.Share.DELETE_OPEN_CLASSROOM,args:[e.shareId],params:{previousAppLink:{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOMS,args:[o.x.getClassroomIdFromShare(e)]}}}:void 0}}function f(e){return e.objectTypeId===s.E.Video?"video":e.objectTypeId===s.E.Interactive?"interactive":e.objectTypeId===s.E.Clip?"clip":e.objectTypeId===s.E.Series?"series":e.objectTypeId===s.E.Playlist?"playlist":void 0}}}]);
|
|
2
|
-
//# sourceMappingURL=104-
|
|
1
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[104],{33518:(e,t,a)=>{var n;a.d(t,{e:()=>n}),function(e){e.Public="Public",e.PinCode="PinCode",e.PasswordProtected="PasswordProtected",e.ProtectedOverrideRestriction="ProtectedOverrideRestriction",e.JustMySchoolOverrideRestriction="JustMySchoolOverrideRestriction",e.Protected="Protected",e.JustMySchool="JustMySchool",e.Direct="Direct"}(n||(n={}))},2510:(e,t,a)=>{var n;a.d(t,{y:()=>n}),function(e){e.Link="Link",e.Classroom="Classroom",e.Open="Open",e.Live="Live",e.LegacyDirect="LegacyDirect"}(n||(n={}))},18488:(e,t,a)=>{a.d(t,{o:()=>o});var n=a(99940),r=a(97395),i={namespace:"share-v2"},o={createShare:function(e){return{url:"{gateway}/v2/shares",key:"create:share-v2",type:n.k.POST,data:e,normalizeOptions:i,invalidationKeys:["sent:share-v2","get:share-v2:shares:object"]}},updateShare:function(e,t){return{url:"{gateway}/v2/shares/".concat(e),key:"update:share-v2",type:n.k.PUT,data:t,normalizeOptions:i,invalidationKeys:["share-v2:permanent-link:object","share-v2:".concat(e),"get:share-v2:shares:object"]}},deleteShare:function(e){return{type:n.k.DELETE,url:"{gateway}/v2/shares/".concat(e),key:"delete:share-v2",normalizeOptions:i,invalidationKeys:["share-v2:permanent-link:object","sent:share-v2","share-v2:".concat(e),"get:share-v2:shares:object"]}},getShare:function(e){return{url:"{gateway}/v2/shares/".concat(e),key:"share-v2:".concat(e),bootstrapName:"share-v2:".concat(e),type:n.k.GET,normalizeOptions:i}},getSentShares:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.values(e).sort().join(":");return{url:r._.urlBuilder("{gateway}/v2/shares/sent",e),key:"sent:share-v2:".concat(t),type:n.k.GET,normalize:!1}},getShareLink:function(e){return{url:r._.urlBuilder("{gateway}/v2/shares/permanent-link",{objectId:e}),key:"share-v2:permanent-link:object:".concat(e),normalizeOptions:i}},createShareLink:function(e){return{type:n.k.POST,url:r._.urlBuilder("{gateway}/v2/shares/permanent-link",Object.assign({},e)),key:"create:share-v2:permanent-link:object:".concat(e.objectId),invalidationKeys:["share-v2:permanent-link:object:".concat(e.objectId),"sent:share-v2","get:share-v2:shares:object:".concat(e.objectId)],normalizeOptions:i}},getPrivacy:function(e){return{url:"{gateway}/v1/objects/".concat(e,"/access"),key:"privacy:".concat(e),normalize:!1}},getSharesByObjectId:function(e){return{url:"{gateway}/v2/shares/objects/".concat(e),key:"get:share-v2:shares:object:".concat(e),type:n.k.GET,normalizeOptions:i}},createSharePincode:function(e){return{url:"{gateway}/v2/shares/".concat(e,"/pincode"),key:"create:share-v2:".concat(e,":pincode"),type:n.k.POST}},getPincodeByShareId:function(e){return{url:"{gateway}/v2/shares/".concat(e,"/pincode"),key:"get:share-v2:".concat(e,":pincode")}},getPincodeByCode:function(e){return{url:"{gateway}/v2/shares/pincode?code=".concat(e),key:"get:share-v2:pincode:".concat(e)}}}},21789:(e,t,a)=>{a.d(t,{x:()=>o});var n=a(75896),r=a(110),i=a(4594),o={getFlattenedRecipients:function(e){return n.m.flatten(e.map(function(e){var t;return null!==(t=e.recipients)&&void 0!==t?t:[]}))},getFlattenedUniqueScopes:function(e){var t=o.getFlattenedRecipients(e);return n.m.uniq(t.map(function(e){var t;return null===(t=e.scopeId)||void 0===t?void 0:t.toString()})).filter(function(e){return!!e})},getClassroomIdFromShare:function(e){var t,a=null===(t=e.recipients)||void 0===t?void 0:t[0];if(a)return a.scopeId?a.scopeId.toString():a.recipientId&&a.recipientTypeId===i.E.Classroom?a.recipientId.toString():void 0},getClassroomForShare:function(e,t){var a=o.getClassroomIdFromShare(e);if(a)return t.find(function(e){return e.id.toString()===a.toString()})},getRecipientsCount:function(e,t){var a,n,r,i;return t?null!==(i=null===(r=e.recipients)||void 0===r?void 0:r.filter(function(e){return e.recipientTypeId===t}).length)&&void 0!==i?i:0:null!==(n=null===(a=e.recipients)||void 0===a?void 0:a.length)&&void 0!==n?n:0},hasShareExpired:function(e){if(e.expireDate){var t=new Date,a=new Date(e.expireDate);if(r.O.isAfter(t,a))return!0}return!1},calculateDaysToExpiry:function(e){if(e.expireDate){var t=r.O.diffBetween(new Date(e.expireDate),new Date,"day")||1;return 0===t?1:t}},getShareLocalExpiry:function(e,t){if(!e.expireDate)return null;var a=r.O.convertUTCToLocal(e.expireDate);return r.O.format(a,t)}}},2267:(e,t,a)=>{a.d(t,{I:()=>i});var n=a(64249),r=a(40841),i={canEmbed:function(e){return["video","interactive","clip"].includes(e)},canAddPolicies:function(e){return["interactive"].includes(e)},getEnabledIntegrations:function(e,t){return r._.getShareIntegrations(e,t).filter(function(e){return e.enabled}).map(function(e){return e.id})},getShareSettingsInitialValues:function(e,t){var a,n,r,i,o,s;return{preventScrubbing:null!==(r=null!==(n=null===(a=null==e?void 0:e.options)||void 0===a?void 0:a.preventScrubbing)&&void 0!==n?n:null==t?void 0:t.preventScrubbing)&&void 0!==r&&r,immediateFeedback:null!==(s=null!==(o=null===(i=null==e?void 0:e.options)||void 0===i?void 0:i.immediateFeedback)&&void 0!==o?o:null==t?void 0:t.immediateFeedback)&&void 0!==s&&s}},getEnabledSettingsField:function(e){return{showImmediateFeedbackField:"interactive"===e,showPreventScrubbingField:"interactive"===e}},getFetchFunctionByType:function(e){return n.I.getFetchFunctionByType(e)},getAnalyticsEntity:function(e){return n.I.getAnalyticsEntity(e)},getAnalyticsOptions:function(e){return n.I.getAnalyticsOptions(e)}}},83351:(e,t,a)=>{a.d(t,{P:()=>c});var n=a(32735),r=a(23481),i=a(13876),o=a(36532),s=r.T.encloseNamespace("assign.flowControls");function c(e){var t=e.hideBackButton||!e.onClickBack,a=e.hideNextButton||!e.onClickNext,r=e.hideCreateClassroomButton||!e.onClickCreateClassroom;return t&&a&&r?n.createElement(n.Fragment,null):n.createElement(i.u,{className:"justify-content-between"},n.createElement("div",null,!!e.leftComponent&&e.leftComponent,!r&&n.createElement(i.u.Submit,{variant:"link",onClick:e.onClickCreateClassroom,text:s("createClassroom"),className:"text-info p-0"})),n.createElement("div",{className:"d-flex"},!t&&n.createElement(i.u.Cancel,{variant:"link",onClick:e.onClickBack,text:e.backButtonText||s("back")}),!a&&n.createElement(o.u,{title:e.nextButtonTooltip,disable:!e.nextButtonTooltip,placement:"top",spanHack:!0},n.createElement(i.u.Submit,{variant:"dark",onClick:e.onClickNext,text:e.nextButtonText||s("next"),disabled:e.disableNextButton,showSpinner:e.showSpinner}))))}},95890:(e,t,a)=>{a.d(t,{_:()=>u});var n=a(20354),r=a(2267),i=a(4594),o=a(16714),s=a(39151),c=a(20768),l=a(31949),p=a(22902),d=a(45778);function u(e){var t,a=n.a.useBasicFetch(l.N.currentUser()),u=r.I.getFetchFunctionByType(e.entityType)(e.objectId,null===(t=a.data)||void 0===t?void 0:t.id),S=n.a.useBasicFetch(s.L.config()),v=n.a.useBasicFetch(d.G.isType(u.data,i.E.Interactive)&&u.data.interactiveId&&c.b.interactive(u.data.interactiveId)),y=(0,p.T)(),I=y.hasPermissions,h=y.isLoaded,m=I(o.C.StudentExperience),g=I(o.C.CreateClassrooms);return{loaded:!!(a.data&&u.data&&S.data&&h),currentUser:a,entity:u,interactive:v,config:S,hasStudentExp:m,canCreateClassrooms:g}}},86099:(e,t,a)=>{a.d(t,{BR:()=>E,Qh:()=>y,Rv:()=>h,Sj:()=>m,Zm:()=>O,pY:()=>I,rq:()=>g});var n=a(23481),r=a(28400),i=a(2510),o=a(21789),s=a(4594),c=a(31908),l=a(14070),p=a(97291),d=a(40254),u=a(82431),S=n.T.encloseNamespace("shared.utils"),v=[s.E.Video,s.E.Clip,s.E.Interactive];function y(e){return c.M.isInteractive(e)?{application:p.O.INTERACTIVES,action:l.e.Interactives.VIEW_INTERACTIVE,args:[e.id,r.m.slugify(e.name)]}:c.M.isClip(e)?{application:p.O.CLIPS,action:l.e.Clips.PLAY_CLIP,args:[e.id,r.m.slugify(e.name)]}:c.M.isVideo(e)?{application:p.O.VIDEOS,action:l.e.Videos.PLAY_VIDEO,args:[e.id,r.m.slugify(e.name)]}:e.typeId===s.E.Playlist?{application:p.O.PLAYLISTS,action:l.e.Playlists.PLAYLIST,args:[e.id,r.m.slugify(e.name)]}:e.typeId===s.E.Series?u.j.getSeriesAppLink(e):void 0}function I(e,t){if(!e)return null;if(!v.includes(e.objectTypeId))return y({id:e.objectId.toString(),typeId:e.objectTypeId});if(e.type===i.y.Classroom){var a=o.x.getClassroomIdFromShare(e);return{application:p.O.CLASSROOMS,action:l.e.Classrooms.INSIGHTS_OVERVIEW,args:[a,e.shareId],params:t}}return e.type===i.y.Open?{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOM_INSIGHTS_OVERVIEW,args:[e.shareId],params:t}:{application:p.O.MY_SHARES,action:l.e.MyShares.INSIGHTS_OVERVIEW,args:[e.shareId],params:t}}function h(e,t){if(!e)return null;if(!v.includes(e.objectTypeId))return y({id:e.objectId.toString(),typeId:e.objectTypeId});if(e.type===i.y.Classroom){var a=o.x.getClassroomIdFromShare(e);return{application:p.O.CLASSROOMS,action:l.e.Classrooms.INSIGHTS_HEATMAP,args:[a,e.shareId],params:t}}return e.type===i.y.Open?{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOM_INSIGHTS_HEATMAP,args:[e.shareId],params:t}:{application:p.O.MY_SHARES,action:l.e.MyShares.INSIGHTS_HEATMAP,args:[e.shareId],params:t}}function m(e,t){if(!e)return null;if(!v.includes(e.objectTypeId))return y({id:e.objectId.toString(),typeId:e.objectTypeId});if(e.type===i.y.Classroom){var a=o.x.getClassroomIdFromShare(e);return{application:p.O.CLASSROOMS,action:l.e.Classrooms.INSIGHTS_QUESTIONS,args:[a,e.shareId],params:t}}return e.type===i.y.Open?{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOM_INSIGHTS_QUESTIONS,args:[e.shareId],params:t}:{application:p.O.MY_SHARES,action:l.e.MyShares.INSIGHTS_QUESTIONS,args:[e.shareId],params:t}}function g(e,t){if(!e)return null;if(!v.includes(e.objectTypeId))return y({id:e.objectId.toString(),typeId:e.objectTypeId});if(e.type===i.y.Classroom){var a=o.x.getClassroomIdFromShare(e);return{application:p.O.CLASSROOMS,action:l.e.Classrooms.INSIGHTS_STUDENTS,args:[a,e.shareId],params:t}}return e.type===i.y.Open?{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOM_INSIGHTS_STUDENTS,args:[e.shareId],params:t}:{application:p.O.MY_SHARES,action:l.e.MyShares.INSIGHTS_STUDENTS,args:[e.shareId],params:t}}function O(e){if(e&&e.type!==i.y.LegacyDirect){var t=f(e);return e.type===i.y.Link?{application:p.O.SHARE,action:l.e.Share.SHARE,args:[e.objectId],params:{entityType:t}}:d.W.assignDetails({objectId:e.objectId.toString(),shareId:e.shareId,entityType:t,detailsTitle:S("shareOptions")})}}function E(e){if(e){var t=f(e);return e.type===i.y.Link?{application:p.O.SHARE,action:l.e.Share.DELETE_SHARE_LINK,args:[e.objectId],params:{entityType:t,previousAppLink:{application:p.O.MY_SHARES,action:l.e.MyShares.HOME}}}:e.type===i.y.LegacyDirect?{application:p.O.SHARE,action:l.e.Share.DELETE_LEGACY_SHARE,args:[e.shareId],params:{previousAppLink:{application:p.O.MY_SHARES,action:l.e.MyShares.HOME}}}:e.type===i.y.Classroom?{application:p.O.SHARE,action:l.e.Share.DELETE_ASSIGNMENT,args:[e.shareId],params:{previousAppLink:{application:p.O.CLASSROOMS,action:l.e.Classrooms.CLASSROOM_HOME,args:[o.x.getClassroomIdFromShare(e)]}}}:e.type===i.y.Open?{application:p.O.SHARE,action:l.e.Share.DELETE_OPEN_CLASSROOM,args:[e.shareId],params:{previousAppLink:{application:p.O.CLASSROOMS,action:l.e.Classrooms.OPEN_CLASSROOMS,args:[o.x.getClassroomIdFromShare(e)]}}}:void 0}}function f(e){return e.objectTypeId===s.E.Video?"video":e.objectTypeId===s.E.Interactive?"interactive":e.objectTypeId===s.E.Clip?"clip":e.objectTypeId===s.E.Series?"series":e.objectTypeId===s.E.Playlist?"playlist":void 0}}}]);
|
|
2
|
+
//# sourceMappingURL=104-da7394bcfa-lite.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts/104-da7394bcfa-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/share-v2/enums/SharePrivacy.ts","file:///app/packages/libs/shared/src/apps/share-v2/enums/ShareType.ts","file:///app/packages/libs/shared/src/apps/share-v2/flight-requests/ShareRequests.ts","file:///app/packages/libs/shared/src/apps/share-v2/utils/ShareHelper.ts","file:///app/packages/libs/shared/src/apps/share-v2/utils/ShareViewHelper.tsx","file:///app/packages/projects/lite/src/apps/assign/components/flow-controls/FlowControls.tsx","file:///app/packages/projects/lite/src/apps/assign/hooks/useAssignSharedData.ts","file:///app/packages/projects/lite/src/shared/utils/ObjectAppLinkHelper.ts"],"sourcesContent":["export enum SharePrivacy {\n Public = 'Public',\n PinCode = 'PinCode',\n PasswordProtected = 'PasswordProtected',\n ProtectedOverrideRestriction = 'ProtectedOverrideRestriction',\n JustMySchoolOverrideRestriction = 'JustMySchoolOverrideRestriction',\n Protected = 'Protected',\n JustMySchool = 'JustMySchool',\n Direct = 'Direct'\n}","export enum ShareType {\n Link = 'Link',\n Classroom = 'Classroom',\n Open = 'Open',\n Live = 'Live',\n LegacyDirect = 'LegacyDirect',\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { ShareType } from 'libs/shared/apps/share-v2/enums/ShareType';\nimport { CreateShareLinkRequest } from 'libs/shared/apps/share-v2/interfaces/CreateShareLinkRequest';\nimport { CreateShareRequest } from 'libs/shared/apps/share-v2/interfaces/CreateShareRequest';\nimport { UpdateShareRequest } from 'libs/shared/apps/share-v2/interfaces/UpdateShareRequest';\n\nconst normalizeOptions: Flight.NormalizeOptions = {\n namespace: 'share-v2'\n};\n\nexport interface GetSentSharesParams {\n cursor?: string;\n scopeId?: string;\n objectTypeId?: number;\n type?: ShareType[];\n}\n\nexport const ShareRequests = {\n createShare(\n data: CreateShareRequest\n ): Flight.Request {\n return {\n url: '{gateway}/v2/shares',\n key: 'create:share-v2',\n type: HttpVerbs.POST,\n data,\n normalizeOptions,\n invalidationKeys: [ 'sent:share-v2', 'get:share-v2:shares:object' ]\n };\n },\n\n updateShare(\n shareId: string,\n data: UpdateShareRequest\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}`,\n key: `update:share-v2`,\n type: HttpVerbs.PUT,\n data,\n normalizeOptions,\n invalidationKeys: [ 'share-v2:permanent-link:object', `share-v2:${shareId}`, 'get:share-v2:shares:object' ]\n };\n },\n \n deleteShare(\n shareId: string\n ): Flight.Request {\n return {\n type: HttpVerbs.DELETE,\n url: `{gateway}/v2/shares/${shareId}`,\n key: `delete:share-v2`,\n normalizeOptions,\n invalidationKeys: [ 'share-v2:permanent-link:object', 'sent:share-v2', `share-v2:${shareId}`, 'get:share-v2:shares:object' ]\n };\n },\n\n getShare(\n shareId: string\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}`,\n key: `share-v2:${shareId}`,\n bootstrapName: `share-v2:${shareId}`,\n type: HttpVerbs.GET,\n normalizeOptions\n };\n },\n\n getSentShares(\n params: GetSentSharesParams = {}\n ): Flight.Request {\n const key = Object.values(params).sort().join(':');\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/sent', params),\n key: `sent:share-v2:${key}`,\n type: HttpVerbs.GET,\n normalize: false\n };\n },\n\n getShareLink(\n id: string\n ): Flight.Request {\n return {\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/permanent-link', { objectId: id }),\n key: `share-v2:permanent-link:object:${id}`,\n normalizeOptions\n };\n },\n\n createShareLink(\n data: CreateShareLinkRequest\n ): Flight.Request {\n return {\n type: HttpVerbs.POST,\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/permanent-link', { ...data }),\n key: `create:share-v2:permanent-link:object:${data.objectId}`,\n invalidationKeys: [ `share-v2:permanent-link:object:${data.objectId}`, 'sent:share-v2', `get:share-v2:shares:object:${data.objectId}` ],\n normalizeOptions\n };\n },\n\n getPrivacy(id: string): Flight.Request {\n return {\n url: `{gateway}/v1/objects/${id}/access`,\n key: `privacy:${id}`,\n normalize: false\n };\n },\n \n getSharesByObjectId(\n objectId: string | number\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/objects/${objectId}`,\n key: `get:share-v2:shares:object:${objectId}`,\n type: HttpVerbs.GET,\n normalizeOptions\n };\n },\n\n createSharePincode(shareId: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}/pincode`,\n key: `create:share-v2:${shareId}:pincode`,\n type: HttpVerbs.POST\n };\n },\n\n getPincodeByShareId(shareId: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}/pincode`,\n key: `get:share-v2:${shareId}:pincode`\n };\n },\n\n getPincodeByCode(code: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/pincode?code=${code}`,\n key: `get:share-v2:pincode:${code}`\n };\n }\n};\n","import { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { ShareRecipient } from 'libs/shared/apps/share-v2/interfaces/ShareRecipient';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { Classroom } from 'libs/shared/interfaces';\n\nexport const ShareHelper = {\n getFlattenedRecipients(shares: Share[]): ShareRecipient[] {\n return ArrayHelper.flatten(shares.map(s => s.recipients ?? []));\n },\n\n getFlattenedUniqueScopes(shares: Share[]): string[] {\n const recipients = ShareHelper.getFlattenedRecipients(shares);\n return ArrayHelper.uniq(recipients.map(r => r.scopeId?.toString())).filter(x => !!x);\n },\n \n getClassroomIdFromShare(share: Share): string | undefined {\n const firstRecipient = share.recipients?.[0];\n \n if (!firstRecipient) return;\n \n if (firstRecipient.scopeId)\n return firstRecipient.scopeId.toString();\n \n if (firstRecipient.recipientId && firstRecipient.recipientTypeId === MasterType.Classroom)\n return firstRecipient.recipientId.toString();\n },\n\n getClassroomForShare(share: Share, classrooms: Classroom[]): Classroom | undefined {\n const classroomId = ShareHelper.getClassroomIdFromShare(share);\n \n if (!classroomId) return;\n \n return classrooms.find(classroom => classroom.id.toString() === classroomId.toString());\n },\n\n getRecipientsCount(share: Share, type?: MasterType.ClassroomGroup | MasterType.User): number {\n if (!type) return share.recipients?.length ?? 0;\n \n return share.recipients?.filter(r => r.recipientTypeId === type).length ?? 0;\n },\n\n hasShareExpired(share: Share): boolean {\n if (share.expireDate) {\n const now = new Date();\n const expireDate = new Date(share.expireDate);\n\n if (DateHelper.isAfter(now, expireDate))\n return true;\n }\n\n return false;\n },\n\n calculateDaysToExpiry(share: Share): number | undefined {\n if (!share.expireDate) return;\n\n const remainingDays = DateHelper.diffBetween(new Date(share.expireDate), new Date(), 'day') || 1;\n const smartCount = remainingDays === 0 ? 1 : remainingDays; // Prevent zero count\n\n return smartCount;\n },\n\n getShareLocalExpiry(share: Share, format: string): string | null {\n if (!share.expireDate)\n return null;\n \n const localDate = DateHelper.convertUTCToLocal(share.expireDate);\n return DateHelper.format(localDate, format);\n }\n};","import { AnalyticsOptions, EntityType } from 'libs/analytics/interfaces';\n\nimport { ShareViewHelper as OldShareViewHelper } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport type { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport type { Clip, Interactive, InteractiveMetadata, Playlist, Series, Subject, Video } from 'libs/shared/interfaces';\nimport { IntegrationHelper } from 'libs/shared/utils/IntegrationHelper';\n\nexport type SharableEntityType = 'video' | 'playlist' | 'subject' | 'series' | 'interactive' | 'clip';\nexport type SharableEntity = Video | Playlist | Subject | Series | InteractiveMetadata | Clip;\nexport interface ShareSettingsFormFields {\n preventScrubbing: boolean;\n immediateFeedback: boolean;\n}\n\nexport const ShareViewHelper = {\n canEmbed(type: SharableEntityType): boolean {\n return [ 'video', 'interactive', 'clip' ].includes(type);\n },\n\n /**\n * Only interactive entities can update share settings currently\n */\n canAddPolicies(type: SharableEntityType): boolean {\n return ['interactive'].includes(type);\n },\n\n getEnabledIntegrations(googleClassroomSetting: boolean, msftTeamsSetting: boolean): IntegrationId[] {\n const integrations = IntegrationHelper.getShareIntegrations(googleClassroomSetting, msftTeamsSetting);\n return integrations.filter(i => i.enabled).map(i => i.id);\n },\n\n getShareSettingsInitialValues(share: Share, interactive: Interactive | null) {\n return {\n preventScrubbing: share?.options?.preventScrubbing ?? interactive?.preventScrubbing ?? false,\n immediateFeedback: share?.options?.immediateFeedback ?? interactive?.immediateFeedback ?? false\n };\n },\n \n getEnabledSettingsField(entityType: SharableEntityType): {[key in `show${Capitalize<keyof ShareSettingsFormFields>}Field`]: boolean} {\n return {\n showImmediateFeedbackField: entityType === 'interactive',\n showPreventScrubbingField: entityType === 'interactive'\n };\n },\n\n /**\n * Methods from old ShareViewHelper imported here for namespacing\n */\n getFetchFunctionByType: (type: SharableEntityType) => {\n return OldShareViewHelper.getFetchFunctionByType(type);\n },\n\n getAnalyticsEntity(entityType: string): EntityType {\n return OldShareViewHelper.getAnalyticsEntity(entityType);\n },\n\n getAnalyticsOptions(entityType: SharableEntityType): AnalyticsOptions {\n return OldShareViewHelper.getAnalyticsOptions(entityType);\n }\n};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\n\nconst namespace = 'assign.flowControls';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface FlowControlsProps {\n showSpinner?: boolean;\n hideNextButton?: boolean;\n hideBackButton?: boolean;\n disableNextButton?: boolean;\n disableBackButton?: boolean;\n backButtonText?: string;\n hideCreateClassroomButton?: boolean;\n nextButtonText?: string;\n nextButtonTooltip?: string;\n onClickNext?: () => void;\n onClickBack?: () => void;\n onClickCreateClassroom?: () => void;\n leftComponent?: JSX.Element;\n}\n\nexport function FlowControls(props: FlowControlsProps): JSX.Element {\n const hideBackButton = props.hideBackButton || !props.onClickBack;\n const hideNextButton = props.hideNextButton || !props.onClickNext;\n const hideCreateClassroomButton = props.hideCreateClassroomButton || !props.onClickCreateClassroom;\n \n if (hideBackButton && hideNextButton && hideCreateClassroomButton)\n return <></>;\n \n return (\n <PopupButtons className='justify-content-between'>\n <div>\n {!!props.leftComponent && props.leftComponent}\n {!hideCreateClassroomButton && (\n <PopupButtons.Submit variant='link' onClick={props.onClickCreateClassroom} text={getPhrase('createClassroom')} className='text-info p-0' />\n )}\n </div>\n <div className='d-flex'>\n {!hideBackButton && (\n <PopupButtons.Cancel variant='link' onClick={props.onClickBack} text={props.backButtonText || getPhrase('back')} />\n )}\n {!hideNextButton && (\n <Tooltip title={props.nextButtonTooltip} disable={!props.nextButtonTooltip} placement='top' spanHack>\n <PopupButtons.Submit\n variant='dark'\n onClick={props.onClickNext}\n text={props.nextButtonText || getPhrase('next')}\n disabled={props.disableNextButton}\n showSpinner={props.showSpinner}\n />\n </Tooltip>\n )}\n </div>\n </PopupButtons>\n );\n}","import { Flight } from 'libs/common/react/index';\n\nimport { SharableEntityType, ShareViewHelper } from 'libs/shared/apps/share-v2/utils/ShareViewHelper';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { InteractiveRequests } from 'libs/shared/flight-requests/InteractiveRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { Config, CurrentUser, Interactive, InteractiveMetadata } from 'libs/shared/interfaces';\nimport { MasterTypeHelper } from 'libs/shared/utils/MasterTypeHelper';\n\nexport interface UseAssignSharedDataOptions {\n objectId: string;\n entityType: SharableEntityType;\n}\n\nexport function useAssignSharedData(options: UseAssignSharedDataOptions) {\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const entity = ShareViewHelper.getFetchFunctionByType(options.entityType)(options.objectId, currentUser.data?.id);\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n /**\n * Fetch interactive videos options to set them as defaults\n * if the interactive share data does not have any options set.\n * We only fetch this if its an interactive share entity\n */\n const interactive = Flight.useBasicFetch<Interactive>(\n MasterTypeHelper.isType<InteractiveMetadata>(entity.data, MasterType.Interactive) && entity.data.interactiveId &&\n InteractiveRequests.interactive(entity.data.interactiveId)\n );\n\n const { hasPermissions, isLoaded } = usePermissions();\n\n const hasStudentExp = hasPermissions(PermissionName.StudentExperience);\n const canCreateClassrooms = hasPermissions(PermissionName.CreateClassrooms);\n \n const dataLoaded = (\n !!currentUser.data &&\n !!entity.data &&\n !!config.data &&\n !!isLoaded\n );\n \n return {\n loaded: dataLoaded,\n currentUser,\n entity,\n interactive,\n config,\n hasStudentExp,\n canCreateClassrooms\n };\n}","import { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { SharableEntityType } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { ShareType } from 'libs/shared/apps/share-v2/enums/ShareType';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { ShareHelper } from 'libs/shared/apps/share-v2/utils/ShareHelper';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { BaseObject, Series } from 'libs/shared/interfaces';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { AssignAppLinkHelper } from 'apps/assign/utils/AssignAppLinkHelper';\nimport { SeriesAppLinkHelper } from 'apps/series/SeriesAppLinkHelper';\n\nconst namespace = 'shared.utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst INSIGHTS_WHITELIST = [\n MasterType.Video,\n MasterType.Clip,\n MasterType.Interactive\n];\n\nexport function getObjectAppLink(object: BaseObject): Core.AppLink {\n if (VideoHelper.isInteractive(object)) {\n return {\n application: AppChannels.INTERACTIVES,\n action: Actions.Interactives.VIEW_INTERACTIVE,\n args: [ object.id, TextHelper.slugify(object.name) ]\n };\n }\n\n if (VideoHelper.isClip(object)) {\n return {\n application: AppChannels.CLIPS,\n action: Actions.Clips.PLAY_CLIP,\n args: [ object.id, TextHelper.slugify(object.name) ]\n };\n }\n\n if (VideoHelper.isVideo(object)) {\n return {\n application: AppChannels.VIDEOS,\n action: Actions.Videos.PLAY_VIDEO,\n args: [ object.id, TextHelper.slugify(object.name) ]\n };\n }\n\n if (object.typeId === MasterType.Playlist) {\n return {\n application: AppChannels.PLAYLISTS,\n action: Actions.Playlists.PLAYLIST,\n args: [ object.id, TextHelper.slugify(object.name) ]\n };\n }\n\n if (object.typeId === MasterType.Series) {\n return SeriesAppLinkHelper.getSeriesAppLink(object as Series);\n }\n}\n\nexport function getInsightsOverviewAppLink(share: Share, params?: HashObject): Core.AppLink {\n if (!share)\n return null;\n\n if (!INSIGHTS_WHITELIST.includes(share.objectTypeId))\n return getObjectAppLink({ id: share.objectId.toString(), typeId: share.objectTypeId });\n\n if (share.type === ShareType.Classroom) {\n const classroomId = ShareHelper.getClassroomIdFromShare(share);\n\n return {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.INSIGHTS_OVERVIEW,\n args: [ classroomId, share.shareId ],\n params\n };\n }\n\n if (share.type === ShareType.Open) {\n return {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.OPEN_CLASSROOM_INSIGHTS_OVERVIEW,\n args: [share.shareId],\n params\n };\n }\n\n return {\n application: AppChannels.MY_SHARES,\n action: Actions.MyShares.INSIGHTS_OVERVIEW,\n args: [share.shareId],\n params\n };\n}\n\nexport function getInsightsHeatmapAppLink(share: Share, params?: HashObject): Core.AppLink {\n if (!share)\n return null;\n\n if (!INSIGHTS_WHITELIST.includes(share.objectTypeId))\n return getObjectAppLink({ id: share.objectId.toString(), typeId: share.objectTypeId });\n\n if (share.type === ShareType.Classroom) {\n const classroomId = ShareHelper.getClassroomIdFromShare(share);\n\n return {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.INSIGHTS_HEATMAP,\n args: [ classroomId, share.shareId ],\n params\n };\n }\n\n if (share.type === ShareType.Open) {\n return {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.OPEN_CLASSROOM_INSIGHTS_HEATMAP,\n args: [share.shareId],\n params\n };\n }\n\n return {\n application: AppChannels.MY_SHARES,\n action: Actions.MyShares.INSIGHTS_HEATMAP,\n args: [share.shareId],\n params\n };\n}\n\nexport function getInsightsQuestionsAppLink(share: Share, params?: HashObject): Core.AppLink {\n if (!share)\n return null;\n\n if (!INSIGHTS_WHITELIST.includes(share.objectTypeId))\n return getObjectAppLink({ id: share.objectId.toString(), typeId: share.objectTypeId });\n\n if (share.type === ShareType.Classroom) {\n const classroomId = ShareHelper.getClassroomIdFromShare(share);\n\n return {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.INSIGHTS_QUESTIONS,\n args: [ classroomId, share.shareId ],\n params\n };\n }\n\n if (share.type === ShareType.Open) {\n return {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.OPEN_CLASSROOM_INSIGHTS_QUESTIONS,\n args: [share.shareId],\n params\n };\n }\n\n return {\n application: AppChannels.MY_SHARES,\n action: Actions.MyShares.INSIGHTS_QUESTIONS,\n args: [share.shareId],\n params\n };\n}\n\nexport function getInsightsStudentsAppLink(share: Share, params?: HashObject): Core.AppLink {\n if (!share)\n return null;\n \n if (!INSIGHTS_WHITELIST.includes(share.objectTypeId))\n return getObjectAppLink({ id: share.objectId.toString(), typeId: share.objectTypeId });\n\n if (share.type === ShareType.Classroom) {\n const classroomId = ShareHelper.getClassroomIdFromShare(share);\n\n return {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.INSIGHTS_STUDENTS,\n args: [ classroomId, share.shareId ],\n params\n };\n }\n\n if (share.type === ShareType.Open) {\n return {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.OPEN_CLASSROOM_INSIGHTS_STUDENTS,\n args: [share.shareId],\n params\n };\n }\n\n return {\n application: AppChannels.MY_SHARES,\n action: Actions.MyShares.INSIGHTS_STUDENTS,\n args: [share.shareId],\n params\n };\n}\n\nexport function getShareOptionsAppLink(share: Share): Core.AppLink {\n if (!share) return;\n if (share.type === ShareType.LegacyDirect) return;\n\n const entityType = getSharableEntityType(share);\n\n if (share.type === ShareType.Link) {\n return {\n application: AppChannels.SHARE,\n action: Actions.Share.SHARE,\n args: [share.objectId],\n params: { entityType }\n };\n }\n\n return AssignAppLinkHelper.assignDetails({\n objectId: share.objectId.toString(),\n shareId: share.shareId,\n entityType,\n detailsTitle: getPhrase('shareOptions')\n });\n}\n\nexport function getDeleteShareAppLink(share: Share): Core.AppLink {\n if (!share) return;\n\n const entityType = getSharableEntityType(share);\n\n if (share.type === ShareType.Link) {\n return {\n application: AppChannels.SHARE,\n action: Actions.Share.DELETE_SHARE_LINK,\n args: [share.objectId],\n params: {\n entityType,\n previousAppLink: {\n application: AppChannels.MY_SHARES,\n action: Actions.MyShares.HOME\n } as Core.AppLink\n }\n };\n }\n\n if (share.type === ShareType.LegacyDirect) {\n return {\n application: AppChannels.SHARE,\n action: Actions.Share.DELETE_LEGACY_SHARE,\n args: [share.shareId],\n params: {\n previousAppLink: {\n application: AppChannels.MY_SHARES,\n action: Actions.MyShares.HOME\n } as Core.AppLink\n }\n };\n }\n\n if (share.type === ShareType.Classroom) {\n return {\n application: AppChannels.SHARE,\n action: Actions.Share.DELETE_ASSIGNMENT,\n args: [share.shareId],\n params: {\n previousAppLink: {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.CLASSROOM_HOME,\n args: [ShareHelper.getClassroomIdFromShare(share)]\n } as Core.AppLink\n }\n };\n }\n\n if (share.type === ShareType.Open) {\n return {\n application: AppChannels.SHARE,\n action: Actions.Share.DELETE_OPEN_CLASSROOM,\n args: [share.shareId],\n params: {\n previousAppLink: {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.OPEN_CLASSROOMS,\n args: [ShareHelper.getClassroomIdFromShare(share)]\n } as Core.AppLink\n }\n };\n }\n}\n\nexport function getInsightsReportAppLink(share: Share): Core.AppLink {\n if (!share) return;\n if (share.objectTypeId !== MasterType.Interactive) return;\n\n return {\n application: AppChannels.MY_SHARES,\n action: Actions.MyShares.INTERACTIVE_GENERATE_REPORT,\n args: [share.objectId]\n };\n}\n\nfunction getSharableEntityType(share: Share): SharableEntityType {\n if (share.objectTypeId === MasterType.Video)\n return 'video';\n\n if (share.objectTypeId === MasterType.Interactive)\n return 'interactive';\n \n if (share.objectTypeId === MasterType.Clip)\n return 'clip';\n\n if (share.objectTypeId === MasterType.Series)\n return 'series';\n\n if (share.objectTypeId === MasterType.Playlist)\n return 'playlist';\n}"],"names":["SharePrivacy","ShareType","normalizeOptions","namespace","ShareRequests","createShare","data","url","key","type","invalidationKeys","updateShare","shareId","deleteShare","getShare","bootstrapName","getSentShares","params","Object","values","sort","join","normalize","getShareLink","id","objectId","createShareLink","getPrivacy","getSharesByObjectId","createSharePincode","getPincodeByShareId","getPincodeByCode","code","ShareHelper","getFlattenedRecipients","shares","map","s","recipients","getFlattenedUniqueScopes","r","scopeId","toString","filter","x","getClassroomIdFromShare","share","firstRecipient","recipientId","recipientTypeId","getClassroomForShare","classrooms","classroomId","find","classroom","getRecipientsCount","length","hasShareExpired","expireDate","now","Date","calculateDaysToExpiry","remainingDays","getShareLocalExpiry","format","localDate","ShareViewHelper","canEmbed","includes","canAddPolicies","getEnabledIntegrations","googleClassroomSetting","msftTeamsSetting","i","enabled","getShareSettingsInitialValues","interactive","preventScrubbing","options","immediateFeedback","getEnabledSettingsField","entityType","showImmediateFeedbackField","showPreventScrubbingField","getFetchFunctionByType","getAnalyticsEntity","getAnalyticsOptions","getPhrase","FlowControls","props","hideBackButton","onClickBack","hideNextButton","onClickNext","hideCreateClassroomButton","onClickCreateClassroom","className","leftComponent","variant","onClick","text","backButtonText","title","nextButtonTooltip","disable","placement","spanHack","nextButtonText","disabled","disableNextButton","showSpinner","useAssignSharedData","currentUser","entity","config","interactiveId","hasPermissions","isLoaded","hasStudentExp","canCreateClassrooms","loaded","INSIGHTS_WHITELIST","getObjectAppLink","object","application","action","args","name","typeId","getInsightsOverviewAppLink","objectTypeId","getInsightsHeatmapAppLink","getInsightsQuestionsAppLink","getInsightsStudentsAppLink","getShareOptionsAppLink","getSharableEntityType","detailsTitle","getDeleteShareAppLink","previousAppLink"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[1192],{29923:(e,t,r)=>{r.d(t,{F:()=>l});var n=r(32735),a=r(23481),o=r(89965),i=r(13876);function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var s=a.T.encloseNamespace("sharev2.deleteShareContent");function l(e){var t,r,a,l=(r=n.useState(!1),a=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,i,c=[],s=!0,l=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;s=!1}else for(;!(s=(n=o.call(r)).done)&&(c.push(n.value),c.length!==t);s=!0);}catch(e){l=!0,a=e}finally{try{if(!s&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}(r,a)||function(e,t){if(e){if("string"==typeof e)return c(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}(r,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=l[0],d=l[1];return n.createElement("div",{className:"d-flex flex-column gap-3"},n.createElement("p",{className:"m-0"},e.phrases.leadingSentence),n.createElement("ul",{className:"m-0"},e.phrases.bulletPoints.map(function(e,t){return n.createElement("li",{key:t},e)})),n.createElement(o.X,{id:"ack",checked:u,onChange:function(e){return d(e.target.checked)},label:e.phrases.acknowledgement}),n.createElement(i.u,null,e.onBack&&n.createElement(i.u.Cancel,{onClick:e.onBack,text:null!==(t=e.phrases.backButton)&&void 0!==t?t:s("backButton"),variant:"link"}),n.createElement(i.u.Submit,{onClick:function(){u&&!e.loading&&e.onDelete()},text:e.phrases.deleteButton,variant:"danger",disabled:!u||e.loading,showSpinner:e.loading})))}},33518:(e,t,r)=>{var n;r.d(t,{e:()=>n}),function(e){e.Public="Public",e.PinCode="PinCode",e.PasswordProtected="PasswordProtected",e.ProtectedOverrideRestriction="ProtectedOverrideRestriction",e.JustMySchoolOverrideRestriction="JustMySchoolOverrideRestriction",e.Protected="Protected",e.JustMySchool="JustMySchool",e.Direct="Direct"}(n||(n={}))},18488:(e,t,r)=>{r.d(t,{o:()=>i});var n=r(99940),a=r(97395),o={namespace:"share-v2"},i={createShare:function(e){return{url:"{gateway}/v2/shares",key:"create:share-v2",type:n.k.POST,data:e,normalizeOptions:o,invalidationKeys:["sent:share-v2","get:share-v2:shares:object"]}},updateShare:function(e,t){return{url:"{gateway}/v2/shares/".concat(e),key:"update:share-v2",type:n.k.PUT,data:t,normalizeOptions:o,invalidationKeys:["share-v2:permanent-link:object","share-v2:".concat(e),"get:share-v2:shares:object"]}},deleteShare:function(e){return{type:n.k.DELETE,url:"{gateway}/v2/shares/".concat(e),key:"delete:share-v2",normalizeOptions:o,invalidationKeys:["share-v2:permanent-link:object","sent:share-v2","share-v2:".concat(e),"get:share-v2:shares:object"]}},getShare:function(e){return{url:"{gateway}/v2/shares/".concat(e),key:"share-v2:".concat(e),bootstrapName:"share-v2:".concat(e),type:n.k.GET,normalizeOptions:o}},getSentShares:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.values(e).sort().join(":");return{url:a._.urlBuilder("{gateway}/v2/shares/sent",e),key:"sent:share-v2:".concat(t),type:n.k.GET,normalize:!1}},getShareLink:function(e){return{url:a._.urlBuilder("{gateway}/v2/shares/permanent-link",{objectId:e}),key:"share-v2:permanent-link:object:".concat(e),normalizeOptions:o}},createShareLink:function(e){return{type:n.k.POST,url:a._.urlBuilder("{gateway}/v2/shares/permanent-link",Object.assign({},e)),key:"create:share-v2:permanent-link:object:".concat(e.objectId),invalidationKeys:["share-v2:permanent-link:object:".concat(e.objectId),"sent:share-v2","get:share-v2:shares:object:".concat(e.objectId)],normalizeOptions:o}},getPrivacy:function(e){return{url:"{gateway}/v1/objects/".concat(e,"/access"),key:"privacy:".concat(e),normalize:!1}},getSharesByObjectId:function(e){return{url:"{gateway}/v2/shares/objects/".concat(e),key:"get:share-v2:shares:object:".concat(e),type:n.k.GET,normalizeOptions:o}},createSharePincode:function(e){return{url:"{gateway}/v2/shares/".concat(e,"/pincode"),key:"create:share-v2:".concat(e,":pincode"),type:n.k.POST}},getPincodeByShareId:function(e){return{url:"{gateway}/v2/shares/".concat(e,"/pincode"),key:"get:share-v2:".concat(e,":pincode")}},getPincodeByCode:function(e){return{url:"{gateway}/v2/shares/pincode?code=".concat(e),key:"get:share-v2:pincode:".concat(e)}}}},93563:(e,t,r)=>{r.d(t,{_:()=>s});var n=r(20354),a=r(57881),o=r(33518),i=r(18488),c=r(8233);function s(e){var t=n.a.useGetFetchAsync(),r=n.a.useBasicFetch(i.o.getPrivacy(e.entityId));return{loaded:!!r.data,updateShareLink:function(e,r){if(r.privacy===o.e.PasswordProtected)throw a.Y.logError("Cannot update to legacy share privacy(".concat(r.privacy,") for share with id ").concat(e)),new Error("invalid-share-privacy");return t(i.o.updateShare(e,r))},createShareLink:function(n){var a=null!=n?n:"protected"===c.R.getShareLinkAccessType(r.data)?o.e.Protected:o.e.JustMySchool;return t(i.o.createShareLink({objectId:e.entityId,privacy:a}))},deleteShareLink:function(e){return t(i.o.deleteShare(e))}}}},8233:(e,t,r)=>{r.d(t,{R:()=>y});var n=r(23481),a=r(110),o=r(33518),i=r(4594),c=r(49080),s=r(26361),l=r(35223),u=r(31908);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var v=n.T.encloseNamespace("sharev2.utils"),y={getPrivateIconAndText:function(e){var t=e.entityTypeId,r=e.privacy,n=e.hasStudentExp,a=e.entity,c=e.yearGroups;if(t===i.E.Topic||t===i.E.Series)return{icon:l.vn.VisibleOn,text:v(n?"justMySchoolTeachers":"justMySchoolDescription")};if(!Array.isArray(r))switch(r){case o.e.Public:return{icon:l.vn.VisibleOn,text:v("publicDescription")};case o.e.ProtectedOverrideRestriction:return{icon:l.vn.VisibleOn,text:v("clickViewOnly")};case o.e.Protected:return{icon:l.vn.Lock,text:y.getRespectRatingText(a,c,n)};case o.e.JustMySchoolOverrideRestriction:return{icon:l.vn.Lock,text:v(n?"justMySchoolTeachers":"justMySchoolDescription")};case o.e.JustMySchool:return{icon:l.vn.Lock,text:y.getRespectRatingText(a,c,n)};case o.e.PinCode:return{icon:l.vn.Lock,text:v("pinDescription")};case o.e.PasswordProtected:return{icon:l.vn.Lock,text:v("password")};default:return{}}},getIconAndText:function(e){var t=e.linkExpireDate,r=e.isPasswordProtected,n=e.status;if(!t&&!r)return y.getPrivateIconAndText(e);if(!t)return{icon:l.vn.Lock,text:v("password")};var o=a.O.isToday(t),i=a.O.diffBetween(t,new Date,"day");if(!r){var s=o?v("expiryToday"):v("expiry",{days:i});return n===c.F.Expired&&(s=v("expired")),{icon:l.vn.Timer,text:s}}var u=o?v("passwordExpiryToday"):v("passwordExpiry",{days:i});return n===c.F.Expired&&(u=v("passwordExpired")),{icon:l.vn.Lock,text:u}},getRespectRatingText:function(e,t,r){var n;if(!e||!t)return null;if(r)return v("justMySchoolTeachers");if(!u.M.isVideoType(e))return v("collectionRating");var a=s.l.getWeightedRestriction(null===(n=e._restrictions)||void 0===n?void 0:n.value);if(a&&!a.yearGroup)return v("onlyAdmins");var o,i,c,l=u.M.getRating(e),y=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return d(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,a=function(){};return{s:a,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return i=e.done,e},e:function(e){c=!0,o=e},f:function(){try{i||null==r.return||r.return()}finally{if(c)throw o}}}}(t);try{for(y.s();!(c=y.n()).done;){var h=c.value;(!o||h.value>o.value)&&(o=h),a&&h.value<=a.yearGroup||l&&h.rating.value<l.value||(!i||h.value<i.value)&&(i=h)}}catch(e){y.e(e)}finally{y.f()}return i?1===t.length?v("clickViewOnly"):i.value===o.value?v("maxYearGroup",{yearGroup:o.name}):v("yearGroupRange",{yearGroup:i.name}):v("onlyStaff")},getShareLinkAccessType:function(e){return e.isTvContent||e.isClickViewContent?"protected":e.canManageAccess?"owner":"private"}}},31192:(e,t,r)=>{r.r(t),r.d(t,{DeleteLegacyShareConfirmationView:()=>h});var n=r(32735),a=r(6044),o=r(23481),i=r(20354),c=r(29923),s=r(18488),l=r(93563),u=r(9111),d=r(69883);function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var y=o.T.encloseNamespace("sharev2.deleteLegacyShareConfirmation");function h(e){var t,r,o,h=(0,d.Z)(),p=i.a.useBasicFetch(s.o.getShare(e.shareId)),f=(r=n.useState(!1),o=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,i,c=[],s=!0,l=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;s=!1}else for(;!(s=(n=o.call(r)).done)&&(c.push(n.value),c.length!==t);s=!0);}catch(e){l=!0,a=e}finally{try{if(!s&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(l)throw a}}return c}}(r,o)||function(e,t){if(e){if("string"==typeof e)return v(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?v(e,t):void 0}}(r,o)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),g=f[0],m=f[1],k=(0,l._)({entityId:null===(t=p.data)||void 0===t?void 0:t.objectId.toString()}).deleteShareLink,b=p.hasCompleted;return n.createElement(u.G,{title:y("title"),closePopup:e.closePopup,showLoadingSpinner:!b},n.createElement(c.F,{loading:g,phrases:{leadingSentence:y("intro"),bulletPoints:[y("loseAccessInfo"),y("loseAccessUsage"),y("removeFromStudentFeed")],acknowledgement:y("acknowledgement"),deleteButton:y("delete")},onDelete:function(){var t;m(!0),k(null===(t=p.data)||void 0===t?void 0:t.shareId).then(function(){m(!1),h.success(y("deleteSuccess")),e.closePopup(),e.previousAppLink&&a.C$.trigger(e.previousAppLink)}).catch(function(){h.error(y("deleteFailed"))}).finally(function(){m(!1)})}}))}}}]);
|
|
2
|
+
//# sourceMappingURL=1192-bb27568f21-lite.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts/1192-bb27568f21-lite.chunk.js","mappings":"0RAOA,IACMA,EAAY,qBADA,8BAgBZ,SAAUC,EAAmBC,G,UACY,G,EAArB,YAAe,G,EAAM,E,o4BAArCC,EAAG,KAAEC,EAAM,KASnB,OACE,uBAAKC,UAAU,4BACb,qBAAGA,UAAU,OAAOH,EAAMI,QAAQC,iBAClC,sBAAIF,UAAU,OACXH,EAAMI,QAAQE,aAAaC,IAAI,SAACC,EAAQC,GAAK,OAC5C,sBAAIC,IAAKD,GACND,EACE,IAGT,gBAAC,IAAQ,CACPG,GAAG,MACHC,QAASX,EACTY,SAAU,SAAAC,GAAC,OAAIZ,EAAOY,EAAEC,OAAOH,QAAQ,EACvCI,MAAOhB,EAAMI,QAAQa,kBAEvB,gBAAC,IAAY,KACVjB,EAAMkB,QACL,gBAAC,WAAmB,CAClBC,QAASnB,EAAMkB,OACfE,KAA8B,QAAxB,EAAApB,EAAMI,QAAQiB,kBAAU,QAAIvB,EAAU,cAC5CwB,QAAQ,SAGZ,gBAAC,WAAmB,CAClBH,QAhCR,WACOlB,IAAOD,EAAMuB,SAGlBvB,EAAMwB,UACR,EA4BQJ,KAAMpB,EAAMI,QAAQqB,aACpBH,QAAQ,SACRI,UAAWzB,GAAOD,EAAMuB,QACxBI,YAAa3B,EAAMuB,WAK7B,C,kBCnEA,IAAYK,E,iBAAZ,SAAYA,GACV,kBACA,oBACA,wCACA,8DACA,oEACA,wBACA,8BACA,iBACD,CATD,CAAYA,IAAAA,EAAY,I,6DCSlBC,EAA4C,CAChDC,UAAW,YAUAC,EAAgB,CAC3BC,YAAW,SACTC,GAEA,MAAO,CACLC,IAAK,sBACLxB,IAAK,kBACLyB,KAAM,SACNF,KAAAA,EACAJ,iBAAAA,EACAO,iBAAkB,CAAE,gBAAiB,8BAEzC,EAEAC,YAAW,SACTC,EACAL,GAEA,MAAO,CACLC,IAAK,uBAAF,OAAyBI,GAC5B5B,IAAK,kBACLyB,KAAM,QACNF,KAAAA,EACAJ,iBAAAA,EACAO,iBAAkB,CAAE,iCAAkC,YAAF,OAAcE,GAAW,8BAEjF,EAEAC,YAAW,SACTD,GAEA,MAAO,CACLH,KAAM,WACND,IAAK,uBAAF,OAAyBI,GAC5B5B,IAAK,kBACLmB,iBAAAA,EACAO,iBAAkB,CAAE,iCAAkC,gBAAiB,YAAF,OAAcE,GAAW,8BAElG,EAEAE,SAAQ,SACNF,GAEA,MAAO,CACLJ,IAAK,uBAAF,OAAyBI,GAC5B5B,IAAK,YAAF,OAAc4B,GACjBG,cAAe,YAAF,OAAcH,GAC3BH,KAAM,QACNN,iBAAAA,EAEJ,EAEAa,cAAa,WACqB,IAAhCC,EAAA,uDAA8B,CAAC,EAEzBjC,EAAMkC,OAAOC,OAAOF,GAAQG,OAAOC,KAAK,KAE9C,MAAO,CACLb,IAAM,eAAqB,2BAA4BS,GACvDjC,IAAK,iBAAF,OAAmBA,GACtByB,KAAM,QACNa,WAAW,EAEf,EAEAC,aAAY,SACVtC,GAEA,MAAO,CACLuB,IAAK,eAAqB,qCAAsC,CAAEgB,SAAUvC,IAC5ED,IAAK,kCAAF,OAAoCC,GACvCkB,iBAAAA,EAEJ,EAEAsB,gBAAe,SACblB,GAEA,MAAO,CACLE,KAAM,SACND,IAAK,eAAqB,qCAAsC,OAAF,UAAOD,IACrEvB,IAAK,yCAAF,OAA2CuB,EAAKiB,UACnDd,iBAAkB,CAAC,kCAAD,OAAoCH,EAAKiB,UAAY,gBAAiB,8BAAF,OAAgCjB,EAAKiB,WAC3HrB,iBAAAA,EAEJ,EAEAuB,WAAU,SAACzC,GACT,MAAO,CACLuB,IAAK,wBAAF,OAA0BvB,EAAE,WAC/BD,IAAK,WAAF,OAAaC,GAChBqC,WAAW,EAEf,EAEAK,oBAAmB,SACjBH,GAEA,MAAO,CACLhB,IAAK,+BAAF,OAAiCgB,GACpCxC,IAAK,8BAAF,OAAgCwC,GACnCf,KAAM,QACNN,iBAAAA,EAEJ,EAEAyB,mBAAkB,SAAChB,GACjB,MAAO,CACLJ,IAAK,uBAAF,OAAyBI,EAAO,YACnC5B,IAAK,mBAAF,OAAqB4B,EAAO,YAC/BH,KAAM,SAEV,EAEAoB,oBAAmB,SAACjB,GAClB,MAAO,CACLJ,IAAK,uBAAF,OAAyBI,EAAO,YACnC5B,IAAK,gBAAF,OAAkB4B,EAAO,YAEhC,EAEAkB,iBAAgB,SAACC,GACf,MAAO,CACLvB,IAAK,oCAAF,OAAsCuB,GACzC/C,IAAK,wBAAF,OAA0B+C,GAEjC,E,6FCnII,SAAUC,EAAoBC,GAClC,IAAMC,EAAa,uBAEbC,EAAgB,kBAA2C,eAAyBF,EAAQG,WA8BlG,MAAO,CACLC,SAAUF,EAAc5B,KACxB+B,gBAtBF,SAAyB1B,EAAiBL,GAExC,GAAIA,EAAKgC,UAAY,sBAGnB,MAFA,aAAgB,yCAAD,OAA0ChC,EAAKgC,QAAO,+BAAuB3B,IAEtF,IAAI4B,MAAM,yBAGlB,OAAON,EAAkB,gBAA0BtB,EAASL,GAC9D,EAcEkB,gBAZF,SAAyBc,GACvB,IAAME,EAAiBF,QAAAA,EAjBD,cAFH,2BAAuCJ,EAAc5B,MAGpE,cACA,iBAgBJ,OAAO2B,EAAkB,oBAA8B,CAAEV,SAAUS,EAAQG,SAAUG,QAASE,IAChG,EAUEC,gBARF,SAAyB9B,GACvB,OAAOsB,EAAW,gBAA0BtB,GAC9C,EAQF,C,iOC1CA,IACMxC,EAAY,qBADA,iBAsBLuE,EAAkB,CAC7BC,sBAAuB,SAACX,GACtB,IAAQY,EAA6DZ,EAA7DY,aAAcN,EAA+CN,EAA/CM,QAASO,EAAsCb,EAAtCa,cAAeC,EAAuBd,EAAvBc,OAAQC,EAAef,EAAfe,WAEtD,GAAIH,IAAiB,WAAoBA,IAAiB,WACxD,MAAO,CAAEI,KAAM,eAAwBvD,KAAMtB,EAAU0E,EAAgB,uBAAyB,4BAMlG,IAAII,MAAMC,QAAQZ,GAGlB,OAAQA,GACN,KAAK,WACH,MAAO,CAAEU,KAAM,eAAwBvD,KAAMtB,EAAU,sBACzD,KAAK,iCACH,MAAO,CAAE6E,KAAM,eAAwBvD,KAAMtB,EAAU,kBACzD,KAAK,cACH,MAAO,CACL6E,KAAM,UACNvD,KAAMiD,EAAgBS,qBAAqBL,EAAQC,EAAYF,IAEnE,KAAK,oCACH,MAAO,CAAEG,KAAM,UAAmBvD,KAAMtB,EAAU0E,EAAgB,uBAAyB,4BAC7F,KAAK,iBACH,MAAO,CACLG,KAAM,UACNvD,KAAMiD,EAAgBS,qBAAqBL,EAAQC,EAAYF,IAEnE,KAAK,YACH,MAAO,CAAEG,KAAM,UAAmBvD,KAAMtB,EAAU,mBACpD,KAAK,sBACH,MAAO,CAAE6E,KAAM,UAAmBvD,KAAMtB,EAAU,aACpD,QACE,MAAO,CAAC,EAEd,EAEAiF,eAAgB,SAACpB,GACf,IAAQqB,EAAgDrB,EAAhDqB,eAAgBC,EAAgCtB,EAAhCsB,oBAAqBC,EAAWvB,EAAXuB,OAC7C,IAAKF,IAAmBC,EACtB,OAAOZ,EAAgBC,sBAAsBX,GAE/C,IAAKqB,EACH,MAAO,CAAEL,KAAM,UAAmBvD,KAAMtB,EAAU,aAEpD,IAAMqF,EAAU,YAAmBH,GAC7BI,EAAgB,gBAAuBJ,EAAgB,IAAIK,KAAQ,OAEzE,IAAKJ,EAAqB,CACxB,IAAI,EAAOE,EACPrF,EAAU,eACVA,EAAU,SAAU,CAAEwF,KAAMF,IAKhC,OAHIF,IAAW,cACb,EAAOpF,EAAU,YAEZ,CAAE6E,KAAM,WAAoBvD,KAAA,EACpC,CAED,IAAIA,EAAO+D,EACPrF,EAAU,uBACVA,EAAU,iBAAkB,CAAEwF,KAAMF,IAKxC,OAHIF,IAAW,cACb9D,EAAOtB,EAAU,oBAEZ,CAAE6E,KAAM,UAAmBvD,KAAAA,EACpC,EAEA0D,qBAAoB,SAACS,EAAmBb,EAAyBF,G,MAC/D,IAAKe,IAAUb,EACb,OAAO,KAET,GAAIF,EACF,OAAO1E,EAAU,wBAEnB,IAAK,gBAAwByF,GAC3B,OAAOzF,EAAU,oBAEnB,IAAM0F,EAAc,2BAA4D,QAAnB,EAAAD,EAAME,qBAAa,eAAEC,OAKlF,GAAIF,IAAgBA,EAAYG,UAC9B,OAAO7F,EAAU,cAEnB,IAEI8F,EACAC,EAE8B,EAL5BC,EAAS,cAAsBP,GAGF,E,64BAAA,CAEXb,GAAU,IAAlC,IAAK,EAAL,qBAAoC,KAAzBiB,EAAS,UAIbC,GAAgBD,EAAUD,MAAQE,EAAaF,SAClDE,EAAeD,GAKbH,GAAeG,EAAUD,OAASF,EAAYG,WAM9CG,GAAUH,EAAUG,OAAOJ,MAAQI,EAAOJ,SAMzCG,GAAuBF,EAAUD,MAAQG,EAAoBH,SAChEG,EAAsBF,EACzB,CAED,+BAGA,OAAKE,EAQqB,IAAtBnB,EAAWqB,OACNjG,EAAU,iBAMf+F,EAAoBH,QAAUE,EAAaF,MACtC5F,EAAU,eAAgB,CAAE6F,UAAWC,EAAaI,OAEtDlG,EAAU,iBAAkB,CAAE6F,UAAWE,EAAoBG,OAjB3DlG,EAAU,YAkBrB,EAEAmG,uBAAsB,SAAChC,GAMrB,OAAIA,EAAQiC,aAAejC,EAAQkC,mBAC1B,YAELlC,EAAQmC,gBACH,QAEF,SACT,E,qRCjLF,IACMtG,EAAY,qBADA,yCAQZ,SAAUuG,EAAkCrG,G,UAC1CsG,GAAS,SACTC,EAAQ,kBAA4B,aAAuBvG,EAAMsC,UAElB,G,EAArB,YAAe,G,EAAM,E,o4BAA7Cf,EAAO,KAAEiF,EAAU,KAEFjE,GAAgB,OAAoB,CAC3DuB,SAAoB,QAAV,EAAAyC,EAAMtE,YAAI,eAAEiB,SAASuD,aADzBrC,gBAsBFL,EAASwC,EAAMG,aAErB,OACE,gBAAC,IAAK,CACJC,MAAO7G,EAAU,SACjB8G,WAAY5G,EAAM4G,WAClBC,oBAAqB9C,GAErB,gBAAC,IAAkB,CACjBxC,QAASA,EACTnB,QAAS,CACPC,gBAAiBP,EAAU,SAC3BQ,aAAc,CACZR,EAAU,kBACVA,EAAU,mBACVA,EAAU,0BAEZmB,gBAAiBnB,EAAU,mBAC3B2B,aAAc3B,EAAU,WAE1B0B,SAtCN,W,MACEgF,GAAW,GAEXjE,EAAsB,QAAV,EAAAgE,EAAMtE,YAAI,eAAEK,SAASwE,KAAK,WACpCN,GAAW,GACXF,EAAOS,QAAQjH,EAAU,kBACzBE,EAAM4G,aAEF5G,EAAMgH,iBACR,aAAsBhH,EAAMgH,gBAEhC,GAAE,MAAO,WACPV,EAAOW,MAAMnH,EAAU,gBACzB,GAAE,QAAS,WACT0G,GAAW,EACb,EACF,IA0BF,C","sources":["file:///app/packages/libs/shared/src/apps/share-v2/components/delete-share-content/DeleteShareContent.tsx","file:///app/packages/libs/shared/src/apps/share-v2/enums/SharePrivacy.ts","file:///app/packages/libs/shared/src/apps/share-v2/flight-requests/ShareRequests.ts","file:///app/packages/libs/shared/src/apps/share-v2/hooks/useShareLinkActions.ts","file:///app/packages/libs/shared/src/apps/share-v2/utils/ShareLinkHelper.ts","file:///app/packages/libs/shared/src/apps/share-v2/views/delete-legacy-share-confirmation-view/DeleteLegacyShareConfirmationView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Checkbox } from 'libs/shared/components/forms/form-checkbox/Checkbox';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\n\nconst namespace = 'sharev2.deleteShareContent';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport interface DeleteShareContentProps {\n loading: boolean;\n phrases: {\n leadingSentence: string;\n bulletPoints: string[];\n acknowledgement: string;\n deleteButton: string;\n backButton?: string;\n };\n onDelete: () => void;\n onBack?: () => void;\n}\n\nexport function DeleteShareContent(props: DeleteShareContentProps) {\n const [ ack, setAck ] = React.useState(false);\n\n function onDelete() {\n if (!ack || props.loading)\n return;\n\n props.onDelete();\n }\n\n return (\n <div className='d-flex flex-column gap-3'>\n <p className='m-0'>{props.phrases.leadingSentence}</p>\n <ul className='m-0'>\n {props.phrases.bulletPoints.map((phrase, index) => (\n <li key={index}>\n {phrase}\n </li>\n ))}\n </ul>\n <Checkbox\n id='ack'\n checked={ack}\n onChange={e => setAck(e.target.checked)}\n label={props.phrases.acknowledgement}\n />\n <PopupButtons>\n {props.onBack && (\n <PopupButtons.Cancel\n onClick={props.onBack}\n text={props.phrases.backButton ?? getPhrase('backButton')}\n variant='link'\n />\n )}\n <PopupButtons.Submit\n onClick={onDelete}\n text={props.phrases.deleteButton}\n variant='danger'\n disabled={!ack || props.loading}\n showSpinner={props.loading}\n />\n </PopupButtons>\n </div>\n );\n}","export enum SharePrivacy {\n Public = 'Public',\n PinCode = 'PinCode',\n PasswordProtected = 'PasswordProtected',\n ProtectedOverrideRestriction = 'ProtectedOverrideRestriction',\n JustMySchoolOverrideRestriction = 'JustMySchoolOverrideRestriction',\n Protected = 'Protected',\n JustMySchool = 'JustMySchool',\n Direct = 'Direct'\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { ShareType } from 'libs/shared/apps/share-v2/enums/ShareType';\nimport { CreateShareLinkRequest } from 'libs/shared/apps/share-v2/interfaces/CreateShareLinkRequest';\nimport { CreateShareRequest } from 'libs/shared/apps/share-v2/interfaces/CreateShareRequest';\nimport { UpdateShareRequest } from 'libs/shared/apps/share-v2/interfaces/UpdateShareRequest';\n\nconst normalizeOptions: Flight.NormalizeOptions = {\n namespace: 'share-v2'\n};\n\nexport interface GetSentSharesParams {\n cursor?: string;\n scopeId?: string;\n objectTypeId?: number;\n type?: ShareType[];\n}\n\nexport const ShareRequests = {\n createShare(\n data: CreateShareRequest\n ): Flight.Request {\n return {\n url: '{gateway}/v2/shares',\n key: 'create:share-v2',\n type: HttpVerbs.POST,\n data,\n normalizeOptions,\n invalidationKeys: [ 'sent:share-v2', 'get:share-v2:shares:object' ]\n };\n },\n\n updateShare(\n shareId: string,\n data: UpdateShareRequest\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}`,\n key: `update:share-v2`,\n type: HttpVerbs.PUT,\n data,\n normalizeOptions,\n invalidationKeys: [ 'share-v2:permanent-link:object', `share-v2:${shareId}`, 'get:share-v2:shares:object' ]\n };\n },\n \n deleteShare(\n shareId: string\n ): Flight.Request {\n return {\n type: HttpVerbs.DELETE,\n url: `{gateway}/v2/shares/${shareId}`,\n key: `delete:share-v2`,\n normalizeOptions,\n invalidationKeys: [ 'share-v2:permanent-link:object', 'sent:share-v2', `share-v2:${shareId}`, 'get:share-v2:shares:object' ]\n };\n },\n\n getShare(\n shareId: string\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}`,\n key: `share-v2:${shareId}`,\n bootstrapName: `share-v2:${shareId}`,\n type: HttpVerbs.GET,\n normalizeOptions\n };\n },\n\n getSentShares(\n params: GetSentSharesParams = {}\n ): Flight.Request {\n const key = Object.values(params).sort().join(':');\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/sent', params),\n key: `sent:share-v2:${key}`,\n type: HttpVerbs.GET,\n normalize: false\n };\n },\n\n getShareLink(\n id: string\n ): Flight.Request {\n return {\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/permanent-link', { objectId: id }),\n key: `share-v2:permanent-link:object:${id}`,\n normalizeOptions\n };\n },\n\n createShareLink(\n data: CreateShareLinkRequest\n ): Flight.Request {\n return {\n type: HttpVerbs.POST,\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/permanent-link', { ...data }),\n key: `create:share-v2:permanent-link:object:${data.objectId}`,\n invalidationKeys: [ `share-v2:permanent-link:object:${data.objectId}`, 'sent:share-v2', `get:share-v2:shares:object:${data.objectId}` ],\n normalizeOptions\n };\n },\n\n getPrivacy(id: string): Flight.Request {\n return {\n url: `{gateway}/v1/objects/${id}/access`,\n key: `privacy:${id}`,\n normalize: false\n };\n },\n \n getSharesByObjectId(\n objectId: string | number\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/objects/${objectId}`,\n key: `get:share-v2:shares:object:${objectId}`,\n type: HttpVerbs.GET,\n normalizeOptions\n };\n },\n\n createSharePincode(shareId: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}/pincode`,\n key: `create:share-v2:${shareId}:pincode`,\n type: HttpVerbs.POST\n };\n },\n\n getPincodeByShareId(shareId: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}/pincode`,\n key: `get:share-v2:${shareId}:pincode`\n };\n },\n\n getPincodeByCode(code: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/pincode?code=${code}`,\n key: `get:share-v2:pincode:${code}`\n };\n }\n};\n","import { Flight } from 'libs/common/react/index';\n\nimport { Logger } from 'libs/shared/utils/Logger';\n\nimport { SharePrivacy } from '../enums/SharePrivacy';\nimport { ShareRequests } from '../flight-requests/ShareRequests';\nimport { Share } from '../interfaces/Share';\nimport { SharePrivacyResponse } from '../interfaces/SharePrivacyResponse';\nimport { UpdateShareRequest } from '../interfaces/UpdateShareRequest';\nimport { ShareLinkHelper } from '../utils/ShareLinkHelper';\n\ninterface UseShareLinkActionsOptions {\n entityId: string;\n}\n\nexport function useShareLinkActions(options: UseShareLinkActionsOptions) {\n const fetchAsync = Flight.useGetFetchAsync();\n\n const entityPrivacy = Flight.useBasicFetch<SharePrivacyResponse>(ShareRequests.getPrivacy(options.entityId));\n\n function getCreateSharePrivacy() {\n const accessType = ShareLinkHelper.getShareLinkAccessType(entityPrivacy.data);\n\n return accessType === 'protected'\n ? SharePrivacy.Protected\n : SharePrivacy.JustMySchool;\n }\n\n function updateShareLink(shareId: string, data: UpdateShareRequest): Promise<Share> {\n // Legacy share privacy - if we try to update to this we should log & throw an error\n if (data.privacy === SharePrivacy.PasswordProtected) {\n Logger.logError(`Cannot update to legacy share privacy(${data.privacy}) for share with id ${shareId}`);\n\n throw new Error('invalid-share-privacy');\n }\n \n return fetchAsync<Share>(ShareRequests.updateShare(shareId, data));\n }\n\n function createShareLink(privacy?: SharePrivacy): Promise<Share> {\n const requestPrivacy = privacy ?? getCreateSharePrivacy();\n return fetchAsync<Share>(ShareRequests.createShareLink({ objectId: options.entityId, privacy: requestPrivacy }));\n }\n\n function deleteShareLink(shareId: string): Promise<void> {\n return fetchAsync(ShareRequests.deleteShare(shareId));\n }\n\n return {\n loaded: !!entityPrivacy.data,\n updateShareLink,\n createShareLink,\n deleteShareLink\n };\n}","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { SharePrivacy } from 'libs/shared/apps/share-v2/enums/SharePrivacy';\nimport type { SharePrivacyResponse } from 'libs/shared/apps/share-v2/interfaces/SharePrivacyResponse';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ShareLinkStatus } from 'libs/shared/enums/ShareLinkStatus';\nimport type { BaseObject, YearGroup } from 'libs/shared/interfaces';\nimport { RestrictionHelper } from 'libs/shared/utils/RestrictionHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nconst namespace = 'sharev2.utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface GetIconAndTextOptions {\n linkExpireDate: string;\n isPasswordProtected: boolean;\n privacy: SharePrivacy;\n status: ShareLinkStatus;\n entityTypeId: MasterType;\n hasStudentExp: boolean;\n entity: BaseObject;\n yearGroups: YearGroup[];\n}\n\ninterface GetPrivateIconAndTextOptions {\n privacy: SharePrivacy;\n entityTypeId: MasterType;\n hasStudentExp: boolean;\n entity: BaseObject;\n yearGroups: YearGroup[];\n}\n\nexport const ShareLinkHelper = {\n getPrivateIconAndText: (options: GetPrivateIconAndTextOptions) => {\n const { entityTypeId, privacy, hasStudentExp, entity, yearGroups } = options;\n \n if (entityTypeId === MasterType.Topic || entityTypeId === MasterType.Series)\n return { icon: cvSvgLibrary.VisibleOn, text: getPhrase(hasStudentExp ? 'justMySchoolTeachers' : 'justMySchoolDescription') };\n \n /**\n * This is mainly for typescript, privacy will be an array for playlists\n * but that is handled above\n */\n if (Array.isArray(privacy))\n return;\n \n switch (privacy) {\n case SharePrivacy.Public:\n return { icon: cvSvgLibrary.VisibleOn, text: getPhrase('publicDescription') };\n case SharePrivacy.ProtectedOverrideRestriction:\n return { icon: cvSvgLibrary.VisibleOn, text: getPhrase('clickViewOnly') };\n case SharePrivacy.Protected:\n return {\n icon: cvSvgLibrary.Lock,\n text: ShareLinkHelper.getRespectRatingText(entity, yearGroups, hasStudentExp)\n };\n case SharePrivacy.JustMySchoolOverrideRestriction:\n return { icon: cvSvgLibrary.Lock, text: getPhrase(hasStudentExp ? 'justMySchoolTeachers' : 'justMySchoolDescription') };\n case SharePrivacy.JustMySchool:\n return {\n icon: cvSvgLibrary.Lock,\n text: ShareLinkHelper.getRespectRatingText(entity, yearGroups, hasStudentExp)\n };\n case SharePrivacy.PinCode:\n return { icon: cvSvgLibrary.Lock, text: getPhrase('pinDescription') };\n case SharePrivacy.PasswordProtected:\n return { icon: cvSvgLibrary.Lock, text: getPhrase('password') };\n default:\n return {};\n }\n },\n\n getIconAndText: (options: GetIconAndTextOptions) => {\n const { linkExpireDate, isPasswordProtected, status } = options;\n if (!linkExpireDate && !isPasswordProtected)\n return ShareLinkHelper.getPrivateIconAndText(options);\n \n if (!linkExpireDate)\n return { icon: cvSvgLibrary.Lock, text: getPhrase('password') };\n \n const isToday = DateHelper.isToday(linkExpireDate);\n const dayDifference = DateHelper.diffBetween(linkExpireDate, new Date(), 'day');\n \n if (!isPasswordProtected) {\n let text = isToday\n ? getPhrase('expiryToday')\n : getPhrase('expiry', { days: dayDifference });\n \n if (status === ShareLinkStatus.Expired)\n text = getPhrase('expired');\n \n return { icon: cvSvgLibrary.Timer, text };\n }\n \n let text = isToday\n ? getPhrase('passwordExpiryToday')\n : getPhrase('passwordExpiry', { days: dayDifference });\n \n if (status === ShareLinkStatus.Expired)\n text = getPhrase('passwordExpired');\n \n return { icon: cvSvgLibrary.Lock, text };\n },\n\n getRespectRatingText(video: BaseObject, yearGroups: YearGroup[], hasStudentExp: boolean) {\n if (!video || !yearGroups)\n return null;\n \n if (hasStudentExp)\n return getPhrase('justMySchoolTeachers');\n \n if (!VideoHelper.isVideoType(video))\n return getPhrase('collectionRating');\n \n const restriction = RestrictionHelper.getWeightedRestriction(video._restrictions?.value);\n \n /**\n * Restrictions without a year level are teacher restricitons, which means only admins can see it.\n */\n if (restriction && !restriction.yearGroup)\n return getPhrase('onlyAdmins');\n \n const rating = VideoHelper.getRating(video);\n \n let maxYearGroup: YearGroup;\n let minAllowedYearGroup: YearGroup;\n \n for (const yearGroup of yearGroups) {\n /**\n * If our year level is our new highest so far, save it\n */\n if (!maxYearGroup || yearGroup.value > maxYearGroup.value)\n maxYearGroup = yearGroup;\n \n /**\n * If the restriction is higher than this year level, skip it.\n */\n if (restriction && yearGroup.value <= restriction.yearGroup)\n continue;\n \n /**\n * If therating is higher than this year level's rating value, skip it.\n */\n if (rating && yearGroup.rating.value < rating.value)\n continue;\n \n /**\n * If our year level is the new lowest so far, save it\n */\n if (!minAllowedYearGroup || yearGroup.value < minAllowedYearGroup.value)\n minAllowedYearGroup = yearGroup;\n }\n \n /**\n * If no year levels are allowed, then it's staff only.\n */\n if (!minAllowedYearGroup)\n return getPhrase('onlyStaff');\n \n \n /**\n * If there's only one year level, and it's allowed, then we can just\n * say that everyone in your school can access it.\n */\n if (yearGroups.length === 1)\n return getPhrase('clickViewOnly');\n \n /**\n * We differentiate the copy if it's the highest year level or not. \n * Basically if we need to say \"X and above\" or not.\n */\n if (minAllowedYearGroup.value === maxYearGroup.value)\n return getPhrase('maxYearGroup', { yearGroup: maxYearGroup.name });\n \n return getPhrase('yearGroupRange', { yearGroup: minAllowedYearGroup.name });\n },\n\n getShareLinkAccessType(privacy: SharePrivacyResponse): 'private' | 'owner' | 'protected' {\n /**\n * If an entity is not a ClickView content and they cannot manage access\n * settings of the entity (which they can if its their private entity)\n * it means that its a TV content\n */\n if (privacy.isTvContent || privacy.isClickViewContent)\n return 'protected';\n\n if (privacy.canManageAccess)\n return 'owner';\n\n return 'private';\n }\n};","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { DeleteShareContent } from 'libs/shared/apps/share-v2/components/delete-share-content/DeleteShareContent';\nimport { ShareRequests } from 'libs/shared/apps/share-v2/flight-requests/ShareRequests';\nimport { useShareLinkActions } from 'libs/shared/apps/share-v2/hooks/useShareLinkActions';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { PopupViewProps } from 'libs/shared/interfaces';\n\nconst namespace = 'sharev2.deleteLegacyShareConfirmation';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport interface DeleteLegacyShareConfirmationViewProps extends PopupViewProps {\n shareId: string;\n previousAppLink?: Core.AppLink;\n}\n\nexport function DeleteLegacyShareConfirmationView(props: DeleteLegacyShareConfirmationViewProps) {\n const alerts = useAlerts();\n const share = Flight.useBasicFetch<Share>(ShareRequests.getShare(props.shareId));\n\n const [ loading, setLoading ] = React.useState(false);\n\n const { deleteShareLink: deleteShare } = useShareLinkActions({\n entityId: share.data?.objectId.toString()\n });\n \n function onClickDelete() {\n setLoading(true);\n\n deleteShare(share.data?.shareId).then(() => {\n setLoading(false);\n alerts.success(getPhrase('deleteSuccess'));\n props.closePopup();\n\n if (props.previousAppLink) {\n AppLinkHelper.trigger(props.previousAppLink);\n }\n }).catch(() => {\n alerts.error(getPhrase('deleteFailed'));\n }).finally(() => {\n setLoading(false);\n });\n }\n\n const loaded = share.hasCompleted;\n\n return (\n <Popup\n title={getPhrase('title')}\n closePopup={props.closePopup}\n showLoadingSpinner={!loaded}\n >\n <DeleteShareContent\n loading={loading}\n phrases={{\n leadingSentence: getPhrase('intro'),\n bulletPoints: [\n getPhrase('loseAccessInfo'),\n getPhrase('loseAccessUsage'),\n getPhrase('removeFromStudentFeed')\n ],\n acknowledgement: getPhrase('acknowledgement'),\n deleteButton: getPhrase('delete')\n }}\n onDelete={onClickDelete}\n />\n </Popup>\n );\n}"],"names":["getPhrase","DeleteShareContent","props","ack","setAck","className","phrases","leadingSentence","bulletPoints","map","phrase","index","key","id","checked","onChange","e","target","label","acknowledgement","onBack","onClick","text","backButton","variant","loading","onDelete","deleteButton","disabled","showSpinner","SharePrivacy","normalizeOptions","namespace","ShareRequests","createShare","data","url","type","invalidationKeys","updateShare","shareId","deleteShare","getShare","bootstrapName","getSentShares","params","Object","values","sort","join","normalize","getShareLink","objectId","createShareLink","getPrivacy","getSharesByObjectId","createSharePincode","getPincodeByShareId","getPincodeByCode","code","useShareLinkActions","options","fetchAsync","entityPrivacy","entityId","loaded","updateShareLink","privacy","Error","requestPrivacy","deleteShareLink","ShareLinkHelper","getPrivateIconAndText","entityTypeId","hasStudentExp","entity","yearGroups","icon","Array","isArray","getRespectRatingText","getIconAndText","linkExpireDate","isPasswordProtected","status","isToday","dayDifference","Date","days","video","restriction","_restrictions","value","yearGroup","maxYearGroup","minAllowedYearGroup","rating","length","name","getShareLinkAccessType","isTvContent","isClickViewContent","canManageAccess","DeleteLegacyShareConfirmationView","alerts","share","setLoading","toString","hasCompleted","title","closePopup","showLoadingSpinner","then","success","previousAppLink","error"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[1199],{93479:(e,t,n)=>{n.d(t,{I:()=>i});var a=n(99940);function r(e,t,n){if(!t)return e;var a="".concat(e,":").concat(t.start,":").concat(t.end),r=Array.isArray(t.userId)?t.userId.sort().join(":"):t.userId,c=Array.isArray(t.groupId)?t.groupId.sort().join(":"):t.groupId,i=Array.isArray(t.customerId)?t.customerId.sort().join(":"):t.customerId;return r&&(a+=":".concat(r)),c&&(a+=":".concat(c)),i&&(a+=":".concat(i)),n&&(a+=":".concat(n)),a}function c(e,t,n){return{currentUserId:e.id,currentCustomerId:e.customerId,dateRange:t?{start:t.start,end:t.end}:void 0,userIds:null==t?void 0:t.userId,classroomsAndGroups:null==t?void 0:t.groupId,shareId:n}}var i={interactiveResultSet:function(e,t,n,i,l,o,s,u){return{url:l?"/api/domain/v3/analytics/interactives/".concat(e,"/metadata/").concat(t):"/api/domain/v2/analytics/interactives/".concat(e,"/metadata/").concat(t),key:r("interactive:result:set:".concat(e,":").concat(t,":").concat(l),i),data:c(n,i,l),type:a.k.POST,normalize:!1,success:o,error:s,always:u}},mark:function(e,t,n,r,c,i,l){return{url:"/api/domain/v1/analytics/answers/".concat(n),key:"mark:answer:".concat(n,":").concat(r.resultId),type:a.k.PUT,data:r,normalize:!1,invalidationKeys:"interactive:result:set:".concat(e,":").concat(t),success:c,error:i,always:l}},pendingReviews:function(e){return{url:"/api/domain/v1/analytics/interactives/pending-reviews/summary",key:"interactives:pending:reviews",type:a.k.POST,data:e}},interactiveResultsReport:function(e){return{url:"/api/domain/v3/analytics/interactives/report",key:"interactive:results:report",data:e,type:a.k.POST,normalize:!1}}}},18488:(e,t,n)=>{n.d(t,{o:()=>i});var a=n(99940),r=n(97395),c={namespace:"share-v2"},i={createShare:function(e){return{url:"{gateway}/v2/shares",key:"create:share-v2",type:a.k.POST,data:e,normalizeOptions:c,invalidationKeys:["sent:share-v2","get:share-v2:shares:object"]}},updateShare:function(e,t){return{url:"{gateway}/v2/shares/".concat(e),key:"update:share-v2",type:a.k.PUT,data:t,normalizeOptions:c,invalidationKeys:["share-v2:permanent-link:object","share-v2:".concat(e),"get:share-v2:shares:object"]}},deleteShare:function(e){return{type:a.k.DELETE,url:"{gateway}/v2/shares/".concat(e),key:"delete:share-v2",normalizeOptions:c,invalidationKeys:["share-v2:permanent-link:object","sent:share-v2","share-v2:".concat(e),"get:share-v2:shares:object"]}},getShare:function(e){return{url:"{gateway}/v2/shares/".concat(e),key:"share-v2:".concat(e),bootstrapName:"share-v2:".concat(e),type:a.k.GET,normalizeOptions:c}},getSentShares:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.values(e).sort().join(":");return{url:r._.urlBuilder("{gateway}/v2/shares/sent",e),key:"sent:share-v2:".concat(t),type:a.k.GET,normalize:!1}},getShareLink:function(e){return{url:r._.urlBuilder("{gateway}/v2/shares/permanent-link",{objectId:e}),key:"share-v2:permanent-link:object:".concat(e),normalizeOptions:c}},createShareLink:function(e){return{type:a.k.POST,url:r._.urlBuilder("{gateway}/v2/shares/permanent-link",Object.assign({},e)),key:"create:share-v2:permanent-link:object:".concat(e.objectId),invalidationKeys:["share-v2:permanent-link:object:".concat(e.objectId),"sent:share-v2","get:share-v2:shares:object:".concat(e.objectId)],normalizeOptions:c}},getPrivacy:function(e){return{url:"{gateway}/v1/objects/".concat(e,"/access"),key:"privacy:".concat(e),normalize:!1}},getSharesByObjectId:function(e){return{url:"{gateway}/v2/shares/objects/".concat(e),key:"get:share-v2:shares:object:".concat(e),type:a.k.GET,normalizeOptions:c}},createSharePincode:function(e){return{url:"{gateway}/v2/shares/".concat(e,"/pincode"),key:"create:share-v2:".concat(e,":pincode"),type:a.k.POST}},getPincodeByShareId:function(e){return{url:"{gateway}/v2/shares/".concat(e,"/pincode"),key:"get:share-v2:".concat(e,":pincode")}},getPincodeByCode:function(e){return{url:"{gateway}/v2/shares/pincode?code=".concat(e),key:"get:share-v2:pincode:".concat(e)}}}},39902:(e,t,n)=>{n.d(t,{FN:()=>p,SW:()=>f,fh:()=>v});var a=n(32735),r=n(20354),c=n(75896);function i(e){return function(e){if(Array.isArray(e))return o(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||l(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,t){if(e){if("string"==typeof e)return o(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}function u(e,t,n){return(t=function(e){var t=function(e){if("object"!=s(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==s(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var m=function(e,t){var n={};for(var a in e)Object.prototype.hasOwnProperty.call(e,a)&&t.indexOf(a)<0&&(n[a]=e[a]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(a=Object.getOwnPropertySymbols(e);r<a.length;r++)t.indexOf(a[r])<0&&Object.prototype.propertyIsEnumerable.call(e,a[r])&&(n[a[r]]=e[a[r]])}return n},d=50;function v(e,t){var n=c.m.chunk(e,d).map(function(e){return t(c.m.uniq(e))}),a=r.a.useBasicFetchAll(n),i=c.m.flatten(a.data),l=a.data.length?i.reduce(function(e,t){return Object.assign(Object.assign({},e),u({},t.id,t))},{}):null;return{itemsArr:i,items:l,isFetching:a.isFetching,hasCompleted:a.hasCompleted}}function p(e,t,n){var r=null!=n?n:function(e){return"object"===s(e)?e.id:e},c=f({getRequest:t,_getKey:n}),i=c.fetchItems,l=m(c,["fetchItems"]);return a.useEffect(function(){(null==e?void 0:e.length)&&i(e)},[null==e?void 0:e.map(r).join(",")]),l}function f(e){var t,n,o,m,v,p=null!==(t=e._getKey)&&void 0!==t?t:function(e){return"object"===s(e)?e.id:e},f=a.useRef(new Set),y=(m=a.useState([]),v=2,function(e){if(Array.isArray(e))return e}(m)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,c,i,l=[],o=!0,s=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;o=!1}else for(;!(o=(a=c.call(n)).done)&&(l.push(a.value),l.length!==t);o=!0);}catch(e){s=!0,r=e}finally{try{if(!o&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw r}}return l}}(m,v)||l(m,v)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),h=y[0],b=y[1],g=r.a.useBasicFetchAll(h),E=c.m.flatten(g.data),N=g.data.length?E.reduce(function(e,t){return Object.assign(Object.assign({},e),u({},p(t),t))},{}):null;return{hasFirstRequestCompleted:!!(null===(o=null===(n=g.responses)||void 0===n?void 0:n[0])||void 0===o?void 0:o.hasCompleted),itemsArr:E,items:N,isFetching:g.isFetching,fetchItems:function(t){if(null==t?void 0:t.length){var n=[];t.forEach(function(e){var t=p(e);f.current.has(t)||(n.push(e),f.current.add(t))}),n.length&&b(function(t){return[].concat(i(t),i(c.m.chunk(n,d).map(e.getRequest)))})}}}}},55219:(e,t,n)=>{n.d(t,{g:()=>k,F:()=>w});var a=n(32735),r=n(65858),c=n(9806),i=n(64249),l=n(15611),o=n(83345),s=n(62335),u=n(26339),m=n(4594),d=n(31908),v="shared.sharedObjectTitle";function p(e){var t,n,c,p=e.sharedObject,f=e.titleClassName,y=e.subTextClassName,h=function(){switch(p.typeId){case m.E.Series:return"series";case m.E.Playlist:return"playlist"}}(),b=null===(t=e.getObjectAppLink)||void 0===t?void 0:t.call(e,p);return p.name?d.M.isVideoType(p)&&!(null===(n=d.M.getCanBeConsumed(p))||void 0===n?void 0:n.canNavigate)?a.createElement("span",{className:"clamp-2 ".concat(null!=f?f:"")},p.name):a.createElement("div",null,d.M.isVideoType(p)&&a.createElement(u.$,{type:"series",video:p,appLink:"series"in p&&p.series?null===(c=e.getObjectAppLink)||void 0===c?void 0:c.call(e,p.series):null,analyticsOptions:{location:r.LZ.Insights},className:"d-inline clamp-1 ".concat(null!=y?y:"")}),h&&a.createElement(s.m,null,a.createElement(o.x,{namespace:v,phrase:h})),b?a.createElement(l.F,{appLink:b,className:"clamp-1",analyticsData:{id:p.id,name:p.name},analyticsOptions:{entity:i.I.getAnalyticsEntity(p.type),actionType:r.Vw.Click,location:r.LZ.MyShares}},a.createElement("span",{className:"clamp-2 ".concat(null!=f?f:"")},p.name)):a.createElement("span",{className:"clamp-2 ".concat(null!=f?f:"")},p.name)):a.createElement(o.x,{namespace:v,phrase:"videoUnavailable"})}var f=n(41889),y=n(76306),h=n(83914),b=n(54610),g=n(35223),E=n(86099);const N={thumbnailContainer:"XNQc8",tableRow:"R3dYa",viewCta:"ssCq6"};var S="myShares.tableRow";function k(e){return a.createElement("div",{className:"d-flex"},a.createElement("div",{className:"col-auto ".concat(N.thumbnailContainer)},a.createElement("p",{className:"fw-semibold mb-2"},e.heading)),a.createElement("div",{className:"".concat(e.isFirst?"d-flex":"d-none"," col align-items-center")},a.createElement("div",{className:"col-10 col-md-4"}),a.createElement("div",{className:"d-none d-md-flex col-6"},a.createElement("div",{className:"col-4"},a.createElement("p",{className:"fw-semibold mb-2"},a.createElement(o.x,{namespace:S,phrase:"viewsHeading"}))),a.createElement("div",{className:"col-3"},a.createElement("p",{className:"fw-semibold mb-2"},a.createElement(o.x,{namespace:S,phrase:"viewedByHeading"}))),a.createElement("div",{className:"col-5"},a.createElement("p",{className:"fw-semibold mb-2"},a.createElement(o.x,{namespace:S,phrase:"statusHeading"})))),a.createElement("div",{className:"col-2"})))}function w(e){var t,n=e.shareData,i=n.sharedObject,s=i.typeId===m.E.Playlist||i.typeId===m.E.Series,u=(0,E.pY)(n.share);return a.createElement("div",{className:"position-relative hover-bg-light-blue ".concat(N.tableRow," ").concat(null!==(t=e.className)&&void 0!==t?t:"")},a.createElement(l.F,{appLink:u,className:"p-2 cursor-pointer d-flex text-decoration-none"},a.createElement("div",{className:"col-auto ".concat(N.thumbnailContainer)},a.createElement(c.k,{object:i,showVideoMetadata:!0,locationContext:r.LZ.MyShares,imageOptions:{size:b.h2.Medium},showCollectionMask:!1,showVideoCount:!0,onlyCount:!0})),a.createElement("div",{className:"col d-flex align-items-center"},a.createElement("div",{className:"px-3 col-10 col-md-4"},a.createElement(p,{sharedObject:n.sharedObject})),a.createElement("div",{className:"d-none d-md-flex col-6"},a.createElement("div",{className:"d-flex align-items-center col-4"},s?a.createElement("p",{className:"mb-0"},"-"):a.createElement("p",{className:"mb-0"},a.createElement(o.x,{namespace:S,phrase:"views",options:{smartCount:n.share.viewCount}}))),a.createElement("div",{className:"d-flex align-items-center col-3"},s?a.createElement("p",{className:"mb-0"},"-"):a.createElement("div",{className:"d-flex align-items-center"},a.createElement(h.x,{svgName:g.vn.User,size:h.S.Standard,className:"me-2 svg-container"}),a.createElement("p",{className:"mb-0"},n.share.accessCount))),a.createElement("div",{className:"d-flex align-items-center col-5"},a.createElement(f.B,{className:"py-2",share:n.share,markingRequired:n.pendingReview>0}))))),a.createElement("div",{className:"position-absolute end-0 top-0 bottom-0 d-flex align-items-center pe-2"},a.createElement(l.F,{appLink:u,className:"me-4 text-info d-none ".concat(N.viewCta)},a.createElement(o.x,{namespace:S,phrase:"viewCta"})),a.createElement(y.m,{dropdownToggleSvgSize:h.S.Standard,actions:e.getObjectActions(n),dropdownToggleClassName:"btn btn-link"})))}},5056:(e,t,n)=>{n.d(t,{R:()=>f});var a=n(32735),r=n(23481),c=n(75896),i=n(110),l=n(31754),o=n(2510),s=n(4594);function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function m(e,t,n){return(t=function(e){var t=function(e){if("object"!=u(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==u(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var d=r.T.encloseNamespace("myShares.mySharesTable");function v(e){var t;if(e.type===o.y.Link||!(null===(t=null==e?void 0:e.recipients)||void 0===t?void 0:t.length))return e.dateCreated;var n=e.recipients.map(function(e){return e.dateCreated});return n.length?(n.sort(function(e,t){return i.O.isSame(e,t)?0:i.O.isAfter(e,t)?1:-2}),c.m.last(n)):""}var p=n(55219);function f(e){var t,n,r,c,i,u,f,y=(t=e.sentShares,n=e.sharedObjects,r=e.shareRecipients,c=!!e.groupByDateShared,i=e.interactivesPendingReview,u=[],f=null==i?void 0:i.reduce(function(e,t){return Object.assign(m({},t.interactiveId,t),e)},{}),t.forEach(function(e){var t,a=null==n?void 0:n[e.objectId],c=null;if(e.type===o.y.Classroom&&(c=[],null===(t=e.recipients)||void 0===t||t.forEach(function(e){var t=null==r?void 0:r[e.recipientId];t&&c.push(t)})),a){var i=a.typeId===s.E.Interactive&&(null==f?void 0:f[a.interactiveId]);u.push({share:e,sharedObject:a,shareRecipients:c,dateShared:v(e),pendingReview:null==i?void 0:i.pendingReviewCount,privacy:e.privacy})}}),c?l.x.groupByDateShared(u):m({},d("title"),u));return a.createElement(a.Fragment,null,Object.keys(y).map(function(t,n){return a.createElement("div",{key:n},a.createElement(p.g,{heading:t,isFirst:!e.hasDemoInsights&&0===n}),a.createElement("div",{className:"d-flex flex-column mb-4"},y[t].map(function(t,n){return a.createElement(p.F,{key:n,shareData:t,getObjectActions:e.getObjectActions,breakpoints:e.breakpoints,imageCdnUrl:e.imageCdnUrl,yearGroups:e.yearGroups})})))}))}},67467:(e,t,n)=>{n.d(t,{o:()=>u});var a=n(32735),r=n(23481),c=n(97958),i=n(99742),l=n(14070),o=n(97291),s=r.T.encloseNamespace("myShares.mySharesTableEmptyState");function u(){return a.createElement(c.u,null,a.createElement(c.u.Image,{src:i.W.EmptyStates.Share.SHARED_BY_ME,size:"small"}),a.createElement(c.u.Heading,null,s("heading")),a.createElement(c.u.Info,null,s("info")),a.createElement(c.u.Cta,{appLink:{application:o.O.DASHBOARD,action:l.e.Dashboard.HOME},text:s("cta")}))}},28001:(e,t,n)=>{n.d(t,{L:()=>l});var a=n(32735);const r={heading:"iWHol",thumbnailContainer:"zrcDh"};function c(e){return a.createElement("div",{className:"d-flex"},a.createElement("div",{className:"col-auto ".concat(r.thumbnailContainer)},a.createElement("div",{className:"partial-loading-background mb-2"}," ")),a.createElement("div",{className:"".concat(e.isFirst?"d-flex":"d-none"," col align-items-center")},a.createElement("div",{className:"col-10 col-md-4"}),a.createElement("div",{className:"d-none d-md-flex col-6"},a.createElement("div",{className:"col-4"},a.createElement("div",{className:"partial-loading-background mb-2 ".concat(r.heading)}," ")),a.createElement("div",{className:"col-3"},a.createElement("div",{className:"partial-loading-background mb-2 ".concat(r.heading)}," ")),a.createElement("div",{className:"col-5"},a.createElement("div",{className:"partial-loading-background mb-2 ".concat(r.heading)}," "))),a.createElement("div",{className:"col-2"})))}function i(){return a.createElement("div",{className:"p-2 d-flex"},a.createElement("div",{className:"col-auto ".concat(r.thumbnailContainer)},a.createElement("div",{className:"partial-loading-background rounded ratio ratio-16x9"})),a.createElement("div",{className:"col d-flex align-items-center"},a.createElement("div",{className:"px-3 col-10 col-md-4"},a.createElement("div",{className:"partial-loading-background w-75"}," ")),a.createElement("div",{className:"d-none d-md-flex col-6"},a.createElement("div",{className:"col-4"},a.createElement("div",{className:"partial-loading-background w-50"}," ")),a.createElement("div",{className:"col-3"},a.createElement("div",{className:"partial-loading-background w-50"}," ")),a.createElement("div",{className:"col-5"},a.createElement("div",{className:"partial-loading-background w-75"}," "))),a.createElement("div",{className:"col-2 d-flex justify-content-end align-items-center"},a.createElement("div",{className:"partial-loading-background w-25"}," "))))}function l(){return a.createElement(a.Fragment,null,a.createElement("div",null,a.createElement(c,{isFirst:!0}),a.createElement("div",{className:"d-flex flex-column rounded-3 mb-4 border"},a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null))),a.createElement("div",null,a.createElement(c,null),a.createElement("div",{className:"d-flex flex-column rounded-3 mb-4 border"},a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null))),a.createElement("div",null,a.createElement(c,null),a.createElement("div",{className:"d-flex flex-column rounded-3 mb-4 border"},a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null),a.createElement(i,null))))}},98623:(e,t,n)=>{n.d(t,{a:()=>y});var a=n(20354),r=n(1048),c=n(93479),i=n(30439),l=n(18488),o=n(21789),s=n(39151),u=n(1666),m=n(31949),d=n(39902),v=n(60115),p=n(31908);function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function y(e){var t,n,y=e.params,h=e.interactiveInsights,b=e.shouldFetch,g=a.a.useGetFetch(),E=a.a.useBasicFetch(m.N.currentUser()),N=a.a.useBasicFetch(s.L.config()),S=a.a.useBasicFetch((null===(t=E.data)||void 0===t?void 0:t.isAuthenticated)&&u.h.yearGroups(E.data.customerId)),k=function(e){return b&&l.o.getSentShares(Object.assign({cursor:e},y))},w=function(e){return g(k(e))},j=(0,v.K)(k,w),I=j.items,O=j.hasMore,x=j.isFetching,C=j.nextCursor,F=j.hasFirstPageCompleted,A=(0,d.FN)(null==I?void 0:I.map(function(e){return e.objectId.toString()}),i.o.sharedObjectsById),P=(0,d.FN)(o.x.getFlattenedRecipients(null!=I?I:[]).map(function(e){return e.recipientId.toString()}),function(e){return i.o.getRecipientsById(e,E.data.customerId)}),R=null==I?void 0:I.reduce(function(e,t){return Object.assign(Object.assign({},e),(n={},a=t.objectId,r=t,(a=function(e){var t=function(e){if("object"!=f(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=f(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==f(t)?t:t+""}(a))in n?Object.defineProperty(n,a,{value:r,enumerable:!0,configurable:!0,writable:!0}):n[a]=r,n));var n,a,r},{}),T=(0,d.FN)(h?r.t.values(A.items||[]):[],function(e){return c.I.pendingReviews({interactives:e.filter(p.M.isInteractive).map(function(e){var t;return{interactiveId:e.interactiveId,metadataId:e.id,shareId:null===(t=R[e.id])||void 0===t?void 0:t.shareId}}),filters:{currentCustomerId:E.data.customerId,currentUserId:E.data.id}})},function(e){return"".concat(e.id,":").concat("interactiveId"in e?e.interactiveId:"")}),B=x||A.isFetching||P.isFetching||T.isFetching||S.isFetching,z=!F||(null==I?void 0:I.length)&&!A.hasFirstRequestCompleted;return{sentShares:I,sharedObjects:A,shareRecipients:P,yearGroups:S.data,interactivesPendingReview:T,isFetching:B,showPartialLoading:z,nextCursor:C,hasMore:O,fetchNext:w,imageCdnUrl:null===(n=N.data)||void 0===n?void 0:n.imageCdnUrl}}}}]);
|
|
2
|
+
//# sourceMappingURL=1199-cf2cb206b5-lite.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts/1199-cf2cb206b5-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/utils/AnalyticsRequestUtils.ts","file:///app/packages/libs/shared/src/apps/analytics/flight-requests/InteractiveResultsRequests.ts","file:///app/packages/libs/shared/src/apps/share-v2/flight-requests/ShareRequests.ts","file:///app/packages/libs/shared/src/hooks/UseBatchFetch.ts","file:///app/packages/libs/shared/src/apps/share/components/shared-object-title/SharedObjectTitle.tsx","file:///app/packages/projects/lite/src/apps/my-shares/components/my-shares-table-row/my-shares-table-row.scss","file:///app/packages/projects/lite/src/apps/my-shares/components/my-shares-table-row/MySharesTableRow.tsx","file:///app/packages/projects/lite/src/apps/my-shares/components/my-shares-table/MySharesTableUtils.ts","file:///app/packages/projects/lite/src/apps/my-shares/components/my-shares-table/MySharesTable.tsx","file:///app/packages/projects/lite/src/apps/my-shares/components/my-shares-table/empty-state/MySharesTableEmptyState.tsx","file:///app/packages/projects/lite/src/apps/my-shares/components/my-shares-table/partial-loading/partial-my-shares-table.scss","file:///app/packages/projects/lite/src/apps/my-shares/components/my-shares-table/partial-loading/PartialMySharesTable.tsx","file:///app/packages/projects/lite/src/shared/hooks/useSharesTable.ts"],"sourcesContent":["import { AnalyticsRequestFilter } from 'libs/shared/interfaces';\n\nexport function getAnalyticsRequestKey(baseKey: string, filter: AnalyticsRequestFilter, extra?: string): string {\n if (!filter)\n return baseKey;\n\n let key = `${baseKey}:${filter.start}:${filter.end}`;\n\n const userIdKey = Array.isArray(filter.userId) ? filter.userId.sort().join(':') : filter.userId;\n const groupIdKey = Array.isArray(filter.groupId) ? filter.groupId.sort().join(':') : filter.groupId;\n const customerIdKey = Array.isArray(filter.customerId) ? filter.customerId.sort().join(':') : filter.customerId;\n\n if (userIdKey)\n key += `:${userIdKey}`;\n\n if (groupIdKey)\n key += `:${groupIdKey}`;\n\n if (customerIdKey)\n key += `:${customerIdKey}`;\n\n if (extra)\n key += `:${extra}`;\n\n return key;\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { Flight } from 'libs/common/react/index';\n\nimport { MarkInteractiveAnswer } from 'libs/shared/apps/analytics/interfaces/MarkInteractiveAnswer';\nimport { InteractiveResultsReport } from 'libs/shared/apps/analytics/interfaces/requests/InteractiveResultsReport';\nimport { InteractivesPendingReviewsRequest } from 'libs/shared/apps/analytics/interfaces/requests/InteractivesPendingReviewsRequest';\nimport { AnalyticsRequestFilter, CurrentUser, InteractiveResultSet } from 'libs/shared/interfaces';\nimport { getAnalyticsRequestKey } from 'libs/shared/utils/AnalyticsRequestUtils';\n\ninterface InteractiveResultFilters {\n currentUserId: string;\n currentCustomerId: string;\n dateRange?: { start: string, end: string }\n userIds?: string | string[];\n classroomsAndGroups?: string | string[];\n shareId?: string;\n}\n\nfunction getInteractiveResultFilters(\n currentUser: CurrentUser,\n filter: AnalyticsRequestFilter,\n shareId?: string\n): InteractiveResultFilters {\n return {\n currentUserId: currentUser.id,\n currentCustomerId: currentUser.customerId,\n dateRange: filter ? { start: filter.start, end: filter.end } : undefined,\n userIds: filter?.userId,\n classroomsAndGroups: filter?.groupId,\n shareId: shareId\n };\n}\n\nexport const InteractiveResultsRequests = {\n /** \n * This endpoint returns data with a lot of duplicated ids,\n * e.g. student answers to the same question will have the same id.\n * Because of that, we don't normalize.\n */\n interactiveResultSet(\n interactiveId: string,\n interactiveMetadataId: string,\n currentUser: CurrentUser,\n filter?: AnalyticsRequestFilter,\n shareId?: string,\n success?: (data: InteractiveResultSet) => void,\n error?: (data: any) => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: shareId ?\n `/api/domain/v3/analytics/interactives/${interactiveId}/metadata/${interactiveMetadataId}` :\n `/api/domain/v2/analytics/interactives/${interactiveId}/metadata/${interactiveMetadataId}`,\n key: getAnalyticsRequestKey(`interactive:result:set:${interactiveId}:${interactiveMetadataId}:${shareId}`, filter),\n data: getInteractiveResultFilters(currentUser, filter, shareId),\n type: HttpVerbs.POST,\n normalize: false,\n success,\n error,\n always\n };\n },\n \n /**\n * As the response from `interactiveResultSet` isn't normalised, we need to invalidate the cache\n * to update the results data.\n */\n mark(\n interactiveId: string,\n interactiveMetadataId: string,\n answerId: string,\n data: MarkInteractiveAnswer,\n success?: () => void,\n error?: (data: any) => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: `/api/domain/v1/analytics/answers/${answerId}`,\n key: `mark:answer:${answerId}:${data.resultId}`,\n type: HttpVerbs.PUT,\n data,\n normalize: false,\n invalidationKeys: `interactive:result:set:${interactiveId}:${interactiveMetadataId}`,\n success,\n error,\n always\n };\n },\n\n pendingReviews(data: InteractivesPendingReviewsRequest): Flight.Request {\n return {\n url: `/api/domain/v1/analytics/interactives/pending-reviews/summary`,\n key: `interactives:pending:reviews`,\n type: HttpVerbs.POST,\n data\n };\n },\n\n interactiveResultsReport(data: InteractiveResultsReport): Flight.Request {\n return {\n url: '/api/domain/v3/analytics/interactives/report',\n key: 'interactive:results:report',\n data,\n type: HttpVerbs.POST,\n normalize: false\n };\n }\n};","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { ShareType } from 'libs/shared/apps/share-v2/enums/ShareType';\nimport { CreateShareLinkRequest } from 'libs/shared/apps/share-v2/interfaces/CreateShareLinkRequest';\nimport { CreateShareRequest } from 'libs/shared/apps/share-v2/interfaces/CreateShareRequest';\nimport { UpdateShareRequest } from 'libs/shared/apps/share-v2/interfaces/UpdateShareRequest';\n\nconst normalizeOptions: Flight.NormalizeOptions = {\n namespace: 'share-v2'\n};\n\nexport interface GetSentSharesParams {\n cursor?: string;\n scopeId?: string;\n objectTypeId?: number;\n type?: ShareType[];\n}\n\nexport const ShareRequests = {\n createShare(\n data: CreateShareRequest\n ): Flight.Request {\n return {\n url: '{gateway}/v2/shares',\n key: 'create:share-v2',\n type: HttpVerbs.POST,\n data,\n normalizeOptions,\n invalidationKeys: [ 'sent:share-v2', 'get:share-v2:shares:object' ]\n };\n },\n\n updateShare(\n shareId: string,\n data: UpdateShareRequest\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}`,\n key: `update:share-v2`,\n type: HttpVerbs.PUT,\n data,\n normalizeOptions,\n invalidationKeys: [ 'share-v2:permanent-link:object', `share-v2:${shareId}`, 'get:share-v2:shares:object' ]\n };\n },\n \n deleteShare(\n shareId: string\n ): Flight.Request {\n return {\n type: HttpVerbs.DELETE,\n url: `{gateway}/v2/shares/${shareId}`,\n key: `delete:share-v2`,\n normalizeOptions,\n invalidationKeys: [ 'share-v2:permanent-link:object', 'sent:share-v2', `share-v2:${shareId}`, 'get:share-v2:shares:object' ]\n };\n },\n\n getShare(\n shareId: string\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}`,\n key: `share-v2:${shareId}`,\n bootstrapName: `share-v2:${shareId}`,\n type: HttpVerbs.GET,\n normalizeOptions\n };\n },\n\n getSentShares(\n params: GetSentSharesParams = {}\n ): Flight.Request {\n const key = Object.values(params).sort().join(':');\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/sent', params),\n key: `sent:share-v2:${key}`,\n type: HttpVerbs.GET,\n normalize: false\n };\n },\n\n getShareLink(\n id: string\n ): Flight.Request {\n return {\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/permanent-link', { objectId: id }),\n key: `share-v2:permanent-link:object:${id}`,\n normalizeOptions\n };\n },\n\n createShareLink(\n data: CreateShareLinkRequest\n ): Flight.Request {\n return {\n type: HttpVerbs.POST,\n url: UrlHelper.urlBuilder('{gateway}/v2/shares/permanent-link', { ...data }),\n key: `create:share-v2:permanent-link:object:${data.objectId}`,\n invalidationKeys: [ `share-v2:permanent-link:object:${data.objectId}`, 'sent:share-v2', `get:share-v2:shares:object:${data.objectId}` ],\n normalizeOptions\n };\n },\n\n getPrivacy(id: string): Flight.Request {\n return {\n url: `{gateway}/v1/objects/${id}/access`,\n key: `privacy:${id}`,\n normalize: false\n };\n },\n \n getSharesByObjectId(\n objectId: string | number\n ): Flight.Request {\n return {\n url: `{gateway}/v2/shares/objects/${objectId}`,\n key: `get:share-v2:shares:object:${objectId}`,\n type: HttpVerbs.GET,\n normalizeOptions\n };\n },\n\n createSharePincode(shareId: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}/pincode`,\n key: `create:share-v2:${shareId}:pincode`,\n type: HttpVerbs.POST\n };\n },\n\n getPincodeByShareId(shareId: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/${shareId}/pincode`,\n key: `get:share-v2:${shareId}:pincode`\n };\n },\n\n getPincodeByCode(code: string): Flight.Request {\n return {\n url: `{gateway}/v2/shares/pincode?code=${code}`,\n key: `get:share-v2:pincode:${code}`\n };\n }\n};\n","import React from 'react';\n\nimport { Flight } from 'libs/common/flight';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { BaseObject } from 'libs/shared/interfaces';\n\nconst CHUNK_SIZE = 50;\n\nexport interface UseBatchFetchResult<T extends BaseObject> {\n itemsArr: T[];\n items: { [key: string]: T} | null;\n isFetching: boolean;\n hasCompleted: boolean;\n}\n\n/**\n * Used to fetch multiple items by id with Flight. Will fetch 25 items at a time firing off multiple\n * requests if there are more than 25 items.\n * This will return items as null until we have all our items. Items will be returned as an object with\n * their ids as they key for easy mapping\n * \n * @param itemIds \n * @param getRequest \n */\nexport function useBatchFetch<T extends BaseObject>(\n itemIds: string[],\n getRequest: (ids: string[]) => Flight.Request\n): UseBatchFetchResult<T> {\n const chunks = ArrayHelper.chunk<string>(itemIds, CHUNK_SIZE);\n\n const requests = chunks.map(chunk => getRequest(ArrayHelper.uniq(chunk)));\n\n const responses = Flight.useBasicFetchAll<T[]>(requests);\n\n const itemsArr = ArrayHelper.flatten(responses.data);\n const items = responses.data.length\n ? itemsArr.reduce((acc, item) => ({ ...acc, [item.id]: item }), {})\n : null;\n\n return {\n itemsArr,\n items,\n isFetching: responses.isFetching,\n hasCompleted: responses.hasCompleted\n };\n}\n\n/**\n * When you need the useBatchFetch() behavior, but your list of objects to hydrate\n * will grow, such as on a scrolling page. useGrowingBatchFetch() will use local state\n * to determine what we've already built a request for and what items are new\n * as to not re-fetch items - Sha\n */\nexport function useGrowingBatchFetch<TResponse, TObjects = string>(\n objs: TObjects[],\n getRequest: (items: TObjects[]) => Flight.Request,\n _getKey?: (obj: TObjects) => string\n) {\n const getKey = _getKey ?? ((obj: any) => {\n if (typeof obj === 'object')\n return obj.id;\n\n return obj;\n });\n\n const { fetchItems, ...data } = useGrowingBatchFetchFunc<TResponse, TObjects>({ getRequest, _getKey });\n\n React.useEffect(() => {\n if (!objs?.length)\n return;\n\n fetchItems(objs);\n }, [objs?.map(getKey).join(',')]);\n\n return data;\n}\n\ninterface UseGrowingBatchFetchFuncOptions<TObjects> {\n getRequest: (items: TObjects[]) => Flight.Request;\n _getKey?: (obj: TObjects) => string;\n}\n\n/**\n * When you need the useGrowingBatchFetch() behaviour, but need to trigger the\n * fetch manually and update the objects - Nish \n */\nexport function useGrowingBatchFetchFunc<TResponse, TObjects = string>(\n options: UseGrowingBatchFetchFuncOptions<TObjects>\n) {\n const getKey = options._getKey ?? ((obj: any) => {\n if (typeof obj === 'object')\n return obj.id;\n\n return obj;\n });\n\n const fetchedItems = React.useRef<Set<string>>(new Set<string>());\n const [ requests, setRequests ] = React.useState<Flight.Request[]>([]);\n\n function fetchItems(objs: TObjects[]) {\n if (!objs?.length)\n return;\n\n const unfetchedItems: TObjects[] = [];\n \n objs.forEach(obj => {\n const key = getKey(obj);\n\n if (fetchedItems.current.has(key))\n return;\n\n unfetchedItems.push(obj);\n fetchedItems.current.add(key);\n });\n \n if (!unfetchedItems.length)\n return;\n \n setRequests(r => ([ ...r, ...ArrayHelper.chunk<TObjects>(unfetchedItems, CHUNK_SIZE).map(options.getRequest) ]));\n }\n\n const responses = Flight.useBasicFetchAll<TResponse[]>(requests);\n const itemsArr = ArrayHelper.flatten(responses.data);\n const items = responses.data.length\n ? itemsArr.reduce<Record<string, TResponse>>((acc, item) => ({ ...acc, [getKey(item)]: item }), {})\n : null;\n\n return {\n hasFirstRequestCompleted: !!responses.responses?.[0]?.hasCompleted,\n itemsArr,\n items,\n isFetching: responses.isFetching,\n fetchItems\n };\n}\n","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\n\nimport { LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { SharableEntity, ShareViewHelper } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { TitleSubText } from 'libs/shared/components/title-sub-text/TitleSubText';\nimport { VideoSubText } from 'libs/shared/components/video-sub-text/VideoSubText';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { BaseObject } from 'libs/shared/interfaces';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nconst namespace = 'shared.sharedObjectTitle';\n\ninterface SharedObjectTitleProps {\n sharedObject: SharableEntity;\n getObjectAppLink?: (object: BaseObject) => Core.AppLink;\n titleClassName?: string;\n subTextClassName?: string;\n}\n\nexport function SharedObjectTitle(props: SharedObjectTitleProps) {\n const { sharedObject, titleClassName, subTextClassName } = props;\n const subTextPhrase = getSubTextPhrase();\n const titleAppLink = props.getObjectAppLink?.(sharedObject);\n\n if (!sharedObject.name) {\n return <Text namespace={namespace} phrase='videoUnavailable' />;\n }\n\n if (VideoHelper.isVideoType(sharedObject) && !VideoHelper.getCanBeConsumed(sharedObject)?.canNavigate) {\n return (\n <span className={`clamp-2 ${titleClassName ?? ''}`}>\n {sharedObject.name}\n </span>\n );\n }\n\n function getSubTextPhrase(): string {\n switch (sharedObject.typeId) {\n case MasterType.Series: return 'series';\n case MasterType.Playlist: return 'playlist';\n }\n }\n\n return (\n <div>\n {VideoHelper.isVideoType(sharedObject) && (\n <VideoSubText\n type='series'\n video={sharedObject}\n appLink={'series' in sharedObject && sharedObject.series ? props.getObjectAppLink?.(sharedObject.series) : null}\n analyticsOptions={{ location: LocationContext.Insights }}\n className={`d-inline clamp-1 ${subTextClassName ?? ''}`}\n />\n )}\n\n { subTextPhrase &&\n <TitleSubText>\n <Text namespace={namespace} phrase={subTextPhrase} />\n </TitleSubText>\n }\n\n { titleAppLink ? (\n <AppLink\n appLink={titleAppLink}\n className='clamp-1'\n analyticsData={{ id: sharedObject.id, name: sharedObject.name }}\n analyticsOptions={{\n entity: ShareViewHelper.getAnalyticsEntity(sharedObject.type),\n actionType: UserAction.Click,\n location: LocationContext.MyShares\n }}\n >\n <span className={`clamp-2 ${titleClassName ?? ''}`}>\n {sharedObject.name}\n </span>\n </AppLink>\n ) : (\n <span className={`clamp-2 ${titleClassName ?? ''}`}>\n {sharedObject.name}\n </span>\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"thumbnailContainer\":\"XNQc8\",\"tableRow\":\"R3dYa\",\"viewCta\":\"ssCq6\"};","import React from 'react';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { SharedObjectImage } from 'libs/shared/apps/share/components/shared-object-image/SharedObjectImage';\nimport { SharedObjectTitle } from 'libs/shared/apps/share/components/shared-object-title/SharedObjectTitle';\nimport { ShareStatusIndicator } from 'libs/shared/apps/share-v2/components/share-status-indicator/ShareStatusIndicator';\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { ActionsDropdown } from 'libs/shared/components/actions/ActionsDropdown';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { YearGroup } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { getInsightsOverviewAppLink } from 'shared/utils/ObjectAppLinkHelper';\n\nimport { MySharesTableData } from 'apps/my-shares/components/my-shares-table/MySharesTableUtils';\n\nimport styles from './my-shares-table-row.scss';\n\nconst namespace = 'myShares.tableRow';\n\ninterface MySharesTableHeadingProps {\n heading: string;\n isFirst: boolean;\n}\n\nexport function MySharesTableHeading(props: MySharesTableHeadingProps) {\n return (\n <div className='d-flex'>\n <div className={`col-auto ${styles.thumbnailContainer}`}>\n <p className='fw-semibold mb-2'>{props.heading}</p>\n </div>\n \n <div className={`${props.isFirst ? 'd-flex' : 'd-none'} col align-items-center`}>\n <div className='col-10 col-md-4' />\n\n <div className='d-none d-md-flex col-6'>\n <div className='col-4'>\n <p className='fw-semibold mb-2'><Text namespace={namespace} phrase='viewsHeading' /></p>\n </div>\n\n <div className='col-3'>\n <p className='fw-semibold mb-2'><Text namespace={namespace} phrase='viewedByHeading' /></p>\n </div>\n\n <div className='col-5'>\n <p className='fw-semibold mb-2'><Text namespace={namespace} phrase='statusHeading' /></p>\n </div>\n </div>\n\n <div className='col-2' />\n </div>\n </div>\n );\n}\n\ninterface MySharesTableRowProps extends React.PropsWithChildren {\n shareData: MySharesTableData;\n breakpoints?: Breakpoints;\n getObjectActions: (row: MySharesTableData) => ActionOptions[];\n yearGroups: YearGroup[];\n imageCdnUrl: string;\n className?: string;\n}\n\nexport function MySharesTableRow(props: MySharesTableRowProps) {\n const { shareData } = props;\n const sharedObject = shareData.sharedObject;\n const isCollection = sharedObject.typeId === MasterType.Playlist || sharedObject.typeId === MasterType.Series;\n const appLink = getInsightsOverviewAppLink(shareData.share);\n\n function renderViewCount() {\n if (isCollection)\n return <p className='mb-0'>-</p>;\n\n return (\n <p className='mb-0'>\n <Text namespace={namespace} phrase='views' options={{ smartCount: shareData.share.viewCount }} />\n </p>\n );\n }\n\n function renderViewedBy() {\n if (isCollection)\n return <p className='mb-0'>-</p>;\n\n return (\n <div className='d-flex align-items-center'>\n <SvgContainer svgName={cvSvgLibrary.User} size={SvgContainerSize.Standard} className='me-2 svg-container' />\n <p className='mb-0'>{shareData.share.accessCount}</p>\n </div>\n );\n }\n\n return (\n <div className={`position-relative hover-bg-light-blue ${styles.tableRow} ${props.className ?? ''}`}>\n <AppLink appLink={appLink} className={`p-2 cursor-pointer d-flex text-decoration-none`}>\n <div className={`col-auto ${styles.thumbnailContainer}`}>\n <SharedObjectImage\n object={sharedObject}\n showVideoMetadata\n locationContext={LocationContext.MyShares}\n imageOptions={{ size: ImageSize.Medium }}\n showCollectionMask={false}\n showVideoCount\n onlyCount\n />\n </div>\n \n <div className='col d-flex align-items-center'>\n <div className='px-3 col-10 col-md-4'>\n <SharedObjectTitle sharedObject={shareData.sharedObject} />\n </div>\n\n <div className='d-none d-md-flex col-6'>\n <div className='d-flex align-items-center col-4'>\n {renderViewCount()}\n </div>\n\n <div className='d-flex align-items-center col-3'>\n {renderViewedBy()}\n </div>\n\n <div className='d-flex align-items-center col-5'>\n <ShareStatusIndicator\n className='py-2'\n share={shareData.share}\n markingRequired={shareData.pendingReview > 0}\n />\n </div>\n </div>\n </div>\n </AppLink>\n <div className='position-absolute end-0 top-0 bottom-0 d-flex align-items-center pe-2'>\n <AppLink appLink={appLink} className={`me-4 text-info d-none ${styles.viewCta}`}>\n <Text namespace={namespace} phrase='viewCta' />\n </AppLink>\n <ActionsDropdown\n dropdownToggleSvgSize={SvgContainerSize.Standard}\n actions={props.getObjectActions(shareData)}\n dropdownToggleClassName='btn btn-link'\n />\n </div>\n </div>\n );\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { InteractivesPendingReviews } from 'libs/shared/apps/analytics/interfaces/response/InteractivesPendingReviewsResponse';\nimport { ShareHelper } from 'libs/shared/apps/share/utils/ShareHelper';\nimport { SharableEntity, SharableRecipient } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { SharePrivacy } from 'libs/shared/apps/share-v2/enums/SharePrivacy';\nimport { ShareType } from 'libs/shared/apps/share-v2/enums/ShareType';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { InteractiveMetadata } from 'libs/shared/interfaces';\n\nconst namespace = 'myShares.mySharesTable';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getDateShared(share: Share): string {\n if (share.type === ShareType.Link || !share?.recipients?.length)\n return share.dateCreated;\n\n const datesCreated = share.recipients.map(r => r.dateCreated);\n\n if (!datesCreated.length)\n return '';\n\n datesCreated.sort((date1, date2) => {\n if (DateHelper.isSame(date1, date2))\n return 0;\n\n return DateHelper.isAfter(date1, date2) ? 1 : -2;\n });\n\n return ArrayHelper.last(datesCreated);\n}\n\nexport interface MySharesTableData {\n share: Share;\n sharedObject: SharableEntity;\n dateShared: string;\n shareRecipients?: SharableRecipient[];\n pendingReview?: number;\n privacy?: SharePrivacy;\n}\n\ntype TableDataGroupings = { [date: string]: MySharesTableData[] };\n\nexport function useGetMySharesData(\n sentShares: Share[],\n sharedObjects: Record<string, SharableEntity>,\n shareRecipients: Record<string, SharableRecipient>,\n groupByDate: boolean,\n interactivesPendingReviews: InteractivesPendingReviews[]\n): TableDataGroupings {\n const tableData: MySharesTableData[] = [];\n\n const interactivesPendingReviewsMap = interactivesPendingReviews\n ?.reduce<Record<string, InteractivesPendingReviews>>(\n (map, obj) => ({ [obj.interactiveId]: obj, ...map }),\n {}\n );\n\n sentShares.forEach(s => {\n const sharedObject = sharedObjects?.[s.objectId];\n\n let recipients: SharableRecipient[] | null = null;\n\n if (s.type === ShareType.Classroom) {\n recipients = [];\n\n s.recipients?.forEach(r => {\n const recipient = shareRecipients?.[r.recipientId];\n\n if (recipient)\n recipients.push(recipient);\n });\n }\n\n // Skip if we don't have access to the shared object (e.g. if it's been deleted)\n if (sharedObject) {\n const pendingReview = sharedObject.typeId === MasterType.Interactive &&\n interactivesPendingReviewsMap?.[(sharedObject as InteractiveMetadata).interactiveId];\n\n tableData.push({\n share: s,\n sharedObject,\n shareRecipients: recipients,\n dateShared: getDateShared(s),\n pendingReview: pendingReview?.pendingReviewCount,\n privacy: s.privacy\n });\n }\n });\n\n if (!groupByDate)\n return { [getPhrase('title')]: tableData };\n\n return ShareHelper.groupByDateShared(tableData);\n}","import React from 'react';\n\nimport { InteractivesPendingReviews } from 'libs/shared/apps/analytics/interfaces/response/InteractivesPendingReviewsResponse';\nimport { SharableEntity, SharableRecipient } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { YearGroup } from 'libs/shared/interfaces';\n\nimport { MySharesTableData, useGetMySharesData } from 'apps/my-shares/components/my-shares-table/MySharesTableUtils';\nimport { MySharesTableHeading, MySharesTableRow } from 'apps/my-shares/components/my-shares-table-row/MySharesTableRow';\n\ninterface MySharesTableProps {\n sentShares: Share[];\n sharedObjects: Record<string, SharableEntity>;\n shareRecipients: Record<string, SharableRecipient>;\n interactivesPendingReview: InteractivesPendingReviews[];\n getObjectActions: (row: MySharesTableData) => ActionOptions[];\n groupByDateShared?: boolean;\n showStatus?: boolean;\n showViewCount?: boolean;\n dependencies?: any[];\n breakpoints?: Breakpoints;\n hasDemoInsights?: boolean;\n imageCdnUrl: string;\n yearGroups: YearGroup[];\n}\n\nexport function MySharesTable(props: MySharesTableProps): JSX.Element {\n const data = useGetMySharesData(\n props.sentShares,\n props.sharedObjects,\n props.shareRecipients,\n !!props.groupByDateShared,\n props.interactivesPendingReview\n );\n\n return (\n <>\n {Object.keys(data).map((heading, headingIdx) => (\n <div key={headingIdx}>\n <MySharesTableHeading heading={heading} isFirst={!props.hasDemoInsights && headingIdx === 0} />\n\n <div className='d-flex flex-column mb-4'>\n {data[heading].map((shareData, index) => (\n <MySharesTableRow\n key={index}\n shareData={shareData}\n getObjectActions={props.getObjectActions}\n breakpoints={props.breakpoints}\n imageCdnUrl={props.imageCdnUrl}\n yearGroups={props.yearGroups}\n />\n ))}\n </div>\n </div>\n ))}\n </>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'myShares.mySharesTableEmptyState';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function MySharesTableEmptyState(): JSX.Element {\n return (\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.Share.SHARED_BY_ME} size='small' />\n <EmptyState.Heading>\n {getPhrase('heading')}\n </EmptyState.Heading>\n <EmptyState.Info>{getPhrase('info')}</EmptyState.Info>\n <EmptyState.Cta appLink={{ application: AppChannels.DASHBOARD, action: Actions.Dashboard.HOME }} text={getPhrase('cta')} />\n </EmptyState>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"heading\":\"iWHol\",\"thumbnailContainer\":\"zrcDh\"};","import React from 'react';\n\nimport styles from './partial-my-shares-table.scss';\n\ninterface PartialHeadingProps {\n isFirst?: boolean;\n}\n\nexport function PartialHeading(props: PartialHeadingProps) {\n return (\n <div className='d-flex'>\n <div className={`col-auto ${styles.thumbnailContainer}`}>\n <div className={`partial-loading-background mb-2`}> </div>\n </div>\n \n <div className={`${props.isFirst ? 'd-flex' : 'd-none'} col align-items-center`}>\n <div className='col-10 col-md-4' />\n\n <div className='d-none d-md-flex col-6'>\n <div className='col-4'>\n <div className={`partial-loading-background mb-2 ${styles.heading}`}> </div>\n </div>\n\n <div className='col-3'>\n <div className={`partial-loading-background mb-2 ${styles.heading}`}> </div>\n </div>\n\n <div className='col-5'>\n <div className={`partial-loading-background mb-2 ${styles.heading}`}> </div>\n </div>\n </div>\n\n <div className='col-2' />\n </div>\n </div>\n );\n}\n\nfunction PartialRow(): JSX.Element {\n return (\n <div className={`p-2 d-flex`}>\n <div className={`col-auto ${styles.thumbnailContainer}`}>\n <div className={`partial-loading-background rounded ratio ratio-16x9`} />\n </div>\n \n <div className='col d-flex align-items-center'>\n <div className='px-3 col-10 col-md-4'>\n <div className={`partial-loading-background w-75`}> </div>\n </div>\n\n <div className='d-none d-md-flex col-6'>\n <div className='col-4'>\n <div className={`partial-loading-background w-50`}> </div>\n </div>\n\n <div className='col-3'>\n <div className={`partial-loading-background w-50`}> </div>\n </div>\n\n <div className='col-5'>\n <div className={`partial-loading-background w-75`}> </div>\n </div>\n </div>\n\n <div className='col-2 d-flex justify-content-end align-items-center'>\n <div className={`partial-loading-background w-25`}> </div>\n </div>\n </div>\n </div>\n );\n}\n\nexport function PartialMySharesTable(): JSX.Element {\n return (\n <>\n <div>\n <PartialHeading isFirst={true} />\n\n <div className='d-flex flex-column rounded-3 mb-4 border'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n\n <div>\n <PartialHeading />\n\n <div className='d-flex flex-column rounded-3 mb-4 border'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n\n <div>\n <PartialHeading />\n\n <div className='d-flex flex-column rounded-3 mb-4 border'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n </>\n );\n}","import { Flight } from 'libs/common/react/index';\nimport { ObjectHelper } from 'libs/common/react/utils/ObjectHelper';\n\nimport { InteractiveResultsRequests } from 'libs/shared/apps/analytics/flight-requests/InteractiveResultsRequests';\nimport { InteractivesPendingReviews } from 'libs/shared/apps/analytics/interfaces/response/InteractivesPendingReviewsResponse';\nimport { ShareRequests as ShareRequestsV1 } from 'libs/shared/apps/share/flight-requests/ShareRequests';\nimport { SharableRecipient } from 'libs/shared/apps/share/views/share/ShareViewHelper';\nimport { GetSentSharesParams, ShareRequests as ShareRequestsV2 } from 'libs/shared/apps/share-v2/flight-requests/ShareRequests';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { ShareHelper } from 'libs/shared/apps/share-v2/utils/ShareHelper';\nimport { SharableEntity } from 'libs/shared/apps/share-v2/utils/ShareViewHelper';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { UseBatchFetchResult, useGrowingBatchFetch } from 'libs/shared/hooks/UseBatchFetch';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { BaseObject, Config, CurrentUser, YearGroup } from 'libs/shared/interfaces';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nexport function getBatchFetchResultAsArray(result: UseBatchFetchResult<BaseObject>): BaseObject[] {\n return result.items ? Object.values(result.items) : [];\n}\n\ninterface UseSharesTableOptions {\n params?: GetSentSharesParams;\n interactiveInsights?: boolean;\n shouldFetch: boolean;\n}\n\nexport function useSharesTable({ params, interactiveInsights, shouldFetch }: UseSharesTableOptions) {\n const fetch = Flight.useGetFetch();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data?.isAuthenticated && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n\n /**\n * Fetch sent shares\n */\n const getRequest = (cursor?: string) => shouldFetch && ShareRequestsV2.getSentShares({\n cursor,\n ...params\n });\n const fetchNext = (cursor?: string) => fetch(getRequest(cursor));\n const {\n items: sentShares,\n hasMore,\n isFetching: isFetchingSentShares,\n nextCursor,\n hasFirstPageCompleted\n } = useInfiniteList<Share>(getRequest, fetchNext);\n\n /**\n * Fetch shared objects\n */\n const sharedObjects = useGrowingBatchFetch<SharableEntity>(\n sentShares?.map(obj => obj.objectId.toString()),\n ShareRequestsV1.sharedObjectsById\n );\n\n /**\n * Fetch recipients\n */\n const shareRecipients = useGrowingBatchFetch<SharableRecipient>(\n ShareHelper.getFlattenedRecipients(sentShares ?? []).map(obj => obj.recipientId.toString()),\n objs => (ShareRequestsV1.getRecipientsById(objs, currentUser.data.customerId))\n );\n\n /**\n * Fetch which interactives required marking\n */\n const shareLookup = sentShares\n ?.reduce<Record<string, Share>>((prev, next: Share) => ({ ...prev, [next.objectId]: next }), {});\n const interactivesPendingReview = useGrowingBatchFetch<InteractivesPendingReviews, SharableEntity>(\n interactiveInsights ? ObjectHelper.values(sharedObjects.items || []) : [],\n objs => InteractiveResultsRequests.pendingReviews({\n interactives: objs\n .filter(VideoHelper.isInteractive)\n .map(obj => ({\n interactiveId: obj.interactiveId,\n metadataId: obj.id,\n shareId: shareLookup[obj.id]?.shareId\n })),\n filters: {\n currentCustomerId: currentUser.data.customerId,\n currentUserId: currentUser.data.id\n }\n }),\n obj => `${obj.id}:${'interactiveId' in obj ? obj.interactiveId : ''}`\n );\n \n const isFetching = isFetchingSentShares\n || sharedObjects.isFetching\n || shareRecipients.isFetching\n || interactivesPendingReview.isFetching\n || yearGroups.isFetching;\n\n const showPartialLoading = !hasFirstPageCompleted || (sentShares?.length && !sharedObjects.hasFirstRequestCompleted);\n\n return {\n sentShares,\n sharedObjects,\n shareRecipients,\n yearGroups: yearGroups.data,\n interactivesPendingReview,\n isFetching,\n showPartialLoading,\n nextCursor,\n hasMore,\n fetchNext,\n imageCdnUrl: config.data?.imageCdnUrl\n };\n}"],"names":["getAnalyticsRequestKey","baseKey","filter","extra","key","start","end","userIdKey","Array","isArray","userId","sort","join","groupIdKey","groupId","customerIdKey","customerId","getInteractiveResultFilters","currentUser","shareId","currentUserId","id","currentCustomerId","dateRange","undefined","userIds","classroomsAndGroups","InteractiveResultsRequests","interactiveResultSet","interactiveId","interactiveMetadataId","success","error","always","url","data","type","HttpVerbs","normalize","mark","answerId","resultId","invalidationKeys","pendingReviews","interactiveResultsReport","normalizeOptions","namespace","ShareRequests","createShare","updateShare","deleteShare","getShare","bootstrapName","getSentShares","params","Object","values","getShareLink","objectId","createShareLink","getPrivacy","getSharesByObjectId","createSharePincode","getPincodeByShareId","getPincodeByCode","code","CHUNK_SIZE","useBatchFetch","itemIds","getRequest","requests","map","chunk","responses","itemsArr","items","length","reduce","acc","item","isFetching","hasCompleted","useGrowingBatchFetch","objs","_getKey","getKey","obj","useGrowingBatchFetchFunc","fetchItems","options","fetchedItems","Set","setRequests","hasFirstRequestCompleted","unfetchedItems","forEach","current","has","push","add","r","SharedObjectTitle","props","sharedObject","titleClassName","subTextClassName","subTextPhrase","typeId","MasterType","getSubTextPhrase","titleAppLink","getObjectAppLink","name","VideoHelper","canNavigate","className","VideoSubText","video","appLink","series","analyticsOptions","location","TitleSubText","Text","phrase","AppLink","analyticsData","entity","ShareViewHelper","actionType","MySharesTableHeading","heading","isFirst","MySharesTableRow","shareData","isCollection","share","SharedObjectImage","object","showVideoMetadata","locationContext","imageOptions","size","showCollectionMask","showVideoCount","onlyCount","smartCount","viewCount","SvgContainer","svgName","S","accessCount","ShareStatusIndicator","markingRequired","pendingReview","ActionsDropdown","dropdownToggleSvgSize","actions","getObjectActions","dropdownToggleClassName","getPhrase","LanguageService","getDateShared","ShareType","recipients","dateCreated","datesCreated","date1","date2","DateHelper","ArrayHelper","MySharesTable","sentShares","sharedObjects","shareRecipients","groupByDate","interactivesPendingReviews","tableData","interactivesPendingReviewsMap","groupByDateShared","interactivesPendingReview","s","recipient","recipientId","dateShared","pendingReviewCount","privacy","ShareHelper","keys","headingIdx","hasDemoInsights","index","breakpoints","imageCdnUrl","yearGroups","MySharesTableEmptyState","src","application","action","text","PartialHeading","PartialRow","PartialMySharesTable","useSharesTable","interactiveInsights","shouldFetch","fetch","config","isAuthenticated","cursor","fetchNext","hasMore","isFetchingSentShares","nextCursor","hasFirstPageCompleted","toString","shareLookup","prev","next","I","interactives","metadataId","filters","showPartialLoading"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[1502],{26136:(e,t,n)=>{n.d(t,{B:()=>c});var r=n(76198),a=n(23481),i=n(64818),o=a.T.encloseNamespace("shared.analyticsUtils");function c(e,t){return e?t?(0,r._8)((n=e.id,a=e.sessionId,c=+"".concat(n||function(e){if(!e)return 0;for(var t=0,n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t|=0;return Math.abs(t)}(a)).concat(Math.floor((new Date).getMinutes()/5)),{dictionaries:[r.O9,r.yd],separator:" ",length:2,style:"capital",seed:c})):i.l.getFullName(e)||o("anonUser"):o("anonUser");var n,a,c}},1619:(e,t,n)=>{n.d(t,{e:()=>b});var r=n(32735),a=n(23481),i=n(31453),o=n(12528),c=n(83914),l=n(35223),s=n(33518),u=n(2510);function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function d(e,t,n){return(t=function(e){var t=function(e){if("object"!=m(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==m(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=a.T.encloseNamespace("sharev2.shareAvatar"),y=d(d(d(d(d({},u.y.Open,l.vn.Classrooms),u.y.Link,l.vn.Link),u.y.Classroom,l.vn.Classrooms),u.y.Live,l.vn.Play),u.y.LegacyDirect,l.vn.Share),v=d(d(d(d(d({},u.y.Open,"blue"),u.y.Link,"black"),u.y.Classroom,"teal"),u.y.Live,"purple"),u.y.LegacyDirect,"indigo"),f=d(d(d(d(d({},u.y.Open,"openShareType"),u.y.Link,"linkShareType"),u.y.Classroom,"classroomShareType"),u.y.Live,"liveShareType"),u.y.LegacyDirect,"legacyDirectShareType");function b(e){var t,n;return r.createElement("div",{className:(0,i.A)("d-flex align-items-center gap-2",e.className)},r.createElement("div",null,r.createElement(o.f,{svgName:y[e.type],variant:v[e.type],textVariant:"white",svgWrapperClassName:"p-1",svgSize:null!==(t=e.svgSize)&&void 0!==t?t:c.S.Standard})),r.createElement("div",{className:"d-flex flex-column"},r.createElement("p",{className:"m-0"},function(e){var t=e.type,n=e.classroomName,r=e.additionalTitleText;if(t===u.y.Classroom&&n)return n;var a=p(f[t]);return r&&(a+=" "+r),a}(e)),!e.hideSubtitle&&r.createElement("span",{className:"text-secondary"},null!==(n=e.subtitleText)&&void 0!==n?n:function(e){var t=e.type,n=e.privacy,r=e.studentCount,a=void 0===r?0:r,i=e.classroomGroupCount,o=void 0===i?0:i;switch(t){case u.y.Classroom:return function(e,t){return e&&t?"".concat(p("classroomGroupCount",{smartCount:e}),", ").concat(p("studentSubTitle",{smartCount:t})):e?p("groupSubTitle",{smartCount:e}):t?p("studentSubTitle",{smartCount:t}):p("allStudentsSubTitle")}(o,a);case u.y.Open:return p("openShareTypeSubTitle");case u.y.Link:return function(e){return[s.e.JustMySchool,s.e.Protected].includes(e)?p("respectRatingsSubTitle"):e===s.e.JustMySchoolOverrideRestriction?p("anyoneInSchoolSubTitle"):e===s.e.ProtectedOverrideRestriction?p("anyoneSignedInSubTitle"):e===s.e.Public?p("anyoneWithLinkSubTitle"):e===s.e.PinCode?p("anyoneWithPinSubTitle"):void 0}(n);case u.y.Live:return p("liveShareTypeSubTitle");case u.y.LegacyDirect:return p("legacyDirectTypeSubTitle");default:return p("publicShareTypeSubTitle")}}(e))))}},33518:(e,t,n)=>{var r;n.d(t,{e:()=>r}),function(e){e.Public="Public",e.PinCode="PinCode",e.PasswordProtected="PasswordProtected",e.ProtectedOverrideRestriction="ProtectedOverrideRestriction",e.JustMySchoolOverrideRestriction="JustMySchoolOverrideRestriction",e.Protected="Protected",e.JustMySchool="JustMySchool",e.Direct="Direct"}(r||(r={}))},8233:(e,t,n)=>{n.d(t,{R:()=>p});var r=n(23481),a=n(110),i=n(33518),o=n(4594),c=n(49080),l=n(26361),s=n(35223),u=n(31908);function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var d=r.T.encloseNamespace("sharev2.utils"),p={getPrivateIconAndText:function(e){var t=e.entityTypeId,n=e.privacy,r=e.hasStudentExp,a=e.entity,c=e.yearGroups;if(t===o.E.Topic||t===o.E.Series)return{icon:s.vn.VisibleOn,text:d(r?"justMySchoolTeachers":"justMySchoolDescription")};if(!Array.isArray(n))switch(n){case i.e.Public:return{icon:s.vn.VisibleOn,text:d("publicDescription")};case i.e.ProtectedOverrideRestriction:return{icon:s.vn.VisibleOn,text:d("clickViewOnly")};case i.e.Protected:return{icon:s.vn.Lock,text:p.getRespectRatingText(a,c,r)};case i.e.JustMySchoolOverrideRestriction:return{icon:s.vn.Lock,text:d(r?"justMySchoolTeachers":"justMySchoolDescription")};case i.e.JustMySchool:return{icon:s.vn.Lock,text:p.getRespectRatingText(a,c,r)};case i.e.PinCode:return{icon:s.vn.Lock,text:d("pinDescription")};case i.e.PasswordProtected:return{icon:s.vn.Lock,text:d("password")};default:return{}}},getIconAndText:function(e){var t=e.linkExpireDate,n=e.isPasswordProtected,r=e.status;if(!t&&!n)return p.getPrivateIconAndText(e);if(!t)return{icon:s.vn.Lock,text:d("password")};var i=a.O.isToday(t),o=a.O.diffBetween(t,new Date,"day");if(!n){var l=i?d("expiryToday"):d("expiry",{days:o});return r===c.F.Expired&&(l=d("expired")),{icon:s.vn.Timer,text:l}}var u=i?d("passwordExpiryToday"):d("passwordExpiry",{days:o});return r===c.F.Expired&&(u=d("passwordExpired")),{icon:s.vn.Lock,text:u}},getRespectRatingText:function(e,t,n){var r;if(!e||!t)return null;if(n)return d("justMySchoolTeachers");if(!u.M.isVideoType(e))return d("collectionRating");var a=l.l.getWeightedRestriction(null===(r=e._restrictions)||void 0===r?void 0:r.value);if(a&&!a.yearGroup)return d("onlyAdmins");var i,o,c,s=u.M.getRating(e),p=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return m(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?m(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){c=!0,i=e},f:function(){try{o||null==n.return||n.return()}finally{if(c)throw i}}}}(t);try{for(p.s();!(c=p.n()).done;){var y=c.value;(!i||y.value>i.value)&&(i=y),a&&y.value<=a.yearGroup||s&&y.rating.value<s.value||(!o||y.value<o.value)&&(o=y)}}catch(e){p.e(e)}finally{p.f()}return o?1===t.length?d("clickViewOnly"):o.value===i.value?d("maxYearGroup",{yearGroup:i.name}):d("yearGroupRange",{yearGroup:o.name}):d("onlyStaff")},getShareLinkAccessType:function(e){return e.isTvContent||e.isClickViewContent?"protected":e.canManageAccess?"owner":"private"}}},40782:(e,t,n)=>{n.d(t,{I:()=>r,O:()=>l});var r,a=n(32735),i=n(2606),o=n(362);function c(e){var t=a.useCallback(function(t){if(t){var n=t.r.baseVal.value,r=2*Math.PI*n,a=r-e.percentage*r;t.style.strokeDasharray="".concat(r," ").concat(r),t.style.strokeDashoffset=a.toString()}},[e.percentage]);return a.createElement("svg",null,a.createElement("circle",{r:(0,i.pu)(e.size),className:o.Z.backgroundCircle}),!(0,i.zR)(e.percentage)&&a.createElement("circle",{ref:t,r:(0,i.pu)(e.size),className:(0,i.V4)(e.percentage,e.scoreThresholds)}))}function l(e){var t,n=(0,i.Ki)(e.percentage),l=e.size||(e.layout===r.LabelInside?i.Mk.Large:i.Mk.Small),s=e.customLabel||(0,i.DV)(n);return e.layout===r.LabelOnly?a.createElement("span",{className:(0,i.IA)(n)},s):a.createElement("div",{className:"d-flex align-items-center justify-content-between ".concat(null!==(t=e.className)&&void 0!==t?t:"")},e.layout===r.LabelBefore&&a.createElement("span",{className:"me-2"},s),a.createElement("div",{className:(0,i.tw)(l,n)},a.createElement(c,{percentage:n,size:l,scoreThresholds:e.scoreThresholds}),e.layout===r.LabelInside&&a.createElement("span",{className:o.Z.centredPercentageText},s)))}!function(e){e.CircleOnly="circle_only",e.LabelOnly="label_only",e.LabelBefore="label_before",e.LabelInside="label_inside"}(r||(r={})),l.defaultProps={layout:r.CircleOnly}},2606:(e,t,n)=>{n.d(t,{DV:()=>f,IA:()=>p,Ki:()=>v,Mk:()=>c,V4:()=>d,pu:()=>m,tw:()=>y,zR:()=>b});var r=n(94892),a=n(362);function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function o(e,t,n){return(t=function(e){var t=function(e){if("object"!=i(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=i(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==i(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var c,l=.2,s=.36;!function(e){e.Small="small",e.Large="large",e.ExtraSmall="extraSmall"}(c||(c={}));var u=o(o(o({},c.ExtraSmall,{size:2}),c.Small,{size:2}),c.Large,{size:5.8});function m(e){var t=u[e].size,n=e===c.Large?s:l;return"".concat(t/2-2*n,"rem")}function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.i;return e>=t.HIGH?a.Z.circleSuccess:e>=t.MODERATE?a.Z.circleWarning:a.Z.circleDanger}function p(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r.i;return e>=t.HIGH?"text-success":e>=t.MODERATE?"text-warning":"text-danger"}function y(e,t){var n="d-inline-block ".concat(a.Z.circleContainer);return e===c.Large&&(n+=" ".concat(a.Z.lgCircleContainer)),e===c.ExtraSmall&&(n+=" ".concat(a.Z.xsCircleContainer)),b(t)&&(n+=" ".concat(a.Z.pendingCircle)),n}function v(e){if(!b(e))return+e.toFixed(2)}function f(e){return b(e)?"--%":"".concat(Math.round(100*e),"%")}function b(e){return"number"!=typeof e}},38502:(e,t,n)=>{n.d(t,{r:()=>m});var r=n(32735),a=n(49985),i=n(15611),o=n(18559),c=n(11607),l=n(83914),s=n(22771);function u(e){return r.createElement(r.Fragment,null,!!e.tab.svgName&&r.createElement("div",{className:e.tab.name?"pe-1":""},r.createElement(l.x,{svgName:e.tab.svgName})),e.tab.name,"number"==typeof e.tab.count&&r.createElement("div",{className:"ps-2"},r.createElement(o.C,{type:o.g.Count,data:e.tab.count})))}function m(e){var t;return r.createElement("nav",{className:null!==(t=e.className)&&void 0!==t?t:"",ref:e.containerRef},r.createElement("ul",{className:"\n list-unstyled d-inline-block m-0 ".concat(s.Z.pillTabSelector,"\n ").concat(e.borderRadius?s.Z.radiusSmall:"","\n ").concat(e.listClassName,"\n ")},e.tabs.map(function(e,t){return r.createElement("li",{className:"\n p-0 ".concat(s.Z.tab," ").concat(e.active?"btn btn-dark":"btn btn-outline-dark","\n ").concat(e.name?s.Z.minWidth:""," ").concat(e.className,"\n "),key:t},e.appLink?r.createElement(i.F,{appLink:e.appLink,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ".concat(s.Z.tabLink,"\n ")},r.createElement(u,{tab:e})):r.createElement(c.L,{className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ".concat(s.Z.tabLink,"\n "),onClick:function(){return function(e){!e.active&&e.onSelect&&(e.onSelect(),e.analyticsData&&e.analyticsOptions&&a.k.logUserAction(e.analyticsData,e.analyticsOptions))}(e)}},r.createElement(u,{tab:e})))})))}m.defaultProps={borderRadius:"lg"}},94892:(e,t,n)=>{n.d(t,{T:()=>a,i:()=>r});var r={HIGH:.75,MODERATE:.5},a={HIGH:.7,MODERATE:.7}},93322:(e,t,n)=>{n.d(t,{F:()=>i});var r=n(32735),a=n(13126);function i(){r.useEffect(function(){return a.e.lockContentWidth(),function(){return a.e.unlockContentWidth()}},[])}},99746:(e,t,n)=>{n.d(t,{p:()=>y});var r=n(32735),a=n(57900),i=n(97395),o=n(2948),c=n(91693),l=n(83345),s=n(4594),u=n(35223),m=n(86702);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var p="lite.insightsAdminAlert";function y(e){var t,n,y=(t=(0,o.D)(m.y.INSIGHTS_ADMIN_ALERT,!0,{storage:a.Z1.LocalStorage}),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,o,c=[],l=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(c.push(r.value),c.length!==t);l=!0);}catch(e){s=!0,a=e}finally{try{if(!l&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw a}}return c}}(t,n)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),v=y[0],f=y[1];return e.hasAnalytics&&v?r.createElement("div",{role:"alert",className:"d-flex justify-content-between align-items-center bg-light-blue rounded p-2 mb-4"},r.createElement("div",null,r.createElement(l.x,{namespace:p,phrase:"adminAlert"}),r.createElement("a",{className:"text-info",href:function(){if(!e.video)return e.analyticsUrl;var t="";return e.video.typeId===s.E.Interactive&&(t="/interactives/".concat(e.video.id,"/views")),e.video.typeId===s.E.Video&&(t="/videos/".concat(e.video.id,"/views")),e.video.typeId===s.E.Clip&&(t="/clips/".concat(e.video.id,"/views")),i._.safeUrlConcat(e.analyticsUrl,t)}(),target:"_blank"},r.createElement(l.x,{namespace:p,phrase:"analytics"})),"."),r.createElement(c.h,{svgName:u.vn.Close,className:"text-blue",onClick:function(){f(!1)}})):r.createElement(r.Fragment,null)}},63619:(e,t,n)=>{n.d(t,{j:()=>U});var r=n(32735),a=n(23481),i=n(57900),o=n(2948),c=n(31453),l=n(2510),s=n(76306),u=n(49935),m=n(91693),d=n(38502),p=n(83914),y=n(83345),v=n(83523),f=n(36532),b=n(38143),h=n(4594),g=n(16714),S=n(22902),E=n(70227),T=n(35223),N=n(14070),x=n(97291),k=n(46390),O=n(86099),A=n(22490),C=n(99746),w=n(1619),L=n(41889),R=n(21789),I=n(8233);function M(e){if(!e.sharedObject)return r.createElement(r.Fragment,null);var t=R.x.hasShareExpired(e.share),n=I.R.getPrivateIconAndText({privacy:e.share.privacy,entityTypeId:e.sharedObject.typeId,hasStudentExp:!1,entity:e.entity,yearGroups:e.yearGroups}).text;return r.createElement("div",{className:(0,c.A)("d-flex flex-row gap-2",e.className)},r.createElement(w.e,{className:"border rounded-pill py-1 ps-1 pe-2",privacy:e.share.privacy,type:e.share.type,svgSize:p.S.Small,classroomName:e.classroomName,hideSubtitle:!0}),!t&&!!n&&r.createElement("p",{className:"d-flex align-items-center mb-0 border rounded-pill px-2"},n),r.createElement(L.B,{share:e.share,markingRequired:e.markingRequired,className:"cursor-default"}))}var P=n(69003);const D={withDivider:"ZSzT3"};function j(e,t){if(e){if("string"==typeof e)return _(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_(e,t):void 0}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var V="insights.header",Z=a.T.encloseNamespace(V);function G(e){return r.createElement("div",null,r.createElement("label",{htmlFor:"anonymiseNames",className:"mb-0 pe-3"},r.createElement(y.x,{namespace:V,phrase:"anonymiseNames"})),r.createElement(v.Z,{id:"anonymiseNames",on:e.anonymiseUsers,onClick:e.toggleAnonymiseUsers}))}function H(e){return r.createElement(f.u,{id:"audienceFilter",title:Z("demoOnly"),spanHack:e.isDemo},r.createElement("div",{className:e.isDemo?"pointer-events-none":""},e.children))}function U(e){var t,n,a,v=(n=(0,o.D)(b.g.ANONYMISE_USERS,!1,{storage:i.Z1.LocalStorage}),a=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,o,c=[],l=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(c.push(r.value),c.length!==t);l=!0);}catch(e){s=!0,a=e}finally{try{if(!l&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw a}}return c}}(n,a)||j(n,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),w=v[0],L=v[1],R=(0,k.G)().isPlugin,I=(0,S.T)().hasPermissions,U=I(g.C.ViewAnalyticsProduct)&&I(g.C.ViewCustomerAnalytics),z=(0,O.Zm)(e.share);return r.createElement("div",null,r.createElement(C.p,{analyticsUrl:e.analyticsWebUrl,hasAnalytics:e.hasAnalytics,video:e.video}),r.createElement("section",{className:"mb-4"},r.createElement("div",{className:"d-flex justify-content-between mb-3"},e.video?r.createElement(u.Oo,{breadcrumbs:function(){if(!e.video)return[];if(!e.share)return[];var t={name:Z("shares"),appLink:{application:x.O.MY_SHARES,action:N.e.MyShares.HOME}};return e.share.type===l.y.Classroom&&(t={name:Z("classrooms"),appLink:{application:x.O.CLASSROOMS,action:N.e.Classrooms.HOME}}),e.share.type===l.y.Open&&(t={name:Z("openClassrooms"),appLink:{application:x.O.CLASSROOMS,action:N.e.Classrooms.OPEN_CLASSROOMS}}),[t,{name:e.video.name,active:!0}]}()}):r.createElement(u.b2,null),r.createElement("div",{className:"d-flex gap-2"},!R&&z&&r.createElement(H,{isDemo:e.isDemo},r.createElement(m.h,{svgName:T.vn.Share,className:"btn btn-outline-dark",appLink:z},r.createElement(y.x,{namespace:V,phrase:"shareOptions"}))),r.createElement(H,{isDemo:e.isDemo},r.createElement(s.m,{dropdownToggleClassName:"btn btn-outline-dark",actions:function(){var t,n=[];return(null===(t=e.video)||void 0===t?void 0:t.typeId)===h.E.Interactive&&n.push({label:Z("generateReport"),svgName:T.vn.Print,appLink:{application:x.O.MY_SHARES,action:N.e.MyShares.INTERACTIVE_GENERATE_REPORT,args:[e.video.id]}}),U&&n.push({label:Z("viewInAnalytics"),svgName:T.vn.Analytics,href:E.c.getObjectUrl(e.analyticsWebUrl,e.video,!0),openInNewTab:!0}),[].concat(n,function(e){return function(e){if(Array.isArray(e))return _(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||j(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,P.sD)({share:e.share,sharedObject:e.video,isPlugin:R,hideShareOptionsActions:!0})))}()})))),r.createElement("div",{className:"d-flex justify-content-between mb-3"},r.createElement("div",{className:"me-2"},e.video&&r.createElement(r.Fragment,null,r.createElement("h1",{className:"mb-0 d-inline me-2"},e.video.name),!e.isDemo&&r.createElement(f.u,{title:Z(e.video.typeId===h.E.Interactive?"viewInteractive":e.video.typeId===h.E.Clip?"viewClip":"viewVideo"),type:"text",spanHack:!0,spanHackClassName:"d-inline-block align-text-bottom"},r.createElement(m.h,{svgName:T.vn.NewWindow,appLink:A.W.getAppLink(e.video),svgSize:p.S.Large,className:"d-inline-block",customSize:!0}))),!e.video&&r.createElement("h1",{className:"partial-loading-background",style:{width:"20rem"}}," "))),r.createElement("div",{className:(0,c.A)("d-flex flex-row align-items-center mb-3",D.withDivider)},r.createElement(M,{sharedObject:e.video,share:e.share,entity:e.video,yearGroups:e.yearGroups,classroomName:null===(t=e.classroom)||void 0===t?void 0:t.name,markingRequired:e.markingRequired})),r.createElement("div",{className:"d-flex align-items-center justify-content-between mb-4"},r.createElement(d.r,{tabs:e.tabs}),r.createElement(G,{anonymiseUsers:w,toggleAnonymiseUsers:function(){return L(!w)}}))))}},10447:(e,t,n)=>{n.d(t,{$6:()=>l,aq:()=>u,kj:()=>s});var r=n(23481),a=n(14070),i=n(97291),o=n(86099),c=r.T.encloseNamespace("shared.insightsUtils");function l(e,t,n){return[{name:c("insights"),active:"insights"===t,appLink:(0,o.pY)(e,n)},{name:c("heatmap"),active:"heatmap"===t,appLink:(0,o.Rv)(e,n)}]}function s(e,t){return[{name:c("insights"),active:"insights"===t,appLink:(0,o.pY)(e)},{name:c("results"),active:"results"===t,appLink:(0,o.rq)(e)},{name:c("questions"),active:"questions"===t,appLink:(0,o.Sj)(e)},{name:c("heatmap"),active:"heatmap"===t,appLink:(0,o.Rv)(e)}]}function u(e,t,n){return[{name:c("insights"),active:"insights"===t,appLink:{application:i.O.MY_SHARES,action:a.e.MyShares.INTERACTIVE_OVERVIEW_DEMO,args:[e],params:n}},{name:c("results"),active:"results"===t,appLink:{application:i.O.MY_SHARES,action:a.e.MyShares.INTERACTIVE_STUDENTS_DEMO,args:[e],params:n}},{name:c("questions"),active:"questions"===t,appLink:{application:i.O.MY_SHARES,action:a.e.MyShares.INTERACTIVE_QUESTIONS_DEMO,args:[e],params:n}},{name:c("heatmap"),active:"heatmap"===t,appLink:{application:i.O.MY_SHARES,action:a.e.MyShares.INTERACTIVE_HEATMAP_DEMO,args:[e],params:n}}]}},362:(e,t,n)=>{n.d(t,{Z:()=>r});const r={circleContainer:"p8Vgz",backgroundCircle:"asGGE",circleSuccess:"PXLNj",circleWarning:"ZckRN",circleDanger:"slBRg",lgCircleContainer:"N8KCI",xsCircleContainer:"RPqZ2",pendingCircle:"DKrcq",centredPercentageText:"tpmLR"}},22771:(e,t,n)=>{n.d(t,{Z:()=>r});const r={pillTabSelector:"Hdi6o",tab:"RvNxr",minWidth:"GHSz9",radiusSmall:"VhJJa",tabLink:"WFyvo"}}}]);
|
|
2
|
+
//# sourceMappingURL=1502-9836df10cd-lite.chunk.js.map
|