@clickview/lite 0.50.1-rc.0 → 0.50.1-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundles.json +2 -2
- package/dist/css/{1313-lite-b05099b818.chunk.css → 1313-lite-6b1a20b3fe.chunk.css} +1 -1
- package/dist/css/{1402-lite-9489903efd.chunk.css → 1402-lite-8a07733b96.chunk.css} +1 -1
- package/dist/css/{3588-lite-f083d46330.chunk.css → 1407-lite-be6668ef3a.chunk.css} +1 -1
- package/dist/css/{5725-lite-789978250c.chunk.css → 1539-lite-a5772fefdb.chunk.css} +1 -1
- package/dist/css/{5769-lite-16efb24b77.chunk.css → 1567-lite-2ab4d6f863.chunk.css} +1 -1
- package/dist/css/{1602-lite-90df7cca5c.chunk.css → 1602-lite-8fb6cea449.chunk.css} +1 -1
- package/dist/css/{1820-lite-ebb89eab7a.chunk.css → 1820-lite-8008c78ef7.chunk.css} +1 -1
- package/dist/css/{9818-lite-dca6b9e86d.chunk.css → 1850-lite-e9e8c03964.chunk.css} +1 -1
- package/dist/css/{2120-lite-dd1595051d.chunk.css → 2120-lite-b1876117b4.chunk.css} +1 -1
- package/dist/css/{2137-lite-7045732fc8.chunk.css → 2137-lite-6e9d11bd5b.chunk.css} +1 -1
- package/dist/css/{2446-lite-6b11bdfdc1.chunk.css → 2446-lite-dfc41ecbea.chunk.css} +1 -1
- package/dist/css/{9211-lite-f00eb0266e.chunk.css → 2507-lite-9516182bdb.chunk.css} +1 -1
- package/dist/css/{2724-lite-24da60896e.chunk.css → 2724-lite-669b5b8120.chunk.css} +1 -1
- package/dist/css/{2795-lite-1641e6fbf9.chunk.css → 2795-lite-34f8ca5018.chunk.css} +1 -1
- package/dist/css/{3070-lite-c0909f46f3.chunk.css → 3070-lite-6af4bd0c76.chunk.css} +1 -1
- package/dist/css/{3397-lite-dfab7385b6.chunk.css → 3397-lite-5b25e3a686.chunk.css} +1 -1
- package/dist/css/{3403-lite-4b92798a0c.chunk.css → 3403-lite-89bcc16133.chunk.css} +1 -1
- package/dist/css/{458-lite-c8a3139b8b.chunk.css → 3515-lite-10695a1950.chunk.css} +2 -2
- package/dist/css/{1407-lite-f083d46330.chunk.css → 3588-lite-be6668ef3a.chunk.css} +1 -1
- package/dist/css/{3895-lite-b05099b818.chunk.css → 3895-lite-6b1a20b3fe.chunk.css} +1 -1
- package/dist/css/{4151-lite-fcc0fc8753.chunk.css → 4151-lite-9cbe9bba57.chunk.css} +1 -1
- package/dist/css/{3515-lite-c8a3139b8b.chunk.css → 458-lite-10695a1950.chunk.css} +2 -2
- package/dist/css/{5114-lite-38330c6187.chunk.css → 5114-lite-06a1ac179b.chunk.css} +1 -1
- package/dist/css/{5242-lite-58cdcd1ec4.chunk.css → 5242-lite-30642a9642.chunk.css} +2 -2
- package/dist/css/{5364-lite-93bfe767eb.chunk.css → 5364-lite-e8c416fe79.chunk.css} +1 -1
- package/dist/css/{5446-lite-ae2395342f.chunk.css → 5446-lite-2e956685f4.chunk.css} +1 -1
- package/dist/css/{1539-lite-789978250c.chunk.css → 5725-lite-a5772fefdb.chunk.css} +1 -1
- package/dist/css/{6759-lite-16efb24b77.chunk.css → 5769-lite-2ab4d6f863.chunk.css} +1 -1
- package/dist/css/{5803-lite-d1315afce2.chunk.css → 5803-lite-625e484692.chunk.css} +1 -1
- package/dist/css/{5810-lite-ba174cfe3d.chunk.css → 5810-lite-1224500e4d.chunk.css} +1 -1
- package/dist/css/{6181-lite-7558375a74.chunk.css → 6181-lite-ca9f6aeba1.chunk.css} +1 -1
- package/dist/css/{6189-lite-4c33c1b5c4.chunk.css → 6189-lite-20e4d47423.chunk.css} +1 -1
- package/dist/css/{6309-lite-a23dc59ecd.chunk.css → 6309-lite-bd0968a2c8.chunk.css} +1 -1
- package/dist/css/{6531-lite-9431296610.chunk.css → 6531-lite-1f6f3c392c.chunk.css} +1 -1
- package/dist/css/{1567-lite-16efb24b77.chunk.css → 6759-lite-2ab4d6f863.chunk.css} +1 -1
- package/dist/css/{6803-lite-16efb24b77.chunk.css → 6803-lite-2ab4d6f863.chunk.css} +1 -1
- package/dist/css/{6850-lite-769c93cb9e.chunk.css → 6850-lite-0bf8514497.chunk.css} +3 -3
- package/dist/css/{7533-lite-d0ae59ec54.chunk.css → 7533-lite-206fce5dbd.chunk.css} +1 -1
- package/dist/css/{7777-lite-8067dea624.chunk.css → 7777-lite-48d916f95c.chunk.css} +1 -1
- package/dist/css/{7987-lite-94679244a2.chunk.css → 7987-lite-fd431fbaf2.chunk.css} +1 -1
- package/dist/css/{8218-lite-fe8c54917b.chunk.css → 8218-lite-f54139cf27.chunk.css} +1 -1
- package/dist/css/{8316-lite-9083a6565c.chunk.css → 8316-lite-6036f465f0.chunk.css} +1 -1
- package/dist/css/{8354-lite-bc431d9d01.chunk.css → 8354-lite-8228cb401d.chunk.css} +1 -1
- package/dist/css/{8987-lite-95b3d79328.chunk.css → 8987-lite-6cd15b48d2.chunk.css} +1 -1
- package/dist/css/{9068-lite-c0341005e4.chunk.css → 9068-lite-c3a9ace963.chunk.css} +1 -1
- package/dist/css/{2507-lite-f00eb0266e.chunk.css → 9211-lite-9516182bdb.chunk.css} +1 -1
- package/dist/css/{9329-lite-a259b19412.chunk.css → 9329-lite-5f15379e31.chunk.css} +1 -1
- package/dist/css/{9417-lite-9083a6565c.chunk.css → 9417-lite-6036f465f0.chunk.css} +1 -1
- package/dist/css/{9620-lite-d77e9ad59b.chunk.css → 9620-lite-111c825071.chunk.css} +1 -1
- package/dist/css/{1850-lite-dca6b9e86d.chunk.css → 9818-lite-e9e8c03964.chunk.css} +1 -1
- package/dist/css/{lite-app-28b7b96628.css → lite-app-212404ee3a.css} +1 -1
- package/dist/scripts/1169-5a0d974a94-lite.chunk.js +2 -0
- package/dist/scripts/1169-5a0d974a94-lite.chunk.js.map +1 -0
- package/dist/scripts/{1313-455608bc46-lite.chunk.js → 1313-5a7170fb69-lite.chunk.js} +1 -1
- package/dist/scripts/{1313-455608bc46-lite.chunk.js.map → 1313-5a7170fb69-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1402-d40dc88741-lite.chunk.js → 1402-39cb29d725-lite.chunk.js} +1 -1
- package/dist/scripts/{1402-d40dc88741-lite.chunk.js.map → 1402-39cb29d725-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1407-3592ec24f2-lite.chunk.js → 1407-3bab3f00f6-lite.chunk.js} +1 -1
- package/dist/scripts/{1407-3592ec24f2-lite.chunk.js.map → 1407-3bab3f00f6-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1567-edcff759b1-lite.chunk.js → 1567-b3141bc14f-lite.chunk.js} +1 -1
- package/dist/scripts/{1567-edcff759b1-lite.chunk.js.map → 1567-b3141bc14f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1602-173a4f272a-lite.chunk.js → 1602-dfe6928d65-lite.chunk.js} +1 -1
- package/dist/scripts/{1602-173a4f272a-lite.chunk.js.map → 1602-dfe6928d65-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1820-68114ca994-lite.chunk.js → 1820-9a1f618969-lite.chunk.js} +2 -2
- package/dist/scripts/1820-9a1f618969-lite.chunk.js.map +1 -0
- package/dist/scripts/{2120-88f6dd6652-lite.chunk.js → 2120-82a7b90997-lite.chunk.js} +1 -1
- package/dist/scripts/{2120-88f6dd6652-lite.chunk.js.map → 2120-82a7b90997-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2137-093f479ff9-lite.chunk.js → 2137-2e78e535ad-lite.chunk.js} +1 -1
- package/dist/scripts/{2137-093f479ff9-lite.chunk.js.map → 2137-2e78e535ad-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2446-acc94130ed-lite.chunk.js → 2446-eaa1d2ee7d-lite.chunk.js} +2 -2
- package/dist/scripts/{2446-acc94130ed-lite.chunk.js.map → 2446-eaa1d2ee7d-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2507-bb4e17b1b3-lite.chunk.js → 2507-fc744cab62-lite.chunk.js} +1 -1
- package/dist/scripts/{2507-bb4e17b1b3-lite.chunk.js.map → 2507-fc744cab62-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2724-ee3a51e0c9-lite.chunk.js → 2724-060fdde41c-lite.chunk.js} +1 -1
- package/dist/scripts/{2724-ee3a51e0c9-lite.chunk.js.map → 2724-060fdde41c-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2795-0616748349-lite.chunk.js → 2795-eb3a51adc2-lite.chunk.js} +1 -1
- package/dist/scripts/{2795-0616748349-lite.chunk.js.map → 2795-eb3a51adc2-lite.chunk.js.map} +1 -1
- package/dist/scripts/3070-63e0a6b63e-lite.chunk.js +2 -0
- package/dist/scripts/3070-63e0a6b63e-lite.chunk.js.map +1 -0
- package/dist/scripts/{3397-bb32e2287f-lite.chunk.js → 3397-cd6acb96c4-lite.chunk.js} +1 -1
- package/dist/scripts/{3397-bb32e2287f-lite.chunk.js.map → 3397-cd6acb96c4-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3403-12c460d3f6-lite.chunk.js → 3403-d42b7125ae-lite.chunk.js} +1 -1
- package/dist/scripts/{3403-12c460d3f6-lite.chunk.js.map → 3403-d42b7125ae-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3515-4de2fd7070-lite.chunk.js → 3515-72a31e0bbd-lite.chunk.js} +1 -1
- package/dist/scripts/{3515-4de2fd7070-lite.chunk.js.map → 3515-72a31e0bbd-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3588-62e61bc526-lite.chunk.js → 3588-1c1c264291-lite.chunk.js} +2 -2
- package/dist/scripts/{3588-62e61bc526-lite.chunk.js.map → 3588-1c1c264291-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3895-a54621a8c4-lite.chunk.js → 3895-cbeb003a0a-lite.chunk.js} +1 -1
- package/dist/scripts/{3895-a54621a8c4-lite.chunk.js.map → 3895-cbeb003a0a-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4151-ad0c6f107f-lite.chunk.js → 4151-bb1e8aafcb-lite.chunk.js} +1 -1
- package/dist/scripts/{4151-ad0c6f107f-lite.chunk.js.map → 4151-bb1e8aafcb-lite.chunk.js.map} +1 -1
- package/dist/scripts/{458-35c635a2ce-lite.chunk.js → 458-1ca8abf829-lite.chunk.js} +1 -1
- package/dist/scripts/{458-35c635a2ce-lite.chunk.js.map → 458-1ca8abf829-lite.chunk.js.map} +1 -1
- package/dist/scripts/4718-b3cfb276a7-lite.chunk.js +2 -0
- package/dist/scripts/4718-b3cfb276a7-lite.chunk.js.map +1 -0
- package/dist/scripts/{5114-fcfd260e0b-lite.chunk.js → 5114-15c4180b16-lite.chunk.js} +1 -1
- package/dist/scripts/{5114-fcfd260e0b-lite.chunk.js.map → 5114-15c4180b16-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5242-2d752ff85e-lite.chunk.js → 5242-e5cc8311eb-lite.chunk.js} +1 -1
- package/dist/scripts/{5242-2d752ff85e-lite.chunk.js.map → 5242-e5cc8311eb-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5364-b081f5e1ca-lite.chunk.js → 5364-fe4a00711f-lite.chunk.js} +1 -1
- package/dist/scripts/{5364-b081f5e1ca-lite.chunk.js.map → 5364-fe4a00711f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5446-1ef1639ef6-lite.chunk.js → 5446-5a2f719a6f-lite.chunk.js} +1 -1
- package/dist/scripts/{5446-1ef1639ef6-lite.chunk.js.map → 5446-5a2f719a6f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5725-6792ca3e92-lite.chunk.js → 5725-1592727a8f-lite.chunk.js} +1 -1
- package/dist/scripts/{5725-6792ca3e92-lite.chunk.js.map → 5725-1592727a8f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5769-34ad224f5f-lite.chunk.js → 5769-e9f596e2b2-lite.chunk.js} +1 -1
- package/dist/scripts/{5769-34ad224f5f-lite.chunk.js.map → 5769-e9f596e2b2-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5803-0005a9eb66-lite.chunk.js → 5803-7db6af5411-lite.chunk.js} +1 -1
- package/dist/scripts/{5803-0005a9eb66-lite.chunk.js.map → 5803-7db6af5411-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5810-a652483b8e-lite.chunk.js → 5810-c81d69aea8-lite.chunk.js} +2 -2
- package/dist/scripts/{5810-a652483b8e-lite.chunk.js.map → 5810-c81d69aea8-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5940-511beff2ee-lite.chunk.js → 5940-5731abccf3-lite.chunk.js} +2 -2
- package/dist/scripts/5940-5731abccf3-lite.chunk.js.map +1 -0
- package/dist/scripts/{6102-f1851eca08-lite.chunk.js → 6102-38e3abf2fa-lite.chunk.js} +3 -3
- package/dist/scripts/{6102-f1851eca08-lite.chunk.js.map → 6102-38e3abf2fa-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6181-7a4fc8e1e1-lite.chunk.js → 6181-55d2689d74-lite.chunk.js} +1 -1
- package/dist/scripts/{6181-7a4fc8e1e1-lite.chunk.js.map → 6181-55d2689d74-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6189-ce9f0eeb31-lite.chunk.js → 6189-b45080fab7-lite.chunk.js} +1 -1
- package/dist/scripts/{6189-ce9f0eeb31-lite.chunk.js.map → 6189-b45080fab7-lite.chunk.js.map} +1 -1
- package/dist/scripts/6309-f5bb1c14dc-lite.chunk.js +3 -0
- package/dist/scripts/6309-f5bb1c14dc-lite.chunk.js.map +1 -0
- package/dist/scripts/{6415-9d8b88c713-lite.chunk.js → 6415-5ac1a71471-lite.chunk.js} +1 -1
- package/dist/scripts/{6415-9d8b88c713-lite.chunk.js.map → 6415-5ac1a71471-lite.chunk.js.map} +1 -1
- package/dist/scripts/6450-2745feb746-lite.chunk.js +2 -0
- package/dist/scripts/6450-2745feb746-lite.chunk.js.map +1 -0
- package/dist/scripts/{6531-597262a181-lite.chunk.js → 6531-1325be9fb1-lite.chunk.js} +1 -1
- package/dist/scripts/{6531-597262a181-lite.chunk.js.map → 6531-1325be9fb1-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6759-3f36472a49-lite.chunk.js → 6759-a7e1119553-lite.chunk.js} +1 -1
- package/dist/scripts/{6759-3f36472a49-lite.chunk.js.map → 6759-a7e1119553-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6803-2275c83d96-lite.chunk.js → 6803-222bfeea55-lite.chunk.js} +1 -1
- package/dist/scripts/{6803-2275c83d96-lite.chunk.js.map → 6803-222bfeea55-lite.chunk.js.map} +1 -1
- package/dist/scripts/6850-393de993b8-lite.chunk.js +3 -0
- package/dist/scripts/6850-393de993b8-lite.chunk.js.map +1 -0
- package/dist/scripts/{6948-84a5f8d76f-lite.chunk.js → 6948-23ec6a6370-lite.chunk.js} +2 -2
- package/dist/scripts/6948-23ec6a6370-lite.chunk.js.map +1 -0
- package/dist/scripts/{7533-e079b2af18-lite.chunk.js → 7533-9edee544c6-lite.chunk.js} +1 -1
- package/dist/scripts/{7533-e079b2af18-lite.chunk.js.map → 7533-9edee544c6-lite.chunk.js.map} +1 -1
- package/dist/scripts/{7777-f0937ef1f5-lite.chunk.js → 7777-1c3490134e-lite.chunk.js} +1 -1
- package/dist/scripts/{7777-f0937ef1f5-lite.chunk.js.map → 7777-1c3490134e-lite.chunk.js.map} +1 -1
- package/dist/scripts/{7987-db0037709c-lite.chunk.js → 7987-ff7de6531f-lite.chunk.js} +1 -1
- package/dist/scripts/{7987-db0037709c-lite.chunk.js.map → 7987-ff7de6531f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8218-f3b81c7287-lite.chunk.js → 8218-088530bdf7-lite.chunk.js} +1 -1
- package/dist/scripts/{8218-f3b81c7287-lite.chunk.js.map → 8218-088530bdf7-lite.chunk.js.map} +1 -1
- package/dist/scripts/8316-ba6bae1f29-lite.chunk.js +2 -0
- package/dist/scripts/8316-ba6bae1f29-lite.chunk.js.map +1 -0
- package/dist/scripts/{8354-e30261b594-lite.chunk.js → 8354-d07c3bef5a-lite.chunk.js} +1 -1
- package/dist/scripts/{8354-e30261b594-lite.chunk.js.map → 8354-d07c3bef5a-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8987-32190552fa-lite.chunk.js → 8987-c0c2790aab-lite.chunk.js} +1 -1
- package/dist/scripts/{8987-32190552fa-lite.chunk.js.map → 8987-c0c2790aab-lite.chunk.js.map} +1 -1
- package/dist/scripts/9016-0c078a39cb-lite.chunk.js +3 -0
- package/dist/scripts/9016-0c078a39cb-lite.chunk.js.map +1 -0
- package/dist/scripts/{9068-562c30f718-lite.chunk.js → 9068-554aa0d22b-lite.chunk.js} +1 -1
- package/dist/scripts/{9068-562c30f718-lite.chunk.js.map → 9068-554aa0d22b-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9211-d4c7016679-lite.chunk.js → 9211-0381d3e715-lite.chunk.js} +1 -1
- package/dist/scripts/{9211-d4c7016679-lite.chunk.js.map → 9211-0381d3e715-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9329-5cf6baab9d-lite.chunk.js → 9329-798d826fc4-lite.chunk.js} +1 -1
- package/dist/scripts/{9329-5cf6baab9d-lite.chunk.js.map → 9329-798d826fc4-lite.chunk.js.map} +1 -1
- package/dist/scripts/9417-aa8d198d40-lite.chunk.js +2 -0
- package/dist/scripts/9417-aa8d198d40-lite.chunk.js.map +1 -0
- package/dist/scripts/9620-d0f04eeccd-lite.chunk.js +3 -0
- package/dist/scripts/9620-d0f04eeccd-lite.chunk.js.map +1 -0
- package/dist/scripts/{9818-f63bdbbac4-lite.chunk.js → 9818-a2fa140139-lite.chunk.js} +1 -1
- package/dist/scripts/{9818-f63bdbbac4-lite.chunk.js.map → 9818-a2fa140139-lite.chunk.js.map} +1 -1
- package/dist/scripts/bundle-815f926b0f.min.js +3 -0
- package/dist/scripts/bundle-815f926b0f.min.js.map +1 -0
- package/package.json +1 -1
- package/dist/scripts/1169-3df974a8eb-lite.chunk.js +0 -2
- package/dist/scripts/1169-3df974a8eb-lite.chunk.js.map +0 -1
- package/dist/scripts/1820-68114ca994-lite.chunk.js.map +0 -1
- package/dist/scripts/3070-fb8eb47716-lite.chunk.js +0 -2
- package/dist/scripts/3070-fb8eb47716-lite.chunk.js.map +0 -1
- package/dist/scripts/4718-2b58aa560d-lite.chunk.js +0 -2
- package/dist/scripts/4718-2b58aa560d-lite.chunk.js.map +0 -1
- package/dist/scripts/5940-511beff2ee-lite.chunk.js.map +0 -1
- package/dist/scripts/6309-dd3a8e7f21-lite.chunk.js +0 -3
- package/dist/scripts/6309-dd3a8e7f21-lite.chunk.js.map +0 -1
- package/dist/scripts/6450-6819d42c15-lite.chunk.js +0 -2
- package/dist/scripts/6450-6819d42c15-lite.chunk.js.map +0 -1
- package/dist/scripts/6850-8770bfeefb-lite.chunk.js +0 -3
- package/dist/scripts/6850-8770bfeefb-lite.chunk.js.map +0 -1
- package/dist/scripts/6948-84a5f8d76f-lite.chunk.js.map +0 -1
- package/dist/scripts/8316-dad1824a5f-lite.chunk.js +0 -2
- package/dist/scripts/8316-dad1824a5f-lite.chunk.js.map +0 -1
- package/dist/scripts/9016-c359251f82-lite.chunk.js +0 -3
- package/dist/scripts/9016-c359251f82-lite.chunk.js.map +0 -1
- package/dist/scripts/9417-70c6489c67-lite.chunk.js +0 -2
- package/dist/scripts/9417-70c6489c67-lite.chunk.js.map +0 -1
- package/dist/scripts/9620-630f9e6344-lite.chunk.js +0 -3
- package/dist/scripts/9620-630f9e6344-lite.chunk.js.map +0 -1
- package/dist/scripts/bundle-d20cb66d1a.min.js +0 -3
- package/dist/scripts/bundle-d20cb66d1a.min.js.map +0 -1
- /package/dist/scripts/{2446-acc94130ed-lite.chunk.js.LICENSE.txt → 2446-eaa1d2ee7d-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{3588-62e61bc526-lite.chunk.js.LICENSE.txt → 3588-1c1c264291-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{5810-a652483b8e-lite.chunk.js.LICENSE.txt → 5810-c81d69aea8-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6102-f1851eca08-lite.chunk.js.LICENSE.txt → 6102-38e3abf2fa-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6309-dd3a8e7f21-lite.chunk.js.LICENSE.txt → 6309-f5bb1c14dc-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6850-8770bfeefb-lite.chunk.js.LICENSE.txt → 6850-393de993b8-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9016-c359251f82-lite.chunk.js.LICENSE.txt → 9016-0c078a39cb-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9620-630f9e6344-lite.chunk.js.LICENSE.txt → 9620-d0f04eeccd-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-d20cb66d1a.min.js.LICENSE.txt → bundle-815f926b0f.min.js.LICENSE.txt} +0 -0
package/dist/scripts/{7777-f0937ef1f5-lite.chunk.js.map → 7777-1c3490134e-lite.chunk.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/7777-f0937ef1f5-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/caret/Caret.tsx","file:///app/packages/libs/shared/src/components/caret/caret.scss","file:///app/packages/libs/shared/src/components/library-folder/library-folder.scss","file:///app/packages/libs/shared/src/components/library-folder/LibraryFolder.tsx","file:///app/packages/libs/shared/src/components/folder-list/FolderList.tsx","file:///app/packages/libs/shared/src/components/folder-list/partial-loading/partial-folder-list.scss","file:///app/packages/libs/shared/src/components/folder-list/partial-loading/PartialFolderList.tsx","file:///app/packages/libs/shared/src/hooks/useBuildBreadcrumbs.ts","file:///app/packages/projects/lite/src/apps/libraries/hooks/UseFetchAllChildFolders.ts","file:///app/packages/projects/lite/src/apps/libraries/hooks/UseHandleLibraryType.ts","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/empty-state/LibraryFolderEmptyState.tsx","file:///app/packages/projects/lite/src/apps/libraries/components/library-folder-videos/LibraryFolderVideos.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/partial-loading/library-folder-partial-loading.scss","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/partial-loading/LibraryFolderPartialLoading.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/LibraryFolderView.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/LibraryFolderViewUtils.ts"],"sourcesContent":["import React from 'react';\n\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer } from '../svg-container/SvgContainer';\n\nimport styles from './caret.scss';\n\ntype CaretDirection = 'left' | 'right' | 'up' | 'down';\n\n\nconst getDirectionClass = (direction: CaretDirection) => {\n switch (direction) {\n case 'up':\n return styles.up;\n case 'down':\n return styles.down;\n case 'right':\n return styles.right;\n case 'left':\n return styles.left;\n }\n};\n\ninterface CaretProps {\n direction?: CaretDirection;\n className?: string;\n}\n\nCaret.defaultProps = {\n direction: 'right'\n};\n\nexport function Caret(props: CaretProps): JSX.Element {\n return (\n <SvgContainer\n svgName={cvSvgLibrary.Caret}\n className={`${getDirectionClass(props.direction)} svg-container d-inline-block ${props.className}`}\n />\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"up\":\"JAT0R\",\"down\":\"ld41u\",\"left\":\"jZTRR\",\"right\":\"HHkPe\"};","// extracted by mini-css-extract-plugin\nexport default {\"actions\":\"cN3nB\",\"actionsContainer\":\"xM37V\",\"dropStyle\":\"kvCLS\",\"dragStyle\":\"md9Na\"};","import React from 'react';\n\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Core } from 'libs/common/core';\n\nimport { ActionOptions, Actions } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { DragDropMoveWrapper } from 'libs/shared/components/drag-drop-move/DragDropMoveWrapper';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { ImageSize, ImageType } from 'libs/shared/enums/Images';\nimport { Folder } from 'libs/shared/interfaces';\n\nimport styles from './library-folder.scss';\n\ninterface LibraryFolderProps {\n folder: Folder;\n drag?: boolean;\n drop?: boolean;\n getAppLink: (f: Folder) => Core.AppLink;\n getFolderActions?: (f: Folder) => ActionOptions[];\n}\n\nexport function LibraryFolder(props: LibraryFolderProps): JSX.Element {\n const thumbnailUrl = props.folder.thumbnail\n ? UrlHelper.urlBuilder(props.folder.thumbnail.url, { size: ImageSize.Small })\n : null;\n\n const actions = props.getFolderActions?.(props.folder);\n\n return (\n <DragDropMoveWrapper\n draggable={props.drag && { id: props.folder.id, data: props.folder }}\n droppable={props.drop && { id: props.folder.id, data: props.folder }}\n dropStye={styles.dropStyle}\n dragStyle={styles.dragStyle}\n >\n <div className='position-relative'>\n <AppLink\n className='rounded-3 d-block text-decoration-none'\n appLink={props.getAppLink(props.folder)}\n title={props.folder.name}\n >\n <BaseImage\n data={thumbnailUrl}\n imageType={ImageType.Thumbnails}\n imageClassName='rounded-top-lg'\n >\n <ImageFallback\n name={props.folder.name}\n type={ImageFallbackType.Folder}\n extraClasses='rounded-top-lg'\n />\n </BaseImage>\n <h3 className='bg-white border-start border-end border-bottom rounded-bottom-lg font-size-normal fw-semibold mb-0 p-2'>\n <span className='text-truncate d-block'>{props.folder.name}</span>\n </h3>\n </AppLink>\n {actions?.length &&\n <Actions\n actions={actions}\n className={styles.actionsContainer}\n actionsDropdownClassName={styles.actions}\n // Intentionally setting to the default SVG size\n dropdownToggleSvgSize={null}\n />\n }\n </div>\n </DragDropMoveWrapper>\n );\n}","import React from 'react';\n\nimport { LocalStorageHelper } from 'libs/common/backbone/utils/LocalStorageHelper';\nimport { Core } from 'libs/common/core';\n\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { Caret } from 'libs/shared/components/caret/Caret';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { LibraryFolder } from 'libs/shared/components/library-folder/LibraryFolder';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { Folder } from 'libs/shared/interfaces';\n\nconst namespace = 'libraries.folderList';\n\nconst EXPANDED_FOLDERS_KEY = 'has:expanded:library:folders';\n\nfunction useGetFolderLimit(): number {\n const breakpoints = useBreakpoints();\n\n if (breakpoints.xxl || breakpoints.xl || breakpoints.lg)\n return 6;\n\n if (breakpoints.md)\n return 4;\n\n return 3;\n}\n\ninterface FolderListProps {\n folders: Folder[];\n getAppLink: (folder: Folder) => Core.AppLink;\n expandFolders?: boolean;\n showHeading?: boolean;\n getFolderActions?: (f: Folder) => ActionOptions[];\n drag?: boolean;\n drop?: boolean;\n extraButtons?: JSX.Element;\n}\n\nFolderList.defaultProps = {\n showHeading: true\n};\n\nexport function FolderList(props: FolderListProps): JSX.Element {\n const [ _hasExpandedFolders, setHasExpandedFolders ] = React.useState(\n LocalStorageHelper.get(EXPANDED_FOLDERS_KEY) || false\n );\n\n const hasExpandedFolders = props.expandFolders || _hasExpandedFolders;\n\n const folderLimit = useGetFolderLimit();\n\n function onToggleFolderView(): void {\n setHasExpandedFolders(!hasExpandedFolders);\n LocalStorageHelper.set(EXPANDED_FOLDERS_KEY, !hasExpandedFolders);\n }\n\n const displayableFolders = hasExpandedFolders ? props.folders : props.folders.slice(0, folderLimit);\n\n const canToggleCollapsedView = props.folders.length > folderLimit && !props.expandFolders;\n\n return (\n <>\n <div className='d-flex justify-content-between align-items-center'>\n {props.showHeading &&\n <DivButton\n className={`d-inline-flex align-items-center mb-2 px-2 ${!canToggleCollapsedView ? 'cursor-default' : ''}`}\n onClick={onToggleFolderView}\n >\n {canToggleCollapsedView && (\n <Caret direction={hasExpandedFolders ? 'down' : 'right'} />\n )}\n <h2 className='h4 mb-0'>\n <Text namespace={namespace} phrase='folders' options={{ count: props.folders.length }} />\n </h2>\n </DivButton>\n }\n\n {!!(!hasExpandedFolders && canToggleCollapsedView) && (\n <div className='d-flex justify-content-end justify-self-end px-2'>\n <DivButton onClick={onToggleFolderView} className='text-dark hover-text-underline d-inline-block'>\n <Text namespace={namespace} phrase='seeAll' options={{ count: props.folders.length }} />\n </DivButton>\n </div>\n )}\n {!!(hasExpandedFolders && canToggleCollapsedView) && (\n <div className='d-flex justify-content-end justify-self-end px-2'>\n <DivButton onClick={onToggleFolderView} className='text-dark hover-text-underline d-inline-block'>\n <Text namespace={namespace} phrase='seeLess' />\n </DivButton>\n </div>\n )}\n\n {props.extraButtons ? props.extraButtons : <></>}\n </div>\n\n <div className='row mx-1'>\n {displayableFolders.map(f => (\n <div key={f.id} className='col-4 col-md-3 col-lg-2 px-1 pb-3'>\n <LibraryFolder\n folder={f}\n getAppLink={props.getAppLink}\n getFolderActions={props.getFolderActions}\n drag={props.drag}\n drop={props.drop}\n />\n </div>\n ))}\n </div>\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"partialFolderHeading\":\"dhbsL\",\"partialFolderThumbnail\":\"CI9vk\",\"partialFolderName\":\"l0Nll\"};","import React from 'react';\n\nimport styles from './partial-folder-list.scss';\n\nconst PartialFolder = () => (\n <div className='col-4 col-md-3 col-lg-2 px-1 pb-3'>\n <div className={`${styles.partialFolderThumbnail} partial-loading-background rounded-top-lg`} />\n <div className={`${styles.partialFolderName} partial-loading-background border-bottom rounded-bottom-lg font-size-normal mb-0 p-2`}>\n \n </div>\n </div>\n);\n\nexport function PartialFolderList({ count = 3 }: { count?: number; }): JSX.Element {\n return (\n <>\n <div className={`${styles.partialFolderHeading} h4 mb-2 partial-loading-background`}> </div>\n <div className='row mx-n1'>\n {Array(count).fill(null).map((_, i) => <PartialFolder key={i} />)}\n </div>\n </>\n );\n}","import { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { Breadcrumb } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { Folder, MasterNestedObject } from 'libs/shared/interfaces';\n\ninterface BuildOptions {\n folderId: string;\n firstItem?: Breadcrumb;\n lastItem?: Breadcrumb;\n getAppLink: (folder: MasterNestedObject<Folder>) => Core.AppLink;\n}\n\nexport function useBuildBreadcrumbs(options: BuildOptions): Breadcrumb[] {\n const { folderId, firstItem, lastItem, getAppLink } = options;\n\n const parentTree = Flight.useBasicFetch<MasterNestedObject<Folder>>(LibraryRequests.folderParentTree(folderId));\n\n if (!parentTree.data?.children?.length)\n return [];\n\n const searchStack: {\n node: MasterNestedObject<Folder>,\n path: MasterNestedObject<Folder>[]\n }[] = parentTree.data.children.map(c => ({ node: c, path: [c]}));\n\n let breadcrumbs: Breadcrumb[] = [];\n\n while (searchStack.length) {\n const { node, path } = searchStack.pop();\n \n if (node.data.id.toString() === folderId.toString())\n breadcrumbs = path.map(object => ({\n name: object.data.name,\n appLink: getAppLink(object)\n }));\n\n if (node.children)\n searchStack.push(...node.children.map(c => ({ node: c, path: [ ...path, c ]})));\n }\n\n if (firstItem) breadcrumbs.unshift(firstItem);\n if (lastItem) breadcrumbs.push(lastItem);\n\n breadcrumbs[breadcrumbs.length - 1].active = true;\n\n return breadcrumbs;\n}\n ","import { Flight } from 'libs/common/flight';\n\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { useFetchAll } from 'libs/shared/hooks/UseFetchAll';\nimport { SelectAllPagesResult, useSelectAllPages } from 'libs/shared/hooks/UseSelectAllPages';\nimport { Folder } from 'libs/shared/interfaces';\n\nexport function useFetchAllChildFolders(parentId?: string): SelectAllPagesResult<Folder> {\n const fetch = Flight.useGetFetch();\n\n function getRequest(cursor?: string): Flight.Request {\n return LibraryRequests.childFolders(parentId, cursor);\n }\n \n function fetchNext(cursor?: string): void {\n fetch(getRequest(cursor));\n }\n\n useFetchAll(!!parentId && getRequest, !!parentId && fetchNext);\n\n return (useSelectAllPages<Folder>(!!parentId && ((cursor?: string) => getRequest(cursor).key)));\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { MasterObjectTypes } from 'libs/shared/enums/MasterObjectTypes';\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { Library } from 'libs/shared/interfaces';\n\n/**\n * This hook prevents the libraries UI to be used for anything \n * other than customer libraries i.e Hosted, Exchange, Workspace etc\n */\nexport function useHandleLibraryType(request: Flight.Response<Library>): void {\n React.useEffect(() => {\n if (!request.hasCompleted || request.hasError)\n return;\n\n if (request.data.type !== MasterObjectTypes.CustomLibrary)\n Core.ErrorHelper.throw(new NotFoundError());\n }, [request.hasCompleted]);\n}","import React from 'react';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'libraries.libraryFolderEmptyState';\n\nexport function LibraryFolderEmptyState(): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.Libraries.FOLDER} />\n\n <EmptyState.Heading><Text phrase='heading' /></EmptyState.Heading>\n\n <EmptyState.Info><Text phrase='info' /></EmptyState.Info>\n </EmptyState>\n </LanguageNamespaceContext.Provider>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { EntityType, LocationContext, SearchSourceDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { SourceFilterOptions } from 'libs/shared/apps/search/interfaces';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { useFocusSearchBar } from 'libs/shared/components/search-bar/SearchUtils';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\nimport { VideoSortSelect } from 'libs/shared/components/video-sort-select/VideoSortSelect';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { CanFavouriteFunc, FavouriteFunc, Library, PresentationAudience, VideoTypes, YearGroup } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { InteractiveHelpers } from 'shared/utils/InteractiveHelper';\nimport { VideoAppLinkHelper } from 'shared/utils/VideoAppLinkHelper';\n\nimport { LibraryFolderEmptyState } from 'apps/libraries/views/library-folder/empty-state/LibraryFolderEmptyState';\nimport { SeriesAppLinkHelper } from 'apps/series/SeriesAppLinkHelper';\n\nconst namespace = 'libraries.libraryFolderVideos';\n\ninterface LibraryFolderVideosProps {\n videos: VideoTypes[];\n yearGroups: YearGroup[];\n hasSubFolders: boolean;\n setFavourite: FavouriteFunc;\n canFavourite: CanFavouriteFunc;\n audiences: PresentationAudience[];\n libraries: Library[];\n\n getSortAppLink: (sort: VideoSortType) => Core.AppLink;\n sort: VideoSortType;\n\n isFetching: boolean;\n hasMore: boolean;\n fetchNext: (cursor: string) => void;\n nextCursor?: string;\n imageCdnUrl?: string;\n isPlugin: boolean;\n}\n\nexport function LibraryFolderVideos(props: LibraryFolderVideosProps): JSX.Element {\n const { focusSearchBar } = useFocusSearchBar();\n const { hasPermissions } = usePermissions();\n\n if (!props.videos.length && !props.hasSubFolders)\n return <LibraryFolderEmptyState />;\n\n if (!props.videos.length)\n return <></>;\n\n return (\n <div>\n {/* With no subfolders, we don't show this subheading, and the sort is moved up to the parent component */}\n {props.hasSubFolders && (\n <div className='d-flex justify-content-between align-items-center'>\n <h2 className='h4 mb-0'>\n <Text namespace={namespace} phrase='videos' />\n </h2>\n\n <div className='d-flex'>\n <IconButton\n svgName={cvSvgLibrary.Search}\n appLink={{\n application: AppChannels.SEARCH,\n action: Actions.Search.HOME,\n params: {\n source: SourceFilterOptions.School\n }\n }}\n className='btn btn-outline-dark d-none d-sm-inline-block'\n onClick={focusSearchBar}\n analyticsData={{}}\n analyticsOptions={{\n entity: EntityType.SearchResults,\n location: LocationContext.Libraries,\n actionType: UserAction.Click,\n descriptor: SearchSourceDescriptor.School\n }}\n >\n <Text namespace={namespace} phrase='searchLibrary' options={{ smartCount: props.libraries?.length }} />\n </IconButton>\n <VideoSortSelect\n variant='outline-dark'\n type={props.sort}\n getSortAppLink={props.getSortAppLink}\n analyticsOptions={{\n location: LocationContext.VideoListHeader,\n entity: EntityType.Video,\n actionType: UserAction.Sort,\n workflowPhase: WorkflowPhase.Complete\n }}\n />\n </div>\n </div>\n )}\n\n <VideoList\n videos={props.videos}\n yearGroups={props.yearGroups}\n getVideoAppLink={VideoAppLinkHelper.getAppLink}\n getSubTextAppLink={video => SeriesAppLinkHelper.getSeriesAppLink(video.series)}\n setFavourite={props.setFavourite}\n canFavourite={props.canFavourite}\n presentationAudiences={props.audiences}\n hasPermissions={hasPermissions}\n getPreviewQuestionsAppLink={interactive => InteractiveHelpers.getPreviewQuestionsAppLink(interactive)}\n imageCdnUrl={props.imageCdnUrl}\n isPlugin={props.isPlugin}\n getClassroomGuideAppLink={VideoAppLinkHelper.getClassroomGuideAppLink}\n getInteractiveGuidanceAppLink={VideoAppLinkHelper.getInteractiveGuidanceAppLink}\n getResourceGuidanceAppLink={VideoAppLinkHelper.getResourceGuidanceAppLink}\n />\n\n {(props.hasMore || props.isFetching) && (\n <InfiniteScrollFooter\n isFetching={props.isFetching}\n fetchNext={props.fetchNext}\n nextCursor={props.nextCursor}\n />\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"subheading\":\"IJZtA\"};","import React from 'react';\n\nimport { PartialFolderList } from 'libs/shared/components/folder-list/partial-loading/PartialFolderList';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\n\nimport styles from './library-folder-partial-loading.scss';\n\nexport function LibraryFolderPartialLoading(): JSX.Element {\n return (\n <>\n <div className='m-3'>\n <PartialFolderList />\n </div>\n\n <div className='mx-3 mb-3'>\n <div className={`${styles.subheading} partial-loading-background mb-2`} />\n <PartialVideoList />\n </div>\n </>\n );\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { EntityType, LocationContext, SearchSourceDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { SourceFilterOptions } from 'libs/shared/apps/search/interfaces';\nimport { BannerHeader, PartialBannerHeader } from 'libs/shared/components/banner-header/BannerHeader';\nimport { Breadcrumbs, PartialBreadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { FolderList } from 'libs/shared/components/folder-list/FolderList';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { useFocusSearchBar } from 'libs/shared/components/search-bar/SearchUtils';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { VideoSortSelect } from 'libs/shared/components/video-sort-select/VideoSortSelect';\nimport { VideoActionsContext } from 'libs/shared/context/VideoActionsContext';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { VideoRequests } from 'libs/shared/flight-requests/VideoRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config, CurrentUser, Folder, Library, VideoTypes, YearGroup } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { VideoSortHelper } from 'libs/shared/utils/VideoSortHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\nimport { useVideoActions, VideoActionsLocation } from 'shared/hooks/use-video-actions/useVideoActions';\nimport { useLiteFavourites } from 'shared/hooks/useLiteFavourites';\nimport { usePresentationAudiences } from 'shared/hooks/usePresentationAudiences';\nimport { useVideoMixin } from 'shared/hooks/useVideoMixin';\n\nimport { LibraryFolderVideos } from 'apps/libraries/components/library-folder-videos/LibraryFolderVideos';\nimport { useFetchAllChildFolders } from 'apps/libraries/hooks/UseFetchAllChildFolders';\nimport { useHandleLibraryType } from 'apps/libraries/hooks/UseHandleLibraryType';\n\nimport { LibraryFolderPartialLoading } from './partial-loading/LibraryFolderPartialLoading';\nimport { getFolderAppLink, getFolderBgColourClass, useGetFolderBreadcrumbs } from './LibraryFolderViewUtils';\n\nconst namespace = 'libraries.libraryFolder';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface LibraryFolderViewProps {\n libraryId: string;\n folderId: string;\n sort?: VideoSortType;\n}\n\nexport function LibraryFolderView(props: LibraryFolderViewProps): JSX.Element {\n const dispatch = useDispatch();\n const alerts = useAlerts();\n const { focusSearchBar } = useFocusSearchBar();\n const { isPlugin } = usePluginHelper();\n\n const libraries = Flight.useBasicFetch<Library[]>(LibraryRequests.domainLibraries([ 'customLibrary', 'sharedLibrary' ]));\n const library = Flight.useBasicFetch<Library>(LibraryRequests.library(props.libraryId));\n const folder = Flight.useBasicFetch<Folder>(LibraryRequests.folder(props.folderId));\n const subfolders = useFetchAllChildFolders(props.folderId);\n\n const user = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n user.data?.isAuthenticated && CustomerRequests.yearGroups(user.data.customerId)\n );\n\n const videoActions = useVideoActions({ location: VideoActionsLocation.VideoItem });\n const { setFavourite, canFavourite } = useLiteFavourites(LocationContext.VideoThumbnail);\n const breadcrumbs = useGetFolderBreadcrumbs(props.folderId, library.data, props.sort);\n const audiences = usePresentationAudiences();\n\n useSetPageMetadata({ title: folder.data?.name });\n\n useHandleObjectError([ library, folder ]);\n useHandleLibraryType(library);\n\n const sort = !!user.data && VideoSortHelper.getOrSetSortType(user.data.id, props.sort);\n\n const {\n items: videos,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<VideoTypes>(getVideosRequest, fetchNext, onError);\n\n useVideoMixin(videos);\n\n function getVideosRequest(cursor?: string): Flight.Request {\n return VideoRequests.collectionVideos(props.folderId, sort, cursor);\n }\n\n function fetchNext(cursor?: string): void {\n return Flight.getFetch(dispatch)(getVideosRequest(cursor));\n }\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error(getPhrase('error'));\n }\n\n const hasNoSubfolders = !!(subfolders.hasCompleted && !subfolders.items?.length);\n\n return (\n <VideoActionsContext.Provider value={videoActions}>\n {(library.data && folder.data && config.data)\n ? (\n <BannerHeader\n heading={folder.data.name}\n banner={folder.data.banner}\n imageCdnUrl={config.data.imageCdnUrl}\n blockColourClass={getFolderBgColourClass(folder.data)}\n logo={library.data.owner?.logo}\n />\n ) : <PartialBannerHeader />\n }\n\n <div className={`d-flex justify-content-between align-items-center py-3 mx-3 ${hasNoSubfolders ? '' : 'border-bottom'}`}>\n {(library.data && folder.data)\n ? <Breadcrumbs breadcrumbs={breadcrumbs} />\n : <PartialBreadcrumbs />\n }\n \n <div className='d-flex'>\n {(hasNoSubfolders || !videos?.length) &&\n <IconButton\n svgName={cvSvgLibrary.Search}\n appLink={{\n application: AppChannels.SEARCH,\n action: Actions.Search.HOME,\n params: {\n source: SourceFilterOptions.School\n }\n }}\n className='btn btn-outline-dark d-none d-sm-inline-block'\n onClick={focusSearchBar}\n analyticsData={{}}\n analyticsOptions={{\n entity: EntityType.SearchResults,\n location: LocationContext.Libraries,\n actionType: UserAction.Click,\n descriptor: SearchSourceDescriptor.School\n }}\n >\n <Text namespace={namespace} phrase='searchLibrary' options={{ smartCount: libraries.data?.length ?? 1 }} />\n </IconButton>\n }\n {(hasNoSubfolders && folder.data) && (\n <VideoSortSelect\n variant='outline-dark'\n type={sort}\n getSortAppLink={sort => getFolderAppLink(props.libraryId, folder.data, sort)}\n analyticsOptions={{\n location: LocationContext.VideoListHeader,\n entity: EntityType.Video,\n actionType: UserAction.Sort,\n workflowPhase: WorkflowPhase.Complete\n }}\n />\n )}\n </div>\n </div>\n\n {(videos && subfolders) ? (\n <>\n {!!subfolders.items?.length && (\n <div className='px-2 py-3'>\n <FolderList\n folders={subfolders.items}\n getAppLink={(f: Folder) => getFolderAppLink(props.libraryId, f, sort)}\n expandFolders={!videos.length}\n />\n </div>\n )}\n\n <div className='px-3 pb-3'>\n <LibraryFolderVideos\n videos={videos}\n yearGroups={yearGroups.data}\n hasSubFolders={!!subfolders.items?.length}\n setFavourite={setFavourite}\n canFavourite={canFavourite}\n hasMore={hasMore}\n isFetching={isFetching}\n fetchNext={fetchNext}\n nextCursor={nextCursor}\n sort={sort}\n getSortAppLink={sort => getFolderAppLink(props.libraryId, folder.data, sort)}\n audiences={audiences.data}\n libraries={libraries.data}\n imageCdnUrl={config.data?.imageCdnUrl}\n isPlugin={isPlugin}\n />\n </div>\n </>\n ) : <LibraryFolderPartialLoading />}\n </VideoActionsContext.Provider>\n );\n}","import { Core } from 'libs/common/core';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { Breadcrumb } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { useBuildBreadcrumbs } from 'libs/shared/hooks/useBuildBreadcrumbs';\nimport { Folder, Library } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nexport function getFolderAppLink(libraryId: string, folder: Folder, sort: string): Core.AppLink {\n if (!libraryId || !folder)\n return null;\n\n return {\n application: AppChannels.LIBRARIES,\n action: Actions.Libraries.FOLDER,\n args: [ libraryId, folder.id, TextHelper.slugify(folder.name) ],\n params: {\n sort\n }\n };\n}\n\nexport function getFolderBgColourClass(folder: Folder | Library): string {\n let charCode = 0;\n\n for (let i = 0; i < folder.name?.length ?? 0; i++) {\n charCode += folder.name.charCodeAt(i);\n }\n\n return BG_COLOUR_CLASS_NAMES[charCode % BG_COLOUR_CLASS_NAMES.length];\n}\n\nexport function useGetFolderBreadcrumbs(folderId: string, library: Library, sort: VideoSortType): Breadcrumb[] {\n return useBuildBreadcrumbs({\n folderId: library && folderId,\n getAppLink: object => getFolderAppLink(library.id, object.data, sort),\n firstItem: {\n name: library?.name,\n appLink: {\n application: AppChannels.LIBRARIES,\n action: Actions.Libraries.LIBRARY,\n args: [ library?.id, TextHelper.slugify(library?.name) ]\n }\n }\n });\n}"],"names":["getDirectionClass","direction","Caret","props","SvgContainer","svgName","className","defaultProps","LibraryFolder","thumbnailUrl","folder","thumbnail","UrlHelper","url","size","actions","getFolderActions","DragDropMoveWrapper","draggable","drag","id","data","droppable","drop","dropStye","dragStyle","AppLink","appLink","getAppLink","title","name","BaseImage","imageType","imageClassName","ImageFallback","type","extraClasses","length","Actions","actionsDropdownClassName","dropdownToggleSvgSize","namespace","EXPANDED_FOLDERS_KEY","FolderList","breakpoints","LocalStorageHelper","_hasExpandedFolders","setHasExpandedFolders","hasExpandedFolders","expandFolders","folderLimit","useBreakpoints","xxl","xl","lg","md","onToggleFolderView","displayableFolders","folders","slice","canToggleCollapsedView","showHeading","DivButton","onClick","Text","phrase","options","count","extraButtons","map","f","key","PartialFolder","PartialFolderList","Array","fill","_","i","useBuildBreadcrumbs","folderId","firstItem","lastItem","parentTree","children","searchStack","c","node","path","breadcrumbs","pop","toString","object","push","unshift","active","useFetchAllChildFolders","parentId","fetch","getRequest","cursor","useHandleLibraryType","request","hasCompleted","hasError","LibraryFolderEmptyState","value","EmptyState","src","ImageUrls","LibraryFolderVideos","focusSearchBar","hasPermissions","usePermissions","videos","hasSubFolders","IconButton","application","action","params","source","analyticsData","analyticsOptions","entity","location","actionType","descriptor","smartCount","libraries","VideoSortSelect","variant","sort","getSortAppLink","workflowPhase","VideoList","yearGroups","getVideoAppLink","VideoAppLinkHelper","getSubTextAppLink","video","SeriesAppLinkHelper","series","setFavourite","canFavourite","presentationAudiences","audiences","getPreviewQuestionsAppLink","interactive","InteractiveHelper","imageCdnUrl","isPlugin","getClassroomGuideAppLink","getInteractiveGuidanceAppLink","getResourceGuidanceAppLink","hasMore","isFetching","InfiniteScrollFooter","fetchNext","nextCursor","LibraryFolderPartialLoading","PartialVideoList","getPhrase","LanguageService","LibraryFolderView","dispatch","alerts","usePluginHelper","LibraryRequests","library","libraryId","subfolders","user","UserRequests","config","ConfigRequests","isAuthenticated","CustomerRequests","customerId","videoActions","useVideoActions","useLiteFavourites","u","usePresentationAudiences","useSetPageMetadata","VideoSortHelper","getVideosRequest","pageNumber","httpStatus","error","items","VideoRequests","useVideoMixin","hasNoSubfolders","VideoActionsContext","BannerHeader","heading","banner","blockColourClass","logo","owner","Breadcrumbs","getFolderAppLink","args","getFolderBgColourClass","charCode","charCodeAt","useGetFolderBreadcrumbs"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"scripts/7777-1c3490134e-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/caret/Caret.tsx","file:///app/packages/libs/shared/src/components/caret/caret.scss","file:///app/packages/libs/shared/src/components/library-folder/library-folder.scss","file:///app/packages/libs/shared/src/components/library-folder/LibraryFolder.tsx","file:///app/packages/libs/shared/src/components/folder-list/FolderList.tsx","file:///app/packages/libs/shared/src/components/folder-list/partial-loading/partial-folder-list.scss","file:///app/packages/libs/shared/src/components/folder-list/partial-loading/PartialFolderList.tsx","file:///app/packages/libs/shared/src/hooks/useBuildBreadcrumbs.ts","file:///app/packages/projects/lite/src/apps/libraries/hooks/UseFetchAllChildFolders.ts","file:///app/packages/projects/lite/src/apps/libraries/hooks/UseHandleLibraryType.ts","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/empty-state/LibraryFolderEmptyState.tsx","file:///app/packages/projects/lite/src/apps/libraries/components/library-folder-videos/LibraryFolderVideos.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/partial-loading/library-folder-partial-loading.scss","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/partial-loading/LibraryFolderPartialLoading.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/LibraryFolderView.tsx","file:///app/packages/projects/lite/src/apps/libraries/views/library-folder/LibraryFolderViewUtils.ts"],"sourcesContent":["import React from 'react';\n\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer } from '../svg-container/SvgContainer';\n\nimport styles from './caret.scss';\n\ntype CaretDirection = 'left' | 'right' | 'up' | 'down';\n\n\nconst getDirectionClass = (direction: CaretDirection) => {\n switch (direction) {\n case 'up':\n return styles.up;\n case 'down':\n return styles.down;\n case 'right':\n return styles.right;\n case 'left':\n return styles.left;\n }\n};\n\ninterface CaretProps {\n direction?: CaretDirection;\n className?: string;\n}\n\nCaret.defaultProps = {\n direction: 'right'\n};\n\nexport function Caret(props: CaretProps): JSX.Element {\n return (\n <SvgContainer\n svgName={cvSvgLibrary.Caret}\n className={`${getDirectionClass(props.direction)} svg-container d-inline-block ${props.className}`}\n />\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"up\":\"JAT0R\",\"down\":\"ld41u\",\"left\":\"jZTRR\",\"right\":\"HHkPe\"};","// extracted by mini-css-extract-plugin\nexport default {\"actions\":\"cN3nB\",\"actionsContainer\":\"xM37V\",\"dropStyle\":\"kvCLS\",\"dragStyle\":\"md9Na\"};","import React from 'react';\n\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Core } from 'libs/common/core';\n\nimport { ActionOptions, Actions } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { DragDropMoveWrapper } from 'libs/shared/components/drag-drop-move/DragDropMoveWrapper';\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { ImageSize, ImageType } from 'libs/shared/enums/Images';\nimport { Folder } from 'libs/shared/interfaces';\n\nimport styles from './library-folder.scss';\n\ninterface LibraryFolderProps {\n folder: Folder;\n drag?: boolean;\n drop?: boolean;\n getAppLink: (f: Folder) => Core.AppLink;\n getFolderActions?: (f: Folder) => ActionOptions[];\n}\n\nexport function LibraryFolder(props: LibraryFolderProps): JSX.Element {\n const thumbnailUrl = props.folder.thumbnail\n ? UrlHelper.urlBuilder(props.folder.thumbnail.url, { size: ImageSize.Small })\n : null;\n\n const actions = props.getFolderActions?.(props.folder);\n\n return (\n <DragDropMoveWrapper\n draggable={props.drag && { id: props.folder.id, data: props.folder }}\n droppable={props.drop && { id: props.folder.id, data: props.folder }}\n dropStye={styles.dropStyle}\n dragStyle={styles.dragStyle}\n >\n <div className='position-relative'>\n <AppLink\n className='rounded-3 d-block text-decoration-none'\n appLink={props.getAppLink(props.folder)}\n title={props.folder.name}\n >\n <BaseImage\n data={thumbnailUrl}\n imageType={ImageType.Thumbnails}\n imageClassName='rounded-top-lg'\n >\n <ImageFallback\n name={props.folder.name}\n type={ImageFallbackType.Folder}\n extraClasses='rounded-top-lg'\n />\n </BaseImage>\n <h3 className='bg-white border-start border-end border-bottom rounded-bottom-lg font-size-normal fw-semibold mb-0 p-2'>\n <span className='text-truncate d-block'>{props.folder.name}</span>\n </h3>\n </AppLink>\n {actions?.length &&\n <Actions\n actions={actions}\n className={styles.actionsContainer}\n actionsDropdownClassName={styles.actions}\n // Intentionally setting to the default SVG size\n dropdownToggleSvgSize={null}\n />\n }\n </div>\n </DragDropMoveWrapper>\n );\n}","import React from 'react';\n\nimport { LocalStorageHelper } from 'libs/common/backbone/utils/LocalStorageHelper';\nimport { Core } from 'libs/common/core';\n\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { Caret } from 'libs/shared/components/caret/Caret';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { LibraryFolder } from 'libs/shared/components/library-folder/LibraryFolder';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { Folder } from 'libs/shared/interfaces';\n\nconst namespace = 'libraries.folderList';\n\nconst EXPANDED_FOLDERS_KEY = 'has:expanded:library:folders';\n\nfunction useGetFolderLimit(): number {\n const breakpoints = useBreakpoints();\n\n if (breakpoints.xxl || breakpoints.xl || breakpoints.lg)\n return 6;\n\n if (breakpoints.md)\n return 4;\n\n return 3;\n}\n\ninterface FolderListProps {\n folders: Folder[];\n getAppLink: (folder: Folder) => Core.AppLink;\n expandFolders?: boolean;\n showHeading?: boolean;\n getFolderActions?: (f: Folder) => ActionOptions[];\n drag?: boolean;\n drop?: boolean;\n extraButtons?: JSX.Element;\n}\n\nFolderList.defaultProps = {\n showHeading: true\n};\n\nexport function FolderList(props: FolderListProps): JSX.Element {\n const [ _hasExpandedFolders, setHasExpandedFolders ] = React.useState(\n LocalStorageHelper.get(EXPANDED_FOLDERS_KEY) || false\n );\n\n const hasExpandedFolders = props.expandFolders || _hasExpandedFolders;\n\n const folderLimit = useGetFolderLimit();\n\n function onToggleFolderView(): void {\n setHasExpandedFolders(!hasExpandedFolders);\n LocalStorageHelper.set(EXPANDED_FOLDERS_KEY, !hasExpandedFolders);\n }\n\n const displayableFolders = hasExpandedFolders ? props.folders : props.folders.slice(0, folderLimit);\n\n const canToggleCollapsedView = props.folders.length > folderLimit && !props.expandFolders;\n\n return (\n <>\n <div className='d-flex justify-content-between align-items-center'>\n {props.showHeading &&\n <DivButton\n className={`d-inline-flex align-items-center mb-2 px-2 ${!canToggleCollapsedView ? 'cursor-default' : ''}`}\n onClick={onToggleFolderView}\n >\n {canToggleCollapsedView && (\n <Caret direction={hasExpandedFolders ? 'down' : 'right'} />\n )}\n <h2 className='h4 mb-0'>\n <Text namespace={namespace} phrase='folders' options={{ count: props.folders.length }} />\n </h2>\n </DivButton>\n }\n\n {!!(!hasExpandedFolders && canToggleCollapsedView) && (\n <div className='d-flex justify-content-end justify-self-end px-2'>\n <DivButton onClick={onToggleFolderView} className='text-dark hover-text-underline d-inline-block'>\n <Text namespace={namespace} phrase='seeAll' options={{ count: props.folders.length }} />\n </DivButton>\n </div>\n )}\n {!!(hasExpandedFolders && canToggleCollapsedView) && (\n <div className='d-flex justify-content-end justify-self-end px-2'>\n <DivButton onClick={onToggleFolderView} className='text-dark hover-text-underline d-inline-block'>\n <Text namespace={namespace} phrase='seeLess' />\n </DivButton>\n </div>\n )}\n\n {props.extraButtons ? props.extraButtons : <></>}\n </div>\n\n <div className='row mx-1'>\n {displayableFolders.map(f => (\n <div key={f.id} className='col-4 col-md-3 col-lg-2 px-1 pb-3'>\n <LibraryFolder\n folder={f}\n getAppLink={props.getAppLink}\n getFolderActions={props.getFolderActions}\n drag={props.drag}\n drop={props.drop}\n />\n </div>\n ))}\n </div>\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"partialFolderHeading\":\"dhbsL\",\"partialFolderThumbnail\":\"CI9vk\",\"partialFolderName\":\"l0Nll\"};","import React from 'react';\n\nimport styles from './partial-folder-list.scss';\n\nconst PartialFolder = () => (\n <div className='col-4 col-md-3 col-lg-2 px-1 pb-3'>\n <div className={`${styles.partialFolderThumbnail} partial-loading-background rounded-top-lg`} />\n <div className={`${styles.partialFolderName} partial-loading-background border-bottom rounded-bottom-lg font-size-normal mb-0 p-2`}>\n \n </div>\n </div>\n);\n\nexport function PartialFolderList({ count = 3 }: { count?: number; }): JSX.Element {\n return (\n <>\n <div className={`${styles.partialFolderHeading} h4 mb-2 partial-loading-background`}> </div>\n <div className='row mx-n1'>\n {Array(count).fill(null).map((_, i) => <PartialFolder key={i} />)}\n </div>\n </>\n );\n}","import { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { Breadcrumb } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { Folder, MasterNestedObject } from 'libs/shared/interfaces';\n\ninterface BuildOptions {\n folderId: string;\n firstItem?: Breadcrumb;\n lastItem?: Breadcrumb;\n getAppLink: (folder: MasterNestedObject<Folder>) => Core.AppLink;\n}\n\nexport function useBuildBreadcrumbs(options: BuildOptions): Breadcrumb[] {\n const { folderId, firstItem, lastItem, getAppLink } = options;\n\n const parentTree = Flight.useBasicFetch<MasterNestedObject<Folder>>(LibraryRequests.folderParentTree(folderId));\n\n if (!parentTree.data?.children?.length)\n return [];\n\n const searchStack: {\n node: MasterNestedObject<Folder>,\n path: MasterNestedObject<Folder>[]\n }[] = parentTree.data.children.map(c => ({ node: c, path: [c]}));\n\n let breadcrumbs: Breadcrumb[] = [];\n\n while (searchStack.length) {\n const { node, path } = searchStack.pop();\n \n if (node.data.id.toString() === folderId.toString())\n breadcrumbs = path.map(object => ({\n name: object.data.name,\n appLink: getAppLink(object)\n }));\n\n if (node.children)\n searchStack.push(...node.children.map(c => ({ node: c, path: [ ...path, c ]})));\n }\n\n if (firstItem) breadcrumbs.unshift(firstItem);\n if (lastItem) breadcrumbs.push(lastItem);\n\n breadcrumbs[breadcrumbs.length - 1].active = true;\n\n return breadcrumbs;\n}\n ","import { Flight } from 'libs/common/flight';\n\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { useFetchAll } from 'libs/shared/hooks/UseFetchAll';\nimport { SelectAllPagesResult, useSelectAllPages } from 'libs/shared/hooks/UseSelectAllPages';\nimport { Folder } from 'libs/shared/interfaces';\n\nexport function useFetchAllChildFolders(parentId?: string): SelectAllPagesResult<Folder> {\n const fetch = Flight.useGetFetch();\n\n function getRequest(cursor?: string): Flight.Request {\n return LibraryRequests.childFolders(parentId, cursor);\n }\n \n function fetchNext(cursor?: string): void {\n fetch(getRequest(cursor));\n }\n\n useFetchAll(!!parentId && getRequest, !!parentId && fetchNext);\n\n return (useSelectAllPages<Folder>(!!parentId && ((cursor?: string) => getRequest(cursor).key)));\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { MasterObjectTypes } from 'libs/shared/enums/MasterObjectTypes';\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { Library } from 'libs/shared/interfaces';\n\n/**\n * This hook prevents the libraries UI to be used for anything \n * other than customer libraries i.e Hosted, Exchange, Workspace etc\n */\nexport function useHandleLibraryType(request: Flight.Response<Library>): void {\n React.useEffect(() => {\n if (!request.hasCompleted || request.hasError)\n return;\n\n if (request.data.type !== MasterObjectTypes.CustomLibrary)\n Core.ErrorHelper.throw(new NotFoundError());\n }, [request.hasCompleted]);\n}","import React from 'react';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'libraries.libraryFolderEmptyState';\n\nexport function LibraryFolderEmptyState(): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.Libraries.FOLDER} />\n\n <EmptyState.Heading><Text phrase='heading' /></EmptyState.Heading>\n\n <EmptyState.Info><Text phrase='info' /></EmptyState.Info>\n </EmptyState>\n </LanguageNamespaceContext.Provider>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { EntityType, LocationContext, SearchSourceDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { SourceFilterOptions } from 'libs/shared/apps/search/interfaces';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { useFocusSearchBar } from 'libs/shared/components/search-bar/SearchUtils';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\nimport { VideoSortSelect } from 'libs/shared/components/video-sort-select/VideoSortSelect';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { CanFavouriteFunc, FavouriteFunc, Library, PresentationAudience, VideoTypes, YearGroup } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { InteractiveHelpers } from 'shared/utils/InteractiveHelper';\nimport { VideoAppLinkHelper } from 'shared/utils/VideoAppLinkHelper';\n\nimport { LibraryFolderEmptyState } from 'apps/libraries/views/library-folder/empty-state/LibraryFolderEmptyState';\nimport { SeriesAppLinkHelper } from 'apps/series/SeriesAppLinkHelper';\n\nconst namespace = 'libraries.libraryFolderVideos';\n\ninterface LibraryFolderVideosProps {\n videos: VideoTypes[];\n yearGroups: YearGroup[];\n hasSubFolders: boolean;\n setFavourite: FavouriteFunc;\n canFavourite: CanFavouriteFunc;\n audiences: PresentationAudience[];\n libraries: Library[];\n\n getSortAppLink: (sort: VideoSortType) => Core.AppLink;\n sort: VideoSortType;\n\n isFetching: boolean;\n hasMore: boolean;\n fetchNext: (cursor: string) => void;\n nextCursor?: string;\n imageCdnUrl?: string;\n isPlugin: boolean;\n}\n\nexport function LibraryFolderVideos(props: LibraryFolderVideosProps): JSX.Element {\n const { focusSearchBar } = useFocusSearchBar();\n const { hasPermissions } = usePermissions();\n\n if (!props.videos.length && !props.hasSubFolders)\n return <LibraryFolderEmptyState />;\n\n if (!props.videos.length)\n return <></>;\n\n return (\n <div>\n {/* With no subfolders, we don't show this subheading, and the sort is moved up to the parent component */}\n {props.hasSubFolders && (\n <div className='d-flex justify-content-between align-items-center'>\n <h2 className='h4 mb-0'>\n <Text namespace={namespace} phrase='videos' />\n </h2>\n\n <div className='d-flex'>\n <IconButton\n svgName={cvSvgLibrary.Search}\n appLink={{\n application: AppChannels.SEARCH,\n action: Actions.Search.HOME,\n params: {\n source: SourceFilterOptions.School\n }\n }}\n className='btn btn-outline-dark d-none d-sm-inline-block'\n onClick={focusSearchBar}\n analyticsData={{}}\n analyticsOptions={{\n entity: EntityType.SearchResults,\n location: LocationContext.Libraries,\n actionType: UserAction.Click,\n descriptor: SearchSourceDescriptor.School\n }}\n >\n <Text namespace={namespace} phrase='searchLibrary' options={{ smartCount: props.libraries?.length }} />\n </IconButton>\n <VideoSortSelect\n variant='outline-dark'\n type={props.sort}\n getSortAppLink={props.getSortAppLink}\n analyticsOptions={{\n location: LocationContext.VideoListHeader,\n entity: EntityType.Video,\n actionType: UserAction.Sort,\n workflowPhase: WorkflowPhase.Complete\n }}\n />\n </div>\n </div>\n )}\n\n <VideoList\n videos={props.videos}\n yearGroups={props.yearGroups}\n getVideoAppLink={VideoAppLinkHelper.getAppLink}\n getSubTextAppLink={video => SeriesAppLinkHelper.getSeriesAppLink(video.series)}\n setFavourite={props.setFavourite}\n canFavourite={props.canFavourite}\n presentationAudiences={props.audiences}\n hasPermissions={hasPermissions}\n getPreviewQuestionsAppLink={interactive => InteractiveHelpers.getPreviewQuestionsAppLink(interactive)}\n imageCdnUrl={props.imageCdnUrl}\n isPlugin={props.isPlugin}\n getClassroomGuideAppLink={VideoAppLinkHelper.getClassroomGuideAppLink}\n getInteractiveGuidanceAppLink={VideoAppLinkHelper.getInteractiveGuidanceAppLink}\n getResourceGuidanceAppLink={VideoAppLinkHelper.getResourceGuidanceAppLink}\n />\n\n {(props.hasMore || props.isFetching) && (\n <InfiniteScrollFooter\n isFetching={props.isFetching}\n fetchNext={props.fetchNext}\n nextCursor={props.nextCursor}\n />\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"subheading\":\"IJZtA\"};","import React from 'react';\n\nimport { PartialFolderList } from 'libs/shared/components/folder-list/partial-loading/PartialFolderList';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\n\nimport styles from './library-folder-partial-loading.scss';\n\nexport function LibraryFolderPartialLoading(): JSX.Element {\n return (\n <>\n <div className='m-3'>\n <PartialFolderList />\n </div>\n\n <div className='mx-3 mb-3'>\n <div className={`${styles.subheading} partial-loading-background mb-2`} />\n <PartialVideoList />\n </div>\n </>\n );\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { EntityType, LocationContext, SearchSourceDescriptor, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { SourceFilterOptions } from 'libs/shared/apps/search/interfaces';\nimport { BannerHeader, PartialBannerHeader } from 'libs/shared/components/banner-header/BannerHeader';\nimport { Breadcrumbs, PartialBreadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { FolderList } from 'libs/shared/components/folder-list/FolderList';\nimport { IconButton } from 'libs/shared/components/icon-button/IconButton';\nimport { useFocusSearchBar } from 'libs/shared/components/search-bar/SearchUtils';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { VideoSortSelect } from 'libs/shared/components/video-sort-select/VideoSortSelect';\nimport { VideoActionsContext } from 'libs/shared/context/VideoActionsContext';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { LibraryRequests } from 'libs/shared/flight-requests/LibraryRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { VideoRequests } from 'libs/shared/flight-requests/VideoRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useHandleObjectError } from 'libs/shared/hooks/UseHandleObjectError';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config, CurrentUser, Folder, Library, VideoTypes, YearGroup } from 'libs/shared/interfaces';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\nimport { VideoSortHelper } from 'libs/shared/utils/VideoSortHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\nimport { useVideoActions, VideoActionsLocation } from 'shared/hooks/use-video-actions/useVideoActions';\nimport { useLiteFavourites } from 'shared/hooks/useLiteFavourites';\nimport { usePresentationAudiences } from 'shared/hooks/usePresentationAudiences';\nimport { useVideoMixin } from 'shared/hooks/useVideoMixin';\n\nimport { LibraryFolderVideos } from 'apps/libraries/components/library-folder-videos/LibraryFolderVideos';\nimport { useFetchAllChildFolders } from 'apps/libraries/hooks/UseFetchAllChildFolders';\nimport { useHandleLibraryType } from 'apps/libraries/hooks/UseHandleLibraryType';\n\nimport { LibraryFolderPartialLoading } from './partial-loading/LibraryFolderPartialLoading';\nimport { getFolderAppLink, getFolderBgColourClass, useGetFolderBreadcrumbs } from './LibraryFolderViewUtils';\n\nconst namespace = 'libraries.libraryFolder';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface LibraryFolderViewProps {\n libraryId: string;\n folderId: string;\n sort?: VideoSortType;\n}\n\nexport function LibraryFolderView(props: LibraryFolderViewProps): JSX.Element {\n const dispatch = useDispatch();\n const alerts = useAlerts();\n const { focusSearchBar } = useFocusSearchBar();\n const { isPlugin } = usePluginHelper();\n\n const libraries = Flight.useBasicFetch<Library[]>(LibraryRequests.domainLibraries([ 'customLibrary', 'sharedLibrary' ]));\n const library = Flight.useBasicFetch<Library>(LibraryRequests.library(props.libraryId));\n const folder = Flight.useBasicFetch<Folder>(LibraryRequests.folder(props.folderId));\n const subfolders = useFetchAllChildFolders(props.folderId);\n\n const user = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n user.data?.isAuthenticated && CustomerRequests.yearGroups(user.data.customerId)\n );\n\n const videoActions = useVideoActions({ location: VideoActionsLocation.VideoItem });\n const { setFavourite, canFavourite } = useLiteFavourites(LocationContext.VideoThumbnail);\n const breadcrumbs = useGetFolderBreadcrumbs(props.folderId, library.data, props.sort);\n const audiences = usePresentationAudiences();\n\n useSetPageMetadata({ title: folder.data?.name });\n\n useHandleObjectError([ library, folder ]);\n useHandleLibraryType(library);\n\n const sort = !!user.data && VideoSortHelper.getOrSetSortType(user.data.id, props.sort);\n\n const {\n items: videos,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<VideoTypes>(getVideosRequest, fetchNext, onError);\n\n useVideoMixin(videos);\n\n function getVideosRequest(cursor?: string): Flight.Request {\n return VideoRequests.collectionVideos(props.folderId, sort, cursor);\n }\n\n function fetchNext(cursor?: string): void {\n return Flight.getFetch(dispatch)(getVideosRequest(cursor));\n }\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error(getPhrase('error'));\n }\n\n const hasNoSubfolders = !!(subfolders.hasCompleted && !subfolders.items?.length);\n\n return (\n <VideoActionsContext.Provider value={videoActions}>\n {(library.data && folder.data && config.data)\n ? (\n <BannerHeader\n heading={folder.data.name}\n banner={folder.data.banner}\n imageCdnUrl={config.data.imageCdnUrl}\n blockColourClass={getFolderBgColourClass(folder.data)}\n logo={library.data.owner?.logo}\n />\n ) : <PartialBannerHeader />\n }\n\n <div className={`d-flex justify-content-between align-items-center py-3 mx-3 ${hasNoSubfolders ? '' : 'border-bottom'}`}>\n {(library.data && folder.data)\n ? <Breadcrumbs breadcrumbs={breadcrumbs} />\n : <PartialBreadcrumbs />\n }\n \n <div className='d-flex'>\n {(hasNoSubfolders || !videos?.length) &&\n <IconButton\n svgName={cvSvgLibrary.Search}\n appLink={{\n application: AppChannels.SEARCH,\n action: Actions.Search.HOME,\n params: {\n source: SourceFilterOptions.School\n }\n }}\n className='btn btn-outline-dark d-none d-sm-inline-block'\n onClick={focusSearchBar}\n analyticsData={{}}\n analyticsOptions={{\n entity: EntityType.SearchResults,\n location: LocationContext.Libraries,\n actionType: UserAction.Click,\n descriptor: SearchSourceDescriptor.School\n }}\n >\n <Text namespace={namespace} phrase='searchLibrary' options={{ smartCount: libraries.data?.length ?? 1 }} />\n </IconButton>\n }\n {(hasNoSubfolders && folder.data) && (\n <VideoSortSelect\n variant='outline-dark'\n type={sort}\n getSortAppLink={sort => getFolderAppLink(props.libraryId, folder.data, sort)}\n analyticsOptions={{\n location: LocationContext.VideoListHeader,\n entity: EntityType.Video,\n actionType: UserAction.Sort,\n workflowPhase: WorkflowPhase.Complete\n }}\n />\n )}\n </div>\n </div>\n\n {(videos && subfolders) ? (\n <>\n {!!subfolders.items?.length && (\n <div className='px-2 py-3'>\n <FolderList\n folders={subfolders.items}\n getAppLink={(f: Folder) => getFolderAppLink(props.libraryId, f, sort)}\n expandFolders={!videos.length}\n />\n </div>\n )}\n\n <div className='px-3 pb-3'>\n <LibraryFolderVideos\n videos={videos}\n yearGroups={yearGroups.data}\n hasSubFolders={!!subfolders.items?.length}\n setFavourite={setFavourite}\n canFavourite={canFavourite}\n hasMore={hasMore}\n isFetching={isFetching}\n fetchNext={fetchNext}\n nextCursor={nextCursor}\n sort={sort}\n getSortAppLink={sort => getFolderAppLink(props.libraryId, folder.data, sort)}\n audiences={audiences.data}\n libraries={libraries.data}\n imageCdnUrl={config.data?.imageCdnUrl}\n isPlugin={isPlugin}\n />\n </div>\n </>\n ) : <LibraryFolderPartialLoading />}\n </VideoActionsContext.Provider>\n );\n}","import { Core } from 'libs/common/core';\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\n\nimport { Breadcrumb } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { VideoSortType } from 'libs/shared/enums/VideoSortType';\nimport { useBuildBreadcrumbs } from 'libs/shared/hooks/useBuildBreadcrumbs';\nimport { Folder, Library } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nexport function getFolderAppLink(libraryId: string, folder: Folder, sort: string): Core.AppLink {\n if (!libraryId || !folder)\n return null;\n\n return {\n application: AppChannels.LIBRARIES,\n action: Actions.Libraries.FOLDER,\n args: [ libraryId, folder.id, TextHelper.slugify(folder.name) ],\n params: {\n sort\n }\n };\n}\n\nexport function getFolderBgColourClass(folder: Folder | Library): string {\n let charCode = 0;\n\n for (let i = 0; i < folder.name?.length ?? 0; i++) {\n charCode += folder.name.charCodeAt(i);\n }\n\n return BG_COLOUR_CLASS_NAMES[charCode % BG_COLOUR_CLASS_NAMES.length];\n}\n\nexport function useGetFolderBreadcrumbs(folderId: string, library: Library, sort: VideoSortType): Breadcrumb[] {\n return useBuildBreadcrumbs({\n folderId: library && folderId,\n getAppLink: object => getFolderAppLink(library.id, object.data, sort),\n firstItem: {\n name: library?.name,\n appLink: {\n application: AppChannels.LIBRARIES,\n action: Actions.Libraries.LIBRARY,\n args: [ library?.id, TextHelper.slugify(library?.name) ]\n }\n }\n });\n}"],"names":["getDirectionClass","direction","Caret","props","SvgContainer","svgName","className","defaultProps","LibraryFolder","thumbnailUrl","folder","thumbnail","UrlHelper","url","size","actions","getFolderActions","DragDropMoveWrapper","draggable","drag","id","data","droppable","drop","dropStye","dragStyle","AppLink","appLink","getAppLink","title","name","BaseImage","imageType","imageClassName","ImageFallback","type","extraClasses","length","Actions","actionsDropdownClassName","dropdownToggleSvgSize","namespace","EXPANDED_FOLDERS_KEY","FolderList","breakpoints","LocalStorageHelper","_hasExpandedFolders","setHasExpandedFolders","hasExpandedFolders","expandFolders","folderLimit","useBreakpoints","xxl","xl","lg","md","onToggleFolderView","displayableFolders","folders","slice","canToggleCollapsedView","showHeading","DivButton","onClick","Text","phrase","options","count","extraButtons","map","f","key","PartialFolder","PartialFolderList","Array","fill","_","i","useBuildBreadcrumbs","folderId","firstItem","lastItem","parentTree","children","searchStack","c","node","path","breadcrumbs","pop","toString","object","push","unshift","active","useFetchAllChildFolders","parentId","fetch","getRequest","cursor","useHandleLibraryType","request","hasCompleted","hasError","LibraryFolderEmptyState","value","EmptyState","src","ImageUrls","LibraryFolderVideos","focusSearchBar","hasPermissions","usePermissions","videos","hasSubFolders","IconButton","application","action","params","source","analyticsData","analyticsOptions","entity","location","actionType","descriptor","smartCount","libraries","VideoSortSelect","variant","sort","getSortAppLink","workflowPhase","VideoList","yearGroups","getVideoAppLink","VideoAppLinkHelper","getSubTextAppLink","video","SeriesAppLinkHelper","series","setFavourite","canFavourite","presentationAudiences","audiences","getPreviewQuestionsAppLink","interactive","InteractiveHelper","imageCdnUrl","isPlugin","getClassroomGuideAppLink","getInteractiveGuidanceAppLink","getResourceGuidanceAppLink","hasMore","isFetching","InfiniteScrollFooter","fetchNext","nextCursor","LibraryFolderPartialLoading","PartialVideoList","getPhrase","LanguageService","LibraryFolderView","dispatch","alerts","usePluginHelper","LibraryRequests","library","libraryId","subfolders","user","UserRequests","config","ConfigRequests","isAuthenticated","CustomerRequests","customerId","videoActions","useVideoActions","useLiteFavourites","u","usePresentationAudiences","useSetPageMetadata","VideoSortHelper","getVideosRequest","pageNumber","httpStatus","error","items","VideoRequests","useVideoMixin","hasNoSubfolders","VideoActionsContext","BannerHeader","heading","banner","blockColourClass","logo","owner","Breadcrumbs","getFolderAppLink","args","getFolderBgColourClass","charCode","charCodeAt","useGetFolderBreadcrumbs"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7987],{92869:(e,t,n)=>{n.d(t,{t:()=>c});var a=n(48088),r=n(95846),c={preventScrollTop:function(){a.Radio.channel(r.G.SHELL).trigger("prevent:scroll:top")}}},75097:(e,t,n)=>{n.d(t,{U:()=>c});var a=n(32735),r=n(95245);function c(e){var t=e.count,n=void 0===t?6:t;return a.createElement("div",{className:"d-flex"},a.createElement("div",{className:"d-flex ps-1"},Array(n).fill(null).map((function(e,t){return a.createElement("div",{key:t,className:"".concat(r.Z.partialButton," partial-loading-background mx-1")})}))))}},37395:(e,t,n)=>{n.d(t,{t:()=>u});var a=n(32735),r=n(98269),c=n(92869),l=n(49985),o=n(65858),s=n(36848),i=n(83345);function m(e,t,n){var a;if(!t)return null;var r=null!==(a=e.params)&&void 0!==a?a:{};return n?(null==r?void 0:r.previous)?{application:e.application,action:e.action,args:e.args,params:Object.assign(Object.assign({},r),{cursor:null==r?void 0:r.previous,previous:null})}:{application:e.application,action:e.action,args:e.args,params:Object.assign(Object.assign({},r),{cursor:null,previous:null})}:{application:e.application,action:e.action,args:e.args,params:Object.assign(Object.assign({},r),{cursor:t,previous:r.cursor})}}function u(e){var t=e.appLink,n=e.cursors,u=e.className,d=e.buttonVariant,p=e.prevHack,f=e.scrollTop,g=e.onClick;function v(e){t&&!f&&c.t.preventScrollTop(),l.k.logUserAction({page:e},{location:o.LZ.Pagination,entity:o.py.Pagination,actionType:o.Vw.Navigate}),g&&g(n[e])}return t?a.createElement(i.D.Provider,{value:"shared.pagination"},a.createElement("div",{className:u},a.createElement(s.F,{appLink:m(t,n.previous,p),className:"btn btn-".concat(d," me-1 ").concat(n.previous?"":"disabled"),onClick:function(){return v("previous")},style:{display:"inline-block"}},a.createElement(i.x,{phrase:"previous"})),a.createElement(s.F,{appLink:m(t,n.next),className:"btn btn-".concat(d," ").concat(n.next?"":"disabled"),onClick:function(){return v("next")},style:{display:"inline-block"}},a.createElement(i.x,{phrase:"next"})))):a.createElement(i.D.Provider,{value:"shared.pagination"},a.createElement("div",{className:u},a.createElement(r.Z,{variant:d,className:"me-1 ".concat(n.previous?"":"disabled"),onClick:function(){return v("previous")}},a.createElement(i.x,{phrase:"previous"})),a.createElement(r.Z,{variant:d,className:"btn ".concat(n.next?"":"disabled"),onClick:function(){return v("next")}},a.createElement(i.x,{phrase:"next"}))))}u.defaultProps={className:"py-2",buttonVariant:"secondary"}},16930:(e,t,n)=>{n.d(t,{W:()=>i,f:()=>s});var a=n(32735),r=n(83914),c=n(35223);const l="VSAPU",o="kgeXh";var s;!function(e){e[e.Left=0]="Left",e[e.Right=1]="Right"}(s||(s={}));var i=a.memo((function(e){var t,n,i,m=e.direction===s.Left,u=m?c.vn.ChevronLeft:c.vn.ChevronRight;return e.hide?a.createElement(a.Fragment,null):a.createElement("div",{className:"_ejId",style:"videos"===(null===(n=e.state)||void 0===n?void 0:n.contents)?{paddingBottom:56.25/(null===(i=e.state)||void 0===i?void 0:i.viewableItems)+"%"}:{height:"100%"}},e.useGradientBackdrop&&a.createElement("div",{className:m?"".concat("Pt3nx"," ").concat(e.leftGradientClassName):"".concat("ZuAif"," ").concat(e.rightGradientClassName)}),!e.hideExtendedClickableArea&&a.createElement("div",{role:"button",onClick:e.onClick,className:"".concat("AtsWP"," ").concat(m?l:o)}),a.createElement("div",{role:"button",className:"".concat((t="BVcIS",t+=m?" ".concat(l," ").concat(e.leftButtonClassName):" ".concat(o," ").concat(e.rightButtonClassName))," ").concat("gAsE9"," ").concat(e.className||""),onClick:e.onClick},e.hoverText&&a.createElement("span",{className:"ps-3 pe-2 ".concat("APA36")},e.hoverText),a.createElement(r.x,{svgName:u,size:r.S.Medium,className:"svg-container d-inline-block ".concat("Ev4hr")})))}))},14177:(e,t,n)=>{n.d(t,{$:()=>S});var a=n(32735),r=n(70680),c=n(81886),l=n(20354),o=n(79447),s=n(83914),i=n(83345),m=n(4594),u=n(76881),d=n(35223),p="userManager.wizardInProgress";function f(e){var t=Math.floor(e.totalItemsComplete/e.totalItems*100)||0;return a.createElement("div",null,a.createElement("div",{className:"d-flex align-items-center mb-2"},a.createElement("h2",{className:"h5 mb-0"},a.createElement(i.x,{namespace:p,phrase:"heading",options:{percentage:t,actionName:e.actionName}})),a.createElement(s.x,{svgName:d.vn.CircleCheck})),a.createElement("p",null,a.createElement(i.x,{namespace:p,phrase:"info".concat(e.actionVerb)})),a.createElement("p",{className:"mb-1"},a.createElement("span",{className:"text-info"},e.progressVerbPhrase?a.createElement("span",null,e.progressVerbPhrase):a.createElement(i.x,{namespace:p,phrase:"progressVerb".concat(e.actionVerb)}))," ",e.objectType===m.E.User&&e.userType?a.createElement(i.x,{namespace:p,phrase:e.userType===u.Y.Learner?"progressStudents":"progressStaff",options:{totalComplete:e.totalItemsComplete,total:e.totalItems,smartCount:e.totalItems}}):e.objectType===m.E.Video?a.createElement(i.x,{namespace:p,phrase:"progressVideos",options:{totalComplete:e.totalItemsComplete,total:e.totalItems,smartCount:e.totalItems}}):a.createElement(i.x,{namespace:p,phrase:"progressItems",options:{totalComplete:e.totalItemsComplete,total:e.totalItems,smartCount:e.totalItems}})),a.createElement(o.Z,{variant:"info",now:t}))}var g="userManager.wizardSubmitted";function v(e){return a.createElement("div",null,a.createElement("div",{className:"d-flex align-items-center mb-2"},a.createElement("h2",{className:"h5 mb-0"},e.actionName?a.createElement(i.x,{namespace:g,phrase:"heading",options:{actionName:e.actionName}}):a.createElement(i.x,{namespace:g,phrase:"headingGeneric"})),a.createElement(s.x,{svgName:d.vn.CircleCheck})),a.createElement("p",null,a.createElement(i.x,{namespace:g,phrase:"info".concat(e.actionVerb)})),a.createElement("p",{className:"mb-1 text-info"},a.createElement(i.x,{namespace:g,phrase:"preparing"})),a.createElement(o.Z,{variant:"info",now:0}))}var b=n(58739),E=n(94644),h=n(89476);function y(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 a,r,c,l,o=[],s=!0,i=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(a=c.call(n)).done)&&(o.push(a.value),o.length!==t);s=!0);}catch(e){i=!0,r=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(i)throw r}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return N(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)?N(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 N(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var x=2e3,C=3;function S(e){var t=y(a.useState(null),2),n=t[0],o=t[1],s=y(a.useState(0),2),i=s[0],m=s[1],u=a.useRef(),d=(0,h.f)(),p=(0,r.I0)();function g(){e.pollJob(N,S)}function N(t){o(t),t.status===b.K.Completed||t.status===b.K.CompletedWithError||t.status===b.K.Failed?window.setTimeout((function(){!function(){var t;e.navLockId&&d.unlock(e.navLockId);var n={jobId:e.jobId};e.userType&&(n.userType=e.userType,p({type:l.a.Actions.INVALIDATE,keys:["school:users","user:count","search:aggregation","search:users"],request:null})),e.statusCompleteAppLink?c.Q.C$.trigger(Object.assign(Object.assign({},e.statusCompleteAppLink),{params:n})):null===(t=e.onStatusCompleted)||void 0===t||t.call(e)}()}),2e3):u.current=window.setTimeout(g,x)}function S(t){i===C&&(window.clearTimeout(u.current),e.navLockId&&d.unlock(e.navLockId),(0,E.r)(t)),m((function(e){return e+1})),u.current=window.setTimeout(g,x)}return a.useEffect((function(){return g(),function(){u.current&&window.clearTimeout(u.current)}}),[]),n&&n.status!==b.K.Submitted&&n.status!==b.K.Queued&&n.status!==b.K.Pending&&0!==n.totalItems?a.createElement(f,{totalItems:n.totalItems,totalItemsComplete:n.processedItems,userType:e.userType,objectType:e.objectType,actionName:e.actionName,actionVerb:e.actionVerb,progressVerbPhrase:e.progressVerbPhrase}):a.createElement(v,{actionName:e.actionName,actionVerb:e.actionVerb})}},81514:(e,t,n)=>{n.d(t,{V:()=>c});var a=n(86764),r=n(3747);function c(){var e=(0,r.a)(a.r.XS),t=(0,r.a)(a.r.SM),n=(0,r.a)(a.r.MD),c=(0,r.a)(a.r.LG),l=(0,r.a)(a.r.XL),o=(0,r.a)(a.r.XXL),s=a.r.LG;return e&&(s=a.r.XS),t&&(s=a.r.SM),n&&(s=a.r.MD),c&&(s=a.r.LG),l&&(s=a.r.XL),o&&(s=a.r.XXL),s}},299:(e,t,n)=>{n.d(t,{X:()=>l});var a=n(32735),r=n(69217),c=n(94631),l=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.idField,l=void 0===n?"id":n,o=t.persistNamespace,s=t.initialState?t.initialState:new Map,i=a.useRef(s),m=(0,r.N)(),u=(0,c.D)(e),d=(0,c.D)(o);function p(){i.current.clear(),m()}function f(e){return"number"==typeof e?e=e.toString():"string"!=typeof e&&(e=e[l].toString()),i.current.get(e)}function g(){return!!(null==e?void 0:e.length)&&e.every(f)}function v(e){e.forEach((function(e){i.current.set(e,!0)})),m()}return a.useEffect((function(){t.initialState||o&&d===o||(null==u?void 0:u.map((function(e){return e[l]})).join())!==(null==e?void 0:e.map((function(e){return e[l]})).join())&&p()}),[u,d,e,t.initialState]),a.useEffect((function(){var e;(null===(e=t.preselectedIds)||void 0===e?void 0:e.length)&&v(t.preselectedIds)}),[]),{onToggleBulk:function(){var t=!g();e.forEach((function(e){t?i.current.set(e[l].toString(),!0):i.current.delete(e[l].toString())})),m()},onToggleItem:function(e){var t=!i.current.get(e.toString());t?i.current.set(e.toString(),t):i.current.delete(e.toString()),m()},getSelected:function(){return Array.from(i.current.keys())},isChecked:f,bulkChecked:g(),deselectAll:function(){(null==e?void 0:e.length)&&(e.forEach((function(e){i.current.delete(e[l].toString())})),m())},hasSomeSelections:function(){return!!(null==e?void 0:e.length)&&!!e.find((function(e){return f(e)}))},setSelected:v,getSelectedCount:function(){return i.current.size},reset:p,getMap:function(){return i.current}}}},94631:(e,t,n)=>{n.d(t,{D:()=>r});var a=n(32735);function r(e){var t=a.useRef();return a.useEffect((function(){t.current=e})),t.current}},10373:(e,t,n)=>{n.r(t),n.d(t,{RosteringSyncListView:()=>Ve});var a=n(32735),r=n(70680),c=n(23481),l=n(20354),o=n(75097),s=n(49935);const i={partialHeading:"MwUCZ",partialJobCount:"MUELm",partialCheckbox:"dShe9",partialExportButton:"VL4Tq",row:"z_hGc",checkboxColumn:"IacDe",actionColumn:"_JoZe",usersColumn:"BtHPO",dateColumn:"jpr0N",performedByColumn:"XP4Lf",seeMoreColumn:"A8_Nf",heading:"uThGf",action:"PFOGb",users:"pXZx8",date:"VWS_a",performedBy:"vZeC9"};function m(){return a.createElement("div",{className:"d-flex striped-row rounded py-3 ".concat(i.row)},a.createElement("div",{className:"".concat(i.checkboxColumn," d-flex justify-content-center")},a.createElement("div",{className:"partial-loading-background ".concat(i.partialCheckbox," ms-0")})),a.createElement("div",{className:"".concat(i.actionColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.action)})),a.createElement("div",{className:"".concat(i.usersColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.users)})),a.createElement("div",{className:"".concat(i.dateColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.date)})),a.createElement("div",{className:"".concat(i.performedByColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.performedBy)})),a.createElement("div",{className:"".concat(i.seeMoreColumn)}," "))}function u(){return a.createElement("div",{className:"d-flex py-2 mb-1"},a.createElement("div",{className:"".concat(i.checkboxColumn)}," "),a.createElement("div",{className:"".concat(i.actionColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.heading)})),a.createElement("div",{className:"".concat(i.usersColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.heading)})),a.createElement("div",{className:"".concat(i.dateColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.heading)})),a.createElement("div",{className:"".concat(i.performedByColumn)},a.createElement("div",{className:"partial-loading-background ".concat(i.heading)})),a.createElement("div",{className:"".concat(i.seeMoreColumn)}," "))}function d(){return a.createElement(a.Fragment,null,a.createElement("div",{className:"mb-3 mt-n1"},a.createElement(u,null),a.createElement("div",{className:"striped-list no-full-width"},a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null),a.createElement(m,null))))}function p(){return a.createElement(a.Fragment,null,a.createElement("div",{className:"partial-loading-background mb-2 ".concat(i.partialHeading)}),a.createElement("div",{className:"pb-3"},a.createElement("div",{className:"d-flex justify-content-between"},a.createElement(s.b2,null),a.createElement("div",{className:"partial-loading-background ".concat(i.partialJobCount)}))),a.createElement("div",{className:"d-flex align-items-center pb-2"},a.createElement("div",{className:"partial-loading-background ".concat(i.partialCheckbox)}),a.createElement("div",{className:"ms-4 ps-3"},a.createElement(o.U,{count:3})),a.createElement("div",{className:"ms-auto partial-loading-background ".concat(i.partialExportButton)})),a.createElement(d,null))}var f=n(31647),g=n(110),v=n(58739);const b={complete:"nAOdH",failed:"xkFpC",inProgress:"BjR3y",scheduled:"Ux2b9"};var E=c.T.encloseNamespace("rostering.syncJobsStatusBadge");function h(e){return a.createElement("div",{className:function(){var t="rounded-pill px-2 d-inline-flex align-items-center fw-semibold";switch(e.status){case v.K.Completed:case v.K.CompletedWithError:return"".concat(t," ").concat(b.complete);case v.K.Failed:return"".concat(t," ").concat(b.failed);case v.K.InProgress:case v.K.Pending:case v.K.Queued:case v.K.Submitted:return"".concat(t," ").concat(b.inProgress);case"scheduled":return"".concat(t," ").concat(b.scheduled)}}()},function(){switch(e.status){case v.K.Completed:case v.K.CompletedWithError:return E("complete");case v.K.Failed:return E("failed");case v.K.InProgress:case v.K.Pending:case v.K.Queued:case v.K.Submitted:return E("inProgress");case"scheduled":return E("scheduled")}}())}var y=n(83914),N=n(35223);const x={colored:"MLlUi",avatar:"Z1jn_",logoWrapper:"OAeff",cog:"I7V_R",checkboxPlaceholder:"LTmrp",source:"zYMOT",date:"mnJQP",status:"Pm1Aa",performedBy:"oy6Vm",placeholder:"o0RDO"};var C=c.T.encloseNamespace("rostering.scheduledSyncJobItem");function S(e){return a.createElement("div",{className:x.colored},a.createElement("div",{className:"px-4 py-3 d-flex align-items-center"},a.createElement("div",{className:x.checkboxPlaceholder}),a.createElement("div",{className:"".concat(x.source," px-2")}),a.createElement("div",{className:"".concat(x.date," px-2")},g.O.format(e.scheduledDate,"DD/MM/YYYY, hh:mmA")),a.createElement("div",{className:"".concat(x.status," px-2")},a.createElement(h,{status:"scheduled"})),a.createElement("div",{className:"".concat(x.performedBy," px-2 d-flex align-items-center")},a.createElement("div",{className:"".concat(x.cog," me-2 rounded-circle text-white bg-dark d-flex align-items-center justify-content-center")},a.createElement(y.x,{svgName:N.vn.Cog,className:"svg-container"})),C("performedBy")),a.createElement("div",{className:"cursor-pointer d-flex justify-content-end ".concat(x.placeholder)})))}var k=n(65654),I=n(56050),j=n(97514),w=n(20789),P={getCellStyle:function(e){return{width:e,flex:"".concat(e," 0 auto")}}},T=n(89965);const A={colored:"aU1VO",seeMore:"Nfc8Q"};function L(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var O=c.T.encloseNamespace("shared.bulkJobsAccordionItem");function J(e){var t,n,r=(t=a.useState(!!e.forceExpand&&e.forceExpand(e.job)),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 a,r,c,l,o=[],s=!0,i=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(a=c.call(n)).done)&&(o.push(a.value),o.length!==t);s=!0);}catch(e){i=!0,r=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(i)throw r}}return o}}(t,n)||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}}(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=r[0],l=r[1],o=!!e.disableExpand&&e.disableExpand(e.job);return a.createElement("div",{className:"".concat(A.colored," ").concat(o?"":"cursor-pointer"),onClick:function(){o||l((function(e){return!e}))}},a.createElement("div",{className:"px-4 py-3 d-flex align-items-center"},a.createElement("div",{style:P.getCellStyle(60),onClick:function(e){return e.stopPropagation()}},a.createElement(T.X,{id:e.job.id,checked:e.isChecked(e.job.id),onChange:function(){return e.onToggleCheckbox(e.job.id)}})),e.columns.map((function(t){var n=t.render,r=t.renderClassName,c=t.width,l=t.id;return a.createElement("div",{className:"".concat(null!=r?r:""),key:l,style:P.getCellStyle(c)},n(e.job))})),a.createElement("div",{className:"d-flex justify-content-end ".concat(o?"":"cursor-pointer"),style:P.getCellStyle(200)},!o&&a.createElement("div",{className:"".concat(A.seeMore," text-info")},O(c?"seeLess":"seeMore")))),c&&a.createElement("div",{className:"bg-white border-bottom cursor-default",onClick:function(e){return e.stopPropagation()}},e.jobDetailsComponent(e.job)))}var K=n(93251);function B(e){return a.createElement(K.J,{queryParams:e.queryParams,mainFilters:e.filters,appLink:e.appLink,analyticsOptions:e.analyticsOptions,hideHeading:!0,hideDivider:!0,constantIndices:[]})}var R=n(37395),V=n(2102),M=n(83345),F=n(69883),D=n(299),U=n(75795);const G={bulkCheckbox:"XeoQi"};function H(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var Z="shared.bulkJobsAccordions",q=c.T.encloseNamespace(Z);function X(e){var t,n,r,c=(n=a.useState(!1),r=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,c,l,o=[],s=!0,i=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(a=c.call(n)).done)&&(o.push(a.value),o.length!==t);s=!0);}catch(e){i=!0,r=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(i)throw r}}return o}}(n,r)||function(e,t){if(e){if("string"==typeof e)return H(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)?H(e,t):void 0}}(n,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=c[0],o=c[1],s=(0,D.X)(e.jobs.data),i=(0,F.Z)();return a.createElement("div",{className:"".concat(G.container," pe-3")},a.createElement("div",{className:"d-flex align-items-center pb-2 mt-3"},a.createElement(T.X,{className:G.bulkCheckbox,id:"bulk-audit-log-checkbox",checked:s.bulkChecked,onChange:s.onToggleBulk,indeterminate:s.hasSomeSelections()}),a.createElement("div",{className:"ms-4"},a.createElement(B,{queryParams:e.queryParams,appLink:e.appLink,filters:e.filters})),a.createElement(V.m,{variant:"dark",className:"ms-auto",onClick:function(){if(!l){o(!0);var t=s.getSelected();e.onClickExport(t).then((function(){return i.success(q("exportSuccess"))})).catch((function(){return i.error(q("exportError"))})).finally((function(){return o(!1)}))}},disabled:!s.hasSomeSelections()||l,showSpinner:l},a.createElement(M.x,{namespace:Z,phrase:"export"}))),a.createElement("div",{className:"d-flex no-wrap mb-2 fw-semibold px-4 py-2"},a.createElement("div",{style:P.getCellStyle(60)}),e.columns.map((function(e){var t=e.id,n=e.header,r=e.headerClassName,c=e.width;return a.createElement("div",{key:t,className:r,style:P.getCellStyle(c)},n)})),a.createElement("div",{style:P.getCellStyle(200)})),!!e.pinnedComponent&&e.pinnedComponent(),!!e.jobs.data.length&&e.jobs.data.map((function(t){return a.createElement(J,{key:t.id,job:t,onToggleCheckbox:s.onToggleItem,isChecked:s.isChecked,jobDetailsComponent:e.jobDetailsComponent,onClickExport:e.onClickExport,imageCdnUrl:e.imageCdnUrl,onPollJob:e.onPollJob,columns:e.columns,forceExpand:e.forceExpand,disableExpand:e.disableExpand})})),!!(null===(t=e.jobs.pagination)||void 0===t?void 0:t.cursors)&&a.createElement(R.t,{className:"p-0 text-end pb-3 mt-3",cursors:e.jobs.pagination.cursors,appLink:U.O.getCurrentRoute().appLink,buttonVariant:"outline-dark"}))}var _=n(89725),W=n(10874),$=n(80247),Y=n(14177);function Q(e){return e.jobId?a.createElement("div",null,a.createElement("div",{className:"mb-4"},a.createElement(Y.$,{jobId:e.jobId,pollJob:e.onPollJob(e.jobId),onStatusCompleted:e.onCompleted,actionName:"Sync",actionVerb:"Update",progressVerbPhrase:c.T.getPhrase("rostering.syncJobPolling","progressVerb")}))):a.createElement("div",{className:"text-center"},a.createElement($.Z,{as:"div",animation:"border",role:"status"}))}const z={failed:"BSIaY",tag:"NOJhh"};function ee(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 a,r,c,l,o=[],s=!0,i=!1;try{if(c=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;s=!1}else for(;!(s=(a=c.call(n)).done)&&(o.push(a.value),o.length!==t);s=!0);}catch(e){i=!0,r=e}finally{try{if(!s&&null!=n.return&&(l=n.return(),Object(l)!==l))return}finally{if(i)throw r}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return te(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)?te(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 te(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}var ne="rostering.syncJobSummary";function ae(e){var t=ee(a.useState(null),2),n=t[0],r=t[1],c=ee(a.useState(!1),2),l=c[0],o=c[1];function s(e){var t="",r="";switch(e){case"staff":t="bg-navy",r=N.vn.Staff;break;case"learners":t="bg-blue",r=N.vn.GraduationCap;break;case"classrooms":t="bg-teal",r=N.vn.Classrooms}var c=Object.keys(n[e]).filter((function(e){return"totalProcessed"!==e&&"totalSucceeded"!==e}));return a.createElement("div",{className:"col"},a.createElement("div",{className:"py-3 ps-2 pe-3 rounded border border-light"},a.createElement("div",{className:"d-flex align-items-center px-2 mb-2"},a.createElement("div",{className:"".concat(t," ").concat(z.badge," d-flex align-items-center rounded-circle text-white ps-0 me-2")},a.createElement(y.x,{className:"svg-container ".concat(z.svg),size:y.S.Standard,svgName:r})),a.createElement(M.x,{namespace:ne,phrase:e})),a.createElement("ul",{className:"mb-0"},null==c?void 0:c.map((function(t){return a.createElement("li",{className:"mb-2",key:t},a.createElement("div",{className:"d-flex"},a.createElement("div",{className:"rounded-pill me-2 px-2 d-inline-flex align-items-center fw-semibold ".concat("errored"===t?z.failed:z.tag)},n[e][t]),a.createElement(M.x,{namespace:ne,phrase:t})))})))))}return a.useEffect((function(){n||(o(!0),e.getJobSummary(e.job.id).then((function(e){r(e)})).finally((function(){o(!1)})))}),[e.job.id]),a.createElement(a.Fragment,null,l&&!n&&a.createElement("div",{className:"text-center py-3"},a.createElement($.Z,{as:"div",animation:"border",role:"status"})),!!n&&a.createElement("div",{className:"row gx-3 mt-2"},s("staff"),s("learners"),s("classrooms")))}var re=c.T.encloseNamespace("rostering.syncJobDetails");function ce(e){var t=e.job.status===v.K.Completed||e.job.status===v.K.CompletedWithError,n=(0,F.Z)();return a.createElement("div",{className:"py-3 px-4"},a.createElement("div",{className:"d-flex justify-content-between"},e.job.status!==v.K.InProgress&&a.createElement("h1",{className:"h4"},re("heading")),t&&a.createElement(W.h,{className:"btn btn-outline-dark fw-semibold",svgName:N.vn.Download,onClick:function(){e.onClickExport([e.job.id]).then((function(){n.success(re("exportSuccess"))})).catch((function(){n.error(re("exportError"))}))}},re("export"))),function(){switch(e.job.status){case v.K.InProgress:case v.K.Pending:case v.K.Queued:case v.K.Submitted:return a.createElement(Q,{jobId:e.job.id,onCompleted:e.onCompleted,onPollJob:e.onPollJob});case v.K.Failed:return a.createElement(a.Fragment,null);case v.K.Completed:case v.K.CompletedWithError:return a.createElement(ae,{job:e.job,getJobSummary:e.getJobSummary});default:return a.createElement(a.Fragment,null)}}())}var le=n(86794),oe=n(76177),se=n(55171),ie=n(64818);const me={avatar:"B8miR",logoWrapper:"higtD",cog:"bNPxa"};var ue="rostering.syncJobsAccordion",de=c.T.encloseNamespace(ue),pe=[v.K.InProgress,v.K.Pending,v.K.Queued,v.K.Submitted];function fe(e){var t=[j.x$.SortBy([{id:"newest",name:c.T.getPhrase(ue,"newest"),default:!0},{id:"oldest",name:c.T.getPhrase(ue,"oldest")}]),j.x$.JobStatus()],n=[{id:"id",header:de("syncFrom"),headerClassName:"px-2 py-1",renderClassName:"px-2",render:function(e){var t,n=null===(t=e.metadata)||void 0===t?void 0:t.source;if(!n)return a.createElement(a.Fragment,null);var r=se.e.Rostering.sources[n];if(!r)throw new I.H("Unsupported rostering sync source, please add it to HardCoded rostering source");return a.createElement("div",{className:"bg-white rounded-circle border ".concat(me.logoWrapper," d-flex align-items-center justify-content-center")},a.createElement(oe.u,{spanHack:!0,title:r.name},a.createElement("img",{src:r.iconUrl,alt:r.name})))},width:120},{id:"dateCreated",header:de("date"),headerClassName:"px-2 py-1",renderClassName:"px-2",render:function(e){return g.O.format(e.dateCreated,"DD/MM/YYYY, hh:mmA")},width:220},{id:"status",header:de("status"),headerClassName:"px-2 py-1",renderClassName:"px-2",render:function(e){return a.createElement(h,{status:e.status})},width:200},{id:"submitterName",header:de("performedBy"),headerClassName:"px-2",renderClassName:"px-2",render:function(t){return function(e,t){return e.submittedByClickView?a.createElement("div",{className:"d-flex align-items-center"},a.createElement(le.b,{className:"me-2 rounded-circle border",size:y.S.Large},a.createElement(_.F,null)),e.submitterName):e.submitterName?a.createElement("div",{className:"d-flex align-items-center"},a.createElement("div",{className:"me-2 ".concat(me.avatar)},a.createElement(w.q,{imageCdnUrl:t.imageCdnUrl,initials:ie.l.getInitials(e.submitterName.split(" ")[0],e.submitterName.split(" ")[1])})),e.submitterName):a.createElement("div",{className:"me-2 d-flex align-items-center"},a.createElement("div",{className:"".concat(me.cog," me-2 rounded-circle text-white bg-dark d-flex align-items-center justify-content-center")},a.createElement(y.x,{svgName:N.vn.Cog,className:"svg-container"})),de("scheduledSubmitter"))}(t,e)},width:200}];return a.createElement(X,Object.assign({},e,{filters:t,jobDetailsComponent:function(t){return a.createElement(ce,{job:t,getJobSummary:e.getJobSummary,onPollJob:e.onPollJob,onClickExport:e.onClickExport,onCompleted:e.onCompleted})},columns:n,forceExpand:function(e){return pe.includes(e.status)},disableExpand:function(e){return e.status===v.K.Failed}}))}var ge=n(62394),ve=n(16714),be=n(39151),Ee=n(44538),he=n(31949),ye=n(79612),Ne=n(14070),xe=n(97291),Ce=n(29613),Se=n(44230),ke=n(81803),Ie=n(23232),je=n(99742),we="rostering.districtRosterEmptyState";function Pe(){return a.createElement(Ie.u,null,a.createElement(Ie.u.Image,{src:je.W.EmptyStates.Rostering.DISTRICT_ROSTERING}),a.createElement(Ie.u.Heading,null,a.createElement(M.x,{namespace:we,phrase:"emptyHeading"})),a.createElement(Ie.u.Info,{className:"w-50 mb-2"},a.createElement(M.x,{namespace:we,phrase:"emptyInfo"})),a.createElement(Ie.u.Info,{className:"w-50 mb-1 fw-semibold"},a.createElement(M.x,{namespace:we,phrase:"strongInfo"})))}var Te="rostering.noResults";function Ae(){return a.createElement(Ie.u,null,a.createElement(Ie.u.Image,{src:je.W.EmptyStates.Rostering.EMPTY_RESULTS}),a.createElement(Ie.u.Heading,null,a.createElement(M.x,{namespace:Te,phrase:"emptyHeading"})),a.createElement(Ie.u.Info,{className:"w-50 mb-1"},a.createElement(M.x,{namespace:Te,phrase:"emptyInfo"})))}var Le="rostering.noSyncJobs",Oe=c.T.encloseNamespace(Le);function Je(e){return a.createElement(Ie.u,null,a.createElement(Ie.u.Image,{src:je.W.EmptyStates.Rostering.NO_SYNC_JOBS}),a.createElement(Ie.u.Heading,null,a.createElement(M.x,{namespace:Le,phrase:"emptyHeading"})),a.createElement(Ie.u.Info,{className:"w-50 mb-3"},a.createElement(M.x,{namespace:Le,phrase:"emptyInfo"})),a.createElement(Ie.u.Cta,{className:"btn btn-dark",onClick:e.onStartFullSync,text:Oe("emptyCta")}))}var Ke=n(52834),Be=n(56736),Re=c.T.encloseNamespace("rostering.syncList");function Ve(e){var t,n=l.a.useBasicFetch(Ee.K.getSyncList(e.queryParams)),c=l.a.useBasicFetch(be.L.config()),o=l.a.useBasicFetch(he.N.currentUser()),s=l.a.useBasicFetch(Ee.K.getRostering()),i=l.a.useBasicFetch(o.data&&s.data&&Ee.K.getSyncScheduleSettings(s.data.id)),m=n.hasCompleted&&c.hasCompleted&&i.hasCompleted&&s.hasCompleted,u=l.a.useGetFetchAsync(),d=(0,r.I0)();function g(e){return u(Ee.K.getJobSummary(e))}function v(e){return function(t,n){return u(Ce.q.getJobProgress(e,t,n))}}function b(){d({type:l.a.Actions.INVALIDATE,keys:["rostering:sync"],request:null})}function E(e){return u(Ce.q.sendJobReports(e))}(0,ye.M)({title:Re("pageTitle")}),a.useEffect((function(){return function(){Se.e.unlockContentWidth()}}),[]);var h=m&&"Active"===(null===(t=s.data)||void 0===t?void 0:t.status),y=(0,Be.B)(o.data),N=y.syncNow,x=y.fullSync;return a.createElement(ke.d,{heading:Re("heading"),breadcrumbs:[Re("breadcrumb")],headingButton:function(){return h?a.createElement(k.G,{onSyncNow:N,onFullSync:x}):a.createElement(a.Fragment,null)},requiredPermissions:ve.C.Rostering},h&&a.createElement(f.E,{active:"syncJobs",appLinks:{syncJobs:{application:xe.O.SETTINGS,action:Ne.e.Settings.ROSTERING},settings:{application:xe.O.SETTINGS,action:Ne.e.Settings.ROSTERING_SETTINGS}}}),function(){var t,r;if("Managed"===(null===(t=s.data)||void 0===t?void 0:t.status))return a.createElement(Pe,null);if("None"===(null===(r=s.data)||void 0===r?void 0:r.status))return a.createElement(Ke.y,null);if(!m)return a.createElement(p,null);if(!n.data.data.length&&!e.queryParams)return a.createElement(Je,{onStartFullSync:N});var l=ge.y.getScheduledJobBySetting(i.data);return a.createElement(a.Fragment,null,a.createElement(fe,{jobs:n.data,queryParams:e.queryParams,appLink:{application:xe.O.SETTINGS,action:Ne.e.Settings.ROSTERING},onClickExport:E,getJobSummary:g,imageCdnUrl:c.data.imageCdnUrl,onPollJob:v,onCompleted:b,pinnedComponent:l?function(){return a.createElement(S,{scheduledDate:l})}:null}),!n.data.data.length&&e.queryParams&&a.createElement(Ae,null))}())}},79447:(e,t,n)=>{n.d(t,{Z:()=>p});var a=n(95685),r=n.n(a),c=n(32735),l=n(46304),o=n(58661),s=n(74512);const i=1e3;function m(e,t,n){const a=(e-t)/(n-t)*100;return Math.round(a*i)/i}function u({min:e,now:t,max:n,label:a,visuallyHidden:c,striped:l,animated:o,className:i,style:u,variant:d,bsPrefix:p,...f},g){return(0,s.jsx)("div",{ref:g,...f,role:"progressbar",className:r()(i,`${p}-bar`,{[`bg-${d}`]:d,[`${p}-bar-animated`]:o,[`${p}-bar-striped`]:o||l}),style:{width:`${m(t,e,n)}%`,...u},"aria-valuenow":t,"aria-valuemin":e,"aria-valuemax":n,children:c?(0,s.jsx)("span",{className:"visually-hidden",children:a}):a})}const d=c.forwardRef((({isChild:e=!1,...t},n)=>{const a={min:0,max:100,animated:!1,visuallyHidden:!1,striped:!1,...t};if(a.bsPrefix=(0,l.vE)(a.bsPrefix,"progress"),e)return u(a,n);const{min:i,now:m,max:d,label:p,visuallyHidden:f,striped:g,animated:v,bsPrefix:b,variant:E,className:h,children:y,...N}=a;return(0,s.jsx)("div",{ref:n,...N,className:r()(h,b),children:y?(0,o.UI)(y,(e=>(0,c.cloneElement)(e,{isChild:!0}))):u({min:i,now:m,max:d,label:p,visuallyHidden:f,striped:g,animated:v,bsPrefix:b,variant:E},n)})}));d.displayName="ProgressBar";const p=d}}]);
|
|
2
|
-
//# sourceMappingURL=7987-
|
|
2
|
+
//# sourceMappingURL=7987-ff7de6531f-lite.chunk.js.map
|