@clickview/lite 0.0.24-rc.4 → 0.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/dist/css/11.chunk.css.map +1 -1
  2. package/dist/css/12.chunk.css.map +1 -1
  3. package/dist/css/13.chunk.css.map +1 -1
  4. package/dist/css/14.chunk.css.map +1 -1
  5. package/dist/css/15.chunk.css.map +1 -1
  6. package/dist/css/16.chunk.css.map +1 -1
  7. package/dist/css/17.chunk.css.map +1 -1
  8. package/dist/css/18.chunk.css.map +1 -1
  9. package/dist/css/20.chunk.css.map +1 -1
  10. package/dist/css/29.chunk.css.map +1 -1
  11. package/dist/css/3.chunk.css.map +1 -1
  12. package/dist/css/30.chunk.css.map +1 -1
  13. package/dist/css/31.chunk.css.map +1 -1
  14. package/dist/css/33.chunk.css.map +1 -1
  15. package/dist/css/38.chunk.css +11 -34
  16. package/dist/css/38.chunk.css.map +1 -1
  17. package/dist/css/4.chunk.css +3 -3
  18. package/dist/css/44.chunk.css +11 -3
  19. package/dist/css/44.chunk.css.map +1 -1
  20. package/dist/css/45.chunk.css +38 -0
  21. package/dist/css/45.chunk.css.map +1 -0
  22. package/dist/css/5.chunk.css.map +1 -1
  23. package/dist/css/52.chunk.css +52 -0
  24. package/dist/css/52.chunk.css.map +1 -0
  25. package/dist/css/59.chunk.css +14 -0
  26. package/dist/css/59.chunk.css.map +1 -0
  27. package/dist/css/6.chunk.css.map +1 -1
  28. package/dist/css/60.chunk.css +43 -0
  29. package/dist/css/60.chunk.css.map +1 -0
  30. package/dist/en.json +1 -1
  31. package/dist/libs/shared/src/components/curriculum-links/CurriculumLinks.d.ts +9 -0
  32. package/dist/libs/shared/src/components/widgets/items/resource-widget-item/ResourceWidgetItem.d.ts +12 -0
  33. package/dist/libs/shared/src/enums/CurriculumType.d.ts +6 -0
  34. package/dist/libs/shared/src/flight-requests/ClassificationRequests.d.ts +1 -0
  35. package/dist/libs/shared/src/flight-requests/ResourceRequests.d.ts +11 -0
  36. package/dist/libs/shared/src/interfaces/collections/SubtitleCollection.d.ts +3 -0
  37. package/dist/libs/shared/src/interfaces/models/Curriculum.d.ts +14 -0
  38. package/dist/libs/shared/src/interfaces/models/FileUpload.d.ts +20 -0
  39. package/dist/libs/shared/src/interfaces/models/Language.d.ts +4 -0
  40. package/dist/libs/shared/src/interfaces/models/Pdf.d.ts +4 -0
  41. package/dist/libs/shared/src/interfaces/models/Subtitle.d.ts +7 -0
  42. package/dist/libs/shared/src/interfaces/models/index.d.ts +1 -0
  43. package/dist/libs/shared/src/interfaces/requests/UpdateObjectChannel.d.ts +3 -0
  44. package/dist/libs/shared/src/interfaces/requests/UpdateObjectRating.d.ts +3 -0
  45. package/dist/libs/shared/src/interfaces/requests/UpdateResourceRequest.d.ts +3 -0
  46. package/dist/projects/lite/src/app.d.ts +1 -0
  47. package/dist/projects/lite/src/shared/components/play-page/PlayPage.d.ts +2 -1
  48. package/dist/projects/lite/src/shared/components/synopsis/Synopsis.d.ts +3 -1
  49. package/dist/projects/lite/src/shared/components/video-details/VideoDetails.d.ts +2 -0
  50. package/dist/projects/lite/src/shared/constants/MinimumGlanceHeight.d.ts +1 -0
  51. package/dist/projects/lite/src/shared/views/preview-pdf/PreviewPdfView.d.ts +7 -0
  52. package/dist/scripts/0-b02efe11fb.chunk.js +1 -0
  53. package/dist/scripts/1-4f19a5caea.chunk.js +17 -0
  54. package/dist/scripts/1.chunk.js.map +1 -1
  55. package/dist/scripts/10.chunk.js +484 -1203
  56. package/dist/scripts/10.chunk.js.map +1 -1
  57. package/dist/scripts/11-32e30d10ce.chunk.js +1 -0
  58. package/dist/scripts/11.chunk.js +289 -1388
  59. package/dist/scripts/11.chunk.js.map +1 -1
  60. package/dist/scripts/12-72a5373486.chunk.js +1 -0
  61. package/dist/scripts/12.chunk.js +1371 -283
  62. package/dist/scripts/12.chunk.js.map +1 -1
  63. package/dist/scripts/13-1cd85ad3ee.chunk.js +1 -0
  64. package/dist/scripts/13.chunk.js +361 -394
  65. package/dist/scripts/13.chunk.js.map +1 -1
  66. package/dist/scripts/14-3d60b8ee85.chunk.js +1 -0
  67. package/dist/scripts/14.chunk.js +793 -332
  68. package/dist/scripts/14.chunk.js.map +1 -1
  69. package/dist/scripts/15-90226fb996.chunk.js +1 -0
  70. package/dist/scripts/15.chunk.js +295 -214
  71. package/dist/scripts/15.chunk.js.map +1 -1
  72. package/dist/scripts/16-913b2535ea.chunk.js +1 -0
  73. package/dist/scripts/16.chunk.js +530 -434
  74. package/dist/scripts/16.chunk.js.map +1 -1
  75. package/dist/scripts/17-d6c19ccb60.chunk.js +1 -0
  76. package/dist/scripts/17.chunk.js +296 -170
  77. package/dist/scripts/17.chunk.js.map +1 -1
  78. package/dist/scripts/18-33efcac0c6.chunk.js +1 -0
  79. package/dist/scripts/18.chunk.js +265 -199
  80. package/dist/scripts/18.chunk.js.map +1 -1
  81. package/dist/scripts/19-2380200cfb.chunk.js +1 -0
  82. package/dist/scripts/19.chunk.js +7 -3
  83. package/dist/scripts/19.chunk.js.map +1 -1
  84. package/dist/scripts/2-53e37c2047.chunk.js +1 -0
  85. package/dist/scripts/2.chunk.js +18673 -622
  86. package/dist/scripts/2.chunk.js.map +1 -1
  87. package/dist/scripts/20-ca85f0514e.chunk.js +1 -0
  88. package/dist/scripts/20.chunk.js +1824 -221
  89. package/dist/scripts/20.chunk.js.map +1 -1
  90. package/dist/scripts/21-ef4a226771.chunk.js +1 -0
  91. package/dist/scripts/22-99c04e164f.chunk.js +1 -0
  92. package/dist/scripts/23-028eb81a43.chunk.js +1 -0
  93. package/dist/scripts/23.chunk.js +1 -1
  94. package/dist/scripts/23.chunk.js.map +1 -1
  95. package/dist/scripts/24-68f8df3eca.chunk.js +1 -0
  96. package/dist/scripts/24.chunk.js.map +1 -1
  97. package/dist/scripts/25-7ad07f87d4.chunk.js +1 -0
  98. package/dist/scripts/25.chunk.js.map +1 -1
  99. package/dist/scripts/26-f3dcacfe4f.chunk.js +1 -0
  100. package/dist/scripts/26.chunk.js +1 -1
  101. package/dist/scripts/26.chunk.js.map +1 -1
  102. package/dist/scripts/27-e844268f38.chunk.js +1 -0
  103. package/dist/scripts/28-853bc5de1f.chunk.js +1 -0
  104. package/dist/scripts/29-b164ecafe9.chunk.js +1 -0
  105. package/dist/scripts/29.chunk.js +435 -500
  106. package/dist/scripts/29.chunk.js.map +1 -1
  107. package/dist/scripts/3-a1bd8c9016.chunk.js +7 -0
  108. package/dist/scripts/3.chunk.js +625 -18676
  109. package/dist/scripts/3.chunk.js.map +1 -1
  110. package/dist/scripts/30-2cfcf52ea1.chunk.js +1 -0
  111. package/dist/scripts/30.chunk.js +634 -429
  112. package/dist/scripts/30.chunk.js.map +1 -1
  113. package/dist/scripts/31-e6a8291d2f.chunk.js +1 -0
  114. package/dist/scripts/31.chunk.js +371 -670
  115. package/dist/scripts/31.chunk.js.map +1 -1
  116. package/dist/scripts/32-7030dc98ed.chunk.js +1 -0
  117. package/dist/scripts/32.chunk.js +27 -54
  118. package/dist/scripts/32.chunk.js.map +1 -1
  119. package/dist/scripts/33-47b0ac90bd.chunk.js +1 -0
  120. package/dist/scripts/33.chunk.js +700 -312
  121. package/dist/scripts/33.chunk.js.map +1 -1
  122. package/dist/scripts/34-2de007b628.chunk.js +1 -0
  123. package/dist/scripts/34.chunk.js +3 -3
  124. package/dist/scripts/34.chunk.js.map +1 -1
  125. package/dist/scripts/35-d2fb66920b.chunk.js +1 -0
  126. package/dist/scripts/36-bc85df33de.chunk.js +1 -0
  127. package/dist/scripts/36.chunk.js.map +1 -1
  128. package/dist/scripts/37-e26652840b.chunk.js +1 -0
  129. package/dist/scripts/37.chunk.js +288 -464
  130. package/dist/scripts/37.chunk.js.map +1 -1
  131. package/dist/scripts/38-0b6a6b9619.chunk.js +1 -0
  132. package/dist/scripts/39-6549f483c6.chunk.js +1 -0
  133. package/dist/scripts/39.chunk.js +1 -1
  134. package/dist/scripts/39.chunk.js.map +1 -1
  135. package/dist/scripts/4-9e83a22d7a.chunk.js +1 -0
  136. package/dist/scripts/4.chunk.js +259 -1021
  137. package/dist/scripts/4.chunk.js.map +1 -1
  138. package/dist/scripts/40-8e6e9d285f.chunk.js +1 -0
  139. package/dist/scripts/41-2b44a2e66f.chunk.js +1 -0
  140. package/dist/scripts/42-9e75f420d8.chunk.js +1 -0
  141. package/dist/scripts/42.chunk.js.map +1 -1
  142. package/dist/scripts/43-1141245420.chunk.js +1 -0
  143. package/dist/scripts/44-9bc4201e0f.chunk.js +1 -0
  144. package/dist/scripts/45-5ded8ca3db.chunk.js +1 -0
  145. package/dist/scripts/46-2afd7ee1fb.chunk.js +1 -0
  146. package/dist/scripts/47-ab30686138.chunk.js +1 -0
  147. package/dist/scripts/48-d9cd99d55e.chunk.js +1 -0
  148. package/dist/scripts/49-f43a08f90b.chunk.js +1 -0
  149. package/dist/scripts/5-974660e17b.chunk.js +1 -0
  150. package/dist/scripts/5.chunk.js +1017 -259
  151. package/dist/scripts/5.chunk.js.map +1 -1
  152. package/dist/scripts/50-af699c531e.chunk.js +1 -0
  153. package/dist/scripts/51-aa7b835007.chunk.js +1 -0
  154. package/dist/scripts/52-805f7fe04d.chunk.js +1 -0
  155. package/dist/scripts/53-d75ca53045.chunk.js +1 -0
  156. package/dist/scripts/54-2e75bad46f.chunk.js +1 -0
  157. package/dist/scripts/55-ed637c4847.chunk.js +1 -0
  158. package/dist/scripts/55.chunk.js.map +1 -1
  159. package/dist/scripts/56-2ed3b5764b.chunk.js +1 -0
  160. package/dist/scripts/57-e51101c8a1.chunk.js +1 -0
  161. package/dist/scripts/58-9a32a6fb2d.chunk.js +1 -0
  162. package/dist/scripts/59-da8a8c97a9.chunk.js +1 -0
  163. package/dist/scripts/6-6ac39034e0.chunk.js +1 -0
  164. package/dist/scripts/6.chunk.js +291 -1250
  165. package/dist/scripts/6.chunk.js.map +1 -1
  166. package/dist/scripts/60-5713de53e2.chunk.js +1 -0
  167. package/dist/scripts/61-7d2ad17963.chunk.js +1 -0
  168. package/dist/scripts/62-a0a69501ac.chunk.js +1 -0
  169. package/dist/scripts/63-c921b87f3f.chunk.js +1 -0
  170. package/dist/scripts/64-87c1cf6985.chunk.js +1 -0
  171. package/dist/scripts/65-2322082836.chunk.js +1 -0
  172. package/dist/scripts/66-6d5356f6ce.chunk.js +1 -0
  173. package/dist/scripts/67-2e0d661c52.chunk.js +1 -0
  174. package/dist/scripts/7-5ac5be64dd.chunk.js +1 -0
  175. package/dist/scripts/7.chunk.js +1 -1
  176. package/dist/scripts/76.chunk.js +3 -3
  177. package/dist/scripts/76.chunk.js.map +1 -1
  178. package/dist/scripts/79.chunk.js +931 -347
  179. package/dist/scripts/79.chunk.js.map +1 -1
  180. package/dist/scripts/8-95563e3d36.chunk.js +1 -0
  181. package/dist/scripts/8.chunk.js +14 -920
  182. package/dist/scripts/8.chunk.js.map +1 -1
  183. package/dist/scripts/80.chunk.js +22 -313
  184. package/dist/scripts/80.chunk.js.map +1 -1
  185. package/dist/scripts/9.chunk.js +320 -17
  186. package/dist/scripts/9.chunk.js.map +1 -1
  187. package/dist/scripts/bundle-9ed1e126dd.min.js +15 -0
  188. package/dist/scripts/bundle.js +147 -121
  189. package/dist/scripts/bundle.js.map +1 -1
  190. package/dist/scripts/bundles.json +2 -2
  191. package/dist/scripts/pdf.worker.entry.worker.js +46239 -0
  192. package/dist/scripts/pdf.worker.entry.worker.js.map +1 -0
  193. package/dist/scripts/polyfills-2723daf478.min.js +1 -0
  194. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/forms/form-buttons/FormButtons.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/forms/form-checkbox/FormCheckbox.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/forms/form-field/CharacterCounter.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/forms/form-field/FormField.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/forms/form-wrapper/FormWrapper.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/hooks/UseCanSubmitForm.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/utils/FormHelper.ts"],"names":[],"mappings":"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","file":"scripts/5.chunk.js","sourcesContent":["import * as React from 'react';\r\nimport { useFormikContext } from 'formik';\r\nimport { ButtonProps } from 'react-bootstrap';\r\n\r\nimport { useCanSubmitForm } from 'libs/shared/hooks/UseCanSubmitForm';\r\nimport { SpinnerButton } from 'libs/shared/components/spinner-button/SpinnerButton';\r\nimport { Text } from 'libs/shared/components/text/Text';\r\n\r\nconst namespace = 'shared.formButtons';\r\n\r\nconst ENTER_KEY_CODE = 13;\r\n\r\ninterface FormButtonsProps {\r\n isNew: boolean;\r\n hasNext?: boolean;\r\n submitText?: string;\r\n variant?: ButtonProps['variant'];\r\n}\r\n\r\nexport function FormButtons<Values extends object>(props: FormButtonsProps): JSX.Element {\r\n const formikProps = useFormikContext<Values>();\r\n\r\n const canSubmit = useCanSubmitForm(formikProps);\r\n\r\n /**\r\n * This hook listens to \"Enter\" keypress events, and submits the form if there\r\n * are no errors. This prevents any edge cases where submitting doesn't work on\r\n * Enter normally, such as when a custom component is in focus.\r\n */\r\n React.useEffect(() => {\r\n function onKeyPress(e: KeyboardEvent): void {\r\n if (e.keyCode !== ENTER_KEY_CODE || !canSubmit)\r\n return;\r\n\r\n formikProps.validateForm().then(errors => {\r\n if (!Object.keys(errors).length)\r\n formikProps.submitForm();\r\n });\r\n }\r\n\r\n window.addEventListener('keypress', onKeyPress);\r\n return () => window.removeEventListener('keypress', onKeyPress);\r\n }, [canSubmit]);\r\n\r\n let phraseKey = 'save';\r\n if (props.isNew)\r\n phraseKey = 'create';\r\n if (props.hasNext)\r\n phraseKey = 'next';\r\n\r\n return (\r\n <SpinnerButton\r\n variant={props.variant || 'primary'}\r\n showSpinner={formikProps.isSubmitting}\r\n type='submit'\r\n disabled={!canSubmit}\r\n >\r\n {props.submitText\r\n ? <>{props.submitText}</>\r\n : <Text namespace={namespace} phrase={phraseKey} />\r\n }\r\n </SpinnerButton>\r\n );\r\n}","import * as React from 'react';\r\n\r\nimport { FieldAttributes } from 'formik';\r\nimport { Form } from 'react-bootstrap';\r\nimport { FieldWrapper, FormFieldProps } from '../form-field/FormField';\r\n\r\n/**\r\n * Use this checkbox within Formik contexts\r\n */\r\nexport function FormCheckbox<Values extends object>(props: FieldAttributes<FormFieldProps<Values>>): JSX.Element {\r\n const { label, ...fieldProps } = props;\r\n\r\n return (\r\n <Form.Group>\r\n <div className='custom-control custom-checkbox'>\r\n <FieldWrapper<Values> className='custom-control-input' {...fieldProps} />\r\n <Form.Label className='custom-control-label' htmlFor={fieldProps.id}>{label}</Form.Label>\r\n </div>\r\n </Form.Group>\r\n );\r\n}\r\n\r\n","import * as React from 'react';\r\nimport { useFormikContext } from 'formik';\r\n\r\ninterface CharacterCounterProps<Values extends object> {\r\n fieldName: keyof Values;\r\n limit: number;\r\n}\r\n\r\nexport function CharacterCounter<Values extends object>(props: CharacterCounterProps<Values>): JSX.Element {\r\n const { values } = useFormikContext<Values>();\r\n\r\n const field = values[props.fieldName];\r\n\r\n if (typeof field !== 'string')\r\n return <></>;\r\n\r\n return (\r\n <div className='float-right text-muted'>\r\n {field.length}/{props.limit}\r\n </div>\r\n );\r\n}","import * as React from 'react';\r\nimport { Field, FieldAttributes, useFormikContext, ErrorMessage, FieldProps } from 'formik';\r\nimport { Form } from 'react-bootstrap';\r\n\r\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\r\n\r\nimport { FormHelper } from 'libs/shared/utils/FormHelper';\r\n\r\nimport { CharacterCounter } from './CharacterCounter';\r\nimport { FormCheckbox } from '../form-checkbox/FormCheckbox';\r\n\r\nexport interface FormFieldProps<Values extends object> {\r\n /**\r\n * The name prop MUST be the same as the attribute\r\n * name of the value that the field is bound to.\r\n */\r\n name: string;\r\n label?: string;\r\n children?: ((props: FieldProps) => React.ReactNode) | React.ReactNode;\r\n showCharacterCounter?: boolean;\r\n}\r\n\r\nexport function FieldWrapper<Values extends object>(\r\n props: FieldAttributes<FormFieldProps<Values>> & { className: string }\r\n): React.ReactElement {\r\n const { children, ...fieldProps } = props;\r\n\r\n return (\r\n <Field {...fieldProps}>\r\n {FunctionHelper.isFunction(children)\r\n ? (f: FieldProps) => children(f)\r\n : React.Children.count(children) ? children : null\r\n }\r\n </Field>\r\n );\r\n}\r\n\r\nexport function FormField<Values extends object>(props: FieldAttributes<FormFieldProps<Values>>): React.ReactElement {\r\n const { label, className, showCharacterCounter, ...fieldProps } = props;\r\n\r\n const { errors, touched } = useFormikContext<Values>();\r\n\r\n if (fieldProps.type === 'checkbox')\r\n return <FormCheckbox<Values> {...props} />;\r\n\r\n return (\r\n <Form.Group>\r\n {!!label && <Form.Label htmlFor={fieldProps.id}>{label}</Form.Label>}\r\n <FieldWrapper<Values>\r\n className={FormHelper.getCustomFormControlClassName(errors, touched, fieldProps.name, className)}\r\n {...fieldProps}\r\n />\r\n {!!showCharacterCounter && !!(fieldProps as React.HTMLProps<HTMLInputElement>).maxLength &&\r\n <CharacterCounter\r\n fieldName={(fieldProps.name as keyof Values)}\r\n limit={(fieldProps as React.HTMLProps<HTMLInputElement>).maxLength}\r\n />\r\n }\r\n <ErrorMessage name={fieldProps.name}>\r\n {(errorMessage: string) => <Form.Control.Feedback type='invalid'>{errorMessage}</Form.Control.Feedback>}\r\n </ErrorMessage>\r\n </Form.Group>\r\n );\r\n}","import * as React from 'react';\r\nimport { Formik, FormikValues, FormikConfig, FormikProps, FormikHelpers, useFormikContext, FormikContextType } from 'formik';\r\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\r\nimport { ObjectHelper } from 'libs/common/react/utils/ObjectHelper';\r\n\r\nfunction omitNullInitialValues<Values extends FormikValues>(initialValues: Values): Values {\r\n const values = ObjectHelper.deepClone(initialValues);\r\n\r\n Object.keys(values).forEach((key: keyof Values) => {\r\n if (!values.hasOwnProperty(key))\r\n return;\r\n\r\n if (ObjectHelper.isObject(values[key]))\r\n values[key] = omitNullInitialValues(values[key]);\r\n else if (values[key] === null)\r\n delete values[key];\r\n });\r\n\r\n return values;\r\n}\r\n\r\n// Omit attributes from FormikConfig that are defined in FormWrapperProps.\r\ntype ModifiedFormikConfig<Values extends FormikValues> = Omit<FormikConfig<Values>, 'initialValues' | 'onSubmit'>;\r\n\r\ninterface InitialStatus {\r\n allowInitialSubmit: boolean;\r\n}\r\n\r\ninterface FormWrapperProps<FormValues extends FormikValues, ApiValues extends FormikValues> {\r\n initialValues: FormValues | ApiValues;\r\n onSubmit: (data: FormValues, onDone: () => void) => void;\r\n castInitialValues?: boolean; // cast to validationSchema\r\n castValuesOnSubmit?: boolean; // cast to validationSchema\r\n allowInitialSubmit?: boolean; // if true, useCanSubmitForm will allow submit without any user changes.\r\n resetOnSubmit?: boolean;\r\n}\r\n\r\nFormWrapper.defaultProps = {\r\n castInitialValues: true,\r\n castValuesOnSubmit: true\r\n};\r\n\r\nexport function FormWrapper<\r\n FormValues extends FormikValues = FormikValues,\r\n ApiValues extends FormikValues = FormikValues,\r\n ExtraProps = {}\r\n>(props: ModifiedFormikConfig<FormValues> & ExtraProps & FormWrapperProps<FormValues, ApiValues>): JSX.Element {\r\n const { castInitialValues, castValuesOnSubmit, initialValues, onSubmit, resetOnSubmit, ...formikProps } = props;\r\n\r\n /**\r\n * If castInitialValues is true, cast initialValues to the validationSchema.\r\n * This will ensure that any data fetched from the api conforms to the expected form data shape.\r\n */\r\n const formattedInitialValues: FormValues = castInitialValues && props.validationSchema\r\n ? props.validationSchema.cast(omitNullInitialValues(initialValues))\r\n : initialValues;\r\n\r\n const onSubmitHandler = (\r\n values: FormValues,\r\n { setSubmitting, resetForm }: FormikHelpers<FormValues>\r\n ) => {\r\n /**\r\n * validationSchema.cast will coerce the values to the types defined in validationSchema.\r\n * This is useful for trimming inputs:\r\n * e.g. if a value field has type Yup.string().trim(), it will be automatically trimmed.\r\n */\r\n const formattedData = castValuesOnSubmit && props.validationSchema\r\n ? props.validationSchema.cast(values)\r\n : values;\r\n\r\n onSubmit(formattedData, () => {\r\n resetOnSubmit && resetForm();\r\n setSubmitting(false);\r\n });\r\n };\r\n\r\n const initialStatus: InitialStatus = {\r\n allowInitialSubmit: props.allowInitialSubmit\r\n };\r\n\r\n return (\r\n <Formik<FormValues, ExtraProps>\r\n enableReinitialize\r\n {...(formikProps as ModifiedFormikConfig<FormValues> & ExtraProps)}\r\n initialValues={formattedInitialValues}\r\n onSubmit={onSubmitHandler}\r\n initialStatus={initialStatus}\r\n >\r\n {FunctionHelper.isFunction(props.children)\r\n ? (f: FormikProps<FormValues>) => (props.children as (f: FormikProps<FormValues>) => React.ReactNode)(f)\r\n : React.Children.count(props.children) ? props.children : null\r\n }\r\n </Formik>\r\n );\r\n}\r\n\r\nexport function useFormikContextWrapper<T>(): FormikContextType<T> {\r\n return useFormikContext<T>();\r\n}","import * as React from 'react';\r\nimport { FormikValues, FormikProps } from 'formik';\r\n\r\n/**\r\n * useCanSubmitForm determines if a form can be submitted.\r\n * \r\n * It will return true if a form is valid and has been changed from it's initial state.\r\n * \r\n * A common use case for this is determining whether or not to enable\r\n * a submit button in a form.\r\n */\r\nexport function useCanSubmitForm<Values extends FormikValues>(formikProps: FormikProps<Values>): boolean {\r\n const [ canSubmit, setCanSubmit ] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n if (!formikProps.isValid) {\r\n setCanSubmit(false);\r\n return;\r\n }\r\n\r\n // If the form values have changed of if allowInitialSubmit is true, set canSubmit to true.\r\n if (formikProps.dirty || formikProps.initialStatus?.allowInitialSubmit)\r\n setCanSubmit(true);\r\n else\r\n setCanSubmit(false);\r\n\r\n }, [ formikProps.isValid, formikProps.initialStatus?.allowInitialSubmit, formikProps.dirty, formikProps.values ]);\r\n\r\n React.useEffect(() => {\r\n if (formikProps.isSubmitting)\r\n setCanSubmit(false);\r\n }, [formikProps.isSubmitting]);\r\n\r\n return canSubmit;\r\n}\r\n","import { FormikErrors, FormikTouched, getIn } from 'formik';\r\n\r\nexport const FormHelper = {\r\n getCustomFormControlClassName<T>(\r\n errors: FormikErrors<T>,\r\n touched: FormikTouched<T>,\r\n attribute: string,\r\n additionalClassName?: string\r\n ): string {\r\n let className = 'form-control';\r\n\r\n // Using getIn as it supports dot notation\r\n if (getIn(touched, attribute) && getIn(errors, attribute))\r\n className += ' is-invalid';\r\n\r\n if (additionalClassName)\r\n className += ` ${additionalClassName}`;\r\n\r\n return className;\r\n }\r\n};"],"sourceRoot":""}
1
+ {"version":3,"sources":["file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/FixedWidget.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/FixedWidgetReducer.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/FixedWidgetUtils.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/PartialFixedWidget.tsx","webpack://@clickview/lite/C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/fixed-widget/fixed-widget.scss?5b34","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/sliding-list/SlidingListContainer.tsx","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/widget-button/WidgetButton.tsx","webpack://@clickview/lite/C:/ClickView Projects/@clickview/packages/libs/shared/src/components/widgets/widget-button/widget-button.scss?ef43","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/enums/CssMeasurement.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/enums/WidgetContents.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/enums/WidgetInteraction.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/hooks/UseHover.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/utils/DragHelper.ts","file://C:/ClickView Projects/@clickview/packages/libs/shared/src/utils/WidgetHelper.ts"],"names":[],"mappings":"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","file":"scripts/5.chunk.js","sourcesContent":["import * as React from 'react';\r\n\r\nimport { Core } from 'libs/common/core';\r\nimport { Flight } from 'libs/common/flight';\r\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\r\n\r\nimport { CssMeasurement } from 'libs/shared/enums/CssMeasurement';\r\nimport { WidgetButton, WidgetButtonDirection } from 'libs/shared/components/widgets/widget-button/WidgetButton';\r\nimport { SlidingListContainer } from 'libs/shared/components/widgets/sliding-list/SlidingListContainer';\r\nimport { useGetMediaQueryString } from 'libs/shared/hooks/UseGetMediaQueryString';\r\nimport { useHover } from 'libs/shared/hooks/UseHover';\r\nimport { WidgetType, WidgetContext } from 'libs/shared/interfaces';\r\nimport { WidgetInteraction } from 'libs/shared/enums/WidgetInteraction';\r\nimport { WidgetContents } from 'libs/shared/enums/WidgetContents';\r\nimport { useLazyLoad } from 'libs/shared/hooks/UseLazyLoad';\r\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\r\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\r\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { ThumbnailSize } from 'libs/shared/enums/ThumbnailSize';\r\nimport { WidgetHelper } from 'libs/shared/utils/WidgetHelper';\r\n\r\nimport { AnalyticsOptions, HashObject } from 'libs/analytics/interfaces';\r\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\r\n\r\nimport { PartialFixedWidget } from './PartialFixedWidget';\r\nimport { useFetchData, formatData, getCollectionAppLink, getShouldPreload, getOnTouchStart, getOnTouchEnd } from './FixedWidgetUtils';\r\nimport { FixedWidgetReducer, initialWidgetState, lazyWidgetInit } from './FixedWidgetReducer';\r\n\r\nimport styles from './fixed-widget.scss';\r\n\r\nconst namespace = 'shared.fixedWidget';\r\n\r\nexport interface FixedWidgetProps {\r\n id?: string;\r\n name?: string;\r\n description?: string;\r\n\r\n type: WidgetType;\r\n contents: WidgetContents;\r\n thumbnailSize?: ThumbnailSize;\r\n paddingSize?: '3' | '4';\r\n\r\n collection?: any;\r\n lazyLoad?: boolean;\r\n fetch?: (...args: any) => Flight.Response<any>;\r\n prefetched?: boolean;\r\n setData?: (data: any) => any;\r\n minimumItemCount?: number;\r\n\r\n childComponent: React.ElementType;\r\n childAppLink?: Core.AppLink;\r\n appLink?: Core.AppLink;\r\n settingsAppLink?: Core.AppLink;\r\n\r\n analyticsData?: HashObject;\r\n analyticsOptions?: AnalyticsOptions;\r\n}\r\n\r\nFixedWidget.defaultProps = {\r\n type: WidgetType.Row,\r\n minimumItemCount: 0,\r\n paddingSize: '3'\r\n};\r\n\r\nfunction FixedWidget(props: FixedWidgetProps): JSX.Element {\r\n let { type: widgetType, analyticsData = {} } = props;\r\n\r\n // Map deprecated resources tile widget type to row type\r\n if (widgetType === WidgetType.ResourcesTile)\r\n widgetType = WidgetType.Row;\r\n\r\n const [ initialTouchX, setInitialTouchX ] = React.useState(null);\r\n const [ containerWidth, setContainerWidth ] = React.useState(null);\r\n const [ percentageDragged, setPercentageDragged ] = React.useState(0);\r\n\r\n const [ state, dispatch ] = React.useReducer(FixedWidgetReducer, initialWidgetState, lazyWidgetInit);\r\n\r\n const containerRef = React.useRef(null);\r\n const [ buttonsRef, isHovering ] = useHover<HTMLDivElement>();\r\n\r\n const [ isHoveringOnFarLeft, setIsHoveringOnFarLeft ] = React.useState(false);\r\n const [ isHoveringOnFarRight, setIsHoveringOnFarRight ] = React.useState(false);\r\n\r\n const { ref, inView: shouldFetch } = useLazyLoad(!props.lazyLoad);\r\n const mediaQuery = useGetMediaQueryString();\r\n\r\n React.useEffect(() => {\r\n dispatch({\r\n type: WidgetInteraction.Resize,\r\n payload: {\r\n mediaQuery,\r\n type: widgetType,\r\n contents: props.contents,\r\n collection: state.collection\r\n }\r\n });\r\n }, [mediaQuery]);\r\n\r\n React.useEffect(() => {\r\n if (!props.prefetched)\r\n return;\r\n\r\n // If the collection changes, re-initialize the widget state.\r\n dispatch({\r\n type: WidgetInteraction.Init,\r\n payload: {\r\n mediaQuery,\r\n type: widgetType,\r\n contents: props.contents,\r\n collection: props.collection\r\n }\r\n });\r\n }, [ props.collection, props.prefetched ]);\r\n\r\n const response = useFetchData(props, dispatch, mediaQuery, shouldFetch);\r\n\r\n function onSetIsHovering(hovering: boolean, index: number): void {\r\n if (state.collection.length === state.viewableItems) {\r\n setIsHoveringOnFarLeft(hovering);\r\n setIsHoveringOnFarRight(hovering);\r\n return;\r\n }\r\n\r\n // This callback will hide the far left button if the user is hovering on the far left widget item.\r\n // Same goes for the far right button & widget item.\r\n if (index + 1 === state.collection.length) {\r\n setIsHoveringOnFarRight(hovering);\r\n return;\r\n }\r\n\r\n if (index === 0) {\r\n setIsHoveringOnFarLeft(hovering);\r\n return;\r\n }\r\n\r\n if ((index + 1 - (state.offset % state.viewableItems)) % state.viewableItems === 0) {\r\n setIsHoveringOnFarRight(hovering);\r\n return;\r\n }\r\n\r\n if ((index - (state.offset % state.viewableItems)) % state.viewableItems === 0) {\r\n setIsHoveringOnFarLeft(hovering);\r\n return;\r\n }\r\n }\r\n\r\n const widgetContext: WidgetContext = {\r\n type: state.type,\r\n size: state.currentSize,\r\n collectionSize: state.collection.length,\r\n contents: props.contents\r\n };\r\n\r\n const data = formatData(props, response?.data || props.collection);\r\n\r\n if (response?.hasError)\r\n return <></>;\r\n\r\n if (!props.prefetched && !response?.statusCode) {\r\n return (\r\n <div ref={ref}>\r\n <PartialFixedWidget type={widgetType} />\r\n </div>\r\n );\r\n }\r\n\r\n if (!state.collection.length || state.collection.length < props.minimumItemCount)\r\n return <></>;\r\n\r\n const WidgetItemComponent = props.childComponent;\r\n\r\n const getSliderAnalyticsData = (type: WidgetInteraction) => ({\r\n id: data?.id,\r\n name: data?.name,\r\n direction: type === WidgetInteraction.Next ? 'right' : 'left',\r\n ...props.analyticsData\r\n });\r\n\r\n\r\n return (\r\n <div className={`pb-3 px-${props.paddingSize} mx-n${props.paddingSize} overflow-hidden-x`}>\r\n <div className='mb-1'>\r\n <AppLink\r\n appLink={getCollectionAppLink(props.appLink, data)}\r\n analyticsData={{ id: data?.id, name: data?.name, ...props.analyticsData }}\r\n analyticsOptions={WidgetHelper.getSliderHeadingAnalyticsOptions()}>\r\n <h2 className={`${styles.heading} ${ props.appLink ? styles.link : ''} h4 mb-0 d-inline-block align-top pl-1`}>\r\n {data.name}\r\n {!!props.appLink && (\r\n <SvgContainer svgName={cvSvgLibrary.ChevronRight} size={SvgContainerSize.Small} />\r\n )}\r\n </h2>\r\n {props.settingsAppLink &&\r\n <AppLink appLink={props.settingsAppLink}>\r\n <SvgContainer\r\n svgName={cvSvgLibrary.Cog}\r\n className='d-inline-block svg-container cursor-pointer'\r\n title={LanguageService.getPhrase(namespace, 'preferencesTooltip')}\r\n tooltipPlacement='right'\r\n />\r\n </AppLink>\r\n }\r\n </AppLink>\r\n\r\n {data.description &&\r\n <p className='text-truncate pl-1 mb-0 description'>{data.description}</p>\r\n }\r\n </div>\r\n\r\n <div ref={buttonsRef} className='position-relative'>\r\n {!isHoveringOnFarLeft && <div className={styles.leftOverflowGradient} />}\r\n <WidgetButton\r\n direction={WidgetButtonDirection.Left}\r\n onClick={() => {\r\n dispatch({ type: WidgetInteraction.Previous });\r\n AnalyticsHelper.logUserAction(\r\n getSliderAnalyticsData(WidgetInteraction.Previous),\r\n WidgetHelper.getSliderAnalyticsOptions());\r\n }}\r\n hide={isHoveringOnFarLeft || (\r\n state.offset <= state.collection.length && !(isHovering && state.offset !== state.viewableItems)\r\n )}\r\n contents={props.contents}\r\n />\r\n\r\n <SlidingListContainer\r\n position={state.position}\r\n positionType={CssMeasurement.Percentage}\r\n onTouchMove={getOnTouchStart(\r\n state,\r\n containerRef,\r\n containerWidth,\r\n setContainerWidth,\r\n initialTouchX,\r\n setInitialTouchX,\r\n setPercentageDragged\r\n )}\r\n onTouchEnd={getOnTouchEnd(\r\n containerRef,\r\n setInitialTouchX,\r\n percentageDragged,\r\n setPercentageDragged,\r\n dispatch\r\n )}\r\n ref={containerRef}\r\n percentageDragged={percentageDragged}\r\n >\r\n {state.collection.map((widgetItem, index) => {\r\n return (\r\n <WidgetItemComponent\r\n key={widgetItem.id}\r\n data={widgetItem}\r\n appLink={props.childAppLink}\r\n context={widgetContext}\r\n preloadImage={getShouldPreload(state)(widgetItem)}\r\n thumbnailSize={props.thumbnailSize || ThumbnailSize.Medium}\r\n analyticsData={{\r\n widgetId: data.id,\r\n widgetName: data.name,\r\n itemIndex: index,\r\n ...analyticsData\r\n }}\r\n analyticsOptions={{ ...props?.analyticsOptions, ...WidgetHelper.getSliderItemAnalyticsOptions() }}\r\n onHover={(hovering: boolean) => {\r\n /**\r\n * For some reason this needs to be called after a set timeout, otherwise\r\n * the `useHover` listener on the `buttonsRef` element will not detect it's hover\r\n * event. A delay of 200ms is used for when `hovering` is false so that the effects of\r\n * setting `isHoveringOnFarX` aren't applied until the CSS transform transition has\r\n * completed.\r\n */\r\n window.setTimeout(() => {\r\n onSetIsHovering(hovering, index);\r\n }, hovering ? 0 : 200);\r\n }}\r\n />\r\n );\r\n })}\r\n </SlidingListContainer>\r\n\r\n <WidgetButton\r\n direction={WidgetButtonDirection.Right}\r\n onClick={() => {\r\n dispatch({ type: WidgetInteraction.Next });\r\n AnalyticsHelper.logUserAction(\r\n getSliderAnalyticsData(WidgetInteraction.Next),\r\n WidgetHelper.getSliderAnalyticsOptions());\r\n }}\r\n hide={\r\n isHoveringOnFarRight || (\r\n (state.offset > state.viewableItems || state.offset === state.collection.length) &&\r\n !(isHovering && state.offset < state.collection.length)\r\n )\r\n }\r\n contents={props.contents}\r\n />\r\n {!isHoveringOnFarRight && <div className={styles.rightOverflowGradient} />}\r\n </div>\r\n </div>\r\n );\r\n}\r\n\r\nconst Memoized = React.memo(FixedWidget);\r\n\r\nexport { Memoized as FixedWidget };","import { ReducerActions } from 'libs/common/react/interfaces';\r\n\r\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\nimport { WidgetContents } from 'libs/shared/enums/WidgetContents';\r\nimport { WidgetInteraction } from 'libs/shared/enums/WidgetInteraction';\r\nimport { WidgetType } from 'libs/shared/interfaces';\r\n\r\nimport { getComputeFunction } from './FixedWidgetUtils';\r\n\r\nexport interface FixedWidgetPayload {\r\n mediaQuery?: MediaQueryStrings;\r\n contents?: WidgetContents;\r\n type?: WidgetType;\r\n collection?: any[];\r\n}\r\n\r\nexport interface FixedWidgetState {\r\n // Current position within the widget collection\r\n offset: number;\r\n // Number of items viewable in slider for the current breakpoint/viewport size\r\n viewableItems: number;\r\n // Relative position of slider in the window. Used for an inline translate3d().\r\n position: number;\r\n // Collection of widget items\r\n collection: any[];\r\n // String representation of the current media query\r\n currentSize: MediaQueryStrings;\r\n // Type of widget being managed. May change on `Resize`.\r\n type: WidgetType;\r\n}\r\n\r\nexport const initialWidgetState: FixedWidgetState = {\r\n offset: 0,\r\n viewableItems: 4,\r\n position: 0,\r\n collection: [],\r\n currentSize: MediaQueryStrings.LG,\r\n type: WidgetType.Row\r\n};\r\n\r\nconst computeNextPosition = (prevState: FixedWidgetState): object => {\r\n const { collection, viewableItems, offset, position } = prevState;\r\n\r\n const remainingCount = collection.length - offset;\r\n\r\n /**\r\n * If the remaining items are evening divisible by the items in view, or,\r\n * we have more items that can be displayed in the view, move the slider a full 100%.\r\n */\r\n if (remainingCount % viewableItems === 0 || remainingCount > viewableItems)\r\n return {\r\n position: position - 100,\r\n offset: offset + viewableItems\r\n };\r\n\r\n /**\r\n * Where there are less items than we can show in a full slide, \r\n * calculate the % movement required to only show those items.\r\n */\r\n if (remainingCount < viewableItems)\r\n return {\r\n position: position - (remainingCount / viewableItems * 100),\r\n offset: offset + remainingCount\r\n };\r\n\r\n /**\r\n * Default back to the current state as a fallback\r\n */\r\n return {\r\n position: position,\r\n offset: offset\r\n };\r\n};\r\n\r\nconst computePreviousPosition = (prevState: FixedWidgetState): object => {\r\n const { viewableItems, offset, position } = prevState;\r\n\r\n const remainingCount = offset - viewableItems;\r\n\r\n if (remainingCount % viewableItems === 0 || remainingCount > viewableItems)\r\n return {\r\n position: position + 100,\r\n offset: offset - viewableItems\r\n };\r\n\r\n if (remainingCount < viewableItems)\r\n return {\r\n position: position + (remainingCount / viewableItems * 100),\r\n offset: offset - remainingCount\r\n };\r\n\r\n return {\r\n position: position,\r\n offset: offset\r\n };\r\n};\r\n\r\nexport function FixedWidgetReducer(\r\n prevState: FixedWidgetState,\r\n action: ReducerActions<WidgetInteraction, FixedWidgetPayload>\r\n): FixedWidgetState {\r\n const { type, payload = {} } = action;\r\n\r\n switch (type) {\r\n case WidgetInteraction.Next: {\r\n return {\r\n ...prevState,\r\n ...computeNextPosition(prevState)\r\n };\r\n }\r\n\r\n case WidgetInteraction.Previous: {\r\n return {\r\n ...prevState,\r\n ...computePreviousPosition(prevState)\r\n };\r\n }\r\n\r\n case WidgetInteraction.Resize: {\r\n const computeViewableItems = getComputeFunction(payload.contents);\r\n const initialSeen = computeViewableItems(payload.mediaQuery, payload.type, payload.collection?.length);\r\n\r\n return {\r\n ...prevState,\r\n currentSize: payload.mediaQuery,\r\n position: 0,\r\n offset: initialSeen,\r\n viewableItems: initialSeen,\r\n type: payload.type\r\n };\r\n }\r\n\r\n case WidgetInteraction.Init: {\r\n const computeViewableItems = getComputeFunction(payload.contents);\r\n const initialSeen = computeViewableItems(payload.mediaQuery, payload.type, payload.collection?.length);\r\n\r\n return lazyWidgetInit({\r\n ...prevState,\r\n collection: payload.collection,\r\n currentSize: payload.mediaQuery,\r\n offset: initialSeen,\r\n viewableItems: initialSeen,\r\n type: payload.type\r\n });\r\n }\r\n\r\n default:\r\n return prevState;\r\n }\r\n}\r\n\r\nexport function lazyWidgetInit(newState: FixedWidgetState): FixedWidgetState {\r\n return { ...initialWidgetState, ...newState };\r\n}","import * as React from 'react';\r\n\r\nimport { Flight } from 'libs/common/flight';\r\nimport { Core } from 'libs/common/core';\r\nimport { ObjectHelper } from 'libs/common/react/utils/ObjectHelper';\r\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\r\nimport { TextHelper } from 'libs/common/react/utils/TextHelper';\r\nimport { ReducerActions } from 'libs/common/react/interfaces';\r\n\r\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\nimport { WidgetInteraction } from 'libs/shared/enums/WidgetInteraction';\r\nimport { WidgetContents } from 'libs/shared/enums/WidgetContents';\r\nimport { BaseObject, WidgetType } from 'libs/shared/interfaces';\r\n\r\nimport { FixedWidgetProps } from './FixedWidget';\r\nimport { FixedWidgetState, FixedWidgetPayload } from './FixedWidgetReducer';\r\n\r\nexport interface WidgetData {\r\n id?: string;\r\n name?: string;\r\n description?: string;\r\n}\r\n\r\nexport function useFetchData(\r\n props: FixedWidgetProps,\r\n dispatch: Function,\r\n mediaQueryType: MediaQueryStrings,\r\n shouldFetch: boolean\r\n): Flight.Response<any> {\r\n const { fetch, setData, type, collection: items, prefetched, contents } = props;\r\n\r\n let data = items;\r\n let res: Flight.Response<any>;\r\n\r\n if (!data || ObjectHelper.isEmpty(data) && !prefetched) {\r\n res = fetch(shouldFetch);\r\n data = res.data;\r\n }\r\n\r\n /**\r\n * Once we have the widget data, lazily update our state with the new collection\r\n */\r\n React.useEffect(() => {\r\n if (!data || ObjectHelper.isEmpty(data))\r\n return;\r\n\r\n dispatch({\r\n type: WidgetInteraction.Init,\r\n payload: {\r\n collection: FunctionHelper.isFunction(setData) ? setData(data) : data,\r\n mediaQuery: mediaQueryType,\r\n type,\r\n contents\r\n }\r\n });\r\n\r\n }, [data]);\r\n\r\n return res;\r\n}\r\n\r\n/**\r\n * This function wrapper determines which widget item images should be pre-fetched by the LazyImage component.\r\n * It does this by looking at which images are going to be shown after the users clicks on the \"Next\"\r\n * widget button.\r\n */\r\nexport function getShouldPreload(state: FixedWidgetState): (widgetItem: any) => boolean {\r\n const { offset, viewableItems, collection } = state;\r\n\r\n // The index of the latest item that has been fetched\r\n const maxLoadedIndex = offset;\r\n\r\n /**\r\n * The indicesToPreload is an array of indices of widget items that should be prefetched by the\r\n * LazyImage component\r\n */\r\n const indicesToPreload: number[] = [];\r\n for (let i = 0; i < maxLoadedIndex + viewableItems; i++) {\r\n indicesToPreload.push(i);\r\n }\r\n\r\n /**\r\n * A widget item calls this function to determine whether or not its image can be pre-fetched.\r\n * This is determined by whether or not its index has been deemed valid to be pre-fetched\r\n * by the scope above\r\n */\r\n return function shouldPreload(widgetItem: any): boolean {\r\n const index = collection.indexOf(widgetItem);\r\n\r\n return indicesToPreload.includes(index);\r\n };\r\n}\r\n\r\nexport function getCollectionAppLink(appLink: Core.AppLink, data: WidgetData): Core.AppLink {\r\n if (!appLink)\r\n return;\r\n\r\n return {\r\n ...appLink,\r\n args: appLink.args || [ data.id, TextHelper.slugify(data.name) ]\r\n };\r\n}\r\n\r\n/**\r\n * Allow explicit name and description props to override the fetched\r\n * data properties.\r\n * \r\n * @param props \r\n * @param data \r\n */\r\nexport function formatData(props: FixedWidgetProps, data: BaseObject): WidgetData {\r\n const { name, description } = props;\r\n\r\n const overrideProps: WidgetData = {};\r\n\r\n if (Array.isArray(data))\r\n return { name, description };\r\n\r\n if (props.name) overrideProps.name = name;\r\n if (props.description) overrideProps.description = description;\r\n\r\n return { ...data, ...overrideProps };\r\n}\r\n\r\n/**\r\n * The functions below are used by the reducer to compute the number of widget items\r\n * displayed on the screen based on the media query, widget type, and total number of items.\r\n */\r\ntype ComputeFunction = (mediaQuery: MediaQueryStrings, type: WidgetType, itemCount: number) => number;\r\n\r\nexport function getComputeFunction(contents: WidgetContents): ComputeFunction {\r\n switch (contents) {\r\n case WidgetContents.Playlists:\r\n return computeViewablePlaylists;\r\n\r\n case WidgetContents.Videos:\r\n return computeViewableVideos;\r\n\r\n case WidgetContents.Subjects:\r\n return computeViewableSubjects;\r\n\r\n case WidgetContents.UserChannels:\r\n return computeViewableUserChannels;\r\n\r\n case WidgetContents.Interactives:\r\n return computeViewableInteractives;\r\n\r\n case WidgetContents.Clips:\r\n return computeViewableClips;\r\n\r\n case WidgetContents.Series:\r\n default:\r\n return computeViewableSeries;\r\n }\r\n}\r\n\r\nfunction computeViewablePlaylists(mediaQuery: MediaQueryStrings, type: WidgetType, itemCount: number): number {\r\n let maxItems: number = 5;\r\n\r\n if (mediaQuery === MediaQueryStrings.XS)\r\n maxItems = 2;\r\n else if (mediaQuery === MediaQueryStrings.SM)\r\n maxItems = 3;\r\n else if (mediaQuery === MediaQueryStrings.MD)\r\n maxItems = 4;\r\n\r\n if (itemCount < maxItems)\r\n maxItems = itemCount;\r\n\r\n return maxItems;\r\n}\r\n\r\nfunction computeViewableVideos(mediaQuery: MediaQueryStrings, type: WidgetType, itemCount: number): number {\r\n let maxItems: number = 4;\r\n\r\n if (mediaQuery === MediaQueryStrings.XS)\r\n maxItems = 2;\r\n else if (mediaQuery === MediaQueryStrings.SM)\r\n maxItems = 3;\r\n else if (mediaQuery === MediaQueryStrings.MD)\r\n maxItems = 4;\r\n else if (\r\n mediaQuery === MediaQueryStrings.LG\r\n || mediaQuery === MediaQueryStrings.XL\r\n || mediaQuery === MediaQueryStrings.XXL\r\n ) {\r\n if (type === WidgetType.LargeRow)\r\n maxItems = 3;\r\n\r\n else if (itemCount < 4)\r\n maxItems = 3;\r\n\r\n else\r\n maxItems = 4;\r\n }\r\n\r\n if (itemCount < maxItems)\r\n maxItems = itemCount;\r\n\r\n return maxItems;\r\n}\r\n\r\nfunction computeViewableSubjects(mediaQuery: MediaQueryStrings, type: WidgetType, itemCount: number): number {\r\n let maxItems: number = 6;\r\n\r\n if (mediaQuery === MediaQueryStrings.SM || mediaQuery === MediaQueryStrings.XS)\r\n maxItems = 3;\r\n else if (mediaQuery === MediaQueryStrings.MD)\r\n maxItems = 4;\r\n else if (mediaQuery === MediaQueryStrings.LG)\r\n maxItems = 5;\r\n else if (mediaQuery === MediaQueryStrings.XL || mediaQuery === MediaQueryStrings.XXL)\r\n maxItems = 6;\r\n\r\n if (itemCount < maxItems)\r\n maxItems = itemCount;\r\n\r\n return maxItems;\r\n}\r\n\r\nfunction computeViewableUserChannels(mediaQuery: MediaQueryStrings, type: WidgetType, itemCount: number): number {\r\n let maxItems: number = 6;\r\n\r\n if (mediaQuery === MediaQueryStrings.XS)\r\n maxItems = 2;\r\n else if (mediaQuery === MediaQueryStrings.SM)\r\n maxItems = 3;\r\n else if (mediaQuery === MediaQueryStrings.MD)\r\n maxItems = 4;\r\n else if (mediaQuery === MediaQueryStrings.LG)\r\n maxItems = 5;\r\n else if (mediaQuery === MediaQueryStrings.XL || mediaQuery === MediaQueryStrings.XXL)\r\n maxItems = 6;\r\n\r\n if (itemCount < maxItems)\r\n maxItems = itemCount;\r\n\r\n return maxItems;\r\n}\r\n\r\nfunction computeViewableInteractives(mediaQuery: MediaQueryStrings, type: WidgetType, itemCount: number): number {\r\n let maxItems: number = 3;\r\n\r\n if (mediaQuery === MediaQueryStrings.MD || mediaQuery === MediaQueryStrings.SM)\r\n maxItems = 2;\r\n\r\n if (mediaQuery === MediaQueryStrings.XS)\r\n maxItems = 1;\r\n\r\n if (itemCount < Math.ceil(maxItems))\r\n maxItems = itemCount;\r\n\r\n return maxItems;\r\n}\r\n\r\nfunction computeViewableClips(mediaQuery: MediaQueryStrings, type: WidgetType, itemCount: number): number {\r\n let maxItems: number = 3;\r\n\r\n if (mediaQuery === MediaQueryStrings.MD || mediaQuery === MediaQueryStrings.SM)\r\n maxItems = 2;\r\n\r\n if (mediaQuery === MediaQueryStrings.XS)\r\n maxItems = 1;\r\n\r\n if (itemCount < Math.ceil(maxItems))\r\n maxItems = itemCount;\r\n\r\n return maxItems;\r\n}\r\n\r\nfunction computeViewableSeries(mediaQuery: MediaQueryStrings, type: WidgetType, itemCount: number): number {\r\n let maxItems: number = 4;\r\n\r\n if (mediaQuery === MediaQueryStrings.XS)\r\n maxItems = 2;\r\n else if (mediaQuery === MediaQueryStrings.SM)\r\n maxItems = 3;\r\n\r\n if (itemCount < maxItems)\r\n maxItems = itemCount;\r\n\r\n return maxItems;\r\n}\r\n\r\n/**\r\n * Touch event handlers\r\n */\r\nexport function getOnTouchStart(\r\n widgetState: FixedWidgetState,\r\n containerRef: React.MutableRefObject<HTMLDivElement>,\r\n containerWidth: number,\r\n setContainerWidth: React.Dispatch<number>,\r\n initialTouchX: number,\r\n setInitialTouchX: React.Dispatch<number>,\r\n setPercentageDragged: React.Dispatch<number>\r\n): (event: React.TouchEvent<HTMLDivElement>) => void {\r\n return function(event: React.TouchEvent<HTMLDivElement>): void {\r\n const firstTouch = event.touches.item(0);\r\n const touchX = firstTouch.clientX;\r\n\r\n /**\r\n * Runs only on the very first touch event.\r\n * \r\n * Sets the initial x-coordinate as a reference point to calculate how far the user has dragged before\r\n * they release their finder\r\n */\r\n if (!initialTouchX) {\r\n containerRef.current.style.transition = '';\r\n\r\n setContainerWidth(containerRef.current.getBoundingClientRect().width);\r\n setInitialTouchX(touchX);\r\n }\r\n\r\n const pixelsDragged = initialTouchX - touchX;\r\n\r\n // Calculate how far the user has moved their finger as a percentage of the widget's container element\r\n let currentPercentageDragged = ((pixelsDragged / containerWidth) * 100);\r\n\r\n /**\r\n * These 2 if statements prevent the user from dragging the widget beyond its limits.\r\n * One if statement handles if they have dragged to the left, and the other is for dragging to the right.\r\n * \r\n * The same logic is used to hide the widget buttons (see the `hide` prop passed to `<WidgetButton />`)\r\n */\r\n if (currentPercentageDragged < 0 && (widgetState.offset === widgetState.viewableItems))\r\n currentPercentageDragged = 0;\r\n\r\n else if (currentPercentageDragged > 0 && (widgetState.offset === widgetState.collection.length))\r\n currentPercentageDragged = 0;\r\n\r\n setPercentageDragged(currentPercentageDragged);\r\n };\r\n}\r\n\r\nconst DRAG_TOLERANCE = 7.5; // % of container width using to trigger a transition.\r\n\r\nexport function getOnTouchEnd(\r\n containerRef: React.MutableRefObject<HTMLDivElement>,\r\n setInitialTouchX: React.Dispatch<number>,\r\n percentageDragged: number,\r\n setPercentageDragged: React.Dispatch<number>,\r\n dispatch: React.Dispatch<ReducerActions<WidgetInteraction, FixedWidgetPayload>>\r\n): () => void {\r\n return function(): void {\r\n containerRef.current.style.transition = 'transform .4s ease-in-out';\r\n setInitialTouchX(null);\r\n\r\n /**\r\n * Only trigger a Next/Previous widget event if the user has dragged beyond DRAG_TOLERANCE% either way of the\r\n * container's width. This means if the user only drags left/right a tiny little bit, the widget\r\n * will simply slide back into its original place.\r\n */\r\n if (Math.abs(percentageDragged) >= DRAG_TOLERANCE) {\r\n const reducerAction = percentageDragged > 0 ? WidgetInteraction.Next : WidgetInteraction.Previous;\r\n\r\n dispatch({\r\n type: reducerAction\r\n });\r\n }\r\n\r\n setPercentageDragged(0);\r\n };\r\n}","import * as React from 'react';\r\n\r\nimport { HashObject } from 'libs/common/react/interfaces/HashObject';\r\n\r\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\r\nimport { WidgetType } from 'libs/shared/interfaces';\r\nimport { useGetMediaQueryString } from 'libs/shared/hooks/UseGetMediaQueryString';\r\n\r\nimport styles from './fixed-widget.scss';\r\n\r\nfunction useMediaQueryListeners(): HashObject {\r\n const mediaQuery = useGetMediaQueryString();\r\n\r\n if (mediaQuery === MediaQueryStrings.XS)\r\n return {\r\n itemCount: 1,\r\n colSize: 12\r\n };\r\n\r\n if (mediaQuery === MediaQueryStrings.SM)\r\n return {\r\n itemCount: 2,\r\n colSize: 6\r\n };\r\n\r\n if (mediaQuery === MediaQueryStrings.MD)\r\n return {\r\n itemCount: 3,\r\n colSize: 4\r\n };\r\n\r\n return {\r\n itemCount: 4,\r\n colSize: 3\r\n };\r\n}\r\n\r\nconst PartialLoadingItem = ({ colSize }: HashObject) => (\r\n <div className={`col-${colSize}`}>\r\n <div className={`${styles.partialItem} mx-1 partial-loading-background`} />\r\n </div>\r\n);\r\n\r\ninterface PartialFixedWidgetProps {\r\n type: WidgetType;\r\n}\r\n\r\nexport function PartialFixedWidget(props: PartialFixedWidgetProps): JSX.Element {\r\n const { itemCount, colSize } = useMediaQueryListeners();\r\n\r\n let items = [];\r\n for (let i = 0; i < itemCount; i++) {\r\n items.push(<PartialLoadingItem key={i} colSize={colSize} />);\r\n }\r\n\r\n return (\r\n <div className='widget pb-3'>\r\n <div className={`${styles.partialHeading} mx-1 mb-1 partial-loading-background`}></div>\r\n <div className={`${styles.partialDescription} mx-1 my-1 partial-loading-background`}></div>\r\n <div className={`${styles.slidingContainer} row`}>\r\n {items}\r\n </div>\r\n </div>\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"leftOverflowGradient\":\"cv--leftOverflowGradient--u_MPi\",\"rightOverflowGradient\":\"cv--rightOverflowGradient--38ooL\",\"partialHeading\":\"cv--partialHeading--OVsdA\",\"partialDescription\":\"cv--partialDescription--1HtA2\",\"partialItem\":\"cv--partialItem--3G2hG\",\"largePartialItem\":\"cv--largePartialItem--NnK8O\",\"heading\":\"cv--heading--BQnCC\",\"link\":\"cv--link--ph0Qy\"};","import * as React from 'react';\r\nimport { HashObject } from 'libs/common/react/interfaces/HashObject';\r\nimport { UserAgentHelper } from 'libs/common/backbone/utils/UserAgentHelper';\r\n\r\nimport { CssMeasurement } from 'libs/shared/enums/CssMeasurement';\r\nimport { DragHelper } from 'libs/shared/utils/DragHelper';\r\n\r\nconst isTouchScreen = UserAgentHelper.isTouchScreen();\r\n\r\nfunction getPositionStyling(xPosition: number, measurement: CssMeasurement, dragPercentage?: number): object {\r\n // Used in situations where a touch screen user is dragging the `<FixedWidget />`\r\n if (measurement === CssMeasurement.Percentage && dragPercentage)\r\n xPosition = xPosition - dragPercentage;\r\n\r\n return {\r\n transform: `translate3d(${xPosition}${measurement}, 0px, 0px)`,\r\n transition: 'transform .4s ease-in-out'\r\n };\r\n}\r\n\r\ninterface SlidingListContainerProps extends React.PropsWithChildren<{}> {\r\n position: number;\r\n positionType: CssMeasurement;\r\n\r\n onDrag?: (event: React.DragEvent<HTMLDivElement>) => void;\r\n onDragEnd?: () => void;\r\n\r\n onTouchMove?: (event: React.TouchEvent<HTMLDivElement>) => void;\r\n onTouchEnd?: () => void;\r\n\r\n percentageDragged?: number;\r\n}\r\n\r\nexport const SlidingListContainer = React.forwardRef((\r\n props: SlidingListContainerProps,\r\n ref: React.MutableRefObject<HTMLDivElement>\r\n): JSX.Element => {\r\n const { children, positionType, onDrag, onDragEnd, onTouchMove, onTouchEnd, percentageDragged, position = 0 } = props;\r\n\r\n function getEventListeners(): HashObject {\r\n const listenerProps: HashObject = {};\r\n\r\n if (onDrag && onDragEnd) {\r\n listenerProps.draggable = true;\r\n listenerProps.onDragEnd = onDragEnd;\r\n listenerProps.onDragStart = DragHelper.hideDragImage;\r\n listenerProps.onDragOver = onDrag;\r\n }\r\n\r\n if (onTouchMove && onTouchEnd && isTouchScreen) {\r\n listenerProps.onTouchMoveCapture = onTouchMove;\r\n listenerProps.onTouchEndCapture = onTouchEnd;\r\n }\r\n\r\n return listenerProps;\r\n }\r\n\r\n return (\r\n <div\r\n className='d-flex flex-nowrap position-relative w-100'\r\n style={getPositionStyling(position, positionType, percentageDragged)}\r\n ref={ref}\r\n {...getEventListeners()}\r\n >\r\n {children}\r\n </div>\r\n );\r\n});","import * as React from 'react';\r\n\r\nimport { SvgContainer, SvgContainerSize } from 'libs/shared/components/svg-container/SvgContainer';\r\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\r\nimport { WidgetContents } from 'libs/shared/enums/WidgetContents';\r\n\r\nimport styles from './widget-button.scss';\r\n\r\nexport enum WidgetButtonDirection {\r\n Left,\r\n Right\r\n}\r\n\r\nfunction getPositionClass(contents: WidgetContents, isLeftDirection: boolean): string {\r\n let className = styles.topPos;\r\n\r\n // Left / Right\r\n if (isLeftDirection)\r\n className += ' ' + styles.left;\r\n else\r\n className += ' ' + styles.right;\r\n\r\n return className;\r\n}\r\n\r\ninterface WidgetButtonProps {\r\n onClick: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;\r\n direction: WidgetButtonDirection;\r\n hide: boolean;\r\n contents?: WidgetContents;\r\n useGradientBackdrop?: boolean;\r\n}\r\n\r\nexport const WidgetButton = React.memo(function(props: WidgetButtonProps): JSX.Element {\r\n const isLeft = props.direction === WidgetButtonDirection.Left;\r\n\r\n const arrowSvg = isLeft ? cvSvgLibrary.ChevronLeft : cvSvgLibrary.ChevronRight;\r\n\r\n const positionClass = getPositionClass(props.contents, isLeft);\r\n\r\n if (props.hide)\r\n return <></>;\r\n\r\n return (\r\n <>\r\n <div role='button' className={`${positionClass} ${styles.button}`} onClick={props.onClick}>\r\n <SvgContainer\r\n svgName={arrowSvg}\r\n size={SvgContainerSize.Medium}\r\n className={`svg-container d-inline-block ${styles.chevron}`}\r\n />\r\n </div>\r\n\r\n {props.useGradientBackdrop && <div className={isLeft ? styles.gradientLeft : styles.gradientRight} />}\r\n <div role='button' onClick={props.onClick} className={\r\n isLeft ? styles.extendedClickableAreaLeft : styles.extendedClickableAreaRight\r\n } />\r\n </>\r\n );\r\n}, (prevProps, nextProps) => prevProps.hide === nextProps.hide);","// extracted by mini-css-extract-plugin\nmodule.exports = {\"left\":\"cv--left--789pr\",\"right\":\"cv--right--1P8qt\",\"button\":\"cv--button--24q_F\",\"chevron\":\"cv--chevron--3M27X\",\"gradientLeft\":\"cv--gradientLeft--3fkiw\",\"gradientRight\":\"cv--gradientRight--2RDDy\",\"extendedClickableAreaRight\":\"cv--extendedClickableAreaRight--13dgy\",\"extendedClickableAreaLeft\":\"cv--extendedClickableAreaLeft--37LtK\",\"videoTopPos\":\"cv--videoTopPos--1XTRO\",\"topPos\":\"cv--topPos--3_p_J\"};","export enum CssMeasurement {\r\n Percentage = '%',\r\n Pixels = 'px'\r\n}","export enum WidgetContents {\r\n Videos = 'videos',\r\n Series = 'series',\r\n Subjects = 'subjects',\r\n Playlists = 'playlists',\r\n UserChannels = 'user channels',\r\n Interactives = 'interactives',\r\n Clips = 'clips'\r\n}","export enum WidgetInteraction {\r\n Init = 'init',\r\n Next = 'next',\r\n Previous = 'previous',\r\n Resize = 'resize',\r\n Drag = 'drag'\r\n}","import * as React from 'react';\r\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\r\n\r\ninterface HoverOptions {\r\n /**\r\n * Classes to be applied to the target element on hover. Useful if you want to style the element on hover\r\n * after a delay (controlled by the `timeout` option below)\r\n */\r\n className?: string;\r\n\r\n /**\r\n * A delay between when the user actually hovers on the element, and when the hook returns `true` for `isHovering`.\r\n * This can be used to determine whether a user has actually intended for a hover event on an element to be\r\n * triggered or not. Defaults to 0.\r\n */\r\n delay?: number;\r\n}\r\n\r\nconst defaultOptions: HoverOptions = {\r\n className: '',\r\n delay: 0\r\n};\r\n\r\n/**\r\n * This hook detects hover events on an element.\r\n * This should only be used where CSS hover events won't suffice for what you are trying to achieve.\r\n */\r\nexport function useHover<T extends HTMLElement>(\r\n options: HoverOptions = defaultOptions\r\n): [ React.MutableRefObject<T>, boolean ] {\r\n const [ isHovering, setHovering ] = React.useState(false);\r\n\r\n const ref = React.useRef<T>(null);\r\n\r\n const triggerHover = FunctionHelper.throttle(() => {\r\n if (options.className)\r\n ref.current?.classList?.add(options.className);\r\n\r\n setHovering(true);\r\n }, options.delay, { leading: false });\r\n\r\n const handleMouseOut = () => {\r\n if (FunctionHelper.isFunction(triggerHover.cancel))\r\n triggerHover.cancel();\r\n\r\n if (options.className)\r\n ref.current?.classList?.remove(options.className);\r\n\r\n setHovering(false);\r\n };\r\n\r\n React.useLayoutEffect(() => {\r\n const node = ref.current;\r\n\r\n if (node) {\r\n node.addEventListener('mouseenter', triggerHover);\r\n node.addEventListener('mouseleave', handleMouseOut);\r\n\r\n return () => {\r\n node.removeEventListener('mouseenter', triggerHover);\r\n node.removeEventListener('mouseleave', handleMouseOut);\r\n };\r\n }\r\n }, [ ref.current, triggerHover, handleMouseOut ]);\r\n\r\n return [ ref, isHovering ];\r\n}\r\n\r\nexport function useHoverIntent<T extends HTMLElement>(className: string): [ React.MutableRefObject<T>, boolean ] {\r\n return useHover({\r\n className,\r\n delay: 275\r\n });\r\n}","import { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\r\n\r\nconst blankImage = new Image();\r\nblankImage.src = 'data:image/gif;base64,R0lGODlhAQABAIAAAAUEBAAAACwAAAAAAQABAAACAkQBADs=';\r\n\r\nexport const DragHelper = {\r\n // This removes the image that appears when you drag a draggable HTML element\r\n hideDragImage(event: React.DragEvent<HTMLElement>): void {\r\n if (!event.dataTransfer.setDragImage || !FunctionHelper.isFunction(event.dataTransfer.setDragImage))\r\n return;\r\n\r\n event.dataTransfer.setDragImage(blankImage, 0, 0);\r\n }\r\n};","import { AnalyticsOptions, ClickDescriptor, EntityType, LocationContext, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\r\nimport { Video } from 'libs/shared/interfaces';\r\n\r\nexport const WidgetHelper = {\r\n /**\r\n * Used by both the FixedWidget and DynamicWidget\r\n */\r\n getSliderAnalyticsOptions: (): AnalyticsOptions => ({\r\n actionType: UserAction.Click,\r\n location: LocationContext.SlidingList,\r\n entity: EntityType.Widget,\r\n descriptor: ClickDescriptor.Slide\r\n }),\r\n\r\n /**\r\n * Used by both the FixedWidget and DynamicWidget\r\n */\r\n getSliderItemAnalyticsOptions: (): AnalyticsOptions => ({\r\n location: LocationContext.SlidingListItem\r\n }),\r\n\r\n getSliderHeadingAnalyticsOptions: (): AnalyticsOptions => ({\r\n actionType: UserAction.Click,\r\n location: LocationContext.SlidingList,\r\n entity: EntityType.Widget,\r\n descriptor: ClickDescriptor.Title\r\n })\r\n};"],"sourceRoot":""}
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[50],{1297:function(e,r,n){"use strict";n.r(r),n.d(r,"RemoveUserView",(function(){return y}));var t=n(0),a=n.n(t),o=n(61),s=n(7),c=n(14),i=n(824),u=n(73),l=n(243),m=n(238),d=n(829),h=n(40);function p(e,r){return function(e){if(Array.isArray(e))return e}(e)||function(e,r){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],t=!0,a=!1,o=void 0;try{for(var s,c=e[Symbol.iterator]();!(t=(s=c.next()).done)&&(n.push(s.value),!r||n.length!==r);t=!0);}catch(e){a=!0,o=e}finally{try{t||null==c.return||c.return()}finally{if(a)throw o}}return n}(e,r)||function(e,r){if(!e)return;if("string"==typeof e)return v(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return v(e,r)}(e,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.")}()}function v(e,r){(null==r||r>e.length)&&(r=e.length);for(var n=0,t=new Array(r);n<r;n++)t[n]=e[n];return t}var f=s.a.encloseNamespace("userManager.removeUser");function y(e){var r=p(a.a.useState(!1),2),n=r[0],t=r[1],s=Object(o.useDispatch)(),v=Object(i.a)(),y="student"===e.userType;var S=y?"titleStudents":"titleTeachers",g=y?"confirmStudents":"confirmTeachers";return a.a.createElement(m.a,{title:f(S),closePopup:e.closePopup,showLoadingSpinner:n},a.a.createElement("p",null,a.a.createElement(u.b,{namespace:"userManager.removeUser",phrase:g,options:{smartCount:e.userIds.length}})),a.a.createElement(l.a,{buttons:[{variant:"link",onClick:e.closePopup,buttonText:f("cancel")},{variant:"danger",onClick:function(){t(!0);var r=y?d.a.removeStudentsFromSchool:d.a.removeTeachersFromSchool;c.a.fetch(s,r(e.userIds,(function(){t(!1),h.a.logUserAction({count:e.userIds.length},e.analyticsOptions),v.success(f("success",{smartCount:e.userIds.length})),e.closePopup()})))},buttonText:f("remove"),isSpinnerButton:!0,showSpinner:n}]}))}},829:function(e,r,n){"use strict";n.d(r,"a",(function(){return l}));var t=n(14),a=n(79),o=n(21),s=n(840),c=n(833),i=n(834),u=n(835),l={getSchoolStudents:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.filter,n=void 0===r?"":r,o=e.q,i=void 0===o?"":o,u=e.query,l=void 0===u?"":u,m=e.cursor,d=void 0===m?"1":m;return{url:a.a.urlBuilder("api/domain/v1/school/:id/students",e),key:"school:students:".concat(i,":").concat(l,":").concat(n,":").concat(d),successResponse:function(){var e=s.a.revertFilterString(n),r=t.a.Simulator.getAll("school:students",c).filter((function(r){var t,a;return!(i&&!r.name.toLowerCase().includes(i.toLowerCase()))&&(!n||(!e.yearLevel||e.yearLevel===r.yearLevel.id)&&!((null===(t=e.classroom)||void 0===t?void 0:t.length)&&!e.classroom.includes(null===(a=r.classroom)||void 0===a?void 0:a.id)))})),a=s.a.convertWithStatementToObject(l),o=a.sortValue||"name",u=r.sort((function(e,r){return e[o].toLowerCase()<r[o].toLowerCase()?-1:e[o].toLowerCase()>r[o].toLowerCase()?1:0}));a.sortKey&&"orderbydesc"===a.sortKey&&(u=u.reverse());var m=u.slice(25*(+d-1),25*+d),h=u.slice(25*+d).length?+d+1:void 0,p="1"===d?void 0:+d-1;return m.length||(m=u.slice(0,25),h=u.slice(25).length?2:void 0,p=void 0),{data:m,pagination:{cursors:{next:h,previous:p}},count:u.length}},timeout:500}},tempGetAllStudents:function(){return{url:"",key:"get:all:dem:students",successResponse:function(){return t.a.Simulator.getAll("school:students")}}},removeStudentsFromSchool:function(e,r){return{url:"",key:"remove:school:students",invalidationKeys:["school:students"],successResponse:function(){return t.a.Simulator.delete("school:students",e),{}},always:r}},getStudent:function(e){return{url:"/api/domain/v1/users/".concat(e),key:"students:".concat(e),successResponse:function(){return t.a.Simulator.get("school:students",e)}}},createStudent:function(e,r,n){return{url:"/api/domain/v1/users",key:"create:student",type:o.a.POST,invalidationKeys:["school:students"],successResponse:function(){return t.a.Simulator.create("school:students",e)},success:r,error:n}},bulkCreateStudents:function(e,r,n,a){return{url:"/api/domain/v1/users",key:"create:students",type:o.a.POST,invalidationKeys:["school:students"],successResponse:function(){return e.forEach((function(e){return t.a.Simulator.create("school:students",e)})),e},success:r,error:n,always:a}},updateStudent:function(e,r,n){return{url:"/api/domain/v1/users",key:"edit:student",type:o.a.PUT,invalidationKeys:["school:students"],successResponse:function(){return t.a.Simulator.update("school:students",e)},success:r,error:n}},getSchoolTeachers:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=e.filter,n=void 0===r?"":r,o=e.q,s=void 0===o?"":o,c=e.query,u=void 0===c?"":c,l=e.cursor,m=void 0===l?"":l;return{url:a.a.urlBuilder("api/domain/v1/school/:id/teachers",e),key:"school:teachers:".concat(s,":").concat(u,":").concat(n,":").concat(m),successResponse:function(){var e=t.a.Simulator.getAll("school:teachers",i);return{data:e,pagination:{cursors:{}},count:e.length}},timeout:2e3}},removeTeachersFromSchool:function(e,r){return{url:"",key:"remove:school:teachers",invalidationKeys:["school:teachers"],successResponse:function(){return t.a.Simulator.delete("school:teachers",e),{}},always:r}},getTeacher:function(e){return{url:"/api/domain/v1/users/".concat(e),key:"teachers:".concat(e),successResponse:function(){return t.a.Simulator.get("school:teachers",e)}}},createTeacher:function(e,r,n){return{url:"/api/domain/v1/users",key:"create:teacher",type:o.a.POST,invalidationKeys:["school:teachers"],successResponse:function(){return t.a.Simulator.create("school:teachers",e)},success:r,error:n}},bulkCreateTeachers:function(e,r,n,a){return{url:"/api/domain/v1/users",key:"create:teachers",type:o.a.POST,invalidationKeys:["school:teachers"],successResponse:function(){return e.forEach((function(e){return t.a.Simulator.create("school:teachers",e)})),e},success:r,error:n,always:a}},updateTeacher:function(e,r,n){return{url:"/api/domain/v1/users",key:"edit:teacher",type:o.a.PUT,invalidationKeys:["school:teachers"],successResponse:function(){return t.a.Simulator.update("school:teachers",e)},success:r,error:n}},getUserRoles:function(){return{url:"/api/domain/v1/users/roles",key:"user:roles",successResponse:function(){return t.a.Simulator.getAll("user:roles",u)}}},getStudentsGroups:function(e){return{url:"/api/domain/v1/users/".concat(e,"/groups"),key:"user:".concat(e,":groups"),successResponse:function(){return t.a.Simulator.getAll("groups").filter((function(r){return!!r.students.find((function(r){return r.id===e}))}))}}}}},833:function(e){e.exports=JSON.parse('[{"username":"Joosh","name":"Joshua","surname":"Taylor","email":"joshua.taylor@clickview.com.au","yearLevel":{"id":"year-2","name":"Year 2"},"classroom":{"id":"classroom-2-c","name":"Classroom 2-C"}},{"username":"Shale","name":"Shale","surname":"Kuzmanovski","email":"shale.kuzmanovski@clickview.com.au","yearLevel":{"id":"year-2","name":"Year 2"},"classroom":{"id":"classroom-2-a","name":"Classroom 2-A"}},{"username":"Mike","name":"Michael","surname":"O\'McDonald","email":"michael.mcdonnell@clickview.com.au","yearLevel":{"id":"year-2","name":"Year 2"},"classroom":{"id":"classroom-2-a","name":"Classroom 2-A"}},{"username":"Met","name":"Matt","surname":"Trengrove","email":"matt@clickview.com.au","yearLevel":{"id":"year-2","name":"Year 2"},"classroom":{"id":"classroom-2-b","name":"Classroom 2-B"}},{"username":"Big Kev","name":"Don Kevin","surname":"Wellalagodage","email":"kevin.wellalagoladegelagodage@clickview.com.au","yearLevel":{"id":"year-2","name":"Year 1"},"classroom":{"id":"classroom-1-a","name":"Classroom 1-A"}}]')},834:function(e){e.exports=JSON.parse('[{"username":"beb","name":"Beverly","surname":"Li","email":"beverly.li@clickview.com.au","userRole":{"id":"assistant-principal","name":"Assistant Principal"}},{"username":"Bort","name":"Cameron","surname":"Hill","email":"cameron.hill@clickview.com.au","userRole":{"id":"principal","name":"Principal"}},{"username":"jaynice","name":"Janice","surname":"Quach","email":"janice.quach@clickview.com.au","userRole":{"id":"head-of-science","name":"Head of Science"}},{"username":"bread","name":"Prad","surname":"Nepal","email":"prad.nepal@clickview.com.au","userRole":{"id":"head-of-conpiracy-theories","name":"Head of Conspiracy Theories"}}]')},835:function(e){e.exports=JSON.parse('[{"id":"teacher","name":"Teacher"},{"id":"assistant-principal","name":"Assistant Principal"},{"id":"principal","name":"Principal"},{"id":"head-of-science","name":"Head of Science"},{"id":"head-of-conpiracy-theories","name":"Head of Conspiracy Theories"}]')}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[51,53],{1071:function(e,t,r){"use strict";r.r(t),r.d(t,"ErrorView",(function(){return v}));var n=r(0),a=r(240),i=r(237),o=r(7),c=r(73),l=r(51),u=r(236),s=r(45),m=r(5),f=r(10),p=r(998),d=r.n(p);function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,a=!1,i=void 0;try{for(var o,c=e[Symbol.iterator]();!(n=(o=c.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{n||null==c.return||c.return()}finally{if(a)throw i}}return r}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return b(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function 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}function v(e){var t,r=e.error;Object(i.a)((null===(t=r)||void 0===t?void 0:t.heading)||o.a.getPhrase("default.error","defaultPageTitle"));var p=g(n.useState(a.a.getRandomInt(19)+1),1)[0],b=Object(u.a)(),v=b===s.a.SM||b===s.a.XS,h="/images/error-avatars/".concat(v?"small":"large","/error-").concat(p,".png");return r?n.createElement("main",{className:"bg-white text-center px-3"},n.createElement("div",{className:"".concat(d.a.imageContainer," mx-auto pb-3 position-relative")},n.createElement("img",{className:"img-fluid",alt:"",role:"presentation",src:h}),n.createElement("div",{className:d.a.textContainer},n.createElement("h1",{className:d.a.heading},r.heading),r.description&&n.createElement("p",{className:"font-weight-normal mx-auto mb-1 ".concat(d.a.description)},r.description),n.createElement(l.a,{appLink:{application:m.a.DASHBOARD,action:f.a.Dashboard.HOME},className:"info-link"},n.createElement(c.b,{namespace:"default.error",phrase:"countryRoads"}))))):n.createElement(n.Fragment,null)}},1283:function(e,t,r){"use strict";r.r(t),r.d(t,"NotFoundView",(function(){return o}));var n=r(0),a=r.n(n),i=r(1071);function o(e){var t=e.error;return a.a.createElement(i.ErrorView,{error:t})}},998:function(e,t,r){e.exports={textContainer:"swp8b",heading:"_3tcRm",description:"_1ABwp",imageContainer:"_2epaT"}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[52],{1249:function(t,n,e){var o=e(25);t.exports=(o.default||o).template({1:function(t,n,e,o,i){return"disabled"},compiler:[8,">= 4.3.0"],main:function(t,n,e,o,i){t.propertyIsEnumerable;var r,a=null!=n?n:t.nullContext||{},s=t.hooks.helperMissing,c=t.escapeExpression;return'<div class="p-3">\r\n <a class="btn previous-applink btn-secondary '+(null!=(r=e.unless.call(a,null!=(r=null!=(r=null!=n?n.options:n)?r.cursors:r)?r.previous:r,{name:"unless",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?r:"")+'">'+c((e.lang||n&&n.lang||s).call(a,"previous",{name:"lang",hash:{},data:i}))+'</a>\r\n <a class="btn next-applink btn-secondary '+(null!=(r=e.unless.call(a,null!=(r=null!=(r=null!=n?n.options:n)?r.cursors:r)?r.next:r,{name:"unless",hash:{},fn:t.program(1,i,0),inverse:t.noop,data:i}))?r:"")+'">'+c((e.lang||n&&n.lang||s).call(a,"next",{name:"lang",hash:{},data:i}))+"</a>\r\n</div>"},useData:!0})},1250:function(t,n,e){var o=e(25);t.exports=(o.default||o).template({compiler:[8,">= 4.3.0"],main:function(t,n,e,o,i){t.propertyIsEnumerable;return'<div class="container-fluid bg-white p-3">\r\n <h1 class="h3 header border-bottom pb-2 m-0">'+t.escapeExpression((e.lang||n&&n.lang||t.hooks.helperMissing).call(null!=n?n:t.nullContext||{},"notifications",{name:"lang",hash:{},data:i}))+'</h1>\r\n <div class="list-region"></div>\r\n <div class="pagination-region"></div>\r\n</div>'},useData:!0})},1320:function(t,n,e){"use strict";e.r(n);var o=e(2),i=e(7),r=e(8),a=e(184),s=e(34),c=e(12),u=e(32),l=e(412),p=e(1),f=e(3),h=e(40),y=e(1249),g=e.n(y);function v(t){return(v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function b(t,n){for(var e=0;e<n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function d(t,n){return(d=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}function m(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}();return function(){var e,o=w(t);if(n){var i=w(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return k(this,e)}}function k(t,n){return!n||"object"!==v(n)&&"function"!=typeof n?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):n}function w(t){return(w=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var O=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&d(t,n)}(r,t);var n,e,o,i=m(r);function r(t){return function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,r),i.call(this,t)}return n=r,(e=[{key:"events",value:function(){return{"click .previous-applink":"onClickPrevious","click .next-applink":"onClickNext"}}},{key:"buildCursor",value:function(t){return{application:this.options.appLink.application,action:this.options.appLink.action,args:this.options.appLink.args,params:p.extend({},this.options.appLink.params,(n={},e=this.options.cursorParamName,o=t,e in n?Object.defineProperty(n,e,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[e]=o,n))};var n,e,o}},{key:"onClickPrevious",value:function(){this.logAction("previous")}},{key:"onClickNext",value:function(){this.logAction("next")}},{key:"logAction",value:function(t){var n=h.a.mergeOptions(this.options.analyticsOptions,{location:f.j.Pagination,entity:f.d.Pagination,actionType:f.n.Navigate}),e={id:this.options.collectionId,page:t};h.a.logUserAction(e,n)}},{key:"viewOptions",value:function(){return{cursors:this.options.cursors}}},{key:"onBeforeRender",value:function(){return!!this.options.cursors}},{key:"defaults",get:function(){return{cursors:{},cursorParamName:"cursor"}}},{key:"name",get:function(){return"PaginationComponent"}},{key:"template",get:function(){return g.a}},{key:"lang",get:function(){return"shared._pagination"}},{key:"appLinks",get:function(){var t={};if(!this.options.cursors)return{};if(this.options.cursors.previous){var n=this.options.cursors.previous,e=this.buildCursor(this.options.cursors.previous);+n<=1&&!0!==this.options.allowFirstPageCursor&&delete e.params.cursor,t[".previous-applink"]=e}return this.options.cursors.next&&(t[".next-applink"]=this.buildCursor(this.options.cursors.next)),t}}])&&b(n.prototype,e),o&&b(n,o),r}(o.a.Component),P=e(186),C=e(1250),x=e.n(C),_=e(354),j=e.n(_),S=e(355),I=e.n(S);function N(t){return(N="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function R(t,n){for(var e=0;e<n.length;e++){var o=n[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function E(t,n){return(E=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}function L(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}();return function(){var e,o=D(t);if(n){var i=D(this).constructor;e=Reflect.construct(o,arguments,i)}else e=o.apply(this,arguments);return T(this,e)}}function T(t,n){return!n||"object"!==N(n)&&"function"!=typeof n?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):n}function D(t){return(D=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}e.d(n,"NotificationsView",(function(){return V}));var V=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&E(t,n)}(f,t);var n,e,o,p=L(f);function f(t){return function(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}(this,f),p.call(this,t)}return n=f,(e=[{key:"regions",value:function(){return{notifications:{replaceElement:!0,el:".list-region",partialLoading:{component:a.a.ComponentCollection,options:{collectionLength:5,childOptions:{template:j.a,className:"px-1 py-2",viewOptions:{styles:I.a}}}}},pagination:{replaceElement:!0,el:".pagination-region"}}}},{key:"initialize",value:function(){this.notificationService=r.a.getInstance(c.b.Notification,this),this.appVariables=r.a.getInstance(u.a.NOTIFICATIONS,this)}},{key:"onData",value:function(t){this.collection=t,this.render()}},{key:"getCollectionIdentifier",value:function(){return this.collectionIdentifier?this.collectionIdentifier:this.collectionIdentifier=new l.a(Object.assign({collectionPrefix:s.a.NOTIFICATIONS},this.options.params))}},{key:"renderNotificationList",value:function(){var t=new P.b({collection:this.collection,childType:P.a.Default});this.showChildView("notifications",t)}},{key:"renderPagination",value:function(){if(this.collection.length){var t=this.notificationService.getNotificationsCursors(this.getCollectionIdentifier()),n=new O({cursors:t,appLink:Object.assign(Object.assign({},this.appVariables.appLinks.notifications),{args:[],params:this.getCollectionIdentifier().toParams()})});this.showChildView("pagination",n)}}},{key:"onBeforeRender",value:function(){var t=this;return this.collection||this.notificationService.getNotifications(this.options.params,this.getCollectionIdentifier(),(function(n){return t.onData(n)})),!!this.collection}},{key:"onRender",value:function(){this.renderNotificationList(),this.renderPagination()}},{key:"name",get:function(){return"NotificationsView"}},{key:"title",get:function(){return i.a.getPhrase(this.lang,"title")}},{key:"lang",get:function(){return"notifications.notifications"}},{key:"className",get:function(){return"notifications-container"}},{key:"template",get:function(){return x.a}}])&&R(n.prototype,e),o&&R(n,o),f}(o.a.View)}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[53],{1071:function(e,t,r){"use strict";r.r(t),r.d(t,"ErrorView",(function(){return h}));var n=r(0),a=r(240),i=r(237),o=r(7),c=r(73),l=r(51),s=r(236),u=r(45),m=r(5),p=r(10),d=r(998),f=r.n(d);function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var r=[],n=!0,a=!1,i=void 0;try{for(var o,c=e[Symbol.iterator]();!(n=(o=c.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{n||null==c.return||c.return()}finally{if(a)throw i}}return r}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return b(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function 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}function h(e){var t,r=e.error;Object(i.a)((null===(t=r)||void 0===t?void 0:t.heading)||o.a.getPhrase("default.error","defaultPageTitle"));var d=g(n.useState(a.a.getRandomInt(19)+1),1)[0],b=Object(s.a)(),h=b===u.a.SM||b===u.a.XS,v="/images/error-avatars/".concat(h?"small":"large","/error-").concat(d,".png");return r?n.createElement("main",{className:"bg-white text-center px-3"},n.createElement("div",{className:"".concat(f.a.imageContainer," mx-auto pb-3 position-relative")},n.createElement("img",{className:"img-fluid",alt:"",role:"presentation",src:v}),n.createElement("div",{className:f.a.textContainer},n.createElement("h1",{className:f.a.heading},r.heading),r.description&&n.createElement("p",{className:"font-weight-normal mx-auto mb-1 ".concat(f.a.description)},r.description),n.createElement(l.a,{appLink:{application:m.a.DASHBOARD,action:p.a.Dashboard.HOME},className:"info-link"},n.createElement(c.b,{namespace:"default.error",phrase:"countryRoads"}))))):n.createElement(n.Fragment,null)}},998:function(e,t,r){e.exports={textContainer:"swp8b",heading:"_3tcRm",description:"_1ABwp",imageContainer:"_2epaT"}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[54],{1248:function(e,a,t){e.exports={embeddedPlayer:"_3kXb6"}},1286:function(e,a,t){"use strict";t.r(a),t.d(a,"EmbedView",(function(){return u}));var n=t(0),d=t(237),i=t(14),c=t(157),o=t(239),r=t(367),l=t(1248),s=t.n(l);function u(e){var a,t=i.a.useBasicFetch(o.a.video(e.id)),l=i.a.useBasicFetch(c.a.config);return Object(d.a)(null===(a=t.data)||void 0===a?void 0:a.name),n.useEffect((function(){return document.body.classList.add("overflow-hidden"),function(){return document.body.classList.remove("overflow-hidden")}}),[]),t.data&&l.data?n.createElement(r.a,{id:t.data.id,webPlayerHost:l.data.webPlayerUrl,className:s.a.embeddedPlayer}):n.createElement(n.Fragment,null)}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[55],{1264:function(e,a,t){e.exports={container:"_3qF00",textContainer:"_4g1ik",welcomeImageLeft:"_3uVmF",welcomeImageRight:"Q7tiP"}},1298:function(e,a,t){"use strict";t.r(a),t.d(a,"PreferencesWelcomeView",(function(){return d}));var n=t(0),c=t.n(n),r=t(14),l=t(879),i=t(73),s=t(154),m=t(51),o=t(898),u=t(1264),p=t.n(u);function d(e){var a,t,n,u=e.redirectUrl,d=r.a.useBasicFetch(s.a.currentUser()),g=r.a.useBasicFetch(l.a.availablePresentations());return d.data?c.a.createElement(i.a.Provider,{value:"subjects.preferencesWelcome"},c.a.createElement("div",{className:"p-3 ".concat(p.a.container)},c.a.createElement("div",{className:"mx-auto w-75 d-flex flex-column align-items-center"},c.a.createElement("div",{className:"".concat(p.a.textContainer," px-5 pt-3 text-center")},c.a.createElement("h1",{className:"h3 mb-3"},(null===(a=d.data)||void 0===a?void 0:a.givenName)?c.a.createElement(i.b,{phrase:"welcomeUser",options:{firstName:d.data.givenName}}):c.a.createElement(i.b,{phrase:"welcome"})),c.a.createElement("p",null,c.a.createElement(i.b,{phrase:"info1"})),c.a.createElement("p",{className:"pb-3"},c.a.createElement(i.b,{phrase:"info2"})),c.a.createElement(m.a,{appLink:(t="levels",n=o.a.hasManyPresentationTypes(g.data),n.hasManyCurriculumPresentations&&(t="curriculum"),n.hasManySubjectPresentations&&(t="school-level"),o.a.buildAppLink(t,u)),className:"btn btn-dark w-50"},c.a.createElement(i.b,{phrase:"getStarted"})))),c.a.createElement("div",{className:p.a.welcomeImageLeft},c.a.createElement("img",{className:"img-fluid",src:"/images/onboarding/welcome-left.png",alt:"",role:"presentation"})),c.a.createElement("div",{className:p.a.welcomeImageRight},c.a.createElement("img",{className:"img-fluid",src:"/images/onboarding/welcome-right.png",alt:"",role:"presentation"})))):c.a.createElement(c.a.Fragment,null)}}}]);
@@ -1 +1 @@
1
- {"version":3,"sources":["file://C:/ClickView Projects/@clickview/packages/projects/lite/src/apps/embed/views/embed/EmbedView.tsx","file://C:/ClickView Projects/@clickview/packages/projects/lite/src/apps/embed/views/embed/embed.scss"],"names":[],"mappings":";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AAEA;AAEA;AACA;AAEA;AAWM,SAAU,SAAV,CAAoB,KAApB,EAAyC;;;AAC7C,MAAM,KAAK,GAAG,6DAAM,CAAC,aAAP,CAA4B,kFAAa,CAAC,KAAd,CAAoB,KAAK,CAAC,EAA1B,CAA5B,CAAd;AACA,MAAM,MAAM,GAAG,6DAAM,CAAC,aAAP,CAA6B,8FAAc,CAAC,MAA5C,CAAf;AAEA,sGAAe,OAAC,KAAK,CAAC,IAAP,MAAW,IAAX,IAAW,aAAX,GAAW,MAAX,GAAW,GAAE,IAAb,CAAf;AAEA;;;;;AAIA,kDAAgB,YAAK;AACnB,YAAQ,CAAC,IAAT,CAAc,SAAd,CAAwB,GAAxB,CAA4B,iBAA5B;AACA,WAAO;AAAA,aAAM,QAAQ,CAAC,IAAT,CAAc,SAAd,CAAwB,MAAxB,CAA+B,iBAA/B,CAAN;AAAA,KAAP;AACD,GAHD,EAGG,EAHH;AAMA,MAAI,CAAC,KAAK,CAAC,IAAP,IAAe,CAAC,MAAM,CAAC,IAA3B,EACE,OAAO,yGAAP;AAEF,SACE,oDAAC,gFAAD,EAAU;AAAC,MAAE,EAAE,KAAK,CAAC,IAAN,CAAW,EAAhB;AAAoB,iBAAa,EAAE,MAAM,CAAC,IAAP,CAAY,YAA/C;AAA6D,aAAS,EAAE,kDAAM,CAAC;AAA/E,GAAV,CADF;AAGD,C;;;;;;;;;;;AC3CD;AACA,kBAAkB,8C","file":"scripts/55.chunk.js","sourcesContent":["import * as React from 'react';\r\n\r\nimport { useSetPageTitle } from 'libs/common/react/hooks/UseSetPageTitle';\r\nimport { Flight } from 'libs/common/flight';\r\nimport { Video, Config } from 'libs/shared/interfaces';\r\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\r\n\r\nimport { VideoRequests } from 'shared/flight-requests/VideoRequests';\r\nimport { WebPlayer } from 'shared/components/web-player/WebPlayer';\r\n\r\nimport styles from './embed.scss';\r\n\r\ninterface EmbedViewProps {\r\n /**\r\n * TODO: Replace id with shortcode. It's just a master id now\r\n * as a placeholder\r\n */\r\n id: string;\r\n autoplay: boolean;\r\n}\r\n\r\nexport function EmbedView(props: EmbedViewProps): JSX.Element {\r\n const video = Flight.useBasicFetch<Video>(VideoRequests.video(props.id));\r\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config);\r\n\r\n useSetPageTitle(video.data?.name);\r\n\r\n /**\r\n * Our body normally has overflow-y: scroll;\r\n * So we need to override it for the embedded play view\r\n */\r\n React.useEffect(() => {\r\n document.body.classList.add('overflow-hidden');\r\n return () => document.body.classList.remove('overflow-hidden');\r\n }, []);\r\n\r\n\r\n if (!video.data || !config.data)\r\n return <></>;\r\n\r\n return (\r\n <WebPlayer id={video.data.id} webPlayerHost={config.data.webPlayerUrl} className={styles.embeddedPlayer} />\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"embeddedPlayer\":\"cv--embeddedPlayer--3kXb6\"};"],"sourceRoot":""}
1
+ {"version":3,"sources":["file://C:/ClickView Projects/@clickview/packages/projects/lite/src/apps/embed/views/embed/EmbedView.tsx","webpack://@clickview/lite/./src/apps/embed/views/embed/embed.scss?911d"],"names":[],"mappings":";;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AAEA;AAEA;AACA;AAEA;AAWM,SAAU,SAAV,CAAoB,KAApB,EAAyC;;;AAC7C,MAAM,KAAK,GAAG,6DAAM,CAAC,aAAP,CAA4B,kFAAa,CAAC,KAAd,CAAoB,KAAK,CAAC,EAA1B,CAA5B,CAAd;AACA,MAAM,MAAM,GAAG,6DAAM,CAAC,aAAP,CAA6B,8FAAc,CAAC,MAA5C,CAAf;AAEA,sGAAe,OAAC,KAAK,CAAC,IAAP,MAAW,IAAX,IAAW,aAAX,GAAW,MAAX,GAAW,GAAE,IAAb,CAAf;AAEA;;;;;AAIA,kDAAgB,YAAK;AACnB,YAAQ,CAAC,IAAT,CAAc,SAAd,CAAwB,GAAxB,CAA4B,iBAA5B;AACA,WAAO;AAAA,aAAM,QAAQ,CAAC,IAAT,CAAc,SAAd,CAAwB,MAAxB,CAA+B,iBAA/B,CAAN;AAAA,KAAP;AACD,GAHD,EAGG,EAHH;AAMA,MAAI,CAAC,KAAK,CAAC,IAAP,IAAe,CAAC,MAAM,CAAC,IAA3B,EACE,OAAO,yGAAP;AAEF,SACE,oDAAC,gFAAD,EAAU;AAAC,MAAE,EAAE,KAAK,CAAC,IAAN,CAAW,EAAhB;AAAoB,iBAAa,EAAE,MAAM,CAAC,IAAP,CAAY,YAA/C;AAA6D,aAAS,EAAE,kDAAM,CAAC;AAA/E,GAAV,CADF;AAGD,C;;;;;;;;;;;AC3CD;AACA,kBAAkB,8C","file":"scripts/55.chunk.js","sourcesContent":["import * as React from 'react';\r\n\r\nimport { useSetPageTitle } from 'libs/common/react/hooks/UseSetPageTitle';\r\nimport { Flight } from 'libs/common/flight';\r\nimport { Video, Config } from 'libs/shared/interfaces';\r\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\r\n\r\nimport { VideoRequests } from 'shared/flight-requests/VideoRequests';\r\nimport { WebPlayer } from 'shared/components/web-player/WebPlayer';\r\n\r\nimport styles from './embed.scss';\r\n\r\ninterface EmbedViewProps {\r\n /**\r\n * TODO: Replace id with shortcode. It's just a master id now\r\n * as a placeholder\r\n */\r\n id: string;\r\n autoplay: boolean;\r\n}\r\n\r\nexport function EmbedView(props: EmbedViewProps): JSX.Element {\r\n const video = Flight.useBasicFetch<Video>(VideoRequests.video(props.id));\r\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config);\r\n\r\n useSetPageTitle(video.data?.name);\r\n\r\n /**\r\n * Our body normally has overflow-y: scroll;\r\n * So we need to override it for the embedded play view\r\n */\r\n React.useEffect(() => {\r\n document.body.classList.add('overflow-hidden');\r\n return () => document.body.classList.remove('overflow-hidden');\r\n }, []);\r\n\r\n\r\n if (!video.data || !config.data)\r\n return <></>;\r\n\r\n return (\r\n <WebPlayer id={video.data.id} webPlayerHost={config.data.webPlayerUrl} className={styles.embeddedPlayer} />\r\n );\r\n}","// extracted by mini-css-extract-plugin\nmodule.exports = {\"embeddedPlayer\":\"cv--embeddedPlayer--3kXb6\"};"],"sourceRoot":""}
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[56],{1309:function(e,n,t){"use strict";t.r(n);var r=t(0),a=t(90),i=t(61),o=t(14),c=t(7),s=t(40),l=t(3),u=t(879),f=t(157),p=t(824),d=t(127);var m=t(1069),y=t(237),b=t(1012),v=t(51),w=t(73),g=t(155),j=t(115),h=t(929);function k(e){var n=e.classification,t=e.videos,a=e.imageCdnUrl,i=e.showMore,o=e.followed,c=g.a.createBannerUrl(n.banner,{fallbackBaseUrl:a,fallbackCategoryName:n.name,type:j.b.Banners},{size:j.a.Small,resizeType:j.c.Cover});return r.createElement("div",{className:"mb-3"},r.createElement(b.a,{classification:n,backgroundUrl:c,getClassificationAppLink:e.appLinks.getClassificationAppLink,followed:o,follow:e.follow,showFollowSpinner:e.showFollowSpinner}),r.createElement(h.a,{playlistId:"0",isUserSignedIn:!0,onSortComplete:function(){},videos:t,getVideoAppLink:e.appLinks.getVideoAppLink,getSeriesAppLink:e.appLinks.getSeriesAppLink}),i&&r.createElement("div",{className:"show-more"},r.createElement(v.a,{className:"info-link",appLink:e.appLinks.getClassificationUpdateAppLink(n)},r.createElement(w.b,{namespace:"contentUpdates.contentUpdatesView",phrase:"showMore",options:{classificationName:n.name}}))))}function S(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function O(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var t=[],r=!0,a=!1,i=void 0;try{for(var o,c=e[Symbol.iterator]();!(r=(o=c.next()).done)&&(t.push(o.value),!n||t.length!==n);r=!0);}catch(e){a=!0,i=e}finally{try{r||null==c.return||c.return()}finally{if(a)throw i}}return t}(e,n)||function(e,n){if(!e)return;if("string"==typeof e)return A(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return A(e,n)}(e,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.")}()}function A(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}t.d(n,"ContentUpdatesView",(function(){return L}));function L(e){var n=O(r.useState({}),2),t=n[0],v=n[1],w=Object(i.useDispatch)(),g=Object(p.a)();Object(y.a)(c.a.getPhrase("contentUpdates.contentUpdatesView","pageTitle"));var j=a().subtract(1,"year").toISOString(),h=a().toISOString(),A=o.a.useBasicFetch(f.a.config),L=o.a.useBasicFetch(m.a.getContentUpdates(j,h)),U=o.a.useBasicFetch(u.a.mySubjectPreferences()),C=[];L.data&&L.data.forEach((function(e){return C.push(e.classificationId)}));var E=function(e,n){var t=Object(i.useDispatch)();return Object(i.useSelector)((function(r){var a;if(!(null===(a=e)||void 0===a?void 0:a.length))return null;for(var i=d.a.uniq(e),c={},s={},l=0;l<i.length;l+=25){var u=i.slice(l,l+25),f=n(u),p=o.a.getResponse(r,f.key);s[l]=!!p.data,p.shouldFetch&&o.a.fetch(t,f),p.data&&p.data.forEach((function(e){return c[e.id]=e}))}return Object.keys(s).every((function(e){return s[e]}))?c:null}))}(C,(function(e){return m.a.getClassifications(e)}));function P(e,n){v((function(n){return Object.assign(Object.assign({},n),S({},e,!0))}));var t=function(){var t,r;v((function(n){return Object.assign(Object.assign({},n),S({},e,!1))})),s.a.logUserAction({id:e,name:null===(t=E[e])||void 0===t?void 0:t.name},{location:l.j.ContentUpdatesClassificationBanner,workflowPhase:l.o.Complete,descriptor:n?l.m.On:l.m.Off,actionType:l.n.Follow,entity:l.d.Classification}),g.success(c.a.getPhrase("contentUpdates.contentUpdatesView",n?"followed":"unfollowed",{classification:null===(r=E[e])||void 0===r?void 0:r.name}))},r=function(){v((function(n){return Object.assign(Object.assign({},n),S({},e,!1))})),g.error(c.a.getPhrase("contentUpdates.contentUpdatesView","error"))},a=n?u.a.followSubjects([e],t,r):u.a.unfollowSubjects([e],t,r);o.a.fetch(w,a)}if(!(L.data&&A.data&&U.data&&E))return r.createElement(r.Fragment,null);var T=function(e,n){return e&&n?e.map((function(e){return{showMore:e.videos.length>3,classification:n[e.classificationId],videos:e.videos.map((function(e){return e.classification=n[e.classificationId],e})).filter((function(e){return e}))}})):null}(L.data,E),I=U.data.map((function(e){return e.id}));return r.createElement("div",{className:"bg-white px-3"},r.createElement(b.c,{dashboardAppLink:e.appLinks.dashboardAppLink}),T.map((function(n){return r.createElement(k,{classification:n.classification,videos:n.videos,imageCdnUrl:A.data.imageCdnUrl,showMore:n.showMore,key:n.classification.id,appLinks:e.appLinks,followed:I.includes(n.classification.id),follow:P,showFollowSpinner:t[n.classification.id]})})))}},879:function(e,n,t){"use strict";t.d(n,"a",(function(){return g}));var r=t(79),a=t(21);function i(e){return function(e){if(Array.isArray(e))return o(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,n){if(!e)return;if("string"==typeof e)return o(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);"Object"===t&&e.constructor&&(t=e.constructor.name);if("Map"===t||"Set"===t)return Array.from(e);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return o(e,n)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function o(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}var c=t(46).a.CLASSIFICATION,s=function(){return"/api/domain/v1/subjects/preferences?query=".concat(c,"&type=subject")},l=function(){return"/api/domain/v1/subjects/classifications/following?query=".concat(c)},u=function(){return"/api/domain/v1/subjects/classifications/following"},f=function(e){return r.a.urlBuilder("/api/domain/v1/subjects/classifications/following",{id:e})},p=function(){return"/api/domain/v1/subjects/audiences?type=subject"},d=function(){return"/api/domain/v1/subjects/audiences/following"},m=function(){return"/api/domain/v1/subjects/audiences/following"},y=function(e){return r.a.urlBuilder("/api/domain/v1/subjects/audiences/following",{id:e})},b=function(e){return"/api/domain/v1/subjects/presentations".concat(e?"?type=".concat(e):"")},v=function(e){return"/api/domain/v1/subjects/presentations/available".concat(e?"?type=".concat(e):"")},w=function(e){return"/api/domain/v1/subjects/presentations/".concat(e)},g={currentPresentations:function(e){return{url:b(e),key:"current:presentations".concat(e?":".concat(e):""),expiryTime:1/0}},availablePresentations:function(e){return{url:v(e),key:"available:presentations:".concat(e),expiryTime:1/0}},setPresentation:function(e,n,t){return{url:w(e.id),key:"set:".concat(n,":presentation"),type:a.a.POST,data:{},invalidationKeys:["current:presentations:".concat(n),"current:presentations","subject:preference:options","my:subject:preferences","level:preference:options","my:level:preferences"],success:t}},allSubjectPreferences:function(){return{url:s(),key:"subject:preference:options",expiryTime:1/0}},mySubjectPreferences:function(e){return{url:l(),key:"my:subject:preferences",normalize:!1,expiryTime:1/0,success:e,formatData:function(e){return e.filter((function(e){return e.canBePreferred}))}}},followSubjects:function(e,n,t,r){return{url:u(),key:"follow:subjects",data:e,type:a.a.POST,success:n,error:t,always:r,invalidationKeys:[].concat(i(e.map((function(e){return"classification:".concat(e)}))),["my:subject:preferences"])}},unfollowSubjects:function(e,n,t,r){return{url:f(e),key:"unfollow:subjects",type:a.a.DELETE,success:n,error:t,always:r,invalidationKeys:[].concat(i(e.map((function(e){return"classification:".concat(e)}))),["my:subject:preferences"])}},allLevelPreferences:function(){return{url:p(),key:"level:preference:options",normalize:!1,expiryTime:1/0}},myLevelPreferences:function(e){return{url:d(),key:"my:level:preferences",normalize:!1,expiryTime:1/0,success:e}},followLevels:function(e,n,t,r){return{url:m(),key:"follow:levels",data:e,type:a.a.POST,success:n,error:t,always:r,invalidationKeys:["my:level:preferences"]}},unfollowLevels:function(e,n,t,r){return{url:y(e),key:"unfollow:levels",type:a.a.DELETE,success:n,error:t,always:r,invalidationKeys:["my:level:preferences"]}}}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[57],{1277:function(e,t,n){"use strict";n.r(t),n.d(t,"DeleteClassroomGroupView",(function(){return h}));var r=n(0),o=n.n(r),a=n(61),c=n(14),i=n(7),u=n(238),s=n(824),l=n(243),p=n(73),f=n(241),m=n(40);function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,a=void 0;try{for(var c,i=e[Symbol.iterator]();!(r=(c=i.next()).done)&&(n.push(c.value),!t||n.length!==t);r=!0);}catch(e){o=!0,a=e}finally{try{r||null==i.return||i.return()}finally{if(o)throw a}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var g="classrooms.deleteClassroomGroup",y=i.a.encloseNamespace(g);function h(e){var t=d(o.a.useState(!1),2),n=t[0],r=t[1],i=c.a.useBasicFetch(f.a.getClassroom(e.classroomId)),b=Object(a.useDispatch)(),h=Object(s.a)(),v=i.data?i.data.groups.find((function(t){return t.id===e.groupId})):null;return o.a.createElement(u.a,{title:y("title"),showLoadingSpinner:!v,closePopup:e.closePopup},o.a.createElement("p",null,o.a.createElement(p.b,{namespace:g,phrase:"areYouSure",options:{name:v.name}})),o.a.createElement(l.a,{buttons:[{variant:"link",onClick:e.closePopup,buttonText:y("cancel")},{variant:"danger",onClick:function(){r(!0),c.a.fetch(b,f.a.deleteGroup(e.groupId,e.classroomId,(function(){r(!1),m.a.logUserAction({groupId:e.groupId},e.analyticsOptions),h.success(y("success",{name:v.name})),e.closePopup()}),(function(){h.success(y("error",{name:v.name}))})))},buttonText:y("delete"),isSpinnerButton:!0,showSpinner:n}]}))}},824:function(e,t,n){"use strict";n.d(t,"a",(function(){return c}));var r=n(153),o=n(48),a=n(52),c=function(){var e=Object(r.a)(a.a.ALERT);return{success:function(t){e.success(t)()},error:function(t){e.error(t)()},warning:function(t){e.createAlert({type:o.a.Warning,heading:o.c.Warning,message:t})}}}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[58],{1272:function(e,t,n){"use strict";n.r(t),n.d(t,"DeleteClassroomView",(function(){return v}));var r=n(0),a=n.n(r),o=n(61),i=n(7),c=n(14),s=n(238),u=n(824),l=n(243),f=n(73),m=n(241),p=n(40);function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,a=!1,o=void 0;try{for(var i,c=e[Symbol.iterator]();!(r=(i=c.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(e){a=!0,o=e}finally{try{r||null==c.return||c.return()}finally{if(a)throw o}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var y=i.a.encloseNamespace("classrooms.deleteClassroom");function v(e){var t=d(a.a.useState(!1),2),n=t[0],r=t[1],i=Object(o.useDispatch)(),b=Object(u.a)(),v=c.a.useBasicFetch(m.a.getClassroom(e.id));var h=n||!v.data;return a.a.createElement(s.a,{title:y("title"),closePopup:e.closePopup,showLoadingSpinner:h},v.data&&a.a.createElement(a.a.Fragment,null,a.a.createElement("p",null,a.a.createElement(f.b,{namespace:"classrooms.deleteClassroom",phrase:"confirmation",options:{name:v.data.name}})),a.a.createElement(l.a,{buttons:[{variant:"link",onClick:e.closePopup,buttonText:y("cancel")},{variant:"danger",onClick:function(){r(!0),c.a.fetch(i,m.a.deleteClassroom(e.id,(function(){r(!1),p.a.logUserAction({id:e.id},e.analyticsOptions),b.success(y("success",{name:v.data.name})),e.closePopup()})))},buttonText:y("remove"),isSpinnerButton:!0,showSpinner:n}]})))}},824:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var r=n(153),a=n(48),o=n(52),i=function(){var e=Object(r.a)(o.a.ALERT);return{success:function(t){e.success(t)()},error:function(t){e.error(t)()},warning:function(t){e.createAlert({type:a.a.Warning,heading:a.c.Warning,message:t})}}}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[59],{1274:function(t,e,n){"use strict";n.r(e),n.d(e,"RemoveStudentsFromClassroomView",(function(){return h}));var r=n(0),a=n.n(r),o=n(61),s=n(7),c=n(14),i=n(238),u=n(243),l=n(73),m=n(824),d=n(241),f=n(40);function p(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(t)))return;var n=[],r=!0,a=!1,o=void 0;try{for(var s,c=t[Symbol.iterator]();!(r=(s=c.next()).done)&&(n.push(s.value),!e||n.length!==e);r=!0);}catch(t){a=!0,o=t}finally{try{r||null==c.return||c.return()}finally{if(a)throw o}}return n}(t,e)||function(t,e){if(!t)return;if("string"==typeof t)return v(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return v(t,e)}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function v(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var b="classrooms.removeStudentsFromClassroom",y=s.a.encloseNamespace(b);function h(t){var e,n=p(a.a.useState(!1),2),r=n[0],s=n[1],v=c.a.useBasicFetch(d.a.getClassroom(t.classroomId)),h=Object(o.useDispatch)(),g=Object(m.a)(),w={smartCount:t.studentIds.length,classroomName:null===(e=v.data)||void 0===e?void 0:e.name};var S=v.data?y("title",w):"";return a.a.createElement(i.a,{title:S,closePopup:t.closePopup,showLoadingSpinner:!v.data},v.data&&a.a.createElement(a.a.Fragment,null,a.a.createElement("p",null,a.a.createElement(l.b,{namespace:b,phrase:"confirm",options:w})),a.a.createElement(u.a,{buttons:[{variant:"link",onClick:t.closePopup,buttonText:y("cancel")},{variant:"danger",onClick:function(){s(!0),c.a.fetch(h,d.a.removeStudents(t.studentIds,t.classroomId,(function(){s(!1),f.a.logUserAction({id:t.classroomId,studentCount:t.studentIds.length},t.analyticsOptions),g.success(y("success",w)),t.closePopup()})))},buttonText:y("remove"),isSpinnerButton:!0,showSpinner:r}]})))}},824:function(t,e,n){"use strict";n.d(e,"a",(function(){return s}));var r=n(153),a=n(48),o=n(52),s=function(){var t=Object(r.a)(o.a.ALERT);return{success:function(e){t.success(e)()},error:function(e){t.error(e)()},warning:function(e){t.createAlert({type:a.a.Warning,heading:a.c.Warning,message:e})}}}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp_clickview_lite=window.webpackJsonp_clickview_lite||[]).push([[6],{1072:function(t,n,e){"use strict";e.d(n,"a",(function(){return o}));var a=e(0),r=e(35);function o(t,n,e){var o=function(){e||(window.innerHeight+document.documentElement.scrollTop<document.documentElement.scrollHeight-400||t())};Object(a.useEffect)((function(){var t=r.a.throttle(o,200);return n&&window.addEventListener("scroll",t),function(){return window.removeEventListener("scroll",t)}}),[n])}},1073:function(t,n,e){"use strict";e.d(n,"a",(function(){return r}));var a=e(0);function r(t){var n=t.imageUrl,e=t.heading,r=t.description;return a.createElement("div",{className:"empty-state-container"},a.createElement("div",{className:"content-container"},n&&a.createElement("img",{src:n}),a.createElement("h1",null,e),r&&a.createElement("p",{dangerouslySetInnerHTML:{__html:r}})))}},1074:function(t,n,e){"use strict";e.d(n,"a",(function(){return l}));var a=e(0),r=e(33),o=e(55),i=e(13),c=e(1251),s=e.n(c);function l(t){return a.createElement("div",{className:"p-3 text-center ".concat(s.a.container)},t.isFetching?a.createElement(r.Spinner,{as:"span",animation:"border",role:"status",className:s.a.spinner}):a.createElement(o.a,{svgName:i.b.ChevronDown,className:"svg-container cursor-pointer",size:o.b.Large,onClick:t.onClick}))}},1251:function(t,n,e){t.exports={container:"_1_KC6",spinner:"VXlcl"}},827:function(t,n,e){t.exports={buttonList:"_2v9CT",dropdownToggle:"AYBvQ"}},828:function(t,n,e){"use strict";var a=e(0),r=e(33),o=e(240),i=e(40),c=e(55),s=e(51),l=e(13),u=e(827),p=e.n(u),f=e(35);function y(t){var n="dropdown-item";return t&&(n+=" ".concat(t)),n}function d(t){if(t.action.appLink)return a.createElement(s.a,{appLink:t.action.appLink,onClick:t.action.onClick,className:y(t.action.className),analyticsData:t.action.analyticsData,analyticsOptions:t.action.analyticsOptions},t.action.label);return a.createElement("span",{className:"cursor-pointer ".concat(y(t.action.className)),onClick:function(n){t.action.analyticsData&&t.action.analyticsOptions&&i.a.logUserAction(t.action.analyticsData,t.action.analyticsOptions),f.a.isFunction(t.action.onClick)&&t.action.onClick(n)}},t.action.label)}function m(t){if(!t.actions||!t.actions.length)return a.createElement(a.Fragment,null);var n="actions-dropdown-".concat(o.a.getRandomInt()),e="px-0 ".concat(p.a.dropdownToggle);return t.dropdownToggleClassName&&(e+=" ".concat(t.dropdownToggleClassName)),a.createElement(r.Dropdown,{className:t.className?t.className:"",alignRight:!0},a.createElement(r.Dropdown.Toggle,{as:"button",type:"button",id:n,className:e},a.createElement(c.a,{svgName:l.b.More,size:c.b.Small})),a.createElement(r.Dropdown.Menu,null,t.actions.map((function(t,n){return a.createElement(d,{key:n,action:t})}))))}m.defaultProps={dropdownToggleClassName:"btn btn-light"};var v=e(235),g=e(156);function b(t){var n="ml-2";t.className&&(n+=" ".concat(t.className));var e=t.showSpinner?a.createElement(r.Spinner,{as:"span",animation:"border",role:"status",size:"sm"}):t.children;if(t.tooltip)return a.createElement(g.a,{title:t.tooltip},a.createElement(v.a,{appLink:t.appLink,svgName:t.svgName,onClick:t.onClick,className:n,analyticsData:t.analyticsData,analyticsOptions:t.analyticsOptions},e));if(t.svgName)return a.createElement(v.a,{onClick:t.onClick,appLink:t.appLink,svgName:t.svgName,className:n,analyticsData:t.analyticsData,analyticsOptions:t.analyticsOptions},e);if(t.appLink)return a.createElement(s.a,{onClick:t.onClick,appLink:t.appLink,className:n,analyticsData:t.analyticsData,analyticsOptions:t.analyticsOptions},e);return a.createElement("button",{onClick:function(n){t.analyticsData&&t.analyticsOptions&&i.a.logUserAction(t.analyticsData,t.analyticsOptions),f.a.isFunction(t.onClick)&&t.onClick(n)},className:n},e)}function h(t){var n=[],e=[];t.actions.forEach((function(t){t.button?n.push(t):e.push(t)}));var r="d-flex";return t.className&&(r+=" ".concat(t.className)),a.createElement("div",{className:r},a.createElement(a.Fragment,null,!!n.length&&a.createElement("span",{className:p.a.buttonList},n.map((function(t,n){return a.createElement(a.Fragment,{key:n},t.label?a.createElement(b,{appLink:t.appLink,onClick:t.onClick,svgName:t.svgName,className:t.className,tooltip:t.tooltip,showSpinner:t.showSpinner,analyticsData:t.analyticsData,analyticsOptions:t.analyticsOptions},t.label):a.createElement(v.a,{appLink:t.appLink,onClick:t.onClick,svgName:t.svgName,className:t.className,analyticsData:t.analyticsData,analyticsOptions:t.analyticsOptions}))}))),t.sortComponent?t.sortComponent:"",!!e.length&&a.createElement(m,{actions:e,className:!!n.length&&"ml-2",dropdownToggleClassName:t.actionsDropdownClassName})))}e.d(n,"a",(function(){return h}))},838:function(t,n,e){"use strict";e.d(n,"a",(function(){return y}));var a=e(244),r=e(85),o=e(865);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function c(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}function s(t,n){for(var e=0;e<n.length;e++){var a=n[e];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(t,a.key,a)}}function l(t,n){return(l=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}function u(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}();return function(){var e,a=f(t);if(n){var r=f(this).constructor;e=Reflect.construct(a,arguments,r)}else e=a.apply(this,arguments);return p(this,e)}}function p(t,n){return!n||"object"!==i(n)&&"function"!=typeof n?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):n}function f(t){return(f=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var y=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&l(t,n)}(p,t);var n,e,a,i=u(p);function p(){var t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:r.a.Newest,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:o.a.OwnedByMe;return c(this,p),(t=i.call(this,{collectionPrefix:"user:playlists",cursor:e,sort:n})).type=a,t}return n=p,(e=[{key:"toString",value:function(){return[this.collectionPrefix,this.sort,this.cursor,this.type].filter(Boolean).join(":")}}])&&s(n.prototype,e),a&&s(n,a),p}(a.a)},861:function(t,n,e){"use strict";var a=e(21),r=e(46),o=e(864);e(838);function i(t){return(i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function c(t,n){if(!(t instanceof n))throw new TypeError("Cannot call a class as a function")}function s(t,n){return(s=Object.setPrototypeOf||function(t,n){return t.__proto__=n,t})(t,n)}function l(t){var n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}();return function(){var e,a=p(t);if(n){var r=p(this).constructor;e=Reflect.construct(a,arguments,r)}else e=a.apply(this,arguments);return u(this,e)}}function u(t,n){return!n||"object"!==i(n)&&"function"!=typeof n?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):n}function p(t){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}var f,y=function(t){!function(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(n&&n.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),n&&s(t,n)}(e,t);var n=l(e);function e(t){var a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return c(this,e),n.call(this,{collectionPrefix:"playlist:videos",id:t,cursor:a})}return e}(e(244).a);!function(t){t[t.Queued=1]="Queued",t[t.Processing=2]="Processing",t[t.Processed=3]="Processed",t[t.Errored=4]="Errored"}(f||(f={}));var d=function(t,n){return function(e){var a=Object.assign({},e);return a.hasOwnProperty(t)&&(a[t]=Object.assign(Object.assign({},a[t]),n)),a}},m=function(t){return function(n){var e=Object.assign({},n);return e.hasOwnProperty(t)&&delete e[t],e}},v=function(t,n){return function(e){var a=Object.assign({},e);return a.hasOwnProperty(t)?(a[t].videos||(a[t].videos={}),a[t].videos.count=a[t].videos.count?a[t].videos.count+n:n,a):e}};e.d(n,"a",(function(){return w}));var g=function(t){return t?"&cursor=".concat(t):""},b=function(t){return Number.isInteger(t)?"&maxRatingValue=".concat(t):""},h=function(t,n){return"".concat(t).concat(n?":".concat(n):"")},w={getPlaylist:function(t,n,e){return{url:"/api/domain/v2/objects/".concat(t,"?query=").concat(r.a.PLAYLIST),key:"playlist:".concat(t),success:n,error:e}},getSharedPlaylist:function(t,n,e,a){var o="/api/domain/v2/share/".concat(t);return{url:"".concat(o,"?query=").concat(r.a.PLAYLIST).concat(b(n)),key:"shared:playlist:".concat(t),success:e,error:a}},getUserPlaylists:function(t){var n=t.sort,e=t.type;return{url:"/api/domain/v2/me/playlists/".concat(e,"?sort=").concat(n,"&query={limit:100}")+"".concat(r.a.PLAYLIST_COLLECTION).concat(g(t.cursor)),key:t.toString()}},getPlaylistVideos:function(t,n,e){var a="orderBy:orderindex,limit:100";return Number.isInteger(n)&&(a+=",rating.value:0...".concat(n)),{url:"/api/domain/v2/objects/".concat(t,"/videos?query={").concat(a,"}")+"".concat(r.a.VIDEO_COLLECTION).concat(g(e)),key:h("playlist:".concat(t,":videos"),e)}},getSharedPlaylistVideos:function(t,n,e){return{url:"/api/domain/v2/share/".concat(t,"/videos?query={orderBy:orderindex,limit:100}")+"".concat(r.a.SHARED_PLAYLIST_VIDEO_COLLECTION)+"".concat(g(e)).concat(b(n)),key:h("shared:playlist:".concat(t,":videos"),e)}},getVideoPlaylists:function(t,n,e){return{url:"/api/domain/v2/objects/".concat(t,"/playlists?query={limit:100,owner.id:[").concat(n,"]}"),key:h("video:playlists:".concat(t),e)}},createPlaylist:function(t,n,e,r){return{key:"create:playlist",url:"/api/domain/v2/objects/".concat(t,"/playlists"),data:n,type:a.a.POST,success:e,error:r,invalidationKeys:"user:playlists"}},updatePlaylist:function(t,n,e,r){return{key:"update:playlist",url:"/api/domain/v2/objects/".concat(t),data:n,type:a.a.PUT,success:e,error:r,updateState:{keys:"playlist:".concat(t),updateData:d("playlist:".concat(t),n)}}},deletePlaylist:function(t,n,e){return{key:"delete:playlist",url:"/api/domain/v2/objects/".concat(t),type:a.a.DELETE,success:n,error:e,invalidationKeys:"user:playlists",updateState:{keys:"playlist:".concat(t),updateData:m("playlist:".concat(t))}}},addToPlaylist:function(t,n,e,r){var o=["user:playlists",new y(t).toString()];return n.forEach((function(t){o.push("video:playlists:".concat(t))})),{key:"add:to:playlist",url:"/api/domain/v2/objects/".concat(t,"/associate"),data:n,type:a.a.POST,success:e,error:r,invalidationKeys:o,updateState:{keys:"playlist:".concat(t),updateData:v("playlist:".concat(t),n.length)}}},reorderVideos:function(t,n,e,r){return{key:"reorder:playlist",url:"/api/domain/v2/objects/".concat(t,"/videos/reorder"),data:n,type:a.a.PUT,success:e,error:r,invalidationKeys:"user:playlists",updateState:{keys:"playlist:".concat(t,":videos"),updateData:function(e){return o.a.updateState("playlist:".concat(t,":videos"),n,e)}}}},removePlaylistVideo:function(t,n,e,r){return{key:"remove:playlist:video",url:"/api/domain/v2/objects/".concat(t,"/dissociate?memberId=").concat(n),type:a.a.DELETE,success:e,error:r,invalidationKeys:["user:playlists","playlist:".concat(t,":videos")]}},getIsFollowingPlaylist:function(t,n){return{url:"/api/domain/v2/objects/".concat(n,"/followedPlaylists?query={id:").concat(t,"}"),key:"playlist:".concat(t,":following:").concat(n),formatData:function(n){var e,a;return{objectId:t,isFollowing:!!(null===(a=null===(e=n)||void 0===e?void 0:e.data)||void 0===a?void 0:a.length)}},normalize:!1}},followPlaylist:function(t,n,e,r,o){return{url:"/api/domain/v2/objects/".concat(n),key:"follow:playlist:".concat(t),data:{followedPlaylists:t},type:a.a.PUT,invalidationKeys:["user:playlists","playlist:".concat(t,":following:").concat(n)],success:e,error:r,always:o}},unfollowPlaylist:function(t,n,e,r,o){return{url:"/api/domain/v2/objects/".concat(n,"/followedplaylists/").concat(t),key:"unfollow:playlist:".concat(t),type:a.a.DELETE,invalidationKeys:["user:playlists","playlist:".concat(t,":following:").concat(n)],success:e,error:r,always:o}},getPlaylistPrivacy:function(t){return{key:"playlist:privacy:".concat(t),url:"/api/domain/v1/playlists/".concat(t,"/privacy"),formatData:function(n){return{id:t,privacy:n}}}},updatePlaylistPrivacy:function(t,n,e,r,o){return{key:"update:playlist:privacy:".concat(t),url:"/api/domain/v1/playlists/".concat(t,"/privacy"),type:a.a.PUT,data:{privacy:n},formatData:function(){return{id:t,privacy:n}},success:e,error:r,always:o}},getMigrationTask:function(t,n){return{url:"/api/playlist-app/migration-task",key:"migration:task",formatData:function(t){return t||{status:f.Processed}},success:t,error:n}}}},864:function(t,n,e){"use strict";e.d(n,"a",(function(){return c}));var a=e(127),r=e(57);function o(t){return function(t){if(Array.isArray(t))return i(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||function(t,n){if(!t)return;if("string"==typeof t)return i(t,n);var e=Object.prototype.toString.call(t).slice(8,-1);"Object"===e&&t.constructor&&(e=t.constructor.name);if("Map"===e||"Set"===e)return Array.from(t);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return i(t,n)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(t,n){(null==n||n>t.length)&&(n=t.length);for(var e=0,a=new Array(n);e<n;e++)a[e]=t[e];return a}var c={reorder:function(t,n,e){if(n===e)return{reorderedItems:t,reorderRequest:null};var r=a.a.moveItem(t,n,e),o=e<t.length-1?r[e+1].id:null;return{reorderedItems:r,reorderRequest:{sourceMemberId:r[e].id,destinationMemberId:o}}},updateState:function(t,n,e){for(var i=[],c=r.a.deepClone(e),s=[t],l=e[t],u=!!l&&!!l.data&&l.data.length;l&&Array.isArray(l.data);){i.push.apply(i,o(l.data));var p=l.pagination&&l.pagination.cursors&&l.pagination.cursors.next,f=!!p&&"".concat(t,":").concat(p);(l=p&&e[f])&&s.push(f)}if(!i.length)return e;var y=a.a.findIndex(i,(function(t){return t.id===n.sourceMemberId})),d=[].concat(i),m=d.splice(y,1),v=n.destinationMemberId?a.a.findIndex(d,(function(t){return t.id===n.destinationMemberId})):d.length;return d.splice(v,0,m[0]),s.forEach((function(t){var n=d.splice(0,u);c[t].data=n})),c}}},865:function(t,n,e){"use strict";var a;e.d(n,"a",(function(){return a})),function(t){t.OwnedByMe="owned_by_me",t.Followed="followed",t.All="all"}(a||(a={}))},933:function(t,n,e){"use strict";e.d(n,"a",(function(){return u}));var a=e(0),r=e(61),o=e(14),i=e(35);function c(t){return function(t){if(Array.isArray(t))return s(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||function(t,n){if(!t)return;if("string"==typeof t)return s(t,n);var e=Object.prototype.toString.call(t).slice(8,-1);"Object"===e&&t.constructor&&(e=t.constructor.name);if("Map"===e||"Set"===e)return Array.from(t);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return s(t,n)}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function s(t,n){(null==n||n>t.length)&&(n=t.length);for(var e=0,a=new Array(n);e<n;e++)a[e]=t[e];return a}var l=function(t){return t&&t.data&&t.data.pagination&&t.data.pagination.cursors&&t.data.pagination.cursors.next};function u(t){return Object(r.useSelector)(Object(a.useMemo)((function(){return function(n){for(var e=t,a=i.a.isFunction(t)&&o.a.getResponse(n,e()),r=a&&a.isFetching,s=a&&a.shouldFetch,u=a&&a.data&&a.data.data,p=l(a);p&&(r=(a=o.a.getResponse(n,e(p))).isFetching,!a.shouldFetch);){var f=a.data&&a.data.data;f&&u.push.apply(u,c(f)),p=l(a)}return{shouldInitialFetch:s,items:u,nextCursor:p,isFetching:r}}}),[t]))}}}]);