@clickview/lite 0.48.0-rc.7 → 0.48.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundles.json +1 -1
- package/dist/scripts/{170-1f815b85a1-lite.chunk.js → 170-2d124965b7-lite.chunk.js} +2 -2
- package/dist/scripts/{170-1f815b85a1-lite.chunk.js.map → 170-2d124965b7-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1818-b9f9297d6d-lite.chunk.js → 1818-72409e60a9-lite.chunk.js} +1 -1
- package/dist/scripts/{1818-b9f9297d6d-lite.chunk.js.map → 1818-72409e60a9-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1863-cf9df40052-lite.chunk.js → 1863-e7c4a6f342-lite.chunk.js} +1 -1
- package/dist/scripts/{1863-cf9df40052-lite.chunk.js.map → 1863-e7c4a6f342-lite.chunk.js.map} +1 -1
- package/dist/scripts/{1958-9889c1ad24-lite.chunk.js → 1958-5336189397-lite.chunk.js} +1 -1
- package/dist/scripts/{1958-9889c1ad24-lite.chunk.js.map → 1958-5336189397-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2086-a247f6e201-lite.chunk.js → 2086-f7082703d0-lite.chunk.js} +1 -1
- package/dist/scripts/{2086-a247f6e201-lite.chunk.js.map → 2086-f7082703d0-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2118-462a279c5a-lite.chunk.js → 2118-ec2a5f1e9b-lite.chunk.js} +2 -2
- package/dist/scripts/{2118-462a279c5a-lite.chunk.js.map → 2118-ec2a5f1e9b-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2182-5c9db07f5b-lite.chunk.js → 2182-8e4d603a1b-lite.chunk.js} +1 -1
- package/dist/scripts/{2182-5c9db07f5b-lite.chunk.js.map → 2182-8e4d603a1b-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2279-5e92c84310-lite.chunk.js → 2279-252e92e1d8-lite.chunk.js} +1 -1
- package/dist/scripts/{2279-5e92c84310-lite.chunk.js.map → 2279-252e92e1d8-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2355-6cd89fa80d-lite.chunk.js → 2355-c588dc3ce2-lite.chunk.js} +1 -1
- package/dist/scripts/{2355-6cd89fa80d-lite.chunk.js.map → 2355-c588dc3ce2-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2469-aa5bbbb17f-lite.chunk.js → 2469-46411b862e-lite.chunk.js} +1 -1
- package/dist/scripts/{2469-aa5bbbb17f-lite.chunk.js.map → 2469-46411b862e-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2672-0fc559f1d1-lite.chunk.js → 2672-b01985cee8-lite.chunk.js} +1 -1
- package/dist/scripts/{2672-0fc559f1d1-lite.chunk.js.map → 2672-b01985cee8-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2734-6c6d57d0f3-lite.chunk.js → 2734-6a7beb2ce2-lite.chunk.js} +1 -1
- package/dist/scripts/{2734-6c6d57d0f3-lite.chunk.js.map → 2734-6a7beb2ce2-lite.chunk.js.map} +1 -1
- package/dist/scripts/{287-ba98be7f21-lite.chunk.js → 287-3cbed16363-lite.chunk.js} +1 -1
- package/dist/scripts/{287-ba98be7f21-lite.chunk.js.map → 287-3cbed16363-lite.chunk.js.map} +1 -1
- package/dist/scripts/{2875-0e5f209e47-lite.chunk.js → 2875-aefd69a61f-lite.chunk.js} +1 -1
- package/dist/scripts/{2875-0e5f209e47-lite.chunk.js.map → 2875-aefd69a61f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3042-6650521d8b-lite.chunk.js → 3042-7c1b5e4ff7-lite.chunk.js} +1 -1
- package/dist/scripts/{3042-6650521d8b-lite.chunk.js.map → 3042-7c1b5e4ff7-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3158-31baada6cc-lite.chunk.js → 3158-2147de456d-lite.chunk.js} +1 -1
- package/dist/scripts/{3158-31baada6cc-lite.chunk.js.map → 3158-2147de456d-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3296-6d80e4dd56-lite.chunk.js → 3296-f3732c93d9-lite.chunk.js} +1 -1
- package/dist/scripts/{3296-6d80e4dd56-lite.chunk.js.map → 3296-f3732c93d9-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3541-7ebd9db295-lite.chunk.js → 3541-15581012d3-lite.chunk.js} +1 -1
- package/dist/scripts/{3541-7ebd9db295-lite.chunk.js.map → 3541-15581012d3-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3841-95df66e647-lite.chunk.js → 3841-bfae79638b-lite.chunk.js} +2 -2
- package/dist/scripts/{3841-95df66e647-lite.chunk.js.map → 3841-bfae79638b-lite.chunk.js.map} +1 -1
- package/dist/scripts/{3888-0bee9a9309-lite.chunk.js → 3888-87c1075a1b-lite.chunk.js} +1 -1
- package/dist/scripts/{3888-0bee9a9309-lite.chunk.js.map → 3888-87c1075a1b-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4138-75a2bb69ab-lite.chunk.js → 4138-b9b03c9900-lite.chunk.js} +1 -1
- package/dist/scripts/{4138-75a2bb69ab-lite.chunk.js.map → 4138-b9b03c9900-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4778-ebe369973c-lite.chunk.js → 4778-3c9f2b7f76-lite.chunk.js} +2 -2
- package/dist/scripts/{4778-ebe369973c-lite.chunk.js.map → 4778-3c9f2b7f76-lite.chunk.js.map} +1 -1
- package/dist/scripts/{4942-a27a31e79e-lite.chunk.js → 4942-acce40b333-lite.chunk.js} +2 -2
- package/dist/scripts/{4942-a27a31e79e-lite.chunk.js.map → 4942-acce40b333-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5075-f8719465be-lite.chunk.js → 5075-53172298fe-lite.chunk.js} +1 -1
- package/dist/scripts/{5075-f8719465be-lite.chunk.js.map → 5075-53172298fe-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5157-cd12e2e443-lite.chunk.js → 5157-47a0f5c088-lite.chunk.js} +1 -1
- package/dist/scripts/{5157-cd12e2e443-lite.chunk.js.map → 5157-47a0f5c088-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5268-f4db3933ff-lite.chunk.js → 5268-9b7560f3b1-lite.chunk.js} +2 -2
- package/dist/scripts/{5268-f4db3933ff-lite.chunk.js.map → 5268-9b7560f3b1-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5442-01ffd95162-lite.chunk.js → 5442-5ddfa2d951-lite.chunk.js} +1 -1
- package/dist/scripts/{5442-01ffd95162-lite.chunk.js.map → 5442-5ddfa2d951-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5591-98cfe6c6e5-lite.chunk.js → 5591-119d72ede5-lite.chunk.js} +1 -1
- package/dist/scripts/{5591-98cfe6c6e5-lite.chunk.js.map → 5591-119d72ede5-lite.chunk.js.map} +1 -1
- package/dist/scripts/{5595-3763b14d77-lite.chunk.js → 5595-628d4f252c-lite.chunk.js} +2 -2
- package/dist/scripts/5595-628d4f252c-lite.chunk.js.map +1 -0
- package/dist/scripts/{6102-4d948a5e48-lite.chunk.js → 6102-751dbbbf33-lite.chunk.js} +3 -3
- package/dist/scripts/{6102-4d948a5e48-lite.chunk.js.map → 6102-751dbbbf33-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6158-0c5e44f800-lite.chunk.js → 6158-d123add596-lite.chunk.js} +1 -1
- package/dist/scripts/{6158-0c5e44f800-lite.chunk.js.map → 6158-d123add596-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6263-8957d50afe-lite.chunk.js → 6263-24e67b7df2-lite.chunk.js} +1 -1
- package/dist/scripts/{6263-8957d50afe-lite.chunk.js.map → 6263-24e67b7df2-lite.chunk.js.map} +1 -1
- package/dist/scripts/{6330-c66465bd6d-lite.chunk.js → 6330-9a2a5fc07e-lite.chunk.js} +1 -1
- package/dist/scripts/{6330-c66465bd6d-lite.chunk.js.map → 6330-9a2a5fc07e-lite.chunk.js.map} +1 -1
- package/dist/scripts/{671-003843ca84-lite.chunk.js → 671-5571f33165-lite.chunk.js} +1 -1
- package/dist/scripts/{671-003843ca84-lite.chunk.js.map → 671-5571f33165-lite.chunk.js.map} +1 -1
- package/dist/scripts/{7167-efe85af16e-lite.chunk.js → 7167-dc4c954c2b-lite.chunk.js} +1 -1
- package/dist/scripts/{7167-efe85af16e-lite.chunk.js.map → 7167-dc4c954c2b-lite.chunk.js.map} +1 -1
- package/dist/scripts/7293-58f4a7cf47-lite.chunk.js +2 -0
- package/dist/scripts/{7293-afd3349468-lite.chunk.js.map → 7293-58f4a7cf47-lite.chunk.js.map} +1 -1
- package/dist/scripts/{7301-f20e4bdb8f-lite.chunk.js → 7301-7c9342ef0c-lite.chunk.js} +1 -1
- package/dist/scripts/{7301-f20e4bdb8f-lite.chunk.js.map → 7301-7c9342ef0c-lite.chunk.js.map} +1 -1
- package/dist/scripts/{7708-ece31b78a9-lite.chunk.js → 7708-e91903481a-lite.chunk.js} +1 -1
- package/dist/scripts/{7708-ece31b78a9-lite.chunk.js.map → 7708-e91903481a-lite.chunk.js.map} +1 -1
- package/dist/scripts/{771-eb60e33941-lite.chunk.js → 771-5612b4ffc2-lite.chunk.js} +2 -2
- package/dist/scripts/{771-eb60e33941-lite.chunk.js.map → 771-5612b4ffc2-lite.chunk.js.map} +1 -1
- package/dist/scripts/{7855-37bcdd134e-lite.chunk.js → 7855-4b69540a71-lite.chunk.js} +1 -1
- package/dist/scripts/{7855-37bcdd134e-lite.chunk.js.map → 7855-4b69540a71-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8024-66413cc05b-lite.chunk.js → 8024-765a4170c7-lite.chunk.js} +2 -2
- package/dist/scripts/{8024-66413cc05b-lite.chunk.js.map → 8024-765a4170c7-lite.chunk.js.map} +1 -1
- package/dist/scripts/{823-58d27c255b-lite.chunk.js → 823-33c5207c68-lite.chunk.js} +1 -1
- package/dist/scripts/{823-58d27c255b-lite.chunk.js.map → 823-33c5207c68-lite.chunk.js.map} +1 -1
- package/dist/scripts/8261-69854ff4d5-lite.chunk.js +2 -0
- package/dist/scripts/8261-69854ff4d5-lite.chunk.js.map +1 -0
- package/dist/scripts/{8466-ee9d40ee97-lite.chunk.js → 8466-cea62163e8-lite.chunk.js} +1 -1
- package/dist/scripts/{8466-ee9d40ee97-lite.chunk.js.map → 8466-cea62163e8-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8681-41edd08b98-lite.chunk.js → 8681-49db3daae6-lite.chunk.js} +2 -2
- package/dist/scripts/{8681-41edd08b98-lite.chunk.js.map → 8681-49db3daae6-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8772-9ae4d77363-lite.chunk.js → 8772-6c11095cea-lite.chunk.js} +1 -1
- package/dist/scripts/{8772-9ae4d77363-lite.chunk.js.map → 8772-6c11095cea-lite.chunk.js.map} +1 -1
- package/dist/scripts/{8906-b75b51bd0f-lite.chunk.js → 8906-2f6b5e4c5c-lite.chunk.js} +2 -2
- package/dist/scripts/{8906-b75b51bd0f-lite.chunk.js.map → 8906-2f6b5e4c5c-lite.chunk.js.map} +1 -1
- package/dist/scripts/{920-4de8efbcf1-lite.chunk.js → 920-acc6596891-lite.chunk.js} +1 -1
- package/dist/scripts/{920-4de8efbcf1-lite.chunk.js.map → 920-acc6596891-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9212-8f95fbd9b9-lite.chunk.js → 9212-cc987a13bf-lite.chunk.js} +1 -1
- package/dist/scripts/{9212-8f95fbd9b9-lite.chunk.js.map → 9212-cc987a13bf-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9242-2e533bdc0d-lite.chunk.js → 9242-144e7728ad-lite.chunk.js} +1 -1
- package/dist/scripts/{9242-2e533bdc0d-lite.chunk.js.map → 9242-144e7728ad-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9264-d2285d4310-lite.chunk.js → 9264-518952f13f-lite.chunk.js} +1 -1
- package/dist/scripts/{9264-d2285d4310-lite.chunk.js.map → 9264-518952f13f-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9478-8eacf2fe47-lite.chunk.js → 9478-4b3c088537-lite.chunk.js} +2 -2
- package/dist/scripts/{9478-8eacf2fe47-lite.chunk.js.map → 9478-4b3c088537-lite.chunk.js.map} +1 -1
- package/dist/scripts/{9484-be04a34bbf-lite.chunk.js → 9484-b85011dbea-lite.chunk.js} +2 -2
- package/dist/scripts/{9484-be04a34bbf-lite.chunk.js.map → 9484-b85011dbea-lite.chunk.js.map} +1 -1
- package/dist/scripts/{bundle-8f540a1154.min.js → bundle-c158cdd3a9.min.js} +3 -3
- package/dist/scripts/{bundle-8f540a1154.min.js.map → bundle-c158cdd3a9.min.js.map} +1 -1
- package/package.json +1 -1
- package/dist/scripts/5595-3763b14d77-lite.chunk.js.map +0 -1
- package/dist/scripts/7293-afd3349468-lite.chunk.js +0 -2
- package/dist/scripts/8261-72453f1978-lite.chunk.js +0 -2
- package/dist/scripts/8261-72453f1978-lite.chunk.js.map +0 -1
- /package/dist/scripts/{170-1f815b85a1-lite.chunk.js.LICENSE.txt → 170-2d124965b7-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{2118-462a279c5a-lite.chunk.js.LICENSE.txt → 2118-ec2a5f1e9b-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{3841-95df66e647-lite.chunk.js.LICENSE.txt → 3841-bfae79638b-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{4778-ebe369973c-lite.chunk.js.LICENSE.txt → 4778-3c9f2b7f76-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{4942-a27a31e79e-lite.chunk.js.LICENSE.txt → 4942-acce40b333-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{5268-f4db3933ff-lite.chunk.js.LICENSE.txt → 5268-9b7560f3b1-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6102-4d948a5e48-lite.chunk.js.LICENSE.txt → 6102-751dbbbf33-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{771-eb60e33941-lite.chunk.js.LICENSE.txt → 771-5612b4ffc2-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8024-66413cc05b-lite.chunk.js.LICENSE.txt → 8024-765a4170c7-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8681-41edd08b98-lite.chunk.js.LICENSE.txt → 8681-49db3daae6-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8906-b75b51bd0f-lite.chunk.js.LICENSE.txt → 8906-2f6b5e4c5c-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9478-8eacf2fe47-lite.chunk.js.LICENSE.txt → 9478-4b3c088537-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{9484-be04a34bbf-lite.chunk.js.LICENSE.txt → 9484-b85011dbea-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-8f540a1154.min.js.LICENSE.txt → bundle-c158cdd3a9.min.js.LICENSE.txt} +0 -0
package/dist/scripts/{1958-9889c1ad24-lite.chunk.js.map → 1958-5336189397-lite.chunk.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/1958-9889c1ad24-lite.chunk.js","mappings":"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","sources":["file:///app/packages/projects/lite/src/apps/classrooms/components/join-classroom-response-details/JoinClassroomResponseDetails.tsx","file:///app/packages/projects/lite/src/apps/launchpad/views/join-classroom/join-classroom.scss","file:///app/packages/projects/lite/src/apps/launchpad/views/join-classroom/JoinClassroomView.tsx","file:///app/packages/projects/lite/src/shared/components/launchpad/launchpad.scss","file:///app/packages/projects/lite/src/shared/components/launchpad/Launchpad.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'classrooms.joinClassroomResponseDetails';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface JoinClassroomResponseDetailsProps {\n classroomName?: string;\n error?: 'invalid' | 'wrong-school' | 'not-a-learner' | 'unknown' | null;\n}\n\nexport function JoinClassroomResponseDetails(props: JoinClassroomResponseDetailsProps): JSX.Element {\n const [ error, setError ] = React.useState('');\n const [ message, setMessage ] = React.useState('');\n\n React.useEffect(() => {\n switch (props.error) {\n case 'invalid':\n setError(getPhrase('invalidError'));\n setMessage(getPhrase('invalidMessage'));\n break;\n case 'wrong-school':\n setError(getPhrase('wrongSchoolError'));\n setMessage(getPhrase('wrongSchoolMessage'));\n break;\n case 'not-a-learner':\n setError(getPhrase('notALearnerError'));\n setMessage(getPhrase('notALearnerMessage'));\n break;\n default:\n setError(getPhrase('unknownError'));\n setMessage(getPhrase('unknownMessage'));\n break;\n }\n }, [props.error]);\n\n if (!props.error)\n return (\n <div>\n <img src={ImageUrls.AddStudents.JoinClassroomResponse.SUCCESS} className='w-50 mb-3 d-block mx-auto' />\n <div className='text-center h6'><strong>{getPhrase('success')}</strong></div>\n <div className='text-center mb-3'>{getPhrase('join')}<strong>{props.classroomName}</strong></div>\n </div>\n );\n \n return (\n <div>\n <img src={ImageUrls.AddStudents.JoinClassroomResponse.ERROR} className='w-50 mb-3 d-block mx-auto' />\n <div className='text-center h6'><strong>{error}</strong></div>\n <div className='text-center mb-3'>{message}</div>\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"logo\":\"d_Zk6\",\"formContainer\":\"RrOGB\"};","import React from 'react';\nimport { Spinner } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\n\nimport { LocationUtils } from 'libs/common/backbone/core';\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Xhr } from 'libs/common/backbone/interfaces';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { ClickViewLogo } from 'libs/shared/components/svgs/clickview-logo/ClickViewLogo';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { CurrentUser } from 'libs/shared/interfaces';\n\nimport { Launchpad } from 'shared/components/launchpad/Launchpad';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { JoinClassroomResponseDetails } from 'apps/classrooms/components/join-classroom-response-details/JoinClassroomResponseDetails';\nimport { ClassroomRequests } from 'apps/classrooms/flight-requests/ClassroomRequests';\nimport { JoinClassroomResponse } from 'apps/classrooms/interfaces/JoinClassroomResponse';\n\nimport styles from './join-classroom.scss';\n\nconst namespace = 'classrooms.joinClassroom';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ntype Errors = 'invalid' | 'wrong-school' | 'not-a-learner' | 'unknown' | null;\n\ninterface JoinClassroomProps {\n joinCode: string;\n}\n\nexport function JoinClassroomView(props: JoinClassroomProps): React.ReactElement {\n const dispatch = useDispatch();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n\n const [ isComplete, setIsComplete ] = React.useState(false);\n const [ error, setError ] = React.useState<Errors>(null);\n const [ classroomName, setClassroomName ] = React.useState('');\n\n function onSuccess(resp: JoinClassroomResponse): void {\n setClassroomName(resp.classroomName);\n setIsComplete(true);\n }\n\n function onError(xhr: Xhr): void {\n switch (xhr.status) {\n case HttpStatus.NotFound:\n setError('invalid');\n break;\n case HttpStatus.Forbidden:\n setError('wrong-school');\n break;\n case HttpStatus.BadRequest:\n setError('not-a-learner');\n break;\n default:\n setError('unknown');\n break;\n }\n setIsComplete(true);\n }\n\n function checkCode(): void {\n Flight.fetch(dispatch, ClassroomRequests.checkJoinCode(props.joinCode, resp => {\n if (currentUser.data.isAuthenticated) {\n joinClassroom();\n return;\n }\n\n Core.AppLinkHelper.trigger({\n application: AppChannels.DEFAULT,\n action: Actions.Default.LOG_IN,\n params: {\n redirectUrl: LocationUtils.GetCurrentPath() + LocationUtils.GetCurrentQueryString(),\n skipPrompt: true,\n customerId: resp.customerId\n }\n });\n }, onError));\n }\n\n function joinClassroom(): void {\n Flight.fetch(dispatch, ClassroomRequests.joinClassroom(\n props.joinCode,\n onSuccess,\n onError\n ));\n }\n\n React.useEffect(() => {\n if (!currentUser.data)\n return;\n\n checkCode();\n }, [currentUser.data?.isAuthenticated]);\n\n return (\n <Launchpad>\n <div className={`${styles.formContainer} m-auto`}>\n <div className={`${styles.logo} mb-4 mx-auto`}>\n <ClickViewLogo />\n </div>\n {!isComplete && <div className='text-center p-5'>\n <Spinner as='div' animation='border' role='status' />\n </div>}\n {isComplete && !error && <JoinClassroomResponseDetails classroomName={classroomName}/>}\n {isComplete && error && <JoinClassroomResponseDetails error={error}/>}\n {currentUser.data?.isAuthenticated &&\n <AppLink\n className='btn btn-dark w-100 mt-2 btn-lg'\n appLink={{\n application: AppChannels.DASHBOARD,\n action: Actions.Dashboard.HOME\n }}\n >\n {getPhrase('enter')}\n </AppLink>\n }\n </div>\n </Launchpad>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"left\":\"vIypY\",\"leftTextImage\":\"YViNj\",\"right\":\"MkD4u\",\"blur\":\"X6mCh\",\"imageContainer\":\"bc7kz\",\"imagePosition\":\"JOhEj\",\"image\":\"Ef2QR\",\"thumbnail\":\"Gdurb\",\"tallposter\":\"fjVNK\",\"cover\":\"o3j31\",\"linksContainer\":\"AT9Dk\"};","import React from 'react';\n\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport styles from './launchpad.scss';\n\nconst FALLBACK_IMAGES = [\n {\n bgUrl: ImageUrls.LaunchPad.BG_1\n },\n {\n bgUrl: ImageUrls.LaunchPad.BG_2\n },\n {\n bgUrl: ImageUrls.LaunchPad.BG_3\n },\n {\n bgUrl: ImageUrls.LaunchPad.BG_4\n },\n {\n bgUrl: ImageUrls.LaunchPad.BG_5\n }\n];\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst XMAS_URLS: LaunchImage[] = [\n {\n bgUrl: '/images/launchpad/xmas/2024-promo1-bg.png'\n },\n {\n bgUrl: '/images/launchpad/xmas/2024-promo2-bg.png'\n },\n {\n bgUrl: '/images/launchpad/xmas/2024-promo3-bg.png'\n },\n {\n bgUrl: '/images/launchpad/xmas/2024-promo4-bg.png'\n },\n {\n bgUrl: '/images/launchpad/xmas/2024-promo5-bg.png'\n }\n];\n\nfunction mapObjectTypeToImageClass(objectType: MasterType): string {\n switch (objectType) {\n case MasterType.Video:\n case MasterType.Interactive:\n case MasterType.Clip:\n return styles.thumbnail;\n\n case MasterType.Subject:\n case MasterType.Playlist:\n return styles.cover;\n\n case MasterType.Series:\n return styles.tallposter;\n\n default:\n return '';\n }\n}\n\ninterface LaunchpadLink {\n url: string;\n text: string;\n onClick?: () => void;\n hide?: boolean;\n}\n\ninterface LaunchpadProps {\n objectType?: MasterType;\n title?: string;\n imageUrl?: string;\n links?: LaunchpadLink[];\n leftComponent?: () => JSX.Element;\n}\n\ninterface LaunchImage {\n bgUrl: string;\n textUrl?: string;\n}\n\nfunction getRandomImage(urlLists: LaunchImage[]): LaunchImage {\n return urlLists[Math.floor(Math.random() * urlLists.length)];\n}\n\nexport function Launchpad(props: React.PropsWithChildren<LaunchpadProps>): JSX.Element {\n const [ showImage, setShowImage ] = React.useState(false);\n const [ image, setImage ] = React.useState<string>('');\n const [ textImage, setTextImage ] = React.useState<string>('');\n\n const imageUrl = ImageHelper.createUrl(props.imageUrl, { size: ImageSize.Large });\n const IMAGE_URLS = FALLBACK_IMAGES;\n\n React.useEffect(() => {\n if (imageUrl || !IMAGE_URLS || IMAGE_URLS.length === 0)\n return;\n\n const image = getRandomImage(IMAGE_URLS);\n\n if (image.bgUrl) {\n setImage(image.bgUrl);\n }\n\n if (image.textUrl) {\n setTextImage(image.textUrl);\n }\n }, []);\n\n React.useEffect(() => {\n if (!imageUrl)\n return;\n\n const img = new Image();\n img.onload = () => setShowImage(true);\n img.src = imageUrl;\n return () => img.onload = null;\n }, []);\n\n return (\n <div className='d-flex'>\n { props.leftComponent ?\n props.leftComponent()\n :\n <div className={`${styles.left} bg-light`} style={{ backgroundImage: `url('${image}')` }}>\n { textImage && (\n <div className={styles.leftTextImage} style={{ backgroundImage: `url('${textImage}')` }} />\n )}\n \n {showImage &&\n <>\n <div className={styles.blur} style={{ backgroundImage: `url('${imageUrl}')` }} />\n <div className={`${styles.imageContainer} ${mapObjectTypeToImageClass(props.objectType)}`}>\n <div className={styles.imagePosition}>\n <img className={styles.image} src={imageUrl} alt={props.title} />\n </div>\n </div>\n </>\n }\n </div>\n }\n <div className={`${styles.right} bg-white d-flex flex-column`}>\n <div className={`position-absolute d-flex align-items-center ${styles.linksContainer}`}>\n {props.links?.map((link, key) => {\n if (link.hide)\n return <React.Fragment key={key}></React.Fragment>;\n\n return (\n <a key={key} href={link.url} className='info-link fw-semibold' onClick={link.onClick}>\n {link.text}\n </a>\n );\n })}\n </div>\n\n {props.children}\n </div>\n </div>\n );\n}"],"names":["getPhrase","LanguageService","JoinClassroomResponseDetails","props","error","setError","message","setMessage","src","ImageUrls","className","classroomName","JoinClassroomView","dispatch","currentUser","UserRequests","isComplete","setIsComplete","setClassroomName","onSuccess","resp","onError","xhr","status","HttpStatus","data","ClassroomRequests","joinCode","isAuthenticated","application","action","params","redirectUrl","skipPrompt","customerId","Launchpad","ClickViewLogo","Spinner","as","animation","role","AppLink","appLink","FALLBACK_IMAGES","bgUrl","mapObjectTypeToImageClass","objectType","MasterType","showImage","setShowImage","image","setImage","textImage","setTextImage","imageUrl","ImageHelper","size","IMAGE_URLS","length","urlLists","Math","floor","random","textUrl","img","Image","onload","leftComponent","style","backgroundImage","alt","title","links","map","link","key","hide","href","url","onClick","text","children"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"scripts/1958-5336189397-lite.chunk.js","mappings":"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","sources":["file:///app/packages/projects/lite/src/apps/classrooms/components/join-classroom-response-details/JoinClassroomResponseDetails.tsx","file:///app/packages/projects/lite/src/apps/launchpad/views/join-classroom/join-classroom.scss","file:///app/packages/projects/lite/src/apps/launchpad/views/join-classroom/JoinClassroomView.tsx","file:///app/packages/projects/lite/src/shared/components/launchpad/launchpad.scss","file:///app/packages/projects/lite/src/shared/components/launchpad/Launchpad.tsx"],"sourcesContent":["import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nconst namespace = 'classrooms.joinClassroomResponseDetails';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface JoinClassroomResponseDetailsProps {\n classroomName?: string;\n error?: 'invalid' | 'wrong-school' | 'not-a-learner' | 'unknown' | null;\n}\n\nexport function JoinClassroomResponseDetails(props: JoinClassroomResponseDetailsProps): JSX.Element {\n const [ error, setError ] = React.useState('');\n const [ message, setMessage ] = React.useState('');\n\n React.useEffect(() => {\n switch (props.error) {\n case 'invalid':\n setError(getPhrase('invalidError'));\n setMessage(getPhrase('invalidMessage'));\n break;\n case 'wrong-school':\n setError(getPhrase('wrongSchoolError'));\n setMessage(getPhrase('wrongSchoolMessage'));\n break;\n case 'not-a-learner':\n setError(getPhrase('notALearnerError'));\n setMessage(getPhrase('notALearnerMessage'));\n break;\n default:\n setError(getPhrase('unknownError'));\n setMessage(getPhrase('unknownMessage'));\n break;\n }\n }, [props.error]);\n\n if (!props.error)\n return (\n <div>\n <img src={ImageUrls.AddStudents.JoinClassroomResponse.SUCCESS} className='w-50 mb-3 d-block mx-auto' />\n <div className='text-center h6'><strong>{getPhrase('success')}</strong></div>\n <div className='text-center mb-3'>{getPhrase('join')}<strong>{props.classroomName}</strong></div>\n </div>\n );\n \n return (\n <div>\n <img src={ImageUrls.AddStudents.JoinClassroomResponse.ERROR} className='w-50 mb-3 d-block mx-auto' />\n <div className='text-center h6'><strong>{error}</strong></div>\n <div className='text-center mb-3'>{message}</div>\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"logo\":\"d_Zk6\",\"formContainer\":\"RrOGB\"};","import React from 'react';\nimport { Spinner } from 'react-bootstrap';\nimport { useDispatch } from 'react-redux';\n\nimport { LocationUtils } from 'libs/common/backbone/core';\nimport { HttpStatus } from 'libs/common/backbone/enums/HttpStatus';\nimport { Xhr } from 'libs/common/backbone/interfaces';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { ClickViewLogo } from 'libs/shared/components/svgs/clickview-logo/ClickViewLogo';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { CurrentUser } from 'libs/shared/interfaces';\n\nimport { Launchpad } from 'shared/components/launchpad/Launchpad';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { JoinClassroomResponseDetails } from 'apps/classrooms/components/join-classroom-response-details/JoinClassroomResponseDetails';\nimport { ClassroomRequests } from 'apps/classrooms/flight-requests/ClassroomRequests';\nimport { JoinClassroomResponse } from 'apps/classrooms/interfaces/JoinClassroomResponse';\n\nimport styles from './join-classroom.scss';\n\nconst namespace = 'classrooms.joinClassroom';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ntype Errors = 'invalid' | 'wrong-school' | 'not-a-learner' | 'unknown' | null;\n\ninterface JoinClassroomProps {\n joinCode: string;\n}\n\nexport function JoinClassroomView(props: JoinClassroomProps): React.ReactElement {\n const dispatch = useDispatch();\n\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n\n const [ isComplete, setIsComplete ] = React.useState(false);\n const [ error, setError ] = React.useState<Errors>(null);\n const [ classroomName, setClassroomName ] = React.useState('');\n\n function onSuccess(resp: JoinClassroomResponse): void {\n setClassroomName(resp.classroomName);\n setIsComplete(true);\n }\n\n function onError(xhr: Xhr): void {\n switch (xhr.status) {\n case HttpStatus.NotFound:\n setError('invalid');\n break;\n case HttpStatus.Forbidden:\n setError('wrong-school');\n break;\n case HttpStatus.BadRequest:\n setError('not-a-learner');\n break;\n default:\n setError('unknown');\n break;\n }\n setIsComplete(true);\n }\n\n function checkCode(): void {\n Flight.fetch(dispatch, ClassroomRequests.checkJoinCode(props.joinCode, resp => {\n if (currentUser.data.isAuthenticated) {\n joinClassroom();\n return;\n }\n\n Core.AppLinkHelper.trigger({\n application: AppChannels.DEFAULT,\n action: Actions.Default.LOG_IN,\n params: {\n redirectUrl: LocationUtils.GetCurrentPath() + LocationUtils.GetCurrentQueryString(),\n skipPrompt: true,\n customerId: resp.customerId\n }\n });\n }, onError));\n }\n\n function joinClassroom(): void {\n Flight.fetch(dispatch, ClassroomRequests.joinClassroom(\n props.joinCode,\n onSuccess,\n onError\n ));\n }\n\n React.useEffect(() => {\n if (!currentUser.data)\n return;\n\n checkCode();\n }, [currentUser.data?.isAuthenticated]);\n\n return (\n <Launchpad>\n <div className={`${styles.formContainer} m-auto`}>\n <div className={`${styles.logo} mb-4 mx-auto`}>\n <ClickViewLogo />\n </div>\n {!isComplete && <div className='text-center p-5'>\n <Spinner as='div' animation='border' role='status' />\n </div>}\n {isComplete && !error && <JoinClassroomResponseDetails classroomName={classroomName}/>}\n {isComplete && error && <JoinClassroomResponseDetails error={error}/>}\n {currentUser.data?.isAuthenticated &&\n <AppLink\n className='btn btn-dark w-100 mt-2 btn-lg'\n appLink={{\n application: AppChannels.DASHBOARD,\n action: Actions.Dashboard.HOME\n }}\n >\n {getPhrase('enter')}\n </AppLink>\n }\n </div>\n </Launchpad>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"left\":\"vIypY\",\"leftTextImage\":\"YViNj\",\"right\":\"MkD4u\",\"blur\":\"X6mCh\",\"imageContainer\":\"bc7kz\",\"imagePosition\":\"JOhEj\",\"image\":\"Ef2QR\",\"thumbnail\":\"Gdurb\",\"tallposter\":\"fjVNK\",\"cover\":\"o3j31\",\"linksContainer\":\"AT9Dk\"};","import React from 'react';\n\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\n\nimport styles from './launchpad.scss';\n\nconst FALLBACK_IMAGES = [\n {\n bgUrl: ImageUrls.LaunchPad.BG_1\n },\n {\n bgUrl: ImageUrls.LaunchPad.BG_2\n },\n {\n bgUrl: ImageUrls.LaunchPad.BG_3\n },\n {\n bgUrl: ImageUrls.LaunchPad.BG_4\n },\n {\n bgUrl: ImageUrls.LaunchPad.BG_5\n }\n];\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst XMAS_URLS: LaunchImage[] = [\n {\n bgUrl: '/images/launchpad/xmas/2024-promo1-bg.png'\n },\n {\n bgUrl: '/images/launchpad/xmas/2024-promo2-bg.png'\n },\n {\n bgUrl: '/images/launchpad/xmas/2024-promo3-bg.png'\n },\n {\n bgUrl: '/images/launchpad/xmas/2024-promo4-bg.png'\n },\n {\n bgUrl: '/images/launchpad/xmas/2024-promo5-bg.png'\n }\n];\n\nfunction mapObjectTypeToImageClass(objectType: MasterType): string {\n switch (objectType) {\n case MasterType.Video:\n case MasterType.Interactive:\n case MasterType.Clip:\n return styles.thumbnail;\n\n case MasterType.Subject:\n case MasterType.Playlist:\n return styles.cover;\n\n case MasterType.Series:\n return styles.tallposter;\n\n default:\n return '';\n }\n}\n\ninterface LaunchpadLink {\n url: string;\n text: string;\n onClick?: () => void;\n hide?: boolean;\n}\n\ninterface LaunchpadProps {\n objectType?: MasterType;\n title?: string;\n imageUrl?: string;\n links?: LaunchpadLink[];\n leftComponent?: () => JSX.Element;\n}\n\ninterface LaunchImage {\n bgUrl: string;\n textUrl?: string;\n}\n\nfunction getRandomImage(urlLists: LaunchImage[]): LaunchImage {\n return urlLists[Math.floor(Math.random() * urlLists.length)];\n}\n\nexport function Launchpad(props: React.PropsWithChildren<LaunchpadProps>): JSX.Element {\n const [ showImage, setShowImage ] = React.useState(false);\n const [ image, setImage ] = React.useState<string>('');\n const [ textImage, setTextImage ] = React.useState<string>('');\n\n const imageUrl = ImageHelper.createUrl(props.imageUrl, { size: ImageSize.Large });\n const IMAGE_URLS = FALLBACK_IMAGES;\n\n React.useEffect(() => {\n if (imageUrl || !IMAGE_URLS || IMAGE_URLS.length === 0)\n return;\n\n const image = getRandomImage(IMAGE_URLS);\n\n if (image.bgUrl) {\n setImage(image.bgUrl);\n }\n\n if (image.textUrl) {\n setTextImage(image.textUrl);\n }\n }, []);\n\n React.useEffect(() => {\n if (!imageUrl)\n return;\n\n const img = new Image();\n img.onload = () => setShowImage(true);\n img.src = imageUrl;\n return () => img.onload = null;\n }, []);\n\n return (\n <div className='d-flex'>\n { props.leftComponent ?\n props.leftComponent()\n :\n <div className={`${styles.left} bg-light`} style={{ backgroundImage: `url('${image}')` }}>\n { textImage && (\n <div className={styles.leftTextImage} style={{ backgroundImage: `url('${textImage}')` }} />\n )}\n \n {showImage &&\n <>\n <div className={styles.blur} style={{ backgroundImage: `url('${imageUrl}')` }} />\n <div className={`${styles.imageContainer} ${mapObjectTypeToImageClass(props.objectType)}`}>\n <div className={styles.imagePosition}>\n <img className={styles.image} src={imageUrl} alt={props.title} />\n </div>\n </div>\n </>\n }\n </div>\n }\n <div className={`${styles.right} bg-white d-flex flex-column`}>\n <div className={`position-absolute d-flex align-items-center ${styles.linksContainer}`}>\n {props.links?.map((link, key) => {\n if (link.hide)\n return <React.Fragment key={key}></React.Fragment>;\n\n return (\n <a key={key} href={link.url} className='info-link fw-semibold' onClick={link.onClick}>\n {link.text}\n </a>\n );\n })}\n </div>\n\n {props.children}\n </div>\n </div>\n );\n}"],"names":["getPhrase","LanguageService","JoinClassroomResponseDetails","props","error","setError","message","setMessage","src","ImageUrls","className","classroomName","JoinClassroomView","dispatch","currentUser","UserRequests","isComplete","setIsComplete","setClassroomName","onSuccess","resp","onError","xhr","status","HttpStatus","data","ClassroomRequests","joinCode","isAuthenticated","application","action","params","redirectUrl","skipPrompt","customerId","Launchpad","ClickViewLogo","Spinner","as","animation","role","AppLink","appLink","FALLBACK_IMAGES","bgUrl","mapObjectTypeToImageClass","objectType","MasterType","showImage","setShowImage","image","setImage","textImage","setTextImage","imageUrl","ImageHelper","size","IMAGE_URLS","length","urlLists","Math","floor","random","textUrl","img","Image","onload","leftComponent","style","backgroundImage","alt","title","links","map","link","key","hide","href","url","onClick","text","children"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[2086],{29024:(e,t,n)=>{n.d(t,{k:()=>h});var a=n(32735),r=n(75163),l=n(5465),i=n(72355),c=n(7733),o=n(54610),s=n(4594),u=n(68626),m=n(9085),d=n(67453),p=n(31908);const f={thumbnailFallbackSvg:"D4JFs",posterFallbackSvg:"bjUWl",coverFallbackSvg:"kdLpt"};var v="rounded overflow-hidden";function h(e){var t=a.useCallback((function(t){var n;t&&e.fixedHeight&&(t.style.width="".concat(t.offsetHeight*(n=e.object,p.M.isVideoType(n)?16/9:n.typeId===s.E.Playlist?1:n.typeId===s.E.Series?9/16:void 0),"px"))}),[]),n={size:o.h2.Small},h=function(e){var t=d.j.getDisplayImageFromObject(e);if(p.M.isVideoType(e))return{image:t,imageType:o.__.Thumbnails,imageClassName:v,imageFallbackComponent:a.createElement(l.oy,{type:l.mS.Video})};switch(e.typeId){case s.E.Series:return{image:t,imageType:o.__.TallPosters,imageClassName:v,imageFallbackComponent:a.createElement(l.oy,{type:l.mS.Series,svgContainerClassName:f.posterFallbackSvg})};case s.E.Playlist:return{image:t,imageType:o.__.Covers,imageClassName:(null==t?void 0:t.url)?v:"".concat(v," ").concat((0,m.x)(e.name,c.o)),imageFallbackComponent:a.createElement(l.oy,{type:l.mS.Playlist,svgContainerClassName:(null==t?void 0:t.url)?f.coverFallbackSvg:"d-none",extraClasses:!(null==t?void 0:t.url)&&"bg-transparent"})}}}(e.object),g=h.image,E=h.imageType,y=h.imageClassName,b=h.imageFallbackComponent,C=p.M.isVideoType(e.object)&&!!e.showVideoMetadata;return a.createElement("div",{className:"d-flex align-items-center justify-content-center w-100 h-100"},a.createElement("div",{ref:t,className:e.fixedHeight?"h-100":"w-100"},C&&a.createElement(i.u,{video:e.object,imageOptions:n,textPosition:u.z.Independent,type:"cosmetic",appLink:e.appLink,analyticsOptions:{location:e.locationContext},hideDuration:!0,hideMask:!0,size:"sm"}),!C&&a.createElement(r.Z,{data:null==g?void 0:g.url,imageType:E,imageOptions:n,appLink:e.appLink,className:y},b)))}},95834:(e,t,n)=>{n.d(t,{J:()=>a});var a={table:"striped-list no-full-width pb-3",header:"fw-semibold pb-1",headerCell:"py-2 ps-2 text-nowrap",row:"striped-row rounded",cell:"d-flex align-items-center p-2"}},31754:(e,t,n)=>{n.d(t,{x:()=>c});var a=n(82602),r=n(75896),l=n(89682),i=n(11576),c={groupByDateShared:function(e){var t=r.m.groupBy(e,"dateShared");return Object.keys(t).sort().reverse().reduce((function(e,n){var r=(0,a.WU)(n);return e[r]||(e[r]=[]),e[r]=e[r].concat(t[n]),e}),{})},mapActivityStatusToCheckMarkStatus:function(e){switch(e){case i.T.Complete:return l.h.Complete;case i.T.Incomplete:return l.h.Incomplete;case i.T.None:return l.h.None}},mapCheckMarkStatusToActivityStatus:function(e){switch(e){case l.h.Complete:return i.T.Complete;case l.h.Incomplete:return i.T.Incomplete;case l.h.None:return i.T.None}}}},71020:(e,t,n)=>{n.d(t,{_:()=>u});var a=n(32735),r=n(80247),l=n(34152),i=n(83914),c=n(35223);const o={container:"VwD1b",spinner:"eJ85e"};function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}function u(e){var t,n,u=(t=(0,l.YD)(),n=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,l,i,c=[],o=!0,s=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;o=!1}else for(;!(o=(a=l.call(n)).done)&&(c.push(a.value),c.length!==t);o=!0);}catch(e){s=!0,r=e}finally{try{if(!o&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw r}}return c}}(t,n)||function(e,t){if(e){if("string"==typeof e)return s(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?s(e,t):void 0}}(t,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),m=u[0],d=u[1];return a.useEffect((function(){var t;e.fetchOnScroll&&d&&!e.isFetching&&(null===(t=e.fetchNext)||void 0===t||t.call(e,e.nextCursor))}),[d,e.isFetching]),a.createElement("div",{className:"p-3 text-center ".concat(o.container),ref:m},e.isFetching?a.createElement(r.Z,{as:"span",animation:"border",role:"status",className:o.spinner}):a.createElement(i.x,{svgName:c.vn.ChevronDown,className:"svg-container cursor-pointer",size:i.S.Large,onClick:function(){var t;return null===(t=e.fetchNext)||void 0===t?void 0:t.call(e,e.nextCursor)}}))}u.defaultProps={fetchOnScroll:!1}},38502:(e,t,n)=>{n.d(t,{r:()=>s});var a=n(32735),r=n(49985),l=n(36848),i=n(18559),c=n(11607),o=n(87432);function s(e){var t;return a.createElement("nav",{className:null!==(t=e.className)&&void 0!==t?t:""},a.createElement("ul",{className:"list-unstyled d-inline-block m-0 ".concat(o.Z.pillTabSelector)},e.tabs.map((function(e){return a.createElement("li",{className:"p-0 ".concat(e.active?"btn btn-dark":"btn btn-outline-dark"),key:e.name},e.appLink?a.createElement(l.F,{appLink:e.appLink,analyticsData:e.analyticsData,analyticsOptions:e.analyticsOptions,className:"cursor-pointer d-flex justify-content-center text-decoration-none text-reset px-2 ".concat(o.Z.pillItem)},e.name,"number"==typeof e.count&&a.createElement("div",{className:"ps-2"},a.createElement(i.C,{type:i.g.Count,data:e.count}))):a.createElement(c.L,{className:"".concat(o.Z.pillItem," d-flex justify-content-center p-2"),onClick:function(){return function(e){!e.active&&e.onSelect&&(e.onSelect(),e.analyticsData&&e.analyticsOptions&&r.k.logUserAction(e.analyticsData,e.analyticsOptions))}(e)}},e.name,"number"==typeof e.count&&a.createElement("div",{className:"ps-2"},a.createElement(i.C,{type:i.g.Count,data:e.count}))))}))))}},60115:(e,t,n)=>{n.d(t,{K:()=>s});var a=n(32735),r=n(50242),l=n(91967),i=400,c=n(45719);function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=new Array(t);n<t;n++)a[n]=e[n];return a}function s(e,t,n,s,u,m){var d,p,f,v,h=(d=(0,a.useState)(0),p=2,function(e){if(Array.isArray(e))return e}(d)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var a,r,l,i,c=[],o=!0,s=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;o=!1}else for(;!(o=(a=l.call(n)).done)&&(c.push(a.value),c.length!==t);o=!0);}catch(e){s=!0,r=e}finally{try{if(!o&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(s)throw r}}return c}}(d,p)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(e,t):void 0}}(d,p)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),g=h[0],E=h[1],y=t,b=(0,c.P)((function(t){if(!e)return null;var n=e(t);return n?n.key:null}),s,u);return f={fetchNextPage:function(){if(t&&e&&b)return E((function(e){return e+1})),y(b.nextCursor)},hasMore:!!(null==b?void 0:b.nextCursor),isFetching:null==b?void 0:b.isFetching,scrollContainer:m},v=function(){if(!f.isFetching){if(f.scrollContainer){var e=f.scrollContainer;if(e.getBoundingClientRect().height+e.scrollTop<e.scrollHeight-i)return}else if(window.innerHeight+document.documentElement.scrollTop<document.documentElement.scrollHeight-i)return;f.fetchNextPage()}},(0,a.useEffect)((function(){var e=l.q.throttle(v,200),t=f.scrollContainer||window;return f.hasMore&&t.addEventListener("scroll",e),function(){return t.removeEventListener("scroll",e)}}),[f.hasMore,f.fetchNextPage,f.scrollContainer]),(0,a.useEffect)((function(){b&&b.shouldInitialFetch&&t&&(y(),E((function(e){return e+1})))}),[null==b?void 0:b.shouldInitialFetch,t]),(0,a.useEffect)((function(){var e,t;if((null==b?void 0:b.statusCode)&&l.q.isFunction(n)){var a=+(null===(t=null===(e=b.statusCode)||void 0===e?void 0:e.toString())||void 0===t?void 0:t.substr(0,1));a!==r.k.ClientError&&a!==r.k.ServerError||n(g,b.statusCode)}}),[null==b?void 0:b.statusCode]),{items:null==b?void 0:b.items,hasMore:!!(null==b?void 0:b.nextCursor),nextCursor:null==b?void 0:b.nextCursor,isFetching:null==b?void 0:b.isFetching,totalItems:null==b?void 0:b.totalItems,hasFirstPageCompleted:null==b?void 0:b.hasFirstPageCompleted}}},2523:(e,t,n)=>{n.d(t,{w:()=>p});var a=n(32735),r=n(23481),l=n(81886),i=n(38502),c=n(75795),o=n(14070),s=n(97291),u=r.T.encloseNamespace("share.sharesHeader"),m={application:s.O.MY_SHARES,action:o.e.MyShares.SHARED_BY_ME},d={application:s.O.MY_SHARES,action:o.e.MyShares.SHARED_WITH_ME};function p(){return a.createElement("div",{className:"pb-3"},a.createElement("h1",{className:"h2 mb-3"},u("shares")),a.createElement(i.r,{tabs:(t=null===(e=c.O.getCurrentRoute())||void 0===e?void 0:e.appLink,[{name:u("sharedByMe"),onSelect:function(){return l.Q.C$.trigger(m)},active:(null==t?void 0:t.action)===m.action},{name:u("sharedWithMe"),onSelect:function(){return l.Q.C$.trigger(d)},active:(null==t?void 0:t.action)===d.action}])}));var e,t}},37931:(e,t,n)=>{n.r(t),n.d(t,{SharedWithMeView:()=>J});var a=n(32735),r=n(70680),l=n(23481),i=n(81886),c=n(20354),o=n(30439),s=n(71020),u=n(16714),m=n(67058),d=n(39151),p=n(79967),f=n(60115),v=n(22902),h=n(79612);const g={imageColumn:"Hs7kk",nameColumn:"GRyds",sharedByColumn:"fewR0",dateSharedColumn:"G6z3W",heading:"YxAsH",image:"CdUtO",name:"pdEW7",avatar:"rQ2Dt",date:"Lx3Ce"};function E(){return a.createElement("div",{className:"d-flex striped-row rounded"},a.createElement("div",{className:"d-flex align-items-center justify-content-center p-2 ".concat(g.imageColumn)},a.createElement("div",{className:"partial-loading-background rounded w-100 ".concat(g.image)})),a.createElement("div",{className:"d-flex align-items-center p-2 ".concat(g.nameColumn)},a.createElement("div",{className:"partial-loading-background w-75 ".concat(g.name)})),a.createElement("div",{className:"d-flex align-items-center p-2 ".concat(g.sharedByColumn)},a.createElement("div",{className:"partial-loading-background ".concat(g.avatar)})),a.createElement("div",{className:"d-none d-md-flex align-items-center p-2 ".concat(g.dateSharedColumn)},a.createElement("div",{className:"partial-loading-background ".concat(g.date)})))}function y(e){return a.createElement("div",{className:"d-flex mb-1"},a.createElement("div",{className:"".concat(g.imageColumn," p-2")},a.createElement("div",{className:"partial-loading-background ".concat(g.heading)})),a.createElement("div",{className:"".concat(g.nameColumn," p-2")}," "),a.createElement("div",{className:"".concat(g.sharedByColumn," p-2")},e.fullHeader?a.createElement("div",{className:"partial-loading-background ".concat(g.heading)}):a.createElement(a.Fragment,null," ")),a.createElement("div",{className:"".concat(g.dateSharedColumn," p-2 d-none d-md-flex")},e.fullHeader?a.createElement("div",{className:"partial-loading-background ".concat(g.heading)}):a.createElement(a.Fragment,null," ")))}function b(){return a.createElement(a.Fragment,null,a.createElement("div",{className:"mb-3"},a.createElement(y,{fullHeader:!0}),a.createElement("div",{className:"striped-list no-full-width"},a.createElement(E,null),a.createElement(E,null),a.createElement(E,null))),a.createElement("div",{className:"mb-3"},a.createElement(y,null),a.createElement("div",{className:"striped-list no-full-width"},a.createElement(E,null),a.createElement(E,null),a.createElement(E,null),a.createElement(E,null))),a.createElement("div",{className:"mb-3"},a.createElement(y,null),a.createElement("div",{className:"striped-list no-full-width"},a.createElement(E,null),a.createElement(E,null),a.createElement(E,null),a.createElement(E,null),a.createElement(E,null),a.createElement(E,null),a.createElement(E,null),a.createElement(E,null),a.createElement(E,null),a.createElement(E,null))))}var C=n(95834),S=n(69674),N=n(96560),k=n(31908),x=n(14070),w=n(97291),j=n(62756),T=n(82602),M=n(65858),F=n(29024),O=n(31754),I=n(36848),H=n(20789),A=n(83345),D=n(64818),_="share.sharedWithMeTable",L=l.T.encloseNamespace(_);function U(e,t,n,r,l){var i=r.xs||r.sm;return[{Header:t,accessor:"object",id:"image",Cell:function(e){var t=e.row.original,n=k.M.getCanBeConsumed(t.object).canConsume;return a.createElement(F.k,{object:t.object,appLink:l(t),locationContext:M.LZ.SharedWithMe,showVideoMetadata:!n})},minWidth:140,maxWidth:30},{accessor:"object",id:"name",Cell:function(e){var t,n=e.row.original;return(null===(t=n.object)||void 0===t?void 0:t.name)?a.createElement(I.F,{appLink:l(n),className:"clamp-2"},n.object.name):a.createElement("span",null,a.createElement(A.x,{namespace:_,phrase:"videoUnavailable"}))},width:60},{Header:0===e?L("sharedBy"):"",accessor:"owner",Cell:function(e){var t,r=e.value;return a.createElement("div",{className:"d-flex align-items-center"},a.createElement("div",{className:"".concat(g.avatar," flex-shrink-0")},a.createElement(H.q,{initials:D.l.getInitials(r.name,r.surname),imageUrl:null===(t=r.avatar)||void 0===t?void 0:t.url,imageCdnUrl:n})),!i&&a.createElement("p",{className:"clamp-1 ms-2"},"".concat(r.name," ").concat(r.surname)))},width:40},!i&&{Header:0===e?L("shared"):"",id:"dateShared",accessor:function(e){return(0,T.WU)(e.dateShared)},width:60}].filter(Boolean)}function W(e){var t,n,r,l=(t=e.data,n=e.refreshTable,a.useMemo((function(){return O.x.groupByDateShared(t)}),[n])),i=(r=(0,j.G)().isPlugin,function(e){var t,n={application:w.O.SHARE,action:x.e.Share.VIEW_SHARE_LINK,args:[e.id]};if(k.M.isVideoType(e.object)&&!(null===(t=k.M.getCanBeConsumed(e.object))||void 0===t?void 0:t.canConsume))return null;if(!r)return n;var a={application:w.O.DEFAULT,action:x.e.Default.SHARE,args:[e.id]};return e.object.type===N.r.Video?Object.assign(Object.assign({},a),{params:{entityType:"video"}}):e.object.type===N.r.Clip?Object.assign(Object.assign({},a),{params:{entityType:"clip"}}):e.object.type===N.r.Interactive?Object.assign(Object.assign({},a),{params:{entityType:"interactive"}}):n});return a.createElement(a.Fragment,null,Object.keys(l).map((function(t,n){return a.createElement(S.i,{key:n,columns:U(n,t,e.imageCdnUrl,e.breakpoints,i),data:l[t],theme:C.J})})))}var P=n(2523),B=n(23232),R=n(99742),V="share.sharedWithMeEmptyState",$={application:w.O.DASHBOARD,action:x.e.Dashboard.HOME};function Z(){return a.createElement(A.D.Provider,{value:V},a.createElement(B.u,null,a.createElement(B.u.Image,{src:R.W.EmptyStates.Share.SHARED_WITH_ME,size:"small"}),a.createElement(B.u.Heading,null,a.createElement(A.x,{phrase:"heading"})),a.createElement(B.u.Info,null,a.createElement(A.x,{phrase:"info"})),a.createElement(B.u.Cta,{appLink:$,text:l.T.getPhrase(V,"cta")})))}var z=l.T.encloseNamespace("liteShare.sharedWithMe");function J(){var e=(0,v.T)().hasPermissions,t=(0,r.I0)(),n=(0,p.k)(),l=c.a.useBasicFetch(d.L.config()),g=function(e){return o.o.getObjectsSharedWithUser(e)},E=function(e){return c.a.getFetch(t)(g(e))},y=(0,f.K)(g,E),C=y.items,S=y.hasMore,N=y.isFetching,k=y.nextCursor;return(0,h.M)({title:z("sharedWithMe")}),e(u.C.StudentExperience)?(i.Q.Ry.throw(new m.d),a.createElement(a.Fragment,null)):a.createElement("div",{className:"px-3"},a.createElement(P.w,null),C&&l.data?(null==C?void 0:C.length)?a.createElement(a.Fragment,null,a.createElement(W,{data:C,imageCdnUrl:l.data.imageCdnUrl,refreshTable:N,breakpoints:n}),(S||N)&&a.createElement(s._,{isFetching:N,fetchNext:E,nextCursor:k})):a.createElement(Z,null):a.createElement(b,null))}},87432:(e,t,n)=>{n.d(t,{Z:()=>a});const a={pillTabSelector:"Hdi6o",pillItem:"hUJx1"}},82602:(e,t,n)=>{n.d(t,{WU:()=>s});var a=["second","minute","hour","day","week","month","year"],r=["秒","分钟","小时","天","周","个月","年"],l={},i=function(e,t){l[e]=t},c=[60,60,24,7,365/7/12,12];function o(e){return e instanceof Date?e:!isNaN(e)||/^\d+$/.test(e)?new Date(parseInt(e)):(e=(e||"").trim().replace(/\.\d+/,"").replace(/-/,"/").replace(/-/,"/").replace(/(\d)T(\d)/,"$1 $2").replace(/Z/," UTC").replace(/([+-]\d\d):?(\d\d)/," $1$2"),new Date(e))}var s=function(e,t,n){var a=function(e,t){return(+(t?o(t):new Date)-+o(e))/1e3}(e,n&&n.relativeDate);return function(e,t){for(var n=e<0?1:0,a=e=Math.abs(e),r=0;e>=c[r]&&r<c.length;r++)e/=c[r];return(e=Math.floor(e))>(0==(r*=2)?9:1)&&(r+=1),t(e,r,a)[n].replace("%s",e.toString())}(a,function(e){return l[e]||l.en_US}(t))};i("en_US",(function(e,t){if(0===t)return["just now","right now"];var n=a[Math.floor(t/2)];return e>1&&(n+="s"),[e+" "+n+" ago","in "+e+" "+n]})),i("zh_CN",(function(e,t){if(0===t)return["刚刚","片刻后"];var n=r[~~(t/2)];return[e+" "+n+"前",e+" "+n+"后"]}))}}]);
|
|
2
|
-
//# sourceMappingURL=2086-
|
|
2
|
+
//# sourceMappingURL=2086-f7082703d0-lite.chunk.js.map
|
package/dist/scripts/{2086-a247f6e201-lite.chunk.js.map → 2086-f7082703d0-lite.chunk.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/2086-a247f6e201-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/share/components/shared-object-image/shared-object-image.scss","file:///app/packages/libs/shared/src/apps/share/components/shared-object-image/SharedObjectImage.tsx","file:///app/packages/libs/shared/src/apps/share/constants/TableTheme.ts","file:///app/packages/libs/shared/src/apps/share/utils/ShareHelper.ts","file:///app/packages/libs/shared/src/components/infinite-scroll-footer/infinite-scroll-footer.scss","file:///app/packages/libs/shared/src/components/infinite-scroll-footer/InfiniteScrollFooter.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","file:///app/packages/libs/shared/src/hooks/UseInfiniteScroll.ts","file:///app/packages/libs/shared/src/hooks/UseInfiniteList.ts","file:///app/packages/projects/lite/src/apps/share/components/shares-header/SharesHeader.tsx","file:///app/packages/projects/lite/src/apps/share/components/shared-with-me-table/shared-with-me-table.scss","file:///app/packages/projects/lite/src/apps/share/components/shared-with-me-table/PartialSharedWithMeTable.tsx","file:///app/packages/projects/lite/src/apps/share/components/shared-with-me-table/SharedWithMeTableUtils.tsx","file:///app/packages/projects/lite/src/apps/share/components/shared-with-me-table/SharedWithMeTable.tsx","file:///app/packages/projects/lite/src/apps/share/views/shared-with-me/empty-state/SharedWithMeEmptyState.tsx","file:///app/packages/projects/lite/src/apps/share/views/shared-with-me/SharedWithMeView.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/pill-tab-selector.scss","file:///app/node_modules/timeago.js/esm/lang/en_US.js","file:///app/node_modules/timeago.js/esm/lang/zh_CN.js","file:///app/node_modules/timeago.js/esm/register.js","file:///app/node_modules/timeago.js/esm/utils/date.js","file:///app/node_modules/timeago.js/esm/format.js","file:///app/node_modules/timeago.js/esm/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"thumbnailFallbackSvg\":\"D4JFs\",\"posterFallbackSvg\":\"bjUWl\",\"coverFallbackSvg\":\"kdLpt\"};","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { ImageSize, ImageType } from 'libs/shared/enums/Images';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ThumbnailTextPosition } from 'libs/shared/enums/ThumbnailTextPosition';\nimport { BaseObject, Image } from 'libs/shared/interfaces';\nimport { getBgColorClass } from 'libs/shared/utils/getBgColorClass';\nimport { ImageHelper, ImageOptions } from 'libs/shared/utils/ImageHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport styles from './shared-object-image.scss';\n\nconst BASE_IMAGE_CLASS_NAME = 'rounded overflow-hidden';\n\ninterface ImageProps {\n image: Image;\n imageType: ImageType;\n imageClassName?: string;\n imageFallbackComponent: JSX.Element;\n}\n\nfunction getImageProps(object: BaseObject): ImageProps {\n const image = ImageHelper.getDisplayImageFromObject(object);\n\n if (VideoHelper.isVideoType(object))\n return {\n image,\n imageType: ImageType.Thumbnails,\n imageClassName: BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent: <ImageFallback type={ImageFallbackType.Video} />\n };\n\n switch (object.typeId) {\n case MasterType.Series:\n return {\n image,\n imageType: ImageType.TallPosters,\n imageClassName: BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent:\n <ImageFallback type={ImageFallbackType.Series} svgContainerClassName={styles.posterFallbackSvg} />\n };\n\n case MasterType.Playlist:\n return {\n image,\n imageType: ImageType.Covers,\n imageClassName: !image?.url\n ? `${BASE_IMAGE_CLASS_NAME} ${getBgColorClass(object.name, BG_COLOUR_CLASS_NAMES)}`\n : BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent: (\n <ImageFallback\n type={ImageFallbackType.Playlist}\n svgContainerClassName={image?.url ? styles.coverFallbackSvg : 'd-none'}\n extraClasses={!image?.url && 'bg-transparent'}\n />\n )\n };\n }\n}\n\nfunction getImageRatio(object: BaseObject): ImageFallbackType {\n if (VideoHelper.isVideoType(object))\n return 16 / 9;\n\n if (object.typeId === MasterType.Playlist)\n return 1;\n\n if (object.typeId === MasterType.Series)\n return 9 / 16;\n}\n\ninterface SharedObjectImageProps {\n object: BaseObject;\n locationContext: LocationContext;\n appLink?: Core.AppLink;\n showVideoMetadata?: boolean;\n fixedHeight?: boolean;\n}\n\nexport function SharedObjectImage(props: SharedObjectImageProps): JSX.Element {\n const ref = React.useCallback((el: HTMLDivElement) => {\n if (!el || !props.fixedHeight)\n return;\n\n el.style.width = `${el.offsetHeight * getImageRatio(props.object)}px`;\n }, []);\n\n const imageOptions: ImageOptions = { size: ImageSize.Small };\n\n const {\n image,\n imageType,\n imageClassName,\n imageFallbackComponent\n } = getImageProps(props.object);\n\n const useVideoThumbnail = VideoHelper.isVideoType(props.object) && !!props.showVideoMetadata;\n\n return (\n <div className='d-flex align-items-center justify-content-center w-100 h-100'>\n <div ref={ref} className={props.fixedHeight ? 'h-100' : 'w-100'}>\n {useVideoThumbnail &&\n <VideoThumbnail\n video={props.object}\n imageOptions={imageOptions}\n textPosition={ThumbnailTextPosition.Independent}\n type='cosmetic'\n appLink={props.appLink}\n analyticsOptions={{ location: props.locationContext }}\n hideDuration\n hideMask\n size='sm'\n />\n }\n {!useVideoThumbnail &&\n <BaseImage\n data={image?.url}\n imageType={imageType}\n imageOptions={imageOptions}\n appLink={props.appLink}\n className={imageClassName}\n >\n {imageFallbackComponent}\n </BaseImage>\n }\n </div>\n </div>\n );\n}","import { TableTheme } from 'libs/shared/components/table/Table';\n\nexport const SHARES_TABLE_THEME: TableTheme = {\n table: 'striped-list no-full-width pb-3',\n header: 'fw-semibold pb-1',\n headerCell: `py-2 ps-2 text-nowrap`,\n row: 'striped-row rounded',\n cell: 'd-flex align-items-center p-2'\n};","import { format } from 'timeago.js';\n\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { CheckMarkStatus } from 'libs/shared/components/check-mark-button/CheckMarkButton';\nimport { ShareActivityStatus } from 'libs/shared/enums/ShareActivityStatus';\n\ninterface ObjectWithDateShared {\n dateShared: string;\n}\n\ntype GroupedByDate<T extends ObjectWithDateShared> = { [date: string]: T[] };\n\nexport const ShareHelper = {\n groupByDateShared<T extends ObjectWithDateShared>(data: T[]): GroupedByDate<T> {\n const dateToObjectMapping: GroupedByDate<T> = ArrayHelper.groupBy(data, 'dateShared');\n\n const sortedDates = Object.keys(dateToObjectMapping).sort().reverse();\n\n // Create a sorted mapping between dates and the \"ObjectWithDateShared\" objects\n return sortedDates.reduce((acc: GroupedByDate<T>, date) => {\n const heading = format(date);\n\n if (!acc[heading])\n acc[heading] = [];\n\n acc[heading] = acc[heading].concat(dateToObjectMapping[date]);\n return acc;\n }, {});\n },\n\n mapActivityStatusToCheckMarkStatus(activityStatus: ShareActivityStatus): CheckMarkStatus {\n switch (activityStatus) {\n case ShareActivityStatus.Complete:\n return CheckMarkStatus.Complete;\n case ShareActivityStatus.Incomplete:\n return CheckMarkStatus.Incomplete;\n case ShareActivityStatus.None:\n return CheckMarkStatus.None;\n }\n },\n\n mapCheckMarkStatusToActivityStatus(checkMarkStatus: CheckMarkStatus): ShareActivityStatus {\n switch (checkMarkStatus) {\n case CheckMarkStatus.Complete:\n return ShareActivityStatus.Complete;\n case CheckMarkStatus.Incomplete:\n return ShareActivityStatus.Incomplete;\n case CheckMarkStatus.None:\n return ShareActivityStatus.None;\n }\n }\n};","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"VwD1b\",\"spinner\":\"eJ85e\"};","import * as React from 'react';\nimport { Spinner } from 'react-bootstrap';\nimport { useInView } from 'react-intersection-observer';\n\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './infinite-scroll-footer.scss';\n\ninterface InfiniteScrollFooterProps {\n isFetching: boolean;\n fetchNext?: (nextCursor: string) => void;\n nextCursor?: string;\n fetchOnScroll?: boolean;\n}\n\nInfiniteScrollFooter.defaultProps = {\n fetchOnScroll: false\n};\n\nexport function InfiniteScrollFooter(props: InfiniteScrollFooterProps): React.ReactElement {\n const [ ref, inView ] = useInView();\n\n React.useEffect(() => {\n if (!props.fetchOnScroll)\n return;\n\n if (!inView || props.isFetching)\n return;\n\n props.fetchNext?.(props.nextCursor);\n }, [ inView, props.isFetching ]);\n\n return (\n <div className={`p-3 text-center ${styles.container}`} ref={ref}>\n {props.isFetching\n ? <Spinner as='span' animation='border' role='status' className={styles.spinner} />\n : (\n <SvgContainer\n svgName={cvSvgLibrary.ChevronDown}\n className='svg-container cursor-pointer'\n size={SvgContainerSize.Large}\n onClick={() => props.fetchNext?.(props.nextCursor)}\n />\n )\n }\n </div>\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 styles from './pill-tab-selector.scss';\n\nexport interface PillTab {\n name: string;\n active: boolean;\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 className?: string;\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 ?? ''}>\n <ul className={`list-unstyled d-inline-block m-0 ${styles.pillTabSelector}`}>\n {props.tabs.map(tab => {\n return (\n <li className={`p-0 ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}`} key={tab.name}>\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`cursor-pointer d-flex justify-content-center text-decoration-none text-reset px-2 ${styles.pillItem}`}\n >\n {tab.name}\n\n {typeof (tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={tab.count} />\n </div>\n )}\n </AppLink>\n ) : (\n <DivButton className={`${styles.pillItem} d-flex justify-content-center p-2`} onClick={() => onSelectTab(tab)}>\n {tab.name}\n\n {typeof (tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={tab.count} />\n </div>\n )}\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n </nav>\n );\n}\n","import { useEffect } from 'react';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\n\nconst SCROLL_TOLERANCE = 400; // value in px\n\ninterface UseInfiniteScrollOptions {\n fetchNextPage: () => void;\n hasMore: boolean;\n isFetching: boolean;\n scrollContainer?: HTMLElement;\n}\n\nexport function useInfiniteScroll(options: UseInfiniteScrollOptions): void {\n const handleScroll = (): void => {\n if (options.isFetching)\n return;\n\n if (!options.scrollContainer) {\n const currentScrollHeight = window.innerHeight + document.documentElement.scrollTop;\n \n const totalHeight = document.documentElement.scrollHeight - SCROLL_TOLERANCE;\n \n if (currentScrollHeight < totalHeight)\n return;\n } else {\n const { scrollContainer } = options;\n const currentScrollHeight = scrollContainer.getBoundingClientRect().height + scrollContainer.scrollTop;\n \n const totalHeight = scrollContainer.scrollHeight - SCROLL_TOLERANCE;\n \n if (currentScrollHeight < totalHeight)\n return;\n }\n\n options.fetchNextPage();\n };\n\n useEffect(() => {\n const onScroll = FunctionHelper.throttle(handleScroll, 200);\n\n const scrollContainer = options.scrollContainer || window;\n\n if (options.hasMore)\n scrollContainer.addEventListener('scroll', onScroll);\n\n return () => scrollContainer.removeEventListener('scroll', onScroll);\n }, [ options.hasMore, options.fetchNextPage, options.scrollContainer ]);\n}","import { useEffect, useState } from 'react';\n\nimport { HttpStatus, HttpStatusClass } from 'libs/common/backbone/enums/HttpStatus';\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { BaseObject, BasePaginatedCollection } from 'libs/shared/interfaces';\n\nimport { useInfiniteScroll } from './UseInfiniteScroll';\nimport { useSelectAllPages } from './UseSelectAllPages';\n\nexport interface UseInfiniteListResult<T extends BaseObject> {\n items: T[];\n hasMore: boolean;\n isFetching: boolean;\n nextCursor: string;\n totalItems?: number;\n hasFirstPageCompleted: boolean;\n}\n\n/**\n * Hook to extract an infinite list from the application state,\n * save it locally in state and only update when new data\n * is fetched.\n * \n * @param getRequest - callback function to get the request for each page.\n * Can be false if the request requires data that hasn't yet been fetched - e.g. user id.\n * \n * @param fetchNext - callback function to fetch a page.\n * Can be false if the request requires data that hasn't yet been fetched - e.g. user id.\n */\nexport function useInfiniteList<TObject = BaseObject, TResponse = BasePaginatedCollection<TObject>>(\n getRequest: ((cursor?: string) => Flight.Request) | false,\n fetchNext: ((cursor?: string) => void) | false,\n onError?: (pageNumber: number, statusCode: HttpStatus) => void,\n getItems?: (responseData: TResponse) => TObject[],\n getCursor?: (responseData: TResponse) => string,\n scrollContainer?: HTMLElement\n): UseInfiniteListResult<TObject> {\n const [ pagesFetched, setPagesFetched ] = useState(0);\n\n const fetchNextFn = fetchNext as (cursor?: string) => void;\n\n function getKey(cursor?: string): string {\n if (!getRequest)\n return null;\n\n const request = getRequest(cursor);\n\n if (!request)\n return null;\n\n return request.key;\n }\n\n const response = useSelectAllPages<TObject, TResponse>(\n getKey,\n getItems,\n getCursor\n );\n\n function fetchNextPage(): void {\n if (!fetchNext || !getRequest || !response)\n return;\n\n setPagesFetched(currentVal => currentVal + 1);\n return fetchNextFn(response.nextCursor);\n }\n\n useInfiniteScroll({\n fetchNextPage,\n hasMore: !!response?.nextCursor,\n isFetching: response?.isFetching,\n scrollContainer\n });\n\n useEffect(() => {\n if (!response)\n return;\n\n if (response.shouldInitialFetch && fetchNext) {\n fetchNextFn();\n setPagesFetched(currentVal => currentVal + 1);\n }\n }, [ response?.shouldInitialFetch, fetchNext ]);\n\n useEffect(() => {\n if (!response?.statusCode || !FunctionHelper.isFunction(onError))\n return;\n\n const httpStatusClass: HttpStatusClass = +(response.statusCode?.toString()?.substr(0, 1));\n\n if (httpStatusClass !== HttpStatusClass.ClientError && httpStatusClass !== HttpStatusClass.ServerError)\n return;\n\n onError(pagesFetched, response.statusCode);\n }, [response?.statusCode]);\n\n return {\n items: response?.items,\n hasMore: !!response?.nextCursor,\n nextCursor: response?.nextCursor,\n isFetching: response?.isFetching,\n totalItems: response?.totalItems,\n hasFirstPageCompleted: response?.hasFirstPageCompleted\n };\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { PillTab, PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\nimport { ContextService } from 'libs/shared/services/ContextService';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'share.sharesHeader';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst SHARED_BY_ME_APP_LINK = { application: AppChannels.MY_SHARES, action: Actions.MyShares.SHARED_BY_ME };\nconst SHARED_WITH_ME_APP_LINK = { application: AppChannels.MY_SHARES, action: Actions.MyShares.SHARED_WITH_ME };\n\nfunction getPillTabs(): PillTab[] {\n const currentAppLink = ContextService.getCurrentRoute()?.appLink;\n\n return [\n {\n name: getPhrase('sharedByMe'),\n onSelect: () => Core.AppLinkHelper.trigger(SHARED_BY_ME_APP_LINK),\n active: currentAppLink?.action === SHARED_BY_ME_APP_LINK.action\n },\n {\n name: getPhrase('sharedWithMe'),\n onSelect: () => Core.AppLinkHelper.trigger(SHARED_WITH_ME_APP_LINK),\n active: currentAppLink?.action === SHARED_WITH_ME_APP_LINK.action\n }\n ];\n}\n\nexport function SharesHeader(): JSX.Element {\n return (\n <div className='pb-3'>\n <h1 className='h2 mb-3'>{getPhrase('shares')}</h1>\n <PillTabSelector tabs={getPillTabs()} />\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"imageColumn\":\"Hs7kk\",\"nameColumn\":\"GRyds\",\"sharedByColumn\":\"fewR0\",\"dateSharedColumn\":\"G6z3W\",\"heading\":\"YxAsH\",\"image\":\"CdUtO\",\"name\":\"pdEW7\",\"avatar\":\"rQ2Dt\",\"date\":\"Lx3Ce\"};","import React from 'react';\n\nimport styles from './shared-with-me-table.scss';\n\nfunction PartialRow(): JSX.Element {\n return (\n <div className={`d-flex striped-row rounded`}>\n <div className={`d-flex align-items-center justify-content-center p-2 ${styles.imageColumn}`}>\n <div className={`partial-loading-background rounded w-100 ${styles.image}`} />\n </div>\n <div className={`d-flex align-items-center p-2 ${styles.nameColumn}`}>\n <div className={`partial-loading-background w-75 ${styles.name}`} />\n </div>\n <div className={`d-flex align-items-center p-2 ${styles.sharedByColumn}`}>\n <div className={`partial-loading-background ${styles.avatar}`} />\n </div>\n <div className={`d-none d-md-flex align-items-center p-2 ${styles.dateSharedColumn}`}>\n <div className={`partial-loading-background ${styles.date}`} />\n </div>\n </div>\n );\n}\n\ninterface PartialHeaderProps {\n fullHeader?: boolean;\n}\n\nfunction PartialHeader(props: PartialHeaderProps): JSX.Element {\n return (\n <div className='d-flex mb-1'>\n <div className={`${styles.imageColumn} p-2`}>\n <div className={`partial-loading-background ${styles.heading}`} />\n </div>\n <div className={`${styles.nameColumn} p-2`}>\n \n </div>\n <div className={`${styles.sharedByColumn} p-2`}>\n {props.fullHeader\n ? <div className={`partial-loading-background ${styles.heading}`} />\n : <> </>\n }\n </div>\n <div className={`${styles.dateSharedColumn} p-2 d-none d-md-flex`}>\n {props.fullHeader\n ? <div className={`partial-loading-background ${styles.heading}`} />\n : <> </>\n }\n </div>\n </div>\n );\n}\n\nexport function PartialSharedWithMeTable(): JSX.Element {\n return (\n <>\n <div className='mb-3'>\n <PartialHeader fullHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n\n <div className='mb-3'>\n <PartialHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n\n <div className='mb-3'>\n <PartialHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n </>\n );\n}","import React from 'react';\nimport { Column } from 'react-table';\nimport { format as formatDate } from 'timeago.js';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { SharedObjectImage } from 'libs/shared/apps/share/components/shared-object-image/SharedObjectImage';\nimport { SharedWithMeResponse } from 'libs/shared/apps/share/interfaces/responses/SharedWithMeResponse';\nimport { ShareHelper } from 'libs/shared/apps/share/utils/ShareHelper';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport styles from './shared-with-me-table.scss';\n\nconst namespace = 'share.sharedWithMeTable';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ntype TableDataGroupings = { [date: string]: SharedWithMeResponse[] };\n\nexport function getColumns(\n index: number,\n dateHeading: string,\n imageCdnUrl: string,\n breakpoints: Breakpoints,\n getObjectAppLink: (data: SharedWithMeResponse) => Core.AppLink\n): Column<SharedWithMeResponse>[] {\n const isMobile = breakpoints.xs || breakpoints.sm;\n\n const column: Column<SharedWithMeResponse>[] = [\n {\n Header: dateHeading,\n accessor: 'object',\n id: 'image',\n Cell: ({ row: { original } }) => {\n const { canConsume } = VideoHelper.getCanBeConsumed(original.object);\n\n return (\n <SharedObjectImage\n object={original.object}\n appLink={getObjectAppLink(original)}\n locationContext={LocationContext.SharedWithMe}\n showVideoMetadata={!canConsume}\n />\n );\n },\n minWidth: 140,\n maxWidth: 30\n },\n {\n accessor: 'object',\n id: 'name',\n Cell: ({ row: { original } }) => {\n if (original.object?.name) {\n return (\n <AppLink appLink={getObjectAppLink(original)} className='clamp-2'>\n {original.object.name}\n </AppLink>\n );\n }\n\n return <span><Text namespace={namespace} phrase='videoUnavailable' /></span>;\n },\n width: 60\n },\n {\n Header: index === 0 ? getPhrase('sharedBy') : '',\n accessor: 'owner',\n Cell: ({ value }) => (\n <div className='d-flex align-items-center'>\n <div className={`${styles.avatar} flex-shrink-0`}>\n <Avatar\n initials={UserHelper.getInitials(value.name, value.surname)}\n imageUrl={value.avatar?.url}\n imageCdnUrl={imageCdnUrl}\n />\n </div>\n\n {!isMobile && <p className='clamp-1 ms-2'>{`${value.name} ${value.surname}`}</p>}\n </div>\n ),\n width: 40\n },\n !isMobile && {\n Header: index === 0 ? getPhrase('shared') : '',\n id: 'dateShared',\n accessor: s => formatDate(s.dateShared),\n width: 60\n }\n ];\n\n return column.filter(Boolean);\n}\n\nexport function useGetData(data: SharedWithMeResponse[], refreshData: boolean): TableDataGroupings {\n return React.useMemo(() => {\n return ShareHelper.groupByDateShared(data);\n }, [refreshData]);\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { SHARES_TABLE_THEME } from 'libs/shared/apps/share/constants/TableTheme';\nimport { SharedWithMeResponse } from 'libs/shared/apps/share/interfaces/responses/SharedWithMeResponse';\nimport { Table } from 'libs/shared/components/table/Table';\nimport { MasterObjectTypes } from 'libs/shared/enums/MasterObjectTypes';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\n\nimport { getColumns, useGetData } from './SharedWithMeTableUtils';\n\nfunction useGetObjectAppLink(): (data: SharedWithMeResponse) => Core.AppLink {\n const { isPlugin } = usePluginHelper();\n\n return (data: SharedWithMeResponse) => {\n const appLink = {\n application: AppChannels.SHARE,\n action: Actions.Share.VIEW_SHARE_LINK,\n args: [data.id]\n };\n\n if (VideoHelper.isVideoType(data.object) && !VideoHelper.getCanBeConsumed(data.object)?.canConsume)\n return null;\n\n if (!isPlugin)\n return appLink;\n \n const shareAppLink: Core.AppLink = {\n application: AppChannels.DEFAULT,\n action: Actions.Default.SHARE,\n args: [data.id]\n };\n\n if (data.object.type === MasterObjectTypes.Video)\n return { ...shareAppLink, params: { entityType: 'video' } };\n\n if (data.object.type === MasterObjectTypes.Clip)\n return { ...shareAppLink, params: { entityType: 'clip' } };\n\n if (data.object.type === MasterObjectTypes.Interactive)\n return { ...shareAppLink, params: { entityType: 'interactive' } };\n\n return appLink;\n };\n}\n\ninterface SharedWithMeTableProps {\n data: SharedWithMeResponse[];\n imageCdnUrl: string;\n\n /**\n * As the table data is memoized, it must be prompted to recalculate.\n * Toggle `refreshTable` to do so.\n */\n refreshTable: boolean;\n breakpoints: Breakpoints;\n}\n\nexport function SharedWithMeTable(props: SharedWithMeTableProps): JSX.Element {\n const tableData = useGetData(props.data, props.refreshTable);\n const getObjectAppLink = useGetObjectAppLink();\n\n return (\n <>\n {Object.keys(tableData).map((heading, index) => (\n <Table\n key={index}\n columns={getColumns(index, heading, props.imageCdnUrl, props.breakpoints, getObjectAppLink)}\n data={tableData[heading]}\n theme={SHARES_TABLE_THEME}\n />\n ))}\n </>\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 = 'share.sharedWithMeEmptyState';\n\nconst cta = {\n application: AppChannels.DASHBOARD,\n action: Actions.Dashboard.HOME\n};\n\nexport function SharedWithMeEmptyState(): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.Share.SHARED_WITH_ME} size='small'/>\n <EmptyState.Heading><Text phrase='heading' /></EmptyState.Heading>\n <EmptyState.Info><Text phrase='info' /></EmptyState.Info>\n <EmptyState.Cta appLink={cta} text={LanguageService.getPhrase(namespace, 'cta')} />\n </EmptyState>\n </LanguageNamespaceContext.Provider>\n );\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { ShareRequests } from 'libs/shared/apps/share/flight-requests/ShareRequests';\nimport { SharedWithMeResponse } from 'libs/shared/apps/share/interfaces/responses/SharedWithMeResponse';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config } from 'libs/shared/interfaces';\n\nimport { PartialSharedWithMeTable } from 'apps/share/components/shared-with-me-table/PartialSharedWithMeTable';\nimport { SharedWithMeTable } from 'apps/share/components/shared-with-me-table/SharedWithMeTable';\nimport { SharesHeader } from 'apps/share/components/shares-header/SharesHeader';\n\nimport { SharedWithMeEmptyState } from './empty-state/SharedWithMeEmptyState';\n\nconst namespace = 'liteShare.sharedWithMe';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function SharedWithMeView(): JSX.Element {\n const { hasPermissions } = usePermissions();\n const dispatch = useDispatch();\n const breakpoints = useBreakpoints();\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const getRequest = (cursor?: string) => ShareRequests.getObjectsSharedWithUser(cursor);\n const fetchNext = (cursor?: string) => Flight.getFetch(dispatch)(getRequest(cursor));\n\n const {\n items: sharedWithMe,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<SharedWithMeResponse>(getRequest, fetchNext);\n\n useSetPageMetadata({ title: getPhrase('sharedWithMe') });\n\n if (hasPermissions(PermissionName.StudentExperience)) {\n Core.ErrorHelper.throw(new NotFoundError());\n return <></>;\n }\n\n return (\n <div className='px-3'>\n <SharesHeader />\n\n {(() => {\n if (!sharedWithMe || !config.data)\n return <PartialSharedWithMeTable />;\n\n if (!sharedWithMe?.length)\n return <SharedWithMeEmptyState />;\n\n return (\n <>\n <SharedWithMeTable\n data={sharedWithMe}\n imageCdnUrl={config.data.imageCdnUrl}\n refreshTable={isFetching}\n breakpoints={breakpoints}\n />\n {(hasMore || isFetching) &&\n <InfiniteScrollFooter isFetching={isFetching} fetchNext={fetchNext} nextCursor={nextCursor} />\n }\n </>\n );\n })()}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"pillTabSelector\":\"Hdi6o\",\"pillItem\":\"hUJx1\"};","var EN_US = ['second', 'minute', 'hour', 'day', 'week', 'month', 'year'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['just now', 'right now'];\n var unit = EN_US[Math.floor(idx / 2)];\n if (diff > 1)\n unit += 's';\n return [diff + \" \" + unit + \" ago\", \"in \" + diff + \" \" + unit];\n}\n//# sourceMappingURL=en_US.js.map","var ZH_CN = ['秒', '分钟', '小时', '天', '周', '个月', '年'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['刚刚', '片刻后'];\n var unit = ZH_CN[~~(idx / 2)];\n return [diff + \" \" + unit + \"\\u524D\", diff + \" \" + unit + \"\\u540E\"];\n}\n//# sourceMappingURL=zh_CN.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\n/**\n * All supported locales\n */\nvar Locales = {};\n/**\n * register a locale\n * @param locale\n * @param func\n */\nexport var register = function (locale, func) {\n Locales[locale] = func;\n};\n/**\n * get a locale, default is en_US\n * @param locale\n * @returns {*}\n */\nexport var getLocale = function (locale) {\n return Locales[locale] || Locales['en_US'];\n};\n//# sourceMappingURL=register.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nvar SEC_ARRAY = [\n 60,\n 60,\n 24,\n 7,\n 365 / 7 / 12,\n 12,\n];\n/**\n * format Date / string / timestamp to timestamp\n * @param input\n * @returns {*}\n */\nexport function toDate(input) {\n if (input instanceof Date)\n return input;\n // @ts-ignore\n if (!isNaN(input) || /^\\d+$/.test(input))\n return new Date(parseInt(input));\n input = (input || '')\n // @ts-ignore\n .trim()\n .replace(/\\.\\d+/, '') // remove milliseconds\n .replace(/-/, '/')\n .replace(/-/, '/')\n .replace(/(\\d)T(\\d)/, '$1 $2')\n .replace(/Z/, ' UTC') // 2017-2-5T3:57:52Z -> 2017-2-5 3:57:52UTC\n .replace(/([+-]\\d\\d):?(\\d\\d)/, ' $1$2'); // -04:00 -> -0400\n return new Date(input);\n}\n/**\n * format the diff second to *** time ago, with setting locale\n * @param diff\n * @param localeFunc\n * @returns\n */\nexport function formatDiff(diff, localeFunc) {\n /**\n * if locale is not exist, use defaultLocale.\n * if defaultLocale is not exist, use build-in `en`.\n * be sure of no error when locale is not exist.\n *\n * If `time in`, then 1\n * If `time ago`, then 0\n */\n var agoIn = diff < 0 ? 1 : 0;\n /**\n * Get absolute value of number (|diff| is non-negative) value of x\n * |diff| = diff if diff is positive\n * |diff| = -diff if diff is negative\n * |0| = 0\n */\n diff = Math.abs(diff);\n /**\n * Time in seconds\n */\n var totalSec = diff;\n /**\n * Unit of time\n */\n var idx = 0;\n for (; diff >= SEC_ARRAY[idx] && idx < SEC_ARRAY.length; idx++) {\n diff /= SEC_ARRAY[idx];\n }\n /**\n * Math.floor() is alternative of ~~\n *\n * The differences and bugs:\n * Math.floor(3.7) -> 4 but ~~3.7 -> 3\n * Math.floor(1559125440000.6) -> 1559125440000 but ~~1559125440000.6 -> 52311552\n *\n * More information about the performance of algebraic:\n * https://www.youtube.com/watch?v=65-RbBwZQdU\n */\n diff = Math.floor(diff);\n idx *= 2;\n if (diff > (idx === 0 ? 9 : 1))\n idx += 1;\n return localeFunc(diff, idx, totalSec)[agoIn].replace('%s', diff.toString());\n}\n/**\n * calculate the diff second between date to be formatted an now date.\n * @param date\n * @param relativeDate\n * @returns {number}\n */\nexport function diffSec(date, relativeDate) {\n var relDate = relativeDate ? toDate(relativeDate) : new Date();\n return (+relDate - +toDate(date)) / 1000;\n}\n/**\n * nextInterval: calculate the next interval time.\n * - diff: the diff sec between now and date to be formatted.\n *\n * What's the meaning?\n * diff = 61 then return 59\n * diff = 3601 (an hour + 1 second), then return 3599\n * make the interval with high performance.\n **/\nexport function nextInterval(diff) {\n var rst = 1, i = 0, d = Math.abs(diff);\n for (; diff >= SEC_ARRAY[i] && i < SEC_ARRAY.length; i++) {\n diff /= SEC_ARRAY[i];\n rst *= SEC_ARRAY[i];\n }\n d = d % rst;\n d = d ? rst - d : rst;\n return Math.ceil(d);\n}\n//# sourceMappingURL=date.js.map","import { formatDiff, diffSec } from './utils/date';\nimport { getLocale } from './register';\n/**\n * format a TDate into string\n * @param date\n * @param locale\n * @param opts\n */\nexport var format = function (date, locale, opts) {\n // diff seconds\n var sec = diffSec(date, opts && opts.relativeDate);\n // format it with locale\n return formatDiff(sec, getLocale(locale));\n};\n//# sourceMappingURL=format.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nimport en_US from './lang/en_US';\nimport zh_CN from './lang/zh_CN';\nimport { register } from './register';\nregister('en_US', en_US);\nregister('zh_CN', zh_CN);\nexport { format } from './format';\nexport { render, cancel } from './realtime';\nexport { register };\n//# sourceMappingURL=index.js.map"],"names":["BASE_IMAGE_CLASS_NAME","SharedObjectImage","props","ref","el","object","fixedHeight","style","width","offsetHeight","VideoHelper","typeId","MasterType","imageOptions","size","image","ImageHelper","imageType","imageClassName","imageFallbackComponent","ImageFallback","type","svgContainerClassName","url","getBgColorClass","name","extraClasses","getImageProps","useVideoThumbnail","showVideoMetadata","className","VideoThumbnail","video","textPosition","ThumbnailTextPosition","appLink","analyticsOptions","location","locationContext","hideDuration","hideMask","BaseImage","data","SHARES_TABLE_THEME","table","header","headerCell","row","cell","ShareHelper","groupByDateShared","dateToObjectMapping","Object","keys","sort","reverse","reduce","acc","date","heading","concat","mapActivityStatusToCheckMarkStatus","activityStatus","mapCheckMarkStatusToActivityStatus","checkMarkStatus","InfiniteScrollFooter","inView","fetchOnScroll","isFetching","fetchNext","nextCursor","Spinner","as","animation","role","SvgContainer","svgName","S","onClick","defaultProps","PillTabSelector","tabs","map","tab","active","key","analyticsData","count","onSelect","onSelectTab","SCROLL_TOLERANCE","useInfiniteList","getRequest","onError","getItems","getCursor","scrollContainer","options","handleScroll","useState","pagesFetched","setPagesFetched","fetchNextFn","response","cursor","request","fetchNextPage","currentVal","hasMore","getBoundingClientRect","height","scrollTop","scrollHeight","window","innerHeight","document","documentElement","useEffect","onScroll","FunctionHelper","addEventListener","removeEventListener","shouldInitialFetch","statusCode","httpStatusClass","toString","substr","HttpStatus","items","totalItems","hasFirstPageCompleted","getPhrase","SHARED_BY_ME_APP_LINK","application","action","SHARED_WITH_ME_APP_LINK","SharesHeader","currentAppLink","PartialRow","PartialHeader","fullHeader","PartialSharedWithMeTable","namespace","LanguageService","getColumns","index","dateHeading","imageCdnUrl","breakpoints","getObjectAppLink","isMobile","xs","sm","Header","accessor","id","Cell","original","canConsume","minWidth","maxWidth","AppLink","Text","phrase","value","Avatar","initials","UserHelper","surname","imageUrl","avatar","s","dateShared","filter","Boolean","SharedWithMeTable","refreshData","isPlugin","tableData","refreshTable","usePluginHelper","args","shareAppLink","MasterObjectTypes","params","entityType","Table","columns","theme","cta","SharedWithMeEmptyState","EmptyState","src","ImageUrls","text","SharedWithMeView","hasPermissions","usePermissions","dispatch","useBreakpoints","config","ConfigRequests","ShareRequests","sharedWithMe","useSetPageMetadata","title","PermissionName","NotFoundError","length","EN_US","ZH_CN","Locales","register","locale","func","SEC_ARRAY","toDate","input","Date","isNaN","test","parseInt","trim","replace","format","opts","sec","relativeDate","diff","localeFunc","agoIn","totalSec","Math","abs","idx","floor","unit"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"scripts/2086-f7082703d0-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/share/components/shared-object-image/shared-object-image.scss","file:///app/packages/libs/shared/src/apps/share/components/shared-object-image/SharedObjectImage.tsx","file:///app/packages/libs/shared/src/apps/share/constants/TableTheme.ts","file:///app/packages/libs/shared/src/apps/share/utils/ShareHelper.ts","file:///app/packages/libs/shared/src/components/infinite-scroll-footer/infinite-scroll-footer.scss","file:///app/packages/libs/shared/src/components/infinite-scroll-footer/InfiniteScrollFooter.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/PillTabSelector.tsx","file:///app/packages/libs/shared/src/hooks/UseInfiniteScroll.ts","file:///app/packages/libs/shared/src/hooks/UseInfiniteList.ts","file:///app/packages/projects/lite/src/apps/share/components/shares-header/SharesHeader.tsx","file:///app/packages/projects/lite/src/apps/share/components/shared-with-me-table/shared-with-me-table.scss","file:///app/packages/projects/lite/src/apps/share/components/shared-with-me-table/PartialSharedWithMeTable.tsx","file:///app/packages/projects/lite/src/apps/share/components/shared-with-me-table/SharedWithMeTableUtils.tsx","file:///app/packages/projects/lite/src/apps/share/components/shared-with-me-table/SharedWithMeTable.tsx","file:///app/packages/projects/lite/src/apps/share/views/shared-with-me/empty-state/SharedWithMeEmptyState.tsx","file:///app/packages/projects/lite/src/apps/share/views/shared-with-me/SharedWithMeView.tsx","file:///app/packages/libs/shared/src/components/pill-tab-selector/pill-tab-selector.scss","file:///app/node_modules/timeago.js/esm/lang/en_US.js","file:///app/node_modules/timeago.js/esm/lang/zh_CN.js","file:///app/node_modules/timeago.js/esm/register.js","file:///app/node_modules/timeago.js/esm/utils/date.js","file:///app/node_modules/timeago.js/esm/format.js","file:///app/node_modules/timeago.js/esm/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"thumbnailFallbackSvg\":\"D4JFs\",\"posterFallbackSvg\":\"bjUWl\",\"coverFallbackSvg\":\"kdLpt\"};","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { BaseImage } from 'libs/shared/components/image/BaseImage';\nimport { ImageFallback, ImageFallbackType } from 'libs/shared/components/image/ImageFallback';\nimport { VideoThumbnail } from 'libs/shared/components/thumbnails/video/VideoThumbnail';\nimport { BG_COLOUR_CLASS_NAMES } from 'libs/shared/constants/ColourClassNames';\nimport { ImageSize, ImageType } from 'libs/shared/enums/Images';\nimport { MasterType } from 'libs/shared/enums/MasterType';\nimport { ThumbnailTextPosition } from 'libs/shared/enums/ThumbnailTextPosition';\nimport { BaseObject, Image } from 'libs/shared/interfaces';\nimport { getBgColorClass } from 'libs/shared/utils/getBgColorClass';\nimport { ImageHelper, ImageOptions } from 'libs/shared/utils/ImageHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport styles from './shared-object-image.scss';\n\nconst BASE_IMAGE_CLASS_NAME = 'rounded overflow-hidden';\n\ninterface ImageProps {\n image: Image;\n imageType: ImageType;\n imageClassName?: string;\n imageFallbackComponent: JSX.Element;\n}\n\nfunction getImageProps(object: BaseObject): ImageProps {\n const image = ImageHelper.getDisplayImageFromObject(object);\n\n if (VideoHelper.isVideoType(object))\n return {\n image,\n imageType: ImageType.Thumbnails,\n imageClassName: BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent: <ImageFallback type={ImageFallbackType.Video} />\n };\n\n switch (object.typeId) {\n case MasterType.Series:\n return {\n image,\n imageType: ImageType.TallPosters,\n imageClassName: BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent:\n <ImageFallback type={ImageFallbackType.Series} svgContainerClassName={styles.posterFallbackSvg} />\n };\n\n case MasterType.Playlist:\n return {\n image,\n imageType: ImageType.Covers,\n imageClassName: !image?.url\n ? `${BASE_IMAGE_CLASS_NAME} ${getBgColorClass(object.name, BG_COLOUR_CLASS_NAMES)}`\n : BASE_IMAGE_CLASS_NAME,\n imageFallbackComponent: (\n <ImageFallback\n type={ImageFallbackType.Playlist}\n svgContainerClassName={image?.url ? styles.coverFallbackSvg : 'd-none'}\n extraClasses={!image?.url && 'bg-transparent'}\n />\n )\n };\n }\n}\n\nfunction getImageRatio(object: BaseObject): ImageFallbackType {\n if (VideoHelper.isVideoType(object))\n return 16 / 9;\n\n if (object.typeId === MasterType.Playlist)\n return 1;\n\n if (object.typeId === MasterType.Series)\n return 9 / 16;\n}\n\ninterface SharedObjectImageProps {\n object: BaseObject;\n locationContext: LocationContext;\n appLink?: Core.AppLink;\n showVideoMetadata?: boolean;\n fixedHeight?: boolean;\n}\n\nexport function SharedObjectImage(props: SharedObjectImageProps): JSX.Element {\n const ref = React.useCallback((el: HTMLDivElement) => {\n if (!el || !props.fixedHeight)\n return;\n\n el.style.width = `${el.offsetHeight * getImageRatio(props.object)}px`;\n }, []);\n\n const imageOptions: ImageOptions = { size: ImageSize.Small };\n\n const {\n image,\n imageType,\n imageClassName,\n imageFallbackComponent\n } = getImageProps(props.object);\n\n const useVideoThumbnail = VideoHelper.isVideoType(props.object) && !!props.showVideoMetadata;\n\n return (\n <div className='d-flex align-items-center justify-content-center w-100 h-100'>\n <div ref={ref} className={props.fixedHeight ? 'h-100' : 'w-100'}>\n {useVideoThumbnail &&\n <VideoThumbnail\n video={props.object}\n imageOptions={imageOptions}\n textPosition={ThumbnailTextPosition.Independent}\n type='cosmetic'\n appLink={props.appLink}\n analyticsOptions={{ location: props.locationContext }}\n hideDuration\n hideMask\n size='sm'\n />\n }\n {!useVideoThumbnail &&\n <BaseImage\n data={image?.url}\n imageType={imageType}\n imageOptions={imageOptions}\n appLink={props.appLink}\n className={imageClassName}\n >\n {imageFallbackComponent}\n </BaseImage>\n }\n </div>\n </div>\n );\n}","import { TableTheme } from 'libs/shared/components/table/Table';\n\nexport const SHARES_TABLE_THEME: TableTheme = {\n table: 'striped-list no-full-width pb-3',\n header: 'fw-semibold pb-1',\n headerCell: `py-2 ps-2 text-nowrap`,\n row: 'striped-row rounded',\n cell: 'd-flex align-items-center p-2'\n};","import { format } from 'timeago.js';\n\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { CheckMarkStatus } from 'libs/shared/components/check-mark-button/CheckMarkButton';\nimport { ShareActivityStatus } from 'libs/shared/enums/ShareActivityStatus';\n\ninterface ObjectWithDateShared {\n dateShared: string;\n}\n\ntype GroupedByDate<T extends ObjectWithDateShared> = { [date: string]: T[] };\n\nexport const ShareHelper = {\n groupByDateShared<T extends ObjectWithDateShared>(data: T[]): GroupedByDate<T> {\n const dateToObjectMapping: GroupedByDate<T> = ArrayHelper.groupBy(data, 'dateShared');\n\n const sortedDates = Object.keys(dateToObjectMapping).sort().reverse();\n\n // Create a sorted mapping between dates and the \"ObjectWithDateShared\" objects\n return sortedDates.reduce((acc: GroupedByDate<T>, date) => {\n const heading = format(date);\n\n if (!acc[heading])\n acc[heading] = [];\n\n acc[heading] = acc[heading].concat(dateToObjectMapping[date]);\n return acc;\n }, {});\n },\n\n mapActivityStatusToCheckMarkStatus(activityStatus: ShareActivityStatus): CheckMarkStatus {\n switch (activityStatus) {\n case ShareActivityStatus.Complete:\n return CheckMarkStatus.Complete;\n case ShareActivityStatus.Incomplete:\n return CheckMarkStatus.Incomplete;\n case ShareActivityStatus.None:\n return CheckMarkStatus.None;\n }\n },\n\n mapCheckMarkStatusToActivityStatus(checkMarkStatus: CheckMarkStatus): ShareActivityStatus {\n switch (checkMarkStatus) {\n case CheckMarkStatus.Complete:\n return ShareActivityStatus.Complete;\n case CheckMarkStatus.Incomplete:\n return ShareActivityStatus.Incomplete;\n case CheckMarkStatus.None:\n return ShareActivityStatus.None;\n }\n }\n};","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"VwD1b\",\"spinner\":\"eJ85e\"};","import * as React from 'react';\nimport { Spinner } from 'react-bootstrap';\nimport { useInView } from 'react-intersection-observer';\n\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './infinite-scroll-footer.scss';\n\ninterface InfiniteScrollFooterProps {\n isFetching: boolean;\n fetchNext?: (nextCursor: string) => void;\n nextCursor?: string;\n fetchOnScroll?: boolean;\n}\n\nInfiniteScrollFooter.defaultProps = {\n fetchOnScroll: false\n};\n\nexport function InfiniteScrollFooter(props: InfiniteScrollFooterProps): React.ReactElement {\n const [ ref, inView ] = useInView();\n\n React.useEffect(() => {\n if (!props.fetchOnScroll)\n return;\n\n if (!inView || props.isFetching)\n return;\n\n props.fetchNext?.(props.nextCursor);\n }, [ inView, props.isFetching ]);\n\n return (\n <div className={`p-3 text-center ${styles.container}`} ref={ref}>\n {props.isFetching\n ? <Spinner as='span' animation='border' role='status' className={styles.spinner} />\n : (\n <SvgContainer\n svgName={cvSvgLibrary.ChevronDown}\n className='svg-container cursor-pointer'\n size={SvgContainerSize.Large}\n onClick={() => props.fetchNext?.(props.nextCursor)}\n />\n )\n }\n </div>\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 styles from './pill-tab-selector.scss';\n\nexport interface PillTab {\n name: string;\n active: boolean;\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 className?: string;\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 ?? ''}>\n <ul className={`list-unstyled d-inline-block m-0 ${styles.pillTabSelector}`}>\n {props.tabs.map(tab => {\n return (\n <li className={`p-0 ${tab.active ? 'btn btn-dark' : 'btn btn-outline-dark'}`} key={tab.name}>\n {tab.appLink ? (\n <AppLink\n appLink={tab.appLink}\n analyticsData={tab.analyticsData}\n analyticsOptions={tab.analyticsOptions}\n className={`cursor-pointer d-flex justify-content-center text-decoration-none text-reset px-2 ${styles.pillItem}`}\n >\n {tab.name}\n\n {typeof (tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={tab.count} />\n </div>\n )}\n </AppLink>\n ) : (\n <DivButton className={`${styles.pillItem} d-flex justify-content-center p-2`} onClick={() => onSelectTab(tab)}>\n {tab.name}\n\n {typeof (tab.count) === 'number' && (\n <div className='ps-2'>\n <Badge type={BadgeType.Count} data={tab.count} />\n </div>\n )}\n </DivButton>\n )}\n </li>\n );\n })}\n </ul>\n </nav>\n );\n}\n","import { useEffect } from 'react';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\n\nconst SCROLL_TOLERANCE = 400; // value in px\n\ninterface UseInfiniteScrollOptions {\n fetchNextPage: () => void;\n hasMore: boolean;\n isFetching: boolean;\n scrollContainer?: HTMLElement;\n}\n\nexport function useInfiniteScroll(options: UseInfiniteScrollOptions): void {\n const handleScroll = (): void => {\n if (options.isFetching)\n return;\n\n if (!options.scrollContainer) {\n const currentScrollHeight = window.innerHeight + document.documentElement.scrollTop;\n \n const totalHeight = document.documentElement.scrollHeight - SCROLL_TOLERANCE;\n \n if (currentScrollHeight < totalHeight)\n return;\n } else {\n const { scrollContainer } = options;\n const currentScrollHeight = scrollContainer.getBoundingClientRect().height + scrollContainer.scrollTop;\n \n const totalHeight = scrollContainer.scrollHeight - SCROLL_TOLERANCE;\n \n if (currentScrollHeight < totalHeight)\n return;\n }\n\n options.fetchNextPage();\n };\n\n useEffect(() => {\n const onScroll = FunctionHelper.throttle(handleScroll, 200);\n\n const scrollContainer = options.scrollContainer || window;\n\n if (options.hasMore)\n scrollContainer.addEventListener('scroll', onScroll);\n\n return () => scrollContainer.removeEventListener('scroll', onScroll);\n }, [ options.hasMore, options.fetchNextPage, options.scrollContainer ]);\n}","import { useEffect, useState } from 'react';\n\nimport { HttpStatus, HttpStatusClass } from 'libs/common/backbone/enums/HttpStatus';\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\nimport { Flight } from 'libs/common/flight';\n\nimport { BaseObject, BasePaginatedCollection } from 'libs/shared/interfaces';\n\nimport { useInfiniteScroll } from './UseInfiniteScroll';\nimport { useSelectAllPages } from './UseSelectAllPages';\n\nexport interface UseInfiniteListResult<T extends BaseObject> {\n items: T[];\n hasMore: boolean;\n isFetching: boolean;\n nextCursor: string;\n totalItems?: number;\n hasFirstPageCompleted: boolean;\n}\n\n/**\n * Hook to extract an infinite list from the application state,\n * save it locally in state and only update when new data\n * is fetched.\n * \n * @param getRequest - callback function to get the request for each page.\n * Can be false if the request requires data that hasn't yet been fetched - e.g. user id.\n * \n * @param fetchNext - callback function to fetch a page.\n * Can be false if the request requires data that hasn't yet been fetched - e.g. user id.\n */\nexport function useInfiniteList<TObject = BaseObject, TResponse = BasePaginatedCollection<TObject>>(\n getRequest: ((cursor?: string) => Flight.Request) | false,\n fetchNext: ((cursor?: string) => void) | false,\n onError?: (pageNumber: number, statusCode: HttpStatus) => void,\n getItems?: (responseData: TResponse) => TObject[],\n getCursor?: (responseData: TResponse) => string,\n scrollContainer?: HTMLElement\n): UseInfiniteListResult<TObject> {\n const [ pagesFetched, setPagesFetched ] = useState(0);\n\n const fetchNextFn = fetchNext as (cursor?: string) => void;\n\n function getKey(cursor?: string): string {\n if (!getRequest)\n return null;\n\n const request = getRequest(cursor);\n\n if (!request)\n return null;\n\n return request.key;\n }\n\n const response = useSelectAllPages<TObject, TResponse>(\n getKey,\n getItems,\n getCursor\n );\n\n function fetchNextPage(): void {\n if (!fetchNext || !getRequest || !response)\n return;\n\n setPagesFetched(currentVal => currentVal + 1);\n return fetchNextFn(response.nextCursor);\n }\n\n useInfiniteScroll({\n fetchNextPage,\n hasMore: !!response?.nextCursor,\n isFetching: response?.isFetching,\n scrollContainer\n });\n\n useEffect(() => {\n if (!response)\n return;\n\n if (response.shouldInitialFetch && fetchNext) {\n fetchNextFn();\n setPagesFetched(currentVal => currentVal + 1);\n }\n }, [ response?.shouldInitialFetch, fetchNext ]);\n\n useEffect(() => {\n if (!response?.statusCode || !FunctionHelper.isFunction(onError))\n return;\n\n const httpStatusClass: HttpStatusClass = +(response.statusCode?.toString()?.substr(0, 1));\n\n if (httpStatusClass !== HttpStatusClass.ClientError && httpStatusClass !== HttpStatusClass.ServerError)\n return;\n\n onError(pagesFetched, response.statusCode);\n }, [response?.statusCode]);\n\n return {\n items: response?.items,\n hasMore: !!response?.nextCursor,\n nextCursor: response?.nextCursor,\n isFetching: response?.isFetching,\n totalItems: response?.totalItems,\n hasFirstPageCompleted: response?.hasFirstPageCompleted\n };\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { PillTab, PillTabSelector } from 'libs/shared/components/pill-tab-selector/PillTabSelector';\nimport { ContextService } from 'libs/shared/services/ContextService';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nconst namespace = 'share.sharesHeader';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst SHARED_BY_ME_APP_LINK = { application: AppChannels.MY_SHARES, action: Actions.MyShares.SHARED_BY_ME };\nconst SHARED_WITH_ME_APP_LINK = { application: AppChannels.MY_SHARES, action: Actions.MyShares.SHARED_WITH_ME };\n\nfunction getPillTabs(): PillTab[] {\n const currentAppLink = ContextService.getCurrentRoute()?.appLink;\n\n return [\n {\n name: getPhrase('sharedByMe'),\n onSelect: () => Core.AppLinkHelper.trigger(SHARED_BY_ME_APP_LINK),\n active: currentAppLink?.action === SHARED_BY_ME_APP_LINK.action\n },\n {\n name: getPhrase('sharedWithMe'),\n onSelect: () => Core.AppLinkHelper.trigger(SHARED_WITH_ME_APP_LINK),\n active: currentAppLink?.action === SHARED_WITH_ME_APP_LINK.action\n }\n ];\n}\n\nexport function SharesHeader(): JSX.Element {\n return (\n <div className='pb-3'>\n <h1 className='h2 mb-3'>{getPhrase('shares')}</h1>\n <PillTabSelector tabs={getPillTabs()} />\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"imageColumn\":\"Hs7kk\",\"nameColumn\":\"GRyds\",\"sharedByColumn\":\"fewR0\",\"dateSharedColumn\":\"G6z3W\",\"heading\":\"YxAsH\",\"image\":\"CdUtO\",\"name\":\"pdEW7\",\"avatar\":\"rQ2Dt\",\"date\":\"Lx3Ce\"};","import React from 'react';\n\nimport styles from './shared-with-me-table.scss';\n\nfunction PartialRow(): JSX.Element {\n return (\n <div className={`d-flex striped-row rounded`}>\n <div className={`d-flex align-items-center justify-content-center p-2 ${styles.imageColumn}`}>\n <div className={`partial-loading-background rounded w-100 ${styles.image}`} />\n </div>\n <div className={`d-flex align-items-center p-2 ${styles.nameColumn}`}>\n <div className={`partial-loading-background w-75 ${styles.name}`} />\n </div>\n <div className={`d-flex align-items-center p-2 ${styles.sharedByColumn}`}>\n <div className={`partial-loading-background ${styles.avatar}`} />\n </div>\n <div className={`d-none d-md-flex align-items-center p-2 ${styles.dateSharedColumn}`}>\n <div className={`partial-loading-background ${styles.date}`} />\n </div>\n </div>\n );\n}\n\ninterface PartialHeaderProps {\n fullHeader?: boolean;\n}\n\nfunction PartialHeader(props: PartialHeaderProps): JSX.Element {\n return (\n <div className='d-flex mb-1'>\n <div className={`${styles.imageColumn} p-2`}>\n <div className={`partial-loading-background ${styles.heading}`} />\n </div>\n <div className={`${styles.nameColumn} p-2`}>\n \n </div>\n <div className={`${styles.sharedByColumn} p-2`}>\n {props.fullHeader\n ? <div className={`partial-loading-background ${styles.heading}`} />\n : <> </>\n }\n </div>\n <div className={`${styles.dateSharedColumn} p-2 d-none d-md-flex`}>\n {props.fullHeader\n ? <div className={`partial-loading-background ${styles.heading}`} />\n : <> </>\n }\n </div>\n </div>\n );\n}\n\nexport function PartialSharedWithMeTable(): JSX.Element {\n return (\n <>\n <div className='mb-3'>\n <PartialHeader fullHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n\n <div className='mb-3'>\n <PartialHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n\n <div className='mb-3'>\n <PartialHeader />\n\n <div className='striped-list no-full-width'>\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n <PartialRow />\n </div>\n </div>\n </>\n );\n}","import React from 'react';\nimport { Column } from 'react-table';\nimport { format as formatDate } from 'timeago.js';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\n\nimport { LocationContext } from 'libs/analytics/interfaces';\n\nimport { SharedObjectImage } from 'libs/shared/apps/share/components/shared-object-image/SharedObjectImage';\nimport { SharedWithMeResponse } from 'libs/shared/apps/share/interfaces/responses/SharedWithMeResponse';\nimport { ShareHelper } from 'libs/shared/apps/share/utils/ShareHelper';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Avatar } from 'libs/shared/components/avatar/Avatar';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport styles from './shared-with-me-table.scss';\n\nconst namespace = 'share.sharedWithMeTable';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ntype TableDataGroupings = { [date: string]: SharedWithMeResponse[] };\n\nexport function getColumns(\n index: number,\n dateHeading: string,\n imageCdnUrl: string,\n breakpoints: Breakpoints,\n getObjectAppLink: (data: SharedWithMeResponse) => Core.AppLink\n): Column<SharedWithMeResponse>[] {\n const isMobile = breakpoints.xs || breakpoints.sm;\n\n const column: Column<SharedWithMeResponse>[] = [\n {\n Header: dateHeading,\n accessor: 'object',\n id: 'image',\n Cell: ({ row: { original } }) => {\n const { canConsume } = VideoHelper.getCanBeConsumed(original.object);\n\n return (\n <SharedObjectImage\n object={original.object}\n appLink={getObjectAppLink(original)}\n locationContext={LocationContext.SharedWithMe}\n showVideoMetadata={!canConsume}\n />\n );\n },\n minWidth: 140,\n maxWidth: 30\n },\n {\n accessor: 'object',\n id: 'name',\n Cell: ({ row: { original } }) => {\n if (original.object?.name) {\n return (\n <AppLink appLink={getObjectAppLink(original)} className='clamp-2'>\n {original.object.name}\n </AppLink>\n );\n }\n\n return <span><Text namespace={namespace} phrase='videoUnavailable' /></span>;\n },\n width: 60\n },\n {\n Header: index === 0 ? getPhrase('sharedBy') : '',\n accessor: 'owner',\n Cell: ({ value }) => (\n <div className='d-flex align-items-center'>\n <div className={`${styles.avatar} flex-shrink-0`}>\n <Avatar\n initials={UserHelper.getInitials(value.name, value.surname)}\n imageUrl={value.avatar?.url}\n imageCdnUrl={imageCdnUrl}\n />\n </div>\n\n {!isMobile && <p className='clamp-1 ms-2'>{`${value.name} ${value.surname}`}</p>}\n </div>\n ),\n width: 40\n },\n !isMobile && {\n Header: index === 0 ? getPhrase('shared') : '',\n id: 'dateShared',\n accessor: s => formatDate(s.dateShared),\n width: 60\n }\n ];\n\n return column.filter(Boolean);\n}\n\nexport function useGetData(data: SharedWithMeResponse[], refreshData: boolean): TableDataGroupings {\n return React.useMemo(() => {\n return ShareHelper.groupByDateShared(data);\n }, [refreshData]);\n}","import React from 'react';\n\nimport { Core } from 'libs/common/core';\n\nimport { SHARES_TABLE_THEME } from 'libs/shared/apps/share/constants/TableTheme';\nimport { SharedWithMeResponse } from 'libs/shared/apps/share/interfaces/responses/SharedWithMeResponse';\nimport { Table } from 'libs/shared/components/table/Table';\nimport { MasterObjectTypes } from 'libs/shared/enums/MasterObjectTypes';\nimport { Breakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { VideoHelper } from 'libs/shared/utils/VideoHelper';\n\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { usePluginHelper } from 'shared/hooks/use-plugin-helper/usePluginHelper';\n\nimport { getColumns, useGetData } from './SharedWithMeTableUtils';\n\nfunction useGetObjectAppLink(): (data: SharedWithMeResponse) => Core.AppLink {\n const { isPlugin } = usePluginHelper();\n\n return (data: SharedWithMeResponse) => {\n const appLink = {\n application: AppChannels.SHARE,\n action: Actions.Share.VIEW_SHARE_LINK,\n args: [data.id]\n };\n\n if (VideoHelper.isVideoType(data.object) && !VideoHelper.getCanBeConsumed(data.object)?.canConsume)\n return null;\n\n if (!isPlugin)\n return appLink;\n \n const shareAppLink: Core.AppLink = {\n application: AppChannels.DEFAULT,\n action: Actions.Default.SHARE,\n args: [data.id]\n };\n\n if (data.object.type === MasterObjectTypes.Video)\n return { ...shareAppLink, params: { entityType: 'video' } };\n\n if (data.object.type === MasterObjectTypes.Clip)\n return { ...shareAppLink, params: { entityType: 'clip' } };\n\n if (data.object.type === MasterObjectTypes.Interactive)\n return { ...shareAppLink, params: { entityType: 'interactive' } };\n\n return appLink;\n };\n}\n\ninterface SharedWithMeTableProps {\n data: SharedWithMeResponse[];\n imageCdnUrl: string;\n\n /**\n * As the table data is memoized, it must be prompted to recalculate.\n * Toggle `refreshTable` to do so.\n */\n refreshTable: boolean;\n breakpoints: Breakpoints;\n}\n\nexport function SharedWithMeTable(props: SharedWithMeTableProps): JSX.Element {\n const tableData = useGetData(props.data, props.refreshTable);\n const getObjectAppLink = useGetObjectAppLink();\n\n return (\n <>\n {Object.keys(tableData).map((heading, index) => (\n <Table\n key={index}\n columns={getColumns(index, heading, props.imageCdnUrl, props.breakpoints, getObjectAppLink)}\n data={tableData[heading]}\n theme={SHARES_TABLE_THEME}\n />\n ))}\n </>\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 = 'share.sharedWithMeEmptyState';\n\nconst cta = {\n application: AppChannels.DASHBOARD,\n action: Actions.Dashboard.HOME\n};\n\nexport function SharedWithMeEmptyState(): JSX.Element {\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n <EmptyState>\n <EmptyState.Image src={ImageUrls.EmptyStates.Share.SHARED_WITH_ME} size='small'/>\n <EmptyState.Heading><Text phrase='heading' /></EmptyState.Heading>\n <EmptyState.Info><Text phrase='info' /></EmptyState.Info>\n <EmptyState.Cta appLink={cta} text={LanguageService.getPhrase(namespace, 'cta')} />\n </EmptyState>\n </LanguageNamespaceContext.Provider>\n );\n}","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { Flight } from 'libs/common/flight';\n\nimport { ShareRequests } from 'libs/shared/apps/share/flight-requests/ShareRequests';\nimport { SharedWithMeResponse } from 'libs/shared/apps/share/interfaces/responses/SharedWithMeResponse';\nimport { InfiniteScrollFooter } from 'libs/shared/components/infinite-scroll-footer/InfiniteScrollFooter';\nimport { PermissionName } from 'libs/shared/enums/PermissionName';\nimport { NotFoundError } from 'libs/shared/errors/general/not-found/NotFoundError';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { useBreakpoints } from 'libs/shared/hooks/useBreakpoints';\nimport { useInfiniteList } from 'libs/shared/hooks/UseInfiniteList';\nimport { usePermissions } from 'libs/shared/hooks/usePermissions';\nimport { useSetPageMetadata } from 'libs/shared/hooks/useSetPageMetadata';\nimport { Config } from 'libs/shared/interfaces';\n\nimport { PartialSharedWithMeTable } from 'apps/share/components/shared-with-me-table/PartialSharedWithMeTable';\nimport { SharedWithMeTable } from 'apps/share/components/shared-with-me-table/SharedWithMeTable';\nimport { SharesHeader } from 'apps/share/components/shares-header/SharesHeader';\n\nimport { SharedWithMeEmptyState } from './empty-state/SharedWithMeEmptyState';\n\nconst namespace = 'liteShare.sharedWithMe';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nexport function SharedWithMeView(): JSX.Element {\n const { hasPermissions } = usePermissions();\n const dispatch = useDispatch();\n const breakpoints = useBreakpoints();\n\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const getRequest = (cursor?: string) => ShareRequests.getObjectsSharedWithUser(cursor);\n const fetchNext = (cursor?: string) => Flight.getFetch(dispatch)(getRequest(cursor));\n\n const {\n items: sharedWithMe,\n hasMore,\n isFetching,\n nextCursor\n } = useInfiniteList<SharedWithMeResponse>(getRequest, fetchNext);\n\n useSetPageMetadata({ title: getPhrase('sharedWithMe') });\n\n if (hasPermissions(PermissionName.StudentExperience)) {\n Core.ErrorHelper.throw(new NotFoundError());\n return <></>;\n }\n\n return (\n <div className='px-3'>\n <SharesHeader />\n\n {(() => {\n if (!sharedWithMe || !config.data)\n return <PartialSharedWithMeTable />;\n\n if (!sharedWithMe?.length)\n return <SharedWithMeEmptyState />;\n\n return (\n <>\n <SharedWithMeTable\n data={sharedWithMe}\n imageCdnUrl={config.data.imageCdnUrl}\n refreshTable={isFetching}\n breakpoints={breakpoints}\n />\n {(hasMore || isFetching) &&\n <InfiniteScrollFooter isFetching={isFetching} fetchNext={fetchNext} nextCursor={nextCursor} />\n }\n </>\n );\n })()}\n </div>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"pillTabSelector\":\"Hdi6o\",\"pillItem\":\"hUJx1\"};","var EN_US = ['second', 'minute', 'hour', 'day', 'week', 'month', 'year'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['just now', 'right now'];\n var unit = EN_US[Math.floor(idx / 2)];\n if (diff > 1)\n unit += 's';\n return [diff + \" \" + unit + \" ago\", \"in \" + diff + \" \" + unit];\n}\n//# sourceMappingURL=en_US.js.map","var ZH_CN = ['秒', '分钟', '小时', '天', '周', '个月', '年'];\nexport default function (diff, idx) {\n if (idx === 0)\n return ['刚刚', '片刻后'];\n var unit = ZH_CN[~~(idx / 2)];\n return [diff + \" \" + unit + \"\\u524D\", diff + \" \" + unit + \"\\u540E\"];\n}\n//# sourceMappingURL=zh_CN.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\n/**\n * All supported locales\n */\nvar Locales = {};\n/**\n * register a locale\n * @param locale\n * @param func\n */\nexport var register = function (locale, func) {\n Locales[locale] = func;\n};\n/**\n * get a locale, default is en_US\n * @param locale\n * @returns {*}\n */\nexport var getLocale = function (locale) {\n return Locales[locale] || Locales['en_US'];\n};\n//# sourceMappingURL=register.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nvar SEC_ARRAY = [\n 60,\n 60,\n 24,\n 7,\n 365 / 7 / 12,\n 12,\n];\n/**\n * format Date / string / timestamp to timestamp\n * @param input\n * @returns {*}\n */\nexport function toDate(input) {\n if (input instanceof Date)\n return input;\n // @ts-ignore\n if (!isNaN(input) || /^\\d+$/.test(input))\n return new Date(parseInt(input));\n input = (input || '')\n // @ts-ignore\n .trim()\n .replace(/\\.\\d+/, '') // remove milliseconds\n .replace(/-/, '/')\n .replace(/-/, '/')\n .replace(/(\\d)T(\\d)/, '$1 $2')\n .replace(/Z/, ' UTC') // 2017-2-5T3:57:52Z -> 2017-2-5 3:57:52UTC\n .replace(/([+-]\\d\\d):?(\\d\\d)/, ' $1$2'); // -04:00 -> -0400\n return new Date(input);\n}\n/**\n * format the diff second to *** time ago, with setting locale\n * @param diff\n * @param localeFunc\n * @returns\n */\nexport function formatDiff(diff, localeFunc) {\n /**\n * if locale is not exist, use defaultLocale.\n * if defaultLocale is not exist, use build-in `en`.\n * be sure of no error when locale is not exist.\n *\n * If `time in`, then 1\n * If `time ago`, then 0\n */\n var agoIn = diff < 0 ? 1 : 0;\n /**\n * Get absolute value of number (|diff| is non-negative) value of x\n * |diff| = diff if diff is positive\n * |diff| = -diff if diff is negative\n * |0| = 0\n */\n diff = Math.abs(diff);\n /**\n * Time in seconds\n */\n var totalSec = diff;\n /**\n * Unit of time\n */\n var idx = 0;\n for (; diff >= SEC_ARRAY[idx] && idx < SEC_ARRAY.length; idx++) {\n diff /= SEC_ARRAY[idx];\n }\n /**\n * Math.floor() is alternative of ~~\n *\n * The differences and bugs:\n * Math.floor(3.7) -> 4 but ~~3.7 -> 3\n * Math.floor(1559125440000.6) -> 1559125440000 but ~~1559125440000.6 -> 52311552\n *\n * More information about the performance of algebraic:\n * https://www.youtube.com/watch?v=65-RbBwZQdU\n */\n diff = Math.floor(diff);\n idx *= 2;\n if (diff > (idx === 0 ? 9 : 1))\n idx += 1;\n return localeFunc(diff, idx, totalSec)[agoIn].replace('%s', diff.toString());\n}\n/**\n * calculate the diff second between date to be formatted an now date.\n * @param date\n * @param relativeDate\n * @returns {number}\n */\nexport function diffSec(date, relativeDate) {\n var relDate = relativeDate ? toDate(relativeDate) : new Date();\n return (+relDate - +toDate(date)) / 1000;\n}\n/**\n * nextInterval: calculate the next interval time.\n * - diff: the diff sec between now and date to be formatted.\n *\n * What's the meaning?\n * diff = 61 then return 59\n * diff = 3601 (an hour + 1 second), then return 3599\n * make the interval with high performance.\n **/\nexport function nextInterval(diff) {\n var rst = 1, i = 0, d = Math.abs(diff);\n for (; diff >= SEC_ARRAY[i] && i < SEC_ARRAY.length; i++) {\n diff /= SEC_ARRAY[i];\n rst *= SEC_ARRAY[i];\n }\n d = d % rst;\n d = d ? rst - d : rst;\n return Math.ceil(d);\n}\n//# sourceMappingURL=date.js.map","import { formatDiff, diffSec } from './utils/date';\nimport { getLocale } from './register';\n/**\n * format a TDate into string\n * @param date\n * @param locale\n * @param opts\n */\nexport var format = function (date, locale, opts) {\n // diff seconds\n var sec = diffSec(date, opts && opts.relativeDate);\n // format it with locale\n return formatDiff(sec, getLocale(locale));\n};\n//# sourceMappingURL=format.js.map","/**\n * Created by hustcc on 18/5/20.\n * Contract: i@hust.cc\n */\nimport en_US from './lang/en_US';\nimport zh_CN from './lang/zh_CN';\nimport { register } from './register';\nregister('en_US', en_US);\nregister('zh_CN', zh_CN);\nexport { format } from './format';\nexport { render, cancel } from './realtime';\nexport { register };\n//# sourceMappingURL=index.js.map"],"names":["BASE_IMAGE_CLASS_NAME","SharedObjectImage","props","ref","el","object","fixedHeight","style","width","offsetHeight","VideoHelper","typeId","MasterType","imageOptions","size","image","ImageHelper","imageType","imageClassName","imageFallbackComponent","ImageFallback","type","svgContainerClassName","url","getBgColorClass","name","extraClasses","getImageProps","useVideoThumbnail","showVideoMetadata","className","VideoThumbnail","video","textPosition","ThumbnailTextPosition","appLink","analyticsOptions","location","locationContext","hideDuration","hideMask","BaseImage","data","SHARES_TABLE_THEME","table","header","headerCell","row","cell","ShareHelper","groupByDateShared","dateToObjectMapping","Object","keys","sort","reverse","reduce","acc","date","heading","concat","mapActivityStatusToCheckMarkStatus","activityStatus","mapCheckMarkStatusToActivityStatus","checkMarkStatus","InfiniteScrollFooter","inView","fetchOnScroll","isFetching","fetchNext","nextCursor","Spinner","as","animation","role","SvgContainer","svgName","S","onClick","defaultProps","PillTabSelector","tabs","map","tab","active","key","analyticsData","count","onSelect","onSelectTab","SCROLL_TOLERANCE","useInfiniteList","getRequest","onError","getItems","getCursor","scrollContainer","options","handleScroll","useState","pagesFetched","setPagesFetched","fetchNextFn","response","cursor","request","fetchNextPage","currentVal","hasMore","getBoundingClientRect","height","scrollTop","scrollHeight","window","innerHeight","document","documentElement","useEffect","onScroll","FunctionHelper","addEventListener","removeEventListener","shouldInitialFetch","statusCode","httpStatusClass","toString","substr","HttpStatus","items","totalItems","hasFirstPageCompleted","getPhrase","SHARED_BY_ME_APP_LINK","application","action","SHARED_WITH_ME_APP_LINK","SharesHeader","currentAppLink","PartialRow","PartialHeader","fullHeader","PartialSharedWithMeTable","namespace","LanguageService","getColumns","index","dateHeading","imageCdnUrl","breakpoints","getObjectAppLink","isMobile","xs","sm","Header","accessor","id","Cell","original","canConsume","minWidth","maxWidth","AppLink","Text","phrase","value","Avatar","initials","UserHelper","surname","imageUrl","avatar","s","dateShared","filter","Boolean","SharedWithMeTable","refreshData","isPlugin","tableData","refreshTable","usePluginHelper","args","shareAppLink","MasterObjectTypes","params","entityType","Table","columns","theme","cta","SharedWithMeEmptyState","EmptyState","src","ImageUrls","text","SharedWithMeView","hasPermissions","usePermissions","dispatch","useBreakpoints","config","ConfigRequests","ShareRequests","sharedWithMe","useSetPageMetadata","title","PermissionName","NotFoundError","length","EN_US","ZH_CN","Locales","register","locale","func","SEC_ARRAY","toDate","input","Date","isNaN","test","parseInt","trim","replace","format","opts","sec","relativeDate","diff","localeFunc","agoIn","totalSec","Math","abs","idx","floor","unit"],"sourceRoot":""}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! For license information please see 2118-
|
|
1
|
+
/*! For license information please see 2118-ec2a5f1e9b-lite.chunk.js.LICENSE.txt */
|
|
2
2
|
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[2118],{38365:(e,t,r)=>{r.d(t,{n:()=>O,W:()=>E});var n=r(32735),o=r(80247),a=r(80130),i=r(92802),c=r(91967),l=r(1048),s=r(36848),u=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r};function f(e){var t=e.label,r=e.checkboxLabelClassName,o=e.checkboxLabelFontWeight,i=e.className,c=u(e,["label","checkboxLabelClassName","checkboxLabelFontWeight","className"]);return n.createElement(a.Z.Group,{className:"form-group"},n.createElement("div",{className:"form-check ".concat(i||"")},n.createElement(O,Object.assign({className:"form-check-input"},c)),n.createElement(a.Z.Label,{className:"form-check-label cursor-pointer ".concat("normal"===o?"fw-normal":""," \n ").concat(r),htmlFor:c.id},t),e.checkboxAppLink&&e.checkboxAppLinkText&&n.createElement(n.Fragment,null,n.createElement("span",null," "),n.createElement(s.F,{appLink:e.checkboxAppLink,className:"info-link"},e.checkboxAppLinkText))))}var d=r(83914),p=r(83345),m=r(73814),h=r(35223);function y(e){var t=(0,i.u6)().values[e.fieldName];return"string"!=typeof t?n.createElement(n.Fragment,null):n.createElement("div",{className:"float-end text-secondary fw-normal"},t.length,"/",e.limit," characters")}const v={revealPassword:"jCfI0",passwordInput:"RBJnf",passwordContainer:"d78lK",passwordContainerDisabled:"asbVo",infoTooltip:"wzyOG",spinner:"CycFx"};function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var g=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r},w="shared.formField";function O(e){var t,r,a=e.children,s=e.showLoadingSpinner,u=g(e,["children","showLoadingSpinner"]),f=(t=n.useState(e.type),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,i,c=[],l=!0,s=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(c.push(n.value),c.length!==t);l=!0);}catch(e){s=!0,o=e}finally{try{if(!l&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw o}}return c}}(t,r)||function(e,t){if(e){if("string"==typeof e)return b(e,t);var r=Object.prototype.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)?b(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),p=f[0],m=f[1],y=c.q.isFunction(a)?function(e){return a(e)}:n.Children.count(a)?a:null;if("password"!==u.type)return s?n.createElement("div",{className:"position-relative"},n.createElement(i.gN,Object.assign({},l.t.omit(u,["formSize"])),y),n.createElement("div",{className:v.spinner},n.createElement(o.Z,{animation:"border",size:"sm"}))):n.createElement(i.gN,Object.assign({},l.t.omit(u,["formSize"])),y);var w="position-relative ".concat(v.passwordContainer);return u.className&&(w+=" ".concat(u.className)),u.disabled&&(w+=" ".concat(v.passwordContainerDisabled)),n.createElement("div",{className:w},n.createElement(i.gN,Object.assign({},l.t.omit(u,["formSize","type","className"]),{type:p,className:"".concat(v.passwordInput," border-0 w-100 h-100 outline-none rounded")}),y),"password"===u.type&&n.createElement(d.x,{svgName:"password"===p?h.vn.VisibleOn:h.vn.VisibleOff,className:"svg-container cursor-pointer ".concat(v.revealPassword),onClick:function(){m("password"===p?"text":"password")}}))}function E(e){var t=e.label,r=e.className,o=e.showCharacterCounter,c=e.showRequiredStar,s=e.infoTooltip,u=e.infoTooltipPlacement,b=e.infoText,E=e.formSize,x=e.showOptionalLabel,S=g(e,["label","className","showCharacterCounter","showRequiredStar","infoTooltip","infoTooltipPlacement","infoText","formSize","showOptionalLabel"]),k=(0,i.u6)(),j=k.errors,C=k.touched,L=function(){};if("checkbox"===S.type){var N=l.t.omit(e,["formSize","infoTooltipPlacement"]);return e.disabled&&(N.onChange=L),n.createElement(f,Object.assign({},N))}var I=Object.assign(Object.assign({},S),{className:m.w.getCustomFormControlClassName(j,C,S.name,E,r,"string"==typeof e.as?e.as:null)});return e.disabled&&(I.onChange=L),n.createElement(a.Z.Group,{className:"form-group"},!!t&&n.createElement(a.Z.Label,{htmlFor:S.id,className:"d-flex align-items-center"},t,c&&n.createElement("span",{className:"text-danger"},"*"),s&&n.createElement(d.x,{className:"svg-container text-secondary ".concat(v.infoTooltip),svgName:h.vn.Info,title:s,tooltipPlacement:u,tooltipSpanHack:!0}),x&&n.createElement("span",{className:"text-secondary"}," ",n.createElement(p.x,{namespace:w,phrase:"optional"})),!!o&&!!S.maxLength&&n.createElement("div",{className:"ms-auto"},n.createElement(y,{fieldName:S.name,limit:S.maxLength}))),n.createElement(O,Object.assign({},I)),!!b&&n.createElement(a.Z.Text,{className:"text-secondary"},b),n.createElement(i.Bc,{name:S.name},(function(e){return n.createElement(a.Z.Control.Feedback,{type:"invalid"},e)})))}O.defaultProps={autoComplete:"off"},E.defaultProps={autoComplete:"off",infoTooltipPlacement:"top"}},82644:(e,t,r)=>{r.d(t,{b:()=>u,n:()=>s});var n=r(32735),o=r(92802),a=r(91967),i=r(1048);function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var l=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r};function s(e){var t=e.castInitialValues,r=e.castValuesOnSubmit,s=e.initialValues,u=e.onSubmit,f=l(e,["castInitialValues","castValuesOnSubmit","initialValues","onSubmit"]),d=t&&e.validationSchema?e.validationSchema.cast(function(e){if(!e)return{};var t=i.t.deepClone(e);return function e(r){Object.keys(t).forEach((function(n){t.hasOwnProperty(n)&&(i.t.isObject(r[n])?e(r[n]):null===t[n]&&delete t[n])}))}(t),t}(s)):s,p={allowInitialSubmit:e.allowInitialSubmit};return n.createElement(o.J9,Object.assign({enableReinitialize:!0},f,{initialValues:d,onSubmit:function(t,n){var o=n.setSubmitting,a=n.resetForm,i=n.setFieldError,l=r&&e.validationSchema?e.validationSchema.cast(t):t;u(l,(function(){var e,t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(r.reset&&a(),r.errors)for(var n=0,l=Object.entries(r.errors);n<l.length;n++){var s=(e=l[n],t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,i,c=[],l=!0,s=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(c.push(n.value),c.length!==t);l=!0);}catch(e){s=!0,o=e}finally{try{if(!l&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw o}}return c}}(e,t)||function(e,t){if(e){if("string"==typeof e)return c(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=s[0],f=s[1];i(u,f)}o(!1)}))},initialStatus:p}),a.q.isFunction(e.children)?function(t){return e.children(t)}:n.Children.count(e.children)?e.children:null)}function u(){return(0,o.u6)()}s.defaultProps={castInitialValues:!0,castValuesOnSubmit:!0}},23455:(e,t,r)=>{r.d(t,{h:()=>i});var n=r(32735),o=r(81886),a=r(20470);function i(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];n.useEffect((function(){t.length&&t.some(o.Q.Ry.isStatusCodeError)&&o.Q.Ry.throw(new a.x)}),t)}},73814:(e,t,r)=>{r.d(t,{w:()=>o});var n=r(92802),o={getCustomFormControlClassName:function(e,t,r,o,a,i){var c="";return c=function(e,t){var r="";return r="select"===e?"form-select":"form-control","sm"===t&&(r+=" ".concat(r,"-sm")),"lg"===t&&(r+=" ".concat(r,"-lg")),r}(i,o),(0,n.u9)(t,r)&&(0,n.u9)(e,r)&&(c+=" is-invalid"),a&&(c+=" ".concat(a)),c}}},12617:(e,t,r)=>{r.d(t,{E:()=>s});var n=r(99940),o=r(97395),a=r(62803),i=r(5960),c=r(4594),l=r(78417),s={videos:function(e,t,r){var n=a.v.VIDEO_COLLECTION,s=a.v.CLIP_COLLECTION,u=a.v.INTERACTIVE,f="videos[".concat(n,"]{libraries.typeid:").concat(c.E.WorkspaceCollection,"}"),d="clips[".concat(s,"]{status:").concat(i.X.Published,"}"),p="interactives[".concat(u,"]{status:[").concat(i.X.Published,",").concat(i.X.Draft,"]}"),m=[];(null==r?void 0:r.length)?(r.includes("video")&&m.push(f),r.includes("clip")&&m.push(d),r.includes("interactive")&&m.push(p)):m.push(f,d,p);var h={query:"(".concat(m.join("|"),"){orderbydesc:timestamp}"),permissionFilterOption:l.r.StripMetadata};return t&&(h.cursor=t),{url:o._.urlBuilder("{gateway}/v1/objects/".concat(e,"/members"),h),key:"my:videos:".concat(e,":").concat(t).concat(r?":".concat(Array.isArray(r)?r.join(":"):r):"")}},workspaceWithCategories:function(){return{url:o._.urlBuilder("/api/domain/v2/me/libraries",{type:["workspace"],maxCategoryDepth:6}),key:"workspace:folders",normalize:!1}},exchangeWithCategories:function(){return{url:o._.urlBuilder("/api/domain/v2/me/libraries",{type:["exchange"],maxCategoryDepth:5}),key:"exchange:folders",normalize:!1}},addFolder:function(e){var t="/api/domain/v2/collections/".concat(e.collectionId,"/categories");return e.parentCategoryId&&(t=o._.urlBuilder(t,{parentCategoryId:e.parentCategoryId})),{url:t,key:"add:folder",type:n.k.POST,data:{name:e.name},invalidationKeys:["workspace","folder"]}},deleteFolder:function(e){return{url:"{gateway}/v1/objects/".concat(e),key:"delete:folder",type:n.k.DELETE,invalidationKeys:["workspace","folder"]}},moveFolder:function(e){return{url:"/api/domain/v2/objects/move",key:"move:folder",type:n.k.POST,data:{assocType:"has",newCollectionId:e.newFolderId,oldCollectionId:e.oldFolderId,objectIds:[e.moveFolderId]},invalidationKeys:["workspace","folder"]}},updateFolder:function(e,t){return{url:"{gateway}/v1/objects/".concat(e),key:"rename:folder",type:n.k.PUT,data:{name:t},invalidationKeys:["workspace","folder"]}},videoFolders:function(e,t){return{url:"/api/domain/v2/objects/".concat(e,"/categories?query=libraries{id:").concat(t,"}"),key:"video:folders:".concat(e)}},moveVideo:function(e){var t={newCollectionId:e.newFolderId,oldCollectionId:e.oldFolderId,objectIds:e.videoId};return{url:"/api/domain/v3/objects/move",key:"move:folder:".concat(t.objectIds.join(",")),type:n.k.POST,data:t,invalidationKeys:["video"]}},addToExchange:function(e){return{url:"{gateway}/v1/users/me/videos/exchange",key:"add:to:exchange",type:n.k.POST,data:e}}}},52118:(e,t,r)=>{r.r(t),r.d(t,{RenameFolderView:()=>j});var n=r(32735),o=r(23481),a=r(20354),i=r(49985),c=r(65858),l=r(82644),s=r(9111),u=r(98064),f=r(69883),d=r(23455),p=r(12617),m=r(92802),h=r(5173),y=r(38365),v=r(13876),b=o.T.encloseNamespace("myVideos.renameFolder"),g=h.Ry().shape({name:h.Z_().required((function(){return b("nameRequired")})).max(255,(function(){return b("maxNameLength")}))});function w(e){var t=(0,m.u6)();return n.createElement(m.l0,null,n.createElement(y.W,{label:b("name"),type:"text",name:"name",id:"name",placeholder:b("placeholder"),autoFocus:!0,value:t.values.name,required:!0}),n.createElement(v.u,null,n.createElement(v.u.Cancel,{onClick:e.onClickCancel}),n.createElement(v.u.Submit,{variant:"dark",showSpinner:e.showSpinner,text:b("renameFolder")})))}function O(e){return O="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},O(e)}function E(){E=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",l=a.toStringTag||"@@toStringTag";function s(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{s({},"")}catch(e){s=function(e,t,r){return e[t]=r}}function u(e,t,r,n){var a=t&&t.prototype instanceof v?t:v,i=Object.create(a.prototype),c=new F(n||[]);return o(i,"_invoke",{value:L(e,r,c)}),i}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=u;var d="suspendedStart",p="suspendedYield",m="executing",h="completed",y={};function v(){}function b(){}function g(){}var w={};s(w,i,(function(){return this}));var x=Object.getPrototypeOf,S=x&&x(x(T([])));S&&S!==r&&n.call(S,i)&&(w=S);var k=g.prototype=v.prototype=Object.create(w);function j(e){["next","throw","return"].forEach((function(t){s(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function r(o,a,i,c){var l=f(e[o],e,a);if("throw"!==l.type){var s=l.arg,u=s.value;return u&&"object"==O(u)&&n.call(u,"__await")?t.resolve(u.__await).then((function(e){r("next",e,i,c)}),(function(e){r("throw",e,i,c)})):t.resolve(u).then((function(e){s.value=e,i(s)}),(function(e){return r("throw",e,i,c)}))}c(l.arg)}var a;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return a=a?a.then(o,o):o()}})}function L(t,r,n){var o=d;return function(a,i){if(o===m)throw Error("Generator is already running");if(o===h){if("throw"===a)throw i;return{value:e,done:!0}}for(n.method=a,n.arg=i;;){var c=n.delegate;if(c){var l=N(c,n);if(l){if(l===y)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===d)throw o=h,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=m;var s=f(t,r,n);if("normal"===s.type){if(o=n.done?h:p,s.arg===y)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(o=h,n.method="throw",n.arg=s.arg)}}}function N(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,N(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),y;var a=f(o,t.iterator,r.arg);if("throw"===a.type)return r.method="throw",r.arg=a.arg,r.delegate=null,y;var i=a.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,y):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,y)}function I(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function F(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(I,this),this.reset(!0)}function T(t){if(t||""===t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return a.next=a}}throw new TypeError(O(t)+" is not iterable")}return b.prototype=g,o(k,"constructor",{value:g,configurable:!0}),o(g,"constructor",{value:b,configurable:!0}),b.displayName=s(g,l,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===b||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,s(e,l,"GeneratorFunction")),e.prototype=Object.create(k),e},t.awrap=function(e){return{__await:e}},j(C.prototype),s(C.prototype,c,(function(){return this})),t.AsyncIterator=C,t.async=function(e,r,n,o,a){void 0===a&&(a=Promise);var i=new C(u(e,r,n,o),a);return t.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},j(k),s(k,l,"Generator"),s(k,i,(function(){return this})),s(k,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=T,F.prototype={constructor:F,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(P),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return c.type="throw",c.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],c=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),s=n.call(i,"finallyLoc");if(l&&s){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,y):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),y},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),P(r),y}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;P(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:T(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),y}},t}function x(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var S=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{l(n.next(e))}catch(e){a(e)}}function c(e){try{l(n.throw(e))}catch(e){a(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,c)}l((n=n.apply(e,t||[])).next())}))},k=o.T.encloseNamespace("myVideos.renameFolder");function j(e){var t,r,o=(t=n.useState(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,i,c=[],l=!0,s=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(c.push(n.value),c.length!==t);l=!0);}catch(e){s=!0,o=e}finally{try{if(!l&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(s)throw o}}return c}}(t,r)||function(e,t){if(e){if("string"==typeof e)return x(e,t);var r=Object.prototype.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)?x(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),m=o[0],h=o[1],y=a.a.useGetFetchAsync(),v=(0,f.Z)(),b=a.a.useBasicFetch(u.D.folder(e.id));(0,d.h)(b.statusCode);var O=b.hasCompleted;return n.createElement(s.G,{title:k("title"),closePopup:e.closePopup,showLoadingSpinner:!O},O&&n.createElement(l.n,{initialValues:{name:b.data.name},validationSchema:g,onSubmit:function(t){return S(this,void 0,void 0,E().mark((function r(){return E().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return h(!0),r.prev=1,r.next=4,y(p.E.updateFolder(b.data.id,t.name));case 4:v.success(k("success")),e.closePopup(),i.k.logUserAction({id:b.data.id,name:t.name,oldName:b.data.name},{entity:c.py.Folder,actionType:c.Vw.Rename,workflowPhase:c.eu.Complete,location:c.LZ.Popup}),r.next=13;break;case 9:r.prev=9,r.t0=r.catch(1),v.success(k("error")),e.closePopup();case 13:case"end":return r.stop()}}),r,null,[[1,9]])})))},validateOnMount:!0},n.createElement(w,{onClickCancel:e.closePopup,showSpinner:m})))}}}]);
|
|
3
|
-
//# sourceMappingURL=2118-
|
|
3
|
+
//# sourceMappingURL=2118-ec2a5f1e9b-lite.chunk.js.map
|