@clickview/lite 0.75.0-rc.9 → 0.75.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 (99) hide show
  1. package/dist/bundles.json +1 -1
  2. package/dist/css/{7103-lite-fef3024f61.chunk.css → 2878-lite-d8e0bf912a.chunk.css} +1 -1
  3. package/dist/css/{1243-lite-13eda8f6a0.chunk.css → 3615-lite-240342ff8e.chunk.css} +1 -1
  4. package/dist/css/{1867-lite-8baa8af02b.chunk.css → 4630-lite-0157b1c437.chunk.css} +1 -1
  5. package/dist/css/{4203-lite-9ffab89741.chunk.css → 8362-lite-10810fdef2.chunk.css} +1 -1
  6. package/dist/languages/en.json +1 -1
  7. package/dist/scripts/{104-7ee25cbbb8-lite.chunk.js → 104-da7394bcfa-lite.chunk.js} +2 -2
  8. package/dist/scripts/104-da7394bcfa-lite.chunk.js.map +1 -0
  9. package/dist/scripts/1192-bb27568f21-lite.chunk.js +2 -0
  10. package/dist/scripts/1192-bb27568f21-lite.chunk.js.map +1 -0
  11. package/dist/scripts/1199-cf2cb206b5-lite.chunk.js +2 -0
  12. package/dist/scripts/1199-cf2cb206b5-lite.chunk.js.map +1 -0
  13. package/dist/scripts/1502-9836df10cd-lite.chunk.js +2 -0
  14. package/dist/scripts/1502-9836df10cd-lite.chunk.js.map +1 -0
  15. package/dist/scripts/{1610-9ccecc428a-lite.chunk.js → 1610-0edaa98d40-lite.chunk.js} +2 -2
  16. package/dist/scripts/{1610-9ccecc428a-lite.chunk.js.map → 1610-0edaa98d40-lite.chunk.js.map} +1 -1
  17. package/dist/scripts/{7103-3b181ec69b-lite.chunk.js → 2878-487c4a8e1a-lite.chunk.js} +2 -2
  18. package/dist/scripts/2878-487c4a8e1a-lite.chunk.js.map +1 -0
  19. package/dist/scripts/{3057-1ae8087b3a-lite.chunk.js → 3057-a5bc753736-lite.chunk.js} +1 -1
  20. package/dist/scripts/{3057-1ae8087b3a-lite.chunk.js.map → 3057-a5bc753736-lite.chunk.js.map} +1 -1
  21. package/dist/scripts/3268-7be966dc82-lite.chunk.js +3 -0
  22. package/dist/scripts/3268-7be966dc82-lite.chunk.js.map +1 -0
  23. package/dist/scripts/{1243-72f3d31787-lite.chunk.js → 3615-a0da361aa5-lite.chunk.js} +2 -2
  24. package/dist/scripts/3615-a0da361aa5-lite.chunk.js.map +1 -0
  25. package/dist/scripts/{3872-6fe7371d39-lite.chunk.js → 3872-cf9a6bdae8-lite.chunk.js} +1 -1
  26. package/dist/scripts/{3872-6fe7371d39-lite.chunk.js.map → 3872-cf9a6bdae8-lite.chunk.js.map} +1 -1
  27. package/dist/scripts/4125-6d34b8b8f2-lite.chunk.js +2 -0
  28. package/dist/scripts/4125-6d34b8b8f2-lite.chunk.js.map +1 -0
  29. package/dist/scripts/4598-e25e9e03d6-lite.chunk.js +2 -0
  30. package/dist/scripts/4598-e25e9e03d6-lite.chunk.js.map +1 -0
  31. package/dist/scripts/{1867-0823a787c3-lite.chunk.js → 4630-4a35ecbf2b-lite.chunk.js} +2 -2
  32. package/dist/scripts/4630-4a35ecbf2b-lite.chunk.js.map +1 -0
  33. package/dist/scripts/{4806-e1b17af1de-lite.chunk.js → 4806-e65d319357-lite.chunk.js} +2 -2
  34. package/dist/scripts/4806-e65d319357-lite.chunk.js.map +1 -0
  35. package/dist/scripts/6475-f019242ec2-lite.chunk.js +2 -0
  36. package/dist/scripts/6475-f019242ec2-lite.chunk.js.map +1 -0
  37. package/dist/scripts/{6695-4e01b4a18c-lite.chunk.js → 6695-4ae0acad94-lite.chunk.js} +1 -1
  38. package/dist/scripts/{6695-4e01b4a18c-lite.chunk.js.map → 6695-4ae0acad94-lite.chunk.js.map} +1 -1
  39. package/dist/scripts/6756-3c7f911759-lite.chunk.js +3 -0
  40. package/dist/scripts/6756-3c7f911759-lite.chunk.js.map +1 -0
  41. package/dist/scripts/6790-1695fcf576-lite.chunk.js +2 -0
  42. package/dist/scripts/6790-1695fcf576-lite.chunk.js.map +1 -0
  43. package/dist/scripts/{7252-941e7573cf-lite.chunk.js → 7252-3540b11acb-lite.chunk.js} +3 -3
  44. package/dist/scripts/{7252-941e7573cf-lite.chunk.js.map → 7252-3540b11acb-lite.chunk.js.map} +1 -1
  45. package/dist/scripts/7438-35b887a48e-lite.chunk.js +2 -0
  46. package/dist/scripts/7438-35b887a48e-lite.chunk.js.map +1 -0
  47. package/dist/scripts/{8323-d6d1d07ce5-lite.chunk.js → 8323-5694456903-lite.chunk.js} +2 -2
  48. package/dist/scripts/{8323-d6d1d07ce5-lite.chunk.js.map → 8323-5694456903-lite.chunk.js.map} +1 -1
  49. package/dist/scripts/{4203-83f90f92f3-lite.chunk.js → 8362-ed5df8f4fc-lite.chunk.js} +3 -3
  50. package/dist/scripts/8362-ed5df8f4fc-lite.chunk.js.LICENSE.txt +1 -0
  51. package/dist/scripts/{4203-83f90f92f3-lite.chunk.js.map → 8362-ed5df8f4fc-lite.chunk.js.map} +1 -1
  52. package/dist/scripts/{8732-3e8332e620-lite.chunk.js → 8732-dc5182fb69-lite.chunk.js} +1 -1
  53. package/dist/scripts/{8732-3e8332e620-lite.chunk.js.map → 8732-dc5182fb69-lite.chunk.js.map} +1 -1
  54. package/dist/scripts/8856-08061bbec5-lite.chunk.js +2 -0
  55. package/dist/scripts/8856-08061bbec5-lite.chunk.js.map +1 -0
  56. package/dist/scripts/{8957-bc83ea1180-lite.chunk.js → 8957-b3f0dbb85d-lite.chunk.js} +1 -1
  57. package/dist/scripts/{8957-bc83ea1180-lite.chunk.js.map → 8957-b3f0dbb85d-lite.chunk.js.map} +1 -1
  58. package/dist/scripts/{9042-544d97a05d-lite.chunk.js → 9042-7c30ffd4f0-lite.chunk.js} +2 -2
  59. package/dist/scripts/9042-7c30ffd4f0-lite.chunk.js.map +1 -0
  60. package/dist/scripts/9134-b0ae877597-lite.chunk.js +2 -0
  61. package/dist/scripts/9134-b0ae877597-lite.chunk.js.map +1 -0
  62. package/dist/scripts/{bundle-cf4c360278.min.js → bundle-e578e457e2.min.js} +3 -3
  63. package/dist/scripts/{bundle-cf4c360278.min.js.map → bundle-e578e457e2.min.js.map} +1 -1
  64. package/package.json +1 -1
  65. package/dist/scripts/104-7ee25cbbb8-lite.chunk.js.map +0 -1
  66. package/dist/scripts/1074-6dadbd8187-lite.chunk.js +0 -2
  67. package/dist/scripts/1074-6dadbd8187-lite.chunk.js.map +0 -1
  68. package/dist/scripts/1192-6ac54d734b-lite.chunk.js +0 -2
  69. package/dist/scripts/1192-6ac54d734b-lite.chunk.js.map +0 -1
  70. package/dist/scripts/1199-dc45a88be8-lite.chunk.js +0 -2
  71. package/dist/scripts/1199-dc45a88be8-lite.chunk.js.map +0 -1
  72. package/dist/scripts/1243-72f3d31787-lite.chunk.js.map +0 -1
  73. package/dist/scripts/1867-0823a787c3-lite.chunk.js.map +0 -1
  74. package/dist/scripts/3268-aa893d0068-lite.chunk.js +0 -2
  75. package/dist/scripts/3268-aa893d0068-lite.chunk.js.map +0 -1
  76. package/dist/scripts/4598-f5120153c2-lite.chunk.js +0 -2
  77. package/dist/scripts/4598-f5120153c2-lite.chunk.js.map +0 -1
  78. package/dist/scripts/4806-e1b17af1de-lite.chunk.js.map +0 -1
  79. package/dist/scripts/6475-502e390010-lite.chunk.js +0 -2
  80. package/dist/scripts/6475-502e390010-lite.chunk.js.map +0 -1
  81. package/dist/scripts/6756-20c0ab9591-lite.chunk.js +0 -3
  82. package/dist/scripts/6756-20c0ab9591-lite.chunk.js.map +0 -1
  83. package/dist/scripts/6790-df00506bec-lite.chunk.js +0 -2
  84. package/dist/scripts/6790-df00506bec-lite.chunk.js.map +0 -1
  85. package/dist/scripts/7103-3b181ec69b-lite.chunk.js.map +0 -1
  86. package/dist/scripts/7438-1162aba8b6-lite.chunk.js +0 -2
  87. package/dist/scripts/7438-1162aba8b6-lite.chunk.js.map +0 -1
  88. package/dist/scripts/8856-361fe76b7a-lite.chunk.js +0 -2
  89. package/dist/scripts/8856-361fe76b7a-lite.chunk.js.map +0 -1
  90. package/dist/scripts/9003-36ab592cc5-lite.chunk.js +0 -2
  91. package/dist/scripts/9003-36ab592cc5-lite.chunk.js.map +0 -1
  92. package/dist/scripts/9042-544d97a05d-lite.chunk.js.map +0 -1
  93. package/dist/scripts/9134-7037c2c47a-lite.chunk.js +0 -2
  94. package/dist/scripts/9134-7037c2c47a-lite.chunk.js.map +0 -1
  95. /package/dist/scripts/{4203-83f90f92f3-lite.chunk.js.LICENSE.txt → 3268-7be966dc82-lite.chunk.js.LICENSE.txt} +0 -0
  96. /package/dist/scripts/{6756-20c0ab9591-lite.chunk.js.LICENSE.txt → 6756-3c7f911759-lite.chunk.js.LICENSE.txt} +0 -0
  97. /package/dist/scripts/{7252-941e7573cf-lite.chunk.js.LICENSE.txt → 7252-3540b11acb-lite.chunk.js.LICENSE.txt} +0 -0
  98. /package/dist/scripts/{8323-d6d1d07ce5-lite.chunk.js.LICENSE.txt → 8323-5694456903-lite.chunk.js.LICENSE.txt} +0 -0
  99. /package/dist/scripts/{bundle-cf4c360278.min.js.LICENSE.txt → bundle-e578e457e2.min.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/4598-f5120153c2-lite.chunk.js","mappings":"oIAEO,IAAMA,EAAuB,CAClCC,YAAW,WACT,MAAO,CACLC,IAAK,mCACLC,IAAK,mBACLC,WAAW,EAEf,EAEAC,oBAAmB,WACjB,MAAO,CACLH,IAAK,4CACLC,IAAK,4BACLC,WAAW,EAEf,EAEAE,mBAAkB,WAChB,MAAO,CACLJ,IAAK,2CACLC,IAAK,2BACLC,WAAW,EAEf,EAEAG,WAAU,WACR,MAAO,CACLL,IAAK,mCACLC,IAAK,mBACLC,WAAW,EAEf,EAEAI,MAAK,WACH,MAAO,CACLN,IAAK,6BACLC,IAAK,aACLC,WAAW,EAEf,EAEAK,kBAAiB,WACf,MAAO,CACLP,IAAK,0CACLC,IAAK,0BACLC,WAAW,EAEf,EAEAM,iBAAgB,WACd,MAAO,CACLR,IAAK,yCACLC,IAAK,yBACLC,WAAW,EAEf,E,2CCzDK,IAAMO,EAA8B,SAC9BC,EAA2B,Q,6ICgBlCC,EAAY,qBADA,yBAKLC,EAA6B,CACxCC,KAAM,SACNC,QAAS,iBACTC,SAAU,IACVC,aAAc,gBACdC,UAAW,GACXC,YAAa,GACbC,aAAa,IAAIC,MAAOC,cACxBC,WAAY,KACZC,KAAM,CACJC,kBAAmB,GACnBC,aAAc,IAEhBC,QAAS,IACTC,gBAAiB,EACjBC,QAAS,EACTC,WAAY,GACZC,QAAS,CACPC,kBAAkB,EAClBC,mBAAmB,IAIVC,EAAoD,CAC/DC,MAAOtB,EACPuB,aAAc,KACdC,gBAAiB,KACjBC,WAAY,aAAoB,IAAIjB,KA7BR,EA6BuC,QAAQC,eAGvEiB,EAAsC,CAC1CC,YAAa,cACbC,OAAQ,wCAGGC,EAAsC,CACjDC,QAAS,eACTC,MAAOhC,EAAU,gBACjBiC,QAASN,EACTO,MAAO,WACPC,UAAW,uB,6WCnCb,IACMnC,EAAY,qBADA,0BAGZ,SAAUoC,I,kBACPC,G,GAAkB,OAAsB,qB,EAA8B,E,o4BAAxD,IAErB,SAEA,IAAMC,EAAc,kBAAkC,mBAChDC,EAAQ,kBACZ,2BAGIC,EAAS,kBAA6B,cAEtCC,EAAwB,+BACxBC,EAAyB,gCAEzBC,EAAsB,kBAC1B,wBAGIC,EAAuB,kBAC3B,yBAGIjD,EAAQ,kBAAiC,aAEzCD,EAAa,kBAA6C,kBAE1DmD,EAAU,kBAAoCN,EAAMO,MACxD,kBAmBF,W,MACE,OAAe,QAAX,EAAAN,EAAOM,YAAI,eAAEC,QAAQC,SAAS,YAAmB,IAE9C,GACT,CAvB+BC,GAAwB,aAEvD,OAAmB,CAAEC,MAAOX,EAAMO,KAAO9C,EAAU,YAAa,CAAEuC,MAAiB,QAAV,EAAAA,EAAMO,YAAI,eAAEK,OAAU,OAE/F,IAAMC,KACFd,EAAYQ,MACZpD,EAAWoD,MACXP,EAAMO,MACNH,EAAoBG,MACpBD,EAAQC,MACRnD,EAAMmD,MAEJO,IAAoBT,EAAqBE,KAEzCQ,EAAS,OAAH,wBACPb,GACAC,GASCnB,EAAQ,OAAH,wBACN,MAAmB,CACtBnB,SAAoB,QAAV,EAAAmC,EAAMO,YAAI,eAAES,KAGxB,OACE,uBAAKpB,UAAU,QACb,gBAAC,IAAc,CACbI,MAAOA,EAAMO,KACbU,MAAM,QAAyC,QAAV,EAAAjB,EAAMO,YAAI,eAAES,GAAI,UAAWD,GAChEZ,uBAAwBA,EACxBnB,MAAOA,EACPkC,WAAY,GACZC,QAAM,IAGR,gBAAC,IAAe,CACdf,oBAAqBA,EAAoBG,KACzCF,qBAA+C,QAAzB,EAAAA,EAAqBE,YAAI,eAAEA,KACjDW,WAA2B,QAAf,EAAA/D,EAAWoD,YAAI,eAAEa,eAC7BnB,OAAQA,EAAOM,KACfnD,MAAOA,EAAMmD,KACbD,QAASA,EAAQC,KACjBM,cAAeA,EACfC,gBAAiBA,EACjBhB,eAAgBA,IAIxB,C","sources":["file:///app/packages/libs/shared/src/flight-requests/InsightsDemoRequests.ts","file:///app/packages/projects/lite/src/apps/my-shares/constants/DemoInsights.ts","file:///app/packages/projects/lite/src/apps/my-shares/constants/MySharesDemoInsights.ts","file:///app/packages/projects/lite/src/apps/my-shares/views/demo/heatmap/InsightsHeatmapDemoView.tsx"],"sourcesContent":["import { Flight } from 'libs/common/react/index';\n\nexport const InsightsDemoRequests = {\n interactive(): Flight.Request {\n return {\n url: `/mocks/insights/interactive.json`,\n key: `demo:interactive`,\n normalize: false\n };\n },\n\n interactiveMetadata(): Flight.Request {\n return {\n url: `/mocks/insights/interactive-metadata.json`,\n key: `demo:interactive:metadata`,\n normalize: false\n };\n },\n\n interactiveResults(): Flight.Request {\n return {\n url: `/mocks/insights/interactive-results.json`,\n key: `demo:interactive:results`,\n normalize: false\n };\n },\n\n videoViews(): Flight.Request {\n return {\n url: `/mocks/insights/video-views.json`,\n key: `demo:video:views`,\n normalize: false\n };\n },\n\n users(): Flight.Request {\n return {\n url: `/mocks/insights/users.json`,\n key: `demo:users`,\n normalize: false\n };\n },\n\n individualHeatmap(): Flight.Request {\n return {\n url: `/mocks/insights/individual-heatmap.json`,\n key: `demo:individual:heatmap`,\n normalize: false\n };\n },\n\n aggregateHeatmap(): Flight.Request {\n return {\n url: `/mocks/insights/aggregate-heatmap.json`,\n key: `demo:aggregate:heatmap`,\n normalize: false\n };\n }\n};","export const DEMO_INTERACTIVE_STAGING_ID = 'D8qRe7';\nexport const DEMO_INTERACTIVE_PROD_ID = 'GRWx6w';","import { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { SharePrivacy } from 'libs/shared/apps/share-v2/enums/SharePrivacy';\nimport { ShareType } from 'libs/shared/apps/share-v2/enums/ShareType';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { MySharesTableData } from 'apps/my-shares/components/my-shares-table/MySharesTableUtils';\n\nconst namespace = 'myShares.demoInsights';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst DEMO_INSIGHT_DAYS_AGO = 7;\n\nexport const DEMO_INSIGHTS_SHARE: Share = {\n type: ShareType.Link,\n privacy: SharePrivacy.JustMySchool,\n objectId: '0',\n objectTypeId: MasterType.Interactive,\n viewCount: 28,\n accessCount: 15,\n dateCreated: new Date().toISOString(),\n expireDate: null,\n link: {\n shortenedEmbedUrl: '',\n shortenedUrl: ''\n },\n shareId: '0',\n ownerCustomerId: 0,\n ownerId: 0,\n recipients: [],\n options: {\n preventScrubbing: false,\n immediateFeedback: false\n }\n};\n\nexport const DEMO_INSIGHTS_SHARE_TABLE_DATA: MySharesTableData = {\n share: DEMO_INSIGHTS_SHARE,\n sharedObject: null,\n shareRecipients: null,\n dateShared: DateHelper.subtract(new Date(), DEMO_INSIGHT_DAYS_AGO, 'days').toISOString()\n};\n\nconst DEMO_INSIGHTS_APPLINK: Core.AppLink = {\n application: AppChannels.MY_SHARES,\n action: Actions.MyShares.INTERACTIVE_OVERVIEW_DEMO\n};\n\nexport const DEMO_INSIGHTS_ACTION: ActionOptions = {\n svgName: cvSvgLibrary.Analytics,\n label: getPhrase('demoInsights'),\n appLink: DEMO_INSIGHTS_APPLINK,\n group: 'insights',\n className: 'btn btn-outline-dark'\n};\n","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { useViewModel } from 'libs/common/react/hooks/UseViewModel';\nimport { Flight } from 'libs/common/react/index';\n\nimport { VideoViewEventResponse } from 'libs/shared/apps/analytics/interfaces/VideoViewEvent';\nimport { AnalyticsFilterHelper } from 'libs/shared/apps/analytics/utils/AnalyticsFilterUtils';\nimport { MediaIdType } from 'libs/shared/enums/MediaIdType';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { InsightsDemoRequests } from 'libs/shared/flight-requests/InsightsDemoRequests';\nimport { PlayerRequests } from 'libs/shared/flight-requests/PlayerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useLockContentWidth } from 'libs/shared/hooks/useLockContentWidth';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config, CurrentUser, Engagement, IndividualEngagementResponse, InteractiveMetadata, PlayerViewKey } from 'libs/shared/interfaces';\nimport { AnonUser } from 'libs/shared/interfaces/models/interactive-results/AnonUser';\n\nimport { ViewModelKeys } from 'shared/constants/LiteViewModels';\n\nimport { InsightsHeader } from 'apps/my-shares/components/insights-header/InsightsHeader';\nimport { InsightsHeatmap } from 'apps/my-shares/components/insights-heatmap/InsightsHeatmap';\nimport { DEMO_INTERACTIVE_PROD_ID, DEMO_INTERACTIVE_STAGING_ID } from 'apps/my-shares/constants/DemoInsights';\nimport { DEMO_INSIGHTS_SHARE } from 'apps/my-shares/constants/MySharesDemoInsights';\nimport { getInsightsDemoInteractiveTabs } from 'apps/my-shares/utils/InsightsAppLinkUtils';\n\nconst namespace = 'shared.insightsHeatmap';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function InsightsHeatmapDemoView() {\n const [anonymiseUsers] = useViewModel<boolean>(ViewModelKeys.ANONYMISE_USERS);\n\n useLockContentWidth();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const video = Flight.useBasicFetch<InteractiveMetadata>(\n InsightsDemoRequests.interactiveMetadata()\n );\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const audienceAppLinkParams = AnalyticsFilterHelper.getAudienceAppLinkParams();\n const dateRangeAppLinkParams = AnalyticsFilterHelper.getDateRangeAppLinkParams();\n\n const aggregateEngagement = Flight.useBasicFetch<Engagement>(\n InsightsDemoRequests.aggregateHeatmap()\n );\n\n const individualEngagement = Flight.useBasicFetch<IndividualEngagementResponse>(\n InsightsDemoRequests.individualHeatmap()\n );\n\n const users = Flight.useBasicFetch<AnonUser[]>(InsightsDemoRequests.users());\n\n const videoViews = Flight.useBasicFetch<VideoViewEventResponse>(InsightsDemoRequests.videoViews());\n\n const viewKey = Flight.useBasicFetch<PlayerViewKey>(video.data &&\n PlayerRequests.createViewKey(getDemoInteractiveId(), MediaIdType.Share));\n\n useSetPageMetadata({ title: video.data ? getPhrase('pageTitle', { video: video.data?.name }) : null });\n\n const hasDataLoaded =\n !!currentUser.data &&\n !!videoViews.data &&\n !!video.data &&\n !!aggregateEngagement.data &&\n !!viewKey.data &&\n !!users.data;\n\n const tableDataLoaded = !!individualEngagement.data;\n\n const params = {\n ...audienceAppLinkParams,\n ...dateRangeAppLinkParams\n };\n\n function getDemoInteractiveId() {\n if (config.data?.liteUrl.includes('staging')) return DEMO_INTERACTIVE_STAGING_ID;\n\n return DEMO_INTERACTIVE_PROD_ID;\n }\n\n const share = {\n ...DEMO_INSIGHTS_SHARE,\n objectId: video.data?.id\n };\n\n return (\n <div className='px-3'>\n <InsightsHeader\n video={video.data}\n tabs={getInsightsDemoInteractiveTabs(video.data?.id, 'heatmap', params)}\n dateRangeAppLinkParams={dateRangeAppLinkParams}\n share={share}\n yearGroups={[]}\n isDemo\n />\n\n <InsightsHeatmap\n aggregateEngagement={aggregateEngagement.data}\n individualEngagement={individualEngagement.data?.data}\n yearGroups={videoViews.data?.yearGroupCount}\n config={config.data}\n users={users.data}\n viewKey={viewKey.data}\n hasDataLoaded={hasDataLoaded}\n tableDataLoaded={tableDataLoaded}\n anonymiseUsers={anonymiseUsers}\n />\n </div>\n );\n}"],"names":["InsightsDemoRequests","interactive","url","key","normalize","interactiveMetadata","interactiveResults","videoViews","users","individualHeatmap","aggregateHeatmap","DEMO_INTERACTIVE_STAGING_ID","DEMO_INTERACTIVE_PROD_ID","getPhrase","DEMO_INSIGHTS_SHARE","type","privacy","objectId","objectTypeId","viewCount","accessCount","dateCreated","Date","toISOString","expireDate","link","shortenedEmbedUrl","shortenedUrl","shareId","ownerCustomerId","ownerId","recipients","options","preventScrubbing","immediateFeedback","DEMO_INSIGHTS_SHARE_TABLE_DATA","share","sharedObject","shareRecipients","dateShared","DEMO_INSIGHTS_APPLINK","application","action","DEMO_INSIGHTS_ACTION","svgName","label","appLink","group","className","InsightsHeatmapDemoView","anonymiseUsers","currentUser","video","config","audienceAppLinkParams","dateRangeAppLinkParams","aggregateEngagement","individualEngagement","viewKey","data","liteUrl","includes","getDemoInteractiveId","title","name","hasDataLoaded","tableDataLoaded","params","id","tabs","yearGroups","isDemo","yearGroupCount"],"sourceRoot":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/4806-e1b17af1de-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/analytics/components/pending-indicator/PendingIndicator.tsx","file:///app/packages/libs/shared/src/apps/analytics/components/student-results/interactions-bar/InteractionsBar.tsx","file:///app/packages/libs/shared/src/apps/analytics/components/student-results/interactions-bar/interactions-bar.scss","file:///app/packages/libs/shared/src/apps/analytics/components/student-results/interaction-results-summary/InteractionResultsSummary.tsx","file:///app/packages/libs/shared/src/apps/analytics/components/student-results/interaction-results-summary/interaction-results-summary.scss","file:///app/packages/libs/shared/src/apps/analytics/components/student-results/student-results-table/InteractionHeaderCell.tsx","file:///app/packages/libs/shared/src/apps/analytics/components/student-results/student-results-table/StudentResultCell.tsx","file:///app/packages/libs/shared/src/apps/analytics/components/student-results/student-results-table/StudentResultsTableUtils.tsx","file:///app/packages/libs/shared/src/apps/analytics/utils/StudentTableUtils.ts","file:///app/packages/libs/shared/src/apps/share/components/recipient-item/user-recipient-item-metadata/UserRecipientItemMetadata.tsx","file:///app/packages/libs/shared/src/apps/analytics/components/student-results/student-results-table/student-results-table.scss","file:///app/packages/libs/shared/src/apps/share/components/recipient-item/recipient-item.scss"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { PercentageIndicator } from 'libs/shared/components/percentage-indicator/PercentageIndicator';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\n\nconst namespace = 'interactives.pendingIndicator';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getClassName(props: PendingIndicatorProps): string {\n let className = 'd-flex align-items-center h-100';\n\n className += props.showLabel ? ' justify-content-between' : ' justify-content-center';\n\n if (props.className)\n className += ` ${props.className}`;\n\n return className;\n}\n\ninterface PendingIndicatorProps {\n title?: string;\n className?: string;\n showLabel?: boolean;\n tooltipClassName?: string;\n}\n\nexport function PendingIndicator(props: PendingIndicatorProps): JSX.Element {\n const Indicator = () => (\n <div className={getClassName(props)}>\n {!!props.showLabel &&\n <em>{getPhrase('pending')}</em>\n }\n <PercentageIndicator />\n </div>\n );\n\n if (!props.title)\n return <Indicator />;\n\n return (\n <Tooltip title={props.title} spanHack spanHackClassName={props.tooltipClassName || 'h-100 w-100 d-flex align-items-center'}>\n <Indicator />\n </Tooltip>\n );\n}","import React from 'react';\n\nimport { Interaction, Interactive, Timepoint } from 'libs/shared/interfaces';\nimport { DurationHelper } from 'libs/shared/utils/DurationHelper';\nimport { InteractionTypeHelper } from 'libs/shared/utils/interaction-type-helper/InteractionTypeHelper';\n\nimport styles from './interactions-bar.scss';\n\nfunction getInteraction(timepoint: Timepoint, selectedInteraction: Interaction): Interaction {\n return timepoint.interactions.find(i => i.id === selectedInteraction.id) || timepoint.interactions[0];\n}\n\ninterface InteractionBarProps {\n interactive: Interactive;\n duration: number;\n selectedInteraction: Interaction;\n}\n\nexport function InteractionsBar(props: InteractionBarProps): React.ReactElement {\n if (!props.duration)\n return <></>;\n\n return (\n <>\n {props.interactive.timepoints.map((t, i) => {\n if (!t.interactions.length)\n return <></>;\n\n const interaction = getInteraction(t, props.selectedInteraction);\n const isSelected = interaction.id === props.selectedInteraction.id;\n\n const bgClassName = isSelected ? (InteractionTypeHelper.getTypeInfo(interaction.typeId)).bgClassName : 'bg-gray-500';\n\n const left = ((t.visibleAt / 1000) / props.duration) * 100;\n\n return (\n <div\n key={i}\n className={`${styles.container} text-center`}\n style={{ left: `${left}%` }}\n >\n <div className={`${styles.interaction} ${bgClassName}`} />\n {!!isSelected &&\n <div>\n {DurationHelper.ToDisplayDuration(t.visibleAt)}\n </div>\n }\n </div>\n );\n })}\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"Wf1bl\",\"interaction\":\"Fpm49\"};","import React from 'react';\nimport { Popover } from 'react-bootstrap';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { InteractionsBar } from 'libs/shared/apps/analytics/components/student-results/interactions-bar/InteractionsBar';\nimport { getInteractionResultsSummary } from 'libs/shared/apps/analytics/utils/InteractiveUtils';\nimport { InteractionLabel } from 'libs/shared/components/interactive-questions/InteractionLabel';\nimport { PercentageIndicator, PercentageIndicatorLayout } from 'libs/shared/components/percentage-indicator/PercentageIndicator';\nimport { Interaction, Interactive, InteractiveMetadata, InteractiveResultSet } from 'libs/shared/interfaces';\n\nimport styles from './interaction-results-summary.scss';\n\nconst namespace = 'shared.interactionResultsSummary';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getDuration(interactiveMetadata: InteractiveMetadata): number {\n if (interactiveMetadata._parentClip)\n return interactiveMetadata._parentClip.endTime - interactiveMetadata._parentClip.startTime;\n\n if (!interactiveMetadata._parentVideo.duration)\n return 0;\n\n return interactiveMetadata._parentVideo.duration / 1000;\n}\n\ninterface InteractionResultsSummaryProps {\n interaction: Interaction;\n interactive: Interactive;\n interactiveMetadata: InteractiveMetadata;\n results: InteractiveResultSet;\n}\n\nfunction InteractionResultsSummary(props: InteractionResultsSummaryProps): JSX.Element {\n const summary = React.useMemo(\n () => getInteractionResultsSummary(props.interaction, props.results),\n [ props.interaction, props.results ]\n );\n\n return (\n <div className='px-1 pt-1'>\n <div className='d-flex'>\n <InteractionLabel\n interaction={props.interaction}\n iconClassName='flex-shrink-0'\n />\n </div>\n <div className={`my-4 ${styles.bar}`}>\n <InteractionsBar\n interactive={props.interactive}\n duration={getDuration(props.interactiveMetadata)}\n selectedInteraction={props.interaction}\n />\n </div>\n <div className='row pt-1 pb-2'>\n <div className='col-6 pe-1'>\n <div className='bg-light rounded p-2 h-100'>\n {!summary.awaitingMarking &&\n <div className='d-flex align-items-center justify-content-between'>\n <strong>{getPhrase('correctlyAnswered')}</strong>\n <PercentageIndicator\n percentage={summary.percentCorrect}\n layout={PercentageIndicatorLayout.LabelOnly}\n />\n </div>\n }\n {!!summary.awaitingMarking &&\n <div className='d-flex align-items-center justify-content-center'>\n <strong>\n <em>{getPhrase('pending')}</em>\n </strong>\n </div>\n }\n </div>\n </div>\n <div className='col-6 ps-1'>\n <div className='bg-light rounded h-100 p-2 d-flex align-items-center justify-content-between'>\n <strong>{getPhrase('unanswered')}</strong>\n <span>{summary.unanswered}</span>\n </div>\n </div>\n </div>\n </div>\n );\n}\n\nconst InteractionResultsSummaryPopover = React.forwardRef((\n { interaction, interactive, interactiveMetadata, results, ...popoverProps }: InteractionResultsSummaryProps,\n ref: React.MutableRefObject<HTMLElement>\n) => {\n return (\n <div className='popover-lg'>\n <Popover\n id={`interaction-results-summary-${interaction.id}`}\n ref={ref as any}\n {...popoverProps}\n >\n <Popover.Body>\n <InteractionResultsSummary\n interaction={interaction}\n interactive={interactive}\n interactiveMetadata={interactiveMetadata}\n results={results}\n />\n </Popover.Body>\n </Popover>\n </div>\n );\n});\n\nexport { InteractionResultsSummaryPopover as InteractionResultsSummary };","// extracted by mini-css-extract-plugin\nexport default {\"bar\":\"FCXQd\"};","import React from 'react';\nimport { OverlayTrigger } from 'react-bootstrap';\n\nimport { InteractionResultsSummary } from 'libs/shared/apps/analytics/components/student-results/interaction-results-summary/InteractionResultsSummary';\nimport { Interaction, Interactive, InteractiveMetadata, InteractiveResultSet } from 'libs/shared/interfaces';\n\nimport styles from './student-results-table.scss';\n\ninterface InteractionHeaderCellProps {\n interaction: Interaction;\n results: InteractiveResultSet;\n interactionNumber: number;\n interactive: Interactive;\n interactiveMetadata: InteractiveMetadata;\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n}\n\nexport function InteractionHeaderCell(props: InteractionHeaderCellProps): JSX.Element {\n return (\n <OverlayTrigger\n trigger={props.results.students?.length ? 'click' : null}\n placement='bottom'\n overlay={\n <InteractionResultsSummary\n interaction={props.interaction}\n interactive={props.interactive}\n interactiveMetadata={props.interactiveMetadata}\n results={props.results}\n />\n }\n rootClose\n >\n <div\n className={\n `text-center h-100\n d-flex align-items-center justify-content-center\n ${styles.interactionHeaderCellInner}`\n }\n onMouseEnter={props.onMouseEnter}\n onMouseLeave={props.onMouseLeave}\n >\n <div className='p-1 position-relative'>\n {props.interactionNumber}\n </div>\n </div>\n </OverlayTrigger>\n );\n}","import React from 'react';\n\nimport { PendingIndicator } from 'libs/shared/apps/analytics/components/pending-indicator/PendingIndicator';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { InteractionCorrectness } from 'libs/shared/enums/InteractionCorrectness';\nimport { Interaction, StudentResults } from 'libs/shared/interfaces';\nimport { InteractiveCorrectnessHelper } from 'libs/shared/utils/InteractiveCorrectnessHelper';\nimport { getStudentResult } from 'libs/shared/utils/InteractiveHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './student-results-table.scss';\n\nfunction getSvgName(correctness: InteractionCorrectness): string {\n if (correctness === InteractionCorrectness.Correct)\n return cvSvgLibrary.Check;\n\n if (correctness === InteractionCorrectness.Incorrect)\n return cvSvgLibrary.Close;\n\n if (correctness === InteractionCorrectness.UnAnswered)\n return cvSvgLibrary.Minus;\n\n return;\n}\n\nfunction getClassName(correctness: InteractionCorrectness): string {\n let className = `${styles.resultsCellInner} h-100 position-relative`;\n\n if (correctness === InteractionCorrectness.Correct)\n className += ` ${styles.correct}`;\n\n if (correctness === InteractionCorrectness.Incorrect)\n className += ` ${styles.incorrect} text-danger`;\n\n if (correctness === InteractionCorrectness.AwaitingMarking)\n className += ` ${styles.awaitingMarking}`;\n\n if (correctness === InteractionCorrectness.UnAnswered)\n className += ` ${styles.unanswered} text-warning`;\n\n return className;\n}\n\ninterface StudentResultCellProps {\n interaction: Interaction;\n studentResults: StudentResults;\n}\n\nexport function StudentResultCell(props: StudentResultCellProps): JSX.Element {\n const correctness = InteractiveCorrectnessHelper.isInteractionCorrect(\n props.interaction,\n getStudentResult(props.studentResults)\n );\n\n const svgName = getSvgName(correctness);\n\n return (\n <div className={getClassName(correctness)}>\n {!!svgName && <SvgContainer svgName={svgName} />}\n {correctness === InteractionCorrectness.AwaitingMarking &&\n <PendingIndicator />\n }\n </div>\n );\n}","import React from 'react';\nimport { CellProps, Column, ColumnInstance, SortingRule } from 'react-table';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { PendingIndicator } from 'libs/shared/apps/analytics/components/pending-indicator/PendingIndicator';\nimport { StudentResultsWithSummary } from 'libs/shared/apps/analytics/interfaces/StudentResultsWithSummary';\nimport { anonymiseUserName } from 'libs/shared/apps/analytics/utils/AnonymiseUserUtils';\nimport { getStudentResultsSummary } from 'libs/shared/apps/analytics/utils/InteractiveUtils';\nimport { FilterStudentsBy, shouldFilterStudent } from 'libs/shared/apps/analytics/utils/StudentTableUtils';\nimport { UserRecipientItemMetadata } from 'libs/shared/apps/share/components/recipient-item/user-recipient-item-metadata/UserRecipientItemMetadata';\nimport { PercentageIndicator, PercentageIndicatorLayout } from 'libs/shared/components/percentage-indicator/PercentageIndicator';\nimport { Interactive, InteractiveMetadata, InteractiveResultSet } from 'libs/shared/interfaces';\nimport { getInteractions } from 'libs/shared/utils/InteractiveHelper';\n\nimport { InteractionHeaderCell } from './InteractionHeaderCell';\nimport { StudentResultCell } from './StudentResultCell';\n\nimport styles from './student-results-table.scss';\n\nconst namespace = 'shared.studentResultsTable';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport const RESULTS_COL_WIDTH = 60;\n\ninterface CellWrapperProps {\n className?: string;\n}\n\nfunction CellWrapper(props: React.PropsWithChildren<CellWrapperProps>): JSX.Element {\n return (\n <div className={`d-flex align-items-center p-2 h-100 ${props.className ?? ''}`}>\n {props.children}\n </div>\n );\n}\n\ninterface HeaderCellProps {\n column: ColumnInstance<StudentResultsWithSummary>;\n phraseKey: string;\n}\n\nfunction HeaderCell(props: HeaderCellProps): JSX.Element {\n return (\n <CellWrapper className={props.column.isSorted && 'fw-bold'}>\n {getPhrase(props.phraseKey)}\n </CellWrapper>\n );\n}\n\nexport function useGetFixedColumns(\n results: InteractiveResultSet,\n anonymiseUsers: boolean,\n imageCdnUrl?: string\n): Column<StudentResultsWithSummary>[] {\n const hasResults = !!results.students?.length;\n\n return React.useMemo(() => {\n const cols: Column<StudentResultsWithSummary>[] = [\n {\n id: 'name',\n Header: ({ column }) => <HeaderCell column={column} phraseKey='name' />,\n accessor: (u: StudentResultsWithSummary) => u,\n width: imageCdnUrl ? 175 : undefined,\n Cell: ({ value }: CellProps<StudentResultsWithSummary, StudentResultsWithSummary>) => {\n if (!imageCdnUrl) {\n return (\n <CellWrapper>\n <span className='text-truncate'>{anonymiseUserName(value.user, anonymiseUsers)}</span>\n </CellWrapper>\n );\n }\n\n return (\n <CellWrapper>\n <UserRecipientItemMetadata\n user={value.user}\n imageCdnUrl={imageCdnUrl}\n anonymiseUsers={anonymiseUsers}\n detailsClassName='ms-2 overflow-hidden'\n nameClassName='text-truncate'\n showDisplayName\n avatarClassName='p-1'\n showSubText={false}\n />\n </CellWrapper>\n );\n },\n disableSortBy: !hasResults\n },\n {\n Header: ({ column }) => <HeaderCell column={column} phraseKey='unanswered' />,\n accessor: 'summary.unanswered' as keyof StudentResultsWithSummary,\n sortType: 'basic', // Default is 'alphanumeric' which would treat the numbers as strings\n sortDescFirst: true,\n disableSortBy: !hasResults,\n Cell: ({ value }: CellProps<StudentResultsWithSummary, any>) => <CellWrapper>{value}</CellWrapper>\n },\n {\n Header: ({ column }) => <HeaderCell column={column} phraseKey='score' />,\n accessor: 'summary',\n id: 'score',\n Cell: ({ value }) => {\n if (value.awaitingMarking) {\n return (\n <CellWrapper>\n <PendingIndicator\n title={getPhrase('markingRequired')}\n className='flex-grow-1'\n showLabel\n />\n </CellWrapper>\n );\n }\n\n return (\n <CellWrapper>\n {`${value.correct}/${value.answered + value.unanswered}`}\n </CellWrapper>\n );\n },\n width: 125,\n sortDescFirst: true,\n disableSortBy: !hasResults\n },\n {\n Header: ({ column }) => <HeaderCell column={column} phraseKey='percentage' />,\n accessor: 'summary',\n id: 'percentage',\n Cell: ({ value }) => {\n if (value.awaitingMarking) {\n return (\n <CellWrapper>\n <PendingIndicator\n title={getPhrase('markingRequired')}\n className='flex-grow-1'\n showLabel\n />\n </CellWrapper>\n );\n }\n\n return (\n <CellWrapper>\n <PercentageIndicator\n percentage={value.percentCorrect}\n layout={PercentageIndicatorLayout.LabelBefore}\n className='flex-grow-1'\n />\n </CellWrapper>\n );\n },\n width: 125,\n sortDescFirst: true,\n disableSortBy: !hasResults\n }\n ];\n\n return cols;\n }, [ anonymiseUsers, hasResults ]);\n}\n\n/**\n * Returns memoized table columns. To trigger a recalculation, toggle the value of `refreshData`.\n */\nexport function useGetResultColumns(\n interactive: Interactive,\n interactiveMetadata: InteractiveMetadata,\n results: InteractiveResultSet,\n onColumnHover: (index?: number) => void,\n refreshData: boolean\n): Column<StudentResultsWithSummary>[] {\n return React.useMemo(() => {\n const interactions = getInteractions(interactive);\n\n return interactions.map((interaction, index) => {\n const col: Column<StudentResultsWithSummary> = {\n Header: () => {\n return (\n <InteractionHeaderCell\n interaction={interaction}\n results={results}\n interactive={interactive}\n interactiveMetadata={interactiveMetadata}\n interactionNumber={index + 1}\n onMouseEnter={() => onColumnHover(index)}\n onMouseLeave={() => onColumnHover(null)}\n />\n );\n },\n accessor: 'results',\n /**\n * `onSelectStudentResponse` in `StudentResultsTable` expects the column id to the interaction id\n */\n id: interaction.id,\n disableSortBy: true,\n width: RESULTS_COL_WIDTH,\n Cell: ({ row: { original: studentResults } }) => (\n <StudentResultCell interaction={interaction} studentResults={studentResults} />\n )\n };\n return col;\n });\n }, [refreshData]);\n}\n\n/**\n * Returns memoized table data. To trigger a recalculation, toggle the value of `refreshData`.\n */\nexport function useGetResultsTableData(\n interactive: Interactive,\n results: InteractiveResultSet,\n refreshData: boolean,\n anonymiseUsers: boolean,\n sortBy?: SortingRule<StudentResultsWithSummary>,\n filterBy?: FilterStudentsBy\n): StudentResultsWithSummary[] {\n return React.useMemo(() => {\n const students: StudentResultsWithSummary[] = [];\n\n results.students.forEach(s => {\n const summary = getStudentResultsSummary(interactive, s);\n\n if (filterBy && shouldFilterStudent(filterBy, summary)) return;\n\n students.push({ ...s, summary });\n });\n\n if (sortBy?.id === 'user') {\n const sorted = ArrayHelper.sortBy(students, student => anonymiseUserName(student.user, anonymiseUsers));\n\n return sortBy.desc ? sorted.reverse() : sorted;\n }\n\n if (sortBy?.id === 'summary.unanswered') {\n const sorted = ArrayHelper.sortBy(students, student => student.summary.unanswered);\n\n return sortBy.desc ? sorted.reverse() : sorted;\n }\n\n if (sortBy?.id === 'score' || sortBy?.id === 'percentage') {\n const sorted = ArrayHelper.sortBy(students, student => {\n if (student.summary.awaitingMarking)\n return -1;\n\n return student.summary.percentCorrect;\n });\n\n return sortBy.desc ? sorted.reverse() : sorted;\n }\n\n return students;\n }, [ refreshData, sortBy, anonymiseUsers, filterBy ]);\n}\n\nexport function highlightColumns(tableEl: HTMLElement, highlightIndex?: number): void {\n if (!tableEl)\n return;\n\n const rows = tableEl.querySelectorAll(`.${styles.resultsRow}`);\n\n rows?.forEach(row => {\n row.childNodes.forEach((col: HTMLElement, colIdx: number) => {\n col.classList.remove(styles.highlightColumn);\n\n if (colIdx === highlightIndex)\n col.classList.add(styles.highlightColumn);\n });\n });\n}\n\nexport function highlightRows(tableEl: HTMLElement, highlightIndex?: number): void {\n if (!tableEl)\n return;\n\n const rows = tableEl.querySelectorAll(`.${styles.resultsRow}`);\n\n rows?.forEach((row, rowIdx) => {\n row.classList.remove(styles.highlightResultsRow);\n\n if (rowIdx === highlightIndex)\n row.classList.add(styles.highlightResultsRow);\n });\n}","import { SortingRule } from 'react-table';\n\nimport { ResultsSummary } from 'libs/shared/apps/analytics/interfaces/ResultsSummary';\nimport { ScoreThresholdInsights } from 'libs/shared/constants/ScoreThresholds';\n\nexport type SortStudentsBy = 'score_desc' | 'score_asc';\n\nexport function getSortStudents(sortBy: SortStudentsBy, id: string): SortingRule<any>[] {\n switch (sortBy) {\n case 'score_desc': return [{ id, desc: true }];\n case 'score_asc': return [{ id, desc: false }];\n default: return [];\n }\n}\n\nexport type FilterStudentsBy = 'not_completed' | 'marking_required' | 'helping_hand';\n\nexport function shouldFilterStudent(filter: FilterStudentsBy, summary: ResultsSummary): boolean {\n if (filter === 'marking_required' && !summary.awaitingMarking)\n return true;\n\n if (filter === 'helping_hand' && summary.percentCorrect >= ScoreThresholdInsights.HIGH)\n return true;\n\n if (filter === 'not_completed' && !summary.unanswered)\n return true;\n \n return false;\n}\n\n","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { classNames } from 'libs/common/react/utils/ClassNameHelper';\n\nimport { anonymiseUserName } from 'libs/shared/apps/analytics/utils/AnonymiseUserUtils';\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\nimport { UserRole } from 'libs/shared/enums/UserRole';\nimport { BaseObject, User } from 'libs/shared/interfaces';\nimport { AnonUser } from 'libs/shared/interfaces/models/interactive-results/AnonUser';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport styles from '../recipient-item.scss';\n\nconst namespace = 'shared.userRecipientItemMetadata';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nfunction getSubText(user: User): string {\n const userType = UserHelper.getUserType(user);\n const role = UserHelper.getUserRole(user);\n\n if (userType === UserGroup.Staff) {\n if (role === UserRole.Admin)\n return getPhrase('admin');\n\n return getPhrase('staff');\n }\n\n const yearGroup = UserHelper.getYearGroup(user);\n \n /**\n * Tertiary puts all students into a single group called 'Learners'.\n * When a student is in the 'Learners' group, we don't want to display the group name,\n * but instead we want to just show \"Student\". - Sha\n */\n if (yearGroup?.name && yearGroup.name !== 'Learners')\n return yearGroup.name;\n\n return getPhrase('student');\n}\n\nfunction getUserProps({\n user, anonymiseUsers, showDisplayName\n}: {\n user: AnonUser,\n showDisplayName: boolean;\n anonymiseUsers?: boolean;\n}) {\n if (user.sessionId) {\n const anonName = anonymiseUserName(user, anonymiseUsers);\n const nameParts = anonName.split(' ').filter(n => !!n);\n\n return {\n name: anonName,\n surname: nameParts.slice(1).join(' '),\n avatarUrl: null\n };\n }\n\n return {\n name: anonymiseUsers\n ? anonymiseUserName(user, true)\n : showDisplayName\n ? UserHelper.getDisplayName(user)\n : UserHelper.getFullName(user),\n surname: user.surname,\n avatarUrl: user.avatar?.url\n };\n}\n\nUserRecipientItemMetadata.defaults = {\n showSubText: true\n};\n\ninterface UserRecipientItemMetadataProps {\n user: AnonUser;\n imageCdnUrl: string;\n detailsClassName?: string;\n avatarClassName?: string;\n showDisplayName: boolean;\n nameClassName?: string;\n showSubText?: boolean;\n anonymiseUsers?: boolean;\n getSubText?: (user: BaseObject) => string;\n}\n\nexport function UserRecipientItemMetadata(props: UserRecipientItemMetadataProps): JSX.Element {\n const { name, surname, avatarUrl } = getUserProps(props);\n\n return (\n <>\n <div className={`${styles.avatarContainer} ${props.avatarClassName} d-inline-block flex-shrink-0`}>\n <Avatar\n imageUrl={avatarUrl}\n imageCdnUrl={props.imageCdnUrl}\n initials={UserHelper.getInitials(name, surname)}\n showAnonymousUser={!props.anonymiseUsers && !!props.user.sessionId}\n anonymiseUsers={props.anonymiseUsers}\n anonymousSvgSize={SvgContainerSize.Small}\n />\n </div>\n\n <div className={props.detailsClassName}>\n <h4 className={classNames('font-size-normal fw-normal m-0', props.nameClassName)}>\n {name}\n </h4>\n {props.showSubText && `id` in props.user && <p className='text-secondary m-0'>{props.getSubText ? props.getSubText(props.user) : getSubText(props.user)}</p>}\n </div>\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"header\":\"hnMke\",\"row\":\"ILLa_\",\"fixedTable\":\"_fdpt\",\"interactionHeaderCellOuter\":\"kjXYB\",\"hasResults\":\"M4qgr\",\"interactionHeaderCellInner\":\"cnFvB\",\"resultsCellOuter\":\"bdzRb\",\"correct\":\"xANR6\",\"incorrect\":\"_44sb\",\"awaitingMarking\":\"eQ9sh\",\"unanswered\":\"xRUK8\",\"highlightColumn\":\"f9Zqr\",\"resultsCellInner\":\"LAFwi\",\"highlightResultsRow\":\"TwwLO\",\"resultsRow\":\"xZ5iP\"};","// extracted by mini-css-extract-plugin\nexport default {\"removeRecipient\":\"mCbMC\",\"recipientItem\":\"kdcb0\",\"showSpinner\":\"xH6Mu\",\"avatarContainer\":\"Zcpg3\",\"recipientDetails\":\"v5EmV\",\"recipientDetailsWithRemoveButton\":\"_V928\"};"],"names":["getPhrase","getClassName","props","className","showLabel","PendingIndicator","Indicator","title","spanHack","spanHackClassName","tooltipClassName","InteractionsBar","duration","interactive","timepoints","map","t","i","interactions","length","timepoint","selectedInteraction","interaction","find","id","isSelected","bgClassName","InteractionTypeHelper","typeId","left","visibleAt","key","style","DurationHelper","LanguageService","InteractionResultsSummary","interactiveMetadata","summary","results","InteractionLabel","iconClassName","_parentClip","endTime","startTime","_parentVideo","awaitingMarking","PercentageIndicator","percentage","percentCorrect","layout","unanswered","InteractionResultsSummaryPopover","ref","popoverProps","Popover","InteractionHeaderCell","OverlayTrigger","trigger","students","placement","overlay","rootClose","onMouseEnter","onMouseLeave","interactionNumber","correctness","InteractionCorrectness","StudentResultCell","InteractiveCorrectnessHelper","studentResults","svgName","getSvgName","SvgContainer","RESULTS_COL_WIDTH","CellWrapper","children","HeaderCell","column","isSorted","phraseKey","useGetFixedColumns","anonymiseUsers","imageCdnUrl","hasResults","Header","accessor","u","width","undefined","Cell","value","UserRecipientItemMetadata","user","detailsClassName","nameClassName","showDisplayName","avatarClassName","showSubText","disableSortBy","sortType","sortDescFirst","correct","answered","useGetResultColumns","onColumnHover","refreshData","index","row","original","useGetResultsTableData","sortBy","filterBy","forEach","s","push","sorted","ArrayHelper","student","desc","reverse","highlightColumns","tableEl","highlightIndex","rows","querySelectorAll","childNodes","col","colIdx","classList","remove","add","highlightRows","rowIdx","getSortStudents","shouldFilterStudent","filter","sessionId","anonName","nameParts","split","n","name","surname","slice","join","avatarUrl","avatar","url","getUserProps","imageUrl","initials","showAnonymousUser","anonymousSvgSize","S","getSubText","userType","role","yearGroup","defaults"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[6475],{1619:(e,t,n)=>{n.d(t,{e:()=>y});var a=n(32735),r=n(23481),s=n(12528),l=n(83914),i=n(35223),o=n(33518),c=n(2510);function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function u(e,t,n){return(t=function(e){var t=function(e){if("object"!=m(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==m(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var p=r.T.encloseNamespace("sharev2.shareAvatar"),d=u(u(u(u(u({},c.y.Open,i.vn.Classrooms),c.y.Link,i.vn.Link),c.y.Classroom,i.vn.Classrooms),c.y.Live,i.vn.Play),c.y.LegacyDirect,i.vn.Share),h=u(u(u(u(u({},c.y.Open,"blue"),c.y.Link,"black"),c.y.Classroom,"teal"),c.y.Live,"purple"),c.y.LegacyDirect,"indigo"),v=u(u(u(u(u({},c.y.Open,"openShareType"),c.y.Link,"linkShareType"),c.y.Classroom,"classroomShareType"),c.y.Live,"liveShareType"),c.y.LegacyDirect,"legacyDirectShareType");function y(e){var t,n;return a.createElement("div",{className:"d-flex align-items-center gap-2"},a.createElement("div",null,a.createElement(s.f,{svgName:d[e.type],variant:h[e.type],textVariant:"white",svgWrapperClassName:"p-1",svgSize:null!==(t=e.svgSize)&&void 0!==t?t:l.S.Standard})),a.createElement("div",{className:"d-flex flex-column"},a.createElement("p",{className:"m-0"},function(e){var t=e.type,n=e.classroomName,a=e.additionalTitleText;if(t===c.y.Classroom&&n)return n;var r=p(v[t]);return a&&(r+=" "+a),r}(e)),!e.hideSubtitle&&a.createElement("span",{className:"text-secondary"},null!==(n=e.subtitleText)&&void 0!==n?n:function(e){var t=e.type,n=e.privacy,a=e.studentCount,r=void 0===a?0:a,s=e.classroomGroupCount,l=void 0===s?0:s;switch(t){case c.y.Classroom:return function(e,t){return e&&t?"".concat(p("classroomGroupCount",{smartCount:e}),", ").concat(p("studentSubTitle",{smartCount:t})):e?p("groupSubTitle",{smartCount:e}):t?p("studentSubTitle",{smartCount:t}):p("allStudentsSubTitle")}(l,r);case c.y.Open:return p("openShareTypeSubTitle");case c.y.Link:return function(e){return[o.e.JustMySchool,o.e.Protected].includes(e)?p("respectRatingsSubTitle"):e===o.e.JustMySchoolOverrideRestriction?p("anyoneInSchoolSubTitle"):e===o.e.ProtectedOverrideRestriction?p("anyoneSignedInSubTitle"):e===o.e.Public?p("anyoneWithLinkSubTitle"):e===o.e.PinCode?p("anyoneWithPinSubTitle"):void 0}(n);case c.y.Live:return p("liveShareTypeSubTitle");case c.y.LegacyDirect:return p("legacyDirectTypeSubTitle");default:return p("publicShareTypeSubTitle")}}(e))))}},41661:(e,t,n)=>{var a;n.d(t,{D:()=>a}),function(e){e.GoogleClassroom="google-classroom",e.MicrosoftTeams="microsoft-teams",e.Vivi="vivi",e.AppleTv="apply-tv"}(a||(a={}))},40841:(e,t,n)=>{n.d(t,{_:()=>i});var a=n(23481),r=n(41661),s=n(65728),l=a.T.encloseNamespace("shared.shared-utils"),i={getShareIntegrations:function(e,t){return[{id:r.D.GoogleClassroom,name:l("googleClassroom"),enabled:e,settingName:s.E.ShareToGoogleClassroom},{id:r.D.MicrosoftTeams,name:l("msftTeams"),enabled:t,settingName:s.E.ShareToMicrosoftTeams}]}}},35690:(e,t,n)=>{n.d(t,{QD:()=>w,Qv:()=>N,__:()=>C});var a=n(32735),r=n(68050),s=n(69111),l=n(42648),i=n(82602),o=n(31453),c=n(1619),m=n(83345),u=n(4594),p="sharev2.shareViewCount";function d(e){return[u.E.Playlist,u.E.Series].includes(e.share.objectTypeId)?a.createElement("span",null,"-"):a.createElement(m.x,{namespace:p,phrase:"viewCount",options:{smartCount:e.share.viewCount||0}})}var h=n(2510),v=n(83914),y=n(35223);function g(e){return[u.E.Playlist,u.E.Series].includes(e.share.objectTypeId)?a.createElement("span",null,"-"):a.createElement("span",{className:"d-inline-flex flex-row gap-2 align-items-center"},a.createElement(v.x,{svgName:y.vn.User}),a.createElement("span",null,function(){var t=e.share.accessCount||0;if(e.share.type===h.y.Open)return"".concat(t);if(e.share.type===h.y.Classroom){var n=e.share.recipients.length;return"".concat(t,"/").concat(n)}return"".concat(t)}()))}var f=n(21789),E=n(15611),S=n(91693);const b={shareListItem:"vLROV",visibleOnHover:"o2KJH"};var x="assign.previousAssignments";function T(e){return a.createElement("div",{className:(0,o.A)("d-flex align-items-center justify-content-between",e.show&&"mb-3")},a.createElement("h3",{className:"h6 m-0 p-0"},a.createElement(m.x,{namespace:x,phrase:"heading",options:{count:e.count}})),a.createElement(S.h,{svgName:e.show?y.vn.ChevronUp:y.vn.ChevronDown,onClick:e.onToggle}))}function C(){var e="d-flex align-items-end justify-content-start fw-medium";return a.createElement(m.D.Provider,{value:x},a.createElement(r.Z,{className:"gx-2 px-3 mb-2"},a.createElement(s.Z,{xs:4,className:e},a.createElement(m.x,{phrase:"assignedTo"})),a.createElement(s.Z,{xs:2,className:e},a.createElement(m.x,{phrase:"views"})),a.createElement(s.Z,{xs:2,className:e},a.createElement(m.x,{phrase:"viewedBy"})),a.createElement(s.Z,{xs:4,className:e},a.createElement(m.x,{phrase:"dateCreated"}))))}function k(e){var t,n=f.x.getClassroomForShare(e.share,e.classrooms),l=null===(t=e.getItemAnalytics)||void 0===t?void 0:t.call(e,e.share);return a.createElement(E.F,{key:e.share.shareId,appLink:e.getItemAppLink(e.share),analyticsData:null==l?void 0:l.data,analyticsOptions:null==l?void 0:l.options,className:(0,o.A)("d-block p-3 hover-bg-light-blue border border-top-0 no-hover-text-underline",b.shareListItem,e.className)},a.createElement(r.Z,{className:"gx-2"},a.createElement(s.Z,{xs:4,className:"d-flex align-items-center"},a.createElement(c.e,{type:e.share.type,privacy:e.share.privacy,classroomName:null==n?void 0:n.name,svgSize:v.S.Small,hideSubtitle:!0})),a.createElement(s.Z,{xs:2,className:"d-flex align-items-center justify-content-start"},a.createElement(d,{share:e.share})),a.createElement(s.Z,{xs:2,className:"d-flex align-items-center justify-content-start"},a.createElement(g,{share:e.share})),a.createElement(s.Z,{xs:4,lg:3,className:"d-flex align-items-center justify-content-start"},a.createElement("span",null,(0,i.WU)(e.share.dateCreated))),a.createElement(s.Z,{lg:1,className:"align-items-center justify-content-end d-none d-lg-flex"},a.createElement("span",{className:(0,o.A)("cursor-pointer text-info hover-text-underline",b.visibleOnHover)},a.createElement(m.x,{namespace:x,phrase:"view"})))))}function N(e){var t;return a.createElement("div",{className:(0,o.A)("d-flex flex-column border-top rounded-top overflow-hidden")},a.createElement(l.ZP,{autoHeight:!0,autoHeightMin:0,autoHeightMax:null!==(t=e.scrollHeightMax)&&void 0!==t?t:215,autoHide:!0},e.assignments.map(function(t,n){return a.createElement(k,{share:t,classrooms:e.classrooms,getItemAppLink:e.getItemAppLink,getItemAnalytics:function(t){var a;return null===(a=e.getItemAnalytics)||void 0===a?void 0:a.call(e,t,n)},className:(0,o.A)(n%2==0&&"bg-gray-100"),key:t.shareId})})))}function w(e){if(!e.assignments.length)return a.createElement(a.Fragment,null);var t=e.show&&e.assignments.length>3;return a.createElement("div",{className:(0,o.A)("bg-white rounded-3 p-3",t&&"pb-0")},a.createElement(T,{count:e.assignments.length,onToggle:e.onToggle,show:e.show}),e.show&&a.createElement(a.Fragment,null,a.createElement(C,null),a.createElement(N,Object.assign({},e))))}},24578:(e,t,n)=>{n.r(t),n.d(t,{ShowAssignmentsView:()=>U});var a=n(32735),r=n(23481),s=n(20354),l=n(75896),i=n(110),o=n(18488),c=n(21789),m=n(9111),u=n(83914),p=n(83345),d=n(16714),h=n(22902),v=n(37802),y=n(70227),g=n(35223),f=n(14070),E=n(97291),S=n(86099),b=n(83351),x=n(35690),T=n(95890),C=n(40254),k=n(88630),N=n(23923),w=n(97958),L=n(99742),A="assign.sharesAndAssignmentsEmptyState",I=r.T.encloseNamespace(A);function j(e){return a.createElement(w.u,{className:"py-4"},a.createElement(w.u.Image,{size:"small",src:L.W.EmptyStates.Share.MY_SHARES}),a.createElement(w.u.Heading,null,a.createElement(p.x,{phrase:"title",namespace:A})),a.createElement(w.u.Info,null,a.createElement(p.x,{phrase:"description",namespace:A})),a.createElement(w.u.Cta,{icon:g.vn.Share,text:I("ctaAssign"),appLink:e.assignAppLink}),a.createElement(w.u.Cta,{className:"text-dark hover-text-underline mt-3 fw-medium",text:I("ctaShareLink"),appLink:e.shareLinkAppLink}))}var P="assign.sharesEmptyState",D=r.T.encloseNamespace(P);function O(e){return a.createElement(w.u,{className:"py-4"},a.createElement(w.u.Image,{size:"small",src:L.W.EmptyStates.Share.MY_SHARES}),a.createElement(w.u.Heading,null,a.createElement(p.x,{phrase:"title",namespace:P})),a.createElement(w.u.Info,null,a.createElement(p.x,{phrase:"description",namespace:P})),a.createElement(w.u.Cta,{icon:g.vn.Link,text:D("cta"),appLink:e.appLink}))}var _="assign.showAssignmentsView",H=r.T.encloseNamespace(_),M=400;function Z(e,t){if(e&&t)return i.O.isSame(e.dateCreated,t.dateCreated)?0:i.O.isAfter(e.dateCreated,t.dateCreated)?1:-1}function B(e){return a.createElement("a",{href:e.href,target:"_blank",className:"btn btn-link text-info"},a.createElement("span",{className:"pe-1"},a.createElement(p.x,{phrase:"viewInAnalytics",namespace:_})),a.createElement(u.x,{svgName:g.vn.NewWindow,size:u.S.Small}))}function F(e){return"assign-and-shares"===e.type?a.createElement(j,{assignAppLink:e.assignAppLink,shareLinkAppLink:e.shareAppLink}):a.createElement(O,{appLink:e.shareAppLink})}function U(e){var t,n,r,i=(0,T._)({objectId:e.objectId,entityType:e.entityType}),u=(0,h.T)().hasPermissions,p=(0,v.r)(null).hasShareFlowV2,g=(0,N.B)(),w=s.a.useBasicFetch(o.o.getSharesByObjectId(e.objectId)),L=(null===(t=w.data)||void 0===t?void 0:t.sort(Z))||[],A=l.m.uniq(L.map(c.x.getClassroomIdFromShare).filter(function(e){return!!e})),I=s.a.useBasicFetch(w.hasCompleted&&k.F.getClassroomsByIds(A,null===(n=i.currentUser.data)||void 0===n?void 0:n.customerId)),j=y.c.getObjectUrl(null===(r=i.config.data)||void 0===r?void 0:r.analyticsWebUrl,i.entity.data,p),P=u(d.C.ViewAnalyticsProduct)&&u(d.C.ViewCustomerAnalytics),D=p&&g?"shares":"assign-and-shares",O=i.loaded&&!!w.data&&!!I.data;return a.createElement(m.G,{size:"lg",title:H("title"),showLoadingSpinner:!O,closePopup:e.closePopup},!L.length&&a.createElement(F,{assignAppLink:C.W.flowSelector({entityType:e.entityType,objectId:e.objectId}),shareAppLink:{application:E.O.SHARE,action:f.e.Share.SHARE,args:[e.objectId],params:{entityType:e.entityType}},type:D}),!!L.length&&a.createElement(a.Fragment,null,a.createElement(x.__,null),a.createElement(x.Qv,{assignments:L.reverse(),classrooms:I.data,getItemAppLink:function(e){var t=(0,S.pY)(e);if(t)return t},scrollHeightMax:M})),a.createElement(b.P,{hideNextButton:!0,hideCreateClassroomButton:!0,onClickBack:e.closePopup,backButtonText:H("close"),leftComponent:!!j&&P&&a.createElement(B,{href:j})}))}},82602:(e,t,n)=>{n.d(t,{WU:()=>c});var a=["second","minute","hour","day","week","month","year"],r=["秒","分钟","小时","天","周","个月","年"],s={},l=function(e,t){s[e]=t},i=[60,60,24,7,365/7/12,12];function o(e){return e instanceof Date?e:!isNaN(e)||/^\d+$/.test(e)?new Date(parseInt(e)):(e=(e||"").trim().replace(/\.\d+/,"").replace(/-/,"/").replace(/-/,"/").replace(/(\d)T(\d)/,"$1 $2").replace(/Z/," UTC").replace(/([+-]\d\d):?(\d\d)/," $1$2"),new Date(e))}var c=function(e,t,n){var a=function(e,t){return(+(t?o(t):new Date)-+o(e))/1e3}(e,n&&n.relativeDate);return function(e,t){for(var n=e<0?1:0,a=e=Math.abs(e),r=0;e>=i[r]&&r<i.length;r++)e/=i[r];return(e=Math.floor(e))>(0==(r*=2)?9:1)&&(r+=1),t(e,r,a)[n].replace("%s",e.toString())}(a,function(e){return s[e]||s.en_US}(t))};l("en_US",function(e,t){if(0===t)return["just now","right now"];var n=a[Math.floor(t/2)];return e>1&&(n+="s"),[e+" "+n+" ago","in "+e+" "+n]}),l("zh_CN",function(e,t){if(0===t)return["刚刚","片刻后"];var n=r[~~(t/2)];return[e+" "+n+"前",e+" "+n+"后"]})}}]);
2
- //# sourceMappingURL=6475-502e390010-lite.chunk.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scripts/6475-502e390010-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/share-v2/components/share-avatar/ShareAvatar.tsx","file:///app/packages/libs/shared/src/enums/IntegrationId.ts","file:///app/packages/libs/shared/src/utils/IntegrationHelper.ts","file:///app/packages/libs/shared/src/apps/share-v2/components/share-view-count/ShareViewCount.tsx","file:///app/packages/libs/shared/src/apps/share-v2/components/share-viewed-by-count/ShareViewedByCount.tsx","file:///app/packages/projects/lite/src/apps/assign/components/previous-assignments/previous-assignments.scss","file:///app/packages/projects/lite/src/apps/assign/components/previous-assignments/PreviousAssignments.tsx","file:///app/packages/projects/lite/src/apps/assign/views/show-assignments-view/empty-states/shares-and-assignments-empty-state/SharesAndAssignmentsEmptyState.tsx","file:///app/packages/projects/lite/src/apps/assign/views/show-assignments-view/empty-states/shares-empty-state/SharesEmptyState.tsx","file:///app/packages/projects/lite/src/apps/assign/views/show-assignments-view/ShowAssignmentsView.tsx","file:///app/node_modules/timeago.js/esm/lang/en_US.js","file:///app/node_modules/timeago.js/esm/lang/zh_CN.js","file:///app/node_modules/timeago.js/esm/register.js","file:///app/node_modules/timeago.js/esm/utils/date.js","file:///app/node_modules/timeago.js/esm/format.js","file:///app/node_modules/timeago.js/esm/index.js"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { IconCircle } from 'libs/shared/components/icon-circle/IconCircle';\nimport { SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SharePrivacy } from '../../enums/SharePrivacy';\nimport { ShareType } from '../../enums/ShareType';\n\nconst namespace = 'sharev2.shareAvatar';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst icons = {\n [ShareType.Open]: cvSvgLibrary.Classrooms,\n [ShareType.Link]: cvSvgLibrary.Link,\n [ShareType.Classroom]: cvSvgLibrary.Classrooms,\n [ShareType.Live]: cvSvgLibrary.Play,\n [ShareType.LegacyDirect]: cvSvgLibrary.Share\n};\n\nconst iconColours = {\n [ShareType.Open]: 'blue',\n [ShareType.Link]: 'black',\n [ShareType.Classroom]: 'teal',\n [ShareType.Live]: 'purple',\n [ShareType.LegacyDirect]: 'indigo'\n};\n\nconst shareTypeTitlePhraseMap = {\n [ShareType.Open]: 'openShareType',\n [ShareType.Link]: 'linkShareType',\n [ShareType.Classroom]: 'classroomShareType',\n [ShareType.Live]: 'liveShareType',\n [ShareType.LegacyDirect]: 'legacyDirectShareType'\n};\n\nfunction getTitle({ type, classroomName, additionalTitleText }: ShareAvatarProps) {\n if (type === ShareType.Classroom && classroomName)\n return classroomName;\n\n let title = getPhrase(shareTypeTitlePhraseMap[type]);\n\n if (additionalTitleText)\n title += ' ' + additionalTitleText;\n\n return title;\n}\n\nfunction getClassroomSubtitle(classroomGroupCount: number, studentCount: number): string {\n if (classroomGroupCount && studentCount)\n return `${getPhrase('classroomGroupCount', { smartCount: classroomGroupCount })}, ${getPhrase('studentSubTitle', { smartCount: studentCount })}`;\n\n if (classroomGroupCount)\n return getPhrase('groupSubTitle', { smartCount: classroomGroupCount });\n\n if (studentCount)\n return getPhrase('studentSubTitle', { smartCount: studentCount });\n\n return getPhrase('allStudentsSubTitle');\n}\n\nfunction getLinkSubtitle(privacy: SharePrivacy) {\n if ([ SharePrivacy.JustMySchool, SharePrivacy.Protected ].includes(privacy))\n return getPhrase('respectRatingsSubTitle');\n\n if (privacy === SharePrivacy.JustMySchoolOverrideRestriction)\n return getPhrase('anyoneInSchoolSubTitle');\n\n if (privacy === SharePrivacy.ProtectedOverrideRestriction)\n return getPhrase('anyoneSignedInSubTitle');\n\n if (privacy === SharePrivacy.Public)\n return getPhrase('anyoneWithLinkSubTitle');\n\n if (privacy === SharePrivacy.PinCode)\n return getPhrase('anyoneWithPinSubTitle');\n}\n\nfunction getSubtitle({ type, privacy, studentCount = 0, classroomGroupCount = 0 }: ShareAvatarProps) {\n switch (type) {\n case ShareType.Classroom:\n return getClassroomSubtitle(classroomGroupCount, studentCount);\n\n case ShareType.Open:\n return getPhrase('openShareTypeSubTitle');\n\n case ShareType.Link:\n return getLinkSubtitle(privacy);\n \n case ShareType.Live:\n return getPhrase('liveShareTypeSubTitle');\n\n case ShareType.LegacyDirect:\n return getPhrase('legacyDirectTypeSubTitle');\n\n default:\n return getPhrase('publicShareTypeSubTitle');\n }\n}\n\ninterface ShareAvatarProps {\n type: ShareType;\n privacy: SharePrivacy;\n studentCount?: number;\n classroomGroupCount?: number;\n classroomName?: string;\n hideSubtitle?: boolean;\n subtitleText?: string;\n svgSize?: SvgContainerSize;\n additionalTitleText?: string;\n}\n\nexport function ShareAvatar(props: ShareAvatarProps): JSX.Element {\n return (\n <div className='d-flex align-items-center gap-2'>\n <div>\n <IconCircle\n svgName={icons[props.type]}\n variant={iconColours[props.type]}\n textVariant='white'\n svgWrapperClassName='p-1'\n svgSize={props.svgSize ?? SvgContainerSize.Standard}\n />\n </div>\n <div className='d-flex flex-column'>\n <p className='m-0'>{getTitle(props)}</p>\n {!props.hideSubtitle && <span className='text-secondary'>{props.subtitleText ?? getSubtitle(props)}</span>}\n </div>\n </div>\n );\n}","export enum IntegrationId {\n GoogleClassroom = 'google-classroom',\n MicrosoftTeams = 'microsoft-teams',\n Vivi = 'vivi',\n AppleTv = 'apply-tv'\n}","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { Integration } from 'libs/shared/interfaces';\n\nconst namespace = 'shared.shared-utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport const IntegrationHelper = {\n getShareIntegrations(googleClassroomSetting: boolean, msftTeamsSetting: boolean): Integration[] {\n return [\n {\n id: IntegrationId.GoogleClassroom,\n name: getPhrase('googleClassroom'),\n enabled: googleClassroomSetting,\n settingName: SettingName.ShareToGoogleClassroom\n },\n {\n id: IntegrationId.MicrosoftTeams,\n name: getPhrase('msftTeams'),\n enabled: msftTeamsSetting,\n settingName: SettingName.ShareToMicrosoftTeams\n }\n ];\n }\n};\n","import React from 'react';\n\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { MasterType } from 'libs/shared/enums/MasterType';\n\nconst namespace = 'sharev2.shareViewCount';\n\ninterface ShareViewCountProps {\n share: Share;\n}\n\nexport function ShareViewCount(props: ShareViewCountProps): JSX.Element {\n const isCollection = [ MasterType.Playlist, MasterType.Series ].includes(props.share.objectTypeId);\n \n if (isCollection)\n return <span>-</span>;\n\n return <Text namespace={namespace} phrase='viewCount' options={{ smartCount: props.share.viewCount || 0 }} />;\n}","import React from 'react';\n\nimport { ShareType } from 'libs/shared/apps/share-v2/enums/ShareType';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\ninterface ShareViewedByCountProps {\n share: Share;\n}\n\nexport function ShareViewedByCount(props: ShareViewedByCountProps): JSX.Element {\n const isCollection = [ MasterType.Playlist, MasterType.Series ].includes(props.share.objectTypeId);\n\n if (isCollection)\n return <span>-</span>;\n \n function getViewCount(): string {\n const shareAccessCount = props.share.accessCount || 0;\n if (props.share.type === ShareType.Open)\n return `${shareAccessCount}`;\n\n if (props.share.type === ShareType.Classroom) {\n const totalRecipients = props.share.recipients.length;\n return `${shareAccessCount}/${totalRecipients}`;\n }\n\n return `${shareAccessCount}`;\n }\n \n return (\n <span className='d-inline-flex flex-row gap-2 align-items-center'>\n <SvgContainer svgName={cvSvgLibrary.User} />\n <span>{getViewCount()}</span>\n </span>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"shareListItem\":\"vLROV\",\"visibleOnHover\":\"o2KJH\"};","import React from 'react';\nimport { Col, Row } from 'react-bootstrap';\nimport Scrollbars from 'react-custom-scrollbars-2';\nimport { format as formatDate } from 'timeago.js';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { classNames } from 'libs/common/react/utils/ClassNameHelper';\n\nimport { AnalyticsOptions, HashObject } from 'libs/analytics/interfaces';\n\nimport { ShareAvatar } from 'libs/shared/apps/share-v2/components/share-avatar/ShareAvatar';\nimport { ShareViewCount } from 'libs/shared/apps/share-v2/components/share-view-count/ShareViewCount';\nimport { ShareViewedByCount } from 'libs/shared/apps/share-v2/components/share-viewed-by-count/ShareViewedByCount';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { ShareHelper } from 'libs/shared/apps/share-v2/utils/ShareHelper';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\nimport { Classroom } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './previous-assignments.scss';\n\nconst namespace = 'assign.previousAssignments';\n\ninterface PreviousAssignmentsHeaderProps {\n count: number;\n show: boolean;\n onToggle: () => void;\n}\n\nfunction PreviousAssignmentsHeader(props: PreviousAssignmentsHeaderProps): JSX.Element {\n return (\n <div className={classNames('d-flex align-items-center justify-content-between', props.show && 'mb-3')}>\n <h3 className='h6 m-0 p-0'><Text namespace={namespace} phrase='heading' options={{ count: props.count }} /></h3>\n <IconButton\n svgName={props.show ? cvSvgLibrary.ChevronUp : cvSvgLibrary.ChevronDown}\n onClick={props.onToggle}\n />\n </div>\n );\n}\n\nexport function PreviousAssignmentsListHeader(): JSX.Element {\n const columnClassNames = 'd-flex align-items-end justify-content-start fw-medium';\n \n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <Row className='gx-2 px-3 mb-2'>\n <Col xs={4} className={columnClassNames}>\n <Text phrase='assignedTo' />\n </Col>\n <Col xs={2} className={columnClassNames}>\n <Text phrase='views' />\n </Col>\n <Col xs={2} className={columnClassNames}>\n <Text phrase='viewedBy' />\n </Col>\n <Col xs={4} className={columnClassNames}>\n <Text phrase='dateCreated' />\n </Col>\n </Row>\n </LanguageNamespaceContext.Provider>\n );\n}\n\ntype ItemAnalytics = {\n data: HashObject;\n options: AnalyticsOptions;\n}\ninterface PreviousAssignmentListItemProps {\n share: Share;\n classrooms: Classroom[];\n getItemAppLink: (share: Share) => Core.AppLink;\n\n getItemAnalytics?: (share: Share) => ItemAnalytics;\n className?: string;\n}\n\nfunction PreviousAssignmentListItem(props: PreviousAssignmentListItemProps): JSX.Element {\n const shareClassroom = ShareHelper.getClassroomForShare(props.share, props.classrooms);\n\n const analytics = props.getItemAnalytics?.(props.share);\n\n return (\n <AppLink\n key={props.share.shareId}\n appLink={props.getItemAppLink(props.share)}\n analyticsData={analytics?.data}\n analyticsOptions={analytics?.options}\n className={classNames('d-block p-3 hover-bg-light-blue border border-top-0 no-hover-text-underline', styles.shareListItem, props.className)}\n >\n <Row className='gx-2'>\n <Col xs={4} className='d-flex align-items-center'>\n <ShareAvatar\n type={props.share.type}\n privacy={props.share.privacy}\n classroomName={shareClassroom?.name}\n svgSize={SvgContainerSize.Small}\n hideSubtitle\n />\n </Col>\n <Col xs={2} className='d-flex align-items-center justify-content-start'>\n <ShareViewCount share={props.share} />\n </Col>\n <Col xs={2} className='d-flex align-items-center justify-content-start'>\n <ShareViewedByCount share={props.share} />\n </Col>\n <Col xs={4} lg={3} className='d-flex align-items-center justify-content-start'>\n <span>{formatDate(props.share.dateCreated)}</span>\n </Col>\n <Col lg={1} className='align-items-center justify-content-end d-none d-lg-flex'>\n <span className={classNames('cursor-pointer text-info hover-text-underline', styles.visibleOnHover)}>\n <Text namespace={namespace} phrase='view' />\n </span>\n </Col>\n </Row>\n </AppLink>\n );\n}\n\ninterface PreviousAssignmentsListProps {\n assignments: Share[];\n classrooms: Classroom[];\n getItemAppLink: (share: Share) => Core.AppLink;\n getItemAnalytics?: (share: Share, yIndex: number) => ItemAnalytics;\n scrollHeightMax?: number;\n}\n\nexport function PreviousAssignmentsList(props: PreviousAssignmentsListProps): JSX.Element {\n return (\n <div className={classNames(\n 'd-flex flex-column border-top rounded-top overflow-hidden'\n )}>\n <Scrollbars\n autoHeight\n autoHeightMin={0}\n autoHeightMax={props.scrollHeightMax ?? 215}\n autoHide\n >\n {props.assignments.map((share, idx) => (\n <PreviousAssignmentListItem\n share={share}\n classrooms={props.classrooms}\n getItemAppLink={props.getItemAppLink}\n getItemAnalytics={share => props.getItemAnalytics?.(share, idx)}\n className={classNames(idx % 2 === 0 && 'bg-gray-100')}\n key={share.shareId}\n />\n ))}\n </Scrollbars>\n </div>\n );\n}\n\ninterface PreviousAssignmentsProps {\n show: boolean;\n assignments: Share[];\n classrooms: Classroom[];\n onToggle: () => void;\n getItemAppLink: (share: Share) => Core.AppLink;\n getItemAnalytics?: (share: Share, yIndex: number) => ItemAnalytics;\n}\n\nexport function PreviousAssignments(props: PreviousAssignmentsProps): JSX.Element {\n if (!props.assignments.length)\n return <></>;\n \n const noBottomPadding = props.show && props.assignments.length > 3;\n \n return (\n <div className={classNames('bg-white rounded-3 p-3', noBottomPadding && 'pb-0')}>\n <PreviousAssignmentsHeader count={props.assignments.length} onToggle={props.onToggle} show={props.show} />\n {props.show && (\n <>\n <PreviousAssignmentsListHeader />\n <PreviousAssignmentsList {...props} />\n </>\n )}\n </div>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'assign.sharesAndAssignmentsEmptyState';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface SharesAndAssignmentsEmptyStateProps {\n assignAppLink: Core.AppLink;\n shareLinkAppLink: Core.AppLink;\n}\n\nexport function SharesAndAssignmentsEmptyState(props: SharesAndAssignmentsEmptyStateProps): JSX.Element {\n return (\n <EmptyState className='py-4'>\n <EmptyState.Image\n size='small'\n src={ImageUrls.EmptyStates.Share.MY_SHARES}\n />\n <EmptyState.Heading><Text phrase='title' namespace={namespace} /></EmptyState.Heading>\n <EmptyState.Info><Text phrase='description' namespace={namespace} /></EmptyState.Info>\n <EmptyState.Cta\n icon={cvSvgLibrary.Share}\n text={getPhrase('ctaAssign')}\n appLink={props.assignAppLink}\n />\n <EmptyState.Cta\n className='text-dark hover-text-underline mt-3 fw-medium'\n text={getPhrase('ctaShareLink')}\n appLink={props.shareLinkAppLink}\n />\n </EmptyState>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'assign.sharesEmptyState';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface SharesEmptyStateProps {\n appLink: Core.AppLink;\n}\n\nexport function SharesEmptyState(props: SharesEmptyStateProps): JSX.Element {\n return (\n <EmptyState className='py-4'>\n <EmptyState.Image\n size='small'\n src={ImageUrls.EmptyStates.Share.MY_SHARES}\n />\n <EmptyState.Heading><Text phrase='title' namespace={namespace} /></EmptyState.Heading>\n <EmptyState.Info><Text phrase='description' namespace={namespace} /></EmptyState.Info>\n <EmptyState.Cta\n icon={cvSvgLibrary.Link}\n text={getPhrase('cta')}\n appLink={props.appLink}\n />\n </EmptyState>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { ShareRequests } from 'libs/shared/apps/share-v2/flight-requests/ShareRequests';\nimport { Share } from 'libs/shared/apps/share-v2/interfaces/Share';\nimport { ShareHelper } from 'libs/shared/apps/share-v2/utils/ShareHelper';\nimport { SharableEntityType } from 'libs/shared/apps/share-v2/utils/ShareViewHelper';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Classroom, PopupViewProps } from 'libs/shared/interfaces';\nimport { AnalyticsRouteHelper } from 'libs/shared/utils/AnalyticsRouteHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { getInsightsOverviewAppLink } from 'shared/utils/ObjectAppLinkHelper';\n\nimport { FlowControls } from 'apps/assign/components/flow-controls/FlowControls';\nimport { PreviousAssignmentsList, PreviousAssignmentsListHeader } from 'apps/assign/components/previous-assignments/PreviousAssignments';\nimport { useAssignSharedData } from 'apps/assign/hooks/useAssignSharedData';\nimport { AssignAppLinkHelper } from 'apps/assign/utils/AssignAppLinkHelper';\nimport { ClassroomRequests } from 'apps/classrooms/flight-requests/ClassroomRequests';\nimport { useIsTertiary } from 'apps/onboarding/hooks/useIsTertiary';\n\nimport { SharesAndAssignmentsEmptyState } from './empty-states/shares-and-assignments-empty-state/SharesAndAssignmentsEmptyState';\nimport { SharesEmptyState } from './empty-states/shares-empty-state/SharesEmptyState';\n\nconst namespace = 'assign.showAssignmentsView';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst MAX_SCROLL_HEIGHT = 400;\n\nfunction sortByDateCreated(a: Share, b: Share) {\n if (!a || !b)\n return;\n\n if (DateHelper.isSame(a.dateCreated, b.dateCreated))\n return 0;\n\n if (DateHelper.isAfter(a.dateCreated, b.dateCreated))\n return 1;\n\n return -1;\n}\n\ninterface ViewInSchoolAnalyticsButtonProps {\n href: string;\n}\n\nfunction ViewInSchoolAnalyticsButton(props: ViewInSchoolAnalyticsButtonProps): JSX.Element {\n return (\n <a href={props.href} target='_blank' className='btn btn-link text-info'>\n <span className='pe-1'><Text phrase='viewInAnalytics' namespace={namespace} /></span>\n <SvgContainer svgName={cvSvgLibrary.NewWindow} size={SvgContainerSize.Small} />\n </a>\n );\n}\n\ninterface ShowAssignmentsEmptyStateProps {\n type: 'assign-and-shares' | 'shares';\n assignAppLink: Core.AppLink;\n shareAppLink: Core.AppLink;\n}\n\nfunction ShowAssignmentsEmptyState(props: ShowAssignmentsEmptyStateProps): JSX.Element {\n if (props.type === 'assign-and-shares') {\n return (\n <SharesAndAssignmentsEmptyState\n assignAppLink={props.assignAppLink}\n shareLinkAppLink={props.shareAppLink}\n />\n );\n }\n \n return <SharesEmptyState appLink={props.shareAppLink} />;\n}\n\ninterface ShowAssignmentsViewProps extends PopupViewProps {\n objectId: string;\n entityType: SharableEntityType;\n}\n\nexport function ShowAssignmentsView(props: ShowAssignmentsViewProps): JSX.Element {\n const sharedData = useAssignSharedData({\n objectId: props.objectId,\n entityType: props.entityType\n });\n\n const { hasPermissions } = usePermissions();\n const { hasShareFlowV2 } = useSettings(null);\n const isTertiary = useIsTertiary();\n\n const previousShares = Flight.useBasicFetch<Share[]>(ShareRequests.getSharesByObjectId(props.objectId));\n const assignments = previousShares.data?.sort(sortByDateCreated) || [];\n const previousAssignmentClassroomIds = ArrayHelper.uniq(\n assignments.map(ShareHelper.getClassroomIdFromShare).filter(x => !!x)\n );\n const classrooms = Flight.useBasicFetch<Classroom[]>(\n previousShares.hasCompleted &&\n ClassroomRequests.getClassroomsByIds(previousAssignmentClassroomIds, sharedData.currentUser.data?.customerId)\n );\n\n function getItemAppLink(share: Share) {\n const appLink = getInsightsOverviewAppLink(share);\n if (!appLink)\n return;\n\n return appLink;\n }\n\n const analyticsUrl = AnalyticsRouteHelper.getObjectUrl(\n sharedData.config.data?.analyticsWebUrl,\n sharedData.entity.data,\n hasShareFlowV2\n );\n \n const canViewSchoolAnalytics =\n hasPermissions(PermissionName.ViewAnalyticsProduct) &&\n hasPermissions(PermissionName.ViewCustomerAnalytics);\n\n const emptyStateType = (hasShareFlowV2 && isTertiary) ? 'shares' : 'assign-and-shares';\n\n const loaded = sharedData.loaded && !!previousShares.data && !!classrooms.data;\n\n return (\n <Popup\n size='lg'\n title={getPhrase('title')}\n showLoadingSpinner={!loaded}\n closePopup={props.closePopup}\n >\n {!assignments.length &&\n <ShowAssignmentsEmptyState\n assignAppLink={AssignAppLinkHelper.flowSelector({ entityType: props.entityType, objectId: props.objectId })}\n shareAppLink={{\n application: AppChannels.SHARE,\n action: Actions.Share.SHARE,\n args: [props.objectId],\n params: {\n entityType: props.entityType\n }\n }}\n type={emptyStateType}\n />\n }\n \n {!!assignments.length &&\n <>\n <PreviousAssignmentsListHeader />\n <PreviousAssignmentsList\n assignments={assignments.reverse()}\n classrooms={classrooms.data}\n getItemAppLink={getItemAppLink}\n scrollHeightMax={MAX_SCROLL_HEIGHT}\n />\n </>\n }\n <FlowControls\n hideNextButton\n hideCreateClassroomButton\n onClickBack={props.closePopup}\n backButtonText={getPhrase('close')}\n leftComponent={!!analyticsUrl && canViewSchoolAnalytics && <ViewInSchoolAnalyticsButton href={analyticsUrl} />}\n />\n </Popup>\n );\n}","var EN_US = ['second', 'minute', 'hour', 'day', 'week', 'month', 'year'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['just now', 'right now'];\n var unit = EN_US[Math.floor(idx / 2)];\n if (diff > 1)\n unit += 's';\n return [diff + \" \" + unit + \" ago\", \"in \" + diff + \" \" + unit];\n}\n//# sourceMappingURL=en_US.js.map","var ZH_CN = ['秒', '分钟', '小时', '天', '周', '个月', '年'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['刚刚', '片刻后'];\n var unit = ZH_CN[~~(idx / 2)];\n return [diff + \" \" + unit + \"\\u524D\", diff + \" \" + unit + \"\\u540E\"];\n}\n//# sourceMappingURL=zh_CN.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\n/**\n * All supported locales\n */\nvar Locales = {};\n/**\n * register a locale\n * @param locale\n * @param func\n */\nexport var register = function (locale, func) {\n Locales[locale] = func;\n};\n/**\n * get a locale, default is en_US\n * @param locale\n * @returns {*}\n */\nexport var getLocale = function (locale) {\n return Locales[locale] || Locales['en_US'];\n};\n//# sourceMappingURL=register.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nvar SEC_ARRAY = [\n 60,\n 60,\n 24,\n 7,\n 365 / 7 / 12,\n 12,\n];\n/**\n * format Date / string / timestamp to timestamp\n * @param input\n * @returns {*}\n */\nexport function toDate(input) {\n if (input instanceof Date)\n return input;\n // @ts-ignore\n if (!isNaN(input) || /^\\d+$/.test(input))\n return new Date(parseInt(input));\n input = (input || '')\n // @ts-ignore\n .trim()\n .replace(/\\.\\d+/, '') // remove milliseconds\n .replace(/-/, '/')\n .replace(/-/, '/')\n .replace(/(\\d)T(\\d)/, '$1 $2')\n .replace(/Z/, ' UTC') // 2017-2-5T3:57:52Z -> 2017-2-5 3:57:52UTC\n .replace(/([+-]\\d\\d):?(\\d\\d)/, ' $1$2'); // -04:00 -> -0400\n return new Date(input);\n}\n/**\n * format the diff second to *** time ago, with setting locale\n * @param diff\n * @param localeFunc\n * @returns\n */\nexport function formatDiff(diff, localeFunc) {\n /**\n * if locale is not exist, use defaultLocale.\n * if defaultLocale is not exist, use build-in `en`.\n * be sure of no error when locale is not exist.\n *\n * If `time in`, then 1\n * If `time ago`, then 0\n */\n var agoIn = diff < 0 ? 1 : 0;\n /**\n * Get absolute value of number (|diff| is non-negative) value of x\n * |diff| = diff if diff is positive\n * |diff| = -diff if diff is negative\n * |0| = 0\n */\n diff = Math.abs(diff);\n /**\n * Time in seconds\n */\n var totalSec = diff;\n /**\n * Unit of time\n */\n var idx = 0;\n for (; diff >= SEC_ARRAY[idx] && idx < SEC_ARRAY.length; idx++) {\n diff /= SEC_ARRAY[idx];\n }\n /**\n * Math.floor() is alternative of ~~\n *\n * The differences and bugs:\n * Math.floor(3.7) -> 4 but ~~3.7 -> 3\n * Math.floor(1559125440000.6) -> 1559125440000 but ~~1559125440000.6 -> 52311552\n *\n * More information about the performance of algebraic:\n * https://www.youtube.com/watch?v=65-RbBwZQdU\n */\n diff = Math.floor(diff);\n idx *= 2;\n if (diff > (idx === 0 ? 9 : 1))\n idx += 1;\n return localeFunc(diff, idx, totalSec)[agoIn].replace('%s', diff.toString());\n}\n/**\n * calculate the diff second between date to be formatted an now date.\n * @param date\n * @param relativeDate\n * @returns {number}\n */\nexport function diffSec(date, relativeDate) {\n var relDate = relativeDate ? toDate(relativeDate) : new Date();\n return (+relDate - +toDate(date)) / 1000;\n}\n/**\n * nextInterval: calculate the next interval time.\n * - diff: the diff sec between now and date to be formatted.\n *\n * What's the meaning?\n * diff = 61 then return 59\n * diff = 3601 (an hour + 1 second), then return 3599\n * make the interval with high performance.\n **/\nexport function nextInterval(diff) {\n var rst = 1, i = 0, d = Math.abs(diff);\n for (; diff >= SEC_ARRAY[i] && i < SEC_ARRAY.length; i++) {\n diff /= SEC_ARRAY[i];\n rst *= SEC_ARRAY[i];\n }\n d = d % rst;\n d = d ? rst - d : rst;\n return Math.ceil(d);\n}\n//# sourceMappingURL=date.js.map","import { formatDiff, diffSec } from './utils/date';\nimport { getLocale } from './register';\n/**\n * format a TDate into string\n * @param date\n * @param locale\n * @param opts\n */\nexport var format = function (date, locale, opts) {\n // diff seconds\n var sec = diffSec(date, opts && opts.relativeDate);\n // format it with locale\n return formatDiff(sec, getLocale(locale));\n};\n//# sourceMappingURL=format.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nimport en_US from './lang/en_US';\nimport zh_CN from './lang/zh_CN';\nimport { register } from './register';\nregister('en_US', en_US);\nregister('zh_CN', zh_CN);\nexport { format } from './format';\nexport { render, cancel } from './realtime';\nexport { register };\n//# sourceMappingURL=index.js.map"],"names":["getPhrase","icons","iconColours","shareTypeTitlePhraseMap","ShareAvatar","props","className","svgName","type","variant","textVariant","svgWrapperClassName","svgSize","S","classroomName","additionalTitleText","title","getTitle","hideSubtitle","subtitleText","privacy","studentCount","classroomGroupCount","smartCount","getClassroomSubtitle","includes","getLinkSubtitle","getSubtitle","IntegrationId","IntegrationHelper","getShareIntegrations","googleClassroomSetting","msftTeamsSetting","id","name","enabled","settingName","namespace","ShareViewCount","MasterType","share","objectTypeId","Text","phrase","options","viewCount","ShareViewedByCount","SvgContainer","shareAccessCount","accessCount","ShareType","totalRecipients","recipients","length","getViewCount","PreviousAssignmentsHeader","show","count","IconButton","onClick","onToggle","PreviousAssignmentsListHeader","columnClassNames","value","Row","Col","xs","PreviousAssignmentListItem","shareClassroom","ShareHelper","classrooms","analytics","getItemAnalytics","AppLink","key","shareId","appLink","getItemAppLink","analyticsData","data","analyticsOptions","lg","dateCreated","PreviousAssignmentsList","autoHeight","autoHeightMin","autoHeightMax","scrollHeightMax","autoHide","assignments","map","idx","PreviousAssignments","noBottomPadding","LanguageService","SharesAndAssignmentsEmptyState","EmptyState","size","src","ImageUrls","icon","text","assignAppLink","shareLinkAppLink","SharesEmptyState","MAX_SCROLL_HEIGHT","sortByDateCreated","a","b","DateHelper","ViewInSchoolAnalyticsButton","href","target","ShowAssignmentsEmptyState","shareAppLink","ShowAssignmentsView","sharedData","useAssignSharedData","objectId","entityType","hasPermissions","usePermissions","hasShareFlowV2","useSettings","isTertiary","useIsTertiary","previousShares","ShareRequests","sort","previousAssignmentClassroomIds","ArrayHelper","filter","x","hasCompleted","ClassroomRequests","currentUser","customerId","analyticsUrl","AnalyticsRouteHelper","config","analyticsWebUrl","entity","canViewSchoolAnalytics","PermissionName","emptyStateType","loaded","Popup","showLoadingSpinner","closePopup","AssignAppLinkHelper","application","action","args","params","reverse","FlowControls","hideNextButton","hideCreateClassroomButton","onClickBack","backButtonText","leftComponent","EN_US","ZH_CN","Locales","register","locale","func","SEC_ARRAY","toDate","input","Date","isNaN","test","parseInt","trim","replace","format","date","opts","sec","relativeDate","diff","localeFunc","agoIn","totalSec","Math","abs","floor","toString","unit"],"sourceRoot":""}
@@ -1,3 +0,0 @@
1
- /*! For license information please see 6756-20c0ab9591-lite.chunk.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[6756,5193],{1619:(e,t,n)=>{n.d(t,{e:()=>v});var r=n(32735),a=n(23481),o=n(12528),i=n(83914),s=n(35223),l=n(33518),c=n(2510);function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function d(e,t,n){return(t=function(e){var t=function(e){if("object"!=u(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==u(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var m=a.T.encloseNamespace("sharev2.shareAvatar"),p=d(d(d(d(d({},c.y.Open,s.vn.Classrooms),c.y.Link,s.vn.Link),c.y.Classroom,s.vn.Classrooms),c.y.Live,s.vn.Play),c.y.LegacyDirect,s.vn.Share),f=d(d(d(d(d({},c.y.Open,"blue"),c.y.Link,"black"),c.y.Classroom,"teal"),c.y.Live,"purple"),c.y.LegacyDirect,"indigo"),g=d(d(d(d(d({},c.y.Open,"openShareType"),c.y.Link,"linkShareType"),c.y.Classroom,"classroomShareType"),c.y.Live,"liveShareType"),c.y.LegacyDirect,"legacyDirectShareType");function v(e){var t,n;return r.createElement("div",{className:"d-flex align-items-center gap-2"},r.createElement("div",null,r.createElement(o.f,{svgName:p[e.type],variant:f[e.type],textVariant:"white",svgWrapperClassName:"p-1",svgSize:null!==(t=e.svgSize)&&void 0!==t?t:i.S.Standard})),r.createElement("div",{className:"d-flex flex-column"},r.createElement("p",{className:"m-0"},function(e){var t=e.type,n=e.classroomName,r=e.additionalTitleText;if(t===c.y.Classroom&&n)return n;var a=m(g[t]);return r&&(a+=" "+r),a}(e)),!e.hideSubtitle&&r.createElement("span",{className:"text-secondary"},null!==(n=e.subtitleText)&&void 0!==n?n:function(e){var t=e.type,n=e.privacy,r=e.studentCount,a=void 0===r?0:r,o=e.classroomGroupCount,i=void 0===o?0:o;switch(t){case c.y.Classroom:return function(e,t){return e&&t?"".concat(m("classroomGroupCount",{smartCount:e}),", ").concat(m("studentSubTitle",{smartCount:t})):e?m("groupSubTitle",{smartCount:e}):t?m("studentSubTitle",{smartCount:t}):m("allStudentsSubTitle")}(i,a);case c.y.Open:return m("openShareTypeSubTitle");case c.y.Link:return function(e){return[l.e.JustMySchool,l.e.Protected].includes(e)?m("respectRatingsSubTitle"):e===l.e.JustMySchoolOverrideRestriction?m("anyoneInSchoolSubTitle"):e===l.e.ProtectedOverrideRestriction?m("anyoneSignedInSubTitle"):e===l.e.Public?m("anyoneWithLinkSubTitle"):e===l.e.PinCode?m("anyoneWithPinSubTitle"):void 0}(n);case c.y.Live:return m("liveShareTypeSubTitle");case c.y.LegacyDirect:return m("legacyDirectTypeSubTitle");default:return m("publicShareTypeSubTitle")}}(e))))}},8233:(e,t,n)=>{n.d(t,{R:()=>p});var r=n(23481),a=n(110),o=n(33518),i=n(4594),s=n(49080),l=n(26361),c=n(35223),u=n(31908);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var m=r.T.encloseNamespace("sharev2.utils"),p={getPrivateIconAndText:function(e){var t=e.entityTypeId,n=e.privacy,r=e.hasStudentExp,a=e.entity,s=e.yearGroups;if(t===i.E.Topic||t===i.E.Series)return{icon:c.vn.VisibleOn,text:m(r?"justMySchoolTeachers":"justMySchoolDescription")};if(!Array.isArray(n))switch(n){case o.e.Public:return{icon:c.vn.VisibleOn,text:m("publicDescription")};case o.e.ProtectedOverrideRestriction:return{icon:c.vn.VisibleOn,text:m("clickViewOnly")};case o.e.Protected:return{icon:c.vn.Lock,text:p.getRespectRatingText(a,s,r)};case o.e.JustMySchoolOverrideRestriction:return{icon:c.vn.Lock,text:m(r?"justMySchoolTeachers":"justMySchoolDescription")};case o.e.JustMySchool:return{icon:c.vn.Lock,text:p.getRespectRatingText(a,s,r)};case o.e.PinCode:return{icon:c.vn.Lock,text:m("pinDescription")};case o.e.PasswordProtected:return{icon:c.vn.Lock,text:m("privateDescription")};default:return{}}},getIconAndText:function(e){var t=e.linkExpireDate,n=e.isPasswordProtected,r=e.status;if(!t&&!n)return p.getPrivateIconAndText(e);if(!t)return{icon:c.vn.Lock,text:m("password")};var o=a.O.isToday(t),i=a.O.diffBetween(t,new Date,"day");if(!n){var l=o?m("expiryToday"):m("expiry",{days:i});return r===s.F.Expired&&(l=m("expired")),{icon:c.vn.Timer,text:l}}var u=o?m("passwordExpiryToday"):m("passwordExpiry",{days:i});return r===s.F.Expired&&(u=m("passwordExpired")),{icon:c.vn.Lock,text:u}},getRespectRatingText:function(e,t,n){var r;if(!e||!t)return null;if(n)return m("justMySchoolTeachers");if(!u.M.isVideoType(e))return m("collectionRating");var a=l.l.getWeightedRestriction(null===(r=e._restrictions)||void 0===r?void 0:r.value);if(a&&!a.yearGroup)return m("onlyAdmins");var o,i,s,c=u.M.getRating(e),p=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,t){if(e){if("string"==typeof e)return d(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return i=e.done,e},e:function(e){s=!0,o=e},f:function(){try{i||null==n.return||n.return()}finally{if(s)throw o}}}}(t);try{for(p.s();!(s=p.n()).done;){var f=s.value;(!o||f.value>o.value)&&(o=f),a&&f.value<=a.yearGroup||c&&f.rating.value<c.value||(!i||f.value<i.value)&&(i=f)}}catch(e){p.e(e)}finally{p.f()}return i?1===t.length?m("clickViewOnly"):i.value===o.value?m("maxYearGroup",{yearGroup:o.name}):m("yearGroupRange",{yearGroup:i.name}):m("onlyStaff")},getShareLinkAccessType:function(e){return e.isTvContent||e.isClickViewContent?"protected":e.canManageAccess?"owner":"private"}}},89067:(e,t,n)=>{n.d(t,{r:()=>o});var r=n(32735);function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function o(e){var t,n,o,i,s=(o=r.useState(null===(t=e.animate)||void 0===t||t),i=2,function(e){if(Array.isArray(e))return e}(o)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(o,i)||function(e,t){if(e){if("string"==typeof e)return a(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?a(e,t):void 0}}(o,i)||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.")}()),l=s[0],c=s[1],u=e.steps[e.step],d=void 0!==e.loading?{loading:e.loading}:{},m=Object.assign(Object.assign(Object.assign({},e.data),d),{animate:null!==(n=e.animate)&&void 0!==n?n:l,closePopup:function(){e.closePopup()},setStep:function(t){c(!1),e.setStep(t)}});if(!u)return r.createElement(r.Fragment,null);var p=u.view;return r.createElement(p,Object.assign({},m))}},94644:(e,t,n)=>{n.d(t,{r:()=>u});var r=n(50242),a=n(81886),o=n(67058),i=n(14553),s=n(49267),l=n(49075),c={notFound:o.d,forbidden:{rating:i.q,yearLevel:i.q,region:s.a,privacy:i.q},badRequest:l._,internalServerError:l._};function u(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(e){var o;o="number"==typeof e?e:e.status;var i=Object.assign(Object.assign({},c),t);o&&a.Q.Ry.isStatusCodeError(o)&&(o!==r.o.InternalServer?o!==r.o.NotFound?o!==r.o.Forbidden?n.badRequest||a.Q.Ry.throw(new i.badRequest):n.forbidden||a.Q.Ry.throw(new i.forbidden.privacy):n.notFound||a.Q.Ry.throw(new i.notFound):n.internalServerError||a.Q.Ry.throw(new l._))}}},60115:(e,t,n)=>{n.d(t,{K:()=>c});var r=n(32735),a=n(50242),o=n(91967),i=400,s=n(45719);function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function c(e,t,n,c,u,d){var m,p,f,g,v=(m=(0,r.useState)(0),p=2,function(e){if(Array.isArray(e))return e}(m)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(m,p)||function(e,t){if(e){if("string"==typeof e)return l(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(e,t):void 0}}(m,p)||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.")}()),y=v[0],h=v[1],b=t,S=(0,s.P)(function(t){if(!e)return null;var n=e(t);return n?n.key:null},c,u);return f={fetchNextPage:function(){if(t&&e&&S)return h(function(e){return e+1}),b(S.nextCursor)},hasMore:!!(null==S?void 0:S.nextCursor),isFetching:null==S?void 0:S.isFetching,scrollContainer:d},g=function(){if(!f.isFetching){if(f.scrollContainer){var e=f.scrollContainer;if(e.getBoundingClientRect().height+e.scrollTop<e.scrollHeight-i)return}else if(window.innerHeight+document.documentElement.scrollTop<document.documentElement.scrollHeight-i)return;f.fetchNextPage()}},(0,r.useEffect)(function(){var e=o.q.throttle(g,200),t=f.scrollContainer||window;return f.hasMore&&t.addEventListener("scroll",e),function(){return t.removeEventListener("scroll",e)}},[f.hasMore,f.fetchNextPage,f.scrollContainer]),(0,r.useEffect)(function(){S&&S.shouldInitialFetch&&t&&(b(),h(function(e){return e+1}))},[null==S?void 0:S.shouldInitialFetch,t]),(0,r.useEffect)(function(){var e,t;if((null==S?void 0:S.statusCode)&&o.q.isFunction(n)){var r=+(null===(t=null===(e=S.statusCode)||void 0===e?void 0:e.toString())||void 0===t?void 0:t.substr(0,1));r!==a.k.ClientError&&r!==a.k.ServerError||n(y,S.statusCode)}},[null==S?void 0:S.statusCode]),{items:null==S?void 0:S.items,hasMore:!!(null==S?void 0:S.nextCursor),nextCursor:null==S?void 0:S.nextCursor,isFetching:null==S?void 0:S.isFetching,totalItems:null==S?void 0:S.totalItems,hasFirstPageCompleted:null==S?void 0:S.hasFirstPageCompleted}}},36511:(e,t,n)=>{n.d(t,{I:()=>a});var r=n(38129);function a(e){switch(e){case r.R.Pink:return"pink";case r.R.Orange:return"orange";case r.R.Green:return"green";case r.R.Blue:return"blue";case r.R.Purple:return"purple";case r.R.Indigo:return"indigo";default:return"pink"}}},35690:(e,t,n)=>{n.d(t,{QD:()=>k,Qv:()=>N,__:()=>w});var r=n(32735),a=n(68050),o=n(69111),i=n(42648),s=n(82602),l=n(31453),c=n(1619),u=n(83345),d=n(4594),m="sharev2.shareViewCount";function p(e){return[d.E.Playlist,d.E.Series].includes(e.share.objectTypeId)?r.createElement("span",null,"-"):r.createElement(u.x,{namespace:m,phrase:"viewCount",options:{smartCount:e.share.viewCount||0}})}var f=n(2510),g=n(83914),v=n(35223);function y(e){return[d.E.Playlist,d.E.Series].includes(e.share.objectTypeId)?r.createElement("span",null,"-"):r.createElement("span",{className:"d-inline-flex flex-row gap-2 align-items-center"},r.createElement(g.x,{svgName:v.vn.User}),r.createElement("span",null,function(){var t=e.share.accessCount||0;if(e.share.type===f.y.Open)return"".concat(t);if(e.share.type===f.y.Classroom){var n=e.share.recipients.length;return"".concat(t,"/").concat(n)}return"".concat(t)}()))}var h=n(21789),b=n(15611),S=n(91693);const C={shareListItem:"vLROV",visibleOnHover:"o2KJH"};var E="assign.previousAssignments";function x(e){return r.createElement("div",{className:(0,l.A)("d-flex align-items-center justify-content-between",e.show&&"mb-3")},r.createElement("h3",{className:"h6 m-0 p-0"},r.createElement(u.x,{namespace:E,phrase:"heading",options:{count:e.count}})),r.createElement(S.h,{svgName:e.show?v.vn.ChevronUp:v.vn.ChevronDown,onClick:e.onToggle}))}function w(){var e="d-flex align-items-end justify-content-start fw-medium";return r.createElement(u.D.Provider,{value:E},r.createElement(a.Z,{className:"gx-2 px-3 mb-2"},r.createElement(o.Z,{xs:4,className:e},r.createElement(u.x,{phrase:"assignedTo"})),r.createElement(o.Z,{xs:2,className:e},r.createElement(u.x,{phrase:"views"})),r.createElement(o.Z,{xs:2,className:e},r.createElement(u.x,{phrase:"viewedBy"})),r.createElement(o.Z,{xs:4,className:e},r.createElement(u.x,{phrase:"dateCreated"}))))}function T(e){var t,n=h.x.getClassroomForShare(e.share,e.classrooms),i=null===(t=e.getItemAnalytics)||void 0===t?void 0:t.call(e,e.share);return r.createElement(b.F,{key:e.share.shareId,appLink:e.getItemAppLink(e.share),analyticsData:null==i?void 0:i.data,analyticsOptions:null==i?void 0:i.options,className:(0,l.A)("d-block p-3 hover-bg-light-blue border border-top-0 no-hover-text-underline",C.shareListItem,e.className)},r.createElement(a.Z,{className:"gx-2"},r.createElement(o.Z,{xs:4,className:"d-flex align-items-center"},r.createElement(c.e,{type:e.share.type,privacy:e.share.privacy,classroomName:null==n?void 0:n.name,svgSize:g.S.Small,hideSubtitle:!0})),r.createElement(o.Z,{xs:2,className:"d-flex align-items-center justify-content-start"},r.createElement(p,{share:e.share})),r.createElement(o.Z,{xs:2,className:"d-flex align-items-center justify-content-start"},r.createElement(y,{share:e.share})),r.createElement(o.Z,{xs:4,lg:3,className:"d-flex align-items-center justify-content-start"},r.createElement("span",null,(0,s.WU)(e.share.dateCreated))),r.createElement(o.Z,{lg:1,className:"align-items-center justify-content-end d-none d-lg-flex"},r.createElement("span",{className:(0,l.A)("cursor-pointer text-info hover-text-underline",C.visibleOnHover)},r.createElement(u.x,{namespace:E,phrase:"view"})))))}function N(e){var t;return r.createElement("div",{className:(0,l.A)("d-flex flex-column border-top rounded-top overflow-hidden")},r.createElement(i.ZP,{autoHeight:!0,autoHeightMin:0,autoHeightMax:null!==(t=e.scrollHeightMax)&&void 0!==t?t:215,autoHide:!0},e.assignments.map(function(t,n){return r.createElement(T,{share:t,classrooms:e.classrooms,getItemAppLink:e.getItemAppLink,getItemAnalytics:function(t){var r;return null===(r=e.getItemAnalytics)||void 0===r?void 0:r.call(e,t,n)},className:(0,l.A)(n%2==0&&"bg-gray-100"),key:t.shareId})})))}function k(e){if(!e.assignments.length)return r.createElement(r.Fragment,null);var t=e.show&&e.assignments.length>3;return r.createElement("div",{className:(0,l.A)("bg-white rounded-3 p-3",t&&"pb-0")},r.createElement(x,{count:e.assignments.length,onToggle:e.onToggle,show:e.show}),e.show&&r.createElement(r.Fragment,null,r.createElement(w,null),r.createElement(N,Object.assign({},e))))}},15970:(e,t,n)=>{n.r(t),n.d(t,{AssignFlowView:()=>Jt});var r=n(32735),a=n(89067),o=n(23481),i=n(65858),s=n(95890),l=n(7786),c=n(9103),u=n(64197),d=n(9111),m=n(83351),p=n(85287),f=n(83345);function g(e){return r.createElement(f.D.Provider,{value:"classroomCreatePromptView.createPrompt"},r.createElement("div",{className:"d-flex flex-column align-items-center"},r.createElement("h6",{className:"mb-2"},r.createElement(f.x,{phrase:"title"})),r.createElement("p",{className:"mb-3"},r.createElement(f.x,{phrase:"description"})),r.createElement("button",{className:"btn btn-outline-dark px-4",onClick:e.onClick},r.createElement(f.x,{phrase:"createBtn"}))))}var v=n(88382);function y(e){return r.createElement(f.D.Provider,{value:"classroomCreatePromptView.integrationsPrompt"},r.createElement("div",{className:"d-flex flex-column align-items-center"},r.createElement("h6",{className:"mb-2"},r.createElement(f.x,{phrase:"title"})),r.createElement("p",{className:"mb-3 text-center w-75"},r.createElement(f.x,{phrase:"description"})),r.createElement(v.g,{itemClassName:"col-12 col-sm-6 col-lg-4",maxHeight:200,instanceRegion:e.instanceRegion,contactSupportLink:e.contactSupportLink})))}var h=o.T.encloseNamespace("assign.classroomCreatePromptView"),b=n(83914),S=n(35223),C=n(42648),E=n(97958),x=n(87801),w=n(50023),T=n(99742),N=n(68050),k=n(69111),I=n(80130),A=n(31453),j=n(12528),O=n(98269),P=n(36532),F="assign.narrowSelectionButton",R=o.T.encloseNamespace(F);function M(e){return r.createElement(P.u,{title:R("noStudentsTooltip"),spanHack:!0,placement:"top",disable:e.hasRecipients},r.createElement(O.Z,{variant:"link",className:(0,A.A)("py-0 px-2",e.hasRecipients?"cursor-pointer text-info hover-text-underline":"text-secondary"),onClick:function(){e.hasRecipients&&e.onClickSelectGroupsOrStudents()},disabled:!e.hasRecipients},r.createElement(f.x,{namespace:F,phrase:"narrowSelectionPrompt"})))}function G(e){return r.createElement(N.Z,{className:(0,A.A)("px-2 py-1 g-0 w-100 rounded cursor-pointer mb-1",e.isSelected?"bg-light":"bg-light-hover"),onClick:e.onSelected},r.createElement(k.Z,{md:7,className:"d-flex align-items-center gap-2"},r.createElement(I.Z.Check,{type:"radio",name:"classroom-radio",id:"classroom-radio",className:"form-check",value:e.id,onChange:e.onSelected,checked:e.isSelected}),r.createElement("div",{className:"d-flex align-items-center gap-2"},r.createElement("div",null,r.createElement(j.f,{svgName:S.vn.Classrooms,svgSize:b.S.Standard,variant:"teal",textVariant:"white",svgWrapperClassName:"p-1"})),r.createElement("div",{className:"w-100"},r.createElement("label",{className:"m-0"},e.name),r.createElement("p",{className:"m-0 text-muted font-size-sm"},r.createElement(f.x,{namespace:"assign.classroomSelectorListItem",phrase:"studentsCount",options:{smartCount:e.studentsCount}}))))),r.createElement(k.Z,{md:5,className:(0,A.A)(e.studentsCount?"d-inline-block":"d-none",e.isSelected&&"py-2 py-md-0","d-md-flex justify-content-center align-items-center")},e.isSelected&&r.createElement(M,{hasRecipients:!!e.studentsCount,onClickSelectGroupsOrStudents:e.onClickSelectGroupsOrStudents})))}var L="assign.classroomSelectorList";function D(e){var t=!e.classrooms.hasFirstPageCompleted,n=e.classrooms.items;return t||n.length?r.createElement("div",{className:"d-flex flex-column gap-2"},r.createElement("h3",{className:"h6 m-0"},r.createElement(f.x,{namespace:L,phrase:"listTitle"})),r.createElement("div",null,t&&r.createElement(w.E,null),!t&&r.createElement(C.ZP,{autoHeight:!0,autoHeightMin:300,autoHeightMax:300},n.map(function(t){var n;return r.createElement(G,{key:t.id,id:t.id,isSelected:(null===(n=e.selectedClassroom)||void 0===n?void 0:n.id)===t.id,name:t.name,onClickSelectGroupsOrStudents:e.onClickSelectGroupsOrStudents,onSelected:function(){return e.onClassroomSelected(t)},studentsCount:e.getStudentsCount(t)})}),(e.classrooms.hasMore||e.classrooms.isFetching)&&r.createElement(x._,{isFetching:e.classrooms.isFetching,fetchNext:e.classrooms.fetchNext,nextCursor:e.classrooms.nextCursor,fetchOnScroll:!0})))):r.createElement(E.u,null,r.createElement(E.u.Image,{src:T.W.EmptyStates.Search.RESULTS,size:"small",altText:"No results found"}),r.createElement("h3",{role:"status"},r.createElement(f.x,{phrase:"noResultsTitle",namespace:L,options:{query:e.searchQuery}})),r.createElement(E.u.Info,null,r.createElement(f.x,{namespace:L,phrase:"contactAdminInfo"})," ",r.createElement("a",{className:"p-0 text-info cursor-pointer",onClick:e.onClickCreateOpenClassroom},r.createElement(f.x,{namespace:L,phrase:"createOpenClassroom"}))))}var _=n(16714),B=n(28329),Z=n(22902),U=n(63578);function q(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var V=o.T.encloseNamespace("assign.classroomSelectorView"),z=n(95685),H=n.n(z),$=n(46304),W=n(61548),Q=n(95960),X=n(74512);const J=r.forwardRef(({className:e,bsPrefix:t,as:n="span",...r},a)=>(t=(0,$.vE)(t,"input-group-text"),(0,X.jsx)(n,{ref:a,className:H()(e,t),...r})));J.displayName="InputGroupText";const Y=J,K=r.forwardRef(({bsPrefix:e,size:t,hasValidation:n,className:a,as:o="div",...i},s)=>{e=(0,$.vE)(e,"input-group");const l=(0,r.useMemo)(()=>({}),[]);return(0,X.jsx)(Q.Z.Provider,{value:l,children:(0,X.jsx)(o,{ref:s,...i,className:H()(a,e,t&&`${e}-${t}`,n&&"has-validation")})})});K.displayName="InputGroup";const ee=Object.assign(K,{Text:Y,Radio:e=>(0,X.jsx)(Y,{children:(0,X.jsx)(W.Z,{type:"radio",...e})}),Checkbox:e=>(0,X.jsx)(Y,{children:(0,X.jsx)(W.Z,{type:"checkbox",...e})})});var te=n(92802),ne=n(20354),re=n(88630),ae=n(27787);function oe(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var ie="assign.createNewClassroomView",se=o.T.encloseNamespace(ie),le=n(89965);function ce(e){if(!e.hide)return r.createElement(N.Z,{className:(0,A.A)("flow-setting-item-group gap-3 gx-0",e.className)},r.createElement(k.Z,{xs:12,className:"h6 m-0"},e.name),r.createElement("div",{className:(0,A.A)("d-flex flex-column gap-3",e.childContainerClassName)},e.children))}ce.Toggle=function(e){var t=r.useId();if(!e.hide)return r.createElement(k.Z,{xs:12,className:(0,A.A)(e.className)},r.createElement("div",{className:"d-flex w-100"},r.createElement(le.X,{id:t,name:t,onChange:e.onClick,checked:e.toggled,disabled:e.disabled}),r.createElement("div",{className:"w-100"},r.createElement("div",{className:"mb-1"},r.createElement("label",{className:"mb-1",htmlFor:t},e.title),r.createElement("p",{className:"m-0 text-secondary"},e.description)),e.children)))},ce.TextArea=function(e){if(!e.hide)return r.createElement(k.Z,{xs:12},r.createElement("textarea",{className:(0,A.A)("form-control","icGmN"),placeholder:e.placeholder,value:e.value,onChange:function(t){return e.onChange(t.target.value)}}))},ce.Divider=function(e){if(!e.hide)return r.createElement("hr",{className:(0,A.A)(!e.withMargins&&"m-0")})};var ue=n(1619),de=n(33518),me=n(2510);function pe(e){var t,n,a;return r.createElement("div",{className:"d-flex align-items-center w-100 gap-2 justify-content-between"},r.createElement("div",{className:"flex-grow-1"},r.createElement(ue.e,{type:me.y.Classroom,privacy:de.e.Direct,classroomName:e.classroom.name,studentCount:null===(n=null===(t=e.classroom)||void 0===t?void 0:t.enrolments)||void 0===n?void 0:n.count,subtitleText:e.subtitleText,hideSubtitle:null===(a=e.hideSubtitle)||void 0===a||a})),"function"==typeof e.onClickChangeClassroom&&r.createElement(O.Z,{variant:"link",className:"text-info hover-text-underline",onClick:e.onClickChangeClassroom},r.createElement(f.x,{namespace:"assign.selectedClassroomHeader",phrase:"changeClassroomButton"})))}var fe=o.T.encloseNamespace("assign.existingClassroomFlowSettings");function ge(e){var t,n,a;return r.createElement("div",{className:"d-flex flex-column gap-4"},r.createElement(pe,{classroom:e.selectedClassroom,hideSubtitle:!1,subtitleText:fe("studentsCount",{smartCount:null!==(a=null===(n=null===(t=e.selectedClassroom)||void 0===t?void 0:t.enrolments)||void 0===n?void 0:n.count)&&void 0!==a?a:0})}),r.createElement(ce,{name:fe("videoSettingsTitle"),hide:e.hidePreventScrubbing&&e.hideImmediateFeedback},r.createElement(ce.Toggle,{hide:e.hidePreventScrubbing,title:fe("preventScrubbingTitle"),description:fe("preventScrubbingDescription"),onClick:e.onTogglePreventScrubbing,toggled:e.preventScrubbing,disabled:e.disablePreventScrubbing}),r.createElement(ce.Toggle,{hide:e.hideImmediateFeedback,title:fe("immediateFeedbackTitle"),description:fe("immediateFeedbackDescription"),onClick:e.onToggleImmediateFeedback,toggled:e.immediateFeedback,disabled:e.disableImmediateFeedback})),r.createElement(ce.Divider,{hide:e.hidePreventScrubbing&&e.hideImmediateFeedback}),r.createElement(ce,{name:fe("moreOptionsTitle"),hide:e.hideMessage,childContainerClassName:"d-flex flex-column gap-2"},r.createElement(ce.Toggle,{hide:e.hideMessage,title:fe("messageTitle"),description:fe("messageDescription"),onClick:e.onToggleMessage,toggled:e.toggleMessage,disabled:e.disableMessage},r.createElement(ce.TextArea,{hide:!e.toggleMessage,placeholder:fe("messagePlaceholder"),onChange:e.onChangeMessage,value:e.message}))))}var ve=n(30439),ye=n(18488);function he(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",a=n.toStringTag||"@@toStringTag";function o(n,r,a,o){var l=r&&r.prototype instanceof s?r:s,c=Object.create(l.prototype);return be(c,"_invoke",function(n,r,a){var o,s,l,c=0,u=a||[],d=!1,m={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,n){return o=t,s=0,l=e,m.n=n,i}};function p(n,r){for(s=n,l=r,t=0;!d&&c&&!a&&t<u.length;t++){var a,o=u[t],p=m.p,f=o[2];n>3?(a=f===r)&&(l=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=p&&((a=n<2&&p<o[1])?(s=0,m.v=r,m.n=o[1]):p<f&&(a=n<3||o[0]>r||r>f)&&(o[4]=n,o[5]=r,m.n=f,s=0))}if(a||n>1)return i;throw d=!0,r}return function(a,u,f){if(c>1)throw TypeError("Generator is already running");for(d&&1===u&&p(u,f),s=u,l=f;(t=s<2?e:l)||!d;){o||(s?s<3?(s>1&&(m.n=-1),p(s,l)):m.n=l:m.v=l);try{if(c=2,o){if(s||(a="next"),t=o[a]){if(!(t=t.call(o,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(l=TypeError("The iterator does not provide a '"+a+"' method"),s=1);o=e}else if((t=(d=m.n<0)?l:n.call(r,m))!==i)break}catch(t){o=e,s=1,l=t}finally{c=1}}return{value:t,done:d}}}(n,a,o),!0),c}var i={};function s(){}function l(){}function c(){}t=Object.getPrototypeOf;var u=[][r]?t(t([][r]())):(be(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(u);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,be(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=c,be(d,"constructor",c),be(c,"constructor",l),l.displayName="GeneratorFunction",be(c,a,"GeneratorFunction"),be(d),be(d,a,"Generator"),be(d,r,function(){return this}),be(d,"toString",function(){return"[object Generator]"}),(he=function(){return{w:o,m}})()}function be(e,t,n,r){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}be=function(e,t,n,r){if(t)a?a(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n;else{var o=function(t,n){be(e,t,function(e){return this._invoke(t,n,e)})};o("next",0),o("throw",1),o("return",2)}},be(e,t,n,r)}var Se=function(e,t,n,r){return new(n||(n=Promise))(function(a,o){function i(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(i,s)}l((r=r.apply(e,t||[])).next())})};function Ce(e){var t,n=ne.a.useBasicFetch(ve.o.getPrivacy(e)),r=ne.a.useGetFetchAsync(),a=null===(t=n.data)||void 0===t?void 0:t.canManageAccess;function o(e){return Se(this,void 0,void 0,he().m(function t(){return he().w(function(t){for(;;)switch(t.n){case 0:return t.n=1,r(ye.o.createSharePincode(e.shareId));case 1:return t.a(2,t.v)}},t)}))}return{createDirectShare:function(e){return Se(this,void 0,void 0,he().m(function t(){var a,i;return he().w(function(t){for(;;)switch(t.n){case 0:if(n.data){t.n=1;break}return t.a(2);case 1:return a=e.requireSignIn?de.e.Direct:de.e.PinCode,t.n=2,r(ye.o.createShare({objectId:e.objectId,type:me.y.Classroom,privacy:a,optionRequest:{preventScrubbing:e.preventScrubbing,immediateFeedback:e.immediateFeedback},recipientRequest:e.recipients.map(function(t){return{recipientId:t,message:e.message,scopeId:e.scopeId}})}));case 2:if(i=t.v,a!==de.e.PinCode){t.n=3;break}return t.n=3,o({shareId:i.shareId});case 3:return t.a(2,i)}},t)}))},createOpenSession:function(e){return Se(this,void 0,void 0,he().m(function t(){var i,s;return he().w(function(t){for(;;)switch(t.n){case 0:if(n.data){t.n=1;break}return t.a(2);case 1:return i=de.e.PinCode,e.requireSignIn&&(i=e.respectRatingsAndRestrictions?a?de.e.JustMySchool:de.e.Protected:a?de.e.JustMySchoolOverrideRestriction:de.e.ProtectedOverrideRestriction),t.n=2,r(ye.o.createShare({objectId:e.objectId,type:me.y.Open,privacy:i,optionRequest:{preventScrubbing:e.preventScrubbing,immediateFeedback:e.immediateFeedback}}));case 2:if(s=t.v,i!==de.e.PinCode){t.n=3;break}return t.n=3,o({shareId:s.shareId});case 3:return t.a(2,s)}},t)}))},canManageAccess:a,hasCompleted:n.hasCompleted}}var Ee=n(1666);function xe(e){return xe="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},xe(e)}function we(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",a=n.toStringTag||"@@toStringTag";function o(n,r,a,o){var l=r&&r.prototype instanceof s?r:s,c=Object.create(l.prototype);return Te(c,"_invoke",function(n,r,a){var o,s,l,c=0,u=a||[],d=!1,m={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,n){return o=t,s=0,l=e,m.n=n,i}};function p(n,r){for(s=n,l=r,t=0;!d&&c&&!a&&t<u.length;t++){var a,o=u[t],p=m.p,f=o[2];n>3?(a=f===r)&&(l=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=p&&((a=n<2&&p<o[1])?(s=0,m.v=r,m.n=o[1]):p<f&&(a=n<3||o[0]>r||r>f)&&(o[4]=n,o[5]=r,m.n=f,s=0))}if(a||n>1)return i;throw d=!0,r}return function(a,u,f){if(c>1)throw TypeError("Generator is already running");for(d&&1===u&&p(u,f),s=u,l=f;(t=s<2?e:l)||!d;){o||(s?s<3?(s>1&&(m.n=-1),p(s,l)):m.n=l:m.v=l);try{if(c=2,o){if(s||(a="next"),t=o[a]){if(!(t=t.call(o,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(l=TypeError("The iterator does not provide a '"+a+"' method"),s=1);o=e}else if((t=(d=m.n<0)?l:n.call(r,m))!==i)break}catch(t){o=e,s=1,l=t}finally{c=1}}return{value:t,done:d}}}(n,a,o),!0),c}var i={};function s(){}function l(){}function c(){}t=Object.getPrototypeOf;var u=[][r]?t(t([][r]())):(Te(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(u);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,Te(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=c,Te(d,"constructor",c),Te(c,"constructor",l),l.displayName="GeneratorFunction",Te(c,a,"GeneratorFunction"),Te(d),Te(d,a,"Generator"),Te(d,r,function(){return this}),Te(d,"toString",function(){return"[object Generator]"}),(we=function(){return{w:o,m}})()}function Te(e,t,n,r){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}Te=function(e,t,n,r){if(t)a?a(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n;else{var o=function(t,n){Te(e,t,function(e){return this._invoke(t,n,e)})};o("next",0),o("throw",1),o("return",2)}},Te(e,t,n,r)}function Ne(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return ke(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ke(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 ke(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Ie(e){var t,n,a,o=(0,s._)({entityType:e.entityType,objectId:e.objectId}),i=ne.a.useBasicFetch(Ee.h.yearGroups(null===(t=o.currentUser.data)||void 0===t?void 0:t.customerId)),l=Ce(e.objectId).createDirectShare,c=Ne(r.useState(!1),2),u=c[0],d=c[1],m=Ne(r.useState({preventScrubbing:(null===(n=o.interactive.data)||void 0===n?void 0:n.preventScrubbing)||!1,immediateFeedback:(null===(a=o.interactive.data)||void 0===a?void 0:a.immediateFeedback)||!1,message:!1}),2),p=m[0],f=m[1],g=Ne(r.useState(""),2),v=g[0],y=g[1];return{data:{loaded:o.loaded&&!!i.data,config:o.config,entity:o.entity,yearGroups:i},message:v,settings:p,shouldShowSpinner:u,hasStudentExp:o.hasStudentExp,toggleSetting:function(e){!function(e,t){f(function(n){return Object.assign(Object.assign({},n),(r={},o=t,(a=function(e){var t=function(e){if("object"!=xe(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=xe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==xe(t)?t:t+""}(a=e))in r?Object.defineProperty(r,a,{value:o,enumerable:!0,configurable:!0,writable:!0}):r[a]=o,r));var r,a,o})}(e,!p[e])},onChangeMessage:function(e){y(e)},onShare:function(t){var n,r,a,o,i,s;return a=this,o=void 0,i=void 0,s=we().m(function a(){var o;return we().w(function(a){for(;;)switch(a.n){case 0:if(e.selectedClassroom){a.n=1;break}return a.a(2);case 1:return d(!0),a.p=2,a.n=3,l({objectId:e.objectId,preventScrubbing:p.preventScrubbing,immediateFeedback:p.immediateFeedback,requireSignIn:!0,message:v,recipients:e.recipients.length?e.recipients:[null===(n=e.selectedClassroom)||void 0===n?void 0:n.id],scopeId:null===(r=e.selectedClassroom)||void 0===r?void 0:r.id});case 3:o=a.v,"function"==typeof t&&t(o),d(!1),a.n=5;break;case 4:a.p=4,a.v,console.error("Could not create");case 5:return a.p=5,d(!1),a.f(5);case 6:return a.a(2)}},a,null,[[2,4,5,6]])}),new(i||(i=Promise))(function(e,t){function n(e){try{l(s.next(e))}catch(e){t(e)}}function r(e){try{l(s.throw(e))}catch(e){t(e)}}function l(t){var a;t.done?e(t.value):(a=t.value,a instanceof i?a:new i(function(e){e(a)})).then(n,r)}l((s=s.apply(a,o||[])).next())})}}}var Ae,je=o.T.encloseNamespace("assign.existingClassroomFlowSettingsView"),Oe=n(36511);!function(e){e.Groups="groups",e.Students="students"}(Ae||(Ae={}));var Pe=n(91693);function Fe(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Re(e){return r.createElement("div",{className:"d-flex flex-column gap-2"},e.children)}Re.Item=function(e){var t,n,a=(t=r.useState(e.intialShow||!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(t,n)||function(e,t){if(e){if("string"==typeof e)return Fe(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fe(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=a[0],i=a[1];return r.createElement("div",null,r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("h3",{className:"h6 m-0 p-0"},e.title),r.createElement(Pe.h,{svgName:o?S.vn.ChevronUp:S.vn.ChevronDown,onClick:function(){return i(!o)}})),o&&r.createElement("div",null,e.children))};var Me=n(11607);function Ge(e){var t=e.isDisabled&&e.isSelected&&!!e.tooltipText;return r.createElement(Me.L,{className:(0,A.A)("d-flex align-items-center px-2 py-1 w-100 rounded gap-2 cursor-pointer justify-content-between",!e.isDisabled&&"bg-light-hover"),onClick:e.onClick,disabled:e.isDisabled},r.createElement(P.u,{placement:"right",title:e.tooltipText,disable:!t,spanHack:!0,trigger:["hover","focus"]},r.createElement("div",{className:(0,A.A)("d-flex align-items-center",t&&"pe-2")},r.createElement(le.X,{name:e.entity.id,id:e.entity.id,onChange:e.onClick,checked:e.isSelected,disabled:e.isDisabled}),r.createElement("div",{className:"d-flex align-items-center gap-2"},r.createElement("div",null,e.icon),r.createElement("div",{className:"w-100"},e.title)))))}function Le(e){return e.entities.length?r.createElement("div",{className:"d-flex flex-column"},r.createElement(C.ZP,{autoHeight:!0,autoHeightMin:0,autoHeightMax:120},e.entities.map(function(t){var n=!!e.selectedEntities.find(function(e){return t.id.toString()===e.id.toString()}),a=n&&e.disableSelected,o="function"==typeof e.renderTitle?e.renderTitle(t,n,a):r.createElement("span",{className:"m-0"},t.name);return r.createElement(Ge,{key:t.id,entity:t,title:o,isDisabled:a,isSelected:n,icon:e.renderIcon(t,n,a),onClick:function(){return e.onSelectEntity(t)},tooltipText:e.tooltipText})}))):r.createElement(r.Fragment,null,e.emptyState)}function De(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return _e(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_e(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 _e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var Be="assign.narrowClassroomSelectionControls",Ze=o.T.encloseNamespace(Be);function Ue(e){var t=De(r.useState(Ae.Students),2),n=t[0],a=t[1],o=De(r.useState([]),2),i=o[0],s=o[1],l=De(r.useState([]),2),c=l[0],u=l[1],d=c.length===e.learners.length;return r.createElement(r.Fragment,null,r.createElement("div",{className:"d-flex flex-column gap-3"},r.createElement("h3",{className:"h6 m-0"},r.createElement(f.x,{namespace:Be,phrase:"shareToStudents",options:{smartCount:e.learners.length}})),r.createElement("div",null,r.createElement(le.X,{id:"all",checked:n!==Ae.Groups&&d,label:Ze("allStudentsLabel",{smartCount:e.learners.length}),onChange:function(){if(s([]),a(Ae.Students),d)return u([]),void e.setRecipients([]);u(e.learners),e.setRecipients(p.z.getRecipients(e.learners))},indeterminate:n===Ae.Groups}))),r.createElement(Re,null,r.createElement(Re.Item,{intialShow:!0,title:Ze("groupsTitle",{selected:i.length,smartCount:e.groups.length})},r.createElement(Le,{entities:e.groups,selectedEntities:i,onSelectEntity:function(t){var n=p.z.getSelectedEntities(i,t);n.length?a(Ae.Groups):a(null),s(n),u(p.z.getLearnersForGroups(n)),e.setRecipients(p.z.getRecipients(n))},emptyState:r.createElement("div",null,r.createElement(f.x,{namespace:Be,phrase:"emptyGroups"})),renderIcon:function(e){var t;return r.createElement(j.f,{svgName:S.vn.Group,svgSize:b.S.Small,variant:(0,Oe.I)(null===(t=e.metadata)||void 0===t?void 0:t.colour),textVariant:"white",svgWrapperClassName:"p-1"})}})),r.createElement(Re.Item,{intialShow:!0,title:Ze("studentsTitle",{selected:c.length,smartCount:e.learners.length})},r.createElement(Le,{entities:e.learners,selectedEntities:c,onSelectEntity:function(t){var n=p.z.getSelectedEntities(c,t);n.length?a(Ae.Students):a(null),s([]),u(n),e.setRecipients(p.z.getRecipients(n))},emptyState:r.createElement("div",null,r.createElement(f.x,{namespace:Be,phrase:"emptyStudents"})),renderIcon:function(){return r.createElement(j.f,{svgName:S.vn.User,svgSize:b.S.Small,variant:"primary",textVariant:"white",svgWrapperClassName:"p-1"})},disableSelected:n===Ae.Groups,tooltipText:Ze("studentInSelectedGroup")}))))}var qe=o.T.encloseNamespace("assign.narrowClassroomSelectionView"),Ve=n(9806),ze=n(15611),He=n(14070),$e=n(97291);var We="assign.noStudentsDetailsView";function Qe(e){return r.createElement("div",{className:"position-relative mb-3"},r.createElement("figure",{className:"LP0Xh",style:{backgroundImage:"url(".concat(T.W.Assign.NO_STUDENTS.BACKGROUND,")")}}),r.createElement("div",{className:(0,A.A)("position-absolute bottom-0","OPnkT")},r.createElement("figure",{className:(0,A.A)("position-absolute m-0","Xtv19"),style:{backgroundImage:"url(".concat(T.W.Assign.NO_STUDENTS.PLANE,")")}}),r.createElement("div",{className:(0,A.A)("position-absolute","UX2aX")},r.createElement(Ve.k,{object:e.entity,locationContext:i.LZ.AssignFlowView,imageClassName:"border border-dark",thumbnailSize:"sm",fixedHeight:!0})),r.createElement("figure",{className:(0,A.A)("position-absolute m-0","MaOad"),style:{backgroundImage:"url(".concat(T.W.Assign.NO_STUDENTS.PLANE_FLAP,")")}})))}var Xe={"create-classroom":{view:function(e){var t,n,a=(0,s._)({objectId:e.objectId,entityType:e.entityType}),o=p.z.getContactSupportUrl(null===(t=a.config.data)||void 0===t?void 0:t.marketingSiteUrl,null===(n=a.currentUser.data)||void 0===n?void 0:n.instanceRegion),i=e.loading||!a.loaded;return r.createElement(d.G,{size:"lg",animation:e.animate,showLoadingSpinner:i,closePopup:e.closePopup,title:h("title"),bodyClassName:"d-flex flex-column gap-3"},r.createElement(g,{onClick:e.goToCreateClassroomForm}),r.createElement(u.i,null),r.createElement("div",null,r.createElement(y,{instanceRegion:e.instanceRegion,contactSupportLink:o}),r.createElement(m.P,{onClickBack:e.goToFlowSelector,hideNextButton:!0,hideCreateClassroomButton:!0})))}},"create-classroom-form":{view:function(e){var t,n,a=ne.a.useGetFetchAsync(),o=(0,l.y)({analyticsOptions:{entity:i.py.Assign,location:i.LZ.Popup},data:{entity:{id:e.objectId,type:e.entityType}}}).log,s=(t=r.useState(!1),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(t,n)||function(e,t){if(e){if("string"==typeof e)return oe(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?oe(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),c=s[0],u=s[1],p=(0,te.TA)({initialValues:{name:""},onSubmit:function(t){!c&&p.isValid&&(u(!0),a(re.F.createClassroom({name:t.name})).then(function(t){o({type:"create-new-classroom",classroom:t}),e.onCreateNewClassroom(t)}).catch(function(){p.setFieldError("name",se("createClassroomError",{name:t.name}))}).finally(function(){u(!1)}))},validationSchema:ae.G,validateOnChange:!0});return r.createElement(d.G,{size:"lg",title:se("title"),showLoadingSpinner:e.loading,animation:e.animate,closePopup:e.closePopup,bodyClassName:"d-flex flex-column gap-3"},r.createElement(I.Z,{className:"w-100",onSubmit:p.handleSubmit},r.createElement(I.Z.Group,null,r.createElement(I.Z.Label,{htmlFor:"name",className:"mb-1"},r.createElement(f.x,{namespace:ie,phrase:"newClassroomLabel"})),r.createElement(ee,{hasValidation:!0},r.createElement(I.Z.Control,{type:"text",className:"form-control",name:"name",id:"name",placeholder:se("newClassroomPlaceholder"),value:p.values.name,onChange:p.handleChange,maxLength:255,isInvalid:!!p.errors.name}),r.createElement(I.Z.Control.Feedback,{type:"invalid"},p.errors.name)))),r.createElement(m.P,{hideCreateClassroomButton:!0,onClickBack:e.goToPrevStep,onClickNext:p.submitForm,disableNextButton:!p.isValid||c||!p.values.name.length,showSpinner:c,nextButtonText:se("nextButton")}))}},"select-classroom":{view:function(e){var t,n,a,o,s,c,u,p,f,g=(0,l.y)({analyticsOptions:{entity:i.py.Assign,location:i.LZ.Popup},data:{entity:{id:e.objectId,type:e.entityType}}}).log,v=(t={selectedClassroom:e.selectedClassroom,setSelectedClassroom:e.setSelectedClassroom,goToNarrowSelection:function(){g({type:"select-narrow-selection",classroom:e.selectedClassroom}),e.goToNarrowSelection()}},n=(0,Z.T)().hasPermissions,p=r.useState(""),f=2,a=function(e){if(Array.isArray(e))return e}(p)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(p,f)||function(e,t){if(e){if("string"==typeof e)return q(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?q(e,t):void 0}}(p,f)||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.")}(),o=a[0],s=a[1],c=(0,B.N)(o,300),u=c.length>=2,{data:{classrooms:(0,U.Y)(u&&c,{withStudentsCount:!0})},query:o,debouncedQuery:c,canCreateClassrooms:n(_.C.CreateClassrooms),setQuery:s,getStudentsCount:function(e){var t,n,r=null===(t=e.enrolments)||void 0===t?void 0:t.count;return u&&(r=null===(n=e.users)||void 0===n?void 0:n.count),r||0},onClassroomSelected:function(e){t.setSelectedClassroom(e)},onClickSelectGroupsOrStudents:function(){t.selectedClassroom&&t.goToNarrowSelection()}}),y=v.data.classrooms;return r.createElement(d.G,{size:"lg",title:V("title"),showLoadingSpinner:e.loading,closePopup:e.closePopup,bodyClassName:"d-flex flex-column gap-3",animation:e.animate},r.createElement("div",{className:"position-relative"},r.createElement("div",{className:"position-absolute top-50 start-0 translate-middle-y p-1"},r.createElement(b.x,{svgName:S.vn.Search,size:b.S.Standard})),r.createElement("input",{type:"text",value:v.query,placeholder:V("inputPlaceholder"),onChange:function(e){return v.setQuery(e.target.value)},className:"form-control pe-1 py-2 border-dark ".concat("aDvD8")})),r.createElement(D,{searchQuery:v.debouncedQuery,classrooms:y,selectedClassroom:e.selectedClassroom,getStudentsCount:v.getStudentsCount,onClassroomSelected:v.onClassroomSelected,onClickCreateOpenClassroom:e.goToOpenClassroomFlow,onClickSelectGroupsOrStudents:v.onClickSelectGroupsOrStudents}),r.createElement(m.P,{hideCreateClassroomButton:!v.canCreateClassrooms,onClickBack:e.goToFlowSelector,onClickNext:e.goToSettings,disableNextButton:!e.selectedClassroom,onClickCreateClassroom:e.goToCreateClassroomForm}))}},"narrow-selection":{view:function(e){var t=function(e){var t,n,r=ne.a.useBasicFetch(e.selectedClassroom&&re.F.getClassroomStudents(e.selectedClassroom.id)),a=ne.a.useBasicFetch(e.selectedClassroom&&re.F.getClassroomGroups(e.selectedClassroom.id)),o=(null===(t=r.data)||void 0===t?void 0:t.data)||[],i=(null===(n=a.data)||void 0===n?void 0:n.data)||[];return{data:{loaded:!!a.data&&!!r.data,groups:i,learners:o}}}({selectedClassroom:e.selectedClassroom}).data,n=t.loaded,a=t.groups,o=t.learners;return r.createElement(d.G,{size:"lg",title:qe("title"),showLoadingSpinner:!n||e.loading,closePopup:e.closePopup,bodyClassName:"d-flex flex-column gap-3",animation:e.animate},r.createElement(pe,{classroom:e.selectedClassroom,onClickChangeClassroom:e.goToSelectClassroom}),r.createElement(Ue,{groups:a,learners:o,setRecipients:e.onChangeRecipients}),r.createElement(m.P,{hideCreateClassroomButton:!0,onClickBack:e.goToPrevStep,onClickNext:e.goToSettings,nextButtonTooltip:!e.recipients.length&&qe("noRecipients"),disableNextButton:!e.selectedClassroom||!e.recipients.length}))}},settings:{view:function(e){var t=Ie({entityType:e.entityType,objectId:e.objectId,recipients:e.recipients,selectedClassroom:e.selectedClassroom}),n=t.data.loaded;return r.createElement(d.G,{size:"lg",title:je("title"),showLoadingSpinner:!n||e.loading,closePopup:e.closePopup,bodyClassName:"d-flex flex-column gap-3",animation:e.animate},r.createElement(ge,{selectedClassroom:e.selectedClassroom,message:t.message,toggleMessage:t.settings.message,immediateFeedback:t.settings.immediateFeedback,preventScrubbing:t.settings.preventScrubbing,onChangeMessage:t.onChangeMessage,onToggleMessage:function(){return t.toggleSetting("message")},hideImmediateFeedback:"interactive"!==e.entityType,hidePreventScrubbing:"interactive"!==e.entityType,onTogglePreventScrubbing:function(){return t.toggleSetting("preventScrubbing")},onToggleImmediateFeedback:function(){return t.toggleSetting("immediateFeedback")}}),r.createElement(m.P,{hideCreateClassroomButton:!0,onClickBack:e.goToPrevStep,onClickNext:function(){t.onShare(e.onShare)},nextButtonText:je("assignButton"),showSpinner:t.shouldShowSpinner}))}},"assign-details":{view:c.AssignDetailsView},"no-students-details":{view:function(e){var t=(0,s._)({entityType:e.entityType,objectId:e.objectId}),n=t.entity,a=t.loaded,o={application:$e.O.CLASSROOMS,action:He.e.Classrooms.CLASSROOM_STUDENTS,args:[e.selectedClassroom.id]};return r.createElement(d.G,{size:"lg",showLoadingSpinner:!a||e.loading,closePopup:e.closePopup,bodyClassName:"d-flex flex-column gap-3",animation:e.animate,hideTitle:!0},r.createElement("div",{className:"d-flex flex-column align-items-center justify-content-center py-2 text-center"},r.createElement(Qe,{entity:n.data}),r.createElement("h3",{className:"mb-3"},r.createElement(f.x,{namespace:We,phrase:"title"})),r.createElement("p",{className:(0,A.A)("mb-4","sXT7V")},r.createElement(f.x,{namespace:We,phrase:"description"})),r.createElement(ze.F,{appLink:o,className:"btn btn-dark"},r.createElement(f.x,{namespace:We,phrase:"addStudentsButton",options:{classroomName:e.selectedClassroom.name}}))))}}};function Je(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",a=n.toStringTag||"@@toStringTag";function o(n,r,a,o){var l=r&&r.prototype instanceof s?r:s,c=Object.create(l.prototype);return Ye(c,"_invoke",function(n,r,a){var o,s,l,c=0,u=a||[],d=!1,m={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,n){return o=t,s=0,l=e,m.n=n,i}};function p(n,r){for(s=n,l=r,t=0;!d&&c&&!a&&t<u.length;t++){var a,o=u[t],p=m.p,f=o[2];n>3?(a=f===r)&&(l=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=p&&((a=n<2&&p<o[1])?(s=0,m.v=r,m.n=o[1]):p<f&&(a=n<3||o[0]>r||r>f)&&(o[4]=n,o[5]=r,m.n=f,s=0))}if(a||n>1)return i;throw d=!0,r}return function(a,u,f){if(c>1)throw TypeError("Generator is already running");for(d&&1===u&&p(u,f),s=u,l=f;(t=s<2?e:l)||!d;){o||(s?s<3?(s>1&&(m.n=-1),p(s,l)):m.n=l:m.v=l);try{if(c=2,o){if(s||(a="next"),t=o[a]){if(!(t=t.call(o,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(l=TypeError("The iterator does not provide a '"+a+"' method"),s=1);o=e}else if((t=(d=m.n<0)?l:n.call(r,m))!==i)break}catch(t){o=e,s=1,l=t}finally{c=1}}return{value:t,done:d}}}(n,a,o),!0),c}var i={};function s(){}function l(){}function c(){}t=Object.getPrototypeOf;var u=[][r]?t(t([][r]())):(Ye(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(u);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,Ye(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=c,Ye(d,"constructor",c),Ye(c,"constructor",l),l.displayName="GeneratorFunction",Ye(c,a,"GeneratorFunction"),Ye(d),Ye(d,a,"Generator"),Ye(d,r,function(){return this}),Ye(d,"toString",function(){return"[object Generator]"}),(Je=function(){return{w:o,m}})()}function Ye(e,t,n,r){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}Ye=function(e,t,n,r){if(t)a?a(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n;else{var o=function(t,n){Ye(e,t,function(e){return this._invoke(t,n,e)})};o("next",0),o("throw",1),o("return",2)}},Ye(e,t,n,r)}function Ke(e){return function(e){if(Array.isArray(e))return nt(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||tt(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 et(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(e,t)||tt(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 tt(e,t){if(e){if("string"==typeof e)return nt(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?nt(e,t):void 0}}function nt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var rt=function(e,t,n,r){return new(n||(n=Promise))(function(a,o){function i(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(i,s)}l((r=r.apply(e,t||[])).next())})},at=o.T.encloseNamespace("assign.existingClassroomFlowView");function ot(e){var t,n,o=(0,s._)({entityType:e.entityType,objectId:e.objectId}),c=(0,l.y)({analyticsOptions:{entity:i.py.Assign,location:i.LZ.Popup},data:{entity:{id:e.objectId,type:e.entityType}}}).log,u=function(e){var t,n=ne.a.useGetFetchAsync(),a=et(r.useState(null!==(t=e.initialStep)&&void 0!==t?t:"select-classroom"),2),o=a[0],i=a[1],s=et(r.useState(),2),l=s[0],c=s[1],u=et(r.useState([]),2),d=u[0],m=u[1],p=et(r.useState(),2),f=p[0],g=p[1],v=et(r.useState([]),2),y=v[0],h=v[1],b=!!d.length;function S(){return rt(this,void 0,void 0,Je().m(function e(){var t;return Je().w(function(e){for(;;)switch(e.n){case 0:if(f){e.n=1;break}return e.a(2,!1);case 1:return e.n=2,n(re.F.getClassroomStudents(f.id));case 2:return t=e.v,e.a(2,!!t.data.length)}},e)}))}return{step:o,share:l,recipients:y,hasPrevStep:b,selectedClassroom:f,onShare:function(t){return rt(this,void 0,void 0,Je().m(function n(){var r;return Je().w(function(n){for(;;)switch(n.n){case 0:return c(t),r="assign-details",n.p=1,n.n=2,S();case 2:if(n.v){n.n=3;break}return r="no-students-details",n.a(2);case 3:return n.p=3,e.log({type:"create-existing-classroom",share:t,nextStep:r}),i(r),n.f(3);case 4:return n.a(2)}},n,null,[[1,,3,4]])}))},setShare:c,goToPrevStep:function(){if(b){var e=Ke(d);i(e.pop()),m(e)}},onChangeRecipients:function(e){h(e)},setSelectedClassroom:g,setStep:function(e){m([].concat(Ke(d),[o])),i(e)},onCreateNewClassroom:function(e){g(e),i("settings")}}}({initialStep:e.initialStep,log:c}),d={objectId:e.objectId,entityType:e.entityType,closePopup:e.closePopup,goToFlowSelector:e.goToFlowSelector,goToOpenClassroomFlow:e.goToOpenClassroomFlow,shareId:null===(t=u.share)||void 0===t?void 0:t.shareId,loading:!o.loaded,recipients:u.recipients,instanceRegion:null===(n=o.currentUser.data)||void 0===n?void 0:n.instanceRegion,selectedClassroom:u.selectedClassroom,detailsTitle:at("existingClassroomTitle"),onShare:u.onShare,onChangeRecipients:u.onChangeRecipients,setSelectedClassroom:u.setSelectedClassroom,goToPrevStep:u.goToPrevStep,onCreateNewClassroom:u.onCreateNewClassroom,goToSettings:function(){return u.setStep("settings")},goToSelectClassroom:function(){return u.setStep("select-classroom")},goToNarrowSelection:function(){return u.setStep("narrow-selection")},goToCreateClassroomForm:function(){return u.setStep("create-classroom-form")}};return r.createElement(a.r,{data:d,loading:!o.loaded,animate:!1,step:u.step,setStep:u.setStep,closePopup:e.closePopup,steps:Xe})}var it=n(35690),st="shared.newBadge";function lt(e){return r.createElement("span",{className:(0,A.A)("badge badge-wrapper rounded-pill d-flex justify-content-center","fw-medium text-green","sm"===e.size?"badge-sm":"badge-std",e.invert?"bg-white":"bg-light-green")},r.createElement(f.x,{phrase:"new",namespace:st}))}var ct="shared.recommendedBadge";function ut(e){return r.createElement("span",{className:(0,A.A)("badge badge-wrapper rounded-pill d-flex justify-content-center","fw-medium text-blue","sm"===e.size?"badge-sm":"badge-std",e.invert?"bg-white":"bg-light-blue")},r.createElement(f.x,{phrase:"recommended",namespace:ct}))}function dt(e){return"existing-classroom"===e.type?e.hasClassrooms?r.createElement(ut,{size:"sm",invert:e.hovered}):null:"open-classroom"===e.type?e.hasClassrooms?r.createElement(lt,{size:"sm",invert:e.hovered}):r.createElement("div",{className:"d-flex align-items-center gap-2"},r.createElement(lt,{size:"sm",invert:e.hovered}),r.createElement(ut,{size:"sm",invert:e.hovered})):null}var mt=n(37963);const pt={optionImage:"iFoIG",optionItem:"Lu2bY"};function ft(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function gt(e){var t,n,a=(t=(0,mt.X)(),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(t,n)||function(e,t){if(e){if("string"==typeof e)return ft(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ft(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=a[0],i=a[1],s=e.item.badgeComponent;return r.createElement(Me.L,{onClick:function(){return e.onClick(e.item)},className:(0,A.A)("d-flex flex-column gap-4 align-items-center align-self-stretch justify-content-center","text-center cursor-pointer p-3 border rounded-3 user-select-none hover-bg-light-blue",pt.optionItem),ref:o},!!s&&r.createElement(s,{hovered:i}),r.createElement("img",{src:e.item.imageUrl,className:(0,A.A)("img-fluid w-50 d-none d-lg-block",pt.optionImage),draggable:!1}),r.createElement("div",{className:"d-flex flex-column gap-2"},r.createElement("h3",{className:"h4 mb-0"},e.item.title),e.item.subTitle&&r.createElement("p",{className:"mb-0 text-gray-900"},e.item.subTitle),e.item.linkText&&r.createElement("span",{className:"text-dark text-underline",onClick:function(){return e.onClick(e.item)}},e.item.linkText)))}function vt(e){return r.createElement("div",{className:"bg-white rounded-bottom-3 p-3 d-flex flex-column gap-3 justify-content-center align-items-center"},!!e.title&&r.createElement("h2",{className:"h4 m-0"},e.title),r.createElement("div",{className:"d-flex flex-column flex-lg-row justify-content-center align-items-center gap-3 w-100"},e.options.map(function(t){return r.createElement(gt,{item:t,onClick:e.onClick,key:t.id})})))}var yt=n(2948),ht=n(75896),bt=n(21789),St=n(37802),Ct=n(86099);function Et(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var xt="show:previous:assignments",wt=o.T.encloseNamespace("assign.flowSelectorView");function Tt(e){var t=function(e){var t,n,r,a,o,i,l=(o=(0,yt.D)(xt,!1),i=2,function(e){if(Array.isArray(e))return e}(o)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(o,i)||function(e,t){if(e){if("string"==typeof e)return Et(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Et(e,t):void 0}}(o,i)||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.")}()),c=l[0],u=l[1],d=(0,s._)({entityType:e.entityType,objectId:e.objectId}),m=(0,St.r)(null),p=m.isLoadingSettings,f=m.hasClassrooms,g=ne.a.useBasicFetch(ye.o.getSharesByObjectId(e.objectId)),v=(null===(t=g.data)||void 0===t?void 0:t.filter(function(e){return[me.y.Classroom,me.y.Open].includes(e.type)}))||[],y=ht.m.uniq(v.map(bt.x.getClassroomIdFromShare).filter(function(e){return!!e})),h=ne.a.useBasicFetch(g.hasCompleted&&re.F.getClassroomsByIds(y,null===(n=d.currentUser.data)||void 0===n?void 0:n.customerId)),b=ne.a.useBasicFetch(f&&re.F.getPublished(null===(r=d.currentUser.data)||void 0===r?void 0:r.customerId));return{data:{loaded:d.loaded&&!p&&!!g.data&&!!h.data&&!!b.data,previousAssignments:v,previousAssignmentClassrooms:h},showPreviousAssignments:c,hasClassrooms:f&&!!(null===(a=b.data)||void 0===a?void 0:a.data.length),canCreateClassrooms:d.canCreateClassrooms,getPreviousAssignItemAppLink:function(e){var t=(0,Ct.pY)(e);if(t)return t},onTogglePreviousAssignment:function(){u(!c)}}}({entityType:e.entityType,objectId:e.objectId}),n=t.data,a=n.loaded,o=n.previousAssignmentClassrooms,c=n.previousAssignments,u=(0,l.y)({data:{entity:{id:e.objectId,type:e.entityType}},analyticsOptions:{location:i.LZ.Popup,entity:i.py.Assign}}),m=u.log,p=u.getData,f=[{id:"existing-classroom",title:wt("existingClassroomTitle"),subTitle:wt("existingClassroomDescription"),imageUrl:T.W.Assign.EXISTING_CLASSROOM,linkText:wt("learnMore"),badgeComponent:function(e){var n=e.hovered;return r.createElement(dt,{type:"existing-classroom",hasClassrooms:t.hasClassrooms&&t.canCreateClassrooms,hovered:n})}},{id:"open-classroom",title:wt("openClassroomTitle"),subTitle:wt("openClassroomDescription"),imageUrl:T.W.Assign.OPEN_CLASSROOM,linkText:wt("learnMore"),badgeComponent:function(e){var n=e.hovered;return r.createElement(dt,{type:"open-classroom",hasClassrooms:t.hasClassrooms&&t.canCreateClassrooms,hovered:n})}}];return r.createElement(d.G,{size:"lg",animation:e.animate,title:wt("title"),closePopup:e.closePopup,bodyClassName:"d-flex flex-column gap-3 p-0",contentClassName:(0,A.A)(a&&"bg-transparent border-0"),showLoadingSpinner:!a||e.loading},r.createElement(vt,{options:f,onClick:function(n){"existing-classroom"===n.id?(!t.hasClassrooms&&t.canCreateClassrooms?e.goToCreateClassroomPrompt():e.goToExistingClassroomFlow(),m({type:"select-existing-classroom-flow"})):"open-classroom"===n.id&&(e.goToOpenClassroomFlow(),m({type:"select-open-classroom-flow"}))}}),r.createElement(it.QD,{assignments:c.reverse(),show:t.showPreviousAssignments,classrooms:o.data,onToggle:t.onTogglePreviousAssignment,getItemAppLink:t.getPreviousAssignItemAppLink,getItemAnalytics:function(e,t){var n=p({type:"view-previous-assignment",share:e,yIndex:t}),r=n.analyticsOptions;return{data:n.data,options:r}}}))}var Nt=n(8233),kt="assign.openClassroomFlowInfoHeader",It=o.T.encloseNamespace(kt);function At(e){return r.createElement(f.D.Provider,{value:kt},r.createElement(N.Z,{className:"p-3 bg-light-green rounded rounded-2 gx-0"},r.createElement(k.Z,{lg:2,className:"d-none d-lg-block align-self-stretch"},r.createElement("div",{className:"h-100 d-flex align-items-center justify-content-center me-4"},r.createElement("img",{src:T.W.Assign.OPEN_CLASSROOM,alt:It("alt"),className:"w-100 h-auto"}))),r.createElement(k.Z,{xs:12,lg:10,className:"position-relative"},r.createElement("h3",{className:"h6"},r.createElement(f.x,{phrase:"title"})),r.createElement("p",{className:"mb-0"},r.createElement(f.x,{phrase:"description"})),r.createElement("div",{className:"position-absolute top-0 end-0"},r.createElement(Pe.h,{svgName:S.vn.Close,onClick:e.onClose,className:"btn-close p-2"})))))}var jt=o.T.encloseNamespace("assign.openClassroomFlowSettings");function Ot(e){var t=Nt.R.getRespectRatingText(e.entity,e.yearGroups,e.hasStudentExp);return r.createElement("div",{className:"d-flex flex-column gap-4"},r.createElement(At,{onClose:e.closeHeader}),r.createElement(ce,{name:jt("videoSettingsTitle"),hide:e.hidePreventScrubbing&&e.hideImmediateFeedback},r.createElement(ce.Toggle,{hide:e.hidePreventScrubbing,title:jt("preventScrubbingTitle"),description:jt("preventScrubbingDescription"),onClick:e.onTogglePreventScrubbing,toggled:e.preventScrubbing,disabled:e.disablePreventScrubbing}),r.createElement(ce.Toggle,{hide:e.hideImmediateFeedback,title:jt("immediateFeedbackTitle"),description:jt("immediateFeedbackDescription"),onClick:e.onToggleImmediateFeedback,toggled:e.immediateFeedback,disabled:e.disableImmediateFeedback})),r.createElement(ce.Divider,{hide:e.hidePreventScrubbing&&e.hideImmediateFeedback}),r.createElement(ce,{name:jt("studentAccessTitle"),hide:e.hideRequiresStudentSignIn&&e.hideRespectRatingsAndRestrictions},r.createElement(ce.Toggle,{hide:e.hideRequiresStudentSignIn,title:jt("requiresStudentSignInTitle"),description:jt("requiresStudentSignInDescription"),onClick:e.onToggleRequiresStudentSignIn,toggled:e.toggleRequiresStudentSignIn,disabled:e.disableRequiresStudentSignIn}),r.createElement(ce.Toggle,{hide:e.hideRespectRatingsAndRestrictions,title:jt("respectRatingsAndRestrictionsTitle"),description:t,onClick:e.onToggleRespectRatingsAndRestrictions,toggled:e.toggleRespectRatingsAndRestrictions,disabled:e.disableRespectRatingsAndRestrictions})),r.createElement(ce.Divider,{hide:e.hideRequiresStudentSignIn&&e.hideRespectRatingsAndRestrictions||e.hideMessage}),r.createElement(ce,{name:jt("moreOptionsTitle"),hide:e.hideMessage,childContainerClassName:"d-flex flex-column gap-2"},r.createElement(ce.Toggle,{hide:e.hideMessage,title:jt("messageTitle"),description:jt("messageDescription"),onClick:e.onToggleMessage,toggled:e.toggleMessage,disabled:e.disableMessage},r.createElement(ce.TextArea,{hide:!e.toggleMessage,placeholder:jt("messagePlaceholder"),onChange:e.onChangeMessage,value:e.message}))))}var Pt=n(57900),Ft=n(69883);function Rt(e){return Rt="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},Rt(e)}function Mt(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",a=n.toStringTag||"@@toStringTag";function o(n,r,a,o){var l=r&&r.prototype instanceof s?r:s,c=Object.create(l.prototype);return Gt(c,"_invoke",function(n,r,a){var o,s,l,c=0,u=a||[],d=!1,m={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,n){return o=t,s=0,l=e,m.n=n,i}};function p(n,r){for(s=n,l=r,t=0;!d&&c&&!a&&t<u.length;t++){var a,o=u[t],p=m.p,f=o[2];n>3?(a=f===r)&&(l=o[(s=o[4])?5:(s=3,3)],o[4]=o[5]=e):o[0]<=p&&((a=n<2&&p<o[1])?(s=0,m.v=r,m.n=o[1]):p<f&&(a=n<3||o[0]>r||r>f)&&(o[4]=n,o[5]=r,m.n=f,s=0))}if(a||n>1)return i;throw d=!0,r}return function(a,u,f){if(c>1)throw TypeError("Generator is already running");for(d&&1===u&&p(u,f),s=u,l=f;(t=s<2?e:l)||!d;){o||(s?s<3?(s>1&&(m.n=-1),p(s,l)):m.n=l:m.v=l);try{if(c=2,o){if(s||(a="next"),t=o[a]){if(!(t=t.call(o,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,s<2&&(s=0)}else 1===s&&(t=o.return)&&t.call(o),s<2&&(l=TypeError("The iterator does not provide a '"+a+"' method"),s=1);o=e}else if((t=(d=m.n<0)?l:n.call(r,m))!==i)break}catch(t){o=e,s=1,l=t}finally{c=1}}return{value:t,done:d}}}(n,a,o),!0),c}var i={};function s(){}function l(){}function c(){}t=Object.getPrototypeOf;var u=[][r]?t(t([][r]())):(Gt(t={},r,function(){return this}),t),d=c.prototype=s.prototype=Object.create(u);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,c):(e.__proto__=c,Gt(e,a,"GeneratorFunction")),e.prototype=Object.create(d),e}return l.prototype=c,Gt(d,"constructor",c),Gt(c,"constructor",l),l.displayName="GeneratorFunction",Gt(c,a,"GeneratorFunction"),Gt(d),Gt(d,a,"Generator"),Gt(d,r,function(){return this}),Gt(d,"toString",function(){return"[object Generator]"}),(Mt=function(){return{w:o,m}})()}function Gt(e,t,n,r){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}Gt=function(e,t,n,r){if(t)a?a(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n;else{var o=function(t,n){Gt(e,t,function(e){return this._invoke(t,n,e)})};o("next",0),o("throw",1),o("return",2)}},Gt(e,t,n,r)}function Lt(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Dt(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Dt(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 Dt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var _t=function(e,t,n,r){return new(n||(n=Promise))(function(a,o){function i(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(i,s)}l((r=r.apply(e,t||[])).next())})},Bt=o.T.encloseNamespace("assign.useOpenClassroomFlowData"),Zt={immediateFeedback:!1,preventScrubbing:!1,message:!1,requiresStudentSignIn:!1,respectRatingsAndRestrictions:!1},Ut="assign:open:classroom:flow:settings:header";function qt(e){var t,n,a,o=(0,Ft.Z)(),i=Lt((0,yt.D)(Ut,!0,{storage:Pt.Z1.LocalStorage}),2),l=i[0],c=i[1],u=(0,s._)({entityType:e.entityType,objectId:e.objectId}),d=ne.a.useBasicFetch(Ee.h.yearGroups(null===(t=u.currentUser.data)||void 0===t?void 0:t.customerId)),m=Ce(e.objectId).createOpenSession,p=Lt(r.useState(Object.assign(Object.assign({},Zt),{preventScrubbing:(null===(n=u.interactive.data)||void 0===n?void 0:n.preventScrubbing)||!1,immediateFeedback:(null===(a=u.interactive.data)||void 0===a?void 0:a.immediateFeedback)||!1})),2),f=p[0],g=p[1],v=Lt(r.useState(""),2),y=v[0],h=v[1],b=Lt(r.useState(!1),2),S=b[0],C=b[1];return{data:{loaded:u.loaded&&!!d.data,entity:u.entity,yearGroups:d},showHeader:l,hasStudentExp:u.hasStudentExp,shouldShowSpinner:S,nextButtonText:Bt("nextButton"),message:y,settings:f,setMessage:h,setShowHeader:c,toggleSetting:function(e){!function(e,t){var n,r,a,o=(n={},a=t,(r=function(e){var t=function(e){if("object"!=Rt(e)||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=Rt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Rt(t)?t:t+""}(r=e))in n?Object.defineProperty(n,r,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[r]=a,n);"respectRatingsAndRestrictions"===e&&(o.requiresStudentSignIn=t),g(function(e){return Object.assign(Object.assign({},e),o)})}(e,!f[e])},onShare:function(t){return _t(this,void 0,void 0,Mt().m(function n(){var r;return Mt().w(function(n){for(;;)switch(n.n){case 0:return C(!0),n.p=1,n.n=2,m({objectId:e.objectId,immediateFeedback:f.immediateFeedback,preventScrubbing:f.preventScrubbing,requireSignIn:f.requiresStudentSignIn,respectRatingsAndRestrictions:f.respectRatingsAndRestrictions});case 2:r=n.v,"function"==typeof t&&t(r),C(!1),n.n=4;break;case 3:n.p=3,n.v,o.error(Bt("createError"));case 4:return n.p=4,C(!1),n.f(4);case 5:return n.a(2)}},n,null,[[1,3,4,5]])}))}}}var Vt=o.T.encloseNamespace("assign.openClassroomFlowSettingsView");function zt(e){var t=qt({entityType:e.entityType,objectId:e.objectId}),n=t.data,a=n.loaded,o=n.entity,s=n.yearGroups,c=(0,l.y)({data:{entity:{id:e.objectId,type:e.entityType}},analyticsOptions:{location:i.LZ.Popup,entity:i.py.Assign}}).log;return r.createElement(d.G,{size:"lg",title:Vt("title"),showLoadingSpinner:!a||e.loading,closePopup:e.closePopup,bodyClassName:"d-flex flex-column gap-3",animation:e.animate},r.createElement(Ot,{entity:o.data,message:t.message,yearGroups:s.data,hasStudentExp:t.hasStudentExp,toggleMessage:t.settings.message,immediateFeedback:t.settings.immediateFeedback,preventScrubbing:t.settings.preventScrubbing,toggleRequiresStudentSignIn:t.settings.requiresStudentSignIn,toggleRespectRatingsAndRestrictions:t.settings.respectRatingsAndRestrictions,hideMessage:!0,onChangeMessage:t.setMessage,onToggleMessage:function(){return t.toggleSetting("message")},hidePreventScrubbing:"interactive"!==e.entityType,hideImmediateFeedback:"interactive"!==e.entityType,onTogglePreventScrubbing:function(){return t.toggleSetting("preventScrubbing")},onToggleImmediateFeedback:function(){return t.toggleSetting("immediateFeedback")},onToggleRequiresStudentSignIn:function(){return t.toggleSetting("requiresStudentSignIn")},onToggleRespectRatingsAndRestrictions:function(){return t.toggleSetting("respectRatingsAndRestrictions")},closeHeader:function(){return t.setShowHeader(!1)},disableRequiresStudentSignIn:t.settings.respectRatingsAndRestrictions}),r.createElement(m.P,{hideCreateClassroomButton:!0,onClickBack:e.goToFlowSelector,onClickNext:function(){t.onShare(function(t){c({type:"create-open-classroom",share:t}),e.setShare(t),e.goToAssignDetails()})},nextButtonText:t.nextButtonText,showSpinner:t.shouldShowSpinner}))}function Ht(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return $t(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$t(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 $t(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Wt(e){var t=Ht(r.useState("settings"),2),n=t[0],o=t[1],i=Ht(r.useState(),2),s=i[0],l=i[1],u={objectId:e.objectId,entityType:e.entityType,closePopup:e.closePopup,goToFlowSelector:e.goToFlowSelector,shareId:null==s?void 0:s.shareId,initialDetailsScreen:"share-link",goToAssignDetails:function(){return o("assign-details")},setShare:l};return r.createElement(a.r,{data:u,animate:!1,step:n,setStep:o,closePopup:e.closePopup,steps:{settings:{view:zt},"assign-details":{view:c.AssignDetailsView}}})}function Qt(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,a,o,i,s=[],l=!0,c=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,a=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw a}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Xt(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Xt(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 Xt(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function Jt(e){var t,n=Qt(r.useState(null!==(t=e.selectedFlow)&&void 0!==t?t:"flow-selector"),2),o=n[0],i=n[1],s=Qt(r.useState(!1),2),l=s[0],c=s[1],u=Qt(r.useState(!0),2),d=u[0],m=u[1];function p(e){m(!1),i(e)}var f={objectId:e.objectId,entityType:e.entityType,closePopup:e.closePopup,initialStep:l?"create-classroom":null,goToCreateClassroomPrompt:function(){c(!0),p("existing-classroom")},goToExistingClassroomFlow:function(){return p("existing-classroom")},goToFlowSelector:function(){return p("flow-selector")},goToOpenClassroomFlow:function(){return p("open-classroom")}};return r.createElement(a.r,{data:f,step:o,setStep:p,closePopup:e.closePopup,animate:d,steps:{"flow-selector":{view:Tt},"open-classroom":{view:Wt},"existing-classroom":{view:ot}}})}},63578:(e,t,n)=>{n.d(t,{Y:()=>m});var r=n(70680),a=n(23481),o=n(20354),i=n(94644),s=n(31949),l=n(69883),c=n(60115),u=n(88630),d=n(1211),m=function(e,t){var n=o.a.useBasicFetch(s.N.currentUser()),m=(0,l.Z)(),p=(0,r.I0)(),f=function(r){return e?(null==t?void 0:t.withStudentsCount)?d.J.searchClassroomsV4(e,r):d.J.searchClassrooms(e,n.data.customerId,r):(null==t?void 0:t.withStudentsCount)?u.F.getPublishedWithStudents(n.data.id,r):u.F.getPublished(n.data.id,r)},g=function(e){return o.a.getFetch(p)(f(e))},v=(0,c.K)(!!n.data&&f,g,function(e,t){if(1===e)return(0,i.r)(t);m.error(a.T.getPhrase("classrooms.hooks","error"))},function(t){return e?t.results:t.data});return Object.assign(Object.assign({},v),{fetchNext:g})}},27787:(e,t,n)=>{n.d(t,{G:()=>o});var r=n(5173),a=n(23481).T.encloseNamespace("classrooms.classroomValidation"),o=(0,r.Ry)().shape({name:(0,r.Z_)().max(255,function(){return a("nameExceeds")}).required(function(){return a("nameRequired")}).default("")})},82602:(e,t,n)=>{n.d(t,{WU:()=>c});var r=["second","minute","hour","day","week","month","year"],a=["秒","分钟","小时","天","周","个月","年"],o={},i=function(e,t){o[e]=t},s=[60,60,24,7,365/7/12,12];function l(e){return e instanceof Date?e:!isNaN(e)||/^\d+$/.test(e)?new Date(parseInt(e)):(e=(e||"").trim().replace(/\.\d+/,"").replace(/-/,"/").replace(/-/,"/").replace(/(\d)T(\d)/,"$1 $2").replace(/Z/," UTC").replace(/([+-]\d\d):?(\d\d)/," $1$2"),new Date(e))}var c=function(e,t,n){var r=function(e,t){return(+(t?l(t):new Date)-+l(e))/1e3}(e,n&&n.relativeDate);return function(e,t){for(var n=e<0?1:0,r=e=Math.abs(e),a=0;e>=s[a]&&a<s.length;a++)e/=s[a];return(e=Math.floor(e))>(0==(a*=2)?9:1)&&(a+=1),t(e,a,r)[n].replace("%s",e.toString())}(r,function(e){return o[e]||o.en_US}(t))};i("en_US",function(e,t){if(0===t)return["just now","right now"];var n=r[Math.floor(t/2)];return e>1&&(n+="s"),[e+" "+n+" ago","in "+e+" "+n]}),i("zh_CN",function(e,t){if(0===t)return["刚刚","片刻后"];var n=a[~~(t/2)];return[e+" "+n+"前",e+" "+n+"后"]})}}]);
3
- //# sourceMappingURL=6756-20c0ab9591-lite.chunk.js.map