@clickview/lite 0.84.1-rc.0 → 0.84.1

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.
Files changed (123) hide show
  1. package/dist/bundles.json +2 -2
  2. package/dist/css/4945-lite-72ae59fcab.chunk.css +2 -0
  3. package/dist/css/8852-lite-84d6357a79.chunk.css +1 -0
  4. package/dist/css/{lite-app-b4540a3be1.css → lite-app-084c45f90e.css} +2 -0
  5. package/dist/languages/en.json +1 -1
  6. package/dist/scripts/{1202-d96ad80884-lite.chunk.js → 1202-5473d9962d-lite.chunk.js} +2 -2
  7. package/dist/scripts/{1202-d96ad80884-lite.chunk.js.map → 1202-5473d9962d-lite.chunk.js.map} +1 -1
  8. package/dist/scripts/171-4b1fe5952a-lite.chunk.js +2 -0
  9. package/dist/scripts/171-4b1fe5952a-lite.chunk.js.map +1 -0
  10. package/dist/scripts/1726-b8b386dbd5-lite.chunk.js +2 -0
  11. package/dist/scripts/1726-b8b386dbd5-lite.chunk.js.map +1 -0
  12. package/dist/scripts/1912-52e57d9f16-lite.chunk.js +2 -0
  13. package/dist/scripts/1912-52e57d9f16-lite.chunk.js.map +1 -0
  14. package/dist/scripts/{289-669c0c8222-lite.chunk.js → 289-190caa6455-lite.chunk.js} +2 -2
  15. package/dist/scripts/{289-669c0c8222-lite.chunk.js.map → 289-190caa6455-lite.chunk.js.map} +1 -1
  16. package/dist/scripts/{3249-0b55dec380-lite.chunk.js → 3249-08a22f8aaf-lite.chunk.js} +2 -2
  17. package/dist/scripts/3249-08a22f8aaf-lite.chunk.js.map +1 -0
  18. package/dist/scripts/3840-df2873e349-lite.chunk.js +2 -0
  19. package/dist/scripts/3840-df2873e349-lite.chunk.js.map +1 -0
  20. package/dist/scripts/4006-2b689bdde0-lite.chunk.js +3 -0
  21. package/dist/scripts/4006-2b689bdde0-lite.chunk.js.map +1 -0
  22. package/dist/scripts/4525-2ade147f5d-lite.chunk.js +2 -0
  23. package/dist/scripts/4525-2ade147f5d-lite.chunk.js.map +1 -0
  24. package/dist/scripts/4945-fbbb21cf54-lite.chunk.js +2 -0
  25. package/dist/scripts/4945-fbbb21cf54-lite.chunk.js.map +1 -0
  26. package/dist/scripts/4985-6bdacf82c1-lite.chunk.js +2 -0
  27. package/dist/scripts/4985-6bdacf82c1-lite.chunk.js.map +1 -0
  28. package/dist/scripts/5002-c0f45922c6-lite.chunk.js +2 -0
  29. package/dist/scripts/5002-c0f45922c6-lite.chunk.js.map +1 -0
  30. package/dist/scripts/516-94eeca32e7-lite.chunk.js +2 -0
  31. package/dist/scripts/516-94eeca32e7-lite.chunk.js.map +1 -0
  32. package/dist/scripts/5270-55334d53e9-lite.chunk.js +2 -0
  33. package/dist/scripts/5270-55334d53e9-lite.chunk.js.map +1 -0
  34. package/dist/scripts/5579-7d9081e134-lite.chunk.js +2 -0
  35. package/dist/scripts/{5579-a9c152057f-lite.chunk.js.map → 5579-7d9081e134-lite.chunk.js.map} +1 -1
  36. package/dist/scripts/5712-fd1a7d8d6a-lite.chunk.js +2 -0
  37. package/dist/scripts/5712-fd1a7d8d6a-lite.chunk.js.map +1 -0
  38. package/dist/scripts/639-df1607cbc8-lite.chunk.js +2 -0
  39. package/dist/scripts/639-df1607cbc8-lite.chunk.js.map +1 -0
  40. package/dist/scripts/6909-b5717e92e8-lite.chunk.js +2 -0
  41. package/dist/scripts/6909-b5717e92e8-lite.chunk.js.map +1 -0
  42. package/dist/scripts/7459-c1882c6f0d-lite.chunk.js +3 -0
  43. package/dist/scripts/7459-c1882c6f0d-lite.chunk.js.map +1 -0
  44. package/dist/scripts/7604-5d2ba346e2-lite.chunk.js +3 -0
  45. package/dist/scripts/7604-5d2ba346e2-lite.chunk.js.map +1 -0
  46. package/dist/scripts/{7617-9d34c841e6-lite.chunk.js → 7617-899a1d0cb1-lite.chunk.js} +2 -2
  47. package/dist/scripts/7617-899a1d0cb1-lite.chunk.js.map +1 -0
  48. package/dist/scripts/7742-95097c976d-lite.chunk.js +2 -0
  49. package/dist/scripts/7742-95097c976d-lite.chunk.js.map +1 -0
  50. package/dist/scripts/{7843-f6033528ce-lite.chunk.js → 7843-fc9ddb3b52-lite.chunk.js} +2 -2
  51. package/dist/scripts/7843-fc9ddb3b52-lite.chunk.js.map +1 -0
  52. package/dist/scripts/{7867-14c692e69c-lite.chunk.js → 7867-589c7bd788-lite.chunk.js} +3 -3
  53. package/dist/scripts/7867-589c7bd788-lite.chunk.js.map +1 -0
  54. package/dist/scripts/{787-dcb3a0a26c-lite.chunk.js → 787-5c7976e8cb-lite.chunk.js} +2 -2
  55. package/dist/scripts/{787-dcb3a0a26c-lite.chunk.js.map → 787-5c7976e8cb-lite.chunk.js.map} +1 -1
  56. package/dist/scripts/8056-555482555f-lite.chunk.js +2 -0
  57. package/dist/scripts/8056-555482555f-lite.chunk.js.map +1 -0
  58. package/dist/scripts/{8672-6967ce8a23-lite.chunk.js → 8672-5637204ae3-lite.chunk.js} +2 -2
  59. package/dist/scripts/{8672-6967ce8a23-lite.chunk.js.map → 8672-5637204ae3-lite.chunk.js.map} +1 -1
  60. package/dist/scripts/8852-f4e4da0097-lite.chunk.js +2 -0
  61. package/dist/scripts/8852-f4e4da0097-lite.chunk.js.map +1 -0
  62. package/dist/scripts/8944-022dbd6a0b-lite.chunk.js +2 -0
  63. package/dist/scripts/8944-022dbd6a0b-lite.chunk.js.map +1 -0
  64. package/dist/scripts/9742-c839ec5abb-lite.chunk.js +2 -0
  65. package/dist/scripts/9742-c839ec5abb-lite.chunk.js.map +1 -0
  66. package/dist/scripts/{8133-ffcff3b7fc-lite.chunk.js → 9803-9a666cfdef-lite.chunk.js} +3 -3
  67. package/dist/scripts/9803-9a666cfdef-lite.chunk.js.map +1 -0
  68. package/dist/scripts/bundle-47bd8cc149.min.js +3 -0
  69. package/dist/scripts/{bundle-2bbba2aa8b.min.js.map → bundle-47bd8cc149.min.js.map} +1 -1
  70. package/package.json +1 -1
  71. package/dist/scripts/171-36c7520c9c-lite.chunk.js +0 -2
  72. package/dist/scripts/171-36c7520c9c-lite.chunk.js.map +0 -1
  73. package/dist/scripts/1726-c79cf77a51-lite.chunk.js +0 -2
  74. package/dist/scripts/1726-c79cf77a51-lite.chunk.js.map +0 -1
  75. package/dist/scripts/1912-1f78dc635a-lite.chunk.js +0 -2
  76. package/dist/scripts/1912-1f78dc635a-lite.chunk.js.map +0 -1
  77. package/dist/scripts/2074-39b86b9a22-lite.chunk.js +0 -2
  78. package/dist/scripts/2074-39b86b9a22-lite.chunk.js.map +0 -1
  79. package/dist/scripts/3249-0b55dec380-lite.chunk.js.map +0 -1
  80. package/dist/scripts/3840-98c79fc0d8-lite.chunk.js +0 -2
  81. package/dist/scripts/3840-98c79fc0d8-lite.chunk.js.map +0 -1
  82. package/dist/scripts/3893-2856933742-lite.chunk.js +0 -2
  83. package/dist/scripts/3893-2856933742-lite.chunk.js.map +0 -1
  84. package/dist/scripts/4006-9dfe9cec1b-lite.chunk.js +0 -3
  85. package/dist/scripts/4006-9dfe9cec1b-lite.chunk.js.map +0 -1
  86. package/dist/scripts/4985-bdfa839f8f-lite.chunk.js +0 -2
  87. package/dist/scripts/4985-bdfa839f8f-lite.chunk.js.map +0 -1
  88. package/dist/scripts/5002-7514146621-lite.chunk.js +0 -2
  89. package/dist/scripts/5002-7514146621-lite.chunk.js.map +0 -1
  90. package/dist/scripts/5270-d407e1ae84-lite.chunk.js +0 -2
  91. package/dist/scripts/5270-d407e1ae84-lite.chunk.js.map +0 -1
  92. package/dist/scripts/5579-a9c152057f-lite.chunk.js +0 -2
  93. package/dist/scripts/5712-e784cfe89c-lite.chunk.js +0 -2
  94. package/dist/scripts/5712-e784cfe89c-lite.chunk.js.map +0 -1
  95. package/dist/scripts/6909-a9b8930e37-lite.chunk.js +0 -2
  96. package/dist/scripts/6909-a9b8930e37-lite.chunk.js.map +0 -1
  97. package/dist/scripts/7401-833bc4a088-lite.chunk.js +0 -2
  98. package/dist/scripts/7401-833bc4a088-lite.chunk.js.map +0 -1
  99. package/dist/scripts/7604-f664281904-lite.chunk.js +0 -3
  100. package/dist/scripts/7604-f664281904-lite.chunk.js.map +0 -1
  101. package/dist/scripts/7617-9d34c841e6-lite.chunk.js.map +0 -1
  102. package/dist/scripts/7742-342db3ce4f-lite.chunk.js +0 -2
  103. package/dist/scripts/7742-342db3ce4f-lite.chunk.js.map +0 -1
  104. package/dist/scripts/7843-f6033528ce-lite.chunk.js.map +0 -1
  105. package/dist/scripts/7867-14c692e69c-lite.chunk.js.map +0 -1
  106. package/dist/scripts/8056-eec7c2fda0-lite.chunk.js +0 -2
  107. package/dist/scripts/8056-eec7c2fda0-lite.chunk.js.map +0 -1
  108. package/dist/scripts/8133-ffcff3b7fc-lite.chunk.js.map +0 -1
  109. package/dist/scripts/8364-ff63447d36-lite.chunk.js +0 -3
  110. package/dist/scripts/8364-ff63447d36-lite.chunk.js.map +0 -1
  111. package/dist/scripts/8944-b56c3e61fc-lite.chunk.js +0 -2
  112. package/dist/scripts/8944-b56c3e61fc-lite.chunk.js.map +0 -1
  113. package/dist/scripts/9742-5f99d74bb0-lite.chunk.js +0 -2
  114. package/dist/scripts/9742-5f99d74bb0-lite.chunk.js.map +0 -1
  115. package/dist/scripts/bundle-2bbba2aa8b.min.js +0 -3
  116. /package/dist/css/{2074-lite-ac8da6c78b.chunk.css → 4525-lite-ac8da6c78b.chunk.css} +0 -0
  117. /package/dist/css/{8364-lite-db31e36b79.chunk.css → 7459-lite-db31e36b79.chunk.css} +0 -0
  118. /package/dist/scripts/{4006-9dfe9cec1b-lite.chunk.js.LICENSE.txt → 4006-2b689bdde0-lite.chunk.js.LICENSE.txt} +0 -0
  119. /package/dist/scripts/{7604-f664281904-lite.chunk.js.LICENSE.txt → 7459-c1882c6f0d-lite.chunk.js.LICENSE.txt} +0 -0
  120. /package/dist/scripts/{7867-14c692e69c-lite.chunk.js.LICENSE.txt → 7604-5d2ba346e2-lite.chunk.js.LICENSE.txt} +0 -0
  121. /package/dist/scripts/{8133-ffcff3b7fc-lite.chunk.js.LICENSE.txt → 7867-589c7bd788-lite.chunk.js.LICENSE.txt} +0 -0
  122. /package/dist/scripts/{8364-ff63447d36-lite.chunk.js.LICENSE.txt → 9803-9a666cfdef-lite.chunk.js.LICENSE.txt} +0 -0
  123. /package/dist/scripts/{bundle-2bbba2aa8b.min.js.LICENSE.txt → bundle-47bd8cc149.min.js.LICENSE.txt} +0 -0
@@ -1,2 +0,0 @@
1
- (self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[5002],{66257:(e,t,r)=>{"use strict";r.d(t,{k:()=>m});var n=r(32735),o=r(80130),a=r(59087),l=r(23481),i=r(31453),c=r(35223),s=r(91693);const u={normal:"Q1UGv",copyBtn:"J3fBx",embedHtmlInput:"RcwAD"};function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var p=l.T.encloseNamespace("shared.copyInput");function m(e){var t,r,l=(t=n.useState(e.showCopiedText||!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,l,i=[],c=!0,s=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=a.call(r)).done)&&(i.push(n.value),i.length!==t);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(s)throw o}}return i}}(t,r)||function(e,t){if(e){if("string"==typeof e)return f(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?f(e,t):void 0}}(t,r)||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.")}()),m=l[0],d=l[1];function y(){setTimeout(function(){return d(!1)},2e3)}function b(){e.onCopy&&e.onCopy(),m||(d(!0),y())}n.useEffect(function(){e.showCopiedText&&y()},[e.showCopiedText]);var v=n.createElement("div",{className:"normal-v2"===e.styling?"d-flex flex-row gap-2 position-relative w-100":"input-group"},e.textarea?n.createElement("textarea",{className:(0,i.A)("form-control rounded w-100 h-100",!e.hasInputBg&&u.embedHtmlInput),spellCheck:!1,value:e.value,rows:7,readOnly:!0}):n.createElement("input",{type:"text",autoComplete:"off",className:(0,i.A)("form-control","normal"===e.styling&&e.styling),spellCheck:!1,value:e.value,readOnly:!0}),n.createElement(function(){return"normal-v2"===e.styling?n.createElement(a.CopyToClipboard,{text:e.value,onCopy:b},n.createElement(s.h,{role:m?"status":"",svgName:m?c.vn.Check:c.vn.Copy,className:(0,i.A)(u.copyBtn,"btn py-0 text-nowrap",m?"btn-success text-white":"btn-outline-dark border-secondary",e.extraButtonClassNames)},m?e.copiedText||p("copiedLink"):e.copyText||p("copy"))):n.createElement(a.CopyToClipboard,{text:e.value,onCopy:b},n.createElement("button",{role:m?"status":"",className:(0,i.A)("btn btn-outline-dark border border-secondary py-0 text-nowrap",e.extraButtonClassNames)},m?e.copiedText||p("copied"):e.copyText||p("copy")))},null));return e.label?n.createElement(o.Z.Group,{className:"form-group"},n.createElement(o.Z.Label,null,e.label),v):v}m.defaultProps={styling:"normal"}},23201:(e,t,r)=>{"use strict";r.d(t,{A:()=>s});var n=r(32735),o=r(92802),a=r(2102),l=r(83345),i=r(33936),c="shared.formButtons";function s(e){var t=(0,o.u6)(),r=(0,i.l)(t);return n.createElement(a.m,{variant:e.variant||"primary",type:"submit",disabled:!r,size:e.size,className:e.className?e.className:"",showSpinner:t.isSubmitting},e.submitText?n.createElement(n.Fragment,null,e.submitText):n.createElement(l.x,{namespace:c,phrase:e.isNew?"create":"save"}))}},29057:(e,t,r)=>{"use strict";r.d(t,{n:()=>O,W:()=>C});var n=r(32735),o=r(80247),a=r(80130),l=r(92802),i=r(91967),c=r(1048),s=r(15611),u=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r};function f(e){var t=e.label,r=e.checkboxLabelClassName,o=e.checkboxLabelFontWeight,l=e.className,i=u(e,["label","checkboxLabelClassName","checkboxLabelFontWeight","className"]);return n.createElement(a.Z.Group,{className:"form-group"},n.createElement("div",{className:"form-check ".concat(l||"")},n.createElement(O,Object.assign({className:"form-check-input"},i)),n.createElement(a.Z.Label,{className:"form-check-label cursor-pointer ".concat("normal"===o?"fw-normal":""," \n ").concat(r),htmlFor:i.id},t),e.checkboxAppLink&&e.checkboxAppLinkText&&n.createElement(n.Fragment,null,n.createElement("span",null," "),n.createElement(s.F,{appLink:e.checkboxAppLink,className:"info-link"},e.checkboxAppLinkText))))}var p=r(83914),m=r(83345),d=r(73814),y=r(35223);function b(e){var t=(0,l.u6)().values,r=c.t.get(t,e.fieldName);return"string"!=typeof r?n.createElement(n.Fragment,null):n.createElement("div",{className:"float-end text-secondary fw-normal"},r.length,"/",e.limit," characters")}const v={revealPassword:"jCfI0",passwordInput:"RBJnf",passwordContainer:"d78lK",passwordContainerDisabled:"asbVo",infoTooltip:"wzyOG",spinner:"CycFx"};function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var h=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r},w="shared.formField";function O(e){var t,r,a=e.children,s=e.showLoadingSpinner,u=h(e,["children","showLoadingSpinner"]),f=(t=n.useState(e.type),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,l,i=[],c=!0,s=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=a.call(r)).done)&&(i.push(n.value),i.length!==t);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(s)throw o}}return i}}(t,r)||function(e,t){if(e){if("string"==typeof e)return g(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?g(e,t):void 0}}(t,r)||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.")}()),m=f[0],d=f[1],b=i.q.isFunction(a)?function(e){return a(e)}:n.Children.count(a)?a:null;if("password"!==u.type)return s?n.createElement("div",{className:"position-relative"},n.createElement(l.gN,Object.assign({},c.t.omit(u,["formSize"])),b),n.createElement("div",{className:v.spinner},n.createElement(o.Z,{animation:"border",size:"sm"}))):n.createElement(l.gN,Object.assign({},c.t.omit(u,["formSize"])),b);var w="position-relative ".concat(v.passwordContainer);return u.className&&(w+=" ".concat(u.className)),u.disabled&&(w+=" ".concat(v.passwordContainerDisabled)),n.createElement("div",{className:w},n.createElement(l.gN,Object.assign({},c.t.omit(u,["formSize","type","className"]),{type:m,className:"".concat(v.passwordInput," border-0 w-100 h-100 outline-none rounded")}),b),"password"===u.type&&n.createElement(p.x,{svgName:"password"===m?y.vn.VisibleOn:y.vn.VisibleOff,className:"svg-container cursor-pointer ".concat(v.revealPassword),onClick:function(){d("password"===m?"text":"password")}}))}function C(e){var t=e.label,r=e.className,o=e.showCharacterCounter,i=e.showRequiredStar,s=e.infoTooltip,u=e.infoTooltipPlacement,g=e.infoText,C=e.formSize,E=e.showOptionalLabel,S=e.formGroupClassname,x=e.labelClassName,k=h(e,["label","className","showCharacterCounter","showRequiredStar","infoTooltip","infoTooltipPlacement","infoText","formSize","showOptionalLabel","formGroupClassname","labelClassName"]),j=(0,l.u6)(),N=j.errors,P=j.touched,T=function(){};if("checkbox"===k.type){var A=c.t.omit(e,["formSize","infoTooltipPlacement"]);return e.disabled&&(A.onChange=T),n.createElement(f,Object.assign({},A))}var I=Object.assign(Object.assign({},k),{className:d.w.getCustomFormControlClassName(N,P,k.name,C,r,"string"==typeof e.as?e.as:null)});return e.disabled&&(I.onChange=T),n.createElement(a.Z.Group,{className:"form-group ".concat(S)},!!t&&n.createElement(a.Z.Label,{htmlFor:k.id,className:"d-flex align-items-center ".concat(x)},t,i&&n.createElement("span",{className:"text-danger"},"*"),s&&n.createElement(p.x,{className:"svg-container text-secondary ".concat(v.infoTooltip),svgName:y.vn.Info,title:s,tooltipPlacement:u,tooltipSpanHack:!0}),E&&n.createElement("span",{className:"text-secondary"}," ",n.createElement(m.x,{namespace:w,phrase:"optional"})),!!o&&!!k.maxLength&&n.createElement("div",{className:"ms-auto"},n.createElement(b,{fieldName:k.name,limit:k.maxLength}))),e.description&&n.createElement("p",null,e.description),n.createElement(O,Object.assign({},I,{"aria-errormessage":"".concat(k.name,"Error")})),!!g&&n.createElement(a.Z.Text,{className:"text-secondary"},g),n.createElement(l.Bc,{name:k.name},function(e){return n.createElement(a.Z.Control.Feedback,{id:"".concat(k.name,"Error"),type:"invalid",role:"status"},e)}))}O.defaultProps={autoComplete:"off"},C.defaultProps={autoComplete:"off",infoTooltipPlacement:"top"}},82644:(e,t,r)=>{"use strict";r.d(t,{b:()=>f,n:()=>u});var n=r(32735),o=r(92802),a=r(91967),l=r(1048);function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,l,i=[],c=!0,s=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=a.call(r)).done)&&(i.push(n.value),i.length!==t);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(s)throw o}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return c(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var s=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r};function u(e){var t=e.castInitialValues,r=e.castValuesOnSubmit,c=e.initialValues,u=e.onSubmit,f=s(e,["castInitialValues","castValuesOnSubmit","initialValues","onSubmit"]),p=t&&e.validationSchema?e.validationSchema.cast(function(e){if(!e)return{};var t=l.t.deepClone(e);return function e(r){Object.keys(t).forEach(function(n){t.hasOwnProperty(n)&&(l.t.isObject(r[n])?e(r[n]):null===t[n]&&delete t[n])})}(t),t}(c)):c,m={allowInitialSubmit:e.allowInitialSubmit};return n.createElement(o.J9,Object.assign({enableReinitialize:!0},f,{initialValues:p,onSubmit:function(t,n){var o=n.setSubmitting,a=n.resetForm,l=n.setFieldError,c=r&&e.validationSchema?e.validationSchema.cast(t):t;u(c,function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(e.reset&&a(),e.errors)for(var t=0,r=Object.entries(e.errors);t<r.length;t++){var n=i(r[t],2),c=n[0],s=n[1];l(c,s)}o(!1)})},initialStatus:m}),a.q.isFunction(e.children)?function(t){return e.children(t)}:n.Children.count(e.children)?e.children:null)}function f(){return(0,o.u6)()}u.defaultProps={castInitialValues:!0,castValuesOnSubmit:!0}},94644:(e,t,r)=>{"use strict";r.d(t,{r:()=>u});var n=r(50242),o=r(81886),a=r(67058),l=r(14553),i=r(49267),c=r(49075),s={notFound:a.d,forbidden:{rating:l.q,yearLevel:l.q,region:i.a,privacy:l.q},badRequest:c._,internalServerError:c._};function u(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e){var a;a="number"==typeof e?e:e.status;var l=Object.assign(Object.assign({},s),t);a&&o.Q.Ry.isStatusCodeError(a)&&(a!==n.o.InternalServer?a!==n.o.NotFound?a!==n.o.Forbidden?r.badRequest||o.Q.Ry.throw(new l.badRequest):r.forbidden||o.Q.Ry.throw(new l.forbidden.privacy):r.notFound||o.Q.Ry.throw(new l.notFound):r.internalServerError||o.Q.Ry.throw(new c._))}}},91286:(e,t,r)=>{"use strict";r.d(t,{v:()=>l});var n=r(32735),o=r(94644);function a(e){return e.map(function(e){return e.statusCode}).join(":")}function l(e,t,r){var l=Array.isArray(e)?e:[e];(0,n.useEffect)(function(){l.forEach(function(e){(0,o.r)(e.statusCode,t,r)})},[a(l),t,r])}},73814:(e,t,r)=>{"use strict";r.d(t,{w:()=>o});var n=r(92802),o={getCustomFormControlClassName:function(e,t,r,o,a,l){var i="";return i=function(e,t){var r="";return r="select"===e?"form-select":"form-control","sm"===t&&(r+=" ".concat(r,"-sm")),"lg"===t&&(r+=" ".concat(r,"-lg")),r}(l,o),(0,n.u9)(t,r)&&(0,n.u9)(e,r)&&(i+=" is-invalid"),a&&(i+=" ".concat(a)),i}}},52734:(e,t,r)=>{"use strict";r.d(t,{W:()=>m});var n=r(32735),o=r(23481),a=r(49935),l=r(91693),i=r(83345),c=r(35223),s=r(14070),u=r(97291),f="settings.editLtiPlatformHeading",p=o.T.encloseNamespace(f);function m(e){return n.createElement(n.Fragment,null,n.createElement("div",{className:"d-flex align-items-center justify-content-between"},n.createElement("h1",{className:"h2"},e.name),n.createElement(l.h,{svgName:c.vn.Delete,appLink:e.deleteAppLink,className:"btn btn-outline-dark"},n.createElement(i.x,{namespace:f,phrase:"deletePlatform"}))),n.createElement("div",{className:"pb-3"},n.createElement(a.Oo,{breadcrumbs:[{name:p("settings"),appLink:{application:u.O.SETTINGS,action:s.e.Settings.HOME}},{name:p("ltiPlatforms"),appLink:{application:u.O.SETTINGS,action:s.e.Settings.LTI_PLATFORMS}},{name:e.name,active:!0}]})))}},28496:(e,t,r)=>{"use strict";r.d(t,{_:()=>o});var n=r(99940),o={getConsumers:function(){return{url:"{gateway}/v1/lti/consumers",key:"lti:consumers",normalize:!1}},getPlatforms:function(){return{url:"{gateway}/v1/lti/platforms",key:"lti:platforms",formatData:function(e){return e.map(function(e){return e.publicJwk=JSON.stringify(e.publicJwk),e})},normalize:!1}},getConsumer:function(e){return{url:"{gateway}/v1/lti/consumers/".concat(e),key:"lti:consumer:".concat(e),normalize:!1}},getPlatform:function(e){return{url:"{gateway}/v1/lti/platforms/".concat(e),key:"lti:platform:".concat(e),formatData:function(e){return e.publicJwk=JSON.stringify(e.publicJwk),e},normalize:!1}},createConsumer:function(e,t,r){return{url:"{gateway}/v1/lti/consumers",key:"create:consumer",type:n.k.POST,invalidationKeys:["lti:consumers"],data:e,success:t,error:r}},createPlatform:function(e,t,r){return{url:"{gateway}/v1/lti/platforms",key:"create:platform",type:n.k.POST,invalidationKeys:["lti:platforms"],data:e,success:t,error:r}},updateConsumer:function(e,t,r){return{url:"{gateway}/v1/lti/consumers/".concat(e.key),key:"update:consumer",type:n.k.PUT,invalidationKeys:["lti:consumers","lti:consumer:".concat(e.key)],data:e,success:t,error:r}},updatePlatform:function(e,t,r){return{url:"{gateway}/v1/lti/platforms/".concat(e.id),key:"update:platform",type:n.k.PUT,invalidationKeys:["lti:platforms","lti:platform:".concat(e.id)],data:e,success:t,error:r}},deleteConsumer:function(e,t,r){return{url:"{gateway}/v1/lti/consumers/".concat(e),key:"delete:consumer",type:n.k.DELETE,invalidationKeys:"lti:consumers",success:t,error:r}},deletePlatform:function(e,t,r){return{url:"{gateway}/v1/lti/platforms/".concat(e),key:"delete:platform",type:n.k.DELETE,invalidationKeys:"lti:platforms",success:t,error:r}}}},42384:(e,t,r)=>{"use strict";r.d(t,{P:()=>i});var n=r(32735),o=r(65858),a=r(37802);function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var i=function(){var e,t,r=(e=n.useState(void 0),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,l,i=[],c=!0,s=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=a.call(r)).done)&&(i.push(n.value),i.length!==t);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(s)throw o}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return l(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?l(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=r[0],c=r[1],s=(0,a.r)(o.LZ.Settings).hasLti;return n.useEffect(function(){s&&!0!==i?c(!0):s||!1===i||c(!1)},[s]),{canAccess:i}}},91969:(e,t,r)=>{"use strict";var n=r(47033),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var r,a,l,i,c,s,u=!1;t||(t={}),r=t.debug||!1;try{if(l=n(),i=document.createRange(),c=document.getSelection(),(s=document.createElement("span")).textContent=e,s.ariaHidden="true",s.style.all="unset",s.style.position="fixed",s.style.top=0,s.style.clip="rect(0, 0, 0, 0)",s.style.whiteSpace="pre",s.style.webkitUserSelect="text",s.style.MozUserSelect="text",s.style.msUserSelect="text",s.style.userSelect="text",s.addEventListener("copy",function(n){if(n.stopPropagation(),t.format)if(n.preventDefault(),void 0===n.clipboardData){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var a=o[t.format]||o.default;window.clipboardData.setData(a,e)}else n.clipboardData.clearData(),n.clipboardData.setData(t.format,e);t.onCopy&&(n.preventDefault(),t.onCopy(n.clipboardData))}),document.body.appendChild(s),i.selectNodeContents(s),c.addRange(i),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");u=!0}catch(n){r&&console.error("unable to copy using execCommand: ",n),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),u=!0}catch(n){r&&console.error("unable to copy using clipboardData: ",n),r&&console.error("falling back to prompt"),a=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(a,e)}}finally{c&&("function"==typeof c.removeRange?c.removeRange(i):c.removeAllRanges()),s&&document.body.removeChild(s),l()}return u}},44818:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var o=i(r(32735)),a=i(r(91969)),l=["text","onCopy","options","children"];function i(e){return e&&e.__esModule?e:{default:e}}function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach(function(t){d(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function u(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function f(e,t){return f=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},f(e,t)}function p(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function m(e){return m=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},m(e)}function d(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&f(e,t)}(b,e);var t,r,i,c,y=(i=b,c=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}(),function(){var e,t=m(i);if(c){var r=m(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===n(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return p(e)}(this,e)});function b(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,b);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return d(p(e=y.call.apply(y,[this].concat(r))),"onClick",function(t){var r=e.props,n=r.text,l=r.onCopy,i=r.children,c=r.options,s=o.default.Children.only(i),u=(0,a.default)(n,c);l&&l(n,u),s&&s.props&&"function"==typeof s.props.onClick&&s.props.onClick(t)}),e}return t=b,(r=[{key:"render",value:function(){var e=this.props,t=(e.text,e.onCopy,e.options,e.children),r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,l),n=o.default.Children.only(t);return o.default.cloneElement(n,s(s({},r),{},{onClick:this.onClick}))}}])&&u(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),b}(o.default.PureComponent);t.CopyToClipboard=y,d(y,"defaultProps",{onCopy:void 0,options:void 0})},59087:(e,t,r)=>{"use strict";var n=r(44818).CopyToClipboard;n.CopyToClipboard=n,e.exports=n},47033:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,r=[],n=0;n<e.rangeCount;n++)r.push(e.getRangeAt(n));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||r.forEach(function(t){e.addRange(t)}),t&&t.focus()}}}}]);
2
- //# sourceMappingURL=5002-7514146621-lite.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/5002-7514146621-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/copy-input/copy-input.scss","file:///app/packages/libs/shared/src/components/copy-input/CopyInput.tsx","file:///app/packages/libs/shared/src/components/forms/form-buttons/FormButtons.tsx","file:///app/packages/libs/shared/src/components/forms/form-checkbox/FormCheckbox.tsx","file:///app/packages/libs/shared/src/components/forms/form-field/CharacterCounter.tsx","file:///app/packages/libs/shared/src/components/forms/form-field/form-field.scss","file:///app/packages/libs/shared/src/components/forms/form-field/FormField.tsx","file:///app/packages/libs/shared/src/components/forms/form-wrapper/FormWrapper.tsx","file:///app/packages/libs/shared/src/errors/handlers/HttpErrorHandlers.ts","file:///app/packages/libs/shared/src/hooks/UseHandleObjectError.ts","file:///app/packages/libs/shared/src/utils/FormHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/lti/edit-lti-platform-heading/EditLtiPlatformHeading.tsx","file:///app/packages/projects/lite/src/apps/settings/flight-requests/LtiRequests.ts","file:///app/packages/projects/lite/src/apps/settings/hooks/useCanManageLti.ts","file:///app/node_modules/copy-to-clipboard/index.js","file:///app/node_modules/react-copy-to-clipboard/lib/Component.js","file:///app/node_modules/react-copy-to-clipboard/lib/index.js","file:///app/node_modules/toggle-selection/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"normal\":\"Q1UGv\",\"copyBtn\":\"J3fBx\",\"embedHtmlInput\":\"RcwAD\"};","import * as React from 'react';\nimport { Form } from 'react-bootstrap';\nimport { CopyToClipboard } from 'react-copy-to-clipboard';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { classNames } from 'libs/common/react/utils/ClassNameHelper';\n\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { IconButton } from '../icon-button/IconButton';\n\nimport styles from './copy-input.scss';\n\nconst namespace = 'shared.copyInput';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface CopyInputProps {\n value: string;\n label?: string;\n // Greyed means the input will be greyed out. Normal means it will appear like a normal input\n styling?: 'greyed' | 'normal' | 'normal-v2';\n onCopy?: () => void;\n copyText?: string;\n copiedText?: string;\n showCopiedText?: boolean;\n extraButtonClassNames?: string;\n textarea?: boolean;\n hasInputBg?: boolean;\n}\n\nCopyInput.defaultProps = {\n styling: 'normal'\n};\n\nexport function CopyInput(props: CopyInputProps): JSX.Element {\n const [ localShowCopiedText, setLocalShowCopiedText ] = React.useState(props.showCopiedText || false);\n\n function revertLocalShowCopiedText() {\n setTimeout(() => setLocalShowCopiedText(false), 2000);\n }\n\n function onCopy(): void {\n if (props.onCopy)\n props.onCopy();\n\n if (localShowCopiedText)\n return;\n\n setLocalShowCopiedText(true);\n revertLocalShowCopiedText();\n }\n\n React.useEffect(() => {\n if (!props.showCopiedText)\n return;\n \n revertLocalShowCopiedText();\n }, [props.showCopiedText]);\n\n function Button() {\n if (props.styling === 'normal-v2') {\n return (\n <CopyToClipboard text={props.value} onCopy={onCopy}>\n <IconButton\n role={localShowCopiedText ? 'status' : ''}\n svgName={localShowCopiedText ? cvSvgLibrary.Check : cvSvgLibrary.Copy}\n className={classNames(\n styles.copyBtn,\n 'btn py-0 text-nowrap',\n localShowCopiedText ? 'btn-success text-white' : 'btn-outline-dark border-secondary',\n props.extraButtonClassNames\n )}\n >\n {localShowCopiedText ?\n props.copiedText || getPhrase('copiedLink') :\n props.copyText || getPhrase('copy')\n }\n </IconButton>\n </CopyToClipboard>\n );\n }\n\n return (\n <CopyToClipboard text={props.value} onCopy={onCopy}>\n <button\n role={localShowCopiedText ? 'status' : ''}\n className={classNames(\n 'btn btn-outline-dark border border-secondary py-0 text-nowrap',\n props.extraButtonClassNames\n )}\n >\n {localShowCopiedText ?\n props.copiedText || getPhrase('copied') :\n props.copyText || getPhrase('copy')\n }\n </button>\n </CopyToClipboard>\n );\n }\n\n const input = (\n <div className={props.styling === 'normal-v2' ? 'd-flex flex-row gap-2 position-relative w-100' : 'input-group'}>\n {props.textarea\n ? <textarea\n className={classNames('form-control rounded w-100 h-100', !props.hasInputBg && styles.embedHtmlInput)}\n spellCheck={false}\n value={props.value}\n rows={7}\n readOnly\n />\n : <input\n type='text'\n autoComplete='off'\n className={classNames(\n 'form-control',\n props.styling === 'normal' && props.styling\n )}\n spellCheck={false}\n value={props.value}\n readOnly\n />\n }\n \n <Button />\n </div>\n );\n\n if (props.label) {\n return (\n <Form.Group className='form-group'>\n <Form.Label>{props.label}</Form.Label>\n {input}\n </Form.Group>\n );\n }\n\n return input;\n}\n","import * as React from 'react';\nimport { ButtonProps } from 'react-bootstrap';\nimport { useFormikContext } from 'formik';\n\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { FormSize } from 'libs/shared/components/forms/form-field/FormField';\nimport { SpinnerButton } from 'libs/shared/components/spinner-button/SpinnerButton';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { useCanSubmitForm } from 'libs/shared/hooks/UseCanSubmitForm';\n\nconst namespace = 'shared.formButtons';\n\ninterface FormButtonsProps {\n isNew?: boolean;\n submitText?: string;\n variant?: ButtonProps['variant'];\n size?: FormSize;\n className?: string;\n}\n\nexport function FormButtons<Values extends HashObject>(props: FormButtonsProps): JSX.Element {\n const formikProps = useFormikContext<Values>();\n\n const canSubmit = useCanSubmitForm(formikProps);\n\n return (\n <SpinnerButton\n variant={props.variant || 'primary'}\n type='submit'\n disabled={!canSubmit}\n size={props.size}\n className={props.className ? props.className : ''}\n showSpinner={formikProps.isSubmitting}\n >\n {props.submitText\n ? <>{props.submitText}</>\n : <Text namespace={namespace} phrase={props.isNew ? 'create' : 'save'} />}\n </SpinnerButton>\n );\n}\n","import * as React from 'react';\nimport { Form } from 'react-bootstrap';\nimport { FieldAttributes } from 'formik';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\n\nimport { FieldWrapper, FormFieldProps } from '../form-field/FormField';\n\n/**\n * Use this checkbox within Formik contexts\n */\nexport function FormCheckbox(props: FieldAttributes<FormFieldProps>): JSX.Element {\n const { label, checkboxLabelClassName, checkboxLabelFontWeight, className, ...fieldProps } = props;\n\n return (\n <Form.Group className='form-group'>\n <div className={`form-check ${className || ''}`}>\n <FieldWrapper className='form-check-input' {...fieldProps} />\n <Form.Label\n className={`form-check-label cursor-pointer ${checkboxLabelFontWeight === 'normal' ? 'fw-normal' : ''} \n ${checkboxLabelClassName}`}\n htmlFor={fieldProps.id}\n >\n {label}\n </Form.Label>\n {props.checkboxAppLink && props.checkboxAppLinkText && (\n <>\n <span>&nbsp;</span>\n <AppLink appLink={props.checkboxAppLink} className='info-link'>\n {props.checkboxAppLinkText}\n </AppLink>\n </>\n )}\n </div>\n </Form.Group>\n );\n}\n\n","import * as React from 'react';\nimport { useFormikContext } from 'formik';\n\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ObjectHelper } from 'libs/common/react/utils/ObjectHelper';\n\ninterface CharacterCounterProps<Values extends HashObject> {\n fieldName: keyof Values;\n limit: number;\n}\n\nexport function CharacterCounter<Values extends HashObject>(props: CharacterCounterProps<Values>): JSX.Element {\n const { values } = useFormikContext<Values>();\n\n const field = ObjectHelper.get(values, props.fieldName as string);\n\n if (typeof field !== 'string')\n return <></>;\n\n return (\n <div className='float-end text-secondary fw-normal'>\n {field.length}/{props.limit} characters\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"revealPassword\":\"jCfI0\",\"passwordInput\":\"RBJnf\",\"passwordContainer\":\"d78lK\",\"passwordContainerDisabled\":\"asbVo\",\"infoTooltip\":\"wzyOG\",\"spinner\":\"CycFx\"};","import * as React from 'react';\nimport { Form, Spinner } from 'react-bootstrap';\nimport { Placement } from 'react-bootstrap/esm/types';\nimport { ErrorMessage, Field, FieldAttributes, FieldProps, useFormikContext } from 'formik';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ObjectHelper } from 'libs/common/react/utils/ObjectHelper';\n\nimport { FormCheckbox } from 'libs/shared/components/forms/form-checkbox/FormCheckbox';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { FormHelper } from 'libs/shared/utils/FormHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { CharacterCounter } from './CharacterCounter';\n\nimport styles from './form-field.scss';\n\nconst namespace = 'shared.formField';\n\nexport type FormSize = 'lg' | 'sm';\n\n// If checkboxLabelFontWeight is not specified, it will be bold by default\nexport type CheckboxLabelFontWeight = 'normal' | 'bold'\n\nexport interface FormFieldProps {\n /**\n * The name prop MUST be the same as the attribute\n * name of the value that the field is bound to.\n */\n name: string;\n label?: string;\n description?: string;\n children?: any;\n showCharacterCounter?: boolean;\n showRequiredStar?: boolean;\n checkboxAppLink?: Core.AppLink;\n checkboxAppLinkText?: string;\n checkboxLabelClassName?: string;\n checkboxLabelFontWeight?: CheckboxLabelFontWeight\n infoTooltip?: string;\n infoTooltipPlacement?: Placement;\n infoText?: string;\n formSize?: FormSize;\n showOptionalLabel?: boolean;\n showLoadingSpinner?: boolean;\n formGroupClassname?: string;\n labelClassName?: string;\n}\n\nFieldWrapper.defaultProps = {\n autoComplete: 'off'\n};\n\nexport function FieldWrapper(\n props: FieldAttributes<FormFieldProps> & { className: string }\n): React.ReactElement {\n const { children, showLoadingSpinner, ...fieldProps } = props;\n\n const [ type, setType ] = React.useState(props.type);\n\n function onClickTogglePassword(): void {\n if (type === 'password')\n setType('text');\n else\n setType('password');\n }\n\n const resolvedChildren = FunctionHelper.isFunction(children)\n ? (f: FieldProps) => children(f)\n : React.Children.count(children) ? children : null;\n\n if (fieldProps.type !== 'password') {\n if (showLoadingSpinner) {\n return (\n <div className='position-relative'>\n <Field {...(ObjectHelper.omit(fieldProps, ['formSize']))}>\n {resolvedChildren}\n </Field>\n\n <div className={styles.spinner}>\n <Spinner animation='border' size='sm' />\n </div>\n </div>\n );\n }\n\n return (\n <Field {...(ObjectHelper.omit(fieldProps, ['formSize']))}>\n {resolvedChildren}\n </Field>\n );\n }\n\n let containerClassName = `position-relative ${styles.passwordContainer}`;\n\n if (fieldProps.className)\n containerClassName += ` ${fieldProps.className}`;\n\n if (fieldProps.disabled)\n containerClassName += ` ${styles.passwordContainerDisabled}`;\n\n /**\n * We need to wrap out input with a relatively positioned element in order to absolutely\n * position our visibility icon to reveal the password - Sha\n */\n return (\n <div className={containerClassName}>\n <Field\n {...(ObjectHelper.omit(fieldProps, [ 'formSize', 'type', 'className' ]))}\n type={type}\n className={`${styles.passwordInput} border-0 w-100 h-100 outline-none rounded`}\n >\n {resolvedChildren}\n </Field>\n {fieldProps.type === 'password' &&\n <SvgContainer\n svgName={type === 'password' ? cvSvgLibrary.VisibleOn : cvSvgLibrary.VisibleOff}\n className={`svg-container cursor-pointer ${styles.revealPassword}`}\n onClick={onClickTogglePassword}\n />\n }\n </div>\n );\n}\n\nFormField.defaultProps = {\n autoComplete: 'off',\n infoTooltipPlacement: 'top'\n};\n\nexport function FormField<Values extends HashObject>(props: FieldAttributes<FormFieldProps>): React.ReactElement {\n const {\n label,\n className,\n showCharacterCounter,\n showRequiredStar,\n infoTooltip,\n infoTooltipPlacement,\n infoText,\n formSize,\n showOptionalLabel,\n formGroupClassname,\n labelClassName: labelGlassName,\n ...fieldProps\n } = props;\n\n const { errors, touched } = useFormikContext<Values>();\n\n // This function overwrites the default `onChange` function whenever `props.disabled` is set.\n // This prevents users from \"undisabling\" form fields via inspect element, then editing the field.\n const disabledOnChange = () => {};\n\n if (fieldProps.type === 'checkbox') {\n const _props = ObjectHelper.omit(props, [ 'formSize', 'infoTooltipPlacement' ]);\n\n if (props.disabled)\n _props.onChange = disabledOnChange;\n\n return <FormCheckbox {..._props} />;\n }\n\n const fieldWrapperProps = {\n ...fieldProps,\n className: FormHelper.getCustomFormControlClassName(\n errors,\n touched,\n fieldProps.name,\n formSize,\n className,\n typeof props.as === 'string' ? props.as : null\n )\n };\n\n if (props.disabled)\n fieldWrapperProps.onChange = disabledOnChange;\n\n return (\n <Form.Group className={`form-group ${formGroupClassname}`}>\n {!!label && (\n <Form.Label htmlFor={fieldProps.id} className={`d-flex align-items-center ${labelGlassName}`}>\n {label}\n {showRequiredStar && <span className='text-danger'>*</span>}\n {infoTooltip && (\n <SvgContainer\n className={`svg-container text-secondary ${styles.infoTooltip}`}\n svgName={cvSvgLibrary.Info}\n title={infoTooltip}\n tooltipPlacement={infoTooltipPlacement}\n tooltipSpanHack\n />\n )}\n {showOptionalLabel && <span className='text-secondary'>&nbsp;<Text namespace={namespace} phrase='optional' /></span>}\n \n {!!showCharacterCounter && !!(fieldProps as React.HTMLProps<HTMLInputElement>).maxLength &&\n <div className='ms-auto'>\n <CharacterCounter\n fieldName={(fieldProps.name as keyof Values)}\n limit={(fieldProps as React.HTMLProps<HTMLInputElement>).maxLength}\n />\n </div>\n }\n </Form.Label>\n )}\n {props.description &&\n <p>\n {props.description}\n </p>\n }\n\n <FieldWrapper {...fieldWrapperProps} aria-errormessage={`${fieldProps.name}Error`} />\n\n {!!infoText &&\n <Form.Text className='text-secondary'>\n {infoText}\n </Form.Text>\n }\n\n <ErrorMessage name={fieldProps.name}>\n {(errorMessage: string) => <Form.Control.Feedback id={`${fieldProps.name}Error`} type='invalid' role='status'>{errorMessage}</Form.Control.Feedback>}\n </ErrorMessage>\n </Form.Group>\n );\n}","import * as React from 'react';\nimport { Formik, FormikConfig, FormikContextType, FormikErrors, FormikHelpers, FormikProps, FormikValues, useFormikContext } from 'formik';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ObjectHelper } from 'libs/common/react/utils/ObjectHelper';\n\n/**\n * Note: This currently doesn't support arrays, but the need for arrays as initial\n * form data has not yet come up\n */\nfunction omitNullInitialValues<Values extends FormikValues>(initialValues: Values): Values {\n if (!initialValues)\n return {} as Values;\n\n const values = ObjectHelper.deepClone(initialValues);\n\n function omitChildValues(child: Values): void {\n Object.keys(values).forEach((key: keyof Values) => {\n if (!values.hasOwnProperty(key))\n return;\n \n if (ObjectHelper.isObject(child[key]))\n omitChildValues(child[key]);\n else if (values[key] === null)\n delete values[key];\n });\n }\n\n omitChildValues(values);\n return values;\n}\n\n// Omit attributes from FormikConfig that are defined in FormWrapperProps.\ntype ModifiedFormikConfig<Values extends FormikValues> = Omit<FormikConfig<Values>, 'initialValues' | 'onSubmit'>;\n\ninterface InitialStatus {\n allowInitialSubmit: boolean;\n}\n\nexport type FormSubmissionOptions<FormValues = FormikValues> = {\n reset?: boolean;\n errors?: FormikErrors<FormValues>;\n};\n\ninterface FormWrapperProps<FormValues extends FormikValues, ApiValues extends FormikValues> {\n initialValues: Partial<FormValues | ApiValues>;\n onSubmit: (data: FormValues, onDone: (options?: FormSubmissionOptions<FormValues>) => void) => void;\n castInitialValues?: boolean; // cast to validationSchema\n castValuesOnSubmit?: boolean; // cast to validationSchema\n allowInitialSubmit?: boolean; // if true, useCanSubmitForm will allow submit without any user changes.\n}\n\nFormWrapper.defaultProps = {\n castInitialValues: true,\n castValuesOnSubmit: true\n};\n\nexport function FormWrapper<\n FormValues extends FormikValues = FormikValues,\n ApiValues extends FormikValues = FormValues,\n ExtraProps = HashObject\n>(props: ModifiedFormikConfig<FormValues> & ExtraProps & FormWrapperProps<FormValues, ApiValues>): JSX.Element {\n const { castInitialValues, castValuesOnSubmit, initialValues, onSubmit, ...formikProps } = props;\n\n /**\n * If castInitialValues is true, cast initialValues to the validationSchema.\n * This will ensure that any data fetched from the api conforms to the expected form data shape.\n */\n const formattedInitialValues: FormValues = castInitialValues && props.validationSchema\n ? props.validationSchema.cast(omitNullInitialValues(initialValues))\n : initialValues;\n\n const onSubmitHandler = (\n values: FormValues,\n { setSubmitting, resetForm, setFieldError }: FormikHelpers<FormValues>\n ) => {\n /**\n * validationSchema.cast will coerce the values to the types defined in validationSchema.\n * This is useful for trimming inputs:\n * e.g. if a value field has type Yup.string().trim(), it will be automatically trimmed.\n */\n const formattedData = castValuesOnSubmit && props.validationSchema\n ? props.validationSchema.cast(values)\n : values;\n\n onSubmit(formattedData, (options: FormSubmissionOptions<FormValues> = {}) => {\n options.reset && resetForm();\n\n if (options.errors) {\n for (const [ key, value ] of Object.entries(options.errors)) {\n setFieldError(key, value);\n }\n }\n\n setSubmitting(false);\n });\n };\n\n const initialStatus: InitialStatus = {\n allowInitialSubmit: props.allowInitialSubmit\n };\n\n return (\n <Formik<FormValues, ExtraProps>\n enableReinitialize\n {...(formikProps as ModifiedFormikConfig<FormValues> & ExtraProps)}\n initialValues={formattedInitialValues}\n onSubmit={onSubmitHandler}\n initialStatus={initialStatus}\n >\n {FunctionHelper.isFunction(props.children)\n ? (f: FormikProps<FormValues>) => (props.children as (f: FormikProps<FormValues>) => React.ReactNode)(f)\n : React.Children.count(props.children) ? props.children : null\n }\n </Formik>\n );\n}\n\nexport function useFormikContextWrapper<T>(): FormikContextType<T> {\n return useFormikContext<T>();\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 internalServerError?: 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 internalServerError: 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.InternalServer) {\n if (!ignoreMap.internalServerError)\n Core.ErrorHelper.throw(new UnspecifiedError());\n return;\n }\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 { FormikErrors, FormikTouched, getIn } from 'formik';\n\nimport { FormSize } from 'libs/shared/components/forms/form-field/FormField';\n\nfunction getTypeSize(type: string, size: FormSize) {\n let className = '';\n\n switch (type) {\n case 'select':\n className = 'form-select';\n break;\n default:\n className = 'form-control';\n }\n\n if (size === 'sm')\n className += ` ${className}-sm`;\n\n if (size === 'lg')\n className += ` ${className}-lg`;\n\n return className;\n}\n\nexport const FormHelper = {\n getCustomFormControlClassName<T>(\n errors: FormikErrors<T>,\n touched: FormikTouched<T>,\n attribute: string,\n size?: FormSize,\n additionalClassName?: string,\n type?: string\n ): string {\n let className = '';\n\n className = getTypeSize(type, size);\n\n // Using getIn as it supports dot notation\n if (getIn(touched, attribute) && getIn(errors, attribute))\n className += ' is-invalid';\n\n if (additionalClassName)\n className += ` ${additionalClassName}`;\n\n return className;\n }\n};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'settings.editLtiPlatformHeading';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface EditLtiPlatformHeadingProps {\n name: string;\n deleteAppLink: Core.AppLink;\n}\n\nexport function EditLtiPlatformHeading(props: EditLtiPlatformHeadingProps): JSX.Element {\n return (\n <>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.name}</h1>\n \n <IconButton svgName={cvSvgLibrary.Delete} appLink={props.deleteAppLink} className='btn btn-outline-dark'>\n <Text namespace={namespace} phrase='deletePlatform' />\n </IconButton>\n </div>\n\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: getPhrase('settings'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n {\n name: getPhrase('ltiPlatforms'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.LTI_PLATFORMS\n }\n },\n { name: props.name, active: true }\n ]}\n />\n </div>\n </>\n );\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { Flight } from 'libs/common/flight';\n\nimport { LtiConsumer } from 'apps/settings/interfaces/lti/LtiConsumer';\nimport { LtiPlatform } from 'apps/settings/interfaces/lti/LtiPlatform';\nimport { CreateLtiConsumerRequest } from 'apps/settings/interfaces/lti/requests/CreateLtiConsumerRequest';\nimport { CreateLtiPlatformRequest } from 'apps/settings/interfaces/lti/requests/CreateLtiPlatformRequest';\nimport { UpdateLtiConsumerRequest } from 'apps/settings/interfaces/lti/requests/UpdateLtiConsumerRequest';\n\nexport const LtiRequests = {\n getConsumers(): Flight.Request {\n return {\n url: `{gateway}/v1/lti/consumers`,\n key: 'lti:consumers',\n normalize: false\n };\n },\n\n getPlatforms(): Flight.Request {\n return {\n url: `{gateway}/v1/lti/platforms`,\n key: 'lti:platforms',\n formatData: (data: LtiPlatform[]) => {\n return data.map(platform => {\n platform.publicJwk = JSON.stringify(platform.publicJwk);\n return platform;\n });\n },\n normalize: false\n };\n },\n\n getConsumer(consumerKey: string): Flight.Request {\n return {\n url: `{gateway}/v1/lti/consumers/${consumerKey}`,\n key: `lti:consumer:${consumerKey}`,\n normalize: false\n };\n },\n\n getPlatform(platformId: string): Flight.Request {\n return {\n url: `{gateway}/v1/lti/platforms/${platformId}`,\n key: `lti:platform:${platformId}`,\n formatData: (platform: LtiPlatform) => {\n platform.publicJwk = JSON.stringify(platform.publicJwk);\n return platform;\n },\n normalize: false\n };\n },\n\n createConsumer(\n data: CreateLtiConsumerRequest,\n success?: (consumer: LtiConsumer) => void,\n error?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/lti/consumers`,\n key: 'create:consumer',\n type: HttpVerbs.POST,\n invalidationKeys: ['lti:consumers'],\n data,\n success,\n error\n };\n },\n\n createPlatform(\n data: CreateLtiPlatformRequest,\n success?: (platform: LtiPlatform) => void,\n error?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/lti/platforms`,\n key: 'create:platform',\n type: HttpVerbs.POST,\n invalidationKeys: ['lti:platforms'],\n data,\n success,\n error\n };\n },\n\n updateConsumer(\n data: UpdateLtiConsumerRequest,\n success?: () => void,\n error?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/lti/consumers/${data.key}`,\n key: 'update:consumer',\n type: HttpVerbs.PUT,\n invalidationKeys: [ `lti:consumers`, `lti:consumer:${data.key}` ],\n data,\n success,\n error\n };\n },\n\n updatePlatform(\n data: LtiPlatform,\n success?: () => void,\n error?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/lti/platforms/${data.id}`,\n key: 'update:platform',\n type: HttpVerbs.PUT,\n invalidationKeys: [ `lti:platforms`, `lti:platform:${data.id}` ],\n data,\n success,\n error\n };\n },\n\n deleteConsumer(\n consumerKey: string,\n success?: () => void,\n error?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/lti/consumers/${consumerKey}`,\n key: 'delete:consumer',\n type: HttpVerbs.DELETE,\n invalidationKeys: 'lti:consumers',\n success,\n error\n };\n },\n\n deletePlatform(\n platformId: string,\n success?: () => void,\n error?: () => void\n ): Flight.Request {\n return {\n url: `{gateway}/v1/lti/platforms/${platformId}`,\n key: 'delete:platform',\n type: HttpVerbs.DELETE,\n invalidationKeys: 'lti:platforms',\n success,\n error\n };\n }\n};","import React from 'react';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { useSettings } from 'libs/shared/hooks/useSettings';\n\n/**\n * Checks if the user can access LTI based on if they have the LTI domain option enabled\n * on their customer.\n */\nexport const useCanManageLti = () => {\n const [ canAccess, setCanAccess ] = React.useState<boolean>(undefined);\n\n const { hasLti } = useSettings(LocationContext.Settings);\n\n React.useEffect(() => {\n if (hasLti && canAccess !== true) {\n setCanAccess(true);\n return;\n }\n\n if (!hasLti && canAccess !== false)\n setCanAccess(false);\n }, [hasLti]);\n\n return { canAccess };\n};","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["getPhrase","LanguageService","CopyInput","props","showCopiedText","localShowCopiedText","setLocalShowCopiedText","revertLocalShowCopiedText","setTimeout","onCopy","input","className","styling","textarea","hasInputBg","spellCheck","value","rows","readOnly","type","autoComplete","CopyToClipboard","text","IconButton","role","svgName","extraButtonClassNames","copiedText","copyText","label","Form","defaultProps","namespace","FormButtons","formikProps","canSubmit","variant","disabled","size","showSpinner","isSubmitting","submitText","phrase","isNew","FormCheckbox","checkboxLabelClassName","checkboxLabelFontWeight","fieldProps","FieldWrapper","htmlFor","id","checkboxAppLink","checkboxAppLinkText","AppLink","appLink","CharacterCounter","values","field","ObjectHelper","fieldName","length","limit","children","showLoadingSpinner","setType","resolvedChildren","FunctionHelper","f","Spinner","animation","containerClassName","SvgContainer","onClick","FormField","showCharacterCounter","showRequiredStar","infoTooltip","infoTooltipPlacement","infoText","formSize","showOptionalLabel","formGroupClassname","labelGlassName","labelClassName","errors","touched","disabledOnChange","_props","onChange","fieldWrapperProps","FormHelper","name","as","title","tooltipPlacement","tooltipSpanHack","Text","maxLength","description","errorMessage","FormWrapper","castInitialValues","castValuesOnSubmit","initialValues","onSubmit","formattedInitialValues","validationSchema","cast","omitChildValues","child","Object","keys","forEach","key","hasOwnProperty","omitNullInitialValues","initialStatus","allowInitialSubmit","enableReinitialize","setSubmitting","resetForm","setFieldError","formattedData","options","reset","entries","useFormikContextWrapper","defaultErrors","notFound","forbidden","rating","yearLevel","region","privacy","badRequest","internalServerError","handleHttpError","info","customErrorMap","ignoreMap","statusCode","status","errorMap","generateCacheKey","flightObjs","map","obj","join","useHandleObjectError","_flightObjs","customErrors","ignoreErrors","Array","isArray","useEffect","getCustomFormControlClassName","attribute","additionalClassName","getTypeSize","EditLtiPlatformHeading","deleteAppLink","breadcrumbs","application","action","active","LtiRequests","getConsumers","url","normalize","getPlatforms","formatData","data","platform","publicJwk","JSON","stringify","getConsumer","consumerKey","getPlatform","platformId","createConsumer","success","error","invalidationKeys","createPlatform","updateConsumer","updatePlatform","deleteConsumer","deletePlatform","useCanManageLti","undefined","canAccess","setCanAccess","hasLti","deselectCurrent","clipboardToIE11Formatting","module","exports","debug","message","reselectPrevious","range","selection","mark","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","position","top","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","e","stopPropagation","format","preventDefault","clipboardData","console","warn","window","clearData","setData","body","appendChild","selectNodeContents","addRange","execCommand","Error","err","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","Symbol","iterator","constructor","prototype","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_assertThisInitialized","self","ReferenceError","_getPrototypeOf","getPrototypeOf","_React$PureComponent","subClass","superClass","TypeError","create","_inherits","Constructor","protoProps","Derived","hasNativeReflectConstruct","_super","Reflect","construct","sham","Proxy","Boolean","valueOf","call","_isNativeReflectConstruct","result","Super","NewTarget","this","_possibleConstructorReturn","_this","instance","_classCallCheck","_len","args","_key","concat","event","_this$props","elem","Children","only","_this$props2","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_objectWithoutProperties","cloneElement","PureComponent","rangeCount","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- (self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[5270],{66257:(e,t,r)=>{"use strict";r.d(t,{k:()=>d});var n=r(32735),o=r(80130),a=r(59087),l=r(23481),c=r(31453),i=r(35223),u=r(91693);const s={normal:"Q1UGv",copyBtn:"J3fBx",embedHtmlInput:"RcwAD"};function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var f=l.T.encloseNamespace("shared.copyInput");function d(e){var t,r,l=(t=n.useState(e.showCopiedText||!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,l,c=[],i=!0,u=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;i=!1}else for(;!(i=(n=a.call(r)).done)&&(c.push(n.value),c.length!==t);i=!0);}catch(e){u=!0,o=e}finally{try{if(!i&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(u)throw o}}return c}}(t,r)||function(e,t){if(e){if("string"==typeof e)return p(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?p(e,t):void 0}}(t,r)||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.")}()),d=l[0],m=l[1];function y(){setTimeout(function(){return m(!1)},2e3)}function b(){e.onCopy&&e.onCopy(),d||(m(!0),y())}n.useEffect(function(){e.showCopiedText&&y()},[e.showCopiedText]);var v=n.createElement("div",{className:"normal-v2"===e.styling?"d-flex flex-row gap-2 position-relative w-100":"input-group"},e.textarea?n.createElement("textarea",{className:(0,c.A)("form-control rounded w-100 h-100",!e.hasInputBg&&s.embedHtmlInput),spellCheck:!1,value:e.value,rows:7,readOnly:!0}):n.createElement("input",{type:"text",autoComplete:"off",className:(0,c.A)("form-control","normal"===e.styling&&e.styling),spellCheck:!1,value:e.value,readOnly:!0}),n.createElement(function(){return"normal-v2"===e.styling?n.createElement(a.CopyToClipboard,{text:e.value,onCopy:b},n.createElement(u.h,{role:d?"status":"",svgName:d?i.vn.Check:i.vn.Copy,className:(0,c.A)(s.copyBtn,"btn py-0 text-nowrap",d?"btn-success text-white":"btn-outline-dark border-secondary",e.extraButtonClassNames)},d?e.copiedText||f("copiedLink"):e.copyText||f("copy"))):n.createElement(a.CopyToClipboard,{text:e.value,onCopy:b},n.createElement("button",{role:d?"status":"",className:(0,c.A)("btn btn-outline-dark border border-secondary py-0 text-nowrap",e.extraButtonClassNames)},d?e.copiedText||f("copied"):e.copyText||f("copy")))},null));return e.label?n.createElement(o.Z.Group,{className:"form-group"},n.createElement(o.Z.Label,null,e.label),v):v}d.defaultProps={styling:"normal"}},81803:(e,t,r)=>{"use strict";r.d(t,{d:()=>m});var n=r(32735),o=r(81886),a=r(23481),l=r(49935),c=r(22902),i=r(14070),u=r(97291),s=r(96368);function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var f="settings.settingsLayout",d=function(e){var t=(0,c.T)().hasPermissions,r=(0,s.e)();if(e)return t(e);var n=o.Q.C$.getCurrentAppLink();return n.application!==u.O.SETTINGS||r.some(function(e){return e.modules.some(function(e){return"appLink"in e&&e.appLink.action===n.action})})};function m(e){var t,r=d(e.requiredPermissions);if(n.useEffect(function(){r||o.Q.C$.trigger({application:u.O.SETTINGS,action:i.e.Settings.HOME},{replace:!0})},[r]),!r)return n.createElement(n.Fragment,null);var c,s=e.breadcrumbs.map(function(t,r){return{name:t,appLink:{application:u.O.SETTINGS,action:i.e.Settings.HOME},active:r===e.breadcrumbs.length-1}});return n.createElement("div",{className:"px-3"},n.createElement("div",{className:"d-flex align-items-center justify-content-between"},n.createElement("h1",{className:"h2"},e.heading),null===(t=e.headingButton)||void 0===t?void 0:t.call(e)),n.createElement("div",{className:"pb-3"},n.createElement(l.Oo,{breadcrumbs:[{name:a.T.getPhrase(f,"settingsBreadcrumb"),appLink:{application:u.O.SETTINGS,action:i.e.Settings.HOME}}].concat((c=s,function(e){if(Array.isArray(e))return p(e)}(c)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(c)||function(e,t){if(e){if("string"==typeof e)return p(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?p(e,t):void 0}}(c)||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.")}()))})),e.description&&n.createElement(n.Fragment,null,n.createElement("p",null,e.description),n.createElement("hr",null)),e.children)}},5270:(e,t,r)=>{"use strict";r.r(t),r.d(t,{RssFeedView:()=>g});var n=r(32735),o=r(23481),a=r(97395),l=r(20354),c=r(66257),i=r(83345),u=r(99705),s=r(39151),p=r(1666),f=r(31949),d=r(79612),m=r(12778),y=r(81803);const b={schoolId:"a8qc7",feedUrl:"U0FAn"};var v="settings.rssFeed",h=o.T.encloseNamespace(v);function g(){(0,d.M)({title:h("pageTitle")});var e=l.a.useBasicFetch(f.N.currentUser()),t=l.a.useBasicFetch(e.data&&p.h.customer(e.data.customerId)),r=l.a.useBasicFetch(s.L.config());if(!(e.hasCompleted&&t.hasCompleted&&r.hasCompleted))return n.createElement(n.Fragment,null);var o=a._.urlBuilder(a._.safeUrlConcat(r.data.onlineUrl,"/feed"),{schoolId:t.data.customerGuid});return n.createElement(y.d,{heading:h("heading"),breadcrumbs:[h("heading")]},n.createElement("p",null,n.createElement(i.x,{namespace:v,phrase:"info"})," ",n.createElement("a",{href:m.o.getLiteArticle(u.b.RssFeed),target:"_blank",className:"text-info btn-link"},n.createElement(i.x,{namespace:v,phrase:"learnMore"}))),n.createElement("div",{className:b.schoolId},n.createElement(c.k,{value:t.data.customerGuid,copyText:h("copy"),label:h("schoolId")})),n.createElement("div",{className:b.feedUrl},n.createElement(c.k,{value:o,label:h("feedUrl")})))}},91969:(e,t,r)=>{"use strict";var n=r(47033),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var r,a,l,c,i,u,s=!1;t||(t={}),r=t.debug||!1;try{if(l=n(),c=document.createRange(),i=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",function(n){if(n.stopPropagation(),t.format)if(n.preventDefault(),void 0===n.clipboardData){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var a=o[t.format]||o.default;window.clipboardData.setData(a,e)}else n.clipboardData.clearData(),n.clipboardData.setData(t.format,e);t.onCopy&&(n.preventDefault(),t.onCopy(n.clipboardData))}),document.body.appendChild(u),c.selectNodeContents(u),i.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");s=!0}catch(n){r&&console.error("unable to copy using execCommand: ",n),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),s=!0}catch(n){r&&console.error("unable to copy using clipboardData: ",n),r&&console.error("falling back to prompt"),a=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(a,e)}}finally{i&&("function"==typeof i.removeRange?i.removeRange(c):i.removeAllRanges()),u&&document.body.removeChild(u),l()}return s}},44818:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var o=c(r(32735)),a=c(r(91969)),l=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function s(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function p(e,t){return p=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},p(e,t)}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function d(e){return d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},d(e)}function m(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var y=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&p(e,t)}(b,e);var t,r,c,i,y=(c=b,i=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}(),function(){var e,t=d(c);if(i){var r=d(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===n(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return f(e)}(this,e)});function b(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,b);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return m(f(e=y.call.apply(y,[this].concat(r))),"onClick",function(t){var r=e.props,n=r.text,l=r.onCopy,c=r.children,i=r.options,u=o.default.Children.only(c),s=(0,a.default)(n,i);l&&l(n,s),u&&u.props&&"function"==typeof u.props.onClick&&u.props.onClick(t)}),e}return t=b,(r=[{key:"render",value:function(){var e=this.props,t=(e.text,e.onCopy,e.options,e.children),r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,l),n=o.default.Children.only(t);return o.default.cloneElement(n,u(u({},r),{},{onClick:this.onClick}))}}])&&s(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),b}(o.default.PureComponent);t.CopyToClipboard=y,m(y,"defaultProps",{onCopy:void 0,options:void 0})},59087:(e,t,r)=>{"use strict";var n=r(44818).CopyToClipboard;n.CopyToClipboard=n,e.exports=n},47033:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,r=[],n=0;n<e.rangeCount;n++)r.push(e.getRangeAt(n));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||r.forEach(function(t){e.addRange(t)}),t&&t.focus()}}}}]);
2
- //# sourceMappingURL=5270-d407e1ae84-lite.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/5270-d407e1ae84-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/copy-input/copy-input.scss","file:///app/packages/libs/shared/src/components/copy-input/CopyInput.tsx","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/views/rss-feed/rss-feed.scss","file:///app/packages/projects/lite/src/apps/settings/views/rss-feed/RssFeedView.tsx","file:///app/node_modules/copy-to-clipboard/index.js","file:///app/node_modules/react-copy-to-clipboard/lib/Component.js","file:///app/node_modules/react-copy-to-clipboard/lib/index.js","file:///app/node_modules/toggle-selection/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"normal\":\"Q1UGv\",\"copyBtn\":\"J3fBx\",\"embedHtmlInput\":\"RcwAD\"};","import * as React from 'react';\nimport { Form } from 'react-bootstrap';\nimport { CopyToClipboard } from 'react-copy-to-clipboard';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { classNames } from 'libs/common/react/utils/ClassNameHelper';\n\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { IconButton } from '../icon-button/IconButton';\n\nimport styles from './copy-input.scss';\n\nconst namespace = 'shared.copyInput';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface CopyInputProps {\n value: string;\n label?: string;\n // Greyed means the input will be greyed out. Normal means it will appear like a normal input\n styling?: 'greyed' | 'normal' | 'normal-v2';\n onCopy?: () => void;\n copyText?: string;\n copiedText?: string;\n showCopiedText?: boolean;\n extraButtonClassNames?: string;\n textarea?: boolean;\n hasInputBg?: boolean;\n}\n\nCopyInput.defaultProps = {\n styling: 'normal'\n};\n\nexport function CopyInput(props: CopyInputProps): JSX.Element {\n const [ localShowCopiedText, setLocalShowCopiedText ] = React.useState(props.showCopiedText || false);\n\n function revertLocalShowCopiedText() {\n setTimeout(() => setLocalShowCopiedText(false), 2000);\n }\n\n function onCopy(): void {\n if (props.onCopy)\n props.onCopy();\n\n if (localShowCopiedText)\n return;\n\n setLocalShowCopiedText(true);\n revertLocalShowCopiedText();\n }\n\n React.useEffect(() => {\n if (!props.showCopiedText)\n return;\n \n revertLocalShowCopiedText();\n }, [props.showCopiedText]);\n\n function Button() {\n if (props.styling === 'normal-v2') {\n return (\n <CopyToClipboard text={props.value} onCopy={onCopy}>\n <IconButton\n role={localShowCopiedText ? 'status' : ''}\n svgName={localShowCopiedText ? cvSvgLibrary.Check : cvSvgLibrary.Copy}\n className={classNames(\n styles.copyBtn,\n 'btn py-0 text-nowrap',\n localShowCopiedText ? 'btn-success text-white' : 'btn-outline-dark border-secondary',\n props.extraButtonClassNames\n )}\n >\n {localShowCopiedText ?\n props.copiedText || getPhrase('copiedLink') :\n props.copyText || getPhrase('copy')\n }\n </IconButton>\n </CopyToClipboard>\n );\n }\n\n return (\n <CopyToClipboard text={props.value} onCopy={onCopy}>\n <button\n role={localShowCopiedText ? 'status' : ''}\n className={classNames(\n 'btn btn-outline-dark border border-secondary py-0 text-nowrap',\n props.extraButtonClassNames\n )}\n >\n {localShowCopiedText ?\n props.copiedText || getPhrase('copied') :\n props.copyText || getPhrase('copy')\n }\n </button>\n </CopyToClipboard>\n );\n }\n\n const input = (\n <div className={props.styling === 'normal-v2' ? 'd-flex flex-row gap-2 position-relative w-100' : 'input-group'}>\n {props.textarea\n ? <textarea\n className={classNames('form-control rounded w-100 h-100', !props.hasInputBg && styles.embedHtmlInput)}\n spellCheck={false}\n value={props.value}\n rows={7}\n readOnly\n />\n : <input\n type='text'\n autoComplete='off'\n className={classNames(\n 'form-control',\n props.styling === 'normal' && props.styling\n )}\n spellCheck={false}\n value={props.value}\n readOnly\n />\n }\n \n <Button />\n </div>\n );\n\n if (props.label) {\n return (\n <Form.Group className='form-group'>\n <Form.Label>{props.label}</Form.Label>\n {input}\n </Form.Group>\n );\n }\n\n return input;\n}\n","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"schoolId\":\"a8qc7\",\"feedUrl\":\"U0FAn\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/react/index';\n\nimport { CopyInput } from 'libs/shared/components/copy-input/CopyInput';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config, CurrentUser, Customer } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\n\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\n\nimport styles from './rss-feed.scss';\n\nconst namespace = 'settings.rssFeed';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function RssFeedView(): JSX.Element {\n useSetPageMetadata({ title: getPhrase('pageTitle') });\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const customer = Flight.useBasicFetch<Customer>(\n currentUser.data && CustomerRequests.customer(currentUser.data.customerId)\n );\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const dataLoded = (\n currentUser.hasCompleted &&\n customer.hasCompleted &&\n config.hasCompleted\n );\n\n if (!dataLoded)\n return <></>;\n\n const feedUrl = UrlHelper.urlBuilder(\n UrlHelper.safeUrlConcat(config.data.onlineUrl, '/feed'),\n { schoolId: customer.data.customerGuid }\n );\n\n return (\n <SettingsLayout\n heading={getPhrase('heading')}\n breadcrumbs={[getPhrase('heading')]}\n >\n <p>\n <Text namespace={namespace} phrase='info' />&nbsp;\n <a href={ArticleHelper.getLiteArticle(LiteSupportArticle.RssFeed)} target='_blank' className='text-info btn-link'>\n <Text namespace={namespace} phrase='learnMore' />\n </a>\n </p>\n\n <div className={styles.schoolId}>\n <CopyInput value={customer.data.customerGuid} copyText={getPhrase('copy')} label={getPhrase('schoolId')} />\n </div>\n <div className={styles.feedUrl}>\n <CopyInput value={feedUrl} label={getPhrase('feedUrl')} />\n </div>\n </SettingsLayout>\n );\n}","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["getPhrase","LanguageService","CopyInput","props","showCopiedText","localShowCopiedText","setLocalShowCopiedText","revertLocalShowCopiedText","setTimeout","onCopy","input","className","styling","textarea","hasInputBg","spellCheck","value","rows","readOnly","type","autoComplete","CopyToClipboard","text","IconButton","role","svgName","extraButtonClassNames","copiedText","copyText","label","Form","defaultProps","namespace","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","application","some","group","modules","settingsModule","appLink","action","SettingsLayout","canAccess","replace","breadcrumbs","map","name","i","active","length","heading","headingButton","description","children","RssFeedView","useSetPageMetadata","title","currentUser","UserRequests","customer","data","CustomerRequests","customerId","config","ConfigRequests","hasCompleted","feedUrl","UrlHelper","onlineUrl","schoolId","customerGuid","Text","phrase","href","ArticleHelper","target","deselectCurrent","clipboardToIE11Formatting","module","exports","options","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","position","top","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","e","stopPropagation","format","preventDefault","clipboardData","console","warn","window","clearData","setData","body","appendChild","selectNodeContents","addRange","execCommand","Error","err","error","copyKey","test","navigator","userAgent","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","_defineProperties","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_assertThisInitialized","self","ReferenceError","_getPrototypeOf","getPrototypeOf","_React$PureComponent","subClass","superClass","TypeError","create","_inherits","Constructor","protoProps","Derived","hasNativeReflectConstruct","_super","Reflect","construct","sham","Proxy","Boolean","valueOf","call","_isNativeReflectConstruct","result","Super","NewTarget","this","_possibleConstructorReturn","_this","instance","_classCallCheck","_len","args","Array","_key","concat","event","_this$props","elem","Children","only","onClick","_this$props2","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_objectWithoutProperties","cloneElement","PureComponent","undefined","rangeCount","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[5579],{41196:(e,t,a)=>{a.d(t,{W:()=>o});var r=a(20354),n=a(93479),i=a(20768),s=a(31949);function o(e,t,a){var o,l=r.a.useBasicFetch(s.N.currentUser()),c=r.a.useBasicFetch(!!e&&i.b.interactiveMetadata(e)),u=r.a.useBasicFetch(!!(null===(o=c.data)||void 0===o?void 0:o.interactiveId)&&i.b.interactive(c.data.interactiveId)),d=!!l.data&&!!u.data;return r.a.useBasicFetch(d&&n.I.interactiveResultSet(c.data.interactiveId,c.data.id,l.data,t,a))}},94644:(e,t,a)=>{a.d(t,{r:()=>u});var r=a(50242),n=a(81886),i=a(67058),s=a(14553),o=a(49267),l=a(49075),c={notFound:i.d,forbidden:{rating:s.q,yearLevel:s.q,region:o.a,privacy:s.q},badRequest:l._,internalServerError:l._};function u(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e){var i;i="number"==typeof e?e:e.status;var s=Object.assign(Object.assign({},c),t);i&&n.Q.Ry.isStatusCodeError(i)&&(i!==r.o.InternalServer?i!==r.o.NotFound?i!==r.o.Forbidden?a.badRequest||n.Q.Ry.throw(new s.badRequest):a.forbidden||n.Q.Ry.throw(new s.forbidden.privacy):a.notFound||n.Q.Ry.throw(new s.notFound):a.internalServerError||n.Q.Ry.throw(new l._))}}},39902:(e,t,a)=>{a.d(t,{FN:()=>f,SW:()=>v,fh:()=>h});var r=a(32735),n=a(20354),i=a(75896);function s(e){return function(e){if(Array.isArray(e))return l(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||o(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){if(e){if("string"==typeof e)return l(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?l(e,t):void 0}}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function u(e,t,a){return(t=function(e){var t=function(e){if("object"!=c(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,"string");if("object"!=c(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==c(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}var d=function(e,t){var a={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(a[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(r=Object.getOwnPropertySymbols(e);n<r.length;n++)t.indexOf(r[n])<0&&Object.prototype.propertyIsEnumerable.call(e,r[n])&&(a[r[n]]=e[r[n]])}return a},m=50;function h(e,t){var a=i.m.chunk(e,m).map(function(e){return t(i.m.uniq(e))}),r=n.a.useBasicFetchAll(a),s=i.m.flatten(r.data),o=r.data.length?s.reduce(function(e,t){return Object.assign(Object.assign({},e),u({},t.id,t))},{}):null;return{itemsArr:s,items:o,isFetching:r.isFetching,hasCompleted:r.hasCompleted}}function f(e,t,a){var n=null!=a?a:function(e){return"object"===c(e)?e.id:e},i=v({getRequest:t,_getKey:a}),s=i.fetchItems,o=d(i,["fetchItems"]);return r.useEffect(function(){(null==e?void 0:e.length)&&s(e)},[null==e?void 0:e.map(n).join(",")]),o}function v(e){var t,a,l,d,h,f=null!==(t=e._getKey)&&void 0!==t?t:function(e){return"object"===c(e)?e.id:e},v=r.useRef(new Set),g=(d=r.useState([]),h=2,function(e){if(Array.isArray(e))return e}(d)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(d,h)||o(d,h)||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.")}()),p=g[0],y=g[1],b=n.a.useBasicFetchAll(p),I=i.m.flatten(b.data),S=b.data.length?I.reduce(function(e,t){return Object.assign(Object.assign({},e),u({},f(t),t))},{}):null;return{hasFirstRequestCompleted:!!(null===(l=null===(a=b.responses)||void 0===a?void 0:a[0])||void 0===l?void 0:l.hasCompleted),itemsArr:I,items:S,isFetching:b.isFetching,fetchItems:function(t){if(null==t?void 0:t.length){var a=[];t.forEach(function(e){var t=f(e);v.current.has(t)||(a.push(e),v.current.add(t))}),a.length&&y(function(t){return[].concat(s(t),s(i.m.chunk(a,m).map(e.getRequest)))})}}}}},91286:(e,t,a)=>{a.d(t,{v:()=>s});var r=a(32735),n=a(94644);function i(e){return e.map(function(e){return e.statusCode}).join(":")}function s(e,t,a){var s=Array.isArray(e)?e:[e];(0,r.useEffect)(function(){s.forEach(function(e){(0,n.r)(e.statusCode,t,a)})},[i(s),t,a])}},78057:(e,t,a)=>{a.d(t,{R:()=>C});var r=a(32735),n=a(75896),i=a(23481),s=a(97958),o=i.T.encloseNamespace("shared.studentResultsTable");function l(e){return"not_completed"===e.filter?r.createElement(s.u,{className:"bg-white rounded-bottom py-5"},r.createElement(s.u.Image,{src:e.notCompletedImageUrl,size:"small"}),r.createElement(s.u.Info,null,o("notCompletedDescription"))):"marking_required"===e.filter?r.createElement(s.u,{className:"bg-white rounded-bottom py-5"},r.createElement(s.u.Image,{src:e.markingRequiredImageUrl,size:"small"}),r.createElement(s.u.Info,null,o("markingRequiredDescription"))):"helping_hand"===e.filter?r.createElement(s.u,{className:"bg-white rounded-bottom py-5"},r.createElement(s.u.Image,{src:e.helpingHandImageUrl,size:"small"}),r.createElement(s.u.Info,null,o("helpingHandDescription"))):r.createElement(s.u,{className:"bg-white rounded-bottom py-5"},r.createElement(s.u.Image,{src:e.emptyStateImageUrl,size:"small"}),r.createElement(s.u.Heading,null,o("emptyStateHeading")),r.createElement(s.u.Info,null,o("emptyStateDescription")))}var c=a(83345),u="shared.studentResultsTable";function d(e){function t(t){var a=e.filter===t?null:t;e.setFilter(a)}function a(t){return"btn btn-outline-dark ".concat(function(t){return e.filter===t}(t)?"bg-dark text-white":"")}return r.createElement("div",{className:"d-flex align-items-center mb-3"},r.createElement("p",{className:"h6 mb-0"},r.createElement(c.x,{namespace:u,phrase:"filters"})),r.createElement("div",{className:"d-flex border-start ps-3 ms-3 gap-2"},r.createElement("button",{className:a("not_completed"),onClick:function(){return t("not_completed")}},r.createElement(c.x,{namespace:u,phrase:"notCompletedFilter"})),r.createElement("button",{className:a("marking_required"),onClick:function(){return t("marking_required")}},r.createElement(c.x,{namespace:u,phrase:"markingRequiredFilter"})),r.createElement("button",{className:a("helping_hand"),onClick:function(){return t("helping_hand")}},r.createElement(c.x,{namespace:u,phrase:"helpingHandFilter"}))))}var m=a(97364),h=a(6748),f=a(84806),v=a(19912);function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return p(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?p(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var y={table:"".concat(v.Z.fixedTable," bg-white rounded-start border border-end-0"),header:"".concat(v.Z.header," border-bottom"),headerRow:"h-100",headerCell:"d-flex align-items-center justify-content-start",row:v.Z.row},b={header:"".concat(v.Z.header," fw-bold"),headerRow:"h-100",headerCell:"".concat(v.Z.interactionHeaderCellOuter," bg-white border-bottom"),row:"".concat(v.Z.row," ").concat(v.Z.resultsRow),cell:v.Z.resultsCellOuter};function I(e){var t,a=g(r.useState((0,m.P)(e.sortBy,"score")),2),i=a[0],s=a[1],o=g(r.useState(e.filterBy),2),c=o[0],u=o[1],p=r.useRef(null),I=(0,f.R7)(e.results,e.anonymiseUsers,null===(t=e.config)||void 0===t?void 0:t.imageCdnUrl,e.showSeparateNameColumns),S=(0,f.lE)(e.interactive,e.interactiveMetadata,e.results,function(e){(0,f.bB)(p.current,e)},e.refreshTable),E=(0,f.Fx)(e.interactive,e.results,e.refreshTable,e.anonymiseUsers,n.m.first(i),c,e.showSeparateNameColumns);function w(e){(0,f.l8)(p.current,e)}return r.createElement("div",null,!!e.results.students.length&&r.createElement(d,{filter:c,setFilter:u}),!E.length&&r.createElement(l,{emptyStateImageUrl:e.emptyStateImageUrl,helpingHandImageUrl:e.helpingHandImageUrl,markingRequiredImageUrl:e.markingRequiredImageUrl,notCompletedImageUrl:e.notCompletedImageUrl,filter:c}),!!E.length&&r.createElement("div",{ref:p,className:"d-flex".concat(E.length&&S.length?" ".concat(v.Z.hasResults):"")},r.createElement(h.i,{columns:I,data:E,theme:S.length?y:Object.assign(Object.assign({},y),{table:"".concat(v.Z.fixedTable," bg-white rounded border")}),onSelectRow:function(t){var a=t.original;e.viewStudentResults(a.user,e.interactiveMetadata.id)},onRowMouseOver:function(e){return w(e.index)},onRowMouseLeave:function(){return w()},enableSort:!0,manualSort:!0,onSort:s,initialSortBy:i}),!!S.length&&r.createElement(h.i,{columns:S,data:E,theme:b,enableSlider:!0,scrollIncrement:8*f.Ju,onSelectCell:function(t){e.viewStudentResults(t.row.original.user,e.interactiveMetadata.id,t.column.id)},scrollContainerClassName:"rounded-end border border-start-0 border"})))}var S=a(99742);const E={partialInsights:"qSeTe"};function w(){return r.createElement("div",null,r.createElement("div",{className:"d-flex align-items-center mb-3"},r.createElement("p",{className:"h6 px-4 mb-0 me-4 partial-loading-background"}," "),r.createElement("div",{className:"row g-2 w-50"},r.createElement("div",{className:"col-3"},r.createElement("div",{className:"p-2 rounded-1 partial-loading-background"}," ")),r.createElement("div",{className:"col-3"},r.createElement("div",{className:"p-2 rounded-1 partial-loading-background"}," ")),r.createElement("div",{className:"col-3"},r.createElement("div",{className:"p-2 rounded-1 partial-loading-background"}," ")))),r.createElement("div",{className:"row g-3 mb-5"},r.createElement("div",{className:"col-12"},r.createElement("div",{className:"".concat(E.partialInsights," rounded partial-loading-background")}))))}function C(e){return r.createElement(r.Fragment,null,!e.hasDataLoaded&&r.createElement(w,null),e.hasDataLoaded&&r.createElement(I,{interactive:e.interactive,interactiveMetadata:e.interactiveMetadata,results:e.results,refreshTable:e.isFetching||e.hideStaffResults,viewStudentResults:e.viewStudentResults,emptyStateImageUrl:S.W.Insights.NO_RESPONSES,sortBy:e.sortBy,filterBy:e.filterBy,anonymiseUsers:e.anonymiseUsers,notCompletedImageUrl:S.W.Insights.JIGSAW,markingRequiredImageUrl:S.W.Insights.CLIPBOARD,helpingHandImageUrl:S.W.Insights.SPEECH_BUBBLE_HEART,config:e.config,showSeparateNameColumns:!0}))}},9447:(e,t,a)=>{a.d(t,{Y:()=>s});var r=a(20354),n=a(30439);function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function s(e){var t,a=r.a.useBasicFetch(n.o.getAnonSessions(e));return{items:(null===(t=a.data)||void 0===t?void 0:t.reduce(function(e,t){return Object.assign(Object.assign({},e),(a={},r=t.sessionId,n={sessionId:(s=t).sessionId,name:s.sessionName},(r=function(e){var t=function(e){if("object"!=i(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,"string");if("object"!=i(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==i(t)?t:t+""}(r))in a?Object.defineProperty(a,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):a[r]=n,a));var a,r,n,s},{}))||{},hasCompleted:a.hasCompleted,isFetching:a.isFetching}}},5780:(e,t,a)=>{a.d(t,{p:()=>c});var r=a(20354),n=a(2510),i=a(18488),s=a(4594),o=a(3010),l=a(88630);function c(e){var t,a,c,u,d=r.a.useGetFetch(),m=r.a.useBasicFetch(i.o.getShare(e)),h=(null===(t=m.data)||void 0===t?void 0:t.type)===n.y.Classroom&&(null===(u=null===(c=null===(a=m.data)||void 0===a?void 0:a.recipients)||void 0===c?void 0:c.find(function(e){return e.recipientTypeId===s.E.Classroom}))||void 0===u?void 0:u.recipientId),f=function(e){return l.F.getClassroomStudents(h,e)},v=(0,o.i)(h&&f,function(e){return d(f(e))});return Object.assign(Object.assign({},v),{hasCompleted:!h||v.hasCompleted})}},52389:(e,t,a)=>{a.d(t,{_:()=>f});var r=a(2948),n=a(20354),i=a(41196),s=a(18488),o=a(38143),l=a(91286),c=a(9447),u=a(5780);function d(e,t){if(e){if("string"==typeof e)return m(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?m(e,t):void 0}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var h=[{id:"0",attempts:[{id:"0",answeredAt:0,answers:[]}]}];function f(e){var t,a,f,v,g=(f=(0,r.D)(o.g.HIDE_STAFF_RESULTS),v=1,function(e){if(Array.isArray(e))return e}(f)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(f,v)||d(f,v)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0],p=n.a.useBasicFetch(s.o.getShare(e)),y=(0,i.W)(null===(t=p.data)||void 0===t?void 0:t.objectId,null,e),b=(0,c.Y)(e),I=(0,u.p)(e);(0,l.v)(y);var S=y.hasCompleted&&b.hasCompleted&&I.hasCompleted;if(!S)return{data:null,hasCompleted:!1};var E=new Set,w=y.data.students.map(function(e){var t,a=null===(t=e.user)||void 0===t?void 0:t.userType;return g&&1===a?null:e.user?(E.add(e.user.id),e):Object.assign(Object.assign({},e),{user:b.items[e.sessionId]||{sessionId:e.sessionId}})}).filter(function(e){return!!e});return(null===(a=null==I?void 0:I.items)||void 0===a?void 0:a.length)&&w.push.apply(w,function(e){return function(e){if(Array.isArray(e))return m(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||d(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.")}()}(I.items.filter(function(e){return!E.has(e.id)}).map(function(e){return{user:e,results:h,isPlaceholder:!0}}))),{hasCompleted:S,isFetching:p.isFetching||y.isFetching||b.isFetching||I.isFetching,data:Object.assign(Object.assign({},y.data),{students:w})}}},91255:(e,t,a)=>{a.r(t),a.d(t,{BaseInsightsView:()=>Re});var r=a(32735),n=a(81886),i=a(20354),s=a(18488),o=a(86099),l=a(4594),c=a(23481),u=a(2948),d=a(93479),m=a(21789),h=a(60051),f=a(16714),v=a(39151),g=a(1666),p=a(47812),y=a(31949),b=a(91286),I=a(93322),S=a(22902),E=a(79612),w=a(31908),C=a(86702),A=a(88630),F=a(74049),j=a(17132),N=function(e,t){return{url:"{gateway}/v2/analytics/streams/shares/".concat(e,"/aggregation/").concat(t),key:"video:views:v2:share:aggregation:".concat(e,":").concat(t),normalize:!1}},U=function(e){return{url:"{gateway}/v2/analytics/streams/shares/".concat(e,"/heat-map"),key:"video:views:v2:share:heatmap:".concat(e),normalize:!1}},B=function(e){return{url:"{gateway}/v2/analytics/streams/shares/".concat(e,"/aggregation/heat-map"),key:"video:views:v2:share:heatmap:aggregation:".concat(e),normalize:!1}},O=a(14070),R=a(97291);function T(e){var t=(0,S.T)(),a=t.getGatedPermission,i=t.isLoaded;r.useEffect(function(){i&&"hard-gate"===a(f.C.ViewInsights)&&n.Q.C$.trigger({application:R.O.MY_SHARES,action:O.e.MyShares.HARD_GATE_INSIGHTS,args:[e]})},[i])}var k=a(38143),_=a(39902),L=a(9447);function x(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}function M(e){var t,a,r,n,s,o=(n=(0,u.D)(k.g.HIDE_STAFF_RESULTS),s=1,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(n,s)||function(e,t){if(e){if("string"==typeof e)return x(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?x(e,t):void 0}}(n,s)||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.")}())[0],l=i.a.useBasicFetch(U(e)),c=(0,L.Y)(e),d=(null===(t=l.data)||void 0===t?void 0:t.map(function(e){return e.userId}).filter(function(e){return!!e}))||[],m=(0,_.fh)(d,y.N.getById),h=Object.assign(Object.assign({},c.items),m.items),f=null===(a=l.data)||void 0===a?void 0:a.filter(function(e){var t=h[e.userId||e.sessionId];return t&&1===t.userType&&o?null:e}).filter(function(e){return!!e}),v=null===(r=l.data)||void 0===r?void 0:r.map(function(e){return Object.assign(Object.assign({},function(e){var t,a;return e.userId?(null===(t=m.items)||void 0===t?void 0:t[e.userId])||{id:e.userId,deleted:!0}:(null===(a=c.items)||void 0===a?void 0:a[e.sessionId])||{sessionId:e.sessionId}}(e)),{percentage:e.engagementRate})});return{engagement:f,users:v,hasCompleted:l.hasCompleted&&c.hasCompleted&&(!(null==d?void 0:d.length)||m.hasCompleted)}}var D=a(5780),P=a(10447);function q(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return G(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?G(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function G(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var V=c.T.encloseNamespace("shared.insightsHeatmap");function W(e){var t,a,n,o,c,U=q((0,u.D)(C.y.ANONYMISE_USERS),1)[0],O=q((0,u.D)(C.y.HIDE_STAFF_RESULTS),1)[0];(0,I.F)();var R=(0,S.T)(),k=R.hasPermissions,_=R.getGatedPermission,L=i.a.useBasicFetch(s.o.getShare(e.shareId)),x=m.x.getClassroomIdFromShare(L.data),G=i.a.useBasicFetch(x&&A.F.getClassroom(x)),W=(0,D.p)(e.shareId),H=L.data&&w.M.getVideoRequest(L.data.objectId,L.data.objectTypeId),$=i.a.useBasicFetch(H),Z=i.a.useBasicFetch(v.L.config()),Q=i.a.useBasicFetch(y.N.currentUser()),Y=i.a.useBasicFetch(Q.data&&g.h.yearGroups(Q.data.customerId)),z=w.M.isInteractive($.data)&&d.I.pendingReviews({interactives:[$.data].map(function(t){return{interactiveId:t.interactiveId,metadataId:t.id,shareId:e.shareId}}),filters:{currentCustomerId:Q.data.customerId,currentUserId:Q.data.id}}),K=(null===(a=null===(t=i.a.useBasicFetch(z).data)||void 0===t?void 0:t[0])||void 0===a?void 0:a.pendingReviewCount)>0,J=i.a.useBasicFetch(B(e.shareId)),X=M(e.shareId),ee=X.users,te=X.engagement,ae=X.hasCompleted,re=i.a.useBasicFetch(N(e.shareId,"year_group")),ne=i.a.useBasicFetch((null===(n=L.data)||void 0===n?void 0:n.objectId)&&p.k.createViewKey(L.data.objectId,h.f.MasterObject));(0,E.M)({title:$.data?V("pageTitle",{video:null===(o=$.data)||void 0===o?void 0:o.name}):null}),(0,b.v)([L,$]),T(e.shareId);var ie=L.hasCompleted&&$.hasCompleted&&Z.hasCompleted&&J.hasCompleted&&re.hasCompleted&&ne.hasCompleted&&Y.hasCompleted;return r.createElement("div",{className:"px-3"},r.createElement(F.j,{video:$.data,tabs:function(){var e;return(null===(e=L.data)||void 0===e?void 0:e.objectTypeId)===l.E.Interactive?(0,P.kj)(L.data,"heatmap"):(0,P.$6)(L.data,"heatmap")}(),hasAnalytics:k(f.C.ViewCustomerAnalytics),analyticsWebUrl:null===(c=Z.data)||void 0===c?void 0:c.analyticsWebUrl,share:L.data,yearGroups:Y.data,classroom:G.data,markingRequired:K,hasData:!!(null==te?void 0:te.length),viewInsightsGatedPermission:_(f.C.ViewInsights)}),r.createElement(j.w,{aggregateEngagement:J.data,individualEngagement:te,yearGroups:re.data,config:Z.data,users:ee,viewKey:ne.data,hasDataLoaded:ie,tableDataLoaded:ae,anonymiseUsers:U,classroomStudents:W.items,hideStaffResults:O}))}var H=a(39157),$=a(94892),Z=a(20768),Q=a(54948),Y=a(52389);function z(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var K=c.T.encloseNamespace("insights.interactiveInsightsOverviewView");function J(e){var t,a,n,l,c,d,h,p=(d=(0,u.D)(k.g.ANONYMISE_USERS),h=1,function(e){if(Array.isArray(e))return e}(d)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(d,h)||function(e,t){if(e){if("string"==typeof e)return z(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?z(e,t):void 0}}(d,h)||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.")}())[0];(0,I.F)();var w=(0,S.T)(),C=w.hasPermissions,j=w.getGatedPermission,O=i.a.useBasicFetch(v.L.config()),R=i.a.useBasicFetch(y.N.currentUser()),_=i.a.useBasicFetch(R.data&&g.h.yearGroups(R.data.customerId)),L=i.a.useBasicFetch(s.o.getShare(e.shareId)),x=m.x.getClassroomIdFromShare(L.data),M=i.a.useBasicFetch(x&&A.F.getClassroom(x)),q=(0,D.p)(e.shareId),G=i.a.useBasicFetch((null===(t=L.data)||void 0===t?void 0:t.objectId)&&Z.b.interactiveMetadata(L.data.objectId)),V=i.a.useBasicFetch((null===(a=G.data)||void 0===a?void 0:a.interactiveId)&&Z.b.interactive(G.data.interactiveId)),W=(0,Y._)(e.shareId),J=i.a.useBasicFetch(U(e.shareId)),X=i.a.useBasicFetch(B(e.shareId)),ee=i.a.useBasicFetch(N(e.shareId,"os_name"));(0,E.M)({title:G.data?K("pageTitle",{video:null===(n=G.data)||void 0===n?void 0:n.name}):null}),(0,b.v)([L,V,G]),T(e.shareId);var te=O.hasCompleted&&G.hasCompleted&&V.data&&X.hasCompleted&&J.hasCompleted&&ee.hasCompleted&&W.hasCompleted&&_.hasCompleted,ae=function(e,t){return{resultsAppLink:(0,o.rq)(e,t),questionsAppLink:(0,o.Sj)(e,t),heatmapAppLink:(0,o.Rv)(e,t)}}(L.data),re=te&&(0,H.R6)(V.data,W.data,$.T),ne=re&&re.markingRequired.length>0;return r.createElement("div",{className:"px-3"},r.createElement(F.j,{video:G.data,tabs:(0,P.kj)(L.data,"insights"),hasAnalytics:C(f.C.ViewCustomerAnalytics),analyticsWebUrl:null===(l=O.data)||void 0===l?void 0:l.analyticsWebUrl,share:L.data,yearGroups:_.data,classroom:M.data,markingRequired:ne,hasData:!!(null===(c=W.data)||void 0===c?void 0:c.students.length),viewInsightsGatedPermission:j(f.C.ViewInsights)}),r.createElement(Q.m,{aggregateEngagement:X.data,individualEngagement:J.data,interactive:V.data,interactiveMetadata:G.data,interactiveInsightsAppLinks:ae,classroomStudents:q.items,results:W.data,osCount:ee.data,config:O.data,anonymiseUsers:p,hasDataLoaded:te,share:L.data}))}var X=a(48705);function ee(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var te=c.T.encloseNamespace("shared.interactiveInsightsQuestionsView");function ae(e){var t,a,n,o,l,c,d,h,p=(d=(0,u.D)(k.g.ANONYMISE_USERS),h=1,function(e){if(Array.isArray(e))return e}(d)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(d,h)||function(e,t){if(e){if("string"==typeof e)return ee(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?ee(e,t):void 0}}(d,h)||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.")}())[0];(0,I.F)();var w=(0,S.T)(),C=w.hasPermissions,j=w.getGatedPermission,N=i.a.useBasicFetch(y.N.currentUser()),U=i.a.useBasicFetch(v.L.config()),B=i.a.useBasicFetch(N.data&&g.h.yearGroups(N.data.customerId)),O=i.a.useBasicFetch(s.o.getShare(e.shareId)),R=m.x.getClassroomIdFromShare(O.data),_=i.a.useBasicFetch(R&&A.F.getClassroom(R)),L=i.a.useBasicFetch((null===(t=O.data)||void 0===t?void 0:t.objectId)&&Z.b.interactiveMetadata(null===(a=O.data)||void 0===a?void 0:a.objectId)),x=i.a.useBasicFetch((null===(n=L.data)||void 0===n?void 0:n.interactiveId)&&Z.b.interactive(L.data.interactiveId)),M=(0,Y._)(e.shareId);(0,E.M)({title:L.data?te("pageTitle",{video:null===(o=L.data)||void 0===o?void 0:o.name}):null}),(0,b.v)([O,x,L]),T(e.shareId);var D=x.data&&L.data&&!!M.data&&!!B.data,q=D&&(0,H.R6)(x.data,M.data,$.T),G=q&&q.markingRequired.length>0;return r.createElement("div",{className:"px-3"},r.createElement(F.j,{tabs:(0,P.kj)(O.data,"questions"),video:L.data,hasAnalytics:C(f.C.ViewCustomerAnalytics),analyticsWebUrl:null===(l=U.data)||void 0===l?void 0:l.analyticsWebUrl,share:O.data,yearGroups:B.data,classroom:_.data,markingRequired:G,hasData:!!(null===(c=M.data)||void 0===c?void 0:c.students.length),viewInsightsGatedPermission:j(f.C.ViewInsights)}),r.createElement(X.x,{interactive:x.data,interactiveMetadata:L.data,interactionId:e.interactionId,config:U.data,sortBy:e.sortBy,isFetching:!M.hasCompleted||x.isFetching,anonymiseUsers:p,results:M.data,hasDataLoaded:D}))}var re=a(78057);function ne(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return ie(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?ie(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ie(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var se=c.T.encloseNamespace("insights.interactiveInsightsStudents");function oe(e){var t,a,o,l,c,d=ne((0,u.D)(k.g.ANONYMISE_USERS),1)[0],h=ne((0,u.D)(k.g.HIDE_STAFF_RESULTS),1)[0],p=(0,S.T)(),I=p.hasPermissions,w=p.getGatedPermission,C=i.a.useBasicFetch(y.N.currentUser()),j=i.a.useBasicFetch(v.L.config()),N=i.a.useBasicFetch(C.data&&g.h.yearGroups(C.data.customerId)),U=i.a.useBasicFetch(s.o.getShare(e.shareId)),B=m.x.getClassroomIdFromShare(U.data),_=i.a.useBasicFetch(B&&A.F.getClassroom(B)),L=i.a.useBasicFetch((null===(t=U.data)||void 0===t?void 0:t.objectId)&&Z.b.interactiveMetadata(U.data.objectId)),x=i.a.useBasicFetch((null===(a=L.data)||void 0===a?void 0:a.interactiveId)&&Z.b.interactive(L.data.interactiveId)),M=(0,Y._)(e.shareId),D=x.data&&L.data&&!!M.data&&!!N.data,q=D&&(0,H.R6)(x.data,M.data,$.T),G=q&&q.markingRequired.length>0;return(0,E.M)({title:L.data?se("pageTitle",{video:null===(o=L.data)||void 0===o?void 0:o.name}):null}),(0,b.v)([U,x,L]),T(e.shareId),r.createElement("div",{className:"px-3"},r.createElement(F.j,{tabs:(0,P.kj)(U.data,"results"),video:L.data,hasAnalytics:I(f.C.ViewCustomerAnalytics),analyticsWebUrl:null===(l=j.data)||void 0===l?void 0:l.analyticsWebUrl,share:U.data,yearGroups:N.data,classroom:_.data,markingRequired:G,hasData:!!(null===(c=M.data)||void 0===c?void 0:c.students.length),viewInsightsGatedPermission:w(f.C.ViewInsights)}),r.createElement(re.R,{interactiveMetadata:L.data,viewStudentResults:function(t,a,r){n.Q.C$.trigger({application:R.O.MY_SHARES,action:O.e.MyShares.INTERACTIVE_STUDENT_RESULTS,params:{studentId:t.id,shareId:e.shareId,interactionId:r,sessionId:t.sessionId}})},interactive:x.data,results:M.data,filterBy:e.filterBy,sortBy:e.sortBy,isFetching:M.isFetching,anonymiseUsers:d,hasDataLoaded:D,config:j.data,hideStaffResults:h}))}var le=a(37802),ce=a(51870),ue=a(50916),de=a(84621),me=a(98551),he=a(35223),fe=c.T.encloseNamespace("shared.insightStudentsNotWatched");function ve(e){var t,a=(null===(t=e.students)||void 0===t?void 0:t.filter(function(t){var a;return!(null===(a=e.watchedIds)||void 0===a?void 0:a.includes(t.id))}))||[];return r.createElement(de.L,{title:fe("title"),svgName:he.vn.Puzzle,svgClassName:"bg-light-teal text-teal"},r.createElement(me.y,{students:a,imageCdnUrl:e.imageCdnUrl,imageUrl:e.imageUrl,description:fe("studentsDisplay"),anonymiseUsers:e.anonymiseUsers}))}var ge=c.T.encloseNamespace("shared.insightStudentsWatched");function pe(e){return r.createElement(de.L,{title:ge("title"),svgName:he.vn.Flag,svgClassName:"bg-light-indigo text-indigo",count:e.students.length},r.createElement(me.y,{students:e.students,imageCdnUrl:e.imageCdnUrl,imageUrl:e.imageUrl,description:ge("studentsDisplay"),appLink:e.heatmapAppLink,appLinkText:ge("viewAll"),anonymiseUsers:e.anonymiseUsers}))}var ye=a(8604),be=a(83345),Ie=a(99742),Se=a(53214);const Ee="oHwkx";function we(){return r.createElement("div",null,r.createElement("h2",{className:"h4 w-25 partial-loading-background"}," "),r.createElement("div",{className:"row g-3 mb-5"},r.createElement("div",{className:"col-12"},r.createElement("div",{className:"".concat(Ee," rounded partial-loading-background")}))),r.createElement("h2",{className:"h4 w-25 partial-loading-background"}," "),r.createElement("div",{className:"row g-3 mb-5"},r.createElement("div",{className:"col-6"},r.createElement("div",{className:"".concat(Ee," rounded partial-loading-background")})),r.createElement("div",{className:"col-6"},r.createElement("div",{className:"".concat(Ee," rounded partial-loading-background")}))))}var Ce="insights.videoInsightsOverview";function Ae(e){var t,a,n,i=e.hasDataLoaded&&!!(null===(t=e.viewers)||void 0===t?void 0:t.length);function s(){return e.viewers?Object.values(e.viewers):[]}return r.createElement(r.Fragment,null,!e.hasDataLoaded&&r.createElement(we,null),e.hasDataLoaded&&r.createElement(Se.u,{video:e.video,hasData:i,share:e.share},r.createElement("section",{className:"mb-5"},r.createElement("h2",{className:"h4"},r.createElement(be.x,{namespace:Ce,phrase:"studentViewing"}),r.createElement("span",null,": ",s().length,e.classroomStudents?"/".concat(e.classroomStudents.length):"")),r.createElement("div",{className:"row g-3"},!!(null===(a=e.classroomStudents)||void 0===a?void 0:a.length)&&r.createElement("div",{className:"col-12 col-md"},r.createElement(ve,{students:e.classroomStudents,watchedIds:null===(n=e.viewers)||void 0===n?void 0:n.map(function(e){return e.id}),imageCdnUrl:e.config.imageCdnUrl,heatmapAppLink:e.videoInsightsAppLinks.heatmapAppLink,imageUrl:Ie.W.Insights.AVATAR,anonymiseUsers:e.anonymiseUsers})),r.createElement("div",{className:"col-12 col-md"},r.createElement(pe,{students:s(),imageCdnUrl:e.config.imageCdnUrl,heatmapAppLink:e.videoInsightsAppLinks.heatmapAppLink,imageUrl:Ie.W.Insights.AVATAR,anonymiseUsers:e.anonymiseUsers})))),r.createElement("section",{className:"mb-5"},r.createElement("h2",{className:"h4"},r.createElement(be.x,{namespace:Ce,phrase:e.hasClassrooms?"classEngagement":"engagement"})),r.createElement("div",{className:"row g-3"},r.createElement("div",{className:"col-12 col-md-6"},r.createElement(ce.i,{osCount:e.osCount})),r.createElement("div",{className:"col-12 col-md-6"},r.createElement(ue.b,{engagement:e.aggregateEngagement,heatmapAppLink:e.videoInsightsAppLinks.heatmapAppLink,engagementRate:(0,ye.Q)(e.individualEngagement)}))))))}function Fe(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}var je=c.T.encloseNamespace("insights.videoInsightsOverviewView");function Ne(e){var t,a,n,l,c=(n=(0,u.D)(k.g.ANONYMISE_USERS),l=1,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,n,i,s,o=[],l=!0,c=!1;try{if(i=(a=a.call(e)).next,0===t){if(Object(a)!==a)return;l=!1}else for(;!(l=(r=i.call(a)).done)&&(o.push(r.value),o.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=a.return&&(s=a.return(),Object(s)!==s))return}finally{if(c)throw n}}return o}}(n,l)||function(e,t){if(e){if("string"==typeof e)return Fe(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?Fe(e,t):void 0}}(n,l)||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.")}())[0];(0,I.F)();var d=(0,le.r)(null).hasClassrooms,h=(0,S.T)(),p=h.hasPermissions,C=h.getGatedPermission,j=i.a.useBasicFetch(v.L.config()),O=i.a.useBasicFetch(y.N.currentUser()),R=i.a.useBasicFetch(O.data&&g.h.yearGroups(O.data.customerId)),_=i.a.useBasicFetch(s.o.getShare(e.shareId)),L=m.x.getClassroomIdFromShare(_.data),x=i.a.useBasicFetch(L&&A.F.getClassroom(L)),q=(0,D.p)(e.shareId),G=_.data&&w.M.getVideoRequest(_.data.objectId,_.data.objectTypeId),V=i.a.useBasicFetch(G);(0,E.M)({title:V.data?je("pageTitle",{video:null===(t=V.data)||void 0===t?void 0:t.name}):null}),(0,b.v)([_,V]),T(e.shareId);var W=i.a.useBasicFetch(U(e.shareId)),H=i.a.useBasicFetch(B(e.shareId)),$=i.a.useBasicFetch(N(e.shareId,"os_name")),Z=M(e.shareId),Q=Z.users,Y=Z.hasCompleted,z=j.hasCompleted&&V.hasCompleted&&W.hasCompleted&&H.hasCompleted&&$.hasCompleted&&R.data&&Y,K=function(e){return{heatmapAppLink:(0,o.Rv)(e,void 0)}}(_.data);return r.createElement("div",{className:"px-3"},r.createElement(F.j,{video:V.data,classroom:x.data,tabs:(0,P.$6)(_.data,"insights"),hasAnalytics:p(f.C.ViewCustomerAnalytics),analyticsWebUrl:null===(a=j.data)||void 0===a?void 0:a.analyticsWebUrl,share:_.data,yearGroups:R.data,hasData:z&&!!(null==Q?void 0:Q.length),viewInsightsGatedPermission:C(f.C.ViewInsights)}),r.createElement(Ae,{hasDataLoaded:!!z,hasClassrooms:d,anonymiseUsers:c,videoInsightsAppLinks:K,config:j.data,video:V.data,classroomStudents:q.items,viewers:Q,individualEngagement:W.data,aggregateEngagement:H.data,share:_.data,osCount:$.data}))}function Ue(e){return Ue="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},Ue(e)}function Be(e,t,a){return(t=function(e){var t=function(e){if("object"!=Ue(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var a=t.call(e,"string");if("object"!=Ue(a))return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Ue(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}var Oe=Be(Be(Be({},l.E.Video,{insights:function(e){return r.createElement(Ne,{shareId:e.share.shareId})},heatmap:function(e){return r.createElement(W,{shareId:e.share.shareId})}}),l.E.Clip,{insights:function(e){return r.createElement(Ne,{shareId:e.share.shareId})},heatmap:function(e){return r.createElement(W,{shareId:e.share.shareId})}}),l.E.Interactive,{insights:function(e){return r.createElement(J,{shareId:e.share.shareId})},heatmap:function(e){return r.createElement(W,{shareId:e.share.shareId})},questions:function(e){return r.createElement(ae,{interactionId:e.interactionId,sortBy:e.sortBy,shareId:e.share.shareId})},results:function(e){return r.createElement(oe,{filterBy:e.filterBy,sortBy:e.sortBy,shareId:e.share.shareId})}});function Re(e){var t=i.a.useBasicFetch(s.o.getShare(e.shareId)),a=function(e){var t,a=e.share,n=e.tab,i=null===(t=Oe[null==a?void 0:a.objectTypeId])||void 0===t?void 0:t[n];return i?i(e):r.createElement(r.Fragment,null)}({share:t.data,tab:e.tab,interactionId:e.interactionId,sortBy:e.sortBy,filterBy:e.filterBy});return r.useEffect(function(){if(e.showShareOptions&&t.data){var a=(0,o.Zm)(t.data);a&&n.Q.C$.trigger(a)}},[t.data,e.showShareOptions]),r.createElement(r.Fragment,null,a)}}}]);
2
- //# sourceMappingURL=5579-a9c152057f-lite.chunk.js.map
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[5712],{49927:(e,t,a)=>{a.d(t,{u:()=>l});var i=a(57900),n=a(70064),s=function(e){return"recent:playlists:added:to:".concat(e)},l={getRecentlyAddedTo:function(e){return n.V.getRecentItem(s(e),i.SG)},addRecentlyAddedTo:function(e,t){return n.V.addRecentItem(s(e),i.SG,t)},removeRecentlyAddedTo:function(e,t){n.V.removeRecentItem(s(e),t,i.SG)}}},53172:(e,t,a)=>{a.d(t,{l:()=>o});var i=a(32735),n=a(31453),s=a(83914),l=a(83345),d=a(35223),c="shared.premiumBadge";function o(e){return i.createElement("span",{className:(0,n.A)("badge badge-wrapper rounded-pill d-flex align-items-center justify-content-center","fw-medium text-indigo","sm"===e.size?"badge-sm":"badge-std",e.invert?"bg-white":"bg-light-indigo",e.className)},i.createElement(s.x,{svgName:d.vn.StarOutline,size:s.S.Medium}),i.createElement(l.x,{phrase:"premium",namespace:c}))}},63403:(e,t,a)=>{a.r(t),a.d(t,{AddToPlaylistView:()=>Z});var i=a(32735),n=a(37241),s=a(70680),l=a(60139),d=a(23481),c=a(20354),o=a(28400),r=a(49985),m=a(65858),u=a(76611),p=a(70006),y=a(49927),f=a(9111),g=a(53172),P=a(83345),h=a(16714),v=a(1666),T=a(5112),w=a(31949),C=a(69883),k=a(3010),x=a(22902),S=a(45719),L=a(65185),E=a(14070),I=a(97291),N=a(63172),A=a(52931),b="playlists.addToPlaylist",V=d.T.encloseNamespace(b),R=function(e){return T.C.getUserPlaylists(new p.l(u.o.AtoZ,e))},F=function(e,t){return function(a){return T.C.getVideoPlaylists(e,t,a)}};function Z(e){var t,a=(0,s.I0)(),d=(0,C.Z)(),u=c.a.useBasicFetch(w.N.currentUser()),p=c.a.useBasicFetch(T.C.getVideoCandidate(e.videoId)),Z=(0,S.P)(function(e){return R(e).key}),B=(0,S.P)(function(t){return!!e.videoId&&!!u.data&&F(e.videoId,u.data.id)(t).key}),G=c.a.useBasicFetch((null===(t=u.data)||void 0===t?void 0:t.isAuthenticated)&&v.h.yearGroups(u.data.customerId)),U=(0,x.T)(),z=U.hasPermissions,O=U.getGatedPermission,Y=U.isLoaded,_=z(h.C.StudentExperience),j=!!B.items&&B.items.map(function(e){return e.id});(0,k.i)(R,function(e){c.a.getFetch(a)(R(e))}),(0,k.i)(!!u.data&&F(e.videoId,u.data.id),!!u.data&&function(t){c.a.getFetch(a)(F(e.videoId,u.data.id)(t))});var K=function(t,i){c.a.fetch(a,T.C.addToPlaylist(t.id,[p.data],function(){d.success({heading:L.R.Success,type:l.NK.Success,message:V(i?"successNew":"success",{video:p.data.name,playlist:t.name,escapeText:!0}),appLink:{application:I.O.PLAYLISTS,action:E.e.Playlists.PLAYLIST,args:[t.id,o.m.slugify(t.name)]},appLinkText:V("goToPlaylist",{playlist:t.name,escapeText:!0}),appLinkClassName:"info-link"}),r.k.logUserAction({id:p.data.id,name:p.data.name,playlistId:t.id,playlistName:t.name},{actionType:m.Vw.Associate,entity:m.py.Video,descriptor:m.iF.Playlist,workflowPhase:m.eu.Complete,location:m.LZ.Popup}),y.u.addRecentlyAddedTo(u.data.id,{id:t.id}),i&&e.closePopup()},function(e){"playlist-limit-exceeded"===e.responseJSON.type?d.error(V("playlistLimitExceeded")):d.error(V("addError",{video:p.data.name,playlist:t.name,escapeText:!0}))}))},D=!!p.data&&!!Z.items&&!Z.nextCursor&&!!u.data&&!!B.items&&!B.nextCursor&&G.hasCompleted&&Y;return i.createElement(f.G,{title:V("heading"),closePopup:e.closePopup,showLoadingSpinner:!D||null===screen,hideTitle:"soft-gate"===O(h.C.CreatePlaylist)},"soft-gate"===O(h.C.CreatePlaylist)&&i.createElement(n.Z.Header,{className:"d-flex align-items-center justify-content-between bg-white mx-n3 mt-n3 mb-3",closeButton:!0},i.createElement(n.Z.Title,{as:"h2",className:"h4 flex-grow-1 d-flex justify-content-between align-items-center"},V("heading"),i.createElement("span",{className:"d-inline-block me-2"},i.createElement(g.l,{size:"std"})))),D?i.createElement(i.Fragment,null,Z.items.length?i.createElement("div",{className:"mb-2"},i.createElement(P.x,{namespace:b,phrase:"selectPlaylist",options:{video:p.data.name}})):i.createElement(A.v,{isStudent:_,headingClassName:"h4",imageSize:"small",className:"py-2",hideButton:!0}),i.createElement(N.o,{playlists:Z.items,currentUserId:u.data.id,onSelectPlaylist:function(t){j.includes(t.id)?function(t){c.a.fetch(a,T.C.removePlaylistVideo(t.id,p.data.id,p.data.typeId,function(){d.success({heading:L.R.Success,type:l.NK.Success,message:V("successRemove",{video:p.data.name,playlist:t.name,escapeText:!0}),appLink:{application:I.O.PLAYLISTS,action:E.e.Playlists.PLAYLIST,args:[t.id,o.m.slugify(t.name)]},appLinkText:V("goToPlaylist",{playlist:t.name,escapeText:!0}),appLinkClassName:"info-link"}),r.k.logUserAction({id:p.data.id,playlistId:t.id},{actionType:m.Vw.Dissociate,entity:m.py.Video,descriptor:m.iF.Playlist,workflowPhase:m.eu.Complete,location:m.LZ.Popup})},function(){d.error(V("removeError",{video:p.data.name,playlist:t.name,escapeText:!0})),e.closePopup()}))}(t):K(t)},isVideoInPlaylist:function(e){return j.includes(e.id)},createPlaylist:function(t){c.a.fetch(a,T.C.createPlaylist(u.data.id,{name:t},function(e){e&&e.id&&(r.k.logUserAction({id:e.id},{actionType:m.Vw.Create,entity:m.py.Playlist,workflowPhase:m.eu.Complete,location:m.LZ.Popup}),K(e,!0))},function(){d.error(V("createError",{video:p.data.name,playlist:t,escapeText:!0})),e.closePopup()}))}})):i.createElement(i.Fragment,null))}}}]);
2
- //# sourceMappingURL=5712-e784cfe89c-lite.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/5712-e784cfe89c-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/playlists/utils/RecentPlaylistHelper.ts","file:///app/packages/libs/shared/src/components/premium-badge/PremiumBadge.tsx","file:///app/packages/projects/lite/src/apps/playlists/views/add-to-playlist/AddToPlaylistView.tsx"],"sourcesContent":["import { LocalStorageHelper } from 'libs/common/backbone/utils/LocalStorageHelper';\n\nimport { RecentItemHelper } from 'libs/shared/utils/RecentItemHelper';\n\nconst getCacheKey = (userId: string) => `recent:playlists:added:to:${userId}`;\n\ninterface AddRecentPlaylistsOptions {\n id: string;\n limit?: number;\n}\n\nexport const RecentPlaylistHelper = {\n /**\n * Get a list of ids of playlists recently added to.\n */\n getRecentlyAddedTo(userId: string): string[] {\n return RecentItemHelper.getRecentItem(getCacheKey(userId), LocalStorageHelper);\n },\n\n addRecentlyAddedTo(userId: string, options: AddRecentPlaylistsOptions): string[] {\n return RecentItemHelper.addRecentItem(getCacheKey(userId), LocalStorageHelper, options);\n },\n\n removeRecentlyAddedTo(userId: string, id: string): void {\n RecentItemHelper.removeRecentItem(getCacheKey(userId), id, LocalStorageHelper);\n }\n};","import React from 'react';\n\nimport { classNames } from 'libs/common/react/utils/ClassNameHelper';\n\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nconst namespace = 'shared.premiumBadge';\n\ninterface PremiumBadgeProps {\n invert?: boolean;\n size: 'sm' | 'std';\n className?: string;\n}\n\nexport function PremiumBadge(props: PremiumBadgeProps): JSX.Element {\n return (\n <span className={classNames(\n 'badge badge-wrapper rounded-pill d-flex align-items-center justify-content-center',\n 'fw-medium text-indigo',\n props.size === 'sm' ? 'badge-sm' : 'badge-std',\n props.invert ? 'bg-white' : 'bg-light-indigo',\n props.className\n )}>\n <SvgContainer svgName={cvSvgLibrary.StarOutline} size={SvgContainerSize.Medium} />\n <Text phrase='premium' namespace={namespace} />\n </span>\n );\n}","import * as React from 'react';\nimport { Modal } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\n\nimport { AlertType } from 'libs/common/backbone/services/BaseAlertService';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AssocDescriptor, EntityType, LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { PlaylistSortType } from 'libs/shared/apps/playlists/enums/PlaylistSortType';\nimport { PlaylistCollectionIdentifier } from 'libs/shared/apps/playlists/interfaces/identifiers/PlaylistCollectionIdentifier';\nimport { RecentPlaylistHelper } from 'libs/shared/apps/playlists/utils/RecentPlaylistHelper';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PremiumBadge } from 'libs/shared/components/premium-badge/PremiumBadge';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { PlaylistRequests } from 'libs/shared/flight-requests/PlaylistRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useFetchAll } from 'libs/shared/hooks/UseFetchAll';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSelectAllPages } from 'libs/shared/hooks/UseSelectAllPages';\nimport { CurrentUser, Playlist, PopupViewProps, VideoTypes, YearGroup } from 'libs/shared/interfaces';\nimport { ObjectApiXhr } from 'libs/shared/interfaces/responses/ErrorResponse';\n\nimport { DefaultAlertHeading } from 'shared/constants/DefaultAlertHeading';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { SelectPlaylist } from 'apps/playlists/components/select-playlist/SelectPlaylist';\nimport { PlaylistsEmptyState } from 'apps/playlists/views/playlists/empty-state/PlaylistsEmptyState';\n\nconst namespace = 'playlists.addToPlaylist';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst getPlaylistsRequest = (cursor?: string) =>\n PlaylistRequests.getUserPlaylists(new PlaylistCollectionIdentifier(PlaylistSortType.AtoZ, cursor));\n\nconst getVideoPlaylistsRequest = (videoId: string, userId: string) => (cursor?: string) =>\n PlaylistRequests.getVideoPlaylists(videoId, userId, cursor);\n\ninterface AddToPlaylistViewProps {\n videoId?: string;\n}\n\nexport function AddToPlaylistView(props: AddToPlaylistViewProps & PopupViewProps): JSX.Element {\n const dispatch = useDispatch();\n const alerts = useAlerts();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const video = Flight.useBasicFetch<VideoTypes>(PlaylistRequests.getVideoCandidate(props.videoId));\n const playlists = useSelectAllPages<Playlist>((cursor?: string) => getPlaylistsRequest(cursor).key);\n const videoPlaylists = useSelectAllPages<Playlist>((cursor?: string) =>\n !!props.videoId && !!currentUser.data && getVideoPlaylistsRequest(props.videoId, currentUser.data.id)(cursor).key);\n\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data?.isAuthenticated && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n \n const { hasPermissions, getGatedPermission, isLoaded } = usePermissions();\n\n const isStudent = hasPermissions(PermissionName.StudentExperience);\n\n const videoPlaylistIds = !!videoPlaylists.items && videoPlaylists.items.map(p => p.id);\n\n const fetchNextPlaylists = (cursor?: string) => {\n Flight.getFetch(dispatch)(getPlaylistsRequest(cursor));\n };\n\n const fetchNextVideoPlaylists = (cursor?: string) => {\n Flight.getFetch(dispatch)(getVideoPlaylistsRequest(props.videoId, currentUser.data.id)(cursor));\n };\n\n useFetchAll(getPlaylistsRequest, fetchNextPlaylists);\n useFetchAll(\n !!currentUser.data && getVideoPlaylistsRequest(props.videoId, currentUser.data.id),\n !!currentUser.data && fetchNextVideoPlaylists\n );\n\n const addToPlaylist = (playlist: Playlist, isNew?: boolean) => {\n const onSuccess = () => {\n alerts.success({\n heading: DefaultAlertHeading.Success,\n type: AlertType.Success,\n message: getPhrase(isNew ? 'successNew' : 'success', { video: video.data.name, playlist: playlist.name, escapeText: true }),\n appLink: {\n application: AppChannels.PLAYLISTS,\n action: Actions.Playlists.PLAYLIST,\n args: [ playlist.id, TextHelper.slugify(playlist.name) ]\n },\n appLinkText: getPhrase('goToPlaylist', { playlist: playlist.name, escapeText: true }),\n appLinkClassName: 'info-link'\n });\n\n AnalyticsHelper.logUserAction({\n id: video.data.id,\n name: video.data.name,\n playlistId: playlist.id,\n playlistName: playlist.name\n }, {\n actionType: UserAction.Associate,\n entity: EntityType.Video,\n descriptor: AssocDescriptor.Playlist,\n workflowPhase: WorkflowPhase.Complete,\n location: LocationContext.Popup\n });\n\n RecentPlaylistHelper.addRecentlyAddedTo(currentUser.data.id, { id: playlist.id });\n\n if (isNew)\n props.closePopup();\n };\n\n const onError = (xhr: ObjectApiXhr) => {\n if (xhr.responseJSON.type === 'playlist-limit-exceeded')\n alerts.error(getPhrase('playlistLimitExceeded'));\n else\n alerts.error(getPhrase('addError', { video: video.data.name, playlist: playlist.name, escapeText: true }));\n };\n\n Flight.fetch(dispatch, PlaylistRequests.addToPlaylist(playlist.id, [video.data], onSuccess, onError));\n };\n\n const removeFromPlaylist = (playlist: Playlist) => {\n const onSuccess = () => {\n alerts.success({\n heading: DefaultAlertHeading.Success,\n type: AlertType.Success,\n message: getPhrase('successRemove', { video: video.data.name, playlist: playlist.name, escapeText: true }),\n appLink: {\n application: AppChannels.PLAYLISTS,\n action: Actions.Playlists.PLAYLIST,\n args: [ playlist.id, TextHelper.slugify(playlist.name) ]\n },\n appLinkText: getPhrase('goToPlaylist', { playlist: playlist.name, escapeText: true }),\n appLinkClassName: 'info-link'\n });\n\n AnalyticsHelper.logUserAction({ id: video.data.id, playlistId: playlist.id }, {\n actionType: UserAction.Dissociate,\n entity: EntityType.Video,\n descriptor: AssocDescriptor.Playlist,\n workflowPhase: WorkflowPhase.Complete,\n location: LocationContext.Popup\n });\n };\n\n const onError = () => {\n alerts.error(getPhrase('removeError', { video: video.data.name, playlist: playlist.name, escapeText: true }));\n props.closePopup();\n };\n\n Flight.fetch(dispatch, PlaylistRequests.removePlaylistVideo(\n playlist.id,\n video.data.id,\n video.data.typeId,\n onSuccess,\n onError\n ));\n };\n\n const createPlaylist = (name: string) => {\n Flight.fetch(dispatch, PlaylistRequests.createPlaylist(currentUser.data.id, { name }, (newPlaylist: Playlist) => {\n if (!newPlaylist || !newPlaylist.id)\n return;\n\n AnalyticsHelper.logUserAction({ id: newPlaylist.id }, {\n actionType: UserAction.Create,\n entity: EntityType.Playlist,\n workflowPhase: WorkflowPhase.Complete,\n location: LocationContext.Popup\n });\n\n addToPlaylist(newPlaylist, true);\n }, () => {\n alerts.error(getPhrase('createError', { video: video.data.name, playlist: name, escapeText: true }));\n props.closePopup();\n }));\n };\n\n const onSelectPlaylist = (playlist: Playlist) => {\n if (videoPlaylistIds.includes(playlist.id)) {\n removeFromPlaylist(playlist);\n return;\n }\n\n addToPlaylist(playlist);\n };\n\n const dataLoaded = !!video.data\n && !!playlists.items\n && !playlists.nextCursor\n && !!currentUser.data\n && !!videoPlaylists.items\n && !videoPlaylists.nextCursor\n && yearGroups.hasCompleted\n && isLoaded;\n\n return (\n <Popup\n title={getPhrase('heading')}\n closePopup={props.closePopup}\n showLoadingSpinner={!dataLoaded || screen === null}\n hideTitle={getGatedPermission(PermissionName.CreatePlaylist) === 'soft-gate'}\n >\n {getGatedPermission(PermissionName.CreatePlaylist) === 'soft-gate' &&\n <Modal.Header className='d-flex align-items-center justify-content-between bg-white mx-n3 mt-n3 mb-3' closeButton>\n <Modal.Title as='h2' className='h4 flex-grow-1 d-flex justify-content-between align-items-center'>\n {getPhrase('heading')}\n <span className='d-inline-block me-2'><PremiumBadge size='std' /></span>\n </Modal.Title>\n </Modal.Header>\n }\n {(() => {\n if (!dataLoaded)\n return <></>;\n\n return (\n <>\n {playlists.items.length\n ? (\n <div className='mb-2'>\n <Text namespace={namespace} phrase='selectPlaylist' options={{ video: video.data.name }} />\n </div>\n )\n : (\n <PlaylistsEmptyState\n isStudent={isStudent}\n headingClassName='h4'\n imageSize='small'\n className='py-2'\n hideButton\n />\n )\n }\n <SelectPlaylist\n playlists={playlists.items}\n currentUserId={currentUser.data.id}\n onSelectPlaylist={onSelectPlaylist}\n isVideoInPlaylist={(playlist: Playlist) => (videoPlaylistIds.includes(playlist.id))}\n createPlaylist={createPlaylist}\n />\n </>\n );\n })()}\n </Popup>\n );\n}"],"names":["getCacheKey","userId","RecentPlaylistHelper","getRecentlyAddedTo","addRecentlyAddedTo","options","removeRecentlyAddedTo","id","namespace","PremiumBadge","props","className","size","invert","svgName","S","phrase","getPhrase","getPlaylistsRequest","cursor","getVideoPlaylistsRequest","videoId","AddToPlaylistView","dispatch","alerts","currentUser","video","playlists","key","videoPlaylists","data","yearGroups","isAuthenticated","customerId","hasPermissions","getGatedPermission","isLoaded","isStudent","videoPlaylistIds","items","map","p","addToPlaylist","playlist","isNew","success","heading","type","message","name","escapeText","appLink","application","action","args","appLinkText","appLinkClassName","playlistId","playlistName","actionType","entity","descriptor","workflowPhase","location","closePopup","xhr","responseJSON","error","dataLoaded","nextCursor","hasCompleted","title","showLoadingSpinner","screen","hideTitle","closeButton","as","length","headingClassName","imageSize","hideButton","currentUserId","onSelectPlaylist","includes","typeId","removeFromPlaylist","isVideoInPlaylist","createPlaylist","newPlaylist"],"sourceRoot":""}