@clickview/lite 0.52.3-dev.0 → 0.52.3-dev.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 +1 -1
- package/dist/css/{1760-lite-d230b51c8b.chunk.css → 1019-lite-402889ede4.chunk.css} +2 -1
- package/dist/css/{6094-lite-d230b51c8b.chunk.css → 2548-lite-402889ede4.chunk.css} +2 -1
- package/dist/css/{6546-lite-991b6e8255.chunk.css → 6596-lite-e22262b911.chunk.css} +2 -1
- package/dist/css/{1867-lite-991b6e8255.chunk.css → 9010-lite-e22262b911.chunk.css} +2 -1
- package/dist/languages/en.json +1 -1
- package/dist/scripts/{1760-33f1791560-lite.chunk.js → 1019-8fc84c7c2e-lite.chunk.js} +2 -2
- package/dist/scripts/{1760-33f1791560-lite.chunk.js.map → 1019-8fc84c7c2e-lite.chunk.js.map} +1 -1
- package/dist/scripts/1063-5a732288dc-lite.chunk.js +2 -0
- package/dist/scripts/1063-5a732288dc-lite.chunk.js.map +1 -0
- package/dist/scripts/{9173-2392d447a6-lite.chunk.js → 1104-f057c6dea1-lite.chunk.js} +3 -3
- package/dist/scripts/{9173-2392d447a6-lite.chunk.js.map → 1104-f057c6dea1-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1125-aac132b88f-lite.chunk.js → 1125-c5138ef662-lite.chunk.js} +2 -2
- package/dist/scripts/1125-c5138ef662-lite.chunk.js.map +1 -0
- package/dist/scripts/1169-9b7d850bab-lite.chunk.js +2 -0
- package/dist/scripts/1169-9b7d850bab-lite.chunk.js.map +1 -0
- package/dist/scripts/{1379-082bbab71a-lite.chunk.js → 1379-ca519ec56b-lite.chunk.js} +3 -3
- package/dist/scripts/{1379-082bbab71a-lite.chunk.js.map → 1379-ca519ec56b-lite.chunk.js.map} +1 -1
- package/dist/scripts/1672-0d1fc90529-lite.chunk.js +3 -0
- package/dist/scripts/1672-0d1fc90529-lite.chunk.js.map +1 -0
- package/dist/scripts/1725-99450ed637-lite.chunk.js +2 -0
- package/dist/scripts/1725-99450ed637-lite.chunk.js.map +1 -0
- package/dist/scripts/1891-5914c54eca-lite.chunk.js +2 -0
- package/dist/scripts/1891-5914c54eca-lite.chunk.js.map +1 -0
- package/dist/scripts/1896-399a91d18c-lite.chunk.js +2 -0
- package/dist/scripts/1896-399a91d18c-lite.chunk.js.map +1 -0
- package/dist/scripts/193-797b89797a-lite.chunk.js +2 -0
- package/dist/scripts/193-797b89797a-lite.chunk.js.map +1 -0
- package/dist/scripts/209-fe96739cb5-lite.chunk.js +2 -0
- package/dist/scripts/209-fe96739cb5-lite.chunk.js.map +1 -0
- package/dist/scripts/2134-b8d5c46887-lite.chunk.js +2 -0
- package/dist/scripts/2134-b8d5c46887-lite.chunk.js.map +1 -0
- package/dist/scripts/2142-f71cf5c71f-lite.chunk.js +2 -0
- package/dist/scripts/2142-f71cf5c71f-lite.chunk.js.map +1 -0
- package/dist/scripts/2402-ff1b4adf1a-lite.chunk.js +2 -0
- package/dist/scripts/2402-ff1b4adf1a-lite.chunk.js.map +1 -0
- package/dist/scripts/2548-c5dd2899df-lite.chunk.js +2 -0
- package/dist/scripts/2548-c5dd2899df-lite.chunk.js.map +1 -0
- package/dist/scripts/2952-c3a826b714-lite.chunk.js +2 -0
- package/dist/scripts/2952-c3a826b714-lite.chunk.js.map +1 -0
- package/dist/scripts/3404-23125f10ea-lite.chunk.js +2 -0
- package/dist/scripts/3404-23125f10ea-lite.chunk.js.map +1 -0
- package/dist/scripts/3633-f3609526a5-lite.chunk.js +2 -0
- package/dist/scripts/3633-f3609526a5-lite.chunk.js.map +1 -0
- package/dist/scripts/3728-eed9e78985-lite.chunk.js +2 -0
- package/dist/scripts/3728-eed9e78985-lite.chunk.js.map +1 -0
- package/dist/scripts/4063-5fa157657f-lite.chunk.js +2 -0
- package/dist/scripts/4063-5fa157657f-lite.chunk.js.map +1 -0
- package/dist/scripts/4182-ba03f3ce3c-lite.chunk.js +2 -0
- package/dist/scripts/4182-ba03f3ce3c-lite.chunk.js.map +1 -0
- package/dist/scripts/4273-e42f763f00-lite.chunk.js +3 -0
- package/dist/scripts/4273-e42f763f00-lite.chunk.js.map +1 -0
- package/dist/scripts/4395-d0815835c8-lite.chunk.js +2 -0
- package/dist/scripts/4395-d0815835c8-lite.chunk.js.map +1 -0
- package/dist/scripts/4502-af4903784e-lite.chunk.js +2 -0
- package/dist/scripts/4502-af4903784e-lite.chunk.js.map +1 -0
- package/dist/scripts/4850-bb9541d3ed-lite.chunk.js +2 -0
- package/dist/scripts/4850-bb9541d3ed-lite.chunk.js.map +1 -0
- package/dist/scripts/5573-4352a3537e-lite.chunk.js +2 -0
- package/dist/scripts/5573-4352a3537e-lite.chunk.js.map +1 -0
- package/dist/scripts/5595-3acc9593bf-lite.chunk.js +2 -0
- package/dist/scripts/5595-3acc9593bf-lite.chunk.js.map +1 -0
- package/dist/scripts/5606-69c0ca2b97-lite.chunk.js +2 -0
- package/dist/scripts/5606-69c0ca2b97-lite.chunk.js.map +1 -0
- package/dist/scripts/5877-628732da21-lite.chunk.js +2 -0
- package/dist/scripts/5877-628732da21-lite.chunk.js.map +1 -0
- package/dist/scripts/5936-cd98109a7b-lite.chunk.js +2 -0
- package/dist/scripts/5936-cd98109a7b-lite.chunk.js.map +1 -0
- package/dist/scripts/{5940-f335f8c290-lite.chunk.js → 5940-2767b40c40-lite.chunk.js} +2 -2
- package/dist/scripts/5940-2767b40c40-lite.chunk.js.map +1 -0
- package/dist/scripts/6054-1e9b86d631-lite.chunk.js +2 -0
- package/dist/scripts/6054-1e9b86d631-lite.chunk.js.map +1 -0
- package/dist/scripts/6138-2ef7ee071a-lite.chunk.js +2 -0
- package/dist/scripts/6138-2ef7ee071a-lite.chunk.js.map +1 -0
- package/dist/scripts/{624-7ab5fb3f3b-lite.chunk.js → 624-09b51a9d32-lite.chunk.js} +3 -3
- package/dist/scripts/{624-7ab5fb3f3b-lite.chunk.js.map → 624-09b51a9d32-lite.chunk.js.map} +1 -1
- package/dist/scripts/6263-8a7931bf51-lite.chunk.js +2 -0
- package/dist/scripts/6263-8a7931bf51-lite.chunk.js.map +1 -0
- package/dist/scripts/6290-28ae0e8a60-lite.chunk.js +2 -0
- package/dist/scripts/6290-28ae0e8a60-lite.chunk.js.map +1 -0
- package/dist/scripts/6470-9a700cabce-lite.chunk.js +2 -0
- package/dist/scripts/6470-9a700cabce-lite.chunk.js.map +1 -0
- package/dist/scripts/6481-035d218a77-lite.chunk.js +2 -0
- package/dist/scripts/6481-035d218a77-lite.chunk.js.map +1 -0
- package/dist/scripts/6532-59e9abf69d-lite.chunk.js +2 -0
- package/dist/scripts/6532-59e9abf69d-lite.chunk.js.map +1 -0
- package/dist/scripts/6596-f75129c039-lite.chunk.js +2 -0
- package/dist/scripts/6596-f75129c039-lite.chunk.js.map +1 -0
- package/dist/scripts/6604-9adec889c7-lite.chunk.js +2 -0
- package/dist/scripts/6604-9adec889c7-lite.chunk.js.map +1 -0
- package/dist/scripts/6746-3f501b95cf-lite.chunk.js +2 -0
- package/dist/scripts/6746-3f501b95cf-lite.chunk.js.map +1 -0
- package/dist/scripts/714-c00ad56229-lite.chunk.js +2 -0
- package/dist/scripts/714-c00ad56229-lite.chunk.js.map +1 -0
- package/dist/scripts/7163-84c2b15394-lite.chunk.js +2 -0
- package/dist/scripts/7163-84c2b15394-lite.chunk.js.map +1 -0
- package/dist/scripts/7178-ed74c33056-lite.chunk.js +2 -0
- package/dist/scripts/7178-ed74c33056-lite.chunk.js.map +1 -0
- package/dist/scripts/7223-0bfab7e57a-lite.chunk.js +2 -0
- package/dist/scripts/7223-0bfab7e57a-lite.chunk.js.map +1 -0
- package/dist/scripts/7234-84c087600e-lite.chunk.js +2 -0
- package/dist/scripts/7234-84c087600e-lite.chunk.js.map +1 -0
- package/dist/scripts/7267-fd5085f5c9-lite.chunk.js +2 -0
- package/dist/scripts/7267-fd5085f5c9-lite.chunk.js.map +1 -0
- package/dist/scripts/7633-6c1ffdd082-lite.chunk.js +2 -0
- package/dist/scripts/7633-6c1ffdd082-lite.chunk.js.map +1 -0
- package/dist/scripts/7679-8f2d6a3487-lite.chunk.js +2 -0
- package/dist/scripts/7679-8f2d6a3487-lite.chunk.js.map +1 -0
- package/dist/scripts/7757-7e293be936-lite.chunk.js +2 -0
- package/dist/scripts/7757-7e293be936-lite.chunk.js.map +1 -0
- package/dist/scripts/7795-c6d38bc3e5-lite.chunk.js +2 -0
- package/dist/scripts/7795-c6d38bc3e5-lite.chunk.js.map +1 -0
- package/dist/scripts/7818-230982fc27-lite.chunk.js +2 -0
- package/dist/scripts/7818-230982fc27-lite.chunk.js.map +1 -0
- package/dist/scripts/8323-360541a2a8-lite.chunk.js +3 -0
- package/dist/scripts/8323-360541a2a8-lite.chunk.js.map +1 -0
- package/dist/scripts/8709-c4f1068232-lite.chunk.js +2 -0
- package/dist/scripts/8709-c4f1068232-lite.chunk.js.map +1 -0
- package/dist/scripts/8982-a3dc4a6b3c-lite.chunk.js +2 -0
- package/dist/scripts/8982-a3dc4a6b3c-lite.chunk.js.map +1 -0
- package/dist/scripts/9010-024dcc8f9a-lite.chunk.js +2 -0
- package/dist/scripts/9010-024dcc8f9a-lite.chunk.js.map +1 -0
- package/dist/scripts/9016-82d7e0afb9-lite.chunk.js +3 -0
- package/dist/scripts/9016-82d7e0afb9-lite.chunk.js.map +1 -0
- package/dist/scripts/9173-f9708ec0de-lite.chunk.js +2 -0
- package/dist/scripts/9173-f9708ec0de-lite.chunk.js.map +1 -0
- package/dist/scripts/9230-ae200d2bd3-lite.chunk.js +3 -0
- package/dist/scripts/9230-ae200d2bd3-lite.chunk.js.map +1 -0
- package/dist/scripts/9359-1fb4413e0d-lite.chunk.js +2 -0
- package/dist/scripts/9359-1fb4413e0d-lite.chunk.js.map +1 -0
- package/dist/scripts/{9395-90b87097fa-lite.chunk.js → 9395-e1a02b01ce-lite.chunk.js} +3 -3
- package/dist/scripts/{9395-90b87097fa-lite.chunk.js.map → 9395-e1a02b01ce-lite.chunk.js.map} +1 -1
- package/dist/scripts/9399-d7a92ce84a-lite.chunk.js +2 -0
- package/dist/scripts/9399-d7a92ce84a-lite.chunk.js.map +1 -0
- package/dist/scripts/{9478-99486906b9-lite.chunk.js → 9478-abfa7ed3cc-lite.chunk.js} +3 -3
- package/dist/scripts/{9478-99486906b9-lite.chunk.js.map → 9478-abfa7ed3cc-lite.chunk.js.map} +1 -1
- package/dist/scripts/{953-cbc7f0571e-lite.chunk.js → 953-225db845ab-lite.chunk.js} +3 -3
- package/dist/scripts/{953-cbc7f0571e-lite.chunk.js.map → 953-225db845ab-lite.chunk.js.map} +1 -1
- package/dist/scripts/9620-95e6cc7b2b-lite.chunk.js +3 -0
- package/dist/scripts/9620-95e6cc7b2b-lite.chunk.js.map +1 -0
- package/dist/scripts/9719-9736913451-lite.chunk.js +3 -0
- package/dist/scripts/9719-9736913451-lite.chunk.js.map +1 -0
- package/dist/scripts/999-bdc7956050-lite.chunk.js +2 -0
- package/dist/scripts/999-bdc7956050-lite.chunk.js.map +1 -0
- package/dist/scripts/bundle-9f8729bedb.min.js +3 -0
- package/dist/scripts/bundle-9f8729bedb.min.js.map +1 -0
- package/package.json +1 -1
- package/dist/scripts/1125-aac132b88f-lite.chunk.js.map +0 -1
- package/dist/scripts/1169-534a29a204-lite.chunk.js +0 -2
- package/dist/scripts/1169-534a29a204-lite.chunk.js.map +0 -1
- package/dist/scripts/1672-672f298d82-lite.chunk.js +0 -3
- package/dist/scripts/1672-672f298d82-lite.chunk.js.map +0 -1
- package/dist/scripts/1725-075015497e-lite.chunk.js +0 -2
- package/dist/scripts/1725-075015497e-lite.chunk.js.map +0 -1
- package/dist/scripts/1818-64a145c5fe-lite.chunk.js +0 -2
- package/dist/scripts/1818-64a145c5fe-lite.chunk.js.map +0 -1
- package/dist/scripts/1820-993521951d-lite.chunk.js +0 -2
- package/dist/scripts/1820-993521951d-lite.chunk.js.map +0 -1
- package/dist/scripts/1867-260ef9f8c2-lite.chunk.js +0 -2
- package/dist/scripts/1867-260ef9f8c2-lite.chunk.js.map +0 -1
- package/dist/scripts/1891-e80f9f17ee-lite.chunk.js +0 -2
- package/dist/scripts/1891-e80f9f17ee-lite.chunk.js.map +0 -1
- package/dist/scripts/1896-32a6eeda5c-lite.chunk.js +0 -2
- package/dist/scripts/1896-32a6eeda5c-lite.chunk.js.map +0 -1
- package/dist/scripts/193-f08b054631-lite.chunk.js +0 -2
- package/dist/scripts/193-f08b054631-lite.chunk.js.map +0 -1
- package/dist/scripts/209-de1729d1b1-lite.chunk.js +0 -2
- package/dist/scripts/209-de1729d1b1-lite.chunk.js.map +0 -1
- package/dist/scripts/2134-bca2f4697e-lite.chunk.js +0 -2
- package/dist/scripts/2134-bca2f4697e-lite.chunk.js.map +0 -1
- package/dist/scripts/2703-591ccf069c-lite.chunk.js +0 -2
- package/dist/scripts/2703-591ccf069c-lite.chunk.js.map +0 -1
- package/dist/scripts/3404-171fdee802-lite.chunk.js +0 -2
- package/dist/scripts/3404-171fdee802-lite.chunk.js.map +0 -1
- package/dist/scripts/3633-66d28be6f8-lite.chunk.js +0 -2
- package/dist/scripts/3633-66d28be6f8-lite.chunk.js.map +0 -1
- package/dist/scripts/3728-d7ecfc6667-lite.chunk.js +0 -2
- package/dist/scripts/3728-d7ecfc6667-lite.chunk.js.map +0 -1
- package/dist/scripts/4182-7aecc28a6f-lite.chunk.js +0 -2
- package/dist/scripts/4182-7aecc28a6f-lite.chunk.js.map +0 -1
- package/dist/scripts/4395-64da004753-lite.chunk.js +0 -2
- package/dist/scripts/4395-64da004753-lite.chunk.js.map +0 -1
- package/dist/scripts/4502-2e30d86385-lite.chunk.js +0 -2
- package/dist/scripts/4502-2e30d86385-lite.chunk.js.map +0 -1
- package/dist/scripts/5143-b6896dad98-lite.chunk.js +0 -2
- package/dist/scripts/5143-b6896dad98-lite.chunk.js.map +0 -1
- package/dist/scripts/5573-6cd98b69f2-lite.chunk.js +0 -2
- package/dist/scripts/5573-6cd98b69f2-lite.chunk.js.map +0 -1
- package/dist/scripts/5595-c4397e12a8-lite.chunk.js +0 -2
- package/dist/scripts/5595-c4397e12a8-lite.chunk.js.map +0 -1
- package/dist/scripts/5606-6c25caedc4-lite.chunk.js +0 -2
- package/dist/scripts/5606-6c25caedc4-lite.chunk.js.map +0 -1
- package/dist/scripts/5877-ddfaf6a7f5-lite.chunk.js +0 -2
- package/dist/scripts/5877-ddfaf6a7f5-lite.chunk.js.map +0 -1
- package/dist/scripts/5936-6fe810d3cb-lite.chunk.js +0 -2
- package/dist/scripts/5936-6fe810d3cb-lite.chunk.js.map +0 -1
- package/dist/scripts/5940-f335f8c290-lite.chunk.js.map +0 -1
- package/dist/scripts/6054-14d4ceeae3-lite.chunk.js +0 -2
- package/dist/scripts/6054-14d4ceeae3-lite.chunk.js.map +0 -1
- package/dist/scripts/6094-24c430efb3-lite.chunk.js +0 -2
- package/dist/scripts/6094-24c430efb3-lite.chunk.js.map +0 -1
- package/dist/scripts/6138-21ae042a7b-lite.chunk.js +0 -2
- package/dist/scripts/6138-21ae042a7b-lite.chunk.js.map +0 -1
- package/dist/scripts/6263-3455286798-lite.chunk.js +0 -2
- package/dist/scripts/6263-3455286798-lite.chunk.js.map +0 -1
- package/dist/scripts/6290-56412c6663-lite.chunk.js +0 -2
- package/dist/scripts/6290-56412c6663-lite.chunk.js.map +0 -1
- package/dist/scripts/6415-b29029aa1b-lite.chunk.js +0 -2
- package/dist/scripts/6415-b29029aa1b-lite.chunk.js.map +0 -1
- package/dist/scripts/6470-6216086d63-lite.chunk.js +0 -2
- package/dist/scripts/6470-6216086d63-lite.chunk.js.map +0 -1
- package/dist/scripts/6481-899eba8b3d-lite.chunk.js +0 -2
- package/dist/scripts/6481-899eba8b3d-lite.chunk.js.map +0 -1
- package/dist/scripts/6532-a6b65c91a7-lite.chunk.js +0 -2
- package/dist/scripts/6532-a6b65c91a7-lite.chunk.js.map +0 -1
- package/dist/scripts/6546-faa6f93a0e-lite.chunk.js +0 -2
- package/dist/scripts/6546-faa6f93a0e-lite.chunk.js.map +0 -1
- package/dist/scripts/6587-ba8e36be0b-lite.chunk.js +0 -2
- package/dist/scripts/6587-ba8e36be0b-lite.chunk.js.map +0 -1
- package/dist/scripts/6604-92193d6d68-lite.chunk.js +0 -2
- package/dist/scripts/6604-92193d6d68-lite.chunk.js.map +0 -1
- package/dist/scripts/6746-b5b2739944-lite.chunk.js +0 -2
- package/dist/scripts/6746-b5b2739944-lite.chunk.js.map +0 -1
- package/dist/scripts/679-e18e7956d0-lite.chunk.js +0 -2
- package/dist/scripts/679-e18e7956d0-lite.chunk.js.map +0 -1
- package/dist/scripts/714-432082f4fa-lite.chunk.js +0 -2
- package/dist/scripts/714-432082f4fa-lite.chunk.js.map +0 -1
- package/dist/scripts/7178-e603ea6b58-lite.chunk.js +0 -2
- package/dist/scripts/7178-e603ea6b58-lite.chunk.js.map +0 -1
- package/dist/scripts/7223-135cc7d675-lite.chunk.js +0 -2
- package/dist/scripts/7223-135cc7d675-lite.chunk.js.map +0 -1
- package/dist/scripts/729-c704d587d3-lite.chunk.js +0 -2
- package/dist/scripts/729-c704d587d3-lite.chunk.js.map +0 -1
- package/dist/scripts/7679-b01da2c09d-lite.chunk.js +0 -2
- package/dist/scripts/7679-b01da2c09d-lite.chunk.js.map +0 -1
- package/dist/scripts/7757-320e868e90-lite.chunk.js +0 -2
- package/dist/scripts/7757-320e868e90-lite.chunk.js.map +0 -1
- package/dist/scripts/7795-3ca0855d3a-lite.chunk.js +0 -2
- package/dist/scripts/7795-3ca0855d3a-lite.chunk.js.map +0 -1
- package/dist/scripts/7818-2eafc5f812-lite.chunk.js +0 -2
- package/dist/scripts/7818-2eafc5f812-lite.chunk.js.map +0 -1
- package/dist/scripts/8323-99cb03891e-lite.chunk.js +0 -3
- package/dist/scripts/8323-99cb03891e-lite.chunk.js.map +0 -1
- package/dist/scripts/8766-bcc7f11eac-lite.chunk.js +0 -2
- package/dist/scripts/8766-bcc7f11eac-lite.chunk.js.map +0 -1
- package/dist/scripts/8800-335154fe11-lite.chunk.js +0 -2
- package/dist/scripts/8800-335154fe11-lite.chunk.js.map +0 -1
- package/dist/scripts/8982-63c31685bf-lite.chunk.js +0 -2
- package/dist/scripts/8982-63c31685bf-lite.chunk.js.map +0 -1
- package/dist/scripts/9016-0c078a39cb-lite.chunk.js +0 -3
- package/dist/scripts/9016-0c078a39cb-lite.chunk.js.map +0 -1
- package/dist/scripts/9226-c236c0eeb1-lite.chunk.js +0 -2
- package/dist/scripts/9226-c236c0eeb1-lite.chunk.js.map +0 -1
- package/dist/scripts/9230-6dee40b1fb-lite.chunk.js +0 -3
- package/dist/scripts/9230-6dee40b1fb-lite.chunk.js.map +0 -1
- package/dist/scripts/9308-362f86711f-lite.chunk.js +0 -3
- package/dist/scripts/9308-362f86711f-lite.chunk.js.map +0 -1
- package/dist/scripts/9359-cc085d48a4-lite.chunk.js +0 -2
- package/dist/scripts/9359-cc085d48a4-lite.chunk.js.map +0 -1
- package/dist/scripts/9399-2a314327ac-lite.chunk.js +0 -2
- package/dist/scripts/9399-2a314327ac-lite.chunk.js.map +0 -1
- package/dist/scripts/9620-f1d717b02b-lite.chunk.js +0 -3
- package/dist/scripts/9620-f1d717b02b-lite.chunk.js.map +0 -1
- package/dist/scripts/9719-cf7d4172b6-lite.chunk.js +0 -3
- package/dist/scripts/9719-cf7d4172b6-lite.chunk.js.map +0 -1
- package/dist/scripts/bundle-724fc2e388.min.js +0 -3
- package/dist/scripts/bundle-724fc2e388.min.js.map +0 -1
- /package/dist/css/{5143-lite-676baa8218.chunk.css → 1063-lite-676baa8218.chunk.css} +0 -0
- /package/dist/css/{9173-lite-b361d438f6.chunk.css → 1104-lite-b361d438f6.chunk.css} +0 -0
- /package/dist/css/{679-lite-00eb7dadb2.chunk.css → 2952-lite-00eb7dadb2.chunk.css} +0 -0
- /package/dist/css/{4860-lite-93d7fad455.chunk.css → 4063-lite-93d7fad455.chunk.css} +0 -0
- /package/dist/css/{9308-lite-a3c7435ba4.chunk.css → 4273-lite-a3c7435ba4.chunk.css} +0 -0
- /package/dist/css/{729-lite-93d7fad455.chunk.css → 4850-lite-93d7fad455.chunk.css} +0 -0
- /package/dist/css/{8766-lite-8c5d7658ec.chunk.css → 7163-lite-8c5d7658ec.chunk.css} +0 -0
- /package/dist/css/{1818-lite-5ef1706d69.chunk.css → 7234-lite-5ef1706d69.chunk.css} +0 -0
- /package/dist/css/{6415-lite-707657102b.chunk.css → 9173-lite-707657102b.chunk.css} +0 -0
- /package/dist/css/{1820-lite-c88eb54bee.chunk.css → 999-lite-c88eb54bee.chunk.css} +0 -0
- /package/dist/scripts/{1379-082bbab71a-lite.chunk.js.LICENSE.txt → 1104-f057c6dea1-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{1672-672f298d82-lite.chunk.js.LICENSE.txt → 1379-ca519ec56b-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{624-7ab5fb3f3b-lite.chunk.js.LICENSE.txt → 1672-0d1fc90529-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8323-99cb03891e-lite.chunk.js.LICENSE.txt → 4273-e42f763f00-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9173-2392d447a6-lite.chunk.js.LICENSE.txt → 624-09b51a9d32-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9230-6dee40b1fb-lite.chunk.js.LICENSE.txt → 8323-360541a2a8-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9016-0c078a39cb-lite.chunk.js.LICENSE.txt → 9016-82d7e0afb9-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9308-362f86711f-lite.chunk.js.LICENSE.txt → 9230-ae200d2bd3-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9395-90b87097fa-lite.chunk.js.LICENSE.txt → 9395-e1a02b01ce-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9478-99486906b9-lite.chunk.js.LICENSE.txt → 9478-abfa7ed3cc-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{953-cbc7f0571e-lite.chunk.js.LICENSE.txt → 953-225db845ab-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9620-f1d717b02b-lite.chunk.js.LICENSE.txt → 9620-95e6cc7b2b-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9719-cf7d4172b6-lite.chunk.js.LICENSE.txt → 9719-9736913451-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-724fc2e388.min.js.LICENSE.txt → bundle-9f8729bedb.min.js.LICENSE.txt} +0 -0
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[714],{49935:(e,t,a)=>{a.d(t,{Oo:()=>u,b2:()=>d});var n=a(32735),r=a(36848),c=a(86764),s=a(3747),i=a(5859),l=a(35223),o=a(83914),m=function(e){var t=e.breadcrumb,a=t.name,c=t.appLink,s=t.active,i=e.withBackIcon;return n.createElement("li",{className:"breadcrumb-item".concat(s?" active":"")},s?n.createElement("strong",null,a):n.createElement(r.F,{appLink:c},i&&n.createElement(o.x,{svgName:l.vn.ChevronLeft,size:o.S.Small}),n.createElement("span",{className:i?"ms-2":""},a)))},u=function(e){var t=e.breadcrumbs,a=(0,s.a)(c.r.XS),r=null==t?void 0:t.length;return!r||a&&r<2?n.createElement(n.Fragment,null):a?n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},n.createElement(m,{breadcrumb:t[r-2],withBackIcon:!0}))):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},t.map((function(e,t){return n.createElement(m,{key:t,breadcrumb:e})}))))},d=n.memo((function(e){var t=e.numItems,a=void 0===t?3:t;return(0,s.a)(c.r.XS)?n.createElement("div",{className:"partial-loading-background",style:{height:"1.3125rem",width:"6rem"}}):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},i.u.getPartialLoadingItems({numItems:a}).map((function(e,t){var a=e.width;return n.createElement("li",{key:t,className:"breadcrumb-item"},n.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:a},dangerouslySetInnerHTML:{__html:" "}}))}))))}))},38502:(e,t,a)=>{a.d(t,{r:()=>u});var n=a(32735),r=a(49985),c=a(36848),s=a(18559),i=a(11607),l=a(83914),o=a(87432);function m(e){return n.createElement(n.Fragment,null,!!e.tab.svgName&&n.createElement("div",{className:e.tab.name?"pe-1":""},n.createElement(l.x,{svgName:e.tab.svgName})),e.tab.name,"number"==typeof e.tab.count&&n.createElement("div",{className:"ps-2"},n.createElement(s.C,{type:s.g.Count,data:e.tab.count})))}function u(e){var t;return n.createElement("nav",{className:null!==(t=e.className)&&void 0!==t?t:"",ref:e.containerRef},n.createElement("ul",{className:"\n list-unstyled d-inline-block m-0 ".concat(o.Z.pillTabSelector,"\n ").concat(e.borderRadius?o.Z.radiusSmall:"","\n ").concat(e.listClassName,"\n ")},e.tabs.map((function(e,t){return n.createElement("li",{className:"\n p-0 ".concat(o.Z.tab," ").concat(e.active?"btn btn-dark":"btn btn-outline-dark","\n ").concat(e.name?o.Z.minWidth:""," ").concat(e.className,"\n "),key:t},e.appLink?n.createElement(c.F,{appLink:e.appLink,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ".concat(o.Z.tabLink,"\n ")},n.createElement(m,{tab:e})):n.createElement(i.L,{className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset p-2 text-nowrap ".concat(o.Z.tabLink,"\n "),onClick:function(){return function(e){!e.active&&e.onSelect&&(e.onSelect(),e.analyticsData&&e.analyticsOptions&&r.k.logUserAction(e.analyticsData,e.analyticsOptions))}(e)}},n.createElement(m,{tab:e})))}))))}u.defaultProps={borderRadius:"lg"}},58739:(e,t,a)=>{var n;a.d(t,{K:()=>n}),function(e){e[e.Submitted=0]="Submitted",e[e.Queued=1]="Queued",e[e.Pending=2]="Pending",e[e.InProgress=3]="InProgress",e[e.Completed=4]="Completed",e[e.CompletedWithError=5]="CompletedWithError",e[e.Failed=6]="Failed"}(n||(n={}))},44538:(e,t,a)=>{a.d(t,{K:()=>i});var n=a(99940),r=a(97395),c=a(58739),s=a(38389),i={getRostering:function(){return{url:"{gateway}/v1/users/me/rostering",key:"rostering"}},getSyncList:function(e){var t={};if(e.cursor&&(t.cursor=e.cursor),e.sort&&("oldest"===e.sort?t.order="ASC":t.order="DESC"),e.jobStatus){var a=[];e.jobStatus.includes("completed")&&a.push.apply(a,[c.K.Completed,c.K.CompletedWithError]),e.jobStatus.includes("failed")&&a.push(c.K.Failed),e.jobStatus.includes("inProgress")&&a.push.apply(a,[c.K.Submitted,c.K.Queued,c.K.Pending,c.K.InProgress]),t.status=a}return t.type=s.m.Rostering,{url:r._.urlBuilder("{gateway}/v1/batch/jobs",t),key:"rostering:sync:".concat(e.cursor,":").concat(e.sort,":").concat(e.jobStatus)}},createJob:function(e,t,a){return{url:"{gateway}/v1/batch/jobs",key:"rostering:sync",type:n.k.POST,invalidationKeys:["rostering:sync"],data:e,success:t,error:a}},getJobSummary:function(e){return{url:"{gateway}/v1/batch/jobs/".concat(e,"/summary"),key:"job:summary:".concat(e)}},getSyncScheduleSettings:function(e){return{url:"{gateway}/v1/rostering/".concat(e,"/schedule"),key:"sync-settings:".concat(e)}},updateScheduleSetting:function(e,t,a,r,c){return{type:n.k.PUT,url:"{gateway}/v1/rostering/".concat(t,"/schedule"),key:"update:sync-settings:".concat(e.customerId,":").concat(t),invalidationKeys:["sync-settings:".concat(t)],data:e,success:a,error:r,always:c}}}},5859:(e,t,a)=>{function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}a.d(t,{u:()=>c});var r={numItems:5,minWidth:50,maxWidth:100},c={getPartialLoadingItems:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=Object.assign(Object.assign({},r),t);return(e=Array(a.numItems),function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?n(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(){return{width:"".concat(Math.max(Math.floor(Math.random()*a.maxWidth),a.minWidth),"px")}}))}}},96268:(e,t,a)=>{a.d(t,{W:()=>o});var n=a(32735),r=a(81886),c=a(65858),s=a(37802),i=a(14070),l=a(97291);function o(){var e=(0,s.r)(c.LZ.Settings),t=e.isLoadingSettings,a=e.domainSettings;n.useEffect((function(){t||a||r.Q.C$.trigger({application:l.O.SETTINGS,action:i.e.Settings.HOME},{replace:!0})}),[a,t])}},97990:(e,t,a)=>{a.d(t,{t:()=>p});var n=a(32735),r=a(81886),c=a(23481),s=a(65858),i=a(38502),l=a(14070),o=a(97291),m="settings.staffManagerTabs",u=c.T.encloseNamespace(m),d={staffManager:{application:o.O.USER_MANAGER,action:l.e.UserManager.STAFF},inviteRequests:{application:o.O.USER_MANAGER,action:l.e.UserManager.ACCESS_REQUESTS}};function p(e){var t=e.active;return n.createElement("div",{className:"mb-3"},n.createElement(i.r,{tabs:[{name:u("staffManager"),appLink:d.staffManager,active:"staff-manager"===t,analyticsData:{name:u("staffManager"),url:r.Q.C$.getHref(d.staffManager)},analyticsOptions:{actionType:s.Vw.Click,entity:s.py.Url,location:s.LZ.MagicTabs}},{name:u("inviteRequests"),appLink:d.inviteRequests,active:"invite-requests"===t,analyticsData:{name:c.T.getPhrase(m,"inviteRequests"),url:r.Q.C$.getHref(d.inviteRequests)},analyticsOptions:{actionType:s.Vw.Click,entity:s.py.Url,location:s.LZ.MagicTabs}}]}))}},81422:(e,t,a)=>{var n;a.d(t,{C:()=>n}),function(e){e.Approved="Approved",e.Denied="Denied",e.Pending="Pending"}(n||(n={}))},80714:(e,t,a)=>{a.r(t),a.d(t,{AccessRequestsView:()=>F});var n=a(32735),r=a(81886),c=a(23481),s=a(20354),i=a(36848),l=a(49935),o=a(83345),m=a(39151),u=a(44538),d=a(31949),p=a(14070),g=a(97291),b=a(96268),E=a(110),f=a(20789),v=a(19808),y=a(64818),S=a(23232),h=a(99742),N="userManager.inviteRequestsTableEmptyState",C=c.T.encloseNamespace(N);function k(){return n.createElement(S.u,null,n.createElement(S.u.Image,{src:h.W.EmptyStates.UserManager.STAFF}),n.createElement(S.u.Heading,null,n.createElement(o.x,{namespace:N,phrase:"heading"})),n.createElement(S.u.Info,null,n.createElement(o.x,{namespace:N,phrase:"info"})),n.createElement(S.u.Cta,{text:C("cta"),appLink:{application:g.O.SETTINGS,action:p.e.Settings.REQUESTING_ACCESS},className:"btn btn-dark"}))}var R=a(81422);const T={avatarContainer:"HxoMt",emailText:"ughCx"};var x="userManager.inviteRequestsTable";function M(e){var t=e.joinRequests,a=e.imageCdnUrl,r=e.currentUser,c=e.onResolveRequest;return t.length?n.createElement("table",{className:"w-100 table table-striped table-borderless"},n.createElement("thead",null,n.createElement("tr",null,n.createElement("th",{scope:"col",className:"ps-3"},n.createElement(o.x,{namespace:x,phrase:"nameTableHeading"})),n.createElement("th",{scope:"col"},n.createElement(o.x,{namespace:x,phrase:"dateTableHeading"})),n.createElement("th",null))),n.createElement("tbody",null,t.map((function(e){return n.createElement("tr",{key:e.id},n.createElement("td",{className:"align-middle ps-3"},n.createElement("div",{className:"d-flex align-items-center"},n.createElement("div",{className:"".concat(T.avatarContainer," me-2")},n.createElement(f.q,{imageCdnUrl:a,initials:y.l.getInitialsFromFullName(e.fullName)||e.email.charAt(0)})),n.createElement("div",{className:"d-flex flex-column justify-content-center"},e.fullName&&n.createElement("span",{className:"fw-semibold"},e.fullName),n.createElement("span",{className:"".concat(T.emailText)},e.email)))),n.createElement("td",{className:"align-middle"},E.O.format(e.dateCreated,r.instanceRegion===v.b.US?"MM/DD/YYYY":"DD/MM/YYYY")),n.createElement("td",{className:"text-end pe-3"},n.createElement("button",{className:"btn btn-tertiary me-1",onClick:function(){return c(e,R.C.Denied)}},n.createElement(o.x,{namespace:x,phrase:"rejectButtonLabel"})),n.createElement("button",{className:"btn btn-primary btn-dark",onClick:function(){return c(e,R.C.Approved)}},n.createElement(o.x,{namespace:x,phrase:"approveButtonLabel"}))))})))):n.createElement(k,null)}var A=a(97990),L=a(47288),w="userManager.accessRequests",U=c.T.encloseNamespace(w),I={application:g.O.SETTINGS,action:p.e.Settings.REQUESTING_ACCESS},O={application:g.O.SETTINGS,action:p.e.Settings.HOME};function F(){var e;(0,b.W)();var t=s.a.useBasicFetch(d.N.currentUser()),a=s.a.useBasicFetch(L.N.joinRequests()),c=s.a.useBasicFetch(m.L.config()),E=s.a.useBasicFetch(u.K.getRostering()),f=(null===(e=E.data)||void 0===e?void 0:e.status)&&"None"!==E.data.status;return n.useEffect((function(){if(E.hasCompleted&&f){var e={application:g.O.USER_MANAGER,action:p.e.UserManager.STAFF};r.Q.C$.trigger(e,{replace:!0})}}),[E.hasCompleted,f]),a.hasCompleted&&c.hasCompleted&&t.hasCompleted&&E.hasCompleted&&!f?n.createElement("div",{className:"px-3"},n.createElement("h1",{className:"h2"},n.createElement(o.x,{namespace:w,phrase:"heading"})),n.createElement("div",{className:"pb-3"},n.createElement(l.Oo,{breadcrumbs:[{name:U("settingsBreadcrumb"),appLink:O},{name:U("staffManagerBreadcrumb"),active:!0}]})),n.createElement(A.t,{active:"invite-requests"}),n.createElement("p",{className:"mb-3"},n.createElement(o.x,{namespace:w,phrase:"domainSettingsDescription"}),n.createElement("br",null),n.createElement(i.F,{appLink:I,className:"info-link"},n.createElement(o.x,{namespace:w,phrase:"domainSettingsLink"}))),n.createElement(M,{joinRequests:a.data,imageCdnUrl:c.data.imageCdnUrl,onResolveRequest:function(e,t){r.Q.C$.trigger({application:g.O.USER_MANAGER,action:p.e.UserManager.RESOLVE_ACCESS_REQUEST,args:[e.id],params:{status:t}})},currentUser:t.data})):n.createElement(n.Fragment,null)}},87432:(e,t,a)=>{a.d(t,{Z:()=>n});const n={pillTabSelector:"Hdi6o",tab:"RvNxr",minWidth:"GHSz9",radiusSmall:"VhJJa",tabLink:"WFyvo"}}}]);
|
|
2
|
-
//# sourceMappingURL=714-432082f4fa-lite.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/714-432082f4fa-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","file:///app/packages/libs/shared/src/enums/BatchJobStatus.ts","file:///app/packages/libs/shared/src/flight-requests/RosteringRequests.ts","file:///app/packages/libs/shared/src/utils/PartialLoadingHelper.ts","file:///app/packages/projects/lite/src/apps/settings/hooks/useDomainSettingsSwitch.ts","file:///app/packages/projects/lite/src/apps/user-manager/components/staff-manager-tabs/StaffManagerTabs.tsx","file:///app/packages/projects/lite/src/apps/user-manager/enums/JoinRequestStatus.ts","file:///app/packages/projects/lite/src/apps/user-manager/components/invite-requests-table/empty-state/InviteRequestsTableEmptyState.tsx","file:///app/packages/projects/lite/src/apps/user-manager/components/invite-requests-table/invite-requests-table.scss","file:///app/packages/projects/lite/src/apps/user-manager/components/invite-requests-table/InviteRequestsTable.tsx","file:///app/packages/projects/lite/src/apps/user-manager/views/invite-requests/AccessRequestsView.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/pill-tab-selector.scss"],"sourcesContent":["import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { PartialLoadingHelper } from 'libs/shared/utils/PartialLoadingHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nexport interface Breadcrumb {\n name: string;\n appLink?: Core.AppLink;\n active?: boolean;\n}\n\ninterface BreadcrumbItemProps {\n breadcrumb: Breadcrumb;\n withBackIcon?: boolean;\n}\n\nexport const BreadcrumbItem = ({ breadcrumb: { name, appLink, active }, withBackIcon }: BreadcrumbItemProps) => (\n <li className={`breadcrumb-item${active ? ' active' : ''}`}>\n {active\n ? <strong>{name}</strong>\n : <AppLink appLink={appLink}>\n {withBackIcon && <SvgContainer svgName={cvSvgLibrary.ChevronLeft} size={SvgContainerSize.Small} />}\n <span className={withBackIcon ? 'ms-2' : ''}>{name}</span>\n </AppLink>\n }\n </li>\n);\n\ninterface BreadcrumbsProps {\n breadcrumbs: Breadcrumb[];\n}\n\nexport const Breadcrumbs = ({ breadcrumbs }: BreadcrumbsProps) => {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n const length = breadcrumbs?.length;\n\n if (!length || (isMobile && length < 2))\n return <></>;\n\n if (isMobile)\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n <BreadcrumbItem breadcrumb={breadcrumbs[length - 2]} withBackIcon />\n </ol>\n </nav>\n );\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {breadcrumbs.map((b, idx) => <BreadcrumbItem key={idx} breadcrumb={b} />)}\n </ol>\n </nav>\n );\n};\n\nexport const PartialBreadcrumbs = React.memo(function({ numItems = 3 }: { numItems?: number; }) {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n if (isMobile) {\n return (\n <div className='partial-loading-background' style={{ height: '1.3125rem', width: '6rem' }} />\n );\n }\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {PartialLoadingHelper.getPartialLoadingItems({ numItems }).map(({ width }, idx) => (\n <li key={idx} className='breadcrumb-item'>\n <span className='d-inline-block partial-loading-background' style={{ width }} dangerouslySetInnerHTML={{ __html: ' ' }} />\n </li>\n ))}\n </ol>\n </nav>\n );\n});","import React from 'react';\n\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\n\nimport { SvgContainer } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svgName && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svgName={props.tab.svgName} />\n </div>\n )}\n\n {props.tab.name}\n\n {typeof (props.tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={props.tab.count} />\n </div>\n )}\n </>\n );\n}\n\nexport interface PillTab {\n name: string;\n active: boolean;\n svgName?: string;\n\n className?: string;\n\n appLink?: Core.AppLink;\n onSelect?: () => void;\n\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n\n count?: number;\n}\n\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n containerRef?: (el: HTMLElement) => void;\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg'\n}\n\nPillTabSelector.defaultProps = {\n borderRadius: 'lg'\n};\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n\n return (\n <nav className={props.className ?? ''} ref={props.containerRef}>\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${props.borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\n return (\n <li\n className={`\n p-0 ${styles.tab} ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}\n ${tab.name ? styles.minWidth : ''} ${tab.className}\n `}\n key={index}\n >\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n >\n <TabContents tab={tab} />\n </AppLink>\n ) : (\n <DivButton\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset p-2 text-nowrap ${styles.tabLink}\n `}\n onClick={() => onSelectTab(tab)}\n >\n <TabContents tab={tab} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n </nav>\n );\n}\n","export enum BatchJobStatus {\n Submitted = 0,\n Queued = 1,\n Pending = 2,\n InProgress = 3,\n Completed = 4,\n CompletedWithError = 5,\n Failed = 6\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { BulkJobsQueryParams } from 'libs/shared/components/bulk-jobs-filters/BulkJobsFilters';\nimport { BatchJobStatus } from 'libs/shared/enums/BatchJobStatus';\nimport { BatchJobType } from 'libs/shared/enums/BatchJobType';\nimport { BatchJob, ScheduleSettingRequest } from 'libs/shared/interfaces';\nimport { CreateBatchJobRequest } from 'libs/shared/interfaces';\n\nexport const RosteringRequests = {\n getRostering(): Flight.Request {\n return {\n url: `{gateway}/v1/users/me/rostering`,\n key: `rostering`\n };\n },\n\n getSyncList(queryParams: BulkJobsQueryParams): Flight.Request {\n const params: HashObject = {};\n if (queryParams.cursor)\n params.cursor = queryParams.cursor;\n\n if (queryParams.sort) {\n if (queryParams.sort === 'oldest')\n params.order = 'ASC';\n else\n params.order = 'DESC';\n }\n\n if (queryParams.jobStatus) {\n const statuses = [];\n if (queryParams.jobStatus.includes('completed')) {\n statuses.push(...[ BatchJobStatus.Completed, BatchJobStatus.CompletedWithError ]);\n }\n if (queryParams.jobStatus.includes('failed')) {\n statuses.push(BatchJobStatus.Failed);\n }\n if (queryParams.jobStatus.includes('inProgress')) {\n statuses.push(...[\n BatchJobStatus.Submitted,\n BatchJobStatus.Queued,\n BatchJobStatus.Pending,\n BatchJobStatus.InProgress ]);\n }\n params.status = statuses;\n }\n\n params.type = BatchJobType.Rostering;\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/batch/jobs', params),\n key: `rostering:sync:${queryParams.cursor}:${queryParams.sort}:${queryParams.jobStatus}`\n };\n },\n\n createJob(\n data: CreateBatchJobRequest,\n success?: (job: BatchJob) => void,\n error?: () => void\n ): Flight.Request {\n return {\n url: '{gateway}/v1/batch/jobs',\n key: 'rostering:sync',\n type: HttpVerbs.POST,\n invalidationKeys: ['rostering:sync'],\n data,\n success,\n error\n };\n },\n\n getJobSummary(id: string): Flight.Request {\n return {\n url: `{gateway}/v1/batch/jobs/${id}/summary`,\n key: `job:summary:${id}`\n };\n },\n\n getSyncScheduleSettings(integrationId: string): Flight.SimulatedRequest {\n return {\n url: `{gateway}/v1/rostering/${integrationId}/schedule`,\n key: `sync-settings:${integrationId}`\n };\n },\n\n updateScheduleSetting(\n data: ScheduleSettingRequest,\n integrationId: string,\n success?: () => void,\n error?: () => void,\n always?: () => void\n ): Flight.Request {\n return {\n type: HttpVerbs.PUT,\n url: `{gateway}/v1/rostering/${integrationId}/schedule`,\n key: `update:sync-settings:${data.customerId}:${integrationId}`,\n invalidationKeys: [`sync-settings:${integrationId}`],\n data,\n success,\n error,\n always\n };\n }\n};","const DEFAULT_PARTIAL_LOADING_OPTIONS: PartialLoadingOptions = {\n numItems: 5,\n minWidth: 50, // px\n maxWidth: 100 // px\n};\n\nexport interface PartialLoadingOptions {\n numItems?: number;\n minWidth?: number;\n maxWidth?: number;\n}\n\ninterface PartialLoadingItem {\n width: string;\n}\n\nexport const PartialLoadingHelper = {\n getPartialLoadingItems(options: PartialLoadingOptions = {}): PartialLoadingItem[] {\n const opts = {\n ...DEFAULT_PARTIAL_LOADING_OPTIONS,\n ...options\n };\n\n const getRandomFilterWidth = () => Math.max(Math.floor(Math.random() * opts.maxWidth), opts.minWidth);\n\n return [...Array(opts.numItems)].map(() => ({ width: `${getRandomFilterWidth()}px` }));\n }\n};","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { useSettings } from 'libs/shared/hooks/useSettings';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nexport function useDomainSettingsSwitch() {\n const { isLoadingSettings, domainSettings } = useSettings(LocationContext.Settings);\n\n React.useEffect(() => {\n if (isLoadingSettings)\n return;\n\n if (!domainSettings) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [ domainSettings, isLoadingSettings ]);\n}\n","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EntityType, LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { StaffManagerAppLinks } from 'apps/user-manager/interfaces/StaffManagerAppLinks';\n\nconst namespace = 'settings.staffManagerTabs';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst staffManagerAppLinks: StaffManagerAppLinks = {\n staffManager: {\n application: AppChannels.USER_MANAGER,\n action: Actions.UserManager.STAFF\n },\n inviteRequests: {\n application: AppChannels.USER_MANAGER,\n action: Actions.UserManager.ACCESS_REQUESTS\n }\n};\n\ninterface StaffManagerTabsProps {\n active: 'staff-manager' | 'invite-requests'\n}\n\nexport function StaffManagerTabs(props: StaffManagerTabsProps): JSX.Element {\n const { active } = props;\n \n return (\n <div className='mb-3'>\n <PillTabSelector\n tabs={[{\n name: getPhrase('staffManager'),\n appLink: staffManagerAppLinks.staffManager,\n active: active === 'staff-manager',\n analyticsData: {\n name: getPhrase('staffManager'),\n url: Core.AppLinkHelper.getHref(staffManagerAppLinks.staffManager)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }, {\n name: getPhrase('inviteRequests'),\n appLink: staffManagerAppLinks.inviteRequests,\n active: active === 'invite-requests',\n analyticsData: {\n name: LanguageService.getPhrase(namespace, 'inviteRequests'),\n url: Core.AppLinkHelper.getHref(staffManagerAppLinks.inviteRequests)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }]}\n />\n </div>\n );\n}","export enum JoinRequestStatus {\n Approved = 'Approved',\n Denied = 'Denied',\n Pending = 'Pending'\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { Text } from 'libs/shared/components/text/Text';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'userManager.inviteRequestsTableEmptyState';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function InviteRequestsTableEmptyState(): JSX.Element {\n return (\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.UserManager.STAFF} />\n\n <EmptyState.Heading><Text namespace={namespace} phrase='heading' /></EmptyState.Heading>\n\n <EmptyState.Info><Text namespace={namespace} phrase='info' /></EmptyState.Info>\n <EmptyState.Cta\n text={getPhrase('cta')}\n appLink={{\n application: AppChannels.SETTINGS,\n action: Actions.Settings.REQUESTING_ACCESS\n }}\n className='btn btn-dark'\n />\n </EmptyState>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"avatarContainer\":\"HxoMt\",\"emailText\":\"ughCx\"};","import React from 'react';\n\nimport { DateHelper } from 'libs/common/react/utils/DateHelper';\n\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { InstanceRegion } from 'libs/shared/enums/InstanceRegion';\nimport { CurrentUser } from 'libs/shared/interfaces';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport { InviteRequestsTableEmptyState } from 'apps/user-manager/components/invite-requests-table/empty-state/InviteRequestsTableEmptyState';\nimport { JoinRequestStatus } from 'apps/user-manager/enums/JoinRequestStatus';\nimport { JoinRequest } from 'apps/user-manager/interfaces/JoinRequest';\n\nimport styles from './invite-requests-table.scss';\n\nconst namespace = 'userManager.inviteRequestsTable';\n\ninterface InviteRequestsTableProps {\n joinRequests: JoinRequest[],\n imageCdnUrl: string,\n currentUser: CurrentUser;\n onResolveRequest: (request: JoinRequest, status: JoinRequestStatus) => void\n}\n\nexport function InviteRequestsTable(props: InviteRequestsTableProps) {\n const { joinRequests, imageCdnUrl, currentUser, onResolveRequest } = props;\n\n function getDateFormat(): string {\n if (currentUser.instanceRegion === InstanceRegion.US)\n return 'MM/DD/YYYY';\n return 'DD/MM/YYYY';\n }\n\n if (!joinRequests.length) {\n return <InviteRequestsTableEmptyState />;\n }\n\n return (\n <table className='w-100 table table-striped table-borderless'>\n <thead>\n <tr>\n <th scope='col' className='ps-3'><Text namespace={namespace} phrase='nameTableHeading' /></th>\n <th scope='col'><Text namespace={namespace} phrase='dateTableHeading' /></th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n {joinRequests.map(joinRequest => (\n <tr key={joinRequest.id}>\n <td className='align-middle ps-3'>\n <div className='d-flex align-items-center'>\n <div className={`${styles.avatarContainer} me-2`}>\n <Avatar\n imageCdnUrl={imageCdnUrl}\n initials={\n UserHelper.getInitialsFromFullName(joinRequest.fullName) || joinRequest.email.charAt(0)\n }\n />\n </div>\n <div className='d-flex flex-column justify-content-center'>\n {joinRequest.fullName && <span className='fw-semibold'>{joinRequest.fullName}</span>}\n <span className={`${styles.emailText}`}>{joinRequest.email}</span>\n </div>\n </div>\n </td>\n <td className='align-middle'>{DateHelper.format(joinRequest.dateCreated, getDateFormat())}</td>\n <td className='text-end pe-3'>\n <button\n className='btn btn-tertiary me-1'\n onClick={() => onResolveRequest(joinRequest, JoinRequestStatus.Denied)}\n >\n <Text namespace={namespace} phrase='rejectButtonLabel' />\n </button>\n <button\n className='btn btn-primary btn-dark'\n onClick={() => onResolveRequest(joinRequest, JoinRequestStatus.Approved)}\n >\n <Text namespace={namespace} phrase='approveButtonLabel' />\n </button>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/react/index';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { RosteringRequests } from 'libs/shared/flight-requests/RosteringRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { Config, CurrentUser, RosteringResponse } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useDomainSettingsSwitch } from 'apps/settings/hooks/useDomainSettingsSwitch';\nimport { InviteRequestsTable } from 'apps/user-manager/components/invite-requests-table/InviteRequestsTable';\nimport { StaffManagerTabs } from 'apps/user-manager/components/staff-manager-tabs/StaffManagerTabs';\nimport { JoinRequestStatus } from 'apps/user-manager/enums/JoinRequestStatus';\nimport { UserManagerRequests } from 'apps/user-manager/flight-requests/UserManagerRequests';\nimport { JoinRequest } from 'apps/user-manager/interfaces/JoinRequest';\n\nconst namespace = 'userManager.accessRequests';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst domainSettingsAppLink: Core.AppLink = {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.REQUESTING_ACCESS\n};\n\nconst settingsAppLink: Core.AppLink = {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n};\n\nexport function AccessRequestsView() {\n useDomainSettingsSwitch();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const joinRequests = Flight.useBasicFetch<JoinRequest[]>(UserManagerRequests.joinRequests());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const rostering = Flight.useBasicFetch<RosteringResponse>(RosteringRequests.getRostering());\n\n const hasRostering = rostering.data?.status && rostering.data.status !== 'None';\n\n React.useEffect(() => {\n // if school has rostering, redirect to staff manager\n if (rostering.hasCompleted && hasRostering) {\n const appLink = {\n application: AppChannels.USER_MANAGER,\n action: Actions.UserManager.STAFF\n };\n Core.AppLinkHelper.trigger(appLink, { replace: true });\n }\n }, [ rostering.hasCompleted, hasRostering ]);\n\n function onResolveRequest(joinRequest: JoinRequest, status: JoinRequestStatus) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.USER_MANAGER,\n action: Actions.UserManager.RESOLVE_ACCESS_REQUEST,\n args: [joinRequest.id],\n params: { status }\n });\n }\n\n const dataLoaded = !joinRequests.hasCompleted\n || !config.hasCompleted\n || !currentUser.hasCompleted\n || !rostering.hasCompleted;\n\n if (dataLoaded || hasRostering) {\n return <></>;\n }\n\n return (\n <div className='px-3'>\n <h1 className='h2'>\n <Text namespace={namespace} phrase='heading' />\n </h1>\n\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n { name: getPhrase('settingsBreadcrumb'), appLink: settingsAppLink },\n { name: getPhrase('staffManagerBreadcrumb'), active: true }\n ]}\n />\n </div>\n\n <StaffManagerTabs active='invite-requests' />\n\n <p className='mb-3'>\n <Text namespace={namespace} phrase='domainSettingsDescription' />\n <br/>\n <AppLink appLink={domainSettingsAppLink} className='info-link'>\n <Text namespace={namespace} phrase={'domainSettingsLink'}/>\n </AppLink>\n </p>\n\n <InviteRequestsTable\n joinRequests={joinRequests.data}\n imageCdnUrl={config.data.imageCdnUrl}\n onResolveRequest={onResolveRequest}\n currentUser={currentUser.data}\n />\n </div>\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"pillTabSelector\":\"Hdi6o\",\"tab\":\"RvNxr\",\"minWidth\":\"GHSz9\",\"radiusSmall\":\"VhJJa\",\"tabLink\":\"WFyvo\"};"],"names":["BreadcrumbItem","breadcrumb","name","appLink","active","withBackIcon","className","svgName","size","S","Breadcrumbs","breadcrumbs","isMobile","length","map","b","idx","key","PartialBreadcrumbs","numItems","style","height","width","dangerouslySetInnerHTML","__html","TabContents","props","tab","count","type","data","PillTabSelector","ref","containerRef","borderRadius","listClassName","tabs","index","analyticsData","analyticsOptions","onClick","onSelect","onSelectTab","defaultProps","BatchJobStatus","RosteringRequests","getRostering","url","getSyncList","queryParams","params","cursor","sort","order","jobStatus","statuses","includes","push","status","createJob","success","error","invalidationKeys","getJobSummary","id","getSyncScheduleSettings","integrationId","updateScheduleSetting","always","customerId","DEFAULT_PARTIAL_LOADING_OPTIONS","minWidth","maxWidth","PartialLoadingHelper","getPartialLoadingItems","options","opts","Array","Math","max","floor","random","useDomainSettingsSwitch","isLoadingSettings","domainSettings","application","action","replace","namespace","getPhrase","staffManagerAppLinks","staffManager","inviteRequests","StaffManagerTabs","actionType","entity","location","JoinRequestStatus","LanguageService","InviteRequestsTableEmptyState","EmptyState","src","ImageUrls","Text","phrase","text","InviteRequestsTable","joinRequests","imageCdnUrl","currentUser","onResolveRequest","scope","joinRequest","Avatar","initials","UserHelper","fullName","email","charAt","DateHelper","dateCreated","instanceRegion","InstanceRegion","domainSettingsAppLink","settingsAppLink","AccessRequestsView","UserRequests","UserManagerRequests","config","ConfigRequests","rostering","hasRostering","hasCompleted","AppLink","args"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7178],{49935:(e,t,n)=>{n.d(t,{Oo:()=>m,b2:()=>d});var r=n(32735),a=n(36848),o=n(86764),i=n(3747),l=n(5859),c=n(35223),s=n(83914),u=function(e){var t=e.breadcrumb,n=t.name,o=t.appLink,i=t.active,l=e.withBackIcon;return r.createElement("li",{className:"breadcrumb-item".concat(i?" active":"")},i?r.createElement("strong",null,n):r.createElement(a.F,{appLink:o},l&&r.createElement(s.x,{svgName:c.vn.ChevronLeft,size:s.S.Small}),r.createElement("span",{className:l?"ms-2":""},n)))},m=function(e){var t=e.breadcrumbs,n=(0,i.a)(o.r.XS),a=null==t?void 0:t.length;return!a||n&&a<2?r.createElement(r.Fragment,null):n?r.createElement("nav",{"aria-label":"breadcrumb"},r.createElement("ol",{className:"breadcrumb m-0 p-0"},r.createElement(u,{breadcrumb:t[a-2],withBackIcon:!0}))):r.createElement("nav",{"aria-label":"breadcrumb"},r.createElement("ol",{className:"breadcrumb m-0 p-0"},t.map((function(e,t){return r.createElement(u,{key:t,breadcrumb:e})}))))},d=r.memo((function(e){var t=e.numItems,n=void 0===t?3:t;return(0,i.a)(o.r.XS)?r.createElement("div",{className:"partial-loading-background",style:{height:"1.3125rem",width:"6rem"}}):r.createElement("nav",{"aria-label":"breadcrumb"},r.createElement("ol",{className:"breadcrumb m-0 p-0"},l.u.getPartialLoadingItems({numItems:n}).map((function(e,t){var n=e.width;return r.createElement("li",{key:t,className:"breadcrumb-item"},r.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:n},dangerouslySetInnerHTML:{__html:" "}}))}))))}))},41661:(e,t,n)=>{var r;n.d(t,{D:()=>r}),function(e){e.GoogleClassroom="google-classroom",e.MicrosoftTeams="microsoft-teams",e.Vivi="vivi",e.AppleTv="apply-tv"}(r||(r={}))},99705:(e,t,n)=>{var r,a;n.d(t,{b:()=>a}),function(e){e.AddToPlaylist="115005679748",e.EditSsoAccounts="8202508040345",e.LibraryEditor="360001974533",e.VideoAccess="360000153947",e.AddFromOnline="360011718234",e.UploadToLibraryEditor="360012069334",e.PBTErrorCodes="360012421153",e.ManuelReview="360020004534",e.LibraryReview="360000163788"}(r||(r={})),function(e){e.Integrations="4407268725529",e.Classrooms="4405362551833",e.MakeInteractive="4405370510873",e.EditSsoAccounts="8202605666073",e.UploadToLibraryEditor="10672936659865",e.AddFromLite="10671345281561",e.ManageSsoYearGroups="14691130889241",e.ContentReview="18525199576601",e.ContentPermissions="14692125209497",e.AccessSettings="22110291468057",e.ContentGuidelines="24133696186009",e.FoxtelFaq="24133519542169",e.ViviIntegration="23826297956377",e.AppleTvIntegration="25832373739929",e.RssFeed="32567445635097"}(a||(a={}))},40841:(e,t,n)=>{n.d(t,{_:()=>l});var r=n(23481),a=n(41661),o=n(65728),i=r.T.encloseNamespace("shared.shared-utils"),l={getShareIntegrations:function(e,t){return[{id:a.D.GoogleClassroom,name:i("googleClassroom"),enabled:e,settingName:o.E.ShareToGoogleClassroom},{id:a.D.MicrosoftTeams,name:i("msftTeams"),enabled:t,settingName:o.E.ShareToMicrosoftTeams}]}}},5859:(e,t,n)=>{function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}n.d(t,{u:()=>o});var a={numItems:5,minWidth:50,maxWidth:100},o={getPartialLoadingItems:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=Object.assign(Object.assign({},a),t);return(e=Array(n.numItems),function(e){if(Array.isArray(e))return r(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return r(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)?r(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(){return{width:"".concat(Math.max(Math.floor(Math.random()*n.maxWidth),n.minWidth),"px")}}))}}},81803:(e,t,n)=>{n.d(t,{d:()=>p});var r=n(32735),a=n(81886),o=n(23481),i=n(49935),l=n(22902),c=n(14070),s=n(97291),u=n(96368);function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var d="settings.settingsLayout",g=function(e){var t=(0,l.T)().hasPermissions,n=(0,u.e)();if(e)return t(e);var r=a.Q.C$.getCurrentAppLink();return r.application!==s.O.SETTINGS||n.some((function(e){return e.modules.some((function(e){return"appLink"in e&&e.appLink.action===r.action}))}))};function p(e){var t,n=g(e.requiredPermissions);if(r.useEffect((function(){n||a.Q.C$.trigger({application:s.O.SETTINGS,action:c.e.Settings.HOME},{replace:!0})}),[n]),!n)return r.createElement(r.Fragment,null);var l,u=e.breadcrumbs.map((function(t,n){return{name:t,appLink:{application:s.O.SETTINGS,action:c.e.Settings.HOME},active:n===e.breadcrumbs.length-1}}));return r.createElement("div",{className:"px-3"},r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("h1",{className:"h2"},e.heading),null===(t=e.headingButton)||void 0===t?void 0:t.call(e)),r.createElement("div",{className:"pb-3"},r.createElement(i.Oo,{breadcrumbs:[{name:o.T.getPhrase(d,"settingsBreadcrumb"),appLink:{application:s.O.SETTINGS,action:c.e.Settings.HOME}}].concat((l=u,function(e){if(Array.isArray(e))return m(e)}(l)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(l)||function(e,t){if(e){if("string"==typeof e)return m(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)?m(e,t):void 0}}(l)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))})),e.description&&r.createElement(r.Fragment,null,r.createElement("p",null,e.description),r.createElement("hr",null)),e.children)}},27178:(e,t,n)=>{n.r(t),n.d(t,{IntegrationSettingsView:()=>Z});var r=n(32735),a=n(23481),o=n(20354),i=n(65858),l=n(41661),c=n(33514),s=n(77963),u=n(65728),m=n(39151),d=n(2744),g=n(31949),p=n(69883),f=n(37802),b=n(40841),v=n(14070),y=n(97291),E=n(81886),h=n(11607),S=n(83914),I=n(83523),T=n(99705),C=n(12778),N=n(35223),A=n(99742);const k={integrationIcon:"bqV8U",googleClassroomIconContainer:"Rl7gP",viviIconContainer:"qCgv4",appleTvIconContainer:"ASg8C",headerContainer:"GmPjw",statusIndicator:"_2Tuy",connectedStatusIndicator:"Q9uug",notConnectedStatusIndicator:"kn43h",reconnectStatusIndicator:"Kx6Vr"};function w(e){return w="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},w(e)}function L(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function j(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=w(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=w(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==w(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var O=a.T.encloseNamespace("settings.integrationToggle"),x=j(j(j(j({},l.D.GoogleClassroom,A.W.Integrations.GoogleClassroom),l.D.MicrosoftTeams,A.W.Integrations.MicrosoftTeams),l.D.Vivi,A.W.Integrations.Vivi),l.D.AppleTv,A.W.Integrations.AppleTV),P=j(j(j({},l.D.GoogleClassroom,k.googleClassroomIconContainer),l.D.Vivi,k.viviIconContainer),l.D.AppleTv,k.appleTvIconContainer),M=j(j(j(j({},l.D.GoogleClassroom,T.b.Integrations),l.D.MicrosoftTeams,T.b.Integrations),l.D.Vivi,T.b.ViviIntegration),l.D.AppleTv,T.b.AppleTvIntegration);function V(e){var t,n,a,o=(n=r.useState(e.integration.enabled),a=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 r,a,o,i,l=[],c=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(n,a)||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}}(n,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],l=o[1];r.useEffect((function(){l(e.integration.enabled)}),[e.updateError]);var s=x[e.integration.id],u=null!==(t=P[e.integration.id])&&void 0!==t?t:"",m=e.integration.status,d=m&&m!==c.I.Connected;return r.createElement("div",{className:"border rounded-3"},r.createElement("div",{className:"position-relative d-flex align-items-center justify-content-center py-4 rounded-top ".concat(u)},r.createElement(F,{status:m,configureTooltip:e.integration.configureTooltip,configureAppLink:e.integration.configureAppLink}),r.createElement("img",{src:s,className:k.integrationIcon})),r.createElement("div",{className:"border-top p-2"},r.createElement("div",{className:"d-flex align-items-center justify-content-between"},r.createElement("span",{className:"me-2"},e.integration.name),r.createElement(I.Z,{onClick:function(){e.onToggleIntegration(e.integration,!i),l(!i)},on:i,disabled:d})),r.createElement("div",null,r.createElement("a",{href:C.o.getLiteArticle(M[e.integration.id]),target:"_blank",className:"text-info"},O("learnMore")))))}var D=j(j(j({},c.I.Connected,k.connectedStatusIndicator),c.I.NotConnected,k.notConnectedStatusIndicator),c.I.Reconnect,k.reconnectStatusIndicator),G=j(j(j({},c.I.Connected,O("connectedStatusLabel")),c.I.NotConnected,O("notConnectedStatusLabel")),c.I.Reconnect,O("reconnectStatusLabel"));function F(e){var t,n,a=e.status,o=e.configureTooltip,i=e.configureAppLink,l=null!==(t=D[a])&&void 0!==t?t:"",c=null!==(n=G[a])&&void 0!==n?n:"";return r.createElement("div",{className:"d-flex justify-content-between align-items-top position-absolute ps-2 pt-1 pe-1 ".concat(k.headerContainer)},r.createElement("div",{className:"d-flex flex-row align-items-center"},l&&r.createElement("span",{className:"inline-block ".concat(k.statusIndicator," ").concat(l)}),c&&r.createElement("span",{className:"ms-1 text-white"},c)),i&&r.createElement(h.L,{className:"cursor-pointer text-white",onClick:function(e){e.stopPropagation(),e.preventDefault(),E.Q.C$.trigger(i)}},r.createElement(S.x,{size:S.S.Medium,svgName:N.vn.Cog,title:o,tooltipPlacement:"top",tooltipSpanHack:!0})))}var _=n(81803);const R={partialToggle:"p5int"};function B(e){return r.createElement("div",{className:e.className},r.createElement("div",{className:"border rounded-3 partial-loading-background ".concat(R.partialToggle)}," "))}function U(e){return r.createElement(r.Fragment,null,r.createElement(B,{className:e.className}),r.createElement(B,{className:e.className}))}const W={toggleContainer:"roVyL"};function H(e){return H="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},H(e)}function $(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function q(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=H(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=H(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==H(t)?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Q=a.T.encloseNamespace("settings.integrationSettings"),z=q(q(q({},c.I.Connected,Q("viviConnectedStatusTooltip")),c.I.NotConnected,Q("viviNotConnectedStatusTooltip")),c.I.Reconnect,Q("viviReconnectStatusTooltip"));function Z(){var e,t,n,a,c=(n=r.useState({}),a=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 r,a,o,i,l=[],c=!0,s=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=o.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(e){s=!0,a=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw a}}return l}}(n,a)||function(e,t){if(e){if("string"==typeof e)return $(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$(e,t):void 0}}(n,a)||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.")}()),E=c[0],h=c[1],S=(0,p.Z)(),I=o.a.useBasicFetch(g.N.currentUser()),T=o.a.useBasicFetch(m.L.config()),C=o.a.useBasicFetch((null===(e=I.data)||void 0===e?void 0:e.isAuthenticated)&&d.z.getViviIntegrationStatus()),N=(0,f.r)(i.LZ.Settings),A=N.shareToGoogleClassroom,k=N.shareToMicrosoftTeams,w=N.hasEnabledAppleTvPlayback,L=N.hasEnabledViviPlayback,j=N.updateSetting,O=N.isLoadingSettings,x=b._.getShareIntegrations(A,k),P=[{id:l.D.AppleTv,name:Q("appleTv"),settingName:u.E.HasEnabledAppleTvPlayback,configureAppLink:{application:y.O.SETTINGS,action:v.e.Settings.APPLE_TV},configureTooltip:Q("appleTvTooltip"),enabled:w},{id:l.D.Vivi,name:Q("vivi"),settingName:u.E.HasEnabledViviPlayback,configureAppLink:{application:y.O.SETTINGS,action:v.e.Settings.VIVI},configureTooltip:null!==(t=z[C.data])&&void 0!==t?t:"",enabled:L,status:C.data}],M=!!I.data&&!!T.data&&C.hasCompleted&&!O,D=P.length>0;function G(e,t){var n=t?"enableIntegrationSuccess":"disableIntegrationSuccess",r=t?"enableIntegrationError":"disableIntegrationError",a={name:e.settingName,value:t,kind:s.g.Temporary};j(I.data.customerId,a,(function(){S.success(Q(n,{integrationName:e.name,escapeText:!0})),h((function(t){return Object.assign(Object.assign({},t),q({},e.name,!1))}))}),(function(){S.error(Q(r,{integrationName:e.name,escapeText:!0})),h((function(t){return Object.assign(Object.assign({},t),q({},e.name,!0))}))}))}return r.createElement(_.d,{heading:Q("integrations"),breadcrumbs:[Q("integrations")]},r.createElement("h2",{className:"h4"},Q("shareIntegrations")),r.createElement("p",{className:"mb-0"},Q("shareIntegrationsDescription")),r.createElement("div",{className:"mx-n2"},M?x.map((function(e,t){var n;return r.createElement("div",{key:t,className:"d-inline-block p-2 ".concat(W.toggleContainer)},r.createElement(V,{integration:e,onToggleIntegration:G,updateError:null!==(n=E[e.name])&&void 0!==n&&n,userCountryCode:I.data.countryCode}))})):r.createElement(U,{className:"d-inline-block p-2 ".concat(W.toggleContainer)})),D&&r.createElement(r.Fragment,null,r.createElement("h2",{className:"h4 mt-3"},Q("playerIntegrations")),r.createElement("p",{className:"mb-0"},Q("playerIntegrationsDescription")),r.createElement("div",{className:"mx-n2"},M?P.map((function(e,t){var n;return r.createElement("div",{key:t,className:"d-inline-block p-2 ".concat(W.toggleContainer)},r.createElement(V,{integration:e,onToggleIntegration:G,updateError:null!==(n=E[e.name])&&void 0!==n&&n,userCountryCode:I.data.countryCode}))})):r.createElement(U,{className:"d-inline-block p-2 ".concat(W.toggleContainer)}))))}}}]);
|
|
2
|
-
//# sourceMappingURL=7178-e603ea6b58-lite.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/7178-e603ea6b58-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx","file:///app/packages/libs/shared/src/enums/IntegrationId.ts","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/libs/shared/src/utils/IntegrationHelper.ts","file:///app/packages/libs/shared/src/utils/PartialLoadingHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/components/integration-toggle/integration-toggle.scss","file:///app/packages/projects/lite/src/apps/settings/components/integration-toggle/IntegrationToggle.tsx","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/partial-loading/partial-integration-settings.scss","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/partial-loading/PartialIntegrationSettings.tsx","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/integration-settings.scss","file:///app/packages/projects/lite/src/apps/settings/views/integration-settings/IntegrationSettingsView.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { PartialLoadingHelper } from 'libs/shared/utils/PartialLoadingHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nexport interface Breadcrumb {\n name: string;\n appLink?: Core.AppLink;\n active?: boolean;\n}\n\ninterface BreadcrumbItemProps {\n breadcrumb: Breadcrumb;\n withBackIcon?: boolean;\n}\n\nexport const BreadcrumbItem = ({ breadcrumb: { name, appLink, active }, withBackIcon }: BreadcrumbItemProps) => (\n <li className={`breadcrumb-item${active ? ' active' : ''}`}>\n {active\n ? <strong>{name}</strong>\n : <AppLink appLink={appLink}>\n {withBackIcon && <SvgContainer svgName={cvSvgLibrary.ChevronLeft} size={SvgContainerSize.Small} />}\n <span className={withBackIcon ? 'ms-2' : ''}>{name}</span>\n </AppLink>\n }\n </li>\n);\n\ninterface BreadcrumbsProps {\n breadcrumbs: Breadcrumb[];\n}\n\nexport const Breadcrumbs = ({ breadcrumbs }: BreadcrumbsProps) => {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n const length = breadcrumbs?.length;\n\n if (!length || (isMobile && length < 2))\n return <></>;\n\n if (isMobile)\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n <BreadcrumbItem breadcrumb={breadcrumbs[length - 2]} withBackIcon />\n </ol>\n </nav>\n );\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {breadcrumbs.map((b, idx) => <BreadcrumbItem key={idx} breadcrumb={b} />)}\n </ol>\n </nav>\n );\n};\n\nexport const PartialBreadcrumbs = React.memo(function({ numItems = 3 }: { numItems?: number; }) {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n if (isMobile) {\n return (\n <div className='partial-loading-background' style={{ height: '1.3125rem', width: '6rem' }} />\n );\n }\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {PartialLoadingHelper.getPartialLoadingItems({ numItems }).map(({ width }, idx) => (\n <li key={idx} className='breadcrumb-item'>\n <span className='d-inline-block partial-loading-background' style={{ width }} dangerouslySetInnerHTML={{ __html: ' ' }} />\n </li>\n ))}\n </ol>\n </nav>\n );\n});","export enum IntegrationId {\n GoogleClassroom = 'google-classroom',\n MicrosoftTeams = 'microsoft-teams',\n Vivi = 'vivi',\n AppleTv = 'apply-tv'\n}","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '22110291468057',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097'\n}\n","import { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { Integration } from 'libs/shared/interfaces';\n\nconst namespace = 'shared.shared-utils';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport const IntegrationHelper = {\n getShareIntegrations(googleClassroomSetting: boolean, msftTeamsSetting: boolean): Integration[] {\n return [\n {\n id: IntegrationId.GoogleClassroom,\n name: getPhrase('googleClassroom'),\n enabled: googleClassroomSetting,\n settingName: SettingName.ShareToGoogleClassroom\n },\n {\n id: IntegrationId.MicrosoftTeams,\n name: getPhrase('msftTeams'),\n enabled: msftTeamsSetting,\n settingName: SettingName.ShareToMicrosoftTeams\n }\n ];\n }\n};\n","const DEFAULT_PARTIAL_LOADING_OPTIONS: PartialLoadingOptions = {\n numItems: 5,\n minWidth: 50, // px\n maxWidth: 100 // px\n};\n\nexport interface PartialLoadingOptions {\n numItems?: number;\n minWidth?: number;\n maxWidth?: number;\n}\n\ninterface PartialLoadingItem {\n width: string;\n}\n\nexport const PartialLoadingHelper = {\n getPartialLoadingItems(options: PartialLoadingOptions = {}): PartialLoadingItem[] {\n const opts = {\n ...DEFAULT_PARTIAL_LOADING_OPTIONS,\n ...options\n };\n\n const getRandomFilterWidth = () => Math.max(Math.floor(Math.random() * opts.maxWidth), opts.minWidth);\n\n return [...Array(opts.numItems)].map(() => ({ width: `${getRandomFilterWidth()}px` }));\n }\n};","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"integrationIcon\":\"bqV8U\",\"googleClassroomIconContainer\":\"Rl7gP\",\"viviIconContainer\":\"qCgv4\",\"appleTvIconContainer\":\"ASg8C\",\"headerContainer\":\"GmPjw\",\"statusIndicator\":\"_2Tuy\",\"connectedStatusIndicator\":\"Q9uug\",\"notConnectedStatusIndicator\":\"kn43h\",\"reconnectStatusIndicator\":\"Kx6Vr\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { ToggleSwitch } from 'libs/shared/components/toggle-switch/ToggleSwitch';\nimport { CountryCode } from 'libs/shared/enums/CountryCode';\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { IntegrationStatus } from 'libs/shared/enums/IntegrationStatus';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { Integration } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport styles from './integration-toggle.scss';\n\nconst namespace = 'settings.integrationToggle';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ntype IntegrationLookup = {\n [key in IntegrationId]?: string;\n}\n\nconst IntegrationIconImageUrls: IntegrationLookup = {\n [IntegrationId.GoogleClassroom]: ImageUrls.Integrations.GoogleClassroom,\n [IntegrationId.MicrosoftTeams]: ImageUrls.Integrations.MicrosoftTeams,\n [IntegrationId.Vivi]: ImageUrls.Integrations.Vivi,\n [IntegrationId.AppleTv]: ImageUrls.Integrations.AppleTV\n};\n\nconst IconContainerClassNames: IntegrationLookup = {\n [IntegrationId.GoogleClassroom]: styles.googleClassroomIconContainer,\n [IntegrationId.Vivi]: styles.viviIconContainer,\n [IntegrationId.AppleTv]: styles.appleTvIconContainer\n};\n\nconst IntregrationArticles = {\n [IntegrationId.GoogleClassroom]: LiteSupportArticle.Integrations,\n [IntegrationId.MicrosoftTeams]: LiteSupportArticle.Integrations,\n [IntegrationId.Vivi]: LiteSupportArticle.ViviIntegration,\n [IntegrationId.AppleTv]: LiteSupportArticle.AppleTvIntegration\n};\n\ninterface IntegrationToggleProps {\n integration: Integration;\n onToggleIntegration: (integration: Integration, enable: boolean) => void;\n updateError: boolean;\n userCountryCode: CountryCode;\n}\n\nexport function IntegrationToggle(props: IntegrationToggleProps): JSX.Element {\n // Store enabled in local state so the toggle updated immediately\n const [ enabled, setEnabled ] = React.useState(props.integration.enabled);\n\n /**\n * Resync enabled with api value if there is an error\n */\n React.useEffect(() => {\n setEnabled(props.integration.enabled);\n }, [props.updateError]);\n\n const imageUrl = IntegrationIconImageUrls[props.integration.id];\n const containerClassName = IconContainerClassNames[props.integration.id] ?? '';\n const status = props.integration.status;\n const disabled = status && status !== IntegrationStatus.Connected;\n\n return (\n <div className='border rounded-3'>\n <div className={`position-relative d-flex align-items-center justify-content-center py-4 rounded-top ${containerClassName}`}>\n <IntegrationToggleHeader\n status={status}\n configureTooltip={props.integration.configureTooltip}\n configureAppLink={props.integration.configureAppLink}\n />\n <img src={imageUrl} className={styles.integrationIcon} />\n </div>\n <div className='border-top p-2'>\n <div className='d-flex align-items-center justify-content-between'>\n <span className='me-2'>\n {props.integration.name}\n </span>\n <ToggleSwitch\n onClick={() => {\n props.onToggleIntegration(props.integration, !enabled);\n setEnabled(!enabled);\n }}\n on={enabled}\n disabled={disabled}\n />\n </div>\n <div>\n <a\n href={ArticleHelper.getLiteArticle(IntregrationArticles[props.integration.id])}\n target='_blank'\n className='text-info'\n >\n {getPhrase('learnMore')}\n </a>\n </div>\n </div>\n </div>\n );\n}\n\ntype StatusLookup = {\n [key in IntegrationStatus]?: string;\n}\n\nconst StatusIndicatorClassNames: StatusLookup = {\n [IntegrationStatus.Connected]: styles.connectedStatusIndicator,\n [IntegrationStatus.NotConnected]: styles.notConnectedStatusIndicator,\n [IntegrationStatus.Reconnect]: styles.reconnectStatusIndicator\n};\n\nconst StatusIndicatorLabels: StatusLookup = {\n [IntegrationStatus.Connected]: getPhrase('connectedStatusLabel'),\n [IntegrationStatus.NotConnected]: getPhrase('notConnectedStatusLabel'),\n [IntegrationStatus.Reconnect]: getPhrase('reconnectStatusLabel')\n};\n\ninterface IntegrationToggleHeaderProps {\n status?: IntegrationStatus;\n configureTooltip?: string;\n configureAppLink?: Core.AppLink;\n}\n\nfunction IntegrationToggleHeader({\n status,\n configureTooltip,\n configureAppLink\n}: IntegrationToggleHeaderProps): JSX.Element {\n function onClickConfigure(e: React.MouseEvent): void {\n e.stopPropagation();\n e.preventDefault();\n\n Core.AppLinkHelper.trigger(configureAppLink);\n }\n\n const statusIndicatorClassName = StatusIndicatorClassNames[status] ?? '';\n const statusLabel = StatusIndicatorLabels[status] ?? '';\n\n return (\n <div className={`d-flex justify-content-between align-items-top position-absolute ps-2 pt-1 pe-1 ${styles.headerContainer}`}>\n <div className='d-flex flex-row align-items-center'>\n { statusIndicatorClassName && <span className={`inline-block ${styles.statusIndicator} ${statusIndicatorClassName}`} /> }\n { statusLabel && <span className={`ms-1 text-white`}>{statusLabel}</span> }\n </div>\n { configureAppLink && (\n <DivButton className={`cursor-pointer text-white`} onClick={onClickConfigure}>\n <SvgContainer\n size={SvgContainerSize.Medium}\n svgName={cvSvgLibrary.Cog}\n title={configureTooltip}\n tooltipPlacement='top'\n tooltipSpanHack\n />\n </DivButton>\n )}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"partialToggle\":\"p5int\"};","import React from 'react';\n\nimport styles from './partial-integration-settings.scss';\n\ninterface PartialIntegrationToggleProps {\n className: string;\n}\n\nfunction PartialIntegrationToggle(props: PartialIntegrationToggleProps): JSX.Element {\n return (\n <div className={props.className}>\n <div className={`border rounded-3 partial-loading-background ${styles.partialToggle}`}>\n \n </div>\n </div>\n );\n}\n\ninterface PartialIntegrationSettingsProps {\n className: string;\n}\n\nexport function PartialIntegrationSettings(props: PartialIntegrationSettingsProps): JSX.Element {\n return (\n <>\n <PartialIntegrationToggle className={props.className} />\n <PartialIntegrationToggle className={props.className} />\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"toggleContainer\":\"roVyL\"};","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { IntegrationId } from 'libs/shared/enums/IntegrationId';\nimport { IntegrationStatus } from 'libs/shared/enums/IntegrationStatus';\nimport { SettingKind } from 'libs/shared/enums/SettingKind';\nimport { SettingName } from 'libs/shared/enums/SettingName';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { PlayerIntegrationsRequests } from 'libs/shared/flight-requests/PlayerIntegrationsRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useSettings } from 'libs/shared/hooks/useSettings';\nimport { Config, CurrentUser, Integration } from 'libs/shared/interfaces';\nimport { IntegrationHelper } from 'libs/shared/utils/IntegrationHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { IntegrationToggle } from 'apps/settings/components/integration-toggle/IntegrationToggle';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\n\nimport { PartialIntegrationSettings } from './partial-loading/PartialIntegrationSettings';\n\nimport styles from './integration-settings.scss';\n\nconst namespace = 'settings.integrationSettings';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst viviTooltipPhrases = {\n [IntegrationStatus.Connected]: getPhrase('viviConnectedStatusTooltip'),\n [IntegrationStatus.NotConnected]: getPhrase('viviNotConnectedStatusTooltip'),\n [IntegrationStatus.Reconnect]: getPhrase('viviReconnectStatusTooltip')\n};\n\nexport function IntegrationSettingsView(): JSX.Element {\n /**\n * IntegrationToggle will blindly update the UI before the api call is returned so we need a way\n * to let if know if there is an error updating the setting\n */\n const [ updateErrors, setUpdateErrors ] = React.useState<{ [integrationName: string ]: boolean}>({});\n\n const alerts = useAlerts();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const viviStatus = Flight.useBasicFetch<IntegrationStatus>(\n currentUser.data?.isAuthenticated && PlayerIntegrationsRequests.getViviIntegrationStatus()\n );\n\n const {\n shareToGoogleClassroom,\n shareToMicrosoftTeams,\n hasEnabledAppleTvPlayback,\n hasEnabledViviPlayback,\n updateSetting,\n isLoadingSettings\n } = useSettings(LocationContext.Settings);\n\n const shareIntegrations = IntegrationHelper.getShareIntegrations(shareToGoogleClassroom, shareToMicrosoftTeams);\n\n const playerIntegrations = [\n {\n id: IntegrationId.AppleTv,\n name: getPhrase('appleTv'),\n settingName: SettingName.HasEnabledAppleTvPlayback,\n configureAppLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.APPLE_TV\n },\n configureTooltip: getPhrase('appleTvTooltip'),\n enabled: hasEnabledAppleTvPlayback\n },\n {\n id: IntegrationId.Vivi,\n name: getPhrase('vivi'),\n settingName: SettingName.HasEnabledViviPlayback,\n configureAppLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIVI\n },\n configureTooltip: viviTooltipPhrases[viviStatus.data] ?? '',\n enabled: hasEnabledViviPlayback,\n status: viviStatus.data\n }\n ];\n\n const dataLoaded = !!currentUser.data &&\n !!config.data &&\n viviStatus.hasCompleted &&\n !isLoadingSettings;\n\n const showPlayerIntegrations = playerIntegrations.length > 0;\n\n function onToggleIntegration(integration: Integration, enable: boolean): void {\n const successPhraseKey = enable ? 'enableIntegrationSuccess' : 'disableIntegrationSuccess';\n const errorPhraseKey = enable ? 'enableIntegrationError' : 'disableIntegrationError';\n\n function success(): void {\n alerts.success(getPhrase(successPhraseKey, { integrationName: integration.name, escapeText: true })),\n setUpdateErrors(errors => ({ ...errors, [integration.name]: false }));\n }\n\n function error(): void {\n alerts.error(getPhrase(errorPhraseKey, { integrationName: integration.name, escapeText: true })),\n setUpdateErrors(errors => ({ ...errors, [integration.name]: true }));\n }\n\n const newSetting = {\n name: integration.settingName,\n value: enable,\n kind: SettingKind.Temporary\n };\n\n updateSetting(currentUser.data.customerId, newSetting, success, error);\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('integrations')}\n breadcrumbs={[getPhrase('integrations')]}\n >\n <h2 className='h4'>{getPhrase('shareIntegrations')}</h2>\n <p className='mb-0'>{getPhrase('shareIntegrationsDescription')}</p>\n <div className='mx-n2'>\n {dataLoaded\n ? shareIntegrations.map((integration, index) => (\n <div key={index} className={`d-inline-block p-2 ${styles.toggleContainer}`}>\n <IntegrationToggle\n integration={integration}\n onToggleIntegration={onToggleIntegration}\n updateError={updateErrors[integration.name] ?? false}\n userCountryCode={currentUser.data.countryCode}\n />\n </div>\n ))\n : <PartialIntegrationSettings className={`d-inline-block p-2 ${styles.toggleContainer}`} />\n }\n </div>\n\n {showPlayerIntegrations && (\n <>\n <h2 className='h4 mt-3'>{getPhrase('playerIntegrations')}</h2>\n <p className='mb-0'>{getPhrase('playerIntegrationsDescription')}</p>\n <div className='mx-n2'>\n {dataLoaded\n ? playerIntegrations.map((integration, index) => (\n <div key={index} className={`d-inline-block p-2 ${styles.toggleContainer}`}>\n <IntegrationToggle\n integration={integration}\n onToggleIntegration={onToggleIntegration}\n updateError={updateErrors[integration.name] ?? false}\n userCountryCode={currentUser.data.countryCode}\n />\n </div>\n ))\n : <PartialIntegrationSettings className={`d-inline-block p-2 ${styles.toggleContainer}`} />\n }\n </div>\n </>\n )}\n </SettingsLayout>\n );\n}"],"names":["BreadcrumbItem","breadcrumb","name","appLink","active","withBackIcon","className","svgName","size","S","Breadcrumbs","breadcrumbs","isMobile","length","map","b","idx","key","PartialBreadcrumbs","numItems","style","height","width","dangerouslySetInnerHTML","__html","IntegrationId","OnlineSupportArticle","LiteSupportArticle","getPhrase","IntegrationHelper","getShareIntegrations","googleClassroomSetting","msftTeamsSetting","id","enabled","settingName","DEFAULT_PARTIAL_LOADING_OPTIONS","minWidth","maxWidth","PartialLoadingHelper","getPartialLoadingItems","options","opts","Array","Math","max","floor","random","namespace","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","application","some","group","modules","settingsModule","action","SettingsLayout","props","canAccess","replace","i","heading","headingButton","description","children","LanguageService","IntegrationIconImageUrls","ImageUrls","IconContainerClassNames","IntregrationArticles","IntegrationToggle","integration","setEnabled","updateError","imageUrl","containerClassName","status","disabled","IntegrationStatus","I","IntegrationToggleHeader","configureTooltip","configureAppLink","src","ToggleSwitch","onClick","onToggleIntegration","on","href","ArticleHelper","target","StatusIndicatorClassNames","StatusIndicatorLabels","statusIndicatorClassName","statusLabel","DivButton","e","stopPropagation","preventDefault","SvgContainer","title","tooltipPlacement","tooltipSpanHack","PartialIntegrationToggle","PartialIntegrationSettings","viviTooltipPhrases","IntegrationSettingsView","updateErrors","setUpdateErrors","alerts","currentUser","UserRequests","config","ConfigRequests","viviStatus","data","isAuthenticated","PlayerIntegrationsRequests","useSettings","shareToGoogleClassroom","shareToMicrosoftTeams","hasEnabledAppleTvPlayback","hasEnabledViviPlayback","updateSetting","isLoadingSettings","shareIntegrations","playerIntegrations","SettingName","dataLoaded","hasCompleted","showPlayerIntegrations","enable","successPhraseKey","errorPhraseKey","newSetting","value","kind","SettingKind","customerId","success","integrationName","escapeText","errors","error","index","userCountryCode","countryCode"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7223],{49935:(e,t,a)=>{a.d(t,{Oo:()=>u,b2:()=>d});var n=a(32735),r=a(36848),i=a(86764),c=a(3747),s=a(5859),o=a(35223),l=a(83914),m=function(e){var t=e.breadcrumb,a=t.name,i=t.appLink,c=t.active,s=e.withBackIcon;return n.createElement("li",{className:"breadcrumb-item".concat(c?" active":"")},c?n.createElement("strong",null,a):n.createElement(r.F,{appLink:i},s&&n.createElement(l.x,{svgName:o.vn.ChevronLeft,size:l.S.Small}),n.createElement("span",{className:s?"ms-2":""},a)))},u=function(e){var t=e.breadcrumbs,a=(0,c.a)(i.r.XS),r=null==t?void 0:t.length;return!r||a&&r<2?n.createElement(n.Fragment,null):a?n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},n.createElement(m,{breadcrumb:t[r-2],withBackIcon:!0}))):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},t.map((function(e,t){return n.createElement(m,{key:t,breadcrumb:e})}))))},d=n.memo((function(e){var t=e.numItems,a=void 0===t?3:t;return(0,c.a)(i.r.XS)?n.createElement("div",{className:"partial-loading-background",style:{height:"1.3125rem",width:"6rem"}}):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},s.u.getPartialLoadingItems({numItems:a}).map((function(e,t){var a=e.width;return n.createElement("li",{key:t,className:"breadcrumb-item"},n.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:a},dangerouslySetInnerHTML:{__html:" "}}))}))))}))},38502:(e,t,a)=>{a.d(t,{r:()=>u});var n=a(32735),r=a(49985),i=a(36848),c=a(18559),s=a(11607),o=a(83914),l=a(87432);function m(e){return n.createElement(n.Fragment,null,!!e.tab.svgName&&n.createElement("div",{className:e.tab.name?"pe-1":""},n.createElement(o.x,{svgName:e.tab.svgName})),e.tab.name,"number"==typeof e.tab.count&&n.createElement("div",{className:"ps-2"},n.createElement(c.C,{type:c.g.Count,data:e.tab.count})))}function u(e){var t;return n.createElement("nav",{className:null!==(t=e.className)&&void 0!==t?t:"",ref:e.containerRef},n.createElement("ul",{className:"\n list-unstyled d-inline-block m-0 ".concat(l.Z.pillTabSelector,"\n ").concat(e.borderRadius?l.Z.radiusSmall:"","\n ").concat(e.listClassName,"\n ")},e.tabs.map((function(e,t){return n.createElement("li",{className:"\n p-0 ".concat(l.Z.tab," ").concat(e.active?"btn btn-dark":"btn btn-outline-dark","\n ").concat(e.name?l.Z.minWidth:""," ").concat(e.className,"\n "),key:t},e.appLink?n.createElement(i.F,{appLink:e.appLink,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ".concat(l.Z.tabLink,"\n ")},n.createElement(m,{tab:e})):n.createElement(s.L,{className:"\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset p-2 text-nowrap ".concat(l.Z.tabLink,"\n "),onClick:function(){return function(e){!e.active&&e.onSelect&&(e.onSelect(),e.analyticsData&&e.analyticsOptions&&r.k.logUserAction(e.analyticsData,e.analyticsOptions))}(e)}},n.createElement(m,{tab:e})))}))))}u.defaultProps={borderRadius:"lg"}},74696:(e,t,a)=>{a.d(t,{S:()=>l});var n=a(32735),r=a(68050),i=a(69111),c=a(9977),s=a(79967);const o={partialOptions:"Gufgq",partialName:"SicQQ",partialDescription:"dPGMq",partialThumbnail:"vZrnb",partialDragHandle:"iq73R"};function l(e){return n.createElement("div",{className:"mx-2"},Array(e.numVideos).fill(null).map((function(t,a){return n.createElement("div",{className:"d-flex",key:a},e.allowBulkActions&&n.createElement("div",{className:"form-check pe-3 pe-sm-2 mx-0 mx-md-2"}),n.createElement(m,Object.assign({},e)))})))}function m(e){var t=(0,s.k)(),a="sm"===c.O.getSize(t,"md"),l=e.withReordering&&!t.xs;return n.createElement(r.Z,{className:"".concat(a?"":"py-2"," flex-grow-1")},n.createElement(i.Z,Object.assign({},c.O.getThumbnailColumns(),{className:"flex-column align-items-flex-start ".concat(a?"pb-2 pe-1":"mb-1 pe-3 pe-md-2")}),n.createElement(r.Z,null,!!l&&n.createElement("div",{className:"d-flex align-items-center justify-content-center col-2"},n.createElement("div",{className:"partial-loading-background ".concat(o.partialDragHandle)})),n.createElement(i.Z,{xs:c.O.getThumbnailColSize(l)},n.createElement("div",{className:"partial-loading-background ".concat(a?"rounded":"rounded-3"," ").concat(o.partialThumbnail)})))),n.createElement(i.Z,Object.assign({},c.O.getDetailsColumns(),{className:a?"pb-2":"px-2"}),n.createElement("div",{className:"partial-loading-background mb-1 ".concat(o.partialName)}),n.createElement("div",{className:"partial-loading-background ".concat(o.partialDescription)})))}l.defaultProps={numVideos:15}},99705:(e,t,a)=>{var n,r;a.d(t,{b:()=>r}),function(e){e.AddToPlaylist="115005679748",e.EditSsoAccounts="8202508040345",e.LibraryEditor="360001974533",e.VideoAccess="360000153947",e.AddFromOnline="360011718234",e.UploadToLibraryEditor="360012069334",e.PBTErrorCodes="360012421153",e.ManuelReview="360020004534",e.LibraryReview="360000163788"}(n||(n={})),function(e){e.Integrations="4407268725529",e.Classrooms="4405362551833",e.MakeInteractive="4405370510873",e.EditSsoAccounts="8202605666073",e.UploadToLibraryEditor="10672936659865",e.AddFromLite="10671345281561",e.ManageSsoYearGroups="14691130889241",e.ContentReview="18525199576601",e.ContentPermissions="14692125209497",e.AccessSettings="22110291468057",e.ContentGuidelines="24133696186009",e.FoxtelFaq="24133519542169",e.ViviIntegration="23826297956377",e.AppleTvIntegration="25832373739929",e.RssFeed="32567445635097"}(r||(r={}))},5859:(e,t,a)=>{function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}a.d(t,{u:()=>i});var r={numItems:5,minWidth:50,maxWidth:100},i={getPartialLoadingItems:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=Object.assign(Object.assign({},r),t);return(e=Array(a.numItems),function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?n(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(){return{width:"".concat(Math.max(Math.floor(Math.random()*a.maxWidth),a.minWidth),"px")}}))}}},23224:(e,t,a)=>{a.d(t,{j:()=>p});var n=a(32735),r=a(39202),i=a(23481),c=a(65858),s=a(38502),o=a(14070),l=a(97291),m="settings.restrictedVideosTabs",u=i.T.encloseNamespace(m),d={restrictedVideos:{application:l.O.SETTINGS,action:o.e.Settings.VIDEO_RESTRICTIONS},contentReview:{application:l.O.SETTINGS,action:o.e.Settings.CONTENT_REVIEW},contentReviewSettings:{application:l.O.SETTINGS,action:o.e.Settings.CONTENT_REVIEW_SETTINGS}};function p(e){return n.createElement("div",{className:"mb-3"},n.createElement(s.r,{tabs:[{name:u("restrictedVideos"),appLink:d.restrictedVideos,active:"restricted-videos"===e.active,analyticsData:{name:u("restrictedVideos"),url:r.C$.getHref(d.restrictedVideos)},analyticsOptions:{actionType:c.Vw.Click,entity:c.py.Url,location:c.LZ.MagicTabs}},{name:u("contentReview"),appLink:d.contentReview,active:"content-review"===e.active,analyticsData:{name:i.T.getPhrase(m,"contentReview"),url:r.C$.getHref(d.contentReview)},analyticsOptions:{actionType:c.Vw.Click,entity:c.py.Url,location:c.LZ.MagicTabs}},{name:u("contentReviewSettings"),appLink:d.contentReviewSettings,active:"content-review-settings"===e.active,analyticsData:{name:i.T.getPhrase(m,"contentReviewSettings"),url:r.C$.getHref(d.contentReviewSettings)},analyticsOptions:{actionType:c.Vw.Click,entity:c.py.Url,location:c.LZ.MagicTabs}}]}))}},81803:(e,t,a)=>{a.d(t,{d:()=>v});var n=a(32735),r=a(81886),i=a(23481),c=a(49935),s=a(22902),o=a(14070),l=a(97291),m=a(96368);function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,n=Array(t);a<t;a++)n[a]=e[a];return n}var d="settings.settingsLayout",p=function(e){var t=(0,s.T)().hasPermissions,a=(0,m.e)();if(e)return t(e);var n=r.Q.C$.getCurrentAppLink();return n.application!==l.O.SETTINGS||a.some((function(e){return e.modules.some((function(e){return"appLink"in e&&e.appLink.action===n.action}))}))};function v(e){var t,a=p(e.requiredPermissions);if(n.useEffect((function(){a||r.Q.C$.trigger({application:l.O.SETTINGS,action:o.e.Settings.HOME},{replace:!0})}),[a]),!a)return n.createElement(n.Fragment,null);var s,m=e.breadcrumbs.map((function(t,a){return{name:t,appLink:{application:l.O.SETTINGS,action:o.e.Settings.HOME},active:a===e.breadcrumbs.length-1}}));return n.createElement("div",{className:"px-3"},n.createElement("div",{className:"d-flex align-items-center justify-content-between"},n.createElement("h1",{className:"h2"},e.heading),null===(t=e.headingButton)||void 0===t?void 0:t.call(e)),n.createElement("div",{className:"pb-3"},n.createElement(c.Oo,{breadcrumbs:[{name:i.T.getPhrase(d,"settingsBreadcrumb"),appLink:{application:l.O.SETTINGS,action:o.e.Settings.HOME}}].concat((s=m,function(e){if(Array.isArray(e))return u(e)}(s)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(s)||function(e,t){if(e){if("string"==typeof e)return u(e,t);var a={}.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?u(e,t):void 0}}(s)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))})),e.description&&n.createElement(n.Fragment,null,n.createElement("p",null,e.description),n.createElement("hr",null)),e.children)}},97383:(e,t,a)=>{a.r(t),a.d(t,{VideoRestrictionsView:()=>M});var n=a(32735),r=a(23481),i=a(20354),c=a(65858),s=a(36848),o=a(37395),l=a(83345),m=a(74696),u=a(13231),d=a(51365),p=a(16714),v=a(5345),b=a(1666),g=a(31949),E=a(22902),f=a(26361),y=a(14070),S=a(97291),N=a(21491),k=a(51855),T=a(27638),h=a(10741),I=a(22490),O=a(82431),w=a(23224),L=a(81803),C=a(23232),A=a(99705),R=a(12778),x=a(99742),j="settings.videoRestrictions",V=r.T.encloseNamespace(j);function P(){var e=R.o.getLiteArticle(A.b.ContentReview);return n.createElement(C.u,null,n.createElement(C.u.Image,{src:x.W.EmptyStates.ContentReview.RESTRICTED_VIDEOS}),n.createElement(C.u.Heading,null,n.createElement(l.x,{namespace:j,phrase:"emptyHeading"})),n.createElement(C.u.Cta,{href:e,text:V("emptyCta"),className:"btn btn-link info-link"}))}var G="settings.videoRestrictions",D=r.T.encloseNamespace(G),F={application:S.O.SETTINGS,action:y.e.Settings.CONTENT_PERMISSIONS};function M(e){var t,a,r,C,A,R=(0,T.u)(c.LZ.VideoThumbnail),x=R.setFavourite,j=R.canFavourite,V=(0,E.T)().hasPermissions,M=(0,k.G)().isPlugin,_=i.a.useBasicFetch(N.I.getRestrictedObjects([v.c.User],e.cursor)),Z=i.a.useBasicFetch(g.N.currentUser()),W=i.a.useBasicFetch(Z.data&&b.h.yearGroups(Z.data.customerId));return n.createElement(L.d,{heading:D("heading"),breadcrumbs:[D("breadcrumb")],requiredPermissions:p.C.ManageVideoAccess},n.createElement(w.j,{active:"restricted-videos"}),n.createElement("div",{className:"d-flex justify-content-between align-items-center"},n.createElement("p",{className:"mb-0"},n.createElement(l.x,{namespace:G,phrase:"description"})," ",n.createElement(s.F,{appLink:F,className:"info-link"},n.createElement(l.x,{namespace:G,phrase:"contentPermissions"})))),n.createElement("hr",null),!_.hasCompleted&&n.createElement(m.S,null),_.hasCompleted&&!(null===(a=null===(t=_.data)||void 0===t?void 0:t.data)||void 0===a?void 0:a.length)&&n.createElement(P,null),!!(null===(C=null===(r=_.data)||void 0===r?void 0:r.data)||void 0===C?void 0:C.length)&&n.createElement(n.Fragment,null,n.createElement(d.M.Provider,{value:{getVideoActions:function(e,t){return[{order:1,label:D("manageVideoAccess"),button:!0,className:"btn btn-outline-dark text-nowrap",appLink:{application:S.O.DEFAULT,action:y.e.Default.MANAGE_ACCCESS,params:{objectId:e.id,objectTypeId:e.typeId}},analyticsOptions:Object.assign(Object.assign({},t.analyticsOptions),{actionType:c.Vw.SetAccess,workflowPhase:c.eu.Start}),analyticsData:t.analyticsData}]}}},n.createElement(u.E4,{videos:_.data.data.filter((function(e){return!!f.l.getRestrictionByType(e,v.c.User)})),yearGroups:W.data,getVideoAppLink:I.W.getAppLink,getSubTextAppLink:function(e){return O.j.getSeriesAppLink(e.series)},setFavourite:x,canFavourite:j,hasPermissions:V,presentationAudiences:[],getPreviewQuestionsAppLink:function(e){return h.j.getPreviewQuestionsAppLink(e)},isPlugin:M,getClassroomGuideAppLink:I.W.getClassroomGuideAppLink,getInteractiveGuidanceAppLink:I.W.getInteractiveGuidanceAppLink,getResourceGuidanceAppLink:I.W.getResourceGuidanceAppLink})),(null===(A=_.data.pagination)||void 0===A?void 0:A.cursors)&&n.createElement("div",{className:"clearfix"},n.createElement(o.t,{cursors:_.data.pagination.cursors,appLink:{application:S.O.SETTINGS,action:y.e.Settings.VIDEO_RESTRICTIONS},buttonVariant:"outline-dark",className:"py-2 float-end"}))))}},21491:(e,t,a)=>{a.d(t,{I:()=>c});var n=a(99940),r=a(97395),i=a(62803),c={getRestrictions:function(e){return{key:"restrictions:".concat(e),url:r._.urlBuilder("{gateway}/v1/objects/restrictions",{id:e})}},addRestriction:function(e){return{type:n.k.POST,key:"restrictions:".concat(e.objectTypeId,":").concat(e.objectId,":add"),url:"{gateway}/v1/restrictions",data:[e],invalidationKeys:["restrictions"]}},deleteRestrictions:function(e){return{url:r._.urlBuilder("{gateway}/v1/restrictions",{objectId:e}),key:"restrictions:delete",type:n.k.DELETE,invalidationKeys:["restrictions"]}},getRestrictedObjects:function(e,t){var a={type:e,"query.video":i.v.VIDEO_COLLECTION,"query.interactive":i.v.INTERACTIVE_COLLECTION,"query.clip":i.v.CLIP_COLLECTION};return t&&(a.cursor=t),{url:r._.urlBuilder("{gateway}/v1/restrictions/objects",a),key:"restrictions:objects:".concat(e.sort().join(","),":").concat(t)}},approveAll:function(){return{url:"{gateway}/v1/library-reviews/restrictions",key:"restrictions:approve:all",type:n.k.DELETE}}}},87432:(e,t,a)=>{a.d(t,{Z:()=>n});const n={pillTabSelector:"Hdi6o",tab:"RvNxr",minWidth:"GHSz9",radiusSmall:"VhJJa",tabLink:"WFyvo"}},68050:(e,t,a)=>{a.d(t,{Z:()=>l});var n=a(95685),r=a.n(n),i=a(32735),c=a(46304),s=a(74512);const o=i.forwardRef((({bsPrefix:e,className:t,as:a="div",...n},i)=>{const o=(0,c.vE)(e,"row"),l=(0,c.pi)(),m=(0,c.zG)(),u=`${o}-cols`,d=[];return l.forEach((e=>{const t=n[e];let a;delete n[e],null!=t&&"object"==typeof t?({cols:a}=t):a=t;const r=e!==m?`-${e}`:"";null!=a&&d.push(`${u}${r}-${a}`)})),(0,s.jsx)(a,{ref:i,...n,className:r()(t,o,...d)})}));o.displayName="Row";const l=o}}]);
|
|
2
|
-
//# sourceMappingURL=7223-135cc7d675-lite.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/7223-135cc7d675-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","file:///app/packages/libs/shared/src/components/video-list/partial-loading/partial-video-list.scss","file:///app/packages/libs/shared/src/components/video-list/partial-loading/PartialVideoList.tsx","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/libs/shared/src/utils/PartialLoadingHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/restricted-videos-tabs/RestrictedVideosTabs.tsx","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/views/video-restrictions/VideoRestrictionsEmptyState.tsx","file:///app/packages/projects/lite/src/apps/settings/views/video-restrictions/VideoRestrictionsView.tsx","file:///app/packages/projects/lite/src/shared/flight-requests/RestrictionRequests.ts","file:///app/packages/libs/shared/src/components/pill-tab-selector/pill-tab-selector.scss","file:///app/node_modules/react-bootstrap/esm/Row.js"],"sourcesContent":["import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { PartialLoadingHelper } from 'libs/shared/utils/PartialLoadingHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nexport interface Breadcrumb {\n name: string;\n appLink?: Core.AppLink;\n active?: boolean;\n}\n\ninterface BreadcrumbItemProps {\n breadcrumb: Breadcrumb;\n withBackIcon?: boolean;\n}\n\nexport const BreadcrumbItem = ({ breadcrumb: { name, appLink, active }, withBackIcon }: BreadcrumbItemProps) => (\n <li className={`breadcrumb-item${active ? ' active' : ''}`}>\n {active\n ? <strong>{name}</strong>\n : <AppLink appLink={appLink}>\n {withBackIcon && <SvgContainer svgName={cvSvgLibrary.ChevronLeft} size={SvgContainerSize.Small} />}\n <span className={withBackIcon ? 'ms-2' : ''}>{name}</span>\n </AppLink>\n }\n </li>\n);\n\ninterface BreadcrumbsProps {\n breadcrumbs: Breadcrumb[];\n}\n\nexport const Breadcrumbs = ({ breadcrumbs }: BreadcrumbsProps) => {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n const length = breadcrumbs?.length;\n\n if (!length || (isMobile && length < 2))\n return <></>;\n\n if (isMobile)\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n <BreadcrumbItem breadcrumb={breadcrumbs[length - 2]} withBackIcon />\n </ol>\n </nav>\n );\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {breadcrumbs.map((b, idx) => <BreadcrumbItem key={idx} breadcrumb={b} />)}\n </ol>\n </nav>\n );\n};\n\nexport const PartialBreadcrumbs = React.memo(function({ numItems = 3 }: { numItems?: number; }) {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n if (isMobile) {\n return (\n <div className='partial-loading-background' style={{ height: '1.3125rem', width: '6rem' }} />\n );\n }\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {PartialLoadingHelper.getPartialLoadingItems({ numItems }).map(({ width }, idx) => (\n <li key={idx} className='breadcrumb-item'>\n <span className='d-inline-block partial-loading-background' style={{ width }} dangerouslySetInnerHTML={{ __html: ' ' }} />\n </li>\n ))}\n </ol>\n </nav>\n );\n});","import React from 'react';\n\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { AnalyticsOptions } from 'libs/analytics/interfaces';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Badge, BadgeType } from 'libs/shared/components/badges/Badge';\nimport { DivButton } from 'libs/shared/components/div-button/DivButton';\n\nimport { SvgContainer } from '../svg-container/SvgContainer';\n\nimport styles from './pill-tab-selector.scss';\n\ninterface TabContentsProps {\n tab: PillTab;\n}\n\nfunction TabContents(props: TabContentsProps): JSX.Element {\n return (\n <>\n {!!props.tab.svgName && (\n <div className={props.tab.name ? 'pe-1' : ''}>\n <SvgContainer svgName={props.tab.svgName} />\n </div>\n )}\n\n {props.tab.name}\n\n {typeof (props.tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={props.tab.count} />\n </div>\n )}\n </>\n );\n}\n\nexport interface PillTab {\n name: string;\n active: boolean;\n svgName?: string;\n\n className?: string;\n\n appLink?: Core.AppLink;\n onSelect?: () => void;\n\n analyticsData?: HashObject;\n analyticsOptions?: AnalyticsOptions;\n\n count?: number;\n}\n\ninterface PillTabSelectorProps {\n tabs: PillTab[];\n containerRef?: (el: HTMLElement) => void;\n listClassName?: string;\n className?: string;\n borderRadius?: 'sm' | 'lg'\n}\n\nPillTabSelector.defaultProps = {\n borderRadius: 'lg'\n};\n\nexport function PillTabSelector(props: PillTabSelectorProps): JSX.Element {\n function onSelectTab(tab: PillTab): void {\n if (tab.active || !tab.onSelect)\n return;\n\n tab.onSelect();\n\n if (tab.analyticsData && tab.analyticsOptions)\n AnalyticsHelper.logUserAction(tab.analyticsData, tab.analyticsOptions);\n }\n\n return (\n <nav className={props.className ?? ''} ref={props.containerRef}>\n <ul className={`\n list-unstyled d-inline-block m-0 ${styles.pillTabSelector}\n ${props.borderRadius ? styles.radiusSmall : ''}\n ${props.listClassName}\n `}>\n {props.tabs.map((tab, index) => {\n return (\n <li\n className={`\n p-0 ${styles.tab} ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}\n ${tab.name ? styles.minWidth : ''} ${tab.className}\n `}\n key={index}\n >\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset px-2 text-nowrap ${styles.tabLink}\n `}\n >\n <TabContents tab={tab} />\n </AppLink>\n ) : (\n <DivButton\n className={`\n cursor-pointer d-flex align-items-center justify-content-center\n text-decoration-none text-reset p-2 text-nowrap ${styles.tabLink}\n `}\n onClick={() => onSelectTab(tab)}\n >\n <TabContents tab={tab} />\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n </nav>\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"partialOptions\":\"Gufgq\",\"partialName\":\"SicQQ\",\"partialDescription\":\"dPGMq\",\"partialThumbnail\":\"vZrnb\",\"partialDragHandle\":\"iq73R\"};","import React from 'react';\nimport { Col, Row } from 'react-bootstrap';\n\nimport { VideoListHelper } from 'libs/shared/components/video-list/VideoListHelper';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\n\nimport styles from './partial-video-list.scss';\n\ninterface PartialVideoListProps {\n withReordering?: boolean;\n numVideos?: number;\n allowBulkActions?: boolean;\n}\n\nPartialVideoList.defaultProps = {\n numVideos: 15\n};\n\nexport function PartialVideoList(props: PartialVideoListProps): JSX.Element {\n return (\n <div className='mx-2'>\n {Array(props.numVideos).fill(null).map((_, i) => (\n <div className='d-flex' key={i}>\n {props.allowBulkActions && <div className='form-check pe-3 pe-sm-2 mx-0 mx-md-2' />}\n <PartialVideoItem {...props} />\n </div>\n ))}\n </div>\n );\n}\n\nexport function PartialVideoItem(props: PartialVideoListProps): JSX.Element {\n const breakpoints = useBreakpoints();\n\n const size = VideoListHelper.getSize(breakpoints, 'md');\n const isSmall = size === 'sm';\n\n const withDragHandle = props.withReordering && !breakpoints.xs;\n\n return (\n <Row className={`${isSmall ? '' : 'py-2'} flex-grow-1`}>\n <Col {...VideoListHelper.getThumbnailColumns()} className={`flex-column align-items-flex-start ${isSmall ? `pb-2 pe-1` : 'mb-1 pe-3 pe-md-2'}`}>\n <Row>\n {!!withDragHandle && (\n <div className='d-flex align-items-center justify-content-center col-2'>\n <div className={`partial-loading-background ${styles.partialDragHandle}`} />\n </div>\n )}\n <Col xs={VideoListHelper.getThumbnailColSize(withDragHandle)}>\n <div className={`partial-loading-background ${isSmall ? 'rounded' : 'rounded-3'} ${styles.partialThumbnail}`} />\n </Col>\n </Row>\n </Col>\n <Col {...VideoListHelper.getDetailsColumns()} className={isSmall ? 'pb-2' : 'px-2'}>\n <div className={`partial-loading-background mb-1 ${styles.partialName}`} />\n <div className={`partial-loading-background ${styles.partialDescription}`} />\n </Col>\n </Row>\n );\n}\n\n","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '22110291468057',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097'\n}\n","const DEFAULT_PARTIAL_LOADING_OPTIONS: PartialLoadingOptions = {\n numItems: 5,\n minWidth: 50, // px\n maxWidth: 100 // px\n};\n\nexport interface PartialLoadingOptions {\n numItems?: number;\n minWidth?: number;\n maxWidth?: number;\n}\n\ninterface PartialLoadingItem {\n width: string;\n}\n\nexport const PartialLoadingHelper = {\n getPartialLoadingItems(options: PartialLoadingOptions = {}): PartialLoadingItem[] {\n const opts = {\n ...DEFAULT_PARTIAL_LOADING_OPTIONS,\n ...options\n };\n\n const getRandomFilterWidth = () => Math.max(Math.floor(Math.random() * opts.maxWidth), opts.minWidth);\n\n return [...Array(opts.numItems)].map(() => ({ width: `${getRandomFilterWidth()}px` }));\n }\n};","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EntityType, LocationContext, UserAction } from 'libs/analytics/interfaces';\n\nimport { PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'settings.restrictedVideosTabs';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst APPLINKS = {\n restrictedVideos: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIDEO_RESTRICTIONS\n },\n contentReview: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_REVIEW\n },\n contentReviewSettings: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_REVIEW_SETTINGS\n }\n};\n\ninterface RestrictionTabsProps {\n active: 'restricted-videos' | 'content-review' | 'content-review-settings'\n}\n\nexport function RestrictionTabs(props: RestrictionTabsProps): JSX.Element {\n return (\n <div className='mb-3'>\n <PillTabSelector\n tabs={[{\n name: getPhrase('restrictedVideos'),\n appLink: APPLINKS.restrictedVideos,\n active: props.active === 'restricted-videos',\n analyticsData: {\n name: getPhrase('restrictedVideos'),\n url: AppLinkHelper.getHref(APPLINKS.restrictedVideos)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }, {\n name: getPhrase('contentReview'),\n appLink: APPLINKS.contentReview,\n active: props.active === 'content-review',\n analyticsData: {\n name: LanguageService.getPhrase(namespace, 'contentReview'),\n url: AppLinkHelper.getHref(APPLINKS.contentReview)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }, {\n name: getPhrase('contentReviewSettings'),\n appLink: APPLINKS.contentReviewSettings,\n active: props.active === 'content-review-settings',\n analyticsData: {\n name: LanguageService.getPhrase(namespace, 'contentReviewSettings'),\n url: AppLinkHelper.getHref(APPLINKS.contentReviewSettings)\n },\n analyticsOptions: {\n actionType: UserAction.Click,\n entity: EntityType.Url,\n location: LocationContext.MagicTabs\n }\n }]}\n />\n </div>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { EmptyState } from 'libs/shared/components/empty-states/EmptyState';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'settings.videoRestrictions';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function VideoRestrictionsEmptyState(): JSX.Element {\n const href = ArticleHelper.getLiteArticle(LiteSupportArticle.ContentReview);\n\n return (\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.ContentReview.RESTRICTED_VIDEOS} />\n <EmptyState.Heading><Text namespace={namespace} phrase='emptyHeading' /></EmptyState.Heading>\n <EmptyState.Cta\n href={href}\n text={getPhrase('emptyCta')}\n className='btn btn-link info-link'\n />\n </EmptyState>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { ActionOptions } from 'libs/shared/components/actions/Actions';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Pagination } from 'libs/shared/components/pagination/Pagination';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { PartialVideoList } from 'libs/shared/components/video-list/partial-loading/PartialVideoList';\nimport { VideoList } from 'libs/shared/components/video-list/VideoList';\nimport { VideoActionsContext, VideoActionsOptions } from 'libs/shared/context/VideoActionsContext';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { RestrictionType } from 'libs/shared/enums/RestrictionType';\nimport { CustomerRequests } from 'libs/shared/flight-requests/CustomerRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { CurrentUser, VideoTypes, VideoTypesCollection, YearGroup } from 'libs/shared/interfaces';\nimport { RestrictionHelper } from 'libs/shared/utils/RestrictionHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { RestrictionRequests } from 'shared/flight-requests/RestrictionRequests';\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\nimport { useLiteFavourites } from 'shared/hooks/useLiteFavourites';\nimport { InteractiveHelpers } from 'shared/utils/InteractiveHelper';\nimport { VideoAppLinkHelper } from 'shared/utils/VideoAppLinkHelper';\n\nimport { SeriesAppLinkHelper } from 'apps/series/SeriesAppLinkHelper';\nimport { RestrictionTabs } from 'apps/settings/components/restricted-videos-tabs/RestrictedVideosTabs';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\nimport { VideoRestrictionsEmptyState } from 'apps/settings/views/video-restrictions/VideoRestrictionsEmptyState';\n\nconst namespace = 'settings.videoRestrictions';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst ContentPermissionAppLink = {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.CONTENT_PERMISSIONS\n};\n\ninterface VideoRestrictionsViewProps {\n cursor?: string;\n}\n\nexport function VideoRestrictionsView(props: VideoRestrictionsViewProps): JSX.Element {\n const { setFavourite, canFavourite } = useLiteFavourites(LocationContext.VideoThumbnail);\n const { hasPermissions } = usePermissions();\n const { isPlugin } = usePluginHelper();\n\n const videos = Flight.useBasicFetch<VideoTypesCollection>(\n RestrictionRequests.getRestrictedObjects([RestrictionType.User], props.cursor)\n );\n \n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(\n currentUser.data && CustomerRequests.yearGroups(currentUser.data.customerId)\n );\n\n function getVideoActions(video: VideoTypes, options: VideoActionsOptions): ActionOptions[] {\n return [{\n order: 1,\n label: getPhrase('manageVideoAccess'),\n button: true,\n className: 'btn btn-outline-dark text-nowrap',\n appLink: {\n application: AppChannels.DEFAULT,\n action: Actions.Default.MANAGE_ACCCESS,\n params: {\n objectId: video.id,\n objectTypeId: video.typeId\n }\n },\n analyticsOptions: {\n ...options.analyticsOptions,\n actionType: UserAction.SetAccess,\n workflowPhase: WorkflowPhase.Start\n },\n analyticsData: options.analyticsData\n }];\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('heading')}\n breadcrumbs={[getPhrase('breadcrumb')]}\n requiredPermissions={PermissionName.ManageVideoAccess}\n >\n <RestrictionTabs active='restricted-videos' />\n <div className='d-flex justify-content-between align-items-center'>\n <p className='mb-0'>\n <Text namespace={namespace} phrase='description'/>\n \n <AppLink appLink={ContentPermissionAppLink} className='info-link'>\n <Text namespace={namespace} phrase='contentPermissions'/>\n </AppLink>\n </p>\n </div>\n <hr />\n {!videos.hasCompleted &&\n <PartialVideoList />\n }\n\n {videos.hasCompleted && !videos.data?.data?.length &&\n <VideoRestrictionsEmptyState />\n }\n\n {!!videos.data?.data?.length &&\n <>\n <VideoActionsContext.Provider value={{ getVideoActions }}>\n <VideoList\n videos={videos.data.data.filter(v =>\n !!RestrictionHelper.getRestrictionByType(v, RestrictionType.User))}\n yearGroups={yearGroups.data}\n getVideoAppLink={VideoAppLinkHelper.getAppLink}\n getSubTextAppLink={video => SeriesAppLinkHelper.getSeriesAppLink(video.series)}\n setFavourite={setFavourite}\n canFavourite={canFavourite}\n hasPermissions={hasPermissions}\n // we want to show rating badge not year group badge all the time\n presentationAudiences={[]}\n getPreviewQuestionsAppLink={interactive => InteractiveHelpers.getPreviewQuestionsAppLink(interactive)}\n isPlugin={isPlugin}\n getClassroomGuideAppLink={VideoAppLinkHelper.getClassroomGuideAppLink}\n getInteractiveGuidanceAppLink={VideoAppLinkHelper.getInteractiveGuidanceAppLink}\n getResourceGuidanceAppLink={VideoAppLinkHelper.getResourceGuidanceAppLink}\n />\n </VideoActionsContext.Provider>\n {videos.data.pagination?.cursors &&\n <div className='clearfix'>\n <Pagination\n cursors={videos.data.pagination.cursors}\n appLink={{\n application: AppChannels.SETTINGS,\n action: Actions.Settings.VIDEO_RESTRICTIONS\n }}\n buttonVariant='outline-dark'\n className='py-2 float-end'\n />\n </div>\n }\n </>\n }\n </SettingsLayout>\n );\n}","import { HttpVerbs } from 'libs/common/backbone/enums/HttpVerbs';\nimport { UrlHelper } from 'libs/common/backbone/utils/UrlHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { SharedWithStatements } from 'libs/shared/constants/WithStatements';\nimport { RestrictionType } from 'libs/shared/enums/RestrictionType';\n\nimport { AddRestrictionRequest } from 'shared/interfaces/requests/AddRestrictionRequest';\n\nexport const RestrictionRequests = {\n getRestrictions(id: string): Flight.Request {\n return {\n key: `restrictions:${id}`,\n url: UrlHelper.urlBuilder(`{gateway}/v1/objects/restrictions`, { id })\n };\n },\n\n addRestriction(data: AddRestrictionRequest): Flight.Request {\n return {\n type: HttpVerbs.POST,\n key: `restrictions:${data.objectTypeId}:${data.objectId}:add`,\n url: `{gateway}/v1/restrictions`,\n data: [data],\n invalidationKeys: ['restrictions']\n };\n },\n\n\n deleteRestrictions(objectId: string): Flight.Request {\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/restrictions', { objectId }),\n key: 'restrictions:delete',\n type: HttpVerbs.DELETE,\n invalidationKeys: ['restrictions']\n };\n },\n\n\n getRestrictedObjects(\n type: RestrictionType[],\n cursor?: string\n ): Flight.Request {\n const params: any = {\n 'type': type,\n 'query.video': SharedWithStatements.VIDEO_COLLECTION,\n 'query.interactive': SharedWithStatements.INTERACTIVE_COLLECTION,\n 'query.clip': SharedWithStatements.CLIP_COLLECTION\n };\n\n if (cursor)\n params.cursor = cursor;\n\n return {\n url: UrlHelper.urlBuilder('{gateway}/v1/restrictions/objects', params),\n key: `restrictions:objects:${type.sort().join(',')}:${cursor}`\n };\n },\n\n approveAll(): Flight.Request {\n return {\n url: '{gateway}/v1/library-reviews/restrictions',\n key: 'restrictions:approve:all',\n type: HttpVerbs.DELETE\n };\n }\n};","// extracted by mini-css-extract-plugin\nexport default {\"pillTabSelector\":\"Hdi6o\",\"tab\":\"RvNxr\",\"minWidth\":\"GHSz9\",\"radiusSmall\":\"VhJJa\",\"tabLink\":\"WFyvo\"};","\"use client\";\n\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { useBootstrapPrefix, useBootstrapBreakpoints, useBootstrapMinBreakpoint } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst Row = /*#__PURE__*/React.forwardRef(({\n bsPrefix,\n className,\n // Need to define the default \"as\" during prop destructuring to be compatible with styled-components github.com/react-bootstrap/react-bootstrap/issues/3595\n as: Component = 'div',\n ...props\n}, ref) => {\n const decoratedBsPrefix = useBootstrapPrefix(bsPrefix, 'row');\n const breakpoints = useBootstrapBreakpoints();\n const minBreakpoint = useBootstrapMinBreakpoint();\n const sizePrefix = `${decoratedBsPrefix}-cols`;\n const classes = [];\n breakpoints.forEach(brkPoint => {\n const propValue = props[brkPoint];\n delete props[brkPoint];\n let cols;\n if (propValue != null && typeof propValue === 'object') {\n ({\n cols\n } = propValue);\n } else {\n cols = propValue;\n }\n const infix = brkPoint !== minBreakpoint ? `-${brkPoint}` : '';\n if (cols != null) classes.push(`${sizePrefix}${infix}-${cols}`);\n });\n return /*#__PURE__*/_jsx(Component, {\n ref: ref,\n ...props,\n className: classNames(className, decoratedBsPrefix, ...classes)\n });\n});\nRow.displayName = 'Row';\nexport default Row;"],"names":["BreadcrumbItem","breadcrumb","name","appLink","active","withBackIcon","className","svgName","size","S","Breadcrumbs","breadcrumbs","isMobile","length","map","b","idx","key","PartialBreadcrumbs","numItems","style","height","width","dangerouslySetInnerHTML","__html","TabContents","props","tab","count","type","data","PillTabSelector","ref","containerRef","borderRadius","listClassName","tabs","index","analyticsData","analyticsOptions","onClick","onSelect","onSelectTab","defaultProps","PartialVideoList","Array","numVideos","fill","_","i","allowBulkActions","PartialVideoItem","breakpoints","useBreakpoints","isSmall","VideoListHelper","withDragHandle","withReordering","xs","Row","Col","OnlineSupportArticle","LiteSupportArticle","DEFAULT_PARTIAL_LOADING_OPTIONS","minWidth","maxWidth","PartialLoadingHelper","getPartialLoadingItems","options","opts","Math","max","floor","random","namespace","getPhrase","APPLINKS","restrictedVideos","application","action","contentReview","contentReviewSettings","RestrictionTabs","url","actionType","entity","location","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","some","group","modules","settingsModule","SettingsLayout","canAccess","replace","heading","headingButton","description","children","LanguageService","VideoRestrictionsEmptyState","href","ArticleHelper","EmptyState","src","ImageUrls","Text","phrase","text","ContentPermissionAppLink","VideoRestrictionsView","useLiteFavourites","u","setFavourite","canFavourite","usePermissions","isPlugin","usePluginHelper","videos","RestrictionRequests","RestrictionType","cursor","currentUser","UserRequests","yearGroups","CustomerRequests","customerId","PermissionName","AppLink","hasCompleted","VideoActionsContext","value","getVideoActions","video","order","label","button","params","objectId","id","objectTypeId","typeId","workflowPhase","VideoList","filter","v","RestrictionHelper","getVideoAppLink","VideoAppLinkHelper","getSubTextAppLink","SeriesAppLinkHelper","series","presentationAudiences","getPreviewQuestionsAppLink","interactive","InteractiveHelper","getClassroomGuideAppLink","getInteractiveGuidanceAppLink","getResourceGuidanceAppLink","pagination","cursors","Pagination","buttonVariant","getRestrictions","addRestriction","invalidationKeys","deleteRestrictions","getRestrictedObjects","sort","join","approveAll","bsPrefix","as","Component","decoratedBsPrefix","minBreakpoint","sizePrefix","classes","forEach","brkPoint","propValue","cols","infix","push","displayName"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[729,4860],{96922:(e,i,t)=>{t.r(i),t.d(i,{SharedSeriesView:()=>d});var r=t(32735),c=t(81886),n=t(183),s=t(58800);function d(e){var i=c.Q.C$.getCurrentAppLink();return r.createElement(s.SeriesView,{key:e.objectId,id:e.objectId,shareId:e.shareId,getVideoAppLink:function(t){return Object.assign(Object.assign({},i),{params:{videoId:t.id,contextId:e.objectId,context:n.Q.Series}})}})}}}]);
|
|
2
|
-
//# sourceMappingURL=729-c704d587d3-lite.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/729-c704d587d3-lite.chunk.js","mappings":"4MAWM,SAAUA,EAAiBC,GAC/B,IAAMC,EAAiB,2BAWvB,OACE,gBAAC,EAAAC,WAAU,CACTC,IAAKH,EAAMI,SACXC,GAAIL,EAAMI,SACVE,QAASN,EAAMM,QACfC,gBAdoB,SAACC,GAAY,OAAK,+BACrCP,GAAc,CACjBQ,OAAQ,CACNC,QAASF,EAAMH,GACfM,UAAWX,EAAMI,SACjBQ,QAAS,aACV,GAWL,C","sources":["file:///app/packages/projects/lite/src/apps/share/views/shared-series/SharedSeriesView.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { RelatedVideosContext } from 'libs/shared/enums/RelatedVideosContext';\nimport { Video } from 'libs/shared/interfaces';\n\nimport { SeriesView } from 'shared/views/series/SeriesView';\n\nimport { ShareLinkViewProps } from 'apps/share/interfaces/ShareLinkViewProps';\n\nexport function SharedSeriesView(props: ShareLinkViewProps): JSX.Element {\n const currentAppLink = Core.AppLinkHelper.getCurrentAppLink();\n\n const getVideoAppLink = (video: Video) => ({\n ...currentAppLink,\n params: {\n videoId: video.id,\n contextId: props.objectId,\n context: RelatedVideosContext.Series\n }\n });\n\n return (\n <SeriesView\n key={props.objectId}\n id={props.objectId}\n shareId={props.shareId}\n getVideoAppLink={getVideoAppLink}\n />\n );\n}"],"names":["SharedSeriesView","props","currentAppLink","SeriesView","key","objectId","id","shareId","getVideoAppLink","video","params","videoId","contextId","context"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7679],{86685:(e,t,r)=>{r.d(t,{W:()=>c});var n=r(32735),a=r(83914),i=r(35223);const l={icon:"eCi4v"};function c(e){return n.createElement("div",{className:"alert alert-warning d-flex align-items-center px-2 mb-3"},n.createElement(a.x,{svgName:i.vn.WarningOutline,className:"svg-container me-2 ".concat(l.icon)}),n.createElement("div",null,e.children))}},49935:(e,t,r)=>{r.d(t,{Oo:()=>u,b2:()=>d});var n=r(32735),a=r(36848),i=r(86764),l=r(3747),c=r(5859),o=r(35223),m=r(83914),s=function(e){var t=e.breadcrumb,r=t.name,i=t.appLink,l=t.active,c=e.withBackIcon;return n.createElement("li",{className:"breadcrumb-item".concat(l?" active":"")},l?n.createElement("strong",null,r):n.createElement(a.F,{appLink:i},c&&n.createElement(m.x,{svgName:o.vn.ChevronLeft,size:m.S.Small}),n.createElement("span",{className:c?"ms-2":""},r)))},u=function(e){var t=e.breadcrumbs,r=(0,l.a)(i.r.XS),a=null==t?void 0:t.length;return!a||r&&a<2?n.createElement(n.Fragment,null):r?n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},n.createElement(s,{breadcrumb:t[a-2],withBackIcon:!0}))):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},t.map((function(e,t){return n.createElement(s,{key:t,breadcrumb:e})}))))},d=n.memo((function(e){var t=e.numItems,r=void 0===t?3:t;return(0,l.a)(i.r.XS)?n.createElement("div",{className:"partial-loading-background",style:{height:"1.3125rem",width:"6rem"}}):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},c.u.getPartialLoadingItems({numItems:r}).map((function(e,t){var r=e.width;return n.createElement("li",{key:t,className:"breadcrumb-item"},n.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:r},dangerouslySetInnerHTML:{__html:" "}}))}))))}))},5859:(e,t,r)=>{function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}r.d(t,{u:()=>i});var a={numItems:5,minWidth:50,maxWidth:100},i={getPartialLoadingItems:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=Object.assign(Object.assign({},a),t);return(e=Array(r.numItems),function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(){return{width:"".concat(Math.max(Math.floor(Math.random()*r.maxWidth),r.minWidth),"px")}}))}}},81803:(e,t,r)=>{r.d(t,{d:()=>b});var n=r(32735),a=r(81886),i=r(23481),l=r(49935),c=r(22902),o=r(14070),m=r(97291),s=r(96368);function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var d="settings.settingsLayout",p=function(e){var t=(0,c.T)().hasPermissions,r=(0,s.e)();if(e)return t(e);var n=a.Q.C$.getCurrentAppLink();return n.application!==m.O.SETTINGS||r.some((function(e){return e.modules.some((function(e){return"appLink"in e&&e.appLink.action===n.action}))}))};function b(e){var t,r=p(e.requiredPermissions);if(n.useEffect((function(){r||a.Q.C$.trigger({application:m.O.SETTINGS,action:o.e.Settings.HOME},{replace:!0})}),[r]),!r)return n.createElement(n.Fragment,null);var c,s=e.breadcrumbs.map((function(t,r){return{name:t,appLink:{application:m.O.SETTINGS,action:o.e.Settings.HOME},active:r===e.breadcrumbs.length-1}}));return n.createElement("div",{className:"px-3"},n.createElement("div",{className:"d-flex align-items-center justify-content-between"},n.createElement("h1",{className:"h2"},e.heading),null===(t=e.headingButton)||void 0===t?void 0:t.call(e)),n.createElement("div",{className:"pb-3"},n.createElement(l.Oo,{breadcrumbs:[{name:i.T.getPhrase(d,"settingsBreadcrumb"),appLink:{application:m.O.SETTINGS,action:o.e.Settings.HOME}}].concat((c=s,function(e){if(Array.isArray(e))return u(e)}(c)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(c)||function(e,t){if(e){if("string"==typeof e)return u(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?u(e,t):void 0}}(c)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))})),e.description&&n.createElement(n.Fragment,null,n.createElement("p",null,e.description),n.createElement("hr",null)),e.children)}},28875:(e,t,r)=>{r.r(t),r.d(t,{ArchivedClassroomsView:()=>T});var n=r(32735),a=r(70680),i=r(23481),l=r(20354),c=r(86685),o=r(71020),m=r(83345),s=r(94644),u=r(39151),d=r(31949),p=r(69883),b=r(60115),g=r(79612),f=r(14070),h=r(97291),E=r(46542),v=r(91899),S=r(88630),y=r(81803),O=r(23232),C=r(99742),A="settings.archivedClassroomsEmptyState";function I(){return n.createElement(m.D.Provider,{value:A},n.createElement(O.u,null,n.createElement(O.u.Image,{src:C.W.EmptyStates.Classrooms.CLASSROOMS}),n.createElement(O.u.Heading,null,n.createElement(m.x,{phrase:"heading"})),n.createElement(O.u.Info,null,n.createElement(m.x,{phrase:"info"})),n.createElement(O.u.Cta,{appLink:{application:h.O.CLASSROOMS,action:f.e.Classrooms.HOME},className:"btn btn-dark",text:i.T.getPhrase(A,"cta")})))}var N="settings.archivedClassrooms",k=i.T.encloseNamespace(N),L={delete:{application:h.O.CLASSROOMS,action:f.e.Classrooms.DELETE_CLASSROOM},retrieve:{application:h.O.CLASSROOMS,action:f.e.Classrooms.RETRIEVE_CLASSROOM}};function T(){(0,g.M)({title:k("pageTitle")});var e=(0,p.Z)(),t=(0,a.I0)(),r=function(e){return S.F.getArchived(e)},f=function(e){return l.a.getFetch(t)(r(e))},h=l.a.useBasicFetch(u.L.config()),O=l.a.useBasicFetch(d.N.currentUser()),C=(0,b.K)(r,f,(function(t,r){if(1===t)return(0,s.r)(r);e.error(i.T.getPhrase(N,"error"))})),A=C.items,T=C.hasMore,M=C.isFetching,w=C.nextCursor;return n.createElement(y.d,{heading:k("heading"),breadcrumbs:[k("breadcrumb")]},!!(null==A?void 0:A.length)&&n.createElement(c.W,null,n.createElement(m.x,{namespace:N,phrase:"note"})),A&&h.hasCompleted?A.length?n.createElement(n.Fragment,null,n.createElement(E.D,{allClassrooms:A,imageCdnUrl:h.data.imageCdnUrl,appLinks:L,refreshTable:M,currentUser:O.data}),(T||M)&&n.createElement(o._,{isFetching:M,fetchNext:f,nextCursor:w})):n.createElement(I,null):n.createElement(v.I,null))}}}]);
|
|
2
|
-
//# sourceMappingURL=7679-b01da2c09d-lite.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/7679-b01da2c09d-lite.chunk.js","mappings":"yKACA,SAAgB,KAAO,SCUjB,SAAUA,EAAaC,GAC3B,OACE,uBAAKC,UAAU,2DACb,gBAACC,EAAA,EAAY,CACXC,QAAS,oBACTF,UAAS,6BAAwB,UAEnC,2BACGD,EAAMI,UAIf,C,4HCAaC,EAAiB,SAAH,WAAMC,WAAcC,EAAI,EAAJA,KAAMC,EAAO,EAAPA,QAASC,EAAM,EAANA,OAAUC,EAAY,EAAZA,aAAY,OAClF,sBAAIT,UAAS,yBAAoBQ,EAAS,UAAY,KACnDA,EACG,8BAASF,GACT,gBAAC,IAAO,CAACC,QAASA,GACjBE,GAAgB,gBAAC,IAAY,CAACP,QAAS,iBAA0BQ,KAAM,EAAAC,EAAA,QACxE,wBAAMX,UAAWS,EAAe,OAAS,IAAKH,IAG/C,EAOMM,EAAc,SAAH,GAAyC,IAAnCC,EAAW,EAAXA,YACtBC,GAAW,OAAc,QAEzBC,EAASF,aAAW,EAAXA,EAAaE,OAE5B,OAAKA,GAAWD,GAAYC,EAAS,EAC5B,iCAELD,EAEA,oCAAgB,cACd,sBAAId,UAAU,sBACZ,gBAACI,EAAc,CAACC,WAAYQ,EAAYE,EAAS,GAAIN,cAAY,MAMvE,oCAAgB,cACd,sBAAIT,UAAU,sBACXa,EAAYG,KAAI,SAACC,EAAGC,GAAG,OAAK,gBAACd,EAAc,CAACe,IAAKD,EAAKb,WAAYY,GAAK,KAIhF,EAEaG,EAAqB,QAAW,YAAiD,QAAtCC,SAAAA,OAAQ,IAAG,IAAC,EAGlE,OAFiB,OAAc,QAI3B,uBAAKrB,UAAU,6BAA6BsB,MAAO,CAAEC,OAAQ,YAAaC,MAAO,UAKnF,oCAAgB,cACd,sBAAIxB,UAAU,sBACX,2BAA4C,CAAEqB,SAAAA,IAAYL,KAAI,WAAYE,GAAG,IAAZM,EAAK,EAALA,MAAK,OACrE,sBAAIL,IAAKD,EAAKlB,UAAU,mBACtB,wBAAMA,UAAU,4CAA4CsB,MAAO,CAAEE,MAAAA,GAASC,wBAAyB,CAAEC,OAAQ,WAC9G,KAKf,G,wICrFA,IAAMC,EAAyD,CAC7DN,SAAU,EACVO,SAAU,GACVC,SAAU,KAaCC,EAAuB,CAClCC,uBAAsB,WAAoC,I,EAAnCC,EAAA,uDAAiC,CAAC,EACjDC,EAAO,OAAH,wBACLN,GACAK,GAKL,O,EAAWE,MAAMD,EAAKZ,U,omBAAWL,KAAI,iBAAO,CAAEQ,MAAO,GAAF,OAFhBW,KAAKC,IAAID,KAAKE,MAAMF,KAAKG,SAAWL,EAAKJ,UAAWI,EAAKL,UAEd,MAAM,GACtF,E,qOCZF,IAAMW,EAAY,0BAKLC,EAAuB,SAACC,GACnC,IAAQC,GAAmB,SAAnBA,eACFC,GAAiB,SAOvB,GAAIF,EACF,OAAOC,EAAeD,GAExB,IAAMG,EAAe,2BAOrB,OAAIA,EAAaC,cAAgB,cAG1BF,EAAeG,MAAK,SAAAC,GACzB,OAAOA,EAAMC,QAAQF,MAAK,SAAAG,GACxB,MAAI,YAAaA,GACRA,EAAe1C,QAAQ2C,SAAWN,EAAaM,MAI1D,GACF,GACF,EAUM,SAAUC,EAAepD,G,MACvBqD,EAAYZ,EAAqBzC,EAAM0C,qBAW7C,GATA,aAAgB,WACTW,GACH,eAA2B,CACzBP,YAAa,aACbK,OAAQ,mBACP,CAAEG,SAAS,GAElB,GAAG,CAACD,KAECA,EACH,OAAO,iCAET,I,EAAMvC,EAAcd,EAAMc,YAAYG,KAAI,SAACV,EAAMgD,GAAC,MAAM,CACtDhD,KAAAA,EACAC,QAAS,CACPsC,YAAa,aACbK,OAAQ,mBAEV1C,OAAQ8C,IAAMvD,EAAMc,YAAYE,OAAS,EAC1C,IAED,OACE,uBAAKf,UAAU,QACb,uBAAKA,UAAU,qDACb,sBAAIA,UAAU,MAAMD,EAAMwD,SACN,QAAnB,EAAAxD,EAAMyD,qBAAa,wBAEtB,uBAAKxD,UAAU,QACb,gBAAC,KAAW,CACVa,YAAW,CACT,CACEP,KAAM,cAA0BiC,EAAW,sBAC3ChC,QAAS,CACPsC,YAAa,aACbK,OAAQ,qBAEX,Q,EACErC,E,wmBAIRd,EAAM0D,aACL,gCACE,yBAAI1D,EAAM0D,aACV,4BAIH1D,EAAMI,SAGb,C,0SCvGMoC,EAAY,wCAEZ,SAAUmB,IACd,OACE,gBAAC,aAAiC,CAACC,MAAOpB,GACxC,gBAACqB,EAAA,EAAU,KACT,gBAACA,EAAA,QAAgB,CAACC,IAAKC,EAAA,sCAEvB,gBAACF,EAAA,UAAkB,KAAC,gBAACG,EAAA,EAAI,CAACC,OAAO,aAEjC,gBAACJ,EAAA,OAAe,KAAC,gBAACG,EAAA,EAAI,CAACC,OAAO,UAE9B,gBAACJ,EAAA,MAAc,CACbrD,QAAS,CACPsC,YAAa,eACbK,OAAQ,qBAEVlD,UAAU,eACViE,KAAMC,EAAA,YAA0B3B,EAAW,UAKrD,CCLA,IAAM,EAAY,8BACZ4B,EAAYD,EAAA,mBAAiC,GAE7CE,EAA4C,CAChDC,OAAQ,CACNxB,YAAa,eACbK,OAAQ,iCAEVoB,SAAU,CACRzB,YAAa,eACbK,OAAQ,oCAIN,SAAUqB,KACd,EAAAC,EAAA,GAAmB,CAAEC,MAAON,EAAU,eAEtC,IAAMO,GAAS,SACTC,GAAW,UAEXC,EAAuB,SAACC,GAAe,OAAKC,EAAA,cAA8BD,EAAO,EACjFE,EAAY,SAACF,GAAe,OAAK,aAAgBF,EAAhB,CAA0BC,EAAqBC,GAAQ,EAExFG,EAAS,kBAA6BC,EAAA,YACtCC,EAAc,kBAAkCC,EAAA,iBACtD,GAKI,OAA2BP,EAAsBG,GAErD,SAAiBK,EAAoBC,GACnC,GAAmB,IAAfD,EACF,OAAO,OAAgBC,GAEzBX,EAAOY,MAAMpB,EAAA,YAA0B,EAAW,SACpD,IAXEqB,EAAK,EAALA,MACAC,EAAO,EAAPA,QACAC,EAAU,EAAVA,WACAC,EAAU,EAAVA,WAUF,OACE,gBAACvC,EAAA,EAAc,CACbI,QAASY,EAAU,WACnBtD,YAAa,CAACsD,EAAU,mBAErBoB,aAAK,EAALA,EAAOxE,SACR,gBAACjB,EAAA6F,EAAY,KAAC,gBAAC5B,EAAA,EAAI,CAACxB,UAAW,EAAWyB,OAAO,UAI5CuB,GAAUP,EAAOY,aAGjBL,EAAMxE,OAIT,gCACE,gBAAC8E,EAAA,EAAe,CACdC,cAAeP,EACfQ,YAAaf,EAAOgB,KAAKD,YACzBE,SAAU7B,EACV8B,aAAcT,EACdP,YAAaA,EAAYc,QAGzBR,GAAWC,IACX,gBAACU,EAAA,EAAoB,CAACV,WAAYA,EAAYV,UAAWA,EAAWW,WAAYA,KAb7E,gBAAChC,EAA4B,MAH7B,gBAAC0C,EAAA,EAAsB,MAuBxC,C","sources":["file:///app/packages/libs/shared/src/apps/user-manager/components/warning-alert/warning-alert.scss","file:///app/packages/libs/shared/src/apps/user-manager/components/warning-alert/WarningAlert.tsx","file:///app/packages/libs/shared/src/components/breadcrumbs/Breadcrumbs.tsx","file:///app/packages/libs/shared/src/utils/PartialLoadingHelper.ts","file:///app/packages/projects/lite/src/apps/settings/components/settings-layout/SettingsLayout.tsx","file:///app/packages/projects/lite/src/apps/settings/views/archived-classrooms/empty-state/ArchivedClassroomsEmptyState.tsx","file:///app/packages/projects/lite/src/apps/settings/views/archived-classrooms/ArchivedClassroomsView.tsx"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"icon\":\"eCi4v\"};","import React from 'react';\n\nimport { HashObject } from 'libs/common/react/interfaces';\n\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './warning-alert.scss';\n\ntype WarningAlertProps = React.PropsWithChildren<HashObject>;\n\nexport function WarningAlert(props: WarningAlertProps): JSX.Element {\n return (\n <div className='alert alert-warning d-flex align-items-center px-2 mb-3'>\n <SvgContainer\n svgName={cvSvgLibrary.WarningOutline}\n className={`svg-container me-2 ${styles.icon}`}\n />\n <div>\n {props.children}\n </div>\n </div>\n );\n}","import * as React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { PartialLoadingHelper } from 'libs/shared/utils/PartialLoadingHelper';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport { SvgContainer, SvgContainerSize } from '../svg-container/SvgContainer';\n\nexport interface Breadcrumb {\n name: string;\n appLink?: Core.AppLink;\n active?: boolean;\n}\n\ninterface BreadcrumbItemProps {\n breadcrumb: Breadcrumb;\n withBackIcon?: boolean;\n}\n\nexport const BreadcrumbItem = ({ breadcrumb: { name, appLink, active }, withBackIcon }: BreadcrumbItemProps) => (\n <li className={`breadcrumb-item${active ? ' active' : ''}`}>\n {active\n ? <strong>{name}</strong>\n : <AppLink appLink={appLink}>\n {withBackIcon && <SvgContainer svgName={cvSvgLibrary.ChevronLeft} size={SvgContainerSize.Small} />}\n <span className={withBackIcon ? 'ms-2' : ''}>{name}</span>\n </AppLink>\n }\n </li>\n);\n\ninterface BreadcrumbsProps {\n breadcrumbs: Breadcrumb[];\n}\n\nexport const Breadcrumbs = ({ breadcrumbs }: BreadcrumbsProps) => {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n const length = breadcrumbs?.length;\n\n if (!length || (isMobile && length < 2))\n return <></>;\n\n if (isMobile)\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n <BreadcrumbItem breadcrumb={breadcrumbs[length - 2]} withBackIcon />\n </ol>\n </nav>\n );\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {breadcrumbs.map((b, idx) => <BreadcrumbItem key={idx} breadcrumb={b} />)}\n </ol>\n </nav>\n );\n};\n\nexport const PartialBreadcrumbs = React.memo(function({ numItems = 3 }: { numItems?: number; }) {\n const isMobile = useMediaQuery(MediaQueryStrings.XS);\n\n if (isMobile) {\n return (\n <div className='partial-loading-background' style={{ height: '1.3125rem', width: '6rem' }} />\n );\n }\n\n return (\n <nav aria-label='breadcrumb'>\n <ol className='breadcrumb m-0 p-0'>\n {PartialLoadingHelper.getPartialLoadingItems({ numItems }).map(({ width }, idx) => (\n <li key={idx} className='breadcrumb-item'>\n <span className='d-inline-block partial-loading-background' style={{ width }} dangerouslySetInnerHTML={{ __html: ' ' }} />\n </li>\n ))}\n </ol>\n </nav>\n );\n});","const DEFAULT_PARTIAL_LOADING_OPTIONS: PartialLoadingOptions = {\n numItems: 5,\n minWidth: 50, // px\n maxWidth: 100 // px\n};\n\nexport interface PartialLoadingOptions {\n numItems?: number;\n minWidth?: number;\n maxWidth?: number;\n}\n\ninterface PartialLoadingItem {\n width: string;\n}\n\nexport const PartialLoadingHelper = {\n getPartialLoadingItems(options: PartialLoadingOptions = {}): PartialLoadingItem[] {\n const opts = {\n ...DEFAULT_PARTIAL_LOADING_OPTIONS,\n ...options\n };\n\n const getRandomFilterWidth = () => Math.max(Math.floor(Math.random() * opts.maxWidth), opts.minWidth);\n\n return [...Array(opts.numItems)].map(() => ({ width: `${getRandomFilterWidth()}px` }));\n }\n};","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { Breadcrumbs } from 'libs/shared/components/breadcrumbs/Breadcrumbs';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { useGetSettingsGroups } from 'apps/settings/hooks/useGetSettingsGroups';\n\nconst namespace = 'settings.settingsLayout';\n\n/**\n * Checks if the current user has permission to access the settings module\n */\nexport const useCanAccessSettings = (requiredPermissions: PermissionName | PermissionName[]): boolean => {\n const { hasPermissions } = usePermissions();\n const settingsGroups = useGetSettingsGroups();\n\n /**\n * TODO: Update all settings pages to pasas required permissions, because checking the \n * `useGetSettingsGroups()` values clearly doesnt work for settings pages with multiple\n * applinks inside of them. - Sha\n */\n if (requiredPermissions)\n return hasPermissions(requiredPermissions);\n\n const currentRoute = Core.AppLinkHelper.getCurrentAppLink();\n\n /**\n * Allows us to have popups sitting in other locations be used\n * by our settings pages. For example the manage video access popup\n * in the \"videos with restricted access\" page - Sha\n */\n if (currentRoute.application !== AppChannels.SETTINGS)\n return true;\n\n return settingsGroups.some(group => {\n return group.modules.some(settingsModule => {\n if ('appLink' in settingsModule) {\n return settingsModule.appLink.action === currentRoute.action;\n }\n\n return false;\n });\n });\n};\n\ninterface SettingsLayoutProps {\n heading: string;\n breadcrumbs: string[];\n description?: string;\n requiredPermissions?: PermissionName | PermissionName[];\n headingButton?: () => JSX.Element;\n}\n\nexport function SettingsLayout(props: React.PropsWithChildren<SettingsLayoutProps>): JSX.Element {\n const canAccess = useCanAccessSettings(props.requiredPermissions);\n\n React.useEffect(() => {\n if (!canAccess) {\n Core.AppLinkHelper.trigger({\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }, { replace: true });\n }\n }, [canAccess]);\n\n if (!canAccess)\n return <></>;\n\n const breadcrumbs = props.breadcrumbs.map((name, i) => ({\n name,\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n },\n active: i === props.breadcrumbs.length - 1\n }));\n\n return (\n <div className='px-3'>\n <div className='d-flex align-items-center justify-content-between'>\n <h1 className='h2'>{props.heading}</h1>\n {props.headingButton?.()}\n </div>\n <div className='pb-3'>\n <Breadcrumbs\n breadcrumbs={[\n {\n name: LanguageService.getPhrase(namespace, 'settingsBreadcrumb'),\n appLink: {\n application: AppChannels.SETTINGS,\n action: Actions.Settings.HOME\n }\n },\n ...breadcrumbs\n ]}\n />\n </div>\n {props.description &&\n <>\n <p>{props.description}</p>\n <hr />\n </>\n }\n\n {props.children}\n </div>\n );\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\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';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'settings.archivedClassroomsEmptyState';\n\nexport function ArchivedClassroomsEmptyState(): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.Classrooms.CLASSROOMS} />\n\n <EmptyState.Heading><Text phrase='heading' /></EmptyState.Heading>\n\n <EmptyState.Info><Text phrase='info' /></EmptyState.Info>\n\n <EmptyState.Cta\n appLink={{\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.HOME\n }}\n className='btn btn-dark'\n text={LanguageService.getPhrase(namespace, 'cta')}\n />\n </EmptyState>\n </LanguageNamespaceContext.Provider>\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 { WarningAlert } from 'libs/shared/apps/user-manager/components/warning-alert/WarningAlert';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { handleHttpError } from 'libs/shared/errors/handlers/HttpErrorHandlers';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Classroom, Config, CurrentUser } from 'libs/shared/interfaces';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { ClassroomsTable } from 'apps/classrooms/components/classrooms-table/ClassroomsTable';\nimport { PartialClassroomsTable } from 'apps/classrooms/components/classrooms-table/partial-classrooms-table/PartialClassroomsTable';\nimport { ClassroomRequests } from 'apps/classrooms/flight-requests/ClassroomRequests';\nimport { ArchivedClassroomsTableApplinks } from 'apps/classrooms/interfaces/ClassroomsTableApplinks';\nimport { SettingsLayout } from 'apps/settings/components/settings-layout/SettingsLayout';\n\nimport { ArchivedClassroomsEmptyState } from './empty-state/ArchivedClassroomsEmptyState';\n\nconst namespace = 'settings.archivedClassrooms';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst applinks: ArchivedClassroomsTableApplinks = {\n delete: {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.DELETE_CLASSROOM\n },\n retrieve: {\n application: AppChannels.CLASSROOMS,\n action: Actions.Classrooms.RETRIEVE_CLASSROOM\n }\n};\n\nexport function ArchivedClassroomsView(): JSX.Element {\n useSetPageMetadata({ title: getPhrase('pageTitle') });\n\n const alerts = useAlerts();\n const dispatch = useDispatch();\n\n const getClassroomsRequest = (cursor?: string) => ClassroomRequests.getArchived(cursor);\n const fetchNext = (cursor?: string) => Flight.getFetch(dispatch)(getClassroomsRequest(cursor));\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const {\n items,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<Classroom>(getClassroomsRequest, fetchNext, onError);\n\n function onError(pageNumber: number, httpStatus: HttpStatus): void {\n if (pageNumber === 1)\n return handleHttpError(httpStatus);\n\n alerts.error(LanguageService.getPhrase(namespace, 'error'));\n }\n\n return (\n <SettingsLayout\n heading={getPhrase('heading')}\n breadcrumbs={[getPhrase('breadcrumb')]}\n >\n {!!items?.length && (\n <WarningAlert><Text namespace={namespace} phrase='note'/></WarningAlert>\n )}\n\n {(() => {\n if (!items || !config.hasCompleted)\n return <PartialClassroomsTable />;\n \n if (!items.length)\n return <ArchivedClassroomsEmptyState />;\n\n return (\n <>\n <ClassroomsTable\n allClassrooms={items}\n imageCdnUrl={config.data.imageCdnUrl}\n appLinks={applinks}\n refreshTable={isFetching}\n currentUser={currentUser.data}\n />\n\n {(hasMore || isFetching) && (\n <InfiniteScrollFooter isFetching={isFetching} fetchNext={fetchNext} nextCursor={nextCursor} />\n )}\n </>\n );\n })()}\n </SettingsLayout>\n );\n}"],"names":["WarningAlert","props","className","SvgContainer","svgName","children","BreadcrumbItem","breadcrumb","name","appLink","active","withBackIcon","size","S","Breadcrumbs","breadcrumbs","isMobile","length","map","b","idx","key","PartialBreadcrumbs","numItems","style","height","width","dangerouslySetInnerHTML","__html","DEFAULT_PARTIAL_LOADING_OPTIONS","minWidth","maxWidth","PartialLoadingHelper","getPartialLoadingItems","options","opts","Array","Math","max","floor","random","namespace","useCanAccessSettings","requiredPermissions","hasPermissions","settingsGroups","currentRoute","application","some","group","modules","settingsModule","action","SettingsLayout","canAccess","replace","i","heading","headingButton","description","ArchivedClassroomsEmptyState","value","EmptyState","src","ImageUrls","Text","phrase","text","LanguageService","getPhrase","applinks","delete","retrieve","ArchivedClassroomsView","useSetPageMetadata","title","alerts","dispatch","getClassroomsRequest","cursor","ClassroomRequests","fetchNext","config","ConfigRequests","currentUser","UserRequests","pageNumber","httpStatus","error","items","hasMore","isFetching","nextCursor","W","hasCompleted","ClassroomsTable","allClassrooms","imageCdnUrl","data","appLinks","refreshTable","InfiniteScrollFooter","PartialClassroomsTable"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7757],{49935:(e,a,t)=>{t.d(a,{Oo:()=>d,b2:()=>u});var n=t(32735),i=t(36848),r=t(86764),c=t(3747),l=t(5859),s=t(35223),o=t(83914),m=function(e){var a=e.breadcrumb,t=a.name,r=a.appLink,c=a.active,l=e.withBackIcon;return n.createElement("li",{className:"breadcrumb-item".concat(c?" active":"")},c?n.createElement("strong",null,t):n.createElement(i.F,{appLink:r},l&&n.createElement(o.x,{svgName:s.vn.ChevronLeft,size:o.S.Small}),n.createElement("span",{className:l?"ms-2":""},t)))},d=function(e){var a=e.breadcrumbs,t=(0,c.a)(r.r.XS),i=null==a?void 0:a.length;return!i||t&&i<2?n.createElement(n.Fragment,null):t?n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},n.createElement(m,{breadcrumb:a[i-2],withBackIcon:!0}))):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},a.map((function(e,a){return n.createElement(m,{key:a,breadcrumb:e})}))))},u=n.memo((function(e){var a=e.numItems,t=void 0===a?3:a;return(0,c.a)(r.r.XS)?n.createElement("div",{className:"partial-loading-background",style:{height:"1.3125rem",width:"6rem"}}):n.createElement("nav",{"aria-label":"breadcrumb"},n.createElement("ol",{className:"breadcrumb m-0 p-0"},l.u.getPartialLoadingItems({numItems:t}).map((function(e,a){var t=e.width;return n.createElement("li",{key:a,className:"breadcrumb-item"},n.createElement("span",{className:"d-inline-block partial-loading-background",style:{width:t},dangerouslySetInnerHTML:{__html:" "}}))}))))}))},74696:(e,a,t)=>{t.d(a,{S:()=>o});var n=t(32735),i=t(68050),r=t(69111),c=t(9977),l=t(79967);const s={partialOptions:"Gufgq",partialName:"SicQQ",partialDescription:"dPGMq",partialThumbnail:"vZrnb",partialDragHandle:"iq73R"};function o(e){return n.createElement("div",{className:"mx-2"},Array(e.numVideos).fill(null).map((function(a,t){return n.createElement("div",{className:"d-flex",key:t},e.allowBulkActions&&n.createElement("div",{className:"form-check pe-3 pe-sm-2 mx-0 mx-md-2"}),n.createElement(m,Object.assign({},e)))})))}function m(e){var a=(0,l.k)(),t="sm"===c.O.getSize(a,"md"),o=e.withReordering&&!a.xs;return n.createElement(i.Z,{className:"".concat(t?"":"py-2"," flex-grow-1")},n.createElement(r.Z,Object.assign({},c.O.getThumbnailColumns(),{className:"flex-column align-items-flex-start ".concat(t?"pb-2 pe-1":"mb-1 pe-3 pe-md-2")}),n.createElement(i.Z,null,!!o&&n.createElement("div",{className:"d-flex align-items-center justify-content-center col-2"},n.createElement("div",{className:"partial-loading-background ".concat(s.partialDragHandle)})),n.createElement(r.Z,{xs:c.O.getThumbnailColSize(o)},n.createElement("div",{className:"partial-loading-background ".concat(t?"rounded":"rounded-3"," ").concat(s.partialThumbnail)})))),n.createElement(r.Z,Object.assign({},c.O.getDetailsColumns(),{className:t?"pb-2":"px-2"}),n.createElement("div",{className:"partial-loading-background mb-1 ".concat(s.partialName)}),n.createElement("div",{className:"partial-loading-background ".concat(s.partialDescription)})))}o.defaultProps={numVideos:15}},5859:(e,a,t)=>{function n(e,a){(null==a||a>e.length)&&(a=e.length);for(var t=0,n=Array(a);t<a;t++)n[t]=e[t];return n}t.d(a,{u:()=>r});var i={numItems:5,minWidth:50,maxWidth:100},r={getPartialLoadingItems:function(){var e,a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=Object.assign(Object.assign({},i),a);return(e=Array(t.numItems),function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,a){if(e){if("string"==typeof e)return n(e,a);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?n(e,a):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(){return{width:"".concat(Math.max(Math.floor(Math.random()*t.maxWidth),t.minWidth),"px")}}))}}},44110:(e,a,t)=>{t.d(a,{i:()=>c});var n=t(20354),i=t(89454),r=t(86698),c=function(){var e=(0,r.y)({redirectOnError:!0}),a=e.activePresentation,t=e.getFallbackPresentation,c=a||t();return n.a.useBasicFetch(!!c&&i.O.presentationAudiences(c.id))}},35014:(e,a,t)=>{t.d(a,{I:()=>s});var n=t(16714),i=t(12754),r=t(22902),c=t(15311),l=t(11387);function s(){var e=(0,r.T)(),a=e.hasPermissions,t=e.hasLocalPermissions,s=(0,(0,c.r)().hasProduct)(i.x.Primary);return{canViewGlance:a(n.C.ViewVideoGlance),canViewResources:!0,canViewInteractives:s&&a(n.C.ViewVideoInteractives),canViewClips:s&&a(n.C.ViewVideoClips),canViewCurriculumLinks:a(n.C.ViewCurriculums),canUseActions:t(n.E.UseVideoActions),canViewPublicLayout:!t(n.E.WatchVideos)&&l.C.hasRegionPrefix(),canViewResourceItems:t(n.E.ViewVideoResourceItems),canNavigate:s}}},94191:(e,a,t)=>{t.r(a),t.d(a,{VideoClipsView:()=>P});var n=t(32735),i=t(81886),r=t(23481),c=t(20354),l=t(28400),s=t(65858),o=t(49935),m=t(13231),d=t(51365),u=t(183),p=t(43012),v=t(39151),g=t(1666),b=t(31949),f=t(1575),h=t(22902),E=t(14070),k=t(97291),y=t(51855),V=t(10671),w=t(27638),N=t(44110),C=t(35014),I=t(22490),L=t(16747),O=t(98620),x=t(82431),A=r.T.encloseNamespace("shared.videoMedia");function P(e){var a,t,r,P,S=e.videoId,j=(0,w.u)(s.LZ.VideoThumbnail),G=j.setFavourite,F=j.canFavourite,R=(0,y.G)().isPlugin,T=(0,V._)({location:V.i.VideoItem}),W=(0,C.I)(),_=c.a.useBasicFetch(b.N.currentUser()),B=c.a.useBasicFetch(_.data.isAuthenticated&&g.h.yearGroups(_.data.customerId)),D=c.a.useBasicFetch(f.R.video(S)),M=c.a.useBasicFetch(W.canViewClips&&p.e.videoClips(S)),Z=null==M?void 0:M.data,$=(null==Z?void 0:Z.length)||0,H=c.a.useBasicFetch(v.L.config()),U="".concat(A("clipHeading")," (").concat($||"",")"),Y=(0,N.i)(),z=(0,h.T)().hasPermissions,Q=[{name:null===(a=D.data)||void 0===a?void 0:a.name,appLink:Object.assign(Object.assign({},O.Y.playVideo),{args:[S,l.m.slugify(null===(t=D.data)||void 0===t?void 0:t.name)]})},{name:U,appLink:{application:k.O.VIDEOS,action:E.e.Videos.VIDEO_CLIPS,args:[S,l.m.slugify(null===(r=D.data)||void 0===r?void 0:r.name)]},active:!0}];return n.useEffect((function(){W.canViewClips||function(){var e;i.Q.C$.trigger(Object.assign(Object.assign({},O.Y.playVideo),{args:[S,l.m.slugify(null===(e=D.data)||void 0===e?void 0:e.name)]}),{replace:!0})}()}),[W.canViewClips]),D.data&&(null==Z?void 0:Z.length)&&H.hasCompleted?n.createElement(d.M.Provider,{value:T},n.createElement("div",{className:"px-3"},n.createElement("h1",{className:"h2 mb-2"},U),n.createElement("div",{className:"mb-2"},n.createElement(o.Oo,{breadcrumbs:Q})),n.createElement(m.E4,{videos:Z,yearGroups:B.data,getVideoAppLink:function(a,t){return I.W.getAppLink(a,Object.assign(Object.assign({},t),{context:u.Q.Widget,contextId:e.videoId}))},hasPermissions:z,getSubTextAppLink:function(e){return x.j.getSeriesAppLink(e.series)},setFavourite:G,canFavourite:F,presentationAudiences:Y.data,imageCdnUrl:null===(P=H.data)||void 0===P?void 0:P.imageCdnUrl,isPlugin:R,getClassroomGuideAppLink:I.W.getClassroomGuideAppLink,getInteractiveGuidanceAppLink:I.W.getInteractiveGuidanceAppLink,getResourceGuidanceAppLink:I.W.getResourceGuidanceAppLink}))):n.createElement(L.l,null)}},98620:(e,a,t)=>{t.d(a,{Y:()=>r});var n=t(14070),i=t(97291),r={playVideo:{application:i.O.VIDEOS,action:n.e.Videos.PLAY_VIDEO},playClip:{application:i.O.CLIPS,action:n.e.Clips.PLAY_CLIP}}},16747:(e,a,t)=>{t.d(a,{l:()=>l});var n=t(32735),i=t(49935),r=t(74696);const c={partialHeading:"okxfx"};function l(){return n.createElement("div",{className:"px-3"},n.createElement("div",{className:"partial-loading-background mb-2 ".concat(c.partialHeading)}),n.createElement("div",{className:"mb-2"},n.createElement(i.b2,null)),n.createElement(r.S,null))}},68050:(e,a,t)=>{t.d(a,{Z:()=>o});var n=t(95685),i=t.n(n),r=t(32735),c=t(46304),l=t(74512);const s=r.forwardRef((({bsPrefix:e,className:a,as:t="div",...n},r)=>{const s=(0,c.vE)(e,"row"),o=(0,c.pi)(),m=(0,c.zG)(),d=`${s}-cols`,u=[];return o.forEach((e=>{const a=n[e];let t;delete n[e],null!=a&&"object"==typeof a?({cols:t}=a):t=a;const i=e!==m?`-${e}`:"";null!=t&&u.push(`${d}${i}-${t}`)})),(0,l.jsx)(t,{ref:r,...n,className:i()(a,s,...u)})}));s.displayName="Row";const o=s}}]);
|
|
2
|
-
//# sourceMappingURL=7757-320e868e90-lite.chunk.js.map
|