@procivis/one-react-native-components 0.3.112 → 0.3.121
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/components/history/history-list-item-icon.js +6 -2
- package/lib/commonjs/components/history/history-list-item-icon.js.map +1 -1
- package/lib/commonjs/components/index.js +11 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/trust-info/index.js +29 -0
- package/lib/commonjs/components/trust-info/index.js.map +1 -0
- package/lib/commonjs/components/trust-info/trust-info.js +79 -0
- package/lib/commonjs/components/trust-info/trust-info.js.map +1 -0
- package/lib/commonjs/ui-components/control/checkbox.js +1 -0
- package/lib/commonjs/ui-components/control/checkbox.js.map +1 -1
- package/lib/commonjs/ui-components/header/header.js +2 -0
- package/lib/commonjs/ui-components/header/header.js.map +1 -1
- package/lib/commonjs/ui-components/icons/contact.js +45 -0
- package/lib/commonjs/ui-components/icons/contact.js.map +1 -0
- package/lib/commonjs/ui-components/icons/index.js +11 -0
- package/lib/commonjs/ui-components/icons/index.js.map +1 -1
- package/lib/commonjs/ui-components/screens/index.js +7 -0
- package/lib/commonjs/ui-components/screens/index.js.map +1 -1
- package/lib/commonjs/ui-components/screens/nerd-mode-screen.js +45 -15
- package/lib/commonjs/ui-components/screens/nerd-mode-screen.js.map +1 -1
- package/lib/commonjs/ui-components/screens/trust-info-details-screen.js +384 -0
- package/lib/commonjs/ui-components/screens/trust-info-details-screen.js.map +1 -0
- package/lib/commonjs/utils/hooks/core/cache.js +2 -1
- package/lib/commonjs/utils/hooks/core/cache.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/core-init.js +4 -2
- package/lib/commonjs/utils/hooks/core/core-init.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/credentials.js +26 -1
- package/lib/commonjs/utils/hooks/core/credentials.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/index.js +11 -0
- package/lib/commonjs/utils/hooks/core/index.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/proofs.js +12 -1
- package/lib/commonjs/utils/hooks/core/proofs.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/trust-list.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/verifier-instance.js +52 -0
- package/lib/commonjs/utils/hooks/core/verifier-instance.js.map +1 -0
- package/lib/commonjs/utils/hooks/core/wallet-unit.js +9 -2
- package/lib/commonjs/utils/hooks/core/wallet-unit.js.map +1 -1
- package/lib/commonjs/utils/parsers/query.js +2 -2
- package/lib/commonjs/utils/parsers/query.js.map +1 -1
- package/lib/module/components/history/history-list-item-icon.js +6 -2
- package/lib/module/components/history/history-list-item-icon.js.map +1 -1
- package/lib/module/components/index.js +1 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/trust-info/index.js +4 -0
- package/lib/module/components/trust-info/index.js.map +1 -0
- package/lib/module/components/trust-info/trust-info.js +70 -0
- package/lib/module/components/trust-info/trust-info.js.map +1 -0
- package/lib/module/ui-components/control/checkbox.js +1 -0
- package/lib/module/ui-components/control/checkbox.js.map +1 -1
- package/lib/module/ui-components/header/header.js +2 -0
- package/lib/module/ui-components/header/header.js.map +1 -1
- package/lib/module/ui-components/icons/contact.js +34 -0
- package/lib/module/ui-components/icons/contact.js.map +1 -0
- package/lib/module/ui-components/icons/index.js +1 -0
- package/lib/module/ui-components/icons/index.js.map +1 -1
- package/lib/module/ui-components/screens/index.js +2 -0
- package/lib/module/ui-components/screens/index.js.map +1 -1
- package/lib/module/ui-components/screens/nerd-mode-screen.js +46 -16
- package/lib/module/ui-components/screens/nerd-mode-screen.js.map +1 -1
- package/lib/module/ui-components/screens/trust-info-details-screen.js +375 -0
- package/lib/module/ui-components/screens/trust-info-details-screen.js.map +1 -0
- package/lib/module/utils/hooks/core/cache.js +2 -1
- package/lib/module/utils/hooks/core/cache.js.map +1 -1
- package/lib/module/utils/hooks/core/core-init.js +4 -2
- package/lib/module/utils/hooks/core/core-init.js.map +1 -1
- package/lib/module/utils/hooks/core/credentials.js +24 -1
- package/lib/module/utils/hooks/core/credentials.js.map +1 -1
- package/lib/module/utils/hooks/core/index.js +1 -0
- package/lib/module/utils/hooks/core/index.js.map +1 -1
- package/lib/module/utils/hooks/core/proofs.js +10 -0
- package/lib/module/utils/hooks/core/proofs.js.map +1 -1
- package/lib/module/utils/hooks/core/trust-list.js.map +1 -1
- package/lib/module/utils/hooks/core/verifier-instance.js +43 -0
- package/lib/module/utils/hooks/core/verifier-instance.js.map +1 -0
- package/lib/module/utils/hooks/core/wallet-unit.js +9 -2
- package/lib/module/utils/hooks/core/wallet-unit.js.map +1 -1
- package/lib/module/utils/parsers/query.js +2 -2
- package/lib/module/utils/parsers/query.js.map +1 -1
- package/lib/typescript/components/index.d.ts +1 -0
- package/lib/typescript/components/trust-info/index.d.ts +3 -0
- package/lib/typescript/components/trust-info/trust-info.d.ts +19 -0
- package/lib/typescript/ui-components/header/header.d.ts +2 -0
- package/lib/typescript/ui-components/icons/contact.d.ts +4 -0
- package/lib/typescript/ui-components/icons/index.d.ts +1 -0
- package/lib/typescript/ui-components/screens/index.d.ts +3 -0
- package/lib/typescript/ui-components/screens/nerd-mode-screen.d.ts +6 -1
- package/lib/typescript/ui-components/screens/trust-info-details-screen.d.ts +32 -0
- package/lib/typescript/utils/hooks/core/core-init.d.ts +1 -1
- package/lib/typescript/utils/hooks/core/credentials.d.ts +5 -9
- package/lib/typescript/utils/hooks/core/index.d.ts +1 -0
- package/lib/typescript/utils/hooks/core/proofs.d.ts +2 -0
- package/lib/typescript/utils/hooks/core/verifier-instance.d.ts +8 -0
- package/lib/typescript/utils/parsers/query.d.ts +1 -1
- package/package.json +8 -8
- package/src/components/history/history-list-item-icon.tsx +4 -0
- package/src/components/index.ts +1 -0
- package/src/components/trust-info/index.ts +4 -0
- package/src/components/trust-info/trust-info.tsx +90 -0
- package/src/ui-components/control/checkbox.tsx +1 -1
- package/src/ui-components/header/header.tsx +9 -3
- package/src/ui-components/icons/contact.tsx +26 -0
- package/src/ui-components/icons/index.ts +1 -0
- package/src/ui-components/screens/index.ts +3 -0
- package/src/ui-components/screens/nerd-mode-screen.tsx +80 -22
- package/src/ui-components/screens/trust-info-details-screen.tsx +472 -0
- package/src/utils/hooks/core/cache.ts +2 -1
- package/src/utils/hooks/core/core-init.ts +3 -4
- package/src/utils/hooks/core/credentials.ts +32 -11
- package/src/utils/hooks/core/index.ts +1 -0
- package/src/utils/hooks/core/proofs.ts +14 -0
- package/src/utils/hooks/core/trust-list.ts +1 -1
- package/src/utils/hooks/core/verifier-instance.ts +54 -0
- package/src/utils/hooks/core/wallet-unit.ts +9 -2
- package/src/utils/parsers/query.ts +8 -0
|
@@ -30,7 +30,10 @@ const defaultIcons = {
|
|
|
30
30
|
INTERACTION_CREATED: HistoryStatusAcceptedIcon,
|
|
31
31
|
INTERACTION_ERRORED: HistoryStatusErrorIcon,
|
|
32
32
|
INTERACTION_EXPIRED: HistoryStatusErrorIcon,
|
|
33
|
-
DELIVERED: HistoryStatusAcceptedIcon
|
|
33
|
+
DELIVERED: HistoryStatusAcceptedIcon,
|
|
34
|
+
WRP_AC_RECEIVED: HistoryStatusAcceptedIcon,
|
|
35
|
+
WRP_RC_RECEIVED: HistoryStatusAcceptedIcon,
|
|
36
|
+
WRP_NR_RECEIVED: HistoryStatusAcceptedIcon
|
|
34
37
|
},
|
|
35
38
|
entityTypes: {
|
|
36
39
|
BACKUP: HistoryRevokeIcon,
|
|
@@ -59,7 +62,8 @@ const defaultIcons = {
|
|
|
59
62
|
SUPERVISORY_AUTHORITY: HistoryCertificateIcon,
|
|
60
63
|
TRUST_LIST_PUBLICATION: HistoryTrustAnchorIcon,
|
|
61
64
|
TRUST_COLLECTION: HistoryTrustAnchorIcon,
|
|
62
|
-
TRUST_LIST_SUBSCRIPTION: HistoryTrustAnchorIcon
|
|
65
|
+
TRUST_LIST_SUBSCRIPTION: HistoryTrustAnchorIcon,
|
|
66
|
+
VERIFIER_INSTANCE: HistoryTrustedEntityIcon
|
|
63
67
|
}
|
|
64
68
|
};
|
|
65
69
|
export const getHistoryItemActionIcon = action => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HistoryAction","HistoryEntityType","React","useMemo","HistoryBackupCreatedIcon","HistoryBackupRestoredIcon","HistoryCertificateIcon","HistoryCredentialIcon","HistoryDidIcon","HistoryIdentifierIcon","HistoryIssueIcon","HistoryItemIcon","HistoryKeyIcon","HistoryOrganisationIcon","HistoryProofRequestIcon","HistoryRevokeIcon","HistorySchemaIcon","HistoryStatusAcceptedIcon","HistoryStatusDeleteIcon","HistoryStatusErrorIcon","HistoryStatusSuspendIcon","HistorySuspendIcon","HistoryTrustAnchorIcon","HistoryTrustedEntityIcon","defaultIcons","actions","ACCEPTED","ACTIVATED","CLAIMS_REMOVED","CREATED","DEACTIVATED","DELETED","ERRORED","IMPORTED","ISSUED","OFFERED","PENDING","REJECTED","REMOVED","REQUESTED","RESTORED","RETRACTED","REVOKED","SHARED","SUSPENDED","UPDATED","WITHDRAWN","REACTIVATED","CSR_GENERATED","EXPIRED","INTERACTION_CREATED","INTERACTION_ERRORED","INTERACTION_EXPIRED","DELIVERED","entityTypes","BACKUP","CERTIFICATE","CREDENTIAL","CREDENTIAL_SCHEMA","DID","IDENTIFIER","KEY","ORGANISATION","PROOF","PROOF_SCHEMA","TRUST_ANCHOR","TRUST_ENTITY","WALLET_UNIT","WALLET_RELYING_PARTY","USER","PROVIDER","STS_ROLE","STS_ORGANISATION","STS_IAM_ROLE","STS_TOKEN","SIGNATURE","STS_SESSION","NOTIFICATION","SUPERVISORY_AUTHORITY","TRUST_LIST_PUBLICATION","TRUST_COLLECTION","TRUST_LIST_SUBSCRIPTION","getHistoryItemActionIcon","action","_defaultIcons$actions","HistoryListItemIcon","item","statusIcon","typeIcon","_defaultIcons$entityT","entityType","createElement","StatusIcon","TypeIcon"],"sources":["history-list-item-icon.tsx"],"sourcesContent":["import { HistoryAction, HistoryEntityType, HistoryListItem } from '@procivis/react-native-one-core';\nimport React, { FC, useMemo } from 'react';\nimport { SvgProps } from 'react-native-svg';\n\nimport {\n HistoryBackupCreatedIcon,\n HistoryBackupRestoredIcon,\n HistoryCertificateIcon,\n HistoryCredentialIcon,\n HistoryDidIcon,\n HistoryIdentifierIcon,\n HistoryIssueIcon,\n HistoryItemIcon,\n HistoryKeyIcon,\n HistoryOrganisationIcon,\n HistoryProofRequestIcon,\n HistoryRevokeIcon,\n HistorySchemaIcon,\n HistoryStatusAcceptedIcon,\n HistoryStatusDeleteIcon,\n HistoryStatusErrorIcon,\n HistoryStatusSuspendIcon,\n HistorySuspendIcon,\n HistoryTrustAnchorIcon,\n HistoryTrustedEntityIcon,\n} from '../../ui-components';\n\nconst defaultIcons: {\n actions: { [key in keyof typeof HistoryAction]: FC<SvgProps> };\n entityTypes: { [key in keyof typeof HistoryEntityType]: FC<SvgProps> };\n} = {\n actions: {\n ACCEPTED: HistoryStatusAcceptedIcon,\n ACTIVATED: HistoryStatusAcceptedIcon,\n CLAIMS_REMOVED: HistoryStatusDeleteIcon,\n CREATED: HistoryStatusAcceptedIcon,\n DEACTIVATED: HistoryStatusErrorIcon,\n DELETED: HistoryStatusDeleteIcon,\n ERRORED: HistoryStatusErrorIcon,\n IMPORTED: HistoryStatusAcceptedIcon,\n ISSUED: HistoryStatusAcceptedIcon,\n OFFERED: HistoryStatusAcceptedIcon,\n PENDING: HistoryStatusAcceptedIcon,\n REJECTED: HistoryStatusErrorIcon,\n REMOVED: HistoryStatusDeleteIcon,\n REQUESTED: HistoryStatusAcceptedIcon,\n RESTORED: HistoryStatusAcceptedIcon,\n RETRACTED: HistoryStatusErrorIcon,\n REVOKED: HistoryStatusErrorIcon,\n SHARED: HistoryStatusAcceptedIcon,\n SUSPENDED: HistoryStatusSuspendIcon,\n UPDATED: HistoryStatusAcceptedIcon,\n WITHDRAWN: HistoryStatusErrorIcon,\n REACTIVATED: HistoryStatusAcceptedIcon,\n CSR_GENERATED: HistoryStatusAcceptedIcon,\n EXPIRED: HistoryStatusErrorIcon,\n INTERACTION_CREATED: HistoryStatusAcceptedIcon,\n INTERACTION_ERRORED: HistoryStatusErrorIcon,\n INTERACTION_EXPIRED: HistoryStatusErrorIcon,\n DELIVERED: HistoryStatusAcceptedIcon,\n },\n entityTypes: {\n BACKUP: HistoryRevokeIcon,\n CERTIFICATE: HistoryCertificateIcon,\n CREDENTIAL: HistoryCredentialIcon,\n CREDENTIAL_SCHEMA: HistorySchemaIcon,\n DID: HistoryDidIcon,\n IDENTIFIER: HistoryIdentifierIcon,\n KEY: HistoryKeyIcon,\n ORGANISATION: HistoryOrganisationIcon,\n PROOF: HistoryProofRequestIcon,\n PROOF_SCHEMA: HistorySchemaIcon,\n TRUST_ANCHOR: HistoryTrustAnchorIcon,\n TRUST_ENTITY: HistoryTrustedEntityIcon,\n WALLET_UNIT: HistoryTrustedEntityIcon,\n WALLET_RELYING_PARTY: HistoryTrustedEntityIcon,\n USER: HistoryIdentifierIcon,\n PROVIDER: HistoryIdentifierIcon,\n STS_ROLE: HistoryIdentifierIcon,\n STS_ORGANISATION: HistoryOrganisationIcon,\n STS_IAM_ROLE: HistoryIdentifierIcon,\n STS_TOKEN: HistoryKeyIcon,\n SIGNATURE: HistoryCertificateIcon,\n STS_SESSION: HistoryIdentifierIcon,\n NOTIFICATION: HistoryCredentialIcon,\n SUPERVISORY_AUTHORITY: HistoryCertificateIcon,\n TRUST_LIST_PUBLICATION: HistoryTrustAnchorIcon,\n TRUST_COLLECTION: HistoryTrustAnchorIcon,\n TRUST_LIST_SUBSCRIPTION: HistoryTrustAnchorIcon,\n },\n};\n\nexport const getHistoryItemActionIcon = (action: HistoryAction) => {\n return defaultIcons.actions[action] ?? HistoryStatusAcceptedIcon;\n};\n\nexport type HistoryListItemIconProps = {\n item: HistoryListItem;\n};\n\nexport const HistoryListItemIcon: FC<HistoryListItemIconProps> = ({ item }) => {\n const statusIcon = getHistoryItemActionIcon(item.action);\n const typeIcon = useMemo(() => {\n switch (item.entityType) {\n case HistoryEntityType.BACKUP:\n switch (item.action) {\n case HistoryAction.CREATED:\n return HistoryBackupCreatedIcon;\n case HistoryAction.RESTORED:\n return HistoryBackupRestoredIcon;\n default:\n break;\n }\n break;\n case HistoryEntityType.CREDENTIAL:\n switch (item.action) {\n case HistoryAction.REVOKED:\n return HistoryRevokeIcon;\n case HistoryAction.SUSPENDED:\n return HistorySuspendIcon;\n default:\n break;\n }\n break;\n default:\n break;\n }\n\n return defaultIcons.entityTypes[item.entityType] ?? HistoryIssueIcon;\n }, [item.action, item.entityType]);\n return <HistoryItemIcon StatusIcon={statusIcon} TypeIcon={typeIcon} />;\n};\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,iBAAiB,QAAyB,iCAAiC;AACnG,OAAOC,KAAK,IAAQC,OAAO,QAAQ,OAAO;AAG1C,SACEC,wBAAwB,EACxBC,yBAAyB,EACzBC,sBAAsB,EACtBC,qBAAqB,EACrBC,cAAc,EACdC,qBAAqB,EACrBC,gBAAgB,EAChBC,eAAe,EACfC,cAAc,EACdC,uBAAuB,EACvBC,uBAAuB,EACvBC,iBAAiB,EACjBC,iBAAiB,EACjBC,yBAAyB,EACzBC,uBAAuB,EACvBC,sBAAsB,EACtBC,wBAAwB,EACxBC,kBAAkB,EAClBC,sBAAsB,EACtBC,wBAAwB,QACnB,qBAAqB;AAE5B,MAAMC,YAGL,GAAG;EACFC,OAAO,EAAE;IACPC,QAAQ,EAAET,yBAAyB;IACnCU,SAAS,EAAEV,yBAAyB;IACpCW,cAAc,EAAEV,uBAAuB;IACvCW,OAAO,EAAEZ,yBAAyB;IAClCa,WAAW,EAAEX,sBAAsB;IACnCY,OAAO,EAAEb,uBAAuB;IAChCc,OAAO,EAAEb,sBAAsB;IAC/Bc,QAAQ,EAAEhB,yBAAyB;IACnCiB,MAAM,EAAEjB,yBAAyB;IACjCkB,OAAO,EAAElB,yBAAyB;IAClCmB,OAAO,EAAEnB,yBAAyB;IAClCoB,QAAQ,EAAElB,sBAAsB;IAChCmB,OAAO,EAAEpB,uBAAuB;IAChCqB,SAAS,EAAEtB,yBAAyB;IACpCuB,QAAQ,EAAEvB,yBAAyB;IACnCwB,SAAS,EAAEtB,sBAAsB;IACjCuB,OAAO,EAAEvB,sBAAsB;IAC/BwB,MAAM,EAAE1B,yBAAyB;IACjC2B,SAAS,EAAExB,wBAAwB;IACnCyB,OAAO,EAAE5B,yBAAyB;IAClC6B,SAAS,EAAE3B,sBAAsB;IACjC4B,WAAW,EAAE9B,yBAAyB;IACtC+B,aAAa,EAAE/B,yBAAyB;IACxCgC,OAAO,EAAE9B,sBAAsB;IAC/B+B,mBAAmB,EAAEjC,yBAAyB;IAC9CkC,mBAAmB,EAAEhC,sBAAsB;IAC3CiC,mBAAmB,EAAEjC,sBAAsB;IAC3CkC,SAAS,EAAEpC;
|
|
1
|
+
{"version":3,"names":["HistoryAction","HistoryEntityType","React","useMemo","HistoryBackupCreatedIcon","HistoryBackupRestoredIcon","HistoryCertificateIcon","HistoryCredentialIcon","HistoryDidIcon","HistoryIdentifierIcon","HistoryIssueIcon","HistoryItemIcon","HistoryKeyIcon","HistoryOrganisationIcon","HistoryProofRequestIcon","HistoryRevokeIcon","HistorySchemaIcon","HistoryStatusAcceptedIcon","HistoryStatusDeleteIcon","HistoryStatusErrorIcon","HistoryStatusSuspendIcon","HistorySuspendIcon","HistoryTrustAnchorIcon","HistoryTrustedEntityIcon","defaultIcons","actions","ACCEPTED","ACTIVATED","CLAIMS_REMOVED","CREATED","DEACTIVATED","DELETED","ERRORED","IMPORTED","ISSUED","OFFERED","PENDING","REJECTED","REMOVED","REQUESTED","RESTORED","RETRACTED","REVOKED","SHARED","SUSPENDED","UPDATED","WITHDRAWN","REACTIVATED","CSR_GENERATED","EXPIRED","INTERACTION_CREATED","INTERACTION_ERRORED","INTERACTION_EXPIRED","DELIVERED","WRP_AC_RECEIVED","WRP_RC_RECEIVED","WRP_NR_RECEIVED","entityTypes","BACKUP","CERTIFICATE","CREDENTIAL","CREDENTIAL_SCHEMA","DID","IDENTIFIER","KEY","ORGANISATION","PROOF","PROOF_SCHEMA","TRUST_ANCHOR","TRUST_ENTITY","WALLET_UNIT","WALLET_RELYING_PARTY","USER","PROVIDER","STS_ROLE","STS_ORGANISATION","STS_IAM_ROLE","STS_TOKEN","SIGNATURE","STS_SESSION","NOTIFICATION","SUPERVISORY_AUTHORITY","TRUST_LIST_PUBLICATION","TRUST_COLLECTION","TRUST_LIST_SUBSCRIPTION","VERIFIER_INSTANCE","getHistoryItemActionIcon","action","_defaultIcons$actions","HistoryListItemIcon","item","statusIcon","typeIcon","_defaultIcons$entityT","entityType","createElement","StatusIcon","TypeIcon"],"sources":["history-list-item-icon.tsx"],"sourcesContent":["import { HistoryAction, HistoryEntityType, HistoryListItem } from '@procivis/react-native-one-core';\nimport React, { FC, useMemo } from 'react';\nimport { SvgProps } from 'react-native-svg';\n\nimport {\n HistoryBackupCreatedIcon,\n HistoryBackupRestoredIcon,\n HistoryCertificateIcon,\n HistoryCredentialIcon,\n HistoryDidIcon,\n HistoryIdentifierIcon,\n HistoryIssueIcon,\n HistoryItemIcon,\n HistoryKeyIcon,\n HistoryOrganisationIcon,\n HistoryProofRequestIcon,\n HistoryRevokeIcon,\n HistorySchemaIcon,\n HistoryStatusAcceptedIcon,\n HistoryStatusDeleteIcon,\n HistoryStatusErrorIcon,\n HistoryStatusSuspendIcon,\n HistorySuspendIcon,\n HistoryTrustAnchorIcon,\n HistoryTrustedEntityIcon,\n} from '../../ui-components';\n\nconst defaultIcons: {\n actions: { [key in keyof typeof HistoryAction]: FC<SvgProps> };\n entityTypes: { [key in keyof typeof HistoryEntityType]: FC<SvgProps> };\n} = {\n actions: {\n ACCEPTED: HistoryStatusAcceptedIcon,\n ACTIVATED: HistoryStatusAcceptedIcon,\n CLAIMS_REMOVED: HistoryStatusDeleteIcon,\n CREATED: HistoryStatusAcceptedIcon,\n DEACTIVATED: HistoryStatusErrorIcon,\n DELETED: HistoryStatusDeleteIcon,\n ERRORED: HistoryStatusErrorIcon,\n IMPORTED: HistoryStatusAcceptedIcon,\n ISSUED: HistoryStatusAcceptedIcon,\n OFFERED: HistoryStatusAcceptedIcon,\n PENDING: HistoryStatusAcceptedIcon,\n REJECTED: HistoryStatusErrorIcon,\n REMOVED: HistoryStatusDeleteIcon,\n REQUESTED: HistoryStatusAcceptedIcon,\n RESTORED: HistoryStatusAcceptedIcon,\n RETRACTED: HistoryStatusErrorIcon,\n REVOKED: HistoryStatusErrorIcon,\n SHARED: HistoryStatusAcceptedIcon,\n SUSPENDED: HistoryStatusSuspendIcon,\n UPDATED: HistoryStatusAcceptedIcon,\n WITHDRAWN: HistoryStatusErrorIcon,\n REACTIVATED: HistoryStatusAcceptedIcon,\n CSR_GENERATED: HistoryStatusAcceptedIcon,\n EXPIRED: HistoryStatusErrorIcon,\n INTERACTION_CREATED: HistoryStatusAcceptedIcon,\n INTERACTION_ERRORED: HistoryStatusErrorIcon,\n INTERACTION_EXPIRED: HistoryStatusErrorIcon,\n DELIVERED: HistoryStatusAcceptedIcon,\n WRP_AC_RECEIVED: HistoryStatusAcceptedIcon,\n WRP_RC_RECEIVED: HistoryStatusAcceptedIcon,\n WRP_NR_RECEIVED: HistoryStatusAcceptedIcon,\n },\n entityTypes: {\n BACKUP: HistoryRevokeIcon,\n CERTIFICATE: HistoryCertificateIcon,\n CREDENTIAL: HistoryCredentialIcon,\n CREDENTIAL_SCHEMA: HistorySchemaIcon,\n DID: HistoryDidIcon,\n IDENTIFIER: HistoryIdentifierIcon,\n KEY: HistoryKeyIcon,\n ORGANISATION: HistoryOrganisationIcon,\n PROOF: HistoryProofRequestIcon,\n PROOF_SCHEMA: HistorySchemaIcon,\n TRUST_ANCHOR: HistoryTrustAnchorIcon,\n TRUST_ENTITY: HistoryTrustedEntityIcon,\n WALLET_UNIT: HistoryTrustedEntityIcon,\n WALLET_RELYING_PARTY: HistoryTrustedEntityIcon,\n USER: HistoryIdentifierIcon,\n PROVIDER: HistoryIdentifierIcon,\n STS_ROLE: HistoryIdentifierIcon,\n STS_ORGANISATION: HistoryOrganisationIcon,\n STS_IAM_ROLE: HistoryIdentifierIcon,\n STS_TOKEN: HistoryKeyIcon,\n SIGNATURE: HistoryCertificateIcon,\n STS_SESSION: HistoryIdentifierIcon,\n NOTIFICATION: HistoryCredentialIcon,\n SUPERVISORY_AUTHORITY: HistoryCertificateIcon,\n TRUST_LIST_PUBLICATION: HistoryTrustAnchorIcon,\n TRUST_COLLECTION: HistoryTrustAnchorIcon,\n TRUST_LIST_SUBSCRIPTION: HistoryTrustAnchorIcon,\n VERIFIER_INSTANCE: HistoryTrustedEntityIcon,\n },\n};\n\nexport const getHistoryItemActionIcon = (action: HistoryAction) => {\n return defaultIcons.actions[action] ?? HistoryStatusAcceptedIcon;\n};\n\nexport type HistoryListItemIconProps = {\n item: HistoryListItem;\n};\n\nexport const HistoryListItemIcon: FC<HistoryListItemIconProps> = ({ item }) => {\n const statusIcon = getHistoryItemActionIcon(item.action);\n const typeIcon = useMemo(() => {\n switch (item.entityType) {\n case HistoryEntityType.BACKUP:\n switch (item.action) {\n case HistoryAction.CREATED:\n return HistoryBackupCreatedIcon;\n case HistoryAction.RESTORED:\n return HistoryBackupRestoredIcon;\n default:\n break;\n }\n break;\n case HistoryEntityType.CREDENTIAL:\n switch (item.action) {\n case HistoryAction.REVOKED:\n return HistoryRevokeIcon;\n case HistoryAction.SUSPENDED:\n return HistorySuspendIcon;\n default:\n break;\n }\n break;\n default:\n break;\n }\n\n return defaultIcons.entityTypes[item.entityType] ?? HistoryIssueIcon;\n }, [item.action, item.entityType]);\n return <HistoryItemIcon StatusIcon={statusIcon} TypeIcon={typeIcon} />;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './backup';\nexport * from './credential';\nexport * from './entity';\nexport * from './history';\nexport * from './navigation';\nexport * from './proof-request';\n"],"mappings":"AAAA,cAAc,UAAU;AACxB,cAAc,cAAc;AAC5B,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,cAAc;AAC5B,cAAc,iBAAiB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './backup';\nexport * from './credential';\nexport * from './entity';\nexport * from './history';\nexport * from './navigation';\nexport * from './proof-request';\nexport * from './trust-info';\n"],"mappings":"AAAA,cAAc,UAAU;AACxB,cAAc,cAAc;AAC5B,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,cAAc;AAC5B,cAAc,iBAAiB;AAC/B,cAAc,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TrustInfo"],"sources":["index.ts"],"sourcesContent":["import TrustInfo from './trust-info';\n\nexport * from './trust-info';\nexport { TrustInfo };\n"],"mappings":"AAAA,OAAOA,SAAS,MAAM,cAAc;AAEpC,cAAc,cAAc;AAC5B,SAASA,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import React, { useMemo } from 'react';
|
|
2
|
+
import { StyleSheet } from 'react-native';
|
|
3
|
+
import { TouchableOpacity } from '../../ui-components';
|
|
4
|
+
import EntityCluster from '../../ui-components/entity/entity-cluster';
|
|
5
|
+
import { EntityNotTrustedIcon, EntityTrustedIcon, UpIcon } from '../../ui-components/icons';
|
|
6
|
+
import { concatTestID } from '../../utils';
|
|
7
|
+
const TrustInfo = ({
|
|
8
|
+
labels,
|
|
9
|
+
onPress,
|
|
10
|
+
style,
|
|
11
|
+
sublineColor,
|
|
12
|
+
testID,
|
|
13
|
+
textColor,
|
|
14
|
+
trustInformation
|
|
15
|
+
}) => {
|
|
16
|
+
const avatarProps = useMemo(() => {
|
|
17
|
+
var _trustInformation$nam;
|
|
18
|
+
const placeholderText = (_trustInformation$nam = trustInformation === null || trustInformation === void 0 ? void 0 : trustInformation.name.substring(0, 1)) !== null && _trustInformation$nam !== void 0 ? _trustInformation$nam : labels.unknown.substring(0, 1);
|
|
19
|
+
const statusIcon = trustInformation ? /*#__PURE__*/React.createElement(EntityTrustedIcon, {
|
|
20
|
+
testID: concatTestID(testID, 'statusIcon', 'trusted')
|
|
21
|
+
}) : /*#__PURE__*/React.createElement(EntityNotTrustedIcon, {
|
|
22
|
+
testID: concatTestID(testID, 'statusIcon', 'notTrusted')
|
|
23
|
+
});
|
|
24
|
+
return {
|
|
25
|
+
placeholderText,
|
|
26
|
+
statusIcon
|
|
27
|
+
};
|
|
28
|
+
}, [labels, testID, trustInformation]);
|
|
29
|
+
const trustEntityName = useMemo(() => {
|
|
30
|
+
var _trustInformation$nam2;
|
|
31
|
+
return (_trustInformation$nam2 = trustInformation === null || trustInformation === void 0 ? void 0 : trustInformation.name) !== null && _trustInformation$nam2 !== void 0 ? _trustInformation$nam2 : labels.unknown;
|
|
32
|
+
}, [labels.unknown, trustInformation]);
|
|
33
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
34
|
+
disabled: !onPress || !trustInformation,
|
|
35
|
+
onPress: onPress,
|
|
36
|
+
style: [styles.button, style]
|
|
37
|
+
}, /*#__PURE__*/React.createElement(EntityCluster, {
|
|
38
|
+
avatar: avatarProps,
|
|
39
|
+
entityName: trustEntityName,
|
|
40
|
+
style: styles.cluster,
|
|
41
|
+
subline: trustInformation ? undefined : labels.unknownSubline,
|
|
42
|
+
sublineColor: sublineColor,
|
|
43
|
+
testID: testID,
|
|
44
|
+
textColor: textColor
|
|
45
|
+
}), onPress && trustInformation && /*#__PURE__*/React.createElement(UpIcon, {
|
|
46
|
+
color: textColor,
|
|
47
|
+
style: styles.chevron
|
|
48
|
+
}));
|
|
49
|
+
};
|
|
50
|
+
const styles = StyleSheet.create({
|
|
51
|
+
button: {
|
|
52
|
+
alignItems: 'center',
|
|
53
|
+
flexDirection: 'row',
|
|
54
|
+
flexWrap: 'nowrap',
|
|
55
|
+
width: '100%'
|
|
56
|
+
},
|
|
57
|
+
chevron: {
|
|
58
|
+
marginLeft: 10,
|
|
59
|
+
marginRight: 18,
|
|
60
|
+
transform: [{
|
|
61
|
+
rotate: '90deg'
|
|
62
|
+
}]
|
|
63
|
+
},
|
|
64
|
+
cluster: {
|
|
65
|
+
flex: 1,
|
|
66
|
+
flexShrink: 1
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
export default TrustInfo;
|
|
70
|
+
//# sourceMappingURL=trust-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useMemo","StyleSheet","TouchableOpacity","EntityCluster","EntityNotTrustedIcon","EntityTrustedIcon","UpIcon","concatTestID","TrustInfo","labels","onPress","style","sublineColor","testID","textColor","trustInformation","avatarProps","_trustInformation$nam","placeholderText","name","substring","unknown","statusIcon","createElement","trustEntityName","_trustInformation$nam2","disabled","styles","button","avatar","entityName","cluster","subline","undefined","unknownSubline","color","chevron","create","alignItems","flexDirection","flexWrap","width","marginLeft","marginRight","transform","rotate","flex","flexShrink"],"sources":["trust-info.tsx"],"sourcesContent":["import React, { FC, useMemo } from 'react';\nimport { StyleProp, StyleSheet, ViewStyle } from 'react-native';\n\nimport { AvatarProps, TouchableOpacity } from '../../ui-components';\nimport EntityCluster from '../../ui-components/entity/entity-cluster';\nimport { EntityNotTrustedIcon, EntityTrustedIcon, UpIcon } from '../../ui-components/icons';\nimport { concatTestID } from '../../utils';\n\nexport type TrustInfoLabels = {\n unknown: string;\n unknownSubline: string;\n};\n\nexport type TrustInfoProps = {\n labels: TrustInfoLabels;\n onPress?: () => void;\n style?: StyleProp<ViewStyle>;\n sublineColor?: string;\n testID?: string;\n textColor?: string;\n trustInformation?: {\n name: string;\n };\n};\n\nconst TrustInfo: FC<TrustInfoProps> = ({\n labels,\n onPress,\n style,\n sublineColor,\n testID,\n textColor,\n trustInformation,\n}) => {\n const avatarProps: AvatarProps | undefined = useMemo(() => {\n const placeholderText = trustInformation?.name.substring(0, 1) ?? labels.unknown.substring(0, 1);\n\n const statusIcon = trustInformation ? (\n <EntityTrustedIcon testID={concatTestID(testID, 'statusIcon', 'trusted')} />\n ) : (\n <EntityNotTrustedIcon testID={concatTestID(testID, 'statusIcon', 'notTrusted')} />\n );\n\n return {\n placeholderText,\n statusIcon,\n };\n }, [labels, testID, trustInformation]);\n\n const trustEntityName = useMemo(() => trustInformation?.name ?? labels.unknown, [labels.unknown, trustInformation]);\n\n return (\n <TouchableOpacity disabled={!onPress || !trustInformation} onPress={onPress} style={[styles.button, style]}>\n <EntityCluster\n avatar={avatarProps}\n entityName={trustEntityName}\n style={styles.cluster}\n subline={trustInformation ? undefined : labels.unknownSubline}\n sublineColor={sublineColor}\n testID={testID}\n textColor={textColor}\n />\n {onPress && trustInformation && <UpIcon color={textColor} style={styles.chevron} />}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n button: {\n alignItems: 'center',\n flexDirection: 'row',\n flexWrap: 'nowrap',\n width: '100%',\n },\n chevron: {\n marginLeft: 10,\n marginRight: 18,\n transform: [\n {\n rotate: '90deg',\n },\n ],\n },\n cluster: {\n flex: 1,\n flexShrink: 1,\n },\n});\n\nexport default TrustInfo;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","StyleSheet","View","TouchableOpacity","useAccessibilityTranslation","CheckedIcon","Typography","useAppColorScheme","Checkbox","style","text","value","disabled","onValueChanged","props","t","colorScheme","onPress","createElement","_extends","activeOpacity","accessibilityRole","accessibilityState","accessibilityValue","undefined","styles","container","backgroundColor","background","unchecked","borderColor","grayDark","white","preset","color","create","alignItems","borderRadius","borderWidth","flexDirection","padding","opacity","flex","marginLeft","height","width"],"sources":["checkbox.tsx"],"sourcesContent":["import React, { FC, ReactNode, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacityProps, View } from 'react-native';\n\nimport { TouchableOpacity } from '../accessibility/accessibilityHistoryWrappers';\nimport { useAccessibilityTranslation } from '../accessibility/accessibilityLanguage';\nimport { CheckedIcon } from '../icons/selector';\nimport { Typography } from '../text';\nimport { useAppColorScheme } from '../theme';\n\nexport interface CheckboxProps extends TouchableOpacityProps {\n value: boolean;\n text?: ReactNode;\n onValueChanged: (value: boolean) => void;\n disabled?: boolean;\n}\n\nexport const Checkbox: FC<CheckboxProps> = ({ style, text, value, disabled, onValueChanged, ...props }) => {\n const t = useAccessibilityTranslation();\n const colorScheme = useAppColorScheme();\n\n const onPress = useCallback(() => onValueChanged(!value), [onValueChanged, value]);\n\n return (\n <TouchableOpacity\n activeOpacity={0.8}\n accessibilityRole=\"checkbox\"\n accessibilityState={{ disabled }}\n accessibilityValue={\n disabled ? undefined : { text: t(value ? 'accessibility.control.checked' : 'accessibility.control.unchecked') }\n }\n disabled={disabled}\n style={[styles.container, { backgroundColor: colorScheme.background }, style]}\n onPress={onPress}\n {...props}>\n {value ? (\n <CheckedIcon style={disabled && styles.disabled} />\n ) : (\n <View\n style={[\n styles.unchecked,\n {\n borderColor: colorScheme.grayDark,\n backgroundColor: disabled ? colorScheme.background : colorScheme.white,\n },\n ]}\n />\n )}\n {text && (\n <View style={[styles.text, disabled && styles.disabled]}>\n {typeof text === 'string' ? (\n <Typography preset=\"xs/line-height-small\" color={colorScheme.text}>\n {text}\n </Typography>\n ) : (\n text\n )}\n </View>\n )}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n borderRadius: 12,\n borderWidth: 0,\n flexDirection: 'row',\n padding: 12,\n },\n disabled: {\n opacity: 0.4,\n },\n text: {\n flex: 1,\n marginLeft: 12,\n },\n unchecked: {\n borderRadius: 12,\n borderWidth: 1,\n height: 24,\n width: 24,\n },\n});\n"],"mappings":";AAAA,OAAOA,KAAK,IAAmBC,WAAW,QAAQ,OAAO;AACzD,SAASC,UAAU,EAAyBC,IAAI,QAAQ,cAAc;AAEtE,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,SAASC,2BAA2B,QAAQ,wCAAwC;AACpF,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,UAAU,QAAQ,SAAS;AACpC,SAASC,iBAAiB,QAAQ,UAAU;AAS5C,OAAO,MAAMC,QAA2B,GAAGA,CAAC;EAAEC,KAAK;EAAEC,IAAI;EAAEC,KAAK;EAAEC,QAAQ;EAAEC,cAAc;EAAE,GAAGC;AAAM,CAAC,KAAK;EACzG,MAAMC,CAAC,GAAGX,2BAA2B,CAAC,CAAC;EACvC,MAAMY,WAAW,GAAGT,iBAAiB,CAAC,CAAC;EAEvC,MAAMU,OAAO,GAAGjB,WAAW,CAAC,MAAMa,cAAc,CAAC,CAACF,KAAK,CAAC,EAAE,CAACE,cAAc,EAAEF,KAAK,CAAC,CAAC;EAElF,oBACEZ,KAAA,CAAAmB,aAAA,CAACf,gBAAgB,EAAAgB,QAAA;IACfC,aAAa,EAAE,GAAI;IACnBC,iBAAiB,EAAC,UAAU;IAC5BC,kBAAkB,EAAE;
|
|
1
|
+
{"version":3,"names":["React","useCallback","StyleSheet","View","TouchableOpacity","useAccessibilityTranslation","CheckedIcon","Typography","useAppColorScheme","Checkbox","style","text","value","disabled","onValueChanged","props","t","colorScheme","onPress","createElement","_extends","activeOpacity","accessibilityRole","accessibilityState","checked","accessibilityValue","undefined","styles","container","backgroundColor","background","unchecked","borderColor","grayDark","white","preset","color","create","alignItems","borderRadius","borderWidth","flexDirection","padding","opacity","flex","marginLeft","height","width"],"sources":["checkbox.tsx"],"sourcesContent":["import React, { FC, ReactNode, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacityProps, View } from 'react-native';\n\nimport { TouchableOpacity } from '../accessibility/accessibilityHistoryWrappers';\nimport { useAccessibilityTranslation } from '../accessibility/accessibilityLanguage';\nimport { CheckedIcon } from '../icons/selector';\nimport { Typography } from '../text';\nimport { useAppColorScheme } from '../theme';\n\nexport interface CheckboxProps extends TouchableOpacityProps {\n value: boolean;\n text?: ReactNode;\n onValueChanged: (value: boolean) => void;\n disabled?: boolean;\n}\n\nexport const Checkbox: FC<CheckboxProps> = ({ style, text, value, disabled, onValueChanged, ...props }) => {\n const t = useAccessibilityTranslation();\n const colorScheme = useAppColorScheme();\n\n const onPress = useCallback(() => onValueChanged(!value), [onValueChanged, value]);\n\n return (\n <TouchableOpacity\n activeOpacity={0.8}\n accessibilityRole=\"checkbox\"\n accessibilityState={{ checked: value, disabled }}\n accessibilityValue={\n disabled ? undefined : { text: t(value ? 'accessibility.control.checked' : 'accessibility.control.unchecked') }\n }\n disabled={disabled}\n style={[styles.container, { backgroundColor: colorScheme.background }, style]}\n onPress={onPress}\n {...props}>\n {value ? (\n <CheckedIcon style={disabled && styles.disabled} />\n ) : (\n <View\n style={[\n styles.unchecked,\n {\n borderColor: colorScheme.grayDark,\n backgroundColor: disabled ? colorScheme.background : colorScheme.white,\n },\n ]}\n />\n )}\n {text && (\n <View style={[styles.text, disabled && styles.disabled]}>\n {typeof text === 'string' ? (\n <Typography preset=\"xs/line-height-small\" color={colorScheme.text}>\n {text}\n </Typography>\n ) : (\n text\n )}\n </View>\n )}\n </TouchableOpacity>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n alignItems: 'center',\n borderRadius: 12,\n borderWidth: 0,\n flexDirection: 'row',\n padding: 12,\n },\n disabled: {\n opacity: 0.4,\n },\n text: {\n flex: 1,\n marginLeft: 12,\n },\n unchecked: {\n borderRadius: 12,\n borderWidth: 1,\n height: 24,\n width: 24,\n },\n});\n"],"mappings":";AAAA,OAAOA,KAAK,IAAmBC,WAAW,QAAQ,OAAO;AACzD,SAASC,UAAU,EAAyBC,IAAI,QAAQ,cAAc;AAEtE,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,SAASC,2BAA2B,QAAQ,wCAAwC;AACpF,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,UAAU,QAAQ,SAAS;AACpC,SAASC,iBAAiB,QAAQ,UAAU;AAS5C,OAAO,MAAMC,QAA2B,GAAGA,CAAC;EAAEC,KAAK;EAAEC,IAAI;EAAEC,KAAK;EAAEC,QAAQ;EAAEC,cAAc;EAAE,GAAGC;AAAM,CAAC,KAAK;EACzG,MAAMC,CAAC,GAAGX,2BAA2B,CAAC,CAAC;EACvC,MAAMY,WAAW,GAAGT,iBAAiB,CAAC,CAAC;EAEvC,MAAMU,OAAO,GAAGjB,WAAW,CAAC,MAAMa,cAAc,CAAC,CAACF,KAAK,CAAC,EAAE,CAACE,cAAc,EAAEF,KAAK,CAAC,CAAC;EAElF,oBACEZ,KAAA,CAAAmB,aAAA,CAACf,gBAAgB,EAAAgB,QAAA;IACfC,aAAa,EAAE,GAAI;IACnBC,iBAAiB,EAAC,UAAU;IAC5BC,kBAAkB,EAAE;MAAEC,OAAO,EAAEZ,KAAK;MAAEC;IAAS,CAAE;IACjDY,kBAAkB,EAChBZ,QAAQ,GAAGa,SAAS,GAAG;MAAEf,IAAI,EAAEK,CAAC,CAACJ,KAAK,GAAG,+BAA+B,GAAG,iCAAiC;IAAE,CAC/G;IACDC,QAAQ,EAAEA,QAAS;IACnBH,KAAK,EAAE,CAACiB,MAAM,CAACC,SAAS,EAAE;MAAEC,eAAe,EAAEZ,WAAW,CAACa;IAAW,CAAC,EAAEpB,KAAK,CAAE;IAC9EQ,OAAO,EAAEA;EAAQ,GACbH,KAAK,GACRH,KAAK,gBACJZ,KAAA,CAAAmB,aAAA,CAACb,WAAW;IAACI,KAAK,EAAEG,QAAQ,IAAIc,MAAM,CAACd;EAAS,CAAE,CAAC,gBAEnDb,KAAA,CAAAmB,aAAA,CAAChB,IAAI;IACHO,KAAK,EAAE,CACLiB,MAAM,CAACI,SAAS,EAChB;MACEC,WAAW,EAAEf,WAAW,CAACgB,QAAQ;MACjCJ,eAAe,EAAEhB,QAAQ,GAAGI,WAAW,CAACa,UAAU,GAAGb,WAAW,CAACiB;IACnE,CAAC;EACD,CACH,CACF,EACAvB,IAAI,iBACHX,KAAA,CAAAmB,aAAA,CAAChB,IAAI;IAACO,KAAK,EAAE,CAACiB,MAAM,CAAChB,IAAI,EAAEE,QAAQ,IAAIc,MAAM,CAACd,QAAQ;EAAE,GACrD,OAAOF,IAAI,KAAK,QAAQ,gBACvBX,KAAA,CAAAmB,aAAA,CAACZ,UAAU;IAAC4B,MAAM,EAAC,sBAAsB;IAACC,KAAK,EAAEnB,WAAW,CAACN;EAAK,GAC/DA,IACS,CAAC,GAEbA,IAEE,CAEQ,CAAC;AAEvB,CAAC;AAED,MAAMgB,MAAM,GAAGzB,UAAU,CAACmC,MAAM,CAAC;EAC/BT,SAAS,EAAE;IACTU,UAAU,EAAE,QAAQ;IACpBC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,CAAC;IACdC,aAAa,EAAE,KAAK;IACpBC,OAAO,EAAE;EACX,CAAC;EACD7B,QAAQ,EAAE;IACR8B,OAAO,EAAE;EACX,CAAC;EACDhC,IAAI,EAAE;IACJiC,IAAI,EAAE,CAAC;IACPC,UAAU,EAAE;EACd,CAAC;EACDd,SAAS,EAAE;IACTQ,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,CAAC;IACdM,MAAM,EAAE,EAAE;IACVC,KAAK,EAAE;EACT;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -19,6 +19,7 @@ const backButtonHitSlop = {
|
|
|
19
19
|
* states (Default + Dashboard)
|
|
20
20
|
*/
|
|
21
21
|
const Header = ({
|
|
22
|
+
backIcon,
|
|
22
23
|
onBack,
|
|
23
24
|
rightButtons,
|
|
24
25
|
style,
|
|
@@ -35,6 +36,7 @@ const Header = ({
|
|
|
35
36
|
style: styles.backButtonRow
|
|
36
37
|
}, /*#__PURE__*/React.createElement(BackButton, {
|
|
37
38
|
hitSlop: backButtonHitSlop,
|
|
39
|
+
icon: backIcon,
|
|
38
40
|
onPress: onBack,
|
|
39
41
|
testID: concatTestID(testID, 'back')
|
|
40
42
|
}), /*#__PURE__*/React.createElement(View, null), rightButtons), /*#__PURE__*/React.createElement(View, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","StyleSheet","View","concatTestID","BackButton","Typography","useAppColorScheme","backButtonHitSlop","top","bottom","left","right","Header","onBack","rightButtons","style","titleRowStyle","testID","title","viewProps","colorScheme","createElement","_extends","styles","container","backButtonRow","hitSlop","onPress","titleRow","titleRow2nd","titleRowNoBackButton","titleRowNoRightButton","accessibilityRole","color","text","preset","rightButtonWrapper","create","alignItems","flexDirection","justifyContent","minHeight","paddingHorizontal","width","gap","height","paddingTop","flex","paddingBottom","paddingLeft","paddingRight","marginBottom","marginTop"],"sources":["header.tsx"],"sourcesContent":["import React, { FC, ReactNode } from 'react';\nimport { Insets, StyleProp, StyleSheet, View, ViewProps, ViewStyle } from 'react-native';\n\nimport { concatTestID } from '../../utils';\nimport { BackButton } from '../buttons';\nimport { Typography } from '../text';\nimport { useAppColorScheme } from '../theme';\n\nexport interface HeaderProps extends ViewProps {\n onBack?: () => void;\n rightButtons?: ReactNode[];\n style?: StyleProp<ViewStyle>;\n titleRowStyle?: StyleProp<ViewStyle>;\n title: ReactNode;\n}\n\nconst backButtonHitSlop: Insets = { top: 12, bottom: 12, left: 20, right: 20 };\n\n/**\n * Unified screen header\n *\n * Following the design: https://www.figma.com/file/52qDYWUMjXAGre1dcnz5bz/Procivis-One-Wallet?node-id=425-18624\n * states (Default + Dashboard)\n */\nconst Header: FC<HeaderProps> = ({ onBack, rightButtons, style, titleRowStyle, testID, title, ...viewProps }) => {\n const colorScheme = useAppColorScheme();\n\n return (\n <View style={[styles.container, style]} testID={testID} {...viewProps}>\n {onBack && (\n <View style={styles.backButtonRow}>\n <BackButton
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","View","concatTestID","BackButton","Typography","useAppColorScheme","backButtonHitSlop","top","bottom","left","right","Header","backIcon","onBack","rightButtons","style","titleRowStyle","testID","title","viewProps","colorScheme","createElement","_extends","styles","container","backButtonRow","hitSlop","icon","onPress","titleRow","titleRow2nd","titleRowNoBackButton","titleRowNoRightButton","accessibilityRole","color","text","preset","rightButtonWrapper","create","alignItems","flexDirection","justifyContent","minHeight","paddingHorizontal","width","gap","height","paddingTop","flex","paddingBottom","paddingLeft","paddingRight","marginBottom","marginTop"],"sources":["header.tsx"],"sourcesContent":["import React, { FC, ReactNode } from 'react';\nimport { Insets, StyleProp, StyleSheet, View, ViewProps, ViewStyle } from 'react-native';\n\nimport { concatTestID } from '../../utils';\nimport { BackButton, BackButtonIcon } from '../buttons';\nimport { Typography } from '../text';\nimport { useAppColorScheme } from '../theme';\n\nexport interface HeaderProps extends ViewProps {\n backIcon?: BackButtonIcon;\n onBack?: () => void;\n rightButtons?: ReactNode[];\n style?: StyleProp<ViewStyle>;\n titleRowStyle?: StyleProp<ViewStyle>;\n title: ReactNode;\n}\n\nconst backButtonHitSlop: Insets = { top: 12, bottom: 12, left: 20, right: 20 };\n\n/**\n * Unified screen header\n *\n * Following the design: https://www.figma.com/file/52qDYWUMjXAGre1dcnz5bz/Procivis-One-Wallet?node-id=425-18624\n * states (Default + Dashboard)\n */\nconst Header: FC<HeaderProps> = ({ backIcon, onBack, rightButtons, style, titleRowStyle, testID, title, ...viewProps }) => {\n const colorScheme = useAppColorScheme();\n\n return (\n <View style={[styles.container, style]} testID={testID} {...viewProps}>\n {onBack && (\n <View style={styles.backButtonRow}>\n <BackButton\n hitSlop={backButtonHitSlop}\n icon={backIcon}\n onPress={onBack}\n testID={concatTestID(testID, 'back')}\n />\n <View />\n {rightButtons}\n </View>\n )}\n\n <View\n style={[\n styles.titleRow,\n onBack ? styles.titleRow2nd : styles.titleRowNoBackButton,\n (onBack || !rightButtons) && styles.titleRowNoRightButton,\n titleRowStyle,\n ]}>\n {typeof title === 'string' ? (\n <Typography\n accessibilityRole=\"header\"\n color={colorScheme.text}\n preset=\"l\"\n style={styles.title}\n testID={concatTestID(testID, 'title')}>\n {title}\n </Typography>\n ) : (\n <View style={styles.title}>{title}</View>\n )}\n\n {!onBack && rightButtons && <View style={styles.rightButtonWrapper}>{rightButtons}</View>}\n </View>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n backButtonRow: {\n alignItems: 'center',\n flexDirection: 'row',\n justifyContent: 'space-between',\n minHeight: 48,\n paddingHorizontal: 20,\n width: '100%',\n },\n container: {\n width: '100%',\n },\n rightButtonWrapper: {\n alignItems: 'center',\n flexDirection: 'row',\n gap: '16',\n height: 48,\n justifyContent: 'center',\n paddingHorizontal: 12,\n paddingTop: 2,\n },\n title: {\n flex: 1,\n paddingBottom: 8, // to compensate \"l\" font line-height difference\n paddingTop: 9,\n },\n titleRow: {\n flexDirection: 'row',\n paddingLeft: 20,\n paddingRight: 8,\n width: '100%',\n },\n titleRow2nd: {\n marginBottom: 12,\n },\n titleRowNoBackButton: {\n marginTop: 12,\n },\n titleRowNoRightButton: {\n paddingRight: 20,\n },\n});\n\nexport default Header;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import Svg, { Path } from 'react-native-svg';
|
|
4
|
+
export const MailIcon = ({
|
|
5
|
+
color,
|
|
6
|
+
...props
|
|
7
|
+
}) => {
|
|
8
|
+
return /*#__PURE__*/React.createElement(Svg, _extends({
|
|
9
|
+
fill: "none",
|
|
10
|
+
height: 12,
|
|
11
|
+
viewBox: "0 0 17 12",
|
|
12
|
+
width: 17
|
|
13
|
+
}, props), /*#__PURE__*/React.createElement(Path, {
|
|
14
|
+
d: "M8.244 6.651c-.223 0-.442-.093-.656-.28L.758.355C1.124.118 1.587 0 2.147 0H14.35c.56 0 1.02.118 1.38.355L8.9 6.371c-.21.187-.428.28-.656.28zM.178 10.678a2.155 2.155 0 01-.13-.438A3.038 3.038 0 010 9.666V2.119c0-.237.016-.44.048-.608.036-.169.075-.287.116-.356l5.072 4.471-5.058 5.052zm1.763 1.107c-.25 0-.474-.027-.67-.082a1.553 1.553 0 01-.478-.219l5.202-5.202.998.889c.2.173.406.305.615.396.21.087.422.13.636.13.214 0 .426-.043.636-.13.214-.09.421-.223.622-.396l.998-.889 5.202 5.202c-.127.091-.29.164-.485.22a2.42 2.42 0 01-.663.081H1.94zm14.376-1.107L11.26 5.626l5.072-4.47c.037.068.073.186.11.355.036.168.054.371.054.608v7.547c0 .219-.018.41-.055.574-.032.164-.073.31-.123.438z",
|
|
15
|
+
fill: color,
|
|
16
|
+
opacity: 0.9
|
|
17
|
+
}));
|
|
18
|
+
};
|
|
19
|
+
export const PhoneIcon = ({
|
|
20
|
+
color,
|
|
21
|
+
...props
|
|
22
|
+
}) => {
|
|
23
|
+
return /*#__PURE__*/React.createElement(Svg, _extends({
|
|
24
|
+
fill: "none",
|
|
25
|
+
height: 13,
|
|
26
|
+
viewBox: "0 0 13 13",
|
|
27
|
+
width: 13
|
|
28
|
+
}, props), /*#__PURE__*/React.createElement(Path, {
|
|
29
|
+
d: "M3.5 9.208c-.67-.665-1.27-1.36-1.798-2.085A11.126 11.126 0 01.458 4.956C.153 4.236 0 3.552 0 2.906c0-.43.073-.83.219-1.204.15-.374.367-.697.65-.97.2-.192.425-.36.676-.506C1.8.076 2.044 0 2.276 0a.69.69 0 01.486.198c.141.132.294.312.458.54l1.148 1.6c.128.182.217.346.267.492a1.3 1.3 0 01.075.424c0 .114-.016.22-.048.321-.032.1-.091.226-.178.376l-.642 1.1a20.5 20.5 0 01-.075.137.3.3 0 00-.028.124c0 .054.007.107.02.157.019.05.037.093.055.13.274.547.746 1.155 1.415 1.825.324.323.657.62.999.888.341.265.642.456.902.575.064.027.12.05.17.068a.732.732 0 00.302.007.93.93 0 00.157-.075l1.094-.602c.177-.096.319-.157.423-.184.11-.032.217-.048.322-.048.123 0 .241.023.355.068.119.041.283.135.492.28l1.668 1.197c.224.16.383.307.479.444.1.137.15.278.15.424 0 .187-.05.387-.15.601-.096.215-.27.463-.52.745a2.76 2.76 0 01-.964.69 3.086 3.086 0 01-1.257.254c-.648 0-1.333-.155-2.058-.465a11.295 11.295 0 01-2.188-1.265A17.799 17.799 0 013.5 9.208z",
|
|
30
|
+
fill: color,
|
|
31
|
+
opacity: 0.9
|
|
32
|
+
}));
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=contact.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Svg","Path","MailIcon","color","props","createElement","_extends","fill","height","viewBox","width","d","opacity","PhoneIcon"],"sources":["contact.tsx"],"sourcesContent":["import React, { FC } from 'react';\nimport Svg, { Path,SvgProps } from 'react-native-svg';\n\nexport const MailIcon: FC<SvgProps> = ({ color, ...props }) => {\n return (\n <Svg fill=\"none\" height={12} viewBox=\"0 0 17 12\" width={17} {...props}>\n <Path\n d=\"M8.244 6.651c-.223 0-.442-.093-.656-.28L.758.355C1.124.118 1.587 0 2.147 0H14.35c.56 0 1.02.118 1.38.355L8.9 6.371c-.21.187-.428.28-.656.28zM.178 10.678a2.155 2.155 0 01-.13-.438A3.038 3.038 0 010 9.666V2.119c0-.237.016-.44.048-.608.036-.169.075-.287.116-.356l5.072 4.471-5.058 5.052zm1.763 1.107c-.25 0-.474-.027-.67-.082a1.553 1.553 0 01-.478-.219l5.202-5.202.998.889c.2.173.406.305.615.396.21.087.422.13.636.13.214 0 .426-.043.636-.13.214-.09.421-.223.622-.396l.998-.889 5.202 5.202c-.127.091-.29.164-.485.22a2.42 2.42 0 01-.663.081H1.94zm14.376-1.107L11.26 5.626l5.072-4.47c.037.068.073.186.11.355.036.168.054.371.054.608v7.547c0 .219-.018.41-.055.574-.032.164-.073.31-.123.438z\"\n fill={color}\n opacity={0.9}\n />\n </Svg>\n );\n};\n\nexport const PhoneIcon: FC<SvgProps> = ({ color, ...props }) => {\n return (\n <Svg fill=\"none\" height={13} viewBox=\"0 0 13 13\" width={13} {...props}>\n <Path\n d=\"M3.5 9.208c-.67-.665-1.27-1.36-1.798-2.085A11.126 11.126 0 01.458 4.956C.153 4.236 0 3.552 0 2.906c0-.43.073-.83.219-1.204.15-.374.367-.697.65-.97.2-.192.425-.36.676-.506C1.8.076 2.044 0 2.276 0a.69.69 0 01.486.198c.141.132.294.312.458.54l1.148 1.6c.128.182.217.346.267.492a1.3 1.3 0 01.075.424c0 .114-.016.22-.048.321-.032.1-.091.226-.178.376l-.642 1.1a20.5 20.5 0 01-.075.137.3.3 0 00-.028.124c0 .054.007.107.02.157.019.05.037.093.055.13.274.547.746 1.155 1.415 1.825.324.323.657.62.999.888.341.265.642.456.902.575.064.027.12.05.17.068a.732.732 0 00.302.007.93.93 0 00.157-.075l1.094-.602c.177-.096.319-.157.423-.184.11-.032.217-.048.322-.048.123 0 .241.023.355.068.119.041.283.135.492.28l1.668 1.197c.224.16.383.307.479.444.1.137.15.278.15.424 0 .187-.05.387-.15.601-.096.215-.27.463-.52.745a2.76 2.76 0 01-.964.69 3.086 3.086 0 01-1.257.254c-.648 0-1.333-.155-2.058-.465a11.295 11.295 0 01-2.188-1.265A17.799 17.799 0 013.5 9.208z\"\n fill={color}\n opacity={0.9}\n />\n </Svg>\n );\n};\n"],"mappings":";AAAA,OAAOA,KAAK,MAAc,OAAO;AACjC,OAAOC,GAAG,IAAIC,IAAI,QAAiB,kBAAkB;AAErD,OAAO,MAAMC,QAAsB,GAAGA,CAAC;EAAEC,KAAK;EAAE,GAAGC;AAAM,CAAC,KAAK;EAC7D,oBACEL,KAAA,CAAAM,aAAA,CAACL,GAAG,EAAAM,QAAA;IAACC,IAAI,EAAC,MAAM;IAACC,MAAM,EAAE,EAAG;IAACC,OAAO,EAAC,WAAW;IAACC,KAAK,EAAE;EAAG,GAAKN,KAAK,gBACnEL,KAAA,CAAAM,aAAA,CAACJ,IAAI;IACHU,CAAC,EAAC,4qBAA4qB;IAC9qBJ,IAAI,EAAEJ,KAAM;IACZS,OAAO,EAAE;EAAI,CACd,CACE,CAAC;AAEV,CAAC;AAED,OAAO,MAAMC,SAAuB,GAAGA,CAAC;EAAEV,KAAK;EAAE,GAAGC;AAAM,CAAC,KAAK;EAC9D,oBACEL,KAAA,CAAAM,aAAA,CAACL,GAAG,EAAAM,QAAA;IAACC,IAAI,EAAC,MAAM;IAACC,MAAM,EAAE,EAAG;IAACC,OAAO,EAAC,WAAW;IAACC,KAAK,EAAE;EAAG,GAAKN,KAAK,gBACnEL,KAAA,CAAAM,aAAA,CAACJ,IAAI;IACHU,CAAC,EAAC,w6BAAw6B;IAC16BJ,IAAI,EAAEJ,KAAM;IACZS,OAAO,EAAE;EAAI,CACd,CACE,CAAC;AAEV,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './connectivity';\nexport * from './credential';\nexport * from './entity';\nexport * from './history';\nexport * from './icons';\nexport * from './input';\nexport * from './keypad';\nexport * from './loader';\nexport * from './nerd-view';\nexport * from './selector';\nexport * from './wallet';\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,cAAc;AAC5B,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,aAAa;AAC3B,cAAc,YAAY;AAC1B,cAAc,UAAU","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './connectivity';\nexport * from './contact';\nexport * from './credential';\nexport * from './entity';\nexport * from './history';\nexport * from './icons';\nexport * from './input';\nexport * from './keypad';\nexport * from './loader';\nexport * from './nerd-view';\nexport * from './selector';\nexport * from './wallet';\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,WAAW;AACzB,cAAc,cAAc;AAC5B,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,SAAS;AACvB,cAAc,SAAS;AACvB,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,cAAc,aAAa;AAC3B,cAAc,YAAY;AAC1B,cAAc,UAAU","ignoreList":[]}
|
|
@@ -4,10 +4,12 @@ import NerdModeScreen from './nerd-mode-screen';
|
|
|
4
4
|
import QRCodeScannerScreen from './qr-code-scanner-screen';
|
|
5
5
|
import ScrollViewScreen from './scroll-view-screen';
|
|
6
6
|
import SectionListScreen from './section-list-screen';
|
|
7
|
+
import TrustInfoDetailsScreen from './trust-info-details-screen';
|
|
7
8
|
export { BackupScreen, BackupScreenMode };
|
|
8
9
|
export { ImagePreviewScreen };
|
|
9
10
|
export { NerdModeScreen };
|
|
10
11
|
export { QRCodeScannerScreen };
|
|
11
12
|
export { ScrollViewScreen };
|
|
12
13
|
export { SectionListScreen };
|
|
14
|
+
export { TrustInfoDetailsScreen };
|
|
13
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BackupScreen","BackupScreenMode","ImagePreviewScreen","NerdModeScreen","QRCodeScannerScreen","ScrollViewScreen","SectionListScreen"],"sources":["index.ts"],"sourcesContent":["import type { BackupScreenProps } from './backup-screen';\nimport BackupScreen, { BackupScreenMode } from './backup-screen';\nimport type { ImagePreviewScreenProps } from './image-preview-screen';\nimport ImagePreviewScreen from './image-preview-screen';\nimport type { NerdModeScreenProps, NerdModeSection } from './nerd-mode-screen';\nimport NerdModeScreen from './nerd-mode-screen';\nimport type { QRCodeScannerScreenProps } from './qr-code-scanner-screen';\nimport QRCodeScannerScreen from './qr-code-scanner-screen';\nimport type { ScrollViewScreenProps } from './scroll-view-screen';\nimport ScrollViewScreen from './scroll-view-screen';\nimport type { SectionListScreenProps } from './section-list-screen';\nimport SectionListScreen from './section-list-screen';\n\nexport { BackupScreen, BackupScreenMode, BackupScreenProps };\nexport { ImagePreviewScreen, ImagePreviewScreenProps };\nexport { NerdModeScreen, NerdModeScreenProps, NerdModeSection };\nexport { QRCodeScannerScreen, QRCodeScannerScreenProps };\nexport { ScrollViewScreen, ScrollViewScreenProps };\nexport { SectionListScreen, SectionListScreenProps };\n"],"mappings":"AACA,OAAOA,YAAY,IAAIC,gBAAgB,QAAQ,iBAAiB;AAEhE,OAAOC,kBAAkB,MAAM,wBAAwB;AAEvD,OAAOC,cAAc,MAAM,oBAAoB;AAE/C,OAAOC,mBAAmB,MAAM,0BAA0B;AAE1D,OAAOC,gBAAgB,MAAM,sBAAsB;AAEnD,OAAOC,iBAAiB,MAAM,uBAAuB;AAErD,
|
|
1
|
+
{"version":3,"names":["BackupScreen","BackupScreenMode","ImagePreviewScreen","NerdModeScreen","QRCodeScannerScreen","ScrollViewScreen","SectionListScreen","TrustInfoDetailsScreen"],"sources":["index.ts"],"sourcesContent":["import type { BackupScreenProps } from './backup-screen';\nimport BackupScreen, { BackupScreenMode } from './backup-screen';\nimport type { ImagePreviewScreenProps } from './image-preview-screen';\nimport ImagePreviewScreen from './image-preview-screen';\nimport type { NerdModeScreenProps, NerdModeSection } from './nerd-mode-screen';\nimport NerdModeScreen from './nerd-mode-screen';\nimport type { QRCodeScannerScreenProps } from './qr-code-scanner-screen';\nimport QRCodeScannerScreen from './qr-code-scanner-screen';\nimport type { ScrollViewScreenProps } from './scroll-view-screen';\nimport ScrollViewScreen from './scroll-view-screen';\nimport type { SectionListScreenProps } from './section-list-screen';\nimport SectionListScreen from './section-list-screen';\nimport type { TrustInfoDetailsScreenLabels, TrustInfoDetailsScreenProps } from './trust-info-details-screen';\nimport TrustInfoDetailsScreen from './trust-info-details-screen';\n\nexport { BackupScreen, BackupScreenMode, BackupScreenProps };\nexport { ImagePreviewScreen, ImagePreviewScreenProps };\nexport { NerdModeScreen, NerdModeScreenProps, NerdModeSection };\nexport { QRCodeScannerScreen, QRCodeScannerScreenProps };\nexport { ScrollViewScreen, ScrollViewScreenProps };\nexport { SectionListScreen, SectionListScreenProps };\nexport { TrustInfoDetailsScreen, TrustInfoDetailsScreenLabels, TrustInfoDetailsScreenProps };\n"],"mappings":"AACA,OAAOA,YAAY,IAAIC,gBAAgB,QAAQ,iBAAiB;AAEhE,OAAOC,kBAAkB,MAAM,wBAAwB;AAEvD,OAAOC,cAAc,MAAM,oBAAoB;AAE/C,OAAOC,mBAAmB,MAAM,0BAA0B;AAE1D,OAAOC,gBAAgB,MAAM,sBAAsB;AAEnD,OAAOC,iBAAiB,MAAM,uBAAuB;AAErD,OAAOC,sBAAsB,MAAM,6BAA6B;AAEhE,SAASP,YAAY,EAAEC,gBAAgB;AACvC,SAASC,kBAAkB;AAC3B,SAASC,cAAc;AACvB,SAASC,mBAAmB;AAC5B,SAASC,gBAAgB;AACzB,SAASC,iBAAiB;AAC1B,SAASC,sBAAsB","ignoreList":[]}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
-
import React, { useState } from 'react';
|
|
2
|
+
import React, { useMemo, useState } from 'react';
|
|
3
3
|
import { SectionList, StyleSheet, View } from 'react-native';
|
|
4
4
|
import Animated, { useAnimatedScrollHandler, useSharedValue } from 'react-native-reanimated';
|
|
5
5
|
import { useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
6
|
+
import { TrustInfo } from '../../components';
|
|
6
7
|
import EntityDetailsWithButtons from '../../components/entity/entity-details-with-buttons';
|
|
7
8
|
import ContrastingStatusBar from '../../utils/contrasting-status-bar';
|
|
8
9
|
import { concatTestID } from '../../utils/testID';
|
|
@@ -27,11 +28,11 @@ const NerdModeScreen = ({
|
|
|
27
28
|
labels,
|
|
28
29
|
onClose,
|
|
29
30
|
onCopyToClipboard,
|
|
31
|
+
onOpenTrustInfoDetails,
|
|
30
32
|
entityCluster,
|
|
31
33
|
testID,
|
|
32
34
|
title
|
|
33
35
|
}) => {
|
|
34
|
-
var _entityCluster$testID;
|
|
35
36
|
const insets = useSafeAreaInsets();
|
|
36
37
|
const colorScheme = useAppColorScheme();
|
|
37
38
|
const scrollOffset = useSharedValue(0);
|
|
@@ -59,6 +60,36 @@ const NerdModeScreen = ({
|
|
|
59
60
|
[sectionTitle]: lastElement && !isSectionEntityCluster(lastElement) ? lastElement.attributeKey : ''
|
|
60
61
|
};
|
|
61
62
|
}, {});
|
|
63
|
+
const listHeader = useMemo(() => {
|
|
64
|
+
var _entityCluster$testID2, _entityCluster$trustI;
|
|
65
|
+
if (!entityCluster) {
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
if (entityCluster.legacyTrustManagementEnabled) {
|
|
69
|
+
var _entityCluster$testID;
|
|
70
|
+
return /*#__PURE__*/React.createElement(EntityDetailsWithButtons, _extends({}, entityCluster, {
|
|
71
|
+
entityType: EntityType.ProofEntity,
|
|
72
|
+
entityLabels: entityCluster.entityLabels,
|
|
73
|
+
attributesLabels: labels,
|
|
74
|
+
style: [styles.entityCluster, {
|
|
75
|
+
backgroundColor: colorScheme.nerdView.background
|
|
76
|
+
}],
|
|
77
|
+
onCopyToClipboard: onCopyToClipboard,
|
|
78
|
+
testID: (_entityCluster$testID = entityCluster.testID) !== null && _entityCluster$testID !== void 0 ? _entityCluster$testID : concatTestID(testID, 'entityCluster'),
|
|
79
|
+
textColor: colorScheme.white
|
|
80
|
+
}));
|
|
81
|
+
}
|
|
82
|
+
return /*#__PURE__*/React.createElement(TrustInfo, {
|
|
83
|
+
labels: entityCluster.trustInfoLabels,
|
|
84
|
+
onPress: onOpenTrustInfoDetails && entityCluster.trustInformation ? () => onOpenTrustInfoDetails(entityCluster.trustInformation) : undefined,
|
|
85
|
+
style: [styles.entityCluster, {
|
|
86
|
+
backgroundColor: colorScheme.nerdView.background
|
|
87
|
+
}],
|
|
88
|
+
testID: (_entityCluster$testID2 = entityCluster.testID) !== null && _entityCluster$testID2 !== void 0 ? _entityCluster$testID2 : concatTestID(testID, 'trustInfo'),
|
|
89
|
+
textColor: colorScheme.white,
|
|
90
|
+
trustInformation: (_entityCluster$trustI = entityCluster.trustInformation) === null || _entityCluster$trustI === void 0 ? void 0 : _entityCluster$trustI.eudiEcosystem
|
|
91
|
+
});
|
|
92
|
+
}, [entityCluster, colorScheme.nerdView.background, colorScheme.white, labels, onCopyToClipboard, onOpenTrustInfoDetails, testID]);
|
|
62
93
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ContrastingStatusBar, {
|
|
63
94
|
backgroundColor: colorScheme.nerdView.background
|
|
64
95
|
}), /*#__PURE__*/React.createElement(NavigationHeader, {
|
|
@@ -75,17 +106,7 @@ const NerdModeScreen = ({
|
|
|
75
106
|
title: title,
|
|
76
107
|
titleColor: colorScheme.white
|
|
77
108
|
}), /*#__PURE__*/React.createElement(AnimatedSectionList, {
|
|
78
|
-
ListHeaderComponent:
|
|
79
|
-
entityType: EntityType.ProofEntity,
|
|
80
|
-
entityLabels: entityCluster.entityLabels,
|
|
81
|
-
attributesLabels: labels,
|
|
82
|
-
style: [styles.entityCluster, {
|
|
83
|
-
backgroundColor: colorScheme.nerdView.background
|
|
84
|
-
}],
|
|
85
|
-
onCopyToClipboard: onCopyToClipboard,
|
|
86
|
-
testID: (_entityCluster$testID = entityCluster.testID) !== null && _entityCluster$testID !== void 0 ? _entityCluster$testID : concatTestID(testID, 'entityCluster'),
|
|
87
|
-
textColor: colorScheme.white
|
|
88
|
-
})) : null,
|
|
109
|
+
ListHeaderComponent: listHeader,
|
|
89
110
|
onScroll: onScroll,
|
|
90
111
|
renderItem: ({
|
|
91
112
|
item,
|
|
@@ -93,8 +114,8 @@ const NerdModeScreen = ({
|
|
|
93
114
|
index
|
|
94
115
|
}) => {
|
|
95
116
|
if (isSectionEntityCluster(item)) {
|
|
96
|
-
var _item$testID;
|
|
97
|
-
return /*#__PURE__*/React.createElement(EntityDetailsWithButtons, _extends({}, item, {
|
|
117
|
+
var _item$testID, _item$testID2, _item$trustInformatio;
|
|
118
|
+
return item.legacyTrustManagementEnabled ? /*#__PURE__*/React.createElement(EntityDetailsWithButtons, _extends({}, item, {
|
|
98
119
|
entityType: EntityType.CredentialEntity,
|
|
99
120
|
entityLabels: item.entityLabels,
|
|
100
121
|
attributesLabels: labels,
|
|
@@ -104,7 +125,16 @@ const NerdModeScreen = ({
|
|
|
104
125
|
onCopyToClipboard: onCopyToClipboard,
|
|
105
126
|
testID: (_item$testID = item.testID) !== null && _item$testID !== void 0 ? _item$testID : concatTestID(testID, 'sectionEntityCluster', index.toString()),
|
|
106
127
|
textColor: colorScheme.white
|
|
107
|
-
}))
|
|
128
|
+
})) : /*#__PURE__*/React.createElement(TrustInfo, {
|
|
129
|
+
labels: item.trustInfoLabels,
|
|
130
|
+
onPress: onOpenTrustInfoDetails && item.trustInformation ? () => onOpenTrustInfoDetails(item.trustInformation) : undefined,
|
|
131
|
+
style: [styles.entityCluster, {
|
|
132
|
+
backgroundColor: colorScheme.nerdView.background
|
|
133
|
+
}],
|
|
134
|
+
testID: (_item$testID2 = item.testID) !== null && _item$testID2 !== void 0 ? _item$testID2 : concatTestID(testID, 'trustInfo'),
|
|
135
|
+
textColor: colorScheme.white,
|
|
136
|
+
trustInformation: (_item$trustInformatio = item.trustInformation) === null || _item$trustInformatio === void 0 ? void 0 : _item$trustInformatio.eudiEcosystem
|
|
137
|
+
});
|
|
108
138
|
} else {
|
|
109
139
|
return /*#__PURE__*/React.createElement(NerdModeItem, _extends({}, item, {
|
|
110
140
|
expandedAttributes: expandedAttributes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","SectionList","StyleSheet","View","Animated","useAnimatedScrollHandler","useSharedValue","useSafeAreaInsets","EntityDetailsWithButtons","ContrastingStatusBar","concatTestID","TouchableOpacity","SectionEntityCluster","NavigationHeader","CloseIcon","NerdModeItem","Typography","useAppColorScheme","EntityType","isSectionEntityCluster","item","identifier","undefined","AnimatedSectionList","createAnimatedComponent","NerdModeScreen","sections","labels","onClose","onCopyToClipboard","entityCluster","testID","title","_entityCluster$testID","insets","colorScheme","scrollOffset","expandedAttributes","setExpandedAttributes","onExpand","expanded","prev","onScroll","contentOffset","value","y","lastElementsForSection","reduce","acc","sectionTitle","data","lastElement","length","attributeKey","createElement","Fragment","backgroundColor","nerdView","background","leftItem","onPress","color","white","style","paddingTop","top","titleColor","ListHeaderComponent","_extends","entityType","ProofEntity","entityLabels","attributesLabels","styles","textColor","renderItem","section","index","_item$testID","CredentialEntity","toString","last","renderSectionHeader","sectionHeaderContainer","sectionHeaderText","scrollEventThrottle","stickySectionHeadersEnabled","create","paddingHorizontal","paddingVertical","justifyContent","marginTop","opacity"],"sources":["nerd-mode-screen.tsx"],"sourcesContent":["import { IdentifierListItem } from '@procivis/react-native-one-core';\nimport React, { FunctionComponent, useState } from 'react';\nimport { SectionList, StyleSheet, View } from 'react-native';\nimport Animated, { useAnimatedScrollHandler, useSharedValue } from 'react-native-reanimated';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport EntityDetailsWithButtons, { ContextRole } from '../../components/entity/entity-details-with-buttons';\nimport ContrastingStatusBar from '../../utils/contrasting-status-bar';\nimport { concatTestID } from '../../utils/testID';\nimport { TouchableOpacity } from '../accessibility/accessibilityHistoryWrappers';\nimport SectionEntityCluster from '../entity/entity-cluster';\nimport NavigationHeader from '../header/navigation-header';\nimport { CloseIcon } from '../icons/icons';\nimport NerdModeItem, { NerdModeItemProps } from '../nerd-view/nerd-mode-item';\nimport Typography from '../text/typography';\nimport { useAppColorScheme } from '../theme/color-scheme-context';\n\nexport interface EntityLabels {\n trusted: string;\n unknownIssuer: string;\n unknownVerifier: string;\n visitWebsite: string;\n termsAndServices: string;\n privacyPolicy: string;\n}\n\nexport interface AttributesLabels {\n trustRegistry: string;\n issuerIdentifier: string;\n entityIdentifier: string;\n role: string;\n expand: string;\n collapse: string;\n}\n\ninterface SectionEntityCluster {\n identifier?: IdentifierListItem;\n subline?: string;\n entityLabels: EntityLabels;\n role: ContextRole;\n testID?: string;\n}\n\ntype SectionAttribute = Omit<NerdModeItemProps, 'labels' | 'onCopyToClipboard'>;\n\ntype NerdModeSectionItem = SectionAttribute | SectionEntityCluster;\n\nexport type NerdModeSection = {\n data: NerdModeSectionItem[];\n title?: string;\n};\n\nexport type NerdModeScreenProps = {\n entityCluster?: SectionEntityCluster;\n labels: AttributesLabels;\n onClose: () => void;\n onCopyToClipboard: (value: string) => void;\n sections: NerdModeSection[];\n testID: string;\n title: string;\n};\n\nexport enum EntityType {\n CredentialEntity,\n ProofEntity,\n}\n\nfunction isSectionEntityCluster(item: NerdModeSectionItem): item is SectionEntityCluster {\n return (item as SectionEntityCluster).identifier !== undefined;\n}\n\nconst AnimatedSectionList = Animated.createAnimatedComponent(SectionList<NerdModeSectionItem>);\n\nconst NerdModeScreen: FunctionComponent<NerdModeScreenProps> = ({\n sections,\n labels,\n onClose,\n onCopyToClipboard,\n entityCluster,\n testID,\n title,\n}) => {\n const insets = useSafeAreaInsets();\n const colorScheme = useAppColorScheme();\n const scrollOffset = useSharedValue(0);\n const [expandedAttributes, setExpandedAttributes] = useState(0);\n\n // This is a bit of a hack. It's used to notify attributes that another attribute has been expanded\n // which will allow them to update their scroll offset accordingly.\n const onExpand = (expanded: boolean) => {\n setExpandedAttributes((prev) => (expanded ? prev + 1 : prev - 1));\n };\n\n const onScroll = useAnimatedScrollHandler({\n onScroll: ({ contentOffset }) => {\n scrollOffset.value = contentOffset.y;\n },\n });\n\n const lastElementsForSection = sections.reduce((acc, { title: sectionTitle = '', data }) => {\n const lastElement = data[data.length - 1];\n return {\n ...acc,\n [sectionTitle]: lastElement && !isSectionEntityCluster(lastElement) ? lastElement.attributeKey : '',\n };\n }, {} as Record<string, string>);\n\n return (\n <>\n <ContrastingStatusBar backgroundColor={colorScheme.nerdView.background} />\n <NavigationHeader\n leftItem={\n <TouchableOpacity onPress={onClose} testID={concatTestID(testID, 'closeIcon')}>\n <CloseIcon color={colorScheme.white} />\n </TouchableOpacity>\n }\n style={{\n backgroundColor: colorScheme.nerdView.background,\n paddingTop: insets.top,\n }}\n title={title}\n titleColor={colorScheme.white}\n />\n <AnimatedSectionList\n ListHeaderComponent={\n entityCluster ? (\n <EntityDetailsWithButtons\n {...entityCluster}\n entityType={EntityType.ProofEntity}\n entityLabels={entityCluster.entityLabels}\n attributesLabels={labels}\n style={[\n styles.entityCluster,\n {\n backgroundColor: colorScheme.nerdView.background,\n },\n ]}\n onCopyToClipboard={onCopyToClipboard}\n testID={entityCluster.testID ?? concatTestID(testID, 'entityCluster')}\n textColor={colorScheme.white}\n />\n ) : null\n }\n onScroll={onScroll}\n renderItem={({ item, section, index }) => {\n if (isSectionEntityCluster(item)) {\n return (\n <EntityDetailsWithButtons\n {...item}\n entityType={EntityType.CredentialEntity}\n entityLabels={item!.entityLabels}\n attributesLabels={labels}\n style={[\n styles.entityCluster,\n {\n backgroundColor: colorScheme.nerdView.background,\n },\n ]}\n onCopyToClipboard={onCopyToClipboard}\n testID={item.testID ?? concatTestID(testID, 'sectionEntityCluster', index.toString())}\n textColor={colorScheme.white}\n />\n );\n } else {\n return (\n <NerdModeItem\n {...item}\n expandedAttributes={expandedAttributes}\n labels={labels}\n last={lastElementsForSection[section.title] === item.attributeKey}\n onCopyToClipboard={onCopyToClipboard}\n onExpand={onExpand}\n scrollOffset={scrollOffset}\n testID={concatTestID(testID, item.testID)}\n />\n );\n }\n }}\n renderSectionHeader={({ section }) => {\n return section.title ? (\n <View style={styles.sectionHeaderContainer} testID={concatTestID(testID, section.title)}>\n <Typography color={colorScheme.white} style={styles.sectionHeaderText}>\n {section.title}\n </Typography>\n </View>\n ) : null;\n }}\n scrollEventThrottle={16}\n sections={sections}\n stickySectionHeadersEnabled={false}\n style={{ backgroundColor: colorScheme.nerdView.background }}\n testID={testID}\n />\n </>\n );\n};\n\nconst styles = StyleSheet.create({\n entityCluster: {\n paddingHorizontal: 24,\n paddingVertical: 20,\n },\n sectionHeaderContainer: {\n justifyContent: 'center',\n marginTop: 20,\n paddingVertical: 16,\n },\n sectionHeaderText: {\n opacity: 0.7,\n paddingHorizontal: 20,\n },\n});\n\nexport default NerdModeScreen;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useMemo","useState","SectionList","StyleSheet","View","Animated","useAnimatedScrollHandler","useSharedValue","useSafeAreaInsets","TrustInfo","EntityDetailsWithButtons","ContrastingStatusBar","concatTestID","TouchableOpacity","SectionEntityCluster","NavigationHeader","CloseIcon","NerdModeItem","Typography","useAppColorScheme","EntityType","isSectionEntityCluster","item","identifier","undefined","AnimatedSectionList","createAnimatedComponent","NerdModeScreen","sections","labels","onClose","onCopyToClipboard","onOpenTrustInfoDetails","entityCluster","testID","title","insets","colorScheme","scrollOffset","expandedAttributes","setExpandedAttributes","onExpand","expanded","prev","onScroll","contentOffset","value","y","lastElementsForSection","reduce","acc","sectionTitle","data","lastElement","length","attributeKey","listHeader","_entityCluster$testID2","_entityCluster$trustI","legacyTrustManagementEnabled","_entityCluster$testID","createElement","_extends","entityType","ProofEntity","entityLabels","attributesLabels","style","styles","backgroundColor","nerdView","background","textColor","white","trustInfoLabels","onPress","trustInformation","eudiEcosystem","Fragment","leftItem","color","paddingTop","top","titleColor","ListHeaderComponent","renderItem","section","index","_item$testID","_item$testID2","_item$trustInformatio","CredentialEntity","toString","last","renderSectionHeader","sectionHeaderContainer","sectionHeaderText","scrollEventThrottle","stickySectionHeadersEnabled","create","paddingHorizontal","paddingVertical","justifyContent","marginTop","opacity"],"sources":["nerd-mode-screen.tsx"],"sourcesContent":["import { IdentifierListItem, TrustInformationDetail } from '@procivis/react-native-one-core';\nimport React, { FunctionComponent, useMemo, useState } from 'react';\nimport { SectionList, StyleSheet, View } from 'react-native';\nimport Animated, { useAnimatedScrollHandler, useSharedValue } from 'react-native-reanimated';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport { TrustInfo, TrustInfoLabels } from '../../components';\nimport EntityDetailsWithButtons, { ContextRole } from '../../components/entity/entity-details-with-buttons';\nimport ContrastingStatusBar from '../../utils/contrasting-status-bar';\nimport { concatTestID } from '../../utils/testID';\nimport { TouchableOpacity } from '../accessibility/accessibilityHistoryWrappers';\nimport SectionEntityCluster from '../entity/entity-cluster';\nimport NavigationHeader from '../header/navigation-header';\nimport { CloseIcon } from '../icons/icons';\nimport NerdModeItem, { NerdModeItemProps } from '../nerd-view/nerd-mode-item';\nimport Typography from '../text/typography';\nimport { useAppColorScheme } from '../theme/color-scheme-context';\n\nexport interface EntityLabels {\n trusted: string;\n unknownIssuer: string;\n unknownVerifier: string;\n visitWebsite: string;\n termsAndServices: string;\n privacyPolicy: string;\n}\n\nexport interface AttributesLabels {\n trustRegistry: string;\n issuerIdentifier: string;\n entityIdentifier: string;\n role: string;\n expand: string;\n collapse: string;\n}\n\ninterface SectionEntityCluster {\n identifier?: IdentifierListItem;\n subline?: string;\n entityLabels: EntityLabels;\n legacyTrustManagementEnabled: boolean;\n role: ContextRole;\n testID?: string;\n trustInfoLabels: TrustInfoLabels;\n trustInformation?: TrustInformationDetail;\n}\n\ntype SectionAttribute = Omit<NerdModeItemProps, 'labels' | 'onCopyToClipboard'>;\n\ntype NerdModeSectionItem = SectionAttribute | SectionEntityCluster;\n\nexport type NerdModeSection = {\n data: NerdModeSectionItem[];\n title?: string;\n};\n\nexport type NerdModeScreenProps = {\n entityCluster?: SectionEntityCluster;\n labels: AttributesLabels;\n onClose: () => void;\n onCopyToClipboard: (value: string) => void;\n onOpenTrustInfoDetails?: (trustInformation: TrustInformationDetail) => void;\n sections: NerdModeSection[];\n testID: string;\n title: string;\n};\n\nexport enum EntityType {\n CredentialEntity,\n ProofEntity,\n}\n\nfunction isSectionEntityCluster(item: NerdModeSectionItem): item is SectionEntityCluster {\n return (item as SectionEntityCluster).identifier !== undefined;\n}\n\nconst AnimatedSectionList = Animated.createAnimatedComponent(SectionList<NerdModeSectionItem>);\n\nconst NerdModeScreen: FunctionComponent<NerdModeScreenProps> = ({\n sections,\n labels,\n onClose,\n onCopyToClipboard,\n onOpenTrustInfoDetails,\n entityCluster,\n testID,\n title,\n}) => {\n const insets = useSafeAreaInsets();\n const colorScheme = useAppColorScheme();\n const scrollOffset = useSharedValue(0);\n const [expandedAttributes, setExpandedAttributes] = useState(0);\n\n // This is a bit of a hack. It's used to notify attributes that another attribute has been expanded\n // which will allow them to update their scroll offset accordingly.\n const onExpand = (expanded: boolean) => {\n setExpandedAttributes((prev) => (expanded ? prev + 1 : prev - 1));\n };\n\n const onScroll = useAnimatedScrollHandler({\n onScroll: ({ contentOffset }) => {\n scrollOffset.value = contentOffset.y;\n },\n });\n\n const lastElementsForSection = sections.reduce((acc, { title: sectionTitle = '', data }) => {\n const lastElement = data[data.length - 1];\n return {\n ...acc,\n [sectionTitle]: lastElement && !isSectionEntityCluster(lastElement) ? lastElement.attributeKey : '',\n };\n }, {} as Record<string, string>);\n\n const listHeader = useMemo(() => {\n if (!entityCluster) {\n return null;\n }\n if (entityCluster.legacyTrustManagementEnabled) {\n return (\n <EntityDetailsWithButtons\n {...entityCluster}\n entityType={EntityType.ProofEntity}\n entityLabels={entityCluster.entityLabels}\n attributesLabels={labels}\n style={[\n styles.entityCluster,\n {\n backgroundColor: colorScheme.nerdView.background,\n },\n ]}\n onCopyToClipboard={onCopyToClipboard}\n testID={entityCluster.testID ?? concatTestID(testID, 'entityCluster')}\n textColor={colorScheme.white}\n />\n );\n }\n return (\n <TrustInfo\n labels={entityCluster.trustInfoLabels}\n onPress={\n onOpenTrustInfoDetails && entityCluster.trustInformation\n ? () => onOpenTrustInfoDetails(entityCluster.trustInformation!)\n : undefined\n }\n style={[\n styles.entityCluster,\n {\n backgroundColor: colorScheme.nerdView.background,\n },\n ]}\n testID={entityCluster.testID ?? concatTestID(testID, 'trustInfo')}\n textColor={colorScheme.white}\n trustInformation={entityCluster.trustInformation?.eudiEcosystem}\n />\n );\n }, [\n entityCluster,\n colorScheme.nerdView.background,\n colorScheme.white,\n labels,\n onCopyToClipboard,\n onOpenTrustInfoDetails,\n testID,\n ]);\n\n return (\n <>\n <ContrastingStatusBar backgroundColor={colorScheme.nerdView.background} />\n <NavigationHeader\n leftItem={\n <TouchableOpacity onPress={onClose} testID={concatTestID(testID, 'closeIcon')}>\n <CloseIcon color={colorScheme.white} />\n </TouchableOpacity>\n }\n style={{\n backgroundColor: colorScheme.nerdView.background,\n paddingTop: insets.top,\n }}\n title={title}\n titleColor={colorScheme.white}\n />\n <AnimatedSectionList\n ListHeaderComponent={listHeader}\n onScroll={onScroll}\n renderItem={({ item, section, index }) => {\n if (isSectionEntityCluster(item)) {\n return item.legacyTrustManagementEnabled ? (\n <EntityDetailsWithButtons\n {...item}\n entityType={EntityType.CredentialEntity}\n entityLabels={item!.entityLabels}\n attributesLabels={labels}\n style={[\n styles.entityCluster,\n {\n backgroundColor: colorScheme.nerdView.background,\n },\n ]}\n onCopyToClipboard={onCopyToClipboard}\n testID={item.testID ?? concatTestID(testID, 'sectionEntityCluster', index.toString())}\n textColor={colorScheme.white}\n />\n ) : (\n <TrustInfo\n labels={item.trustInfoLabels}\n onPress={\n onOpenTrustInfoDetails && item.trustInformation\n ? () => onOpenTrustInfoDetails(item.trustInformation!)\n : undefined\n }\n style={[\n styles.entityCluster,\n {\n backgroundColor: colorScheme.nerdView.background,\n },\n ]}\n testID={item.testID ?? concatTestID(testID, 'trustInfo')}\n textColor={colorScheme.white}\n trustInformation={item.trustInformation?.eudiEcosystem}\n />\n );\n } else {\n return (\n <NerdModeItem\n {...item}\n expandedAttributes={expandedAttributes}\n labels={labels}\n last={lastElementsForSection[section.title] === item.attributeKey}\n onCopyToClipboard={onCopyToClipboard}\n onExpand={onExpand}\n scrollOffset={scrollOffset}\n testID={concatTestID(testID, item.testID)}\n />\n );\n }\n }}\n renderSectionHeader={({ section }) => {\n return section.title ? (\n <View style={styles.sectionHeaderContainer} testID={concatTestID(testID, section.title)}>\n <Typography color={colorScheme.white} style={styles.sectionHeaderText}>\n {section.title}\n </Typography>\n </View>\n ) : null;\n }}\n scrollEventThrottle={16}\n sections={sections}\n stickySectionHeadersEnabled={false}\n style={{ backgroundColor: colorScheme.nerdView.background }}\n testID={testID}\n />\n </>\n );\n};\n\nconst styles = StyleSheet.create({\n entityCluster: {\n paddingHorizontal: 24,\n paddingVertical: 20,\n },\n sectionHeaderContainer: {\n justifyContent: 'center',\n marginTop: 20,\n paddingVertical: 16,\n },\n sectionHeaderText: {\n opacity: 0.7,\n paddingHorizontal: 20,\n },\n});\n\nexport default NerdModeScreen;\n"],"mappings":";AACA,OAAOA,KAAK,IAAuBC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AACnE,SAASC,WAAW,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC5D,OAAOC,QAAQ,IAAIC,wBAAwB,EAAEC,cAAc,QAAQ,yBAAyB;AAC5F,SAASC,iBAAiB,QAAQ,gCAAgC;AAElE,SAASC,SAAS,QAAyB,kBAAkB;AAC7D,OAAOC,wBAAwB,MAAuB,qDAAqD;AAC3G,OAAOC,oBAAoB,MAAM,oCAAoC;AACrE,SAASC,YAAY,QAAQ,oBAAoB;AACjD,SAASC,gBAAgB,QAAQ,+CAA+C;AAChF,OAAOC,oBAAoB,MAAM,0BAA0B;AAC3D,OAAOC,gBAAgB,MAAM,6BAA6B;AAC1D,SAASC,SAAS,QAAQ,gBAAgB;AAC1C,OAAOC,YAAY,MAA6B,6BAA6B;AAC7E,OAAOC,UAAU,MAAM,oBAAoB;AAC3C,SAASC,iBAAiB,QAAQ,+BAA+B;AAmDjE,WAAYC,UAAU,0BAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAVA,UAAU,CAAVA,UAAU;EAAA,OAAVA,UAAU;AAAA;AAKtB,SAASC,sBAAsBA,CAACC,IAAyB,EAAgC;EACvF,OAAQA,IAAI,CAA0BC,UAAU,KAAKC,SAAS;AAChE;AAEA,MAAMC,mBAAmB,GAAGpB,QAAQ,CAACqB,uBAAuB,CAACxB,WAAgC,CAAC;AAE9F,MAAMyB,cAAsD,GAAGA,CAAC;EAC9DC,QAAQ;EACRC,MAAM;EACNC,OAAO;EACPC,iBAAiB;EACjBC,sBAAsB;EACtBC,aAAa;EACbC,MAAM;EACNC;AACF,CAAC,KAAK;EACJ,MAAMC,MAAM,GAAG5B,iBAAiB,CAAC,CAAC;EAClC,MAAM6B,WAAW,GAAGlB,iBAAiB,CAAC,CAAC;EACvC,MAAMmB,YAAY,GAAG/B,cAAc,CAAC,CAAC,CAAC;EACtC,MAAM,CAACgC,kBAAkB,EAAEC,qBAAqB,CAAC,GAAGvC,QAAQ,CAAC,CAAC,CAAC;;EAE/D;EACA;EACA,MAAMwC,QAAQ,GAAIC,QAAiB,IAAK;IACtCF,qBAAqB,CAAEG,IAAI,IAAMD,QAAQ,GAAGC,IAAI,GAAG,CAAC,GAAGA,IAAI,GAAG,CAAE,CAAC;EACnE,CAAC;EAED,MAAMC,QAAQ,GAAGtC,wBAAwB,CAAC;IACxCsC,QAAQ,EAAEA,CAAC;MAAEC;IAAc,CAAC,KAAK;MAC/BP,YAAY,CAACQ,KAAK,GAAGD,aAAa,CAACE,CAAC;IACtC;EACF,CAAC,CAAC;EAEF,MAAMC,sBAAsB,GAAGpB,QAAQ,CAACqB,MAAM,CAAC,CAACC,GAAG,EAAE;IAAEf,KAAK,EAAEgB,YAAY,GAAG,EAAE;IAAEC;EAAK,CAAC,KAAK;IAC1F,MAAMC,WAAW,GAAGD,IAAI,CAACA,IAAI,CAACE,MAAM,GAAG,CAAC,CAAC;IACzC,OAAO;MACL,GAAGJ,GAAG;MACN,CAACC,YAAY,GAAGE,WAAW,IAAI,CAAChC,sBAAsB,CAACgC,WAAW,CAAC,GAAGA,WAAW,CAACE,YAAY,GAAG;IACnG,CAAC;EACH,CAAC,EAAE,CAAC,CAA2B,CAAC;EAEhC,MAAMC,UAAU,GAAGxD,OAAO,CAAC,MAAM;IAAA,IAAAyD,sBAAA,EAAAC,qBAAA;IAC/B,IAAI,CAACzB,aAAa,EAAE;MAClB,OAAO,IAAI;IACb;IACA,IAAIA,aAAa,CAAC0B,4BAA4B,EAAE;MAAA,IAAAC,qBAAA;MAC9C,oBACE7D,KAAA,CAAA8D,aAAA,CAACnD,wBAAwB,EAAAoD,QAAA,KACnB7B,aAAa;QACjB8B,UAAU,EAAE3C,UAAU,CAAC4C,WAAY;QACnCC,YAAY,EAAEhC,aAAa,CAACgC,YAAa;QACzCC,gBAAgB,EAAErC,MAAO;QACzBsC,KAAK,EAAE,CACLC,MAAM,CAACnC,aAAa,EACpB;UACEoC,eAAe,EAAEhC,WAAW,CAACiC,QAAQ,CAACC;QACxC,CAAC,CACD;QACFxC,iBAAiB,EAAEA,iBAAkB;QACrCG,MAAM,GAAA0B,qBAAA,GAAE3B,aAAa,CAACC,MAAM,cAAA0B,qBAAA,cAAAA,qBAAA,GAAIhD,YAAY,CAACsB,MAAM,EAAE,eAAe,CAAE;QACtEsC,SAAS,EAAEnC,WAAW,CAACoC;MAAM,EAC9B,CAAC;IAEN;IACA,oBACE1E,KAAA,CAAA8D,aAAA,CAACpD,SAAS;MACRoB,MAAM,EAAEI,aAAa,CAACyC,eAAgB;MACtCC,OAAO,EACL3C,sBAAsB,IAAIC,aAAa,CAAC2C,gBAAgB,GACpD,MAAM5C,sBAAsB,CAACC,aAAa,CAAC2C,gBAAiB,CAAC,GAC7DpD,SACL;MACD2C,KAAK,EAAE,CACLC,MAAM,CAACnC,aAAa,EACpB;QACEoC,eAAe,EAAEhC,WAAW,CAACiC,QAAQ,CAACC;MACxC,CAAC,CACD;MACFrC,MAAM,GAAAuB,sBAAA,GAAExB,aAAa,CAACC,MAAM,cAAAuB,sBAAA,cAAAA,sBAAA,GAAI7C,YAAY,CAACsB,MAAM,EAAE,WAAW,CAAE;MAClEsC,SAAS,EAAEnC,WAAW,CAACoC,KAAM;MAC7BG,gBAAgB,GAAAlB,qBAAA,GAAEzB,aAAa,CAAC2C,gBAAgB,cAAAlB,qBAAA,uBAA9BA,qBAAA,CAAgCmB;IAAc,CACjE,CAAC;EAEN,CAAC,EAAE,CACD5C,aAAa,EACbI,WAAW,CAACiC,QAAQ,CAACC,UAAU,EAC/BlC,WAAW,CAACoC,KAAK,EACjB5C,MAAM,EACNE,iBAAiB,EACjBC,sBAAsB,EACtBE,MAAM,CACP,CAAC;EAEF,oBACEnC,KAAA,CAAA8D,aAAA,CAAA9D,KAAA,CAAA+E,QAAA,qBACE/E,KAAA,CAAA8D,aAAA,CAAClD,oBAAoB;IAAC0D,eAAe,EAAEhC,WAAW,CAACiC,QAAQ,CAACC;EAAW,CAAE,CAAC,eAC1ExE,KAAA,CAAA8D,aAAA,CAAC9C,gBAAgB;IACfgE,QAAQ,eACNhF,KAAA,CAAA8D,aAAA,CAAChD,gBAAgB;MAAC8D,OAAO,EAAE7C,OAAQ;MAACI,MAAM,EAAEtB,YAAY,CAACsB,MAAM,EAAE,WAAW;IAAE,gBAC5EnC,KAAA,CAAA8D,aAAA,CAAC7C,SAAS;MAACgE,KAAK,EAAE3C,WAAW,CAACoC;IAAM,CAAE,CACtB,CACnB;IACDN,KAAK,EAAE;MACLE,eAAe,EAAEhC,WAAW,CAACiC,QAAQ,CAACC,UAAU;MAChDU,UAAU,EAAE7C,MAAM,CAAC8C;IACrB,CAAE;IACF/C,KAAK,EAAEA,KAAM;IACbgD,UAAU,EAAE9C,WAAW,CAACoC;EAAM,CAC/B,CAAC,eACF1E,KAAA,CAAA8D,aAAA,CAACpC,mBAAmB;IAClB2D,mBAAmB,EAAE5B,UAAW;IAChCZ,QAAQ,EAAEA,QAAS;IACnByC,UAAU,EAAEA,CAAC;MAAE/D,IAAI;MAAEgE,OAAO;MAAEC;IAAM,CAAC,KAAK;MACxC,IAAIlE,sBAAsB,CAACC,IAAI,CAAC,EAAE;QAAA,IAAAkE,YAAA,EAAAC,aAAA,EAAAC,qBAAA;QAChC,OAAOpE,IAAI,CAACqC,4BAA4B,gBACtC5D,KAAA,CAAA8D,aAAA,CAACnD,wBAAwB,EAAAoD,QAAA,KACnBxC,IAAI;UACRyC,UAAU,EAAE3C,UAAU,CAACuE,gBAAiB;UACxC1B,YAAY,EAAE3C,IAAI,CAAE2C,YAAa;UACjCC,gBAAgB,EAAErC,MAAO;UACzBsC,KAAK,EAAE,CACLC,MAAM,CAACnC,aAAa,EACpB;YACEoC,eAAe,EAAEhC,WAAW,CAACiC,QAAQ,CAACC;UACxC,CAAC,CACD;UACFxC,iBAAiB,EAAEA,iBAAkB;UACrCG,MAAM,GAAAsD,YAAA,GAAElE,IAAI,CAACY,MAAM,cAAAsD,YAAA,cAAAA,YAAA,GAAI5E,YAAY,CAACsB,MAAM,EAAE,sBAAsB,EAAEqD,KAAK,CAACK,QAAQ,CAAC,CAAC,CAAE;UACtFpB,SAAS,EAAEnC,WAAW,CAACoC;QAAM,EAC9B,CAAC,gBAEF1E,KAAA,CAAA8D,aAAA,CAACpD,SAAS;UACRoB,MAAM,EAAEP,IAAI,CAACoD,eAAgB;UAC7BC,OAAO,EACL3C,sBAAsB,IAAIV,IAAI,CAACsD,gBAAgB,GAC3C,MAAM5C,sBAAsB,CAACV,IAAI,CAACsD,gBAAiB,CAAC,GACpDpD,SACL;UACD2C,KAAK,EAAE,CACLC,MAAM,CAACnC,aAAa,EACpB;YACEoC,eAAe,EAAEhC,WAAW,CAACiC,QAAQ,CAACC;UACxC,CAAC,CACD;UACFrC,MAAM,GAAAuD,aAAA,GAAEnE,IAAI,CAACY,MAAM,cAAAuD,aAAA,cAAAA,aAAA,GAAI7E,YAAY,CAACsB,MAAM,EAAE,WAAW,CAAE;UACzDsC,SAAS,EAAEnC,WAAW,CAACoC,KAAM;UAC7BG,gBAAgB,GAAAc,qBAAA,GAAEpE,IAAI,CAACsD,gBAAgB,cAAAc,qBAAA,uBAArBA,qBAAA,CAAuBb;QAAc,CACxD,CACF;MACH,CAAC,MAAM;QACL,oBACE9E,KAAA,CAAA8D,aAAA,CAAC5C,YAAY,EAAA6C,QAAA,KACPxC,IAAI;UACRiB,kBAAkB,EAAEA,kBAAmB;UACvCV,MAAM,EAAEA,MAAO;UACfgE,IAAI,EAAE7C,sBAAsB,CAACsC,OAAO,CAACnD,KAAK,CAAC,KAAKb,IAAI,CAACiC,YAAa;UAClExB,iBAAiB,EAAEA,iBAAkB;UACrCU,QAAQ,EAAEA,QAAS;UACnBH,YAAY,EAAEA,YAAa;UAC3BJ,MAAM,EAAEtB,YAAY,CAACsB,MAAM,EAAEZ,IAAI,CAACY,MAAM;QAAE,EAC3C,CAAC;MAEN;IACF,CAAE;IACF4D,mBAAmB,EAAEA,CAAC;MAAER;IAAQ,CAAC,KAAK;MACpC,OAAOA,OAAO,CAACnD,KAAK,gBAClBpC,KAAA,CAAA8D,aAAA,CAACzD,IAAI;QAAC+D,KAAK,EAAEC,MAAM,CAAC2B,sBAAuB;QAAC7D,MAAM,EAAEtB,YAAY,CAACsB,MAAM,EAAEoD,OAAO,CAACnD,KAAK;MAAE,gBACtFpC,KAAA,CAAA8D,aAAA,CAAC3C,UAAU;QAAC8D,KAAK,EAAE3C,WAAW,CAACoC,KAAM;QAACN,KAAK,EAAEC,MAAM,CAAC4B;MAAkB,GACnEV,OAAO,CAACnD,KACC,CACR,CAAC,GACL,IAAI;IACV,CAAE;IACF8D,mBAAmB,EAAE,EAAG;IACxBrE,QAAQ,EAAEA,QAAS;IACnBsE,2BAA2B,EAAE,KAAM;IACnC/B,KAAK,EAAE;MAAEE,eAAe,EAAEhC,WAAW,CAACiC,QAAQ,CAACC;IAAW,CAAE;IAC5DrC,MAAM,EAAEA;EAAO,CAChB,CACD,CAAC;AAEP,CAAC;AAED,MAAMkC,MAAM,GAAGjE,UAAU,CAACgG,MAAM,CAAC;EAC/BlE,aAAa,EAAE;IACbmE,iBAAiB,EAAE,EAAE;IACrBC,eAAe,EAAE;EACnB,CAAC;EACDN,sBAAsB,EAAE;IACtBO,cAAc,EAAE,QAAQ;IACxBC,SAAS,EAAE,EAAE;IACbF,eAAe,EAAE;EACnB,CAAC;EACDL,iBAAiB,EAAE;IACjBQ,OAAO,EAAE,GAAG;IACZJ,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,eAAezE,cAAc","ignoreList":[]}
|