@clickview/lite 0.55.3-rc.1 → 0.56.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundles.json +1 -1
- package/dist/css/{431-lite-c2c2516537.chunk.css → 2992-lite-3ecbb95727.chunk.css} +1 -0
- package/dist/css/{6054-lite-0b2c72f84f.chunk.css → 3490-lite-74b16654a2.chunk.css} +1 -0
- package/dist/css/{4690-lite-e90867b3fe.chunk.css → 4690-lite-656c11bf50.chunk.css} +1 -1
- package/dist/css/{729-lite-f72fc7b813.chunk.css → 4860-lite-bd73841f9b.chunk.css} +1 -1
- package/dist/css/{1019-lite-bbcf2bff27.chunk.css → 6341-lite-f146164a09.chunk.css} +3 -3
- package/dist/css/{4860-lite-f72fc7b813.chunk.css → 729-lite-bd73841f9b.chunk.css} +1 -1
- package/dist/css/{8046-lite-036035a6f0.chunk.css → 8046-lite-319bb5a9c1.chunk.css} +1 -1
- package/dist/css/{6596-lite-bb28584922.chunk.css → 8784-lite-caf4b7e145.chunk.css} +2 -2
- package/dist/css/{2548-lite-bbcf2bff27.chunk.css → 8945-lite-f146164a09.chunk.css} +3 -3
- package/dist/css/{9010-lite-bb28584922.chunk.css → 9355-lite-caf4b7e145.chunk.css} +2 -2
- package/dist/languages/en.json +1 -1
- package/dist/scripts/{1169-3298aa69ad-lite.chunk.js → 1169-e4773094dc-lite.chunk.js} +2 -2
- package/dist/scripts/{1169-3298aa69ad-lite.chunk.js.map → 1169-e4773094dc-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1379-ca519ec56b-lite.chunk.js → 1379-172a429399-lite.chunk.js} +3 -3
- package/dist/scripts/{1379-ca519ec56b-lite.chunk.js.map → 1379-172a429399-lite.chunk.js.map} +1 -1
- package/dist/scripts/{184-37af6c4675-lite.chunk.js → 184-e1311aa677-lite.chunk.js} +2 -2
- package/dist/scripts/184-e1311aa677-lite.chunk.js.map +1 -0
- package/dist/scripts/2215-a511f6f54c-lite.chunk.js +2 -0
- package/dist/scripts/2215-a511f6f54c-lite.chunk.js.map +1 -0
- package/dist/scripts/2992-c5bec5b43f-lite.chunk.js +2 -0
- package/dist/scripts/2992-c5bec5b43f-lite.chunk.js.map +1 -0
- package/dist/scripts/3490-4f3b9b1d07-lite.chunk.js +2 -0
- package/dist/scripts/3490-4f3b9b1d07-lite.chunk.js.map +1 -0
- package/dist/scripts/4013-700c541143-lite.chunk.js +3 -0
- package/dist/scripts/4013-700c541143-lite.chunk.js.map +1 -0
- package/dist/scripts/{4554-2192c26ee9-lite.chunk.js → 4554-7367f19919-lite.chunk.js} +2 -2
- package/dist/scripts/4554-7367f19919-lite.chunk.js.map +1 -0
- package/dist/scripts/4690-4abacf2ea2-lite.chunk.js +2 -0
- package/dist/scripts/4690-4abacf2ea2-lite.chunk.js.map +1 -0
- package/dist/scripts/{5220-07af32c6ce-lite.chunk.js → 5220-04f2f3bb42-lite.chunk.js} +3 -3
- package/dist/scripts/5220-04f2f3bb42-lite.chunk.js.map +1 -0
- package/dist/scripts/5936-0d3b5a9a2f-lite.chunk.js +2 -0
- package/dist/scripts/5936-0d3b5a9a2f-lite.chunk.js.map +1 -0
- package/dist/scripts/{624-09b51a9d32-lite.chunk.js → 624-2c9ac733ba-lite.chunk.js} +3 -3
- package/dist/scripts/{624-09b51a9d32-lite.chunk.js.map → 624-2c9ac733ba-lite.chunk.js.map} +1 -1
- package/dist/scripts/6262-ce32d35813-lite.chunk.js +2 -0
- package/dist/scripts/{640-c3ae02d0a7-lite.chunk.js.map → 6262-ce32d35813-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2548-c48b8d3e3c-lite.chunk.js → 6341-f07132fa7c-lite.chunk.js} +2 -2
- package/dist/scripts/{2548-c48b8d3e3c-lite.chunk.js.map → 6341-f07132fa7c-lite.chunk.js.map} +1 -1
- package/dist/scripts/7076-748eef1eba-lite.chunk.js +3 -0
- package/dist/scripts/7076-748eef1eba-lite.chunk.js.map +1 -0
- package/dist/scripts/{7288-c11287ecc7-lite.chunk.js → 7288-f9ef507dd3-lite.chunk.js} +2 -2
- package/dist/scripts/7288-f9ef507dd3-lite.chunk.js.map +1 -0
- package/dist/scripts/{729-594be12089-lite.chunk.js → 729-10f6b0cef3-lite.chunk.js} +2 -2
- package/dist/scripts/{729-594be12089-lite.chunk.js.map → 729-10f6b0cef3-lite.chunk.js.map} +1 -1
- package/dist/scripts/7895-6b9c09a1e1-lite.chunk.js +2 -0
- package/dist/scripts/7895-6b9c09a1e1-lite.chunk.js.map +1 -0
- package/dist/scripts/8046-485ecb0ed7-lite.chunk.js +2 -0
- package/dist/scripts/8046-485ecb0ed7-lite.chunk.js.map +1 -0
- package/dist/scripts/8252-146bee4416-lite.chunk.js +2 -0
- package/dist/scripts/8252-146bee4416-lite.chunk.js.map +1 -0
- package/dist/scripts/8784-d6862c97bc-lite.chunk.js +2 -0
- package/dist/scripts/{6596-aa83b99b19-lite.chunk.js.map → 8784-d6862c97bc-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1019-8f977b5095-lite.chunk.js → 8945-3ea21e765e-lite.chunk.js} +2 -2
- package/dist/scripts/{1019-8f977b5095-lite.chunk.js.map → 8945-3ea21e765e-lite.chunk.js.map} +1 -1
- package/dist/scripts/9355-44d72e25e0-lite.chunk.js +2 -0
- package/dist/scripts/{9010-fe4907051e-lite.chunk.js.map → 9355-44d72e25e0-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9395-e1a02b01ce-lite.chunk.js → 9395-e07cb08942-lite.chunk.js} +3 -3
- package/dist/scripts/{9395-e1a02b01ce-lite.chunk.js.map → 9395-e07cb08942-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9478-13da35c4ee-lite.chunk.js → 9478-250b1e9dcf-lite.chunk.js} +3 -3
- package/dist/scripts/{9478-13da35c4ee-lite.chunk.js.map → 9478-250b1e9dcf-lite.chunk.js.map} +1 -1
- package/dist/scripts/{953-225db845ab-lite.chunk.js → 953-e3f732e20e-lite.chunk.js} +3 -3
- package/dist/scripts/{953-225db845ab-lite.chunk.js.map → 953-e3f732e20e-lite.chunk.js.map} +1 -1
- package/dist/scripts/9569-c6292540d7-lite.chunk.js +2 -0
- package/dist/scripts/9569-c6292540d7-lite.chunk.js.map +1 -0
- package/dist/scripts/{bundle-360989040d.min.js → bundle-f1c26ac44d.min.js} +3 -3
- package/dist/scripts/bundle-f1c26ac44d.min.js.map +1 -0
- package/package.json +1 -1
- package/dist/scripts/1753-6aa1c10a83-lite.chunk.js +0 -2
- package/dist/scripts/1753-6aa1c10a83-lite.chunk.js.map +0 -1
- package/dist/scripts/184-37af6c4675-lite.chunk.js.map +0 -1
- package/dist/scripts/2142-d6e297d5a7-lite.chunk.js +0 -2
- package/dist/scripts/2142-d6e297d5a7-lite.chunk.js.map +0 -1
- package/dist/scripts/4013-7b878e3212-lite.chunk.js +0 -3
- package/dist/scripts/4013-7b878e3212-lite.chunk.js.map +0 -1
- package/dist/scripts/431-0487ecd6e4-lite.chunk.js +0 -2
- package/dist/scripts/431-0487ecd6e4-lite.chunk.js.map +0 -1
- package/dist/scripts/4554-2192c26ee9-lite.chunk.js.map +0 -1
- package/dist/scripts/4690-ab20eb70b5-lite.chunk.js +0 -2
- package/dist/scripts/4690-ab20eb70b5-lite.chunk.js.map +0 -1
- package/dist/scripts/5220-07af32c6ce-lite.chunk.js.map +0 -1
- package/dist/scripts/5936-13efc0f166-lite.chunk.js +0 -2
- package/dist/scripts/5936-13efc0f166-lite.chunk.js.map +0 -1
- package/dist/scripts/6054-d3677cdee9-lite.chunk.js +0 -2
- package/dist/scripts/6054-d3677cdee9-lite.chunk.js.map +0 -1
- package/dist/scripts/640-c3ae02d0a7-lite.chunk.js +0 -2
- package/dist/scripts/6596-aa83b99b19-lite.chunk.js +0 -2
- package/dist/scripts/696-2d01721d18-lite.chunk.js +0 -2
- package/dist/scripts/696-2d01721d18-lite.chunk.js.map +0 -1
- package/dist/scripts/7076-ec18ce09c9-lite.chunk.js +0 -3
- package/dist/scripts/7076-ec18ce09c9-lite.chunk.js.map +0 -1
- package/dist/scripts/7288-c11287ecc7-lite.chunk.js.map +0 -1
- package/dist/scripts/7895-78f20c123f-lite.chunk.js +0 -2
- package/dist/scripts/7895-78f20c123f-lite.chunk.js.map +0 -1
- package/dist/scripts/8046-62f4cbb4d1-lite.chunk.js +0 -2
- package/dist/scripts/8046-62f4cbb4d1-lite.chunk.js.map +0 -1
- package/dist/scripts/9010-fe4907051e-lite.chunk.js +0 -2
- package/dist/scripts/bundle-360989040d.min.js.map +0 -1
- /package/dist/css/{640-lite-45164266aa.chunk.css → 6262-lite-45164266aa.chunk.css} +0 -0
- /package/dist/scripts/{1379-ca519ec56b-lite.chunk.js.LICENSE.txt → 1379-172a429399-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{4013-7b878e3212-lite.chunk.js.LICENSE.txt → 4013-700c541143-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{5220-07af32c6ce-lite.chunk.js.LICENSE.txt → 5220-04f2f3bb42-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{624-09b51a9d32-lite.chunk.js.LICENSE.txt → 624-2c9ac733ba-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{7076-ec18ce09c9-lite.chunk.js.LICENSE.txt → 7076-748eef1eba-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9395-e1a02b01ce-lite.chunk.js.LICENSE.txt → 9395-e07cb08942-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9478-13da35c4ee-lite.chunk.js.LICENSE.txt → 9478-250b1e9dcf-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{953-225db845ab-lite.chunk.js.LICENSE.txt → 953-e3f732e20e-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-360989040d.min.js.LICENSE.txt → bundle-f1c26ac44d.min.js.LICENSE.txt} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[4554],{29014:e=>{window,e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(r,a,function(t){return e[t]}.bind(null,a));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e[e.Disable=0]="Disable",e[e.Enable=1]="Enable"}(t.CookiePolicy||(t.CookiePolicy={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2);t.renderButtons=r.renderButtons;var a=n(3);t.close=a.close,t.launchAsync=a.launchAsync;var i=n(0);t.CookiePolicy=i.CookiePolicy,window.addEventListener("load",(function(){var e;window.hasOwnProperty("Promise")||("https://contentstorage.onenote.office.net/onenoteltir/permanent-static-resources/promise-polyfill.min.js",(e=document.createElement("script")).src="https://contentstorage.onenote.office.net/onenoteltir/permanent-static-resources/promise-polyfill.min.js",document.head.appendChild(e)),r.renderButtons()}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={af:"Indompelende leser",am:"በህያው ስሜት ፈጣሪ ዕይታ አንባቢ",ar:"القارئ الشامل",as:"ইমাৰচিভ ৰিডাৰ",az:"İmmersiv Oxuyucu",be:"Імерсіўны чытальнік",bg:"Концентриран четец",bn:"মনোগ্রাহী পাঠক","bn-bd":"ইমার্সিভ পাঠক",bs:"Koncentrirani čitalac",ca:"Lector immersiu",cs:"Asistivní čtečka","cy-gb":"Darllenydd Ymdrwythol",da:"Forenklet læser",de:"Plastischer Reader",el:"Προηγμένο πρόγραμμα ανάγνωσης",en:"Immersive Reader",es:"Lector inmersivo",et:"Süvaluger",eu:"Irakurgailu murgiltzailea",fa:"خواننده همهجانبه",fi:"Syventävä lukuohjelma",fil:"Immersive Reader",fr:"Lecteur immersif","ga-ie":"Léitheoir tumthach",gd:"An leughadair ùr-nòsach",gl:"Lector avanzado",gu:"ઇમર્સિવ રીડર",ha:"Mai karatu Mai barbazawa",he:"תצוגת קריאה מודרנית",hi:"इमर्सिव रीडर",hr:"Stopljeni čitač",hu:"Modern olvasó",hy:"Խորասուզված ընթերցիչ",id:"Pembaca Imersif",ig:"Ọgụụ Kenzipụtara",is:"Aðgengilegt lestrarumhverfi",it:"Strumento di lettura immersiva",ja:"イマーシブ リーダー",ka:"იმერსიული წამკითხველი",kk:"Иммерсивті оқу құралы",km:"កម្មវិធីអានពណ៌រំលេចនៅលើអេក្រង់",kn:"ಇಮ್ಮರ್ಸಿವ್ ಓದುಗ",ko:"몰입형 리더",kok:"तंद्री लागिल्लो वाचक","ku-arab":"خوێنەری پڕ",ky:"Курчаган Окугуч",lb:"Immersive Reader",lo:"ຕົວອ່ານອິມເມີສີບ",lt:"Įtraukianti skaitytuvė",lv:"Tīrskata lasītājs",mi:"Pūpānui Rumaki",mk:"Сеопфатен читач",ml:"ഇമ്മേഴ്സീവ് റീഡർ",mn:"Идэвхтэй уншигч",mr:"इमर्सिव्ह वाचक",ms:"Pembaca Imersif",mt:"Qarrej Immersiv",ne:"इमेर्सिभ रिडर",nl:"Insluitende lezer","nn-no":"Engasjerande lesar",no:"Engasjerende leser",nso:"Go Bala ka Mongwalo o Mokoto",or:"ଇମରସିଭ୍ ରିଡର୍",pa:"ਇਮਰਸਿਵ ਰੀਡਰ","pa-arab":"گھیرن آلا مطالعہ کار",pl:"Czytnik immersyjny",prs:"خواننده نمایش",pt:"Leitura Avançada",quc:"Nim ucholajil sik'inel uwach",quz:"Wankisqa Ñawiq",ro:"Immersive Reader",ru:"Иммерсивное средство чтения",rw:"Insakazasoma",sd:"امرسو ريڊر",si:"ගිලෙන සුළු කියවනය",sk:"Imerzná čítačka",sl:"Potopni bralnik",sq:"Lexuesi kredhës","sr-cyrl-ba":"Концентрисани читалац","sr-cyrl-rs":"Концентрисани читалац","sr-latn-rs":"Koncentrisani čitalac",sv:"Avancerad läsare",sw:"Kisomaji cha Kuzamisha",ta:"அற்புதமான ரீடர்",te:"మంత్రముగ్ధులను చేసే పఠన సాధనం","tg-cyrl-tj":"Хонандаи фарогир",th:"โปรแกรมช่วยอ่าน",ti:"ኣንባቢ ሕሉው ስምዒት ፈጣሪ",tk:"Giňişleýin okaýjy",tn:"Sebadi sa Imesife",tr:"Tam Ekran Okuyucu",tt:"Чолгап алучы уку чарасы","ug-cn":"چۆكمە ئوقۇغۇچ",uk:"Занурення в текст",ur:"امرسیو مطالعہ کار",uz:"Immersiv mutolaa vositasi",vi:"Trình đọc Chân thực",wo:"Jàngukaay bu Rafet",xh:"Isifundi Esikhulu",yo:"Ìwò Alámùtán",zh:"沉浸式阅读器","zh-hant":"沈浸式閱讀程式",zu:"Isifundi Sokuzizwisa"};function a(e){var t=document.createElement("img");t.src="https://contentstorage.onenote.office.net/onenoteltir/permanent-static-resources/immersive-reader-icon.svg";var n=e.getAttribute("data-icon-px-size")||"20";t.style.height=t.style.width=n+"px",t.style.verticalAlign="middle",t.style.marginTop="-2px";var r=e.getAttribute("data-locale")||"en";t.alt=s(r),e.appendChild(t)}function i(e){var t=document.createElement("span");t.style.marginLeft="8px",e.appendChild(t)}function o(e){var t=document.createElement("span"),n=e.getAttribute("data-locale")||"en";t.textContent=s(n),e.appendChild(t)}function s(e){return e=e.toLowerCase(),r[e]?r[e]:"zh-hk"===e||"zh-mo"===e||"zh-tw"===e?r["zh-hant"]:(e=e.substring(0,e.lastIndexOf("-")),r[e]?r[e]:(e=e.substring(0,e.lastIndexOf("-")),r[e]?r[e]:r.en))}t.renderButtons=function(e){var t=document.createElement("style");t.innerHTML=".immersive-reader-button{cursor:pointer;display:inline-block;padding:5px;} .immersive-reader-button:hover{background:rgba(0,0,0,.05);border-radius:2px",document.head.appendChild(t);var n=[].slice.call(document.getElementsByClassName("immersive-reader-button"));e&&e.elements&&(n=e.elements);for(var r=0,l=n;r<l.length;r++){var c=l[r];c.setAttribute("role","button");var u=c.getAttribute("data-locale")||"en";switch(c.setAttribute("aria-label",s(u)),c.getAttribute("data-button-style")||"icon"){case"icon":a(c);break;case"text":o(c);break;case"iconAndText":a(c),i(c),o(c)}}}},function(e,t,n){"use strict";var r=this&&this.__assign||function(){return(r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0});var a=n(0),i=n(4),o={};function s(e){return!!e&&new RegExp("^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])$").test(e)}o[i.ErrorCode.TokenExpired]="The access token supplied is expired.",o[i.ErrorCode.Throttled]="You have exceeded your quota.",o[i.ErrorCode.ServerError]="An error occurred when calling the server to process the text.",o[i.ErrorCode.InvalidSubdomain]="The subdomain supplied is invalid.",t.launchAsync=function(e,t,n,l){return new Promise((function(c,u){if(e)if(n)if(n.chunks)if(n.chunks.length)if(s(t)||l&&l.customDomain){var d=Date.now();(l=r({uiZIndex:1e3,timeout:15e3,useWebview:!1,allowFullscreen:!0,hideExitButton:!1,cookiePolicy:a.CookiePolicy.Disable},l)).uiZIndex&&"number"==typeof l.uiZIndex||(l.uiZIndex=1e3);var m=null,p=document.createElement("div"),v=l.useWebview?document.createElement("webview"):document.createElement("iframe"),f=document.createElement("style");f.innerHTML="body{height:100%;overflow:hidden;}";var g=function(){m&&(window.clearTimeout(m),m=null)},h=function(){document.body.contains(p)&&document.body.removeChild(p),window.removeEventListener("message",y),g(),f.parentNode&&f.parentNode.removeChild(f)},b=function(){h(),l.onExit&&l.onExit()};h();var y=function(r){if(r&&r.data)if("ImmersiveReader-ReadyForContent"===r.data){g();var a={cogSvcsAccessToken:e,cogSvcsSubdomain:t,request:n,launchToPostMessageSentDurationInMs:Date.now()-d};v.contentWindow.postMessage(JSON.stringify({messageType:"Content",messageValue:a}),"*")}else if("ImmersiveReader-Exit"===r.data)b();else if(r.data.startsWith("ImmersiveReader-LaunchResponse:")){var s=null,l=null,m=null;try{m=JSON.parse(r.data.substring(31))}catch(e){}m&&m.success?s={container:p,sessionId:m.sessionId}:l=m&&!m.success?{code:m.errorCode,message:o[m.errorCode],sessionId:m.sessionId}:{code:i.ErrorCode.ServerError,message:o[i.ErrorCode.ServerError]},s?(g(),c(s)):l&&(b(),u(l))}};window.addEventListener("message",y),m=window.setTimeout((function(){h(),u({code:i.ErrorCode.Timeout,message:"Page failed to load after timeout ("+l.timeout+" ms)"})}),l.timeout),l.allowFullscreen&&v.setAttribute("allowfullscreen",""),v.style.cssText="position: static; width: 100vw; height: 100vh; left: 0; top: 0; border-width: 0",l.useWebview&&v.addEventListener("loadstop",(function(){v.contentWindow.postMessage(JSON.stringify({messageType:"WebviewHost"}),"*")}));var E=(l.customDomain?l.customDomain:"https://"+t+".cognitiveservices.azure.com/immersivereader/webapp/v1.0/")+"reader?exitCallback=ImmersiveReader-Exit&sdkPlatform=js&sdkVersion=1.0.0";E+="&cookiePolicy="+(l.cookiePolicy===a.CookiePolicy.Enable?"enable":"disable"),l.hideExitButton&&(E+="&hideExitButton=true"),l.uiLang&&(E+="&omkt="+l.uiLang),v.src=E,p.style.cssText="position: fixed; width: 100vw; height: 100vh; left: 0; top: 0; border-width: 0; -webkit-perspective: 1px; z-index: "+l.uiZIndex+"; background: white; overflow: hidden",p.appendChild(v),document.body.appendChild(p),document.head.appendChild(f)}else u({code:i.ErrorCode.InvalidSubdomain,message:o[i.ErrorCode.InvalidSubdomain]});else u({code:i.ErrorCode.BadArgument,message:"Chunks must not be empty"});else u({code:i.ErrorCode.BadArgument,message:"Chunks must not be null"});else u({code:i.ErrorCode.BadArgument,message:"Content must not be null"});else u({code:i.ErrorCode.BadArgument,message:"Token must not be null"})}))},t.close=function(){window.postMessage("ImmersiveReader-Exit","*")},t.isValidSubdomain=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BadArgument="BadArgument",e.Timeout="Timeout",e.TokenExpired="TokenExpired",e.Throttled="Throttled",e.ServerError="ServerError",e.InvalidSubdomain="InvalidSubdomain"}(t.ErrorCode||(t.ErrorCode={}))}])},78259:(e,t,n)=>{"use strict";n.d(t,{O:()=>s});var r=n(58176),a=n.n(r),i=n(39479),o={className:"info-link",defaultProtocol:"https"},s={linkifyText:function(e,t){if(e){var n=t?i.extend({},o,t):o;return a()(e,n)}}}},25723:(e,t,n)=>{"use strict";n.d(t,{m:()=>f});var r=n(32735),a=n(29014),i=n(99940),o=n(23481),s=n(91967),l=n(44704),c=n(49985);const u={button:"nckQw"};function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var m=null,p=!1,v="shared.immersiveReader";function f(e){var t,n,f=(t=r.useState(m),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,i,o,s=[],l=!0,c=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(c)throw a}}return s}}(t,n)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),g=f[0],h=f[1];return m||p||(p=!0,(0,l.ajaxRequest)({resource:"/api/integrations/token/immersive-reader",type:i.k.GET,success:function(e){m=e,h(e),window.setTimeout((function(){m=null,p=!1}),9e5)},error:function(){}})),g?(e.title||(e.title=o.T.getPhrase(v,"titleFallback")),r.createElement("span",{className:"".concat(u.button," ").concat(e.className||""),onClick:function(){s.q.isFunction(e.onLaunch)&&e.onLaunch(),c.k.logUserAction(e.analyticsData,e.analyticsOptions);var t={title:e.title,chunks:[{content:e.text,mimeType:e.html?"text/html":"text/plain"}]},n=g.subdomain,r=g.token,i={uiZIndex:5e3,onExit:function(){s.q.isFunction(e.onExit)&&e.onExit()}};a.launchAsync(r,n,t,i)}},r.createElement("svg",{viewBox:"0 0 40 37"},r.createElement("path",{d:"M37.4,0.9 L37.4,9.6 L35.4,9.6 L35.4,2.9 L24.4,2.9 C22.9,3.3 20,4.5 20,6 L20,17.2 L18,17.2 L18,6 C18,5 15.6,3.6 13.8,2.9 L2,2.9 L2,29 L12.4,29 L12.4,31 L0,31 L0,0.9 L14.1,0.9 L14.3,1 C15,1.2 17.5,2.2 18.9,3.7 C20.5,1.9 23.5,1.1 23.9,1 L24.1,1 L37.4,1 L37.4,0.9 Z",fill:"#000000"}),r.createElement("path",{d:"M27.4,37 L25.8,37 L18.4,29.4 L14,29.4 L14,21 L18.4,20.9 L26.1,13 L27.4,13 L27.4,37 Z M16,27.4 L19.2,27.4 L25.3,33.7 L25.3,16.6 L19.2,22.9 L15.9,22.9 L15.9,27.4 L16,27.4 Z",fill:"#0197F2"}),r.createElement("path",{d:"M31.3,32.7 L29.6,31.7 C29.6,31.7 31.7,28.3 31.7,25.2 C31.7,21.9 29.6,18.5 29.6,18.4 L31.3,17.4 C31.4,17.6 33.7,21.3 33.7,25.2 C33.7,28.8 31.4,32.6 31.3,32.7 Z",fill:"#0197F2"}),r.createElement("path",{d:"M36.4,36.2 L34.8,35 C34.8,35 38,30.8 38,25.2 C38,19.6 34.8,15.4 34.8,15.4 L36.4,14.2 C36.5,14.4 40,19 40,25.3 C40,31.5 36.5,36 36.4,36.2 Z",fill:"#0197F2"})))):r.createElement(r.Fragment,null)}},87311:(e,t,n)=>{"use strict";n.d(t,{G:()=>a});var r=n(81886),a={getTagActionProps:function(e,t,n){return n?{onClick:function(n){t&&t();var a=e?e(n):null;if(a)return r.Q.C$.trigger(a)}}:{getAppLink:function(t){return e?e(t):null},onClick:t}}}},16035:(e,t,n)=>{"use strict";n.d(t,{z:()=>c});var r=n(32735),a=n(23481),i=n(36848),o=n(44829),s=n(91807),l=a.T.encloseNamespace("shared.tags");function c(e){var t,n,a=e.tag,c=e.appLink,u=e.onClick,d=e.disabled,m=e.tagClass,p=void 0===m?"tag":m,v=a.name.toLowerCase(),f=null===(t=a.tagType)||void 0===t?void 0:t.toLowerCase(),g=f===o.Q.Normal&&e.themeColours&&!!(null===(n=e.themeColours)||void 0===n?void 0:n.secondary),h="rounded-pill py-1 px-2 my-1 me-1 ".concat(p," ").concat(function(e,t){switch(e){case o.Q.Pedagogy:case o.Q.Skill:return"pedagogy-tag text-white";case o.Q.Hidden:return"hidden-tag fw-normal";case o.Q.Normal:return t?"":"bg-gray-100 fw-normal";default:return""}}(f,g));g&&(h+=" text-white"),!c&&!u||d||(h+=" cursor-pointer"),d&&(h+=" "+s.Z.disabled),e.onRemove&&(h+=" "+s.Z.badge),c||(h+=" d-inline-block");var b=g?{backgroundColor:e.themeColours.secondary}:{};return c?r.createElement(i.F,{onClick:u,appLink:c,className:h,title:v,style:b},r.createElement("span",{className:"text-truncate text-nowrap"},v)):r.createElement("button",{onClick:u,className:h,title:v,style:b,"aria-label":"".concat(l("ariaFilter")," ").concat(v)},r.createElement("span",{className:"text-truncate text-nowrap"},v,e.onRemove&&r.createElement("button",{onClick:e.onRemove,className:"".concat(s.Z.close," btn-close font-size-normal"),role:"button","aria-label":"Close"})))}},91743:(e,t,n)=>{"use strict";n.d(t,{P:()=>c});var r=n(32735),a=n(16035),i=n(44829),o=n(91807);function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function l(e){var t;switch(null===(t=e.tagType)||void 0===t?void 0:t.toLowerCase()){case i.Q.Pedagogy:return 0;case i.Q.Skill:return 1;default:return 2}}function c(e){if(!e.tags)return r.createElement(r.Fragment,null);var t,n=(t=e.tags,function(e){if(Array.isArray(e))return s(e)}(t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||function(e,t){if(e){if("string"==typeof e)return s(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)?s(e,t):void 0}}(t)||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.")}()).sort((function(e,t){return l(e)-l(t)}));return r.createElement("div",{className:"".concat(o.Z.tagList," ").concat(e.className)},n.map((function(t){var n="function"==typeof e.getAppLink?e.getAppLink(t):null,i="function"==typeof e.onRemove?function(){return e.onRemove(t)}:null,o="function"==typeof e.onClick?function(){return e.onClick(t)}:null;return r.createElement(a.z,{key:t.id||t.name,tag:t,appLink:n,themeColours:e.themeColours,onRemove:i,onClick:o})})))}},73804:(e,t,n)=>{"use strict";n.d(t,{X:()=>k});var r=n(32735),a=n(42648),i=n(23481),o=n(110),s=n(78259),l=n(65858),c=n(11607),u=n(25723),d=n(87311),m=n(91743),p=n(83345),v=n(40178),f=n(31908),g=n(8730);const h={closeButton:"ZwHXo",descriptionBorder:"J_Z5i"};var b="shared.videoDetails",y=i.T.encloseNamespace(b);function E(e){var t=e.label,n=e.items,a=e.className;if(!(n&&n.data&&n.data.length))return r.createElement(r.Fragment,null);var i=n.data.map((function(e){return e.name})).join(", ");return r.createElement("div",{className:a},t,": ",i)}function C(e){var t,n,a,i,s,l,c,u,d=e.video;if(!f.M.isVideo(d)&&!f.M.isClip(d))return r.createElement(r.Fragment,null);var m=f.M.getParentVideo(d);return r.createElement("div",{className:d.description?"col-md-5 ps-md-3 pt-3 pt-md-0":"col-12"},r.createElement("h2",{className:"h6 mb-1"},r.createElement(p.x,{phrase:"details"})),!!m.productionYear&&r.createElement("div",{className:"mb-1"},r.createElement(p.x,{phrase:"productionYear",options:{year:m.productionYear}})),r.createElement(E,{label:y("productionCompanies",{smartCount:null===(n=null===(t=m.productionCompanies)||void 0===t?void 0:t.data)||void 0===n?void 0:n.length}),items:m.productionCompanies,className:"mb-1"}),r.createElement(E,{label:y("distributors",{smartCount:null===(i=null===(a=m.distributors)||void 0===a?void 0:a.data)||void 0===i?void 0:i.length}),items:m.distributors,className:"mb-1"}),r.createElement(E,{label:y("producers",{smartCount:null===(l=null===(s=m.producers)||void 0===s?void 0:s.data)||void 0===l?void 0:l.length}),items:m.producers,className:"mb-1"}),r.createElement(E,{label:y("directors",{smartCount:null===(u=null===(c=m.directors)||void 0===c?void 0:c.data)||void 0===u?void 0:u.length}),items:m.directors,className:"mb-1"}),!!m.dateBroadcast&&r.createElement("div",{className:"mb-1"},r.createElement(p.x,{phrase:"dateBroadcast",options:{date:o.O.format(m.dateBroadcast,"DD/MM/YYYY")}})),!!m.channel&&r.createElement("div",{className:"mb-1"},r.createElement(p.x,{phrase:"channel",options:{channel:m.channel.name}})),function(){var t,n;return!!(null===(t=e.currentUser)||void 0===t?void 0:t.isAuthenticated)&&!!d.dateCreated&&!(null===(n=d._isClickViewCurated)||void 0===n?void 0:n.value)}()&&r.createElement("div",{className:"mb-1"},r.createElement(p.x,{phrase:"dateUploaded",options:{date:o.O.format(d.dateCreated,"DD/MM/YYYY")}})))}function k(e){var t,n=e.video,i=e.maxHeight,o=void 0===i?v.x:i,y=f.M.getParentVideo(n),E=!!e.video.description,k=(0,g._)(e.video)||!!y.productionYear||!!y.dateBroadcast||!!y.channel||!(!n.dateCreated||(null===(t=n._isClickViewCurated)||void 0===t?void 0:t.value)),w="function"==typeof e.onClickClose,x="function"==typeof e.onClickShowCurriculumLinks;return E||k?r.createElement(p.D.Provider,{value:b},r.createElement("div",{className:"rounded border p-3 mb-3 position-relative"},r.createElement(a.$B,{autoHeight:!0,autoHeightMax:o},r.createElement("div",{className:"row g-0"},E&&r.createElement("div",{className:k?"".concat(h.descriptionBorder," pe-3 col-md-7"):"col-12"},r.createElement("div",{className:"d-flex align-items-center"},r.createElement("h2",{className:"h6 mb-1"},r.createElement(p.x,{phrase:"description"})),r.createElement(u.m,{text:n.description,title:n.name,className:"ps-2",onLaunch:e.onLaunchImmersiveReader,onExit:e.onExitImmersiveReader,analyticsOptions:{location:l.LZ.PlayPage,entity:l.py.Video,actionType:l.Vw.Click,descriptor:l._S.LaunchImmersiveReader},analyticsData:{id:n.id,type:"description"}})),r.createElement("p",{className:"mb-0",dangerouslySetInnerHTML:{__html:s.O.linkifyText(e.video.description,{nl2br:!0})}}),r.createElement(m.P,Object.assign({tags:function(){var t,n;return e.hideTags||f.M.isInteractive(e.video)||!(null===(n=null===(t=e.video.tags)||void 0===t?void 0:t.data)||void 0===n?void 0:n.length)?null:e.video.tags.data}()},d.G.getTagActionProps(e.getTagAppLink,null,e.suppressInteractivity),{className:"mt-1"})),x&&r.createElement(c.L,{onClick:e.onClickShowCurriculumLinks,className:"cursor-pointer d-inline-block fw-semibold text-info mt-2 mb-1"},r.createElement(p.x,{namespace:b,phrase:"seeCurriculumLinks"}))),k&&r.createElement(C,Object.assign({},e)))),w&&r.createElement("button",{type:"button",className:"btn-close ".concat(h.closeButton),"aria-label":"Close",onClick:e.onClickClose}))):r.createElement(r.Fragment,null)}},8730:(e,t,n)=>{"use strict";n.d(t,{_:()=>u});var r=n(1048),a=n(66090);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)||function(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}}(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 o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function s(e){var t=e.page,n=e.totalPages,i=a.O.isNumber(t)&&t>0&&t<n&&t+1,o=a.O.isNumber(t)&&t>1&&t-1,s={};if(i&&i<=n&&(s.next=i.toString()),o&&(s.previous=o.toString()),!r.t.isEmpty(s))return s}var l={isEmpty:function(e){return e&&!(e.data&&e.data.length)},length:function(e){return e&&e.data&&e.data.length},at:function(e,t){if(e&&e.data&&e.data.length&&!(t>e.data.length))return e.data[t]},get:function(e,t){if(e&&e.data&&e.data.length)return e.data.find((function(e){return e.id&&e.id.toString()===t}))},flattenCollections:function(e){if(e&&e.length){var t=[];return e.forEach((function(e){t=[].concat(i(t),i(e.data))})),t}},getNextCursor:function(e){return e.pagination&&e.pagination.cursors&&e.pagination.cursors.next},convertLegacyPaginatedCollection:function(e){if(e)return{data:e.data,pagination:{cursors:s(e.pagination),limit:e.pagination.pageSize}}},hasData:function(e){return!l.isEmpty(e)}},c=n(31908);function u(e){var t=l.hasData,n=function(e){return c.M.isVideo(e)?e:c.M.isClip(e)?e._parentVideo:null}(e);return!!n&&(t(n.productionCompanies)||t(n.producers)||t(n.distributors)||t(n.directors))}},40178:(e,t,n)=>{"use strict";n.d(t,{x:()=>r});var r=368},44829:(e,t,n)=>{"use strict";var r,a;n.d(t,{Q:()=>r}),function(e){e.Normal="normal",e.Pedagogy="pedagogy",e.Hidden="hidden",e.Skill="skill",e.Curation="curation"}(r||(r={})),function(e){e[e.Normal=0]="Normal",e[e.Pedagogy=1]="Pedagogy",e[e.Hidden=2]="Hidden",e[e.Skill=3]="Skill",e[e.Curation=4]="Curation"}(a||(a={}))},94644:(e,t,n)=>{"use strict";n.d(t,{r:()=>u});var r=n(50242),a=n(81886),i=n(67058),o=n(14553),s=n(49267),l=n(49075),c={notFound:i.d,forbidden:{rating:o.q,yearLevel:o.q,region:s.a,privacy:o.q},badRequest:l._};function u(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e){var i;i="number"==typeof e?e:e.status;var o=Object.assign(Object.assign({},c),t);i&&a.Q.Ry.isStatusCodeError(i)&&(i!==r.o.NotFound?i!==r.o.Forbidden?n.badRequest||a.Q.Ry.throw(new o.badRequest):n.forbidden||a.Q.Ry.throw(new o.forbidden.privacy):n.notFound||a.Q.Ry.throw(new o.notFound))}}},91286:(e,t,n)=>{"use strict";n.d(t,{v:()=>o});var r=n(32735),a=n(94644);function i(e){return e.map((function(e){return e.statusCode})).join(":")}function o(e,t,n){var o=Array.isArray(e)?e:[e];(0,r.useEffect)((function(){o.forEach((function(e){(0,a.r)(e.statusCode,t,n)}))}),[i(o),t,n])}},64554:(e,t,n)=>{"use strict";n.r(t),n.d(t,{StudentsVideoView:()=>N});var r=n(32735),a=n(23481),i=n(20354),o=n(36848),s=n(83914),l=n(83345),c=n(73804),u=n(4594),d=n(60051),m=n(43012),p=n(39151),v=n(20768),f=n(47812),g=n(31949),h=n(1575),b=n(91286),y=n(35223),E=n(64818),C=n(14070),k=n(97291),w=n(57245),x=n(47288),L="userManager.studentsVideo",S=a.T.encloseNamespace(L);function N(e){var t,n,a,N=i.a.useBasicFetch(x.N.getUser(e.userId)),I=i.a.useBasicFetch((n=e.id,(a=e.typeId).toString()===u.E.Clip.toString()?m.e.clip(n):a.toString()===u.E.Interactive.toString()?v.b.interactiveMetadata(n):h.R.video(n))),A=i.a.useBasicFetch(f.k.createViewKey(e.id,d.f.MasterObject)),T=i.a.useBasicFetch(p.L.config()),j=i.a.useBasicFetch(g.N.currentUser());return(0,b.v)([N,I]),N.hasCompleted&&I.hasCompleted&&A.hasCompleted&&T.hasCompleted&&j.hasCompleted?r.createElement("div",{className:"px-3"},r.createElement("div",{className:"alert text-dark bg-light-blue px-2 rounded d-flex flex-column flex-lg-row justify-content-between mb-3 align-items-center",role:"alert"},r.createElement("div",{className:"d-flex align-items-center"},r.createElement(s.x,{svgName:y.vn.Info,size:s.S.Standard,className:"me-2 svg-container"}),r.createElement("div",{className:"w-100"},r.createElement("p",{className:"fw-semibold mb-0"},S(function(e){return e.toString()===u.E.Clip.toString()?"messageClip":e.toString()===u.E.Interactive.toString()?"messageInteractive":"messageVideo"}(e.typeId),{name:E.l.getFullName(N.data),yearGroup:null===(t=N.data.masterYearGroup)||void 0===t?void 0:t.name}))))),r.createElement("div",{className:"mb-3"},r.createElement(w._,{config:T.data,video:I.data,currentUser:j.data,viewKey:A.data})),r.createElement("div",{className:"d-flex justify-content-between align-items-center mb-2"},r.createElement("div",null,r.createElement("h1",{className:"h3 d-inline-flex m-0 mb-2"},I.data.name)),r.createElement(o.F,{appLink:{application:k.O.USER_MANAGER,action:C.e.UserManager.DELETE_STUDENTS_VIDEO,args:[e.userId,e.id],params:{typeId:e.typeId}},className:"btn btn-outline-dark"},r.createElement(l.x,{namespace:L,phrase:"delete"}))),r.createElement(c.X,{video:I.data})):r.createElement(r.Fragment,null)}},91807:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r={tagList:"Zw6d9",disabled:"jlL1c",partialTag:"too_N",badge:"OjtN8",close:"X9joI"}}}]);
|
|
2
|
-
//# sourceMappingURL=4554-
|
|
1
|
+
(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[4554],{29014:e=>{window,e.exports=function(e){var t={};function n(r){if(t[r])return t[r].exports;var a=t[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,n),a.l=!0,a.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var a in e)n.d(r,a,function(t){return e[t]}.bind(null,a));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=1)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e[e.Disable=0]="Disable",e[e.Enable=1]="Enable"}(t.CookiePolicy||(t.CookiePolicy={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(2);t.renderButtons=r.renderButtons;var a=n(3);t.close=a.close,t.launchAsync=a.launchAsync;var o=n(0);t.CookiePolicy=o.CookiePolicy,window.addEventListener("load",(function(){var e;window.hasOwnProperty("Promise")||("https://contentstorage.onenote.office.net/onenoteltir/permanent-static-resources/promise-polyfill.min.js",(e=document.createElement("script")).src="https://contentstorage.onenote.office.net/onenoteltir/permanent-static-resources/promise-polyfill.min.js",document.head.appendChild(e)),r.renderButtons()}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={af:"Indompelende leser",am:"በህያው ስሜት ፈጣሪ ዕይታ አንባቢ",ar:"القارئ الشامل",as:"ইমাৰচিভ ৰিডাৰ",az:"İmmersiv Oxuyucu",be:"Імерсіўны чытальнік",bg:"Концентриран четец",bn:"মনোগ্রাহী পাঠক","bn-bd":"ইমার্সিভ পাঠক",bs:"Koncentrirani čitalac",ca:"Lector immersiu",cs:"Asistivní čtečka","cy-gb":"Darllenydd Ymdrwythol",da:"Forenklet læser",de:"Plastischer Reader",el:"Προηγμένο πρόγραμμα ανάγνωσης",en:"Immersive Reader",es:"Lector inmersivo",et:"Süvaluger",eu:"Irakurgailu murgiltzailea",fa:"خواننده همهجانبه",fi:"Syventävä lukuohjelma",fil:"Immersive Reader",fr:"Lecteur immersif","ga-ie":"Léitheoir tumthach",gd:"An leughadair ùr-nòsach",gl:"Lector avanzado",gu:"ઇમર્સિવ રીડર",ha:"Mai karatu Mai barbazawa",he:"תצוגת קריאה מודרנית",hi:"इमर्सिव रीडर",hr:"Stopljeni čitač",hu:"Modern olvasó",hy:"Խորասուզված ընթերցիչ",id:"Pembaca Imersif",ig:"Ọgụụ Kenzipụtara",is:"Aðgengilegt lestrarumhverfi",it:"Strumento di lettura immersiva",ja:"イマーシブ リーダー",ka:"იმერსიული წამკითხველი",kk:"Иммерсивті оқу құралы",km:"កម្មវិធីអានពណ៌រំលេចនៅលើអេក្រង់",kn:"ಇಮ್ಮರ್ಸಿವ್ ಓದುಗ",ko:"몰입형 리더",kok:"तंद्री लागिल्लो वाचक","ku-arab":"خوێنەری پڕ",ky:"Курчаган Окугуч",lb:"Immersive Reader",lo:"ຕົວອ່ານອິມເມີສີບ",lt:"Įtraukianti skaitytuvė",lv:"Tīrskata lasītājs",mi:"Pūpānui Rumaki",mk:"Сеопфатен читач",ml:"ഇമ്മേഴ്സീവ് റീഡർ",mn:"Идэвхтэй уншигч",mr:"इमर्सिव्ह वाचक",ms:"Pembaca Imersif",mt:"Qarrej Immersiv",ne:"इमेर्सिभ रिडर",nl:"Insluitende lezer","nn-no":"Engasjerande lesar",no:"Engasjerende leser",nso:"Go Bala ka Mongwalo o Mokoto",or:"ଇମରସିଭ୍ ରିଡର୍",pa:"ਇਮਰਸਿਵ ਰੀਡਰ","pa-arab":"گھیرن آلا مطالعہ کار",pl:"Czytnik immersyjny",prs:"خواننده نمایش",pt:"Leitura Avançada",quc:"Nim ucholajil sik'inel uwach",quz:"Wankisqa Ñawiq",ro:"Immersive Reader",ru:"Иммерсивное средство чтения",rw:"Insakazasoma",sd:"امرسو ريڊر",si:"ගිලෙන සුළු කියවනය",sk:"Imerzná čítačka",sl:"Potopni bralnik",sq:"Lexuesi kredhës","sr-cyrl-ba":"Концентрисани читалац","sr-cyrl-rs":"Концентрисани читалац","sr-latn-rs":"Koncentrisani čitalac",sv:"Avancerad läsare",sw:"Kisomaji cha Kuzamisha",ta:"அற்புதமான ரீடர்",te:"మంత్రముగ్ధులను చేసే పఠన సాధనం","tg-cyrl-tj":"Хонандаи фарогир",th:"โปรแกรมช่วยอ่าน",ti:"ኣንባቢ ሕሉው ስምዒት ፈጣሪ",tk:"Giňişleýin okaýjy",tn:"Sebadi sa Imesife",tr:"Tam Ekran Okuyucu",tt:"Чолгап алучы уку чарасы","ug-cn":"چۆكمە ئوقۇغۇچ",uk:"Занурення в текст",ur:"امرسیو مطالعہ کار",uz:"Immersiv mutolaa vositasi",vi:"Trình đọc Chân thực",wo:"Jàngukaay bu Rafet",xh:"Isifundi Esikhulu",yo:"Ìwò Alámùtán",zh:"沉浸式阅读器","zh-hant":"沈浸式閱讀程式",zu:"Isifundi Sokuzizwisa"};function a(e){var t=document.createElement("img");t.src="https://contentstorage.onenote.office.net/onenoteltir/permanent-static-resources/immersive-reader-icon.svg";var n=e.getAttribute("data-icon-px-size")||"20";t.style.height=t.style.width=n+"px",t.style.verticalAlign="middle",t.style.marginTop="-2px";var r=e.getAttribute("data-locale")||"en";t.alt=s(r),e.appendChild(t)}function o(e){var t=document.createElement("span");t.style.marginLeft="8px",e.appendChild(t)}function i(e){var t=document.createElement("span"),n=e.getAttribute("data-locale")||"en";t.textContent=s(n),e.appendChild(t)}function s(e){return e=e.toLowerCase(),r[e]?r[e]:"zh-hk"===e||"zh-mo"===e||"zh-tw"===e?r["zh-hant"]:(e=e.substring(0,e.lastIndexOf("-")),r[e]?r[e]:(e=e.substring(0,e.lastIndexOf("-")),r[e]?r[e]:r.en))}t.renderButtons=function(e){var t=document.createElement("style");t.innerHTML=".immersive-reader-button{cursor:pointer;display:inline-block;padding:5px;} .immersive-reader-button:hover{background:rgba(0,0,0,.05);border-radius:2px",document.head.appendChild(t);var n=[].slice.call(document.getElementsByClassName("immersive-reader-button"));e&&e.elements&&(n=e.elements);for(var r=0,l=n;r<l.length;r++){var c=l[r];c.setAttribute("role","button");var u=c.getAttribute("data-locale")||"en";switch(c.setAttribute("aria-label",s(u)),c.getAttribute("data-button-style")||"icon"){case"icon":a(c);break;case"text":i(c);break;case"iconAndText":a(c),o(c),i(c)}}}},function(e,t,n){"use strict";var r=this&&this.__assign||function(){return(r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var a in t=arguments[n])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0});var a=n(0),o=n(4),i={};function s(e){return!!e&&new RegExp("^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\-]{0,61}[a-zA-Z0-9])$").test(e)}i[o.ErrorCode.TokenExpired]="The access token supplied is expired.",i[o.ErrorCode.Throttled]="You have exceeded your quota.",i[o.ErrorCode.ServerError]="An error occurred when calling the server to process the text.",i[o.ErrorCode.InvalidSubdomain]="The subdomain supplied is invalid.",t.launchAsync=function(e,t,n,l){return new Promise((function(c,u){if(e)if(n)if(n.chunks)if(n.chunks.length)if(s(t)||l&&l.customDomain){var d=Date.now();(l=r({uiZIndex:1e3,timeout:15e3,useWebview:!1,allowFullscreen:!0,hideExitButton:!1,cookiePolicy:a.CookiePolicy.Disable},l)).uiZIndex&&"number"==typeof l.uiZIndex||(l.uiZIndex=1e3);var m=null,p=document.createElement("div"),v=l.useWebview?document.createElement("webview"):document.createElement("iframe"),f=document.createElement("style");f.innerHTML="body{height:100%;overflow:hidden;}";var g=function(){m&&(window.clearTimeout(m),m=null)},h=function(){document.body.contains(p)&&document.body.removeChild(p),window.removeEventListener("message",y),g(),f.parentNode&&f.parentNode.removeChild(f)},b=function(){h(),l.onExit&&l.onExit()};h();var y=function(r){if(r&&r.data)if("ImmersiveReader-ReadyForContent"===r.data){g();var a={cogSvcsAccessToken:e,cogSvcsSubdomain:t,request:n,launchToPostMessageSentDurationInMs:Date.now()-d};v.contentWindow.postMessage(JSON.stringify({messageType:"Content",messageValue:a}),"*")}else if("ImmersiveReader-Exit"===r.data)b();else if(r.data.startsWith("ImmersiveReader-LaunchResponse:")){var s=null,l=null,m=null;try{m=JSON.parse(r.data.substring(31))}catch(e){}m&&m.success?s={container:p,sessionId:m.sessionId}:l=m&&!m.success?{code:m.errorCode,message:i[m.errorCode],sessionId:m.sessionId}:{code:o.ErrorCode.ServerError,message:i[o.ErrorCode.ServerError]},s?(g(),c(s)):l&&(b(),u(l))}};window.addEventListener("message",y),m=window.setTimeout((function(){h(),u({code:o.ErrorCode.Timeout,message:"Page failed to load after timeout ("+l.timeout+" ms)"})}),l.timeout),l.allowFullscreen&&v.setAttribute("allowfullscreen",""),v.style.cssText="position: static; width: 100vw; height: 100vh; left: 0; top: 0; border-width: 0",l.useWebview&&v.addEventListener("loadstop",(function(){v.contentWindow.postMessage(JSON.stringify({messageType:"WebviewHost"}),"*")}));var E=(l.customDomain?l.customDomain:"https://"+t+".cognitiveservices.azure.com/immersivereader/webapp/v1.0/")+"reader?exitCallback=ImmersiveReader-Exit&sdkPlatform=js&sdkVersion=1.0.0";E+="&cookiePolicy="+(l.cookiePolicy===a.CookiePolicy.Enable?"enable":"disable"),l.hideExitButton&&(E+="&hideExitButton=true"),l.uiLang&&(E+="&omkt="+l.uiLang),v.src=E,p.style.cssText="position: fixed; width: 100vw; height: 100vh; left: 0; top: 0; border-width: 0; -webkit-perspective: 1px; z-index: "+l.uiZIndex+"; background: white; overflow: hidden",p.appendChild(v),document.body.appendChild(p),document.head.appendChild(f)}else u({code:o.ErrorCode.InvalidSubdomain,message:i[o.ErrorCode.InvalidSubdomain]});else u({code:o.ErrorCode.BadArgument,message:"Chunks must not be empty"});else u({code:o.ErrorCode.BadArgument,message:"Chunks must not be null"});else u({code:o.ErrorCode.BadArgument,message:"Content must not be null"});else u({code:o.ErrorCode.BadArgument,message:"Token must not be null"})}))},t.close=function(){window.postMessage("ImmersiveReader-Exit","*")},t.isValidSubdomain=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.BadArgument="BadArgument",e.Timeout="Timeout",e.TokenExpired="TokenExpired",e.Throttled="Throttled",e.ServerError="ServerError",e.InvalidSubdomain="InvalidSubdomain"}(t.ErrorCode||(t.ErrorCode={}))}])},78259:(e,t,n)=>{"use strict";n.d(t,{O:()=>s});var r=n(58176),a=n.n(r),o=n(39479),i={className:"info-link",defaultProtocol:"https"},s={linkifyText:function(e,t){if(e){var n=t?o.extend({},i,t):i;return a()(e,n)}}}},25723:(e,t,n)=>{"use strict";n.d(t,{m:()=>f});var r=n(32735),a=n(29014),o=n(99940),i=n(23481),s=n(91967),l=n(44704),c=n(49985);const u={button:"nckQw"};function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var m=null,p=!1,v="shared.immersiveReader";function f(e){var t,n,f=(t=r.useState(m),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(t,n)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),g=f[0],h=f[1];return m||p||(p=!0,(0,l.ajaxRequest)({resource:"/api/integrations/token/immersive-reader",type:o.k.GET,success:function(e){m=e,h(e),window.setTimeout((function(){m=null,p=!1}),9e5)},error:function(){}})),g?(e.title||(e.title=i.T.getPhrase(v,"titleFallback")),r.createElement("span",{className:"".concat(u.button," ").concat(e.className||""),onClick:function(){s.q.isFunction(e.onLaunch)&&e.onLaunch(),c.k.logUserAction(e.analyticsData,e.analyticsOptions);var t={title:e.title,chunks:[{content:e.text,mimeType:e.html?"text/html":"text/plain"}]},n=g.subdomain,r=g.token,o={uiZIndex:5e3,onExit:function(){s.q.isFunction(e.onExit)&&e.onExit()}};a.launchAsync(r,n,t,o)}},r.createElement("svg",{viewBox:"0 0 40 37"},r.createElement("path",{d:"M37.4,0.9 L37.4,9.6 L35.4,9.6 L35.4,2.9 L24.4,2.9 C22.9,3.3 20,4.5 20,6 L20,17.2 L18,17.2 L18,6 C18,5 15.6,3.6 13.8,2.9 L2,2.9 L2,29 L12.4,29 L12.4,31 L0,31 L0,0.9 L14.1,0.9 L14.3,1 C15,1.2 17.5,2.2 18.9,3.7 C20.5,1.9 23.5,1.1 23.9,1 L24.1,1 L37.4,1 L37.4,0.9 Z",fill:"#000000"}),r.createElement("path",{d:"M27.4,37 L25.8,37 L18.4,29.4 L14,29.4 L14,21 L18.4,20.9 L26.1,13 L27.4,13 L27.4,37 Z M16,27.4 L19.2,27.4 L25.3,33.7 L25.3,16.6 L19.2,22.9 L15.9,22.9 L15.9,27.4 L16,27.4 Z",fill:"#0197F2"}),r.createElement("path",{d:"M31.3,32.7 L29.6,31.7 C29.6,31.7 31.7,28.3 31.7,25.2 C31.7,21.9 29.6,18.5 29.6,18.4 L31.3,17.4 C31.4,17.6 33.7,21.3 33.7,25.2 C33.7,28.8 31.4,32.6 31.3,32.7 Z",fill:"#0197F2"}),r.createElement("path",{d:"M36.4,36.2 L34.8,35 C34.8,35 38,30.8 38,25.2 C38,19.6 34.8,15.4 34.8,15.4 L36.4,14.2 C36.5,14.4 40,19 40,25.3 C40,31.5 36.5,36 36.4,36.2 Z",fill:"#0197F2"})))):r.createElement(r.Fragment,null)}},87311:(e,t,n)=>{"use strict";n.d(t,{G:()=>a});var r=n(81886),a={getTagActionProps:function(e,t,n){return n?{onClick:function(n){t&&t();var a=e?e(n):null;if(a)return r.Q.C$.trigger(a)}}:{getAppLink:function(t){return e?e(t):null},onClick:t}}}},16035:(e,t,n)=>{"use strict";n.d(t,{z:()=>c});var r=n(32735),a=n(23481),o=n(36848),i=n(44829),s=n(91807),l=a.T.encloseNamespace("shared.tags");function c(e){var t,n,a=e.tag,c=e.appLink,u=e.onClick,d=e.disabled,m=e.tagClass,p=void 0===m?"tag":m,v=a.name.toLowerCase(),f=null===(t=a.tagType)||void 0===t?void 0:t.toLowerCase(),g=f===i.Q.Normal&&e.themeColours&&!!(null===(n=e.themeColours)||void 0===n?void 0:n.secondary),h="rounded-pill py-1 px-2 my-1 me-1 ".concat(p," ").concat(function(e,t){switch(e){case i.Q.Pedagogy:case i.Q.Skill:return"pedagogy-tag text-white";case i.Q.Hidden:return"hidden-tag fw-normal";case i.Q.Normal:return t?"":"bg-gray-100 fw-normal";default:return""}}(f,g));g&&(h+=" text-white"),!c&&!u||d||(h+=" cursor-pointer"),d&&(h+=" "+s.Z.disabled),e.onRemove&&(h+=" "+s.Z.badge),c||(h+=" d-inline-block");var b=g?{backgroundColor:e.themeColours.secondary}:{};return c?r.createElement(o.F,{onClick:u,appLink:c,className:h,title:v,style:b},r.createElement("span",{className:"text-truncate text-nowrap"},v)):r.createElement("button",{onClick:u,className:h,title:v,style:b,"aria-label":"".concat(l("ariaFilter")," ").concat(v)},r.createElement("span",{className:"text-truncate text-nowrap"},v,e.onRemove&&r.createElement("button",{onClick:e.onRemove,className:"".concat(s.Z.close," btn-close font-size-normal"),role:"button","aria-label":"Close"})))}},91743:(e,t,n)=>{"use strict";n.d(t,{P:()=>c});var r=n(32735),a=n(16035),o=n(44829),i=n(91807);function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function l(e){var t;switch(null===(t=e.tagType)||void 0===t?void 0:t.toLowerCase()){case o.Q.Pedagogy:return 0;case o.Q.Skill:return 1;default:return 2}}function c(e){if(!e.tags)return r.createElement(r.Fragment,null);var t,n=(t=e.tags,function(e){if(Array.isArray(e))return s(e)}(t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||function(e,t){if(e){if("string"==typeof e)return s(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)?s(e,t):void 0}}(t)||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.")}()).sort((function(e,t){return l(e)-l(t)}));return r.createElement("div",{className:"".concat(i.Z.tagList," ").concat(e.className)},n.map((function(t){var n="function"==typeof e.getAppLink?e.getAppLink(t):null,o="function"==typeof e.onRemove?function(){return e.onRemove(t)}:null,i="function"==typeof e.onClick?function(){return e.onClick(t)}:null;return r.createElement(a.z,{key:t.id||t.name,tag:t,appLink:n,themeColours:e.themeColours,onRemove:o,onClick:i})})))}},73804:(e,t,n)=>{"use strict";n.d(t,{X:()=>C});var r=n(32735),a=n(42648),o=n(23481),i=n(110),s=n(78259),l=n(65858),c=n(11607),u=n(25723),d=n(87311),m=n(91743),p=n(83345),v=n(40178),f=n(31908),g=n(8730);const h={closeButton:"ZwHXo",descriptionBorder:"J_Z5i"};var b="shared.videoDetails",y=o.T.encloseNamespace(b);function E(e){var t=e.label,n=e.items,a=e.className;if(!(n&&n.data&&n.data.length))return r.createElement(r.Fragment,null);var o=n.data.map((function(e){return e.name})).join(", ");return r.createElement("div",{className:a},t,": ",o)}function k(e){var t,n,a,o,s,l,c,u,d=e.video;if(!f.M.isVideo(d)&&!f.M.isClip(d))return r.createElement(r.Fragment,null);var m=f.M.getParentVideo(d);return r.createElement("div",{className:d.description?"col-md-5 ps-md-3 pt-3 pt-md-0":"col-12"},r.createElement("h2",{className:"h6 mb-1"},r.createElement(p.x,{phrase:"details"})),!!m.productionYear&&r.createElement("div",{className:"mb-1"},r.createElement(p.x,{phrase:"productionYear",options:{year:m.productionYear}})),r.createElement(E,{label:y("productionCompanies",{smartCount:null===(n=null===(t=m.productionCompanies)||void 0===t?void 0:t.data)||void 0===n?void 0:n.length}),items:m.productionCompanies,className:"mb-1"}),r.createElement(E,{label:y("distributors",{smartCount:null===(o=null===(a=m.distributors)||void 0===a?void 0:a.data)||void 0===o?void 0:o.length}),items:m.distributors,className:"mb-1"}),r.createElement(E,{label:y("producers",{smartCount:null===(l=null===(s=m.producers)||void 0===s?void 0:s.data)||void 0===l?void 0:l.length}),items:m.producers,className:"mb-1"}),r.createElement(E,{label:y("directors",{smartCount:null===(u=null===(c=m.directors)||void 0===c?void 0:c.data)||void 0===u?void 0:u.length}),items:m.directors,className:"mb-1"}),!!m.dateBroadcast&&r.createElement("div",{className:"mb-1"},r.createElement(p.x,{phrase:"dateBroadcast",options:{date:i.O.format(m.dateBroadcast,"DD/MM/YYYY")}})),!!m.channel&&r.createElement("div",{className:"mb-1"},r.createElement(p.x,{phrase:"channel",options:{channel:m.channel.name}})),f.M.canViewUploadDate(e.video)&&r.createElement("div",{className:"mb-1"},r.createElement(p.x,{phrase:"dateUploaded",options:{date:i.O.format(d.dateCreated,"DD/MM/YYYY")}})))}function C(e){var t,n,o=e.video,i=e.maxHeight,y=void 0===i?v.x:i,E=f.M.getParentVideo(o),C=!!e.video.description,w=(0,g._)(e.video)||!!E.productionYear||!!E.dateBroadcast||!!E.channel||f.M.canViewUploadDate(e.video),x="function"==typeof e.onClickClose,L="function"==typeof e.onClickShowCurriculumLinks;return C||w?r.createElement(p.D.Provider,{value:b},r.createElement("div",{className:"rounded border p-3 mb-3 position-relative"},r.createElement(a.$B,{autoHeight:!0,autoHeightMax:y},r.createElement("div",{className:"row g-0"},C&&r.createElement("div",{className:w?"".concat(h.descriptionBorder," pe-3 col-md-7"):"col-12"},r.createElement("div",{className:"d-flex align-items-center"},r.createElement("h2",{className:"h6 mb-1"},r.createElement(p.x,{phrase:"description"})),r.createElement(u.m,{text:o.description,title:o.name,className:"ps-2",onLaunch:e.onLaunchImmersiveReader,onExit:e.onExitImmersiveReader,analyticsOptions:{location:l.LZ.PlayPage,entity:l.py.Video,actionType:l.Vw.Click,descriptor:l._S.LaunchImmersiveReader},analyticsData:{id:o.id,type:"description"}})),r.createElement("p",{className:"mb-0",dangerouslySetInnerHTML:{__html:s.O.linkifyText(e.video.description,{nl2br:!0})}}),r.createElement(m.P,Object.assign({tags:e.hideTags||f.M.isInteractive(e.video)||!(null===(n=null===(t=e.video.tags)||void 0===t?void 0:t.data)||void 0===n?void 0:n.length)?null:e.video.tags.data},d.G.getTagActionProps(e.getTagAppLink,null,e.suppressInteractivity),{className:"mt-1"})),L&&r.createElement(c.L,{onClick:e.onClickShowCurriculumLinks,className:"cursor-pointer d-inline-block fw-semibold text-info mt-2 mb-1"},r.createElement(p.x,{namespace:b,phrase:"seeCurriculumLinks"}))),w&&r.createElement(k,Object.assign({},e)))),x&&r.createElement("button",{type:"button",className:"btn-close ".concat(h.closeButton),"aria-label":"Close",onClick:e.onClickClose}))):r.createElement(r.Fragment,null)}},8730:(e,t,n)=>{"use strict";n.d(t,{_:()=>u});var r=n(1048),a=n(66090);function o(e){return function(e){if(Array.isArray(e))return i(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return i(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)?i(e,t):void 0}}(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 i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function s(e){var t=e.page,n=e.totalPages,o=a.O.isNumber(t)&&t>0&&t<n&&t+1,i=a.O.isNumber(t)&&t>1&&t-1,s={};if(o&&o<=n&&(s.next=o.toString()),i&&(s.previous=i.toString()),!r.t.isEmpty(s))return s}var l={isEmpty:function(e){return e&&!(e.data&&e.data.length)},length:function(e){return e&&e.data&&e.data.length},at:function(e,t){if(e&&e.data&&e.data.length&&!(t>e.data.length))return e.data[t]},get:function(e,t){if(e&&e.data&&e.data.length)return e.data.find((function(e){return e.id&&e.id.toString()===t}))},flattenCollections:function(e){if(e&&e.length){var t=[];return e.forEach((function(e){t=[].concat(o(t),o(e.data))})),t}},getNextCursor:function(e){return e.pagination&&e.pagination.cursors&&e.pagination.cursors.next},convertLegacyPaginatedCollection:function(e){if(e)return{data:e.data,pagination:{cursors:s(e.pagination),limit:e.pagination.pageSize}}},hasData:function(e){return!l.isEmpty(e)}},c=n(31908);function u(e){var t=l.hasData,n=function(e){return c.M.isVideo(e)?e:c.M.isClip(e)?e._parentVideo:null}(e);return!!n&&(t(n.productionCompanies)||t(n.producers)||t(n.distributors)||t(n.directors))}},40178:(e,t,n)=>{"use strict";n.d(t,{x:()=>r});var r=368},44829:(e,t,n)=>{"use strict";var r,a;n.d(t,{Q:()=>r}),function(e){e.Normal="normal",e.Pedagogy="pedagogy",e.Hidden="hidden",e.Skill="skill",e.Curation="curation"}(r||(r={})),function(e){e[e.Normal=0]="Normal",e[e.Pedagogy=1]="Pedagogy",e[e.Hidden=2]="Hidden",e[e.Skill=3]="Skill",e[e.Curation=4]="Curation"}(a||(a={}))},94644:(e,t,n)=>{"use strict";n.d(t,{r:()=>u});var r=n(50242),a=n(81886),o=n(67058),i=n(14553),s=n(49267),l=n(49075),c={notFound:o.d,forbidden:{rating:i.q,yearLevel:i.q,region:s.a,privacy:i.q},badRequest:l._};function u(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e){var o;o="number"==typeof e?e:e.status;var i=Object.assign(Object.assign({},c),t);o&&a.Q.Ry.isStatusCodeError(o)&&(o!==r.o.NotFound?o!==r.o.Forbidden?n.badRequest||a.Q.Ry.throw(new i.badRequest):n.forbidden||a.Q.Ry.throw(new i.forbidden.privacy):n.notFound||a.Q.Ry.throw(new i.notFound))}}},91286:(e,t,n)=>{"use strict";n.d(t,{v:()=>i});var r=n(32735),a=n(94644);function o(e){return e.map((function(e){return e.statusCode})).join(":")}function i(e,t,n){var i=Array.isArray(e)?e:[e];(0,r.useEffect)((function(){i.forEach((function(e){(0,a.r)(e.statusCode,t,n)}))}),[o(i),t,n])}},64554:(e,t,n)=>{"use strict";n.r(t),n.d(t,{StudentsVideoView:()=>N});var r=n(32735),a=n(23481),o=n(20354),i=n(36848),s=n(83914),l=n(83345),c=n(73804),u=n(4594),d=n(60051),m=n(43012),p=n(39151),v=n(20768),f=n(47812),g=n(31949),h=n(1575),b=n(91286),y=n(35223),E=n(64818),k=n(14070),C=n(97291),w=n(57245),x=n(47288),L="userManager.studentsVideo",S=a.T.encloseNamespace(L);function N(e){var t,n,a,N=o.a.useBasicFetch(x.N.getUser(e.userId)),I=o.a.useBasicFetch((n=e.id,(a=e.typeId).toString()===u.E.Clip.toString()?m.e.clip(n):a.toString()===u.E.Interactive.toString()?v.b.interactiveMetadata(n):h.R.video(n))),A=o.a.useBasicFetch(f.k.createViewKey(e.id,d.f.MasterObject)),T=o.a.useBasicFetch(p.L.config()),j=o.a.useBasicFetch(g.N.currentUser());return(0,b.v)([N,I]),N.hasCompleted&&I.hasCompleted&&A.hasCompleted&&T.hasCompleted&&j.hasCompleted?r.createElement("div",{className:"px-3"},r.createElement("div",{className:"alert text-dark bg-light-blue px-2 rounded d-flex flex-column flex-lg-row justify-content-between mb-3 align-items-center",role:"alert"},r.createElement("div",{className:"d-flex align-items-center"},r.createElement(s.x,{svgName:y.vn.Info,size:s.S.Standard,className:"me-2 svg-container"}),r.createElement("div",{className:"w-100"},r.createElement("p",{className:"fw-semibold mb-0"},S(function(e){return e.toString()===u.E.Clip.toString()?"messageClip":e.toString()===u.E.Interactive.toString()?"messageInteractive":"messageVideo"}(e.typeId),{name:E.l.getFullName(N.data),yearGroup:null===(t=N.data.masterYearGroup)||void 0===t?void 0:t.name}))))),r.createElement("div",{className:"mb-3"},r.createElement(w._,{config:T.data,video:I.data,currentUser:j.data,viewKey:A.data})),r.createElement("div",{className:"d-flex justify-content-between align-items-center mb-2"},r.createElement("div",null,r.createElement("h1",{className:"h3 d-inline-flex m-0 mb-2"},I.data.name)),r.createElement(i.F,{appLink:{application:C.O.USER_MANAGER,action:k.e.UserManager.DELETE_STUDENTS_VIDEO,args:[e.userId,e.id],params:{typeId:e.typeId}},className:"btn btn-outline-dark"},r.createElement(l.x,{namespace:L,phrase:"delete"}))),r.createElement(c.X,{video:I.data})):r.createElement(r.Fragment,null)}},91807:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r={tagList:"Zw6d9",disabled:"jlL1c",partialTag:"too_N",badge:"OjtN8",close:"X9joI"}}}]);
|
|
2
|
+
//# sourceMappingURL=4554-7367f19919-lite.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts/4554-7367f19919-lite.chunk.js","mappings":"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","sources":["file:///app/node_modules/@microsoft/immersive-reader-sdk/lib/immersive-reader-sdk.js","file:///app/packages/libs/common/src/react/utils/LinkifyHelper.ts","file:///app/packages/libs/shared/src/components/immersive-reader/immersive-reader.scss","file:///app/packages/libs/shared/src/components/immersive-reader/ImmersiveReader.tsx","file:///app/packages/libs/shared/src/components/tags/TagHelper.ts","file:///app/packages/libs/shared/src/components/tags/TagItem.tsx","file:///app/packages/libs/shared/src/components/tags/TagList.tsx","file:///app/packages/libs/shared/src/components/video-details/video-details.scss","file:///app/packages/libs/shared/src/components/video-details/VideoDetails.tsx","file:///app/packages/libs/shared/src/utils/CollectionHelper.ts","file:///app/packages/libs/shared/src/components/video-details/VideoDetailsUtils.ts","file:///app/packages/libs/shared/src/constants/MinimumGlanceHeight.ts","file:///app/packages/libs/shared/src/enums/TagType.ts","file:///app/packages/libs/shared/src/errors/handlers/HttpErrorHandlers.ts","file:///app/packages/libs/shared/src/hooks/UseHandleObjectError.ts","file:///app/packages/projects/lite/src/apps/user-manager/views/students-video/StudentsVideoView.tsx","file:///app/packages/libs/shared/src/components/tags/tags.scss"],"sourcesContent":["!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.ImmersiveReader=t():e.ImmersiveReader=t()}(window,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=1)}([function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),function(e){e[e.Disable=0]=\"Disable\",e[e.Enable=1]=\"Enable\"}(t.CookiePolicy||(t.CookiePolicy={}))},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(2);t.renderButtons=n.renderButtons;var o=r(3);t.close=o.close,t.launchAsync=o.launchAsync;var i=r(0);t.CookiePolicy=i.CookiePolicy,window.addEventListener(\"load\",(function(){var e,t;window.hasOwnProperty(\"Promise\")||(e=\"https://contentstorage.onenote.office.net/onenoteltir/permanent-static-resources/promise-polyfill.min.js\",(t=document.createElement(\"script\")).src=e,document.head.appendChild(t)),n.renderButtons()}))},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n={af:\"Indompelende leser\",am:\"በህያው ስሜት ፈጣሪ ዕይታ አንባቢ\",ar:\"القارئ الشامل\",as:\"ইমাৰচিভ ৰিডাৰ\",az:\"İmmersiv Oxuyucu\",be:\"Імерсіўны чытальнік\",bg:\"Концентриран четец\",bn:\"মনোগ্রাহী পাঠক\",\"bn-bd\":\"ইমার্সিভ পাঠক\",bs:\"Koncentrirani čitalac\",ca:\"Lector immersiu\",cs:\"Asistivní čtečka\",\"cy-gb\":\"Darllenydd Ymdrwythol\",da:\"Forenklet læser\",de:\"Plastischer Reader\",el:\"Προηγμένο πρόγραμμα ανάγνωσης\",en:\"Immersive Reader\",es:\"Lector inmersivo\",et:\"Süvaluger\",eu:\"Irakurgailu murgiltzailea\",fa:\"خواننده همهجانبه\",fi:\"Syventävä lukuohjelma\",fil:\"Immersive Reader\",fr:\"Lecteur immersif\",\"ga-ie\":\"Léitheoir tumthach\",gd:\"An leughadair ùr-nòsach\",gl:\"Lector avanzado\",gu:\"ઇમર્સિવ રીડર\",ha:\"Mai karatu Mai barbazawa\",he:\"תצוגת קריאה מודרנית\",hi:\"इमर्सिव रीडर\",hr:\"Stopljeni čitač\",hu:\"Modern olvasó\",hy:\"Խորասուզված ընթերցիչ\",id:\"Pembaca Imersif\",ig:\"Ọgụụ Kenzipụtara\",is:\"Aðgengilegt lestrarumhverfi\",it:\"Strumento di lettura immersiva\",ja:\"イマーシブ リーダー\",ka:\"იმერსიული წამკითხველი\",kk:\"Иммерсивті оқу құралы\",km:\"កម្មវិធីអានពណ៌រំលេចនៅលើអេក្រង់\",kn:\"ಇಮ್ಮರ್ಸಿವ್ ಓದುಗ\",ko:\"몰입형 리더\",kok:\"तंद्री लागिल्लो वाचक\",\"ku-arab\":\"خوێنەری پڕ\",ky:\"Курчаган Окугуч\",lb:\"Immersive Reader\",lo:\"ຕົວອ່ານອິມເມີສີບ\",lt:\"Įtraukianti skaitytuvė\",lv:\"Tīrskata lasītājs\",mi:\"Pūpānui Rumaki\",mk:\"Сеопфатен читач\",ml:\"ഇമ്മേഴ്സീവ് റീഡർ\",mn:\"Идэвхтэй уншигч\",mr:\"इमर्सिव्ह वाचक\",ms:\"Pembaca Imersif\",mt:\"Qarrej Immersiv\",ne:\"इमेर्सिभ रिडर\",nl:\"Insluitende lezer\",\"nn-no\":\"Engasjerande lesar\",no:\"Engasjerende leser\",nso:\"Go Bala ka Mongwalo o Mokoto\",or:\"ଇମରସିଭ୍ ରିଡର୍\",pa:\"ਇਮਰਸਿਵ ਰੀਡਰ\",\"pa-arab\":\"گھیرن آلا مطالعہ کار\",pl:\"Czytnik immersyjny\",prs:\"خواننده نمایش\",pt:\"Leitura Avançada\",quc:\"Nim ucholajil sik'inel uwach\",quz:\"Wankisqa Ñawiq\",ro:\"Immersive Reader\",ru:\"Иммерсивное средство чтения\",rw:\"Insakazasoma\",sd:\"امرسو ريڊر\",si:\"ගිලෙන සුළු කියවනය\",sk:\"Imerzná čítačka\",sl:\"Potopni bralnik\",sq:\"Lexuesi kredhës\",\"sr-cyrl-ba\":\"Концентрисани читалац\",\"sr-cyrl-rs\":\"Концентрисани читалац\",\"sr-latn-rs\":\"Koncentrisani čitalac\",sv:\"Avancerad läsare\",sw:\"Kisomaji cha Kuzamisha\",ta:\"அற்புதமான ரீடர்\",te:\"మంత్రముగ్ధులను చేసే పఠన సాధనం\",\"tg-cyrl-tj\":\"Хонандаи фарогир\",th:\"โปรแกรมช่วยอ่าน\",ti:\"ኣንባቢ ሕሉው ስምዒት ፈጣሪ\",tk:\"Giňişleýin okaýjy\",tn:\"Sebadi sa Imesife\",tr:\"Tam Ekran Okuyucu\",tt:\"Чолгап алучы уку чарасы\",\"ug-cn\":\"چۆكمە ئوقۇغۇچ\",uk:\"Занурення в текст\",ur:\"امرسیو مطالعہ کار\",uz:\"Immersiv mutolaa vositasi\",vi:\"Trình đọc Chân thực\",wo:\"Jàngukaay bu Rafet\",xh:\"Isifundi Esikhulu\",yo:\"Ìwò Alámùtán\",zh:\"沉浸式阅读器\",\"zh-hant\":\"沈浸式閱讀程式\",zu:\"Isifundi Sokuzizwisa\"};function o(e){var t=document.createElement(\"img\");t.src=\"https://contentstorage.onenote.office.net/onenoteltir/permanent-static-resources/immersive-reader-icon.svg\";var r=e.getAttribute(\"data-icon-px-size\")||\"20\";t.style.height=t.style.width=r+\"px\",t.style.verticalAlign=\"middle\",t.style.marginTop=\"-2px\";var n=e.getAttribute(\"data-locale\")||\"en\";t.alt=s(n),e.appendChild(t)}function i(e){var t=document.createElement(\"span\");t.style.marginLeft=\"8px\",e.appendChild(t)}function a(e){var t=document.createElement(\"span\"),r=e.getAttribute(\"data-locale\")||\"en\";t.textContent=s(r),e.appendChild(t)}function s(e){return e=e.toLowerCase(),n[e]?n[e]:\"zh-hk\"===e||\"zh-mo\"===e||\"zh-tw\"===e?n[\"zh-hant\"]:(e=e.substring(0,e.lastIndexOf(\"-\")),n[e]?n[e]:(e=e.substring(0,e.lastIndexOf(\"-\")),n[e]?n[e]:n.en))}t.renderButtons=function(e){var t=document.createElement(\"style\");t.innerHTML=\".immersive-reader-button{cursor:pointer;display:inline-block;padding:5px;} .immersive-reader-button:hover{background:rgba(0,0,0,.05);border-radius:2px\",document.head.appendChild(t);var r=[].slice.call(document.getElementsByClassName(\"immersive-reader-button\"));e&&e.elements&&(r=e.elements);for(var n=0,u=r;n<u.length;n++){var d=u[n];d.setAttribute(\"role\",\"button\");var l=d.getAttribute(\"data-locale\")||\"en\";switch(d.setAttribute(\"aria-label\",s(l)),d.getAttribute(\"data-button-style\")||\"icon\"){case\"icon\":o(d);break;case\"text\":a(d);break;case\"iconAndText\":o(d),i(d),a(d)}}}},function(e,t,r){\"use strict\";var n=this&&this.__assign||function(){return(n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};Object.defineProperty(t,\"__esModule\",{value:!0});var o=r(0),i=r(4),a={};function s(e){if(!e)return!1;return new RegExp(\"^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\\\\-]{0,61}[a-zA-Z0-9])$\").test(e)}a[i.ErrorCode.TokenExpired]=\"The access token supplied is expired.\",a[i.ErrorCode.Throttled]=\"You have exceeded your quota.\",a[i.ErrorCode.ServerError]=\"An error occurred when calling the server to process the text.\",a[i.ErrorCode.InvalidSubdomain]=\"The subdomain supplied is invalid.\",t.launchAsync=function(e,t,r,u){return new Promise((function(d,l){if(e)if(r)if(r.chunks)if(r.chunks.length)if(s(t)||u&&u.customDomain){var c=Date.now();(u=n({uiZIndex:1e3,timeout:15e3,useWebview:!1,allowFullscreen:!0,hideExitButton:!1,cookiePolicy:o.CookiePolicy.Disable},u)).uiZIndex&&\"number\"==typeof u.uiZIndex||(u.uiZIndex=1e3);var m=null,v=document.createElement(\"div\"),p=u.useWebview?document.createElement(\"webview\"):document.createElement(\"iframe\"),f=document.createElement(\"style\");f.innerHTML=\"body{height:100%;overflow:hidden;}\";var h=function(){m&&(window.clearTimeout(m),m=null)},b=function(){document.body.contains(v)&&document.body.removeChild(v),window.removeEventListener(\"message\",y),h(),f.parentNode&&f.parentNode.removeChild(f)},g=function(){b(),u.onExit&&u.onExit()};b();var y=function(n){if(n&&n.data)if(\"ImmersiveReader-ReadyForContent\"===n.data){h();var o={cogSvcsAccessToken:e,cogSvcsSubdomain:t,request:r,launchToPostMessageSentDurationInMs:Date.now()-c};p.contentWindow.postMessage(JSON.stringify({messageType:\"Content\",messageValue:o}),\"*\")}else if(\"ImmersiveReader-Exit\"===n.data)g();else if(n.data.startsWith(\"ImmersiveReader-LaunchResponse:\")){var s=null,u=null,m=null;try{m=JSON.parse(n.data.substring(\"ImmersiveReader-LaunchResponse:\".length))}catch(e){}m&&m.success?s={container:v,sessionId:m.sessionId}:u=m&&!m.success?{code:m.errorCode,message:a[m.errorCode],sessionId:m.sessionId}:{code:i.ErrorCode.ServerError,message:a[i.ErrorCode.ServerError]},s?(h(),d(s)):u&&(g(),l(u))}};window.addEventListener(\"message\",y),m=window.setTimeout((function(){b(),l({code:i.ErrorCode.Timeout,message:\"Page failed to load after timeout (\"+u.timeout+\" ms)\"})}),u.timeout),u.allowFullscreen&&p.setAttribute(\"allowfullscreen\",\"\"),p.style.cssText=\"position: static; width: 100vw; height: 100vh; left: 0; top: 0; border-width: 0\",u.useWebview&&p.addEventListener(\"loadstop\",(function(){p.contentWindow.postMessage(JSON.stringify({messageType:\"WebviewHost\"}),\"*\")}));var k=(u.customDomain?u.customDomain:\"https://\"+t+\".cognitiveservices.azure.com/immersivereader/webapp/v1.0/\")+\"reader?exitCallback=ImmersiveReader-Exit&sdkPlatform=js&sdkVersion=1.0.0\";k+=\"&cookiePolicy=\"+(u.cookiePolicy===o.CookiePolicy.Enable?\"enable\":\"disable\"),u.hideExitButton&&(k+=\"&hideExitButton=true\"),u.uiLang&&(k+=\"&omkt=\"+u.uiLang),p.src=k,v.style.cssText=\"position: fixed; width: 100vw; height: 100vh; left: 0; top: 0; border-width: 0; -webkit-perspective: 1px; z-index: \"+u.uiZIndex+\"; background: white; overflow: hidden\",v.appendChild(p),document.body.appendChild(v),document.head.appendChild(f)}else l({code:i.ErrorCode.InvalidSubdomain,message:a[i.ErrorCode.InvalidSubdomain]});else l({code:i.ErrorCode.BadArgument,message:\"Chunks must not be empty\"});else l({code:i.ErrorCode.BadArgument,message:\"Chunks must not be null\"});else l({code:i.ErrorCode.BadArgument,message:\"Content must not be null\"});else l({code:i.ErrorCode.BadArgument,message:\"Token must not be null\"})}))},t.close=function(){window.postMessage(\"ImmersiveReader-Exit\",\"*\")},t.isValidSubdomain=s},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),function(e){e.BadArgument=\"BadArgument\",e.Timeout=\"Timeout\",e.TokenExpired=\"TokenExpired\",e.Throttled=\"Throttled\",e.ServerError=\"ServerError\",e.InvalidSubdomain=\"InvalidSubdomain\"}(t.ErrorCode||(t.ErrorCode={}))}])}));","import { ObjectHash } from 'backbone';\nimport linkifyStr from 'linkifyjs/string';\nimport * as _ from 'underscore';\n\nconst BaseLinkifyOptions = {\n className: 'info-link',\n defaultProtocol: 'https'\n};\n\nexport const LinkifyHelper = {\n /**\n * The underlying linkifyStr interface escapes text within the input string\n */\n linkifyText(text: string, options?: ObjectHash): string {\n if (!text) return;\n const ops = options ? _.extend({}, BaseLinkifyOptions, options) : BaseLinkifyOptions;\n return linkifyStr(text, ops);\n }\n};","// extracted by mini-css-extract-plugin\nexport default {\"button\":\"nckQw\"};","import * as React from 'react';\nimport * as ImmersiveReaderSdk from '@microsoft/immersive-reader-sdk';\n\nimport { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\nimport { ajaxRequest } from 'libs/common/react/flight';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\n\nimport { PropsWithAnalyticsOptions } from 'libs/shared/interfaces';\n\nimport styles from './immersive-reader.scss';\n\n/**\n * Caching stuff globally across all usages of ImmersiveReader\n */\nlet globalImmersiveReader: ImmersiveReaderResponse = null;\nlet fetched = false;\n\nconst namespace = 'shared.immersiveReader';\n\ninterface ImmersiveReaderResponse {\n token: string;\n subdomain: string;\n}\n\ntype ImmersiveReaderProps = PropsWithAnalyticsOptions<{\n text: string;\n title?: string;\n className?: string;\n onLaunch?: () => void;\n onExit?: () => void;\n\n analyticsData: {\n id: string;\n type: string\n },\n html?: boolean\n}>;\n\nexport function ImmersiveReader(props: ImmersiveReaderProps): JSX.Element {\n const [ immersiveReader, setImmersiveReader ] = React.useState(globalImmersiveReader);\n\n if (!globalImmersiveReader && !fetched) {\n fetched = true;\n ajaxRequest({\n resource: '/api/integrations/token/immersive-reader',\n type: HttpVerbs.GET,\n success: onFetched,\n error: () => {}\n });\n }\n\n function onFetched(data: ImmersiveReaderResponse): void {\n globalImmersiveReader = data;\n setImmersiveReader(data);\n window.setTimeout(() => {\n globalImmersiveReader = null;\n fetched = false;\n }, 900000); // 15 minutes\n }\n\n if (!immersiveReader)\n return <></>;\n\n if (!props.title)\n props.title = LanguageService.getPhrase(namespace, 'titleFallback');\n\n function launchImmersiveReader(): void {\n if (FunctionHelper.isFunction(props.onLaunch))\n props.onLaunch();\n\n AnalyticsHelper.logUserAction(props.analyticsData, props.analyticsOptions);\n\n const content = {\n title: props.title,\n chunks: [{\n content: props.text,\n mimeType: props.html ? 'text/html' : 'text/plain'\n }]\n };\n\n const { subdomain, token } = immersiveReader;\n\n const options = {\n uiZIndex: 5000, // Should always appear above our content\n onExit: () => {\n if (FunctionHelper.isFunction(props.onExit))\n props.onExit();\n }\n };\n\n ImmersiveReaderSdk.launchAsync(token, subdomain, content, options);\n }\n\n return (\n <span className={`${styles.button} ${props.className || ''}`} onClick={launchImmersiveReader}>\n <svg viewBox='0 0 40 37'>\n <path d='M37.4,0.9 L37.4,9.6 L35.4,9.6 L35.4,2.9 L24.4,2.9 C22.9,3.3 20,4.5 20,6 L20,17.2 L18,17.2 L18,6 C18,5 15.6,3.6 13.8,2.9 L2,2.9 L2,29 L12.4,29 L12.4,31 L0,31 L0,0.9 L14.1,0.9 L14.3,1 C15,1.2 17.5,2.2 18.9,3.7 C20.5,1.9 23.5,1.1 23.9,1 L24.1,1 L37.4,1 L37.4,0.9 Z' fill='#000000'></path>\n <path d='M27.4,37 L25.8,37 L18.4,29.4 L14,29.4 L14,21 L18.4,20.9 L26.1,13 L27.4,13 L27.4,37 Z M16,27.4 L19.2,27.4 L25.3,33.7 L25.3,16.6 L19.2,22.9 L15.9,22.9 L15.9,27.4 L16,27.4 Z' fill='#0197F2'></path>\n <path d='M31.3,32.7 L29.6,31.7 C29.6,31.7 31.7,28.3 31.7,25.2 C31.7,21.9 29.6,18.5 29.6,18.4 L31.3,17.4 C31.4,17.6 33.7,21.3 33.7,25.2 C33.7,28.8 31.4,32.6 31.3,32.7 Z' fill='#0197F2'></path>\n <path d='M36.4,36.2 L34.8,35 C34.8,35 38,30.8 38,25.2 C38,19.6 34.8,15.4 34.8,15.4 L36.4,14.2 C36.5,14.4 40,19 40,25.3 C40,31.5 36.5,36 36.4,36.2 Z' fill='#0197F2'></path>\n </svg>\n </span>\n );\n}","import { Core } from 'libs/common/core';\n\nimport { Tag } from 'libs/shared/interfaces';\n\nexport const TagHelper = {\n /**\n * This helper allows tag appLinks to be triggered manually for use in a public context.\n * \n * For public pages, all anchors will be crawled by bots. Given then number of tags we have\n * this will chew through crawl budget unnecessarily. \n * \n * The consuming project can opt-in for this behaviour. By default, tags will always be rendered\n * as anchors.\n */\n getTagActionProps: (\n getTagAppLink: (tag: Tag) => Core.AppLink,\n onClick: () => void,\n renderAsSpan?: boolean\n ) => {\n if (renderAsSpan) {\n return {\n onClick: (tag: Tag) => {\n if (onClick)\n onClick();\n\n const appLink = getTagAppLink ? getTagAppLink(tag) : null;\n\n if (!appLink)\n return;\n\n return Core.AppLinkHelper.trigger(appLink);\n }\n };\n }\n\n return {\n getAppLink: (tag: Tag) => {\n return getTagAppLink\n ? getTagAppLink(tag)\n : null;\n },\n onClick\n };\n }\n};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { TagType } from 'libs/shared/enums/TagType';\nimport { Tag, ThemeColours } from 'libs/shared/interfaces';\n\nimport styles from './tags.scss';\n\nconst namespace = 'shared.tags';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface TagItemProps {\n tag: Tag;\n themeColours?: ThemeColours;\n appLink?: Core.AppLink;\n onClick?: () => void;\n onRemove?: () => void;\n disabled?: boolean;\n tagClass?: string;\n}\n\nfunction getTagTypeClass(tagType: TagType, hasThemeColour: boolean): string {\n switch (tagType) {\n case TagType.Pedagogy:\n case TagType.Skill:\n return 'pedagogy-tag text-white';\n\n case TagType.Hidden:\n return 'hidden-tag fw-normal';\n\n case TagType.Normal:\n if (!hasThemeColour)\n return 'bg-gray-100 fw-normal';\n return '';\n\n default:\n return '';\n }\n}\n\nexport function TagItem(props: TagItemProps): JSX.Element {\n const { tag, appLink, onClick, disabled, tagClass = 'tag' } = props;\n\n const name = tag.name.toLowerCase();\n const tagType = tag.tagType?.toLowerCase() as TagType;\n\n const hasThemeColour = (tagType === TagType.Normal && props.themeColours) && !!props.themeColours?.secondary;\n let classNames = `rounded-pill py-1 px-2 my-1 me-1 ${tagClass} ${getTagTypeClass(tagType, hasThemeColour)}`;\n\n if (hasThemeColour)\n classNames += ' text-white';\n\n if ((appLink || onClick) && !disabled)\n classNames += ' cursor-pointer';\n\n if (disabled)\n classNames += ' ' + styles.disabled;\n\n if (props.onRemove)\n classNames += ' ' + styles.badge;\n\n if (!appLink)\n classNames += ' d-inline-block';\n\n const style: React.CSSProperties = hasThemeColour\n ? { backgroundColor: props.themeColours.secondary }\n : {};\n\n if (appLink) {\n return (\n <AppLink\n onClick={onClick}\n appLink={appLink}\n className={classNames}\n title={name}\n style={style}\n >\n <span className='text-truncate text-nowrap'>{name}</span>\n </AppLink>\n );\n }\n\n return (\n <button\n onClick={onClick}\n className={classNames}\n title={name}\n style={style}\n aria-label={`${getPhrase('ariaFilter')} ${name}`}\n >\n <span className='text-truncate text-nowrap'>\n {name}\n {props.onRemove &&\n <button\n onClick={props.onRemove}\n className={`${styles.close} btn-close font-size-normal`}\n role='button'\n aria-label='Close'\n />\n }\n </span>\n </button>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { TagItem } from 'libs/shared/components/tags/TagItem';\nimport { TagType } from 'libs/shared/enums/TagType';\nimport { Tag, ThemeColours } from 'libs/shared/interfaces';\n\nimport styles from './tags.scss';\n\n/**\n * TODO: this will eventually handle ClickView and Customer tag types.\n */\nfunction getTagSortValue(tag: Tag): number {\n switch (tag.tagType?.toLowerCase()) {\n case TagType.Pedagogy:\n return 0;\n\n case TagType.Skill:\n return 1;\n\n default:\n return 2;\n }\n}\n\ninterface TagListProps {\n tags: Tag[];\n themeColours?: ThemeColours;\n onClick?: (tag: Tag) => void;\n onRemove?: (tag: Tag) => void;\n getAppLink?: (tag: Tag) => Core.AppLink;\n className?: string;\n}\n\nexport function TagList(props: TagListProps): JSX.Element {\n if (!props.tags)\n return <></>;\n\n const sortedTags = [...props.tags].sort((a, b) => getTagSortValue(a) - getTagSortValue(b));\n\n return (\n <div className={`${styles.tagList} ${props.className}`}>\n {sortedTags.map((tag: Tag) => {\n const appLink = typeof props.getAppLink === 'function'\n ? props.getAppLink(tag)\n : null;\n\n const onRemove = typeof props.onRemove === 'function'\n ? () => props.onRemove(tag)\n : null;\n\n const onClick = typeof props.onClick === 'function'\n ? () => props.onClick(tag)\n : null;\n\n return (\n <TagItem\n key={tag.id || tag.name}\n tag={tag}\n appLink={appLink}\n themeColours={props.themeColours}\n onRemove={onRemove}\n onClick={onClick}\n />\n );\n })}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"closeButton\":\"ZwHXo\",\"descriptionBorder\":\"J_Z5i\"};","import * as React from 'react';\nimport { Scrollbars } from 'react-custom-scrollbars-2';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\nimport { LinkifyHelper } from 'libs/common/react/utils/LinkifyHelper';\n\nimport { ClickDescriptor, EntityType, LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { ImmersiveReader } from 'libs/shared/components/immersive-reader/ImmersiveReader';\nimport { TagHelper } from 'libs/shared/components/tags/TagHelper';\nimport { TagList } from 'libs/shared/components/tags/TagList';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\nimport { MINIMUM_GLANCE_HEIGHT } from 'libs/shared/constants/MinimumGlanceHeight';\nimport { BaseObject, BasePaginatedCollection, CurrentUser, Tag, VideoTypes } from 'libs/shared/interfaces';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport { hasPPDD } from './VideoDetailsUtils';\n\nimport styles from './video-details.scss';\n\nconst namespace = 'shared.videoDetails';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface CommaListProps {\n label: string;\n items: BasePaginatedCollection<BaseObject>;\n className?: string;\n}\n\nfunction CommaList(props: CommaListProps): React.ReactElement {\n const { label, items, className } = props;\n\n const hasItems = items && items.data && items.data.length;\n\n if (!hasItems)\n return <></>;\n\n const commaSeperated = items.data.map(i => i.name).join(', ');\n\n return (\n <div className={className}>{label}: {commaSeperated}</div>\n );\n}\n\nfunction DetailsSection(props: VideoDetailsWithScrollbarProps): React.ReactElement {\n const { video } = props;\n\n if (!VideoHelper.isVideo(video) && !VideoHelper.isClip(video))\n return <></>;\n\n const parentVideo = VideoHelper.getParentVideo(video);\n\n return (\n <div className={video.description ? 'col-md-5 ps-md-3 pt-3 pt-md-0' : 'col-12'}>\n <h2 className='h6 mb-1'><Text phrase='details' /></h2>\n {!!parentVideo.productionYear && (\n <div className='mb-1'>\n <Text phrase='productionYear' options={{ year: parentVideo.productionYear }} />\n </div>\n )}\n <CommaList\n label={getPhrase('productionCompanies', { smartCount: parentVideo.productionCompanies?.data?.length })}\n items={parentVideo.productionCompanies}\n className='mb-1'\n />\n <CommaList\n label={getPhrase('distributors', { smartCount: parentVideo.distributors?.data?.length })}\n items={parentVideo.distributors}\n className='mb-1'\n />\n <CommaList\n label={getPhrase('producers', { smartCount: parentVideo.producers?.data?.length })}\n items={parentVideo.producers}\n className='mb-1'\n />\n <CommaList\n label={getPhrase('directors', { smartCount: parentVideo.directors?.data?.length })}\n items={parentVideo.directors}\n className='mb-1'\n />\n {!!parentVideo.dateBroadcast && (\n <div className='mb-1'>\n <Text phrase='dateBroadcast' options={{ date: DateHelper.format(parentVideo.dateBroadcast, 'DD/MM/YYYY') }} />\n </div>\n )}\n {!!parentVideo.channel && (\n <div className='mb-1'>\n <Text phrase='channel' options={{ channel: parentVideo.channel.name }} />\n </div>\n )}\n {VideoHelper.canViewUploadDate(props.video) && (\n <div className='mb-1'>\n <Text phrase='dateUploaded' options={{ date: DateHelper.format(video.dateCreated, 'DD/MM/YYYY') }} />\n </div>\n )}\n </div>\n );\n}\n\ninterface VideoDetailsWithScrollbarProps {\n video: VideoTypes;\n currentUser?: CurrentUser;\n getTagAppLink?: (tag: Tag) => Core.AppLink;\n onLaunchImmersiveReader?: () => void;\n onExitImmersiveReader?: () => void;\n onClickClose?: () => void;\n onClickShowCurriculumLinks?: () => void;\n maxHeight?: number;\n suppressInteractivity?: boolean;\n hideTags?: boolean;\n}\n\nexport function VideoDetailsWithScrollbar(props: VideoDetailsWithScrollbarProps): React.ReactElement {\n const { video, maxHeight = MINIMUM_GLANCE_HEIGHT } = props;\n\n const parentVideo = VideoHelper.getParentVideo(video);\n\n const showDescription = !!props.video.description;\n\n const showDetails = (\n hasPPDD(props.video) ||\n !!parentVideo.productionYear ||\n !!parentVideo.dateBroadcast ||\n !!parentVideo.channel ||\n VideoHelper.canViewUploadDate(props.video)\n );\n\n const canClose = typeof props.onClickClose === 'function';\n const showCurriculumLinks = typeof props.onClickShowCurriculumLinks === 'function';\n\n function getTags(): Tag[] {\n if (props.hideTags || VideoHelper.isInteractive(props.video) || !props.video.tags?.data?.length)\n return null;\n\n return props.video.tags.data;\n }\n\n if (!showDescription && !showDetails)\n return <></>;\n\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <div className='rounded border p-3 mb-3 position-relative'>\n <Scrollbars autoHeight autoHeightMax={maxHeight}>\n <div className='row g-0'>\n {showDescription && (\n <div className={showDetails ? `${styles.descriptionBorder} pe-3 col-md-7` : 'col-12'}>\n <div className='d-flex align-items-center'>\n <h2 className='h6 mb-1'>\n <Text phrase='description' />\n </h2>\n <ImmersiveReader\n text={video.description}\n title={video.name}\n className='ps-2'\n onLaunch={props.onLaunchImmersiveReader}\n onExit={props.onExitImmersiveReader}\n analyticsOptions={{\n location: LocationContext.PlayPage,\n entity: EntityType.Video,\n actionType: UserAction.Click,\n descriptor: ClickDescriptor.LaunchImmersiveReader\n }}\n analyticsData={{ id: video.id, type: 'description' }}\n />\n </div>\n <p className='mb-0' dangerouslySetInnerHTML={{ __html: LinkifyHelper.linkifyText(props.video.description, { nl2br: true }) }} />\n <TagList\n tags={getTags()}\n {...TagHelper.getTagActionProps(props.getTagAppLink, null, props.suppressInteractivity)}\n className='mt-1'\n />\n {showCurriculumLinks && (\n <DivButton\n onClick={props.onClickShowCurriculumLinks}\n className='cursor-pointer d-inline-block fw-semibold text-info mt-2 mb-1'\n >\n <Text namespace={namespace} phrase='seeCurriculumLinks' />\n </DivButton>\n )}\n </div>\n )}\n\n {showDetails && (\n <DetailsSection {...props} />\n )}\n </div>\n </Scrollbars>\n\n {canClose && (\n <button\n type='button'\n className={`btn-close ${styles.closeButton}`}\n aria-label='Close'\n onClick={props.onClickClose}\n />\n )}\n </div>\n </LanguageNamespaceContext.Provider>\n );\n}","import { Cursors, LegacyPagination } from 'libs/common/backbone/interfaces';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ObjectHelper } from 'libs/common/react/utils/ObjectHelper';\nimport { TypeHelper } from 'libs/common/react/utils/TypeHelper';\n\nimport { BaseObject, BasePaginatedCollection } from 'libs/shared/interfaces';\n\ninterface LegacyPaginatedCollection {\n data: BaseObject[];\n pagination: LegacyPagination;\n}\n\nfunction convertLegacyPaginationToCursors(pagination: LegacyPagination): Cursors {\n const { page, totalPages } = pagination;\n\n const nextPage = TypeHelper.isNumber(page) && page > 0 && page < totalPages && page + 1;\n const prevPage = TypeHelper.isNumber(page) && page > 1 && page - 1;\n\n const cursors: HashObject = {};\n\n if (nextPage && nextPage <= totalPages)\n cursors.next = nextPage.toString();\n\n if (prevPage)\n cursors.previous = prevPage.toString();\n\n if (ObjectHelper.isEmpty(cursors))\n return;\n\n return cursors as Cursors;\n}\n\nexport const CollectionHelper = {\n isEmpty(collection: BasePaginatedCollection<BaseObject>): boolean {\n return collection && !(collection.data && collection.data.length);\n },\n\n length(collection: BasePaginatedCollection<BaseObject>): number {\n return collection && collection.data && collection.data.length;\n },\n\n at<T extends BaseObject>(collection: BasePaginatedCollection<T>, idx: number): T {\n if (!collection || !collection.data || !collection.data.length || idx > collection.data.length)\n return;\n\n return collection.data[idx];\n },\n\n get<T extends BaseObject>(collection: BasePaginatedCollection<T>, id: string): T {\n if (!collection || !collection.data || !collection.data.length)\n return;\n\n return collection.data.find(c => c.id && c.id.toString() === id);\n },\n\n flattenCollections<T extends BaseObject, U extends BasePaginatedCollection<T>>(collections: U[]): T[] {\n if (!collections || !collections.length)\n return;\n\n let flattened: T[] = [];\n\n collections.forEach(c => {\n flattened = [ ...flattened, ...c.data ];\n });\n\n return flattened;\n },\n\n getNextCursor<T extends BaseObject, U extends BasePaginatedCollection<T>>(collection: U): string {\n return collection.pagination && collection.pagination.cursors && collection.pagination.cursors.next;\n },\n\n convertLegacyPaginatedCollection(collection: LegacyPaginatedCollection): BasePaginatedCollection<BaseObject> {\n if (!collection)\n return;\n\n return {\n data: collection.data,\n pagination: {\n cursors: convertLegacyPaginationToCursors(collection.pagination),\n limit: collection.pagination.pageSize\n }\n };\n },\n\n hasData(collection: BasePaginatedCollection<BaseObject>): boolean {\n return !CollectionHelper.isEmpty(collection);\n }\n};","import { Video, VideoTypes } from 'libs/shared/interfaces';\nimport { CollectionHelper } from 'libs/shared/utils/CollectionHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nfunction getVideo(media: VideoTypes): Video {\n if (VideoHelper.isVideo(media))\n return media;\n\n if (VideoHelper.isClip(media))\n return media._parentVideo;\n\n // For interactives, we don't display PPDD info\n return null;\n}\n\nexport function hasPPDD(media: VideoTypes): boolean {\n const hasData = CollectionHelper.hasData;\n\n const video = getVideo(media);\n\n if (!video)\n return false;\n\n return hasData(video.productionCompanies) ||\n hasData(video.producers) ||\n hasData(video.distributors) ||\n hasData(video.directors);\n}","// 368 is the min height of Video at a glance which is defined as $glanceHeight in synopsis.scss\nexport const MINIMUM_GLANCE_HEIGHT = 368; // px","export enum TagType {\n Normal = 'normal',\n Pedagogy = 'pedagogy',\n Hidden = 'hidden',\n Skill = 'skill',\n Curation = 'curation'\n}\n\n/**\n * This should **only** be used to create new tags in master (as it only accepts enum values).\n * Use the string enum above for all other cases.\n */\nexport enum TagTypeNumber {\n Normal = 0,\n Pedagogy = 1,\n Hidden = 2,\n Skill = 3,\n Curation = 4\n}","import { BaseError } from 'libs/common/backbone/core/BaseError';\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Xhr } from 'libs/common/backbone/interfaces';\nimport { Core } from 'libs/common/core';\n\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { PrivateResourceError } from 'libs/shared/errors/general/private-resource/PrivateResourceError';\nimport { RegionLockedResourceError } from 'libs/shared/errors/general/region-locked-resource/RegionLockedResourceError';\nimport { UnspecifiedError } from 'libs/shared/errors/general/unspecified-error/UnspecifiedError';\nimport { VideoTypes } from 'libs/shared/interfaces';\n\nexport interface HttpErrorMap {\n notFound?: new () => BaseError;\n forbidden?: {\n rating?: new (description: string) => BaseError;\n yearLevel?: new (description: string) => BaseError;\n region?: new () => BaseError;\n privacy?: new (video?: VideoTypes) => BaseError;\n };\n badRequest?: new () => BaseError;\n}\n\nexport type IgnoreHttpErrorMap = {\n [key in keyof HttpErrorMap]: boolean;\n};\n\nconst defaultErrors: HttpErrorMap = {\n notFound: NotFoundError,\n forbidden: {\n rating: PrivateResourceError,\n yearLevel: PrivateResourceError,\n region: RegionLockedResourceError,\n privacy: PrivateResourceError\n },\n badRequest: UnspecifiedError\n};\n\nexport function handleHttpError(\n info: HttpStatus | Xhr,\n customErrorMap: HttpErrorMap = {},\n /**\n * Prevent certain errors in the errorMap from being thrown\n * so that you may implement your own handler\n */\n ignoreMap: IgnoreHttpErrorMap = {}\n): void {\n if (!info)\n return;\n\n let statusCode: HttpStatus;\n\n if (typeof(info) === 'number') {\n statusCode = info;\n } else {\n statusCode = info.status;\n }\n\n const errorMap = {\n ...defaultErrors,\n ...customErrorMap\n };\n\n if (!statusCode)\n return;\n\n if (!Core.ErrorHelper.isStatusCodeError(statusCode))\n return;\n\n if (statusCode === HttpStatus.NotFound) {\n if (!ignoreMap.notFound)\n Core.ErrorHelper.throw(new errorMap.notFound());\n return;\n }\n\n if (statusCode === HttpStatus.Forbidden) {\n /**\n * TODO: Work out how to go about handling all forbidden errors, such as region locking, year levels,\n * ratings, and privacy.\n */\n if (!ignoreMap.forbidden)\n Core.ErrorHelper.throw(new errorMap.forbidden.privacy());\n return;\n }\n\n if (!ignoreMap.badRequest)\n Core.ErrorHelper.throw(new errorMap.badRequest());\n}\n\nexport function handleXhrError(xhr: Xhr, customErrorMap?: HttpErrorMap): void {\n handleHttpError(xhr.status, customErrorMap);\n}","import { useEffect } from 'react';\n\nimport { Flight } from 'libs/common/flight';\n\nimport { handleHttpError, HttpErrorMap, IgnoreHttpErrorMap } from 'libs/shared/errors/handlers/HttpErrorHandlers';\n\nfunction generateCacheKey(flightObjs: Array<Flight.Response<any>>): string {\n return flightObjs.map(obj => obj.statusCode).join(':');\n}\n\n// TODO: Change this to just `useHandleHttpError` and only accept a status code.\nexport function useHandleObjectError(\n _flightObjs: Flight.Response<any> | Array<Flight.Response<any>>,\n customErrors?: HttpErrorMap,\n ignoreErrors?: IgnoreHttpErrorMap\n): void {\n const flightObjs = Array.isArray(_flightObjs) ? _flightObjs : [_flightObjs];\n\n useEffect(() => {\n flightObjs.forEach(obj => {\n handleHttpError(obj.statusCode, customErrors, ignoreErrors);\n });\n }, [ generateCacheKey(flightObjs), customErrors, ignoreErrors ]);\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\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 { VideoDetailsWithScrollbar } from 'libs/shared/components/video-details/VideoDetails';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { MediaIdType } from 'libs/shared/enums/MediaIdType';\nimport { ClipRequests } from 'libs/shared/flight-requests/ClipRequests';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { InteractiveRequests } from 'libs/shared/flight-requests/InteractiveRequests';\nimport { PlayerRequests } from 'libs/shared/flight-requests/PlayerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { VideoRequests } from 'libs/shared/flight-requests/VideoRequests';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { Config, CurrentUser, PlayerViewKey, User, VideoTypes } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { LitePlayerView } from 'shared/views/lite-player/LitePlayerView';\n\nimport { UserManagerRequests } from 'apps/user-manager/flight-requests/UserManagerRequests';\n\nconst namespace = 'userManager.studentsVideo';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getRequest(id: string, typeId: string): Flight.Request {\n if (typeId.toString() === MasterType.Clip.toString())\n return ClipRequests.clip(id);\n\n if (typeId.toString() === MasterType.Interactive.toString())\n return InteractiveRequests.interactiveMetadata(id);\n\n return VideoRequests.video(id);\n}\n\nfunction getMessagePhrase(typeId: string): string {\n if (typeId.toString() === MasterType.Clip.toString())\n return 'messageClip';\n\n if (typeId.toString() === MasterType.Interactive.toString())\n return 'messageInteractive';\n\n return 'messageVideo';\n}\n\ninterface StudentsVideoProps {\n userId: string;\n id: string;\n typeId: string;\n}\n\nexport function StudentsVideoView(props: StudentsVideoProps): JSX.Element {\n const user = Flight.useBasicFetch<User>(UserManagerRequests.getUser(props.userId));\n\n const video = Flight.useBasicFetch<VideoTypes>(getRequest(props.id, props.typeId));\n\n const viewKey = Flight.useBasicFetch<PlayerViewKey>(PlayerRequests.createViewKey(props.id, MediaIdType.MasterObject));\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n\n useHandleObjectError([ user, video ]);\n\n const dataLoaded = (\n user.hasCompleted &&\n video.hasCompleted &&\n viewKey.hasCompleted &&\n config.hasCompleted &&\n currentUser.hasCompleted\n );\n\n if (!dataLoaded)\n return <></>;\n\n return (\n <div className='px-3'>\n <div className='alert text-dark bg-light-blue px-2 rounded d-flex flex-column flex-lg-row justify-content-between mb-3 align-items-center' role='alert'>\n <div className='d-flex align-items-center'>\n <SvgContainer\n svgName={cvSvgLibrary.Info}\n size={SvgContainerSize.Standard}\n className='me-2 svg-container'\n />\n \n <div className='w-100'>\n <p className='fw-semibold mb-0'>\n {getPhrase(\n getMessagePhrase(props.typeId),\n { name: UserHelper.getFullName(user.data), yearGroup: user.data.masterYearGroup?.name }\n )}\n </p>\n </div>\n </div>\n </div>\n <div className='mb-3'>\n <LitePlayerView\n config={config.data}\n video={video.data}\n currentUser={currentUser.data}\n viewKey={viewKey.data}\n />\n </div>\n <div className='d-flex justify-content-between align-items-center mb-2'>\n <div>\n <h1 className='h3 d-inline-flex m-0 mb-2'>\n {video.data.name}\n </h1>\n </div>\n <AppLink\n appLink={{\n application: AppChannels.USER_MANAGER,\n action: Actions.UserManager.DELETE_STUDENTS_VIDEO,\n args: [ props.userId, props.id ],\n params: { typeId: props.typeId }\n }}\n className='btn btn-outline-dark'\n >\n <Text namespace={namespace} phrase='delete' />\n </AppLink>\n </div>\n <VideoDetailsWithScrollbar video={video.data} />\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"tagList\":\"Zw6d9\",\"disabled\":\"jlL1c\",\"partialTag\":\"too_N\",\"badge\":\"OjtN8\",\"close\":\"X9joI\"};"],"names":["window","module","exports","e","t","r","n","o","i","l","call","m","c","d","Object","defineProperty","enumerable","get","Symbol","toStringTag","value","__esModule","create","bind","default","prototype","hasOwnProperty","p","s","Disable","Enable","CookiePolicy","renderButtons","close","launchAsync","addEventListener","document","createElement","src","head","appendChild","af","am","ar","as","az","be","bg","bn","bs","ca","cs","da","de","el","en","es","et","eu","fa","fi","fil","fr","gd","gl","gu","ha","he","hi","hr","hu","hy","id","ig","is","it","ja","ka","kk","km","kn","ko","kok","ky","lb","lo","lt","lv","mi","mk","ml","mn","mr","ms","mt","ne","nl","no","nso","or","pa","pl","prs","pt","quc","quz","ro","ru","rw","sd","si","sk","sl","sq","sv","sw","ta","te","th","ti","tk","tn","tr","tt","uk","ur","uz","vi","wo","xh","yo","zh","zu","getAttribute","style","height","width","verticalAlign","marginTop","alt","marginLeft","a","textContent","toLowerCase","substring","lastIndexOf","innerHTML","slice","getElementsByClassName","elements","u","length","setAttribute","this","__assign","assign","arguments","apply","RegExp","test","ErrorCode","TokenExpired","Throttled","ServerError","InvalidSubdomain","Promise","chunks","customDomain","Date","now","uiZIndex","timeout","useWebview","allowFullscreen","hideExitButton","cookiePolicy","v","f","h","clearTimeout","b","body","contains","removeChild","removeEventListener","y","parentNode","g","onExit","data","cogSvcsAccessToken","cogSvcsSubdomain","request","launchToPostMessageSentDurationInMs","contentWindow","postMessage","JSON","stringify","messageType","messageValue","startsWith","parse","success","container","sessionId","code","errorCode","message","setTimeout","Timeout","cssText","k","uiLang","BadArgument","isValidSubdomain","BaseLinkifyOptions","className","defaultProtocol","LinkifyHelper","linkifyText","text","options","ops","globalImmersiveReader","fetched","namespace","ImmersiveReader","props","immersiveReader","setImmersiveReader","ajaxRequest","resource","type","HttpVerbs","error","title","LanguageService","onClick","FunctionHelper","onLaunch","AnalyticsHelper","analyticsData","analyticsOptions","content","mimeType","html","subdomain","token","viewBox","fill","TagHelper","getTagActionProps","getTagAppLink","renderAsSpan","tag","appLink","getAppLink","getPhrase","TagItem","disabled","tagClass","name","tagType","hasThemeColour","themeColours","secondary","classNames","getTagTypeClass","onRemove","backgroundColor","role","getTagSortValue","TagList","tags","sortedTags","sort","map","key","CommaList","label","items","commaSeperated","join","DetailsSection","video","VideoHelper","parentVideo","description","Text","phrase","productionYear","year","smartCount","productionCompanies","distributors","producers","directors","dateBroadcast","date","DateHelper","channel","dateCreated","VideoDetailsWithScrollbar","maxHeight","showDescription","showDetails","canClose","onClickClose","showCurriculumLinks","onClickShowCurriculumLinks","autoHeight","autoHeightMax","onLaunchImmersiveReader","onExitImmersiveReader","location","entity","actionType","descriptor","dangerouslySetInnerHTML","__html","nl2br","hideTags","suppressInteractivity","DivButton","convertLegacyPaginationToCursors","pagination","page","totalPages","nextPage","TypeHelper","prevPage","cursors","next","toString","previous","ObjectHelper","CollectionHelper","isEmpty","collection","at","idx","find","flattenCollections","collections","flattened","forEach","getNextCursor","convertLegacyPaginatedCollection","limit","pageSize","hasData","hasPPDD","media","_parentVideo","getVideo","MINIMUM_GLANCE_HEIGHT","TagType","TagTypeNumber","defaultErrors","notFound","forbidden","rating","yearLevel","region","privacy","badRequest","handleHttpError","info","customErrorMap","ignoreMap","statusCode","status","errorMap","generateCacheKey","flightObjs","obj","useHandleObjectError","_flightObjs","customErrors","ignoreErrors","Array","isArray","useEffect","StudentsVideoView","typeId","user","userId","viewKey","config","currentUser","hasCompleted","svgName","size","S","getMessagePhrase","yearGroup","masterYearGroup","application","action","args","params"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[4690],{83657:(e,t,n)=>{n.d(t,{e:()=>s});var a=n(32735),r=n(91967),i=n(10874),o=n(76177),l=n(42735),c=n(86509);function s(e){var t=a.useMemo((function(){return e.actions.sort((function(e,t){return e.order-t.order}))}),[e.actions]),n=[],s=[];t.forEach((function(e){e.button?n.push(e):s.push(e)}));var m="d-flex";return e.className&&(m+=" ".concat(e.className)),n.length||s.length?a.createElement("div",{className:m},n.length?n.map((function(t,n){return a.createElement(a.Fragment,{key:n},function(){if(t.label){var n=r.q.isFunction(t.label)?t.label:function(){return a.createElement(a.Fragment,null,t.label)};return a.createElement(l.K,{appLink:t.appLink,href:t.href,onClick:t.onClick,svgName:t.svgName,svgSize:e.dropdownToggleSvgSize,className:t.className,tooltip:t.tooltip,showSpinner:t.showSpinner,analyticsData:t.analyticsData,analyticsOptions:t.analyticsOptions,openInNewTab:t.openInNewTab,disabled:t.disabled},n())}var c=a.createElement(i.h,{appLink:t.appLink,href:t.href,onClick:t.onClick,svgName:t.svgName,className:t.className,analyticsData:t.analyticsData,analyticsOptions:t.analyticsOptions,openInNewTab:t.openInNewTab,disabled:t.disabled,showBorder:t.showBorder,customSize:e.customSize,ariaLabel:t.tooltip});return t.tooltip?a.createElement(o.u,{title:t.tooltip,spanHack:!0},c):c}())})):a.createElement(a.Fragment,null),e.sortComponent&&e.sortComponent,s.length?a.createElement(c.m,{actions:s,dropdownToggleClassName:e.actionsDropdownClassName,dropdownToggleSvgSize:e.dropdownToggleSvgSize,fetchMore:e.fetchMore}):a.createElement(a.Fragment,null)):a.createElement(a.Fragment,null)}},86509:(e,t,n)=>{n.d(t,{m:()=>f});var a=n(32735),r=n(91967),i=n(81886),o=n(45157),l=n(49985),c=n(36848),s=n(83914),m=n(76177),u=n(35223);const d={dropdownToggle:"UCAnJ"};function p(){return a.createElement(a.Fragment,null,a.createElement("div",{style:{padding:"0.53125rem 1rem"}},a.createElement("div",{className:"partial-loading-background",style:{height:"1.0625rem",width:"8rem"}})),a.createElement("div",{style:{padding:"0.53125rem 1rem"}},a.createElement("div",{className:"partial-loading-background",style:{height:"1.0625rem",width:"12rem"}})),a.createElement("div",{style:{padding:"0.53125rem 1rem"}},a.createElement("div",{className:"partial-loading-background",style:{height:"1.0625rem",width:"11rem"}})),a.createElement("div",{style:{padding:"0.53125rem 1rem"}},a.createElement("div",{className:"partial-loading-background",style:{height:"1.0625rem",width:"9rem"}})))}function g(e){var t="dropdown-item";return e&&(t+=" ".concat(e)),t}function v(e){var t=r.q.isFunction(e.action.label)?e.action.label:function(){return a.createElement(a.Fragment,null,e.action.label)};if(e.action.appLink)return a.createElement(c.F,{appLink:e.action.appLink,onClick:e.action.onClick,className:g(e.action.className),analyticsData:e.action.analyticsData,analyticsOptions:e.action.analyticsOptions,openInNewTab:e.action.openInNewTab,disabled:e.action.disabled},e.action.svgName&&a.createElement(s.x,{svgName:e.action.svgName,className:"d-inline-block svg-container me-2 align-middle"}),a.createElement("span",{className:"align-middle"},t()));function n(t){t.preventDefault(),e.action.analyticsData&&e.action.analyticsOptions&&l.k.logUserAction(e.action.analyticsData,e.action.analyticsOptions),r.q.isFunction(e.action.onClick)&&e.action.onClick(),e.action.href&&i.Q.Ab.PageLoad(e.action.href,e.action.openInNewTab)}return e.action.href?a.createElement("a",{className:g(e.action.className),onClick:n,href:e.action.href},e.action.svgName&&a.createElement(s.x,{svgName:e.action.svgName,className:"d-inline-block svg-container me-2 align-middle"}),a.createElement("span",{className:"align-middle"},t())):a.createElement("span",{className:"cursor-pointer ".concat(g(e.action.className)),onClick:n,role:"button",tabIndex:0,onKeyDown:function(e){return"Enter"===e.key&&n(e)}},e.action.svgName&&a.createElement(s.x,{svgName:e.action.svgName,className:"d-inline-block svg-container me-2"}),t())}function f(e){if(!e.actions||!e.actions.length)return a.createElement(a.Fragment,null);var t=e.actions.some((function(e){return e.lazyPlaceholder})),n="dropdown";e.className&&(n+=" ".concat(e.className));var r,i="actions-dropdown-".concat(o.Y.getRandomInt()),l="dropdown-toggle px-0 ".concat(d.dropdownToggle);return e.dropdownToggleClassName&&(l+=" ".concat(e.dropdownToggleClassName)),a.createElement("div",{className:n},a.createElement("button",{className:l,type:"button",id:i,"data-bs-toggle":"dropdown","data-toggle":"dropdown","aria-haspopup":"true","aria-expanded":"false","aria-label":"More actions dropdown",onClick:t?e.fetchMore:null},a.createElement(s.x,{svgName:u.vn.More,size:e.dropdownToggleSvgSize})),a.createElement("ul",{className:"dropdown-menu dropdown-menu-end dropdown-menu-right font-size-normal","aria-labelledby":i},t?a.createElement(p,null):e.actions.map((function(e,t){var n=void 0!==r&&r!==e.group;return r=e.group,e.tooltip?a.createElement("li",{key:t},n&&a.createElement("hr",{className:"dropdown-divider",role:"separator"}),a.createElement(m.u,{title:e.tooltip,spanHack:!0},a.createElement(v,{action:e}))):a.createElement("li",{key:t},n&&a.createElement("hr",{className:"dropdown-divider",role:"separator"}),a.createElement(v,{action:e}))}))))}f.defaultProps={dropdownToggleClassName:"btn btn-light",dropdownToggleSvgSize:s.S.Small}},80181:(e,t,n)=>{n.d(t,{Z:()=>y});var a=n(32735),r=n(42648),i=n(11607),o=n(83914),l=n(83345),c=n(28972),s=n(40424),m=n(93264),u=n(35223),d=n(86572);const p={timeTag:"ShZvf",hide:"FHzDr",time:"JDp5N",type:"AzIWg",question:"UhEYq",deleteContainer:"wBqoo",delete:"OAQQu",correctness:"W5sR9",selected:"tfrDf",row:"sGk59"};var g="shared.interactiveQuestions";function v(e){var t=e.interaction;switch((0,e.getCorrectness)(t)){case c.w.Correct:return a.createElement("span",{className:"text-success"},a.createElement(o.x,{size:o.S.Medium,svgName:u.vn.Check}));case c.w.Incorrect:return a.createElement("span",{className:"text-danger"},a.createElement(o.x,{size:o.S.Medium,svgName:u.vn.Close}));case c.w.AwaitingMarking:return a.createElement("span",{className:"text-secondary italic"},a.createElement("i",null,a.createElement(l.x,{namespace:g,phrase:"pending"})));case c.w.UnAnswered:return a.createElement("button",{className:"btn btn-outline-dark"},a.createElement(l.x,{namespace:g,phrase:"answer"}));case c.w.Answered:return a.createElement("span",{className:"text-secondary italic"},a.createElement("i",null,a.createElement(l.x,{namespace:g,phrase:"answered"})));case c.w.NotApplicable:return a.createElement(a.Fragment,null)}}function f(e){var t=e.interaction,n=e.visibleAt,r=e.selectedInteractionId,l=e.goToTimepoint,c=e.scrollTo,s=e.isFirstInteraction,g=e.hasPlayPageV2,f=t.id.toString()===(null==r?void 0:r.toString()),E=a.useRef();a.useEffect((function(){if(f&&E.current){var e=E.current,t=e.getBoundingClientRect(),n=t.top-e.offsetParent.getBoundingClientRect().top;c(n,t.height)}}),[f]);var y=l?"cursor-pointer":"cursor-default";return a.createElement("div",{ref:E},a.createElement(i.L,{className:"py-2 ".concat(y," ").concat(p.row," ").concat(f?p.selected:""),onClick:f?function(){}:function(){l&&l(t.id)}},g?a.createElement("div",{className:"me-3 d-inline-flex rounded-pill justify-content-center align-items-center text-info fw-semibold bg-light-blue ".concat(p.timeTag," ").concat(s?"":p.hide)},s?m.T.ToDisplayDuration(n):""):a.createElement("span",{className:"".concat(p.time," me-2 ").concat(f?"fw-bold":"")},s?m.T.ToDisplayDuration(n):""),a.createElement(d.y,{interaction:t,showTypeName:!0,typeNameClassName:p.type,questionClassName:p.question}),e.onClickDelete&&a.createElement(i.L,{onClick:function(n){n.stopPropagation(),e.onClickDelete(t.id)},className:"".concat(p.deleteContainer)},a.createElement("span",{className:"text-end ".concat(p.delete)},a.createElement(o.x,{size:o.S.Medium,svgName:u.vn.Delete}))),e.getCorrectness&&a.createElement("span",{className:"text-end ".concat(p.correctness)},a.createElement(v,{interaction:t,getCorrectness:e.getCorrectness}))))}function E(e){var t=e.timepoint,n=e.scrollTo,r=e.onClickDelete,i=e.selectedInteractionId,o=e.getCorrectness,l=e.hasPlayPageV2;function c(n){e.goToTimepoint(t.id,n,t.visibleAt)}return t.interactions?a.createElement(a.Fragment,null,t.interactions.map((function(m,u){return!e.experimentalInteractiveQuestions&&s.IL[m.typeId]?a.createElement(a.Fragment,{key:u}):a.createElement(f,{interaction:m,visibleAt:t.visibleAt,goToTimepoint:e.goToTimepoint&&c,onClickDelete:r,scrollTo:n,selectedInteractionId:i,isFirstInteraction:0===u,getCorrectness:o,key:u,hasPlayPageV2:l})}))):a.createElement(a.Fragment,null)}function y(e){var t=e.interactive,n=e.goToTimepoint,i=e.selectedInteractionId,o=e.maxHeight,l=e.onClickDelete,c=e.getCorrectness,s=e.hasPlayPageV2,m=a.useRef();function u(e,t){if(m.current){var n=m.current.getClientHeight(),a=m.current.getScrollTop(),r=e+a;(r<a||r+t>a+n)&&m.current.scrollTop(r-n/2+t/2)}}var d=n?"border rounded":"";return a.createElement(r.$B,{autoHeight:!0,autoHeightMax:o,className:d,hideTracksWhenNotNeeded:!0,ref:m},a.createElement("div",{className:"px-3 py-1"},t.timepoints.map((function(t,r){return a.createElement(E,{key:r,timepoint:t,goToTimepoint:n,selectedInteractionId:i,scrollTo:u,onClickDelete:l,getCorrectness:c,hasPlayPageV2:s,experimentalInteractiveQuestions:e.experimentalInteractiveQuestions})}))))}},40178:(e,t,n)=>{n.d(t,{x:()=>a});var a=368},28972:(e,t,n)=>{var a;n.d(t,{w:()=>a}),function(e){e[e.Correct=0]="Correct",e[e.Incorrect=1]="Incorrect",e[e.AwaitingMarking=2]="AwaitingMarking",e[e.Answered=3]="Answered",e[e.UnAnswered=4]="UnAnswered",e[e.NotApplicable=5]="NotApplicable"}(a||(a={}))},41630:(e,t,n)=>{n.d(t,{X:()=>C});var a=n(32735),r=n(44645),i=n(17327),o=n.n(i),l=n(56050),c=n(23481),s=n(81886),m=n(2786),u=n(93264),d=n(40424);const p={worksheet:"Bv47P",interaction:"efkgi",timepointCell:"ffoDR",interactionCell:"rKBEu",checkbox:"ilhe4",multipleChoiceAnswer:"TqhFx",shortAnswerTextArea:"voJCM",image:"go2dV",cvLogo:"Z4GOw",copyright:"petLf",illustrationDrawingArea:"iA_Dl"};function g(e){return g="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},g(e)}function v(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=g(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var a=n.call(e,"string");if("object"!=g(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==g(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var f=/{([^{}]*)}/g;function E(e){return a.createElement("div",{className:"mb-2"},e.interaction.name)}function y(e){return a.createElement(a.Fragment,null,a.createElement(E,{interaction:e.interaction}),a.createElement("table",null,a.createElement("tbody",null,e.interaction.actionableItems.map((function(e){return a.createElement("tr",{key:e.id},a.createElement("td",null,a.createElement("div",{className:"border ".concat(p.checkbox)})),a.createElement("td",{className:"break-word align-top"},a.createElement("div",{className:p.multipleChoiceAnswer},e.name)))})))))}var h=v(v(v(v(v(v(v({},d.Z9.Annotation,(function(e){return a.createElement("div",{dangerouslySetInnerHTML:{__html:e.interaction.data.annotation}})})),d.Z9.Image,(function(e){return a.createElement(a.Fragment,null,a.createElement(E,{interaction:e.interaction}),a.createElement("img",{className:p.image,src:e.interaction.data.url}))})),d.Z9.MissingWord,(function(e){var t=e.interaction.data.sentence.replace(f,(function(t,n){var a=2*e.interaction.actionableItems.find((function(e){return e.order.toString()===n})).name.length;return Array(a+1).join("_")}));return a.createElement("div",null,t)})),d.Z9.MultipleChoice,y),d.Z9.TrueOrFalse,y),d.Z9.ShortAnswer,(function(e){return a.createElement(a.Fragment,null,a.createElement(E,{interaction:e.interaction}),a.createElement("div",{className:"border w-100 ".concat(p.shortAnswerTextArea)}))})),d.Z9.Illustration,(function(e){return a.createElement(a.Fragment,null,a.createElement(E,{interaction:e.interaction}),a.createElement("div",{className:"w-100 border ".concat(p.illustrationDrawingArea)}))})),b=c.T.encloseNamespace("interactives.printableInteractiveWorksheet");function w(e){var t=h[e.interaction.typeId];return t?a.createElement("tr",{className:p.interaction},a.createElement("td",{className:"align-top ".concat(p.timepointCell)},u.T.ToDisplayDuration(e.visibleAt)),a.createElement("td",{className:"break-word ".concat(p.interactionCell)},a.createElement(t,{interaction:e.interaction}))):a.createElement(a.Fragment,null)}function N(e){return a.createElement(a.Fragment,null,e.interactive.timepoints.map((function(e,t){return e.interactions.map((function(n,r){return a.createElement(w,{key:"".concat(t,":").concat(r),interaction:n,visibleAt:e.visibleAt})}))})))}function k(e){var t=(new Date).getFullYear();return a.createElement("div",{id:e.worksheetElementId,className:p.worksheet},a.createElement("div",{className:"row pb-2"},a.createElement("div",{className:"col-6"},b("name")," ______________________________"),a.createElement("div",{className:"col-6"},b("date")," ______________________________")),a.createElement("h1",null,a.createElement("strong",null,b("questionSheet"),":")," ",e.interactive.name),a.createElement("table",null,a.createElement("tbody",null,a.createElement(N,{interactive:e.interactive}))),a.createElement("div",{className:p.cvLogo},a.createElement(m.$S,null)),e.isClickViewContent&&a.createElement("span",{className:p.copyright},b("copyright",{year:t})))}var _=c.T.encloseNamespace("interactives.utils");function C(e,t,n){var i=document.getElementById("print-region");if(i||s.Q.Ry.throw(new l.H("Could not find print region in layout")),e){var c="printable-interactive-".concat(e.id),m=(0,r.s)(i);m.render(a.createElement("div",{className:"d-none"},a.createElement(k,{worksheetElementId:c,interactive:e,isClickViewContent:t}))),window.setTimeout((function(){o()({printable:c,type:"html",documentTitle:_("worksheetTitle",{interactiveName:e.name}),targetStyles:["*"],style:"@page { size: A4; margin: 1.5cm 0; }",onLoadingEnd:function(){n&&n(),m.unmount()},font_size:"14px"})}),200)}}},74690:(e,t,n)=>{n.r(t),n.d(t,{PreviewQuestionsView:()=>k});var a=n(32735),r=n(23481),i=n(81886),o=n(20354),l=n(28400),c=n(65858),s=n(83657),m=n(80181),u=n(9111),d=n(13876),p=n(40178),g=n(20768),v=n(37802),f=n(35223),E=n(14070),y=n(97291),h=n(41630);const b={printBtn:"VWlur"};function w(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}var N=r.T.encloseNamespace("interactives.previewQuestions");function k(e){var t,n,r,k,_,C=(k=a.useState(!1),_=2,function(e){if(Array.isArray(e))return e}(k)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,i,o,l=[],c=!0,s=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(a=i.call(n)).done)&&(l.push(a.value),l.length!==t);c=!0);}catch(e){s=!0,r=e}finally{try{if(!c&&null!=n.return&&(o=n.return(),Object(o)!==o))return}finally{if(s)throw r}}return l}}(k,_)||function(e,t){if(e){if("string"==typeof e)return w(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)?w(e,t):void 0}}(k,_)||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.")}()),T=C[0],I=C[1],S=(0,v.r)(null).experimentalInteractiveQuestions,A=o.a.useBasicFetch(g.b.interactiveMetadata(e.id)),x=o.a.useBasicFetch(A.data?g.b.interactive(A.data.interactiveId):null),D=null;A.data&&(D={id:A.data.id,interactiveId:A.data.interactiveId,name:A.data.name},(null===(t=A.data._parentVideo)||void 0===t?void 0:t.id)&&(D.video={id:A.data._parentVideo.id}),(null===(n=A.data._parentClip)||void 0===n?void 0:n.id)&&(D.clip={id:A.data._parentClip.id}));var F=[{label:N("watchInteractive"),className:"btn btn-outline-dark me-2",svgName:f.vn.Play,button:!0,appLink:{application:y.O.INTERACTIVES,action:E.e.Interactives.VIEW_INTERACTIVE,args:[e.id,l.m.slugify(null===(r=x.data)||void 0===r?void 0:r.name)]},onClick:e.closePopup,analyticsData:D,analyticsOptions:{entity:c.py.Interactive,actionType:c.Vw.Click,location:c.LZ.PreviewInteractiveQuestions,descriptor:c._S.Button}},{label:N("printAsWorksheet"),className:"btn btn-outline-dark ".concat(b.printBtn),svgName:f.vn.Print,button:!0,onClick:function(){var e;I(!0),(0,h.X)(x.data,null===(e=A.data._isClickViewCurated)||void 0===e?void 0:e.value,(function(){return I(!1)}))},showSpinner:T,analyticsData:D,analyticsOptions:{entity:c.py.Interactive,actionType:c.Vw.Print,location:c.LZ.PreviewInteractiveQuestions,workflowPhase:c.eu.Start,eventVersion:c.eq.V2}}];return a.createElement(u.G,{title:N("mainTitle"),closePopup:e.closePopup,showLoadingSpinner:!x.data,size:"lg"},x.data?a.createElement(a.Fragment,null,a.createElement(m.Z,{interactive:x.data,maxHeight:p.x,experimentalInteractiveQuestions:S,goToTimepoint:function(t,n,a){var r;i.Q.C$.trigger({application:y.O.INTERACTIVES,action:E.e.Interactives.VIEW_INTERACTIVE,args:[e.id,l.m.slugify(null===(r=x.data)||void 0===r?void 0:r.name)],params:a?{t:Math.floor(a/1e3)}:null}),e.closePopup()}}),a.createElement(d.u,null,a.createElement(s.e,{actions:F}))):a.createElement(a.Fragment,null))}}}]);
|
|
2
|
+
//# sourceMappingURL=4690-4abacf2ea2-lite.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scripts/4690-4abacf2ea2-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/actions/Actions.tsx","file:///app/packages/libs/shared/src/components/actions/actions.scss","file:///app/packages/libs/shared/src/components/actions/ActionsDropdown.tsx","file:///app/packages/libs/shared/src/components/interactive-questions/interactive-questions.scss","file:///app/packages/libs/shared/src/components/interactive-questions/InteractiveQuestions.tsx","file:///app/packages/libs/shared/src/constants/MinimumGlanceHeight.ts","file:///app/packages/libs/shared/src/enums/InteractionCorrectness.ts","file:///app/packages/projects/lite/src/apps/interactives/components/printable-interactive-worksheet/printable-interactive-worksheet.scss","file:///app/packages/projects/lite/src/apps/interactives/components/printable-interactive-worksheet/PrintableInteractionContent.tsx","file:///app/packages/projects/lite/src/apps/interactives/components/printable-interactive-worksheet/PrintableInteractiveWorksheet.tsx","file:///app/packages/projects/lite/src/apps/interactives/utils/PrintInteractive.tsx","file:///app/packages/projects/lite/src/apps/interactives/views/preview-questions/preview-questions.scss","file:///app/packages/projects/lite/src/apps/interactives/views/preview-questions/PreviewQuestionsView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { BaseObject } from 'libs/shared/interfaces';\n\nimport { ActionButton } from './ActionButton';\nimport { ActionsDropdown } from './ActionsDropdown';\n\nexport interface ActionOptions {\n order?: number;\n label?: string | (() => JSX.Element);\n appLink?: Core.AppLink;\n href?: string;\n onClick?: () => void;\n svgName?: string;\n className?: string;\n button?: boolean; // If true, a button will be rendered. Otherwise the action will be rendered in the dropdown.\n tooltip?: string;\n showSpinner?: boolean;\n showBorder?: boolean; // only works for button without text label\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n disabled?: boolean;\n openInNewTab?: boolean; // Only used if appLink or href is provided\n group?: string;\n lazyPlaceholder?: boolean;\n}\n\nexport type ActionGenerator = (obj: BaseObject) => ActionOptions[];\n\ninterface ActionsProps {\n actions: ActionOptions[];\n className?: string;\n actionsDropdownClassName?: string;\n dropdownToggleSvgSize?: SvgContainerSize;\n sortComponent?: JSX.Element;\n customSize?: boolean;\n fetchMore?: () => void;\n}\n\nexport function Actions(props: ActionsProps): JSX.Element {\n const orderedActions = React.useMemo(() => props.actions.sort((a, b) => a.order - b.order), [props.actions]);\n\n const buttonActions: ActionOptions[] = [];\n const moreActions: ActionOptions[] = [];\n\n orderedActions.forEach(a => {\n if (a.button)\n buttonActions.push(a);\n else\n moreActions.push(a);\n });\n\n let className = 'd-flex';\n\n if (props.className)\n className += ` ${props.className}`;\n\n if (!buttonActions.length && !moreActions.length)\n return <></>;\n\n return (\n <div className={className}>\n {buttonActions.length ? buttonActions.map((a, idx) => (\n <React.Fragment key={idx}>\n {(() => {\n if (a.label) {\n const label = FunctionHelper.isFunction(a.label)\n ? a.label\n : () => <>{a.label}</>;\n\n return (\n <ActionButton\n appLink={a.appLink}\n href={a.href}\n onClick={a.onClick}\n svgName={a.svgName}\n svgSize={props.dropdownToggleSvgSize}\n className={a.className}\n tooltip={a.tooltip}\n showSpinner={a.showSpinner}\n analyticsData={a.analyticsData}\n analyticsOptions={a.analyticsOptions}\n openInNewTab={a.openInNewTab}\n disabled={a.disabled}\n >\n {label()}\n </ActionButton>\n );\n }\n\n const iconButton = (\n <IconButton\n appLink={a.appLink}\n href={a.href}\n onClick={a.onClick}\n svgName={a.svgName}\n className={a.className}\n analyticsData={a.analyticsData}\n analyticsOptions={a.analyticsOptions}\n openInNewTab={a.openInNewTab}\n disabled={a.disabled}\n showBorder={a.showBorder}\n customSize={props.customSize}\n ariaLabel={a.tooltip}\n />\n );\n\n return a.tooltip\n ? <Tooltip title={a.tooltip} spanHack>{iconButton}</Tooltip>\n : iconButton;\n })()}\n </React.Fragment>\n )) : <></>}\n {props.sortComponent && props.sortComponent}\n {moreActions.length ? (\n <ActionsDropdown\n actions={moreActions}\n dropdownToggleClassName={props.actionsDropdownClassName}\n dropdownToggleSvgSize={props.dropdownToggleSvgSize}\n fetchMore={props.fetchMore}\n />\n ) : <></>}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"dropdownToggle\":\"UCAnJ\"};","import * as React from 'react';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\nimport { Core } from 'libs/common/core';\nimport { RandomHelper } from 'libs/common/react/utils/RandomHelper';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { ActionOptions } from './Actions';\n\nimport styles from './actions.scss';\n\nfunction LazyDropdownItems(): JSX.Element {\n return (\n <>\n <div style={{ padding: '0.53125rem 1rem' }}>\n <div className='partial-loading-background' style={{ height: '1.0625rem', width: '8rem' }}></div>\n </div>\n <div style={{ padding: '0.53125rem 1rem' }}>\n <div className='partial-loading-background' style={{ height: '1.0625rem', width: '12rem' }}></div>\n </div>\n <div style={{ padding: '0.53125rem 1rem' }}>\n <div className='partial-loading-background' style={{ height: '1.0625rem', width: '11rem' }}></div>\n </div>\n <div style={{ padding: '0.53125rem 1rem' }}>\n <div className='partial-loading-background' style={{ height: '1.0625rem', width: '9rem' }}></div>\n </div>\n </>\n );\n}\n\nfunction getDropdownItemClassName(actionClassName?: string): string {\n let className = 'dropdown-item';\n\n if (actionClassName)\n className += ` ${actionClassName}`;\n\n return className;\n}\n\nexport type DropdownActionOptions = Omit<ActionOptions, 'button'>;\n\ninterface ActionsDropdownItemProps {\n action: DropdownActionOptions;\n}\n\nfunction ActionsDropdownItem(props: ActionsDropdownItemProps): React.ReactElement {\n const label = FunctionHelper.isFunction(props.action.label)\n ? props.action.label\n : () => <>{props.action.label}</>;\n\n if (props.action.appLink)\n return (\n <AppLink\n appLink={props.action.appLink}\n onClick={props.action.onClick}\n className={getDropdownItemClassName(props.action.className)}\n analyticsData={props.action.analyticsData}\n analyticsOptions={props.action.analyticsOptions}\n openInNewTab={props.action.openInNewTab}\n disabled={props.action.disabled}\n >\n {props.action.svgName && <SvgContainer svgName={props.action.svgName} className='d-inline-block svg-container me-2 align-middle' />}\n <span className='align-middle'>{label()}</span>\n </AppLink>\n );\n\n function onClick(e: React.MouseEvent | React.KeyboardEvent): void {\n e.preventDefault();\n\n if (props.action.analyticsData && props.action.analyticsOptions)\n AnalyticsHelper.logUserAction(props.action.analyticsData, props.action.analyticsOptions);\n\n if (FunctionHelper.isFunction(props.action.onClick))\n props.action.onClick();\n\n if (props.action.href)\n Core.LocationUtils.PageLoad(props.action.href, props.action.openInNewTab);\n }\n\n if (props.action.href) {\n return (\n <a\n className={getDropdownItemClassName(props.action.className)}\n onClick={onClick}\n href={props.action.href}\n >\n {props.action.svgName && <SvgContainer svgName={props.action.svgName} className='d-inline-block svg-container me-2 align-middle' />}\n <span className='align-middle'>{label()}</span>\n </a>\n );\n }\n\n return (\n <span\n className={`cursor-pointer ${getDropdownItemClassName(props.action.className)}`}\n onClick={onClick}\n role='button'\n tabIndex={0}\n onKeyDown={(e: React.KeyboardEvent) => e.key === 'Enter' && onClick(e)}\n >\n {props.action.svgName && <SvgContainer svgName={props.action.svgName} className='d-inline-block svg-container me-2' />}\n {label()}\n </span>\n );\n}\n\ninterface ActionsDropdownProps {\n actions: DropdownActionOptions[];\n className?: string;\n dropdownToggleClassName?: string;\n dropdownToggleSvgSize?: SvgContainerSize;\n fetchMore?: () => void;\n}\n\nActionsDropdown.defaultProps = {\n dropdownToggleClassName: 'btn btn-light',\n dropdownToggleSvgSize: SvgContainerSize.Small\n};\n\nexport function ActionsDropdown(props: ActionsDropdownProps): React.ReactElement {\n if (!props.actions || !props.actions.length)\n return <></>;\n\n const isLazy = props.actions.some(a => a.lazyPlaceholder);\n\n let className = 'dropdown';\n\n if (props.className)\n className += ` ${props.className}`;\n\n // Generate unique id to avoid collisions.\n const dropdownToggleId = `actions-dropdown-${RandomHelper.getRandomInt()}`;\n\n let dropdownToggleClassName = `dropdown-toggle px-0 ${styles.dropdownToggle}`;\n\n if (props.dropdownToggleClassName)\n dropdownToggleClassName += ` ${props.dropdownToggleClassName}`;\n\n let currentGroup: string;\n\n return (\n <div className={className}>\n <button\n className={dropdownToggleClassName}\n type='button'\n id={dropdownToggleId}\n data-bs-toggle='dropdown'\n data-toggle='dropdown'\n aria-haspopup='true'\n aria-expanded='false'\n aria-label={'More actions dropdown'}\n onClick={isLazy ? props.fetchMore : null}\n >\n <SvgContainer svgName={cvSvgLibrary.More} size={props.dropdownToggleSvgSize} />\n </button>\n <ul className='dropdown-menu dropdown-menu-end dropdown-menu-right font-size-normal' aria-labelledby={dropdownToggleId}>\n {isLazy ?\n <LazyDropdownItems /> :\n props.actions.map((a, idx) => {\n const showDivider = currentGroup !== undefined && currentGroup !== a.group;\n currentGroup = a.group;\n \n if (a.tooltip) {\n return (\n <li key={idx}>\n {showDivider && <hr className='dropdown-divider' role='separator'></hr>}\n <Tooltip title={a.tooltip} spanHack>\n <ActionsDropdownItem action={a} />\n </Tooltip>\n \n </li>\n );\n }\n \n return (\n <li key={idx}>\n {showDivider && <hr className='dropdown-divider' role='separator'></hr>}\n <ActionsDropdownItem action={a} />\n </li>\n );\n })\n }\n </ul>\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"timeTag\":\"ShZvf\",\"hide\":\"FHzDr\",\"time\":\"JDp5N\",\"type\":\"AzIWg\",\"question\":\"UhEYq\",\"deleteContainer\":\"wBqoo\",\"delete\":\"OAQQu\",\"correctness\":\"W5sR9\",\"selected\":\"tfrDf\",\"row\":\"sGk59\"};","import React from 'react';\nimport { Scrollbars } from 'react-custom-scrollbars-2';\n\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { InteractionCorrectness } from 'libs/shared/enums/InteractionCorrectness';\nimport { ExperimentalInteractionTypes, Interaction, Interactive, Timepoint } from 'libs/shared/interfaces';\nimport { DurationHelper } from 'libs/shared/utils/DurationHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { InteractionLabel } from './InteractionLabel';\n\nimport styles from './interactive-questions.scss';\n\nconst namespace = 'shared.interactiveQuestions';\n\ninterface CorrectnessProps {\n interaction: Interaction;\n getCorrectness?: (interaction: Interaction) => InteractionCorrectness;\n}\n\nfunction Correctness(props: CorrectnessProps): React.ReactElement {\n const { interaction, getCorrectness } = props;\n\n const correctness = getCorrectness(interaction);\n\n switch (correctness) {\n case InteractionCorrectness.Correct:\n return <span className='text-success'><SvgContainer size={SvgContainerSize.Medium} svgName={cvSvgLibrary.Check} /></span>;\n case InteractionCorrectness.Incorrect:\n return <span className='text-danger'><SvgContainer size={SvgContainerSize.Medium} svgName={cvSvgLibrary.Close} /></span>;\n case InteractionCorrectness.AwaitingMarking:\n return <span className='text-secondary italic'><i><Text namespace={namespace} phrase='pending' /></i></span>;\n case InteractionCorrectness.UnAnswered:\n return <button className='btn btn-outline-dark'><Text namespace={namespace} phrase='answer' /></button>;\n case InteractionCorrectness.Answered:\n return <span className='text-secondary italic'><i><Text namespace={namespace} phrase='answered' /></i></span>;\n case InteractionCorrectness.NotApplicable:\n return <></>;\n }\n}\n\ninterface InteractionComponentProps {\n interaction: Interaction;\n visibleAt: number;\n hasPlayPageV2?: boolean;\n goToTimepoint: (interactionId: string) => void;\n onClickDelete?: (interactionId: string) => void;\n scrollTo: (offset: number, height: number) => void;\n selectedInteractionId: string;\n isFirstInteraction: boolean;\n getCorrectness?: (interaction: Interaction) => InteractionCorrectness;\n}\n\nfunction InteractionComponent(props: InteractionComponentProps): React.ReactElement {\n const {\n interaction,\n visibleAt,\n selectedInteractionId,\n goToTimepoint,\n scrollTo,\n isFirstInteraction,\n hasPlayPageV2\n } = props;\n\n const selected = interaction.id.toString() === selectedInteractionId?.toString();\n\n const ref = React.useRef<HTMLDivElement>();\n\n React.useEffect(() => {\n if (!selected)\n return;\n\n if (!ref.current)\n return;\n\n const el = ref.current;\n const rect = el.getBoundingClientRect();\n const offset = rect.top - el.offsetParent.getBoundingClientRect().top;\n\n scrollTo(offset, rect.height);\n }, [selected]);\n\n function onClick(): void {\n goToTimepoint && goToTimepoint(interaction.id);\n }\n\n function onClickDelete(event: React.MouseEvent): void {\n event.stopPropagation();\n\n props.onClickDelete(interaction.id);\n }\n\n /**\n * Don't have a cursor if there is no callback function.\n * i.e. when rendered in a popup\n */\n const cursor = goToTimepoint ? 'cursor-pointer' : 'cursor-default';\n\n return (\n <div ref={ref}>\n <DivButton className={`py-2 ${cursor} ${styles.row} ${selected ? styles.selected : ''}`} onClick={selected ? () => {} : onClick}>\n {hasPlayPageV2 ? (\n <div className={`me-3 d-inline-flex rounded-pill justify-content-center align-items-center text-info fw-semibold bg-light-blue ${styles.timeTag} ${isFirstInteraction ? '' : styles.hide}`}>\n {isFirstInteraction ? DurationHelper.ToDisplayDuration(visibleAt) : ''}\n </div>\n ) : (\n <span className={`${styles.time} me-2 ${selected ? 'fw-bold' : ''}`}>{isFirstInteraction ? DurationHelper.ToDisplayDuration(visibleAt) : ''}</span>\n )}\n\n <InteractionLabel\n interaction={interaction}\n showTypeName\n typeNameClassName={styles.type}\n questionClassName={styles.question}\n />\n {props.onClickDelete && (\n <DivButton onClick={onClickDelete} className={`${styles.deleteContainer}`}>\n <span className={`text-end ${styles.delete}`}>\n <SvgContainer\n size={SvgContainerSize.Medium}\n svgName={cvSvgLibrary.Delete}\n />\n </span>\n </DivButton>\n )}\n {props.getCorrectness && (\n <span className={`text-end ${styles.correctness}`}>\n <Correctness interaction={interaction} getCorrectness={props.getCorrectness} />\n </span>\n )}\n </DivButton>\n </div>\n );\n}\n\ninterface TimepointComponentProps {\n timepoint: Timepoint;\n hasPlayPageV2?: boolean;\n goToTimepoint?: (timepointId: string, interactionId: string, visibleAt: number) => void;\n selectedInteractionId?: string;\n scrollTo?: (offset: number, height: number) => void;\n onClickDelete?: (interactionId: string) => void;\n getCorrectness?: (interaction: Interaction) => InteractionCorrectness;\n experimentalInteractiveQuestions?: boolean;\n}\n\nexport function TimepointComponent(props: TimepointComponentProps): React.ReactElement {\n const {\n timepoint,\n scrollTo,\n onClickDelete,\n selectedInteractionId,\n getCorrectness,\n hasPlayPageV2\n } = props;\n\n function goToTimepoint(interactionId: string): void {\n props.goToTimepoint(timepoint.id, interactionId, timepoint.visibleAt);\n }\n\n if (!timepoint.interactions)\n return <></>;\n\n return (\n <>\n {timepoint.interactions.map((interaction, i) => {\n if (!props.experimentalInteractiveQuestions && ExperimentalInteractionTypes[interaction.typeId])\n return <React.Fragment key={i} />;\n\n return (\n <InteractionComponent\n interaction={interaction}\n visibleAt={timepoint.visibleAt}\n goToTimepoint={props.goToTimepoint && goToTimepoint}\n onClickDelete={onClickDelete}\n scrollTo={scrollTo}\n selectedInteractionId={selectedInteractionId}\n isFirstInteraction={i === 0}\n getCorrectness={getCorrectness}\n key={i}\n hasPlayPageV2={hasPlayPageV2}\n />\n );\n })\n }\n </>\n );\n}\n\nexport interface InteractiveQuestionProps {\n interactive: Interactive;\n goToTimepoint?: (timepointId: string, interactionId: string, visibleAt: number) => void;\n selectedInteractionId?: string;\n maxHeight: number;\n hasPlayPageV2?: boolean;\n onClickDelete?: (interactionId: string) => void;\n getCorrectness?: (interaction: Interaction) => InteractionCorrectness;\n experimentalInteractiveQuestions?: boolean;\n}\n\nexport function InteractiveQuestions(props: InteractiveQuestionProps): React.ReactElement {\n const {\n interactive,\n goToTimepoint,\n selectedInteractionId,\n maxHeight,\n onClickDelete,\n getCorrectness,\n hasPlayPageV2\n } = props;\n\n const ref = React.useRef<Scrollbars>();\n\n function scrollTo(offset: number, elHeight: number): void {\n if (!ref.current)\n return;\n\n const height = ref.current.getClientHeight();\n const scroll = ref.current.getScrollTop();\n const elementFromTop = offset + scroll;\n\n /**\n * Element is above scroll window if it's distance from the top\n * is less than the scroll\n */\n const isAboveScrollWindow = elementFromTop < scroll;\n\n /**\n * Element is beneath scroll window if it's distance from the top\n * plus it's height is greater than the scroll plus the window height\n */\n const isBelowScrollWindow = (elementFromTop + elHeight) > (scroll + height);\n\n /**\n * So we don't scroll if our element is visible\n */\n if (!isAboveScrollWindow && !isBelowScrollWindow)\n return;\n\n /**\n * If our element isn't visible, we want to try scroll so the element is\n * centered in our viewport\n */\n ref.current.scrollTop(elementFromTop - (height / 2) + (elHeight / 2));\n }\n\n const borderClass = goToTimepoint ? 'border rounded' : '';\n\n return (\n <Scrollbars\n autoHeight\n autoHeightMax={maxHeight}\n className={borderClass}\n hideTracksWhenNotNeeded={true}\n ref={ref}\n >\n <div className='px-3 py-1'>\n {interactive.timepoints.map((t, i) => (\n <TimepointComponent\n key={i}\n timepoint={t}\n goToTimepoint={goToTimepoint}\n selectedInteractionId={selectedInteractionId}\n scrollTo={scrollTo}\n onClickDelete={onClickDelete}\n getCorrectness={getCorrectness}\n hasPlayPageV2={hasPlayPageV2}\n experimentalInteractiveQuestions={props.experimentalInteractiveQuestions}\n />\n ))\n }\n </div>\n </Scrollbars>\n );\n}\n","// 368 is the min height of Video at a glance which is defined as $glanceHeight in synopsis.scss\nexport const MINIMUM_GLANCE_HEIGHT = 368; // px","export enum InteractionCorrectness {\n Correct,\n Incorrect,\n AwaitingMarking,\n \n Answered,\n UnAnswered,\n NotApplicable\n}","// extracted by mini-css-extract-plugin\nexport default {\"worksheet\":\"Bv47P\",\"interaction\":\"efkgi\",\"timepointCell\":\"ffoDR\",\"interactionCell\":\"rKBEu\",\"checkbox\":\"ilhe4\",\"multipleChoiceAnswer\":\"TqhFx\",\"shortAnswerTextArea\":\"voJCM\",\"image\":\"go2dV\",\"cvLogo\":\"Z4GOw\",\"copyright\":\"petLf\",\"illustrationDrawingArea\":\"iA_Dl\"};","import React from 'react';\n\nimport { Interaction, InteractionTypeId } from 'libs/shared/interfaces';\n\nimport styles from './printable-interactive-worksheet.scss';\n\nconst MISSING_WORD_REGEX = /{([^{}]*)}/g;\n\ninterface PrintableInteractionContentProps {\n interaction: Interaction;\n}\n\nfunction InteractionName(props: PrintableInteractionContentProps): JSX.Element {\n return (\n <div className='mb-2'>{props.interaction.name}</div>\n );\n}\n\nfunction AnnotationInteraction(props: PrintableInteractionContentProps): JSX.Element {\n return (\n <div dangerouslySetInnerHTML={{ __html: props.interaction.data.annotation }}></div>\n );\n}\n\nfunction ImageInteraction(props: PrintableInteractionContentProps): JSX.Element {\n return (\n <>\n <InteractionName interaction={props.interaction} />\n <img className={styles.image} src={props.interaction.data.url} />\n </>\n );\n}\n\nfunction MissingWordInteraction(props: PrintableInteractionContentProps): JSX.Element {\n function replaceMissingWord(match: string, val: string): string {\n const actionableItem = props.interaction.actionableItems.find(a => a.order.toString() === val);\n const width = 2 * actionableItem.name.length;\n return Array(width + 1).join('_');\n }\n\n const formatted = (props.interaction.data.sentence as string).replace(MISSING_WORD_REGEX, replaceMissingWord);\n\n return (\n <div>{formatted}</div>\n );\n}\n\nfunction MultipleChoiceInteraction(props: PrintableInteractionContentProps): JSX.Element {\n return (\n <>\n <InteractionName interaction={props.interaction} />\n <table>\n <tbody>\n {props.interaction.actionableItems.map(a => (\n <tr key={a.id}>\n <td>\n <div className={`border ${styles.checkbox}`} />\n </td>\n <td className='break-word align-top'>\n <div className={styles.multipleChoiceAnswer}>\n {a.name}\n </div>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </>\n );\n}\n\nfunction ShortAnswerInteraction(props: PrintableInteractionContentProps): JSX.Element {\n return (\n <>\n <InteractionName interaction={props.interaction} />\n <div className={`border w-100 ${styles.shortAnswerTextArea}`} />\n </>\n );\n}\n\nfunction IllustrationInteraction(props: PrintableInteractionContentProps): JSX.Element {\n return (\n <>\n <InteractionName interaction={props.interaction} />\n <div className={`w-100 border ${styles.illustrationDrawingArea}`} />\n </>\n );\n}\n\nexport const PrintableInteractionComponentLookup: {\n [typeId: number]: (props: PrintableInteractionContentProps) => JSX.Element\n} = {\n [InteractionTypeId.Annotation]: AnnotationInteraction,\n [InteractionTypeId.Image]: ImageInteraction,\n [InteractionTypeId.MissingWord]: MissingWordInteraction,\n [InteractionTypeId.MultipleChoice]: MultipleChoiceInteraction,\n [InteractionTypeId.TrueOrFalse]: MultipleChoiceInteraction,\n [InteractionTypeId.ShortAnswer]: ShortAnswerInteraction,\n [InteractionTypeId.Illustration]: IllustrationInteraction\n};\n","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { ClickViewLogo } from 'libs/shared/components/svgs/clickview-logo/ClickViewLogo';\nimport { Interaction, Interactive } from 'libs/shared/interfaces';\nimport { DurationHelper } from 'libs/shared/utils/DurationHelper';\n\nimport { PrintableInteractionComponentLookup } from './PrintableInteractionContent';\n\nimport styles from './printable-interactive-worksheet.scss';\n\nconst getPhrase = LanguageService.encloseNamespace('interactives.printableInteractiveWorksheet');\n\ninterface PrintableInteractionProps {\n interaction: Interaction;\n visibleAt: number;\n}\n\nfunction PrintableInteraction(props: PrintableInteractionProps): JSX.Element {\n const InteractionComponent = PrintableInteractionComponentLookup[props.interaction.typeId];\n\n if (!InteractionComponent)\n return <></>;\n\n return (\n <tr className={styles.interaction}>\n <td className={`align-top ${styles.timepointCell}`}>\n {DurationHelper.ToDisplayDuration(props.visibleAt)}\n </td>\n <td className={`break-word ${styles.interactionCell}`}>\n <InteractionComponent interaction={props.interaction} />\n </td>\n </tr>\n );\n}\n\ninterface PrintableInteractiveQuestionsProps {\n interactive: Interactive;\n}\n\nfunction PrintableInteractiveQuestions(props: PrintableInteractiveQuestionsProps): JSX.Element {\n return (\n <>\n {props.interactive.timepoints.map((timepoint, i) => (\n timepoint.interactions.map((interaction, j) => (\n <PrintableInteraction key={`${i}:${j}`} interaction={interaction} visibleAt={timepoint.visibleAt} />\n ))\n ))}\n </>\n );\n}\n\ninterface PrintableInteractiveWorksheetProps {\n worksheetElementId: string;\n interactive: Interactive;\n isClickViewContent: boolean;\n}\n\nexport function PrintableInteractiveWorksheet(props: PrintableInteractiveWorksheetProps): JSX.Element {\n const year = (new Date()).getFullYear();\n\n return (\n <div id={props.worksheetElementId} className={styles.worksheet}>\n <div className='row pb-2'>\n <div className='col-6'>{getPhrase('name')} ______________________________</div>\n <div className='col-6'>{getPhrase('date')} ______________________________</div>\n </div>\n <h1>\n <strong>{getPhrase('questionSheet')}:</strong> {props.interactive.name}\n </h1>\n <table>\n <tbody>\n <PrintableInteractiveQuestions interactive={props.interactive} />\n </tbody>\n </table>\n <div className={styles.cvLogo}>\n <ClickViewLogo />\n </div>\n {props.isClickViewContent &&\n <span className={styles.copyright}>{getPhrase('copyright', { year })}</span>\n }\n </div>\n );\n}\n","import React from 'react';\nimport { createRoot } from 'react-dom/client';\nimport printJS from 'print-js';\n\nimport { DevError } from 'libs/common/backbone/errors/DevError';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { Interactive } from 'libs/shared/interfaces';\n\nimport { PrintableInteractiveWorksheet } from 'apps/interactives/components/printable-interactive-worksheet/PrintableInteractiveWorksheet';\n\nconst getPhrase = LanguageService.encloseNamespace('interactives.utils');\n\nexport function printInteractive(interactive: Interactive, isCVContent: boolean, onDone?: () => void): void {\n const printRegion = document.getElementById('print-region');\n\n if (!printRegion)\n Core.ErrorHelper.throw(new DevError('Could not find print region in layout'));\n\n if (!interactive)\n return;\n\n const worksheetElementId = `printable-interactive-${interactive.id}`;\n\n const root = createRoot(printRegion);\n\n function print(): void {\n printJS({\n printable: worksheetElementId,\n type: 'html',\n documentTitle: getPhrase('worksheetTitle', { interactiveName: interactive.name }),\n targetStyles: ['*'],\n style: '@page { size: A4; margin: 1.5cm 0; }',\n onLoadingEnd: () => {\n onDone && onDone();\n root.unmount();\n },\n /**\n * font_size is deprecated but a bug in print.js still applies the default (12pt) if it\n * is omitted, overriding any custom/inline styles. \n * This value is the same as the one found in in .worksheet in printable-interactive-worksheet.scss\n */\n font_size: '14px'\n });\n }\n\n root.render(\n <div className='d-none'>\n <PrintableInteractiveWorksheet\n worksheetElementId={worksheetElementId}\n interactive={interactive}\n isClickViewContent={isCVContent}\n />\n </div>\n );\n\n window.setTimeout(() => {\n print();\n }, 200);\n}","// extracted by mini-css-extract-plugin\nexport default {\"printBtn\":\"VWlur\"};","import * as React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { ClickDescriptor, EntityType, EventVersion, LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { ActionOptions, Actions as ActionButtons } from 'libs/shared/components/actions/Actions';\nimport { InteractiveQuestions } from 'libs/shared/components/interactive-questions/InteractiveQuestions';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { MINIMUM_GLANCE_HEIGHT } from 'libs/shared/constants/MinimumGlanceHeight';\nimport { InteractiveRequests } from 'libs/shared/flight-requests/InteractiveRequests';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Interactive, InteractiveMetadata, PopupViewProps } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { printInteractive } from 'apps/interactives/utils/PrintInteractive';\n\nimport styles from './preview-questions.scss';\n\nconst getPhrase = LanguageService.encloseNamespace('interactives.previewQuestions');\n\ninterface PreviewQuestionsViewProps extends PopupViewProps {\n id: string;\n}\n\nexport function PreviewQuestionsView(props: PreviewQuestionsViewProps): React.ReactElement {\n const [ showPrintButtonSpinner, setShowPrintButtonSpinner ] = React.useState(false);\n\n const { experimentalInteractiveQuestions } = useSettings(null);\n\n const interactiveMetadata = Flight.useBasicFetch<InteractiveMetadata>(\n InteractiveRequests.interactiveMetadata(props.id)\n );\n\n const interactive = Flight.useBasicFetch<Interactive>(interactiveMetadata.data ?\n InteractiveRequests.interactive(interactiveMetadata.data.interactiveId) : null);\n\n let analyticsData: HashObject = null;\n\n if (interactiveMetadata.data) {\n analyticsData = {\n id: interactiveMetadata.data.id,\n interactiveId: interactiveMetadata.data.interactiveId,\n name: interactiveMetadata.data.name\n };\n\n if (interactiveMetadata.data._parentVideo?.id)\n analyticsData.video = { id: interactiveMetadata.data._parentVideo.id };\n\n if (interactiveMetadata.data._parentClip?.id)\n analyticsData.clip = { id: interactiveMetadata.data._parentClip.id };\n }\n\n const actions: ActionOptions[] = [\n {\n label: getPhrase('watchInteractive'),\n className: 'btn btn-outline-dark me-2',\n svgName: cvSvgLibrary.Play,\n button: true,\n appLink: {\n application: AppChannels.INTERACTIVES,\n action: Actions.Interactives.VIEW_INTERACTIVE,\n args: [ props.id, TextHelper.slugify(interactive.data?.name) ]\n },\n onClick: props.closePopup,\n analyticsData,\n analyticsOptions: {\n entity: EntityType.Interactive,\n actionType: UserAction.Click,\n location: LocationContext.PreviewInteractiveQuestions,\n descriptor: ClickDescriptor.Button\n }\n },\n {\n label: getPhrase('printAsWorksheet'),\n className: `btn btn-outline-dark ${styles.printBtn}`,\n svgName: cvSvgLibrary.Print,\n button: true,\n onClick: () => {\n setShowPrintButtonSpinner(true);\n printInteractive(\n interactive.data,\n interactiveMetadata.data._isClickViewCurated?.value,\n () => setShowPrintButtonSpinner(false)\n );\n },\n showSpinner: showPrintButtonSpinner,\n analyticsData,\n analyticsOptions: {\n entity: EntityType.Interactive,\n actionType: UserAction.Print,\n location: LocationContext.PreviewInteractiveQuestions,\n workflowPhase: WorkflowPhase.Start,\n eventVersion: EventVersion.V2\n }\n }\n ];\n\n function goToTimepoint(_: string, __: string, visibleAt: number): void {\n Core.AppLinkHelper.trigger({\n application: AppChannels.INTERACTIVES,\n action: Actions.Interactives.VIEW_INTERACTIVE,\n args: [ props.id, TextHelper.slugify(interactive.data?.name) ],\n params: visibleAt ? { t: Math.floor(visibleAt / 1000) } : null\n });\n props.closePopup();\n }\n\n return (\n <Popup\n title={getPhrase('mainTitle')}\n closePopup={props.closePopup}\n showLoadingSpinner={!interactive.data}\n size='lg'\n >\n {(() => {\n if (!interactive.data)\n return <></>;\n\n return (\n <>\n <InteractiveQuestions\n interactive={interactive.data}\n maxHeight={MINIMUM_GLANCE_HEIGHT}\n experimentalInteractiveQuestions={experimentalInteractiveQuestions}\n goToTimepoint={goToTimepoint}\n />\n <PopupButtons>\n <ActionButtons actions={actions} />\n </PopupButtons>\n </>\n );\n })()}\n </Popup>\n );\n}\n"],"names":["Actions","props","orderedActions","actions","sort","a","b","order","buttonActions","moreActions","forEach","button","push","className","length","map","idx","key","label","appLink","href","onClick","svgName","svgSize","dropdownToggleSvgSize","tooltip","showSpinner","analyticsData","analyticsOptions","openInNewTab","disabled","iconButton","showBorder","customSize","ariaLabel","title","spanHack","sortComponent","dropdownToggleClassName","actionsDropdownClassName","fetchMore","LazyDropdownItems","style","padding","height","width","getDropdownItemClassName","actionClassName","ActionsDropdownItem","FunctionHelper","action","AppLink","SvgContainer","e","preventDefault","AnalyticsHelper","role","tabIndex","onKeyDown","ActionsDropdown","isLazy","some","lazyPlaceholder","currentGroup","dropdownToggleId","RandomHelper","type","id","size","showDivider","undefined","group","Tooltip","defaultProps","S","namespace","Correctness","interaction","getCorrectness","InteractionCorrectness","Text","phrase","InteractionComponent","visibleAt","selectedInteractionId","goToTimepoint","scrollTo","isFirstInteraction","hasPlayPageV2","selected","toString","ref","current","el","rect","getBoundingClientRect","offset","top","offsetParent","cursor","DivButton","DurationHelper","InteractionLabel","showTypeName","typeNameClassName","questionClassName","onClickDelete","event","stopPropagation","TimepointComponent","timepoint","interactionId","interactions","i","experimentalInteractiveQuestions","typeId","InteractiveQuestions","interactive","maxHeight","elHeight","getClientHeight","scroll","getScrollTop","elementFromTop","scrollTop","borderClass","autoHeight","autoHeightMax","hideTracksWhenNotNeeded","timepoints","t","MINIMUM_GLANCE_HEIGHT","MISSING_WORD_REGEX","InteractionName","name","MultipleChoiceInteraction","actionableItems","PrintableInteractionComponentLookup","dangerouslySetInnerHTML","__html","data","annotation","src","url","formatted","sentence","replace","match","val","find","Array","join","getPhrase","LanguageService","PrintableInteraction","PrintableInteractiveQuestions","j","PrintableInteractiveWorksheet","year","Date","getFullYear","worksheetElementId","ClickViewLogo","isClickViewContent","printInteractive","isCVContent","onDone","printRegion","document","getElementById","DevError","root","render","window","setTimeout","printable","documentTitle","interactiveName","targetStyles","onLoadingEnd","unmount","font_size","PreviewQuestionsView","showPrintButtonSpinner","setShowPrintButtonSpinner","useSettings","interactiveMetadata","InteractiveRequests","interactiveId","_parentVideo","video","_parentClip","clip","application","args","TextHelper","closePopup","entity","actionType","location","descriptor","_isClickViewCurated","value","workflowPhase","eventVersion","Popup","showLoadingSpinner","_","__","params","Math","floor","PopupButtons"],"sourceRoot":""}
|