@clickview/lite 0.75.0-rc.2 → 0.75.0-rc.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundles.json +1 -1
- package/dist/css/{119-lite-a1f592f602.chunk.css → 1243-lite-13eda8f6a0.chunk.css} +2 -4
- package/dist/css/{7230-lite-36ff6e6d53.chunk.css → 1867-lite-8baa8af02b.chunk.css} +3 -5
- package/dist/css/{5241-lite-baab687563.chunk.css → 4203-lite-9ffab89741.chunk.css} +3 -5
- package/dist/css/{8364-lite-99938dea56.chunk.css → 5193-lite-d434056013.chunk.css} +1 -0
- package/dist/css/{7339-lite-05c396fed3.chunk.css → 6756-lite-839687d3d7.chunk.css} +1 -0
- package/dist/css/{9527-lite-1d2221b6a8.chunk.css → 7103-lite-fef3024f61.chunk.css} +2 -4
- package/dist/css/{8856-lite-827b34aed7.chunk.css → 8856-lite-c114ab5c89.chunk.css} +1 -1
- package/dist/languages/en.json +1 -1
- package/dist/scripts/104-0c03791b45-lite.chunk.js +2 -0
- package/dist/scripts/104-0c03791b45-lite.chunk.js.map +1 -0
- package/dist/scripts/1074-4f6b136f9a-lite.chunk.js +2 -0
- package/dist/scripts/1074-4f6b136f9a-lite.chunk.js.map +1 -0
- package/dist/scripts/1087-861be5211f-lite.chunk.js +2 -0
- package/dist/scripts/1087-861be5211f-lite.chunk.js.map +1 -0
- package/dist/scripts/1192-d409863a3c-lite.chunk.js +2 -0
- package/dist/scripts/1192-d409863a3c-lite.chunk.js.map +1 -0
- package/dist/scripts/1199-d2fcbb547e-lite.chunk.js +2 -0
- package/dist/scripts/1199-d2fcbb547e-lite.chunk.js.map +1 -0
- package/dist/scripts/121-1b744469ee-lite.chunk.js +2 -0
- package/dist/scripts/121-1b744469ee-lite.chunk.js.map +1 -0
- package/dist/scripts/{1221-502395e693-lite.chunk.js → 1221-1109d5379d-lite.chunk.js} +3 -3
- package/dist/scripts/1221-1109d5379d-lite.chunk.js.map +1 -0
- package/dist/scripts/1243-ede924125c-lite.chunk.js +2 -0
- package/dist/scripts/1243-ede924125c-lite.chunk.js.map +1 -0
- package/dist/scripts/147-44ee7e9a78-lite.chunk.js +2 -0
- package/dist/scripts/147-44ee7e9a78-lite.chunk.js.map +1 -0
- package/dist/scripts/1491-ab92a040e5-lite.chunk.js +2 -0
- package/dist/scripts/1491-ab92a040e5-lite.chunk.js.map +1 -0
- package/dist/scripts/{1610-7f58bb25a9-lite.chunk.js → 1610-bb6eff2ff1-lite.chunk.js} +2 -2
- package/dist/scripts/1610-bb6eff2ff1-lite.chunk.js.map +1 -0
- package/dist/scripts/{7230-71f8d6d1bd-lite.chunk.js → 1867-3b447a1b85-lite.chunk.js} +2 -2
- package/dist/scripts/{7230-71f8d6d1bd-lite.chunk.js.map → 1867-3b447a1b85-lite.chunk.js.map} +1 -1
- package/dist/scripts/{218-297de74688-lite.chunk.js → 218-f6cc4a3b6a-lite.chunk.js} +2 -2
- package/dist/scripts/218-f6cc4a3b6a-lite.chunk.js.map +1 -0
- package/dist/scripts/2258-ed7383502f-lite.chunk.js +3 -0
- package/dist/scripts/2258-ed7383502f-lite.chunk.js.map +1 -0
- package/dist/scripts/{2968-c4c0114915-lite.chunk.js → 2968-13e56eeff8-lite.chunk.js} +1 -1
- package/dist/scripts/2968-13e56eeff8-lite.chunk.js.map +1 -0
- package/dist/scripts/3268-2736356687-lite.chunk.js +2 -0
- package/dist/scripts/{3268-faca1bf46e-lite.chunk.js.map → 3268-2736356687-lite.chunk.js.map} +1 -1
- package/dist/scripts/3597-eaae787997-lite.chunk.js +3 -0
- package/dist/scripts/3597-eaae787997-lite.chunk.js.map +1 -0
- package/dist/scripts/3836-425334ab13-lite.chunk.js +2 -0
- package/dist/scripts/{3836-f2a0c9f713-lite.chunk.js.map → 3836-425334ab13-lite.chunk.js.map} +1 -1
- package/dist/scripts/3837-e4c5bb738b-lite.chunk.js +2 -0
- package/dist/scripts/3837-e4c5bb738b-lite.chunk.js.map +1 -0
- package/dist/scripts/4185-7178e5a716-lite.chunk.js +2 -0
- package/dist/scripts/4185-7178e5a716-lite.chunk.js.map +1 -0
- package/dist/scripts/4203-ee50e89841-lite.chunk.js +3 -0
- package/dist/scripts/4203-ee50e89841-lite.chunk.js.map +1 -0
- package/dist/scripts/4598-bcd3f6f8a7-lite.chunk.js +2 -0
- package/dist/scripts/{4598-2b1daca7ae-lite.chunk.js.map → 4598-bcd3f6f8a7-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4722-d96da2a258-lite.chunk.js → 4722-9eb591621a-lite.chunk.js} +3 -3
- package/dist/scripts/4722-9eb591621a-lite.chunk.js.map +1 -0
- package/dist/scripts/4948-f21dad2ca1-lite.chunk.js +2 -0
- package/dist/scripts/4948-f21dad2ca1-lite.chunk.js.map +1 -0
- package/dist/scripts/{5153-079b4125ae-lite.chunk.js → 5153-cf62a95421-lite.chunk.js} +3 -3
- package/dist/scripts/5153-cf62a95421-lite.chunk.js.map +1 -0
- package/dist/scripts/6137-bc8b193237-lite.chunk.js +2 -0
- package/dist/scripts/6137-bc8b193237-lite.chunk.js.map +1 -0
- package/dist/scripts/6756-cfd00009e4-lite.chunk.js +3 -0
- package/dist/scripts/6756-cfd00009e4-lite.chunk.js.map +1 -0
- package/dist/scripts/6790-36ce6dda04-lite.chunk.js +2 -0
- package/dist/scripts/6790-36ce6dda04-lite.chunk.js.map +1 -0
- package/dist/scripts/705-10a85bae7a-lite.chunk.js +2 -0
- package/dist/scripts/705-10a85bae7a-lite.chunk.js.map +1 -0
- package/dist/scripts/7103-14bd3771d2-lite.chunk.js +2 -0
- package/dist/scripts/7103-14bd3771d2-lite.chunk.js.map +1 -0
- package/dist/scripts/7148-d966512e45-lite.chunk.js +2 -0
- package/dist/scripts/7148-d966512e45-lite.chunk.js.map +1 -0
- package/dist/scripts/7205-12a6b2ac55-lite.chunk.js +2 -0
- package/dist/scripts/7205-12a6b2ac55-lite.chunk.js.map +1 -0
- package/dist/scripts/7438-38f60d3e8e-lite.chunk.js +2 -0
- package/dist/scripts/7438-38f60d3e8e-lite.chunk.js.map +1 -0
- package/dist/scripts/7480-e0749592fc-lite.chunk.js +2 -0
- package/dist/scripts/7480-e0749592fc-lite.chunk.js.map +1 -0
- package/dist/scripts/8010-e9163f5bee-lite.chunk.js +2 -0
- package/dist/scripts/8010-e9163f5bee-lite.chunk.js.map +1 -0
- package/dist/scripts/8410-1f1fd5ccf0-lite.chunk.js +3 -0
- package/dist/scripts/8410-1f1fd5ccf0-lite.chunk.js.map +1 -0
- package/dist/scripts/8705-ecd20ef6cb-lite.chunk.js +2 -0
- package/dist/scripts/8705-ecd20ef6cb-lite.chunk.js.map +1 -0
- package/dist/scripts/8856-4da691f96f-lite.chunk.js +2 -0
- package/dist/scripts/8856-4da691f96f-lite.chunk.js.map +1 -0
- package/dist/scripts/9003-fc8e674468-lite.chunk.js +2 -0
- package/dist/scripts/9003-fc8e674468-lite.chunk.js.map +1 -0
- package/dist/scripts/9042-add0f1c2e2-lite.chunk.js +2 -0
- package/dist/scripts/9042-add0f1c2e2-lite.chunk.js.map +1 -0
- package/dist/scripts/9103-4eec16d73b-lite.chunk.js +2 -0
- package/dist/scripts/9103-4eec16d73b-lite.chunk.js.map +1 -0
- package/dist/scripts/9134-a6a5fc92cf-lite.chunk.js +2 -0
- package/dist/scripts/9134-a6a5fc92cf-lite.chunk.js.map +1 -0
- package/dist/scripts/9266-f0ad8d5cb3-lite.chunk.js +2 -0
- package/dist/scripts/9266-f0ad8d5cb3-lite.chunk.js.map +1 -0
- package/dist/scripts/9620-3746c84350-lite.chunk.js +3 -0
- package/dist/scripts/9620-3746c84350-lite.chunk.js.map +1 -0
- package/dist/scripts/9740-9d50d31b72-lite.chunk.js +2 -0
- package/dist/scripts/9740-9d50d31b72-lite.chunk.js.map +1 -0
- package/dist/scripts/{bundle-95a6fc2722.min.js → bundle-fc60888464.min.js} +3 -3
- package/dist/scripts/{bundle-95a6fc2722.min.js.map → bundle-fc60888464.min.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/104-b62a8447f0-lite.chunk.js +0 -2
- package/dist/scripts/104-b62a8447f0-lite.chunk.js.map +0 -1
- package/dist/scripts/107-989ac2dc47-lite.chunk.js +0 -2
- package/dist/scripts/107-989ac2dc47-lite.chunk.js.map +0 -1
- package/dist/scripts/119-e3a8bd94dd-lite.chunk.js +0 -2
- package/dist/scripts/119-e3a8bd94dd-lite.chunk.js.map +0 -1
- package/dist/scripts/1199-a2ac2338d0-lite.chunk.js +0 -2
- package/dist/scripts/1199-a2ac2338d0-lite.chunk.js.map +0 -1
- package/dist/scripts/121-bf7a153eb8-lite.chunk.js +0 -2
- package/dist/scripts/121-bf7a153eb8-lite.chunk.js.map +0 -1
- package/dist/scripts/1221-502395e693-lite.chunk.js.map +0 -1
- package/dist/scripts/1400-43b37bfa8d-lite.chunk.js +0 -2
- package/dist/scripts/1400-43b37bfa8d-lite.chunk.js.map +0 -1
- package/dist/scripts/1610-7f58bb25a9-lite.chunk.js.map +0 -1
- package/dist/scripts/218-297de74688-lite.chunk.js.map +0 -1
- package/dist/scripts/2258-4d0639c9fe-lite.chunk.js +0 -3
- package/dist/scripts/2258-4d0639c9fe-lite.chunk.js.map +0 -1
- package/dist/scripts/2968-c4c0114915-lite.chunk.js.map +0 -1
- package/dist/scripts/3268-faca1bf46e-lite.chunk.js +0 -2
- package/dist/scripts/3836-f2a0c9f713-lite.chunk.js +0 -2
- package/dist/scripts/3837-fe321e8deb-lite.chunk.js +0 -2
- package/dist/scripts/3837-fe321e8deb-lite.chunk.js.map +0 -1
- package/dist/scripts/4025-306e0fbdd5-lite.chunk.js +0 -2
- package/dist/scripts/4025-306e0fbdd5-lite.chunk.js.map +0 -1
- package/dist/scripts/4164-5d3af57b67-lite.chunk.js +0 -2
- package/dist/scripts/4164-5d3af57b67-lite.chunk.js.map +0 -1
- package/dist/scripts/4185-e8e40dab72-lite.chunk.js +0 -2
- package/dist/scripts/4185-e8e40dab72-lite.chunk.js.map +0 -1
- package/dist/scripts/4562-545f04c53f-lite.chunk.js +0 -2
- package/dist/scripts/4562-545f04c53f-lite.chunk.js.map +0 -1
- package/dist/scripts/4598-2b1daca7ae-lite.chunk.js +0 -2
- package/dist/scripts/4722-d96da2a258-lite.chunk.js.map +0 -1
- package/dist/scripts/4948-66ba60c8e3-lite.chunk.js +0 -2
- package/dist/scripts/4948-66ba60c8e3-lite.chunk.js.map +0 -1
- package/dist/scripts/5153-079b4125ae-lite.chunk.js.map +0 -1
- package/dist/scripts/5241-163f5ac64c-lite.chunk.js +0 -3
- package/dist/scripts/5241-163f5ac64c-lite.chunk.js.map +0 -1
- package/dist/scripts/5349-bc0fcb4083-lite.chunk.js +0 -2
- package/dist/scripts/5349-bc0fcb4083-lite.chunk.js.map +0 -1
- package/dist/scripts/6135-a878a9cff0-lite.chunk.js +0 -3
- package/dist/scripts/6135-a878a9cff0-lite.chunk.js.map +0 -1
- package/dist/scripts/6509-23fdb20a4b-lite.chunk.js +0 -2
- package/dist/scripts/6509-23fdb20a4b-lite.chunk.js.map +0 -1
- package/dist/scripts/6790-5086b72662-lite.chunk.js +0 -2
- package/dist/scripts/6790-5086b72662-lite.chunk.js.map +0 -1
- package/dist/scripts/7148-432ab72091-lite.chunk.js +0 -2
- package/dist/scripts/7148-432ab72091-lite.chunk.js.map +0 -1
- package/dist/scripts/7205-2428f775a5-lite.chunk.js +0 -2
- package/dist/scripts/7205-2428f775a5-lite.chunk.js.map +0 -1
- package/dist/scripts/7339-5793c921bb-lite.chunk.js +0 -3
- package/dist/scripts/7339-5793c921bb-lite.chunk.js.map +0 -1
- package/dist/scripts/7438-a5f96e58fc-lite.chunk.js +0 -2
- package/dist/scripts/7438-a5f96e58fc-lite.chunk.js.map +0 -1
- package/dist/scripts/7926-6b040931aa-lite.chunk.js +0 -2
- package/dist/scripts/7926-6b040931aa-lite.chunk.js.map +0 -1
- package/dist/scripts/8536-f75009dd87-lite.chunk.js +0 -2
- package/dist/scripts/8536-f75009dd87-lite.chunk.js.map +0 -1
- package/dist/scripts/8687-549a2d9278-lite.chunk.js +0 -3
- package/dist/scripts/8687-549a2d9278-lite.chunk.js.map +0 -1
- package/dist/scripts/8856-df102acdff-lite.chunk.js +0 -2
- package/dist/scripts/8856-df102acdff-lite.chunk.js.map +0 -1
- package/dist/scripts/9134-42dc2390ce-lite.chunk.js +0 -2
- package/dist/scripts/9134-42dc2390ce-lite.chunk.js.map +0 -1
- package/dist/scripts/9266-c5d6705147-lite.chunk.js +0 -2
- package/dist/scripts/9266-c5d6705147-lite.chunk.js.map +0 -1
- package/dist/scripts/9284-402a14d41c-lite.chunk.js +0 -2
- package/dist/scripts/9284-402a14d41c-lite.chunk.js.map +0 -1
- package/dist/scripts/9470-11c8c2ca71-lite.chunk.js +0 -2
- package/dist/scripts/9470-11c8c2ca71-lite.chunk.js.map +0 -1
- package/dist/scripts/9527-111c8586a7-lite.chunk.js +0 -2
- package/dist/scripts/9527-111c8586a7-lite.chunk.js.map +0 -1
- package/dist/scripts/9528-2b478f4ca8-lite.chunk.js +0 -3
- package/dist/scripts/9528-2b478f4ca8-lite.chunk.js.map +0 -1
- package/dist/scripts/9591-230bcf0935-lite.chunk.js +0 -2
- package/dist/scripts/9591-230bcf0935-lite.chunk.js.map +0 -1
- /package/dist/css/{8687-lite-6787cc731a.chunk.css → 3597-lite-6787cc731a.chunk.css} +0 -0
- /package/dist/css/{5349-lite-829df3b4e7.chunk.css → 6137-lite-829df3b4e7.chunk.css} +0 -0
- /package/dist/css/{9470-lite-edb2d29928.chunk.css → 8010-lite-edb2d29928.chunk.css} +0 -0
- /package/dist/css/{6135-lite-41bdd1c5a3.chunk.css → 8410-lite-41bdd1c5a3.chunk.css} +0 -0
- /package/dist/css/{121-lite-1337d9acf0.chunk.css → 9042-lite-1337d9acf0.chunk.css} +0 -0
- /package/dist/css/{9528-lite-6787cc731a.chunk.css → 9620-lite-6787cc731a.chunk.css} +0 -0
- /package/dist/scripts/{1221-502395e693-lite.chunk.js.LICENSE.txt → 1221-1109d5379d-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{2258-4d0639c9fe-lite.chunk.js.LICENSE.txt → 2258-ed7383502f-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{4722-d96da2a258-lite.chunk.js.LICENSE.txt → 3597-eaae787997-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{5153-079b4125ae-lite.chunk.js.LICENSE.txt → 4203-ee50e89841-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{5241-163f5ac64c-lite.chunk.js.LICENSE.txt → 4722-9eb591621a-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6135-a878a9cff0-lite.chunk.js.LICENSE.txt → 5153-cf62a95421-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{7339-5793c921bb-lite.chunk.js.LICENSE.txt → 6756-cfd00009e4-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8687-549a2d9278-lite.chunk.js.LICENSE.txt → 8410-1f1fd5ccf0-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9528-2b478f4ca8-lite.chunk.js.LICENSE.txt → 9620-3746c84350-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-95a6fc2722.min.js.LICENSE.txt → bundle-fc60888464.min.js.LICENSE.txt} +0 -0
|
@@ -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){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}}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),i),data:c(n,i),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:".concat(e.objectId)]}},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)]}},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)]}},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"],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),S=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:S,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)))}))}}}}},84073:(e,t,n)=>{n.d(t,{g:()=>M,F:()=>L});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(23481),y=n(110),h=n(21789),b=n(36532);const g={indicator:"sybF_"};function E(e){return E="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},E(e)}function S(e,t,n){return(t=function(e){var t=function(e){if("object"!=E(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=E(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==E(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var N,k=f.T.encloseNamespace("share-v2.shareStatusIndicator");!function(e){e[e.Active=0]="Active",e[e.Expired=1]="Expired",e[e.MarkingRequired=2]="MarkingRequired"}(N||(N={}));var w=S(S(S({},N.Active,(function(){return k("activeStatusLabel")})),N.Expired,(function(){return k("expiredStatusLabel")})),N.MarkingRequired,(function(){return k("markingRequiredStatusLabel")})),j=S(S(S({},N.Active,"bg-success"),N.Expired,"bg-danger"),N.MarkingRequired,"bg-blue"),x=S(S(S({},N.Active,(function(){return k("activeStatusTooltip")})),N.Expired,(function(){return k("expiredStatusTooltip")})),N.MarkingRequired,(function(){return k("markingRequiredStatusTooltip")}));function I(e){var t=function(e){return e.markingRequired?N.MarkingRequired:h.x.hasShareExpired(e.share)?N.Expired:N.Active}(e),n=function(e,t){if(e===N.Active&&t){var n=y.O.convertUTCToLocal(t),a=y.O.format(n,"MMMM Do");return k("expiryTooltip",{date:a})}return x[e]()}(t,e.share.expireDate),r=j[t];return a.createElement(b.u,{title:n,spanHack:!0,spanHackClassName:"d-inline-flex"},a.createElement("div",{className:"d-flex align-items-center"},a.createElement("div",{className:"".concat(g.indicator," ").concat(r," me-2 flex-shrink-0")}),function(){var n=w[t](),r=e.share.expireDate;if(t===N.Active&&r){var c=h.x.calculateDaysToExpiry(e.share),i=k("expiryHint",{smartCount:c});return a.createElement("p",{className:"mb-0"},n," · ",i)}return a.createElement("p",{className:"mb-0"},n)}()))}var O=n(76306),C=n(83914),A=n(54610),R=n(35223),F=n(86099);const T={thumbnailContainer:"XNQc8",tableRow:"R3dYa",viewCta:"ssCq6"};var P="myShares.tableRow";function M(e){return a.createElement("div",{className:"d-flex"},a.createElement("div",{className:"col-auto ".concat(T.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:P,phrase:"viewsHeading"}))),a.createElement("div",{className:"col-3"},a.createElement("p",{className:"fw-semibold mb-2"},a.createElement(o.x,{namespace:P,phrase:"viewedByHeading"}))),a.createElement("div",{className:"col-5"},a.createElement("p",{className:"fw-semibold mb-2"},a.createElement(o.x,{namespace:P,phrase:"statusHeading"})))),a.createElement("div",{className:"col-2"})))}function L(e){var t,n=e.shareData,i=n.sharedObject,s=i.typeId===m.E.Playlist||i.typeId===m.E.Series,u=(0,F.pY)(n.share);return a.createElement("div",{className:"position-relative hover-bg-light-blue ".concat(T.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(T.thumbnailContainer)},a.createElement(c.k,{object:i,showVideoMetadata:!0,locationContext:r.LZ.MyShares,imageOptions:{size:A.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:"col-4"},s?a.createElement("p",{className:"mb-0"},"-"):a.createElement("p",{className:"mb-0"},a.createElement(o.x,{namespace:P,phrase:"views",options:{smartCount:n.share.viewCount}}))),a.createElement("div",{className:"col-3"},s?a.createElement("p",{className:"mb-0"},"-"):a.createElement("div",{className:"d-flex align-items-center"},a.createElement(C.x,{svgName:R.vn.User,size:C.S.Standard,className:"me-2 svg-container"}),a.createElement("p",{className:"mb-0"},n.share.accessCount))),a.createElement("div",{className:"col-5"},a.createElement(I,{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(T.viewCta)},a.createElement(o.x,{namespace:P,phrase:"viewCta"})),a.createElement(O.m,{dropdownToggleSvgSize:C.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(84073);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:()=>f});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){var t,n,f=e.params,y=e.interactiveInsights,h=e.shouldFetch,b=a.a.useGetFetch(),g=a.a.useBasicFetch(m.N.currentUser()),E=a.a.useBasicFetch(s.L.config()),S=a.a.useBasicFetch((null===(t=g.data)||void 0===t?void 0:t.isAuthenticated)&&u.h.yearGroups(g.data.customerId)),N=function(e){return h&&l.o.getSentShares(Object.assign({cursor:e},f))},k=function(e){return b(N(e))},w=(0,v.K)(N,k),j=w.items,x=w.hasMore,I=w.isFetching,O=w.nextCursor,C=w.hasFirstPageCompleted,A=(0,d.FN)(null==j?void 0:j.map((function(e){return e.objectId.toString()})),i.o.sharedObjectsById),R=(0,d.FN)(o.x.getFlattenedRecipients(null!=j?j:[]).map((function(e){return e.recipientId.toString()})),(function(e){return i.o.getRecipientsById(e,g.data.customerId)})),F=(0,d.FN)(y?r.t.values(A.items||[]):[],(function(e){return c.I.pendingReviews({interactives:e.filter(p.M.isInteractive).map((function(e){return{interactiveId:e.interactiveId,metadataId:e.id}})),filters:{currentCustomerId:g.data.customerId,currentUserId:g.data.id}})}),(function(e){return"".concat(e.id,":").concat("interactiveId"in e?e.interactiveId:"")})),T=I||A.isFetching||R.isFetching||F.isFetching||S.isFetching,P=!C||(null==j?void 0:j.length)&&!A.hasFirstRequestCompleted;return{sentShares:j,sharedObjects:A,shareRecipients:R,yearGroups:S.data,interactivesPendingReview:F,isFetching:T,showPartialLoading:P,nextCursor:O,hasMore:x,fetchNext:k,imageCdnUrl:null===(n=E.data)||void 0===n?void 0:n.imageCdnUrl}}}}]);
|
|
2
|
+
//# sourceMappingURL=1199-d2fcbb547e-lite.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts/1199-d2fcbb547e-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/libs/shared/src/apps/share-v2/components/share-status-indicator/share-status-indicator.scss","file:///app/packages/libs/shared/src/apps/share-v2/components/share-status-indicator/ShareStatusIndicator.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}\n\nfunction getInteractiveResultFilters(\n currentUser: CurrentUser,\n filter: AnalyticsRequestFilter\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 };\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 includePublicResults?: boolean,\n success?: (data: InteractiveResultSet) => void,\n error?: (data: any) => void,\n always?: () => void\n ): Flight.Request {\n return {\n url: includePublicResults ?\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}`, filter),\n data: getInteractiveResultFilters(currentUser, filter),\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:${data.objectId}` ]\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}` ]\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}` ]\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' ],\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 {\"indicator\":\"sybF_\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { ShareHelper } from 'libs/shared/apps/share-v2/utils/ShareHelper';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\n\nimport styles from './share-status-indicator.scss';\n\nconst namespace = 'share-v2.shareStatusIndicator';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nenum ShareIndicatorStatus {\n Active,\n Expired,\n MarkingRequired\n}\n\nconst statusIndicatorLabels = {\n [ShareIndicatorStatus.Active]: () => getPhrase('activeStatusLabel'),\n [ShareIndicatorStatus.Expired]: () => getPhrase('expiredStatusLabel'),\n [ShareIndicatorStatus.MarkingRequired]: () => getPhrase('markingRequiredStatusLabel')\n};\n\nconst statusIndicatorColors = {\n [ShareIndicatorStatus.Active]: 'bg-success',\n [ShareIndicatorStatus.Expired]: 'bg-danger',\n [ShareIndicatorStatus.MarkingRequired]: 'bg-blue'\n};\n\nconst statusIndicatorTooltips = {\n [ShareIndicatorStatus.Active]: () => getPhrase('activeStatusTooltip'),\n [ShareIndicatorStatus.Expired]: () => getPhrase('expiredStatusTooltip'),\n [ShareIndicatorStatus.MarkingRequired]: () => getPhrase('markingRequiredStatusTooltip')\n};\n\nfunction determineStatus(props: ShareStatusIndicatorProps): ShareIndicatorStatus {\n if (props.markingRequired)\n return ShareIndicatorStatus.MarkingRequired;\n\n if (ShareHelper.hasShareExpired(props.share))\n return ShareIndicatorStatus.Expired;\n\n return ShareIndicatorStatus.Active;\n}\n\nfunction getTooltip(status: ShareIndicatorStatus, expireDate: string): string {\n if (status === ShareIndicatorStatus.Active && expireDate) {\n const localDate = DateHelper.convertUTCToLocal(expireDate);\n const formattedDate = DateHelper.format(localDate, 'MMMM Do');\n\n return getPhrase('expiryTooltip', { date: formattedDate });\n }\n\n return statusIndicatorTooltips[status]();\n}\n\ninterface ShareStatusIndicatorProps {\n share: Share;\n markingRequired: boolean;\n}\n\nexport function ShareStatusIndicator(props: ShareStatusIndicatorProps) {\n const status = determineStatus(props);\n const tooltip = getTooltip(status, props.share.expireDate);\n const color = statusIndicatorColors[status];\n\n function renderDisplayText() {\n const label = statusIndicatorLabels[status]();\n const expireDate = props.share.expireDate;\n \n if (status === ShareIndicatorStatus.Active && expireDate) {\n const remainingDays = ShareHelper.calculateDaysToExpiry(props.share);\n const hint = getPhrase('expiryHint', { smartCount: remainingDays });\n\n return (\n <p className='mb-0'>\n {label} · {hint}\n </p>\n );\n }\n\n return (\n <p className='mb-0'>\n {label}\n </p>\n );\n }\n\n return (\n <Tooltip title={tooltip} spanHack spanHackClassName='d-inline-flex'>\n <div className='d-flex align-items-center'>\n <div className={`${styles.indicator} ${color} me-2 flex-shrink-0`} />\n {renderDisplayText()}\n </div>\n </Tooltip>\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='col-4'>\n {renderViewCount()}\n </div>\n\n <div className='col-3'>\n {renderViewedBy()}\n </div>\n\n <div className='col-5'>\n <ShareStatusIndicator share={shareData.share} markingRequired={shareData.pendingReview > 0} />\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 interactivesPendingReview = useGrowingBatchFetch<InteractivesPendingReviews, SharableEntity>(\n interactiveInsights ? ObjectHelper.values(sharedObjects.items || []) : [],\n objs => InteractiveResultsRequests.pendingReviews({\n interactives: objs\n .filter(VideoHelper.isInteractive)\n .map(obj => ({ interactiveId: obj.interactiveId, metadataId: obj.id })),\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","currentUserId","id","currentCustomerId","dateRange","undefined","userIds","classroomsAndGroups","InteractiveResultsRequests","interactiveResultSet","interactiveId","interactiveMetadataId","includePublicResults","success","error","always","url","data","type","HttpVerbs","normalize","mark","answerId","resultId","invalidationKeys","pendingReviews","interactiveResultsReport","normalizeOptions","namespace","ShareRequests","createShare","objectId","updateShare","shareId","deleteShare","getShare","bootstrapName","getSentShares","params","Object","values","getShareLink","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","ShareIndicatorStatus","getPhrase","LanguageService","statusIndicatorLabels","Active","Expired","MarkingRequired","statusIndicatorColors","statusIndicatorTooltips","ShareStatusIndicator","status","markingRequired","ShareHelper","share","determineStatus","tooltip","expireDate","localDate","DateHelper","formattedDate","date","getTooltip","color","Tooltip","title","spanHack","spanHackClassName","label","remainingDays","hint","smartCount","renderDisplayText","MySharesTableHeading","heading","isFirst","MySharesTableRow","shareData","isCollection","SharedObjectImage","object","showVideoMetadata","locationContext","imageOptions","size","showCollectionMask","showVideoCount","onlyCount","viewCount","SvgContainer","svgName","S","accessCount","pendingReview","ActionsDropdown","dropdownToggleSvgSize","actions","getObjectActions","dropdownToggleClassName","getDateShared","ShareType","recipients","dateCreated","datesCreated","date1","date2","ArrayHelper","MySharesTable","sentShares","sharedObjects","shareRecipients","groupByDate","interactivesPendingReviews","tableData","interactivesPendingReviewsMap","groupByDateShared","interactivesPendingReview","s","recipient","recipientId","dateShared","pendingReviewCount","privacy","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","I","interactives","metadataId","filters","showPartialLoading"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[121],{86877:(e,t,n)=>{n.d(t,{Z:()=>s});var o=n(23481);function r(e){return r="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},r(e)}function i(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,u(o.key),o)}}function u(e){var t=function(e){if("object"!=r(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==r(t)?t:t+""}function c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(c=function(){return!!e})()}function a(e){return a=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},a(e)}function l(e,t){return l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},l(e,t)}var s=function(e){function t(e){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),function(e,t,n){return t=a(t),function(e,t){if(t&&("object"==r(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,c()?Reflect.construct(t,n||[],a(e).constructor):t.apply(e,n))}(this,t,[e])}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&l(e,t)}(t,e),n=t,(u=[{key:"name",get:function(){return"FileTypeError"}},{key:"lang",get:function(){return"upload.fileType"}},{key:"dialogOptions",get:function(){return{title:o.T.getPhrase(this.lang,"heading"),text:o.T.getPhrase(this.lang,"body"),buttons:[{text:o.T.getPhrase(this.lang,"okay"),className:"btn btn-dark",success:!0},{text:o.T.getPhrase(this.lang,"close"),className:"btn btn-link",close:!0}]}}}])&&i(n.prototype,u),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,u}(n(47663).S)},90121:(e,t,n)=>{n.r(t),n.d(t,{BaseVideoUploadService:()=>fe,LearningResourceUploadService:()=>ye,MixedMediaUploadService:()=>de,SubtitleUploadService:()=>pe,UploadType:()=>ue});var o,r=n(43823),i=n(21161),u=n(46865),c=n(79976),a=n(37433),l=n(54149),s=n(71365),f=n(23481),p=n(70794),y=n(81886),d=n(49985),h=n(65858),b=n(29555);!function(e){e[e.Permanent=0]="Permanent",e[e.Temporary=1]="Temporary"}(o||(o={}));var g=n(86877),v=n(28046),m=n(52003),w=n(60735),S=n(53301),O=n.n(S),k=n(47663);function P(e){return P="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},P(e)}function j(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,T(o.key),o)}}function T(e){var t=function(e){if("object"!=P(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=P(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==P(t)?t:t+""}function U(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(U=function(){return!!e})()}function E(e){return E=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},E(e)}function _(e,t){return _=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_(e,t)}var I="upload.internetConnectivityError",x=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),function(e,t,n){return t=E(t),function(e,t){if(t&&("object"==P(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,U()?Reflect.construct(t,n||[],E(e).constructor):t.apply(e,n))}(this,t,[f.T.getPhrase(I,"title")])}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_(e,t)}(t,e),n=t,(o=[{key:"name",get:function(){return"InternetConnectivityError"}},{key:"dialogOptions",get:function(){return{title:f.T.getPhrase(I,"heading"),text:f.T.getPhrase(I,"body"),buttons:[{text:f.T.getPhrase(I,"okay"),className:"btn btn-outline-dark",success:!0}]}}}])&&j(n.prototype,o),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,o}(k.S),R=n(44331);function C(e){return C="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},C(e)}function D(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,L(o.key),o)}}function L(e){var t=function(e){if("object"!=C(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=C(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==C(t)?t:t+""}function F(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(F=function(){return!!e})()}function A(e){return A=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},A(e)}function M(e,t){return M=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},M(e,t)}var z="upload.slowInternetError",V=function(e){function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),function(e,t,n){return t=A(t),function(e,t){if(t&&("object"==C(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,F()?Reflect.construct(t,n||[],A(e).constructor):t.apply(e,n))}(this,t,[f.T.getPhrase(z,"title")])}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&M(e,t)}(t,e),n=t,(o=[{key:"name",get:function(){return"SlowInternetError"}},{key:"dialogOptions",get:function(){return{title:f.T.getPhrase(z,"heading"),text:f.T.getPhrase(z,"body"),buttons:[{text:f.T.getPhrase(z,"okay"),className:"btn btn-outline-dark",success:!0}]}}}])&&D(n.prototype,o),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,o}(k.S);function N(e){return N="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},N(e)}function B(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,Q(o.key),o)}}function Q(e){var t=function(e){if("object"!=N(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=N(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==N(t)?t:t+""}function q(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(q=function(){return!!e})()}function Z(e){return Z=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Z(e)}function X(e,t){return X=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},X(e,t)}var J=[],G=function(e){function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),(n=function(e,t,n){return t=Z(t),function(e,t){if(t&&("object"==N(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,q()?Reflect.construct(t,n||[],Z(e).constructor):t.apply(e,n))}(this,t,[e])).slowInternetTimeout={},n.showSlowInternetTimeout=!0,n}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&X(e,t)}(t,e),n=t,o=[{key:"name",get:function(){return"DropzoneWrapper"}},{key:"initialize",value:function(e){var t=this.options.loggingEnabled,n=r.Radio.channel(e.channelName),o=this;this.dropzone=new(O())(document.createElement("div"),{url:function(e){return e[0].cvUpload.ingestUrl},chunking:this.options.chunkingEnabled,chunkSize:this.options.chunkSize,forceChunking:!0,autoProcessQueue:!0,maxFilesize:this.options.maxFileSize,acceptedFiles:this.options.acceptedFiles,paramName:"content",timeout:18e4,init:function(){var e=this;t&&(i.each(J,(function(t){e.on(t,(function(){for(var e=arguments.length,n=new Array(e),o=0;o<e;o++)n[o]=arguments[o];var r=n[0]instanceof File?n[0].name:n[0];console.info(t,r,n)}))})),this.on("uploadprogress",(function(e,t,r){var i=r/e.size*100;n.trigger("progress",o.getId(e),i,r)})),this.on("success",(function(e){var t=e.upload.chunks,o=i.last(t),r=o.xhr;r||(r=o.file.xhr);var u=JSON.parse(r.response);e.cvUpload.fileId=u.id,n.trigger(b.S.UPLOAD_SUCCESS,e,u)})),this.on("error",(function(e,t,n){n&&0===n.status?y.Q.Ry.throw(new x):"canceled"!==e.status&&y.Q.Ry.throw(new R.n(f.T.getPhrase("upload.services","uploadError",{fileName:e.name,message:t.message})))})),this.on("sending",(function(e){window.clearTimeout(o.slowInternetTimeout[e.path]),o.showSlowInternetTimeout&&(o.slowInternetTimeout[e.path]=window.setTimeout((function(){o.showSlowInternetTimeout&&y.Q.Ry.throw(new V),o.showSlowInternetTimeout=!1}),3e4))})),this.on("complete",(function(e){return window.clearTimeout(o.slowInternetTimeout[e.path])})))},params:function(e,t,n){if(n)return{chunk_index:n.index,upload_length:n.file.size}},addedfile:function(){},thumbnail:function(){},uploadprogress:function(){}})}},{key:"getId",value:function(e){return e.upload.uuid}},{key:"addFile",value:function(e){this.dropzone.addFile(e)}},{key:"removeFile",value:function(e){this.dropzone.removeFile(e)}},{key:"start",value:function(){this.dropzone.processQueue()}},{key:"destroy",value:function(){this.dropzone.destroy()}}],u=[{key:"isValidFile",value:function(e,t){return O().isValidFile(e,t)}}],o&&B(n.prototype,o),u&&B(n,u),Object.defineProperty(n,"prototype",{writable:!1}),n;var n,o,u}(y.Q.t6);function H(e){return H="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},H(e)}function W(e,t,n){return(t=ee(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function K(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,ee(o.key),o)}}function Y(e,t,n){return t&&K(e.prototype,t),n&&K(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function ee(e){var t=function(e){if("object"!=H(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=H(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==H(t)?t:t+""}function te(e,t,n){return t=oe(t),function(e,t){if(t&&("object"==H(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,ne()?Reflect.construct(t,n||[],oe(e).constructor):t.apply(e,n))}function ne(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(ne=function(){return!!e})()}function oe(e){return oe=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},oe(e)}function re(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&ie(e,t)}function ie(e,t){return ie=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},ie(e,t)}var ue,ce=function(e){function t(){var e;return $(this,t),(e=te(this,t,[{dataProvider:s.u.getInstance(a.R.Ajax),cache:s.u.getInstance(u.p.Fifo),alertService:s.u.getInstance(c.P.ALERT)}])).incrementingUploadId=0,e}return re(t,e),Y(t,[{key:"name",get:function(){return"UploadDataService"}},{key:"channelName",get:function(){return"private:upload:data:service"}},{key:"requestUploads",value:function(e,t,n,o,r){var u=this,c=this.chain();i.each(t,(function(t){u.incrementingUploadId++,c.create({resource:e,eventPrefix:"request:upload:".concat(u.incrementingUploadId),data:u.getFileUploadRequest(t,n),callback:function(e){o(t,e)},errorHandler:u.alertService.error("Something went wrong while we were uploading your video. Please try again.")})})),c.func((function(){r()})).run()}},{key:"cancelUpload",value:function(e,t,n){this.create({resource:"/api/upload/cancel",eventPrefix:"cancel:upload",data:{uploadId:e,ingestUrl:t},callback:n})}},{key:"getFileUploadRequest",value:function(e,t){var n=e.name.split(".");return{name:n.join("."),extension:n.length>1?n.pop():"",fileSize:e.size,fileLifestyle:t}}},{key:"onDestroy",value:function(){s.u.releaseInstance(a.R.Ajax).releaseInstance(u.p.Fifo)}}])}(l.B);!function(e){e[e.Video=0]="Video",e[e.LearningResource=1]="LearningResource",e[e.Subtitle=2]="Subtitle",e[e.MixedMedia=3]="MixedMedia"}(ue||(ue={}));var ae=W(W(W(W({},ue.Video,v.l.VIDEO),ue.LearningResource,v.l.RESOURCES),ue.Subtitle,v.l.SUBTITLES),ue.MixedMedia,v.l.MIXED_MEDIA),le=W(W(W(W({},ue.Video,m.Q4.VIDEO_UPLOAD),ue.LearningResource,m.Q4.RESOURCE_UPLOAD),ue.Subtitle,m.Q4.SUBTITLE_UPLOAD),ue.MixedMedia,m.Q4.MIXED_MEDIA_UPLOAD),se=function(e){function t(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return $(this,t),te(this,t,[Object.assign({uploadUrl:"/api/upload"},e)])}return re(t,e),Y(t,[{key:"initialize",value:function(){this.uploadDataService=new ce,this.progressViewModel=p.r.get("upload:progress:".concat(this.uploadType)),this.bindListeners()}},{key:"channelName",get:function(){return le[this.uploadType]}},{key:"lang",get:function(){return"uploadShared.services"}},{key:"initUploader",value:function(e,t){if(!this.uploader){var n=4194304;e&&n<e&&(n=e),t&&n>t&&(n=t),this.uploader=new G({chunkingEnabled:!0,loggingEnabled:!0,chunkSize:n,maxFileSize:53687091200,acceptedFiles:this.getAcceptedFiles(),channelName:this.channelName})}}},{key:"bindListeners",value:function(){this.listenTo(this.channelName,"progress",this.onProgress),this.listenTo(this.channelName,b.S.UPLOAD_SUCCESS,this.onSuccess)}},{key:"onProgress",value:function(e,t,n){var o=this.collection.get(e);o&&(o.set({progress:t>100?100:t,totalUploaded:n}),this.setOverallProgress())}},{key:"isUploading",value:function(){return!!this.getCollection().length}},{key:"getCollection",value:function(){return this.collection||(this.collection=new y.Q.FE),this.collection}},{key:"setOverallProgress",value:function(){var e=this,t=0,n=0,o=this.getCollection();if(o.length){o.each((function(e){t+=e.get("totalUploaded")||0,n+=e.get("file").size||0}));var r=t/n*100,i=r>=100,u=function(){e.progressViewModel.set({progress:i?100:r,done:i})};i?window.setTimeout(u,2e3):u()}else this.progressViewModel.set({progress:0})}},{key:"isValidFile",value:function(e){return G.isValidFile(e,this.getAcceptedFiles())}},{key:"addFiles",value:function(e,t){var n=this;i.any(e,(function(e){return!n.isValidFile(e)}))?y.Q.Ry.throw(new g.Z(f.T.getPhrase(this.lang,"invalidFileType"))):this.requestUploads(e,t)}},{key:"requestUploads",value:function(e,t){var n=this,o=this.isUploading(),i=this.getCollection();this.uploadDataService.requestUploads(this.options.uploadUrl,e,this.fileLifestyle,(function(e,t){"minChunkSize"in t||"maxChunkSize"in t?n.initUploader(1024*t.minChunkSize,1024*t.maxChunkSize):n.initUploader(t.minChunkLength,t.maxChunkLength),e.cvUpload={uploadId:t.uploadId,ingestUrl:t.ingestUrl},n.uploader.addFile(e);var o=e.name;n.uploadType===ue.Video&&(o=o.replace(/\.[^/.]+$/,"")),i.add(Object.assign({id:n.uploader.getId(e),file:e,name:o},n.getAdditionalFileInfo(e,t)),{at:i.length-1})}),(function(){t&&d.k.logUserAction({uploadCount:e.length},t),r.Radio.channel(n.channelName).trigger(b.S.FILES_ADDED,e,o)}))}},{key:"addFile",value:function(e,t){this.addFiles([e],t)}},{key:"cancelUpload",value:function(e){var t=this,n=this.getCollection(),o=n.get(e);if(o){var i=o.get("file");this.uploader.removeFile(i),n.remove(o),this.uploadDataService.cancelUpload(i.cvUpload.uploadId,i.cvUpload.ingestUrl,(function(){d.k.logUserAction(o.toJSON(),{entity:h.py.Video,actionType:h.Vw.Upload,workflowPhase:h.eu.Discard,descriptor:h.yh.Single,location:h.LZ.MyUploads}),r.Radio.channel(t.channelName).trigger(b.S.UPLOAD_CANCELLED)})),this.setOverallProgress()}}},{key:"onSuccess",value:function(e,t){var n=this.uploader.getId(e),o=this.getCollection().get(n);o.set("fileInfo",t),d.k.logUserAction({id:e.cvUpload.uploadId},{entity:h.py.Video,actionType:h.Vw.Upload,workflowPhase:h.eu.Complete,descriptor:h.yh.Single,location:h.LZ.VideoUpload}),r.Radio.channel(this.channelName).trigger(b.S.UPLOAD_COMPLETE,o)}},{key:"cancelAllUploads",value:function(){var e=this,t=this.getCollection().map((function(e){return e.get("id")}));i.each(t,(function(t){return e.cancelUpload(t)}))}},{key:"getUpload",value:function(e){var t=this.uploader.getId(e);return this.getCollection().get(t)}},{key:"getAcceptedFiles",value:function(){return ae[this.uploadType]}},{key:"getAdditionalFileInfo",value:function(e,t){return{}}}])}(y.Q.t6),fe=function(e){function t(){return $(this,t),te(this,t,arguments)}return re(t,e),Y(t,[{key:"uploadType",get:function(){return ue.Video}},{key:"name",get:function(){return w.D.VideoUpload}},{key:"fileLifestyle",get:function(){return o.Temporary}}])}(se),pe=function(e){function t(){return $(this,t),te(this,t,arguments)}return re(t,e),Y(t,[{key:"uploadType",get:function(){return ue.Subtitle}},{key:"name",get:function(){return w.D.SubtitleUpload}},{key:"fileLifestyle",get:function(){return o.Permanent}}])}(se),ye=function(e){function t(){return $(this,t),te(this,t,arguments)}return re(t,e),Y(t,[{key:"uploadType",get:function(){return ue.LearningResource}},{key:"name",get:function(){return w.D.ResourceUpload}},{key:"fileLifestyle",get:function(){return o.Permanent}}])}(se),de=function(e){function t(){return $(this,t),te(this,t,arguments)}return re(t,e),Y(t,[{key:"uploadType",get:function(){return ue.MixedMedia}},{key:"name",get:function(){return w.D.MixedMediaUpload}},{key:"fileLifestyle",get:function(){return o.Temporary}}])}(se)},28046:(e,t,n)=>{n.d(t,{l:()=>y,v:()=>d});var o=n(21161),r=["pdf"],i=["doc","docx","dotx","dot","rtf","docm","odt"],u=["csv","txt"],c=["xls","xlt","xlsx"],a=["jpg","tif","png","bmp","gif","jpeg"],l="video/*",s=["zip","rar"],f=["ppt","pot","pps","pptx"],p=["srt"],y={IMAGES:".".concat(a.join(",.")),VIDEO:l,MIXED_MEDIA:".".concat(a.join(",."),",").concat(l),RESOURCES:".".concat([].concat(i,c,f,r,u,a,s).join(",.")),SUBTITLES:".".concat(p.join(",."))},d={getResourceType:function(e){var t=e.toLowerCase();return o.contains(i,t)?"document":o.contains(c,t)?"excel":o.contains(f,t)?"powerpoint":o.contains(r,t)?"pdf":o.contains(u,t)?"text":o.contains(a,t)?"image":o.contains(s,t)?"archive":o.contains(p,t)?"subtitle":""}}}}]);
|
|
2
|
+
//# sourceMappingURL=121-1b744469ee-lite.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts/121-1b744469ee-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/upload/errors/file-type/FileTypeError.ts","file:///app/packages/libs/shared/src/apps/upload/enums/FileLifestyle.ts","file:///app/packages/libs/shared/src/apps/upload/errors/internet-connectivity/InternetConnectivityError.ts","file:///app/packages/libs/shared/src/apps/upload/errors/slow-internet/SlowInternetError.ts","file:///app/packages/libs/shared/src/apps/upload/services/DropzoneWrapper.ts","file:///app/packages/libs/shared/src/apps/upload/services/UploadService.ts","file:///app/packages/libs/shared/src/apps/upload/utils/FileExtensionsHelper.ts"],"sourcesContent":["import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { DialogError } from 'libs/shared/errors/primitives/DialogError';\nimport { DialogOptions } from 'libs/shared/interfaces';\n\n/**\n * TODO: Create a more useful message here.\n * Perhaps using the mime types listen on MDN\n * https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Complete_list_of_MIME_types\n * or in the list of all the official mime types\n * https://www.iana.org/assignments/media-types/media-types.xhtml\n */\nexport class FileTypeError extends DialogError {\n constructor(message: string) {\n super(message);\n }\n\n // @ts-ignore\n public get name(): string {\n return 'FileTypeError';\n }\n\n // @ts-ignore\n public get lang(): string {\n return 'upload.fileType';\n }\n\n // @ts-ignore\n public get dialogOptions(): DialogOptions {\n return {\n title: LanguageService.getPhrase(this.lang, 'heading'),\n text: LanguageService.getPhrase(this.lang, 'body'),\n buttons: [{\n text: LanguageService.getPhrase(this.lang, 'okay'),\n className: 'btn btn-dark',\n success: true\n }, {\n text: LanguageService.getPhrase(this.lang, 'close'),\n className: 'btn btn-link',\n close: true\n }]\n };\n }\n}","export enum FileLifestyle {\n Permanent = 0,\n Temporary = 1\n}","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { DialogError } from 'libs/shared/errors/primitives/DialogError';\nimport { DialogOptions } from 'libs/shared/interfaces';\n\nconst lang = 'upload.internetConnectivityError';\n\nexport class InternetConnectivityError extends DialogError {\n constructor() {\n super(LanguageService.getPhrase(lang, 'title'));\n }\n\n // @ts-ignore\n public get name(): string {\n return 'InternetConnectivityError';\n }\n\n // @ts-ignore\n public get dialogOptions(): DialogOptions {\n return {\n title: LanguageService.getPhrase(lang, 'heading'),\n text: LanguageService.getPhrase(lang, 'body'),\n buttons: [{\n text: LanguageService.getPhrase(lang, 'okay'),\n className: 'btn btn-outline-dark',\n success: true\n }]\n };\n }\n}","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { DialogError } from 'libs/shared/errors/primitives/DialogError';\nimport { DialogOptions } from 'libs/shared/interfaces';\n\nconst lang = 'upload.slowInternetError';\n\nexport class SlowInternetError extends DialogError {\n constructor() {\n super(LanguageService.getPhrase(lang, 'title'));\n }\n\n // @ts-ignore\n public get name(): string {\n return 'SlowInternetError';\n }\n\n // @ts-ignore\n public get dialogOptions(): DialogOptions {\n return {\n title: LanguageService.getPhrase(lang, 'heading'),\n text: LanguageService.getPhrase(lang, 'body'),\n buttons: [{\n text: LanguageService.getPhrase(lang, 'okay'),\n className: 'btn btn-outline-dark',\n success: true\n }]\n };\n }\n}","import { ObjectHash, Radio } from 'backbone';\nimport Dropzone from 'dropzone';\nimport * as _ from 'underscore';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { InternetConnectivityError } from 'libs/shared/apps/upload/errors/internet-connectivity/InternetConnectivityError';\nimport { AlertError } from 'libs/shared/errors/primitives/AlertError';\n\nimport { UploadEventNames } from '../constants/UploadConstants';\nimport { SlowInternetError } from '../errors/slow-internet/SlowInternetError';\n\nexport interface UploadApiWrapperOptions extends Core.ServiceOptions {\n maxFileSize: number;\n chunkSize: number;\n chunkingEnabled: boolean;\n loggingEnabled: boolean;\n acceptedFiles: string;\n channelName: string;\n}\n\nexport interface UploadApiWrapper {\n addFile(file: File): void;\n destroy(): void;\n start(): void;\n getId(file: File): string;\n removeFile(file: File): void;\n}\n\nconst dropzoneEvents: string[] = [\n // 'uploadprogress', 'totaluploadprogress',\n // 'addedfile', 'removedfile', 'thumbnail', 'error', 'processing',\n // 'sending', 'success', 'complete', 'addedfile',\n // 'maxfilesreached', 'maxfilesexceeded', 'processingmultiple',\n // 'sendingmultiple', 'completemultiple', 'canceledmultiple',\n // 'reset', 'queuecomplete'\n];\n\nexport class DropzoneWrapper extends Core.Service implements UploadApiWrapper {\n private dropzone: Dropzone;\n public options: UploadApiWrapperOptions;\n\n private slowInternetTimeout: {[uploadId: string]: number} = {};\n private showSlowInternetTimeout: boolean = true;\n\n // @ts-ignore\n public get name(): string {\n return 'DropzoneWrapper';\n }\n\n constructor(options: UploadApiWrapperOptions) {\n super(options);\n }\n\n public initialize(options: UploadApiWrapperOptions): void {\n const { loggingEnabled } = this.options;\n\n const uploadChannel = Radio.channel(options.channelName);\n\n /**\n * Thought I wouldn't see this in any of our TS\n * Guess I was wrong - sha\n */\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const self = this;\n\n this.dropzone = new Dropzone(document.createElement('div'), {\n url: ((files: Dropzone.DropzoneFile[]) => {\n const file = files[0] as any;\n\n const { ingestUrl } = file.cvUpload;\n\n return ingestUrl;\n }) as any,\n\n chunking: this.options.chunkingEnabled,\n chunkSize: this.options.chunkSize,\n forceChunking: true,\n autoProcessQueue: true,\n maxFilesize: this.options.maxFileSize,\n acceptedFiles: this.options.acceptedFiles,\n paramName: 'content',\n timeout: 180000, // 3 mins in milliseconds\n\n init: function (): void {\n if (!loggingEnabled)\n return;\n\n _.each(dropzoneEvents, (eventName: string) => {\n this.on(eventName, (...args: any[]) => {\n const file = args[0] instanceof File ? args[0].name : args[0];\n console.info(eventName, file, args);\n });\n });\n\n this.on('uploadprogress', (file: File, percentage: number, totalBytes: number) => {\n const progress = totalBytes / file.size * 100;\n uploadChannel.trigger('progress', self.getId(file), progress, totalBytes);\n });\n\n this.on('success', (file: File) => {\n /**\n * This is sort of a hack. It assumes the last chunk will be the last chunk that is uploaded\n * which may not necessarily be the case\n */\n const chunks = (file as any).upload.chunks;\n\n const lastChunk = _.last(chunks) as any;\n\n let xhr = lastChunk.xhr;\n\n if (!xhr)\n xhr = lastChunk.file.xhr;\n\n const response = JSON.parse(xhr.response);\n\n (file as any).cvUpload.fileId = response.id;\n\n uploadChannel.trigger(UploadEventNames.UPLOAD_SUCCESS, file, response);\n });\n\n this.on('error', (file: File, messageObj: ObjectHash, xhr: XMLHttpRequest) => {\n if (xhr && xhr.status === 0) {\n Core.ErrorHelper.throw(new InternetConnectivityError());\n return;\n }\n\n /**\n * Don't throw if the error was caused by canceling\n * the chunk upload. this will happen when the user cancels\n * an upload themselves.\n */\n if ((file as Dropzone.DropzoneFile).status !== 'canceled')\n Core.ErrorHelper.throw(\n new AlertError(LanguageService.getPhrase('upload.services', 'uploadError', {\n fileName: file.name,\n message: messageObj.message\n }))\n );\n });\n\n /**\n * We've increased the upload timeout from 30s to 3mins. This means that the upload\n * will not timeout with an upload speed as slow as 200Kbps. However if a single chunk takes\n * longer than 30s, which is an upload speed of 1Mbps. We'll show a dialog letting the user\n * know that their internet speed is very slow, and the upload may take quite some time.\n * - Sha\n */\n this.on('sending', (file: File) => {\n window.clearTimeout(self.slowInternetTimeout[(file as any).path]);\n\n if (!self.showSlowInternetTimeout)\n return;\n\n self.slowInternetTimeout[(file as any).path] = window.setTimeout(() => {\n if (self.showSlowInternetTimeout)\n Core.ErrorHelper.throw(new SlowInternetError());\n\n self.showSlowInternetTimeout = false;\n }, 30000); // 30s\n });\n\n /**\n * Complete will trigger both on successful uploads and on a cancelled upload.\n */\n this.on('complete', (file: File) => window.clearTimeout(self.slowInternetTimeout[(file as any).path]));\n },\n\n params: (files: Dropzone.DropzoneFile[], xhr: XMLHttpRequest, chunk: any) => {\n if (!chunk)\n return;\n\n return {\n chunk_index: chunk.index,\n upload_length: chunk.file.size\n };\n },\n\n /**\n * These methods are here to disable Dropzone's UI related features\n */\n addedfile: () => {},\n thumbnail: () => {},\n uploadprogress: () => {}\n });\n }\n\n public getId(file: File): string {\n return (file as any).upload.uuid;\n }\n\n public addFile(file: Dropzone.DropzoneFile): void {\n this.dropzone.addFile(file);\n }\n\n public removeFile(file: Dropzone.DropzoneFile): void {\n this.dropzone.removeFile(file);\n }\n\n public start(): void {\n this.dropzone.processQueue();\n }\n\n public destroy(): void {\n this.dropzone.destroy();\n }\n\n public static isValidFile(file: File, acceptedFiles: string): boolean {\n return Dropzone.isValidFile(file, acceptedFiles);\n }\n}","import { Radio } from 'backbone';\nimport * as _ from 'underscore';\n\nimport { Caches } from 'libs/common/backbone/constants/Caches';\nimport { CommonServices } from 'libs/common/backbone/constants/CommonServices';\nimport { DataProviders } from 'libs/common/backbone/constants/DataProviders';\nimport { BaseDataService } from 'libs/common/backbone/services/BaseDataService';\nimport { InstanceManager } from 'libs/common/backbone/services/InstanceManager';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { ViewModelService } from 'libs/common/backbone/services/ViewModelService';\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces/HashObject';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions, EntityType, LocationContext, OperationDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { UploadEventNames } from 'libs/shared/apps/upload/constants/UploadConstants';\nimport { FileLifestyle } from 'libs/shared/apps/upload/enums/FileLifestyle';\nimport { FileTypeError } from 'libs/shared/apps/upload/errors/file-type/FileTypeError';\nimport { FileExtensions } from 'libs/shared/apps/upload/utils/FileExtensionsHelper';\nimport { SharedServiceChannels } from 'libs/shared/constants/RadioChannels';\nimport { SharedServices } from 'libs/shared/constants/SharedServices';\n\nimport { DropzoneWrapper, UploadApiWrapper } from './DropzoneWrapper';\n\n/**\n * This data service is locally private and is only\n * used by the UploadService to request/cancel uploads from\n * FileApi\n */\nclass UploadDataService extends BaseDataService {\n constructor() {\n super({\n dataProvider: InstanceManager.getInstance(DataProviders.Ajax),\n cache: InstanceManager.getInstance(Caches.Fifo),\n alertService: InstanceManager.getInstance(CommonServices.ALERT)\n });\n }\n\n private incrementingUploadId: number = 0;\n\n // @ts-ignore\n public get name(): string {\n /**\n * This string is not in DataServices because this data service is private.\n */\n return 'UploadDataService';\n }\n\n /**\n * This is not sitting in RadioChannels\n * because it is only used in this file\n */\n // @ts-ignore\n public get channelName(): string {\n return 'private:upload:data:service';\n }\n\n public requestUploads(\n resource: string,\n files: File[],\n fileLifestyle: FileLifestyle,\n fileCallback: (file: File, response: any) => void,\n callback: () => void\n ): void {\n const chain = this.chain();\n\n _.each(files, file => {\n this.incrementingUploadId++;\n\n chain.create({\n resource,\n eventPrefix: `request:upload:${this.incrementingUploadId}`,\n data: this.getFileUploadRequest(file, fileLifestyle),\n callback: (response: any) => {\n fileCallback(file, response);\n },\n errorHandler: this.alertService.error(`Something went wrong while we were uploading your video. Please try again.`)\n });\n });\n\n chain.func(() => {\n callback();\n }).run();\n }\n\n public cancelUpload(uploadId: string, ingestUrl: string, callback?: (response: any) => void): void {\n this.create({\n resource: '/api/upload/cancel',\n eventPrefix: 'cancel:upload',\n data: {\n uploadId, ingestUrl\n },\n callback\n });\n }\n\n private getFileUploadRequest(file: File, fileLifestyle: FileLifestyle): HashObject {\n const splitName = file.name.split('.');\n\n /**\n * TODO: We may need to set the file permanence in file api to\n * permanent for resources and subtitles\n * Check what Prad/Cam say in\n * https://app.asana.com/0/720933954350984/735809491718142\n */\n return {\n name: splitName.join('.'),\n extension: splitName.length > 1 ? splitName.pop() : '',\n fileSize: file.size,\n fileLifestyle\n };\n }\n\n public onDestroy(): void {\n InstanceManager\n .releaseInstance(DataProviders.Ajax)\n .releaseInstance(Caches.Fifo);\n }\n}\n\n\nexport interface UploadItem extends Core.Model {\n file: File;\n name: string;\n progress: number;\n}\n\nexport enum UploadType {\n Video,\n LearningResource,\n Subtitle,\n MixedMedia\n}\n\nconst AcceptedFiles = {\n [UploadType.Video]: FileExtensions.VIDEO,\n [UploadType.LearningResource]: FileExtensions.RESOURCES,\n [UploadType.Subtitle]: FileExtensions.SUBTITLES,\n [UploadType.MixedMedia]: FileExtensions.MIXED_MEDIA\n};\n\nconst ChannelNames = {\n [UploadType.Video]: SharedServiceChannels.VIDEO_UPLOAD,\n [UploadType.LearningResource]: SharedServiceChannels.RESOURCE_UPLOAD,\n [UploadType.Subtitle]: SharedServiceChannels.SUBTITLE_UPLOAD,\n [UploadType.MixedMedia]: SharedServiceChannels.MIXED_MEDIA_UPLOAD\n};\n\nconst CHUNK_SIZE = 1024 * 1024 * 4; // 4mb\nconst MAX_FILE_SIZE = 1024 * 1024 * 1024 * 50; // 50gb\n\nexport interface UploadServiceOptions {\n uploadUrl?: string;\n}\n\nclass UploadService extends Core.Service {\n protected options: UploadServiceOptions;\n protected uploadType: UploadType;\n protected fileLifestyle: FileLifestyle;\n\n /**\n *\n */\n constructor(options: UploadServiceOptions = {}) {\n super({\n uploadUrl: '/api/upload',\n ...options\n });\n }\n\n protected uploader: UploadApiWrapper;\n\n private progressViewModel: Core.Model;\n\n private uploadDataService: UploadDataService;\n\n private collection: Core.Collection<UploadItem>;\n\n public initialize(): void {\n this.uploadDataService = new UploadDataService();\n\n this.progressViewModel = ViewModelService.get(`upload:progress:${this.uploadType}`);\n\n this.bindListeners();\n }\n\n // @ts-ignore\n public get channelName(): string {\n return ChannelNames[this.uploadType];\n }\n\n // @ts-ignore\n public get lang(): string {\n return 'uploadShared.services';\n }\n\n /**\n * Dropzone is initialized once after the first upload is requested and it's chunk size\n * is set for the rest of the uploads. If we happen to have multiple ingest\n * servers that have different chunk max / min sizes, this may voilate those\n * sizes.\n */\n private initUploader(minChunkSize: number, maxChunkSize: number): void {\n if (this.uploader)\n return;\n\n let chunkSize = CHUNK_SIZE;\n\n if (minChunkSize && chunkSize < minChunkSize)\n chunkSize = minChunkSize;\n\n if (maxChunkSize && chunkSize > maxChunkSize)\n chunkSize = maxChunkSize;\n\n this.uploader = new DropzoneWrapper({\n chunkingEnabled: true,\n loggingEnabled: true,\n chunkSize,\n maxFileSize: MAX_FILE_SIZE,\n acceptedFiles: this.getAcceptedFiles(),\n channelName: this.channelName\n });\n }\n\n private bindListeners(): void {\n this.listenTo(this.channelName, 'progress', this.onProgress);\n\n this.listenTo(this.channelName, UploadEventNames.UPLOAD_SUCCESS, this.onSuccess);\n }\n\n private onProgress(id: string, percentage: number, totalUploaded: number): void {\n const model = this.collection.get(id);\n\n if (!model)\n return;\n\n model.set({\n progress: percentage > 100 ? 100 : percentage,\n totalUploaded\n });\n\n this.setOverallProgress();\n }\n\n public isUploading(): boolean {\n return !!this.getCollection().length;\n }\n\n public getCollection(): Core.Collection<UploadItem> {\n if (this.collection)\n return this.collection;\n\n this.collection = new Core.Collection<UploadItem>();\n return this.collection;\n }\n\n public setOverallProgress(): void {\n let totalUploaded = 0;\n let totalFileSize = 0;\n\n const collection = this.getCollection();\n\n if (!collection.length) {\n this.progressViewModel.set({ progress: 0 });\n return;\n }\n\n collection.each((model: Core.Model) => {\n totalUploaded += model.get('totalUploaded') || 0;\n totalFileSize += model.get('file').size || 0;\n });\n\n const percentage = totalUploaded / totalFileSize * 100;\n\n const done = percentage >= 100;\n\n const updateProgress = () => {\n this.progressViewModel.set({\n progress: done ? 100 : percentage,\n done\n });\n };\n\n if (!done) {\n updateProgress();\n return;\n }\n \n /**\n * The ingest backend takes a short while after an upload is done\n * before the complete endpoint will actually response successfully.\n * So this prevents the eager beavers from clicking \"finish\" immediately\n * and having their entire upload session break.\n * - Sha\n */\n window.setTimeout(updateProgress, 2000);\n }\n\n public isValidFile(file: File): boolean {\n return DropzoneWrapper.isValidFile(file, this.getAcceptedFiles());\n }\n\n /**\n * Request uploads from fileApi and starts uploading.\n * @param files Array of browser File objects\n * @returns Returns false if any of the files did not match the accepted file list.\n */\n public addFiles(files: File[], analyticsOptions?: AnalyticsOptions): void {\n if (_.any(files, file => !this.isValidFile(file))) {\n Core.ErrorHelper.throw(\n new FileTypeError(LanguageService.getPhrase(this.lang, 'invalidFileType'))\n );\n return;\n }\n\n this.requestUploads(files, analyticsOptions);\n }\n\n private requestUploads(files: File[], analyticsOptions?: AnalyticsOptions): void {\n const wasUploading = this.isUploading();\n\n const collection = this.getCollection();\n\n const fileCallback = (file: File, response: any) => {\n /**\n * minChunkSize and maxChunkSize have been deprecated.\n * Remove once Lite and Library Editor has been updated\n * to use the new fields minChunkLength and maxChunkLength.\n */\n if ('minChunkSize' in response || 'maxChunkSize' in response) {\n this.initUploader(response.minChunkSize * 1024, response.maxChunkSize * 1024);\n } else {\n this.initUploader(response.minChunkLength, response.maxChunkLength);\n }\n\n (file as any).cvUpload = {\n uploadId: response.uploadId,\n ingestUrl: response.ingestUrl\n };\n\n this.uploader.addFile(file);\n\n let fileName = file.name;\n\n // Remove file extension from filename if video\n if (this.uploadType === UploadType.Video)\n fileName = fileName.replace(/\\.[^/.]+$/, '');\n\n collection.add({\n id: this.uploader.getId(file),\n file,\n name: fileName,\n ...this.getAdditionalFileInfo(file, response)\n }, { at: collection.length - 1 });\n };\n\n const callback = () => {\n if (analyticsOptions) {\n AnalyticsHelper.logUserAction({\n uploadCount: files.length\n }, analyticsOptions);\n }\n\n const channel = Radio.channel(this.channelName);\n channel.trigger(UploadEventNames.FILES_ADDED, files, wasUploading);\n };\n\n this.uploadDataService.requestUploads(\n this.options.uploadUrl,\n files,\n this.fileLifestyle,\n fileCallback,\n callback\n );\n }\n\n public addFile(file: File, analyticsOptions: AnalyticsOptions): void {\n this.addFiles([file], analyticsOptions);\n }\n\n public cancelUpload(id: string): void {\n const collection = this.getCollection();\n const model = collection.get(id);\n\n if (!model)\n return;\n\n const file = model.get('file') as any;\n\n this.uploader.removeFile(file);\n collection.remove(model);\n\n this.uploadDataService.cancelUpload(file.cvUpload.uploadId, file.cvUpload.ingestUrl, () => {\n AnalyticsHelper.logUserAction(model.toJSON(), {\n entity: EntityType.Video,\n actionType: UserAction.Upload,\n workflowPhase: WorkflowPhase.Discard,\n descriptor: OperationDescriptor.Single,\n location: LocationContext.MyUploads\n });\n\n Radio.channel(this.channelName).trigger(UploadEventNames.UPLOAD_CANCELLED);\n });\n\n this.setOverallProgress();\n }\n\n protected onSuccess(file: File, response: any): void {\n const fileId = this.uploader.getId(file);\n\n const upload = this.getCollection().get(fileId);\n\n upload.set('fileInfo', response);\n\n AnalyticsHelper.logUserAction({\n id: (file as any).cvUpload.uploadId\n }, {\n entity: EntityType.Video,\n actionType: UserAction.Upload,\n workflowPhase: WorkflowPhase.Complete,\n descriptor: OperationDescriptor.Single,\n location: LocationContext.VideoUpload\n });\n\n const channel = Radio.channel(this.channelName);\n channel.trigger(UploadEventNames.UPLOAD_COMPLETE, upload);\n }\n\n public cancelAllUploads(): void {\n /**\n * We're using model ids and _.each\n * instead of collection.each because this.cancelUpload\n * removes items from the collection which breaks collection.each\n */\n const models = this.getCollection().map(m => m.get('id'));\n _.each(models, m => this.cancelUpload(m));\n }\n\n public getUpload(file: File): Core.Model {\n const fileId = this.uploader.getId(file);\n\n return this.getCollection().get(fileId);\n }\n\n protected getAcceptedFiles(): string {\n return AcceptedFiles[this.uploadType];\n }\n\n // eslint-disable-next-line\n protected getAdditionalFileInfo(file: File, response: any): HashObject {\n return {};\n }\n}\n\nexport class BaseVideoUploadService extends UploadService {\n // @ts-ignore\n protected get uploadType(): UploadType {\n return UploadType.Video;\n }\n\n // @ts-ignore\n public get name(): string {\n return SharedServices.VideoUpload;\n }\n\n // @ts-ignore\n public get fileLifestyle(): FileLifestyle {\n return FileLifestyle.Temporary;\n }\n}\n\nexport class SubtitleUploadService extends UploadService {\n // @ts-ignore\n protected get uploadType(): UploadType {\n return UploadType.Subtitle;\n }\n\n // @ts-ignore\n public get name(): string {\n return SharedServices.SubtitleUpload;\n }\n\n // @ts-ignore\n public get fileLifestyle(): FileLifestyle {\n return FileLifestyle.Permanent;\n }\n}\n\nexport class LearningResourceUploadService extends UploadService {\n // @ts-ignore\n protected get uploadType(): UploadType {\n return UploadType.LearningResource;\n }\n\n // @ts-ignore\n public get name(): string {\n return SharedServices.ResourceUpload;\n }\n\n // @ts-ignore\n public get fileLifestyle(): FileLifestyle {\n return FileLifestyle.Permanent;\n }\n}\n\nexport class MixedMediaUploadService extends UploadService {\n // @ts-ignore\n protected get uploadType(): UploadType {\n return UploadType.MixedMedia;\n }\n\n // @ts-ignore\n public get name(): string {\n return SharedServices.MixedMediaUpload;\n }\n\n // @ts-ignore\n public get fileLifestyle(): FileLifestyle {\n return FileLifestyle.Temporary;\n }\n}","import * as _ from 'underscore';\n\n/**\n * This are kept as separate variables for when we eventually need a single group of them.\n * For example when we add image upload support.\n */\n\nconst pdfExtensions = ['pdf'];\nconst docExtensions = [ 'doc', 'docx', 'dotx', 'dot', 'rtf', 'docm', 'odt' ];\nconst textExtensions = [ 'csv', 'txt' ];\nconst excelExtensions = [ 'xls', 'xlt', 'xlsx' ];\nconst imageExtensions = [ 'jpg', 'tif', 'png', 'bmp', 'gif', 'jpeg' ];\nconst videoMimeType = 'video/*';\nconst archiveExtensions = [ 'zip', 'rar' ];\nconst powerPointExtensions = [ 'ppt', 'pot', 'pps', 'pptx' ];\n\nconst subtitleExtensions = ['srt'];\n\nconst FileExtensions = {\n IMAGES: `.${imageExtensions.join(',.')}`,\n VIDEO: videoMimeType,\n MIXED_MEDIA: `.${imageExtensions.join(',.')},${videoMimeType}`,\n RESOURCES: `.${[\n ...docExtensions,\n ...excelExtensions,\n ...powerPointExtensions,\n ...pdfExtensions,\n ...textExtensions,\n ...imageExtensions,\n ...archiveExtensions\n ].join(',.')}`,\n SUBTITLES: `.${subtitleExtensions.join(',.')}`\n};\n\nconst FileExtensionHelper = {\n getResourceType(extension: string): string {\n const ext = extension.toLowerCase();\n\n if (_.contains(docExtensions, ext)) return 'document';\n if (_.contains(excelExtensions, ext)) return 'excel';\n if (_.contains(powerPointExtensions, ext)) return 'powerpoint';\n if (_.contains(pdfExtensions, ext)) return 'pdf';\n\n if (_.contains(textExtensions, ext)) return 'text';\n if (_.contains(imageExtensions, ext)) return 'image';\n if (_.contains(archiveExtensions, ext)) return 'archive';\n if (_.contains(subtitleExtensions, ext)) return 'subtitle';\n\n return '';\n }\n};\n\nexport { FileExtensions, FileExtensionHelper };"],"names":["FileTypeError","message","title","this","lang","text","buttons","className","success","close","FileLifestyle","InternetConnectivityError","LanguageService","DialogError","SlowInternetError","dropzoneEvents","DropzoneWrapper","options","slowInternetTimeout","showSlowInternetTimeout","loggingEnabled","uploadChannel","Radio","channelName","self","dropzone","document","createElement","url","files","cvUpload","ingestUrl","chunking","chunkingEnabled","chunkSize","forceChunking","autoProcessQueue","maxFilesize","maxFileSize","acceptedFiles","paramName","timeout","init","eventName","on","args","file","File","name","console","info","percentage","totalBytes","progress","size","trigger","getId","chunks","upload","lastChunk","xhr","response","JSON","parse","fileId","id","messageObj","status","AlertError","fileName","window","clearTimeout","path","setTimeout","params","chunk","chunk_index","index","upload_length","addedfile","thumbnail","uploadprogress","uuid","addFile","removeFile","processQueue","destroy","UploadType","UploadDataService","dataProvider","InstanceManager","DataProviders","cache","Caches","alertService","CommonServices","incrementingUploadId","resource","fileLifestyle","fileCallback","callback","chain","create","eventPrefix","data","getFileUploadRequest","errorHandler","error","func","run","uploadId","splitName","split","join","extension","length","pop","fileSize","releaseInstance","BaseDataService","B","AcceptedFiles","Video","LearningResource","Subtitle","MixedMedia","ChannelNames","UploadService","uploadUrl","uploadDataService","progressViewModel","ViewModelService","uploadType","bindListeners","minChunkSize","maxChunkSize","uploader","getAcceptedFiles","listenTo","onProgress","onSuccess","totalUploaded","model","collection","get","set","setOverallProgress","getCollection","totalFileSize","each","done","updateProgress","isValidFile","analyticsOptions","requestUploads","wasUploading","isUploading","initUploader","minChunkLength","maxChunkLength","replace","add","getAdditionalFileInfo","at","AnalyticsHelper","uploadCount","addFiles","remove","cancelUpload","toJSON","entity","actionType","workflowPhase","descriptor","location","models","map","m","BaseVideoUploadService","SharedServices","Temporary","SubtitleUploadService","Permanent","LearningResourceUploadService","MixedMediaUploadService","pdfExtensions","docExtensions","textExtensions","excelExtensions","imageExtensions","videoMimeType","archiveExtensions","powerPointExtensions","subtitleExtensions","FileExtensions","IMAGES","VIDEO","MIXED_MEDIA","RESOURCES","SUBTITLES","FileExtensionHelper","getResourceType","ext","toLowerCase"],"sourceRoot":""}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! For license information please see 1221-
|
|
2
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[1221],{18488:(e,t,r)=>{r.d(t,{o:()=>c});var n=r(99940),a=r(97395),o={namespace:"share-v2"},c={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:".concat(e.objectId)]}},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)]}},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)]}},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"],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)}}}},66122:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(32735);function a(e){return n.createElement("span",{id:"".concat(e.name,"Error"),className:"".concat(e.className," invalid-feedback d-block"),role:"status"},e.children)}},93681:(e,t,r)=>{r.d(t,{o:()=>d});var n=r(32735),a=r(31453),o=r(2786),c=r(4594);const i="s6wnJ",l="UFQ2T",u="Tp9_3";function s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,c,i=[],l=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(i.push(n.value),i.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{if(!l&&null!=r.return&&(c=r.return(),Object(c)!==c))return}finally{if(u)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return f(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)?f(e,t):void 0}}(e,t)||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.")}()}function f(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}function h(e){switch(e){case c.E.Video:case c.E.Interactive:case c.E.Clip:return"y0V3Z";case c.E.Subject:case c.E.Playlist:return"x3h8F";case c.E.Series:return"Wrg5x";default:return""}}function d(e){return n.createElement("div",{className:"d-flex"},e.children)}var m={cover:u,full:"AlF2T"},v={base:"uQ2rm",full:""};d.NarrowContent=function(e){return n.createElement("div",{className:"".concat("INvJ0"," mx-auto w-100 ").concat(e.className?e.className:"")},e.children)},d.Left=function(e){return n.createElement("div",{className:"".concat(i," ").concat(e.className?e.className:"")},e.children)},d.LeftImage=function(e){var t=s(n.useState(!1),2),r=t[0],a=t[1],o=s(n.useState(""),2),c=o[0],f=o[1];return n.useEffect((function(){if(e.imageUrl){var t=new Image;return t.onload=function(){return a(!0)},t.src=e.imageUrl,function(){return t.onload=null}}var r=e.fallbackImages[Math.floor(Math.random()*e.fallbackImages.length)];f(r.bgUrl)}),[e.imageUrl]),n.createElement("div",{className:"".concat(i," ").concat(l," ").concat(u," bg-light"),style:{backgroundImage:c?"url('".concat(c,"')"):""}},r&&n.createElement(n.Fragment,null,n.createElement("div",{className:"Mtlg9",style:{backgroundImage:"url('".concat(e.imageUrl,"')")}}),n.createElement("div",{className:"".concat("NxEjh"," ").concat(h(e.objectType))},n.createElement("div",{className:"NN9cV"},n.createElement("img",{className:"PkJ8J",src:e.imageUrl,alt:e.title})))))},d.LeftImageWithBackground=function(e){var t={backgroundImage:e.imageUrl?'url("'.concat(e.imageUrl,'")'):""};return e.backgroundColor&&(t.backgroundColor=e.backgroundColor),n.createElement("div",{className:"".concat(i," ").concat(l," ").concat(m[e.imageSize||"cover"]," d-flex align-items-center"),style:t,title:e.title})},d.Right=function(e){return n.createElement("div",{className:"".concat("eoZzJ"," ").concat(e.className?e.className:"")},e.children)},d.Header=function(e){var t,r=(null==e?void 0:e.logoComponent)||o.$S;return n.createElement("div",{className:"position-relative"},!!e.bannerComponent&&e.bannerComponent,n.createElement("div",{className:(0,a.A)("YHNgA","position-absolute",null===(t=e.className)||void 0===t?void 0:t.logoContainer)},n.createElement(r,null)),e.children)},d.Content=function(e){return n.createElement("div",{className:(0,a.A)("RVyLM","d-flex flex-column justify-content-center h-100",null==e?void 0:e.className)},e.children)},d.ContentBody=function(e){var t=v[e.width||"base"];return n.createElement("div",{className:(0,a.A)("aLd5V",t,"m-auto p-3",e.className)},e.children)},d.Buttons=function(e){return n.createElement("div",{className:(0,a.A)("position-fixed bg-white d-flex align-items-center","ZW85Q",null==e?void 0:e.className)},e.children)}},75608:(e,t,r)=>{r.d(t,{a:()=>d});var n=r(20354),a=r(30439),o=r(4594),c=r(21750),i=r(43012),l=r(20768),u=r(5112),s=r(60011),f=r(31949),h=r(1575);function d(e){var t=n.a.useBasicFetch(f.N.currentUser()),r=n.a.useBasicFetch(a.o.getShareObject(e)),d=function(){if(!r.data||!t.data)return null;switch(r.data.objectTypeId){case o.E.Video:return h.R.publicVideo(r.data.objectId,e);case o.E.Clip:return i.e.publicClip(r.data.objectId,e);case o.E.Interactive:return l.b.publicInteractiveMetadata(r.data.objectId,e);case o.E.Playlist:return u.C.getSharedPlaylist(r.data.objectId,e);case o.E.Subject:return c.x.classification(r.data.objectId,t.data.id);case o.E.Series:return s.J.sharedSeries(r.data.objectId,e)}}();return n.a.useBasicFetch(d).data}},61221:(e,t,r)=>{r.r(t),r.d(t,{VideoPincodeView:()=>L});var n=r(32735),a=r(50242),o=r(23481),c=r(81886),i=r(20354),l=r(64249),u=r(18488),s=r(66122),f=r(93681),h=r(2102),d=r(83345),m=r(54610),v=r(67453),y=r(97027),p=r(71214),g=r(75608);const b={formContainer:"ldJEo",toggleEye:"VUsmU",input:"DRd0y"};function E(e){return E="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},E(e)}function w(){w=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,a=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},c=o.iterator||"@@iterator",i=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function s(e,t,r,n){var o=t&&t.prototype instanceof p?t:p,c=Object.create(o.prototype),i=new U(n||[]);return a(c,"_invoke",{value:P(e,r,i)}),c}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=s;var h="suspendedStart",d="suspendedYield",m="executing",v="completed",y={};function p(){}function g(){}function b(){}var k={};u(k,c,(function(){return this}));var j=Object.getPrototypeOf,N=j&&j(j(_([])));N&&N!==r&&n.call(N,c)&&(k=N);var S=b.prototype=p.prototype=Object.create(k);function x(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function L(e,t){function r(a,o,c,i){var l=f(e[a],e,o);if("throw"!==l.type){var u=l.arg,s=u.value;return s&&"object"==E(s)&&n.call(s,"__await")?t.resolve(s.__await).then((function(e){r("next",e,c,i)}),(function(e){r("throw",e,c,i)})):t.resolve(s).then((function(e){u.value=e,c(u)}),(function(e){return r("throw",e,c,i)}))}i(l.arg)}var o;a(this,"_invoke",{value:function(e,n){function a(){return new t((function(t,a){r(e,n,t,a)}))}return o=o?o.then(a,a):a()}})}function P(t,r,n){var a=h;return function(o,c){if(a===m)throw Error("Generator is already running");if(a===v){if("throw"===o)throw c;return{value:e,done:!0}}for(n.method=o,n.arg=c;;){var i=n.delegate;if(i){var l=I(i,n);if(l){if(l===y)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===h)throw a=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=m;var u=f(t,r,n);if("normal"===u.type){if(a=n.done?v:d,u.arg===y)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(a=v,n.method="throw",n.arg=u.arg)}}}function I(t,r){var n=r.method,a=t.iterator[n];if(a===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,I(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),y;var o=f(a,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,y;var c=o.arg;return c?c.done?(r[t.resultName]=c.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,y):c:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,y)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function U(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function _(t){if(t||""===t){var r=t[c];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,o=function r(){for(;++a<t.length;)if(n.call(t,a))return r.value=t[a],r.done=!1,r;return r.value=e,r.done=!0,r};return o.next=o}}throw new TypeError(E(t)+" is not iterable")}return g.prototype=b,a(S,"constructor",{value:b,configurable:!0}),a(b,"constructor",{value:g,configurable:!0}),g.displayName=u(b,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,l,"GeneratorFunction")),e.prototype=Object.create(S),e},t.awrap=function(e){return{__await:e}},x(L.prototype),u(L.prototype,i,(function(){return this})),t.AsyncIterator=L,t.async=function(e,r,n,a,o){void 0===o&&(o=Promise);var c=new L(s(e,r,n,a),o);return t.isGeneratorFunction(r)?c:c.next().then((function(e){return e.done?e.value:c.next()}))},x(S),u(S,l,"Generator"),u(S,c,(function(){return this})),u(S,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=_,U.prototype={constructor:U,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(C),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function a(n,a){return i.type="throw",i.arg=t,r.next=n,a&&(r.method="next",r.arg=e),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var c=this.tryEntries[o],i=c.completion;if("root"===c.tryLoc)return a("end");if(c.tryLoc<=this.prev){var l=n.call(c,"catchLoc"),u=n.call(c,"finallyLoc");if(l&&u){if(this.prev<c.catchLoc)return a(c.catchLoc,!0);if(this.prev<c.finallyLoc)return a(c.finallyLoc)}else if(l){if(this.prev<c.catchLoc)return a(c.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<c.finallyLoc)return a(c.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var c=o?o.completion:{};return c.type=e,c.arg=t,o?(this.method="next",this.next=o.finallyLoc,y):this.complete(c)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),y},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),y}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;C(r)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:_(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),y}},t}function k(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,c,i=[],l=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(i.push(n.value),i.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{if(!l&&null!=r.return&&(c=r.return(),Object(c)!==c))return}finally{if(u)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return j(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)?j(e,t):void 0}}(e,t)||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.")}()}function j(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 N=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function c(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(c,i)}l((n=n.apply(e,t||[])).next())}))},S="share.videoPincode",x=o.T.encloseNamespace(S);function L(e){var t=k(n.useState(""),2),r=t[0],o=t[1],E=k(n.useState(!1),2),j=E[0],L=E[1],P=k(n.useState(""),2),I=P[0],O=P[1],C=i.a.useGetFetchAsync(),U=(0,g.a)(e.shareId);if(!U)return n.createElement(n.Fragment,null);var _=v.j.createUrl(l.I.getImageUrl(U),{size:m.h2.Large});return n.createElement(f.o,null,n.createElement(f.o.LeftImage,{title:U.name,imageUrl:_,objectType:U.typeId,fallbackImages:y.Hq}),n.createElement(f.o.Right,null,n.createElement(f.o.Header,null),n.createElement(f.o.Content,null,n.createElement(f.o.NarrowContent,null,n.createElement("form",{onSubmit:function(t){var n;return N(this,void 0,void 0,w().mark((function o(){var i,l;return w().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(t.preventDefault(),r){o.next=3;break}return o.abrupt("return");case 3:return L(!0),o.prev=4,o.next=7,C(u.o.getPincodeByCode(r));case 7:if((null==(i=o.sent)?void 0:i.shareId)===e.shareId){o.next=12;break}return O(x("incorrectPincodeError")),L(!1),o.abrupt("return");case 12:p.h.setPincode(e.shareId,r),l=c.Q.C$.getHref(e.appLink),c.Q.Ab.PageLoad(l),o.next=25;break;case 17:if(o.prev=17,o.t0=o.catch(4),(null===(n=o.t0.responseJSON)||void 0===n?void 0:n.status)!==a.o.NotFound){o.next=23;break}return O(x("incorrectPincodeError")),L(!1),o.abrupt("return");case 23:O(x("ajaxErrorMessage")),L(!1);case 25:case"end":return o.stop()}}),o,null,[[4,17]])})))},className:"position-relative"},n.createElement("div",{className:"form-group"},n.createElement("label",{className:"h2",htmlFor:"link-password"},n.createElement(d.x,{namespace:S,phrase:"info"})),n.createElement("input",{id:"link-password",type:"text",className:"form-control form-control-lg ".concat(b.input," ").concat(I?"is-invalid":""),placeholder:x("placeholder"),onChange:function(e){return o(e.target.value)},value:r,autoComplete:"off","aria-errormessage":"linkPasswordError"}),I&&n.createElement(s.A,{className:"mb-3",name:"linkPassword"},I)),n.createElement(h.m,{variant:"dark",showSpinner:j,type:"submit",className:"w-100 mt-3 btn-lg",disabled:j||!r},n.createElement(d.x,{namespace:S,phrase:"confirm"})))))))}},97027:(e,t,r)=>{r.d(t,{Hq:()=>f,Zf:()=>m});var n=r(32735),a=r(54610),o=r(4594),c=r(67453),i=r(99742);const l={left:"vIypY",leftTextImage:"YViNj",right:"MkD4u",blur:"X6mCh",imageContainer:"bc7kz",imagePosition:"JOhEj",image:"Ef2QR",thumbnail:"Gdurb",tallposter:"fjVNK",cover:"o3j31",linksContainer:"AT9Dk"};function u(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,c,i=[],l=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(i.push(n.value),i.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{if(!l&&null!=r.return&&(c=r.return(),Object(c)!==c))return}finally{if(u)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return s(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)?s(e,t):void 0}}(e,t)||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.")}()}function s(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 f=[{bgUrl:i.W.LaunchPad.BG_1},{bgUrl:i.W.LaunchPad.BG_2},{bgUrl:i.W.LaunchPad.BG_3},{bgUrl:i.W.LaunchPad.BG_4},{bgUrl:i.W.LaunchPad.BG_5}],h=[{bgUrl:i.W.LaunchPad.PRODUCT.BG_1},{bgUrl:i.W.LaunchPad.PRODUCT.BG_2},{bgUrl:i.W.LaunchPad.PRODUCT.BG_3},{bgUrl:i.W.LaunchPad.PRODUCT.BG_4},{bgUrl:i.W.LaunchPad.PRODUCT.BG_5},{bgUrl:i.W.LaunchPad.PRODUCT.BG_6},{bgUrl:i.W.LaunchPad.PRODUCT.BG_7},{bgUrl:i.W.LaunchPad.PRODUCT.BG_8},{bgUrl:i.W.LaunchPad.PRODUCT.BG_9}];function d(e){switch(e){case o.E.Video:case o.E.Interactive:case o.E.Clip:return l.thumbnail;case o.E.Subject:case o.E.Playlist:return l.cover;case o.E.Series:return l.tallposter;default:return""}}function m(e){var t,r=u(n.useState(!1),2),o=r[0],i=r[1],s=u(n.useState(""),2),f=s[0],m=s[1],v=c.j.createUrl(e.imageUrl,{size:a.h2.Large}),y=h;return n.useEffect((function(){if(!v&&y&&0!==y.length){var e,t=(e=y)[Math.floor(Math.random()*e.length)];t.bgUrl&&m(t.bgUrl)}}),[]),n.useEffect((function(){if(v){var e=new Image;return e.onload=function(){return i(!0)},e.src=v,function(){return e.onload=null}}}),[]),n.createElement("div",{className:"d-flex"},e.leftComponent?e.leftComponent():n.createElement("div",{className:"".concat(l.left," ").concat(f?"bg-blue d-flex align-items-center":"bg-light")},f?n.createElement("img",{className:"img-fluid",src:f,draggable:!1}):o&&n.createElement(n.Fragment,null,n.createElement("div",{className:l.blur,style:{backgroundImage:"url('".concat(v,"')")}}),n.createElement("div",{className:"".concat(l.imageContainer," ").concat(d(e.objectType))},n.createElement("div",{className:l.imagePosition},n.createElement("img",{className:l.image,src:v,alt:e.title}))))),n.createElement("div",{className:"".concat(l.right," bg-white d-flex flex-column")},n.createElement("div",{className:"position-absolute d-flex align-items-center ".concat(l.linksContainer)},null===(t=e.links)||void 0===t?void 0:t.map((function(e,t){return e.hide?n.createElement(n.Fragment,{key:t}):n.createElement("a",{key:t,href:e.url,className:"info-link fw-semibold",onClick:e.onClick},e.text)}))),e.children))}}}]);
|
|
3
|
-
//# sourceMappingURL=1221-
|
|
1
|
+
/*! For license information please see 1221-1109d5379d-lite.chunk.js.LICENSE.txt */
|
|
2
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[1221],{18488:(e,t,r)=>{r.d(t,{o:()=>c});var n=r(99940),a=r(97395),o={namespace:"share-v2"},c={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:".concat(e.objectId)]}},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)]}},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)]}},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"],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)}}}},66122:(e,t,r)=>{r.d(t,{A:()=>a});var n=r(32735);function a(e){return n.createElement("span",{id:"".concat(e.name,"Error"),className:"".concat(e.className," invalid-feedback d-block"),role:"status"},e.children)}},93681:(e,t,r)=>{r.d(t,{o:()=>d});var n=r(32735),a=r(31453),o=r(2786),c=r(4594);const i="s6wnJ",l="UFQ2T",u="Tp9_3";function s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,c,i=[],l=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(i.push(n.value),i.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{if(!l&&null!=r.return&&(c=r.return(),Object(c)!==c))return}finally{if(u)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return f(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)?f(e,t):void 0}}(e,t)||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.")}()}function f(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}function h(e){switch(e){case c.E.Video:case c.E.Interactive:case c.E.Clip:return"y0V3Z";case c.E.Subject:case c.E.Playlist:return"x3h8F";case c.E.Series:return"Wrg5x";default:return""}}function d(e){return n.createElement("div",{className:"d-flex"},e.children)}var m={cover:u,full:"AlF2T"},v={base:"uQ2rm",full:""};d.NarrowContent=function(e){return n.createElement("div",{className:"".concat("INvJ0"," mx-auto w-100 ").concat(e.className?e.className:"")},e.children)},d.Left=function(e){return n.createElement("div",{className:"".concat(i," ").concat(e.className?e.className:"")},e.children)},d.LeftImage=function(e){var t=s(n.useState(!1),2),r=t[0],a=t[1],o=s(n.useState(""),2),c=o[0],f=o[1];return n.useEffect((function(){if(e.imageUrl){var t=new Image;return t.onload=function(){return a(!0)},t.src=e.imageUrl,function(){return t.onload=null}}var r=e.fallbackImages[Math.floor(Math.random()*e.fallbackImages.length)];f(r.bgUrl)}),[e.imageUrl]),n.createElement("div",{className:"".concat(i," ").concat(l," ").concat(u," bg-light"),style:{backgroundImage:c?"url('".concat(c,"')"):""}},r&&n.createElement(n.Fragment,null,n.createElement("div",{className:"Mtlg9",style:{backgroundImage:"url('".concat(e.imageUrl,"')")}}),n.createElement("div",{className:"".concat("NxEjh"," ").concat(h(e.objectType))},n.createElement("div",{className:"NN9cV"},n.createElement("img",{className:"PkJ8J",src:e.imageUrl,alt:e.title})))))},d.LeftImageWithBackground=function(e){var t={backgroundImage:e.imageUrl?'url("'.concat(e.imageUrl,'")'):""};return e.backgroundColor&&(t.backgroundColor=e.backgroundColor),n.createElement("div",{className:"".concat(i," ").concat(l," ").concat(m[e.imageSize||"cover"]," d-flex align-items-center"),style:t,title:e.title})},d.Right=function(e){return n.createElement("div",{className:"".concat("eoZzJ"," ").concat(e.className?e.className:"")},e.children)},d.Header=function(e){var t,r=(null==e?void 0:e.logoComponent)||o.$S;return n.createElement("div",{className:"position-relative"},!!e.bannerComponent&&e.bannerComponent,n.createElement("div",{className:(0,a.A)("YHNgA","position-absolute",null===(t=e.className)||void 0===t?void 0:t.logoContainer)},n.createElement(r,null)),e.children)},d.Content=function(e){return n.createElement("div",{className:(0,a.A)("RVyLM","d-flex flex-column justify-content-center h-100",null==e?void 0:e.className)},e.children)},d.ContentBody=function(e){var t=v[e.width||"base"];return n.createElement("div",{className:(0,a.A)("aLd5V",t,"m-auto p-3",e.className)},e.children)},d.Buttons=function(e){return n.createElement("div",{className:(0,a.A)("position-fixed bg-white d-flex align-items-center","ZW85Q",null==e?void 0:e.className)},e.children)}},75608:(e,t,r)=>{r.d(t,{a:()=>d});var n=r(20354),a=r(30439),o=r(4594),c=r(21750),i=r(43012),l=r(20768),u=r(5112),s=r(60011),f=r(31949),h=r(1575);function d(e){var t=n.a.useBasicFetch(f.N.currentUser()),r=n.a.useBasicFetch(a.o.getShareObject(e)),d=function(){if(!r.data||!t.data)return null;switch(r.data.objectTypeId){case o.E.Video:return h.R.publicVideo(r.data.objectId,e);case o.E.Clip:return i.e.publicClip(r.data.objectId,e);case o.E.Interactive:return l.b.publicInteractiveMetadata(r.data.objectId,e);case o.E.Playlist:return u.C.getSharedPlaylist(r.data.objectId,e);case o.E.Subject:return c.x.classification(r.data.objectId,t.data.id);case o.E.Series:return s.J.sharedSeries(r.data.objectId,e)}}();return n.a.useBasicFetch(d).data}},61221:(e,t,r)=>{r.r(t),r.d(t,{VideoPincodeView:()=>L});var n=r(32735),a=r(50242),o=r(23481),c=r(81886),i=r(20354),l=r(64249),u=r(18488),s=r(66122),f=r(93681),h=r(2102),d=r(83345),m=r(54610),v=r(67453),p=r(97027),y=r(71214),g=r(75608);const b={formContainer:"ldJEo",toggleEye:"VUsmU",input:"DRd0y"};function E(e){return E="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},E(e)}function w(){w=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,a=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},c=o.iterator||"@@iterator",i=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function s(e,t,r,n){var o=t&&t.prototype instanceof y?t:y,c=Object.create(o.prototype),i=new U(n||[]);return a(c,"_invoke",{value:P(e,r,i)}),c}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=s;var h="suspendedStart",d="suspendedYield",m="executing",v="completed",p={};function y(){}function g(){}function b(){}var k={};u(k,c,(function(){return this}));var j=Object.getPrototypeOf,N=j&&j(j(_([])));N&&N!==r&&n.call(N,c)&&(k=N);var S=b.prototype=y.prototype=Object.create(k);function x(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function L(e,t){function r(a,o,c,i){var l=f(e[a],e,o);if("throw"!==l.type){var u=l.arg,s=u.value;return s&&"object"==E(s)&&n.call(s,"__await")?t.resolve(s.__await).then((function(e){r("next",e,c,i)}),(function(e){r("throw",e,c,i)})):t.resolve(s).then((function(e){u.value=e,c(u)}),(function(e){return r("throw",e,c,i)}))}i(l.arg)}var o;a(this,"_invoke",{value:function(e,n){function a(){return new t((function(t,a){r(e,n,t,a)}))}return o=o?o.then(a,a):a()}})}function P(t,r,n){var a=h;return function(o,c){if(a===m)throw Error("Generator is already running");if(a===v){if("throw"===o)throw c;return{value:e,done:!0}}for(n.method=o,n.arg=c;;){var i=n.delegate;if(i){var l=I(i,n);if(l){if(l===p)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===h)throw a=v,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=m;var u=f(t,r,n);if("normal"===u.type){if(a=n.done?v:d,u.arg===p)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(a=v,n.method="throw",n.arg=u.arg)}}}function I(t,r){var n=r.method,a=t.iterator[n];if(a===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,I(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),p;var o=f(a,t.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,p;var c=o.arg;return c?c.done?(r[t.resultName]=c.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,p):c:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,p)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function U(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function _(t){if(t||""===t){var r=t[c];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,o=function r(){for(;++a<t.length;)if(n.call(t,a))return r.value=t[a],r.done=!1,r;return r.value=e,r.done=!0,r};return o.next=o}}throw new TypeError(E(t)+" is not iterable")}return g.prototype=b,a(S,"constructor",{value:b,configurable:!0}),a(b,"constructor",{value:g,configurable:!0}),g.displayName=u(b,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===g||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,l,"GeneratorFunction")),e.prototype=Object.create(S),e},t.awrap=function(e){return{__await:e}},x(L.prototype),u(L.prototype,i,(function(){return this})),t.AsyncIterator=L,t.async=function(e,r,n,a,o){void 0===o&&(o=Promise);var c=new L(s(e,r,n,a),o);return t.isGeneratorFunction(r)?c:c.next().then((function(e){return e.done?e.value:c.next()}))},x(S),u(S,l,"Generator"),u(S,c,(function(){return this})),u(S,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=_,U.prototype={constructor:U,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(C),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function a(n,a){return i.type="throw",i.arg=t,r.next=n,a&&(r.method="next",r.arg=e),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var c=this.tryEntries[o],i=c.completion;if("root"===c.tryLoc)return a("end");if(c.tryLoc<=this.prev){var l=n.call(c,"catchLoc"),u=n.call(c,"finallyLoc");if(l&&u){if(this.prev<c.catchLoc)return a(c.catchLoc,!0);if(this.prev<c.finallyLoc)return a(c.finallyLoc)}else if(l){if(this.prev<c.catchLoc)return a(c.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<c.finallyLoc)return a(c.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var c=o?o.completion:{};return c.type=e,c.arg=t,o?(this.method="next",this.next=o.finallyLoc,p):this.complete(c)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),p},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;C(r)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:_(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),p}},t}function k(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,c,i=[],l=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(i.push(n.value),i.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{if(!l&&null!=r.return&&(c=r.return(),Object(c)!==c))return}finally{if(u)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return j(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)?j(e,t):void 0}}(e,t)||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.")}()}function j(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 N=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function c(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(c,i)}l((n=n.apply(e,t||[])).next())}))},S="share.videoPincode",x=o.T.encloseNamespace(S);function L(e){var t,r=k(n.useState(null!==(t=e.pincode)&&void 0!==t?t:""),2),o=r[0],E=r[1],j=k(n.useState(!1),2),L=j[0],P=j[1],I=k(n.useState(""),2),O=I[0],C=I[1],U=i.a.useGetFetchAsync(),_=(0,g.a)(e.shareId);if(!_)return n.createElement(n.Fragment,null);var T=v.j.createUrl(l.I.getImageUrl(_),{size:m.h2.Large});return n.createElement(f.o,null,n.createElement(f.o.LeftImage,{title:_.name,imageUrl:T,objectType:_.typeId,fallbackImages:p.Hq}),n.createElement(f.o.Right,null,n.createElement(f.o.Header,null),n.createElement(f.o.Content,null,n.createElement(f.o.NarrowContent,null,n.createElement("form",{onSubmit:function(t){var r,n;return N(this,void 0,void 0,w().mark((function i(){var l,s,f;return w().wrap((function(i){for(;;)switch(i.prev=i.next){case 0:if(t.preventDefault(),o){i.next=3;break}return i.abrupt("return");case 3:return P(!0),i.prev=4,i.next=7,U(u.o.getPincodeByCode(o));case 7:if((null==(l=i.sent)?void 0:l.shareId)===e.shareId){i.next=12;break}return C(x("incorrectPincodeError")),P(!1),i.abrupt("return");case 12:"string"!=typeof(s=Object.assign({},e.appLink)).params&&(null===(r=s.params)||void 0===r||delete r.joinCode),y.h.setPincode(e.shareId,o),f=c.Q.C$.getHref(s),c.Q.Ab.PageLoad(f),i.next=27;break;case 19:if(i.prev=19,i.t0=i.catch(4),(null===(n=i.t0.responseJSON)||void 0===n?void 0:n.status)!==a.o.NotFound){i.next=25;break}return C(x("incorrectPincodeError")),P(!1),i.abrupt("return");case 25:C(x("ajaxErrorMessage")),P(!1);case 27:case"end":return i.stop()}}),i,null,[[4,19]])})))},className:"position-relative"},n.createElement("div",{className:"form-group"},n.createElement("label",{className:"h2",htmlFor:"link-password"},n.createElement(d.x,{namespace:S,phrase:"info"})),n.createElement("input",{id:"link-password",type:"text",className:"form-control form-control-lg ".concat(b.input," ").concat(O?"is-invalid":""),placeholder:x("placeholder"),onChange:function(e){return E(e.target.value)},value:o,autoComplete:"off","aria-errormessage":"linkPasswordError"}),O&&n.createElement(s.A,{className:"mb-3",name:"linkPassword"},O)),n.createElement(h.m,{variant:"dark",showSpinner:L,type:"submit",className:"w-100 mt-3 btn-lg",disabled:L||!o},n.createElement(d.x,{namespace:S,phrase:"confirm"})))))))}},97027:(e,t,r)=>{r.d(t,{Hq:()=>f,Zf:()=>m});var n=r(32735),a=r(54610),o=r(4594),c=r(67453),i=r(99742);const l={left:"vIypY",leftTextImage:"YViNj",right:"MkD4u",blur:"X6mCh",imageContainer:"bc7kz",imagePosition:"JOhEj",image:"Ef2QR",thumbnail:"Gdurb",tallposter:"fjVNK",cover:"o3j31",linksContainer:"AT9Dk"};function u(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,c,i=[],l=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(i.push(n.value),i.length!==t);l=!0);}catch(e){u=!0,a=e}finally{try{if(!l&&null!=r.return&&(c=r.return(),Object(c)!==c))return}finally{if(u)throw a}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return s(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)?s(e,t):void 0}}(e,t)||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.")}()}function s(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 f=[{bgUrl:i.W.LaunchPad.BG_1},{bgUrl:i.W.LaunchPad.BG_2},{bgUrl:i.W.LaunchPad.BG_3},{bgUrl:i.W.LaunchPad.BG_4},{bgUrl:i.W.LaunchPad.BG_5}],h=[{bgUrl:i.W.LaunchPad.PRODUCT.BG_1},{bgUrl:i.W.LaunchPad.PRODUCT.BG_2},{bgUrl:i.W.LaunchPad.PRODUCT.BG_3},{bgUrl:i.W.LaunchPad.PRODUCT.BG_4},{bgUrl:i.W.LaunchPad.PRODUCT.BG_5},{bgUrl:i.W.LaunchPad.PRODUCT.BG_6},{bgUrl:i.W.LaunchPad.PRODUCT.BG_7},{bgUrl:i.W.LaunchPad.PRODUCT.BG_8},{bgUrl:i.W.LaunchPad.PRODUCT.BG_9}];function d(e){switch(e){case o.E.Video:case o.E.Interactive:case o.E.Clip:return l.thumbnail;case o.E.Subject:case o.E.Playlist:return l.cover;case o.E.Series:return l.tallposter;default:return""}}function m(e){var t,r=u(n.useState(!1),2),o=r[0],i=r[1],s=u(n.useState(""),2),f=s[0],m=s[1],v=c.j.createUrl(e.imageUrl,{size:a.h2.Large}),p=h;return n.useEffect((function(){if(!v&&p&&0!==p.length){var e,t=(e=p)[Math.floor(Math.random()*e.length)];t.bgUrl&&m(t.bgUrl)}}),[]),n.useEffect((function(){if(v){var e=new Image;return e.onload=function(){return i(!0)},e.src=v,function(){return e.onload=null}}}),[]),n.createElement("div",{className:"d-flex"},e.leftComponent?e.leftComponent():n.createElement("div",{className:"".concat(l.left," ").concat(f?"bg-blue d-flex align-items-center":"bg-light")},f?n.createElement("img",{className:"img-fluid",src:f,draggable:!1}):o&&n.createElement(n.Fragment,null,n.createElement("div",{className:l.blur,style:{backgroundImage:"url('".concat(v,"')")}}),n.createElement("div",{className:"".concat(l.imageContainer," ").concat(d(e.objectType))},n.createElement("div",{className:l.imagePosition},n.createElement("img",{className:l.image,src:v,alt:e.title}))))),n.createElement("div",{className:"".concat(l.right," bg-white d-flex flex-column")},n.createElement("div",{className:"position-absolute d-flex align-items-center ".concat(l.linksContainer)},null===(t=e.links)||void 0===t?void 0:t.map((function(e,t){return e.hide?n.createElement(n.Fragment,{key:t}):n.createElement("a",{key:t,href:e.url,className:"info-link fw-semibold",onClick:e.onClick},e.text)}))),e.children))}}}]);
|
|
3
|
+
//# sourceMappingURL=1221-1109d5379d-lite.chunk.js.map
|