@clickview/lite 0.57.2-rc.2 → 0.57.3-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/dist/bundles.json +1 -1
  2. package/dist/css/{3137-lite-7da84a8e68.chunk.css → 3137-lite-8afb370875.chunk.css} +1 -1
  3. package/dist/scripts/{1125-a24f83a3f3-lite.chunk.js → 1125-0e659106d9-lite.chunk.js} +2 -2
  4. package/dist/scripts/{1125-a24f83a3f3-lite.chunk.js.map → 1125-0e659106d9-lite.chunk.js.map} +1 -1
  5. package/dist/scripts/{1340-3f5e7d4623-lite.chunk.js → 1340-c78a7acd0d-lite.chunk.js} +2 -2
  6. package/dist/scripts/{1340-3f5e7d4623-lite.chunk.js.map → 1340-c78a7acd0d-lite.chunk.js.map} +1 -1
  7. package/dist/scripts/{154-81a4eabaae-lite.chunk.js → 154-fa5b45d1bf-lite.chunk.js} +2 -2
  8. package/dist/scripts/{154-81a4eabaae-lite.chunk.js.map → 154-fa5b45d1bf-lite.chunk.js.map} +1 -1
  9. package/dist/scripts/{1913-6a6bb3f16f-lite.chunk.js → 1913-6a7d99b96f-lite.chunk.js} +2 -2
  10. package/dist/scripts/{1913-6a6bb3f16f-lite.chunk.js.map → 1913-6a7d99b96f-lite.chunk.js.map} +1 -1
  11. package/dist/scripts/1958-cf5dd56576-lite.chunk.js +2 -0
  12. package/dist/scripts/{1958-31e6049ac7-lite.chunk.js.map → 1958-cf5dd56576-lite.chunk.js.map} +1 -1
  13. package/dist/scripts/{209-4a322eae44-lite.chunk.js → 209-396b9a7f13-lite.chunk.js} +2 -2
  14. package/dist/scripts/{209-4a322eae44-lite.chunk.js.map → 209-396b9a7f13-lite.chunk.js.map} +1 -1
  15. package/dist/scripts/2182-a5652609bb-lite.chunk.js +2 -0
  16. package/dist/scripts/2182-a5652609bb-lite.chunk.js.map +1 -0
  17. package/dist/scripts/{2208-a9d679d40c-lite.chunk.js → 2208-5fed507ca8-lite.chunk.js} +2 -2
  18. package/dist/scripts/{2208-a9d679d40c-lite.chunk.js.map → 2208-5fed507ca8-lite.chunk.js.map} +1 -1
  19. package/dist/scripts/{2402-2d435f7027-lite.chunk.js → 2402-300aa81eaf-lite.chunk.js} +2 -2
  20. package/dist/scripts/{2402-2d435f7027-lite.chunk.js.map → 2402-300aa81eaf-lite.chunk.js.map} +1 -1
  21. package/dist/scripts/{3137-51febcedd6-lite.chunk.js → 3137-00d0d09d82-lite.chunk.js} +2 -2
  22. package/dist/scripts/{3137-51febcedd6-lite.chunk.js.map → 3137-00d0d09d82-lite.chunk.js.map} +1 -1
  23. package/dist/scripts/338-5c6ffa41bb-lite.chunk.js +3 -0
  24. package/dist/scripts/338-5c6ffa41bb-lite.chunk.js.map +1 -0
  25. package/dist/scripts/{3962-6bfcebace6-lite.chunk.js → 3962-eaa18d5ab6-lite.chunk.js} +2 -2
  26. package/dist/scripts/{3962-6bfcebace6-lite.chunk.js.map → 3962-eaa18d5ab6-lite.chunk.js.map} +1 -1
  27. package/dist/scripts/{4395-389855e87f-lite.chunk.js → 4395-9d987fe2e6-lite.chunk.js} +2 -2
  28. package/dist/scripts/{4395-389855e87f-lite.chunk.js.map → 4395-9d987fe2e6-lite.chunk.js.map} +1 -1
  29. package/dist/scripts/{4591-1e137b9a3f-lite.chunk.js → 4591-19ee265d34-lite.chunk.js} +2 -2
  30. package/dist/scripts/4591-19ee265d34-lite.chunk.js.map +1 -0
  31. package/dist/scripts/{467-baec908c73-lite.chunk.js → 467-1550deaaa1-lite.chunk.js} +2 -2
  32. package/dist/scripts/{467-baec908c73-lite.chunk.js.map → 467-1550deaaa1-lite.chunk.js.map} +1 -1
  33. package/dist/scripts/5157-9396b0580d-lite.chunk.js +2 -0
  34. package/dist/scripts/{5157-b1d38e123c-lite.chunk.js.map → 5157-9396b0580d-lite.chunk.js.map} +1 -1
  35. package/dist/scripts/{528-0e18ce97a9-lite.chunk.js → 528-3120366abc-lite.chunk.js} +2 -2
  36. package/dist/scripts/{528-0e18ce97a9-lite.chunk.js.map → 528-3120366abc-lite.chunk.js.map} +1 -1
  37. package/dist/scripts/{5376-6e993d6097-lite.chunk.js → 5376-38456da0db-lite.chunk.js} +3 -3
  38. package/dist/scripts/{5376-6e993d6097-lite.chunk.js.map → 5376-38456da0db-lite.chunk.js.map} +1 -1
  39. package/dist/scripts/{6263-c6ce662fc3-lite.chunk.js → 6263-c665ac8df6-lite.chunk.js} +2 -2
  40. package/dist/scripts/{6263-c6ce662fc3-lite.chunk.js.map → 6263-c665ac8df6-lite.chunk.js.map} +1 -1
  41. package/dist/scripts/{6290-dd18f6a50a-lite.chunk.js → 6290-a295d749c3-lite.chunk.js} +2 -2
  42. package/dist/scripts/{6290-dd18f6a50a-lite.chunk.js.map → 6290-a295d749c3-lite.chunk.js.map} +1 -1
  43. package/dist/scripts/{6480-9f3dc79b38-lite.chunk.js → 6480-03513bbd54-lite.chunk.js} +2 -2
  44. package/dist/scripts/{6480-9f3dc79b38-lite.chunk.js.map → 6480-03513bbd54-lite.chunk.js.map} +1 -1
  45. package/dist/scripts/{7112-ea440dfba0-lite.chunk.js → 7112-2e77a3e7af-lite.chunk.js} +3 -3
  46. package/dist/scripts/{7112-ea440dfba0-lite.chunk.js.map → 7112-2e77a3e7af-lite.chunk.js.map} +1 -1
  47. package/dist/scripts/{7178-c592da7054-lite.chunk.js → 7178-f3794c1ee5-lite.chunk.js} +2 -2
  48. package/dist/scripts/{7178-c592da7054-lite.chunk.js.map → 7178-f3794c1ee5-lite.chunk.js.map} +1 -1
  49. package/dist/scripts/{775-b6cb8f1808-lite.chunk.js → 775-d6b0a7afbd-lite.chunk.js} +3 -3
  50. package/dist/scripts/{775-b6cb8f1808-lite.chunk.js.map → 775-d6b0a7afbd-lite.chunk.js.map} +1 -1
  51. package/dist/scripts/823-0a1356d38c-lite.chunk.js +2 -0
  52. package/dist/scripts/823-0a1356d38c-lite.chunk.js.map +1 -0
  53. package/dist/scripts/{8489-7779fd40b3-lite.chunk.js → 8489-88ab052e8c-lite.chunk.js} +3 -3
  54. package/dist/scripts/{8489-7779fd40b3-lite.chunk.js.map → 8489-88ab052e8c-lite.chunk.js.map} +1 -1
  55. package/dist/scripts/{8722-095bf62b96-lite.chunk.js → 8722-ed6103f3e4-lite.chunk.js} +2 -2
  56. package/dist/scripts/{8722-095bf62b96-lite.chunk.js.map → 8722-ed6103f3e4-lite.chunk.js.map} +1 -1
  57. package/dist/scripts/{8905-46d89811eb-lite.chunk.js → 8905-799dc47805-lite.chunk.js} +2 -2
  58. package/dist/scripts/{8905-46d89811eb-lite.chunk.js.map → 8905-799dc47805-lite.chunk.js.map} +1 -1
  59. package/dist/scripts/{8935-2bb61f918c-lite.chunk.js → 8935-38d780c423-lite.chunk.js} +3 -3
  60. package/dist/scripts/{8935-2bb61f918c-lite.chunk.js.map → 8935-38d780c423-lite.chunk.js.map} +1 -1
  61. package/dist/scripts/{9118-20d1a60a52-lite.chunk.js → 9118-c769eeb11a-lite.chunk.js} +2 -2
  62. package/dist/scripts/{9118-20d1a60a52-lite.chunk.js.map → 9118-c769eeb11a-lite.chunk.js.map} +1 -1
  63. package/dist/scripts/{9230-77ff8b16ac-lite.chunk.js → 9230-1ffbf1807e-lite.chunk.js} +3 -3
  64. package/dist/scripts/{9230-77ff8b16ac-lite.chunk.js.map → 9230-1ffbf1807e-lite.chunk.js.map} +1 -1
  65. package/dist/scripts/{9614-2bca60768e-lite.chunk.js → 9614-6e5babb89a-lite.chunk.js} +2 -2
  66. package/dist/scripts/{9614-2bca60768e-lite.chunk.js.map → 9614-6e5babb89a-lite.chunk.js.map} +1 -1
  67. package/dist/scripts/{9719-0e59bf30a5-lite.chunk.js → 9719-28c14a0783-lite.chunk.js} +3 -3
  68. package/dist/scripts/{9719-0e59bf30a5-lite.chunk.js.map → 9719-28c14a0783-lite.chunk.js.map} +1 -1
  69. package/dist/scripts/{bundle-fb8200eefd.min.js → bundle-b25c09d3e8.min.js} +3 -3
  70. package/dist/scripts/{bundle-fb8200eefd.min.js.map → bundle-b25c09d3e8.min.js.map} +1 -1
  71. package/package.json +1 -1
  72. package/dist/scripts/1958-31e6049ac7-lite.chunk.js +0 -2
  73. package/dist/scripts/2182-aa9aca3196-lite.chunk.js +0 -2
  74. package/dist/scripts/2182-aa9aca3196-lite.chunk.js.map +0 -1
  75. package/dist/scripts/338-8b4fba84c0-lite.chunk.js +0 -3
  76. package/dist/scripts/338-8b4fba84c0-lite.chunk.js.map +0 -1
  77. package/dist/scripts/4591-1e137b9a3f-lite.chunk.js.map +0 -1
  78. package/dist/scripts/5157-b1d38e123c-lite.chunk.js +0 -2
  79. package/dist/scripts/823-697bd66d4d-lite.chunk.js +0 -2
  80. package/dist/scripts/823-697bd66d4d-lite.chunk.js.map +0 -1
  81. /package/dist/scripts/{3137-51febcedd6-lite.chunk.js.LICENSE.txt → 3137-00d0d09d82-lite.chunk.js.LICENSE.txt} +0 -0
  82. /package/dist/scripts/{338-8b4fba84c0-lite.chunk.js.LICENSE.txt → 338-5c6ffa41bb-lite.chunk.js.LICENSE.txt} +0 -0
  83. /package/dist/scripts/{5376-6e993d6097-lite.chunk.js.LICENSE.txt → 5376-38456da0db-lite.chunk.js.LICENSE.txt} +0 -0
  84. /package/dist/scripts/{7112-ea440dfba0-lite.chunk.js.LICENSE.txt → 7112-2e77a3e7af-lite.chunk.js.LICENSE.txt} +0 -0
  85. /package/dist/scripts/{775-b6cb8f1808-lite.chunk.js.LICENSE.txt → 775-d6b0a7afbd-lite.chunk.js.LICENSE.txt} +0 -0
  86. /package/dist/scripts/{8489-7779fd40b3-lite.chunk.js.LICENSE.txt → 8489-88ab052e8c-lite.chunk.js.LICENSE.txt} +0 -0
  87. /package/dist/scripts/{8935-2bb61f918c-lite.chunk.js.LICENSE.txt → 8935-38d780c423-lite.chunk.js.LICENSE.txt} +0 -0
  88. /package/dist/scripts/{9230-77ff8b16ac-lite.chunk.js.LICENSE.txt → 9230-1ffbf1807e-lite.chunk.js.LICENSE.txt} +0 -0
  89. /package/dist/scripts/{9719-0e59bf30a5-lite.chunk.js.LICENSE.txt → 9719-28c14a0783-lite.chunk.js.LICENSE.txt} +0 -0
  90. /package/dist/scripts/{bundle-fb8200eefd.min.js.LICENSE.txt → bundle-b25c09d3e8.min.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"scripts/6480-9f3dc79b38-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/sign-up/components/general/existing-account-sign-in/ExistingAccountSignIn.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/footer/onboarding-footer.scss","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/footer/OnboardingFooter.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/topic-preferences/subject-preference-grid/SubjectPreferenceGrid.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/topic-preferences/subject-preference-item/SubjectPreferenceItem.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/preference-item.scss","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItemStatus.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItem.tsx","file:///app/packages/libs/shared/src/apps/subjects/contexts/TopicPreferencesContext.ts","file:///app/packages/libs/shared/src/hooks/UseGetMediaQueryString.ts","file:///app/packages/projects/lite/src/shared/views/welcome-popup/welcome-popup.scss","file:///app/packages/projects/lite/src/shared/views/welcome-popup/WelcomePopupView.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/topic-preferences/subject-preference-grid/subject-preference-grid.scss"],"sourcesContent":["import React from 'react';\n\ninterface ExistingAccountSignInProps {\n onClick: (e: React.MouseEvent<Element, MouseEvent>) => void;\n link: string;\n}\n\nexport function ExistingAccountSignIn(props: ExistingAccountSignInProps): JSX.Element {\n return (\n <>\n Have a ClickView account already?\n <a href={props.link} className='info-link ms-1' onClick={props.onClick}>\n Sign in\n </a>\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"stickyFooter\":\"rIUL4\",\"nonStickyFooter\":\"PuC_F\"};","import * as React from 'react';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\n\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useGetMediaQueryString } from 'libs/shared/hooks/UseGetMediaQueryString';\nimport { useResizeListener } from 'libs/shared/hooks/UseResizeListener';\n\nimport styles from './onboarding-footer.scss';\n\nconst SCROLL_TOLERANCE = 50; // value in px\n\ninterface OnboardingFooterProps extends React.PropsWithChildren<unknown> {\n justify?: 'end' | 'center' | 'between';\n}\n\nOnboardingFooter.defaultProps = {\n justify: 'between'\n};\n\nfunction StickyFooter(props: OnboardingFooterProps): JSX.Element {\n const justifyClass = `justify-content-${props.justify}`;\n\n return (\n <div className={`py-3 bg-white ${styles.stickyFooter}`}>\n <div className={`w-75 mx-auto d-flex ${justifyClass}`}>\n {props.children}\n </div>\n </div>\n );\n}\n\nfunction NonStickyFooter(props: OnboardingFooterProps): JSX.Element {\n const mediaQuery = useGetMediaQueryString();\n const widthClass = (mediaQuery === MediaQueryStrings.SM || mediaQuery === MediaQueryStrings.XS) ? 'w-100' : 'w-75';\n\n const justifyClass = `justify-content-${props.justify}`;\n\n return (\n <div className={`${widthClass} ${justifyClass} ${styles.nonStickyFooter} d-flex px-3`}>\n {props.children}\n </div>\n );\n}\n\nexport function OnboardingFooter(props: OnboardingFooterProps): JSX.Element {\n const isScrolledToBottom = () => {\n return (window.innerHeight + window.scrollY) >= (document.body.offsetHeight - SCROLL_TOLERANCE);\n };\n\n const [ isSticky, setIsSticky ] = React.useState(false);\n\n React.useEffect(() => setIsSticky(!isScrolledToBottom()), []);\n\n function onViewportChange(): void {\n const shouldSetToSticky = !isScrolledToBottom();\n\n if (isSticky && !shouldSetToSticky) {\n setIsSticky(false);\n return;\n }\n\n if (!isSticky && shouldSetToSticky)\n setIsSticky(true);\n }\n\n const throttledOnViewportChange = FunctionHelper.throttle(onViewportChange, 100);\n\n React.useEffect(() => {\n window.addEventListener('scroll', throttledOnViewportChange);\n return () => window.removeEventListener('scroll', throttledOnViewportChange);\n }, [ isSticky, setIsSticky ]);\n\n useResizeListener(throttledOnViewportChange, throttledOnViewportChange, [ isSticky, setIsSticky ]);\n\n return isSticky\n ? <StickyFooter {...props}>{props.children}</StickyFooter>\n : <NonStickyFooter {...props}>{props.children}</NonStickyFooter>;\n}","import * as React from 'react';\n\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { SubjectPreferenceItem } from 'libs/shared/apps/subjects/components/preferences';\nimport { TopicPreferencesContext } from 'libs/shared/apps/subjects/contexts/TopicPreferencesContext';\nimport { ClassificationPreference } from 'libs/shared/apps/subjects/interfaces/ClassificationPreference';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useGetMediaQueryString } from 'libs/shared/hooks/UseGetMediaQueryString';\nimport { Classification } from 'libs/shared/interfaces';\n\nimport styles from './subject-preference-grid.scss';\n\nfunction useGetRowItemCapacity(): number {\n const viewportWidth = useGetMediaQueryString();\n\n switch (viewportWidth) {\n case MediaQueryStrings.LG:\n default:\n return 5;\n\n case MediaQueryStrings.MD:\n return 4;\n\n case MediaQueryStrings.SM:\n return 3;\n\n case MediaQueryStrings.XS:\n return 2;\n }\n}\n\nfunction isDisabled(subject: ClassificationPreference, expandedSubject: ClassificationPreference): boolean {\n if (!expandedSubject || subject.id === expandedSubject.id)\n return false;\n\n if (expandedSubject.children.find(child => child.id === subject.id))\n return false;\n\n return true;\n}\n\ninterface SubjectPreferenceGridRowProps extends SubjectPreferenceGridProps {}\n\nfunction SubjectPreferenceGridRow(props: SubjectPreferenceGridRowProps): JSX.Element {\n const { expandedSubject, selectedSubjects: selections } = React.useContext(TopicPreferencesContext);\n\n return (\n <>\n {props.subjects.map(subject => {\n const itemDisabled = isDisabled(subject, expandedSubject);\n\n let clickHandler = props.onSelect;\n\n if (subject.isExpandableOption)\n clickHandler = props.onExpand;\n\n if (itemDisabled)\n clickHandler = props.onCollapse;\n\n if (props.hasSelectedBulk)\n clickHandler = () => {};\n\n return (\n <SubjectPreferenceItem\n key={subject.id}\n subject={subject}\n selected={!props.hasSelectedBulk && selections.includes(subject.id)}\n disabled={props.hasSelectedBulk || itemDisabled}\n onClick={() => clickHandler(subject)}\n hasSelectedBulk={props.hasSelectedBulk}\n />\n );\n })}\n </>\n );\n}\n\ninterface SubjectPreferenceGridProps {\n subjects: ClassificationPreference[];\n onSelect: (subject: Classification) => void;\n onExpand: (subject: Classification) => void;\n onCollapse: (subject: Classification) => void;\n hasSelectedBulk?: boolean;\n}\n\nexport function SubjectPreferenceGrid(props: SubjectPreferenceGridProps): JSX.Element {\n const { subjects, hasSelectedBulk, ...eventHandlers } = props;\n const { expandedSubject } = React.useContext(TopicPreferencesContext);\n\n const itemsPerRow = useGetRowItemCapacity();\n\n /**\n * This is an array of arrays, where each sub-array is a row of classifications.\n * We do this to make sure any sub-grid's of child preference options get rendered in the row\n * directly beneath their parent's row.\n */\n const subjectRows = subjects.reduce((\n acc: ClassificationPreference[][],\n subject: ClassificationPreference,\n index: number\n ) => {\n index % itemsPerRow === 0\n ? acc.push([subject]) // Start a new row\n : ArrayHelper.last(acc).push(subject); // Fill up an existing row\n\n return acc;\n }, []);\n\n return (\n <ul className={styles.grid}>\n {subjectRows.map((row, i) => {\n const isExpanded = expandedSubject && !!row.find(subject => {\n return expandedSubject.id === subject.id && subject.isExpandableOption;\n });\n\n return (\n <React.Fragment key={i}>\n <SubjectPreferenceGridRow\n subjects={row}\n hasSelectedBulk={hasSelectedBulk}\n {...eventHandlers}\n />\n\n {isExpanded && (\n <li className={`${styles.subgrid} m-0`}>\n <SubjectPreferenceGrid\n subjects={expandedSubject.children as ClassificationPreference[]}\n hasSelectedBulk={hasSelectedBulk}\n {...eventHandlers}\n />\n </li>\n )}\n </React.Fragment>\n );\n })}\n </ul>\n );\n}","import * as React from 'react';\n\nimport { PreferenceItem } from 'libs/shared/apps/subjects/components/preferences/preference-item/PreferenceItem';\nimport { TopicPreferencesContext } from 'libs/shared/apps/subjects/contexts/TopicPreferencesContext';\nimport { ClassificationPreference } from 'libs/shared/apps/subjects/interfaces/ClassificationPreference';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\ninterface SubjectPreferenceItemProps {\n subject: ClassificationPreference;\n selected: boolean;\n disabled?: boolean;\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\n extraClasses?: string;\n hideStatus?: boolean;\n hasSelectedBulk?: boolean;\n}\n\nexport function SubjectPreferenceItem(props: SubjectPreferenceItemProps): JSX.Element {\n const context = React.useContext(TopicPreferencesContext);\n\n const coverUrl = props.subject.cover ? ImageHelper.createUrl(props.subject.cover.url, { size: ImageSize.Small }) : '';\n\n const childIds = props.subject.isExpandableOption ? props.subject.children.map(child => child.id) : [];\n const selectedChildCount = !props.hasSelectedBulk\n ? context?.selectedSubjects?.filter(selection => childIds.includes(selection)).length\n : 0;\n\n const component = (\n <PreferenceItem\n name={props.subject.name}\n imageUrl={coverUrl}\n onClick={props.onClick}\n isSelected={props.selected}\n isDisabled={props.disabled}\n isExpandable={props.subject.isExpandableOption}\n expand={context?.expandedSubject?.id === props.subject.id}\n selectedChildCount={selectedChildCount}\n extraClasses={props.extraClasses}\n hideStatus={props.hideStatus}\n />\n );\n\n return props.disabled\n ? <span>{component}</span>\n : <Tooltip title={props.subject.name}><span>{component}</span></Tooltip>;\n}","// extracted by mini-css-extract-plugin\nexport default {\"preferenceItem\":\"PSWHa\",\"expandCaret\":\"CCsqs\",\"up\":\"w7N1R\",\"down\":\"mO0Kn\",\"disabled\":\"Oyw2x\",\"selected\":\"Czk2N\",\"noBorder\":\"_e7oe\",\"textBox\":\"pfksF\",\"itemStatus\":\"H4u81\",\"unchecked\":\"iYkPv\",\"green\":\"w5g0e\"};","import * as React from 'react';\n\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './preference-item.scss';\n\ninterface ExpandableItemStatusProps {\n selectedChildrenCount: number;\n}\n\nexport const ExpandableItemStatus = (props: ExpandableItemStatusProps): JSX.Element => {\n if (!props.selectedChildrenCount)\n return <></>;\n\n return (\n <div className={`${styles.itemStatus} ${styles.green}`}>\n {props.selectedChildrenCount}\n </div>\n );\n};\n\ninterface SelectableItemStatusProps {\n selected: boolean;\n radioButton?: boolean;\n}\n\nexport const SelectableItemStatus = (props: SelectableItemStatusProps): JSX.Element => {\n let svg;\n\n if (props.selected)\n svg = <SvgContainer svgName={cvSvgLibrary.Check} />;\n else if (!props.radioButton)\n svg = <SvgContainer svgName={cvSvgLibrary.Plus} />;\n else\n svg = <>&nbsp;</>;\n\n return (\n <div className={`${styles.itemStatus} ${props.selected ? styles.green : styles.unchecked}`}>\n {svg}\n </div>\n );\n};\n","import React from 'react';\n\nimport { ExpandableItemStatus, SelectableItemStatus } from './PreferenceItemStatus';\n\nimport styles from './preference-item.scss';\n\ninterface PreferenceItemProps {\n name: string;\n imageUrl: string;\n\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\n isDisabled?: boolean;\n isSelected: boolean;\n hideStatus?: boolean;\n radioButton?: boolean;\n\n isExpandable?: boolean;\n expand?: boolean;\n selectedChildCount?: number;\n\n extraClasses?: string;\n}\n\nexport function PreferenceItem(props: PreferenceItemProps): JSX.Element {\n function getContainerClass(): string {\n let baseClass = `rounded-3 ${styles.preferenceItem}`;\n\n if (props.extraClasses)\n baseClass += ' ' + props.extraClasses;\n\n if (props.isDisabled)\n baseClass += ' ' + styles.disabled;\n\n if (props.isSelected && !props.isExpandable)\n baseClass += ' ' + styles.selected;\n\n if (props.hideStatus)\n baseClass += ' ' + styles.noBorder;\n\n return baseClass;\n }\n\n const caretClass = `${styles.expandCaret} ${props.expand ? styles.up : styles.down}`;\n\n return (\n <li\n className={getContainerClass()}\n onClick={props.onClick}\n aria-checked={props.isSelected}\n aria-haspopup={props.isExpandable}\n role={props.isExpandable ? 'button' : 'checkbox'}\n style={{ backgroundImage: `url(${props.imageUrl})` }}\n tabIndex={0}\n title={props.name}\n >\n <div className={`${styles.textBox} p-2`}>\n <p className='text-truncate mb-0'>\n {props.name}\n <span className={props.isExpandable ? caretClass : ''} />\n </p>\n\n {!props.hideStatus && (\n <>{props.isExpandable\n ? <ExpandableItemStatus selectedChildrenCount={props.selectedChildCount} />\n : <SelectableItemStatus selected={props.isSelected} radioButton={props.radioButton} />\n }</>\n )}\n </div>\n </li>\n );\n}","import { createContext } from 'react';\n\nimport { ClassificationPreference } from '../interfaces/ClassificationPreference';\n\ninterface TopicPreferencesContextFields {\n selectedSubjects: string[];\n expandedSubject: ClassificationPreference;\n}\n\nexport const TopicPreferencesContext = createContext<TopicPreferencesContextFields>(undefined);","import { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\n\nimport { useMediaQuery } from './UseMediaQuery';\n\n/**\n * @deprecated Please use useBreakpoints() instead\n */\nexport function useGetMediaQueryString(): MediaQueryStrings {\n const isXS = useMediaQuery(MediaQueryStrings.XS);\n const isSM = useMediaQuery(MediaQueryStrings.SM);\n const isMD = useMediaQuery(MediaQueryStrings.MD);\n const isLG = useMediaQuery(MediaQueryStrings.LG);\n const isXL = useMediaQuery(MediaQueryStrings.XL);\n const isXXL = useMediaQuery(MediaQueryStrings.XXL);\n\n let currentString = MediaQueryStrings.LG; // default\n if (isXS) currentString = MediaQueryStrings.XS;\n if (isSM) currentString = MediaQueryStrings.SM;\n if (isMD) currentString = MediaQueryStrings.MD;\n if (isLG) currentString = MediaQueryStrings.LG;\n if (isXL) currentString = MediaQueryStrings.XL;\n if (isXXL) currentString = MediaQueryStrings.XXL;\n\n return currentString;\n}","// extracted by mini-css-extract-plugin\nexport default {\"preferenceList\":\"oHNZN\",\"preferenceItem\":\"olBqT\",\"largePopup\":\"x3Oot\",\"selectPresentation\":\"b2r5s\",\"switchPresentation\":\"NIIWc\"};","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { ClickDescriptor, EntityType, EventVersion, LocationContext, SignUpDescriptors, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { ExistingAccountSignIn } from 'libs/shared/apps/sign-up/components/general/existing-account-sign-in/ExistingAccountSignIn';\nimport { PreferenceItem } from 'libs/shared/apps/subjects/components/preferences';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { SeoConstants } from 'libs/shared/constants/SeoConstants';\nimport { TopicsConstants } from 'libs/shared/constants/TopicsConstants';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { PresentationType } from 'libs/shared/enums/PresentationType';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { Presentation } from 'libs/shared/interfaces';\nimport { ContextService } from 'libs/shared/services/ContextService';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { usePresentation } from 'shared/hooks/usePresentation';\n\nimport styles from './welcome-popup.scss';\n\nconst namespace = 'settings.welcomePopup';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst PRESERVE_APPLINK_REDIRECTION: HashObject = [\n { application: AppChannels.CONTENT_UPDATES, action: Actions.ContentUpdates.CONTENT_UPDATES },\n { application: AppChannels.MOVIES_AND_TV, action: Actions.MoviesAndTv.HOME }\n].reduce((prev: HashObject, currentAppLink: Core.AppLink) => {\n prev[AppLinkHelper.getAppLinkString(currentAppLink)] = true;\n return prev;\n}, {});\n \ninterface WelcomePopupViewProps {\n closePopup: () => void;\n}\n\nexport function WelcomePopupView(props: WelcomePopupViewProps): JSX.Element {\n const [ showSpinner, setShowSpinner ] = React.useState<boolean>(false);\n const [ selectedPresentation, setSelectedPresentation ] = React.useState<Presentation>();\n\n const isMobile = useMediaQuery(MediaQueryStrings.SMDown);\n const alerts = useAlerts();\n\n const {\n availablePresentations,\n setPresentation,\n hasPresentationsLoaded\n } = usePresentation();\n\n const canSelectPresentation = availablePresentations?.length >= TopicsConstants.MULTI_PRESENTATION_THRESHOLD;\n\n function onSuccess(): void {\n AnalyticsHelper.logUserAction(\n { id: selectedPresentation.id, name: selectedPresentation.name },\n {\n actionType: UserAction.Click,\n entity: EntityType.Presentation,\n location: LocationContext.WelcomePopup,\n workflowPhase: WorkflowPhase.Complete,\n descriptor: ClickDescriptor.Button,\n eventVersion: EventVersion.V3\n }\n );\n\n const currentAppLink = ContextService.getCurrentRoute().appLink;\n\n /**\n * When accessing a top-level landing page that can have multiple alternates depending on the school\n * level, we'll redirect the user to the appropriate page once they've nomnated their school-level\n * preference. In all other cases we'll default to redirecting to Discover.\n */\n if (PRESERVE_APPLINK_REDIRECTION[AppLinkHelper.getAppLinkString(currentAppLink)]) {\n Core.AppLinkHelper.trigger(currentAppLink, { replace: true });\n } else {\n Core.AppLinkHelper.trigger({\n application: AppChannels.DASHBOARD,\n action: Actions.Dashboard.HOME\n });\n }\n\n setShowSpinner(false);\n props.closePopup();\n }\n\n function onError(): void {\n setShowSpinner(false);\n alerts.error(LanguageService.getPhrase(namespace, 'error'));\n }\n\n function onClick(): Promise<void> {\n setShowSpinner(true);\n \n return setPresentation(selectedPresentation, 'activeAndPreferred')\n .then(onSuccess)\n .catch(onError);\n }\n\n function isDisabled(): boolean {\n if (!canSelectPresentation)\n return false;\n\n return !selectedPresentation;\n }\n\n function onClickSignIn(): void {\n AnalyticsHelper.logUserAction(\n {\n url: Core.AppLinkHelper.getHref({\n application: AppChannels.DEFAULT,\n action: Actions.Default.LOG_IN\n })\n },\n {\n actionType: UserAction.Click,\n entity: EntityType.AppLink,\n descriptor: SignUpDescriptors.SignIn,\n location: LocationContext.WelcomePopup\n }\n );\n }\n\n function getPopupSize(): 'md' | 'lg'| 'sm' {\n if (isMobile)\n return 'sm';\n\n if (availablePresentations?.length > 2)\n return 'lg';\n\n return 'md';\n }\n\n /**\n * If there's only one presentation, we still need to set it in\n * LocalStorage for public users. This is to ensure that they're not displayed\n * the popup each and every time.\n */\n React.useEffect(() => {\n if (!hasPresentationsLoaded || canSelectPresentation)\n return;\n\n setSelectedPresentation(ArrayHelper.first(availablePresentations));\n }, [ canSelectPresentation, hasPresentationsLoaded ]);\n\n const Buttons = () => (\n <PopupButtons>\n <PopupButtons.Submit\n variant='dark'\n onClick={onClick}\n text={getPhrase('cta')}\n showSpinner={showSpinner}\n disabled={isDisabled()}\n className='mx-auto'\n />\n </PopupButtons>\n );\n\n const LoginLink = () => (\n <div className='mt-3 text-center'>\n <ExistingAccountSignIn\n link={Core.AppLinkHelper.getHref({ application: AppChannels.DEFAULT, action: Actions.Default.LOG_IN })}\n onClick={onClickSignIn}\n />\n </div>\n );\n\n const SinglePresentationContent = () => (\n <div className={`${styles.selectPresentation}`}>\n <div className='d-block mx-auto p-4'>\n <img\n src={ImageUrls.SignUp.UPGRADE}\n className='img-fluid'\n alt=''\n />\n </div>\n <h2 className='h4 text-center'>\n <Text\n namespace={namespace}\n phrase='infoPrimary'\n />\n </h2>\n <p className='text-center'>\n <Text namespace={namespace} phrase='infoSecondary' />\n </p>\n <div className='mt-3'>\n <Buttons />\n </div>\n <LoginLink />\n </div>\n );\n\n const MultiPresentationContent = () => (\n <div className={`${styles.selectPresentation}`}>\n <h2 className='h4 text-center'>\n <Text\n namespace={namespace}\n phrase='infoPrimary'\n />\n </h2>\n <p className='text-center'>\n <Text namespace={namespace} phrase='infoSecondaryMulti' />\n </p>\n <div className='position-relative'>\n <ul className={`list-unstyled d-flex ${styles.preferenceList}`}>\n {availablePresentations?.map((presentation: Presentation) => {\n if (presentation.type !== PresentationType.Subject)\n return <React.Fragment key={presentation.id}></React.Fragment>;\n\n return (\n <PreferenceItem\n key={presentation.id}\n name={presentation.name}\n imageUrl={ImageHelper.createUrl(presentation.cover?.url, { size: ImageSize.Medium }) || ''}\n onClick={() => setSelectedPresentation(presentation)}\n isSelected={selectedPresentation?.id === presentation.id}\n extraClasses={`${styles.preferenceItem} m-2`}\n radioButton\n />\n );\n })}\n </ul>\n </div>\n <Buttons />\n <LoginLink />\n </div>\n );\n\n if (!hasPresentationsLoaded)\n return <></>;\n\n return (\n <Popup\n title={getPhrase('title')}\n size={getPopupSize()}\n closeButton={!canSelectPresentation}\n closePopup={props.closePopup}\n backdrop={canSelectPresentation ? 'static' : true}\n dialogClassName={SeoConstants.WELCOME_POPUP_SELECTOR}\n centered\n >\n {canSelectPresentation\n ? <MultiPresentationContent />\n : <SinglePresentationContent />\n }\n </Popup>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"grid\":\"X9r1Y\",\"subgrid\":\"TgYhp\"};"],"names":["ExistingAccountSignIn","props","href","link","className","onClick","SCROLL_TOLERANCE","StickyFooter","justifyClass","justify","children","NonStickyFooter","mediaQuery","widthClass","OnboardingFooter","isScrolledToBottom","window","innerHeight","scrollY","document","body","offsetHeight","isSticky","setIsSticky","throttledOnViewportChange","FunctionHelper","shouldSetToSticky","addEventListener","removeEventListener","defaultProps","SubjectPreferenceGridRow","TopicPreferencesContext","expandedSubject","selections","selectedSubjects","subjects","map","subject","itemDisabled","id","find","child","isDisabled","clickHandler","onSelect","isExpandableOption","onExpand","onCollapse","hasSelectedBulk","SubjectPreferenceItem","key","selected","includes","disabled","SubjectPreferenceGrid","eventHandlers","itemsPerRow","useGetRowItemCapacity","subjectRows","reduce","acc","index","push","ArrayHelper","row","i","isExpanded","context","coverUrl","cover","ImageHelper","url","size","childIds","selectedChildCount","filter","selection","length","component","PreferenceItem","name","imageUrl","isSelected","isExpandable","expand","extraClasses","hideStatus","Tooltip","title","ExpandableItemStatus","selectedChildrenCount","SelectableItemStatus","svg","SvgContainer","svgName","radioButton","baseClass","caretClass","role","style","backgroundImage","tabIndex","createContext","undefined","useGetMediaQueryString","isXS","isSM","isMD","isLG","isXL","isXXL","currentString","namespace","getPhrase","LanguageService","PRESERVE_APPLINK_REDIRECTION","application","action","prev","currentAppLink","WelcomePopupView","showSpinner","setShowSpinner","selectedPresentation","setSelectedPresentation","isMobile","alerts","usePresentation","availablePresentations","setPresentation","hasPresentationsLoaded","canSelectPresentation","TopicsConstants","onSuccess","AnalyticsHelper","actionType","entity","location","workflowPhase","descriptor","eventVersion","ContextService","appLink","replace","closePopup","onError","error","then","onClickSignIn","Buttons","PopupButtons","variant","text","LoginLink","Popup","closeButton","backdrop","dialogClassName","SeoConstants","centered","Text","phrase","presentation","type","PresentationType","src","ImageUrls","alt"],"sourceRoot":""}
1
+ {"version":3,"file":"scripts/6480-03513bbd54-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/sign-up/components/general/existing-account-sign-in/ExistingAccountSignIn.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/footer/onboarding-footer.scss","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/footer/OnboardingFooter.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/topic-preferences/subject-preference-grid/SubjectPreferenceGrid.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/topic-preferences/subject-preference-item/SubjectPreferenceItem.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/preference-item.scss","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItemStatus.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/preference-item/PreferenceItem.tsx","file:///app/packages/libs/shared/src/apps/subjects/contexts/TopicPreferencesContext.ts","file:///app/packages/libs/shared/src/hooks/UseGetMediaQueryString.ts","file:///app/packages/projects/lite/src/shared/views/welcome-popup/welcome-popup.scss","file:///app/packages/projects/lite/src/shared/views/welcome-popup/WelcomePopupView.tsx","file:///app/packages/libs/shared/src/apps/subjects/components/preferences/topic-preferences/subject-preference-grid/subject-preference-grid.scss"],"sourcesContent":["import React from 'react';\n\ninterface ExistingAccountSignInProps {\n onClick: (e: React.MouseEvent<Element, MouseEvent>) => void;\n link: string;\n}\n\nexport function ExistingAccountSignIn(props: ExistingAccountSignInProps): JSX.Element {\n return (\n <>\n Have a ClickView account already?\n <a href={props.link} className='info-link ms-1' onClick={props.onClick}>\n Sign in\n </a>\n </>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"stickyFooter\":\"rIUL4\",\"nonStickyFooter\":\"PuC_F\"};","import * as React from 'react';\n\nimport { FunctionHelper } from 'libs/common/backbone/utils/FunctionHelper';\n\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useGetMediaQueryString } from 'libs/shared/hooks/UseGetMediaQueryString';\nimport { useResizeListener } from 'libs/shared/hooks/UseResizeListener';\n\nimport styles from './onboarding-footer.scss';\n\nconst SCROLL_TOLERANCE = 50; // value in px\n\ninterface OnboardingFooterProps extends React.PropsWithChildren<unknown> {\n justify?: 'end' | 'center' | 'between';\n}\n\nOnboardingFooter.defaultProps = {\n justify: 'between'\n};\n\nfunction StickyFooter(props: OnboardingFooterProps): JSX.Element {\n const justifyClass = `justify-content-${props.justify}`;\n\n return (\n <div className={`py-3 bg-white ${styles.stickyFooter}`}>\n <div className={`w-75 mx-auto d-flex ${justifyClass}`}>\n {props.children}\n </div>\n </div>\n );\n}\n\nfunction NonStickyFooter(props: OnboardingFooterProps): JSX.Element {\n const mediaQuery = useGetMediaQueryString();\n const widthClass = (mediaQuery === MediaQueryStrings.SM || mediaQuery === MediaQueryStrings.XS) ? 'w-100' : 'w-75';\n\n const justifyClass = `justify-content-${props.justify}`;\n\n return (\n <div className={`${widthClass} ${justifyClass} ${styles.nonStickyFooter} d-flex px-3`}>\n {props.children}\n </div>\n );\n}\n\nexport function OnboardingFooter(props: OnboardingFooterProps): JSX.Element {\n const isScrolledToBottom = () => {\n return (window.innerHeight + window.scrollY) >= (document.body.offsetHeight - SCROLL_TOLERANCE);\n };\n\n const [ isSticky, setIsSticky ] = React.useState(false);\n\n React.useEffect(() => setIsSticky(!isScrolledToBottom()), []);\n\n function onViewportChange(): void {\n const shouldSetToSticky = !isScrolledToBottom();\n\n if (isSticky && !shouldSetToSticky) {\n setIsSticky(false);\n return;\n }\n\n if (!isSticky && shouldSetToSticky)\n setIsSticky(true);\n }\n\n const throttledOnViewportChange = FunctionHelper.throttle(onViewportChange, 100);\n\n React.useEffect(() => {\n window.addEventListener('scroll', throttledOnViewportChange);\n return () => window.removeEventListener('scroll', throttledOnViewportChange);\n }, [ isSticky, setIsSticky ]);\n\n useResizeListener(throttledOnViewportChange, throttledOnViewportChange, [ isSticky, setIsSticky ]);\n\n return isSticky\n ? <StickyFooter {...props}>{props.children}</StickyFooter>\n : <NonStickyFooter {...props}>{props.children}</NonStickyFooter>;\n}","import * as React from 'react';\n\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { SubjectPreferenceItem } from 'libs/shared/apps/subjects/components/preferences';\nimport { TopicPreferencesContext } from 'libs/shared/apps/subjects/contexts/TopicPreferencesContext';\nimport { ClassificationPreference } from 'libs/shared/apps/subjects/interfaces/ClassificationPreference';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { useGetMediaQueryString } from 'libs/shared/hooks/UseGetMediaQueryString';\nimport { Classification } from 'libs/shared/interfaces';\n\nimport styles from './subject-preference-grid.scss';\n\nfunction useGetRowItemCapacity(): number {\n const viewportWidth = useGetMediaQueryString();\n\n switch (viewportWidth) {\n case MediaQueryStrings.LG:\n default:\n return 5;\n\n case MediaQueryStrings.MD:\n return 4;\n\n case MediaQueryStrings.SM:\n return 3;\n\n case MediaQueryStrings.XS:\n return 2;\n }\n}\n\nfunction isDisabled(subject: ClassificationPreference, expandedSubject: ClassificationPreference): boolean {\n if (!expandedSubject || subject.id === expandedSubject.id)\n return false;\n\n if (expandedSubject.children.find(child => child.id === subject.id))\n return false;\n\n return true;\n}\n\ninterface SubjectPreferenceGridRowProps extends SubjectPreferenceGridProps {}\n\nfunction SubjectPreferenceGridRow(props: SubjectPreferenceGridRowProps): JSX.Element {\n const { expandedSubject, selectedSubjects: selections } = React.useContext(TopicPreferencesContext);\n\n return (\n <>\n {props.subjects.map(subject => {\n const itemDisabled = isDisabled(subject, expandedSubject);\n\n let clickHandler = props.onSelect;\n\n if (subject.isExpandableOption)\n clickHandler = props.onExpand;\n\n if (itemDisabled)\n clickHandler = props.onCollapse;\n\n if (props.hasSelectedBulk)\n clickHandler = () => {};\n\n return (\n <SubjectPreferenceItem\n key={subject.id}\n subject={subject}\n selected={!props.hasSelectedBulk && selections.includes(subject.id)}\n disabled={props.hasSelectedBulk || itemDisabled}\n onClick={() => clickHandler(subject)}\n hasSelectedBulk={props.hasSelectedBulk}\n />\n );\n })}\n </>\n );\n}\n\ninterface SubjectPreferenceGridProps {\n subjects: ClassificationPreference[];\n onSelect: (subject: Classification) => void;\n onExpand: (subject: Classification) => void;\n onCollapse: (subject: Classification) => void;\n hasSelectedBulk?: boolean;\n}\n\nexport function SubjectPreferenceGrid(props: SubjectPreferenceGridProps): JSX.Element {\n const { subjects, hasSelectedBulk, ...eventHandlers } = props;\n const { expandedSubject } = React.useContext(TopicPreferencesContext);\n\n const itemsPerRow = useGetRowItemCapacity();\n\n /**\n * This is an array of arrays, where each sub-array is a row of classifications.\n * We do this to make sure any sub-grid's of child preference options get rendered in the row\n * directly beneath their parent's row.\n */\n const subjectRows = subjects.reduce((\n acc: ClassificationPreference[][],\n subject: ClassificationPreference,\n index: number\n ) => {\n index % itemsPerRow === 0\n ? acc.push([subject]) // Start a new row\n : ArrayHelper.last(acc).push(subject); // Fill up an existing row\n\n return acc;\n }, []);\n\n return (\n <ul className={styles.grid}>\n {subjectRows.map((row, i) => {\n const isExpanded = expandedSubject && !!row.find(subject => {\n return expandedSubject.id === subject.id && subject.isExpandableOption;\n });\n\n return (\n <React.Fragment key={i}>\n <SubjectPreferenceGridRow\n subjects={row}\n hasSelectedBulk={hasSelectedBulk}\n {...eventHandlers}\n />\n\n {isExpanded && (\n <li className={`${styles.subgrid} m-0`}>\n <SubjectPreferenceGrid\n subjects={expandedSubject.children as ClassificationPreference[]}\n hasSelectedBulk={hasSelectedBulk}\n {...eventHandlers}\n />\n </li>\n )}\n </React.Fragment>\n );\n })}\n </ul>\n );\n}","import * as React from 'react';\n\nimport { PreferenceItem } from 'libs/shared/apps/subjects/components/preferences/preference-item/PreferenceItem';\nimport { TopicPreferencesContext } from 'libs/shared/apps/subjects/contexts/TopicPreferencesContext';\nimport { ClassificationPreference } from 'libs/shared/apps/subjects/interfaces/ClassificationPreference';\nimport { Tooltip } from 'libs/shared/components/tooltip/Tooltip';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\ninterface SubjectPreferenceItemProps {\n subject: ClassificationPreference;\n selected: boolean;\n disabled?: boolean;\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\n extraClasses?: string;\n hideStatus?: boolean;\n hasSelectedBulk?: boolean;\n}\n\nexport function SubjectPreferenceItem(props: SubjectPreferenceItemProps): JSX.Element {\n const context = React.useContext(TopicPreferencesContext);\n\n const coverUrl = props.subject.cover ? ImageHelper.createUrl(props.subject.cover.url, { size: ImageSize.Small }) : '';\n\n const childIds = props.subject.isExpandableOption ? props.subject.children.map(child => child.id) : [];\n const selectedChildCount = !props.hasSelectedBulk\n ? context?.selectedSubjects?.filter(selection => childIds.includes(selection)).length\n : 0;\n\n const component = (\n <PreferenceItem\n name={props.subject.name}\n imageUrl={coverUrl}\n onClick={props.onClick}\n isSelected={props.selected}\n isDisabled={props.disabled}\n isExpandable={props.subject.isExpandableOption}\n expand={context?.expandedSubject?.id === props.subject.id}\n selectedChildCount={selectedChildCount}\n extraClasses={props.extraClasses}\n hideStatus={props.hideStatus}\n />\n );\n\n return props.disabled\n ? <span>{component}</span>\n : <Tooltip title={props.subject.name}><span>{component}</span></Tooltip>;\n}","// extracted by mini-css-extract-plugin\nexport default {\"preferenceItem\":\"PSWHa\",\"expandCaret\":\"CCsqs\",\"up\":\"w7N1R\",\"down\":\"mO0Kn\",\"disabled\":\"Oyw2x\",\"selected\":\"Czk2N\",\"noBorder\":\"_e7oe\",\"textBox\":\"pfksF\",\"itemStatus\":\"H4u81\",\"unchecked\":\"iYkPv\",\"green\":\"w5g0e\"};","import * as React from 'react';\n\nimport { SvgContainer } from 'libs/shared/components/svg-container/SvgContainer';\nimport { cvSvgLibrary } from 'libs/shared/utils/SvgHelper';\n\nimport styles from './preference-item.scss';\n\ninterface ExpandableItemStatusProps {\n selectedChildrenCount: number;\n}\n\nexport const ExpandableItemStatus = (props: ExpandableItemStatusProps): JSX.Element => {\n if (!props.selectedChildrenCount)\n return <></>;\n\n return (\n <div className={`${styles.itemStatus} ${styles.green}`}>\n {props.selectedChildrenCount}\n </div>\n );\n};\n\ninterface SelectableItemStatusProps {\n selected: boolean;\n radioButton?: boolean;\n}\n\nexport const SelectableItemStatus = (props: SelectableItemStatusProps): JSX.Element => {\n let svg;\n\n if (props.selected)\n svg = <SvgContainer svgName={cvSvgLibrary.Check} />;\n else if (!props.radioButton)\n svg = <SvgContainer svgName={cvSvgLibrary.Plus} />;\n else\n svg = <>&nbsp;</>;\n\n return (\n <div className={`${styles.itemStatus} ${props.selected ? styles.green : styles.unchecked}`}>\n {svg}\n </div>\n );\n};\n","import React from 'react';\n\nimport { ExpandableItemStatus, SelectableItemStatus } from './PreferenceItemStatus';\n\nimport styles from './preference-item.scss';\n\ninterface PreferenceItemProps {\n name: string;\n imageUrl: string;\n\n onClick?: (event: React.MouseEvent<HTMLLIElement, MouseEvent>) => void;\n isDisabled?: boolean;\n isSelected: boolean;\n hideStatus?: boolean;\n radioButton?: boolean;\n\n isExpandable?: boolean;\n expand?: boolean;\n selectedChildCount?: number;\n\n extraClasses?: string;\n}\n\nexport function PreferenceItem(props: PreferenceItemProps): JSX.Element {\n function getContainerClass(): string {\n let baseClass = `rounded-3 ${styles.preferenceItem}`;\n\n if (props.extraClasses)\n baseClass += ' ' + props.extraClasses;\n\n if (props.isDisabled)\n baseClass += ' ' + styles.disabled;\n\n if (props.isSelected && !props.isExpandable)\n baseClass += ' ' + styles.selected;\n\n if (props.hideStatus)\n baseClass += ' ' + styles.noBorder;\n\n return baseClass;\n }\n\n const caretClass = `${styles.expandCaret} ${props.expand ? styles.up : styles.down}`;\n\n return (\n <li\n className={getContainerClass()}\n onClick={props.onClick}\n aria-checked={props.isSelected}\n aria-haspopup={props.isExpandable}\n role={props.isExpandable ? 'button' : 'checkbox'}\n style={{ backgroundImage: `url(${props.imageUrl})` }}\n tabIndex={0}\n title={props.name}\n >\n <div className={`${styles.textBox} p-2`}>\n <p className='text-truncate mb-0'>\n {props.name}\n <span className={props.isExpandable ? caretClass : ''} />\n </p>\n\n {!props.hideStatus && (\n <>{props.isExpandable\n ? <ExpandableItemStatus selectedChildrenCount={props.selectedChildCount} />\n : <SelectableItemStatus selected={props.isSelected} radioButton={props.radioButton} />\n }</>\n )}\n </div>\n </li>\n );\n}","import { createContext } from 'react';\n\nimport { ClassificationPreference } from '../interfaces/ClassificationPreference';\n\ninterface TopicPreferencesContextFields {\n selectedSubjects: string[];\n expandedSubject: ClassificationPreference;\n}\n\nexport const TopicPreferencesContext = createContext<TopicPreferencesContextFields>(undefined);","import { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\n\nimport { useMediaQuery } from './UseMediaQuery';\n\n/**\n * @deprecated Please use useBreakpoints() instead\n */\nexport function useGetMediaQueryString(): MediaQueryStrings {\n const isXS = useMediaQuery(MediaQueryStrings.XS);\n const isSM = useMediaQuery(MediaQueryStrings.SM);\n const isMD = useMediaQuery(MediaQueryStrings.MD);\n const isLG = useMediaQuery(MediaQueryStrings.LG);\n const isXL = useMediaQuery(MediaQueryStrings.XL);\n const isXXL = useMediaQuery(MediaQueryStrings.XXL);\n\n let currentString = MediaQueryStrings.LG; // default\n if (isXS) currentString = MediaQueryStrings.XS;\n if (isSM) currentString = MediaQueryStrings.SM;\n if (isMD) currentString = MediaQueryStrings.MD;\n if (isLG) currentString = MediaQueryStrings.LG;\n if (isXL) currentString = MediaQueryStrings.XL;\n if (isXXL) currentString = MediaQueryStrings.XXL;\n\n return currentString;\n}","// extracted by mini-css-extract-plugin\nexport default {\"preferenceList\":\"oHNZN\",\"preferenceItem\":\"olBqT\",\"largePopup\":\"x3Oot\",\"selectPresentation\":\"b2r5s\",\"switchPresentation\":\"NIIWc\"};","import React from 'react';\n\nimport { AppLinkHelper } from 'libs/common/backbone/core';\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Core } from 'libs/common/core';\nimport { HashObject } from 'libs/common/react/interfaces';\nimport { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { ClickDescriptor, EntityType, EventVersion, LocationContext, SignUpDescriptors, UserAction, WorkflowPhase } from 'libs/analytics/interfaces';\n\nimport { ExistingAccountSignIn } from 'libs/shared/apps/sign-up/components/general/existing-account-sign-in/ExistingAccountSignIn';\nimport { PreferenceItem } from 'libs/shared/apps/subjects/components/preferences';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { SeoConstants } from 'libs/shared/constants/SeoConstants';\nimport { TopicsConstants } from 'libs/shared/constants/TopicsConstants';\nimport { ImageSize } from 'libs/shared/enums/Images';\nimport { MediaQueryStrings } from 'libs/shared/enums/MediaQueries';\nimport { PresentationType } from 'libs/shared/enums/PresentationType';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { useMediaQuery } from 'libs/shared/hooks/UseMediaQuery';\nimport { Presentation } from 'libs/shared/interfaces';\nimport { ContextService } from 'libs/shared/services/ContextService';\nimport { ImageHelper } from 'libs/shared/utils/ImageHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\nimport { usePresentation } from 'shared/hooks/usePresentation';\n\nimport styles from './welcome-popup.scss';\n\nconst namespace = 'settings.welcomePopup';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\nconst PRESERVE_APPLINK_REDIRECTION: HashObject = [\n { application: AppChannels.CONTENT_UPDATES, action: Actions.ContentUpdates.CONTENT_UPDATES },\n { application: AppChannels.MOVIES_AND_TV, action: Actions.MoviesAndTv.HOME }\n].reduce((prev: HashObject, currentAppLink: Core.AppLink) => {\n prev[AppLinkHelper.getAppLinkString(currentAppLink)] = true;\n return prev;\n}, {});\n \ninterface WelcomePopupViewProps {\n closePopup: () => void;\n}\n\nexport function WelcomePopupView(props: WelcomePopupViewProps): JSX.Element {\n const [ showSpinner, setShowSpinner ] = React.useState<boolean>(false);\n const [ selectedPresentation, setSelectedPresentation ] = React.useState<Presentation>();\n\n const isMobile = useMediaQuery(MediaQueryStrings.SMDown);\n const alerts = useAlerts();\n\n const {\n availablePresentations,\n setPresentation,\n hasPresentationsLoaded\n } = usePresentation();\n\n const canSelectPresentation = availablePresentations?.length >= TopicsConstants.MULTI_PRESENTATION_THRESHOLD;\n\n function onSuccess(): void {\n AnalyticsHelper.logUserAction(\n { id: selectedPresentation.id, name: selectedPresentation.name },\n {\n actionType: UserAction.Click,\n entity: EntityType.Presentation,\n location: LocationContext.WelcomePopup,\n workflowPhase: WorkflowPhase.Complete,\n descriptor: ClickDescriptor.Button,\n eventVersion: EventVersion.V3\n }\n );\n\n const currentAppLink = ContextService.getCurrentRoute().appLink;\n\n /**\n * When accessing a top-level landing page that can have multiple alternates depending on the school\n * level, we'll redirect the user to the appropriate page once they've nomnated their school-level\n * preference. In all other cases we'll default to redirecting to Discover.\n */\n if (PRESERVE_APPLINK_REDIRECTION[AppLinkHelper.getAppLinkString(currentAppLink)]) {\n Core.AppLinkHelper.trigger(currentAppLink, { replace: true });\n } else {\n Core.AppLinkHelper.trigger({\n application: AppChannels.DASHBOARD,\n action: Actions.Dashboard.HOME\n });\n }\n\n setShowSpinner(false);\n props.closePopup();\n }\n\n function onError(): void {\n setShowSpinner(false);\n alerts.error(LanguageService.getPhrase(namespace, 'error'));\n }\n\n function onClick(): Promise<void> {\n setShowSpinner(true);\n \n return setPresentation(selectedPresentation, 'activeAndPreferred')\n .then(onSuccess)\n .catch(onError);\n }\n\n function isDisabled(): boolean {\n if (!canSelectPresentation)\n return false;\n\n return !selectedPresentation;\n }\n\n function onClickSignIn(): void {\n AnalyticsHelper.logUserAction(\n {\n url: Core.AppLinkHelper.getHref({\n application: AppChannels.DEFAULT,\n action: Actions.Default.CHALLENGE\n })\n },\n {\n actionType: UserAction.Click,\n entity: EntityType.AppLink,\n descriptor: SignUpDescriptors.SignIn,\n location: LocationContext.WelcomePopup\n }\n );\n }\n\n function getPopupSize(): 'md' | 'lg'| 'sm' {\n if (isMobile)\n return 'sm';\n\n if (availablePresentations?.length > 2)\n return 'lg';\n\n return 'md';\n }\n\n /**\n * If there's only one presentation, we still need to set it in\n * LocalStorage for public users. This is to ensure that they're not displayed\n * the popup each and every time.\n */\n React.useEffect(() => {\n if (!hasPresentationsLoaded || canSelectPresentation)\n return;\n\n setSelectedPresentation(ArrayHelper.first(availablePresentations));\n }, [ canSelectPresentation, hasPresentationsLoaded ]);\n\n const Buttons = () => (\n <PopupButtons>\n <PopupButtons.Submit\n variant='dark'\n onClick={onClick}\n text={getPhrase('cta')}\n showSpinner={showSpinner}\n disabled={isDisabled()}\n className='mx-auto'\n />\n </PopupButtons>\n );\n\n const LoginLink = () => (\n <div className='mt-3 text-center'>\n <ExistingAccountSignIn\n link={Core.AppLinkHelper.getHref({ application: AppChannels.DEFAULT, action: Actions.Default.CHALLENGE })}\n onClick={onClickSignIn}\n />\n </div>\n );\n\n const SinglePresentationContent = () => (\n <div className={`${styles.selectPresentation}`}>\n <div className='d-block mx-auto p-4'>\n <img\n src={ImageUrls.SignUp.UPGRADE}\n className='img-fluid'\n alt=''\n />\n </div>\n <h2 className='h4 text-center'>\n <Text\n namespace={namespace}\n phrase='infoPrimary'\n />\n </h2>\n <p className='text-center'>\n <Text namespace={namespace} phrase='infoSecondary' />\n </p>\n <div className='mt-3'>\n <Buttons />\n </div>\n <LoginLink />\n </div>\n );\n\n const MultiPresentationContent = () => (\n <div className={`${styles.selectPresentation}`}>\n <h2 className='h4 text-center'>\n <Text\n namespace={namespace}\n phrase='infoPrimary'\n />\n </h2>\n <p className='text-center'>\n <Text namespace={namespace} phrase='infoSecondaryMulti' />\n </p>\n <div className='position-relative'>\n <ul className={`list-unstyled d-flex ${styles.preferenceList}`}>\n {availablePresentations?.map((presentation: Presentation) => {\n if (presentation.type !== PresentationType.Subject)\n return <React.Fragment key={presentation.id}></React.Fragment>;\n\n return (\n <PreferenceItem\n key={presentation.id}\n name={presentation.name}\n imageUrl={ImageHelper.createUrl(presentation.cover?.url, { size: ImageSize.Medium }) || ''}\n onClick={() => setSelectedPresentation(presentation)}\n isSelected={selectedPresentation?.id === presentation.id}\n extraClasses={`${styles.preferenceItem} m-2`}\n radioButton\n />\n );\n })}\n </ul>\n </div>\n <Buttons />\n <LoginLink />\n </div>\n );\n\n if (!hasPresentationsLoaded)\n return <></>;\n\n return (\n <Popup\n title={getPhrase('title')}\n size={getPopupSize()}\n closeButton={!canSelectPresentation}\n closePopup={props.closePopup}\n backdrop={canSelectPresentation ? 'static' : true}\n dialogClassName={SeoConstants.WELCOME_POPUP_SELECTOR}\n centered\n >\n {canSelectPresentation\n ? <MultiPresentationContent />\n : <SinglePresentationContent />\n }\n </Popup>\n );\n}","// extracted by mini-css-extract-plugin\nexport default {\"grid\":\"X9r1Y\",\"subgrid\":\"TgYhp\"};"],"names":["ExistingAccountSignIn","props","href","link","className","onClick","SCROLL_TOLERANCE","StickyFooter","justifyClass","justify","children","NonStickyFooter","mediaQuery","widthClass","OnboardingFooter","isScrolledToBottom","window","innerHeight","scrollY","document","body","offsetHeight","isSticky","setIsSticky","throttledOnViewportChange","FunctionHelper","shouldSetToSticky","addEventListener","removeEventListener","defaultProps","SubjectPreferenceGridRow","TopicPreferencesContext","expandedSubject","selections","selectedSubjects","subjects","map","subject","itemDisabled","id","find","child","isDisabled","clickHandler","onSelect","isExpandableOption","onExpand","onCollapse","hasSelectedBulk","SubjectPreferenceItem","key","selected","includes","disabled","SubjectPreferenceGrid","eventHandlers","itemsPerRow","useGetRowItemCapacity","subjectRows","reduce","acc","index","push","ArrayHelper","row","i","isExpanded","context","coverUrl","cover","ImageHelper","url","size","childIds","selectedChildCount","filter","selection","length","component","PreferenceItem","name","imageUrl","isSelected","isExpandable","expand","extraClasses","hideStatus","Tooltip","title","ExpandableItemStatus","selectedChildrenCount","SelectableItemStatus","svg","SvgContainer","svgName","radioButton","baseClass","caretClass","role","style","backgroundImage","tabIndex","createContext","undefined","useGetMediaQueryString","isXS","isSM","isMD","isLG","isXL","isXXL","currentString","namespace","getPhrase","LanguageService","PRESERVE_APPLINK_REDIRECTION","application","action","prev","currentAppLink","WelcomePopupView","showSpinner","setShowSpinner","selectedPresentation","setSelectedPresentation","isMobile","alerts","usePresentation","availablePresentations","setPresentation","hasPresentationsLoaded","canSelectPresentation","TopicsConstants","onSuccess","AnalyticsHelper","actionType","entity","location","workflowPhase","descriptor","eventVersion","ContextService","appLink","replace","closePopup","onError","error","then","onClickSignIn","Buttons","PopupButtons","variant","text","LoginLink","Popup","closeButton","backdrop","dialogClassName","SeoConstants","centered","Text","phrase","presentation","type","PresentationType","src","ImageUrls","alt"],"sourceRoot":""}
@@ -1,3 +1,3 @@
1
- /*! For license information please see 7112-ea440dfba0-lite.chunk.js.LICENSE.txt */
2
- (self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7112],{99882:(e,t,r)=>{"use strict";r.d(t,{U:()=>y});var n,o=r(32735),a=r(59087),i=r(23481);!function(e){e.ShowDetails="show-details",e.EmailedUsers="emailed-students",e.EmailedAdmin="emailed-admin"}(n||(n={}));var c=r(83345),s=r(76881),u=r(69883),l="userManager.userCreatedSuccess";function p(e){return o.createElement("div",{className:"d-flex justify-content-center w-50 mx-auto pb-3"},o.createElement("img",{src:e.emailSentImageUrl,alt:"",role:"presentation",className:"w-100"}))}function f(e){return o.createElement(o.Fragment,null,o.createElement("p",null,o.createElement(c.x,{phrase:"userDetailsInfo"})),o.createElement("p",{className:"mb-0 fw-semibold"},o.createElement(c.x,{phrase:"username"})),o.createElement("p",null,e.creationResponse.username),o.createElement("p",{className:"mb-0 fw-semibold"},o.createElement(c.x,{phrase:"password"})),o.createElement("p",null,e.creationResponse.password))}function d(e){return o.createElement(o.Fragment,null,o.createElement(p,Object.assign({},e)),o.createElement("p",null,o.createElement(c.x,{phrase:"emailedUsersInfo",options:{smartCount:e.creationResponse.isBulk?2:1}})))}function y(e){var t=(0,u.Z)(),r=o.useMemo((function(){return e.userType===s.Y.Staff||e.creationResponse.isBulk||e.creationResponse.hasEmail?n.EmailedUsers:n.ShowDetails}),[e.creationResponse]);if(!r)return o.createElement(o.Fragment,null);var p=function(){switch(r){case n.ShowDetails:return o.createElement(f,Object.assign({},e));case n.EmailedUsers:return o.createElement(d,Object.assign({},e))}}();return o.createElement(c.D.Provider,{value:l},p,o.createElement("div",{className:"d-flex justify-content-end border-top pt-3 px-3 mx-n3"},r===n.ShowDetails?o.createElement(a.CopyToClipboard,{onCopy:function(){t.success(i.T.getPhrase(l,"copied")),e.onClose()},text:"".concat(e.creationResponse.username," - ").concat(e.creationResponse.password)},o.createElement("button",{className:"btn btn-dark"},o.createElement(c.x,{phrase:"copy"}))):o.createElement("button",{onClick:e.onClose,className:"btn btn-dark"},o.createElement(c.x,{phrase:"okay"}))))}},99705:(e,t,r)=>{"use strict";var n,o;r.d(t,{b:()=>o}),function(e){e.AddToPlaylist="115005679748",e.EditSsoAccounts="8202508040345",e.LibraryEditor="360001974533",e.VideoAccess="360000153947",e.AddFromOnline="360011718234",e.UploadToLibraryEditor="360012069334",e.PBTErrorCodes="360012421153",e.ManuelReview="360020004534",e.LibraryReview="360000163788"}(n||(n={})),function(e){e.Integrations="4407268725529",e.Classrooms="4405362551833",e.MakeInteractive="4405370510873",e.EditSsoAccounts="8202605666073",e.UploadToLibraryEditor="10672936659865",e.AddFromLite="10671345281561",e.ManageSsoYearGroups="14691130889241",e.ContentReview="18525199576601",e.ContentPermissions="14692125209497",e.AccessSettings="22110291468057",e.ContentGuidelines="24133696186009",e.FoxtelFaq="24133519542169",e.ViviIntegration="23826297956377",e.AppleTvIntegration="25832373739929",e.RssFeed="32567445635097",e.ManageGroupPermissions="35407217335705"}(o||(o={}))},59134:(e,t,r)=>{"use strict";r.r(t),r.d(t,{EditUserView:()=>U});var n=r(32735),o=r(70680),a=r(23481),i=r(20354),c=r(49985),s=r(65858),u=r(2968),l=r(99882),p=r(26055),f=r(43820),d=r(39739),y=r(9111),m=r(32045),h=r(99705),v=r(76881),b=r(39151),g=r(31949),w=r(69883),E=r(12778),x=r(64818),O=r(99742),S=r(14070),C=r(97291),P=r(80658),k=r(47288),j=r(29241);function T(e){return T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},T(e)}function A(){A=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",s=a.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function l(e,t,r,n){var a=t&&t.prototype instanceof v?t:v,i=Object.create(a.prototype),c=new N(n||[]);return o(i,"_invoke",{value:P(e,r,c)}),i}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=l;var f="suspendedStart",d="suspendedYield",y="executing",m="completed",h={};function v(){}function b(){}function g(){}var w={};u(w,i,(function(){return this}));var E=Object.getPrototypeOf,x=E&&E(E(_([])));x&&x!==r&&n.call(x,i)&&(w=x);var O=g.prototype=v.prototype=Object.create(w);function S(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function r(o,a,i,c){var s=p(e[o],e,a);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==T(l)&&n.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,i,c)}),(function(e){r("throw",e,i,c)})):t.resolve(l).then((function(e){u.value=e,i(u)}),(function(e){return r("throw",e,i,c)}))}c(s.arg)}var a;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return a=a?a.then(o,o):o()}})}function P(t,r,n){var o=f;return function(a,i){if(o===y)throw Error("Generator is already running");if(o===m){if("throw"===a)throw i;return{value:e,done:!0}}for(n.method=a,n.arg=i;;){var c=n.delegate;if(c){var s=k(c,n);if(s){if(s===h)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var u=p(t,r,n);if("normal"===u.type){if(o=n.done?m:d,u.arg===h)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=m,n.method="throw",n.arg=u.arg)}}}function k(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,k(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),h;var a=p(o,t.iterator,r.arg);if("throw"===a.type)return r.method="throw",r.arg=a.arg,r.delegate=null,h;var i=a.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,h):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function j(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function L(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function N(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function _(t){if(t||""===t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return a.next=a}}throw new TypeError(T(t)+" is not iterable")}return b.prototype=g,o(O,"constructor",{value:g,configurable:!0}),o(g,"constructor",{value:b,configurable:!0}),b.displayName=u(g,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===b||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,u(e,s,"GeneratorFunction")),e.prototype=Object.create(O),e},t.awrap=function(e){return{__await:e}},S(C.prototype),u(C.prototype,c,(function(){return this})),t.AsyncIterator=C,t.async=function(e,r,n,o,a){void 0===a&&(a=Promise);var i=new C(l(e,r,n,o),a);return t.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},S(O),u(O,s,"Generator"),u(O,i,(function(){return this})),u(O,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=_,N.prototype={constructor:N,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(L),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return c.type="throw",c.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],c=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),u=n.call(i,"finallyLoc");if(s&&u){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,h):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),L(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:_(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function L(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var N=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{s(n.next(e))}catch(e){a(e)}}function c(e){try{s(n.throw(e))}catch(e){a(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,c)}s((n=n.apply(e,t||[])).next())}))};function _(e,t){var r,n,o;return{userId:e.id,firstName:e.name,surname:e.surname,userType:e.userType,customerId:t.customerId,email:e.email||"",masterYearGroup:null!==(r=e.masterYearGroup)&&void 0!==r?r:null,username:e.username,masterRole:e.userProfile.role,status:e.status,displayName:null!==(o=null===(n=e.metadata)||void 0===n?void 0:n.displayName)&&void 0!==o?o:""}}var R=a.T.encloseNamespace("userManager.editUser");function U(e){var t,r,a=(t=n.useState(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,i,c=[],s=!0,u=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;s=!1}else for(;!(s=(n=a.call(r)).done)&&(c.push(n.value),c.length!==t);s=!0);}catch(e){u=!0,o=e}finally{try{if(!s&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(u)throw o}}return c}}(t,r)||function(e,t){if(e){if("string"==typeof e)return L(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?L(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),T=a[0],U=a[1],I=(0,w.Z)(),D=(0,o.I0)(),F=i.a.useGetFetchAsync(),G=i.a.useBasicFetch(k.N.getUser(e.id)),M=i.a.useBasicFetch(g.N.currentUser()),B=i.a.useBasicFetch(M.data&&k.N.yearGroups(M.data.customerId)),Y=i.a.useBasicFetch(M.data&&P.F.getCustomerSecuritySettings(M.data.customerId)),V=i.a.useBasicFetch(b.L.config()),q=i.a.useBasicFetch(k.N.authenticationMethods([e.id]));function W(t){var r=d.P.formatCreateOrValidateUserRequest([t],e.userType,M.data.customerId);return F(k.N.bulkValidate(r))}function Z(t){i.a.fetch(D,k.N.resendActivationEmail(t.id,(function(){c.k.logUserAction(t,Object.assign(Object.assign({},e.analyticsOptions),{actionType:s.Vw.SendEmail,descriptor:s.on.ActivateUser})),I.success(R("success")),U(!0)}),(function(){I.error(R("error")),e.closePopup()})))}var H=!!G.data&&!!M.data&&!!B.data&&!!Y.data&&q.hasCompleted&&!!V.data;return n.createElement(p.A.Provider,{value:f.a.Primary},n.createElement(y.G,{closePopup:e.closePopup,title:R("popupTitle"),showLoadingSpinner:!H},H?T?n.createElement(l.U,{creationResponse:{isBulk:!1},userType:e.userType,onClose:e.closePopup,emailSentImageUrl:O.W.EMAIL_SENT}):n.createElement(n.Fragment,null,x.l.hasSso(G.data)&&n.createElement(j.Z,{userType:e.userType,isNew:!1,helpArticle:E.o.getLiteArticle(h.b.EditSsoAccounts),ssoMappingsApplink:{application:C.O.SETTINGS,action:S.e.Settings.SSO_YEAR_GROUP_MAPPINGS}}),n.createElement(u.H,{user:G.data,userType:e.userType,yearGroups:e.userType===v.Y.Learner?B.data:null,initialValues:_(G.data,M.data),onSubmit:function(t,r){return N(this,void 0,void 0,A().mark((function n(){var o,a;return A().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,W(t);case 2:if(o=n.sent,d.P.handleAsyncErrors(o,t,G.data,r)){n.next=6;break}return n.abrupt("return");case 6:a=d.P.formatEditUserRequest(t),i.a.fetch(D,k.N.updateUser(a,M.data.id,(function(t){c.k.logUserAction(t,e.analyticsOptions),G.data.email!==t.email&&t.status===m.w.Inactive?Z(t):(I.success(R("success")),e.closePopup())}),(function(){I.error(R("error")),e.closePopup()})));case 8:case"end":return n.stop()}}),n)})))},onClickCancel:e.closePopup,currentUser:M.data,emailRequired:e.userType===v.Y.Staff,showDisplayNameField:e.userType===v.Y.Staff,passwordPolicy:Y.data,editSsoUserHelpArticle:E.o.getLiteArticle(h.b.EditSsoAccounts),validateEmail:function(t){var r={userEmails:[{email:t,userType:e.userType}]};return F(k.N.bulkCheckEmail(r,M.data.customerId))}})):n.createElement(n.Fragment,null)))}},29241:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(32735),o=r(86685),a=r(36848),i=r(83345),c="userManager.editUser";function s(e){return n.createElement(o.W,{className:"py-2"},n.createElement(i.x,{namespace:c,phrase:e.isNew?"newSsoUserWarning":"editSsoUserWarning"}),!e.isNew&&n.createElement(a.F,{appLink:e.ssoMappingsApplink,className:"info-link d-block my-1",openInNewTab:!0},n.createElement(i.x,{namespace:c,phrase:"ssoMapping"})),n.createElement("a",{className:"info-link d-block",href:e.helpArticle,target:"_blank"},n.createElement(i.x,{namespace:c,phrase:"ssoArticleLink"})))}},91969:(e,t,r)=>{"use strict";var n=r(47033),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var r,a,i,c,s,u,l=!1;t||(t={}),r=t.debug||!1;try{if(i=n(),c=document.createRange(),s=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",(function(n){if(n.stopPropagation(),t.format)if(n.preventDefault(),void 0===n.clipboardData){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var a=o[t.format]||o.default;window.clipboardData.setData(a,e)}else n.clipboardData.clearData(),n.clipboardData.setData(t.format,e);t.onCopy&&(n.preventDefault(),t.onCopy(n.clipboardData))})),document.body.appendChild(u),c.selectNodeContents(u),s.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");l=!0}catch(n){r&&console.error("unable to copy using execCommand: ",n),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),l=!0}catch(n){r&&console.error("unable to copy using clipboardData: ",n),r&&console.error("falling back to prompt"),a=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(a,e)}}finally{s&&("function"==typeof s.removeRange?s.removeRange(c):s.removeAllRanges()),u&&document.body.removeChild(u),i()}return l}},44818:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var o=c(r(32735)),a=c(r(91969)),i=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach((function(t){y(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function p(e,t){return p=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},p(e,t)}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function d(e){return d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},d(e)}function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var m=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&p(e,t)}(h,e);var t,r,c,s,m=(c=h,s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=d(c);if(s){var r=d(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===n(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return f(e)}(this,e)});function h(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return y(f(e=m.call.apply(m,[this].concat(r))),"onClick",(function(t){var r=e.props,n=r.text,i=r.onCopy,c=r.children,s=r.options,u=o.default.Children.only(c),l=(0,a.default)(n,s);i&&i(n,l),u&&u.props&&"function"==typeof u.props.onClick&&u.props.onClick(t)})),e}return t=h,(r=[{key:"render",value:function(){var e=this.props,t=(e.text,e.onCopy,e.options,e.children),r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,i),n=o.default.Children.only(t);return o.default.cloneElement(n,u(u({},r),{},{onClick:this.onClick}))}}])&&l(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),h}(o.default.PureComponent);t.CopyToClipboard=m,y(m,"defaultProps",{onCopy:void 0,options:void 0})},59087:(e,t,r)=>{"use strict";var n=r(44818).CopyToClipboard;n.CopyToClipboard=n,e.exports=n},47033:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,r=[],n=0;n<e.rangeCount;n++)r.push(e.getRangeAt(n));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||r.forEach((function(t){e.addRange(t)})),t&&t.focus()}}}}]);
3
- //# sourceMappingURL=7112-ea440dfba0-lite.chunk.js.map
1
+ /*! For license information please see 7112-2e77a3e7af-lite.chunk.js.LICENSE.txt */
2
+ (self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[7112],{99882:(e,t,r)=>{"use strict";r.d(t,{U:()=>y});var n,o=r(32735),a=r(59087),i=r(23481);!function(e){e.ShowDetails="show-details",e.EmailedUsers="emailed-students",e.EmailedAdmin="emailed-admin"}(n||(n={}));var c=r(83345),s=r(76881),u=r(69883),l="userManager.userCreatedSuccess";function p(e){return o.createElement("div",{className:"d-flex justify-content-center w-50 mx-auto pb-3"},o.createElement("img",{src:e.emailSentImageUrl,alt:"",role:"presentation",className:"w-100"}))}function f(e){return o.createElement(o.Fragment,null,o.createElement("p",null,o.createElement(c.x,{phrase:"userDetailsInfo"})),o.createElement("p",{className:"mb-0 fw-semibold"},o.createElement(c.x,{phrase:"username"})),o.createElement("p",null,e.creationResponse.username),o.createElement("p",{className:"mb-0 fw-semibold"},o.createElement(c.x,{phrase:"password"})),o.createElement("p",null,e.creationResponse.password))}function d(e){return o.createElement(o.Fragment,null,o.createElement(p,Object.assign({},e)),o.createElement("p",null,o.createElement(c.x,{phrase:"emailedUsersInfo",options:{smartCount:e.creationResponse.isBulk?2:1}})))}function y(e){var t=(0,u.Z)(),r=o.useMemo((function(){return e.userType===s.Y.Staff||e.creationResponse.isBulk||e.creationResponse.hasEmail?n.EmailedUsers:n.ShowDetails}),[e.creationResponse]);if(!r)return o.createElement(o.Fragment,null);var p=function(){switch(r){case n.ShowDetails:return o.createElement(f,Object.assign({},e));case n.EmailedUsers:return o.createElement(d,Object.assign({},e))}}();return o.createElement(c.D.Provider,{value:l},p,o.createElement("div",{className:"d-flex justify-content-end border-top pt-3 px-3 mx-n3"},r===n.ShowDetails?o.createElement(a.CopyToClipboard,{onCopy:function(){t.success(i.T.getPhrase(l,"copied")),e.onClose()},text:"".concat(e.creationResponse.username," - ").concat(e.creationResponse.password)},o.createElement("button",{className:"btn btn-dark"},o.createElement(c.x,{phrase:"copy"}))):o.createElement("button",{onClick:e.onClose,className:"btn btn-dark"},o.createElement(c.x,{phrase:"okay"}))))}},99705:(e,t,r)=>{"use strict";var n,o;r.d(t,{b:()=>o}),function(e){e.AddToPlaylist="115005679748",e.EditSsoAccounts="8202508040345",e.LibraryEditor="360001974533",e.VideoAccess="360000153947",e.AddFromOnline="360011718234",e.UploadToLibraryEditor="360012069334",e.PBTErrorCodes="360012421153",e.ManuelReview="360020004534",e.LibraryReview="360000163788"}(n||(n={})),function(e){e.Integrations="4407268725529",e.Classrooms="4405362551833",e.MakeInteractive="4405370510873",e.EditSsoAccounts="8202605666073",e.UploadToLibraryEditor="10672936659865",e.AddFromLite="10671345281561",e.ManageSsoYearGroups="14691130889241",e.ContentReview="18525199576601",e.ContentPermissions="14692125209497",e.AccessSettings="27927466562201",e.ContentGuidelines="24133696186009",e.FoxtelFaq="24133519542169",e.ViviIntegration="23826297956377",e.AppleTvIntegration="25832373739929",e.RssFeed="32567445635097",e.ManageGroupPermissions="35407217335705"}(o||(o={}))},59134:(e,t,r)=>{"use strict";r.r(t),r.d(t,{EditUserView:()=>U});var n=r(32735),o=r(70680),a=r(23481),i=r(20354),c=r(49985),s=r(65858),u=r(2968),l=r(99882),p=r(26055),f=r(43820),d=r(39739),y=r(9111),m=r(32045),h=r(99705),v=r(76881),b=r(39151),g=r(31949),w=r(69883),E=r(12778),x=r(64818),O=r(99742),S=r(14070),C=r(97291),P=r(80658),k=r(47288),j=r(29241);function T(e){return T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},T(e)}function A(){A=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},a="function"==typeof Symbol?Symbol:{},i=a.iterator||"@@iterator",c=a.asyncIterator||"@@asyncIterator",s=a.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function l(e,t,r,n){var a=t&&t.prototype instanceof v?t:v,i=Object.create(a.prototype),c=new N(n||[]);return o(i,"_invoke",{value:P(e,r,c)}),i}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=l;var f="suspendedStart",d="suspendedYield",y="executing",m="completed",h={};function v(){}function b(){}function g(){}var w={};u(w,i,(function(){return this}));var E=Object.getPrototypeOf,x=E&&E(E(_([])));x&&x!==r&&n.call(x,i)&&(w=x);var O=g.prototype=v.prototype=Object.create(w);function S(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function C(e,t){function r(o,a,i,c){var s=p(e[o],e,a);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==T(l)&&n.call(l,"__await")?t.resolve(l.__await).then((function(e){r("next",e,i,c)}),(function(e){r("throw",e,i,c)})):t.resolve(l).then((function(e){u.value=e,i(u)}),(function(e){return r("throw",e,i,c)}))}c(s.arg)}var a;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return a=a?a.then(o,o):o()}})}function P(t,r,n){var o=f;return function(a,i){if(o===y)throw Error("Generator is already running");if(o===m){if("throw"===a)throw i;return{value:e,done:!0}}for(n.method=a,n.arg=i;;){var c=n.delegate;if(c){var s=k(c,n);if(s){if(s===h)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var u=p(t,r,n);if("normal"===u.type){if(o=n.done?m:d,u.arg===h)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=m,n.method="throw",n.arg=u.arg)}}}function k(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,k(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),h;var a=p(o,t.iterator,r.arg);if("throw"===a.type)return r.method="throw",r.arg=a.arg,r.delegate=null,h;var i=a.arg;return i?i.done?(r[t.resultName]=i.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,h):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function j(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function L(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function N(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(j,this),this.reset(!0)}function _(t){if(t||""===t){var r=t[i];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,a=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return a.next=a}}throw new TypeError(T(t)+" is not iterable")}return b.prototype=g,o(O,"constructor",{value:g,configurable:!0}),o(g,"constructor",{value:b,configurable:!0}),b.displayName=u(g,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===b||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,g):(e.__proto__=g,u(e,s,"GeneratorFunction")),e.prototype=Object.create(O),e},t.awrap=function(e){return{__await:e}},S(C.prototype),u(C.prototype,c,(function(){return this})),t.AsyncIterator=C,t.async=function(e,r,n,o,a){void 0===a&&(a=Promise);var i=new C(l(e,r,n,o),a);return t.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},S(O),u(O,s,"Generator"),u(O,i,(function(){return this})),u(O,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=_,N.prototype={constructor:N,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(L),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return c.type="throw",c.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],c=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var s=n.call(i,"catchLoc"),u=n.call(i,"finallyLoc");if(s&&u){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,h):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),L(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:_(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),h}},t}function L(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}var N=function(e,t,r,n){return new(r||(r=Promise))((function(o,a){function i(e){try{s(n.next(e))}catch(e){a(e)}}function c(e){try{s(n.throw(e))}catch(e){a(e)}}function s(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,c)}s((n=n.apply(e,t||[])).next())}))};function _(e,t){var r,n,o;return{userId:e.id,firstName:e.name,surname:e.surname,userType:e.userType,customerId:t.customerId,email:e.email||"",masterYearGroup:null!==(r=e.masterYearGroup)&&void 0!==r?r:null,username:e.username,masterRole:e.userProfile.role,status:e.status,displayName:null!==(o=null===(n=e.metadata)||void 0===n?void 0:n.displayName)&&void 0!==o?o:""}}var R=a.T.encloseNamespace("userManager.editUser");function U(e){var t,r,a=(t=n.useState(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,i,c=[],s=!0,u=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;s=!1}else for(;!(s=(n=a.call(r)).done)&&(c.push(n.value),c.length!==t);s=!0);}catch(e){u=!0,o=e}finally{try{if(!s&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(u)throw o}}return c}}(t,r)||function(e,t){if(e){if("string"==typeof e)return L(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?L(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),T=a[0],U=a[1],I=(0,w.Z)(),D=(0,o.I0)(),F=i.a.useGetFetchAsync(),G=i.a.useBasicFetch(k.N.getUser(e.id)),M=i.a.useBasicFetch(g.N.currentUser()),B=i.a.useBasicFetch(M.data&&k.N.yearGroups(M.data.customerId)),Y=i.a.useBasicFetch(M.data&&P.F.getCustomerSecuritySettings(M.data.customerId)),V=i.a.useBasicFetch(b.L.config()),q=i.a.useBasicFetch(k.N.authenticationMethods([e.id]));function W(t){var r=d.P.formatCreateOrValidateUserRequest([t],e.userType,M.data.customerId);return F(k.N.bulkValidate(r))}function Z(t){i.a.fetch(D,k.N.resendActivationEmail(t.id,(function(){c.k.logUserAction(t,Object.assign(Object.assign({},e.analyticsOptions),{actionType:s.Vw.SendEmail,descriptor:s.on.ActivateUser})),I.success(R("success")),U(!0)}),(function(){I.error(R("error")),e.closePopup()})))}var H=!!G.data&&!!M.data&&!!B.data&&!!Y.data&&q.hasCompleted&&!!V.data;return n.createElement(p.A.Provider,{value:f.a.Primary},n.createElement(y.G,{closePopup:e.closePopup,title:R("popupTitle"),showLoadingSpinner:!H},H?T?n.createElement(l.U,{creationResponse:{isBulk:!1},userType:e.userType,onClose:e.closePopup,emailSentImageUrl:O.W.EMAIL_SENT}):n.createElement(n.Fragment,null,x.l.hasSso(G.data)&&n.createElement(j.Z,{userType:e.userType,isNew:!1,helpArticle:E.o.getLiteArticle(h.b.EditSsoAccounts),ssoMappingsApplink:{application:C.O.SETTINGS,action:S.e.Settings.SSO_YEAR_GROUP_MAPPINGS}}),n.createElement(u.H,{user:G.data,userType:e.userType,yearGroups:e.userType===v.Y.Learner?B.data:null,initialValues:_(G.data,M.data),onSubmit:function(t,r){return N(this,void 0,void 0,A().mark((function n(){var o,a;return A().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,W(t);case 2:if(o=n.sent,d.P.handleAsyncErrors(o,t,G.data,r)){n.next=6;break}return n.abrupt("return");case 6:a=d.P.formatEditUserRequest(t),i.a.fetch(D,k.N.updateUser(a,M.data.id,(function(t){c.k.logUserAction(t,e.analyticsOptions),G.data.email!==t.email&&t.status===m.w.Inactive?Z(t):(I.success(R("success")),e.closePopup())}),(function(){I.error(R("error")),e.closePopup()})));case 8:case"end":return n.stop()}}),n)})))},onClickCancel:e.closePopup,currentUser:M.data,emailRequired:e.userType===v.Y.Staff,showDisplayNameField:e.userType===v.Y.Staff,passwordPolicy:Y.data,editSsoUserHelpArticle:E.o.getLiteArticle(h.b.EditSsoAccounts),validateEmail:function(t){var r={userEmails:[{email:t,userType:e.userType}]};return F(k.N.bulkCheckEmail(r,M.data.customerId))}})):n.createElement(n.Fragment,null)))}},29241:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(32735),o=r(86685),a=r(36848),i=r(83345),c="userManager.editUser";function s(e){return n.createElement(o.W,{className:"py-2"},n.createElement(i.x,{namespace:c,phrase:e.isNew?"newSsoUserWarning":"editSsoUserWarning"}),!e.isNew&&n.createElement(a.F,{appLink:e.ssoMappingsApplink,className:"info-link d-block my-1",openInNewTab:!0},n.createElement(i.x,{namespace:c,phrase:"ssoMapping"})),n.createElement("a",{className:"info-link d-block",href:e.helpArticle,target:"_blank"},n.createElement(i.x,{namespace:c,phrase:"ssoArticleLink"})))}},91969:(e,t,r)=>{"use strict";var n=r(47033),o={"text/plain":"Text","text/html":"Url",default:"Text"};e.exports=function(e,t){var r,a,i,c,s,u,l=!1;t||(t={}),r=t.debug||!1;try{if(i=n(),c=document.createRange(),s=document.getSelection(),(u=document.createElement("span")).textContent=e,u.ariaHidden="true",u.style.all="unset",u.style.position="fixed",u.style.top=0,u.style.clip="rect(0, 0, 0, 0)",u.style.whiteSpace="pre",u.style.webkitUserSelect="text",u.style.MozUserSelect="text",u.style.msUserSelect="text",u.style.userSelect="text",u.addEventListener("copy",(function(n){if(n.stopPropagation(),t.format)if(n.preventDefault(),void 0===n.clipboardData){r&&console.warn("unable to use e.clipboardData"),r&&console.warn("trying IE specific stuff"),window.clipboardData.clearData();var a=o[t.format]||o.default;window.clipboardData.setData(a,e)}else n.clipboardData.clearData(),n.clipboardData.setData(t.format,e);t.onCopy&&(n.preventDefault(),t.onCopy(n.clipboardData))})),document.body.appendChild(u),c.selectNodeContents(u),s.addRange(c),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");l=!0}catch(n){r&&console.error("unable to copy using execCommand: ",n),r&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(t.format||"text",e),t.onCopy&&t.onCopy(window.clipboardData),l=!0}catch(n){r&&console.error("unable to copy using clipboardData: ",n),r&&console.error("falling back to prompt"),a=function(e){var t=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return e.replace(/#{\s*key\s*}/g,t)}("message"in t?t.message:"Copy to clipboard: #{key}, Enter"),window.prompt(a,e)}}finally{s&&("function"==typeof s.removeRange?s.removeRange(c):s.removeAllRanges()),u&&document.body.removeChild(u),i()}return l}},44818:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.CopyToClipboard=void 0;var o=c(r(32735)),a=c(r(91969)),i=["text","onCopy","options","children"];function c(e){return e&&e.__esModule?e:{default:e}}function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach((function(t){y(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function p(e,t){return p=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},p(e,t)}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function d(e){return d=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},d(e)}function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var m=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&p(e,t)}(h,e);var t,r,c,s,m=(c=h,s=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=d(c);if(s){var r=d(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===n(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return f(e)}(this,e)});function h(){var e;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,h);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return y(f(e=m.call.apply(m,[this].concat(r))),"onClick",(function(t){var r=e.props,n=r.text,i=r.onCopy,c=r.children,s=r.options,u=o.default.Children.only(c),l=(0,a.default)(n,s);i&&i(n,l),u&&u.props&&"function"==typeof u.props.onClick&&u.props.onClick(t)})),e}return t=h,(r=[{key:"render",value:function(){var e=this.props,t=(e.text,e.onCopy,e.options,e.children),r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,i),n=o.default.Children.only(t);return o.default.cloneElement(n,u(u({},r),{},{onClick:this.onClick}))}}])&&l(t.prototype,r),Object.defineProperty(t,"prototype",{writable:!1}),h}(o.default.PureComponent);t.CopyToClipboard=m,y(m,"defaultProps",{onCopy:void 0,options:void 0})},59087:(e,t,r)=>{"use strict";var n=r(44818).CopyToClipboard;n.CopyToClipboard=n,e.exports=n},47033:e=>{e.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,r=[],n=0;n<e.rangeCount;n++)r.push(e.getRangeAt(n));switch(t.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":t.blur();break;default:t=null}return e.removeAllRanges(),function(){"Caret"===e.type&&e.removeAllRanges(),e.rangeCount||r.forEach((function(t){e.addRange(t)})),t&&t.focus()}}}}]);
3
+ //# sourceMappingURL=7112-2e77a3e7af-lite.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scripts/7112-ea440dfba0-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/user-manager/enums/UserCreatedState.ts","file:///app/packages/libs/shared/src/apps/user-manager/components/user-created-success/UserCreatedSuccess.tsx","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/projects/lite/src/apps/user-manager/views/edit-user/EditUserView.tsx","file:///app/packages/projects/lite/src/apps/user-manager/views/edit-user/component/edit-sso-user-warning/LiteEditSsoUserWarning.tsx","file:///app/node_modules/copy-to-clipboard/index.js","file:///app/node_modules/react-copy-to-clipboard/lib/Component.js","file:///app/node_modules/react-copy-to-clipboard/lib/index.js","file:///app/node_modules/toggle-selection/index.js"],"sourcesContent":["export enum UserCreatedState {\n ShowDetails = 'show-details',\n EmailedUsers = 'emailed-students',\n EmailedAdmin = 'emailed-admin'\n}","import React from 'react';\nimport { CopyToClipboard } from 'react-copy-to-clipboard';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { UserCreatedState } from 'libs/shared/apps/user-manager/enums/UserCreatedState';\nimport { BulkCreateUsersResponse } from 'libs/shared/apps/user-manager/interfaces';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\n\nconst namespace = 'userManager.userCreatedSuccess';\n\ninterface UserCreatedSuccessProps {\n creationResponse: BulkCreateUsersResponse;\n userType: UserGroup;\n onClose: () => void;\n emailSentImageUrl: string;\n}\n\nfunction EmailSentImage(props: UserCreatedSuccessProps): JSX.Element {\n return (\n <div className='d-flex justify-content-center w-50 mx-auto pb-3'>\n <img\n src={props.emailSentImageUrl}\n alt=''\n role='presentation'\n className='w-100'\n />\n </div>\n );\n}\n\nfunction UserDetailsDialog(props: UserCreatedSuccessProps): JSX.Element {\n return (\n <>\n <p><Text phrase='userDetailsInfo' /></p>\n\n <p className='mb-0 fw-semibold'><Text phrase='username' /></p>\n <p>{props.creationResponse.username}</p>\n\n <p className='mb-0 fw-semibold'><Text phrase='password' /></p>\n <p>{props.creationResponse.password}</p>\n </>\n );\n}\n\nfunction EmailedUsersDialog(props: UserCreatedSuccessProps): JSX.Element {\n return (\n <>\n <EmailSentImage {...props} />\n <p>\n <Text phrase='emailedUsersInfo' options={{ smartCount: props.creationResponse.isBulk ? 2 : 1 }} />\n </p>\n </>\n );\n}\n\nexport function UserCreatedSuccess(props: UserCreatedSuccessProps): JSX.Element {\n const alerts = useAlerts();\n\n function onCopyToClipboard(): void {\n alerts.success(LanguageService.getPhrase(namespace, 'copied'));\n props.onClose();\n }\n\n const state: UserCreatedState = React.useMemo(() => {\n if (props.userType === UserGroup.Staff)\n return UserCreatedState.EmailedUsers;\n \n if (props.creationResponse.isBulk || props.creationResponse.hasEmail)\n return UserCreatedState.EmailedUsers;\n\n return UserCreatedState.ShowDetails;\n }, [props.creationResponse]);\n\n if (!state)\n return <></>;\n\n const contentComponent = (() => {\n switch (state) {\n case UserCreatedState.ShowDetails:\n return <UserDetailsDialog {...props} />;\n case UserCreatedState.EmailedUsers:\n return <EmailedUsersDialog {...props} />;\n }\n })();\n\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n\n {contentComponent}\n\n <div className='d-flex justify-content-end border-top pt-3 px-3 mx-n3'>\n {state === UserCreatedState.ShowDetails\n ? (\n <CopyToClipboard\n onCopy={onCopyToClipboard}\n text={`${props.creationResponse.username} - ${props.creationResponse.password}`}\n >\n <button className='btn btn-dark'>\n <Text phrase='copy' />\n </button>\n </CopyToClipboard>\n ) : (\n <button onClick={props.onClose} className='btn btn-dark'>\n <Text phrase='okay' />\n </button>\n )\n }\n </div>\n </LanguageNamespaceContext.Provider>\n );\n}","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '22110291468057',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097',\n ManageGroupPermissions = '35407217335705'\n}\n","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { EmailDescriptor, UserAction } from 'libs/analytics/interfaces';\n\nimport { EditUserDetails } from 'libs/shared/apps/user-manager/components/edit-user-details/EditUserDetails';\nimport { UserCreatedSuccess } from 'libs/shared/apps/user-manager/components/user-created-success/UserCreatedSuccess';\nimport { UserManagerClientContext } from 'libs/shared/apps/user-manager/context/UserManagerClientContext';\nimport { UserManagerClient } from 'libs/shared/apps/user-manager/enums/UserManagerClient';\nimport { BulkUserEmailCheckRequest, BulkUserEmailCheckResponse, EditUserRequest, ErroredUsers } from 'libs/shared/apps/user-manager/interfaces';\nimport { SecuritySettingsResponse } from 'libs/shared/apps/user-manager/interfaces/SecuritySettingsResponse';\nimport { UserManagerHelper } from 'libs/shared/apps/user-manager/utils/UserManagerHelper';\nimport { FormSubmissionOptions } from 'libs/shared/components/forms/form-wrapper/FormWrapper';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { ObjectStatus } from 'libs/shared/enums/ObjectStatus';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { Config, CurrentUser, PropsWithAnalyticsOptions, PropsWithPopupViewProps, User, YearGroup } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { SecuritySettingsRequests } from 'apps/settings/flight-requests/SecuritySettingsRequests';\nimport { UserManagerRequests } from 'apps/user-manager/flight-requests/UserManagerRequests';\nimport { LiteEditSsoUserWarning } from 'apps/user-manager/views/edit-user/component/edit-sso-user-warning/LiteEditSsoUserWarning';\n\nfunction getUserInitialValues(user: User, currentUser: CurrentUser): EditUserRequest {\n return {\n userId: user.id,\n firstName: user.name,\n surname: user.surname,\n userType: user.userType,\n customerId: currentUser.customerId,\n email: user.email || '',\n masterYearGroup: user.masterYearGroup ?? null,\n username: user.username,\n masterRole: user.userProfile.role,\n status: user.status,\n displayName: user.metadata?.displayName ?? ''\n };\n}\n\nconst getPhrase = LanguageService.encloseNamespace('userManager.editUser');\n\ntype EditUserViewProps = PropsWithPopupViewProps<PropsWithAnalyticsOptions<{\n id: string;\n userType: UserGroup\n}>>;\n\nexport function EditUserView(props: EditUserViewProps): React.ReactElement {\n const [ showEmailSentConfirmation, setShowEmailConfirmation ] = React.useState(false);\n\n const alerts = useAlerts();\n const dispatch = useDispatch();\n const fetchAsync = Flight.useGetFetchAsync();\n\n const user = Flight.useBasicFetch<User>(UserManagerRequests.getUser(props.id));\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(currentUser.data &&\n UserManagerRequests.yearGroups(currentUser.data.customerId));\n const passwordPolicy = Flight.useBasicFetch<SecuritySettingsResponse>(currentUser.data &&\n SecuritySettingsRequests.getCustomerSecuritySettings(currentUser.data.customerId));\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const authMethods = Flight.useBasicFetch(UserManagerRequests.authenticationMethods([props.id]));\n\n function validateUser(_user: EditUserRequest): Promise<ErroredUsers> {\n const data = UserManagerHelper.formatCreateOrValidateUserRequest(\n [_user],\n props.userType,\n currentUser.data.customerId\n );\n\n return fetchAsync(UserManagerRequests.bulkValidate(data));\n }\n\n function validateEmail(email: string): Promise<BulkUserEmailCheckResponse> {\n const body: BulkUserEmailCheckRequest = {\n userEmails: [{ email, userType: props.userType }]\n };\n\n return fetchAsync(UserManagerRequests.bulkCheckEmail(body, currentUser.data.customerId));\n }\n\n async function saveUser(_user: EditUserRequest, onDone: (options?: FormSubmissionOptions) => void): Promise<void> {\n const errors = await validateUser(_user);\n\n const isValid = UserManagerHelper.handleAsyncErrors(errors, _user, user.data, onDone);\n\n if (!isValid)\n return;\n\n const data = UserManagerHelper.formatEditUserRequest(_user);\n\n Flight.fetch(dispatch, UserManagerRequests.updateUser(data, currentUser.data.id, updatedUser => {\n AnalyticsHelper.logUserAction(updatedUser, props.analyticsOptions);\n\n const emailHasChanged = user.data.email !== updatedUser.email;\n\n if (emailHasChanged && updatedUser.status === ObjectStatus.Inactive) {\n resendActivationEmail(updatedUser);\n return;\n }\n\n alerts.success(getPhrase('success'));\n props.closePopup();\n }, () => {\n alerts.error(getPhrase('error'));\n props.closePopup();\n }));\n }\n\n function resendActivationEmail(_user: User): void {\n Flight.fetch(dispatch, UserManagerRequests.resendActivationEmail(_user.id, () => {\n AnalyticsHelper.logUserAction(_user, {\n ...props.analyticsOptions,\n actionType: UserAction.SendEmail,\n descriptor: EmailDescriptor.ActivateUser\n });\n\n alerts.success(getPhrase('success'));\n\n setShowEmailConfirmation(true);\n }, () => {\n alerts.error(getPhrase('error'));\n props.closePopup();\n }));\n }\n\n const isLoaded = (\n !!user.data && !!currentUser.data && !!yearGroups.data &&\n !!passwordPolicy.data && authMethods.hasCompleted && !!config.data\n );\n\n return (\n <UserManagerClientContext.Provider value={UserManagerClient.Primary}>\n <Popup closePopup={props.closePopup} title={getPhrase('popupTitle')} showLoadingSpinner={!isLoaded}>\n {(() => {\n if (!isLoaded)\n return <></>;\n\n if (showEmailSentConfirmation) {\n return (\n <UserCreatedSuccess\n creationResponse={{ isBulk: false }}\n userType={props.userType}\n onClose={props.closePopup}\n emailSentImageUrl={ImageUrls.EMAIL_SENT}\n />\n );\n }\n\n return (\n <>\n {UserHelper.hasSso(user.data) && (\n <LiteEditSsoUserWarning\n userType={props.userType}\n isNew={false}\n helpArticle={ArticleHelper.getLiteArticle(LiteSupportArticle.EditSsoAccounts)}\n ssoMappingsApplink={{\n application: AppChannels.SETTINGS,\n action: Actions.Settings.SSO_YEAR_GROUP_MAPPINGS\n }}\n />\n )}\n <EditUserDetails\n user={user.data}\n userType={props.userType}\n yearGroups={props.userType === UserGroup.Learner ? yearGroups.data : null}\n initialValues={getUserInitialValues(user.data, currentUser.data)}\n onSubmit={saveUser}\n onClickCancel={props.closePopup}\n currentUser={currentUser.data}\n emailRequired={props.userType === UserGroup.Staff}\n showDisplayNameField={props.userType === UserGroup.Staff}\n passwordPolicy={passwordPolicy.data}\n editSsoUserHelpArticle={ArticleHelper.getLiteArticle(LiteSupportArticle.EditSsoAccounts)}\n validateEmail={validateEmail}\n />\n </>\n );\n })()}\n </Popup>\n </UserManagerClientContext.Provider>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\n\nimport { WarningAlert } from 'libs/shared/apps/user-manager/components/warning-alert/WarningAlert';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\n\nconst namespace = 'userManager.editUser';\n\ninterface LiteEditSsoUserWarningProps {\n isNew: boolean;\n userType: UserGroup;\n helpArticle: string;\n ssoMappingsApplink: Core.AppLink;\n}\n\nexport function LiteEditSsoUserWarning(props: LiteEditSsoUserWarningProps): JSX.Element {\n return (\n <WarningAlert className='py-2'>\n <Text\n namespace={namespace}\n phrase={props.isNew ? 'newSsoUserWarning' : 'editSsoUserWarning'}\n />\n\n {!props.isNew && (\n <AppLink appLink={props.ssoMappingsApplink} className='info-link d-block my-1' openInNewTab >\n <Text namespace={namespace} phrase='ssoMapping' />\n </AppLink>\n )}\n\n <a\n className='info-link d-block'\n href={props.helpArticle}\n target='_blank'\n >\n <Text namespace={namespace} phrase='ssoArticleLink' />\n </a>\n \n </WarningAlert>\n );\n}","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["UserCreatedState","namespace","EmailSentImage","props","className","src","emailSentImageUrl","alt","role","UserDetailsDialog","Text","phrase","creationResponse","username","password","EmailedUsersDialog","options","smartCount","isBulk","UserCreatedSuccess","alerts","state","userType","UserGroup","hasEmail","EmailedUsers","ShowDetails","contentComponent","value","CopyToClipboard","onCopy","success","LanguageService","onClose","text","onClick","OnlineSupportArticle","LiteSupportArticle","getUserInitialValues","user","currentUser","userId","id","firstName","name","surname","customerId","email","masterYearGroup","masterRole","userProfile","status","displayName","metadata","getPhrase","EditUserView","showEmailSentConfirmation","setShowEmailConfirmation","dispatch","fetchAsync","yearGroups","data","passwordPolicy","config","authMethods","validateUser","_user","resendActivationEmail","analyticsOptions","actionType","descriptor","error","closePopup","isLoaded","hasCompleted","title","showLoadingSpinner","U","isNew","helpArticle","ssoMappingsApplink","application","action","initialValues","onSubmit","onDone","errors","updatedUser","onClickCancel","emailRequired","showDisplayNameField","editSsoUserHelpArticle","validateEmail","body","userEmails","LiteEditSsoUserWarning","W","appLink","openInNewTab","href","target","deselectCurrent","clipboardToIE11Formatting","module","exports","debug","message","reselectPrevious","range","selection","mark","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","position","top","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","e","stopPropagation","format","preventDefault","clipboardData","console","warn","window","clearData","setData","appendChild","selectNodeContents","addRange","execCommand","Error","err","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","_defineProperties","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_assertThisInitialized","self","ReferenceError","_getPrototypeOf","getPrototypeOf","_React$PureComponent","subClass","superClass","TypeError","create","_inherits","Constructor","protoProps","Derived","hasNativeReflectConstruct","_super","Reflect","construct","sham","Proxy","Boolean","valueOf","call","_isNativeReflectConstruct","result","Super","NewTarget","this","_possibleConstructorReturn","_this","instance","_classCallCheck","_len","args","Array","_key","concat","event","_this$props","children","elem","Children","only","_this$props2","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_objectWithoutProperties","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","type","focus"],"sourceRoot":""}
1
+ {"version":3,"file":"scripts/7112-2e77a3e7af-lite.chunk.js","mappings":"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","sources":["file:///app/packages/libs/shared/src/apps/user-manager/enums/UserCreatedState.ts","file:///app/packages/libs/shared/src/apps/user-manager/components/user-created-success/UserCreatedSuccess.tsx","file:///app/packages/libs/shared/src/enums/SupportArticle.ts","file:///app/packages/projects/lite/src/apps/user-manager/views/edit-user/EditUserView.tsx","file:///app/packages/projects/lite/src/apps/user-manager/views/edit-user/component/edit-sso-user-warning/LiteEditSsoUserWarning.tsx","file:///app/node_modules/copy-to-clipboard/index.js","file:///app/node_modules/react-copy-to-clipboard/lib/Component.js","file:///app/node_modules/react-copy-to-clipboard/lib/index.js","file:///app/node_modules/toggle-selection/index.js"],"sourcesContent":["export enum UserCreatedState {\n ShowDetails = 'show-details',\n EmailedUsers = 'emailed-students',\n EmailedAdmin = 'emailed-admin'\n}","import React from 'react';\nimport { CopyToClipboard } from 'react-copy-to-clipboard';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\n\nimport { UserCreatedState } from 'libs/shared/apps/user-manager/enums/UserCreatedState';\nimport { BulkCreateUsersResponse } from 'libs/shared/apps/user-manager/interfaces';\nimport { LanguageNamespaceContext, Text } from 'libs/shared/components/text/Text';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\n\nconst namespace = 'userManager.userCreatedSuccess';\n\ninterface UserCreatedSuccessProps {\n creationResponse: BulkCreateUsersResponse;\n userType: UserGroup;\n onClose: () => void;\n emailSentImageUrl: string;\n}\n\nfunction EmailSentImage(props: UserCreatedSuccessProps): JSX.Element {\n return (\n <div className='d-flex justify-content-center w-50 mx-auto pb-3'>\n <img\n src={props.emailSentImageUrl}\n alt=''\n role='presentation'\n className='w-100'\n />\n </div>\n );\n}\n\nfunction UserDetailsDialog(props: UserCreatedSuccessProps): JSX.Element {\n return (\n <>\n <p><Text phrase='userDetailsInfo' /></p>\n\n <p className='mb-0 fw-semibold'><Text phrase='username' /></p>\n <p>{props.creationResponse.username}</p>\n\n <p className='mb-0 fw-semibold'><Text phrase='password' /></p>\n <p>{props.creationResponse.password}</p>\n </>\n );\n}\n\nfunction EmailedUsersDialog(props: UserCreatedSuccessProps): JSX.Element {\n return (\n <>\n <EmailSentImage {...props} />\n <p>\n <Text phrase='emailedUsersInfo' options={{ smartCount: props.creationResponse.isBulk ? 2 : 1 }} />\n </p>\n </>\n );\n}\n\nexport function UserCreatedSuccess(props: UserCreatedSuccessProps): JSX.Element {\n const alerts = useAlerts();\n\n function onCopyToClipboard(): void {\n alerts.success(LanguageService.getPhrase(namespace, 'copied'));\n props.onClose();\n }\n\n const state: UserCreatedState = React.useMemo(() => {\n if (props.userType === UserGroup.Staff)\n return UserCreatedState.EmailedUsers;\n \n if (props.creationResponse.isBulk || props.creationResponse.hasEmail)\n return UserCreatedState.EmailedUsers;\n\n return UserCreatedState.ShowDetails;\n }, [props.creationResponse]);\n\n if (!state)\n return <></>;\n\n const contentComponent = (() => {\n switch (state) {\n case UserCreatedState.ShowDetails:\n return <UserDetailsDialog {...props} />;\n case UserCreatedState.EmailedUsers:\n return <EmailedUsersDialog {...props} />;\n }\n })();\n\n return (\n <LanguageNamespaceContext.Provider value={namespace}>\n\n {contentComponent}\n\n <div className='d-flex justify-content-end border-top pt-3 px-3 mx-n3'>\n {state === UserCreatedState.ShowDetails\n ? (\n <CopyToClipboard\n onCopy={onCopyToClipboard}\n text={`${props.creationResponse.username} - ${props.creationResponse.password}`}\n >\n <button className='btn btn-dark'>\n <Text phrase='copy' />\n </button>\n </CopyToClipboard>\n ) : (\n <button onClick={props.onClose} className='btn btn-dark'>\n <Text phrase='okay' />\n </button>\n )\n }\n </div>\n </LanguageNamespaceContext.Provider>\n );\n}","// Article name mapped to article ID on support site. Used by `ArticleHelper`\n\nexport enum OnlineSupportArticle {\n AddToPlaylist = '115005679748',\n EditSsoAccounts = '8202508040345',\n\n // LE\n LibraryEditor = '360001974533',\n VideoAccess = '360000153947',\n AddFromOnline = '360011718234',\n UploadToLibraryEditor = '360012069334',\n PBTErrorCodes = '360012421153',\n ManuelReview = '360020004534',\n LibraryReview = '360000163788',\n}\n\nexport enum LiteSupportArticle {\n Integrations = '4407268725529',\n Classrooms = '4405362551833',\n MakeInteractive = '4405370510873',\n EditSsoAccounts = '8202605666073',\n UploadToLibraryEditor = '10672936659865',\n AddFromLite = '10671345281561',\n ManageSsoYearGroups = '14691130889241',\n ContentReview = '18525199576601',\n ContentPermissions = '14692125209497',\n AccessSettings = '27927466562201',\n ContentGuidelines = '24133696186009',\n FoxtelFaq = '24133519542169',\n ViviIntegration = '23826297956377',\n AppleTvIntegration = '25832373739929',\n RssFeed = '32567445635097',\n ManageGroupPermissions = '35407217335705'\n}\n","import React from 'react';\nimport { useDispatch } from 'react-redux';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { Flight } from 'libs/common/flight';\n\nimport { AnalyticsHelper } from 'libs/analytics/AnalyticsHelper';\nimport { EmailDescriptor, UserAction } from 'libs/analytics/interfaces';\n\nimport { EditUserDetails } from 'libs/shared/apps/user-manager/components/edit-user-details/EditUserDetails';\nimport { UserCreatedSuccess } from 'libs/shared/apps/user-manager/components/user-created-success/UserCreatedSuccess';\nimport { UserManagerClientContext } from 'libs/shared/apps/user-manager/context/UserManagerClientContext';\nimport { UserManagerClient } from 'libs/shared/apps/user-manager/enums/UserManagerClient';\nimport { BulkUserEmailCheckRequest, BulkUserEmailCheckResponse, EditUserRequest, ErroredUsers } from 'libs/shared/apps/user-manager/interfaces';\nimport { SecuritySettingsResponse } from 'libs/shared/apps/user-manager/interfaces/SecuritySettingsResponse';\nimport { UserManagerHelper } from 'libs/shared/apps/user-manager/utils/UserManagerHelper';\nimport { FormSubmissionOptions } from 'libs/shared/components/forms/form-wrapper/FormWrapper';\nimport { Popup } from 'libs/shared/components/popup/Popup';\nimport { ObjectStatus } from 'libs/shared/enums/ObjectStatus';\nimport { LiteSupportArticle } from 'libs/shared/enums/SupportArticle';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\nimport { ConfigRequests } from 'libs/shared/flight-requests/ConfigRequests';\nimport { UserRequests } from 'libs/shared/flight-requests/UserRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { Config, CurrentUser, PropsWithAnalyticsOptions, PropsWithPopupViewProps, User, YearGroup } from 'libs/shared/interfaces';\nimport { ArticleHelper } from 'libs/shared/utils/ArticleHelper';\nimport { UserHelper } from 'libs/shared/utils/UserHelper';\n\nimport { ImageUrls } from 'shared/constants/ImageUrls';\nimport { Actions } from 'shared/constants/LiteActions';\nimport { AppChannels } from 'shared/constants/LiteRadioChannels';\n\nimport { SecuritySettingsRequests } from 'apps/settings/flight-requests/SecuritySettingsRequests';\nimport { UserManagerRequests } from 'apps/user-manager/flight-requests/UserManagerRequests';\nimport { LiteEditSsoUserWarning } from 'apps/user-manager/views/edit-user/component/edit-sso-user-warning/LiteEditSsoUserWarning';\n\nfunction getUserInitialValues(user: User, currentUser: CurrentUser): EditUserRequest {\n return {\n userId: user.id,\n firstName: user.name,\n surname: user.surname,\n userType: user.userType,\n customerId: currentUser.customerId,\n email: user.email || '',\n masterYearGroup: user.masterYearGroup ?? null,\n username: user.username,\n masterRole: user.userProfile.role,\n status: user.status,\n displayName: user.metadata?.displayName ?? ''\n };\n}\n\nconst getPhrase = LanguageService.encloseNamespace('userManager.editUser');\n\ntype EditUserViewProps = PropsWithPopupViewProps<PropsWithAnalyticsOptions<{\n id: string;\n userType: UserGroup\n}>>;\n\nexport function EditUserView(props: EditUserViewProps): React.ReactElement {\n const [ showEmailSentConfirmation, setShowEmailConfirmation ] = React.useState(false);\n\n const alerts = useAlerts();\n const dispatch = useDispatch();\n const fetchAsync = Flight.useGetFetchAsync();\n\n const user = Flight.useBasicFetch<User>(UserManagerRequests.getUser(props.id));\n const currentUser = Flight.useBasicFetch<CurrentUser>(UserRequests.currentUser());\n const yearGroups = Flight.useBasicFetch<YearGroup[]>(currentUser.data &&\n UserManagerRequests.yearGroups(currentUser.data.customerId));\n const passwordPolicy = Flight.useBasicFetch<SecuritySettingsResponse>(currentUser.data &&\n SecuritySettingsRequests.getCustomerSecuritySettings(currentUser.data.customerId));\n const config = Flight.useBasicFetch<Config>(ConfigRequests.config());\n\n const authMethods = Flight.useBasicFetch(UserManagerRequests.authenticationMethods([props.id]));\n\n function validateUser(_user: EditUserRequest): Promise<ErroredUsers> {\n const data = UserManagerHelper.formatCreateOrValidateUserRequest(\n [_user],\n props.userType,\n currentUser.data.customerId\n );\n\n return fetchAsync(UserManagerRequests.bulkValidate(data));\n }\n\n function validateEmail(email: string): Promise<BulkUserEmailCheckResponse> {\n const body: BulkUserEmailCheckRequest = {\n userEmails: [{ email, userType: props.userType }]\n };\n\n return fetchAsync(UserManagerRequests.bulkCheckEmail(body, currentUser.data.customerId));\n }\n\n async function saveUser(_user: EditUserRequest, onDone: (options?: FormSubmissionOptions) => void): Promise<void> {\n const errors = await validateUser(_user);\n\n const isValid = UserManagerHelper.handleAsyncErrors(errors, _user, user.data, onDone);\n\n if (!isValid)\n return;\n\n const data = UserManagerHelper.formatEditUserRequest(_user);\n\n Flight.fetch(dispatch, UserManagerRequests.updateUser(data, currentUser.data.id, updatedUser => {\n AnalyticsHelper.logUserAction(updatedUser, props.analyticsOptions);\n\n const emailHasChanged = user.data.email !== updatedUser.email;\n\n if (emailHasChanged && updatedUser.status === ObjectStatus.Inactive) {\n resendActivationEmail(updatedUser);\n return;\n }\n\n alerts.success(getPhrase('success'));\n props.closePopup();\n }, () => {\n alerts.error(getPhrase('error'));\n props.closePopup();\n }));\n }\n\n function resendActivationEmail(_user: User): void {\n Flight.fetch(dispatch, UserManagerRequests.resendActivationEmail(_user.id, () => {\n AnalyticsHelper.logUserAction(_user, {\n ...props.analyticsOptions,\n actionType: UserAction.SendEmail,\n descriptor: EmailDescriptor.ActivateUser\n });\n\n alerts.success(getPhrase('success'));\n\n setShowEmailConfirmation(true);\n }, () => {\n alerts.error(getPhrase('error'));\n props.closePopup();\n }));\n }\n\n const isLoaded = (\n !!user.data && !!currentUser.data && !!yearGroups.data &&\n !!passwordPolicy.data && authMethods.hasCompleted && !!config.data\n );\n\n return (\n <UserManagerClientContext.Provider value={UserManagerClient.Primary}>\n <Popup closePopup={props.closePopup} title={getPhrase('popupTitle')} showLoadingSpinner={!isLoaded}>\n {(() => {\n if (!isLoaded)\n return <></>;\n\n if (showEmailSentConfirmation) {\n return (\n <UserCreatedSuccess\n creationResponse={{ isBulk: false }}\n userType={props.userType}\n onClose={props.closePopup}\n emailSentImageUrl={ImageUrls.EMAIL_SENT}\n />\n );\n }\n\n return (\n <>\n {UserHelper.hasSso(user.data) && (\n <LiteEditSsoUserWarning\n userType={props.userType}\n isNew={false}\n helpArticle={ArticleHelper.getLiteArticle(LiteSupportArticle.EditSsoAccounts)}\n ssoMappingsApplink={{\n application: AppChannels.SETTINGS,\n action: Actions.Settings.SSO_YEAR_GROUP_MAPPINGS\n }}\n />\n )}\n <EditUserDetails\n user={user.data}\n userType={props.userType}\n yearGroups={props.userType === UserGroup.Learner ? yearGroups.data : null}\n initialValues={getUserInitialValues(user.data, currentUser.data)}\n onSubmit={saveUser}\n onClickCancel={props.closePopup}\n currentUser={currentUser.data}\n emailRequired={props.userType === UserGroup.Staff}\n showDisplayNameField={props.userType === UserGroup.Staff}\n passwordPolicy={passwordPolicy.data}\n editSsoUserHelpArticle={ArticleHelper.getLiteArticle(LiteSupportArticle.EditSsoAccounts)}\n validateEmail={validateEmail}\n />\n </>\n );\n })()}\n </Popup>\n </UserManagerClientContext.Provider>\n );\n}","import React from 'react';\n\nimport { Core } from 'libs/common/backbone/index';\n\nimport { WarningAlert } from 'libs/shared/apps/user-manager/components/warning-alert/WarningAlert';\nimport { AppLink } from 'libs/shared/components/app-link/AppLink';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { UserGroup } from 'libs/shared/enums/UserGroup';\n\nconst namespace = 'userManager.editUser';\n\ninterface LiteEditSsoUserWarningProps {\n isNew: boolean;\n userType: UserGroup;\n helpArticle: string;\n ssoMappingsApplink: Core.AppLink;\n}\n\nexport function LiteEditSsoUserWarning(props: LiteEditSsoUserWarningProps): JSX.Element {\n return (\n <WarningAlert className='py-2'>\n <Text\n namespace={namespace}\n phrase={props.isNew ? 'newSsoUserWarning' : 'editSsoUserWarning'}\n />\n\n {!props.isNew && (\n <AppLink appLink={props.ssoMappingsApplink} className='info-link d-block my-1' openInNewTab >\n <Text namespace={namespace} phrase='ssoMapping' />\n </AppLink>\n )}\n\n <a\n className='info-link d-block'\n href={props.helpArticle}\n target='_blank'\n >\n <Text namespace={namespace} phrase='ssoArticleLink' />\n </a>\n \n </WarningAlert>\n );\n}","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["UserCreatedState","namespace","EmailSentImage","props","className","src","emailSentImageUrl","alt","role","UserDetailsDialog","Text","phrase","creationResponse","username","password","EmailedUsersDialog","options","smartCount","isBulk","UserCreatedSuccess","alerts","state","userType","UserGroup","hasEmail","EmailedUsers","ShowDetails","contentComponent","value","CopyToClipboard","onCopy","success","LanguageService","onClose","text","onClick","OnlineSupportArticle","LiteSupportArticle","getUserInitialValues","user","currentUser","userId","id","firstName","name","surname","customerId","email","masterYearGroup","masterRole","userProfile","status","displayName","metadata","getPhrase","EditUserView","showEmailSentConfirmation","setShowEmailConfirmation","dispatch","fetchAsync","yearGroups","data","passwordPolicy","config","authMethods","validateUser","_user","resendActivationEmail","analyticsOptions","actionType","descriptor","error","closePopup","isLoaded","hasCompleted","title","showLoadingSpinner","U","isNew","helpArticle","ssoMappingsApplink","application","action","initialValues","onSubmit","onDone","errors","updatedUser","onClickCancel","emailRequired","showDisplayNameField","editSsoUserHelpArticle","validateEmail","body","userEmails","LiteEditSsoUserWarning","W","appLink","openInNewTab","href","target","deselectCurrent","clipboardToIE11Formatting","module","exports","debug","message","reselectPrevious","range","selection","mark","document","createRange","getSelection","createElement","textContent","ariaHidden","style","all","position","top","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","e","stopPropagation","format","preventDefault","clipboardData","console","warn","window","clearData","setData","appendChild","selectNodeContents","addRange","execCommand","Error","err","copyKey","test","navigator","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","_defineProperties","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_assertThisInitialized","self","ReferenceError","_getPrototypeOf","getPrototypeOf","_React$PureComponent","subClass","superClass","TypeError","create","_inherits","Constructor","protoProps","Derived","hasNativeReflectConstruct","_super","Reflect","construct","sham","Proxy","Boolean","valueOf","call","_isNativeReflectConstruct","result","Super","NewTarget","this","_possibleConstructorReturn","_this","instance","_classCallCheck","_len","args","Array","_key","concat","event","_this$props","children","elem","Children","only","_this$props2","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_objectWithoutProperties","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","type","focus"],"sourceRoot":""}