@verii/components-organizations-registrar 1.1.0-pre.1758490097 → 1.1.0-pre.1758802767

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 (39) hide show
  1. package/dist/chunks/{HolderWalletSelection.Bbkjw74v.js → HolderWalletSelection.BYj3foq0.js} +2 -2
  2. package/dist/chunks/{HolderWalletSelection.Bbkjw74v.js.map → HolderWalletSelection.BYj3foq0.js.map} +1 -1
  3. package/dist/chunks/{HolderWalletSelection.iyAUrN2k.js → HolderWalletSelection.BvPFTrTh.js} +2 -2
  4. package/dist/chunks/{HolderWalletSelection.iyAUrN2k.js.map → HolderWalletSelection.BvPFTrTh.js.map} +1 -1
  5. package/dist/chunks/{ServicesEdit.CziGVmZ7.js → ServicesEdit.CrmS66vz.js} +2 -2
  6. package/dist/chunks/{ServicesEdit.CziGVmZ7.js.map → ServicesEdit.CrmS66vz.js.map} +1 -1
  7. package/dist/chunks/{ServicesEdit.smhn-csS.js → ServicesEdit.DFxcohIF.js} +2 -2
  8. package/dist/chunks/{ServicesEdit.smhn-csS.js.map → ServicesEdit.DFxcohIF.js.map} +1 -1
  9. package/dist/chunks/{SetInvitationService.tfCnVecV.js → SetInvitationService.BeU7-IBo.js} +2 -2
  10. package/dist/chunks/{SetInvitationService.tfCnVecV.js.map → SetInvitationService.BeU7-IBo.js.map} +1 -1
  11. package/dist/chunks/{SetInvitationService.BeigwHB1.js → SetInvitationService.DtVH6OkH.js} +2 -2
  12. package/dist/chunks/{SetInvitationService.BeigwHB1.js.map → SetInvitationService.DtVH6OkH.js.map} +1 -1
  13. package/dist/chunks/{index.CVnUI8N9.js → index.BDTIIDNe.js} +4 -4
  14. package/dist/chunks/{index.CVnUI8N9.js.map → index.BDTIIDNe.js.map} +1 -1
  15. package/dist/chunks/{index.B2d6Lux7.js → index.DFMQZMWE.js} +2 -2
  16. package/dist/chunks/{index.B2d6Lux7.js.map → index.DFMQZMWE.js.map} +1 -1
  17. package/dist/chunks/{index.BQ54f5lP.js → index.DTlm8AhC.js} +2 -2
  18. package/dist/chunks/{index.BQ54f5lP.js.map → index.DTlm8AhC.js.map} +1 -1
  19. package/dist/chunks/{index.BjQ72W9i.js → index.DmF-wFBs.js} +4 -4
  20. package/dist/chunks/{index.BjQ72W9i.js.map → index.DmF-wFBs.js.map} +1 -1
  21. package/dist/chunks/{serviceTypes.Lmuq0MZT.js → serviceTypes.BWVBK33e.js} +42 -22
  22. package/dist/chunks/serviceTypes.BWVBK33e.js.map +1 -0
  23. package/dist/chunks/{serviceTypes.C9KX9KG1.js → serviceTypes.BbBTNXB9.js} +42 -22
  24. package/dist/chunks/serviceTypes.BbBTNXB9.js.map +1 -0
  25. package/dist/components/invitations.cjs +1 -1
  26. package/dist/components/invitations.js +1 -1
  27. package/dist/components/services.cjs +1 -1
  28. package/dist/components/services.js +1 -1
  29. package/dist/index.cjs +1 -1
  30. package/dist/index.js +1 -1
  31. package/dist/pages/invitations.cjs +3 -3
  32. package/dist/pages/invitations.js +3 -3
  33. package/dist/pages/organizations.cjs +3 -3
  34. package/dist/pages/organizations.js +3 -3
  35. package/dist/pages/services.cjs +5 -5
  36. package/dist/pages/services.js +5 -5
  37. package/package.json +4 -4
  38. package/dist/chunks/serviceTypes.C9KX9KG1.js.map +0 -1
  39. package/dist/chunks/serviceTypes.Lmuq0MZT.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.BQ54f5lP.js","sources":["../../src/pages/services/components/SecretKeysPopup/WarningSecretKeysPopup/index.jsx","../../src/utils/downloadTxtAsFile.js","../../src/pages/services/hooks/useKeyDownload.js","../../src/pages/services/utils/formatSecrets.js","../../src/pages/services/utils/getTitle.js","../../src/utils/invitations.js","../../src/pages/services/components/SecretKeysPopup/ServiceSecretKeys/index.jsx","../../src/pages/services/components/SecretKeysPopup/index.jsx"],"sourcesContent":["/**\n * Copyright 2023 Velocity Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Box, Typography, Button, useTheme } from '@mui/material';\nimport DownloadIcon from '@mui/icons-material/Download';\nimport InfoIcon from '@mui/icons-material/Info';\nimport PropTypes from 'prop-types';\n\nimport Popup from '@/components/common/Popup.jsx';\nimport Loading from '@/components/Loading.jsx';\n\nconst titleDefault =\n 'Wait! Before you close this window, please make sure you have saved a copy of your keys';\nconst subTitleDefault =\n // eslint-disable-next-line max-len\n 'Your organization’s unique keys are critical for managing your organization’s data on Velocity Network™. This information will not be available once you close this window.';\nconst buttonLabelDefault = 'Download keys';\n\nconst WarningSecretKeysPopup = ({\n isModalOpened,\n onClose,\n title = titleDefault,\n subTitle = subTitleDefault,\n buttonLabel = buttonLabelDefault,\n isLoading = false,\n onClick,\n}) => {\n const theme = useTheme();\n\n return (\n <Popup\n onClose={onClose}\n title=\"\"\n isOpen={isModalOpened}\n mainContainerStyles={styles.mainContainer}\n isBackBoxVisible\n backBoxColor={theme.palette.warning.main}\n disableCloseButton={isLoading}\n >\n <InfoIcon color=\"warning\" sx={styles.icon} />\n <Typography sx={styles.title}>{title}</Typography>\n <Typography textAlign=\"center\">{subTitle}</Typography>\n\n <Box sx={styles.buttonBlock}>\n <Button\n variant=\"outlined\"\n endIcon={\n isLoading ? <Loading color=\"error\" sx={styles.loader} size={26} /> : <DownloadIcon />\n }\n disabled={isLoading}\n sx={styles.button}\n onClick={onClick}\n >\n {buttonLabel}\n </Button>\n </Box>\n </Popup>\n );\n};\n\nconst styles = {\n mainContainer: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n pt: '19px',\n },\n title: {\n fontWeight: 600,\n fontSize: '32px',\n lineHeight: '39px',\n textAlign: 'center',\n mb: '32px',\n mt: '35px',\n },\n button: { px: 4, py: 1, fontSize: '16px' },\n buttonBlock: {\n marginTop: '52px',\n },\n icon: { width: '50px', height: '50px' },\n loader: { pl: '10px' },\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nWarningSecretKeysPopup.propTypes = {\n isModalOpened: PropTypes.bool,\n // eslint-disable-next-line react/forbid-prop-types\n onClose: PropTypes.func,\n title: PropTypes.string,\n subTitle: PropTypes.string,\n buttonLabel: PropTypes.string,\n isLoading: PropTypes.bool,\n onClick: PropTypes.func,\n};\n\nexport default WarningSecretKeysPopup;\n","/* eslint-disable better-mutation/no-mutation */\n/**\n * Copyright 2023 Velocity Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nconst download = (fileName, onLoading, onError, onClick, callback) => {\n // eslint-disable-next-line no-undef\n const request = new XMLHttpRequest();\n request.responseType = 'blob';\n request.open('GET', fileName);\n\n request.addEventListener('load', () => {\n callback();\n });\n request.onloadstart = () => {\n onClick(true);\n onLoading(true);\n };\n request.onloadend = () => {\n onLoading(false);\n };\n request.onerror = () => {\n onError(true);\n };\n request.onabort = () => {\n onError(true);\n };\n\n request.send();\n};\n/* eslint-disable better-mutation/no-mutation */\nconst downloadTxtAsFile = (text, name) => {\n // eslint-disable-next-line no-undef\n const a = document.createElement('a');\n const file = new Blob([text], { type: 'application/json' });\n\n a.href = URL.createObjectURL(file);\n a.download = name;\n a.click();\n a.remove();\n};\n\nexport default (fileName, text, onLoading, onError, onClick) => {\n download(fileName, onLoading, onError, onClick, () => {\n downloadTxtAsFile(text, fileName);\n });\n};\n","import { useState, useCallback } from 'react';\nimport downloadTxtAsFile from '@/utils/downloadTxtAsFile.js';\nimport { copyTextToClipboard, objectToString } from '@/utils/index.jsx';\n\nexport const useKeyDownload = () => {\n const [isDownloaded, setIsDownloaded] = useState(false);\n const [isLoadingKeys, setIsLoadingKeys] = useState(false);\n const [isLoadingKeysError, setIsLoadingKeysError] = useState(false);\n const [isCopied, setIsCopied] = useState(false);\n\n const onCopy = useCallback((secretKeys) => {\n copyTextToClipboard(objectToString(secretKeys), (error) => {\n setIsCopied(!error);\n });\n }, []);\n\n const onDownload = useCallback((secretKeys) => {\n setIsLoadingKeys(true);\n const keys = objectToString(secretKeys);\n downloadTxtAsFile(\n 'keys.json',\n keys,\n (isLoading) => setIsLoadingKeys(isLoading),\n (isError) => setIsLoadingKeysError(isError),\n (isClicked) => setIsDownloaded(isClicked),\n );\n }, []);\n\n return { isDownloaded, isLoadingKeys, isLoadingKeysError, isCopied, onDownload, onCopy };\n};\n\nexport default useKeyDownload;\n","export const formatSecrets = (secretKeys) => {\n return secretKeys\n ? [\n ...(secretKeys.keys\n ? secretKeys.keys.map((item) => ({\n ...item,\n id: item.didDocumentKey.id.replace('#', ''),\n }))\n : []),\n ...(secretKeys.authClients\n ? secretKeys.authClients.reduce(\n (acc, { clientId, clientSecret }) => [\n ...acc,\n { id: 'Client Id', key: clientId },\n { id: 'Client Secret', key: clientSecret },\n ],\n [],\n )\n : []),\n ]\n : [];\n};\n","export const getTitle = (step) => {\n switch (step) {\n case 2:\n return \"You're one step away from setting up your new service on Velocity Network™\";\n case 3:\n return 'Set a Secure Messages URL';\n case 4:\n return 'Congratulations!';\n default:\n return 'Select type of service to add';\n }\n};\n","export const getNewServiceIndex = (services, kebabType) => {\n // eslint-disable-next-line better-mutation/no-mutating-methods\n const servicesOfSameType = services\n .filter((item) => item.id.split('#')[1]?.startsWith(kebabType))\n .sort();\n\n return (\n // eslint-disable-next-line better-mutation/no-mutating-methods\n parseInt(servicesOfSameType[servicesOfSameType.length - 1]?.id.split('-').reverse()[0], 10) +\n 1 || 1\n );\n};\n","import { useMemo } from 'react';\nimport { Box, Button, Grid, Typography } from '@mui/material';\nimport InfoIcon from '@mui/icons-material/Info';\nimport DownloadIcon from '@mui/icons-material/Download';\nimport { Form } from 'react-admin';\nimport PropTypes from 'prop-types';\n\nimport { getTitle, formatSecrets } from '@/pages/services/utils/index.js';\n\nconst selectedStep = 4;\n\nexport const ServiceSecretKeys = ({\n secretKeys,\n subtitle,\n description,\n onDownload,\n onCopy,\n isCopied,\n}) => {\n const formattedKeys = useMemo(() => formatSecrets(secretKeys), [secretKeys]);\n\n return (\n <>\n <Typography sx={styles.title} mb={2}>\n {getTitle(selectedStep)}\n </Typography>\n <Typography sx={styles.subtitle}>{subtitle}</Typography>\n <Typography>{description}</Typography>\n <Form>\n {formattedKeys.map((item) => (\n <Grid container spacing={2} columns={14} key={item.id} sx={styles.keysBlock}>\n <Key label={item.id} />\n <Value value={item.key} />\n </Grid>\n ))}\n <Box sx={styles.doNotDisclosureBlock}>\n <InfoIcon />\n <Typography marginLeft=\"20px\">\n Do not disclose these keys to unauthorized persons or transmit via unsecured channels.\n </Typography>\n </Box>\n\n <Box sx={styles.buttonsBlock}>\n <Button\n variant=\"outlined\"\n color=\"secondary\"\n sx={[styles.button, { marginRight: '30px' }]}\n onClick={() => onCopy(secretKeys)}\n >\n {isCopied ? 'Copied' : 'Copy'}\n </Button>\n <Button\n variant=\"outlined\"\n endIcon={<DownloadIcon />}\n sx={styles.button}\n onClick={() => onDownload(secretKeys)}\n >\n Download\n </Button>\n </Box>\n </Form>\n </>\n );\n};\n\nconst Key = ({ label }) => (\n <Grid size={{ xs: 4 }} sx={styles.keyLabel}>\n <Typography>{label}</Typography>\n </Grid>\n);\n\nconst Value = ({ value }) => (\n <Grid size={{ xs: 10 }}>\n <Typography sx={styles.keyValue}>{value}</Typography>\n </Grid>\n);\n\nconst styles = {\n title: {\n fontSize: '32px',\n fontWeight: '600',\n lineHeight: '38px',\n },\n subtitle: {\n fontWeight: '600',\n fontSize: '16px',\n marginBottom: '24px',\n },\n doNotDisclosureBlock: {\n color: 'secondary.light',\n fontSize: '14px',\n display: 'flex',\n flexDirection: 'row',\n marginTop: '30px',\n },\n keysBlock: {\n marginTop: '30px',\n },\n keyLabel: {\n display: 'flex',\n alignItems: 'center',\n wordBreak: 'break-all',\n },\n keyValue: {\n width: '100%',\n borderColor: 'divider.main',\n borderWidth: '1px',\n borderStyle: 'solid',\n borderRadius: '6px',\n padding: '16px',\n boxSizing: 'border-box',\n wordBreak: 'break-word',\n },\n buttonsBlock: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n marginTop: '40px',\n },\n button: { px: 4, py: 1, fontSize: '16px', width: '160px' },\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nServiceSecretKeys.propTypes = {\n // eslint-disable-next-line react/forbid-prop-types\n secretKeys: PropTypes.object,\n subtitle: PropTypes.string,\n description: PropTypes.string,\n onCopy: PropTypes.func,\n isCopied: PropTypes.bool,\n onDownload: PropTypes.func,\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nKey.propTypes = {\n label: PropTypes.string.isRequired,\n};\n// eslint-disable-next-line better-mutation/no-mutation\nValue.propTypes = {\n value: PropTypes.string.isRequired,\n};\n\nexport default ServiceSecretKeys;\n","import { useCallback, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Popup from '@/components/common/Popup.jsx';\nimport WarningSecretKeysPopup from './WarningSecretKeysPopup/index.jsx';\nimport { useKeyDownload } from '../../hooks/useKeyDownload.js';\nimport { ServiceSecretKeys } from './ServiceSecretKeys/index.jsx';\n\nexport const SecretKeysPopup = ({ isOpen, secretKeys, onClose, wording, warningWording }) => {\n const { onDownload, onCopy, isLoadingKeys, isLoadingKeysError, isDownloaded, isCopied } =\n useKeyDownload();\n\n const [isOpenWarningSecretPopup, setIsOpenWarningSecretPopup] = useState(false);\n\n const handleClose = useCallback(() => {\n if ((!isCopied && !isDownloaded) || isLoadingKeysError) {\n setIsOpenWarningSecretPopup(true);\n } else {\n onClose();\n }\n }, [isCopied, isDownloaded, isLoadingKeysError, onClose]);\n\n useEffect(() => {\n if (isOpenWarningSecretPopup && !isLoadingKeys && !isLoadingKeysError && isDownloaded) {\n onClose();\n }\n }, [isOpenWarningSecretPopup, isLoadingKeys, isLoadingKeysError, isDownloaded, onClose]);\n\n return (\n <Popup\n onClose={handleClose}\n title=\"\"\n isOpen={isOpen}\n mainContainerStyles={styles.mainContainer}\n disableCloseButton={isLoadingKeys}\n >\n <>\n <ServiceSecretKeys\n secretKeys={secretKeys}\n onDownload={onDownload}\n onCopy={onCopy}\n isCopied={isCopied}\n subtitle={wording.title}\n description={wording.subtitle}\n />\n <WarningSecretKeysPopup\n isModalOpened={isOpenWarningSecretPopup}\n onClose={onClose}\n title={warningWording.title}\n subtitle={warningWording.subtitle}\n onClick={() => onDownload(secretKeys)}\n isLoading={isLoadingKeys}\n />\n </>\n </Popup>\n );\n};\n\nconst styles = {\n mainContainer: { pt: 2 },\n};\n// eslint-disable-next-line better-mutation/no-mutation\nSecretKeysPopup.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n // eslint-disable-next-line react/forbid-prop-types\n secretKeys: PropTypes.object.isRequired,\n onClose: PropTypes.func.isRequired,\n wording: PropTypes.shape({\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string.isRequired,\n }).isRequired,\n warningWording: PropTypes.shape({\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string.isRequired,\n }).isRequired,\n};\n\nexport default SecretKeysPopup;\n"],"names":["useTheme","jsxs","Popup","styles","jsx","Typography","Box","Button","Loading","useState","useCallback","copyTextToClipboard","objectToString","downloadTxtAsFile","useMemo","Fragment","Form","Grid","useEffect"],"mappings":"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"}
1
+ {"version":3,"file":"index.DTlm8AhC.js","sources":["../../src/pages/services/components/SecretKeysPopup/WarningSecretKeysPopup/index.jsx","../../src/utils/downloadTxtAsFile.js","../../src/pages/services/hooks/useKeyDownload.js","../../src/pages/services/utils/formatSecrets.js","../../src/pages/services/utils/getTitle.js","../../src/utils/invitations.js","../../src/pages/services/components/SecretKeysPopup/ServiceSecretKeys/index.jsx","../../src/pages/services/components/SecretKeysPopup/index.jsx"],"sourcesContent":["/**\n * Copyright 2023 Velocity Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Box, Typography, Button, useTheme } from '@mui/material';\nimport DownloadIcon from '@mui/icons-material/Download';\nimport InfoIcon from '@mui/icons-material/Info';\nimport PropTypes from 'prop-types';\n\nimport Popup from '@/components/common/Popup.jsx';\nimport Loading from '@/components/Loading.jsx';\n\nconst titleDefault =\n 'Wait! Before you close this window, please make sure you have saved a copy of your keys';\nconst subTitleDefault =\n // eslint-disable-next-line max-len\n 'Your organization’s unique keys are critical for managing your organization’s data on Velocity Network™. This information will not be available once you close this window.';\nconst buttonLabelDefault = 'Download keys';\n\nconst WarningSecretKeysPopup = ({\n isModalOpened,\n onClose,\n title = titleDefault,\n subTitle = subTitleDefault,\n buttonLabel = buttonLabelDefault,\n isLoading = false,\n onClick,\n}) => {\n const theme = useTheme();\n\n return (\n <Popup\n onClose={onClose}\n title=\"\"\n isOpen={isModalOpened}\n mainContainerStyles={styles.mainContainer}\n isBackBoxVisible\n backBoxColor={theme.palette.warning.main}\n disableCloseButton={isLoading}\n >\n <InfoIcon color=\"warning\" sx={styles.icon} />\n <Typography sx={styles.title}>{title}</Typography>\n <Typography textAlign=\"center\">{subTitle}</Typography>\n\n <Box sx={styles.buttonBlock}>\n <Button\n variant=\"outlined\"\n endIcon={\n isLoading ? <Loading color=\"error\" sx={styles.loader} size={26} /> : <DownloadIcon />\n }\n disabled={isLoading}\n sx={styles.button}\n onClick={onClick}\n >\n {buttonLabel}\n </Button>\n </Box>\n </Popup>\n );\n};\n\nconst styles = {\n mainContainer: {\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'center',\n pt: '19px',\n },\n title: {\n fontWeight: 600,\n fontSize: '32px',\n lineHeight: '39px',\n textAlign: 'center',\n mb: '32px',\n mt: '35px',\n },\n button: { px: 4, py: 1, fontSize: '16px' },\n buttonBlock: {\n marginTop: '52px',\n },\n icon: { width: '50px', height: '50px' },\n loader: { pl: '10px' },\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nWarningSecretKeysPopup.propTypes = {\n isModalOpened: PropTypes.bool,\n // eslint-disable-next-line react/forbid-prop-types\n onClose: PropTypes.func,\n title: PropTypes.string,\n subTitle: PropTypes.string,\n buttonLabel: PropTypes.string,\n isLoading: PropTypes.bool,\n onClick: PropTypes.func,\n};\n\nexport default WarningSecretKeysPopup;\n","/* eslint-disable better-mutation/no-mutation */\n/**\n * Copyright 2023 Velocity Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nconst download = (fileName, onLoading, onError, onClick, callback) => {\n // eslint-disable-next-line no-undef\n const request = new XMLHttpRequest();\n request.responseType = 'blob';\n request.open('GET', fileName);\n\n request.addEventListener('load', () => {\n callback();\n });\n request.onloadstart = () => {\n onClick(true);\n onLoading(true);\n };\n request.onloadend = () => {\n onLoading(false);\n };\n request.onerror = () => {\n onError(true);\n };\n request.onabort = () => {\n onError(true);\n };\n\n request.send();\n};\n/* eslint-disable better-mutation/no-mutation */\nconst downloadTxtAsFile = (text, name) => {\n // eslint-disable-next-line no-undef\n const a = document.createElement('a');\n const file = new Blob([text], { type: 'application/json' });\n\n a.href = URL.createObjectURL(file);\n a.download = name;\n a.click();\n a.remove();\n};\n\nexport default (fileName, text, onLoading, onError, onClick) => {\n download(fileName, onLoading, onError, onClick, () => {\n downloadTxtAsFile(text, fileName);\n });\n};\n","import { useState, useCallback } from 'react';\nimport downloadTxtAsFile from '@/utils/downloadTxtAsFile.js';\nimport { copyTextToClipboard, objectToString } from '@/utils/index.jsx';\n\nexport const useKeyDownload = () => {\n const [isDownloaded, setIsDownloaded] = useState(false);\n const [isLoadingKeys, setIsLoadingKeys] = useState(false);\n const [isLoadingKeysError, setIsLoadingKeysError] = useState(false);\n const [isCopied, setIsCopied] = useState(false);\n\n const onCopy = useCallback((secretKeys) => {\n copyTextToClipboard(objectToString(secretKeys), (error) => {\n setIsCopied(!error);\n });\n }, []);\n\n const onDownload = useCallback((secretKeys) => {\n setIsLoadingKeys(true);\n const keys = objectToString(secretKeys);\n downloadTxtAsFile(\n 'keys.json',\n keys,\n (isLoading) => setIsLoadingKeys(isLoading),\n (isError) => setIsLoadingKeysError(isError),\n (isClicked) => setIsDownloaded(isClicked),\n );\n }, []);\n\n return { isDownloaded, isLoadingKeys, isLoadingKeysError, isCopied, onDownload, onCopy };\n};\n\nexport default useKeyDownload;\n","export const formatSecrets = (secretKeys) => {\n return secretKeys\n ? [\n ...(secretKeys.keys\n ? secretKeys.keys.map((item) => ({\n ...item,\n id: item.didDocumentKey.id.replace('#', ''),\n }))\n : []),\n ...(secretKeys.authClients\n ? secretKeys.authClients.reduce(\n (acc, { clientId, clientSecret }) => [\n ...acc,\n { id: 'Client Id', key: clientId },\n { id: 'Client Secret', key: clientSecret },\n ],\n [],\n )\n : []),\n ]\n : [];\n};\n","export const getTitle = (step) => {\n switch (step) {\n case 2:\n return \"You're one step away from setting up your new service on Velocity Network™\";\n case 3:\n return 'Set a Secure Messages URL';\n case 4:\n return 'Congratulations!';\n default:\n return 'Select type of service to add';\n }\n};\n","export const getNewServiceIndex = (services, kebabType) => {\n // eslint-disable-next-line better-mutation/no-mutating-methods\n const servicesOfSameType = services\n .filter((item) => item.id.split('#')[1]?.startsWith(kebabType))\n .sort();\n\n return (\n // eslint-disable-next-line better-mutation/no-mutating-methods\n parseInt(servicesOfSameType[servicesOfSameType.length - 1]?.id.split('-').reverse()[0], 10) +\n 1 || 1\n );\n};\n","import { useMemo } from 'react';\nimport { Box, Button, Grid, Typography } from '@mui/material';\nimport InfoIcon from '@mui/icons-material/Info';\nimport DownloadIcon from '@mui/icons-material/Download';\nimport { Form } from 'react-admin';\nimport PropTypes from 'prop-types';\n\nimport { getTitle, formatSecrets } from '@/pages/services/utils/index.js';\n\nconst selectedStep = 4;\n\nexport const ServiceSecretKeys = ({\n secretKeys,\n subtitle,\n description,\n onDownload,\n onCopy,\n isCopied,\n}) => {\n const formattedKeys = useMemo(() => formatSecrets(secretKeys), [secretKeys]);\n\n return (\n <>\n <Typography sx={styles.title} mb={2}>\n {getTitle(selectedStep)}\n </Typography>\n <Typography sx={styles.subtitle}>{subtitle}</Typography>\n <Typography>{description}</Typography>\n <Form>\n {formattedKeys.map((item) => (\n <Grid container spacing={2} columns={14} key={item.id} sx={styles.keysBlock}>\n <Key label={item.id} />\n <Value value={item.key} />\n </Grid>\n ))}\n <Box sx={styles.doNotDisclosureBlock}>\n <InfoIcon />\n <Typography marginLeft=\"20px\">\n Do not disclose these keys to unauthorized persons or transmit via unsecured channels.\n </Typography>\n </Box>\n\n <Box sx={styles.buttonsBlock}>\n <Button\n variant=\"outlined\"\n color=\"secondary\"\n sx={[styles.button, { marginRight: '30px' }]}\n onClick={() => onCopy(secretKeys)}\n >\n {isCopied ? 'Copied' : 'Copy'}\n </Button>\n <Button\n variant=\"outlined\"\n endIcon={<DownloadIcon />}\n sx={styles.button}\n onClick={() => onDownload(secretKeys)}\n >\n Download\n </Button>\n </Box>\n </Form>\n </>\n );\n};\n\nconst Key = ({ label }) => (\n <Grid size={{ xs: 4 }} sx={styles.keyLabel}>\n <Typography>{label}</Typography>\n </Grid>\n);\n\nconst Value = ({ value }) => (\n <Grid size={{ xs: 10 }}>\n <Typography sx={styles.keyValue}>{value}</Typography>\n </Grid>\n);\n\nconst styles = {\n title: {\n fontSize: '32px',\n fontWeight: '600',\n lineHeight: '38px',\n },\n subtitle: {\n fontWeight: '600',\n fontSize: '16px',\n marginBottom: '24px',\n },\n doNotDisclosureBlock: {\n color: 'secondary.light',\n fontSize: '14px',\n display: 'flex',\n flexDirection: 'row',\n marginTop: '30px',\n },\n keysBlock: {\n marginTop: '30px',\n },\n keyLabel: {\n display: 'flex',\n alignItems: 'center',\n wordBreak: 'break-all',\n },\n keyValue: {\n width: '100%',\n borderColor: 'divider.main',\n borderWidth: '1px',\n borderStyle: 'solid',\n borderRadius: '6px',\n padding: '16px',\n boxSizing: 'border-box',\n wordBreak: 'break-word',\n },\n buttonsBlock: {\n display: 'flex',\n flexDirection: 'row',\n justifyContent: 'center',\n marginTop: '40px',\n },\n button: { px: 4, py: 1, fontSize: '16px', width: '160px' },\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nServiceSecretKeys.propTypes = {\n // eslint-disable-next-line react/forbid-prop-types\n secretKeys: PropTypes.object,\n subtitle: PropTypes.string,\n description: PropTypes.string,\n onCopy: PropTypes.func,\n isCopied: PropTypes.bool,\n onDownload: PropTypes.func,\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nKey.propTypes = {\n label: PropTypes.string.isRequired,\n};\n// eslint-disable-next-line better-mutation/no-mutation\nValue.propTypes = {\n value: PropTypes.string.isRequired,\n};\n\nexport default ServiceSecretKeys;\n","import { useCallback, useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport Popup from '@/components/common/Popup.jsx';\nimport WarningSecretKeysPopup from './WarningSecretKeysPopup/index.jsx';\nimport { useKeyDownload } from '../../hooks/useKeyDownload.js';\nimport { ServiceSecretKeys } from './ServiceSecretKeys/index.jsx';\n\nexport const SecretKeysPopup = ({ isOpen, secretKeys, onClose, wording, warningWording }) => {\n const { onDownload, onCopy, isLoadingKeys, isLoadingKeysError, isDownloaded, isCopied } =\n useKeyDownload();\n\n const [isOpenWarningSecretPopup, setIsOpenWarningSecretPopup] = useState(false);\n\n const handleClose = useCallback(() => {\n if ((!isCopied && !isDownloaded) || isLoadingKeysError) {\n setIsOpenWarningSecretPopup(true);\n } else {\n onClose();\n }\n }, [isCopied, isDownloaded, isLoadingKeysError, onClose]);\n\n useEffect(() => {\n if (isOpenWarningSecretPopup && !isLoadingKeys && !isLoadingKeysError && isDownloaded) {\n onClose();\n }\n }, [isOpenWarningSecretPopup, isLoadingKeys, isLoadingKeysError, isDownloaded, onClose]);\n\n return (\n <Popup\n onClose={handleClose}\n title=\"\"\n isOpen={isOpen}\n mainContainerStyles={styles.mainContainer}\n disableCloseButton={isLoadingKeys}\n >\n <>\n <ServiceSecretKeys\n secretKeys={secretKeys}\n onDownload={onDownload}\n onCopy={onCopy}\n isCopied={isCopied}\n subtitle={wording.title}\n description={wording.subtitle}\n />\n <WarningSecretKeysPopup\n isModalOpened={isOpenWarningSecretPopup}\n onClose={onClose}\n title={warningWording.title}\n subtitle={warningWording.subtitle}\n onClick={() => onDownload(secretKeys)}\n isLoading={isLoadingKeys}\n />\n </>\n </Popup>\n );\n};\n\nconst styles = {\n mainContainer: { pt: 2 },\n};\n// eslint-disable-next-line better-mutation/no-mutation\nSecretKeysPopup.propTypes = {\n isOpen: PropTypes.bool.isRequired,\n // eslint-disable-next-line react/forbid-prop-types\n secretKeys: PropTypes.object.isRequired,\n onClose: PropTypes.func.isRequired,\n wording: PropTypes.shape({\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string.isRequired,\n }).isRequired,\n warningWording: PropTypes.shape({\n title: PropTypes.string.isRequired,\n subtitle: PropTypes.string.isRequired,\n }).isRequired,\n};\n\nexport default SecretKeysPopup;\n"],"names":["useTheme","jsxs","Popup","styles","jsx","Typography","Box","Button","Loading","useState","useCallback","copyTextToClipboard","objectToString","downloadTxtAsFile","useMemo","Fragment","Form","Grid","useEffect"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  const lodashEs = require("lodash-es");
3
- const serviceTypes = require("./serviceTypes.Lmuq0MZT.js");
4
- const index = require("./index.BQ54f5lP.js");
3
+ const serviceTypes = require("./serviceTypes.BWVBK33e.js");
4
+ const index = require("./index.DTlm8AhC.js");
5
5
  const jsxRuntime = require("react/jsx-runtime");
6
6
  const reactAdmin = require("react-admin");
7
7
  const material = require("@mui/material");
8
8
  const KeyboardArrowLeftIcon = require("@mui/icons-material/KeyboardArrowLeft");
9
9
  const PropTypes = require("prop-types");
10
- const HolderWalletSelection = require("./HolderWalletSelection.iyAUrN2k.js");
10
+ const HolderWalletSelection = require("./HolderWalletSelection.BvPFTrTh.js");
11
11
  const React = require("react");
12
12
  const InfoIcon = require("@mui/icons-material/Info");
13
13
  const CustomDropDown = require("./CustomDropDown.rP9eQtKr.js");
@@ -503,4 +503,4 @@ ServiceTypeSelection.defaultProps = {
503
503
  exports.ServiceEndpointSelection = ServiceEndpointSelection;
504
504
  exports.ServiceTypeSelection = ServiceTypeSelection;
505
505
  exports.buildPayload = buildPayload;
506
- //# sourceMappingURL=index.BjQ72W9i.js.map
506
+ //# sourceMappingURL=index.DmF-wFBs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.BjQ72W9i.js","sources":["../../src/pages/services/utils/isAddButtonDisabled.js","../../src/pages/services/utils/buildPayload.js","../../src/components/common/Autocomplete.jsx","../../src/pages/services/components/ServiceEndpointSelection/components/IssuingOrInspectionSelection.jsx","../../src/pages/services/components/ServiceEndpointSelection/components/UserAgreement.jsx","../../src/pages/services/components/ServiceEndpointSelection/components/CAOSelection.jsx","../../src/pages/services/components/ServiceEndpointSelection/index.jsx","../../src/pages/services/components/ServiceTypeSelection/index.jsx"],"sourcesContent":["const hasValue = (value) => {\n if (Array.isArray(value)) {\n return value.length > 0;\n }\n\n return Boolean(value);\n};\n\nconst hasRequiredFields = (fields, formData) => {\n if (!formData) {\n return false;\n }\n\n return fields.every((field) => hasValue(formData[field]));\n};\n\nconst requiredFieldsByServiceType = [\n {\n isActive: ({ isIssuingOrInspection }) => isIssuingOrInspection,\n requiredFields: ['serviceEndpoint', 'serviceCAO'],\n },\n {\n isActive: ({ isCAO }) => isCAO,\n requiredFields: ['serviceEndpoint'],\n },\n {\n isActive: ({ isWebWallet }) => isWebWallet,\n requiredFields: ['name', 'logo', 'serviceEndpoint', 'supportedExchangeProtocols'],\n },\n {\n isActive: ({ isHolderWallet }) => isHolderWallet,\n requiredFields: [\n 'name',\n 'logo',\n 'serviceEndpoint',\n 'supportedExchangeProtocols',\n 'playStoreUrl',\n 'googlePlayId',\n 'appleAppStoreUrl',\n 'appleAppId',\n ],\n },\n];\n\nexport const isAddButtonDisabled = (\n inProgress,\n isIssuingOrInspection,\n isCAO,\n isWebWallet,\n isHolderWallet,\n formData,\n) => {\n if (inProgress) {\n return true;\n }\n\n const serviceType = requiredFieldsByServiceType.find((item) =>\n item.isActive({ isIssuingOrInspection, isCAO, isWebWallet, isHolderWallet }),\n );\n\n if (!serviceType) {\n return true;\n }\n\n return !hasRequiredFields(serviceType.requiredFields, formData);\n};\n","import { kebabCase } from 'lodash-es';\nimport { CREDENTIAL_TYPES_IDS } from '@/utils/serviceTypes.js';\nimport { getNewServiceIndex } from '@/utils/invitations.js';\n\nconst addProp = (name, value) => (value ? { [name]: value } : {});\n\nexport const buildPayload = (service, type, did, services) => {\n const kebabType = kebabCase(type);\n const { name, logo, supportedExchangeProtocols, serviceEndpoint } = service;\n\n const genericPayload = {\n ...(did &&\n services && { id: `${did}#${kebabType}-${getNewServiceIndex(services, kebabType)}` }),\n serviceEndpoint,\n type,\n };\n if (type === CREDENTIAL_TYPES_IDS.VLC_WEB_WALLET_PROVIDER) {\n return {\n ...genericPayload,\n ...addProp('logoUrl', logo),\n ...addProp('supportedExchangeProtocols', supportedExchangeProtocols),\n ...addProp('name', name),\n };\n }\n if (type === CREDENTIAL_TYPES_IDS.VLC_HOLDER_APP_PROVIDER) {\n const { playStoreUrl, googlePlayId, appleAppStoreUrl, appleAppId } = service;\n return {\n ...genericPayload,\n ...addProp('logoUrl', logo),\n ...addProp('supportedExchangeProtocols', supportedExchangeProtocols),\n ...addProp('name', name),\n ...addProp('playStoreUrl', playStoreUrl),\n ...addProp('googlePlayId', googlePlayId),\n ...addProp('appleAppStoreUrl', appleAppStoreUrl),\n ...addProp('appleAppId', appleAppId),\n };\n }\n return genericPayload;\n};\n","import { useEffect, useCallback, useMemo, forwardRef } from 'react';\nimport { AutocompleteInput, useInput } from 'react-admin';\nimport PropTypes from 'prop-types';\n\n// eslint-disable-next-line prefer-arrow-functions/prefer-arrow-functions\nconst Autocomplete = forwardRef(function Autocomplete(\n {\n label,\n value: defaultValue,\n onChange,\n disabled,\n items,\n stringValue: format,\n inputText,\n styles,\n source = '',\n parse = (value) => value,\n },\n ref,\n) {\n const {\n field,\n fieldState: { error },\n } = useInput({ source, defaultValue, onChange, parse });\n\n const sortedItems = useMemo(() => {\n return items\n ? [...items].sort((a, b) => {\n return (a.name || '').localeCompare(b.name || '');\n })\n : [];\n }, [items]);\n\n const defaultInputText = useCallback(\n (choice) => {\n const formatted = format(choice);\n if (typeof formatted === 'string') {\n return formatted;\n }\n return formatted && formatted.props && formatted.props.children\n ? formatted.props.children.toString()\n : '';\n },\n [format],\n );\n\n useEffect(() => {\n if (sortedItems?.length === 1) {\n field.onChange(sortedItems[0]);\n }\n }, [sortedItems, field]);\n\n return (\n <AutocompleteInput\n {...field}\n ref={ref}\n label={label}\n choices={sortedItems || []}\n optionText={format}\n inputText={inputText || defaultInputText}\n optionValue=\"id\"\n disabled={disabled || (items && items.length === 1)}\n sx={styles}\n error={!!error}\n helperText={error ? error.message : ''}\n fullWidth\n />\n );\n});\n\n// eslint-disable-next-line better-mutation/no-mutation\nAutocomplete.propTypes = {\n label: PropTypes.string.isRequired,\n // eslint-disable-next-line react/forbid-prop-types\n value: PropTypes.any,\n onChange: PropTypes.func,\n disabled: PropTypes.bool,\n // eslint-disable-next-line react/forbid-prop-types\n items: PropTypes.array,\n stringValue: PropTypes.func,\n inputText: PropTypes.func,\n // eslint-disable-next-line react/forbid-prop-types\n styles: PropTypes.object,\n source: PropTypes.string,\n // eslint-disable-next-line react/forbid-prop-types\n defaultValue: PropTypes.any,\n parse: PropTypes.func,\n};\n\nexport default Autocomplete;\n","import { useState, useMemo } from 'react';\nimport { Box, Stack, Tooltip } from '@mui/material';\nimport InfoIcon from '@mui/icons-material/Info';\nimport PropTypes from 'prop-types';\n\nimport CustomDropDown from '@/components/common/CustomDropDown.jsx';\nimport Autocomplete from '@/components/common/Autocomplete.jsx';\nimport OrganizationAvatar from '@/components/common/OrganizationAvatar.jsx';\n\nconst IssuingOrInspectionSelection = ({ credentialAgentOperators, inProgress }) => {\n const [selectedCAO, setSelectedCAO] = useState('');\n const [selectedServiceId, setSelectedServiceId] = useState('');\n const getOptionAsText = (item) => item.name;\n\n const CAO = useMemo(() => {\n if (selectedCAO) {\n return credentialAgentOperators.find((item) => item.id === selectedCAO);\n }\n return '';\n }, [credentialAgentOperators, selectedCAO]);\n\n return (\n <Stack sx={{ mt: 2 }}>\n <Stack flexDirection=\"row\" alignItems=\"center\" sx={styles.selectCAOContainer}>\n <Autocomplete\n source=\"serviceCAO\"\n label=\"Select Credential Agent Operator\"\n value={selectedCAO}\n onChange={setSelectedCAO}\n items={credentialAgentOperators}\n /* eslint-disable-next-line react/no-unstable-nested-components */\n stringValue={(item) => (\n <Box sx={styles.menuItemLogo} component=\"div\">\n <span>{item.name}</span>\n <OrganizationAvatar size={32} name={item.name} logo={item.logo} />\n </Box>\n )}\n inputText={getOptionAsText}\n disabled={inProgress}\n styles={styles.selectCAO}\n />\n <Box sx={{ ml: 2 }}>\n <Tooltip title=\"The Credential Agent Operator your organization will use to integrate with Velocity Network™\">\n <InfoIcon color=\"info\" fontSize=\"small\" cursor=\"pointer\" />\n </Tooltip>\n </Box>\n </Stack>\n <Stack flexDirection=\"row\" alignItems=\"center\" mt={1} mb={4}>\n <CustomDropDown\n label='Select \"Service ID\"'\n value={selectedServiceId}\n onChange={setSelectedServiceId}\n items={CAO.service || []}\n stringValue={(item) => `${item.id} (${item.serviceEndpoint})`}\n disabled={!selectedCAO || inProgress}\n source=\"serviceEndpoint\"\n parse={(value) => `${selectedCAO}${value.id}`}\n />\n <Box sx={{ ml: 2 }}>\n <Tooltip\n title=\"The agent's service ID your organization needs to use. \n If there are multiple service IDs available, please contact your Credential Agent Operator to know which one to select.\"\n >\n <InfoIcon color=\"info\" fontSize=\"small\" cursor=\"pointer\" />\n </Tooltip>\n </Box>\n </Stack>\n </Stack>\n );\n};\n\nconst styles = {\n selectCAOContainer: {\n width: '100%',\n marginBottom: '20px',\n },\n selectCAO: {\n width: '100%',\n '& .MuiInputBase-root': {\n width: '100%',\n },\n '& .MuiSelect-select': {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n py: 0,\n },\n '& .MuiFormHelperText-root': {\n display: 'none',\n },\n },\n menuItemLogo: {\n display: 'flex',\n flex: '1',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nIssuingOrInspectionSelection.propTypes = {\n credentialAgentOperators: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logo: PropTypes.string,\n service: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n serviceEndpoint: PropTypes.string.isRequired,\n }),\n ),\n }),\n ).isRequired,\n inProgress: PropTypes.bool.isRequired,\n};\n\nexport default IssuingOrInspectionSelection;\n","import { Typography, Link } from '@mui/material';\nimport PropTypes from 'prop-types';\nimport { useConfig } from '@/utils/ConfigContext.js';\nimport { chainNames } from '@/utils/chainNames.js';\n\nexport const UserAgreement = ({ isWallet }) => {\n const config = useConfig();\n return (\n config.chainName !== chainNames.testnet && (\n <Typography variant=\"subtitle1\" sx={sx.userAgreement}>\n <span>By clicking Add, you agree to our </span>\n {isWallet ? (\n <Link\n target=\"_blank\"\n href=\"https://velocitynetwork.foundation/wp-content/uploads/2022/07/VNF-Wallet-Operator-Agreement-v1.1.pdf\"\n >\n Wallet Developer Agreement\n </Link>\n ) : (\n <Link\n target=\"_blank\"\n href=\"https://www.velocitynetwork.foundation/main2/participation-agreements\"\n >\n Participant Agreement\n </Link>\n )}\n </Typography>\n )\n );\n};\n\nconst sx = {\n userAgreement: {\n marginTop: '10px',\n },\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nUserAgreement.propTypes = {\n isWallet: PropTypes.bool.isRequired,\n};\n","import { TextInput, required } from 'react-admin';\nimport PropTypes from 'prop-types';\n\nimport { validateServiceEndpoint } from '@/components/organizations/CreateOrganizationUtils.js';\n\nconst CAOSelection = ({ inProgress }) => {\n return (\n <TextInput\n source=\"serviceEndpoint\"\n label=\"Service endpoint URL\"\n validate={[required('Service endpoint URL field is required'), ...validateServiceEndpoint]}\n parse={(value) => value?.trim() ?? ''}\n disabled={inProgress}\n />\n );\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nCAOSelection.propTypes = {\n inProgress: PropTypes.bool.isRequired,\n};\n\nexport default CAOSelection;\n","import { Form, FormDataConsumer, SaveButton } from 'react-admin';\nimport { Box, Button, Stack, Typography } from '@mui/material';\nimport KeyboardArrowLeftIcon from '@mui/icons-material/KeyboardArrowLeft';\n\nimport PropTypes from 'prop-types';\nimport { useIsIssuingInspection } from '../../hooks/useIsIssuingInspection.js';\nimport IssuingOrInspectionSelection from './components/IssuingOrInspectionSelection.jsx';\nimport WebWalletSelection from './components/WebWalletSelection.jsx';\nimport HolderWalletSelection from './components/HolderWalletSelection.jsx';\nimport { UserAgreement } from './components/UserAgreement.jsx';\nimport CAOSelection from './components/CAOSelection.jsx';\n\nimport { getTitle, isAddButtonDisabled } from '../../utils/index.js';\n\nconst selectedStep = 2;\n\n// eslint-disable-next-line prefer-arrow-functions/prefer-arrow-functions\nexport const ServiceEndpointSelection = ({\n credentialAgentOperators,\n selectedServiceType,\n inProgress,\n onCreate,\n handleBack,\n}) => {\n const { isIssuingOrInspection, isCAO, isWallet, isWebWallet, isHolderWallet } =\n useIsIssuingInspection(selectedServiceType);\n\n return (\n <>\n <Typography variant=\"pm\" sx={styles.step}>\n Step 2/2\n </Typography>\n <Typography sx={styles.title} mb={2}>\n {getTitle(selectedStep)}\n </Typography>\n <Typography>Please complete the details below to continue</Typography>\n <Form onSubmit={onCreate} mode=\"onChange\" defaultValues={{ serviceEndpoint: '' }}>\n <Stack sx={styles.endpointForm}>\n {isIssuingOrInspection && (\n <IssuingOrInspectionSelection\n credentialAgentOperators={credentialAgentOperators}\n inProgress={inProgress}\n />\n )}\n\n {isWebWallet && <WebWalletSelection inProgress={inProgress} />}\n\n {isHolderWallet && <HolderWalletSelection inProgress={inProgress} />}\n\n {isCAO && <CAOSelection inProgress={inProgress} />}\n <UserAgreement isWallet={isWallet} />\n <Box sx={styles.buttonBlock}>\n <Button\n variant=\"outlined\"\n sx={[styles.button, styles.backButton]}\n onClick={handleBack}\n startIcon={<KeyboardArrowLeftIcon />}\n disabled={inProgress}\n >\n Back\n </Button>\n <FormDataConsumer>\n {({ formData }) => {\n const isDisabled = isAddButtonDisabled(\n inProgress,\n isIssuingOrInspection,\n isCAO,\n isWebWallet,\n isHolderWallet,\n formData,\n );\n\n return (\n <SaveButton\n variant=\"outlined\"\n alwaysEnable={false}\n disabled={isDisabled}\n icon={null}\n label=\"Add\"\n sx={[styles.button, styles.saveButton, isDisabled && styles.saveButtonDisabled]}\n />\n );\n }}\n </FormDataConsumer>\n </Box>\n </Stack>\n </Form>\n </>\n );\n};\n\nconst styles = {\n step: { color: (theme) => theme.palette.primary.main, pb: '20px', display: 'block' },\n title: {\n fontSize: '32px',\n fontWeight: '600',\n lineHeight: '38px',\n },\n endpointForm: {\n marginTop: '20px',\n },\n buttonBlock: {\n display: 'flex',\n marginTop: '40px',\n justifyContent: 'center',\n },\n button: { px: 4, py: 1, fontSize: '16px', width: '160px' },\n backButton: {\n marginRight: '20px',\n borderColor: 'secondary.light',\n color: 'text.primary',\n },\n saveButton: {\n display: 'flex',\n flexDirection: 'row-reverse',\n gap: '10px',\n '&:disabled': {\n color: 'primary.main',\n borderColor: 'primary.main',\n },\n },\n saveButtonDisabled: {\n '&:disabled': {\n color: 'text.disabled',\n borderColor: 'secondary.light',\n },\n },\n};\n// eslint-disable-next-line better-mutation/no-mutation\nServiceEndpointSelection.propTypes = {\n credentialAgentOperators: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logo: PropTypes.string,\n service: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n serviceEndpoint: PropTypes.string.isRequired,\n }),\n ),\n }),\n ).isRequired,\n selectedServiceType: PropTypes.string.isRequired,\n inProgress: PropTypes.bool.isRequired,\n onCreate: PropTypes.func.isRequired,\n handleBack: PropTypes.func.isRequired,\n};\n\nexport default ServiceEndpointSelection;\n","import { Box, Button, Typography } from '@mui/material';\nimport KeyboardArrowRightIcon from '@mui/icons-material/KeyboardArrowRight';\nimport { Form } from 'react-admin';\nimport PropTypes from 'prop-types';\nimport Loading from '@/components/Loading.jsx';\nimport CustomDropDown from '@/components/common/CustomDropDown.jsx';\nimport serviceTypes from '@/utils/serviceTypes.js';\n\nimport { getTitle } from '../../utils/index.js';\n\nconst selectedStep = 1;\n\nexport const ServiceTypeSelection = ({\n handleNext,\n isLoading,\n selectedServiceType,\n setSelectedServiceType,\n onDoLater,\n}) => {\n return (\n <>\n <Typography variant=\"pm\" sx={styles.step}>\n Step 1/2\n </Typography>\n <Typography variant=\"h1\" mb={2}>\n {getTitle(selectedStep)}\n </Typography>\n <Typography mb={4}>Select the type of service you wish to add.</Typography>\n <Form record={{}}>\n <CustomDropDown\n source=\"selectedServiceType\"\n label=\"Select type of service\"\n value={selectedServiceType}\n onChange={setSelectedServiceType}\n items={serviceTypes}\n stringValue={(item) => item.title}\n parse={(value) => value.id}\n disabled={false}\n />\n <Box sx={[styles.buttonBlock, !onDoLater && styles.rightButton]}>\n {onDoLater && (\n <Button sx={[styles.button]} variant=\"outlined\" color=\"secondary\" onClick={onDoLater}>\n Do Later\n </Button>\n )}\n <Button\n disabled={!selectedServiceType || isLoading}\n variant=\"outlined\"\n sx={[styles.button]}\n endIcon={\n selectedServiceType && isLoading ? (\n <Loading color=\"error\" sx={styles.loader} size={26} />\n ) : (\n <KeyboardArrowRightIcon />\n )\n }\n onClick={handleNext}\n >\n Next\n </Button>\n </Box>\n </Form>\n </>\n );\n};\n\nconst styles = {\n buttonBlock: {\n display: 'flex',\n marginTop: '40px',\n justifyContent: 'center',\n alignItems: 'center',\n gap: '30px',\n },\n rightButton: {\n justifyContent: 'flex-end',\n },\n step: { color: (theme) => theme.palette.primary.main, pb: '20px', display: 'block' },\n button: { px: 4, py: 1, fontSize: '16px', width: '160px' },\n};\n// eslint-disable-next-line better-mutation/no-mutation\nServiceTypeSelection.propTypes = {\n handleNext: PropTypes.func.isRequired,\n isLoading: PropTypes.bool,\n selectedServiceType: PropTypes.oneOfType([PropTypes.object, PropTypes.string, PropTypes.number]),\n setSelectedServiceType: PropTypes.func.isRequired,\n onDoLater: PropTypes.func,\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nServiceTypeSelection.defaultProps = {\n isLoading: false,\n selectedServiceType: null,\n onDoLater: null,\n};\n\nexport default ServiceTypeSelection;\n"],"names":["kebabCase","getNewServiceIndex","CREDENTIAL_TYPES_IDS","forwardRef","Autocomplete","styles","useInput","useMemo","useCallback","useEffect","jsx","AutocompleteInput","useState","Stack","jsxs","Box","OrganizationAvatar","Tooltip","CustomDropDown","useConfig","chainNames","Typography","Link","TextInput","required","validateServiceEndpoint","selectedStep","useIsIssuingInspection","Fragment","getTitle","Form","WebWalletSelection","HolderWalletSelection","Button","FormDataConsumer","SaveButton","serviceTypes","Loading"],"mappings":"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"}
1
+ {"version":3,"file":"index.DmF-wFBs.js","sources":["../../src/pages/services/utils/isAddButtonDisabled.js","../../src/pages/services/utils/buildPayload.js","../../src/components/common/Autocomplete.jsx","../../src/pages/services/components/ServiceEndpointSelection/components/IssuingOrInspectionSelection.jsx","../../src/pages/services/components/ServiceEndpointSelection/components/UserAgreement.jsx","../../src/pages/services/components/ServiceEndpointSelection/components/CAOSelection.jsx","../../src/pages/services/components/ServiceEndpointSelection/index.jsx","../../src/pages/services/components/ServiceTypeSelection/index.jsx"],"sourcesContent":["const hasValue = (value) => {\n if (Array.isArray(value)) {\n return value.length > 0;\n }\n\n return Boolean(value);\n};\n\nconst hasRequiredFields = (fields, formData) => {\n if (!formData) {\n return false;\n }\n\n return fields.every((field) => hasValue(formData[field]));\n};\n\nconst requiredFieldsByServiceType = [\n {\n isActive: ({ isIssuingOrInspection }) => isIssuingOrInspection,\n requiredFields: ['serviceEndpoint', 'serviceCAO'],\n },\n {\n isActive: ({ isCAO }) => isCAO,\n requiredFields: ['serviceEndpoint'],\n },\n {\n isActive: ({ isWebWallet }) => isWebWallet,\n requiredFields: ['name', 'logo', 'serviceEndpoint', 'supportedExchangeProtocols'],\n },\n {\n isActive: ({ isHolderWallet }) => isHolderWallet,\n requiredFields: [\n 'name',\n 'logo',\n 'serviceEndpoint',\n 'supportedExchangeProtocols',\n 'playStoreUrl',\n 'googlePlayId',\n 'appleAppStoreUrl',\n 'appleAppId',\n ],\n },\n];\n\nexport const isAddButtonDisabled = (\n inProgress,\n isIssuingOrInspection,\n isCAO,\n isWebWallet,\n isHolderWallet,\n formData,\n) => {\n if (inProgress) {\n return true;\n }\n\n const serviceType = requiredFieldsByServiceType.find((item) =>\n item.isActive({ isIssuingOrInspection, isCAO, isWebWallet, isHolderWallet }),\n );\n\n if (!serviceType) {\n return true;\n }\n\n return !hasRequiredFields(serviceType.requiredFields, formData);\n};\n","import { kebabCase } from 'lodash-es';\nimport { CREDENTIAL_TYPES_IDS } from '@/utils/serviceTypes.js';\nimport { getNewServiceIndex } from '@/utils/invitations.js';\n\nconst addProp = (name, value) => (value ? { [name]: value } : {});\n\nexport const buildPayload = (service, type, did, services) => {\n const kebabType = kebabCase(type);\n const { name, logo, supportedExchangeProtocols, serviceEndpoint } = service;\n\n const genericPayload = {\n ...(did &&\n services && { id: `${did}#${kebabType}-${getNewServiceIndex(services, kebabType)}` }),\n serviceEndpoint,\n type,\n };\n if (type === CREDENTIAL_TYPES_IDS.VLC_WEB_WALLET_PROVIDER) {\n return {\n ...genericPayload,\n ...addProp('logoUrl', logo),\n ...addProp('supportedExchangeProtocols', supportedExchangeProtocols),\n ...addProp('name', name),\n };\n }\n if (type === CREDENTIAL_TYPES_IDS.VLC_HOLDER_APP_PROVIDER) {\n const { playStoreUrl, googlePlayId, appleAppStoreUrl, appleAppId } = service;\n return {\n ...genericPayload,\n ...addProp('logoUrl', logo),\n ...addProp('supportedExchangeProtocols', supportedExchangeProtocols),\n ...addProp('name', name),\n ...addProp('playStoreUrl', playStoreUrl),\n ...addProp('googlePlayId', googlePlayId),\n ...addProp('appleAppStoreUrl', appleAppStoreUrl),\n ...addProp('appleAppId', appleAppId),\n };\n }\n return genericPayload;\n};\n","import { useEffect, useCallback, useMemo, forwardRef } from 'react';\nimport { AutocompleteInput, useInput } from 'react-admin';\nimport PropTypes from 'prop-types';\n\n// eslint-disable-next-line prefer-arrow-functions/prefer-arrow-functions\nconst Autocomplete = forwardRef(function Autocomplete(\n {\n label,\n value: defaultValue,\n onChange,\n disabled,\n items,\n stringValue: format,\n inputText,\n styles,\n source = '',\n parse = (value) => value,\n },\n ref,\n) {\n const {\n field,\n fieldState: { error },\n } = useInput({ source, defaultValue, onChange, parse });\n\n const sortedItems = useMemo(() => {\n return items\n ? [...items].sort((a, b) => {\n return (a.name || '').localeCompare(b.name || '');\n })\n : [];\n }, [items]);\n\n const defaultInputText = useCallback(\n (choice) => {\n const formatted = format(choice);\n if (typeof formatted === 'string') {\n return formatted;\n }\n return formatted && formatted.props && formatted.props.children\n ? formatted.props.children.toString()\n : '';\n },\n [format],\n );\n\n useEffect(() => {\n if (sortedItems?.length === 1) {\n field.onChange(sortedItems[0]);\n }\n }, [sortedItems, field]);\n\n return (\n <AutocompleteInput\n {...field}\n ref={ref}\n label={label}\n choices={sortedItems || []}\n optionText={format}\n inputText={inputText || defaultInputText}\n optionValue=\"id\"\n disabled={disabled || (items && items.length === 1)}\n sx={styles}\n error={!!error}\n helperText={error ? error.message : ''}\n fullWidth\n />\n );\n});\n\n// eslint-disable-next-line better-mutation/no-mutation\nAutocomplete.propTypes = {\n label: PropTypes.string.isRequired,\n // eslint-disable-next-line react/forbid-prop-types\n value: PropTypes.any,\n onChange: PropTypes.func,\n disabled: PropTypes.bool,\n // eslint-disable-next-line react/forbid-prop-types\n items: PropTypes.array,\n stringValue: PropTypes.func,\n inputText: PropTypes.func,\n // eslint-disable-next-line react/forbid-prop-types\n styles: PropTypes.object,\n source: PropTypes.string,\n // eslint-disable-next-line react/forbid-prop-types\n defaultValue: PropTypes.any,\n parse: PropTypes.func,\n};\n\nexport default Autocomplete;\n","import { useState, useMemo } from 'react';\nimport { Box, Stack, Tooltip } from '@mui/material';\nimport InfoIcon from '@mui/icons-material/Info';\nimport PropTypes from 'prop-types';\n\nimport CustomDropDown from '@/components/common/CustomDropDown.jsx';\nimport Autocomplete from '@/components/common/Autocomplete.jsx';\nimport OrganizationAvatar from '@/components/common/OrganizationAvatar.jsx';\n\nconst IssuingOrInspectionSelection = ({ credentialAgentOperators, inProgress }) => {\n const [selectedCAO, setSelectedCAO] = useState('');\n const [selectedServiceId, setSelectedServiceId] = useState('');\n const getOptionAsText = (item) => item.name;\n\n const CAO = useMemo(() => {\n if (selectedCAO) {\n return credentialAgentOperators.find((item) => item.id === selectedCAO);\n }\n return '';\n }, [credentialAgentOperators, selectedCAO]);\n\n return (\n <Stack sx={{ mt: 2 }}>\n <Stack flexDirection=\"row\" alignItems=\"center\" sx={styles.selectCAOContainer}>\n <Autocomplete\n source=\"serviceCAO\"\n label=\"Select Credential Agent Operator\"\n value={selectedCAO}\n onChange={setSelectedCAO}\n items={credentialAgentOperators}\n /* eslint-disable-next-line react/no-unstable-nested-components */\n stringValue={(item) => (\n <Box sx={styles.menuItemLogo} component=\"div\">\n <span>{item.name}</span>\n <OrganizationAvatar size={32} name={item.name} logo={item.logo} />\n </Box>\n )}\n inputText={getOptionAsText}\n disabled={inProgress}\n styles={styles.selectCAO}\n />\n <Box sx={{ ml: 2 }}>\n <Tooltip title=\"The Credential Agent Operator your organization will use to integrate with Velocity Network™\">\n <InfoIcon color=\"info\" fontSize=\"small\" cursor=\"pointer\" />\n </Tooltip>\n </Box>\n </Stack>\n <Stack flexDirection=\"row\" alignItems=\"center\" mt={1} mb={4}>\n <CustomDropDown\n label='Select \"Service ID\"'\n value={selectedServiceId}\n onChange={setSelectedServiceId}\n items={CAO.service || []}\n stringValue={(item) => `${item.id} (${item.serviceEndpoint})`}\n disabled={!selectedCAO || inProgress}\n source=\"serviceEndpoint\"\n parse={(value) => `${selectedCAO}${value.id}`}\n />\n <Box sx={{ ml: 2 }}>\n <Tooltip\n title=\"The agent's service ID your organization needs to use. \n If there are multiple service IDs available, please contact your Credential Agent Operator to know which one to select.\"\n >\n <InfoIcon color=\"info\" fontSize=\"small\" cursor=\"pointer\" />\n </Tooltip>\n </Box>\n </Stack>\n </Stack>\n );\n};\n\nconst styles = {\n selectCAOContainer: {\n width: '100%',\n marginBottom: '20px',\n },\n selectCAO: {\n width: '100%',\n '& .MuiInputBase-root': {\n width: '100%',\n },\n '& .MuiSelect-select': {\n display: 'flex',\n justifyContent: 'space-between',\n alignItems: 'center',\n py: 0,\n },\n '& .MuiFormHelperText-root': {\n display: 'none',\n },\n },\n menuItemLogo: {\n display: 'flex',\n flex: '1',\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nIssuingOrInspectionSelection.propTypes = {\n credentialAgentOperators: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logo: PropTypes.string,\n service: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n serviceEndpoint: PropTypes.string.isRequired,\n }),\n ),\n }),\n ).isRequired,\n inProgress: PropTypes.bool.isRequired,\n};\n\nexport default IssuingOrInspectionSelection;\n","import { Typography, Link } from '@mui/material';\nimport PropTypes from 'prop-types';\nimport { useConfig } from '@/utils/ConfigContext.js';\nimport { chainNames } from '@/utils/chainNames.js';\n\nexport const UserAgreement = ({ isWallet }) => {\n const config = useConfig();\n return (\n config.chainName !== chainNames.testnet && (\n <Typography variant=\"subtitle1\" sx={sx.userAgreement}>\n <span>By clicking Add, you agree to our </span>\n {isWallet ? (\n <Link\n target=\"_blank\"\n href=\"https://velocitynetwork.foundation/wp-content/uploads/2022/07/VNF-Wallet-Operator-Agreement-v1.1.pdf\"\n >\n Wallet Developer Agreement\n </Link>\n ) : (\n <Link\n target=\"_blank\"\n href=\"https://www.velocitynetwork.foundation/main2/participation-agreements\"\n >\n Participant Agreement\n </Link>\n )}\n </Typography>\n )\n );\n};\n\nconst sx = {\n userAgreement: {\n marginTop: '10px',\n },\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nUserAgreement.propTypes = {\n isWallet: PropTypes.bool.isRequired,\n};\n","import { TextInput, required } from 'react-admin';\nimport PropTypes from 'prop-types';\n\nimport { validateServiceEndpoint } from '@/components/organizations/CreateOrganizationUtils.js';\n\nconst CAOSelection = ({ inProgress }) => {\n return (\n <TextInput\n source=\"serviceEndpoint\"\n label=\"Service endpoint URL\"\n validate={[required('Service endpoint URL field is required'), ...validateServiceEndpoint]}\n parse={(value) => value?.trim() ?? ''}\n disabled={inProgress}\n />\n );\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nCAOSelection.propTypes = {\n inProgress: PropTypes.bool.isRequired,\n};\n\nexport default CAOSelection;\n","import { Form, FormDataConsumer, SaveButton } from 'react-admin';\nimport { Box, Button, Stack, Typography } from '@mui/material';\nimport KeyboardArrowLeftIcon from '@mui/icons-material/KeyboardArrowLeft';\n\nimport PropTypes from 'prop-types';\nimport { useIsIssuingInspection } from '../../hooks/useIsIssuingInspection.js';\nimport IssuingOrInspectionSelection from './components/IssuingOrInspectionSelection.jsx';\nimport WebWalletSelection from './components/WebWalletSelection.jsx';\nimport HolderWalletSelection from './components/HolderWalletSelection.jsx';\nimport { UserAgreement } from './components/UserAgreement.jsx';\nimport CAOSelection from './components/CAOSelection.jsx';\n\nimport { getTitle, isAddButtonDisabled } from '../../utils/index.js';\n\nconst selectedStep = 2;\n\n// eslint-disable-next-line prefer-arrow-functions/prefer-arrow-functions\nexport const ServiceEndpointSelection = ({\n credentialAgentOperators,\n selectedServiceType,\n inProgress,\n onCreate,\n handleBack,\n}) => {\n const { isIssuingOrInspection, isCAO, isWallet, isWebWallet, isHolderWallet } =\n useIsIssuingInspection(selectedServiceType);\n\n return (\n <>\n <Typography variant=\"pm\" sx={styles.step}>\n Step 2/2\n </Typography>\n <Typography sx={styles.title} mb={2}>\n {getTitle(selectedStep)}\n </Typography>\n <Typography>Please complete the details below to continue</Typography>\n <Form onSubmit={onCreate} mode=\"onChange\" defaultValues={{ serviceEndpoint: '' }}>\n <Stack sx={styles.endpointForm}>\n {isIssuingOrInspection && (\n <IssuingOrInspectionSelection\n credentialAgentOperators={credentialAgentOperators}\n inProgress={inProgress}\n />\n )}\n\n {isWebWallet && <WebWalletSelection inProgress={inProgress} />}\n\n {isHolderWallet && <HolderWalletSelection inProgress={inProgress} />}\n\n {isCAO && <CAOSelection inProgress={inProgress} />}\n <UserAgreement isWallet={isWallet} />\n <Box sx={styles.buttonBlock}>\n <Button\n variant=\"outlined\"\n sx={[styles.button, styles.backButton]}\n onClick={handleBack}\n startIcon={<KeyboardArrowLeftIcon />}\n disabled={inProgress}\n >\n Back\n </Button>\n <FormDataConsumer>\n {({ formData }) => {\n const isDisabled = isAddButtonDisabled(\n inProgress,\n isIssuingOrInspection,\n isCAO,\n isWebWallet,\n isHolderWallet,\n formData,\n );\n\n return (\n <SaveButton\n variant=\"outlined\"\n alwaysEnable={false}\n disabled={isDisabled}\n icon={null}\n label=\"Add\"\n sx={[styles.button, styles.saveButton, isDisabled && styles.saveButtonDisabled]}\n />\n );\n }}\n </FormDataConsumer>\n </Box>\n </Stack>\n </Form>\n </>\n );\n};\n\nconst styles = {\n step: { color: (theme) => theme.palette.primary.main, pb: '20px', display: 'block' },\n title: {\n fontSize: '32px',\n fontWeight: '600',\n lineHeight: '38px',\n },\n endpointForm: {\n marginTop: '20px',\n },\n buttonBlock: {\n display: 'flex',\n marginTop: '40px',\n justifyContent: 'center',\n },\n button: { px: 4, py: 1, fontSize: '16px', width: '160px' },\n backButton: {\n marginRight: '20px',\n borderColor: 'secondary.light',\n color: 'text.primary',\n },\n saveButton: {\n display: 'flex',\n flexDirection: 'row-reverse',\n gap: '10px',\n '&:disabled': {\n color: 'primary.main',\n borderColor: 'primary.main',\n },\n },\n saveButtonDisabled: {\n '&:disabled': {\n color: 'text.disabled',\n borderColor: 'secondary.light',\n },\n },\n};\n// eslint-disable-next-line better-mutation/no-mutation\nServiceEndpointSelection.propTypes = {\n credentialAgentOperators: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n name: PropTypes.string.isRequired,\n logo: PropTypes.string,\n service: PropTypes.arrayOf(\n PropTypes.shape({\n id: PropTypes.string.isRequired,\n serviceEndpoint: PropTypes.string.isRequired,\n }),\n ),\n }),\n ).isRequired,\n selectedServiceType: PropTypes.string.isRequired,\n inProgress: PropTypes.bool.isRequired,\n onCreate: PropTypes.func.isRequired,\n handleBack: PropTypes.func.isRequired,\n};\n\nexport default ServiceEndpointSelection;\n","import { Box, Button, Typography } from '@mui/material';\nimport KeyboardArrowRightIcon from '@mui/icons-material/KeyboardArrowRight';\nimport { Form } from 'react-admin';\nimport PropTypes from 'prop-types';\nimport Loading from '@/components/Loading.jsx';\nimport CustomDropDown from '@/components/common/CustomDropDown.jsx';\nimport serviceTypes from '@/utils/serviceTypes.js';\n\nimport { getTitle } from '../../utils/index.js';\n\nconst selectedStep = 1;\n\nexport const ServiceTypeSelection = ({\n handleNext,\n isLoading,\n selectedServiceType,\n setSelectedServiceType,\n onDoLater,\n}) => {\n return (\n <>\n <Typography variant=\"pm\" sx={styles.step}>\n Step 1/2\n </Typography>\n <Typography variant=\"h1\" mb={2}>\n {getTitle(selectedStep)}\n </Typography>\n <Typography mb={4}>Select the type of service you wish to add.</Typography>\n <Form record={{}}>\n <CustomDropDown\n source=\"selectedServiceType\"\n label=\"Select type of service\"\n value={selectedServiceType}\n onChange={setSelectedServiceType}\n items={serviceTypes}\n stringValue={(item) => item.title}\n parse={(value) => value.id}\n disabled={false}\n />\n <Box sx={[styles.buttonBlock, !onDoLater && styles.rightButton]}>\n {onDoLater && (\n <Button sx={[styles.button]} variant=\"outlined\" color=\"secondary\" onClick={onDoLater}>\n Do Later\n </Button>\n )}\n <Button\n disabled={!selectedServiceType || isLoading}\n variant=\"outlined\"\n sx={[styles.button]}\n endIcon={\n selectedServiceType && isLoading ? (\n <Loading color=\"error\" sx={styles.loader} size={26} />\n ) : (\n <KeyboardArrowRightIcon />\n )\n }\n onClick={handleNext}\n >\n Next\n </Button>\n </Box>\n </Form>\n </>\n );\n};\n\nconst styles = {\n buttonBlock: {\n display: 'flex',\n marginTop: '40px',\n justifyContent: 'center',\n alignItems: 'center',\n gap: '30px',\n },\n rightButton: {\n justifyContent: 'flex-end',\n },\n step: { color: (theme) => theme.palette.primary.main, pb: '20px', display: 'block' },\n button: { px: 4, py: 1, fontSize: '16px', width: '160px' },\n};\n// eslint-disable-next-line better-mutation/no-mutation\nServiceTypeSelection.propTypes = {\n handleNext: PropTypes.func.isRequired,\n isLoading: PropTypes.bool,\n selectedServiceType: PropTypes.oneOfType([PropTypes.object, PropTypes.string, PropTypes.number]),\n setSelectedServiceType: PropTypes.func.isRequired,\n onDoLater: PropTypes.func,\n};\n\n// eslint-disable-next-line better-mutation/no-mutation\nServiceTypeSelection.defaultProps = {\n isLoading: false,\n selectedServiceType: null,\n onDoLater: null,\n};\n\nexport default ServiceTypeSelection;\n"],"names":["kebabCase","getNewServiceIndex","CREDENTIAL_TYPES_IDS","forwardRef","Autocomplete","styles","useInput","useMemo","useCallback","useEffect","jsx","AutocompleteInput","useState","Stack","jsxs","Box","OrganizationAvatar","Tooltip","CustomDropDown","useConfig","chainNames","Typography","Link","TextInput","required","validateServiceEndpoint","selectedStep","useIsIssuingInspection","Fragment","getTitle","Form","WebWalletSelection","HolderWalletSelection","Button","FormDataConsumer","SaveButton","serviceTypes","Loading"],"mappings":"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"}
@@ -4,9 +4,11 @@ const CREDENTIAL_TYPES_IDS = {
4
4
  VLC_INSPECTOR: "VlcInspector_v1",
5
5
  VLC_CAREER_ISSUER: "VlcCareerIssuer_v1",
6
6
  VLC_ID_DOCUMENT_ISSUER: "VlcIdDocumentIssuer_v1",
7
+ VLC_WORK_PERMIT_ISSUER: "VlcWorkPermitIssuer_v1",
7
8
  VLC_NOTARY_ISSUER: "VlcNotaryIssuer_v1",
8
9
  VLC_NOTARY_ID_DOCUMENT_ISSUER: "VlcNotaryIdDocumentIssuer_v1",
9
10
  VLC_NOTARY_CONTACT_ISSUER: "VlcNotaryContactIssuer_v1",
11
+ VLC_NOTARY_WORK_PERMIT_ISSUER: "VlcNotaryWorkPermitIssuer_v1",
10
12
  VLC_HOLDER_APP_PROVIDER: "VlcHolderAppProvider_v1",
11
13
  VLC_WEB_WALLET_PROVIDER: "VlcWebWalletProvider_v1",
12
14
  VLC_NODE_OPERATOR: "VlcNodeOperator_v1",
@@ -19,33 +21,41 @@ const serviceTypes = [
19
21
  id: CREDENTIAL_TYPES_IDS.VLC_INSPECTOR
20
22
  },
21
23
  {
22
- title: "Primary Source Career Issuer (eg. Employers & Educators)",
24
+ title: "Primary Source Issuer - Career (eg. Employers & Educators)",
23
25
  id: CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER
24
26
  },
25
27
  {
26
- title: "Primary Source Id Document Issuer (eg. Government Agency)",
27
- id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER
28
- },
29
- {
30
- title: "Primary Source Phone Issuer (eg. Telco)",
28
+ title: "Primary Source Issuer - Phone (eg. Telco)",
31
29
  id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE
32
30
  },
33
31
  {
34
- title: "Primary Source Email Issuer (eg. Email Service Provider)",
32
+ title: "Primary Source Issuer - Email (eg. Email Service Provider)",
35
33
  id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL
36
34
  },
37
35
  {
38
- title: "Accredited Notary Career Issuer (eg. Background screeners)",
36
+ title: "Primary Source Issuer - Id Documents (eg. Government Agency)",
37
+ id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER
38
+ },
39
+ {
40
+ title: "Primary Source Issuer - Work Permits",
41
+ id: CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER
42
+ },
43
+ {
44
+ title: "Accredited Notary Issuer - Career (eg. Background screeners)",
39
45
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER
40
46
  },
41
47
  {
42
- title: "Accredited Notary Phone/Email Issuer (eg. OTP Verifiers)",
48
+ title: "Accredited Notary Issuer - Phone/Email (eg. OTP Verifiers)",
43
49
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER
44
50
  },
45
51
  {
46
- title: "Accredited Notary Id Document Issuer (eg. IdV)",
52
+ title: "Accredited Notary Issuer - Id Documents (eg. IdV)",
47
53
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER
48
54
  },
55
+ {
56
+ title: "Accredited Notary Issuer - Work Permits",
57
+ id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER
58
+ },
49
59
  {
50
60
  title: "Credential Agent Operator",
51
61
  id: CREDENTIAL_TYPES_IDS.VLC_CREDENTIAL_AGENT_OPERATOR
@@ -69,32 +79,40 @@ const serviceTypesIssuingOrInspection = [
69
79
  id: CREDENTIAL_TYPES_IDS.VLC_INSPECTOR
70
80
  },
71
81
  {
72
- title: "Primary Source Career Issuer (eg. Employers & Educators)",
82
+ title: "Primary Source Issuer - Career (eg. Employers & Educators)",
73
83
  id: CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER
74
84
  },
75
85
  {
76
- title: "Primary Source Id Document Issuer (eg. Government Agency)",
77
- id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER
78
- },
79
- {
80
- title: "Primary Source Phone Issuer (eg. Telco)",
86
+ title: "Primary Source Issuer - Phone (eg. Telco)",
81
87
  id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE
82
88
  },
83
89
  {
84
- title: "Primary Source Email Issuer (eg. Email Service Provider)",
90
+ title: "Primary Source Issuer - Email (eg. Email Service Provider)",
85
91
  id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL
86
92
  },
87
93
  {
88
- title: "Accredited Notary Career Issuer (eg. Background screeners)",
94
+ title: "Primary Source Issuer - Id Documents (eg. Government Agency)",
95
+ id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER
96
+ },
97
+ {
98
+ title: "Primary Source Issuer - Work Permits",
99
+ id: CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER
100
+ },
101
+ {
102
+ title: "Accredited Notary Issuer - Career (eg. Background screeners)",
89
103
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER
90
104
  },
91
105
  {
92
- title: "Accredited Notary Phone/Email Issuer (eg. OTP Verifiers)",
106
+ title: "Accredited Notary Issuer - Phone/Email (eg. OTP Verifiers)",
93
107
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER
94
108
  },
95
109
  {
96
- title: "Accredited Notary Id Document Issuer (eg. IdV)",
110
+ title: "Accredited Notary Issuer - Id Documents (eg. IdV)",
97
111
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER
112
+ },
113
+ {
114
+ title: "Accredited Notary Issuer - Work Permits",
115
+ id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER
98
116
  }
99
117
  ];
100
118
  const commonCredentialTypes = [
@@ -134,7 +152,9 @@ const credentialTypesByServiceTypes = {
134
152
  [CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE]: ["PhoneV1.0"],
135
153
  [CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER]: commonCredentialTypes,
136
154
  [CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER]: commonCredentialTypes,
137
- [CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER]: ["EmailV1.0", "PhoneV1.0"]
155
+ [CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER]: ["EmailV1.0", "PhoneV1.0"],
156
+ [CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER]: ["CertificationV1.1"],
157
+ [CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER]: ["CertificationV1.1"]
138
158
  };
139
159
  const serviceTypeTitlesMap = serviceTypes.reduce((acc, item) => {
140
160
  acc[item.id] = item.title;
@@ -145,4 +165,4 @@ exports.credentialTypesByServiceTypes = credentialTypesByServiceTypes;
145
165
  exports.serviceTypeTitlesMap = serviceTypeTitlesMap;
146
166
  exports.serviceTypes = serviceTypes;
147
167
  exports.serviceTypesIssuingOrInspection = serviceTypesIssuingOrInspection;
148
- //# sourceMappingURL=serviceTypes.Lmuq0MZT.js.map
168
+ //# sourceMappingURL=serviceTypes.BWVBK33e.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serviceTypes.BWVBK33e.js","sources":["../../src/utils/serviceTypes.js"],"sourcesContent":["/**\n * Copyright 2023 Velocity Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport const CREDENTIAL_TYPES_IDS = {\n VLC_CREDENTIAL_AGENT_OPERATOR: 'VlcCredentialAgentOperator_v1',\n VLC_INSPECTOR: 'VlcInspector_v1',\n VLC_CAREER_ISSUER: 'VlcCareerIssuer_v1',\n VLC_ID_DOCUMENT_ISSUER: 'VlcIdDocumentIssuer_v1',\n VLC_WORK_PERMIT_ISSUER: 'VlcWorkPermitIssuer_v1',\n VLC_NOTARY_ISSUER: 'VlcNotaryIssuer_v1',\n VLC_NOTARY_ID_DOCUMENT_ISSUER: 'VlcNotaryIdDocumentIssuer_v1',\n VLC_NOTARY_CONTACT_ISSUER: 'VlcNotaryContactIssuer_v1',\n VLC_NOTARY_WORK_PERMIT_ISSUER: 'VlcNotaryWorkPermitIssuer_v1',\n VLC_HOLDER_APP_PROVIDER: 'VlcHolderAppProvider_v1',\n VLC_WEB_WALLET_PROVIDER: 'VlcWebWalletProvider_v1',\n VLC_NODE_OPERATOR: 'VlcNodeOperator_v1',\n VLC_CONTACT_ISSUER_EMAIL: 'VlcContactIssuer_v1_email',\n VLC_CONTACT_ISSUER_PHONE: 'VlcContactIssuer_v1_phone',\n};\n\nconst serviceTypes = [\n {\n title: 'Relying Party',\n id: CREDENTIAL_TYPES_IDS.VLC_INSPECTOR,\n },\n {\n title: 'Primary Source Issuer - Career (eg. Employers & Educators)',\n id: CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER,\n },\n {\n title: 'Primary Source Issuer - Phone (eg. Telco)',\n id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE,\n },\n {\n title: 'Primary Source Issuer - Email (eg. Email Service Provider)',\n id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL,\n },\n {\n title: 'Primary Source Issuer - Id Documents (eg. Government Agency)',\n id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER,\n },\n {\n title: 'Primary Source Issuer - Work Permits',\n id: CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Career (eg. Background screeners)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Phone/Email (eg. OTP Verifiers)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Id Documents (eg. IdV)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Work Permits',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER,\n },\n {\n title: 'Credential Agent Operator',\n id: CREDENTIAL_TYPES_IDS.VLC_CREDENTIAL_AGENT_OPERATOR,\n },\n {\n title: 'Webwallet Provider',\n id: CREDENTIAL_TYPES_IDS.VLC_WEB_WALLET_PROVIDER,\n },\n {\n title: 'App Wallet Provider',\n id: CREDENTIAL_TYPES_IDS.VLC_HOLDER_APP_PROVIDER,\n },\n {\n title: 'Node Operator',\n id: CREDENTIAL_TYPES_IDS.VLC_NODE_OPERATOR,\n },\n];\n\nexport const serviceTypesIssuingOrInspection = [\n {\n title: 'Relying Party',\n id: CREDENTIAL_TYPES_IDS.VLC_INSPECTOR,\n },\n {\n title: 'Primary Source Issuer - Career (eg. Employers & Educators)',\n id: CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER,\n },\n {\n title: 'Primary Source Issuer - Phone (eg. Telco)',\n id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE,\n },\n {\n title: 'Primary Source Issuer - Email (eg. Email Service Provider)',\n id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL,\n },\n {\n title: 'Primary Source Issuer - Id Documents (eg. Government Agency)',\n id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER,\n },\n {\n title: 'Primary Source Issuer - Work Permits',\n id: CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Career (eg. Background screeners)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Phone/Email (eg. OTP Verifiers)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Id Documents (eg. IdV)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Work Permits',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER,\n },\n];\n\nconst commonCredentialTypes = [\n 'EducationDegreeRegistrationV1.1',\n 'EducationDegreeStudyV1.1',\n 'EducationDegreeGraduationV1.1',\n 'EmploymentCurrentV1.1',\n 'EmploymentPastV1.1',\n 'CertificationV1.1',\n 'LicenseV1.1',\n 'CourseRegistrationV1.1',\n 'CourseCompletionV1.1',\n 'CourseAttendanceV1.1',\n 'AssessmentV1.1',\n 'BadgeV1.1',\n 'OpenBadgeV2.0',\n 'OpenBadgeCredential',\n];\n\nexport const credentialTypesByServiceTypes = {\n [CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER]: [\n 'IdDocumentV1.0',\n 'DriversLicenseV1.0',\n 'NationalIdCardV1.0',\n 'PassportV1.0',\n 'ResidentPermitV1.0',\n 'ProofOfAgeV1.0',\n ],\n [CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER]: [\n 'IdDocumentV1.0',\n 'DriversLicenseV1.0',\n 'NationalIdCardV1.0',\n 'PassportV1.0',\n 'ResidentPermitV1.0',\n 'ProofOfAgeV1.0',\n ],\n [CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL]: ['EmailV1.0'],\n [CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE]: ['PhoneV1.0'],\n [CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER]: commonCredentialTypes,\n [CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER]: commonCredentialTypes,\n [CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER]: ['EmailV1.0', 'PhoneV1.0'],\n [CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER]: ['CertificationV1.1'],\n [CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER]: ['CertificationV1.1'],\n};\n\nexport const serviceTypeTitlesMap = serviceTypes.reduce((acc, item) => {\n acc[item.id] = item.title;\n return acc;\n}, {});\n\nexport default serviceTypes;\n"],"names":[],"mappings":"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"}
@@ -3,9 +3,11 @@ const CREDENTIAL_TYPES_IDS = {
3
3
  VLC_INSPECTOR: "VlcInspector_v1",
4
4
  VLC_CAREER_ISSUER: "VlcCareerIssuer_v1",
5
5
  VLC_ID_DOCUMENT_ISSUER: "VlcIdDocumentIssuer_v1",
6
+ VLC_WORK_PERMIT_ISSUER: "VlcWorkPermitIssuer_v1",
6
7
  VLC_NOTARY_ISSUER: "VlcNotaryIssuer_v1",
7
8
  VLC_NOTARY_ID_DOCUMENT_ISSUER: "VlcNotaryIdDocumentIssuer_v1",
8
9
  VLC_NOTARY_CONTACT_ISSUER: "VlcNotaryContactIssuer_v1",
10
+ VLC_NOTARY_WORK_PERMIT_ISSUER: "VlcNotaryWorkPermitIssuer_v1",
9
11
  VLC_HOLDER_APP_PROVIDER: "VlcHolderAppProvider_v1",
10
12
  VLC_WEB_WALLET_PROVIDER: "VlcWebWalletProvider_v1",
11
13
  VLC_NODE_OPERATOR: "VlcNodeOperator_v1",
@@ -18,33 +20,41 @@ const serviceTypes = [
18
20
  id: CREDENTIAL_TYPES_IDS.VLC_INSPECTOR
19
21
  },
20
22
  {
21
- title: "Primary Source Career Issuer (eg. Employers & Educators)",
23
+ title: "Primary Source Issuer - Career (eg. Employers & Educators)",
22
24
  id: CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER
23
25
  },
24
26
  {
25
- title: "Primary Source Id Document Issuer (eg. Government Agency)",
26
- id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER
27
- },
28
- {
29
- title: "Primary Source Phone Issuer (eg. Telco)",
27
+ title: "Primary Source Issuer - Phone (eg. Telco)",
30
28
  id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE
31
29
  },
32
30
  {
33
- title: "Primary Source Email Issuer (eg. Email Service Provider)",
31
+ title: "Primary Source Issuer - Email (eg. Email Service Provider)",
34
32
  id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL
35
33
  },
36
34
  {
37
- title: "Accredited Notary Career Issuer (eg. Background screeners)",
35
+ title: "Primary Source Issuer - Id Documents (eg. Government Agency)",
36
+ id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER
37
+ },
38
+ {
39
+ title: "Primary Source Issuer - Work Permits",
40
+ id: CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER
41
+ },
42
+ {
43
+ title: "Accredited Notary Issuer - Career (eg. Background screeners)",
38
44
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER
39
45
  },
40
46
  {
41
- title: "Accredited Notary Phone/Email Issuer (eg. OTP Verifiers)",
47
+ title: "Accredited Notary Issuer - Phone/Email (eg. OTP Verifiers)",
42
48
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER
43
49
  },
44
50
  {
45
- title: "Accredited Notary Id Document Issuer (eg. IdV)",
51
+ title: "Accredited Notary Issuer - Id Documents (eg. IdV)",
46
52
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER
47
53
  },
54
+ {
55
+ title: "Accredited Notary Issuer - Work Permits",
56
+ id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER
57
+ },
48
58
  {
49
59
  title: "Credential Agent Operator",
50
60
  id: CREDENTIAL_TYPES_IDS.VLC_CREDENTIAL_AGENT_OPERATOR
@@ -68,32 +78,40 @@ const serviceTypesIssuingOrInspection = [
68
78
  id: CREDENTIAL_TYPES_IDS.VLC_INSPECTOR
69
79
  },
70
80
  {
71
- title: "Primary Source Career Issuer (eg. Employers & Educators)",
81
+ title: "Primary Source Issuer - Career (eg. Employers & Educators)",
72
82
  id: CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER
73
83
  },
74
84
  {
75
- title: "Primary Source Id Document Issuer (eg. Government Agency)",
76
- id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER
77
- },
78
- {
79
- title: "Primary Source Phone Issuer (eg. Telco)",
85
+ title: "Primary Source Issuer - Phone (eg. Telco)",
80
86
  id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE
81
87
  },
82
88
  {
83
- title: "Primary Source Email Issuer (eg. Email Service Provider)",
89
+ title: "Primary Source Issuer - Email (eg. Email Service Provider)",
84
90
  id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL
85
91
  },
86
92
  {
87
- title: "Accredited Notary Career Issuer (eg. Background screeners)",
93
+ title: "Primary Source Issuer - Id Documents (eg. Government Agency)",
94
+ id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER
95
+ },
96
+ {
97
+ title: "Primary Source Issuer - Work Permits",
98
+ id: CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER
99
+ },
100
+ {
101
+ title: "Accredited Notary Issuer - Career (eg. Background screeners)",
88
102
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER
89
103
  },
90
104
  {
91
- title: "Accredited Notary Phone/Email Issuer (eg. OTP Verifiers)",
105
+ title: "Accredited Notary Issuer - Phone/Email (eg. OTP Verifiers)",
92
106
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER
93
107
  },
94
108
  {
95
- title: "Accredited Notary Id Document Issuer (eg. IdV)",
109
+ title: "Accredited Notary Issuer - Id Documents (eg. IdV)",
96
110
  id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER
111
+ },
112
+ {
113
+ title: "Accredited Notary Issuer - Work Permits",
114
+ id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER
97
115
  }
98
116
  ];
99
117
  const commonCredentialTypes = [
@@ -133,7 +151,9 @@ const credentialTypesByServiceTypes = {
133
151
  [CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE]: ["PhoneV1.0"],
134
152
  [CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER]: commonCredentialTypes,
135
153
  [CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER]: commonCredentialTypes,
136
- [CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER]: ["EmailV1.0", "PhoneV1.0"]
154
+ [CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER]: ["EmailV1.0", "PhoneV1.0"],
155
+ [CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER]: ["CertificationV1.1"],
156
+ [CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER]: ["CertificationV1.1"]
137
157
  };
138
158
  const serviceTypeTitlesMap = serviceTypes.reduce((acc, item) => {
139
159
  acc[item.id] = item.title;
@@ -146,4 +166,4 @@ export {
146
166
  credentialTypesByServiceTypes as c,
147
167
  serviceTypesIssuingOrInspection as s
148
168
  };
149
- //# sourceMappingURL=serviceTypes.C9KX9KG1.js.map
169
+ //# sourceMappingURL=serviceTypes.BbBTNXB9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serviceTypes.BbBTNXB9.js","sources":["../../src/utils/serviceTypes.js"],"sourcesContent":["/**\n * Copyright 2023 Velocity Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport const CREDENTIAL_TYPES_IDS = {\n VLC_CREDENTIAL_AGENT_OPERATOR: 'VlcCredentialAgentOperator_v1',\n VLC_INSPECTOR: 'VlcInspector_v1',\n VLC_CAREER_ISSUER: 'VlcCareerIssuer_v1',\n VLC_ID_DOCUMENT_ISSUER: 'VlcIdDocumentIssuer_v1',\n VLC_WORK_PERMIT_ISSUER: 'VlcWorkPermitIssuer_v1',\n VLC_NOTARY_ISSUER: 'VlcNotaryIssuer_v1',\n VLC_NOTARY_ID_DOCUMENT_ISSUER: 'VlcNotaryIdDocumentIssuer_v1',\n VLC_NOTARY_CONTACT_ISSUER: 'VlcNotaryContactIssuer_v1',\n VLC_NOTARY_WORK_PERMIT_ISSUER: 'VlcNotaryWorkPermitIssuer_v1',\n VLC_HOLDER_APP_PROVIDER: 'VlcHolderAppProvider_v1',\n VLC_WEB_WALLET_PROVIDER: 'VlcWebWalletProvider_v1',\n VLC_NODE_OPERATOR: 'VlcNodeOperator_v1',\n VLC_CONTACT_ISSUER_EMAIL: 'VlcContactIssuer_v1_email',\n VLC_CONTACT_ISSUER_PHONE: 'VlcContactIssuer_v1_phone',\n};\n\nconst serviceTypes = [\n {\n title: 'Relying Party',\n id: CREDENTIAL_TYPES_IDS.VLC_INSPECTOR,\n },\n {\n title: 'Primary Source Issuer - Career (eg. Employers & Educators)',\n id: CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER,\n },\n {\n title: 'Primary Source Issuer - Phone (eg. Telco)',\n id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE,\n },\n {\n title: 'Primary Source Issuer - Email (eg. Email Service Provider)',\n id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL,\n },\n {\n title: 'Primary Source Issuer - Id Documents (eg. Government Agency)',\n id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER,\n },\n {\n title: 'Primary Source Issuer - Work Permits',\n id: CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Career (eg. Background screeners)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Phone/Email (eg. OTP Verifiers)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Id Documents (eg. IdV)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Work Permits',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER,\n },\n {\n title: 'Credential Agent Operator',\n id: CREDENTIAL_TYPES_IDS.VLC_CREDENTIAL_AGENT_OPERATOR,\n },\n {\n title: 'Webwallet Provider',\n id: CREDENTIAL_TYPES_IDS.VLC_WEB_WALLET_PROVIDER,\n },\n {\n title: 'App Wallet Provider',\n id: CREDENTIAL_TYPES_IDS.VLC_HOLDER_APP_PROVIDER,\n },\n {\n title: 'Node Operator',\n id: CREDENTIAL_TYPES_IDS.VLC_NODE_OPERATOR,\n },\n];\n\nexport const serviceTypesIssuingOrInspection = [\n {\n title: 'Relying Party',\n id: CREDENTIAL_TYPES_IDS.VLC_INSPECTOR,\n },\n {\n title: 'Primary Source Issuer - Career (eg. Employers & Educators)',\n id: CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER,\n },\n {\n title: 'Primary Source Issuer - Phone (eg. Telco)',\n id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE,\n },\n {\n title: 'Primary Source Issuer - Email (eg. Email Service Provider)',\n id: CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL,\n },\n {\n title: 'Primary Source Issuer - Id Documents (eg. Government Agency)',\n id: CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER,\n },\n {\n title: 'Primary Source Issuer - Work Permits',\n id: CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Career (eg. Background screeners)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Phone/Email (eg. OTP Verifiers)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Id Documents (eg. IdV)',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER,\n },\n {\n title: 'Accredited Notary Issuer - Work Permits',\n id: CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER,\n },\n];\n\nconst commonCredentialTypes = [\n 'EducationDegreeRegistrationV1.1',\n 'EducationDegreeStudyV1.1',\n 'EducationDegreeGraduationV1.1',\n 'EmploymentCurrentV1.1',\n 'EmploymentPastV1.1',\n 'CertificationV1.1',\n 'LicenseV1.1',\n 'CourseRegistrationV1.1',\n 'CourseCompletionV1.1',\n 'CourseAttendanceV1.1',\n 'AssessmentV1.1',\n 'BadgeV1.1',\n 'OpenBadgeV2.0',\n 'OpenBadgeCredential',\n];\n\nexport const credentialTypesByServiceTypes = {\n [CREDENTIAL_TYPES_IDS.VLC_ID_DOCUMENT_ISSUER]: [\n 'IdDocumentV1.0',\n 'DriversLicenseV1.0',\n 'NationalIdCardV1.0',\n 'PassportV1.0',\n 'ResidentPermitV1.0',\n 'ProofOfAgeV1.0',\n ],\n [CREDENTIAL_TYPES_IDS.VLC_NOTARY_ID_DOCUMENT_ISSUER]: [\n 'IdDocumentV1.0',\n 'DriversLicenseV1.0',\n 'NationalIdCardV1.0',\n 'PassportV1.0',\n 'ResidentPermitV1.0',\n 'ProofOfAgeV1.0',\n ],\n [CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_EMAIL]: ['EmailV1.0'],\n [CREDENTIAL_TYPES_IDS.VLC_CONTACT_ISSUER_PHONE]: ['PhoneV1.0'],\n [CREDENTIAL_TYPES_IDS.VLC_CAREER_ISSUER]: commonCredentialTypes,\n [CREDENTIAL_TYPES_IDS.VLC_NOTARY_ISSUER]: commonCredentialTypes,\n [CREDENTIAL_TYPES_IDS.VLC_NOTARY_CONTACT_ISSUER]: ['EmailV1.0', 'PhoneV1.0'],\n [CREDENTIAL_TYPES_IDS.VLC_WORK_PERMIT_ISSUER]: ['CertificationV1.1'],\n [CREDENTIAL_TYPES_IDS.VLC_NOTARY_WORK_PERMIT_ISSUER]: ['CertificationV1.1'],\n};\n\nexport const serviceTypeTitlesMap = serviceTypes.reduce((acc, item) => {\n acc[item.id] = item.title;\n return acc;\n}, {});\n\nexport default serviceTypes;\n"],"names":[],"mappings":"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"}